1 Star 1 Fork 0

hawkhai / ogre

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
Jenkinsfile 2.58 KB
一键复制 编辑 原始数据 按行查看 历史
Pavel Rojtberg 提交于 2017-01-21 19:23 . CI: add Jenkinsfile [ci skip]
def pull() {
try {
checkout scm: [$class: 'MercurialSCM',
source: 'https://bitbucket.org/sinbad/ogre',
revision: 'default',
clean: false]
} catch(Exception e) {
// mac runner is flaky
}
}
def test_android() {
node("Ubuntu") {
pull()
stage("Android Build") {
env.ANDROID_NDK = pwd()+"/android-ndk-r13b"
env.ANDROID_SDK = "none"
sh "ANDROID=TRUE cmake -P ci-build.cmake"
sh "cmake --build ."
}
}
}
def test_ios() {
node("mac") {
pull()
stage("ios Build") {
sh "IOS=TRUE cmake -P ci-build.cmake"
sh "cmake --build ."
}
}
}
def test_platform(label, isstatic) {
node(label) {
pull()
def type = isstatic == "TRUE" ? "static" : "shared"
stage("${label} (${type}) Build") {
def common = " -DOGRE_BUILD_TESTS=ON -DCMAKE_BUILD_TYPE=Debug -DOGRE_STATIC=${isstatic} ."
if(isUnix()) {
if(label == "mac") {
common += " -G Xcode"
}
sh "cmake -DOGRE_BUILD_DEPENDENCIES=OFF -DCMAKE_CXX_FLAGS=-Werror ${common}"
if(label == "mac") {
sh "cmake --build . -- ONLY_ACTIVE_ARCH=YES"
} else {
sh "cmake --build ."
}
} else {
def cxxflags = '-DGTEST_HAS_TR1_TUPLE=0 -EHsc'
if(isstatic == "FALSE") {
cxxflags += " -WX"
}
bat """cmake -DOGRE_BUILD_COMPONENT_PROPERTY=FALSE -DOGRE_BUILD_RENDERSYSTEM_GL=FALSE -DCMAKE_CXX_FLAGS="${cxxflags}" ${common}"""
bat "cmake --build ."
}
}
if(label == "Ubuntu") {
stage("${label} (${type}) Test") {
sh "xvfb-run -a bin/Test_Ogre"
}
}
}
}
bitbucketStatusNotify ( buildState: 'INPROGRESS' )
try {
parallel (failFast: false,
linux_static: { test_platform("Ubuntu", "TRUE") },
linux_dynamic: { test_platform("Ubuntu", "FALSE") },
android: { test_android() },
mac_dynamic: { test_platform("mac", "FALSE") },
mac_static: { test_platform("mac", "TRUE") },
ios: { test_ios() },
windows_static: { test_platform("windows", "TRUE") },
windows_dynamic: { test_platform("windows", "FALSE") }
)
bitbucketStatusNotify ( buildState: 'SUCCESSFUL' )
} catch(Exception e) {
bitbucketStatusNotify ( buildState: 'FAILED' )
}
C++
1
https://gitee.com/hawkhai/ogre.git
git@gitee.com:hawkhai/ogre.git
hawkhai
ogre
ogre
master

搜索帮助