[gentoo-commits] repo/gentoo:master commit in: dev-libs/boehm-gc/files/, dev-libs/boehm-gc/

2022-09-13 Thread Sam James
commit: abadda5a754ae656af46a3a02f7bedc50343a797
Author: Sam James  gentoo  org>
AuthorDate: Tue Sep 13 18:45:15 2022 +
Commit: Sam James  gentoo  org>
CommitDate: Tue Sep 13 18:45:23 2022 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=abadda5a

dev-libs/boehm-gc: fix configure tests with Clang 15

Signed-off-by: Sam James  gentoo.org>

 dev-libs/boehm-gc/boehm-gc-8.2.2-r1.ebuild | 63 ++
 .../files/boehm-gc-8.2.2-clang-15-configure.patch  | 43 +++
 2 files changed, 106 insertions(+)

diff --git a/dev-libs/boehm-gc/boehm-gc-8.2.2-r1.ebuild 
b/dev-libs/boehm-gc/boehm-gc-8.2.2-r1.ebuild
new file mode 100644
index ..28f0b8b30a27
--- /dev/null
+++ b/dev-libs/boehm-gc/boehm-gc-8.2.2-r1.ebuild
@@ -0,0 +1,63 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# autotools for Clang 15 configure patch
+inherit autotools multilib-minimal #libtool
+
+MY_P="gc-${PV}"
+
+DESCRIPTION="The Boehm-Demers-Weiser conservative garbage collector"
+HOMEPAGE="https://www.hboehm.info/gc/ https://github.com/ivmai/bdwgc/;
+SRC_URI="https://github.com/ivmai/bdwgc/releases/download/v${PV}/${MY_P}.tar.gz;
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="boehm-gc"
+# SONAME: libgc.so.1 libgccpp.so.1
+# We've been using subslot 0 for these instead of "1.1".
+SLOT="0"
+# Upstream marked this version as "Pre-release"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 
~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos 
~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="cxx +large static-libs +threads"
+
+RDEPEND=">=dev-libs/libatomic_ops-7.4[${MULTILIB_USEDEP}]"
+DEPEND="${RDEPEND}"
+BDEPEND="virtual/pkgconfig"
+
+PATCHES=(
+   "${FILESDIR}"/${PN}-8.2.2-clang-15-configure.patch
+)
+
+src_prepare() {
+   default
+
+   # bug #594754
+   #elibtoolize
+
+   eautoreconf
+}
+
+multilib_src_configure() {
+   local config=(
+   --disable-docs
+   --with-libatomic-ops
+   $(use_enable cxx cplusplus)
+   $(use_enable static-libs static)
+   $(use threads || echo --disable-threads)
+   $(use_enable large large-config)
+   )
+
+   ECONF_SOURCE="${S}" econf "${config[@]}"
+}
+
+multilib_src_install_all() {
+   local HTML_DOCS=( doc/*.md )
+   einstalldocs
+   dodoc doc/README{.environment,.linux,.macros}
+
+   # Package provides .pc files
+   find "${ED}" -name '*.la' -delete || die
+
+   newman doc/gc.man GC_malloc.1
+}

diff --git a/dev-libs/boehm-gc/files/boehm-gc-8.2.2-clang-15-configure.patch 
b/dev-libs/boehm-gc/files/boehm-gc-8.2.2-clang-15-configure.patch
new file mode 100644
index ..87045eaa912f
--- /dev/null
+++ b/dev-libs/boehm-gc/files/boehm-gc-8.2.2-clang-15-configure.patch
@@ -0,0 +1,43 @@
+https://github.com/ivmai/bdwgc/pull/474
+
+From b3428e52cb9af18d6c85d0027b9c86e9b44e2e4f Mon Sep 17 00:00:00 2001
+From: Sam James 
+Date: Tue, 13 Sep 2022 19:37:59 +0100
+Subject: [PATCH] Fix configure with Clang 15 (implicit function declarations)
+
+Clang 15 makes implicit function declarations an error by default
+which leads to configure falsely thinking `pthread_setname_np` is
+not present:
+```
+checking for pthread_setname_np... no
+```
+
+This fixes that issue and the following errors:
+```
+error: call to undeclared function 'pthread_setname_np'; ISO C99 and later do 
not support implicit function declarations [-Wimplicit-function-declaration]
+error: call to undeclared function 'pthread_setname_np'; ISO C99 and later do 
not support implicit function declarations [-Wimplicit-function-declaration]
+```
+
+Signed-off-by: Sam James 
+--- a/configure.ac
 b/configure.ac
+@@ -834,12 +834,16 @@ AS_IF([test "$THREADS" = posix],
+   [AC_MSG_CHECKING(for pthread_setname_np)
+old_CFLAGS="$CFLAGS"
+CFLAGS="$CFLAGS $CFLAGS_EXTRA -Werror"
+-   AC_TRY_COMPILE([#include ],
++   AC_TRY_COMPILE([
++#define _GNU_SOURCE 1
++#include ],
+   [pthread_setname_np("thread-name")],
+  [AC_MSG_RESULT([yes (w/o tid)])
+   AC_DEFINE([HAVE_PTHREAD_SETNAME_NP_WITHOUT_TID], [1],
+ [Define to use 'pthread_setname_np(const char*)' function.])],
+- [AC_TRY_COMPILE([#include ],
++ [AC_TRY_COMPILE([
++#define _GNU_SOURCE 1
++#include ],
+  [pthread_setname_np(pthread_self(), "thread-name-%u", 
0)],
+[AC_MSG_RESULT([yes (with tid and arg)])
+ AC_DEFINE([HAVE_PTHREAD_SETNAME_NP_WITH_TID_AND_ARG], [1],
+



[gentoo-commits] repo/gentoo:master commit in: dev-libs/boehm-gc/files/

2018-07-11 Thread Tony Vroon
commit: 1e803e9c122b8520079ac43abd76277dd6798298
Author: Michael Mair-Keimberger  gmail  com>
AuthorDate: Sun Jul  8 08:50:57 2018 +
Commit: Tony Vroon  gentoo  org>
CommitDate: Wed Jul 11 11:35:00 2018 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1e803e9c

dev-libs/boehm-gc: remove unused patches

Closes: https://github.com/gentoo/gentoo/pull/9121

 dev-libs/boehm-gc/files/boehm-gc-6.5-gentoo.patch  | 83 --
 .../files/gc6.6-builtin-backtrace-uclibc.patch | 13 
 2 files changed, 96 deletions(-)

diff --git a/dev-libs/boehm-gc/files/boehm-gc-6.5-gentoo.patch 
b/dev-libs/boehm-gc/files/boehm-gc-6.5-gentoo.patch
deleted file mode 100644
index 72eb881eef7..000
--- a/dev-libs/boehm-gc/files/boehm-gc-6.5-gentoo.patch
+++ /dev/null
@@ -1,83 +0,0 @@
-diff -ur gc6.5.orig/include/private/gcconfig.h gc6.5/include/private/gcconfig.h
 gc6.5.orig/include/private/gcconfig.h  2005-08-05 00:03:00.0 
+0200
-+++ gc6.5/include/private/gcconfig.h   2005-08-05 00:08:42.0 +0200
-@@ -1100,6 +1100,9 @@
- # endif
- # define OS_TYPE "LINUX"
- #   define LINUX_STACKBOTTOM
-+  /* On I386 Linux, enable HEURISTIC2 as a backup to /proc data   */
-+  /* for the case where /proc is missing or nobbled (grsec)   */
-+# define HEURISTIC2
- # if 0
- #   define HEURISTIC1
- # undef STACK_GRAN
-@@ -1901,6 +1904,9 @@
- #   ifdef LINUX
- # define OS_TYPE "LINUX"
- #   define LINUX_STACKBOTTOM
-+  /* On x86_64 Linux, enable HEURISTIC2 as a backup to /proc data */
-+  /* for the case where /proc is missing or nobbled (grsec)   */
-+# define HEURISTIC2
- #   if !defined(GC_LINUX_THREADS) || !defined(REDIRECT_MALLOC)
- # define MPROTECT_VDB
- # else
-diff -ur gc6.5.orig/os_dep.c gc6.5/os_dep.c
 gc6.5.orig/os_dep.c2005-08-05 00:03:00.0 +0200
-+++ gc6.5/os_dep.c 2005-08-05 00:07:56.0 +0200
-@@ -967,7 +967,13 @@
- #   endif
- f = open("/proc/self/stat", O_RDONLY);
- if (f < 0 || STAT_READ(f, stat_buf, STAT_BUF_SIZE) < 2 * STAT_SKIP) {
-+/* if /proc/self/stat isn't available, and HEURISTIC2 is possible,  */
-+/* return NULL so that HEURISTIC2 will be tried.  Otherwise bail.   */
-+# ifdef HEURISTIC2
-+  return (ptr_t)NULL;
-+# else
-   ABORT("Couldn't read /proc/self/stat");
-+# endif
- }
- c = stat_buf[buf_offset++];
- /* Skip the required number of fields.  This number is hopefully  */
-@@ -983,7 +989,16 @@
-   c = stat_buf[buf_offset++];
- }
- close(f);
--if (result < 0x1000) ABORT("Absurd stack bottom value");
-+if (result < 0x1000) {
-+/* if stack base result is silly (e.g. is 0 due to grsec), and*/
-+/* HEURISTIC2 is enabled, return NULL so that HEURISTIC2 will be  */
-+/* tried.  Otherwise bail.
*/
-+# ifdef HEURISTIC2
-+  return (ptr_t)NULL;
-+# else
-+  ABORT("Absurd stack bottom value");
-+# endif
-+  }
- return (ptr_t)result;
-   }
- 
-@@ -1045,6 +1060,12 @@
-  result = GC_freebsd_stack_base();
- # endif
- # ifdef HEURISTIC2
-+/* if both LINUX_STACKBOTTOM and HEURISTIC2 are enabled, try HEURISTIC2   
*/
-+/* when the LINUX_STACKBOTTOM returns NULL (indicating failure to get */
-+/* a sensible result from /proc/self/stat)*/
-+# ifdef LINUX_STACKBOTTOM
-+  if (result == (ptr_t)NULL) {
-+# endif
- # ifdef STACK_GROWS_DOWN
-   result = GC_find_limit((ptr_t)(), TRUE);
- # ifdef HEURISTIC2_LIMIT
-@@ -1062,6 +1083,11 @@
-   }
- # endif
- # endif
-+/* tail of extra 'if' condition when both LINUX_STACKBOTTOM and   
*/
-+/* HEURISTIC are configured.  */
-+# ifdef LINUX_STACKBOTTOM
-+  }
-+# endif
- 
- # endif /* HEURISTIC2 */
- # ifdef STACK_GROWS_DOWN

