Breno Leitao [Thu, 9 May 2019 10:03:24 +0000 (11:03 +0100)]
weston-init: Add support for non-root start
This commit adds support for two variables (WESTON_USER and WESTON_TTY) that
would be passed to weston_launch. It allows starting weston as a non-root user.
Breno Leitao [Thu, 9 May 2019 10:03:23 +0000 (11:03 +0100)]
weston-init: Fix tab indentation
This patch simply fixes space and tab mixes. It converts space to tabs. This is
being done since I am going to change the code in the next commit and I do not
want to change more lines than it is required, thus, I am creating a commit
just to fix indentation, so I can create a cleaner patch later.
Khem Raj [Thu, 9 May 2019 18:03:51 +0000 (11:03 -0700)]
libgfortan: Package target gcc include directory to fix
ERROR: libgfortran-9.1.0-r0 do_package: QA Issue: libgfortran:
Files/directories were installed but not shipped in any package:
/usr/lib/gcc/x86_64-poky-linux/9.1.0/include
/usr/lib/gcc/x86_64-poky-linux/9.1.0/include/ISO_Fortran_binding.h
Richard Purdie [Thu, 9 May 2019 20:17:23 +0000 (21:17 +0100)]
tcmode-default: Add PREFERRED_VERSION for libgfortran
With the addition of gcc 9 recipes it highlighted there is no PREFERRED_VERSION
set for libgfortran and it should match the rest of gcc. Add this missing
PREFERRED_VERSION line to avoid mixing gcc versions in inadvisable ways.
Richard Purdie [Thu, 9 May 2019 13:35:03 +0000 (14:35 +0100)]
oeqa/concurrenttest: Patch subunit module to handle classSetup failures
Currently setupClass errors were not being mapped back to the failing tests
and they were hence being marked as UNKNOWN and the test statistics were
inaccurate.
This is because whilst the errors were being encoded into the test results
stream, the decoder doesn't cope with an error outside a testStart event.
We patch in an addError handler to the outsideTest parser so that this
does get handled in a way similar to the non-concurrent case.
It would be nice if we didn't have to do this but there doesn't seem
to be any other way to fix this other than forking subunit.
We also make a minor change so another of our changes can cope with
tests without a start time.
systemd: move "machines" symlinks to systemd-container
Move symlinks to the machines.target and var-lib-machines.mount units to
the systemd-container package, where the pointed at units are located as
well.
This avoids an implicit dependency of the systemd package on
systemd-container, which prevented the use of systemd without installing
systemd-container.
systemd: Use PACKAGECONFIG definition to depend on libnss-myhostname
Rather than adding the dependency on libnss-myhostname to
RDEPENDS_${PN} if the myhostname PACKAGECONFIG is set, add the runtime
dependency to myhostname's PACKAGECONFIG definition.
Alex Kiernan [Wed, 8 May 2019 15:57:28 +0000 (16:57 +0100)]
systemd: Restore mask and preset targets, fix instance creation
Ensure that anyone who sets SYSTEMD_AUTO_ENABLE_${PN} = "mask" (or
"preset") retains the previous behaviour. In addition fix "enable" so it
can (again) create instance units out of templates.
Remove over-zealous quoting of SYSTEMD_SERVICE_ESCAPED as it's already
safely escaped (and can be multiple arguments).
Alex Kiernan [Wed, 8 May 2019 15:57:27 +0000 (16:57 +0100)]
systemd-systemctl: Restore support for enable command
Refactor so that SystemdUnit is its own class, then add support for the
enable command. This restores the ability of systemd.bbclass to create
instances using syntax such as:
Alex Kiernan [Wed, 8 May 2019 15:57:26 +0000 (16:57 +0100)]
systemd: Default to non-stateless images
When creating images, for anything other than the explicitly stateless
case, touch /etc/machine-id so that the images can be booted without an
initramfs and with `ro` set on the kernel command line, otherwise system
refuses to start:
[ 7.222134] systemd[1]: No hostname configured.
[ 7.227266] systemd[1]: Set hostname to <localhost>.
[ 7.232622] systemd[1]: System cannot boot: Missing /etc/machine-id and /etc is mounted read-only.
[ 7.241750] systemd[1]: Booting up is supported only when:
[ 7.247362] systemd[1]: 1) /etc/machine-id exists and is populated.
[ 7.253752] systemd[1]: 2) /etc/machine-id exists and is empty.
[ 7.259757] systemd[1]: 3) /etc/machine-id is missing and /etc is writable.
If IMAGE_FEATURES includes `stateless-rootfs` then systemctl-native is
not run on the image leaving the image for population at runtime by
systemd.
map unexpectedSuccesses to PASSED and improve the way they're displayed. We
expect/allow ptest runner to fail but if it passes we should handle it correctly.
Richard Purdie [Wed, 8 May 2019 17:22:19 +0000 (18:22 +0100)]
meta/lib+scripts: Convert to SPDX license headers
This adds SPDX license headers in place of the wide assortment of things
currently in our script headers. We default to GPL-2.0-only except for the
oeqa code where it was clearly submitted and marked as MIT on the most part
or some scripts which had the "or later" GPL versioning.
The patch also drops other obsolete bits of file headers where they were
encoountered such as editor modelines, obsolete maintainer information or
the phrase "All rights reserved" which is now obsolete and not required in
copyright headers (in this case its actually confusing for licensing as all
rights were not reserved).
More work is needed for OE-Core but this takes care of the bulk of the scripts
and meta/lib directories.
The top level LICENSE files are tweaked to match the new structure and the
SPDX naming.
Richard Purdie [Wed, 8 May 2019 15:56:32 +0000 (16:56 +0100)]
oeqa: Drop OETestID
These IDs refer to testopia which we're no longer using. We would now use the test
names to definitively reference tests and the IDs can be dropped, along with their
supporting code.
It fails to build lib32-target-sdk-provides-dummy with error messages:
| ERROR: target-sdk-provides-dummy-1.0-r0 do_packagedata: The recipe target-sdk-provides-dummy
| is trying to install files into a shared area when those files already exist. Those files
| and their manifest location are:
| .../tmp/pkgdata/qemux86-64/lib32-target-sdk-provides-dummy
| (matched in manifest-qemux86_64-lib32-target-sdk-provides-dummy.packagedata)
| .../tmp/pkgdata/qemux86-64/runtime/lib32-target-sdk-provides-dummy
| (matched in manifest-qemux86_64-lib32-target-sdk-provides-dummy.packagedata)
| ... snip ...
| Please verify which recipe should provide the above files.
Add related directories to SSTATE_DUPWHITELIST to avoid the failures.
Changqing Li [Wed, 8 May 2019 10:05:27 +0000 (18:05 +0800)]
python3: fix do_install fail for parallel buiild
When using make -j with the 'install' target, it's possible for altbininstall
(which normally creates BINDIR) and libainstall (which doesn't, though it
installs python-config there) to race, resulting in a failure due to
attempting to install python-config into a nonexistent BINDIR. Ensure it also
exists in the libainstall target.
Joshua Watt [Wed, 8 May 2019 16:16:23 +0000 (11:16 -0500)]
resulttool: Add option to dump all ptest logs
Adds an option to dump all the ptest logs to individual files in a
specified directory. If multiple test runs are present, the
'--prepend-run' argument will create separate directories for each test
run under the target directory and put the logs there to prevent each
test run from clobbering the others.
Richard Purdie [Wed, 8 May 2019 10:50:14 +0000 (11:50 +0100)]
scripts/pybootchart/draw: Fix some bounding problems
The chart size extents were being incorrectly reported, not accounting for the
width of the legend. Set a minimum width to account for that (its fixed size).
Also stop printing the chart background off the bottom of the chart extents.
Richard Purdie [Wed, 8 May 2019 10:48:35 +0000 (11:48 +0100)]
scripts/pybootchart: Port to python3
This updates the pybootchart code (used for viewing build timing profiles)
to use python3. The bulk of the changes are to use gi instead of pygtk, i.e.
port from gtk+2 to gtk+3.
The main change is to make the bootchart widget inherit gtk.Scrollable
and change the way the scrollbars are implemented to match the new method
upstream. The drawing code used cairo already so can remain unchanged,
Hongxu Jia [Mon, 6 May 2019 02:37:27 +0000 (10:37 +0800)]
acpica: use update-alternatives for acpidump
acpidump is both provided by acpica and pmtools, so use
update-alternatives to fix conflicts:
...
|Error: Transaction check error:
| file /usr/bin/acpidump conflicts between attempted installs of
pmtools-20130209+git0+3ebe0e54c5-r0.i586 and acpica-20190405-r0.i586
...
Khem Raj [Mon, 6 May 2019 17:51:36 +0000 (10:51 -0700)]
gcc-target: Do not set --with-sysroot and gxx-include-dir paths
These options are not needed on target infact since the defaults would
be good enough for compiler to find the relevant headers and libraries
from compiler runtime
with gcc9 it starts to strip the sysroot from gxx-include-dir which
means it tries to look for gxx headers in localdir
Whenever cml1 do_configure is used with a defconfig, oldconfig waits for
input. This silently fails on recent kconfig projects with:
"Error in reading or end of file."
We cannot use a more up to date kconfig target such as olddefconfig,
because busybox does not support it.
Douglas Royds [Mon, 6 May 2019 06:47:25 +0000 (18:47 +1200)]
distutils: Run python from the PATH in the -native case as well
The python distutils generate a python wrapper script for each package,
containing shebang lines pointing to the python executable.
In our case, this is a fully-qualified path to python-native in the
recipe-sysroot-native.
Ubuntu 18.04 restricts the useful length of the shebang line to 125
characters, and Ubuntu 16.04 restricts it to 77. In both cases, the
staged python script fails to run due to the length of the path to
the python-native executable.
Replace the shebang line with nativepython or nativepython3 as appropriate.
The nativepython symlink is installed by the python-native recipe:
#!/usr/bin/env nativepython
We were already doing this for on-target distutils components.
This change applies the sed-line to -native distutils components as well.
In this way, -native clients of these components can invoke the wrapper scripts
directly, without themselves needing to inherit pythonnative.
This works around a known setuptools issue:
https://github.com/pypa/setuptools/issues/494
Even once this issue has been resolved upstream,
we will still need to replace `python` with `nativepython`
Alex Kiernan [Sun, 5 May 2019 05:24:27 +0000 (06:24 +0100)]
recipetool: fix unbound variable when fixed SRCREV can't be found
If attempting to find a fixed SRCREV fails because the directory doesn't exit,
avoid failing with:
Traceback (most recent call last):
File "/home/vagrant/poky/scripts/recipetool", line 121, in <module>
ret = main()
File "/home/vagrant/poky/scripts/recipetool", line 110, in main
ret = args.func(args)
File "/home/vagrant/poky/scripts/lib/recipetool/create.py", line 707, in create_recipe
srcrev = stdout.rstrip()
UnboundLocalError: local variable 'stdout' referenced before assignment
Alex Kiernan [Sun, 5 May 2019 05:23:32 +0000 (06:23 +0100)]
go: Exclude vcs files when installing deps
Because our clones use the host git, on (say) Ubuntu 18.04, the local
git directories acquire perl scripts such as fsmonitor-watchman.sample.
During packaging, this leads to failures:
ERROR: go-hsperfdata-1.0.3+gitAUTOINC+b58598ac84-r0 do_package_qa: QA Issue: /usr/lib/go/pkg/dep/sources/https---github.com-nsf-termbox--go/.git/hooks/fsmonitor-watchman.sample contained in package go-hsperfdata-staticdev requires /usr/bin/perl, but no providers found in RDEPENDS_go-hsperfdata-staticdev? [file-rdeps]
ERROR: go-hsperfdata-1.0.3+gitAUTOINC+b58598ac84-r0 do_package_qa: QA run found fatal errors. Please consider fixing them.
ERROR: go-hsperfdata-1.0.3+gitAUTOINC+b58598ac84-r0 do_package_qa:
ERROR: go-hsperfdata-1.0.3+gitAUTOINC+b58598ac84-r0 do_package_qa: Function failed: do_package_qa
Alex Kiernan [Sun, 5 May 2019 05:23:13 +0000 (06:23 +0100)]
python3: Add ntpath.py to python core
The newer python3 recipe no longer includes ntpath.py in core, leading
to failures in pkg_resources:
Traceback (most recent call last):
File "/usr/bin/bmaptool", line 6, in <module>
from pkg_resources import load_entry_point
File "/usr/lib/python3.7/site-packages/pkg_resources/__init__.py", line 42, in <module>
import ntpath
ModuleNotFoundError: No module named 'ntpath'
Hongxu Jia [Sun, 5 May 2019 10:04:24 +0000 (18:04 +0800)]
cpio/tar/native.bbclass: move rmt to sbindir and add a prefix to avoid native clashing
The rmt in cpio-native and tar-native is clashing, since
tar-native has set var-NATIVE_PACKAGE_PATH_SUFFIX, we move rmt
to sbindir, and add suffix NATIVE_PACKAGE_PATH_SUFFIX to sbindir
could avoid the clashing.
And in Ubuntu, rmt is in sbindir
$ which rmt
/usr/sbin/rmt
Scott Rifenbark [Mon, 6 May 2019 19:44:48 +0000 (12:44 -0700)]
documentation: Cleaned up "plug-in"/"plugin" terminology.
The YP manual set was using the plugin term inconsistently.
It was appearing as "plugin" as well as "plug-in". The
plugins in the project are all named without a hyphen.
The term itself is either/or according to Google. I have
changed all references to plugin so that they do not use
a hyphen.
Scott Rifenbark [Fri, 19 Apr 2019 16:51:59 +0000 (09:51 -0700)]
dev-manual: Added reasoning blurb to "Viewing Variables" section.
I put a new introductory paragraph in the "Viewing Variables"
section that alludes to why you might want to see variables.
Also, I linked to the section "Modifying Variable Values" in
the BB manual.
Scott Rifenbark [Fri, 12 Apr 2019 21:12:10 +0000 (14:12 -0700)]
mega-manual, overview-manual: Added updated index releases figure
The index-downloads.png file changes due to "eclipse" no
longer being there. Both the overview-manual and the
mega-manual figures folders hold this figure.
Scott Rifenbark [Fri, 12 Apr 2019 21:07:01 +0000 (14:07 -0700)]
Documentation: Removed customization.xsl files for Eclipse
The help files for YP manuals used in the Eclipse application
are no longer supported. I removed the individual
*-customization.xsl files for the individual YP manuals.
Signed-off-by: Paul Barker <paul@betafive.co.uk> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Paul Barker <paul@betafive.co.uk> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Khem Raj [Fri, 3 May 2019 06:29:26 +0000 (23:29 -0700)]
mdadm: Disable Werror
Werror spews more warnings with gcc9, like other distros (
debian/fedora) disable Warnings as errors
Fixes
super-intel.c:696:9: error: taking address of packed member of 'struct imsm_super' may result in an unaligned pointer value [-Werror=address-of-packed-member]