abi.cc -> abi_type.cc
[musl-tables] / Makefile
index fe4a91c..a7d6ba1 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1,6 +1,6 @@
 MUSL=../musl
 
-all: tables sizeof
+all: tables abi.ARCH.musl
 
 clean:
        rm -f sizeof*.o sizeof-glibc sizeof-musl sizeof.diff tab_*.html
@@ -9,9 +9,9 @@ tables:
        MUSL=$(MUSL) ./update.sh
 
 sizeof: sizeof-glibc sizeof-musl
-       ./sizeof-glibc >data/glibc.sizeof
-       ./sizeof-musl >data/musl.sizeof
-       diff -u data/glibc.sizeof data/musl.sizeof >sizeof.diff || true
+       ./sizeof-glibc >data/sizeof.ARCH.glibc
+       ./sizeof-musl >data/sizeof.ARCH.musl
+       diff -U1 data/sizeof.ARCH.glibc data/sizeof.ARCH.musl >data/sizeof.ARCH.diff || true
 
 LIBGCC=`gcc -print-file-name=libgcc.a |sed 's,/libgcc.a$$,,'`
 # when compiling with pcc
@@ -28,3 +28,21 @@ sizeof-musl: sizeof.c
 #      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
 #      pcc -nostdinc -isystem $(MUSL)/include -isystem $(PCC)/include -c -o $@.o $<
 #      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
+
+sizeof-g++: sizeof.c
+       g++ -std=gnu99 -nostdinc -fno-stack-protector -isystem $(MUSL)/include -isystem $(LIBGCC) -isystem /usr/include -c -o $@.o $<
+       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
+
+abi: abi.ARCH.diff
+       cp abi.ARCH.* data/
+
+abi_type.cc:
+       ./abi_type.sh
+abi.ARCH.glibc: abi_type.cc
+       g++ -std=c++11 $(GLIBC_FLAGS) -c -o $@.o $<
+       nm -C $@.o |sed -n 's/^[[:xdigit:]]* T //p' |sort >$@
+abi.ARCH.musl: abi_type.cc
+       g++ -std=c++11 -nostdinc -fno-stack-protector -isystem $(MUSL)/include -isystem $(LIBGCC) -isystem /usr/include -c -o $@.o $<
+       nm -C $@.o |sed -n 's/^[[:xdigit:]]* T //p' |sort >$@
+abi.ARCH.diff:  abi.ARCH.glibc abi.ARCH.musl
+       diff -U0 $^ >$@ || true