diff --git a/dev-libs/boehm-gc/files/gc6.6-builtin-backtrace-uclibc.patch 
b/dev-libs/boehm-gc/files/gc6.6-builtin-backtrace-uclibc.patch
deleted file mode 100644
index 1d3e5780e74..000
--- a/dev-libs/boehm-gc/files/gc6.6-builtin-backtrace-uclibc.patch
+++ /dev/null
@@ -1,13 +0,0 @@
 include/gc.h   2006-02-25 15:49:52 +
-+++ include/gc.h   2006-02-25 15:50:00 +
-@@ -473,7 +473,9 @@
- # if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 1 || __GLIBC__ > 2) \
-  && !defined(__ia64__)
- #   ifndef GC_HAVE_BUILTIN_BACKTRACE
--# define GC_HAVE_BUILTIN_BACKTRACE
-+# ifndef __UCLIBC__
-+#   define GC_HAVE_BUILTIN_BACKTRACE
-+# endif
- #   endif
- # endif
- # if defined(__i386__) || defined(__x86_64__)



[gentoo-commits] repo/gentoo:master commit in: dev-libs/boehm-gc/files/, dev-libs/boehm-gc/

2018-04-21 Thread Andreas Hüttel
commit: 40b774392765941a1765dc0993e60d875d1fbd8c
Author: Andreas K. Hüttel  gentoo  org>
AuthorDate: Sat Apr 21 19:44:27 2018 +
Commit: Andreas Hüttel  gentoo  org>
CommitDate: Sat Apr 21 19:46:15 2018 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=40b77439

