ddd6f9f
#!/bin/sh -e
44a360e
44a360e
if [ $# -lt 1 ]; then
44a360e
    echo "What?"
44a360e
    exit 1
44a360e
fi
44a360e
44a360e
repo="https://svn.apache.org/repos/asf/httpd/httpd/trunk"
dbcbdf8
repo="https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x"
59afc15
ver=2.4.25
44a360e
prefix="httpd-${ver}"
44a360e
suffix="r$1${2:++}"
44a360e
fn="${prefix}-${suffix}.patch"
44a360e
vcurl="http://svn.apache.org/viewvc?view=revision&revision="
44a360e
44a360e
if test -f ${fn}; then
44a360e
    mv -v -f ${fn} ${fn}\~
5dd3534
    echo "# $0 $*" > ${fn}
5dd3534
    sed '1{/#.*pullrev/d;};/^--- /,$d' < ${fn}\~ >> ${fn}
44a360e
else
5dd3534
    echo "# $0 $*" > ${fn}
44a360e
fi
44a360e
44a360e
new=0
44a360e
for r in $*; do
44a360e
   if ! grep -q "${vcurl}${r}" ${fn}; then
44a360e
       echo "${vcurl}${r}"
44a360e
       new=1
44a360e
   fi
44a360e
done >> ${fn}
44a360e
44a360e
[ $new -eq 0 ] || echo >> ${fn}
44a360e
44a360e
prev=/dev/null
44a360e
for r in $*; do
44a360e
    echo "+ fetching ${r}"
44a360e
    this=`mktemp /tmp/pullrevXXXXXX`
589ffb1
    svn diff -c ${r} ${repo} | filterdiff --remove-timestamps -x 'CHANGES' -x 'next-number' -x 'STATUS' \
c010dc9
        --addprefix="${prefix}/" > ${this}
44a360e
    next=`mktemp /tmp/pullrevXXXXXX`
44a360e
    combinediff --quiet ${prev} ${this} > ${next}
44a360e
    rm -f "${this}"
44a360e
    [ "${prev}" = "/dev/null" ] || rm -f "${prev}"
44a360e
    prev=${next}
44a360e
done
44a360e
44a360e
cat ${prev} >> ${fn}
44a360e
44a360e
vi "${fn}"
44a360e
echo "+ git add ${fn}" 
44a360e
git add "${fn}"
44a360e
echo "+ spec template:"
44a360e
echo "PatchN: ${fn}"
44a360e
echo "%patchN -p1 -b .${suffix}"