# -*-makefile-*- # # Copyright (C) 2013 by Philipp Zabel # 2014 by Michael Olbrich # # For further information about the PTXdist project and license conditions # see the README file. # # # We provide this package # PACKAGES-$(PTXCONF_WESTON) += weston # # Paths and names # WESTON_VERSION := 9.0.0 LIBWESTON_MAJOR := 9 WESTON_MD5 := b406da0fe9139fd39653238fde22a6cf WESTON := weston-$(WESTON_VERSION) WESTON_SUFFIX := tar.xz WESTON_URL := http://wayland.freedesktop.org/releases/$(WESTON).$(WESTON_SUFFIX) WESTON_SOURCE := $(SRCDIR)/$(WESTON).$(WESTON_SUFFIX) WESTON_DIR := $(BUILDDIR)/$(WESTON) WESTON_LICENSE := MIT # ---------------------------------------------------------------------------- # Prepare # ---------------------------------------------------------------------------- WESTON_SIMPLE_CLIENTS-y := damage im shm touch WESTON_SIMPLE_CLIENTS-$(PTXCONF_WESTON_GL) += egl dmabuf-egl WESTON_CONF_TOOL := meson WESTON_CONF_OPT := \ $(CROSS_MESON_USR) \ -Dbackend-default=drm \ -Dbackend-drm=$(call ptx/truefalse,PTXCONF_WESTON_DRM_COMPOSITOR) \ -Dbackend-drm-screencast-vaapi=false \ -Dbackend-fbdev=$(call ptx/truefalse,PTXCONF_WESTON_FBDEV_COMPOSITOR) \ -Dbackend-headless=$(call ptx/truefalse,PTXCONF_WESTON_HEADLESS_COMPOSITOR) \ -Dbackend-rdp=false \ -Dbackend-wayland=$(call ptx/truefalse,PTXCONF_WESTON_GL) \ -Dbackend-x11=false \ -Dcolor-management-colord=false \ -Dcolor-management-lcms=false \ -Ddemo-clients=$(call ptx/truefalse,PTXCONF_WESTON_IVISHELL_EXAMPLE) \ -Ddesktop-shell-client-default=weston-desktop-shell \ -Ddoc=false \ -Dimage-jpeg=true \ -Dimage-webp=false \ -Dlauncher-logind=$(call ptx/truefalse,PTXCONF_WESTON_SYSTEMD_LOGIND) \ -Dpipewire=$(call ptx/truefalse,PTXCONF_WESTON_PIPEWIRE) \ -Dremoting=$(call ptx/truefalse,PTXCONF_WESTON_REMOTING) \ -Drenderer-gl=$(call ptx/truefalse,PTXCONF_WESTON_GL) \ -Dresize-pool=true \ -Dscreenshare=false \ -Dshell-desktop=true \ -Dshell-fullscreen=true \ -Dshell-ivi=$(call ptx/truefalse,PTXCONF_WESTON_IVISHELL) \ -Dshell-kiosk=$(call ptx/truefalse,PTXCONF_WESTON_SHELL_KIOSK) \ -Dsimple-clients=$(subst $(space),$(comma),$(WESTON_SIMPLE_CLIENTS-y)) \ -Dsystemd=$(call ptx/truefalse,PTXCONF_WESTON_SYSTEMD) \ -Dtest-gl-renderer=false \ -Dtest-junit-xml=false \ -Dtools=calibrator,debug,info,terminal,touch-calibrator \ -Dwcap-decode=$(call ptx/truefalse,PTXCONF_WESTON_WCAP_TOOLS) \ -Dweston-launch=$(call ptx/truefalse,PTXCONF_WESTON_LAUNCH) \ -Dxwayland=$(call ptx/truefalse,PTXCONF_WESTON_XWAYLAND) \ -Dxwayland-path=/usr/bin/Xwayland # ---------------------------------------------------------------------------- # Install # ---------------------------------------------------------------------------- $(STATEDIR)/weston.install: @$(call targetinfo) @$(call world/install, WESTON) @mkdir -p $(WESTON_PKGDIR)/etc/xdg/weston ifndef PTXCONF_WESTON_IVISHELL_EXAMPLE @bindir="/usr/bin" \ abs_top_builddir="/usr/bin" \ libexecdir="/usr/libexec" \ ptxd_replace_magic "$(WESTON_DIR)/weston.ini.in" > \ "$(WESTON_PKGDIR)/etc/xdg/weston/weston.ini" else @bindir="/usr/bin" \ westondatadir="/usr/share/weston" \ ptxd_replace_magic "$(WESTON_DIR)/ivi-shell/weston.ini.in" > \ "$(WESTON_PKGDIR)/etc/xdg/weston/weston.ini" endif @$(call touch) # ---------------------------------------------------------------------------- # Target-Install # ---------------------------------------------------------------------------- $(STATEDIR)/weston.targetinstall: @$(call targetinfo) @$(call install_init, weston) @$(call install_fixup, weston,PRIORITY,optional) @$(call install_fixup, weston,SECTION,base) @$(call install_fixup, weston,AUTHOR,"Philipp Zabel ") @$(call install_fixup, weston,DESCRIPTION,"wayland reference compositor implementation") @$(call install_copy, weston, 0, 0, 0755, -, /usr/bin/weston) @$(call install_copy, weston, 0, 0, 0755, -, /usr/bin/weston-info) @$(call install_copy, weston, 0, 0, 0755, -, /usr/bin/weston-debug) ifdef PTXCONF_WESTON_LAUNCH @$(call install_copy, weston, 0, 0, 0755, -, /usr/bin/weston-launch) endif @$(call install_copy, weston, 0, 0, 0755, -, /usr/bin/weston-screenshooter) ifdef PTXCONF_WESTON_SIMPLE_CLIENTS @$(call install_copy, weston, 0, 0, 0755, -, /usr/bin/weston-simple-damage) ifdef PTXCONF_WESTON_GL @$(call install_copy, weston, 0, 0, 0755, -, /usr/bin/weston-simple-egl) @$(call install_copy, weston, 0, 0, 0755, -, /usr/bin/weston-simple-dmabuf-egl) endif @$(call install_copy, weston, 0, 0, 0755, -, /usr/bin/weston-simple-shm) @$(call install_copy, weston, 0, 0, 0755, -, /usr/bin/weston-simple-touch) endif @$(call install_copy, weston, 0, 0, 0755, -, /usr/bin/weston-terminal) ifdef PTXCONF_WESTON_TOUCH_CALIBRATOR @$(call install_copy, weston, 0, 0, 0755, -, /usr/bin/weston-touch-calibrator) endif ifdef PTXCONF_WESTON_WCAP_TOOLS @$(call install_copy, weston, 0, 0, 0755, -, /usr/bin/wcap-decode) endif @$(call install_lib, weston, 0, 0, 0644, libweston-$(LIBWESTON_MAJOR)) @$(call install_lib, weston, 0, 0, 0644, libweston-desktop-$(LIBWESTON_MAJOR)) ifdef PTXCONF_WESTON_XWAYLAND @$(call install_lib, weston, 0, 0, 0644, libweston-$(LIBWESTON_MAJOR)/xwayland) endif ifdef PTXCONF_WESTON_DRM_COMPOSITOR @$(call install_lib, weston, 0, 0, 0644, libweston-$(LIBWESTON_MAJOR)/drm-backend) endif ifdef PTXCONF_WESTON_HEADLESS_COMPOSITOR @$(call install_lib, weston, 0, 0, 0644, libweston-$(LIBWESTON_MAJOR)/headless-backend) endif ifdef PTXCONF_WESTON_FBDEV_COMPOSITOR @$(call install_lib, weston, 0, 0, 0644, libweston-$(LIBWESTON_MAJOR)/fbdev-backend) endif ifdef PTXCONF_WESTON_GL @$(call install_lib, weston, 0, 0, 0644, libweston-$(LIBWESTON_MAJOR)/wayland-backend) @$(call install_lib, weston, 0, 0, 0644, libweston-$(LIBWESTON_MAJOR)/gl-renderer) endif ifdef PTXCONF_WESTON_PIPEWIRE @$(call install_lib, weston, 0, 0, 0644, libweston-$(LIBWESTON_MAJOR)/pipewire-plugin) endif ifdef PTXCONF_WESTON_REMOTING @$(call install_lib, weston, 0, 0, 0644, libweston-$(LIBWESTON_MAJOR)/remoting-plugin) endif @$(call install_lib, weston, 0, 0, 0644, weston/desktop-shell) @$(call install_lib, weston, 0, 0, 0644, weston/fullscreen-shell) ifdef PTXCONF_WESTON_IVISHELL @$(call install_lib, weston, 0, 0, 0644, weston/ivi-shell) endif ifdef PTXCONF_WESTON_SYSTEMD @$(call install_lib, weston, 0, 0, 0644, weston/systemd-notify) endif @$(call install_lib, weston, 0, 0, 0644, weston/libexec_weston) ifdef PTXCONF_WESTON_STARTSCRIPT @$(call install_alternative, weston, 0, 0, 0755, /etc/init.d/weston-init) ifneq ($(call remove_quotes,$(PTXCONF_WESTON_BBINIT_LINK)),) @$(call install_link, weston, \ ../init.d/weston-init, \ /etc/rc.d/$(PTXCONF_WESTON_BBINIT_LINK)) endif endif @$(call install_copy, weston, 0, 0, 0755, -, /usr/libexec/weston-simple-im) @$(call install_copy, weston, 0, 0, 0755, -, /usr/libexec/weston-desktop-shell) @$(call install_copy, weston, 0, 0, 0755, -, /usr/libexec/weston-keyboard) @$(foreach image, \ border.png \ icon_window.png \ pattern.png \ sign_close.png \ sign_maximize.png \ sign_minimize.png \ terminal.png \ wayland.png \ wayland.svg, \ $(call install_copy, weston, 0, 0, 0644, -, /usr/share/weston/$(image))$(ptx/nl)) ifdef PTXCONF_WESTON_INSTALL_CONFIG @$(call install_alternative, weston, 0, 0, 0644, /etc/xdg/weston/weston.ini) endif ifdef PTXCONF_WESTON_IVISHELL_EXAMPLE @$(call install_lib, weston, 0, 0, 0644, weston/hmi-controller) @$(call install_copy, weston, 0, 0, 0755, -, /usr/libexec/weston-ivi-shell-user-interface) @$(foreach image, \ background.png \ fullscreen.png \ home.png \ icon_ivi_clickdot.png \ icon_ivi_flower.png \ icon_ivi_simple-egl.png \ icon_ivi_simple-shm.png \ icon_ivi_smoke.png \ panel.png \ random.png \ sidebyside.png \ tiling.png, \ $(call install_copy, weston, 0, 0, 0644, -, /usr/share/weston/$(image))$(ptx/nl)) @$(call install_copy, weston, 0, 0, 0755, -, /usr/bin/weston-clickdot) @$(call install_copy, weston, 0, 0, 0755, -, /usr/bin/weston-flower) ifdef PTXCONF_WESTON_GL @$(call install_copy, weston, 0, 0, 0755, -, /usr/bin/weston-simple-egl) endif @$(call install_copy, weston, 0, 0, 0755, -, /usr/bin/weston-simple-shm) @$(call install_copy, weston, 0, 0, 0755, -, /usr/bin/weston-smoke) endif @$(call install_finish, weston) @$(call touch) # vim: syntax=make