Further tweaks to buildbot
authorSergey Sharybin <sergey.vfx@gmail.com>
Thu, 10 Jan 2013 08:55:44 +0000 (08:55 +0000)
committerSergey Sharybin <sergey.vfx@gmail.com>
Thu, 10 Jan 2013 08:55:44 +0000 (08:55 +0000)
- BF_BITNESS should be passed as a command line argument
- Made it so CUDA binaries and OSL compiled scripts would
  be installed regardless WITH_BF_PYTHON (which seems to
  be quite obvious)
- Disable overwrite install, so CUDA kernels installed by
  it's build target will be preserved when building blender
  itself.

SConstruct
build_files/buildbot/config/user-config-cuda-glibc211-i686.py
build_files/buildbot/config/user-config-cuda-glibc211-x86_64.py
build_files/buildbot/config/user-config-glibc211-i686.py
build_files/buildbot/config/user-config-glibc211-x86_64.py
build_files/buildbot/slave_compile.py

index 49e899c..3b1be71 100644 (file)
@@ -746,29 +746,30 @@ if env['OURPLATFORM']!='darwin':
             source=['intern/cycles/doc/license/'+s for s in source]
             scriptinstall.append(env.Install(dir=dir,source=source))
 
-            # cuda binaries
-            if env['WITH_BF_CYCLES_CUDA_BINARIES']:
-                dir=os.path.join(env['BF_INSTALLDIR'], VERSION, 'scripts', 'addons','cycles', 'lib')
-                for arch in env['BF_CYCLES_CUDA_BINARIES_ARCH']:
-                    kernel_build_dir = os.path.join(B.root_build_dir, 'intern/cycles/kernel')
-                    cubin_file = os.path.join(kernel_build_dir, "kernel_%s.cubin" % arch)
-                    cubininstall.append(env.Install(dir=dir,source=cubin_file))
-
-            # osl shaders
-            if env['WITH_BF_CYCLES_OSL']:
-                dir=os.path.join(env['BF_INSTALLDIR'], VERSION, 'scripts', 'addons','cycles', 'shader')
-
-                osl_source_dir = Dir('./intern/cycles/kernel/shaders').srcnode().path
-                oso_build_dir = os.path.join(B.root_build_dir, 'intern/cycles/kernel/shaders')
-
-                headers='node_color.h node_fresnel.h node_texture.h oslutil.h stdosl.h'.split()
-                source=['intern/cycles/kernel/shaders/'+s for s in headers]
-                scriptinstall.append(env.Install(dir=dir,source=source))
+    if env['WITH_BF_CYCLES']:
+        # cuda binaries
+        if env['WITH_BF_CYCLES_CUDA_BINARIES']:
+            dir=os.path.join(env['BF_INSTALLDIR'], VERSION, 'scripts', 'addons','cycles', 'lib')
+            for arch in env['BF_CYCLES_CUDA_BINARIES_ARCH']:
+                kernel_build_dir = os.path.join(B.root_build_dir, 'intern/cycles/kernel')
+                cubin_file = os.path.join(kernel_build_dir, "kernel_%s.cubin" % arch)
+                cubininstall.append(env.Install(dir=dir,source=cubin_file))
+
+        # osl shaders
+        if env['WITH_BF_CYCLES_OSL']:
+            dir=os.path.join(env['BF_INSTALLDIR'], VERSION, 'scripts', 'addons','cycles', 'shader')
+
+            osl_source_dir = Dir('./intern/cycles/kernel/shaders').srcnode().path
+            oso_build_dir = os.path.join(B.root_build_dir, 'intern/cycles/kernel/shaders')
+
+            headers='node_color.h node_fresnel.h node_texture.h oslutil.h stdosl.h'.split()
+            source=['intern/cycles/kernel/shaders/'+s for s in headers]
+            scriptinstall.append(env.Install(dir=dir,source=source))
 
-                for f in os.listdir(osl_source_dir):
-                    if f.endswith('.osl'):
-                        oso_file = os.path.join(oso_build_dir, f.replace('.osl', '.oso'))
-                        scriptinstall.append(env.Install(dir=dir,source=oso_file))
+            for f in os.listdir(osl_source_dir):
+                if f.endswith('.osl'):
+                    oso_file = os.path.join(oso_build_dir, f.replace('.osl', '.oso'))
+                    scriptinstall.append(env.Install(dir=dir,source=oso_file))
 
     if env['WITH_BF_OCIO']:
         colormanagement = os.path.join('release', 'datafiles', 'colormanagement')
index 16733be..e72218e 100644 (file)
@@ -1,6 +1,5 @@
 BF_BUILDDIR = '../blender-build/linux-glibc211-i686'
 BF_INSTALLDIR = '../blender-install/linux-glibc211-i686'
 BF_NUMJOBS = 1
-BF_BITNESS = 32
 
 BF_CYCLES_CUDA_BINARIES_ARCH = ['sm_13', 'sm_20', 'sm_21', 'sm_30']
index 60afecc..10738a1 100644 (file)
@@ -1,6 +1,5 @@
 BF_BUILDDIR = '../blender-build/linux-glibc211-x86_64'
 BF_INSTALLDIR = '../blender-install/linux-glibc211-x86_64'
 BF_NUMJOBS = 1
-BF_BITNESS = 64
 
 BF_CYCLES_CUDA_BINARIES_ARCH = ['sm_13', 'sm_20', 'sm_21', 'sm_30']
index 56eedc3..540416e 100644 (file)
@@ -1,6 +1,7 @@
 BF_BUILDDIR = '../blender-build/linux-glibc211-i686'
 BF_INSTALLDIR = '../blender-install/linux-glibc211-i686'
 BF_NUMJOBS = 4
+WITHOUT_BF_OVERWRITE_INSTALL = True
 
 # Python configuration
 BF_PYTHON_VERSION = '3.3'
index ab3efed..c0ba806 100644 (file)
@@ -1,6 +1,7 @@
 BF_BUILDDIR = '../blender-build/linux-glibc211-x86_64'
 BF_INSTALLDIR = '../blender-install/linux-glibc211-x86_64'
 BF_NUMJOBS = 4
+WITHOUT_BF_OVERWRITE_INSTALL = True
 
 # Python configuration
 BF_PYTHON_VERSION = '3.3'
index b66a09a..dab8a8e 100644 (file)
@@ -64,7 +64,8 @@ else:
         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']
+                       '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'):
@@ -77,8 +78,8 @@ else:
             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
+        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
@@ -112,6 +113,11 @@ else:
             elif config.find('cuda') != -1:
                 scons_options.append('cudakernels')
                 cur_scons_cmd = cuda_scons_cmd
+
+                if config.find('i686') != -1:
+                    scons_options.append('BF_BITNESS=32')
+                elif config.find('x86_64') != -1:
+                    scons_options.append('BF_BITNESS=64')
             else:
                 scons_options.append('blender')
                 cur_scons_cmd = prog_scons_cmd