mirror of
https://github.com/bitcoin/bitcoin.git
synced 2026-06-06 19:23:41 +02:00
build: Remove Autotools-based build system
This commit is contained in:
1
depends/.gitignore
vendored
1
depends/.gitignore
vendored
@@ -2,7 +2,6 @@ SDKs/
|
||||
work/
|
||||
built/
|
||||
sources/
|
||||
config.site
|
||||
x86_64*
|
||||
i686*
|
||||
mips*
|
||||
|
||||
@@ -183,7 +183,6 @@ meta_depends = Makefile config.guess config.sub funcs.mk builders/default.mk hos
|
||||
|
||||
include funcs.mk
|
||||
|
||||
final_build_id_long+=$(shell $(build_SHA256SUM) config.site.in)
|
||||
final_build_id_long+=$(shell $(build_SHA256SUM) toolchain.cmake.in)
|
||||
final_build_id+=$(shell echo -n "$(final_build_id_long)" | $(build_SHA256SUM) | cut -c-$(HASH_LENGTH))
|
||||
$(host_prefix)/.stamp_$(final_build_id): $(native_packages) $(packages)
|
||||
@@ -194,62 +193,6 @@ $(host_prefix)/.stamp_$(final_build_id): $(native_packages) $(packages)
|
||||
cd $(@D); $(foreach package,$^, $(build_TAR) xf $($(package)_cached); )
|
||||
touch $@
|
||||
|
||||
# $PATH is not preserved between ./configure and make by convention. Its
|
||||
# modification and overriding at ./configure time is (as I understand it)
|
||||
# supposed to be captured by the AC_{PROG_{,OBJ}CXX,PATH_{PROG,TOOL}} macros,
|
||||
# which will expand the program names to their full absolute paths. The notable
|
||||
# exception is command line overriding: ./configure CC=clang, which skips the
|
||||
# program name expansion step, and works because the user implicitly indicates
|
||||
# with CC=clang that clang will be available in $PATH at all times, and is most
|
||||
# likely part of the user's system.
|
||||
#
|
||||
# Therefore, when we "seed the autoconf cache"/"override well-known program
|
||||
# vars" by setting AR=<blah> in our config.site, either one of two things needs
|
||||
# to be true for the build system to work correctly:
|
||||
#
|
||||
# 1. If we refer to the program by name (e.g. AR=riscv64-gnu-linux-ar), the
|
||||
# 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
|
||||
# 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
|
||||
# not hurt.
|
||||
$(host_prefix)/share/config.site : config.site.in $(host_prefix)/.stamp_$(final_build_id)
|
||||
@mkdir -p $(@D)
|
||||
sed -e 's|@HOST@|$(host)|' \
|
||||
-e 's|@CC@|$(host_CC)|' \
|
||||
-e 's|@CXX@|$(host_CXX)|' \
|
||||
-e 's|@AR@|$(host_AR)|' \
|
||||
-e 's|@RANLIB@|$(host_RANLIB)|' \
|
||||
-e 's|@NM@|$(host_NM)|' \
|
||||
-e 's|@STRIP@|$(host_STRIP)|' \
|
||||
-e 's|@OBJDUMP@|$(host_OBJDUMP)|' \
|
||||
-e 's|@DSYMUTIL@|$(host_DSYMUTIL)|' \
|
||||
-e 's|@build_os@|$(build_os)|' \
|
||||
-e 's|@host_os@|$(host_os)|' \
|
||||
-e 's|@CFLAGS@|$(strip $(host_CFLAGS) $(host_$(release_type)_CFLAGS))|' \
|
||||
-e 's|@CXXFLAGS@|$(strip $(host_CXXFLAGS) $(host_$(release_type)_CXXFLAGS))|' \
|
||||
-e 's|@CPPFLAGS@|$(strip $(host_CPPFLAGS) $(host_$(release_type)_CPPFLAGS))|' \
|
||||
-e 's|@LDFLAGS@|$(strip $(host_LDFLAGS) $(host_$(release_type)_LDFLAGS))|' \
|
||||
-e 's|@no_qt@|$(NO_QT)|' \
|
||||
-e 's|@no_qr@|$(NO_QR)|' \
|
||||
-e 's|@no_zmq@|$(NO_ZMQ)|' \
|
||||
-e 's|@no_wallet@|$(NO_WALLET)|' \
|
||||
-e 's|@no_bdb@|$(NO_BDB)|' \
|
||||
-e 's|@no_sqlite@|$(NO_SQLITE)|' \
|
||||
-e 's|@no_upnp@|$(NO_UPNP)|' \
|
||||
-e 's|@no_usdt@|$(NO_USDT)|' \
|
||||
-e 's|@no_natpmp@|$(NO_NATPMP)|' \
|
||||
-e 's|@multiprocess@|$(MULTIPROCESS)|' \
|
||||
-e 's|@lto@|$(LTO)|' \
|
||||
-e 's|@no_harden@|$(NO_HARDEN)|' \
|
||||
-e 's|@debug@|$(DEBUG)|' \
|
||||
$< > $@
|
||||
touch $@
|
||||
|
||||
ifeq ($(host),$(build))
|
||||
crosscompiling=FALSE
|
||||
else
|
||||
@@ -316,7 +259,6 @@ check-packages:
|
||||
check-sources:
|
||||
@$(foreach package,$(all_packages),$(call check_or_remove_sources,$(package));)
|
||||
|
||||
$(host_prefix)/share/config.site: check-packages
|
||||
$(host_prefix)/toolchain.cmake: check-packages
|
||||
|
||||
check-packages: check-sources
|
||||
@@ -327,7 +269,7 @@ clean-all: clean
|
||||
clean:
|
||||
@rm -rf $(WORK_PATH) $(BASE_CACHE) $(BUILD) *.log
|
||||
|
||||
install: check-packages $(host_prefix)/share/config.site $(host_prefix)/toolchain.cmake
|
||||
install: check-packages $(host_prefix)/toolchain.cmake
|
||||
|
||||
|
||||
download-one: check-sources $(all_sources)
|
||||
|
||||
@@ -1,147 +0,0 @@
|
||||
# shellcheck shell=sh disable=SC2034 # Many variables set will be used in
|
||||
# ./configure but shellcheck doesn't know
|
||||
# that, hence: disable=SC2034
|
||||
|
||||
true # Dummy command because shellcheck treats all directives before first
|
||||
# command as file-wide, and we only want to disable for one line.
|
||||
#
|
||||
# See: https://github.com/koalaman/shellcheck/wiki/Directive
|
||||
|
||||
# shellcheck disable=SC2154
|
||||
depends_prefix="$(cd "$(dirname "$ac_site_file")/.." && pwd)"
|
||||
|
||||
cross_compiling=maybe
|
||||
host_alias="@HOST@"
|
||||
ac_tool_prefix="${host_alias}-"
|
||||
|
||||
if test -z "$with_boost"; then
|
||||
with_boost="$depends_prefix"
|
||||
fi
|
||||
if test -z "$with_qt_plugindir"; then
|
||||
with_qt_plugindir="${depends_prefix}/plugins"
|
||||
fi
|
||||
if test -z "$with_qt_translationdir"; then
|
||||
with_qt_translationdir="${depends_prefix}/translations"
|
||||
fi
|
||||
if test -z "$with_qt_bindir" && test -z "@no_qt@"; then
|
||||
with_qt_bindir="${depends_prefix}/native/bin"
|
||||
fi
|
||||
if test -z "$with_mpgen" && test -n "@multiprocess@"; then
|
||||
with_mpgen="${depends_prefix}/native"
|
||||
fi
|
||||
|
||||
if test -z "$with_qrencode" && test -n "@no_qr@"; then
|
||||
with_qrencode=no
|
||||
fi
|
||||
|
||||
if test -z "$enable_wallet" && test -n "@no_wallet@"; then
|
||||
enable_wallet=no
|
||||
fi
|
||||
|
||||
if test -z "$with_bdb" && test -n "@no_bdb@"; then
|
||||
with_bdb=no
|
||||
fi
|
||||
|
||||
if test -z "$with_sqlite" && test -n "@no_sqlite@"; then
|
||||
with_sqlite=no
|
||||
fi
|
||||
|
||||
if test -z "$enable_multiprocess" && test -n "@multiprocess@"; then
|
||||
enable_multiprocess=yes
|
||||
fi
|
||||
|
||||
if test -z "$with_miniupnpc" && test -n "@no_upnp@"; then
|
||||
with_miniupnpc=no
|
||||
fi
|
||||
|
||||
if test -z "$with_natpmp" && test -n "@no_natpmp@"; then
|
||||
with_natpmp=no
|
||||
fi
|
||||
|
||||
if test -z "$with_gui" && test -n "@no_qt@"; then
|
||||
with_gui=no
|
||||
fi
|
||||
|
||||
if test -n "@debug@" && test -z "@no_qt@" && test "$with_gui" != "no"; then
|
||||
with_gui=qt5_debug
|
||||
fi
|
||||
|
||||
if test -z "$enable_zmq" && test -n "@no_zmq@"; then
|
||||
enable_zmq=no
|
||||
fi
|
||||
|
||||
if test -z "$enable_usdt" && test -n "@no_usdt@"; then
|
||||
enable_usdt=no
|
||||
fi
|
||||
|
||||
if test "@host_os@" = darwin; then
|
||||
BREW=no
|
||||
fi
|
||||
|
||||
if test -z "$enable_hardening" && test -n "@no_harden@"; then
|
||||
enable_hardening=no
|
||||
fi
|
||||
|
||||
PKG_CONFIG="$(which pkg-config) --static"
|
||||
|
||||
PKG_CONFIG_PATH="${depends_prefix}/share/pkgconfig:${depends_prefix}/lib/pkgconfig"
|
||||
PKG_CONFIG_LIBDIR="${depends_prefix}/lib/pkgconfig"
|
||||
|
||||
CPPFLAGS="-I${depends_prefix}/include/ ${CPPFLAGS}"
|
||||
LDFLAGS="-L${depends_prefix}/lib ${LDFLAGS}"
|
||||
|
||||
if test -n "@CC@" -a -z "${CC}"; then
|
||||
CC="@CC@"
|
||||
fi
|
||||
if test -n "@CXX@" -a -z "${CXX}"; then
|
||||
CXX="@CXX@"
|
||||
fi
|
||||
|
||||
if test -n "@AR@"; then
|
||||
AR="@AR@"
|
||||
ac_cv_path_AR="${AR}"
|
||||
fi
|
||||
|
||||
if test -n "@RANLIB@"; then
|
||||
RANLIB="@RANLIB@"
|
||||
ac_cv_path_ac_pt_RANLIB="${RANLIB}"
|
||||
fi
|
||||
|
||||
if test -n "@NM@"; then
|
||||
NM="@NM@"
|
||||
ac_cv_path_ac_pt_NM="${NM}"
|
||||
fi
|
||||
|
||||
if test -n "@STRIP@"; then
|
||||
STRIP="@STRIP@"
|
||||
ac_cv_path_ac_pt_STRIP="${STRIP}"
|
||||
fi
|
||||
|
||||
if test "@host_os@" = darwin; then
|
||||
if test -n "@OBJDUMP@"; then
|
||||
OBJDUMP="@OBJDUMP@"
|
||||
ac_cv_path_OBJDUMP="${OBJDUMP}"
|
||||
fi
|
||||
|
||||
if test -n "@DSYMUTIL@"; then
|
||||
DSYMUTIL="@DSYMUTIL@"
|
||||
ac_cv_path_DSYMUTIL="${DSYMUTIL}"
|
||||
fi
|
||||
fi
|
||||
|
||||
if test -n "@debug@"; then
|
||||
enable_reduce_exports=no
|
||||
fi
|
||||
|
||||
if test -n "@CFLAGS@"; then
|
||||
CFLAGS="@CFLAGS@ ${CFLAGS}"
|
||||
fi
|
||||
if test -n "@CXXFLAGS@"; then
|
||||
CXXFLAGS="@CXXFLAGS@ ${CXXFLAGS}"
|
||||
fi
|
||||
if test -n "@CPPFLAGS@"; then
|
||||
CPPFLAGS="@CPPFLAGS@ ${CPPFLAGS}"
|
||||
fi
|
||||
if test -n "@LDFLAGS@"; then
|
||||
LDFLAGS="@LDFLAGS@ ${LDFLAGS}"
|
||||
fi
|
||||
Reference in New Issue
Block a user