From 9cf41988ff6cf0647ec4850f25415ba66845fd70 Mon Sep 17 00:00:00 2001 From: Alexander Bokovoy Date: Tue, 11 Apr 2006 11:37:52 +0000 Subject: r15036: Add out of tree build support and see how buildfarm will respond to make constructs (This used to be commit 9329854489e2c231ffb7986d39009e0936873c11) --- source4/script/installheader.pl | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) (limited to 'source4/script/installheader.pl') diff --git a/source4/script/installheader.pl b/source4/script/installheader.pl index 808ab8d433..e0597ab381 100755 --- a/source4/script/installheader.pl +++ b/source4/script/installheader.pl @@ -2,16 +2,18 @@ # Copyright (C) 2006 Jelmer Vernooij use strict; use File::Basename; +use Cwd 'abs_path'; my $includedir = shift; - +my $builddir = abs_path($ENV{samba_builddir}); +my $srcdir = abs_path($ENV{samba_srcdir}); sub read_headermap($) { my ($fn) = @_; my %map = (); my $ln = 0; - open(MAP, ") { $ln++; s/#.*$//g; @@ -28,14 +30,19 @@ sub read_headermap($) return %map; } -my %map = read_headermap("headermap.txt"); +my %map = read_headermap("$srcdir/headermap.txt"); sub findmap($) { $_ = shift; s/^\.\///g; + s/$builddir\///g; + s/$srcdir\///g; if (! -f $_ && -f "lib/$_") { $_ = "lib/$_"; } + if ($srcdir !~ $builddir) { + if (! -f "$srcdir/$_" && -f "$srcdir/lib/$_") { $_ = "lib/$_"; } + } return $map{$_}; } @@ -55,7 +62,7 @@ sub install_header($$) my $lineno = 0; - open(IN, "<$src"); + open(IN, "<$src") || open(IN, "<$srcdir/$src"); open(OUT, ">$dst"); while () { @@ -75,8 +82,8 @@ foreach my $p (@ARGV) { my $p2 = findmap($p); unless ($p2) { - warn("Unable to map $p"); - next; + warn("Unable to map $p"); + next; } print "Installing $p as $includedir/$p2\n"; -- cgit