]> git.sur5r.net Git - bacula/bacula/blobdiff - bacula/src/lib/Makefile.in
Drop the usage of macros within macros as it seems some platforms native makes don...
[bacula/bacula] / bacula / src / lib / Makefile.in
index 6225e71eca4619677f388f8d02ffb981c91fccfb..22d352989953fdf1509933438e8550a3dcf5598d 100644 (file)
@@ -14,122 +14,215 @@ topdir = ../..
 # this dir relative to top dir
 thisdir = src/lib
 
-OPENSSL_LIBS = @OPENSSL_LIBS@
-OPENSSL_INC = @OPENSSL_INC@
-
 DEBUG=@DEBUG@
+CAP_LIBS = @CAP_LIBS@
 
 first_rule: all
 dummy:
 
-LIBSRCS = alloc.c attr.c base64.c berrno.c bsys.c bget_msg.c \
-         bnet.c bnet_server.c runscript.c \
-         bpipe.c bsnprintf.c btime.c \
-         cram-md5.c crc32.c crypto.c daemon.c edit.c fnmatch.c \
-         hmac.c idcache.c jcr.c lex.c alist.c dlist.c \
-         md5.c message.c mem_pool.c openssl.c parse_conf.c \
-         queue.c bregex.c \
-         res.c rwlock.c scan.c serial.c sha1.c \
-         semlock.c signal.c smartall.c tls.c tree.c \
-         util.c var.c watchdog.c workq.c btimers.c \
-         address_conf.c pythonlib.c winapi.c
-
-
-LIBOBJS = alloc.o attr.o base64.o berrno.o bsys.o bget_msg.o \
-         bnet.o bnet_server.o runscript.o \
-         bpipe.o bsnprintf.o btime.o \
-         cram-md5.o crc32.o crypto.o daemon.o edit.o fnmatch.o \
-         hmac.o idcache.o jcr.o lex.o alist.o dlist.o \
-         md5.o message.o mem_pool.o openssl.o parse_conf.o \
-         queue.o bregex.o \
-         res.o rwlock.o scan.o serial.o sha1.o \
-         semlock.o signal.o smartall.o tls.o tree.o \
-         util.o var.o watchdog.o workq.o btimers.o \
-         address_conf.o pythonlib.o winapi.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 lockmgr.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 priv.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 lockmgr.c
+LIBBAC_OBJS = $(LIBBAC_SRCS:.c=.o)
+LIBBAC_LOBJS = $(LIBBAC_SRCS:.c=.lo)
+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=.o)
+LIBBACCFG_LOBJS = $(LIBBACCFG_SRCS:.c=.lo)
+LIBBACCFG_LT_CURRENT = 1
+LIBBACCFG_LT_REVISION = 0
+LIBBACCFG_LT_AGE = 0
+
+#
+# libbacpy (python functions)
+#
+LIBBACPY_SRCS = pythonlib.c
+LIBBACPY_OBJS = $(LIBBACPY_SRCS:.c=.o)
+LIBBACPY_LOBJS = $(LIBBACPY_SRCS:.c=.lo)
+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:
 
 # inference rules
 .c.o:
        @echo "Compiling $<"
-       $(NO_ECHO)$(CXX) $(DEFS) $(DEBUG) -c $(WCFLAGS) $(CPPFLAGS) $(OPENSSL_INC) $(PYTHON_INC) -I$(srcdir) -I$(basedir) $(DINCLUDE) $(CFLAGS) $<
+       $(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) $(OPENSSL_INC) $(PYTHON_INC) -I$(srcdir) -I$(basedir) $(DINCLUDE) $(CFLAGS) $<
+       $(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  $@ $(LIBOBJS)
+       $(AR) rc  $@ $(LIBBAC_OBJS)
        $(RANLIB) $@
 
+libbac.la: Makefile $(LIBBAC_LOBJS)
+       @echo "Making $@ ..."
+       $(LIBTOOL_LINK) $(CXX) $(DEFS) $(DEBUG) $(LDFLAGS) -o $@ $(LIBBAC_LOBJS) -export-dynamic -rpath $(libdir) -version-info $(LIBBAC_LT_CURRENT):$(LIBBAC_LT_REVISION):$(LIBBAC_LT_AGE) $(WRAPLIBS) $(CAP_LIBS)
+
+libbaccfg.a: $(LIBBACCFG_OBJS) 
+       @echo "Making $@ ..."
+       $(AR) rc  $@ $(LIBBACCFG_OBJS)
+       $(RANLIB) $@
+
+libbaccfg.la: Makefile $(LIBBACCFG_LOBJS) 
+       @echo "Making $@ ..."
+       $(LIBTOOL_LINK) $(CXX) $(DEFS) $(DEBUG) $(LDFLAGS) -o $@ $(LIBBACCFG_LOBJS) -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: Makefile $(LIBBACPY_LOBJS) 
+       @echo "Making $@ ..."
+       $(LIBTOOL_LINK) $(CXX) $(DEFS) $(DEBUG) $(LDFLAGS) -o $@ $(LIBBACPY_LOBJS) -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) $(OPENSSL_INC) $(python) -I$(srcdir) -I$(basedir) $(DINCLUDE) $(CFLAGS) $<
+lockmgr_test: Makefile
+       rm -f lockmgr.o
+       $(CXX) -D _TEST_IT $(DEFS) $(DEBUG) -c $(CPPFLAGS) -I$(srcdir) -I$(basedir) $(DINCLUDE)  $(CFLAGS) lockmgr.c
+       $(LIBTOOL_LINK) $(CXX) $(LDFLAGS) -L. -o $@ lockmgr.o $(DLIB) -lbac -lm $(LIBS) $(OPENSSL_LIBS)
+       rm -f lockmgr.o
+       $(CXX) $(DEFS) $(DEBUG) -c $(CPPFLAGS) -I$(srcdir) -I$(basedir) $(DINCLUDE) $(CFLAGS) lockmgr.c
 
