summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: 2ebeaedb2a9087fbbbf99f2d049ccec625274121 (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
# Maintainer: Ivan Trubach <mr.trubach@icloud.com> <dev@b1nary.tk>

pkgname=wlroots-full-git
pkgver=r1924.2e7d886
pkgrel=1
license=('MIT')
pkgdesc='A modular Wayland compositor library (static and shared libs, all features enabled)'
url='https://github.com/swaywm/wlroots'
arch=(x86_64)
provides=(wlroots)
conflicts=(wlroots)
options=(staticlibs)
depends=(wayland wayland-protocols
         libdrm opengl-driver pixman
         libx11 libxcb libxkbcommon
         xcb-util-image xcb-util-wm
         libinput
         libcap udev systemd)
makedepends=(git pkg-config meson ninja)
source=("$pkgname::git+$url")
sha512sums=(SKIP)

pkgver() {
  cd "$pkgname"
  ( set -o pipefail
    git describe --long 2>/dev/null | sed 's/\([^-]*-g\)/r\1/;s/-/./g' ||
    printf "r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short HEAD)"
  )
}

prepare() {
  cd "$pkgname"
  git checkout -q 2e7d8862549a786c5aafcbe20db290377e3228ac
}

build() {
  cd "$pkgname"
  for lib in shared static
  do
    meson build/$lib \
      -Denable_libcap=true \
      -Denable_systemd=true \
      -Denable_xwayland=true \
      -Denable_elogind=false \
      --prefix="/usr"             \
      --sysconfdir="/etc"         \
      --localstatedir="/var"      \
      --mandir="/usr/share/man"   \
      --infodir="/usr/share/info" \
      --backend=ninja             \
      --buildtype=release         \
      --default-library=$lib
    #  --default-library=both
    # See https://github.com/mesonbuild/meson/issues/484
    #     https://github.com/mesonbuild/meson/pull/2711
    # so for now we'll just build the project twice
    ninja -C build/$lib
  done
}

package() {
  cd "$pkgname"

  export DESTDIR="$pkgdir"
  for lib in shared static
  do
    ninja -C build/$lib install
  done

  install -Dm644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
}