pkgsrc-Changes archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
CVS commit: pkgsrc/devel/mold
Module Name: pkgsrc
Committed By: adam
Date: Mon Jan 13 10:37:08 UTC 2025
Modified Files:
pkgsrc/devel/mold: Makefile PLIST distinfo
Log Message:
mold: updated to 2.36.0
mold 2.36.0
New Features
The --package-metadata=<string> option has been added to embed a given string into the .note.package section. This option is designed for build scripts that generate binary packages, such as .rpm or
.deb, to include package metadata in each executable. It simplifies the process of identifying the corresponding package for a given executable or core file. (7ddc8f4)
[ARM][PowerPC] We've improved the algorithm for creating range extension thunks to reduce memory usage and improve speed. For example, linking clang-19 for ARM64 is now ~7% faster than before.
(9fc0ace)
[RISC-V][LoongArch] We've improved the algorithm for code-shrinking linker relaxation to reduce memory usage and improve speed. For example, linking clang-19 for RISC-V is now ~4% faster than before.
(3234d88)
Bug Fixes and Compatibility Improvements
mold created a bad relocation for an IFUNC if the linker's output file type was a shared library and the symbol was exported. This bug could cause a segmentation fault of a linked program. The
problem has now been fixed. (a297859)
[RISC-V] mold could produce incorrect code as a result of code-shrinking relaxation for the R_RISCV_HI20 relocation. That type of relocation was used rarely because it is not PC-relative. That being
said, if your program used the relocation, and the relocation targets were at a low address (from 0x1f800 to 0x20000), your program would crash at runtime due to the linker's bug. The issue has now
been resolved. (eec3f6b)
[RISC-V][LoongArch] When the linker removed instructions from a function as a result of code-shrinking relaxation, the function symbol's size in the output file should be updated to reflect the
result of relaxation, even though doing it is mostly cosmetic. mold did not do that. Now, mold sets correct sizes to output function symbols. (e6345d5)
[LoongArch] Binaries linked with mold now work on 64 KiB page systems. Previously, only up to 16 KiB pages were supported. (2d7b6b2)
[s390x] The s390x processor-specific ABI requires the linker to reserve the first three slots of the .got section for the runtime. mold, however, reserved only two slots and used the third for
itself. Even though we did not observe issues in the wild, it was a violation of the psABI. The problem has now been fixed. (dfce2fc)
To generate a diff of this commit:
cvs rdiff -u -r1.40 -r1.41 pkgsrc/devel/mold/Makefile
cvs rdiff -u -r1.6 -r1.7 pkgsrc/devel/mold/PLIST
cvs rdiff -u -r1.33 -r1.34 pkgsrc/devel/mold/distinfo
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: pkgsrc/devel/mold/Makefile
diff -u pkgsrc/devel/mold/Makefile:1.40 pkgsrc/devel/mold/Makefile:1.41
--- pkgsrc/devel/mold/Makefile:1.40 Sun Aug 25 06:18:36 2024
+++ pkgsrc/devel/mold/Makefile Mon Jan 13 10:37:08 2025
@@ -1,38 +1,37 @@
-# $NetBSD: Makefile,v 1.40 2024/08/25 06:18:36 wiz Exp $
+# $NetBSD: Makefile,v 1.41 2025/01/13 10:37:08 adam Exp $
-DISTNAME= mold-2.31.0
+DISTNAME= mold-2.36.0
CATEGORIES= devel
MASTER_SITES= ${MASTER_SITE_GITHUB:=rui314/}
GITHUB_TAG= v${PKGVERSION_NOREV}
MAINTAINER= pkgsrc-users%NetBSD.org@localhost
-HOMEPAGE= https://github.com/rui314/mold/
+HOMEPAGE= https://github.com/rui314/mold
COMMENT= High performance drop-in replacement for existing Unix linkers
LICENSE= mit
-USE_LANGUAGES= c c++20
-
-USE_CMAKE= yes
-
-CMAKE_CONFIGURE_ARGS+= -DMOLD_USE_SYSTEM_MIMALLOC=ON -DMOLD_USE_SYSTEM_TBB=ON
-
-# Use <stdlib.h> on systems where <alloca.h> doesn't exist
-.if !exists(/usr/include/alloca.h)
-SUBST_CLASSES+= alloca
-SUBST_STAGE.alloca= post-configure
-SUBST_FILES.alloca= elf/mold-wrapper.c
-SUBST_SED.alloca= -e 's|<alloca.h>|<stdlib.h>|g'
-.endif
-
# This package uses a lot of C++20 features. GCC 10 is the oldest GCC that can
# build it.
-USE_CXX_FEATURES+= c++20
+USE_CXX_FEATURES= c++20
+USE_LANGUAGES= c c++
+TEST_TARGET= test
+
+CMAKE_CONFIGURE_ARGS+= -DMOLD_USE_SYSTEM_MIMALLOC=ON
+CMAKE_CONFIGURE_ARGS+= -DMOLD_USE_SYSTEM_TBB=ON
# Handle linker flags for dlopen and pthread automatically.
DL_AUTO_VARS= yes
PTHREAD_AUTO_VARS= yes
+PLIST_VARS+= wrapper
+.include "../../mk/bsd.prefs.mk"
+# mold-wrapper is not built on macOS nor Windows
+.if ${OPSYS} != "Darwin"
+PLIST.wrapper= yes
+.endif
+
.include "../../archivers/zstd/buildlink3.mk"
+.include "../../devel/cmake/build.mk"
.include "../../devel/mimalloc/buildlink3.mk"
.include "../../devel/zlib/buildlink3.mk"
.include "../../parallel/threadingbuildingblocks/buildlink3.mk"
Index: pkgsrc/devel/mold/PLIST
diff -u pkgsrc/devel/mold/PLIST:1.6 pkgsrc/devel/mold/PLIST:1.7
--- pkgsrc/devel/mold/PLIST:1.6 Tue Aug 15 17:32:22 2023
+++ pkgsrc/devel/mold/PLIST Mon Jan 13 10:37:08 2025
@@ -1,9 +1,8 @@
-@comment $NetBSD: PLIST,v 1.6 2023/08/15 17:32:22 fcambus Exp $
+@comment $NetBSD: PLIST,v 1.7 2025/01/13 10:37:08 adam Exp $
bin/ld.mold
bin/mold
-lib/mold/mold-wrapper.so
+${PLIST.wrapper}lib/mold/mold-wrapper.so
libexec/mold/ld
man/man1/ld.mold.1
man/man1/mold.1
share/doc/mold/LICENSE
-share/doc/mold/LICENSE.third-party
Index: pkgsrc/devel/mold/distinfo
diff -u pkgsrc/devel/mold/distinfo:1.33 pkgsrc/devel/mold/distinfo:1.34
--- pkgsrc/devel/mold/distinfo:1.33 Wed May 15 13:02:04 2024
+++ pkgsrc/devel/mold/distinfo Mon Jan 13 10:37:08 2025
@@ -1,5 +1,5 @@
-$NetBSD: distinfo,v 1.33 2024/05/15 13:02:04 ktnb Exp $
+$NetBSD: distinfo,v 1.34 2025/01/13 10:37:08 adam Exp $
-BLAKE2s (mold-2.31.0.tar.gz) = b01f2186ea21a201c121b006c690bb6f42d564de03b5a7c3e2075ce54ff440eb
-SHA512 (mold-2.31.0.tar.gz) = 343c62d8c67b74988f762c46999d2d866b2e9a0c69d2b910b12384ea5abc620b30468cd1b1bacfe41474d1c97c8ce2e49d55ca70479691238fb73d83d9adc683
-Size (mold-2.31.0.tar.gz) = 10031469 bytes
+BLAKE2s (mold-2.36.0.tar.gz) = 78d6db991eecf1025ec3d04a8708b6b8fa4b1ffa22b851de9b2d9036f6a75ebf
+SHA512 (mold-2.36.0.tar.gz) = 985ca22400b2d957b4ea8d35d6716cc6f13d1abe9c9e1eed461efda6f2612a5fbfa707aff879c616c756111fea751a335ad3a3fc224c7573855e7b2795596164
+Size (mold-2.36.0.tar.gz) = 10094759 bytes
Home |
Main Index |
Thread Index |
Old Index