Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 8 Apr 2016 08:00:15 +0000 (UTC)
From:      Ashish SHUKLA <ashish@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r412722 - in head/editors: emacs emacs-nox11 emacs/files
Message-ID:  <201604080800.u3880FBa024478@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: ashish
Date: Fri Apr  8 08:00:15 2016
New Revision: 412722
URL: https://svnweb.freebsd.org/changeset/ports/412722

Log:
  editors/emacs:
   - Clarify LICENSE, as it's "or any later version" clause
   - Switch to CONFLICTS_INSTALL, as conflicts only happen on install
   - Finish OPTIONS helpers conversion
   - Convert patch-sources.el to SUB_FILES
   - Convert *FLAGS to USES=localbase
   - Convert IGNORE and SOUND to _IMPLIES
   - Drop DBUS_PTHREAD_LIBS after ports r382294
   - Drop default WRKSRC
   - Drop clang workaround for unsupported FreeBSD versions
  
  editors/emacs-nox11:
   - Kill EMACS_NO_X11_SLAVE in favour of ?= variables
   - Conflict with any EMACS_VER
  
  PR:		208217
  Submitted by:	jbeich

Added:
  head/editors/emacs/files/sources.el.in
     - copied, changed from r412721, head/editors/emacs/files/patch-sources.el
Deleted:
  head/editors/emacs/files/patch-sources.el
Modified:
  head/editors/emacs-nox11/Makefile
  head/editors/emacs/Makefile

Modified: head/editors/emacs-nox11/Makefile
==============================================================================
--- head/editors/emacs-nox11/Makefile	Fri Apr  8 07:31:44 2016	(r412721)
+++ head/editors/emacs-nox11/Makefile	Fri Apr  8 08:00:15 2016	(r412722)
@@ -3,11 +3,12 @@
 
 PKGNAMESUFFIX=	-nox11
 
+CONFLICTS_INSTALL=	emacs[0-9]*
+
 OPTIONS_EXCLUDE=GCONF GIF JPEG OTF M17N PNG SVG TIFF SYNC_INPUT GTK2 GTK3 \
 		SCROLLBARS XFT XIM XPM MAGICK GSETTINGS X11 CANNA \
 		XAW XAW3D MOTIF
-
-EMACS_NO_X11_SLAVE=	yes
+OPTIONS_DEFAULT?=SOURCES GNUTLS XML
 
 MASTERDIR=	${.CURDIR}/../emacs
 

Modified: head/editors/emacs/Makefile
==============================================================================
--- head/editors/emacs/Makefile	Fri Apr  8 07:31:44 2016	(r412721)
+++ head/editors/emacs/Makefile	Fri Apr  8 08:00:15 2016	(r412722)
@@ -15,25 +15,29 @@ PATCH_DIST_STRIP=	-p1
 MAINTAINER=	ashish@FreeBSD.org
 COMMENT=	GNU editing macros
 
-LICENSE=	GPLv3
+LICENSE=	GPLv3+
 LICENSE_FILE=	${WRKSRC}/COPYING
 
-CONFLICTS=	emacs-19.* emacs21-[0-9]* emacs22-[0-9]* emacs23-[0-9]* \
+BROKEN_ia64=	Emacs 24.X does not currently build on ia64
+
+CONFLICTS_INSTALL?=	emacs-nox11-[0-9]*
+CONFLICTS_INSTALL+=	\
+		emacs-19.* emacs21-[0-9]* emacs22-[0-9]* emacs23-[0-9]* \
 		xemacs-[0-9]* xemacs-devel-[0-9]* xemacs-mule-[0-9]* \
 		xemacs-devel-mule-[0-9]* \
 		emacs-devel-[0-9]*
 
 EMACS_VER=	24.5
 GNU_CONFIGURE=	yes
-USES=		cpe gmake makeinfo ncurses pkgconfig shebangfix tar:xz
-CPPFLAGS+=	-I${LOCALBASE}/include
-LDFLAGS+=	-L${LOCALBASE}/lib
+USES=		cpe gmake localbase makeinfo ncurses pkgconfig shebangfix tar:xz
+# Building with GCC 4.6+ requires it
+LDFLAGS+=	${ncurses_ARGS:Mport:C/.+/-ltinfo/}
 INFO_PATH=	${DATADIR_REL}/info
