Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
qt_generate_wayland_protocol_server_sources.qdoc
Go to the documentation of this file.
1
// Copyright (C) 2024 The Qt Company Ltd.
2
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only
3
4
/*!
5
\page qt-generate-wayland-protocol-server-sources.html
6
\ingroup cmake-commands-qtwaylandcompositor
7
8
\title qt_generate_wayland_protocol_server_sources
9
\keyword qt6_generate_wayland_protocol_server_sources
10
11
\summary {Generates server-side C++ bindings for a Wayland protocol .XML file}
12
13
The command is defined in the \c WaylandCompositor component of the \c Qt6 package, which
14
can be loaded like so:
15
16
\badcode
17
find_package(Qt6 REQUIRED COMPONENTS WaylandCompositor)
18
\endcode
19
20
\cmakecommandsince 6.0
21
22
\section1 Synopsis
23
24
\badcode
25
qt_generate_wayland_protocol_server_sources(target
26
[PUBLIC_CODE | PRIVATE_CODE]
27
FILES file1.xml [file2.xml ...])
28
\endcode
29
30
\versionlessCMakeCommandsNote qt6_generate_wayland_protocol_server_sources()
31
32
\section1 Description
33
34
qt_generate_wayland_protocol_server_sources() creates the build steps to run \c{waylandscanner} and
35
\c{qtwaylandscanner} on one or more Wayland protocol files. The tools will in turn generate binding
36
code in C and C++ for implementing the protocols, and the resulting files will be built as part
37
of the \c target.
38
39
The options \c{PUBLIC_CODE} and \c{PRIVATE_CODE} (added in Qt 6.8) correspond to the \c{public-code}
40
and \c{private-code} options of \c{wayland-scanner}. For backwards compatibility \c{PUBLIC_CODE} is
41
the default but generally \c{PRIVATE_CODE} is strongly recommended.
42
43
qt_generate_wayland_protocol_server_sources() will trigger generation of the files needed to
44
implement the compositor side of the protocol.
45
46
\l{qt_generate_wayland_protocol_client_sources}{qt_generate_wayland_protocol_client_sources()}
47
is the equivalent function for the client.
48
49
See the \l{Custom Shell} or \l{Custom Extension} examples for a demonstration of how to use these
50
functions.
51
*/
qtwayland
src
compositor
doc
src
cmake
qt_generate_wayland_protocol_server_sources.qdoc
Generated on
for Qt by
1.14.0