[Bf-blender-cvs] [f4535c1] master: Install_deps: update to new exr/oiio versions, and (hopefully) fix ILMBase mess

Bastien Montagne noreply at git.blender.org
Tue Feb 3 20:01:04 CET 2015


Commit: f4535c1a7a51df319d99fe8e60168e5d816a038c
Author: Bastien Montagne
Date:   Tue Feb 3 19:56:28 2015 +0100
Branches: master
https://developer.blender.org/rBf4535c1a7a51df319d99fe8e60168e5d816a038c

Install_deps: update to new exr/oiio versions, and (hopefully) fix ILMBase mess

Root of the issue is an (hidden!) parameter in ILMBase cmake options, that
is enabled by default, and force the generation of those ugly lib names
(Imf_2_2.so & co). Why why why enable such thing by default?

Anyway, it should be simpler to build again even on linuxes having the openexr -dev
package installed.

Also, cleaned up a bit things, now we can switch between repo and plain release archive
building from a single place for each lib, instead of commentting/uncommenting everything
each time (for libs where we have some git repo set up for some reason).

===================================================================

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 e4e360a..45decac 100755
--- a/build_files/build_environment/install_deps.sh
+++ b/build_files/build_environment/install_deps.sh
@@ -209,14 +209,14 @@ OCIO_VERSION_MIN="1.0"
 OCIO_FORCE_REBUILD=false
 OCIO_SKIP=false
 
-OPENEXR_VERSION="2.1.0"
+OPENEXR_VERSION="2.2.0"
 OPENEXR_VERSION_MIN="2.0.1"
-ILMBASE_VERSION="2.1.0"
+ILMBASE_VERSION="2.2.0"
 OPENEXR_FORCE_REBUILD=false
 OPENEXR_SKIP=false
 _with_built_openexr=false
 
-OIIO_VERSION="1.4.11"
+OIIO_VERSION="1.4.16"
 OIIO_VERSION_MIN="1.4.0"
 OIIO_FORCE_REBUILD=false
 OIIO_SKIP=false
@@ -228,7 +228,7 @@ LLVM_FORCE_REBUILD=false
 LLVM_SKIP=false
 
 # OSL needs to be compiled for now!
-OSL_VERSION="1.5.0"
+OSL_VERSION="1.5.11"
 OSL_VERSION_MIN=$OSL_VERSION
 OSL_FORCE_REBUILD=false
 OSL_SKIP=false
