Sat May 7 09:43:05 2011 UTC ()
Closes PR pkg/44852, oked by wiz@ and reed@
Update mawk to 1.3.4.20100625
Major changes in this release of mawk:
    20100625
        + correct translation of octal and hex escapes for system regular
          expression library.
        + modify configure script to support --program-suffix, etc.
        + add Debian package scripts, for "mawk-cur".
        + add RPM spec-file.
        + move release- and patch-level values from version.c to patchlev.h
          to simplify packaging scripts.

    20100618
        + correct translation of "^{" pattern for system regular expression
          library  (report by Elias Pipping).
        + fix sentence fragment in README (report by Elias Pipping).

    20100507
        + cleanup gcc warnings for 64-bit platform, e.g., use size_t rather
          than unsigned, etc.
        + fix warnings from clang --analyze
        + update/improve configure script
          + modify CF_GCC_VERSION to ignore stderr, e.g., from c89 alias
          + modify CF_GCC_WARNINGS, moving -W and -Wall into the list to check,
            since c89 alias for gcc complains about these options.
          + add --disable-leaks and related options, for testing.
          + add lint rule to makefile.
          + add configure-check for ctags to work with pkgsrc.
        + amend change of array.w, fixes a regression in "delete" (report by
          Heiner Marxen).

    20100419
        + modify split() to handle embedded nulls in the string to split, e.g.,
                BEGIN{s="a\0b"; print length(s); n = split(s,f,""); print n}
          (report by Morris Lee).
        + modify array.w to update table pointers in the special case where
          an array is known to have string-indices, but is later indexed via
          integers.  The problem occurs when the array grows large enough to
          rehash it, e.g.,
                BEGIN{a["n"];for(i=1;i<1000;++i)printf "%d\n", a[i]; }
          (report by Morris Lee).
        + increase size of reference-count for strings to unsigned.  It was an
          unsigned short, which prevented using arrays larger than 64k, e.g.,
                BEGIN{for(i = 1; i <= 65550; ++i){if(i >= 65534 && i<=65537) print i; s[i] = "a"}; delete s;}
          (report by Morris Lee).
        + add special case for Solaris 10 (and up) to configure check
          CF_XOPEN_SOURCE
        + refactored configure check CF_REGEX

    20100224
        + add a configure check for large files (report by Sean Kumar).
        + modify check in collect_RE() to show the actual limit value, e.g.,
          MIN_SPRINTF-2 used for built-in regular expressions.
        + increase MIN_SPRINTF, used as limit on regular-expression size, to
          match the MAX_SPLIT value, i.e., slightly more than doubling the size
          (report by Markus Gnam).
        + further modify makefile to build outside the source-tree.
        + modify makefile and mawktest to use relative path again, since the
          existing script did not work with openSUSE's build (patch by Guido
          Berhoerster).
        + fix makefile's .c.i rule, which lacked CPP definition.
        + update mawktest.bat script to more/less correspond with mawktest,
          for Win32 console except where echo command does not handle the
          required quoting syntax.
        + add vs6.mak, for Visual Studio 6.
        + modify mawktest script to report results from all tests, rather than
          halting on the first failure.
        + add limit-check after processing match(test, "[^0-9A-Za-z]") to
          ensure the internal trailing null of the test-string is not mistaken
          for part of the string, i.e., RSTART, RLENGTH are computed correctly
          (report by Markus Gnam).
        + modify parsing of -W option to use comma-separated values, e.g.,
          "-Wi,e" for "-Winteractive" and "-Werror".
        + add timestamp to scancode.c, to help manage revisions.
        + improve configure macro CF_XOPEN_SOURCE, making it remove possibly
          conflicting definitions before adding new ones.
        + update config.guess and config.sub

        > patches by Jan Psota:

        + improve buffering for -Winteractive option.
        + allow multiple single-character flags after -W, e.g., "-Wie" for
          "-Winteractive" and "-Werror" to permit these to be passed on a
          "#"-line of a shell script, e.g.,
                #!/usr/bin/mawk -Wie

        > patches by Jonathan Nieder:

        + add new M_SAVE_POS and M_2JC operation codes (states) to the
          built-in regular expression engine.  Use these to reimplement
          m* (closure), to provide a way to avoid infinite looping on
          matches against empty strings.  This change requires
          reimplementing
          the workaround for gawk's noloop1 testcase from 20090726.
        + improve buffer-overflow check for string_buff.
        + fix collect_RE to treat "[^]]" as a character class (meaning "not a
          closing bracket") but "[^^]]" not as one.  This also requires
          initializing the local "start of character class" variable to NULL
          rather than the beginning of the string, to avoid an invalid array
          access when collecting expressions such as "^text".
        + within a character class and not followed by a :, ., or ~, a "[" is
          just like any other character.  This way, you can tell mawk to scan
          for a literal [ character with "mawk /[[]/", and you can scan for a [
          or ] with "mawk /[][]/".  Also clean up the relevant loop in
          do_class() to make it a bit more readable.
        + outside a character class, a "]" is just like any other character.
        + prevent do_class() from scanning past the end, e.g., if the
          terminating zero byte was escaped.
        + fix regular-expression parsing when a right parenthesis ")" is
          found without a preceding left parenthesis.
        + fix resetting of position stack when backtracking.
        + modify regular-expression engine to avoid exponential running time
          for some regular expression matches in which the first match mawk
          finds extends to the end of the string.  This is a new fix for the
          gawk noloop2 test, added here for regression testing.


(cheusov)
diff -r1.21 -r1.22 pkgsrc/lang/mawk/Makefile
diff -r1.12 -r1.13 pkgsrc/lang/mawk/distinfo

cvs diff -r1.21 -r1.22 pkgsrc/lang/mawk/Makefile (expand / switch to unified diff)

--- pkgsrc/lang/mawk/Makefile 2010/04/20 19:23:14 1.21
+++ pkgsrc/lang/mawk/Makefile 2011/05/07 09:43:05 1.22
@@ -1,17 +1,17 @@ @@ -1,17 +1,17 @@
1# $NetBSD: Makefile,v 1.21 2010/04/20 19:23:14 zafer Exp $ 1# $NetBSD: Makefile,v 1.22 2011/05/07 09:43:05 cheusov Exp $
2# 2#
3 3
4DISTNAME= mawk-1.3.4 4DISTNAME= mawk-1.3.4-20100625
5PKGNAME= ${DISTNAME:S/-20/.20/} 5PKGNAME= ${DISTNAME:S/-20/.20/}
6CATEGORIES= lang 6CATEGORIES= lang
7MASTER_SITES= ftp://invisible-island.net/mawk/ 7MASTER_SITES= ftp://invisible-island.net/mawk/
8EXTRACT_SUFX= .tgz 8EXTRACT_SUFX= .tgz
9 9
10MAINTAINER= vle@gmx.net 10MAINTAINER= vle@gmx.net
11COMMENT= AWK clone by Mike Brennan 11COMMENT= AWK clone by Mike Brennan
12LICENSE= gnu-gpl-v2 12LICENSE= gnu-gpl-v2
13 13
14PKG_DESTDIR_SUPPORT= user-destdir 14PKG_DESTDIR_SUPPORT= user-destdir
15 15
16INSTALLATION_DIRS= ${PKGMANDIR}/man1 16INSTALLATION_DIRS= ${PKGMANDIR}/man1
17 17

cvs diff -r1.12 -r1.13 pkgsrc/lang/mawk/distinfo (expand / switch to unified diff)

--- pkgsrc/lang/mawk/distinfo 2010/04/20 19:23:14 1.12
+++ pkgsrc/lang/mawk/distinfo 2011/05/07 09:43:05 1.13
@@ -1,5 +1,5 @@ @@ -1,5 +1,5 @@
1$NetBSD: distinfo,v 1.12 2010/04/20 19:23:14 zafer Exp $ 1$NetBSD: distinfo,v 1.13 2011/05/07 09:43:05 cheusov Exp $
2 2
3SHA1 (mawk-1.3.4.tgz) = 308f31e735bed959ee913a1d8b47bb5671a419e3 3SHA1 (mawk-1.3.4-20100625.tgz) = 5ba79c2af60915ec3a3eb8d2bbd59e15b9c24a79
4RMD160 (mawk-1.3.4.tgz) = 150a94f72776d523bea1bae0c9cf1e2d9ca5b1f1 4RMD160 (mawk-1.3.4-20100625.tgz) = eba15ad8ed2d0acefe56b02a6db80ad3d9f87dfa
5Size (mawk-1.3.4.tgz) = 283167 bytes 5Size (mawk-1.3.4-20100625.tgz) = 304970 bytes