|
Bernhard M. Wiedemann |
1250f9 |
--- ./build/parseReqs.c.orig 2017-10-05 10:04:56.887602165 +0000
|
|
Bernhard M. Wiedemann |
1250f9 |
+++ ./build/parseReqs.c 2017-12-01 16:00:06.956343096 +0000
|
|
Bernhard M. Wiedemann |
1250f9 |
@@ -42,7 +42,7 @@ static rpmRC checkEpoch(const char *s, c
|
|
Bernhard M. Wiedemann |
1250f9 |
return RPMRC_OK;
|
|
Bernhard M. Wiedemann |
1250f9 |
}
|
|
Bernhard M. Wiedemann |
1250f9 |
|
|
Bernhard M. Wiedemann |
1250f9 |
-static rpmRC checkDep(rpmSpec spec, char *N, char *EVR, char **emsg)
|
|
Bernhard M. Wiedemann |
1250f9 |
+static rpmRC checkDep(rpmSpec spec, rpmsenseFlags tagflags, char *N, char *EVR, char **emsg)
|
|
Bernhard M. Wiedemann |
1250f9 |
{
|
|
Bernhard M. Wiedemann |
1250f9 |
/*
|
|
Bernhard M. Wiedemann |
1250f9 |
* Tokens must begin with alphanumeric, _, or /, but we don't know
|
|
Bernhard M. Wiedemann |
1250f9 |
@@ -65,6 +65,11 @@ static rpmRC checkDep(rpmSpec spec, char
|
|
Bernhard M. Wiedemann |
1250f9 |
|
|
Bernhard M. Wiedemann |
1250f9 |
if (rpmExpandNumeric("%{?_wrong_version_format_terminate_build}"))
|
|
Bernhard M. Wiedemann |
1250f9 |
return RPMRC_FAIL;
|
|
Bernhard M. Wiedemann |
1250f9 |
+ if (tagflags & (RPMSENSE_FIND_REQUIRES|RPMSENSE_FIND_PROVIDES))
|
|
Bernhard M. Wiedemann |
1250f9 |
+ rpmlog(RPMLOG_WARNING, "%s\n", *emsg);
|
|
Bernhard M. Wiedemann |
1250f9 |
+ else
|
|
Bernhard M. Wiedemann |
1250f9 |
+ rpmlog(RPMLOG_WARNING, _("line %d: %s: %s\n"), spec->lineNum, *emsg, spec->line);
|
|
Bernhard M. Wiedemann |
1250f9 |
+ *emsg = _free(*emsg);
|
|
Bernhard M. Wiedemann |
1250f9 |
}
|
|
Bernhard M. Wiedemann |
1250f9 |
}
|
|
Bernhard M. Wiedemann |
1250f9 |
return RPMRC_OK;
|
|
Bernhard M. Wiedemann |
1250f9 |
@@ -72,6 +77,7 @@ static rpmRC checkDep(rpmSpec spec, char
|
|
Bernhard M. Wiedemann |
1250f9 |
|
|
Bernhard M. Wiedemann |
1250f9 |
struct parseRCPOTRichData {
|
|
Bernhard M. Wiedemann |
1250f9 |
rpmSpec spec;
|
|
Bernhard M. Wiedemann |
1250f9 |
+ rpmsenseFlags tagflags;
|
|
Bernhard M. Wiedemann |
1250f9 |
StringBuf sb;
|
|
Bernhard M. Wiedemann |
1250f9 |
};
|
|
Bernhard M. Wiedemann |
1250f9 |
|
|
Bernhard M. Wiedemann |
1250f9 |
@@ -109,7 +115,7 @@ static rpmRC parseRCPOTRichCB(void *cbda
|
|
Bernhard M. Wiedemann |
1250f9 |
appendStringBuf(sb, rel);
|
|
Bernhard M. Wiedemann |
1250f9 |
appendStringBuf(sb, EVR);
|
|
Bernhard M. Wiedemann |
1250f9 |
}
|
|
Bernhard M. Wiedemann |
1250f9 |
- rc = checkDep(data->spec, N, EVR, emsg);
|
|
Bernhard M. Wiedemann |
1250f9 |
+ rc = checkDep(data->spec, data->tagflags, N, EVR, emsg);
|
|
Bernhard M. Wiedemann |
1250f9 |
_free(N);
|
|
Bernhard M. Wiedemann |
1250f9 |
_free(EVR);
|
|
Bernhard M. Wiedemann |
1250f9 |
} else if (type == RPMRICH_PARSE_OP) {
|
|
Bernhard M. Wiedemann |
1250f9 |
@@ -223,6 +229,7 @@ rpmRC parseRCPOT(rpmSpec spec, Package p
|
|
Bernhard M. Wiedemann |
1250f9 |
goto exit;
|
|
Bernhard M. Wiedemann |
1250f9 |
}
|
|
Bernhard M. Wiedemann |
1250f9 |
data.spec = spec;
|
|
Bernhard M. Wiedemann |
1250f9 |
+ data.tagflags = tagflags;
|
|
Bernhard M. Wiedemann |
1250f9 |
data.sb = newStringBuf();
|
|
Bernhard M. Wiedemann |
1250f9 |
if (rpmrichParseForTag(&r, &emsg, parseRCPOTRichCB, &data, nametag) != RPMRC_OK) {
|
|
Bernhard M. Wiedemann |
1250f9 |
freeStringBuf(data.sb);
|
|
Bernhard M. Wiedemann |
1250f9 |
@@ -274,7 +281,7 @@ rpmRC parseRCPOT(rpmSpec spec, Package p
|
|
Bernhard M. Wiedemann |
1250f9 |
}
|
|
Bernhard M. Wiedemann |
1250f9 |
|
|
Bernhard M. Wiedemann |
1250f9 |
/* check that dependency is well-formed */
|
|
Bernhard M. Wiedemann |
1250f9 |
- if (checkDep(spec, N, EVR, &emsg))
|
|
Bernhard M. Wiedemann |
1250f9 |
+ if (checkDep(spec, tagflags, N, EVR, &emsg))
|
|
Bernhard M. Wiedemann |
1250f9 |
goto exit;
|
|
Bernhard M. Wiedemann |
1250f9 |
|
|
Bernhard M. Wiedemann |
1250f9 |
if (nametag == RPMTAG_FILETRIGGERNAME ||
|
|
Bernhard M. Wiedemann |
1250f9 |
--- ./macros.in.orig 2017-12-01 16:00:02.705355493 +0000
|
|
Bernhard M. Wiedemann |
1250f9 |
+++ ./macros.in 2017-12-01 16:00:06.957343106 +0000
|
|
Bernhard M. Wiedemann |
1250f9 |
@@ -456,7 +456,7 @@ package or when debugging this package.\
|
|
Bernhard M. Wiedemann |
1250f9 |
%_invalid_encoding_terminates_build 0
|
|
Bernhard M. Wiedemann |
1250f9 |
|
|
Bernhard M. Wiedemann |
1250f9 |
# Should invalid version format in requires, provides, ... terminate a build?
|
|
Bernhard M. Wiedemann |
1250f9 |
-%_wrong_version_format_terminate_build 1
|
|
Bernhard M. Wiedemann |
1250f9 |
+%_wrong_version_format_terminate_build 0
|
|
Bernhard M. Wiedemann |
1250f9 |
|
|
Bernhard M. Wiedemann |
1250f9 |
#
|
|
Bernhard M. Wiedemann |
1250f9 |
# Should rpm try to download missing sources at build-time?
|