Commit d768aadb68ddb8965cc13581bd9b61e3021267df
1 parent
094ac81b
Exists in
master
and in
5 other branches
Incluindo script para atualização automática do ChangeLog igual ao do projeto CodeBlocks
Showing
2 changed files
with
436 additions
and
0 deletions
Show diff stats
| ... | ... | @@ -0,0 +1,384 @@ |
| 1 | +<?xml version="1.0" encoding="utf-8"?> | |
| 2 | + | |
| 3 | +<!-- | |
| 4 | + | |
| 5 | + Changelog.xsl - xslt stylesheet for converting codeblocks svn log | |
| 6 | + to a normal changelog | |
| 7 | + | |
| 8 | + version 0.1 | |
| 9 | + | |
| 10 | + based on svn2cl.xsl version 0.9 | |
| 11 | + | |
| 12 | + original copyright-notice: | |
| 13 | + | |
| 14 | + <snip> | |
| 15 | + | |
| 16 | + This file is based on several implementations of this conversion | |
| 17 | + that I was not completely happy with and some other common | |
| 18 | + xslt constructs found on the web. | |
| 19 | + | |
| 20 | + Copyright (C) 2004, 2005, 2006, 2007 Arthur de Jong. | |
| 21 | + | |
| 22 | + </snip> | |
| 23 | + | |
| 24 | + Copyright (c) 2008-2010 Jens Lody | |
| 25 | + | |
| 26 | + | |
| 27 | + Usage (replace ++ with two minus signs which aren't allowed | |
| 28 | + inside xml comments): | |
| 29 | + svn ++verbose ++xml log | \ | |
| 30 | + xsltproc ++stringparam strip-prefix `basename $(pwd)` \ | |
| 31 | + ++stringparam linelen 75 \ | |
| 32 | + ++stringparam groupbyday yes \ | |
| 33 | + ++stringparam separate-daylogs yes \ | |
| 34 | + ++stringparam include-rev yes \ | |
| 35 | + ++stringparam breakbeforemsg yes/2 \ | |
| 36 | + ++stringparam reparagraph yes \ | |
| 37 | + ++stringparam authorsfile FILE \ | |
| 38 | + ++stringparam ignore-message-starting \ | |
| 39 | + Changelog.xsl - > ChangeLog | |
| 40 | + | |
| 41 | + Redistribution and use in source and binary forms, with or without | |
| 42 | + modification, are permitted provided that the following conditions | |
| 43 | + are met: | |
| 44 | + 1. Redistributions of source code must retain the above copyright | |
| 45 | + notice, this list of conditions and the following disclaimer. | |
| 46 | + 2. Redistributions in binary form must reproduce the above copyright | |
| 47 | + notice, this list of conditions and the following disclaimer in | |
| 48 | + the documentation and/or other materials provided with the | |
| 49 | + distribution. | |
| 50 | + 3. The name of the author may not be used to endorse or promote | |
| 51 | + products derived from this software without specific prior | |
| 52 | + written permission. | |
| 53 | + | |
| 54 | + THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR | |
| 55 | + IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED | |
| 56 | + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE | |
| 57 | + ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY | |
| 58 | + DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | |
| 59 | + DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE | |
| 60 | + GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS | |
| 61 | + INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER | |
| 62 | + IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR | |
| 63 | + OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN | |
| 64 | + IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | |
| 65 | + | |
| 66 | +--> | |
| 67 | + | |
| 68 | +<!DOCTYPE xsl:stylesheet [ | |
| 69 | + <!ENTITY space " "> | |
| 70 | +]> | |
| 71 | + | |
| 72 | +<xsl:stylesheet | |
| 73 | + version="1.0" | |
| 74 | + xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> | |
| 75 | + | |
| 76 | + <xsl:output | |
| 77 | + method="text" | |
| 78 | + encoding="utf-8" | |
| 79 | + media-type="text/plain" | |
| 80 | + omit-xml-declaration="yes" | |
| 81 | + standalone="yes" | |
| 82 | + indent="no" /> | |
| 83 | + | |
| 84 | + <xsl:strip-space elements="*" /> | |
| 85 | + | |
| 86 | + <!-- the prefix of pathnames to strip --> | |
| 87 | + <xsl:param name="strip-prefix" select="'/'" /> | |
| 88 | + | |
| 89 | + <!-- the length of a line to wrap messages at --> | |
| 90 | + <xsl:param name="linelen" select="75" /> | |
| 91 | + | |
| 92 | + <!-- whether entries should be grouped by day --> | |
| 93 | + <xsl:param name="groupbyday" select="'no'" /> | |
| 94 | + | |
| 95 | + <!-- whether to seperate log messages by empty lines --> | |
| 96 | + <xsl:param name="separate-daylogs" select="'no'" /> | |
| 97 | + | |
| 98 | + <!-- whether a revision number should be included --> | |
| 99 | + <xsl:param name="include-rev" select="'no'" /> | |
| 100 | + | |
| 101 | + <!-- whether the log message should start on a new line --> | |
| 102 | + <xsl:param name="breakbeforemsg" select="'no'" /> | |
| 103 | + | |
| 104 | + <!-- whether the message should be rewrapped within one paragraph --> | |
| 105 | + <xsl:param name="reparagraph" select="'no'" /> | |
| 106 | + | |
| 107 | + <!-- whether certain messages should be ignored --> | |
| 108 | + <xsl:param name="ignore-message-starting" select="''" /> | |
| 109 | + | |
| 110 | + <!-- location of authors file if any --> | |
| 111 | + <xsl:param name="authorsfile" select="''" /> | |
| 112 | + <xsl:key name="author-lookup" match="author" use="@uid" /> | |
| 113 | + <xsl:variable name="authors-top" select="document($authorsfile)/authors" /> | |
| 114 | + | |
| 115 | + <!-- match the topmost log entry --> | |
| 116 | + <xsl:template match="log"> | |
| 117 | + <xsl:choose> | |
| 118 | + <xsl:when test="$ignore-message-starting != ''"> | |
| 119 | + <!-- only handle logentries with don't contain the string --> | |
| 120 | + <xsl:apply-templates select="logentry[not(starts-with(msg,$ignore-message-starting))]" /> | |
| 121 | + </xsl:when> | |
| 122 | + <xsl:otherwise> | |
| 123 | + <xsl:apply-templates select="logentry" /> | |
| 124 | + </xsl:otherwise> | |
| 125 | + </xsl:choose> | |
| 126 | + <!-- add newlines at the end of the changelog --> | |
| 127 | + <xsl:text>
</xsl:text> | |
| 128 | + </xsl:template> | |
| 129 | + | |
| 130 | + <!-- format one entry from the log --> | |
| 131 | + <xsl:template match="logentry"> | |
| 132 | + <xsl:choose> | |
| 133 | + <!-- if we're grouping we should omit some headers --> | |
| 134 | + <xsl:when test="$groupbyday='yes'"> | |
| 135 | + <!-- save log entry number --> | |
| 136 | + <xsl:variable name="pos" select="position()" /> | |
| 137 | + <!-- fetch previous entry's date --> | |
| 138 | + <xsl:variable name="prevdate"> | |
| 139 | + <xsl:apply-templates select="../logentry[position()=(($pos)-1)]/date" /> | |
| 140 | + </xsl:variable> | |
| 141 | + <!-- fetch previous entry's author --> | |
| 142 | + <xsl:variable name="prevauthor"> | |
| 143 | + <xsl:value-of select="normalize-space(../logentry[position()=(($pos)-1)]/author)" /> | |
| 144 | + </xsl:variable> | |
| 145 | + <!-- fetch this entry's date --> | |
| 146 | + <xsl:variable name="date"> | |
| 147 | + <xsl:apply-templates select="date" /> | |
| 148 | + </xsl:variable> | |
| 149 | + <!-- fetch this entry's author --> | |
| 150 | + <xsl:variable name="author"> | |
| 151 | + <xsl:value-of select="normalize-space(author)" /> | |
| 152 | + </xsl:variable> | |
| 153 | + <!-- check if header is changed --> | |
| 154 | + <xsl:if test="($prevdate!=$date) or ($prevauthor!=$author)"> | |
| 155 | + <!-- add newline --> | |
| 156 | + <xsl:if test="not(position()=1)"> | |
| 157 | + <xsl:text>
</xsl:text> | |
| 158 | + </xsl:if> | |
| 159 | + <!-- date --> | |
| 160 | + <xsl:value-of select="$date" /> | |
| 161 | + <!-- two spaces --> | |
| 162 | + <xsl:text>&space;&space;</xsl:text> | |
| 163 | + <!-- author's name --> | |
| 164 | + <xsl:apply-templates select="author" /> | |
| 165 | + <!-- two newlines --> | |
| 166 | + <xsl:text>
</xsl:text> | |
| 167 | + <xsl:if test="$separate-daylogs!='yes'"><xsl:text>
</xsl:text></xsl:if> | |
| 168 | + </xsl:if> | |
| 169 | + </xsl:when> | |
| 170 | + <!-- write the log header --> | |
| 171 | + <xsl:otherwise> | |
| 172 | + <!-- add newline --> | |
| 173 | + <xsl:if test="not(position()=1)"> | |
| 174 | + <xsl:text>
</xsl:text> | |
| 175 | + </xsl:if> | |
| 176 | + <!-- date --> | |
| 177 | + <xsl:apply-templates select="date" /> | |
| 178 | + <!-- two spaces --> | |
| 179 | + <xsl:text>&space;&space;</xsl:text> | |
| 180 | + <!-- author's name --> | |
| 181 | + <xsl:apply-templates select="author" /> | |
| 182 | + <!-- two newlines --> | |
| 183 | + <xsl:text>

