summaryrefslogtreecommitdiffstats
path: root/recipes-graphics
diff options
context:
space:
mode:
authorTom Hochstein <tom.hochstein@nxp.com>2020-04-28 09:49:32 -0500
committerOtavio Salvador <otavio@ossystems.com.br>2020-04-29 20:04:40 -0300
commit809955bb21b0d65c881a5d5d4e559018e76b2d66 (patch)
tree6126a3afb5de3c92ddb19c812f7a33a277949ba2 /recipes-graphics
parentbaccf7c72ceb9cb438f300435a7f6d15a8dd6095 (diff)
downloadmeta-freescale-809955bb21b0d65c881a5d5d4e559018e76b2d66.tar.gz
weston: Restructure recipe for ease of maintanance
Structure the recipe into two sections, the top as a verbatim copy of the upstream recipe that is the basis, and the bottom for the i.MX customization. Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
Diffstat (limited to 'recipes-graphics')
-rw-r--r--recipes-graphics/wayland/weston_8.0.0.imx.bb91
1 files changed, 60 insertions, 31 deletions
diff --git a/recipes-graphics/wayland/weston_8.0.0.imx.bb b/recipes-graphics/wayland/weston_8.0.0.imx.bb
index 9ebb3317..aa0ea521 100644
--- a/recipes-graphics/wayland/weston_8.0.0.imx.bb
+++ b/recipes-graphics/wayland/weston_8.0.0.imx.bb
@@ -1,33 +1,31 @@
1SUMMARY = "Weston, a Wayland compositor, i.MX fork" 1# This recipe is for the i.MX fork of weston. For ease of
2# maintenance, the top section is a verbatim copy of an OE-core
3# recipe. The second section customizes the recipe for i.MX.
4
5########### OE-core copy ##################
6# Upstream hash: 9b1d30810eeecb46b977c8eed68be69aef891312
7
8SUMMARY = "Weston, a Wayland compositor"
2DESCRIPTION = "Weston is the reference implementation of a Wayland compositor" 9DESCRIPTION = "Weston is the reference implementation of a Wayland compositor"
3HOMEPAGE = "http://wayland.freedesktop.org" 10HOMEPAGE = "http://wayland.freedesktop.org"
4LICENSE = "MIT" 11LICENSE = "MIT"
5LIC_FILES_CHKSUM = "file://COPYING;md5=d79ee9e66bb0f95d3386a7acae780b70 \ 12LIC_FILES_CHKSUM = "file://COPYING;md5=d79ee9e66bb0f95d3386a7acae780b70 \
6 file://libweston/compositor.c;endline=27;md5=6c53bbbd99273f4f7c4affa855c33c0a" 13 file://libweston/compositor.c;endline=27;md5=6c53bbbd99273f4f7c4affa855c33c0a"
7 14
8DEFAULT_PREFERENCE = "-1" 15SRC_URI = "https://wayland.freedesktop.org/releases/${BPN}-${PV}.tar.xz \
9
10SRCBRANCH = "weston-imx-8.0"
11SRC_URI = "git://source.codeaurora.org/external/imx/weston-imx.git;protocol=https;branch=${SRCBRANCH} \
12 file://weston.png \ 16 file://weston.png \
13 file://weston.desktop \ 17 file://weston.desktop \
14 file://xwayland.weston-start \ 18 file://xwayland.weston-start \
15 file://0001-weston-launch-Provide-a-default-version-that-doesn-t.patch \ 19 file://0001-weston-launch-Provide-a-default-version-that-doesn-t.patch \
16" 20"
17SRCREV = "f6a7d35650121fbe7c20d4cbe0eaac730fab3b2a" 21SRC_URI[md5sum] = "53e4810d852df0601d01fd986a5b22b3"
18S = "${WORKDIR}/git" 22SRC_URI[sha256sum] = "7518b49b2eaa1c3091f24671bdcc124fd49fc8f1af51161927afa4329c027848"
19 23
20UPSTREAM_CHECK_URI = "https://wayland.freedesktop.org/releases.html" 24UPSTREAM_CHECK_URI = "https://wayland.freedesktop.org/releases.html"
21 25
22inherit meson pkgconfig useradd features_check 26inherit meson pkgconfig useradd features_check
23 27# depends on virtual/egl
24# Disable OpenGL for parts with GPU support for 2D but not 3D 28REQUIRED_DISTRO_FEATURES = "opengl"
25REQUIRED_DISTRO_FEATURES = "opengl"
26REQUIRED_DISTRO_FEATURES_imxgpu2d = ""
27REQUIRED_DISTRO_FEATURES_imxgpu3d = "opengl"
28PACKAGECONFIG_OPENGL = "opengl"
29PACKAGECONFIG_OPENGL_imxgpu2d = ""
30PACKAGECONFIG_OPENGL_imxgpu3d = "opengl"
31 29
32DEPENDS = "libxkbcommon gdk-pixbuf pixman cairo glib-2.0 jpeg" 30DEPENDS = "libxkbcommon gdk-pixbuf pixman cairo glib-2.0 jpeg"
33DEPENDS += "wayland wayland-protocols libinput virtual/egl pango wayland-native" 31DEPENDS += "wayland wayland-protocols libinput virtual/egl pango wayland-native"
@@ -39,14 +37,8 @@ EXTRA_OEMESON += "-Dbackend-default=auto -Dbackend-rdp=false -Dpipewire=false"
39PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'kms fbdev wayland egl clients', '', d)} \ 37PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'kms fbdev wayland egl clients', '', d)} \
40 ${@bb.utils.contains('DISTRO_FEATURES', 'x11 wayland', 'xwayland', '', d)} \ 38 ${@bb.utils.contains('DISTRO_FEATURES', 'x11 wayland', 'xwayland', '', d)} \
41 ${@bb.utils.filter('DISTRO_FEATURES', 'pam systemd x11', d)} \ 39 ${@bb.utils.filter('DISTRO_FEATURES', 'pam systemd x11', d)} \
42 ${@bb.utils.filter('DISTRO_FEATURES', '${PACKAGECONFIG_OPENGL}', d)} \
43 ${@bb.utils.contains_any('DISTRO_FEATURES', 'wayland x11', '', 'headless', d)} \ 40 ${@bb.utils.contains_any('DISTRO_FEATURES', 'wayland x11', '', 'headless', d)} \
44 launch" 41 launch"
45
46PACKAGECONFIG_remove_imxfbdev = "kms"
47PACKAGECONFIG_append_imxfbdev = " fbdev"
48PACKAGECONFIG_append_imxgpu = " imxgpu"
49PACKAGECONFIG_append_imxgpu2d = " imxg2d"
50# 42#
51# Compositor choices 43# Compositor choices
52# 44#
@@ -82,12 +74,6 @@ PACKAGECONFIG[clients] = "-Dsimple-clients=all -Ddemo-clients=true,-Dsimple-clie
82PACKAGECONFIG[remoting] = "-Dremoting=true,-Dremoting=false,gstreamer-1.0" 74PACKAGECONFIG[remoting] = "-Dremoting=true,-Dremoting=false,gstreamer-1.0"
83# Weston with PAM support 75# Weston with PAM support
84PACKAGECONFIG[pam] = "-Dpam=true,-Dpam=false,libpam" 76PACKAGECONFIG[pam] = "-Dpam=true,-Dpam=false,libpam"
85# Weston with i.MX GPU support
86PACKAGECONFIG[imxgpu] = "-Dimxgpu=true,-Dimxgpu=false,virtual/egl"
87# Weston with i.MX G2D renderer
88PACKAGECONFIG[imxg2d] = "-Drenderer-g2d=true,-Drenderer-g2d=false,virtual/libg2d"
89# Weston with OpenGL support
90PACKAGECONFIG[opengl] = "-Dopengl=true,--Dopengl=false"
91 77
92do_install_append() { 78do_install_append() {
93 # Weston doesn't need the .la files to load modules, so wipe them 79 # Weston doesn't need the .la files to load modules, so wipe them
@@ -106,9 +92,9 @@ do_install_append() {
106 install -Dm 644 ${WORKDIR}/xwayland.weston-start ${D}${datadir}/weston-start/xwayland 92 install -Dm 644 ${WORKDIR}/xwayland.weston-start ${D}${datadir}/weston-start/xwayland
107 fi 93 fi
108 94
109 if [ "${@bb.utils.contains('PACKAGECONFIG', 'launch', 'yes', 'no', d)}" = "yes" ]; then 95 if [ "${@bb.utils.contains('PACKAGECONFIG', 'launch', 'yes', 'no', d)}" = "yes" ]; then
110 chmod u+s ${D}${bindir}/weston-launch 96 chmod u+s ${D}${bindir}/weston-launch
111 fi 97 fi
112} 98}
113 99
114PACKAGES += "${@bb.utils.contains('PACKAGECONFIG', 'xwayland', '${PN}-xwayland', '', d)} \ 100PACKAGES += "${@bb.utils.contains('PACKAGECONFIG', 'xwayland', '${PN}-xwayland', '', d)} \
@@ -116,7 +102,6 @@ PACKAGES += "${@bb.utils.contains('PACKAGECONFIG', 'xwayland', '${PN}-xwayland',
116 102
117FILES_${PN}-dev += "${libdir}/${BPN}/libexec_weston.so" 103FILES_${PN}-dev += "${libdir}/${BPN}/libexec_weston.so"
118FILES_${PN} = "${bindir}/weston ${bindir}/weston-terminal ${bindir}/weston-info ${bindir}/weston-launch ${bindir}/wcap-decode ${libexecdir} ${libdir}/${BPN}/*.so* ${datadir}" 104FILES_${PN} = "${bindir}/weston ${bindir}/weston-terminal ${bindir}/weston-info ${bindir}/weston-launch ${bindir}/wcap-decode ${libexecdir} ${libdir}/${BPN}/*.so* ${datadir}"
119FILES_${PN}_append = " ${sysconfdir}/xdg/weston"
120 105
121FILES_libweston-${WESTON_MAJOR_VERSION} = "${libdir}/lib*${SOLIBS} ${libdir}/libweston-${WESTON_MAJOR_VERSION}/*.so" 106FILES_libweston-${WESTON_MAJOR_VERSION} = "${libdir}/lib*${SOLIBS} ${libdir}/libweston-${WESTON_MAJOR_VERSION}/*.so"
122SUMMARY_libweston-${WESTON_MAJOR_VERSION} = "Helper library for implementing 'wayland window managers'." 107SUMMARY_libweston-${WESTON_MAJOR_VERSION} = "Helper library for implementing 'wayland window managers'."
@@ -133,5 +118,49 @@ RRECOMMENDS_${PN}-dev += "wayland-protocols"
133USERADD_PACKAGES = "${PN}" 118USERADD_PACKAGES = "${PN}"
134GROUPADD_PARAM_${PN} = "--system weston-launch" 119GROUPADD_PARAM_${PN} = "--system weston-launch"
135 120
121########### End of OE-core copy ###########
122
123########### i.MX overrides ################
124
125SUMMARY = "Weston, a Wayland compositor, i.MX fork"
126
127DEFAULT_PREFERENCE = "-1"
128
129SRCBRANCH = "weston-imx-8.0"
130SRC_URI = "git://source.codeaurora.org/external/imx/weston-imx.git;protocol=https;branch=${SRCBRANCH} \
131 file://weston.png \
132 file://weston.desktop \
133 file://xwayland.weston-start \
134 file://0001-weston-launch-Provide-a-default-version-that-doesn-t.patch \
135"
136SRCREV = "f6a7d35650121fbe7c20d4cbe0eaac730fab3b2a"
137S = "${WORKDIR}/git"
138
139# Disable OpenGL for parts with GPU support for 2D but not 3D
140REQUIRED_DISTRO_FEATURES = "opengl"
141REQUIRED_DISTRO_FEATURES_imxgpu2d = ""
142REQUIRED_DISTRO_FEATURES_imxgpu3d = "opengl"
143PACKAGECONFIG_OPENGL = "opengl"
144PACKAGECONFIG_OPENGL_imxgpu2d = ""
145PACKAGECONFIG_OPENGL_imxgpu3d = "opengl"
146
147PACKAGECONFIG_append = " ${@bb.utils.filter('DISTRO_FEATURES', '${PACKAGECONFIG_OPENGL}', d)}"
148
149PACKAGECONFIG_remove_imxfbdev = "kms"
150PACKAGECONFIG_append_imxfbdev = " fbdev"
151PACKAGECONFIG_append_imxgpu = " imxgpu"
152PACKAGECONFIG_append_imxgpu2d = " imxg2d"
153
154# Weston with i.MX GPU support
155PACKAGECONFIG[imxgpu] = "-Dimxgpu=true,-Dimxgpu=false,virtual/egl"
156# Weston with i.MX G2D renderer
157PACKAGECONFIG[imxg2d] = "-Drenderer-g2d=true,-Drenderer-g2d=false,virtual/libg2d"
158# Weston with OpenGL support
159PACKAGECONFIG[opengl] = "-Dopengl=true,--Dopengl=false"
160
161FILES_${PN}_append = " ${sysconfdir}/xdg/weston"
162
136PACKAGE_ARCH = "${MACHINE_SOCARCH}" 163PACKAGE_ARCH = "${MACHINE_SOCARCH}"
137COMPATIBLE_MACHINE = "(imxfbdev|imxgpu)" 164COMPATIBLE_MACHINE = "(imxfbdev|imxgpu)"
165
166########### End of i.MX overrides #########