X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=CMakeLists.txt;h=c82460948904f6b9fa35ecbdad646cd7be948f27;hp=69945fc930e7a443cbcca826616942bc772b2453;hb=7f586ab22eee4c914901c608304d1da144bc3789;hpb=75b56fa155ec64fbe2a0a1a1aefe79f80646767c diff --git a/CMakeLists.txt b/CMakeLists.txt index 69945fc9..c8246094 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -49,19 +49,8 @@ set(CMAKE_BUILD_WITH_INSTALL_RPATH 1) # Enable various flags on gcc if(CMAKE_COMPILER_IS_GNUCXX) - include(CheckCXXCompilerFlag) - check_cxx_compiler_flag(-Wall HAVE_WALL) - if(HAVE_WALL) - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall") - endif(HAVE_WALL) - check_cxx_compiler_flag(-Wextra HAVE_WEXTRA) - if(HAVE_WEXTRA) - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wextra") - endif(HAVE_WEXTRA) - check_cxx_compiler_flag(-ansi HAVE_ANSI) - if(HAVE_ANSI) - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -ansi") - endif(HAVE_ANSI) + # Let's just hope that all gccs support these options and skip the tests... + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -ansi -Wall -Wextra -Wnon-virtual-dtor") endif(CMAKE_COMPILER_IS_GNUCXX) set(QT_MIN_VERSION "4.4.0") @@ -112,7 +101,6 @@ if(HAVE_EXECINFO) add_definitions(-DHAVE_EXECINFO) endif(HAVE_EXECINFO) - # Select a Qt installation here, if you don't want to use system Qt if(QT) # FindQt4 will look for the qmake binary in $PATH, so we just prepend the Qt dir @@ -126,31 +114,48 @@ set(QT_DONT_USE_QTGUI 1) include(${QT_USE_FILE}) include_directories(${QT_INCLUDES}) -# Set up OpenSSL +# Setup OpenSSL if(WITH_OPENSSL) find_package(OpenSSL) +else(WITH_OPENSSL) + message(STATUS "Disabling OpenSSL support") endif(WITH_OPENSSL) + if(OPENSSL_FOUND) if(NOT QT_DEFINITIONS MATCHES "QT_NO_OPENSSL") + message(STATUS "Found OpenSSL support in Qt") add_definitions(-DHAVE_SSL) set(HAVE_SSL true) + set(MOC_DEFINES ${MOC_DEFINES} -DHAVE_SSL) + else(NOT QT_DEFINITIONS MATCHES "QT_NO_OPENSSL") + message(STATUS "No OpenSSL support found in Qt, disabling") endif(NOT QT_DEFINITIONS MATCHES "QT_NO_OPENSSL") else(OPENSSL_FOUND) add_definitions(-DQT_NO_OPENSSL) endif(OPENSSL_FOUND) -if(WITH_DBUS AND QT_QTDBUS_FOUND) - add_definitions(-DHAVE_DBUS) - set(LINK_DBUS DBUS) - set(HAVE_DBUS true) -endif(WITH_DBUS AND QT_QTDBUS_FOUND) +# Setup D-Bus support +if(WITH_DBUS) + if(QT_QTDBUS_FOUND) + message(STATUS "Found QtDBus, enabling D-Bus support") + add_definitions(-DHAVE_DBUS) + set(LINK_DBUS DBUS) + set(HAVE_DBUS true) + set(MOC_DEFINES ${MOC_DEFINES} -DHAVE_DBUS) + else(QT_QTDBUS_FOUND) + message(STATUS "QtDBus not found, disabling D-Bus support") + endif(QT_QTDBUS_FOUND) +else(WITH_DBUS) + message(STATUS "Disabling D-Bus support") +endif(WITH_DBUS) # We need to create a version.gen # For this, we create our genversion binary and make sure it is run every time. add_executable(genversion ${CMAKE_SOURCE_DIR}/src/common/genversion.cpp) target_link_libraries(genversion ${QT_LIBRARIES} ${QT_CORE_LIB_DEPENDENCIES}) -add_custom_target(genversion_run ALL ${CMAKE_BINARY_DIR}/genversion +get_target_property(GENVERSION_EXECUTABLE genversion LOCATION) +add_custom_target(genversion_run ALL ${GENVERSION_EXECUTABLE} ${CMAKE_SOURCE_DIR} ${CMAKE_BINARY_DIR}/src/common/version.gen) add_dependencies(genversion_run genversion) @@ -223,7 +228,7 @@ endmacro(setup_qt4_variables) # Now we have everything, so just glue the right pieces together :) if(WANT_CORE) setup_qt4_variables(NETWORK SCRIPT SQL) - add_executable(quasselcore ${CMAKE_SOURCE_DIR}/src/common/main.cpp + add_executable(quasselcore src/common/main.cpp ${RC_SQL} ${RC_I18N} ${WIN32_RC}) set_target_properties(quasselcore PROPERTIES COMPILE_FLAGS "-DQT_NETWORK_LIB -DQT_SCRIPT_LIB -DQT_SQL_LIB -DBUILD_CORE") @@ -233,7 +238,7 @@ endif(WANT_CORE) if(WANT_QTCLIENT) setup_qt4_variables(${LINK_DBUS} GUI NETWORK) - add_executable(quasselclient WIN32 ${CMAKE_SOURCE_DIR}/src/common/main.cpp + add_executable(quasselclient WIN32 src/common/main.cpp ${RC_ICONS} ${RC_QUASSEL_ICONS} ${RC_I18N} ${WIN32_RC}) set_target_properties(quasselclient PROPERTIES COMPILE_FLAGS "-DQT_GUI_LIB -DQT_NETWORK_LIB -DBUILD_QTUI") @@ -243,7 +248,7 @@ endif(WANT_QTCLIENT) if(WANT_MONO) setup_qt4_variables(${LINK_DBUS} GUI NETWORK SCRIPT SQL) - add_executable(quassel WIN32 ${CMAKE_SOURCE_DIR}/src/common/main.cpp + add_executable(quassel WIN32 src/common/main.cpp src/qtui/monoapplication.cpp ${RC_ICONS} ${RC_QUASSEL_ICONS} ${RC_SQL} ${RC_I18N} ${WIN32_RC}) set_target_properties(quassel PROPERTIES COMPILE_FLAGS "-DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_SCRIPT_LIB -DQT_SQL_LIB -DBUILD_MONO")