</xsl:text> | |
| 184 | + </xsl:otherwise> | |
| 185 | + </xsl:choose> | |
| 186 | + <!-- get revision number --> | |
| 187 | + <xsl:variable name="rev"> | |
| 188 | + <xsl:if test="$include-rev='yes'"> | |
| 189 | + <xsl:text>svn</xsl:text> | |
| 190 | + <xsl:value-of select='format-number(@revision,"0000")' /> | |
| 191 | + <xsl:text>:  </xsl:text> | |
| 192 | + </xsl:if> | |
| 193 | + </xsl:variable> | |
| 194 | + <!-- trim trailing newlines --> | |
| 195 | + <xsl:variable name="msg"> | |
| 196 | + <!-- add a line break before the log message --> | |
| 197 | + <xsl:choose> | |
| 198 | + <xsl:when test="$breakbeforemsg='yes'"> | |
| 199 | + <xsl:text>
</xsl:text> | |
| 200 | + </xsl:when> | |
| 201 | + <xsl:when test="number($breakbeforemsg)>0"> | |
| 202 | + <xsl:call-template name="newlines"> | |
| 203 | + <xsl:with-param name="count" select="number($breakbeforemsg)" /> | |
| 204 | + </xsl:call-template> | |
| 205 | + </xsl:when> | |
| 206 | + </xsl:choose> | |
| 207 | + <xsl:call-template name="trim-newln"> | |
| 208 | + <xsl:with-param name="txt" select="msg" /> | |
| 209 | + </xsl:call-template> | |
| 210 | + </xsl:variable> | |
| 211 | + <!-- add newline here if separate-daylogs is in effect --> | |
| 212 | + <xsl:if test="$groupbyday='yes' and $separate-daylogs='yes'"><xsl:text>
</xsl:text></xsl:if> | |
| 213 | + <!-- print the message nicely wrapped --> | |
| 214 | + <xsl:call-template name="wrap"> | |
| 215 | + <xsl:with-param name="txt" select="concat($rev,$msg)" /> | |
| 216 | + </xsl:call-template> | |
| 217 | + </xsl:template> | |
| 218 | + | |
| 219 | + <!-- format date --> | |
| 220 | + <xsl:template match="date"> | |
| 221 | + <xsl:variable name="date" select="normalize-space(.)" /> | |
| 222 | + <!-- output date part --> | |
| 223 | + <xsl:value-of select="substring($date,1,10)" /> | |
| 224 | + <!-- output time part --> | |
| 225 | + <xsl:if test="$groupbyday!='yes'"> | |
| 226 | + <xsl:text>&space;</xsl:text> | |
| 227 | + <xsl:value-of select="substring($date,12,5)" /> | |
| 228 | + </xsl:if> | |
| 229 | + </xsl:template> | |
| 230 | + | |
| 231 | + <!-- format author --> | |
| 232 | + <xsl:template match="author"> | |
| 233 | + <xsl:variable name="uid" select="normalize-space(.)" /> | |
| 234 | + <!-- try to lookup author in authorsfile --> | |
| 235 | + <xsl:choose> | |
| 236 | + <xsl:when test="$authorsfile!=''"> | |
| 237 | + <xsl:for-each select="$authors-top"> | |
| 238 | + <xsl:variable name="author" select="key('author-lookup',$uid)" /> | |
| 239 | + <!-- present result --> | |
| 240 | + <xsl:choose> | |
| 241 | + <xsl:when test="string($author/.)"> | |
| 242 | + <xsl:apply-templates select="$author/node()" mode="copy" /> | |
| 243 | + </xsl:when> | |
| 244 | + <xsl:otherwise> | |
| 245 | + <xsl:value-of select="$uid" /> | |
| 246 | + </xsl:otherwise> | |
| 247 | + </xsl:choose> | |
| 248 | + </xsl:for-each> | |
| 249 | + </xsl:when> | |
| 250 | + <xsl:otherwise> | |
| 251 | + <xsl:value-of select="$uid" /> | |
| 252 | + </xsl:otherwise> | |
| 253 | + </xsl:choose> | |
| 254 | + </xsl:template> | |
| 255 | + | |
| 256 | + <!-- copy but normalize text --> | |
| 257 | + <xsl:template match="text()" mode="copy"> | |
| 258 | + <xsl:value-of select="normalize-space(.)" /> | |
| 259 | + </xsl:template> | |
| 260 | + | |
| 261 | + <!-- simple copy template --> | |
| 262 | + <xsl:template match="@*|node()" mode="copy"> | |
| 263 | + <xsl:copy> | |
| 264 | + <xsl:apply-templates select="@*|node()" mode="copy" /> | |
| 265 | + </xsl:copy> | |
| 266 | + </xsl:template> | |
| 267 | + | |
| 268 | + <!-- string-wrapping template --> | |
| 269 | + <xsl:template name="wrap"> | |
| 270 | + <xsl:param name="txt" /> | |
| 271 | + <xsl:variable name="normtxt" select="normalize-space($txt)" /> | |
| 272 | + <xsl:choose> | |
| 273 | + <xsl:when test="contains($txt,'
')"> | |
| 274 | + <!-- text contains newlines, do the first line --> | |
| 275 | + <xsl:call-template name="wrap"> | |
| 276 | + <xsl:with-param name="txt" select="substring-before($txt,'
')" /> | |
| 277 | + </xsl:call-template> | |
| 278 | + <!-- print tab --> | |
| 279 | + <xsl:text>	&space;&space;</xsl:text> | |
| 280 | + <!-- wrap the rest of the text --> | |
| 281 | + <xsl:call-template name="wrap"> | |
| 282 | + <xsl:with-param name="txt" select="substring-after($txt,'
')" /> | |
| 283 | + </xsl:call-template> | |
| 284 | + </xsl:when> | |
| 285 | + <xsl:when test="(string-length($normtxt) < (($linelen)-9)) or not(contains($normtxt,' '))"> | |
| 286 | + <!-- this is easy, nothing to do --> | |
| 287 | + <xsl:value-of select="$normtxt" /> | |
| 288 | + <!-- add newline --> | |
| 289 | + <xsl:text>
</xsl:text> | |
| 290 | + </xsl:when> | |
| 291 | + <xsl:otherwise> | |
| 292 | + <!-- find the first line --> | |
| 293 | + <xsl:variable name="tmp" select="substring($normtxt,1,(($linelen)-9))" /> | |
| 294 | + <xsl:variable name="line"> | |
| 295 | + <xsl:choose> | |
| 296 | + <!-- if our attempt contains spaces wrap on that --> | |
| 297 | + <xsl:when test="contains($tmp,' ')"> | |
| 298 | + <xsl:call-template name="find-line"> | |
| 299 | + <xsl:with-param name="txt" select="$tmp" /> | |
| 300 | + </xsl:call-template> | |
| 301 | + </xsl:when> | |
| 302 | + <!-- otherwise use the first non-space characters from the text --> | |
| 303 | + <xsl:otherwise> | |
| 304 | + <xsl:value-of select="substring-before($normtxt,' ')" /> | |
| 305 | + </xsl:otherwise> | |
| 306 | + </xsl:choose> | |
| 307 | + </xsl:variable> | |
| 308 | + <!-- print line --> | |
| 309 | + <xsl:value-of select="$line" /> | |
| 310 | + <!-- print newline and tab --> | |
| 311 | + <xsl:text>
	&space;&space;</xsl:text> | |
