diff options
author | Jelmer Vernooij <jelmer@samba.org> | 2005-10-26 23:36:04 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 13:45:18 -0500 |
commit | 1437535a24a3d33352ba310adefeca6862cc94f3 (patch) | |
tree | b418cbdd1fb797a954b9ee14553f2aa2ad434a93 /source4/build/smb_build/env.pm | |
parent | 4dc5da1335a8dc39b4e6153ce7da75d429d343de (diff) | |
download | samba-1437535a24a3d33352ba310adefeca6862cc94f3.tar.gz samba-1437535a24a3d33352ba310adefeca6862cc94f3.tar.bz2 samba-1437535a24a3d33352ba310adefeca6862cc94f3.zip |
r11311: Move some more logic to env
(This used to be commit 990419bac7ce335ffcec84017614eb9642a6ece6)
Diffstat (limited to 'source4/build/smb_build/env.pm')
-rw-r--r-- | source4/build/smb_build/env.pm | 33 |
1 files changed, 31 insertions, 2 deletions
diff --git a/source4/build/smb_build/env.pm b/source4/build/smb_build/env.pm index 9e52e1974d..b3dcbb8456 100644 --- a/source4/build/smb_build/env.pm +++ b/source4/build/smb_build/env.pm @@ -17,11 +17,16 @@ sub new($$) my ($name, $config) = @_; my $self = { }; bless $self, $name; - $self->set_config($config); + + $self->{items} = {}; + $self->{info} = {}; + + $self->_set_config($config); + return $self; } -sub set_config($$) +sub _set_config($$) { my ($self, $config) = @_; @@ -69,4 +74,28 @@ __EOF__ close(OUT); } +sub Import($$) +{ + my ($self,$items) = @_; + + foreach (keys %$items) { + if (defined($self->{items})) { + print "Warning: Importing $_ twice!\n"; + } + $self->{items}->{$_} = $items->{$_}; + } +} + +sub GetInfo($$) +{ + my ($self,$name) = @_; + + unless (defined($self->{info}->{$name})) + { + $self->{info}->{$name} = $self->{items}->Build($self); + } + + return $self->{info}->{$name}; +} + 1; |