summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: 0992bfa24f023847306d120dca1ea6b4ef4926ec (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
# Maintainer:  Vitalii Kuzhdin <vitaliikuzhdin@gmail.com>

_basename="gtk"
pkgver=4.18.3
_name="${_basename}${pkgver%%.*}"
pkgname="lib32-${_name}"
pkgrel=1
pkgdesc="GObject-based multi-platform GUI toolkit (32-bit)"
url="https://www.gtk.org"
arch=('x86_64')
license=('LGPL-2.1-or-later')
depends=("${_name}>=${pkgver}" 'lib32-cairo>=1.18.2' 'lib32-fontconfig'
         'lib32-fribidi>=1.0.6' 'lib32-gdk-pixbuf2>=2.30' 'lib32-glib2>=2.80'
         'lib32-glibc' 'lib32-graphene>=1.10' 'lib32-gst-plugins-bad-libs'
         'lib32-gst-plugins-base-libs' 'lib32-gstreamer>=1.24' 
         'lib32-harfbuzz>=8.4' 'lib32-libcloudproviders>=0.3.1'
         'lib32-colord>=0.1.9' 'lib32-libcups' 'lib32-libepoxy>=1.4'
         'lib32-libjpeg-turbo' 'lib32-libpng' 'lib32-libtiff' 'lib32-libx11'
         'lib32-libxcursor' 'lib32-libxdamage' 'lib32-libxext'
         'lib32-libxfixes' 'lib32-libxi' 'lib32-libxinerama'
         'lib32-libxkbcommon>=0.2' 'lib32-libxrandr' 'lib32-pango>=1.56'
         'lib32-tinysparql' 'lib32-vulkan-icd-loader' 'lib32-wayland>=1.23')
# 'lib32-libsysprof-capture>=3.38' 'wayland-protocols>=1.41'
makedepends=('glib2-devel' 'lib32-gcc-libs' 'meson>=1.2' 'shaderc'
             'vulkan-headers' 'wayland-protocols>=1.32')
provides=("lib${_basename}-${pkgver%%.*}.so")
_pkgsrc="${_basename}-${pkgver}"
source=("${_pkgsrc}.tar.xz::https://download.gnome.org/sources/${_basename}/${pkgver%.*}/${_pkgsrc}.tar.xz"
        '0001-HACK-Don-t-use-objcopy-for-resource-embedding.patch'
        "${pkgname}-querymodules."{hook,script})
sha256sums=('081e1bc0b17db41a935af8d1f6f090fb1988936c42ff734d149f3d004119f8bb'
            'fc14603646b033567b198e09c739b972088a8d01c1f0c65eeba0e8cba121cea1'
            '0d8697c9ec95117f5bf333f5a4469b5061de4b206d0699d328988c5683742eaa'
            '1c96fb5f09baf59987e4b97bf3af37ea8feedcc753b48c91ffc6bff080461f21')
b2sums=('6d484722c517e770568a0d2218c6db794dbeffa99aeadf45f849cbd2a3aae8921af710ceb598025d1efb3b5d0e0348560b3bbff0b5d9e754fe9d0d5121ed1d35'
        'a672c99d673648a8af5c7e808642ce3ec91fecf336afddfbe0d4723c21cdf03787334754b0590de8617fc9eb10e71e25c2d91234857b1d10a9fe058ecbc72560'
        'bfc5e42867cf1f709561e477d1d7620c16764e46ea18b419c1093aea208e305f6e8635c541a3bde57468d3539e4c8ad47eb9886e5ad05197be1b9c2d0475e0c9'
        'f0372ba65b6203e569da5bc8b262e76f2b7f2682de3eca5006953e4de2e99785d9793044d2f5350cd2b863cb1760780deb36651a7ab20bc7ab317d1eeafcd07f')

prepare() {
  cd "${srcdir}/${_pkgsrc}"
  patch -Np1 -i "${srcdir}/0001-HACK-Don-t-use-objcopy-for-resource-embedding.patch"
}

build() {
  export CFLAGS+=" -m32 -DG_DISABLE_CAST_CHECKS"
  export CXXFLAGS+=" -m32"
  export LDFLAGS+=" -m32"
  export PKG_CONFIG_PATH='/usr/lib32/pkgconfig'
  local meson_options=(
    "${_pkgsrc}"
    "${_pkgsrc}/build"
    --cross-file lib32
    -D x11-backend=true
    -D wayland-backend=true
    -D broadway-backend=true
    -D media-gstreamer=enabled
    -D print-cpdb=disabled
    -D print-cups=enabled
    -D vulkan=enabled
    -D cloudproviders=enabled
    -D sysprof=disabled # TODO
    -D tracker=enabled
    -D colord=enabled
    # -D f16c=enabled # ?
    # -D accesskit=disabled
    -D introspection=disabled
    -D documentation=false
    -D screenshots=false
    -D man-pages=false
    -D build-demos=false
    -D build-testsuite=false
    -D build-examples=false
    -D build-tests=false    
  )

  cd "${srcdir}"
  arch-meson "${meson_options[@]}"
  meson compile -C "${_pkgsrc}/build"
}

# check() {
#   cd "${srcdir}"
#   meson test -C "${_pkgsrc}/build" --print-errorlogs
# }

package() {
  cd "${srcdir}"
  meson install -C "${_pkgsrc}/build" --destdir "${pkgdir}"

  rm -rf "${pkgdir}/usr/"{bin,include,share}

  install -vDm644 "${pkgname}-querymodules.hook"   "${pkgdir}/usr/share/libalpm/hooks/${_name}-querymodules-32.hook"
  install -vDm755 "${pkgname}-querymodules.script" "${pkgdir}/usr/share/libalpm/scripts/${_name}-querymodules-32"
}