| 312 | + <!-- wrap the rest of the text --> | |
| 313 | + <xsl:call-template name="wrap"> | |
| 314 | + <xsl:with-param name="txt" select="normalize-space(substring($normtxt,string-length($line)+1))" /> | |
| 315 | + </xsl:call-template> | |
| 316 | + </xsl:otherwise> | |
| 317 | + </xsl:choose> | |
| 318 | + </xsl:template> | |
| 319 | + | |
| 320 | + <!-- template to trim line to contain space as last char --> | |
| 321 | + <xsl:template name="find-line"> | |
| 322 | + <xsl:param name="txt" /> | |
| 323 | + <xsl:choose> | |
| 324 | + <xsl:when test="substring($txt,string-length($txt),1)=' '"> | |
| 325 | + <xsl:value-of select="substring($txt,1,string-length($txt)-1)" /> | |
| 326 | + </xsl:when> | |
| 327 | + <xsl:otherwise> | |
| 328 | + <xsl:call-template name="find-line"> | |
| 329 | + <xsl:with-param name="txt" select="substring($txt,1,string-length($txt)-1)" /> | |
| 330 | + </xsl:call-template> | |
| 331 | + </xsl:otherwise> | |
| 332 | + </xsl:choose> | |
| 333 | + </xsl:template> | |
| 334 | + | |
| 335 | + <!-- template to trim trailing and starting newlines --> | |
| 336 | + <xsl:template name="trim-newln"> | |
| 337 | + <xsl:param name="txt" /> | |
| 338 | + <xsl:choose> | |
| 339 | + <!-- find starting newlines --> | |
| 340 | + <xsl:when test="substring($txt,1,1) = '
'"> | |
| 341 | + <xsl:call-template name="trim-newln"> | |
| 342 | + <xsl:with-param name="txt" select="substring($txt,2)" /> | |
| 343 | + </xsl:call-template> | |
| 344 | + </xsl:when> | |
| 345 | + <!-- find trailing newlines --> | |
| 346 | + <xsl:when test="substring($txt,string-length($txt),1) = '
'"> | |
| 347 | + <xsl:call-template name="trim-newln"> | |
| 348 | + <xsl:with-param name="txt" select="substring($txt,1,string-length($txt)-1)" /> | |
| 349 | + </xsl:call-template> | |
| 350 | + </xsl:when> | |
| 351 | + <!-- if the message has paragrapgs, find the first one --> | |
| 352 | + <xsl:when test="$reparagraph='yes' and contains($txt,'

