pkgsrc-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: pkgsrc/devel/gperftools



Module Name:    pkgsrc
Committed By:   adam
Date:           Thu Oct 29 05:55:20 UTC 2026

Modified Files:
        pkgsrc/devel/gperftools: Makefile distinfo
        pkgsrc/devel/gperftools/patches: patch-src_base_basictypes.h
            patch-src_base_sysinfo.cc

Log Message:
gperftools: updated to 2.19.2

gperftools 2.19.2 is out!

This is another quick bug-fix release on top of 2.19.1. It updates
the vendored aw-backtrace.

Updated aw-backtrace expands x86-64 DRAP support. With -march=x86-64-v3
(e.g. Ubuntu 26.04's amd64v3 variant) gcc realigns the stack for AVX
much more often, and a realigned function that also passes arguments
on the stack uses a DRAP frame. The layout of those frames turned out
to be more general than we previously assumed, so backtraces through
them were truncated (this affected CPU and heap profiles as well as
debugallocation's stack traces). This fixes the test failures seen on
github's Ubuntu 26.04 builders.

gperftools 2.19.1 is out!

This is a quick bug-fix release on top of 2.19:

* when both libtcmalloc and libprofiler were loaded into the same
  process, the two copies of the vendored aw-backtrace bits clashed,
  causing a check failure at initialization. Those bits are now built
  with hidden visibility, so each library uses its own private copy.

* GCC 16 in LTO mode can now devirtualize and inline indirect calls,
  which broke the skip_count handling of the aw-backtrace stack trace
  capturing method (and slightly affected the CPU profiler's
  signal handler too). The relevant functions are now marked
  noinline. See https://github.com/gperftools/gperftools/issues/1649.

* the autotools and CMake builds no longer link libaw_backtrace with
  -latomic, which hasn't been needed since aw-backtrace stopped using
  128-bit atomics.

* make dist archives no longer include stray vendor/aw-backtrace/.deps
  files.


To generate a diff of this commit:
cvs rdiff -u -r1.30 -r1.31 pkgsrc/devel/gperftools/Makefile
cvs rdiff -u -r1.25 -r1.26 pkgsrc/devel/gperftools/distinfo
cvs rdiff -u -r1.4 -r1.5 \
    pkgsrc/devel/gperftools/patches/patch-src_base_basictypes.h \
    pkgsrc/devel/gperftools/patches/patch-src_base_sysinfo.cc

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: pkgsrc/devel/gperftools/Makefile
diff -u pkgsrc/devel/gperftools/Makefile:1.30 pkgsrc/devel/gperftools/Makefile:1.31
--- pkgsrc/devel/gperftools/Makefile:1.30       Sat Mar  7 11:33:44 2026
+++ pkgsrc/devel/gperftools/Makefile    Thu Oct 29 05:55:20 2026
@@ -1,6 +1,6 @@
-# $NetBSD: Makefile,v 1.30 2026/03/07 11:33:44 adam Exp $
+# $NetBSD: Makefile,v 1.31 2026/10/29 05:55:20 adam Exp $
 
-DISTNAME=      gperftools-2.18.1
+DISTNAME=      gperftools-2.19.2
 CATEGORIES=    devel
 MASTER_SITES=  ${MASTER_SITE_GITHUB:=gperftools/}
 GITHUB_RELEASE=        ${DISTNAME}

Index: pkgsrc/devel/gperftools/distinfo
diff -u pkgsrc/devel/gperftools/distinfo:1.25 pkgsrc/devel/gperftools/distinfo:1.26
--- pkgsrc/devel/gperftools/distinfo:1.25       Sat Mar  7 11:33:44 2026
+++ pkgsrc/devel/gperftools/distinfo    Thu Oct 29 05:55:20 2026
@@ -1,7 +1,7 @@
-$NetBSD: distinfo,v 1.25 2026/03/07 11:33:44 adam Exp $
+$NetBSD: distinfo,v 1.26 2026/10/29 05:55:20 adam Exp $
 
-BLAKE2s (gperftools-2.18.1.tar.gz) = cba86e352b3f73b243a286143839b755f79ab4db0ad4685f92f1745a45b42c92
-SHA512 (gperftools-2.18.1.tar.gz) = aad3e35115b9836ffe131c332adb37344bccd51a852fd2a8e587202b36ca90959be794b0b6d26a79943254004a3df7dc6e98e1356a0694cf7c9daca2d6c87ae7
-Size (gperftools-2.18.1.tar.gz) = 2837656 bytes
-SHA1 (patch-src_base_basictypes.h) = beba623a699e29318c92bf8ce77b308a4ec315a7
-SHA1 (patch-src_base_sysinfo.cc) = d3a79e75c775d2f355f28f6f117886b5afde046f
+BLAKE2s (gperftools-2.19.2.tar.gz) = d7e324083daa49431ebda660abbcacc11af75aa218a61b36ebdbc167e2a2d46b
+SHA512 (gperftools-2.19.2.tar.gz) = 9f0a938ec581ee920da0907d1d54066b864d858397a548a88094373bd64f1190230a317b7a3921a9e8e555ba7ab40277c10025baf38111460f2bc728ef864e84
+Size (gperftools-2.19.2.tar.gz) = 3407696 bytes
+SHA1 (patch-src_base_basictypes.h) = f62e4fa2731250478a351c0c3ffdcde372b5d390
+SHA1 (patch-src_base_sysinfo.cc) = 1d24ddd50ff6486bee6a6f0c38c120ae805f2974

Index: pkgsrc/devel/gperftools/patches/patch-src_base_basictypes.h
diff -u pkgsrc/devel/gperftools/patches/patch-src_base_basictypes.h:1.4 pkgsrc/devel/gperftools/patches/patch-src_base_basictypes.h:1.5
--- pkgsrc/devel/gperftools/patches/patch-src_base_basictypes.h:1.4     Thu Feb  5 12:42:41 2026
+++ pkgsrc/devel/gperftools/patches/patch-src_base_basictypes.h Thu Oct 29 05:55:20 2026
@@ -1,24 +1,15 @@
-$NetBSD: patch-src_base_basictypes.h,v 1.4 2026/02/05 12:42:41 adam Exp $
+$NetBSD: patch-src_base_basictypes.h,v 1.5 2026/10/29 05:55:20 adam Exp $
 
 Add support for NetBSD/powerpc, recognized via __powerpc__.
 
---- src/base/basictypes.h.orig 2026-01-24 04:13:42.000000000 +0000
+--- src/base/basictypes.h.orig 2026-09-03 19:46:47.000000000 +0000
 +++ src/base/basictypes.h
-@@ -150,7 +150,7 @@ inline void bit_store(Dest *dest, const
+@@ -149,7 +149,7 @@ inline void bit_store(Dest* dest, const
  #if defined(HAVE___ATTRIBUTE__)
- # if (defined(__i386__) || defined(__x86_64__))
- #   define CACHELINE_ALIGNED __attribute__((aligned(64)))
--# elif (defined(__PPC__) || defined(__PPC64__) || defined(__ppc__) || defined(__ppc64__))
-+# elif (defined(__PPC__) || defined(__PPC64__) || defined(__ppc__) || defined(__ppc64__) || defined(__powerpc__))
- #   define CACHELINE_ALIGNED __attribute__((aligned(16)))
- # elif (defined(__arm__))
- #   define CACHELINE_ALIGNED __attribute__((aligned(64)))
-@@ -168,6 +168,8 @@ inline void bit_store(Dest *dest, const
- #   define CACHELINE_ALIGNED __attribute__((aligned(64)))
- # elif defined(__sparcv9) || defined(__sparcv9__)
- #   define CACHELINE_ALIGNED __attribute__((aligned(64)))
-+# elif defined(__sparcv9) || defined(__sparcv9__)
-+#   define CACHELINE_ALIGNED __attribute__((aligned(64)))
- # else
- #   error Could not determine cache line length - unknown architecture
- # endif
+ #if (defined(__i386__) || defined(__x86_64__))
+ #define CACHELINE_ALIGNED __attribute__((aligned(64)))
+-#elif (defined(__PPC__) || defined(__PPC64__) || defined(__ppc__) || defined(__ppc64__))
++#elif (defined(__PPC__) || defined(__PPC64__) || defined(__ppc__) || defined(__ppc64__) || defined(__powerpc__))
+ #define CACHELINE_ALIGNED __attribute__((aligned(16)))
+ #elif (defined(__arm__))
+ #define CACHELINE_ALIGNED __attribute__((aligned(64)))
Index: pkgsrc/devel/gperftools/patches/patch-src_base_sysinfo.cc
diff -u pkgsrc/devel/gperftools/patches/patch-src_base_sysinfo.cc:1.4 pkgsrc/devel/gperftools/patches/patch-src_base_sysinfo.cc:1.5
--- pkgsrc/devel/gperftools/patches/patch-src_base_sysinfo.cc:1.4       Tue Nov 11 09:52:27 2025
+++ pkgsrc/devel/gperftools/patches/patch-src_base_sysinfo.cc   Thu Oct 29 05:55:20 2026
@@ -1,11 +1,11 @@
-$NetBSD: patch-src_base_sysinfo.cc,v 1.4 2025/11/11 09:52:27 adam Exp $
+$NetBSD: patch-src_base_sysinfo.cc,v 1.5 2026/10/29 05:55:20 adam Exp $
 
 Get program pathname from sysctl on NetBSD.
 
---- src/base/sysinfo.cc.orig   2025-08-05 07:55:48.450335710 +0000
+--- src/base/sysinfo.cc.orig   2026-03-07 01:38:09.000000000 +0000
 +++ src/base/sysinfo.cc
-@@ -49,7 +49,7 @@
- #include <unistd.h>   // for read()
+@@ -50,7 +50,7 @@
+ #include <unistd.h>  // for read()
  #endif
  
 -#if defined(__FreeBSD__)
@@ -13,12 +13,12 @@ Get program pathname from sysctl on NetB
  #include <sys/sysctl.h>
  #endif
  
-@@ -437,7 +437,7 @@ const char* GetProgramInvocationName() {
-       return nullptr;
+@@ -330,7 +330,7 @@ const char* GetProgramInvocationName() {
+     if (_NSGetExecutablePath(program_invocation_name, &length)) return nullptr;
    }
    return program_invocation_name;
 -#elif defined(__FreeBSD__)
 +#elif defined(__FreeBSD__) || defined(__NetBSD__)
    static char program_invocation_name[PATH_MAX];
    size_t len = sizeof(program_invocation_name);
-   static const int name[4] = { CTL_KERN, KERN_PROC, KERN_PROC_PATHNAME, -1 };
+   static const int name[4] = {CTL_KERN, KERN_PROC, KERN_PROC_PATHNAME, -1};



Home | Main Index | Thread Index | Old Index