# $Id$ # Makefile template for the Alice HLT sample library # This files defines the autotools-based build system of the # libAliHLTSample library. All lines starting with a '#' are comments. # Note: Source files definitions must be made in libAliHLTSample.pkg # For further information refer to the README. MODULE = AliHLTSample EXTRA_DIST = tutorial.c # include the pkg definition which actually contains the source # file definitions MODDIR = $(top_srcdir) PKGDEF = $(MODDIR)/libAliHLTSample.pkg include $(top_srcdir)/libAliHLTSample.pkg # library definition # The lib_LTLIBRARIES variable is a fixed variable of the autotools build # system. All libraries defined by the Makefile template have to be added # here. Since we aim for separated directories for different libraries # there will be only one library. lib_LTLIBRARIES = libAliHLTSample.la # version info for the library # The libtool program is used to created the library, a version number can # be specified by using the -version-info flag. This flag accepts an argument # of the form current[:revision[:age]]. # If either revision or age are omitted, they default to 0. Also note that # age must be less than or equal to the current interface number. Here are a # set of rules to help you update your library version information: # # 1. Start with version information of 0:0:0 for each libtool library. # 2. Update the version information only immediately before a public release # of your software. More frequent updates are unnecessary, and only # guarantee that the current interface number gets larger faster. # 3. If the library source code has changed at all since the last update, # then increment revision (c:r:a becomes c:r+1:a). # 4. If any interfaces have been added, removed, or changed since the last # update, increment current, and set revision to 0. # 5. If any interfaces have been added since the last public release, then # increment age. # 6. If any interfaces have been removed since the last public release, then # set age to 0. LIBRARY_VERSION = '1:0:0' # library sources # The source files are specified in libAliHLTSample.pkg libAliHLTSample_la_SOURCES = $(MODULE_SRCS) # library headers # The header files are specified in libAliHLTSample.pkg noinst_HEADERS = $(MODULE_HDRS) # compilation flags of the library # This is the place to add further include directories if you are # using external modules. The AliRoot, ROOT and HLT base directories # are the default include directories. AM_CPPFLAGS = @HLTBASE_CPPFLAGS@ \ @ALIROOT_CPPFLAGS@ \ @ROOTCFLAGS@ # linking flags of the library # This is the place to add further libraries if you are # using external modules. The AliRoot, ROOT and HLT base libraries # are added by default. # Also the version of the library libAliHLTSample_la_LDFLAGS = -L@ROOTLIBDIR@ \ @ROOTLIBS@ \ @HLTBASE_LDFLAGS@ \ @ALIROOT_LDFLAGS@ \ @ALIROOT_LIBS@ \ -version-info $(LIBRARY_VERSION) # automatic generation of data and time of library build COMPILE_INFO = AliHLTSampleCompileInfo.cxx # set the file name for the generated root dictionary DICTCPP = AliHLTSample-DICT.cxx nodist_libAliHLTSample_la_SOURCES= $(COMPILE_INFO) \ $(DICTCPP) CLEANFILES = $(COMPILE_INFO) ############################################################################### # # do not change anything below this line # DICTDEF = $(MODULE)-LinkDef.h DICTFILES = $(DICTCPP) $(DICTCPP:.cxx=.h) $(DICTDEF) DICTHEADERS = $(CLASS_HDRS) CLEANFILES += $(DICTFILES) $(DICTCPP:.cxx=.h): $(DICTCPP) if test $@ ; then : ; else rm -f $< ; $(MAKE) $(MAKEFLAGS) $< ; fi $(DICTCPP): $(DICTHEADERS:%=$(srcdir)/%) $(DICTDEF) if [ -x $(ROOTCINT) ]; then $(ROOTCINT) -f $@ -c $(CPPFLAGS) $(AM_CPPFLAGS) $(DEFS) $(foreach i, $(DICTINCLUDE), $(i)) $^ ; fi $(DICTDEF): Makefile.am $(PKGDEF) @echo '//automatically generated ROOT DICT definition' > $@ @echo '//!!! DO NOT EDIT THIS FILE !!!' >> $@ @echo '//add further class definitions to the CLASS_HDRS variable in Makefile.am' >> $@ @echo '#ifdef __CINT__' >> $@ @echo '#pragma link off all globals;' >> $@ @echo '#pragma link off all classes;' >> $@ @echo '#pragma link off all functions;' >> $@ @$(foreach i, $(DICTHEADERS), \ echo "#pragma link C++ class `echo $(i) | sed -e "s|.*/||g" -e "s|\.h.*||"`;" >> $@ ;) @echo '#endif' >> $@ $(COMPILE_INFO): $(libAliHLTSample_la_SOURCES) $(pkginclude_HEADERS) $(noinst_HEADERS) Makefile.am @echo '//automatically generated compilation info' > $@ @echo '//!!! DO NOT EDIT THIS FILE !!!' >> $@ @echo '//add changes in Makefile.am' >> $@ @echo 'extern "C" void CompileInfo( char*& date, char*& time)' >> $@ @echo '{date=__DATE__; time=__TIME__; return;}' >> $@