1 LIBRARIES := Spin Acari Scorpion Damon Agelena
4 MODULES := $(LIBRARIES) $(PROGRAMS)
5 MODULE_DIRS := $(patsubst %,lib/%,$(LIBRARIES)) $(patsubst %,bin/%,$(PROGRAMS))
10 # List of all makefiles - we re-make on a makefile change
11 MAKEFILES = Makefile $(patsubst %,$(srcdir)/%/module.mk,$(MODULE_DIRS))
12 ## filled in by configury
16 vpath %.cc .:$(srcdir)
17 vpath %.cpp .:$(srcdir)
33 HAVE_PTHREAD_SIGMASK=@HAVE_PTHREAD_SIGMASK@
36 CXXFLAGS=@CXXFLAGS@ @DEFS@ -D_REENTRANT
41 exec_prefix=@exec_prefix@
44 libexecdir=@libexecdir@
45 includedir=@includedir@
48 INSTALL_PROGRAM=@INSTALL_PROGRAM@
49 INSTALL_SCRIPT=@INSTALL_SCRIPT@
50 INSTALL_DATA=@INSTALL_DATA@
52 # platform-specific stuff
55 # look for include files in each of the modules:
56 CFLAGS += -g -Wall -Werror -Wno-unused-label -I. -I$(srcdir) @DEFS@ -D_REENTRANT
58 # extra libs if required
61 ENABLE_SERIALIZATION := @ENABLE_SERIALIZATION@
63 # each module will add to this
66 # include the generic rules
67 include $(srcdir)/project/gnu/rules.mk
69 # include the generic macros
70 include $(srcdir)/project/gnu/macros.mk
72 # include the description of each module
73 -include $(patsubst %,$(srcdir)/%/module.mk,$(MODULE_DIRS))
74 -include $(srcdir)/tests/*/*/module.mk
75 -include $(srcdir)/tests/*/module.mk
77 # $(foreach mod,$(MODULES),$(eval $(call OBJ_template,$(mod))))
79 # library linking rules
80 include $(srcdir)/project/gnu/link.mk
82 # include dependencies
83 -include $(OBJ:.lo=.d)
85 define LTLIBRARIES_function
88 $(foreach lib,$(LIBRARIES),$(eval $(call LTLIBRARIES_function,$(lib))))
90 # dependencies for library targets
92 real_all : $(patsubst %,lib%.la,$(LTLIBRARIES))
95 test -z "$(bindir)" || mkdir -p $(DESTDIR)$(bindir)
96 test -z "$(libdir)" || mkdir -p $(DESTDIR)$(libdir)
97 list='$(patsubst %,%.la,$(INSTALL_LIBRARIES))'; for l in $$list; do if [ -f $$l ]; then libtool --mode=install cp "$$l" "$(DESTDIR)$(libdir)/$$l" || exit 1; fi; done
98 for h in $(INSTALL_HEADERS); do mkdir -p $(DESTDIR)$(includedir)/$$(dirname $$h); cp $(srcdir)/lib/$$h $(DESTDIR)$(includedir)/$$h; done
100 # calculate C include dependencies
101 %.d : %.c $(MAKEFILES)
102 mkdir -p `dirname $@`
103 $(SHELL) $(srcdir)/project/gnu/depend.sh -c `dirname $@` $(CFLAGS) $(CPPFLAGS) $< > $@
105 %.d : %.cpp $(MAKEFILES)
106 mkdir -p `dirname $@`
107 $(SHELL) $(srcdir)/project/gnu/depend.sh -cxx `dirname $@` $(CXXFLAGS) $(CPPFLAGS) $< > $@
109 %.d : %.cc $(MAKEFILES)
110 mkdir -p `dirname $@`
111 $(SHELL) $(srcdir)/project/gnu/depend.sh -cxx `dirname $@` $(CXXFLAGS) $(CPPFLAGS) $< > $@
113 # dependencies for configury-related files
114 Makefile : $(srcdir)/Makefile.in
115 $(SHELL) config.status
117 $(srcdir)/Makefile.in : $(srcdir)/project/gnu/Makefile.in.in
118 cd $(srcdir) && bash bootstrap
120 $(srcdir)/configure.ac : $(srcdir)/project/gnu/configure.ac.in
121 cd $(srcdir) && bash bootstrap
123 config.status : $(srcdir)/configure
124 $(SHELL) $(srcdir)/configure
126 $(srcdir)/configure : $(srcdir)/configure.ac
127 cd $(srcdir) && bash bootstrap
129 check : all $(CHECK_DEPS)
130 for i in $(CHECK_DEPS); do $(LIBTOOL) --mode=execute ./$$i; done
132 debug : all $(CHECK_DEPS)
133 for i in $(CHECK_DEPS); do $(LIBTOOL) --mode=execute $(DEBUGGER) ./$$i; done