summaryrefslogtreecommitdiff
path: root/source4/build/smb_build/env.pm
blob: 9e52e1974d7b2f92a75cbf130b878e3aa3d6941a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
#
# Environment class
#
# Samba Build Environment
#
# (C) 2005 Jelmer Vernooij <jelmer@samba.org>
#
# Published under the GNU GPL

package smb_build::env;
use smb_build::input;

use strict;

sub new($$)
{ 
	my ($name, $config) = @_;
	my $self = { };
	bless $self, $name;
	$self->set_config($config);
	return $self;
}

sub set_config($$)
{
	my ($self, $config) = @_;

	$self->{config} = $config;

	$self->{config}->{srcdir} = '.';
	$self->{config}->{builddir} = '.';

	if ($self->{config}->{prefix} eq "NONE") {
		$self->{config}->{prefix} = $self->{config}->{ac_default_prefix};
	}

	if ($self->{config}->{exec_prefix} eq "NONE") {
		$self->{config}->{exec_prefix} = $self->{config}->{prefix};
	}
	
	if ($self->{config}->{developer} eq "yes") {
		$self->{developer} = 1;
	} else {
		$self->{developer} = 0;
	}
}

sub PkgConfig($$$$$$)
{
	my ($self,$path,$name,$libs,$cflags,$version) = @_;

	print __FILE__.": creating $path\n";

	open(OUT, ">$path") or die("Can't open $path: $!");

	print OUT <<"__EOF__";
prefix=$self->{config}->{prefix}
exec_prefix=$self->{config}->{exec_prefix}
libdir=$self->{config}->{libdir}
includedir=$self->{config}->{includedir}

__EOF__

	print OUT "Name: $name\n";
	print OUT "Version: $version\n";
	print OUT "Libs: $libs\n";
	print OUT "Cflags: $cflags\n";

	close(OUT);
}

1;