Merge branch 'dbus-1.4' of ssh://git.freedesktop.org/git/dbus/dbus into dbus-1.4
[platform/upstream/dbus.git] / cmake / dbus / CMakeLists.txt
index b798a41..6a6c402 100644 (file)
@@ -1,10 +1,8 @@
 project(dbus-lib)
 
-#INCLUDES=-I$(top_srcdir) $(DBUS_CLIENT_CFLAGS) -DDBUS_COMPILATION
-
 SET(DBUS_DIR ${CMAKE_SOURCE_DIR}/../dbus)
 
-configure_file(${CMAKE_CURRENT_SOURCE_DIR}/dbus-arch-deps.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/dbus-arch-deps.h )
+configure_file(${DBUS_DIR}/dbus-arch-deps.h.in ${CMAKE_CURRENT_BINARY_DIR}/dbus-arch-deps.h )
 
 add_definitions(-DDBUS_COMPILATION)
 
@@ -23,7 +21,6 @@ set (dbusinclude_HEADERS
        ${DBUS_DIR}/dbus-server.h
        ${DBUS_DIR}/dbus-shared.h
        ${DBUS_DIR}/dbus-signature.h
-       ${DBUS_DIR}/dbus-spawn.h
        ${DBUS_DIR}/dbus-threads.h
        ${DBUS_DIR}/dbus-types.h
        dbus-arch-deps.h
@@ -60,10 +57,6 @@ set (DBUS_LIB_SOURCES
        ${DBUS_DIR}/dbus-transport.c
        ${DBUS_DIR}/dbus-transport-socket.c
        ${DBUS_DIR}/dbus-watch.c
-#dbus-md5.c
-#
-#  find a clean Windows implementation
-#  and move code to a *-win.c file
 )
 
 
@@ -106,7 +99,6 @@ set (DBUS_LIB_HEADERS
        ${DBUS_DIR}/dbus-transport-protected.h
        ${DBUS_DIR}/dbus-watch.h
        ${CMAKE_BINARY_DIR}/config.h
-##dbus-md5.h
 )
 if(UNIX)
        set (DBUS_LIB_HEADERS ${DBUS_LIB_HEADERS} 
@@ -125,6 +117,7 @@ endif(UNIX)
 ### be underscore-prefixed)
 set (DBUS_SHARED_SOURCES
        ${DBUS_DIR}/dbus-dataslot.c
+       ${DBUS_DIR}/dbus-file.c
        ${DBUS_DIR}/dbus-hash.c
        ${DBUS_DIR}/dbus-internals.c
        ${DBUS_DIR}/dbus-list.c
@@ -138,6 +131,7 @@ set (DBUS_SHARED_SOURCES
 
 set (DBUS_SHARED_HEADERS
        ${DBUS_DIR}/dbus-dataslot.h
+       ${DBUS_DIR}/dbus-file.h
        ${DBUS_DIR}/dbus-hash.h
        ${DBUS_DIR}/dbus-internals.h
        ${DBUS_DIR}/dbus-list.h
@@ -165,7 +159,7 @@ set (DBUS_UTIL_SOURCES
        ${DBUS_DIR}/dbus-message-util.c
        ${DBUS_DIR}/dbus-shell.c
        ${DBUS_DIR}/dbus-string-util.c
-        ${DBUS_DIR}/dbus-sysdeps-util.c
+       ${DBUS_DIR}/dbus-sysdeps-util.c
 )
 
 if (DBUS_BUILD_TESTS)
@@ -186,6 +180,7 @@ set (DBUS_UTIL_HEADERS
 ### platform specific settings
 if (WIN32)
        set (DBUS_SHARED_SOURCES ${DBUS_SHARED_SOURCES} 
+               ${DBUS_DIR}/dbus-file-win.c
                ${DBUS_DIR}/dbus-sysdeps-win.c
                ${DBUS_DIR}/dbus-pipe-win.c
                ${DBUS_DIR}/dbus-sysdeps-thread-win.c
@@ -198,18 +193,29 @@ if (WIN32)
                ${DBUS_DIR}/dbus-spawn-win.c
                ${DBUS_DIR}/dbus-sysdeps-util-win.c
        )
+       if(WINCE)
+       set (DBUS_SHARED_SOURCES ${DBUS_SHARED_SOURCES}
+               ${DBUS_DIR}/dbus-sysdeps-wince-glue.c
+       )
+       set (DBUS_SHARED_HEADERS ${DBUS_SHARED_HEADERS}
+               ${DBUS_DIR}/dbus-sysdeps-wince-glue.h
+       )
+       endif(WINCE)
 else (WIN32)
        set (DBUS_SHARED_SOURCES ${DBUS_SHARED_SOURCES} 
+               ${DBUS_DIR}/dbus-file-unix.c
                ${DBUS_DIR}/dbus-pipe-unix.c
                ${DBUS_DIR}/dbus-sysdeps-unix.c
                ${DBUS_DIR}/dbus-sysdeps-pthread.c
                ${DBUS_DIR}/dbus-userdb.c
+        ${DBUS_DIR}/sd-daemon.c
        )
        set (DBUS_SHARED_HEADERS ${DBUS_SHARED_HEADERS} 
                ${DBUS_DIR}/dbus-server-unix.h
                ${DBUS_DIR}/dbus-transport-unix.h
                ${DBUS_DIR}/dbus-sysdeps-unix.h
                ${DBUS_DIR}/dbus-userdb.h
+        ${DBUS_DIR}/sd-daemon.h
        )
        set (DBUS_UTIL_SOURCES ${DBUS_UTIL_SOURCES}
                ${DBUS_DIR}/dbus-spawn.c
@@ -249,76 +255,47 @@ endif(MSVC_IDE)
 
 ### Client library
 
-if(WIN32)
-       file(READ "${DBUS_DIR}/dbus-1-symbols.def.in" DBUS_CLIENT_EXPORTS)
-       if (DBUS_BUILD_TESTS)
-               file(READ "${DBUS_DIR}/dbus-1-testsymbols.def.in" DBUS_CLIENT_TEST_EXPORTS)
-       else(DBUS_BUILD_TESTS)
-               set(DBUS_CLIENT_TEST_EXPORTS )
-       endif(DBUS_BUILD_TESTS)
-       set(DBUS_LIB_DEF "${CMAKE_BINARY_DIR}/dbus-1.def")
-       configure_file("${CMAKE_CURRENT_SOURCE_DIR}/dbus-1.def.cmake" ${DBUS_LIB_DEF})
-       if(MSVC)
-               list(APPEND DBUS_LIB_SOURCES ${DBUS_LIB_DEF})
-       endif(MSVC)
-endif(WIN32)
-
 add_library(dbus-1 SHARED
-                       ${DBUS_LIB_SOURCES}
-                       ${DBUS_SHARED_SOURCES}
-                       ${DBUS_LIB_HEADERS}
-                       ${DBUS_SHARED_HEADERS})
+                       ${libdbus_SOURCES}
+                       ${libdbus_HEADERS}
+)
 if(WIN32)
-       target_link_libraries(dbus-1 ws2_32 advapi32 netapi32)
+    if(WINCE)
+        target_link_libraries(dbus-1 ws2)
+    else(WINCE)
+        target_link_libraries(dbus-1 ws2_32 advapi32 netapi32)
+    endif(WINCE)
 endif(WIN32)
 
 install_targets(/lib dbus-1 )
 install_files(/include/dbus FILES ${dbusinclude_HEADERS})
-if(WIN32 AND NOT MSVC)
-       install_files(/lib FILES ${DBUS_LIB_DEF})
-endif(WIN32 AND NOT MSVC)
 
 ### Internal library, used for the daemon, tools and tests, compiled statically.
 
+add_library(dbus-internal ${DBUS_INTERNAL_ADD_LIBRARY_OPTIONS}
+                       ${DBUS_LIB_SOURCES}
+                       ${DBUS_LIB_HEADERS}
+                       ${DBUS_SHARED_SOURCES}
+                       ${DBUS_SHARED_HEADERS}
+                       ${DBUS_UTIL_SOURCES}
+                       ${DBUS_UTIL_HEADERS}
+)
+target_link_libraries(dbus-internal)
+set_target_properties(dbus-internal PROPERTIES COMPILE_FLAGS ${DBUS_INTERNAL_LIBRARY_DEFINITIONS})
 if(WIN32)
-       file(READ "${DBUS_DIR}/dbus-internal-symbols.def.in" DBUS_INTERNAL_EXPORTS)
-       if (DBUS_BUILD_TESTS)
-               file(READ "${DBUS_DIR}/dbus-internal-testsymbols.def.in" DBUS_INTERNAL_TEST_EXPORTS)
-       else(DBUS_BUILD_TESTS)
-               set(DBUS_INTERNAL_TEST_EXPORTS )
-       endif(DBUS_BUILD_TESTS)
-       set(DBUS_INTERNAL_DEF "${CMAKE_BINARY_DIR}/dbus-internal.def")
-       configure_file("${CMAKE_CURRENT_SOURCE_DIR}/dbus-internal.def.cmake" ${DBUS_INTERNAL_DEF})
-       if(MSVC)
-               list(APPEND DBUS_UTIL_SOURCES ${DBUS_INTERNAL_DEF})
-       endif(MSVC)
+    if(WINCE)
+        target_link_libraries(dbus-internal ws2)
+    else(WINCE)
+        target_link_libraries(dbus-internal ws2_32 advapi32 netapi32)
+    endif(WINCE)
 endif(WIN32)
 
-add_library(dbus-internal STATIC
-                       ${DBUS_UTIL_SOURCES}
-                       ${DBUS_UTIL_HEADERS})
-target_link_libraries(dbus-internal dbus-1)
-
-#ADD_EXECUTABLE(dbus-example dbus-example.c)
-#target_link_libraries(${CMAKE_SOURCE_DIR}/../dbus/dbus-example dbus-1)
-#install_targets(/bin dbus-example )
-
-## note that TESTS has special meaning (stuff to use in make check)
-## so if adding tests not to be run in make check, don't add them to 
-## TESTS
-#if DBUS_BUILD_TESTS
-#TESTS_ENVIRONMENT=DBUS_TEST_DATA=$(top_builddir)/test/data DBUS_TEST_HOMEDIR=$(top_builddir)/dbus
-#TESTS=dbus-test
-#else
-#TESTS=
-#endif
-
 if (DBUS_BUILD_TESTS)
        set (TESTS_ENVIRONMENT "DBUS_TEST_DATA=${CMAKE_SOURCE_DIR}/test/data DBUS_TEST_HOMEDIR=${CMAKE_BUILD_DIR}/dbus")
        ADD_EXECUTABLE(dbus-test ${CMAKE_SOURCE_DIR}/../dbus/dbus-test-main.c)
-       target_link_libraries(dbus-test dbus-1 dbus-internal)
+       target_link_libraries(dbus-test ${DBUS_INTERNAL_LIBRARIES})
        add_test(dbus-test ${EXECUTABLE_OUTPUT_PATH}/dbus-test ${CMAKE_SOURCE_DIR}/../test/data)
-       #install_targets(/bin dbus-test)
+       set_target_properties(dbus-test PROPERTIES COMPILE_FLAGS ${DBUS_INTERNAL_CLIENT_DEFINITIONS})
 ENDIF (DBUS_BUILD_TESTS)
 
 if (UNIX)