I'm very positive to changes that makes it possible to customize the build
process while keeping the defaults unchanged.

Johannes, could you apply this (or equivalent changes) if you agree?

--
Anders


Fri Feb 06 2015 at 1:16:05 PM skrev Terje Kvernes <[email protected]>:

> Hi,
>
> I currently have a few minor things I do to fenics-install.sh after
> downloading it and I thought I’d share.  I’m not sure if these ideas apply
> to the way fenics-install.sh is supposed to work, but neither patch should
> change the behaviour of the script if used “normally”.
>
> First I apply the following patch to allow my paths from my current
> hashdist config to work:
>
> --- fenics-install.sh   2015-02-04 10:45:02.000000000 +0100
> +++ fenics-install.sh.local     2015-02-06 12:53:45.623543000 +0100
> @@ -147,12 +147,17 @@
> PROFILE=default
> PROFILE=$(readlink $PROFILE)
> PROFILE=$(basename $PROFILE)
> +BUILD_STORE=$( grep build_stores: -A1  ~/.hashdist/config.yaml | tail -1
> | cut -f2 -d: )
> +if [ "$BUILD_STORE" == "./bld" ]; then
> +    BUILD_STORE="\$HOME/.hashdist/bld/profile"
> +fi
> +
> cat << EOF > $CONFIG_FILE
> # FEniCS configuration file created by fenics-install.sh on $(date)
> # Build type: $BUILD_TYPE
> $FENICS_CHANGESETS
> export PROFILE=$PROFILE
> -export PROFILE_INSTALL_DIR=\$HOME/.hashdist/bld/profile/\$PROFILE
> +export PROFILE_INSTALL_DIR=${BUILD_STORE}/\$PROFILE
> export PATH=\$PROFILE_INSTALL_DIR/bin:\$PATH
> export PYTHONPATH=\$PROFILE_INSTALL_DIR/lib/python2.7/site-
> packages:\$PYTHONPATH
> export CMAKE_PREFIX_PATH=\$PROFILE_INSTALL_DIR:\$CMAKE_PREFIX_PATH
>
> This gets the PROFILE_INSTALL_DIR correct for me as I alter the
> build_stores in the config-file for hashdist.  fenlics-install.sh currently
> assumes that the config file has default values.
>
> I also use a local yam file (called “local.yaml”) as a build spec, and I
> apply the following patch to use it.  It might be more user friendly to
> allow this file to reside somewhere outside of the directory that holds
> fenics-install.sh (like ~), but that’s easy enough to solve.
>
> --- fenics-install.sh   2015-02-04 10:45:02.000000000 +0100
> +++ fenics-install.sh.local     2015-02-06 13:05:59.132022000 +0100
> @@ -3,6 +3,8 @@
> # This script installs FEniCS via HashDist.
> # See README.rst for details.
>
> +ORIGINAL_DIR=$( pwd )
> +
> # Tell script to exit on first error
> trap 'exit' ERR
>
> @@ -88,8 +90,14 @@
>     PROFILE=fenics-deps${PROFILE:6}
> fi
> cd hashstack
> -cp ../fenics-developer-tools/install/profiles/$PROFILE default.yaml
> -echo "Using HashStack profile $PROFILE."
> +# If the user has a local.yaml file already present, use that as the
> default yaml file.
> +if [ -r "${ORIGINAL_DIR}/local.yaml" ]; then
> +    echo "Using HashStack profile local.yaml"
> +    cp "${ORIGINAL_DIR}/local.yaml" default.yaml
> +else
> +    echo "Using HashStack profile $PROFILE."
> +    cp ../fenics-developer-tools/install/profiles/$PROFILE default.yaml
> +fi
> echo ""
>
> # Use latest changesets from master if development build is requested
>
> I don’t know if these are of any interest to others out there, but it
> makes my life with the new installer much easier.  It combines the ease of
> install with the flexibility to modify the build as I see fit and allows me
> to quickly and easily reproduce my builds with a new installer.
>
>
> --
> Terje Kvernes
> Head sysadmin
> Department of Mathematics
> University of Oslo
>
>
>
>
> _______________________________________________
> fenics mailing list
> [email protected]
> http://fenicsproject.org/mailman/listinfo/fenics
>
_______________________________________________
fenics mailing list
[email protected]
http://fenicsproject.org/mailman/listinfo/fenics

Reply via email to