cloud-sat/kissat-inc/makefile.in
2023-03-26 19:15:17 +08:00

69 lines
1.4 KiB
Makefile

CC=@CC@
CFLAGS=@CFLAGS@
LD=@LD@
AR=@AR@
VPATH=../src:../test
%.o: %.c ../[st]*/*.h makefile
$(CC) $(CFLAGS) -c $<
APPSRC=application.c handle.c parse.c witness.c
LIBSRT=$(sort $(wildcard ../src/*.c))
LIBSUB=$(subst ../src/,,$(LIBSRT))
LIBSRC=$(filter-out main.c,$(LIBSUB))
TSTSRT=$(sort $(wildcard ../test/*.c))
TSTSUB=$(subst ../test/,,$(TSTSRT))
TSTSRC=$(filter-out test.c,$(TSTSUB))
APPOBJ=$(APPSRC:.c=.o)
LIBOBJ=$(LIBSRC:.c=.o)
TSTOBJ=$(APPOBJ) $(TSTSRC:.c=.o)
INCLUDES=-I../$(shell pwd|sed -e 's,.*/,,')
all: libkissat.a kissat@TESTDEFAULT@
test: all tissat
./tissat
REMOVE=*.gcda *.gcno *.gcov gmon.out *~ *.proof
clean:
rm -f kissat tissat
rm -f makefile build.h *.o *.a
rm -f $(REMOVE)
cd ../src; rm -f $(REMOVE)
cd ../test; rm -f $(REMOVE)
coverage:
@gcov -o . -s ../src/*.[ch] 2>&1 | \
../scripts/filter-coverage-output.sh
indent:
indent ../*/*.[ch]
kissat: main.o $(APPOBJ) libkissat.a makefile
$(LD) -o $@ $< $(APPOBJ) -L. -lkissat -lm
tissat: test.o $(TSTOBJ) libkissat.a makefile
$(LD) -o $@ $< $(TSTOBJ) -L. -lkissat -lm
build.h:
../scripts/generate-build-header.sh > $@
collect.o: sort.c
dense.o: sort.c
propagate.o: assign.c
watch.o: sort.c
build.o: build.c build.h ../[st]*/*.h makefile
$(CC) $(CFLAGS) $(INCLUDES) -c $<
test.o: test.c build.h ../[st]*/*.h makefile
$(CC) $(CFLAGS) $(INCLUDES) -c $<
libkissat.a: $(LIBOBJ) makefile
$(AR) rc $@ $(LIBOBJ)
.PHONY: all clean coverage indent test build.h