Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/owncloud/client.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--cmake/modules/QtVersionAbstraction.cmake209
-rw-r--r--src/CMakeLists.txt15
-rw-r--r--test/CMakeLists.txt31
3 files changed, 76 insertions, 179 deletions
diff --git a/cmake/modules/QtVersionAbstraction.cmake b/cmake/modules/QtVersionAbstraction.cmake
index 5bd853c84..0a13fe5e0 100644
--- a/cmake/modules/QtVersionAbstraction.cmake
+++ b/cmake/modules/QtVersionAbstraction.cmake
@@ -5,67 +5,47 @@
include (MacroOptionalFindPackage)
include (MacroLogFeature)
-option(BUILD_WITH_QT4 "Build with Qt4 no matter if Qt5 was found" OFF)
-
-if( BUILD_WITH_QT4 )
- message(STATUS "Search for Qt5 was disabled by option BUILD_WITH_QT4")
-else( BUILD_WITH_QT4 )
- find_package(Qt5Core QUIET)
-endif( BUILD_WITH_QT4 )
-
-if( Qt5Core_FOUND )
- message(STATUS "Found Qt5 core, checking for further dependencies...")
- find_package(Qt5Network REQUIRED)
- find_package(Qt5Xml REQUIRED)
- find_package(Qt5Concurrent REQUIRED)
- if(UNIT_TESTING)
- find_package(Qt5Test REQUIRED)
- endif()
- if(NOT TOKEN_AUTH_ONLY)
- find_package(Qt5Widgets REQUIRED)
- if(APPLE)
- find_package(Qt5MacExtras REQUIRED)
- endif(APPLE)
-
- if(NOT NO_SHIBBOLETH)
- find_package(Qt5WebKitWidgets)
- find_package(Qt5WebKit)
- if(NOT Qt5WebKitWidgets_FOUND)
- message(FATAL_ERROR "Qt5WebKit required for Shibboleth. Use -DNO_SHIBBOLETH=1 to disable it.")
- endif()
+find_package(Qt5Core REQUIRED)
+find_package(Qt5Network REQUIRED)
+find_package(Qt5Xml REQUIRED)
+find_package(Qt5Concurrent REQUIRED)
+if(UNIT_TESTING)
+ find_package(Qt5Test REQUIRED)
+endif()
+
+if(NOT TOKEN_AUTH_ONLY)
+ find_package(Qt5Widgets REQUIRED)
+ if(APPLE)
+ find_package(Qt5MacExtras REQUIRED)
+ endif(APPLE)
+
+ if(NOT NO_SHIBBOLETH)
+ find_package(Qt5WebKitWidgets)
+ find_package(Qt5WebKit)
+ if(NOT Qt5WebKitWidgets_FOUND)
+ message(FATAL_ERROR "Qt5WebKit required for Shibboleth. Use -DNO_SHIBBOLETH=1 to disable it.")
endif()
endif()
+endif()
-else( Qt5Core_FOUND )
- if(WIN32 OR APPLE)
- if (NOT BUILD_WITH_QT4)
- message(FATAL_ERROR "Qt 5 not found, but application depends on Qt5 on Windows and Mac OS X")
- endif ()
- endif(WIN32 OR APPLE)
-endif( Qt5Core_FOUND )
-
-
-if( Qt5Core_FOUND )
- message(STATUS "Using Qt 5!")
-
- # We need this to find the paths to qdbusxml2cpp and co
- if (WITH_DBUS)
- find_package(Qt5DBus REQUIRED)
- include_directories(${Qt5DBus_INCLUDES})
- add_definitions(${Qt5DBus_DEFINITIONS})
- endif (WITH_DBUS)
- include_directories(${Qt5Core_INCLUDES})
- add_definitions(${Qt5Core_DEFINITIONS})
- if (NOT WIN32) #implied on Win32
- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fPIC")
- endif(NOT WIN32)
+# We need this to find the paths to qdbusxml2cpp and co
+if (WITH_DBUS)
+ find_package(Qt5DBus REQUIRED)
+ include_directories(${Qt5DBus_INCLUDES})
+ add_definitions(${Qt5DBus_DEFINITIONS})
+endif (WITH_DBUS)
+include_directories(${Qt5Core_INCLUDES})
+add_definitions(${Qt5Core_DEFINITIONS})
+if (NOT WIN32) #implied on Win32
+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fPIC")
+endif(NOT WIN32)
# set(CMAKE_CXX_FLAGS "${Qt5Widgets_EXECUTABLE_COMPILE_FLAGS}")
- if(APPLE AND NOT TOKEN_AUTH_ONLY)
- include_directories(${Qt5MacExtras_INCLUDE_DIRS})
- add_definitions(${Qt5MacExtras_DEFINITIONS})
- set (QT_LIBRARIES ${QT_LIBRARIES} ${Qt5MacExtras_LIBRARIES})
- endif()
+if(APPLE AND NOT TOKEN_AUTH_ONLY)
+ include_directories(${Qt5MacExtras_INCLUDE_DIRS})
+ add_definitions(${Qt5MacExtras_DEFINITIONS})
+ set (QT_LIBRARIES ${QT_LIBRARIES} ${Qt5MacExtras_LIBRARIES})
+endif()
if(NOT BUILD_LIBRARIES_ONLY)
macro(qt_wrap_ui)
@@ -76,9 +56,9 @@ else()
SET(QT_UIC_EXECUTABLE "")
endif()
- macro(qt_add_resources)
- qt5_add_resources(${ARGN})
- endmacro()
+macro(qt_add_resources)
+ qt5_add_resources(${ARGN})
+endmacro()
if(NOT TOKEN_AUTH_ONLY)
find_package(Qt5LinguistTools)
@@ -95,103 +75,30 @@ else()
endmacro()
endif()
- macro(qt_add_dbus_interface)
- qt5_add_dbus_interface(${ARGN})
- endmacro()
-
- macro(qt_add_dbus_adaptor)
- qt5_add_dbus_adaptor(${ARGN})
- endmacro()
-
- macro(qt_wrap_cpp)
- qt5_wrap_cpp(${ARGN})
- endmacro()
-
- macro(install_qt_executable)
- install_qt5_executable(${ARGN})
- endmacro()
+macro(qt_add_dbus_interface)
+ qt5_add_dbus_interface(${ARGN})
+endmacro()
- macro(setup_qt)
- endmacro()
+macro(qt_add_dbus_adaptor)
+ qt5_add_dbus_adaptor(${ARGN})
+endmacro()
- set(QT_RCC_EXECUTABLE "${Qt5Core_RCC_EXECUTABLE}")
+macro(qt_wrap_cpp)
+ qt5_wrap_cpp(${ARGN})
+endmacro()
- #Enable deprecated symbols
- add_definitions("-DQT_DISABLE_DEPRECATED_BEFORE=0")
+macro(install_qt_executable)
+ install_qt5_executable(${ARGN})
+endmacro()
- add_definitions("-DQT_USE_QSTRINGBUILDER") #optimize string concatenation
- add_definitions("-DQT_MESSAGELOGCONTEXT") #enable function name and line number in debug output
-endif( Qt5Core_FOUND )
+macro(setup_qt)
+endmacro()
-if(NOT Qt5Core_FOUND)
- message(STATUS "Could not find Qt5, searching for Qt4 instead...")
+set(QT_RCC_EXECUTABLE "${Qt5Core_RCC_EXECUTABLE}")
- set(NEEDED_QT4_COMPONENTS "QtCore" "QtXml" "QtNetwork" "QtGui" "QtWebkit")
- if( BUILD_TESTS )
- list(APPEND NEEDED_QT4_COMPONENTS "QtTest")
- endif()
+#Enable deprecated symbols
+add_definitions("-DQT_DISABLE_DEPRECATED_BEFORE=0")
- find_package(Qt4 4.7.0 COMPONENTS ${NEEDED_QT4_COMPONENTS} )
- macro_log_feature(QT4_FOUND "Qt" "A cross-platform application and UI framework" "http://www.qt-project.org" TRUE "" "If you see this, although libqt4-devel is installed, check whether the \n qtwebkit-devel package and whatever contains QtUiTools is installed too")
-
- macro(qt5_use_modules)
- endmacro()
-
- macro(qt_wrap_ui)
- qt4_wrap_ui(${ARGN})
- endmacro()
-
- macro(qt_add_resources)
- qt4_add_resources(${ARGN})
- endmacro()
-
- macro(qt_add_translation)
- qt4_add_translation(${ARGN})
- endmacro()
-
- macro(qt_add_dbus_interface)
- qt4_add_dbus_interface(${ARGN})
- endmacro()
-
- macro(qt_add_dbus_adaptor)
- qt4_add_dbus_adaptor(${ARGN})
- endmacro()
-
- macro(qt_wrap_cpp)
- qt4_wrap_cpp(${ARGN})
- endmacro()
-
- macro(install_qt_executable)
- install_qt4_executable(${ARGN})
- endmacro()
-
- macro(setup_qt)
- set(QT_USE_QTGUI TRUE)
- set(QT_USE_QTSQL TRUE)
- set(QT_USE_QTNETWORK TRUE)
- set(QT_USE_QTXML TRUE)
- set(QT_USE_QTWEBKIT TRUE)
- set(QT_USE_QTDBUS TRUE)
-
- include( ${QT_USE_FILE} )
- endmacro()
-
- if (CMAKE_COMPILER_IS_GNUCC)
- execute_process(COMMAND ${CMAKE_C_COMPILER} -dumpversion
- OUTPUT_VARIABLE GCC_VERSION)
- if (GCC_VERSION VERSION_GREATER 4.7 OR GCC_VERSION VERSION_EQUAL 4.7)
- add_definitions("-DQ_DECL_OVERRIDE=override")
- else()
- add_definitions("-DQ_DECL_OVERRIDE=")
- endif()
- else() #clang or others
- add_definitions("-DQ_DECL_OVERRIDE=override")
- endif()
-
-endif()
+add_definitions("-DQT_USE_QSTRINGBUILDER") #optimize string concatenation
+add_definitions("-DQT_MESSAGELOGCONTEXT") #enable function name and line number in debug output
-if( Qt5Core_DIR )
- set( HAVE_QT5 TRUE )
-else( Qt5Core_DIR )
- set( HAVE_QT5 FALSE )
-endif( Qt5Core_DIR )
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 4a7d756d4..1b53279d2 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -6,28 +6,19 @@ set(synclib_NAME ${APPLICATION_EXECUTABLE}sync)
include(QtVersionAbstraction)
setup_qt()
-if(HAVE_QT5 AND NOT BUILD_WITH_QT4)
- if (${Qt5Core_VERSION_MAJOR} EQUAL "5")
- if (${Qt5Core_VERSION_MINOR} EQUAL "4" OR ${Qt5Core_VERSION_MINOR} GREATER 4)
+if (${Qt5Core_VERSION_MAJOR} EQUAL "5")
+ if (${Qt5Core_VERSION_MINOR} EQUAL "6" OR ${Qt5Core_VERSION_MINOR} GREATER 6)
else()
- message(STATUS "If possible compile me with Qt 5.4 or higher.")
+ message(STATUS "If possible compile me with Qt 5.6 or higher.")
endif()
- endif()
-else()
- message(STATUS "If possible compile me with Qt 5.4 or higher.")
endif()
-
if (APPLE)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -stdlib=libc++")
endif()
if(NOT TOKEN_AUTH_ONLY)
- if (Qt5Core_DIR)
find_package(Qt5Keychain REQUIRED)
- else()
- find_package(QtKeychain REQUIRED)
- endif()
endif()
add_subdirectory(libsync)
diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt
index 2f94501ee..c9726d584 100644
--- a/test/CMakeLists.txt
+++ b/test/CMakeLists.txt
@@ -33,22 +33,21 @@ owncloud_add_test(XmlParse "")
owncloud_add_test(ChecksumValidator "")
owncloud_add_test(ExcludedFiles "")
-if(HAVE_QT5 AND NOT BUILD_WITH_QT4)
- owncloud_add_test(FileSystem "")
- owncloud_add_test(Utility "")
- owncloud_add_test(SyncEngine "syncenginetestutils.h")
- owncloud_add_test(SyncFileStatusTracker "syncenginetestutils.h")
- owncloud_add_test(ChunkingNg "syncenginetestutils.h")
- owncloud_add_test(UploadReset "syncenginetestutils.h")
- owncloud_add_test(AllFilesDeleted "syncenginetestutils.h")
- owncloud_add_test(FolderWatcher "${FolderWatcher_SRC}")
-
- if( UNIX AND NOT APPLE )
- owncloud_add_test(InotifyWatcher "${FolderWatcher_SRC}")
- endif(UNIX AND NOT APPLE)
-
- owncloud_add_benchmark(LargeSync "syncenginetestutils.h")
-endif(HAVE_QT5 AND NOT BUILD_WITH_QT4)
+
+owncloud_add_test(FileSystem "")
+owncloud_add_test(Utility "")
+owncloud_add_test(SyncEngine "syncenginetestutils.h")
+owncloud_add_test(SyncFileStatusTracker "syncenginetestutils.h")
+owncloud_add_test(ChunkingNg "syncenginetestutils.h")
+owncloud_add_test(UploadReset "syncenginetestutils.h")
+owncloud_add_test(AllFilesDeleted "syncenginetestutils.h")
+owncloud_add_test(FolderWatcher "${FolderWatcher_SRC}")
+
+if( UNIX AND NOT APPLE )
+ owncloud_add_test(InotifyWatcher "${FolderWatcher_SRC}")
+endif(UNIX AND NOT APPLE)
+
+owncloud_add_benchmark(LargeSync "syncenginetestutils.h")
SET(FolderMan_SRC ../src/gui/folderman.cpp)
list(APPEND FolderMan_SRC ../src/gui/folder.cpp )