')"> | |
| 353 | + <!-- remove newlines from first paragraph --> | |
| 354 | + <xsl:value-of select="normalize-space(substring-before($txt,'

'))" /> | |
| 355 | + <!-- paragraph separator --> | |
| 356 | + <xsl:text>

</xsl:text> | |
| 357 | + <!-- do the rest of the text --> | |
| 358 | + <xsl:call-template name="trim-newln"> | |
| 359 | + <xsl:with-param name="txt" select="substring-after($txt,'

')" /> | |
| 360 | + </xsl:call-template> | |
| 361 | + </xsl:when> | |
| 362 | + <!-- remove more single newlines --> | |
| 363 | + <xsl:when test="$reparagraph='yes'"> | |
| 364 | + <xsl:value-of select="normalize-space($txt)" /> | |
| 365 | + </xsl:when> | |
| 366 | + <!-- no newlines found, we're done --> | |
| 367 | + <xsl:otherwise> | |
| 368 | + <xsl:value-of select="$txt" /> | |
| 369 | + </xsl:otherwise> | |
| 370 | + </xsl:choose> | |
| 371 | + </xsl:template> | |
| 372 | + | |
| 373 | + <!-- insert a number of newlines --> | |
| 374 | + <xsl:template name="newlines"> | |
| 375 | + <xsl:param name="count" /> | |
| 376 | + <xsl:text>
</xsl:text> | |
| 377 | + <xsl:if test="$count>1"> | |
| 378 | + <xsl:call-template name="newlines"> | |
| 379 | + <xsl:with-param name="count" select="($count)-1" /> | |
| 380 | + </xsl:call-template> | |
| 381 | + </xsl:if> | |
| 382 | + </xsl:template> | |
| 383 | + | |
| 384 | +</xsl:stylesheet> | ... | ... |
| ... | ... | @@ -0,0 +1,52 @@ |
| 1 | +#!/bin/bash | |
| 2 | +# | |
| 3 | +# "Software pw3270, desenvolvido com base nos códigos fontes do WC3270 e X3270 | |
| 4 | +# (Paul Mattes Paul.Mattes@usa.net), de emulação de terminal 3270 para acesso a | |
| 5 | +# aplicativos mainframe. Registro no INPI sob o nome G3270. | |
| 6 | +# | |
| 7 | +# Copyright (C) <2008> <Banco do Brasil S.A.> | |
| 8 | +# | |
| 9 | +# Este programa é software livre. Você pode redistribuí-lo e/ou modificá-lo sob | |
| 10 | +# os termos da GPL v.2 - Licença Pública Geral GNU, conforme publicado pela | |
| 11 | +# Free Software Foundation. | |
| 12 | +# | |
| 13 | +# Este programa é distribuído na expectativa de ser útil, mas SEM QUALQUER | |
| 14 | +# GARANTIA; sem mesmo a garantia implícita de COMERCIALIZAÇÃO ou de ADEQUAÇÃO | |
| 15 | +# A QUALQUER PROPÓSITO EM PARTICULAR. Consulte a Licença Pública Geral GNU para | |
| 16 | +# obter mais detalhes. | |
| 17 | +# | |
| 18 | +# Você deve ter recebido uma cópia da Licença Pública Geral GNU junto com este | |
| 19 | +# programa; se não, escreva para a Free Software Foundation, Inc., 59 Temple | |
| 20 | +# Place, Suite 330, Boston, MA, 02111-1307, USA | |
| 21 | +# | |
| 22 | +# Contatos: | |
| 23 | +# | |
| 24 | +# perry.werneck@gmail.com (Alexandre Perry de Souza Werneck) | |
| 25 | +# erico.mendonca@gmail.com (Erico Mascarenhas de Mendonça) | |
| 26 | +# licinio@bb.com.br (Licínio Luis Branco) | |
| 27 | +# kraucer@bb.com.br (Kraucer Fernandes Mazuco) | |
| 28 | +# | |
| 29 | + | |
| 30 | +REV_TO=${1:-"HEAD"} | |
| 31 | +REV_LAST=`cat ChangeLog | head -3 - | tr -d '\r\n' | sed -e 's/.*svn\([0-9]*\).*/\1/'` | |
| 32 | + | |
| 33 | +echo $PACKAGE_SOURCE | |
| 34 | + | |
| 35 | +REV_MAX=`svn --xml info | tr -d '\r\n' | sed -e 's/.*<commit.*revision="\([0-9]*\)".*<\/commit>.*/\1/'` | |
| 36 | + | |
| 37 | +REV_FROM=${2:-$(($REV_LAST + 1))} | |
| 38 | + | |
| 39 | +if [ $REV_FROM -gt $REV_MAX ]; then | |
| 40 | + exit 0; | |
| 41 | +fi | |
| 42 | + | |
| 43 | +echo "Downloading svn-log from revision $REV_FROM to revision $REV_MAX" | |
| 44 | + | |
| 45 | +svn --verbose --xml log -r "$REV_TO:$REV_FROM" | xsltproc --stringparam strip-prefix "trunk" --stringparam linelen "75" --stringparam groupbyday "no" --stringparam separate-daylogs "no" --stringparam include-rev "yes" --stringparam breakbeforemsg "no" --stringparam reparagraph "no" --stringparam authorsfile "" --stringparam title "ChangeLog" --stringparam revision-link "#r" --stringparam ignore-message-starting "" --nowrite --nomkdir --nonet "ChangeLog.xsl" - > "ChangeLog.new" | |
| 46 | +if [ "$?" != "0" ]; then | |
| 47 | + exit -1 | |
| 48 | +fi | |
| 49 | + | |
| 50 | +cat "ChangeLog" >> "ChangeLog.new" | |
| 51 | + | |
| 52 | +mv "ChangeLog.new" "ChangeLog" | ... | ... |