public inbox for cygwin-apps-cvs@sourceware.org
help / color / mirror / Atom feed
* [setup - the official Cygwin setup program used to install Cygwin and keep it up to date] branch master, updated. release_2.876-8-g20cf793
@ 2016-12-07 12:59 jturney
0 siblings, 0 replies; only message in thread
From: jturney @ 2016-12-07 12:59 UTC (permalink / raw)
To: cygwin-apps-cvs
https://sourceware.org/git/gitweb.cgi?p=cygwin-apps/setup.git;h=20cf793baea56494dd7ab2221f33741303902f22
commit 20cf793baea56494dd7ab2221f33741303902f22
Author: Jon Turney <jon.turney@dronecode.org.uk>
Date: Wed Aug 31 11:31:22 2016 +0100
Allow setup to parse more than 3 versions from the setup.ini file
This recognizes any "[foo]" line as introducing the information for another
version, which doesn't have one of the trust levels [curr], [prev] or
[test], and so isn't automatically selected when setup is told to install
all packages at that trust level (by default, [curr]).
Setup already does all the necessary sorting in version order etc. to use
these additional versions.
The value of <foo> carries no meaning, but the setup.ini specification
will be amended to mandate the use of "[ver<digits>]".
* PackageTrust.h (trusts): Add TRUST_OTHER.
* inilex.ll: tokenize any other [version] as the T_OTHER token.
* iniparse.yy: Add T_OTHER token and set package trust
to TRUST_OTHER when it is used.
Signed-off-by: Jon Turney <jon.turney@dronecode.org.uk>
Diff:
---
PackageTrust.h | 2 +-
inilex.ll | 1 +
iniparse.yy | 3 ++-
3 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/PackageTrust.h b/PackageTrust.h
index 3e6801d..4904705 100644
--- a/PackageTrust.h
+++ b/PackageTrust.h
@@ -20,10 +20,10 @@
typedef enum
{
TRUST_UNKNOWN,
+ TRUST_OTHER,
TRUST_PREV,
TRUST_CURR,
TRUST_TEST,
- NTRUST
}
trusts;
diff --git a/inilex.ll b/inilex.ll
index 49bbfa6..7daca34 100644
--- a/inilex.ll
+++ b/inilex.ll
@@ -159,6 +159,7 @@ B64 [a-zA-Z0-9_-]
"[test]" return T_TEST;
"[exp]" return T_TEST;
"[prev]" return T_PREV;
+"["{STR}"]" return T_OTHER;
"(" return OPENBRACE;
")" return CLOSEBRACE;
diff --git a/iniparse.yy b/iniparse.yy
index da3e5d0..173c665 100644
--- a/iniparse.yy
+++ b/iniparse.yy
@@ -41,7 +41,7 @@ void add_correct_version();
%token SETUP_TIMESTAMP SETUP_VERSION PACKAGEVERSION INSTALL SOURCE SDESC LDESC
%token CATEGORY DEPENDS REQUIRES
%token APATH PPATH INCLUDE_SETUP EXCLUDE_PACKAGE DOWNLOAD_URL
-%token T_PREV T_CURR T_TEST
+%token T_PREV T_CURR T_TEST T_OTHER
%token INSTALLEDSIZE MAINTAINER PRIORITY
%token MD5 MD5LINE SHA512 SHA512LINE
%token DESCTAG DESCRIPTION FILESIZE ARCHITECTURE SOURCEPACKAGE
@@ -99,6 +99,7 @@ singleitem /* non-empty */
| T_PREV NL { iniBuilder->buildPackageTrust (TRUST_PREV); }
| T_CURR NL { iniBuilder->buildPackageTrust (TRUST_CURR); }
| T_TEST NL { iniBuilder->buildPackageTrust (TRUST_TEST); }
+ | T_OTHER NL { iniBuilder->buildPackageTrust (TRUST_OTHER); }
| PRIORITY STRING NL { iniBuilder->buildPriority ($2); }
| INSTALLEDSIZE STRING NL { iniBuilder->buildInstalledSize ($2); }
| MAINTAINER STRING NL { iniBuilder->buildMaintainer ($2); }
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2016-12-07 12:59 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-12-07 12:59 [setup - the official Cygwin setup program used to install Cygwin and keep it up to date] branch master, updated. release_2.876-8-g20cf793 jturney
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).