1
0
mirror of https://https.git.savannah.gnu.org/git/gnulib.git synced 2026-06-15 23:35:50 +00:00

37 Commits

Author SHA1 Message Date
Dmitry Selyutin 1a8c911ab4 parser: fix --avoid option handling 2018-07-03 22:59:46 +03:00
Dmitry Selyutin 56d8b43e2a parser: support empty --lgpl argument 2018-07-02 01:02:30 +03:00
Dmitry Selyutin 11f3d74c15 parser: enable vc_files by default 2018-06-29 00:24:26 +03:00
Dmitry Selyutin fdd742b223 minor code cleanup 2018-02-10 19:01:32 +03:00
Dmitry Selyutin ecea1586e6 simplify properties; improve performance 2018-02-04 13:13:13 +03:00
Dmitry Selyutin ab12fb43da parser: simplify mode parsing; fix --help error 2018-01-21 20:43:31 +03:00
Dmitry Selyutin c957e31386 parser: do not override --help option 2018-01-17 23:51:24 +03:00
Dmitry Selyutin 9976a64d11 config: autoconf options; version match; cleanup 2018-01-17 21:28:21 +03:00
Dmitry Selyutin 23f7be63fd generic cleanup; bug fixes; gnulib-comp generator
In order to implement correct gnulib-comp.m4 generation, the whole
conditional dependencies calculation algorithm had to be rewritten.
This patch fixes transitive closure algorithm so that it handles all
conditions correctly. Most of the transitive closure functionality was
separated into a standalone TransitiveClosure class to provide a fast
access to transitive closure results (thus incorporating almost all
functionality of the pygnulib.module.Database class).

The transitive closure is usually performed twice: the base one checks
dependencies for the base set of modules, while the full one also takes
the corresponding tests into account. A standalone Database class was
created to perform both closures in one shot and provide an easy access
to all required module and file lists. This allowed to incorporate some
code from the main script: dummy module handling, libtests.a presense,
module and file lists processing.

Yet another small change is that there is a special DummyModule object,
representing the well-known gnulib dummy module. It was created since
the original gnulib dummy module is unlikely to change quite often, so
it acts like special placeholder value.

Finally the naming convention was changed to longer names again.
2018-01-07 23:55:40 +03:00
Dmitry Selyutin aaf1afdcec parser: fix non-import options 2017-12-26 23:32:00 +03:00
Dmitry Selyutin c10fbab8aa module: gnumake support; code cleanup 2017-12-12 00:58:08 +03:00
Dmitry Selyutin d444fdc84d parser: fix naming for private constants 2017-12-03 17:34:56 +03:00
Dmitry Selyutin 31e219f6b3 support multiple override directories 2017-12-01 10:26:13 +03:00
Dmitry Selyutin aec5ec2d57 parser: group miscellaneous options in dict 2017-11-30 22:53:18 +03:00
Dmitry Selyutin 8464a64618 style: prefer using a single underscore 2017-10-22 23:13:50 +03:00
Dmitry Selyutin 1fac91c270 fix pylint warnings 2017-10-22 22:43:04 +03:00
Dmitry Selyutin 2bad953855 config: copymode, local_copymode, copyrights 2017-10-22 19:43:33 +03:00
Dmitry Selyutin e92f81a71c parser: cleanup; allow empty options (--import in wget2) 2017-09-28 20:54:31 +03:00
Dmitry Selyutin fb7321a032 deprecate LicenseSet (use a simple set); licenses constants 2017-09-28 09:58:25 +03:00
Dmitry Selyutin 03495253ef parser: use LicenseSet.LGPL() dict 2017-09-26 18:11:00 +03:00
Dmitry Selyutin 317f7bd984 fix incorrect initial values for bitwise flags 2017-09-26 18:11:00 +03:00
Mathieu Lirzin 1a02fcc3e7 pygnulib: don't use Enums
Enums are a recent features of Python. To maximize portability don't
use them.

* pygnulib/parser.py (CommandLine.Option): Don't inherit from enum.Flag.
* pygnulib/config.py (Option): Likewise.
2017-09-25 23:25:21 +03:00
Dmitry Selyutin 2f1ef3237b parser: support license set 2017-09-25 23:19:03 +03:00
Dmitry Selyutin ce3ebed7ec parser: fix verbosity option 2017-09-20 11:12:40 +03:00
Dmitry Selyutin 4bf8b286c1 parser: multiple bug fixes 2017-09-18 20:50:20 +03:00
Dmitry Selyutin 5594f15a75 parser: use true option for --with-tests 2017-09-18 20:50:20 +03:00
Dmitry Selyutin 5f430afb87 parser: fix const option value 2017-09-18 20:50:20 +03:00
Dmitry Selyutin efeb627eda parser: disable modules in update mode 2017-09-16 22:33:12 +03:00
Dmitry Selyutin c2a0b0d14d update documentation strings 2017-09-15 23:11:14 +03:00
Dmitry Selyutin 3322a8d077 parser: support "extract" options 2017-09-14 22:46:59 +03:00
Dmitry Selyutin 600f11c3ea parser: pass all arguments in one variable 2017-09-13 22:17:10 +03:00
Dmitry Selyutin 2066c9cf6e parser: initialize option values inside namespace 2017-09-13 20:50:03 +03:00
Dmitry Selyutin caabee5fc4 parser: return dictionary instead of config 2017-09-13 20:50:03 +03:00
Dmitry Selyutin d1279d823a dict improvements: iteration args, dict comprehension 2017-09-13 00:48:10 +03:00
Dmitry Selyutin d851108387 miscellaneous bug fixes and improvements 2017-09-13 00:26:34 +03:00
Dmitry Selyutin 49b02a1aa8 parser: enable options conflict once again
When the command-line parser was reworked, a mutually exclusive group
was deleted and check for conflicting options was eliminated as well.
The commit implements the lost feature in a more elegant way than it
has been done before, allowing more flexibility.
2017-09-12 21:36:19 +03:00
Dmitry Selyutin 51de570148 parser: isolate command-line parser; richer parse() method 2017-09-12 00:28:07 +03:00