X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=sizeof.sh;h=4451b090b487533907bba762333428d86827c712;hb=e92caf2ca76bae6e66522fcb66a46d4dee8c5f7f;hp=ee3b137633ff99c62877b2b7e1f4de237d49ae09;hpb=de4035ca705b5c7fd1ec69e56206487ef80f2a3a;p=musl-tables diff --git a/sizeof.sh b/sizeof.sh index ee3b137..4451b09 100755 --- a/sizeof.sh +++ b/sizeof.sh @@ -6,7 +6,16 @@ MUSL=${MUSL:-../musl} awk -F'\t' '$3 ~ /^[sut]$/ { print $1 }' data/musl.tags >/tmp/m.type +echo 'short' >>/tmp/m.type +echo 'int' >>/tmp/m.type +echo 'long' >>/tmp/m.type +echo 'long long' >>/tmp/m.type +echo 'float' >>/tmp/m.type +echo 'double' >>/tmp/m.type +echo 'long double' >>/tmp/m.type echo 'wchar_t' >>/tmp/m.type +echo '_Bool' >>/tmp/m.type +echo 'void*' >>/tmp/m.type ( cd $MUSL/include @@ -16,6 +25,7 @@ echo 'wchar_t' >>/tmp/m.type echo '#define _GNU_SOURCE 1' >sizeof.c echo '#define _LARGEFILE64_SOURCE 1' >>sizeof.c echo '#define _FILE_OFFSET_BITS 64' >>sizeof.c +echo '#define SYSLOG_NAMES 1' >>sizeof.c echo '#include ' >>sizeof.c echo '#include ' >>sizeof.c echo '' >>sizeof.c @@ -25,17 +35,8 @@ sort /tmp/m.header |uniq |awk ' { print "#include <" $0 ">" }' >>sizeof.c echo '#define p(x) printf("%s\\t%u\\n", #x, sizeof(x));' >>sizeof.c echo 'int main(){' >>sizeof.c -sed 's/.*/p(&)/' /tmp/m.type |awk ' - /p\(CODE\)/ || - /p\(DIR\)/ || - /p\(FILE\)/ || - /p\(struct __CODE\)/ || - /p\(struct __fpstate\)/ || - /p\(struct __ptcb\)/ || - /p\(struct __siginfo\)/ || - /p\(struct __ucontext\)/ || - /p\(struct in6_mutinfo\)/ || - /p\(struct npttimeval\)/ { printf "//" } - { print }' >>sizeof.c +sort /tmp/m.type |uniq |awk ' + /^struct __(CODE|fpstate|ptcb|siginfo|ucontext)$/ || + /^(DIR|FILE|elf_fpxregset_t)$/ { printf "//" } + { print "p(" $0 ")" }' >>sizeof.c echo 'return 0;}' >>sizeof.c -