~mmach/netext73/busybox

« back to all changes in this revision

Viewing changes to include/fix_u32.h

  • Committer: mmach
  • Date: 2021-04-14 13:54:24 UTC
  • Revision ID: netbit73@gmail.com-20210414135424-8x3fxf716zs4wflb
1

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/* vi: set sw=4 ts=4: */
 
2
/*
 
3
 * This header makes it easier to include kernel headers
 
4
 * which use u32 and such.
 
5
 *
 
6
 * Licensed under GPLv2, see file LICENSE in this source tree.
 
7
 */
 
8
#ifndef FIX_U32_H
 
9
#define FIX_U32_H 1
 
10
 
 
11
/* Try hard to pull in u32 types and such.
 
12
 * Otherwise, #include "fix_u32.h" + #include <linux/foo.h>
 
13
 * may end up typedef'ing bb_hack_u32 inside foo.h,
 
14
 * and repeated typedefs aren't allowed in C/C++.
 
15
 */
 
16
#include <asm/types.h>
 
17
#include <linux/types.h>
 
18
 
 
19
/* In case above includes still failed to provide the types,
 
20
 * provide them ourself
 
21
 */
 
22
#undef __u64
 
23
#undef u64
 
24
#undef u32
 
25
#undef u16
 
26
#undef u8
 
27
#undef __s64
 
28
#undef s64
 
29
#undef s32
 
30
#undef s16
 
31
#undef s8
 
32
 
 
33
#define __u64 bb_hack___u64
 
34
#define u64   bb_hack_u64
 
35
#define u32   bb_hack_u32
 
36
#define u16   bb_hack_u16
 
37
#define u8    bb_hack_u8
 
38
#define __s64 bb_hack___s64
 
39
#define s64   bb_hack_s64
 
40
#define s32   bb_hack_s32
 
41
#define s16   bb_hack_s16
 
42
#define s8    bb_hack_s8
 
43
 
 
44
typedef uint64_t __u64;
 
45
typedef uint64_t u64;
 
46
typedef uint32_t u32;
 
47
typedef uint16_t u16;
 
48
typedef uint8_t u8;
 
49
typedef int64_t __s64;
 
50
typedef int64_t s64;
 
51
typedef int32_t s32;
 
52
typedef int16_t s16;
 
53
typedef int8_t s8;
 
54
 
 
55
#endif