aboutsummaryrefslogtreecommitdiff
path: root/packages/gdb
diff options
context:
space:
mode:
Diffstat (limited to 'packages/gdb')
-rw-r--r--packages/gdb/15.2/0000-readline-bring-in-signal.c-from-gdb-16-branch.patch173
-rw-r--r--packages/gdb/16.1/chksum8
-rw-r--r--packages/gdb/16.3/0001-readline-tcap.h-Update-definitions-for-C23.patch49
-rw-r--r--packages/gdb/16.3/chksum8
-rw-r--r--packages/gdb/16.3/version.desc (renamed from packages/gdb/16.1/version.desc)0
5 files changed, 230 insertions, 8 deletions
diff --git a/packages/gdb/15.2/0000-readline-bring-in-signal.c-from-gdb-16-branch.patch b/packages/gdb/15.2/0000-readline-bring-in-signal.c-from-gdb-16-branch.patch
new file mode 100644
index 00000000..914efb61
--- /dev/null
+++ b/packages/gdb/15.2/0000-readline-bring-in-signal.c-from-gdb-16-branch.patch
@@ -0,0 +1,173 @@
+From 6c96a41828a0f34cc4480c08a9c23e0ab2ed2cc0 Mon Sep 17 00:00:00 2001
+From: Chris Packham <judge.packham@gmail.com>
+Date: Mon, 2 Jun 2025 15:15:05 +1200
+Subject: [PATCH] readline: bring in signal.c from gdb-16 branch
+
+Readline is updated in gdb-16. This has fixes for some build issues with
+newer C23 compilers but is a little too big to just bring in on it's
+own. Bring in signal.c from the gdb-16 branch to resolve the immediate
+issues.
+---
+ readline/readline/signals.c | 71 +++++++++++++-------------------------------
+ 1 file changed, 22 insertions(+), 49 deletions(-)
+
+--- a/readline/readline/signals.c
++++ b/readline/readline/signals.c
+@@ -1,6 +1,6 @@
+ /* signals.c -- signal handling support for readline. */
+
+-/* Copyright (C) 1987-2017 Free Software Foundation, Inc.
++/* Copyright (C) 1987-2021 Free Software Foundation, Inc.
+
+ This file is part of the GNU Readline Library (Readline), a library
+ for reading lines of text with interactive input and history editing.
+@@ -48,23 +48,11 @@
+
+ #if defined (HANDLE_SIGNALS)
+
+-#if !defined (RETSIGTYPE)
+-# if defined (VOID_SIGHANDLER)
+-# define RETSIGTYPE void
+-# else
+-# define RETSIGTYPE int
+-# endif /* !VOID_SIGHANDLER */
+-#endif /* !RETSIGTYPE */
+-
+-#if defined (VOID_SIGHANDLER)
+-# define SIGHANDLER_RETURN return
+-#else
+-# define SIGHANDLER_RETURN return (0)
+-#endif
++#define SIGHANDLER_RETURN return
+
+ /* This typedef is equivalent to the one for Function; it allows us
+ to say SigHandler *foo = signal (SIGKILL, SIG_IGN); */
+-typedef RETSIGTYPE SigHandler ();
++typedef void SigHandler (int);
+
+ #if defined (HAVE_POSIX_SIGNALS)
+ typedef struct sigaction sighandler_cxt;
+@@ -78,12 +66,12 @@
+ # define SA_RESTART 0
+ #endif
+
+-static SigHandler *rl_set_sighandler PARAMS((int, SigHandler *, sighandler_cxt *));
+-static void rl_maybe_set_sighandler PARAMS((int, SigHandler *, sighandler_cxt *));
+-static void rl_maybe_restore_sighandler PARAMS((int, sighandler_cxt *));
++static SigHandler *rl_set_sighandler (int, SigHandler *, sighandler_cxt *);
++static void rl_maybe_set_sighandler (int, SigHandler *, sighandler_cxt *);
++static void rl_maybe_restore_sighandler (int, sighandler_cxt *);
+
+-static RETSIGTYPE rl_signal_handler PARAMS((int));
+-static RETSIGTYPE _rl_handle_signal PARAMS((int));
++static void rl_signal_handler (int);
++static void _rl_handle_signal (int);
+
+ /* Exported variables for use by applications. */
+
+@@ -136,7 +124,7 @@
+ /* Readline signal handler functions. */
+
+ /* Called from RL_CHECK_SIGNALS() macro to run signal handling code. */
+-RETSIGTYPE
++void
+ _rl_signal_handler (int sig)
+ {
+ _rl_caught_signal = 0; /* XXX */
+@@ -163,7 +151,7 @@
+ SIGHANDLER_RETURN;
+ }
+
+-static RETSIGTYPE
++static void
+ rl_signal_handler (int sig)
+ {
+ _rl_caught_signal = sig;
+@@ -173,7 +161,7 @@
+ /* This is called to handle a signal when it is safe to do so (out of the
+ signal handler execution path). Called by _rl_signal_handler for all the
+ signals readline catches except SIGWINCH. */
+-static RETSIGTYPE
++static void
+ _rl_handle_signal (int sig)
+ {
+ int block_sig;
+@@ -222,6 +210,9 @@
+ switch (sig)
+ {
+ case SIGINT:
++ /* We will end up blocking SIGTTOU while we are resetting the tty, so
++ watch out for this if it causes problems. We could prevent this by
++ setting block_sig to 1 without modifying SET. */
+ _rl_reset_completion_state ();
+ rl_free_line_state ();
+ #if defined (READLINE_CALLBACKS)
+@@ -242,8 +233,11 @@
+ this even if we've been stopped on SIGTTOU, since we handle signals
+ when we have returned from the signal handler and the signal is no
+ longer blocked. */
+- sigaddset (&set, SIGTTOU);
+- block_sig = 1;
++ if (block_sig == 0)
++ {
++ sigaddset (&set, SIGTTOU);
++ block_sig = 1;
++ }
+ # endif
+ #endif /* SIGTSTP */
+ /* Any signals that should be blocked during cleanup should go here. */
+@@ -261,6 +255,8 @@
+ case SIGTERM:
+ #if defined (SIGALRM)
+ case SIGALRM:
++ if (sig == SIGALRM)
++ _rl_timeout_handle_sigalrm ();
+ #endif
+ #if defined (SIGQUIT)
+ case SIGQUIT:
+@@ -285,19 +281,6 @@
+
+ /* We don't have to bother unblocking the signal because we are not
+ running in a signal handler context. */
+-#if 0
+-#if defined (HAVE_POSIX_SIGNALS)
+- /* Make sure this signal is not blocked when we resend it to the
+- calling application. */
+- sigemptyset (&set);
+- sigprocmask (SIG_BLOCK, (sigset_t *)NULL, &set);
+- sigdelset (&set, sig);
+-#else /* !HAVE_POSIX_SIGNALS */
+-# if defined (HAVE_BSD_SIGNALS)
+- omask = sigblock (0);
+-# endif /* HAVE_BSD_SIGNALS */
+-#endif /* !HAVE_POSIX_SIGNALS */
+-#endif
+
+ #if defined (__EMX__)
+ signal (sig, SIG_ACK);
+@@ -311,16 +294,6 @@
+
+ /* We don't need to modify the signal mask now that this is not run in
+ a signal handler context. */
+-#if 0
+- /* Let the signal that we just sent through if it is blocked. */
+-#if defined (HAVE_POSIX_SIGNALS)
+- sigprocmask (SIG_SETMASK, &set, (sigset_t *)NULL);
+-#else /* !HAVE_POSIX_SIGNALS */
+-# if defined (HAVE_BSD_SIGNALS)
+- sigsetmask (omask & ~(sigmask (sig)));
+-# endif /* HAVE_BSD_SIGNALS */
+-#endif /* !HAVE_POSIX_SIGNALS */
+-#endif
+
+ rl_reset_after_signal ();
+ }
+@@ -330,7 +303,7 @@
+ }
+
+ #if defined (SIGWINCH)
+-static RETSIGTYPE
++static void
+ rl_sigwinch_handler (int sig)
+ {
+ SigHandler *oh;
diff --git a/packages/gdb/16.1/chksum b/packages/gdb/16.1/chksum
deleted file mode 100644
index b5dd9306..00000000
--- a/packages/gdb/16.1/chksum
+++ /dev/null
@@ -1,8 +0,0 @@
-md5 gdb-16.1.tar.xz 87c47779841e183907ec65db9428aa95
-sha1 gdb-16.1.tar.xz e619781131eb79fad764a02cfc0ebe886fd76fcd
-sha256 gdb-16.1.tar.xz c2cc5ccca029b7a7c3879ce8a96528fdfd056b4d884f2b0511e8f7bc723355c6
-sha512 gdb-16.1.tar.xz 17b322fde0655a849506851c879aba9ad1f8bfee804b900efc718806091bec75511383bd4d632b8b32a32ef207233331581501157df18a8df528abe6ff667577
-md5 gdb-16.1.tar.gz 52324289d7330f84cd5fd577408bc7c2
-sha1 gdb-16.1.tar.gz 918cbeb22bf8069bbba323640ab2e96b00bc9425
-sha256 gdb-16.1.tar.gz ff2cfff60546a3851561ddac7c012a7c184bb95b66286ae332d16880f77247c9
-sha512 gdb-16.1.tar.gz dc198caf6718e3cdffcfb3cb6c8ba39faae10828146e4d60f89b260d7215cbc4e54604424587e840429d0c3a8f5a8356066d5e951b135f5b247ffe893963af2e
diff --git a/packages/gdb/16.3/0001-readline-tcap.h-Update-definitions-for-C23.patch b/packages/gdb/16.3/0001-readline-tcap.h-Update-definitions-for-C23.patch
new file mode 100644
index 00000000..d62b2fc7
--- /dev/null
+++ b/packages/gdb/16.3/0001-readline-tcap.h-Update-definitions-for-C23.patch
@@ -0,0 +1,49 @@
+From 11d45226114bf2e1405964c81c7610a8d6074947 Mon Sep 17 00:00:00 2001
+From: Chris Packham <judge.packham@gmail.com>
+Date: Wed, 30 Apr 2025 16:37:48 +1200
+Subject: [PATCH] readline/tcap.h: Update definitions for C23
+
+C23 changes how function definitions like int `int tputs ()` are
+interpreted. In older standards this meant that the function arguments
+are unknown. In C23 this is interpreted as `int tputs (void)` so now
+when we compile with GCC15 (which defaults to -std=gnu23) we get an
+error such as
+
+ readline/display.c:2839:17: error: too many arguments to function 'tputs'; expected 0, have 3
+
+Add the function arguments for tgetent(), tgetflag(), tgetnum(),
+tgetstr(), tputs() and tgoto().
+
+Signed-off-by: Chris Packham <judge.packham@gmail.com>
+---
+ readline/readline/tcap.h | 12 ++++++------
+ 1 file changed, 6 insertions(+), 6 deletions(-)
+
+diff --git a/readline/readline/tcap.h b/readline/readline/tcap.h
+index 859e6eed5aa..9e2ed124e49 100644
+--- a/readline/readline/tcap.h
++++ b/readline/readline/tcap.h
+@@ -46,14 +46,14 @@ extern char *UP, *BC;
+
+ extern short ospeed;
+
+-extern int tgetent ();
+-extern int tgetflag ();
+-extern int tgetnum ();
+-extern char *tgetstr ();
++extern int tgetent (char *bp, const char *name);
++extern int tgetflag (char *id);
++extern int tgetnum (char *id);
++extern char *tgetstr (char *id, char **area);
+
+-extern int tputs ();
++extern int tputs (const char *str, int affcnt, int (*putc)(int));
+
+-extern char *tgoto ();
++extern char *tgoto (const char *cap, int col, int row);
+
+ #endif /* HAVE_TERMCAP_H */
+
+--
+2.49.0
+
diff --git a/packages/gdb/16.3/chksum b/packages/gdb/16.3/chksum
new file mode 100644
index 00000000..1d2fa479
--- /dev/null
+++ b/packages/gdb/16.3/chksum
@@ -0,0 +1,8 @@
+md5 gdb-16.3.tar.xz f7a7e2d0a6d28622ac69a3623b23876b
+sha1 gdb-16.3.tar.xz ac4b56773e6abe4a5467a0708a185b4279e8faf4
+sha256 gdb-16.3.tar.xz bcfcd095528a987917acf9fff3f1672181694926cc18d609c99d0042c00224c5
+sha512 gdb-16.3.tar.xz fffd6689c3405466a179670b04720dc825e4f210a761f63dd2b33027432f8cd5d1c059c431a5ec9e165eedd1901220b5329d73c522f9a444788888c731b29e9c
+md5 gdb-16.3.tar.gz f7114f25fd3707bddf6d1c8eca61f614
+sha1 gdb-16.3.tar.gz 0e327ebcc557c9c3a3b7de3a541c6830491550aa
+sha256 gdb-16.3.tar.gz 86015081217dc82c5485db9ce864dcc0b703759d2bdbe4441b095c5f900a6a37
+sha512 gdb-16.3.tar.gz 68fa3a1ac67cb07759210cf464d70dddbb89bc6d480112102c343ac111db2698c321aa5ddbc23d84da8cc3f54ecd32d9149d969be5ce666ac77c24be473f4f50
diff --git a/packages/gdb/16.1/version.desc b/packages/gdb/16.3/version.desc
index e69de29b..e69de29b 100644
--- a/packages/gdb/16.1/version.desc
+++ b/packages/gdb/16.3/version.desc