You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
57 lines
1.1 KiB
57 lines
1.1 KiB
#!/usr/bin/perl -w
|
|
|
|
use File::Basename;
|
|
use File::Copy qw|cp|;
|
|
use File::Compare;
|
|
use Cwd;
|
|
|
|
my $here = getcwd;
|
|
my $outdir = $here;
|
|
my $tempfile = "$outdir/.Makefile.am.tmpfile";
|
|
|
|
# Update list of source files in $outdir/Makefile.am
|
|
open( MAKEFILE, "<$outdir/Makefile.am" ) or die;
|
|
my $makeFileData = '';
|
|
my $found = 0;
|
|
while (<MAKEFILE>) {
|
|
if (/^libsmoketqt_la_SOURCES/)
|
|
{
|
|
$found = 1;
|
|
$makeFileData .= "libsmoketqt_la_SOURCES = smokedata.cpp";
|
|
}
|
|
$makeFileData .= $_ if (!$found);
|
|
}
|
|
close MAKEFILE;
|
|
|
|
die "libsmoketqt_la_SOURCES not found" if (!$found);
|
|
|
|
open( MAKEFILE, ">$tempfile" ) or die;
|
|
print MAKEFILE $makeFileData;
|
|
|
|
my $count = 0;
|
|
opendir (FILES, $outdir) or die;
|
|
foreach $filename (readdir(FILES)) {
|
|
if ( $filename =~ /^x_.*\.cpp$/ ) {
|
|
if ( $count++ == 7 ) {
|
|
$count = 0;
|
|
print MAKEFILE " \\\n";
|
|
}
|
|
print MAKEFILE " $filename";
|
|
}
|
|
}
|
|
|
|
print MAKEFILE "\n";
|
|
close MAKEFILE;
|
|
closedir FILES;
|
|
|
|
if (compare("$tempfile", "$outdir/Makefile.am")) {
|
|
cp("$tempfile", "$outdir/Makefile.am");
|
|
print STDERR "Makefile.am updated.\n";
|
|
}
|
|
else {
|
|
print STDERR "Makefile.am unchanged.\n";
|
|
}
|
|
unlink $tempfile;
|
|
|
|
exit 0;
|