From 3eed273b348ec8a26825fd0401ddf889ed1fb259 Mon Sep 17 00:00:00 2001 From: "Manuel Amador (Rudd-O)" Date: Fri, 12 Aug 2016 07:53:53 +0000 Subject: [PATCH 01/34] Add RPM build specfile and source distribution targets. --- .gitignore | 7 ++++++- BitcoinArmory.spec.in | 38 ++++++++++++++++++++++++++++++++++++++ Makefile.am | 10 +++++++++- configure.ac | 3 ++- cppForSwig/Makefile.am | 8 +++++++- 5 files changed, 62 insertions(+), 4 deletions(-) create mode 100644 BitcoinArmory.spec.in diff --git a/.gitignore b/.gitignore index a12cd860a..19d14ec15 100755 --- a/.gitignore +++ b/.gitignore @@ -140,4 +140,9 @@ _CppBlockUtils.* /cppForSwig/guardian/x64* /cppForSwig/x64* /cppForSwig/LMDB_Win/x64* -/cppForSwig/x64/*.* \ No newline at end of file +/cppForSwig/x64/*.* + +dist +BitcoinArmory-*.tar.gz +BitcoinArmory.spec +BitcoinArmory-*.rpm diff --git a/BitcoinArmory.spec.in b/BitcoinArmory.spec.in new file mode 100644 index 000000000..75475a590 --- /dev/null +++ b/BitcoinArmory.spec.in @@ -0,0 +1,38 @@ +# disable debug package, otherwise nasty build error in fedora >= 23 +%global debug_package %{nil} + +%define mybuildnumber %{?build_number}%{?!build_number:1} + +Name: BitcoinArmory +Version: @PACKAGE_VERSION@ +Release: %{mybuildnumber}%{?dist} +Summary: A high-security Bitcoin wallet +Group: Applications/Financial +License: MIT +Source0: bitcoinarmory-%{version}.tar.gz + +BuildRequires: python2-twisted, python2-psutil, swig, python2-devel, gcc-c++, PyQt4-devel +Requires: PyQt4, python-twisted, python-psutil +%description +This is a local full node implementation of an advanced Bitcoin wallet. + +%prep +%setup -q -n bitcoinarmory-%{version} + + +%build +%configure +make + + +%install +mkdir -p "%{buildroot}"/usr/share/applications +%makeinstall + + +%files +%defattr(-, root, root) +%{_datadir}/applications/*.desktop +%{_prefix}/lib/armory/* +%{_datadir}/armory/* +%attr(0755, root, root) %{_bindir}/* diff --git a/Makefile.am b/Makefile.am index b677b74da..19190d88d 100644 --- a/Makefile.am +++ b/Makefile.am @@ -5,7 +5,7 @@ EXTRA_DIST = *.py *.md LICENSE LICENSE-ATI LICENSE-MIT \ nginx_example.conf imgList.xml autogen.sh \ armoryengine/*.py ui/*.py \ img/* lang/* dpkgfiles/* \ - windowsbuild/* linuxbuild/* osxbuild/* + windowsbuild/* linuxbuild/* osxbuild/* BitcoinArmory.spec ACLOCAL_AMFLAGS = -I m4 @@ -84,3 +84,11 @@ clean-local: rm -f CppBlockUtils.py rm -f _CppBlockUtils.so rm -f CppBlockUtils.pyc + +srpm: dist + mkdir -p dist + tmpdir=`mktemp -d` ; rpmbuild --define "_topdir $$tmpdir" -ts bitcoinarmory-$(PACKAGE_VERSION).tar.gz && { mv -f "$$tmpdir"/SRPMS/* . ; } ; rm -rf "$$tmpdir" + +rpm: dist + mkdir -p dist + tmpdir=`mktemp -d` ; rpmbuild --define "_topdir $$tmpdir" -ta bitcoinarmory-$(PACKAGE_VERSION).tar.gz && { mv -f "$$tmpdir"/SRPMS/* "$$tmpdir"/RPMS/*/* . ; } ; rm -rf "$$tmpdir" diff --git a/configure.ac b/configure.ac index 51516dd53..50450ebb7 100644 --- a/configure.ac +++ b/configure.ac @@ -164,7 +164,8 @@ AM_CONDITIONAL([BUILD_DARWIN], [test x$BUILD_OS = xdarwin]) AC_CONFIG_FILES(Makefile cppForSwig/Makefile - cppForSwig/lmdb/Makefile) + cppForSwig/lmdb/Makefile + BitcoinArmory.spec) AM_CONDITIONAL([BUILD_TESTS], [test "x$want_tests" = "xyes"]) if test "x$want_tests" = "xyes"; then diff --git a/cppForSwig/Makefile.am b/cppForSwig/Makefile.am index fb1371975..8f406608a 100644 --- a/cppForSwig/Makefile.am +++ b/cppForSwig/Makefile.am @@ -20,6 +20,8 @@ if HAVE_CLANG SWIG_FLAGS += -D__CLANG__ endif +EXTRA_DIST = CppBlockUtils.i + INCLUDE_FILES = UniversalTimer.h BinaryData.h lmdb_wrapper.h \ BtcUtils.h DBUtils.h BlockObj.h BlockUtils.h EncryptionUtils.h \ BtcWallet.h LedgerEntry.h ScrAddrObj.h Blockchain.h \ @@ -31,7 +33,11 @@ INCLUDE_FILES = UniversalTimer.h BinaryData.h lmdb_wrapper.h \ FcgiMessage.h BlockDataManagerConfig.h \ Transactions.h Script.h Signer.h nodeRPC.h JSON_codec.h \ ReentrantLock.h StringSockets.h log.h OS_TranslatePath.h \ - TransactionBatch.h BlockchainScanner_Super.h SigHashEnum.h TxEvalState.h + TransactionBatch.h BlockchainScanner_Super.h SigHashEnum.h TxEvalState.h \ + make_unique.h TxOutScrRef.h bdmenums.h DbHeader.h SocketIncludes.h \ + PartialMerkle.h util.h WalletManager.h SwigClient.h Wallets.h \ + CoinSelection.h LedgerEntryData.h ThreadSafeClasses.h \ + Win_TranslatePath.h ScriptRecipient.h DB_SOURCE_FILES = UniversalTimer.cpp BinaryData.cpp lmdb_wrapper.cpp \ BtcUtils.cpp DBUtils.cpp BlockObj.cpp BlockUtils.cpp EncryptionUtils.cpp \ From 66c4b3316971a8e8026765d37aed5b757f1b0c4b Mon Sep 17 00:00:00 2001 From: "Manuel Amador (Rudd-O)" Date: Sun, 7 Jan 2018 22:50:24 +0000 Subject: [PATCH 02/34] RPM: Ensure that the PATH includes lrelease in Fedora. --- BitcoinArmory.spec.in | 1 + 1 file changed, 1 insertion(+) diff --git a/BitcoinArmory.spec.in b/BitcoinArmory.spec.in index 75475a590..1c41789a5 100644 --- a/BitcoinArmory.spec.in +++ b/BitcoinArmory.spec.in @@ -21,6 +21,7 @@ This is a local full node implementation of an advanced Bitcoin wallet. %build +export PATH=/usr/lib64/qt4/bin:/usr/lib/qt4/bin:"$PATH" %configure make From fb0b86becc9145ee9254c531adc6848aa2492290 Mon Sep 17 00:00:00 2001 From: "Manuel Amador (Rudd-O)" Date: Sun, 7 Jan 2018 23:41:55 +0000 Subject: [PATCH 03/34] Specfile updated to have the right PATH upon install. --- BitcoinArmory.spec.in | 1 + 1 file changed, 1 insertion(+) diff --git a/BitcoinArmory.spec.in b/BitcoinArmory.spec.in index 1c41789a5..4511e252d 100644 --- a/BitcoinArmory.spec.in +++ b/BitcoinArmory.spec.in @@ -28,6 +28,7 @@ make %install mkdir -p "%{buildroot}"/usr/share/applications +export PATH=/usr/lib64/qt4/bin:/usr/lib/qt4/bin:"$PATH" %makeinstall From a4ce9830bd2acbeba28e3c1a0090308d9f2f8835 Mon Sep 17 00:00:00 2001 From: "Manuel Amador (Rudd-O)" Date: Mon, 8 Jan 2018 00:25:12 +0000 Subject: [PATCH 04/34] Work around broken build system. --- Makefile.am | 7 +++++++ cppForSwig/Makefile.am | 11 ++++++----- 2 files changed, 13 insertions(+), 5 deletions(-) diff --git a/Makefile.am b/Makefile.am index 19190d88d..ef8145f53 100644 --- a/Makefile.am +++ b/Makefile.am @@ -66,6 +66,13 @@ endif # Skip Linux-specific steps on OSX. if ! BUILD_DARWIN +# Unfuck broken build system that, upon make install, incorrectly +# regenerates files with DESTDIR instead of prefix. +# Who the hell uses autotools in 2017? + echo $(DESTDIR) + echo $(prefix) + echo $(libdir) + if [ "x"$(DESTDIR) != "x" ] ; then sed -i "s:"$(DESTDIR)"::g" $(DESTDIR)$(libdir)/libCppBlockUtils.la ; fi if HAVE_GUI rsync -rupE --exclude="img/.DS_Store" img $(DESTDIR)$(prefix)/share/armory/ sed "s: /usr: $(prefix):g" < dpkgfiles/armory > $(DESTDIR)$(prefix)/bin/armory diff --git a/cppForSwig/Makefile.am b/cppForSwig/Makefile.am index 8f406608a..627166416 100644 --- a/cppForSwig/Makefile.am +++ b/cppForSwig/Makefile.am @@ -20,7 +20,7 @@ if HAVE_CLANG SWIG_FLAGS += -D__CLANG__ endif -EXTRA_DIST = CppBlockUtils.i +EXTRA_DIST = CppBlockUtils.i CppBlockUtils.py INCLUDE_FILES = UniversalTimer.h BinaryData.h lmdb_wrapper.h \ BtcUtils.h DBUtils.h BlockObj.h BlockUtils.h EncryptionUtils.h \ @@ -37,7 +37,7 @@ INCLUDE_FILES = UniversalTimer.h BinaryData.h lmdb_wrapper.h \ make_unique.h TxOutScrRef.h bdmenums.h DbHeader.h SocketIncludes.h \ PartialMerkle.h util.h WalletManager.h SwigClient.h Wallets.h \ CoinSelection.h LedgerEntryData.h ThreadSafeClasses.h \ - Win_TranslatePath.h ScriptRecipient.h + Win_TranslatePath.h ScriptRecipient.h CppBlockUtils_wrap.h DB_SOURCE_FILES = UniversalTimer.cpp BinaryData.cpp lmdb_wrapper.cpp \ BtcUtils.cpp DBUtils.cpp BlockObj.cpp BlockUtils.cpp EncryptionUtils.cpp \ @@ -104,10 +104,11 @@ libCppBlockUtils_la_LDFLAGS += -Wl,-rpath,@executable_path/ -Wl,-rpath,@loader_p endif #custom rules -CppBlockUtils_wrap.cxx: CppBlockUtils.i - swig $(SWIG_FLAGS) CppBlockUtils.i +CppBlockUtils_wrap.h: CppBlockUtils.i + swig $(SWIG_FLAGS) CppBlockUtils.i -.PHONY: CppBlockUtils_wrap.cxx +CppBlockUtils_wrap.cxx: CppBlockUtils.i + swig $(SWIG_FLAGS) CppBlockUtils.i clean-local: rm -f CppBlockUtils.py From 3aa8bd38c0920a9499227ee30f64f739fdc377ae Mon Sep 17 00:00:00 2001 From: "Manuel Amador (Rudd-O)" Date: Mon, 8 Jan 2018 03:23:41 +0000 Subject: [PATCH 05/34] Add rsync dependency. --- BitcoinArmory.spec.in | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/BitcoinArmory.spec.in b/BitcoinArmory.spec.in index 4511e252d..7e73d7312 100644 --- a/BitcoinArmory.spec.in +++ b/BitcoinArmory.spec.in @@ -11,7 +11,7 @@ Group: Applications/Financial License: MIT Source0: bitcoinarmory-%{version}.tar.gz -BuildRequires: python2-twisted, python2-psutil, swig, python2-devel, gcc-c++, PyQt4-devel +BuildRequires: python2-twisted, python2-psutil, swig, python2-devel, gcc-c++, PyQt4-devel, rsync Requires: PyQt4, python-twisted, python-psutil %description This is a local full node implementation of an advanced Bitcoin wallet. From 795cde9cc12b56871ab41d2570589055410f4af3 Mon Sep 17 00:00:00 2001 From: "Manuel Amador (Rudd-O)" Date: Mon, 8 Jan 2018 03:49:10 +0000 Subject: [PATCH 06/34] Remove echoes. --- Makefile.am | 3 --- 1 file changed, 3 deletions(-) diff --git a/Makefile.am b/Makefile.am index ef8145f53..59ecbd7c2 100644 --- a/Makefile.am +++ b/Makefile.am @@ -69,9 +69,6 @@ if ! BUILD_DARWIN # Unfuck broken build system that, upon make install, incorrectly # regenerates files with DESTDIR instead of prefix. # Who the hell uses autotools in 2017? - echo $(DESTDIR) - echo $(prefix) - echo $(libdir) if [ "x"$(DESTDIR) != "x" ] ; then sed -i "s:"$(DESTDIR)"::g" $(DESTDIR)$(libdir)/libCppBlockUtils.la ; fi if HAVE_GUI rsync -rupE --exclude="img/.DS_Store" img $(DESTDIR)$(prefix)/share/armory/ From 2755b7d410966e8ad6d2eadcd55f23b0f6d5aa77 Mon Sep 17 00:00:00 2001 From: "Manuel Amador (Rudd-O)" Date: Mon, 8 Jan 2018 03:59:19 +0000 Subject: [PATCH 07/34] Install desktop files and fix destdir mess. --- BitcoinArmory.spec.in | 4 ++-- Makefile.am | 4 +++- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/BitcoinArmory.spec.in b/BitcoinArmory.spec.in index 7e73d7312..aa708b7a9 100644 --- a/BitcoinArmory.spec.in +++ b/BitcoinArmory.spec.in @@ -23,13 +23,13 @@ This is a local full node implementation of an advanced Bitcoin wallet. %build export PATH=/usr/lib64/qt4/bin:/usr/lib/qt4/bin:"$PATH" %configure -make +%make %install mkdir -p "%{buildroot}"/usr/share/applications export PATH=/usr/lib64/qt4/bin:/usr/lib/qt4/bin:"$PATH" -%makeinstall +%make_build %files diff --git a/Makefile.am b/Makefile.am index 59ecbd7c2..b99300f1c 100644 --- a/Makefile.am +++ b/Makefile.am @@ -69,11 +69,13 @@ if ! BUILD_DARWIN # Unfuck broken build system that, upon make install, incorrectly # regenerates files with DESTDIR instead of prefix. # Who the hell uses autotools in 2017? - if [ "x"$(DESTDIR) != "x" ] ; then sed -i "s:"$(DESTDIR)"::g" $(DESTDIR)$(libdir)/libCppBlockUtils.la ; fi + if [ "x$(DESTDIR)" != "x" ] ; then sed -i "s:$(DESTDIR)::g" $(DESTDIR)$(libdir)/libCppBlockUtils.la ; fi if HAVE_GUI rsync -rupE --exclude="img/.DS_Store" img $(DESTDIR)$(prefix)/share/armory/ sed "s: /usr: $(prefix):g" < dpkgfiles/armory > $(DESTDIR)$(prefix)/bin/armory chmod +x $(DESTDIR)$(prefix)/bin/armory + mkdir -p $(DESTDIR)$(datadir)/applications + for f in armory.desktop armoryoffline.desktop armorytestnet.desktop ; do sed "s:/usr/local/bin:$(bindir):g" < dpkgfiles/$f > $(DESTDIR)$(datadir)/applications/$f ; chmod 0644 $(DESTDIR)$(datadir)/applications/$f ; done endif endif From 4fa6dde8a008811f8a865397c618ae1e13cd4dc9 Mon Sep 17 00:00:00 2001 From: "Manuel Amador (Rudd-O)" Date: Mon, 8 Jan 2018 04:04:00 +0000 Subject: [PATCH 08/34] Fix build and remove workaround. --- BitcoinArmory.spec.in | 4 ++-- Makefile.am | 1 - 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/BitcoinArmory.spec.in b/BitcoinArmory.spec.in index aa708b7a9..e0bfc921a 100644 --- a/BitcoinArmory.spec.in +++ b/BitcoinArmory.spec.in @@ -23,13 +23,13 @@ This is a local full node implementation of an advanced Bitcoin wallet. %build export PATH=/usr/lib64/qt4/bin:/usr/lib/qt4/bin:"$PATH" %configure -%make +%make_build %install mkdir -p "%{buildroot}"/usr/share/applications export PATH=/usr/lib64/qt4/bin:/usr/lib/qt4/bin:"$PATH" -%make_build +%make_install %files diff --git a/Makefile.am b/Makefile.am index b99300f1c..0164b67eb 100644 --- a/Makefile.am +++ b/Makefile.am @@ -69,7 +69,6 @@ if ! BUILD_DARWIN # Unfuck broken build system that, upon make install, incorrectly # regenerates files with DESTDIR instead of prefix. # Who the hell uses autotools in 2017? - if [ "x$(DESTDIR)" != "x" ] ; then sed -i "s:$(DESTDIR)::g" $(DESTDIR)$(libdir)/libCppBlockUtils.la ; fi if HAVE_GUI rsync -rupE --exclude="img/.DS_Store" img $(DESTDIR)$(prefix)/share/armory/ sed "s: /usr: $(prefix):g" < dpkgfiles/armory > $(DESTDIR)$(prefix)/bin/armory From 51523296cedc3cf0c5c860aaecf92535b690110c Mon Sep 17 00:00:00 2001 From: "Manuel Amador (Rudd-O)" Date: Mon, 8 Jan 2018 04:05:40 +0000 Subject: [PATCH 09/34] Fix makefile typo. --- Makefile.am | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Makefile.am b/Makefile.am index 0164b67eb..7457bc071 100644 --- a/Makefile.am +++ b/Makefile.am @@ -74,7 +74,7 @@ if HAVE_GUI sed "s: /usr: $(prefix):g" < dpkgfiles/armory > $(DESTDIR)$(prefix)/bin/armory chmod +x $(DESTDIR)$(prefix)/bin/armory mkdir -p $(DESTDIR)$(datadir)/applications - for f in armory.desktop armoryoffline.desktop armorytestnet.desktop ; do sed "s:/usr/local/bin:$(bindir):g" < dpkgfiles/$f > $(DESTDIR)$(datadir)/applications/$f ; chmod 0644 $(DESTDIR)$(datadir)/applications/$f ; done + for f in armory.desktop armoryoffline.desktop armorytestnet.desktop ; do sed "s:/usr/local/bin:$(bindir):g" < dpkgfiles/$$f > $(DESTDIR)$(datadir)/applications/$$f ; chmod 0644 $(DESTDIR)$(datadir)/applications/$$f ; done endif endif From 53b5164ef4b1c954c86f574a704cc9c678a104b9 Mon Sep 17 00:00:00 2001 From: "Manuel Amador (Rudd-O)" Date: Mon, 8 Jan 2018 04:12:47 +0000 Subject: [PATCH 10/34] Use libdir. --- BitcoinArmory.spec.in | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/BitcoinArmory.spec.in b/BitcoinArmory.spec.in index e0bfc921a..65cb35069 100644 --- a/BitcoinArmory.spec.in +++ b/BitcoinArmory.spec.in @@ -35,6 +35,6 @@ export PATH=/usr/lib64/qt4/bin:/usr/lib/qt4/bin:"$PATH" %files %defattr(-, root, root) %{_datadir}/applications/*.desktop -%{_prefix}/lib/armory/* +%{_libdir}/armory/* %{_datadir}/armory/* %attr(0755, root, root) %{_bindir}/* From 2bdf249d05b6fbcc2c0c5a446f64494c2252d46c Mon Sep 17 00:00:00 2001 From: "Manuel Amador (Rudd-O)" Date: Mon, 8 Jan 2018 04:33:28 +0000 Subject: [PATCH 11/34] Fix files list. --- BitcoinArmory.spec.in | 5 ++++- Makefile.am | 1 + 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/BitcoinArmory.spec.in b/BitcoinArmory.spec.in index 65cb35069..a063b2ada 100644 --- a/BitcoinArmory.spec.in +++ b/BitcoinArmory.spec.in @@ -35,6 +35,9 @@ export PATH=/usr/lib64/qt4/bin:/usr/lib/qt4/bin:"$PATH" %files %defattr(-, root, root) %{_datadir}/applications/*.desktop -%{_libdir}/armory/* +%{_includedir}/*.h +%{_libdir}/libfcgi.* +%{_libdir}/libCppBlockUtils.* +%{_prefix}/lib/armory %{_datadir}/armory/* %attr(0755, root, root) %{_bindir}/* diff --git a/Makefile.am b/Makefile.am index 7457bc071..951a8061b 100644 --- a/Makefile.am +++ b/Makefile.am @@ -74,6 +74,7 @@ if HAVE_GUI sed "s: /usr: $(prefix):g" < dpkgfiles/armory > $(DESTDIR)$(prefix)/bin/armory chmod +x $(DESTDIR)$(prefix)/bin/armory mkdir -p $(DESTDIR)$(datadir)/applications + chmod 0755 $(DESTDIR)$(datadir)/applications for f in armory.desktop armoryoffline.desktop armorytestnet.desktop ; do sed "s:/usr/local/bin:$(bindir):g" < dpkgfiles/$$f > $(DESTDIR)$(datadir)/applications/$$f ; chmod 0644 $(DESTDIR)$(datadir)/applications/$$f ; done endif endif From 060b2f56ae40caf400a8fe83c649e1af86cfb517 Mon Sep 17 00:00:00 2001 From: "Manuel Amador (Rudd-O)" Date: Fri, 29 Jun 2018 00:39:37 +0000 Subject: [PATCH 12/34] Reduce diff compared to upstream. --- cppForSwig/Makefile.am | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/cppForSwig/Makefile.am b/cppForSwig/Makefile.am index 627166416..b24bd464f 100644 --- a/cppForSwig/Makefile.am +++ b/cppForSwig/Makefile.am @@ -104,10 +104,10 @@ libCppBlockUtils_la_LDFLAGS += -Wl,-rpath,@executable_path/ -Wl,-rpath,@loader_p endif #custom rules -CppBlockUtils_wrap.h: CppBlockUtils.i +CppBlockUtils_wrap.cxx: CppBlockUtils.i swig $(SWIG_FLAGS) CppBlockUtils.i -CppBlockUtils_wrap.cxx: CppBlockUtils.i +CppBlockUtils_wrap.h: CppBlockUtils.i swig $(SWIG_FLAGS) CppBlockUtils.i clean-local: From 89a30fbc930d1868e60e4a5990445bb45dd09997 Mon Sep 17 00:00:00 2001 From: "Manuel Amador (Rudd-O)" Date: Fri, 29 Jun 2018 00:56:46 +0000 Subject: [PATCH 13/34] lrelease in Fedora is lrelease-qt4 --- BitcoinArmory.spec.in | 2 +- Makefile.am | 2 +- configure.ac | 7 ++++--- 3 files changed, 6 insertions(+), 5 deletions(-) diff --git a/BitcoinArmory.spec.in b/BitcoinArmory.spec.in index a063b2ada..f27162ce2 100644 --- a/BitcoinArmory.spec.in +++ b/BitcoinArmory.spec.in @@ -11,7 +11,7 @@ Group: Applications/Financial License: MIT Source0: bitcoinarmory-%{version}.tar.gz -BuildRequires: python2-twisted, python2-psutil, swig, python2-devel, gcc-c++, PyQt4-devel, rsync +BuildRequires: python2-twisted, python2-psutil, swig, python2-devel, gcc-c++, PyQt4-devel, qt-devel, rsync Requires: PyQt4, python-twisted, python-psutil %description This is a local full node implementation of an advanced Bitcoin wallet. diff --git a/Makefile.am b/Makefile.am index 951a8061b..c16e55e80 100644 --- a/Makefile.am +++ b/Makefile.am @@ -11,7 +11,7 @@ ACLOCAL_AMFLAGS = -I m4 lrelease: if HAVE_GUI - lrelease lang/*.ts + $(HAVE_LRELEASE) lang/*.ts endif qrc_img_resources.py: imgList.xml diff --git a/configure.ac b/configure.ac index aa7fd58b0..6f82ab79e 100644 --- a/configure.ac +++ b/configure.ac @@ -83,9 +83,10 @@ AC_CHECK_PROG([HAVE_PYRCC4], [pyrcc4], [yes], [no]) AS_IF([test $HAVE_PYRCC4 == yes], [], [AC_MSG_ERROR([missing pyrcc4 in path, make sure pyqt4-dev-tools is installed])]) -AC_CHECK_PROG([HAVE_LRELEASE], [lrelease], [yes], [no]) -AS_IF([test $HAVE_LRELEASE == yes], [], - [AC_MSG_ERROR([missing lrelease in path, make sure qt4-linguist-tools is installed])]) +AC_CHECK_PROGS([HAVE_LRELEASE], [lrelease lrelease-qt4], [no]) +AS_IF([test $HAVE_LRELEASE == no], + [AC_MSG_ERROR([missing lrelease in path, make sure qt4-linguist-tools is installed])], + []) fi From dad884c00684db06baf128b1a597d3f8191c6a20 Mon Sep 17 00:00:00 2001 From: "Manuel Amador (Rudd-O)" Date: Fri, 29 Jun 2018 02:48:19 +0000 Subject: [PATCH 14/34] Test commit. --- cppForSwig/Makefile.am | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/cppForSwig/Makefile.am b/cppForSwig/Makefile.am index b24bd464f..ac4d79b5c 100644 --- a/cppForSwig/Makefile.am +++ b/cppForSwig/Makefile.am @@ -37,7 +37,7 @@ INCLUDE_FILES = UniversalTimer.h BinaryData.h lmdb_wrapper.h \ make_unique.h TxOutScrRef.h bdmenums.h DbHeader.h SocketIncludes.h \ PartialMerkle.h util.h WalletManager.h SwigClient.h Wallets.h \ CoinSelection.h LedgerEntryData.h ThreadSafeClasses.h \ - Win_TranslatePath.h ScriptRecipient.h CppBlockUtils_wrap.h + Win_TranslatePath.h ScriptRecipient.h DB_SOURCE_FILES = UniversalTimer.cpp BinaryData.cpp lmdb_wrapper.cpp \ BtcUtils.cpp DBUtils.cpp BlockObj.cpp BlockUtils.cpp EncryptionUtils.cpp \ @@ -105,10 +105,9 @@ endif #custom rules CppBlockUtils_wrap.cxx: CppBlockUtils.i - swig $(SWIG_FLAGS) CppBlockUtils.i + swig $(SWIG_FLAGS) CppBlockUtils.i -CppBlockUtils_wrap.h: CppBlockUtils.i - swig $(SWIG_FLAGS) CppBlockUtils.i +.PHONY: CppBlockUtils_wrap.cxx clean-local: rm -f CppBlockUtils.py From 34e48999537b01d7b99490ccd53e96ffb1867b7b Mon Sep 17 00:00:00 2001 From: "Manuel Amador (Rudd-O)" Date: Thu, 14 Mar 2019 02:34:48 +0000 Subject: [PATCH 15/34] Jenkinsfile. --- Jenkinsfile | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 Jenkinsfile diff --git a/Jenkinsfile b/Jenkinsfile new file mode 100644 index 000000000..015490db4 --- /dev/null +++ b/Jenkinsfile @@ -0,0 +1,5 @@ +// https://github.com/Rudd-O/shared-jenkins-libraries +@Library('shared-jenkins-libraries@master') _ + + +genericFedoraRPMPipeline() From 77f614fe67946e1da83bc470d8d2b4d67e421a7b Mon Sep 17 00:00:00 2001 From: "Manuel Amador (Rudd-O)" Date: Thu, 14 Mar 2019 02:42:07 +0000 Subject: [PATCH 16/34] force generic make. --- generic.yml | 1 + 1 file changed, 1 insertion(+) create mode 100644 generic.yml diff --git a/generic.yml b/generic.yml new file mode 100644 index 000000000..9e23161b0 --- /dev/null +++ b/generic.yml @@ -0,0 +1 @@ +command: make srpm From abbafaccc4418462ec634486c8cc96b7c7a585c5 Mon Sep 17 00:00:00 2001 From: "Manuel Amador (Rudd-O)" Date: Thu, 14 Mar 2019 02:42:37 +0000 Subject: [PATCH 17/34] Fix. --- generic.yml => generic.yaml | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename generic.yml => generic.yaml (100%) diff --git a/generic.yml b/generic.yaml similarity index 100% rename from generic.yml rename to generic.yaml From e5f784c1d51f28038c91f226f30909fefd65dc73 Mon Sep 17 00:00:00 2001 From: "Manuel Amador (Rudd-O)" Date: Thu, 14 Mar 2019 02:47:24 +0000 Subject: [PATCH 18/34] Force srpm step. --- Jenkinsfile | 8 +++++++- generic.yaml | 1 - 2 files changed, 7 insertions(+), 2 deletions(-) delete mode 100644 generic.yaml diff --git a/Jenkinsfile b/Jenkinsfile index 015490db4..0201f5e5d 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -2,4 +2,10 @@ @Library('shared-jenkins-libraries@master') _ -genericFedoraRPMPipeline() +def makesrpm() { + return { + sh 'make srpm' + } +} + +genericFedoraRPMPipeline(srpm_step=makesrpm()) diff --git a/generic.yaml b/generic.yaml deleted file mode 100644 index 9e23161b0..000000000 --- a/generic.yaml +++ /dev/null @@ -1 +0,0 @@ -command: make srpm From 471a2ba7b863abe21bea675c9783721194b78803 Mon Sep 17 00:00:00 2001 From: "Manuel Amador (Rudd-O)" Date: Thu, 14 Mar 2019 02:49:10 +0000 Subject: [PATCH 19/34] Explicit checkout step null. --- Jenkinsfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Jenkinsfile b/Jenkinsfile index 0201f5e5d..917317682 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -8,4 +8,4 @@ def makesrpm() { } } -genericFedoraRPMPipeline(srpm_step=makesrpm()) +genericFedoraRPMPipeline(checkout_step = null, srpm_step = makesrpm()) From 10cc36afab7d63f667b50d433c740067f7c9c5b6 Mon Sep 17 00:00:00 2001 From: "Manuel Amador (Rudd-O)" Date: Thu, 14 Mar 2019 02:50:42 +0000 Subject: [PATCH 20/34] Try fix. --- Jenkinsfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Jenkinsfile b/Jenkinsfile index 917317682..c67a8b810 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -8,4 +8,4 @@ def makesrpm() { } } -genericFedoraRPMPipeline(checkout_step = null, srpm_step = makesrpm()) +genericFedoraRPMPipeline(null, makesrpm) From 612a99b02ad7eafed775a776a20819cb479788eb Mon Sep 17 00:00:00 2001 From: "Manuel Amador (Rudd-O)" Date: Thu, 14 Mar 2019 02:51:24 +0000 Subject: [PATCH 21/34] Try fix 2. --- Jenkinsfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Jenkinsfile b/Jenkinsfile index c67a8b810..503e27a40 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -2,7 +2,7 @@ @Library('shared-jenkins-libraries@master') _ -def makesrpm() { +def makesrpm = { return { sh 'make srpm' } From 8a59cc650347f2ac0e5a07e44ffb3bb4b573e6d0 Mon Sep 17 00:00:00 2001 From: "Manuel Amador (Rudd-O)" Date: Thu, 14 Mar 2019 02:52:25 +0000 Subject: [PATCH 22/34] Try fix 2. --- Jenkinsfile | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/Jenkinsfile b/Jenkinsfile index 503e27a40..978447fa6 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -2,10 +2,6 @@ @Library('shared-jenkins-libraries@master') _ -def makesrpm = { - return { - sh 'make srpm' - } -} - -genericFedoraRPMPipeline(null, makesrpm) +genericFedoraRPMPipeline(null, { + sh 'make srpm' +}) From 62510c4277ee29175394fa39a5a89f393c8497a5 Mon Sep 17 00:00:00 2001 From: "Manuel Amador (Rudd-O)" Date: Thu, 14 Mar 2019 02:53:12 +0000 Subject: [PATCH 23/34] Try fix 4. --- Jenkinsfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Jenkinsfile b/Jenkinsfile index 978447fa6..275b9a2af 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -3,5 +3,5 @@ genericFedoraRPMPipeline(null, { - sh 'make srpm' + sh 'cd src && make srpm' }) From 7d99d6fb361f12567289828b3d24a905caf1ed64 Mon Sep 17 00:00:00 2001 From: "Manuel Amador (Rudd-O)" Date: Thu, 14 Mar 2019 02:54:04 +0000 Subject: [PATCH 24/34] Fix.o --- Jenkinsfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Jenkinsfile b/Jenkinsfile index 275b9a2af..add64d9aa 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -3,5 +3,5 @@ genericFedoraRPMPipeline(null, { - sh 'cd src && make srpm' + sh 'cd src && ls -la && pwd && make srpm' }) From d59c2c26f2c127290bfef2363fe5c4445d4082a9 Mon Sep 17 00:00:00 2001 From: "Manuel Amador (Rudd-O)" Date: Thu, 14 Mar 2019 02:55:30 +0000 Subject: [PATCH 25/34] autogen. --- Jenkinsfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Jenkinsfile b/Jenkinsfile index add64d9aa..700d1b79a 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -3,5 +3,5 @@ genericFedoraRPMPipeline(null, { - sh 'cd src && ls -la && pwd && make srpm' + sh 'cd src ./autogen.sh && ./configure --prefix=/usr && make srpm' }) From fde300ca54c6feb8b78d9ff87e51c5f60b6adb47 Mon Sep 17 00:00:00 2001 From: "Manuel Amador (Rudd-O)" Date: Thu, 14 Mar 2019 02:56:10 +0000 Subject: [PATCH 26/34] autogen 2. --- Jenkinsfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Jenkinsfile b/Jenkinsfile index 700d1b79a..3f5f5eb63 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -3,5 +3,5 @@ genericFedoraRPMPipeline(null, { - sh 'cd src ./autogen.sh && ./configure --prefix=/usr && make srpm' + sh 'cd src && ./autogen.sh && ./configure --prefix=/usr && make srpm' }) From 4318970793cc70891ebc7536cf3267de1daeff24 Mon Sep 17 00:00:00 2001 From: "Manuel Amador (Rudd-O)" Date: Thu, 14 Mar 2019 03:38:17 +0000 Subject: [PATCH 27/34] Hardcode python version so configure does not fail in Fedora 29. --- Jenkinsfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Jenkinsfile b/Jenkinsfile index 3f5f5eb63..57fb01aa5 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -3,5 +3,5 @@ genericFedoraRPMPipeline(null, { - sh 'cd src && ./autogen.sh && ./configure --prefix=/usr && make srpm' + sh 'cd src && ./autogen.sh && PYTHON_VERSION=2.7 ./configure --prefix=/usr && make srpm' }) From 9d61900903dd488244ab3cc9f8a81677371cc2d6 Mon Sep 17 00:00:00 2001 From: "Manuel Amador (Rudd-O)" Date: Thu, 14 Mar 2019 03:41:26 +0000 Subject: [PATCH 28/34] Python version configure. --- BitcoinArmory.spec.in | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/BitcoinArmory.spec.in b/BitcoinArmory.spec.in index f27162ce2..ed5a0fce6 100644 --- a/BitcoinArmory.spec.in +++ b/BitcoinArmory.spec.in @@ -22,7 +22,7 @@ This is a local full node implementation of an advanced Bitcoin wallet. %build export PATH=/usr/lib64/qt4/bin:/usr/lib/qt4/bin:"$PATH" -%configure +PYTHON_VERSION=2.7 %configure %make_build From 2e773d770acd1ab279102f079995391daa18c98e Mon Sep 17 00:00:00 2001 From: "Manuel Amador (Rudd-O)" Date: Thu, 14 Mar 2019 03:47:47 +0000 Subject: [PATCH 29/34] Override python interpreter in specfile. --- BitcoinArmory.spec.in | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/BitcoinArmory.spec.in b/BitcoinArmory.spec.in index ed5a0fce6..6d2850ca5 100644 --- a/BitcoinArmory.spec.in +++ b/BitcoinArmory.spec.in @@ -22,7 +22,7 @@ This is a local full node implementation of an advanced Bitcoin wallet. %build export PATH=/usr/lib64/qt4/bin:/usr/lib/qt4/bin:"$PATH" -PYTHON_VERSION=2.7 %configure +PYTHON=%{_bindir}/python2 %configure %make_build From b3fca28b2cf0183bc8cfd815308e885d29899ba7 Mon Sep 17 00:00:00 2001 From: "Manuel Amador (Rudd-O)" Date: Thu, 14 Mar 2019 03:49:47 +0000 Subject: [PATCH 30/34] Override python interpreter in Jenkinsfile. --- Jenkinsfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Jenkinsfile b/Jenkinsfile index 57fb01aa5..aaabdf2b9 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -3,5 +3,5 @@ genericFedoraRPMPipeline(null, { - sh 'cd src && ./autogen.sh && PYTHON_VERSION=2.7 ./configure --prefix=/usr && make srpm' + sh 'cd src && ./autogen.sh && PYTHON=/usr/bin/python2 ./configure --prefix=/usr && make srpm' }) From 9532866ec2665826adbf25ab9c37fccb7e00c26f Mon Sep 17 00:00:00 2001 From: "Manuel Amador (Rudd-O)" Date: Thu, 14 Mar 2019 03:52:22 +0000 Subject: [PATCH 31/34] Fix way in which python is injected into RPM build. --- BitcoinArmory.spec.in | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/BitcoinArmory.spec.in b/BitcoinArmory.spec.in index 6d2850ca5..6e451c233 100644 --- a/BitcoinArmory.spec.in +++ b/BitcoinArmory.spec.in @@ -22,13 +22,15 @@ This is a local full node implementation of an advanced Bitcoin wallet. %build export PATH=/usr/lib64/qt4/bin:/usr/lib/qt4/bin:"$PATH" -PYTHON=%{_bindir}/python2 %configure +export PYTHON=%{_bindir}/python2 +%configure %make_build %install mkdir -p "%{buildroot}"/usr/share/applications export PATH=/usr/lib64/qt4/bin:/usr/lib/qt4/bin:"$PATH" +export PYTHON=%{_bindir}/python2 %make_install From 485f8eb815316b8a215cd4824dd9e532766973f5 Mon Sep 17 00:00:00 2001 From: "Manuel Amador (Rudd-O)" Date: Fri, 15 Mar 2019 00:00:04 +0000 Subject: [PATCH 32/34] srpm_deps --- Jenkinsfile | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/Jenkinsfile b/Jenkinsfile index aaabdf2b9..653b991f2 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -2,6 +2,10 @@ @Library('shared-jenkins-libraries@master') _ -genericFedoraRPMPipeline(null, { - sh 'cd src && ./autogen.sh && PYTHON=/usr/bin/python2 ./configure --prefix=/usr && make srpm' -}) +genericFedoraRPMPipeline( + null, + { + sh 'cd src && ./autogen.sh && PYTHON=/usr/bin/python2 ./configure --prefix=/usr && make srpm' + }, + ['autoconf', 'automake', 'libtool', 'gcc-c++', 'swig', 'python2-psutil', 'PyQt4-devel'], +) From afce87982017012d742b121ac2e664e42e0bcca7 Mon Sep 17 00:00:00 2001 From: "Manuel Amador (Rudd-O)" Date: Wed, 12 Jun 2019 21:39:48 +0000 Subject: [PATCH 33/34] Ensure the Segwit addresses are included in the Makefile so that target dist can distribute them. --- cppForSwig/Makefile.am | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/cppForSwig/Makefile.am b/cppForSwig/Makefile.am index 1a8f76aed..060d22355 100644 --- a/cppForSwig/Makefile.am +++ b/cppForSwig/Makefile.am @@ -37,7 +37,8 @@ INCLUDE_FILES = UniversalTimer.h BinaryData.h lmdb_wrapper.h \ make_unique.h TxOutScrRef.h bdmenums.h DbHeader.h SocketIncludes.h \ PartialMerkle.h util.h WalletManager.h SwigClient.h Wallets.h \ CoinSelection.h LedgerEntryData.h ThreadSafeClasses.h \ - Win_TranslatePath.h ScriptRecipient.h + Win_TranslatePath.h ScriptRecipient.h \ + bech32/ref/c++/bech32.h bech32/ref/c++/segwit_addr.h DB_SOURCE_FILES = UniversalTimer.cpp BinaryData.cpp lmdb_wrapper.cpp \ BtcUtils.cpp DBUtils.cpp BlockObj.cpp BlockUtils.cpp EncryptionUtils.cpp \ From 728bdb6aa5650ed5974128f60f9c4928f6d32dae Mon Sep 17 00:00:00 2001 From: "Manuel Amador (Rudd-O)" Date: Wed, 12 Jun 2019 22:10:11 +0000 Subject: [PATCH 34/34] RPM builds require an explicit shebang. --- ArmoryQt.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ArmoryQt.py b/ArmoryQt.py index 5a8333441..d5fd89629 100755 --- a/ArmoryQt.py +++ b/ArmoryQt.py @@ -1,4 +1,4 @@ -#! /usr/bin/python +#!/usr/bin/python2 # -*- coding: UTF-8 -*- ############################################################################## # #