backport: fix building with "gold" linker

This commit is contained in:
Nils Philippsen 2010-02-24 12:24:55 +00:00
parent 2ce7e3f1cb
commit a63f72293d
4 changed files with 161 additions and 1 deletions

View File

@ -1 +1,2 @@
gimp-2.6.8.tar.bz2 gimp-2.6.8.tar.bz2
gimp-2.6.8-4-automake.patch.bz2

149
gimp-2.6.8-gold.patch Normal file
View File

@ -0,0 +1,149 @@
From 22e091bebc9e4eac7c9f2f8a3928618d6fb0e334 Mon Sep 17 00:00:00 2001
From: Nils Philippsen <nils@redhat.com>
Date: Wed, 24 Feb 2010 12:51:01 +0100
Subject: [PATCH] patch: gold
Squashed commit of the following:
commit da5ee1fe718d9bbbda6c786ebf0f4ded43a7a246
Author: Manish Singh <yosh@gimp.org>
Date: Wed Sep 9 17:41:20 2009 -0700
Explicit shared lib deps to support gold
(attempted cherry-picking from commit
15497c1d6808b1ea479574b0b3e132484f7f172f, resolved conflicts)
Signed-off-by: Nils Philippsen <nils@redhat.com>
commit 7cae0f249a5d2110a596f3fb22cdd33b07b05f1c
Author: Manish Singh <yosh@gimp.org>
Date: Sun May 24 10:42:39 2009 -0700
Explicitly specify library dependencies at link time, so we can use gold.
(cherry picked from commit 582cb0f14eb9f145bd2a2f5c9fda12309ae0229f)
Signed-off-by: Nils Philippsen <nils@redhat.com>
---
libgimpthumb/Makefile.am | 5 ++++-
plug-ins/common/Makefile.am | 11 ++++++-----
plug-ins/common/mkgen.pl | 11 ++++++-----
plug-ins/help-browser/Makefile.am | 1 +
plug-ins/metadata/Makefile.am | 5 ++++-
5 files changed, 21 insertions(+), 12 deletions(-)
diff --git a/libgimpthumb/Makefile.am b/libgimpthumb/Makefile.am
index 2e7b531..ee26219 100644
--- a/libgimpthumb/Makefile.am
+++ b/libgimpthumb/Makefile.am
@@ -86,7 +86,10 @@ noinst_PROGRAMS = gimp-thumbnail-list
gimp_thumbnail_list_SOURCES = gimp-thumbnail-list.c
-gimp_thumbnail_list_LDADD = libgimpthumb-$(GIMP_API_VERSION).la
+gimp_thumbnail_list_LDADD = \
+ libgimpthumb-$(GIMP_API_VERSION).la \
+ $(GDK_PIXBUF_LIBS) \
+ $(GLIB_LIBS)
install-data-local: install-ms-lib install-libtool-import-lib
diff --git a/plug-ins/common/Makefile.am b/plug-ins/common/Makefile.am
index 66dc6dd..d58ecee 100644
--- a/plug-ins/common/Makefile.am
+++ b/plug-ins/common/Makefile.am
@@ -7,21 +7,22 @@
## Modify those two files instead of this one; for most
## plug-ins you should only need to modify plugin-defs.pl.
+if OS_WIN32
+mwindows = -mwindows
+else
+libm = -lm
+endif
libgimp = $(top_builddir)/libgimp/libgimp-$(GIMP_API_VERSION).la
libgimpbase = $(top_builddir)/libgimpbase/libgimpbase-$(GIMP_API_VERSION).la
libgimpcolor = $(top_builddir)/libgimpcolor/libgimpcolor-$(GIMP_API_VERSION).la
libgimpconfig = $(top_builddir)/libgimpconfig/libgimpconfig-$(GIMP_API_VERSION).la
-libgimpmath = $(top_builddir)/libgimpmath/libgimpmath-$(GIMP_API_VERSION).la
+libgimpmath = $(top_builddir)/libgimpmath/libgimpmath-$(GIMP_API_VERSION).la $(libm)
libgimpmodule = $(top_builddir)/libgimpmodule/libgimpmodule-$(GIMP_API_VERSION).la
libgimpui = $(top_builddir)/libgimp/libgimpui-$(GIMP_API_VERSION).la
libgimpwidgets = $(top_builddir)/libgimpwidgets/libgimpwidgets-$(GIMP_API_VERSION).la
-if OS_WIN32
-mwindows = -mwindows
-endif
-
AM_LDFLAGS = $(mwindows)
libexecdir = $(gimpplugindir)/plug-ins
diff --git a/plug-ins/common/mkgen.pl b/plug-ins/common/mkgen.pl
index 40b4b74..b0cd786 100755
--- a/plug-ins/common/mkgen.pl
+++ b/plug-ins/common/mkgen.pl
@@ -51,21 +51,22 @@ print MK <<EOT;
## Modify those two files instead of this one; for most
## plug-ins you should only need to modify plugin-defs.pl.
+if OS_WIN32
+mwindows = -mwindows
+else
+libm = -lm
+endif
libgimp = \$(top_builddir)/libgimp/libgimp-\$(GIMP_API_VERSION).la
libgimpbase = \$(top_builddir)/libgimpbase/libgimpbase-\$(GIMP_API_VERSION).la
libgimpcolor = \$(top_builddir)/libgimpcolor/libgimpcolor-\$(GIMP_API_VERSION).la
libgimpconfig = \$(top_builddir)/libgimpconfig/libgimpconfig-\$(GIMP_API_VERSION).la
-libgimpmath = \$(top_builddir)/libgimpmath/libgimpmath-\$(GIMP_API_VERSION).la
+libgimpmath = \$(top_builddir)/libgimpmath/libgimpmath-\$(GIMP_API_VERSION).la \$(libm)
libgimpmodule = \$(top_builddir)/libgimpmodule/libgimpmodule-\$(GIMP_API_VERSION).la
libgimpui = \$(top_builddir)/libgimp/libgimpui-\$(GIMP_API_VERSION).la
libgimpwidgets = \$(top_builddir)/libgimpwidgets/libgimpwidgets-\$(GIMP_API_VERSION).la
-if OS_WIN32
-mwindows = -mwindows
-endif
-
AM_LDFLAGS = \$(mwindows)
libexecdir = \$(gimpplugindir)/plug-ins
diff --git a/plug-ins/help-browser/Makefile.am b/plug-ins/help-browser/Makefile.am
index 14fbe02..7360433 100644
--- a/plug-ins/help-browser/Makefile.am
+++ b/plug-ins/help-browser/Makefile.am
@@ -36,6 +36,7 @@ LDADD = \
$(libgimpbase) \
$(WEBKIT_LIBS) \
$(GIO_LIBS) \
+ $(GLIB_LIBS) \
$(RT_LIBS) \
$(INTLLIBS)
diff --git a/plug-ins/metadata/Makefile.am b/plug-ins/metadata/Makefile.am
index dd9bb3d..935b069 100644
--- a/plug-ins/metadata/Makefile.am
+++ b/plug-ins/metadata/Makefile.am
@@ -55,11 +55,14 @@ INCLUDES = \
-I$(includedir)
LDADD = \
+ $(libgimpui) \
+ $(libgimpwidgets) \
$(libgimp) \
+ $(libgimpmath) \
$(libgimpconfig) \
$(libgimpcolor) \
$(libgimpbase) \
- $(libgimpmath) \
+ $(EXIF_LIBS) \
$(GTK_LIBS) \
$(RT_LIBS) \
$(INTLLIBS)
--
1.6.6.1

