[globus-common/el4] Update to Globus Toolkit 5.2.0 Drop patches implemented upstream
Mattias Ellert
ellert at fedoraproject.org
Sun Jan 8 01:18:20 UTC 2012
commit 7613327cf636cf9fba78d89bec7e047efe2dfb9b
Author: Mattias Ellert <mattias.ellert at fysast.uu.se>
Date: Sat Jan 7 07:17:33 2012 +0100
Update to Globus Toolkit 5.2.0
Drop patches implemented upstream
.gitignore | 4 +-
GLOBUS-CCOMMONLIB | 3 +
globus-common-deps.patch | 18 --
globus-common-doxygen-workaround.patch | 24 --
globus-common-doxygen.patch | 127 ++++++------
globus-common-extradist.patch | 20 --
globus-common-format.patch | 36 +++
globus-common-initializers.patch | 39 ++++
globus-common-ltdlmutex.patch | 42 ----
globus-common-makefile-header.patch | 45 ----
globus-common-mingw.patch | 138 ------------
globus-common-no-pthread-exceptions.patch | 17 --
globus-common-noflavext.patch | 28 ---
globus-common-nosuchfile.patch | 12 -
globus-common-pathmax.patch | 99 ---------
globus-common-setup.patch | 334 -----------------------------
globus-common-typo.patch | 12 -
globus-common-usr.patch | 272 -----------------------
globus-common.spec | 265 +++++++----------------
sources | 3 +-
20 files changed, 227 insertions(+), 1311 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index aadcfba..1218b8e 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,3 +1,3 @@
/epstopdf-2.9.5gw
-/globus_common-11.6.tar.gz
-/globus_common_setup-2.6.tar.gz
+/*.tar.gz
+/*.tar.gz
diff --git a/GLOBUS-CCOMMONLIB b/GLOBUS-CCOMMONLIB
index b9cbdac..46b1fc0 100644
--- a/GLOBUS-CCOMMONLIB
+++ b/GLOBUS-CCOMMONLIB
@@ -20,3 +20,6 @@ http://www.globus.org/toolkit/docs/latest-stable/common/ccommonlib/qp/
Migrating Guide:
http://www.globus.org/toolkit/docs/latest-stable/common/ccommonlib/mig/
+
+Globus RPM packaging is supported by the Initiative for Globus in Europe:
+http://www.ige-project.eu/
diff --git a/globus-common-doxygen.patch b/globus-common-doxygen.patch
index 98b41aa..c8b1469 100644
--- a/globus-common-doxygen.patch
+++ b/globus-common-doxygen.patch
@@ -1,75 +1,72 @@
-diff -ur globus_common-11.2.orig/library/globus_callback.h globus_common-11.2/library/globus_callback.h
---- globus_common-11.2.orig/library/globus_callback.h 2006-01-19 06:54:13.000000000 +0100
-+++ globus_common-11.2/library/globus_callback.h 2010-01-21 21:18:17.972530459 +0100
-@@ -19,10 +19,10 @@
+diff -ur globus_common-14.5.orig/library/globus_i_error_errno.h globus_common-14.5/library/globus_i_error_errno.h
+--- globus_common-14.5.orig/library/globus_i_error_errno.h 2006-01-19 06:54:14.000000000 +0100
++++ globus_common-14.5/library/globus_i_error_errno.h 2012-01-05 07:36:10.522876402 +0100
+@@ -15,6 +15,10 @@
+ */
+
+ #ifndef GLOBUS_DONT_DOCUMENT_INTERNAL
++
++#ifndef GLOBUS_I_INCLUDE_ERRNO_ERROR_H
++#define GLOBUS_I_INCLUDE_ERRNO_ERROR_H
++
/**
- * @file globus_callback.h Globus Callback API
- *
-- * $Source: /home/globdev/CVS/globus-packages/common/source/library/globus_callback.h,v $<br />
-- * $Date: 2006/01/19 05:54:13 $<br />
-- * $Revision: 1.12 $<br />
-- * $Author: mlink $<br />
-+ * $Source: /home/globdev/CVS/globus-packages/common/source/library/globus_callback.h,v $
-+ * $Date: 2006/01/19 05:54:13 $
-+ * $Revision: 1.12 $
-+ * $Author: mlink $
+ * @file globus_i_error_errno.h
+ * Globus Errno Error
+@@ -26,10 +30,6 @@
+
+ #include "globus_common_include.h"
+
+-#ifndef GLOBUS_I_INCLUDE_ERRNO_ERROR_H
+-#define GLOBUS_I_INCLUDE_ERRNO_ERROR_H
+-
+-
+ EXTERN_C_BEGIN
+
+ EXTERN_C_END
+diff -ur globus_common-14.5.orig/library/globus_i_error_generic.h globus_common-14.5/library/globus_i_error_generic.h
+--- globus_common-14.5.orig/library/globus_i_error_generic.h 2006-01-19 06:54:14.000000000 +0100
++++ globus_common-14.5/library/globus_i_error_generic.h 2012-01-05 07:37:38.442863318 +0100
+@@ -15,6 +15,10 @@
*/
+ #ifndef GLOBUS_DONT_DOCUMENT_INTERNAL
++
++#ifndef GLOBUS_I_INCLUDE_GENERIC_ERROR_H
++#define GLOBUS_I_INCLUDE_GENERIC_ERROR_H
++
/**
-@@ -984,7 +984,7 @@
- * An example use is for an io poller that sleeps indefinitely on select(). If
- * the callback library receives a signal that it needs to deliver asap, it
- * will call the wakeup handler(s), These wakeup handlers must run as though
-- * they were called from a signal handler (dont use any thread utilities).
-+ * they were called from a signal handler (don't use any thread utilities).
- * The io poll example will likely write a single byte to a pipe that select()
- * is monitoring.
- *
-diff -ur globus_common-11.2.orig/library/globus_common.h.in globus_common-11.2/library/globus_common.h.in
---- globus_common-11.2.orig/library/globus_common.h.in 2008-11-03 21:31:10.000000000 +0100
-+++ globus_common-11.2/library/globus_common.h.in 2010-01-21 21:16:09.650283033 +0100
-@@ -44,14 +44,6 @@
+ * @file globus_i_error_generic.h
+ * Globus Generic Error
+@@ -26,10 +30,6 @@
+ #include "globus_common_include.h"
+
+-#ifndef GLOBUS_I_INCLUDE_GENERIC_ERROR_H
+-#define GLOBUS_I_INCLUDE_GENERIC_ERROR_H
+-
+-
EXTERN_C_BEGIN
--/* TODO remove this if we ever doxyegenate common fully */
--/**
-- * @mainpage
-- *
-- * @note <b>More globus_common API documentation is available <a href="../../../common/">here</a>.</b>
-- *
-- */
--
- /******************************************************************************
- Type definitions
- ******************************************************************************/
-diff -ur globus_common-11.2.orig/library/globus_thread_common.h globus_common-11.2/library/globus_thread_common.h
---- globus_common-11.2.orig/library/globus_thread_common.h 2006-01-19 06:54:14.000000000 +0100
-+++ globus_common-11.2/library/globus_thread_common.h 2010-01-21 21:16:09.651283298 +0100
-@@ -17,10 +17,10 @@
/**
- * @file globus_thread_common.h Common Thread Interface
- *
-- * $Source: /home/globdev/CVS/globus-packages/common/source/library/globus_thread_common.h,v $<br />
-- * $Date: 2006/01/19 05:54:14 $<br />
-- * $Revision: 1.6 $<br />
-- * $Author: mlink $<br />
-+ * $Source: /home/globdev/CVS/globus-packages/common/source/library/globus_thread_common.h,v $
-+ * $Date: 2006/01/19 05:54:14 $
-+ * $Revision: 1.6 $
-+ * $Author: mlink $
+diff -ur globus_common-14.5.orig/library/globus_url.h globus_common-14.5/library/globus_url.h
+--- globus_common-14.5.orig/library/globus_url.h 2011-02-03 22:46:23.000000000 +0100
++++ globus_common-14.5/library/globus_url.h 2012-01-05 07:34:39.682889999 +0100
+@@ -14,6 +14,9 @@
+ * limitations under the License.
*/
- /******************************************************************************
-diff -ur globus_common-11.2.orig/library/globus_url.h globus_common-11.2/library/globus_url.h
---- globus_common-11.2.orig/library/globus_url.h 2008-01-23 18:26:04.000000000 +0100
-+++ globus_common-11.2/library/globus_url.h 2010-01-21 21:16:09.651283298 +0100
-@@ -67,7 +67,7 @@
- GLOBUS_URL_SCHEME_X_NEXUS,
- /** GASS Cache Entry */
- GLOBUS_URL_SCHEME_X_GASS_CACHE,
-- /** Any other URL of the form <scheme>://<something */
-+ /** Any other URL of the form <scheme>://<something> */
- GLOBUS_URL_SCHEME_UNKNOWN,
- GLOBUS_URL_SCHEME_SSHFTP,
- /** Total number of URL schemes supported */
++#ifndef GLOBUS_INCLUDE_GLOBUS_URL_H_
++#define GLOBUS_INCLUDE_GLOBUS_URL_H_
++
+ #ifndef GLOBUS_DONT_DOCUMENT_INTERNAL
+ /**
+ * @file globus_url.h URL Parsing.
+@@ -31,8 +34,6 @@
+ * These functions are part of the Globus common library. The GLOBUS_COMMON
+ * module must be activated in order to use them.
+ */
+-#ifndef GLOBUS_INCLUDE_GLOBUS_URL_H_
+-#define GLOBUS_INCLUDE_GLOBUS_URL_H_
+
+ #include "globus_common_include.h"
+
diff --git a/globus-common-format.patch b/globus-common-format.patch
new file mode 100644
index 0000000..d607812
--- /dev/null
+++ b/globus-common-format.patch
@@ -0,0 +1,36 @@
+diff -ur globus_common-14.5.orig/library/globus_module.c globus_common-14.5/library/globus_module.c
+--- globus_common-14.5.orig/library/globus_module.c 2011-10-28 19:10:44.000000000 +0200
++++ globus_common-14.5/library/globus_module.c 2011-12-23 14:59:11.664013980 +0100
+@@ -849,7 +849,7 @@
+ }
+ else
+ {
+- globus_libc_fprintf(stream, _GCSL("<no version>\n"));
++ globus_libc_fprintf(stream, "%s", _GCSL("<no version>\n"));
+ }
+ }
+
+diff -ur globus_common-14.5.orig/library/globus_print.c globus_common-14.5/library/globus_print.c
+--- globus_common-14.5.orig/library/globus_print.c 2010-05-17 16:58:45.000000000 +0200
++++ globus_common-14.5/library/globus_print.c 2011-12-23 15:08:19.492013761 +0100
+@@ -353,7 +353,7 @@
+ }
+ else
+ {
+- fprintf(stderr, _GCSL("PANIC\n"));
++ fprintf(stderr, "%s", _GCSL("PANIC\n"));
+ }
+
+ va_start(ap, message);
+diff -ur globus_common-14.5.orig/library/globus_thread_common.c globus_common-14.5/library/globus_thread_common.c
+--- globus_common-14.5.orig/library/globus_thread_common.c 2010-05-17 16:58:45.000000000 +0200
++++ globus_common-14.5/library/globus_thread_common.c 2011-12-23 15:13:54.712013782 +0100
+@@ -424,7 +424,7 @@
+ x = strlen(tmp);
+ vsprintf(&tmp[x], s, ap);
+
+- globus_libc_printf(tmp);
++ globus_libc_printf("%s", tmp);
+ globus_thread_yield();
+
+ fflush(stdin);
diff --git a/globus-common-initializers.patch b/globus-common-initializers.patch
new file mode 100644
index 0000000..7f55c46
--- /dev/null
+++ b/globus-common-initializers.patch
@@ -0,0 +1,39 @@
+diff -ur globus_common-14.5.orig/scripts/Paths.pm.in globus_common-14.5/scripts/Paths.pm.in
+--- globus_common-14.5.orig/scripts/Paths.pm.in 2011-11-03 18:03:45.000000000 +0100
++++ globus_common-14.5/scripts/Paths.pm.in 2011-12-13 20:25:16.881800604 +0100
+@@ -54,21 +54,21 @@
+ }
+ else
+ {
+- $prefix = '@prefix@';
++ $prefix = "@prefix@";
+ }
+-$exec_prefix = eval_path('@exec_prefix@');
+-$sbindir = eval_path('@sbindir@');
+-$bindir = eval_path('@bindir@');
++$exec_prefix = "@exec_prefix@";
++$sbindir = "@sbindir@";
++$bindir = "@bindir@";
+ @GLOBUS_PERL_LIBDIR_CHOICE@
+-$includedir = eval_path('@includedir@');
+-$datarootdir = eval_path('@datarootdir@');
+-$datadir = eval_path('@datadir@');
+-$mandir = eval_path('@mandir@');
+-$libexecdir = eval_path('@libexecdir@');
+-$sysconfdir = eval_path('@sysconfdir@');
+-$sharedstatedir = eval_path('@sharedstatedir@');
+-$localstatedir = eval_path('@localstatedir@');
+-$flavorincludedir = eval_path('@flavorincludedir@');
+-$perlmoduledir = eval_path('@perlmoduledir@');
++$includedir = "@includedir@";
++$datarootdir = "@datarootdir@";
++$datadir = "@datadir@";
++$mandir = "@mandir@";
++$libexecdir = "@libexecdir@";
++$sysconfdir = "@sysconfdir@";
++$sharedstatedir = "@sharedstatedir@";
++$localstatedir = "@localstatedir@";
++$flavorincludedir = "@flavorincludedir@";
++$perlmoduledir = "@perlmoduledir@";
+
+ 1;
diff --git a/globus-common.spec b/globus-common.spec
index 5aafdda..1980a80 100644
--- a/globus-common.spec
+++ b/globus-common.spec
@@ -1,35 +1,21 @@
%ifarch alpha ia64 ppc64 s390x sparc64 x86_64
-%global flavor gcc64pthr
+%global flavor gcc64
%else
-%global flavor gcc32pthr
+%global flavor gcc32
%endif
%{!?perl_vendorlib: %global perl_vendorlib %(eval "`perl -V:installvendorlib`"; echo $installvendorlib)}
Name: globus-common
%global _name %(tr - _ <<< %{name})
-Version: 11.6
-%global setupversion 2.6
-Release: 5%{?dist}
+Version: 14.5
+Release: 1%{?dist}
Summary: Globus Toolkit - Common Library
Group: System Environment/Libraries
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.3/installers/src/gt5.0.3-all-source-installer.tar.bz2
-# tar -jxf gt5.0.3-all-source-installer.tar.bz2
-# mv gt5.0.3-all-source-installer/source-trees/common/source globus_common-11.6
-# cp -p gt5.0.3-all-source-installer/source-trees/core/source/GLOBUS_LICENSE globus_common-11.6
-# tar -zcf globus_common-11.6.tar.gz globus_common-11.6
-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.3/installers/src/gt5.0.3-all-source-installer.tar.bz2
-# tar -jxf gt5.0.3-all-source-installer.tar.bz2
-# mv gt5.0.3-all-source-installer/source-trees/common/setup globus_common_setup-2.6
-# cp -p gt5.0.3-all-source-installer/source-trees/core/source/GLOBUS_LICENSE 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
+Source: http://www.globus.org/ftppub/gt5/5.2/5.2.0/packages/src/%{_name}-%{version}.tar.gz
Source2: globus-domainname.1
Source3: globus-hostname.1
Source4: globus-sh-exec.1
@@ -39,51 +25,12 @@ Source8: GLOBUS-CCOMMONLIB
# This is a workaround for the broken epstopdf script in RHEL5
# See: https://bugzilla.redhat.com/show_bug.cgi?id=450388
Source9: epstopdf-2.9.5gw
-# Environment variable elimination patch:
-# http://bugzilla.globus.org/bugzilla/show_bug.cgi?id=6459
-Patch0: %{name}-usr.patch
-# Segfault fix patch:
-# http://bugzilla.globus.org/bugzilla/show_bug.cgi?id=6460
-Patch1: %{name}-no-pthread-exceptions.patch
-# Allow plugins without the flavor extension in the name:
-# http://bugzilla.globus.org/bugzilla/show_bug.cgi?id=6461
-Patch2: %{name}-noflavext.patch
-# Remove bogus inter-package dependency:
-# http://bugzilla.globus.org/bugzilla/show_bug.cgi?id=6462
-Patch3: %{name}-deps.patch
-# Fixes a stupid typo in library/Makefile.am:
-# http://bugzilla.globus.org/bugzilla/show_bug.cgi?id=6463
-Patch4: %{name}-typo.patch
-# The file globus_netos_dir.h does not exist:
-# http://bugzilla.globus.org/bugzilla/show_bug.cgi?id=6464
-Patch5: %{name}-nosuchfile.patch
-# Doxygen warning fix:
-# http://bugzilla.globus.org/bugzilla/show_bug.cgi?id=6465
-Patch6: %{name}-doxygen.patch
-# Extradist should not be conditional:
-# http://bugzilla.globus.org/bugzilla/show_bug.cgi?id=6576
-Patch7: %{name}-extradist.patch
-# Check for function removed from newer versions of libltdl:
-# http://bugzilla.globus.org/bugzilla/show_bug.cgi?id=6578
-Patch8: %{name}-ltdlmutex.patch
-# Fixes for mingw compilation:
-# http://bugzilla.globus.org/bugzilla/show_bug.cgi?id=6742
-Patch9: %{name}-mingw.patch
-# Not all platforms defines PATH_MAX:
-# http://bugzilla.globus.org/bugzilla/show_bug.cgi?id=6755
-Patch10: %{name}-pathmax.patch
-# Let globus-makefile-header fail gracefully without GPT:
-# Not really relevant for globus upstream
-Patch11: %{name}-makefile-header.patch
-# Workaround a bug in doxygen 1.6.0 and later:
-# https://bugzilla.gnome.org/show_bug.cgi?id=593759
-Patch12: %{name}-doxygen-workaround.patch
-# Configure options not propagated in globus common setup:
-# http://bugzilla.globus.org/bugzilla/show_bug.cgi?id=6467
-Patch13: %{name}-setup.patch
+Patch0: %{name}-initializers.patch
+Patch1: %{name}-format.patch
+Patch2: %{name}-doxygen.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
-Requires: globus-libtool%{?_isa} >= 1
+Requires: perl(:MODULE_COMPAT_%(eval "`perl -V:version`"; echo $version))
# Obsolete dropped packages from Globus Toolkit 4.2.1
Obsoletes: globus-data-conversion
Obsoletes: globus-mp
@@ -92,9 +39,23 @@ Obsoletes: globus-duct-common
Obsoletes: globus-duct-control
Obsoletes: globus-duroc-common
Obsoletes: globus-duroc-control
-BuildRequires: grid-packaging-tools
-BuildRequires: globus-libtool-devel%{?_isa} >= 1
-BuildRequires: globus-core%{?_isa} >= 4
+# Obsolete dropped packages from Globus Toolkit 5.2.0
+Provides: globus-libtool = 2
+Provides: globus-libtool%{?_isa} = 2
+Obsoletes: globus-libtool < 2
+Provides: globus-openssl = 6
+Provides: globus-openssl%{?_isa} = 6
+Obsoletes: globus-openssl < 6
+Provides: globus-libxml2 = 2
+Provides: globus-libxml2%{?_isa} = 2
+Obsoletes: globus-libxml2 < 2
+BuildRequires: grid-packaging-tools >= 3.4
+BuildRequires: globus-core%{?_isa} >= 8
+%if %{?fedora}%{!?fedora:0} >= 4 || %{?rhel}%{!?rhel:0} >= 5
+BuildRequires: libtool-ltdl-devel%{?_isa}
+%else
+BuildRequires: libtool
+%endif
BuildRequires: doxygen
BuildRequires: graphviz
%if "%{?rhel}" == "5"
@@ -110,20 +71,19 @@ BuildRequires: tetex-latex
%package progs
Summary: Globus Toolkit - Common Library Programs
Group: Applications/Internet
-Provides: %{name}-setup = %{setupversion}
+# Keep providing globus-common-setup until it is not needed
+Provides: %{name}-setup = 2.6
Requires: %{name}%{?_isa} = %{version}-%{release}
-Requires: globus-libtool%{?_isa} >= 1
-Requires: perl(:MODULE_COMPAT_%(eval "`perl -V:version`"; echo $version))
-# Try to ensure that most of globus-sh-tools-vars.sh gets filled
-Requires(post): autoconf, bind-utils, cvs, diffutils, finger, gawk, grep
-Requires(post): gzip, ncurses, net-tools, procps, sudo, tar, util-linux
+# Obsolete dropped packages from Globus Toolkit 5.2.0
+Provides: globus-openssl-progs = 6
+Provides: globus-openssl-progs%{?_isa} = 6
+Obsoletes: globus-openssl-progs < 6
%package devel
Summary: Globus Toolkit - Common Library Development Files
Group: Development/Libraries
Requires: %{name}%{?_isa} = %{version}-%{release}
-Requires: globus-libtool-devel%{?_isa} >= 1
-Requires: globus-core%{?_isa} >= 4
+Requires: globus-core%{?_isa} >= 8
# Obsolete dropped packages from Globus Toolkit 4.2.1
Obsoletes: globus-data-conversion-devel
Obsoletes: globus-mp-devel
@@ -132,6 +92,19 @@ Obsoletes: globus-duct-common-devel
Obsoletes: globus-duct-control-devel
Obsoletes: globus-duroc-common-devel
Obsoletes: globus-duroc-control-devel
+# Obsolete dropped packages from Globus Toolkit 5.2.0
+Provides: globus-libtool-devel = 2
+Provides: globus-libtool-devel%{?_isa} = 2
+Provides: pkgconfig(globus-libtool) = 2
+Obsoletes: globus-libtool-devel < 2
+Provides: globus-openssl-devel = 6
+Provides: globus-openssl-devel%{?_isa} = 6
+Provides: pkgconfig(globus-openssl) = 6
+Obsoletes: globus-openssl-devel < 6
+Provides: globus-libxml2-devel = 2
+Provides: globus-libxml2-devel%{?_isa} = 2
+Provides: pkgconfig(globus-libxml2) = 2
+Obsoletes: globus-libxml2-devel < 2
%package doc
Summary: Globus Toolkit - Common Library Documentation Files
@@ -158,7 +131,6 @@ 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
@@ -180,23 +152,9 @@ Common Library Documentation Files
%prep
%setup -q -n %{_name}-%{version}
-%setup -D -T -q -n %{_name}-%{version} -a 1
-%patch0 -p1 -b .usr
-%patch1 -p1 -b .segfault
-%patch2 -p1 -b .noflavext
-%patch3 -p1 -b .deps
-%patch4 -p1 -b .typo
-%patch5 -p1 -b .nofile
-%patch6 -p1 -b .doxygen
-%patch7 -p1 -b .extradist
-%patch8 -p1 -b .ltdlmutex
-%patch9 -p1 -b .mingw
-%patch10 -p1 -b .pathmax
-%patch11 -p1 -b .mfheader
-%patch12 -p1 -b .doxygenbug
-cd %{_name}_setup-%{setupversion}
-%patch13 -p1 -b .setup
-cd -
+%patch0 -p1
+%patch1 -p1
+%patch2 -p1
# custom perl requires that removes dependency on gpt perl modules
cat << EOF > %{name}-req
@@ -224,40 +182,20 @@ 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_!' -i $f
-done
-sed -e "s!<With_Flavors!<With_Flavors ColocateLibraries=\"no\"!" \
- -i pkgdata/pkg_data_src.gpt.in
-
+unset GLOBUS_LOCATION
+unset GPT_LOCATION
%{_datadir}/globus/globus-bootstrap.sh
-export GLOBUS_VERSION=5.0.3
-%configure --with-flavor=%{flavor} --enable-doxygen
-
-make %{?_smp_mflags}
+export GLOBUS_VERSION=5.2.0
+%configure --disable-static --with-flavor=%{flavor} \
+ --enable-doxygen --with-docdir=%{_docdir}/%{name}-%{version} \
+ --with-backward-compatibility-hack
-# 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 --with-secure-tmpdir=/var/tmp
+# Reduce overlinking
+sed 's!CC -shared !CC \${wl}--as-needed -shared !g' -i libtool
make %{?_smp_mflags}
-cd -
-
%install
%if "%{rhel}" == "5"
export PATH=$PWD/bin:$PATH
@@ -266,38 +204,30 @@ export PATH=$PWD/bin:$PATH
rm -rf $RPM_BUILD_ROOT
make install DESTDIR=$RPM_BUILD_ROOT
-# setup package
-cd %{_name}_setup-%{setupversion}
-make install DESTDIR=$RPM_BUILD_ROOT
-cd -
+GLOBUSPACKAGEDIR=$RPM_BUILD_ROOT%{_datadir}/globus/packages
# 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 <<EOF
-my \$metadata = new Grid::GPT::Setup(package_name => "%{_name}_setup",
- globusdir => "$RPM_BUILD_ROOT%{_prefix}");
-\$metadata->finish();
-EOF
-
-GLOBUSPACKAGEDIR=$RPM_BUILD_ROOT%{_datadir}/globus/packages
-
# Remove libtool archives (.la files)
-find $RPM_BUILD_ROOT%{_libdir} -name 'lib*.la' -exec rm -v '{}' \;
-sed '/lib.*\.la$/d' -i $GLOBUSPACKAGEDIR/%{_name}/%{flavor}_rtl.filelist
-
-# Remove static libraries (.a files)
-find $RPM_BUILD_ROOT%{_libdir} -name 'lib*.a' -exec rm -v '{}' \;
-sed '/lib.*\.a$/d' -i $GLOBUSPACKAGEDIR/%{_name}/%{flavor}_dev.filelist
-
-# Generate pkg-config file from GPT metadata
-mkdir -p $RPM_BUILD_ROOT%{_libdir}/pkgconfig
-%{_datadir}/globus/globus-gpt2pkg-config pkgdata/pkg_data_%{flavor}_dev.gpt > \
- $RPM_BUILD_ROOT%{_libdir}/pkgconfig/%{name}.pc
+find $RPM_BUILD_ROOT%{_libdir} -name 'libglobus_common.la' -exec rm -v '{}' \;
+sed '/libglobus_common.la$/d' \
+ -i $GLOBUSPACKAGEDIR/%{_name}/%{flavor}_dev.filelist
+
+# This library is opened using lt_dlopenext, so the libtool archive
+# (.la file) can not be removed - fix the libdir and clear dependency_libs
+# ... and move it to the main package
+for lib in `find $RPM_BUILD_ROOT%{_libdir} -name 'libglobus_thread_*.la'` ; do
+ sed -e "s!^libdir=.*!libdir=\'%{_libdir}\'!" \
+ -e "s!^dependency_libs=.*!dependency_libs=\'\'!" -i $lib
+done
+grep 'libglobus_thread_.*\.la$' \
+ $GLOBUSPACKAGEDIR/%{_name}/%{flavor}_dev.filelist \
+ >> $GLOBUSPACKAGEDIR/%{_name}/%{flavor}_rtl.filelist
+sed '/libglobus_thread_.*\.la$/d' \
+ -i $GLOBUSPACKAGEDIR/%{_name}/%{flavor}_dev.filelist
# Move globus-makefile-header to devel package
grep globus-makefile-header $GLOBUSPACKAGEDIR/%{_name}/%{flavor}_pgm.filelist \
@@ -305,15 +235,10 @@ grep globus-makefile-header $GLOBUSPACKAGEDIR/%{_name}/%{flavor}_pgm.filelist \
sed /globus-makefile-header/d \
-i $GLOBUSPACKAGEDIR/%{_name}/%{flavor}_pgm.filelist
-# Don't use /usr/bin/env
-sed 's!/usr/bin/env perl!/usr/bin/perl!' \
- -i $RPM_BUILD_ROOT%{_bindir}/globus-makefile-header
-
-# Move documentation to default RPM location
-mv $RPM_BUILD_ROOT%{_docdir}/%{_name} \
- $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}
-sed s!doc/%{_name}!doc/%{name}-%{version}! \
- -i $GLOBUSPACKAGEDIR/%{_name}/noflavor_doc.filelist
+# Move license file to main package
+grep GLOBUS_LICENSE $GLOBUSPACKAGEDIR/%{_name}/noflavor_doc.filelist \
+ >> $GLOBUSPACKAGEDIR/%{_name}/%{flavor}_rtl.filelist
+sed /GLOBUS_LICENSE/d -i $GLOBUSPACKAGEDIR/%{_name}/noflavor_doc.filelist
# Remove unwanted documentation (needed for RHEL4)
rm -f $RPM_BUILD_ROOT%{_mandir}/man3/*_%{_name}-%{version}_*.3
@@ -324,10 +249,6 @@ sed -e '/_%{_name}-%{version}_.*\.3/d' \
rm -f $RPM_BUILD_ROOT%{_mandir}/man3/deprecated.3
sed -e '/deprecated\.3/d' -i $GLOBUSPACKAGEDIR/%{_name}/noflavor_doc.filelist
-# Install license file
-mkdir -p $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}
-install -m 644 -p GLOBUS_LICENSE $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}
-
# install manpages
mkdir $RPM_BUILD_ROOT%{_mandir}/man1
install -m 644 %{SOURCE2} %{SOURCE3} %{SOURCE4} %{SOURCE5} \
@@ -341,20 +262,12 @@ install -m 644 -p %{SOURCE8} \
cat $GLOBUSPACKAGEDIR/%{_name}/%{flavor}_rtl.filelist \
| sed s!^!%{_prefix}! > package.filelist
cat $GLOBUSPACKAGEDIR/%{_name}/%{flavor}_pgm.filelist \
- $GLOBUSPACKAGEDIR/%{_name}/noflavor_data.filelist \
- $GLOBUSPACKAGEDIR/%{_name}_setup/noflavor_pgm.filelist \
- $GLOBUSPACKAGEDIR/%{_name}_setup/noflavor_rtl.filelist \
- $GLOBUSPACKAGEDIR/%{_name}_setup/noflavor_data.filelist \
| sed s!^!%{_prefix}! > package-progs.filelist
cat $GLOBUSPACKAGEDIR/%{_name}/%{flavor}_dev.filelist \
| sed s!^!%{_prefix}! > package-devel.filelist
cat $GLOBUSPACKAGEDIR/%{_name}/noflavor_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
-
%clean
rm -rf $RPM_BUILD_ROOT
@@ -362,43 +275,33 @@ rm -rf $RPM_BUILD_ROOT
%postun -p /sbin/ldconfig
-%post progs
-cd %{_datadir}/globus/setup
-./findshelltools > /dev/null
-cp -p globus-sh-tools-vars.sh ..
-rm -f config.log config.status
-
%files -f package.filelist
%defattr(-,root,root,-)
%dir %{_datadir}/globus
%dir %{_datadir}/globus/packages
-%dir %{_datadir}/globus/packages/setup
%dir %{_datadir}/globus/packages/%{_name}
-%dir %{_datadir}/globus/setup
+%dir %{perl_vendorlib}/Globus
+%dir %{perl_vendorlib}/Globus/Core
%dir %{_docdir}/%{name}-%{version}
-%doc %{_docdir}/%{name}-%{version}/GLOBUS_LICENSE
%doc %{_docdir}/%{name}-%{version}/README
%files -f package-progs.filelist progs
%defattr(-,root,root,-)
-%dir %{_datadir}/globus/packages/%{_name}_setup
-%{_datadir}/globus/packages/setup/%{_name}_setup
-%dir %{perl_vendorlib}/Globus
-%dir %{perl_vendorlib}/Globus/Core
%doc %{_mandir}/man1/*.1*
-%ghost %{_datadir}/globus/setup/globus-sh-tools-vars.sh
-%ghost %{_datadir}/globus/globus-sh-tools-vars.sh
%files -f package-devel.filelist devel
%defattr(-,root,root,-)
%dir %{_includedir}/globus
-%{_libdir}/pkgconfig/%{name}.pc
%files -f package-doc.filelist doc
%defattr(-,root,root,-)
%dir %{_docdir}/%{name}-%{version}/html
%changelog
+* Tue Dec 13 2011 Mattias Ellert <mattias.ellert at fysast.uu.se> - 14.5-1
+- Update to Globus Toolkit 5.2.0
+- Drop patches implemented upstream
+
* Sun Oct 02 2011 Mattias Ellert <mattias.ellert at fysast.uu.se> - 11.6-5
- Add contributed manpages
diff --git a/sources b/sources
index 16f55c0..8e8c63b 100644
--- a/sources
+++ b/sources
@@ -1,3 +1,2 @@
44ec158f5ca5f60310cca74a3aaaea2b epstopdf-2.9.5gw
-6893d70329bb797a72390fbcda31fa6d globus_common-11.6.tar.gz
-d91e1ddb809b69b1454dce48a951324f globus_common_setup-2.6.tar.gz
+4796125d884f32353ca1106221519f6c globus_common-14.5.tar.gz
More information about the scm-commits
mailing list