@@ -485,25 +485,29 @@ BOOST_SOURCE=( "http://sourceforge.net/projects/boost/files/boost/$BOOST_VERSION
 
 OCIO_SOURCE=( "https://github.com/imageworks/OpenColorIO/tarball/v$OCIO_VERSION" )
 
-#OPENEXR_SOURCE=( "http://download.savannah.nongnu.org/releases/openexr/openexr-$OPENEXR_VERSION.tar.gz" )
-OPENEXR_SOURCE=( "https://github.com/mont29/openexr.git" )
-OPENEXR_REPO_UID="2787aa1cf652d244ed45ae124eb1553f6cff11ee"
+OPENEXR_USE_REPO=false
+OPENEXR_SOURCE=( "http://download.savannah.nongnu.org/releases/openexr/openexr-$OPENEXR_VERSION.tar.gz" )
+OPENEXR_SOURCE_REPO=( "https://github.com/mont29/openexr.git" )
+OPENEXR_SOURCE_REPO_UID="2787aa1cf652d244ed45ae124eb1553f6cff11ee"
 ILMBASE_SOURCE=( "http://download.savannah.nongnu.org/releases/openexr/ilmbase-$ILMBASE_VERSION.tar.gz" )
 
-#OIIO_SOURCE=( "https://github.com/OpenImageIO/oiio/archive/Release-$OIIO_VERSION.tar.gz" )
-OIIO_SOURCE=( "https://github.com/OpenImageIO/oiio.git" )
-OIIO_REPO_UID="c9e67275a0b248ead96152f6d2221cc0c0f278a4"
+OPENEXR_USE_REPO=false
+OIIO_SOURCE=( "https://github.com/OpenImageIO/oiio/archive/Release-$OIIO_VERSION.tar.gz" )
+OIIO_SOURCE_REPO=( "https://github.com/OpenImageIO/oiio.git" )
+OIIO_SOURCE_REPO_UID="c9e67275a0b248ead96152f6d2221cc0c0f278a4"
 
 LLVM_SOURCE=( "http://llvm.org/releases/$LLVM_VERSION/llvm-$LLVM_VERSION.src.tar.gz" )
 LLVM_CLANG_SOURCE=( "http://llvm.org/releases/$LLVM_VERSION/clang-$LLVM_VERSION.src.tar.gz" "http://llvm.org/releases/$LLVM_VERSION/cfe-$LLVM_VERSION.src.tar.gz" )
-#OSL_SOURCE=( "https://github.com/imageworks/OpenShadingLanguage/archive/Release-$OSL_VERSION.tar.gz" )
-#OSL_SOURCE=( "https://github.com/imageworks/OpenShadingLanguage.git" )
-#OSL_SOURCE=( "https://github.com/mont29/OpenShadingLanguage.git" )
-#OSL_REPO_UID="85179714e1bc69cd25ecb6bb711c1a156685d395"
-#OSL_REPO_BRANCH="master"
-OSL_SOURCE=( "https://github.com/Nazg-Gul/OpenShadingLanguage.git" )
-OSL_REPO_UID="22ee5ea298fd215430dfbd160b5aefd507f06db0"
-OSL_REPO_BRANCH="blender-fixes"
+OSL_USE_REPO=true
+#~ OSL_SOURCE=( "https://github.com/imageworks/OpenShadingLanguage/archive/Release-$OSL_VERSION.tar.gz" )
+OSL_SOURCE=( "https://github.com/Nazg-Gul/OpenShadingLanguage/archive/Release-1.5.11.tar.gz" )
+#~ OSL_SOURCE_REPO=( "https://github.com/imageworks/OpenShadingLanguage.git" )
+#~ OSL_SOURCE_REPO=( "https://github.com/mont29/OpenShadingLanguage.git" )
+#~ OSL_SOURCE_REPO_UID="85179714e1bc69cd25ecb6bb711c1a156685d395"
+#~ OSL_SOURCE_REPO_BRANCH="master"
+OSL_SOURCE_REPO=( "https://github.com/Nazg-Gul/OpenShadingLanguage.git" )
+OSL_SOURCE_REPO_UID="22ee5ea298fd215430dfbd160b5aefd507f06db0"
+OSL_SOURCE_REPO_BRANCH="blender-fixes"
 
 OPENCOLLADA_SOURCE=( "https://github.com/KhronosGroup/OpenCOLLADA.git" )
 OPENCOLLADA_REPO_UID="18da7f4109a8eafaa290a33f5550501cc4c8bae8"
@@ -979,7 +983,7 @@ clean_ILMBASE() {
 
 compile_ILMBASE() {
   # To be changed each time we make edits that would modify the compiled result!
-  ilmbase_magic=9
+  ilmbase_magic=10
   _init_ilmbase
 
   # Clean install if needed!
@@ -1003,8 +1007,7 @@ compile_ILMBASE() {
       download ILMBASE_SOURCE[@] $_src.tar.gz
 
       INFO "Unpacking ILMBase-$ILMBASE_VERSION"
-      tar -C $SRC --transform "s,(.*/?)ilmbase-[^/]*(.*),\1ILMBase-$ILMBASE_VERSION\2,x" \
-          -xf $_src.tar.gz
+      tar -C $SRC --transform "s,(.*/?)ilmbase-[^/]*(.*),\1ILMBase-$ILMBASE_VERSION\2,x" -xf $_src.tar.gz
 
     fi
 
@@ -1020,6 +1023,7 @@ compile_ILMBASE() {
     cmake_d="$cmake_d -D CMAKE_PREFIX_PATH=$_inst"
     cmake_d="$cmake_d -D CMAKE_INSTALL_PREFIX=$_inst"
     cmake_d="$cmake_d -D BUILD_SHARED_LIBS=ON"
+    cmake_d="$cmake_d -D NAMESPACE_VERSIONING=OFF"  # VERY IMPORTANT!!!
 
     if file /bin/cp | grep -q '32-bit'; then
       cflags="-fPIC -m32 -march=i686"
@@ -1092,24 +1096,28 @@ compile_OPENEXR() {
       INFO "Downloading OpenEXR-$OPENEXR_VERSION"
       mkdir -p $SRC
 
-#      download OPENEXR_SOURCE[@] $_src.tar.gz
-
-#      INFO "Unpacking OpenEXR-$OPENEXR_VERSION"
-#      tar -C $SRC --transform "s,(.*/?)openexr[^/]*(.*),\1OpenEXR-$OPENEXR_VERSION\2,x" \
-#          -xf $_src.tar.gz
-
-      git clone ${OPENEXR_SOURCE[0]} $_src
+      if [ $OPENEXR_USE_REPO == true ]; then
+        git clone ${OPENEXR_SOURCE_REPO[0]} $_src
+      else
+        download OPENEXR_SOURCE[@] $_src.tar.gz
+        INFO "Unpacking OpenEXR-$OPENEXR_VERSION"
+        tar -C $SRC --transform "s,(.*/?)openexr[^/]*(.*),\1OpenEXR-$OPENEXR_VERSION\2,x" -xf $_src.tar.gz
+      fi
 
     fi
 
     cd $_src
 
-    # XXX For now, always update from latest repo...
-    git pull origin master
-
-    # Stick to same rev as windows' libs...
-    git checkout $OPENEXR_REPO_UID
-    git reset --hard
+    if [ $OPENEXR_USE_REPO == true ]; then
+      # XXX For now, always update from latest repo...
+      git pull origin master
+      # Stick to same rev as windows' libs...
+      git checkout $OPENEXR_SOURCE_REPO_UID
+      git reset --hard
+      oiio_src_path="../OpenEXR"
+    else
+      oiio_src_path=".."
+    fi
 
     # Always refresh the whole build!
     if [ -d build ]; then
@@ -1123,6 +1131,7 @@ compile_OPENEXR() {
     cmake_d="$cmake_d -D CMAKE_INSTALL_PREFIX=$_inst"
     cmake_d="$cmake_d -D ILMBASE_PACKAGE_PREFIX=$_ilmbase_inst"
     cmake_d="$cmake_d -D BUILD_SHARED_LIBS=ON"
+    cmake_d="$cmake_d -D NAMESPACE_VERSIONING=OFF"  # VERY IMPORTANT!!!
 
     if file /bin/cp | grep -q '32-bit'; then
       cflags="-fPIC -m32 -march=i686"
@@ -1130,7 +1139,7 @@ compile_OPENEXR() {
       cflags="-fPIC"
     fi
 
-    cmake $cmake_d -D CMAKE_CXX_FLAGS="$cflags" -D CMAKE_EXE_LINKER_FLAGS="-lgcc_s -lgcc" ../OpenEXR
+    cmake $cmake_d -D CMAKE_CXX_FLAGS="$cflags" -D CMAKE_EXE_LINKER_FLAGS="-lgcc_s -lgcc" $oiio_src_path
 
     make -j$THREADS && make install
 
@@ -1194,24 +1203,25 @@ compile_OIIO() {
 
     if [ ! -d $_src ]; then
       mkdir -p $SRC
-      #download OIIO_SOURCE[@] "$_src.tar.gz"
-#
-      #INFO "Unpacking OpenImageIO-$OIIO_VERSION"
-      #tar -C $SRC --transform "s,(.*/?)oiio-Release-[^/]*(.*),\1OpenImageIO-$OIIO_VERSION\2,x" \
-          #-xf $_src.tar.gz
-
-      git clone ${OIIO_SOURCE[0]} $_src
 
+      if [ $OIIO_USE_REPO == true ]; then
+        git clone ${OIIO_SOURCE_REPO[0]} $_src
+      else
+        download OIIO_SOURCE[@] "$_src.tar.gz"
+        INFO "Unpacking OpenImageIO-$OIIO_VERSION"
+        tar -C $SRC --transform "s,(.*/?)oiio-Release-[^/]*(.*),\1OpenImageIO-$OIIO_VERSION\2,x" -xf $_src.tar.gz
+      fi
     fi
 
     cd $_src
 
-    # XXX For now, always update from latest repo...
-    git pull origin master
-
-    # Stick to same rev as windows' libs...
-    git checkout $OIIO_REPO_UID
-    git reset --hard
+    if [ $OIIO_USE_REPO == true ]; then
+      # XXX For now, always update from latest repo...
+      git pull origin master
+      # Stick to same rev as windows' libs...
+      git checkout $OIIO_SOURCE_REPO_UID
+      git reset --hard
+    fi
 
     # Always refresh the whole build!
     if [ -d build ]; then
@@ -1233,6 +1243,7 @@ compile_OIIO() {
     if [ $_with_built_openexr == true ]; then
       cmake_d="$cmake_d -D ILMBASE_HOME=$INST/openexr"
       cmake_d="$cmake_d -D OPENEXR_HOME=$INST/openexr"
+      INFO "ILMBASE_HOME=$INST/openexr"
     fi
 
     # Optional tests and cmd tools
@@ -1409,15 +1420,15 @@ clean_OSL() {
 
 compile_OSL() {
   # To be changed each time we make edits that would modify the compiled result!
-  osl_magic=16
+  osl_magic=17
   _init_osl
 
   # Clean install if needed!
   magic_compile_check osl-$OSL_VERSION $osl_magic
-  if [ $? -eq 1 -o $OSL_FORCE_REBUILD == true ]; then
-    rm -Rf $_src  # XXX Radical, but not easy to change remote repo fully automatically
-    clean_OSL
-  fi
+  #~ if [ $? -eq 1 -o $OSL_FORCE_REBUILD == true ]; then
+    #~ rm -Rf $_src  # XXX Radical, but not easy to change remote repo fully automatically
+    #~ clean_OSL
+  #~ fi
 
   if [ ! -d $_inst ]; then
     INFO "Building OpenShadingLanguage-$OSL_VERSION"
@@ -1427,26 +1438,26 @@ compile_OSL() {
     if [ ! -d $_src ]; then
       mkdir -p $SRC
 
-      #download OSL_SOURCE[@] "$_src.tar.gz"
-
-      #INFO "Unpacking OpenShadingLanguage-$OSL_VERSION"
-      #tar -C $SRC --transform "s,(.*/?)OpenShadingLanguage-[^/]*(.*),\1OpenShadingLanguage-$OSL_VERSION\2,x" \
-          #-xf $_src.tar.gz
-
-      git clone ${OSL_SOURCE[0]} $_src
-
+      if [ $OSL_USE_REPO == true ]; then
+        git clone ${OSL_SOURCE_REPO[0]} $_src
+      else
+        download OSL_SOURCE[@] "$_src.tar.gz"
+        INFO "Unpacking OpenShadingLanguage-$OSL_VERSION"
+        tar -C $SRC --transform "s,(.*/?)OpenShadingLanguage-[^/]*(.*),\1OpenShadingLanguage-$OSL_VERSION\2,x" \
+            -xf $_src.tar.gz
+      fi
     fi
 
     cd $_src
 
-    git remote set-url origin ${OSL_SOURCE[0]}
-
-    # XXX For now, always update from latest repo...
-    git pull --no-edit -X theirs origin $OSL_GIT_BRANCH
-
-    # Stick to same rev as windows' libs...
-    git checkout $OSL_REPO_UID
-    git reset --hard
+    if [ $OSL_USE_REPO == true ]; then
+      git remote set-url origin ${OSL_SOURCE_REPO[0]}
+      # XXX For now, always update from latest repo...
+      git pull --no-edit -X theirs origin $OSL_SOURCE_REPO_BRANCH
+      # Stick to same rev as windows' libs...
+      git checkout $OSL_SOURCE_REPO_UID
+      git reset --hard
+    fi
 
     # Always refresh the

@@ Diff output truncated at 10240 characters. @@




More information about the Bf-blender-cvs mailing list