dev-libs/boehm-gc: Drop some old versions

Package-Manager: Portage-2.3.27, Repoman-2.3.9

 dev-libs/boehm-gc/Manifest |  4 --
 dev-libs/boehm-gc/boehm-gc-7.2d-r1.ebuild  | 58 
 dev-libs/boehm-gc/boehm-gc-7.2d.ebuild | 64 --
 dev-libs/boehm-gc/boehm-gc-7.4.0.ebuild| 54 --
 dev-libs/boehm-gc/boehm-gc-7.6.0.ebuild| 52 --
 dev-libs/boehm-gc/boehm-gc-7.6.2.ebuild| 52 --
 .../files/boehm-gc-7.2d-automake-1.13.patch| 13 -
 .../boehm-gc/files/boehm-gc-7.2d-configure.patch   | 33 ---
 8 files changed, 330 deletions(-)

diff --git a/dev-libs/boehm-gc/Manifest b/dev-libs/boehm-gc/Manifest
index 707500bcf5e..e9cf160b3b9 100644
--- a/dev-libs/boehm-gc/Manifest
+++ b/dev-libs/boehm-gc/Manifest
@@ -1,9 +1,5 @@
 DIST gc-7.1.tar.gz 1077714 BLAKE2B 
e3171e16b3451d61baefb6c005681abb3bdf6d29cfd595dc9b8672795a127a8dae0d03ee333ad23344adf8b0bcf2f0a4597ab39d5be2d3a56c5d92c0c717acb8
 SHA512 
