From 233a3e174db09d059a3efbd34a2121b306ea9c65 Mon Sep 17 00:00:00 2001 From: Robert Collins Date: Wed, 10 Jul 2002 14:36:42 +0000 Subject: [PATCH] 2002-07-10 Robert Collins * iniparse.y: Add basis for support for parsing a debian Sources file. * inilex.l: Ditto. --- ChangeLog | 5 +++++ inilex.l | 6 ++++++ iniparse.y | 11 +++++++++++ 3 files changed, 22 insertions(+) diff --git a/ChangeLog b/ChangeLog index 8c3a857d..d78c6cfb 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2002-07-10 Robert Collins + + * iniparse.y: Add basis for support for parsing a debian Sources file. + * inilex.l: Ditto. + 2002-07-09 Robert Collins Change custom container code for packagedb::packages to STL containers diff --git a/inilex.l b/inilex.l index b0049316..24633dfb 100644 --- a/inilex.l +++ b/inilex.l @@ -82,6 +82,12 @@ STR [a-zA-Z0-9_./:\+-]+ "Maintainer:" BEGIN (eolstate); return MAINTAINER; "Architecture:" return ARCHITECTURE; "Source:" return SOURCEPACKAGE; +"Binary:" return BINARYPACKAGE; +"Build-Depends:" return BUILDDEPENDS; +"Standards-Version:" return STANDARDSVERSION; +"Format:" return FORMAT; +"Directory:" return DIRECTORY; +"Files:" return FILES; "category:"|"Section:" return CATEGORY; "Priority:" return PRIORITY; diff --git a/iniparse.y b/iniparse.y index 09c9f7e7..12ab7df8 100644 --- a/iniparse.y +++ b/iniparse.y @@ -53,6 +53,7 @@ void add_correct_version(); %token SUGGESTS CONFLICTS REPLACES PROVIDES PACKAGENAME STRTOEOL PARAGRAPH LEX_EOF %token EMAIL COMMA OR NL AT %token OPENBRACE CLOSEBRACE EQUAL GT LT GTEQUAL LTEQUAL +%token BINARYPACKAGE BUILDDEPENDS STANDARDSVERSION FORMAT DIRECTORY FILES %% @@ -103,12 +104,16 @@ singleitem /* non-empty */ | MAINTAINER STRING NL { iniBuilder->buildMaintainer ($2); } | ARCHITECTURE STRING NL { iniBuilder->buildArchitecture ($2); } | FILESIZE STRING NL { iniBuilder->buildInstallSize($2); } + | FORMAT STRING NL { /* TODO */ } + | DIRECTORY STRING NL { /* TODO */ } + | STANDARDSVERSION STRING NL { /* TODO */ } | MD5LINE MD5 NL { iniBuilder->buildInstallMD5 ((unsigned char *)$2); } | SOURCEPACKAGE source NL | CATEGORY categories NL | INSTALL STRING { iniBuilder->buildPackageInstall ($2); } installmeta NL | SOURCE STRING STRING sourceMD5 NL {iniBuilder->buildPackageSource ($2, $3);} | PROVIDES { iniBuilder->buildBeginProvides(); } packagelist NL + | BINARYPACKAGE { /* TODO */ } packagelist NL | CONFLICTS { iniBuilder->buildBeginConflicts(); } versionedpackagelist NL | DEPENDS { iniBuilder->buildBeginDepends(); } versionedpackagelist NL | REQUIRES { iniBuilder->buildBeginDepends(); }versionedpackagelistsp NL @@ -116,6 +121,8 @@ singleitem /* non-empty */ | RECOMMENDS { iniBuilder->buildBeginRecommends(); } versionedpackagelist NL | SUGGESTS { iniBuilder->buildBeginSuggests(); } versionedpackagelist NL | REPLACES { iniBuilder->buildBeginReplaces(); } versionedpackagelist NL + | BUILDDEPENDS { /* todo */ } versionedpackagelist NL + | FILES NL SourceFilesList | DESCTAG mlinedesc | LEX_EOF { YYACCEPT; } | error { yyerror (String("unrecognized line ") @@ -196,4 +203,8 @@ operator /* non-empty */ | GTEQUAL { iniBuilder->buildPackageListOperator (PackageSpecification::MoreThanEquals); } ; +SourceFilesList: /* empty */ + | SourceFilesList MD5 STRING STRING NL + ; + %% -- 2.43.5