aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAntoine Brodin <antoine@FreeBSD.org>2014-06-28 10:03:00 +0000
committerAntoine Brodin <antoine@FreeBSD.org>2014-06-28 10:03:00 +0000
commit2ec52ec10f811091ac9c83b4fa30f3746274d702 (patch)
treefd88f50dbbb9227fdd59ac1596ad3c198dea69b8
parent330c7721063b2604bb80cd4d2d0664e404196faf (diff)
downloadports-2ec52ec10f811091ac9c83b4fa30f3746274d702.tar.gz
ports-2ec52ec10f811091ac9c83b4fa30f3746274d702.zip
Use print/indexinfo to generate index of info pages
It is much more lightweight than ginstall-info (12kB vs 400kB) and ginstall-info had a regression causing some index leftover on uninstall Submitted by: bapt Exp-run: self With hat: portmgr
Notes
Notes: svn path=/head/; revision=359680
-rw-r--r--Keywords/info.yaml10
-rw-r--r--Mk/bsd.port.mk15
2 files changed, 7 insertions, 18 deletions
diff --git a/Keywords/info.yaml b/Keywords/info.yaml
index 6c34caab8527..37589b28a92a 100644
--- a/Keywords/info.yaml
+++ b/Keywords/info.yaml
@@ -5,13 +5,7 @@
actions: [file]
post-install: |
file=%D/%@
- ginstall-info --quiet %D/%@ %D/info/dir
+ indexinfo ${file%/*}
post-deinstall: |
file=%D/%@
- ginstall-info --quiet --delete %D/%@ %D/info/dir
- if [ $(ginfo -d ${file%/*} --output - 2>/dev/null | grep -c '^*') -eq 1 ]; then
- rm -f ${file%/*}/dir
- fi
- if [ ${file%/*} != "%D/info" ]; then
- rmdir ${file%/*} 2> /dev/null || true
- fi
+ indexinfo ${file%/*}
diff --git a/Mk/bsd.port.mk b/Mk/bsd.port.mk
index 22647b96fd88..f660b144dfa4 100644
--- a/Mk/bsd.port.mk
+++ b/Mk/bsd.port.mk
@@ -2914,8 +2914,7 @@ INFO_PATH?= info
.endif
.if defined(INFO)
-BUILD_DEPENDS+= ginstall-info:${PORTSDIR}/print/texinfo-lite
-RUN_DEPENDS+= ginstall-info:${PORTSDIR}/print/texinfo-lite
+RUN_DEPENDS+= indexinfo:${PORTSDIR}/print/indexinfo
. for D in ${INFO:H}
RD:= ${D}
@@ -5656,16 +5655,12 @@ add-plist-info:
# Process GNU INFO files at package install/deinstall time
.for i in ${INFO}
.if defined(NO_STAGE)
- ginstall-info --quiet ${PREFIX}/${INFO_PATH}/$i.info ${PREFIX}/${INFO_PATH}/dir
+ indexinfo ${PREFIX}/${INFO_PATH}
.endif
.if !defined(WITH_PKGNG)
- @${ECHO_CMD} "@unexec ginstall-info --quiet --delete %D/${INFO_PATH}/$i.info %D/${INFO_PATH}/dir" \
- >> ${TMPPLIST}
- @${ECHO_CMD} "@unexec [ \`ginfo -d %D/${INFO_PATH} --output - 2>/dev/null | grep -c '^*'\` -eq 1 ] && rm -f %D/${INFO_PATH}/dir || :"\
- >> ${TMPPLIST}
+ @${ECHO_CMD} "@unexec indexinfo %D/${INFO_PATH}" >> ${TMPPLIST}
@${LS} ${STAGEDIR}${PREFIX}/${INFO_PATH}/$i.info* | ${SED} -e s:${STAGEDIR}${PREFIX}/::g >> ${TMPPLIST}
- @${ECHO_CMD} "@exec ginstall-info --quiet %D/${INFO_PATH}/$i.info %D/${INFO_PATH}/dir" \
- >> ${TMPPLIST}
+ @${ECHO_CMD} "@exec indexinfo %D/${INFO_PATH}" >> ${TMPPLIST}
.else
@${LS} ${STAGEDIR}${PREFIX}/${INFO_PATH}/$i.info* | ${SED} -e s:${STAGEDIR}${PREFIX}/:@info\ :g >> ${TMPPLIST}
.endif
@@ -5678,7 +5673,7 @@ add-plist-info:
.endif
.endif
.if (${PREFIX} != "/usr")
- @${ECHO_CMD} "@unexec if [ -f %D/${INFO_PATH}/dir ]; then if sed -e '1,/Menu:/d' %D/${INFO_PATH}/dir | grep -q '^[*] '; then true; else rm %D/${INFO_PATH}/dir; fi; fi" >> ${TMPPLIST}
+ @${ECHO_CMD} "@unexec indexinfo %D/${INFO_PATH}" >> ${TMPPLIST}
.if (${PREFIX} != ${LOCALBASE} && ${PREFIX} != ${LINUXBASE})
@${ECHO_CMD} "@dirrmtry ${INFO_PATH}" >> ${TMPPLIST}
.endif