Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 16 Jan 2019 01:11:59 +0000 (UTC)
From:      Tobias Kortkamp <tobik@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r490439 - in head/graphics: . librsvg2 librsvg2-rust librsvg2-rust/files
Message-ID:  <201901160111.x0G1BxS9051021@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: tobik
Date: Wed Jan 16 01:11:59 2019
New Revision: 490439
URL: https://svnweb.freebsd.org/changeset/ports/490439

Log:
  New port: graphics/librsvg2-rust
  
  A newer version of graphics/librsvg2 that uses Rust.

Added:
  head/graphics/librsvg2-rust/
     - copied from r490401, head/graphics/librsvg2/
  head/graphics/librsvg2-rust/files/
  head/graphics/librsvg2-rust/files/patch-Makefile.in   (contents, props changed)
  head/graphics/librsvg2-rust/files/patch-configure   (contents, props changed)
Modified:
  head/graphics/Makefile
  head/graphics/librsvg2-rust/Makefile
  head/graphics/librsvg2-rust/distinfo
  head/graphics/librsvg2-rust/pkg-descr
  head/graphics/librsvg2-rust/pkg-plist
  head/graphics/librsvg2/Makefile

Modified: head/graphics/Makefile
==============================================================================
--- head/graphics/Makefile	Wed Jan 16 01:08:38 2019	(r490438)
+++ head/graphics/Makefile	Wed Jan 16 01:11:59 2019	(r490439)
@@ -497,6 +497,7 @@
     SUBDIR += libraw
     SUBDIR += libreatlas
     SUBDIR += librsvg2
+    SUBDIR += librsvg2-rust
     SUBDIR += libsixel
     SUBDIR += libspiro
     SUBDIR += libsvg

Modified: head/graphics/librsvg2-rust/Makefile
==============================================================================
--- head/graphics/librsvg2/Makefile	Tue Jan 15 20:45:15 2019	(r490401)
+++ head/graphics/librsvg2-rust/Makefile	Wed Jan 16 01:11:59 2019	(r490439)
@@ -2,38 +2,47 @@
 # $FreeBSD$
 
 PORTNAME=	librsvg
-PORTVERSION=	2.40.20
+PORTVERSION=	2.45.4
 CATEGORIES=	graphics gnome
 MASTER_SITES=	GNOME
-PKGNAMESUFFIX=	2
+PKGNAMESUFFIX=	2-rust
 DIST_SUBDIR=	gnome2
 
-MAINTAINER=	gnome@FreeBSD.org
+MAINTAINER=	tobik@FreeBSD.org
 COMMENT=	Library for parsing and rendering SVG vector-graphic files
 
-# librsvg2 2.42+ needs rust to build, which is not available on all
-# FreeBSD archs. So limit pure C version 2.40.x.
-PORTSCOUT=	limit:^2\.40\.
+LICENSE=	LGPL20
 
-BUILD_DEPENDS=	valac:lang/vala
+BUILD_DEPENDS=	${RUST_DEFAULT}>=1.27.0:lang/${RUST_DEFAULT} \
+		valac:lang/vala
 LIB_DEPENDS=	libfreetype.so:print/freetype2 \
 		libfontconfig.so:x11-fonts/fontconfig \
 		libpng.so:graphics/png \
 		libcroco-0.6.so:textproc/libcroco
 
-USES=		gettext gmake gnome libtool localbase pathfix pkgconfig tar:xz
-USE_GNOME=	cairo gnomeprefix libgsf gdkpixbuf2 introspection:build \
-		libxml2 pango
+USES=		gettext gmake gnome libtool pkgconfig tar:xz
+USE_GNOME=	cairo gdkpixbuf2 libxml2 pango gnomeprefix introspection:build
 USE_LDCONFIG=	yes
+
 GNU_CONFIGURE=	yes
-INSTALL_TARGET=	install-strip
 CONFIGURE_ARGS=	--enable-vala \
