summaryrefslogtreecommitdiffstats
path: root/app/CMakeLists.txt
diff options
context:
space:
mode:
Diffstat (limited to 'app/CMakeLists.txt')
-rw-r--r--app/CMakeLists.txt46
1 files changed, 33 insertions, 13 deletions
diff --git a/app/CMakeLists.txt b/app/CMakeLists.txt
index ff8eb93..9008b9e 100644
--- a/app/CMakeLists.txt
+++ b/app/CMakeLists.txt
@@ -1,7 +1,9 @@
###########################################################################
# Copyright 2018 Konsulko Group
+# Copyright 2020 Collabora, Ltd.
#
# Author: Scott Murray <scott.murray@konsulko.com>
+# Author: Marius Vlad <marius.vlad@collabora.com>
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -17,18 +19,13 @@
###########################################################################
set(CMAKE_INCLUDE_CURRENT_DIR ON)
-set(CMAKE_AUTOMOC ON)
-set(CMAKE_AUTORCC ON)
set(CMAKE_CXX_STANDARD 14)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
-set(OE_QMAKE_PATH_EXTERNAL_HOST_BINS $ENV{OE_QMAKE_PATH_HOST_BINS})
-find_package(Qt5 COMPONENTS Core Gui QuickControls2 QuickWidgets REQUIRED)
-find_package(Qt5Gui ${QT_MIN_VERSION} CONFIG REQUIRED Private)
find_package(PkgConfig REQUIRED)
find_program(WAYLAND_SCANNER_EXECUTABLE NAMES wayland-scanner)
-PROJECT_TARGET_ADD(cluster-receiver)
+PROJECT_TARGET_ADD(xdg-cluster-receiver)
add_custom_command(
OUTPUT agl-shell-desktop-client-protocol.h
@@ -55,25 +52,51 @@ add_custom_command(
DEPENDS ${CMAKE_SOURCE_DIR}/app/protocol/agl-shell-desktop.xml
)
+
pkg_check_modules(GSTREAMER REQUIRED gstreamer-1.0)
pkg_check_modules(GSTREAMER_PLUGINS_BASE REQUIRED gstreamer-plugins-base-1.0)
pkg_check_modules(GSTREAMER_VIDEO REQUIRED gstreamer-video-1.0)
pkg_check_modules(GSTREAMER_PLUGINS_BAD REQUIRED gstreamer-plugins-bad-1.0)
pkg_check_modules(WAYLAND_CLIENT REQUIRED wayland-client)
+pkg_check_modules(WAYLAND_PROTOCOLS REQUIRED wayland-protocols>=1.18)
+pkg_get_variable(WAYLAND_PROTOCOLS_BASE wayland-protocols pkgdatadir)
+
+add_custom_command(
+ OUTPUT xdg-shell-client-protocol.h
+ COMMAND ${WAYLAND_SCANNER_EXECUTABLE} client-header
+ < ${WAYLAND_PROTOCOLS_BASE}/stable/xdg-shell/xdg-shell.xml
+ > ${CMAKE_SOURCE_DIR}/app/xdg-shell-client-protocol.h
+ DEPENDS ${WAYLAND_PROTOCOLS_BASE}/stable/xdg-shell/xdg-shell.xml
+)
+
+
+add_custom_command(
+ OUTPUT ${CMAKE_BINARY_DIR}/app/xdg-shell-client-protocol.h
+ COMMAND ${WAYLAND_SCANNER_EXECUTABLE} client-header
+ < ${WAYLAND_PROTOCOLS_BASE}/stable/xdg-shell/xdg-shell.xml
+ > ${CMAKE_SOURCE_DIR}/app/xdg-shell-client-protocol.h
+ DEPENDS ${WAYLAND_PROTOCOLS_BASE}/stable/xdg-shell/xdg-shell.xml
+)
+
+add_custom_command(
+ OUTPUT xdg-shell-protocol.c
+ COMMAND ${WAYLAND_SCANNER_EXECUTABLE} code
+ < ${WAYLAND_PROTOCOLS_BASE}/stable/xdg-shell/xdg-shell.xml
+ > ${CMAKE_BINARY_DIR}/app/xdg-shell-protocol.c
+ DEPENDS ${WAYLAND_PROTOCOLS_BASE}/stable/xdg-shell/xdg-shell.xml
+)
add_executable(${TARGET_NAME}
main.cpp
- surface.cpp
agl-shell-desktop-protocol.c
agl-shell-desktop-client-protocol.h
- shell-desktop.cpp
+ xdg-shell-protocol.c
+ xdg-shell-client-protocol.h
${RESOURCES}
)
include_directories(
- include_directories(${Qt5Gui_PRIVATE_INCLUDE_DIRS})
- ${QTAPPFW_INCLUDE_DIRS}
"${GSTREAMER_INCLUDE_DIRS}"
"${GSTREAMER_PLUGINS_BASE_INCLUDE_DIRS}"
"${GSTREAMER_PLUGINS_BAD_INCLUDE_DIRS}"
@@ -90,13 +113,10 @@ set_target_properties(${TARGET_NAME} PROPERTIES
)
target_link_libraries(${TARGET_NAME}
- Qt5::QuickControls2
- Qt5::QuickWidgets
${GSTREAMER_LIBRARIES}
"${GSTREAMER_PLUGINS_BASE_LIBRARIES}"
"${GSTREAMER_PLUGINS_BAD_LIBRARIES}"
"${GSTREAMER_VIDEO_LIBRARIES}"
- ${QTAPPFW_LIBRARIES}
${WAYLAND_CLIENT_LIBRARIES}
-lgstwayland-1.0
)