New class (Andrea)
[u/mrichter/AliRoot.git] / HLT / SampleLib / Makefile.am
CommitLineData
b521659f 1# $Id$
2# Makefile template for the Alice HLT sample library
3
6c1a9d9e 4# This files defines the autotools-based build system of the
5# libAliHLTSample library. All lines starting with a '#' are comments.
6# Note: Source files definitions must be made in libAliHLTSample.pkg
7# For further information refer to the README.
b22e91eb 8
b521659f 9MODULE = AliHLTSample
10
9ce4bf4a 11EXTRA_DIST = AliHLTSampleLinkDef.h
b521659f 12
6c1a9d9e 13# include the pkg definition which actually contains the source
14# file definitions
242bb794 15MODDIR = $(top_srcdir)
16PKGDEF = $(MODDIR)/libAliHLTSample.pkg
2d7ff710 17include $(top_srcdir)/libAliHLTSample.pkg
b521659f 18
19# library definition
6c1a9d9e 20# The lib_LTLIBRARIES variable is a fixed variable of the autotools build
21# system. All libraries defined by the Makefile template have to be added
22# here. Since we aim for separated directories for different libraries
23# there will be only one library.
b521659f 24lib_LTLIBRARIES = libAliHLTSample.la
25
6c1a9d9e 26# version info for the library
27# The libtool program is used to created the library, a version number can
28# be specified by using the -version-info flag. This flag accepts an argument
29# of the form current[:revision[:age]].
30# If either revision or age are omitted, they default to 0. Also note that
31# age must be less than or equal to the current interface number. Here are a
32# set of rules to help you update your library version information:
33#
34# 1. Start with version information of 0:0:0 for each libtool library.
35# 2. Update the version information only immediately before a public release
36# of your software. More frequent updates are unnecessary, and only
37# guarantee that the current interface number gets larger faster.
38# 3. If the library source code has changed at all since the last update,
39# then increment revision (c:r:a becomes c:r+1:a).
40# 4. If any interfaces have been added, removed, or changed since the last
41# update, increment current, and set revision to 0.
42# 5. If any interfaces have been added since the last public release, then
43# increment age.
44# 6. If any interfaces have been removed since the last public release, then
45# set age to 0.
46LIBRARY_VERSION = '1:0:0'
47
b521659f 48# library sources
6c1a9d9e 49# The source files are specified in libAliHLTSample.pkg
2d7ff710 50libAliHLTSample_la_SOURCES = $(MODULE_SRCS)
b521659f 51
6c1a9d9e 52# library headers
53# The header files are specified in libAliHLTSample.pkg
2d7ff710 54noinst_HEADERS = $(MODULE_HDRS)
b521659f 55
6c1a9d9e 56# compilation flags of the library
57# This is the place to add further include directories if you are
58# using external modules. The AliRoot, ROOT and HLT base directories
59# are the default include directories.
60AM_CPPFLAGS = @HLTBASE_CPPFLAGS@ \
61 @ALIROOT_CPPFLAGS@ \
62 @ROOTCFLAGS@
63
64# linking flags of the library
65# This is the place to add further libraries if you are
66# using external modules. The AliRoot, ROOT and HLT base libraries
67# are added by default.
68# Also the version of the library
69libAliHLTSample_la_LDFLAGS = -L@ROOTLIBDIR@ \
70 @ROOTLIBS@ \
71 @HLTBASE_LDFLAGS@ \
72 @ALIROOT_LDFLAGS@ \
73 @ALIROOT_LIBS@ \
74 -version-info $(LIBRARY_VERSION)
b521659f 75
76# set the file name for the generated root dictionary
77DICTCPP = AliHLTSample-DICT.cxx
78nodist_libAliHLTSample_la_SOURCES = $(DICTCPP)
79
80CLEANFILES =
81
6c1a9d9e 82###############################################################################
83#
84# do not change anything below this line
85#
86DICTDEF = $(MODULE)-LinkDef.h
87DICTFILES = $(DICTCPP) $(DICTCPP:.cxx=.h) $(DICTDEF)
88DICTHEADERS = $(CLASS_HDRS)
89
90CLEANFILES += $(DICTFILES)
91
92
93$(DICTCPP:.cxx=.h): $(DICTCPP)
94 if test $@ ; then : ; else rm -f $< ; $(MAKE) $(MAKEFLAGS) $< ; fi
95
96$(DICTCPP): $(DICTHEADERS:%=$(srcdir)/%) $(DICTDEF)
97 if [ -x $(ROOTCINT) ]; then $(ROOTCINT) -f $@ -c $(CPPFLAGS) $(AM_CPPFLAGS) $(DEFS) $(foreach i, $(DICTINCLUDE), $(i)) $^ ; fi
90ebac25 98$(DICTDEF): Makefile.am $(PKGDEF)
6c1a9d9e 99 @echo '//automatically generated ROOT DICT definition' > $@
100 @echo '//!!! DO NOT EDIT THIS FILE !!!' >> $@
101 @echo '//add further class definitions to the CLASS_HDRS variable in Makefile.am' >> $@
102 @echo '#ifdef __CINT__' >> $@
103 @echo '#pragma link off all globals;' >> $@
104 @echo '#pragma link off all classes;' >> $@
105 @echo '#pragma link off all functions;' >> $@
106 @$(foreach i, $(DICTHEADERS), \
107 echo "#pragma link C++ class `echo $(i) | sed -e "s|.*/||g" -e "s|\.h.*||"`;" >> $@ ;)
108 @echo '#endif' >> $@