diff --git a/depends/Makefile b/depends/Makefile --- a/depends/Makefile +++ b/depends/Makefile @@ -34,6 +34,7 @@ SDK_PATH ?= $(BASEDIR)/SDKs NO_QT ?= NO_PROTOBUF ?= +NO_OPENSSL ?= NO_QR ?= NO_WALLET ?= NO_ZMQ ?= @@ -147,6 +148,8 @@ protobuf_packages_$(NO_PROTOBUF) = $(protobuf_packages) +openssl_packages_$(NO_OPENSSL) = $(openssl_packages) + jemalloc_packages_$(NO_JEMALLOC) = $(jemalloc_packages) packages += $($(host_arch)_$(host_os)_packages) $($(host_os)_packages) $(qt_packages_) $(wallet_packages_) $(upnp_packages_) $(natpmp_packages_) @@ -157,6 +160,10 @@ packages += $(protobuf_packages) endif +ifneq ($(openssl_packages_),) +packages += $(openssl_packages) +endif + ifneq ($(zmq_packages_),) packages += $(zmq_packages) endif diff --git a/depends/README.md b/depends/README.md --- a/depends/README.md +++ b/depends/README.md @@ -95,6 +95,7 @@ - `NO_JEMALLOC`: Don't download/build/cache jemalloc - `DEBUG`: Disable some optimizations and enable more runtime checking - `NO_PROTOBUF`: Don't download/build/cache protobuf (used for BIP70 support) +- `NO_OPENSSL`: Don't download/build/cache OpenSSL (used for BIP70 support) - `HOST_ID_SALT`: Optional salt to use when generating host package ids - `BUILD_ID_SALT`: Optional salt to use when generating build package ids - `JOBS`: Number of jobs to use for each package build diff --git a/depends/packages/packages.mk b/depends/packages/packages.mk --- a/depends/packages/packages.mk +++ b/depends/packages/packages.mk @@ -1,8 +1,10 @@ -packages:=boost openssl libevent +packages:=boost libevent protobuf_native_packages = native_protobuf protobuf_packages = protobuf +openssl_packages = openssl + qrencode_packages = qrencode qt_linux_packages:=qt expat libxcb xcb_proto libXau xproto freetype fontconfig libxkbcommon libxcb_util libxcb_util_render libxcb_util_keysyms libxcb_util_image libxcb_util_wm diff --git a/depends/packages/qt.mk b/depends/packages/qt.mk --- a/depends/packages/qt.mk +++ b/depends/packages/qt.mk @@ -4,7 +4,9 @@ $(package)_suffix=everywhere-opensource-src-$($(package)_version).tar.xz $(package)_file_name=qtbase-$($(package)_suffix) $(package)_sha256_hash=0c42c799aa7c89e479a07c451bf5a301e291266ba789e81afc18f95049524edc +ifneq ($(openssl_packages_),) $(package)_dependencies=openssl +endif $(package)_linux_dependencies=freetype fontconfig libxcb libxkbcommon libxcb_util libxcb_util_render libxcb_util_keysyms libxcb_util_image libxcb_util_wm $(package)_qt_libs=corelib network widgets gui plugins testlib $(package)_linguist_tools = lrelease lupdate lconvert @@ -80,7 +82,11 @@ $(package)_config_opts += -nomake tests $(package)_config_opts += -nomake tools $(package)_config_opts += -opensource +ifneq ($(openssl_packages_),) $(package)_config_opts += -openssl-linked +else +$(package)_config_opts += -no-openssl +endif $(package)_config_opts += -pkg-config $(package)_config_opts += -prefix $(host_prefix) $(package)_config_opts += -qt-libpng @@ -152,7 +158,6 @@ $(package)_config_opts_linux += -fontconfig $(package)_config_opts_linux += -no-feature-vulkan $(package)_config_opts_linux += -dbus-runtime -$(package)_config_opts_linux += OPENSSL_LIBS="-lssl -lcrypto -lpthread" $(package)_config_opts_linux += -platform linux-g++ -xplatform bitcoin-linux-g++ $(package)_config_opts_mingw32 = -no-dbus $(package)_config_opts_mingw32 += -no-freetype @@ -162,7 +167,11 @@ $(package)_config_opts_mingw32 += "QMAKE_LFLAGS = '$($(package)_ldflags)'" $(package)_config_opts_mingw32 += -device-option CROSS_COMPILE="$(host)-" $(package)_config_opts_mingw32 += -pch + +ifneq ($(openssl_packages_),) +$(package)_config_opts_linux += OPENSSL_LIBS="-lssl -lcrypto -lpthread" $(package)_config_opts_mingw32 += OPENSSL_LIBS="-lssl -lcrypto -lws2_32" +endif endef define $(package)_fetch_cmds