Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 14 Jun 2013 12:47:19 +0000 (UTC)
From:      Baptiste Daroussin <bapt@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r320906 - in head: . Mk/Uses
Message-ID:  <201306141247.r5EClJuv014975@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: bapt
Date: Fri Jun 14 12:47:19 2013
New Revision: 320906
URL: http://svnweb.freebsd.org/changeset/ports/320906

Log:
  Add a USES display to replace USE_DISPLAY.
  
  as USE_DISPLAY it will handle the dependencies needed for a display. But it will also start and stop the Xfvb process during the requested phase the display it needed.
  
  it takes 'install' as an implicit argument, but may also accept 'build'

Added:
  head/Mk/Uses/display.mk   (contents, props changed)
Modified:
  head/CHANGES

Modified: head/CHANGES
==============================================================================
--- head/CHANGES	Fri Jun 14 12:33:14 2013	(r320905)
+++ head/CHANGES	Fri Jun 14 12:47:19 2013	(r320906)
@@ -10,6 +10,19 @@ in the release notes and/or placed into 
 
 All ports committers are allowed to commit to this file.
 
+20130614:
+AUTHOR: bapt@FreeBSD.org
+
+  * New 'display' USES macro to handle building ports that may require a
+    a display to build.
+
+  USES= display[:install] will start Xvfb and set the DISPLAY environment
+  variable before the installation phase and stop it at the end. (install is
+  the implicit value)
+
+  USES= display:build will start Xvfb and set the DISPLAY environment variable
+  before the build phase and stop it at the end.
+
 20130607:
 AUTHOR: bdrewery@FreeBSD.org
 

Added: head/Mk/Uses/display.mk
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/Mk/Uses/display.mk	Fri Jun 14 12:47:19 2013	(r320906)
@@ -0,0 +1,42 @@
+# $FreeBSD$
+#
+# MAINTAINER: x11@FreeBSD.org
+#
+# Feature:	display
+# Usage:	USES=display or USES=display:ARGS
+# Valid ARGS:	install (default, implicit), build
+# 
+# Except the target where the DISPLAY is needed
+#
+
+.if !defined(_INCLUDE_USES_DISPLAY_MK)
+_INCLUDE_USES_DISPLAY_MK=	yes
+
+display_ARGS?=	install
+.if ${display_ARGS} != build && ${display_ARGS} != install
+IGNORE=	USES=display can only take 'build', 'install' and none
+.endif
+
+.if !defined(DISPLAY)
+BUILD_DEPENDS+=	Xvfb:${PORTSDIR}/x11-servers/xorg-vfbserver \
+	${LOCALBASE}/lib/X11/fonts/misc/8x13O.pcf.gz:${X_FONTS_MISC_PORT} \
+	${LOCALBASE}/lib/X11/fonts/misc/fonts.alias:${X_FONTS_ALIAS_PORT} \
+	${LOCALBASE}/share/X11/xkb/rules/base:${PORTSDIR}/x11/xkeyboard-config \
+	xkbcomp:${PORTSDIR}/x11/xkbcomp
+
+XVFBPORT!=	port=0; while test -S /tmp/.X11-unix/X$${port} ; do port=$$(( port + 1 )) ; done ; ${ECHO_CMD} $$port
+XVFBPIDFILE=	/tmp/.xvfb-${XVFBPORT}.pid
+MAKE_ENV+=	DISPLAY=":${XVFBPORT}"
+
+pre-${display_ARGS}: start-display
+
+post-${display_ARGS}: stop-display
+
+start-display:
+	daemon -p ${XVFBPIDFILE} Xvfb :${XVFBPORT}
+
+stop-display:
+	pkill -15 ${XVFBPIDFILE}
+
+.endif
+.endif



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