first crack at swig builders

Signed-off-by: Ian Bell <ian.h.bell@gmail.com>
This commit is contained in:
Ian Bell
2014-10-28 12:40:07 -04:00
parent f280e0716b
commit 7527b8cd14

View File

@@ -532,7 +532,7 @@ def cmake_slave(mod_name, platform, gitMode = 'incremental', install = True, cma
factory.addStep(DirectoryUpload(slavesrc="install_root",masterdest="public_html/binaries",url="binaries",compress="bz2"))
return factory
def swig_matlab_pre(gitMode = 'incremental'):
def swig_matlab_builder(platform, gitMode = 'incremental'):
"""
Download SWIG+MATLAB version, use it to build _wrap file for MATLAB builder, upload generated file back to master.
@@ -545,7 +545,7 @@ def swig_matlab_pre(gitMode = 'incremental'):
factory = getBaseFactory(gitMode=gitMode)
#
# Download files from nightly build for swig
factory.addStep(FileDownload(mastersrc = 'public_html/nightly/swig-MATLAB/swig_MATLAB.7z', slavedest = 'swig_MATLAB.7z', haltOnFailure = True))
factory.addStep(FileDownload(mastersrc = 'public_html/nightly/swig+MATLAB/'+platform+'/swig_MATLAB.7z', slavedest = 'swig_MATLAB.7z', haltOnFailure = True))
# Directory for build
factory.addStep(MakeDirectory(dir='build/build', haltOnFailure = True))
# Unzip
@@ -554,13 +554,12 @@ def swig_matlab_pre(gitMode = 'incremental'):
factory.addStep(ShellCommand(command=' '.join(["PATH=swig-matlab-bin/bin:${PATH}","cmake", "..", "-DCOOLPROP_MATLAB_SWIG_MODULE=ON","-DSWIG_DIR=swig-matlab-bin/bin"]),
workdir= "build/build",
haltOnFailure = True))
factory.addStep(ShellCommand(command=["cmake", "--build", "."],
factory.addStep(ShellCommand(command=' '.join(["SWIG_LIB=swig-matlab-bin/share/swig/3.0.2", "cmake", "--build", "."]),
workdir= "build/build",
haltOnFailure = True))
factory.addStep(MakeDirectory(dir='build/bin', haltOnFailure = True))
# Collect the generated files
factory.addStep(ShellCommand(command=["cp", "-avr", "+CoolProp", "../bin"], workdir= "build/build", haltOnFailure = True))
factory.addStep(ShellCommand(command=' '.join(["cp", "-avr", "CoolProp*.cxx", "../bin/dev"]), workdir= "build/build", haltOnFailure = True))
factory.addStep(ShellCommand(command=' '.join(["cp", "-avr", "CoolProp*.mex*", "../bin"]), workdir= "build/build", haltOnFailure = True))
factory.addStep(ShellCommand(command=' '.join(["7z", "a", "../bin/+CoolProp.7z", "+CoolProp"]), workdir= "build/build", haltOnFailure = True))
@@ -568,7 +567,7 @@ def swig_matlab_pre(gitMode = 'incremental'):
factory.addStep(DirectoryUpload(slavesrc="bin",masterdest="public_html/binaries/MATLAB",url="MATLAB",compress="bz2"))
return factory
def swig_scilab_pre(gitMode = 'incremental'):
def swig_scilab_builder(gitMode = 'incremental'):
"""
Download SWIG+scilab version on linux, use it to build _wrap file for scilab builder, upload generated file(s) back to master.
@@ -590,14 +589,14 @@ def swig_scilab_pre(gitMode = 'incremental'):
factory.addStep(ShellCommand(command=' '.join(["PATH=swig-scilab-bin/bin:${PATH}","cmake", "..", "-DCOOLPROP_SCILAB_SWIG_MODULE=ON","-DSWIG_DIR=swig-scilab-bin"]),
workdir= "build/build",
haltOnFailure = True))
factory.addStep(ShellCommand(command=' '.join(["SWIG_LIB=swig-scilab-bin/share/swig/3.0.2", "make", "VERBOSE=1"]), # This is dangerous since version is hardcoded
factory.addStep(ShellCommand(command=' '.join(["SWIG_LIB=swig-scilab-bin/share/swig/3.0.3", "cmake", "--build", "."]),
workdir= "build/build",
haltOnFailure = True))
factory.addStep(MakeDirectory(dir='build/bin', haltOnFailure = True))
# Collect the generated files
factory.addStep(ShellCommand(command=' '.join(["cp", "-avr", "*.c", "../bin/dev"]), workdir= "build/build", haltOnFailure = True))
factory.addStep(ShellCommand(command=' '.join(["cp", "-avr", "*.cxx", "../bin/dev"]), workdir= "build/build", haltOnFailure = True))
factory.addStep(ShellCommand(command=' '.join(["cp", "-avr", "*.sce", "../bin/dev"]), workdir= "build/build", haltOnFailure = True))
if platform == 'linux':
factory.addStep(ShellCommand(command=' '.join(["cp", "-avr", "*.so", "../bin/Linux"]), workdir= "build/build", haltOnFailure = True))
# Upload the files
factory.addStep(DirectoryUpload(slavesrc="bin",masterdest="public_html/binaries/Scilab",url="Scilab",compress="bz2"))
@@ -879,8 +878,9 @@ c['builders'].append(
)
)
c['builders'].append(BuilderConfig(name="SWIG-MATLAB-pre", slavenames=["linux-slave"], factory = swig_matlab_pre()))
c['builders'].append(BuilderConfig(name="SWIG-SCILAB-pre", slavenames=["linux-slave"], factory = swig_scilab_pre()))
for platform in ['windows', 'linux', 'OSX']:
c['builders'].append(BuilderConfig(name="SWIG-MATLAB-"+platform, slavenames=[platform+"-slave"], factory = swig_matlab_builder(platform)))
c['builders'].append(BuilderConfig(name="SWIG-Scilab-"+platform, slavenames=[platform+"-slave"], factory = swig_scilab_builder(platform)))
all_builder_names = [builder.name for builder in c['builders']]