X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=CMakeLists.txt;h=c09b97449125619ed50576352bca58d66d63311d;hp=6a99783adbc1d9cf9f20f90696a72591c7b8c1d7;hb=1e19afe5562bdae856aa1b356b4fc33386977628;hpb=a41481e9260de128d7f68e525c855d4a75dbe6fd diff --git a/CMakeLists.txt b/CMakeLists.txt index 6a99783a..c09b9744 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -150,8 +150,23 @@ if(CMAKE_COMPILER_IS_GNUCXX) if(CXX_W_OVERLOADED_VIRTUAL) set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Woverloaded-virtual") endif() + + # Just for miniz + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -Wextra -Wno-unused-function -fno-strict-aliasing") endif(CMAKE_COMPILER_IS_GNUCXX) +# ... and for Clang +if (CMAKE_CXX_COMPILER_ID STREQUAL "Clang") + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -Wundef -Wcast-align -Wchar-subscripts -Wall -W -Wextra -Wpointer-arith -Wformat-security -Woverloaded-virtual -fno-common -Werror=return-type") +# set(CMAKE_CXX_FLAGS_RELEASE "-O2 -DNDEBUG -DQT_NO_DEBUG") # Use CMake default +# set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g -DNDEBUG -DQT_NO_DEBUG") # Use CMake default + set(CMAKE_CXX_FLAGS_DEBUG "-g -O2 -fno-inline") + set(CMAKE_CXX_FLAGS_DEBUGFULL "-g3 -fno-inline") + set(CMAKE_CXX_FLAGS_PROFILE "-g3 -fno-inline -ftest-coverage -fprofile-arcs") + + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -Wextra -Wno-unused-function -fno-strict-aliasing") +endif() + # Mac build stuff if(APPLE AND DEPLOY) set(CMAKE_OSX_ARCHITECTURES "x86_64") @@ -319,15 +334,19 @@ if(BUILD_GUI) # Setup KDE4 support if(WITH_KDE AND NOT WITH_QT5) + # KDE has overzealous CFLAGS making miniz not compile, so save our old flags + set(_cflags ${CMAKE_C_FLAGS}) find_package(KDE4) if(KDE4_FOUND) message(STATUS "Enabling KDE4 integration") include_directories(${KDE4_INCLUDES}) add_definitions(-DHAVE_KDE ${KDE4_DEFINITIONS}) set(HAVE_KDE 1) - set(CLIENT_LIBRARIES ${CLIENT_LIBRARIES} ${KDE4_KDECORE_LIBS} ${KDE4_KDEUI_LIBRARY} ${KDE4_SOLID_LIBS} knotifyconfig) + set(CLIENT_LIBRARIES ${CLIENT_LIBRARIES} ${KDE4_KDECORE_LIBS} ${KDE4_KDEUI_LIBRARY} ${KDE4_SOLID_LIBS} ${KDE4_KNOTIFYCONFIG_LIBRARY}) # We always use external icons for KDE4 support, since we use its iconloader rather than our own set(EMBED_DATA OFF) + # Restore our old CFLAGS + set(CMAKE_C_FLAGS ${_cflags}) else(KDE4_FOUND) message(STATUS "KDE4 not found, disabling KDE integration") endif(KDE4_FOUND) @@ -392,6 +411,12 @@ if(BUILD_GUI) ) endif() +find_package(Libsnore) +if(LIBSNORE_FOUND) + add_definitions(-DHAVE_LIBSNORE -DLIBSNORE_PLUGIN_PATH="${LIBSNORE_PLUGIN_PATH}") + set(CLIENT_LIBRARIES ${CLIENT_LIBRARIES} ${LIBSNORE_LIBRARIES}) + set(HAVE_SNORENOTIFY true) +endif(LIBSNORE_FOUND) endif(BUILD_GUI) # Core-only deps