View File

@ -31,7 +31,7 @@ Summary: GNU Image Manipulation Program
Name: gimp Name: gimp
Epoch: 2 Epoch: 2
Version: 2.6.8 Version: 2.6.8
Release: 3%{?dist} Release: 4%{?dist}
%define binver 2.6 %define binver 2.6
%define gimp_lang_ver 20 %define gimp_lang_ver 20
%define interfacever 2.0 %define interfacever 2.0
@ -126,6 +126,10 @@ Patch1: gimp-2.6.7-jpeg-units.patch
# https://bugzilla.gnome.org/show_bug.cgi?id=556896 # https://bugzilla.gnome.org/show_bug.cgi?id=556896
# "Dialogs don't get minimized with single image window" # "Dialogs don't get minimized with single image window"
Patch2: gimp-2.6.6-minimize-dialogs.patch Patch2: gimp-2.6.6-minimize-dialogs.patch
# backport: fix building with "gold" linker
Patch3: gimp-2.6.8-gold.patch
# Makefile.in files generated by Makefile.am changed in patches
Patch10: gimp-2.6.8-4-automake.patch.bz2
%description %description
GIMP (GNU Image Manipulation Program) is a powerful image composition and GIMP (GNU Image Manipulation Program) is a powerful image composition and
@ -207,6 +211,8 @@ EOF
%patch0 -p1 -b .xdg-open %patch0 -p1 -b .xdg-open
%patch1 -p1 -b .jpeg-units %patch1 -p1 -b .jpeg-units
%patch2 -p1 -b .minimize-dialogs %patch2 -p1 -b .minimize-dialogs
%patch3 -p1 -b .gold
%patch10 -p1 -b .automake
%build %build
# if [ ! -f configure ]; then # if [ ! -f configure ]; then
@ -497,6 +503,9 @@ fi
%{_libdir}/gimp/%{interfacever}/plug-ins/help-browser %{_libdir}/gimp/%{interfacever}/plug-ins/help-browser
%changelog %changelog
* Wed Feb 24 2010 Nils Philippsen <nils@redhat.com> - 2:2.6.8-4
- backport: fix building with "gold" linker
* Wed Jan 27 2010 Nils Philippsen <nils@redhat.com> - 2:2.6.8-3 * Wed Jan 27 2010 Nils Philippsen <nils@redhat.com> - 2:2.6.8-3
- remove wrong dependency (#558836) - remove wrong dependency (#558836)

View File

@ -1 +1,2 @@
a4d9462c9420954824a80c9b1963f9d9 gimp-2.6.8.tar.bz2 a4d9462c9420954824a80c9b1963f9d9 gimp-2.6.8.tar.bz2
68554b135a5ffe592a14a9d829585e14 gimp-2.6.8-4-automake.patch.bz2