# This script creates a new dist archive from the svn
set -e # fail fast on errors
-source ~/simgrid-svn/buildtools/scripts/simgrid_build.conf # get config
+
+# get config
+if [ -e ~/simgrid-svn/buildtools/scripts/simgrid_build.conf ] ; then
+ source ~/simgrid-svn/buildtools/scripts/simgrid_build.conf
+else
+ source ~/.simgrid_build.conf
+fi
echo "get Linux dependencies"
sudo aptitude install -y libtool automake1.10 autoconf libgcj10-dev gcc g++ bash flex flexml doxygen bibtex bibtool iconv bibtex2html addr2line valgrind transfig
# Root of build directories and so on
SIMGRID_BASEDIR=~/simgrid
-
-
############ Do not change anything below, unless your first name is Martin or Pierre ##############
-
-# get_version: define the version number of the svn into a version variable
-get_version() {
- if [ x$version = x ] ; then
- cd ${SIMGRID_SVN_ROOT}
- svn up
- version="simgrid-3.3.4-svn-r"`svnversion`
- export version
- fi
-}
-
-# wait_archive: wait until the archive gets defined into the right position
-wait_archive() {
- while [ ! -e ${SIMGRID_BASEDIR}/${version}.tar.gz ] ; do
- echo ${SIMGRID_BASEDIR}/${version}.tar.gz not found. Wait five seconds.
- sleep 5
- done
-}
-
-# make_dist: rebuild an archive from the svn
-make_dist() {
- get_version
- if [ ! -e ${SIMGRID_BASEDIR}/${version}.tar.gz ] ; then
- cd ${SIMGRID_BASEDIR}
- echo "rebuild the missing files for compilation"
- if [ ! -e configure ] ; then
- ./bootstrap
- fi
- if [ ! -e Makefile ] ; then
- # Disable compilation optim to make it built faster
- ./configure --enable-maintainer-mode --disable-compile-optimizations
- fi
- echo "Make the archive"
- make all dist
-
- echo "Copy the archive in position"
- mkdir -p ${SIMGRID_BASEDIR}
- mv ${version}.tar.gz ${SIMGRID_BASEDIR}
- else
- echo "${SIMGRID_BASEDIR}/${version}.tar.gz already exists. Don't rebuild"
- fi
-}
-
-# clean_node: remove everything about this node
-clean_node() {
- OS=`uname`
- node=`uname -n`
- # OS specific working directory
- BUILDDIR=${SIMGRID_BASEDIR}/$OS/$node/$version
- export BUILDDIR
-
- # Clean any leftover from previous install
- if [ -e $BUILDDIR ] ; then
- echo "remove old directory $BUILDDIR"
- rm -rf $BUILDDIR
- fi
- mkdir -p $BUILDDIR
-}
-
-# open_archive: wait for archive to be built, cleanup previous
-open_archive() {
- get_version
- clean_node
- wait_archive
- cd $BUILDDIR/..
- tar xfz ${SIMGRID_BASEDIR}/${version}.tar.gz
- cd $BUILDDIR
-}
-
+source ${SIMGRID_SVN_ROOT}/buildtools/scripts/simgrid_build.functions
--- /dev/null
+# This file defines a bunch of useful functions to automatize the build of SimGrid.
+
+
+
+# get_version: define the version number of the svn into a version variable
+get_version() {
+ if [ x$version = x ] ; then
+ cd ${SIMGRID_SVN_ROOT}
+ svn up
+ version="simgrid-3.3.4-svn-r"`svnversion`
+ export version
+ fi
+}
+
+# wait_archive: wait until the archive gets defined into the right position
+wait_archive() {
+ while [ ! -e ${SIMGRID_BASEDIR}/${version}.tar.gz ] ; do
+ echo ${SIMGRID_BASEDIR}/${version}.tar.gz not found. Wait five seconds.
+ sleep 5
+ done
+}
+
+# make_dist: rebuild an archive from the svn
+make_dist() {
+ get_version
+ if [ ! -e ${SIMGRID_BASEDIR}/${version}.tar.gz ] ; then
+ cd ${SIMGRID_BASEDIR}
+ echo "rebuild the missing files for compilation"
+ if [ ! -e configure ] ; then
+ ./bootstrap
+ fi
+ if [ ! -e Makefile ] ; then
+ # Disable compilation optim to make it built faster
+ ./configure --enable-maintainer-mode --disable-compile-optimizations
+ fi
+ echo "Make the archive"
+ make all dist
+
+ echo "Copy the archive in position"
+ mkdir -p ${SIMGRID_BASEDIR}
+ mv ${version}.tar.gz ${SIMGRID_BASEDIR}
+ else
+ echo "${SIMGRID_BASEDIR}/${version}.tar.gz already exists. Don't rebuild"
+ fi
+}
+
+# clean_node: remove everything about this node
+clean_node() {
+ OS=`uname`
+ node=`uname -n`
+ # OS specific working directory
+ BUILDDIR=${SIMGRID_BASEDIR}/$OS/$node/$version
+ export BUILDDIR
+
+ # Clean any leftover from previous install
+ if [ -e $BUILDDIR ] ; then
+ echo "remove old directory $BUILDDIR"
+ rm -rf $BUILDDIR
+ fi
+ mkdir -p $BUILDDIR
+}
+
+# open_archive: wait for archive to be built, cleanup previous
+open_archive() {
+ get_version
+ clean_node
+ wait_archive
+ cd $BUILDDIR/..
+ tar xfz ${SIMGRID_BASEDIR}/${version}.tar.gz
+ cd $BUILDDIR
+}
+
# This script waits that the make_dist script finishes building the right archive in ~/simgrid
# and then builds it using the autotools
-
-source ~/simgrid-svn/buildtools/scripts/simgrid_build.conf
+if [ -e ~/simgrid-svn/buildtools/scripts/simgrid_build.conf ] ; then
+ source ~/simgrid-svn/buildtools/scripts/simgrid_build.conf
+else
+ source ~/.simgrid_build.conf
+fi
open_archive
if [ ! -e Makefile ] ; then
# This script waits that the make_dist script finishes building the right archive in ~/simgrid
# and then builds it using cmake. Warning, cmake is only a wrapper for now, you still need the autotools
-
-source ~/simgrid-svn/buildtools/scripts/simgrid_build.conf
+if [ -e ~/simgrid-svn/buildtools/scripts/simgrid_build.conf ] ; then
+ source ~/simgrid-svn/buildtools/scripts/simgrid_build.conf
+else
+ source ~/.simgrid_build.conf
+fi
open_archive