From: CryptoManiac Date: Thu, 1 Oct 2015 19:23:43 +0000 (-0700) Subject: QRCode support is always enabled now; X-Git-Tag: nvc-v0.5.5~74 X-Git-Url: https://git.novaco.in/?p=novacoin.git;a=commitdiff_plain;h=acd906f9bbf55e42e4facfc8a7b2793d1f071efe QRCode support is always enabled now; Scrypt code is moved to crypto/scrypt subdirectory. --- diff --git a/MSVC/libcommon/libcommon.vcxproj b/MSVC/libcommon/libcommon.vcxproj index 1ef2499..89e4c13 100644 --- a/MSVC/libcommon/libcommon.vcxproj +++ b/MSVC/libcommon/libcommon.vcxproj @@ -50,7 +50,7 @@ - + ..\..\src;%(AdditionalIncludeDirectories) ..\..\src;%(AdditionalIncludeDirectories) ..\..\src;%(AdditionalIncludeDirectories) diff --git a/MSVC/libcommon/libcommon.vcxproj.filters b/MSVC/libcommon/libcommon.vcxproj.filters index 9ae44e5..99ecde8 100644 --- a/MSVC/libcommon/libcommon.vcxproj.filters +++ b/MSVC/libcommon/libcommon.vcxproj.filters @@ -98,7 +98,7 @@ Source Files - + Source Files diff --git a/MSVC/mynovacoinqt/mynovacoinqt.vcxproj b/MSVC/mynovacoinqt/mynovacoinqt.vcxproj index 12d5a9a..3220bdf 100644 --- a/MSVC/mynovacoinqt/mynovacoinqt.vcxproj +++ b/MSVC/mynovacoinqt/mynovacoinqt.vcxproj @@ -103,7 +103,7 @@ Sync $(IntDir) Disabled - USE_UPNP;USE_QRCODE;UNICODE;WIN32;QT_CORE_LIB;QT_GUI_LIB;QT_WIDGETS_LIB;QT_GUI;_SCL_SECURE_NO_WARNINGS;USE_LEVELDB;USE_IPV6=1;__STDC_LIMIT_MACROS;__STDC_FORMAT_MACROS;USE_SSE2;%(PreprocessorDefinitions) + USE_UPNP;UNICODE;WIN32;QT_CORE_LIB;QT_GUI_LIB;QT_WIDGETS_LIB;QT_GUI;_SCL_SECURE_NO_WARNINGS;USE_LEVELDB;USE_IPV6=1;__STDC_LIMIT_MACROS;__STDC_FORMAT_MACROS;USE_SSE2;%(PreprocessorDefinitions) false MultiThreadedDebug true @@ -157,7 +157,7 @@ C:\MyProjects\Deps\qt-everywhere-opensource-src-5.3.2\qtbase\bin\moc.exe C:\MyPr Sync $(IntDir) Disabled - USE_UPNP;USE_QRCODE;UNICODE;WIN32;_WIN32;QT_CORE_LIB;QT_GUI_LIB;QT_WIDGETS_LIB;QT_GUI;_SCL_SECURE_NO_WARNINGS;USE_LEVELDB;USE_IPV6=1;__STDC_LIMIT_MACROS;__STDC_FORMAT_MACROS;USE_SSE2;%(PreprocessorDefinitions) + USE_UPNP;UNICODE;WIN32;_WIN32;QT_CORE_LIB;QT_GUI_LIB;QT_WIDGETS_LIB;QT_GUI;_SCL_SECURE_NO_WARNINGS;USE_LEVELDB;USE_IPV6=1;__STDC_LIMIT_MACROS;__STDC_FORMAT_MACROS;USE_SSE2;%(PreprocessorDefinitions) false MultiThreadedDebug true @@ -211,7 +211,7 @@ C:\MyProjects\Deps\qt-everywhere-opensource-src-5.3.2-64\qtbase\bin\moc.exe C:\M Sync $(IntDir) Full - USE_UPNP;USE_QRCODE;UNICODE;WIN32;QT_CORE_LIB;QT_GUI_LIB;QT_WIDGETS_LIB;QT_GUI;_SCL_SECURE_NO_WARNINGS;USE_LEVELDB;USE_IPV6=1;__STDC_LIMIT_MACROS;__STDC_FORMAT_MACROS;USE_SSE2;%(PreprocessorDefinitions) + USE_UPNP;UNICODE;WIN32;QT_CORE_LIB;QT_GUI_LIB;QT_WIDGETS_LIB;QT_GUI;_SCL_SECURE_NO_WARNINGS;USE_LEVELDB;USE_IPV6=1;__STDC_LIMIT_MACROS;__STDC_FORMAT_MACROS;USE_SSE2;%(PreprocessorDefinitions) false $(IntDir)vc$(PlatformToolsetVersion).pdb MultiThreaded @@ -269,7 +269,7 @@ C:\MyProjects\Deps\qt-everywhere-opensource-src-5.3.2\qtbase\bin\moc.exe C:\MyPr Sync $(IntDir) Full - USE_UPNP;USE_QRCODE;UNICODE;WIN32;QT_CORE_LIB;QT_GUI_LIB;QT_WIDGETS_LIB;QT_GUI;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;USE_LEVELDB;USE_IPV6=1;__STDC_LIMIT_MACROS;__STDC_FORMAT_MACROS;USE_SSE2;%(PreprocessorDefinitions) + USE_UPNP;UNICODE;WIN32;QT_CORE_LIB;QT_GUI_LIB;QT_WIDGETS_LIB;QT_GUI;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;USE_LEVELDB;USE_IPV6=1;__STDC_LIMIT_MACROS;__STDC_FORMAT_MACROS;USE_SSE2;%(PreprocessorDefinitions) false $(IntDir)vc$(PlatformToolsetVersion).pdb MultiThreaded diff --git a/contrib/debian/rules b/contrib/debian/rules index d737331..3ab9fe9 100755 --- a/contrib/debian/rules +++ b/contrib/debian/rules @@ -16,7 +16,7 @@ override_dh_auto_clean: cd src; $(MAKE) -f makefile.unix clean override_dh_auto_configure: - qmake novacoin-qt.pro USE_QRCODE=1 USE_ASM=1 USE_LEVELDB=1 + qmake novacoin-qt.pro USE_ASM=1 USE_LEVELDB=1 # Ensure wrapper is set executable binary-post-install/novacoind: diff --git a/contrib/gentoo/novacoin-0.5.0.ebuild b/contrib/gentoo/novacoin-0.5.0.ebuild index fe315b9..0330b37 100644 --- a/contrib/gentoo/novacoin-0.5.0.ebuild +++ b/contrib/gentoo/novacoin-0.5.0.ebuild @@ -76,7 +76,6 @@ src_configure() { OPTS+=("USE_UPNP=-") fi - use qrcode && OPTS+=("USE_QRCODE=1") use ipv6 || OPTS+=("USE_IPV6=-") OPTS+=("BDB_INCLUDE_PATH=$(db_includedir "${DB_VER}")") diff --git a/contrib/gitian-descriptors/gitian-win32.yml b/contrib/gitian-descriptors/gitian-win32.yml index 2bf3a7d..8e9e635 100644 --- a/contrib/gitian-descriptors/gitian-win32.yml +++ b/contrib/gitian-descriptors/gitian-win32.yml @@ -51,7 +51,7 @@ script: | export LD_PRELOAD=/usr/lib/faketime/libfaketime.so.1 export FAKETIME=$REFERENCE_DATETIME export TZ=UTC - $HOME/qt/src/bin/qmake -spec unsupported/win32-g++-cross MINIUPNPC_LIB_PATH=$HOME/build/miniupnpc MINIUPNPC_INCLUDE_PATH=$HOME/build/ BDB_LIB_PATH=$HOME/build/db-4.8.30.NC/build_unix BDB_INCLUDE_PATH=$HOME/build/db-4.8.30.NC/build_unix BOOST_LIB_PATH=$HOME/build/boost_1_47_0/stage/lib BOOST_INCLUDE_PATH=$HOME/build/boost_1_47_0 BOOST_LIB_SUFFIX=-mt-s BOOST_THREAD_LIB_SUFFIX=_win32-mt-s OPENSSL_LIB_PATH=$HOME/build/openssl-1.0.1b OPENSSL_INCLUDE_PATH=$HOME/build/openssl-1.0.1b/include QRENCODE_LIB_PATH=$HOME/build/qrencode-3.2.0/.libs QRENCODE_INCLUDE_PATH=$HOME/build/qrencode-3.2.0 USE_QRCODE=1 INCLUDEPATH=$HOME/build DEFINES=BOOST_THREAD_USE_LIB BITCOIN_NEED_QT_PLUGINS=1 QMAKE_LRELEASE=lrelease QMAKE_CXXFLAGS=-frandom-seed=ppcoin QMAKE_LFLAGS=-frandom-seed=ppcoin USE_BUILD_INFO=1 + $HOME/qt/src/bin/qmake -spec unsupported/win32-g++-cross MINIUPNPC_LIB_PATH=$HOME/build/miniupnpc MINIUPNPC_INCLUDE_PATH=$HOME/build/ BDB_LIB_PATH=$HOME/build/db-4.8.30.NC/build_unix BDB_INCLUDE_PATH=$HOME/build/db-4.8.30.NC/build_unix BOOST_LIB_PATH=$HOME/build/boost_1_47_0/stage/lib BOOST_INCLUDE_PATH=$HOME/build/boost_1_47_0 BOOST_LIB_SUFFIX=-mt-s BOOST_THREAD_LIB_SUFFIX=_win32-mt-s OPENSSL_LIB_PATH=$HOME/build/openssl-1.0.1b OPENSSL_INCLUDE_PATH=$HOME/build/openssl-1.0.1b/include QRENCODE_LIB_PATH=$HOME/build/qrencode-3.2.0/.libs QRENCODE_INCLUDE_PATH=$HOME/build/qrencode-3.2.0 INCLUDEPATH=$HOME/build DEFINES=BOOST_THREAD_USE_LIB BITCOIN_NEED_QT_PLUGINS=1 QMAKE_LRELEASE=lrelease QMAKE_CXXFLAGS=-frandom-seed=ppcoin QMAKE_LFLAGS=-frandom-seed=ppcoin USE_BUILD_INFO=1 make $MAKEOPTS cp release/ppcoin-qt.exe $OUTDIR/ # diff --git a/contrib/gitian-descriptors/gitian.yml b/contrib/gitian-descriptors/gitian.yml index 340de5e..6693eef 100644 --- a/contrib/gitian-descriptors/gitian.yml +++ b/contrib/gitian-descriptors/gitian.yml @@ -51,6 +51,6 @@ script: | install -s ppcoind $OUTDIR/bin/$GBUILD_BITS # cd .. - qmake INCLUDEPATH="$INSTDIR/include" LIBS="-L$INSTDIR/lib" RELEASE=1 USE_QRCODE=1 + qmake INCLUDEPATH="$INSTDIR/include" LIBS="-L$INSTDIR/lib" RELEASE=1 make $MAKEOPTS install ppcoin-qt $OUTDIR/bin/$GBUILD_BITS diff --git a/doc/build-unix.txt b/doc/build-unix.txt index 5e8d7c6..a7bfb80 100644 --- a/doc/build-unix.txt +++ b/doc/build-unix.txt @@ -41,11 +41,9 @@ turned off by default. Set USE_UPNP to a different value to control this: USE_UPNP=0 (the default) UPnP support turned off by default at runtime USE_UPNP=1 UPnP support turned on by default at runtime -libqrencode may be used for QRCode image generation. It can be downloaded +libqrencode is used for QRCode image generation. It can be downloaded from http://fukuchi.org/works/qrencode/index.html.en, or installed via -your package manager. Set USE_QRCODE to control this: - USE_QRCODE=0 (the default) No QRCode support - libqrcode not required - USE_QRCODE=1 QRCode support enabled +your package manager. Licenses of statically linked libraries: Berkeley DB New BSD license with additional requirement that linked diff --git a/doc/building novacoin-qt for android under Windows.txt b/doc/building novacoin-qt for android under Windows.txt index d4415b9..5af4af4 100644 --- a/doc/building novacoin-qt for android under Windows.txt +++ b/doc/building novacoin-qt for android under Windows.txt @@ -160,7 +160,6 @@ TARGET_OS=OS_ANDROID_CROSSCOMPILE make libleveldb.a libmemenv.a вставьте USE_UPNP=- -USE_QRCODE=0 USE_IPV6=0 USE_LEVELDB=1 USE_ASM=1 diff --git a/doc/building novacoind and novacoinqt under Linux.txt b/doc/building novacoind and novacoinqt under Linux.txt index 71f4192..fedec67 100644 --- a/doc/building novacoind and novacoinqt under Linux.txt +++ b/doc/building novacoind and novacoinqt under Linux.txt @@ -27,7 +27,7 @@ openSUSE(проверено на версии 13.2): и наконец, скомпилировать свой клиент cd novacoin - qmake USE_UPNP=1 USE_QRCODE=1 USE_O3=1 USE_ASM=1 (если хотите LevelDB, то USE_LEVELDB=1) + qmake USE_UPNP=1 USE_O3=1 USE_ASM=1 (если хотите LevelDB, то USE_LEVELDB=1) make cd src make -f makefile.unix USE_UPNP=1 USE_O3=1 USE_ASM=1 (если хотите LevelDB, то USE_LEVELDB=1) diff --git a/doc/building novacoind and novacoinqt under Windows with MinGW.txt b/doc/building novacoind and novacoinqt under Windows with MinGW.txt index 0a6cce0..df61439 100644 --- a/doc/building novacoind and novacoinqt under Windows with MinGW.txt +++ b/doc/building novacoind and novacoinqt under Windows with MinGW.txt @@ -284,7 +284,7 @@ Qt5 + транзакционный индекс BDB set PATH=%PATH%;C:\Qt\5.4.0\bin cd C:\MyProjects\novacoin-master -qmake "USE_QRCODE=1" "USE_UPNP=1" "USE_IPV6=1" "USE_ASM=1" novacoin-qt.pro +qmake "USE_UPNP=1" "USE_IPV6=1" "USE_ASM=1" novacoin-qt.pro mingw32-make -f Makefile.Release @@ -292,21 +292,21 @@ Qt5 + транзакционный индекс LevelDB set PATH=%PATH%;C:\Qt\5.4.0\bin cd C:\MyProjects\novacoin-master -qmake "USE_QRCODE=1" "USE_UPNP=1" "USE_IPV6=1" "USE_LEVELDB=1" "USE_ASM=1" novacoin-qt.pro +qmake "USE_UPNP=1" "USE_IPV6=1" "USE_LEVELDB=1" "USE_ASM=1" novacoin-qt.pro mingw32-make -f Makefile.Release Qt4 + транзакционный индекс BDB set PATH=%PATH%;C:\Qt\4.8.6\bin cd C:\MyProjects\novacoin-master -qmake "USE_QRCODE=1" "USE_UPNP=1" "USE_IPV6=1" "USE_ASM=1" novacoin-qt.pro +qmake "USE_UPNP=1" "USE_IPV6=1" "USE_ASM=1" novacoin-qt.pro mingw32-make -f Makefile.Release Qt4 + транзакционный индекс LevelDB set PATH=%PATH%;C:\Qt\4.8.6\bin cd C:\MyProjects\novacoin-master -qmake "USE_QRCODE=1" "USE_UPNP=1" "USE_IPV6=1" "USE_LEVELDB=1" "USE_ASM=1" novacoin-qt.pro +qmake "USE_UPNP=1" "USE_IPV6=1" "USE_LEVELDB=1" "USE_ASM=1" novacoin-qt.pro mingw32-make -f Makefile.Release @@ -481,7 +481,7 @@ Qt5 + транзакционный индекс BDB set PATH=%PATH%;C:\Qt\5.4.0-x64\bin cd C:\MyProjects\novacoin-master -qmake "USE_QRCODE=1" "USE_UPNP=1" "USE_IPV6=1" "USE_ASM=1" novacoin-qt64.pro +qmake "USE_UPNP=1" "USE_IPV6=1" "USE_ASM=1" novacoin-qt64.pro mingw32-make -f Makefile.Release @@ -489,21 +489,21 @@ Qt5 + транзакционный индекс LevelDB set PATH=%PATH%;C:\Qt\5.4.0-x64\bin cd C:\MyProjects\novacoin-master -qmake "USE_QRCODE=1" "USE_UPNP=1" "USE_IPV6=1" "USE_LEVELDB=1" "USE_ASM=1" novacoin-qt64.pro +qmake "USE_UPNP=1" "USE_IPV6=1" "USE_LEVELDB=1" "USE_ASM=1" novacoin-qt64.pro mingw32-make -f Makefile.Release Qt4 + транзакционный индекс BDB set PATH=%PATH%;C:\Qt\4.8.6-x64\bin cd C:\MyProjects\novacoin-master -qmake "USE_QRCODE=1" "USE_UPNP=1" "USE_IPV6=1" "USE_ASM=1" novacoin-qt64.pro +qmake "USE_UPNP=1" "USE_IPV6=1" "USE_ASM=1" novacoin-qt64.pro mingw32-make -f Makefile.Release Qt4 + транзакционный индекс LevelDB set PATH=%PATH%;C:\Qt\4.8.6-x64\bin cd C:\MyProjects\novacoin-master -qmake "USE_QRCODE=1" "USE_UPNP=1" "USE_IPV6=1" "USE_LEVELDB=1" "USE_ASM=1" novacoin-qt64.pro +qmake "USE_UPNP=1" "USE_IPV6=1" "USE_LEVELDB=1" "USE_ASM=1" novacoin-qt64.pro mingw32-make -f Makefile.Release Если всё сделано правильно, то файл novacoin-qt.exe будет находится в папке C:\MyProjects\novacoin-master\release diff --git a/doc/crosscompiling_building Windows binary under Unix.txt b/doc/crosscompiling_building Windows binary under Unix.txt index 70605ec..7a48736 100644 --- a/doc/crosscompiling_building Windows binary under Unix.txt +++ b/doc/crosscompiling_building Windows binary under Unix.txt @@ -344,28 +344,28 @@ Qt4 + транзакционный индекс LevelDB export PATH=/home/<ваше имя>/mxe/usr/bin:$PATH cd /home/<ваше имя>/novacoin -i686-w64-mingw32.static-qmake-qt4 "USE_QRCODE=1" "USE_UPNP=1" "USE_IPV6=1" "USE_LEVELDB=1" "USE_ASM=1" novacoin-qt.pro +i686-w64-mingw32.static-qmake-qt4 "USE_UPNP=1" "USE_IPV6=1" "USE_LEVELDB=1" "USE_ASM=1" novacoin-qt.pro make -j n -f Makefile.Release (вместо n количество ядер вашего процессора, которые вы хотите выделить под сборку) Qt4 + транзакционный индекс BDB export PATH=/home/<ваше имя>/mxe/usr/bin:$PATH cd /home/<ваше имя>/novacoin -i686-w64-mingw32.static-qmake-qt4 "USE_QRCODE=1" "USE_UPNP=1" "USE_IPV6=1" "USE_ASM=1" novacoin-qt.pro +i686-w64-mingw32.static-qmake-qt4 "USE_UPNP=1" "USE_IPV6=1" "USE_ASM=1" novacoin-qt.pro make -j n -f Makefile.Release (вместо n количество ядер вашего процессора, которые вы хотите выделить под сборку) Qt5 + транзакционный индекс LevelDB export PATH=/home/<ваше имя>/mxe/usr/bin:$PATH cd /home/<ваше имя>/novacoin -i686-w64-mingw32.static-qmake-qt5 "USE_QRCODE=1" "USE_UPNP=1" "USE_IPV6=1" "USE_LEVELDB=1" "USE_ASM=1" novacoin-qt.pro +i686-w64-mingw32.static-qmake-qt5 "USE_UPNP=1" "USE_IPV6=1" "USE_LEVELDB=1" "USE_ASM=1" novacoin-qt.pro make -j n -f Makefile.Release (вместо n количество ядер вашего процессора, которые вы хотите выделить под сборку) Qt5 + транзакционный индекс BDB export PATH=/home/<ваше имя>/mxe/usr/bin:$PATH cd /home/<ваше имя>/novacoin -i686-w64-mingw32.static-qmake-qt5 "USE_QRCODE=1" "USE_UPNP=1" "USE_IPV6=1" "USE_ASM=1" novacoin-qt.pro +i686-w64-mingw32.static-qmake-qt5 "USE_UPNP=1" "USE_IPV6=1" "USE_ASM=1" novacoin-qt.pro make -j n -f Makefile.Release (вместо n количество ядер вашего процессора, которые вы хотите выделить под сборку) diff --git a/doc/readme-qt.rst b/doc/readme-qt.rst index e7abfa9..73be0c8 100644 --- a/doc/readme-qt.rst +++ b/doc/readme-qt.rst @@ -155,16 +155,8 @@ FreeDesktop notification interface through DBUS using the following qmake option Generation of QR codes ----------------------- -libqrencode may be used to generate QRCode images for payment requests. -It can be downloaded from http://fukuchi.org/works/qrencode/index.html.en, or installed via your package manager. Pass the USE_QRCODE -flag to qmake to control this: - -+--------------+--------------------------------------------------------------------------+ -| USE_QRCODE=0 | (the default) No QRCode support - libarcode not required | -+--------------+--------------------------------------------------------------------------+ -| USE_QRCODE=1 | QRCode support enabled | -+--------------+--------------------------------------------------------------------------+ - +libqrencode is used to generate QRCode images for payment requests. +It can be downloaded from http://fukuchi.org/works/qrencode/index.html.en, or installed via your package manager. Berkely DB version warning ========================== diff --git a/novacoin-qt.pro b/novacoin-qt.pro index b545889..36fdcff 100644 --- a/novacoin-qt.pro +++ b/novacoin-qt.pro @@ -55,14 +55,6 @@ QMAKE_LFLAGS *= -fstack-protector-all --param ssp-buffer-size=1 win32:QMAKE_LFLAGS *= -Wl,--dynamicbase -Wl,--nxcompat win32:QMAKE_LFLAGS += -static-libgcc -static-libstdc++ -# use: qmake "USE_QRCODE=1" -# libqrencode (http://fukuchi.org/works/qrencode/index.en.html) must be installed for support -contains(USE_QRCODE, 1) { - message(Building with QRCode support) - DEFINES += USE_QRCODE - LIBS += -lqrencode -} - # use: qmake "USE_UPNP=1" ( enabled by default; default) # or: qmake "USE_UPNP=0" (disabled by default) # or: qmake "USE_UPNP=-" (not supported) @@ -136,18 +128,18 @@ contains(USE_LEVELDB, 1) { # use: qmake "USE_ASM=1" contains(USE_ASM, 1) { message(Using assembler scrypt implementation) - SOURCES += src/scrypt-asm/scrypt-arm.S src/scrypt-asm/scrypt-x86.S src/scrypt-asm/scrypt-x86_64.S src/scrypt-asm/asm-wrapper.cpp + SOURCES += src/crypto/scrypt/asm/scrypt-arm.S src/crypto/scrypt/asm/scrypt-x86.S src/crypto/scrypt/asm/scrypt-x86_64.S src/crypto/scrypt/asm/asm-wrapper.cpp } else { # use: qmake "USE_SSE2=1" contains(USE_SSE2, 1) { message(Using SSE2 intrinsic scrypt implementation) - SOURCES += src/scrypt-intrin/scrypt-sse2.cpp + SOURCES += src/crypto/scrypt/intrin/scrypt-sse2.cpp DEFINES += USE_SSE2 QMAKE_CXXFLAGS += -msse2 QMAKE_CFLAGS += -msse2 } else { message(Using generic scrypt implementation) - SOURCES += src/scrypt-generic.cpp + SOURCES += src/crypto/scrypt/generic/scrypt-generic.cpp } } @@ -270,7 +262,8 @@ HEADERS += src/qt/bitcoingui.h \ src/qt/multisigaddressentry.h \ src/qt/multisiginputentry.h \ src/qt/multisigdialog.h \ - src/qt/secondauthdialog.h + src/qt/secondauthdialog.h \ + src/qt/qrcodedialog.h SOURCES += src/qt/bitcoin.cpp src/qt/bitcoingui.cpp \ src/qt/intro.cpp \ @@ -346,7 +339,8 @@ SOURCES += src/qt/bitcoin.cpp src/qt/bitcoingui.cpp \ src/qt/multisigaddressentry.cpp \ src/qt/multisiginputentry.cpp \ src/qt/multisigdialog.cpp \ - src/qt/secondauthdialog.cpp + src/qt/secondauthdialog.cpp \ + src/qt/qrcodedialog.cpp RESOURCES += \ src/qt/bitcoin.qrc @@ -368,13 +362,8 @@ FORMS += \ src/qt/forms/multisigaddressentry.ui \ src/qt/forms/multisiginputentry.ui \ src/qt/forms/multisigdialog.ui \ - src/qt/forms/secondauthdialog.ui - -contains(USE_QRCODE, 1) { -HEADERS += src/qt/qrcodedialog.h -SOURCES += src/qt/qrcodedialog.cpp -FORMS += src/qt/forms/qrcodedialog.ui -} + src/qt/forms/secondauthdialog.ui \ + src/qt/forms/qrcodedialog.ui CODECFORTR = UTF-8 @@ -463,7 +452,7 @@ macx:QMAKE_CXXFLAGS_THREAD += -pthread # Set libraries and includes at end, to use platform-defined defaults if not overridden INCLUDEPATH += $$BOOST_INCLUDE_PATH $$BDB_INCLUDE_PATH $$OPENSSL_INCLUDE_PATH $$QRENCODE_INCLUDE_PATH LIBS += $$join(BOOST_LIB_PATH,,-L,) $$join(BDB_LIB_PATH,,-L,) $$join(OPENSSL_LIB_PATH,,-L,) $$join(QRENCODE_LIB_PATH,,-L,) -LIBS += -lssl -lcrypto -ldb_cxx$$BDB_LIB_SUFFIX +LIBS += -lqrencode -lssl -lcrypto -ldb_cxx$$BDB_LIB_SUFFIX # -lgdi32 has to happen after -lcrypto (see #681) windows:LIBS += -lws2_32 -lshlwapi -lmswsock -lole32 -loleaut32 -luuid -lgdi32 LIBS += -lboost_system$$BOOST_LIB_SUFFIX -lboost_filesystem$$BOOST_LIB_SUFFIX -lboost_program_options$$BOOST_LIB_SUFFIX -lboost_thread$$BOOST_THREAD_LIB_SUFFIX diff --git a/src/scrypt-asm/asm-wrapper.cpp b/src/crypto/scrypt/asm/asm-wrapper.cpp similarity index 100% rename from src/scrypt-asm/asm-wrapper.cpp rename to src/crypto/scrypt/asm/asm-wrapper.cpp diff --git a/src/scrypt-asm/obj/.gitignore b/src/crypto/scrypt/asm/obj/.gitignore similarity index 100% copy from src/scrypt-asm/obj/.gitignore copy to src/crypto/scrypt/asm/obj/.gitignore diff --git a/src/scrypt-asm/scrypt-arm.S b/src/crypto/scrypt/asm/scrypt-arm.S similarity index 100% rename from src/scrypt-asm/scrypt-arm.S rename to src/crypto/scrypt/asm/scrypt-arm.S diff --git a/src/scrypt-asm/scrypt-x86.S b/src/crypto/scrypt/asm/scrypt-x86.S similarity index 100% rename from src/scrypt-asm/scrypt-x86.S rename to src/crypto/scrypt/asm/scrypt-x86.S diff --git a/src/scrypt-asm/scrypt-x86_64.S b/src/crypto/scrypt/asm/scrypt-x86_64.S similarity index 100% rename from src/scrypt-asm/scrypt-x86_64.S rename to src/crypto/scrypt/asm/scrypt-x86_64.S diff --git a/src/scrypt-intrin/obj/.gitignore b/src/crypto/scrypt/generic/obj/.gitignore similarity index 100% rename from src/scrypt-intrin/obj/.gitignore rename to src/crypto/scrypt/generic/obj/.gitignore diff --git a/src/scrypt-generic.cpp b/src/crypto/scrypt/generic/scrypt-generic.cpp similarity index 96% rename from src/scrypt-generic.cpp rename to src/crypto/scrypt/generic/scrypt-generic.cpp index aa07892..c4dc5b5 100644 --- a/src/scrypt-generic.cpp +++ b/src/crypto/scrypt/generic/scrypt-generic.cpp @@ -119,15 +119,14 @@ uint256 scrypt_blockhash(const uint8_t* input) PKCS5_PBKDF2_HMAC((const char*)input, 80, input, 80, 1, EVP_sha256(), 128, (unsigned char *)X); - uint16_t i, j, k; - for (i = 0; i < 1024; i++) { + for (uint16_t i = 0; i < 1024; i++) { memcpy(&V[i * 32], X, 128); xor_salsa8(&X[0], &X[16]); xor_salsa8(&X[16], &X[0]); } - for (i = 0; i < 1024; i++) { - j = 32 * (X[16] & 1023); - for (k = 0; k < 32; k++) + for (uint16_t i = 0; i < 1024; i++) { + uint16_t j = 32 * (X[16] & 1023); + for (uint16_t k = 0; k < 32; k++) X[k] ^= V[j + k]; xor_salsa8(&X[0], &X[16]); xor_salsa8(&X[16], &X[0]); diff --git a/src/scrypt-asm/obj/.gitignore b/src/crypto/scrypt/intrin/obj/.gitignore similarity index 100% rename from src/scrypt-asm/obj/.gitignore rename to src/crypto/scrypt/intrin/obj/.gitignore diff --git a/src/scrypt-intrin/scrypt-sse2.cpp b/src/crypto/scrypt/intrin/scrypt-sse2.cpp similarity index 100% rename from src/scrypt-intrin/scrypt-sse2.cpp rename to src/crypto/scrypt/intrin/scrypt-sse2.cpp diff --git a/src/makefile.bsd b/src/makefile.bsd index 16f17f2..29c497e 100644 --- a/src/makefile.bsd +++ b/src/makefile.bsd @@ -150,38 +150,35 @@ endif ifeq (${USE_ASM}, 1) # Assembler implementation -OBJS += scrypt-asm/obj/scrypt-arm.o scrypt-asm/obj/scrypt-x86.o scrypt-asm/obj/scrypt-x86_64.o scrypt-asm/obj/asm-wrapper.o +OBJS += crypto/scrypt/asm/obj/scrypt-arm.o crypto/scrypt/asm/obj/scrypt-x86.o crypto/scrypt/asm/obj/scrypt-x86_64.o crypto/scrypt/asm/obj/asm-wrapper.o -scrypt-asm/obj/scrypt-x86.o: scrypt-asm/scrypt-x86.S +crypto/scrypt/asm/obj/scrypt-x86.o: crypto/scrypt/asm/scrypt-x86.S $(CXX) -c $(xCXXFLAGS) -MMD -o $@ $< -scrypt-asm/obj/scrypt-x86_64.o: scrypt-asm/scrypt-x86_64.S +crypto/scrypt/asm/obj/scrypt-x86_64.o: crypto/scrypt/asm/scrypt-x86_64.S $(CXX) -c $(xCXXFLAGS) -MMD -o $@ $< -scrypt-asm/obj/scrypt-arm.o: scrypt-asm/scrypt-arm.S +crypto/scrypt/asm/obj/scrypt-arm.o: crypto/scrypt/asm/scrypt-arm.S $(CXX) -c $(xCXXFLAGS) -MMD -o $@ $< -scrypt-asm/obj/asm-wrapper.o: scrypt-asm/asm-wrapper.cpp +crypto/scrypt/asm/obj/asm-wrapper.o: crypto/scrypt/asm/asm-wrapper.cpp $(CXX) -c $(xCXXFLAGS) -MMD -o $@ $< else ifeq (${USE_SSE2}, 1) # Intrinsic implementation DEFS += -DUSE_SSE2 -OBJS += scrypt-intrin/obj/scrypt-sse2.o +OBJS += crypto/scrypt/intrin/obj/scrypt-sse2.o -scrypt-intrin/obj/scrypt-sse2.o: scrypt-intrin/scrypt-sse2.cpp +crypto/scrypt/intrin/obj/scrypt-sse2.o: crypto/scrypt/intrin/scrypt-sse2.cpp $(CXX) -c $(xCXXFLAGS) -MMD -o $@ $< else -ifneq (${USE_ASM}, 1) # Generic implementation -OBJS += obj/scrypt-generic.o +OBJS += crypto/scrypt/generic/obj/scrypt-generic.o -obj/scrypt-generic.o: scrypt-generic.cpp +crypto/scrypt/generic/obj/scrypt-generic.o: crypto/scrypt/generic/scrypt-generic.cpp $(CXX) -c $(xCXXFLAGS) -MMD -o $@ $< endif endif -endif - # auto-generated dependencies: -include obj/*.P @@ -206,12 +203,15 @@ clean: -rm -f obj/*.o -rm -f obj/*.P -rm -f obj/*.d - -rm -f scrypt-asm/obj/*.o - -rm -f scrypt-asm/obj/*.P - -rm -f scrypt-asm/obj/*.d - -rm -f scrypt-intrin/obj/*.o - -rm -f scrypt-intrin/obj/*.P - -rm -f scrypt-intrin/obj/*.d + -rm -f crypto/scrypt/asm/obj/*.o + -rm -f crypto/scrypt/asm/obj/*.P + -rm -f crypto/scrypt/asm/obj/*.d + -rm -f crypto/scrypt/intrin/obj/*.o + -rm -f crypto/scrypt/intrin/obj/*.P + -rm -f crypto/scrypt/intrin/obj/*.d + -rm -f crypto/scrypt/generic/obj/*.o + -rm -f crypto/scrypt/generic/obj/*.P + -rm -f crypto/scrypt/generic/obj/*.d -rm -f obj/build.h FORCE: diff --git a/src/makefile.linux-mingw b/src/makefile.linux-mingw index 8022e40..c34e197 100644 --- a/src/makefile.linux-mingw +++ b/src/makefile.linux-mingw @@ -125,33 +125,33 @@ endif ifeq (${USE_ASM}, 1) # Assembler implementation -OBJS += scrypt-asm/obj/scrypt-arm.o scrypt-asm/obj/scrypt-x86.o scrypt-asm/obj/scrypt-x86_64.o scrypt-asm/obj/asm-wrapper.o +OBJS += crypto/scrypt/asm/obj/scrypt-arm.o crypto/scrypt/asm/obj/scrypt-x86.o crypto/scrypt/asm/obj/scrypt-x86_64.o crypto/scrypt/asm/obj/asm-wrapper.o -scrypt-asm/obj/scrypt-x86.o: scrypt-asm/scrypt-x86.S +crypto/scrypt/asm/obj/scrypt-x86.o: crypto/scrypt/asm/scrypt-x86.S $(CXX) -c $(CFLAGS) -MMD -o $@ $< -scrypt-asm/obj/scrypt-x86_64.o: scrypt-asm/scrypt-x86_64.S +crypto/scrypt/asm/obj/scrypt-x86_64.o: crypto/scrypt/asm/scrypt-x86_64.S $(CXX) -c $(CFLAGS) -MMD -o $@ $< -scrypt-asm/obj/scrypt-arm.o: scrypt-asm/scrypt-arm.S +crypto/scrypt/asm/obj/scrypt-arm.o: crypto/scrypt/asm/scrypt-arm.S $(CXX) -c $(CFLAGS) -MMD -o $@ $< -scrypt-asm/obj/asm-wrapper.o: scrypt-asm/asm-wrapper.cpp +crypto/scrypt/asm/obj/asm-wrapper.o: crypto/scrypt/asm/asm-wrapper.cpp $(CXX) -c $(CFLAGS) -MMD -o $@ $< else ifeq (${USE_SSE2}, 1) # Intrinsic implementation DEFS += -DUSE_SSE2 -OBJS += scrypt-intrin/obj/scrypt-sse2.o +OBJS += crypto/scrypt/intrin/obj/scrypt-sse2.o -scrypt-intrin/obj/scrypt-sse2.o: scrypt-intrin/scrypt-sse2.cpp $(HEADERS) +crypto/scrypt/intrin/obj/scrypt-sse2.o: crypto/scrypt/intrin/scrypt-sse2.cpp $(HEADERS) $(CXX) -c $(CFLAGS) -MMD -o $@ $< else ifneq (${USE_ASM}, 1) # Generic implementation -OBJS += obj/scrypt-generic.o +OBJS += crypto/scrypt/generic/obj/scrypt-generic.o -obj/scrypt-generic.o: scrypt-generic.cpp +crypto/scrypt/generic/obj/scrypt-generic.o: crypto/scrypt/generic/scrypt-generic.cpp $(CXX) -c $(CFLAGS) -MMD -o $@ $< endif endif @@ -176,12 +176,15 @@ clean: -rm -f obj/*.o -rm -f obj/*.P -rm -f obj/*.d - -rm -f scrypt-asm/obj/*.o - -rm -f scrypt-asm/obj/*.P - -rm -f scrypt-asm/obj/*.d - -rm -f scrypt-intrin/obj/*.o - -rm -f scrypt-intrin/obj/*.P - -rm -f scrypt-intrin/obj/*.d + -rm -f crypto/scrypt/asm/obj/*.o + -rm -f crypto/scrypt/asm/obj/*.P + -rm -f crypto/scrypt/asm/obj/*.d + -rm -f crypto/scrypt/intrin/obj/*.o + -rm -f crypto/scrypt/intrin/obj/*.P + -rm -f crypto/scrypt/intrin/obj/*.d + -rm -f crypto/scrypt/generic/obj/*.o + -rm -f crypto/scrypt/generic/obj/*.P + -rm -f crypto/scrypt/generic/obj/*.d -rm -f obj/build.h cd leveldb && TARGET_OS=OS_WINDOWS_CROSSCOMPILE $(MAKE) clean && cd .. diff --git a/src/makefile.osx b/src/makefile.osx index de69207..5aa9e9c 100644 --- a/src/makefile.osx +++ b/src/makefile.osx @@ -131,37 +131,35 @@ endif ifeq (${USE_ASM}, 1) # Assembler implementation -OBJS += scrypt-asm/obj/scrypt-arm.o scrypt-asm/obj/scrypt-x86.o scrypt-asm/obj/scrypt-x86_64.o scrypt-asm/obj/asm-wrapper.o +OBJS += crypto/scrypt/asm/obj/scrypt-arm.o crypto/scrypt/asm/obj/scrypt-x86.o crypto/scrypt/asm/obj/scrypt-x86_64.o crypto/scrypt/asm/obj/asm-wrapper.o -scrypt-asm/obj/scrypt-x86.o: scrypt-asm/scrypt-x86.S +crypto/scrypt/asm/obj/scrypt-x86.o: crypto/scrypt/asm/scrypt-x86.S $(CXX) -c $(xCXXFLAGS) -MMD -o $@ $< -scrypt-asm/obj/scrypt-x86_64.o: scrypt-asm/scrypt-x86_64.S +crypto/scrypt/asm/obj/scrypt-x86_64.o: crypto/scrypt/asm/scrypt-x86_64.S $(CXX) -c $(xCXXFLAGS) -MMD -o $@ $< -scrypt-asm/obj/scrypt-arm.o: scrypt-asm/scrypt-arm.S +crypto/scrypt/asm/obj/scrypt-arm.o: crypto/scrypt/asm/scrypt-arm.S $(CXX) -c $(xCXXFLAGS) -MMD -o $@ $< -scrypt-asm/obj/asm-wrapper.o: scrypt-asm/asm-wrapper.cpp +crypto/scrypt/asm/obj/asm-wrapper.o: crypto/scrypt/asm/asm-wrapper.cpp $(CXX) -c $(xCXXFLAGS) -MMD -o $@ $< else ifeq (${USE_SSE2}, 1) # Intrinsic implementation DEFS += -DUSE_SSE2 -OBJS += scrypt-intrin/obj/scrypt-sse2.o +OBJS += crypto/scrypt/intrin/obj/scrypt-sse2.o -scrypt-intrin/obj/scrypt-sse2.o: scrypt-intrin/scrypt-sse2.cpp +crypto/scrypt/intrin/obj/scrypt-sse2.o: crypto/scrypt/intrin/scrypt-sse2.cpp $(CXX) -c $(xCXXFLAGS) -MMD -o $@ $< else -ifneq (${USE_ASM}, 1) # Generic implementation -OBJS += obj/scrypt-generic.o +OBJS += crypto/scrypt/generic/obj/scrypt-generic.o -obj/scrypt-generic.o: scrypt-generic.cpp +crypto/scrypt/generic/obj/scrypt-generic.o: crypto/scrypt/generic/scrypt-generic.cpp $(CXX) -c $(xCXXFLAGS) -MMD -o $@ $< endif endif -endif # auto-generated dependencies: @@ -187,12 +185,15 @@ clean: -rm -f obj/*.o -rm -f obj/*.P -rm -f obj/*.d - -rm -f scrypt-asm/obj/*.o - -rm -f scrypt-asm/obj/*.P - -rm -f scrypt-asm/obj/*.d - -rm -f scrypt-intrin/obj/*.o - -rm -f scrypt-intrin/obj/*.P - -rm -f scrypt-intrin/obj/*.d + -rm -f crypto/scrypt/asm/obj/*.o + -rm -f crypto/scrypt/asm/obj/*.P + -rm -f crypto/scrypt/asm/obj/*.d + -rm -f crypto/scrypt/intrin/obj/*.o + -rm -f crypto/scrypt/intrin/obj/*.P + -rm -f crypto/scrypt/intrin/obj/*.d + -rm -f crypto/scrypt/generic/obj/*.o + -rm -f crypto/scrypt/generic/obj/*.P + -rm -f crypto/scrypt/generic/obj/*.d -rm -f obj/build.h FORCE: diff --git a/src/makefile.unix b/src/makefile.unix index f27ea5f..708695d 100644 --- a/src/makefile.unix +++ b/src/makefile.unix @@ -157,32 +157,32 @@ endif ifeq (${USE_ASM}, 1) # Assembler implementation -OBJS += scrypt-asm/obj/scrypt-arm.o scrypt-asm/obj/scrypt-x86.o scrypt-asm/obj/scrypt-x86_64.o scrypt-asm/obj/asm-wrapper.o +OBJS += crypto/scrypt/asm/obj/scrypt-arm.o crypto/scrypt/asm/obj/scrypt-x86.o crypto/scrypt/asm/obj/scrypt-x86_64.o crypto/scrypt/asm/obj/asm-wrapper.o -scrypt-asm/obj/scrypt-x86.o: scrypt-asm/scrypt-x86.S +crypto/scrypt/asm/obj/scrypt-x86.o: crypto/scrypt/asm/scrypt-x86.S $(CXX) -c $(xCXXFLAGS) -MMD -o $@ $< -scrypt-asm/obj/scrypt-x86_64.o: scrypt-asm/scrypt-x86_64.S +crypto/scrypt/asm/obj/scrypt-x86_64.o: crypto/scrypt/asm/scrypt-x86_64.S $(CXX) -c $(xCXXFLAGS) -MMD -o $@ $< -scrypt-asm/obj/scrypt-arm.o: scrypt-asm/scrypt-arm.S +crypto/scrypt/asm/obj/scrypt-arm.o: crypto/scrypt/asm/scrypt-arm.S $(CXX) -c $(xCXXFLAGS) -MMD -o $@ $< -scrypt-asm/obj/asm-wrapper.o: scrypt-asm/asm-wrapper.cpp +crypto/scrypt/asm/obj/asm-wrapper.o: crypto/scrypt/asm/asm-wrapper.cpp $(CXX) -c $(xCXXFLAGS) -MMD -o $@ $< else ifeq (${USE_SSE2}, 1) # Intrinsic implementation DEFS += -DUSE_SSE2 -OBJS += scrypt-intrin/obj/scrypt-sse2.o +OBJS += crypto/scrypt/intrin/obj/scrypt-sse2.o -scrypt-intrin/obj/scrypt-sse2.o: scrypt-intrin/scrypt-sse2.cpp +crypto/scrypt/intrin/obj/scrypt-sse2.o: crypto/scrypt/intrin/scrypt-sse2.cpp $(CXX) -c $(xCXXFLAGS) -MMD -o $@ $< else # Generic implementation -OBJS += obj/scrypt-generic.o +OBJS += crypto/scrypt/generic/obj/scrypt-generic.o -obj/scrypt-generic.o: scrypt-generic.cpp +crypto/scrypt/generic/obj/scrypt-generic.o: crypto/scrypt/generic/scrypt-generic.cpp $(CXX) -c $(xCXXFLAGS) -MMD -o $@ $< endif endif @@ -212,12 +212,15 @@ clean: -rm -f obj/*.o -rm -f obj/*.P -rm -f obj/*.d - -rm -f scrypt-asm/obj/*.o - -rm -f scrypt-asm/obj/*.P - -rm -f scrypt-asm/obj/*.d - -rm -f scrypt-intrin/obj/*.o - -rm -f scrypt-intrin/obj/*.P - -rm -f scrypt-intrin/obj/*.d + -rm -f crypto/scrypt/asm/obj/*.o + -rm -f crypto/scrypt/asm/obj/*.P + -rm -f crypto/scrypt/asm/obj/*.d + -rm -f crypto/scrypt/intrin/obj/*.o + -rm -f crypto/scrypt/intrin/obj/*.P + -rm -f crypto/scrypt/intrin/obj/*.d + -rm -f crypto/scrypt/generic/obj/*.o + -rm -f crypto/scrypt/generic/obj/*.P + -rm -f crypto/scrypt/generic/obj/*.d -rm -f obj/build.h FORCE: diff --git a/src/qt/addressbookpage.cpp b/src/qt/addressbookpage.cpp index 2b32c9f..e5b55c7 100644 --- a/src/qt/addressbookpage.cpp +++ b/src/qt/addressbookpage.cpp @@ -7,15 +7,13 @@ #include "editaddressdialog.h" #include "csvmodelwriter.h" #include "guiutil.h" +#include "qrcodedialog.h" #include #include #include #include -#ifdef USE_QRCODE -#include "qrcodedialog.h" -#endif AddressBookPage::AddressBookPage(Mode mode, Tabs tab, QWidget *parent) : QDialog(parent), @@ -33,9 +31,7 @@ AddressBookPage::AddressBookPage(Mode mode, Tabs tab, QWidget *parent) : ui->deleteButton->setIcon(QIcon()); #endif -#ifndef USE_QRCODE ui->showQRCode->setVisible(false); -#endif switch(mode) { @@ -65,9 +61,7 @@ AddressBookPage::AddressBookPage(Mode mode, Tabs tab, QWidget *parent) : QAction *copyLabelAction = new QAction(tr("Copy &Label"), this); QAction *copyAddressAction = new QAction(ui->copyToClipboard->text(), this); QAction *editAction = new QAction(tr("&Edit"), this); -#ifdef USE_QRCODE QAction *showQRCodeAction = new QAction(ui->showQRCode->text(), this); -#endif QAction *signMessageAction = new QAction(ui->signMessage->text(), this); QAction *verifyMessageAction = new QAction(ui->verifyMessage->text(), this); deleteAction = new QAction(ui->deleteButton->text(), this); @@ -80,9 +74,7 @@ AddressBookPage::AddressBookPage(Mode mode, Tabs tab, QWidget *parent) : if(tab == SendingTab) contextMenu->addAction(deleteAction); contextMenu->addSeparator(); -#ifdef USE_QRCODE contextMenu->addAction(showQRCodeAction); -#endif if(tab == ReceivingTab) contextMenu->addAction(signMessageAction); else if(tab == SendingTab) @@ -93,9 +85,7 @@ AddressBookPage::AddressBookPage(Mode mode, Tabs tab, QWidget *parent) : connect(copyLabelAction, SIGNAL(triggered()), this, SLOT(onCopyLabelAction())); connect(editAction, SIGNAL(triggered()), this, SLOT(onEditAction())); connect(deleteAction, SIGNAL(triggered()), this, SLOT(on_deleteButton_clicked())); -#ifdef USE_QRCODE connect(showQRCodeAction, SIGNAL(triggered()), this, SLOT(on_showQRCode_clicked())); -#endif connect(signMessageAction, SIGNAL(triggered()), this, SLOT(on_signMessage_clicked())); connect(verifyMessageAction, SIGNAL(triggered()), this, SLOT(on_verifyMessage_clicked())); @@ -345,7 +335,6 @@ void AddressBookPage::exportClicked() void AddressBookPage::on_showQRCode_clicked() { -#ifdef USE_QRCODE QTableView *table = ui->tableView; QModelIndexList indexes = table->selectionModel()->selectedRows(AddressTableModel::Address); @@ -359,7 +348,6 @@ void AddressBookPage::on_showQRCode_clicked() dialog->setAttribute(Qt::WA_DeleteOnClose); dialog->show(); } -#endif } void AddressBookPage::contextualMenu(const QPoint &point)