bugfix - was getting too many devel packages
[build.git] / spec2make.c
index 94c9306..cf34c78 100644 (file)
@@ -123,7 +123,7 @@ main(int argc, char *argv[])
     char fullSource[PATH_MAX];
 
     strncpy(fullSource, source->fullSource, sizeof(fullSource));
-    printf("%s-TARBALL += SOURCES/%s\n", package_name, basename(fullSource));
+    printf("%s-TARBALLS += SOURCES/%s\n", package_name, basename(fullSource));
     /* computes the SOURCEDIR variable by removing .tar.gz or .tar.bz2 */
     { 
       char *suffixes[] = {".tar.gz",".tgz",".tar.bz2", NULL};
@@ -135,8 +135,9 @@ main(int argc, char *argv[])
        suffix_index=strstr(fullSource,*suffix);
        if (suffix_index) {
          char sourcename[PATH_MAX];
-         strncpy(sourcename,fullSource,suffix_index-fullSource);
-         *suffix_index='\0';
+         size_t len = (size_t)(suffix_index-fullSource);
+         strncpy(sourcename,fullSource,len);
+         sourcename[len]='\0';
          printf ("%s-SOURCE := SOURCES/%s\n",package_name,basename(sourcename));
          printf ("%s-CODEBASE := CODEBASES/%s\n",package_name,package_name);
          break;
@@ -159,16 +160,19 @@ main(int argc, char *argv[])
     name = version = release = arch = NULL;
     (void) headerNEVRA(pkg->header, &name, &unused, &version, &release, &arch);
     if (name && version && release && arch) {
-      if (!pkg->fileList)
-       printf("# Empty\n# ");
-
       if (target != NULL) {
        if (strcmp(arch,target)!=0) {
          arch=target;
        }
       }
-      printf("%s-RPM += RPMS/%s/%s-%s-%s.%s.rpm\n",
+      printf("%s %s-RPMS += RPMS/%s/%s-%s-%s.%s.rpm\n",
+            (pkg->fileList?"":"# Empty "),
             package_name, arch, name, version, release, arch);
+      if (strstr (name,"-devel")!=NULL) {
+       printf("%s %s-DEVEL-RPMS += RPMS/%s/%s-%s-%s.%s.rpm\n",
+            (pkg->fileList?"":"# Empty "),
+              package_name, arch, name, version, release, arch);
+      }
     }
   }