Menu

Tree [e59d9f] master /
 History

HTTPS access


File Date Author Commit
 _web 2021-01-19 mcollado mcollado [16d131] makeweb: detect errors and give messages
 abort 2024-01-14 Andrew J. Schorr Andrew J. Schorr [aac249] Update make_extension_directory.sh and */packag...
 aregex 2024-01-14 Andrew J. Schorr Andrew J. Schorr [aac249] Update make_extension_directory.sh and */packag...
 csv 2024-01-14 Andrew J. Schorr Andrew J. Schorr [aac249] Update make_extension_directory.sh and */packag...
 errno 2024-01-21 Andrew J. Schorr Andrew J. Schorr [48bc75] Fix a couple of minor portability issues in err...
 gd 2024-01-14 Andrew J. Schorr Andrew J. Schorr [aac249] Update make_extension_directory.sh and */packag...
 haru 2024-01-14 Andrew J. Schorr Andrew J. Schorr [aac249] Update make_extension_directory.sh and */packag...
 json 2024-07-26 Arnold D. Robbins Arnold D. Robbins [e59d9f] Updates in json man page.
 lib 2024-01-14 Andrew J. Schorr Andrew J. Schorr [aac249] Update make_extension_directory.sh and */packag...
 lmdb 2024-01-22 Andrew J. Schorr Andrew J. Schorr [0e7bf9] Patch lmdb and select rules for generating head...
 mbs 2024-01-14 Andrew J. Schorr Andrew J. Schorr [aac249] Update make_extension_directory.sh and */packag...
 mpfr 2024-01-14 Andrew J. Schorr Andrew J. Schorr [aac249] Update make_extension_directory.sh and */packag...
 nl_langinfo 2024-01-14 Andrew J. Schorr Andrew J. Schorr [aac249] Update make_extension_directory.sh and */packag...
 pgsql 2024-01-15 Andrew J. Schorr Andrew J. Schorr [31a4a5] Fix pgsql test to work with postgresql 11, and ...
 reclen 2024-01-16 Andrew J. Schorr Andrew J. Schorr [e138fc] New release 1.0.1 of reclen to roll up a bunch ...
 redis 2024-01-14 Andrew J. Schorr Andrew J. Schorr [aac249] Update make_extension_directory.sh and */packag...
 select 2024-01-22 Andrew J. Schorr Andrew J. Schorr [0e7bf9] Patch lmdb and select rules for generating head...
 shared 2024-01-16 Andrew J. Schorr Andrew J. Schorr [ae6711] Commit some old changes to shared/gawkext.m4 th...
 xml 2024-01-14 Andrew J. Schorr Andrew J. Schorr [aac249] Update make_extension_directory.sh and */packag...
 .gitignore 2014-10-31 Andrew J. Schorr Andrew J. Schorr [71f364] Restructure with each extension in a separate s...
 ChangeLog 2024-01-14 Andrew J. Schorr Andrew J. Schorr [aac249] Update make_extension_directory.sh and */packag...
 Development 2018-04-02 Manuel Collado Manuel Collado [011f6e] Fix title line of manpages and reformat plain t...
 Development_web 2021-01-13 mcollado mcollado [2fbf8b] Improve web generation machinery
 NEWS 2014-10-31 Andrew J. Schorr Andrew J. Schorr [71f364] Restructure with each extension in a separate s...
 README 2018-04-02 Manuel Collado Manuel Collado [011f6e] Fix title line of manpages and reformat plain t...
 build.sh 2017-12-02 Andrew J. Schorr Andrew J. Schorr [1bbbc6] The build.sh and check.sh scripts should run "m...
 build_all.sh 2014-11-14 Andrew J. Schorr Andrew J. Schorr [107df8] Fix m4 quoting bug in configure scripts (need t...
 check.sh 2017-12-02 Andrew J. Schorr Andrew J. Schorr [1bbbc6] The build.sh and check.sh scripts should run "m...
 check_all.sh 2014-11-14 Andrew J. Schorr Andrew J. Schorr [107df8] Fix m4 quoting bug in configure scripts (need t...
 dirloop.sh 2018-03-09 Andrew J. Schorr Andrew J. Schorr [2c511f] Patch top-level dirloop.sh script to ignore new...
 make_extension_directory.sh 2024-01-14 Andrew J. Schorr Andrew J. Schorr [aac249] Update make_extension_directory.sh and */packag...
 makeweb.sh 2021-01-19 mcollado mcollado [16d131] makeweb: detect errors and give messages
 publish.sh 2018-04-10 Manuel Collado Manuel Collado [9ec258] web: Fix errata and add the "publish.sh" tool.
 webTOC 2018-04-08 Manuel Collado Manuel Collado [ba137a] web: Global rebuild of the home page

Read Me

This is gawkextlib.  It contains several shared library extension packages for
gawk, as well as libgawkextlib containing some APIs that are useful for
extension packages.  These extension libraries require the use of gawk (GNU
Awk) version 4.1.1 or later, except for the select and json extensions, which
are currently supported only by gawk 4.2 (API version 2) and later.

The 1.1.0 releases of the extensions should work with both API versions 1
(prior to gawk 4.2) and 2 (starting with gawk 4.2). The API changes did not
affect gawkextlib.

Please download gawkextlib plus one or more individual extensions.  You should
build and install gawkextlib first.  After you untar each package, please cd
into its directory and build as follows:

    ./configure && make && make check && make install && echo Success.

On an rpm-based system, such as Fedora or RHEL or CentOS, you should download
each package's rpm spec file from the rpm-specs directory and place the
tarballs in the customary RPM source directory, which defaults to
$HOME/rpmbuild/SOURCES.  You can then say

    rpmbuild -bb gawkextlib.spec

After installing the gawkextlib rpm, you can then build the individual
extension rpms like so:

    rpmbuild -bb gawk-<extension>.spec

If you would like to build from git sources, please make sure that your
system has these packages installed: autoconf, automake, gettext, libtool,
and autopoint. On many systems, autopoint is part of the gettext package,
but some distributions, such as Ubuntu, place it in a separate package.

With that infrastructure in place, the steps are very similar:

    git clone git://git.code.sf.net/p/gawkextlib/code gawkextlib

Please build lib first, and then the extensions you want, like so:

    autoreconf -i && \
      ./configure && make && make check && make install && echo Success.

Note: if gawk is installed in a non-standard location, please call
`configure --with-gawk=/path/to/gawk`.  Similarly, if you do not
plan to install gawkextlib in the standard location, please use the `--prefix`
option.  So your configure command might look something like:

    configure --with-gawk=/path/to/gawk --prefix=/path/to/gawkextlib

Please use the mailing lists to report bugs or contribute new code.
We welcome the contribution of new extensions.

Developers: please refer to the Development file.  This file has more detailed
instructions for building from git, installing in non-standard locations,
creating new extensions, and testing packages.

Note: if you are using legacy xgawk, please upgrade to gawk version 4.1.1 or
later with these new packages.  There is only one known incompatibility between
xgawk and current gawk: in gawk 4.1 and later, the `@include` and `@load`
directives require double quotes around the filename.  With xgawk, there were
no quotes.  Please let us know if you find any other incompatibilities.