10faa0062c7df2ac7e2e29ac369167daad526c9de477e9af2298e6e5ad0bb1de5d32203e048892b16c34b398657a1a338e2e122c3137eeb8143b184f9b5e7ea0
-DIST gc-7.2d.tar.gz 1263064 BLAKE2B 
dfc90b7a40418216cac31df790a8868d271b7a363ef55ecd62170983a8926f19af716af5d94ab0a50f20b1f08b37bbb863d42a63b1f6e8aa49c97b1d29e2
 SHA512 
5b342754a1efeef0cf78983b7a0e48a36495beac04fc881ab356b26dc153b343e940ec7af070f4fc875be44adc559f7be995919fe9229f68d2e0237cdbeaabcc
 DIST gc-7.2e.tar.gz 1291186 BLAKE2B 
8c320aac2d9deb8fcca2e93622aa122f96c4152d2b18bd284be32d5a041f357beaf8f3142548685fe167642070471862d04c0e6c3ba1c99bc9c05e63d6854005
 SHA512 
80d1d50e38714b4f198743cd8cd5ab80a35cfbb7f5f9d66c89f40319604e989125870f010d4499876978594a5823d7b61213224a68da8664b9e4f8e14076c999
-DIST gc-7.4.0.tar.gz 1060884 BLAKE2B 
66bcf7b42591c0899d069c475e0278792173a157c442d45574720d4b8565b660b39cbb0e7aee412c0ec54f1b3527ccf16b96421cadcca9bca18796ae2a69f9ab
 SHA512 
7421963a4eeb3d0c2efd486dcf842793e81385c9a87c38265137626822566c98920d9d6a9423c1dbeb067fd7fe8aeeead2d7bb7083f6056b6288410e1032
 DIST gc-7.4.2.tar.gz 1082597 BLAKE2B 
