SPI EXTERNAL PACKAGES BUILDING INFRASTRUCTURE

This is a very short summary of the current configuration of the build system for external packages.

This should be mostly seen as a guide about how things were installed. There is little chance you'll need to redo it in normal operations.

See the How to use SBE guide for installation of a new package.

Build Machine used:

  • rh73_gcc32       : lxbuild010
  • rh73_gcc323      : lxbuild003 and lxbuild010
  • rh73_icc80       : lxbuild004 and lxbuild010
  • slc3_ia32_gcc323 : lxbuild006
  • osx103_gcc3      : macsft001
  • lxbuild010 for rh73_gcc32 rh73_gcc323 rh73_icc71 and rh73_icc80.

If more than one machine is referenced, please take the first one (in bold) unless impossible (machine down, etc.).

Build directories:

The build directory is usually: /build/spi/, exceptions are noted below:

  • NO EXEPTIONS YET

Initial configuration (HAS TO BE DONE ONCE FOR ALL - likely not to be done again soon except when upgrading pacman):

INSTALLING PACMAN

NOTE: pacman version are changing, take the latest.

INSTALLING SBE

At CERN

At CERN, the sbe software is installed under /afs/cern.ch/sw/lcg/contrib./ypatois/public/spi_buil_external and there is nothing more to do.

Any other site

Download
To be done. Most likely CVS only for now.

Compilation
The build instructions are primary in XML format. This format must be converted to python scripts before SBE can be rendered usable. To do this:
  • cd in the sbe directory:
    $ cd < whatever >/spi_build_external
  • Touch the existing files properly (needed):
    $ make touch
  • Clean-up (should'nt be needed if you got the code fvrom CVS, but anyway) :
    $ make clean
  • Create the scripts :
    $ make

The actual build takes some time, if there are no error messages, it means this worked.

IMPORTANT NOTE : sbe building makes use of xslt-python that must be available on the system. On slc3 it can be installed with teh following command:
# apt-get install libxslt-python

Preliminary setup:

  • Set the platform name your going to work on:
    SH $ export SPI_PLATFORM=< platform >
    CSH $ setenv SPI_PLATFORM < platform >

is rh73_gcc323, osx103_gcc33, etc.

- Set the topdir (where packages will be installed): . topdir: SH $ export SPI_TOPDIR=/afs/cern.ch/sw/lcg/external CSH $ setenv SPI_TOPDIR /afs/cern.ch/sw/lcg/external

- Right version of Python for pacman should be in the path: Python >=2.3 requiered. $ source /afs/cern.ch/sw/lcg/external/Python/2.3.4/$SPI_PLATFORM/_SPI/start.(c)sh NOTE: latest pacman seems to be able to fetch itself the right Python version for it's own use if needed. Untested and unsure it would help us.

- spi scripts path
SH $ export SPI_SCRIPT_PATH=/afs/cern.ch/sw/lcg/contrib/ypatois/public/spi_build_external
SH =$ export PATH=${SPI_SCRIPT_PATH}:${PATH} =

CSH $ setenv SPI_SCRIPT_PATH /afs/cern.ch/sw/lcg/contrib/ypatois/public/spi_build_external
CSH $ setenv PATH ${SPI_SCRIPT_PATH}:${PATH}

- Pacman setup:
$ pushd /afs/cern.ch/sw/lcg/external/pacman/pacman/share
SH $ source setup.sh
CSH $ source setup.csh
$ popd
Note: The cd is mandatory as setup.(c)sh uses pwd (no comment). Note2: Last pacman is a symlink always pointing to the recommanded version of pacman to use.

Initial configuration (PER PLATFORM):

- Creating pacman playground on the build machine
$ mkdir -p /build/spi/$SPI_PLATFORM - Pacman cache:
$ pacman -cache:/afs/cern.ch/sw/lcg/external/pacman/cache

Important

Pacman commands must always be issued from the choosen pacman area that we defined.

How to actually install packages

To install packages see the spi-build-howto.txt document.

-- YannickPatois - 24 Feb 2005

Edit | Attach | Watch | Print version | History: r5 < r4 < r3 < r2 < r1 | Backlinks | Raw View | WYSIWYG | More topic actions
Topic revision: r5 - 2005-05-20 - unknown
 
    • Cern Search Icon Cern Search
    • TWiki Search Icon TWiki Search
    • Google Search Icon Google Search

    SPI All webs login

This site is powered by the TWiki collaboration platform Powered by PerlCopyright &© 2008-2024 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