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