* configure.in, configure, config_vc.awk: sdcc version number is now
[fw/sdcc] / configure_vc.awk
index b44c968557d6451bfaab9fa761d391fca56da9fa..f48422876e062001ee1066cf554afe3537638b87 100644 (file)
@@ -1,7 +1,7 @@
 #!/usr/bin/awk
 
 # configure_vc.awk - Genarate sdcc_vc.h using sdcc_vc_in.h as template
-#                    and insert the version number definitions from .version
+#                    and insert the version number definitions from configure.in
 #
 # Written By - Borut Razem borut.razem@siol.net
 #
 # Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 
 BEGIN {
-  FS=".";
-  getline <".version";
-  h = $1;
-  l = $2;
-  p = $3;
+  # get the values from configure.in
+
+  while (getline <"configure.in" > 0) {
+    if ($0 ~ "^AC_INIT\\(.*\\)") {
+      package = gensub("^AC_INIT\\(\\[([^]]*)\\].*", "\\1", "1", $0);
+      version = gensub("^AC_INIT\\(\\[[^]]*\\], \\[([^]]*)\\].*", "\\1", "1", $0);
+      bugreport = gensub("^AC_INIT\\(\\[[^]]*\\], \\[[^]]*\\], \\[([^]]*)\\].*", "\\1", "1", $0);
+
+      version_high = gensub(/^([^.]*).([^.]*).([^.]*)/, "\\1", "1", version)
+      version_lo = gensub(/^([^.]*).([^.]*).([^.]*)/, "\\2", "1", version)
+      version_patch = gensub(/^([^.]*).([^.]*).([^.]*)/, "\\3", "1", version)
+    }
+  }
+
   print "/*"
   print " * sdcc_vc.h"
   print " * Generated automatically by configure_vc.awk, DO NOT edit!"
@@ -36,22 +45,22 @@ BEGIN {
 }
 
 /^#undef SDCC_VERSION_HI$/ {
-  print("#define SDCC_VERSION_HI " h);
+  print("#define SDCC_VERSION_HI " version_high);
   next
 }
 
 /^#undef SDCC_VERSION_LO$/ {
-  print("#define SDCC_VERSION_LO " l);
+  print("#define SDCC_VERSION_LO " version_lo);
   next
 }
 
 /^#undef SDCC_VERSION_P$/ {
-  print("#define SDCC_VERSION_P " p);
+  print("#define SDCC_VERSION_P " version_patch);
   next
 }
 
 /^#undef SDCC_VERSION_STR$/ {
-  print("#define SDCC_VERSION_STR " "\"" h "." l "." p "\"");
+  print("#define SDCC_VERSION_STR " "\"" version "\"");
   next
 }