Line # Revision Author
1 1 moose #!/usr/bin/perl
2
3 #obj/SciQ.o dep/SciQ.d: src/SciQ.cpp include/SciQApp.h \
4 # include/SciQSettings.h
5
6 use warnings;
7 use strict;
8 use File::Spec::Functions qw/splitdir catdir/;
9 use File::Basename;
10
11 my $re = '<file[^>]*>([^<]+)<\/file>';
12
13 my $file = shift @ARGV;
14 my $depfile = catdir("dep/", basename($file,'.qrc') . ".qrc.d");
15 my $srcfile = catdir("qrc/", "qrc_" . basename($file,'.qrc') . ".cpp");
16
17 #print "file:'$file', dep:'$depfile', src:'$srcfile'\n";
18
19 die "failed to open '$depfile' for writing." if ! open DEPFH, ">$depfile";
20
21 if(-f $file) {
22 open FH, $file || exit 0;
23 print DEPFH "$srcfile $depfile: ";
24 for(<FH>) {
25 if(/$re/oi) {
26 my $fn = catdir(splitdir($1));
27 # print "$fn\n";
28 print DEPFH "\\\n qrc/$fn ";
29 }
30 }
31 close FH;
32 }
33
34 select STDOUT;
35 close DEPFH;