CONFIG: makeGcc with -m32/-m64 option instead of old WM_ARCH_OPTION

This commit is contained in:
Mark Olesen
2019-06-27 17:01:41 +02:00
parent 4c4a11755a
commit 325f848dc1

32
makeGcc
View File

@ -3,7 +3,7 @@
# ========= | # ========= |
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox # \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
# \\ / O peration | # \\ / O peration |
# \\ / A nd | Copyright (C) 2016-2017 OpenCFD Ltd. # \\ / A nd | Copyright (C) 2016-2019 OpenCFD Ltd.
# \\/ M anipulation | # \\/ M anipulation |
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# | Copyright (C) 2011-2016 OpenFOAM Foundation # | Copyright (C) 2011-2016 OpenFOAM Foundation
@ -63,6 +63,7 @@ usage() {
usage: ${0##*/} [OPTION] [gcc-VERSION] [gmp-VERSION] [mpfr-VERSION] [mpc-VERSION] usage: ${0##*/} [OPTION] [gcc-VERSION] [gmp-VERSION] [mpfr-VERSION] [mpc-VERSION]
options: options:
-clang Force clang/clang++ for building -clang Force clang/clang++ for building
-m32 | -m64 32-bit or 64-bit (default) ABI
-multilib for 64-bit systems with 32-bit support required -multilib for 64-bit systems with 32-bit support required
-no-multilib for 64-bit systems without 32-bit support (DEFAULT) -no-multilib for 64-bit systems without 32-bit support (DEFAULT)
-no-threadsafe disable mpfr thread-safe (default is auto-detect) -no-threadsafe disable mpfr thread-safe (default is auto-detect)
@ -79,6 +80,8 @@ USAGE
exit 1 exit 1
} }
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
optArch=64 # Use 64-bit ABI
# Build 32-bit libraries on 64-bit systems (normally not needed) # Build 32-bit libraries on 64-bit systems (normally not needed)
optMultilib=disable optMultilib=disable
unset optThreadSafe # unset=auto unset optThreadSafe # unset=auto
@ -94,6 +97,9 @@ do
export CXX=clang++ export CXX=clang++
;; ;;
-m32 | -m64)
optArch="${1#*m}"
;;
-multi*) -multi*)
optMultilib=enable optMultilib=enable
;; ;;
@ -136,6 +142,7 @@ cat<<SUMMARY
GCC configuration GCC configuration
------------------ ------------------
GCC = $gccPACKAGE GCC = $gccPACKAGE
ABI = $optArch
GMP = $gmpPACKAGE GMP = $gmpPACKAGE
MPFR = $mpfrPACKAGE MPFR = $mpfrPACKAGE
MPC = $mpcPACKAGE MPC = $mpcPACKAGE
@ -144,17 +151,6 @@ Using CC = $CC $CFLAGS
Using CXX = $CXX $CXXFLAGS Using CXX = $CXX $CXXFLAGS
SUMMARY SUMMARY
# Set 32 or 64 bit ABI
case "$WM_ARCH_OPTION" in
32 | 64)
ABI=$WM_ARCH_OPTION
;;
*)
die "The WM_ARCH_OPTION ($WM_ARCH_OPTION) must be 32 or 64"
;;
esac
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
# Build/install without compiler name # Build/install without compiler name
buildBASE=$WM_THIRD_PARTY_DIR/build/$WM_ARCH$WM_COMPILER_ARCH buildBASE=$WM_THIRD_PARTY_DIR/build/$WM_ARCH$WM_COMPILER_ARCH
@ -204,7 +200,7 @@ else
cd $buildDIR cd $buildDIR
set -x set -x
$sourceDIR/configure ABI=$ABI \ $sourceDIR/configure ABI=$optArch \
--prefix=$GMP_ARCH_PATH \ --prefix=$GMP_ARCH_PATH \
--libdir=$GMP_ARCH_PATH/lib$WM_COMPILER_LIB_ARCH \ --libdir=$GMP_ARCH_PATH/lib$WM_COMPILER_LIB_ARCH \
--enable-cxx \ --enable-cxx \
@ -234,7 +230,7 @@ fi
# Build MPFR # Build MPFR
# ================ # ================
echo "---------------" echo "---------------"
if [ -d $MPFR_ARCH_PATH ] if [ -d "$MPFR_ARCH_PATH" ]
then then
echo "Already built: $mpfrPACKAGE" echo "Already built: $mpfrPACKAGE"
elif _foamIsSystem $MPFR_ARCH_PATH elif _foamIsSystem $MPFR_ARCH_PATH
@ -260,7 +256,7 @@ else
[ -n "$optThreadSafe" ] && configOpt="--${optThreadSafe}-thread-safe" [ -n "$optThreadSafe" ] && configOpt="--${optThreadSafe}-thread-safe"
set -x set -x
$sourceDIR/configure ABI=$ABI \ $sourceDIR/configure ABI=$optArch \
--prefix=$MPFR_ARCH_PATH \ --prefix=$MPFR_ARCH_PATH \
--libdir=$MPFR_ARCH_PATH/lib$WM_COMPILER_LIB_ARCH \ --libdir=$MPFR_ARCH_PATH/lib$WM_COMPILER_LIB_ARCH \
$configGMP $configOpt \ $configGMP $configOpt \
@ -290,7 +286,7 @@ fi
# Build MPC # Build MPC
# ================ # ================
echo "---------------" echo "---------------"
if [ -d $MPC_ARCH_PATH ] if [ -d "$MPC_ARCH_PATH" ]
then then
echo "Already built: $mpcPACKAGE" echo "Already built: $mpcPACKAGE"
elif _foamIsSystem $MPC_ARCH_PATH elif _foamIsSystem $MPC_ARCH_PATH
@ -312,7 +308,7 @@ else
cd $buildDIR cd $buildDIR
set -x set -x
$sourceDIR/configure ABI=$ABI \ $sourceDIR/configure ABI=$optArch \
--prefix=$MPC_ARCH_PATH \ --prefix=$MPC_ARCH_PATH \
--libdir=$MPC_ARCH_PATH/lib$WM_COMPILER_LIB_ARCH \ --libdir=$MPC_ARCH_PATH/lib$WM_COMPILER_LIB_ARCH \
$configGMP $configMPFR \ $configGMP $configMPFR \
@ -346,7 +342,7 @@ fi
# or specify -no-multilib on the command-line # or specify -no-multilib on the command-line
# #
echo "---------------" echo "---------------"
if [ -d $GCC_ARCH_PATH ] if [ -d "$GCC_ARCH_PATH" ]
then then
echo "Already built: $gccPACKAGE" echo "Already built: $gccPACKAGE"
elif _foamIsSystem $GCC_ARCH_PATH elif _foamIsSystem $GCC_ARCH_PATH