mirror of
https://github.com/luau-lang/luau.git
synced 2024-11-15 22:35:43 +08:00
7fb7f4382d
We need ubuntu-20.04 for coverage analysis (clang after 10 doesn't seem to properly interact with gcov version used for codecov) and for releases (to produce binaries targeting earlier glibc). However, we still should be verifying that Luau builds on latest, because newer toolchains have stricter standard library headers and/or warnings; without this we're at risk of constantly regressing the build for packaging or external applications. Note that release.yml can probably just be deleted but for now we simply adjust it.
59 lines
1.6 KiB
YAML
59 lines
1.6 KiB
YAML
name: release
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- 'master'
|
|
paths-ignore:
|
|
- 'docs/**'
|
|
- 'papers/**'
|
|
- 'rfcs/**'
|
|
- '*.md'
|
|
|
|
jobs:
|
|
build:
|
|
strategy:
|
|
matrix: # using ubuntu-20.04 to build a Linux binary targeting older glibc to improve compatibility
|
|
os: [{name: ubuntu, version: ubuntu-20.04}, {name: macos, version: macos-latest}, {name: windows, version: windows-latest}]
|
|
name: ${{matrix.os.name}}
|
|
runs-on: ${{matrix.os.version}}
|
|
steps:
|
|
- uses: actions/checkout@v1
|
|
- name: configure
|
|
run: cmake . -DCMAKE_BUILD_TYPE=Release
|
|
- name: build
|
|
run: cmake --build . --target Luau.Repl.CLI Luau.Analyze.CLI Luau.Compile.CLI --config Release -j 2
|
|
- uses: actions/upload-artifact@v2
|
|
if: matrix.os.name != 'windows'
|
|
with:
|
|
name: luau-${{matrix.os.name}}
|
|
path: luau*
|
|
- uses: actions/upload-artifact@v2
|
|
if: matrix.os.name == 'windows'
|
|
with:
|
|
name: luau-${{matrix.os.name}}
|
|
path: Release\luau*.exe
|
|
|
|
web:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v1
|
|
- uses: actions/checkout@v2
|
|
with:
|
|
repository: emscripten-core/emsdk
|
|
path: emsdk
|
|
- name: emsdk install
|
|
run: |
|
|
cd emsdk
|
|
./emsdk install latest
|
|
./emsdk activate latest
|
|
- name: make
|
|
run: |
|
|
source emsdk/emsdk_env.sh
|
|
emcmake cmake . -DLUAU_BUILD_WEB=ON -DCMAKE_BUILD_TYPE=Release
|
|
make -j2 Luau.Web
|
|
- uses: actions/upload-artifact@v2
|
|
with:
|
|
name: Luau.Web.js
|
|
path: Luau.Web.js
|