1 SUMMARY = "Configuration file for the Weston and AGL Wayland compositors"
3 LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302"
8 file://hdmi-a-1-0.cfg \
9 file://hdmi-a-1-90.cfg \
10 file://hdmi-a-1-180.cfg \
11 file://hdmi-a-1-270.cfg \
12 file://hdmi-a-2-0.cfg \
13 file://hdmi-a-2-90.cfg \
14 file://hdmi-a-2-180.cfg \
15 file://hdmi-a-2-270.cfg \
16 file://virtual-0.cfg \
17 file://virtual-90.cfg \
18 file://virtual-180.cfg \
19 file://virtual-270.cfg \
20 file://grpc-proxy.cfg \
25 inherit update-alternatives
27 # Default primary display/orientation fragment
28 WESTON_DISPLAYS ?= "hdmi-a-1-90"
30 # Configuration fragments to use in weston.ini.*
31 # Note that some may be replaced/removed when building the landscape
33 WESTON_FRAGMENTS = "core shell grpc-proxy ${WESTON_DISPLAYS}"
35 # On-target weston.ini directory
36 weston_ini_dir = "${sysconfdir}/xdg/weston"
39 # Put all of our cfg files together for a default portrait
40 # orientation configuration
41 rm -f ${WORKDIR}/weston.ini.default
42 for F in ${WESTON_FRAGMENTS}; do
43 cat ${WORKDIR}/${F}.cfg >> ${WORKDIR}/weston.ini.default
44 echo >> ${WORKDIR}/weston.ini.default
46 sed -i -e '$ d' ${WORKDIR}/weston.ini.default
48 cat ${WORKDIR}/weston.ini.default > ${WORKDIR}/weston.ini.default-no-activate
50 # Do it again, but filter fragments to configure for landscape
51 # and a corresponding landscape-inverted that is 180 degrees
53 rm -f ${WORKDIR}/weston.ini.landscape
54 rm -f ${WORKDIR}/weston.ini.landscape-inverted
55 for F in ${WESTON_FRAGMENTS}; do
57 if echo $F | grep '^hdmi-a-1-\(90\|270\)$'; then
60 elif echo $F | grep '^hdmi-a-2-\(90\|270\)$'; then
63 elif echo $F | grep '^virtual-90$'; then
67 cat ${WORKDIR}/${F}.cfg >> ${WORKDIR}/weston.ini.landscape
68 cat ${WORKDIR}/${INVF}.cfg >> ${WORKDIR}/weston.ini.landscape-inverted
69 echo >> ${WORKDIR}/weston.ini.landscape
70 echo >> ${WORKDIR}/weston.ini.landscape-inverted
72 sed -i -e '$ d' ${WORKDIR}/weston.ini.landscape
73 sed -i -e '$ d' ${WORKDIR}/weston.ini.landscape-inverted
75 cat ${WORKDIR}/weston.ini.landscape > ${WORKDIR}/weston.ini.landscape-no-activate
79 install -d ${D}${weston_ini_dir}
80 install -m 0644 ${WORKDIR}/weston.ini.default ${D}${weston_ini_dir}/
81 install -m 0644 ${WORKDIR}/weston.ini.default-no-activate ${D}${weston_ini_dir}/
82 install -m 0644 ${WORKDIR}/weston.ini.landscape-no-activate ${D}${weston_ini_dir}/
83 install -m 0644 ${WORKDIR}/weston.ini.landscape ${D}${weston_ini_dir}/
84 install -m 0644 ${WORKDIR}/weston.ini.landscape-inverted ${D}${weston_ini_dir}/
87 PACKAGE_ARCH = "${MACHINE_ARCH}"
89 # Use the alternative mechanism to handle multiple packages providing
90 # weston.ini. This seems simpler than other possible approaches.
91 # Note that for now the generated packages are being marked as
92 # incompatible with each other for simplicity, that can be changed if
93 # a usecase where switching between alternatives at runtime is desirable
96 ALTERNATIVE_LINK_NAME[weston.ini] = "${weston_ini_dir}/weston.ini"
98 RPROVIDES:${PN} = "weston-ini"
99 ALTERNATIVE:${PN} = "weston.ini"
100 ALTERNATIVE_TARGET_${PN} = "${weston_ini_dir}/weston.ini.default"
104 PACKAGE_BEFORE_PN += "${PN}-landscape"
105 FILES:${PN}-landscape = "${weston_ini_dir}/weston.ini.landscape"
106 RPROVIDES:${PN}-landscape = "weston-ini"
107 ALTERNATIVE:${PN}-landscape = "weston.ini"
108 ALTERNATIVE_TARGET_${PN}-landscape = "${weston_ini_dir}/weston.ini.landscape"
109 ALTERNATIVE_PRIORITY_${PN}-landscape = "20"
113 PACKAGE_BEFORE_PN += "${PN}-landscape-inverted"
114 FILES:${PN}-landscape-inverted = "${weston_ini_dir}/weston.ini.landscape-inverted"
115 RPROVIDES:${PN}-landscape-inverted = "weston-ini"
116 ALTERNATIVE:${PN}-landscape-inverted = "weston.ini"
117 ALTERNATIVE_TARGET_${PN}-landscape-inverted = "${weston_ini_dir}/weston.ini.landscape-inverted"
118 ALTERNATIVE_PRIORITY_${PN}-landscape-inverted = "25"
120 # no-activate, no activation by default
121 PACKAGE_BEFORE_PN += "${PN}-no-activate"
122 FILES:${PN}-no-activate = "${weston_ini_dir}/weston.ini.default-no-activate"
123 RPROVIDES:${PN}-no-activate = "weston-ini"
124 ALTERNATIVE:${PN}-no-activate = "weston.ini"
125 ALTERNATIVE_TARGET_${PN}-no-activate = "${weston_ini_dir}/weston.ini.default-no-activate"
126 ALTERNATIVE_PRIORITY_${PN}-no-activate = "21"
128 # landscape-no-activate, no activation by default
129 PACKAGE_BEFORE_PN += "${PN}-landscape-no-activate"
130 FILES:${PN}-landscape-no-activate = "${weston_ini_dir}/weston.ini.landscape-no-activate"
131 RPROVIDES:${PN}-landscape-no-activate = "weston-ini"
132 ALTERNATIVE:${PN}-landscape-no-activate = "weston.ini"
133 ALTERNATIVE_TARGET_${PN}-landscape-no-activate = "${weston_ini_dir}/weston.ini.landscape-no-activate"
134 ALTERNATIVE_PRIORITY_${PN}-landscape-no-activate = "26"
136 # This is a settings-only package, we do not need a development package
137 # (and its fixed dependency to ${PN} being installed)
138 PACKAGES:remove = "${PN}-dev ${PN}-staticdev"