1 # Makefile for Amanda library.
3 lib_LTLIBRARIES = libamanda.la
6 REGsrcdir = $(srcdir)/$(REGDIR)
8 INCLUDES = -I$(REGsrcdir)
10 libamanda_la_SOURCES = \
11 alloc.c amflock.c clock.c debug.c \
12 dgram.c error.c file.c fileheader.c \
13 amfeatures.c match.c \
14 protocol.c regcomp.c regerror.c regexec.c \
15 regfree.c security.c statfs.c stream.c \
16 token.c util.c versuff.c version.c \
19 libamanda_la_LIBADD = @LTLIBOBJS@ @LTALLOCA@
20 libamanda_la_LDFLAGS = -release $(VERSION)
22 noinst_HEADERS = amanda.h arglist.h \
24 amfeatures.h protocol.h \
27 amregex.h fileheader.h \
31 STANDARD_COMMON_STUFF_NOT_FILE = \
38 STANDARD_COMMON_STUFF = \
39 $(STANDARD_COMMON_STUFF_NOT_FILE) \
46 EXTRA_PROGRAMS = genversion $(TEST_PROGS)
48 EXTRA_DIST = krb4-security.c krb4-security.h
50 genversion_SOURCES = genversion.c
51 genversion_LDADD = $(libamanda_la_LIBADD) $(STANDARD_COMMON_STUFF) versuff.o
53 genversion.o: genversion.h
54 genversion.h: $(top_builddir)/config.status
56 echo '#define CC "$(CC)"' > $@.new
57 echo '#define BUILT_DATE "'`date`'"' >> $@.new
58 echo '#define BUILT_MACH "'`uname -a || echo UNKNOWN HOST`'"' >> $@.new
61 version.c: genversion$(EXEEXT)
63 ./genversion > version.c
65 match.@OBJEXT@ match.lo: regex.h
66 regcomp.@OBJEXT@ regcomp.lo: regex.h regcomp.ih
67 regexec.@OBJEXT@ regexec.lo: regex.h engine.ih
68 regerror.@OBJEXT@ regerror.lo: regex.h regerror.ih
69 regfree.@OBJEXT@ regfree.lo: regex.h
71 REGEXHSRC = $(REGsrcdir)/regex2.h \
72 $(REGsrcdir)/regcomp.c \
73 $(REGsrcdir)/regexec.c \
74 $(REGsrcdir)/regerror.c \
75 $(REGsrcdir)/regfree.c
77 # these are used for testing only:
78 TEST_PROGS = statfs token file security amfeatures
80 CLEANFILES = regex.h regcomp.ih engine.ih regerror.ih *.test.c
82 DISTCLEANFILES = version.c
84 regex.h: $(REGEXHSRC) $(REGsrcdir)/mkh
85 sh $(REGsrcdir)/mkh -o -i _REGEX_H_ $(REGEXHSRC) >$@
87 regcomp.ih: $(REGsrcdir)/regcomp.c $(REGsrcdir)/mkh
88 sh $(REGsrcdir)/mkh -o -p $(REGsrcdir)/regcomp.c >$@
90 engine.ih: $(REGsrcdir)/engine.c $(REGsrcdir)/mkh
91 sh $(REGsrcdir)/mkh -o -p $(REGsrcdir)/engine.c >$@
93 regerror.ih: $(REGsrcdir)/regerror.c $(REGsrcdir)/mkh
94 sh $(REGsrcdir)/mkh -o -p $(REGsrcdir)/regerror.c >$@
96 # used for testing only
98 statfs_SOURCES = statfs.test.c
99 statfs_LDADD = $(libamanda_la_LIBADD) $(STANDARD_COMMON_STUFF)
101 token_SOURCES = token.test.c
102 token_LDADD = $(libamanda_la_LIBADD) $(STANDARD_COMMON_STUFF)
104 file_SOURCES = file.test.c
105 file_LDADD = $(libamanda_la_LIBADD) $(STANDARD_COMMON_STUFF_NOT_FILE)
107 security_SOURCES = security.test.c
108 security_LDADD = $(libamanda_la_LIBADD) $(STANDARD_COMMON_STUFF)
110 amfeatures_SOURCES = amfeatures.test.c
111 amfeatures_LDADD = $(libamanda_la_LIBADD) $(STANDARD_COMMON_STUFF)
113 %.test.c: $(srcdir)/%.c
114 echo '#define TEST' >$@
115 echo '#include "$<"' >>$@