aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRiccardo Spagni <ric@spagni.net>2017-02-17 21:43:12 +0200
committerRiccardo Spagni <ric@spagni.net>2017-02-17 21:43:12 +0200
commit87f55992f0c0d9ff0f198fa62551348818dc6d6e (patch)
tree01195e8c1bbb4189b3162996d2cf6f7cfc6f2278
parentfdc71d2b187743f03e4fea27324a5074fd798634 (diff)
parentc94bd2ff72a3b38c08fe191db0d95b3c095ea6b6 (diff)
downloadmonzero-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-xget_libwallet_api.sh28
-rwxr-xr-xlinuxdeploy_helper.sh12
-rw-r--r--monero-wallet-gui.pro14
-rw-r--r--pages/Settings.qml67
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");