1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-10-20 20:09:11 +00:00

- 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]
This commit is contained in:
Ashish SHUKLA 2014-01-02 14:50:14 +00:00
parent 0fb5f06021
commit a9243a1b6e
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=338444
2 changed files with 94 additions and 130 deletions

View File

@ -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
OPTIONS_SUB= SOURCES
DBUS_LIB_DEPENDS= dbus-1:${PORTSDIR}/devel/dbus
DBUS_CONFIGURE_WITH= dbus
SOUND_CONFIGURE_WITH= sound
SVG_USE= GNOME=librsvg2
SVG_CONFIGURE_WITH= rsvg
GTK2_USE= GNOME=gtk20
GTK2_CONFIGURE_ON= --with-x-toolkit=gtk
XAW3D_LIB_DEPENDS= Xaw3d:${PORTSDIR}/x11-toolkits/Xaw3d
XAW3D_CONFIGURE_ON= --with-x-toolkit=athena
XAW_USE= XORG=xaw
XAW_CONFIGURE_ON+= --with-x-toolkit=athena --without-xaw3d
MOTIF_USES= motif
MOTIF_CONFIGURE_ON+= --with-x-toolkit=motif
SCROLLBARS_CONFIGURE_WITH= toolkit-scroll-bars
SYNC_INPUT_CONFIGURE_WITH= sync-input
JPEG_LIB_DEPENDS= jpeg:${PORTSDIR}/graphics/jpeg
JPEG_CONFIGURE_WITH= jpeg
TIFF_LIB_DEPENDS= tiff:${PORTSDIR}/graphics/tiff
TIFF_CONFIGURE_WITH= tiff
GIF_LIB_DEPENDS= gif:${PORTSDIR}/graphics/giflib
GIF_CONFIGURE_WITH= gif
PNG_LIB_DEPENDS+= png15:${PORTSDIR}/graphics/png
PNG_CONFIGURE_WITH= png
XPM_USE= XORG=xpm
XPM_CONFIGURE_WITH= xpm
XFT_USE= XORG=xft
XFT_LIB_DEPENDS= freetype:${PORTSDIR}/print/freetype2
XFT_CONFIGURE_WITH= xft
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
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
NO_STAGE= yes
.include <bsd.port.options.mk>
DBUS_PTHREAD_LIBS= ${CC} -dumpspecs | ${GREP} -m 1 pthread: | ${SED} -e 's|^.*%{\!pg: %{pthread:||' -e 's|}.*$$||' || ${TRUE}
.if defined(WITHOUT_X11)
CONFIGURE_ARGS+= --without-x
.if ${PORT_OPTIONS:MX11}
.else
USE_XORG= x11
USE_GNOME=
CONFIGURE_ARGS+= --with-x
USE_XORG= x11
.if ${PORT_OPTIONS:MSVG}
USE_GNOME+= librsvg2
.else
CONFIGURE_ARGS+= --without-rsvg
.endif
INSTALLS_ICONS= yes
.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
.if !${PORT_OPTIONS:MSCROLLBARS}
CONFIGURE_ARGS+= --without-toolkit-scroll-bars
.endif
.if !${PORT_OPTIONS:MSYNC_INPUT}
CONFIGURE_ARGS+= --without-sync-input
.endif
.if ${PORT_OPTIONS:MJPEG}
LIB_DEPENDS+= jpeg:${PORTSDIR}/graphics/jpeg
.else
CONFIGURE_ARGS+= --without-jpeg
.endif
.if ${PORT_OPTIONS:MTIFF}
LIB_DEPENDS+= tiff:${PORTSDIR}/graphics/tiff
.else
CONFIGURE_ARGS+= --without-tiff
.endif
.if ${PORT_OPTIONS:MGIF}
LIB_DEPENDS+= gif:${PORTSDIR}/graphics/giflib
.else
CONFIGURE_ARGS+= --without-gif
.endif
.if ${PORT_OPTIONS:MPNG}
LIB_DEPENDS+= png15:${PORTSDIR}/graphics/png
.else
CONFIGURE_ARGS+= --without-png
.endif
.if ${PORT_OPTIONS:MXPM}
USE_XORG+= xpm
.else
CONFIGURE_ARGS+= --without-xpm
.endif
.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: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
CONFIGURE_ARGS+= --without-otf --without-m17n-flt
.endif
.if ${PORT_OPTIONS:MGCONF}
USE_GNOME+= gconf2
.else
CONFIGURE_ARGS+= --without-gconf
.endif
.if !${PORT_OPTIONS:MXIM}
CONFIGURE_ARGS+= --without-xim
.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: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 \
--with-canna-includes=${LOCALBASE}/include \
--with-canna-libraries=${LOCALBASE}/lib
LIB_DEPENDS+= canna:${PORTSDIR}/japanese/canna-lib
.endif
.endif
.if ${PORT_OPTIONS:MSOUND}
CONFIGURE_ARGS+= --with-sound
.else
CONFIGURE_ARGS+= --without-sound
.endif
.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::

View File

@ -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