From 0ad537e99690027d0f2c80609e968ff42b0e0778 Mon Sep 17 00:00:00 2001 From: Bernard Cafarelli Date: Fri, 24 Jan 2020 15:02:59 +0100 Subject: media-gfx/geeqie: fix build with -fno-common/gcc10, thanks slyfox Also sync stable and live ebuilds Closes: https://bugs.gentoo.org/706132 Package-Manager: Portage-2.3.85, Repoman-2.3.20 Signed-off-by: Bernard Cafarelli --- .../geeqie/files/geeqie-1.5.1-no_common.patch | 75 ++++++++++++++++++++++ media-gfx/geeqie/geeqie-1.5.1.ebuild | 22 ++++--- media-gfx/geeqie/geeqie-9999.ebuild | 9 ++- 3 files changed, 94 insertions(+), 12 deletions(-) create mode 100644 media-gfx/geeqie/files/geeqie-1.5.1-no_common.patch diff --git a/media-gfx/geeqie/files/geeqie-1.5.1-no_common.patch b/media-gfx/geeqie/files/geeqie-1.5.1-no_common.patch new file mode 100644 index 000000000000..058e22686250 --- /dev/null +++ b/media-gfx/geeqie/files/geeqie-1.5.1-no_common.patch @@ -0,0 +1,75 @@ +From 543ea6d903a50c353d9e129d380240f277a670aa Mon Sep 17 00:00:00 2001 +From: Sergei Trofimovich +Date: Thu, 23 Jan 2020 08:24:52 +0000 +Subject: [PATCH] src/options: fix build failure against gcc-10 + +On gcc-10 (and gcc-9 -fno-common) build fails as: + +``` + CXXLD geeqie +ld: ui_fileops.o:(.bss+0x0): + multiple definition of `options'; ui_bookmark.o:(.bss+0x0): first defined here +ld: ui_fileops.o:(.bss+0x8): + multiple definition of `command_line'; ui_bookmark.o:(.bss+0x8): first defined here +``` + +gcc-10 will change the default from -fcommon to fno-common: +https://gcc.gnu.org/PR85678. + +The error also happens if CFLAGS=-fno-common passed explicitly. + +Reported-by: Anthony Parsons +Bug: https://bugs.gentoo.org/706132 +Signed-off-by: Sergei Trofimovich +--- + src/bar_exif.h | 3 --- + src/options.c | 3 +++ + src/options.h | 4 ++-- + 3 files changed, 5 insertions(+), 5 deletions(-) + +diff --git a/src/bar_exif.h b/src/bar_exif.h +index 63c30d4b..1395e842 100644 +--- a/src/bar_exif.h ++++ b/src/bar_exif.h +@@ -28,9 +28,6 @@ void bar_pane_exif_update_from_config(GtkWidget *pane, const gchar **attribute_n + void bar_pane_exif_entry_add_from_config(GtkWidget *pane, const gchar **attribute_names, const gchar **attribute_values); + + /* these are exposed for when duplication of the exif bar's text is needed */ +- +-const gchar **bar_exif_key_list; +-const gint bar_exif_key_count; + GList *bar_pane_exif_list(); + + #endif +diff --git a/src/options.c b/src/options.c +index 99459381..bab26acb 100644 +--- a/src/options.c ++++ b/src/options.c +@@ -32,6 +32,9 @@ + #include "ui_fileops.h" + #include "window.h" + ++ConfOptions *options; ++CommandLine *command_line; ++ + ConfOptions *init_options(ConfOptions *options) + { + gint i; +diff --git a/src/options.h b/src/options.h +index fcfe961a..02ff8fac 100644 +--- a/src/options.h ++++ b/src/options.h +@@ -329,8 +329,8 @@ struct _ConfOptions + GList *disabled_plugins; + }; + +-ConfOptions *options; +-CommandLine *command_line; ++extern ConfOptions *options; ++extern CommandLine *command_line; + + ConfOptions *init_options(ConfOptions *options); + void setup_default_options(ConfOptions *options); +-- +2.25.0 + diff --git a/media-gfx/geeqie/geeqie-1.5.1.ebuild b/media-gfx/geeqie/geeqie-1.5.1.ebuild index 88c65fbe11e3..85d8651bf878 100644 --- a/media-gfx/geeqie/geeqie-1.5.1.ebuild +++ b/media-gfx/geeqie/geeqie-1.5.1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2019 Gentoo Authors +# Copyright 1999-2020 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 @@ -30,9 +30,9 @@ RDEPEND=" tiff? ( media-libs/tiff:0 ) xmp? ( >=media-gfx/exiv2-0.17:=[xmp] ) !xmp? ( exif? ( >=media-gfx/exiv2-0.17:= ) )" -DEPEND="${RDEPEND} - dev-util/glib-utils" +DEPEND="${RDEPEND}" BDEPEND=" + dev-util/glib-utils dev-util/intltool virtual/pkgconfig nls? ( sys-devel/gettext )" @@ -40,6 +40,8 @@ BDEPEND=" REQUIRED_USE="gpu-accel? ( gtk3 ) map? ( gpu-accel )" +PATCHES=( "${FILESDIR}"/${P}-no_common.patch ) + src_prepare() { default @@ -50,7 +52,8 @@ src_prepare() { } src_configure() { - local myconf="--disable-dependency-tracking + local myeconfargs=( + --disable-dependency-tracking --with-readmedir="${EPREFIX}"/usr/share/doc/${PF} $(use_enable debug debug-log) $(use_enable ffmpegthumbnailer) @@ -63,19 +66,20 @@ src_configure() { $(use_enable map) $(use_enable nls) $(use_enable pdf) - $(use_enable tiff)" + $(use_enable tiff) + ) if use exif || use xmp; then - myconf="${myconf} --enable-exiv2" + myeconfargs+=( --enable-exiv2 ) else - myconf="${myconf} --disable-exiv2" + myeconfargs+=( --disable-exiv2) fi - econf ${myconf} + econf "${myeconfargs[@]}" } src_install() { - emake DESTDIR="${D}" install + default rm -f "${D}/usr/share/doc/${PF}/COPYING" # Application needs access to the uncompressed file diff --git a/media-gfx/geeqie/geeqie-9999.ebuild b/media-gfx/geeqie/geeqie-9999.ebuild index f40ac89c824a..a0e3b2f1b761 100644 --- a/media-gfx/geeqie/geeqie-9999.ebuild +++ b/media-gfx/geeqie/geeqie-9999.ebuild @@ -14,7 +14,7 @@ EGIT_REPO_URI="https://github.com/BestImageViewer/geeqie.git" LICENSE="GPL-2" SLOT="0" KEYWORDS="" -IUSE="debug doc exif ffmpegthumbnailer gpu-accel +gtk3 jpeg lcms lirc lua map tiff xmp" +IUSE="debug doc exif ffmpegthumbnailer gpu-accel +gtk3 jpeg lcms lirc lua map nls pdf tiff xmp" RDEPEND=" virtual/libintl @@ -28,6 +28,7 @@ RDEPEND=" lirc? ( app-misc/lirc ) lua? ( >=dev-lang/lua-5.1:= ) map? ( media-libs/libchamplain:0.12 ) + pdf? ( >=app-text/poppler-0.62[cairo] ) tiff? ( media-libs/tiff:0 ) xmp? ( >=media-gfx/exiv2-0.17:=[xmp] ) !xmp? ( exif? ( >=media-gfx/exiv2-0.17:= ) )" @@ -35,8 +36,8 @@ DEPEND="${RDEPEND}" BDEPEND=" dev-util/glib-utils dev-util/intltool - sys-devel/gettext - virtual/pkgconfig" + virtual/pkgconfig + nls? ( sys-devel/gettext )" REQUIRED_USE="gpu-accel? ( gtk3 ) map? ( gpu-accel )" @@ -63,6 +64,8 @@ src_configure() { $(use_enable lua) $(use_enable lirc) $(use_enable map) + $(use_enable nls) + $(use_enable pdf) $(use_enable tiff) ) -- cgit v1.2.3-18-g5258