diff options
author | Jay Krell <jay.krell@cornell.edu> | 2018-07-29 05:37:19 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-07-29 05:37:19 +0300 |
commit | 5c144761f4af4d2b89495980c08532e2a012baab (patch) | |
tree | 10dd264f460622785b631817e8a0886f0aa01bcd /scripts/ci | |
parent | 59ffd2a1548b2c973a2bba48c0e5654b7f40bb58 (diff) |
[cxx] Build/CI support for C++. (#9731)
* [cxx] Build/CI support for C++.
configure -enable-cplusplus and CI_TAGS=cplusplus
https://jenkins.mono-project.com//job/test-mono-mainline-linux-cplusplus/
* [cxx] Rename CPLUSPLUS/cplusplus to CXX/cxx.
* [cxx] Add C++ build support to mini.
* [cxx] Jenkins/CI support for cxx not just cplusplus.
Diffstat (limited to 'scripts/ci')
-rwxr-xr-x | scripts/ci/run-jenkins.sh | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/scripts/ci/run-jenkins.sh b/scripts/ci/run-jenkins.sh index beaa951f831..be9a70fb8b8 100755 --- a/scripts/ci/run-jenkins.sh +++ b/scripts/ci/run-jenkins.sh @@ -78,6 +78,14 @@ if [ -x "/usr/bin/dpkg-architecture" ]; wget -qO- https://download.mono-project.com/test/new-certs.tgz| tar zx -C ~/.config/.mono/ fi +if [[ ${CI_TAGS} == *'cxx'* ]]; then + EXTRA_CONF_FLAGS="$EXTRA_CONF_FLAGS -enable-cxx" +fi + +if [[ ${CI_TAGS} == *'cplusplus'* ]]; then + EXTRA_CONF_FLAGS="$EXTRA_CONF_FLAGS -enable-cxx" +fi + if [[ ${CI_TAGS} == *'win-'* ]]; then mkdir -p ~/.config/.mono/ @@ -156,6 +164,7 @@ fi if [[ ${CI_TAGS} != *'mac-sdk'* ]]; # Mac SDK builds Mono itself then + echo ./autogen.sh $EXTRA_CONF_FLAGS ${TESTCMD} --label=configure --timeout=60m --fatal ./autogen.sh $EXTRA_CONF_FLAGS fi if [[ ${CI_TAGS} == *'win-i386'* ]]; @@ -184,6 +193,20 @@ if [[ ${CI_TAGS} == *'linux-ppc64el'* ]]; then make_parallelism=-j1; fi make_continue= if [[ ${CI_TAGS} == *'checked-all'* ]]; then make_continue=-k; fi + +# FIXME For now C++ means just build mono (metadata, mini, sgen, utils) and ignore errors to get more. +# Once this succeeds, we can let it proceed more normally through tests. +if [[ ${CI_TAGS} == *'cxx'* ]]; + then + ${TESTCMD} --label=make --timeout=${make_timeout} --fatal make ${make_parallelism} -k -w -C mono V=1 + exit 0 +fi +if [[ ${CI_TAGS} == *'cplusplus'* ]]; + then + ${TESTCMD} --label=make --timeout=${make_timeout} --fatal make ${make_parallelism} -k -w -C mono V=1 + exit 0 +fi + if [[ ${CI_TAGS} != *'mac-sdk'* ]]; # Mac SDK builds Mono itself then ${TESTCMD} --label=make --timeout=${make_timeout} --fatal make ${make_parallelism} ${make_continue} -w V=1 |