X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=HLT%2FREADME;h=05121ed479d34827f5d0823af2877442f66e6aac;hb=bd0e81530434e60f06036a2ee112634aced4fe4d;hp=8cc1ac1b18cd7efa47e0202fd974a7af911c2486;hpb=fc455fbaa2cc25ba81cf6601e92deab14f12b683;p=u%2Fmrichter%2FAliRoot.git diff --git a/HLT/README b/HLT/README index 8cc1ac1b18c..05121ed479d 100644 --- a/HLT/README +++ b/HLT/README @@ -1,6 +1,9 @@ Package: ALICE HLT -This package implements the ALICE High Level Trigger analysis framework. +This package implements the ALICE High Level Trigger analysis framework +and analysis component libraries. All files are property of and copyright +by the ALICE HLT Project unless stated differently. + All contributions are under the terms of the GNU General Public License as published by the Free Software Foundation. Also see files AUTHORS and THANKS. @@ -8,17 +11,19 @@ Foundation. Also see files AUTHORS and THANKS. This packages is maintained by Matthias.Richter@ift.uib.no Comments, bug reports, suggestions welcome! -TOC -=== -1. Overview -2. Requirements -3. Setting up a version retrieved from CVS -4. Modifying a distributed package -5. Installation -6. Documentation -7. Further information -8. Reporting bugs/Asking for support -9. Committing to the AliRoot CVS +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ++ TOC +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ++ 1. Overview ++ 2. Requirements ++ 3. Setting up a version retrieved from CVS ++ 4. Modifying a distributed package ++ 5. Installation ++ 6. Documentation ++ 7. Further information ++ 8. Reporting bugs/Asking for support ++ 9. Committing to the AliRoot CVS +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1. Overview =========== @@ -26,23 +31,22 @@ This package provides a compilation of shared libraries of the ALICE HLT project and is intended for stand-alone compilation, i.e. not as part of the AliRoot compilation. -- BASE: The base library (libHLTbase.so) provides the common interface for HLT -processing components, the binding into the ALICE offline project AliRoot -and a pure C interface to the HLT on-line framework (Publisher/Subscriber -framework) + - \b BASE: The base library (libHLTbase.so) provides the common interface for + HLT processing components, the binding into the ALICE offline project + AliRoot and a pure C interface to the HLT on-line framework + (Publisher/Subscriber framework) -- SampleLib: The sample library contains examples for component -implementation and a tutorial. + - \b SampleLib: The sample library contains examples for component + implementation and a tutorial. -- TPCLib: The HLT code for the TPC -- TPCLib/OnlineDisplay: HLT visualization code for the TPC + - \b TPCLib: The HLT code for the TPC + - \b TPCLib/OnlineDisplay: HLT visualization code for the TPC -- PHOS: The HLT code for PHOS + - \b PHOS: The HLT code for PHOS -- TRD: The HLT code for TRD + - \b TRD: The HLT code for TRD -The old stand-alone build system is still available. Check the README -file in the doc folder. + - \b MUON: The HLT code for MUON 2. Requirements =============== @@ -65,7 +69,8 @@ Skip this section if you have started from the tar ball. A version checked out from CVS requires a few steps to set up the Makefiles. Go to the directory and run -autoreconf -i -f + + autoreconf -i -f Then continue with the package configuration described in the 'Installation' section. @@ -74,7 +79,8 @@ section. ================================== If you are going the modify a distributed package you might need to re-make the GNU build system by running - autoreconf -f -i + + autoreconf -f -i Please notify the authors about bug fixes/corrections/extensions you made if you consider them worth to be merged into the project. @@ -84,13 +90,13 @@ section. 5. Installation =============== -NOTE: The Makefiles which are in repository are part of the old build system. -Now, the Makefile.am templates are valid. - Package build relies on the GNU triplet configure, make and make install. In order to keep the development directory clean, it is recommended to use a separate build directory. +\b NOTE: Autotools creates the Makefiles from templates. All \b changes have to +be done to the \b Makefile.am templates. + It is recommended to read the complete section before the build process. 5.1 For the impatiant user @@ -105,12 +111,15 @@ It is recommended to read the complete section before the build process. 5.2 Installation directory -------------------------- The default install directory is set to the current directory ($PWD). To -override the default directory use the option --prefix=. More information -can be obtained from the configure script by running it with option --help. -All binary libraries will be installed under /lib. - -If the directory is equal to $ALICE_ROOT, the libraries will be installed under -/lib/tgt_ as used for AliRoot. This is a custom extension in +override the default directory use the option + --prefix=. +More information can be obtained from the configure script by running it with +option --help. All binary libraries will be installed under + /lib. + +If the directory is equal to $ALICE_ROOT, the libraries will be installed under + /lib/tgt_ +as used for AliRoot. This is a custom extension in order to adapt to the specific AliRoot installation directories. 5.3 For the AliRoot user @@ -126,67 +135,110 @@ To install all libraries in the AliRoot lib dir: 5.4 Package options ------------------- Some important options (all options are on by default): ---disable-sample # disable compilation the sample library ---disable-tpc # disable compilation the TPC library ---disable-phos # disable compilation the PHOS library ---disable-trd # disable compilation the TRD library ---disable-aliroot-logging # disable logging + + --disable-sample # disable compilation the sample library + --disable-util # disable compilation the util library + --disable-tpc # disable compilation the TPC library + --disable-phos # disable compilation the PHOS library + --disable-trd # disable compilation the TRD library + --disable-dimuon # disable compilation the MUON library + --disable-aliroot-logging # disable logging + --disable-strict # disable strict coding conventions and + compilation flags + +All detector libraries (including sample and util lib) require AliRoot, +compilation is disabled if no working AliRoot version was found. This can +occur even if an AliRoot version is set up correctly since the configure +script checks for the usability of the AliRoot libraries (mainly STEER and +the ones it depends on). If new dependencies are introduced, the check +might fail. + +Compilation of detector libraries can be forced by the switch + + --enable-detector, e.g. --enable-phos + +Compilation can also be forced by typing 'make' in the detector +sub-directory. + +Debugging (default disabled) + + --enable-debug # enable debugging: symbols & messages + +Optimization (default -O2) + + --disable-optimization # disable compiler optimization + --enable-optimization<=l> # enable compiler optimization level l 5.5 External packages --------------------- PubSub framework: the TPC online display needs the HOMER interface, which is currently part of the PubSub framework. It is planned to integrate it -into AliRoot. +into AliRoot.
If the TPC online display is not necessary one can skip this option. ---with-pubsub= # the top dir of the HLT PubSub framework + + --with-pubsub= # the top dir of the HLT PubSub framework 5.6 Final remarks/further information ------------------------------------- -Note: You can have several build directories with different configure options, -but using the same source code. +\b Note: You can have several build directories with different configure +options, but using the same source code. If you need further information on the GNU build system, execute from the top directory: -./configure --help | less + + ./configure --help | less 6. Documentation ================ -Documentation is generated from the source code at compile time if -doxygen is installed on the machine. From the build directory, open -doc/html/index.html with a web browser. +Documentation is build as part of the build process if \b doxygen is installed. +The documentation can be opended from the + doc/html/ +sub-folder of your build directory. E.g with a web browser like firefox +(assuming you are in the build directory):
+ firefox file://`pwd`/doc/html/index.html + +A special target can be used to make a tar ball out of the documentation (again +provided you are in the build directory):
+ (cd doc && make tar-ball) + +On-line documentation is available at + http://web.ift.uib.no/~kjeks/doc/alice-hlt/ 7. Further information ====================== A wiki with detailed information is set up at -http://www.kip.uni-heidelberg.de/wiki/HLT + http://www.kip.uni-heidelberg.de/wiki/HLT 8. Reporting bugs/Asking for support ==================================== -Please include the following information into your request: -- config.log from your build directory -- output of the make process. Note: Redirect BOTH the stdout and stderr - channel to a log file. Redirection depends on the shell you are using: - bash: make 2>&1 | tee make.log - csh: make |& tee make.log - The 'tee' command just duplicates the output. -- history of the commands you are using for compilation - history > history.log - -9. Committing to the AliRoot CVS +Please include the following information into your report/request: + - config.log from your build directory + - output of the make process. Note: Redirect BOTH the stdout and stderr + channel to a log file. Redirection depends on the shell you are using:
+ bash: make 2>&1 | tee make.log
+ csh: make |& tee make.log
+ The 'tee' command just duplicates the output. + - history of the commands you are using for compilation + history > history.log + +9. Committing to the AliRoot SVN ================================ For development of HLT analysis code check out a HEAD version from the repository and implement your code. For committing do: -1. make sure that the code changes are correct - cvs diff | less - remember to restore all temporary changes you made (e.g. log level default) -2. cvs update -3. correct merging conflicts -4. compile and test your code again -5. send the whole HLT module except the build sub-directories to - Matthias.Richter@ift.uib.no -6. you will get a notification when the code is committed, right after that you - must either do another cvs update or check out the complete module again in - order to have the right CVS information + - 1. make sure that the code changes are correct
+ svn diff | less
+ \b Remember to restore all temporary changes you made (e.g. log level) + - 2. svn update + - 3. correct merging conflicts + - 4. compile and test your code again + - 5. depending on where you changes are send the whole HLT module except the build + sub-directories or your HLT sub- directory to + Matthias.Richter@ift.uib.no + Please include a message/description for the check in + - 6. you will get a notification when the code is committed, right after that + you must either do another svn update or check out the complete module + again in order to have the right SVN information. Please check that your + code has been correctly committed.