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