Post-release version bump
[platform/upstream/dbus.git] / README.cmake
index ea3b107..69012fb 100644 (file)
@@ -2,66 +2,87 @@ 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
+- cmake version >= 2.6.0 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
-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 "MinGW Makefiles" [<options, see below>] <dbus-src-root>/cmake
+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 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 "NMake Makefiles" [<options, see below>] <dbus-src-root>/cmake
+
+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 IDE
-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 "Visual Studio 10" [<options, see below>] <dbus-src-root>/cmake
-    start 
-    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 
+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
+    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
+are the defaults (in a typical build - some are platform-specific).
 
-// Choose the type of build, options are: None(CMAKE_CXX_FLAGS or 
+// 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
 
@@ -82,7 +103,7 @@ DBUS_BUILD_TESTS:BOOL=ON
 DBUS_DAEMON_NAME:STRING=dbus-daemon
 
 // Disable assertion checking
-DBUS_DISABLE_ASSERTS:BOOL=OFF
+DBUS_DISABLE_ASSERT:BOOL=OFF
 
 // Disable public API sanity checking
 DBUS_DISABLE_CHECKS:BOOL=OFF
@@ -102,23 +123,17 @@ 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:
+// session bus default listening address
+DBUS_SESSION_BUS_LISTEN_ADDRESS:STRING=autolaunch:
 
-// Use atomic integer implementation for 486
-DBUS_USE_ATOMIC_INT_486:BOOL=OFF
+// session bus fallback address for clients
+DBUS_SESSION_BUS_CONNECT_ADDRESS:STRING=autolaunch:
 
-// Use expat (== ON) or libxml2 (==OFF)
-DBUS_USE_EXPAT:BOOL=ON
+// system bus default address (only useful on Unix)
+DBUS_SYSTEM_BUS_DEFAULT_ADDRESS:STRING=unix:path=/var/run/dbus/system_bus_socket
 
 win32 only:
 // enable win32 debug port for message output
@@ -128,10 +143,6 @@ 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
@@ -139,6 +150,14 @@ HAVE_CONSOLE_OWNER_FILE:BOOL=ON
 // Directory to check for console ownership
 DBUS_CONSOLE_OWNER_FILE:STRING=/dev/console
 
+// Linux only:
+// enable inotify as dir watch backend
+DBUS_BUS_ENABLE_INOTIFY:BOOL=ON
+
+*BSD only:
+// enable kqueue as dir watch backend
+DBUS_BUS_ENABLE_KQUEUE:BOOL=ON
+
 x11 only:
 // Build with X11 auto launch support
 DBUS_BUILD_X11:BOOL=ON
@@ -148,3 +167,27 @@ 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_. 
+
+
+How to compile in dbus into clients with cmake
+----------------------------------------------
+
+To compile dbus library into a client application with cmake
+the following cmake commands are required:
+
+1. call find_package to find dbus package
+
+find_package(DBus1)
+
+2. after specifing targets link dbus into target
+
+add_executable(test test.c)
+target_link_libraries(test ${DBus1_LIBRARIES})
+
+Adding ${DBus1_LIBRARIES} to targets also adds required dbus
+include dirs and compiler definitions by default. There is
+no need to add them with include_directories and add_definitions.
+
+To compile against dbus installed in a non standard location
+specify -DDBus1_DIR=<dbus-install-root>/lib[64]/cmake/DBus1
+on cmake command line.