From 03b30396cb1919bd500bf01288383bb8997c2259 Mon Sep 17 00:00:00 2001 From: Mark Olesen Date: Tue, 9 Mar 2010 10:15:10 +0100 Subject: [PATCH] ENH: relocate third-party binaries old: $WM_THIRD_PARTY_DIR//platforms/$WM_ARCH* new: $WM_THIRD_PARTY_DIR/platforms/$WM_ARCH*/ This streamlines the creation of binary packs, eases distribution and helps when testing the robustness of relocatable installations. --- README | 3 ++- bin/engridFoam | 2 +- etc/apps/paraview3/bashrc | 7 ++++--- etc/apps/paraview3/cshrc | 7 ++++--- etc/settings.csh | 26 +++++++++++++------------- etc/settings.sh | 32 ++++++++++++++++---------------- wmake/rules/General/coco-cpp | 4 ++-- wmake/src/wmkdependParser.atg | 4 ++-- 8 files changed, 44 insertions(+), 41 deletions(-) diff --git a/README b/README index df56c9c9a4..e91cbf2ed6 100644 --- a/README +++ b/README @@ -112,7 +112,7 @@ which may be obtained from http://gcc.gnu.org/. Install the compiler in - $WM_THIRD_PARTY_DIR/gcc-/platforms/$WM_ARCH$WM_COMPILER_ARCH/ + $WM_THIRD_PARTY_DIR/platform/$WM_ARCH$WM_COMPILER_ARCH/gcc- and change the gcc version number in $WM_PROJECT_DIR/etc/settings.sh and $WM_PROJECT_DIR/etc/settings.csh appropriately and finally update the environment variables as in section 3. @@ -166,6 +166,7 @@ gcc-4.3.3. Execute the following: + cd $WM_THIRD_PARTY_DIR + rm -rf paraview-3.6.1/platforms + + rm -rf platforms/*/paraview-3.6.1 + ./makeParaView The PV3blockMeshReader and the PV3FoamReader ParaView plugins are compiled diff --git a/bin/engridFoam b/bin/engridFoam index b0df3f5b45..b5f8e19242 100755 --- a/bin/engridFoam +++ b/bin/engridFoam @@ -48,7 +48,7 @@ USAGE # report usage [ "$1" = "-h" -o "$1" = "-help" ] && usage -bindir=$WM_THIRD_PARTY_DIR/engrid/platforms/$WM_ARCH$WM_COMPILER +bindir=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/engrid libdir="$ParaView_DIR/lib/paraview-${ParaView_MAJOR:-unknown}" [ -x $bindir/engrid ] || usage "engrid executable not found in $bindir" diff --git a/etc/apps/paraview3/bashrc b/etc/apps/paraview3/bashrc index 738d3add88..2ef50d5790 100644 --- a/etc/apps/paraview3/bashrc +++ b/etc/apps/paraview3/bashrc @@ -41,7 +41,7 @@ cleanedEnv=`$WM_PROJECT_DIR/bin/foamCleanPath "$PATH" "$WM_THIRD_PARTY_DIR/cmake unset CMAKE_HOME for cmake in cmake-2.8.0 cmake-2.6.4 cmake-2.6.2 cmake-2.4.6 do - cmake=$WM_THIRD_PARTY_DIR/$cmake/platforms/$WM_ARCH + cmake=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH/$cmake if [ -r $cmake ] then export CMAKE_HOME=$cmake @@ -68,9 +68,10 @@ esac export ParaView_MAJOR paraviewInstDir=$WM_THIRD_PARTY_DIR/paraview-$ParaView_VERSION -export ParaView_DIR=$paraviewInstDir/platforms/$WM_ARCH$WM_COMPILER +export ParaView_DIR=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/paraview-$ParaView_VERSION -if [ -r $paraviewInstDir ] +# set paths if binaries or source are present +if [ -r $ParaView_DIR -o -r $paraviewInstDir ] then export PATH=$ParaView_DIR/bin:$PATH export PV_PLUGIN_PATH=$FOAM_LIBBIN/paraview-$ParaView_MAJOR diff --git a/etc/apps/paraview3/cshrc b/etc/apps/paraview3/cshrc index 3d8690b8d9..e7cc8c05d1 100644 --- a/etc/apps/paraview3/cshrc +++ b/etc/apps/paraview3/cshrc @@ -41,7 +41,7 @@ if ( $status == 0 ) set path=($cleanedEnv) # determine the cmake to be used unsetenv CMAKE_HOME foreach cmake ( cmake-2.8.0 cmake-2.6.4 cmake-2.6.2 cmake-2.4.6 ) - set cmake=$WM_THIRD_PARTY_DIR/$cmake/platforms/$WM_ARCH + set cmake=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH/$cmake if ( -r $cmake ) then setenv CMAKE_HOME $cmake set path=($CMAKE_HOME/bin $path) @@ -68,9 +68,10 @@ endsw set paraviewInstDir=$WM_THIRD_PARTY_DIR/paraview-${ParaView_VERSION} -setenv ParaView_DIR $paraviewInstDir/platforms/$WM_ARCH$WM_COMPILER +setenv ParaView_DIR $WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/paraview-${ParaView_VERSION} -if ( -r $paraviewInstDir ) then +# set paths if binaries or source are present +if ( -r $ParaView_DIR || -r $paraviewInstDir ) then set path=($ParaView_DIR/bin $path) setenv PV_PLUGIN_PATH $FOAM_LIBBIN/paraview-${ParaView_MAJOR} diff --git a/etc/settings.csh b/etc/settings.csh index 88c8f286d6..7ebab4e73d 100644 --- a/etc/settings.csh +++ b/etc/settings.csh @@ -2,7 +2,7 @@ # ========= | # \\ / F ield | OpenFOAM: The Open Source CFD Toolbox # \\ / O peration | -# \\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd. +# \\ / A nd | Copyright (C) 1991-2010 OpenCFD Ltd. # \\/ M anipulation | #------------------------------------------------------------------------------ # License @@ -87,22 +87,22 @@ switch ("$compilerInstall") case OpenFOAM: switch ("$WM_COMPILER") case Gcc: - setenv WM_COMPILER_DIR $WM_THIRD_PARTY_DIR/gcc-4.4.3/platforms/$WM_ARCH$WM_COMPILER_ARCH - _foamAddLib $WM_THIRD_PARTY_DIR/mpfr-2.4.2/platforms/$WM_ARCH$WM_COMPILER_ARCH/lib - _foamAddLib $WM_THIRD_PARTY_DIR/gmp-5.0.1/platforms/$WM_ARCH$WM_COMPILER_ARCH/lib + setenv WM_COMPILER_DIR $WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER_ARCH/gcc-4.4.3 + _foamAddLib $WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER_ARCH/mpfr-2.4.2/lib + _foamAddLib $WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER_ARCH/gmp-5.0.1/lib breaksw case Gcc442: - setenv WM_COMPILER_DIR $WM_THIRD_PARTY_DIR/gcc-4.4.2/platforms/$WM_ARCH$WM_COMPILER_ARCH - _foamAddLib $WM_THIRD_PARTY_DIR/mpfr-2.4.1/platforms/$WM_ARCH$WM_COMPILER_ARCH/lib - _foamAddLib $WM_THIRD_PARTY_DIR/gmp-4.2.4/platforms/$WM_ARCH$WM_COMPILER_ARCH/lib + setenv WM_COMPILER_DIR $WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER_ARCH/gcc-4.4.2 + _foamAddLib $WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER_ARCH/mpfr-2.4.1/lib + _foamAddLib $WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER_ARCH/gmp-4.2.4/lib breaksw case Gcc43: - setenv WM_COMPILER_DIR $WM_THIRD_PARTY_DIR/gcc-4.3.3/platforms/$WM_ARCH$WM_COMPILER_ARCH - _foamAddLib $WM_THIRD_PARTY_DIR/mpfr-2.4.1/platforms/$WM_ARCH$WM_COMPILER_ARCH/lib - _foamAddLib $WM_THIRD_PARTY_DIR/gmp-4.2.4/platforms/$WM_ARCH$WM_COMPILER_ARCH/lib + setenv WM_COMPILER_DIR $WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER_ARCH/gcc-4.3.3 + _foamAddLib $WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER_ARCH/mpfr-2.4.1/lib + _foamAddLib $WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER_ARCH/gmp-4.2.4/lib breaksw case Gcc42: - setenv WM_COMPILER_DIR $WM_THIRD_PARTY_DIR/gcc-4.2.4/platforms/$WM_ARCH$WM_COMPILER_ARCH + setenv WM_COMPILER_DIR $WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER_ARCH/gcc-4.2.4 breaksw endsw @@ -134,7 +134,7 @@ switch ("$WM_MPLIB") case OPENMPI: set mpi_version=openmpi-1.4.1 setenv MPI_HOME $WM_THIRD_PARTY_DIR/$mpi_version - setenv MPI_ARCH_PATH $MPI_HOME/platforms/$WM_OPTIONS + setenv MPI_ARCH_PATH $WM_THIRD_PARTY_DIR/platforms/$WM_OPTIONS/$mpi_version # Tell OpenMPI where to find its install directory setenv OPAL_PREFIX $MPI_ARCH_PATH @@ -174,7 +174,7 @@ case SYSTEMOPENMPI: case MPICH: set mpi_version=mpich2-1.1.1p1 setenv MPI_HOME $WM_THIRD_PARTY_DIR/$mpi_version - setenv MPI_ARCH_PATH $MPI_HOME/platforms/$WM_OPTIONS + setenv MPI_ARCH_PATH $WM_THIRD_PARTY_DIR/platforms/$WM_OPTIONS/$mpi_version _foamAddPath $MPI_ARCH_PATH/bin _foamAddLib $MPI_ARCH_PATH/lib diff --git a/etc/settings.sh b/etc/settings.sh index 7373e81824..208dfa2a0e 100644 --- a/etc/settings.sh +++ b/etc/settings.sh @@ -2,7 +2,7 @@ # ========= | # \\ / F ield | OpenFOAM: The Open Source CFD Toolbox # \\ / O peration | -# \\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd. +# \\ / A nd | Copyright (C) 1991-2010 OpenCFD Ltd. # \\/ M anipulation | #------------------------------------------------------------------------------ # License @@ -111,27 +111,27 @@ case "${compilerInstall:-OpenFOAM}" in OpenFOAM) case "$WM_COMPILER" in Gcc) - export WM_COMPILER_DIR=$WM_THIRD_PARTY_DIR/gcc-4.4.3/platforms/$WM_ARCH$WM_COMPILER_ARCH - _foamAddLib $WM_THIRD_PARTY_DIR/mpfr-2.4.2/platforms/$WM_ARCH$WM_COMPILER_ARCH/lib - _foamAddLib $WM_THIRD_PARTY_DIR/gmp-5.0.1/platforms/$WM_ARCH$WM_COMPILER_ARCH/lib + export WM_COMPILER_DIR=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER_ARCH/gcc-4.4.3 + _foamAddLib $WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER_ARCH/mpfr-2.4.2/lib + _foamAddLib $WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER_ARCH/gmp-5.0.1/lib ;; Gcc442) - export WM_COMPILER_DIR=$WM_THIRD_PARTY_DIR/gcc-4.4.2/platforms/$WM_ARCH$WM_COMPILER_ARCH - _foamAddLib $WM_THIRD_PARTY_DIR/mpfr-2.4.1/platforms/$WM_ARCH$WM_COMPILER_ARCH/lib - _foamAddLib $WM_THIRD_PARTY_DIR/gmp-4.2.4/platforms/$WM_ARCH$WM_COMPILER_ARCH/lib + export WM_COMPILER_DIR=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER_ARCH/gcc-4.4.2 + _foamAddLib $WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER_ARCH/mpfr-2.4.1/lib + _foamAddLib $WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER_ARCH/gmp-4.2.4/lib ;; Gcc44) - export WM_COMPILER_DIR=$WM_THIRD_PARTY_DIR/gcc-4.4.2/platforms/$WM_ARCH$WM_COMPILER_ARCH - _foamAddLib $WM_THIRD_PARTY_DIR/mpfr-2.4.1/platforms/$WM_ARCH$WM_COMPILER_ARCH/lib - _foamAddLib $WM_THIRD_PARTY_DIR/gmp-4.2.4/platforms/$WM_ARCH$WM_COMPILER_ARCH/lib + export WM_COMPILER_DIR=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER_ARCH/gcc-4.4.2 + _foamAddLib $WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER_ARCH/mpfr-2.4.1/lib + _foamAddLib $WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER_ARCH/gmp-4.2.4/lib ;; Gcc43) - export WM_COMPILER_DIR=$WM_THIRD_PARTY_DIR/gcc-4.3.3/platforms/$WM_ARCH$WM_COMPILER_ARCH - _foamAddLib $WM_THIRD_PARTY_DIR/mpfr-2.4.1/platforms/$WM_ARCH$WM_COMPILER_ARCH/lib - _foamAddLib $WM_THIRD_PARTY_DIR/gmp-4.2.4/platforms/$WM_ARCH$WM_COMPILER_ARCH/lib + export WM_COMPILER_DIR=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER_ARCH/gcc-4.3.3 + _foamAddLib $WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER_ARCH/mpfr-2.4.1/lib + _foamAddLib $WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER_ARCH/gmp-4.2.4/lib ;; Gcc42) - export WM_COMPILER_DIR=$WM_THIRD_PARTY_DIR/gcc-4.2.4/platforms/$WM_ARCH$WM_COMPILER_ARCH + export WM_COMPILER_DIR=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER_ARCH/gcc-4.2.4 ;; esac @@ -170,7 +170,7 @@ case "$WM_MPLIB" in OPENMPI) mpi_version=openmpi-1.4.1 export MPI_HOME=$WM_THIRD_PARTY_DIR/$mpi_version - export MPI_ARCH_PATH=$MPI_HOME/platforms/$WM_OPTIONS + export MPI_ARCH_PATH=$WM_THIRD_PARTY_DIR/platforms/$WM_OPTIONS/$mpi_version # Tell OpenMPI where to find its install directory export OPAL_PREFIX=$MPI_ARCH_PATH @@ -208,7 +208,7 @@ SYSTEMOPENMPI) MPICH) mpi_version=mpich2-1.1.1p1 export MPI_HOME=$WM_THIRD_PARTY_DIR/$mpi_version - export MPI_ARCH_PATH=$MPI_HOME/platforms/$WM_OPTIONS + export MPI_ARCH_PATH=$WM_THIRD_PARTY_DIR/platforms/$WM_OPTIONS/$mpi_version _foamAddPath $MPI_ARCH_PATH/bin _foamAddLib $MPI_ARCH_PATH/lib diff --git a/wmake/rules/General/coco-cpp b/wmake/rules/General/coco-cpp index e5da9c3395..77448d40f5 100644 --- a/wmake/rules/General/coco-cpp +++ b/wmake/rules/General/coco-cpp @@ -6,9 +6,9 @@ .SUFFIXES: .atg atgtoo = \ - $(WM_THIRD_PARTY_DIR)/coco-cpp/platforms/$(WM_ARCH)$(WM_COMPILER)/bin/coco-cpp \ + $(WM_THIRD_PARTY_DIR)/platforms/$(WM_ARCH)$(WM_COMPILER)/coco-cpp/bin/coco-cpp \ -single \ - -frames $(WM_THIRD_PARTY_DIR)/coco-cpp/platforms/share/coco-cpp \ + -frames $(WM_THIRD_PARTY_DIR)/platforms/share/coco-cpp \ $$SOURCE -o $(OBJECTS_DIR) && \ $(CC) $(c++FLAGS) -c $*.cpp -o $@ diff --git a/wmake/src/wmkdependParser.atg b/wmake/src/wmkdependParser.atg index 5e514f5501..037f4c0978 100644 --- a/wmake/src/wmkdependParser.atg +++ b/wmake/src/wmkdependParser.atg @@ -3,8 +3,8 @@ compile with: coco-cpp wmkdependParser.atg For example, - $WM_THIRD_PARTY_DIR/coco-cpp/platforms/$WM_ARCH$WM_COMPILER/bin/coco-cpp \ - -frames $WM_THIRD_PARTY_DIR/coco-cpp/platforms/share/coco-cpp \ + $WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/coco-cpp/bin/coco-cpp \ + -frames $WM_THIRD_PARTY_DIR/platforms/share/coco-cpp \ wmkdependParser.atg \*---------------------------------------------------------------------------*/ [copy]