1 # Makefile for Amanda server programs.
3 include $(top_srcdir)/config/automake/vars.am
4 include $(top_srcdir)/config/automake/scripts.am
5 include $(top_srcdir)/config/automake/installperms.am
6 include $(top_srcdir)/config/automake/precompile.am
8 INCLUDES = -I$(top_builddir)/common-src \
9 -I$(top_srcdir)/common-src \
10 -I$(top_srcdir)/restore-src \
11 -I$(top_srcdir)/amandad-src \
12 -I$(top_srcdir)/device-src \
13 -I$(top_srcdir)/gnulib
15 AM_CFLAGS = $(AMANDA_WARNING_CFLAGS)
16 AM_LDFLAGS = $(AMANDA_STATIC_LDFLAGS)
19 LINTFLAGS=$(AMLINTFLAGS)
21 amlib_LTLIBRARIES = libamserver.la
23 sbin_PROGRAMS = amadmin amcheck \
28 noinst_PROGRAMS = taper_source_test
30 amlibexec_PROGRAMS = amindexd amlogroll amtrmidx \
31 amtrmlog driver dumper \
32 planner taper amcleanupdisk \
35 # Exclude scripts which depend on perl extension modules from the syntax checks
46 SCRIPTS_PERL = $(CHECK_PERL)
52 sbin_SCRIPTS = $(SCRIPTS_PERL) $(SCRIPTS_SHELL)
55 dest=$(sbindir) chown=amanda chmod= \
57 chown=root chmod=04750 \
59 dest=$(amlibexecdir) chown=amanda chmod= \
60 $(amlibexec_PROGRAMS) \
61 chown=root chmod=04750 \
65 dest=$(sbindir) chown=amanda chmod= \
67 dest=$(amlibexecdir) chown=amanda chmod= \
71 # Because libamanda includes routines (e.g. regex) provided by some system
72 # libraries, and because of the way libtool sets up the command line, we
73 # need to list libamanda twice here, first to override the system library
74 # routines, and second to pick up any references in the other libraries.
77 LDADD = ../common-src/libamanda.la \
79 ../device-src/libamdevice.la \
80 ../common-src/libamanda.la \
83 libamserver_la_SOURCES= amindex.c changer.c \
84 diskfile.c driverio.c cmdline.c \
85 holding.c infofile.c logfile.c \
86 tapefile.c find.c server_util.c \
89 libamserver_la_LDFLAGS= -release $(VERSION)
90 libamserver_la_LIBADD= ../device-src/libamdevice.la \
91 ../common-src/libamanda.la
93 taper_source_test_SOURCES = taper-source-test.c \
97 taper-disk-port-source.c \
98 taper-mem-port-source.c
100 taper_SOURCES = taper.c \
102 taper-file-source.c \
103 taper-port-source.c \
104 taper-disk-port-source.c \
105 taper-mem-port-source.c
107 taper_LDADD = $(LDADD) \
108 ../amandad-src/libamandad.la
110 taper_source_test_LDADD = $(LDADD) \
111 ../amandad-src/libamandad.la
113 amindexd_LDADD = $(LDADD) \
114 ../amandad-src/libamandad.la
116 # there are used for testing only:
117 TEST_PROGS = diskfile infofile
119 EXTRA_PROGRAMS = $(TEST_PROGS)
121 CLEANFILES += *.test.c
123 amindexd_CSRC = amindexd.c disk_history.c list_dir.c
124 amindexd_SOURCES = disk_history.h list_dir.h $(amindexd_CSRC)
126 amreport_SOURCES = reporter.c
128 noinst_HEADERS = amindex.h changer.h cmdline.h \
129 diskfile.h driverio.h \
130 holding.h infofile.h logfile.h \
131 tapefile.h find.h server_util.h \
132 taperscan.h taper-disk-port-source.h \
133 taper-mem-port-source.h taper-file-source.h \
134 taper-port-source.h taper-source.h
137 @ for p in $(amlibexec_PROGRAMS) $(sbin_PROGRAMS); do \
138 p=`basename $$p $(EXEEXT)`; \
139 if [ $$p = "amindexd" ]; then \
140 s="$(amindexd_CSRC)"; \
141 elif [ $$p = "amreport" ]; then \
142 s="$(amreport_SOURCES)"; \
146 f="$$s $(libamserver_la_SOURCES)"; \
147 (cd ../common-src; make listlibsrc); \
148 f="$$f "`cat ../common-src/listlibsrc.output`; \
150 $(LINT) $(LINTFLAGS) $(CPPFLAGS) $(DEFS) -I. -I$(top_builddir)/config \
152 if [ $$? -ne 0 ]; then \
159 @ for p in $(libamserver_la_SOURCES); do \
160 listlibsrcs="$$listlibsrcs `pwd`/$$p"; \
162 echo $$listlibsrcs >listlibsrc.output
165 diskfile_SOURCES = diskfile.test.c
166 infofile_SOURCES = infofile.test.c
168 %.test.c: $(srcdir)/%.c
169 echo '#define TEST' >$@
170 echo '#include "$<"' >>$@