summaryrefslogtreecommitdiff
path: root/lang/nawk
AgeCommit message (Collapse)AuthorFilesLines
2014-10-09Remove pkgviews: don't set PKG_INSTALLATION_TYPES in Makefiles.wiz1-3/+1
2014-03-25Increase the default YYMAXDEPTH from 150 to 300, fixes problems buildingjperkin1-2/+3
devel/editline where mdoc2man.awk would previously abort with a stack overflow. This is still pretty conservative compared to other parsers. Bump PKGREVISION.
2014-03-12Update to 20121220ryoon18-3757/+2140
* Works fine under Debian GNU/Linux 7.4, NetBSD/amd64 6.99.36 * Merge pkgsrc specific changes Changelog: Dec 20, 2012: fiddled makefile to get correct yacc and bison flags. pick yacc (linux) or bison (mac) as necessary. added __attribute__((__noreturn__)) to a couple of lines in proto.h, to silence someone's enthusiastic checker. fixed obscure call by value bug in split(a[1],a) reported on 9fans. the management of temporary values is just a mess; i took a shortcut by making an extra string copy. thanks to paul patience and arnold robbins for passing it on and for proposed patches. tiny fiddle in setfval to eliminate -0 results in T.expr, which has irritated me for 20+ years. Aug 10, 2011: another fix to avoid core dump with delete(ARGV); again, many thanks to ruslan ermilov. Aug 7, 2011: split(s, a, //) now behaves the same as split(s, a, "") Jun 12, 2011: /pat/, \n /pat/ {...} is now legal, though bad style to use. added checks to new -v code that permits -vnospace; thanks to ruslan ermilov for spotting this and providing the patch. removed fixed limit on number of open files; thanks to aleksey cheusov and christos zoulos. fixed day 1 bug that resurrected deleted elements of ARGV when used as filenames (in lib.c). minor type fiddles to make gcc -Wall -pedantic happier (but not totally so); turned on -fno-strict-aliasing in makefile. May 6, 2011: added #ifdef for isblank. now allows -ffoo as well as -f foo arguments. (thanks, ruslan) May 1, 2011: after advice from todd miller, kevin lo, ruslan ermilov, and arnold robbins, changed srand() to return the previous seed (which is 1 on the first call of srand). the seed is an Awkfloat internally though converted to unsigned int to pass to the library srand(). thanks, everyone. fixed a subtle (and i hope low-probability) overflow error in fldbld, by adding space for one extra \0. thanks to robert bassett for spotting this one and providing a fix. removed the files related to compilation on windows. i no longer have anything like a current windows environment, so i can't test any of it. May 23, 2010: fixed long-standing overflow bug in run.c; many thanks to nelson beebe for spotting it and providing the fix. fixed bug that didn't parse -vd=1 properly; thanks to santiago vila for spotting it. Feb 8, 2010: i give up. replaced isblank with isspace in b.c; there are no consistent header files. Nov 26, 2009: fixed a long-standing issue with when FS takes effect. a change to FS is now noticed immediately for subsequent splits. changed the name getline() to awkgetline() to avoid yet another name conflict somewhere. Feb 11, 2009: temporarily for now defined HAS_ISBLANK, since that seems to be the best way through the thicket. isblank arrived in C99, but seems to be arriving at different systems at different times. Oct 8, 2008: fixed typo in b.c that set tmpvec wrongly. no one had ever run into the problem, apparently. thanks to alistair crooks. Oct 23, 2007: minor fix in lib.c: increase inputFS to 100, change malloc for fields to n+1. fixed memory fault caused by out of order test in setsval. thanks to david o'brien, freebsd, for both fixes. May 1, 2007: fiddle in makefile to fix for BSD make; thanks to igor sobrado. Mar 31, 2007: fixed some null pointer refs calling adjbuf. Feb 21, 2007: fixed a bug in matching the null RE in sub and gsub. thanks to al aho who actually did the fix (in b.c), and to wolfgang seeberg for finding it and providing a very compact test case. fixed quotation in b.c; thanks to Hal Pratt and the Princeton Dante Project. removed some no-effect asserts in run.c. fiddled maketab.c to not complain about bison-generated values. removed the obsolete -V argument; fixed --version to print the version and exit. fixed wording and an outright error in the usage message; thanks to igor sobrado and jason mcintyre. fixed a bug in -d that caused core dump if no program followed. Jan 1, 2007: dropped mac.code from makefile; there are few non-MacOSX mac's these days. Jan 17, 2006: system() not flagged as unsafe in the unadvertised -safe option. found it while enhancing tests before shipping the ;login: article. practice what you preach. removed the 9-years-obsolete -mr and -mf flags. added -version and --version options. core dump on linux with BEGIN {nextfile}, now fixed. removed some #ifdef's in run.c and lex.c that appear to no longer be necessary.
2013-06-14Fix build under Mac OS X (Mountain Lion).tron1-2/+2
2012-10-02Drop superfluous PKG_DESTDIR_SUPPORT, "user-destdir" is default these days.asau1-2/+1
2010-03-21Reset maintainer, developer lost his commit bit.wiz1-2/+2
2009-10-29getline -> get_linetnn4-7/+9
2009-04-09Remove redundant NO_CHECKSUM and EXTRACT_ONLY definitions.joerg1-2/+1
2009-04-08Remove the remaining NO_MTREE definitions, it has been a nop for ajoerg1-2/+1
while.
2008-09-08Properly implement the equivalent of strdup again as the portablejoerg2-4/+7
version and the src version of nawk differ in that. Complained about by Joachim Koenig, blame on me. Bump revision.
2008-08-26As dholland pointed out, don't leak memory when FS needs resizing morejoerg2-3/+5
than once. Bump revision again.
2008-08-26Remove hard-coded limit on FS. Merge minor performance improvements.joerg4-12/+20
Bump revision.
2008-08-26Remove junk.joerg1-88/+0
2008-06-19Add a marker for bootstrap packages to allow special cases them duringjoerg1-1/+3
bulk builds.
2008-03-04Mechanical changes to add DESTDIR support to packages that installjlam1-3/+5
their files via a custom do-install target.
2007-05-27Rename "makefile" to "makefile.orig" to avoid case-insensitiveschmonz2-4/+4
filename clash with "Makefile".
2007-05-07Always create the file a.out, even on Cygwin, where the default is a.exe.rillig1-2/+2
2007-02-22Whitespace cleanup, courtesy of pkglint.wiz1-2/+2
Patch provided by Sergey Svishchev in private mail.
2006-07-14Mark these packages as NO_MTREE as they are bootstrap packages and don'tjlam1-1/+2
need mtree to pre-generate any directories for them.
2006-07-14Prepare nawk for use as a bootstrap tool by including the sourcesjlam24-31/+12211
directly in pkgsrc/lang/nawk/files and adjusting the package Makefile accordingly. The README.pkgsrc file includes notes on how the source files were (minimally) adjusted.
2006-05-06PKGMANDIR instead of man.reed1-3/+3
2005-12-05Fixed pkglint warnings. The warnings are mostly quoting issues, forrillig1-3/+3
example MAKE_ENV+=FOO=${BAR} is changed to MAKE_ENV+=FOO=${BAR:Q}. Some other changes are outlined in http://mail-index.netbsd.org/tech-pkg/2005/12/02/0034.html
2005-05-22Remove the old tools framework and references to _USE_NEW_TOOLS.jlam1-7/+1
2005-05-19reorder lines to please pkglintdillo1-4/+3
2005-05-18Update lang/nawk to 20050425. Pkgsrc changes include:jlam3-17/+33
Grab distfile from ${MASTER_SITE_LOCAL} where it's in a ${PKGNAME}-specific directory since the distfile has no version number. Use the .shar instead of .tar.gz distfile to remove the need for dependencies to build this package. Changes from nawk-20040207 include: Apr 24, 2005: modified lib.c so that values of $0 et al are preserved in the END block, apparently as required by posix. thanks to havard eidnes for the report and code. Jan 14, 2005: fixed infinite loop in parsing, originally found by brian tsang. thanks to arnold robbins for a suggestion that started me rethinking it. Dec 31, 2004: prevent overflow of -f array in main, head off potential error in call of SYNTAX(), test malloc return in lib.c, all with thanks to todd miller. Dec 22, 2004: cranked up size of NCHARS; coverity thinks it can be overrun with smaller size, and i think that's right. added some assertions to b.c to catch places where it might overrun. the RE code is still fragile. Dec 5, 2004: fixed a couple of overflow problems with ridiculous field numbers: e.g., print $(2^32-1). thanks to ruslan ermilov, giorgos keramidas and david o'brien at freebsd.org for patches. this really should be re-done from scratch. Nov 21, 2004: fixed another 25-year-old RE bug, in split. it's another failure to (re-)initialize. thanks to steve fisher for spotting this and providing a good test case.
2005-04-11Remove USE_BUILDLINK3 and NO_BUILDLINK; these are no longer used.tv1-2/+1
2005-02-24Add RMD160 digestsagc1-1/+2
2004-12-03Rename ALL_TARGET to BUILD_TARGET for consistency with other *_TARGETs.wiz1-2/+2
Suggested by Roland Illig, ok'd by various.
2004-03-11Uses yacc during build.reed1-1/+3
2004-02-09Update of nawk to 20040207. Changes since previous version from bwk:cjep2-5/+5
Fixed a bug in regular expressions that dates (so help me) from 1977; it's been there from the beginning. an anchored longest match that was longer than the number of states triggered a failure to initialize the machine properly. many thanks to moinak ghosh for not only finding this one but for providing a fix, in some of the most mysterious code known to man. fixed a storage leak in call() that appears to have been there since 1983 or so -- a function without an explicit return that assigns a string to a parameter leaked a Cell. thanks to moinak ghosh for spotting this very subtle one.
2004-02-08We no longer need to explicitly call ${BUILDLINK_*} for CC, CXX, LIBTOOL,jlam1-2/+2
etc. because the bare variables will point to the correct executables.
2004-01-20Move WRKSRC definition away from the first paragraph in a Makefile.agc1-2/+2
2004-01-05bl3ifyjlam1-2/+7
2003-09-06Update of lang/nawk to 20030731. Cut-down version of changes sincecjep2-5/+5
20030321 version: Jul 29, 2003: fixed (i think) the long-standing botch that included the beginning of line state ^ for RE's in the set of valid characters; this led to a variety of odd problems, including failure to properly match certain regular expressions in non-US locales. thanks to ruslan for keeping at this one. Jul 28, 2003: n-th try at getting internationalization right, with thanks to volker kiefel, arnold robbins and ruslan ermilov for advice, though they should not be blamed for the outcome. according to posix, "." is the radix character in programs and command line arguments regardless of the locale; otherwise, the locale should prevail for input and output of numbers. i have rescinded the attempt to use strcoll in expanding shorthands in regular expressions (cclenter). Jul 4, 2003: fixed bug that permitted non-terminated RE, as in "awk /x". Jun 1, 2003: subtle change to split: if source is empty, number of elems is always 0 and the array is not set.
2003-07-17s/netbsd.org/NetBSD.org/grant1-2/+2
2003-03-29Place WRKSRC where it belongs, to make pkglint happy; ok'ed by wiz.jmmv1-2/+2
2003-03-16Update of lang/nawk to version 20030314. Changes since 20021213:cjep2-5/+5
Mar 14, 2003: the internationalization changes, somewhat modified, are now reinstated. in theory awk will now do character comparisons and case conversions in national language, but "." will always be the decimal point separator on input and output regardless of national language. isblank(){} has an #ifndef. this no longer compiles on windows: LC_MESSAGES isn't defined in vc6++. fixed subtle behavior in field and record splitting: if FS is a single character and RS is not empty, \n is NOT a separator. this tortuous reading is found in the awk book; behavior now matches gawk and mawk.
2003-01-03Take maintainership of nawkcjep1-2/+2
2003-01-03Update of lang/nawk to 20021213.cjep2-5/+5
Changes since previous version: For the moment, the internationalization changes of nov 29 are rolled back -- programs like x = 1.2 don't work in some locales, because the parser is expecting x = 1,2. Until I understand this better, this will have to wait.
2002-12-11Also quote CC and YACC when adding them to MAKEFLAGS (not done in lastjmmv1-2/+2
commit). This can fix problems if it happens that those variables contain spaces (or some other special character). Suggested by Christopher Richards in private mail.
2002-12-11Quote CFLAGS when passing them to MAKEFLAGS; if they contain spaces, buildjmmv1-3/+7
will fail. Also fix a "typo" in the manpage (Awk->Nawk). Patch provided by Christopher Richards in PR pkg/19344. While I'm here, move manpage generation to the post-build target (where it should be) and use INSTALL_MAN to install it (instead of generating it in place).
2002-12-091. Respect YACC, CC, CFLAGS as per PR#19013.cjep2-5/+6
2. Update to 20021129. Changes since 20020628 (from FIXES file): modified b.c (with tiny changes in main and run) to support locales, using strcoll and iswhatever tests for posix character classes. thanks to ruslan ermilov (ru@freebsd.org) for code. the function isblank doesn't seem to have propagated to any header file near me, so it's there explicitly. not properly tested on non-ascii character sets by me.
2002-09-26According to BWK's homepage, the "the one true awk" was updated on June 28, 2002jschauma2-5/+5
so update this to version nawk-20020628. Changes: (note credit to jdolecek :) Jun 28, 2002: modified run/format() and tran/getsval() to do a slightly better job on using OFMT for output from print and CONVFMT for other number->string conversions, as promised by posix and done by gawk and mawk. there are still places where it doesn't work right if CONVFMT is changed; by then the STR attribute of the variable has been irrevocably set. thanks to arnold robbins for code and examples. fixed subtle bug in format that could get core dump. thanks to Jaromir Dolecek <jdolecek@NetBSD.org> for finding and fixing. minor cleanup in run.c / format() at the same time. added some tests for null pointers to debugging printf's, which were never intended for external consumption. thanks to dave kerns (dkerns@lucent.com) for pointing this out. GNU compatibility: an empty regexp matches anything (thanks to dag-erling smorgrav, des@ofug.org). subject to reversion if this does more harm than good. pervasive small changes to make things more const-correct, as reported by gcc's -Wwrite-strings. as it says in the gcc manual, may be more nuisance than useful. provoked by a suggestion and code from arnaud desitter, arnaud@nimbus.geog.ox.ac.uk minor documentation changes to note that this now compiles out of the box on Mac OS X. Feb 10, 2002: changed types in posix chars structure to quiet solaris cc. Jan 1, 2002: fflush() or fflush("") flushes all files and pipes. length(arrayname) returns number of elements; thanks to arnold robbins for suggestion. added a makefile.win to make it easier to build on windows. based on dan allen's buildwin.bat. Nov 16, 2001: added support for posix character class names like [:digit:], which are not exactly shorter than [0-9] and perhaps no more portable. thanks to dag-erling smorgrav for code. Feb 16, 2001: removed -m option; no longer needed, and it was actually broken (noted thanks to volker kiefel). Feb 10, 2001: fixed an appalling bug in gettok: any sequence of digits, +,-, E, e, and period was accepted as a valid number if it started with a period. this would never have happened with the lex version. other 1-character botches, now fixed, include a bare $ and a bare " at the end of the input. Feb 7, 2001: more (const char *) casts in b.c and tran.c to silence warnings.
2001-11-01Move pkg/ files into package's toplevel directoryzuntum3-3/+3
2001-09-09Deprecate NO_WRKSUBDIR, replacing it with an explicit assignment of:agc1-2/+2
WRKSRC= ${WRKDIR} This is much cleaner, much more indicative of what happens, and removes another of the negative definitions (NO_.* = value).
2001-04-19Move to sha1 digests, and add distfile sizes.agc1-2/+3
2001-04-17+ move the distfile digest/checksum value from files/md5 to distinfoagc1-1/+1
+ move the patch digest/checksum values from files/patch-sum to distinfo
2001-02-17Move the COMMENT from being in its own file to a definition in theagc2-2/+2
package Makefile.
2001-01-23Update to nawk-20001115.jdolecek2-4/+4
Changes (for detailed list, see FIXES which is part of distribution): * various bugfixes * allow \n explicitly in character classes * some 8bit cleanups
2000-04-20Update to 20th June 1999 sources, fixing PR 9935 from Greg Woods.agc2-4/+6
The checksum on the old package corresponded to the 19990620 source, whilst the package thought it was 19980211. Fix package name accordingly. Unfortunately, there is no version number or date on the awk distfile, so put the distfile in its own uniquely-named directory. Just for the record, there are a number of bug fixes in the 19990620 source: Jun 20, 1999: added *bp in gettok in lex.c; appears possible to exit function without terminating the string. thanks to russ cox. Jun 2, 1999: added function stdinit() to run to initialize files[] array, in case stdin, etc., are not constants; some compilers care. May 10, 1999: replaced the ERROR ... FATAL, etc., macros with functions based on vprintf, to avoid problems caused by overrunning fixed-size errbuf array. thanks to ralph corderoy for the impetus, and for pointing out a string termination bug in qstring as well. Apr 21, 1999: fixed bug that caused occasional core dumps with commandline variable with value ending in \. (thanks to nelson beebe for the test case.) Apr 16, 1999: with code kindly provided by Bruce Lilly, awk now parses /=/ and similar constructs more sensibly in more places. Apr 5, 1999: changed true/false to True/False in run.c to make it easier to compile with C++. Added some casts on malloc and realloc to be honest about casts; ditto. changed ltype int to long in struct rrow to reduce some 64-bit complaints; other changes scattered throughout for the same purpose. thanks to Nelson Beebe for these portability improvements. removed some horrible pointer-int casting in b.c and elsewhere by adding ptoi and itonp to localize the casts, which are all benign. fixed one incipient bug that showed up on sgi in 64-bit mode. reset lineno for new source file; include filename in error message. also fixed line number error in continuation lines. (thanks to Nelson Beebe for both of these.) Mar 24, 1999: Nelson Beebe notes that irix 5.3 yacc dies with a bogus error; use a newer version or switch to bison, since sgi is unlikely to fix it. Mar 5, 1999: changed isnumber to is_number to avoid the problem caused by versions of ctype.h that include the name isnumber. distribution now includes a script for building on a Mac, thanks to Dan Allen. Feb 20, 1999: fixed memory leaks in run.c (call) and tran.c (setfval). thanks to Stephen Nutt for finding these and providing the fixes. Jan 13, 1999: replaced srand argument by (unsigned int) in run.c; avoids problem on Mac and potentially on Unix & Windows. thanks to Dan Allen. added a few (int) casts to silence useless compiler warnings. e.g., errorflag= in run.c jump(). added proctab.c to the bundle outout; one less thing to have to compile out of the box. added calls to _popen and _pclose to the win95 stub for pipes (thanks to Steve Adams for this helpful suggestion). seems to work, though properties are not well understood by me, and it appears that under some circumstances the pipe output is truncated. Be careful. Oct 19, 1998: fixed a couple of bugs in getrec: could fail to update $0 after a getline var; because inputFS wasn't initialized, could split $0 on every character, a misleading diversion. fixed caching bug in makedfa: LRU was actually removing least often used. thanks to ross ridge for finding these, and for providing great bug reports.