1 # Makefile for cln/benchmarks
3 #### Start of system configuration section. ####
5 # Directories used by "make":
7 top_srcdir = @top_srcdir@
9 # Programs used by "make":
18 INCLUDES = -I../include -I$(top_srcdir)/include -I$(top_srcdir)/src @GMP_INCLUDES@ -I$(srcdir)
19 CPPFLAGS += $(INCLUDES)
21 LIBTOOL_LINK = $(LIBTOOL) --mode=link
27 #### End of system configuration section. ####
31 # Needed by $(LIBTOOL).
36 FILES_CC := $(notdir $(wildcard $(srcdir)/*.cc))
37 FILES_CC := $(filter-out %.i.cc, $(FILES_CC))
39 FILES_I_CC := $(patsubst %.cc,%.i.cc,$(FILES_CC))
41 FILES_S := $(patsubst %.cc,%.s,$(FILES_CC))
43 FILES_O := $(patsubst %.cc,%.o,$(FILES_CC))
47 LIBS = ../src/libcln.la -lm
48 LIBDEPS = ../src/libcln.la
50 PROGRAMS = timebench1 timebench2a timebench2ap timebench2b
51 MODULES_timebench1 = timebench1
52 MODULES_timebench2a = timebench2a
53 MODULES_timebench2ap = timebench2ap
54 MODULES_timebench2b = timebench2b
56 all : timebench2a timebench2ap timebench2b
59 $(CC) $(CFLAGS) $(CPPFLAGS) $(TARGET_ARCH) -S $< -o $@
62 $(CXX) $(CXXFLAGS) $(CPPFLAGS) $(TARGET_ARCH) -S $< -o $@
67 $(CC) $(CFLAGS) $(CPPFLAGS) $(TARGET_ARCH) -c $< -o $@
70 $(CXX) $(CXXFLAGS) $(CPPFLAGS) $(TARGET_ARCH) -c $< -o $@
74 $(FILES_O) : %.o : %.s
75 $(CC) $(CFLAGS) $(CPPFLAGS) $(TARGET_ARCH) -c $< -o $@
80 $(CPP) $(CFLAGS) $(CPPFLAGS) $(TARGET_ARCH) $< > $@
83 $(CXXCPP) $(CXXFLAGS) $(CPPFLAGS) $(TARGET_ARCH) $< > $@
85 timebench1 : $(patsubst %,%.o,$(MODULES_timebench1))
86 timebench2a : $(patsubst %,%.o,$(MODULES_timebench2a))
87 timebench2ap : $(patsubst %,%.o,$(MODULES_timebench2ap))
88 timebench2b : $(patsubst %,%.o,$(MODULES_timebench2b))
89 $(PROGRAMS) : % : $(LIBDEPS)
90 $(LIBTOOL_LINK) $(CXX) $(CXXFLAGS) $(TARGET_ARCH) $(patsubst %,%.o,$(MODULES_$(*F))) $(LIBS) -o $@
104 $(RM) *.s *.o *.a $(PROGRAMS) a.out core
107 $(RM) config.status config.log config.cache Makefile
109 maintainer-clean : distclean