aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCory Fields <cory-nospam-@coryfields.com>2014-09-29 15:26:31 -0400
committerCory Fields <cory-nospam-@coryfields.com>2014-10-03 15:33:24 -0400
commit5b9f78d69ccf189bebe894b1921e34417103a046 (patch)
tree4fe9c1e7b33fd59cab916f9b8720a6cb860a880b
parent274352927fdc3a50f9abab28c968bc8bb30d2924 (diff)
downloadbitcoin-5b9f78d69ccf189bebe894b1921e34417103a046.tar.xz
build: Fix OSX build when using Homebrew and qt5
Qt5 is bottled, so configure won't find it without some help. Use brew to find out its prefix. Also, qt5 added the host_bins variable to pkg-config, use it.
-rw-r--r--configure.ac25
-rw-r--r--src/m4/bitcoin_qt.m46
2 files changed, 25 insertions, 6 deletions
diff --git a/configure.ac b/configure.ac
index 1c004cf4a4..7df52f6e77 100644
--- a/configure.ac
+++ b/configure.ac
@@ -232,12 +232,25 @@ case $host in
AC_CHECK_PROG([BREW],brew, brew)
if test x$BREW = xbrew; then
- dnl add default homebrew paths
- openssl_prefix=`$BREW --prefix openssl`
- bdb_prefix=`$BREW --prefix berkeley-db4`
- export PKG_CONFIG_PATH="$openssl_prefix/lib/pkgconfig:$PKG_CONFIG_PATH"
- CPPFLAGS="$CPPFLAGS -I$bdb_prefix/include"
- LIBS="$LIBS -L$bdb_prefix/lib"
+ dnl These Homebrew packages may be bottled, meaning that they won't be found
+ dnl in expected paths because they may conflict with system files. Ask
+ dnl Homebrew where each one is located, then adjust paths accordingly.
+ dnl It's safe to add these paths even if the functionality is disabled by
+ dnl the user (--without-wallet or --without-gui for example).
+
+ openssl_prefix=`$BREW --prefix openssl 2>/dev/null`
+ bdb_prefix=`$BREW --prefix berkeley-db4 2>/dev/null`
+ qt5_prefix=`$BREW --prefix qt5 2>/dev/null`
+ if test x$openssl_prefix != x; then
+ export PKG_CONFIG_PATH="$openssl_prefix/lib/pkgconfig:$PKG_CONFIG_PATH"
+ fi
+ if test x$bdb_prefix != x; then
+ CPPFLAGS="$CPPFLAGS -I$bdb_prefix/include"
+ LIBS="$LIBS -L$bdb_prefix/lib"
+ fi
+ if test x$qt5_prefix != x; then
+ export PKG_CONFIG_PATH="$qt5_prefix/lib/pkgconfig:$PKG_CONFIG_PATH"
+ fi
fi
else
case $build_os in
diff --git a/src/m4/bitcoin_qt.m4 b/src/m4/bitcoin_qt.m4
index e71ecd7172..20fead2c1e 100644
--- a/src/m4/bitcoin_qt.m4
+++ b/src/m4/bitcoin_qt.m4
@@ -94,6 +94,12 @@ AC_DEFUN([BITCOIN_QT_CONFIGURE],[
BITCOIN_QT_CHECK([_BITCOIN_QT_FIND_LIBS_WITHOUT_PKGCONFIG])
fi
+ if test x$use_pkgconfig$qt_bin_path = xyes; then
+ if test x$bitcoin_qt_got_major_vers = x5; then
+ qt_bin_path="`$PKG_CONFIG --variable=host_bins Qt5Core 2>/dev/null`"
+ fi
+ fi
+
BITCOIN_QT_PATH_PROGS([MOC], [moc-qt${bitcoin_qt_got_major_vers} moc${bitcoin_qt_got_major_vers} moc], $qt_bin_path)
BITCOIN_QT_PATH_PROGS([UIC], [uic-qt${bitcoin_qt_got_major_vers} uic${bitcoin_qt_got_major_vers} uic], $qt_bin_path)
BITCOIN_QT_PATH_PROGS([RCC], [rcc-qt${bitcoin_qt_got_major_vers} rcc${bitcoin_qt_got_major_vers} rcc], $qt_bin_path)