'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/ ],
- 'gridsite' => [ qw/apache shared commands core/ ],
+ 'gridsite' => [ qw/apache shared commands core devel slashgrid services service-clients gsexec/ ],
'px' => [ qw/proxyrenewal glite-PX myproxy-yaim/ ],
);
'jp.primary' => [ qw/classads gsoap libtar globus_essentials:R globus:B/ ],
'jp.server-common' => [],
'jp.ws-interface' => [],
- 'gridsite.core' => [ qw/httpd-devel:B gsoap:B globus:B curl:B doxygen:B fuse:B libxml2:B openssl:B/ ],
+ 'gridsite.core' => [ qw/httpd-devel:B gsoap:B globus:B curl:B doxygen:B fuse-devel:B libxml2 openssl:B build_common_cpp:B doxygen:B/ ],
+ 'gridsite.commands' => [ qw/curl:R openssl:R/ ],
+ 'gridsite.apache' => [ qw/libxml2:R openssl:R curl:R/ ],
+ 'gridsite.shared' => [ qw/libxml2:R openssl:R/ ],
+ 'gridsite.devel' => [],
+ 'gridsite.slashgrid' => [ qw/curl:R fuse-libs:R fuse:R/],
+ 'gridsite.services' => [ qw/curl:R gsoap:R/ ],
+ 'gridsite.service-clients' => [ qw/curl:R gsoap:R gsoapxx:R/ ],
+ 'gridsite.gsexec' => [ qw// ],
'px.proxyrenewal' => [ qw/globus:B globus_essentials:R myproxy-devel:B myproxy-libs:R voms libtool:R/ ],
'px.myproxy-config' => [ qw/myproxy-admin:R/ ], # in myproxy-config.spec
);
/ ],
'jp.ws-interface' => [ qw// ],
- 'gridsite.core' => [ qw/build.common-cpp:B/ ],
+ 'gridsite.core' => [ qw// ],
+ 'gridsite.commands' => [ qw/gridsite.shared:R/ ],
+ 'gridsite.apache' => [ qw/gridsite.shared:R/ ],
+ 'gridsite.shared' => [ qw// ],
+ 'gridsite.devel' => [ qw/gridsite.shared:R/ ],
+ 'gridsite.slashgrid' => [ qw/gridsite.shared:R/],
+ 'gridsite.services' => [ qw/gridsite.shared:R/ ],
+ 'gridsite.service-clients' => [ qw/gridsite.shared:R/ ],
+ 'gridsite.gsexec' => [ qw// ],
'px.proxyrenewal' => [ qw// ],
'px.glite-PX' => [qw/px.myproxy-yaim:R/],
# etics_projects ....... ETICS project names of externals
# etics_externs_devel .. ETICS modules names of devel versions of externals
# need_externs_aux ..... project-specific external dependencies
+# supported_platforms .. platforms supported by the project
%projects = (
glite => {
etics_name => 'org.glite',
axis=>'axis',
lcas=>'org.glite.security.lcas',
gsoapxx=>'-',
+ build_common_cpp=>'org.glite.build.common-cpp',
},
etics_externs_devel => {
+ gridsite=>'org.gridsite.devel',
},
etics_projects => {
vdt=>[qw/globus globus_essentials gpt/],
axis=>'axis1.4',
lcas=>'emi.sac.lcas',
gsoapxx=>'-',
+ build_common_cpp=>'emi.misc.glite.build-common-cpp',
},
etics_externs_devel => {
cares => 'c-ares-devel',
log4c => 'log4c-devel',
postgresql => 'postgresql-devel',
curl => 'curl-devel',
- fuse => 'fuse-devel',
libxml2 => 'libxml2-devel',
openssl => 'openssl-devel',
+ gridsite=>'emi.gridsite.devel',
},
etics_projects => {
'emi'=>[qw/voms voms-devel gridsite lcas gip_release gip_service bdii glite_version glue_schema yaim_core yaim_bdii trustmanager trustmanager_axis/],
'px.glite-PX' => [qw/myproxy-server:R myproxy-admin:R fetchcrl:R gip_service:R bdii:R glite_version:R glue_schema:R/],
'px.myproxy-yaim' => [ qw/yaim_core:R yaim_bdii:R/ ],
},
+ supported_platforms => {
+ sl5_x86_64_gcc412EPEL => 1,
+ sl5_ia32_gcc412EPEL => 1,
+ },
},
);
($major,$minor,$rev,$age) = ($1,$2,$3,$4);
}
else {
- open V,"$cvs_prefix{$subsys}.$subsys.$module/project/version.properties"
+ my $path = "$cvs_prefix{$subsys}.$subsys.$module/project";
+ if ($subsys eq 'gridsite') {
+ $path = "$cvs_prefix{$subsys}.$subsys.core/project";
+ }
+ open V,"$path/version.properties"
or die "$cvs_prefix{$subsys}.$subsys.$module/project/version.properties: $!\n";
while ($_ = <V>) {
my %cmd;
@cmd{qw/configure compile test install packaging clean/} = ('None') x 6;
$cmd{clean} = 'make clean';
+ $cmd{checkout} = "mkdir -v \${moduleName}; cd \${moduleName} && cvs -d \${vcsroot} co ".($conftag eq 'HEAD' ? '-A' : '-r ${tag}')." $cvs_prefix{$subsys}.$subsys.$module";
+ #$cmd{checkout} = "(test -d \${moduleName}/.git && (cd \${moduleName}; git pull) || git clone http://scientific.zcu.cz/jra1mw.git \${moduleName})";
+ #$cmd{checkout} .= " && (cd \${moduleName}; git checkout ${tag})" unless ($conftag =~ /HEAD/);
+ $cmd{tag} = "cd \${moduleName} && cvs -d \${vcsroot} tag -R \${tag} $cvs_prefix{$subsys}.$subsys.$module";
if ($subsys eq 'gridsite') {
+ $cmd{tag} = 'None';
+
if ($module eq 'core') {
my $flags;
$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{compile} = "echo 'make $flags' > build.sh\n\tmake $flags build";
+ $cmd{clean} = "rm -rvf build.sh; $cmd{clean}";
$cmd{install} = "make $flags install";
$cmd{packaging} = "make $flags rpm";
}
else {
+ $cmd{clean} = 'None';
$cmd{packaging} = "echo building nothing, org.gridsite.core make rpm step will create this";
+ $cmd{checkout} = "mkdir -v \${moduleName} 2>/dev/null || true";
}
}
elsif ($subsys eq 'px' and $module eq 'myproxy-config') {
$defprops .= $p . ' = ' . $platform_properties{"$subsys.$module"}->{default}->{$p} . "\n";
}
- my $checkoutcmd = "mkdir -v \${moduleName}; cd \${moduleName} && cvs -d \${vcsroot} co ".($conftag eq 'HEAD' ? '-A' : '-r ${tag}')." $cvs_prefix{$subsys}.$subsys.$module";
-
print STDERR "Writing $file\n";
print C qq{
[Configuration-$conf]
[Platform-default:VcsCommand]
displayName = None
description = None
-tag = cd \${moduleName} && cvs -d \${vcsroot} tag -R \${tag} $cvs_prefix{$subsys}.$subsys.$module
+tag = $cmd{tag}
branch = None
commit = None
-checkout = $checkoutcmd
+checkout = $cmd{checkout}
[Platform-default:BuildCommand]
postpublish = None
[Platform-default:Property]
$buildroot
aprSuffix = 0
-package.RPMSLocation = \${moduleDir}/RPMTMP/RPMS
-package.SRPMSLocation = \${moduleDir}/RPMTMP/SRPMS
+package.RPMSLocation = \${moduleDir}/$cvs_prefix{$subsys}.$subsys.$module/RPMTMP/RPMS
+package.SRPMSLocation = \${moduleDir}/$cvs_prefix{$subsys}.$subsys.$module/RPMTMP/SRPMS
package.preserve.libtool = false
$package_description$package_summary$defprops};
for my $pp (keys %{$platform_properties{"$subsys.$module"}}) {
next if $pp eq 'default';
+ next if exists $project{supported_platforms} and not exists $project{supported_platforms}{$pp};
+
print C "[Platform-$pp:Property]\n$buildroot\n";
for my $p (keys %{$platform_properties{"$subsys.$module"}->{$pp}}) {
print C $p . ' = ' . $platform_properties{"$subsys.$module"}->{$pp}->{$p} . "\n";
}
- print C q{package.RPMSLocation = ${moduleDir}/RPMTMP/RPMS
-package.SRPMSLocation = ${moduleDir}/RPMTMP/SRPMS
-};
+ print C "package.RPMSLocation = \${moduleDir}/$cvs_prefix{$subsys}.$subsys.$module/RPMTMP/RPMS
+package.SRPMSLocation = \${moduleDir}/$cvs_prefix{$subsys}.$subsys.$module/RPMTMP/SRPMS\n";
print C "$package_description$package_summary\n";
}