(*) first try at madwifi
[build.git] / spec2make.c
index 94c9306..77ddec9 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,10 +135,11 @@ 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';
-         printf ("%s-SOURCE := SOURCES/%s\n",package_name,basename(sourcename));
-         printf ("%s-CODEBASE := CODEBASES/%s\n",package_name,package_name);
+         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;
        }
       }
@@ -151,7 +152,7 @@ main(int argc, char *argv[])
   name = version = release = NULL;
   (void) headerNVR(pkg->header, &name, &version, &release);
   if (name && version && release)
-    printf("%s-SRPM := SRPMS/%s-%s-%s.src.rpm\n",
+    printf("%s.srpm := SRPMS/%s-%s-%s.src.rpm\n",
           package_name, name, version, release);
 
   /* Print non-empty packages */
@@ -159,16 +160,26 @@ 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",
-            package_name, arch, name, version, release, arch);
+      /* skip empty packages */
+      if (pkg->fileList) {
+       /* attach (add) rpm path to package */
+       printf("%s.rpms += RPMS/%s/%s-%s-%s.%s.rpm\n",
+              package_name, arch, name, version, release, arch);
+       /* convenience */
+       printf("%s.rpmnames += %s\n",
+              package_name, name);
+       /* attach path to rpm name */
+       printf("%s.rpm-path := RPMS/%s/%s-%s-%s.%s.rpm\n",
+              name,arch, name, version, release, arch);
+       /* attach package to rpm name for backward resolution - should be unique */
+       printf("%s.package := %s\n",
+              name,package_name);
+      }
     }
   }
 
@@ -180,10 +191,13 @@ main(int argc, char *argv[])
     for (nav=macros; *nav; nav++) {
       sprintf(macro,"%%{%s}",*nav);
       char *value = rpmExpand(macro,NULL);
-      printf ("%s-rpm-%s := %s\n",package_name,*nav,value);
+      printf ("%s.rpm-%s := %s\n",package_name,*nav,value);
     }
   }
   
+  /* export arch */
+  printf ("%s.rpm-arch := %s\n",package_name,target);
+
   spec = freeSpec(spec);
 
  done: