summaryrefslogtreecommitdiff
path: root/lang/gawk
diff options
context:
space:
mode:
authorseb <seb@pkgsrc.org>2002-04-04 13:58:25 +0000
committerseb <seb@pkgsrc.org>2002-04-04 13:58:25 +0000
commit9165b4364cc1ea7f3a57a13712c84bcccc585700 (patch)
tree8296798a6aaaf0e985002c04baf1d1a6d6119096 /lang/gawk
parent0ac549a0f719ce17789ddfb09ce6db7a8b2f9c7b (diff)
downloadpkgsrc-9165b4364cc1ea7f3a57a13712c84bcccc585700.tar.gz
Update to version 3.1.0 (lots of new features and bug fixes).
Enable this package for all platforms. Added GAWK_ENABLE_PORTALS to mk/bsd.pkg.defaults.mk to enable/disable gawk handling file names that start with `/p/' as a 4.4 BSD type portal file. Changes from 3.0.4 to 3.0.5: - bug fix release only. Changes from 3.0.5 to 3.0.6: - bug fix release only. Changes from 3.0.6 to 3.1.0: - A new PROCINFO array provides info about the process. The non-I/O /dev/xxx files are now obsolete, and their use always generates a warning. - A new `mktime' builtin function was added for creating time stamps. The `mktime' function written in awk was removed from the user's guide. - New `--gen-po' option creates GNU gettext .po files for strings marked with a leading underscore. - Gawk now completely interprets special file names internally, ignoring the existence of real /dev/stdin, /dev/stdout files, etc. - The mmap code was removed. It was a worthwhile experiment that just didn't work out. - The BINMODE variable is new; on non-UNIX systems it affects how gawk opens files for text vs. binary. - Gawk no longer supports `next file' as two words. - On systems that support it, gawk now sets the `close on exec' flag on all files and pipes it opens. This makes sure that child processes run via system() or pipes have plenty of file descriptors available. - If `--posix' is in effect, newlines are not allowed after ?:. - Weird OFMT/CONVFMT formats no longer cause fatal errors. - Diagnostics about array parameters now include the parameter's name, not just its number. - It is now possible to open a two-way pipe via the `|&' operator. See the discussion in the manual about putting `sort' into such a pipeline, though. (NOTE! This is borrowed from ksh: it is not the same as the same operator in csh!) - The close() function now takes an optional second string argument that allows closing one or the other end of the two-way pipe to a co-process. This is needed to use `sort' in a co-process, see the doc. - If TCP/IP is available, special file names beginning with `/inet' can be used with `|&' for IPC. - With `--enable-portals' on the configure command line, gawk will also treat file names that start with `/p/' as a 4.4 BSD type portal file, i.e., a two-way pipe for `|&'. - Unrecognized escapes, such as "\q" now always generate a warning. - The LINT variable is new; it provides dynamic control over the --lint option. - Lint warnings can be made fatal by using --lint=fatal or `LINT = "fatal"'. Use this if you're really serious about portable code. - A number of lint warnings have been added. Most notably, gawk will detect if a variable is used before assigned to. Warnings for when a string that isn't a number gets converted to a number are in the code but disabled; they seem to be too picky in practice. Also, gawk will now warn about function parameter names that shadow global variable names. - It is now possible to dynamically add builtin functions on systems that support dlopen. This facility is not (yet) as portable or well integrated as it might be. *** WARNING *** THIS FEATURE WILL EVOLVE! - Profiling has been added! A separate version of gawk, named pgawk, is built and generates a run-time execution profile. The --profile option can be used to change the default output file. In regular gawk, this option pretty-prints the parse tree. - Gawk has been internationalized, using GNU gettext. Translations for future distributions are most welcome. - New asort() function for sorting arrays. See the doc for details. - The match function takes an optional array third argument to hold the text matched by parenthesized sub-expressions. - The bit op functions and octal and hex source code constants are on by default, no longer a configure-time option. Recognition of non-decimal data is now enabled at runtime with --non-decimal-data command line option. - Internationalization features available at the awk level: new TEXTDOMAIN variable and bindtextdomain() and dcgettext() functions. printf formats may contain the "%2$3.5d" kind of notation for use in translations. See the texinfo manual for details. - The return value from close() has been rationalized. Most notably, closing something that wasn't open returns -1 but remains non-fatal. - The array effeciency change from 3.0.5 was reverted; the semantics were not right. Additionally, index values of previously stored elements can no longer change dynamically. - The new option --dump-variables dumps a list of all global variables and their final types and values to a file you give, or to `awkvars.out'. - Gawk now uses a recent version of random.c courtesy of the FreeBSD project. - The gawk source code now uses ANSI C function definitions (new style), with ansi2knr to translate code for old compilers. - `for (iggy in foo)' loops should be more robust now in the face of adding/deleting elements in the middle; they loop over just the elements that are present in the array when the loop starts.
Diffstat (limited to 'lang/gawk')
-rw-r--r--lang/gawk/Makefile25
-rw-r--r--lang/gawk/PLIST19
-rw-r--r--lang/gawk/distinfo10
-rw-r--r--lang/gawk/patches/patch-aa32
-rw-r--r--lang/gawk/patches/patch-ab21
-rw-r--r--lang/gawk/patches/patch-ac20
6 files changed, 61 insertions, 66 deletions
diff --git a/lang/gawk/Makefile b/lang/gawk/Makefile
index 3c740f4ff4e..b3fca0e7e47 100644
--- a/lang/gawk/Makefile
+++ b/lang/gawk/Makefile
@@ -1,7 +1,7 @@
-# $NetBSD: Makefile,v 1.5 2002/02/18 15:14:24 seb Exp $
+# $NetBSD: Makefile,v 1.6 2002/04/04 13:58:26 seb Exp $
# FreeBSD Id: Makefile,v 1.13 1999/01/27 07:41:14 fenner Exp $
-DISTNAME= gawk-3.0.4
+DISTNAME= gawk-3.1.0
CATEGORIES= lang
MASTER_SITES= ${MASTER_SITE_GNU:=gawk/}
@@ -9,11 +9,26 @@ MAINTAINER= bouyer@netbsd.org
HOMEPAGE= http://www.gnu.org/software/gawk/gawk.html
COMMENT= GNU awk
-ONLY_FOR_PLATFORM= SunOS-*-* # in NetBSD base system
-
-INFO_FILES= gawk.info
+# this is a lie we only need ${GETTEXT_PREFIX}/share/gettext/po/Makefile.in.in
+BUILD_USES_MSGFMT= YES
GNU_CONFIGURE= yes
+USE_BUILDLINK_ONLY= YES
+TEXINFO_OVERRIDE= YES
+MAKE_ENV+= PKGLOCALEDIR=${PKGLOCALEDIR}
+EVAL_PREFIX+= GETTEXT_PREFIX=gettext
+
+.include "../../mk/bsd.prefs.mk"
+
+.if ${GAWK_ENABLE_PORTALS} == "YES"
+CONFIGURE_ARGS+= --enable-portals
+.endif
+
+pre-configure:
+ ${RM} -f ${WRKSRC}/po/Makefile.in.in
+ ${CP} ${GETTEXT_PREFIX}/share/gettext/po/Makefile.in.in \
+ ${WRKSRC}/po/Makefile.in.in
+.include "../../devel/gettext-lib/buildlink.mk"
.include "../../mk/texinfo.mk"
.include "../../mk/bsd.pkg.mk"
diff --git a/lang/gawk/PLIST b/lang/gawk/PLIST
index 528b32cc779..7f42da542c0 100644
--- a/lang/gawk/PLIST
+++ b/lang/gawk/PLIST
@@ -1,24 +1,35 @@
-@comment $NetBSD: PLIST,v 1.2 2002/02/18 15:14:24 seb Exp $
+@comment $NetBSD: PLIST,v 1.3 2002/04/04 13:58:26 seb Exp $
bin/gawk
+bin/${PKGNAME}
bin/igawk
-@unexec ${INSTALL_INFO} --delete %D/info/gawk.info %D/info/dir
+bin/pgawk
+@unexec ${INSTALL_INFO} --delete --info-dir=%D/info %D/info/gawk.info
+@unexec ${INSTALL_INFO} --delete --info-dir=%D/info %D/info/gawkinet.info
info/gawk.info
-@exec ${INSTALL_INFO} %D/info/gawk.info %D/info/dir
+info/gawkinet.info
+@exec ${INSTALL_INFO} --info-dir=%D/info %D/info/gawk.info
+@exec ${INSTALL_INFO} --info-dir=%D/info %D/info/gawkinet.info
libexec/awk/grcat
libexec/awk/pwcat
man/man1/gawk.1
man/man1/igawk.1
share/awk/assert.awk
+share/awk/bits2str.awk
+share/awk/cliff_rand.awk
share/awk/ctime.awk
share/awk/ftrans.awk
share/awk/getopt.awk
share/awk/gettime.awk
share/awk/group.awk
share/awk/join.awk
-share/awk/mktime.awk
+share/awk/libintl.awk
share/awk/nextfile.awk
+share/awk/noassign.awk
share/awk/ord.awk
share/awk/passwd.awk
+share/awk/readable.awk
+share/awk/rewind.awk
share/awk/round.awk
+${PKGLOCALEDIR}/locale/he/LC_MESSAGES/gawk.mo
@dirrm share/awk
@dirrm libexec/awk
diff --git a/lang/gawk/distinfo b/lang/gawk/distinfo
index f6c49811f54..04985721af9 100644
--- a/lang/gawk/distinfo
+++ b/lang/gawk/distinfo
@@ -1,7 +1,5 @@
-$NetBSD: distinfo,v 1.2 2001/04/19 15:00:50 agc Exp $
+$NetBSD: distinfo,v 1.3 2002/04/04 13:58:26 seb Exp $
-SHA1 (gawk-3.0.4.tar.gz) = c22ab0ef08d80b6a4af821c8baffb9941b7f5e87
-Size (gawk-3.0.4.tar.gz) = 1027134 bytes
-SHA1 (patch-aa) = 7419e3a47941b5937cf2361741c447a5bee742a4
-SHA1 (patch-ab) = 05d0e2850f2f0d6a743c3aae2a2e0a7a56b55b42
-SHA1 (patch-ac) = f567b5af50cc5493a8d20fa4bb6a0c9383d8bca1
+SHA1 (gawk-3.1.0.tar.gz) = c41fd1d7277c839abc39727b5f9fa823f13ae17e
+Size (gawk-3.1.0.tar.gz) = 1614873 bytes
+SHA1 (patch-aa) = 32d5aa34c9198e850b695b16d40d677c77d90cb1
diff --git a/lang/gawk/patches/patch-aa b/lang/gawk/patches/patch-aa
index 3193901c21e..ab3c73b34c0 100644
--- a/lang/gawk/patches/patch-aa
+++ b/lang/gawk/patches/patch-aa
@@ -1,15 +1,27 @@
-$NetBSD: patch-aa,v 1.1.1.1 1999/12/10 17:33:39 bouyer Exp $
+$NetBSD: patch-aa,v 1.2 2002/04/04 13:58:27 seb Exp $
---- Makefile.in.old Thu Dec 9 12:39:13 1999
-+++ Makefile.in Thu Dec 9 12:40:18 1999
-@@ -179,10 +179,6 @@
- fullname=gawk-$(REL).`./gawk '{print $$3}' $(srcdir)/patchlevel.h` ; \
- $(INSTALL_PROGRAM) gawk $(bindir)/$$fullname ; \
- (cd $(bindir); $(LN) $$fullname gawk)
-- (cd $(bindir); \
+--- Makefile.in.orig Tue May 15 19:09:12 2001
++++ Makefile.in
+@@ -212,9 +212,9 @@
+ # stuff for compiling gawk/pgawk
+ DEFPATH = "\".:$(datadir)\""
+
+-DEFS = -DDEFPATH=$(DEFPATH) -DHAVE_CONFIG_H -DGAWK -DLOCALEDIR="\"$(datadir)/locale\""
++DEFS = -DDEFPATH=$(DEFPATH) -DHAVE_CONFIG_H -DGAWK -DLOCALEDIR="\"$(prefix)/${PKGLOCALEDIR}/locale\""
+
+-INCLUDES = -I. -I$(srcdir) -I$(srcdir)/intl
++INCLUDES = -I. -I$(srcdir)
+
+ # We want hard links for install-exec-hook, below
+ LN = ln
+@@ -755,9 +755,7 @@
+ (fullname=gawk-`./gawk --version | sed 1q | awk '{print $$3}'` ; \
+ cd $(DESTDIR)$(bindir); \
+ $(LN) gawk $$fullname ; \
- if [ ! -f awk ]; \
- then $(LN_S) gawk awk; \
- fi; exit 0)
- cd doc && $(MAKE) install
- cd awklib && $(MAKE) install
++ exit 0)
+ # Undo the above when uninstalling
+ uninstall-links:
diff --git a/lang/gawk/patches/patch-ab b/lang/gawk/patches/patch-ab
deleted file mode 100644
index 7f442808126..00000000000
--- a/lang/gawk/patches/patch-ab
+++ /dev/null
@@ -1,21 +0,0 @@
-$NetBSD: patch-ab,v 1.1.1.1 1999/12/10 17:33:39 bouyer Exp $
-
---- awklib/Makefile.in.old Wed Oct 7 13:33:20 1998
-+++ awklib/Makefile.in Thu Dec 9 12:50:12 1999
-@@ -27,6 +27,7 @@
- INSTALL = @INSTALL@
- INSTALL_PROGRAM = @INSTALL_PROGRAM@
- INSTALL_DATA = @INSTALL_DATA@
-+INSTALL_SCRIPT = @INSTALL_SCRIPT@
-
- CC = @CC@
- CFLAGS = @CFLAGS@
-@@ -73,7 +74,7 @@
- sed 's;/usr/local/libexec/awk;$(libexecdir);' < groupawk.in) > group.awk
-
- install: igawk $(AUXPROGS) $(AUXAWK)
-- $(INSTALL_PROGRAM) igawk $(bindir)/igawk
-+ $(INSTALL_SCRIPT) igawk $(bindir)/igawk
- for i in $(AUXPROGS) ; do \
- $(INSTALL_PROGRAM) $$i $(libexecdir)/$$i ; \
- done
diff --git a/lang/gawk/patches/patch-ac b/lang/gawk/patches/patch-ac
deleted file mode 100644
index bb5056eb345..00000000000
--- a/lang/gawk/patches/patch-ac
+++ /dev/null
@@ -1,20 +0,0 @@
-$NetBSD: patch-ac,v 1.1.1.1 1999/12/10 17:33:40 bouyer Exp $
-
---- configure.old Thu Dec 9 12:50:37 1999
-+++ configure Thu Dec 9 12:51:24 1999
-@@ -939,6 +939,7 @@
- # Use test -z because SunOS4 sh mishandles braces in ${var-val}.
- # It thinks the first close brace ends the variable substitution.
- test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
-+test -z "$INSTALL_SCRIPT" && INSTALL_PROGRAM='${INSTALL}'
-
- test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-
-@@ -3359,6 +3360,7 @@
- s%@CPP@%$CPP%g
- s%@INSTALL_PROGRAM@%$INSTALL_PROGRAM%g
- s%@INSTALL_DATA@%$INSTALL_DATA%g
-+s%@INSTALL_SCRIPT@%$INSTALL_SCRIPT%g
- s%@SET_MAKE@%$SET_MAKE%g
- s%@build@%$build%g
- s%@build_alias@%$build_alias%g