summaryrefslogtreecommitdiff
path: root/editors/emacs23
diff options
context:
space:
mode:
authorAshish SHUKLA <ashish@FreeBSD.org>2014-01-02 14:50:14 +0000
committerAshish SHUKLA <ashish@FreeBSD.org>2014-01-02 14:50:14 +0000
commita9243a1b6e27ec0dbea1edaa11d9a173a2784b98 (patch)
tree68399a1e4723b3e56a3e80ed6ce13df113de28f5 /editors/emacs23
parentFix typo. (diff)
- Add STAGE support
- Use OptionsNG helpers - Add PKGNAMESUFFIX - Remove LATEST_LINK - Rename X11TOOLKIT option to X11 - Move INSTALLS_ICONS to X11 block - Install info manuals to their own directory to avoid conflicts[1] Reported by: Jay Borkenhagen <jayb at braeburn.org>[1]
Notes
Notes: svn path=/head/; revision=338444
Diffstat (limited to 'editors/emacs23')
-rw-r--r--editors/emacs23/Makefile210
-rw-r--r--editors/emacs23/pkg-plist2
2 files changed, 88 insertions, 124 deletions
diff --git a/editors/emacs23/Makefile b/editors/emacs23/Makefile
index e706363faa6c..a26e449dfac1 100644
--- a/editors/emacs23/Makefile
+++ b/editors/emacs23/Makefile
@@ -3,11 +3,15 @@
PORTNAME= emacs
PORTVERSION= ${EMACS_VER}
-PORTREVISION?= 2
+PORTREVISION= 3
PORTEPOCH= 1
CATEGORIES= editors ipv6
MASTER_SITES= ${MASTER_SITE_GNU}
MASTER_SITE_SUBDIR= ${PORTNAME}
+PKGNAMESUFFIX= 23
+
+PATCH_SITE_SUBDIR+= ashish
+PATCH_DIST_STRIP= -p1
MAINTAINER= ashish@FreeBSD.org
COMMENT= GNU editing macros
@@ -28,14 +32,13 @@ USES= ncurses gmake pkgconfig
USE_BZIP2= yes
CPPFLAGS+= -I${LOCALBASE}/include
LDFLAGS+= -L${LOCALBASE}/lib
+INFO_PATH= ${DATADIR_REL}/info
CONFIGURE_ARGS= --localstatedir=/var
WRKSRC= ${WRKDIR}/${PORTNAME}-${PORTVERSION}
-LATEST_LINK= emacs23
-INSTALLS_ICONS= yes
MAN1= b2m.1 ctags.1 ebrowse.1 emacs.1 emacsclient.1 etags.1 \
grep-changelog.1 rcs-checkin.1
-PLIST_SUB= EMACS_VER=${EMACS_VER}
+PLIST_SUB= EMACS_VER=${EMACS_VER} INFODIR=${INFO_PATH}
EMACS_DIRS= ${DATADIR}/${EMACS_VER}/leim ${DATADIR}/${EMACS_VER}/lisp ${DATADIR}/${EMACS_VER}/src \
${PREFIX}/libexec/${PORTNAME}
@@ -50,9 +53,9 @@ INFO= ada-mode auth autotype calc ccmode cl dbus dired-x \
smtpmail speedbar tramp url vip viper widget woman
OPTIONS_DEFINE= CANNA DBUS GCONF GIF JPEG M17N OTF PNG SOUND SOURCES SVG TIFF SYNC_INPUT SCROLLBARS XFT \
- XIM XPM
+ XIM XPM X11
-OPTIONS_SINGLE= X11TOOLKIT
+OPTIONS_SINGLE= X11
CANNA_DESC= Canna support
SCROLLBARS_DESC= Toolkit scroll-bars
@@ -65,141 +68,104 @@ XIM_DESC= X Input Method Support
M17N_DESC= M17N support for text-shaping
OTF_DESC= Opentype fonts suport
-OPTIONS_SINGLE_X11TOOLKIT= GTK2 XAW XAW3D MOTIF
+OPTIONS_SINGLE_X11= GTK2 XAW XAW3D MOTIF
OPTIONS_DEFAULT=DBUS GCONF GIF GTK2 JPEG M17N OTF PNG SOUND SOURCES SVG TIFF SYNC_INPUT \
- SCROLLBARS XFT XIM XPM
+ SCROLLBARS XFT XIM XPM X11
-NO_STAGE= yes
-.include <bsd.port.options.mk>
+OPTIONS_SUB= SOURCES
-DBUS_PTHREAD_LIBS= ${CC} -dumpspecs | ${GREP} -m 1 pthread: | ${SED} -e 's|^.*%{\!pg: %{pthread:||' -e 's|}.*$$||' || ${TRUE}
+DBUS_LIB_DEPENDS= dbus-1:${PORTSDIR}/devel/dbus
+DBUS_CONFIGURE_WITH= dbus
-.if defined(WITHOUT_X11)
-CONFIGURE_ARGS+= --without-x
+SOUND_CONFIGURE_WITH= sound
-.else
-USE_XORG= x11
-USE_GNOME=
+SVG_USE= GNOME=librsvg2
+SVG_CONFIGURE_WITH= rsvg
-.if ${PORT_OPTIONS:MSVG}
-USE_GNOME+= librsvg2
-.else
-CONFIGURE_ARGS+= --without-rsvg
-.endif
+GTK2_USE= GNOME=gtk20
+GTK2_CONFIGURE_ON= --with-x-toolkit=gtk
-.if ${PORT_OPTIONS:MGTK2}
-USE_GNOME+= gtk20
-CONFIGURE_ARGS+= --with-x-toolkit=gtk
-.elif ${PORT_OPTIONS:MXAW3D}
-LIB_DEPENDS+= Xaw3d:${PORTSDIR}/x11-toolkits/Xaw3d
-CONFIGURE_ARGS+= --with-x-toolkit=athena
-.elif ${PORT_OPTIONS:MXAW}
-USE_XORG= xaw
-CONFIGURE_ARGS+= --with-x-toolkit=athena --without-xaw3d
-.elif ${PORT_OPTIONS:MMOTIF}
-USES+= motif
-CONFIGURE_ARGS+= --with-x-toolkit=motif
-.endif
+XAW3D_LIB_DEPENDS= Xaw3d:${PORTSDIR}/x11-toolkits/Xaw3d
+XAW3D_CONFIGURE_ON= --with-x-toolkit=athena
-.if !${PORT_OPTIONS:MSCROLLBARS}
-CONFIGURE_ARGS+= --without-toolkit-scroll-bars
-.endif
+XAW_USE= XORG=xaw
+XAW_CONFIGURE_ON+= --with-x-toolkit=athena --without-xaw3d
-.if !${PORT_OPTIONS:MSYNC_INPUT}
-CONFIGURE_ARGS+= --without-sync-input
-.endif
+MOTIF_USES= motif
+MOTIF_CONFIGURE_ON+= --with-x-toolkit=motif
-.if ${PORT_OPTIONS:MJPEG}
-LIB_DEPENDS+= jpeg:${PORTSDIR}/graphics/jpeg
-.else
-CONFIGURE_ARGS+= --without-jpeg
-.endif
+SCROLLBARS_CONFIGURE_WITH= toolkit-scroll-bars
-.if ${PORT_OPTIONS:MTIFF}
-LIB_DEPENDS+= tiff:${PORTSDIR}/graphics/tiff
-.else
-CONFIGURE_ARGS+= --without-tiff
-.endif
+SYNC_INPUT_CONFIGURE_WITH= sync-input
-.if ${PORT_OPTIONS:MGIF}
-LIB_DEPENDS+= gif:${PORTSDIR}/graphics/giflib
-.else
-CONFIGURE_ARGS+= --without-gif
-.endif
+JPEG_LIB_DEPENDS= jpeg:${PORTSDIR}/graphics/jpeg
+JPEG_CONFIGURE_WITH= jpeg
-.if ${PORT_OPTIONS:MPNG}
-LIB_DEPENDS+= png15:${PORTSDIR}/graphics/png
-.else
-CONFIGURE_ARGS+= --without-png
-.endif
+TIFF_LIB_DEPENDS= tiff:${PORTSDIR}/graphics/tiff
+TIFF_CONFIGURE_WITH= tiff
-.if ${PORT_OPTIONS:MXPM}
-USE_XORG+= xpm
-.else
-CONFIGURE_ARGS+= --without-xpm
-.endif
+GIF_LIB_DEPENDS= gif:${PORTSDIR}/graphics/giflib
+GIF_CONFIGURE_WITH= gif
-.if ${PORT_OPTIONS:MXFT}
-USE_XORG+= xft
-LIB_DEPENDS+= freetype:${PORTSDIR}/print/freetype2
-CONFIGURE_ARGS+= --with-xft
-.if ${PORT_OPTIONS:MM17N}
-CONFIGURE_ARGS+= --with-m17n-flt
-LIB_DEPENDS+= m17n:${PORTSDIR}/devel/m17n-lib
-.else
-CONFIGURE_ARGS+= --without-m17n-flt
-.endif
-.if ${PORT_OPTIONS:MOTF}
-CONFIGURE_ARGS+= --with-otf
-LIB_DEPENDS+= otf:${PORTSDIR}/print/libotf
-.else
-CONFIGURE_ARGS+= --without-libotf
-.endif
-.else
-CONFIGURE_ARGS+= --without-xft
-.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
-CONFIGURE_ARGS+= --without-otf --without-m17n-flt
-.endif
+PNG_LIB_DEPENDS+= png15:${PORTSDIR}/graphics/png
+PNG_CONFIGURE_WITH= png
-.if ${PORT_OPTIONS:MGCONF}
-USE_GNOME+= gconf2
-.else
-CONFIGURE_ARGS+= --without-gconf
-.endif
+XPM_USE= XORG=xpm
+XPM_CONFIGURE_WITH= xpm
-.if !${PORT_OPTIONS:MXIM}
-CONFIGURE_ARGS+= --without-xim
-.endif
+XFT_USE= XORG=xft
+XFT_LIB_DEPENDS= freetype:${PORTSDIR}/print/freetype2
+XFT_CONFIGURE_WITH= xft
-.if ${PORT_OPTIONS:MCANNA}
-PATCH_SITES+= http://distfiles.pirateparty.in/%SUBDIR%/ ${MASTER_SITE_LOCAL}
-PATCH_SITE_SUBDIR+= ashish
-PATCHFILES+= emacs23.3canna-20110316.diff.gz
-PATCH_DIST_STRIP= -p1
-CONFIGURE_ARGS+= --with-canna \
+M17N_LIB_DEPENDS= m17n:${PORTSDIR}/devel/m17n-lib
+M17N_CONFIGURE_WITH= m17n-flt
+
+OTF_LIB_DEPENDS= otf:${PORTSDIR}/print/libotf
+OTF_CONFIGURE_WITH= libotf
+
+GCONF_USE= gnome=gconf2
+GCONF_CONFIGURE_WITH= gconf
+
+XIM_CONFIGURE_WITH= xim
+
+CANNA_CONFIGURE_ON= --with-canna \
--with-canna-includes=${LOCALBASE}/include \
--with-canna-libraries=${LOCALBASE}/lib
-LIB_DEPENDS+= canna:${PORTSDIR}/japanese/canna-lib
-.endif
+CANNA_PATCHFILES= emacs23.3canna-20110316.diff.gz
+CANNA_PATCH_SITES= http://distfiles.pirateparty.in/%SUBDIR%/ ${MASTER_SITE_LOCAL}
+CANNA_LIB_DEPENDS= canna:${PORTSDIR}/japanese/canna-lib
+
+X11_CONFIGURE_WITH= x
+X11_USE= XORG=x11
+
+.include <bsd.port.options.mk>
+DBUS_PTHREAD_LIBS= ${CC} -dumpspecs | ${GREP} -m 1 pthread: | ${SED} -e 's|^.*%{\!pg: %{pthread:||' -e 's|}.*$$||' || ${TRUE}
+
+.if ${PORT_OPTIONS:MX11}
+
+CONFIGURE_ARGS+= --with-x
+USE_XORG= x11
+
+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
-.if ${PORT_OPTIONS:MSOUND}
-CONFIGURE_ARGS+= --with-sound
.else
-CONFIGURE_ARGS+= --without-sound
+
+.for OPT in SVG GTK2 XAW3D XAW MOTIF SCROLLBARS JPEG TIFF GIF PNG XPM XFT M17N GCONF XIM
+.if ${PORT_OPTIONS:M${OPT}}
+IGNORE= ${OPT} option depends on X11 option
.endif
+.endfor
-.if ${PORT_OPTIONS:MDBUS}
-LIB_DEPENDS+= dbus-1:${PORTSDIR}/devel/dbus
-CONFIGURE_ARGS+= --with-dbus
-.else
-CONFIGURE_ARGS+= --without-dbus
.endif
.include <bsd.port.pre.mk>
@@ -220,24 +186,20 @@ post-configure:
add-plist-data:
.for i in ${EMACS_DIRS}
- @${FIND} ${i} -type f |${SED} -E -e 's,^${PREFIX}/,,g' >>${TMPPLIST}
+ @${FIND} ${STAGEDIR}${i} -type f |${SED} -E -e 's,^${STAGEDIR}${PREFIX}/,,g' >>${TMPPLIST}
.endfor
@${FIND} ${WRKSRC}/etc -type f |${SED} -E -e 's,^${WRKSRC},${DATADIR_REL}/${EMACS_VER},g' -e '/etc\/(\..*|ChangeLog|DOC)$$/d' >>${TMPPLIST}
@${FIND} ${WRKSRC}/etc -type d -depth |${SED} -E -e 's,^${WRKSRC},@dirrm ${DATADIR_REL}/${EMACS_VER},g' >>${TMPPLIST}
.for i in ${EMACS_DIRS}
- @${FIND} ${i} -type d -depth |${SED} -E -e 's,^${PREFIX}/,@dirrm ,g' >>${TMPPLIST}
+ @${FIND} ${STAGEDIR}${i} -type d -depth |${SED} -E -e 's,^${STAGEDIR}${PREFIX}/,@dirrm ,g' >>${TMPPLIST}
.endfor
@${ECHO} "@unexec rmdir %D/${DATADIR_REL}/${EMACS_VER} 2>/dev/null || true" >>${TMPPLIST}
-.if defined(WITH_SOURCES)
-PLIST_SUB+= SOURCES=""
-
+.if ${PORT_OPTIONS:MSOURCES}
post-install:
- @${MKDIR} ${DATADIR}/${EMACS_VER}/src
- @${INSTALL_DATA} ${WRKSRC}/src/*.[ch] ${DATADIR}/${EMACS_VER}/src
- @${INSTALL_DATA} ${WRKSRC}/sources.el ${DATADIR}/${EMACS_VER}/site-lisp/site-start.el
-.else
-PLIST_SUB+= SOURCES="@comment "
+ @${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
pre-everything::
diff --git a/editors/emacs23/pkg-plist b/editors/emacs23/pkg-plist
index c6c67b6ab9a7..4706f9ff9539 100644
--- a/editors/emacs23/pkg-plist
+++ b/editors/emacs23/pkg-plist
@@ -11,6 +11,7 @@ share/applications/emacs.desktop
%%SOURCES%%%%DATADIR%%/%%EMACS_VER%%/site-lisp/site-start.el
%%DATADIR%%/%%EMACS_VER%%/site-lisp/subdirs.el
%%DATADIR%%/site-lisp/subdirs.el
+%%INFODIR%%/dir
share/icons/hicolor/128x128/apps/emacs.png
share/icons/hicolor/16x16/apps/emacs.png
share/icons/hicolor/16x16/apps/emacs22.png
@@ -22,6 +23,7 @@ share/icons/hicolor/48x48/apps/emacs.png
share/icons/hicolor/48x48/apps/emacs22.png
share/icons/hicolor/scalable/apps/emacs.svg
share/icons/hicolor/scalable/mimetypes/emacs-document.svg
+@dirrmtry %%INFODIR%%
@dirrmtry %%DATADIR%%/%%EMACS_VER%%/site-lisp
@dirrmtry share/icons/hicolor/scalable/mimetypes
@dirrmtry share/icons/hicolor/scalable/apps