mirror of
https://github.com/godotengine/godot.git
synced 2025-10-19 16:03:29 +00:00
Wayland: Simplify including protocols
This commit is contained in:
parent
fc523ec5f6
commit
367cabf692
3 changed files with 56 additions and 144 deletions
|
@ -39,152 +39,66 @@ else:
|
|||
}
|
||||
env.Append(BUILDERS=WAYLAND_BUILDERS)
|
||||
|
||||
env.NoCache(
|
||||
env.WAYLAND_API_HEADER("protocol/wayland.gen.h", "#thirdparty/wayland/protocol/wayland.xml"),
|
||||
env.WAYLAND_API_CODE("protocol/wayland.gen.c", "#thirdparty/wayland/protocol/wayland.xml"),
|
||||
env.WAYLAND_API_HEADER(
|
||||
"protocol/viewporter.gen.h", "#thirdparty/wayland-protocols/stable/viewporter/viewporter.xml"
|
||||
),
|
||||
env.WAYLAND_API_CODE("protocol/viewporter.gen.c", "#thirdparty/wayland-protocols/stable/viewporter/viewporter.xml"),
|
||||
env.WAYLAND_API_HEADER(
|
||||
"protocol/cursor_shape.gen.h",
|
||||
"#thirdparty/wayland-protocols/staging/cursor-shape/cursor-shape-v1.xml",
|
||||
),
|
||||
env.WAYLAND_API_CODE(
|
||||
"protocol/cursor_shape.gen.c",
|
||||
"#thirdparty/wayland-protocols/staging/cursor-shape/cursor-shape-v1.xml",
|
||||
),
|
||||
env.WAYLAND_API_HEADER(
|
||||
"protocol/fractional_scale.gen.h",
|
||||
"#thirdparty/wayland-protocols/staging/fractional-scale/fractional-scale-v1.xml",
|
||||
),
|
||||
env.WAYLAND_API_CODE(
|
||||
"protocol/fractional_scale.gen.c",
|
||||
"#thirdparty/wayland-protocols/staging/fractional-scale/fractional-scale-v1.xml",
|
||||
),
|
||||
env.WAYLAND_API_HEADER("protocol/xdg_shell.gen.h", "#thirdparty/wayland-protocols/stable/xdg-shell/xdg-shell.xml"),
|
||||
env.WAYLAND_API_CODE("protocol/xdg_shell.gen.c", "#thirdparty/wayland-protocols/stable/xdg-shell/xdg-shell.xml"),
|
||||
env.WAYLAND_API_HEADER(
|
||||
"protocol/xdg_decoration.gen.h",
|
||||
"#thirdparty/wayland-protocols/unstable/xdg-decoration/xdg-decoration-unstable-v1.xml",
|
||||
),
|
||||
env.WAYLAND_API_CODE(
|
||||
"protocol/xdg_decoration.gen.c",
|
||||
"#thirdparty/wayland-protocols/unstable/xdg-decoration/xdg-decoration-unstable-v1.xml",
|
||||
),
|
||||
env.WAYLAND_API_HEADER(
|
||||
"protocol/xdg_activation.gen.h",
|
||||
"#thirdparty/wayland-protocols/staging/xdg-activation/xdg-activation-v1.xml",
|
||||
),
|
||||
env.WAYLAND_API_CODE(
|
||||
"protocol/xdg_activation.gen.c",
|
||||
"#thirdparty/wayland-protocols/staging/xdg-activation/xdg-activation-v1.xml",
|
||||
),
|
||||
env.WAYLAND_API_HEADER(
|
||||
"protocol/relative_pointer.gen.h",
|
||||
"#thirdparty/wayland-protocols/unstable/relative-pointer/relative-pointer-unstable-v1.xml",
|
||||
),
|
||||
env.WAYLAND_API_CODE(
|
||||
"protocol/relative_pointer.gen.c",
|
||||
"#thirdparty/wayland-protocols/unstable/relative-pointer/relative-pointer-unstable-v1.xml",
|
||||
),
|
||||
env.WAYLAND_API_HEADER(
|
||||
"protocol/pointer_constraints.gen.h",
|
||||
"#thirdparty/wayland-protocols/unstable/pointer-constraints/pointer-constraints-unstable-v1.xml",
|
||||
),
|
||||
env.WAYLAND_API_CODE(
|
||||
"protocol/pointer_constraints.gen.c",
|
||||
"#thirdparty/wayland-protocols/unstable/pointer-constraints/pointer-constraints-unstable-v1.xml",
|
||||
),
|
||||
env.WAYLAND_API_HEADER(
|
||||
"protocol/pointer_gestures.gen.h",
|
||||
"#thirdparty/wayland-protocols/unstable/pointer-gestures/pointer-gestures-unstable-v1.xml",
|
||||
),
|
||||
env.WAYLAND_API_CODE(
|
||||
"protocol/pointer_gestures.gen.c",
|
||||
"#thirdparty/wayland-protocols/unstable/pointer-gestures/pointer-gestures-unstable-v1.xml",
|
||||
),
|
||||
env.WAYLAND_API_HEADER(
|
||||
"protocol/primary_selection.gen.h",
|
||||
"#thirdparty/wayland-protocols/unstable/primary-selection/primary-selection-unstable-v1.xml",
|
||||
),
|
||||
env.WAYLAND_API_CODE(
|
||||
"protocol/primary_selection.gen.c",
|
||||
"#thirdparty/wayland-protocols/unstable/primary-selection/primary-selection-unstable-v1.xml",
|
||||
),
|
||||
env.WAYLAND_API_HEADER(
|
||||
"protocol/idle_inhibit.gen.h",
|
||||
"#thirdparty/wayland-protocols/unstable/idle-inhibit/idle-inhibit-unstable-v1.xml",
|
||||
),
|
||||
env.WAYLAND_API_CODE(
|
||||
"protocol/idle_inhibit.gen.c",
|
||||
"#thirdparty/wayland-protocols/unstable/idle-inhibit/idle-inhibit-unstable-v1.xml",
|
||||
),
|
||||
env.WAYLAND_API_HEADER(
|
||||
"protocol/tablet.gen.h",
|
||||
"#thirdparty/wayland-protocols/unstable/tablet/tablet-unstable-v2.xml",
|
||||
),
|
||||
env.WAYLAND_API_CODE(
|
||||
"protocol/tablet.gen.c",
|
||||
"#thirdparty/wayland-protocols/unstable/tablet/tablet-unstable-v2.xml",
|
||||
),
|
||||
env.WAYLAND_API_HEADER(
|
||||
"protocol/text_input.gen.h",
|
||||
"#thirdparty/wayland-protocols/unstable/text-input/text-input-unstable-v3.xml",
|
||||
),
|
||||
env.WAYLAND_API_CODE(
|
||||
"protocol/text_input.gen.c",
|
||||
"#thirdparty/wayland-protocols/unstable/text-input/text-input-unstable-v3.xml",
|
||||
),
|
||||
env.WAYLAND_API_HEADER(
|
||||
"protocol/xdg_foreign_v1.gen.h",
|
||||
"#thirdparty/wayland-protocols/unstable/xdg-foreign/xdg-foreign-unstable-v1.xml",
|
||||
),
|
||||
env.WAYLAND_API_CODE(
|
||||
"protocol/xdg_foreign_v1.gen.c",
|
||||
"#thirdparty/wayland-protocols/unstable/xdg-foreign/xdg-foreign-unstable-v1.xml",
|
||||
),
|
||||
env.WAYLAND_API_HEADER(
|
||||
"protocol/xdg_foreign_v2.gen.h",
|
||||
"#thirdparty/wayland-protocols/unstable/xdg-foreign/xdg-foreign-unstable-v2.xml",
|
||||
),
|
||||
env.WAYLAND_API_CODE(
|
||||
"protocol/xdg_foreign_v2.gen.c",
|
||||
"#thirdparty/wayland-protocols/unstable/xdg-foreign/xdg-foreign-unstable-v2.xml",
|
||||
),
|
||||
env.WAYLAND_API_HEADER(
|
||||
"protocol/xdg_system_bell.gen.h",
|
||||
"#thirdparty/wayland-protocols/staging/xdg-system-bell/xdg-system-bell-v1.xml",
|
||||
),
|
||||
env.WAYLAND_API_CODE(
|
||||
"protocol/xdg_system_bell.gen.c",
|
||||
"#thirdparty/wayland-protocols/staging/xdg-system-bell/xdg-system-bell-v1.xml",
|
||||
),
|
||||
)
|
||||
|
||||
def generate_from_xml(name, path):
|
||||
header = env.WAYLAND_API_HEADER(f"protocol/{name}.gen.h", path)
|
||||
source = env.WAYLAND_API_CODE(f"protocol/{name}.gen.c", path)
|
||||
env.NoCache(header, source)
|
||||
|
||||
return env.Object(f"protocol/{name}.gen.c")
|
||||
|
||||
|
||||
objects = [
|
||||
# Core protocol
|
||||
generate_from_xml("wayland", "#thirdparty/wayland/protocol/wayland.xml"),
|
||||
# Stable protocols
|
||||
generate_from_xml("tablet", "#thirdparty/wayland-protocols/stable/tablet/tablet-v2.xml"),
|
||||
generate_from_xml("viewporter", "#thirdparty/wayland-protocols/stable/viewporter/viewporter.xml"),
|
||||
generate_from_xml("xdg_shell", "#thirdparty/wayland-protocols/stable/xdg-shell/xdg-shell.xml"),
|
||||
# Staging protocols
|
||||
generate_from_xml("cursor_shape", "#thirdparty/wayland-protocols/staging/cursor-shape/cursor-shape-v1.xml"),
|
||||
generate_from_xml(
|
||||
"fractional_scale", "#thirdparty/wayland-protocols/staging/fractional-scale/fractional-scale-v1.xml"
|
||||
),
|
||||
generate_from_xml("xdg_activation", "#thirdparty/wayland-protocols/staging/xdg-activation/xdg-activation-v1.xml"),
|
||||
generate_from_xml(
|
||||
"xdg_system_bell", "#thirdparty/wayland-protocols/staging/xdg-system-bell/xdg-system-bell-v1.xml"
|
||||
),
|
||||
# Unstable protocols
|
||||
generate_from_xml(
|
||||
"idle_inhibit", "#thirdparty/wayland-protocols/unstable/idle-inhibit/idle-inhibit-unstable-v1.xml"
|
||||
),
|
||||
generate_from_xml(
|
||||
"pointer_constraints",
|
||||
"#thirdparty/wayland-protocols/unstable/pointer-constraints/pointer-constraints-unstable-v1.xml",
|
||||
),
|
||||
generate_from_xml(
|
||||
"pointer_gestures", "#thirdparty/wayland-protocols/unstable/pointer-gestures/pointer-gestures-unstable-v1.xml"
|
||||
),
|
||||
generate_from_xml(
|
||||
"primary_selection",
|
||||
"#thirdparty/wayland-protocols/unstable/primary-selection/primary-selection-unstable-v1.xml",
|
||||
),
|
||||
generate_from_xml(
|
||||
"relative_pointer", "#thirdparty/wayland-protocols/unstable/relative-pointer/relative-pointer-unstable-v1.xml"
|
||||
),
|
||||
generate_from_xml("text_input", "#thirdparty/wayland-protocols/unstable/text-input/text-input-unstable-v3.xml"),
|
||||
generate_from_xml(
|
||||
"xdg_decoration", "#thirdparty/wayland-protocols/unstable/xdg-decoration/xdg-decoration-unstable-v1.xml"
|
||||
),
|
||||
generate_from_xml(
|
||||
"xdg_foreign_v1", "#thirdparty/wayland-protocols/unstable/xdg-foreign/xdg-foreign-unstable-v1.xml"
|
||||
), # Note: deprecated
|
||||
generate_from_xml(
|
||||
"xdg_foreign_v2", "#thirdparty/wayland-protocols/unstable/xdg-foreign/xdg-foreign-unstable-v2.xml"
|
||||
),
|
||||
]
|
||||
|
||||
source_files = [
|
||||
"protocol/wayland.gen.c",
|
||||
"protocol/viewporter.gen.c",
|
||||
"protocol/cursor_shape.gen.c",
|
||||
"protocol/fractional_scale.gen.c",
|
||||
"protocol/xdg_shell.gen.c",
|
||||
"protocol/xdg_system_bell.gen.c",
|
||||
"protocol/xdg_foreign_v1.gen.c",
|
||||
"protocol/xdg_foreign_v2.gen.c",
|
||||
"protocol/xdg_decoration.gen.c",
|
||||
"protocol/xdg_activation.gen.c",
|
||||
"protocol/relative_pointer.gen.c",
|
||||
"protocol/pointer_constraints.gen.c",
|
||||
"protocol/pointer_gestures.gen.c",
|
||||
"protocol/primary_selection.gen.c",
|
||||
"protocol/idle_inhibit.gen.c",
|
||||
"protocol/tablet.gen.c",
|
||||
"protocol/text_input.gen.c",
|
||||
"display_server_wayland.cpp",
|
||||
"wayland_thread.cpp",
|
||||
"key_mapping_xkb.cpp",
|
||||
"detect_prime_egl.cpp",
|
||||
"display_server_wayland.cpp",
|
||||
"key_mapping_xkb.cpp",
|
||||
"wayland_thread.cpp",
|
||||
]
|
||||
|
||||
if env["use_sowrap"]:
|
||||
|
@ -207,8 +121,6 @@ if env["opengl3"]:
|
|||
source_files.append("egl_manager_wayland.cpp")
|
||||
source_files.append("egl_manager_wayland_gles.cpp")
|
||||
|
||||
objects = []
|
||||
|
||||
for source_file in source_files:
|
||||
objects.append(env.Object(source_file))
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue