@@ -54,7 +54,8 @@ sub getline {
54
54
sub process {
55
55
my ($file ) =@_ ;
56
56
open (IN, $file ) or die " Unable to read file $file \n " ;
57
- my $name = $file ;
57
+ $file =~ s /\\ / \/ / ;
58
+ my ($name ) = $file =~ / .*[\/ ]([^\/ ]+)/ ;
58
59
$name =~ s /\. / _/ ;
59
60
print (OUT " \n // $file \n static const char ${name} [] = \" ${file} \\ x00\" " );
60
61
my $accum = " " ;
@@ -75,17 +76,21 @@ sub process {
75
76
76
77
# return file modification time
77
78
sub FileTime {
78
- my @s = stat ($_ [0]) or die " File \" ${_[0]} \" was not found \n " ;
79
+ my @s = stat ($_ [0]) or die ;
79
80
return $s [9];
80
81
}
81
82
82
83
84
+ # Get the directory of script file
85
+ $ThisExec = $0 ; # $PROGRAM_NAME does not works
86
+ ($root ) = $ThisExec =~ / ^(.+)[\\\/ ][^\/\\ ]+$ / ;
87
+ $root = " ." if !defined ($root );
88
+ $OUT = " $root /$OUT " ;
83
89
84
- opendir (DIR, " . " );
90
+ opendir (DIR, $root );
85
91
@filelist = readdir (DIR);
86
92
closedir (DIR);
87
93
88
- $ThisExec = $0 ; # $PROGRAM_NAME does not works
89
94
$ExecTime = FileTime($ThisExec );
90
95
91
96
my $rebuild = 0;
@@ -95,7 +100,7 @@ sub FileTime {
95
100
} else {
96
101
$OutTime = FileTime($OUT );
97
102
if ($ExecTime > $OutTime ) {
98
- print STDERR " Updated this script, rebuilding $OUT ...\n " ;
103
+ print STDERR " This script has been updated , rebuilding $OUT ...\n " ;
99
104
$rebuild = 1;
100
105
}
101
106
}
@@ -105,13 +110,13 @@ sub FileTime {
105
110
# verify individual file times
106
111
for $f (@filelist )
107
112
{
108
- if ($f =~ / .*\. ($EXTS )$ / ) {
109
- my $ShaderTime = FileTime($f );
113
+ # if ($f =~ /.*\.($EXTS)$/) {
114
+ my $ShaderTime = FileTime(" $root / $f " );
110
115
if ($ShaderTime > $OutTime ) {
111
- print STDERR " $f is updated, rebuilding $OUT ...\n " ;
116
+ print STDERR " $f has been updated, rebuilding $OUT ...\n " ;
112
117
$rebuild = 1;
113
118
}
114
- }
119
+ # }
115
120
}
116
121
}
117
122
@@ -130,7 +135,7 @@ sub FileTime {
130
135
131
136
for $f (@filelist ) {
132
137
if ($f =~ / .*\. ($EXTS )$ / ) {
133
- process($f );
138
+ process(" $root / $f " );
134
139
}
135
140
}
136
141
0 commit comments