Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/mono.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJay Krell <jay.krell@cornell.edu>2018-07-29 05:37:19 +0300
committerGitHub <noreply@github.com>2018-07-29 05:37:19 +0300
commit5c144761f4af4d2b89495980c08532e2a012baab (patch)
tree10dd264f460622785b631817e8a0886f0aa01bcd /scripts/ci
parent59ffd2a1548b2c973a2bba48c0e5654b7f40bb58 (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-xscripts/ci/run-jenkins.sh23
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