Author: rpaulo Date: Thu May 15 03:47:52 2014 New Revision: 266115 URL: http://svnweb.freebsd.org/changeset/base/266115
Log: Add a new target cscope-hook. This adds a Mercurial hook to automatically update the cscope data base every time you pull, switch branch, or update. Modified: head/sys/Makefile Modified: head/sys/Makefile ============================================================================== --- head/sys/Makefile Thu May 15 03:30:03 2014 (r266114) +++ head/sys/Makefile Thu May 15 03:47:52 2014 (r266115) @@ -47,6 +47,25 @@ ${.CURDIR}/cscope.files: .PHONY cscope-clean: rm -f cscope.files cscope.out cscope.in.out cscope.po.out +# +# Installs SCM hooks to update the cscope database every time the source tree +# is updated. +# cscope understands incremental updates, so it's considerably faster when only +# a few files have changed. +# +HG_DIR=${.CURDIR}/../.hg +HG_HOOK=if [ \$$HG_ERROR -eq 0 ]; then cd sys && make -m ../share/mk cscope; fi +cscope-hook: + @if [ -d ${HG_DIR} ]; then \ + if [ "`grep hooks ${HG_DIR}/hgrc`" = "" ]; then \ + echo "[hooks]" >> ${HG_DIR}/hgrc; \ + echo "update = ${HG_HOOK}" >> ${HG_DIR}/hgrc; \ + echo "Hook installed in ${HG_DIR}/hgrc"; \ + else \ + echo "Mercurial update hook already exists."; \ + fi; \ + fi + # You need the devel/global and one of editor/emacs* ports for that. TAGS ${.CURDIR}/TAGS: ${.CURDIR}/cscope.files rm -f ${.CURDIR}/TAGS _______________________________________________ svn-src-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"