Buildbot: Some inital work to support newer chroot environment
authorSergey Sharybin <sergey.vfx@gmail.com>
Wed, 29 Aug 2018 14:29:25 +0000 (16:29 +0200)
committerSergey Sharybin <sergey.vfx@gmail.com>
Wed, 29 Aug 2018 14:29:25 +0000 (16:29 +0200)
build_files/buildbot/config/blender_linux.cmake
build_files/buildbot/slave_compile.py

index a405ae95fff11b69f7e60f1671e644961a5635a8..473b1dd0d68bfae5459b493c0bf6899c407b761e 100644 (file)
@@ -5,7 +5,15 @@ include("${CMAKE_CURRENT_LIST_DIR}/../../cmake/config/blender_full.cmake")
 # Detect which libc we'll be linking against.
 # Some of the paths will depend on this
 
-if(EXISTS "/lib/x86_64-linux-gnu/libc-2.19.so")
+if(EXISTS "/lib/x86_64-linux-gnu/libc-2.24.so")
+       message(STATUS "Building in GLibc-2.24 environment")
+       set(GLIBC "2.24")
+       set(MULTILIB "/x86_64-linux-gnu")
+elseif(EXISTS "/lib/i386-linux-gnu//libc-2.24.so")
+       message(STATUS "Building in GLibc-2.24 environment")
+       set(GLIBC "2.24")
+       set(MULTILIB "/i386-linux-gnu")
+elseif(EXISTS "/lib/x86_64-linux-gnu/libc-2.19.so")
        message(STATUS "Building in GLibc-2.19 environment")
        set(GLIBC "2.19")
        set(MULTILIB "/x86_64-linux-gnu")
@@ -41,7 +49,10 @@ set(WITH_PYTHON_INSTALL_NUMPY    ON CACHE BOOL "" FORCE)
 set(WITH_PYTHON_INSTALL_REQUESTS ON CACHE BOOL "" FORCE)
 
 # ######## Release environment specific settings ########
-# All the hardcoded libraru paths and such
+
+if (NOT ${GLIBC} STREQUAL "2.24")
+
+# All the hardcoded library paths and such
 
 # LLVM libraries
 set(LLVM_VERSION             "3.4"  CACHE STRING "" FORCE)
@@ -148,5 +159,20 @@ set(BLOSC_LIBRARY
        CACHE BOOL "" FORCE
 )
 
+else()
+
+# Set path to precompiled libraries.
+set(LIBDIR_NAME ${CMAKE_SYSTEM_NAME}_${CMAKE_SYSTEM_PROCESSOR})
+string(TOLOWER ${LIBDIR_NAME} LIBDIR_NAME)
+set(LIBDIR "/opt/blender-deps/${LIBDIR_NAME}")
+
+# TODO(sergey): Remove once Python is oficially bumped to 3.7.
+set(PYTHON_VERSION 3.7)
+
+# Ensure specific configuration of various libraries.
+set(Boost_USE_STATIC_LIBS    ON CACHE BOOL "" FORCE)
+
+endif()
+
 # Additional linking libraries
 set(CMAKE_EXE_LINKER_FLAGS   "-lrt -static-libstdc++"  CACHE STRING "" FORCE)
index eb204cd1c008708caa92f3f2f1445d7ff06acad3..6465f2e634d18b461f2aeb2e3591f41e3c9ffd10 100644 (file)
@@ -102,7 +102,9 @@ if 'cmake' in builder:
     elif builder.startswith('linux'):
         tokens = builder.split("_")
         glibc = tokens[1]
-        if glibc == 'glibc219':
+        if glibc == 'glibc224':
+            deb_name = "stretch"
+        elif glibc == 'glibc219':
             deb_name = "jessie"
         elif glibc == 'glibc211':
             deb_name = "squeeze"
@@ -115,8 +117,9 @@ if 'cmake' in builder:
             bits = 32
             chroot_name = 'buildbot_' + deb_name + '_i686'
             targets = ['player', 'blender']
-        cmake_extra_options.extend(["-DCMAKE_C_COMPILER=/usr/bin/gcc-7",
-                                    "-DCMAKE_CXX_COMPILER=/usr/bin/g++-7"])
+        if deb_name != "stretch":
+            cmake_extra_options.extend(["-DCMAKE_C_COMPILER=/usr/bin/gcc-7",
+                                        "-DCMAKE_CXX_COMPILER=/usr/bin/g++-7"])
 
     cmake_options.append("-C" + os.path.join(blender_dir, cmake_config_file))