public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Sam James" <sam@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: sci-geosciences/gmt/files/, sci-geosciences/gmt/
Date: Sun,  1 Dec 2024 08:37:49 +0000 (UTC)	[thread overview]
Message-ID: <1733042193.3ca573c730559e095047180c04dc4f45dcaf758f.sam@gentoo> (raw)

commit:     3ca573c730559e095047180c04dc4f45dcaf758f
Author:     Mario Haustein <mario.haustein <AT> hrz <DOT> tu-chemnitz <DOT> de>
AuthorDate: Sat Nov 30 16:08:04 2024 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sun Dec  1 08:36:33 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3ca573c7

sci-geosciences/gmt: fix implicit function declaration

[sam: Revbump for modern C fix.]

Closes: https://bugs.gentoo.org/945480
Signed-off-by: Mario Haustein <mario.haustein <AT> hrz.tu-chemnitz.de>
Closes: https://github.com/gentoo/gentoo/pull/39531
Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../gmt/files/gmt-6.4.0-mergesort.patch            | 57 ++++++++++++++++++++++
 .../gmt/{gmt-6.4.0.ebuild => gmt-6.4.0-r1.ebuild}  |  6 ++-
 2 files changed, 62 insertions(+), 1 deletion(-)

diff --git a/sci-geosciences/gmt/files/gmt-6.4.0-mergesort.patch b/sci-geosciences/gmt/files/gmt-6.4.0-mergesort.patch
new file mode 100644
index 000000000000..55a31f29e44b
--- /dev/null
+++ b/sci-geosciences/gmt/files/gmt-6.4.0-mergesort.patch
@@ -0,0 +1,57 @@
+From a898ed6598541a70976a44ece58f5f358a80e1bc Mon Sep 17 00:00:00 2001
+From: Paul Wessel <pwessel@hawaii.edu>
+Date: Mon, 24 Apr 2023 14:41:35 +0200
+Subject: [PATCH] Ensure mergesort is declared if needed
+Upstream: https://github.com/GenericMappingTools/gmt/pull/7411
+Bug: https://bugs.gentoo.org/945480
+
+See #7410  for background.  Here I implement it a bit differently.  The mergesort function is used both in a module (gmtspatial) as well as by some gmt_*.c libraries, hence if it is not part of the standard libraries we declare it in gmt_prototypes.h so it is set for both modules and libs.
+--- a/src/gmt_init.c
++++ b/src/gmt_init.c
+@@ -167,6 +167,10 @@
+ #	include <mex.h>
+ #endif
+ 
++#ifndef HAVE_MERGESORT
++#include "mergesort.c"
++#endif
++
+ /* These are used in gmtinit_init_custom_annot and gmtinit_decode_tinfo only */
+ #define GMT_ITEM_ANNOT		0
+ #define GMT_ITEM_INTVAL		1
+--- a/src/gmt_prototypes.h
++++ b/src/gmt_prototypes.h
+@@ -39,6 +39,15 @@ EXTERN_MSC void gmt_grd_dump (struct GMT_GRID_HEADER *header, gmt_grdfloat *grid
+ EXTERN_MSC char * gmt_strdup (struct GMT_CTRL *GMT, const char *s);
+ #endif
+ 
++#ifdef __APPLE__
++/* macOX has it built in, so ensure we define this flag */
++#define HAVE_MERGESORT
++#endif
++
++#ifndef HAVE_MERGESORT
++EXTERN_MSC int mergesort (void *base, size_t nmemb, size_t size, int (*cmp)(const void *, const void *));
++#endif
++
+ /* gmt_nc.c: */
+ 
+ EXTERN_MSC bool gmt_nc_is_cube (struct GMTAPI_CTRL *API, char *file);
+--- a/src/gmtspatial.c
++++ b/src/gmtspatial.c
+@@ -165,15 +165,6 @@ struct GMTSPATIAL_PAIR {
+ 	uint64_t pos;
+ };
+ 
+-#ifdef __APPLE__
+-/* macOX has it built in, so ensure we define this flag */
+-#define HAVE_MERGESORT
+-#endif
+-
+-#ifndef HAVE_MERGESORT
+-#include "mergesort.c"
+-#endif
+-
+ static void *New_Ctrl (struct GMT_CTRL *GMT) {	/* Allocate and initialize a new control structure */
+ 	struct GMTSPATIAL_CTRL *C;
+ 

diff --git a/sci-geosciences/gmt/gmt-6.4.0.ebuild b/sci-geosciences/gmt/gmt-6.4.0-r1.ebuild
similarity index 96%
rename from sci-geosciences/gmt/gmt-6.4.0.ebuild
rename to sci-geosciences/gmt/gmt-6.4.0-r1.ebuild
index ab7b61b5eb63..7f7d94e82835 100644
--- a/sci-geosciences/gmt/gmt-6.4.0.ebuild
+++ b/sci-geosciences/gmt/gmt-6.4.0-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=8
@@ -34,6 +34,10 @@ RDEPEND="${DEPEND}
 	sci-geosciences/gshhg-gmt
 "
 
+PATCHES=(
+	"${FILESDIR}/${P}-mergesort.patch"
+)
+
 src_prepare() {
 	cmake_src_prepare
 	# Rename man pages to avoid a name conflict with gmt5


             reply	other threads:[~2024-12-01  8:37 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-12-01  8:37 Sam James [this message]
  -- strict thread matches above, loose matches on Subject: below --
2023-01-28 23:01 [gentoo-commits] repo/gentoo:master commit in: sci-geosciences/gmt/files/, sci-geosciences/gmt/ Andreas Sturmlechner
2020-02-18  3:05 Andreas Sturmlechner
2020-02-16 17:08 Andreas Sturmlechner

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1733042193.3ca573c730559e095047180c04dc4f45dcaf758f.sam@gentoo \
    --to=sam@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox