aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xbuild.sh15
-rwxr-xr-xget_libwallet_api.sh27
-rw-r--r--monero-core.pro10
3 files changed, 41 insertions, 11 deletions
diff --git a/build.sh b/build.sh
index 347f5aaa..a8c2a2c3 100755
--- a/build.sh
+++ b/build.sh
@@ -1,5 +1,6 @@
#!/bin/bash
+source ./utils.sh
pushd $(pwd)
ROOT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
MONERO_DIR=monero
@@ -9,9 +10,19 @@ if [ ! -d $MONERO_DIR ]; then
fi
if [ ! -d build ]; then mkdir build; fi
-cd build
-qmake ../monero-core.pro "CONFIG+=release"
+CONFIG="CONFIG+=release"
+
+platform=$(get_platform)
+if [ "$platform" == "linux" ]; then
+ distro=$(lsb_release -is)
+ if [ "$distro" == "Ubuntu" ]; then
+ CONFIG="$CONFIG libunwind_off"
+ fi
+fi
+
+cd build
+qmake ../monero-core.pro "$CONFIG"
make
make deploy
popd
diff --git a/get_libwallet_api.sh b/get_libwallet_api.sh
index b8c8d479..7ef6f0ff 100755
--- a/get_libwallet_api.sh
+++ b/get_libwallet_api.sh
@@ -8,6 +8,8 @@ CPU_CORE_COUNT=$(grep -c ^processor /proc/cpuinfo 2>/dev/null || sysctl -n hw.nc
pushd $(pwd)
ROOT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
+source $ROOT_DIR/utils.sh
+
INSTALL_DIR=$ROOT_DIR/wallet
MONERO_DIR=$ROOT_DIR/monero
@@ -29,19 +31,29 @@ rm -fr $MONERO_DIR/include
mkdir -p $MONERO_DIR/build/release
pushd $MONERO_DIR/build/release
-if [ "$(uname)" == "Darwin" ]; then
+# reusing function from "utils.sh"
+platform=$(get_platform)
+
+if [ "$platform" == "darwin" ]; then
# Do something under Mac OS X platform
+ echo "Configuring build for MacOS.."
cmake -D CMAKE_BUILD_TYPE=Release -D STATIC=ON -D BUILD_GUI_DEPS=ON -D INSTALL_VENDORED_LIBUNBOUND=ON -D CMAKE_INSTALL_PREFIX="$MONERO_DIR" ../..
-elif [ "$(expr substr $(uname -s) 1 5)" == "Linux" ]; then
+elif [ "$platform" == "linux" ]; then
# Do something under GNU/Linux platform
- PLATFORM="Linux"
+ echo "Configuring build for Linux.."
cmake -D CMAKE_BUILD_TYPE=Release -D STATIC=ON -D BUILD_GUI_DEPS=ON -D CMAKE_INSTALL_PREFIX="$MONERO_DIR" ../..
-elif [ "$(expr substr $(uname -s) 1 10)" == "MINGW64_NT" ]; then
+elif [ "$platform" == "mingw64" ]; then
# Do something under Windows NT platform
+ echo "Configuring build for MINGW64.."
cmake -D CMAKE_BUILD_TYPE=Release -D STATIC=ON -D BUILD_GUI_DEPS=ON -D INSTALL_VENDORED_LIBUNBOUND=ON -D CMAKE_INSTALL_PREFIX="$MONERO_DIR" -G "MSYS Makefiles" ../..
-elif [ "$(expr substr $(uname -s) 1 10)" == "MINGW32_NT" ]; then
+elif [ "$platform" == "mingw32" ]; then
# Do something under Windows NT platform
+ echo "Configuring build for MINGW32.."
cmake -D CMAKE_BUILD_TYPE=Release -D STATIC=ON -D BUILD_GUI_DEPS=ON -D INSTALL_VENDORED_LIBUNBOUND=ON -D CMAKE_INSTALL_PREFIX="$MONERO_DIR" -G "MSYS Makefiles" ../..
+else
+ echo "Unsupported platform: $platform"
+ popd
+ exit 1
fi
@@ -54,10 +66,11 @@ popd
# since filename conflict (random.c.obj)
# for Linux, we use libunbound shipped with the system, so we don't need to build it
-if [ "$PLATFORM" != "Linux" ]; then
+if [ "$platform" != "linux" ]; then
echo "Building libunbound..."
pushd $MONERO_DIR/build/release/external/unbound
- make -j$CPU_CORE_COUNT
+ # no need to make, it was already built as dependency for libwallet
+ # make -j$CPU_CORE_COUNT
make install -j$CPU_CORE_COUNT
popd
fi
diff --git a/monero-core.pro b/monero-core.pro
index c90960e4..4c1a5158 100644
--- a/monero-core.pro
+++ b/monero-core.pro
@@ -86,9 +86,15 @@ linux {
-lssl \
-lcrypto \
-Wl,-Bdynamic \
- # currently monero has an issue with "static" build and linunwind-dev
- # -lunwind \
-ldl
+ # currently monero has an issue with "static" build and linunwind-dev,
+ # so we link libunwind-dev only for non-Ubuntu distros
+ CONFIG(libunwind_off) {
+ message(Building without libunwind)
+ } else {
+ message(Building with libunwind)
+ LIBS += -Wl,-Bdynamic -lunwind
+ }
}
macx {