diff --git a/globus-common.spec b/globus-common.spec index 0494a12..788491d 100644 --- a/globus-common.spec +++ b/globus-common.spec @@ -1,8 +1,16 @@ +%ifarch alpha ia64 ppc64 s390x sparc64 x86_64 +%global flavor gcc64pthr +%else +%global flavor gcc32pthr +%endif + +%{!?perl_vendorlib: %global perl_vendorlib %(eval "`%{__perl} -V:installvendorlib`"; echo $installvendorlib)} + Name: globus-common %global _name %(tr - _ <<< %{name}) Version: 10.2 %global setupversion 2.6 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Globus Toolkit - Common Library Group: System Environment/Libraries @@ -20,6 +28,8 @@ Source: %{_name}-%{version}.tar.gz # mv gt4.2.1-all-source-installer/source-trees/common/setup globus_common_setup-2.6 # tar -zcf globus_common_setup-2.6.tar.gz globus_common_setup-2.6 Source1: %{_name}_setup-%{setupversion}.tar.gz +# This is a workaround for the broken epstopdf script in RHEL5 +# See: https://bugzilla.redhat.com/show_bug.cgi?id=450388 Source8: epstopdf-2.9.5gw Source9: GLOBUS_LICENSE # Environment variable elimination patch: @@ -90,8 +100,6 @@ Group: Applications/Internet Provides: %{name}-setup = %{setupversion} Requires: %{name} = %{version}-%{release} Requires: globus-libtool >= 1 -Requires: globus-common-progs >= 3 -Requires: globus-common-setup >= 2 %if %{?fedora}%{!?fedora:0} Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version)) %else @@ -108,58 +116,45 @@ Group: Development/Libraries Requires: %{name} = %{version}-%{release} Requires: globus-libtool-devel >= 1 Requires: globus-core >= 4 -Requires: pkgconfig %package doc Summary: Globus Toolkit - Common Library Documentation Files Group: Documentation Requires: %{name} = %{version}-%{release} -%ifarch alpha ia64 ppc64 s390x sparc64 x86_64 -%global flavor gcc64pthr -%else -%global flavor gcc32pthr -%endif - -%{!?perl_vendorlib: %global perl_vendorlib %(eval "`%{__perl} -V:installvendorlib`"; echo $installvendorlib)} - %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 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: Common Library %description progs -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 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}-progs package contains: Common Library Programs Common Setup %description devel -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 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}-devel package contains: Common Library Development Files %description doc -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 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}-doc package contains: Common Library Documentation Files @@ -190,8 +185,6 @@ EOF %global __perl_requires %{_builddir}/%{_name}-%{version}/%{name}-req chmod +x %{__perl_requires} -# This is a workaround for the broken epstopdf script in RHEL5 -# See: https://bugzilla.redhat.com/show_bug.cgi?id=450388 %if "%{rhel}" == "5" mkdir bin install %{SOURCE8} bin/epstopdf @@ -202,24 +195,23 @@ install %{SOURCE8} bin/epstopdf export PATH=$PWD/bin:$PATH %endif +# 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 +# Remove flavor tags for f in `find . -name Makefile.am` ; do sed -e 's!^flavorinclude_HEADERS!include_HEADERS!' \ -e 's!\(lib[a-zA-Z_]*\)_$(GLOBUS_FLAVOR_NAME)\.la!\1.la!g' \ - -e 's!^\(lib[a-zA-Z_]*\)___GLOBUS_FLAVOR_NAME__la_!\1_la_!' < $f > $f.new - mv $f.new $f + -e 's!^\(lib[a-zA-Z_]*\)___GLOBUS_FLAVOR_NAME__la_!\1_la_!' -i $f done - sed -e "s! pkgdata/pkg_data_src.gpt.in.new -mv pkgdata/pkg_data_src.gpt.in.new pkgdata/pkg_data_src.gpt.in + -i pkgdata/pkg_data_src.gpt.in -/usr/share/globus/globus-bootstrap.sh +%{_datadir}/globus/globus-bootstrap.sh %configure --with-flavor=%{flavor} --enable-doxygen @@ -228,13 +220,14 @@ 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 -/usr/share/globus/globus-bootstrap.sh +%{_datadir}/globus/globus-bootstrap.sh %configure --without-flavor --with-secure-tmpdir=/var/tmp @@ -255,10 +248,11 @@ cd %{_name}_setup-%{setupversion} make install DESTDIR=$RPM_BUILD_ROOT cd - -chmod -x $RPM_BUILD_ROOT%{_datadir}/globus/globus-args-parser-header -chmod -x $RPM_BUILD_ROOT%{_datadir}/globus/setup/setup-globus-common.pl -chmod -x $RPM_BUILD_ROOT%{_datadir}/globus/globus-script-initializer -chmod -x $RPM_BUILD_ROOT%{_datadir}/globus/globus-sh-tools.sh +# These scripts are intended to be sourced, not executed +chmod 644 $RPM_BUILD_ROOT%{_datadir}/globus/globus-args-parser-header +chmod 644 $RPM_BUILD_ROOT%{_datadir}/globus/setup/setup-globus-common.pl +chmod 644 $RPM_BUILD_ROOT%{_datadir}/globus/globus-script-initializer +chmod 644 $RPM_BUILD_ROOT%{_datadir}/globus/globus-sh-tools.sh # Register setup perl -MGrid::GPT::Setup < "%{_name}_setup", EOF # Remove libtool archives (.la files) -test -d $RPM_BUILD_ROOT%{_libdir} && \ find $RPM_BUILD_ROOT%{_libdir} -name 'lib*.la' -exec rm -v '{}' \; - -for l in $RPM_BUILD_ROOT%{_datadir}/globus/packages/%{_name}/*.filelist ; do - grep -v 'lib.*\.la$' < $l > $l.new - mv $l.new $l -done +sed '/lib.*\.la$/d' \ + -i $RPM_BUILD_ROOT%{_datadir}/globus/packages/%{_name}/%{flavor}_rtl.filelist # Remove static libraries (.a files) -test -d $RPM_BUILD_ROOT%{_libdir} && \ find $RPM_BUILD_ROOT%{_libdir} -name 'lib*.a' -exec rm -v '{}' \; +sed '/lib.*\.a$/d' \ + -i $RPM_BUILD_ROOT%{_datadir}/globus/packages/%{_name}/%{flavor}_dev.filelist -for l in $RPM_BUILD_ROOT%{_datadir}/globus/packages/%{_name}/*.filelist ; do - grep -v 'lib.*\.a$' < $l > $l.new - mv $l.new $l -done - +# Generate pkg-config file from GPT metadata mkdir -p $RPM_BUILD_ROOT%{_libdir}/pkgconfig -/usr/share/globus/globus-gpt2pkg-config pkgdata/pkg_data_%{flavor}_dev.gpt > \ +%{_datadir}/globus/globus-gpt2pkg-config pkgdata/pkg_data_%{flavor}_dev.gpt > \ $RPM_BUILD_ROOT%{_libdir}/pkgconfig/%{name}.pc # Move globus-makefile-header to devel package -cat $RPM_BUILD_ROOT%{_datadir}/globus/packages/%{_name}/%{flavor}_pgm.filelist \ - | grep globus-makefile-header >> \ - $RPM_BUILD_ROOT%{_datadir}/globus/packages/%{_name}/%{flavor}_dev.filelist -cat $RPM_BUILD_ROOT%{_datadir}/globus/packages/%{_name}/%{flavor}_pgm.filelist \ - | grep -v globus-makefile-header > \ - $RPM_BUILD_ROOT%{_datadir}/globus/packages/%{_name}/%{flavor}_pgm.filelist.new -mv $RPM_BUILD_ROOT%{_datadir}/globus/packages/%{_name}/%{flavor}_pgm.filelist.new \ - $RPM_BUILD_ROOT%{_datadir}/globus/packages/%{_name}/%{flavor}_pgm.filelist +grep globus-makefile-header \ + $RPM_BUILD_ROOT%{_datadir}/globus/packages/%{_name}/%{flavor}_pgm.filelist \ + >> $RPM_BUILD_ROOT%{_datadir}/globus/packages/%{_name}/%{flavor}_dev.filelist +sed /globus-makefile-header/d \ + -i $RPM_BUILD_ROOT%{_datadir}/globus/packages/%{_name}/%{flavor}_pgm.filelist + +# Remove config.guess file (conflicts with grid-packaging-tools package) +rm $RPM_BUILD_ROOT%{_datadir}/globus/config.guess +sed /config.guess/d \ + -i $RPM_BUILD_ROOT%{_datadir}/globus/packages/%{_name}/noflavor_data.filelist # Move documentation to default RPM location mv $RPM_BUILD_ROOT%{_docdir}/%{_name} \ $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version} -cat $RPM_BUILD_ROOT%{_datadir}/globus/packages/%{_name}/noflavor_doc.filelist \ - | sed s!doc/%{_name}!doc/%{name}-%{version}! > \ - $RPM_BUILD_ROOT%{_datadir}/globus/packages/%{_name}/noflavor_doc.filelist.new -mv $RPM_BUILD_ROOT%{_datadir}/globus/packages/%{_name}/noflavor_doc.filelist.new \ - $RPM_BUILD_ROOT%{_datadir}/globus/packages/%{_name}/noflavor_doc.filelist +sed s!doc/%{_name}!doc/%{name}-%{version}! \ + -i $RPM_BUILD_ROOT%{_datadir}/globus/packages/%{_name}/noflavor_doc.filelist +# Fix doxygen glitches for f in $RPM_BUILD_ROOT%{_mandir}/man3/*.h.3 ; do - sed 's/P\.RS/P\n.RS/' < $f > $f.new - mv $f.new $f + sed 's/P\.RS/P\n.RS/' -i $f done +# Remove unwanted documentation rm -f $RPM_BUILD_ROOT%{_mandir}/man3/deprecated.3 rm -f $RPM_BUILD_ROOT%{_mandir}/man3/*_%{_name}-%{version}_*.3 -cat $RPM_BUILD_ROOT%{_datadir}/globus/packages/%{_name}/noflavor_doc.filelist \ - | grep -v 'deprecated\.3' \ - | grep -v '_%{_name}-%{version}_.*\.3' > \ - $RPM_BUILD_ROOT%{_datadir}/globus/packages/%{_name}/noflavor_doc.filelist.new -mv $RPM_BUILD_ROOT%{_datadir}/globus/packages/%{_name}/noflavor_doc.filelist.new \ - $RPM_BUILD_ROOT%{_datadir}/globus/packages/%{_name}/noflavor_doc.filelist +sed -e '/deprecated\.3/d' \ + -e '/_%{_name}-%{version}_.*\.3/d' \ + -i $RPM_BUILD_ROOT%{_datadir}/globus/packages/%{_name}/noflavor_doc.filelist # Generate package filelists - cat $RPM_BUILD_ROOT%{_datadir}/globus/packages/%{_name}/%{flavor}_rtl.filelist \ | sed s!^!%{_prefix}! > package.filelist - cat $RPM_BUILD_ROOT%{_datadir}/globus/packages/%{_name}/%{flavor}_pgm.filelist \ $RPM_BUILD_ROOT%{_datadir}/globus/packages/%{_name}/noflavor_data.filelist \ $RPM_BUILD_ROOT%{_datadir}/globus/packages/%{_name}_setup/noflavor_pgm.filelist \ $RPM_BUILD_ROOT%{_datadir}/globus/packages/%{_name}_setup/noflavor_rtl.filelist \ $RPM_BUILD_ROOT%{_datadir}/globus/packages/%{_name}_setup/noflavor_data.filelist \ | sed s!^!%{_prefix}! > package-progs.filelist - cat $RPM_BUILD_ROOT%{_datadir}/globus/packages/%{_name}/%{flavor}_dev.filelist \ | sed s!^!%{_prefix}! > package-devel.filelist - cat $RPM_BUILD_ROOT%{_datadir}/globus/packages/%{_name}/noflavor_doc.filelist \ - | sed 's!/man/.*!&*!' \ - | sed 's!^!%doc %{_prefix}!' > package-doc.filelist + | sed -e 's!/man/.*!&*!' -e 's!^!%doc %{_prefix}!' > package-doc.filelist +# Touch ghost files touch $RPM_BUILD_ROOT%{_datadir}/globus/setup/globus-sh-tools-vars.sh touch $RPM_BUILD_ROOT%{_datadir}/globus/globus-sh-tools-vars.sh +# Install license file mkdir -p $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version} cp -p %{SOURCE9} $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version} @@ -371,9 +352,7 @@ rm -f config.log config.status %files -f package-progs.filelist progs %defattr(-,root,root,-) %dir %{_datadir}/globus/packages/%{_name}_setup -%dir %{_datadir}/globus/packages/setup -%dir %{_datadir}/globus/packages/setup/%{_name}_setup -%{_datadir}/globus/packages/setup/%{_name}_setup/%{_name}_setup.gpt +%{_datadir}/globus/packages/setup %dir %{_datadir}/globus/setup %dir %{perl_vendorlib}/Globus %dir %{perl_vendorlib}/Globus/Core @@ -390,11 +369,14 @@ rm -f config.log config.status %dir %{_docdir}/%{name}-%{version}/html %changelog +* Thu Apr 16 2009 Mattias Ellert - 10.2-2 +- Remove config.guess file + * Tue Apr 07 2009 Mattias Ellert - 10.2-1 - Change defines to globals * Mon Apr 06 2009 Mattias Ellert - 10.2-0.6 -- Make comment about source retieval more explicit +- Make comment about source retrieval more explicit * Sun Mar 15 2009 Mattias Ellert - 10.2-0.5 - Adapting to updated globus-core package diff --git a/import.log b/import.log index 33335d6..cf7a01a 100644 --- a/import.log +++ b/import.log @@ -1 +1,2 @@ globus-common-10_2-1_fc9:EL-5:globus-common-10.2-1.fc9.src.rpm:1239090450 +globus-common-10_2-2_fc9:EL-5:globus-common-10.2-2.fc9.src.rpm:1240005583