]> git.sur5r.net Git - bacula/bacula/blob - bacula/src/win32/Makefile.full
Make out of freespace non-fatal for removable devices -- i.e. behaves like tape
[bacula/bacula] / bacula / src / win32 / Makefile.full
1 ECHO_CMD=@
2
3 WIN32_DIRS=lib cats filed filed/plugins dird stored \
4          console wx-console tools scripts
5
6 WIN64_DIRS=lib filed filed/plugins console scripts
7
8 ifeq ($(WIN64),yes)
9          DIRS=$(WIN64_DIRS)
10          INSTALLER=win64_installer
11          SPECIAL=bat64 bsmtp
12 else
13          DIRS=$(WIN32_DIRS)
14          INSTALLER=win32_installer
15          SPECIAL=bat32
16 endif
17
18 .PHONY: $(DIRS) clean all Makefile.inc win32_installer full_win32_installer \
19          win64_installer bsmtp
20
21 all: Makefile.inc $(DIRS) $(SPECIAL) $(INSTALLER)
22
23 clean: $(DIRS) win32_installer win64_installer
24         $(ECHO_CMD)-rm -rf release32 release64
25
26 bat32:
27     ( cd ../qt-console; ./make-win32 "32" )
28
29 bat64:
30     ( cd ../qt-console; ./make-win32 "64" )
31
32
33 full_win32_installer:
34         @if test -f Makefile.inc; then \
35            if $(MAKE) -C $@ $(MAKECMDGOALS); then \
36                 echo "\n===== Make of $@ succeeded =====\n\n" ; \
37            else  \
38                 echo "\n!!!!! Make of $@ failed !!!!!\n\n" ; exit 1; \
39            fi ; \
40         fi
41
42 win32_installer:
43         @if test -f Makefile.inc; then \
44            if $(MAKE) -C $@ $(MAKECMDGOALS); then \
45                 echo "\n===== Make of $@ succeeded =====\n\n" ; \
46            else  \
47                 echo "\n!!!!! Make of $@ failed !!!!!\n\n" ; exit 1; \
48            fi ; \
49         fi
50
51 win64_installer:
52         @if test -f Makefile.inc; then \
53            if $(MAKE) -C $@ $(MAKECMDGOALS); then \
54                 echo "\n===== Make of $@ succeeded =====\n\n" ; \
55            else  \
56                 echo "\n!!!!! Make of $@ failed !!!!!\n\n" ; exit 1; \
57            fi ; \
58         fi
59
60
61 $(DIRS):
62         @if test -f Makefile.inc; then \
63            if $(MAKE) -C $@ $(MAKECMDGOALS); then \
64                 echo "\n===== Make of $@ succeeded =====\n\n" ; \
65            else  \
66                 echo "\n!!!!! Make of $@ failed !!!!!\n\n" ; exit 1; \
67            fi ; \
68         fi
69
70 bsmtp:
71         @if test -f Makefile.inc; then \
72            if $(MAKE) -C tools bsmtp $(MAKECMDGOALS); then \
73                 echo "\n===== Make of tools/bsmtp succeeded =====\n\n" ; \
74            else  \
75                 echo "\n!!!!! Make of tools/bsmtp failed !!!!!\n\n" ; exit 1; \
76            fi ; \
77         fi
78
79
80
81 Makefile.inc:
82         @echo Creating $@
83         $(ECHO_CMD)TOPDIR=`(cd ../../..;pwd)`; \
84         TOPDIR=$${DEPKGS:-$${TOPDIR}}; \
85         if test "$(WIN64)" = yes -a -e $${TOPDIR}/cross-tools/mingw-w64/bin/x86_64-pc-mingw32-gcc; then \
86                 BINDIR=$${TOPDIR}/cross-tools/mingw-w64/bin; \
87                 INCDIR=$${TOPDIR}/cross-tools/mingw-w64/x86_64-pc-mingw32/include; \
88                 DLLDIR=$${TOPDIR}/cross-tools/mingw-w64/x86_64-pc-mingw32/bin; \
89                 DEPKGSDIR=depkgs-mingw-w64; \
90                 DEPKGSDIR32=depkgs-mingw32; \
91         elif test -e $${TOPDIR}/cross-tools/mingw32/bin/mingw32-gcc; then \
92                 BINDIR=$${TOPDIR}/cross-tools/mingw32/bin; \
93                 INCDIR=$${TOPDIR}/cross-tools/mingw32/mingw32/include; \
94                 DLLDIR=$${TOPDIR}/cross-tools/mingw32/mingw32/bin; \
95                 DEPKGSDIR=depkgs-mingw32; \
96                 DEPKGSDIR32=depkgs-mingw32; \
97         else \
98                 echo "\nThe GCC cross compiler isn't installed."; \
99                 echo "You must run build-win32-cross-tools and build-dependencies first.\n"; \
100                 exit 1; \
101         fi ; \
102         BUILDDIR=`(pwd)`; \
103         MAINDIR=`(cd ../..;pwd)`; \
104         sed \
105                 -e "s^@WIN64@^$${WIN64}^" \
106                 -e "s^@WIN32DEPKGS@^$${DEPKGSDIR}^" \
107                 -e "s^@WIN32DEPKGS32@^$${DEPKGSDIR32}^" \
108                 -e "s^@WIN32BUILDDIR@^$${BUILDDIR}^" \
109                 -e "s^@WIN32MAINDIR@^$${MAINDIR}^" \
110                 -e "s^@WIN32TOPDIR@^$${TOPDIR}^" \
111                 -e "s^@WIN32BINDIR@^$${BINDIR}^" \
112                 -e "s^@WIN32INCDIR@^$${INCDIR}^" \
113                 -e "s^@WIN32DLLDIR@^$${DLLDIR}^" < Makefile.inc.in > $@