lintian doesn't like orphan packages with uploaders...
[debian/amanda] / server-src / Makefile.am
index e3c46c4c21700c1e6450a1813c576721f40a9dfb..4c7eabef34fe4a3fde95c74553c00bc577a71887 100644 (file)
@@ -1,34 +1,75 @@
 # Makefile for Amanda server programs.
 
+include $(top_srcdir)/config/automake/vars.am
+include $(top_srcdir)/config/automake/scripts.am
+include $(top_srcdir)/config/automake/installperms.am
+include $(top_srcdir)/config/automake/precompile.am
+
 INCLUDES =     -I$(top_builddir)/common-src \
                -I$(top_srcdir)/common-src   \
-               -I$(top_srcdir)/restore-src  \
-               -I$(top_srcdir)/tape-src
+               -I$(top_srcdir)/amandad-src  \
+               -I$(top_srcdir)/device-src   \
+               -I$(top_srcdir)/xfer-src   \
+               -I$(top_srcdir)/gnulib
+
+AM_CFLAGS = $(AMANDA_WARNING_CFLAGS)
+AM_LDFLAGS = $(AMANDA_STATIC_LDFLAGS) $(AS_NEEDED_FLAGS)
 
-lib_LTLIBRARIES =      libamserver.la
-LIB_EXTENSION = la
+LINT=$(AMLINT)
+LINTFLAGS=$(AMLINTFLAGS)
 
-sbin_PROGRAMS =                amadmin         amcheck         amflush         \
-                       amgetconf       amlabel         amtape          \
-                       amreport
+amlib_LTLIBRARIES =    libamserver.la
 
-libexec_PROGRAMS =     amindexd        amlogroll       amtrmidx        \
+sbin_PROGRAMS =                amadmin         amcheck         \
+                       amflush
+
+amlibexec_PROGRAMS =   amindexd        amtrmidx        \
                        amtrmlog        driver          dumper          \
-                       planner         taper           amcleanupdisk   \
-                       chunker
+                       planner         chunker
+
+amlibexec_SCRIPTS_PERL = \
+           amlogroll \
+           amdumpd \
+           taper \
+           amcheck-device
+
+sbin_SCRIPTS_PERL = \
+           amaddclient \
+           amoverview \
+           amserverconfig \
+           amtoc \
+           amcheckdump \
+           amcleanup \
+           amcleanupdisk \
+           amrmtape \
+           amlabel \
+           amreport \
+           amtape \
+           amvault \
+           amdump \
+           amstatus
+if WANT_RESTORE
+amlibexec_SCRIPTS_PERL += \
+           amidxtaped
+sbin_SCRIPTS_PERL += \
+           amfetchdump \
+           amrestore
+endif
 
-sbin_SCRIPTS =         amcheckdb       amcleanup       amdump          \
-                       amoverview      amrmtape        amtoc           \
-                       amverify        amverifyrun     amstatus        \
-                       amcrypt         amaespipe
+sbin_SCRIPTS_SHELL = \
+           amcheckdb
 
-libamserver_la_SOURCES=        amindex.c       changer.c                       \
-                       conffile.c      diskfile.c      driverio.c      \
-                       holding.c       infofile.c      logfile.c       \
-                       tapefile.c      find.c          server_util.c   \
-                        taperscan.c
 
-libamserver_la_LDFLAGS= -release $(VERSION)
+SCRIPTS_PERL = $(sbin_SCRIPTS_PERL) $(amlibexec_SCRIPTS_PERL)
+SCRIPTS_SHELL = $(sbin_SCRIPTS_SHELL) $(amlibexec_SCRIPTS_SHELL)
+sbin_SCRIPTS = $(sbin_SCRIPTS_PERL) $(sbin_SCRIPTS_SHELL)
+amlibexec_SCRIPTS = $(amlibexec_SCRIPTS_PERL) $(amlibexec_SCRIPTS_SHELL)
+
+INSTALLPERMS_exec = \
+       dest=$(sbindir) chown=root:setuid chmod=04750 \
+               amcheck \
+       dest=$(amlibexecdir) \
+               dumper planner
 
 ###
 # Because libamanda includes routines (e.g. regex) provided by some system
@@ -37,89 +78,68 @@ libamserver_la_LDFLAGS= -release $(VERSION)
 # routines, and second to pick up any references in the other libraries.
 ###
 
-LDADD = ../common-src/libamanda.$(LIB_EXTENSION) \
-       libamserver.$(LIB_EXTENSION) \
-       ../tape-src/libamtape.$(LIB_EXTENSION) \
-       ../common-src/libamanda.$(LIB_EXTENSION) \
-       ../tape-src/libamtape.$(LIB_EXTENSION) \
-       ../common-src/libamanda.$(LIB_EXTENSION)
+LDADD = ../common-src/libamanda.la   \
+       libamserver.la               \
+       ../device-src/libamdevice.la     \
+       ../common-src/libamanda.la
 
-SUFFIXES =             .sh .pl
+libamserver_la_SOURCES=        amindex.c       \
+                       diskfile.c      driverio.c      cmdline.c  \
+                       holding.c       infofile.c      logfile.c       \
+                       tapefile.c      find.c          server_util.c   \
+                        xfer-source-holding.c
 