5ca30e786a995941fdf2d803d201e7263bdd7d9974a71f672ff259c75ee36dc5d499a614334e570100ddbcb25fd06176f48429b64bad95fb218c35ba584ad4c6
 SHA512 
2e21516addf268780641ee55c0cb3ecc2d96fa963faffee5beadcade9c6bf1ee49ee1a75b076b5d49ddde7c839fb94f4c3623ca8412d14c2a5bf6ca30d424a72
-DIST gc-7.6.0.tar.gz 751 BLAKE2B 
84780ffbd087aeddfbab7b5c9de05aac18f8e3ebbc174e3a0ffec295d8288ecce33f1ca6a44eaef168e1433d696a38a664fd6abecae006e8179bc453b278f5c3
 SHA512 
511e8c01287b1ee9dbec87f0573377de77038b7af053a3f33afed9b3ffa30e2402d6a9bb0ca4f4b81cd808209b47b5718d498cff3de6632a057fe03fad51fc43
-DIST gc-7.6.2.tar.gz 1119725 BLAKE2B 
d74fbabcc298e7673ba4d23df9fa7a8cd2895b0925dd26a2b2090d7fef0044af4dcb693357de8cb30ff7e4b9708c00259224f40baac13ac178adf44c09c0dd17
 SHA512 
7b54812903929b0d5d1d696beac54629a7667997b41ef45299373bc18b2153d5755286b25e11cc90ffc572239e52a02900927bc60b0ad3593162b8c8e259fd50
 DIST gc-7.6.4.tar.gz 1120784 BLAKE2B 
e7cad27d2144fd37aebad44093e1a0814fe9a1cc887701e485681cdd01f3ea4477150697d535d0873a1255abff0765084119096c7ed61d3caeda439cf2a7644f
 SHA512 
2c85be3e24b85732b3dc6f08fe98cf1a82b6fb2a22ec73090f80920721c737ef92cee8f0cd7ea7228d686005d164e7da54ce3907c3a1ba5eefa43355a472085e
 DIST gc6.8.tar.gz 756879 BLAKE2B 
8a56c4f7b23e79862aaa6fc505a56ea9a8ed53b9f3aedc8cbb57c37f0fabe040abe22096a8893b7f7b1ff1267bff37101e3dfbbcedab380afe0abff02b98fe14
 SHA512 
69a9554d2d213392512d4ce41ec8c4993557e65c2b3dc4f568ac18695421cc08b7677c25f9a0ce03e94fb5e68a298fcac7ed09fb90007a2c998ff6ef78d3c651

diff --git a/dev-libs/boehm-gc/boehm-gc-7.2d-r1.ebuild 
b/dev-libs/boehm-gc/boehm-gc-7.2d-r1.ebuild
deleted file mode 100644
index 521c7db9964..000
--- a/dev-libs/boehm-gc/boehm-gc-7.2d-r1.ebuild
+++ /dev/null
@@ -1,58 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit autotools eutils
-
-MY_P="gc-${PV/_/}"
-
-DESCRIPTION="The Boehm-Demers-Weiser conservative garbage collector"
-HOMEPAGE="http://www.hboehm.info/gc/;
-SRC_URI="http://www.hboehm.info/gc/gc_source/${MY_P}.tar.gz;
-
-LICENSE="boehm-gc"
-SLOT="0"
-KEYWORDS="alpha amd64 arm hppa ia64 ppc ppc64 sparc x86 ~x86-fbsd ~amd64-linux 
~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris 
~x86-solaris"
-IUSE="cxx static-libs threads"
-
-DEPEND=">=dev-libs/libatomic_ops-7.2
-   virtual/pkgconfig"
-
-S="${WORKDIR}/${MY_P/d}"
-
-src_prepare() {
-   rm -r libatomic_ops || die
-
-   epatch "${FILESDIR}"/${P}-configure.patch
-   epatch