diff options
Diffstat (limited to 'test/stdlib/Makefile')
-rw-r--r-- | test/stdlib/Makefile | 104 |
1 files changed, 104 insertions, 0 deletions
diff --git a/test/stdlib/Makefile b/test/stdlib/Makefile new file mode 100644 index 000000000..e882d8f85 --- /dev/null +++ b/test/stdlib/Makefile @@ -0,0 +1,104 @@ +TOPDIR=../../ +include $(TOPDIR)Rules.make + +# Check if 'ls -sh' works or not +LSFLAGS = $(shell if ls -sh >/dev/null 2>&1; \ + then echo "-sh"; else echo "-s" ; fi) + +XCFLAGS = -Wall -Os -fomit-frame-pointer -fno-builtin -nostdinc \ + -I$(TOPDIR)include -I/usr/include/linux +XLDFLAGS = -nostdlib -s -gc-sections +EXTRA_LIBS=$(TOPDIR)libc.a + +YCFLAGS = -Wall -Os -fomit-frame-pointer +YLDFLAGS = -s --static + +# Allow alternative stripping tools to be used... +ifndef $(STRIPTOOL) + STRIPTOOL = strip +endif +STRIP = $(STRIPTOOL) --remove-section=.note --remove-section=.comment $@ + +TARGETS=testmalloc_source testmalloc testmalloc_glibc +TARGETS+=teststrtol_source teststrtol teststrtol_glibc teststrtol_diff + +all: $(TARGETS) + +testmalloc_source: + -@ echo "-------" + -@ echo "testmalloc.c source: " + -@ echo " " + -@ cat testmalloc.c + -@ echo " " + +testmalloc: testmalloc.c Makefile $(TOPDIR)libc.a + -@ echo "-------" + -@ echo " " + -@ echo "Compiling vs uC-Libc: " + -@ echo " " + $(CC) $(XCFLAGS) -c $< -o $@.o + $(CC) $(XLDFLAGS) $@.o -o $@ $(EXTRA_LIBS) + $(STRIP) + -ldd $@ + ls $(LSFLAGS) $@ + -./$@ + -@ echo " " + +testmalloc_glibc: testmalloc.c Makefile $(TOPDIR)libc.a + -@ echo "-------" + -@ echo " " + -@ echo "Compiling vs GNU libc: " + -@ echo " " + $(CC) $(YCFLAGS) -c $< -o $@.o + $(CC) $(YLDFLAGS) --static $@.o -o $@ + $(STRIP) + -ldd $@ + ls $(LSFLAGS) $@ + -./$@ + -@ echo " " + +teststrtol_source: + -@ echo "-------" + -@ echo "teststrtol.c source: " + -@ echo " " + -@ cat teststrtol.c + -@ echo " " + +teststrtol: teststrtol.c Makefile $(TOPDIR)libc.a + -@ echo "-------" + -@ echo " " + -@ echo "Compiling vs uC-Libc: " + -@ echo " " + $(CC) $(XCFLAGS) -c $< -o $@.o + $(CC) $(XLDFLAGS) $@.o -o $@ $(EXTRA_LIBS) + $(STRIP) + ldd $@ + ls -sh $@ + -./$@ | tee $@.out + -@ echo " " + +teststrtol_glibc: teststrtol.c Makefile $(TOPDIR)libc.a + -@ echo "-------" + -@ echo " " + -@ echo "Compiling vs GNU libc: " + -@ echo " " + $(CC) $(YCFLAGS) -c $< -o $@.o + $(CC) $(YLDFLAGS) --static $@.o -o $@ + $(STRIP) + ldd $@ + ls -sh $@ + -./$@ | tee $@.out + -@ echo " " + +teststrtol_diff: teststrtol_glibc teststrtol + -@ echo "-------" + -@ echo " " + -@ echo "Diffing output: " + -@ echo " " + -diff -u teststrtol_glibc.out teststrtol.out + -@ echo " " + +clean: + rm -f *.[oa] *~ core $(TARGETS) + + |