PageRenderTime 55ms CodeModel.GetById 27ms RepoModel.GetById 1ms app.codeStats 0ms

/amanda/tags/amanda252p1/client-src/Makefile.am

#
Makefile | 127 lines | 91 code | 28 blank | 8 comment | 11 complexity | acd2db8734cf17743369ca56474dd0aa MD5 | raw file
  1. # Makefile for Amanda client programs.
  2. INCLUDES = -I$(top_builddir)/common-src \
  3. -I$(top_srcdir)/common-src \
  4. -I$(top_srcdir)/amandad-src \
  5. -I$(top_srcdir)/gnulib
  6. LINT=@AMLINT@
  7. LINTFLAGS=@AMLINTFLAGS@
  8. lib_LTLIBRARIES = libamclient.la
  9. LIB_EXTENSION = la
  10. libexec_PROGRAMS = noop calcsize killpgrp rundump runtar selfcheck sendbackup sendsize versionsuffix
  11. sbin_SCRIPTS = @CLIENT_SCRIPTS_OPT@
  12. libexec_SCRIPTS = patch-system
  13. if WANT_SAMBA
  14. samba_sources = findpass.c
  15. endif
  16. if WANT_RUNTIME_PSEUDO_RELOC
  17. AM_LDFLAGS = -Wl,-enable-runtime-pseudo-reloc
  18. endif
  19. libamclient_la_SOURCES= amandates.c getfsent.c \
  20. unctime.c client_util.c \
  21. $(samba_sources)
  22. libamclient_la_LDFLAGS = -release $(VERSION)
  23. ###
  24. # Because libamanda includes routines (e.g. regex) provided by some system
  25. # libraries, and because of the way libtool sets up the command line, we
  26. # need to list libamanda twice here, first to override the system library
  27. # routines, and second to pick up any references in the other libraries.
  28. ###
  29. LDADD = ../common-src/libamanda.$(LIB_EXTENSION) \
  30. libamclient.$(LIB_EXTENSION) \
  31. ../amandad-src/libamandad.$(LIB_EXTENSION) \
  32. ../common-src/libamanda.$(LIB_EXTENSION) \
  33. ../gnulib/libgnu.$(LIB_EXTENSION)
  34. SUFFIXES = .sh .pl
  35. .pl:
  36. cat $< > $@
  37. chmod a+x $@
  38. -test -z "$(PERL)" || $(PERL) -c $@
  39. .sh:
  40. cat $< > $@
  41. chmod a+x $@
  42. # these are used for testing only:
  43. TEST_PROGS = getfsent
  44. EXTRA_PROGRAMS = $(TEST_PROGS)
  45. CLEANFILES = *.test.c patch-system
  46. EXTRA_SCRIPTS = amhpfixdevs amsinixfixdevs
  47. DISTCLEANFILES = $(EXTRA_SCRIPTS)
  48. EXTRA_DIST = amhpfixdevs.sh amsinixfixdevs.sh
  49. sendbackup_SOURCES = sendbackup.c sendbackup.h \
  50. sendbackup-dump.c sendbackup-gnutar.c
  51. noinst_HEADERS = amandates.h getfsent.h \
  52. findpass.h client_util.h
  53. install-exec-hook:
  54. @list="$(sbin_SCRIPTS)"; \
  55. for p in $$list; do \
  56. pa=$(DESTDIR)$(sbindir)/`echo $$p|sed '$(transform)'`; \
  57. echo chown $(BINARY_OWNER) $$pa; \
  58. chown $(BINARY_OWNER) $$pa; \
  59. echo chgrp $(SETUID_GROUP) $$pa; \
  60. chgrp $(SETUID_GROUP) $$pa; \
  61. done
  62. @list="$(libexec_PROGRAMS) $(libexec_SCRIPTS)"; \
  63. for p in $$list; do \
  64. pa=$(DESTDIR)$(libexecdir)/`echo $$p|sed '$(transform)'`; \
  65. echo chown $(BINARY_OWNER) $$pa; \
  66. chown $(BINARY_OWNER) $$pa; \
  67. echo chgrp $(SETUID_GROUP) $$pa; \
  68. chgrp $(SETUID_GROUP) $$pa; \
  69. done
  70. if WANT_SETUID_CLIENT
  71. @list="calcsize killpgrp rundump runtar"; \
  72. for p in $$list; do \
  73. if echo "$(libexec_PROGRAMS)" | grep $$p >/dev/null 2>&1; then \
  74. pa=$(DESTDIR)$(libexecdir)/`echo $$p|sed 's/$(EXEEXT)$$//'|sed '$(transform)'|sed 's/$$/$(EXEEXT)/'`; \
  75. echo chown root $$pa; \
  76. chown root $$pa; \
  77. echo chmod u+s,o-rwx $$pa; \
  78. chmod u+s,o-rwx $$pa; \
  79. else true; \
  80. fi; \
  81. done
  82. endif
  83. lint:
  84. @ for p in $(libexec_PROGRAMS); do \
  85. f="$$p.c $(libamclient_la_SOURCES)"; \
  86. (cd ../common-src; make listlibsrc); \
  87. f="$$f "`cat ../common-src/listlibsrc.output`; \
  88. echo $(LINT) $$f; \
  89. $(LINT) $(LINTFLAGS) $(CPPFLAGS) $(DEFS) -I. -I../config \
  90. $(INCLUDES) $$f; \
  91. if [ $$? -ne 0 ]; then \
  92. exit 1; \
  93. fi; \
  94. done; \
  95. exit 0
  96. getfsent_SOURCES = getfsent.test.c
  97. %.test.c: $(srcdir)/%.c
  98. echo '#define TEST' >$@
  99. echo '#include "$<"' >>$@