1582447c9SJed BrownCFLAGS = -std=c99 -Wall -Wextra -Wno-unused-parameter -fPIC -MMD -MP 24859b599SJed BrownCFLAGS += $(if $(NDEBUG),-O2,-g) 34859b599SJed BrownCPPFLAGS = -I. 4582447c9SJed BrownLDLIBS = -lm 587e762eaSJed Brown 6*9df38c42SVeselin DobrevNOTMAC := $(subst Darwin,,$(shell uname -s)) 7*9df38c42SVeselin DobrevSO_EXT := $(if $(NOTMAC),so,dylib) 8*9df38c42SVeselin Dobrev 9*9df38c42SVeselin Dobrevlibfeme := libfeme.$(SO_EXT) 104859b599SJed Brownlibfeme.c := $(wildcard feme*.c) 11719a6f93SJed Browntests.c := $(sort $(wildcard t[0-9][0-9]-*.c)) 124859b599SJed Browntests := $(tests.c:%.c=%) 134859b599SJed Brown 14*9df38c42SVeselin Dobrev.SUFFIXES: 15*9df38c42SVeselin Dobrev.SUFFIXES: .c .o .d 16*9df38c42SVeselin Dobrev 174859b599SJed Brown$(libfeme) : $(libfeme.c:%.c=%.o) 184859b599SJed Brown $(CC) $(LDFLAGS) -shared -o $@ $^ $(LDLIBS) 194859b599SJed Brown 204859b599SJed Brown$(tests) : $(libfeme) 214859b599SJed Brown$(tests) : LDFLAGS += -Wl,-rpath,. -L. 224859b599SJed Brownt% : t%.c $(libfeme) 234859b599SJed Brown 244859b599SJed Brownrun-t% : t% 254859b599SJed Brown @./tap.sh $< 264859b599SJed Brown 274859b599SJed Browntest : $(tests:%=run-%) 284859b599SJed Brown 294859b599SJed Brown.PHONY: clean print 304859b599SJed Brownclean : 314859b599SJed Brown $(RM) *.o $(libfeme) $(tests.c:%.c=%) 32*9df38c42SVeselin Dobrev $(RM) -r *.dSYM 334859b599SJed Brown 344859b599SJed Brownprint : 354859b599SJed Brown @echo $(VAR)=$($(VAR)) 36582447c9SJed Brown 37*9df38c42SVeselin Dobrevprint-%: 38*9df38c42SVeselin Dobrev $(info [ variable name]: $*) 39*9df38c42SVeselin Dobrev $(info [ origin]: $(origin $*)) 40*9df38c42SVeselin Dobrev $(info [ value]: $(value $*)) 41*9df38c42SVeselin Dobrev $(info [expanded value]: $($*)) 42*9df38c42SVeselin Dobrev $(info ) 43*9df38c42SVeselin Dobrev @true 44*9df38c42SVeselin Dobrev 45582447c9SJed Brown-include $(libfeme.c:%.c=%.d) $(tests.c:%.c=%.d) 46