%ifarch alpha ia64 ppc64 s390x sparc64 x86_64 %global flavor gcc64pthr %else %global flavor gcc32pthr %endif Name: globus-rls-server %global _name %(tr - _ <<< %{name}) Version: 4.9 %global setupversion 4.5 Release: 6%{?dist} Summary: Globus Toolkit - Replica Location Service Server Group: Applications/Internet License: ASL 2.0 URL: http://www.globus.org/ # Source is extracted from the globus toolkit installer: # wget -N http://www-unix.globus.org/ftppub/gt5/5.0/5.0.4/installers/src/gt5.0.4-all-source-installer.tar.bz2 # tar -jxf gt5.0.4-all-source-installer.tar.bz2 # mv gt5.0.4-all-source-installer/source-trees/replica/rls/server globus_rls_server-4.9 # cp -p gt5.0.4-all-source-installer/source-trees/core/source/GLOBUS_LICENSE globus_rls_server-4.9 # tar -zcf globus_rls_server-4.9.tar.gz globus_rls_server-4.9 Source: %{_name}-%{version}.tar.gz # Source1 is extracted from the globus toolkit installer: # wget -N http://www-unix.globus.org/ftppub/gt5/5.0/5.0.4/installers/src/gt5.0.4-all-source-installer.tar.bz2 # tar -jxf gt5.0.4-all-source-installer.tar.bz2 # mv gt5.0.4-all-source-installer/source-trees/replica/rls/setup globus_rls_server_setup-4.5 # cp -p gt5.0.4-all-source-installer/source-trees/core/source/GLOBUS_LICENSE globus_rls_server_setup-4.5 # tar -zcf globus_rls_server_setup-4.5.tar.gz globus_rls_server_setup-4.5 Source1: %{_name}_setup-%{setupversion}.tar.gz # init.d startup script Source2: %{name} # Post-install setup instructions Source3: %{name}.INSTALL # README file Source8: GLOBUS-RLS # Dereferencing of type-punned pointers: # http://bugzilla.globus.org/bugzilla/show_bug.cgi?id=6607 Patch0: %{name}-type-punned-pointer.patch # Remove hardcoding of paths: # http://bugzilla.globus.org/bugzilla/show_bug.cgi?id=6595 Patch1: %{name}-setup.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) Provides: %{name}-setup = %{setupversion} Requires: globus-common >= 11.5 Requires: globus-rls-client%{?_isa} >= 5.2 BuildRequires: grid-packaging-tools BuildRequires: globus-rls-client-devel%{?_isa} >= 5.2 BuildRequires: globus-common-devel%{?_isa} >= 3 BuildRequires: globus-usage-devel%{?_isa} BuildRequires: unixODBC-devel%{?_isa} BuildRequires: globus-io-devel%{?_isa} >= 3 BuildRequires: globus-core%{?_isa} >= 4 Requires(post): chkconfig Requires(preun): chkconfig Requires(preun): initscripts Requires(postun): initscripts %description The Globus Toolkit is an open source software toolkit used for building Grid systems and applications. It is being developed by the Globus Alliance and many others all over the world. A growing number of projects and companies are using the Globus Toolkit to unlock the potential of grids for their cause. The %{name} package contains: Replica Location Service Server Replica Location Service Server Setup %prep %setup -q -n %{_name}-%{version} %setup -D -T -q -n %{_name}-%{version} -a 1 %patch0 -p1 cd %{_name}_setup-%{setupversion} %patch1 -p1 cd - %build # Remove files that should be replaced during bootstrap rm -f doxygen/Doxyfile* rm -f doxygen/Makefile.am rm -f pkgdata/Makefile.am rm -f globus_automake* rm -rf autom4te.cache # Fix hardcoded default locations sed 's!/usr/local/etc!/etc!g' -i server.c sed 's!/usr/local/etc!/etc!g' -i Doc/man/man8/globus-rls-server.8 %{_datadir}/globus/globus-bootstrap.sh %configure --with-flavor=%{flavor} --sysconfdir='${datadir}/globus' make %{?_smp_mflags} # setup package cd %{_name}_setup-%{setupversion} # Remove files that should be replaced during bootstrap rm -f doxygen/Doxyfile* rm -f doxygen/Makefile.am rm -f pkgdata/Makefile.am rm -f globus_automake* rm -rf autom4te.cache %{_datadir}/globus/globus-bootstrap.sh %configure --without-flavor make %{?_smp_mflags} cd - %install rm -rf $RPM_BUILD_ROOT make install DESTDIR=$RPM_BUILD_ROOT # setup package cd %{_name}_setup-%{setupversion} make install DESTDIR=$RPM_BUILD_ROOT cd - # This script is intended to be sourced, not executed chmod 644 $RPM_BUILD_ROOT%{_datadir}/globus/setup/setup-globus-rls-server.pl # Register setup perl -MGrid::GPT::Setup <<EOF my \$metadata = new Grid::GPT::Setup(package_name => "%{_name}_setup", globusdir => "$RPM_BUILD_ROOT%{_prefix}"); \$metadata->finish(); EOF # Create setup files mkdir -p $RPM_BUILD_ROOT%{_sysconfdir} sed -e s!@libdir@!%{_libdir}!g \ -e s!@localstatedir@!%{_localstatedir}/lib/%{name}!g \ -e s!@SQLITEODBCFLAVOR@!!g \ -e s!@LIBSUFFIX@!so!g \ $RPM_BUILD_ROOT%{_datadir}/globus/setup/odbc.ini.in > \ $RPM_BUILD_ROOT%{_sysconfdir}/%{name}-odbc.ini sed -e s!@ODBCINI@!%{_sysconfdir}/%{name}-odbc.ini!g \ -e 's!^odbcini.*$!&\npidfile\t\t\t/var/run/%{name}.pid!g' \ $RPM_BUILD_ROOT%{_datadir}/globus/setup/%{name}.conf.in > \ $RPM_BUILD_ROOT%{_sysconfdir}/%{name}.conf chmod 600 $RPM_BUILD_ROOT%{_sysconfdir}/%{name}.conf sed s!@sbindir@!%{_sbindir}!g \ $RPM_BUILD_ROOT%{_datadir}/globus/setup/rls-ldif.conf.in > \ $RPM_BUILD_ROOT%{_sysconfdir}/rls-ldif.conf GLOBUSPACKAGEDIR=$RPM_BUILD_ROOT%{_datadir}/globus/packages # Remove the SXXrls.in file rm $RPM_BUILD_ROOT%{_datadir}/globus/setup/SXXrls.in sed /SXXrls.in/d -i $GLOBUSPACKAGEDIR/%{_name}_setup/noflavor_pgm.filelist sed -e 's/"SXXrls", //' -e '/SXXrls/d' \ -i $RPM_BUILD_ROOT%{_datadir}/globus/setup/setup-globus-rls-server.pl # Fix man page section sed 's!^\(\.TH.*\) 1 !\1 8 !' \ $RPM_BUILD_ROOT%{_mandir}/man1/globus-rls-reporter.1 > \ $RPM_BUILD_ROOT%{_mandir}/man8/globus-rls-reporter.8 rm $RPM_BUILD_ROOT%{_mandir}/man1/globus-rls-reporter.1 sed 's!/man1/\(.*\)\.1!/man8/\1.8!' \ -i $GLOBUSPACKAGEDIR/%{_name}/noflavor_doc.filelist # Install start-up script mkdir -p $RPM_BUILD_ROOT%{_initrddir} install -p %{SOURCE2} $RPM_BUILD_ROOT%{_initrddir} # Install license file mkdir -p $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version} install -m 644 -p GLOBUS_LICENSE $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version} # Install README file install -m 644 -p %{SOURCE8} \ $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/README # Install post installation instructions install -m 644 -p %{SOURCE3} \ $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/README.Fedora # Generate package filelists cat $GLOBUSPACKAGEDIR/%{_name}/%{flavor}_pgm.filelist \ $GLOBUSPACKAGEDIR/%{_name}/noflavor_data.filelist \ $GLOBUSPACKAGEDIR/%{_name}/noflavor_doc.filelist \ $GLOBUSPACKAGEDIR/%{_name}_setup/noflavor_pgm.filelist \ | sed -e s!^!%{_prefix}! -e 's!^.*/man/.*!%doc &*!' > package.filelist %clean rm -rf $RPM_BUILD_ROOT %post if [ $1 = 1 ]; then /sbin/chkconfig --add %{name} fi %preun if [ $1 = 0 ]; then /sbin/service %{name} stop >/dev/null 2>&1 || : /sbin/chkconfig --del %{name} fi %postun if [ $1 -ge 1 ]; then /sbin/service %{name} condrestart >/dev/null 2>&1 || : fi %files -f package.filelist %defattr(-,root,root,-) %dir %{_datadir}/globus/packages/%{_name} %dir %{_docdir}/%{name}-%{version} %doc %{_docdir}/%{name}-%{version}/GLOBUS_LICENSE %doc %{_docdir}/%{name}-%{version}/README %dir %{_datadir}/globus/packages/%{_name}_setup %{_datadir}/globus/packages/setup/%{_name}_setup %dir %{_datadir}/globus/aggrexec %config(noreplace) %{_sysconfdir}/%{name}-odbc.ini %config(noreplace) %{_sysconfdir}/%{name}.conf %config(noreplace) %{_sysconfdir}/rls-ldif.conf %{_initrddir}/%{name} %doc %{_docdir}/%{name}-%{version}/README.Fedora %changelog * Sun Jun 05 2011 Mattias Ellert <mattias.ellert@fysast.uu.se> - 4.9-6 - Update to Globus Toolkit 5.0.4 - Drop patch globus-rls-server-db.patch (fixed upstream) * Mon Apr 25 2011 Mattias Ellert <mattias.ellert@fysast.uu.se> - 4.9-5 - Add README file - Revert broken mysql change from upstream * Sat Feb 26 2011 Mattias Ellert <mattias.ellert@fysast.uu.se> - 4.9-4 - Update to Globus Toolkit 5.0.3 * Tue Feb 08 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.9-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild * Sat Jul 17 2010 Mattias Ellert <mattias.ellert@fysast.uu.se> - 4.9-2 - Update to Globus Toolkit 5.0.2 * Sat Jan 23 2010 Mattias Ellert <mattias.ellert@fysast.uu.se> - 4.9-1 - Update to Globus Toolkit 5.0.0 * Fri Aug 21 2009 Tomas Mraz <tmraz@redhat.com> - 4.7-5 - rebuilt with new openssl * Thu Jul 23 2009 Mattias Ellert <mattias.ellert@fysast.uu.se> - 4.7-4 - Add instruction set architecture (isa) tags * Sun Jun 07 2009 Mattias Ellert <mattias.ellert@fysast.uu.se> - 4.7-3 - Update to official Fedora Globus packaging guidelines * Fri Jun 05 2009 Mattias Ellert <mattias.ellert@fysast.uu.se> - 4.7-2 - Add Requires needed for scriptlets - Remove the SXXrls.in file - Remove hardcoded port number in init.d startup script * Thu Apr 16 2009 Mattias Ellert <mattias.ellert@fysast.uu.se> - 4.7-1 - Make comment about source retrieval more explicit - Change defines to globals - Remove explicit requires on library packages - Put GLOBUS_LICENSE file in extracted source tarball * Sun Mar 15 2009 Mattias Ellert <mattias.ellert@fysast.uu.se> - 4.7-0.5 - Adapting to updated globus-core package * Thu Feb 26 2009 Mattias Ellert <mattias.ellert@fysast.uu.se> - 4.7-0.4 - Add s390x to the list of 64 bit platforms * Tue Dec 30 2008 Mattias Ellert <mattias.ellert@fysast.uu.se> - 4.7-0.3 - Adapt to updated GPT package * Sat Oct 25 2008 Mattias Ellert <mattias.ellert@fysast.uu.se> - 4.7-0.2 - Update to Globus Toolkit 4.2.1 * Tue Jul 15 2008 Mattias Ellert <mattias.ellert@fysast.uu.se> - 4.7-0.1 - Autogenerated