my $lb_tag = '';
my $lbjp_tag = '';
my $jp_tag = '';
+my $sec_tag = '';
my $jobid_tag = '';
my $libdir = getlibdir();
-my $projectname;
-
-my @nodes = qw/client server logger logger-msg utils client-java doc ws-test db jpprimary jpindex jpclient harvester/;
+my @nodes = qw/client server logger utils client-java doc ws-test db jpprimary jpindex jpclient harvester/;
my %enable_nodes;
my %disable_nodes;
pkg => 'libcares'
},
classads => {
- prefix=> '/usr',
+ prefix=> '/opt/classads',
pkg => 'classads'
},
cppunit => {
prefix=> '/opt/globus',
pkg => 'globus-gssapi-gsi'
},
- 'myproxy-essentials' => {
- prefix=> '/opt/globus',
+ myproxy => {
+ prefix=> '/opt/myproxy',
pkg => 'myproxy'
},
- 'myproxy-server' => {
- prefix=> '/opt/globus',
- },
- 'myproxy-client' => {
- prefix=> '/opt/globus',
- },
gsoap => {
prefix=> '/usr',
pkg => 'gsoap'
postgresql => {
prefix=> '/usr'
}
- activemq => {
- prefix=>'/opt/activemq-cpp-library'
- }
- apr => {
- prefix=>'/opt/apr',
- pkg => 'apr-1'
- }
- aprutil => {
- prefix=>'/opt/apr-util',
- pkg => 'apr-util-1'
- }
);
my %jar = (
my %deps;
my %deps_type;
my %buildroot;
-my (%etics_externs, %etics_projects, %etics_projects_emi, %etics_externs_emi);
my %lbmodules = (
- 'lb' => [ qw/client client-java common doc logger server state-machine types utils ws-interface ws-test harvester yaim glite-LB logger-msg/],
+ 'lb' => [ qw/client client-java common doc logger server state-machine types utils ws-interface ws-test harvester yaim glite-LB/],
+ 'security' => [qw/gss gsoap-plugin/],
'lbjp-common' => [qw/db log maildir server-bones trio jp-interface gss gsoap-plugin/],
'jobid' => [qw/api-c api-cpp api-java/],
'jp' => [ qw/client doc index primary server-common ws-interface/ ],
'lb-tag=s' => \$lb_tag,
'lbjp-common-tag=s' => \$lbjp_tag,
'jp-tag=s' => \$jp_tag,
+ 'security-tag=s' => \$sec_tag,
'jobid-tag=s' => \$jobid_tag,
'help' => \$help,
'libdir=s' => \$libdir,
$externs{'mysql-devel'}{prefix}=$externs{mysql}{prefix} if $externs{'mysql-devel'}{prefix} eq '';
$externs{'mysql-server'}{prefix}=$externs{mysql}{prefix} if $externs{'mysql-server'}{prefix} eq '';
-$projectname = $emi ? 'emi' : 'org.glite';
-if ($emi) {
- for $_ (keys %etics_externs_emi) {
- $etics_externs{$_} = $etics_externs_emi{$_};
- }
-}
if ($help) { usage(); exit 0; }
if ($listmodules) {
- my @m = map "$projectname.$listmodules.$_",@{$lbmodules{$listmodules}};
+ my @m = map "org.glite.$listmodules.$_",@{$lbmodules{$listmodules}};
print "@m\n";
exit 0;
}
die "--module cannot be used with --enable-* or --disable-*\n"
if $module && ($en || $dis);
-die "$module: unknown module\n" if $module && ! grep $module,@{$lbmodules{lb}},{$lbmodules{jp}};
+die "$module: unknown module\n" if $module && ! grep $module,@{$lbmodules{lb}},@{$lbmodules{security}},{$lbmodules{jp}};
if ($mode eq 'build') { for my $ext (keys %externs) {
if (defined $externs{$ext}{withprefix}) { $externs{$ext}{prefix} = $externs{$ext}{withprefix}; }
$flag=`pkg-config $pkg --libs`;
$externs{$ext}{flags} .= "${flagname}_LIBS=$flag" if ($flag);
} else {
- print "(using default $externs{$ext}{prefix})\n";
+ print "(using default)\n";
}
}
} }
}
}
}
+ if ($sec_tag){
+ for (@{$lbmodules{security}}){
+ if ("security.".$_ eq $module){
+ $tag = '-r '.$sec_tag;
+ }
+ }
+ }
if ($jobid_tag){
for (@{$lbmodules{jobid}}){
if ("jobid.".$_ eq $module){
'lb.common' => [ qw/expat cares:B cppunit:B classads/ ],
'lb.doc' => [],
'lb.logger' => [ qw/cppunit:B/ ],
- 'lb.logger-msg' => [ qw/cppunit:B activemq apr aprutil/ ],
'lb.server' => [ qw/globus_essentials:R globus:B expat cares mysql:R mysql-server:R mysql-devel:B cppunit:B gsoap:B classads voms lcas gridsite/ ],
'lb.state-machine' => [ qw/classads/ ],
'lb.utils' => [ qw/cppunit:B/ ],
'lbjp-common.jp-interface' => [ qw/cppunit:B log4c:B/ ],
'lbjp-common.gss' => [ qw/globus_essentials:R globus:B cares cppunit:B/ ],
'lbjp-common.gsoap-plugin' => [ qw/cppunit:B globus_essentials:R globus:B cares:B gsoap:B/ ],
+ 'security.gss' => [ qw/globus_essentials:R globus:B cares cppunit:B/ ],
+ 'security.gsoap-plugin' => [ qw/cppunit:B globus_essentials:R globus:B cares:B gsoap:B/ ],
'jobid.api-c' => [ qw/cppunit:B/ ],
'jobid.api-cpp' => [ qw/cppunit:B/ ],
'jobid.api-java' => [ qw/ant:B jdk:B/ ],
'jp.server-common' => [],
'jp.ws-interface' => [],
'gridsite.core' => [qw/httpd-devel:B gsoap:B globus:B/ ],
- 'px.proxyrenewal' => [ qw/globus:B globus_essentials:R myproxy-essentials voms/ ],
- 'px.glite-PX' => [qw/myproxy-server:R fetchcrl:R gip_service:R bdii:R glite_version:R gpt:R glue_schema:R/],
+ 'px.proxyrenewal' => [ qw/globus:B myproxy voms/ ],
+ 'px.glite-PX' => [qw/myproxy:R fetchcrl:R gip_service:R bdii:R glite_version:R/],
'px.myproxy-yaim' => [ qw/yaim_core:R/ ],
- 'px.myproxy-config' => [ qw/myproxy-client:R/ ], # in myproxy-config.spec
+ 'px.myproxy-config' => [],
);
for my $ext (keys %need_externs_aux) {
lb.common
lbjp-common.gss
/ ],
- 'lb.logger-msg' => [ qw/
- lb.logger
- / ],
'lb.server' => [ qw/
lb.ws-interface lb.types:B lb.common lb.state-machine
lbjp-common.db lbjp-common.server-bones lbjp-common.trio lbjp-common.maildir lbjp-common.log
'lbjp-common.trio' => [ qw// ],
'lbjp-common.gss' => [ qw// ],
'lbjp-common.gsoap-plugin' => [ qw/lbjp-common.gss/ ],
+ 'security.gss' => [ qw// ],
+ 'security.gsoap-plugin' => [ qw/security.gss/ ],
'jobid.api-c' => [ qw// ],
'jobid.api-cpp' => [ qw/jobid.api-c/ ],
'jobid.api-java' => [ qw// ],
'gridsite.core' => [ qw/build.common-cpp:B/ ],
'px.proxyrenewal' => [ qw// ],
- 'px.glite-PX' => [qw/px.myproxy-yaim:R px.myproxy-config:R/],
- 'px.myproxy-yaim' => [ qw/px.myproxy-config:R/ ],
+ 'px.glite-PX' => [qw/px.myproxy-yaim:R/],
+ 'px.myproxy-yaim' => [],
'px.myproxy-config' => [],
);
'lb.yaim' => [ qq/glite-yaim-lb/ ],
'px.proxyrenewal' => [ qq/glite-security-proxyrenewal/ ],
'px.myproxy-yaim' => [ qq/glite-yaim-myproxy/ ],
- 'px.myproxy-config' => [ qq/myproxy-config/ ], # in myproxy-config.spec
+ 'px.myproxy-config' => [ qq/myproxy-config/ ],
'lbjp-common.gss' => [ qq/glite-security-gss/ ],
'lbjp-common.gsoap-plugin' => [ qq/glite-security-gsoap-plugin/ ],
);
'jobid' => 'org.glite',
'lbjp-common' => 'org.glite',
'gridsite' => 'org',
+ 'security' => 'org.glite',
'px' => 'org.glite',
);
'jobid' => 'glite-',
'lbjp-common' => 'glite-',
'gridsite' => '',
+ 'security' => 'glite-',
'px' => 'glite-',
);
'jobid' => 'emi-',
'lbjp-common' => 'emi-',
'gridsite' => '',
+ 'security' => 'emi-',
'px' => 'emi-',
);
my %aux;
undef %aux;
my @m=qw/
-lb.client lb.doc lb.state-machine lb.ws-interface lb.logger lb.logger-msg lb.types lb.common lb.server lb.utils lb.ws-test lb.client-java lb.harvester lb.yaim lb.glite-LB
-lbjp-common.gss lbjp-common.gsoap-plugin
+lb.client lb.doc lb.state-machine lb.ws-interface lb.logger lb.types lb.common lb.server lb.utils lb.ws-test lb.client-java lb.harvester lb.yaim lb.glite-LB
+security.gss security.gsoap-plugin
jobid.api-c jobid.api-cpp jobid.api-java
lbjp-common.db lbjp-common.log lbjp-common.maildir lbjp-common.server-bones lbjp-common.trio lbjp-common.jp-interface lbjp-common.gss lbjp-common.gsoap-plugin
jp.client jp.doc jp.index jp.primary jp.server-common jp.ws-interface
close MKINC;
}
+my %etics_externs;
+my %etics_projects;
BEGIN{
%etics_externs = (
globus_essentials=>'vdt_globus_essentials',
globus=>'globus',
- 'myproxy-essentials'=>'myproxy_essentials',
- 'myproxy-server'=>'myproxy_server',
- 'myproxy-client'=>'myproxy_client',
+ myproxy=>'myproxy',
cares=>'c-ares',
voms=>'org.glite.security.voms-api-cpp',
gridsite=>'org.gridsite.shared',
glite_info_templates=>'glite-info-templates',
glue_schema=>'glue-schema',
yaim_core=>'org.glite.yaim.core',
- activemq=>'activemq-cpp-library',
- apr=>'apr-dev',
- aprutil=>'aprutil-dev',
- );
- %etics_externs_emi = (
- globus_essentials=>'globus-gssapi-gsi',
- globus=>'globus-gssapi-gsi-devel',
- gridsite=>'emi.gridsite.shared',
- yaim_core=>'emi.yaim.yaim-core'
);
%etics_projects = (
vdt=>[qw/globus globus_essentials myproxy/],
'org.glite'=>[qw/voms gridsite lcas gpt gip_release gip_service bdii glite_version glite_info_templates glue_schema yaim_core/],
);
- %etics_projects_emi = (
- vdt=>'externs',
- 'org.glite'=>'emi',
- );
%platform_properties = (
'gridsite.core' => {
my $conf;
my $conftag;
- my ($confprefix, $nameprefix);
+ my $confprefix;
$dwpath = "path = \${projectName}/\${moduleName}/\${version}/\${platformName}/\${packageName}-\${version}-\${age}.tar.gz\n";
- $confprefix = $emi ? $emi_conf_prefix{$subsys} : $conf_prefix{$subsys};
- $nameprefix = $confprefix;
- $nameprefix =~ s/-$//;
- $nameprefix =~ s/-/\./g;
+ if ($emi) { $confprefix = $emi_conf_prefix{$subsys} }
+ else { $confprefix = $conf_prefix{$subsys} }
if ($branch) {
$conf = "$confprefix${subsys}-${module}_$branch";
if ($subsys eq 'gridsite') {
if ($module eq 'core') {
- my $flags;
-
- if ($emi) {
- $flags = 'RELEASE_VERSION=${age}.${platformFamily} prefix=${prefix} libdir=${libdir} GSOAPDIR=`pkg-config gsoap --variable=prefix` OPENSSL_GLOBUS_FLAGS=`pkg-config globus-openssl --cflags` OPENSSL_GLOBUS_LIBS=`pkg-config globus-openssl --libs` FLAVOR_GLOBUS_EXT= HTTPD_FLAGS="-I/usr/include/httpd -I/usr/include/apache2 -I/usr/include/apr-${aprSuffix} -I/usr/include/pcre"';
- } else {
- $flags = 'RELEASE_VERSION=${age}.${platformFamily} prefix=${prefix} libdir=${libdir} GSOAPDIR=${gsoap.location} OPENSSL_GLOBUS_FLAGS=-I${globus.location}/include/${globus.dbg.nothr.flavor} OPENSSL_GLOBUS_LIBS=-L${globus.location}/${libdir}/ FLAVOR_GLOBUS_EXT=_${globus.dbg.nothr.flavor} HTTPD_FLAGS="-I${httpd-devel.location}/include/httpd -I${httpd-devel.location}/include/apache2 -I${httpd-devel.location}/include/apr-${aprSuffix} -I${httpd-devel.location}/include/pcre"';
- }
+ my $flags = 'RELEASE_VERSION=${age}.${platformFamily} prefix=${prefix} libdir=${libdir} GSOAPDIR=${gsoap.location} OPENSSL_GLOBUS_FLAGS=-I${globus.location}/include/${globus.dbg.nothr.flavor} OPENSSL_GLOBUS_LIBS=-L${globus.location}/${libdir}/ FLAVOR_GLOBUS_EXT=_${globus.dbg.nothr.flavor} HTTPD_FLAGS="-I${httpd-devel.location}/include/httpd -I${httpd-devel.location}/include/apache2 -I${httpd-devel.location}/include/apr-${aprSuffix} -I${httpd-devel.location}/include/pcre"';
$cmd{compile} = "make $flags build";
$cmd{install} = "make $flags install";
$cmd{packaging} = "echo building nothing, org.gridsite.core make rpm step will create this";
}
}
- elsif ($subsys eq 'px' and $module eq 'myproxy-config') {
- $cmd{configure} = "cd $confdir && /usr/bin/perl \${moduleName}/configure --prefix=\${prefix} --stage=\${stageDir} --libdir=\${libdir} --module $subsys.$module @copts";
- $cmd{packaging} = "make rpm package=".$confprefix."$subsys-myproxy-config";
- }
else {
my $flavours = $emi ? "--thrflavour= --nothrflavour=" : "--thrflavour=\${globus.thr.flavor} --nothrflavour=\${globus.nothr.flavor}";
$cmd{configure} = "cd $confdir && /usr/bin/perl \${moduleName}/configure $flavours --prefix=\${prefix} --stage=\${stageDir} --libdir=\${libdir} --module $subsys.$module @copts";
$defprops .= $p . ' = ' . $platform_properties{"$subsys.$module"}->{default}->{$p} . "\n";
}
- my $checkoutcmd = "cvs -d \${vcsroot} co -d \${moduleName} ".($conftag eq 'HEAD' ? '-A' : '-r ${tag}')." $cvs_prefix{$subsys}.$subsys.$module";
- $checkoutcmd .= "; ln -s \${moduleName} $cvs_prefix{$subsys}.$subsys.$module 2>/dev/null || true" if ($emi);
+ my $checkoutcmd;
+ if ($conftag eq 'HEAD') {
+ $checkoutcmd = "cvs -d \${vcsroot} co -A \${moduleName}";
+ } else {
+ $checkoutcmd = "cvs -d \${vcsroot} co -r \${tag} \${moduleName}";
+ }
print STDERR "Writing $file\n";
print C qq{
[Configuration-$conf]
profile = None
-moduleName = $projectname.$subsys.$module
+moduleName = $cvs_prefix{$subsys}.$subsys.$module
displayName = $conf
description = $cvs_prefix{$subsys}.$subsys.$module
-projectName = $projectname
+projectName = org.glite
age = $age
deploymentType = None
-vcsroot = :pserver:anonymous\@glite.cvs.cern.ch:/cvs/glite
tag = $conftag
version = $major.$minor.$rev
$dwpath
my $proj = 'externals';
for my $p (keys %etics_projects) {
- if ($emi and defined $etics_projects_emi{$p}) {
- $p = $etics_projects_emi{$p};
- }
for $m (@{$etics_projects{$p}}) {
$proj = $p if $m eq $_;
}
for (@{$deps{"$subsys.$module"}}) {
my $type = $deps_type{"$subsys.$module"}->{$_};
- print C "$projectname|$projectname.$_ = $type\n";
+ print C "org.glite|org.glite.$_ = $type\n";
}
close C;
chomp;
$gsoap_version = $1 if /The gSOAP Stub and Skeleton Compiler for C and C\+\+ ([.[:digit:][:alpha:]]+)$/;
- $gsoap_version = $1 if /The gSOAP code generator for C and C\+\+, soapcpp2 release ([.[:digit:][:alpha:]]+)$/;
}
close S;
return $gsoap_version;
What to build:
--module=module build this module only (mostly in-Etics operation)
--enable-NODE build this "node" (set of modules) only. Available nodes are
- @{$lbmodules{lb}}
+ @{$lbmodules{lb}},@{$lbmodules{security}}
--disable-NODE don't build this node
--lb-tag=tag checkout LB modules with specific tag
--jp-tag=tag checkout JP modules with specific tag
--lbjp-common-tag=tag checkout lbjp-common modules with specific tag
+ --security-tag=tag checkout security modules with specific tag
--jobid-tag=tag checkout jobid modules with specific tag
Dependencies:
my $lb_tag = '';
my $lbjp_tag = '';
my $jp_tag = '';
+my $sec_tag = '';
my $jobid_tag = '';
my $libdir = getlibdir();
-my $projectname;
-
-my @nodes = qw/client server logger logger-msg utils client-java doc ws-test db jpprimary jpindex jpclient harvester/;
+my @nodes = qw/client server logger utils client-java doc ws-test db jpprimary jpindex jpclient harvester/;
my %enable_nodes;
my %disable_nodes;
pkg => 'libcares'
},
classads => {
- prefix=> '/usr',
+ prefix=> '/opt/classads',
pkg => 'classads'
},
cppunit => {
prefix=> '/opt/globus',
pkg => 'globus-gssapi-gsi'
},
- 'myproxy-essentials' => {
- prefix=> '/opt/globus',
+ myproxy => {
+ prefix=> '/opt/myproxy',
pkg => 'myproxy'
},
- 'myproxy-server' => {
- prefix=> '/opt/globus',
- },
- 'myproxy-client' => {
- prefix=> '/opt/globus',
- },
gsoap => {
prefix=> '/usr',
pkg => 'gsoap'
postgresql => {
prefix=> '/usr'
}
- activemq => {
- prefix=>'/opt/activemq-cpp-library'
- }
- apr => {
- prefix=>'/opt/apr',
- pkg => 'apr-1'
- }
- aprutil => {
- prefix=>'/opt/apr-util',
- pkg => 'apr-util-1'
- }
);
my %jar = (
my %deps;
my %deps_type;
my %buildroot;
-my (%etics_externs, %etics_projects, %etics_projects_emi, %etics_externs_emi);
my %lbmodules = (
- 'lb' => [ qw/client client-java common doc logger server state-machine types utils ws-interface ws-test harvester yaim glite-LB logger-msg/],
+ 'lb' => [ qw/client client-java common doc logger server state-machine types utils ws-interface ws-test harvester yaim glite-LB/],
+ 'security' => [qw/gss gsoap-plugin/],
'lbjp-common' => [qw/db log maildir server-bones trio jp-interface gss gsoap-plugin/],
'jobid' => [qw/api-c api-cpp api-java/],
'jp' => [ qw/client doc index primary server-common ws-interface/ ],
'lb-tag=s' => \$lb_tag,
'lbjp-common-tag=s' => \$lbjp_tag,
'jp-tag=s' => \$jp_tag,
+ 'security-tag=s' => \$sec_tag,
'jobid-tag=s' => \$jobid_tag,
'help' => \$help,
'libdir=s' => \$libdir,
$externs{'mysql-devel'}{prefix}=$externs{mysql}{prefix} if $externs{'mysql-devel'}{prefix} eq '';
$externs{'mysql-server'}{prefix}=$externs{mysql}{prefix} if $externs{'mysql-server'}{prefix} eq '';
-$projectname = $emi ? 'emi' : 'org.glite';
-if ($emi) {
- for $_ (keys %etics_externs_emi) {
- $etics_externs{$_} = $etics_externs_emi{$_};
- }
-}
if ($help) { usage(); exit 0; }
if ($listmodules) {
- my @m = map "$projectname.$listmodules.$_",@{$lbmodules{$listmodules}};
+ my @m = map "org.glite.$listmodules.$_",@{$lbmodules{$listmodules}};
print "@m\n";
exit 0;
}
die "--module cannot be used with --enable-* or --disable-*\n"
if $module && ($en || $dis);
-die "$module: unknown module\n" if $module && ! grep $module,@{$lbmodules{lb}},{$lbmodules{jp}};
+die "$module: unknown module\n" if $module && ! grep $module,@{$lbmodules{lb}},@{$lbmodules{security}},{$lbmodules{jp}};
if ($mode eq 'build') { for my $ext (keys %externs) {
if (defined $externs{$ext}{withprefix}) { $externs{$ext}{prefix} = $externs{$ext}{withprefix}; }
$flag=`pkg-config $pkg --libs`;
$externs{$ext}{flags} .= "${flagname}_LIBS=$flag" if ($flag);
} else {
- print "(using default $externs{$ext}{prefix})\n";
+ print "(using default)\n";
}
}
} }
}
}
}
+ if ($sec_tag){
+ for (@{$lbmodules{security}}){
+ if ("security.".$_ eq $module){
+ $tag = '-r '.$sec_tag;
+ }
+ }
+ }
if ($jobid_tag){
for (@{$lbmodules{jobid}}){
if ("jobid.".$_ eq $module){
'lb.common' => [ qw/expat cares:B cppunit:B classads/ ],
'lb.doc' => [],
'lb.logger' => [ qw/cppunit:B/ ],
- 'lb.logger-msg' => [ qw/cppunit:B activemq apr aprutil/ ],
'lb.server' => [ qw/globus_essentials:R globus:B expat cares mysql:R mysql-server:R mysql-devel:B cppunit:B gsoap:B classads voms lcas gridsite/ ],
'lb.state-machine' => [ qw/classads/ ],
'lb.utils' => [ qw/cppunit:B/ ],
'lbjp-common.jp-interface' => [ qw/cppunit:B log4c:B/ ],
'lbjp-common.gss' => [ qw/globus_essentials:R globus:B cares cppunit:B/ ],
'lbjp-common.gsoap-plugin' => [ qw/cppunit:B globus_essentials:R globus:B cares:B gsoap:B/ ],
+ 'security.gss' => [ qw/globus_essentials:R globus:B cares cppunit:B/ ],
+ 'security.gsoap-plugin' => [ qw/cppunit:B globus_essentials:R globus:B cares:B gsoap:B/ ],
'jobid.api-c' => [ qw/cppunit:B/ ],
'jobid.api-cpp' => [ qw/cppunit:B/ ],
'jobid.api-java' => [ qw/ant:B jdk:B/ ],
'jp.server-common' => [],
'jp.ws-interface' => [],
'gridsite.core' => [qw/httpd-devel:B gsoap:B globus:B/ ],
- 'px.proxyrenewal' => [ qw/globus:B globus_essentials:R myproxy-essentials voms/ ],
- 'px.glite-PX' => [qw/myproxy-server:R fetchcrl:R gip_service:R bdii:R glite_version:R gpt:R glue_schema:R/],
+ 'px.proxyrenewal' => [ qw/globus:B myproxy voms/ ],
+ 'px.glite-PX' => [qw/myproxy:R fetchcrl:R gip_service:R bdii:R glite_version:R/],
'px.myproxy-yaim' => [ qw/yaim_core:R/ ],
- 'px.myproxy-config' => [ qw/myproxy-client:R/ ], # in myproxy-config.spec
+ 'px.myproxy-config' => [],
);
for my $ext (keys %need_externs_aux) {
lb.common
lbjp-common.gss
/ ],
- 'lb.logger-msg' => [ qw/
- lb.logger
- / ],
'lb.server' => [ qw/
lb.ws-interface lb.types:B lb.common lb.state-machine
lbjp-common.db lbjp-common.server-bones lbjp-common.trio lbjp-common.maildir lbjp-common.log
'lbjp-common.trio' => [ qw// ],
'lbjp-common.gss' => [ qw// ],
'lbjp-common.gsoap-plugin' => [ qw/lbjp-common.gss/ ],
+ 'security.gss' => [ qw// ],
+ 'security.gsoap-plugin' => [ qw/security.gss/ ],
'jobid.api-c' => [ qw// ],
'jobid.api-cpp' => [ qw/jobid.api-c/ ],
'jobid.api-java' => [ qw// ],
'gridsite.core' => [ qw/build.common-cpp:B/ ],
'px.proxyrenewal' => [ qw// ],
- 'px.glite-PX' => [qw/px.myproxy-yaim:R px.myproxy-config:R/],
- 'px.myproxy-yaim' => [ qw/px.myproxy-config:R/ ],
+ 'px.glite-PX' => [qw/px.myproxy-yaim:R/],
+ 'px.myproxy-yaim' => [],
'px.myproxy-config' => [],
);
'lb.yaim' => [ qq/glite-yaim-lb/ ],
'px.proxyrenewal' => [ qq/glite-security-proxyrenewal/ ],
'px.myproxy-yaim' => [ qq/glite-yaim-myproxy/ ],
- 'px.myproxy-config' => [ qq/myproxy-config/ ], # in myproxy-config.spec
+ 'px.myproxy-config' => [ qq/myproxy-config/ ],
'lbjp-common.gss' => [ qq/glite-security-gss/ ],
'lbjp-common.gsoap-plugin' => [ qq/glite-security-gsoap-plugin/ ],
);
'jobid' => 'org.glite',
'lbjp-common' => 'org.glite',
'gridsite' => 'org',
+ 'security' => 'org.glite',
'px' => 'org.glite',
);
'jobid' => 'glite-',
'lbjp-common' => 'glite-',
'gridsite' => '',
+ 'security' => 'glite-',
'px' => 'glite-',
);
'jobid' => 'emi-',
'lbjp-common' => 'emi-',
'gridsite' => '',
+ 'security' => 'emi-',
'px' => 'emi-',
);
my %aux;
undef %aux;
my @m=qw/
-lb.client lb.doc lb.state-machine lb.ws-interface lb.logger lb.logger-msg lb.types lb.common lb.server lb.utils lb.ws-test lb.client-java lb.harvester lb.yaim lb.glite-LB
-lbjp-common.gss lbjp-common.gsoap-plugin
+lb.client lb.doc lb.state-machine lb.ws-interface lb.logger lb.types lb.common lb.server lb.utils lb.ws-test lb.client-java lb.harvester lb.yaim lb.glite-LB
+security.gss security.gsoap-plugin
jobid.api-c jobid.api-cpp jobid.api-java
lbjp-common.db lbjp-common.log lbjp-common.maildir lbjp-common.server-bones lbjp-common.trio lbjp-common.jp-interface lbjp-common.gss lbjp-common.gsoap-plugin
jp.client jp.doc jp.index jp.primary jp.server-common jp.ws-interface
close MKINC;
}
+my %etics_externs;
+my %etics_projects;
BEGIN{
%etics_externs = (
globus_essentials=>'vdt_globus_essentials',
globus=>'globus',
- 'myproxy-essentials'=>'myproxy_essentials',
- 'myproxy-server'=>'myproxy_server',
- 'myproxy-client'=>'myproxy_client',
+ myproxy=>'myproxy',
cares=>'c-ares',
voms=>'org.glite.security.voms-api-cpp',
gridsite=>'org.gridsite.shared',
glite_info_templates=>'glite-info-templates',
glue_schema=>'glue-schema',
yaim_core=>'org.glite.yaim.core',
- activemq=>'activemq-cpp-library',
- apr=>'apr-dev',
- aprutil=>'aprutil-dev',
- );
- %etics_externs_emi = (
- globus_essentials=>'globus-gssapi-gsi',
- globus=>'globus-gssapi-gsi-devel',
- gridsite=>'emi.gridsite.shared',
- yaim_core=>'emi.yaim.yaim-core'
);
%etics_projects = (
vdt=>[qw/globus globus_essentials myproxy/],
'org.glite'=>[qw/voms gridsite lcas gpt gip_release gip_service bdii glite_version glite_info_templates glue_schema yaim_core/],
);
- %etics_projects_emi = (
- vdt=>'externs',
- 'org.glite'=>'emi',
- );
%platform_properties = (
'gridsite.core' => {
my $conf;
my $conftag;
- my ($confprefix, $nameprefix);
+ my $confprefix;
$dwpath = "path = \${projectName}/\${moduleName}/\${version}/\${platformName}/\${packageName}-\${version}-\${age}.tar.gz\n";
- $confprefix = $emi ? $emi_conf_prefix{$subsys} : $conf_prefix{$subsys};
- $nameprefix = $confprefix;
- $nameprefix =~ s/-$//;
- $nameprefix =~ s/-/\./g;
+ if ($emi) { $confprefix = $emi_conf_prefix{$subsys} }
+ else { $confprefix = $conf_prefix{$subsys} }
if ($branch) {
$conf = "$confprefix${subsys}-${module}_$branch";
if ($subsys eq 'gridsite') {
if ($module eq 'core') {
- my $flags;
-
- if ($emi) {
- $flags = 'RELEASE_VERSION=${age}.${platformFamily} prefix=${prefix} libdir=${libdir} GSOAPDIR=`pkg-config gsoap --variable=prefix` OPENSSL_GLOBUS_FLAGS=`pkg-config globus-openssl --cflags` OPENSSL_GLOBUS_LIBS=`pkg-config globus-openssl --libs` FLAVOR_GLOBUS_EXT= HTTPD_FLAGS="-I/usr/include/httpd -I/usr/include/apache2 -I/usr/include/apr-${aprSuffix} -I/usr/include/pcre"';
- } else {
- $flags = 'RELEASE_VERSION=${age}.${platformFamily} prefix=${prefix} libdir=${libdir} GSOAPDIR=${gsoap.location} OPENSSL_GLOBUS_FLAGS=-I${globus.location}/include/${globus.dbg.nothr.flavor} OPENSSL_GLOBUS_LIBS=-L${globus.location}/${libdir}/ FLAVOR_GLOBUS_EXT=_${globus.dbg.nothr.flavor} HTTPD_FLAGS="-I${httpd-devel.location}/include/httpd -I${httpd-devel.location}/include/apache2 -I${httpd-devel.location}/include/apr-${aprSuffix} -I${httpd-devel.location}/include/pcre"';
- }
+ my $flags = 'RELEASE_VERSION=${age}.${platformFamily} prefix=${prefix} libdir=${libdir} GSOAPDIR=${gsoap.location} OPENSSL_GLOBUS_FLAGS=-I${globus.location}/include/${globus.dbg.nothr.flavor} OPENSSL_GLOBUS_LIBS=-L${globus.location}/${libdir}/ FLAVOR_GLOBUS_EXT=_${globus.dbg.nothr.flavor} HTTPD_FLAGS="-I${httpd-devel.location}/include/httpd -I${httpd-devel.location}/include/apache2 -I${httpd-devel.location}/include/apr-${aprSuffix} -I${httpd-devel.location}/include/pcre"';
$cmd{compile} = "make $flags build";
$cmd{install} = "make $flags install";
$cmd{packaging} = "echo building nothing, org.gridsite.core make rpm step will create this";
}
}
- elsif ($subsys eq 'px' and $module eq 'myproxy-config') {
- $cmd{configure} = "cd $confdir && /usr/bin/perl \${moduleName}/configure --prefix=\${prefix} --stage=\${stageDir} --libdir=\${libdir} --module $subsys.$module @copts";
- $cmd{packaging} = "make rpm package=".$confprefix."$subsys-myproxy-config";
- }
else {
my $flavours = $emi ? "--thrflavour= --nothrflavour=" : "--thrflavour=\${globus.thr.flavor} --nothrflavour=\${globus.nothr.flavor}";
$cmd{configure} = "cd $confdir && /usr/bin/perl \${moduleName}/configure $flavours --prefix=\${prefix} --stage=\${stageDir} --libdir=\${libdir} --module $subsys.$module @copts";
$defprops .= $p . ' = ' . $platform_properties{"$subsys.$module"}->{default}->{$p} . "\n";
}
- my $checkoutcmd = "cvs -d \${vcsroot} co -d \${moduleName} ".($conftag eq 'HEAD' ? '-A' : '-r ${tag}')." $cvs_prefix{$subsys}.$subsys.$module";
- $checkoutcmd .= "; ln -s \${moduleName} $cvs_prefix{$subsys}.$subsys.$module 2>/dev/null || true" if ($emi);
+ my $checkoutcmd;
+ if ($conftag eq 'HEAD') {
+ $checkoutcmd = "cvs -d \${vcsroot} co -A \${moduleName}";
+ } else {
+ $checkoutcmd = "cvs -d \${vcsroot} co -r \${tag} \${moduleName}";
+ }
print STDERR "Writing $file\n";
print C qq{
[Configuration-$conf]
profile = None
-moduleName = $projectname.$subsys.$module
+moduleName = $cvs_prefix{$subsys}.$subsys.$module
displayName = $conf
description = $cvs_prefix{$subsys}.$subsys.$module
-projectName = $projectname
+projectName = org.glite
age = $age
deploymentType = None
-vcsroot = :pserver:anonymous\@glite.cvs.cern.ch:/cvs/glite
tag = $conftag
version = $major.$minor.$rev
$dwpath
my $proj = 'externals';
for my $p (keys %etics_projects) {
- if ($emi and defined $etics_projects_emi{$p}) {
- $p = $etics_projects_emi{$p};
- }
for $m (@{$etics_projects{$p}}) {
$proj = $p if $m eq $_;
}
for (@{$deps{"$subsys.$module"}}) {
my $type = $deps_type{"$subsys.$module"}->{$_};
- print C "$projectname|$projectname.$_ = $type\n";
+ print C "org.glite|org.glite.$_ = $type\n";
}
close C;
chomp;
$gsoap_version = $1 if /The gSOAP Stub and Skeleton Compiler for C and C\+\+ ([.[:digit:][:alpha:]]+)$/;
- $gsoap_version = $1 if /The gSOAP code generator for C and C\+\+, soapcpp2 release ([.[:digit:][:alpha:]]+)$/;
}
close S;
return $gsoap_version;
What to build:
--module=module build this module only (mostly in-Etics operation)
--enable-NODE build this "node" (set of modules) only. Available nodes are
- @{$lbmodules{lb}}
+ @{$lbmodules{lb}},@{$lbmodules{security}}
--disable-NODE don't build this node
--lb-tag=tag checkout LB modules with specific tag
--jp-tag=tag checkout JP modules with specific tag
--lbjp-common-tag=tag checkout lbjp-common modules with specific tag
+ --security-tag=tag checkout security modules with specific tag
--jobid-tag=tag checkout jobid modules with specific tag
Dependencies: