Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 23 Mar 2003 12:06:06 +0100
From:      Michael Ranner <mranner@inode.at>
To:        freebsd-hackers@freebsd.org
Cc:        Garance A Drosihn <drosih@rpi.edu>
Subject:   Re: generalized mergemaster(8)
Message-ID:  <200303231206.06445.mranner@inode.at>
In-Reply-To: <p05200f3dbaa114ea3932@[128.113.24.47]>
References:  <20030321041548.GY25577@geekpunk.net> <3E7B56B9.6050005@acm.org> <p05200f3dbaa114ea3932@[128.113.24.47]>

next in thread | previous in thread | raw e-mail | index | archive | help

--Boundary-00=_eUZf+bj/Sm49djI
Content-Type: text/plain;
  charset="iso-8859-1"
Content-Transfer-Encoding: 8bit
Content-Disposition: inline

Am Freitag, 21. März 2003 20:27 schrieb Garance A Drosihn:
> >
> >  /var/tmp/temproot/etc/rc.d/ and /etc/rc.d/ have 17 differing files.
> >  (I)nstall, (D)elete, or (R)ecursively examine? [R]
> >
> >Then I could hit 'I' and update all of /etc/rc.d at once.
>
> At times I've asked Doug about some kind of pattern-support in
> ~/.mergemasterrc, where the user could specify filename-patterns
> of files where they want the default action to be "install"
> instead of "leave for later".  There are pros and cons with that
> idea, but that's what I was thinking of for the directories you
> describe.
>
> Doug has suggested that people could maybe do things with the
> MM_PRE_COMPARE_SCRIPT, for special processing like this.

I have a small patch for pattern-support in ~/.mergemasterrc and
already sent my ideas to Doug, but he said "It could/should
be done with MM_PRE_COMPARE_SCRIPT" to me.

Regards

-- 
/\/\ichael Ranner

mranner@jawa.at - mranner@bitonline.cc - webmaster@mariazell.at
----------------------------------------------------------------------
JAWA Management Software GmbH - http://www.jawa.at/
  Liebenauer Hauptstrasse 2oo - A-8041 Graz
        Tel +43 316 403274 21 - Fax +43 316 403274 10
----------------------------------------------------------------------
             Mariazell Online - http://www.mariazell.at/
----------------------------------------------------------------------

-----BEGIN GEEK CODE BLOCK-----
GIT/CS/AT dx(-) s+:(++:) a- C++ UBLVS++++$ P++>+++$ L-(+)$ E---
W+++$ N+(++) o-- K- w--()$ O-(--) M@ V-(--) PS+>++ PE(-) Y+ PGP(-)
t+ 5+ X+++(++++) R* tv++ b+(++) DI++ D-(--) G- e h--(*) r++ y?
------END GEEK CODE BLOCK------

--Boundary-00=_eUZf+bj/Sm49djI
Content-Type: text/x-diff;
  charset="iso-8859-1";
  name="mergemaster.patch"
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment; filename="mergemaster.patch"

*** mergemaster.orig	Wed Mar  5 16:35:54 2003
--- mergemaster	Thu Mar  6 15:47:38 2003
***************
*** 106,115 ****
  diff_loop () {
  
    HANDLE_COMPFILE=v
  
    while [ "${HANDLE_COMPFILE}" = "v" -o "${HANDLE_COMPFILE}" = "V" -o \
      "${HANDLE_COMPFILE}" = "NOT V" ]; do
!     if [ -f "${DESTDIR}${COMPFILE#.}" -a -f "${COMPFILE}" ]; then
        if [ "${HANDLE_COMPFILE}" = "v" -o "${HANDLE_COMPFILE}" = "V" ]; then
  	echo ''
  	echo '   ======================================================================   '
--- 106,133 ----
  diff_loop () {
  
    HANDLE_COMPFILE=v
+   AUTO_INSTALL_FILE=n
+ 
+   case "${AUTO_INSTALL}" in
+   [Yy][Ee][Ss])
+     set -f
+     for each in $AUTO_INSTALL_FILES
+     do
+       if expr "$COMPFILE" : ".$each\$" >/dev/null; then
+         AUTO_INSTALL_FILE=y
+         break
+       fi
+     done
+     set +f
+     ;;
+   *)
+     ;;
+   esac
  
    while [ "${HANDLE_COMPFILE}" = "v" -o "${HANDLE_COMPFILE}" = "V" -o \
      "${HANDLE_COMPFILE}" = "NOT V" ]; do
!     if [ -f "${DESTDIR}${COMPFILE#.}" -a -f "${COMPFILE}" -a \
!       "$AUTO_INSTALL_FILE" = "n" ]; then
        if [ "${HANDLE_COMPFILE}" = "v" -o "${HANDLE_COMPFILE}" = "V" ]; then
  	echo ''
  	echo '   ======================================================================   '
***************
*** 124,130 ****
        fi
      else
        echo ''
!       echo "  *** There is no installed version of ${COMPFILE}"
        echo ''
        case "${AUTO_INSTALL}" in
        [Yy][Ee][Ss])
--- 142,152 ----
        fi
      else
        echo ''
!       if [ "$AUTO_INSTALL_FILE" = "y" ]; then
!         echo "  *** Automatic installation of ${COMPFILE}"
!       else
!         echo "  *** There is no installed version of ${COMPFILE}"
!       fi
        echo ''
        case "${AUTO_INSTALL}" in
        [Yy][Ee][Ss])

--Boundary-00=_eUZf+bj/Sm49djI
Content-Type: text/plain;
  charset="iso-8859-1";
  name="mergemaster.rc"
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment; filename="mergemaster.rc"

AUTO_INSTALL_FILES="/etc/periodic/.*"

--Boundary-00=_eUZf+bj/Sm49djI--

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200303231206.06445.mranner>