ports/153622: [patch] sysutils/jfbterm: improve TERMCAP option
Anonymous
swell.k at gmail.com
Thu Jan 27 05:50:08 UTC 2011
The following reply was made to PR ports/153622; it has been noted by GNATS.
From: Anonymous <swell.k at gmail.com>
To: bug-followup at FreeBSD.org
Cc: beat at FreeBSD.org
Subject: Re: ports/153622: [patch] sysutils/jfbterm: improve TERMCAP option
Date: Thu, 27 Jan 2011 08:40:48 +0300
I've removed .bak files. They're not substitute for normal backups and
update operation is not atomic. In the odd case it fails in the middle
of operation the worst thing it can do is leave garbage at the end of
termcap file, e.g. `# begin of jfbterm.termcap' or unused `jfbterm|...'.
Here is a cumulative diff, it includes a few more changes
- respect hier(7), move files from DATADIR to share/misc,
this makes @exec happy in devel/ncurses* port
- remove redundant GREP check in TERMCAP_(ADD|DEL)_RECORD
- update terminfo upon install
--- a.diff begins here ---
Index: sysutils/jfbterm/Makefile
===================================================================
RCS file: /a/.cvsup/ports/sysutils/jfbterm/Makefile,v
retrieving revision 1.14
diff -u -p -r1.14 Makefile
--- sysutils/jfbterm/Makefile 22 Sep 2010 05:44:08 -0000 1.14
+++ sysutils/jfbterm/Makefile 27 Jan 2011 05:29:39 -0000
@@ -7,7 +7,7 @@
PORTNAME= jfbterm
PORTVERSION= 0.6.1
DISTVERSIONPREFIX=${OPSYS}-
-PORTREVISION= 2
+PORTREVISION= 3
CATEGORIES= sysutils
MASTER_SITES= http://www.ac.auone-net.jp/~baba/${PORTNAME}/ \
http://chirashi-no-ura.net/files/
@@ -24,9 +24,13 @@ ONLY_FOR_ARCHS_REASON= requires VESA sup
MAKE_JOBS_SAFE= yes
MAKEFILE= ${FILESDIR}/BSDmakefile
MAKE_ENV+= VERSION=${PORTVERSION} GUNZIP=${GUNZIP_CMD:N-*}
-PLIST_SUB+= TERMCAP_ADD_RECORD="@exec ${TERMCAP_ADD_RECORD}"
+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}"
CAP_MKDB?= /usr/bin/cap_mkdb
+TIC?= ${LOCALBASE}/bin/tic
+TERMINFO_FILE?= ${PREFIX}/share/misc/${PORTNAME}.terminfo
OPTIONS= ICONV "encodings support" On \
PNG "splash .png support" On \
@@ -82,15 +86,25 @@ MAKE_ENV+= WITHOUT_PNG=
.if !defined(WITHOUT_TERMCAP)
TERMCAP_ADD_RECORD= \
- if ${GREP} -q '^jfbterm|' ${TERMCAP_FILE}; then else \
- ${CAT} ${PREFIX}/share/jfbterm/termcap.jfbterm \
- >>${TERMCAP_FILE}; \
- if [ -f ${TERMCAP_FILE}.db ]; then \
- ${CAP_MKDB} ${TERMCAP_FILE}; \
- fi \
+ ${ECHO_CMD} '\# begin of ${PORTNAME}.termcap' \
+ >>${TERMCAP_FILE}; \
+ ${CAT} ${PREFIX}/share/misc/${PORTNAME}.termcap \
+ >>${TERMCAP_FILE}; \
+ ${ECHO_CMD} '\# end of ${PORTNAME}.termcap' \
+ >>${TERMCAP_FILE}; \
+ if [ -f ${TERMCAP_FILE}.db ]; then \
+ ${CAP_MKDB} ${TERMCAP_FILE}; \
+ fi
+TERMCAP_DEL_RECORD= \
+ ${REINPLACE_CMD} -i '' '/^\# begin of ${PORTNAME}\.termcap/, \
+ /^\# end of ${PORTNAME}\.termcap/d' \
+ ${TERMCAP_FILE}; \
+ if [ -f ${TERMCAP_FILE}.db ]; then \
+ ${CAP_MKDB} ${TERMCAP_FILE}; \
fi
.else
TERMCAP_ADD_RECORD= ${DO_NADA}
+TERMCAP_DEL_RECORD= ${DO_NADA}
.endif
.if !defined(WITHOUT_UNIFONT)
@@ -105,8 +119,13 @@ post-extract: .SILENT
${WRKSRC}/${PORTNAME}.conf.sample
post-patch: .SILENT
- ${REINPLACE_CMD} 's|/usr/local|${PREFIX}|g' \
+ ${REINPLACE_CMD} -e 's|/usr/local|${PREFIX}|g' \
+ -e 's|\(share\)/${PORTNAME}/\(fonts\)|\1/misc/\2|' \
${WRKSRC}/*.[0-9] ${WRKSRC}/*.conf.sample
+.if defined(WITHOUT_TERMCAP)
+ ${REINPLACE_CMD} '/^term/s/:.*/: xterm/' \
+ ${WRKSRC}/${PORTNAME}.conf.sample
+.endif
do-install:
${INSTALL_PROGRAM} ${WRKSRC}/${PORTNAME} ${PREFIX}/bin
@@ -117,16 +136,17 @@ do-install:
fi
.if !defined(NO_INSTALL_MANPAGES)
${INSTALL_MAN} ${WRKSRC}/${MAN1} ${MAN1PREFIX}/man/man1
- ${INSTALL_MAN} ${WRKSRC}/${MAN5} ${MAN1PREFIX}/man/man5
+ ${INSTALL_MAN} ${WRKSRC}/${MAN5} ${MAN5PREFIX}/man/man5
.endif
.if !defined(NOPORTDATA)
- ${MKDIR} ${DATADIR}/fonts
- ${INSTALL_DATA} ${WRKSRC}/termcap.jfbterm ${DATADIR}
- ${INSTALL_DATA} ${WRKSRC}/terminfo.jfbterm ${DATADIR}
- ${INSTALL_DATA} ${WRKSRC}/fonts/*.pcf.gz ${DATADIR}/fonts
-.endif
-.if !defined(WITHOUT_TERMCAP)
+ ${INSTALL_DATA} ${WRKSRC}/termcap.${PORTNAME} ${PREFIX}/share/misc/${PORTNAME}.termcap
+ ${INSTALL_DATA} ${WRKSRC}/terminfo.${PORTNAME} ${PREFIX}/share/misc/${PORTNAME}.terminfo
+ ${MKDIR} ${PREFIX}/share/misc/fonts
+ ${INSTALL_DATA} ${WRKSRC}/fonts/*.pcf.gz ${PREFIX}/share/misc/fonts
+. if !defined(WITHOUT_TERMCAP)
${TERMCAP_ADD_RECORD}
+. endif
+ -${TIC} ${TERMINFO_FILE} 2>/dev/null
.endif
.include <bsd.port.post.mk>
Index: sysutils/jfbterm/pkg-plist
===================================================================
RCS file: /a/.cvsup/ports/sysutils/jfbterm/pkg-plist,v
retrieving revision 1.2
diff -u -p -r1.2 pkg-plist
--- sysutils/jfbterm/pkg-plist 22 Sep 2010 05:40:20 -0000 1.2
+++ sysutils/jfbterm/pkg-plist 27 Jan 2011 05:01:22 -0000
@@ -2,9 +2,10 @@ bin/jfbterm
@unexec if cmp -s %D/etc/jfbterm.conf.sample %D/etc/jfbterm.conf; then rm -f %D/etc/jfbterm.conf; fi
etc/jfbterm.conf.sample
@exec if [ ! -f %D/etc/jfbterm.conf ]; then cp -p %D/%F %B/jfbterm.conf; fi
-%%PORTDATA%%%%DATADIR%%/fonts/vt100-graphics.pcf.gz
-%%PORTDATA%%%%DATADIR%%/termcap.jfbterm
-%%PORTDATA%%%%DATADIR%%/terminfo.jfbterm
-%%PORTDATA%%@dirrm %%DATADIR%%/fonts
-%%PORTDATA%%@dirrm %%DATADIR%%
+%%PORTDATA%%share/misc/fonts/vt100-graphics.pcf.gz
+%%PORTDATA%%share/misc/jfbterm.termcap
+%%PORTDATA%%share/misc/jfbterm.terminfo
+%%PORTDATA%%@dirrmtry share/misc/fonts
%%PORTDATA%%%%TERMCAP_ADD_RECORD%%
+%%PORTDATA%%%%TERMCAP_DEL_RECORD%%
+%%PORTDATA%%%%TIC%%
--- a.diff ends here ---
More information about the freebsd-ports-bugs
mailing list