diff options
Diffstat (limited to 'src/CMakeLists.txt')
-rw-r--r-- | src/CMakeLists.txt | 128 |
1 files changed, 128 insertions, 0 deletions
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt new file mode 100644 index 0000000..ec43b8f --- /dev/null +++ b/src/CMakeLists.txt @@ -0,0 +1,128 @@ + +########################### +# Vala Generation +########################### + +set(HEADER_PATH "${CMAKE_CURRENT_BINARY_DIR}/indicator-sound-service.h") +set(SYMBOLS_PATH "${CMAKE_CURRENT_BINARY_DIR}/indicator-sound-service.def") + +vala_init(indicator-sound-service + PACKAGES + config + gio-2.0 + gio-unix-2.0 + libxml-2.0 + libpulse + libpulse-mainloop-glib + OPTIONS + --ccode + --thread + --vapidir=${CMAKE_SOURCE_DIR}/vapi/ + --vapidir=. + --target-glib=2.36 +) + +vala_add(indicator-sound-service + service.vala + DEPENDS + sound-menu + volume-control + media-player + media-player-list +) +vala_add(indicator-sound-service + main.vala + DEPENDS + service +) +vala_add(indicator-sound-service + volume-control.vala +) +vala_add(indicator-sound-service + media-player.vala + DEPENDS + mpris2-interfaces +) +vala_add(indicator-sound-service + media-player-list.vala + DEPENDS + media-player + mpris2-watcher +) +vala_add(indicator-sound-service + mpris2-interfaces.vala +) +vala_add(indicator-sound-service + mpris2-watcher.vala + DEPENDS + media-player + mpris2-interfaces + freedesktop-interfaces +) +vala_add(indicator-sound-service + freedesktop-interfaces.vala +) +vala_add(indicator-sound-service + sound-menu.vala + DEPENDS + media-player +) + +vala_finish(indicator-sound-service + SOURCES + project_VALA_SOURCES + OUTPUTS + project_VALA_C + GENERATE_HEADER + ${HEADER_PATH} + GENERATE_SYMBOLS + ${SYMBOLS_PATH} +) + +set_source_files_properties( + ${project_VALA_SOURCES} + PROPERTIES + HEADER_FILE_ONLY TRUE +) + +set( + INDICATOR_SOUND_SOURCES + ${project_VALA_SOURCES} + ${project_VALA_C} + ${SYMBOLS_PATH} +) + +########################### +# Executable +########################### + +add_definitions( + -w +) + +add_executable( + indicator-sound-service-bin + ${INDICATOR_SOUND_SOURCES} +) + +set_target_properties( + indicator-sound-service-bin + PROPERTIES + OUTPUT_NAME "indicator-sound-service" +) + +target_link_libraries( + indicator-sound-service-bin + ${PULSEAUDIO_LIBRARIES} + ${SOUNDSERVICE_LIBRARIES} +) + +########################### +# Installation +########################### + +install( + TARGETS indicator-sound-service-bin + RUNTIME DESTINATION ${CMAKE_INSTALL_LIBEXECDIR}/indicator-sound/ +) + |