This file describes how to compile dbus using the cmake build system Requirements ------------ - cmake version >= 2.4.4 see http://www.cmake.org - installed libexpat see http://sourceforge.net/projects/expat/ unsupported RelWithDebInfo builds could be fetched from http://sourceforge.net/projects/kde-windows/files/expat/ Building -------- Win32 MinGW-w64|32 1. install mingw-w64 from http://sourceforge.net/projects/mingw-w64/ 2. install cmake and libexpat 3. get dbus sources 4. unpack dbus sources into a sub directory (referred as <dbus-src-root> later) 5. mkdir dbus-build 6. cd dbus-build 7. run cmake -G "MinGW Makefiles" [<options, see below>] <dbus-src-root>/cmake mingw32-make mingw32-make install Win32 Microsoft nmake 1. install MSVC 2010 Express Version from http://www.microsoft.com/visualstudio/en-us/products/2010-editions/visual-cpp-express 2. install cmake and libexpat 3. get dbus sources 4. unpack dbus sources into a sub directory (referred as <dbus-src-root> later) 5. mkdir dbus-build 6. cd dbus-build 7. run cmake -G "NMake Makefiles" [<options, see below>] <dbus-src-root>/cmake nmake nmake install Win32 Visual Studio 2010 Express IDE 1. install MSVC 2010 Express Version from http://www.microsoft.com/visualstudio/en-us/products/2010-editions/visual-cpp-express 2. install cmake and libexpat 3. get dbus sources 4. unpack dbus sources into a sub directory (referred as <dbus-src-root> later) 5. mkdir dbus-build 6. cd dbus-build 7. run cmake -G "Visual Studio 10" [<options, see below>] <dbus-src-root>/cmake 8a. open IDE with vcexpress dbus.sln 8b. for immediate build run vcexpress dbus.sln /build Win32 Visual Studio 2010 Professional IDE 1. install MSVC 2010 Professional Version 2. install cmake and libexpat 3. get dbus sources 4. unpack dbus sources into a sub directory (referred as <dbus-src-root> later) 5. mkdir dbus-build 6. cd dbus-build 7. run cmake -G "Visual Studio 10" [<options, see below>] <dbus-src-root>/cmake 8a. open IDE with devenv dbus.sln 8b. for immediate build run devenv dbus.sln /build Linux 1. install cmake and libexpat 2. get dbus sources 3. unpack dbus sources into a sub directory (referred as <dbus-src-root> later) 4. mkdir dbus-build 5. cd dbus-build 6. run cmake -G "<for available targets, see cmake --help for a list>" [<options, see below>] <dbus-src-root>/cmake make make install For other compilers see cmake --help in the Generators section Configuration flags ------------------- When using the cmake build system the dbus-specific configuration flags that can be given to the cmake program are these (use -D<key>=<value> on command line). The listed values are the defaults. // Choose the type of build, options are: None(CMAKE_CXX_FLAGS or // CMAKE_C_FLAGS used) Debug Release RelWithDebInfo MinSizeRel. CMAKE_BUILD_TYPE:STRING=Debug // Include path for 3rdparty packages CMAKE_INCLUDE_PATH:PATH= // Library path for 3rdparty packages CMAKE_LIBRARY_PATH:PATH= // Install path prefix, prepended onto install directories. CMAKE_INSTALL_PREFIX:PATH=C:/Program Files/dbus // enable unit test code DBUS_BUILD_TESTS:BOOL=ON // The name of the dbus daemon executable DBUS_DAEMON_NAME:STRING=dbus-daemon // Disable assertion checking DBUS_DISABLE_ASSERTS:BOOL=OFF // Disable public API sanity checking DBUS_DISABLE_CHECKS:BOOL=OFF // enable -ansi -pedantic gcc flags DBUS_ENABLE_ANSI:BOOL=OFF // build DOXYGEN documentation (requires Doxygen) DBUS_ENABLE_DOXYGEN_DOCS:BOOL=OFF // enable bus daemon usage statistics DBUS_ENABLE_STATS:BOOL=OFF // support verbose debug mode DBUS_ENABLE_VERBOSE_MODE:BOOL=ON // build XML documentation (requires xmlto or meinproc4) DBUS_ENABLE_XML_DOCS:BOOL=ON // Some atomic integer implementation present DBUS_HAVE_ATOMIC_INT:BOOL=OFF // install required system libraries DBUS_INSTALL_SYSTEM_LIBS:BOOL=OFF // session bus default address DBUS_SESSION_BUS_DEFAULT_ADDRESS:STRING=nonce-tcp: // system bus default address DBUS_SYSTEM_BUS_DEFAULT_ADDRESS:STRING=nonce-tcp: // Use atomic integer implementation for 486 DBUS_USE_ATOMIC_INT_486:BOOL=OFF // Use expat (== ON) or libxml2 (==OFF) DBUS_USE_EXPAT:BOOL=ON win32 only: // enable win32 debug port for message output DBUS_USE_OUTPUT_DEBUG_STRING:BOOL=OFF gcc only: // compile with coverage profiling instrumentation DBUS_GCOV_ENABLED:BOOL=OFF linux only: // build with dnotify support DBUS_BUS_ENABLE_DNOTIFY_ON_LINUX:BOOL=ON solaris only: // enable console owner file HAVE_CONSOLE_OWNER_FILE:BOOL=ON // Directory to check for console ownership DBUS_CONSOLE_OWNER_FILE:STRING=/dev/console x11 only: // Build with X11 auto launch support DBUS_BUILD_X11:BOOL=ON Note: The above mentioned options could be extracted after configuring from the output of running "<maketool> help-options" in the build directory. The related entries start with CMAKE_ or DBUS_.