Zsh Mailing List Archive
Messages sorted by: Reverse Date, Date, Thread, Author

Re: PATCH: AIX dep.&doc fix; development guidelines



"Bart Schaefer" wrote:
> Peter wants each developer to create his own.  This causes some oddities
> e.g. when Sven and I were both patching today -- article number refs get
> out of order, and I had to restart my commit because Sven sneaked one in
> between my "cvs update" and finishing writing the log message.

I'm happy to consider other ways, but this way we get the changes properly
documented up to date.  If anyone has a script to generate them in
something like the current format, with applier, patch number, files
changed, and brief description, from CVS data when it is committed that
would be splendid.

> } 3. The .distfiles thing should be mentioned. I take it that we just add
> } and remove files from the list in it if we add and remove files?
> 
> That's correct.

There's a few files that you might of thought would be in the repository
but are actually auto-generated --- this is basically Zefram's preconfig
mechanism.  For everything else, they just go in or out of .distfiles as
appropriate.

Here's a script I use for checking for thinks that aren't in either
.distfiles as a source file or .cvsignore.  It doesn't examine
DISTFILES_DOC at the moment.  It can go in /home/groups/zsh/bin at
sourceforge.  It told me that LICENCE hadn't been added, so that will go
into .distfiles when I next commit.


#!/bin/zsh -f

emulate zsh
setopt nonomatch nobadpattern

typeset -A sfiles

# srcdir=~/zsh/sourceforge/zsh
srcdir=/home/groups/zsh/zsh

if [[ ! -d $srcdir ]]; then
  print "Can't find top of distribution" >&2
  exit 1
fi

srcdir=$srcdir[1]

cd $srcdir

typeset -A fdone

for dir in '' **/*(/); do
  if [[ -n $dir ]]; then
    cd $srcdir/$dir
    dir="$dir/"
  else
    cd $srcdir
  fi
  unset DISTFILES_SRC
  fdone=()
  if [[ -f .distfiles ]]; then
    . ./.distfiles
    if (( ${+DISTFILES_SRC} )); then
      for f in ${~=DISTFILES_SRC}; do
	[[ "$dir$f" = *Doc/*.1 || "$dir$f" = *.texi ]] && continue
# the following lists the files to be added to the archive
#       print "$dir$f"
	[[ -f $f ]] || print "WARNING: no such file $dir$f" >&2
        fdone[$f]=1
      done
    else
      print "WARNING: ${dir}.distfiles didn't set DISTFILES_SRC" >&2
    fi
    if [[ -f .cvsignore ]]; then
      for f in ${~$(<.cvsignore)}; do
	[[ -f $f ]] && fdone[$f]=1
      done
    fi
    for f in *; do
      [[ -d $f ]] && continue
      [[ -z $fdone[$f] ]] && print "WARNING: file $dir$f not handled" >&2
    done
  elif [[ $PWD = */CVS ]]; then
    continue
  else
    print "WARNING: ${dir:-top level directory} has no .distfiles" >&2
  fi
done

exit 0

-- 
Peter Stephenson <pws@xxxxxxxxxxxxxxxxxxxxxxxx>
Work: pws@xxxxxxxxxxxxxxxxxxxxxxxxx
Web: http://www.pwstephenson.fsnet.co.uk



Messages sorted by: Reverse Date, Date, Thread, Author