diff options
author | Bastien Montagne <bastien@blender.org> | 2021-02-05 20:54:29 +0300 |
---|---|---|
committer | Bastien Montagne <bastien@blender.org> | 2021-02-05 21:02:11 +0300 |
commit | 5dc87a3ca5f32b87d3cdf5f54a9d3a30f5b4fae0 (patch) | |
tree | 1ae717790296062ae8be8aad4228467a418f3d16 /build_files/build_environment | |
parent | 07521b16270e5881d09216ff0606c035b1440fd0 (diff) |
Massive install_deps update.
Unfortunately one issue raising another one, this ended up being a
fairly big update, with:
*Fixes:
** Dependencies between libraries are better handled (would fail
previously in some cases when the lib was also available as package).
** Dependency of Boost over Python is now taken into account.
** Fix CMake flags to use local own built boost.
** Fix building numpy.
*Changes:
** We now use pip for all python modules (including numpy).
** Added all missing python modules (requests etc.).
*Updates:
**USD: 20.08, Due to build failing with 20.05 (missing include).
Diffstat (limited to 'build_files/build_environment')
-rwxr-xr-x | build_files/build_environment/install_deps.sh | 656 |
1 files changed, 333 insertions, 323 deletions
diff --git a/build_files/build_environment/install_deps.sh b/build_files/build_environment/install_deps.sh index 6cbba74a6ae..9c898a04d55 100755 --- a/build_files/build_environment/install_deps.sh +++ b/build_files/build_environment/install_deps.sh @@ -53,15 +53,15 @@ getopt \ --long source:,install:,tmp:,info:,threads:,help,show-deps,no-sudo,no-build,no-confirm,\ with-all,with-opencollada,with-jack,with-embree,with-oidn,with-nanovdb,\ ver-ocio:,ver-oiio:,ver-llvm:,ver-osl:,ver-osd:,ver-openvdb:,ver-xr-openxr:,\ -force-all,force-python,force-numpy,force-boost,force-tbb,\ +force-all,force-python,force-boost,force-tbb,\ force-ocio,force-openexr,force-oiio,force-llvm,force-osl,force-osd,force-openvdb,\ force-ffmpeg,force-opencollada,force-alembic,force-embree,force-oidn,force-usd,\ force-xr-openxr,\ -build-all,build-python,build-numpy,build-boost,build-tbb,\ +build-all,build-python,build-boost,build-tbb,\ build-ocio,build-openexr,build-oiio,build-llvm,build-osl,build-osd,build-openvdb,\ build-ffmpeg,build-opencollada,build-alembic,build-embree,build-oidn,build-usd,\ build-xr-openxr,\ -skip-python,skip-numpy,skip-boost,skip-tbb,\ +skip-python,skip-boost,skip-tbb,\ skip-ocio,skip-openexr,skip-oiio,skip-llvm,skip-osl,skip-osd,skip-openvdb,\ skip-ffmpeg,skip-opencollada,skip-alembic,skip-embree,skip-oidn,skip-usd,\ skip-xr-openxr \ @@ -188,9 +188,6 @@ ARGUMENTS_INFO="\"COMMAND LINE ARGUMENTS: --build-python Force the build of Python. - --build-numpy - Force the build of NumPy. - --build-boost Force the build of Boost. @@ -255,9 +252,6 @@ ARGUMENTS_INFO="\"COMMAND LINE ARGUMENTS: --force-python Force the rebuild of Python. - --force-numpy - Force the rebuild of NumPy. - --force-boost Force the rebuild of Boost. @@ -315,9 +309,6 @@ ARGUMENTS_INFO="\"COMMAND LINE ARGUMENTS: --skip-python Unconditionally skip Python installation/building. - --skip-numpy - Unconditionally skip NumPy installation/building. - --skip-boost Unconditionally skip Boost installation/building. @@ -389,18 +380,62 @@ PYTHON_VERSION="3.9.1" PYTHON_VERSION_SHORT="3.9" PYTHON_VERSION_MIN="3.7" PYTHON_VERSION_MAX="3.10" -PYTHON_VERSION_INSTALLED=$PYTHON_VERSION_MIN +PYTHON_VERSION_INSTALLED=$PYTHON_VERSION_SHORT PYTHON_FORCE_BUILD=false PYTHON_FORCE_REBUILD=false PYTHON_SKIP=false -NUMPY_VERSION="1.19.5" -NUMPY_VERSION_SHORT="1.19" -NUMPY_VERSION_MIN="1.8" -NUMPY_VERSION_MAX="2.0" -NUMPY_FORCE_BUILD=false -NUMPY_FORCE_REBUILD=false -NUMPY_SKIP=false +# Additional Python modules. +PYTHON_IDNA_VERSION="2.9" +PYTHON_IDNA_VERSION_MIN="2.0" +PYTHON_IDNA_VERSION_MAX="3.0" +PYTHON_IDNA_NAME="idna" + +PYTHON_CHARDET_VERSION="3.0.4" +PYTHON_CHARDET_VERSION_MIN="3.0" +PYTHON_CHARDET_VERSION_MAX="5.0" +PYTHON_CHARDET_NAME="chardet" + +PYTHON_URLLIB3_VERSION="1.25.9" +PYTHON_URLLIB3_VERSION_MIN="1.0" +PYTHON_URLLIB3_VERSION_MAX="2.0" +PYTHON_URLLIB3_NAME="urllib3" + +PYTHON_CERTIFI_VERSION="2020.4.5.2" +PYTHON_CERTIFI_VERSION_MIN="2020.0" +PYTHON_CERTIFI_VERSION_MAX="2021.0" +PYTHON_CERTIFI_NAME="certifi" + +PYTHON_REQUESTS_VERSION="2.23.0" +PYTHON_REQUESTS_VERSION_MIN="2.0" +PYTHON_REQUESTS_VERSION_MAX="3.0" +PYTHON_REQUESTS_NAME="requests" + +PYTHON_NUMPY_VERSION="1.19.5" +PYTHON_NUMPY_VERSION_MIN="1.14" +PYTHON_NUMPY_VERSION_MAX="2.0" +PYTHON_NUMPY_NAME="numpy" + +# As package-ready parameters (only used with distro packages). +PYTHON_MODULES_PACKAGES=( + "$PYTHON_IDNA_NAME $PYTHON_IDNA_VERSION_MIN $PYTHON_IDNA_VERSION_MAX" + "$PYTHON_CHARDET_NAME $PYTHON_CHARDET_VERSION_MIN $PYTHON_CHARDET_VERSION_MAX" + "$PYTHON_URLLIB3_NAME $PYTHON_URLLIB3_VERSION_MIN $PYTHON_URLLIB3_VERSION_MAX" + "$PYTHON_CERTIFI_NAME $PYTHON_CERTIFI_VERSION_MIN $PYTHON_CERTIFI_VERSION_MAX" + "$PYTHON_REQUESTS_NAME $PYTHON_REQUESTS_VERSION_MIN $PYTHON_REQUESTS_VERSION_MAX" + "$PYTHON_NUMPY_NAME $PYTHON_NUMPY_VERSION_MIN $PYTHON_NUMPY_VERSION_MAX" +) + +# As pip-ready parameters (only used when building python). +PYTHON_MODULES_PIP=( + "$PYTHON_IDNA_NAME==$PYTHON_IDNA_VERSION" + "$PYTHON_CHARDET_NAME==$PYTHON_CHARDET_VERSION" + "$PYTHON_URLLIB3_NAME==$PYTHON_URLLIB3_VERSION" + "$PYTHON_CERTIFI_NAME==$PYTHON_CERTIFI_VERSION" + "$PYTHON_REQUESTS_NAME==$PYTHON_REQUESTS_VERSION" + "$PYTHON_NUMPY_NAME==$PYTHON_NUMPY_VERSION" +) + BOOST_VERSION="1.73.0" BOOST_VERSION_SHORT="1.73" @@ -491,10 +526,10 @@ ALEMBIC_FORCE_BUILD=false ALEMBIC_FORCE_REBUILD=false ALEMBIC_SKIP=false -USD_VERSION="20.05" -USD_VERSION_SHORT="20.05" +USD_VERSION="20.08" +USD_VERSION_SHORT="20.08" USD_VERSION_MIN="20.05" -USD_VERSION_MAX="20.06" +USD_VERSION_MAX="21.00" USD_FORCE_BUILD=false USD_FORCE_REBUILD=false USD_SKIP=false @@ -730,7 +765,6 @@ while true; do ;; --build-all) PYTHON_FORCE_BUILD=true - NUMPY_FORCE_BUILD=true BOOST_FORCE_BUILD=true TBB_FORCE_BUILD=true OCIO_FORCE_BUILD=true @@ -751,12 +785,6 @@ while true; do ;; --build-python) PYTHON_FORCE_BUILD=true - NUMPY_FORCE_BUILD=true - shift; continue - ;; - --build-numpy) - PYTHON_FORCE_BUILD=true - NUMPY_FORCE_BUILD=true shift; continue ;; --build-boost) @@ -809,7 +837,6 @@ while true; do ;; --force-all) PYTHON_FORCE_REBUILD=true - NUMPY_FORCE_REBUILD=true BOOST_FORCE_REBUILD=true TBB_FORCE_REBUILD=true OCIO_FORCE_REBUILD=true @@ -830,12 +857,8 @@ while true; do ;; --force-python) PYTHON_FORCE_REBUILD=true - NUMPY_FORCE_REBUILD=true shift; continue ;; - --force-numpy) - NUMPY_FORCE_REBUILD=true; shift; continue - ;; --force-boost) BOOST_FORCE_REBUILD=true; shift; continue ;; @@ -887,9 +910,6 @@ while true; do --skip-python) PYTHON_SKIP=true; shift; continue ;; - --skip-numpy) - NUMPY_SKIP=true; shift; continue - ;; --skip-boost) BOOST_SKIP=true; shift; continue ;; @@ -990,11 +1010,10 @@ PRINT "" # This has to be done here, because user might force some versions... PYTHON_SOURCE=( "https://www.python.org/ftp/python/$PYTHON_VERSION/Python-$PYTHON_VERSION.tgz" ) -NUMPY_SOURCE=( "https://github.com/numpy/numpy/releases/download/v$NUMPY_VERSION/numpy-$NUMPY_VERSION.tar.gz" ) _boost_version_nodots=`echo "$BOOST_VERSION" | sed -r 's/\./_/g'` BOOST_SOURCE=( "https://dl.bintray.com/boostorg/release/$BOOST_VERSION/source/boost_$_boost_version_nodots.tar.bz2" ) -BOOST_BUILD_MODULES="--with-system --with-filesystem --with-thread --with-regex --with-locale --with-date_time --with-wave --with-iostreams --with-python --with-program_options" +BOOST_BUILD_MODULES="--with-system --with-filesystem --with-thread --with-regex --with-locale --with-date_time --with-wave --with-iostreams --with-python --with-program_options --with-serialization --with-atomic" TBB_SOURCE=( "https://github.com/oneapi-src/oneTBB/archive/$TBB_VERSION$TBB_VERSION_UPDATE.tar.gz" ) TBB_SOURCE_CMAKE=( "https://raw.githubusercontent.com/wjakob/tbb/master/CMakeLists.txt" ) @@ -1112,19 +1131,24 @@ The following libraries will probably not all be available as packages in your d You can force install_deps to build those with '--build-all' or relevant 'build-foo' options, see '--help' message. You may also want to build them yourself (optional ones are [between brackets]): - * Python $PYTHON_VERSION_MIN (from $PYTHON_SOURCE). - * [NumPy $NUMPY_VERSION_MIN] (from $NUMPY_SOURCE). - * Boost $BOOST_VERSION_MIN (from $BOOST_SOURCE, modules: $BOOST_BUILD_MODULES). - * TBB $TBB_VERSION_MIN (from $TBB_SOURCE). - * [FFMpeg $FFMPEG_VERSION_MIN (needs libvorbis, libogg, libtheora, libx264, libmp3lame, libxvidcore, libvpx, ...)] (from $FFMPEG_SOURCE). - * [OpenColorIO $OCIO_VERSION_MIN] (from $OCIO_SOURCE). - * ILMBase $OPENEXR_VERSION_MIN (from $OPENEXR_SOURCE). - * OpenEXR $OPENEXR_VERSION_MIN (from $OPENEXR_SOURCE). - * OpenImageIO $OIIO_VERSION_MIN (from $OIIO_SOURCE). - * [LLVM $LLVM_VERSION_MIN (with clang)] (from $LLVM_SOURCE, and $LLVM_CLANG_SOURCE). - * [OpenShadingLanguage $OSL_VERSION_MIN] (from $OSL_SOURCE_REPO, branch $OSL_SOURCE_REPO_BRANCH, commit $OSL_SOURCE_REPO_UID). - * [OpenSubDiv $OSD_VERSION_MIN] (from $OSD_SOURCE_REPO, branch $OSD_SOURCE_REPO_BRANCH, commit $OSD_SOURCE_REPO_UID). - * [OpenVDB $OPENVDB_VERSION_MIN] (from $OPENVDB_SOURCE), [Blosc $OPENVDB_BLOSC_VERSION] (from $OPENVDB_BLOSC_SOURCE). + * Python $PYTHON_VERSION (from $PYTHON_SOURCE). + ** [IDNA $PYTHON_IDNA_VERSION] (use pip). + ** [Chardet $PYTHON_CHARDET_VERSION] (use pip). + ** [Urllib3 $PYTHON_URLLIB3_VERSION] (use pip). + ** [Certifi $PYTHON_CERTIFI_VERSION] (use pip). + ** [Requests $PYTHON_REQUESTS_VERSION] (use pip). + ** [NumPy $PYTHON_NUMPY_VERSION] (use pip). + * Boost $BOOST_VERSION (from $BOOST_SOURCE, modules: $BOOST_BUILD_MODULES). + * TBB $TBB_VERSION (from $TBB_SOURCE). + * [FFMpeg $FFMPEG_VERSION (needs libvorbis, libogg, libtheora, libx264, libmp3lame, libxvidcore, libvpx, ...)] (from $FFMPEG_SOURCE). + * [OpenColorIO $OCIO_VERSION] (from $OCIO_SOURCE). + * ILMBase $OPENEXR_VERSION (from $OPENEXR_SOURCE). + * OpenEXR $OPENEXR_VERSION (from $OPENEXR_SOURCE). + * OpenImageIO $OIIO_VERSION (from $OIIO_SOURCE). + * [LLVM $LLVM_VERSION (with clang)] (from $LLVM_SOURCE, and $LLVM_CLANG_SOURCE). + * [OpenShadingLanguage $OSL_VERSION] (from $OSL_SOURCE_REPO, branch $OSL_SOURCE_REPO_BRANCH, commit $OSL_SOURCE_REPO_UID). + * [OpenSubDiv $OSD_VERSION] (from $OSD_SOURCE_REPO, branch $OSD_SOURCE_REPO_BRANCH, commit $OSD_SOURCE_REPO_UID). + * [OpenVDB $OPENVDB_VERSION] (from $OPENVDB_SOURCE), [Blosc $OPENVDB_BLOSC_VERSION] (from $OPENVDB_BLOSC_SOURCE). * [OpenCollada $OPENCOLLADA_VERSION] (from $OPENCOLLADA_SOURCE). * [Embree $EMBREE_VERSION] (from $EMBREE_SOURCE). * [OpenImageDenoise $OIDN_VERSION] (from $OIDN_SOURCE). @@ -1309,18 +1333,22 @@ magic_compile_set() { # Note: should clean nicely in $INST, but not in $SRC, when we switch to a new version of a lib... _clean() { - rm -rf `readlink -f $_inst_shortcut` + if [ $_inst_shortcut ]; then + rm -rf `readlink -f $_inst_shortcut` + rm -rf $_inst_shortcut + fi # Only remove $_src dir when not using git repo (avoids to re-clone the whole repo every time!!!). if [ $_git == false ]; then rm -rf $_src fi rm -rf $_inst - rm -rf $_inst_shortcut } _create_inst_shortcut() { - rm -f $_inst_shortcut - ln -s $_inst $_inst_shortcut + if [ $_inst_shortcut ]; then + rm -f $_inst_shortcut + ln -s $_inst $_inst_shortcut + fi } # ldconfig @@ -1350,14 +1378,19 @@ _init_python() { } _update_deps_python() { - : + if [ "$1" = true ]; then + BOOST_FORCE_BUILD=true + fi + if [ "$2" = true ]; then + BOOST_FORCE_REBUILD=true + fi } clean_Python() { - clean_Numpy _init_python if [ -d $_inst ]; then - _update_deps_python + # Force rebuilding the dependencies if needed. + _update_deps_python false true fi _clean } @@ -1369,9 +1402,12 @@ compile_Python() { fi # To be changed each time we make edits that would modify the compiled result! - py_magic=1 + py_magic=3 _init_python + # Force having own builds for the dependencies. + _update_deps_python true false + # Clean install if needed! magic_compile_check python-$PYTHON_VERSION $py_magic if [ $? -eq 1 -o "$PYTHON_FORCE_REBUILD" = true ]; then @@ -1380,10 +1416,9 @@ compile_Python() { if [ ! -d $_inst ]; then INFO "Building Python-$PYTHON_VERSION" - _is_building=true - # Rebuild dependencies as well! - _update_deps_python + # Force rebuilding the dependencies. + _update_deps_python true true prepare_inst @@ -1413,96 +1448,25 @@ compile_Python() { magic_compile_set python-$PYTHON_VERSION $py_magic + PYTHON_VERSION_INSTALLED=$PYTHON_VERSION_SHORT + cd $CWD INFO "Done compiling Python-$PYTHON_VERSION!" - _is_building=false else INFO "Own Python-$PYTHON_VERSION is up to date, nothing to do!" INFO "If you want to force rebuild of this lib, use the --force-python option." fi run_ldconfig "python-$PYTHON_VERSION_SHORT" -} - -# ---------------------------------------------------------------------------- -# Build Numpy - -_init_numpy() { - _src=$SRC/numpy-$NUMPY_VERSION - _git=false - _inst=$INST/numpy-$NUMPY_VERSION - _python=$INST/python-$PYTHON_VERSION_SHORT - _site=lib/python$PYTHON_VERSION_SHORT/site-packages - _inst_shortcut=$_python/$_site/numpy -} - -_update_deps_numpy() { - : -} -clean_Numpy() { - _init_numpy - if [ -d $_inst ]; then - _update_deps_numpy - fi - _clean -} - -compile_Numpy() { - if [ "$NO_BUILD" = true ]; then - WARNING "--no-build enabled, Numpy will not be compiled!" - return - fi - - # To be changed each time we make edits that would modify the compiled result! - numpy_magic=0 - _init_numpy - - # Clean install if needed! - magic_compile_check numpy-$NUMPY_VERSION $numpy_magic - if [ $? -eq 1 -o "$NUMPY_FORCE_REBUILD" = true ]; then - clean_Numpy - fi - - if [ ! -d $_inst ]; then - INFO "Building Numpy-$NUMPY_VERSION" - _is_building=true - - # Rebuild dependencies as well! - _update_deps_numpy - - prepare_inst - - if [ ! -d $_src ]; then - mkdir -p $SRC - download NUMPY_SOURCE[@] $_src.tar.gz - - INFO "Unpacking Numpy-$NUMPY_VERSION" - tar -C $SRC -xf $_src.tar.gz - fi - - cd $_src - - $_python/bin/python3 setup.py install --old-and-unmanageable --prefix=$_inst - - if [ -d $_inst ]; then - # Can't use _create_inst_shortcut here... - rm -f $_inst_shortcut - ln -s $_inst/$_site/numpy $_inst_shortcut - else - ERROR "Numpy-$NUMPY_VERSION failed to compile, exiting" - exit 1 - fi - - magic_compile_set numpy-$NUMPY_VERSION $numpy_magic - - cd $CWD - INFO "Done compiling Numpy-$NUMPY_VERSION!" - _is_building=false - else - INFO "Own Numpy-$NUMPY_VERSION is up to date, nothing to do!" - INFO "If you want to force rebuild of this lib, use the --force-numpy option." - fi + # Extra step: install required modules with pip. + _python="$_inst/bin/python3" + $_python -m pip install --upgrade pip + for module in "${PYTHON_MODULES_PIP[@]}" + do + PRINT "" + $_python -m pip install $module --no-binary :all: + done } # ---------------------------------------------------------------------------- @@ -1516,22 +1480,25 @@ _init_boost() { } _update_deps_boost() { - OIIO_FORCE_REBUILD=true - OSL_FORCE_REBUILD=true - OPENVDB_FORCE_REBUILD=true - ALEMBIC_FORCE_REBUILD=true - if [ "$_is_building" = true ]; then + if [ "$1" = true ]; then OIIO_FORCE_BUILD=true OSL_FORCE_BUILD=true OPENVDB_FORCE_BUILD=true ALEMBIC_FORCE_BUILD=true fi + if [ "$2" = true ]; then + OIIO_FORCE_REBUILD=true + OSL_FORCE_REBUILD=true + OPENVDB_FORCE_REBUILD=true + ALEMBIC_FORCE_REBUILD=true + fi } clean_Boost() { _init_boost if [ -d $_inst ]; then - _update_deps_boost + # Force rebuilding the dependencies if needed. + _update_deps_boost false true fi _clean } @@ -1543,10 +1510,13 @@ compile_Boost() { fi # To be changed each time we make edits that would modify the compiled result! - boost_magic=11 + boost_magic=14 _init_boost + # Force having own builds for the dependencies. + _update_deps_boost true false + # Clean install if needed! magic_compile_check boost-$BOOST_VERSION $boost_magic if [ $? -eq 1 -o "$BOOST_FORCE_REBUILD" = true ]; then @@ -1555,10 +1525,9 @@ compile_Boost() { if [ ! -d $_inst ]; then INFO "Building Boost-$BOOST_VERSION" - _is_building=true - # Rebuild dependencies as well! - _update_deps_boost + # Force rebuilding the dependencies. + _update_deps_boost true true prepare_inst @@ -1571,7 +1540,11 @@ compile_Boost() { cd $_src if [ ! -f $_src/b2 ]; then - ./bootstrap.sh + if [ -d $INST/python-$PYTHON_VERSION_INSTALLED ]; then + ./bootstrap.sh --with-python-root="$INST/python-$PYTHON_VERSION_INSTALLED" + else + ./bootstrap.sh + fi fi ./b2 -j$THREADS -a $BOOST_BUILD_MODULES \ --prefix=$_inst --disable-icu boost.locale.icu=off install @@ -1588,7 +1561,6 @@ compile_Boost() { cd $CWD INFO "Done compiling Boost-$BOOST_VERSION!" - _is_building=false else INFO "Own Boost-$BOOST_VERSION is up to date, nothing to do!" INFO "If you want to force rebuild of this lib, use the --force-boost option." @@ -1609,24 +1581,27 @@ _init_tbb() { } _update_deps_tbb() { - OSD_FORCE_REBUILD=true - OPENVDB_FORCE_REBUILD=true - USD_FORCE_REBUILD=true - EMBREE_FORCE_REBUILD=true - OIDN_FORCE_REBUILD=true - if [ "$_is_building" = true ]; then + if [ "$1" = true ]; then OSD_FORCE_BUILD=true OPENVDB_FORCE_BUILD=true USD_FORCE_BUILD=true EMBREE_FORCE_BUILD=true OIDN_FORCE_BUILD=true fi + if [ "$2" = true ]; then + OSD_FORCE_REBUILD=true + OPENVDB_FORCE_REBUILD=true + USD_FORCE_REBUILD=true + EMBREE_FORCE_REBUILD=true + OIDN_FORCE_REBUILD=true + fi } clean_TBB() { _init_tbb if [ -d $_inst ]; then - _update_deps_tbb + # Force rebuilding the dependencies if needed. + _update_deps_tbb false true fi _clean } @@ -1641,6 +1616,9 @@ compile_TBB() { tbb_magic=0 _init_tbb + # Force having own builds for the dependencies. + _update_deps_tbb true false + # Clean install if needed! magic_compile_check tbb-$TBB_VERSION $tbb_magic if [ $? -eq 1 -o "$TBB_FORCE_REBUILD" = true ]; then @@ -1649,10 +1627,9 @@ compile_TBB() { if [ ! -d $_inst ]; then INFO "Building TBB-$TBB_VERSION$TBB_VERSION_UPDATE" - _is_building=true - # Rebuild dependencies as well! - _update_deps_tbb + # Force rebuilding the dependencies. + _update_deps_tbb true true prepare_inst @@ -1713,7 +1690,6 @@ compile_TBB() { cd $CWD INFO "Done compiling TBB-$TBB_VERSION$TBB_VERSION_UPDATE!" - _is_building=false else INFO "Own TBB-$TBB_VERSION$TBB_VERSION_UPDATE is up to date, nothing to do!" INFO "If you want to force rebuild of this lib, use the --force-tbb option." @@ -1743,7 +1719,8 @@ _update_deps_ocio() { clean_OCIO() { _init_ocio if [ -d $_inst ]; then - _update_deps_ocio + # Force rebuilding the dependencies if needed. + _update_deps_ocio false true fi _clean } @@ -1758,6 +1735,9 @@ compile_OCIO() { ocio_magic=2 _init_ocio + # Force having own builds for the dependencies. + _update_deps_ocio true false + # Clean install if needed! magic_compile_check ocio-$OCIO_VERSION $ocio_magic if [ $? -eq 1 -o "$OCIO_FORCE_REBUILD" = true ]; then @@ -1766,10 +1746,9 @@ compile_OCIO() { if [ ! -d $_inst ]; then INFO "Building OpenColorIO-$OCIO_VERSION" - _is_building=true - # Rebuild dependencies as well! - _update_deps_ocio + # Force rebuilding the dependencies. + _update_deps_ocio true true prepare_inst @@ -1842,7 +1821,6 @@ compile_OCIO() { cd $CWD INFO "Done compiling OpenColorIO-$OCIO_VERSION!" - _is_building=false else INFO "Own OpenColorIO-$OCIO_VERSION is up to date, nothing to do!" INFO "If you want to force rebuild of this lib, use the --force-ocio option." @@ -1862,18 +1840,21 @@ _init_openexr() { } _update_deps_openexr() { - OIIO_FORCE_REBUILD=true - ALEMBIC_FORCE_REBUILD=true - if [ "$_is_building" = true ]; then + if [ "$1" = true ]; then OIIO_FORCE_BUILD=true ALEMBIC_FORCE_BUILD=true fi + if [ "$2" = true ]; then + OIIO_FORCE_REBUILD=true + ALEMBIC_FORCE_REBUILD=true + fi } clean_OPENEXR() { _init_openexr if [ -d $_inst ]; then - _update_deps_openexr + # Force rebuilding the dependencies if needed. + _update_deps_openexr false true fi _clean } @@ -1886,6 +1867,10 @@ compile_OPENEXR() { # To be changed each time we make edits that would modify the compiled result! openexr_magic=15 + _init_openexr + + # Force having own builds for the dependencies. + _update_deps_openexr true false # Clean install if needed! magic_compile_check openexr-$OPENEXR_VERSION $openexr_magic @@ -1894,14 +1879,12 @@ compile_OPENEXR() { fi PRINT "" - _init_openexr if [ ! -d $_inst ]; then INFO "Building ILMBase-$OPENEXR_VERSION and OpenEXR-$OPENEXR_VERSION" - _is_building=true - # Rebuild dependencies as well! - _update_deps_openexr + # Force rebuilding the dependencies. + _update_deps_openexr true true prepare_inst @@ -1969,7 +1952,6 @@ compile_OPENEXR() { cd $CWD INFO "Done compiling OpenEXR-$OPENEXR_VERSION!" - _is_building=false else INFO "Own OpenEXR-$OPENEXR_VERSION is up to date, nothing to do!" INFO "If you want to force rebuild of this lib, use the --force-openexr option." @@ -1992,16 +1974,19 @@ _init_oiio() { } _update_deps_oiio() { - OSL_FORCE_REBUILD=true - if [ "$_is_building" = true ]; then + if [ "$1" = true ]; then OSL_FORCE_BUILD=true fi + if [ "$2" = true ]; then + OSL_FORCE_REBUILD=true + fi } clean_OIIO() { _init_oiio if [ -d $_inst ]; then - _update_deps_oiio + # Force rebuilding the dependencies if needed. + _update_deps_oiio false true fi _clean } @@ -2016,6 +2001,9 @@ compile_OIIO() { oiio_magic=17 _init_oiio + # Force having own builds for the dependencies. + _update_deps_oiio true false + # Clean install if needed! magic_compile_check oiio-$OIIO_VERSION $oiio_magic if [ $? -eq 1 -o "$OIIO_FORCE_REBUILD" = true ]; then @@ -2024,10 +2012,9 @@ compile_OIIO() { if [ ! -d $_inst ]; then INFO "Building OpenImageIO-$OIIO_VERSION" - _is_building=true - # Rebuild dependencies as well! - _update_deps_oiio + # Force rebuilding the dependencies. + _update_deps_oiio true true prepare_inst @@ -2091,7 +2078,7 @@ compile_OIIO() { #cmake_d="$cmake_d -D CMAKE_VERBOSE_MAKEFILE=ON" if [ -d $INST/boost ]; then - cmake_d="$cmake_d -D BOOST_ROOT=$INST/boost -D Boost_NO_SYSTEM_PATHS=ON" + cmake_d="$cmake_d -D BOOST_ROOT=$INST/boost -D Boost_NO_SYSTEM_PATHS=ON -D Boost_NO_BOOST_CMAKE=ON" fi # Looks like we do not need ocio in oiio for now... @@ -2121,7 +2108,6 @@ compile_OIIO() { cd $CWD INFO "Done compiling OpenImageIO-$OIIO_VERSION!" - _is_building=false else INFO "Own OpenImageIO-$OIIO_VERSION is up to date, nothing to do!" INFO "If you want to force rebuild of this lib, use the --force-oiio option." @@ -2143,16 +2129,19 @@ _init_llvm() { } _update_deps_llvm() { - OSL_FORCE_REBUILD=true - if [ "$_is_building" = true ]; then + if [ "$1" = true ]; then OSL_FORCE_BUILD=true fi + if [ "$2" = true ]; then + OSL_FORCE_REBUILD=true + fi } clean_LLVM() { _init_llvm if [ -d $_inst ]; then - _update_deps_llvm + # Force rebuilding the dependencies if needed. + _update_deps_llvm false true fi _clean } @@ -2167,6 +2156,9 @@ compile_LLVM() { llvm_magic=3 _init_llvm + # Force having own builds for the dependencies. + _update_deps_llvm true false + # Clean install if needed! magic_compile_check llvm-$LLVM_VERSION $llvm_magic if [ $? -eq 1 -o "$LLVM_FORCE_REBUILD" = true ]; then @@ -2175,10 +2167,9 @@ compile_LLVM() { if [ ! -d $_inst ]; then INFO "Building LLVM-$LLVM_VERSION (CLANG included!)" - _is_building=true - # Rebuild dependencies as well! - _update_deps_llvm + # Force rebuilding the dependencies. + _update_deps_llvm true true prepare_inst @@ -2237,7 +2228,6 @@ compile_LLVM() { cd $CWD INFO "Done compiling LLVM-$LLVM_VERSION (CLANG included)!" - _is_building=false else INFO "Own LLVM-$LLVM_VERSION (CLANG included) is up to date, nothing to do!" INFO "If you want to force rebuild of this lib, use the --force-llvm option." @@ -2261,7 +2251,8 @@ _update_deps_osl() { clean_OSL() { _init_osl if [ -d $_inst ]; then - _update_deps_osl + # Force rebuilding the dependencies if needed. + _update_deps_osl false true fi _clean } @@ -2276,6 +2267,9 @@ compile_OSL() { osl_magic=21 _init_osl + # Force having own builds for the dependencies. + _update_deps_osl true false + # Clean install if needed! magic_compile_check osl-$OSL_VERSION $osl_magic if [ $? -eq 1 -o "$OSL_FORCE_REBUILD" = true ]; then @@ -2285,10 +2279,9 @@ compile_OSL() { if [ ! -d $_inst ]; then INFO "Building OpenShadingLanguage-$OSL_VERSION" - _is_building=true - # Rebuild dependencies as well! - _update_deps_osl + # Force rebuilding the dependencies. + _update_deps_osl true true prepare_inst @@ -2348,7 +2341,7 @@ compile_OSL() { fi if [ -d $INST/boost ]; then - cmake_d="$cmake_d -D BOOST_ROOT=$INST/boost -D Boost_NO_SYSTEM_PATHS=ON" + cmake_d="$cmake_d -D BOOST_ROOT=$INST/boost -D Boost_NO_SYSTEM_PATHS=ON -D Boost_NO_BOOST_CMAKE=ON" fi if [ -d $INST/oiio ]; then @@ -2385,7 +2378,6 @@ compile_OSL() { cd $CWD INFO "Done compiling OpenShadingLanguage-$OSL_VERSION!" - _is_building=false else INFO "Own OpenShadingLanguage-$OSL_VERSION is up to date, nothing to do!" INFO "If you want to force rebuild of this lib, use the --force-osl option." @@ -2411,7 +2403,8 @@ _update_deps_osd() { clean_OSD() { _init_osd if [ -d $_inst ]; then - _update_deps_osd + # Force rebuilding the dependencies if needed. + _update_deps_osd false true fi _clean } @@ -2426,6 +2419,9 @@ compile_OSD() { osd_magic=2 _init_osd + # Force having own builds for the dependencies. + _update_deps_osd true false + # Clean install if needed! magic_compile_check osd-$OSD_VERSION $osd_magic if [ $? -eq 1 -o "$OSD_FORCE_REBUILD" = true ]; then @@ -2434,10 +2430,9 @@ compile_OSD() { if [ ! -d $_inst ]; then INFO "Building OpenSubdiv-$OSD_VERSION" - _is_building=true - # Rebuild dependencies as well! - _update_deps_osd + # Force rebuilding the dependencies. + _update_deps_osd true true prepare_inst @@ -2499,7 +2494,6 @@ compile_OSD() { cd $CWD INFO "Done compiling OpenSubdiv-$OSD_VERSION!" - _is_building=false else INFO "Own OpenSubdiv-$OSD_VERSION is up to date, nothing to do!" INFO "If you want to force rebuild of this lib, use the --force-osd option." @@ -2519,16 +2513,19 @@ _init_blosc() { } _update_deps_blosc() { - OPENVDB_FORCE_REBUILD=true - if [ "$_is_building" = true ]; then + if [ "$1" = true ]; then OPENVDB_FORCE_BUILD=true fi + if [ "$2" = true ]; then + OPENVDB_FORCE_REBUILD=true + fi } clean_BLOSC() { _init_blosc if [ -d $_inst ]; then - _update_deps_blosc + # Force rebuilding the dependencies if needed. + _update_deps_blosc false true fi _clean } @@ -2543,6 +2540,9 @@ compile_BLOSC() { blosc_magic=0 _init_blosc + # Force having own builds for the dependencies. + _update_deps_blosc true false + # Clean install if needed! magic_compile_check blosc-$OPENVDB_BLOSC_VERSION $blosc_magic if [ $? -eq 1 -o "$OPENVDB_FORCE_REBUILD" = true ]; then @@ -2552,10 +2552,9 @@ compile_BLOSC() { if [ ! -d $_inst ]; then INFO "Building Blosc-$OPENVDB_BLOSC_VERSION" - _is_building=true - # Rebuild dependencies as well! - _update_deps_blosc + # Force rebuilding the dependencies. + _update_deps_blosc true true prepare_inst @@ -2597,7 +2596,6 @@ compile_BLOSC() { fi cd $CWD INFO "Done compiling Blosc-$OPENVDB_BLOSC_VERSION!" - _is_building=false else INFO "Own Blosc-$OPENVDB_BLOSC_VERSION is up to date, nothing to do!" INFO "If you want to force rebuild of this lib (and openvdb), use the --force-openvdb option." @@ -2624,7 +2622,8 @@ _update_deps_nanovdb() { clean_nanovdb() { _init_nanovdb if [ -d $_inst ]; then - _update_deps_nanovdb + # Force rebuilding the dependencies if needed. + _update_deps_nanovdb false true fi _git=true # Mere trick to prevent clean from removing $_src... _clean @@ -2635,6 +2634,9 @@ install_NanoVDB() { nanovdb_magic=1 _init_nanovdb + # Force having own builds for the dependencies. + _update_deps_nanovdb true false + # Clean install if needed! magic_compile_check nanovdb-$OPENVDB_VERSION $nanovdb_magic if [ $? -eq 1 ]; then @@ -2643,10 +2645,9 @@ install_NanoVDB() { if [ ! -d $_inst ]; then INFO "Installing NanoVDB v$OPENVDB_VERSION" - _is_building=true - # Rebuild dependencies as well! - _update_deps_nanovdb + # Force rebuilding the dependencies. + _update_deps_nanovdb true true prepare_inst @@ -2703,7 +2704,6 @@ install_NanoVDB() { cd $CWD INFO "Done compiling NanoVDB-v$OPENVDB_VERSION!" - _is_building=false else INFO "Own NanoVDB-v$OPENVDB_VERSION is up to date, nothing to do!" fi @@ -2729,7 +2729,8 @@ _update_deps_openvdb() { clean_OPENVDB() { _init_openvdb if [ -d $_inst ]; then - _update_deps_openvdb + # Force rebuilding the dependencies if needed. + _update_deps_openvdb false true fi _clean } @@ -2747,6 +2748,9 @@ compile_OPENVDB() { openvdb_magic=2 _init_openvdb + # Force having own builds for the dependencies. + _update_deps_openvdb true false + # Clean install if needed! magic_compile_check openvdb-$OPENVDB_VERSION $openvdb_magic if [ $? -eq 1 -o "$OPENVDB_FORCE_REBUILD" = true ]; then @@ -2755,10 +2759,9 @@ compile_OPENVDB() { if [ ! -d $_inst ]; then INFO "Building OpenVDB-$OPENVDB_VERSION (with NanoVDB: $WITH_NANOVDB)" - _is_building=true - # Rebuild dependencies as well! - _update_deps_openvdb + # Force rebuilding the dependencies. + _update_deps_openvdb true true prepare_inst @@ -2803,6 +2806,7 @@ compile_OPENVDB() { cmake_d="$cmake_d -D Boost_USE_MULTITHREADED=ON" cmake_d="$cmake_d -D Boost_NO_SYSTEM_PATHS=ON" cmake_d="$cmake_d -D Boost_NO_BOOST_CMAKE=ON" + cmake_d="$cmake_d -D Boost_NO_BOOST_CMAKE=ON" fi if [ -d $INST/tbb ]; then cmake_d="$cmake_d -D TBB_ROOT=$INST/tbb" @@ -2833,7 +2837,6 @@ compile_OPENVDB() { cd $CWD INFO "Done compiling OpenVDB-$OPENVDB_VERSION!" - _is_building=false else INFO "Own OpenVDB-$OPENVDB_VERSION is up to date, nothing to do!" INFO "If you want to force rebuild of this lib, use the --force-openvdb option." @@ -2863,7 +2866,8 @@ _update_deps_alembic() { clean_ALEMBIC() { _init_alembic if [ -d $_inst ]; then - _update_deps_alembic + # Force rebuilding the dependencies if needed. + _update_deps_alembic false true fi _clean } @@ -2878,6 +2882,9 @@ compile_ALEMBIC() { alembic_magic=2 _init_alembic + # Force having own builds for the dependencies. + _update_deps_alembic true false + # Clean install if needed! magic_compile_check alembic-$ALEMBIC_VERSION $alembic_magic if [ $? -eq 1 -o "$ALEMBIC_FORCE_REBUILD" = true ]; then @@ -2886,10 +2893,9 @@ compile_ALEMBIC() { if [ ! -d $_inst ]; then INFO "Building Alembic-$ALEMBIC_VERSION" - _is_building=true - # Rebuild dependencies as well! - _update_deps_alembic + # Force rebuilding the dependencies. + _update_deps_alembic true true prepare_inst @@ -2944,7 +2950,6 @@ compile_ALEMBIC() { cd $CWD INFO "Done compiling Alembic-$ALEMBIC_VERSION!" - _is_building=false else INFO "Own Alembic-$ALEMBIC_VERSION is up to date, nothing to do!" INFO "If you want to force rebuild of this lib, use the --force-alembic option." @@ -2968,7 +2973,8 @@ _update_deps_usd() { clean_USD() { _init_usd if [ -d $_inst ]; then - _update_deps_usd + # Force rebuilding the dependencies if needed. + _update_deps_usd false true fi _clean } @@ -2983,6 +2989,9 @@ compile_USD() { usd_magic=1 _init_usd + # Force having own builds for the dependencies. + _update_deps_usd true false + # Clean install if needed! magic_compile_check usd-$USD_VERSION $usd_magic if [ $? -eq 1 -o "$USD_FORCE_REBUILD" = true ]; then @@ -2991,10 +3000,9 @@ compile_USD() { if [ ! -d $_inst ]; then INFO "Building USD-$USD_VERSION" - _is_building=true - # Rebuild dependencies as well! - _update_deps_usd + # Force rebuilding the dependencies. + _update_deps_usd true true prepare_inst @@ -3042,7 +3050,6 @@ compile_USD() { cd $CWD INFO "Done compiling USD-$USD_VERSION!" - _is_building=false else INFO "Own USD-$USD_VERSION is up to date, nothing to do!" INFO "If you want to force rebuild of this lib, use the --force-usd option." @@ -3067,7 +3074,8 @@ _update_deps_collada() { clean_OpenCOLLADA() { _init_opencollada if [ -d $_inst ]; then - _update_deps_collada + # Force rebuilding the dependencies if needed. + _update_deps_collada false true fi _clean } @@ -3082,6 +3090,9 @@ compile_OpenCOLLADA() { opencollada_magic=9 _init_opencollada + # Force having own builds for the dependencies. + _update_deps_opencollada true false + # Clean install if needed! magic_compile_check opencollada-$OPENCOLLADA_VERSION $opencollada_magic if [ $? -eq 1 -o "$OPENCOLLADA_FORCE_REBUILD" = true ]; then @@ -3090,10 +3101,9 @@ compile_OpenCOLLADA() { if [ ! -d $_inst ]; then INFO "Building OpenCOLLADA-$OPENCOLLADA_VERSION" - _is_building=true - # Rebuild dependencies as well! - _update_deps_collada + # Force rebuilding the dependencies. + _update_deps_collada true true prepare_inst @@ -3149,7 +3159,6 @@ compile_OpenCOLLADA() { cd $CWD INFO "Done compiling OpenCOLLADA-$OPENCOLLADA_VERSION!" - _is_building=false else INFO "Own OpenCOLLADA-$OPENCOLLADA_VERSION is up to date, nothing to do!" INFO "If you want to force rebuild of this lib, use the --force-opencollada option." @@ -3173,7 +3182,8 @@ _update_deps_embree() { clean_Embree() { _init_embree if [ -d $_inst ]; then - _update_deps_embree + # Force rebuilding the dependencies if needed. + _update_deps_embree false true fi _clean } @@ -3188,6 +3198,9 @@ compile_Embree() { embree_magic=10 _init_embree + # Force having own builds for the dependencies. + _update_deps_embree true false + # Clean install if needed! magic_compile_check embree-$EMBREE_VERSION $embree_magic if [ $? -eq 1 -o "$EMBREE_FORCE_REBUILD" = true ]; then @@ -3196,10 +3209,9 @@ compile_Embree() { if [ ! -d $_inst ]; then INFO "Building Embree-$EMBREE_VERSION" - _is_building=true - # Rebuild dependencies as well! - _update_deps_embree + # Force rebuilding the dependencies. + _update_deps_embree true true prepare_inst @@ -3262,7 +3274,6 @@ compile_Embree() { cd $CWD INFO "Done compiling Embree-$EMBREE_VERSION!" - _is_building=false else INFO "Own Embree-$EMBREE_VERSION is up to date, nothing to do!" INFO "If you want to force rebuild of this lib, use the --force-embree option." @@ -3279,16 +3290,19 @@ _init_ispc() { } _update_deps_ispc() { - OIDN_FORCE_REBUILD=true - if [ "$_is_building" = true ]; then + if [ "$1" = true ]; then OIDN_FORCE_BUILD=true fi + if [ "$2" = true ]; then + OIDN_FORCE_REBUILD=true + fi } clean_ispc() { _init_ispc if [ -d $_inst ]; then - _update_deps_ispc + # Force rebuilding the dependencies if needed. + _update_deps_ispc false true fi _clean } @@ -3298,6 +3312,9 @@ install_ISPC() { ispc_magic=0 _init_ispc + # Force having own builds for the dependencies. + _update_deps_ispc true false + # Clean install if needed! magic_compile_check ispc-$ISPC_VERSION $ispc_magic if [ $? -eq 1 ]; then @@ -3306,10 +3323,9 @@ install_ISPC() { if [ ! -d $_inst ]; then INFO "Installing Implicit SPMD Program Compiler v$ISPC_VERSION" - _is_building=true - # Rebuild dependencies as well! - _update_deps_ispc + # Force rebuilding the dependencies. + _update_deps_ispc true true prepare_inst @@ -3335,7 +3351,6 @@ install_ISPC() { cd $CWD INFO "Done compiling ISPC-v$ISPC_VERSION!" - _is_building=false else INFO "Own ISPC-v$ISPC_VERSION is up to date, nothing to do!" fi @@ -3359,7 +3374,8 @@ _update_deps_oidn() { clean_oidn() { _init_oidn if [ -d $_inst ]; then - _update_deps_oidn + # Force rebuilding the dependencies if needed. + _update_deps_oidn false true fi _clean } @@ -3377,6 +3393,9 @@ compile_OIDN() { oidn_magic=9 _init_oidn + # Force having own builds for the dependencies. + _update_deps_oidn true false + # Clean install if needed! magic_compile_check oidn-$OIDN_VERSION $oidn_magic if [ $? -eq 1 -o "$OIDN_FORCE_REBUILD" = true ]; then @@ -3385,10 +3404,9 @@ compile_OIDN() { if [ ! -d $_inst ]; then INFO "Building OpenImageDenoise-$OIDN_VERSION" - _is_building=true - # Rebuild dependencies as well! - _update_deps_oidn + # Force rebuilding the dependencies. + _update_deps_oidn true true prepare_inst @@ -3447,7 +3465,6 @@ compile_OIDN() { cd $CWD INFO "Done compiling OpenImageDenoise-$OIDN_VERSION!" - _is_building=false else INFO "Own OpenImageDenoise-$OIDN_VERSION is up to date, nothing to do!" INFO "If you want to force rebuild of this lib, use the --force-oidn option." @@ -3472,7 +3489,8 @@ _update_deps_ffmpeg() { clean_FFmpeg() { _init_ffmpeg if [ -d $_inst ]; then - _update_deps_ffmpeg + # Force rebuilding the dependencies if needed. + _update_deps_ffmpeg false true fi _clean } @@ -3487,6 +3505,9 @@ compile_FFmpeg() { ffmpeg_magic=5 _init_ffmpeg + # Force having own builds for the dependencies. + _update_deps_ffmpeg true false + # Clean install if needed! magic_compile_check ffmpeg-$FFMPEG_VERSION $ffmpeg_magic if [ $? -eq 1 -o "$FFMPEG_FORCE_REBUILD" = true ]; then @@ -3495,10 +3516,9 @@ compile_FFmpeg() { if [ ! -d $_inst ]; then INFO "Building ffmpeg-$FFMPEG_VERSION" - _is_building=true - # Rebuild dependencies as well! - _update_deps_ffmpeg + # Force rebuilding the dependencies. + _update_deps_ffmpeg true true prepare_inst @@ -3577,7 +3597,6 @@ compile_FFmpeg() { cd $CWD INFO "Done compiling ffmpeg-$FFMPEG_VERSION!" - _is_building=false else INFO "Own ffmpeg-$FFMPEG_VERSION is up to date, nothing to do!" INFO "If you want to force rebuild of this lib, use the --force-ffmpeg option." @@ -3601,7 +3620,8 @@ _update_deps_xr_openxr_sdk() { clean_XR_OpenXR_SDK() { _init_xr_openxr_sdk if [ -d $_inst ]; then - _update_deps_xr_openxr_sdk + # Force rebuilding the dependencies if needed. + _update_deps_xr_openxr_sdk false true fi _clean } @@ -3616,6 +3636,9 @@ compile_XR_OpenXR_SDK() { xr_openxr_magic=2 _init_xr_openxr_sdk + # Force having own builds for the dependencies. + _update_deps_xr_openxr_sdk true false + # Clean install if needed! magic_compile_check xr-openxr-$XR_OPENXR_VERSION $xr_openxr_magic if [ $? -eq 1 -o "$XR_OPENXR_FORCE_REBUILD" = true ]; then @@ -3624,10 +3647,9 @@ compile_XR_OpenXR_SDK() { if [ ! -d $_inst ]; then INFO "Building XR-OpenXR-SDK-$XR_OPENXR_VERSION" - _is_building=true - # Rebuild dependencies as well! - _update_deps_xr_openxr_sdk + # Force rebuilding the dependencies. + _update_deps_xr_openxr_sdk true true prepare_inst @@ -3688,7 +3710,6 @@ compile_XR_OpenXR_SDK() { cd $CWD INFO "Done compiling XR-OpenXR-SDK-$XR_OPENXR_VERSION!" - _is_building=false else INFO "Own XR-OpenXR-SDK-$XR_OPENXR_VERSION is up to date, nothing to do!" INFO "If you want to force rebuild of this lib, use the --force-xr-openxr option." @@ -3950,9 +3971,9 @@ install_DEB() { PRINT "" _do_compile_python=false if [ "$PYTHON_SKIP" = true ]; then - WARNING "Skipping Python/NumPy installation, as requested..." + WARNING "Skipping Python installation, as requested..." elif [ "$PYTHON_FORCE_BUILD" = true ]; then - INFO "Forced Python/NumPy building, as requested..." + INFO "Forced Python building, as requested..." _do_compile_python=true else check_package_version_ge_lt_DEB python3-dev $PYTHON_VERSION_MIN $PYTHON_VERSION_MAX @@ -3962,17 +3983,21 @@ install_DEB() { install_packages_DEB python3-dev clean_Python PRINT "" - if [ "$NUMPY_SKIP" = true ]; then - WARNING "Skipping NumPy installation, as requested..." - else - check_package_DEB python3-numpy + + for module in "${PYTHON_MODULES_PACKAGES[@]}" + do + module=($module) + package="python3-${module[0]}" + package_vmin=${module[1]} + package_vmax=${module[2]} + check_package_version_ge_lt_DEB "$package" $package_vmin $package_vmax if [ $? -eq 0 ]; then - install_packages_DEB python3-numpy + install_packages_DEB "$package" else - WARNING "Sorry, using python package but no valid numpy package available!" \ - " Use --build-numpy to force building of both Python and NumPy." + WARNING "Sorry, using python package but no valid $package package available!" \ + " Use --build-python to force building of Python and use pip to get the packages." fi - fi + done else _do_compile_python=true fi @@ -3981,12 +4006,6 @@ install_DEB() { if $_do_compile_python; then install_packages_DEB libffi-dev compile_Python - PRINT "" - if [ "$NUMPY_SKIP" = true ]; then - WARNING "Skipping NumPy installation, as requested..." - else - compile_Numpy - fi fi @@ -4586,7 +4605,7 @@ install_RPM() { if [ "$PYTHON_SKIP" = true ]; then WARNING "Skipping Python installation, as requested..." elif [ "$PYTHON_FORCE_BUILD" = true ]; then - INFO "Forced Python/NumPy building, as requested..." + INFO "Forced Python building, as requested..." _do_compile_python=true else check_package_version_ge_lt_RPM python3-devel $PYTHON_VERSION_MIN $PYTHON_VERSION_MAX @@ -4595,18 +4614,21 @@ install_RPM() { install_packages_RPM python3-devel clean_Python - PRINT "" - if [ "$NUMPY_SKIP" = true ]; then - WARNING "Skipping NumPy installation, as requested..." - else - check_package_version_ge_lt_RPM python3-numpy $NUMPY_VERSION_MIN $NUMPY_VERSION_MAX + + for module in "${PYTHON_MODULES_PACKAGES[@]}" + do + module=($module) + package="python3-${module[0]}" + package_vmin=${module[1]} + package_vmax=${module[2]} + check_package_version_ge_lt_RPM "$package" $package_vmin $package_vmax if [ $? -eq 0 ]; then - install_packages_RPM python3-numpy + install_packages_RPM "$package" else - WARNING "Sorry, using python package but no valid numpy package available!" \ - " Use --build-numpy to force building of both Python and NumPy." + WARNING "Sorry, using python package but no valid $package package available!" \ + " Use --build-python to force building of Python and use pip to get the packages." fi - fi + done else _do_compile_python=true fi @@ -4615,12 +4637,6 @@ install_RPM() { if [ "$_do_compile_python" = true ]; then install_packages_RPM libffi-devel compile_Python - PRINT "" - if [ "$NUMPY_SKIP" = true ]; then - WARNING "Skipping NumPy installation, as requested..." - else - compile_Numpy - fi fi @@ -5127,7 +5143,7 @@ install_ARCH() { if [ "$PYTHON_SKIP" = true ]; then WARNING "Skipping Python installation, as requested..." elif [ "$PYTHON_FORCE_BUILD" = true ]; then - INFO "Forced Python/NumPy building, as requested..." + INFO "Forced Python building, as requested..." _do_compile_python=true else check_package_version_ge_lt_ARCH python $PYTHON_VERSION_MIN $PYTHON_VERSION_MAX @@ -5137,17 +5153,21 @@ install_ARCH() { install_packages_ARCH python clean_Python PRINT "" - if [ "$NUMPY_SKIP" = true ]; then - WARNING "Skipping NumPy installation, as requested..." - else - check_package_version_ge_ARCH python-numpy $NUMPY_VERSION_MIN $NUMPY_VERSION_MAX + + for module in "${PYTHON_MODULES_PACKAGES[@]}" + do + module=($module) + package="python-${module[0]}" + package_vmin=${module[1]} + package_vmax=${module[2]} + check_package_version_ge_lt_ARCH "$package" $package_vmin $package_vmax if [ $? -eq 0 ]; then - install_packages_ARCH python-numpy + install_packages_ARCH "$package" else - WARNING "Sorry, using python package but no valid numpy package available!" \ - "Use --build-numpy to force building of both Python and NumPy." + WARNING "Sorry, using python package but no valid $package package available!" \ + " Use --build-python to force building of Python and use pip to get the packages." fi - fi + done else _do_compile_python=true fi @@ -5156,12 +5176,6 @@ install_ARCH() { if [ "$_do_compile_python" = true ]; then install_packages_ARCH libffi compile_Python - PRINT "" - if [ "$NUMPY_SKIP" = true ]; then - WARNING "Skipping NumPy installation, as requested..." - else - compile_Numpy - fi fi @@ -5494,16 +5508,10 @@ install_OTHER() { PRINT "" if [ "$PYTHON_SKIP" = true ]; then - WARNING "Skipping Python/NumPy installation, as requested..." + WARNING "Skipping Python installation, as requested..." elif [ "$PYTHON_FORCE_BUILD" = true ]; then - INFO "Forced Python/NumPy building, as requested..." + INFO "Forced Python building, as requested..." compile_Python - PRINT "" - if [ "$NUMPY_SKIP" = true ]; then - WARNING "Skipping NumPy installation, as requested..." - else - compile_Numpy - fi fi @@ -5737,9 +5745,11 @@ print_info() { if [ -d $INST/boost ]; then _1="-D BOOST_ROOT=$INST/boost" _2="-D Boost_NO_SYSTEM_PATHS=ON" + _3="-D Boost_NO_BOOST_CMAKE=ON" PRINT " $_1" PRINT " $_2" - _buildargs="$_buildargs $_1 $_2" + PRINT " $_3" + _buildargs="$_buildargs $_1 $_2 $_3" fi if [ -d $INST/tbb ]; then |