// TODO: pull from mirror, not from GitHub, (RIOT fetch func?)
unstash('caf-sources')
checkoutscm
dir('caf-sources'){
// Configure and build.
// Configure and build.
cmakeBuildbuildDir:'build',buildType:"$build_type",cleanBuild:clean_build,cmakeArgs:"$cmake_opts",generator:"$generator",installation:'cmake in search path',preloadScript:'../cmake/jenkins.cmake',sourceDir:'.',steps:[[args:'all']]
cmakeBuild([
// Some setup also done in previous setups.
buildDir:'build',
ret=sh(returnStatus:true,
buildType:"$build_type",
script:"""#!/bin/bash +ex
cleanBuild:clean_build,
cd build || exit 1
cmakeArgs:"$cmake_opts",
if [ `uname` = "Darwin" ] ; then
generator:"$generator",
export DYLD_LIBRARY_PATH="$PWD/build/lib"
installation:'cmake in search path',
elif [ `uname` = "FreeBSD" ] ; then
preloadScript:'../cmake/jenkins.cmake',
export LD_LIBRARY_PATH="$PWD/build/lib"
sourceDir:'.',
else
steps:[[args:'all']],
export LD_LIBRARY_PATH="$PWD/build/lib"
])
export ASAN_OPTIONS=detect_leaks=1
// Test.
fi
ctest([
exit 0""")
arguments:'--output-on-failure',
if(ret){
installation:'cmake auto install',
echo"[!!!] Setting up variables failed!"
workingDir:'build',
currentBuild.result='FAILURE'
])
return
}
}
// Test.
ctestarguments:'--output-on-failure',installation:'cmake auto install',workingDir:'build'