diff --git a/cmake/platforms/OSX.cmake b/cmake/platforms/OSX.cmake --- a/cmake/platforms/OSX.cmake +++ b/cmake/platforms/OSX.cmake @@ -6,10 +6,11 @@ # On OSX, we use clang by default. set(CMAKE_C_COMPILER clang) set(CMAKE_CXX_COMPILER clang++) -# set(CMAKE_CXX_EXTENSIONS OFF) # On OSX we use various stuff from Apple's SDK. set(OSX_SDK_PATH "${CMAKE_CURRENT_SOURCE_DIR}/depends/SDKs/MacOSX10.11.sdk") +set(CMAKE_OSX_SYSROOT ${OSX_SDK_PATH}) +set(CMAKE_OSX_DEPLOYMENT_TARGET 10.8) # target environment on the build host system # set 1st to dir with the cross compiler's C/C++ headers/libs @@ -28,13 +29,11 @@ # Sysroot clang set(OSX_EXTRA_FLAGS " -target ${TOOLCHAIN_PREFIX}" - " -mmacosx-version-min=10.8" - " --sysroot ${OSX_SDK_PATH}" " -mlinker-version=253.9" ) -string(APPEND CMAKE_C_FLAGS ${OSX_EXTRA_FLAGS}) -string(APPEND CMAKE_CXX_FLAGS ${OSX_EXTRA_FLAGS} " -stdlib=libc++") +string(APPEND CMAKE_C_FLAGS_INIT ${OSX_EXTRA_FLAGS}) +string(APPEND CMAKE_CXX_FLAGS_INIT ${OSX_EXTRA_FLAGS} " -stdlib=libc++") # Ensure we use an OSX specific version of ar, ranlib and nm. find_program(CMAKE_AR ${TOOLCHAIN_PREFIX}-ar) diff --git a/depends/packages/qt.mk b/depends/packages/qt.mk --- a/depends/packages/qt.mk +++ b/depends/packages/qt.mk @@ -39,6 +39,7 @@ $(package)_config_opts += -no-linuxfb $(package)_config_opts += -no-libudev $(package)_config_opts += -no-mtdev +$(package)_config_opts += -no-opengl $(package)_config_opts += -no-openvg $(package)_config_opts += -no-reduce-relocations $(package)_config_opts += -no-qml-debug @@ -88,11 +89,10 @@ $(package)_config_opts_linux += -system-freetype $(package)_config_opts_linux += -no-feature-sessionmanager $(package)_config_opts_linux += -fontconfig -$(package)_config_opts_linux += -no-opengl $(package)_config_opts_arm_linux += -platform linux-g++ -xplatform bitcoin-linux-g++ $(package)_config_opts_i686_linux = -xplatform linux-g++-32 $(package)_config_opts_x86_64_linux = -xplatform linux-g++-64 -$(package)_config_opts_mingw32 = -no-opengl -xplatform win32-g++ -device-option CROSS_COMPILE="$(host)-" +$(package)_config_opts_mingw32 = -xplatform win32-g++ -device-option CROSS_COMPILE="$(host)-" $(package)_build_env = QT_RCC_TEST=1 $(package)_build_env += QT_RCC_SOURCE_DATE_OVERRIDE=1 endef diff --git a/src/qt/CMakeLists.txt b/src/qt/CMakeLists.txt --- a/src/qt/CMakeLists.txt +++ b/src/qt/CMakeLists.txt @@ -187,6 +187,14 @@ target_sources(bitcoin-qt-base PRIVATE winshutdownmonitor.cpp) endif() +# OSX support +if(${CMAKE_SYSTEM_NAME} MATCHES "Darwin") + target_sources(bitcoin-qt-base PRIVATE + macdockiconhandler.mm + macnotificationhandler.mm + ) +endif() + target_include_directories(bitcoin-qt-base PUBLIC .