X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=Makefile;h=9ab4a7db50dc7e88bf7a72f86f10b058df69da0c;hb=b2578f20a51e097593581b5a001e60d3410e6e08;hp=3335e9950d545be2476dde25cb9d2b64b77a854d;hpb=a282469e8b143657e71fd0a978c6f56a27e192a2;p=musl-tables diff --git a/Makefile b/Makefile index 3335e99..9ab4a7d 100644 --- a/Makefile +++ b/Makefile @@ -1,34 +1,55 @@ -MUSL=../musl - -all: tables sizeof +all: tables abi clean: rm -f sizeof*.o sizeof-glibc sizeof-musl sizeof.diff tab_*.html -tables: tags syms - MUSL=$(MUSL) ./tab_c99.sh - MUSL=$(MUSL) ./tab_posix.sh +tables: + MUSL=$(MUSL) ./update.sh +abi: data/abi_type.x86_64.musl data/abi_func.x86_64.musl + +abi_type.x86_64.cc abi_func.cc: tables -tags: - MUSL=$(MUSL) ./maketags.sh +data/abi_type.x86_64.musl: abi_type.x86_64.cc + CXX=g++ ./abi_type_data.sh >$@ +data/abi_func.x86_64.musl: abi_func.cc + CXX=g++ ./abi_func_data.sh >$@ -syms: - MUSL=$(MUSL) ./makesyms.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 #PCC=`pcc -v foobar.o 2>&1 |sed -n 's,.* \([^ ]*\)/lib/crtbegin.o.*,\1,p'` +sizeof.c: + ./sizeof.sh + sizeof-glibc: sizeof.c - gcc -o $@ $< + gcc -std=gnu99 -o $@ $< sizeof-musl: sizeof.c - gcc -std=gnu99 -nostdinc -fno-stack-protector -isystem $(MUSL)/include -isystem $(LIBGCC) -c -o $@.o $< - ld -o $@ $@.o $(MUSL)/lib/crti.o $(MUSL)/lib/crt1.o $(MUSL)/lib/crtn.o -L$(MUSL)/lib -lc -L$(LIBGCC) -lgcc -nostdlib + gcc -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 # 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