Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
68 changes: 68 additions & 0 deletions .github/workflows/build_asan.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
name: ASAN

on:
push:
paths:
- "**/workflows/build_asan.yml"
- "**/Source/**"
- "**/Tests/**"
- "**/ThirdParty/**"
- "**/CMakeLists.txt"
- "**/.gitmodules"
- "!**/*.md"
- "!**/*.txt"

concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true

env:
BUILD_TYPE: RelWithDebInfo

jobs:
lua:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
lua:
- { version: "5.1", suffix: "51" }
- { version: "5.2", suffix: "52" }
- { version: "5.3", suffix: "53" }
- { version: "5.4", suffix: "54" }
- { version: "5.5", suffix: "55" }

steps:

- uses: actions/checkout@v6
with:
submodules: true

- name: Install Dependencies
run: sudo apt-get -y install ninja-build

- name: Create Build Environment
run: cmake -E make_directory ${{runner.workspace}}/build

- name: Configure
working-directory: ${{runner.workspace}}/build
run: cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=$BUILD_TYPE -DLUABRIDGE_SANITIZE=address -G Ninja

- name: Build Lua ${{ matrix.lua.version }}
working-directory: ${{runner.workspace}}/build
run: |
cmake --build . --config $BUILD_TYPE --parallel $(nproc) --target \
LuaBridgeTests${{ matrix.lua.suffix }} \
LuaBridgeTests${{ matrix.lua.suffix }}LuaC \
LuaBridgeTests${{ matrix.lua.suffix }}Noexcept \
LuaBridgeTests${{ matrix.lua.suffix }}LuaCNoexcept

- name: Test Lua ${{ matrix.lua.version }}
working-directory: ${{runner.workspace}}/build/Tests
env:
ASAN_OPTIONS: detect_leaks=0:detect_odr_violation=0
run: |
./LuaBridgeTests${{ matrix.lua.suffix }}
./LuaBridgeTests${{ matrix.lua.suffix }}LuaC
./LuaBridgeTests${{ matrix.lua.suffix }}Noexcept
./LuaBridgeTests${{ matrix.lua.suffix }}LuaCNoexcept
180 changes: 25 additions & 155 deletions .github/workflows/build_linux.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: Build Linux
name: Linux

on:
push:
Expand All @@ -20,148 +20,18 @@ env:
BUILD_TYPE: Release

jobs:
lua51:
lua:
runs-on: ubuntu-latest
steps:

- uses: actions/checkout@v6
with:
submodules: true

- name: Install Dependencies
run: sudo apt-get -y install ninja-build

- name: Create Build Environment
run: cmake -E make_directory ${{runner.workspace}}/build

- name: Configure
working-directory: ${{runner.workspace}}/build
run: cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=$BUILD_TYPE -G Ninja

- name: Build Lua 5.1
working-directory: ${{runner.workspace}}/build
run: |
cmake --build . --config $BUILD_TYPE --parallel 4 --target \
LuaBridgeTests51 \
LuaBridgeTests51LuaC \
LuaBridgeTests51Noexcept \
LuaBridgeTests51LuaCNoexcept

- name: Test Lua 5.1
working-directory: ${{runner.workspace}}/build/Tests
run: |
./LuaBridgeTests51
./LuaBridgeTests51LuaC
./LuaBridgeTests51Noexcept
./LuaBridgeTests51LuaCNoexcept

lua52:
runs-on: ubuntu-latest
steps:

- uses: actions/checkout@v6
with:
submodules: true

- name: Install Dependencies
run: sudo apt-get -y install ninja-build

- name: Create Build Environment
run: cmake -E make_directory ${{runner.workspace}}/build
strategy:
fail-fast: false
matrix:
lua:
- { version: "5.1", suffix: "51" }
- { version: "5.2", suffix: "52" }
- { version: "5.3", suffix: "53" }
- { version: "5.4", suffix: "54" }
- { version: "5.5", suffix: "55" }

- name: Configure
working-directory: ${{runner.workspace}}/build
run: cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=$BUILD_TYPE -G Ninja

- name: Build Lua 5.2
working-directory: ${{runner.workspace}}/build
run: |
cmake --build . --config $BUILD_TYPE --parallel 4 --target \
LuaBridgeTests52 \
LuaBridgeTests52LuaC \
LuaBridgeTests52Noexcept \
LuaBridgeTests52LuaCNoexcept

- name: Test Lua 5.2
working-directory: ${{runner.workspace}}/build/Tests
run: |
./LuaBridgeTests52
./LuaBridgeTests52LuaC
./LuaBridgeTests52Noexcept
./LuaBridgeTests52LuaCNoexcept

lua53:
runs-on: ubuntu-latest
steps:

- uses: actions/checkout@v6
with:
submodules: true

- name: Install Dependencies
run: sudo apt-get -y install ninja-build

