ports/176038: sysutils/conky: convert to new options framework
Guido Falsi
mad at FreeBSD.org
Mon Feb 11 22:20:02 UTC 2013
>Number: 176038
>Category: ports
>Synopsis: sysutils/conky: convert to new options framework
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: freebsd-ports-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: change-request
>Submitter-Id: current-users
>Arrival-Date: Mon Feb 11 22:20:00 UTC 2013
>Closed-Date:
>Last-Modified:
>Originator: Guido Falsi
>Release: FreeBSD 9.1-STABLE amd64
>Organization:
none
>Environment:
System: FreeBSD micro.madpilot.net 9.1-STABLE FreeBSD 9.1-STABLE #18 r244955: Wed Jan 2 10:46:21 CET 2013 root at micro.madpilot.net:/usr/obj/usr/src/sys/MICRO amd64
>Description:
I made patches to make the following changes to the sysutils/conky
and sysutils/conky-awesome ports you maintain:
- Convert to new options framework
- Use USE_PKGCONFIG instead of USE_GNOME=pkgconfig
- Remove ABI version numbers from LIB_DEPENDS
- Trim Makefile headers on sysutils/conky-awesome
Reviewd by: bapt
Can you revise this patch and approve it?
Thanks.
Maintainer is CCed.
>How-To-Repeat:
>Fix:
Index: sysutils/conky/Makefile
===================================================================
--- sysutils/conky/Makefile (revision 312080)
+++ sysutils/conky/Makefile (working copy)
@@ -15,10 +15,9 @@
USE_ICONV= yes
USE_BZIP2= yes
GNU_CONFIGURE= yes
-USE_XORG?= x11 xext xdamage
-USE_GNOME?= pkgconfig
USE_ICONV= yes
USE_GMAKE= yes
+USE_PKGCONFIG= build
CONFIGURE_ARGS+= --disable-portmon \
--disable-hddtemp \
--disable-alsa \
@@ -32,132 +31,130 @@
PORTDOCS= README AUTHORS ChangeLog TODO NEWS \
docs.html variables.html config_settings.html
-OPTIONS+= APCUPSD "Enable APCUPSD support" Off \
- AUDACIOUS "Enable Audacious support" Off \
- INOTIFY "Enable inotify support" Off \
- MPD "Enable MPD support" Off \
- NCURSES "Enable ncurses support" Off \
- RSS "Enable RSS support" Off \
- METAR "Enable METAR Weather support" Off \
- XOAP "Enable XOAP Weather support" Off \
- XMMS2 "Enable XMMS2 support" Off
+OPTIONS_DEFINE= APCUPSD AUDACIOUS INOTIFY LUA METAR MPD NCURSES RSS \
+ X11 XMMS2 XOAP
-.if !empty(USE_XORG)
-OPTIONS+= DOUBLE_BUFFER "Enable double buffering" On \
- IMLIB2 "Enable Imlib2 support" Off \
- LUA "Enable Lua support" Off \
- LUA_CAIRO "Enable Lua-Cairo binding (impl. Lua)" Off \
- LUA_IMLIB2 "Enable Lua-Imlib2 binding (impl. Lua/Imlib2)" Off \
- XFT "Enable Xft support" Off
-.else
-OPTIONS+= LUA "Enable Lua support" Off
-.endif
+OPTIONS_GROUP?= X11
+OPTIONS_GROUP_X11= DOUBLE_BUFFER IMLIB2 XFT LUA_CAIRO LUA_IMLIB2
+OPTIONS_DEFAULT?= X11 DOUBLE_BUFFER
-.include <bsd.port.pre.mk>
+APCUPSD_DESC= Monitor Apcupsd
+AUDACIOUS_DESC= Control Audacios sound player
+DOUBLE_BUFFER_DESC= Enable double buffering
+INOTIFY_DESC= Inotify support
+LUA_CAIRO_DESC= Lua-Cairo binding (Requires LUA)
+LUA_IMLIB2_DESC= Lua-Imlib2 binding (Requires LUA/Imlib2)
+METAR_DESC= Display METAR Weather reports
+MPD_DESC= Control mpd (Music Player Daemon)
+NCURSES_DESC= Output to ncurses display
+RSS_DESC= Display RSS feeds
+XMMS2_DESC= Control xmms2 media player
+XOAP_DESC= Display XOAP Weather reports
-.if empty(USE_XORG)
-WITHOUT_DOUBLE_BUFFER= On
-CONFIGURE_ARGS+= --disable-x11 --disable-own-window
-.undef WITH_IMLIB2
-.undef WITH_LUA_CAIRO
-.undef WITH_LUA_IMLIB2
-.undef WITH_XFT
+.include <bsd.port.options.mk>
+
+.if ${PORT_OPTIONS:MX11}
+USE_XORG= x11 xext xdamage
+
+. if ! ${PORT_OPTIONS:MDOUBLE_BUFFER}
+CONFIGURE_ARGS+= --disable-double-buffer
+. endif
+
+. if ${PORT_OPTIONS:MLUA_CAIRO}
+LIB_DEPENDS+= cairo:${PORTSDIR}/graphics/cairo
+BUILD_DEPENDS+= tolua++-5.1:${PORTSDIR}/lang/tolua++
+RUN_DEPENDS+= tolua++-5.1:${PORTSDIR}/lang/tolua++
+CONFIGURE_ARGS+= --enable-lua-cairo
+. endif
+
+. if ${PORT_OPTIONS:MLUA_IMLIB2}
+BUILD_DEPENDS+= tolua++-5.1:${PORTSDIR}/lang/tolua++
+RUN_DEPENDS+= tolua++-5.1:${PORTSDIR}/lang/tolua++
+CONFIGURE_ARGS+= --enable-lua-imlib2
+. endif
+
+. if ${PORT_OPTIONS:MIMLIB} || ${PORT_OPTIONS:MLUA_IMLIB2}
+LIB_DEPENDS+= Imlib2:${PORTSDIR}/graphics/imlib2
+CONFIGURE_ARGS+= --enable-imlib2
+. else
+CONFIGURE_ARGS+= --disable-imlib2
+. endif
+
+. if ${PORT_OPTIONS:MXFT}
+LIB_DEPENDS+= Xft:${PORTSDIR}/x11-fonts/libXft
+CONFIGURE_ARGS+= --enable-xft
+. else
+CONFIGURE_ARGS+= --disable-xft
+. endif
+
+.else
+CONFIGURE_ARGS+= --disable-x11 --disable-own-window --disable-imlib2 \
+ --disable-xft
.endif
-.if defined(WITH_APCUPSD)
+.if ${PORT_OPTIONS:MAPCUPSD}
RUN_DEPENDS+= ${LOCALBASE}/sbin/apcupsd:${PORTSDIR}/sysutils/apcupsd
CONFIGURE_ARGS+= --enable-apcupsd
.else
CONFIGURE_ARGS+= --disable-apcupsd
.endif
-.if defined(WITH_AUDACIOUS)
-LIB_DEPENDS+= audclient.2:${PORTSDIR}/multimedia/audacious
+.if ${PORT_OPTIONS:MAUDACIOUS}
+LIB_DEPENDS+= audclient:${PORTSDIR}/multimedia/audacious
CONFIGURE_ARGS+= --enable-audacious
.else
CONFIGURE_ARGS+= --disable-audacious
.endif
-.if defined(WITH_INOTIFY)
-LIB_DEPENDS+= inotify.0:${PORTSDIR}/devel/libinotify
+.if ${PORT_OPTIONS:MINOTIFY}
+LIB_DEPENDS+= inotify:${PORTSDIR}/devel/libinotify
CONFIGURE_ARGS+= --enable-inotify
.else
CONFIGURE_ARGS+= --disable-inotify
.endif
-.if defined(WITH_LUA) || defined(WITH_LUA_CAIRO) || defined(WITH_LUA_IMLIB2)
+.if ${PORT_OPTIONS:MLUA} || ( ${PORT_OPTIONS:MLUA_CAIRO} || ${PORT_OPTIONS:MLUA_IMLIB2} && ${PORT_OPTIONS:MX11} )
USE_LUA= 5.1+
CONFIGURE_ARGS+= --enable-lua
.else
CONFIGURE_ARGS+= --disable-lua
.endif
-.if defined(WITH_LUA_CAIRO)
-LIB_DEPENDS+= cairo.2:${PORTSDIR}/graphics/cairo
-BUILD_DEPENDS+= tolua++-5.1:${PORTSDIR}/lang/tolua++
-RUN_DEPENDS+= tolua++-5.1:${PORTSDIR}/lang/tolua++
-CONFIGURE_ARGS+= --enable-lua-cairo
-.endif
-
-.if defined(WITH_IMLIB2) || defined(WITH_LUA_IMLIB2)
-LIB_DEPENDS+= Imlib2.5:${PORTSDIR}/graphics/imlib2
-CONFIGURE_ARGS+= --enable-imlib2
-.else
-CONFIGURE_ARGS+= --disable-imlib2
-.endif
-
-.if defined(WITH_LUA_IMLIB2)
-BUILD_DEPENDS+= tolua++-5.1:${PORTSDIR}/lang/tolua++
-RUN_DEPENDS+= tolua++-5.1:${PORTSDIR}/lang/tolua++
-CONFIGURE_ARGS+= --enable-lua-imlib2
-.endif
-
-.if defined(WITH_NCURSES)
+.if ${PORT_OPTIONS:MNCURSES}
CONFIGURE_ARGS+= --enable-ncurses
.else
CONFIGURE_ARGS+= --disable-ncurses
.endif
-.if defined(WITH_XFT)
-LIB_DEPENDS+= Xft.2:${PORTSDIR}/x11-fonts/libXft
-CONFIGURE_ARGS+= --enable-xft
-.else
-CONFIGURE_ARGS+= --disable-xft
-.endif
-
-.if defined(WITHOUT_MPD)
+.if ${PORT_OPTIONS:MMPD}
CONFIGURE_ARGS+= --disable-mpd
.endif
-.if defined(WITH_RSS)
-LIB_DEPENDS+= curl.6:${PORTSDIR}/ftp/curl \
- xml2.5:${PORTSDIR}/textproc/libxml2
+.if ${PORT_OPTIONS:MRSS}
+LIB_DEPENDS+= curl:${PORTSDIR}/ftp/curl \
+ xml2:${PORTSDIR}/textproc/libxml2
CONFIGURE_ARGS+= --enable-rss
USE_GNOME+= glib20
.endif
-.if defined(WITH_METAR)
-LIB_DEPENDS+= curl.6:${PORTSDIR}/ftp/curl
+.if ${PORT_OPTIONS:MMETAR}
+LIB_DEPENDS+= curl:${PORTSDIR}/ftp/curl
CONFIGURE_ARGS+= --enable-weather-metar
.endif
-.if defined(WITH_XOAP)
-LIB_DEPENDS+= curl.6:${PORTSDIR}/ftp/curl \
- xml2.5:${PORTSDIR}/textproc/libxml2
+.if ${PORT_OPTIONS:MXOAP}
+LIB_DEPENDS+= curl:${PORTSDIR}/ftp/curl \
+ xml2:${PORTSDIR}/textproc/libxml2
CONFIGURE_ARGS+= --enable-weather-xoap
.endif
-.if defined(WITH_XMMS2)
-LIB_DEPENDS+= xmmsclient.6:${PORTSDIR}/audio/xmms2
+.if ${PORT_OPTIONS:MXMMS2}
+LIB_DEPENDS+= xmmsclient:${PORTSDIR}/audio/xmms2
CONFIGURE_ARGS+= --enable-xmms2
.else
CONFIGURE_ARGS+= --disable-xmms2
.endif
-.if defined(WITHOUT_DOUBLE_BUFFER)
-CONFIGURE_ARGS+= --disable-double-buffer
-.endif
-
post-patch:
@${REINPLACE_CMD} -e 's,lua5\.1,lua-5.1,g' \
${WRKSRC}/configure
@@ -169,16 +166,16 @@
${INSTALL_MAN} ${WRKSRC}/doc/conky.1 ${PREFIX}/man/man1
post-install:
-.if !defined(NOPORTEXAMPLES)
+.if ${PORT_OPTIONS:MEXAMPLES}
@${MKDIR} ${EXAMPLESDIR}
-. if !empty(USE_XORG)
+. if ${PORT_OPTIONS:MX11}
@${INSTALL_DATA} ${WRKSRC}/data/conky.conf ${EXAMPLESDIR}/conkyrc.sample
. else
@${INSTALL_DATA} ${WRKSRC}/data/conky_no_x11.conf ${EXAMPLESDIR}/conkyrc.sample
. endif
.endif
-.if !defined(NOPORTDOCS)
+.if ${PORT_OPTIONS:MDOCS}
@${MKDIR} ${DOCSDIR}
.for i in README AUTHORS ChangeLog TODO NEWS
${INSTALL_DATA} ${WRKSRC}/${i} ${DOCSDIR}
@@ -188,4 +185,4 @@
.endfor
.endif
-.include <bsd.port.post.mk>
+.include <bsd.port.mk>
Index: sysutils/conky-awesome/Makefile
===================================================================
--- sysutils/conky-awesome/Makefile (revision 312080)
+++ sysutils/conky-awesome/Makefile (working copy)
@@ -1,9 +1,5 @@
-# New ports collection makefile for: conky
-# Date created: 2005-08-27
-# Whom: Roman Bogorodskiy <novel at FreeBSD.org>
-#
+# Created by: Roman Bogorodskiy <novel at FreeBSD.org>
# $FreeBSD$
-#
PKGNAMESUFFIX= -awesome
@@ -15,6 +11,8 @@
CONFLICTS= conky-[0-9]*
-USE_XORG= # This is a comment
+OPTIONS_EXCLUDE= X11
+OPTIONS_GROUP=
+OPTIONS_DEFAULT=
.include "${MASTERDIR}/Makefile"
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list