diff options
author | Bennett Goble <signal@lindenlab.com> | 2024-04-10 19:54:10 -0700 |
---|---|---|
committer | Bennett Goble <signal@lindenlab.com> | 2024-04-10 20:52:53 -0700 |
commit | 148f80f0779f42c1aa7d2f07c04a63507446662c (patch) | |
tree | 97e23835ebc467603faa15342db0cee7681499b5 /.github | |
parent | 72730609f371ae0417a2d117fdc9d805ce8858fb (diff) |
Linux: build with clang, link with mold
Diffstat (limited to '.github')
-rw-r--r-- | .github/workflows/build.yaml | 22 |
1 files changed, 20 insertions, 2 deletions
diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 1f5d8ee47a..b5be5bb00c 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -98,8 +98,19 @@ jobs: ${{ runner.os }}-64- - name: Install Linux dependencies - if: runner.os == 'linux' - run: sudo apt update && sudo apt install -y libsndio-dev libpulse-dev libfltk1.3-dev libunwind-dev libgl1-mesa-dev libglu1-mesa-dev libx11-dev libxrandr-dev libxinerama-dev libxcursor-dev libxi-dev libxext-dev libxrender-dev libxfixes-dev libxxf86vm-dev libxss-dev libdbus-1-dev libudev-dev libssl-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libfreetype6-dev ninja-build libxft-dev + if: runner.os == 'Linux' + run: | + sudo apt update + sudo apt install -y \ + libsndio-dev libpulse-dev libfltk1.3-dev \ + libunwind-dev libgl1-mesa-dev libglu1-mesa-dev \ + libx11-dev libxrandr-dev libxinerama-dev \ + libxcursor-dev libxi-dev libxext-dev \ + libxrender-dev libxfixes-dev libxxf86vm-dev \ + libxss-dev libdbus-1-dev libudev-dev \ + libssl-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev \ + libfreetype6-dev ninja-build libxft-dev \ + llvm mold - name: Install windows dependencies if: runner.os == 'Windows' @@ -208,6 +219,13 @@ jobs: fi export PYTHON_COMMAND_NATIVE="$(native_path "$PYTHON_COMMAND")" + # Compile with clang, link with mold on linux. + if [[ "$RUNNER_OS" == "Linux" ]]; then + export CC=clang + export CXX=clang++ + export CMAKE_OPTIONS='-DLINK_WITH_MOLD=ON' + fi + ./build.sh # Each artifact is downloaded as a distinct .zip file. Multiple jobs |