DEPFILES := $(patsubst %.c,%.d,$(SRCFILES))
ALLFILES := $(SRCFILES) $(HDRFILES) $(AUXFILES)
-CPPFLAGS := -MMD -MP
-CFLAGS := -g -std=c99 -I./internals/
-
.PHONY: all clean dist
all: $(OBJFILES)
- ar r pdclib.a $(OBJFILES)
+ ar r pdclib.a $?
test: $(TSTFILES)
-@rc=0; for file in $(TSTFILES); do ./$$file; rc=`expr $$rc + $$?`; done; echo; echo "Tests failed: $$rc"
-include $(DEPFILES)
clean:
- -@for file in $(OBJFILES) $(DEPFILES) pdclib.a; do if [ -f $$file ]; then rm $$file; fi; done
+ -@for file in $(OBJFILES) $(DEPFILES) $(TSTFILES) pdclib.a; do if [ -f $$file ]; then rm $$file; fi; done
dist:
@tar czf pdclib.tgz $(ALLFILES)
%.o: %.c Makefile
- $(CC) -DNDEBUG -c $(CPPFLAGS) $(CFLAGS) $< -o $@
+ $(CC) -DNDEBUG -MMD -MP -MT "$*.d $*.t" -g -std=c99 -I./internals -c $< -o $@
%.t: %.c Makefile
- $(CC) -DTEST $(CFLAGS) $< -o $@
-
+ $(CC) -DTEST -std=c99 -I./internals/ $< -o $@
return NULL;
}
-#warning Test driver missing.
-
#ifdef TEST
+#include <_PDCLIB_test.h>
+
int main()
{
- return 0;
+ BEGIN_TESTS;
+ TESTCASE( memchr( abcde, 'c', 5 ) == &abcde[2] );
+ TESTCASE( memchr( abcde, 'a', 1 ) == &abcde[0] );
+ TESTCASE( memchr( abcde, 'a', 0 ) == NULL );
+ TESTCASE( memchr( abcde, '\0', 5 ) == NULL );
+ TESTCASE( memchr( abcde, '\0', 6 ) == &abcde[5] );
+ return TEST_RESULTS;
}
#endif