diff options
Diffstat (limited to 'platform/qt/qt.cmake')
-rw-r--r-- | platform/qt/qt.cmake | 53 |
1 files changed, 36 insertions, 17 deletions
diff --git a/platform/qt/qt.cmake b/platform/qt/qt.cmake index 2346d7d820..aaae199650 100644 --- a/platform/qt/qt.cmake +++ b/platform/qt/qt.cmake @@ -5,8 +5,7 @@ option(WITH_QT_DECODERS "Use builtin Qt image decoders" OFF) option(WITH_QT_I18N "Use builtin Qt i18n support" OFF) option(WITH_QT_4 "Use Qt4 instead of Qt5" OFF) -set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden -D__QT__") -set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fvisibility=hidden -D__QT__") +add_definitions("-D__QT__") set(CMAKE_AUTOMOC ON) set(CMAKE_AUTORCC ON) @@ -17,13 +16,8 @@ set(MBGL_QT_CORE_FILES PRIVATE platform/default/mbgl/gl/headless_frontend.hpp PRIVATE platform/default/mbgl/gl/headless_backend.cpp PRIVATE platform/default/mbgl/gl/headless_backend.hpp - PRIVATE platform/default/mbgl/gl/headless_display.cpp - PRIVATE platform/default/mbgl/gl/headless_display.hpp PRIVATE platform/qt/src/headless_backend_qt.cpp - # Misc - PRIVATE platform/default/logging_stderr.cpp - # Thread pool PRIVATE platform/default/mbgl/util/shared_thread_pool.cpp PRIVATE platform/default/mbgl/util/shared_thread_pool.hpp @@ -36,6 +30,7 @@ set(MBGL_QT_CORE_FILES # Platform integration PRIVATE platform/qt/src/async_task.cpp PRIVATE platform/qt/src/async_task_impl.hpp + PRIVATE platform/qt/src/qt_logging.cpp PRIVATE platform/qt/src/qt_image.cpp PRIVATE platform/qt/src/run_loop.cpp PRIVATE platform/qt/src/run_loop_impl.hpp @@ -60,6 +55,9 @@ set(MBGL_QT_FILESOURCE_FILES add_library(qmapboxgl SHARED platform/qt/include/qmapbox.hpp platform/qt/include/qmapboxgl.hpp + platform/qt/src/qt_conversion.hpp + platform/qt/src/qt_geojson.cpp + platform/qt/src/qt_geojson.hpp platform/qt/src/qmapbox.cpp platform/qt/src/qmapboxgl.cpp platform/qt/src/qmapboxgl_p.hpp @@ -72,6 +70,10 @@ target_include_directories(qmapboxgl PUBLIC platform/qt/include ) +target_compile_definitions(qmapboxgl + PRIVATE "-DQT_BUILD_MAPBOXGL_LIB" +) + target_link_libraries(qmapboxgl PRIVATE mbgl-core PRIVATE mbgl-filesource @@ -103,12 +105,6 @@ endif() xcode_create_scheme(TARGET mbgl-qt) -if(WITH_QT_4) - include(platform/qt/qt4.cmake) -else() - include(platform/qt/qt5.cmake) -endif() - # OS specific configurations if (MASON_PLATFORM STREQUAL "osx" OR MASON_PLATFORM STREQUAL "ios") list(APPEND MBGL_QT_CORE_FILES @@ -116,19 +112,42 @@ if (MASON_PLATFORM STREQUAL "osx" OR MASON_PLATFORM STREQUAL "ios") ) list(APPEND MBGL_QT_CORE_LIBRARIES PRIVATE "-framework Foundation" - PRIVATE "-framework OpenGL" ) + if(WITH_QT_4) + list(APPEND MBGL_QT_CORE_LIBRARIES + PRIVATE "-framework OpenGL" + ) + endif() elseif (CMAKE_HOST_SYSTEM_NAME STREQUAL "Linux") list(APPEND MBGL_QT_CORE_FILES PRIVATE platform/default/thread.cpp ) - list(APPEND MBGL_QT_CORE_LIBRARIES - PRIVATE -lGL - ) + if(WITH_QT_4) + list(APPEND MBGL_QT_CORE_LIBRARIES + PRIVATE "-lGL" + ) + endif() elseif (CMAKE_HOST_SYSTEM_NAME STREQUAL "Windows") + add_definitions("-DQT_COMPILING_QIMAGE_COMPAT_CPP") + add_definitions("-DRAPIDJSON_HAS_CXX11_RVALUE_REFS") + add_definitions("-D_USE_MATH_DEFINES") + add_definitions("-D_WINDOWS") + + add_definitions("-Wno-deprecated-declarations") + add_definitions("-Wno-macro-redefined") + add_definitions("-Wno-microsoft-exception-spec") + add_definitions("-Wno-unknown-argument") + add_definitions("-Wno-unknown-warning-option") + add_definitions("-Wno-unused-command-line-argument") + add_definitions("-Wno-unused-local-typedef") + add_definitions("-Wno-unused-private-field") + list(APPEND MBGL_QT_CORE_FILES PRIVATE platform/qt/src/thread.cpp ) + + target_add_mason_package(qmapboxgl PRIVATE optional) + target_add_mason_package(qmapboxgl PRIVATE tao_tuple) endif() add_custom_command( |