- set(HEADERS ${HEADERS} keyevent.h)
-endif(HAVE_QCA2)
-
-if(APPLE)
- set(SOURCES ${SOURCES} mac_utils.cpp)
- set(HEADERS ${HEADERS} mac_utils.h)
-endif(APPLE)
-
-if(CMAKE_HOST_WIN32)
- set(SOURCES ${SOURCES} logbacktrace_win.cpp)
-endif(CMAKE_HOST_WIN32)
-if(CMAKE_HOST_UNIX)
- set(SOURCES ${SOURCES} logbacktrace_unix.cpp)
-endif(CMAKE_HOST_UNIX)
-
-include_directories(${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CURRENT_SOURCE_DIR} ${QUASSEL_QT_INCLUDES}) # for version.inc and version.gen
-
-if(NOT WITH_QT5)
- qt4_wrap_cpp(MOC ${MOC_HDRS})
-endif(NOT WITH_QT5)
-
-set_directory_properties(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES version.gen)
-
-add_library(mod_common STATIC ${SOURCES} ${HEADERS} ${MOC})
-set_target_properties(mod_common PROPERTIES COMPILE_FLAGS "${QUASSEL_QT_COMPILEFLAGS}")
-
-if(APPLE)
- target_link_libraries(mod_common "-framework CoreServices" "-framework CoreFoundation")
-endif(APPLE)
-
-target_link_libraries(mod_common ${CMAKE_DL_LIBS})
+endif()
+
+if (ZLIB_FOUND)
+ add_definitions(-DHAVE_ZLIB)
+ include_directories(${ZLIB_INCLUDE_DIRS})
+else()
+ set(SOURCES ${SOURCES} ../../3rdparty/miniz/miniz.c)
+endif()
+
+if (HAVE_SYSLOG)
+ add_definitions(-DHAVE_SYSLOG)
+endif()
+
+if (APPLE)
+ set(SOURCES ${SOURCES} mac_utils.cpp)
+endif()
+
+if (WIN32)
+ set(SOURCES ${SOURCES} logbacktrace_win.cpp windowssignalwatcher.cpp)
+else()
+ if (EXECINFO_FOUND)
+ add_definitions(-DHAVE_EXECINFO)
+ include_directories(${EXECINFO_INCLUDES})
+ endif()
+ set(SOURCES ${SOURCES} logbacktrace_unix.cpp posixsignalwatcher.cpp)
+endif()
+
+qt5_add_resources(SOURCES ${COMMON_RCS})
+
+add_library(mod_common STATIC ${SOURCES})
+qt5_use_modules(mod_common Core Network)
+
+if (APPLE)
+ target_link_libraries(mod_common "-framework CoreServices" "-framework CoreFoundation")
+endif()
+
+target_link_libraries(mod_common ${CMAKE_DL_LIBS} ${EXECINFO_LIBRARIES})
+
+if(ZLIB_FOUND)
+ target_link_libraries(mod_common ${ZLIB_LIBRARIES})
+endif()
+
+# This is needed so translations are generated before trying to build the qrc.
+# Should probably find a nicer solution with proper dependencies between the involved files, though...
+add_dependencies(mod_common po)