blob: 163b6f2c493c4e6b4489d498c016d0a9fa156c35 [file]
SOSRCS=src/unix/fsatraceso.c src/emit.c src/unix/proc.c
TESTSRCS=test/nolibc.c test/noop.c
lib: fsatrace.so
%.os: %.c
$(CC) -c -fPIC $(CPPFLAGS) $(CFLAGS) $< -o $@
fsatest32: fsatest
cp $^ $@
fsatrace.so: $(patsubst %.c,%.os,$(SOSRCS))
$(CC) -shared $(LDFLAGS) $^ -o $@ $(LDLIBS)
libinstall: fsatrace.so
cp fsatrace.so $(INSTALLDIR)
test/nolibc: test/nolibc.c
$(CC) -c $^ -o nolibc.o
ld -o $@ nolibc.o -e _start
nolibc-test: test/nolibc fsatrace
./fsatrace ewrmdqt - -- ./test/nolibc; \
test $$? -ne 0 || (echo "Error: fsatrace should fail when a program does not use libc." && false)
test/noop: test/noop.o
$(CC) $(LDFLAGS) $(LDOBJS) $^ $(LDLIBS) -o $@
noop-test: test/noop fsatrace
./fsatrace ewrmdqt - -- ./test/noop
cleanlib:
rm -f fsatrace.so $(patsubst %.c,%.d,$(SOSRCS)) $(patsubst %.c,%.os,$(SOSRCS)) ./*.fifo
rm -f $(patsubst %.c,%,$(TESTSRCS)) $(patsubst %.c,%.d,$(TESTSRCS)) $(patsubst %.c,%.o,$(TESTSRCS))
-include $(patsubst %.c,%.d,$(SOSRCS) $(TESTSRCS))