|
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