]> pd.if.org Git - zpackage/blobdiff - zpm-runscript.c
ignore missing runscript by default
[zpackage] / zpm-runscript.c
index e6b1af50f51d97c146c361945488fc50cca4a2ed..84764b6acf2b4d7ee46193540c7cd33a583953ee 100644 (file)
@@ -94,6 +94,7 @@ int main(int ac, char **av){
        int failures = 0;
        char *pkgstr;
        int opt;
+       int required = 0;
 
        char hash[ZPM_HASH_STRLEN+1];
        char *args[3];
@@ -110,16 +111,13 @@ int main(int ac, char **av){
        }
        /* 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);
@@ -169,8 +167,10 @@ int main(int ac, char **av){
                                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 {