mana-ext /

Filename Size Date modified Message
waffle [c49056662073]
393 B
56 B
48 B
2.9 KB
12 B


A bundle of externals for mana.


  • get the sources from mercurial:

    $ cd somewhere
    $ hg clone mana
    $ cd mana
  • get the sources from tar-ball:

    $ curl -OL
    $ tar zxvf mana-ext-0.0.1.tar.gz && cd mana-ext-0.0.1
  • first configuration:

    $ ./waf configure --prefix=install_area
  • build:

    $ ./waf build -j4
    $ ./waf install
    $ ./waf shell

the 'waf shell' command spawns an interactive sub-shell which has been correctly configured with the project's environment setup ($PATH, $LD_LIBRARY_PATH, etc...)

  • using mana from within a CMT environment: mana tries to automagically detect and pick up the libraries from a (LCG)CMT environment (ie: $SITEROOT is defined as well as $CMTCONFIG). In such a setup, configuring mana is done like so:

    $ ./waf configure --prefix=install_area
  • create a source tar ball (need the mercurial repository and 'hg'):

    $ ./waf sdist
  • create a binary tar ball:

    $ ./waf bdist


  • gccxml (>=0.9)
  • ROOT (>=5.28.00) (with Reflex/Cintex enabled)
  • Xrootd (>= 3.1.0)
  • CLHEP (==
  • Boost (>=1.44)
  • python (>=2.6)
  • rt,pthread (on linux)
  • uuid (>= 1.38)


  • make a bin-dist for rpms, debs, mac-bundle, ms-installer.exe, ...

  • better handling of cmt-alias mechanism -> probably just create symlinks

  • handle code|binaries distribution:

    $ wget
    $ --bootstrap mana-dev
    $ --get mana-ext-src
    $ ...
  • migrate src/ext to mana-ext and rewrite src/ext to be glue code also refactorize ext a la

  • support for distcc

  • separate files with dbg symbols

  • test (hierarchical) projects

  • test IDEs (eclipse, visual studio, xcode)

  • test on windows (TM)


  • fix ld-library-path empty slots on macosx (prevents uuid to be correctly discovered)
  • fix ROOTSYS detection in waf shell
  • add detection of bz2 headers+libs (so boost won't fail "mysteriously")
  • add detection of Xpm and Xft so ROOT won't fail "mysteriously"
  • add detection of ncurses (for cmake)


  • ubuntu 11.10 32b:
$ sudo apt-get install \
libc6-dev libstdc++6-4.4-dev \
make g++ gcc binutils gfortran \
python-dev mercurial \
libboost-all-dev libboost-random-dev \
dpkg-dev \
subversion \
libx11-dev libxpm-dev libxft-dev libxext-dev \
libxml2-dev libssl-dev libkrb5-dev libgsl0-dev \
uuid-dev \
  # for 32b
  $ ./waf configure --cmtcfg=i686-linux-gcc-opt \
  --with-bundled-clhep --with-bundled-root

- slc6-64b:
$ yum install \
bzip2-devel \
libXpm-devel \
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.