10 #define _RPMEVR_INTERNAL
29 if (Flags & RPMSENSE_PROVIDES) {
33 extra = Flags & RPMSENSE_FIND_PROVIDES;
34 }
else if (Flags & RPMSENSE_OBSOLETES) {
38 }
else if (Flags & RPMSENSE_CONFLICTS) {
42 }
else if (Flags & RPMSENSE_TRIGGER) {
47 extra = Flags & RPMSENSE_TRIGGER;
52 extra = Flags & _ALL_REQUIRES_MASK;
59 #if defined(RPM_VENDOR_MANDRIVA)
68 duplicate = !strncmp(NEVR, N, len) && !
strcmp(NEVR+len+1, EVR);
83 const char ** versions =
NULL;
91 versions = he->
p.
argv;
104 if (
strcmp(names[len], N))
107 #if defined(RPM_VENDOR_MANDRIVA)
112 if (Flags & RPMSENSE_TRIGGER)
115 if (flagtag && versions !=
NULL) {
118 if(*EVR && !*versions[len]) {
123 he->
p.
argv = (
void *) &Flags;
142 he->
tag = versiontag;
144 he->
p.
argv = versions;
150 if (flagtag && versions !=
NULL &&
155 if (indextag && indexes !=
NULL && indexes[len] != index)
164 names =
_free(names);
165 versions =
_free(versions);
166 flags =
_free(flags);
167 indexes =
_free(indexes);
183 he->
tag = versiontag;
193 he->
p.
ui32p = (
void *) &Flags;
214 char * reqname =
alloca(
sizeof(
"rpmlib()") + strlen(feature));
#define RPMSENSE_SENSEMASK
EVR_t rpmEVRnew(uint32_t Flags, int initialize)
Create a new EVR container.
int addReqProv(Spec spec, Header h, rpmTag tagN, const char *N, const char *EVR, rpmsenseFlags Flags, rpmuint32_t index)
Add dependency to header, filtering duplicates.
int rpmEVRparse(const char *evrstr, EVR_t evr)
Split EVR string into epoch, version, and release components.
memset(_r, 0, sizeof(*_r))
enum evrFlags_e rpmsenseFlags
The structure used to store values parsed from a spec file.
int rpmEVRoverlap(EVR_t a, EVR_t b)
Compare EVR containers for overlap.
EVR_t rpmEVRfree(EVR_t evr)
Destroy an EVR container.
return strcmp(ame->name, bme->name)
This is the only module users of librpmbuild should need to include.
char * stpcpy(char *dest, const char *src)
static void
Print copy of spec file, filling in Group/Description/Summary from specspo.
int rpmlibNeedsFeature(Header h, const char *feature, const char *featureEVR)
Add rpmlib feature dependency.
static void * _free(const void *p)
Wrapper to free(3), hides const compilation noise, permit NULL, return NULL.