-WRKSRC=		${WRKDIR}/${PORTNAME}-${PORTVERSION}
 CPE_VENDOR=	gnu
 
-SUB_FILES=	pkg-install
+SUB_FILES=	pkg-install sources.el
 SUB_LIST+=	ARCHLIBDIR=${PREFIX}/libexec/emacs/${EMACS_VER}/${CONFIGURE_TARGET}
+SUB_LIST+=	EMACS_VER=${EMACS_VER} # sources.el
 SHEBANG_FILES=	lib-src/grep-changelog
 
 CONFIGURE_ARGS=	--localstatedir=/var
@@ -53,7 +57,7 @@ INFO=		ada-mode auth autotype bovine cal
 OPTIONS_DEFINE=	CANNA X11 ACL DBUS GCONF GIF JPEG M17N OTF PNG SOUND SOURCES SVG TIFF SCROLLBARS \
 		XFT XIM XML XPM MAGICK GNUTLS GSETTINGS LTO FILENOTIFY
 
-OPTIONS_SINGLE=	X11 SOUND
+OPTIONS_RADIO=	X11 SOUND
 
 CANNA_DESC=		Canna support
 ACL_DESC=		ACL support
@@ -69,17 +73,11 @@ OTF_DESC=		Opentype fonts suport
 FILENOTIFY_DESC=	File notification support
 LTO_DESC=		Enable link-time optimization (requires GCC 4.6+)
 
-OPTIONS_SINGLE_X11=	GTK2 GTK3 XAW XAW3D MOTIF
-OPTIONS_SINGLE_SOUND=	ALSA OSS
+OPTIONS_RADIO_X11=	GTK2 GTK3 XAW XAW3D MOTIF
+OPTIONS_RADIO_SOUND=	ALSA OSS
 
-.if !defined(EMACS_NO_X11_SLAVE)
-OPTIONS_DEFAULT=DBUS GCONF GIF GTK2 JPEG M17N OTF PNG SOUND SOURCES SVG TIFF \
-		SCROLLBARS XFT XIM XML XPM MAGICK GNUTLS GSETTINGS OSS X11
-CONFLICTS+=	emacs-nox11-[0-9]*
-.else
-OPTIONS_DEFAULT=SOURCES GNUTLS XML
-CONFLICTS+=	emacs24-[0-9]*
-.endif
+OPTIONS_DEFAULT?=	DBUS GCONF GIF GTK2 JPEG M17N OTF PNG SOURCES SVG TIFF \
+			SCROLLBARS XFT XIM XML XPM MAGICK GNUTLS GSETTINGS OSS
 
 OPTIONS_SUB=		SOURCES
 
@@ -93,7 +91,9 @@ CANNA_LIB_DEPENDS=	libcanna.so:japanese/
 SOUND_CONFIGURE_OFF=	--with-sound=no
 ALSA_CONFIGURE_ON=	--with-sound=alsa
 ALSA_LIB_DEPENDS=	libasound.so:audio/alsa-lib
+ALSA_IMPLIES=		SOUND
 OSS_CONFIGURE_ON=	--with-sound=oss
+OSS_IMPLIES=		SOUND
 
 DBUS_LIB_DEPENDS=	libdbus-1.so:devel/dbus
 DBUS_CONFIGURE_WITH=	dbus
@@ -106,63 +106,83 @@ XML_CONFIGURE_WITH=	xml2
 
 SVG_USE=		GNOME=librsvg2
 SVG_CONFIGURE_WITH=	rsvg
+SVG_IMPLIES=		X11
 
 X11_CONFIGURE_WITH=	x
 X11_USE=		XORG=x11
 X11_USES=		desktop-file-utils
+X11_VARS=		INSTALLS_ICONS=yes
 
 GTK2_USE=		GNOME=gtk20
 GTK2_CONFIGURE_ON=	--with-x-toolkit=gtk2
+GTK2_IMPLIES=		X11
 
 GTK3_USE=		GNOME=gtk30
 GTK3_CONFIGURE_ON=	--with-x-toolkit=gtk3
+GTK3_IMPLIES=		X11
 
 XAW3D_LIB_DEPENDS=	libXaw3d.so:x11-toolkits/Xaw3d
 XAW3D_CONFIGURE_ON=	--with-x-toolkit=athena
