#
# Bareos Tests Makefile
#
#
# This file is pulled in by all the Unix Bareos Makefiles
#   so it has all the "common" definitions
#

DATE="01 May 2017"
LSMDATE=01May17
VERSION=17.2.2
VERNAME=bareos-$(VERSION)#
MAINT=Bareos Gatekeeper#
MAINTEMAIL=<gatekeeper@bareos.com>#
WEBMAINT=#
WEBMAINTEMAIL=#
WEBPAGE=http://bareos.org#
FTPSITENAME=#
FTPSITEDIR=#
#-------------------------------------------------------------------------

SHELL = /bin/sh

# Installation target directories & other installation stuff
prefix = 
exec_prefix = 
binprefix =
manprefix =
datarootdir = /usr/share
docdir = /home/joergs/git/bareos/bareos-regress/bin/html
bindir = /home/joergs/git/bareos/bareos-regress/bin
sbindir = /home/joergs/git/bareos/bareos-regress/bin
libdir = /home/joergs/git/bareos/bareos-regress/bin
logdir = /home/joergs/git/bareos/bareos-regress/working
includedir = /usr/include
sysconfdir = /home/joergs/git/bareos/bareos-regress/bin
confdir = /home/joergs/git/bareos/bareos-regress/bin
backenddir = /home/joergs/git/bareos/bareos-regress/bin
plugindir = /home/joergs/git/bareos/bareos-regress/bin/plugins
scriptdir = /home/joergs/git/bareos/bareos-regress/bin
archivedir = /home/joergs/git/bareos/bareos-regress/tmp
workingdir = /home/joergs/git/bareos/bareos-regress/working
mandir = /home/joergs/git/bareos/bareos-regress/bin
manext = 8

NO_ECHO = @

# Tools & program stuff
CC = gcc
CPP = gcc -E
CXX = /usr/bin/g++
MV = /bin/mv
RM = /bin/rm
RMF = $(RM) -f
CP = /bin/cp
LN_S = ln -s
SYMLINK = $(LN_S) -f
SED = /bin/sed
AWK = /usr/bin/gawk
ECHOCMD = /bin/echo
CMP = /usr/bin/cmp
TBL = /usr/bin/tbl
AR = /usr/bin/ar
GMAKE = 
RANLIB = ranlib
MKDIR = /home/joergs/git/bareos/bareos-regress/build/autoconf/mkinstalldirs
INSTALL = /usr/bin/install -c
# add the -s to the following in PRODUCTION mode
INSTALL_PROGRAM = $(INSTALL) -m 0750
INSTALL_LIB = $(INSTALL) -m 755
INSTALL_DATA = $(INSTALL) -m 644
INSTALL_SCRIPT = $(INSTALL) -m 0750
INSTALL_CONFIG = $(INSTALL) -m 640

#
# Libtool specific settings
#
DEFAULT_OBJECT_TYPE = .lo
DEFAULT_ARCHIVE_TYPE = .la
DEFAULT_SHARED_OBJECT_TYPE = .la
LIBTOOL = /home/joergs/git/bareos/bareos-regress/build/libtool
LIBTOOL_TAG = CXX
LIBTOOL_COMPILE = $(LIBTOOL) --silent --tag=$(LIBTOOL_TAG) --mode=compile
LIBTOOL_LINK = $(LIBTOOL) --silent --tag=$(LIBTOOL_TAG) --mode=link
LIBTOOL_INSTALL = $(LIBTOOL) --silent --tag=$(LIBTOOL_TAG) --mode=install
LIBTOOL_INSTALL_FINISH = $(LIBTOOL) --silent --tag=$(LIBTOOL_TAG) --finish --mode=install
LIBTOOL_UNINSTALL = $(LIBTOOL) --silent --tag=$(LIBTOOL_TAG) --mode=uninstall
LIBTOOL_CLEAN = $(LIBTOOL) --silent --tag=$(LIBTOOL_TAG) --mode=clean

