#
SVRSRCS = filed.c authenticate.c backup.c crypto.c \
- estimate.c \
+ win_efs.c estimate.c \
fd_plugins.c accurate.c \
filed_conf.c heartbeat.c hello.c job.c fd_snapshot.c \
restore.c status.c verify.c verify_vol.c \
LZO_LIBS = @LZO_LIBS@
LZO_INC= @LZO_INC@
+# extra items for linking on Win32
+WIN32OBJS = win32/winmain.o win32/winlib.a win32/winres.res
+win32 = $(WIN32OBJS) -luser32 -lgdi32
+
+WIN32LIBS = $(@WIN32@)
+
.SUFFIXES: .c .o
.PHONY:
.DONTCARE:
@echo "Compiling $<"
$(NO_ECHO)$(CXX) $(DEFS) $(DEBUG) -c $(WCFLAGS) $(CPPFLAGS) $(LZO_INC) -I$(srcdir) -I$(basedir) $(DINCLUDE) $(CFLAGS) $<
#-------------------------------------------------------------------------
-all: Makefile bacula-fd @STATIC_FD@ bfdjson
+all: Makefile @WIN32@ bacula-fd @STATIC_FD@ bfdjson
@echo "==== Make of filed is good ===="
@echo " "
@echo "Compiling $<"
$(NO_ECHO)$(CXX) $(DEFS) $(DEBUG) -c $(WCFLAGS) $(CPPFLAGS) $(LZO_INC) -I$(srcdir) -I$(basedir) $(DINCLUDE) $(CFLAGS) $(AFS_CFLAGS) $<
-bacula-fd: Makefile $(SVROBJS) ../findlib/libbacfind$(DEFAULT_ARCHIVE_TYPE) ../lib/libbaccfg$(DEFAULT_ARCHIVE_TYPE) ../lib/libbac$(DEFAULT_ARCHIVE_TYPE)
+win32/winlib.a:
+ @if test -f win32/Makefile -a "${GMAKE}" != "none"; then \
+ (cd win32; $(GMAKE) DESTDIR=$(DESTDIR)); \
+ fi
+ @rm -f bacula-fd.exe
+
+win32/winmain.o:
+ @if test -f win32/Makefile -a "${GMAKE}" != "none"; then \
+ (cd win32; $(GMAKE) DESTDIR=$(DESTDIR)); \
+ fi
+ @rm -f bacula-fd.exe
+
+win32/winres.res:
+ @if test -f win32/Makefile -a "${GMAKE}" != "none"; then \
+ (cd win32; $(GMAKE) DESTDIR=$(DESTDIR)); \
+ fi
+ @rm -f bacula-fd.exe
+
+# win32 libraries if needed
+win32: $(WIN32OBJS)
+ @if test -f win32/Makefile -a "${GMAKE}" != "none"; then \
+ (cd win32; $(GMAKE) DESTDIR=$(DESTDIR)); \
+ fi
+ @rm -f bacula-fd.exe
+
+bacula-fd: Makefile $(SVROBJS) ../findlib/libbacfind$(DEFAULT_ARCHIVE_TYPE) ../lib/libbaccfg$(DEFAULT_ARCHIVE_TYPE) ../lib/libbac$(DEFAULT_ARCHIVE_TYPE) @WIN32@
@echo "Linking $@ ..."
$(LIBTOOL_LINK) $(CXX) $(WLDFLAGS) $(LDFLAGS) -L../lib -L../findlib -o $@ $(SVROBJS) \
- $(FDLIBS) $(ZLIBS) -lbacfind -lbaccfg -lbac -lm $(LIBS) \
+ $(WIN32LIBS) $(FDLIBS) $(ZLIBS) -lbacfind -lbaccfg -lbac -lm $(LIBS) \
$(DLIB) $(WRAPLIBS) $(GETTEXT_LIBS) $(OPENSSL_LIBS) $(CAP_LIBS) $(AFS_LIBS) $(LZO_LIBS)
bfdjson: Makefile $(JSONOBJS) ../findlib/libbacfind$(DEFAULT_ARCHIVE_TYPE) ../lib/libbaccfg$(DEFAULT_ARCHIVE_TYPE) ../lib/libbac$(DEFAULT_ARCHIVE_TYPE) @WIN32@
$(WIN32LIBS) $(FDLIBS) $(ZLIBS) -lbacfind -lbaccfg -lbac -lm $(LIBS) \
$(DLIB) $(WRAPLIBS) $(GETTEXT_LIBS) $(OPENSSL_LIBS) $(CAP_LIBS) $(AFS_LIBS) $(LZO_LIBS)
-static-bacula-fd: Makefile $(SVROBJS) ../findlib/libbacfind.a ../lib/libbaccfg$(DEFAULT_ARCHIVE_TYPE) ../lib/libbac$(DEFAULT_ARCHIVE_TYPE)
+static-bacula-fd: Makefile $(SVROBJS) ../findlib/libbacfind.a ../lib/libbaccfg$(DEFAULT_ARCHIVE_TYPE) ../lib/libbac$(DEFAULT_ARCHIVE_TYPE) @WIN32@
$(LIBTOOL_LINK) $(CXX) $(WLDFLAGS) $(LDFLAGS) -static -L../lib -L../findlib -o $@ $(SVROBJS) \
- $(FDLIBS) $(ZLIBS) -lbacfind -lbaccfg -lbac -lm $(LIBS) \
+ $(WIN32LIBS) $(FDLIBS) $(ZLIBS) -lbacfind -lbaccfg -lbac -lm $(LIBS) \
$(DLIB) $(WRAPLIBS) $(GETTEXT_LIBS) $(OPENSSL_LIBS) $(CAP_LIBS) $(AFS_LIBS) $(LZO_LIBS)
strip $@
clean: libtool-clean
@$(RMF) bacula-fd filed core core.* a.out *.o *.bak *~ *.intpro *.extpro 1 2 3
@$(RMF) static-bacula-fd
+ @if test -f win32/Makefile -a "${GMAKE}" != "none"; then \
+ (cd win32; $(GMAKE) clean); \
+ fi
realclean: clean
@$(RMF) tags bacula-fd.conf
distclean: realclean
if test $(srcdir) = .; then $(MAKE) realclean; fi
(cd $(srcdir); $(RMF) Makefile)
+ @if test -f win32/Makefile -a "${GMAKE}" != "none"; then \
+ (cd win32; $(GMAKE) distclean); \
+ fi
devclean: realclean
if test $(srcdir) = .; then $(MAKE) realclean; fi
(cd $(srcdir); $(RMF) Makefile)
+ @if test -f win32/Makefile -a "${GMAKE}" != "none"; then \
+ (cd win32; $(GMAKE) devclean); \
+ fi
install: all
$(LIBTOOL_INSTALL) $(INSTALL_PROGRAM) bacula-fd $(DESTDIR)$(sbindir)/bacula-fd
fi
uninstall:
- (cd $(DESTDIR)$(sysconfdir); $(RMF) bacula-fd.conf bfdjson)
+ (cd $(DESTDIR)$(sbindir); $(RMF) bacula-fd bfdjson)
+ (cd $(DESTDIR)$(sysconfdir); $(RMF) bacula-fd.conf)
(cd $(DESTDIR)$(sysconfdir); $(RMF) bacula-fd.conf.new)
# Semi-automatic generation of dependencies: