]> git.pld-linux.org Git - projects/cleanbuild.git/blobdiff - findbr
_binary_payload w1.gzdio
[projects/cleanbuild.git] / findbr
diff --git a/findbr b/findbr
index 05917a3e46a24ce0e7a4038ba22ce5229b33d248..d049390f4d5cc6ca4922c31decd6ab60dfe479a8 100755 (executable)
--- a/findbr
+++ b/findbr
@@ -4,22 +4,22 @@ use strict;
 use warnings;
 use IPC::Open2;
 use Cwd;
-use constant DOCKER => $ENV{'DOCKER_CONTAINER'} || 0;
+use constant DOCKER => -e '/.dockerenv';
 
 my $pwd = getcwd();
 # how to run poldek
 my @ignore = qw(vserver-packages python-devel-src);
 my @poldek;
 if (DOCKER) {
-       push(@poldek, "docker", "exec", DOCKER, "poldek");
+       push(@poldek, qw[poldek]);
 } else {
-       push(@poldek, q[sudo poldek -n th-x86_64-ready],
+       push(@poldek, qw[sudo poldek -n th-x86_64-ready],
                "--cachedir=$pwd/poldekcache",
                "--conf=$pwd/poldekconf/poldek.conf",
        );
 }
 push(@poldek, (
-       "--skip-installed", 
+       "--skip-installed",
        "-O", "ignore=" . (join " ", @ignore)
 ));
 
@@ -65,7 +65,7 @@ my %skip;
 # for m4 in *.m4; do R=$(rpm -qf $m4); R=${R%-*-*}; \
 #   awk -vr=$R '/^\s*(AC_DEFUN|AU_ALIAS)/ { gsub(/\].*/,""); gsub(/.*\[/,""); print r " " $0}' $m4; \
 # done | sort | awk '{print "\t\"" $2 "\" => \"" $1 "\","}'
-my %ac2br = do "findbr-ac2br";
+my %ac2br = do (DOCKER ? 'cleanbuild/findbr-ac2br' : 'findbr-ac2br');
 
 my %cmake2br = (
        "findkde4:44" => "kde4-kdelibs",
@@ -108,20 +108,18 @@ sub add_br
        print STDERR "\033[33;1madding: $pkg => $msg\033[0m\n";
 }
 
-use Data::Dumper;
 sub poldek_cmd
 {
        my $cmd = shift;
-       warn "Poldek: $cmd\n";
-       my $pid = open( READ, "-|", @poldek, "--shcmd=".$cmd );
 
-       my @read = <READ>;
-       close READ;
+       warn "Poldek: $cmd\n";
 
-       print "READ: ".Dumper \@read;
+       my @cmd = (@poldek, "--shcmd=".$cmd);
+       open my $fh, '-|', @cmd or die "$!: @cmd";
+       my @read = <$fh>;
+       close $fh or die $!;
 
-       return @read if wantarray;
-       return \@read;
+       return wantarray ? @read : \@read;
 }
 
 my $check_ac = 0;
@@ -459,6 +457,9 @@ while ( $_ = shift @lines ) {
                warn "Looking for docbook file $db\n";
                poldek_file( "/usr/share/sgml/*/$db" );
        }
+       if (m{Could not find HTML docbook.xsl}) {
+               add_br("docbook-style-xsl");
+       }
 
        if ( m{LaTeX Error: File `(\S+)' not found} ) {
                my $tex = $1;
@@ -668,6 +669,14 @@ while ( $_ = shift @lines ) {
                        poldek_file( "/usr/bin/$exec", "/bin/$exec" );
                }
        }
+
+
+       if (
+               m{Could not find (\S+)}
+       ) {
+               my $exec = $1;
+               poldek_file("/usr/bin/$exec", "/bin/$exec" );
+       }
 }
 
 
This page took 0.05532 seconds and 4 git commands to generate.