Age | Commit message (Collapse) | Author | Files |
|
This was a solution needed for musl but now musl has
got lazy loading.
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Commit 6a5a4e60373c1386b311b2a8bb666c32d68a9d99 removes the configure of
useSIGIO option:
xfree86 SIGIO support is reworked to use internal versions of
OsBlockSIGIO and OsReleaseSIGIO
The check for useSIGIO is no longer needed.
Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
|
|
Discovered on beaglebone black
Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
|
|
To enable glamor, we need to also enable both dri3 and xshmfence as dependencies.
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
|
|
When using the modesetting with glamor and MUSL, the glamoregl
library needs to be pre-loaded, so add it to the list here.
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
|
|
Point release with bug fixes.
Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
This patch is comparatively large and invasive. It does only do one thing, switching the
system to build using recipe specific sysroots and where changes could be isolated from it,
that has been done.
With the current single sysroot approach, its possible for software to find things which
aren't in their dependencies. This leads to a determinism problem and is a growing issue in
several of the market segments where OE makes sense. The way to solve this problem for OE is
to have seperate sysroots for each recipe and these will only contain the dependencies for
that recipe.
Its worth noting that this is not task specific sysroots and that OE's dependencies do vary
enormously by task. This did result in some implementation challenges. There is nothing stopping
the implementation of task specific sysroots at some later point based on this work but
that as deemed a bridge too far right now.
Implementation details:
* Rather than installing the sysroot artefacts into a combined sysroots, they are now placed in
TMPDIR/sysroot-components/PACKAGE_ARCH/PN.
* WORKDIR/recipe-sysroot and WORKDIR/recipe-sysroot-native are built by hardlinking in files
from the sysroot-component trees. These new directories are known as RECIPE_SYSROOT and
RECIPE_SYSROOT_NATIVE.
* This construction is primarily done by a new do_prepare_recipe_sysroot task which runs
before do_configure and consists of a call to the extend_recipe_sysroot function.
* Other tasks need things in the sysroot before/after this, e.g. do_patch needs quilt-native
and do_package_write_deb needs dpkg-native. The code therefore inspects the dependencies
for each task and adds extend_recipe_sysroot as a prefunc if it has populate_sysroot
dependencies.
* We have to do a search/replace 'fixme' operation on the files installed into the sysroot to
change hardcoded paths into the correct ones. We create a fixmepath file in the component
directory which lists the files which need this operation.
* Some files have "postinstall" commands which need to run against them, e.g. gdk-pixbuf each
time a new loader is added. These are handled by adding files in bindir with the name
prefixed by "postinst-" and are run in each sysroot as its created if they're present.
This did mean most sstate postinstalls have to be rewritten but there shouldn't be many of them.
* Since a recipe can have multiple tasks and these tasks can run against each other at the same
time we have to have a lock when we perform write operations against the sysroot. We also have
to maintain manifests of what we install against a task checksum of the dependency. If the
checksum changes, we remove its files and then add the new ones.
* The autotools logic for filtering the view of m4 files is no longer needed (and was the model
for the way extend_recipe_sysroot works).
* For autotools, we used to build a combined m4 macros directory which had both the native and
target m4 files. We can no longer do this so we use the target sysroot as the default and add
the native sysroot as an extra backup include path. If we don't do this, we'd have to build
target pkg-config before we could built anything using pkg-config for example (ditto gettext).
Such dependencies would be painful so we haven't required that.
* PKDDATA_DIR was moved out the sysroot and works as before using sstate to build a hybrid copy
for each machine. The paths therefore changed, the behaviour did not.
* The ccache class had to be reworked to function with rss.
* The TCBOOTSTRAP sysroot for compiler bootstrap is no longer needed but the -initial data
does have to be filtered out from the main recipe sysroots. Putting "-initial" in a normal
recipe name therefore remains a bad idea.
* The logic in insane needed tweaks to deal with the new path layout, as did the debug source
file extraction code in package.bbclass.
* The logic in sstate.bbclass had to be rewritten since it previously only performed search and
replace on extracted sstate and we now need this to happen even if the compiled path was
"correct". This in theory could cause a mild performance issue but since the sysroot data
was the main data that needed this and we'd have to do it there regardless with rss, I've opted
just to change the way the class for everything. The built output used to build the sstate output
is now retained and installed rather than deleted.
* The search and replace logic used in sstate objects also seemed weak/incorrect and didn't hold
up against testing. This has been rewritten too. There are some assumptions made about paths, we
save the 'proper' search and replace operations to fixmepath.cmd but then ignore this. What is
here works but is a little hardcoded and an area for future improvement.
* In order to work with eSDK we need a way to build something that looks like the old style sysroot.
"bitbake build-sysroots" will construct such a sysroot based on everything in the components
directory that matches the current MACHINE. It will allow transition of external tools and can
built target or native variants or both. It also supports a clean task. I'd suggest not relying on
this for anything other than transitional purposes though. To see XXX in that sysroot, you'd have
to have built that in a previous bitbake invocation.
* pseudo is run out of its components directory. This is fine as its statically linked.
* The hacks for wayland to see allarch dependencies in the multilib case are no longer needed
and can be dropped.
* wic needed more extensive changes to work with rss and the fixes are in a separate commit series
* Various oe-selftest tweaks were needed since tests did assume the location to binaries and the
combined sysroot in several cases.
* Most missing dependencies this work found have been sent out as separate patches as they were found
but a few tweaks are still included here.
* A late addition is that extend_recipe_sysroot became multilib aware and able to populate multilib
sysroots. I had hoped not to have to add that complexity but the meta-environment recipe forced my
hand. That implementation can probably be neater but this is on the list of things to cleanup later
at this point.
In summary, the impact people will likely see after this change:
* Recipes may fail with missing dependencies, particularly native tools like gettext-native,
glib-2.0-native and libxml2.0-native. Some hosts have these installed and will mask these errors
* Any recipe/class using SSTATEPOSTINSTFUNCS will need that code rewriting into a postinst
* There was a separate patch series dealing with roots postinst native dependency issues. Any postinst
which expects native tools at rootfs time will need to mark that dependency with PACKAGE_WRITE_DEPS.
There could well be other issues. This has been tested repeatedly against our autobuilders and oe-selftest
and issues found have been fixed. We believe at least OE-Core is in good shape but that doesn't mean
we've found all the issues.
Also, the logging is a bit chatty at the moment. It does help if something goes wrong and goes to the
task logfiles, not the console so I've intentionally left this like that for now. We can turn it down
easily enough in due course.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
getVar() now defaults to expanding by default, thus remove the True
option from getVar() calls with a regex search and replace.
Search made with the following regex: getVar ?\(( ?[^,()]*), True\)
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
|
|
* xserver depends on xfont2 now.
* xwayland support requires wayland-scanner: Add patch to find
wayland-scanner and protocol files while cross-compiling.
* patch MONOTONIC_CLOCK check so it works when cross-compiling
(otherwise we always end with no monotonic clock and xwayland
compile fails)
* Add vardepsexclude for MACHINE to ensure consistent hashes (RB)
Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
|
|
Trying to configure evdev and mouse leads to errors in X startup
because xf86-input-libinput is now the default. No configuration
should be needed: xf86-input-libinput should just work out-of-the-box.
Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
|
|
Don't install legacy X input drivers for any machines by default,
RRECOMMEND xf86-input-libinput instead.
This is the setup suggested by upstream: install only libinput by
default, but let niche legacy drivers sort higher in configuration
so they get chosen if installed. So the order is:
evdev < libinput < (synaptics|vmmouse|...)
This also removes vmmouse X driver from the qemu config. If a VMware
virtual mouse device really needs to be supported, we should enable
CONFIG_MOUSE_PS2_VMMOUSE in kernel instead: that is directly supported
by the libinput X driver.
Fixes [YOCTO #10195].
Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
|
|
When build lib32-xserver-xorg it has qa warning:
| WARNING: lib32-xserver-xorg-2_1.18.4-r0 do_package_qa: QA Issue:
| Package lib32-xf86-video-modesetting contains Xorg driver
| (modesetting_drv.so) but no xorg-abi- dependencies [xorg-driver-abi]
The qa check xorg-driver-abi has been skipped for xserver-xorg and make
it to skip for multilib package too.
Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
musl doesn't like lazy loading that xorg uses, therefore
load the needed modules explicitly
[YOCTO #10169]
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
|
|
From version 1.18.3 to 1.18.4 modesetting driver has suffered several changes.
One of this changes allow mouse works as expected with xf86-video-modesetting
driver when system startup upon beaglebone.
[YOCTO #9828]
Signed-off-by: Edwin Plauchu <edwin.plauchu.camacho@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
|
|
In python3, strings are unicode by default. We need to encode/decode
from command pipelines and other places where we interface with the
real world using the correct locales. This patch updates various
call sites to use the correct encoding/decodings.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
* drm-version patch was applied mainline
* libsystemd was solved similar to patch upstream
* glamor was enhanced twice by Eric Anholt and makes vc4 work on Raspberry Pi
* glamor does not link against libegl but won't work without libegl
Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
|
|
This fixes the check of the libdrm version in the configure script.
Signed-off-by: Johannes Pointner <johannes.pointner@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
|
|
Default to libcrypto (openssl) as before.
Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
|
|
inb/outb are implemented for ARM on glibc but not on linux in general
therefore the conditional has to reflect that
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
With the autodebug package generation logic, specifically setting FILES_${PN}-dbg
isn't needed in most cases, we can remove them.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
* Remove glibc-guard patch: xserver no longer uses termio.h on linux
in any case.
* Remove "--enable-glx-tls": this hasn't done anything since glapi
was separated from glx
* Note that xserver no longer installs evdev configuration
(evdev and/or libinput should do it instead)
* Add patch to check for libsystemd correctly
* Add PACKAGECONFIG for libsystemd
Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
|
|
The SecurityPolicy hasn't been included since 2007[1] and the
last remnants were removed from the code base in 2010[2].
1. http://cgit.freedesktop.org/xorg/xserver/commit/?id=9d03ca
2. http://cgit.freedesktop.org/xorg/xserver/commit/?id=19d03d
Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Ross Burton <ross.burton@intel.com>
|
|
Xwayland has the same runtime dependencies as the standard
xserver so set RRECOMMENDS the same way.
Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Ross Burton <ross.burton@intel.com>
|
|
If you currently do a DISTRO_FEATURES_remove = "x11" with OE-Core, you
see failures due to dependency problems. The work in resolving this was
partially completed a while back. This adds in the markup mainly for
gtk/gtk3+ recipes and means "bitbake world" will work successfully.
Rather than code the gtk/gtk+ specific distro features into each recipe,
a shared variable is used.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
There is no ac_cv_file__usr_share_sgml_X11_defs_ent in configure, can't
find it in config.log after remove, either.
(From OE-Core rev: 27bd0a27a879cfc31062fbb2b1a04431d5541c55)
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Fixes CVE-2015-3164 in Xwayland.
Remove unnecessary patches:
* fix_open_max_preprocessor_error.patch is no longer needed:
OPEN_MAX is defined in every case now
* xorg-CVE-2013-6424.patch was handled in pixman several releases ago
* other removed patches are included in 1.17.2
Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
When falling back to the VESA server, X fails to start due to an error
reading the int10 vec.
We cherry-pick the following commit to fix the error:
commit 0a78b599b34cc8b5fe6fe82f90e90234e8ab7a56
Author: Jürg Billeter <j@bitron.ch>
Date: Sat Feb 7 18:13:21 2015 +0100
int10: Fix error check for pci_device_map_legacy
pci_device_map_legacy returns 0 on success.
Signed-off-by: Jürg Billeter <j@bitron.ch>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
|
|
DRI2 is more abstract than the original DRI and isn't tied to OpenGL or any
other rendering system, and as such is being used by more than OpenGL support in
xserver. In particular, the new modesettings driver uses DRI2 to accelerate
drawing, so enable DRI2 by default.
This was spotted because the "nodistro" DISTRO doesn't enable OpenGL, so xserver
failed to build as dri2proto wasn't built.
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
* Increase OELAYOUT_ABI: this is required because the
xf86-video-modesetting package moves from its own recipe to
xserver-xorg and sanity check cannot handle that currently.
The upgrade will delete old xf86-video-modesetting files from
sysroots.
* Remove upstreamed xserver-xorg patches
* Remove xf86-video-modesetting recipe: the driver is now included in
xserver-xorg recipe, which now produces the xf86-video-modesetting
package. The package version changes from 0.9 to 1.17.1
* Update xserver-xorg license checksum: modesetting license
info (another MIT one) has been added to the file
Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
|
|
Fixed do_compile error:
hw/xwayland/xwayland.h:36:28: fatal error: wayland-client.h: No such file or directory
#include <wayland-client.h>
^
compilation terminated.
Conditionally add xserver-xorg-xwayland pkg which contains
/usr/bin/Xwayland.
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
|
|
If xinerara can be selected via PACKAGECONFIG, xserver-xorg recipe can
be easier modified via bbappend.
xinerama is needed by the fglrx driver (from AMD).
Signed-off-by: Ricardo Ribalda Delgado <ricardo.ribalda@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Upstream has already fixed the GCC 5 problem, so use the patch from upstream.
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Backport a patch from fedora details are in patch header
Change-Id: I6b8dfaae3b751071bf8b0d88b15a4f95c19877f6
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
musl does not support BIND_LAZY intentionally, which means
dlopen will always complain about missing symbols which is what
X does when loading graphics drivers, here we preload the needed
drivers for all emulator machines if libc is musl
Change-Id: I908c94c30db8a5e872922e1a677126d82fa17145
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Change-Id: Ia899520181feb1c601a76e04a176f4387a331c00
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Updated x11-server packages fix security vulnerability:
Olivier Fourdan from Red Hat has discovered a protocol handling issue in
the way the X server code base handles the XkbSetGeometry request, where
the server trusts the client to send valid string lengths. A malicious
client with string lengths exceeding the request length can cause the server
to copy adjacent memory data into the XKB structs. This data is then
available to the client via the XkbGetGeometry request. This can lead to
information disclosure issues, as well as possibly a denial of service if a
similar request can cause the server to crash (CVE-2015-0255).
Signed-off-by: Li Zhou <li.zhou@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
On shutdown xserver was closing connections that were already closed, resulting
in a segfault.
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Add packageconfig for systemd-logind instead of hard disable in
EXTRA_OECONF this allows users to use packageconfig also add
dependency of dbus because systemd-logind require it for communicate
with systemd.
Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
|
|
Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
|
|
Signed-off-by: Jun Zhu <R01007@freescale.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
|
|
After removal of auto-creating S we must ensure that all recipes are
using a proper value for S.
Fix all recipes that only need to set S equals to WORKDIR.
[YOCTO #5627]
Signed-off-by: Petter Mabäcker <petter@technux.se>
|
|
Without a dm to handle the session management systemd-logind can make it
difficult for X to gain ownership of devices and behave properly.
Since X seems to work without enabling systemd-logind, always disable it for
now, and we can revisit it if we ever want to try to take advantage of
multi-user sessions/seats.
[Yocto # 7100]
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Add PACKAGECONFIG systemd, xserver-xorg now depends in dbus because
adds support for systemd-logind, dbus is used by xserver-xorg to
communicate with systemd.
Add conditional enablement of systemd-logind if DISTRO_FEATURES contains
systemd.
Remove crosscompile, mips64-compile and present-module because are already
in upstream.
Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
|
|
|
|
The DRI3 and Present modules are built-in but some drivers (such as
xf86-video-intel) want to query their presence. Backport a patch from upstream
to stop this causing an error.
[ YOCTO #6583 ]
Signed-off-by: Ross Burton <ross.burton@intel.com>
|
|
Patch aarch64.patch adds aarch64 support for xserver-xorg 1.13.1 in
header file servermd.h. And aarch64 is supported in version 1.15.1
already and the patch causes redefine error.
So remove aarch64.patch.
Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
A section specifying the driver to use is deleted from the image's xorg.conf,
allowing the X server to automatically select the most appropriate driver.
Testing shows that it does always pick the correct one.
Signed-off-by: Max Eliaser <max.eliaser@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
A section specifying the driver to use is deleted from the image's xorg.conf,
allowing the X server to automatically select the most appropriate driver.
Testing shows that it does always pick the correct one.
Signed-off-by: Max Eliaser <max.eliaser@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
We're seeing the warning:
WARNING: QA Issue: xserver-xorg rdepends on nettle but its not a build dependency? [build-deps]
We list openssl in DEPENDS so we need to specify that as the sha1 provider
rather that nettle which is autodetected.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|