2 # Bacula Tools Makefile
8 PYTHON_INC = @PYTHON_INCDIR@
18 # this dir relative to top dir
28 GETTEXT_LIBS = @LIBINTL@
30 OPENSSL_INC = @OPENSSL_INC@
31 OPENSSL_LIBS = @OPENSSL_LIBS@
33 FINDOBJS = testfind.o ../dird/dird_conf.o ../dird/inc_conf.o ../dird/run_conf.o
35 # these are the objects that are changed by the .configure process
38 DIRCONFOBJS = ../dird/dird_conf.o ../dird/run_conf.o ../dird/inc_conf.o
41 DIRTOOLS = bsmtp dbcheck drivetype fstype testfind testls bregex bwild
42 TOOLS = $(@DIR_TOOLS@)
45 INSDIRTOOLS = bsmtp dbcheck bwild bregex
46 INSTOOLS = $(INS@DIR_TOOLS@)
56 $(NO_ECHO)$(CXX) $(DEFS) $(DEBUG) -c $(CPPFLAGS) $(PYTHON_INC) -I$(srcdir) -I$(basedir) $(DINCLUDE) $(CFLAGS) $<
57 #-------------------------------------------------------------------------
58 all: Makefile $(TOOLS) gigaslam
59 @echo "==== Make of tools is good ===="
62 bsmtp: bsmtp.o ../lib/libbac.a
63 $(CXX) $(LDFLAGS) -L../lib -o $@ bsmtp.o -lbac -lm $(DLIB) $(LIBS) $(GETTEXT_LIBS) $(OPENSSL_LIBS)
65 dbcheck: dbcheck.o ../lib/libbac.a ../cats/libsql.a $(DIRCONFOBJS)
66 $(CXX) $(LDFLAGS) -L../lib -L../cats -o $@ dbcheck.o $(DIRCONFOBJS) -lsql -lbac -lm $(DB_LIBS) $(LIBS) $(GETTEXT_LIBS) $(OPENSSL_LIBS)
68 fstype: fstype.o ../lib/libbac.a ../findlib/libfind.a
69 $(CXX) $(LDFLAGS) -L../lib -L../findlib -o $@ fstype.o -lfind -lbac -lm $(DLIB) $(LIBS) $(GETTEXT_LIBS) $(OPENSSL_LIBS)
71 drivetype: drivetype.o ../lib/libbac.a ../findlib/libfind.a
72 $(CXX) $(LDFLAGS) -L../lib -L../findlib -o $@ drivetype.o -lfind -lbac -lm $(DLIB) $(LIBS) $(GETTEXT_LIBS) $(OPENSSL_LIBS)
74 dird_conf.o: ../dird/dird_conf.c
75 $(CXX) $(DEFS) $(DEBUG) -c $(CPPFLAGS) $(PYTHON_INC) -I$(srcdir) -I$(basedir) $(DINCLUDE) $(CFLAGS) $<
77 run_conf.o: ../dird/run_conf.c
78 $(CXX) $(DEFS) $(DEBUG) -c $(CPPFLAGS) $(PYTHON_INC) -I$(srcdir) -I$(basedir) $(DINCLUDE) $(CFLAGS) $<
80 inc_conf.o: ../dird/inc_conf.c
81 $(CXX) $(DEFS) $(DEBUG) -c $(CPPFLAGS) $(PYTHON_INC) -I$(srcdir) -I$(basedir) $(DINCLUDE) $(CFLAGS) $<
83 testfind: ../findlib/libfind.a ../lib/libbac.a $(FINDOBJS)
84 $(CXX) -g $(LDFLAGS) -L. -L../lib -L../findlib -o $@ $(FINDOBJS) \
85 $(DLIB) -lfind -lbac -lm $(LIBS) $(GETTEXT_LIBS) $(OPENSSL_LIBS)
87 testls: ../findlib/libfind.a ../lib/libbac.a testls.o
88 $(CXX) -g $(LDFLAGS) -L. -L../lib -L../findlib -o $@ testls.o \
89 $(DLIB) -lfind -lbac -lm $(LIBS) $(GETTEXT_LIBS) $(OPENSSL_LIBS)
91 bregex: ../findlib/libfind.a ../lib/libbac.a bregex.o
92 $(CXX) -g $(LDFLAGS) -L. -L../lib -o $@ bregex.o \
93 $(DLIB) -lbac -lm $(LIBS) $(GETTEXT_LIBS) $(OPENSSL_LIBS)
95 bwild: ../findlib/libfind.a ../lib/libbac.a bwild.o
96 $(CXX) -g $(LDFLAGS) -L. -L../lib -o $@ bwild.o \
97 $(DLIB) -lbac -lm $(LIBS) $(GETTEXT_LIBS) $(OPENSSL_LIBS)
99 gigaslam.o: gigaslam.c
103 $(CC) -o $@ gigaslam.o
106 Makefile: $(srcdir)/Makefile.in $(topdir)/config.status
108 && CONFIG_FILES=$(thisdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
111 @$(RMF) bsmtp core core.* a.out *.o *.bak *~ *.intpro *.extpro 1 2 3
118 if test $(srcdir) = .; then $(MAKE) realclean; fi
119 (cd $(srcdir); $(RMF) Makefile)
122 if test $(srcdir) = .; then $(MAKE) realclean; fi
123 (cd $(srcdir); $(RMF) Makefile)
125 # Allow non-root execution of bsmtp for non-root Directors
127 @for tool in ${INSTOOLS} ; do \
128 $(INSTALL_PROGRAM) $$tool $(DESTDIR)$(sbindir)/$$tool ; \
130 chmod 755 $(DESTDIR)$(sbindir)/bsmtp
133 @for tool in ${INSTOOLS} ; do \
134 $(RMF) $(DESTDIR)$(sbindir)/$$tool ; \
139 # Semi-automatic generation of dependencies:
140 # Use gcc -MM because X11 `makedepend' doesn't work on all systems
141 # and it also includes system headers.
142 # `semi'-automatic since dependencies are generated at distribution time.
145 @$(MV) Makefile Makefile.bak
146 @$(SED) "/^# DO NOT DELETE:/,$$ d" Makefile.bak > Makefile
147 @$(ECHO) "# DO NOT DELETE: nice dependency list follows" >> Makefile
148 @$(CXX) -S -M $(CPPFLAGS) $(PYTHON_INC) $(OPENSSL_INC) -I$(srcdir) -I$(basedir) $(SQL_INC) *.c >> Makefile
149 @if test -f Makefile ; then \
150 $(RMF) Makefile.bak; \
152 $(MV) Makefile.bak Makefile; \
153 echo " ===== Something went wrong in make depend ====="; \
156 # -----------------------------------------------------------------------
157 # DO NOT DELETE: nice dependency list follows