summaryrefslogtreecommitdiff
path: root/tools/gen-bits.sh
diff options
context:
space:
mode:
Diffstat (limited to 'tools/gen-bits.sh')
-rwxr-xr-xtools/gen-bits.sh19
1 files changed, 11 insertions, 8 deletions
diff --git a/tools/gen-bits.sh b/tools/gen-bits.sh
index 973562d..951a7d9 100755
--- a/tools/gen-bits.sh
+++ b/tools/gen-bits.sh
@@ -1,7 +1,5 @@
#!/bin/sh -e
-#!/bin/sh -e
-
sysdeps="$1"
bits="$2"
dfmt="$3"
@@ -11,14 +9,18 @@ bfmt="$6"
tools/gen-types-internal.sh "" "" "$bits" < src/headers/bits-header
-if test "$bits" = 64 && grep -qF 'uint64t: no' "$sysdeps" ; then
- if grep -qF 'sizeofulong: 8' "$sysdeps" ; then
- cat src/headers/uint64-ulong64
- else
- cat src/headers/uint64-noulong64
+if test "$bits" = 64 ; then
+ cat src/headers/uint64-defs
+ if grep -qF 'uint64t: no' "$sysdeps" ; then
+ if grep -qF 'sizeofulong: 8' "$sysdeps" ; then
+ cat src/headers/uint64-ulong64
+ else
+ cat src/headers/uint64-noulong64
+ fi
+ cat src/headers/uint64-macros
fi
else
- tools/gen-types-internal.sh "" "" "$bits" < src/headers/bits-stdint
+ cat src/headers/uint64-include
fi
if grep -qF 'endianness: little' < "$sysdeps" ; then
@@ -29,6 +31,7 @@ else
echo 'Error ! Unsupported endianness' 1>&2
./crash
fi
+
tools/gen-types-internal.sh "" "" "$bits" < src/headers/bits-${endian}endian
tools/gen-bits-internal.sh "$bits" "$dfmt" "$ofmt" "$xfmt" "$bfmt"
exec tools/gen-types-internal.sh "" "" "$bits" < src/headers/bits-footer