aboutsummaryrefslogtreecommitdiff
path: root/Keywords
diff options
context:
space:
mode:
authorDmitry Marakasov <amdmi3@FreeBSD.org>2015-10-08 14:12:53 +0000
committerDmitry Marakasov <amdmi3@FreeBSD.org>2015-10-08 14:12:53 +0000
commit0521b2fe8e60d2415a9f1cca7ce57d786bba9e28 (patch)
tree66218542f316f42721fe6db22016d2f70b18dc81 /Keywords
parente12f77294208b750e016fc951df2f514cdbbabc2 (diff)
downloadports-0521b2fe8e60d2415a9f1cca7ce57d786bba9e28.tar.gz
ports-0521b2fe8e60d2415a9f1cca7ce57d786bba9e28.zip
Add a way to cleanly handle terminfo.db file used by devel/ncurses
This database contains compiled terminfo entries and is merged from a large part which comes with ncurses themselves and compiled .terminfo files installed by other ports (currently only rxvt-unicode and jfbterm) - Now the database is always kept up to date, regardless of port installation order (both ncurses installed before .terminfo files and the other way around work as expected) - All affected ports now support clean deinstallation and do not produce stage-qa errors - Affected ports are simplified, as they now only need to define USES=terminfo - rxvt-unicode no longer pulls in ncurses: the dependency is not really needed for anything beside updating it's own database - The patch contains Q/A test to check whether a port needs, or needs not USES=terminfo Approved by: portmgr (mat, bapt) Differential Revision: D3747
Notes
Notes: svn path=/head/; revision=398827
Diffstat (limited to 'Keywords')
-rw-r--r--Keywords/terminfo.ucl22
1 files changed, 22 insertions, 0 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