CMakeLists.txt
changeset 34 1820e2dc90ef
parent 33 c7259f0fac72
equal deleted inserted replaced
33:c7259f0fac72 34:1820e2dc90ef
    22  
    22  
    23 ## Check for build dependencies
    23 ## Check for build dependencies
    24 find_package(PkgConfig REQUIRED) 
    24 find_package(PkgConfig REQUIRED) 
    25 pkg_check_modules(GLIB REQUIRED glib-2.0) 
    25 pkg_check_modules(GLIB REQUIRED glib-2.0) 
    26 pkg_check_modules(MCABBER REQUIRED mcabber)
    26 pkg_check_modules(MCABBER REQUIRED mcabber)
       
    27 include(CheckSymbolExists)
       
    28 set(CMAKE_REQUIRED_INCLUDES ${MCABBER_INCLUDE_DIRS})
       
    29 set(CMAKE_REQUIRED_LIBRARIES ${MCABBER_LIBRARIES})
       
    30 set(CMAKE_REQUIRED_FLAGS ${MCABBER_LDFLAGS} ${MCABBER_CFLAGS})
       
    31 check_symbol_exists(MCABBER_API_HAVE_CMD_ID mcabber/api.h HAVE_MCABBER_CMD_ID)
       
    32 include(CheckCSourceCompiles)
       
    33 check_c_source_compiles("
       
    34     #include <mcabber/commands.h>
       
    35 	int process_command(const char *line, guint iscmd);
       
    36     int main (void) { }
       
    37 	" HAVE_MCABBER_PROCESS_COMMAND_RETVAL)
       
    38 
    27 link_directories(${GLIB_LIBRARY_DIRS}
    39 link_directories(${GLIB_LIBRARY_DIRS}
    28 				 ${MCABBER_LIBRARY_DIRS})
    40 				 ${MCABBER_LIBRARY_DIRS})
    29 
    41 
    30 ## Target definitions
    42 ## Target definitions
    31 add_library(marking MODULE marking.c) 
    43 add_library(marking MODULE marking.c) 
    58 endif()
    70 endif()
    59 set(CPACK_PACKAGE_FILE_NAME "${CPACK_PACKAGE_NAME}_${CPACK_PACKAGE_VERSION}_${CPACK_DEBIAN_PACKAGE_ARCHITECTURE}")
    71 set(CPACK_PACKAGE_FILE_NAME "${CPACK_PACKAGE_NAME}_${CPACK_PACKAGE_VERSION}_${CPACK_DEBIAN_PACKAGE_ARCHITECTURE}")
    60 set(CPACK_SOURCE_IGNORE_FILES "/\\\\..*;\\\\.swp;~$;/build/;\\\\.tar\\\\.;\\\\.deb;\\\\.so")
    72 set(CPACK_SOURCE_IGNORE_FILES "/\\\\..*;\\\\.swp;~$;/build/;\\\\.tar\\\\.;\\\\.deb;\\\\.so")
    61 include(CPack)
    73 include(CPack)
    62 
    74 
       
    75 ## AVV build-time dependent requirements
       
    76 if(NOT HAVE_MCABBER_CMD_ID)
       
    77     set(AVV_COMMANDS_VERSION "commands:2 | commands:1")
       
    78 elseif(HAVE_MCABBER_PROCESS_COMMAND_RETVAL)
       
    79 	set(AVV_COMMANDS_VERSION "commands:4 | commands:3")
       
    80 else()
       
    81 	set(AVV_COMMANDS_VERSION "commands:5")
       
    82 endif()
    63 configure_file(marking.avv.in marking.avv)
    83 configure_file(marking.avv.in marking.avv)
    64 
    84 
    65 ## Installation
    85 ## Installation
    66 install(TARGETS marking DESTINATION lib/mcabber) 
    86 install(TARGETS marking DESTINATION lib/mcabber) 
    67 install(FILES docs/marking.rc COPYING docs/readme.mdwn docs/todo.mdwn DESTINATION share/doc/${CPACK_PACKAGE_NAME})
    87 install(FILES docs/marking.rc COPYING docs/readme.mdwn docs/todo.mdwn DESTINATION share/doc/${CPACK_PACKAGE_NAME})
    68 install(DIRECTORY help DESTINATION share/mcabber)
    88 install(DIRECTORY help DESTINATION share/mcabber)
    69 install(FILES ${PROJECT_BINARY_DIR}/marking.avv DESTINATION share/mcabber/avv/modules RENAME marking)
    89 install(FILES ${PROJECT_BINARY_DIR}/marking.avv DESTINATION share/mcabber/avv/modules RENAME marking)
    70 
    90 
    71 ## The End ## vim: se ts=4: ##
    91 ## The End ## vim: se ts=4 sw=4: ##