CMakeLists.txt
changeset 28 2e4650583dd7
parent 27 23393a00c2c1
child 31 afcdbbce5002
equal deleted inserted replaced
27:23393a00c2c1 28:2e4650583dd7
    28 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)
    28 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)
    29 get_target_property(lua-lm_SOURCES loudmouth SOURCES)
    29 get_target_property(lua-lm_SOURCES loudmouth SOURCES)
    30 
    30 
    31 ## Packaging information
    31 ## Packaging information
    32 set(CPACK_PACKAGE_NAME liblua5.1-loudmouth)
    32 set(CPACK_PACKAGE_NAME liblua5.1-loudmouth)
    33 set(CPACK_PACKAGE_VERSION_MAJOR 0)
    33 set(CPACK_PACKAGE_VERSION "0.9.0")
    34 set(CPACK_PACKAGE_VERSION_MINOR 9)
       
    35 set(CPACK_PACKAGE_VERSION_PATCH 0)
       
    36 set(CPACK_PACKAGE_VENDOR "IsBear")
    34 set(CPACK_PACKAGE_VENDOR "IsBear")
    37 set(CPACK_PACKAGE_CONTACT "Myhailo Danylenko <isbear@ukrpost.net>")
    35 set(CPACK_PACKAGE_CONTACT "Myhailo Danylenko <isbear@ukrpost.net>")
    38 set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "Loudmouth XMPP client library lua interface")
    36 set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "Loudmouth XMPP client library lua interface")
    39 set(CPACK_PACKAGE_DESCRIPTION_FILE ${lua-lm_SOURCE_DIR}/README)
    37 set(CPACK_PACKAGE_DESCRIPTION_FILE ${lua-lm_SOURCE_DIR}/README)
    40 set(CPACK_RESOURCE_FILE_LICENSE ${lua-lm_SOURCE_DIR}/COPYING)
    38 set(CPACK_RESOURCE_FILE_LICENSE ${lua-lm_SOURCE_DIR}/COPYING)
    41 set(CPACK_RESOURCE_FILE_README ${lua-lm_SOURCE_DIR}/README)
    39 set(CPACK_RESOURCE_FILE_README ${lua-lm_SOURCE_DIR}/README)
    42 set(CPACK_RESOURCE_FILE_WELCOME ${lua-lm_SOURCE_DIR}/README)
    40 set(CPACK_RESOURCE_FILE_WELCOME ${lua-lm_SOURCE_DIR}/README)
       
    41 set(CPACK_SOURCE_GENERATOR TBZ2)
       
    42 set(CPACK_GENERATOR DEB CACHE STRING "Binary package generator, eg DEB, RPM, TGZ, NSIS...")
    43 set(CPACK_DEBIAN_PACKAGE_SECTION libs)
    43 set(CPACK_DEBIAN_PACKAGE_SECTION libs)
    44 # XXX: tmp=`tempfile`; obj=${lua-lm_BINARY_DIR}/loudmouth.so; ldd $obj > $tmp; objdump -p $obj | \grep NEEDED | sed -e 's/.*NEEDED *//' | xargs -I "{}" grep -F "{}" $tmp | sed -e 's/.*=> *\(\S*\).*/\1/' | xargs dpkg -S | cut -d : -f 1 | sort -u ; \rm $tmp
    44 # XXX: tmp=`tempfile`; obj=${lua-lm_BINARY_DIR}/loudmouth.so; ldd $obj > $tmp; objdump -p $obj | \grep NEEDED | sed -e 's/.*NEEDED *//' | xargs -I "{}" grep -F "{}" $tmp | sed -e 's/.*=> *\(\S*\).*/\1/' | xargs dpkg -S | cut -d : -f 1 | sort -u ; \rm $tmp
    45 # TODO: versions
    45 # TODO: versions
    46 set(CPACK_DEBIAN_PACKAGE_DEPENDS "libc6, libglib2.0-0, liblua5.1-0, libloudmouth1-0")
    46 set(CPACK_DEBIAN_PACKAGE_DEPENDS "libc6, libglib2.0-0, liblua5.1-0, libloudmouth1-0")
    47 set(CPACK_SOURCE_GENERATOR TBZ2)
    47 find_program(DPKG_EXECUTABLE dpkg)
    48 set(CPACK_GENERATOR DEB CACHE STRING "Binary package generator, eg DEB, RPM, TGZ, NSIS...")
    48 if(DPKG_EXECUTABLE)
    49 # FIXME: Detect architecture. How? Though, it anyway produces nonconformant deb names...
    49 	execute_process(COMMAND ${DPKG_EXECUTABLE} --print-architecture OUTPUT_VARIABLE CPACK_DEBIAN_PACKAGE_ARCHITECTURE OUTPUT_STRIP_TRAILING_WHITESPACE)
    50 set(CPACK_SYSTEM_NAME i386)
    50 else()
       
    51 	set(CPACK_DEBIAN_PACKAGE_ARCHITECTURE i386 CACHE STRING "Architecture of package")
       
    52 endif()
       
    53 set(CPACK_PACKAGE_FILE_NAME "${CPACK_PACKAGE_NAME}_${CPACK_PACKAGE_VERSION}_${CPACK_DEBIAN_PACKAGE_ARCHITECTURE}")
    51 # XXX: Set package name directly to get rid of -Sources?
    54 # XXX: Set package name directly to get rid of -Sources?
    52 set(CPACK_SOURCE_IGNORE_FILES "/\\\\..*;\\\\.swp;~$;/build/;\\\\.tar\\\\.;\\\\.deb;\\\\.so")
    55 set(CPACK_SOURCE_IGNORE_FILES "/\\\\..*;\\\\.swp;~$;/build/;\\\\.tar\\\\.;\\\\.deb;\\\\.so")
    53 include(CPack)
    56 include(CPack)
    54 
    57 
    55 ## Gather information about system
    58 ## Gather information about system