- name: Create Build Environment
run: cmake -E make_directory ${{runner.workspace}}/build

- name: Configure
working-directory: ${{runner.workspace}}/build
run: cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=$BUILD_TYPE -G Ninja

- name: Build Lua 5.3
working-directory: ${{runner.workspace}}/build
run: |
cmake --build . --config $BUILD_TYPE --parallel 4 --target \
LuaBridgeTests53 \
LuaBridgeTests53LuaC \
LuaBridgeTests53Noexcept \
LuaBridgeTests53LuaCNoexcept

- name: Test Lua 5.3
working-directory: ${{runner.workspace}}/build/Tests
run: |
./LuaBridgeTests53
./LuaBridgeTests53LuaC
./LuaBridgeTests53Noexcept
./LuaBridgeTests53LuaCNoexcept

lua54:
runs-on: ubuntu-latest
steps:

- uses: actions/checkout@v6
with:
submodules: true

- name: Install Dependencies
run: sudo apt-get -y install ninja-build

- name: Create Build Environment
run: cmake -E make_directory ${{runner.workspace}}/build

- name: Configure
working-directory: ${{runner.workspace}}/build
run: cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=$BUILD_TYPE -G Ninja

- name: Build Lua 5.4
working-directory: ${{runner.workspace}}/build
run: |
cmake --build . --config $BUILD_TYPE --parallel 4 --target \
LuaBridgeTests54 \
LuaBridgeTests54LuaC \
LuaBridgeTests54Noexcept \
LuaBridgeTests54LuaCNoexcept

- name: Test Lua 5.4
working-directory: ${{runner.workspace}}/build/Tests
run: |
./LuaBridgeTests54
./LuaBridgeTests54LuaC
./LuaBridgeTests54Noexcept
./LuaBridgeTests54LuaCNoexcept

lua55:
runs-on: ubuntu-latest
steps:

- uses: actions/checkout@v6
Expand All @@ -178,22 +48,22 @@ jobs:
working-directory: ${{runner.workspace}}/build
run: cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=$BUILD_TYPE -G Ninja

- name: Build Lua 5.5
- name: Build Lua ${{ matrix.lua.version }}
working-directory: ${{runner.workspace}}/build
run: |
cmake --build . --config $BUILD_TYPE --parallel 4 --target \
LuaBridgeTests55 \
LuaBridgeTests55LuaC \
LuaBridgeTests55Noexcept \
LuaBridgeTests55LuaCNoexcept
cmake --build . --config $BUILD_TYPE --parallel $(nproc) --target \
LuaBridgeTests${{ matrix.lua.suffix }} \
LuaBridgeTests${{ matrix.lua.suffix }}LuaC \
LuaBridgeTests${{ matrix.lua.suffix }}Noexcept \
LuaBridgeTests${{ matrix.lua.suffix }}LuaCNoexcept

- name: Test Lua 5.5
- name: Test Lua ${{ matrix.lua.version }}
working-directory: ${{runner.workspace}}/build/Tests
run: |
./LuaBridgeTests55
./LuaBridgeTests55LuaC
./LuaBridgeTests55Noexcept
./LuaBridgeTests55LuaCNoexcept
./LuaBridgeTests${{ matrix.lua.suffix }}
./LuaBridgeTests${{ matrix.lua.suffix }}LuaC
./LuaBridgeTests${{ matrix.lua.suffix }}Noexcept
./LuaBridgeTests${{ matrix.lua.suffix }}LuaCNoexcept

luajit:
runs-on: ubuntu-latest
Expand All @@ -218,7 +88,7 @@ jobs:
- name: Build LuaJIT
working-directory: ${{runner.workspace}}/build
run: |
cmake --build . --config $BUILD_TYPE --parallel 4 --target \
cmake --build . --config $BUILD_TYPE --parallel $(nproc) --target \
LuaBridgeTestsLuaJIT \
LuaBridgeTestsLuaJITNoexcept

Expand Down Expand Up @@ -248,7 +118,7 @@ jobs:

- name: Build Luau
working-directory: ${{runner.workspace}}/build
run: cmake --build . --config $BUILD_TYPE --parallel 4 --target LuaBridgeTestsLuau
run: cmake --build . --config $BUILD_TYPE --parallel $(nproc) --target LuaBridgeTestsLuau

- name: Test Luau
working-directory: ${{runner.workspace}}/build/Tests
Expand All @@ -274,7 +144,7 @@ jobs:

- name: Build Ravi
working-directory: ${{runner.workspace}}/build
run: cmake --build . --config $BUILD_TYPE --parallel 4 --target LuaBridgeTestsRavi
run: cmake --build . --config $BUILD_TYPE --parallel $(nproc) --target LuaBridgeTestsRavi

- name: Test Ravi
working-directory: ${{runner.workspace}}/build/Tests
Expand Down
Loading
Loading