-		--disable-Bsymbolic
+		--disable-Bsymbolic \
+		--disable-dependency-tracking \
+		--disable-static
+INSTALL_TARGET=	install-strip
+# Make sure it uses the Rust toolchain from ports.
+CONFIGURE_ENV=	CARGO=${LOCALBASE}/bin/cargo \
+		RUSTC=${LOCALBASE}/bin/rustc
+MAKE_ENV=	RUSTC=${LOCALBASE}/bin/rustc
 
-PLIST_SUB+=	PORTVERSION=${PORTVERSION}
+CONFLICTS_INSTALL=	librsvg2
 
 post-patch:
+# Avoid dependency loop with gtk3 (it depends on librsvg2), do not build rsvg-view
 	@${REINPLACE_CMD} -e 's|GTK3_REQUIRED=3.[0-9][0-9].[0-9]|GTK3_REQUIRED=9.90.0|g' \
 		${WRKSRC}/configure
+# Disable vendor checksums
+	@${REINPLACE_CMD} -e 's/"files":{[^}]*}/"files":{}/' \
+		${WRKSRC}/vendor/*/.cargo-checksum.json
 
 .include <bsd.port.mk>

Modified: head/graphics/librsvg2-rust/distinfo
==============================================================================
--- head/graphics/librsvg2/distinfo	Tue Jan 15 20:45:15 2019	(r490401)
+++ head/graphics/librsvg2-rust/distinfo	Wed Jan 16 01:11:59 2019	(r490439)
@@ -1,3 +1,3 @@
-TIMESTAMP = 1516305968
-SHA256 (gnome2/librsvg-2.40.20.tar.xz) = cff4dd3c3b78bfe99d8fcfad3b8ba1eee3289a0823c0e118d78106be6b84c92b
-SIZE (gnome2/librsvg-2.40.20.tar.xz) = 1796376
+TIMESTAMP = 1547592661
+SHA256 (gnome2/librsvg-2.45.4.tar.xz) = eeb6105cb28deec7a8a2ef270ae86b13fc555ff7dc85014a6b3e7cf0e88a7b4f
+SIZE (gnome2/librsvg-2.45.4.tar.xz) = 13578068

Added: head/graphics/librsvg2-rust/files/patch-Makefile.in
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/graphics/librsvg2-rust/files/patch-Makefile.in	Wed Jan 16 01:11:59 2019	(r490439)
@@ -0,0 +1,11 @@
+--- Makefile.in.orig	2019-01-15 23:06:06 UTC
++++ Makefile.in
+@@ -1954,7 +1954,7 @@ $(RUST_LIB): $(RUST_SRC)
+ 	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)
+ 
+ librsvg/librsvg-enum-types.h: librsvg/s-enum-types-h
+ 	@true

Added: head/graphics/librsvg2-rust/files/patch-configure
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/graphics/librsvg2-rust/files/patch-configure	Wed Jan 16 01:11:59 2019	(r490439)
@@ -0,0 +1,11 @@
+--- configure.orig	2019-01-15 22:59:02 UTC
++++ configure
+@@ -16420,7 +16420,7 @@ fi
+ MINIMUM_RUST_MAJOR=1
+ MINIMUM_RUST_MINOR=27
+ 
+-rust_version=`rustc --version`
++rust_version=`$RUSTC --version`
+ version=`echo "$rust_version" | sed -e 's/^rustc //g'`
+ major=`echo "$version" | cut -d. -f1`
+ minor=`echo "$version" | cut -d. -f2`

Modified: head/graphics/librsvg2-rust/pkg-descr
==============================================================================
--- head/graphics/librsvg2/pkg-descr	Tue Jan 15 20:45:15 2019	(r490401)
+++ head/graphics/librsvg2-rust/pkg-descr	Wed Jan 16 01:11:59 2019	(r490439)
@@ -4,4 +4,6 @@ includes functions that render anti-aliased fonts usin
 caching of glyphs.  It is used by Nautilus for drawing vector icons and
 anti-aliased text.
 
+This is a rustified version of LibRsvg.
+
 WWW: http://live.gnome.org/LibRsvg

Modified: head/graphics/librsvg2-rust/pkg-plist
==============================================================================
--- head/graphics/librsvg2/pkg-plist	Tue Jan 15 20:45:15 2019	(r490401)
+++ head/graphics/librsvg2-rust/pkg-plist	Wed Jan 16 01:11:59 2019	(r490439)
@@ -3,26 +3,16 @@ include/librsvg-2.0/librsvg/librsvg-enum-types.h
 include/librsvg-2.0/librsvg/librsvg-features.h
 include/librsvg-2.0/librsvg/rsvg-cairo.h
 include/librsvg-2.0/librsvg/rsvg.h
-lib/gdk-pixbuf-2.0/%%GTK2_VERSION%%/loaders/libpixbufloader-svg.a
 lib/gdk-pixbuf-2.0/%%GTK2_VERSION%%/loaders/libpixbufloader-svg.so
 lib/girepository-1.0/Rsvg-2.0.typelib
-lib/librsvg-2.a
 lib/librsvg-2.so
 lib/librsvg-2.so.2
-lib/librsvg-2.so.%%PORTVERSION%%
+lib/librsvg-2.so.2.46.0
 libdata/pkgconfig/librsvg-2.0.pc
 man/man1/rsvg-convert.1.gz
-share/doc/rsvg-2.0/RsvgHandle.html
 share/doc/rsvg-2.0/annotation-glossary.html
-share/doc/rsvg-2.0/api-index-2-14.html
-share/doc/rsvg-2.0/api-index-2-22.html
-share/doc/rsvg-2.0/api-index-2-32.html
-share/doc/rsvg-2.0/api-index-2-36.html
-share/doc/rsvg-2.0/api-index-2-4.html
-share/doc/rsvg-2.0/api-index-2-8.html
-share/doc/rsvg-2.0/api-index-2-9.html
-share/doc/rsvg-2.0/api-index-deprecated.html
 share/doc/rsvg-2.0/api-index-full.html
+share/doc/rsvg-2.0/ch01.html
 share/doc/rsvg-2.0/home.png
 share/doc/rsvg-2.0/index.html
 share/doc/rsvg-2.0/left-insensitive.png
@@ -32,6 +22,7 @@ share/doc/rsvg-2.0/object-tree.html
 share/doc/rsvg-2.0/right-insensitive.png
 share/doc/rsvg-2.0/right.png
 share/doc/rsvg-2.0/rsvg-2.0.devhelp2
+share/doc/rsvg-2.0/rsvg-RsvgHandle.html
 share/doc/rsvg-2.0/rsvg-Using-RSVG-with-GIO.html
 share/doc/rsvg-2.0/rsvg-Using-RSVG-with-GdkPixbuf.html
 share/doc/rsvg-2.0/rsvg-Using-RSVG-with-cairo.html
@@ -41,6 +32,7 @@ share/doc/rsvg-2.0/style.css
 share/doc/rsvg-2.0/up-insensitive.png
 share/doc/rsvg-2.0/up.png
 share/gir-1.0/Rsvg-2.0.gir
+share/locale/es/LC_MESSAGES/librsvg.mo
 share/thumbnailers/librsvg.thumbnailer
 share/vala/vapi/librsvg-2.0.vapi
 @postexec %D/bin/gdk-pixbuf-query-loaders > /dev/null 2>&1 && %D/bin/gdk-pixbuf-query-loaders > %D/lib/gdk-pixbuf-2.0/%%GTK2_VERSION%%/loaders.cache 2>/dev/null || /usr/bin/true

Modified: head/graphics/librsvg2/Makefile
==============================================================================
--- head/graphics/librsvg2/Makefile	Wed Jan 16 01:08:38 2019	(r490438)
+++ head/graphics/librsvg2/Makefile	Wed Jan 16 01:11:59 2019	(r490439)
@@ -11,6 +11,7 @@ DIST_SUBDIR=	gnome2
 MAINTAINER=	gnome@FreeBSD.org
 COMMENT=	Library for parsing and rendering SVG vector-graphic files
 
+CONFLICTS_INSTALL=	librsvg2-rust
 # librsvg2 2.42+ needs rust to build, which is not available on all
 # FreeBSD archs. So limit pure C version 2.40.x.
 PORTSCOUT=	limit:^2\.40\.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201901160111.x0G1BxS9051021>