summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Keywords/terminfo.ucl22
-rw-r--r--Mk/Scripts/qa.sh23
-rw-r--r--Mk/Uses/terminfo.mk18
-rw-r--r--Mk/bsd.port.mk3
-rw-r--r--devel/ncurses/Makefile20
-rw-r--r--devel/ncurses/pkg-plist3
-rw-r--r--sysutils/jfbterm/Makefile17
-rw-r--r--sysutils/jfbterm/pkg-plist1
-rw-r--r--x11/rxvt-unicode/Makefile9
-rw-r--r--x11/rxvt-unicode/files/patch-doc_Makefile.in10
-rw-r--r--x11/rxvt-unicode/pkg-plist2
11 files changed, 99 insertions, 29 deletions
diff --git a/Keywords/terminfo.ucl b/Keywords/terminfo.ucl
new file mode 100644
index 000000000000..870a03296268
--- /dev/null
+++ b/Keywords/terminfo.ucl
@@ -0,0 +1,22 @@
+# $FreeBSD$
+#
+
+actions: []
+post-install: <<EOD
+ terminfodir=%D/share/misc
+ terminfodb=${terminfodir}/terminfo.db
+ if [ -e ${terminfodb}.default ] && which -s tic; then
+ cp ${terminfodb}.default ${terminfodb}
+ find -s ${terminfodir} -name "*.terminfo" -exec tic {} \;
+ fi
+EOD
+post-deinstall: <<EOD
+ terminfodir=%D/share/misc
+ terminfodb=${terminfodir}/terminfo.db
+ if [ -e ${terminfodb}.default ] && which -s tic; then
+ cp ${terminfodb}.default ${terminfodb}
+ find -s ${terminfodir} -name "*.terminfo" -exec tic {} \;
+ else
+ rm -f ${terminfodb}
+ fi
+EOD
diff --git a/Mk/Scripts/qa.sh b/Mk/Scripts/qa.sh
index 6ce98a3427e7..a7da3e9d5ef2 100644
--- a/Mk/Scripts/qa.sh
+++ b/Mk/Scripts/qa.sh
@@ -293,7 +293,28 @@ prefixvar() {
fi
}
-checks="shebang symlinks paths stripped desktopfileutils sharedmimeinfo suidfiles libtool libperl prefixvar baselibs"
+terminfo() {
+ local f found
+
+ for f in ${STAGEDIR}${PREFIX}/share/misc/*.terminfo; do
+ [ "${f}" = "${STAGEDIR}${PREFIX}/share/misc/*.terminfo" ] && break #no matches
+ found=1
+ break
+ done
+ for f in ${STAGEDIR}${PREFIX}/share/misc/terminfo.db*; do
+ [ "${f}" = "${STAGEDIR}${PREFIX}/share/misc/terminfo.db*" ] && break #no matches
+ found=1
+ break
+ done
+ if [ -z "${USESTERMINFO}" -a -n "${found}" ]; then
+ warn "you need USES=terminfo"
+ elif [ -n "${USESTERMINFO}" -a -z "${found}" ]; then
+ warn "you may not need USES=terminfo"
+ fi
+ return 0
+}
+
+checks="shebang symlinks paths stripped desktopfileutils sharedmimeinfo suidfiles libtool libperl prefixvar baselibs terminfo"
ret=0
cd ${STAGEDIR}
diff --git a/Mk/Uses/terminfo.mk b/Mk/Uses/terminfo.mk
new file mode 100644
index 000000000000..9bb15f1aaae4
--- /dev/null
+++ b/Mk/Uses/terminfo.mk
@@ -0,0 +1,18 @@
+# $FreeBSD$
+#
+# handle terminfo.db and *.terminfo files used by ncurses
+#
+# Feature: terminfo
+# Usage: USES=terminfo
+# Valid ARGS: does not require args
+
+.if !defined(_INCLUDE_USES_TERMINFO_MK)
+_INCLUDE_USES_TERMINFO_MK= yes
+
+.if !empty(terminfo_ARGS)
+IGNORE= USES=terminfo does not require args
+.endif
+
+PLIST_FILES+= @terminfo
+
+.endif
diff --git a/Mk/bsd.port.mk b/Mk/bsd.port.mk
index da50034a4526..8e41cce41721 100644
--- a/Mk/bsd.port.mk
+++ b/Mk/bsd.port.mk
@@ -1539,6 +1539,9 @@ QA_ENV+= USESLIBTOOL=yes
.if !empty(USES:Mshared-mime-info)
QA_ENV+= USESSHAREDMIMEINFO=yes
.endif
+.if !empty(USES:Mterminfo)
+QA_ENV+= USESTERMINFO=yes
+.endif
CO_ENV+= STAGEDIR=${STAGEDIR} \
PREFIX=${PREFIX} \
diff --git a/devel/ncurses/Makefile b/devel/ncurses/Makefile
index 67f371ecda7e..cc79a2ce75e3 100644
--- a/devel/ncurses/Makefile
+++ b/devel/ncurses/Makefile
@@ -3,7 +3,7 @@
PORTNAME= ncurses
DISTVERSION= ${RELEASE}-20150214
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= devel
MASTER_SITES= ftp://invisible-island.net/${PORTNAME}/current/
DIST_SUBDIR= ${PORTNAME}
@@ -41,7 +41,7 @@ TRACE_DESC= Add trace() function to all models of ncurses
CONFIGURE_ENV= gnat_exists="no"
USE_LDCONFIG= yes
-USES= shebangfix tar:tgz
+USES= shebangfix tar:tgz terminfo
SHEBANG_FILES= test/tracemunch
WIDEC_WRKSRC= ${WRKSRC}/build.widec
@@ -124,16 +124,20 @@ post-install:
. endfor
.endfor
- @${MKDIR} ${STAGEDIR}${DOCSDIR}
-. for f in ${DOCS}
- ${INSTALL_DATA} ${WRKSRC}/${f} ${STAGEDIR}${DOCSDIR}/
-. endfor
-.if ${OPSYS} != FreeBSD || ${OSVERSION} > 900000
${RM} -f ${STAGEDIR}${PREFIX}/lib/libncurses.so \
${STAGEDIR}${PREFIX}/lib/libncursesw.so
${ECHO} "INPUT(libncurses.so.${RELEASE:R} AS_NEEDED(-ltinfo))" > ${STAGEDIR}${PREFIX}/lib/libncurses.so
${ECHO} "INPUT(libncursesw.so.${RELEASE:R} AS_NEEDED(-ltinfow))" > ${STAGEDIR}${PREFIX}/lib/libncursesw.so
-.endif
+
${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/*.so.5.9
+ ${MV} ${STAGEDIR}${PREFIX}/share/misc/terminfo.db \
+ ${STAGEDIR}${PREFIX}/share/misc/terminfo.db.default
+
+post-install-DOCS-on:
+ @${MKDIR} ${STAGEDIR}${DOCSDIR}
+.for f in ${DOCS}
+ ${INSTALL_DATA} ${WRKSRC}/${f} ${STAGEDIR}${DOCSDIR}/
+.endfor
+
.include <bsd.port.mk>
diff --git a/devel/ncurses/pkg-plist b/devel/ncurses/pkg-plist
index 7f10eab344db..93c9a4243e0b 100644
--- a/devel/ncurses/pkg-plist
+++ b/devel/ncurses/pkg-plist
@@ -977,5 +977,4 @@ share/misc/tabset/std
share/misc/tabset/stdcrt
share/misc/tabset/vt100
share/misc/tabset/vt300
-share/misc/terminfo.db
-@exec find %D/share/misc -name "*.terminfo" -exec %D/bin/tic {} \;
+share/misc/terminfo.db.default
diff --git a/sysutils/jfbterm/Makefile b/sysutils/jfbterm/Makefile
index a1f7de5eafc3..2460fcf0d93d 100644
--- a/sysutils/jfbterm/Makefile
+++ b/sysutils/jfbterm/Makefile
@@ -4,7 +4,7 @@
PORTNAME= jfbterm
PORTVERSION= 0.6.1
DISTVERSIONPREFIX=FreeBSD-
-PORTREVISION= 7
+PORTREVISION= 8
CATEGORIES= sysutils
MASTER_SITES= http://www.ac.auone-net.jp/~baba/jfbterm/
@@ -17,14 +17,13 @@ LICENSE_FILE= ${WRKSRC}/COPYING
ONLY_FOR_ARCHS= i386 amd64
ONLY_FOR_ARCHS_REASON= requires VESA support in kernel
+USES= terminfo
MAKEFILE= ${FILESDIR}/BSDmakefile
MAKE_ENV+= VERSION=${PORTVERSION} GUNZIP=${GUNZIP_CMD:N-*}
PLIST_SUB+= TERMCAP_ADD_RECORD="@exec ${TERMCAP_ADD_RECORD:S,^${PREFIX},%D,}" \
- TERMCAP_DEL_RECORD="@unexec ${TERMCAP_DEL_RECORD}" \
- TIC="@exec ${TIC} ${TERMINFO_FILE:S,^${PREFIX},%D,} 2>/dev/null || ${TRUE}"
+ TERMCAP_DEL_RECORD="@unexec ${TERMCAP_DEL_RECORD}"
CAP_MKDB?= /usr/bin/cap_mkdb
-TIC?= ${LOCALBASE}/bin/tic
TERMINFO_FILE?= ${PREFIX}/share/misc/jfbterm.terminfo
OPTIONS_DEFINE= ICONV PNG SETUID TERMCAP UNIFONT
@@ -42,8 +41,6 @@ PLIST_SUB+= SETUID=""
PLIST_SUB+= SETUID="@comment "
.endif
-ONLY_FOR_ARCHS+=amd64
-
.if !defined(INSTALL_AS_USER)
TERMCAP_FILE?= /usr/share/misc/termcap
.else
@@ -101,13 +98,13 @@ post-extract: .SILENT
${WRKSRC}/jfbterm.conf.sample
post-patch:
- ${REINPLACE_CMD} -e 's|/usr/local|${PREFIX}|g' \
+ @${REINPLACE_CMD} -e 's|/usr/local|${PREFIX}|g' \
-e 's|\(share\)/jfbterm/\(fonts\)|\1/misc/\2|' \
${WRKSRC}/*.[0-9] ${WRKSRC}/*.conf.sample
-.if !${PORT_OPTIONS:MTERMCAP}
- ${REINPLACE_CMD} '/^term/s/:.*/: xterm/' \
+
+post-patch-TERMCAP-off:
+ @${REINPLACE_CMD} '/^term/s/:.*/: xterm/' \
${WRKSRC}/jfbterm.conf.sample
-.endif
do-install:
${INSTALL_PROGRAM} ${WRKSRC}/jfbterm ${STAGEDIR}${PREFIX}/bin
diff --git a/sysutils/jfbterm/pkg-plist b/sysutils/jfbterm/pkg-plist
index 5bc0228d5970..f9beb5571577 100644
--- a/sysutils/jfbterm/pkg-plist
+++ b/sysutils/jfbterm/pkg-plist
@@ -9,4 +9,3 @@ share/misc/jfbterm.termcap
share/misc/jfbterm.terminfo
%%TERMCAP_ADD_RECORD%%
%%TERMCAP_DEL_RECORD%%
-%%TIC%%
diff --git a/x11/rxvt-unicode/Makefile b/x11/rxvt-unicode/Makefile
index c4c203202f46..61531d814552 100644
--- a/x11/rxvt-unicode/Makefile
+++ b/x11/rxvt-unicode/Makefile
@@ -3,6 +3,7 @@
PORTNAME= rxvt-unicode
PORTVERSION= 9.21
+PORTREVISION= 1
CATEGORIES= x11
MASTER_SITES= http://dist.schmorp.de/rxvt-unicode/%SUBDIR%/
MASTER_SITE_SUBDIR= . Attic
@@ -12,12 +13,10 @@ COMMENT= Clone of the terminal emulator rxvt modified to support Unicode
LICENSE= GPLv2
-BUILD_DEPENDS= tic:${PORTSDIR}/devel/ncurses \
- ${LOCALBASE}/libdata/pkgconfig/fontconfig.pc:${PORTSDIR}/x11-fonts/fontconfig
-RUN_DEPENDS= ${LOCALBASE}/bin/fc-cache:${PORTSDIR}/x11-fonts/fontconfig \
- ${LOCALBASE}/share/misc/terminfo.db:${PORTSDIR}/devel/ncurses
+BUILD_DEPENDS= ${LOCALBASE}/libdata/pkgconfig/fontconfig.pc:${PORTSDIR}/x11-fonts/fontconfig
+RUN_DEPENDS= ${LOCALBASE}/bin/fc-cache:${PORTSDIR}/x11-fonts/fontconfig
-USES= cpe pkgconfig shebangfix tar:bzip2
+USES= cpe pkgconfig shebangfix tar:bzip2 terminfo
USE_XORG= xpm xft xrender
GNU_CONFIGURE= yes
CPPFLAGS+= -I${LOCALBASE}/include
diff --git a/x11/rxvt-unicode/files/patch-doc_Makefile.in b/x11/rxvt-unicode/files/patch-doc_Makefile.in
new file mode 100644
index 000000000000..1499b1929c42
--- /dev/null
+++ b/x11/rxvt-unicode/files/patch-doc_Makefile.in
@@ -0,0 +1,10 @@
+--- doc/Makefile.in.orig 2014-12-31 14:09:25 UTC
++++ doc/Makefile.in
+@@ -98,7 +98,6 @@ install: all
+ $(INSTALL_DATA) rxvtc.1.man $(DESTDIR)$(man1dir)/$(RXVTNAME)c.$(man1ext)
+ $(INSTALL_DATA) rxvtd.1.man $(DESTDIR)$(man1dir)/$(RXVTNAME)d.$(man1ext)
+ $(INSTALL_DATA) rxvt.7.man $(DESTDIR)$(man7dir)/$(RXVTNAME).$(man7ext)
+- @TIC@ $(srcdir)/etc/rxvt-unicode.terminfo
+
+ distdepend: alldoc
+
diff --git a/x11/rxvt-unicode/pkg-plist b/x11/rxvt-unicode/pkg-plist
index ea9d841709e0..4de3728f5b50 100644
--- a/x11/rxvt-unicode/pkg-plist
+++ b/x11/rxvt-unicode/pkg-plist
@@ -58,5 +58,3 @@ man/man1/urxvtd.1.gz
%%PERL%%man/man3/urxvtperl.3.gz
man/man7/urxvt.7.gz
share/misc/rxvt-unicode.terminfo
-@comment No unexec tic available
-@postexec tic %D/share/misc/rxvt-unicode.terminfo