17 |
|
# scramprojectdb() : return the scram project DB object |
18 |
|
# areatoolbox(ConfigArea) : return the toolbox of the specified area |
19 |
|
# setuptoolsinarea($area[,$toolname[,$toolversion[,toolfile]) : setup |
20 |
+ |
# arch() : get/set the architecture string |
21 |
|
|
22 |
|
package Scram::ScramFunctions; |
23 |
|
use URL::URLcache; |
31 |
|
$self={}; |
32 |
|
bless $self, $class; |
33 |
|
# -- default settings |
34 |
< |
$self->{cachedir}="~/.SCRAM/globalcache"; |
34 |
> |
$self->{cachedir}=$ENV{HOME}."/.SCRAM/globalcache"; |
35 |
|
$self->{scramprojectsdbdir}=$ENV{SCRAM_LOOKUPDB}; |
36 |
|
return $self; |
37 |
|
} |
48 |
|
require Configuration::BootStrapProject; |
49 |
|
my $bs=Configuration::BootStrapProject-> |
50 |
|
new($self->globalcache(),$installarea); |
51 |
+ |
$self->verbose("BootStrapping $url"); |
52 |
|
my $area=$bs->boot($url,$areaname); |
53 |
+ |
$area->archname($self->arch()); |
54 |
|
|
55 |
|
# -- download all tool description files |
56 |
|
my $req=$self->arearequirements($area); |
74 |
|
|
75 |
|
if ( @_ ) { |
76 |
|
# -- specific tool specified |
77 |
< |
if ( my $rv=toolbox()->toolsetup(@_) ) { |
77 |
> |
if ( my $rv=$toolbox->toolsetup(@_) ) { |
78 |
|
if ( $rv eq 1 ) { |
79 |
|
print "Unknown tool $toolname @ARGV\n"; |
80 |
|
exit 1; |
108 |
|
|
109 |
|
# -- create satellite |
110 |
|
my $area=$relarea->satellite($installarea,$areaname); |
111 |
+ |
$area->archname($self->arch()); |
112 |
|
|
113 |
< |
# -- copy setup info |
114 |
< |
$relarea->copysetup($area->location()); |
113 |
> |
# -- copy setup info - deprecated by toolbox copy method |
114 |
> |
#$relarea->copysetup($area->location()); |
115 |
> |
|
116 |
> |
# -- copy toolbox |
117 |
> |
my $rtb=$self->areatoolbox($relarea); |
118 |
> |
my $tb=$self->areatoolbox($area); |
119 |
> |
$rtb->copytools($tb); |
120 |
|
|
121 |
|
# -- copy configuration directory |
122 |
|
if ( ! -d $area->location()."/".$area->configurationdir() ) { |
213 |
|
return $self->{requirements}{$name}; |
214 |
|
} |
215 |
|
|
216 |
+ |
sub arch { |
217 |
+ |
my $self=shift; |
218 |
+ |
|
219 |
+ |
@_?$self->{arch}=shift |
220 |
+ |
:$self->{arch}; |
221 |
+ |
} |
222 |
+ |
|
223 |
|
# -------------- Support Routines ------------------------------ |
224 |
|
|
225 |
|
|