summaryrefslogtreecommitdiff
path: root/bus
diff options
context:
space:
mode:
authorRalf Habacker <ralf.habacker@freenet.de>2019-01-10 19:42:52 +0100
committerRalf Habacker <ralf.habacker@freenet.de>2019-01-22 09:57:40 +0100
commit3bf97922bd8df563169f9a448ecc8b2dd6658efc (patch)
tree882fd8701984e8212a538f75e5be910dd4bf6638 /bus
parent8747c9b5a06209b22d6b5c89c6ef44d88a74197f (diff)
downloaddbus-3bf97922bd8df563169f9a448ecc8b2dd6658efc.tar.gz
Move cmake related build system to top level
Signed-off-by: Ralf Habacker <ralf.habacker@freenet.de>
Diffstat (limited to 'bus')
-rw-r--r--bus/CMakeLists.txt203
1 files changed, 203 insertions, 0 deletions
diff --git a/bus/CMakeLists.txt b/bus/CMakeLists.txt
new file mode 100644
index 00000000..f901b7e0
--- /dev/null
+++ b/bus/CMakeLists.txt
@@ -0,0 +1,203 @@
+add_definitions(-DDBUS_COMPILATION)
+
+SET(EFENCE "")
+
+# config files for installation
+CONFIGURE_FILE( "session.conf.in" "${CMAKE_CURRENT_BINARY_DIR}/session.conf" IMMEDIATE @ONLY)
+CONFIGURE_FILE( "legacy-config/session.conf.in" "${CMAKE_CURRENT_BINARY_DIR}/legacy-config/session.conf" IMMEDIATE @ONLY)
+FILE(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/session.d)
+
+if(NOT WIN32)
+ CONFIGURE_FILE( "system.conf.in" "${CMAKE_CURRENT_BINARY_DIR}/system.conf" IMMEDIATE @ONLY)
+ CONFIGURE_FILE( "legacy-config/system.conf.in" "${CMAKE_CURRENT_BINARY_DIR}/legacy-config/system.conf" IMMEDIATE @ONLY)
+ FILE(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/system.d)
+endif()
+
+# copy services for local daemon start to local service dir data/dbus-1/services
+SET (SERVICE_FILES test/data/valid-service-files)
+FILE(GLOB FILES "${SERVICE_FILES}/*.service.in" )
+FOREACH(FILE ${FILES})
+ GET_FILENAME_COMPONENT(FILENAME ${FILE} NAME_WE)
+ SET (TARGET ${CMAKE_BINARY_DIR}/data/dbus-1/services/${FILENAME}.service)
+ IF (CONFIG_VERBOSE)
+ MESSAGE("FROM: ${FILE}\nTO: ${TARGET}\n")
+ ENDIF (CONFIG_VERBOSE)
+ configure_file(${FILE} ${TARGET} )
+ENDFOREACH(FILE)
+
+
+if (DBUS_BUS_ENABLE_INOTIFY)
+ set (DIR_WATCH_SOURCE dir-watch-inotify.c)
+elseif (DBUS_BUS_ENABLE_KQUEUE)
+ set (DIR_WATCH_SOURCE dir-watch-kqueue.c)
+else (DBUS_BUS_ENABLE_INOTIFY)
+ set (DIR_WATCH_SOURCE dir-watch-default.c)
+endif (DBUS_BUS_ENABLE_INOTIFY)
+
+set (BUS_SOURCES
+ activation.c
+ activation.h
+ apparmor.c
+ apparmor.h
+ audit.c
+ audit.h
+ bus.c
+ bus.h
+ config-loader-expat.c
+ config-parser.c
+ config-parser.h
+ config-parser-common.c
+ config-parser-common.h
+# config-parser-trivial.c
+ connection.c
+ connection.h
+ containers.c
+ containers.h
+ desktop-file.c
+ desktop-file.h
+ dir-watch.h
+ dispatch.c
+ dispatch.h
+ driver.c
+ driver.h
+ expirelist.c
+ expirelist.h
+ policy.c
+ policy.h
+ selinux.h
+ selinux.c
+ services.c
+ services.h
+ signals.c
+ signals.h
+ test.c
+ test.h
+ utils.c
+ utils.h
+ ${DIR_WATCH_SOURCE}
+)
+if(DBUS_ENABLE_STATS)
+ list(APPEND BUS_SOURCES
+ stats.c
+ stats.h
+ )
+endif(DBUS_ENABLE_STATS)
+
+include_directories(
+ ${CMAKE_BINARY_DIR}
+ ${CMAKE_SOURCE_DIR}/..
+ ${EXPAT_INCLUDE_DIR}
+)
+
+if(WIN32)
+ set(DBUS_VER_INTERNAL_NAME "dbus-daemon")
+ set(DBUS_VER_ORIGINAL_NAME "${DBUS_VER_INTERNAL_NAME}${CMAKE_EXECUTABLE_SUFFIX}")
+ set(DBUS_VER_FILE_TYPE "VFT_APP")
+ configure_file(../dbus/versioninfo.rc.in ${CMAKE_CURRENT_BINARY_DIR}/versioninfo-${DBUS_VER_INTERNAL_NAME}.rc)
+ list(APPEND BUS_SOURCES ${CMAKE_CURRENT_BINARY_DIR}/versioninfo-${DBUS_VER_INTERNAL_NAME}.rc)
+endif()
+
+add_library(dbus-daemon-internal STATIC ${BUS_SOURCES})
+target_link_libraries(dbus-daemon-internal ${DBUS_INTERNAL_LIBRARIES} ${EXPAT_LIBRARIES})
+
+add_executable(dbus-daemon main.c)
+target_link_libraries(dbus-daemon dbus-daemon-internal)
+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 dbus-daemon ${INSTALL_TARGETS_DEFAULT_ARGS})
+install(FILES ${CMAKE_CURRENT_BINARY_DIR}/session.conf DESTINATION ${CMAKE_INSTALL_DATADIR}/dbus-1)
+install(FILES ${CMAKE_CURRENT_BINARY_DIR}/legacy-config/session.conf DESTINATION ${CMAKE_INSTALL_SYSCONFDIR}/dbus-1)
+install(DIRECTORY DESTINATION ${CMAKE_INSTALL_DATADIR}/dbus-1/session.d)
+install(DIRECTORY DESTINATION ${CMAKE_INSTALL_DATADIR}/dbus-1/services)
+
+if(NOT WIN32)
+ install(FILES ${CMAKE_CURRENT_BINARY_DIR}/system.conf DESTINATION ${CMAKE_INSTALL_DATADIR}/dbus-1)
+ install(FILES ${CMAKE_CURRENT_BINARY_DIR}/legacy-config/system.conf DESTINATION ${CMAKE_INSTALL_SYSCONFDIR}/dbus-1)
+ install(DIRECTORY DESTINATION ${CMAKE_INSTALL_DATADIR}/dbus-1/system.d)
+ install(DIRECTORY DESTINATION ${CMAKE_INSTALL_DATADIR}/dbus-1/system-services)
+ install(DIRECTORY DESTINATION ${CMAKE_INSTALL_LOCALSTATEDIR}/run/dbus)
+endif()
+
+if (DBUS_SERVICE)
+ set (dbus_service_SOURCES
+ bus-service-win.c
+ # TODO: add additional files
+ # service-main.c
+ # ${BUS_SOURCES}
+ )
+
+ set(DBUS_VER_INTERNAL_NAME "dbus-service")
+ set(DBUS_VER_ORIGINAL_NAME "${DBUS_VER_INTERNAL_NAME}${CMAKE_EXECUTABLE_SUFFIX}")
+ set(DBUS_VER_FILE_TYPE "VFT_APP")
+ configure_file(../dbus/versioninfo.rc.in ${CMAKE_CURRENT_BINARY_DIR}/versioninfo-${DBUS_VER_INTERNAL_NAME}.rc)
+ list(APPEND dbus_service_SOURCES ${CMAKE_CURRENT_BINARY_DIR}/versioninfo-${DBUS_VER_INTERNAL_NAME}.rc)
+ add_executable(dbus-service ${dbus_service_SOURCES} )
+ target_link_libraries(dbus-service ${DBUS_INTERNAL_LIBRARIES} ${EXPAT_LIBRARIES})
+ set_target_properties(dbus-service PROPERTIES COMPILE_FLAGS ${DBUS_INTERNAL_CLIENT_DEFINITIONS})
+ install(TARGETS dbus-service ${INSTALL_TARGETS_DEFAULT_ARGS})
+endif (DBUS_SERVICE)
+
+set(LAUNCH_HELPER_SOURCES
+ config-loader-expat.c
+ config-parser-common.c
+ config-parser-trivial.c
+ desktop-file.c
+ utils.c
+)
+
+if(NOT WIN32)
+ add_library(launch-helper-internal STATIC ${LAUNCH_HELPER_SOURCES})
+ target_link_libraries(launch-helper-internal ${DBUS_INTERNAL_LIBRARIES} ${EXPAT_LIBRARIES})
+
+ add_executable(dbus-daemon-launch-helper activation-helper.c activation-helper-bin.c )
+ target_link_libraries(dbus-daemon-launch-helper launch-helper-internal)
+endif(NOT WIN32)
+
+if(MSVC)
+ project_source_group(${GROUP_CODE} bus_test_SOURCES dummy)
+endif(MSVC)
+
+## mop up the gcov files
+#clean-local:
+# /bin/rm *.bb *.bbg *.da *.gcov || true
+
+#install-data-hook:
+# $(mkinstalldirs) $(DESTDIR)/$(localstatedir)/run/dbus
+# $(mkinstalldirs) $(DESTDIR)/$(configdir)/system.d
+# $(mkinstalldirs) $(DESTDIR)/$(datadir)/dbus-1/services
+
+##install_file(${configdir}/system.d FILE
+
+#### Init scripts fun
+#SCRIPT_IN_FILES=messagebus.in
+# rc.messagebus.in
+
+## Red Hat start
+#if DBUS_INIT_SCRIPTS_RED_HAT
+
+#initddir=$(sysconfdir)/rc.d/init.d
+
+#initd_SCRIPTS=
+# messagebus
+
+#endif
+# ## Red Hat end
+
+## Slackware start
+#if DBUS_INIT_SCRIPTS_SLACKWARE
+
+#initddir=$(sysconfdir)/rc.d/
+
+#initd_SCRIPTS=
+# rc.messagebus
+
+#endif
+## Slackware end
+
+#MAN_IN_FILES=dbus-daemon.1.in
+#man_MANS = dbus-daemon.1
+
+#### Extra dist
+
+#EXTRA_DIST=$(CONFIG_IN_FILES) $(SCRIPT_IN_FILES) $(man_MANS) $(MAN_IN_FILES)