X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=HLT%2FSampleLib%2FMakefile.am;h=dafc03ea54529ea2fecef46a98384b0151a008f5;hb=6c1a9d9e9860497541e21aff1a548153b4a32092;hp=461732548799094d537a1a22ef5aab0864e57f2e;hpb=43480497585656e4a34f87c33c895965e9699355;p=u%2Fmrichter%2FAliRoot.git diff --git a/HLT/SampleLib/Makefile.am b/HLT/SampleLib/Makefile.am index 46173254879..dafc03ea545 100644 --- a/HLT/SampleLib/Makefile.am +++ b/HLT/SampleLib/Makefile.am @@ -1,31 +1,86 @@ # $Id$ # Makefile template for the Alice HLT sample library -EXTRA_DIST = tutorial.c +# 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 -AM_CPPFLAGS = -I$(top_srcdir)/BASE +#EXTRA_DIST = libAliHLTSample.pkg +# include the pkg definition which actually contains the source +# file definitions +#include 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 -libAliHLTSample_la_SOURCES = AliHLTSampleComponent1.cxx \ - AliHLTSampleComponent2.cxx \ - AliHLTDummyComponent.cxx +# The source files are specified in libAliHLTSample.pkg +#libAliHLTSample_la_SOURCES = $(MODULE_SRCS) +# temporary until lib*.pkg file is commited to AliRoot +libAliHLTSample_la_SOURCES= AliHLTSampleComponent1.cxx \ + AliHLTSampleComponent2.cxx \ + AliHLTDummyComponent.cxx -# class header files, the link definition for the root dictionary -# will be created from the names of the header files -CLASS_HDRS = AliHLTSampleComponent1.h \ - AliHLTSampleComponent2.h \ - AliHLTDummyComponent.h +# temporary until lib*.pkg file is commited to AliRoot +CLASS_HDRS= AliHLTSampleComponent1.h \ + AliHLTSampleComponent2.h \ + AliHLTDummyComponent.h -noinst_HEADERS = $(CLASS_HDRS) +# library headers +# The header files are specified in libAliHLTSample.pkg +#noinst_HEADERS = $(MODULE_HDRS) +# temporary until lib*.pkg file is commited to AliRoot +noinst_HEADERS= $(CLASS_HDRS) -# version info for the library -libAliHLTSample_la_LDFLAGS = -version-info 1:0:0 +# 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) # set the file name for the generated root dictionary DICTCPP = AliHLTSample-DICT.cxx @@ -33,4 +88,30 @@ nodist_libAliHLTSample_la_SOURCES = $(DICTCPP) CLEANFILES = -include $(top_srcdir)/make.dict +############################################################################### +# +# 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 + @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' >> $@