depends: remove cctools & libtapi

This commit is contained in:
fanquake
2024-05-09 19:41:58 +08:00
parent 4a0536c5d9
commit f836f7e9b3
9 changed files with 7 additions and 104 deletions

View File

@@ -185,7 +185,6 @@ all_packages = $(packages) $(native_packages)
meta_depends = Makefile config.guess config.sub funcs.mk builders/default.mk hosts/default.mk hosts/$(host_os).mk builders/$(build_os).mk
$(host_arch)_$(host_os)_native_binutils?=$($(host_os)_native_binutils)
$(host_arch)_$(host_os)_native_toolchain?=$($(host_os)_native_toolchain)
include funcs.mk
@@ -217,9 +216,8 @@ $(host_prefix)/.stamp_$(final_build_id): $(native_packages) $(packages)
# tool needs to be available in $PATH at all times.
#
# 2. If the tool is _**not**_ expected to be available in $PATH at all times
# (such as is the case for our native_cctools binutils tools), it needs to
# be referred to by its absolute path, such as would be output by the
# AC_PATH_{PROG,TOOL} macros.
# it needs to be referred to by its absolute path, such as would be output
# by the AC_PATH_{PROG,TOOL} macros.
#
# Minor note: it is also okay to refer to tools by their absolute path even if
# we expect them to be available in $PATH at all times, more specificity does

View File

@@ -18,7 +18,6 @@ darwin_STRIP:=$(shell xcrun -f strip)
darwin_OBJDUMP:=$(shell xcrun -f objdump)
darwin_NM:=$(shell xcrun -f nm)
darwin_DSYMUTIL:=$(shell xcrun -f dsymutil)
darwin_native_binutils=
darwin_native_toolchain=
x86_64_darwin_CFLAGS += -arch x86_64

View File

