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:
authorLudovic Henry <luhenry@microsoft.com>2018-10-02 00:43:46 +0300
committerGitHub <noreply@github.com>2018-10-02 00:43:46 +0300
commit0aebe90cac85a171735629a779f44ca04bc90377 (patch)
tree14cb84a7d88a4d58762624fce3122a64d800fdc5 /scripts/ci
parent9182bcccc3ded3ea3b00e10771ea81b0ed3fcc8f (diff)
[sdks] Create archive targets for pre-building on CI (#10882)
* [sdks] Remove redundant --enable-cxx * [sdks] Shorten `-m32`/`-m64` parameters detection for runtimes * [sdks] Build BCL profiles without configure flags * [sdks] Add BclTemplate to build BCL profiles This is to avoid building all the profiles in a single `sdks/out/bcl` directory which will be shared between android, ios and wasm. * [sdks] Create archive targets for pre-building on CI * [sdks] Use archive-{android,ios,wasm} on CI * [sdks] Run archive-llvm-llvm{,win}{32,64} on CI
Diffstat (limited to 'scripts/ci')
-rwxr-xr-xscripts/ci/run-jenkins.sh35
1 files changed, 17 insertions, 18 deletions
diff --git a/scripts/ci/run-jenkins.sh b/scripts/ci/run-jenkins.sh
index e2e71f06f4b..cb54c39f136 100755
--- a/scripts/ci/run-jenkins.sh
+++ b/scripts/ci/run-jenkins.sh
@@ -94,22 +94,23 @@ then
wget -qO- https://download.mono-project.com/test/new-certs.tgz| tar zx -C ~/.config/.mono/
fi
+if [[ ${CI_TAGS} == *'sdks-llvm'* ]]; then
+ ${TESTCMD} --label=archive --timeout=120m --fatal make -j ${CI_CPU_COUNT} -C sdks/builds archive-llvm36-llvm32 archive-llvm-llvm{,win}{32,64} NINJA=
+ exit 0
+fi
+
if [[ ${CI_TAGS} == *'product-sdks-ios'* ]];
then
echo "DISABLE_ANDROID=1" > sdks/Make.config
echo "DISABLE_WASM=1" >> sdks/Make.config
+ echo "DISABLE_DESKTOP=1" >> sdks/Make.config
if [[ ${CI_TAGS} == *'cxx'* ]]; then
echo "ENABLE_CXX=1" >> sdks/Make.config
fi
export device_test_suites="Mono.Runtime.Tests System.Core"
- ${TESTCMD} --label=provision-llvm --timeout=60m --fatal make -j ${CI_CPU_COUNT} -C sdks/builds provision-llvm36-llvm32 provision-llvm-llvm64
+ ${TESTCMD} --label=archive --timeout=180m --fatal make -j ${CI_CPU_COUNT} -C sdks/builds archive-ios NINJA=
- ${TESTCMD} --label=build-sim-runtimes --timeout=60m --fatal make -j ${CI_CPU_COUNT} -C sdks/builds package-ios-{sim64,sim32,simtv,simwatch}
- ${TESTCMD} --label=build-dev-runtimes --timeout=60m --fatal make -j ${CI_CPU_COUNT} -C sdks/builds package-ios-{target64,target32,targettv,targetwatch}
- ${TESTCMD} --label=build-cross-compilers --timeout=60m --fatal make -j ${CI_CPU_COUNT} -C sdks/builds package-ios-{cross64,cross32,cross32-64,crosswatch}
-
- ${TESTCMD} --label=bcl --timeout=60m --fatal make -j ${CI_CPU_COUNT} -C sdks/builds package-bcl
${TESTCMD} --label=build-tests --timeout=10m --fatal make -C sdks/ios compile-tests
${TESTCMD} --label=run-sim --timeout=20m make -C sdks/ios run-ios-sim-all
${TESTCMD} --label=build-ios-dev --timeout=60m make -C sdks/ios build-ios-dev-all
@@ -128,28 +129,25 @@ if [[ ${CI_TAGS} == *'product-sdks-ios'* ]];
if [[ ${CI_TAGS} == *'run-device-tests'* ]]; then
for suite in ${device_test_suites}; do ${TESTCMD} --label=run-ios-dev-interp-mixed-${suite} --timeout=10m make -C sdks/ios run-ios-dev-${suite}; done
fi
- ${TESTCMD} --label=package --timeout=60m tar cvzf mono-product-sdk-$GIT_COMMIT.tar.gz -C sdks/out/ bcl llvm-llvm64 llvm36-llvm32 ios-cross32-release ios-cross64-release
exit 0
fi
if [[ ${CI_TAGS} == *'product-sdks-android'* ]];
then
- echo "IGNORE_PROVISION_ANDROID=1" > sdks/Make.config
- echo "IGNORE_PROVISION_MXE=1" >> sdks/Make.config
- echo "IGNORE_PROVISION_LLVM=1" >> sdks/Make.config
+ echo "DISABLE_IOS=1" > sdks/Make.config
+ echo "DISABLE_WASM=1" >> sdks/Make.config
+ echo "DISABLE_DESKTOP=1" >> sdks/Make.config
echo "DISABLE_CCACHE=1" >> sdks/Make.config
if [[ ${CI_TAGS} == *'cxx'* ]]; then
echo "ENABLE_CXX=1" >> sdks/Make.config
fi
+
# For some very strange reasons, `make -C sdks/android accept-android-license` get stuck when invoked through ${TESTCMD}
# but doesn't get stuck when called via the shell, so let's just call it here now.
${TESTCMD} --label=provision-android --timeout=120m --fatal make -j ${CI_CPU_COUNT} -C sdks/builds provision-android && make -C sdks/android accept-android-license
- if [[ ${CI_TAGS} == *'provision-mxe'* ]]; then
- ${TESTCMD} --label=provision-mxe --timeout=240m --fatal make -j ${CI_CPU_COUNT} -C sdks/builds provision-mxe
- fi
- ${TESTCMD} --label=provision-llvm --timeout=240m --fatal make -j ${CI_CPU_COUNT} -C sdks/builds provision-llvm-llvm{,win}{32,64}
- ${TESTCMD} --label=runtimes --timeout=120m --fatal make -j ${CI_CPU_COUNT} -C sdks/builds package-android-{armeabi-v7a,arm64-v8a,x86,x86_64} package-android-host-{Darwin,mxe-Win64} package-android-cross-{arm,arm64,x86,x86_64}{,-win}
- ${TESTCMD} --label=package --timeout=60m --fatal make -C sdks/android package
+ ${TESTCMD} --label=provision-mxe --timeout=240m --fatal make -j ${CI_CPU_COUNT} -C sdks/builds provision-mxe
+ ${TESTCMD} --label=archive --timeout=180m --fatal make -j ${CI_CPU_COUNT} -C sdks/builds archive-android NINJA= IGNORE_PROVISION_ANDROID=1 IGNORE_PROVISION_MXE=1
+
${TESTCMD} --label=mini --timeout=60m make -C sdks/android check-mini
${TESTCMD} --label=corlib --timeout=60m make -C sdks/android check-corlib
${TESTCMD} --label=System --timeout=60m make -C sdks/android check-System
@@ -181,8 +179,9 @@ if [[ ${CI_TAGS} == *'webassembly'* ]];
if [[ ${CI_TAGS} == *'cxx'* ]]; then
echo "ENABLE_CXX=1" >> sdks/Make.config
fi
- ${TESTCMD} --label=runtimes --timeout=60m --fatal make -j ${CI_CPU_COUNT} -C sdks/builds package-wasm-runtime package-wasm-cross
- ${TESTCMD} --label=bcl --timeout=60m --fatal make -j ${CI_CPU_COUNT} -C sdks/builds package-bcl
+
+ ${TESTCMD} --label=archive --timeout=180m --fatal make -j ${CI_CPU_COUNT} -C sdks/builds archive-wasm NINJA=
+
${TESTCMD} --label=wasm-build --timeout=60m --fatal make -j ${CI_CPU_COUNT} -C sdks/wasm build
${TESTCMD} --label=ch-mini-test --timeout=60m make -C sdks/wasm run-ch-mini
${TESTCMD} --label=v8-mini-test --timeout=60m make -C sdks/wasm run-v8-mini