[Bf-blender-cvs] [5dc87a3ca5f] master: Massive install_deps update.
Bastien Montagne
noreply at git.blender.org
Fri Feb 5 19:02:19 CET 2021
Commit: 5dc87a3ca5f32b87d3cdf5f54a9d3a30f5b4fae0
Author: Bastien Montagne
Date: Fri Feb 5 18:54:29 2021 +0100
Branches: master
https://developer.blender.org/rB5dc87a3ca5f32b87d3cdf5f54a9d3a30f5b4fae0
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).
===================================================================
M build_files/build_environment/install_deps.sh
===================================================================
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_shortc
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-blender-cvs
mailing list