CMakeLists.txt
changeset 32 493d5d5198c8
parent 31 afcdbbce5002
child 34 6bfad7c963f4
--- a/CMakeLists.txt	Sun Jan 17 02:58:44 2010 +0200
+++ b/CMakeLists.txt	Sun Jan 17 11:52:35 2010 +0200
@@ -24,10 +24,55 @@
 set(TEST_TO "test@jabber.org/mcabber" CACHE STRING "Testing: Target jabber entity")
 set(TEST_FINGERPRINT "00:11:22:33:44:55:66:77:88:99:aa:bb:cc:dd:ee:ff" CACHE STRING "Testing: Your jabber server SSL fingerprint")
 
+## Gather information about system
+find_package(Lua51 REQUIRED)
+find_program(LUA_EXECUTABLE lua lua5.1 luanoreadline)
+if(LUA_EXECUTABLE)
+	execute_process(COMMAND ${LUA_EXECUTABLE} -e "print ( package.path )" OUTPUT_VARIABLE LUA_PATH OUTPUT_STRIP_TRAILING_WHITESPACE)
+	execute_process(COMMAND ${LUA_EXECUTABLE} -e "print ( package.cpath )" OUTPUT_VARIABLE LUA_CPATH OUTPUT_STRIP_TRAILING_WHITESPACE)
+endif()
+find_package(PkgConfig REQUIRED)
+pkg_check_modules(GLIB REQUIRED glib-2.0)
+pkg_check_modules(LM REQUIRED loudmouth-1.0)
+include(CheckFunctionExists)
+set(CMAKE_REQUIRED_INCLUDES ${LM_INCLUDE_DIRS})
+set(CMAKE_REQUIRED_LIBRARIES ${LM_LIBRARIES})
+set(CMAKE_REQUIRED_FLAGS ${LM_LDFLAGS} ${LM_CFLAGS})
+check_function_exists(lm_connection_get_keep_alive_rate HAVE_LM_CONNECTION_GET_KEEP_ALIVE_RATE)
+check_function_exists(lm_connection_unregister_reply_handler HAVE_LM_CONNECTION_UNREGISTER_REPLY_HANDLER)
+find_package(Perl)
+# (this should be before targets definitions)
+link_directories(${LUA_LIBRARY_DIRS} ${GLIB_LIBRARY_DIRS} ${LM_LIBRARY_DIRS})
+
 ## Define targets
 add_library(loudmouth MODULE util.c lm_types.c lm_proxy.c lm_ssl.c lm_connection.c lm_message.c lm_message_node.c lm_message_handler.c lm.c)
 get_target_property(lua-lm_SOURCES loudmouth SOURCES)
 
+## Set up compiler
+configure_file(config.h.in config.h)
+include_directories(SYSTEM ${LUA_INCLUDE_DIR} ${GLIB_INCLUDE_DIRS} ${LM_INCLUDE_DIRS})
+target_link_libraries(loudmouth ${LUA_LIBRARIES} ${GLIB_LIBRARIES} ${LM_LIBRARIES})
+include_directories(${lua-lm_SOURCE_DIR} ${lua-lm_BINARY_DIR})
+set_target_properties(loudmouth PROPERTIES PREFIX "")
+
+## Extra targets
+if(PERL_FOUND)
+	add_custom_command(OUTPUT ${lua-lm_BINARY_DIR}/loudmouth.html COMMAND ${PERL_EXECUTABLE} ${lua-lm_SOURCE_DIR}/docgen.pl ${lua-lm_SOURCES} > ${lua-lm_BINARY_DIR}/loudmouth.html DEPENDS ${lua-lm_SOURCE_DIR}/docgen.pl ${lua-lm_SOURCES} WORKING_DIRECTORY ${lua-lm_SOURCE_DIR})
+	add_custom_target(doc ALL DEPENDS ${lua-lm_BINARY_DIR}/loudmouth.html)
+endif()
+if(LUA_EXECUTABLE)
+	add_custom_target(test COMMAND env "LUA_PATH=${lua-lm_SOURCE_DIR}/?.lua;${LUA_PATH}" "LUA_CPATH=${lua-lm_SOURCE_DIR}/?.so;${lua-lm_BINARY_DIR}/?.so;${LUA_CPATH}" "${LUA_EXECUTABLE}" "${lua-lm_SOURCE_DIR}/test.lua" "${TEST_USER}" "${TEST_PASSWORD}" "${TEST_TO}" "${TEST_FINGERPRINT}" DEPENDS loudmouth VERBATIM)
+endif()
+
+## Set up installer
+install(TARGETS loudmouth DESTINATION lib/lua/5.1)
+install(FILES lm.lua DESTINATION share/lua/5.1)
+install(FILES test.lua DESTINATION share/doc/${CPACK_PACKAGE_NAME}/examples)
+if(PERL_FOUND)
+	install(FILES ${lua-lm_BINARY_DIR}/loudmouth.html DESTINATION share/doc/${CPACK_PACKAGE_NAME})
+endif()
+install(FILES README TODO COPYING DESTINATION share/doc/${CPACK_PACKAGE_NAME})
+
 ## Packaging information
 set(CPACK_PACKAGE_NAME liblua5.1-loudmouth)
 set(CPACK_PACKAGE_VERSION "0.9.0")
