diff --git a/configure.ac b/configure.ac index 41fc22fb5..9ba1aefb3 100644 --- a/configure.ac +++ b/configure.ac @@ -38,7 +38,6 @@ else CXXFLAGS_overridden=no fi AC_PROG_CXX -m4_ifdef([AC_PROG_OBJCXX],[AC_PROG_OBJCXX]) dnl By default, libtool for mingw refuses to link static libs into a dll for dnl fear of mixing pic/non-pic objects, and import/export complications. Since @@ -48,6 +47,16 @@ case $host in lt_cv_deplibs_check_method="pass_all" ;; esac + +dnl Unless the user specified OBJCXX, force it to be the same as CXX. This ensures +dnl that we get the same -std flags for both. +m4_ifdef([AC_PROG_OBJCXX],[ +if test "x${OBJCXX+set}" = "x"; then + OBJCXX="${CXX}" +fi +AC_PROG_OBJCXX +]) + dnl Libtool init checks. LT_INIT([pic-only]) diff --git a/depends/packages/qt.mk b/depends/packages/qt.mk index 8aa98e58e..4d3c354e8 100644 --- a/depends/packages/qt.mk +++ b/depends/packages/qt.mk @@ -76,6 +76,8 @@ $(package)_config_opts += -no-libudev $(package)_config_opts += -no-use-gold-linker $(package)_config_opts += -reduce-exports $(package)_config_opts += -optimized-qmake +$(package)_config_opts += -no-feature-printer +$(package)_config_opts += -no-feature-printdialog ifneq ($(build_os),darwin) $(package)_config_opts_darwin = -xplatform macx-clang-linux diff --git a/depends/patches/qt/mac-qmake.conf b/depends/patches/qt/mac-qmake.conf index a6d0070cc..6c7da425c 100644 --- a/depends/patches/qt/mac-qmake.conf +++ b/depends/patches/qt/mac-qmake.conf @@ -1,6 +1,5 @@ MAKEFILE_GENERATOR = UNIX CONFIG += app_bundle incremental global_init_link_order lib_version_first plugin_no_soname absolute_library_soname -DEFINES += QT_NO_PRINTER QT_NO_PRINTDIALOG QMAKE_INCREMENTAL_STYLE = sublib include(../common/macx.conf) include(../common/gcc-base-mac.conf) diff --git a/src/compat/byteswap.h b/src/compat/byteswap.h index 899220bdc..5c86499d7 100644 --- a/src/compat/byteswap.h +++ b/src/compat/byteswap.h @@ -15,6 +15,23 @@ #include #endif +#if defined(__APPLE__) + +#if !defined(bswap_16) + +// Mac OS X / Darwin features; we include a check for bswap_16 because if it is already defined, protobuf has +// defined these macros for us already; if it isn't, we do it ourselves. In either case, we get the exact same +// result regardless which path was taken +#include +#define bswap_16(x) OSSwapInt16(x) +#define bswap_32(x) OSSwapInt32(x) +#define bswap_64(x) OSSwapInt64(x) + +#endif // !defined(bswap_16) + +#else +// Non-Mac OS X / non-Darwin + #if HAVE_DECL_BSWAP_16 == 0 inline uint16_t bswap_16(uint16_t x) { @@ -44,4 +61,6 @@ inline uint64_t bswap_64(uint64_t x) } #endif // HAVE_DECL_BSWAP64 +#endif // defined(__APPLE__) + #endif // BITCOIN_COMPAT_BYTESWAP_H diff --git a/src/main.h b/src/main.h index 49e5e6ddf..10c5c63f4 100644 --- a/src/main.h +++ b/src/main.h @@ -39,7 +39,7 @@ class CTxMemPool; class CValidationInterface; class CValidationState; -class CDiskTxPos; +struct CDiskTxPos; class CWallet; struct CNodeStateStats;