Revert "made session service dirs customizable: cmake part"
[platform/upstream/dbus.git] / cmake / bus / CMakeLists.txt
index 79629e9..faf9a8e 100644 (file)
@@ -1,6 +1,4 @@
-
-include_directories(${CMAKE_SOURCE_DIR}/..)
-include_directories( ${CMAKE_INCLUDE_PATH} )
+project(bus)
 
 add_definitions(-DDBUS_COMPILATION)
 
@@ -13,9 +11,8 @@ set (config_DATA
 )
 
 # config files for installation 
-FOREACH(file ${config_DATA})
-       CONFIGURE_FILE( "${CMAKE_CURRENT_SOURCE_DIR}/${file}.cmake" "${CMAKE_CURRENT_BINARY_DIR}/${file}" IMMEDIATE @ONLY)
-ENDFOREACH(file)
+CONFIGURE_FILE( "${BUS_DIR}/session.conf.in" "${CMAKE_CURRENT_BINARY_DIR}/session.conf" IMMEDIATE @ONLY)
+CONFIGURE_FILE( "system.conf.cmake" "${CMAKE_CURRENT_BINARY_DIR}/system.conf" IMMEDIATE @ONLY)
 
 # copy services for local daemon start to local service dir data/dbus-1/services
 SET (SERVICE_FILES test/data/valid-service-files)
