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