Non-prefix safe ports

Jan Beich jbeich at vfemail.net
Sun Nov 22 22:19:35 UTC 2015


"Mikhail T." <mi+thun at aldan.algebra.com> writes:

> Building out a new machine from scratch using /opt (rather than the
> usual /usr/local) as LOCALBASE, I found the following two ports, which
> break:

poudriere testport -P would have been easier. That said it would be nice
to have them as periodic exp-runs. I'm sure there're way more ports
with broken PREFIX != LOCALBASE e.g., anything lua-*.

>
>   * multimedia/openh264 - the files built by the port get installed into
>     stage/usr/local/... instead of stage/opt -- I had to manually move
>     the files around before "make install" succeeded

This affects all ports with USES=webplugin. Fixing isn't trivial, so
better file a bug or it will be forgotten.

>   * graphics/gtk-update-icon-cache - at configure-stage, the port
>     wrongly complaints, that the cairo installed on the system does not
>     support X11. After I created a symlink: /usr/local -> ../opt, the
>     problem went away.

make(1) flow control is evaluated at parsing time. Try using sh(1)
conditional to postpone it until the target is run.

Index: graphics/gtk-update-icon-cache/Makefile
===================================================================
--- graphics/gtk-update-icon-cache/Makefile	(revision 402206)
+++ graphics/gtk-update-icon-cache/Makefile	(working copy)
@@ -36,17 +36,15 @@ ALL_TARGET=	${PORTNAME}
 PLIST_FILES=	bin/gtk-update-icon-cache
 #		man/man1/gtk-update-icon-cache.1.gz
 
-.include <bsd.port.pre.mk>
-
 post-patch:
 	@${REINPLACE_CMD} -e 's|-DGDK_PIXBUF_DISABLE_DEPRECATED||g' \
 		${WRKSRC}/configure
 
 pre-configure:
-.if !exists(${LOCALBASE}/libdata/pkgconfig/cairo-xlib.pc)
-	@${ECHO_CMD} "${PKGNAME}: Needs cairo with X11 support enabled."
-	@${FALSE}
-.endif
+	@if [ ! -e ${LOCALBASE}/libdata/pkgconfig/cairo-xlib.pc ]; then \
+		${ECHO_CMD} "${PKGNAME}: Needs cairo with X11 support enabled."; \
+		exit 1; \
+	fi
 
 do-install:
 	@${INSTALL_PROGRAM} ${WRKSRC}/gtk/gtk-update-icon-cache \
@@ -54,4 +52,4 @@ do-install:
 #	@${INSTALL_MAN} ${WRKSRC}/docs/reference/gtk/gtk-update-icon-cache.1 \
 #		${STAGEDIR}${PREFIX}/man/man1/
 
-.include <bsd.port.post.mk>
+.include <bsd.port.mk>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 602 bytes
Desc: not available
URL: <http://lists.freebsd.org/pipermail/freebsd-gecko/attachments/20151122/f3df329f/attachment.bin>


More information about the freebsd-gecko mailing list