6 rm -f sizeof
*.o sizeof-glibc sizeof-musl sizeof.diff tab_
*.html
9 MUSL
=$(MUSL
) .
/update.sh
11 sizeof
: sizeof-glibc sizeof-musl
12 .
/sizeof-glibc
>data
/glibc.sizeof
13 .
/sizeof-musl
>data
/musl.sizeof
14 diff
-U1 data
/glibc.sizeof data
/musl.sizeof
>data
/sizeof.diff || true
16 LIBGCC
=`gcc -print-file-name=libgcc.a |sed 's,/libgcc.a$$,,'`
17 # when compiling with pcc
18 #PCC=`pcc -v foobar.o 2>&1 |sed -n 's,.* \([^ ]*\)/lib/crtbegin.o.*,\1,p'`
23 sizeof-glibc
: sizeof.c
24 gcc
-std
=gnu99
-o
$@
$<
26 gcc
-std
=gnu99
-nostdinc
-fno-stack-protector
-isystem
$(MUSL
)/include -isystem
$(LIBGCC
) -isystem
/usr
/include -c
-o
$@.o
$<
27 ld -o
$@
$@.o
-X
-d
-e _start
-Bstatic
$(MUSL
)/lib
/crti.o
$(MUSL
)/lib
/crt1.o
$(MUSL
)/lib
/crtn.o
-L
$(MUSL
)/lib
-lc
-L
$(LIBGCC
) -lgcc
-nostdlib
28 # ld -o $@ $@.o $(MUSL)/lib/crti.o $(MUSL)/lib/crt1.o $(MUSL)/lib/crtn.o -L$(MUSL)/lib -lc -dynamic-linker $(MUSL)/lib/libc.so -L$(LIBGCC) -lgcc -nostdlib
29 # pcc -nostdinc -isystem $(MUSL)/include -isystem $(PCC)/include -c -o $@.o $<
30 # ld -X -d -e _start -Bstatic -o $@ $@.o $(MUSL)/lib/crti.o $(MUSL)/lib/crt1.o $(PCC)/lib/crtbegin.o $(PCC)/lib/crtend.o -L$(MUSL)/lib -lc -L$(PCC)/lib -lpcc -nostdlib
33 g
++ -std
=gnu99
-nostdinc
-fno-stack-protector
-isystem
$(MUSL
)/include -isystem
$(LIBGCC
) -isystem
/usr
/include -c
-o
$@.o
$<
34 ld -o
$@
$@.o
-X
-d
-e _start
-Bstatic
$(MUSL
)/lib
/crti.o
$(MUSL
)/lib
/crt1.o
$(MUSL
)/lib
/crtn.o
-L
$(MUSL
)/lib
-lc
-L
$(LIBGCC
) -lgcc
-nostdlib