@@ -45,12 +42,15 @@ set (BUS_SOURCES
        ${BUS_DIR}/bus.c                                        
        ${BUS_DIR}/bus.h                                        
        ${BUS_DIR}/config-parser.c                              
-       ${BUS_DIR}/config-parser.h                              
-       ${BUS_DIR}/connection.c                         
+       ${BUS_DIR}/config-parser.h
+    ${BUS_DIR}/config-parser-common.c
+    ${BUS_DIR}/config-parser-common.h
+#    ${BUS_DIR}/config-parser-trivial.c
+       ${BUS_DIR}/connection.c
        ${BUS_DIR}/connection.h                         
        ${BUS_DIR}/desktop-file.c                               
        ${BUS_DIR}/desktop-file.h                               
-       ${BUS_DIR}/dir-watch.c                          
+       ${BUS_DIR}/dir-watch-default.c                          
        ${BUS_DIR}/dir-watch.h                          
        ${BUS_DIR}/dispatch.c                           
        ${BUS_DIR}/dispatch.h                           
@@ -73,58 +73,43 @@ set (BUS_SOURCES
        ${XML_SOURCES}
        ${DIR_WATCH_SOURCE}
 )
-
-set (dbus_daemon_SOURCES
-       ${BUS_SOURCES}
-       ${BUS_DIR}/main.c                                       
-)
+if(DBUS_ENABLE_STATS)
+       list(APPEND BUS_SOURCES
+               ${BUS_DIR}/stats.c
+               ${BUS_DIR}/stats.h
+       )
+endif()
 
 include_directories(${XML_INCLUDE_DIR})
-SET (LIBS ${XML_LIBRARY})
 
-add_executable(dbus-daemon ${dbus_daemon_SOURCES})
-target_link_libraries(dbus-daemon dbus-1 ${LIBS})
-install_targets(/bin dbus-daemon )
-install_files(/etc FILES ${config_DATA})
+add_executable(dbus-daemon ${BUS_SOURCES} ${BUS_DIR}/main.c)
+target_link_libraries(dbus-daemon ${DBUS_INTERNAL_LIBRARIES} ${XML_LIBRARY})
+set_target_properties(dbus-daemon PROPERTIES OUTPUT_NAME ${DBUS_DAEMON_NAME})
+set_target_properties(dbus-daemon PROPERTIES COMPILE_FLAGS ${DBUS_INTERNAL_CLIENT_DEFINITIONS})
+
+install_targets(/bin dbus-daemon)
+install_files(/etc/dbus-1 FILES ${config_DATA})
+install(DIRECTORY .  DESTINATION etc/dbus-1/session.d  FILES_MATCHING PATTERN "*.conf")
 
 if (DBUS_SERVICE)
        set (dbus_service_SOURCES 
                ${BUS_DIR}/bus-service-win.c
-  # TODO: add additional files
+       # TODO: add additional files
        #       ${BUS_DIR}/service-main.c
        #       ${BUS_SOURCES} 
        )
 
        add_executable(dbus-service ${dbus_service_SOURCES} )
-       target_link_libraries(dbus-service dbus-1 ${LIBS})
+       target_link_libraries(dbus-service ${DBUS_INTERNAL_LIBRARIES} ${XML_LIBRARY})
+       set_target_properties(dbus-service PROPERTIES COMPILE_FLAGS ${DBUS_INTERNAL_CLIENT_DEFINITIONS})
        install_targets(/bin dbus-service )
-
 endif (DBUS_SERVICE)
 
-## 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=bus-test 
-#else
-#TESTS=
-#endif
-
-## we use noinst_PROGRAMS not check_PROGRAMS so that we build 
-## even when not doing "make check"
-#noinst_PROGRAMS=$(TESTS) 
-
-set (bus_test_SOURCES
-       ${BUS_SOURCES}
-       ${BUS_DIR}/test-main.c
-)
-
 if (DBUS_BUILD_TESTS)  
-       add_executable(bus-test ${bus_test_SOURCES})
-       target_link_libraries(bus-test dbus-1 ${LIBS} )
-       install_targets(/bin bus-test)
-       add_test(bus-test ${EXECUTABLE_OUTPUT_PATH}/bus-test ${CMAKE_SOURCE_DIR}/../test/data)
+       add_executable(bus-test ${BUS_SOURCES} ${BUS_DIR}/test-main.c)
+       target_link_libraries(bus-test ${DBUS_INTERNAL_LIBRARIES} ${XML_LIBRARY})
+       set_target_properties(bus-test PROPERTIES COMPILE_FLAGS ${DBUS_INTERNAL_CLIENT_DEFINITIONS})
+       add_test(bus-test ${EXECUTABLE_OUTPUT_PATH}/bus-test ${CMAKE_BINARY_DIR}/test/data)
 endif (DBUS_BUILD_TESTS)
 
 if(MSVC)
@@ -143,6 +128,30 @@ endif(MSVC)
 ##install_file(${configdir}/system.d FILE
 
 
+set(LAUNCH_HELPER_SOURCES ${XML_SOURCES}
+    ${BUS_DIR}/config-parser-common.c
+    ${BUS_DIR}/config-parser-trivial.c
+    ${BUS_DIR}/desktop-file.c
+    ${BUS_DIR}/utils.c
+    ${BUS_DIR}/activation-helper.c
+
+)
+
+if(NOT WIN32)
+# TODO PENDING(kdab) fix build on windows (activation-helper.c)
+   add_executable(dbus-daemon-launch-helper ${LAUNCH_HELPER_SOURCES} ${BUS_DIR}/activation-helper-bin.c )
+   target_link_libraries(dbus-daemon-launch-helper ${DBUS_INTERNAL_LIBRARIES} ${XML_LIBRARY} )
+   
+   add_executable(dbus-daemon-launch-helper-test ${LAUNCH_HELPER_SOURCES}     ${BUS_DIR}/activation-helper-bin.c)
+   set_target_properties(dbus-daemon-launch-helper-test PROPERTIES COMPILE_FLAGS "-DACTIVATION_LAUNCHER_TEST")
+   target_link_libraries(dbus-daemon-launch-helper-test ${DBUS_INTERNAL_LIBRARIES} ${XML_LIBRARY} )
+   
+   add_executable(bus-test-launch-helper ${LAUNCH_HELPER_SOURCES}  ${BUS_DIR}/test-launch-helper.c)
+   set_target_properties(bus-test-launch-helper PROPERTIES COMPILE_FLAGS "-DACTIVATION_LAUNCHER_TEST -DACTIVATION_LAUNCHER_DO_OOM")
+   target_link_libraries(bus-test-launch-helper ${DBUS_INTERNAL_LIBRARIES} ${XML_LIBRARY} )
+   add_test(bus-test-launch-helper ${EXECUTABLE_OUTPUT_PATH}/bus-test-launch-helper )
+
+endif(NOT WIN32)
 
 #### Init scripts fun
 #SCRIPT_IN_FILES=messagebus.in