mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-02-08 10:31:50 -05:00
build: support -no_fixup_chains in ld64
Patch in suport for using -no_fixup_chains, with ld64. This option just seems to be missing from our version, as it exists in later releases. This is needed so we can disable fixup_chains in our security checks.
This commit is contained in:
parent
d4018f0b6c
commit
3dca683cb7
2 changed files with 28 additions and 2 deletions
|
@ -5,6 +5,7 @@ $(package)_file_name=$($(package)_version).tar.gz
|
|||
$(package)_sha256_hash=6b73269efdf5c58a070e7357b66ee760501388549d6a12b423723f45888b074b
|
||||
$(package)_build_subdir=cctools
|
||||
$(package)_dependencies=native_libtapi
|
||||
$(package)_patches=no_fixup_chains.patch
|
||||
|
||||
define $(package)_set_vars
|
||||
$(package)_config_opts=--target=$(host) --enable-lto-support
|
||||
|
@ -18,11 +19,13 @@ ifneq ($(strip $(FORCE_USE_SYSTEM_CLANG)),)
|
|||
define $(package)_preprocess_cmds
|
||||
mkdir -p $($(package)_staging_prefix_dir)/lib && \
|
||||
cp $(llvm_lib_dir)/libLTO.so $($(package)_staging_prefix_dir)/lib/ && \
|
||||
cp -f $(BASEDIR)/config.guess $(BASEDIR)/config.sub cctools
|
||||
cp -f $(BASEDIR)/config.guess $(BASEDIR)/config.sub cctools && \
|
||||
patch -p1 < $($(package)_patch_dir)/no_fixup_chains.patch
|
||||
endef
|
||||
else
|
||||
define $(package)_preprocess_cmds
|
||||
cp -f $(BASEDIR)/config.guess $(BASEDIR)/config.sub cctools
|
||||
cp -f $(BASEDIR)/config.guess $(BASEDIR)/config.sub cctools && \
|
||||
patch -p1 < $($(package)_patch_dir)/no_fixup_chains.patch
|
||||
endef
|
||||
endif
|
||||
|
||||
|
|
23
depends/patches/native_cctools/no_fixup_chains.patch
Normal file
23
depends/patches/native_cctools/no_fixup_chains.patch
Normal file
|
@ -0,0 +1,23 @@
|
|||
commit 5860b35ff6c7241d1c35a1b3197b45e5c9ff86cf
|
||||
Author: fanquake <fanquake@gmail.com>
|
||||
Date: Thu Jun 29 11:52:43 2023 +0100
|
||||
|
||||
ld64: add support for -no_fixup_chains
|
||||
|
||||
This is added in later versions, and is required if we want to be able
|
||||
to disable fixup_chains, for use in security tests.
|
||||
|
||||
diff --git a/cctools/ld64/src/ld/Options.cpp b/cctools/ld64/src/ld/Options.cpp
|
||||
index 15e8e88..b6580af 100644
|
||||
--- a/cctools/ld64/src/ld/Options.cpp
|
||||
+++ b/cctools/ld64/src/ld/Options.cpp
|
||||
@@ -4128,6 +4128,9 @@ void Options::parse(int argc, const char* argv[])
|
||||
else if ( strcmp(arg, "-fixup_chains") == 0 ) {
|
||||
fMakeChainedFixups = true;
|
||||
}
|
||||
+ else if ( strcmp(arg, "-no_fixup_chains") == 0 ) {
|
||||
+ fMakeChainedFixups = false;
|
||||
+ }
|
||||
else if (strcmp(arg, "-debug_variant") == 0) {
|
||||
fDebugVariant = true;
|
||||
}
|
Loading…
Add table
Reference in a new issue