-#
-# Version $Id$
+#
# Master Makefile
#
+# Copyright (C) 2000-2015 Kern Sibbald
+# License: BSD 2-Clause; see file LICENSE-FOSS
+#
@MCOMMON@
working_dir=@working_dir@
srcdir = @srcdir@
VPATH = @srcdir@
.PATH: @srcdir@
-topdir = .
-thisdir = .
+topdir = @BUILD_DIR@
+thisdir = @BUILD_DIR@
first_rule: all
# --client-only directories
fd_subdirs = src scripts src/lib src/findlib src/filed \
- @READLINE_SRC@ @BAT_DIR@ @GNOME_DIR@ @TRAY_MONITOR_DIR@ @WX_DIR@ \
- src/console
+ @READLINE_SRC@ @BAT_DIR@ src/console @FD_PLUGIN_DIR@
# Non-client-only directores
subdirs = src/cats @DIRD_DIR@ @STORED_DIR@ src/tools
autoconf/config.h.in autoconf/acconfig.h autoconf/Make.common.in \
autoconf/install-sh autoconf/mkinstalldirs
+doc_files = VERIFYING ChangeLog README ReleaseNotes LICENSE \
+ LICENSE-FAQ LICENSE-FOSS INSTALL
+
MKDIR = $(srcdir)/autoconf/mkinstalldirs
+LIBTOOL_DEPS = @LIBTOOL_DEPS@
#-------------------------------------------------------------------------
all: Makefile
@for I in ${all_subdirs}; \
do (cd $$I; echo "==>Entering directory `pwd`"; \
- $(MAKE) $@ || (echo ""; echo ""; echo " ====== Error in `pwd` ======"; \
- echo ""; echo "";)); \
+ $(MAKE) DESTDIR=$(DESTDIR) $@ || (echo ""; echo ""; echo " ====== Error in `pwd` ======"; \
+ echo ""; echo ""; false ) || false) || exit 1; \
done
depend:
@for I in ${all_subdirs}; \
do (cd $$I; echo "==>Entering directory `pwd`"; $(MAKE) DESTDIR=$(DESTDIR) $@ || exit 1); done
-bacula-fd: Makefile
+bacula-fd: Makefile
@for I in ${fd_subdirs}; \
do (cd $$I; echo "==>Entering directory `pwd`"; \
- $(MAKE) all || (echo ""; echo ""; echo " ====== Error in `pwd` ======; \
- echo ""; echo "";)); \
+ $(MAKE) DESTDIR=$(DESTDIR) all || \
+ (echo ""; echo ""; echo " ====== Error in `pwd` ======"; \
+ echo ""; echo ""; false ) || false) || exit 1; \
done
#-------------------------------------------------------------------------
-autoconf/aclocal.m4: autoconf/configure.in autoconf/bacula-macros/* autoconf/gettext-macros/*
- cd autoconf && aclocal -I bacula-macros -I gettext-macros
+
+autoconf/aclocal.m4: autoconf/configure.in autoconf/bacula-macros/* autoconf/gettext-macros/* autoconf/libtool/*
+
+# Note, the following is needed in the above if ever any new macro is added.
+# However, at the current time, the -I libtool causes the autoconf/aclocal.m4
+# get messed up, so this is commented out
+# cd autoconf && aclocal -I bacula-macros -I gettext-macros -I libtool
configure: autoconf/configure.in autoconf/aclocal.m4 autoconf/acconfig.h autoconf/config.h.in
cd $(srcdir);
- ${RMF} -f config.cache config.log config.out config.status src/config.h
- ${RMF} -rf autoconf/autom4te.cache autom4te.cache
+ ${RMF} config.cache config.log config.out config.status src/config.h
+ ${RMF} -r autoconf/autom4te.cache autom4te.cache
autoconf --prepend-include=$(srcdir)/autoconf \
autoconf/configure.in > configure
chmod 755 configure
+ ${RMF} -r autoconf/autom4te.cache autom4te.cache
config.status:
if test -x config.status; then config.status --recheck; \
autoconf/config.h.in: autoconf/configure.in autoconf/acconfig.h
cd $(srcdir);
- ${RMF} -f config.cache config.log config.out config.status src/config.h
+ ${RMF} config.cache config.log config.out config.status src/config.h
autoheader --prepend-include=$(srcdir)/autoconf \
autoconf/configure.in > autoconf/config.h.in
chmod 644 autoconf/config.h.in
+libtool: Makefile $(LIBTOOL_DEPS)
+ $(SHELL) ./config.status --recheck
+
installdirs:
$(MKDIR) $(DESTDIR)$(sbindir)
$(MKDIR) $(DESTDIR)$(sysconfdir)
+ chmod 770 $(DESTDIR)$(sysconfdir)
+ -if test "x$(dir_user)" != "x" ; then \
+ chown $(dir_user) $(DESTDIR)$(sysconfdir); \
+ fi
+ -if test "x$(dir_group)" != "x" ; then \
+ chgrp $(dir_group) $(DESTDIR)$(sysconfdir); \
+ fi
$(MKDIR) $(DESTDIR)$(scriptdir)
+ $(MKDIR) $(DESTDIR)$(docdir)
+ $(MKDIR) $(DESTDIR)$(archivedir)
+ $(MKDIR) $(DESTDIR)$(bsrdir)
+ $(MKDIR) $(DESTDIR)${logdir}
-if test ! -d $(DESTDIR)$(working_dir) ; then \
$(MKDIR) $(DESTDIR)$(working_dir); \
chmod 770 $(DESTDIR)$(working_dir); \
fi
-if test "x$(dir_user)" != "x" ; then \
chown $(dir_user) $(DESTDIR)$(working_dir); \
+ chown $(dir_user) $(DESTDIR)$(logdir); \
fi
-if test "x$(dir_group)" != "x" ; then \
chgrp $(dir_group) $(DESTDIR)$(working_dir); \
+ chgrp $(dir_group) $(DESTDIR)$(logdir); \
fi
-gnomedirs:
- $(MKDIR) $(DESTDIR)/usr/share/pixmaps
- $(MKDIR) $(DESTDIR)/usr/share/gnome/apps/System
- $(MKDIR) $(DESTDIR)/usr/share/applications
- $(MKDIR) $(DESTDIR)/etc/security/console.apps
- $(MKDIR) $(DESTDIR)/etc/pam.d
-
-install-menu: gnomedirs
- ${INSTALL_DATA} scripts/bacula.png $(DESTDIR)/usr/share/pixmaps/bacula.png
- ${INSTALL_DATA} scripts/bacula.desktop.gnome1 $(DESTDIR)/usr/share/gnome/apps/System/bacula.desktop
- ${INSTALL_DATA} scripts/bacula.desktop.gnome2 $(DESTDIR)/usr/share/applications/bacula.desktop
-
-install-menu-xsu: gnomedirs
- ${INSTALL_DATA} scripts/bacula.png $(DESTDIR)/usr/share/pixmaps/bacula.png
- ${INSTALL_DATA} scripts/bacula.desktop.gnome1.xsu $(DESTDIR)/usr/share/gnome/apps/System/bacula.desktop
- ${INSTALL_DATA} scripts/bacula.desktop.gnome2.xsu $(DESTDIR)/usr/share/applications/bacula.desktop
-
-install-menu-consolehelper: gnomedirs
- ${INSTALL_DATA} scripts/bacula.png $(DESTDIR)/usr/share/pixmaps/bacula.png
- ${INSTALL_DATA} scripts/bacula.desktop.gnome1.consolehelper $(DESTDIR)/usr/share/gnome/apps/System/bacula.desktop
- ${INSTALL_DATA} scripts/bacula.desktop.gnome2.consolehelper $(DESTDIR)/usr/share/applications/bacula.desktop
- ${INSTALL_DATA} scripts/gnome-console.console_apps $(DESTDIR)/etc/security/console.apps/gnome-console
- ${INSTALL_DATA} scripts/gnome-console.pamd $(DESTDIR)/etc/pam.d/gnome-console
- ln -s $(DESTDIR)/usr/bin/consolehelper $(DESTDIR)/usr/bin/gnome-console
-
install: installdirs
+ @for I in $(doc_files) ; do $(INSTALL_DATA) $$I $(DESTDIR)${docdir}; done
@for I in $(all_subdirs); do (cd $$I && $(MAKE) DESTDIR=$(DESTDIR) $@ || exit 1); done
uninstall:
@for I in $(all_subdirs); do (cd $$I && $(MAKE) DESTDIR=$(DESTDIR) $@ || exit 1); done
install-autostart:
- (cd platforms && $(MAKE) DESTDIR=$(DESTDIR) $@ || exit 1)
+ (cd platforms && $(MAKE) DESTDIR=$(DESTDIR) $@ || exit 1)
install-autostart-dir:
- (cd platforms && $(MAKE) DESTDIR=$(DESTDIR) $@ || exit 1)
+ (cd platforms && $(MAKE) DESTDIR=$(DESTDIR) $@ || exit 1)
install-autostart-fd:
- (cd platforms && $(MAKE) DESTDIR=$(DESTDIR) $@ || exit 1)
+ (cd platforms && $(MAKE) DESTDIR=$(DESTDIR) $@ || exit 1)
install-autostart-sd:
- (cd platforms && $(MAKE) DESTDIR=$(DESTDIR) $@ || exit 1)
+ (cd platforms && $(MAKE) DESTDIR=$(DESTDIR) $@ || exit 1)
uninstall-autostart:
(cd platforms && $(MAKE) DESTDIR=$(DESTDIR) $@ || exit 1)
uninstall-autostart-sd:
(cd platforms && $(MAKE) DESTDIR=$(DESTDIR) $@ || exit 1)
-uninstall-menu:
- rm -f $(DESTDIR)/usr/share/pixmaps/bacula.png
- rm -f $(DESTDIR)/usr/share/gnome/apps/System/bacula.desktop
- rm -f $(DESTDIR)/usr/share/applications/bacula.desktop
-
-uninstall-menu-consolehelper:
- rm -f $(DESTDIR)/usr/share/pixmaps/bacula.png
- rm -f $(DESTDIR)/usr/share/gnome/apps/System/bacula.desktop
- rm -f $(DESTDIR)/usr/share/applications/bacula.desktop
- rm -f $(DESTDIR)/etc/security/console.apps/gnome-console
- rm -f $(DESTDIR)/etc/pam.d/gnome-console
- rm -f $(DESTDIR)/usr/bin/gnome-console
-
-
Makefile: Makefile.in
cd $(topdir) \
&& CONFIG_FILES=$(thisdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
Makefiles:
$(SHELL) config.status
(cd scripts; \
- chmod 755 startmysql stopmysql bacula startit stopit btraceback; \
- chmod 755 mtx-changer bconsole gconsole devel_bacula; \
- chmod 755 dvd-handler)
-
+ chmod 755 startmysql stopmysql bacula startit stopit btraceback \
+ mtx-changer bconsole gconsole devel_bacula dvd-handler)
(cd src/cats; \
- chmod 755 create_bacula_database update_bacula_tables make_bacula_tables; \
- chmod 755 grant_bacula_privileges drop_bacula_tables drop_bacula_database; \
- chmod 755 create_@DB_TYPE@_database update_@DB_TYPE@_tables make_@DB_TYPE@_tables; \
- chmod 755 grant_@DB_TYPE@_privileges drop_@DB_TYPE@_tables drop_@DB_TYPE@_database; \
- chmod 755 make_catalog_backup delete_catalog_backup)
+ chmod 755 create_bacula_database update_bacula_tables \
+ make_bacula_tables grant_bacula_privileges drop_bacula_tables \
+ drop_bacula_database make_catalog_backup delete_catalog_backup)
+ @for I in @DB_BACKENDS@ ; do \
+ (cd src/cats; \
+ chmod 755 create_$${I}_database update_$${I}_tables \
+ make_$${I}_tables grant_$${I}_privileges drop_$${I}_tables \
+ drop_$${I}_database); \
+ done
+ (cd src/qt-console; \
+ chmod 755 install_conf_file build-depkgs-qt-console)
clean:
- @for I in ${all_subdirs} src/win32; \
+ @for I in ${all_subdirs} ; \
do (cd $$I; echo "==>Entering directory `pwd`"; ${MAKE} $@ || exit 1); done
@(cd platforms; echo "==>Entering directory `pwd`"; ${MAKE} $@ || exit 1)
@$(RMF) *~ 1 2 3 core core.* config.guess console.log console.sum
@$(RMF) bacula fd Makefile startmysql stopmysql startit stopit btraceback
@$(RMF) bconsole gconsole
@$(RMF) *~ 1 2 3 core core.* config.guess console.log console.sum
- @$(RMF) working/* kerns-*
+ @$(RMF) working/* kerns-*
@$(RMF) -rf txt diff src/python src/testprogs
+ @$(RMF) libtool
devclean:
@for I in $(all_subdirs); do (cd $$I && $(MAKE) $@ || exit 1); done
distrib: configure autoconf/config.h.in distdirs distcopy
-test:
-
-
-tar.gz: ../$(VERNAME).tar.gz
-../$(VERNAME).tar.gz:
- (cd ..; tar cvf - $(VERNAME) | gzip -f9 > $(VERNAME).tar.gz)
-
-tar.Z: ../$(VERNAME).tar.Z
-../$(VERNAME).tar.Z:
- (cd ..; tar cvf - $(VERNAME) | compress > $(VERNAME).tar.Z)
-
-tar.bz2: ../$(VERNAME).tar.bz2
-../$(VERNAME).tar.bz2:
- (cd ..; tar cvf - $(VERNAME) | bzip2 -f9 > $(VERNAME).tar.bz2)
-
-uuencode: tar.gz
- uuencode ../$(VERNAME).tar.gz $(VERNAME).tar.gz > ../$(VERNAME).tgz.uu
-
# ------------------------------------------------------------------------