From cdacf0918e784f6dd3bd82659b23d6deaaef7766 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B8rgen=20Lind?= Date: Mon, 12 Dec 2011 12:55:23 +0100 Subject: Add a wayland-scanner rule to qmake Change-Id: I142ca2ba2a817745b818d2740d9ae8e0eaf3b797 Reviewed-by: Marius Storm-Olsen --- mkspecs/common/linux.conf | 1 + mkspecs/features/unix/default_pre.prf | 4 ++++ mkspecs/features/wayland-scanner.prf | 32 ++++++++++++++++++++++++++++++++ 3 files changed, 37 insertions(+) create mode 100644 mkspecs/features/unix/default_pre.prf create mode 100644 mkspecs/features/wayland-scanner.prf diff --git a/mkspecs/common/linux.conf b/mkspecs/common/linux.conf index d60533e923..de28ec7d1f 100644 --- a/mkspecs/common/linux.conf +++ b/mkspecs/common/linux.conf @@ -40,6 +40,7 @@ QMAKE_INCDIR_WAYLAND = QMAKE_LIBS_WAYLAND = QMAKE_LIBDIR_WAYLAND = QMAKE_DEFINES_WAYLAND = +QMAKE_WAYLAND_SCANNER = wayland-scanner QMAKE_MOC = $$[QT_INSTALL_BINS]/moc QMAKE_UIC = $$[QT_INSTALL_BINS]/uic diff --git a/mkspecs/features/unix/default_pre.prf b/mkspecs/features/unix/default_pre.prf new file mode 100644 index 0000000000..d978d14166 --- /dev/null +++ b/mkspecs/features/unix/default_pre.prf @@ -0,0 +1,4 @@ +linux*:CONFIG = wayland-scanner $$CONFIG + +load(default_pre) + diff --git a/mkspecs/features/wayland-scanner.prf b/mkspecs/features/wayland-scanner.prf new file mode 100644 index 0000000000..90e1e0f953 --- /dev/null +++ b/mkspecs/features/wayland-scanner.prf @@ -0,0 +1,32 @@ +# +# Wayland-scanner extra-compiler for handling files specified in the WAYLANDSOURCES variable +# + +isEmpty(QMAKE_WAYLAND_SCANNER):error("QMAKE_WAYLAND_SCANNER not defined for this mkspec") + +wayland-server-header.name = wayland ${QMAKE_FILE_BASE} +wayland-server-header.input = WAYLANDSOURCES +wayland-server-header.variable_out = HEADERS +wayland-server-header.output = wayland-${QMAKE_FILE_BASE}-server-protocol$${first(QMAKE_EXT_H)} +wayland-server-header.commands = $$QMAKE_WAYLAND_SCANNER server-header < ${QMAKE_FILE_IN} > ${QMAKE_FILE_OUT} + +silent:wayland-server-header.commands = @echo Wayland server header ${QMAKE_FILE_IN} && $$wayland-server-header.commands +QMAKE_EXTRA_COMPILERS += wayland-server-header + +wayland-client-header.name = wayland ${QMAKE_FILE_BASE} +wayland-client-header.input = WAYLANDSOURCES +wayland-client-header.variable_out = HEADERS +wayland-client-header.output = wayland-${QMAKE_FILE_BASE}-client-protocol$${first(QMAKE_EXT_H)} +wayland-client-header.commands = $$QMAKE_WAYLAND_SCANNER client-header < ${QMAKE_FILE_IN} > ${QMAKE_FILE_OUT} + +silent:wayland-client-header.commands = @echo Wayland client header ${QMAKE_FILE_IN} && $$wayland-client-header.commands +QMAKE_EXTRA_COMPILERS += wayland-client-header + +wayland-code.name = wayland ${QMAKE_FILE_BASE} +wayland-code.input = WAYLANDSOURCES +wayland-code.variable_out = SOURCES +wayland-code.output = wayland-${QMAKE_FILE_BASE}-protocol.c +wayland-code.commands = $$QMAKE_WAYLAND_SCANNER code < ${QMAKE_FILE_IN} > ${QMAKE_FILE_OUT} + +silent:wayland-code.commands = @echo Wayland code header ${QMAKE_FILE_IN} && $$wayland-code.commands +QMAKE_EXTRA_COMPILERS += wayland-code -- cgit v1.2.3