2023-09-22 00:10:50 +02:00
..
2023-09-22 00:10:50 +02:00

=======
libargp
=======

Argp is an interface for parsing unix-style argument vectors.

Argp provides features unavailable in the more commonly used getopt
interface. These features include automatically producing output in response to
the '--help' and '--version' options, as described in the GNU coding
standards. Using argp makes it less likely that programmers will neglect to
implement these additional options or keep them up to date.

Argp also provides the ability to merge several independently defined option
parsers into one, mediating conflicts between them and making the result appear
seamless. A library can export an argp option parser that user programs might
employ in conjunction with their own option parsers, resulting in less work for
the user programs. Some programs may use only argument parsers exported by
libraries, thereby achieving consistent and efficient option-parsing for
abstractions implemented by the libraries.

The header file <argp.h> should be included to use argp.

Source homepage:     https://www.gnu.org/s/gnulib/MODULES.html
Source download:     git checkout; see below
Upstream maintainer: bug-gnulib@gnu.org
Cygwin maintainer:   Andrew Schulman <schulman.andrew@epa.gov>
License:             LGPL; see COPYING and COPYING.LESSER for details.

Please address questions and bug reports to the Cygwin mailing list
<cygwin@cygwin.com>.

-------------------------------------------------------------------------

Cygwin-specific notes for libargp:

libargp is taken from Gnulib, which does not issue releases, so there is no
canonical URL for downloading the source.  To get the source, check out a
copy of Gnulib by running

	git clone git://git.savannah.gnu.org/gnulib.git

then extract the argp source by running e.g.

	gnulib-tool --dir=libargp --lib=libargp --libtool --create-testdir argp

The above will give you argp sources, and also a complete autoconf/automake
build environment, i.e. configure script.  But the source files extracted in
that way come with GPL licenses.  All of the source files can also be
licensed under LGPL; to get them in that form, run

	mkdir libargp-lgpl
	touch libargp-lgpl/configure.ac
	gnulib-tool --dir=libargp-lgpl --lib=libargp --libtool \
	  --import --lgpl argp

Then copy all of the source files from libargp-lgpl, which have LGPL
licenses, into libargp from the previous step:

	cp libargp-lgpl/lib/*.{c,h} libargp/gllib

Now all of the files in libargp have LGPL-compatible licenses.