PATCHFILES3 := $(shell ls platform/$(PLATFORM)/functions/stdio/*.c)
WARNINGS := -Wall -Wextra -pedantic -Wno-unused-parameter -Wshadow -Wpointer-arith -Wcast-align -Wwrite-strings -Wmissing-prototypes -Wmissing-declarations -Wredundant-decls -Wnested-externs -Winline -Wno-long-long -fno-builtin
-CFLAGS := -g -std=c99 -I./internals $(WARNINGS) $(USERFLAGS)
+CFLAGS := -g -std=c99 -I./internals -I./testing $(WARNINGS) $(USERFLAGS)
.PHONY: all clean srcdist bindist test tests testdrivers regtests regtestdrivers todos fixmes find links unlink help
-include $(DEPFILES)
clean:
- @for file in $(OBJFILES) $(DEPFILES) $(TSTFILES) $(REGFILES) pdclib.a pdclib.tgz; do if [ -f $$file ]; then rm $$file; fi; done
+ @for file in $(OBJFILES) $(DEPFILES) $(TSTFILES) $(REGFILES) pdclib.a pdclib.tgz scanf_testdata_*; do if [ -f $$file ]; then rm $$file; fi; done
srcdist:
@tar czf pdclib.tgz $(ALLFILES)
@echo "Linking platform/$(PLATFORM)..."
@cd internals && ln -s ../platform/$(PLATFORM)/internals/_PDCLIB_config.h
@cd includes && ln -s ../platform/$(PLATFORM)/includes/float.h
+ @cd testing && ln -s ../platform/$(PLATFORM)/testing/printf_reference.txt
@cd functions/_PDCLIB && for file in $(PATCHFILES1); do basfile=`basename $$file`; if [ ! -f $$basfile ]; then ln -s `ls ../../$$file` .; fi; done
@cd functions/stdlib && for file in $(PATCHFILES2); do basfile=`basename $$file`; if [ ! -f $$basfile ]; then ln -s `ls ../../$$file` .; fi; done
@cd functions/stdio && for file in $(PATCHFILES3); do basfile=`basename $$file`; if [ ! -f $$basfile ]; then ln -s `ls ../../$$file` .; fi; done
@echo "Unlinking platform files..."
@if [ -f internals/_PDCLIB_config.h ]; then rm internals/_PDCLIB_config.h; fi
@if [ -f includes/float.h ]; then rm includes/float.h; fi
+ @if [ -f testing/printf_reference.txt ]; then rm testing/printf_reference.txt; fi
@cd functions/_PDCLIB && for file in $(PATCHFILES1); do basfile=`basename $$file`; if [ -f $$basfile ]; then rm $$basfile; fi; done
@cd functions/stdlib && for file in $(PATCHFILES2); do basfile=`basename $$file`; if [ -f $$basfile ]; then rm $$basfile; fi; done
@cd functions/stdio && for file in $(PATCHFILES3); do basfile=`basename $$file`; if [ -f $$basfile ]; then rm $$basfile; fi; done