summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorTing-Wei Lan2018-09-09 00:04:53 +0800
committerTing-Wei Lan2018-09-09 00:04:53 +0800
commit41bc14fc0e46148eb4744818e7769589d68c00dc (patch)
treeb5fa5a11718782b84cc871ece430f1c61c0bf993
parentf3e92f5c0f60d696c3e291c583cc1cfd8211ca48 (diff)
downloadaur-41bc14fc0e46148eb4744818e7769589d68c00dc.tar.gz
mingw-w64-gdk-pixbuf2: 2.36.12 -> 2.38.0
-rw-r--r--.SRCINFO13
-rw-r--r--PKGBUILD49
-rw-r--r--gdk-pixbuf2-gen-thumbnailer-wine.patch14
3 files changed, 58 insertions, 18 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 274b46430470..26fea4a8a612 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,15 +1,16 @@
# Generated by mksrcinfo v8
-# Sun Apr 8 04:32:57 UTC 2018
+# Sat Sep 8 15:37:39 UTC 2018
pkgbase = mingw-w64-gdk-pixbuf2
pkgdesc = An image loading library (mingw-w64)
- pkgver = 2.36.12
+ pkgver = 2.38.0
pkgrel = 1
url = http://www.gtk.org
arch = any
license = LGPL
makedepends = mingw-w64-gcc
makedepends = mingw-w64-pkg-config
- makedepends = mingw-w64-configure
+ makedepends = mingw-w64-meson
+ makedepends = mingw-w64-wine
makedepends = python
depends = mingw-w64-crt
depends = mingw-w64-glib2>=2.37.6
@@ -20,8 +21,10 @@ pkgbase = mingw-w64-gdk-pixbuf2
options = !strip
options = !buildflags
options = staticlibs
- source = https://download.gnome.org/sources/gdk-pixbuf/2.36/gdk-pixbuf-2.36.12.tar.xz
- sha256sums = fff85cf48223ab60e3c3c8318e2087131b590fd6f1737e42cb3759a3b427a334
+ source = https://download.gnome.org/sources/gdk-pixbuf/2.38/gdk-pixbuf-2.38.0.tar.xz
+ source = gdk-pixbuf2-gen-thumbnailer-wine.patch
+ sha256sums = dd50973c7757bcde15de6bcd3a6d462a445efd552604ae6435a0532fbbadae47
+ sha256sums = 69dd65e803a7a0d752536478864b19d77423affff2921aea5d076dd5916594f6
pkgname = mingw-w64-gdk-pixbuf2
diff --git a/PKGBUILD b/PKGBUILD
index 644cdf257c45..514e4b0298d1 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,5 +1,5 @@
pkgname=mingw-w64-gdk-pixbuf2
-pkgver=2.36.12
+pkgver=2.38.0
pkgrel=1
pkgdesc='An image loading library (mingw-w64)'
arch=('any')
@@ -8,7 +8,8 @@ license=('LGPL')
makedepends=(
'mingw-w64-gcc'
'mingw-w64-pkg-config'
- 'mingw-w64-configure'
+ 'mingw-w64-meson'
+ 'mingw-w64-wine'
'python') # python is required to run glib-mkenums
depends=(
'mingw-w64-crt'
@@ -19,23 +20,46 @@ depends=(
'mingw-w64-libtiff')
options=('!strip' '!buildflags' 'staticlibs')
source=(
- "https://download.gnome.org/sources/gdk-pixbuf/${pkgver%.*}/gdk-pixbuf-$pkgver.tar.xz")
-sha256sums=('fff85cf48223ab60e3c3c8318e2087131b590fd6f1737e42cb3759a3b427a334')
+ "https://download.gnome.org/sources/gdk-pixbuf/${pkgver%.*}/gdk-pixbuf-$pkgver.tar.xz"
+ 'gdk-pixbuf2-gen-thumbnailer-wine.patch')
+sha256sums=(
+ 'dd50973c7757bcde15de6bcd3a6d462a445efd552604ae6435a0532fbbadae47'
+ '69dd65e803a7a0d752536478864b19d77423affff2921aea5d076dd5916594f6')
_architectures=('i686-w64-mingw32' 'x86_64-w64-mingw32')
+prepare() {
+ cd "${srcdir}/gdk-pixbuf-${pkgver}"
+ local source_file
+ for source_file in "${source[@]}"; do
+ case "${source_file}" in
+ *.patch)
+ patch -p1 < "${srcdir}/${source_file}"
+ ;;
+ esac
+ done
+}
+
build() {
+ export NEED_WINE=1
cd "${srcdir}/gdk-pixbuf-${pkgver}"
for _arch in "${_architectures[@]}"; do
mkdir -p "build-${_arch}"
cd "build-${_arch}"
- "${_arch}-configure" \
- --enable-relocations \
- --with-included-loaders \
- --with-libjasper
- # We don't build dynamic modules, so we can use an empty file here.
- touch gdk-pixbuf/loaders.cache
- make
+ # GdkPixbuf upstream still doesn't support cross-compilation properly.
+ # https://gitlab.gnome.org/GNOME/gdk-pixbuf/issues/64
+ export WINEPATH="${srcdir}/gdk-pixbuf-${pkgver}/build-${_arch}/gdk-pixbuf;/usr/${_arch}/bin"
+ export WINE="${_arch}-wine"
+ "${_arch}-meson" \
+ --default-library both \
+ -Dinstalled_tests=false \
+ -Dbuiltin_loaders=all \
+ -Drelocatable=true \
+ -Djasper=true \
+ -Dx11=false \
+ -Dgir=false \
+ -Dman=false
+ ninja
cd ..
done
}
@@ -44,11 +68,10 @@ package() {
cd "${srcdir}/gdk-pixbuf-${pkgver}"
for _arch in "${_architectures[@]}"; do
cd "build-${_arch}"
- make DESTDIR="$pkgdir" install
+ DESTDIR="$pkgdir" ninja install
find "$pkgdir/usr/${_arch}" -name '*.exe' -exec "${_arch}-strip" '{}' ';'
find "$pkgdir/usr/${_arch}" -name '*.dll' -exec "${_arch}-strip" --strip-unneeded '{}' ';'
find "$pkgdir/usr/${_arch}" '(' -name '*.a' -o -name '*.dll' ')' -exec "${_arch}-strip" -g '{}' ';'
- rm -r "$pkgdir/usr/${_arch}/share/man"
cd ..
done
}
diff --git a/gdk-pixbuf2-gen-thumbnailer-wine.patch b/gdk-pixbuf2-gen-thumbnailer-wine.patch
new file mode 100644
index 000000000000..c0d6d1e4b0da
--- /dev/null
+++ b/gdk-pixbuf2-gen-thumbnailer-wine.patch
@@ -0,0 +1,14 @@
+diff --git a/build-aux/gen-thumbnailer.py b/build-aux/gen-thumbnailer.py
+index 05ac821..5db039f 100644
+--- a/build-aux/gen-thumbnailer.py
++++ b/build-aux/gen-thumbnailer.py
+@@ -29,6 +29,9 @@ if os.name == 'nt':
+
+ cmd = args.printer
+
++if os.environ.get('NEED_WINE', ''):
++ cmd = [os.environ['WINE'], cmd]
++
+ mimetypes_out = subprocess.Popen(cmd, env=newenv, stdout=subprocess.PIPE).communicate()[0]
+ if not mimetypes_out:
+ sys.exit(1)