Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 11 Jan 2012 08:42:55 GMT
From:      Aragon Gouveia <aragon@phat.za.net>
To:        freebsd-gnats-submit@FreeBSD.org
Subject:   ports/164012: [patch] x11/dmenu version upgrade 4.5 and Xft support
Message-ID:  <201201110842.q0B8gtkX089525@red.freebsd.org>
Resent-Message-ID: <201201110850.q0B8o8Oi044585@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         164012
>Category:       ports
>Synopsis:       [patch] x11/dmenu version upgrade 4.5 and Xft support
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          update
>Submitter-Id:   current-users
>Arrival-Date:   Wed Jan 11 08:50:08 UTC 2012
>Closed-Date:
>Last-Modified:
>Originator:     Aragon Gouveia
>Release:        9.0-RC2
>Organization:
>Environment:
FreeBSD igor.geek.sh 9.0-RC2 FreeBSD 9.0-RC2 #0: Sat Nov 12 18:35:25 UTC 2011     root@farrell.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC  amd64
>Description:
Attached patch updates x11/dmenu to the latest release, v4.5.  It also adds a port option that provides Xft support to dmenu for using anti-aliased fonts.

I've also made some changes to how the port fixes the dmenu source, which I think is more robust through upgrades, and cleaner.

>How-To-Repeat:

>Fix:


Patch attached with submission follows:

diff -uNr dmenu/Makefile dmenu.new/Makefile
--- dmenu/Makefile	2011-11-18 03:08:28.000000000 +0200
+++ dmenu.new/Makefile	2012-01-10 19:56:55.000000000 +0200
@@ -6,38 +6,47 @@
 #
 
 PORTNAME=	dmenu
-PORTVERSION=	4.4.1
+PORTVERSION=	4.5
 CATEGORIES=	x11
 MASTER_SITES=	http://dl.suckless.org/tools/ \
 		http://schot.a-eskwadraat.nl/files/
 
+PATCH_SITES=	http://tools.suckless.org/dmenu/patches/
+PATCH_DIST_STRIP=-p1
+
 MAINTAINER=	schot@a-eskwadraat.nl
 COMMENT=	X11 menu application designed for the dwm window manager
 
 LICENSE=	MIT
 LICENSE_FILE=	${WRKSRC}/LICENSE
 
-OPTIONS=	XINERAMA	"Enable Xinerama support" On
+OPTIONS=	XINERAMA	"Enable Xinerama support" On \
+		XFT		"Enable anti-aliased font support" On
 
 USE_XORG=	x11
 
-MAN1=		dmenu.1 lsx.1
-PLIST_FILES=	bin/dmenu bin/dmenu_run bin/lsx
+MAN1=		dmenu.1 stest.1
+PLIST_FILES=	bin/dmenu bin/dmenu_run bin/stest
 
 .include <bsd.port.options.mk>
 
 .if defined(WITH_XINERAMA)
 USE_XORG+=	xinerama
 .endif
+.if defined(WITH_XFT)
+USE_XORG+=	xft
+PATCHFILES+=	dmenu-4.5-xft.diff
+.endif
 
 post-patch:
-	@${GREP} -Rl '%%[[:alpha:]]\+%%' ${WRKSRC}|${XARGS} ${REINPLACE_CMD} \
-	         -e "s,%%PREFIX%%,${PREFIX},g" \
-	         -e "s,%%LOCALBASE%%,${LOCALBASE},g" \
-	         -e "s,%%MANPREFIX%%,${MANPREFIX},g"
+	${REINPLACE_CMD} -e '/$${DESTDIR}$${MANPREFIX}/ { s|/man1|/man/man1|g; }' ${WRKSRC}/Makefile
+	${REINPLACE_CMD} -e '/^PREFIX =/ { s|=.*$$|= ${PREFIX}|; }' \
+		-e '/^MANPREFIX =/ { s|=.*$$|= ${MANPREFIX}|; }' \
+		-e '/^X11.* =/ { s|=.*/usr/X11R6|= ${X11BASE}|; }' \
+		-e '/FLAGS.*=/ { s|=|+=|; s|-D_POSIX_C_SOURCE=2 ||; }' \
+		-e '/^CC.*=/ { s|=|?=|; }' ${WRKSRC}/config.mk
 .if defined(WITHOUT_XINERAMA)
-	@${REINPLACE_CMD} -e 's,$${XINERAMALIBS},,g' \
-	         -e 's,$${XINERAMAFLAGS},,g' ${WRKSRC}/config.mk
+	${REINPLACE_CMD} -e '/^XINERAMA/ s|^|#|g' ${WRKSRC}/config.mk
 .endif
 
 .include <bsd.port.mk>
