summaryrefslogtreecommitdiff
path: root/.github
diff options
context:
space:
mode:
authorBennett Goble <signal@lindenlab.com>2024-04-10 19:54:10 -0700
committerBennett Goble <signal@lindenlab.com>2024-04-10 20:52:53 -0700
commit148f80f0779f42c1aa7d2f07c04a63507446662c (patch)
tree97e23835ebc467603faa15342db0cee7681499b5 /.github
parent72730609f371ae0417a2d117fdc9d805ce8858fb (diff)
Linux: build with clang, link with mold
Diffstat (limited to '.github')
-rw-r--r--.github/workflows/build.yaml22
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