|
1 | 1 | name: CI
|
2 | 2 |
|
3 | 3 | on:
|
| 4 | + push: |
| 5 | + branches: |
| 6 | + - swiftwasm |
4 | 7 | pull_request:
|
5 | 8 | branches:
|
6 | 9 | - swiftwasm
|
|
13 | 16 | steps:
|
14 | 17 | - uses: actions/checkout@v1
|
15 | 18 | - name: Run a multi-line script
|
16 |
| - run: | |
17 |
| - sudo apt update |
18 |
| - sudo apt install \ |
19 |
| - git ninja-build clang python \ |
20 |
| - uuid-dev libicu-dev icu-devtools libbsd-dev \ |
21 |
| - libedit-dev libxml2-dev libsqlite3-dev swig \ |
22 |
| - libpython-dev libncurses5-dev pkg-config \ |
23 |
| - libblocksruntime-dev libcurl4-openssl-dev \ |
24 |
| - systemtap-sdt-dev tzdata rsync |
25 |
| -
|
26 |
| - ./utils/update-checkout --clone --scheme wasm |
27 |
| - git checkout $GITHUB_SHA |
28 |
| - export sourcedir=$PWD/.. |
29 |
| - cd $sourcedir |
30 |
| -
|
31 |
| - wget -O install_cmake.sh "https://github.com/Kitware/CMake/releases/download/v3.15.3/cmake-3.15.3-Linux-x86_64.sh" |
32 |
| - chmod +x install_cmake.sh |
33 |
| - sudo mkdir -p /opt/cmake |
34 |
| - sudo ./install_cmake.sh --skip-license --prefix=/opt/cmake |
35 |
| - sudo ln -sf /opt/cmake/bin/* /usr/local/bin |
36 |
| - cmake --version |
37 |
| -
|
38 |
| - wget -O wasi-sdk.tar.gz https://github.com/swiftwasm/wasi-sdk/releases/download/20190421.6/wasi-sdk-3.19gefb17cb478f9.m-linux.tar.gz |
39 |
| - tar xfz wasi-sdk.tar.gz |
40 |
| - mv wasi-sdk-3.19gefb17cb478f9+m/opt/wasi-sdk ./wasi-sdk |
41 |
| -
|
42 |
| - wget -O icu.tar.xz "https://github.com/swiftwasm/icu4c-wasi/releases/download/20190421.3/icu4c-wasi.tar.xz" |
43 |
| - tar xf icu.tar.xz |
44 |
| -
|
45 |
| - cd swift |
46 |
| - utils/build-script --release --wasm --verbose \ |
47 |
| - --skip-build-benchmarks \ |
48 |
| - --extra-cmake-options=" \ |
49 |
| - -DSWIFT_SDKS='WASM;LINUX' \ |
50 |
| - -DSWIFT_BUILD_SOURCEKIT=FALSE \ |
51 |
| - -DSWIFT_ENABLE_SOURCEKIT_TESTS=FALSE \ |
52 |
| - -DCMAKE_AR='$sourcedir/wasi-sdk/bin/llvm-ar' \ |
53 |
| - -DCMAKE_RANLIB='$sourcedir/wasi-sdk/bin/llvm-ranlib' \ |
54 |
| - " \ |
55 |
| - --build-stdlib-deployment-targets "wasm-wasm32" \ |
56 |
| - --build-swift-static-stdlib \ |
57 |
| - --install-destdir="$sourcedir/install" \ |
58 |
| - --install-prefix="/opt/swiftwasm-sdk" \ |
59 |
| - --install-swift \ |
60 |
| - --installable-package="$sourcedir/swiftwasm.tar.gz" \ |
61 |
| - --llvm-targets-to-build "X86;WebAssembly" \ |
62 |
| - --stdlib-deployment-targets "wasm-wasm32" \ |
63 |
| - --wasm-icu-data "todo-icu-data" \ |
64 |
| - --wasm-icu-i18n "$sourcedir/icu_out/lib" \ |
65 |
| - --wasm-icu-i18n-include "$sourcedir/icu_out/include" \ |
66 |
| - --wasm-icu-uc "$sourcedir/icu_out/lib" \ |
67 |
| - --wasm-icu-uc-include "$sourcedir/icu_out/include" \ |
68 |
| - --wasm-wasi-sdk "$sourcedir/wasi-sdk" |
| 19 | + run: ./ci-linux.sh |
69 | 20 |
|
70 | 21 | macos_build:
|
71 | 22 | timeout-minutes: 0
|
|
74 | 25 | steps:
|
75 | 26 | - uses: actions/checkout@v1
|
76 | 27 | - name: Run a multi-line script
|
77 |
| - run: | |
78 |
| - brew install cmake ninja llvm |
79 |
| - ./utils/update-checkout --clone --scheme wasm |
80 |
| - git checkout $GITHUB_SHA |
81 |
| - export sourcedir=$PWD/.. |
82 |
| - cd $sourcedir |
83 |
| - wget -O wasi-sdk.tar.gz https://github.com/swiftwasm/wasi-sdk/releases/download/20190421.6/wasi-sdk-3.19gefb17cb478f9.m-linux.tar.gz |
84 |
| - tar xfz wasi-sdk.tar.gz |
85 |
| - mv wasi-sdk-3.19gefb17cb478f9+m/opt/wasi-sdk ./wasi-sdk |
86 |
| - # Link sysroot/usr/include to sysroot/include because Darwin sysroot doesn't |
87 |
| - # find header files in sysroot/include but sysroot/usr/include |
88 |
| - mkdir wasi-sdk/share/sysroot/usr/ |
89 |
| - ln -s ../include wasi-sdk/share/sysroot/usr/include |
90 |
| - wget -O icu.tar.xz "https://github.com/swiftwasm/icu4c-wasi/releases/download/20190421.3/icu4c-wasi.tar.xz" |
91 |
| - tar xf icu.tar.xz |
92 |
| - cd swift |
93 |
| - ./utils/build-script --release --wasm --verbose \ |
94 |
| - --skip-build-benchmarks \ |
95 |
| - --extra-cmake-options=" \ |
96 |
| - -DSWIFT_PRIMARY_VARIANT_SDK:STRING=WASM \ |
97 |
| - -DSWIFT_PRIMARY_VARIANT_ARCH:STRING=wasm32 \ |
98 |
| - -DSWIFT_OSX_x86_64_ICU_STATICLIB=TRUE \ |
99 |
| - -DSWIFT_BUILD_SOURCEKIT=FALSE \ |
100 |
| - -DSWIFT_ENABLE_SOURCEKIT_TESTS=FALSE \ |
101 |
| - -DCMAKE_AR='/usr/local/opt/llvm/bin/llvm-ar' \ |
102 |
| - -DCMAKE_RANLIB='/usr/local/opt/llvm/bin/llvm-ranlib' \ |
103 |
| - " \ |
104 |
| - --build-stdlib-deployment-targets "wasm-wasm32" \ |
105 |
| - --build-swift-dynamic-sdk-overlay false \ |
106 |
| - --build-swift-static-sdk-overlay false \ |
107 |
| - --build-swift-static-stdlib \ |
108 |
| - --llvm-targets-to-build "X86;WebAssembly" \ |
109 |
| - --stdlib-deployment-targets "wasm-wasm32" \ |
110 |
| - --wasm-icu-data "todo-icu-data" \ |
111 |
| - --wasm-icu-i18n "$sourcedir/icu_out/lib" \ |
112 |
| - --wasm-icu-i18n-include "$sourcedir/icu_out/include" \ |
113 |
| - --wasm-icu-uc "$sourcedir/icu_out/lib" \ |
114 |
| - --wasm-icu-uc-include "$sourcedir/icu_out/include" \ |
115 |
| - --wasm-wasi-sdk "$sourcedir/wasi-sdk" |
| 28 | + run: ./ci-mac.sh |
0 commit comments