Added include path for libv4l2 includes, rather than assuming they are
[kdenetwork.git] / kopete / CMakeLists.txt
bloba0ceba230d39efe8c51ba1b82e1f301f47749ab8
1 project(kopete)
3 set(KOPETE_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR})
4 set(KOPETE_BINARY_DIR ${CMAKE_CURRENT_BINARY_DIR})
6 set(CMAKE_MODULE_PATH ${KOPETE_SOURCE_DIR}/cmake/modules ${CMAKE_MODULE_PATH} )
8 if(NOT INSIDE_KDENETWORK)
10         message ("We aren't inside KDENetwork, Loading KDE Macros")
11         find_package(KDE4 REQUIRED)
13         include (KDE4Defaults)
14         include (MacroLibrary)
16         include(CheckIncludeFile)
17         include(CheckIncludeFiles)
18         include(CheckSymbolExists)
19         include(CheckFunctionExists)
20         include(CheckLibraryExists)
21         include(CheckPrototypeExists)
22         include(CheckTypeSize)
23         include(MacroBoolTo01)
24         include(MacroOptionalAddSubdirectory)
26         set(CMAKE_REQUIRED_DEFINITIONS ${_KDE4_PLATFORM_DEFINITIONS})
27         if (WIN32)
28            set(CMAKE_REQUIRED_LIBRARIES ${KDEWIN32_LIBRARIES} )
29            set(CMAKE_REQUIRED_INCLUDES  ${KDEWIN32_INCLUDES} )
30         endif (WIN32)
32         find_package(KdepimLibs REQUIRED)
34         macro_optional_find_package(Sqlite)
35         macro_log_feature(SQLITE_FOUND "SQLite" "SQLite is a Binary-Database" "" FALSE "" "Needed for the SQLite-Backend of the KGet-History and the Kopete-Statistic-Plugin")
37 endif(NOT INSIDE_KDENETWORK)
39 KDE4_NO_ENABLE_FINAL(kopete)
41 FIND_PACKAGE(QImageBlitz REQUIRED)
43 # Configure checks
44 include (TestBigEndian)
45 TEST_BIG_ENDIAN(CMAKE_WORDS_BIGENDIAN)
46 check_type_size("long" SIZEOF_LONG)
47 check_type_size("unsigned long" SIZEOF_UNSIGNED_LONG)
49 macro_optional_find_package(LiboRTP)
50 macro_log_feature(LIBORTP_FOUND "libortp" "oRTP provides an API to send rtp packets" "http://www.linphone.org/index.php/eng/code_review/ortp" FALSE "0.13" "Needed to build Jingle support in Kopete.")
52 macro_optional_find_package(Speex)
53 macro_log_feature(SPEEX_FOUND "speex" "speex is an encoder/decoder for the speex audio format." "http://www.speex.org/" FALSE "" "Needed to build Jingle support in Kopete.")
55 macro_optional_find_package(QCA2)
56 macro_log_feature(QCA2_FOUND "QCA2" "Qt Cryptographic Architecture" "http://delta.affinix.com/qca" FALSE "2.0.0" "Needed to build Kopete's GroupWise and Jabber protocols.")
58 macro_optional_find_package(Decibel)
59 macro_log_feature(DECIBEL_FOUND "Decibel"  "KDE framework for real-time communication" "http://decibel.kde.org/" FALSE "" "Used by the Kopete telepathy protocol.")
61 macro_optional_find_package(IDN)
62 macro_log_feature(IDN_FOUND "IDN" "GNU Libidn Internationalized Domain Name (IDN) implemenation" "http://www.gnu.org/software/libidn/" FALSE "" "Used by the Kopete Jabber plugin.")
64 macro_optional_find_package(Alsa)
65 macro_log_feature(ALSA_FOUND "Alsa" "Alsa is Advanced Linux Sound Architecture" "" FALSE "" "Needed for Jingle Support in Kopete Jabber Plugin")
67 macro_optional_find_package(Xmms)
68 macro_bool_to_01(XMMS_FOUND HAVE_XMMS)
69 macro_log_feature(XMMS_FOUND "XMMS" "X MultiMedia System development libraries" "http://www.xmms.org" FALSE "" "Used by the Kopete nowlistening plugin to support the XMMS player.")
71 if(XMMS_FOUND)
72   # GLIB2_INCLUDE_DIR needed for Xmms
73   macro_optional_find_package(GLIB2)
74 endif(XMMS_FOUND)
76 macro_optional_find_package(LibXml2)
77 macro_log_feature(LIBXML2_FOUND "LibXML2" "Libraries used to develop XML applications" "http://xmlsoft.org" FALSE "" "Required for the Kopete webpresence plugin.")
79 macro_optional_find_package(LibXslt)
80 macro_bool_to_01(LIBXSLT_FOUND HAVE_XSLT)
81 macro_log_feature(LIBXSLT_FOUND "LibXSLT" "A library to transform XML files into other XML files" "http://xmlsoft.org/XSLT" FALSE "" "Required for the Kopete webpresence plugin.")
83 macro_optional_find_package(LibOTR)
84 macro_bool_to_01(LIBOTR_FOUND HAVE_LIBOTR)
85 macro_log_feature(LIBOTR_FOUND "libotr" "A library to encrypt messages with Off-the-Record encryption" "http://www.cypherpunks.ca/otr" FALSE "3.2.0" "Required for the Kopete otr plugin.")
87 macro_optional_find_package(Libmsn)
88 macro_bool_to_01(LIBMSN_FOUND HAVE_LIBMSN)
89 macro_log_feature(LIBMSN_FOUND "libmsn" "A library providing support for the msn protocol" "http://sourceforge.net/projects/libmsn" FALSE "0.4.0" "Required for the Kopete wlm plugin")
91 macro_optional_find_package(LibMeanwhile)
92 macro_bool_to_01(LIBMEANWHILE_FOUND HAVE_LIBMEANWHILE)
93 macro_log_feature(LIBMEANWHILE_FOUND "libmeanwhile" "A library for protocol support for connection to Sametime servers" "http://meanwhile.sf.net" FALSE "" "Required for the Kopete Meanwhile protocol")
95 macro_optional_find_package(Libgadu)
96 macro_bool_to_01(LIBGADU_FOUND HAVE_LIBGADU)
97 macro_log_feature(LIBGADU_FOUND "libgadu" "A library providing support for Gadu-Gadu protocol" "http://toxygen.net/libgadu/" FALSE "1.8.0" "Required for Kopete Gadu-Gadu protocol")
99 macro_optional_find_package(LibV4L2)
100 macro_bool_to_01(LIBV4L2_FOUND HAVE_LIBV4L2)
101 macro_log_feature(LIBV4L2_FOUND "libv4l2" "Collection of video4linux support libraries" "http://hansdegoede.livejournal.com/3636.html" FALSE "" "Required for better webcam support")
103 check_include_files(valgrind/valgrind.h HAVE_VALGRIND_H)
104 check_include_files(stdint.h HAVE_STDINT_H)
105 check_include_files(inttypes.h HAVE_INTTYPES_H)
106 macro_bool_to_01(X11_Xss_FOUND HAVE_XSCREENSAVER)
108 # Generate config-kopete.h
109 configure_file(${CMAKE_CURRENT_SOURCE_DIR}/config-kopete.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-kopete.h )
111 # For config-kopete.h
112 include_directories( ${CMAKE_CURRENT_BINARY_DIR} )
114 set(KOPETE_INCLUDES 
115         ${KDE4_INCLUDES}
116         ${KOPETE_SOURCE_DIR}/libkopete/
117         ${KOPETE_BINARY_DIR}/libkopete/
118         ${KOPETE_SOURCE_DIR}/libkopete/ui/
119         ${KOPETE_BINARY_DIR}/libkopete/ui/
120         ${KOPETE_SOURCE_DIR}/libkopete/private/
121         ${KOPETE_SOURCE_DIR}/libkopete/contactlist/
122         ${KOPETE_SOURCE_DIR}/libkopete/tasks/
125 add_subdirectory( libkopete )
126 add_subdirectory( kopete )
127 add_subdirectory( protocols )
128 add_subdirectory( plugins )
129 add_subdirectory( icons )
130 add_subdirectory( sounds )
131 add_subdirectory( styles )