@@ -46,7 +46,7 @@ endef
define int_get_build_id
$(eval $(1)_dependencies += $($(1)_$(host_arch)_$(host_os)_dependencies) $($(1)_$(host_os)_dependencies))
$(eval $(1)_all_dependencies:=$(call int_get_all_dependencies,$(1),$($($(1)_type)_native_toolchain) $($($(1)_type)_native_binutils) $($(1)_dependencies)))
$(eval $(1)_all_dependencies:=$(call int_get_all_dependencies,$(1),$($($(1)_type)_native_toolchain) $($(1)_dependencies)))
$(foreach dep,$($(1)_all_dependencies),$(eval $(1)_build_id_deps+=$(dep)-$($(dep)_version)-$($(dep)_recipe_hash)))
$(eval $(1)_build_id_long:=$(1)-$($(1)_version)-$($(1)_recipe_hash)-$(release_type) $($(1)_build_id_deps) $($($(1)_type)_id))
$(eval $(1)_build_id:=$(shell echo -n "$($(1)_build_id_long)" | $(build_SHA256SUM) | cut -c-$(HASH_LENGTH)))
@@ -299,4 +299,4 @@ $(foreach package,$(all_packages),$(eval $(call int_config_attach_build_config,$
$(foreach package,$(all_packages),$(eval $(call int_add_cmds,$(package))))
#special exception: if a toolchain package exists, all non-native packages depend on it
$(foreach package,$(packages),$(eval $($(package)_extracted): |$($($(host_arch)_$(host_os)_native_toolchain)_cached) $($($(host_arch)_$(host_os)_native_binutils)_cached) ))
$(foreach package,$(packages),$(eval $($(package)_extracted): |$($($(host_arch)_$(host_os)_native_toolchain)_cached) ))

View File

@@ -6,14 +6,11 @@ LD64_VERSION=711
OSX_SDK=$(SDK_PATH)/Xcode-$(XCODE_VERSION)-$(XCODE_BUILD_ID)-extracted-SDK-with-libcxx-headers
darwin_native_binutils=native_cctools
ifeq ($(strip $(FORCE_USE_SYSTEM_CLANG)),)
# FORCE_USE_SYSTEM_CLANG is empty, so we use our depends-managed, pinned LLVM
# from llvm.org
# Clang is a dependency of native_cctools when FORCE_USE_SYSTEM_CLANG is empty
darwin_native_toolchain=native_cctools
darwin_native_toolchain=native_llvm
clang_prog=$(build_prefix)/bin/clang
clangxx_prog=$(clang_prog)++
@@ -68,7 +65,7 @@ endif
#
# -B$(build_prefix)/bin
#
# Explicitly point to our binaries (e.g. cctools) so that they are
# Explicitly point to our binaries so that they are
# ensured to be found and preferred over other possibilities.
#
# -isysroot$(OSX_SDK) -nostdlibinc

View File

@@ -1,39 +0,0 @@
package=native_cctools
$(package)_version=c74fafe86076713cb8e6f937af43b6df6da1f42d
$(package)_download_path=https://github.com/tpoechtrager/cctools-port/archive
$(package)_file_name=$($(package)_version).tar.gz
$(package)_sha256_hash=e2c1588d505a69c32e079f4e616e0f117d5478429040e394f624f43f2796e6bc
$(package)_build_subdir=cctools
$(package)_dependencies=native_libtapi
define $(package)_set_vars
$(package)_config_opts=--target=$(host) --enable-lto-support
$(package)_config_opts+=--with-llvm-config=$(llvm_config_prog)
$(package)_ldflags+=-Wl,-rpath=\\$$$$$$$$\$$$$$$$$ORIGIN/../lib
$(package)_cc=$(clang_prog)
$(package)_cxx=$(clangxx_prog)
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/
endef
else
endif
define $(package)_config_cmds
$($(package)_autoconf)
endef
define $(package)_build_cmds
$(MAKE) -C ld64
endef
define $(package)_stage_cmds
$(MAKE) DESTDIR=$($(package)_staging_dir) install -C ld64/src/ld
endef
define $(package)_postprocess_cmds
rm -rf share
endef

View File

@@ -1,22 +0,0 @@
package=native_libtapi
$(package)_version=eb33a59f2e30ff9724dc1ea8bee8b5229b0557c9
$(package)_download_path=https://github.com/tpoechtrager/apple-libtapi/archive
$(package)_file_name=$($(package)_version).tar.gz
$(package)_sha256_hash=d4d46c64622f13d6938cecf989046d9561011bb59e8ee835f8f39825d67f578f
$(package)_patches=disable_zlib.patch
ifeq ($(strip $(FORCE_USE_SYSTEM_CLANG)),)
$(package)_dependencies=native_llvm
endif
define $(package)_preprocess_cmds
patch -p1 < $($(package)_patch_dir)/disable_zlib.patch
endef
define $(package)_build_cmds
CC=$(clang_prog) CXX=$(clangxx_prog) INSTALLPREFIX=$($(package)_staging_prefix_dir) ./build.sh
endef
define $(package)_stage_cmds
./install.sh
endef

View File

@@ -30,7 +30,6 @@ usdt_linux_packages=systemtap
darwin_native_packages =
ifneq ($(build_os),darwin)
darwin_native_packages += native_cctools native_libtapi
ifeq ($(strip $(FORCE_USE_SYSTEM_CLANG)),)
darwin_native_packages+= native_llvm

View File

@@ -1,17 +0,0 @@
build: disable zlib
This isn't needed, and causes issues when clang-tblgen
is built, but trys to reach for a system libz.so.
diff --git a/build.sh b/build.sh
index e25d2f732..ec8422621 100755
--- a/build.sh
+++ b/build.sh
@@ -66,6 +66,7 @@ cmake ../src/llvm \
-DCMAKE_INSTALL_PREFIX=$INSTALLPREFIX \
-DTAPI_REPOSITORY_STRING=$TAPI_VERSION \
-DTAPI_FULL_VERSION=$TAPI_VERSION \
+ -DLLVM_ENABLE_ZLIB=OFF \
$CMAKE_EXTRA_ARGS
echo ""