fixed cmake error: doc says CACHE needs type *and* doc string
[platform/upstream/dbus.git] / README.cmake
1 This file describes how to compile dbus using the cmake build system
2
3 Requirements
4 ------------
5 - cmake version >= 2.4.4 see http://www.cmake.org
6 - installed libexpat
7
8 Building
9 --------
10
11 Win32 MinGW
12 1. install cmake and libexpat
13 2. get dbus sources
14 3. unpack dbus sources into a sub directory (referred as <dbus-src-root> later)
15 4. mkdir dbus-build
16 5. cd dbus-build
17 6. run 
18     cmake -G "MinGW Makefiles" [<options, see below>] <dbus-src-root>/cmake
19     mingw32-make
20     mingw32-make install
21
22 Win32 Microsoft nmake
23 1. install cmake and libexpat
24 2. get dbus sources
25 3. unpack dbus sources into a sub directory (referred as <dbus-src-root> later)
26 4. mkdir dbus-build
27 5. cd dbus-build
28 6. run 
29     cmake -G "NMake Makefiles" [<options, see below>] <dbus-src-root>/cmake
30     nmake
31     nmake install
32
33 Win32 Visual Studio Express IDE
34 1. install cmake and libexpat
35 2. get dbus sources
36 3. unpack dbus sources into a sub directory (referred as <dbus-src-root> later)
37 4. mkdir dbus-build
38 5. cd dbus-build
39 6. run
40       cmake -G "Visual Studio 10" [<options, see below>] <dbus-src-root>/cmake
41 7a. open IDE with
42       vcexpress dbus.sln
43 7b. for immediate build run
44       vcexpress dbus.sln /build
45
46 Win32 Visual Studio Professional IDE
47 1. install cmake and libexpat
48 2. get dbus sources
49 3. unpack dbus sources into a sub directory (referred as <dbus-src-root> later)
50 4. mkdir dbus-build
51 5. cd dbus-build
52 6. run 
53       cmake -G "Visual Studio 10" [<options, see below>] <dbus-src-root>/cmake
54 7a. open IDE with
55       devenv dbus.sln
56 7b. for immediate build run
57       devenv dbus.sln /build
58
59 Linux
60 1. install cmake and libexpat
61 2. get dbus sources
62 3. unpack dbus sources into a sub directory (referred as <dbus-src-root> later)
63 4. mkdir dbus-build
64 5. cd dbus-build
65 6. run 
66     cmake -G "<for available targets, see cmake --help for a list>" [<options, see below>] <dbus-src-root>/cmake
67     make
68     make install
69
70 For other compilers see cmake --help in the Generators section
71
72 Configuration flags
73 -------------------
74
75 When using the cmake build system the dbus-specific configuration flags that can be given 
76 to the cmake program are these (use -D<key>=<value> on command line). The listed values 
77 are the defaults.
78
79 // Choose the type of build, options are: None(CMAKE_CXX_FLAGS or
80 // CMAKE_C_FLAGS used) Debug Release RelWithDebInfo MinSizeRel.
81 CMAKE_BUILD_TYPE:STRING=Debug
82
83 // Include path for 3rdparty packages
84 CMAKE_INCLUDE_PATH:PATH=
85
86 // Library path for 3rdparty packages
87 CMAKE_LIBRARY_PATH:PATH=
88
89 // Install path prefix, prepended onto install directories.
90 CMAKE_INSTALL_PREFIX:PATH=C:/Program Files/dbus
91
92
93 // enable unit test code
94 DBUS_BUILD_TESTS:BOOL=ON
95
96 // The name of the dbus daemon executable
97 DBUS_DAEMON_NAME:STRING=dbus-daemon
98
99 // Disable assertion checking
100 DBUS_DISABLE_ASSERTS:BOOL=OFF
101
102 // Disable public API sanity checking
103 DBUS_DISABLE_CHECKS:BOOL=OFF
104
105 // enable -ansi -pedantic gcc flags
106 DBUS_ENABLE_ANSI:BOOL=OFF
107
108 // build DOXYGEN documentation (requires Doxygen)
109 DBUS_ENABLE_DOXYGEN_DOCS:BOOL=OFF
110
111 // enable bus daemon usage statistics
112 DBUS_ENABLE_STATS:BOOL=OFF
113
114 // support verbose debug mode
115 DBUS_ENABLE_VERBOSE_MODE:BOOL=ON
116
117 // build XML  documentation (requires xmlto or meinproc4)
118 DBUS_ENABLE_XML_DOCS:BOOL=ON
119
120 // Some atomic integer implementation present
121 DBUS_HAVE_ATOMIC_INT:BOOL=OFF
122
123 // install required system libraries
124 DBUS_INSTALL_SYSTEM_LIBS:BOOL=OFF
125
126 // session bus default address
127 DBUS_SESSION_BUS_DEFAULT_ADDRESS:STRING=nonce-tcp:
128
129 // system bus default address
130 DBUS_SYSTEM_BUS_DEFAULT_ADDRESS:STRING=nonce-tcp:
131
132 // Use atomic integer implementation for 486
133 DBUS_USE_ATOMIC_INT_486:BOOL=OFF
134
135 // Use expat (== ON) or libxml2 (==OFF)
136 DBUS_USE_EXPAT:BOOL=ON
137
138 win32 only:
139 // enable win32 debug port for message output
140 DBUS_USE_OUTPUT_DEBUG_STRING:BOOL=OFF
141
142 gcc only:
143 // compile with coverage profiling instrumentation
144 DBUS_GCOV_ENABLED:BOOL=OFF
145
146 linux only:
147 // build with dnotify support 
148 DBUS_BUS_ENABLE_DNOTIFY_ON_LINUX:BOOL=ON
149
150 solaris only:
151 // enable console owner file 
152 HAVE_CONSOLE_OWNER_FILE:BOOL=ON
153
154 // Directory to check for console ownership
155 DBUS_CONSOLE_OWNER_FILE:STRING=/dev/console
156
157 x11 only:
158 // Build with X11 auto launch support
159 DBUS_BUILD_X11:BOOL=ON
160
161
162 Note: The above mentioned options could be extracted after 
163 configuring from the output of running "<maketool> help-options" 
164 in the build directory. The related entries start with 
165 CMAKE_ or DBUS_.