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:
authorSergey Sharybin <sergey.vfx@gmail.com>2013-01-10 12:01:19 +0400
committerSergey Sharybin <sergey.vfx@gmail.com>2013-01-10 12:01:19 +0400
commit2a43380dedd2aec7d5cb0260448e894c22da04fb (patch)
treec63157c0878431b8070d8a404e306fa23ace6115 /build_files/buildbot/slave_compile.py
parent35d0e99299cc653c9064026ccbb2b2453483c515 (diff)
Switch linux buildbot to compile all cuda kernels in 64bit environment
Solves memory limit issues when building sm_13 for 32bit platform. Some further refinement of patch could be needed.
Diffstat (limited to 'build_files/buildbot/slave_compile.py')
-rw-r--r--build_files/buildbot/slave_compile.py41
1 files changed, 29 insertions, 12 deletions
diff --git a/build_files/buildbot/slave_compile.py b/build_files/buildbot/slave_compile.py
index fa933a84841..b66a09afe25 100644
--- a/build_files/buildbot/slave_compile.py
+++ b/build_files/buildbot/slave_compile.py
@@ -60,6 +60,26 @@ else:
if builder.find('linux') != -1:
import shutil
+ configs = []
+ if builder.endswith('linux_glibc211_x86_64_scons'):
+ configs = ['user-config-player-glibc211-x86_64.py',
+ 'user-config-cuda-glibc211-x86_64.py',
+ 'user-config-glibc211-x86_64.py']
+ chroot_name = 'buildbot_squeeze_x86_64'
+ cuda_chroot = 'buildbot_squeeze_x86_64'
+ elif builder.endswith('linux_glibc211_i386_scons'):
+ configs = ['user-config-player-glibc211-i686.py',
+ 'user-config-cuda-glibc211-i686.py',
+ 'user-config-glibc211-i686.py']
+ chroot_name = 'buildbot_squeeze_i686'
+
+ # use 64bit cuda toolkit, so there'll be no memory limit issues
+ cuda_chroot = 'buildbot_squeeze_x86_64'
+
+ # Compilation will happen inside of chroot environment
+ prog_scons_cmd = ['schroot', '-c', chroot_name] + scons_cmd
+ cuda_scons_cmd = ['schroot', '-c', cuda_chroot] + scons_cmd
+
# We're using the same rules as release builder, so tweak
# build and install dirs
build_dir = os.path.join('..', 'build', builder)
@@ -74,14 +94,6 @@ else:
buildbot_dir = os.path.dirname(os.path.realpath(__file__))
config_dir = os.path.join(buildbot_dir, 'config')
- configs = []
- if builder.endswith('linux_glibc211_x86_64_scons'):
- configs = ['user-config-player-glibc211-x86_64.py',
- 'user-config-glibc211-x86_64.py']
- elif builder.endswith('linux_glibc211_i386_scons'):
- configs = ['user-config-player-glibc211-i686.py',
- 'user-config-glibc211-i686.py']
-
for config in configs:
config_fpath = os.path.join(config_dir, config)
@@ -94,14 +106,19 @@ else:
scons_options += common_options
- if config.find('player') == -1:
- scons_options.append('blender')
- else:
+ if config.find('player') != -1:
scons_options.append('blenderplayer')
+ cur_scons_cmd = prog_scons_cmd
+ elif config.find('cuda') != -1:
+ scons_options.append('cudakernels')
+ cur_scons_cmd = cuda_scons_cmd
+ else:
+ scons_options.append('blender')
+ cur_scons_cmd = prog_scons_cmd
scons_options.append('BF_CONFIG=' + config_fpath)
- retcode = subprocess.call(scons_cmd + scons_options)
+ retcode = subprocess.call(cur_scons_cmd + scons_options)
if retcode != 0:
print('Error building rules wuth config ' + config)
sys.exit(retcode)