mirror of
https://github.com/dashpay/dash.git
synced 2024-12-26 04:22:55 +01:00
e7a6f79e5a
027fdb8
When/if the copyright line does not mention Bitcoin Core developers, add a second line to copyrights in -version, About dialog, and splash screen (Luke Dashjr)cc2095e
Rewrite FormatParagraph to handle newlines within input strings correctly (Luke Dashjr)cddffaf
Bugfix: Include COPYRIGHT_HOLDERS_SUBSTITUTION in Makefile substitutions so it gets passed to extract-strings correctly (Luke Dashjr)29598e4
Move PACKAGE_URL to configure.ac (Luke Dashjr)78ec83d
splashscreen: Resize text to fit exactly (Luke Dashjr)3cae140
Bugfix: Actually use _COPYRIGHT_HOLDERS_SUBSTITUTION everywhere (Luke Dashjr)4d5a3df
Bugfix: gitian-descriptors: Add missing python-setuptools requirement for OS X (biplist module) (Luke Dashjr)e4ab5e5
Bugfix: Correct copyright year in Mac DMG background image (Luke Dashjr)917b1d0
Set copyright holders displayed in notices separately from the package name (Luke Dashjr)c39a6ff
Travis & gitian-osx: Use depends for ds_store and mac_alias modules (Luke Dashjr)902ccde
depends: Add mac_alias to depends (Luke Dashjr)82a2d98
depends: Add ds_store to depends (Cory Fields)de619a3
depends: Pass PYTHONPATH along to configure (Cory Fields)e611b6e
macdeploy: Use rsvg-convert rather than cairosvg (Luke Dashjr)63bcdc5
More complicated package name substitution for Mac deployment (Luke Dashjr)1a6c67c
Parameterise 2009 in translatable copyright strings (Luke Dashjr)d5f4683
Unify package name to as few places as possible without major changes (Luke Dashjr)
243 lines
8.6 KiB
Makefile
243 lines
8.6 KiB
Makefile
ACLOCAL_AMFLAGS = -I build-aux/m4
|
|
SUBDIRS = src
|
|
.PHONY: deploy FORCE
|
|
|
|
GZIP_ENV="-9n"
|
|
export PYTHONPATH
|
|
|
|
if BUILD_BITCOIN_LIBS
|
|
pkgconfigdir = $(libdir)/pkgconfig
|
|
pkgconfig_DATA = libdashconsensus.pc
|
|
endif
|
|
|
|
BITCOIND_BIN=$(top_builddir)/src/dashd$(EXEEXT)
|
|
BITCOIN_QT_BIN=$(top_builddir)/src/qt/dash-qt$(EXEEXT)
|
|
BITCOIN_CLI_BIN=$(top_builddir)/src/dash-cli$(EXEEXT)
|
|
BITCOIN_WIN_INSTALLER=$(PACKAGE)-$(PACKAGE_VERSION)-win$(WINDOWS_BITS)-setup$(EXEEXT)
|
|
|
|
empty :=
|
|
space := $(empty) $(empty)
|
|
|
|
OSX_APP=Dash-Qt.app
|
|
OSX_VOLNAME = $(subst $(space),-,$(PACKAGE_NAME))
|
|
OSX_DMG = $(OSX_VOLNAME).dmg
|
|
OSX_BACKGROUND_SVG=background.svg
|
|
OSX_BACKGROUND_IMAGE=background.tiff
|
|
OSX_BACKGROUND_IMAGE_DPIS=36 72
|
|
OSX_DSSTORE_GEN=$(top_srcdir)/contrib/macdeploy/custom_dsstore.py
|
|
OSX_DEPLOY_SCRIPT=$(top_srcdir)/contrib/macdeploy/macdeployqtplus
|
|
OSX_FANCY_PLIST=$(top_srcdir)/contrib/macdeploy/fancy.plist
|
|
OSX_INSTALLER_ICONS=$(top_srcdir)/src/qt/res/icons/bitcoin.icns
|
|
OSX_PLIST=$(top_srcdir)/share/qt/Info.plist #not installed
|
|
OSX_QT_TRANSLATIONS = da,de,es,hu,ru,uk,zh_CN,zh_TW
|
|
|
|
DIST_DOCS = $(wildcard doc/*.md) $(wildcard doc/release-notes/*.md)
|
|
|
|
BIN_CHECKS=$(top_srcdir)/contrib/devtools/symbol-check.py \
|
|
$(top_srcdir)/contrib/devtools/security-check.py
|
|
|
|
WINDOWS_PACKAGING = $(top_srcdir)/share/pixmaps/bitcoin.ico \
|
|
$(top_srcdir)/share/pixmaps/nsis-header.bmp \
|
|
$(top_srcdir)/share/pixmaps/nsis-wizard.bmp \
|
|
$(top_srcdir)/doc/README_windows.txt
|
|
|
|
OSX_PACKAGING = $(OSX_DEPLOY_SCRIPT) $(OSX_FANCY_PLIST) $(OSX_INSTALLER_ICONS) \
|
|
$(top_srcdir)/contrib/macdeploy/$(OSX_BACKGROUND_SVG) \
|
|
$(OSX_DSSTORE_GEN) \
|
|
$(top_srcdir)/contrib/macdeploy/detached-sig-apply.sh \
|
|
$(top_srcdir)/contrib/macdeploy/detached-sig-create.sh
|
|
|
|
COVERAGE_INFO = baseline_filtered_combined.info baseline.info block_test.info \
|
|
leveldb_baseline.info test_dash_filtered.info total_coverage.info \
|
|
baseline_filtered.info block_test_filtered.info rpc_test.info rpc_test_filtered.info \
|
|
leveldb_baseline_filtered.info test_dash_coverage.info test_dash.info
|
|
|
|
dist-hook:
|
|
-$(MAKE) -C $(top_distdir)/src/leveldb clean
|
|
-$(MAKE) -C $(top_distdir)/src/secp256k1 distclean
|
|
-$(GIT) archive --format=tar HEAD -- src/clientversion.cpp | $(AMTAR) -C $(top_distdir) -xf -
|
|
|
|
distcheck-hook:
|
|
$(MKDIR_P) $(top_distdir)/_build/src/leveldb
|
|
cp -rf $(top_srcdir)/src/leveldb/* $(top_distdir)/_build/src/leveldb/
|
|
-$(MAKE) -C $(top_distdir)/_build/src/leveldb clean
|
|
|
|
distcleancheck:
|
|
@:
|
|
|
|
$(BITCOIN_WIN_INSTALLER): all-recursive
|
|
$(MKDIR_P) $(top_builddir)/release
|
|
STRIPPROG="$(STRIP)" $(INSTALL_STRIP_PROGRAM) $(BITCOIND_BIN) $(top_builddir)/release
|
|
STRIPPROG="$(STRIP)" $(INSTALL_STRIP_PROGRAM) $(BITCOIN_QT_BIN) $(top_builddir)/release
|
|
STRIPPROG="$(STRIP)" $(INSTALL_STRIP_PROGRAM) $(BITCOIN_CLI_BIN) $(top_builddir)/release
|
|
@test -f $(MAKENSIS) && $(MAKENSIS) -V2 $(top_builddir)/share/setup.nsi || \
|
|
echo error: could not build $@
|
|
@echo built $@
|
|
|
|
$(if $(findstring src/,$(MAKECMDGOALS)),$(MAKECMDGOALS), none): FORCE
|
|
$(MAKE) -C src $(patsubst src/%,%,$@)
|
|
|
|
$(OSX_APP)/Contents/PkgInfo:
|
|
$(MKDIR_P) $(@D)
|
|
@echo "APPL????" > $@
|
|
|
|
$(OSX_APP)/Contents/Resources/empty.lproj:
|
|
$(MKDIR_P) $(@D)
|
|
@touch $@
|
|
|
|
$(OSX_APP)/Contents/Info.plist: $(OSX_PLIST)
|
|
$(MKDIR_P) $(@D)
|
|
$(INSTALL_DATA) $< $@
|
|
|
|
$(OSX_APP)/Contents/Resources/bitcoin.icns: $(OSX_INSTALLER_ICONS)
|
|
$(MKDIR_P) $(@D)
|
|
$(INSTALL_DATA) $< $@
|
|
|
|
$(OSX_APP)/Contents/MacOS/Dash-Qt: $(BITCOIN_QT_BIN)
|
|
$(MKDIR_P) $(@D)
|
|
STRIPPROG="$(STRIP)" $(INSTALL_STRIP_PROGRAM) $< $@
|
|
|
|
$(OSX_APP)/Contents/Resources/Base.lproj/InfoPlist.strings:
|
|
$(MKDIR_P) $(@D)
|
|
echo '{ CFBundleDisplayName = "$(PACKAGE_NAME)"; CFBundleName = "$(PACKAGE_NAME)"; }' > $@
|
|
|
|
OSX_APP_BUILT=$(OSX_APP)/Contents/PkgInfo $(OSX_APP)/Contents/Resources/empty.lproj \
|
|
$(OSX_APP)/Contents/Resources/bitcoin.icns $(OSX_APP)/Contents/Info.plist \
|
|
$(OSX_APP)/Contents/MacOS/Dash-Qt $(OSX_APP)/Contents/Resources/Base.lproj/InfoPlist.strings
|
|
|
|
osx_volname:
|
|
echo $(OSX_VOLNAME) >$@
|
|
|
|
if BUILD_DARWIN
|
|
$(OSX_DMG): $(OSX_APP_BUILT) $(OSX_PACKAGING)
|
|
$(OSX_DEPLOY_SCRIPT) $(OSX_APP) -add-qt-tr $(OSX_QT_TRANSLATIONS) -translations-dir=$(QT_TRANSLATION_DIR) -dmg -fancy $(OSX_FANCY_PLIST) -verbose 2 -volname $(OSX_VOLNAME)
|
|
|
|
deploydir: $(OSX_DMG)
|
|
else
|
|
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_DIR)/Applications:
|
|
@rm -f $@
|
|
@cd $(@D); $(LN_S) /Applications $(@F)
|
|
|
|
$(APP_DIST_EXTRAS): $(APP_DIST_DIR)/$(OSX_APP)/Contents/MacOS/Dash-Qt
|
|
|
|
$(OSX_DMG): $(APP_DIST_EXTRAS)
|
|
$(GENISOIMAGE) -no-cache-inodes -D -l -probe -V "$(OSX_VOLNAME)" -no-pad -r -dir-mode 0755 -apple -o $@ dist
|
|
|
|
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)
|
|
$(MKDIR_P) $(@D)
|
|
$(TIFFCP) -c none $(OSX_BACKGROUND_IMAGE_DPIFILES) $@
|
|
|
|
$(APP_DIST_DIR)/.DS_Store: $(OSX_DSSTORE_GEN)
|
|
$< "$@" "$(OSX_VOLNAME)"
|
|
|
|
$(APP_DIST_DIR)/$(OSX_APP)/Contents/MacOS/Dash-Qt: $(OSX_APP_BUILT) $(OSX_PACKAGING)
|
|
INSTALLNAMETOOL=$(INSTALLNAMETOOL) OTOOL=$(OTOOL) STRIP=$(STRIP) $(OSX_DEPLOY_SCRIPT) $(OSX_APP) -translations-dir=$(QT_TRANSLATION_DIR) -add-qt-tr $(OSX_QT_TRANSLATIONS) -verbose 2
|
|
|
|
deploydir: $(APP_DIST_EXTRAS)
|
|
endif
|
|
|
|
if TARGET_DARWIN
|
|
appbundle: $(OSX_APP_BUILT)
|
|
deploy: $(OSX_DMG)
|
|
endif
|
|
if TARGET_WINDOWS
|
|
deploy: $(BITCOIN_WIN_INSTALLER)
|
|
endif
|
|
|
|
$(BITCOIN_QT_BIN): FORCE
|
|
$(MAKE) -C src qt/$(@F)
|
|
|
|
$(BITCOIND_BIN): FORCE
|
|
$(MAKE) -C src $(@F)
|
|
|
|
$(BITCOIN_CLI_BIN): FORCE
|
|
$(MAKE) -C src $(@F)
|
|
|
|
if USE_LCOV
|
|
|
|
baseline.info:
|
|
$(LCOV) -c -i -d $(abs_builddir)/src -o $@
|
|
|
|
baseline_filtered.info: baseline.info
|
|
$(LCOV) -r $< "/usr/include/*" -o $@
|
|
|
|
leveldb_baseline.info: baseline_filtered.info
|
|
$(LCOV) -c -i -d $(abs_builddir)/src/leveldb -b $(abs_builddir)/src/leveldb -o $@
|
|
|
|
leveldb_baseline_filtered.info: leveldb_baseline.info
|
|
$(LCOV) -r $< "/usr/include/*" -o $@
|
|
|
|
baseline_filtered_combined.info: leveldb_baseline_filtered.info baseline_filtered.info
|
|
$(LCOV) -a leveldb_baseline_filtered.info -a baseline_filtered.info -o $@
|
|
|
|
test_dash.info: baseline_filtered_combined.info
|
|
$(MAKE) -C src/ check
|
|
$(LCOV) -c -d $(abs_builddir)/src -t test_dash -o $@
|
|
$(LCOV) -z -d $(abs_builddir)/src
|
|
$(LCOV) -z -d $(abs_builddir)/src/leveldb
|
|
|
|
test_dash_filtered.info: test_dash.info
|
|
$(LCOV) -r $< "/usr/include/*" -o $@
|
|
|
|
block_test.info: test_dash_filtered.info
|
|
$(MKDIR_P) qa/tmp
|
|
-@TIMEOUT=15 qa/pull-tester/run-bitcoind-for-test.sh $(JAVA) -jar $(JAVA_COMPARISON_TOOL) qa/tmp/compTool $(COMPARISON_TOOL_REORG_TESTS)
|
|
$(LCOV) -c -d $(abs_builddir)/src --t BitcoinJBlockTest -o $@
|
|
$(LCOV) -z -d $(abs_builddir)/src
|
|
$(LCOV) -z -d $(abs_builddir)/src/leveldb
|
|
|
|
block_test_filtered.info: block_test.info
|
|
$(LCOV) -r $< "/usr/include/*" -o $@
|
|
|
|
rpc_test.info: test_dash_filtered.info
|
|
-@TIMEOUT=15 python qa/pull-tester/rpc-tests.py $(EXTENDED_RPC_TESTS)
|
|
$(LCOV) -c -d $(abs_builddir)/src --t rpc-tests -o $@
|
|
$(LCOV) -z -d $(abs_builddir)/src
|
|
$(LCOV) -z -d $(abs_builddir)/src/leveldb
|
|
|
|
rpc_test_filtered.info: rpc_test.info
|
|
$(LCOV) -r $< "/usr/include/*" -o $@
|
|
|
|
test_dash_coverage.info: baseline_filtered_combined.info test_dash_filtered.info
|
|
$(LCOV) -a baseline_filtered.info -a leveldb_baseline_filtered.info -a test_dash_filtered.info -o $@
|
|
|
|
total_coverage.info: baseline_filtered_combined.info test_dash_filtered.info block_test_filtered.info rpc_test_filtered.info
|
|
$(LCOV) -a baseline_filtered.info -a leveldb_baseline_filtered.info -a test_dash_filtered.info -a block_test_filtered.info -a rpc_test_filtered.info -o $@ | $(GREP) "\%" | $(AWK) '{ print substr($$3,2,50) "/" $$5 }' > coverage_percent.txt
|
|
|
|
test_dash.coverage/.dirstamp: test_dash_coverage.info
|
|
$(GENHTML) -s $< -o $(@D)
|
|
@touch $@
|
|
|
|
total.coverage/.dirstamp: total_coverage.info
|
|
$(GENHTML) -s $< -o $(@D)
|
|
@touch $@
|
|
|
|
cov: test_dash.coverage/.dirstamp total.coverage/.dirstamp
|
|
|
|
endif
|
|
|
|
# Dash: disable the test until upstream switches from convoluted comparison tool
|
|
# Ref https://github.com/bitcoin/bitcoin/issues/4545
|
|
if USE_COMPARISON_TOOL
|
|
check-local:
|
|
## $(MKDIR_P) qa/tmp
|
|
## @qa/pull-tester/run-bitcoind-for-test.sh $(JAVA) -jar $(JAVA_COMPARISON_TOOL) qa/tmp/compTool $(COMPARISON_TOOL_REORG_TESTS) 2>&1
|
|
endif
|
|
|
|
dist_noinst_SCRIPTS = autogen.sh
|
|
|
|
EXTRA_DIST = $(top_srcdir)/share/genbuild.sh qa/pull-tester/rpc-tests.py qa/rpc-tests $(DIST_DOCS) $(WINDOWS_PACKAGING) $(OSX_PACKAGING) $(BIN_CHECKS)
|
|
|
|
CLEANFILES = $(OSX_DMG) $(BITCOIN_WIN_INSTALLER)
|
|
|
|
.INTERMEDIATE: $(COVERAGE_INFO)
|
|
|
|
clean-local:
|
|
rm -rf coverage_percent.txt test_dash.coverage/ total.coverage/ qa/tmp/ cache/ $(OSX_APP)
|