mkLHCbtar overview

  • mkLHCbtar creates a tar file of a given version of a LHCb project with a html file describing the project dependencies.
    • source tar file can be created excluding following files and directories:
      • exclude_source = ['.glimpse_*','core.*', 'html', 'Visual', 'test*', compLinux+'*', compWIN32+'*']
      • do not exclude test* from Online project
    • different flavours of slc and win32 binary tar files can be created excluding following files and directories:
      • exclude_binary = ['core.*', 'html', '*.o', '*.obj']
    • project tar files are stored in $LHCBTAR/<PROJECT> (with tar.gz extension)
      • make sure the volume <PROJECT> has enough free space, increase it in case of doubt before running the script.
    • dependency files are stored in $LHCBTAR/html (with html extension)
      • source file name is <PROJECT>_<PROJECT>_<version>
      • binary file name is <PROJECT>_<PROJECT>_<version>_<binary>
    • external package tar files (LCGCMT, GENSER, OpenScientist, CMT) are stored on $LHCBTAR/source, they are built by specific scripts (mkLCGCMTtar, mkMCGentar, mkexternaltar), only binary tar files are available.
      • binary tar file name is <PACKAGE>_<version>_<binary>.tar.gz
    • dependency html file associated to a source tar file contains the $CMTCONFIG external package tar files of the current platform.
    • if the project makes use of CMTPROJECTPATH it must be set beforehand


def help() :
  print """make a LHCb tar file (source, binary, binary_dbg) of a Gaudi or LHCb project
    python -p <project> -v <version> [--binary=<binary>] [-d] \n
    -d                                 - debug mode \n
    -p or --project= <project>         - project name \n
    -v or --version= <version>         - project version\n
    -b or --binary=  <binary>           - binary \n

    python -p Brunel -v v30r3 -b slc3_ia32_gcc323


Full description

  • main gets arguments from the command line ad calls make_tar and then create_web
    • make_tar
      • sets several variables
        • if the project is a data file (DBASE, PARAM package):
          • calls data_files_tar
        • else the project is a LHCb project
          • if CMTPROJECTPATH is not set make sure that <PROJECT>Env/<version> exists
          • if binary tar file is requested make sure InstallArea exists
            • if no CMTPROJECTPATH and no InstallArea calls LbInstallArea to build it.
          • if GAUDI clean GaudiExamples directories.
          • gets CMTPATH
            • if project is PANORAMIX adds OpenScientist path to CMTPATH
          • gets the dependencies: build a dependency html file on /tmp
            • from the CMTPATH: as many dependencies as paths, in the reverse order of CMTPATH to be given in the installation order
            • adds dependencies to DBASe and PARAM packages
            • if GAUSS: adds GENSER dependency
            • adds system dependency
          • builds the project tar file
          • if tar file is correctly created write the associated html file
    • create_web
      • concatenates all $LHCBTAR/html html files to create $LHCBTAR/distribution.html file.

-- FlorenceRanjard - 30 Mar 2007

Edit | Attach | Watch | Print version | History: r4 < r3 < r2 < r1 | Backlinks | Raw View | WYSIWYG | More topic actions
Topic revision: r4 - 2007-04-27 - FlorenceRanjard
    • Cern Search Icon Cern Search
    • TWiki Search Icon TWiki Search
    • Google Search Icon Google Search

    LHCb All webs login

This site is powered by the TWiki collaboration platform Powered by PerlCopyright & 2008-2021 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
or Ideas, requests, problems regarding TWiki? use Discourse or Send feedback