summaryrefslogtreecommitdiff
path: root/v4l
diff options
context:
space:
mode:
Diffstat (limited to 'v4l')
-rwxr-xr-xv4l/scripts/analyze_build.pl8
-rwxr-xr-xv4l/scripts/make_makefile.pl14
-rwxr-xr-xv4l/scripts/prep_commit_msg.pl19
3 files changed, 32 insertions, 9 deletions
diff --git a/v4l/scripts/analyze_build.pl b/v4l/scripts/analyze_build.pl
index 945377fa4..9a291a2e3 100755
--- a/v4l/scripts/analyze_build.pl
+++ b/v4l/scripts/analyze_build.pl
@@ -97,9 +97,15 @@ sub open_makefile($) {
next;
}
if (/(\S+)-objs\s*([:+]?)=\s*(\S.*?)\s*$/) {
- print STDERR "Should use ':=' in $file:$.\n$_\n" if ($check && $2 ne ':');
my @files = split(/\s+/, $3);
map { s|^(.*)\.o$|$dir/\1| } @files;
+ if ($2 eq '+') {
+ # Adding to files
+ print STDERR "Should use ':=' in $file:$.\n$_\n" if ($check && !exists $multi{"$dir/$1"});
+ push @files, @{$multi{"$dir/$1"}};
+ } else {
+ print STDERR "Setting objects twice in $file:$.\n$_\n" if ($check && exists $multi{"$dir/$1"});
+ }
$multi{"$dir/$1"} = \@files;
next;
}
diff --git a/v4l/scripts/make_makefile.pl b/v4l/scripts/make_makefile.pl
index e1e08b578..8711cc5a8 100755
--- a/v4l/scripts/make_makefile.pl
+++ b/v4l/scripts/make_makefile.pl
@@ -134,12 +134,12 @@ print OUT "\t\@strip --strip-debug \$(inst-m)\n\n";
while (my ($dir, $files) = each %instdir) {
print OUT "\t\@echo -e \"\\nInstalling \$(KDIR26)/$dir files:\"\n";
- print OUT "\t\@install -d \$(KDIR26)/$dir\n";
+ print OUT "\t\@install -d \$(DESTDIR)\$(KDIR26)/$dir\n";
print OUT "\t\@for i in ", join(' ', keys %$files), ";do ";
print OUT "if [ -e \"\$\$i\" ]; then echo -n \"\$\$i \";";
- print OUT " install -m 644 -c \$\$i \$(KDIR26)/$dir; fi; done; echo;\n\n";
+ print OUT " install -m 644 -c \$\$i \$(DESTDIR)\$(KDIR26)/$dir; fi; done; echo;\n\n";
}
-print OUT "\t/sbin/depmod -a \${KERNELRELEASE}\n\n";
+print OUT "\t/sbin/depmod -a \$(KERNELRELEASE) \$(if \$(DESTDIR),-b \$(DESTDIR))\n\n";
# Creating Remove rule
print OUT "media-rminstall::\n";
@@ -149,13 +149,13 @@ while ( my ($dir, $files) = each(%instdir) ) {
print OUT "\t\@echo -e \"\\nRemoving old \$(KDIR26)/$dir files:\"\n";
print OUT "\t\@files='", join(' ', keys %$files), "'; ";
- print OUT "for i in \$\$files;do if [ -e \$(KDIR26)/$dir/\$\$i ]; then ";
+ print OUT "for i in \$\$files;do if [ -e \$(DESTDIR)\$(KDIR26)/$dir/\$\$i ]; then ";
print OUT "echo -n \"\$\$i \";";
- print OUT " rm \$(KDIR26)/$dir/\$\$i; fi; done; ";
+ print OUT " rm \$(DESTDIR)\$(KDIR26)/$dir/\$\$i; fi; done; ";
- print OUT "for i in \$\$files;do if [ -e \$(KDIR26)/$dir/\$\$i.gz ]; then ";
+ print OUT "for i in \$\$files;do if [ -e \$(DESTDIR)\$(KDIR26)/$dir/\$\$i.gz ]; then ";
print OUT "echo -n \"\$\$i.gz \";";
- print OUT " rm \$(KDIR26)/$dir/\$\$i.gz; fi; done; echo;\n\n";
+ print OUT " rm \$(DESTDIR)\$(KDIR26)/$dir/\$\$i.gz; fi; done; echo;\n\n";
}
# Print dependencies of Makefile.media
diff --git a/v4l/scripts/prep_commit_msg.pl b/v4l/scripts/prep_commit_msg.pl
index f4047c6ba..819009c57 100755
--- a/v4l/scripts/prep_commit_msg.pl
+++ b/v4l/scripts/prep_commit_msg.pl
@@ -1,5 +1,10 @@
#!/usr/bin/perl
+my $diff = 'diff';
+if ($ARGV[0] eq '-q') {
+ $diff = 'qdiff';
+ shift;
+}
my $autopatch = shift;
# Get Hg username from environment
@@ -45,13 +50,25 @@ if ($user eq "") {
}
print "# Added/removed/changed files:\n";
-system "hg diff | diffstat -p1 -c";
+system "hg $diff | diffstat -p1 -c";
if (-s $autopatch) {
print "#\n# Note, a problem with your patch was detected! These changes were made\n";
print "# automatically: $autopatch\n";
system "diffstat -p0 -c $autopatch";
print "#\n# Please review these changes and see if they belong in your patch or not.\n";
}
+if ($diff eq 'qdiff') {
+ # Use existing mq patch logfile?
+ open IN, "hg qheader |";
+ my @header = <IN>;
+ close IN;
+ if ($#header > 0) {
+ # Use existing header
+ print @header;
+ exit;
+ }
+ # No header, use pre-made log message below
+}
print <<"EOF";
#
# For better log display, please keep a blank line after subject, after from,