10 #define _RPMDS_INTERNAL
11 #define _RPMEVR_INTERNAL
17 #define progname __progname
30 rc = !(av[1][0] ==
'l');
32 rc = !(av[1][0] ==
'g');
34 rc = !(av[1][0] ==
'e' || av[1][1] ==
'e');
36 a->str =
_free(a->str);
37 b->str =
_free(b->str);
64 optCon = poptGetContext(argv[0], argc, (
const char **)argv,
optionsTable, 0);
65 while ((rc = poptGetNextOpt(optCon)) > 0)
68 av = poptGetArgs(optCon);
71 if (ac == 0 || !
strcmp(*av,
"-")) {
78 while ((arg = *av++) !=
NULL) {
81 if (poptParseArgvString(arg, &rac, &rav) || rac != 3) {
82 fprintf(stderr,
_(
"skipping malformed comparison: \"%s\"\n"), arg);
91 optCon = poptFreeContext(optCon);
int rpmEVRcompare(const EVR_t a, const EVR_t b)
Compare EVR containers for equality.
int main(int argc, const char **argv, char **envp)
static struct poptOption optionsTable[]
int rpmEVRparse(const char *evrstr, EVR_t evr)
Split EVR string into epoch, version, and release components.
memset(_r, 0, sizeof(*_r))
fprintf(stderr,"--> %s(%p,%p,%p) sig %p sigp %p\n", __FUNCTION__, dig, t, rsactx, sig, sigp)
int argvCount(const ARGV_t argv)
Return no.
Structure(s) used for dependency tag sets.
return strcmp(ame->name, bme->name)
int argvFgets(ARGV_t *argvp, void *_fd)
Read lines into an argv array.
static int pointRpmEVR(ARGV_t av)
static void
Print copy of spec file, filling in Group/Description/Summary from specspo.
static void * _free(const void *p)
Wrapper to free(3), hides const compilation noise, permit NULL, return NULL.