2 # makefile to build Windows specific pieces of the Bacula File daemon
13 # Program to install `make'.
14 INSTALL_PROGRAM = @INSTALL_PROGRAM@
15 # Program to install the man page.
16 INSTALL_DATA = @INSTALL_DATA@
17 # Generic install program.
27 # this dir relative to top dir
28 thisdir = src/filed/win32
30 # Common prefix for machine-independent installed files.
32 sysconfdir = @sysconfdir@
40 BACOBJS = winabout.o winevents.o winservice.o winstat.o wintray.o winmain.o
42 all: winlib.a winres.res
46 winlib.a: $(BACOBJS) winres.res
49 winres.res: winres.rc bacula.ico winres.h idle.ico running.ico error.ico
50 windres $< -O coff -o $@
52 winmain.o: winmain.cpp winbacula.h
53 $(CC) -c $(WCFLAGS) $(CFLAGS) $<
55 libmymapi32.a: mymapi32.def
56 dlltool --as=as -k --output-lib $@ --def $<
58 Makefile: $(srcdir)/Makefile.in $(topdir)/config.status
60 && CONFIG_FILES=$(thisdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
63 rm -f *.exe *.o *.res *.a 1 2 3
64 rm -f bin/smtp.exe bin/console.exe
65 rm -f bin/bacula-fd.exe bin/bsmtp.exe bin/testfind.exe
72 @mkdir -p $(DESTDIR)$(sbindir) $(DESTDIR)/tmp $(DESTDIR)$(sbindir)/../working
73 @echo "Installing system binary files ..."
74 @strip ../bacula-fd.exe
75 @strip ../../tools/bsmtp.exe
76 @strip ../../tools/testfind.exe
77 @strip ../../console/bconsole.exe
78 @cp -f ../bacula-fd.exe bin/
79 @cp -f ../../tools/bsmtp.exe bin/
80 @cp -f ../../tools/testfind.exe bin/
81 @cp -f ../../console/bconsole.exe bin/
82 @cp -f bin/* $(DESTDIR)$(sbindir)
83 @cp -f ../bacula-fd.conf $(DESTDIR)$(sysconfdir)/bacula-fd.conf.new
84 @cp -f ../../console/bconsole.conf $(DESTDIR)$(sysconfdir)/bconsole.conf.new
86 # Make a Win32 binary release
90 @mkdir -p wr/$(prefix) wr/$(sbindir) wr/$(sbindir)/../working wr/$(sysconfdir) wr/tmp
91 @echo "Copying system binary files ..."
92 @cp bin/* wr/$(sbindir)
93 @strip ../bacula-fd.exe
94 @strip ../../tools/bsmtp.exe
95 @strip ../../tools/testfind.exe
96 @strip ../../console/bconsole.exe
97 @echo "Copying executables ..."
98 @cp -f ../bacula-fd.exe wr/$(sbindir)/bacula-fd.exe
99 @cp -f ../../tools/bsmtp.exe wr/$(sbindir)/bsmtp.exe
100 @cp -f ../../tools/testfind.exe wr/$(sbindir)/testfind.exe
101 @cp -f ../../console/bconsole.exe wr/$(sbindir)/bconsole.exe
102 @echo "Copying bacula-fd.conf..."
103 @cp -f ../bacula-fd.conf wr/$(sysconfdir)/bacula-fd.conf.new
104 @cp -f ../../console/bconsole.conf wr/$(sysconfdir)/bconsole.conf.new
105 # the two dummy files are necessary to insure that WinZip
106 # actually creates the directories.
107 @echo "dummy" >wr/tmp/dummy.txt
108 @echo "dummy" >wr/$(sbindir)/../working/dummy.txt
109 @echo "Making tar file ..."
110 @tar cfz winbacula-${VERSION}.tar.gz -C wr bacula tmp
111 @mv -f winbacula-${VERSION}.tar.gz $(topdir)/..
114 echo "Tar file in: `pwd`/winbacula-${VERSION}.tar.gz")
119 $(CC) -c $(WCFLAGS) $(CFLAGS) $<
122 $(CXX) -c $(WCFLAGS) $(CFLAGS) $<