+XAW3D_IMPLIES=		X11
 
 XAW_USE=		XORG=xaw
 XAW_CONFIGURE_ON+=	--with-x-toolkit=athena --without-xaw3d
+XAW_IMPLIES=		X11
 
 MOTIF_USES=		motif
 MOTIF_CONFIGURE_ON+=	--with-x-toolkit=motif
+MOTIF_IMPLIES=		X11
 
 SCROLLBARS_CONFIGURE_WITH=	toolkit-scroll-bars
+SCROLLBARS_IMPLIES=	X11
 
 JPEG_USES=		jpeg
 JPEG_CONFIGURE_WITH=	jpeg
+JPEG_IMPLIES=		X11
 
 TIFF_LIB_DEPENDS=	libtiff.so:graphics/tiff
 TIFF_CONFIGURE_WITH=	tiff
+TIFF_IMPLIES=		X11
 
 GIF_LIB_DEPENDS=	libgif.so:graphics/giflib
 GIF_CONFIGURE_WITH=	gif
+GIF_IMPLIES=		X11
 
 PNG_LIB_DEPENDS+=	libpng.so:graphics/png
 PNG_CONFIGURE_WITH=	png
+PNG_IMPLIES=		X11
 
 XPM_USE=		XORG=xpm
 XPM_CONFIGURE_WITH=	xpm
+XPM_IMPLIES=		X11
 
 XFT_USE=		XORG=xft
 XFT_LIB_DEPENDS=	libfreetype.so:print/freetype2
 XFT_CONFIGURE_WITH=	xft
+XFT_IMPLIES=		X11
 
 M17N_LIB_DEPENDS=	libm17n.so:devel/m17n-lib
 M17N_CONFIGURE_WITH=	m17n-flt
+M17N_IMPLIES=		XFT
 
 OTF_LIB_DEPENDS=	libotf.so:print/libotf
 OTF_CONFIGURE_WITH=	libotf
+OTF_IMPLIES=		XFT
 
 MAGICK_LIB_DEPENDS=	libMagickCore-6.so:graphics/ImageMagick
 MAGICK_CONFIGURE_WITH=	imagemagick
+MAGICK_IMPLIES=		X11
 
 GSETTINGS_USE=		gnome=glib20
 GSETTINGS_CONFIGURE_WITH=	gsettings
+GSETTINGS_IMPLIES=	X11 DBUS
 
 GCONF_USE=		gnome=gconf2
 GCONF_CONFIGURE_WITH=	gconf
+GCONF_IMPLIES=		X11
 
 XIM_CONFIGURE_WITH=	xim
+XIM_IMPLIES=		X11
 
 LTO_CONFIGURE_ON=	--enable-link-time-optimization
 LTO_USE=		GCC=4.6+
@@ -173,77 +193,18 @@ FILENOTIFY_CONFIGURE_ON=	--with-file-not
 FILENOTIFY_CONFIGURE_OFF=	--without-file-notification
 FILENOTIFY_USE=		GNOME=glib20
 
