first_rule: all
dummy:
-LIBSRCS = attr.c base64.c berrno.c bsys.c bget_msg.c \
- bnet.c bnet_server.c runscript.c \
- bsock.c bpipe.c bsnprintf.c btime.c \
- cram-md5.c crc32.c crypto.c daemon.c edit.c fnmatch.c \
- guid_to_name.c hmac.c jcr.c lex.c alist.c dlist.c \
- md5.c message.c mem_pool.c openssl.c parse_conf.c \
- plugin.c queue.c bregex.c \
- res.c rwlock.c scan.c serial.c sha1.c \
- signal.c smartall.c rblist.c tls.c tree.c \
- util.c var.c watchdog.c workq.c btimers.c \
- address_conf.c pythonlib.c breg.c
-
-
-LIBOBJS = attr.o base64.o berrno.o bsys.o bget_msg.o \
- bnet.o bnet_server.o runscript.o \
- bsock.o bpipe.o bsnprintf.o btime.o \
- cram-md5.o crc32.o crypto.o daemon.o edit.o fnmatch.o \
- guid_to_name.o hmac.o jcr.o lex.o alist.o dlist.o \
- md5.o message.o mem_pool.o openssl.o parse_conf.o \
- plugin.o queue.o bregex.o \
- res.o rwlock.o scan.o serial.o sha1.o \
- signal.o smartall.o rblist.o tls.o tree.o \
- util.o var.o watchdog.o workq.o btimers.o \
- address_conf.o pythonlib.o breg.o
-
-
-EXTRAOBJS = @OBJLIST@
-
-
-.SUFFIXES: .c .o .ch .dvi .pdf .tex .view .w .1
+#
+# include files installed when using libtool
+#
+INCLUDE_FILES = ../baconfig.h ../bacula.h ../bc_types.h \
+ ../config.h ../jcr.h ../version.h \
+ address_conf.h alist.h attr.h base64.h \
+ berrno.h bits.h bpipe.h breg.h bregex.h \
+ bsock.h btime.h btimers.h crypto.h dlist.h \
+ fnmatch.h guid_to_name.h htable.h lex.h \
+ lib.h md5.h mem_pool.h message.h openssl.h \
+ plugins.h protos.h queue.h rblist.h \
+ runscript.h rwlock.h serial.h sha1.h \
+ smartall.h status.h tls.h tree.h var.h \
+ waitq.h watchdog.h workq.h \
+ parse_conf.h \
+ pythonlib.h
+
+#
+# libbac
+#
+LIBBAC_SRCS = attr.c base64.c berrno.c bsys.c bget_msg.c \
+ bnet.c bnet_server.c runscript.c \
+ bsock.c bpipe.c bsnprintf.c btime.c \
+ cram-md5.c crc32.c crypto.c daemon.c edit.c fnmatch.c \
+ guid_to_name.c hmac.c jcr.c lex.c alist.c dlist.c \
+ md5.c message.c mem_pool.c openssl.c \
+ plugins.c queue.c bregex.c \
+ rwlock.c scan.c serial.c sha1.c \
+ signal.c smartall.c rblist.c tls.c tree.c \
+ util.c var.c watchdog.c workq.c btimers.c \
+ address_conf.c breg.c htable.c
+LIBBAC_OBJS = $(LIBBAC_SRCS:.c=$(DEFAULT_OBJECT_TYPE))
+LIBBAC_LT_CURRENT = 1
+LIBBAC_LT_REVISION = 0
+LIBBAC_LT_AGE = 0
+
+#
+# libbaccfg (config functions)
+#
+LIBBACCFG_SRCS = parse_conf.c res.c
+LIBBACCFG_OBJS = $(LIBBACCFG_SRCS:.c=$(DEFAULT_OBJECT_TYPE))
+LIBBACCFG_LT_CURRENT = 1
+LIBBACCFG_LT_REVISION = 0
+LIBBACCFG_LT_AGE = 0
+
+#
+# libbacpy (python functions)
+#
+LIBBACPY_SRCS = pythonlib.c
+LIBBACPY_OBJS = $(LIBBACPY_SRCS:.c=$(DEFAULT_OBJECT_TYPE))
+LIBBACPY_LT_CURRENT = 1
+LIBBACPY_LT_REVISION = 0
+LIBBACPY_LT_AGE = 0
+
+.SUFFIXES: .c .cc .o .lo .ch .dvi .pdf .tex .view .w .1
.PHONY:
.DONTCARE:
@echo "Compiling $<"
$(NO_ECHO)$(CXX) $(DEFS) $(DEBUG) -c $(WCFLAGS) $(CPPFLAGS) $(PYTHON_INC) -I$(srcdir) -I$(basedir) $(DINCLUDE) $(CFLAGS) $<
+.c.lo:
+ @echo "Compiling $<"
+ $(NO_ECHO)$(LIBTOOL_COMPILE) $(CXX) $(DEFS) $(DEBUG) -c $(WCFLAGS) $(CPPFLAGS) $(PYTHON_INC) -I$(srcdir) -I$(basedir) $(DINCLUDE) $(CFLAGS) $<
+
.cc.o:
@echo "Compiling $<"
$(NO_ECHO)$(CXX) $(DEFS) $(DEBUG) -c $(WCFLAGS) $(CPPFLAGS) $(PYTHON_INC) -I$(srcdir) -I$(basedir) $(DINCLUDE) $(CFLAGS) $<
+.cc.lo:
+ @echo "Compiling $<"
+ $(NO_ECHO)$(LIBTOOL_COMPILE) $(CXX) $(DEFS) $(DEBUG) -c $(WCFLAGS) $(CPPFLAGS) $(PYTHON_INC) -I$(srcdir) -I$(basedir) $(DINCLUDE) $(CFLAGS) $<
+
+# specific build rules
+
+pythonlib.o: pythonlib.c
+ @echo "Compiling $<"
+ $(NO_ECHO)$(CXX) $(DEFS) $(DEBUG) -c $(WCFLAGS) $(CPPFLAGS) $(python) -I$(srcdir) -I$(basedir) $(DINCLUDE) $(CFLAGS) $<
+
+pythonlib.lo: pythonlib.c
+ @echo "Compiling $<"
+ $(NO_ECHO)$(LIBTOOL_COMPILE) $(CXX) $(DEFS) $(DEBUG) -c $(WCFLAGS) $(CPPFLAGS) $(python) -I../configlib -I$(srcdir) -I$(basedir) $(DINCLUDE) $(CFLAGS) $<
+
#-------------------------------------------------------------------------
-all: Makefile libbac.a
+all: Makefile libbac$(DEFAULT_ARCHIVE_TYPE) libbaccfg$(DEFAULT_ARCHIVE_TYPE) libbacpy$(DEFAULT_ARCHIVE_TYPE)
@echo "==== Make of lib is good ===="
@echo " "
-libbac.a: $(LIBOBJS)
+libbac.a: $(LIBBAC_OBJS)
+ @echo "Making $@ ..."
+ $(AR) rc $@ $(LIBBAC_OBJS)
+ $(RANLIB) $@
+
+libbac.la: $(LIBBAC_OBJS)
+ @echo "Making $@ ..."
+ $(LIBTOOL_LINK) $(CXX) $(DEFS) $(DEBUG) $(LDFLAGS) -o $@ $(LIBBAC_OBJS) -export-dynamic -rpath $(libdir) -version-info $(LIBBAC_LT_CURRENT):$(LIBBAC_LT_REVISION):$(LIBBAC_LT_AGE) $(WRAPLIBS)
+
+libbaccfg.a: $(LIBBACCFG_OBJS)
@echo "Making $@ ..."
- $(AR) rc $@ $(LIBOBJS)
+ $(AR) rc $@ $(LIBBACCFG_OBJS)
$(RANLIB) $@
+libbaccfg.la: $(LIBBACCFG_OBJS)
+ @echo "Making $@ ..."
+ $(LIBTOOL_LINK) $(CXX) $(DEFS) $(DEBUG) $(LDFLAGS) -o $@ $(LIBBACCFG_OBJS) -export-dynamic -rpath $(libdir) -version-info $(LIBBACCFG_LT_CURRENT):$(LIBBACCFG_LT_REVISION):$(LIBBACCFG_LT_AGE)
+
+libbacpy.a: $(LIBBACPY_OBJS)
+ @echo "Making $@ ..."
+ $(AR) rc $@ $(LIBBACPY_OBJS)
+ $(RANLIB) $@
+
+libbacpy.la: $(LIBBACPY_OBJS)
+ @echo "Making $@ ..."
+ $(LIBTOOL_LINK) $(CXX) $(DEFS) $(DEBUG) $(LDFLAGS) -o $@ $(LIBBACPY_OBJS) -export-dynamic -rpath $(libdir) -version-info $(LIBBACPY_LT_CURRENT):$(LIBBACPY_LT_REVISION):$(LIBBACPY_LT_AGE) $(PYTHON_LIBS)
Makefile: $(srcdir)/Makefile.in $(topdir)/config.status
cd $(topdir) \
&& CONFIG_FILES=$(thisdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
-pythonlib.o: pythonlib.c
- @echo "Compiling $<"
- $(NO_ECHO)$(CXX) $(DEFS) $(DEBUG) -c $(WCFLAGS) $(CPPFLAGS) $(python) -I$(srcdir) -I$(basedir) $(DINCLUDE) $(CFLAGS) $<
-
rwlock_test:
rm -f rwlock.o
$(CXX) -DTEST_RWLOCK $(DEFS) $(DEBUG) -c $(CPPFLAGS) -I$(srcdir) -I$(basedir) $(DINCLUDE) $(CFLAGS) rwlock.c
- $(CXX) $(LDFLAGS) -L. -o $@ rwlock.o $(LIBS) $(DLIB) -lbac -lm
+ $(LIBTOOL_LINK) $(CXX) $(LDFLAGS) -L. -o $@ rwlock.o $(LIBS) $(DLIB) -lbac -lm
rm -f rwlock.o
$(CXX) $(DEFS) $(DEBUG) -c $(CPPFLAGS) -I$(srcdir) -I$(basedir) $(DINCLUDE) $(CFLAGS) rwlock.c
md5sum: md5.o
rm -f md5.o
$(CXX) -DMD5_SUM $(DEFS) $(DEBUG) -c $(CPPFLAGS) -I$(srcdir) -I$(basedir) $(DINCLUDE) $(CFLAGS) md5.c
- $(CXX) $(LDFLAGS) -L. -o $@ md5.o $(LIBS) $(DLIB) -lbac $(OPENSSL_LIBS) -lm
+ $(LIBTOOL_LINK) $(CXX) $(LDFLAGS) -L. -o $@ md5.o $(LIBS) $(DLIB) -lbac $(OPENSSL_LIBS) -lm
rm -f md5.o
$(CXX) $(DEFS) $(DEBUG) -c $(CPPFLAGS) -I$(srcdir) -I$(basedir) $(DINCLUDE) $(CFLAGS) md5.c
-
sha1sum: sha1.o
rm -f sha1.o
$(CXX) -DSHA1_SUM $(DEFS) $(DEBUG) -c $(CPPFLAGS) -I$(srcdir) -I$(basedir) $(DINCLUDE) $(CFLAGS) sha1.c
- $(CXX) $(LDFLAGS) -L. -o $@ sha1.o $(LIBS) $(DLIB) -lbac $(OPENSSL_LIBS) -lm
+ $(LIBTOOL_LINK) $(CXX) $(LDFLAGS) -L. -o $@ sha1.o $(LIBS) $(DLIB) -lbac $(OPENSSL_LIBS) -lm
rm -f sha1.o
$(CXX) $(DEFS) $(DEBUG) -c $(CPPFLAGS) -I$(srcdir) -I$(basedir) $(DINCLUDE) $(CFLAGS) sha1.c
bsnprintf: bsnprintf.o
rm -f bsnprintf.o
$(CXX) -DTEST_PROGRAM $(DEFS) $(DEBUG) -c $(CPPFLAGS) -I$(srcdir) -I$(basedir) $(DINCLUDE) $(CFLAGS) bsnprintf.c
- $(CXX) $(LDFLAGS) -L. -o $@ bsnprintf.o $(LIBS) $(DLIB) -lbac $(OPENSSL_LIBS) -lm
+ $(LIBTOOL_LINK) $(CXX) $(LDFLAGS) -L. -o $@ bsnprintf.o $(LIBS) $(DLIB) -lbac $(OPENSSL_LIBS) -lm
rm -f bsnprintf.o
$(CXX) $(DEFS) $(DEBUG) -c $(CPPFLAGS) -I$(srcdir) -I$(basedir) $(DINCLUDE) $(CFLAGS) bsnprintf.c
-plugin.o: plugin.c plugin.h
- @echo "Compiling $<"
- $(NO_ECHO)$(CXX) -fPIC $(DEFS) $(DEBUG) -c $(WCFLAGS) $(CPPFLAGS) -I$(srcdir) -I$(basedir) $(DINCLUDE) $(CFLAGS) $<
+libtool-install: all
+ $(MKDIR) $(DESTDIR)$(libdir)
+ $(LIBTOOL_INSTALL_FINISH) $(INSTALL_PROGRAM) libbac.la $(DESTDIR)$(libdir)
+ $(LIBTOOL_INSTALL_FINISH) $(INSTALL_PROGRAM) libbaccfg.la $(DESTDIR)$(libdir)
+ $(LIBTOOL_INSTALL_FINISH) $(INSTALL_PROGRAM) libbacpy.la $(DESTDIR)$(libdir)
+
+libtool-include: all
+ $(MKDIR) $(DESTDIR)/$(includedir)/bacula
+ for I in ${INCLUDE_FILES}; do \
+ $(INSTALL_DATA) $$I $(DESTDIR)$(includedir)/bacula/`basename $$I`; \
+ done
+
+libtool-uninstall:
+ $(LIBTOOL_UNINSTALL) $(RMF) $(DESTDIR)$(libdir)/libbac.la
+ $(LIBTOOL_UNINSTALL) $(RMF) $(DESTDIR)$(libdir)/libbaccfg.la
+ $(LIBTOOL_UNINSTALL) $(RMF) $(DESTDIR)$(libdir)/libbacpy.la
+
+uninstall-libtool-include:
+ for I in ${INCLUDE_FILES}; do \
+ $(RMF) $(DESTDIR)$(includedir)/bacula/`basename $$I`; \
+ done
+
+install: @LIBTOOL_INSTALL_TARGET@
-
-install:
+uninstall: @LIBTOOL_UNINSTALL_TARGET@
-uninstall:
+libtool-clean:
+ find . -name '*.lo' -print | xargs $(LIBTOOL_CLEAN) $(RMF)
+ $(RMF) *.la
+ $(RMF) -r .libs _libs
-clean:
- $(RMF) *.a core a.out *.o *.bak *.tex *.pdf *~ *.intpro *.extpro 1 2 3
+clean: @LIBTOOL_CLEAN_TARGET@
+ $(RMF) core a.out *.o *.bak *.tex *.pdf *~ *.intpro *.extpro 1 2 3
$(RMF) rwlock_test md5sum sha1sum
realclean: clean