# HG changeset patch # User Myhailo Danylenko # Date 1343493452 -10800 # Node ID c80eb5663234599a117dea1d70d85b142887976d # Parent 94b6e4aa74a35984420faaecfaa98a3911ba14c9 Add .diff to add-cmake (test) diff -r 94b6e4aa74a3 -r c80eb5663234 add-cmake --- a/add-cmake Sat Jul 28 19:04:29 2012 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,425 +0,0 @@ -# HG changeset patch -# Parent 9dbc874e6cf72a133e8568ae28fd254c6028d60a -[work-in-progress] Add possibility to build with CMake - -diff -r 9dbc874e6cf7 .hgignore ---- a/.hgignore Fri Jul 20 17:29:26 2012 +0300 -+++ b/.hgignore Fri Jul 20 17:29:52 2012 +0300 -@@ -34,3 +34,5 @@ - tags - mcabber/ptodo - mcabber/ppatches -+ -+mcabber/build -diff -r 9dbc874e6cf7 mcabber/CMakeLists.txt ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ b/mcabber/CMakeLists.txt Fri Jul 20 17:29:52 2012 +0300 -@@ -0,0 +1,296 @@ -+## Copyright 2010-2012 Myhailo Danylenko -+# This file is part of mcabber. -+# -+# mcabber is free software: you can redistribute it and/or modify -+# it under the terms of the GNU General Public License as published by -+# the Free Software Foundation, either version 2 of the License, or -+# (at your option) any later version. -+# -+# This program is distributed in the hope that it will be useful, -+# but WITHOUT ANY WARRANTY; without even the implied warranty of -+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -+# GNU General Public License for more details. -+# -+# You should have received a copy of the GNU General Public License -+# along with this program. If not, see . -+ -+cmake_minimum_required ( VERSION 2.6 ) -+project ( mcabber C ) -+set ( PROJECT_VERSION "0.10.2-dev" ) -+ -+## User settable options -+option ( ENABLE_DEBUG "Enable debugging output" OFF ) # XXX is it really used? -+option ( USE_SIGWINCH "Compile with SIGWINCH handler" OFF ) -+option ( XEP0022 "Enable obsolete Message Events (XEP-0022)" OFF ) # + XEP0085? -+option ( MODULES_ENABLE "Enable dynamic module loading" ON ) -+option ( WANT_LIBIDN "Compile with libidn support" ON ) -+option ( WANT_GPGME "Compile with PGP support (libgpgme required)" ON ) -+option ( WANT_OTR "Compile with OTR support" OFF ) -+option ( WANT_ENCHANT "Use enchant for spell-checking" OFF ) -+option ( WANT_ASPELL "Use aspell for spell-checking" OFF ) -+option ( ENABLE_HGCSET "Report hg changeset in version string" OFF ) -+ -+# FIXME -+set ( DATA_DIR "${CMAKE_INSTALL_PREFIX}/share" CACHE PATH "Path to data files" ) -+set ( PKGLIB_DIR "${CMAKE_INSTALL_PREFIX}/lib/${PROJECT_NAME}" CACHE PATH "Path to modules" ) -+ -+set ( MCABBER_BRANCH "experimental" ) -+set ( MCABBER_VERSION ${PROJECT_VERSION} ) -+ -+## Check for build dependencies -+find_package(PkgConfig REQUIRED) -+ -+# Standard includes -+include ( CheckIncludeFiles ) -+check_include_files ( "wctype.h" HAVE_WCTYPE_H ) -+check_include_files ( "localcharset.h" HAVE_LOCALCHARSET_H ) -+# Standard functions -+include ( CheckSymbolExists ) -+check_symbol_exists ( arc4random "stdlib.h" HAVE_ARC4RANDOM ) -+check_symbol_exists ( iswblank "wctype.h" HAVE_ISWBLANK ) -+set ( CMAKE_REQUIRED_DEFINITIONS -D_GNU_SOURCE ) -+check_symbol_exists ( strcasestr "string.h" HAVE_STRCASESTR ) -+set ( CMAKE_REQUIRED_DEFINITIONS -D_XOPEN_SOURCE ) -+check_symbol_exists ( wcwidth "wchar.h" HAVE_WCHAR_H ) # TODO change to HAVE_WCWIDTH (used @utf8.h) -+check_symbol_exists ( timezone "time.h" HAVE_TIMEZONE ) -+# Types -+include ( CheckStructHasMember ) -+check_struct_has_member ( "struct tm" tm_gmtoff time.h HAVE_TM_GMTOFF ) -+ -+# Glib -+pkg_check_modules ( GLIB REQUIRED glib-2.0>=2.14.0 ) -+if ( MODULES_ENABLE ) -+ pkg_check_modules ( GMODULE REQUIRED gmodule-2.0 ) -+endif () -+ -+# Loudmouth -+pkg_check_modules ( LM REQUIRED loudmouth-1.0>=1.4.2 ) -+set ( CMAKE_REQUIRED_INCLUDES ${LM_INCLUDE_DIRS} ) -+set ( CMAKE_REQUIRED_LIBRARIES ${LM_LIBRARIES} ) -+set ( CMAKE_REQUIRESD_FLAGS ${LM_LDFLAGS} ${LM_CFLAGS} ) -+check_symbol_exists ( lm_connection_unregister_reply_handler "loudmouth/loudmouth.h" HAVE_LM_CONNECTION_UNREGISTER_REPLY_HANDLER ) -+ -+# Libidn -+if ( WANT_LIBIDN ) -+ pkg_check_modules ( LIBIDN libidn ) -+ if ( LIBIDN_FOUND ) -+ set ( HAVE_LIBIDN TRUE ) -+ endif () -+endif () -+ -+# Ncursesw / Ncurses / Curses -+pkg_check_modules ( CURSES ncursesw ) -+if ( CURSES_FOUND ) -+ pkg_check_modules ( PANEL REQUIRED panelw ) -+ set ( HAVE_UNICODE TRUE ) -+else() -+ pkg_check_modules ( CURSES ncurses ) -+ if ( CURSES_FOUND ) -+ pkg_check_modules ( PANEL REQUIRED panel ) -+ set ( HAVE_UNICODE FALSE ) -+ else () -+ find_package ( Curses ) -+ # XXX just fail? -+ endif () -+endif () -+set ( CMAKE_REQUIRED_INCLUDES ${CURSES_INCLUDE_DIRS} ) -+set ( CMAKE_REQUIRED_LIBRARIES ${CURSES_LIBRARIES} ) -+set ( CMAKE_REQUIRED_FLAGS ${CURSES_LDFLAGS} ${CURSES_CFLAGS} ) -+check_symbol_exists ( ESCDELAY "curses.h" HAVE_ESCDELAY ) -+ -+# Gpgme -+if ( WANT_GPGME ) -+ find_program ( GPGME_CONFIG_EXECUTABLE gpgme-config DOC "Path to gpgme-config executable" ) -+ if ( GPGME_CONFIG_EXECUTABLE ) -+ execute_process ( COMMAND ${GPGME_CONFIG_EXECUTABLE} --libs OUTPUT_VARIABLE GPGME_LIBRARIES OUTPUT_STRIP_TRAILING_WHITESPACE ) -+ execute_process ( COMMAND ${GPGME_CONFIG_EXECUTABLE} --cflags OUTPUT_VARIABLE GPGME_CFLAGS OUTPUT_STRIP_TRAILING_WHITESPACE ) -+ set ( HAVE_GPGME TRUE ) -+ endif () -+endif () -+ -+# Libotr -+if ( WANT_OTR ) -+ pkg_check_modules ( LIBOTR libotr ) -+ if ( LIBOTR_FOUND ) -+ set ( HAVE_LIBOTR TRUE ) -+ endif () -+endif () -+ -+# Spellcheckers -+if ( WANT_ENCHANT ) -+ pkg_check_modules ( ENCHANT enchant ) -+ if ( ENCHANT_FOUND ) -+ set ( WITH_ENCHANT TRUE ) -+ endif () -+elseif ( WANT_ASPELL ) -+ find_package ( ASPELL ) -+ if ( ASPELL_FOUND ) -+ set ( WITH_ASPELL TRUE ) -+ endif () -+endif () -+ -+# LaTeX for guide -+find_package ( LATEX ) -+if ( PDFLATEX_COMPILER AND BIBTEX_COMPILER ) -+ set ( HAVE_LATEX TRUE ) -+endif () -+ -+## HG Changeset -+if ( ENABLE_HGCSET ) -+ find_program ( HG_EXECUTABLE hg DOC "Path to hg (mercurial) to request changeset information" ) -+ if ( HG_EXECUTABLE ) -+ execute_process ( COMMAND hg identify --id OUTPUT_VARIABLE HGCSET OUTPUT_STRIP_TRAILING_WHITESPACE ERROR_QUIET ) -+ endif () -+endif () -+ -+link_directories ( ${GLIB_LIBRARY_DIRS} -+ ${GMODULE_LIBRARY_DIRS} -+ ${LM_LIBRARY_DIRS} -+ ${LIBIDN_LIBRARY_DIRS} -+ ${ENCHANT_LIBRARY_DIRS} -+ ${CURSES_LIBRARY_DIRS} -+ ${PANEL_LIBRARY_DIRS} -+ ${LIBOTR_LIBRARY_DIRS} ) -+ -+## Define targets -+set ( mcabber_SUBSYSTEMS -+ caps commands compl events hbuf help histolog hooks -+ modules nohtml otr pgp roster screen settings utf8 utils -+ xmpp xmpp_helper xmpp_iq xmpp_iqrequest xmpp_muc xmpp_s10n ) -+if ( NOT MODULES_ENABLE ) -+ list ( APPEND mcabber_SUBSYSTEMS extcmd fifo ) -+endif () -+set ( mcabber_SOURCES -+ mcabber/api.h -+ mcabber/main.c -+ mcabber/logprint.h -+ mcabber/xmpp_defines.h -+ ${mcabber_BINARY_DIR}/include/mcabber/config.h -+ ${mcabber_BINARY_DIR}/include/mcabber/hgcset.h ) -+foreach ( PART IN LISTS mcabber_SUBSYSTEMS ) -+ list ( APPEND mcabber_SOURCES mcabber/${PART}.c mcabber/${PART}.h ) -+endforeach () -+add_executable ( mcabber ${mcabber_SOURCES} ) -+ -+if ( MODULES_ENABLE ) -+ add_library ( beep MODULE modules/beep/beep.c ) -+ add_library ( eventcmd MODULE modules/eventcmd/eventcmd.c mcabber/extcmd.c ) -+ add_library ( fifo MODULE modules/fifo/fifo_module.c mcabber/fifo.c ) -+ add_library ( urlregex MODULE modules/urlregex/urlregex.c ) -+ add_library ( xttitle MODULE modules/xttitle/xttitle.c ) -+endif () -+ -+## Compiler setup -+configure_file ( config.h.in include/mcabber/config.h ) -+configure_file ( hgcset.h.in include/mcabber/hgcset.h ) # TODO: eliminate -+include_directories ( SYSTEM -+  ${GLIB_INCLUDE_DIRS} -+ ${GMODULE_INCLUDE_DIRS} -+ ${LM_INCLUDE_DIRS} -+ ${LIBIDN_INCLUDE_DIRS} -+ ${ENCHANT_INCLUDE_DIRS} -+ ${ASPELL_INCLUDE_DIR} -+ ${CURSES_INCLUDE_DIRS} -+ ${PANEL_INCLUDE_DIRS} -+ ${LIBOTR_INCLUDE_DIRS} ) -+target_link_libraries ( mcabber -+ ${GLIB_LIBRARIES} -+ ${GMODULE_LIBRARIES} -+ ${LM_LIBRARIES} -+ ${LIBIDN_LIBRARIES} -+ ${ENCHANT_LIBRARIES} -+ ${ASPELL_LIBRARIES} -+ ${CURSES_LIBRARIES} -+ ${PANEL_LIBRARIES} -+ ${GPGME_LIBRARIES} -+ ${LIBOTR_LIBRARIES} ) -+target_link_libraries ( fifo -+ ${GLIB_LIBRARIES} ) -+target_link_libraries ( eventcmd -+ ${GLIB_LIBRARIES} ) -+target_link_libraries ( xttitle -+ ${GLIB_LIBRARIES} ) -+include_directories ( ${mcabber_SOURCE_DIR} -+ ${mcabber_BINARY_DIR}/include -+ ${mcabber_BINARY_DIR}/include/mcabber ) -+set_target_properties ( mcabber PROPERTIES -+ COMPILE_FLAGS "-Wall ${GPGME_CFLAGS} -D_GNU_SOURCE" ) -+ -+## Extra targets -+if ( HAVE_LATEX ) -+ add_custom_command ( OUTPUT guide.aux -+ COMMAND ${PDFLATEX_COMPILER} -output-directory=${mcabber_BINARY_DIR} guide >/dev/null -+ DEPENDS doc/guide/guide.png doc/guide/guide.tex -+ WORKING_DIRECTORY ${mcabber_SOURCE_DIR}/doc/guide ) -+ add_custom_command ( OUTPUT guide.bbl -+ COMMAND BIBINPUTS=${mcabber_SOURCE_DIR}/doc/guide ${BIBTEX_COMPILER} guide >/dev/null -+ DEPENDS guide.aux doc/guide/guide.bib -+ WORKING_DIRECTORY ${mcabber_BINARY_DIR} ) -+ add_custom_command ( OUTPUT guide.pdf -+ COMMAND ${PDFLATEX_COMPILER} -output-directory=${mcabber_BINARY_DIR} guide >/dev/null -+ DEPENDS guide.bbl guide.aux doc/guide/guide.png doc/guide/guide.tex -+ WORKING_DIRECTORY ${mcabber_SOURCE_DIR}/doc/guide ) -+ add_custom_target ( guide ALL ${PDFLATEX_COMPILER} -output-directory=${mcabber_BINARY_DIR} guide >/dev/null -+ DEPENDS guide.pdf -+ WORKING_DIRECTORY ${mcabber_SOURCE_DIR}/doc/guide -+ SOURCES doc/guide/guide.bib doc/guide/guide.png doc/guide/guide.tex ) -+endif () -+ -+## Packaging information -+set(CPACK_PACKAGE_NAME ${PROJECT_NAME}) -+set(CPACK_PACKAGE_VERSION ${PROJECT_VERSION}) -+set(CPACK_PACKAGE_VENDOR "McKael") -+set(CPACK_PACKAGE_CONTACT "Mikael BERTHE ") -+set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "Small Jabber (XMPP) console client") -+set(CPACK_PACKAGE_DESCRIPTION_FILE ${mcabber_SOURCE_DIR}/README) -+set(CPACK_RESOURCE_FILE_LICENSE ${mcabber_SOURCE_DIR}/COPYING) -+set(CPACK_RESOURCE_FILE_README ${mcabber_SOURCE_DIR}/README) -+set(CPACK_RESOURCE_FILE_WELCOME ${mcabber_SOURCE_DIR}/README) -+set(CPACK_SOURCE_GENERATOR TBZ2) -+set(CPACK_GENERATOR DEB CACHE STRING "Binary package generator, eg DEB, RPM, TGZ, NSIS...") -+set(CPACK_DEBIAN_PACKAGE_SECTION libs) -+# XXX: tmp=`tempfile`; obj=${mcabber_BINARY_DIR}/mcabber.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 -+set(CPACK_DEBIAN_PACKAGE_DEPENDS "") -+find_program(DPKG_EXECUTABLE dpkg) -+if(DPKG_EXECUTABLE) -+ execute_process(COMMAND ${DPKG_EXECUTABLE} --print-architecture OUTPUT_VARIABLE CPACK_DEBIAN_PACKAGE_ARCHITECTURE OUTPUT_STRIP_TRAILING_WHITESPACE) -+else() -+ set(CPACK_DEBIAN_PACKAGE_ARCHITECTURE i386 CACHE STRING "Architecture of package") -+endif() -+set(CPACK_PACKAGE_FILE_NAME "${CPACK_PACKAGE_NAME}_${CPACK_PACKAGE_VERSION}_${CPACK_DEBIAN_PACKAGE_ARCHITECTURE}") -+# XXX: Set package name directly to get rid of -Sources? -+set(CPACK_SOURCE_IGNORE_FILES "/\\\\..*;\\\\.swp;~$;/build/;\\\\.tar\\\\.;\\\\.deb;\\\\.so") -+include(CPack) -+ -+## Preinstallation stuff -+if ( MODULES_ENABLE ) -+ # build time variables (cflags) -+ configure_file ( mcabber.pc.in.in mcabber.pc.in @ONLY ) -+ # install time variables (paths) -+ install ( CODE "configure_file ( ${mcabber_BINARY_DIR}/mcabber.pc.in ${mcabber_BINARY_DIR}/mcabber.pc )" ) -+endif () -+# full executable path in menu entry -+install ( CODE "configure_file ( ${mcabber_SOURCE_DIR}/mcabber.menu.in ${mcabber_BINARY_DIR}/mcabber.menu )" ) -+ -+## Set up installer -+install ( TARGETS mcabber DESTINATION bin ) -+if ( MODULES_ENABLE ) -+ install ( DIRECTORY mcabber/ ${mcabber_BINARY_DIR}/include/mcabber/ DESTINATION include/mcabber FILES_MATCHING PATTERN "*.h" PATTERN ".*" EXCLUDE ) -+ install ( TARGETS beep eventcmd fifo urlregex xttitle DESTINATION lib/mcabber ) -+ install ( FILES ${mcabber_BINARY_DIR}/mcabber.pc DESTINATION lib/pkgconfig ) -+endif () -+install ( DIRECTORY doc/help DESTINATION share/mcabber FILES_MATCHING PATTERN "*.txt" ) -+install ( FILES doc/mcabber.1 DESTINATION share/man/man1 ) -+install ( FILES mcabber.desktop DESTINATION share/applications ) -+install ( FILES ${mcabber_BINARY_DIR}/mcabber.menu DESTINATION share/menu RENAME mcabber ) -+install ( FILES mcabberrc.example DESTINATION share/doc/${CPACK_PACKAGE_NAME}/examples ) -+install ( FILES ChangeLog DESTINATION share/doc/${CPACK_PACKAGE_NAME} RENAME changelog ) -+install ( FILES COPYING DESTINATION share/doc/${CPACK_PACKAGE_NAME} RENAME copyright ) -+install ( FILES AUTHORS README TODO ChangeLog.api doc/HOWTO_modules.txt doc/README_PGP.txt DESTINATION share/doc/${CPACK_PACKAGE_NAME} ) -+install ( DIRECTORY contrib DESTINATION share/doc/${CPACK_PACKAGE_NAME} ) -+install ( FILES doc/mcabber.1.html doc/manpage.css DESTINATION share/doc/${CPACK_PACKAGE_NAME}/html ) -+if ( HAVE_LATEX ) -+ install ( FILES ${mcabber_BINARY_DIR}/guide.pdf DESTINATION share/doc/${CPACK_PACKAGE_NAME} ) # :/ -+endif () -+ -+## The End ## vim: se ts=4 sw=4: ## -diff -r 9dbc874e6cf7 mcabber/config.h.in ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ b/mcabber/config.h.in Fri Jul 20 17:29:52 2012 +0300 -@@ -0,0 +1,49 @@ -+/* help @help.c */ -+#define DATA_DIR "@DATA_DIR@" -+/* conditional @main.c */ /* does it have any effect really? */ -+#cmakedefine ENABLE_DEBUG @ENABLE_DEBUG@ -+/* conditional @main.c */ -+#cmakedefine ENABLE_HGCSET @ENABLE_HGCSET@ -+/* @xmpp.c */ -+#cmakedefine HAVE_ARC4RANDOM @HAVE_ARC4RANDOM@ -+/* @screen.c */ -+#cmakedefine HAVE_ESCDELAY @HAVE_ESCDELAY@ -+/* alot */ -+#cmakedefine HAVE_GPGME @HAVE_GPGME@ -+/* @utf8.h */ -+#cmakedefine HAVE_ISWBLANK @HAVE_ISWBLANK@ -+/* @utils.c */ -+#cmakedefine HAVE_LIBIDN @HAVE_LIBIDN@ -+/* alot */ -+#cmakedefine HAVE_LIBOTR @HAVE_LIBOTR@ -+/* @screen.c */ -+#cmakedefine HAVE_LOCALCHARSET_H @HAVE_LOCALCHARSET_H@ -+#cmakedefine HAVE_NCURSESW_NCURSES_H @HAVE_NCURSESW_NCURSES_H@ -+#cmakedefine HAVE_NCURSES_NCURSES_H @HAVE_NCURSES_NCURSES_H@ -+/* @utils */ -+#cmakedefine HAVE_STRCASESTR @HAVE_STRCASESTR@ -+/* utils, xmpp_iq */ -+#cmakedefine HAVE_TIMEZONE @HAVE_TIMEZONE@ -+#cmakedefine HAVE_TM_GMTOFF @HAVE_TM_GMTOFF@ -+/* utils, main */ -+#cmakedefine HAVE_UNICODE @HAVE_UNICODE@ -+#cmakedefine HAVE_WCHAR_H @HAVE_WCHAR_H@ -+#cmakedefine HAVE_WCTYPE_H @HAVE_WCTYPE_H@ -+/* modules */ -+#define MCABBER_BRANCH "@MCABBER_BRANCH@" -+#define MCABBER_VERSION "@MCABBER_VERSION@" -+#cmakedefine MODULES_ENABLE @MODULES_ENABLE@ -+/* identification */ -+#define PACKAGE_NAME "@PROJECT_NAME@" -+#define PACKAGE_STRING "@PROJECT_NAME@ @PROJECT_VERSION@" -+#define PACKAGE_VERSION "@PROJECT_VERSION@" -+/* modules */ -+#define PKGLIB_DIR "@PKGLIB_DIR@" -+/* option */ -+#cmakedefine USE_SIGWINCH @USE_SIGWINCH@ -+/* spelling */ -+#cmakedefine WITH_ASPELL @WITH_ASPELL@ -+#cmakedefine WITH_ENCHANT @WITH_ENCHANT@ -+/* option, also XEP0085? */ -+#cmakedefine XEP0022 @XEP0022@ -+/* end */ -diff -r 9dbc874e6cf7 mcabber/configure.ac ---- a/mcabber/configure.ac Fri Jul 20 17:29:26 2012 +0300 -+++ b/mcabber/configure.ac Fri Jul 20 17:29:52 2012 +0300 -@@ -36,9 +36,8 @@ - - # Checks for header files. - AC_HEADER_STDC --AC_CHECK_HEADERS([arpa/inet.h fcntl.h locale.h netdb.h netinet/in.h stddef.h \ -- stdlib.h string.h strings.h sys/socket.h sys/time.h \ -- syslog.h termios.h wchar.h wctype.h localcharset.h]) -+AC_CHECK_HEADERS([fcntl.h locale.h stdlib.h string.h sys/time.h \ -+ termios.h wchar.h wctype.h localcharset.h]) - AC_CHECK_HEADERS([unistd.h], , AC_MSG_ERROR([Missing header file])) - AC_VAR_TIMEZONE_EXTERNALS - -@@ -59,10 +58,8 @@ - AC_TYPE_SIGNAL - AC_FUNC_STRFTIME - AC_FUNC_VPRINTF --AC_CHECK_FUNCS([alarm arc4random bzero gethostbyname gethostname inet_ntoa \ -- isascii memmove memset modf select setlocale socket strcasecmp \ -- strchr strdup strncasecmp strrchr strstr strcasestr vsnprintf \ -- iswblank]) -+AC_CHECK_FUNCS([arc4random memset setlocale strcasecmp strchr strncasecmp \ -+ strrchr strstr strcasestr iswblank]) - - - AC_CHECK_DECLS([strptime],,, -diff -r 9dbc874e6cf7 mcabber/hgcset.h.in ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ b/mcabber/hgcset.h.in Fri Jul 20 17:29:52 2012 +0300 -@@ -0,0 +1,3 @@ -+/* this can go to config.h */ -+#define HGCSET "@HGCSET@" -+/* end */ -diff -r 9dbc874e6cf7 mcabber/mcabber.menu.in ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ b/mcabber/mcabber.menu.in Fri Jul 20 17:29:52 2012 +0300 -@@ -0,0 +1,2 @@ -+?package(mcabber):needs="text" section="Applications/Network/Communication"\ -+ title="mcabber" command="@CMAKE_INSTALL_PREFIX@/bin/mcabber" -diff -r 9dbc874e6cf7 mcabber/mcabber.pc.in.in ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ b/mcabber/mcabber.pc.in.in Fri Jul 20 17:29:52 2012 +0300 -@@ -0,0 +1,14 @@ -+prefix=${CMAKE_INSTALL_PREFIX} -+exec_prefix=$${EMPTY}{prefix} -+libdir=$${EMPTY}{prefix}/lib -+includedir=$${EMPTY}{prefix}/include -+datadir=@DATA_DIR@ -+pkglibdir=@PKGLIB_DIR@ -+ -+Name: MCabber -+Description: Modular XMPP client -+URL: http://mcabber.com -+Requires.private: glib-2.0 gmodule-2.0 loudmouth-1.0 -+Version: @PROJECT_VERSION@ -+Libs: -+Cflags: -I$${EMPTY}{includedir} @LIBOTR_CFLAGS@ @GPGME_CFLAGS@ diff -r 94b6e4aa74a3 -r c80eb5663234 add-cmake.diff --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/add-cmake.diff Sat Jul 28 19:37:32 2012 +0300 @@ -0,0 +1,425 @@ +# HG changeset patch +# Parent 9dbc874e6cf72a133e8568ae28fd254c6028d60a +[work-in-progress] Add possibility to build with CMake + +diff -r 9dbc874e6cf7 .hgignore +--- a/.hgignore Fri Jul 20 17:29:26 2012 +0300 ++++ b/.hgignore Fri Jul 20 17:29:52 2012 +0300 +@@ -34,3 +34,5 @@ + tags + mcabber/ptodo + mcabber/ppatches ++ ++mcabber/build +diff -r 9dbc874e6cf7 mcabber/CMakeLists.txt +--- /dev/null Thu Jan 01 00:00:00 1970 +0000 ++++ b/mcabber/CMakeLists.txt Fri Jul 20 17:29:52 2012 +0300 +@@ -0,0 +1,296 @@ ++## Copyright 2010-2012 Myhailo Danylenko ++# This file is part of mcabber. ++# ++# mcabber is free software: you can redistribute it and/or modify ++# it under the terms of the GNU General Public License as published by ++# the Free Software Foundation, either version 2 of the License, or ++# (at your option) any later version. ++# ++# This program is distributed in the hope that it will be useful, ++# but WITHOUT ANY WARRANTY; without even the implied warranty of ++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++# GNU General Public License for more details. ++# ++# You should have received a copy of the GNU General Public License ++# along with this program. If not, see . ++ ++cmake_minimum_required ( VERSION 2.6 ) ++project ( mcabber C ) ++set ( PROJECT_VERSION "0.10.2-dev" ) ++ ++## User settable options ++option ( ENABLE_DEBUG "Enable debugging output" OFF ) # XXX is it really used? ++option ( USE_SIGWINCH "Compile with SIGWINCH handler" OFF ) ++option ( XEP0022 "Enable obsolete Message Events (XEP-0022)" OFF ) # + XEP0085? ++option ( MODULES_ENABLE "Enable dynamic module loading" ON ) ++option ( WANT_LIBIDN "Compile with libidn support" ON ) ++option ( WANT_GPGME "Compile with PGP support (libgpgme required)" ON ) ++option ( WANT_OTR "Compile with OTR support" OFF ) ++option ( WANT_ENCHANT "Use enchant for spell-checking" OFF ) ++option ( WANT_ASPELL "Use aspell for spell-checking" OFF ) ++option ( ENABLE_HGCSET "Report hg changeset in version string" OFF ) ++ ++# FIXME ++set ( DATA_DIR "${CMAKE_INSTALL_PREFIX}/share" CACHE PATH "Path to data files" ) ++set ( PKGLIB_DIR "${CMAKE_INSTALL_PREFIX}/lib/${PROJECT_NAME}" CACHE PATH "Path to modules" ) ++ ++set ( MCABBER_BRANCH "experimental" ) ++set ( MCABBER_VERSION ${PROJECT_VERSION} ) ++ ++## Check for build dependencies ++find_package(PkgConfig REQUIRED) ++ ++# Standard includes ++include ( CheckIncludeFiles ) ++check_include_files ( "wctype.h" HAVE_WCTYPE_H ) ++check_include_files ( "localcharset.h" HAVE_LOCALCHARSET_H ) ++# Standard functions ++include ( CheckSymbolExists ) ++check_symbol_exists ( arc4random "stdlib.h" HAVE_ARC4RANDOM ) ++check_symbol_exists ( iswblank "wctype.h" HAVE_ISWBLANK ) ++set ( CMAKE_REQUIRED_DEFINITIONS -D_GNU_SOURCE ) ++check_symbol_exists ( strcasestr "string.h" HAVE_STRCASESTR ) ++set ( CMAKE_REQUIRED_DEFINITIONS -D_XOPEN_SOURCE ) ++check_symbol_exists ( wcwidth "wchar.h" HAVE_WCHAR_H ) # TODO change to HAVE_WCWIDTH (used @utf8.h) ++check_symbol_exists ( timezone "time.h" HAVE_TIMEZONE ) ++# Types ++include ( CheckStructHasMember ) ++check_struct_has_member ( "struct tm" tm_gmtoff time.h HAVE_TM_GMTOFF ) ++ ++# Glib ++pkg_check_modules ( GLIB REQUIRED glib-2.0>=2.14.0 ) ++if ( MODULES_ENABLE ) ++ pkg_check_modules ( GMODULE REQUIRED gmodule-2.0 ) ++endif () ++ ++# Loudmouth ++pkg_check_modules ( LM REQUIRED loudmouth-1.0>=1.4.2 ) ++set ( CMAKE_REQUIRED_INCLUDES ${LM_INCLUDE_DIRS} ) ++set ( CMAKE_REQUIRED_LIBRARIES ${LM_LIBRARIES} ) ++set ( CMAKE_REQUIRESD_FLAGS ${LM_LDFLAGS} ${LM_CFLAGS} ) ++check_symbol_exists ( lm_connection_unregister_reply_handler "loudmouth/loudmouth.h" HAVE_LM_CONNECTION_UNREGISTER_REPLY_HANDLER ) ++ ++# Libidn ++if ( WANT_LIBIDN ) ++ pkg_check_modules ( LIBIDN libidn ) ++ if ( LIBIDN_FOUND ) ++ set ( HAVE_LIBIDN TRUE ) ++ endif () ++endif () ++ ++# Ncursesw / Ncurses / Curses ++pkg_check_modules ( CURSES ncursesw ) ++if ( CURSES_FOUND ) ++ pkg_check_modules ( PANEL REQUIRED panelw ) ++ set ( HAVE_UNICODE TRUE ) ++else() ++ pkg_check_modules ( CURSES ncurses ) ++ if ( CURSES_FOUND ) ++ pkg_check_modules ( PANEL REQUIRED panel ) ++ set ( HAVE_UNICODE FALSE ) ++ else () ++ find_package ( Curses ) ++ # XXX just fail? ++ endif () ++endif () ++set ( CMAKE_REQUIRED_INCLUDES ${CURSES_INCLUDE_DIRS} ) ++set ( CMAKE_REQUIRED_LIBRARIES ${CURSES_LIBRARIES} ) ++set ( CMAKE_REQUIRED_FLAGS ${CURSES_LDFLAGS} ${CURSES_CFLAGS} ) ++check_symbol_exists ( ESCDELAY "curses.h" HAVE_ESCDELAY ) ++ ++# Gpgme ++if ( WANT_GPGME ) ++ find_program ( GPGME_CONFIG_EXECUTABLE gpgme-config DOC "Path to gpgme-config executable" ) ++ if ( GPGME_CONFIG_EXECUTABLE ) ++ execute_process ( COMMAND ${GPGME_CONFIG_EXECUTABLE} --libs OUTPUT_VARIABLE GPGME_LIBRARIES OUTPUT_STRIP_TRAILING_WHITESPACE ) ++ execute_process ( COMMAND ${GPGME_CONFIG_EXECUTABLE} --cflags OUTPUT_VARIABLE GPGME_CFLAGS OUTPUT_STRIP_TRAILING_WHITESPACE ) ++ set ( HAVE_GPGME TRUE ) ++ endif () ++endif () ++ ++# Libotr ++if ( WANT_OTR ) ++ pkg_check_modules ( LIBOTR libotr ) ++ if ( LIBOTR_FOUND ) ++ set ( HAVE_LIBOTR TRUE ) ++ endif () ++endif () ++ ++# Spellcheckers ++if ( WANT_ENCHANT ) ++ pkg_check_modules ( ENCHANT enchant ) ++ if ( ENCHANT_FOUND ) ++ set ( WITH_ENCHANT TRUE ) ++ endif () ++elseif ( WANT_ASPELL ) ++ find_package ( ASPELL ) ++ if ( ASPELL_FOUND ) ++ set ( WITH_ASPELL TRUE ) ++ endif () ++endif () ++ ++# LaTeX for guide ++find_package ( LATEX ) ++if ( PDFLATEX_COMPILER AND BIBTEX_COMPILER ) ++ set ( HAVE_LATEX TRUE ) ++endif () ++ ++## HG Changeset ++if ( ENABLE_HGCSET ) ++ find_program ( HG_EXECUTABLE hg DOC "Path to hg (mercurial) to request changeset information" ) ++ if ( HG_EXECUTABLE ) ++ execute_process ( COMMAND hg identify --id OUTPUT_VARIABLE HGCSET OUTPUT_STRIP_TRAILING_WHITESPACE ERROR_QUIET ) ++ endif () ++endif () ++ ++link_directories ( ${GLIB_LIBRARY_DIRS} ++ ${GMODULE_LIBRARY_DIRS} ++ ${LM_LIBRARY_DIRS} ++ ${LIBIDN_LIBRARY_DIRS} ++ ${ENCHANT_LIBRARY_DIRS} ++ ${CURSES_LIBRARY_DIRS} ++ ${PANEL_LIBRARY_DIRS} ++ ${LIBOTR_LIBRARY_DIRS} ) ++ ++## Define targets ++set ( mcabber_SUBSYSTEMS ++ caps commands compl events hbuf help histolog hooks ++ modules nohtml otr pgp roster screen settings utf8 utils ++ xmpp xmpp_helper xmpp_iq xmpp_iqrequest xmpp_muc xmpp_s10n ) ++if ( NOT MODULES_ENABLE ) ++ list ( APPEND mcabber_SUBSYSTEMS extcmd fifo ) ++endif () ++set ( mcabber_SOURCES ++ mcabber/api.h ++ mcabber/main.c ++ mcabber/logprint.h ++ mcabber/xmpp_defines.h ++ ${mcabber_BINARY_DIR}/include/mcabber/config.h ++ ${mcabber_BINARY_DIR}/include/mcabber/hgcset.h ) ++foreach ( PART IN LISTS mcabber_SUBSYSTEMS ) ++ list ( APPEND mcabber_SOURCES mcabber/${PART}.c mcabber/${PART}.h ) ++endforeach () ++add_executable ( mcabber ${mcabber_SOURCES} ) ++ ++if ( MODULES_ENABLE ) ++ add_library ( beep MODULE modules/beep/beep.c ) ++ add_library ( eventcmd MODULE modules/eventcmd/eventcmd.c mcabber/extcmd.c ) ++ add_library ( fifo MODULE modules/fifo/fifo_module.c mcabber/fifo.c ) ++ add_library ( urlregex MODULE modules/urlregex/urlregex.c ) ++ add_library ( xttitle MODULE modules/xttitle/xttitle.c ) ++endif () ++ ++## Compiler setup ++configure_file ( config.h.in include/mcabber/config.h ) ++configure_file ( hgcset.h.in include/mcabber/hgcset.h ) # TODO: eliminate ++include_directories ( SYSTEM ++  ${GLIB_INCLUDE_DIRS} ++ ${GMODULE_INCLUDE_DIRS} ++ ${LM_INCLUDE_DIRS} ++ ${LIBIDN_INCLUDE_DIRS} ++ ${ENCHANT_INCLUDE_DIRS} ++ ${ASPELL_INCLUDE_DIR} ++ ${CURSES_INCLUDE_DIRS} ++ ${PANEL_INCLUDE_DIRS} ++ ${LIBOTR_INCLUDE_DIRS} ) ++target_link_libraries ( mcabber ++ ${GLIB_LIBRARIES} ++ ${GMODULE_LIBRARIES} ++ ${LM_LIBRARIES} ++ ${LIBIDN_LIBRARIES} ++ ${ENCHANT_LIBRARIES} ++ ${ASPELL_LIBRARIES} ++ ${CURSES_LIBRARIES} ++ ${PANEL_LIBRARIES} ++ ${GPGME_LIBRARIES} ++ ${LIBOTR_LIBRARIES} ) ++target_link_libraries ( fifo ++ ${GLIB_LIBRARIES} ) ++target_link_libraries ( eventcmd ++ ${GLIB_LIBRARIES} ) ++target_link_libraries ( xttitle ++ ${GLIB_LIBRARIES} ) ++include_directories ( ${mcabber_SOURCE_DIR} ++ ${mcabber_BINARY_DIR}/include ++ ${mcabber_BINARY_DIR}/include/mcabber ) ++set_target_properties ( mcabber PROPERTIES ++ COMPILE_FLAGS "-Wall ${GPGME_CFLAGS} -D_GNU_SOURCE" ) ++ ++## Extra targets ++if ( HAVE_LATEX ) ++ add_custom_command ( OUTPUT guide.aux ++ COMMAND ${PDFLATEX_COMPILER} -output-directory=${mcabber_BINARY_DIR} guide >/dev/null ++ DEPENDS doc/guide/guide.png doc/guide/guide.tex ++ WORKING_DIRECTORY ${mcabber_SOURCE_DIR}/doc/guide ) ++ add_custom_command ( OUTPUT guide.bbl ++ COMMAND BIBINPUTS=${mcabber_SOURCE_DIR}/doc/guide ${BIBTEX_COMPILER} guide >/dev/null ++ DEPENDS guide.aux doc/guide/guide.bib ++ WORKING_DIRECTORY ${mcabber_BINARY_DIR} ) ++ add_custom_command ( OUTPUT guide.pdf ++ COMMAND ${PDFLATEX_COMPILER} -output-directory=${mcabber_BINARY_DIR} guide >/dev/null ++ DEPENDS guide.bbl guide.aux doc/guide/guide.png doc/guide/guide.tex ++ WORKING_DIRECTORY ${mcabber_SOURCE_DIR}/doc/guide ) ++ add_custom_target ( guide ALL ${PDFLATEX_COMPILER} -output-directory=${mcabber_BINARY_DIR} guide >/dev/null ++ DEPENDS guide.pdf ++ WORKING_DIRECTORY ${mcabber_SOURCE_DIR}/doc/guide ++ SOURCES doc/guide/guide.bib doc/guide/guide.png doc/guide/guide.tex ) ++endif () ++ ++## Packaging information ++set(CPACK_PACKAGE_NAME ${PROJECT_NAME}) ++set(CPACK_PACKAGE_VERSION ${PROJECT_VERSION}) ++set(CPACK_PACKAGE_VENDOR "McKael") ++set(CPACK_PACKAGE_CONTACT "Mikael BERTHE ") ++set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "Small Jabber (XMPP) console client") ++set(CPACK_PACKAGE_DESCRIPTION_FILE ${mcabber_SOURCE_DIR}/README) ++set(CPACK_RESOURCE_FILE_LICENSE ${mcabber_SOURCE_DIR}/COPYING) ++set(CPACK_RESOURCE_FILE_README ${mcabber_SOURCE_DIR}/README) ++set(CPACK_RESOURCE_FILE_WELCOME ${mcabber_SOURCE_DIR}/README) ++set(CPACK_SOURCE_GENERATOR TBZ2) ++set(CPACK_GENERATOR DEB CACHE STRING "Binary package generator, eg DEB, RPM, TGZ, NSIS...") ++set(CPACK_DEBIAN_PACKAGE_SECTION libs) ++# XXX: tmp=`tempfile`; obj=${mcabber_BINARY_DIR}/mcabber.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 ++set(CPACK_DEBIAN_PACKAGE_DEPENDS "") ++find_program(DPKG_EXECUTABLE dpkg) ++if(DPKG_EXECUTABLE) ++ execute_process(COMMAND ${DPKG_EXECUTABLE} --print-architecture OUTPUT_VARIABLE CPACK_DEBIAN_PACKAGE_ARCHITECTURE OUTPUT_STRIP_TRAILING_WHITESPACE) ++else() ++ set(CPACK_DEBIAN_PACKAGE_ARCHITECTURE i386 CACHE STRING "Architecture of package") ++endif() ++set(CPACK_PACKAGE_FILE_NAME "${CPACK_PACKAGE_NAME}_${CPACK_PACKAGE_VERSION}_${CPACK_DEBIAN_PACKAGE_ARCHITECTURE}") ++# XXX: Set package name directly to get rid of -Sources? ++set(CPACK_SOURCE_IGNORE_FILES "/\\\\..*;\\\\.swp;~$;/build/;\\\\.tar\\\\.;\\\\.deb;\\\\.so") ++include(CPack) ++ ++## Preinstallation stuff ++if ( MODULES_ENABLE ) ++ # build time variables (cflags) ++ configure_file ( mcabber.pc.in.in mcabber.pc.in @ONLY ) ++ # install time variables (paths) ++ install ( CODE "configure_file ( ${mcabber_BINARY_DIR}/mcabber.pc.in ${mcabber_BINARY_DIR}/mcabber.pc )" ) ++endif () ++# full executable path in menu entry ++install ( CODE "configure_file ( ${mcabber_SOURCE_DIR}/mcabber.menu.in ${mcabber_BINARY_DIR}/mcabber.menu )" ) ++ ++## Set up installer ++install ( TARGETS mcabber DESTINATION bin ) ++if ( MODULES_ENABLE ) ++ install ( DIRECTORY mcabber/ ${mcabber_BINARY_DIR}/include/mcabber/ DESTINATION include/mcabber FILES_MATCHING PATTERN "*.h" PATTERN ".*" EXCLUDE ) ++ install ( TARGETS beep eventcmd fifo urlregex xttitle DESTINATION lib/mcabber ) ++ install ( FILES ${mcabber_BINARY_DIR}/mcabber.pc DESTINATION lib/pkgconfig ) ++endif () ++install ( DIRECTORY doc/help DESTINATION share/mcabber FILES_MATCHING PATTERN "*.txt" ) ++install ( FILES doc/mcabber.1 DESTINATION share/man/man1 ) ++install ( FILES mcabber.desktop DESTINATION share/applications ) ++install ( FILES ${mcabber_BINARY_DIR}/mcabber.menu DESTINATION share/menu RENAME mcabber ) ++install ( FILES mcabberrc.example DESTINATION share/doc/${CPACK_PACKAGE_NAME}/examples ) ++install ( FILES ChangeLog DESTINATION share/doc/${CPACK_PACKAGE_NAME} RENAME changelog ) ++install ( FILES COPYING DESTINATION share/doc/${CPACK_PACKAGE_NAME} RENAME copyright ) ++install ( FILES AUTHORS README TODO ChangeLog.api doc/HOWTO_modules.txt doc/README_PGP.txt DESTINATION share/doc/${CPACK_PACKAGE_NAME} ) ++install ( DIRECTORY contrib DESTINATION share/doc/${CPACK_PACKAGE_NAME} ) ++install ( FILES doc/mcabber.1.html doc/manpage.css DESTINATION share/doc/${CPACK_PACKAGE_NAME}/html ) ++if ( HAVE_LATEX ) ++ install ( FILES ${mcabber_BINARY_DIR}/guide.pdf DESTINATION share/doc/${CPACK_PACKAGE_NAME} ) # :/ ++endif () ++ ++## The End ## vim: se ts=4 sw=4: ## +diff -r 9dbc874e6cf7 mcabber/config.h.in +--- /dev/null Thu Jan 01 00:00:00 1970 +0000 ++++ b/mcabber/config.h.in Fri Jul 20 17:29:52 2012 +0300 +@@ -0,0 +1,49 @@ ++/* help @help.c */ ++#define DATA_DIR "@DATA_DIR@" ++/* conditional @main.c */ /* does it have any effect really? */ ++#cmakedefine ENABLE_DEBUG @ENABLE_DEBUG@ ++/* conditional @main.c */ ++#cmakedefine ENABLE_HGCSET @ENABLE_HGCSET@ ++/* @xmpp.c */ ++#cmakedefine HAVE_ARC4RANDOM @HAVE_ARC4RANDOM@ ++/* @screen.c */ ++#cmakedefine HAVE_ESCDELAY @HAVE_ESCDELAY@ ++/* alot */ ++#cmakedefine HAVE_GPGME @HAVE_GPGME@ ++/* @utf8.h */ ++#cmakedefine HAVE_ISWBLANK @HAVE_ISWBLANK@ ++/* @utils.c */ ++#cmakedefine HAVE_LIBIDN @HAVE_LIBIDN@ ++/* alot */ ++#cmakedefine HAVE_LIBOTR @HAVE_LIBOTR@ ++/* @screen.c */ ++#cmakedefine HAVE_LOCALCHARSET_H @HAVE_LOCALCHARSET_H@ ++#cmakedefine HAVE_NCURSESW_NCURSES_H @HAVE_NCURSESW_NCURSES_H@ ++#cmakedefine HAVE_NCURSES_NCURSES_H @HAVE_NCURSES_NCURSES_H@ ++/* @utils */ ++#cmakedefine HAVE_STRCASESTR @HAVE_STRCASESTR@ ++/* utils, xmpp_iq */ ++#cmakedefine HAVE_TIMEZONE @HAVE_TIMEZONE@ ++#cmakedefine HAVE_TM_GMTOFF @HAVE_TM_GMTOFF@ ++/* utils, main */ ++#cmakedefine HAVE_UNICODE @HAVE_UNICODE@ ++#cmakedefine HAVE_WCHAR_H @HAVE_WCHAR_H@ ++#cmakedefine HAVE_WCTYPE_H @HAVE_WCTYPE_H@ ++/* modules */ ++#define MCABBER_BRANCH "@MCABBER_BRANCH@" ++#define MCABBER_VERSION "@MCABBER_VERSION@" ++#cmakedefine MODULES_ENABLE @MODULES_ENABLE@ ++/* identification */ ++#define PACKAGE_NAME "@PROJECT_NAME@" ++#define PACKAGE_STRING "@PROJECT_NAME@ @PROJECT_VERSION@" ++#define PACKAGE_VERSION "@PROJECT_VERSION@" ++/* modules */ ++#define PKGLIB_DIR "@PKGLIB_DIR@" ++/* option */ ++#cmakedefine USE_SIGWINCH @USE_SIGWINCH@ ++/* spelling */ ++#cmakedefine WITH_ASPELL @WITH_ASPELL@ ++#cmakedefine WITH_ENCHANT @WITH_ENCHANT@ ++/* option, also XEP0085? */ ++#cmakedefine XEP0022 @XEP0022@ ++/* end */ +diff -r 9dbc874e6cf7 mcabber/configure.ac +--- a/mcabber/configure.ac Fri Jul 20 17:29:26 2012 +0300 ++++ b/mcabber/configure.ac Fri Jul 20 17:29:52 2012 +0300 +@@ -36,9 +36,8 @@ + + # Checks for header files. + AC_HEADER_STDC +-AC_CHECK_HEADERS([arpa/inet.h fcntl.h locale.h netdb.h netinet/in.h stddef.h \ +- stdlib.h string.h strings.h sys/socket.h sys/time.h \ +- syslog.h termios.h wchar.h wctype.h localcharset.h]) ++AC_CHECK_HEADERS([fcntl.h locale.h stdlib.h string.h sys/time.h \ ++ termios.h wchar.h wctype.h localcharset.h]) + AC_CHECK_HEADERS([unistd.h], , AC_MSG_ERROR([Missing header file])) + AC_VAR_TIMEZONE_EXTERNALS + +@@ -59,10 +58,8 @@ + AC_TYPE_SIGNAL + AC_FUNC_STRFTIME + AC_FUNC_VPRINTF +-AC_CHECK_FUNCS([alarm arc4random bzero gethostbyname gethostname inet_ntoa \ +- isascii memmove memset modf select setlocale socket strcasecmp \ +- strchr strdup strncasecmp strrchr strstr strcasestr vsnprintf \ +- iswblank]) ++AC_CHECK_FUNCS([arc4random memset setlocale strcasecmp strchr strncasecmp \ ++ strrchr strstr strcasestr iswblank]) + + + AC_CHECK_DECLS([strptime],,, +diff -r 9dbc874e6cf7 mcabber/hgcset.h.in +--- /dev/null Thu Jan 01 00:00:00 1970 +0000 ++++ b/mcabber/hgcset.h.in Fri Jul 20 17:29:52 2012 +0300 +@@ -0,0 +1,3 @@ ++/* this can go to config.h */ ++#define HGCSET "@HGCSET@" ++/* end */ +diff -r 9dbc874e6cf7 mcabber/mcabber.menu.in +--- /dev/null Thu Jan 01 00:00:00 1970 +0000 ++++ b/mcabber/mcabber.menu.in Fri Jul 20 17:29:52 2012 +0300 +@@ -0,0 +1,2 @@ ++?package(mcabber):needs="text" section="Applications/Network/Communication"\ ++ title="mcabber" command="@CMAKE_INSTALL_PREFIX@/bin/mcabber" +diff -r 9dbc874e6cf7 mcabber/mcabber.pc.in.in +--- /dev/null Thu Jan 01 00:00:00 1970 +0000 ++++ b/mcabber/mcabber.pc.in.in Fri Jul 20 17:29:52 2012 +0300 +@@ -0,0 +1,14 @@ ++prefix=${CMAKE_INSTALL_PREFIX} ++exec_prefix=$${EMPTY}{prefix} ++libdir=$${EMPTY}{prefix}/lib ++includedir=$${EMPTY}{prefix}/include ++datadir=@DATA_DIR@ ++pkglibdir=@PKGLIB_DIR@ ++ ++Name: MCabber ++Description: Modular XMPP client ++URL: http://mcabber.com ++Requires.private: glib-2.0 gmodule-2.0 loudmouth-1.0 ++Version: @PROJECT_VERSION@ ++Libs: ++Cflags: -I$${EMPTY}{includedir} @LIBOTR_CFLAGS@ @GPGME_CFLAGS@