]> git.zerfleddert.de Git - proxmark3-svn/blobdiff - tools/mkversion.pl
Updated proxmark research with Holiman's loclass framework
[proxmark3-svn] / tools / mkversion.pl
index 4b77151713a3fc3978a32af732af7561f8145a51..6f2eff69bdc6031d599b2b9af74dc8370075fa05 100644 (file)
@@ -11,7 +11,6 @@ $ENV{'LC_ALL'} = "C";
 $ENV{'LANG'} = "C";
 
 my $svnversion = 0;
-my $present = 0;
 my $clean = 2;
 my @compiletime = gmtime();
 
@@ -19,13 +18,12 @@ my @compiletime = gmtime();
 if(open(SVNINFO, "svn info $main_dir|")) {
        while(<SVNINFO>) {
                if (/^Last Changed Rev: (.*)/) {
-                       $present = 1;
                        $svnversion = $1;
                        ## last; # Do not abort here, since SVN tends to complain about a Broken pipe
                }
        }
        close(SVNINFO);
-       
+
        if(open(SVNSTATUS, "svn status $main_dir|")) {
                $clean = 1;
                while(<SVNSTATUS>) {
@@ -36,16 +34,16 @@ if(open(SVNINFO, "svn info $main_dir|")) {
                }
                close(SVNINFO);
        }
-       
+
 } else {
-       # Strategy two: look for .svn/entries. The third line should be "dir", the fourth line should contain the current
+       # Strategy two: look for .svn/entries. The third line should be "dir", the fourth line should contain
+       #  the currently checked out revision, the eleventh line should contain the last changed revision.
        #  revision.
        if(open(ENTRIES, "$main_dir/.svn/entries")) {
                my $i = 1;
                while(<ENTRIES>) {
                        last if($i == 3 and !/^dir/);
-                       if($i == 4 and /^([0-9]*)/) {
-                               $present = 1;
+                       if($i == 11 and /^([0-9]*)/) {
                                $svnversion = $1;
                        }
                        $i++;
@@ -56,14 +54,15 @@ if(open(SVNINFO, "svn info $main_dir|")) {
 $compiletime[4] += 1;
 $compiletime[5] += 1900;
 my $ctime = sprintf("%6\$04i-%5\$02i-%4\$02i %3\$02i:%2\$02i:%1\$02i", @compiletime);
+$svnversion=~ s/(^\s+|\s+$)//g;
 
 print <<EOF
-#include <proxmark3.h>
+#include "proxmark3.h"
 /* Generated file, do not edit */
-struct version_information __attribute__((section(".version_information"))) version_information = {
+const struct version_information __attribute__((section(".version_information"))) version_information = {
        VERSION_INFORMATION_MAGIC,
        1,
-       $present,
+       1,
        $clean,
        "svn $svnversion",
        "$ctime",
Impressum, Datenschutz