1 # Makefile for Amanda library.
3 lib_LTLIBRARIES = libamanda.la
6 REGsrcdir = $(srcdir)/$(REGDIR)
8 INCLUDES = -I$(REGsrcdir)
11 LINTFLAGS=@AMLINTFLAGS@
13 libamanda_la_SOURCES = \
50 libamanda_la_LIBADD = @LTLIBOBJS@ @LTALLOCA@
51 libamanda_la_LDFLAGS = -release $(VERSION)
80 EXTRA_PROGRAMS = genversion $(TEST_PROGS)
82 genversion_SOURCES = genversion.c
83 genversion_LDADD = $(libamanda_la_LIBADD) versuff.lo
85 genversion.@OBJEXT@: genversion.h
86 genversion.h: $(top_builddir)/config.status
88 echo '#define CC "$(CC)"' > $@.new
89 echo '#define BUILT_DATE "'`date`'"' >> $@.new
90 echo '#define BUILT_MACH "'`uname -a || echo UNKNOWN HOST`'"' >> $@.new
93 version.c: genversion$(EXEEXT)
95 ./genversion > version.c
97 match.@OBJEXT@ match.lo: regex.h
98 regcomp.@OBJEXT@ regcomp.lo: regex.h regcomp.ih
99 regexec.@OBJEXT@ regexec.lo: regex.h engine.ih
100 regerror.@OBJEXT@ regerror.lo: regex.h regerror.ih
101 regfree.@OBJEXT@ regfree.lo: regex.h
103 REGEXCSRC = $(REGsrcdir)/regcomp.c \
104 $(REGsrcdir)/regexec.c \
105 $(REGsrcdir)/regerror.c \
106 $(REGsrcdir)/regfree.c
108 REGEXHSRC = $(REGsrcdir)/regex2.h \
111 # these are used for testing only:
112 TEST_PROGS = statfs token file bsdsecurity amfeatures
114 CLEANFILES = regex.h regcomp.ih engine.ih regerror.ih *.test.c
116 DISTCLEANFILES = version.c genversion.h genversion amanda-int.h
118 regex.h: $(REGEXHSRC) $(REGsrcdir)/mkh
119 sh $(REGsrcdir)/mkh -i _REGEX_H_ $(REGEXHSRC) >$@
121 regcomp.ih: $(REGsrcdir)/regcomp.c $(REGsrcdir)/mkh
122 sh $(REGsrcdir)/mkh -p $(REGsrcdir)/regcomp.c >$@
124 engine.ih: $(REGsrcdir)/engine.c $(REGsrcdir)/mkh
125 sh $(REGsrcdir)/mkh -p $(REGsrcdir)/engine.c >$@
127 regerror.ih: $(REGsrcdir)/regerror.c $(REGsrcdir)/mkh
128 sh $(REGsrcdir)/mkh -p $(REGsrcdir)/regerror.c >$@
130 # used for testing only
132 STANDARD_COMMON_STUFF_NOT_FILE = \
140 STANDARD_COMMON_STUFF = \
141 $(STANDARD_COMMON_STUFF_NOT_FILE) \
144 statfs_SOURCES = statfs.test.c
145 statfs_LDADD = $(libamanda_la_LIBADD) $(STANDARD_COMMON_STUFF)
147 token_SOURCES = token.test.c
148 token_LDADD = $(libamanda_la_LIBADD) $(STANDARD_COMMON_STUFF)
150 file_SOURCES = file.test.c
151 file_LDADD = $(libamanda_la_LIBADD) $(STANDARD_COMMON_STUFF_NOT_FILE)
153 bsdsecurity_SOURCES = bsd-security.test.c
154 bsdsecurity_LDADD = $(libamanda_a_LIBADD) \
164 ssh-security.$(OBJEXT) \
167 amfeatures_SOURCES = amfeatures.test.c
168 amfeatures_LDADD = $(libamanda_la_LIBADD) $(STANDARD_COMMON_STUFF)
171 @echo $(LINT) $(libamanda_la_SOURCES)
172 @$(LINT) $(LINTFLAGS) $(CPPFLAGS) $(DEFS) -I. -I../config $(INCLUDES) $(libamanda_la_SOURCES)
173 @echo $(LINT) $(genversion_SOURCES)
174 @$(LINT) $(LINTFLAGS) $(CPPFLAGS) $(DEFS) -I. -I../config $(INCLUDES) $(genversion_SOURCES)
177 @ for p in $(libamanda_la_SOURCES) $(REGEXCSRC); do \
178 listlibsrcs="$$listlibsrcs `pwd`/$$p"; \
180 echo $$listlibsrcs >listlibsrc.output
182 %.test.c: $(srcdir)/%.c
183 echo '#define TEST' >$@
184 echo '#include "$<"' >>$@