CMakeLists.txt
changeset 22 6d0d6bbf98d0
parent 20 035a59c47d69
child 24 220a7d7b8be0
--- a/CMakeLists.txt	Wed Jan 20 19:50:41 2010 +0200
+++ b/CMakeLists.txt	Wed Jan 20 19:59:55 2010 +0200
@@ -24,7 +24,16 @@
 find_package(PkgConfig REQUIRED) 
 pkg_check_modules(GLIB REQUIRED glib-2.0) 
 pkg_check_modules(GMODULE REQUIRED gmodule-2.0) 
-pkg_check_modules(LM REQUIRED loudmouth-1.0) 
+pkg_check_modules(LM REQUIRED loudmouth-1.0)
+find_program(GREP_EXECUTABLE grep DOC "Grep binary to detect functions in headers")
+if(GREP_EXECUTABLE)
+	execute_process(COMMAND ${GREP_EXECUTABLE} xmpp_is_online ${MCABBER_INCLUDE_DIR}/mcabber/xmpp.h OUTPUT_VARIABLE HAVE_XMPP_IS_ONLINE ERROR_QUIET)
+endif()
+include(CheckSymbolExists)
+set(CMAKE_REQUIRED_INCLUDES ${LM_INCLUDE_DIRS})
+set(CMAKE_REQUIRED_LIBRARIES ${LM_LIBRARIES})
+set(CMAKE_REQUIRED_FLAGS ${LM_LDFLAGS} ${LM_CFLAGS})
+check_symbol_exists(lm_connection_unregister_reply_handler loudmouth/loudmouth.h HAVE_LM_CONNECTION_UNREGISTER_REPLY_HANDLER)
 link_directories(${GLIB_LIBRARY_DIRS}
 				 ${GMODULE_LIBRARY_DIRS}
 				 ${LM_LIBRARY_DIRS})
@@ -33,6 +42,7 @@
 add_library(disco MODULE disco.c)
 
 ## Compiler setup
+configure_file(config.h.in config.h)
 include_directories(SYSTEM ${GLIB_INCLUDE_DIRS} 
                     ${GMODULE_INCLUDE_DIRS} 
                     ${LM_INCLUDE_DIRS}