int failures = 0;
char *pkgstr;
int opt;
+ int required = 0;
char hash[ZPM_HASH_STRLEN+1];
char *args[3];
}
/* ZPM_PACKAGE_FILE ? */
- while ((opt = getopt(ac, av, "f:p:s:r:")) != -1) {
+ while ((opt = getopt(ac, av, "f:p:s:r:R")) != -1) {
switch (opt) {
- case 'f': db = optarg;
- break;
- case 'p': phase = optarg;
- break;
- case 's': script = optarg;
- break;
- case 'r': chroot = optarg;
- break;
+ case 'f': db = optarg; break;
+ case 'p': phase = optarg; break;
+ case 's': script = optarg; break;
+ case 'r': chroot = optarg; break;
+ case 'R': required = 1; break;
default:
usage();
exit(EXIT_FAILURE);
failures++;
}
} else {
- fprintf(stderr, "no script for %s %s\n", phase, pkgid);
- failures++;
+ if (required) {
+ fprintf(stderr, "no script for %s %s\n", phase, pkgid);
+ failures++;
+ }
}
free(pkgid);
} else {