depends: cctools 986 & ld64 711

pull/28422/head
fanquake 1 year ago
parent 1ed1183f47
commit 7d5815293e
No known key found for this signature in database
GPG Key ID: 2EEB9F5CC09526C1

@ -1,11 +1,10 @@
package=native_cctools
$(package)_version=2ef2e931cf641547eb8a68cfebde61003587c9fd
$(package)_version=c74fafe86076713cb8e6f937af43b6df6da1f42d
$(package)_download_path=https://github.com/tpoechtrager/cctools-port/archive
$(package)_file_name=$($(package)_version).tar.gz
$(package)_sha256_hash=6b73269efdf5c58a070e7357b66ee760501388549d6a12b423723f45888b074b
$(package)_sha256_hash=e2c1588d505a69c32e079f4e616e0f117d5478429040e394f624f43f2796e6bc
$(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,15 +17,9 @@ endef
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 && \
patch -p1 < $($(package)_patch_dir)/no_fixup_chains.patch
cp $(llvm_lib_dir)/libLTO.so $($(package)_staging_prefix_dir)/lib/
endef
else
define $(package)_preprocess_cmds
cp -f $(BASEDIR)/config.guess $(BASEDIR)/config.sub cctools && \
patch -p1 < $($(package)_patch_dir)/no_fixup_chains.patch
endef
endif
define $(package)_config_cmds

@ -1,23 +0,0 @@
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…
Cancel
Save