aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Zander <riggs@FreeBSD.org>2016-06-05 19:57:53 +0000
committerThomas Zander <riggs@FreeBSD.org>2016-06-05 19:57:53 +0000
commit7b4da9c95a287095bb5c9aa18bb0854a73b42c05 (patch)
tree8329b60009cc77e516bf10180563f8b6ba72b907
parentbd3a95ba8f7cee044fbf7a2bd9cd20ce84157104 (diff)
downloadports-7b4da9c95a287095bb5c9aa18bb0854a73b42c05.tar.gz
ports-7b4da9c95a287095bb5c9aa18bb0854a73b42c05.zip
MFH: r416247 r416392
Make GDB build when basename() is POSIX compliant. GDB's libiberty.h has a prototype of the basename() function it which does not match the one that is part of POSIX, declared in libgen.h. This is normally never visible, as GDB never includes libgen.h. On FreeBSD, it unfortunately is, as our locally added copy of kgdb includes both. Fix up libiberty.h to just include libgen.h. I'm currently discussing with upstream how a clean fix should be done, but I guess that requires more refactoring to the existing code. We'd better not bother importing that and stick to this compact workaround. Reviewed by: bapt@, mi@, Luca Pizzamiglio Differential Revision: https://reviews.freebsd.org/D6630 Update to upstream release 7.11.1 Includes several runtime fixes, e.g. crashes on reverse-stepi and use-after-free errors, see https://www.gnu.org/software/gdb/news/ PR: 209935 Submitted by: luca.pizzamiglio@gmail.com (maintainer) Approved by: ports-secteam (junovitch)
Notes
Notes: svn path=/branches/2016Q2/; revision=416424
-rw-r--r--devel/gdb/Makefile4
-rw-r--r--devel/gdb/distinfo5
-rw-r--r--devel/gdb/files/patch-libiberty-basename11
-rw-r--r--devel/gdb66/files/patch-libiberty-basename11
4 files changed, 27 insertions, 4 deletions
diff --git a/devel/gdb/Makefile b/devel/gdb/Makefile
index 2ceee41c30ed..e7312d07f961 100644
--- a/devel/gdb/Makefile
+++ b/devel/gdb/Makefile
@@ -2,8 +2,8 @@
# $FreeBSD$
PORTNAME= gdb
-PORTVERSION= 7.11
-PORTREVISION= 2
+PORTVERSION= 7.11.1
+#PORTREVISION= 2
CATEGORIES= devel
MASTER_SITES= GNU
diff --git a/devel/gdb/distinfo b/devel/gdb/distinfo
index 3a0903295e99..9da32448c992 100644
--- a/devel/gdb/distinfo
+++ b/devel/gdb/distinfo
@@ -1,2 +1,3 @@
-SHA256 (gdb-7.11.tar.xz) = 7a434116cb630d77bb40776e8f5d3937bed11dea56bafebb4d2bc5dd389fe5c1
-SIZE (gdb-7.11.tar.xz) = 18934392
+TIMESTAMP = 1464770611
+SHA256 (gdb-7.11.1.tar.xz) = e9216da4e3755e9f414c1aa0026b626251dfc57ffe572a266e98da4f6988fc70
+SIZE (gdb-7.11.1.tar.xz) = 18947760
diff --git a/devel/gdb/files/patch-libiberty-basename b/devel/gdb/files/patch-libiberty-basename
new file mode 100644
index 000000000000..8d37ee89850a
--- /dev/null
+++ b/devel/gdb/files/patch-libiberty-basename
@@ -0,0 +1,11 @@
+--- include/libiberty.h
++++ include/libiberty.h
+@@ -109,7 +109,7 @@
+ || defined (__FreeBSD__) || defined (__OpenBSD__) || defined (__NetBSD__) \
+ || defined (__CYGWIN__) || defined (__CYGWIN32__) || defined (__MINGW32__) \
+ || defined (__DragonFly__) || defined (HAVE_DECL_BASENAME)
+-extern char *basename (const char *) ATTRIBUTE_RETURNS_NONNULL ATTRIBUTE_NONNULL(1);
++#include <libgen.h>
+ #else
+ /* Do not allow basename to be used if there is no prototype seen. We
+ either need to use the above prototype or have one from
diff --git a/devel/gdb66/files/patch-libiberty-basename b/devel/gdb66/files/patch-libiberty-basename
new file mode 100644
index 000000000000..bdc4a4aaacbe
--- /dev/null
+++ b/devel/gdb66/files/patch-libiberty-basename
@@ -0,0 +1,11 @@
+--- include/libiberty.h
++++ include/libiberty.h
+@@ -98,7 +98,7 @@
+ is 1, we found it so don't provide any declaration at all. */
+ #if !HAVE_DECL_BASENAME
+ #if defined (__GNU_LIBRARY__ ) || defined (__linux__) || defined (__FreeBSD__) || defined (__OpenBSD__) || defined(__NetBSD__) || defined (__CYGWIN__) || defined (__CYGWIN32__) || defined (__MINGW32__) || defined (HAVE_DECL_BASENAME)
+-extern char *basename (const char *);
++#include <libgen.h>
+ #else
+ /* Do not allow basename to be used if there is no prototype seen. We
+ either need to use the above prototype or have one from