# Flags & libs
CFLAGS = -g -O2 -Wall -fno-strict-aliasing -fno-exceptions
CXXFLAGS = -g -O2 -Wall -fno-strict-aliasing -fno-exceptions -fno-strict-aliasing -fno-exceptions -fno-rtti
CPPFLAGS =  -fno-strict-aliasing -fno-exceptions
LDFLAGS = 
TTOOL_LDFLAGS = 
#DEFS = -DHAVE_CONFIG_H 
LIBS = -lpthread -ldl 
WRAPLIBS = -lwrap
DINCLUDE = 
DLIB = 
PYTHON_LIBS = 
OPENSSL_INCLUDES = 
OPENSSL_LIBS = -lssl -lcrypto
GNUTLS_INCLUDES = 
GNUTLS_LIBS = 
DLLIBS = -ldl


# Windows (cygwin) flags
WCFLAGS = 
WLDFLAGS = 

# X Include directory
#XINC =  @XPM_CFLAGS@

# extra libraries needed by X on some systems, X library location
#XLIB =  @XPM_LIBS@ -lX11 

# End of common section of the Makefile
#-------------------------------------------------------------------------

srcdir = .

.PATH: .

# one up
basedir = ..
# top dir
topdir = ../..
# this dir relative to top dir
thisdir = src/tests

DEBUG = 
ZLIB_INC = 
LZO_INC = 

first_rule: all
dummy:

GETTEXT_LIBS = 

TESTS = testls bbatch bregtest bvfs_test ing_test gigaslam grow

INCLUDES += -I$(srcdir) -I$(basedir) -I$(basedir)/include

.SUFFIXES:	.c .o
.PHONY:
.DONTCARE:

# inference rules
.c.o:
	@echo "Compiling $<"
	$(NO_ECHO)$(CXX) $(DEFS) $(DEBUG) -c $(CPPFLAGS) $(INCLUDES) $(DINCLUDE) $(CXXFLAGS) $<

#-------------------------------------------------------------------------
all: Makefile $(TESTS) gigaslam grow
	@echo "==== Make of tools is good ===="
	@echo " "

bregtest: Makefile bregtest.o \
	  ../lib/libbareos$(DEFAULT_ARCHIVE_TYPE)
	@echo "Linking $@ ..."
	$(LIBTOOL_LINK) $(CXX) $(LDFLAGS) -L../lib -o $@ bregtest.o -lbareos -lm $(DLIB) $(LIBS) $(GETTEXT_LIBS)

testls: Makefile testls.o \
	../findlib/libbareosfind$(DEFAULT_ARCHIVE_TYPE) \
	../lib/libbareos$(DEFAULT_ARCHIVE_TYPE)
	@echo "Linking $@ ..."
	$(LIBTOOL_LINK) $(CXX) -g $(LDFLAGS) -L. -L../lib -L../findlib -o $@ testls.o \
	  $(DLIB) -lbareosfind -lbareos -lm $(LIBS) $(GETTEXT_LIBS)

bbatch.o: bbatch.c
	echo "Compiling $<"
	$(NO_ECHO)$(CXX) $(DEFS) $(DEBUG) -c $(CPPFLAGS) $(ZLIB_INC) $(LZO_INC) $(INCLUDES) $(DINCLUDE) $(CXXFLAGS) $<

bbatch: Makefile bbatch.o \
	../lib/libbareos$(DEFAULT_ARCHIVE_TYPE) \
	../cats/libbareossql$(DEFAULT_ARCHIVE_TYPE) \
	../cats/libbareoscats$(DEFAULT_ARCHIVE_TYPE)
	@echo "Linking $@ ..."
	$(LIBTOOL_LINK) $(CXX) -g $(LDFLAGS) -L../cats -L. -L../lib -o $@ bbatch.o \
	  -lbareoscats -lbareossql -lbareos -lm $(DB_LIBS) $(LIBS) $(GETTEXT_LIBS)

bvfs_test: Makefile bvfs_test.o \
	   ../findlib/libbareosfind$(DEFAULT_ARCHIVE_TYPE) \
	   ../lib/libbareos$(DEFAULT_ARCHIVE_TYPE) \
	   ../cats/libbareossql$(DEFAULT_ARCHIVE_TYPE) \
	   ../cats/libbareoscats$(DEFAULT_ARCHIVE_TYPE)
	@echo "Linking $@ ..."
	$(LIBTOOL_LINK) $(CXX) -g $(LDFLAGS) -L../cats -L. -L../lib -L../findlib -o $@ bvfs_test.o  \
	  -lbareoscats -lbareossql -lbareosfind -lbareos -lm $(DB_LIBS) $(LIBS) $(GETTEXT_LIBS)

