mirror of
https://github.com/dashpay/dash.git
synced 2024-12-24 19:42:46 +01:00
merge bitcoin#23909: use a static .tiff for macOS .dmg over generating
This commit is contained in:
parent
7e2309866c
commit
b1dd417f26
3
.gitignore
vendored
3
.gitignore
vendored
@ -95,8 +95,6 @@ Makefile
|
||||
!depends/Makefile
|
||||
dash-qt
|
||||
Dash-Qt.app
|
||||
background.tiff*
|
||||
!/depends/Makefile
|
||||
|
||||
# Qt Creator
|
||||
Makefile.am.user
|
||||
@ -157,7 +155,6 @@ cmake-build-debug
|
||||
|
||||
osx_volname
|
||||
dist/
|
||||
*.background.tiff
|
||||
|
||||
/guix-build-*
|
||||
|
||||
|
25
Makefile.am
25
Makefile.am
@ -36,9 +36,7 @@ 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_BACKGROUND_SVG=background.svg
|
||||
OSX_BACKGROUND_IMAGE=background.tiff
|
||||
OSX_BACKGROUND_IMAGE_DPIS=36 72
|
||||
OSX_BACKGROUND_IMAGE=$(top_srcdir)/contrib/macdeploy/background.tiff
|
||||
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
|
||||
@ -62,7 +60,6 @@ WINDOWS_PACKAGING = $(top_srcdir)/share/pixmaps/dash.ico \
|
||||
$(top_srcdir)/doc/README_windows.txt
|
||||
|
||||
OSX_PACKAGING = $(OSX_DEPLOY_SCRIPT) $(OSX_INSTALLER_ICONS) \
|
||||
$(top_srcdir)/contrib/macdeploy/$(OSX_BACKGROUND_SVG) \
|
||||
$(top_srcdir)/contrib/macdeploy/detached-sig-apply.sh \
|
||||
$(top_srcdir)/contrib/macdeploy/detached-sig-create.sh
|
||||
|
||||
@ -122,20 +119,13 @@ osx_volname:
|
||||
echo $(OSX_VOLNAME) >$@
|
||||
|
||||
if BUILD_DARWIN
|
||||
$(OSX_DMG): $(OSX_APP_BUILT) $(OSX_PACKAGING) $(OSX_BACKGROUND_IMAGE)
|
||||
$(OSX_DMG): $(OSX_APP_BUILT) $(OSX_PACKAGING)
|
||||
$(PYTHON) $(OSX_DEPLOY_SCRIPT) $(OSX_APP) $(OSX_VOLNAME) -translations-dir=$(QT_TRANSLATION_DIR) -dmg
|
||||
|
||||
$(OSX_BACKGROUND_IMAGE).png: contrib/macdeploy/$(OSX_BACKGROUND_SVG)
|
||||
sed 's/PACKAGE_NAME/$(PACKAGE_NAME)/' < "$<" | $(RSVG_CONVERT) -f png -d 36 -p 36 -o $@
|
||||
$(OSX_BACKGROUND_IMAGE)@2x.png: contrib/macdeploy/$(OSX_BACKGROUND_SVG)
|
||||
sed 's/PACKAGE_NAME/$(PACKAGE_NAME)/' < "$<" | $(RSVG_CONVERT) -f png -d 72 -p 72 -o $@
|
||||
$(OSX_BACKGROUND_IMAGE): $(OSX_BACKGROUND_IMAGE).png $(OSX_BACKGROUND_IMAGE)@2x.png
|
||||
tiffutil -cathidpicheck $^ -out $@
|
||||
|
||||
deploydir: $(OSX_DMG)
|
||||
else !BUILD_DARWIN
|
||||
APP_DIST_DIR=$(top_builddir)/dist
|
||||
APP_DIST_EXTRAS=$(APP_DIST_DIR)/.background/$(OSX_BACKGROUND_IMAGE) $(APP_DIST_DIR)/.DS_Store $(APP_DIST_DIR)/Applications
|
||||
APP_DIST_EXTRAS=$(APP_DIST_DIR)/.background/background.tiff $(APP_DIST_DIR)/.DS_Store $(APP_DIST_DIR)/Applications
|
||||
|
||||
$(APP_DIST_DIR)/Applications:
|
||||
@rm -f $@
|
||||
@ -149,12 +139,9 @@ $(OSX_TEMP_ISO): $(APP_DIST_EXTRAS)
|
||||
$(OSX_DMG): $(OSX_TEMP_ISO)
|
||||
$(DMG) dmg "$<" "$@"
|
||||
|
||||
dpi%.$(OSX_BACKGROUND_IMAGE): contrib/macdeploy/$(OSX_BACKGROUND_SVG)
|
||||
sed 's/PACKAGE_NAME/$(PACKAGE_NAME)/' < "$<" | $(RSVG_CONVERT) -f png -d $* -p $* | $(IMAGEMAGICK_CONVERT) - $@
|
||||
OSX_BACKGROUND_IMAGE_DPIFILES := $(foreach dpi,$(OSX_BACKGROUND_IMAGE_DPIS),dpi$(dpi).$(OSX_BACKGROUND_IMAGE))
|
||||
$(APP_DIST_DIR)/.background/$(OSX_BACKGROUND_IMAGE): $(OSX_BACKGROUND_IMAGE_DPIFILES)
|
||||
$(APP_DIST_DIR)/.background/background.tiff:
|
||||
$(MKDIR_P) $(@D)
|
||||
$(TIFFCP) -c none $(OSX_BACKGROUND_IMAGE_DPIFILES) $@
|
||||
cp $(OSX_BACKGROUND_IMAGE) $@
|
||||
|
||||
$(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)
|
||||
@ -331,7 +318,7 @@ clean-docs:
|
||||
clean-local: clean-docs
|
||||
rm -rf coverage_percent.txt test_dash.coverage/ total.coverage/ fuzz.coverage/ test/tmp/ cache/ $(OSX_APP)
|
||||
rm -rf test/functional/__pycache__ test/functional/test_framework/__pycache__ test/cache share/rpcauth/__pycache__
|
||||
rm -rf osx_volname dist/ dpi36.background.tiff dpi72.background.tiff
|
||||
rm -rf osx_volname dist/
|
||||
|
||||
test-security-check:
|
||||
if TARGET_DARWIN
|
||||
|
@ -8,7 +8,7 @@ export LC_ALL=C.UTF-8
|
||||
|
||||
export CONTAINER_NAME=ci_macos_cross
|
||||
export HOST=x86_64-apple-darwin19
|
||||
export PACKAGES="cmake imagemagick libcap-dev librsvg2-bin libz-dev libbz2-dev libtiff-tools python3-dev python3-setuptools"
|
||||
export PACKAGES="cmake libcap-dev libz-dev libbz2-dev python3-dev python3-setuptools"
|
||||
export XCODE_VERSION=12.1
|
||||
export XCODE_BUILD_ID=12A7403
|
||||
export RUN_UNIT_TESTS=false
|
||||
|
@ -693,7 +693,6 @@ case $host in
|
||||
TARGET_OS=darwin
|
||||
if test x$cross_compiling != xyes; then
|
||||
BUILD_OS=darwin
|
||||
AC_PATH_PROGS([RSVG_CONVERT], [rsvg-convert rsvg],rsvg-convert)
|
||||
AC_CHECK_PROG([BREW],brew, brew)
|
||||
if test x$BREW = xbrew; then
|
||||
dnl These Homebrew packages may be keg-only, meaning that they won't be found
|
||||
@ -758,9 +757,6 @@ case $host in
|
||||
AC_PATH_TOOL([OTOOL], [otool], otool)
|
||||
AC_PATH_PROGS([XORRISOFS], [xorrisofs], xorrisofs)
|
||||
AC_PATH_PROGS([DMG], [dmg], dmg)
|
||||
AC_PATH_PROGS([RSVG_CONVERT], [rsvg-convert rsvg],rsvg-convert)
|
||||
AC_PATH_PROGS([IMAGEMAGICK_CONVERT], [convert],convert)
|
||||
AC_PATH_PROGS([TIFFCP], [tiffcp],tiffcp)
|
||||
|
||||
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,
|
||||
@ -1828,6 +1824,7 @@ AC_CONFIG_LINKS([contrib/devtools/test-security-check.py:contrib/devtools/test-s
|
||||
AC_CONFIG_LINKS([contrib/devtools/symbol-check.py:contrib/devtools/symbol-check.py])
|
||||
AC_CONFIG_LINKS([contrib/devtools/test-symbol-check.py:contrib/devtools/test-symbol-check.py])
|
||||
AC_CONFIG_LINKS([contrib/filter-lcov.py:contrib/filter-lcov.py])
|
||||
AC_CONFIG_LINKS([contrib/macdeploy/background.tiff:contrib/macdeploy/background.tiff])
|
||||
AC_CONFIG_LINKS([test/functional/test_runner.py:test/functional/test_runner.py])
|
||||
AC_CONFIG_LINKS([test/fuzz/test_runner.py:test/fuzz/test_runner.py])
|
||||
AC_CONFIG_LINKS([test/util/bitcoin-util-test.py:test/util/bitcoin-util-test.py])
|
||||
|
@ -16,7 +16,6 @@
|
||||
(gnu packages gcc)
|
||||
(gnu packages gnome)
|
||||
(gnu packages image)
|
||||
(gnu packages imagemagick)
|
||||
(gnu packages installers)
|
||||
(gnu packages linux)
|
||||
(gnu packages llvm)
|
||||
@ -207,25 +206,6 @@ chain for " target " development."))
|
||||
(package-with-extra-patches base-nsis
|
||||
(search-our-patches "nsis-SConstruct-sde-support.patch")))
|
||||
|
||||
(define-public font-tuffy
|
||||
(package
|
||||
(name "font-tuffy")
|
||||
(version "20120614")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "http://tulrich.com/fonts/tuffy-" version ".tar.gz"))
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"02vf72bgrp30vrbfhxjw82s115z27dwfgnmmzfb0n9wfhxxfpyf6"))))
|
||||
(build-system font-build-system)
|
||||
(home-page "http://tulrich.com/fonts/")
|
||||
(synopsis "The Tuffy Truetype Font Family")
|
||||
(description
|
||||
"Thatcher Ulrich's first outline font design. He started with the goal of producing a neutral, readable sans-serif text font. There are lots of \"expressive\" fonts out there, but he wanted to start with something very plain and clean, something he might want to actually use. ")
|
||||
(license license:public-domain)))
|
||||
|
||||
(define osslsigncode
|
||||
(package
|
||||
(name "osslsigncode")
|
||||
@ -670,5 +650,5 @@ parse, modify and abstract ELF, PE and MachO formats.")
|
||||
(else
|
||||
(make-bitcoin-cross-toolchain target)))))
|
||||
((string-contains target "darwin")
|
||||
(list clang-toolchain-10 binutils imagemagick libtiff librsvg font-tuffy cmake-minimal xorriso python-signapple))
|
||||
(list clang-toolchain-10 binutils cmake-minimal xorriso python-signapple))
|
||||
(else '())))))
|
||||
|
@ -1,34 +0,0 @@
|
||||
<?xml version="1.0" standalone="no"?>
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN"
|
||||
"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
|
||||
<svg version="1.0" xmlns="http://www.w3.org/2000/svg" width="1000pt" height="640pt" viewBox="0 0 1000 640" preserveAspectRatio="xMidYMid meet">
|
||||
<!-- kate: space-indent off;
|
||||
Copyright (c) 2015 The Bitcoin Core developers
|
||||
Distributed under the MIT software license, see the accompanying
|
||||
file COPYING or http://www.opensource.org/licenses/mit-license.php.
|
||||
-->
|
||||
<style type="text/css"><![CDATA[
|
||||
text {
|
||||
font-family: "Tuffy";
|
||||
font-size: 86px;
|
||||
fill: gray;
|
||||
text-anchor: middle;
|
||||
}
|
||||
]]></style>
|
||||
<defs>
|
||||
<linearGradient id="gradient" x1="0%" y1="0%" x2="100%" y2="100%">
|
||||
<stop offset="0%" style="stop-color:rgb(239,239,239);stop-opacity:1" />
|
||||
<stop offset="33%" style="stop-color:rgb(239,239,239);stop-opacity:1" />
|
||||
<stop offset="80%" style="stop-color:rgb(205,205,205);stop-opacity:1" />
|
||||
<stop offset="100%" style="stop-color:rgb(204,204,204);stop-opacity:1" />
|
||||
</linearGradient>
|
||||
</defs>
|
||||
<rect width="1000" height="640" style="fill:url(#gradient);stroke-width:0" />
|
||||
<g transform="translate(500,0) scale(0.9, 1)">
|
||||
<text x="0" y="114">PACKAGE_NAME</text>
|
||||
</g>
|
||||
<g transform="translate(0.000000,640.000000) scale(0.100000,-0.100000)"
|
||||
fill="#000000" stroke="none">
|
||||
<path d="M4995 3705 c-24 -23 -25 -29 -25 -165 l0 -140 -306 0 -306 0 -29 -29 c-29 -29 -29 -31 -29 -141 0 -110 0 -112 29 -141 l29 -29 306 0 306 0 0 -140 c0 -136 1 -142 25 -165 16 -17 35 -25 57 -25 29 0 72 32 306 226 180 149 274 233 278 250 13 53 -2 70 -278 299 -235 194 -277 225 -306 225 -22 0 -41 -8 -57 -25z" fixlter="url(#glow)"/>
|
||||
</g>
|
||||
</svg>
|
Before Width: | Height: | Size: 1.7 KiB |
BIN
contrib/macdeploy/background.tiff
Normal file
BIN
contrib/macdeploy/background.tiff
Normal file
Binary file not shown.
@ -676,7 +676,7 @@ if config.dmg is not None:
|
||||
os.mkdir(os.path.dirname(bg_path))
|
||||
if verbose:
|
||||
print('background.tiff', "->", bg_path)
|
||||
shutil.copy2('background.tiff', bg_path)
|
||||
shutil.copy2('contrib/macdeploy/background.tiff', bg_path)
|
||||
|
||||
os.symlink("/Applications", os.path.join(disk_root, "Applications"))
|
||||
|
||||
|
@ -43,7 +43,7 @@ The paths are automatically configured and no other options are needed unless ta
|
||||
|
||||
#### For macOS cross compilation
|
||||
|
||||
sudo apt-get install curl librsvg2-bin libtiff-tools bsdmainutils cmake imagemagick libcap-dev libz-dev libbz2-dev python3-setuptools libtinfo5 xorriso
|
||||
sudo apt-get install curl bsdmainutils cmake libcap-dev libz-dev libbz2-dev python3-setuptools libtinfo5 xorriso
|
||||
|
||||
Note: You must obtain the macOS SDK before proceeding with a cross-compile.
|
||||
Under the depends directory, create a subdirectory named `SDKs`.
|
||||
|
@ -25,11 +25,6 @@ brew install automake berkeley-db4 libtool boost gmp miniupnpc pkg-config python
|
||||
If you run into issues, check [Homebrew's troubleshooting page](https://docs.brew.sh/Troubleshooting).
|
||||
See [dependencies.md](dependencies.md) for a complete overview.
|
||||
|
||||
If you want to build the disk image with `make deploy` (.dmg / optional), you need RSVG:
|
||||
```shell
|
||||
brew install librsvg
|
||||
```
|
||||
|
||||
## Berkeley DB
|
||||
|
||||
It is recommended to use Berkeley DB 4.8. If you have to build it yourself,
|
||||
|
@ -17,7 +17,6 @@ These are the dependencies currently used by Dash Core. You can find instruction
|
||||
| libevent | [2.1.11-stable](https://github.com/libevent/libevent/releases) | [2.0.21](https://github.com/bitcoin/bitcoin/pull/18676) | No | | |
|
||||
| libnatpmp | git commit [4536032...](https://github.com/miniupnp/libnatpmp/tree/4536032ae32268a45c073a4d5e91bbab4534773a) | | No | | |
|
||||
| libpng | | | | | [Yes](https://github.com/dashpay/dash/blob/develop/depends/packages/qt.mk) |
|
||||
| librsvg | | | | | |
|
||||
| MiniUPnPc | [2.2.2](https://miniupnp.tuxfamily.org/files) | | No | | |
|
||||
| PCRE | | | | | [Yes](https://github.com/dashpay/dash/blob/develop/depends/packages/qt.mk) |
|
||||
| Python (tests) | | [3.8](https://www.python.org/downloads) | | | |
|
||||
@ -45,5 +44,4 @@ Some dependencies are not needed in all configurations. The following are some f
|
||||
* ZeroMQ is needed only with the `--with-zmq` option.
|
||||
|
||||
#### Other
|
||||
* librsvg is only needed if you need to run `make deploy` on (cross-compilation to) macOS.
|
||||
* Not-Qt-bundled zlib is required to build the [DMG tool](../contrib/macdeploy/README.md#deterministic-macos-dmg-notes) from the libdmg-hfsplus project.
|
||||
|
Loading…
Reference in New Issue
Block a user