Date: Thu, 18 Feb 2021 21:34:31 +0000 (UTC) From: Adriaan de Groot <adridg@FreeBSD.org> To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r565995 - in head/devel/heaptrack: . files Message-ID: <202102182134.11ILYVJf033296@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: adridg Date: Thu Feb 18 21:34:30 2021 New Revision: 565995 URL: https://svnweb.freebsd.org/changeset/ports/565995 Log: Fix devel/heaptrack on i386 (32-bit ELF), I hope This patch was removed in the previous update, but was still necessary. I have since submitted it upstream. Reported by: fallout Added: head/devel/heaptrack/files/ head/devel/heaptrack/files/patch-src_track_heaptrack__inject.cpp (contents, props changed) Modified: head/devel/heaptrack/Makefile Modified: head/devel/heaptrack/Makefile ============================================================================== --- head/devel/heaptrack/Makefile Thu Feb 18 21:30:13 2021 (r565994) +++ head/devel/heaptrack/Makefile Thu Feb 18 21:34:30 2021 (r565995) @@ -3,6 +3,7 @@ PORTNAME= heaptrack DISTVERSIONPREFIX= v DISTVERSION= 1.2.0-43 +PORTREVISION= 1 CATEGORIES= devel kde MAINTAINER= kde@FreeBSD.org Added: head/devel/heaptrack/files/patch-src_track_heaptrack__inject.cpp ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/devel/heaptrack/files/patch-src_track_heaptrack__inject.cpp Thu Feb 18 21:34:30 2021 (r565995) @@ -0,0 +1,21 @@ +--- src/track/heaptrack_inject.cpp.orig 2020-06-01 22:47:27 UTC ++++ src/track/heaptrack_inject.cpp +@@ -66,8 +66,18 @@ using Dyn = ElfW(Dyn); + using Rel = ElfW(Rel); + using Rela = ElfW(Rela); + using Sym = ElfW(Sym); ++#if __WORDSIZE == 64 + using Sxword = ElfW(Sxword); + using Xword = ElfW(Xword); ++#else ++// FreeBSD elf32.h doesn't define Elf32_Sxword or _Xword. This is used in struct ++// elftable, where it's used as a tag value. Our Elf32_Dyn uses Elf32_Sword there, ++// as does the Linux definition (and the standard); the El64_Dyn uses Sxword. ++// ++// Linux elf.h defines Elf32_Sxword as a 64-bit quantity, so let's do that ++using Sxword = int64_t; ++using Xword = uint64_t; ++#endif + } + + void overwrite_symbols() noexcept;
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202102182134.11ILYVJf033296>