From e65158a0326108d1fc724ee683b7fa900ef2671a Mon Sep 17 00:00:00 2001 From: Albert Cervin Date: Thu, 26 Jan 2023 13:07:07 +0100 Subject: More tests and documentation Also, split out platform-specific parts and add mocks for tests. --- targets.mk | 43 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 targets.mk (limited to 'targets.mk') diff --git a/targets.mk b/targets.mk new file mode 100644 index 0000000..c130237 --- /dev/null +++ b/targets.mk @@ -0,0 +1,43 @@ +# dependency generation +.c.d: + $(CC) -MM $(CFLAGS) -MT $*.o $< > $@ + @sed -i 's,\($*\)\.o[ :]*,\1.o $@ : ,g' $@ + +.c.o: + $(CC) $(CFLAGS) -c $< -o $@ + + +dged: src/main.o libdged.a + $(CC) $(LDFLAGS) src/main.o libdged.a -o dged + +libdged.a: $(OBJS) $(PLATFORM_OBJS) + $(AR) -rc libdged.a $(OBJS) $(PLATFORM_OBJS) + +run-tests: $(TEST_OBJS) $(OBJS) + $(CC) $(LDFLAGS) $(TEST_OBJS) $(OBJS) -o run-tests + +check: run-tests + ./run-tests + +run: dged + ./dged + +debug: dged + gdb ./dged + +debug-tests: run-tests + gdb ./run-tests + +clean: + rm -f $(FILES) + rm -rf docs + +install: dged + install -d $(prefix)/bin + install -m 755 dged $(prefix)/bin/dged + + install -d $(prefix)/share/man/man1 + install -m 644 dged.1 $(prefix)/share/man/man1/dged.1 + +docs: + doxygen Doxyfile -- cgit v1.2.3