2 # Makefile for win32 bacula executables
3 # Using MinGW cross-compiler on GNU/Linux
5 # Written by Robert Nelson, June 2006
8 include ../Makefile.inc
20 VPATH = ../../cats ../compat ../../findlib ../../lib
22 ######################################################################
24 # Files files in src/lib
28 $(OBJDIR)/bdb_create.o \
29 $(OBJDIR)/bdb_delete.o \
30 $(OBJDIR)/bdb_find.o \
32 $(OBJDIR)/bdb_list.o \
33 $(OBJDIR)/bdb_update.o \
35 $(OBJDIR)/postgresql.o \
37 $(OBJDIR)/sql_create.o \
38 $(OBJDIR)/sql_delete.o \
39 $(OBJDIR)/sql_find.o \
41 $(OBJDIR)/sql_list.o \
42 $(OBJDIR)/sql_update.o \
50 # $(OBJDIR)/getopt.o \
55 $(OBJDIR)/create_file.o \
56 $(OBJDIR)/drivetype.o \
57 $(OBJDIR)/enable_priv.o \
59 $(OBJDIR)/find_one.o \
61 $(OBJDIR)/makepath.o \
66 $(OBJDIR)/address_conf.o \
72 $(OBJDIR)/bget_msg.o \
74 $(OBJDIR)/bnet_server.o \
78 $(OBJDIR)/bsnprintf.o \
83 $(OBJDIR)/cram-md5.o \
89 $(OBJDIR)/enh_fnmatch.o \
97 $(OBJDIR)/mem_pool.o \
100 $(OBJDIR)/pythonlib.o \
102 $(OBJDIR)/runscript.o \
105 $(OBJDIR)/semlock.o \
109 $(OBJDIR)/smartall.o \
114 $(OBJDIR)/watchdog.o \
118 $(CATS_OBJS) $(COMPAT_OBJS) $(FIND_OBJS) $(LIB_OBJS)
121 $(OBJDIR)/parse_conf.o \
125 $(DLL_OBJS) $(STATIC_OBJS)
138 ######################################################################
144 all: $(BINDIR)/bacula.dll $(LIBDIR)/libbacula.a
147 @echo "Cleaning `pwd`"
148 $(call clean_obj,$(ALL_OBJS))
149 $(call clean_exe,$(BINDIR)/bacula.dll)
150 $(ECHO_CMD)rm -f $(OBJDIR)/bacula.a $(LIBDIR)/libbacula.a
153 # Rules for generating from ../lib
156 $(LIBDIR)/libbacula.a: DLL_DEFINE=USING_DLL
158 $(LIBDIR)/libbacula.a: $(BINDIR)/bacula.dll $(STATIC_OBJS)
159 @echo "Updating archive $@"
161 $(ECHO_CMD)cp $(OBJDIR)/bacula.a $@
162 $(ECHO_CMD)$(AR) rsv $@ $(filter %.o,$^)
164 $(BINDIR)/bacula.dll: DLL_DEFINE=BUILDING_DLL
166 $(BINDIR)/bacula.dll: $(COMPAT_OBJS) $(DLL_OBJS) bacula.def
169 $(ECHO_CMD)$(CXX) $(LDFLAGS) -mdll -mwindows -Wl,--out-implib,$(OBJDIR)/bacula.a $^ $(LIBS_DLL) -o $@
172 include ../Makefile.rules
177 $(ECHO_CMD)$(CXX) -D$(DLL_DEFINE) $(CFLAGS) -c $< -o $@
182 $(ECHO_CMD)$(CXX) -D$(DLL_DEFINE) $(CFLAGS) -c $< -o $@