diff -uNr dmenu/distinfo dmenu.new/distinfo
--- dmenu/distinfo	2011-11-18 03:08:28.000000000 +0200
+++ dmenu.new/distinfo	2012-01-10 19:58:25.000000000 +0200
@@ -1,2 +1,4 @@
-SHA256 (dmenu-4.4.1.tar.gz) = 6d641645ab610d98d847b9a64500be7cc0e75bff5342534906936afa6ddb4550
-SIZE (dmenu-4.4.1.tar.gz) = 9318
+SHA256 (dmenu-4.5.tar.gz) = 082cd698d82125ca0b3989006fb84ac4675c2a5585bf5bb8af0ea09cfb95a850
+SIZE (dmenu-4.5.tar.gz) = 11543
+SHA256 (dmenu-4.5-xft.diff) = efb4095d65e5e86f9dde97294732174409c24f319bdd4824cc22fa1404972b4f
+SIZE (dmenu-4.5-xft.diff) = 12884
diff -uNr dmenu/files/patch-Makefile dmenu.new/files/patch-Makefile
--- dmenu/files/patch-Makefile	2011-09-01 20:52:49.000000000 +0200
+++ dmenu.new/files/patch-Makefile	1970-01-01 02:00:00.000000000 +0200
@@ -1,32 +0,0 @@
---- Makefile.orig	2011-07-19 22:31:28.000000000 +0200
-+++ Makefile	2011-09-01 13:48:57.000000000 +0200
-@@ -47,20 +47,20 @@
- 	@chmod 755 ${DESTDIR}${PREFIX}/bin/dmenu
- 	@chmod 755 ${DESTDIR}${PREFIX}/bin/dmenu_run
- 	@chmod 755 ${DESTDIR}${PREFIX}/bin/lsx
--	@echo installing manual pages to ${DESTDIR}${MANPREFIX}/man1
--	@mkdir -p ${DESTDIR}${MANPREFIX}/man1
--	@sed "s/VERSION/${VERSION}/g" < dmenu.1 > ${DESTDIR}${MANPREFIX}/man1/dmenu.1
--	@sed "s/VERSION/${VERSION}/g" < lsx.1 > ${DESTDIR}${MANPREFIX}/man1/lsx.1
--	@chmod 644 ${DESTDIR}${MANPREFIX}/man1/dmenu.1
--	@chmod 644 ${DESTDIR}${MANPREFIX}/man1/lsx.1
-+	@echo installing manual pages to ${DESTDIR}${MANPREFIX}/man/man1
-+	@mkdir -p ${DESTDIR}${MANPREFIX}/man/man1
-+	@sed "s/VERSION/${VERSION}/g" < dmenu.1 > ${DESTDIR}${MANPREFIX}/man/man1/dmenu.1
-+	@sed "s/VERSION/${VERSION}/g" < lsx.1 > ${DESTDIR}${MANPREFIX}/man/man1/lsx.1
-+	@chmod 644 ${DESTDIR}${MANPREFIX}/man/man1/dmenu.1
-+	@chmod 644 ${DESTDIR}${MANPREFIX}/man/man1/lsx.1
- 
- uninstall:
- 	@echo removing executables from ${DESTDIR}${PREFIX}/bin
- 	@rm -f ${DESTDIR}${PREFIX}/bin/dmenu
- 	@rm -f ${DESTDIR}${PREFIX}/bin/dmenu_run
- 	@rm -f ${DESTDIR}${PREFIX}/bin/lsx
--	@echo removing manual page from ${DESTDIR}${MANPREFIX}/man1
--	@rm -f ${DESTDIR}${MANPREFIX}/man1/dmenu.1
--	@rm -f ${DESTDIR}${MANPREFIX}/man1/lsx.1
-+	@echo removing manual page from ${DESTDIR}${MANPREFIX}/man/man1
-+	@rm -f ${DESTDIR}${MANPREFIX}/man/man1/dmenu.1
-+	@rm -f ${DESTDIR}${MANPREFIX}/man/man1/lsx.1
- 
- .PHONY: all options clean dist install uninstall
diff -uNr dmenu/files/patch-config.mk dmenu.new/files/patch-config.mk
--- dmenu/files/patch-config.mk	2011-05-23 10:22:21.000000000 +0200
+++ dmenu.new/files/patch-config.mk	1970-01-01 02:00:00.000000000 +0200
@@ -1,32 +0,0 @@
---- config.mk.orig	2011-05-18 18:02:16.000000000 +0200
-+++ config.mk	2011-05-20 22:58:36.000000000 +0200
-@@ -2,11 +2,11 @@
- VERSION = 4.3.1
- 
- # paths
--PREFIX = /usr/local
--MANPREFIX = ${PREFIX}/share/man
-+PREFIX = %%PREFIX%%
-+MANPREFIX = %%MANPREFIX%%
- 
--X11INC = /usr/X11R6/include
--X11LIB = /usr/X11R6/lib
-+X11INC = %%LOCALBASE%%/include
-+X11LIB = %%LOCALBASE%%/lib
- 
- # Xinerama, comment if you don't want it
- XINERAMALIBS  = -lXinerama
-@@ -17,9 +17,9 @@
- LIBS = -L${X11LIB} -lX11 ${XINERAMALIBS}
- 
- # flags
--CPPFLAGS = -D_BSD_SOURCE -DVERSION=\"${VERSION}\" ${XINERAMAFLAGS}
--CFLAGS   = -ansi -pedantic -Wall -Os ${INCS} ${CPPFLAGS}
--LDFLAGS  = -s ${LIBS}
-+CPPFLAGS+= -D_BSD_SOURCE -DVERSION=\"${VERSION}\" ${XINERAMAFLAGS}
-+CFLAGS  += -ansi ${INCS} ${CPPFLAGS}
-+LDFLAGS += ${LIBS}
- 
- # compiler and linker
--CC = cc
-+CC?= cc


>Release-Note:
>Audit-Trail:
>Unformatted:



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