blob: c7f91f0db61a7065ec74d0087c40afb68c294e5d [file] [log] [blame]
Andrew Geissler82c905d2020-04-13 13:39:40 -05001SUMMARY = "Window and compositing manager based on Clutter"
2LICENSE = "GPLv2"
3LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
4
5DEPENDS = " \
6 xserver-xorg-cvt-native \
7 virtual/libx11 \
8 gtk+3 \
9 gdk-pixbuf \
10 cairo \
11 pango \
12 gsettings-desktop-schemas \
13 json-glib \
14 gnome-desktop3 \
15 gnome-settings-daemon \
16 libxtst \
17 libxkbfile \
18 xinerama \
19"
20
21GNOMEBASEBUILDCLASS = "meson"
22
23inherit gnomebase gsettings gobject-introspection gettext upstream-version-is-even features_check
24
Andrew Geisslere231d582020-05-05 08:53:09 -050025SRC_URI[archive.md5sum] = "20913c458406e6efa3df005a3ce48c8e"
26SRC_URI[archive.sha256sum] = "23bde87d33b8981358831cec8915bb5ff1eaf9c1de74c90cd1660b1b95883526"
Andrew Geissler82c905d2020-04-13 13:39:40 -050027SRC_URI += "file://0001-EGL-Include-EGL-eglmesaext.h.patch"
28
29# x11 is still manadatory - see meson.build
William A. Kennington IIIb95905d2021-06-02 12:40:56 -070030REQUIRED_DISTRO_FEATURES = "x11 polkit"
Andrew Geissler82c905d2020-04-13 13:39:40 -050031
32# systemd can be replaced by libelogind (not available atow - make systemd
33# mandatory distro feature)
34LOGIND ?= "systemd"
35REQUIRED_DISTRO_FEATURES += "systemd"
36
37# profiler requires sysprof 3.34 which is not willing to build atow
38PACKAGECONFIG ??= " \
39 native-backend \
40 ${@bb.utils.contains('DISTRO_FEATURES', 'opengl x11', 'opengl glx', '', d)} \
41 sm \
42 startup-notification \
43 ${@bb.utils.contains('DISTRO_FEATURES', 'opengl wayland', 'wayland', '', d)} \
44"
45
46EXTRA_OEMESON += " \
47 -Dxwayland_path=${bindir}/Xwayland \
48"
49
50# combi-config - see meson_options.txt for more details
51PACKAGECONFIG[native-backend] = "-Dnative_backend=true -Dudev=true, -Dnative_backend=false -Dudev=false, libdrm virtual/libgbm libinput ${LOGIND} virtual/egl virtual/libgles2 udev"
52PACKAGECONFIG[opengl] = "-Dopengl=true, -Dopengl=true, virtual/libgl"
53PACKAGECONFIG[glx] = "-Dglx=true, -Dglx=false"
54PACKAGECONFIG[libwacom] = "-Dlibwacom=true, -Dlibwacom=false, libwacom"
Andrew Geisslerd688a012020-09-18 13:36:00 -050055# Remove depending on pipewire-0.2 when mutter is upgraded to 3.36+
Andrew Geissler82c905d2020-04-13 13:39:40 -050056PACKAGECONFIG[remote-desktop] = "-Dremote_desktop=true, -Dremote_desktop=false, pipewire-0.2"
57PACKAGECONFIG[sm] = "-Dsm=true, -Dsm=false, libsm"
58PACKAGECONFIG[profiler] = "-Dprofiler=true,-Dprofiler=false,sysprof"
59PACKAGECONFIG[startup-notification] = "-Dstartup_notification=true, -Dstartup_notification=false, startup-notification, startup-notification"
Andrew Geisslerf103a7f2021-05-07 16:09:40 -050060PACKAGECONFIG[wayland] = "-Dwayland=true,-Dwayland=false,wayland wayland-native, xwayland"
Andrew Geissler82c905d2020-04-13 13:39:40 -050061PACKAGECONFIG[wayland-eglstream] = "-Dwayland_eglstream=true,-Dwayland_eglstream=false"
62
63# yes they changed from mutter-4 -> mutter-5 recently so be perpared
64MUTTER_API_NAME = "mutter-5"
65
66do_install_append() {
67 # Add gir links in standard paths. That makes dependents life much easier
68 # to find them
69 install -d ${D}${datadir}/gir-1.0
70 for gir_full in `find ${D}${libdir}/${MUTTER_API_NAME} -name '*.gir'`; do
71 gir=`basename "$gir_full"`
72 ln -sr "${D}${libdir}/${MUTTER_API_NAME}/$gir" "${D}${datadir}/gir-1.0/$gir"
73 done
74}
75
76PACKAGES =+ "${PN}-tests"
77
78FILES_${PN} += " \
79 ${datadir}/gnome-control-center \
80 ${libdir}/${MUTTER_API_NAME}/lib*${SOLIBS} \
81 ${libdir}/${MUTTER_API_NAME}/*.typelib \
82 ${libdir}/${MUTTER_API_NAME}/plugins \
83"
84
85FILES_${PN}-tests += " \
86 ${datadir}/installed-tests \
87 ${datadir}/${MUTTER_API_NAME}/tests \
88 ${libexecdir}/installed-tests/${MUTTER_API_NAME} \
89"
90
91FILES_${PN}-dev += " \
92 ${libdir}/${MUTTER_API_NAME}/*.gir \
93 ${libdir}/${MUTTER_API_NAME}/lib*.so \
94"
95
96RDEPENDS_${PN} += "zenity"
97