mirror of
https://github.com/dashpay/dash.git
synced 2024-12-23 11:02:49 +01:00
merge bitcoin#24031: don't compress macOS DMG
This commit is contained in:
parent
6a54603ca3
commit
d3d7a0562a
1
.gitignore
vendored
1
.gitignore
vendored
@ -76,7 +76,6 @@ libconftest.dylib*
|
||||
*.log
|
||||
*.trs
|
||||
*.dmg
|
||||
*.iso
|
||||
|
||||
*.json.h
|
||||
*.raw.h
|
||||
|
@ -13,7 +13,7 @@ if ENABLE_MAN
|
||||
SUBDIRS += doc/man
|
||||
endif
|
||||
.PHONY: deploy FORCE
|
||||
.INTERMEDIATE: $(OSX_TEMP_ISO) $(COVERAGE_INFO)
|
||||
.INTERMEDIATE: $(COVERAGE_INFO)
|
||||
|
||||
export PYTHONPATH
|
||||
|
||||
@ -37,7 +37,6 @@ space := $(empty) $(empty)
|
||||
OSX_APP=Dash-Qt.app
|
||||
OSX_VOLNAME = $(subst $(space),-,$(PACKAGE_NAME))
|
||||
OSX_DMG = $(OSX_VOLNAME).dmg
|
||||
OSX_TEMP_ISO = $(OSX_DMG:.dmg=).temp.iso
|
||||
OSX_DEPLOY_SCRIPT=$(top_srcdir)/contrib/macdeploy/macdeployqtplus
|
||||
OSX_INSTALLER_ICONS=$(top_srcdir)/src/qt/res/icons/dash.icns
|
||||
OSX_PLIST=$(top_builddir)/share/qt/Info.plist #not installed
|
||||
@ -127,19 +126,15 @@ deploydir: $(OSX_DMG)
|
||||
else !BUILD_DARWIN
|
||||
APP_DIST_DIR=$(top_builddir)/dist
|
||||
|
||||
$(OSX_TEMP_ISO): $(APP_DIST_DIR)/$(OSX_APP)/Contents/MacOS/Dash-Qt
|
||||
$(OSX_DMG): deploydir
|
||||
$(XORRISOFS) -D -l -V "$(OSX_VOLNAME)" -no-pad -r -dir-mode 0755 -o $@ $(APP_DIST_DIR) -- $(if $(SOURCE_DATE_EPOCH),-volume_date all_file_dates =$(SOURCE_DATE_EPOCH))
|
||||
|
||||
$(OSX_DMG): $(OSX_TEMP_ISO)
|
||||
$(DMG) dmg "$<" "$@"
|
||||
|
||||
$(APP_DIST_DIR)/$(OSX_APP)/Contents/MacOS/Dash-Qt: $(OSX_APP_BUILT) $(OSX_PACKAGING)
|
||||
INSTALLNAMETOOL=$(INSTALLNAMETOOL) OTOOL=$(OTOOL) STRIP=$(STRIP) $(PYTHON) $(OSX_DEPLOY_SCRIPT) $(OSX_APP) $(OSX_VOLNAME) -translations-dir=$(QT_TRANSLATION_DIR)
|
||||
|
||||
deploydir: $(APP_DIST_DIR)/$(OSX_APP)/Contents/MacOS/Dash-Qt
|
||||
endif !BUILD_DARWIN
|
||||
|
||||
appbundle: $(OSX_APP_BUILT)
|
||||
deploy: $(OSX_DMG)
|
||||
endif
|
||||
|
||||
|
@ -846,7 +846,6 @@ case $host in
|
||||
AC_PATH_TOOL([INSTALLNAMETOOL], [install_name_tool], install_name_tool)
|
||||
AC_PATH_TOOL([OTOOL], [otool], otool)
|
||||
AC_PATH_PROGS([XORRISOFS], [xorrisofs], xorrisofs)
|
||||
AC_PATH_PROGS([DMG], [dmg], dmg)
|
||||
|
||||
dnl libtool will try to strip the static lib, which is a problem for
|
||||
dnl cross-builds because strip attempts to call a hard-coded ld,
|
||||
|
@ -81,19 +81,6 @@ prepend_to_search_env_var() {
|
||||
export "${1}=${2}${!1:+:}${!1}"
|
||||
}
|
||||
|
||||
case "$HOST" in
|
||||
*darwin*)
|
||||
# When targeting darwin, zlib is required by native_libdmg-hfsplus.
|
||||
zlib_store_path=$(store_path "zlib")
|
||||
zlib_static_store_path=$(store_path "zlib" static)
|
||||
|
||||
prepend_to_search_env_var LIBRARY_PATH "${zlib_static_store_path}/lib:${zlib_store_path}/lib"
|
||||
prepend_to_search_env_var C_INCLUDE_PATH "${zlib_store_path}/include"
|
||||
prepend_to_search_env_var CPLUS_INCLUDE_PATH "${zlib_store_path}/include"
|
||||
prepend_to_search_env_var OBJC_INCLUDE_PATH "${zlib_store_path}/include"
|
||||
prepend_to_search_env_var OBJCPLUS_INCLUDE_PATH "${zlib_store_path}/include"
|
||||
esac
|
||||
|
||||
# Set environment variables to point the CROSS toolchain to the right
|
||||
# includes/libs for $HOST
|
||||
case "$HOST" in
|
||||
@ -326,8 +313,7 @@ mkdir -p "$DISTSRC"
|
||||
make deploydir ${V:+V=1}
|
||||
mkdir -p "unsigned-app-${HOST}"
|
||||
cp --target-directory="unsigned-app-${HOST}" \
|
||||
contrib/macdeploy/detached-sig-create.sh \
|
||||
"${BASEPREFIX}/${HOST}"/native/bin/dmg
|
||||
contrib/macdeploy/detached-sig-create.sh
|
||||
mv --target-directory="unsigned-app-${HOST}" dist
|
||||
(
|
||||
cd "unsigned-app-${HOST}"
|
||||
|
@ -77,14 +77,11 @@ mkdir -p "$DISTSRC"
|
||||
# Apply detached codesignatures to dist/ (in-place)
|
||||
signapple apply dist/Dash-Qt.app codesignatures/osx/dist
|
||||
|
||||
# Make an uncompressed DMG from dist/
|
||||
# Make a DMG from dist/
|
||||
xorrisofs -D -l -V "$(< osx_volname)" -no-pad -r -dir-mode 0755 \
|
||||
-o uncompressed.dmg \
|
||||
-o "${OUTDIR}/${DISTNAME}-${HOST}.dmg" \
|
||||
dist \
|
||||
-- -volume_date all_file_dates ="$SOURCE_DATE_EPOCH"
|
||||
|
||||
# Compress uncompressed.dmg and output to OUTDIR
|
||||
./dmg dmg uncompressed.dmg "${OUTDIR}/${DISTNAME}-${HOST}.dmg"
|
||||
;;
|
||||
*)
|
||||
exit 1
|
||||
|
@ -585,8 +585,6 @@ parse, modify and abstract ELF, PE and MachO formats.")
|
||||
bzip2
|
||||
gzip
|
||||
xz
|
||||
zlib
|
||||
(list zlib "static")
|
||||
;; Build tools
|
||||
cmake-minimal
|
||||
gnu-make
|
||||
|
@ -97,16 +97,7 @@ redistributed.
|
||||
|
||||
[`xorrisofs`](https://www.gnu.org/software/xorriso/) is used to create the DMG.
|
||||
|
||||
`xorrisofs` cannot compress DMGs, so afterwards, the DMG tool from the
|
||||
`libdmg-hfsplus` project is used to compress it. There are several bugs in this
|
||||
tool and its maintainer has seemingly abandoned the project.
|
||||
|
||||
The DMG tool has the ability to create DMGs from scratch as well, but this functionality is
|
||||
broken. Only the compression feature is currently used. Ideally, the creation could be fixed
|
||||
and `xorrisofs` would no longer be necessary.
|
||||
|
||||
Background images and other features can be added to DMG files by inserting a
|
||||
`.DS_Store` during creation.
|
||||
A background image is added to DMG files by inserting a `.DS_Store` during creation.
|
||||
|
||||
As of OS X 10.9 Mavericks, using an Apple-blessed key to sign binaries is a requirement in
|
||||
order to satisfy the new Gatekeeper requirements. Because this private key cannot be
|
||||
|
@ -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
|
@ -27,7 +27,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
|
||||
|
Loading…
Reference in New Issue
Block a user