summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: bdf1013e4c1ed916f5500b535639fed5f2b7bb6a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
# Maintainer: TheK0tYaRa
# Inspired by: FabioLolix, éclairevoyant, ThatOneCalculator <kainoa at t1c dot dev>

pkgname=hyprland-protocols-git
pkgver=0.4.0.r1.a7c1838
pkgrel=1
pkgdesc="Wayland protocol extensions for Hyprland"
arch=(x86_64 aarch64)
url="https://github.com/hyprwm/hyprland-protocols"
license=(BSD-3-Clause)
# depends=(git)
makedepends=(
#   cmake
#   gdb
  git
#   hyprwayland-scanner-git
#   jq
  make
  meson
  ninja
#   patch
#   pkgconf
#   xorgproto
)
# optdepends=(
#   'cmake: to build and install plugins using hyprpm'
#   'cpio: to build and install plugins using hyprpm'
#   'meson: to build and install plugins using hyprpm'
# )
provides=("${pkgname%%-git}=${pkgver%%.r*}")
conflicts=(${pkgname%%-git})
source=(
  "git+${url}.git"
#   "git+https://github.com/hyprwm/hyprland-protocols.git"
#   "git+https://github.com/canihavesomecoffee/udis86.git"
)
b2sums=(
  'SKIP'
#   'SKIP'
#   'SKIP'
)

pick_mr() {
  git pull origin pull/$1/head --no-edit
}

prepare() {
  cd ${pkgname%%-git}
  git submodule init
#   git config submodule.subprojects/hyprland-protocols.url "$srcdir/hyprland-protocols"
#   git config submodule.subprojects/udis86.url "$srcdir/udis86"
#   git config submodule.subprojects/tracy.update none
  git -c protocol.file.allow=always submodule update

  if [[ -z "$(git config --get user.name)" ]]; then
    git config user.name local && git config user.email '<>' && git config commit.gpgsign false
  fi
  # Pick pull requests from github using `pick_mr <pull request number>`.
}

pkgver() {
  git -C ${pkgname%%-git} describe --long --tags | sed 's/^v//;s/\([^-]*-\)g/r\1/;s/-/./g'
}

build() {
  cd ${pkgname%%-git}

  export CXXFLAGS="-w" # suppress all compiler warnings
  meson setup build \
    --wipe \
    --prefix /usr \
    --libexecdir lib \
    --buildtype release \
    --wrap-mode nodownload \
    -D warning_level=0 \
    -D b_lto=true \
    -D b_pie=true \
    -D default_library=shared # \
    # -D xwayland=enabled \
    # -D systemd=enabled

  meson compile -C build
}

package() {
  cd ${pkgname%%-git}

  meson install -C build --destdir "$pkgdir"

  # FIXME: remove after xdg-desktop-portal-hyprland disowns hyprland-portals.conf
  rm -rf "$pkgdir/usr/share/xdg-desktop-portal"

  # license
  install -Dm0644 -t "$pkgdir/usr/share/licenses/${pkgname}" LICENSE
}
# vi: et ts=2 sw=2