2022-03-30 18:30:03 +02:00
|
|
|
name: Build Hyprland
|
|
|
|
|
2022-05-17 13:44:43 +02:00
|
|
|
on: [push, pull_request, workflow_dispatch]
|
2022-03-30 18:30:03 +02:00
|
|
|
jobs:
|
|
|
|
gcc:
|
2024-07-27 21:17:05 +02:00
|
|
|
if: github.event_name != 'pull_request' || github.event.pull_request.head.repo.fork
|
2022-04-01 21:09:12 +02:00
|
|
|
name: "Build Hyprland (Arch)"
|
2022-03-30 18:30:03 +02:00
|
|
|
runs-on: ubuntu-latest
|
|
|
|
container:
|
|
|
|
image: archlinux
|
|
|
|
steps:
|
2023-12-10 20:26:25 +01:00
|
|
|
- name: Checkout repository actions
|
|
|
|
uses: actions/checkout@v4
|
2022-05-31 10:47:56 +02:00
|
|
|
with:
|
2023-12-10 20:26:25 +01:00
|
|
|
sparse-checkout: .github/actions
|
|
|
|
|
|
|
|
- name: Setup base
|
|
|
|
uses: ./.github/actions/setup_base
|
|
|
|
with:
|
|
|
|
INSTALL_XORG_PKGS: true
|
|
|
|
|
2022-06-22 23:45:48 +02:00
|
|
|
- name: Build Hyprland
|
2022-03-30 18:30:03 +02:00
|
|
|
run: |
|
|
|
|
make all
|
2023-12-10 20:26:25 +01:00
|
|
|
|
2022-06-22 23:45:48 +02:00
|
|
|
- name: Compress and package artifacts
|
2022-04-13 17:43:46 +02:00
|
|
|
run: |
|
2022-06-22 23:45:48 +02:00
|
|
|
mkdir x86_64-pc-linux-gnu
|
|
|
|
mkdir hyprland
|
|
|
|
mkdir hyprland/example
|
|
|
|
mkdir hyprland/assets
|
|
|
|
cp ./LICENSE hyprland/
|
|
|
|
cp build/Hyprland hyprland/
|
2023-10-14 19:48:05 +02:00
|
|
|
cp build/hyprctl/hyprctl hyprland/
|
2024-03-06 16:26:52 +01:00
|
|
|
cp build/hyprpm/hyprpm hyprland/
|
2022-06-23 00:22:22 +02:00
|
|
|
cp build/Hyprland hyprland/
|
2022-06-22 23:45:48 +02:00
|
|
|
cp -r example/ hyprland/
|
|
|
|
cp -r assets/ hyprland/
|
|
|
|
tar -cvf Hyprland.tar.xz hyprland
|
2023-12-10 20:26:25 +01:00
|
|
|
|
2022-06-22 23:45:48 +02:00
|
|
|
- name: Release
|
2024-11-06 18:50:01 +01:00
|
|
|
uses: actions/upload-artifact@v4
|
2022-06-22 23:45:48 +02:00
|
|
|
with:
|
|
|
|
name: Build archive
|
|
|
|
path: Hyprland.tar.xz
|
2022-06-14 11:48:42 +02:00
|
|
|
|
|
|
|
meson:
|
2024-07-27 21:17:05 +02:00
|
|
|
if: github.event_name != 'pull_request' || github.event.pull_request.head.repo.fork
|
2022-06-14 11:48:42 +02:00
|
|
|
name: "Build Hyprland with Meson (Arch)"
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
container:
|
|
|
|
image: archlinux
|
|
|
|
steps:
|
2023-12-10 20:26:25 +01:00
|
|
|
- name: Checkout repository actions
|
|
|
|
uses: actions/checkout@v4
|
2022-06-14 11:48:42 +02:00
|
|
|
with:
|
2023-12-10 20:26:25 +01:00
|
|
|
sparse-checkout: .github/actions
|
|
|
|
|
|
|
|
- name: Setup base
|
|
|
|
uses: ./.github/actions/setup_base
|
|
|
|
|
2022-06-14 13:46:10 +02:00
|
|
|
- name: Configure
|
2023-12-10 20:26:25 +01:00
|
|
|
run: meson setup build -Ddefault_library=static
|
|
|
|
|
2022-06-14 13:46:10 +02:00
|
|
|
- name: Compile
|
2023-12-10 20:26:25 +01:00
|
|
|
run: ninja -C build
|
2022-10-27 12:26:35 +02:00
|
|
|
|
2024-04-23 10:02:51 +02:00
|
|
|
no-pch:
|
2024-07-27 21:17:05 +02:00
|
|
|
if: github.event_name != 'pull_request' || github.event.pull_request.head.repo.fork
|
2024-04-23 10:02:51 +02:00
|
|
|
name: "Build Hyprland without precompiled headers (Arch)"
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
container:
|
|
|
|
image: archlinux
|
|
|
|
steps:
|
|
|
|
- name: Checkout repository actions
|
|
|
|
uses: actions/checkout@v4
|
|
|
|
with:
|
|
|
|
sparse-checkout: .github/actions
|
|
|
|
|
|
|
|
- name: Setup base
|
|
|
|
uses: ./.github/actions/setup_base
|
|
|
|
with:
|
|
|
|
INSTALL_XORG_PKGS: true
|
|
|
|
|
|
|
|
- name: Compile
|
|
|
|
run: make nopch
|
|
|
|
|
2022-10-27 12:26:35 +02:00
|
|
|
noxwayland:
|
2024-07-27 21:17:05 +02:00
|
|
|
if: github.event_name != 'pull_request' || github.event.pull_request.head.repo.fork
|
2022-10-27 12:26:35 +02:00
|
|
|
name: "Build Hyprland in pure Wayland (Arch)"
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
container:
|
|
|
|
image: archlinux
|
|
|
|
steps:
|
2023-12-10 20:26:25 +01:00
|
|
|
- name: Checkout repository actions
|
|
|
|
uses: actions/checkout@v4
|
2022-10-27 12:26:35 +02:00
|
|
|
with:
|
2023-12-10 20:26:25 +01:00
|
|
|
sparse-checkout: .github/actions
|
|
|
|
|
|
|
|
- name: Setup base
|
|
|
|
uses: ./.github/actions/setup_base
|
|
|
|
|
2022-10-27 12:26:35 +02:00
|
|
|
- name: Configure
|
2023-12-10 20:26:25 +01:00
|
|
|
run: mkdir -p build && cmake --no-warn-unused-cli -DCMAKE_BUILD_TYPE:STRING=Release -DNO_XWAYLAND:STRING=true -H./ -B./build -G Ninja
|
|
|
|
|
2022-10-27 12:26:35 +02:00
|
|
|
- name: Compile
|
2023-10-14 19:48:05 +02:00
|
|
|
run: make release
|
2023-12-06 23:54:56 +01:00
|
|
|
|
|
|
|
clang-format:
|
2024-07-27 21:17:05 +02:00
|
|
|
if: github.event_name != 'pull_request' || github.event.pull_request.head.repo.fork
|
2023-12-06 23:54:56 +01:00
|
|
|
name: "Code Style (Arch)"
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
container:
|
|
|
|
image: archlinux
|
|
|
|
steps:
|
2023-12-10 20:26:25 +01:00
|
|
|
- name: Checkout repository actions
|
|
|
|
uses: actions/checkout@v4
|
2023-12-06 23:54:56 +01:00
|
|
|
with:
|
2023-12-10 20:26:25 +01:00
|
|
|
sparse-checkout: .github/actions
|
|
|
|
|
|
|
|
- name: Setup base
|
|
|
|
uses: ./.github/actions/setup_base
|
|
|
|
|
2023-12-06 23:54:56 +01:00
|
|
|
- name: Configure
|
2023-12-10 20:26:25 +01:00
|
|
|
run: meson setup build -Ddefault_library=static
|
|
|
|
|
2023-12-06 23:54:56 +01:00
|
|
|
- name: clang-format check
|
2023-12-10 20:26:25 +01:00
|
|
|
run: ninja -C build clang-format-check
|