]> git.sur5r.net Git - bacula/bacula/blob - bacula/src/win32/stored/Makefile
Restore win32 dir from Branch-5.2 and update it
[bacula/bacula] / bacula / src / win32 / stored / Makefile
1 #
2 # Makefile for win32 bacula executables
3 # Using MinGW cross-compiler on GNU/Linux
4 #
5 #
6 # Author: Robert Nelson
7 # License: BSD 2-Clause; see file LICENSE-FOSS
8 #
9 #  Written by Robert Nelson, June 2006
10 #
11
12 # Configuration
13
14 include ../Makefile.inc
15
16 INCLUDES = \
17         -I. \
18         -I$(MAINDIR)/src/stored \
19         $(INCLUDE_DDK) \
20         $(INCLUDE_PTHREADS) \
21         $(INCLUDE_BACULA) \
22         $(INCLUDE_ZLIB) \
23         $(INCLUDE_OPENSSL) \
24         $(INCLUDE_ICONS)
25
26 DEFINES = \
27         -DUSING_DLL \
28         -DWINVER=0x500 \
29         $(HAVES)
30
31 #       -DHAVE_TRAY_MONITOR \
32
33
34 vpath %.c $(MAINDIR)/src/stored $(BUILDDIR)/libwin32
35 vpath %.cpp $(MAINDIR)/src/stored $(BUILDDIR)/libwin32
36
37 ##########################################################################
38
39 COMMON_OBJS = \
40         $(OBJDIR)/askdir.o \
41         $(OBJDIR)/tape_alert.o \
42         $(OBJDIR)/vtape_dev.o \
43         $(OBJDIR)/tape_dev.o \
44         $(OBJDIR)/init_dev.o \
45         $(OBJDIR)/global.o \
46         $(OBJDIR)/acquire.o \
47         $(OBJDIR)/aligned_dev.o \
48         $(OBJDIR)/aligned_read.o \
49         $(OBJDIR)/aligned_write.o \
50         $(OBJDIR)/ansi_label.o \
51         $(OBJDIR)/authenticate.o \
52         $(OBJDIR)/autochanger.o \
53         $(OBJDIR)/block.o \
54         $(OBJDIR)/block_util.o \
55         $(OBJDIR)/butil.o \
56         $(OBJDIR)/dev.o \
57         $(OBJDIR)/device.o \
58         $(OBJDIR)/ebcdic.o \
59         $(OBJDIR)/hello.o \
60         $(OBJDIR)/label.o \
61         $(OBJDIR)/lock.o \
62         $(OBJDIR)/match_bsr.o \
63         $(OBJDIR)/mount.o \
64         $(OBJDIR)/parse_bsr.o \
65         $(OBJDIR)/read_records.o \
66         $(OBJDIR)/record_read.o \
67         $(OBJDIR)/record_util.o \
68         $(OBJDIR)/record_write.o \
69         $(OBJDIR)/reserve.o \
70         $(OBJDIR)/scan.o \
71         $(OBJDIR)/spool.o \
72         $(OBJDIR)/stored_conf.o \
73         $(OBJDIR)/vol_mgr.o \
74         $(OBJDIR)/wait.o \
75         $(OBJDIR)/file_dev.o \
76         $(OBJDIR)/sd_plugins.o \
77         $(OBJDIR)/os.o
78
79
80
81 #        $(OBJDIR)/mtops.o
82
83 # bacula-sd
84 SD_OBJS = \
85         $(OBJDIR)/stored.o \
86         $(OBJDIR)/append.o \
87         $(OBJDIR)/dircmd.o \
88         $(OBJDIR)/fd_cmds.o \
89         $(OBJDIR)/job.o \
90         $(OBJDIR)/read.o \
91         $(OBJDIR)/vbackup.o \
92         $(OBJDIR)/dde_cmd.o \
93         $(OBJDIR)/status.o
94
95 # bextract
96 BEXTRACT_OBJS = \
97         $(OBJDIR)/bextract.o 
98
99 OBJS_WIN = \
100         $(OBJDIR)/service.o \
101         $(OBJDIR)/main.o \
102         $(OBJDIR)/bacula.res
103
104 #       $(OBJDIR)/trayMonitor.o \
105 #       $(OBJDIR)/aboutDialog.o \
106 #       $(OBJDIR)/statusDialog.o \
107
108
109 ALL_OBJS = \
110         $(COMMON_OBJS) \
111         $(SD_OBJS) \
112         $(BEXTRACT_OBJS) \
113         $(OBJS_WIN) \
114         $(OBJDIR)/bcopy.o \
115         $(OBJDIR)/bls.o \
116         $(OBJDIR)/btape.o \
117         $(OBJDIR)/bscan.o
118
119 LIBS_STORED = \
120         $(LIBS_PTHREADS) \
121         $(LIBS_NETWORK) \
122         -lole32 \
123         -loleaut32 \
124         -luuid \
125         -lcomctl32
126
127 ######################################################################
128
129 # Targets
130
131 .PHONY: all clean
132
133 all:    $(BINDIR)/bacula-sd.exe  $(BINDIR)/bcopy.exe $(BINDIR)/bextract.exe  $(BINDIR)/bls.exe 
134 # $(BINDIR)/bscan.exe $(BINDIR)/btape.exe
135
136 clean:
137         @echo "Cleaning `pwd`"
138         $(call clean_obj,$(ALL_OBJS))
139         $(call clean_exe,$(BINDIR)/bacula-sd.exe)
140         $(call clean_exe,$(BINDIR)/bcopy.exe)
141         $(call clean_exe,$(BINDIR)/bextract.exe)
142         $(call clean_exe,$(BINDIR)/bls.exe)
143         $(call clean_exe,$(BINDIR)/bscan.exe)
144         $(call clean_exe,$(BINDIR)/btape.exe)
145         $(ECHO_CMD)rm -rf $(OBJDIRS)
146
147 realclean: clean
148         rm -f tags bacula-sd.conf
149
150 #
151 # Rules
152 #
153
154 $(BINDIR)/bacula-sd.exe: $(SD_OBJS) $(COMMON_OBJS) $(OBJS_WIN) $(LIBS_BACULA)
155         $(call link_winapp,$(LIBS_STORED))
156
157 $(BINDIR)/btape.exe: $(OBJDIR)/btape.o $(COMMON_OBJS) $(LIBS_BACULA)
158         $(call link_conapp,$(LIBS_STORED))
159
160 $(BINDIR)/bls.exe: $(OBJDIR)/bls.o $(COMMON_OBJS) $(LIBS_BACULA)
161         $(call link_conapp,$(LIBS_STORED))
162
163 $(BINDIR)/bextract.exe: $(BEXTRACT_OBJS) $(COMMON_OBJS) $(LIBS_BACULA) $(LIBS_LZO)
164         $(call link_conapp,$(LIBS_STORED) $(LIBS_ZLIB))
165
166 $(BINDIR)/bscan.exe: $(OBJDIR)/bscan.o $(COMMON_OBJS) $(LIBS_CATS) $(LIBS_BACULA)
167         $(call link_conapp,$(LIBS_STORED))
168
169 $(BINDIR)/bcopy.exe: $(OBJDIR)/bcopy.o $(COMMON_OBJS) $(LIBS_BACULA)
170         $(call link_conapp,$(LIBS_STORED))
171
172 $(OBJDIR)/mtops.o: mtops.cpp
173         @echo "Compiling $@"
174         $(call checkdir,$@)
175         $(ECHO_CMD)$(CXX) $(CFLAGS) $(INCLUDE_DDK) -I../../stored -c $< -o $@
176
177 $(OBJDIR)/winres.res:     baculasd/winres.rc
178         @echo "Compiling $@"
179         $(call checkdir,$@)
180         $(ECHO_CMD)$(WINDRES) $(INCLUDE_ICONS) -I baculasd -O coff $< -o $@
181
182 include ../Makefile.rules