From f9ae396a43e8aea22ca762b30c336850ba33f840 Mon Sep 17 00:00:00 2001 From: Panu Matilainen Date: Wed, 1 Sep 2010 18:07:19 +0300 Subject: [PATCH] Handle --nolang as another spec parse flag --- build/parseDescription.c | 4 +--- build/parsePreamble.c | 4 +--- build/parseSpec.c | 2 -- build/poptBT.c | 4 +--- build/rpmspec.h | 1 + 5 files changed, 4 insertions(+), 11 deletions(-) diff --git a/build/parseDescription.c b/build/parseDescription.c index 41f8c6a..c0226c3 100644 --- a/build/parseDescription.c +++ b/build/parseDescription.c @@ -10,8 +10,6 @@ #include "build/rpmbuild_internal.h" #include "debug.h" -extern int noLang; - int parseDescription(rpmSpec spec) { int nextPart = PART_ERROR; /* assume error */ @@ -105,7 +103,7 @@ int parseDescription(rpmSpec spec) } stripTrailingBlanksStringBuf(sb); - if (!(noLang && !rstreq(lang, RPMBUILD_DEFAULT_LANG))) { + if (!((spec->flags & RPMSPEC_NOLANG) && !rstreq(lang, RPMBUILD_DEFAULT_LANG))) { (void) headerAddI18NString(pkg->header, RPMTAG_DESCRIPTION, getStringBuf(sb), lang); } diff --git a/build/parsePreamble.c b/build/parsePreamble.c index 6a56335..717f077 100644 --- a/build/parsePreamble.c +++ b/build/parsePreamble.c @@ -615,8 +615,6 @@ if (multiToken) { \ return RPMRC_FAIL; \ } -extern int noLang; - /** * Check for inappropriate characters. All alphanums are considered sane. * @param spec spec @@ -714,7 +712,7 @@ static int handlePreambleTag(rpmSpec spec, Package pkg, rpmTag tag, case RPMTAG_PACKAGER: if (!*lang) { headerPutString(pkg->header, tag, field); - } else if (!(noLang && !rstreq(lang, RPMBUILD_DEFAULT_LANG))) + } else if (!((spec->flags & RPMSPEC_NOLANG) && !rstreq(lang, RPMBUILD_DEFAULT_LANG))) (void) headerAddI18NString(pkg->header, tag, field, lang); break; case RPMTAG_BUILDROOT: diff --git a/build/parseSpec.c b/build/parseSpec.c index 4f68fca..6689cda 100644 --- a/build/parseSpec.c +++ b/build/parseSpec.c @@ -517,8 +517,6 @@ static void addTargets(Package Pkgs) free(os); } -extern int noLang; /* XXX FIXME: pass as arg */ - static rpmSpec parseSpec(const char *specFile, rpmSpecFlags flags, const char *buildRoot, int recursing) { diff --git a/build/poptBT.c b/build/poptBT.c index 5024ee9..38451ba 100644 --- a/build/poptBT.c +++ b/build/poptBT.c @@ -41,8 +41,6 @@ struct rpmBuildArguments_s rpmBTArgs; extern int _fsm_debug; -int noLang = 0; - static int noBuild = 0; int _noDirTokens = 0; @@ -204,7 +202,7 @@ struct poptOption rpmBuildPoptTable[] = { { "nosignature", '\0', POPT_ARGFLAG_DOC_HIDDEN, 0, RPMCLI_POPT_NOSIGNATURE, N_("don't verify package signature(s)"), NULL }, - { "nolang", '\0', POPT_ARGFLAG_DOC_HIDDEN, &noLang, POPT_NOLANG, + { "nolang", '\0', POPT_ARGFLAG_DOC_HIDDEN, 0, POPT_NOLANG, N_("do not accept i18N msgstr's from specfile"), NULL}, { "rmsource", '\0', 0, 0, POPT_RMSOURCE, N_("remove sources when done"), NULL}, diff --git a/build/rpmspec.h b/build/rpmspec.h index 1ecfaaa..6eb87cb 100644 --- a/build/rpmspec.h +++ b/build/rpmspec.h @@ -28,6 +28,7 @@ typedef enum rpmSpecFlags_e { RPMSPEC_NONE = 0, RPMSPEC_ANYARCH = (1 << 0), RPMSPEC_FORCE = (1 << 1), + RPMSPEC_NOLANG = (1 << 2), } rpmSpecFlags; /** \ingroup rpmbuild -- 2.7.4