Buildsystem

BITS is a build system based on GNU make tool which helps you to build and install AliEn releases and dependencies on your system. It downloads defined source or binary tarballs, checks their integrity, decompresses, patches, configures, builds and installs them. BITS is derived from the KDE Konstruct tool which was modified to crate and use the binary package distributions.

 

AliEn BITS Servers


These servers are continuously building AliEn releases and the CVS head and offer Web frontend to BITS. In addition they provide dependency graph and run unit and functional tests.

Preconditions


A working GNU tool chain (gcc, GNU make, flex, BSD yacc, gettext, autotools etc.) and additional GNU tools like tar, gzip, bzip2, md5sum, patch and wget, about 1 GB of disk space to store source files and build output, 400 Mb in the installation area.

 

How to get latest version?


Get the source files from CVS, configure installer and build all or individual packages using standard make procedure.

cvs -d :pserver:
 cvs@alisoft.cern.ch:/soft/cvsroot login 
#pwd cvs
cvs -d :pserver:
 cvs@alisoft.cern.ch:/soft/cvsroot co antidot
 
 

Configuration


./configure --prefix=$PREFIX
make 
make install

Make targets supported:

 

  • fetch - fetch source files
  • patch - unpack sources and apply patches
  • test - run unit tests
  • install - install in $PREFIX directory
  • cache - build AliEn package in $PREFIX/dist directory
  • bininstall - fetch and install AliEn binary package in $PREFIX directory
  • autopackage - create autopackage files in $PREFIX/packages directory

 

Using your own compiler


If you prefer to use your own compiler, you have to do:

 

  • First configure everything with the path to the native compiler
./configure --with-gcc-path=<path_to_native_compiler> --prefix=<install_directory>
  • change the Makefile in apps subdirectory. Exclude in this file "gcc" from the directories listed in DIRS
  • Delete dependencies tp apps/gcc/gcc in all other packages. this can be done by runing the following command in the main directory of antidot.
find . -name Makefile -exec sed -e 's#apps/gcc/gcc##g' -i "{}" ";"
  • After that do the normal make and make install

 

Possible errors


 

  • Authentication on 64 with gcc. There is a problem with the openssh delivered with globus on 64 bit systems with gcc 4. The problem does not show up with compiler version gcc 3. The problem is described at http://bugzilla.globus.org/globus/show_bug.cgi?id=4617 . The solution for this systems is to compile globus with debug options flavor=gcc64dbg instead of gcc64).
  •  

  •  

License


Redistribution and/or use, with or without modification, is permitted. This software is without warranty of any kind. The author(s) shall not be liable in the event that use of the software causes damage. See EGEE License for details.

 

Acknowlegment


BITS is based on "Konstruct" tool ( binner@kde.org) which is in turn based on GAR ports system by Nick Moffitt (http://www.lnx-bbc.com/garchitecture.html) and is inspired by GARNOME distribution by Jeff Waugh (http://www.gnome.org/~jdub/garnome/).