diff options
| author | Riccardo Spagni <ric@spagni.net> | 2017-02-17 21:43:12 +0200 |
|---|---|---|
| committer | Riccardo Spagni <ric@spagni.net> | 2017-02-17 21:43:12 +0200 |
| commit | 87f55992f0c0d9ff0f198fa62551348818dc6d6e (patch) | |
| tree | 01195e8c1bbb4189b3162996d2cf6f7cfc6f2278 | |
| parent | fdc71d2b187743f03e4fea27324a5074fd798634 (diff) | |
| parent | c94bd2ff72a3b38c08fe191db0d95b3c095ea6b6 (diff) | |
| download | monzero-gui-87f55992f0c0d9ff0f198fa62551348818dc6d6e.tar.gz monzero-gui-87f55992f0c0d9ff0f198fa62551348818dc6d6e.tar.xz monzero-gui-87f55992f0c0d9ff0f198fa62551348818dc6d6e.zip | |
Merge pull request #455
c94bd2f linux: remove rpath requires #1709 (Jaquee)
2083357 Linux: static libgcc and libstdc++ (Jaquee)
08ceb5e settings: replace seed box with popup requires #1709 (Jaquee)
| -rwxr-xr-x | get_libwallet_api.sh | 28 | ||||
| -rwxr-xr-x | linuxdeploy_helper.sh | 12 | ||||
| -rw-r--r-- | monero-wallet-gui.pro | 14 | ||||
| -rw-r--r-- | pages/Settings.qml | 67 |
4 files changed, 35 insertions, 86 deletions
diff --git a/get_libwallet_api.sh b/get_libwallet_api.sh index 8d9dda28..ee04e6c8 100755 --- a/get_libwallet_api.sh +++ b/get_libwallet_api.sh @@ -143,7 +143,7 @@ elif [ "$platform" == "linux64" ]; then echo "Configuring build for Android on Linux host" cmake -D CMAKE_BUILD_TYPE=$CMAKE_BUILD_TYPE -D STATIC=ON -D ARCH="armv7-a" -D ANDROID=true -D BUILD_GUI_DEPS=ON -D USE_LTO=OFF -D INSTALL_VENDORED_LIBUNBOUND=ON -D CMAKE_INSTALL_PREFIX="$MONERO_DIR" ../.. elif [ "$STATIC" == true ]; then - cmake -D CMAKE_BUILD_TYPE=$CMAKE_BUILD_TYPE -D STATIC=ON -D ARCH="x86-64" -D BUILD_64=ON -D BUILD_GUI_DEPS=ON -D CMAKE_INSTALL_PREFIX="$MONERO_DIR" ../.. + cmake -D CMAKE_BUILD_TYPE=$CMAKE_BUILD_TYPE -D STATIC=ON -D ARCH="x86-64" -D BUILD_64=ON -D BUILD_GUI_DEPS=ON -D INSTALL_VENDORED_LIBUNBOUND=ON -D CMAKE_INSTALL_PREFIX="$MONERO_DIR" ../.. else cmake -D CMAKE_BUILD_TYPE=$CMAKE_BUILD_TYPE -D BUILD_GUI_DEPS=ON -D CMAKE_INSTALL_PREFIX="$MONERO_DIR" ../.. fi @@ -170,7 +170,7 @@ elif [ "$platform" == "linuxarmv7" ]; then elif [ "$platform" == "linux" ]; then echo "Configuring build for Linux general" if [ "$STATIC" == true ]; then - cmake -D CMAKE_BUILD_TYPE=$CMAKE_BUILD_TYPE -D STATIC=ON -D BUILD_GUI_DEPS=ON -D CMAKE_INSTALL_PREFIX="$MONERO_DIR" ../.. + cmake -D CMAKE_BUILD_TYPE=$CMAKE_BUILD_TYPE -D STATIC=ON -D BUILD_GUI_DEPS=ON -D INSTALL_VENDORED_LIBUNBOUND=ON -D CMAKE_INSTALL_PREFIX="$MONERO_DIR" ../.. else cmake -D CMAKE_BUILD_TYPE=$CMAKE_BUILD_TYPE -D BUILD_GUI_DEPS=ON -D CMAKE_INSTALL_PREFIX="$MONERO_DIR" ../.. fi @@ -219,21 +219,19 @@ if [ "$platform" != "mingw32" ] && [ "$ANDROID" != true ]; then eval make -j$CPU_CORE_COUNT eval make install -j$CPU_CORE_COUNT popd -else - eval make -C $MONERO_DIR/build/release/contrib/epee all install fi -# unbound is one more dependency. can't be merged to the wallet_merged -# since filename conflict (random.c.obj) -# for Linux, we use libunbound shipped with the system, so we don't need to build it +# build install epee +eval make -C $MONERO_DIR/build/release/contrib/epee all install + + +# Install libunwind +echo "Installing libunbound..." +pushd $MONERO_DIR/build/release/external/unbound +# no need to make, it was already built as dependency for libwallet +# make -j$CPU_CORE_COUNT +$make_exec install -j$CPU_CORE_COUNT +popd -if [ "$platform" != "linux32" ] && ([ "$ANDROID" == true ] || [ "$platform" != "linux64" ]); then - echo "Building libunbound..." - pushd $MONERO_DIR/build/release/external/unbound - # no need to make, it was already built as dependency for libwallet - # make -j$CPU_CORE_COUNT - $make_exec install -j$CPU_CORE_COUNT - popd -fi popd diff --git a/linuxdeploy_helper.sh b/linuxdeploy_helper.sh index 7bd16d71..d65676ce 100755 --- a/linuxdeploy_helper.sh +++ b/linuxdeploy_helper.sh @@ -31,18 +31,22 @@ fi # Copy dependencies EXCLUDE='libstdc++|libgcc_s.so|libc.so|libpthread' +INCLUDE='libunbound' cp -rv $QT_DIR/qml $TARGET || exit cp -rv $QT_DIR/plugins $TARGET || exit mkdir -p $TARGET/libs || exit -ldd $TARGET/$GUI_EXEC | grep "=> /" | awk '{print $3}' | grep -Ev $EXCLUDE | xargs -I '{}' cp -v '{}' $TARGET/libs || exit -ldd $TARGET/plugins/platforms/libqxcb.so| grep "=> /" | awk '{print $3}' | grep -Ev $EXCLUDE | xargs -I '{}' cp -v '{}' $TARGET/libs || exit -cp -v $QTXML_DIR/libQt5XmlPatterns.so.5 $TARGET/libs || exit +#ldd $TARGET/$GUI_EXEC | grep "=> /" | awk '{print $3}' | grep $INCLUDE | xargs -I '{}' cp -v '{}' $TARGET/libs || exit +#ldd $TARGET/$GUI_EXEC | grep "=> /" | awk '{print $3}' | grep -Ev $EXCLUDE | xargs -I '{}' cp -v '{}' $TARGET/libs || exit +#ldd $TARGET/plugins/platforms/libqxcb.so| grep "=> /" | awk '{print $3}' | grep -Ev $EXCLUDE | xargs -I '{}' cp -v '{}' $TARGET/libs || exit +#cp -v $QTXML_DIR/libQt5XmlPatterns.so.5 $TARGET/libs || exit # Create start script cat > $TARGET/start-gui.sh <<EOL #!/bin/bash -# export LD_LIBRARY_PATH=\`pwd\`/libs +export LD_LIBRARY_PATH=\`pwd\`/libs export QT_PLUGIN_PATH=\`pwd\`/plugins export QML2_IMPORT_PATH=\`pwd\`/qml ./$GUI_EXEC EOL + +chmod +x $TARGET/start-gui.sh
\ No newline at end of file diff --git a/monero-wallet-gui.pro b/monero-wallet-gui.pro index 902a99b3..86564492 100644 --- a/monero-wallet-gui.pro +++ b/monero-wallet-gui.pro @@ -196,8 +196,13 @@ win32 { linux { CONFIG(static) { message("using static libraries") - LIBS+= -Wl,-Bstatic + LIBS+= -Wl,-Bstatic + QMAKE_LFLAGS += -static-libgcc -static-libstdc++ + contains(QT_ARCH, x86_64) { + LIBS+= -lunbound + } } + LIBS+= \ -lboost_serialization \ -lboost_thread \ @@ -210,7 +215,7 @@ linux { -lssl \ -lcrypto \ -Wl,-Bdynamic \ - -ldl + -lGL # currently monero has an issue with "static" build and linunwind-dev, # so we link libunwind-dev only for non-Ubuntu distros CONFIG(libunwind_off) { @@ -219,11 +224,6 @@ linux { message(Building with libunwind) LIBS += -Wl,-Bdynamic -lunwind } - - - QMAKE_LFLAGS_RPATH= - QMAKE_LFLAGS += "-Wl,-rpath,\'\$$ORIGIN/libs\'" - } macx { diff --git a/pages/Settings.qml b/pages/Settings.qml index de18bac7..d2e1a3b3 100644 --- a/pages/Settings.qml +++ b/pages/Settings.qml @@ -48,10 +48,6 @@ Rectangle { function initSettings() { //runs on every page load - // Mnemonic seed setting - memoTextInput.text = (viewOnly)? qsTr("View only wallets doesn't have a mnemonic seed") : qsTr("Click button to show seed") + translationManager.emptyString - showSeedButton.enabled = !viewOnly - // Daemon settings daemonAddress = persistentSettings.daemon_address.split(":"); console.log("address: " + persistentSettings.daemon_address) @@ -115,60 +111,6 @@ Rectangle { } } - } - - //! show seed - TextArea { - enabled: !viewOnly - id: memoTextInput - textMargin: 6 - wrapMode: TextEdit.WordWrap - readOnly: true - selectByMouse: true - font.pixelSize: 18 - Layout.fillWidth: true - Layout.preferredHeight: 100 - Layout.alignment: Qt.AlignHCenter - - text: (viewOnly)? qsTr("View only wallets doesn't have a mnemonic seed") : qsTr("Click button to show seed") + translationManager.emptyString - - style: TextAreaStyle { - backgroundColor: "#FFFFFF" - } - - Image { - id : clipboardButton - anchors.right: memoTextInput.right - anchors.bottom: memoTextInput.bottom - source: "qrc:///images/greyTriangle.png" - - Image { - anchors.centerIn: parent - source: "qrc:///images/copyToClipboard.png" - } - MouseArea { - anchors.fill: parent - cursorShape: Qt.PointingHandCursor - onClicked: clipboard.setText(memoTextInput.text) - } - } - } - - - RowLayout { - enabled: !viewOnly - Layout.fillWidth: true - Text { - id: wordsTipText - font.family: "Arial" - font.pointSize: 12 - color: "#4A4646" - Layout.fillWidth: true - wrapMode: Text.WordWrap - text: qsTr("This is very important to write down and keep secret. It is all you need to restore your wallet.") - + translationManager.emptyString - } - StandardButton { id: showSeedButton shadowReleasedColor: "#FF4304" @@ -449,8 +391,13 @@ Rectangle { onAccepted: { if(appWindow.password === settingsPasswordDialog.password){ - memoTextInput.text = currentWallet.seed - showSeedButton.enabled = false + informationPopup.title = qsTr("Wallet mnemonic seed") + translationManager.emptyString; + informationPopup.text = currentWallet.seed + informationPopup.open() + informationPopup.onCloseCallback = function() { + informationPopup.text = "" + } + } else { informationPopup.title = qsTr("Error") + translationManager.emptyString; informationPopup.text = qsTr("Wrong password"); |
