diff options
Diffstat (limited to 'build_files')
-rwxr-xr-x | build_files/build_environment/install_deps.sh | 25 | ||||
-rw-r--r-- | build_files/buildbot/config/blender_linux.cmake | 5 | ||||
-rw-r--r-- | build_files/buildbot/master.cfg | 32 | ||||
-rw-r--r-- | build_files/buildbot/master_unpack.py | 3 | ||||
-rw-r--r-- | build_files/buildbot/slave_compile.py | 10 | ||||
-rw-r--r-- | build_files/buildbot/slave_pack.py | 6 | ||||
-rw-r--r-- | build_files/cmake/Modules/FindOpenImageIO.cmake | 2 | ||||
-rw-r--r-- | build_files/cmake/Modules/GTestTesting.cmake | 3 | ||||
-rw-r--r-- | build_files/cmake/macros.cmake | 2 |
9 files changed, 61 insertions, 27 deletions
diff --git a/build_files/build_environment/install_deps.sh b/build_files/build_environment/install_deps.sh index ee49f83b38d..82895acf25e 100755 --- a/build_files/build_environment/install_deps.sh +++ b/build_files/build_environment/install_deps.sh @@ -322,8 +322,8 @@ OPENEXR_FORCE_REBUILD=false OPENEXR_SKIP=false _with_built_openexr=false -OIIO_VERSION="1.7.8" -OIIO_VERSION_MIN="1.6.0" +OIIO_VERSION="1.7.13" +OIIO_VERSION_MIN="1.7.13" OIIO_VERSION_MAX="1.9.0" # UNKNOWN currently # Not supported by current OSL... OIIO_FORCE_BUILD=false OIIO_FORCE_REBUILD=false @@ -360,7 +360,7 @@ OPENVDB_FORCE_REBUILD=false OPENVDB_SKIP=false # Alembic needs to be compiled for now -ALEMBIC_VERSION="1.6.0" +ALEMBIC_VERSION="1.7.1" ALEMBIC_VERSION_MIN=$ALEMBIC_VERSION ALEMBIC_FORCE_BUILD=false ALEMBIC_FORCE_REBUILD=false @@ -2236,9 +2236,6 @@ compile_ALEMBIC() { return fi - compile_HDF5 - PRINT "" - # To be changed each time we make edits that would modify the compiled result! alembic_magic=2 _init_alembic @@ -2266,8 +2263,16 @@ compile_ALEMBIC() { cmake_d="-D CMAKE_INSTALL_PREFIX=$_inst" + # Without Boost or TR1, Alembic requires C++11. + if [ "$USE_CXX11" != true ]; then + cmake_d="$cmake_d -D ALEMBIC_LIB_USES_BOOST=ON" + cmake_d="$cmake_d -D ALEMBIC_LIB_USES_TR1=OFF" + fi + if [ -d $INST/boost ]; then - cmake_d="$cmake_d -D BOOST_ROOT=$INST/boost" + if [ -d $INST/boost ]; then + cmake_d="$cmake_d -D BOOST_ROOT=$INST/boost" + fi cmake_d="$cmake_d -D USE_STATIC_BOOST=ON" else cmake_d="$cmake_d -D USE_STATIC_BOOST=OFF" @@ -2285,8 +2290,6 @@ compile_ALEMBIC() { cmake_d="$cmake_d -D USE_STATIC_HDF5=OFF" cmake_d="$cmake_d -D ALEMBIC_ILMBASE_LINK_STATIC=OFF" cmake_d="$cmake_d -D ALEMBIC_SHARED_LIBS=OFF" - cmake_d="$cmake_d -D ALEMBIC_LIB_USES_BOOST=ON" - cmake_d="$cmake_d -D ALEMBIC_LIB_USES_TR1=OFF" INFO "ILMBASE_ROOT=$INST/openexr" fi @@ -2777,7 +2780,7 @@ install_DEB() { boost_version=$(echo `get_package_version_DEB libboost-dev` | sed -r 's/^([0-9]+\.[0-9]+).*/\1/') - install_packages_DEB libboost-{filesystem,iostreams,locale,regex,system,thread,wave}$boost_version-dev + install_packages_DEB libboost-{filesystem,iostreams,locale,regex,system,thread,wave,program-options}$boost_version-dev clean_Boost else compile_Boost @@ -4252,7 +4255,7 @@ print_info() { PRINT " $_3" _buildargs="$_buildargs $_1 $_2 $_3" if [ -d $INST/osl ]; then - _1="-D CYCLES_OSL=$INST/osl" + _1="-D OSL_ROOT_DIR=$INST/osl" PRINT " $_1" _buildargs="$_buildargs $_1" fi diff --git a/build_files/buildbot/config/blender_linux.cmake b/build_files/buildbot/config/blender_linux.cmake index ed5417c1c6e..56f18967300 100644 --- a/build_files/buildbot/config/blender_linux.cmake +++ b/build_files/buildbot/config/blender_linux.cmake @@ -94,6 +94,10 @@ set(OPENCOLORIO_OPENCOLORIO_LIBRARY "${OPENCOLORIO_ROOT_DIR}/lib/libOpenColorIO. set(OPENCOLORIO_TINYXML_LIBRARY "${OPENCOLORIO_ROOT_DIR}/lib/libtinyxml.a" CACHE STRING "" FORCE) set(OPENCOLORIO_YAML-CPP_LIBRARY "${OPENCOLORIO_ROOT_DIR}/lib/libyaml-cpp.a" CACHE STRING "" FORCE) +# Freetype +set(FREETYPE_INCLUDE_DIRS "/usr/include/freetype2" CACHE STRING "" FORCE) +set(FREETYPE_LIBRARY "/usr/lib${MULTILIB}/libfreetype.a" CACHE STRING "" FORCE) + # OpenImageIO if(GLIBC EQUAL "2.19") set(OPENIMAGEIO_LIBRARY @@ -102,6 +106,7 @@ if(GLIBC EQUAL "2.19") /usr/lib${MULTILIB}/libwebp.a /usr/lib${MULTILIB}/liblzma.a /usr/lib${MULTILIB}/libjbig.a + ${FREETYPE_LIBRARY} CACHE STRING "" FORCE ) endif() diff --git a/build_files/buildbot/master.cfg b/build_files/buildbot/master.cfg index 387e53593b3..c650cb8c302 100644 --- a/build_files/buildbot/master.cfg +++ b/build_files/buildbot/master.cfg @@ -4,10 +4,10 @@ # <pep8 compliant> # List of the branches being built automatically overnight -NIGHT_SCHEDULE_BRANCHES = [None] +NIGHT_SCHEDULE_BRANCHES = [None, "blender2.8"] # List of the branches available for force build -FORCE_SCHEDULE_BRANCHES = ["master", "gooseberry", "experimental-build"] +FORCE_SCHEDULE_BRANCHES = ["master", "blender2.8", "experimental-build"] """ Stock Twisted directory lister doesn't provide any information about last file @@ -127,7 +127,14 @@ def schedule_force_build(name): project=forcesched.FixedParameter(name="project", default="", hide=True)), # For now, hide other codebases. forcesched.CodebaseParameter(hide=True, codebase="blender-translations"), - forcesched.CodebaseParameter(hide=True, codebase="blender-addons"), + forcesched.CodebaseParameter( + codebase="blender-addons", + branch=forcesched.ChoiceStringParameter( + name="branch", choices=["master", "blender2.8"], default="master"), + repository=forcesched.FixedParameter(name="repository", default="", hide=True), + project=forcesched.FixedParameter(name="project", default="", hide=True), + revision=forcesched.FixedParameter(name="revision", default="", hide=True), + ), forcesched.CodebaseParameter(hide=True, codebase="blender-addons-contrib"), forcesched.CodebaseParameter(hide=True, codebase="blender-dev-tools"), forcesched.CodebaseParameter(hide=True, codebase="lib svn")], @@ -139,11 +146,15 @@ def schedule_build(name, hour, minute=0): scheduler_name = "nightly " + name if current_branch: scheduler_name += ' ' + current_branch + # Use special addons submodule branch when building blender2.8 branch. + addons_branch = "master" + if current_branch == "blender2.8": + addons_branch = "blender2.8" c['schedulers'].append(timed.Nightly(name=scheduler_name, codebases={ "blender": {"repository": ""}, "blender-translations": {"repository": "", "branch": "master"}, - "blender-addons": {"repository": "", "branch": "master"}, + "blender-addons": {"repository": "", "branch": addons_branch}, "blender-addons-contrib": {"repository": "", "branch": "master"}, "blender-dev-tools": {"repository": "", "branch": "master"}, "lib svn": {"repository": "", "branch": "trunk"}}, @@ -225,8 +236,7 @@ def git_step(branch=''): def git_submodules_update(): - command = ['git', 'submodule', 'foreach', '--recursive', - 'git', 'pull', 'origin', 'master'] + command = ['git', 'submodule', 'update', '--remote'] return ShellCommand(name='Submodules Update', command=command, description='updating', @@ -235,7 +245,10 @@ def git_submodules_update(): def lib_svn_step(dir): - return SVN(name='lib svn', + name = "lib svn" + if dir == "darwin": + name = "C++11 lib svn" + return SVN(name=name, baseURL='https://svn.blender.org/svnroot/bf-blender/%%BRANCH%%/lib/' + dir, codebase='lib svn', mode='update', @@ -264,6 +277,9 @@ def generic_builder(id, libdir='', branch='', rsync=False): f = BuildFactory() if libdir != '': f.addStep(lib_svn_step(libdir)) + # Special trick to make sure we always have all the libs. + if libdir.startswith("darwin"): + f.addStep(lib_svn_step("darwin")) for submodule in ('blender-translations', 'blender-addons', @@ -286,7 +302,7 @@ def generic_builder(id, libdir='', branch='', rsync=False): f.addStep(FileUpload(name='upload', slavesrc='buildbot_upload.zip', masterdest=filename, - maxsize=150 * 1024 * 1024, + maxsize=180 * 1024 * 1024, workdir='install')) f.addStep(MasterShellCommand(name='unpack', command=['python2.7', unpack_script, filename], diff --git a/build_files/buildbot/master_unpack.py b/build_files/buildbot/master_unpack.py index ec44705931c..67b628f668a 100644 --- a/build_files/buildbot/master_unpack.py +++ b/build_files/buildbot/master_unpack.py @@ -67,6 +67,9 @@ def get_platform(filename): def get_branch(filename): + if filename.startswith("blender-2.8"): + return "blender2.8" + tokens = filename.split("-") branch = "" diff --git a/build_files/buildbot/slave_compile.py b/build_files/buildbot/slave_compile.py index 860dd1174cf..0e264a752d5 100644 --- a/build_files/buildbot/slave_compile.py +++ b/build_files/buildbot/slave_compile.py @@ -74,6 +74,9 @@ if 'cmake' in builder: cmake_extra_options.append('-DCMAKE_OSX_ARCHITECTURES:STRING=x86_64') cmake_extra_options.append('-DWITH_CODEC_QUICKTIME=OFF') cmake_extra_options.append('-DCMAKE_OSX_DEPLOYMENT_TARGET=10.6') + cmake_extra_options.append('-DCUDA_HOST_COMPILER=/usr/local/cuda-hack/clang') + cmake_extra_options.append('-DCUDA_NVCC_EXECUTABLE=/usr/local/cuda-hack/nvcc') + elif builder.startswith('win'): @@ -91,7 +94,6 @@ if 'cmake' in builder: elif builder.startswith('win32'): bits = 32 cmake_options.extend(['-G', 'Visual Studio 12 2013']) - cmake_extra_options.append('-DCUDA_NVCC_EXECUTABLE:FILEPATH=C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v8.0/bin/nvcc.exe') elif builder.startswith('linux'): tokens = builder.split("_") @@ -110,8 +112,8 @@ if 'cmake' in builder: chroot_name = 'buildbot_' + deb_name + '_i686' cuda_chroot_name = 'buildbot_' + deb_name + '_x86_64' targets = ['player', 'blender', 'cuda'] - - cmake_extra_options.append('-DCUDA_NVCC_EXECUTABLE=/usr/local/cuda-8.0/bin/nvcc') + cmake_extra_options.extend(["-DCMAKE_C_COMPILER=/usr/bin/gcc-6", + "-DCMAKE_CXX_COMPILER=/usr/bin/g++-6"]) cmake_options.append("-C" + os.path.join(blender_dir, cmake_config_file)) @@ -178,7 +180,7 @@ if 'cmake' in builder: os.remove('CMakeCache.txt') retcode = subprocess.call(target_chroot_prefix + ['cmake', blender_dir] + target_cmake_options) if retcode != 0: - print('Condifuration FAILED!') + print('Configuration FAILED!') sys.exit(retcode) if 'win32' in builder or 'win64' in builder: diff --git a/build_files/buildbot/slave_pack.py b/build_files/buildbot/slave_pack.py index 490f0456045..6929be85003 100644 --- a/build_files/buildbot/slave_pack.py +++ b/build_files/buildbot/slave_pack.py @@ -111,7 +111,8 @@ if builder.find('cmake') != -1: if builder.endswith('vc2015'): platform += "-vc14" builderified_name = 'blender-{}-{}-{}'.format(blender_full_version, git_hash, platform) - if branch != '': + # NOTE: Blender 2.8 is already respected by blender_full_version. + if branch != '' and branch != 'blender2.8': builderified_name = branch + "-" + builderified_name os.rename(result_file, "{}.zip".format(builderified_name)) @@ -177,7 +178,8 @@ if builder.find('cmake') != -1: blender_hash, blender_glibc, blender_arch) - if branch != '': + # NOTE: Blender 2.8 is already respected by blender_full_version. + if branch != '' and branch != 'blender2.8': package_name = branch + "-" + package_name upload_filename = package_name + ".tar.bz2" diff --git a/build_files/cmake/Modules/FindOpenImageIO.cmake b/build_files/cmake/Modules/FindOpenImageIO.cmake index 789097dfd51..d59f9cfcdfc 100644 --- a/build_files/cmake/Modules/FindOpenImageIO.cmake +++ b/build_files/cmake/Modules/FindOpenImageIO.cmake @@ -60,7 +60,7 @@ FIND_FILE(OPENIMAGEIO_IDIFF NAMES idiff HINTS - ${OPENIMAGEIO_ROOT_DIR} + ${_openimageio_SEARCH_DIRS} PATH_SUFFIXES bin ) diff --git a/build_files/cmake/Modules/GTestTesting.cmake b/build_files/cmake/Modules/GTestTesting.cmake index 0732e10133c..e688db35ef1 100644 --- a/build_files/cmake/Modules/GTestTesting.cmake +++ b/build_files/cmake/Modules/GTestTesting.cmake @@ -39,6 +39,9 @@ macro(BLENDER_SRC_GTEST_EX NAME SRC EXTRA_LIBS DO_ADD_TEST) ${PTHREADS_LIBRARIES} extern_glog extern_gflags) + if(WITH_OPENMP_STATIC) + target_link_libraries(${NAME}_test ${OpenMP_LIBRARIES}) + endif() set_target_properties(${NAME}_test PROPERTIES RUNTIME_OUTPUT_DIRECTORY "${TESTS_OUTPUT_DIR}" RUNTIME_OUTPUT_DIRECTORY_RELEASE "${TESTS_OUTPUT_DIR}" diff --git a/build_files/cmake/macros.cmake b/build_files/cmake/macros.cmake index f9992ee92b9..b7f6649e507 100644 --- a/build_files/cmake/macros.cmake +++ b/build_files/cmake/macros.cmake @@ -595,6 +595,7 @@ function(SETUP_BLENDER_SORTED_LIBS) bf_freestyle bf_ikplugin bf_modifiers + bf_alembic bf_bmesh bf_gpu bf_blenloader @@ -613,7 +614,6 @@ function(SETUP_BLENDER_SORTED_LIBS) bf_imbuf_openimageio bf_imbuf_dds bf_collada - bf_alembic bf_intern_elbeem bf_intern_memutil bf_intern_guardedalloc |