mirror of
https://github.com/bitcoin/bitcoin.git
synced 2026-04-03 20:35:17 +02:00
Merge bitcoin/bitcoin#24031: build: don't compress macOS DMG
1dd8cbfbc6build: don't compress macOS DMG (fanquake) Pull request description: Skip compressing the macOS DMG, and drop related build steps and dependencies. Uncompressed the DMG increases from ~16mb to ~30mb, which compared to other software a user may download, (Firefox 125mb, VLC 52mb, Open Office 176mb), is still relatively small. When contrasted against the 100's of GB of blockchain data a node will download, an additional 15mb to get the release binary, isn't much additional overhead. Note that if / when we build with LTO enabled for releases, this size will shrink back down significantly again. `native_libdmg-hfsplus` is not maintained, and I doubt the DMG creation feature will ever be fixed. If at some point `xorrisofs` supports compressing dmgs, we could enable that. Guix Build on x86_64: ```bash 25b7c8bb7bc8ea014d43cebb844a842d2ac8d5a343039a820d24b649c9e6bc8a guix-build-1dd8cbfbc631/output/arm64-apple-darwin/SHA256SUMS.part 16beb5c52c9bf51b5ce9ef5a0d17c0038238a833383586a1b14acbca78533e4b guix-build-1dd8cbfbc631/output/arm64-apple-darwin/bitcoin-1dd8cbfbc631-arm64-apple-darwin-unsigned.dmg d8f89a61a7448d6334dbb3639386a7b6340542393933f35421a9e6dfc724e455 guix-build-1dd8cbfbc631/output/arm64-apple-darwin/bitcoin-1dd8cbfbc631-arm64-apple-darwin-unsigned.tar.gz 11617dc261ef602433f5bb29956a40a9085dbc783f519f75fbe06e80970148d0 guix-build-1dd8cbfbc631/output/arm64-apple-darwin/bitcoin-1dd8cbfbc631-arm64-apple-darwin.tar.gz aa8550d4a394d3161d14ec5e6012ed07354135afb022e905a1946785b4665664 guix-build-1dd8cbfbc631/output/dist-archive/bitcoin-1dd8cbfbc631.tar.gz 2b837f2f971a9738d0b7b8497f7ded740ef5e67c8baa7f30ca33e6b7d826eec8 guix-build-1dd8cbfbc631/output/x86_64-apple-darwin/SHA256SUMS.part db972b2c06dbde5525a3f9e6ceb9c20a8120bc9a6f15e1d852a4bfac09d88569 guix-build-1dd8cbfbc631/output/x86_64-apple-darwin/bitcoin-1dd8cbfbc631-x86_64-apple-darwin-unsigned.dmg 50fe990c3f9923ee92195125faf6517396e7c1b017a8f4f7d52e991ebce52f0c guix-build-1dd8cbfbc631/output/x86_64-apple-darwin/bitcoin-1dd8cbfbc631-x86_64-apple-darwin-unsigned.tar.gz 1d9022b0ae46ead41046c40f82291ce363760660a3cd6e6ef6a5b1128b90faef guix-build-1dd8cbfbc631/output/x86_64-apple-darwin/bitcoin-1dd8cbfbc631-x86_64-apple-darwin.tar.gz ``` Guix Build on arm64: ```bash ``` ACKs for top commit: Sjors: re-tACK1dd8cbfbc6on Intel macOS laanwj: Build system changes code review ACK1dd8cbfbc6, I don't know anything about MacOS application formats and their internals so do not have an opinion on the contents of this change. jarolrod: ACK1dd8cbfbc6Tree-SHA512: 04c5bf78f26a9877777093ec4c50c457107bef59d720839ea5e7d7e4f7961dfee9f86b40cf791524a9e60e9e77403a797e9fcdae3849b60b759f9f66cc31b6ab
This commit is contained in:
@@ -1,24 +0,0 @@
|
||||
package=native_libdmg-hfsplus
|
||||
$(package)_version=7ac55ec64c96f7800d9818ce64c79670e7f02b67
|
||||
$(package)_download_path=https://github.com/planetbeing/libdmg-hfsplus/archive
|
||||
$(package)_file_name=$($(package)_version).tar.gz
|
||||
$(package)_sha256_hash=56fbdc48ec110966342f0ecddd6f8f89202f4143ed2a3336e42bbf88f940850c
|
||||
$(package)_build_subdir=build
|
||||
$(package)_patches=remove-libcrypto-dependency.patch
|
||||
|
||||
define $(package)_preprocess_cmds
|
||||
patch -p1 < $($(package)_patch_dir)/remove-libcrypto-dependency.patch && \
|
||||
mkdir build
|
||||
endef
|
||||
|
||||
define $(package)_config_cmds
|
||||
$($(package)_cmake) -DCMAKE_C_FLAGS="$$($(1)_cflags) -Wl,--build-id=none" -DCMAKE_SKIP_RPATH="ON" -DCMAKE_EXE_LINKER_FLAGS="-static" -DCMAKE_FIND_LIBRARY_SUFFIXES=".a" ..
|
||||
endef
|
||||
|
||||
define $(package)_build_cmds
|
||||
$(MAKE) -C dmg
|
||||
endef
|
||||
|
||||
define $(package)_stage_cmds
|
||||
$(MAKE) DESTDIR=$($(package)_staging_dir) -C dmg install
|
||||
endef
|
||||
@@ -26,7 +26,7 @@ usdt_linux_packages=systemtap
|
||||
darwin_native_packages = native_ds_store native_mac_alias
|
||||
|
||||
ifneq ($(build_os),darwin)
|
||||
darwin_native_packages += native_cctools native_libtapi native_libdmg-hfsplus
|
||||
darwin_native_packages += native_cctools native_libtapi
|
||||
|
||||
ifeq ($(strip $(FORCE_USE_SYSTEM_CLANG)),)
|
||||
darwin_native_packages+= native_clang
|
||||
|
||||
@@ -1,45 +0,0 @@
|
||||
From 3e5fd3fb56bc9ff03beb535979e33dcf83fe1f70 Mon Sep 17 00:00:00 2001
|
||||
From: Cory Fields <cory-nospam-@coryfields.com>
|
||||
Date: Thu, 8 May 2014 12:39:42 -0400
|
||||
Subject: [PATCH] dmg: remove libcrypto dependency
|
||||
|
||||
---
|
||||
dmg/CMakeLists.txt | 16 ----------------
|
||||
1 file changed, 16 deletions(-)
|
||||
|
||||
diff --git a/dmg/CMakeLists.txt b/dmg/CMakeLists.txt
|
||||
index eec62d6..3969f64 100644
|
||||
--- a/dmg/CMakeLists.txt
|
||||
+++ b/dmg/CMakeLists.txt
|
||||
@@ -1,12 +1,5 @@
|
||||
-INCLUDE(FindOpenSSL)
|
||||
INCLUDE(FindZLIB)
|
||||
|
||||
-FIND_LIBRARY(CRYPTO_LIBRARIES crypto
|
||||
- PATHS
|
||||
- /usr/lib
|
||||
- /usr/local/lib
|
||||
- )
|
||||
-
|
||||
IF(NOT ZLIB_FOUND)
|
||||
message(FATAL_ERROR "zlib is required for dmg!")
|
||||
ENDIF(NOT ZLIB_FOUND)
|
||||
@@ -18,15 +11,6 @@ link_directories(${PROJECT_BINARY_DIR}/common ${PROJECT_BINARY_DIR}/hfs)
|
||||
|
||||
add_library(dmg adc.c base64.c checksum.c dmgfile.c dmglib.c filevault.c io.c partition.c resources.c udif.c)
|
||||
|
||||
-IF(OPENSSL_FOUND)
|
||||
- add_definitions(-DHAVE_CRYPT)
|
||||
- include_directories(${OPENSSL_INCLUDE_DIR})
|
||||
- target_link_libraries(dmg ${CRYPTO_LIBRARIES})
|
||||
- IF(WIN32)
|
||||
- TARGET_LINK_LIBRARIES(dmg gdi32)
|
||||
- ENDIF(WIN32)
|
||||
-ENDIF(OPENSSL_FOUND)
|
||||
-
|
||||
target_link_libraries(dmg common hfs z)
|
||||
|
||||
add_executable(dmg-bin dmg.c)
|
||||
--
|
||||
2.22.0
|
||||
|
||||
Reference in New Issue
Block a user