1kdecmake(1)                 General Commands Manual                kdecmake(1)
2
3
4

NAME

6       kdecmake - Reference of available CMake custom modules.
7
8

DESCRIPTION

10       The  "cmake" executable is the CMake command-line interface.  It may be
11       used to configure projects in scripts.  Project configuration  settings
12       may be specified on the command line with the -D option.  The -i option
13       will cause cmake to interactively prompt for such settings.
14
15
16       CMake is a cross-platform build  system  generator.   Projects  specify
17       their  build process with platform-independent CMake listfiles included
18       in each directory of a source tree with the name CMakeLists.txt.  Users
19       build  a project by using CMake to generate a build system for a native
20       tool on their platform.
21
22

CUSTOM MODULES

24       The following modules are also available for CMake. They  can  be  used
25       with INCLUDE(ModuleName).
26
27
28         Custom CMake Modules - Additional Modules for CMake.
29
30
31       This is the documentation for additional modules and scripts for CMake.
32       Using these modules you can check the  computer  system  for  installed
33       software  packages, features of the compiler and the existence of head‐
34       ers to name just a few.
35
36
37       CheckCXXSourceCompiles
38              macro which checks if the source code compiles
39
40              CHECK_CXX_SOURCE_COMPILES(SOURCE VAR)
41
42
43                SOURCE - source code to try to compile
44                VAR    - variable to store whether the source code compiled
45
46
47
48
49              The following variables may be set before calling this macro  to
50              modify the way the check is run:
51
52
53                CMAKE_REQUIRED_FLAGS = string of compile command line flags
54                CMAKE_REQUIRED_DEFINITIONS = list of macros to define (-DFOO=bar)
55                CMAKE_REQUIRED_INCLUDES = list of include directories
56                CMAKE_REQUIRED_LIBRARIES = list of libraries to link
57
58
59       CheckCXXSourceRuns
60              Check  if  the  C++  source code provided in the SOURCE argument
61              compiles and runs.
62
63              CHECK_CXX_SOURCE_RUNS(SOURCE VAR)
64
65
66                SOURCE - source code to try to compile
67                VAR    - variable to store the result, 1 for success, empty for failure
68
69
70
71
72              The following variables may be set before calling this macro  to
73              modify the way the check is run:
74
75
76                CMAKE_REQUIRED_FLAGS = string of compile command line flags
77                CMAKE_REQUIRED_DEFINITIONS = list of macros to define (-DFOO=bar)
78                CMAKE_REQUIRED_INCLUDES = list of include directories
79                CMAKE_REQUIRED_LIBRARIES = list of libraries to link
80
81
82       CheckCXXSymbolExists
83              Check if the symbol exists in include files, in C++ mode
84
85              Forked   off   cmake's   CheckSymbolExists.cmake  CHECK_CXX_SYM‐
86              BOL_EXISTS(SYMBOL FILES VARIABLE)
87
88
89                SYMBOL   - symbol
90                FILES    - include files to check
91                VARIABLE - variable to return result
92
93
94
95
96              The following variables may be set before calling this macro  to
97              modify the way the check is run:
98
99
100                CMAKE_REQUIRED_FLAGS = string of compile command line flags
101                CMAKE_REQUIRED_DEFINITIONS = list of macros to define (-DFOO=bar)
102                CMAKE_REQUIRED_INCLUDES = list of include directories
103                CMAKE_REQUIRED_LIBRARIES = list of libraries to link
104
105
106       CheckPointerMember
107              Check  if  the  given  struct  or class has the specified member
108              variable
109
110              CHECK_POINTER_MEMBER (POINTER MEMBER HEADER VARIABLE)
111
112
113                POINTER - the name of the struct or class you are interested in
114                MEMBER - the member which existence you want to check
115                HEADER - the header(s) where the prototype should be declared
116                VARIABLE - variable to store the result
117
118
119
120
121              The following variables may be set before calling this macro  to
122              modify the way the check is run:
123
124
125                CMAKE_REQUIRED_FLAGS = string of compile command line flags
126                CMAKE_REQUIRED_DEFINITIONS = list of macros to define (-DFOO=bar)
127                CMAKE_REQUIRED_INCLUDES = list of include directories
128
129
130       CheckPrototypeExists
131              Check if the prototype for a function exists.
132
133              CHECK_PROTOTYPE_EXISTS (FUNCTION HEADER VARIABLE)
134
135
136                FUNCTION - the name of the function you are looking for
137                HEADER - the header(s) where the prototype should be declared
138                VARIABLE - variable to store the result
139
140
141
142
143              The  following variables may be set before calling this macro to
144              modify the way the check is run:
145
146
147                CMAKE_REQUIRED_FLAGS = string of compile command line flags
148                CMAKE_REQUIRED_DEFINITIONS = list of macros to define (-DFOO=bar)
149                CMAKE_REQUIRED_INCLUDES = list of include directories
150
151
152       CheckStructMember
153              Check if the given struct or  class  has  the  specified  member
154              variable
155
156              CHECK_STRUCT_MEMBER (STRUCT MEMBER HEADER VARIABLE)
157
158
159                STRUCT - the name of the struct or class you are interested in
160                MEMBER - the member which existence you want to check
161                HEADER - the header(s) where the prototype should be declared
162                VARIABLE - variable to store the result
163
164
165
166
167              The  following variables may be set before calling this macro to
168              modify the way the check is run:
169
170
171                CMAKE_REQUIRED_FLAGS = string of compile command line flags
172                CMAKE_REQUIRED_DEFINITIONS = list of macros to define (-DFOO=bar)
173                CMAKE_REQUIRED_INCLUDES = list of include directories
174
175
176       FindACL
177              Try to find the ACL library
178
179              Once done this will define
180
181
182                ACL_FOUND - system has the ACL library
183                ACL_LIBS - The libraries needed to use ACL
184
185
186       FindAGG
187              Try to find the AGG graphics library
188
189              Once done this will define
190
191
192                AGG_FOUND - system has AGG
193                AGG_INCLUDE_DIR - the AGG include directory
194                AGG_LIBRARIES - Link these to use AGG
195                AGG_DEFINITIONS - Compiler switches required for using AGG
196
197
198       FindAkode
199              Try to find the aKode library
200
201              Once done this will define
202
203
204                AKODE_FOUND - system has the aKode library
205                AKODE_INCLUDE_DIR - the aKode include directory
206                AKODE_LIBRARIES - The libraries needed to use aKode
207
208
209       FindAlsa
210
211
212              Alsa check, based on libkmid/configure.in.in. Only  the  support
213              for Alsa >= 0.9.x was included; 0.5.x was dropped (but feel free
214              to re-add it if you need it) It defines ... It offers  the  fol‐
215              lowing macros:
216
217
218                ALSA_CONFIGURE_FILE(config_header) - generate a config.h, typical usage:
219                                                     ALSA_CONFIGURE_FILE(${CMAKE_BINARY_DIR}/config-alsa.h)
220                ALSA_VERSION_STRING(version_string)  looks for alsa/version.h and reads the version string into
221                                                     the first argument passed to the macro
222
223
224       FindAutomoc4
225              Try to find automoc4
226
227              Once done this will define
228
229
230                AUTOMOC4_FOUND - automoc4 has been found
231                AUTOMOC4_EXECUTABLE - the automoc4 tool
232                AUTOMOC4_VERSION - the full version of automoc4
233                AUTOMOC4_VERSION_MAJOR, AUTOMOC4_VERSION_MINOR, AUTOMOC4_VERSION_PATCH - AUTOMOC4_VERSION
234                                   broken into its components
235
236
237
238
239              It also adds the following macros
240
241
242                AUTOMOC4(<target> <SRCS_VAR>)
243                  Use this to run automoc4 on all files contained in the list <SRCS_VAR>.
244
245
246
247
248                AUTOMOC4_MOC_HEADERS(<target> header1.h header2.h ...)
249                  Use this to add more header files to be processed with automoc4.
250
251
252
253
254                AUTOMOC4_ADD_EXECUTABLE(<target_NAME> src1 src2 ...)
255                  This macro does the same as ADD_EXECUTABLE, but additionally
256                  adds automoc4 handling for all source files.
257
258
259
260
261              AUTOMOC4_ADD_LIBRARY(<target_NAME> src1 src2 ...)
262
263
264                  This macro does the same as ADD_LIBRARY, but additionally
265                  adds automoc4 handling for all source files.
266
267
268       FindAvahi
269
270
271              Find Avahi. Only avahi-common/defs.h is really needed
272
273
274       FindBerkeleyDB
275              Try to find Berkeley DB
276
277              Once done this will define
278
279
280                BERKELEY_DB_FOUND - system has Berkeley DB
281                BERKELEY_DB_INCLUDE_DIR - the Berkeley DB include directory
282                BERKELEY_DB_LIBRARIES - Link these to use Berkeley DB
283                BERKELEY_DB_DEFINITIONS - Compiler switches required for using Berkeley DB
284
285
286       FindBlitz
287              Try to find blitz lib
288
289              Once done this will define
290
291
292                BLITZ_FOUND - system has blitz lib
293                BLITZ_INCLUDES - the blitz include directory
294                BLITZ_LIBRARIES - The libraries needed to use blitz
295
296
297       FindBlueZ
298              Try to find BlueZ
299
300              Once done this will define
301
302
303                BLUEZ_FOUND - system has BlueZ
304                BLUEZ_INCLUDE_DIR - the BlueZ include directory
305                BLUEZ_LIBRARIES - Link these to use BlueZ
306                BLUEZ_DEFINITIONS - Compiler switches required for using BlueZ
307
308              Redistribution  and use is allowed according to the terms of the
309              BSD  license.   For   details   see   the   accompanying   COPY‐
310              ING-CMAKE-SCRIPTS file.
311
312
313
314       FindBoost
315              Try to find Boost include dirs and libraries
316
317
318
319
320              Please  see  the Documentation for Boost in the CMake Manual for
321              details This module only forwards to the one included  in  cmake
322              for compatibility reasons.
323
324
325       FindCarbon
326              Find Carbon on Mac
327
328
329
330
331                CARBON_LIBRARY - the library to use Carbon
332                CARBON_FOUND - true if Carbon has been found
333
334
335       FindDNSSD
336              Try to find DNSSD
337
338              Once done this will define
339
340
341                DNSSD_FOUND - system has DNSSD
342                DNSSD_INCLUDE_DIR - the DNSSD include directory
343                DNSSD_LIBRARIES - Link these to use dnssd
344                DNSSD_DEFINITIONS - Compiler switches required for using DNSSD
345
346
347
348
349              need more test: look at into dnssd/configure.in.in
350
351
352       FindENCHANT
353              Try to find the Enchant spell checker
354
355              Once done this will define
356
357
358                ENCHANT_FOUND - system has ENCHANT
359                ENCHANT_INCLUDE_DIR - the ENCHANT include directory
360                ENCHANT_LIBRARIES - Link these to use ENCHANT
361                ENCHANT_DEFINITIONS - Compiler switches required for using ENCHANT
362
363
364       FindEigen
365              Try to find Eigen1 library
366
367              Note  that Eigen1 is deprecated in favor of Eigen2. So this file
368              is deprecated in favor of FindEigen2.cmake. It is kept only  for
369              compatibility.
370
371
372              Once done this will define
373
374
375                EIGEN_FOUND - system has eigen lib
376                EIGEN_INCLUDE_DIR - the eigen include directory
377
378
379       FindEigen2
380              Try to find Eigen2 lib
381
382              Once done this will define
383
384
385                EIGEN2_FOUND - system has eigen lib with correct version
386                EIGEN2_INCLUDE_DIR - the eigen include directory
387                EIGEN2_VERSION - eigen version
388
389
390       FindExiv2
391              Try to find the Exiv2 library
392
393
394
395
396                EXIV2_MIN_VERSION - You can set this variable to the minimum version you need
397                                    before doing FIND_PACKAGE(Exiv2). The default is 0.12.
398
399
400
401
402              Once done this will define
403
404
405                EXIV2_FOUND - system has libexiv2
406                EXIV2_INCLUDE_DIR - the libexiv2 include directory
407                EXIV2_LIBRARIES - Link these to use libexiv2
408                EXIV2_DEFINITIONS - Compiler switches required for using libexiv2
409
410
411
412
413
414       FindFAM
415              Try to find the FAM directory notification library
416
417              Once done this will define
418
419
420                FAM_FOUND - system has FAM
421                FAM_INCLUDE_DIR - the FAM include directory
422                FAM_LIBRARIES - The libraries needed to use FAM
423
424
425       FindFFmpeg
426              Try to find ffmpeg
427
428              Once done this will define
429
430
431                FFMPEG_FOUND - system has ffmpeg
432                FFMPEG_INCLUDE_DIR - Include directory necessary for using the ffmpeg headers
433                FFMPEG_LIBRARIES - Link these to use ffmpeg
434                FFMPEG_DEFINITIONS - Compiler switches required for using ffmpeg
435
436
437       FindFlac
438              Try to find Flac, the Free Lossless Audio Codec
439
440              Once done this will define
441
442
443                FLAC_FOUND - system has Flac
444                FLAC_INCLUDE_DIR - the Flac include directory
445                FLAC_LIBRARIES - Link these to use Flac
446                FLAC_OGGFLAC_LIBRARIES - Link these to use OggFlac
447
448
449
450
451              No  version  checking  is done - use FLAC_API_VERSION_CURRENT to
452              conditionally compile version-dependent code
453
454
455       FindFlex
456              Try to find Flex
457
458              Once done this will define
459
460
461                FLEX_FOUND - system has Flex
462                FLEX_EXECUTABLE - path of the flex executable
463                FLEX_VERSION - the version string, like "2.5.31"
464
465
466       FindFontconfig
467              Try to find the  Fontconfig
468
469              Once done this will define
470
471
472                FONTCONFIG_FOUND - system has Fontconfig
473                FONTCONFIG_INCLUDE_DIR - The include directory to use for the fontconfig headers
474                FONTCONFIG_LIBRARIES - Link these to use FONTCONFIG
475                FONTCONFIG_DEFINITIONS - Compiler switches required for using FONTCONFIG
476
477
478       FindFreetype
479              Try to find the freetype library
480
481              Once done this will define
482
483
484                FREETYPE_FOUND - system has Freetype
485                FREETYPE_INCLUDE_DIRS - the FREETYPE include directories
486                FREETYPE_LIBRARIES - Link these to use FREETYPE
487                FREETYPE_INCLUDE_DIR - internal
488
489
490       FindGIF
491              Try to find GIF
492
493              Once done this will define
494
495
496                GIF_FOUND - system has GIF
497                GIF_INCLUDE_DIR - the GIF include directory
498                GIF_LIBRARIES - Libraries needed to use GIF
499                GIF_DEFINITIONS - Compiler switches required for using GIF
500
501
502       FindGLIB2
503              Try to find the GLIB2 libraries
504
505              Once done this will define
506
507
508                GLIB2_FOUND - system has glib2
509                GLIB2_INCLUDE_DIR - the glib2 include directory
510                GLIB2_LIBRARIES - glib2 library
511
512
513       FindGMP
514
515
516              Try to find the GMP librairies
517
518
519                GMP_FOUND - system has GMP lib
520                GMP_INCLUDE_DIR - the GMP include directory
521                GMP_LIBRARIES - Libraries needed to use GMP
522
523
524       FindGObject
525              Try to find GObject
526
527              Once done this will define
528
529
530                GOBJECT_FOUND - system has GObject
531                GOBJECT_INCLUDE_DIR - the GObject include directory
532                GOBJECT_LIBRARIES - the libraries needed to use GObject
533                GOBJECT_DEFINITIONS - Compiler switches required for using GObject
534
535
536       FindGSSAPI
537              Try to detect the GSSAPI support
538
539              Once done this will define
540
541
542                GSSAPI_FOUND - system supports GSSAPI
543                GSSAPI_INCS - the GSSAPI include directory
544                GSSAPI_LIBS - the libraries needed to use GSSAPI
545                GSSAPI_FLAVOR - the type of API - MIT or HEIMDAL
546
547
548       FindGStreamer
549              Try to find GStreamer
550
551              Once done this will define
552
553
554                GSTREAMER_FOUND - system has GStreamer
555                GSTREAMER_INCLUDE_DIR - the GStreamer include directory
556                GSTREAMER_LIBRARIES - the libraries needed to use GStreamer
557                GSTREAMER_DEFINITIONS - Compiler switches required for using GStreamer
558
559
560       FindGettext
561
562
563              Try to find Gettext functionality Once done this will define
564
565
566                GETTEXT_FOUND - system has Gettext
567                GETTEXT_INCLUDE_DIR - Gettext include directory
568                GETTEXT_LIBRARIES - Libraries needed to use Gettext
569
570
571       FindGphoto2
572
573
574              cmake macro to test if we use gphoto2
575
576
577                GPHOTO2_FOUND - system has the GPHOTO2 library
578                GPHOTO2_INCLUDE_DIR - the GPHOTO2 include directory
579                GPHOTO2_LIBRARIES - The libraries needed to use GPHOTO2
580
581
582       FindIOKit
583              Find IOKit on Mac
584
585
586
587
588                IOKIT_LIBRARY - the library to use IOKit
589                IOKIT_FOUND - true if IOKit has been found
590
591
592       FindKDE4Internal
593              Find the KDE4 include and library dirs,  KDE  preprocessors  and
594              define a some macros
595
596
597
598
599              This module defines the following variables:
600
601
602                KDE4_FOUND               - set to TRUE if everything required for building KDE software has been found
603
604
605
606
607                KDE4_DEFINITIONS         - compiler definitions required for compiling KDE software
608                KDE4_INCLUDE_DIR         - the KDE 4 include directory
609                KDE4_INCLUDES            - all include directories required for KDE, i.e.
610                                           KDE4_INCLUDE_DIR, but also the Qt4 include directories
611                                           and other platform specific include directories
612                KDE4_LIB_DIR             - the directory where the KDE libraries are installed,
613                                           intended to be used with LINK_DIRECTORIES()
614
615
616
617
618              The  following  variables  are  defined  for  the  various tools
619              required to compile KDE software:
620
621
622                KDE4_KCFGC_EXECUTABLE    - the kconfig_compiler4 executable
623                KDE4_AUTOMOC_EXECUTABLE  - the kde4automoc executable, deprecated, use AUTOMOC4_EXECUTABLE instead
624                KDE4_MEINPROC_EXECUTABLE - the meinproc4 executable
625                KDE4_MAKEKDEWIDGETS_EXECUTABLE - the makekdewidgets4 executable
626
627
628
629
630              The following  variables  point  to  the  location  of  the  KDE
631              libraries, but shouldn't be used directly:
632
633
634                KDE4_KDECORE_LIBRARY     - the kdecore library
635                KDE4_KDEUI_LIBRARY       - the kdeui library
636                KDE4_KIO_LIBRARY         - the kio library
637                KDE4_KPARTS_LIBRARY      - the kparts library
638                KDE4_KUTILS_LIBRARY      - the kutils library
639                KDE4_KDE3SUPPORT_LIBRARY - the kde3support library
640                KDE4_KFILE_LIBRARY       - the kfile library
641                KDE4_KHTML_LIBRARY       - the khtml library
642                KDE4_KJS_LIBRARY         - the kjs library
643                KDE4_KJSAPI_LIBRARY      - the kjs public api library
644                KDE4_KNEWSTUFF2_LIBRARY  - the knewstuff2 library
645                KDE4_KDNSSD_LIBRARY      - the kdnssd library
646                KDE4_PHONON_LIBRARY      - the phonon library
647                KDE4_THREADWEAVER_LIBRARY- the threadweaver library
648                KDE4_SOLID_LIBRARY       - the solid library
649                KDE4_KNOTIFYCONFIG_LIBRARY- the knotifyconfig library
650                KDE4_KROSSCORE_LIBRARY   - the krosscore library
651                KDE4_KTEXTEDITOR_LIBRARY - the ktexteditor library
652                KDE4_NEPOMUK_LIBRARY    - the nepomuk library
653                KDE4_PLASMA_LIBRARY      - the plasma library
654
655
656
657
658                KDE4_PLASMA_OPENGL_FOUND  - TRUE if the OpenGL support of Plasma has been found, NOTFOUND otherwise
659
660
661
662
663              Compared  to  the  variables above, the following variables also
664              contain all of the depending libraries, so the  variables  below
665              should be used instead of the ones above:
666
667
668                KDE4_KDECORE_LIBS          - the kdecore library and all depending libraries
669                KDE4_KDEUI_LIBS            - the kdeui library and all depending libraries
670                KDE4_KIO_LIBS              - the kio library and all depending libraries
671                KDE4_KPARTS_LIBS           - the kparts library and all depending libraries
672                KDE4_KUTILS_LIBS           - the kutils library and all depending libraries
673                KDE4_KDE3SUPPORT_LIBS      - the kde3support library and all depending libraries
674                KDE4_KFILE_LIBS            - the kfile library and all depending libraries
675                KDE4_KHTML_LIBS            - the khtml library and all depending libraries
676                KDE4_KJS_LIBS              - the kjs library and all depending libraries
677                KDE4_KJSAPI_LIBS           - the kjs public api library and all depending libraries
678                KDE4_KNEWSTUFF2_LIBS       - the knewstuff2 library and all depending libraries
679                KDE4_KDNSSD_LIBS           - the kdnssd library and all depending libraries
680                KDE4_KDESU_LIBS            - the kdesu library and all depending libraries
681                KDE4_KPTY_LIBS             - the kpty library and all depending libraries
682                KDE4_PHONON_LIBS           - the phonon library and all depending librairies
683                KDE4_THREADWEAVER_LIBRARIES- the threadweaver library and all depending libraries
684                KDE4_SOLID_LIBS            - the solid library and all depending libraries
685                KDE4_KNOTIFYCONFIG_LIBS    - the knotify config library and all depending libraries
686                KDE4_KROSSCORE_LIBS        - the kross core library and all depending libraries
687                KDE4_KROSSUI_LIBS          - the kross ui library which includes core and all depending libraries
688                KDE4_KTEXTEDITOR_LIBS      - the ktexteditor library and all depending libraries
689                KDE4_NEPOMUK_LIBS         - the nepomuk library and all depending libraries
690                KDE4_PLASMA_LIBS           - the plasma library and all depending librairies
691
692
693
694
695              This  module  defines a bunch of variables used as locations for
696              install    directories.     They    can    be    relative    (to
697              CMAKE_INSTALL_PREFIX) or absolute. Under Windows they are always
698              relative.
699
700
701                BIN_INSTALL_DIR          - the directory where executables will be installed (default is prefix/bin)
702                BUNDLE_INSTALL_DIR       - Mac only: the directory where application bundles will be installed (default is /Applications/KDE4 )
703                SBIN_INSTALL_DIR         - the directory where system executables will be installed (default is prefix/sbin)
704                LIB_INSTALL_DIR          - the directory where libraries will be installed (default is prefix/lib)
705                CONFIG_INSTALL_DIR       - the config file install dir
706                DATA_INSTALL_DIR         - the parent directory where applications can install their data
707                HTML_INSTALL_DIR         - the HTML install dir for documentation
708                ICON_INSTALL_DIR         - the icon install dir (default prefix/share/icons/)
709                INFO_INSTALL_DIR         - the kde info install dir (default prefix/info)
710                KCFG_INSTALL_DIR         - the install dir for kconfig files
711                LOCALE_INSTALL_DIR       - the install dir for translations
712                MAN_INSTALL_DIR          - the kde man page install dir (default prefix/man/)
713                MIME_INSTALL_DIR         - the install dir for the mimetype desktop files
714                PLUGIN_INSTALL_DIR       - the subdirectory relative to the install prefix where plugins will be installed (default is ${KDE4_LIB_INSTALL_DIR}/kde4)
715                SERVICES_INSTALL_DIR     - the install dir for service (desktop, protocol, ...) files
716                SERVICETYPES_INSTALL_DIR - the install dir for servicestypes desktop files
717                SOUND_INSTALL_DIR        - the install dir for sound files
718                TEMPLATES_INSTALL_DIR    - the install dir for templates (Create new file...)
719                WALLPAPER_INSTALL_DIR    - the install dir for wallpapers
720                DEMO_INSTALL_DIR         - the install dir for demos
721                KCONF_UPDATE_INSTALL_DIR - the kconf_update install dir
722                XDG_APPS_INSTALL_DIR     - the XDG apps dir
723                XDG_DIRECTORY_INSTALL_DIR- the XDG directory
724                XDG_MIME_INSTALL_DIR     - the XDG mimetypes install dir
725                DBUS_INTERFACES_INSTALL_DIR - the directory where dbus interfaces be installed (default is prefix/share/dbus-1/interfaces)
726                DBUS_SERVICES_INSTALL_DIR        - the directory where dbus services be installed (default is prefix/share/dbus-1/services )
727
728
729
730
731              The following variable is provided, but seem to be unused:
732
733
734                LIBS_HTML_INSTALL_DIR    /share/doc/HTML            CACHE STRING "Is this still used ?")
735
736
737
738
739              The following user adjustable options are provided:
740
741
742                KDE4_ENABLE_FINAL - enable KDE-style enable-final all-in-one-compilation
743                KDE4_BUILD_TESTS  - enable this to build the testcases
744                KDE4_ENABLE_FPIE  - enable it to use gcc Position Independent Executables feature
745                KDE4_USE_COMMON_CMAKE_PACKAGE_CONFIG_DIR - only present for CMake >= 2.6.3, defaults to TRUE
746                                    If enabled, the package should install its <package>Config.cmake file to
747                                    lib/cmake/<package>/ instead to lib/<package>/cmake
748
749
750
751
752              It  also  adds  the  following  macros   and   functions   (from
753              KDE4Macros.cmake)
754
755
756                KDE4_ADD_UI_FILES (SRCS_VAR file1.ui ... fileN.ui)
757                  Use this to add Qt designer ui files to your application/library.
758
759
760
761
762                KDE4_ADD_UI3_FILES (SRCS_VAR file1.ui ... fileN.ui)
763                  Use this to add Qt designer ui files from Qt version 3 to your application/library.
764
765
766
767
768                KDE4_ADD_KCFG_FILES (SRCS_VAR [GENERATE_MOC] file1.kcfgc ... fileN.kcfgc)
769                  Use this to add KDE config compiler files to your application/library.
770                  Use optional GENERATE_MOC to generate moc if you use signals in your kcfg files.
771
772
773
774
775                KDE4_ADD_WIDGET_FILES (SRCS_VAR file1.widgets ... fileN.widgets)
776                  Use this to add widget description files for the makekdewidgets4 code generator
777                  for Qt Designer plugins.
778
779
780
781
782                KDE4_CREATE_FINAL_FILES (filename_CXX filename_C file1 ... fileN)
783                  This macro is intended mainly for internal uses.
784                  It is used for enable-final. It will generate two source files,
785                  one for the C files and one for the C++ files.
786                  These files will have the names given in filename_CXX and filename_C.
787
788
789
790
791                KDE4_ADD_PLUGIN ( name [WITH_PREFIX] file1 ... fileN )
792                  Create a KDE plugin (KPart, kioslave, etc.) from the given source files.
793                  It supports KDE4_ENABLE_FINAL.
794                  If WITH_PREFIX is given, the resulting plugin will have the prefix "lib", otherwise it won't.
795
796
797
798
799                KDE4_ADD_KDEINIT_EXECUTABLE (name [NOGUI] [RUN_UNINSTALLED] file1 ... fileN)
800                  Create a KDE application in the form of a module loadable via kdeinit.
801                  A library named kdeinit_<name> will be created and a small executable which links to it.
802                  It supports KDE4_ENABLE_FINAL
803                  If the executable doesn't have a GUI, use the option NOGUI. By default on OS X
804                  application bundles are created, with the NOGUI option no bundles but simple executables
805                  are created. Under Windows this flag is also necessary to separate between applications
806                  with GUI and without. On other UNIX systems this flag has no effect.
807                  RUN_UNINSTALLED is deprecated and is ignored, for details see the documentation for
808                  KDE4_ADD_EXECUTABLE().
809
810
811
812
813                KDE4_ADD_EXECUTABLE (name [NOGUI] [TEST] [RUN_UNINSTALLED] file1 ... fileN)
814                  Equivalent to ADD_EXECUTABLE(), but additionally adds some more features:
815                  -support for KDE4_ENABLE_FINAL
816                  -support for automoc
817                  -automatic RPATH handling
818                  If the executable doesn't have a GUI, use the option NOGUI. By default on OS X
819                  application bundles are created, with the NOGUI option no bundles but simple executables
820                  are created. Under Windows this flag is also necessary to separate between applications
821                  with GUI and without. On other UNIX systems this flag has no effect.
822                  The option TEST is for internal use only.
823                  The option RUN_UNINSTALLED is ignored. It was necessary with KDE 4.0 and 4.1
824                  if the executable had to be run from the build tree. Since KDE 4.2 all
825                  executables can be always run uninstalled (the RPATH of executables which are not
826                  yet installed points since then into the buildtree and is changed
827                  to the proper location when installing, so RUN_UNINSTALLED is not necessary anymore).
828
829
830
831
832                KDE4_ADD_LIBRARY (name [STATIC | SHARED | MODULE ] file1 ... fileN)
833                  Equivalent to ADD_LIBRARY(), but additionally it supports KDE4_ENABLE_FINAL
834                  and under Windows it adds a -DMAKE_<name>_LIB definition to the compilation.
835
836
837
838
839                KDE4_ADD_UNIT_TEST (testname [TESTNAME targetname] file1 ... fileN)
840                  add a unit test, which is executed when running make test
841                  it will be built with RPATH poiting to the build dir
842                  The targets are always created, but only built for the "all"
843                  target if the option KDE4_BUILD_TESTS is enabled. Otherwise the rules for the target
844                  are created but not built by default. You can build them by manually building the target.
845                  The name of the target can be specified using TESTNAME <targetname>, if it is not given
846                  the macro will default to the <testname>
847                  KDESRCDIR is set to the source directory of the test, this can be used with
848                  KGlobal::dirs()->addResourceDir( "data", KDESRCDIR )
849
850
851
852
853                KDE4_UPDATE_ICONCACHE()
854                  Notifies the icon cache that new icons have been installed by updating
855                  mtime of ${ICON_INSTALL_DIR}/hicolor directory.
856
857
858
859
860                KDE4_INSTALL_ICONS( path theme)
861                  Installs all png and svgz files in the current directory to the icon
862                  directoy given in path, in the subdirectory for the given icon theme.
863
864
865
866
867                KDE4_CREATE_HANDBOOK( docbookfile [INSTALL_DESTINATION installdest] [SUBDIR subdir])
868                 Create the handbook from the docbookfile (using meinproc4)
869                 The resulting handbook will be installed to <installdest> when using
870                 INSTALL_DESTINATION <installdest>, or to <installdest>/<subdir> if
871                 SUBDIR <subdir> is specified.
872
873
874
875
876                KDE4_CREATE_MANPAGE( docbookfile section )
877                 Create the manpage for the specified section from the docbookfile (using meinproc4)
878                 The resulting manpage will be installed to <installdest> when using
879                 INSTALL_DESTINATION <installdest>, or to <installdest>/<subdir> if
880                 SUBDIR <subdir> is specified.
881
882
883
884
885
886
887
888                A note on the possible values for CMAKE_BUILD_TYPE and how KDE handles
889                the flags for those buildtypes. FindKDE4Internal supports the values
890                Debug, Release, RelWithDebInfo, Profile and Debugfull:
891
892
893
894
895                Release
896                        optimised for speed, qDebug/kDebug turned off, no debug symbols
897                RelWithDebInfo (Release with debug info)
898                        optimised for speed, debugging symbols on (-g)
899                Debug
900                        optimised but debuggable, debugging on (-g)
901                        (-fno-reorder-blocks -fno-schedule-insns -fno-inline)
902                DebugFull
903                        no optimisation, full debugging on (-g3)
904                Profile
905                        DebugFull + -ftest-coverage -fprofile-arcs
906
907
908
909
910                It is expected that the "Debug" build type be still debuggable with gdb
911                without going all over the place, but still produce better performance.
912                It's also important to note that gcc cannot detect all warning conditions
913                unless the optimiser is active.
914
915
916
917
918                This module allows to depend on a particular minimum version of kdelibs.
919                To acomplish that one should use the apropriate cmake syntax for
920                find_package. For example to depend on kdelibs >= 4.1.0 one should use
921
922
923
924
925                find_package(KDE4 4.1.0 REQUIRED)
926
927
928
929
930                In earlier versions of KDE you could use the variable KDE_MIN_VERSION to
931                have such a dependency. This variable is deprecated with KDE 4.2.0, but
932                will still work to make the module backwards-compatible.
933
934
935       FindKDE4Workspace
936
937
938              Find  if  we  installed  kdebase/workspaces. Once done this will
939              define
940
941
942                KDE4WORKSPACE_FOUND - system has KDE workspace installed
943                KDE4WORKSPACE_INCLUDE_DIR - the KDE workspace include directory
944
945
946
947
948              It also sets variables for the following libraries:
949
950
951                 KDE4WORKSPACE_TASKMANAGER_LIBRARY, KDE4WORKSPACE_TASKMANAGER_LIBS
952                 KDE4WORKSPACE_KWORKSPACE_LIBRARY, KDE4WORKSPACE_KWORKSPACE_LIBS
953                 KDE4WORKSPACE_SOLIDCONTROLIFACES_LIBRARY, KDE4WORKSPACE_SOLIDCONTROLIFACES_LIBS
954                 KDE4WORKSPACE_SOLIDCONTROL_LIBRARY, KDE4WORKSPACE_SOLIDCONTROL_LIBS
955                 KDE4WORKSPACE_PROCESSUI_LIBRARY, KDE4WORKSPACE_PROCESSUI_LIBS
956                 KDE4WORKSPACE_LSOFUI_LIBRARY, KDE4WORKSPACE_LSOFUI_LIBS
957                 KDE4WORKSPACE_PLASMACLOCK_LIBRARY, KDE4WORKSPACE_PLASMACLOCK_LIBS
958                 KDE4WORKSPACE_NEPOMUKQUERYCLIENT_LIBRARY, KDE4WORKSPACE_NEPOMUKQUERYCLIENT_LIBS
959                 KDE4WORKSPACE_NEPOMUKQUERY_LIBRARY, KDE4WORKSPACE_NEPOMUKQUERY_LIBS
960                 KDE4WORKSPACE_KSCREENSAVER_LIBRARY, KDE4WORKSPACE_KSCREENSAVER_LIBS
961                 KDE4WORKSPACE_WEATHERION_LIBRARY, KDE4WORKSPACE_WEATHERION_LIBS
962                 KDE4WORKSPACE_KWINEFFECTS_LIBRARY, KDE4WORKSPACE_KWINEFFECTS_LIBS
963                 KDE4WORKSPACE_KDECORATIONS_LIBRARY, KDE4WORKSPACE_KDECORATIONS_LIBS
964                 KDE4WORKSPACE_KSGRD_LIBRARY, KDE4WORKSPACE_KSGRD_LIBS
965                 KDE4WORKSPACE_KEPHAL_LIBRARY, KDE4WORKSPACE_KEPHAL_LIBS
966
967
968
969
970              And the following locations:
971
972
973                 KDE4WORKSPACE_LIB_DIR
974                 KDE4WORKSPACE_LIBEXEC_DIR
975                 KDE4WORKSPACE_INCLUDE_DIR
976                 KDE4WORKSPACE_BIN_DIR
977                 KDE4WORKSPACE_SBIN_DIR
978                 KDE4WORKSPACE_DATA_DIR
979                 KDE4WORKSPACE_HTML_DIR
980                 KDE4WORKSPACE_CONFIG_DIR
981                 KDE4WORKSPACE_ICON_DIR
982                 KDE4WORKSPACE_KCFG_DIR
983                 KDE4WORKSPACE_LOCALE_DIR
984                 KDE4WORKSPACE_MIME_DIR
985                 KDE4WORKSPACE_SOUND_DIR
986                 KDE4WORKSPACE_TEMPLATES_DIR
987                 KDE4WORKSPACE_WALLPAPER_DIR
988                 KDE4WORKSPACE_KCONF_UPDATE_DIR
989                 KDE4WORKSPACE_AUTOSTART_DIR
990                 KDE4WORKSPACE_XDG_APPS_DIR
991                 KDE4WORKSPACE_XDG_DIRECTORY_DIR
992                 KDE4WORKSPACE_SYSCONF_DIR
993                 KDE4WORKSPACE_MAN_DIR
994                 KDE4WORKSPACE_INFO_DIR
995                 KDE4WORKSPACE_DBUS_INTERFACES_DIR
996                 KDE4WORKSPACE_DBUS_SERVICES_DIR
997                 KDE4WORKSPACE_SERVICES_DIR
998                 KDE4WORKSPACE_SERVICETYPES_DIR
999
1000
1001       FindKDEWIN32
1002              Try to find the KDEWIN32 library - deprecated
1003
1004
1005
1006
1007              Once done this will define
1008
1009
1010                KDEWIN32_FOUND - system has KDEWIN32
1011                KDEWIN32_INCLUDES - the KDEWIN32 include directories
1012                KDEWIN32_LIBRARIES - The libraries needed to use KDEWIN32
1013
1014
1015       FindKDEWIN_Packager
1016
1017
1018
1019
1020
1021              KDEWIN  packager   http://www.winkde.org/pub/kde/ports/win32/in
1022              staller
1023
1024
1025              The  kdewin  packager  is  searched  in the following pathes and
1026              order
1027
1028
1029                  path specified by the environment dir KDEWIN_PACKAGER_DIR
1030                  <ProgramFiles>/kdewin-packager
1031                  <ProgramFiles>/kdewin-installer
1032
1033
1034
1035
1036              The macro KDEWIN_PACKAGER provides package building support  and
1037              should be  added to the top level CMakeLists.txt as shown below
1038
1039
1040              if (KDEWIN_PACKAGER_FOUND)
1041
1042
1043                  KDEWIN_PACKAGER(
1044                     "projectname"
1045                     "version"
1046                     "description"
1047                     "additional options"
1048                 )
1049
1050              endif (KDEWIN_PACKAGER_FOUND)
1051
1052
1053       FindKDEWin
1054              Try to find the KDEWIN library
1055
1056
1057
1058
1059              Once done this will define
1060
1061
1062                KDEWIN_FOUND - system has KDEWIN
1063                KDEWIN_INCLUDES - the KDEWIN include directories
1064                KDEWIN_LIBRARIES - The libraries needed to use KDEWIN
1065
1066
1067       FindKNepomuk
1068
1069
1070              Once done this will define
1071
1072
1073                KNEPOMUK_FOUND - system has the Nepomuk-KDE backbone lib KNep
1074                KNEPOMUK_INCLUDES - the libKNep include directory
1075                KNEPOMUK_LIBRARIES - Link these to use libKNep
1076
1077
1078
1079
1080
1081       FindKdcraw
1082              Try to find the Kdcraw library
1083
1084              Once done this will define
1085
1086
1087                KDCRAW_FOUND - system has libkdcraw
1088                KDCRAW_INCLUDE_DIR - the libkdcraw include directory
1089                KDCRAW_LIBRARIES - Link these to use libkdcraw
1090                KDCRAW_DEFINITIONS - Compiler switches required for using libkdcraw
1091
1092
1093
1094
1095
1096       FindKdeMultimedia
1097
1098
1099              Module to see if we have KDE4 kdemultimedia installed
1100
1101
1102              This module defines
1103
1104
1105                KDEMULTIMEDIA_INCLUDE_DIR - the include dir
1106                KCDDB_LIBRARY - the kcddb library
1107                KCOMPACTDISC_LIBRARY - the kcompactdisk library
1108                KDEMULTIMEDIA_LIBRARIES - all of the KDE multimedia libraries together
1109                KDEMULTIMEDIA_FOUND - true if the above have been found
1110
1111
1112       FindKdepim
1113
1114
1115              Nothing  should  require kdepim. We'll show a fatal error and an
1116              explanation.
1117
1118
1119       FindKdepimLibs
1120
1121
1122              Find if we installed kdepimlibs before to compile it  Once  done
1123              this will define
1124
1125
1126                KDEPIMLIBS_FOUND - system has KDE PIM Libraries
1127                KDEPIMLIBS_INCLUDE_DIR - the KDE PIM Libraries include directory
1128                KDEPIMLIBS_INCLUDE_DIRS - the KDE PIM Libraries include directory and CamelCase headers
1129
1130
1131
1132
1133              It also sets variables for the following libraries:
1134
1135
1136                 KDEPIMLIBS_AKONADI_LIBS
1137                 KDEPIMLIBS_AKONADI_KMIME_LIBS
1138                 KDEPIMLIBS_AKONADI_KABC_LIBS
1139                 KDEPIMLIBS_GPGMEPP_LIBS
1140                 KDEPIMLIBS_KABC_LIBS
1141                 KDEPIMLIBS_KBLOG_LIBS
1142                 KDEPIMLIBS_KCAL_LIBS
1143                 KDEPIMLIBS_KHOLIDAYS_LIBS
1144                 KDEPIMLIBS_KIMAP_LIBS
1145                 KDEPIMLIBS_KLDAP_LIBS
1146                 KDEPIMLIBS_KMIME_LIBS
1147                 KDEPIMLIBS_KPIMIDENTITIES_LIBS
1148                 KDEPIMLIBS_KPIMUTILS_LIBS
1149                 KDEPIMLIBS_KRESOURCES_LIBS
1150                 KDEPIMLIBS_KTNEF_LIBS
1151                 KDEPIMLIBS_KXMLRPCCLIENT_LIBS
1152                 KDEPIMLIBS_MAILTRANSPORT_LIBS
1153                 KDEPIMLIBS_QGPGME_LIBS
1154                 KDEPIMLIBS_SYNDICATION_LIBS
1155
1156
1157
1158
1159              And the following locations:
1160
1161
1162                 KDEPIMLIBS_DATA_DIR
1163                 KDEPIMLIBS_DBUS_INTERFACES_DIR
1164                 KDEPIMLIBS_DBUS_SERVICES_DIR
1165                 KDEPIMLIBS_INCLUDE_DIR
1166                 KDEPIMLIBS_INCLUDE_DIRS
1167                 KDEPIMLIBS_LIB_DIR
1168                 KDEPIMLIBS_BIN_DIR
1169                 KDEPIMLIBS_LIBEXEC_DIR
1170                 KDEPIMLIBS_SBIN_DIR
1171                 KDEPIMLIBS_HTML_DIR
1172                 KDEPIMLIBS_CONFIG_DIR
1173                 KDEPIMLIBS_ICON_DIR
1174                 KDEPIMLIBS_KCFG_DIR
1175                 KDEPIMLIBS_LOCALE_DIR
1176                 KDEPIMLIBS_MIME_DIR
1177                 KDEPIMLIBS_SOUND_DIR
1178                 KDEPIMLIBS_TEMPLATES_DIR
1179                 KDEPIMLIBS_KCONF_UPDATE_DIR
1180                 KDEPIMLIBS_AUTOSTART_DIR
1181                 KDEPIMLIBS_XDG_APPS_DIR
1182                 KDEPIMLIBS_XDG_DIRECTORY_DIR
1183                 KDEPIMLIBS_SYSCONF_DIR
1184                 KDEPIMLIBS_MAN_DIR
1185                 KDEPIMLIBS_INFO_DIR
1186                 KDEPIMLIBS_SERVICES_DIR
1187                 KDEPIMLIBS_SERVICETYPES_DIR
1188
1189
1190       FindKexiv2
1191              Try to find the KExiv2 library
1192
1193              Once done this will define
1194
1195
1196                KEXIV2_FOUND - system has libkexiv2
1197                KEXIV2_INCLUDE_DIR - the libkexiv2 include directory
1198                KEXIV2_LIBRARIES - Link these to use libkexiv2
1199                KEXIV2_DEFINITIONS - Compiler switches required for using libkexiv2
1200
1201
1202
1203
1204
1205       FindKipi
1206              Try to find the Kipi library
1207
1208              Once done this will define
1209
1210
1211                KIPI_FOUND - system has libkipi
1212                KIPI_INCLUDE_DIR - the libkipi include directory
1213                KIPI_LIBRARIES - Link these to use libkipi
1214                KIPI_DEFINITIONS - Compiler switches required for using libkipi
1215
1216
1217
1218
1219
1220       FindKonto
1221
1222
1223              Once done this will define
1224
1225
1226                KONTO_FOUND - system has the Nepomuk-KDE backbone lib Konto
1227                KONTO_INCLUDES - the libKonto include directory
1228                KONTO_LIBRARIES - Link these to use libKonto
1229
1230
1231
1232
1233
1234       FindKopete
1235              Try to find the Kopete library
1236
1237              Once done this will define
1238
1239
1240                Kopete_FOUND - system has kopete
1241                KOPETE_INCLUDE_DIR - the kopete include directory
1242                KOPETE_LIBRARIES - Link these to use kopete
1243
1244
1245       FindKorundum
1246              Find Korundum - the KDE Ruby bindings
1247
1248
1249
1250
1251              This  module finds if Korundum is installed. It defines the fol‐
1252              lowing variables:
1253
1254
1255                KORUNDUM_PATH - the path to the korundum ruby file
1256                KORUNDUM_FOUND - true if it has been found
1257
1258
1259       FindLCMS
1260              Find LCMS
1261
1262              Find the LCMS includes and library This module defines
1263
1264
1265                LCMS_INCLUDE_DIR, where to find lcms.h
1266                LCMS_LIBRARIES, the libraries needed to use LCMS.
1267                LCMS_VERSION, The value of LCMS_VERSION defined in lcms.h
1268                LCMS_FOUND, If false, do not try to use LCMS.
1269
1270
1271       FindLibArt
1272              Try to find the LibArt 2D graphics library
1273
1274              Once done this will define
1275
1276
1277                LIBART_FOUND - system has the LibArt
1278                LIBART_INCLUDE_DIR - the LibArt include directory
1279                LIBART_LIBRARIES - The libraries needed to use LibArt
1280
1281
1282       FindLibKonq
1283              Try to find konqueror library
1284
1285              Once done this will define
1286
1287
1288                LIBKONQ_FOUND - system has libkonq library
1289                LIBKONQ_INCLUDE_DIR - the LIBKONQ include directory
1290                LIBKONQ_LIBRARY - the libkonq library
1291
1292
1293       FindLibLZMA
1294              Find LibLZMA
1295
1296              Find LibLZMA headers and library
1297
1298
1299                LIBLZMA_FOUND             - True if liblzma is found.
1300                LIBLZMA_INCLUDE_DIRS      - Directory where liblzma headers are located.
1301                LIBLZMA_LIBRARIES         - Lzma libraries to link against.
1302                LIBLZMA_HAS_AUTO_DECODER  - True if lzma_auto_decoder() is found (required).
1303                LIBLZMA_HAS_EASY_ENCODER  - True if lzma_easy_encoder() is found (required).
1304                LIBLZMA_HAS_LZMA_PRESET   - True if lzma_lzma_preset() is found (required).
1305
1306
1307       FindLibXml2
1308              Try to find LibXml2
1309
1310              Once done this will define
1311
1312
1313                LIBXML2_FOUND - System has LibXml2
1314                LIBXML2_INCLUDE_DIR - The LibXml2 include directory
1315                LIBXML2_LIBRARIES - The libraries needed to use LibXml2
1316                LIBXML2_DEFINITIONS - Compiler switches required for using LibXml2
1317                LIBXML2_XMLLINT_EXECUTABLE - The XML checking tool xmllint coming with LibXml2
1318
1319
1320       FindLibXslt
1321              Try to find LibXslt
1322
1323              Once done this will define
1324
1325
1326                LIBXSLT_FOUND - system has LibXslt
1327                LIBXSLT_INCLUDE_DIR - the LibXslt include directory
1328                LIBXSLT_LIBRARIES - Link these to LibXslt
1329                LIBXSLT_DEFINITIONS - Compiler switches required for using LibXslt
1330                LIBXSLT_XSLTPROC_EXECUTABLE - path to the xsltproc tool
1331
1332
1333       FindLibintl
1334
1335
1336              Try to find Libintl functionality Once done this will define
1337
1338
1339                LIBINTL_FOUND - system has Libintl
1340                LIBINTL_INCLUDE_DIR - Libintl include directory
1341                LIBINTL_LIBRARIES - Libraries needed to use Libintl
1342
1343
1344
1345
1346              TODO: This will enable translations only if Gettext  functional‐
1347              ity  is  present  in  libc.  Must  have  more  robust system for
1348              release, where Gettext functionality can also reside  in  stand‐
1349              alone  Gettext  library, or the one embedded within kdelibs (cf.
1350              gettext.m4 from Gettext source).
1351
1352
1353       FindLibraryWithDebug
1354
1355
1356
1357
1358
1359                FIND_LIBRARY_WITH_DEBUG
1360                -> enhanced FIND_LIBRARY to allow the search for an
1361                   optional debug library with a WIN32_DEBUG_POSTFIX similar
1362                   to CMAKE_DEBUG_POSTFIX when creating a shared lib
1363                   it has to be the second and third argument
1364
1365
1366       FindLinuxWirelesstools
1367              Try to find wireless extensions support libraries
1368
1369              Once done this will define
1370
1371
1372                IW_FOUND - system has IW
1373                IW_INCLUDE_DIR - the IW include directory
1374                IW_LIBRARIES - Link to these to use IW
1375
1376
1377       FindMsgfmt
1378              Try to find msgfmt
1379
1380              Once done this will define
1381
1382
1383                MSGFMT_FOUND - system has msgfmt
1384
1385
1386       FindMusicBrainz
1387
1388
1389              Module to find the musicbrainz library
1390
1391
1392              It defines
1393
1394
1395                MUSICBRAINZ_INCLUDE_DIR - the include dir
1396                MUSICBRAINZ_LIBRARIES - the required libraries
1397                MUSICBRAINZ_FOUND - true if both of the above have been found
1398
1399
1400       FindMySQL
1401              Try to find MySQL / MySQL Embedded library
1402
1403              Find the MySQL includes and client library This module defines
1404
1405
1406                MYSQL_INCLUDE_DIR, where to find mysql.h
1407                MYSQL_LIBRARIES, the libraries needed to use MySQL.
1408                MYSQL_LIB_DIR, path to the MYSQL_LIBRARIES
1409                MYSQL_EMBEDDED_LIBRARIES, the libraries needed to use MySQL Embedded.
1410                MYSQL_EMBEDDED_LIB_DIR, path to the MYSQL_EMBEDDED_LIBRARIES
1411                MYSQL_FOUND, If false, do not try to use MySQL.
1412                MYSQL_EMBEDDED_FOUND, If false, do not try to use MySQL Embedded.
1413
1414
1415       FindNepomuk
1416
1417
1418              Once done this will define
1419
1420
1421              Nepomuk requires Soprano, so this module checks for Soprano too.
1422
1423
1424                NEPOMUK_FOUND - system has Nepomuk
1425                NEPOMUK_INCLUDE_DIR - the Nepomuk include directory
1426                NEPOMUK_LIBRARIES - Link these to use Nepomuk
1427                NEPOMUK_DEFINITIONS - Compiler switches required for using Nepomuk
1428
1429
1430
1431
1432
1433       FindNetworkManager
1434              Try to find NetworkManager
1435
1436              Once done this will define
1437
1438
1439                NETWORKMANAGER_FOUND - system has NetworkManager
1440                NETWORKMANAGER_INCLUDE_DIRS - the NetworkManager include directories
1441                NETWORKMANAGER_LIBRARIES - the libraries needed to use NetworkManager
1442                NETWORKMANAGER_CFLAGS - Compiler switches required for using NetworkManager
1443                NETWORKMANAGER_VERSION - version number of NetworkManager
1444
1445
1446       FindOggVorbis
1447              Try to find the OggVorbis libraries
1448
1449              Once done this will define
1450
1451
1452                OGGVORBIS_FOUND - system has OggVorbis
1453                OGGVORBIS_VERSION - set either to 1 or 2
1454                OGGVORBIS_INCLUDE_DIR - the OggVorbis include directory
1455                OGGVORBIS_LIBRARIES - The libraries needed to use OggVorbis
1456                OGG_LIBRARY         - The Ogg library
1457                VORBIS_LIBRARY      - The Vorbis library
1458                VORBISFILE_LIBRARY  - The VorbisFile library
1459                VORBISENC_LIBRARY   - The VorbisEnc library
1460
1461
1462       FindOpenEXR
1463
1464
1465              Try to find the OpenEXR libraries This check defines:
1466
1467
1468                OPENEXR_FOUND - system has OpenEXR
1469                OPENEXR_INCLUDE_DIR - OpenEXR include directory
1470                OPENEXR_LIBRARIES - Libraries needed to use OpenEXR
1471                OPENEXR_DEFINITIONS - definitions required to use OpenEXR
1472
1473
1474       FindOpenSSL
1475              Try to find the OpenSSL encryption library
1476
1477              Once done this will define
1478
1479
1480                OPENSSL_FOUND - system has the OpenSSL library
1481                OPENSSL_INCLUDE_DIR - the OpenSSL include directory
1482                OPENSSL_LIBRARIES - The libraries needed to use OpenSSL
1483                OPENSSL_EAY_LIBRARIES - The additional libraries needed to use OpenSSL on windows
1484
1485
1486       FindPCRE
1487              Try to find the PCRE regular expression library
1488
1489              Once done this will define
1490
1491
1492                PCRE_FOUND - system has the PCRE library
1493                PCRE_INCLUDE_DIR - the PCRE include directory
1494                PCRE_LIBRARIES - The libraries needed to use PCRE
1495
1496
1497       FindPhonon
1498
1499
1500              Find libphonon Once done this will define
1501
1502
1503                PHONON_FOUND    - system has Phonon Library
1504                PHONON_INCLUDES - the Phonon include directory
1505                PHONON_LIBS     - link these to use Phonon
1506                PHONON_VERSION  - the version of the Phonon Library
1507
1508
1509       FindPkgConfig
1510              a pkg-config module for CMake
1511
1512
1513
1514
1515              Usage:
1516
1517
1518                 pkg_check_modules(<PREFIX> [REQUIRED] [QUIET] <MODULE> [<MODULE>]*)
1519                   checks for all the given modules
1520
1521
1522
1523
1524                 pkg_search_module(<PREFIX> [REQUIRED] <MODULE> [<MODULE>]*)
1525                   checks for given modules and uses the first working one
1526
1527
1528
1529
1530              When the 'REQUIRED' argument was set, macros will fail  with  an
1531              error when module(s) could not be found
1532
1533
1534              When  the 'QUIET' argument is set, no error message will be out‐
1535              put if the package was not found.
1536
1537
1538              It sets the following variables:
1539
1540
1541                 PKG_CONFIG_FOUND         ... true if pkg-config works on the system
1542                 PKG_CONFIG_EXECUTABLE    ... pathname of the pkg-config program
1543                 <PREFIX>_FOUND           ... set to 1 if module(s) exist
1544
1545
1546
1547
1548              For the following variables two sets of values exist; first  one
1549              is  the common one and has the given PREFIX. The second set con‐
1550              tains flags which are given out when pkgconfig was  called  with
1551              the '--static' option.
1552
1553
1554                 <XPREFIX>_LIBRARIES      ... only the libraries (w/o the '-l')
1555                 <XPREFIX>_LIBRARY_DIRS   ... the paths of the libraries (w/o the '-L')
1556                 <XPREFIX>_LDFLAGS        ... all required linker flags
1557                 <XPREFIX>_LDFLAGS_OTHER  ... all other linker flags
1558                 <XPREFIX>_INCLUDE_DIRS   ... the '-I' preprocessor flags (w/o the '-I')
1559                 <XPREFIX>_CFLAGS         ... all required cflags
1560                 <XPREFIX>_CFLAGS_OTHER   ... the other compiler flags
1561
1562
1563
1564
1565                 <XPREFIX> = <PREFIX>        for common case
1566                 <XPREFIX> = <PREFIX>_STATIC for static linking
1567
1568
1569
1570
1571              There  are  some  special  variables whose prefix depends on the
1572              count of given modules. When there is only one module,  <PREFIX>
1573              stays  unchanged.  When  there  are multiple modules, the prefix
1574              will be changed to <PREFIX>_<MODNAME>:
1575
1576
1577                 <XPREFIX>_VERSION    ... version of the module
1578                 <XPREFIX>_PREFIX     ... prefix-directory of the module
1579                 <XPREFIX>_INCLUDEDIR ... include-dir of the module
1580                 <XPREFIX>_LIBDIR     ... lib-dir of the module
1581
1582
1583
1584
1585                 <XPREFIX> = <PREFIX>  when |MODULES| == 1, else
1586                 <XPREFIX> = <PREFIX>_<MODNAME>
1587
1588
1589
1590
1591              A <MODULE> parameter can have the following formats:
1592
1593
1594                 {MODNAME}            ... matches any version
1595                 {MODNAME}>={VERSION} ... at least version <VERSION> is required
1596                 {MODNAME}={VERSION}  ... exactly version <VERSION> is required
1597                 {MODNAME}<={VERSION} ... modules must not be newer than <VERSION>
1598
1599
1600
1601
1602              Examples
1603
1604
1605                 pkg_check_modules (GLIB2   glib-2.0)
1606
1607
1608
1609
1610                 pkg_check_modules (GLIB2   glib-2.0>=2.10)
1611                   requires at least version 2.10 of glib2 and defines e.g.
1612                     GLIB2_VERSION=2.10.3
1613
1614
1615
1616
1617                 pkg_check_modules (FOO     glib-2.0>=2.10 gtk+-2.0)
1618                   requires both glib2 and gtk2, and defines e.g.
1619                     FOO_glib-2.0_VERSION=2.10.3
1620                     FOO_gtk+-2.0_VERSION=2.8.20
1621
1622
1623
1624
1625                 pkg_check_modules (XRENDER REQUIRED xrender)
1626                   defines e.g.:
1627                     XRENDER_LIBRARIES=Xrender;X11
1628                     XRENDER_STATIC_LIBRARIES=Xrender;X11;pthread;Xau;Xdmcp
1629
1630
1631
1632
1633                 pkg_search_module (BAR     libxml-2.0 libxml2 libxml>=2)
1634
1635
1636       FindPopplerQt4
1637              Try to find the Qt4 binding of the Poppler library
1638
1639              Once done this will define
1640
1641
1642                POPPLER_QT4_FOUND - system has poppler-qt4
1643                POPPLER_QT4_INCLUDE_DIR - the poppler-qt4 include directory
1644                POPPLER_QT4_LIBRARIES - Link these to use poppler-qt4
1645                POPPLER_QT4_DEFINITIONS - Compiler switches required for using poppler-qt4
1646
1647
1648
1649
1650
1651       FindPostgreSQL
1652              Find PostgreSQL
1653
1654              Find the PostgreSQL includes  and  client  library  This  module
1655              defines
1656
1657
1658                POSTGRESQL_INCLUDE_DIR, where to find POSTGRESQL.h
1659                POSTGRESQL_LIBRARIES, the libraries needed to use POSTGRESQL.
1660                POSTGRESQL_FOUND, If false, do not try to use PostgreSQL.
1661
1662
1663       FindPulseAudio
1664
1665
1666              Try to find the PulseAudio library
1667
1668
1669              Once done this will define:
1670
1671
1672                PULSEAUDIO_FOUND - system has the PulseAudio library
1673                PULSEAUDIO_INCLUDE_DIR - the PulseAudio include directory
1674                PULSEAUDIO_LIBRARY - the libraries needed to use PulseAudio
1675                PULSEAUDIO_MAINLOOP_LIBRARY - the libraries needed to use PulsAudio Mailoop
1676
1677
1678
1679
1680              Copyright  (c)  2008,  Matthias Kretz, <kretz@kde.org> Copyright
1681              (c) 2009, Marcus Hufgard, <Marcus.Hufgard@hufgard.de>
1682
1683
1684              Redistribution and use is allowed according to the terms of  the
1685              BSD   license.   For   details   see   the   accompanying  COPY‐
1686              ING-CMAKE-SCRIPTS file.
1687
1688
1689       FindPyKDE4
1690
1691
1692              FindPyKDE4
1693
1694
1695              Checks that Python and PyKDE4 are installed and defines a couple
1696              macros:
1697
1698
1699                   * PYKDE4_INSTALL_PYTHON_FILES
1700                   * PYKDE4_ADD_UI_FILES
1701                   * PYKDE4_ADD_EXECUTABLE
1702
1703
1704       FindPyQt4
1705
1706
1707              Find  PyQt4  ~~~~~~~~~~  Copyright  (c) 2007-2008, Simon Edwards
1708              <simon@simonzone.com> Redistribution and use is allowed  accord‐
1709              ing  to the terms of the BSD license. For details see the accom‐
1710              panying COPYING-CMAKE-SCRIPTS file.
1711
1712
1713              PyQt4            website:            http://www.riverbankcomput
1714              ing.co.uk/pyqt/index.php
1715
1716
1717              Find  the  installed  version of PyQt4. FindPyQt4 should only be
1718              called after Python has been found.
1719
1720
1721              This file defines the following variables:
1722
1723
1724              PYQT4_VERSION - The version of PyQt4  found  expressed  as  a  6
1725              digit hex number
1726
1727
1728                   suitable for comparision as a string
1729
1730
1731
1732
1733              PYQT4_VERSION_STR  -  The  version  of PyQt4 as a human readable
1734              string.
1735
1736
1737              PYQT4_VERSION_TAG - The PyQt version tag  using  by  PyQt's  sip
1738              files.
1739
1740
1741              PYQT4_SIP_DIR - The directory holding the PyQt4 .sip files.
1742
1743
1744              PYQT4_SIP_FLAGS - The SIP flags used to build PyQt.
1745
1746
1747       FindPythonLibrary
1748
1749
1750              Find  Python ~~~~~~~~~~~ Find the Python interpreter and related
1751              Python directories.
1752
1753
1754              This file defines the following variables:
1755
1756
1757              PYTHON_EXECUTABLE - The path and filename of the  Python  inter‐
1758              preter.
1759
1760
1761              PYTHON_SHORT_VERSION  -  The  version  of the Python interpreter
1762              found,
1763
1764
1765                   excluding the patch version number. (e.g. 2.5 and not 2.5.1))
1766
1767
1768
1769
1770              PYTHON_LONG_VERSION - The  version  of  the  Python  interpreter
1771              found as a human
1772
1773
1774                   readable string.
1775
1776
1777
1778
1779              PYTHON_SITE_PACKAGES_DIR  - Location of the Python site-packages
1780              directory.
1781
1782
1783              PYTHON_INCLUDE_PATH - Directory  holding  the  python.h  include
1784              file.
1785
1786
1787              PYTHON_LIBRARY,   PYTHON_LIBRARIES-   Location   of  the  Python
1788              library.
1789
1790
1791       FindQCA2
1792              Try to find QCA2 (Qt Cryptography Architecture 2)
1793
1794              Once done this will define
1795
1796
1797                QCA2_FOUND - system has QCA2
1798                QCA2_INCLUDE_DIR - the QCA2 include directory
1799                QCA2_LIBRARIES - the libraries needed to use QCA2
1800                QCA2_DEFINITIONS - Compiler switches required for using QCA2
1801
1802
1803
1804
1805              use pkg-config to get the directories and then use these  values
1806              in the FIND_PATH() and FIND_LIBRARY() calls
1807
1808
1809       FindQImageBlitz
1810              Try to find the qimageblitz lib
1811
1812              Once done this will define
1813
1814
1815                QIMAGEBLITZ_FOUND - system has qimageblitz lib
1816                QIMAGEBLITZ_INCLUDES - the qimageblitz include directory
1817                QIMAGEBLITZ_LIBRARIES - The libraries needed to use qimageblitz
1818
1819
1820       FindQt4
1821              Find QT 4
1822
1823              This module can be used to find Qt4. The most important issue is
1824              that the Qt4 qmake is available via the system path. This  qmake
1825              is  then  used  to detect basically everything else. This module
1826              defines  a  number  of  key  variables  and  macros.   First  is
1827              QT_USE_FILE  which  is  the  path  to  a  CMake file that can be
1828              included  to  compile  Qt  4  applications  and  libraries.   By
1829              default, the QtCore and QtGui  libraries are loaded. This behav‐
1830              ior can be changed by setting one  or  more   of  the  following
1831              variables to true before doing INCLUDE(${QT_USE_FILE}):
1832
1833
1834                                  QT_DONT_USE_QTCORE
1835                                  QT_DONT_USE_QTGUI
1836                                  QT_USE_QT3SUPPORT
1837                                  QT_USE_QTASSISTANT
1838                                  QT_USE_QTDESIGNER
1839                                  QT_USE_QTMOTIF
1840                                  QT_USE_QTMAIN
1841                                  QT_USE_QTNETWORK
1842                                  QT_USE_QTNSPLUGIN
1843                                  QT_USE_QTOPENGL
1844                                  QT_USE_QTSQL
1845                                  QT_USE_QTXML
1846                                  QT_USE_QTSVG
1847                                  QT_USE_QTTEST
1848                                  QT_USE_QTUITOOLS
1849                                  QT_USE_QTDBUS
1850                                  QT_USE_QTSCRIPT
1851                                  QT_USE_QTASSISTANTCLIENT
1852                                  QT_USE_QTHELP
1853                                  QT_USE_QTWEBKIT
1854                                  QT_USE_QTXMLPATTERNS
1855                                  QT_USE_PHONON
1856
1857
1858
1859
1860              The  file  pointed  to  by  QT_USE_FILE will set up your compile
1861              environment by adding include directories, preprocessor defines,
1862              and  populate  a  QT_LIBRARIES  variable  containing  all the Qt
1863              libraries and their dependencies. Add the QT_LIBRARIES  variable
1864              to your TARGET_LINK_LIBRARIES.
1865
1866
1867              Typical usage could be something like:
1868
1869
1870                 FIND_PACKAGE(Qt4)
1871                 SET(QT_USE_QTXML 1)
1872                 INCLUDE(${QT_USE_FILE})
1873                 ADD_EXECUTABLE(myexe main.cpp)
1874                 TARGET_LINK_LIBRARIES(myexe ${QT_LIBRARIES})
1875
1876
1877
1878
1879
1880
1881
1882              There  are also some files that need processing by some Qt tools
1883              such as moc and uic.  Listed below are macros that may  be  used
1884              to process those files.
1885
1886
1887
1888                macro QT4_WRAP_CPP(outfiles inputfile ... OPTIONS ...)
1889                      create moc code from a list of files containing Qt class with
1890                      the Q_OBJECT declaration.  Options may be given to moc, such as those found
1891                      when executing "moc -help"
1892
1893
1894
1895
1896                macro QT4_WRAP_UI(outfiles inputfile ... OPTIONS ...)
1897                      create code from a list of Qt designer ui files.
1898                      Options may be given to uic, such as those found
1899                      when executing "uic -help"
1900
1901
1902
1903
1904                macro QT4_ADD_RESOURCES(outfiles inputfile ... OPTIONS ...)
1905                      create code from a list of Qt resource files.
1906                      Options may be given to rcc, such as those found
1907                      when executing "rcc -help"
1908
1909
1910
1911
1912                macro QT4_GENERATE_MOC(inputfile outputfile )
1913                      creates a rule to run moc on infile and create outfile.
1914                      Use this if for some reason QT4_WRAP_CPP() isn't appropriate, e.g.
1915                      because you need a custom filename for the moc file or something similar.
1916
1917
1918
1919
1920                macro QT4_AUTOMOC(sourcefile1 sourcefile2 ... )
1921                      This macro is still experimental.
1922                      It can be used to have moc automatically handled.
1923                      So if you have the files foo.h and foo.cpp, and in foo.h a
1924                      a class uses the Q_OBJECT macro, moc has to run on it. If you don't
1925                      want to use QT4_WRAP_CPP() (which is reliable and mature), you can insert
1926                      #include "foo.moc"
1927                      in foo.cpp and then give foo.cpp as argument to QT4_AUTOMOC(). This will the
1928                      scan all listed files at cmake-time for such included moc files and if it finds
1929                      them cause a rule to be generated to run moc at build time on the
1930                      accompanying header file foo.h.
1931                      If a source file has the SKIP_AUTOMOC property set it will be ignored by this macro.
1932
1933
1934
1935
1936                macro QT4_ADD_DBUS_INTERFACE(outfiles interface basename)
1937                      create a the interface header and implementation files with the
1938                      given basename from the given interface xml file and add it to
1939                      the list of sources.
1940                      To disable generating a namespace header, set the source file property
1941                      NO_NAMESPACE to TRUE on the interface file.
1942                      To include a header in the interface header, set the source file property
1943                      INCLUDE to the name of the header.
1944                      To specify a class name to use, set the source file property CLASSNAME
1945                      to the name of the class.
1946
1947
1948
1949
1950                macro QT4_ADD_DBUS_INTERFACES(outfiles inputfile ... )
1951                      create the interface header and implementation files
1952                      for all listed interface xml files
1953                      the name will be automatically determined from the name of the xml file
1954                      To disable generating namespace headers, set the source file property
1955                      NO_NAMESPACE to TRUE for these inputfiles.
1956                      To include a header in the interface header, set the source file property
1957                      INCLUDE to the name of the header.
1958                      To specify a class name to use, set the source file property CLASSNAME
1959                      to the name of the class.
1960
1961
1962
1963
1964                macro QT4_ADD_DBUS_ADAPTOR(outfiles xmlfile parentheader parentclassname [basename] [classname])
1965                      create a dbus adaptor (header and implementation file) from the xml file
1966                      describing the interface, and add it to the list of sources. The adaptor
1967                      forwards the calls to a parent class, defined in parentheader and named
1968                      parentclassname. The name of the generated files will be
1969                      <basename>adaptor.{cpp,h} where basename defaults to the basename of the xml file.
1970                      If <classname> is provided, then it will be used as the classname of the
1971                      adaptor itself.
1972
1973
1974
1975
1976                macro QT4_GENERATE_DBUS_INTERFACE( header [interfacename] OPTIONS ...)
1977                      generate the xml interface file from the given header.
1978                      If the optional argument interfacename is omitted, the name of the
1979                      interface file is constructed from the basename of the header with
1980                      the suffix .xml appended.
1981                      Options may be given to qdbuscpp2xml, such as those found when executing "qdbuscpp2xml --help"
1982
1983
1984
1985
1986                QT_FOUND         If false, don't try to use Qt.
1987                QT4_FOUND        If false, don't try to use Qt 4.
1988
1989
1990
1991
1992                QT_VERSION_MAJOR The major version of Qt found.
1993                QT_VERSION_MINOR The minor version of Qt found.
1994                QT_VERSION_PATCH The patch version of Qt found.
1995
1996
1997
1998
1999                QT_QTCORE_FOUND        True if QtCore was found.
2000                QT_QTGUI_FOUND         True if QtGui was found.
2001                QT_QT3SUPPORT_FOUND    True if Qt3Support was found.
2002                QT_QTASSISTANT_FOUND   True if QtAssistant was found.
2003                QT_QTDBUS_FOUND        True if QtDBus was found.
2004                QT_QTDESIGNER_FOUND    True if QtDesigner was found.
2005                QT_QTDESIGNERCOMPONENTS True if QtDesignerComponents was found.
2006                QT_QTMOTIF_FOUND       True if QtMotif was found.
2007                QT_QTNETWORK_FOUND     True if QtNetwork was found.
2008                QT_QTNSPLUGIN_FOUND    True if QtNsPlugin was found.
2009                QT_QTOPENGL_FOUND      True if QtOpenGL was found.
2010                QT_QTSQL_FOUND         True if QtSql was found.
2011                QT_QTXML_FOUND         True if QtXml was found.
2012                QT_QTSVG_FOUND         True if QtSvg was found.
2013                QT_QTSCRIPT_FOUND      True if QtScript was found.
2014                QT_QTTEST_FOUND        True if QtTest was found.
2015                QT_QTUITOOLS_FOUND     True if QtUiTools was found.
2016                QT_QTASSISTANTCLIENT_FOUND         True if QtAssistantClient was found.
2017                QT_QTHELP_FOUND      True if QtHelp was found.
2018                QT_QTWEBKIT_FOUND        True if QtWebKit was found.
2019                QT_QTXMLPATTERNS_FOUND   True if QtXmlPatterns was found.
2020                QT_PHONON_FOUND          True if phonon was found.
2021
2022
2023
2024
2025
2026
2027
2028                QT_DEFINITIONS   Definitions to use when compiling code that uses Qt.
2029                                 You do not need to use this if you include QT_USE_FILE.
2030                                 The QT_USE_FILE will also define QT_DEBUG and QT_NO_DEBUG
2031                                 to fit your current build type.  Those are not contained
2032                                 in QT_DEFINITIONS.
2033
2034                QT_INCLUDES      List of paths to all include directories of
2035                                 Qt4 QT_INCLUDE_DIR and QT_QTCORE_INCLUDE_DIR are
2036                                 always in this variable even if NOTFOUND,
2037                                 all other INCLUDE_DIRS are
2038                                 only added if they are found.
2039                                 You do not need to use this if you include QT_USE_FILE.
2040
2041
2042
2043
2044
2045                Include directories for the Qt modules are listed here.
2046                You do not need to use these variables if you include QT_USE_FILE.
2047
2048
2049
2050
2051                QT_INCLUDE_DIR              Path to "include" of Qt4
2052                QT_QT_INCLUDE_DIR           Path to "include/Qt"
2053                QT_QT3SUPPORT_INCLUDE_DIR   Path to "include/Qt3Support"
2054                QT_QTASSISTANT_INCLUDE_DIR  Path to "include/QtAssistant"
2055                QT_QTCORE_INCLUDE_DIR       Path to "include/QtCore"
2056                QT_QTDESIGNER_INCLUDE_DIR   Path to "include/QtDesigner"
2057                QT_QTDESIGNERCOMPONENTS_INCLUDE_DIR   Path to "include/QtDesigner"
2058                QT_QTDBUS_INCLUDE_DIR       Path to "include/QtDBus"
2059                QT_QTGUI_INCLUDE_DIR        Path to "include/QtGui"
2060                QT_QTMOTIF_INCLUDE_DIR      Path to "include/QtMotif"
2061                QT_QTNETWORK_INCLUDE_DIR    Path to "include/QtNetwork"
2062                QT_QTNSPLUGIN_INCLUDE_DIR   Path to "include/QtNsPlugin"
2063                QT_QTOPENGL_INCLUDE_DIR     Path to "include/QtOpenGL"
2064                QT_QTSQL_INCLUDE_DIR        Path to "include/QtSql"
2065                QT_QTXML_INCLUDE_DIR        Path to "include/QtXml"
2066                QT_QTSVG_INCLUDE_DIR        Path to "include/QtSvg"
2067                QT_QTSCRIPT_INCLUDE_DIR     Path to "include/QtScript"
2068                QT_QTTEST_INCLUDE_DIR       Path to "include/QtTest"
2069                QT_QTASSISTANTCLIENT_INCLUDE_DIR       Path to "include/QtAssistant"
2070                QT_QTHELP_INCLUDE_DIR       Path to "include/QtHelp"
2071                QT_QTWEBKIT_INCLUDE_DIR     Path to "include/QtWebKit"
2072                QT_QTXMLPATTERNS_INCLUDE_DIR  Path to "include/QtXmlPatterns"
2073                QT_PHONON_INCLUDE_DIR       Path to "include/phonon"
2074
2075                QT_LIBRARY_DIR              Path to "lib" of Qt4
2076
2077
2078
2079
2080                QT_PLUGINS_DIR              Path to "plugins" for Qt4
2081
2082
2083              For every library of Qt, a QT_QTFOO_LIBRARY variable is defined,
2084              with the full path to the library.
2085
2086
2087              So there are the following variables:  The  Qt3Support  library:
2088              QT_QT3SUPPORT_LIBRARY
2089
2090
2091              The QtAssistant library:    QT_QTASSISTANT_LIBRARY
2092
2093
2094              The QtCore library:         QT_QTCORE_LIBRARY
2095
2096
2097              The QtDBus library:         QT_QTDBUS_LIBRARY
2098
2099
2100              The QtDesigner library:     QT_QTDESIGNER_LIBRARY
2101
2102
2103              The    QtDesignerComponents   library:       QT_QTDESIGNERCOMPO‐
2104              NENTS_LIBRARY
2105
2106
2107              The QtGui library:          QT_QTGUI_LIBRARY
2108
2109
2110              The QtMotif library:        QT_QTMOTIF_LIBRARY
2111
2112
2113              The QtNetwork library:      QT_QTNETWORK_LIBRARY
2114
2115
2116              The QtNsPLugin library:     QT_QTNSPLUGIN_LIBRARY
2117
2118
2119              The QtOpenGL library:       QT_QTOPENGL_LIBRARY
2120
2121
2122              The QtSql library:          QT_QTSQL_LIBRARY
2123
2124
2125              The QtXml library:          QT_QTXML_LIBRARY
2126
2127
2128              The QtSvg library:          QT_QTSVG_LIBRARY
2129
2130
2131              The QtScript library:       QT_QTSCRIPT_LIBRARY
2132
2133
2134              The QtTest library:         QT_QTTEST_LIBRARY
2135
2136
2137              The qtmain library for Windows QT_QTMAIN_LIBRARY
2138
2139
2140              The QtUiTools library:      QT_QTUITOOLS_LIBRARY
2141
2142
2143              The QtAssistantClient library:  QT_QTASSISTANTCLIENT_LIBRARY
2144
2145
2146              The QtHelp library:             QT_QTHELP_LIBRARY
2147
2148
2149              The QtWebKit library:           QT_QTWEBKIT_LIBRARY
2150
2151
2152              The QtXmlPatterns library:      QT_QTXMLPATTERNS_LIBRARY
2153
2154
2155              The Phonon library:             QT_PHONON_LIBRARY
2156
2157
2158
2159
2160              also defined, but NOT for general use are
2161
2162
2163                QT_MOC_EXECUTABLE          Where to find the moc tool.
2164                QT_UIC_EXECUTABLE          Where to find the uic tool.
2165                QT_UIC3_EXECUTABLE         Where to find the uic3 tool.
2166                QT_RCC_EXECUTABLE          Where to find the rcc tool
2167                QT_DBUSCPP2XML_EXECUTABLE  Where to find the qdbuscpp2xml tool.
2168                QT_DBUSXML2CPP_EXECUTABLE  Where to find the qdbusxml2cpp tool.
2169                QT_LUPDATE_EXECUTABLE      Where to find the lupdate tool.
2170                QT_LRELEASE_EXECUTABLE     Where to find the lrelease tool.
2171
2172                QT_DOC_DIR                 Path to "doc" of Qt4
2173                QT_MKSPECS_DIR             Path to "mkspecs" of Qt4
2174
2175
2176
2177
2178
2179
2180
2181              These are around for backwards compatibility  they will be set
2182
2183
2184                QT_WRAP_CPP  Set true if QT_MOC_EXECUTABLE is found
2185                QT_WRAP_UI   Set true if QT_UIC_EXECUTABLE is found
2186
2187
2188              These variables do _NOT_ have any effect  anymore  (compared  to
2189              FindQt.cmake)
2190
2191
2192                QT_MT_REQUIRED         Qt4 is now always multithreaded
2193
2194
2195              These  variables  are  set  to  ""  Because Qt structure changed
2196              (They make no sense in Qt4)
2197
2198
2199                QT_QT_LIBRARY        Qt-Library is now split
2200
2201
2202       FindRUBY
2203              Find Ruby
2204
2205              This module finds if Ruby is installed and determines where  the
2206              include  files  and  libraries  are. It also determines what the
2207              name of the library is. This code sets the following variables:
2208
2209
2210                RUBY_LIBRARY      = full path+file to the ruby library
2211                RUBY_INCLUDE_PATH = path to where ruby.h can be found
2212                RUBY_EXECUTABLE   = full path+file to the ruby binary
2213                RUBY_FOUND        = Ruby was found under system.
2214
2215
2216       FindSIP
2217
2218
2219              Find SIP ~~~~~~~~
2220
2221
2222              SIP website: http://www.riverbankcomputing.co.uk/sip/index.php
2223
2224
2225              Find the installed version of  SIP.  FindSIP  should  be  called
2226              after Python has been found.
2227
2228
2229              This file defines the following variables:
2230
2231
2232              SIP_VERSION  -  The  version of SIP found expressed as a 6 digit
2233              hex number
2234
2235
2236                   suitable for comparision as a string.
2237
2238
2239
2240
2241              SIP_VERSION_STR - The version of SIP found as a  human  readable
2242              string.
2243
2244
2245              SIP_EXECUTABLE  - Path and filename of the SIP command line exe‐
2246              cutable.
2247
2248
2249              SIP_INCLUDE_DIR - Directory holding the SIP C++ header file.
2250
2251
2252              SIP_DEFAULT_SIP_DIR - Default directory where .sip files  should
2253              be installed
2254
2255
2256                   into.
2257
2258
2259       FindSamba
2260              Try to find the samba directory library
2261
2262              Once done this will define
2263
2264
2265                SAMBA_FOUND - system has SAMBA
2266                SAMBA_INCLUDE_DIR - the SAMBA include directory
2267                SAMBA_LIBRARIES - The libraries needed to use SAMBA
2268                Set SAMBA_REQUIRE_SMBC_SET_CONTEXT to TRUE if you need a version of Samba
2269                which comes with smbc_set_context()
2270
2271
2272       FindSane
2273
2274
2275              cmake macro to test if we use sane
2276
2277
2278                SANE_FOUND - system has SANE libs
2279                SANE_INCLUDE_DIR - the SANE include directory
2280                SANE_LIBRARIES - The libraries needed to use SANE
2281
2282
2283       FindSasl2
2284              Try to find the sasl2 directory library
2285
2286              Once done this will define
2287
2288
2289                SASL2_FOUND - system has SASL2
2290                SASL2_INCLUDE_DIR - the SASL2 include directory
2291                SASL2_LIBRARIES - The libraries needed to use SASL2
2292
2293
2294       FindSharedMimeInfo
2295              Try to find the shared-mime-info package
2296
2297
2298
2299
2300                SHARED_MIME_INFO_MINIMUM_VERSION - Set this to the minimum version you need, default is 0.18
2301
2302
2303
2304
2305              Once done this will define
2306
2307
2308                SHARED_MIME_INFO_FOUND - system has the shared-mime-info package
2309                UPDATE_MIME_DATABASE_EXECUTABLE - the update-mime-database executable
2310
2311
2312       FindSoprano
2313
2314
2315
2316
2317
2318              Find an installation of Soprano
2319
2320
2321              Sets the following variables:
2322
2323
2324                Soprano_FOUND            - true is Soprano has been found
2325                SOPRANO_INCLUDE_DIR      - The include directory
2326                SOPRANO_LIBRARIES        - The Soprano core library to link to (libsoprano)
2327                SOPRANO_INDEX_LIBRARIES  - The Soprano index library (libsopranoindex)
2328                SOPRANO_CLIENT_LIBRARIES - The Soprano client library (libsopranoclient)
2329                SOPRANO_SERVER_LIBRARIES - The Soprano server library (libsopranoserver)
2330                SOPRANO_VERSION          - The Soprano version (string value)
2331
2332
2333
2334
2335              SOPRANO_PLUGIN_NQUADPARSER_FOUND       - true if the nquadparser
2336              plugin is found SOPRANO_PLUGIN_NQUADSERIALIZER_FOUND  - true  if
2337              the   nquadserializer  plugin  is  found  SOPRANO_PLUGIN_RAPTOR‐
2338              PARSER_FOUND     - true if  the  raptorparser  plugin  is  found
2339              SOPRANO_PLUGIN_RAPTORSERIALIZER_FOUND  - true if the raptorseri‐
2340              alizer plugin is found  SOPRANO_PLUGIN_REDLANDBACKEND_FOUND    -
2341              true   if  the  redlandbackend  plugin  is  found  SOPRANO_PLUG‐
2342              IN_SESAME2BACKEND_FOUND   - true if the sesame2backend plugin is
2343              found SOPRANO_PLUGIN_VIRTUOSOBACKEND_FOUND  - true if the virtu‐
2344              osobackend plugin is found
2345
2346
2347              Options:
2348
2349
2350                Set SOPRANO_MIN_VERSION to set the minimum required Soprano version (default: 1.99)
2351
2352
2353
2354
2355
2356       FindSqlite
2357              Try to find Sqlite
2358
2359              Once done this will define
2360
2361
2362                SQLITE_FOUND - system has Sqlite
2363                SQLITE_INCLUDE_DIR - the Sqlite include directory
2364                SQLITE_LIBRARIES - Link these to use Sqlite
2365                SQLITE_DEFINITIONS - Compiler switches required for using Sqlite
2366
2367              Redistribution and use is allowed according to the terms of  the
2368              BSD   license.   For   details   see   the   accompanying  COPY‐
2369              ING-CMAKE-SCRIPTS file.
2370
2371
2372
2373       FindStrigi
2374              Try to find Strigi, a fast  and  small  desktop  search  program
2375              (http://strigi.sourceforge.net )
2376
2377              Once done this will define
2378
2379
2380                STRIGI_FOUND - system has Strigi
2381                STRIGI_INCLUDE_DIR - the Strigi include directory
2382                STRIGI_STREAMANALYZER_LIBRARY - Link these to use Strigi streamanalyzer
2383                STRIGI_STREAMS_LIBRARY - Link these to use Strigi streams
2384                STRIGI_LINE_ANALYZER_PREFIX - strigi plugin prefix
2385                STRIGI_THROUGH_ANALYZER_PREFIX - strigi plugin prefix
2386
2387
2388       FindTaglib
2389              Try to find the Taglib library
2390
2391              Once done this will define
2392
2393
2394                TAGLIB_FOUND - system has the taglib library
2395                TAGLIB_CFLAGS - the taglib cflags
2396                TAGLIB_LIBRARIES - The libraries needed to use taglib
2397
2398
2399       FindUSB
2400              Try to find the freetype library
2401
2402              Once done this defines
2403
2404
2405                LIBUSB_FOUND - system has libusb
2406                LIBUSB_INCLUDE_DIR - the libusb include directory
2407                LIBUSB_LIBRARIES - Link these to use libusb
2408
2409
2410       FindX11
2411              Find X11 installation
2412
2413              Try  to  find  X11  on  UNIX  systems.  The following values are
2414              defined
2415
2416
2417                X11_FOUND        - True if X11 is available
2418                X11_INCLUDE_DIR  - include directories to use X11
2419                X11_LIBRARIES    - link against these to use X11
2420
2421
2422
2423
2424              and also the following more fine grained variables:
2425
2426
2427                              X11_ICE_INCLUDE_PATH,          X11_ICE_LIB,        X11_ICE_FOUND
2428                              X11_SM_INCLUDE_PATH,           X11_SM_LIB,         X11_SM_FOUND
2429                              X11_Xaccessrules_INCLUDE_PATH,                     X11_Xaccess_FOUND
2430                              X11_Xaccessstr_INCLUDE_PATH,                       X11_Xaccess_FOUND
2431                              X11_Xau_INCLUDE_PATH,          X11_Xau_LIB,        X11_Xau_FOUND
2432                              X11_Xcomposite_INCLUDE_PATH,   X11_Xcomposite_LIB, X11_Xcomposite_FOUND
2433                              X11_Xcursor_INCLUDE_PATH,      X11_Xcursor_LIB,    X11_Xcursor_FOUND
2434                              X11_Xdamage_INCLUDE_PATH,      X11_Xdamage_LIB,    X11_Xdamage_FOUND
2435                              X11_Xdmcp_INCLUDE_PATH,        X11_Xdmcp_LIB,      X11_Xdmcp_FOUND
2436                                                             X11_Xext_LIB,       X11_Xext_FOUND
2437                              X11_dpms_INCLUDE_PATH,         (in X11_Xext_LIB),  X11_dpms_FOUND
2438                              X11_XShm_INCLUDE_PATH,         (in X11_Xext_LIB),  X11_XShm_FOUND
2439                              X11_Xshape_INCLUDE_PATH,       (in X11_Xext_LIB),  X11_Xshape_FOUND
2440                              X11_xf86misc_INCLUDE_PATH,     X11_Xxf86misc_LIB,  X11_xf86misc_FOUND
2441                              X11_xf86vmode_INCLUDE_PATH,                        X11_xf86vmode_FOUND
2442                              X11_Xfixes_INCLUDE_PATH,       X11_Xfixes_LIB,     X11_Xfixes_FOUND
2443                              X11_Xft_INCLUDE_PATH,          X11_Xft_LIB,        X11_Xft_FOUND
2444                              X11_Xinerama_INCLUDE_PATH,     X11_Xinerama_LIB,   X11_Xinerama_FOUND
2445                              X11_Xinput_INCLUDE_PATH,       X11_Xinput_LIB,     X11_Xinput_FOUND
2446                              X11_Xkb_INCLUDE_PATH,                              X11_Xkb_FOUND
2447                              X11_Xkblib_INCLUDE_PATH,                           X11_Xkb_FOUND
2448                              X11_Xkbfile_INCLUDE_PATH,      X11_Xkbfile_LIB,    X11_Xkbfile_FOUND
2449                              X11_Xpm_INCLUDE_PATH,          X11_Xpm_LIB,        X11_Xpm_FOUND
2450                              X11_XTest_INCLUDE_PATH,        X11_XTest_LIB,      X11_XTest_FOUND
2451                              X11_Xrandr_INCLUDE_PATH,       X11_Xrandr_LIB,     X11_Xrandr_FOUND
2452                              X11_Xrender_INCLUDE_PATH,      X11_Xrender_LIB,    X11_Xrender_FOUND
2453                              X11_Xscreensaver_INCLUDE_PATH, X11_Xscreensaver_LIB, X11_Xscreensaver_FOUND
2454                              X11_Xt_INCLUDE_PATH,           X11_Xt_LIB,         X11_Xt_FOUND
2455                              X11_Xutil_INCLUDE_PATH,                            X11_Xutil_FOUND
2456                              X11_Xv_INCLUDE_PATH,           X11_Xv_LIB,         X11_Xv_FOUND
2457                              X11_XSync_INCLUDE_PATH,        (in X11_Xext_LIB),  X11_XSync_FOUND
2458
2459
2460       FindXine
2461              Try to find the XINE  library
2462
2463              Once done this will define
2464
2465
2466                XINE_FOUND - system has the XINE library
2467                XINE_VERSION - XINE version
2468                XINE_BUGFIX_VERSION - the XINE bugfix version
2469                XINE_INCLUDE_DIR - the XINE include directory
2470                XINE_LIBRARY - The libraries needed to use XINE
2471                XINE_XCB_FOUND - libxine can use XCB for video output
2472
2473
2474       FindXmms
2475
2476
2477              Search xmms Once done this will define
2478
2479
2480                XMMS_FOUND        - system has xmms
2481                XMMS_INCLUDE_DIRS - the xmms include directory
2482                XMMS_LIBRARIES    - Link these to use xmms
2483                XMMS_LDFLAGS      - for compatibility only, same as XMMS_LIBRARIES
2484
2485
2486       KDE4Macros
2487
2488
2489              for documentation look at FindKDE4Internal.cmake
2490
2491
2492       MacroAddCompileFlags
2493              MACRO_ADD_COMPILE_FLAGS(<_target> "flags...")
2494
2495
2496       MacroAddFileDependencies
2497
2498
2499              MACRO_ADD_FILE_DEPENDENCIES(<_file> depend_files...)
2500
2501
2502       MacroAddLinkFlags
2503              MACRO_ADD_LINK_FLAGS(<_target> "flags...")
2504
2505
2506       MacroAdditionalCleanFiles
2507              MACRO_ADDITIONAL_CLEAN_FILES(files...)
2508
2509              MACRO_OPTIONAL_FIND_PACKAGE( <name> [QUIT] )
2510
2511
2512       MacroAppendIf
2513
2514
2515              MACRO_APPEND_IF(CONDITION VAR VALUE1...VALUEN ) This convenience
2516              macro  appends  the values VALUE1 up to VALUEN to the list given
2517              in VAR, but only if the variable CONDITION is TRUE:
2518
2519
2520              usage example: IF(SOMELIB_FOUND)
2521
2522
2523                 SET(my_sources ${my_sources} somefile.c someotherfile.c)
2524
2525              ENDIF(SOMELIB_FOUND)
2526
2527
2528              becomes: MACRO_APPEND_IF(SOMELIB_FOUND   my_sources   somefile.c
2529              someotherfile.c)
2530
2531
2532       MacroBoolTo01
2533
2534
2535              MACRO_BOOL_TO_01( VAR RESULT0 ... RESULTN ) This macro evaluates
2536              its first argument and sets all the given vaiables either  to  0
2537              or 1 depending on the value of the first one
2538
2539
2540       MacroEnsureOutOfSourceBuild
2541              MACRO_ENSURE_OUT_OF_SOURCE_BUILD(<errorMessage>)
2542
2543              MACRO_ENSURE_OUT_OF_SOURCE_BUILD(<errorMessage>)
2544
2545
2546                  Call this macro in your project if you want to enforce out-of-source builds.
2547                  If an in-source build is detected, it will abort with the given error message.
2548                  This macro works in any of the CMakeLists.txt of your project, but the recommended
2549                  location to call this is close to the beginning of the top level CMakeLists.txt
2550
2551
2552       MacroEnsureVersion
2553
2554
2555              This  file defines the following macros for developers to use in
2556              ensuring that installed software is of the right version:
2557
2558
2559              MACRO_ENSURE_VERSION        - test  that  a  version  number  is
2560              greater than
2561
2562
2563                                             or equal to some minimum
2564
2565              MACRO_ENSURE_VERSION_RANGE  -  test  that  a  version  number is
2566              greater than
2567
2568
2569                                             or equal to some minimum and less than some
2570                                             maximum
2571
2572              MACRO_ENSURE_VERSION2       - deprecated, do not use in new code
2573
2574
2575
2576       MacroLibrary
2577              include MacroLibrary offers a collection of macros which  extend
2578              the built-in cmake commands
2579
2580
2581       MacroLogFeature
2582
2583
2584              This file defines the Feature Logging macros.
2585
2586
2587              MACRO_LOG_FEATURE(VAR    FEATURE   DESCRIPTION   URL   [REQUIRED
2588              [MIN_VERSION [COMMENTS]]])
2589
2590
2591                 Logs the information so that it can be displayed at the end
2592                 of the configure run
2593                 VAR : TRUE or FALSE, indicating whether the feature is supported
2594                 FEATURE: name of the feature, e.g. "libjpeg"
2595                 DESCRIPTION: description what this feature provides
2596                 URL: home page
2597                 REQUIRED: TRUE or FALSE, indicating whether the featue is required
2598                 MIN_VERSION: minimum version number. empty string if unneeded
2599                 COMMENTS: More info you may want to provide.  empty string if unnecessary
2600
2601
2602
2603
2604              MACRO_DISPLAY_FEATURE_LOG()
2605
2606
2607                 Call this to display the collected results.
2608                 Exits CMake with a FATAL error message if a required feature is missing
2609
2610
2611
2612
2613              Example:
2614
2615
2616              INCLUDE(MacroLogFeature)
2617
2618
2619              FIND_PACKAGE(JPEG) MACRO_LOG_FEATURE(JPEG_FOUND "libjpeg"  "Sup‐
2620              port  JPEG  images"  "http://www.ijg.org"  TRUE  "3.2a"  "") ...
2621              MACRO_DISPLAY_FEATURE_LOG()
2622
2623
2624       MacroOptionalAddSubdirectory
2625              MACRO_OPTIONAL_ADD_SUBDIRECTORY()  combines   ADD_SUBDIRECTORY()
2626              with an OPTION()
2627
2628              MACRO_OPTIONAL_ADD_SUBDIRECTORY(    <dir>    )    If   you   use
2629              MACRO_OPTIONAL_ADD_SUBDIRECTORY() instead of ADD_SUBDIRECTORY(),
2630              this  will  have  two effects 1 - CMake will not complain if the
2631              directory doesn't exist
2632
2633
2634                   This makes sense if you want to distribute just one of the subdirs
2635                   in a source package, e.g. just one of the subdirs in kdeextragear.
2636
2637              2 - If the directory exists, it will offer an option to skip the
2638
2639
2640                   subdirectory.
2641                   This is useful if you want to compile only a subset of all
2642                   directories.
2643
2644
2645
2646
2647              If the CMake variable DISABLE_ALL_OPTIONAL_SUBDIRECTORIES is set
2648              to  TRUE  for  the  first CMake run on the project, all optional
2649              subdirectories will be disabled by default (but can of course be
2650              enabled  via  the  respective  options). E.g. the following will
2651              disable  all  optional  subdirectories  except  the  one   named
2652              "kcalc":
2653
2654
2655                 $ cmake -DDISABLE_ALL_OPTIONAL_SUBDIRECTORIES=TRUE -DBUILD_kcalc=TRUE <srcdir>
2656
2657
2658       MacroOptionalDependPackage
2659
2660
2661              Search  if  cmake module is installed in computer cmake will not
2662              fail but signal that we must install depend package before.  add
2663              as  previously  name  of cmake module "_name" and define package
2664              needed "_module_needed" if return DEPEND_PACKAGE_${_name}
2665
2666
2667       MacroOptionalFindPackage
2668              MACRO_OPTIONAL_FIND_PACKAGE() combines  FIND_PACKAGE()  with  an
2669              OPTION()
2670
2671              MACRO_OPTIONAL_FIND_PACKAGE(  <name>  [QUIT]  )  This macro is a
2672              combination  of  OPTION()  and  FIND_PACKAGE(),  it  works  like
2673              FIND_PACKAGE(),  but  additionally  it  automatically creates an
2674              option name WITH_<name>, which can be  disabled  via  the  cmake
2675              GUI.  or  via  -DWITH_<name>=OFF The standard <name>_FOUND vari‐
2676              ables can be used in the same  way  as  when  using  the  normal
2677              FIND_PACKAGE()
2678
2679
2680       MacroPushRequiredVars
2681
2682
2683              this  module  defines two macros: MACRO_PUSH_REQUIRED_VARS() and
2684              MACRO_POP_REQUIRED_VARS() use these if  you  call  cmake  macros
2685              which use any of the CMAKE_REQUIRED_XXX variables
2686
2687
2688              Usage: MACRO_PUSH_REQUIRED_VARS() SET(CMAKE_REQUIRED_DEFINITIONS
2689              ${CMAKE_REQUIRED_DEFINITIONS}    -DSOME_MORE_DEF)    CHECK_FUNC‐
2690              TION_EXISTS(...) MACRO_POP_REQUIRED_VARS()
2691
2692
2693       MacroWriteBasicCMakeVersionFile
2694
2695
2696                MACRO_WRITE_BASIC_CMAKE_VERSION_FILE( _filename _major _minor _patch)
2697                  Writes a file for use as <package>ConfigVersion.cmake file to <_filename>.
2698                  See the documentation of FIND_PACKAGE() for details on this.
2699                  _filename is the output filename, it should be in the build tree.
2700                  _major is the major version number of the project to be installed
2701                  _minor is the minor version number of the project to be installed
2702                  _patch is the patch version number of the project to be installed
2703
2704
2705
2706
2707
2708       NepomukMacros
2709
2710
2711              This file contains the following macros:
2712
2713
2714              NEPOMUK_GENERATE_FROM_ONTOLOGY Parameters:
2715
2716
2717                 ontofile     - Path to the NRL ontology defining the resources to be generated.
2718                 targetdir    - Folder to which the generated sources should be written.
2719                 out_headers  - Variable which will be filled with the names of all generated headers.
2720                 out_sources  - Variable which will be filled with the names of all generated sources.
2721                 out_includes - Variable which will be filled with complete include statements of all
2722                                generated resource classes.
2723
2724
2725
2726
2727              In  addition  to  the parameters an arbitrary number of template
2728              filenames can be set as arguments
2729
2730
2731              In case of success NEPOMUK_RESOURCES_GENERATED is  true,  other‐
2732              wise false
2733
2734
2735       PythonMacros
2736
2737
2738              Python  macros  ~~~~~~~~~~~~~  Copyright (c) 2007, Simon Edwards
2739              <simon@simonzone.com>
2740
2741
2742              Redistribution and use is allowed according to the terms of  the
2743              BSD   license.   For   details   see   the   accompanying  COPY‐
2744              ING-CMAKE-SCRIPTS file.
2745
2746
2747              This file defines the following macros:
2748
2749
2750              PYTHON_INSTALL (SOURCE_FILE DESINATION_DIR)
2751
2752
2753                   Install the SOURCE_FILE, which is a Python .py file, into the
2754                   destination directory during install. The file will be byte compiled
2755                   and both the .py file and .pyc file will be installed.
2756
2757
2758       SIPMacros
2759
2760
2761              Macros for SIP ~~~~~~~~~~~~~~ Copyright (c) 2007, Simon  Edwards
2762              <simon@simonzone.com>  Redistribution and use is allowed accord‐
2763              ing to the terms of the BSD license. For details see the  accom‐
2764              panying COPYING-CMAKE-SCRIPTS file.
2765
2766
2767              SIP website: http://www.riverbankcomputing.co.uk/sip/index.php
2768
2769
2770              This file defines the following macros:
2771
2772
2773              ADD_SIP_PYTHON_MODULE    (MODULE_NAME    MODULE_SIP   [library1,
2774              libaray2, ...])
2775
2776
2777                   Specifies a SIP file to be built into a Python module and installed.
2778                   MODULE_NAME is the name of Python module including any path name. (e.g.
2779                   os.sys, Foo.bar etc). MODULE_SIP the path and filename of the .sip file
2780                   to process and compile. libraryN are libraries that the Python module,
2781                   which is typically a shared library, should be linked to. The built
2782                   module will also be install into Python's site-packages directory.
2783
2784
2785
2786
2787              The behaviour of the ADD_SIP_PYTHON_MODULE  macro  can  be  con‐
2788              trolled by a number of variables:
2789
2790
2791              SIP_INCLUDES  -  List of directories which SIP will scan through
2792              when looking
2793
2794
2795                   for included .sip files. (Corresponds to the -I option for SIP.)
2796
2797
2798
2799
2800              SIP_TAGS - List of tags to define when running SIP. (Corresponds
2801              to the -t
2802
2803
2804                   option for SIP.)
2805
2806
2807
2808
2809              SIP_CONCAT_PARTS  - An integer which defines the number of parts
2810              the C++ code
2811
2812
2813                   of each module should be split into. Defaults to 8. (Corresponds to the
2814                   -j option for SIP.)
2815
2816
2817
2818
2819              SIP_DISABLE_FEATURES - List of feature  names  which  should  be
2820              disabled
2821
2822
2823                   running SIP. (Corresponds to the -x option for SIP.)
2824
2825
2826
2827
2828              SIP_EXTRA_OPTIONS  -  Extra command line options which should be
2829              passed on to
2830
2831
2832                   SIP.
2833
2834
2835       Win32Macros
2836
2837
2838              win32 macros
2839
2840
2841              ADDEXPLORERWRAPPER(project)
2842
2843
2844              Exists only under Win32 !
2845
2846
2847              addExplorerWrapper creates batch files for fast access   to  the
2848              build environment from the win32 explorer.
2849
2850
2851              For  mingw and nmake projects it opens a command shell, for Vis‐
2852              ual Studio IDE's (at least tested with VS 8 2005) it  opens  the
2853              related  .sln  file  with  paths setting specified at  configure
2854              time.
2855
2856
2857       create_exe_symlink
2858
2859
2860              Create an executable symlink to a Python script. This also  sets
2861              the target script's permission bits.
2862
2863

SEE ALSO

2865       ccmake(1), cpack(1), ctest(1), cmakecommands(1), cmakecompat(1), cmake‐
2866       modules(1), cmakeprops(1), cmakevars(1)
2867
2868
2869       The following resources are available to get help using CMake:
2870
2871
2872       Home Page
2873              http://www.cmake.org
2874
2875              The primary starting point for learning about CMake.
2876
2877
2878       Frequently Asked Questions
2879              http://www.cmake.org/Wiki/CMake_FAQ
2880
2881              A Wiki is provided containing answers to frequently asked  ques‐
2882              tions.
2883
2884
2885       Online Documentation
2886              http://www.cmake.org/HTML/Documentation.html
2887
2888              Links to available documentation may be found on this web page.
2889
2890
2891       Mailing List
2892              http://www.cmake.org/HTML/MailingLists.html
2893
2894              For  help  and  discussion  about using cmake, a mailing list is
2895              provided at cmake@cmake.org. The list  is  member-post-only  but
2896              one  may  sign  up  on the CMake web page. Please first read the
2897              full documentation at http://www.cmake.org before posting  ques‐
2898              tions to the list.
2899
2900
2901
2902
2903cmake 2.8.12.2                   May 11, 2016                      kdecmake(1)
Impressum