Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'build_files/buildbot')
-rw-r--r--build_files/buildbot/config/user-config-cuda-glibc211-i686.py2
-rw-r--r--build_files/buildbot/config/user-config-cuda-glibc211-x86_64.py2
-rw-r--r--build_files/buildbot/config/user-config-glibc211-i686.py2
-rw-r--r--build_files/buildbot/config/user-config-glibc211-x86_64.py2
-rw-r--r--build_files/buildbot/config/user-config-player-glibc211-i686.py2
-rw-r--r--build_files/buildbot/config/user-config-player-glibc211-x86_64.py2
-rw-r--r--build_files/buildbot/master.cfg39
-rw-r--r--build_files/buildbot/master_unpack.py35
-rw-r--r--build_files/buildbot/slave_compile.py14
-rw-r--r--build_files/buildbot/slave_pack.py22
10 files changed, 87 insertions, 35 deletions
diff --git a/build_files/buildbot/config/user-config-cuda-glibc211-i686.py b/build_files/buildbot/config/user-config-cuda-glibc211-i686.py
index 854f535398b..ae5cbac8cc7 100644
--- a/build_files/buildbot/config/user-config-cuda-glibc211-i686.py
+++ b/build_files/buildbot/config/user-config-cuda-glibc211-i686.py
@@ -2,4 +2,4 @@ BF_BUILDDIR = '../blender-build/linux-glibc211-i686'
BF_INSTALLDIR = '../blender-install/linux-glibc211-i686'
BF_NUMJOBS = 1
-BF_CYCLES_CUDA_BINARIES_ARCH = ['sm_20', 'sm_21', 'sm_30', 'sm_35', 'sm_50']
+BF_CYCLES_CUDA_BINARIES_ARCH = ['sm_20', 'sm_21', 'sm_30', 'sm_35', 'sm_50', 'sm_52']
diff --git a/build_files/buildbot/config/user-config-cuda-glibc211-x86_64.py b/build_files/buildbot/config/user-config-cuda-glibc211-x86_64.py
index 7e928948762..29b1b9f1ad7 100644
--- a/build_files/buildbot/config/user-config-cuda-glibc211-x86_64.py
+++ b/build_files/buildbot/config/user-config-cuda-glibc211-x86_64.py
@@ -2,4 +2,4 @@ BF_BUILDDIR = '../blender-build/linux-glibc211-x86_64'
BF_INSTALLDIR = '../blender-install/linux-glibc211-x86_64'
BF_NUMJOBS = 1
-BF_CYCLES_CUDA_BINARIES_ARCH = ['sm_20', 'sm_21', 'sm_30', 'sm_35', 'sm_50']
+BF_CYCLES_CUDA_BINARIES_ARCH = ['sm_20', 'sm_21', 'sm_30', 'sm_35', 'sm_50', 'sm_52']
diff --git a/build_files/buildbot/config/user-config-glibc211-i686.py b/build_files/buildbot/config/user-config-glibc211-i686.py
index 0971735f641..59a11072f2b 100644
--- a/build_files/buildbot/config/user-config-glibc211-i686.py
+++ b/build_files/buildbot/config/user-config-glibc211-i686.py
@@ -79,6 +79,8 @@ WITH_BF_STATICZLIB = True
BF_ZLIB_LIB_STATIC = '${BF_ZLIB}/lib/libz.a'
WITH_BF_SDL = True
+WITH_BF_SDL_DYNLOAD = True
+
WITH_BF_OGG = True
WITH_BF_OPENMP = True
diff --git a/build_files/buildbot/config/user-config-glibc211-x86_64.py b/build_files/buildbot/config/user-config-glibc211-x86_64.py
index 748d1004850..a0ae6122944 100644
--- a/build_files/buildbot/config/user-config-glibc211-x86_64.py
+++ b/build_files/buildbot/config/user-config-glibc211-x86_64.py
@@ -79,6 +79,8 @@ WITH_BF_STATICZLIB = True
BF_ZLIB_LIB_STATIC = '${BF_ZLIB}/lib/libz.a'
WITH_BF_SDL = True
+WITH_BF_SDL_DYNLOAD = True
+
WITH_BF_OGG = True
WITH_BF_OPENMP = True
diff --git a/build_files/buildbot/config/user-config-player-glibc211-i686.py b/build_files/buildbot/config/user-config-player-glibc211-i686.py
index 384da4070eb..b3c26ebb310 100644
--- a/build_files/buildbot/config/user-config-player-glibc211-i686.py
+++ b/build_files/buildbot/config/user-config-player-glibc211-i686.py
@@ -64,6 +64,8 @@ WITH_BF_STATICZLIB = True
BF_ZLIB_LIB_STATIC = '${BF_ZLIB}/lib/libz.a'
WITH_BF_SDL = True
+WITH_BF_SDL_DYNLOAD = True
+
WITH_BF_OGG = False
WITH_BF_OPENMP = True
diff --git a/build_files/buildbot/config/user-config-player-glibc211-x86_64.py b/build_files/buildbot/config/user-config-player-glibc211-x86_64.py
index 5176d59d5a0..173e15b08ca 100644
--- a/build_files/buildbot/config/user-config-player-glibc211-x86_64.py
+++ b/build_files/buildbot/config/user-config-player-glibc211-x86_64.py
@@ -64,6 +64,8 @@ WITH_BF_STATICZLIB = True
BF_ZLIB_LIB_STATIC = '${BF_ZLIB}/lib/libz.a'
WITH_BF_SDL = True
+WITH_BF_SDL_DYNLOAD = True
+
WITH_BF_OGG = False
WITH_BF_OPENMP = True
diff --git a/build_files/buildbot/master.cfg b/build_files/buildbot/master.cfg
index 5f315337d3a..e96f49bdb5f 100644
--- a/build_files/buildbot/master.cfg
+++ b/build_files/buildbot/master.cfg
@@ -3,6 +3,12 @@
# <pep8 compliant>
+# List of the branches being built automatically overnight
+NIGHT_SCHEDULE_BRANCHES=[None, "gooseberry"]
+
+# List of the branches available for force build
+FORCE_SCHEDULE_BRANCHES=["master", "gooseberry", "experimental-build"]
+
"""
Stock Twisted directory lister doesn't provide any information about last file
modification time, we hack the class a bit in order to have such functionaliity
@@ -11,7 +17,6 @@ modification time, we hack the class a bit in order to have such functionaliity
from buildbot.status.web.base import DirectoryLister
-
def get_files_and_directories(self, directory):
from twisted.web.static import (getTypeAndEncoding,
formatFileSize)
@@ -113,7 +118,7 @@ def schedule_force_build(name):
codebases=[forcesched.CodebaseParameter(
codebase="blender",
branch=forcesched.ChoiceStringParameter(
- name="branch", choices=["master", "testbuild"], default="master"),
+ name="branch", choices=FORCE_SCHEDULE_BRANCHES, default="master"),
# Do not hide revision, can be handy!
repository=forcesched.FixedParameter(name="repository", default="", hide=True),
project=forcesched.FixedParameter(name="project", default="", hide=True)),
@@ -127,18 +132,22 @@ def schedule_force_build(name):
def schedule_build(name, hour, minute=0):
- c['schedulers'].append(timed.Nightly(name='nightly ' + name,
- codebases={
- "blender": {"repository": ""},
- "blender-translations": {"repository": ""},
- "blender-addons": {"repository": ""},
- "blender-addons-contrib": {"repository": ""},
- "scons": {"repository": ""},
- "lib svn": {"repository": ""}},
- branch=None,
- builderNames=[name],
- hour=hour,
- minute=minute))
+ for current_branch in NIGHT_SCHEDULE_BRANCHES:
+ scheduler_name = "nightly " + name
+ if current_branch:
+ scheduler_name += ' ' + current_branch
+ c['schedulers'].append(timed.Nightly(name=scheduler_name,
+ codebases={
+ "blender": {"repository": ""},
+ "blender-translations": {"repository": "", "branch": "master"},
+ "blender-addons": {"repository": "", "branch": "master"},
+ "blender-addons-contrib": {"repository": "", "branch": "master"},
+ "scons": {"repository": "", "branch": "master"},
+ "lib svn": {"repository": "", "branch": "master"}},
+ branch=current_branch,
+ builderNames=[name],
+ hour=hour,
+ minute=minute))
# BUILDERS
@@ -295,6 +304,8 @@ add_builder(c, 'linux_glibc211_i386_scons', '', generic_builder, hour=1)
add_builder(c, 'linux_glibc211_x86_64_scons', '', generic_builder, hour=2)
add_builder(c, 'win32_scons_vc2013', 'windows_vc12', generic_builder, hour=1)
add_builder(c, 'win64_scons_vc2013', 'win64_vc12', generic_builder, hour=2)
+add_builder(c, 'win32_cmake_vc2013', 'windows_vc12', generic_builder, hour=3)
+add_builder(c, 'win64_cmake_vc2013', 'win64_vc12', generic_builder, hour=4)
#add_builder(c, 'mingw_win32_scons', 'mingw32', generic_builder, hour=4)
add_builder(c, 'mingw_win64_scons', 'mingw64', generic_builder, hour=3)
#add_builder(c, 'freebsd_i386_cmake', '', generic_builder, hour=1)
diff --git a/build_files/buildbot/master_unpack.py b/build_files/buildbot/master_unpack.py
index ecacf3bff6f..f7ed2d07d28 100644
--- a/build_files/buildbot/master_unpack.py
+++ b/build_files/buildbot/master_unpack.py
@@ -30,12 +30,12 @@ import zipfile
# extension stripping
def strip_extension(filename):
extensions = '.zip', '.tar', '.bz2', '.gz', '.tgz', '.tbz', '.exe'
- filename_noext, ext = os.path.splitext(filename)
- if ext in extensions:
- return strip_extension(filename_noext) # may have .tar.bz2
- else:
- return filename
+ for ext in extensions:
+ if filename.endswith(ext):
+ filename = filename[:-len(ext)]
+
+ return filename
# extract platform from package name
def get_platform(filename):
@@ -48,12 +48,11 @@ def get_platform(filename):
tokens = filename.split("-")
platforms = ('osx', 'mac', 'bsd',
'win', 'linux', 'source',
- 'solaris',
- 'mingw')
+ 'irix', 'solaris', 'mingw')
platform_tokens = []
found = False
- for token in tokens:
+ for i, token in enumerate(tokens):
if not found:
for platform in platforms:
if platform in token.lower():
@@ -65,20 +64,19 @@ def get_platform(filename):
return '-'.join(platform_tokens)
-
def get_branch(filename):
tokens = filename.split("-")
branch = ""
-
+
for token in tokens:
+ if token == "blender":
+ return branch
+
if branch == "":
branch = token
else:
branch = branch + "-" + token
- if token == "blender":
- return branch
-
return ""
# get filename
@@ -112,11 +110,16 @@ branch = get_branch(packagename)
if platform == '':
sys.stderr.write('Failed to detect platform ' +
- 'from package: %r\n' % packagename)
+ 'from package: %r\n' % packagename)
sys.exit(1)
# extract
-directory = 'public_html/download'
+if not branch or branch == 'master':
+ directory = 'public_html/download'
+elif branch == 'experimental-build':
+ directory = 'public_html/download/experimental'
+else:
+ directory = 'public_html/download'
try:
zf = z.open(package)
@@ -126,8 +129,6 @@ try:
zf.close()
z.close()
-
- os.remove(filename)
except Exception, ex:
sys.stderr.write('Failed to unzip package: %s\n' % str(ex))
sys.exit(1)
diff --git a/build_files/buildbot/slave_compile.py b/build_files/buildbot/slave_compile.py
index a5dadbde05c..4ef46331c64 100644
--- a/build_files/buildbot/slave_compile.py
+++ b/build_files/buildbot/slave_compile.py
@@ -33,7 +33,7 @@ builder = sys.argv[1]
# we run from build/ directory
blender_dir = '../blender.git'
-if builder.find('cmake') != -1:
+if 'cmake' in builder:
# cmake
# set build options
@@ -46,11 +46,21 @@ if builder.find('cmake') != -1:
elif builder.endswith('mac_ppc_cmake'):
cmake_options.append('-DCMAKE_OSX_ARCHITECTURES:STRING=ppc')
+ if 'win64' in builder:
+ cmake_options.append(['-G','"Visual Studio 12 2013 Win64"'])
+ elif 'win32' in builder:
+ cmake_options.append(['-G','"Visual Studio 12 2013"'])
+
+ cmake_options.append("-C../blender.git/build_files/cmake/config/blender_full.cmake")
+ cmake_options.append("-DWITH_CYCLES_CUDA_BINARIES=1")
# configure and make
retcode = subprocess.call(['cmake', blender_dir] + cmake_options)
if retcode != 0:
sys.exit(retcode)
- retcode = subprocess.call(['make', '-s', '-j4', 'install'])
+ if 'win' in builder:
+ retcode = subprocess.call(['msbuild', 'INSTALL.vcxproj', '/p:Configuration=Release'])
+ else:
+ retcode = subprocess.call(['make', '-s', '-j4', 'install'])
sys.exit(retcode)
else:
python_bin = 'python'
diff --git a/build_files/buildbot/slave_pack.py b/build_files/buildbot/slave_pack.py
index c989cd8e31a..8ff7783b6d1 100644
--- a/build_files/buildbot/slave_pack.py
+++ b/build_files/buildbot/slave_pack.py
@@ -115,6 +115,28 @@ if builder.find('scons') != -1:
retcode = subprocess.call([python_bin, 'scons/scons.py'] + scons_options)
sys.exit(retcode)
+else:
+#cmake
+ if 'win' in builder:
+ files = [f for f in os.listdir('.') if os.path.isfile(f) and f.endswith('.zip')]
+ for f in files:
+ os.remove(f)
+ retcode = subprocess.call(['cpack', '-G','ZIP'])
+ result_file = [f for f in os.listdir('.') if os.path.isfile(f) and f.endswith('.zip')][0]
+ os.rename(result_file, "{}.zip".format(builder))
+ # create zip file
+ try:
+ upload_zip = "buildbot_upload.zip"
+ if os.path.exists(upload_zip):
+ os.remove(upload_zip)
+ z = zipfile.ZipFile(upload_zip, "w", compression=zipfile.ZIP_STORED)
+ z.write("{}.zip".format(builder))
+ z.close()
+ sys.exit(retcode)
+ except Exception, ex:
+ sys.stderr.write('Create buildbot_upload.zip failed' + str(ex) + '\n')
+ sys.exit(1)
+
# clean release directory if it already exists
release_dir = 'release'