@@ -55,48 +100,4 @@
 set(CPACK_SOURCE_IGNORE_FILES "/\\\\..*;\\\\.swp;~$;/build/;\\\\.tar\\\\.;\\\\.deb;\\\\.so")
 include(CPack)
 
-## Gather information about system
-find_package(Lua51 REQUIRED)
-find_program(LUA_EXECUTABLE lua lua5.1 luanoreadline)
-if(LUA_EXECUTABLE)
-	execute_process(COMMAND ${LUA_EXECUTABLE} -e "print ( package.path )" OUTPUT_VARIABLE LUA_PATH OUTPUT_STRIP_TRAILING_WHITESPACE)
-	execute_process(COMMAND ${LUA_EXECUTABLE} -e "print ( package.cpath )" OUTPUT_VARIABLE LUA_CPATH OUTPUT_STRIP_TRAILING_WHITESPACE)
-endif()
-find_package(PkgConfig REQUIRED)
-pkg_check_modules(GLIB REQUIRED glib-2.0)
-pkg_check_modules(LM REQUIRED loudmouth-1.0)
-include(CheckFunctionExists)
-set(CMAKE_REQUIRED_INCLUDES ${LM_INCLUDE_DIRS})
-set(CMAKE_REQUIRED_LIBRARIES ${LM_LIBRARIES})
-check_function_exists(lm_connection_get_keep_alive_rate HAVE_LM_CONNECTION_GET_KEEP_ALIVE_RATE)
-check_function_exists(lm_connection_unregister_reply_handler HAVE_LM_CONNECTION_UNREGISTER_REPLY_HANDLER)
-find_package(Perl)
-
-## Set up compiler
-configure_file(config.h.in config.h)
-include_directories(SYSTEM ${LUA_INCLUDE_DIR} ${GLIB_INCLUDE_DIRS} ${LM_INCLUDE_DIRS})
-target_link_libraries(loudmouth ${LUA_LIBRARIES} ${GLIB_LIBRARIES} ${LM_LIBRARIES})
-include_directories(${lua-lm_SOURCE_DIR} ${lua-lm_BINARY_DIR})
-set_target_properties(loudmouth PROPERTIES PREFIX "")
-
-## Extra targets
-if(PERL_FOUND)
-	add_custom_command(OUTPUT ${lua-lm_BINARY_DIR}/loudmouth.html COMMAND ${PERL_EXECUTABLE} ${lua-lm_SOURCE_DIR}/docgen.pl ${lua-lm_SOURCES} > ${lua-lm_BINARY_DIR}/loudmouth.html DEPENDS ${lua-lm_SOURCE_DIR}/docgen.pl ${lua-lm_SOURCES} WORKING_DIRECTORY ${lua-lm_SOURCE_DIR})
-	add_custom_target(doc ALL DEPENDS ${lua-lm_BINARY_DIR}/loudmouth.html)
-endif()
-if(LUA_EXECUTABLE)
-	add_custom_target(test COMMAND env "LUA_PATH=${lua-lm_SOURCE_DIR}/?.lua;${LUA_PATH}" "LUA_CPATH=${lua-lm_SOURCE_DIR}/?.so;${lua-lm_BINARY_DIR}/?.so;${LUA_CPATH}" "${LUA_EXECUTABLE}" "${lua-lm_SOURCE_DIR}/test.lua" "${TEST_USER}" "${TEST_PASSWORD}" "${TEST_TO}" "${TEST_FINGERPRINT}" DEPENDS loudmouth VERBATIM)
-endif()
-
-## Set up installer
-install(TARGETS loudmouth DESTINATION lib/lua/5.1)
-install(FILES lm.lua DESTINATION share/lua/5.1)
-install(FILES test.lua DESTINATION share/doc/${CPACK_PACKAGE_NAME}/examples)
-if(PERL_FOUND)
-	install(FILES ${lua-lm_BINARY_DIR}/loudmouth.html DESTINATION share/doc/${CPACK_PACKAGE_NAME})
-endif()
-install(FILES README DESTINATION share/doc/${CPACK_PACKAGE_NAME})
-install(FILES TODO DESTINATION share/doc/${CPACK_PACKAGE_NAME})
-install(FILES COPYING DESTINATION share/doc/${CPACK_PACKAGE_NAME})
-
 ## The End ## vim: se ts=4: ##