-.pl:
-                       cat $< > $@
-                       chmod a+x $@
-                       -test -z "$(PERL)" || $(PERL) -c $@
+libamserver_la_LDFLAGS= -release $(VERSION) $(AS_NEEDED_FLAGS)
+libamserver_la_LIBADD= ../device-src/libamdevice.la \
+                      ../common-src/libamanda.la
 
-.sh:
-                       cat $< > $@
-                       chmod a+x $@
+amindexd_LDADD = $(LDADD) \
+       ../amandad-src/libamandad.la
 
 # there are used for testing only:
-TEST_PROGS = diskfile conffile infofile
+TEST_PROGS = diskfile infofile
 
 EXTRA_PROGRAMS =       $(TEST_PROGS)
 
-CLEANFILES = *.test.c $(sbin_SCRIPTS)
-
-amindexd_SOURCES =     amindexd.c                                      \
-                       disk_history.c                  disk_history.h  \
-                       list_dir.c                      list_dir.h
+CLEANFILES += *.test.c
 
-amreport_SOURCES =     reporter.c
+amindexd_CSRC =                amindexd.c      disk_history.c  list_dir.c
+amindexd_SOURCES =     disk_history.h  list_dir.h      $(amindexd_CSRC)
 
-amgetconf_SOURCES =    getconf.c
-
-noinst_HEADERS =       amindex.h       changer.h                       \
-                       conffile.h      diskfile.h      driverio.h      \
+noinst_HEADERS =       amindex.h       cmdline.h       \
+                       diskfile.h      driverio.h      \
                        holding.h       infofile.h      logfile.h       \
                        tapefile.h      find.h          server_util.h   \
-                       taperscan.h
-
-install-exec-hook:
-       @list="$(sbin_PROGRAMS) $(sbin_SCRIPTS)"; \
-       for p in $$list; do \
-               pa=$(DESTDIR)$(sbindir)/`echo $$p|sed '$(transform)'`; \
-               echo chown $(BINARY_OWNER) $$pa; \
-               chown $(BINARY_OWNER) $$pa; \
-               echo chgrp $(SETUID_GROUP) $$pa; \
-               chgrp $(SETUID_GROUP) $$pa; \
-       done
-       @list="$(libexec_PROGRAMS) $(libexec_SCRIPTS)"; \
-       for p in $$list; do \
-               pa=$(DESTDIR)$(libexecdir)/`echo $$p|sed '$(transform)'`; \
-               echo chown $(BINARY_OWNER) $$pa; \
-               chown $(BINARY_OWNER) $$pa; \
-               echo chgrp $(SETUID_GROUP) $$pa; \
-               chgrp $(SETUID_GROUP) $$pa; \
-       done
-       @list="amcheck"; \
-       for p in $$list; do \
-               if echo "$(sbin_PROGRAMS)" | grep $$p >/dev/null 2>&1; then \
-                       pa=$(DESTDIR)$(sbindir)/`echo $$p|sed '$(transform)'`; \
-                       echo chown root $$pa; \
-                       chown root $$pa; \
-                       echo chmod u+s,o-rwx $$pa; \
-                       chmod u+s,o-rwx $$pa; \
-               else true; \
-               fi; \
-       done
-if !WANT_SSH_SECURITY
-       @list="dumper planner"; \
-       for p in $$list; do \
-               if echo "$(libexec_PROGRAMS)" | grep $$p >/dev/null 2>&1; then \
-                       pa=$(DESTDIR)$(libexecdir)/`echo $$p|sed '$(transform)'`; \
-                       echo chown root $$pa; \
-                       chown root $$pa; \
-                       echo chmod u+s,o-rwx $$pa; \
-                       chmod u+s,o-rwx $$pa; \
-               else true; \
-               fi; \
-       done
-endif
+                       xfer-server.h
+
+lint:
+       @ for p in $(amlibexec_PROGRAMS) $(sbin_PROGRAMS); do                   \
+               p=`basename $$p $(EXEEXT)`;                                     \
+               if [ $$p = "amindexd" ]; then                                   \
+                       s="$(amindexd_CSRC)";                                   \
+               else                                                            \
+                       s=$$p.c;                                                \
+               fi;                                                             \
+               f="$$s $(libamserver_la_SOURCES)";                              \
+               (cd ../common-src; make listlibsrc);                            \
+               f="$$f "`cat ../common-src/listlibsrc.output`;                  \
+               echo $(LINT) $$f;                                               \
+               $(LINT) $(LINTFLAGS) $(CPPFLAGS) $(DEFS) -I. -I$(top_builddir)/config   \
+                   $(INCLUDES) $$f;                                            \
+               if [ $$? -ne 0 ]; then                                          \
+                   exit 1;                                                     \
+               fi;                                                             \
+       done;                                                                   \
+        exit 0
+
+listlibsrc:
+       @ for p in $(libamserver_la_SOURCES); do                \
+               listlibsrcs="$$listlibsrcs `pwd`/$$p";          \
+       done;                                                   \
+       echo $$listlibsrcs >listlibsrc.output
+
 
 diskfile_SOURCES = diskfile.test.c
-conffile_SOURCES = conffile.test.c
 infofile_SOURCES = infofile.test.c
 
 %.test.c: $(srcdir)/%.c