Buildbot: Initial work to move linux build environment to CMake
[blender.git] / build_files / buildbot / slave_test.py
1 # ##### BEGIN GPL LICENSE BLOCK #####
2 #
3 #  This program is free software; you can redistribute it and/or
4 #  modify it under the terms of the GNU General Public License
5 #  as published by the Free Software Foundation; either version 2
6 #  of the License, or (at your option) any later version.
7 #
8 #  This program is distributed in the hope that it will be useful,
9 #  but WITHOUT ANY WARRANTY; without even the implied warranty of
10 #  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
11 #  GNU General Public License for more details.
12 #
13 #  You should have received a copy of the GNU General Public License
14 #  along with this program; if not, write to the Free Software Foundation,
15 #  Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
16 #
17 # ##### END GPL LICENSE BLOCK #####
18
19 # <pep8 compliant>
20
21 import subprocess
22 import os
23 import sys
24
25 # get builder name
26 if len(sys.argv) < 2:
27     sys.stderr.write("Not enough arguments, expecting builder name\n")
28     sys.exit(1)
29
30 builder = sys.argv[1]
31
32 # we run from build/ directory
33 blender_dir = '../blender.git'
34
35 if "cmake" in builder:
36     # cmake
37
38     build_dir = os.path.abspath(os.path.join('..', 'build', builder))
39     chroot_name = None
40     chroot_prefix = []
41
42     if builder.endswith('x86_64_cmake'):
43         chroot_name = 'buildbot_squeeze_x86_64'
44     elif builder.endswith('i686_cmake'):
45         chroot_name = 'buildbot_squeeze_i686'
46     if chroot_name:
47         chroot_prefix = ['schroot', '-c', chroot_name, '--']
48
49     os.chdir(build_dir)
50     retcode = subprocess.call(chroot_prefix + ['ctest', '--output-on-failure'])
51     sys.exit(retcode)
52 else:
53     # scons
54     pass