-rwlock_test:
+rwlock_test: Makefile
        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 $(DLIB) -lbac -lm $(LIBS) $(OPENSSL_LIBS)
        rm -f rwlock.o
        $(CXX) $(DEFS) $(DEBUG) -c $(CPPFLAGS) -I$(srcdir) -I$(basedir) $(DINCLUDE) $(CFLAGS) rwlock.c
 
-md5sum: md5.o  
+md5sum: Makefile 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 $(DLIB) -lbac -lm $(LIBS) $(OPENSSL_LIBS)
        rm -f md5.o
        $(CXX) $(DEFS) $(DEBUG) -c $(CPPFLAGS) -I$(srcdir) -I$(basedir) $(DINCLUDE) $(CFLAGS) md5.c
 
-
-sha1sum: sha1.o
+sha1sum: Makefile 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 $(DLIB) -lbac -lm $(LIBS) $(OPENSSL_LIBS)
        rm -f sha1.o
        $(CXX) $(DEFS) $(DEBUG) -c $(CPPFLAGS) -I$(srcdir) -I$(basedir) $(DINCLUDE) $(CFLAGS) sha1.c
 
-bsnprintf: bsnprintf.o
+bsnprintf: Makefile 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 $(DLIB) -lbac -lm $(LIBS) $(OPENSSL_LIBS)
        rm -f bsnprintf.o
        $(CXX) $(DEFS) $(DEBUG) -c $(CPPFLAGS) -I$(srcdir) -I$(basedir) $(DINCLUDE) $(CFLAGS) bsnprintf.c
-       
-        
-install:
 
-uninstall:
+install-includes:
+       $(MKDIR) $(DESTDIR)/$(includedir)/bacula
+       for I in $(INCLUDE_FILES); do \
+          $(INSTALL_DATA) $$I $(DESTDIR)$(includedir)/bacula/`basename $$I`; \
+       done
+
+uninstall-includes:
+       for I in $(INCLUDE_FILES); do \
+          $(RMF) $(DESTDIR)$(includedir)/bacula/`basename $$I`; \
+       done
+
+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-uninstall:
+       $(LIBTOOL_UNINSTALL) $(RMF) $(DESTDIR)$(libdir)/libbac.la
+       $(LIBTOOL_UNINSTALL) $(RMF) $(DESTDIR)$(libdir)/libbaccfg.la
+       $(LIBTOOL_UNINSTALL) $(RMF) $(DESTDIR)$(libdir)/libbacpy.la
+
+install: @LIBTOOL_INSTALL_TARGET@ @INCLUDE_INSTALL_TARGET@
+
+uninstall: @LIBTOOL_UNINSTALL_TARGET@ @INCLUDE_UNINSTALL_TARGET@
+
+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
-       $(RMF) rwlock_test md5sum sha1sum
+clean: libtool-clean
+       @$(RMF) core a.out *.o *.bak *.tex *.pdf *~ *.intpro *.extpro 1 2 3
+       @$(RMF) rwlock_test md5sum sha1sum
 
 realclean: clean
-       $(RMF) tags
+       @$(RMF) tags
 
 distclean: realclean
        if test $(srcdir) = .; then $(MAKE) realclean; fi
        (cd $(srcdir); $(RMF) Makefile)
 
 # Semi-automatic generation of dependencies:
-# Use gcc -MM because X11 `makedepend' doesn't work on all systems
+# Use gcc -M because X11 `makedepend' doesn't work on all systems
 # and it also includes system headers.
 # `semi'-automatic since dependencies are generated at distribution time.
 
@@ -137,7 +230,9 @@ depend:
        @$(MV) Makefile Makefile.bak
        @$(SED) "/^# DO NOT DELETE:/,$$ d" Makefile.bak > Makefile
        @$(ECHO) "# DO NOT DELETE: nice dependency list follows" >> Makefile
-       @$(CXX) -S -M $(CPPFLAGS) $(XINC) $(PYTHON_INC) -I$(srcdir) -I$(basedir) $(SQL_INC) *.c >>Makefile
+       @for src in $(LIBBAC_SRCS) $(LIBBACCFG_SRCS) $(LIBBACPY_SRCS); do \
+           $(CXX) -S -M -MT `basename $$src .c`$(DEFAULT_OBJECT_TYPE) $(CPPFLAGS) $(XINC) $(PYTHON_INC) -I$(srcdir) -I$(basedir) $(SQL_INC) $$src >> Makefile; \
+       done
        @if test -f Makefile ; then \
            $(RMF) Makefile.bak; \
        else \