3
0
Fork 0
forked from mirrors/nixpkgs

* Support *.pc.in files that are not in the top directory of the package.

svn path=/nixpkgs/branches/x-updates/; revision=22659
This commit is contained in:
Eelco Dolstra 2010-07-19 08:59:05 +00:00
parent 030981c1e7
commit 0d225fb86a
2 changed files with 11 additions and 12 deletions

View file

@ -1534,8 +1534,8 @@ let
url = mirror://xorg/individual/driver/xf86-video-intel-2.12.0.tar.bz2; url = mirror://xorg/individual/driver/xf86-video-intel-2.12.0.tar.bz2;
sha256 = "1pzzzpw0i55m6s48ac8c3a0453rskqrdb4v6s9dq5bvj3ywpysz1"; sha256 = "1pzzzpw0i55m6s48ac8c3a0453rskqrdb4v6s9dq5bvj3ywpysz1";
}; };
buildInputs = [pkgconfig dri2proto fontsproto glproto libdrm libpciaccess randrproto renderproto libX11 libxcb libXext xextproto xf86driproto libXfixes xorgserver xproto libXvMC ]; buildInputs = [pkgconfig dri2proto fontsproto glproto libdrm libpciaccess randrproto renderproto libX11 xcbutil libxcb libXext xextproto xf86driproto libXfixes xorgserver xproto libXvMC ];
})) // {inherit dri2proto fontsproto glproto libdrm libpciaccess randrproto renderproto libX11 libxcb libXext xextproto xf86driproto libXfixes xorgserver xproto libXvMC ;}; })) // {inherit dri2proto fontsproto glproto libdrm libpciaccess randrproto renderproto libX11 xcbutil libxcb libXext xextproto xf86driproto libXfixes xorgserver xproto libXvMC ;};
xf86videomach64 = (stdenv.mkDerivation ((if overrides ? xf86videomach64 then overrides.xf86videomach64 else x: x) { xf86videomach64 = (stdenv.mkDerivation ((if overrides ? xf86videomach64 then overrides.xf86videomach64 else x: x) {
name = "xf86-video-mach64-6.8.2"; name = "xf86-video-mach64-6.8.2";
@ -1974,8 +1974,8 @@ let
url = mirror://xorg/individual/app/xlsclients-1.1.0.tar.bz2; url = mirror://xorg/individual/app/xlsclients-1.1.0.tar.bz2;
sha256 = "037sph4zyar6061445xmf1bqrmm00k6qr9lpypjnrx4ragsm2nzr"; sha256 = "037sph4zyar6061445xmf1bqrmm00k6qr9lpypjnrx4ragsm2nzr";
}; };
buildInputs = [pkgconfig libxcb ]; buildInputs = [pkgconfig libxcb xcbutil ];
})) // {inherit libxcb ;}; })) // {inherit libxcb xcbutil ;};
xmessage = (stdenv.mkDerivation ((if overrides ? xmessage then overrides.xmessage else x: x) { xmessage = (stdenv.mkDerivation ((if overrides ? xmessage then overrides.xmessage else x: x) {
name = "xmessage-1.0.3"; name = "xmessage-1.0.3";

View file

@ -46,8 +46,7 @@ while (<>) {
die unless defined $1; die unless defined $1;
my $pkg = $1; my $pkg = $1;
$pkg =~ s/-//g; $pkg =~ s/-//g;
#next unless $pkg eq "printproto"; #next unless $pkg eq "xcbutil";
#print "$pkg\n";
$tarball =~ /\/([^\/]*)\.tar\.bz2$/; $tarball =~ /\/([^\/]*)\.tar\.bz2$/;
my $pkgName = $1; my $pkgName = $1;
@ -77,25 +76,25 @@ while (<>) {
my $pkgDir = `echo $tmpDir/*`; my $pkgDir = `echo $tmpDir/*`;
chomp $pkgDir; chomp $pkgDir;
my $provides = `cd $pkgDir && ls *.pc.in`; my $provides = `find $pkgDir -name "*.pc.in"`;
my @provides2 = split '\n', $provides; my @provides2 = split '\n', $provides;
my @requires = (); my @requires = ();
print "PROVIDES @provides2\n\n";
foreach my $pcFile (@provides2) { foreach my $pcFile (@provides2) {
my $pc = $pcFile; my $pc = $pcFile;
$pc =~ s/.*\///;
$pc =~ s/.pc.in//; $pc =~ s/.pc.in//;
die "collission with $pcMap{$pc}" if defined $pcMap{$pc}; print "PROVIDES $pc\n";
die "collision with $pcMap{$pc}" if defined $pcMap{$pc};
$pcMap{$pc} = $pkg; $pcMap{$pc} = $pkg;
print "$pkgDir/$pcFile\n"; open FOO, "<$pcFile" or die;
open FOO, "<$pkgDir/$pcFile" or die;
while (<FOO>) { while (<FOO>) {
if (/Requires:(.*)/) { if (/Requires:(.*)/) {
my @reqs = split ' ', $1; my @reqs = split ' ', $1;
foreach my $req (@reqs) { foreach my $req (@reqs) {
next unless $req =~ /^[a-z]+$/; next unless $req =~ /^[a-z]+$/;
print "REQUIRE (from $pcFile): $req\n"; print "REQUIRE (from $pc): $req\n";
push @requires, $req; push @requires, $req;
} }
} }