summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorpingplug2018-02-08 15:52:46 +0800
committerpingplug2018-02-08 23:45:16 +0800
commit2f4934fe84a888e9c2ef1c8e7877a9a7e785b4d0 (patch)
tree81c06cec51bf5f5cac4df7ea8eacd859e2894a12
parent5585dfd278721fb0693c81006fb5242a18feaae3 (diff)
downloadaur-2f4934fe84a888e9c2ef1c8e7877a9a7e785b4d0.tar.gz
Updated to 2.42.2
TODO: add mingw-w64-rust package
-rw-r--r--.SRCINFO16
-rw-r--r--.gitignore11
-rw-r--r--PKGBUILD42
-rw-r--r--configure-fix.patch35
-rw-r--r--makefile-fix.patch98
5 files changed, 181 insertions, 21 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 4a2ddc6b4ae5..f9807d33f903 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,10 +1,8 @@
-# Generated by mksrcinfo v8
-# Fri Aug 19 06:36:07 UTC 2016
pkgbase = mingw-w64-librsvg
pkgdesc = A SVG viewing library (mingw-w64)
- pkgver = 2.40.16
- pkgrel = 2
- url = https://live.gnome.org/LibRsvg
+ pkgver = 2.42.2
+ pkgrel = 1
+ url = https://wiki.gnome.org/action/show/Projects/LibRsvg
arch = any
license = LGPL
makedepends = mingw-w64-configure
@@ -17,8 +15,12 @@ pkgbase = mingw-w64-librsvg
options = staticlibs
options = !strip
options = !buildflags
- source = http://ftp.gnome.org/pub/gnome/sources/librsvg/2.40/librsvg-2.40.16.tar.xz
- sha256sums = d48bcf6b03fa98f07df10332fb49d8c010786ddca6ab34cbba217684f533ff2e
+ source = https://download.gnome.org/sources/librsvg/2.42/librsvg-2.42.2.tar.xz
+ source = configure-fix.patch
+ source = makefile-fix.patch
+ sha256sums = 0c550a0bffef768a436286116c03d9f6cd3f97f5021c13e7f093b550fac12562
+ sha256sums = bfdeb5e47a473994e4bc17c52c3482fbb0c07a34e36a0752f826e7084f012f26
+ sha256sums = f8479f7497abad01e0df81a93ed495e578c3adaf0f612e2c78a90177188b42b1
pkgname = mingw-w64-librsvg
diff --git a/.gitignore b/.gitignore
index 436a59477780..97589fb4de69 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,4 +1,7 @@
-pkg/
-src/
-*.tar
-*.xz
+*
+!.gitignore
+!.SRCINFO
+!PKGBUILD
+!*.install
+!*.patch
+!*.diff
diff --git a/PKGBUILD b/PKGBUILD
index 21270ce1df8f..6a56bafac9d8 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,27 +1,48 @@
+# Maintainer: pingplug <pingplug@foxmail.com>
+# Contributor: Schala Zeal <schalaalexiazeal@gmail.com>
+
pkgname=mingw-w64-librsvg
-pkgver=2.40.16
-pkgrel=2
+pkgver=2.42.2
+pkgrel=1
pkgdesc="A SVG viewing library (mingw-w64)"
arch=(any)
-url="https://live.gnome.org/LibRsvg"
+url="https://wiki.gnome.org/action/show/Projects/LibRsvg"
license=("LGPL")
makedepends=(mingw-w64-configure gdk-pixbuf2 intltool setconf)
depends=(mingw-w64-gdk-pixbuf2 mingw-w64-pango mingw-w64-libcroco)
options=(staticlibs !strip !buildflags)
-source=("http://ftp.gnome.org/pub/gnome/sources/librsvg/${pkgver%.*}/librsvg-$pkgver.tar.xz")
-sha256sums=('d48bcf6b03fa98f07df10332fb49d8c010786ddca6ab34cbba217684f533ff2e')
+source=("https://download.gnome.org/sources/librsvg/${pkgver%.*}/librsvg-$pkgver.tar.xz"
+ "configure-fix.patch"
+ "makefile-fix.patch")
+sha256sums=('0c550a0bffef768a436286116c03d9f6cd3f97f5021c13e7f093b550fac12562'
+ 'bfdeb5e47a473994e4bc17c52c3482fbb0c07a34e36a0752f826e7084f012f26'
+ 'f8479f7497abad01e0df81a93ed495e578c3adaf0f612e2c78a90177188b42b1')
_architectures="i686-w64-mingw32 x86_64-w64-mingw32"
+prepare() {
+ cd ${srcdir}
+ # fix wrong target in rust
+ patch -Np0 -i configure-fix.patch
+
+ cd "${srcdir}/librsvg-${pkgver}"
+ autoreconf
+
+ cd ${srcdir}
+ # fix the name of rust static libaray
+ # fix the way to link rust static libaray
+ patch -Np0 -i makefile-fix.patch
+}
+
build() {
- cd librsvg-$pkgver
- CXXFLAGS+=" -D_POSIX_SOURCE"
- CFLAGS+=" -D_POSIX_SOURCE"
+ cd "${srcdir}/librsvg-${pkgver}"
for _arch in ${_architectures}; do
mkdir -p build-${_arch} && pushd build-${_arch}
${_arch}-configure \
- --disable-introspection
- setconf Makefile AM_CFLAGS '-fno-common'
+ --disable-introspection \
+ --disable-tools
+ # pass static rust package to linker
+ sed -i "s/^deplibs_check_method=.*/deplibs_check_method=\"pass_all\"/g" libtool
make
popd
done
@@ -34,5 +55,6 @@ package() {
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' | xargs ${_arch}-strip -g
+ rm -r "$pkgdir/usr/${_arch}/share/doc"
done
}
diff --git a/configure-fix.patch b/configure-fix.patch
new file mode 100644
index 000000000000..6dbe30fd75cd
--- /dev/null
+++ b/configure-fix.patch
@@ -0,0 +1,35 @@
+diff -ruN librsvg-2.42.2/configure.ac librsvg-2.42.2-patched/configure.ac
+--- librsvg-2.42.2/configure.ac 2018-01-24 04:21:06.000000000 +0800
++++ librsvg-2.42.2-patched/configure.ac 2018-02-08 00:54:57.209773524 +0800
+@@ -103,6 +103,22 @@
+ AC_MSG_RESULT([$native_win32])
+ AM_CONDITIONAL(OS_WIN32, test "$native_win32" = "yes")
+
++AC_MSG_CHECKING([for rust target])
++case "$host" in
++ i686*-*-mingw*|i686*-*-cygwin*)
++ rust_target=i686-pc-windows-gnu
++ ;;
++ x86_64*-*-mingw*|x86_64*-*-cygwin*)
++ rust_target=x86_64-pc-windows-gnu
++ ;;
++ *)
++ rust_target=$host
++ ;;
++esac
++AC_MSG_RESULT([$rust_target])
++AM_CONDITIONAL(RUST_TARGET, test -n rust_target)
++AC_ARG_VAR(rust_target, [used in cargo --target=])
++
+ dnl ===========================================================================
+
+ GLIB_MKENUMS=`$PKG_CONFIG --variable=glib_mkenums glib-2.0`
+@@ -262,7 +278,7 @@
+
+ AM_CONDITIONAL(CROSS_COMPILING, test $cross_compiling = yes)
+ if test "x$cross_compiling" = "xyes" ; then
+- RUST_TARGET_SUBDIR="$host/$RUST_TARGET_SUBDIR"
++ RUST_TARGET_SUBDIR="$rust_target/$RUST_TARGET_SUBDIR"
+ fi
+ AC_SUBST([RUST_TARGET_SUBDIR])
+
diff --git a/makefile-fix.patch b/makefile-fix.patch
new file mode 100644
index 000000000000..7335b8794cd2
--- /dev/null
+++ b/makefile-fix.patch
@@ -0,0 +1,98 @@
+diff -ruN librsvg-2.42.2/Makefile.am librsvg-2.42.2-patched/Makefile.am
+--- librsvg-2.42.2/Makefile.am 2018-02-02 08:40:42.000000000 +0800
++++ librsvg-2.42.2-patched/Makefile.am 2018-02-08 12:06:11.167282697 +0800
+@@ -112,7 +112,7 @@
+ endif
+
+ if CROSS_COMPILING
+-CARGO_TARGET_ARGS=--target=$(host)
++CARGO_TARGET_ARGS=--target=$(rust_target)
+ endif
+
+ CARGO_VERBOSE = $(cargo_verbose_$(V))
+@@ -121,6 +121,7 @@
+ cargo_verbose_1 = --verbose
+
+ RUST_LIB=@abs_top_builddir@/rust/target/@RUST_TARGET_SUBDIR@/librsvg_internals.a
++RUST_LIB_WIN=@abs_top_builddir@/rust/target/@RUST_TARGET_SUBDIR@/rsvg_internals.lib
+ CARGO_TARGET_DIR=@abs_top_builddir@/rust/target
+
+ check-local:
+@@ -142,7 +143,8 @@
+ PKG_CONFIG_ALLOW_CROSS=1 \
+ PKG_CONFIG='$(PKG_CONFIG)' \
+ CARGO_TARGET_DIR=$(CARGO_TARGET_DIR) \
+- cargo build $(CARGO_VERBOSE) $(CARGO_TARGET_ARGS) $(CARGO_RELEASE_ARGS)
++ cargo build $(CARGO_VERBOSE) $(CARGO_TARGET_ARGS) $(CARGO_RELEASE_ARGS) \
++ && cp $(RUST_LIB_WIN) $(RUST_LIB)
+
+ librsvg_@RSVG_API_MAJOR_VERSION@_la_CPPFLAGS = \
+ -I$(top_srcdir) \
+@@ -168,8 +170,7 @@
+
+ librsvg_@RSVG_API_MAJOR_VERSION@_la_LIBADD = \
+ $(LIBRSVG_LIBS) \
+- $(LIBM) \
+- $(RUST_LIB)
++ $(LIBM)
+
+ librsvgincdir = $(includedir)/librsvg-$(RSVG_API_VERSION)/librsvg
+ librsvginc_HEADERS = \
+diff -ruN librsvg-2.42.2/Makefile.in librsvg-2.42.2-patched/Makefile.in
+--- librsvg-2.42.2/Makefile.in 2018-02-02 08:41:23.000000000 +0800
++++ librsvg-2.42.2-patched/Makefile.in 2018-02-08 12:06:12.882321904 +0800
+@@ -223,7 +223,7 @@
+ LTLIBRARIES = $(lib_LTLIBRARIES)
+ am__DEPENDENCIES_1 =
+ librsvg_@RSVG_API_MAJOR_VERSION@_la_DEPENDENCIES = \
+- $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) $(RUST_LIB)
++ $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1)
+ am__objects_1 =
+ am_librsvg_@RSVG_API_MAJOR_VERSION@_la_OBJECTS = \
+ librsvg_@RSVG_API_MAJOR_VERSION@_la-librsvg-enum-types.lo \
+@@ -698,12 +699,13 @@
+
+ @DEBUG_RELEASE_FALSE@CARGO_RELEASE_ARGS = --release
+ @DEBUG_RELEASE_TRUE@CARGO_RELEASE_ARGS =
+-@CROSS_COMPILING_TRUE@CARGO_TARGET_ARGS = --target=$(host)
++@CROSS_COMPILING_TRUE@CARGO_TARGET_ARGS = --target=$(rust_target)
+ CARGO_VERBOSE = $(cargo_verbose_$(V))
+ cargo_verbose_ = $(cargo_verbose_$(AM_DEFAULT_VERBOSITY))
+ cargo_verbose_0 =
+ cargo_verbose_1 = --verbose
+ RUST_LIB = @abs_top_builddir@/rust/target/@RUST_TARGET_SUBDIR@/librsvg_internals.a
++RUST_LIB_WIN = @abs_top_builddir@/rust/target/@RUST_TARGET_SUBDIR@/rsvg_internals.lib
+ CARGO_TARGET_DIR = @abs_top_builddir@/rust/target
+ librsvg_@RSVG_API_MAJOR_VERSION@_la_CPPFLAGS = \
+ -I$(top_srcdir) \
+@@ -729,8 +731,7 @@
+
+ librsvg_@RSVG_API_MAJOR_VERSION@_la_LIBADD = \
+ $(LIBRSVG_LIBS) \
+- $(LIBM) \
+- $(RUST_LIB)
++ $(LIBM)
+
+ librsvgincdir = $(includedir)/librsvg-$(RSVG_API_VERSION)/librsvg
+ librsvginc_HEADERS = \
+@@ -1005,8 +1006,8 @@
+ rm -f $${locs}; \
+ }
+
+-librsvg-@RSVG_API_MAJOR_VERSION@.la: $(librsvg_@RSVG_API_MAJOR_VERSION@_la_OBJECTS) $(librsvg_@RSVG_API_MAJOR_VERSION@_la_DEPENDENCIES) $(EXTRA_librsvg_@RSVG_API_MAJOR_VERSION@_la_DEPENDENCIES)
+- $(AM_V_CCLD)$(librsvg_@RSVG_API_MAJOR_VERSION@_la_LINK) -rpath $(libdir) $(librsvg_@RSVG_API_MAJOR_VERSION@_la_OBJECTS) $(librsvg_@RSVG_API_MAJOR_VERSION@_la_LIBADD) $(LIBS)
++librsvg-@RSVG_API_MAJOR_VERSION@.la: $(librsvg_@RSVG_API_MAJOR_VERSION@_la_OBJECTS) $(RUST_LIB) $(librsvg_@RSVG_API_MAJOR_VERSION@_la_DEPENDENCIES) $(EXTRA_librsvg_@RSVG_API_MAJOR_VERSION@_la_DEPENDENCIES)
++ $(AM_V_CCLD)$(librsvg_@RSVG_API_MAJOR_VERSION@_la_LINK) -rpath $(libdir) $(librsvg_@RSVG_API_MAJOR_VERSION@_la_OBJECTS) $(RUST_LIB) $(librsvg_@RSVG_API_MAJOR_VERSION@_la_LIBADD) $(LIBS)
+ install-binPROGRAMS: $(bin_PROGRAMS)
+ @$(NORMAL_INSTALL)
+ @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
+@@ -1943,7 +1944,8 @@
+ PKG_CONFIG_ALLOW_CROSS=1 \
+ PKG_CONFIG='$(PKG_CONFIG)' \
+ CARGO_TARGET_DIR=$(CARGO_TARGET_DIR) \
+- cargo build $(CARGO_VERBOSE) $(CARGO_TARGET_ARGS) $(CARGO_RELEASE_ARGS)
++ cargo build $(CARGO_VERBOSE) $(CARGO_TARGET_ARGS) $(CARGO_RELEASE_ARGS) \
++ && cp $(RUST_LIB_WIN) $(RUST_LIB)
+
+ librsvg-enum-types.h: s-enum-types-h
+ @true