From 427e5d61b7b33c8a4cb8da14c1e465244e53cd88 Mon Sep 17 00:00:00 2001 From: Robert Griebl Date: Thu, 17 May 2018 12:58:53 +0200 Subject: Add support for building QtWayland on macOS Change-Id: Ibed63a01abf32e10a31c610996ae93d3bd9ce153 Reviewed-by: Oswald Buddenhagen Reviewed-by: Paul Olav Tvete --- mkspecs/common/mac.conf | 7 +++++++ mkspecs/features/wayland-scanner.prf | 25 ++++++++++++++++--------- 2 files changed, 23 insertions(+), 9 deletions(-) (limited to 'mkspecs') diff --git a/mkspecs/common/mac.conf b/mkspecs/common/mac.conf index 5208379f9a..d5e559ee12 100644 --- a/mkspecs/common/mac.conf +++ b/mkspecs/common/mac.conf @@ -33,6 +33,13 @@ QMAKE_LIBS_DYNLOAD = QMAKE_LIBS_OPENGL = -framework OpenGL -framework AGL QMAKE_LIBS_THREAD = +QMAKE_INCDIR_WAYLAND = +QMAKE_LIBS_WAYLAND_CLIENT = -lwayland-client +QMAKE_LIBS_WAYLAND_SERVER = -lwayland-server +QMAKE_LIBDIR_WAYLAND = +QMAKE_DEFINES_WAYLAND = +QMAKE_WAYLAND_SCANNER = wayland-scanner + QMAKE_ACTOOL = actool QMAKE_DSYMUTIL = dsymutil diff --git a/mkspecs/features/wayland-scanner.prf b/mkspecs/features/wayland-scanner.prf index 9166ae7750..4b8e2ef76e 100644 --- a/mkspecs/features/wayland-scanner.prf +++ b/mkspecs/features/wayland-scanner.prf @@ -34,25 +34,32 @@ defineReplace(waylandScannerHeaderFiles) { return($$wayland_header_files_for_side) } -qt_install_headers { +# 1) if we are a module, we need to create the headers in our private inc dir in qtbase +# 2) if also qt_install_headers is set, we need to generate INSTALLS rules in addition +# 3) if we are not a module, we just generate the headers in the current directory +!isEmpty(MODULE) { header_dest = $$MODULE_BASE_OUTDIR/include/$$MODULE_INCNAME/$$VERSION/$$MODULE_INCNAME/private header_files_client = $$waylandScannerHeaderFiles(client, $$header_dest) !isEmpty(header_files_client) { - wayland_generated_client_headers.files = $$header_files_client - wayland_generated_client_headers.path = $$private_headers.path - wayland_generated_client_headers.CONFIG = no_check_exist - INSTALLS += wayland_generated_client_headers + qt_install_headers { + wayland_generated_client_headers.files = $$header_files_client + wayland_generated_client_headers.path = $$private_headers.path + wayland_generated_client_headers.CONFIG = no_check_exist + INSTALLS += wayland_generated_client_headers + } WAYLAND_CLIENT_HEADER_DEST = $$header_dest/ WAYLAND_CLIENT_INCLUDE_DIR = $$MODULE_INCNAME/private } header_files_server = $$waylandScannerHeaderFiles(server, $$header_dest) !isEmpty(header_files_server) { - wayland_generated_server_headers.files = $$header_files_server - wayland_generated_server_headers.path = $$private_headers.path - wayland_generated_server_headers.CONFIG = no_check_exist - INSTALLS += wayland_generated_server_headers + qt_install_headers { + wayland_generated_server_headers.files = $$header_files_server + wayland_generated_server_headers.path = $$private_headers.path + wayland_generated_server_headers.CONFIG = no_check_exist + INSTALLS += wayland_generated_server_headers + } WAYLAND_SERVER_HEADER_DEST = $$header_dest/ WAYLAND_SERVER_INCLUDE_DIR = $$MODULE_INCNAME/private } -- cgit v1.2.3