xref: /OK3568_Linux_fs/kernel/drivers/net/wireless/rockchip_wlan/ssv6xxx/ver_info.pl (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1#!/usr/bin/perl
2use strict;
3
4my @tmp_string;
5my $svn_status;
6my $svn_filename;
7my $svn_version;
8
9my $svn_root = ".";
10my $svn_root_version;
11my $svn_root_url;
12
13my @header_defines = (
14    "#ifndef _SSV_VERSION_H_",
15    "#define _SSV_VERSION_H_",
16    "",
17);
18
19sub get_version {
20    foreach (@_) {
21        if($_ =~ m/^Last Changed Rev: (\d*)/) {
22            return $1;
23        }
24    }
25    # file doesn't exist on svn
26    return -1;
27}
28
29sub get_url {
30    foreach (@_) {
31        if($_ =~ m/^URL: (.*)/) {
32            return $1;
33        }
34    }
35    # file doesn't exist on svn
36    return -1;
37}
38
39printf("## script to generate version infomation header ##\n");
40
41# step-0: get root svn number
42$svn_root_version = get_version(qx(svn info $svn_root));
43
44if ($svn_root_version == -1) {
45    exit 0;
46}
47
48# step-1: get root svn url
49$svn_root_url = get_url(qx(svn info $svn_root));
50
51OUTPUT_HEADER:
52# step-3: output header files
53if (defined($ARGV[0])) {
54    open HEADER, ">", $ARGV[0];
55    select HEADER;
56}
57else {
58    print "Error! Please specify header file\n";
59}
60
61
62foreach (@header_defines) {
63    printf("%s\n", $_);
64}
65
66##
67printf("static u32 ssv_root_version = %d;\n\n", $svn_root_version);
68printf("#define SSV_ROOT_URl \"$svn_root_url\"\n");
69
70use Sys::Hostname;
71my $host = hostname();
72printf("#define COMPILERHOST \"$host\"\n");
73
74use POSIX qw(strftime);
75my $date = strftime "%m-%d-%Y-%H:%M:%S", localtime;
76printf("#define COMPILERDATE \"$date\"\n");
77##
78
79use Config;
80printf("#define COMPILEROS \"$Config{osname}\"\n");
81printf("#define COMPILEROSARCH \"$Config{archname}\"\n");
82
83printf("\n#endif\n\n");
84
85exit 1;
86