ing_test: Makefile ing_test.o \
	  ../findlib/libbareosfind$(DEFAULT_ARCHIVE_TYPE) \
	  ../lib/libbareos$(DEFAULT_ARCHIVE_TYPE) \
	  ../cats/libbareossql$(DEFAULT_ARCHIVE_TYPE) \
	  ../cats/libbareoscats$(DEFAULT_ARCHIVE_TYPE)
	@echo "Linking $@ ..."
	$(LIBTOOL_LINK) $(CXX) -g $(LDFLAGS) -L../cats -L. -L../lib -L../findlib -o $@ ing_test.o  \
	  -lbareoscats -lbareossql -lbareosfind -lbareos -lm $(DB_LIBS) $(LIBS) $(GETTEXT_LIBS)

cats_test: Makefile cats_test.o \
	   ../findlib/libbareosfind$(DEFAULT_ARCHIVE_TYPE) \
	   ../lib/libbareos$(DEFAULT_ARCHIVE_TYPE) \
	   ../cats/libbareossql$(DEFAULT_ARCHIVE_TYPE)
	@echo "Linking $@ ..."
	$(LIBTOOL_LINK) $(CXX) -g $(LDFLAGS) -L../cats -L. -L../lib -L../findlib -o $@ cats_test.o  \
	  -lbareoscats -lbareossql -lbareosfind -lbareos -lm $(DB_LIBS) $(LIBS) $(GETTEXT_LIBS)

gigaslam.o: gigaslam.c
	echo "Compiling $<"
	$(CXX) $(CXXFLAGS) -c $<

gigaslam: gigaslam.o
	@echo "Linking $@ ..."
	$(LIBTOOL_LINK) $(CXX) $(LDFLAGS) -o $@ gigaslam.o

grow: Makefile grow.o ../lib/libbareos$(DEFAULT_ARCHIVE_TYPE)
	@echo "Linking $@ ..."
	$(LIBTOOL_LINK) $(CXX) $(LDFLAGS) -L../lib -o $@ grow.o -lbareos -lm $(DLIB) $(LIBS) $(GETTEXT_LIBS)

Makefile: $(srcdir)/Makefile.in $(topdir)/config.status
	cd $(topdir) \
	  && CONFIG_FILES=$(thisdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status

libtool-clean:
	@$(RMF) -r .libs _libs

clean:	libtool-clean
	@$(RMF) bsmtp core core.* a.out *.o *.bak *~ *.intpro *.extpro 1 2 3
	@$(RMF) $(TESTS)

realclean: clean
	@$(RMF) tags

distclean: realclean
	if test $(srcdir) = .; then $(MAKE) realclean; fi
	(cd $(srcdir); $(RMF) Makefile)

devclean: realclean
	if test $(srcdir) = .; then $(MAKE) realclean; fi
	(cd $(srcdir); $(RMF) Makefile)

installall: $(TESTS)
	@for tst in ${TESTS} ; do \
	   $(LIBTOOL_INSTALL) $(INSTALL_PROGRAM) $$tst $(DESTDIR)$(sbindir)/$$tst ; \
	done

install:

# Semi-automatic generation of dependencies:
# Use gcc -MM because X11 `makedepend' doesn't work on all systems
# and it also includes system headers.
# `semi'-automatic since dependencies are generated at distribution time.

depend:
	@$(MV) Makefile Makefile.bak
	@$(SED) "/^# DO NOT DELETE:/,$$ d" Makefile.bak > Makefile
	@$(ECHOCMD) "# DO NOT DELETE: nice dependency list follows" >> Makefile
	@$(CXX) -S -M $(CPPFLAGS) $(INCLUDES) *.c >> Makefile
	@if test -f Makefile ; then \
	    $(RMF) Makefile.bak; \
	else \
	   $(MV) Makefile.bak Makefile; \
	   echo " ===== Something went wrong in make depend ====="; \
	fi

# -----------------------------------------------------------------------
# DO NOT DELETE: nice dependency list follows