-.include <bsd.port.options.mk>
-
-# clang is broken on i386 platform in -O2, due to use of alloca, and stack realignment
-# and %esi as frame pointer register
-# http://llvm.org/bugs/show_bug.cgi?id=18171
-# fixed in r263312 (11-CURRENT), and fixed in r263765 (10-STABLE)
-.if ${ARCH} == "i386"
-.if (${OSVERSION} < 1000706) || (${OSVERSION} >= 1100000 && ${OSVERSION} < 1100015)
-USE_GCC=		any
-.endif
-.endif
-
-DBUS_PTHREAD_LIBS=	${CC} -dumpspecs | ${GREP} -m 1 pthread: | ${SED} -e 's|^.*%{\!pg: %{pthread:||' -e 's|}.*$$||' || ${TRUE}
-
-.if ${PORT_OPTIONS:MX11}
-
-INSTALLS_ICONS=	yes
-
-.if !${PORT_OPTIONS:MXFT}
-.if ${PORT_OPTIONS:MM17N}
-IGNORE=	m17n support for text-shaping requires Xft. Please run 'make config'
-.elif ${PORT_OPTIONS:MOTF}
-IGNORE=	opentype fonts support requires Xft. Please run 'make config'
-.endif
-.endif
-
-.else
-
-.for OPT in SVG GTK2 GTK3 XAW3D XAW MOTIF SCROLLBARS JPEG TIFF GIF PNG XPM XFT M17N MAGICK GCONF GSETTINGS XIM
-.if ${PORT_OPTIONS:M${OPT}}
-IGNORE=	option ${OPT} requires requires X11 option
-.endif
-.endfor
-
-.endif
-
-.if !${PORT_OPTIONS:MDBUS}
-.if ${PORT_OPTIONS:MGSETTINGS}
-IGNORE=	support for GSettings requires DBUS. Please run 'make config'
-.endif
-.endif
-
-.include <bsd.port.pre.mk>
-
-# Building with GCC 4.6+ requires it
-.if ${ncurses_ARGS} == "port"
-LDFLAGS+=	-ltinfo
-.endif
-
-.if ${ARCH} == "ia64"
-BROKEN=	Emacs 24.X does not currently build on ia64
-.endif
-
-post-patch:
-	@${REINPLACE_CMD} -e "s/%%EMACS_VER%%/${EMACS_VER}/g" -e "s/%%DATADIR%%/${DATADIR:C/\//\\\//g}/g" ${WRKSRC}/sources.el
-.if empty(PORT_OPTIONS:MX11)
+post-patch-X11-off:
 	@${REINPLACE_CMD} -e 's/^Terminal=.*$$/Terminal=true/' ${WRKSRC}/etc/emacs.desktop
-.endif
-
-post-configure:
-	@${REINPLACE_CMD} -e "s/^\(DBUS_LIBS.*\)-pthread\(.*\)$$/\1$$(${DBUS_PTHREAD_LIBS})\2/" \
-	 ${WRKSRC}/src/Makefile
 
 post-install:
 	@${RM} -rf ${STAGEDIR}/var/games/emacs
-.if ${PORT_OPTIONS:MSOURCES}
+	@${FIND} ${STAGEDIR}${PREFIX}/${INFO_PATH} -type f -name '*.gz' -exec ${GUNZIP_CMD} '{}' \;
+
+post-install-SOURCES-on:
 	@${MKDIR} ${STAGEDIR}${DATADIR}/${EMACS_VER}/src
 	${INSTALL_DATA} ${WRKSRC}/src/*.[ch] ${STAGEDIR}${DATADIR}/${EMACS_VER}/src
-	${INSTALL_DATA} ${WRKSRC}/sources.el ${STAGEDIR}${DATADIR}/${EMACS_VER}/site-lisp/site-start.el
-.endif
-	@${FIND} ${STAGEDIR}${PREFIX}/${INFO_PATH} -type f -name '*.gz' -exec ${GUNZIP_CMD} '{}' \;
+	${INSTALL_DATA} ${WRKDIR}/sources.el \
+		${STAGEDIR}${DATADIR}/${EMACS_VER}/site-lisp/site-start.el
 
 .if !defined(WITHOUT_X11)
 pre-everything::
@@ -252,4 +213,4 @@ pre-everything::
 	@${ECHO_MSG}
 .endif
 
-.include <bsd.port.post.mk>
+.include <bsd.port.mk>

Copied and modified: head/editors/emacs/files/sources.el.in (from r412721, head/editors/emacs/files/patch-sources.el)
==============================================================================
--- head/editors/emacs/files/patch-sources.el	Fri Apr  8 07:31:44 2016	(r412721, copy source)
+++ head/editors/emacs/files/sources.el.in	Fri Apr  8 08:00:15 2016	(r412722)
@@ -1,7 +1,4 @@
---- /dev/null
-+++ sources.el
-@@ -0,0 +1,4 @@
-+;;; Path to Emacs C Sources.
-+(when (string-match (regexp-quote "%%EMACS_VER%%") emacs-version)
-+  (setq find-function-C-source-directory
-+        "%%DATADIR%%/%%EMACS_VER%%/src"))
+;;; Path to Emacs C Sources.
+(when (string-match (regexp-quote "%%EMACS_VER%%") emacs-version)
+  (setq find-function-C-source-directory
+        "%%DATADIR%%/%%EMACS_VER%%/src"))



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