subtree updates
poky: 4e511f0abc..a015ed7704:
Adrian Bunk (22):
gnutls: upgrade 3.6.5 -> 3.6.7
dhcp: Replace OE specific patch for compatibility with latest bind with upstream patch
Set XZ_COMPRESSION_LEVEL to -9
gcc: Remove Java support variables
Use the best xz compression for the SDK
gnome-doc-utils: Remove stale patch
libxcrypt: Stop adding -std=gnu99 to CPPFLAGS
file: Stop adding -std=c99 to CFLAGS
gnu-efi: Remove support patch for gcc < 4.7
grub: Use -Wno-error instead of doing this on a per-warning basis
socat: upgrade 1.7.3.2 -> 1.7.3.3
bison: upgrade 3.0.4 -> 3.1
mmc-utils: update to the latest upstream code
cogl: upgrade 1.22.2 -> 1.22.4
cogl: remove -Werror=maybe-uninitialized workaround
libxcb: remove workaround patch for a bug that was fixed in gcc 5 in 2015
sysstat: inherit upstream-version-is-even
ccache: upgrade 3.6 -> 3.7.1
lttng-modules: upgrade 2.10.8 -> 2.10.9
iproute2: Remove bogus workaround patch for musl
openssl: Remove openssl10
Remove irda-utils and the irda feature
Alejandro Enedino Hernandez Samaniego (1):
run-postinsts: Fix full execution of scripts at first boot
Alejandro del Castillo (1):
opkg: add ptest
Alex Kiernan (12):
systemd-conf: simplify creation of machine-specific configuration
systemctl-native: Rewrite in Python supporting preset-all and mask
image: call systemctl preset-all for images
uboot-sign: Fix build when UBOOT_DTB_BINARY is empty
patchelf: Upgrade 0.9 -> 0.10
python3: Add ntpath.py to python core
go: Exclude vcs files when installing deps
recipetool: fix unbound variable when fixed SRCREV can't be found
systemd: Default to non-stateless images
systemd-systemctl: Restore support for enable command
systemd: Restore mask and preset targets, fix instance creation
shadow: Backport last change reproducibility
Alexander Kanavin (38):
python3: add a tr-tr locale for test_locale ptest
gobject-introspection: update to 1.60.1
dtc: upgrade 1.4.7 -> 1.5.0
webkitgtk: update to 2.24.0
libdazzle: update to 3.32.1
vala: update to 0.44.3
libdnf: update to 0.28.1
libcomps: upgrade 0.1.10 -> 0.1.11
dnf: upgrade 4.1.0 -> 4.2.2
btrfs-tools: upgrade 4.20.1 -> 4.20.2
meson: update to 0.50.0
libmodulemd: update to 2.2.3
at-spi2-core: fix meson 0.50 build
ffmpeg: update to 4.1.3
python: update to 2.7.16
python: update to 3.7.3
python-numpy: update to 1.16.2
icu: update to 64.1
epiphany: update to 3.32.1.2
python3: add another multilib fix
meson: do not try to substitute the prefix in python supplied paths
python3-pygobject: update to 3.32.0
meson: add missing Upstream-Status and SOB to a patch
acpica: update to 20190405
msmtp: fix upstream version check
python-scons: update to 3.0.5
python-setuptools: update to 41.0.1
python3-mako: update to 1.0.9
python3-pbr: update to 5.1.3
python3-pip: update to 19.0.3
buildhistory: call a dependency parser only on actual dependency lists
gtk-doc.bbclass: unify option setting for meson-based recipes
python3-pycairo: update to 1.18.1
maintainers.inc: take over as perl maintainer
xorg-lib: drop native overrides for REQUIRED_DISTRO_FEATURES
meson: update to 0.50.1
perl: update to 5.28.2
packagegroup-self-hosted: drop epiphany
Alistair Francis (5):
u-boot: Upgrade from 2019.01 to 2019.04
beaglebone-yocto: Update u-boot config to match u-boot 19.04
u-boot: Fix missing Python.h build failure
libsoup: Upgrade from 2.64.2 to 2.66.1
qemu: Upgrade from 3.1.0 to 4.0.0
Andre Rosa (1):
bitbake: utils: Let mkdirhier fail if existing path is not a folder
Andreas Müller (17):
gobject-introspection: auto-enable/-disable gobject-introspection for meson
libmodulemd: use gobject-introspection.bbclass on/off mechanism
gdk-pixbuf: use gobject-introspection.bbclass on/off mechanism
json-glib: use gobject-introspection.bbclass on/off mechanism
libdazzle: use gobject-introspection.bbclass on/off mechanism
clutter-gtk-1.0: use gobject-introspection.bbclass on/off mechanism
pango: use gobject-introspection.bbclass on/off mechanism
at-spi2-core: use gobject-introspection.bbclass on/off mechanism
atk: use gobject-introspection.bbclass on/off mechanism
libsoup-2.4: use gobject-introspection.bbclass on/off mechanism
glib-networking: upgrade 2.58.0 -> 2.60.1
gst-plugins: move 'inherit gobject-introspection' to recipes supporting GI
gstreamer1.0-python: rework gobject-introspection handling
insane.bbclass: Trigger unrecognzed configure option for meson
vte: upgrade 0.52.2 -> 0.56.1
vte: move shell auto scripts into seperate package
qemu: split out vte into seperate PACKAGECONFIG
Andreas Obergschwandtner (1):
uboot-sign: add support for different u-boot configurations
Andrej Valek (2):
dropbear: update to 2019.78
systemd: upgrade to 242
Angus Lees (1):
Revert "wic: Set a miniumum FAT16 volume size."
Anuj Mittal (4):
gcc: fix CVE-2018-18484
gdb: fix CVE-2017-9778
binutils: fix CVE-2019-9074 CVE-2019-9075 CVE-2019-9076 CVE-2019-9077
openssh: fix CVE-2018-20685, CVE-2019-6109, CVE-2019-6111
Armin Kuster (8):
resulttool: add ltp test support
logparser: Add decoding ltp logs
ltp: add runtime test
resulttool: add LTP compliance section
logparser: Add LTP compliance section
ltp_compliance: add new runtime
manual compliance: remove bits done at runtime
nss: cleanup recipe to match OE style
Beniamin Sandu (1):
kernel-devsrc: check for localversion files in the kernel source tree
Breno Leitao (3):
weston-init: Fix tab indentation
weston-init: Add support for non-root start
weston-init: Fix WESTON_USER typo
Bruce Ashfield (8):
linux-yocto/5.0: update to v5.0.5
linux-yocto-rt: update to 5.0.5-rt3
linux-yocto/5.0: update to v5.0.7
linux-yocto/4.19: update to v4.19.34
linux-yocto-rt/4.19: fix merge conflict in lru_drain
linux-yocto/5.0: port RAID configuration tweaks from master
linux-yocto/5.0: integrate TCP timeout / hang fix
linux-yocto/5.0: update TCP patch to mainline version
Changhyeok Bae (2):
iw: upgrade 4.14 -> 5.0.1
iptables: upgrade 1.6.2 -> 1.8.2
Changqing Li (11):
ruby: make ext module fiddle can compile success
ruby: add ptest
cogl: fix compile error caused by -Werror=maybe-uninitialized
systemd: change default locale from C.UTF-8 to C
m4: add ptest support
gettext: add ptest support
waffle: supprt build waffle without x11
piglit: support build piglit without x11
dbus: fix ptest failure
populate_sdk_base: provide options to set sdk type
python3: fix do_install fail for parallel buiild
Chee Yang Lee (1):
wic/bootimg-efi: replace hardcoded volume name with label
Chen Qi (9):
runqemu: do not check return code of tput
busybox: fix ptest failure about 'dc'
base-files: move hostname operations out of issue file settings
webkitgtk: set CVE_PRODUCT
dropbear: set CVE_PRODUCT
libsdl: set CVE_PRODUCT
ghostscript: set CVE_PRODUCT
flac: also add flac to CVE_PRODUCT
squashfs-tools: set CVE_PRODUCT
David Reyna (1):
bitbake: toaster: update to Warrior
Dengke Du (2):
perf: workaround the error cased by maybe-uninitialized warning
linux-yocto_5.0: set devicetree for armv5
Denys Dmytriyenko (1):
weston: upgrade 5.0.0 -> 6.0.0
Douglas Royds (2):
distutils: Run python from the PATH in the -native case as well
distutils: Tidy and simplify for readability
Fabio Berton (1):
mesa: Update 19.0.1 -> 19.0.3
He Zhe (2):
ltp: Fix setrlimit03 call succeeded unexpectedly
systemd: Bump up SRCREV to systemd-stable top to include the fix for shutdown now hang
Hongxu Jia (15):
image_types.bbclass: fix a race between the ubi and ubifs FSTYPES
cpio/tar/native.bbclass: move rmt to sbindir and add a prefix to avoid native clashing
acpica: use update-alternatives for acpidump
apr: upgrade 1.6.5 -> 1.7.0
man-pages: upgrade 4.16 -> 5.01
man-db: upgrade 2.8.4 -> 2.8.5
bash: upgrade 4.4.18 -> 5.0
ncurses: fix incorrect UPSTREAM_CHECK_GITTAGREGEX
gpgme: upgrade 1.12.0 -> 1.13.0
subversion: upgrade 1.11.1 -> 1.12.0
groff: upgrade 1.22.3 -> 1.22.4
libxml2: upgrade 2.9.8 -> 2.9.9
ghostscript: 9.26 -> 9.27
groff: imporve musl support
oeqa/targetcontrol.py: fix qemuparams not work in runqemu with launch_cmd
Jacob Kroon (3):
grub-efi-native: Install grub-editenv
bitbake: knotty: Pretty print task elapsed time
base-passwd: Add kvm group
Jaewon Lee (1):
Adding back wrapper and using OEPYTHON3HOME variable for python3
Jens Rehsack (1):
kernel-module-split.bbclass: support CONFIG_MODULE_COMPRESS=y
Jonas Bonn (3):
systemd: don't build firstboot by default
systemd: do not create machine-id
systemd: create preset files instead of installing in image
Joshua Watt (6):
classes/waf: Set WAFLOCK
resulttool: Load results from URL
resulttool: Add log subcommand
qemux86: Allow higher tunes
bitbake.conf: Account for older versions of bitbake
resulttool: Add option to dump all ptest logs
Kai Kang (5):
msmtp: 1.6.6 -> 1.8.3
cryptodev: fix module loading error
target-sdk-provides-dummy: resolve sstate conflict
bitbake.conf: set NO_RECOMMENDATIONS with weak assignment
webkitgtk: fix compile error for arm64
Kevin Hao (1):
meta-yocto-bsp: Bump to the latest stable kernel for all the BSP
Khem Raj (9):
gcc-cross-canadian: Make baremetal specific code generic
musl: Upgrade to master past 1.1.22
webkitgtk: Fix build with clang
mdadm: Disable Werror
gcc-target: Do not set --with-sysroot and gxx-include-dir paths
systemd: Add -Wno-error=format-overflow to fix build with gcc9
systemd: Backport patch to fix build with gcc9
libgfortan: Package target gcc include directory to fix
gcc-9: Add recipes for gcc 9.1 release
Lei Maohui (2):
dnf: Enable nativesdk
icu: Added armeb support.
Lei Yang (1):
recipetool: add missed module
Luca Boccassi (1):
systemd: add cgroupv2 PACKAGECONFIG
Mardegan, Alberto (1):
oeqa/core/runner: dump stdout and stderr of each test case
Mariano Lopez (5):
update-alternatives.bbclass: Add function to get metadata
ptest.bbclass: Add feature to populate a binary directory
util-linux: Use PTEST binary directory
busybox: Use PTEST binary directory
ptest.bbclass: Use d.getVar instead of os.environ
Martin Jansa (6):
connman: add PACKAGECONFIG for nfc, fix MACHINE_ARCH signature when l2tp is enabled
icecc.bbclass: stop causing everything to be effectivelly MACHINE_ARCH
glibc: always use bfd linker
opkg: fix ptest packaging when OPKGLIBDIR == libdir
kexec-tools: refresh patches with devtool
perf: make sure that the tools/include/uapi/asm-generic directory exists
Matthias Schiffer (1):
systemd: move "machines" symlinks to systemd-container
Max Kellermann (2):
useradd-staticids: print exception after parse_args() error
initrdscripts: merge multiple "mkdir" calls
Michael Scott (2):
kernel-fitimage: support RISC-V
procps: update legacy sysctl.conf to fix rp_filter sysctl issue
Mikko Rapeli (3):
elfutils: remove Elfutils-Exception and include GPLv2 for shared libraries
oeqa/sdk: use bash to execute SDK test commands
openssh: recommend rng-tools with sshd
Mingli Yu (6):
nettle: fix ptest failure
elfutils: add ptest support
elfutils: fix build failure with musl
gcc-sanitizers: fix -Werror=maybe-uninitialized issue
nettle: fix the Segmentation fault
nettle: fix ptest failure
Nathan Rossi (1):
ccmake.bbclass: Fix up un-escaped quotes in output formatting
Naveen Saini (5):
core-image-rt: make sure that we append to DEPENDS
core-image-rt-sdk: make sure that we append to DEPENDS
bitbake.conf: add git-lfs to HOSTTOOLS_NONFATAL
bitbake: bitbake: fetch2/git: git-lfs check
linux-yocto: update genericx86* SRCREV for 4.19
Oleksandr Kravchuk (52):
iproute2: update to 5.0.0
curl: update to 7.64.1
libxext: update to 1.3.4
x11perf: update to 1.6.1
libxdmcp: update to 1.1.3
libxkbfile: update 1.1.0
libxvmc: update to 1.0.11
libxrandr: update to 1.5.2
connman: update to 1.37
ethtool: update to 5.0
tar: update to 1.32
ffmpeg: update to 4.1.2
librepo: update to 1.9.6
libxmu: update to 1.1.3
libxcrypt: update to 4.4.4
wget: update to 1.20.2
libsecret: 0.18.8
createrepo-c: update to 0.12.2
libinput: update to 1.13.0
cronie: update to 1.5.4
libyaml: update to 0.2.2
fontconfig: update to 2.13.1
makedepend: update to 1.0.6
libdrm: update to 2.4.98
libinput: update to 1.13.1
libnotify: update to 0.7.8
libpng: update to 1.6.37
libcroco: update to 0.6.13
libpsl: update to 0.21.0
git: update to 2.21.0
quota: update to 4.05
gnupg: update to 2.2.15
lz4: update to 1.9.0
orc: update to 0.4.29
help2man-native: update to 1.47.10
cups: update to 2.2.11
pixman: update to 0.38.4
libcap: update to 2.27
ninja: add Upstream-Status and SOB for musl patch
python-numpy: update to 1.16.3
python3-pygobject: update to 3.32.1
wget: update to 1.20.3
libsolv: update to 0.7.4
ell: add recipe
sqlite3: update to 3.28.0
kmscube: update to latest revision
coreutils: update to 8.31
mtools: update to 4.0.23
msmtp: update to 1.8.4
wpa-supplicant: update to 2.8
bitbake.conf: use https instead of http
ell: update to 0.20
Paul Barker (3):
oe.path: Add copyhardlink() helper function
license_image: Use new oe.path.copyhardlink() helper
gdb: Fix aarch64 build with musl
Peter Kjellerstedt (1):
systemd: Use PACKAGECONFIG definition to depend on libnss-myhostname
Randy MacLeod (5):
valgrind: update from 3.14.0 to 3.15.0
valgrind: fix vg_regtest return code
valgrind: update the ptest subdirs list
valgrind: adjust test filters and expected output
valgrind: fix call/cachegrind ptests
Richard Purdie (52):
pseudo: Update to gain key bugfixes
python3: Avoid hanging tests
python3: Fix ptest output parsing
go.bbclass: Remove unused override
goarch.bbclass: Simplify logic
e2fsprogs: Skip slow ptest tests
bitbake: bitbake: Update version to 1.42.0
poky.conf: Bump version for 2.7 warrior release
build-appliance-image: Update to warrior head revision
bitbake: bitbake: Post release version bumnp to 1.43
poky.conf: Post release version bump
build-appliance-image: Update to master head revision
Revert "nettle: fix ptest failure"
core-image-sato-sdk-ptest: Try and keep image below 4GB limit
core-image-sato-ptest-fast: Add 'fast' ptest execution image
core-image-sato-sdk-ptest: Include more ptests in ptest image
core-image-sato-sdk-ptest: Add temporary PROVIDES core-image-sato-ptest
resultool/resultutils: Fix module import error
lttng-tools: Add missing patch Upstream-Status
utils/multiprocess_launch: Improve failing subprocess output
python3: Drop ptest hack
ptest-packagelists: Add m4 and gettext as 'fast' ptests
bitbake: knotty: Implement console 'keepalive' output
bitbake: build: Ensure warning for invalid task dependencies is useful
bitbake: build: Disable warning about dependent tasks for now
oeqa/ssh: Avoid unicode decode exceptions
elfutils: ptest fixes
elfutils: Fix ptest compile failures on musl
bitbake: bitbake: Add initial pass of SPDX license headers to source code
bitbake: bitbake: Drop duplicate license boilerplace text
bitbake: bitbake: Strip old editor directives from file headers
bitbake: HEADER: Drop it
openssh/systemd/python/qemu: Fix patch Upstream-Status
scripts/pybootchart: Fix mixed indentation
scripts/pybootchart: Port to python3
scripts/pybootchart/draw: Clarify some variable names
scripts/pybootchart/draw: Fix some bounding problems
coreutils: Fix patch upstream status field
oeqa: Drop OETestID
meta/lib+scripts: Convert to SPDX license headers
oeqa/core/runner: Handle unexpectedSucesses
oeqa/systemd_boot: Drop OETestID
oeqa/runner: Fix subunit setupClass/setupModule failure handling
oeqa/concurrenttest: Patch subunit module to handle classSetup failures
tcmode-default: Add PREFERRED_VERSION for libgfortran
oeqa/selftest: Automate manual pybootchart tests
openssh: Avoid PROVIDES warning from rng-tools dependency
oeqa/target/ssh: Replace suggogatepass with ignoring errors
core-image-sato-sdk-ptest: Tweak size to stay within 4GB limit
valgrind: Include debugging symbols in ptests
dbus-test: Improve ptest dependencies dependencies
ptest: Add RDEPENDS frpm PN-ptest to PN package
Robert Joslyn (1):
qemu: Add PACKAGECONFIG for snappy
Robert Yang (6):
bitbake: bitbake-diffsigs: Use 4 spaces as indent for recursecb
bitbake: bb: siggen: Make dump_sigfile and compare_sigfiles print uuid4
bitbake: bb: siggen: Print more info when basehash are mis-matched
bitbake: BBHandler: Fix addtask and deltask
bitbake: build.py: check dependendent task for addtask
bitbake: tests/parse.py: Add testcase for addtask and deltask
Ross Burton (14):
lttng-tools: fix Upstream-Status
acpica: upgrade to 20190215
staging: add ${datadir}/gtk-doc/html to the sysroot blacklist
mpg123: port to use libsdl2
meta-poky: remove obsolete DISTRO_FEATURES_LIBC
m4: update patch status
packagegroup-core-full-cmdline: remove zlib
wic: change expand behaviour to match docs
wic: add global debug option
gtk-icon-cache: clean up DEPENDS
patch: add minver and maxver parameters
glib-2.0: fix locale handling
glib-2.0: add missing locales for the tests
glib-2.0: fix last failing ptest
Scott Rifenbark (34):
bitbake: poky.ent: Removed "ECLIPSE" entity variables.
bitbake: bitbake-user-manual: Added section on modifying variables
Makefile: Removed Eclipse support
Documentation: Removed customization.xsl files for Eclipse
mega-manual: Removed two Eclipse figures from tarball list
mega-manual, overview-manual: Added updated index releases figure
poky.ent: Removed Eclipse related variables.
mega-manual: Removed the Eclipse chapters
dev-manual: Removed all references to Eclipse.
overview-manual: Removed all references to Eclipse
profile-manual: Removed all references to Eclipse
ref-manual: Removed all references to Eclipse
sdk-manual: Removed all references to Eclipse
sdk-manual: Removed all references to Eclipse
dev-manual; brief-yoctoprojectqs: Updated checkout branch example
dev-manual: Added reasoning blurb to "Viewing Variables" section.
ref-manual: Inserted Migration 2.7 section.
ref-manual: Added Eclipse removal for migration section.
ref-manual: Added "License Value Corrections to migration.
ref-manual: Added Fedora 29 to the supported distros list.
poky.ent: changed 2.7 release variable date to "May 2019"
ref-manual: Review comments applied to 2.7 migration section.
documentation: Prepared for 2.8 release
bsp-guide: Removed inaccurate "container layer" references.
ref-manual: Updated the "Container Layer" term.
bsp-guide: Updated the "beaglebone-yocto.conf" example.
documentation: Cleaned up "plug-in"/"plugin" terminology.
bsp-guide: Updated the BSP kernel recipe example.
ref-manual: Updated PREFERRED_VERSION variable to use 5.0
bsp-guide: More corrections to the BSP Kernel Recipe example
dev-manual: Added cross-link to "Fetchers" section in BB manual.
bitbake: bitbake-user-manual: Added npm to other fetcher list.
overview-manual: Updated SMC section to link to fetchers
ref-manual: Added "npm" information to the SRC_URI variable.
Stefan Kral (1):
bitbake: build: Add verbnote to shell log commands
Stefan Müller-Klieser (1):
cml1.bbclass: fix undefined behavior
Steven Hung (洪于玉) (1):
kernel.bbclass: convert base_do_unpack_append() to a task
Tom Rini (2):
vim: Rework to not rely on relative directories
vim: Update to 8.1.1240
Wenlin Kang (1):
systemd: install libnss-myhostname.so when myhostname be enabled
Yeoh Ee Peng (1):
resulttool/manualexecution: Refactor and remove duplicate code
Yi Zhao (2):
harfbuzz: update source checksums after upstream replaced the tarball
libyaml: update SRC_URI[md5sum] and SRC_URI[sha256sum]
Ying-Chun Liu (PaulLiu) (1):
uboot-sign: Fix u-boot-nodtb symlinks
Zang Ruochen (10):
libatomic-ops:upgrade 7.6.8 -> 7.6.10
libgpg-error:upgrade 1.35 -> 1.36
libxft:upgrade 2.3.2 -> 2.3.3
libxxf86dga:upgrade 1.1.4 -> 1.1.5
nss:upgrade 3.42.1 -> 3.43
sysprof:upgrade 3.30.2 -> 3.32.0
libtirpc:upgrade 1.0.3 -> 1.1.4
xtrans:upgrade 1.3.5 -> 1.4.0
harfbuzz:upgrade 2.3.1 -> 2.4.0
icu: Upgrade 64.1 -> 64.2
Zheng Ruoqin (1):
sanity: check_perl_modules bug fix
sangeeta jain (1):
resulttool/manualexecution: Enable test case configuration option
meta-openembedded: 4a9deabbc8..1ecd8b4364:
Adrian Bunk (34):
linux-atm: Remove DEPENDS on virtual/kernel and PACKAGE_ARCH
linux-atm: Replace bogus on_exit removal with musl-specific hack
ledmon: Mark as incompatible on musl instead of adding bogus patch
efivars: Drop workaround patch for host gcc < 4.7
sshfs-fuse: upgrade 2.8 -> 2.10
wv: upgrade 1.2.4 -> 1.2.9
caps: Upgrade 0.9.24 -> 0.9.26
dvb-apps: Remove dvb-fe-xc5000c-4.1.30.7.fw
schroedinger: Remove the obsolete DEPENDS on liboil
vlc: Remove workaround and patches for problems fixed upstream
Remove liboil
dnrd: Remove stale files of recipe removed 2 years ago
postfix: Upgrade 3.4.1 -> 3.4.5
pptp-linux: Upgrade 1.9.0 -> 1.10.0
dovecot: Upgrade 2.2.36 -> 2.2.36.3
postgresql: Upgrade 11.2 -> 11.3
rocksdb: Upgrade 5.18.2 -> 5.18.3
cloud9: Remove stale files of recipe removed 2 years ago
fluentbit: Upgrade 0.12.1 -> 0.12.19
libcec: Upgrade 4.0.2 -> 4.0.4
libqb: Upgrade 1.0.3 -> 1.0.5
openwsman: Upgrade 2.6.8 -> 2.6.9
glm: Upgrade 0.9.9.3 -> 0.9.9.5
fvwm: Upgrade 2.6.7 -> 2.6.8
augeas: Upgrade 1.11.0 -> 1.12.0
ccid: Upgrade 1.4.24 -> 1.4.30
daemonize: Upgrade 1.7.7 -> 1.7.8
inotify-tools: Upgrade 3.14 -> 3.20.1
liboop: Upgrade 1.0 -> 1.0.1
ode: Remove stale file of recipe removed 2 years ago
openwbem: Remove stale files of recipe removed 2 years ago
catch2: Upgrade 2.6.1 -> 2.7.2
geos: Upgrade 3.4.2 -> 3.4.3
rdfind: Upgrade 1.3.4 -> 1.4.1
Akshay Bhat (3):
python-urllib3: Set CVE_PRODUCT
python3-pillow: Set CVE_PRODUCT
python-requests: Set CVE_PRODUCT
Alistair Francis (3):
mycroft: Update the systemd service to ensure we are ready to start
mycroft: Bump from 19.2.2 to 19.2.3
python-obd: Add missing RDEPENDS
Andreas Müller (33):
gvfs: remove executable permission from systemd user services
udisks2: upgrade 2.8.1 -> 2.8.2
parole: upgrade 1.0.1 -> 1.0.2
ristretto: upgrade 0.8.3 -> 0.8.4
networkmanager: rework musl build
gvfs: remove systemd user unit executable permission adjustment
fltk: upgrade 1.3.4-2 -> 1.3.5
samba: install bundled libs into seperate packages
samba: rework localstatedir package split
fluidsynth: upgrade 2.0.4 -> 2.0.5
xfce4-vala: auto-detect vala api version
gnome-desktop3: set correct meson gtk doc option
vlc: rework qt PACKAGECONFIG
evince: add patch to fix build with recent gobject-introspection
xfce4-cpufreq-plugin: Fix memory leak and reduce CPU load
packagegroup-meta-networking: replace DISTRO_FEATURE by DISTRO_FEATURES
meta-xfce: add meta-networking to layer depends
gtksourceview4: initial add 4.2.0
gtksourceview-classic-light: extend to gtksourceview4
itstool: rework - it went out too early
fontforge: upgrade 20170731 -> 20190413
exo: upgrade 0.12.4 -> 0.12.5
xfce4-places-plugin: upgrade 1.7.0 -> 1.8.0
xfce4-datetime-plugin: upgrade 0.7.0 -> 0.7.1
xfce4-notifyd: upgrade 0.4.3 -> 0.4.4
desktop-file-utils: remove - a more recent version is in oe-core
libwnck3: upgrade 3.30.0 and move to meson build
xfce4-terminal: add vte-prompt to RRECOMMENDS
xfce4-session: get rid of machine-host
xfce4-session: remove strange entry in FILES_${PN}
libxfce4ui: Add PACKAGECONFIG 'gladeui2' for glade (gtk3) support
glade3: move to to meta-xfce
Remove me as maintainer
Andrej Valek (2):
squid: upgrade squid 3.5.28 -> 4.6
ntp: upgrade 4.2.8p12 -> 4.2.8p13
Ankit Navik (1):
libnfc: Initial recipe for Near Field Communication library.
Armin Kuster (1):
meta-filesystems: drop bitbake from README
Changqing Li (5):
gd: fix compile error caused by -Werror=maybe-uninitialized
apache2: add back patch for set perlbin
php: upgrade 7.3.2 -> 7.3.4
postgresql: fix compile error
php: correct httpd path
Chris Garren (1):
python-cryptography: Move linker flag to .inc
Denys Dmytriyenko (1):
v4l-utils: upgrade 1.16.0 -> 1.16.5
Gianfranco Costamagna (1):
cpprest: update to 2.10.13, drop 32bit build fix upstream
Hains van den Bosch (1):
libcdio: update to version 2.1.0
Hongxu Jia (1):
pmtools: use update-alternatives for acpidump
Hongzhi.Song (1):
lua: upgrade from v5.3.4 to v5.3.5
Ivan Maidanski (1):
bdwgc: upgrade 7.6.12 -> 8.0.4
Johannes Pointner (1):
samba: update to 4.8.11
Kai Kang (3):
gvfs: fix typo libexec
drbd: fix compile errors
drbd-utils: fix file conflict with base-files
Khem Raj (3):
redis: Upgrade to 4.0.14
squid: Link with libatomic on mips/ppc
cpupower: Inherit bash completion class
Leon Anavi (1):
openbox: Add python-shell as a runtime dependency
Liwei Song (1):
ledmon: control hard disk led for RAID arrays
Mark Asselstine (1):
xfconf: fix 'Failed to get connection to xfconfd' during do_rootfs
Martin Jansa (13):
ftgl: add x11 to required DISTRO_FEATURES like freeglut
libforms: add x11 to required DISTRO_FEATURES because of libx11
Revert "ell: remove recipe"
ne10: set NE10_TARGET_ARCH with an override instead of anonymous python
libopus: use armv7a, aarch64 overrides when adding ne10 dependency
esound: fix SRC_URI for multilib
opusfile: fix SRC_URI for multilib
miniupnpd: fix SRC_URI for multilib
zbar: fix SRC_URI for multilib
libvncserver: set PV in the recipe
efivar: prevent native efivar depending on target kernel
libdbi-perl: prevent native libdbi-perl depending on target perl
aufs-util: prevent native aufs-util depending on target kernel
Ming Liu (1):
libmodbus: add documentation PACKAGECONFIG
Mingli Yu (6):
indent: Upgrade to 2.2.12
hostapd: Upgrade to 2.8
hwdata: Upgrade to 0.322
rrdtool: Upgrade to 1.7.1
libdev-checklib-perl: add new recipe
libdbd-mysql-perl: Upgrade to 4.050
Nathan Rossi (1):
fatresize_1.0.2.bb: Add recipe for fatresize command line tool
Nicolas Dechesne (3):
cpupower: remove LIC_FILES_CHKSUM
bpftool: remove LIC_FILES_CHKSUM
cannelloni: move from meta-oe to meta-networking
Oleksandr Kravchuk (38):
smcroute: update to 2.4.4
phytool: update to v2
fwknop: update to 2.6.10
cifs-utils: update to 6.9
keepalived: update to 2.0.15
usbredir: update to 0.8.0
open-isns: update to 0.99
nanomsg: update to 1.1.5
stunnel: update to 5.51
babeld: update to 1.8.4
drbd-utils: update to 9.8.0
drbd: update to 9.0.17-1
macchanger: update to 1.7.0
wolfssl: update to 4.0.0
ell: remove recipe
analyze-suspend: update to 5.3
chrony: update to 3.4
nghttp2: update to 1.38
nano: update to 4.1
networkmanager-openvpn: update to 1.8.10
wpan-tools: update to 0.9
uftp: update to 4.9.9
vblade: add UPSTREAM_CHECK_URI
traceroute: add UPSTREAM_CHECK_URI
nuttcp: update to 8.2.2
nfacct: add UPSTREAM_CHECK_URI
nftables: add UPSTREAM_CHECK_URI
libnetfilter-queue: update to 1.0.3
arno-iptables-firewall: update to 2.0.3
ypbind-mt: update to 2.6
ebtables: add UPSTREAM_CHECK_URI
doxygen: replace ninja 1.9.0 fix with official one
libnetfilter-queue: fix update to 1.0.3
networkd-dispatcher: update to 2.0.1
opensaf: update to 5.19.01
libnetfilter-conntrack: update to 1.0.7
conntrack-tools: update to 1.4.5
openvpn: update to 2.4.7
Paolo Valente (1):
s-suite: push SRCREV to version 3.2
Parthiban Nallathambi (6):
python3-aiohttp: add version 3.5.4
python3-supervisor: add version 4.0.2
python3-websocket-client: add version 0.56.0
python3-tinyrecord: add version 0.1.5
python3-sentry-sdk: add version 0.7.14
python3-raven: add version 6.10.0
Pascal Bach (2):
paho-mqtt-c: 1.2.1 -> 1.3.0
thrift: update to 0.12.0
Pavel Modilaynen (1):
jsoncpp: add native BBCLASSEXTEND
Peter Kjellerstedt (2):
apache2: Correct appending to SYSROOT_PREPROCESS_FUNCS
apache2: Correct packaging of build and doc related files
Philip Balister (1):
sip: Update to 4.19.16.
Qi.Chen@windriver.com (4):
multipath-tools: fix up patch to avoid segfault
netkit-rsh: add tag to CVE patch
ipsec-tools: fix CVE tag in patch
gd: set CVE_PRODUCT
Randy MacLeod (1):
imagemagick: update from 7.0.8-35 to 7.0.8-43
Robert Joslyn (5):
gpm: Fix gpm path in unit file
gpm: Add PID file to systemd unit file
gpm: Generate documentation
gpm: Remove duplicate definition of _GNU_SOURCE
gpm: Recipe cleanup
Sean Nyekjaer (2):
cannelloni: new package, CAN to ethernet proxy
ser2net: upgrade to version 3.5.1
Vincent Prince (1):
mongodb: Fix build with gcc
Wenlin Kang (1):
samba: add PACKAGECONFIG for libunwind
Yi Zhao (7):
python-flask-socketio: move to meta-python directory
apache2: upgrade 2.4.34 -> 2.4.39
apache-websocket: upgrade to latest git rev
netkit-rsh: security fixes
openhpi: fix failure of ptest case ohpi_035
openhpi: update openhpi-fix-testfail-errors.patch
phpmyadmin: upgrade 4.8.3 -> 4.8.5
Zang Ruochen (43):
xlsatoms: upgrade 1.1.2 -> 1.1.3
xrdb: upgrade 1.1.1 -> 1.2.0
xrefresh: upgrade 1.0.5 -> 1.0.6
xsetroot: upgrade 1.1.1 -> 1.1.2
xstdcmap: upgrade 1.0.3 -> 1.0.4
xbitmaps: upgrade 1.1.1 -> 1.1.2
wireshark: upgrade 3.0.0 -> 3.0.1
python-cffi: upgrade 1.11.5 -> 1.12.2
python-attrs: upgrade 18.1.0 -> 19.1.0
python-certifi: upgrade 2018.8.13 -> 2019.3.9
python-beabutifulsoup4: upgrade 4.6.0 -> 4.7.1
python-dateutil: upgrade 2.7.3 -> 2.8.0
python-mako: upgrade 1.0.7 -> 1.0.9
python-msgpack: upgrade 0.6.0 -> 0.6.1
python-paste: upgrade 3.0.6 -> 3.0.8
python-psutil: upgrade 5.4.6 -> 5.6.1
python-py: upgrade 1.6.0 -> 1.8.0
python-pymongo: upgrade 3.7.1 -> 3.7.2
python-pyopenssl: upgrade 18.0.0 -> 19.0.0
python-pytz: upgrade 2018.5 -> 2019.1
python-stevedore: upgrade 1.29.0 -> 1.30.1
python-pbr: upgrade 4.2.0 -> 5.1.3
python-cython: upgrade 0.28.5 -> 0.29.6
python-editor: upgrade 1.0.3 -> 1.0.4
python-jinja2: upgrade 2.10 -> 2.10.1
python-lxml: upgrade 4.3.1 -> 4.3.3
python-alembic: upgrade 1.0.0 -> 1.0.9
python-cffi: upgrade 1.12.2 -> 1.12.3
python-hyperlink: upgrade 18.0.0 -> 19.0.0
python-twisted: upgrade 18.4.0 -> 19.2.0
python-zopeinterface: upgrade 4.5.0 -> 4.6.0
python-decorator: upgrade 4.3.0 -> 4.4.0
python-pip: upgrade 18.0 -> 19.1
python-pyasn1: upgrade 0.4.4 -> 0.4.5
libnet-dns-perl: upgrade 1.19 -> 1.20
python-alembic: upgrade 1.0.9 -> 1.0.10
python-cython: upgrade 0.29.6 -> 0.29.7
python-mock: upgrade 2.0.0 -> 3.0.5
python-pbr: upgrade 5.1.3 -> 5.2.0
python-psutil: upgrade 5.6.1 -> 5.6.2
python-pymongo: upgrade 3.7.2 -> 3.8.0
python-pyperclip: upgrade 1.6.2 -> 1.7.0
python-rfc3987: upgrade 1.3.7 -> 1.3.8
leimaohui (3):
To fix confilict error with python3-pbr.
python-pycodestyle: Fix conflict error with python3-pycodestyle during do_rootfs
mozjs: Make mozjs support arm32BE.
meta-raspberrypi: 9ceb84ee9e..7059c37451:
Francesco Giancane (1):
qtbase_%.bbappend: update PACKAGECONFIG name for xkbcommon
Gianluigi Tiesi (1):
psplash: Raise alternatives priority to 200
Martin Jansa (3):
linux_raspberrypi_4.19: Update to 4.19.34
bluez5: apply the same patches and pi-bluetooth dependency for all rpi MACHINEs
userland: use default PACKAGE_ARCH
Paul Barker (3):
linux-raspberrypi: Update 4.14.y kernel
linux-raspberrypi: Switch default back to 4.14.y
linux-raspberrypi 4.9: Drop old version
meta-security: 8a1f54a246..9f5cc2a7eb:
Alexander Kanavin (1):
apparmor: fetch from git
Armin Kuster (15):
clamav runtime: add resolve.conf support
clamav: fix llvm reference version
libldb: add waf-cross-answeres
clamav: runtime fix local routing
clamav: add clamav-cvd package for cvd db
clamav-native: fix new build issue
apparmor: fix fragment for 5.0 kernel
apparmor: add a few more runtime
smack: move patch to smack dir
smack-test: add smack tests from meta-intel-iot-security
samhain: add more tests and fix ret checks
libldb: add earlier version
libseccomp: update to 2.4.1
oe-selftest: add running cve checker
smack: kernel fragment update
Yi Zhao (2):
meta-tpm/conf/layer.conf: update layer dependencies
meta-tpm/README: update
Change-Id: I9e02cb75a779f25fca84395144025410bb609dfa
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
diff --git a/meta-openembedded/meta-filesystems/README b/meta-openembedded/meta-filesystems/README
index 87cb685..edcf8bf 100644
--- a/meta-openembedded/meta-filesystems/README
+++ b/meta-openembedded/meta-filesystems/README
@@ -9,9 +9,6 @@
This layer depends on:
- URI: git://git.openembedded.org/bitbake
- branch: master
-
URI: git://git.openembedded.org/openembedded-core
layers: meta
branch: master
diff --git a/meta-openembedded/meta-filesystems/recipes-filesystems/sshfs-fuse/files/0001-Makefile-fix-path-for-sshfs.1.patch b/meta-openembedded/meta-filesystems/recipes-filesystems/sshfs-fuse/files/0001-Makefile-fix-path-for-sshfs.1.patch
deleted file mode 100644
index c434a03..0000000
--- a/meta-openembedded/meta-filesystems/recipes-filesystems/sshfs-fuse/files/0001-Makefile-fix-path-for-sshfs.1.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From e3cd445a4ee44a16faa646d7b642d02eea62b1f8 Mon Sep 17 00:00:00 2001
-From: Zoltan Kuscsik <zoltan.kuscsik@linaro.org>
-Date: Fri, 1 Jul 2016 09:30:31 +0200
-Subject: [PATCH] Makefile: fix path for sshfs.1
-
-Fix source path when build directory differs
-from the source dir.
-
-Upstream-Status: Accepted
-
-https://github.com/libfuse/sshfs/pull/24
-
----
- Makefile.am | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/Makefile.am b/Makefile.am
-index f003bae..3d8f9cb 100644
---- a/Makefile.am
-+++ b/Makefile.am
-@@ -24,7 +24,7 @@ sshfs.1: sshfs.1.in
- $(AM_V_GEN)sed \
- -e 's,__IDMAP_DEFAULT__,$(IDMAP_DEFAULT),g' \
- -e 's,__UNMOUNT_COMMAND__,$(UNMOUNT_COMMAND),g' \
-- <sshfs.1.in >sshfs.1.tmp || exit 1; \
-+ <$(srcdir)/sshfs.1.in >sshfs.1.tmp || exit 1; \
- mv sshfs.1.tmp sshfs.1
-
- if SSH_NODELAY_SO
---
-1.9.1
-
diff --git a/meta-openembedded/meta-filesystems/recipes-filesystems/sshfs-fuse/sshfs-fuse_2.10.bb b/meta-openembedded/meta-filesystems/recipes-filesystems/sshfs-fuse/sshfs-fuse_2.10.bb
new file mode 100644
index 0000000..582e218
--- /dev/null
+++ b/meta-openembedded/meta-filesystems/recipes-filesystems/sshfs-fuse/sshfs-fuse_2.10.bb
@@ -0,0 +1,16 @@
+SUMMARY = "This is a filesystem client based on the SSH File Transfer Protocol using FUSE"
+AUTHOR = "Miklos Szeredi <miklos@szeredi.hu>"
+HOMEPAGE = "http://fuse.sourceforge.net/sshfs.html"
+SECTION = "console/network"
+LICENSE = "GPLv2"
+DEPENDS = "glib-2.0 fuse"
+LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
+
+SRC_URI = "git://github.com/libfuse/sshfs;branch=sshfs_2.x \
+"
+SRCREV = "42dfaf9a5bdc1ee429c7718e8788ca37a5763e0d"
+S = "${WORKDIR}/git"
+
+inherit autotools pkgconfig
+
+FILES_${PN} += "${libdir}/sshnodelay.so"
diff --git a/meta-openembedded/meta-filesystems/recipes-filesystems/sshfs-fuse/sshfs-fuse_2.8.bb b/meta-openembedded/meta-filesystems/recipes-filesystems/sshfs-fuse/sshfs-fuse_2.8.bb
deleted file mode 100644
index 64ccdac..0000000
--- a/meta-openembedded/meta-filesystems/recipes-filesystems/sshfs-fuse/sshfs-fuse_2.8.bb
+++ /dev/null
@@ -1,16 +0,0 @@
-SUMMARY = "This is a filesystem client based on the SSH File Transfer Protocol using FUSE"
-AUTHOR = "Miklos Szeredi <miklos@szeredi.hu>"
-HOMEPAGE = "http://fuse.sourceforge.net/sshfs.html"
-SECTION = "console/network"
-LICENSE = "GPLv2"
-DEPENDS = "glib-2.0 fuse"
-LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
-
-SRC_URI = "git://github.com/libfuse/sshfs;tag=b2fa7593586b141298e6159f40f521d2b0f4f894 \
- file://0001-Makefile-fix-path-for-sshfs.1.patch"
-
-S = "${WORKDIR}/git"
-
-inherit autotools pkgconfig
-
-FILES_${PN} += "${libdir}/sshnodelay.so"
diff --git a/meta-openembedded/meta-filesystems/recipes-utils/aufs-util/aufs-util_git.bb b/meta-openembedded/meta-filesystems/recipes-utils/aufs-util/aufs-util_git.bb
index 6d71fc0..b4819d8 100644
--- a/meta-openembedded/meta-filesystems/recipes-utils/aufs-util/aufs-util_git.bb
+++ b/meta-openembedded/meta-filesystems/recipes-utils/aufs-util/aufs-util_git.bb
@@ -61,6 +61,6 @@
done
}
-RRECOMMENDS_${PN} += "kernel-module-aufs"
+RRECOMMENDS_${PN}_class-target += "kernel-module-aufs"
BBCLASSEXTEND = "native"
diff --git a/meta-openembedded/meta-filesystems/recipes-utils/fatresize/fatresize_1.0.2.bb b/meta-openembedded/meta-filesystems/recipes-utils/fatresize/fatresize_1.0.2.bb
new file mode 100644
index 0000000..88d495b
--- /dev/null
+++ b/meta-openembedded/meta-filesystems/recipes-utils/fatresize/fatresize_1.0.2.bb
@@ -0,0 +1,15 @@
+SUMMARY = "Resize FAT partitions using libparted"
+SECTION = "console/tools"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
+
+SRC_URI = "git://salsa.debian.org/parted-team/fatresize.git;protocol=https"
+SRCREV = "3f80afc76ad82d4a1b852a6c8dea24cd9f5e7a24"
+
+PV = "1.0.2-11"
+
+S = "${WORKDIR}/git"
+
+DEPENDS = "parted"
+
+inherit autotools pkgconfig
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/desktop-file-utils/desktop-file-utils_0.18.bb b/meta-openembedded/meta-gnome/recipes-gnome/desktop-file-utils/desktop-file-utils_0.18.bb
deleted file mode 100644
index 57a8720..0000000
--- a/meta-openembedded/meta-gnome/recipes-gnome/desktop-file-utils/desktop-file-utils_0.18.bb
+++ /dev/null
@@ -1,18 +0,0 @@
-HOMEPAGE = "http://www.freedesktop.org/wiki/Software/desktop-file-utils"
-DESCRIPTION = "desktop-file-utils contains a few command line utilities for working with desktop entries:"
-LICENSE = "GPLv2+"
-LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
-
-DEPENDS = "glib-2.0"
-
-PR = "r1"
-
-SRC_URI = "http://www.freedesktop.org/software/desktop-file-utils/releases/desktop-file-utils-${PV}.tar.bz2"
-SRC_URI[md5sum] = "d966b743eb394650f98d5dd56b9aece1"
-SRC_URI[sha256sum] = "d9449956c1c8caa75281a3322b2bb433db42610942f0ceeaa65ccd9636c04231"
-
-inherit autotools pkgconfig
-
-CACHED_CONFIGUREVARS += "ac_cv_prog_EMACS=no"
-
-BBCLASSEXTEND = "native"
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/evince/evince/0001-libview-Remove-EvDocumentModel-get-type-function-dec.patch b/meta-openembedded/meta-gnome/recipes-gnome/evince/evince/0001-libview-Remove-EvDocumentModel-get-type-function-dec.patch
new file mode 100644
index 0000000..dcc4a4e
--- /dev/null
+++ b/meta-openembedded/meta-gnome/recipes-gnome/evince/evince/0001-libview-Remove-EvDocumentModel-get-type-function-dec.patch
@@ -0,0 +1,33 @@
+From 0cdce687d3edfa5ac0fd19539ba1815d039026d5 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?I=C3=B1igo=20Mart=C3=ADnez?= <inigomartinez@gmail.com>
+Date: Fri, 7 Sep 2018 22:34:29 +0200
+Subject: [PATCH] libview: Remove EvDocumentModel get type function declaration
+
+The EvDocumentModel class declares the `ev_document_model_get_type`
+function as part of the `GObject` boilerplate code.
+
+However, this declaration is not necessary and also causes a warning
+when introspection data file, `EvinceView-3.0.gir`, is generated.
+
+Upstream-Status: Applied [1]
+
+
+---
+ libview/ev-document-model.h | 1 -
+ 1 file changed, 1 deletion(-)
+
+diff --git a/libview/ev-document-model.h b/libview/ev-document-model.h
+index 784e27d6..6a99e43a 100644
+--- a/libview/ev-document-model.h
++++ b/libview/ev-document-model.h
+@@ -54,7 +54,6 @@ typedef enum {
+ EV_PAGE_LAYOUT_AUTOMATIC
+ } EvPageLayout;
+
+-GType ev_document_model_get_type (void) G_GNUC_CONST;
+ EvDocumentModel *ev_document_model_new (void);
+ EvDocumentModel *ev_document_model_new_with_document (EvDocument *document);
+
+--
+2.20.1
+
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/evince/evince_3.28.2.bb b/meta-openembedded/meta-gnome/recipes-gnome/evince/evince_3.28.2.bb
index 01f581a..d288590 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/evince/evince_3.28.2.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/evince/evince_3.28.2.bb
@@ -6,11 +6,13 @@
inherit gnome pkgconfig gtk-icon-cache gsettings gobject-introspection distro_features_check systemd
-SRC_URI = "${GNOME_MIRROR}/${GNOMEBN}/${@gnome_verdir("${PV}")}/${GNOMEBN}-${PV}.tar.${GNOME_COMPRESS_TYPE};name=archive \
- file://0001-help-remove-YELP-macro.patch \
- file://0001-Add-format-attribute-to-_synctex_malloc.patch \
- file://0001-add-a-formatting-attribute-check.patch \
- "
+SRC_URI = " \
+ ${GNOME_MIRROR}/${GNOMEBN}/${@gnome_verdir("${PV}")}/${GNOMEBN}-${PV}.tar.${GNOME_COMPRESS_TYPE};name=archive \
+ file://0001-help-remove-YELP-macro.patch \
+ file://0001-Add-format-attribute-to-_synctex_malloc.patch \
+ file://0001-add-a-formatting-attribute-check.patch \
+ file://0001-libview-Remove-EvDocumentModel-get-type-function-dec.patch \
+"
SRC_URI[archive.md5sum] = "66aa1766eaaa37536e48def11a0e67a3"
SRC_URI[archive.sha256sum] = "0955d22d85c9f6d322b6cbb464f1cc4c352db619017ec95dad4cc5c3440f73e1"
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gnome-desktop/gnome-desktop3_3.32.0.bb b/meta-openembedded/meta-gnome/recipes-gnome/gnome-desktop/gnome-desktop3_3.32.0.bb
index ffd7dce..0acbb21 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/gnome-desktop/gnome-desktop3_3.32.0.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gnome-desktop/gnome-desktop3_3.32.0.bb
@@ -27,6 +27,7 @@
inherit distro_features_check gtk-doc
REQUIRED_DISTRO_FEATURES = "x11"
+GTKDOC_MESON_OPTION = "gtk_doc"
EXTRA_OEMESON = "-Ddesktop_docs=false"
PACKAGES =+ "libgnome-desktop3"
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gtksourceview/gtksourceview-classic-light_1.0.bb b/meta-openembedded/meta-gnome/recipes-gnome/gtksourceview/gtksourceview-classic-light_1.0.bb
index e7dc0f8..7dabd1e 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/gtksourceview/gtksourceview-classic-light_1.0.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gtksourceview/gtksourceview-classic-light_1.0.bb
@@ -13,9 +13,12 @@
install -m 0644 ${WORKDIR}/classic-light.xml ${D}${datadir}/gtksourceview-2.0/styles/
install -d ${D}${datadir}/gtksourceview-3.0/styles
install -m 0644 ${WORKDIR}/classic-light.xml ${D}${datadir}/gtksourceview-3.0/styles/
+ install -d ${D}${datadir}/gtksourceview-4/styles
+ install -m 0644 ${WORKDIR}/classic-light.xml ${D}${datadir}/gtksourceview-4/styles/
}
FILES_${PN} = " \
${datadir}/gtksourceview-2.0/styles \
${datadir}/gtksourceview-3.0/styles \
+ ${datadir}/gtksourceview-4/styles \
"
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gtksourceview/gtksourceview4_4.2.0.bb b/meta-openembedded/meta-gnome/recipes-gnome/gtksourceview/gtksourceview4_4.2.0.bb
new file mode 100644
index 0000000..10deaff
--- /dev/null
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gtksourceview/gtksourceview4_4.2.0.bb
@@ -0,0 +1,21 @@
+SUMMARY = "Portable C library for multiline text editing"
+HOMEPAGE = "http://projects.gnome.org/gtksourceview/"
+
+LICENSE = "LGPLv2.1"
+LIC_FILES_CHKSUM = "file://COPYING;md5=fbc093901857fcd118f065f900982c24"
+
+DEPENDS = "gtk+3 libxml2 intltool-native gnome-common-native glib-2.0-native"
+
+PNAME = "gtksourceview"
+
+S = "${WORKDIR}/${PNAME}-${PV}"
+
+inherit gnomebase lib_package gettext distro_features_check gtk-doc gobject-introspection
+
+REQUIRED_DISTRO_FEATURES = "x11"
+
+SRC_URI = "http://ftp.gnome.org/pub/gnome/sources/gtksourceview/4.2/${PNAME}-${PV}.tar.xz"
+SRC_URI[md5sum] = "c9e6913c2fd30ca2fcdd71482faf8b99"
+SRC_URI[sha256sum] = "c431eb234dc83c7819e58f77dd2af973252c7750da1c9d125ddc94268f94f675"
+
+FILES_${PN} += "${datadir}/gtksourceview-4"
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gvfs/gvfs_1.40.0.bb b/meta-openembedded/meta-gnome/recipes-gnome/gvfs/gvfs_1.40.0.bb
index df9fd50..7caee27 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/gvfs/gvfs_1.40.0.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gvfs/gvfs_1.40.0.bb
@@ -63,14 +63,14 @@
do_install_append() {
# Fix up permissions on polkit rules.d to work with rpm4 constraints
- chmod 700 ${D}/${datadir}/polkit-1/rules.d
- chown polkitd:root ${D}/${datadir}/polkit-1/rules.d
+ chmod 700 ${D}/${datadir}/polkit-1/rules.d
+ chown polkitd:root ${D}/${datadir}/polkit-1/rules.d
# After rebuilds (not from scracth) it can happen that the executables in
# libexec ar missing executable permission flag. Not sure but it came up
# during transition to meson. Looked into build files and logs but could
# not find suspicious
- for exe in `find ${D}/${libexec}`; do
+ for exe in `find ${D}/${libexecdir}`; do
chmod +x $exe
done
}
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/libwnck/libwnck3_3.30.0.bb b/meta-openembedded/meta-gnome/recipes-gnome/libwnck/libwnck3_3.30.0.bb
deleted file mode 100644
index 9cee9c9..0000000
--- a/meta-openembedded/meta-gnome/recipes-gnome/libwnck/libwnck3_3.30.0.bb
+++ /dev/null
@@ -1,20 +0,0 @@
-SUMMARY = "Window navigation construction toolkit"
-LICENSE = "LGPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=5f30f0716dfdd0d91eb439ebec522ec2"
-
-BPN = "libwnck"
-
-SECTION = "x11/libs"
-DEPENDS = "intltool-native gnome-common-native gtk+3 gdk-pixbuf-native libxres"
-
-PACKAGECONFIG ??= "startup-notification"
-PACKAGECONFIG[startup-notification] = "--enable-startup-notification,--disable-startup-notification,startup-notification"
-
-inherit gnomebase gobject-introspection gtk-doc gettext
-
-SRC_URI[archive.md5sum] = "60109c2ab0b07da1099ee57980054de1"
-SRC_URI[archive.sha256sum] = "ac6d0d2646aa80676d3066651e73abb7bff7ed79be238c9b21a0083e2adc3439"
-
-inherit distro_features_check
-# libxres means x11 only
-REQUIRED_DISTRO_FEATURES = "x11"
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/libwnck/libwnck3_3.32.0.bb b/meta-openembedded/meta-gnome/recipes-gnome/libwnck/libwnck3_3.32.0.bb
new file mode 100644
index 0000000..e4829ea
--- /dev/null
+++ b/meta-openembedded/meta-gnome/recipes-gnome/libwnck/libwnck3_3.32.0.bb
@@ -0,0 +1,24 @@
+SUMMARY = "Window navigation construction toolkit"
+LICENSE = "LGPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=5f30f0716dfdd0d91eb439ebec522ec2"
+
+BPN = "libwnck"
+
+SECTION = "x11/libs"
+DEPENDS = "intltool-native gnome-common-native gtk+3 gdk-pixbuf-native libxres"
+
+PACKAGECONFIG ??= "startup-notification"
+PACKAGECONFIG[startup-notification] = "-Dstartup_notification=enabled,-Dstartup_notification=disabled,startup-notification"
+
+GNOMEBASEBUILDCLASS = "meson"
+GTKDOC_MESON_OPTION = "gtk_doc"
+GIR_MESON_ENABLE_FLAG = 'enabled'
+GIR_MESON_DISABLE_FLAG = 'disabled'
+
+inherit gnomebase gobject-introspection gtk-doc gettext distro_features_check
+
+SRC_URI[archive.md5sum] = "89dbe5a1843fd3745b8b64b34a2ef55d"
+SRC_URI[archive.sha256sum] = "9595835cf28d0fc6af5526a18f77f2fcf3ca8c09e36741bb33915b6e69b8e3ca"
+
+# libxres means x11 only
+REQUIRED_DISTRO_FEATURES = "x11"
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/wv/wv-1.2.4/pkgconfig.patch b/meta-openembedded/meta-gnome/recipes-gnome/wv/wv-1.2.4/pkgconfig.patch
deleted file mode 100644
index 136d893..0000000
--- a/meta-openembedded/meta-gnome/recipes-gnome/wv/wv-1.2.4/pkgconfig.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-Index: wv-1.2.0/wv-1.0.pc.in
-===================================================================
---- wv-1.2.0.orig/wv-1.0.pc.in 2008-03-19 22:25:18.000000000 +0000
-+++ wv-1.2.0/wv-1.0.pc.in 2008-03-19 22:26:32.000000000 +0000
-@@ -6,5 +6,6 @@
- Name: wvWare
- Description: Word Document Filter library and utilities
- Version: @VERSION@
--Libs: -L${libdir} -lwv @WMF_LIBS@ @XML_LIBS@ @GLIB_LIBS@ @GSF_LIBS@ @PNG_LIBS@ @ZLIB_LIBS@ @LIBS@ -lm
--Cflags: -I${includedir}/wv @GSF_CFLAGS@
-+Requires: libgsf-1
-+Libs: -L${libdir} -lwv @WMF_LIBS@ @XML_LIBS@ @PNG_LIBS@ @ZLIB_LIBS@ @LIBS@ -lm
-+Cflags: -I${includedir}/wv
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/wv/wv-1.2.4/0001-configure-use-foreign-mode-to-avoid-errors-with-miss.patch b/meta-openembedded/meta-gnome/recipes-gnome/wv/wv/0001-configure-use-foreign-mode-to-avoid-errors-with-miss.patch
similarity index 100%
rename from meta-openembedded/meta-gnome/recipes-gnome/wv/wv-1.2.4/0001-configure-use-foreign-mode-to-avoid-errors-with-miss.patch
rename to meta-openembedded/meta-gnome/recipes-gnome/wv/wv/0001-configure-use-foreign-mode-to-avoid-errors-with-miss.patch
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/wv/wv-1.2.4/0001-wvRTF.c-Specify-print-format-in-rtf_output.patch b/meta-openembedded/meta-gnome/recipes-gnome/wv/wv/0001-wvRTF.c-Specify-print-format-in-rtf_output.patch
similarity index 100%
rename from meta-openembedded/meta-gnome/recipes-gnome/wv/wv-1.2.4/0001-wvRTF.c-Specify-print-format-in-rtf_output.patch
rename to meta-openembedded/meta-gnome/recipes-gnome/wv/wv/0001-wvRTF.c-Specify-print-format-in-rtf_output.patch
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/wv/wv_1.2.4.bb b/meta-openembedded/meta-gnome/recipes-gnome/wv/wv_1.2.4.bb
deleted file mode 100644
index 03ee5b4..0000000
--- a/meta-openembedded/meta-gnome/recipes-gnome/wv/wv_1.2.4.bb
+++ /dev/null
@@ -1,19 +0,0 @@
-SUMMARY = "Programs for accessing Microsoft Word documents"
-HOMEPAGE = "http://wvware.sourceforge.net/"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=6cbca01f1c9178aca280e8ff64d85b2f"
-
-DEPENDS = "libgsf glib-2.0 libpng"
-
-SRC_URI = "${SOURCEFORGE_MIRROR}/wvware/wv-${PV}.tar.gz \
- file://pkgconfig.patch \
- file://0001-configure-use-foreign-mode-to-avoid-errors-with-miss.patch \
- file://0001-wvRTF.c-Specify-print-format-in-rtf_output.patch \
- "
-
-SRC_URI[md5sum] = "c1861c560491f121e12917fa76970ac5"
-SRC_URI[sha256sum] = "673109910e22d4cf94cc8be4dcb9a0c41b5fbdb1736d4b7bdc7778894d57c2d6"
-
-inherit autotools pkgconfig
-
-EXTRA_OECONF = ""
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/wv/wv_1.2.9.bb b/meta-openembedded/meta-gnome/recipes-gnome/wv/wv_1.2.9.bb
new file mode 100644
index 0000000..72b8508
--- /dev/null
+++ b/meta-openembedded/meta-gnome/recipes-gnome/wv/wv_1.2.9.bb
@@ -0,0 +1,18 @@
+SUMMARY = "Programs for accessing Microsoft Word documents"
+HOMEPAGE = "http://wvware.sourceforge.net/"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=6cbca01f1c9178aca280e8ff64d85b2f"
+
+DEPENDS = "libgsf glib-2.0 libpng"
+
+SRC_URI = "https://www.abisource.com/downloads/wv/${PV}/${BP}.tar.gz \
+ file://0001-configure-use-foreign-mode-to-avoid-errors-with-miss.patch \
+ file://0001-wvRTF.c-Specify-print-format-in-rtf_output.patch \
+ "
+
+SRC_URI[md5sum] = "dbccf2e9f747e50c913b7e3d126b73f7"
+SRC_URI[sha256sum] = "4c730d3b325c0785450dd3a043eeb53e1518598c4f41f155558385dd2635c19d"
+
+inherit autotools pkgconfig
+
+EXTRA_OECONF = ""
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/caps/caps/0001-Do-not-use-obsolete-pow10f-function.patch b/meta-openembedded/meta-multimedia/recipes-multimedia/caps/caps/0001-Do-not-use-obsolete-pow10f-function.patch
deleted file mode 100644
index bd5e1b6..0000000
--- a/meta-openembedded/meta-multimedia/recipes-multimedia/caps/caps/0001-Do-not-use-obsolete-pow10f-function.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-From 0cc7362e171616dcfeb93c6e1576362761bf14e5 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Wed, 31 Jan 2018 18:37:16 -0800
-Subject: [PATCH] Do not use obsolete pow10f() function
-
-exp10 name is standardized in TS 18661-4 and its
-available in glibc since version 2.1
-it has been now removed from glibc 2.27+
-
-Upstream-Status: Pending
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- dsp/v4f_IIR2.h | 6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/dsp/v4f_IIR2.h b/dsp/v4f_IIR2.h
-index a68ecf5..ebd1234 100644
---- a/dsp/v4f_IIR2.h
-+++ b/dsp/v4f_IIR2.h
-@@ -33,7 +33,7 @@
- namespace DSP {
-
- #ifdef __APPLE__
--inline float pow10f(float f) {return pow(10,f);}
-+inline float exp10f(float f) {return __exp10f(f);}
- #endif
-
- class RBJv4
-@@ -142,7 +142,7 @@ class IIR2v4
- /* A = pow (10, gain / 40) */
- v4f_t A = (v4f_t) {.025,.025,.025,.025};
- A *= gain;
-- A = v4f_map<pow10f> (A);
-+ A = v4f_map<exp10f> (A);
-
- RBJv4 p (f, Q);
-
-@@ -429,7 +429,7 @@ class IIR2v4Bank
- /* A = pow (10, gain / 40) */
- v4f_t A = (v4f_t) {.025,.025,.025,.025};
- A *= gain[i];
-- A = v4f_map<pow10f> (A);
-+ A = v4f_map<exp10f> (A);
-
- RBJv4 p (f[i], Q[i]);
-
---
-2.16.1
-
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/caps/caps/Avoid-ambiguity-in-div-invocation.patch b/meta-openembedded/meta-multimedia/recipes-multimedia/caps/caps/Avoid-ambiguity-in-div-invocation.patch
deleted file mode 100644
index 1a050af..0000000
--- a/meta-openembedded/meta-multimedia/recipes-multimedia/caps/caps/Avoid-ambiguity-in-div-invocation.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From 1ea09653692efdd6443fb6770e8523bf6c9e49b9 Mon Sep 17 00:00:00 2001
-From: Fabio Berton <fabio.berton@ossystems.com.br>
-Date: Thu, 6 Oct 2016 11:54:07 -0300
-Subject: Avoid ambiguity in div invocation
-Organization: O.S. Systems Software LTDA.
-
-Patch from:
-https://anonscm.debian.org/cgit/pkg-multimedia/caps.git/commit/?id=9a99c225fb813ae69f146e3d90f7b47bdbd97708
-
-Upstream-Status: Pending
-
-Signed-off-by: Fabio Berton <fabio.berton@ossystems.com.br>
----
- AutoFilter.cc | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/AutoFilter.cc b/AutoFilter.cc
-index fc087d0..bd6b12f 100644
---- a/AutoFilter.cc
-+++ b/AutoFilter.cc
-@@ -69,7 +69,7 @@ AutoFilter::activate()
- void
- AutoFilter::cycle (uint frames)
- {
-- div_t qr = div (frames, blocksize);
-+ div_t qr = div ((int)frames, (int)blocksize);
- int blocks = qr.quot;
- if (qr.rem) ++blocks;
- double over_blocks = 1./blocks;
---
-2.1.4
-
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/caps/caps_0.9.24.bb b/meta-openembedded/meta-multimedia/recipes-multimedia/caps/caps_0.9.24.bb
deleted file mode 100644
index 0404bd5..0000000
--- a/meta-openembedded/meta-multimedia/recipes-multimedia/caps/caps_0.9.24.bb
+++ /dev/null
@@ -1,29 +0,0 @@
-DESCRIPTION = "The CAPS Audio Plugin Suite - LADSPA plugin suite"
-HOMEPAGE = "http://quitte.de/dsp/caps.html"
-LICENSE = "GPL-3"
-LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
-
-SRC_URI = "http://quitte.de/dsp/${BPN}_${PV}.tar.bz2 \
- file://Avoid-ambiguity-in-div-invocation.patch \
- file://0001-basic.h-Use-c99-supported-stdint-types.patch \
- file://append_ldflags.patch \
- file://0001-Do-not-use-obsolete-pow10f-function.patch \
- "
-
-SRC_URI[md5sum] = "c1d634038dcb54702306c0e30cb1c626"
-SRC_URI[sha256sum] = "f746feba57af316b159f0169de5d78b4fd1064c2c0c8017cb5856b2f22e83f20"
-
-EXTRA_OEMAKE = " \
- CC='${CXX}' \
- CFLAGS='${CFLAGS} -ffast-math -funroll-loops -fPIC -DPIC' \
- ARCH='' \
-"
-do_compile() {
- oe_runmake all
-}
-
-do_install() {
- install -Dm 0644 caps.so ${D}${libdir}/ladspa/caps.so
-}
-
-FILES_${PN} = "${libdir}/ladspa/"
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/caps/caps_0.9.26.bb b/meta-openembedded/meta-multimedia/recipes-multimedia/caps/caps_0.9.26.bb
new file mode 100644
index 0000000..46bcf6c
--- /dev/null
+++ b/meta-openembedded/meta-multimedia/recipes-multimedia/caps/caps_0.9.26.bb
@@ -0,0 +1,27 @@
+DESCRIPTION = "The CAPS Audio Plugin Suite - LADSPA plugin suite"
+HOMEPAGE = "http://quitte.de/dsp/caps.html"
+LICENSE = "GPL-3"
+LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
+
+SRC_URI = "http://quitte.de/dsp/${BPN}_${PV}.tar.bz2 \
+ file://0001-basic.h-Use-c99-supported-stdint-types.patch \
+ file://append_ldflags.patch \
+ "
+
+SRC_URI[md5sum] = "36b30c7c7db2d2bc5f4f54077e97b5ee"
+SRC_URI[sha256sum] = "e7496c5bce05abebe3dcb635926153bbb58a9337a6e423f048d3b61d8a4f98c9"
+
+EXTRA_OEMAKE = " \
+ CC='${CXX}' \
+ CFLAGS='${CFLAGS} -ffast-math -funroll-loops -fPIC -DPIC' \
+ ARCH='' \
+"
+do_compile() {
+ oe_runmake all
+}
+
+do_install() {
+ install -Dm 0644 caps.so ${D}${libdir}/ladspa/caps.so
+}
+
+FILES_${PN} = "${libdir}/ladspa/"
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/dvb-apps/dvb-apps_1.1.1.bb b/meta-openembedded/meta-multimedia/recipes-multimedia/dvb-apps/dvb-apps_1.1.1.bb
index ff9eabb..2aa7cce 100644
--- a/meta-openembedded/meta-multimedia/recipes-multimedia/dvb-apps/dvb-apps_1.1.1.bb
+++ b/meta-openembedded/meta-multimedia/recipes-multimedia/dvb-apps/dvb-apps_1.1.1.bb
@@ -5,7 +5,6 @@
SRCREV = "3d43b280298c39a67d1d889e01e173f52c12da35"
SRC_URI = "hg://linuxtv.org/hg;module=dvb-apps;protocol=http \
- file://dvb-fe-xc5000c-4.1.30.7.fw \
file://dvb-scan-table \
file://0001-Fix-generate-keynames.patch \
file://0002-Fix-compiler-warning-flags.patch \
@@ -31,10 +30,6 @@
install -d ${D}/${docdir}/dvb-apps/scan
install -d ${D}/${docdir}/dvb-apps/szap
chmod a+rx ${D}/${libdir}/*.so*
- if [ "${DVB_WINTV_TUNER}" = "true" ]; then
- install -d ${D}/lib/firmware
- install -m 0644 ${WORKDIR}/*.fw ${D}/lib/firmware/
- fi
cp -R --no-dereference --preserve=mode,links ${S}/util/szap/channels-conf* ${D}/${docdir}/dvb-apps/szap/
cp -R --no-dereference --preserve=mode,links ${S}/util/szap/README ${D}/${docdir}/dvb-apps/szap/
cp -R --no-dereference --preserve=mode,links ${WORKDIR}/dvb-scan-table/* ${D}/usr/share/dvb
@@ -64,7 +59,7 @@
RCONFLICTS_dvb-evtest = "evtest"
-FILES_${PN} = "${bindir} ${datadir}/dvb lib/firmware"
+FILES_${PN} = "${bindir} ${datadir}/dvb"
FILES_${PN}-doc = ""
FILES_${PN}-dev = "${includedir}"
FILES_dvb-evtest = "${bindir}/evtest"
@@ -103,5 +98,4 @@
INSANE_SKIP_${PN} = "ldflags"
INSANE_SKIP_${PN}-dev = "ldflags"
-DVB_WINTV_TUNER = "true"
TARGET_CC_ARCH += "${LDFLAGS}"
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/dvb-apps/files/dvb-fe-xc5000c-4.1.30.7.fw b/meta-openembedded/meta-multimedia/recipes-multimedia/dvb-apps/files/dvb-fe-xc5000c-4.1.30.7.fw
deleted file mode 100644
index 5786ffa..0000000
--- a/meta-openembedded/meta-multimedia/recipes-multimedia/dvb-apps/files/dvb-fe-xc5000c-4.1.30.7.fw
+++ /dev/null
Binary files differ
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/fluidsynth/fluidsynth.inc b/meta-openembedded/meta-multimedia/recipes-multimedia/fluidsynth/fluidsynth.inc
index 810ca99..234be02 100644
--- a/meta-openembedded/meta-multimedia/recipes-multimedia/fluidsynth/fluidsynth.inc
+++ b/meta-openembedded/meta-multimedia/recipes-multimedia/fluidsynth/fluidsynth.inc
@@ -5,8 +5,8 @@
LIC_FILES_CHKSUM = "file://LICENSE;md5=fc178bcd425090939a8b634d1d6a9594"
SRC_URI = "git://github.com/FluidSynth/fluidsynth.git"
-SRCREV = "9671e412feedb90325e038c3aaf5d543eebc20c0"
+SRCREV = "7f11a9bf5c7304e04309a6ec9fc515ee815524bf"
S = "${WORKDIR}/git"
-PV = "2.0.4"
+PV = "2.0.5"
inherit cmake pkgconfig lib_package
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/mycroft/files/mycroft.service b/meta-openembedded/meta-multimedia/recipes-multimedia/mycroft/files/mycroft.service
index 04cf436..28729f6 100644
--- a/meta-openembedded/meta-multimedia/recipes-multimedia/mycroft/files/mycroft.service
+++ b/meta-openembedded/meta-multimedia/recipes-multimedia/mycroft/files/mycroft.service
@@ -1,10 +1,11 @@
[Unit]
Description=Mycroft
-DefaultDependencies=no
-After=mycroft-setup
+RequiresMountsFor=/var
+After=mycroft-setup.service
[Service]
Type=forking
+WorkingDirectory=@LIBDIR@/mycroft
ExecStartPre=mkdir -p /var/log/mycroft
ExecStart=@LIBDIR@/mycroft/start-mycroft.sh all
ExecStop=@LIBDIR@/mycroft/stop-mycroft.sh all
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/mycroft/mycroft_19.2.2.bb b/meta-openembedded/meta-multimedia/recipes-multimedia/mycroft/mycroft_19.2.2.bb
deleted file mode 100644
index c8ae534..0000000
--- a/meta-openembedded/meta-multimedia/recipes-multimedia/mycroft/mycroft_19.2.2.bb
+++ /dev/null
@@ -1,73 +0,0 @@
-SUMMARY = "Mycroft is a hackable open source voice assistant."
-DESCRIPTION = "Mycroft is the world’s first open source assistant. "
-HOMEPAGE = "https://mycroft.ai/"
-SECTION = "multimedia"
-
-LICENSE = "Apache-2.0"
-LIC_FILES_CHKSUM = "file://LICENSE.md;md5=79aa497b11564d1d419ee889e7b498f6"
-
-SRCREV = "6706c377820912f83c1838d9eb32950ca9e39ec7"
-SRC_URI = "git://github.com/MycroftAI/mycroft-core.git;branch=master \
- file://0001-Remove-python-venv.patch \
- file://0002-pip-requirements-Remove-ones-installed-by-OE.patch \
- file://0003-Use-python3-and-pip3-instead-of-python-and-pip.patch \
- file://0004-dev_setup.sh-Remove-the-git-dependency.patch \
- file://0005-dev_setup.sh-Remove-the-test-setup-dependency.patch \
- file://dev_opts.json \
- file://mycroft-setup.service \
- file://mycroft.service \
- "
-
-S = "${WORKDIR}/git"
-
-inherit systemd
-
-# Mycroft installs itself on the host
-# Just copy the setup files to the rootfs
-do_install() {
- install -d ${D}${libdir}/
- cp -r ${B} ${D}${libdir}/mycroft
- rm -r ${D}${libdir}/mycroft/.git
-
- # Install the dev opts so it doesn't ask us on initial setup.
- install -m 644 ${WORKDIR}/dev_opts.json ${D}${libdir}/mycroft/.dev_opts.json
-
- if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then
- install -d ${D}${systemd_unitdir}/system
- install -m 644 ${WORKDIR}/mycroft-setup.service ${D}${systemd_unitdir}/system
- sed -i -e 's,@LIBDIR@,${libdir},g' ${D}${systemd_unitdir}/system/mycroft-setup.service
- fi
-
- if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then
- install -d ${D}${systemd_unitdir}/system
- install -m 644 ${WORKDIR}/mycroft.service ${D}${systemd_unitdir}/system
- sed -i -e 's,@LIBDIR@,${libdir},g' ${D}${systemd_unitdir}/system/mycroft.service
- fi
-}
-
-FILES_${PN} += "${libdir}/mycroft"
-
-RDEPENDS_${PN} = "python3"
-
-# Install as many Python packages as we can.
-# We don't yet have all the packages in meta-python.
-# Install as many as we can and we will install the rest on the target with pip.
-# TODO: Add all the remaining packages and remove pip
-RDEPENDS_${PN} += "python3-pip \
- python3-requests python3-pillow \
- python3-tornado python3-pyyaml \
- python3-pyalsaaudio python3-inflection \
- python3-pyserial python3-psutil \
- python3-pyaudio python3-fann2 \
- python3-pocketsphinx \
- python3-xxhash \
- "
-
-# Mycroft uses Alsa and PulseAudio
-RDEPENDS_${PN} += "alsa-oss alsa-utils alsa-plugins alsa-tools"
-RDEPENDS_${PN} += "pulseaudio pulseaudio-misc pulseaudio-server"
-
-# Mycroft can do this itself on the target, but it's quicker to do it here
-RDEPENDS_${PN} += "mimic"
-
-SYSTEMD_SERVICE_${PN} = "mycroft-setup.service mycroft.service"
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/mycroft/mycroft_19.2.3.bb b/meta-openembedded/meta-multimedia/recipes-multimedia/mycroft/mycroft_19.2.3.bb
new file mode 100644
index 0000000..becd0bf
--- /dev/null
+++ b/meta-openembedded/meta-multimedia/recipes-multimedia/mycroft/mycroft_19.2.3.bb
@@ -0,0 +1,74 @@
+SUMMARY = "Mycroft is a hackable open source voice assistant."
+DESCRIPTION = "Mycroft is the world’s first open source assistant. "
+HOMEPAGE = "https://mycroft.ai/"
+SECTION = "multimedia"
+
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://LICENSE.md;md5=79aa497b11564d1d419ee889e7b498f6"
+
+SRCREV = "4b45db34ecd95b62ef2b66a8e5180c66ca791a21"
+SRC_URI = "git://github.com/MycroftAI/mycroft-core.git;branch=master \
+ file://0001-Remove-python-venv.patch \
+ file://0002-pip-requirements-Remove-ones-installed-by-OE.patch \
+ file://0003-Use-python3-and-pip3-instead-of-python-and-pip.patch \
+ file://0004-dev_setup.sh-Remove-the-git-dependency.patch \
+ file://0005-dev_setup.sh-Remove-the-test-setup-dependency.patch \
+ file://dev_opts.json \
+ file://mycroft-setup.service \
+ file://mycroft.service \
+ "
+
+S = "${WORKDIR}/git"
+
+inherit systemd
+
+# Mycroft installs itself on the host
+# Just copy the setup files to the rootfs
+do_install() {
+ install -d ${D}${libdir}/
+ cp -r ${B} ${D}${libdir}/mycroft
+ rm -r ${D}${libdir}/mycroft/.git
+
+ # Install the dev opts so it doesn't ask us on initial setup.
+ install -m 644 ${WORKDIR}/dev_opts.json ${D}${libdir}/mycroft/.dev_opts.json
+
+ if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then
+ install -d ${D}${systemd_unitdir}/system
+ install -m 644 ${WORKDIR}/mycroft-setup.service ${D}${systemd_unitdir}/system
+ sed -i -e 's,@LIBDIR@,${libdir},g' ${D}${systemd_unitdir}/system/mycroft-setup.service
+ fi
+
+ if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then
+ install -d ${D}${systemd_unitdir}/system
+ install -m 644 ${WORKDIR}/mycroft.service ${D}${systemd_unitdir}/system
+ sed -i -e 's,@LIBDIR@,${libdir},g' ${D}${systemd_unitdir}/system/mycroft.service
+ fi
+}
+
+FILES_${PN} += "${libdir}/mycroft"
+
+RDEPENDS_${PN} = "python3"
+
+# Install as many Python packages as we can.
+# We don't yet have all the packages in meta-python.
+# Install as many as we can and we will install the rest on the target with pip.
+# TODO: Add all the remaining packages and remove pip
+RDEPENDS_${PN} += "python3-pip \
+ python3-requests python3-pillow \
+ python3-tornado python3-pyyaml \
+ python3-pyalsaaudio python3-inflection \
+ python3-pyserial python3-psutil \
+ python3-pyaudio python3-fann2 \
+ python3-pocketsphinx \
+ python3-xxhash \
+ "
+
+# Mycroft uses Alsa, PulseAudio and Flac
+RDEPENDS_${PN} += "alsa-oss alsa-utils alsa-plugins alsa-tools"
+RDEPENDS_${PN} += "pulseaudio pulseaudio-misc pulseaudio-server"
+RDEPENDS_${PN} += "flac"
+
+# Mycroft can do this itself on the target, but it's quicker to do it here
+RDEPENDS_${PN} += "mimic"
+
+SYSTEMD_SERVICE_${PN} = "mycroft-setup.service mycroft.service"
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/opusfile/opusfile_0.10.bb b/meta-openembedded/meta-multimedia/recipes-multimedia/opusfile/opusfile_0.10.bb
index 189dc87..3f6dbb8 100644
--- a/meta-openembedded/meta-multimedia/recipes-multimedia/opusfile/opusfile_0.10.bb
+++ b/meta-openembedded/meta-multimedia/recipes-multimedia/opusfile/opusfile_0.10.bb
@@ -7,7 +7,7 @@
LICENSE = "BSD-3-Clause"
LIC_FILES_CHKSUM = "file://COPYING;md5=6ac22b992dde6a891f8949c3e2da8576"
-SRC_URI = "https://downloads.xiph.org/releases/opus/${PN}-${PV}.tar.gz"
+SRC_URI = "https://downloads.xiph.org/releases/opus/${BP}.tar.gz"
SRC_URI[md5sum] = "ab3f7d15d766f5b36b0951ee435f9ebf"
SRC_URI[sha256sum] = "48e03526ba87ef9cf5f1c47b5ebe3aa195bd89b912a57060c36184a6cd19412f"
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/packagegroups/packagegroup-meta-multimedia.bb b/meta-openembedded/meta-multimedia/recipes-multimedia/packagegroups/packagegroup-meta-multimedia.bb
index b048ac6..365618d 100644
--- a/meta-openembedded/meta-multimedia/recipes-multimedia/packagegroups/packagegroup-meta-multimedia.bb
+++ b/meta-openembedded/meta-multimedia/recipes-multimedia/packagegroups/packagegroup-meta-multimedia.bb
@@ -48,5 +48,5 @@
"
RDEPENDS_packagegroup-meta-multimedia-support = "\
- liboil libmediaart libmediaart-2.0 gst-instruments libsrtp crossguid \
+ libmediaart libmediaart-2.0 gst-instruments libsrtp crossguid \
"
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/schroedinger/schroedinger_1.0.11.bb b/meta-openembedded/meta-multimedia/recipes-multimedia/schroedinger/schroedinger_1.0.11.bb
index d38eb94..d026c69 100644
--- a/meta-openembedded/meta-multimedia/recipes-multimedia/schroedinger/schroedinger_1.0.11.bb
+++ b/meta-openembedded/meta-multimedia/recipes-multimedia/schroedinger/schroedinger_1.0.11.bb
@@ -8,7 +8,7 @@
file://COPYING.MIT;md5=8b345371b3536b4ce37ead1eafc88221 \
file://COPYING.MPL;md5=0117647fecb9a932c25a7bbfc0333c37"
-DEPENDS = "liboil orc-native orc"
+DEPENDS = "orc-native orc"
SRC_URI = "http://www.diracvideo.org/download/schroedinger/${BP}.tar.gz \
file://configure.ac.patch"
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc.inc b/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc.inc
index 19ac820..9bbc668 100644
--- a/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc.inc
+++ b/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc.inc
@@ -36,12 +36,17 @@
--enable-realrtsp \
--disable-libtar \
--enable-avcodec \
- ac_cv_path_MOC=${STAGING_BINDIR_NATIVE}/moc4 \
- ac_cv_path_RCC=${STAGING_BINDIR_NATIVE}/rcc4 \
- ac_cv_path_UIC=${STAGING_BINDIR_NATIVE}/uic4 \
+ ac_cv_path_MOC=${STAGING_BINDIR_NATIVE}${QT_DIR_NAME}/moc \
+ ac_cv_path_RCC=${STAGING_BINDIR_NATIVE}${QT_DIR_NAME}/rcc \
+ ac_cv_path_UIC=${STAGING_BINDIR_NATIVE}${QT_DIR_NAME}/uic \
"
-PACKAGECONFIG ?= " live555 dc1394 dv1394 notify fontconfig freetype dvdread png ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', '', d)}"
+PACKAGECONFIG ?= " \
+ live555 dc1394 dv1394 notify fontconfig freetype dvdread png \
+ ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', '', d)} \
+"
+
+inherit ${@bb.utils.contains('PACKAGECONFIG', 'qt5', 'qmake5_paths', '', d)}
PACKAGECONFIG[mad] = "--enable-mad,--disable-mad,libmad"
PACKAGECONFIG[a52] = "--enable-a52,--disable-a52,liba52"
@@ -54,7 +59,7 @@
PACKAGECONFIG[speex] = "--enable-speex,--disable-speex,speex"
PACKAGECONFIG[gstreamer] = "--enable-gst-decode,--disable-gst-decode,gstreamer1.0 gstreamer1.0-plugins-base gst-plugins-bad"
PACKAGECONFIG[vpx] = "--enable-vpx,--disable-vpx, libvpx"
-PACKAGECONFIG[qt4] = "--enable-qt,--disable-qt, qt4-x11-free"
+PACKAGECONFIG[qt5] = "--enable-qt,--disable-qt, qtbase-native qtx11extras qtsvg"
PACKAGECONFIG[freerdp] = "--enable-freerdp,--disable-freerdp, freerdp"
PACKAGECONFIG[dvbpsi] = "--enable-dvbpsi,--disable-dvbpsi, libdvbpsi"
PACKAGECONFIG[samba] = "--enable-smbclient,--disable-smbclient, samba"
@@ -76,12 +81,13 @@
PACKAGECONFIG[png] = "--enable-png,--disable-png,libpng"
PACKAGECONFIG[vdpau] = "--enable-vdpau,--disable-vdpau,libvdpau"
-do_configure_prepend() {
- cp ${STAGING_DATADIR}/libtool/config.* ${S}/autotools/ || true
-}
-
do_configure_append() {
sed -i -e s:'${top_builddir_slash}libtool':'${top_builddir_slash}'${TARGET_SYS}-libtool:g ${B}/doltlibtool
+
+ # moc needs support: precreate build paths
+ for qtpath in adapters components/epg components/playlist components/sout dialogs managers styles util/buttons; do
+ mkdir -p "${B}/modules/gui/qt/$qtpath"
+ done
}
# This recipe packages vlc as a library as well, so qt4 dependencies
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/0002-glibc-does-not-provide-strlcpy.patch b/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/0002-glibc-does-not-provide-strlcpy.patch
deleted file mode 100644
index 3db3df3..0000000
--- a/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/0002-glibc-does-not-provide-strlcpy.patch
+++ /dev/null
@@ -1,15 +0,0 @@
---- a/src/input/subtitles.c
-+++ b/src/input/subtitles.c
-@@ -42,6 +42,12 @@
- #include "input_internal.h"
-
- /**
-+ * Drepper's alternative
-+ * http://en.wikibooks.org/wiki/C_Programming/C_Reference/nonstandard/strlcpy
-+ */
-+#define strlcpy(dst, src, n) *((char* ) mempcpy(dst, src, n)) = '\0'
-+
-+/**
- * The possible extensions for subtitle files we support
- */
- static const char *const sub_exts[] = { SLAVE_SPU_EXTENSIONS, "" };
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/0005-libpostproc-header-check.patch b/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/0005-libpostproc-header-check.patch
deleted file mode 100644
index 77a7d61..0000000
--- a/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc/0005-libpostproc-header-check.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-* Also look for postprocess.h under libpostproc/
-
-Upstream-status: Pending
-
---- a/configure.ac
-+++ b/configure.ac
-@@ -2589,7 +2589,7 @@ then
- VLC_SAVE_FLAGS
- CPPFLAGS="${CPPFLAGS} ${POSTPROC_CFLAGS}"
- CFLAGS="${CFLAGS} ${POSTPROC_CFLAGS}"
-- AC_CHECK_HEADERS(postproc/postprocess.h)
-+ AC_CHECK_HEADERS(postproc/postprocess.h,[],[AC_CHECK_HEADERS(libpostproc/postprocess.h)])
- VLC_ADD_PLUGIN([postproc])
- VLC_RESTORE_FLAGS
- ],[
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc_3.0.6.bb b/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc_3.0.6.bb
index 1ae213f..fcd321c 100644
--- a/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc_3.0.6.bb
+++ b/meta-openembedded/meta-multimedia/recipes-multimedia/vlc/vlc_3.0.6.bb
@@ -1,13 +1,8 @@
require ${BPN}.inc
-# work around build failure
-EXTRA_OECONF += " --enable-libxml2=no"
-
LDFLAGS_append_riscv64 = " -pthread"
SRC_URI += " \
- file://0002-glibc-does-not-provide-strlcpy.patch \
- file://0005-libpostproc-header-check.patch \
file://0006-make-opencv-configurable.patch \
file://0007-use-vorbisidec.patch \
file://0008-fix-luaL-checkint.patch \
diff --git a/meta-openembedded/meta-multimedia/recipes-support/liboil/liboil-0.3.17/0001-Fix-enable-vfp-flag.patch b/meta-openembedded/meta-multimedia/recipes-support/liboil/liboil-0.3.17/0001-Fix-enable-vfp-flag.patch
deleted file mode 100644
index aff1cb1..0000000
--- a/meta-openembedded/meta-multimedia/recipes-support/liboil/liboil-0.3.17/0001-Fix-enable-vfp-flag.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-Upstream-Status: Inappropriate [configuration]
-
-From 1921498bcc06408e8b051a3a9e9ce4182998f748 Mon Sep 17 00:00:00 2001
-From: David Schleef <ds@schleef.org>
-Date: Fri, 8 Apr 2011 10:05:49 -0700
-Subject: [PATCH 10/10] Fix --enable-vfp flag
-
-Patch from Christophe Lyon, fixes #36084.
----
- configure.ac | 4 ++--
- liboil/arm/Makefile.am | 1 +
- 2 files changed, 3 insertions(+), 2 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index 98c81fb..407d88c 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -188,8 +188,8 @@ fi
- AC_ARG_ENABLE(vfp,
- AC_HELP_STRING([--enable-vfp],[compile with Vector Floating-point unit support]),
- enable_vfp=$enableval,enable_vfp=yes)
--if test "x$enable-vfp" = xyes -a x$HAVE_GCC_ASM = xyes -a x$HAVE_ARM = xyes; then
-- AS_COMPILER_FLAG(["-Wa,-mfpu=vfp"],
-+if test "x$enable_vfp" = xyes -a x$HAVE_GCC_ASM = xyes -a x$HAVE_ARM = xyes; then
-+ AS_COMPILER_FLAG(["-mfpu=vfp"],
- [VFP_CFLAGS="$VFP_CFLAGS -mfpu=vfp"],
- true)
- #AS_COMPILER_FLAG(["-Wa,-mfloat-abi=softfp"],
-diff --git a/liboil/arm/Makefile.am b/liboil/arm/Makefile.am
-index ead08ed..cd8d9fa 100644
---- a/liboil/arm/Makefile.am
-+++ b/liboil/arm/Makefile.am
-@@ -6,4 +6,5 @@ libarm_la_SOURCES = \
- math_vfp_asm.S
-
- libarm_la_CFLAGS = $(LIBOIL_CFLAGS) $(VFP_CFLAGS)
-+libarm_la_CCASFLAGS = $(LIBOIL_CFLAGS) $(VFP_CFLAGS)
-
---
-1.7.6
-
diff --git a/meta-openembedded/meta-multimedia/recipes-support/liboil/liboil-0.3.17/0001-math_vfp_asm.S-Convert-fldmia-fstmia-instructions-to.patch b/meta-openembedded/meta-multimedia/recipes-support/liboil/liboil-0.3.17/0001-math_vfp_asm.S-Convert-fldmia-fstmia-instructions-to.patch
deleted file mode 100644
index 0590380..0000000
--- a/meta-openembedded/meta-multimedia/recipes-support/liboil/liboil-0.3.17/0001-math_vfp_asm.S-Convert-fldmia-fstmia-instructions-to.patch
+++ /dev/null
@@ -1,257 +0,0 @@
-From 02a138f0b247fb08b799f32c49b35912b2921321 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Tue, 12 Feb 2019 11:38:46 -0800
-Subject: [PATCH] math_vfp_asm.S: Convert fldmia/fstmia instructions to UAL
- syntax for clang
-
-This is flagged with clang internal assembler, since it does not allow
-non UAL syntax
-
-Upstream-Status: Pending
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- liboil/arm/math_vfp_asm.S | 94 +++++++++++++++++++--------------------
- 1 file changed, 47 insertions(+), 47 deletions(-)
-
-diff --git a/liboil/arm/math_vfp_asm.S b/liboil/arm/math_vfp_asm.S
-index ae5c803..3dd14d9 100644
---- a/liboil/arm/math_vfp_asm.S
-+++ b/liboil/arm/math_vfp_asm.S
-@@ -25,7 +25,7 @@
- */
-
- #if defined(__VFP_FP__) && !defined(__SOFTFP__)
--/*
-+/*
- ** compile with -mcpu=arm1136j-s -mfpu=vfp -mfloat-abi=softfp
- **
- ** void vfp_add_f32 (float *d, const float *s1, const float *s2, int n);
-@@ -48,10 +48,10 @@
- ands ip, r3, #7; /* ip = n % 8 */ \
- beq vfp_ ## fname ## _unroll; /* if ip == 0 goto prep_loop2 */ \
- vfp_ ## fname ## _loop1: \
-- fldmias r1!, {s0}; \
-- fldmias r2!, {s1}; \
-+ vldmia.f32 r1!, {s0}; \
-+ vldmia.f32 r2!, {s1}; \
- ## finst ##s s2, s0, s1; \
-- fstmias r0!, {s2}; \
-+ vstmia.f32 r0!, {s2}; \
- subs ip, ip, #1; \
- bne vfp_ ## fname ## _loop1; \
- vfp_ ## fname ## _unroll: /* unroll by 8 */ \
-@@ -62,15 +62,15 @@
- orr fp, lr, fp, lsl #16; /* set vector lenght to 8 */ \
- fmxr fpscr, fp; \
- vfp_ ## fname ## _loop2: \
-- fldmias r1!, {s8, s9, s10, s11, s12, s13, s14, s15}; \
-- fldmias r2!, {s16, s17, s18, s19, s20, s21, s22, s23}; \
-+ vldmia.f32 r1!, {s8, s9, s10, s11, s12, s13, s14, s15}; \
-+ vldmia.f32 r2!, {s16, s17, s18, s19, s20, s21, s22, s23}; \
- ## finst ##s s24, s8, s16; \
-- fstmias r0!, {s24, s25, s26, s27, s28, s29, s30, s31}; \
-+ vstmia.f32 r0!, {s24, s25, s26, s27, s28, s29, s30, s31}; \
- subs ip, ip, #1; \
- bne vfp_ ## fname ## _loop2; \
- fmxr fpscr, lr; /* restore original fpscr */ \
- vfp_ ## fname ## _end: \
-- ldmia sp!, {fp, pc}; /* recovering from stack and return */
-+ ldmia sp!, {fp, pc}; /* recovering from stack and return */
-
- #define UNROLL_F64_TEMPLATE(fname,finst) \
- .global vfp_ ## fname ## ; \
-@@ -79,10 +79,10 @@
- ands ip, r3, #3; /* ip = n % 3 */ \
- beq vfp_ ## fname ## _unroll; /* if ip == 0 goto prep_loop2 */ \
- vfp_ ## fname ## _loop1: \
-- fldmiad r1!, {d0}; \
-- fldmiad r2!, {d1}; \
-+ vldmia.f64 r1!, {d0}; \
-+ vldmia.f64 r2!, {d1}; \
- ## finst ##d d2, d0, d1; \
-- fstmiad r0!, {d2}; \
-+ vstmia.f64 r0!, {d2}; \
- subs ip, ip, #1; \
- bne vfp_ ## fname ## _loop1; \
- vfp_ ## fname ## _unroll: /* unroll by 4 */ \
-@@ -93,15 +93,15 @@
- orr fp, lr, fp, lsl #16; /* set vector lenght to 8 */ \
- fmxr fpscr, fp; \
- vfp_ ## fname ## _loop2: \
-- fldmiad r1!, {d4, d5, d6, d7}; \
-- fldmiad r2!, {d8, d9, d10, d11}; \
-+ vldmia.f64 r1!, {d4, d5, d6, d7}; \
-+ vldmia.f64 r2!, {d8, d9, d10, d11}; \
- ## finst ##d d12, d4, d8; \
-- fstmiad r0!, {d12, d13, d14, d15}; \
-+ vstmia.f64 r0!, {d12, d13, d14, d15}; \
- subs ip, ip, #1; \
- bne vfp_ ## fname ## _loop2; \
- fmxr fpscr, lr; /* restore original fpscr */ \
- vfp_ ## fname ## _end: \
-- ldmia sp!, {fp, pc}; /* recovering from stack and return */
-+ ldmia sp!, {fp, pc}; /* recovering from stack and return */
-
- .align 2
- UNROLL_F32_TEMPLATE(add_f32,fadd);
-@@ -119,7 +119,7 @@ UNROLL_F64_TEMPLATE(subtract_f64,fsub);
- #undef UNROLL_F32_TEMPLATE
- #undef UNROLL_F64_TEMPLATE
-
--/*
-+/*
- **
- ** void vfp_scalaradd_f32_ns (float *d, const float *s1, const float *s2_1, int n);
- ** void vfp_scalaradd_f64_ns (double *d, const double *s1, const double *s2_1, int n);
-@@ -133,13 +133,13 @@ UNROLL_F64_TEMPLATE(subtract_f64,fsub);
- .global vfp_ ## fname ## ; \
- vfp_ ## fname ## : \
- stmdb sp!, {fp, lr}; /* save registers to stack */ \
-- fldmias r2, {s1}; /* load scalar value */ \
-+ vldmia.f32 r2, {s1}; /* load scalar value */ \
- ands ip, r3, #7; /* ip = n % 8 */ \
- beq vfp_ ## fname ## _unroll; /* if ip == 0 goto prep_loop2 */ \
- vfp_ ## fname ## _loop1: \
-- fldmias r1!, {s0}; \
-+ vldmia.f32 r1!, {s0}; \
- ## finst ##s s2, s0, s1; \
-- fstmias r0!, {s2}; \
-+ vstmia.f32 r0!, {s2}; \
- subs ip, ip, #1; \
- bne vfp_ ## fname ## _loop1; \
- vfp_ ## fname ## _unroll: /* unroll by 8 */ \
-@@ -150,26 +150,26 @@ UNROLL_F64_TEMPLATE(subtract_f64,fsub);
- orr fp, lr, fp, lsl #16; /* set vector lenght to 8 */ \
- fmxr fpscr, fp; \
- vfp_ ## fname ## _loop2: \
-- fldmias r1!, {s8, s9, s10, s11, s12, s13, s14, s15}; \
-+ vldmia.f32 r1!, {s8, s9, s10, s11, s12, s13, s14, s15}; \
- ## finst ##s s24, s8, s1; \
-- fstmias r0!, {s24, s25, s26, s27, s28, s29, s30, s31}; \
-+ vstmia.f32 r0!, {s24, s25, s26, s27, s28, s29, s30, s31}; \
- subs ip, ip, #1; \
- bne vfp_ ## fname ## _loop2; \
- fmxr fpscr, lr; /* restore original fpscr */ \
- vfp_ ## fname ## _end: \
-- ldmia sp!, {fp, pc}; /* recovering from stack and return */
-+ ldmia sp!, {fp, pc}; /* recovering from stack and return */
-
- #define UNROLL_F64_TEMPLATE(fname,finst) \
- .global vfp_ ## fname ## ; \
- vfp_ ## fname ## : \
- stmdb sp!, {fp, lr}; /* save registers to stack */ \
-- fldmiad r2, {d1}; /* load scalar value */ \
-+ vldmia.f64 r2, {d1}; /* load scalar value */ \
- ands ip, r3, #3; /* ip = n % 3 */ \
- beq vfp_ ## fname ## _unroll; /* if ip == 0 goto prep_loop2 */ \
- vfp_ ## fname ## _loop1: \
-- fldmiad r1!, {d0}; \
-+ vldmia.f64 r1!, {d0}; \
- ## finst ##d d2, d0, d1; \
-- fstmiad r0!, {d2}; \
-+ vstmia.f64 r0!, {d2}; \
- subs ip, ip, #1; \
- bne vfp_ ## fname ## _loop1; \
- vfp_ ## fname ## _unroll: /* unroll by 4 */ \
-@@ -180,14 +180,14 @@ UNROLL_F64_TEMPLATE(subtract_f64,fsub);
- orr fp, lr, fp, lsl #16; /* set vector lenght to 4 */ \
- fmxr fpscr, fp; \
- vfp_ ## fname ## _loop2: \
-- fldmiad r1!, {d4, d5, d6, d7}; \
-+ vldmia.f64 r1!, {d4, d5, d6, d7}; \
- ## finst ##d d12, d4, d1; \
-- fstmiad r0!, {d12, d13, d14, d15}; \
-+ vstmia.f64 r0!, {d12, d13, d14, d15}; \
- subs ip, ip, #1; \
- bne vfp_ ## fname ## _loop2; \
- fmxr fpscr, lr; /* restore original fpscr */ \
- vfp_ ## fname ## _end: \
-- ldmia sp!, {fp, pc}; /* recovering from stack and return */
-+ ldmia sp!, {fp, pc}; /* recovering from stack and return */
-
- UNROLL_F32_TEMPLATE(scalaradd_f32_ns,fadd);
- UNROLL_F64_TEMPLATE(scalaradd_f64_ns,fadd);
-@@ -198,7 +198,7 @@ UNROLL_F64_TEMPLATE(scalarmultiply_f64_ns,fmul);
- #undef UNROLL_F32_TEMPLATE
- #undef UNROLL_F64_TEMPLATE
-
--/*
-+/*
- **
- ** void vfp_abs_f32_f32_ns(float *d, const float *s, int n);
- ** void vfp_abs_f64_f64_ns(double *d, const double *s, int n);
-@@ -215,9 +215,9 @@ UNROLL_F64_TEMPLATE(scalarmultiply_f64_ns,fmul);
- ands ip, r2, #7; /* ip = n % 8 */ \
- beq vfp_ ## fname ## _unroll; /* if ip == 0 goto prep_loop2 */ \
- vfp_ ## fname ## _loop1: \
-- fldmias r1!, {s0}; \
-- ## finst ##s s2, s0; \
-- fstmias r0!, {s2}; \
-+ vldmia.f32 r1!, {s0}; \
-+ ## finst ##.f32 s2, s0; \
-+ vstmia.f32 r0!, {s2}; \
- subs ip, ip, #1; \
- bne vfp_ ## fname ## _loop1; \
- vfp_ ## fname ## _unroll: /* unroll by 8 */ \
-@@ -228,14 +228,14 @@ UNROLL_F64_TEMPLATE(scalarmultiply_f64_ns,fmul);
- orr fp, lr, fp, lsl #16; /* set vector lenght to 8 */ \
- fmxr fpscr, fp; \
- vfp_ ## fname ## _loop2: \
-- fldmias r1!, {s8, s9, s10, s11, s12, s13, s14, s15}; \
-- ## finst ##s s24, s8; \
-- fstmias r0!, {s24, s25, s26, s27, s28, s29, s30, s31}; \
-+ vldmia.f32 r1!, {s8, s9, s10, s11, s12, s13, s14, s15}; \
-+ ## finst ##.f32 s24, s8; \
-+ vstmia.f32 r0!, {s24, s25, s26, s27, s28, s29, s30, s31}; \
- subs ip, ip, #1; \
- bne vfp_ ## fname ## _loop2; \
- fmxr fpscr, lr; /* restore original fpscr */ \
- vfp_ ## fname ## _end: \
-- ldmia sp!, {fp, pc}; /* recovering from stack and return */
-+ ldmia sp!, {fp, pc}; /* recovering from stack and return */
-
- #define UNROLL_F64_TEMPLATE(fname,finst) \
- .global vfp_ ## fname ## ; \
-@@ -244,9 +244,9 @@ UNROLL_F64_TEMPLATE(scalarmultiply_f64_ns,fmul);
- ands ip, r2, #3; /* ip = n % 3 */ \
- beq vfp_ ## fname ## _unroll; /* if ip == 0 goto prep_loop2 */ \
- vfp_ ## fname ## _loop1: \
-- fldmiad r1!, {d0}; \
-- ## finst ##d d2, d0; \
-- fstmiad r0!, {d2}; \
-+ vldmia.f64 r1!, {d0}; \
-+ ## finst ##.f64 d2, d0; \
-+ vstmia.f64 r0!, {d2}; \
- subs ip, ip, #1; \
- bne vfp_ ## fname ## _loop1; \
- vfp_ ## fname ## _unroll: /* unroll by 4 */ \
-@@ -257,20 +257,20 @@ UNROLL_F64_TEMPLATE(scalarmultiply_f64_ns,fmul);
- orr fp, lr, fp, lsl #16; /* set vector lenght to 4 */ \
- fmxr fpscr, fp; \
- vfp_ ## fname ## _loop2: \
-- fldmiad r1!, {d4, d5, d6, d7}; \
-- ## finst ##d d12, d4; \
-- fstmiad r0!, {d12, d13, d14, d15}; \
-+ vldmia.f64 r1!, {d4, d5, d6, d7}; \
-+ ## finst ##.f64 d12, d4; \
-+ vstmia.f64 r0!, {d12, d13, d14, d15}; \
- subs ip, ip, #1; \
- bne vfp_ ## fname ## _loop2; \
- fmxr fpscr, lr; /* restore original fpscr */ \
- vfp_ ## fname ## _end: \
-- ldmia sp!, {fp, pc}; /* recovering from stack and return */
-+ ldmia sp!, {fp, pc}; /* recovering from stack and return */
-
--UNROLL_F32_TEMPLATE(abs_f32_f32_ns,fabs);
--UNROLL_F64_TEMPLATE(abs_f64_f64_ns,fabs);
-+UNROLL_F32_TEMPLATE(abs_f32_f32_ns,vabs);
-+UNROLL_F64_TEMPLATE(abs_f64_f64_ns,vabs);
-
--UNROLL_F32_TEMPLATE(negative_f32,fneg);
--UNROLL_F64_TEMPLATE(negative_f64,fneg);
-+UNROLL_F32_TEMPLATE(negative_f32,vneg);
-+UNROLL_F64_TEMPLATE(negative_f64,vneg);
-
- #undef UNROLL_F32_TEMPLATE
- #undef UNROLL_F64_TEMPLATE
diff --git a/meta-openembedded/meta-multimedia/recipes-support/liboil/liboil-0.3.17/fix-unaligned-whitelist.patch b/meta-openembedded/meta-multimedia/recipes-support/liboil/liboil-0.3.17/fix-unaligned-whitelist.patch
deleted file mode 100644
index c8e3c1f..0000000
--- a/meta-openembedded/meta-multimedia/recipes-support/liboil/liboil-0.3.17/fix-unaligned-whitelist.patch
+++ /dev/null
@@ -1,19 +0,0 @@
-Upstream: https://bugs.freedesktop.org/show_bug.cgi?id=31358
-
-configure: fix whitelisting of x86_64 unaligned memory access
-
-Fix typo in whitelist so cross-compile works for x86_64.
-
-Upstream-Status: Inappropriate [configuration]
-
---- liboil-0.3.17/m4/as-unaligned-access.m4.orig 2009-02-26 14:40:08.000000000 -0500
-+++ liboil-0.3.17/m4/as-unaligned-access.m4 2010-11-03 12:19:55.000000000 -0400
-@@ -9,7 +9,7 @@
- _AS_ECHO_N([(blacklisted) ])
- as_cv_unaligned_access=no
- ;;
-- i?86*|x86_64|amd64|powerpc*|m68k*|cris*)
-+ i?86*|x86_64*|amd64*|powerpc*|m68k*|cris*)
- _AS_ECHO_N([(whitelisted) ])
- as_cv_unaligned_access=yes
- ;;
diff --git a/meta-openembedded/meta-multimedia/recipes-support/liboil/liboil-0.3.17/fix_riscv_unaligned_access.patch b/meta-openembedded/meta-multimedia/recipes-support/liboil/liboil-0.3.17/fix_riscv_unaligned_access.patch
deleted file mode 100644
index 448bde7..0000000
--- a/meta-openembedded/meta-multimedia/recipes-support/liboil/liboil-0.3.17/fix_riscv_unaligned_access.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-RISC-V supports unaligned accesses, therefore enable it
-
-Upstream-Status: Pending
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
---- a/m4/as-unaligned-access.m4
-+++ b/m4/as-unaligned-access.m4
-@@ -5,7 +5,7 @@ AC_DEFUN([AS_UNALIGNED_ACCESS], [
- AC_MSG_CHECKING([if unaligned memory access works correctly])
- if test x"$as_cv_unaligned_access" = x ; then
- case $host in
-- alpha*|arm*|hp*|mips*|sh*|sparc*|ia64*)
-+ alpha*|arm*|hp*|mips*|riscv*|sh*|sparc*|ia64*)
- _AS_ECHO_N([(blacklisted) ])
- as_cv_unaligned_access=no
- ;;
diff --git a/meta-openembedded/meta-multimedia/recipes-support/liboil/liboil-0.3.17/liboil_fix_for_x32.patch b/meta-openembedded/meta-multimedia/recipes-support/liboil/liboil-0.3.17/liboil_fix_for_x32.patch
deleted file mode 100644
index 473380e..0000000
--- a/meta-openembedded/meta-multimedia/recipes-support/liboil/liboil-0.3.17/liboil_fix_for_x32.patch
+++ /dev/null
@@ -1,222 +0,0 @@
-Upstream-Status: Pending
-
-Make the assembly syntax compatible with x32 gcc. Othewise x32 gcc throws errors.
-
-Signed-Off-By: Nitin A Kamble <nitin.a.kamble@intel.com>
-2011/12/01
-
-
-Index: liboil-0.3.17/liboil/amd64/wavelet.c
-===================================================================
---- liboil-0.3.17.orig/liboil/amd64/wavelet.c
-+++ liboil-0.3.17/liboil/amd64/wavelet.c
-@@ -21,14 +21,14 @@ deinterleave2_asm (int16_t *d1, int16_t
- asm volatile ("\n"
- " sub $2, %%rcx\n"
- "1:\n"
-- " movw (%1,%%rcx,4), %%ax\n"
-- " movw %%ax, (%0,%%rcx,2)\n"
-- " movw 2(%1,%%rcx,4), %%ax\n"
-- " movw %%ax, (%2,%%rcx,2)\n"
-- " movw 4(%1,%%rcx,4), %%ax\n"
-- " movw %%ax, 2(%0,%%rcx,2)\n"
-- " movw 6(%1,%%rcx,4), %%ax\n"
-- " movw %%ax, 2(%2,%%rcx,2)\n"
-+ " movw (%q1,%%rcx,4), %%ax\n"
-+ " movw %%ax, (%q0,%%rcx,2)\n"
-+ " movw 2(%q1,%%rcx,4), %%ax\n"
-+ " movw %%ax, (%q2,%%rcx,2)\n"
-+ " movw 4(%q1,%%rcx,4), %%ax\n"
-+ " movw %%ax, 2(%q0,%%rcx,2)\n"
-+ " movw 6(%q1,%%rcx,4), %%ax\n"
-+ " movw %%ax, 2(%q2,%%rcx,2)\n"
- " sub $2, %%rcx\n"
- " jge 1b\n"
- : "+r" (d1), "+r" (s_2xn), "+r" (d2), "+c" (n)
-@@ -53,20 +53,20 @@ deinterleave2_mmx (int16_t *d1, int16_t
- asm volatile ("\n"
- " xor %%rcx, %%rcx\n"
- "1:\n"
-- " movq (%1,%%rcx,4), %%mm0\n"
-- " movq 8(%1,%%rcx,4), %%mm1\n"
-+ " movq (%q1,%%rcx,4), %%mm0\n"
-+ " movq 8(%q1,%%rcx,4), %%mm1\n"
- " pslld $16, %%mm0\n"
- " pslld $16, %%mm1\n"
- " psrad $16, %%mm0\n"
- " psrad $16, %%mm1\n"
- " packssdw %%mm1, %%mm0\n"
-- " movq %%mm0, (%0,%%rcx,2)\n"
-- " movq (%1,%%rcx,4), %%mm0\n"
-- " movq 8(%1,%%rcx,4), %%mm1\n"
-+ " movq %%mm0, (%q0,%%rcx,2)\n"
-+ " movq (%q1,%%rcx,4), %%mm0\n"
-+ " movq 8(%q1,%%rcx,4), %%mm1\n"
- " psrad $16, %%mm0\n"
- " psrad $16, %%mm1\n"
- " packssdw %%mm1, %%mm0\n"
-- " movq %%mm0, (%2,%%rcx,2)\n"
-+ " movq %%mm0, (%q2,%%rcx,2)\n"
- " add $4, %%rcx\n"
- " cmp %3, %%ecx\n"
- " jl 1b\n"
-@@ -93,10 +93,10 @@ deinterleave2_mmx_2 (int16_t *d1, int16_
- asm volatile ("\n"
- " xor %%rcx, %%rcx\n"
- "1:\n"
-- " pshufw $0xd8, (%1,%%rcx,4), %%mm0\n"
-- " movd %%mm0, (%0,%%rcx,2)\n"
-- " pshufw $0x8d, (%1,%%rcx,4), %%mm0\n"
-- " movd %%mm0, (%2,%%rcx,2)\n"
-+ " pshufw $0xd8, (%q1,%%rcx,4), %%mm0\n"
-+ " movd %%mm0, (%q0,%%rcx,2)\n"
-+ " pshufw $0x8d, (%q1,%%rcx,4), %%mm0\n"
-+ " movd %%mm0, (%q2,%%rcx,2)\n"
- " add $2, %%rcx\n"
- " cmp %3, %%ecx\n"
- " jl 1b\n"
-@@ -123,16 +123,16 @@ deinterleave2_mmx_3 (int16_t *d1, int16_
- asm volatile ("\n"
- " xor %%rcx, %%rcx\n"
- "1:\n"
-- " movq (%1,%%rcx,4), %%mm1\n"
-- " movq (%1,%%rcx,4), %%mm2\n"
-- " movq 8(%1,%%rcx,4), %%mm0\n"
-+ " movq (%q1,%%rcx,4), %%mm1\n"
-+ " movq (%q1,%%rcx,4), %%mm2\n"
-+ " movq 8(%q1,%%rcx,4), %%mm0\n"
- " punpcklwd %%mm0, %%mm1\n"
- " punpckhwd %%mm0, %%mm2\n"
- " movq %%mm1, %%mm0\n"
- " punpcklwd %%mm2, %%mm0\n"
- " punpckhwd %%mm2, %%mm1\n"
-- " movq %%mm0, (%0,%%rcx,2)\n"
-- " movq %%mm1, (%2,%%rcx,2)\n"
-+ " movq %%mm0, (%q0,%%rcx,2)\n"
-+ " movq %%mm1, (%q2,%%rcx,2)\n"
- " add $4, %%rcx\n"
- " cmp %3, %%ecx\n"
- " jl 1b\n"
-@@ -159,26 +159,26 @@ deinterleave2_mmx_4 (int16_t *d1, int16_
- asm volatile ("\n"
- " xor %%rcx, %%rcx\n"
- "1:\n"
-- " movq (%1,%%rcx,4), %%mm1\n"
-+ " movq (%q1,%%rcx,4), %%mm1\n"
- " movq %%mm1, %%mm2\n"
-- " movq 8(%1,%%rcx,4), %%mm0\n"
-- " movq 16(%1,%%rcx,4), %%mm5\n"
-+ " movq 8(%q1,%%rcx,4), %%mm0\n"
-+ " movq 16(%q1,%%rcx,4), %%mm5\n"
- " punpcklwd %%mm0, %%mm1\n"
- " movq %%mm5, %%mm6\n"
- " punpckhwd %%mm0, %%mm2\n"
-- " movq 24(%1,%%rcx,4), %%mm4\n"
-+ " movq 24(%q1,%%rcx,4), %%mm4\n"
- " movq %%mm1, %%mm0\n"
- " punpcklwd %%mm4, %%mm5\n"
- " punpcklwd %%mm2, %%mm0\n"
- " punpckhwd %%mm4, %%mm6\n"
- " punpckhwd %%mm2, %%mm1\n"
- " movq %%mm5, %%mm4\n"
-- " movq %%mm0, (%0,%%rcx,2)\n"
-+ " movq %%mm0, (%q0,%%rcx,2)\n"
- " punpcklwd %%mm6, %%mm4\n"
-- " movq %%mm1, (%2,%%rcx,2)\n"
-+ " movq %%mm1, (%q2,%%rcx,2)\n"
- " punpckhwd %%mm6, %%mm5\n"
-- " movq %%mm4, 8(%0,%%rcx,2)\n"
-- " movq %%mm5, 8(%2,%%rcx,2)\n"
-+ " movq %%mm4, 8(%q0,%%rcx,2)\n"
-+ " movq %%mm5, 8(%q2,%%rcx,2)\n"
- " add $8, %%rcx\n"
- " cmp %3, %%ecx\n"
- " jl 1b\n"
-@@ -252,13 +252,13 @@ interleave2_mmx (int16_t *d_2xn, int16_t
- asm volatile ("\n"
- " xor %%rcx, %%rcx\n"
- "1:\n"
-- " movq (%1,%%rcx,2), %%mm0\n"
-- " movq (%2,%%rcx,2), %%mm1\n"
-+ " movq (%q1,%%rcx,2), %%mm0\n"
-+ " movq (%q2,%%rcx,2), %%mm1\n"
- " movq %%mm0, %%mm2\n"
- " punpckhwd %%mm1, %%mm0\n"
- " punpcklwd %%mm1, %%mm2\n"
-- " movq %%mm2, (%0,%%rcx,4)\n"
-- " movq %%mm0, 8(%0,%%rcx,4)\n"
-+ " movq %%mm2, (%q0,%%rcx,4)\n"
-+ " movq %%mm0, 8(%q0,%%rcx,4)\n"
- " add $4, %%rcx\n"
- " cmp %3, %%ecx\n"
- " jl 1b\n"
-@@ -285,12 +285,12 @@ lift_add_shift1_mmx (int16_t *d, int16_t
- asm volatile ("\n"
- " xor %%rcx, %%rcx\n"
- "1:\n"
-- " movq (%2,%%rcx,2), %%mm1\n"
-- " movq (%3,%%rcx,2), %%mm2\n"
-+ " movq (%q2,%%rcx,2), %%mm1\n"
-+ " movq (%q3,%%rcx,2), %%mm2\n"
- " paddw %%mm2, %%mm1\n"
- " psraw $1, %%mm1\n"
-- " paddw (%1,%%rcx,2), %%mm1\n"
-- " movq %%mm1, (%0,%%rcx,2)\n"
-+ " paddw (%q1,%%rcx,2), %%mm1\n"
-+ " movq %%mm1, (%q0,%%rcx,2)\n"
- " add $4, %%rcx\n"
- " cmp %4, %%ecx\n"
- " jl 1b\n"
-@@ -317,13 +317,13 @@ lift_sub_shift1_mmx (int16_t *d, int16_t
- asm volatile ("\n"
- " xor %%rcx, %%rcx\n"
- "1:\n"
-- " movq (%2,%%rcx,2), %%mm1\n"
-- " movq (%3,%%rcx,2), %%mm2\n"
-- " movq (%1,%%rcx,2), %%mm0\n"
-+ " movq (%q2,%%rcx,2), %%mm1\n"
-+ " movq (%q3,%%rcx,2), %%mm2\n"
-+ " movq (%q1,%%rcx,2), %%mm0\n"
- " paddw %%mm2, %%mm1\n"
- " psraw $1, %%mm1\n"
- " psubw %%mm1, %%mm0\n"
-- " movq %%mm0, (%0,%%rcx,2)\n"
-+ " movq %%mm0, (%q0,%%rcx,2)\n"
- " add $4, %%rcx\n"
- " cmp %4, %%ecx\n"
- " jl 1b\n"
-@@ -350,12 +350,12 @@ lift_add_shift2_mmx (int16_t *d, int16_t
- asm volatile ("\n"
- " xor %%rcx, %%rcx\n"
- "1:\n"
-- " movq (%2,%%rcx,2), %%mm1\n"
-- " movq (%3,%%rcx,2), %%mm2\n"
-+ " movq (%q2,%%rcx,2), %%mm1\n"
-+ " movq (%q3,%%rcx,2), %%mm2\n"
- " paddw %%mm2, %%mm1\n"
- " psraw $2, %%mm1\n"
-- " paddw (%1,%%rcx,2), %%mm1\n"
-- " movq %%mm1, (%0,%%rcx,2)\n"
-+ " paddw (%q1,%%rcx,2), %%mm1\n"
-+ " movq %%mm1, (%q0,%%rcx,2)\n"
- " add $4, %%rcx\n"
- " cmp %4, %%ecx\n"
- " jl 1b\n"
-@@ -382,13 +382,13 @@ lift_sub_shift2_mmx (int16_t *d, int16_t
- asm volatile ("\n"
- " xor %%rcx, %%rcx\n"
- "1:\n"
-- " movq (%2,%%rcx,2), %%mm1\n"
-- " movq (%3,%%rcx,2), %%mm2\n"
-- " movq (%1,%%rcx,2), %%mm0\n"
-+ " movq (%q2,%%rcx,2), %%mm1\n"
-+ " movq (%q3,%%rcx,2), %%mm2\n"
-+ " movq (%q1,%%rcx,2), %%mm0\n"
- " paddw %%mm2, %%mm1\n"
- " psraw $2, %%mm1\n"
- " psubw %%mm1, %%mm0\n"
-- " movq %%mm0, (%0,%%rcx,2)\n"
-+ " movq %%mm0, (%q0,%%rcx,2)\n"
- " add $4, %%rcx\n"
- " cmp %4, %%ecx\n"
- " jl 1b\n"
diff --git a/meta-openembedded/meta-multimedia/recipes-support/liboil/liboil-0.3.17/no-tests.patch b/meta-openembedded/meta-multimedia/recipes-support/liboil/liboil-0.3.17/no-tests.patch
deleted file mode 100644
index 892d441..0000000
--- a/meta-openembedded/meta-multimedia/recipes-support/liboil/liboil-0.3.17/no-tests.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-Upstream-Status: Inappropriate [disable feature]
-
---- liboil-0.3.9/liboil/liboilfunction.c.old 2006-09-18 13:03:20.000000000 +0100
-+++ liboil-0.3.9/liboil/liboilfunction.c 2006-09-18 13:04:10.000000000 +0100
-@@ -345,7 +345,9 @@
- return;
- }
-
-- test = oil_test_new (klass);
-+ klass->chosen_impl = klass->reference_impl;
-+ klass->func = klass->reference_impl->func;
-+/* test = oil_test_new (klass);
- if (test == NULL) {
- OIL_ERROR ("failed to test function class %s", klass->name);
- return;
-@@ -385,7 +387,7 @@
- klass->chosen_impl = min_impl;
- klass->func = min_impl->func;
-
-- oil_test_free (test);
-+ oil_test_free (test);*/
- }
-
- static void
diff --git a/meta-openembedded/meta-multimedia/recipes-support/liboil/liboil_0.3.17.bb b/meta-openembedded/meta-multimedia/recipes-support/liboil/liboil_0.3.17.bb
deleted file mode 100644
index 654ee1e..0000000
--- a/meta-openembedded/meta-multimedia/recipes-support/liboil/liboil_0.3.17.bb
+++ /dev/null
@@ -1,29 +0,0 @@
-SUMMARY = "Library of simple functions optimized for various CPUs"
-HOMEPAGE = "http://liboil.freedesktop.org/"
-BUGTRACKER = "https://bugs.freedesktop.org/"
-
-LICENSE = "BSD"
-LIC_FILES_CHKSUM = "file://COPYING;md5=ad80780d9c5205d63481a0184e199a15 \
- file://liboil/liboil.h;endline=28;md5=95c794a66b88800d949fed17e437d9fb \
- file://liboil/liboilcpu.c;endline=28;md5=89da69a61d88eedcba066f42353fb75a \
- file://examples/example1.c;endline=29;md5=9d4dad9fcbbdf0441ee063f8af5170c9 \
- file://testsuite/trans.c;endline=29;md5=380ecd43121fe3dcc0d8d7e5984f283d"
-
-DEPENDS = "glib-2.0"
-PR = "r5"
-
-SRC_URI = "http://liboil.freedesktop.org/download/${BPN}-${PV}.tar.gz \
- file://no-tests.patch \
- file://fix-unaligned-whitelist.patch \
- file://0001-Fix-enable-vfp-flag.patch \
- file://liboil_fix_for_x32.patch \
- file://0001-math_vfp_asm.S-Convert-fldmia-fstmia-instructions-to.patch \
- file://fix_riscv_unaligned_access.patch \
- "
-
-SRC_URI[md5sum] = "47dc734f82faeb2964d97771cfd2e701"
-SRC_URI[sha256sum] = "105f02079b0b50034c759db34b473ecb5704ffa20a5486b60a8b7698128bfc69"
-
-inherit autotools pkgconfig
-
-ARM_INSTRUCTION_SET = "arm"
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/cannelloni/cannelloni_git.bb b/meta-openembedded/meta-networking/recipes-connectivity/cannelloni/cannelloni_git.bb
new file mode 100644
index 0000000..df75e63
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-connectivity/cannelloni/cannelloni_git.bb
@@ -0,0 +1,17 @@
+SUMMARY = "a SocketCAN over Ethernet tunnel"
+HOMEPAGE = "https://github.com/mguentner/cannelloni"
+LICENSE = "GPLv2"
+
+SRC_URI = "git://github.com/mguentner/cannelloni.git;protocol=https"
+SRCREV = "44080bb021d1a143e6906f2ec4610513c4e1cece"
+
+PV = "20160414+${SRCPV}"
+
+LIC_FILES_CHKSUM = "file://gpl-2.0.txt;md5=b234ee4d69f5fce4486a80fdaf4a4263"
+
+inherit cmake
+
+S = "${WORKDIR}/git"
+
+PACKAGECONFIG ??= "lksctp-tools"
+PACKAGECONFIG[lksctp-tools] = "-DSCTP_SUPPORT=true, -DSCTP_SUPPORT=false, lksctp-tools"
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/miniupnpd/miniupnpd_2.1.20190210.bb b/meta-openembedded/meta-networking/recipes-connectivity/miniupnpd/miniupnpd_2.1.20190210.bb
index 302f507..d4093e5 100644
--- a/meta-openembedded/meta-networking/recipes-connectivity/miniupnpd/miniupnpd_2.1.20190210.bb
+++ b/meta-openembedded/meta-networking/recipes-connectivity/miniupnpd/miniupnpd_2.1.20190210.bb
@@ -11,7 +11,7 @@
DEPENDS += "iptables net-tools util-linux libmnl libnetfilter-conntrack"
-SRC_URI = "http://miniupnp.tuxfamily.org/files/download.php?file=${P}.tar.gz;downloadfilename=${P}.tar.gz \
+SRC_URI = "http://miniupnp.tuxfamily.org/files/download.php?file=${BP}.tar.gz;downloadfilename=${BP}.tar.gz \
file://miniupnpd.service \
file://0001-Add-OpenEmbedded-cross-compile-case.patch \
"
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/nanomsg/nanomsg_1.1.4.bb b/meta-openembedded/meta-networking/recipes-connectivity/nanomsg/nanomsg_1.1.4.bb
deleted file mode 100644
index fa6b43a..0000000
--- a/meta-openembedded/meta-networking/recipes-connectivity/nanomsg/nanomsg_1.1.4.bb
+++ /dev/null
@@ -1,28 +0,0 @@
-SUMMARY = "nanomsg socket library"
-DESCRIPTION = "nanomsg is a socket library that provides several common \
-communication patterns. It aims to make the networking layer fast, scalable, \
-and easy to use. Implemented in C, it works on a wide range of operating \
-systems with no further dependencies."
-HOMEPAGE = "https://nanomsg.org/"
-LICENSE = "MIT-X"
-LIC_FILES_CHKSUM = "file://COPYING;md5=587b3fd7fd291e418ff4d2b8f3904755"
-
-SECTION = "libs/networking"
-
-SRC_URI = "git://github.com/nanomsg/nanomsg.git;protocol=https"
-SRCREV = "e7f8a751316b942d8962cd0232c2d606c1d9a9db"
-
-S = "${WORKDIR}/git"
-
-inherit cmake pkgconfig
-
-# nanomsg documentation generation requires asciidoctor,
-# not asciidoc, and currently there's no asciidoctor-native
-# recipe anywhere in openembedded-core or meta-openembedded
-EXTRA_OECMAKE = " -DNN_ENABLE_DOC=OFF "
-
-# we don't want nanomsg-tools to be renamed to libnanomsg-tools
-DEBIAN_NOAUTONAME_${PN}-tools = "1"
-
-PACKAGES =+ "${PN}-tools"
-FILES_${PN}-tools = "${bindir}/*"
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/nanomsg/nanomsg_1.1.5.bb b/meta-openembedded/meta-networking/recipes-connectivity/nanomsg/nanomsg_1.1.5.bb
new file mode 100644
index 0000000..8444f0b
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-connectivity/nanomsg/nanomsg_1.1.5.bb
@@ -0,0 +1,28 @@
+SUMMARY = "nanomsg socket library"
+DESCRIPTION = "nanomsg is a socket library that provides several common \
+communication patterns. It aims to make the networking layer fast, scalable, \
+and easy to use. Implemented in C, it works on a wide range of operating \
+systems with no further dependencies."
+HOMEPAGE = "https://nanomsg.org/"
+LICENSE = "MIT-X"
+LIC_FILES_CHKSUM = "file://COPYING;md5=587b3fd7fd291e418ff4d2b8f3904755"
+
+SECTION = "libs/networking"
+
+SRC_URI = "git://github.com/nanomsg/nanomsg.git;protocol=https"
+SRCREV = "1749fd7b039165a91b8d556b4df18e3e632ad830"
+
+S = "${WORKDIR}/git"
+
+inherit cmake pkgconfig
+
+# nanomsg documentation generation requires asciidoctor,
+# not asciidoc, and currently there's no asciidoctor-native
+# recipe anywhere in openembedded-core or meta-openembedded
+EXTRA_OECMAKE = " -DNN_ENABLE_DOC=OFF "
+
+# we don't want nanomsg-tools to be renamed to libnanomsg-tools
+DEBIAN_NOAUTONAME_${PN}-tools = "1"
+
+PACKAGES =+ "${PN}-tools"
+FILES_${PN}-tools = "${bindir}/*"
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager-openvpn_1.2.10.bb b/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager-openvpn_1.2.10.bb
deleted file mode 100644
index 9159fcb..0000000
--- a/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager-openvpn_1.2.10.bb
+++ /dev/null
@@ -1,40 +0,0 @@
-SUMMARY = "NetworkManager-openvpn-plugin"
-SECTION = "net/misc"
-
-LICENSE = "GPLv2+"
-LIC_FILES_CHKSUM = "file://COPYING;md5=100d5a599bead70ddcd70dcd73f2e29c"
-
-DEPENDS = "dbus dbus-glib networkmanager openvpn intltool-native glib-2.0-native"
-
-inherit gnomebase useradd gettext systemd
-
-SRC_URI = "${GNOME_MIRROR}/NetworkManager-openvpn/${@gnome_verdir("${PV}")}/NetworkManager-openvpn-${PV}.tar.xz"
-
-SRC_URI[md5sum] = "f118226ed2bfbacfd64ac4d1e0bd0383"
-SRC_URI[sha256sum] = "ac86a7a539d78df90095676e9183f2d422fb93dbfe4b3afef22f81825d303d61"
-
-S = "${WORKDIR}/NetworkManager-openvpn-${PV}"
-
-PACKAGECONFIG[gnome] = "--with-gnome,--without-gnome"
-
-do_install_append () {
- rm -rf ${D}${libdir}/NetworkManager/*.la
-}
-
-# Create user and group nm-openvpn that are needed since version 1.0.6
-USERADD_PACKAGES = "${PN}"
-USERADD_PARAM_${PN} = "--system nm-openvpn"
-
-FILES_${PN} += " \
- ${libdir}/NetworkManager/*.so \
- ${nonarch_libdir}/NetworkManager/VPN/nm-openvpn-service.name \
-"
-
-FILES_${PN}-staticdev += " \
- ${libdir}/NetworkManager/*.a \
-"
-
-RDEPENDS_${PN} = " \
- networkmanager \
- openvpn \
-"
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager-openvpn_1.8.10.bb b/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager-openvpn_1.8.10.bb
new file mode 100644
index 0000000..56db770
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager-openvpn_1.8.10.bb
@@ -0,0 +1,40 @@
+SUMMARY = "NetworkManager-openvpn-plugin"
+SECTION = "net/misc"
+
+LICENSE = "GPLv2+"
+LIC_FILES_CHKSUM = "file://COPYING;md5=100d5a599bead70ddcd70dcd73f2e29c"
+
+DEPENDS = "dbus dbus-glib networkmanager openvpn intltool-native glib-2.0-native"
+
+inherit gnomebase useradd gettext systemd
+
+SRC_URI = "${GNOME_MIRROR}/NetworkManager-openvpn/${@gnome_verdir("${PV}")}/NetworkManager-openvpn-${PV}.tar.xz"
+
+SRC_URI[md5sum] = "4dbbc103761facc7a61a1c00dfd55231"
+SRC_URI[sha256sum] = "af3cc86ba848d21b4ac807a09d575de11335ba4df8ce6fdb089212e77c2231ef"
+
+S = "${WORKDIR}/NetworkManager-openvpn-${PV}"
+
+PACKAGECONFIG[gnome] = "--with-gnome,--without-gnome"
+
+do_install_append () {
+ rm -rf ${D}${libdir}/NetworkManager/*.la
+}
+
+# Create user and group nm-openvpn that are needed since version 1.0.6
+USERADD_PACKAGES = "${PN}"
+USERADD_PARAM_${PN} = "--system nm-openvpn"
+
+FILES_${PN} += " \
+ ${libdir}/NetworkManager/*.so \
+ ${nonarch_libdir}/NetworkManager/VPN/nm-openvpn-service.name \
+"
+
+FILES_${PN}-staticdev += " \
+ ${libdir}/NetworkManager/*.a \
+"
+
+RDEPENDS_${PN} = " \
+ networkmanager \
+ openvpn \
+"
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager/musl/0001-Fix-build-with-musl-systemd-specific.patch b/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager/musl/0001-Fix-build-with-musl-systemd-specific.patch
new file mode 100644
index 0000000..accd2f2
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager/musl/0001-Fix-build-with-musl-systemd-specific.patch
@@ -0,0 +1,179 @@
+From 7b09945585e6ce65049fa4039f26caee8daa44b9 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
+Date: Tue, 2 Apr 2019 01:34:35 +0200
+Subject: [PATCH 1/2] Fix build with musl - systemd specific
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Networkmanager imported some code from systemd. This requires some adjustments
+for musl.
+
+Upstream-Status: Pending
+
+Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
+---
+ shared/systemd/src/basic/in-addr-util.c | 1 +
+ shared/systemd/src/basic/process-util.c | 9 ++++++++
+ shared/systemd/src/basic/socket-util.h | 6 +++++
+ shared/systemd/src/basic/stdio-util.h | 2 ++
+ shared/systemd/src/basic/string-util.h | 5 +++++
+ shared/systemd/src/basic/util.h | 29 +++++--------------------
+ 6 files changed, 28 insertions(+), 24 deletions(-)
+
+diff --git a/shared/systemd/src/basic/in-addr-util.c b/shared/systemd/src/basic/in-addr-util.c
+index 5ced350..c6b52b8 100644
+--- a/shared/systemd/src/basic/in-addr-util.c
++++ b/shared/systemd/src/basic/in-addr-util.c
+@@ -13,6 +13,7 @@
+ #include "in-addr-util.h"
+ #include "macro.h"
+ #include "parse-util.h"
++#include "string-util.h"
+ #include "util.h"
+
+ bool in4_addr_is_null(const struct in_addr *a) {
+diff --git a/shared/systemd/src/basic/process-util.c b/shared/systemd/src/basic/process-util.c
+index b0afb5c..7adc8bd 100644
+--- a/shared/systemd/src/basic/process-util.c
++++ b/shared/systemd/src/basic/process-util.c
+@@ -21,6 +21,9 @@
+ #include <sys/wait.h>
+ #include <syslog.h>
+ #include <unistd.h>
++#ifndef __GLIBC__
++#include <pthread.h>
++#endif
+ #if 0 /* NM_IGNORED */
+ #if HAVE_VALGRIND_VALGRIND_H
+ #include <valgrind/valgrind.h>
+@@ -1168,11 +1171,13 @@ void reset_cached_pid(void) {
+ cached_pid = CACHED_PID_UNSET;
+ }
+
++#ifdef __GLIBC__
+ /* We use glibc __register_atfork() + __dso_handle directly here, as they are not included in the glibc
+ * headers. __register_atfork() is mostly equivalent to pthread_atfork(), but doesn't require us to link against
+ * libpthread, as it is part of glibc anyway. */
+ extern int __register_atfork(void (*prepare) (void), void (*parent) (void), void (*child) (void), void *dso_handle);
+ extern void* __dso_handle _weak_;
++#endif
+
+ pid_t getpid_cached(void) {
+ static bool installed = false;
+@@ -1201,7 +1206,11 @@ pid_t getpid_cached(void) {
+ * only half-documented (glibc doesn't document it but LSB does — though only superficially)
+ * we'll check for errors only in the most generic fashion possible. */
+
++#ifdef __GLIBC__
+ if (__register_atfork(NULL, NULL, reset_cached_pid, __dso_handle) != 0) {
++#else
++ if (pthread_atfork(NULL, NULL, reset_cached_pid) != 0) {
++#endif
+ /* OOM? Let's try again later */
+ cached_pid = CACHED_PID_UNSET;
+ return new_pid;
+diff --git a/shared/systemd/src/basic/socket-util.h b/shared/systemd/src/basic/socket-util.h
+index d2246a8..76f257f 100644
+--- a/shared/systemd/src/basic/socket-util.h
++++ b/shared/systemd/src/basic/socket-util.h
+@@ -13,6 +13,12 @@
+ #include <sys/types.h>
+ #include <sys/un.h>
+
++#if !defined(__GLIBC__)
++/* SIOCGSTAMPNS from linux/asm-generic.h
++ * for src/systemd/src/libsystemd-network/sd-lldp.c */
++#include <linux/sockios.h>
++#endif
++
+ #include "macro.h"
+ #include "missing_socket.h"
+ #include "sparse-endian.h"
+diff --git a/shared/systemd/src/basic/stdio-util.h b/shared/systemd/src/basic/stdio-util.h
+index dc67b6e..6336243 100644
+--- a/shared/systemd/src/basic/stdio-util.h
++++ b/shared/systemd/src/basic/stdio-util.h
+@@ -1,7 +1,9 @@
+ /* SPDX-License-Identifier: LGPL-2.1+ */
+ #pragma once
+
++#if defined(__GLIBC__)
+ #include <printf.h>
++#endif
+ #include <stdarg.h>
+ #include <stdio.h>
+ #include <sys/types.h>
+diff --git a/shared/systemd/src/basic/string-util.h b/shared/systemd/src/basic/string-util.h
+index 38070ab..6b918e0 100644
+--- a/shared/systemd/src/basic/string-util.h
++++ b/shared/systemd/src/basic/string-util.h
+@@ -27,6 +27,11 @@
+ #define strcaseeq(a,b) (strcasecmp((a),(b)) == 0)
+ #define strncaseeq(a, b, n) (strncasecmp((a), (b), (n)) == 0)
+
++/* musl does not know strndupa */
++#if !defined(__GLIBC__)
++#define strndupa(x,s) strncpy(alloca(strlen(x)+1),x,s)
++#endif
++
+ int strcmp_ptr(const char *a, const char *b) _pure_;
+
+ static inline bool streq_ptr(const char *a, const char *b) {
+diff --git a/shared/systemd/src/basic/util.h b/shared/systemd/src/basic/util.h
+index dc33d66..cc768e9 100644
+--- a/shared/systemd/src/basic/util.h
++++ b/shared/systemd/src/basic/util.h
+@@ -27,6 +27,11 @@
+ #include "macro.h"
+ #include "time-util.h"
+
++#if !defined(__GLIBC__)
++typedef int (*__compar_fn_t) (const void*, const void*);
++typedef __compar_fn_t comparison_fn_t;
++#endif
++
+ size_t page_size(void) _pure_;
+ #define PAGE_ALIGN(l) ALIGN_TO((l), page_size())
+
+@@ -66,16 +71,6 @@ int prot_from_flags(int flags) _const_;
+ bool in_initrd(void);
+ void in_initrd_force(bool value);
+
+-void *xbsearch_r(const void *key, const void *base, size_t nmemb, size_t size,
+- __compar_d_fn_t compar, void *arg);
+-
+-#define typesafe_bsearch_r(k, b, n, func, userdata) \
+- ({ \
+- const typeof(b[0]) *_k = k; \
+- int (*_func_)(const typeof(b[0])*, const typeof(b[0])*, typeof(userdata)) = func; \
+- xbsearch_r((const void*) _k, (b), (n), sizeof((b)[0]), (__compar_d_fn_t) _func_, userdata); \
+- })
+-
+ /**
+ * Normal bsearch requires base to be nonnull. Here were require
+ * that only if nmemb > 0.
+@@ -116,20 +111,6 @@ static inline void qsort_safe(void *base, size_t nmemb, size_t size, __compar_fn
+ qsort_safe((p), (n), sizeof((p)[0]), (__compar_fn_t) _func_); \
+ })
+
+-static inline void qsort_r_safe(void *base, size_t nmemb, size_t size, __compar_d_fn_t compar, void *userdata) {
+- if (nmemb <= 1)
+- return;
+-
+- assert(base);
+- qsort_r(base, nmemb, size, compar, userdata);
+-}
+-
+-#define typesafe_qsort_r(p, n, func, userdata) \
+- ({ \
+- int (*_func_)(const typeof(p[0])*, const typeof(p[0])*, typeof(userdata)) = func; \
+- qsort_r_safe((p), (n), sizeof((p)[0]), (__compar_d_fn_t) _func_, userdata); \
+- })
+-
+ /* Normal memcpy requires src to be nonnull. We do nothing if n is 0. */
+ static inline void memcpy_safe(void *dst, const void *src, size_t n) {
+ if (n == 0)
+--
+2.20.1
+
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager/musl/0001-Fix-build-with-musl.patch b/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager/musl/0001-Fix-build-with-musl.patch
deleted file mode 100644
index b3f93ff..0000000
--- a/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager/musl/0001-Fix-build-with-musl.patch
+++ /dev/null
@@ -1,351 +0,0 @@
-From f43c9a5b07832a91383e59d655bc3c8a9f48c451 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
-Date: Tue, 2 Apr 2019 01:34:35 +0200
-Subject: [PATCH] Fix build with musl
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Upstream-Status: Pending
-
-Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
----
- clients/cli/connections.c | 1 -
- libnm-core/nm-utils.c | 2 +-
- shared/n-acd/src/n-acd.c | 1 -
- shared/systemd/src/basic/in-addr-util.c | 1 +
- shared/systemd/src/basic/process-util.c | 9 ++++++
- shared/systemd/src/basic/socket-util.h | 6 ++++
- shared/systemd/src/basic/stdio-util.h | 2 ++
- shared/systemd/src/basic/string-util.h | 5 ++++
- shared/systemd/src/basic/util.h | 29 ++++----------------
- src/platform/wifi/nm-wifi-utils.h | 4 +++
- src/platform/wpan/nm-wpan-utils.h | 2 --
- src/settings/nm-settings-connection.h | 2 --
- src/systemd/src/libsystemd-network/sd-lldp.c | 1 +
- src/systemd/src/systemd/sd-dhcp-client.h | 2 ++
- src/systemd/src/systemd/sd-dhcp-lease.h | 2 ++
- src/systemd/src/systemd/sd-dhcp6-client.h | 2 ++
- src/systemd/src/systemd/sd-ipv4ll.h | 2 ++
- src/systemd/src/systemd/sd-lldp.h | 2 +-
- 19 files changed, 44 insertions(+), 32 deletions(-)
-
-diff --git a/clients/cli/connections.c b/clients/cli/connections.c
-index 6db44f8..36e51cc 100644
---- a/clients/cli/connections.c
-+++ b/clients/cli/connections.c
-@@ -25,7 +25,6 @@
- #include <stdlib.h>
- #include <unistd.h>
- #include <signal.h>
--#include <netinet/ether.h>
- #include <readline/readline.h>
- #include <readline/history.h>
- #include <fcntl.h>
-diff --git a/libnm-core/nm-utils.c b/libnm-core/nm-utils.c
-index d276cfe..2aec785 100644
---- a/libnm-core/nm-utils.c
-+++ b/libnm-core/nm-utils.c
-@@ -21,10 +21,10 @@
-
- #include "nm-default.h"
-
-+#include <netinet/ether.h>
- #include "nm-utils.h"
-
- #include <stdlib.h>
--#include <netinet/ether.h>
- #include <arpa/inet.h>
- #include <uuid/uuid.h>
- #include <libintl.h>
-diff --git a/shared/n-acd/src/n-acd.c b/shared/n-acd/src/n-acd.c
-index def56a2..dd4eb78 100644
---- a/shared/n-acd/src/n-acd.c
-+++ b/shared/n-acd/src/n-acd.c
-@@ -11,7 +11,6 @@
- #include <inttypes.h>
- #include <limits.h>
- #include <linux/if_packet.h>
--#include <netinet/if_ether.h>
- #include <netinet/in.h>
- #include <stdlib.h>
- #include <string.h>
-diff --git a/shared/systemd/src/basic/in-addr-util.c b/shared/systemd/src/basic/in-addr-util.c
-index 5ced350..c6b52b8 100644
---- a/shared/systemd/src/basic/in-addr-util.c
-+++ b/shared/systemd/src/basic/in-addr-util.c
-@@ -13,6 +13,7 @@
- #include "in-addr-util.h"
- #include "macro.h"
- #include "parse-util.h"
-+#include "string-util.h"
- #include "util.h"
-
- bool in4_addr_is_null(const struct in_addr *a) {
-diff --git a/shared/systemd/src/basic/process-util.c b/shared/systemd/src/basic/process-util.c
-index b0afb5c..7adc8bd 100644
---- a/shared/systemd/src/basic/process-util.c
-+++ b/shared/systemd/src/basic/process-util.c
-@@ -21,6 +21,9 @@
- #include <sys/wait.h>
- #include <syslog.h>
- #include <unistd.h>
-+#ifndef __GLIBC__
-+#include <pthread.h>
-+#endif
- #if 0 /* NM_IGNORED */
- #if HAVE_VALGRIND_VALGRIND_H
- #include <valgrind/valgrind.h>
-@@ -1168,11 +1171,13 @@ void reset_cached_pid(void) {
- cached_pid = CACHED_PID_UNSET;
- }
-
-+#ifdef __GLIBC__
- /* We use glibc __register_atfork() + __dso_handle directly here, as they are not included in the glibc
- * headers. __register_atfork() is mostly equivalent to pthread_atfork(), but doesn't require us to link against
- * libpthread, as it is part of glibc anyway. */
- extern int __register_atfork(void (*prepare) (void), void (*parent) (void), void (*child) (void), void *dso_handle);
- extern void* __dso_handle _weak_;
-+#endif
-
- pid_t getpid_cached(void) {
- static bool installed = false;
-@@ -1201,7 +1206,11 @@ pid_t getpid_cached(void) {
- * only half-documented (glibc doesn't document it but LSB does — though only superficially)
- * we'll check for errors only in the most generic fashion possible. */
-
-+#ifdef __GLIBC__
- if (__register_atfork(NULL, NULL, reset_cached_pid, __dso_handle) != 0) {
-+#else
-+ if (pthread_atfork(NULL, NULL, reset_cached_pid) != 0) {
-+#endif
- /* OOM? Let's try again later */
- cached_pid = CACHED_PID_UNSET;
- return new_pid;
-diff --git a/shared/systemd/src/basic/socket-util.h b/shared/systemd/src/basic/socket-util.h
-index d2246a8..76f257f 100644
---- a/shared/systemd/src/basic/socket-util.h
-+++ b/shared/systemd/src/basic/socket-util.h
-@@ -13,6 +13,12 @@
- #include <sys/types.h>
- #include <sys/un.h>
-
-+#if !defined(__GLIBC__)
-+/* SIOCGSTAMPNS from linux/asm-generic.h
-+ * for src/systemd/src/libsystemd-network/sd-lldp.c */
-+#include <linux/sockios.h>
-+#endif
-+
- #include "macro.h"
- #include "missing_socket.h"
- #include "sparse-endian.h"
-diff --git a/shared/systemd/src/basic/stdio-util.h b/shared/systemd/src/basic/stdio-util.h
-index dc67b6e..6336243 100644
---- a/shared/systemd/src/basic/stdio-util.h
-+++ b/shared/systemd/src/basic/stdio-util.h
-@@ -1,7 +1,9 @@
- /* SPDX-License-Identifier: LGPL-2.1+ */
- #pragma once
-
-+#if defined(__GLIBC__)
- #include <printf.h>
-+#endif
- #include <stdarg.h>
- #include <stdio.h>
- #include <sys/types.h>
-diff --git a/shared/systemd/src/basic/string-util.h b/shared/systemd/src/basic/string-util.h
-index 38070ab..6b918e0 100644
---- a/shared/systemd/src/basic/string-util.h
-+++ b/shared/systemd/src/basic/string-util.h
-@@ -27,6 +27,11 @@
- #define strcaseeq(a,b) (strcasecmp((a),(b)) == 0)
- #define strncaseeq(a, b, n) (strncasecmp((a), (b), (n)) == 0)
-
-+/* musl does not know strndupa */
-+#if !defined(__GLIBC__)
-+#define strndupa(x,s) strncpy(alloca(strlen(x)+1),x,s)
-+#endif
-+
- int strcmp_ptr(const char *a, const char *b) _pure_;
-
- static inline bool streq_ptr(const char *a, const char *b) {
-diff --git a/shared/systemd/src/basic/util.h b/shared/systemd/src/basic/util.h
-index dc33d66..cc768e9 100644
---- a/shared/systemd/src/basic/util.h
-+++ b/shared/systemd/src/basic/util.h
-@@ -27,6 +27,11 @@
- #include "macro.h"
- #include "time-util.h"
-
-+#if !defined(__GLIBC__)
-+typedef int (*__compar_fn_t) (const void*, const void*);
-+typedef __compar_fn_t comparison_fn_t;
-+#endif
-+
- size_t page_size(void) _pure_;
- #define PAGE_ALIGN(l) ALIGN_TO((l), page_size())
-
-@@ -66,16 +71,6 @@ int prot_from_flags(int flags) _const_;
- bool in_initrd(void);
- void in_initrd_force(bool value);
-
--void *xbsearch_r(const void *key, const void *base, size_t nmemb, size_t size,
-- __compar_d_fn_t compar, void *arg);
--
--#define typesafe_bsearch_r(k, b, n, func, userdata) \
-- ({ \
-- const typeof(b[0]) *_k = k; \
-- int (*_func_)(const typeof(b[0])*, const typeof(b[0])*, typeof(userdata)) = func; \
-- xbsearch_r((const void*) _k, (b), (n), sizeof((b)[0]), (__compar_d_fn_t) _func_, userdata); \
-- })
--
- /**
- * Normal bsearch requires base to be nonnull. Here were require
- * that only if nmemb > 0.
-@@ -116,20 +111,6 @@ static inline void qsort_safe(void *base, size_t nmemb, size_t size, __compar_fn
- qsort_safe((p), (n), sizeof((p)[0]), (__compar_fn_t) _func_); \
- })
-
--static inline void qsort_r_safe(void *base, size_t nmemb, size_t size, __compar_d_fn_t compar, void *userdata) {
-- if (nmemb <= 1)
-- return;
--
-- assert(base);
-- qsort_r(base, nmemb, size, compar, userdata);
--}
--
--#define typesafe_qsort_r(p, n, func, userdata) \
-- ({ \
-- int (*_func_)(const typeof(p[0])*, const typeof(p[0])*, typeof(userdata)) = func; \
-- qsort_r_safe((p), (n), sizeof((p)[0]), (__compar_d_fn_t) _func_, userdata); \
-- })
--
- /* Normal memcpy requires src to be nonnull. We do nothing if n is 0. */
- static inline void memcpy_safe(void *dst, const void *src, size_t n) {
- if (n == 0)
-diff --git a/src/platform/wifi/nm-wifi-utils.h b/src/platform/wifi/nm-wifi-utils.h
-index 36148b5..d282eb2 100644
---- a/src/platform/wifi/nm-wifi-utils.h
-+++ b/src/platform/wifi/nm-wifi-utils.h
-@@ -22,7 +22,11 @@
- #ifndef __WIFI_UTILS_H__
- #define __WIFI_UTILS_H__
-
-+#if defined(__GLIBC__)
- #include <net/ethernet.h>
-+#else /* musl libc */
-+#define ETH_ALEN 6 /* Octets in one ethernet addr */
-+#endif
-
- #include "nm-dbus-interface.h"
- #include "nm-setting-wireless.h"
-diff --git a/src/platform/wpan/nm-wpan-utils.h b/src/platform/wpan/nm-wpan-utils.h
-index 1b54ec4..ed39938 100644
---- a/src/platform/wpan/nm-wpan-utils.h
-+++ b/src/platform/wpan/nm-wpan-utils.h
-@@ -20,8 +20,6 @@
- #ifndef __WPAN_UTILS_H__
- #define __WPAN_UTILS_H__
-
--#include <net/ethernet.h>
--
- #include "nm-dbus-interface.h"
- #include "platform/nm-netlink.h"
-
-diff --git a/src/settings/nm-settings-connection.h b/src/settings/nm-settings-connection.h
-index e796b71..c01fef6 100644
---- a/src/settings/nm-settings-connection.h
-+++ b/src/settings/nm-settings-connection.h
-@@ -22,8 +22,6 @@
- #ifndef __NETWORKMANAGER_SETTINGS_CONNECTION_H__
- #define __NETWORKMANAGER_SETTINGS_CONNECTION_H__
-
--#include <net/ethernet.h>
--
- #include "nm-dbus-object.h"
- #include "nm-connection.h"
-
-diff --git a/src/systemd/src/libsystemd-network/sd-lldp.c b/src/systemd/src/libsystemd-network/sd-lldp.c
-index 741128e..62914ae 100644
---- a/src/systemd/src/libsystemd-network/sd-lldp.c
-+++ b/src/systemd/src/libsystemd-network/sd-lldp.c
-@@ -3,6 +3,7 @@
- #include "nm-sd-adapt-core.h"
-
- #include <arpa/inet.h>
-+#include <net/ethernet.h>
- #include <linux/sockios.h>
- #include <sys/ioctl.h>
-
-diff --git a/src/systemd/src/systemd/sd-dhcp-client.h b/src/systemd/src/systemd/sd-dhcp-client.h
-index bd0d429..c935fe1 100644
---- a/src/systemd/src/systemd/sd-dhcp-client.h
-+++ b/src/systemd/src/systemd/sd-dhcp-client.h
-@@ -20,7 +20,9 @@
- ***/
-
- #include <inttypes.h>
-+#if defined(__GLIBC__)
- #include <net/ethernet.h>
-+#endif
- #include <netinet/in.h>
- #include <sys/types.h>
- #include <stdbool.h>
-diff --git a/src/systemd/src/systemd/sd-dhcp-lease.h b/src/systemd/src/systemd/sd-dhcp-lease.h
-index d299c79..991e67e 100644
---- a/src/systemd/src/systemd/sd-dhcp-lease.h
-+++ b/src/systemd/src/systemd/sd-dhcp-lease.h
-@@ -19,7 +19,9 @@
- ***/
-
- #include <inttypes.h>
-+#if defined(__GLIBC__)
- #include <net/ethernet.h>
-+#endif
- #include <netinet/in.h>
- #include <sys/types.h>
-
-diff --git a/src/systemd/src/systemd/sd-dhcp6-client.h b/src/systemd/src/systemd/sd-dhcp6-client.h
-index 43d38f5..57ab487 100644
---- a/src/systemd/src/systemd/sd-dhcp6-client.h
-+++ b/src/systemd/src/systemd/sd-dhcp6-client.h
-@@ -20,7 +20,9 @@
- ***/
-
- #include <inttypes.h>
-+#if defined(__GLIBC__)
- #include <net/ethernet.h>
-+#endif
- #include <sys/types.h>
-
- #include "sd-dhcp6-lease.h"
-diff --git a/src/systemd/src/systemd/sd-ipv4ll.h b/src/systemd/src/systemd/sd-ipv4ll.h
-index 71bd4cf..1c667ba 100644
---- a/src/systemd/src/systemd/sd-ipv4ll.h
-+++ b/src/systemd/src/systemd/sd-ipv4ll.h
-@@ -19,7 +19,9 @@
- along with systemd; If not, see <http://www.gnu.org/licenses/>.
- ***/
-
-+#if defined(__GLIBC__)
- #include <net/ethernet.h>
-+#endif
- #include <netinet/in.h>
-
- #include "sd-event.h"
-diff --git a/src/systemd/src/systemd/sd-lldp.h b/src/systemd/src/systemd/sd-lldp.h
-index bf3afad..4cace87 100644
---- a/src/systemd/src/systemd/sd-lldp.h
-+++ b/src/systemd/src/systemd/sd-lldp.h
-@@ -18,7 +18,7 @@
- ***/
-
- #include <inttypes.h>
--#include <net/ethernet.h>
-+//#include <net/ethernet.h>
- #include <sys/types.h>
-
- #include "sd-event.h"
---
-2.20.1
-
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager/musl/0002-Fix-build-with-musl.patch b/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager/musl/0002-Fix-build-with-musl.patch
new file mode 100644
index 0000000..25f9a4a
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager/musl/0002-Fix-build-with-musl.patch
@@ -0,0 +1,118 @@
+From 0b0f2d5abe27b2c9587f449795f0ae3568fc3e38 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
+Date: Mon, 8 Apr 2019 23:10:43 +0200
+Subject: [PATCH 2/2] Fix build with musl
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+The build issues caused by definition conflicts musl vs linux-libc headers
+(error: redefinition of ...) can be reduced to two headers:
+
+1. netinet/if_ether.h <-> linux/if_ether.h: linux-libc header plays well with
+ glibc and musl headers in case libc's variant (netinet/if_ether.h) is
+ included BEFORE linux variant [1]. We add include at two positions:
+ 1. shared/nm-default.h: This is a global which used for networkmanager and
+ is included at the very beginning of all c-files.
+ 2. libnm-core/nm-utils.h: This file makes it into installation and is used
+ by dependent packages as network-manager-applet
+2. net/if_arp. <-> linux/if_ether.h: linux-libc: Unfortunaly these files do
+ not play together in harmony. Therefore the libc variant is included early in
+ shared/nm-default.h and occurances linux/if_arp.h are removed.
+
+Note:
+Be aware that this is still nasty business: We have to trust that musl headers
+define same signatures as linux would do - just because musl-makers consider
+linux-libc headers 'notoriously broken for userspace' [2] (search for
+'error: redefinition of').
+
+[1] http://lists.openembedded.org/pipermail/openembedded-core/2019-March/280440.html
+[2] https://wiki.musl-libc.org/faq.html
+
+Upstream-Status: Pending
+
+Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
+---
+ clients/tui/nmt-device-entry.c | 1 -
+ libnm-core/nm-utils.h | 4 ++++
+ shared/nm-default.h | 3 +++
+ src/devices/nm-device.c | 2 +-
+ src/platform/nm-linux-platform.c | 1 -
+ 5 files changed, 8 insertions(+), 3 deletions(-)
+
+diff --git a/clients/tui/nmt-device-entry.c b/clients/tui/nmt-device-entry.c
+index 43fbbc1..3eae286 100644
+--- a/clients/tui/nmt-device-entry.c
++++ b/clients/tui/nmt-device-entry.c
+@@ -39,7 +39,6 @@
+ #include "nmt-device-entry.h"
+
+ #include <sys/socket.h>
+-#include <linux/if_arp.h>
+
+ #include "nmtui.h"
+
+diff --git a/libnm-core/nm-utils.h b/libnm-core/nm-utils.h
+index 2b5baba..8a50131 100644
+--- a/libnm-core/nm-utils.h
++++ b/libnm-core/nm-utils.h
+@@ -25,6 +25,10 @@
+ #error "Only <NetworkManager.h> can be included directly."
+ #endif
+
++/* include as early as possible for musl */
++#include <netinet/if_ether.h>
++/* #include <net/if_arp.h> - uncoment for broken dependents?? */
++
+ #include <glib.h>
+
+ #include <netinet/in.h>
+diff --git a/shared/nm-default.h b/shared/nm-default.h
+index 26d6476..b29e8af 100644
+--- a/shared/nm-default.h
++++ b/shared/nm-default.h
+@@ -211,6 +211,9 @@
+ #endif
+
+ #include <stdlib.h>
++/* include as early as possible for musl */
++#include <netinet/if_ether.h>
++#include <net/if_arp.h>
+
+ /*****************************************************************************/
+
+diff --git a/src/devices/nm-device.c b/src/devices/nm-device.c
+index 7514fa7..d305fa5 100644
+--- a/src/devices/nm-device.c
++++ b/src/devices/nm-device.c
+@@ -24,6 +24,7 @@
+ #include "nm-device.h"
+
+ #include <netinet/in.h>
++#include <net/if.h>
+ #include <unistd.h>
+ #include <sys/ioctl.h>
+ #include <signal.h>
+@@ -32,7 +33,6 @@
+ #include <arpa/inet.h>
+ #include <fcntl.h>
+ #include <linux/if_addr.h>
+-#include <linux/if_arp.h>
+ #include <linux/rtnetlink.h>
+ #include <linux/pkt_sched.h>
+
+diff --git a/src/platform/nm-linux-platform.c b/src/platform/nm-linux-platform.c
+index 2f5c75b..d6ca6d9 100644
+--- a/src/platform/nm-linux-platform.c
++++ b/src/platform/nm-linux-platform.c
+@@ -27,7 +27,6 @@
+ #include <fcntl.h>
+ #include <libudev.h>
+ #include <linux/ip.h>
+-#include <linux/if_arp.h>
+ #include <linux/if_link.h>
+ #include <linux/if_tun.h>
+ #include <linux/if_tunnel.h>
+--
+2.20.1
+
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager_1.16.0.bb b/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager_1.16.0.bb
index 9f57908..9f01f1b 100644
--- a/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager_1.16.0.bb
+++ b/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager_1.16.0.bb
@@ -28,7 +28,10 @@
file://0002-Do-not-create-settings-settings-property-documentati.patch \
file://0003-dlopen-failure.patch \
"
-SRC_URI_append_libc-musl = " file://musl/0001-Fix-build-with-musl.patch"
+SRC_URI_append_libc-musl = " \
+ file://musl/0001-Fix-build-with-musl-systemd-specific.patch \
+ file://musl/0002-Fix-build-with-musl.patch \
+"
SRC_URI[md5sum] = "10abacaafb162a67d2942adf03e7e9e4"
SRC_URI[sha256sum] = "8e962833b6ca03edda1bc57ed6614a7b8c2339531b44acef098d05f2324c5d2c"
@@ -47,13 +50,20 @@
--with-udev-dir=${nonarch_base_libdir}/udev \
"
-# gobject-introspection related
-GI_DATA_ENABLED_libc-musl = "False"
-
-# stolen from https://github.com/voidlinux/void-packages/blob/master/srcpkgs/NetworkManager/template
-CFLAGS_libc-musl_append = " \
- -DHAVE_SECURE_GETENV -Dsecure_getenv=getenv \
- -D__USE_POSIX199309 -DRTLD_DEEPBIND=0 \
+# stolen from https://github.com/void-linux/void-packages/blob/master/srcpkgs/NetworkManager/template
+# avoids:
+# | ../NetworkManager-1.16.0/libnm-core/nm-json.c:106:50: error: 'RTLD_DEEPBIND' undeclared (first use in this function); did you mean 'RTLD_DEFAULT'?
+#
+# and
+#
+# | In file included from ../NetworkManager-1.16.0/src/systemd/nm-sd-utils-core.c:25:
+# | ../NetworkManager-1.16.0/src/systemd/sd-adapt-core/nm-sd-adapt-core.h:68:6: error: #error neither secure_getenv nor __secure_getenv is available
+# | # error neither secure_getenv nor __secure_getenv is available
+# | ^~~~~
+CFLAGS_append_libc-musl = " \
+ -DRTLD_DEEPBIND=0 \
+ -DHAVE_SECURE_GETENV \
+ -Dsecure_getenv=getenv \
"
do_compile_prepend() {
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/0001-ldb-Refuse-to-build-Samba-against-a-newer-minor-vers.patch b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/0001-ldb-Refuse-to-build-Samba-against-a-newer-minor-vers.patch
deleted file mode 100644
index 4c94831..0000000
--- a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba/0001-ldb-Refuse-to-build-Samba-against-a-newer-minor-vers.patch
+++ /dev/null
@@ -1,86 +0,0 @@
-From 0bc8bc4143a58f91f6d7ce228b6763f377fdf45a Mon Sep 17 00:00:00 2001
-From: Andrew Bartlett <abartlet@samba.org>
-Date: Thu, 12 Jul 2018 12:34:56 +1200
-Subject: [PATCH] ldb: Refuse to build Samba against a newer minor version of
- ldb
-
-Samba is not compatible with new versions of ldb (except release versions)
-
-Other users would not notice the breakages, but Samba makes many
-more assuptions about the LDB internals than any other package.
-
-(Specifically, LDB 1.2 and 1.4 broke builds against released
-Samba versions)
-
-BUG: https://bugzilla.samba.org/show_bug.cgi?id=13519
-
-Signed-off-by: Andrew Bartlett <abartlet@samba.org>
-Reviewed-by: Gary Lockyer <gary@catalyst.net.nz>
-(cherry picked from commit 52efa796538ae004ca62ea32fc8c833472991be6)
----
- lib/ldb/wscript | 32 ++++++++++++++++++++++----------
- 1 file changed, 22 insertions(+), 10 deletions(-)
-
-diff --git a/lib/ldb/wscript b/lib/ldb/wscript
-index d94086b..2bb0832 100644
---- a/lib/ldb/wscript
-+++ b/lib/ldb/wscript
-@@ -62,23 +62,33 @@ def configure(conf):
- conf.env.standalone_ldb = conf.IN_LAUNCH_DIR()
-
- if not conf.env.standalone_ldb:
-+ max_ldb_version = [int(x) for x in VERSION.split(".")]
-+ max_ldb_version[2] = 999
-+ max_ldb_version_dots = "%d.%d.%d" % tuple(max_ldb_version)
-+
- if conf.env.disable_python:
-- if conf.CHECK_BUNDLED_SYSTEM_PKG('ldb', minversion=VERSION,
-- onlyif='talloc tdb tevent',
-- implied_deps='replace talloc tdb tevent'):
-+ if conf.CHECK_BUNDLED_SYSTEM_PKG('ldb',
-+ minversion=VERSION,
-+ maxversion=max_ldb_version_dots,
-+ onlyif='talloc tdb tevent',
-+ implied_deps='replace talloc tdb tevent'):
- conf.define('USING_SYSTEM_LDB', 1)
- else:
- using_system_pyldb_util = True
-- if not conf.CHECK_BUNDLED_SYSTEM_PKG('pyldb-util', minversion=VERSION,
-- onlyif='talloc tdb tevent',
-- implied_deps='replace talloc tdb tevent ldb'):
-+ if not conf.CHECK_BUNDLED_SYSTEM_PKG('pyldb-util',
-+ minversion=VERSION,
-+ maxversion=max_ldb_version_dots,
-+ onlyif='talloc tdb tevent',
-+ implied_deps='replace talloc tdb tevent ldb'):
- using_system_pyldb_util = False
-
- # We need to get a pyldb-util for all the python versions
- # we are building for
- if conf.env['EXTRA_PYTHON']:
- name = 'pyldb-util' + conf.all_envs['extrapython']['PYTHON_SO_ABI_FLAG']
-- if not conf.CHECK_BUNDLED_SYSTEM_PKG(name, minversion=VERSION,
-+ if not conf.CHECK_BUNDLED_SYSTEM_PKG(name,
-+ minversion=VERSION,
-+ maxversion=max_ldb_version_dots,
- onlyif='talloc tdb tevent',
- implied_deps='replace talloc tdb tevent ldb'):
- using_system_pyldb_util = False
-@@ -86,9 +96,11 @@ def configure(conf):
- if using_system_pyldb_util:
- conf.define('USING_SYSTEM_PYLDB_UTIL', 1)
-
-- if conf.CHECK_BUNDLED_SYSTEM_PKG('ldb', minversion=VERSION,
-- onlyif='talloc tdb tevent pyldb-util',
-- implied_deps='replace talloc tdb tevent'):
-+ if conf.CHECK_BUNDLED_SYSTEM_PKG('ldb',
-+ minversion=VERSION,
-+ maxversion=max_ldb_version_dots,
-+ onlyif='talloc tdb tevent pyldb-util',
-+ implied_deps='replace talloc tdb tevent'):
- conf.define('USING_SYSTEM_LDB', 1)
-
- if conf.CONFIG_SET('USING_SYSTEM_LDB'):
---
-2.18.0
-
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba_4.8.11.bb b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba_4.8.11.bb
new file mode 100644
index 0000000..8c08d1e
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba_4.8.11.bb
@@ -0,0 +1,324 @@
+HOMEPAGE = "https://www.samba.org/"
+SECTION = "console/network"
+
+LICENSE = "GPL-3.0+ & LGPL-3.0+ & GPL-2.0+"
+LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504 \
+ file://${COREBASE}/meta/files/common-licenses/LGPL-3.0;md5=bfccfe952269fff2b407dd11f2f3083b \
+ file://${COREBASE}/meta/files/common-licenses/GPL-2.0;md5=801f80980d171dd6425610833a22dbe6 "
+
+SAMBA_MIRROR = "http://samba.org/samba/ftp"
+MIRRORS += "\
+${SAMBA_MIRROR} http://mirror.internode.on.net/pub/samba \n \
+${SAMBA_MIRROR} http://www.mirrorservice.org/sites/ftp.samba.org \n \
+"
+
+SRC_URI = "${SAMBA_MIRROR}/stable/samba-${PV}.tar.gz \
+ file://smb.conf \
+ file://16-do-not-check-xsltproc-manpages.patch \
+ file://20-do-not-import-target-module-while-cross-compile.patch \
+ file://21-add-config-option-without-valgrind.patch \
+ file://netdb_defines.patch \
+ file://glibc_only.patch \
+ file://iconv-4.7.0.patch \
+ file://dnsserver-4.7.0.patch \
+ file://smb_conf-4.7.0.patch \
+ file://volatiles.03_samba \
+ "
+SRC_URI_append_libc-musl = " \
+ file://samba-pam.patch \
+ file://samba-4.3.9-remove-getpwent_r.patch \
+ file://cmocka-uintptr_t.patch \
+ "
+
+SRC_URI[md5sum] = "de61611075e97ea98140a42d9189d9a5"
+SRC_URI[sha256sum] = "d294a8d7455d7d252d7bafc9c474855ea6e0ebe559c3babcd303a5c24e58710a"
+
+UPSTREAM_CHECK_REGEX = "samba\-(?P<pver>4\.8(\.\d+)+).tar.gz"
+
+inherit systemd waf-samba cpan-base perlnative update-rc.d
+# remove default added RDEPENDS on perl
+RDEPENDS_${PN}_remove = "perl"
+
+DEPENDS += "readline virtual/libiconv zlib popt libtalloc libtdb libtevent libbsd libaio libpam"
+
+inherit distro_features_check
+REQUIRED_DISTRO_FEATURES = "pam"
+
+DEPENDS_append_libc-musl = " libtirpc"
+CFLAGS_append_libc-musl = " -I${STAGING_INCDIR}/tirpc"
+LDFLAGS_append_libc-musl = " -ltirpc"
+
+INITSCRIPT_NAME = "samba"
+INITSCRIPT_PARAMS = "start 20 3 5 . stop 20 0 1 6 ."
+
+SYSTEMD_PACKAGES = "${PN}-base ${PN}-ad-dc winbind"
+SYSTEMD_SERVICE_${PN}-base = "nmb.service smb.service"
+SYSTEMD_SERVICE_${PN}-ad-dc = "${@bb.utils.contains('PACKAGECONFIG', 'ad-dc', 'samba.service', '', d)}"
+SYSTEMD_SERVICE_winbind = "winbind.service"
+
+# There are prerequisite settings to enable ad-dc, so disable the service by default.
+# Reference:
+# https://wiki.samba.org/index.php/Setting_up_Samba_as_an_Active_Directory_Domain_Controller
+SYSTEMD_AUTO_ENABLE_${PN}-ad-dc = "disable"
+
+# Use krb5. Build active domain controller.
+#
+PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'systemd zeroconf', d)} \
+ acl ad-dc cups gnutls ldap mitkrb5 \
+"
+
+RDEPENDS_${PN}-ctdb-tests += "bash util-linux-getopt"
+
+PACKAGECONFIG[acl] = "--with-acl-support,--without-acl-support,acl"
+PACKAGECONFIG[fam] = "--with-fam,--without-fam,gamin"
+PACKAGECONFIG[cups] = "--enable-cups,--disable-cups,cups"
+PACKAGECONFIG[ldap] = "--with-ldap,--without-ldap,openldap"
+PACKAGECONFIG[sasl] = ",,cyrus-sasl"
+PACKAGECONFIG[systemd] = "--with-systemd,--without-systemd,systemd"
+PACKAGECONFIG[dmapi] = "--with-dmapi,--without-dmapi,dmapi"
+PACKAGECONFIG[zeroconf] = "--enable-avahi,--disable-avahi,avahi"
+PACKAGECONFIG[valgrind] = ",--without-valgrind,valgrind,"
+PACKAGECONFIG[lttng] = "--with-lttng, --without-lttng,lttng-ust"
+PACKAGECONFIG[archive] = "--with-libarchive, --without-libarchive, libarchive"
+PACKAGECONFIG[libunwind] = ", , libunwind"
+
+# Building the AD (Active Directory) DC (Domain Controller) requires GnuTLS,
+# And ad-dc doesn't work with mitkrb5 for versions prior to 4.7.0 according to:
+# http://samba.2283325.n4.nabble.com/samba-4-6-6-Unknown-dependency-kdc-in-service-kdc-objlist-td4722096.html
+# So the working combination is:
+# 1) ad-dc: enable, gnutls: enable, mitkrb5: disable
+# 2) ad-dc: disable, gnutls: enable/disable, mitkrb5: enable
+#
+# We are now at 4.7.0, so take the above with a grain of salt. We do not need to know where
+# krb5kdc is unless ad-dc is enabled, but we tell configure anyhow.
+#
+PACKAGECONFIG[ad-dc] = "--with-experimental-mit-ad-dc,--without-ad-dc,,"
+PACKAGECONFIG[gnutls] = "--enable-gnutls,--disable-gnutls,gnutls,"
+PACKAGECONFIG[mitkrb5] = "--with-system-mitkrb5 --with-system-mitkdc=/usr/sbin/krb5kdc,,krb5,"
+
+SAMBA4_IDMAP_MODULES="idmap_ad,idmap_rid,idmap_adex,idmap_hash,idmap_tdb2"
+SAMBA4_PDB_MODULES="pdb_tdbsam,${@bb.utils.contains('PACKAGECONFIG', 'ldap', 'pdb_ldap,', '', d)}pdb_ads,pdb_smbpasswd,pdb_wbc_sam,pdb_samba4"
+SAMBA4_AUTH_MODULES="auth_unix,auth_wbc,auth_server,auth_netlogond,auth_script,auth_samba4"
+SAMBA4_MODULES="${SAMBA4_IDMAP_MODULES},${SAMBA4_PDB_MODULES},${SAMBA4_AUTH_MODULES}"
+
+# These libraries are supposed to replace others supplied by packages, but decorate the names of
+# .so files so there will not be a conflict. This is not done consistantly, so be very careful
+# when adding to this list.
+#
+SAMBA4_LIBS="heimdal,cmocka,ldb,pyldb-util,NONE"
+
+# interim packages: As long as ldb/pyldb-util are in SAMBA4_LIBS we need to pack
+# bundled libraries in seperate packages. Otherwise they are auto-packed in
+# package 'samba' which RDEPENDS on lots of packages not wanted e.g autostarting
+# nmbd/smbd daemons
+# Once 'ldb,pyldb-util' are removed from SAMBA4_LIBS the bundled packages can
+# be removed again.
+PACKAGES =+ "${PN}-bundled-ldb ${PN}-bundled-pyldb-util"
+FILES_${PN}-bundled-ldb = "${libdir}/samba/libldb${SOLIBS}"
+FILES_${PN}-bundled-pyldb-util = "${libdir}/samba/libpyldb-util${SOLIBS}"
+
+EXTRA_OECONF += "--enable-fhs \
+ --with-piddir=/run \
+ --with-sockets-dir=/run/samba \
+ --with-modulesdir=${libdir}/samba \
+ --with-lockdir=${localstatedir}/lib/samba \
+ --with-cachedir=${localstatedir}/lib/samba \
+ --disable-rpath-install \
+ --with-shared-modules=${SAMBA4_MODULES} \
+ --bundled-libraries=${SAMBA4_LIBS} \
+ ${@oe.utils.conditional('TARGET_ARCH', 'x86_64', '', '--disable-glusterfs', d)} \
+ --with-cluster-support \
+ --with-profiling-data \
+ --with-libiconv=${STAGING_DIR_HOST}${prefix} \
+ --with-pam --with-pammodulesdir=${base_libdir}/security \
+ "
+
+LDFLAGS += "-Wl,-z,relro,-z,now ${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-gold', ' -fuse-ld=bfd ', '', d)}"
+
+do_install_append() {
+ for section in 1 5 7; do
+ install -d ${D}${mandir}/man$section
+ install -m 0644 ctdb/doc/*.$section ${D}${mandir}/man$section
+ done
+ for section in 1 5 7 8; do
+ install -d ${D}${mandir}/man$section
+ install -m 0644 docs/manpages/*.$section ${D}${mandir}/man$section
+ done
+
+ install -d ${D}${systemd_system_unitdir}
+ install -m 0644 ${S}/bin/default/packaging/systemd/*.service ${D}${systemd_system_unitdir}/
+ sed -e 's,\(ExecReload=\).*\(/kill\),\1${base_bindir}\2,' \
+ -e 's,/etc/sysconfig/samba,${sysconfdir}/default/samba,' \
+ -i ${D}${systemd_system_unitdir}/*.service
+
+ if [ "${@bb.utils.contains('PACKAGECONFIG', 'ad-dc', 'yes', 'no', d)}" = "no" ]; then
+ rm -f ${D}${systemd_system_unitdir}/samba.service
+ fi
+
+ install -d ${D}${sysconfdir}/tmpfiles.d
+ install -m644 packaging/systemd/samba.conf.tmp ${D}${sysconfdir}/tmpfiles.d/samba.conf
+ echo "d ${localstatedir}/log/samba 0755 root root -" \
+ >> ${D}${sysconfdir}/tmpfiles.d/samba.conf
+ install -d ${D}${sysconfdir}/init.d
+ install -m 0755 packaging/sysv/samba.init ${D}${sysconfdir}/init.d/samba
+ sed -e 's,/opt/samba/bin,${sbindir},g' \
+ -e 's,/opt/samba/smb.conf,${sysconfdir}/samba/smb.conf,g' \
+ -e 's,/opt/samba/log,${localstatedir}/log/samba,g' \
+ -e 's,/etc/init.d/samba.server,${sysconfdir}/init.d/samba,g' \
+ -e 's,/usr/bin,${base_bindir},g' \
+ -i ${D}${sysconfdir}/init.d/samba
+
+ install -d ${D}${sysconfdir}/samba
+ echo "127.0.0.1 localhost" > ${D}${sysconfdir}/samba/lmhosts
+ install -m644 ${WORKDIR}/smb.conf ${D}${sysconfdir}/samba/smb.conf
+ install -D -m 644 ${WORKDIR}/volatiles.03_samba ${D}${sysconfdir}/default/volatiles/03_samba
+
+ install -d ${D}${sysconfdir}/default
+ install -m644 packaging/systemd/samba.sysconfig ${D}${sysconfdir}/default/samba
+
+ # install ctdb config file and test cases
+ install -D -m 0644 ${S}/ctdb/tests/onnode/nodes ${D}${sysconfdir}/ctdb/nodes
+ # the items are from ctdb/tests/run_tests.sh
+ for d in onnode takeover tool eventscripts cunit simple complex; do
+ testdir=${D}${datadir}/ctdb-tests/$d
+ install -d $testdir
+ cp ${S}/ctdb/tests/$d/*.sh $testdir
+ cp -r ${S}/ctdb/tests/$d/scripts ${S}/ctdb/tests/$d/stubs $testdir || true
+ done
+
+ # fix file-rdeps qa warning
+ if [ -f ${D}${bindir}/onnode ]; then
+ sed -i 's:\(#!/bin/\)bash:\1sh:' ${D}${bindir}/onnode
+ fi
+
+ chmod 0750 ${D}${sysconfdir}/sudoers.d
+ rm -rf ${D}/run ${D}${localstatedir}/run ${D}${localstatedir}/log
+}
+
+PACKAGES =+ "${PN}-python ${PN}-pidl \
+ ${PN}-dsdb-modules ${PN}-testsuite registry-tools \
+ winbind \
+ ${PN}-common ${PN}-base ${PN}-ad-dc ${PN}-ctdb-tests \
+ smbclient ${PN}-client ${PN}-server ${PN}-test"
+
+python samba_populate_packages() {
+ def module_hook(file, pkg, pattern, format, basename):
+ pn = d.getVar('PN')
+ d.appendVar('RRECOMMENDS_%s-base' % pn, ' %s' % pkg)
+
+ mlprefix = d.getVar('MLPREFIX') or ''
+ pam_libdir = d.expand('${base_libdir}/security')
+ pam_pkgname = mlprefix + 'pam-plugin%s'
+ do_split_packages(d, pam_libdir, '^pam_(.*)\.so$', pam_pkgname, 'PAM plugin for %s', extra_depends='', prepend=True)
+
+ libdir = d.getVar('libdir')
+ do_split_packages(d, libdir, '^lib(.*)\.so\..*$', 'lib%s', 'Samba %s library', extra_depends='${PN}-common', prepend=True, allow_links=True)
+ pkglibdir = '%s/samba' % libdir
+ do_split_packages(d, pkglibdir, '^lib(.*)\.so$', 'lib%s', 'Samba %s library', extra_depends='${PN}-common', prepend=True)
+ moduledir = '%s/samba/auth' % libdir
+ do_split_packages(d, moduledir, '^(.*)\.so$', 'samba-auth-%s', 'Samba %s authentication backend', hook=module_hook, extra_depends='', prepend=True)
+ moduledir = '%s/samba/pdb' % libdir
+ do_split_packages(d, moduledir, '^(.*)\.so$', 'samba-pdb-%s', 'Samba %s password backend', hook=module_hook, extra_depends='', prepend=True)
+}
+
+PACKAGESPLITFUNCS_prepend = "samba_populate_packages "
+PACKAGES_DYNAMIC = "samba-auth-.* samba-pdb-.*"
+
+RDEPENDS_${PN} += "${PN}-base ${PN}-python ${PN}-dsdb-modules"
+RDEPENDS_${PN}-python += "pytalloc python-tdb"
+
+FILES_${PN}-base = "${sbindir}/nmbd \
+ ${sbindir}/smbd \
+ ${sysconfdir}/init.d \
+ ${systemd_system_unitdir}/nmb.service \
+ ${systemd_system_unitdir}/smb.service"
+
+FILES_${PN}-ad-dc = "${sbindir}/samba \
+ ${systemd_system_unitdir}/samba.service \
+ ${libdir}/krb5/plugins/kdb/samba.so \
+"
+RDEPENDS_${PN}-ad-dc = "krb5-kdc"
+
+FILES_${PN}-ctdb-tests = "${bindir}/ctdb_run_tests \
+ ${bindir}/ctdb_run_cluster_tests \
+ ${sysconfdir}/ctdb/nodes \
+ ${datadir}/ctdb-tests \
+ ${datadir}/ctdb/tests \
+ ${localstatedir}/lib/ctdb \
+ "
+
+FILES_${BPN}-common = "${sysconfdir}/default \
+ ${sysconfdir}/samba \
+ ${sysconfdir}/tmpfiles.d \
+ ${localstatedir}/lib/samba \
+ ${localstatedir}/spool/samba \
+"
+
+FILES_${PN} += "${libdir}/vfs/*.so \
+ ${libdir}/charset/*.so \
+ ${libdir}/*.dat \
+ ${libdir}/auth/*.so \
+"
+
+FILES_${PN}-dsdb-modules = "${libdir}/samba/ldb"
+
+FILES_${PN}-testsuite = "${bindir}/gentest \
+ ${bindir}/locktest \
+ ${bindir}/masktest \
+ ${bindir}/ndrdump \
+ ${bindir}/smbtorture"
+
+FILES_registry-tools = "${bindir}/regdiff \
+ ${bindir}/regpatch \
+ ${bindir}/regshell \
+ ${bindir}/regtree"
+
+FILES_winbind = "${sbindir}/winbindd \
+ ${bindir}/wbinfo \
+ ${bindir}/ntlm_auth \
+ ${libdir}/samba/idmap \
+ ${libdir}/samba/nss_info \
+ ${libdir}/winbind_krb5_locator.so \
+ ${libdir}/winbind-krb5-localauth.so \
+ ${sysconfdir}/init.d/winbind \
+ ${systemd_system_unitdir}/winbind.service"
+
+FILES_${PN}-python = "${PYTHON_SITEPACKAGES_DIR}"
+
+FILES_smbclient = "${bindir}/cifsdd \
+ ${bindir}/rpcclient \
+ ${bindir}/smbcacls \
+ ${bindir}/smbclient \
+ ${bindir}/smbcquotas \
+ ${bindir}/smbget \
+ ${bindir}/smbspool \
+ ${bindir}/smbtar \
+ ${bindir}/smbtree \
+ ${libdir}/samba/smbspool_krb5_wrapper"
+
+RDEPENDS_${PN}-pidl_append = " perl"
+FILES_${PN}-pidl = "${bindir}/pidl ${datadir}/perl5/Parse"
+
+RDEPENDS_${PN}-client = "\
+ smbclient \
+ winbind \
+ registry-tools \
+ ${PN}-pidl \
+ "
+
+ALLOW_EMPTY_${PN}-client = "1"
+
+RDEPENDS_${PN}-server = "\
+ ${PN} \
+ winbind \
+ registry-tools \
+ "
+
+ALLOW_EMPTY_${PN}-server = "1"
+
+RDEPENDS_${PN}-test = "\
+ ${PN}-ctdb-tests \
+ ${PN}-testsuite \
+ "
+
+ALLOW_EMPTY_${PN}-test = "1"
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba_4.8.4.bb b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba_4.8.4.bb
deleted file mode 100644
index e86ed96..0000000
--- a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba_4.8.4.bb
+++ /dev/null
@@ -1,314 +0,0 @@
-HOMEPAGE = "https://www.samba.org/"
-SECTION = "console/network"
-
-LICENSE = "GPL-3.0+ & LGPL-3.0+ & GPL-2.0+"
-LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504 \
- file://${COREBASE}/meta/files/common-licenses/LGPL-3.0;md5=bfccfe952269fff2b407dd11f2f3083b \
- file://${COREBASE}/meta/files/common-licenses/GPL-2.0;md5=801f80980d171dd6425610833a22dbe6 "
-
-SAMBA_MIRROR = "http://samba.org/samba/ftp"
-MIRRORS += "\
-${SAMBA_MIRROR} http://mirror.internode.on.net/pub/samba \n \
-${SAMBA_MIRROR} http://www.mirrorservice.org/sites/ftp.samba.org \n \
-"
-
-SRC_URI = "${SAMBA_MIRROR}/stable/samba-${PV}.tar.gz \
- file://smb.conf \
- file://16-do-not-check-xsltproc-manpages.patch \
- file://20-do-not-import-target-module-while-cross-compile.patch \
- file://21-add-config-option-without-valgrind.patch \
- file://netdb_defines.patch \
- file://glibc_only.patch \
- file://iconv-4.7.0.patch \
- file://dnsserver-4.7.0.patch \
- file://smb_conf-4.7.0.patch \
- file://volatiles.03_samba \
- file://0001-ldb-Refuse-to-build-Samba-against-a-newer-minor-vers.patch \
- "
-SRC_URI_append_libc-musl = " \
- file://samba-pam.patch \
- file://samba-4.3.9-remove-getpwent_r.patch \
- file://cmocka-uintptr_t.patch \
- "
-
-SRC_URI[md5sum] = "ca5bfbebd8d9eb95506e16594b2bbee2"
-SRC_URI[sha256sum] = "f5044d149e01894a08b1d114b8b69aed78171a7bb19608bd1fd771453b9a5406"
-
-UPSTREAM_CHECK_REGEX = "samba\-(?P<pver>4\.8(\.\d+)+).tar.gz"
-
-inherit systemd waf-samba cpan-base perlnative update-rc.d
-# remove default added RDEPENDS on perl
-RDEPENDS_${PN}_remove = "perl"
-
-DEPENDS += "readline virtual/libiconv zlib popt libtalloc libtdb libtevent libbsd libaio libpam"
-
-inherit distro_features_check
-REQUIRED_DISTRO_FEATURES = "pam"
-
-DEPENDS_append_libc-musl = " libtirpc"
-CFLAGS_append_libc-musl = " -I${STAGING_INCDIR}/tirpc"
-LDFLAGS_append_libc-musl = " -ltirpc"
-
-INITSCRIPT_NAME = "samba"
-INITSCRIPT_PARAMS = "start 20 3 5 . stop 20 0 1 6 ."
-
-SYSTEMD_PACKAGES = "${PN}-base ${PN}-ad-dc winbind"
-SYSTEMD_SERVICE_${PN}-base = "nmb.service smb.service"
-SYSTEMD_SERVICE_${PN}-ad-dc = "${@bb.utils.contains('PACKAGECONFIG', 'ad-dc', 'samba.service', '', d)}"
-SYSTEMD_SERVICE_winbind = "winbind.service"
-
-# There are prerequisite settings to enable ad-dc, so disable the service by default.
-# Reference:
-# https://wiki.samba.org/index.php/Setting_up_Samba_as_an_Active_Directory_Domain_Controller
-SYSTEMD_AUTO_ENABLE_${PN}-ad-dc = "disable"
-
-# Use krb5. Build active domain controller.
-#
-PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'systemd zeroconf', d)} \
- acl ad-dc cups gnutls ldap mitkrb5 \
-"
-
-RDEPENDS_${PN}-ctdb-tests += "bash util-linux-getopt"
-
-PACKAGECONFIG[acl] = "--with-acl-support,--without-acl-support,acl"
-PACKAGECONFIG[fam] = "--with-fam,--without-fam,gamin"
-PACKAGECONFIG[cups] = "--enable-cups,--disable-cups,cups"
-PACKAGECONFIG[ldap] = "--with-ldap,--without-ldap,openldap"
-PACKAGECONFIG[sasl] = ",,cyrus-sasl"
-PACKAGECONFIG[systemd] = "--with-systemd,--without-systemd,systemd"
-PACKAGECONFIG[dmapi] = "--with-dmapi,--without-dmapi,dmapi"
-PACKAGECONFIG[zeroconf] = "--enable-avahi,--disable-avahi,avahi"
-PACKAGECONFIG[valgrind] = ",--without-valgrind,valgrind,"
-PACKAGECONFIG[lttng] = "--with-lttng, --without-lttng,lttng-ust"
-PACKAGECONFIG[archive] = "--with-libarchive, --without-libarchive, libarchive"
-
-# Building the AD (Active Directory) DC (Domain Controller) requires GnuTLS,
-# And ad-dc doesn't work with mitkrb5 for versions prior to 4.7.0 according to:
-# http://samba.2283325.n4.nabble.com/samba-4-6-6-Unknown-dependency-kdc-in-service-kdc-objlist-td4722096.html
-# So the working combination is:
-# 1) ad-dc: enable, gnutls: enable, mitkrb5: disable
-# 2) ad-dc: disable, gnutls: enable/disable, mitkrb5: enable
-#
-# We are now at 4.7.0, so take the above with a grain of salt. We do not need to know where
-# krb5kdc is unless ad-dc is enabled, but we tell configure anyhow.
-#
-PACKAGECONFIG[ad-dc] = ",--without-ad-dc,,"
-PACKAGECONFIG[gnutls] = "--enable-gnutls,--disable-gnutls,gnutls,"
-PACKAGECONFIG[mitkrb5] = "--with-system-mitkrb5 --with-system-mitkdc=/usr/sbin/krb5kdc,,krb5,"
-
-SAMBA4_IDMAP_MODULES="idmap_ad,idmap_rid,idmap_adex,idmap_hash,idmap_tdb2"
-SAMBA4_PDB_MODULES="pdb_tdbsam,${@bb.utils.contains('PACKAGECONFIG', 'ldap', 'pdb_ldap,', '', d)}pdb_ads,pdb_smbpasswd,pdb_wbc_sam,pdb_samba4"
-SAMBA4_AUTH_MODULES="auth_unix,auth_wbc,auth_server,auth_netlogond,auth_script,auth_samba4"
-SAMBA4_MODULES="${SAMBA4_IDMAP_MODULES},${SAMBA4_PDB_MODULES},${SAMBA4_AUTH_MODULES}"
-
-# These libraries are supposed to replace others supplied by packages, but decorate the names of
-# .so files so there will not be a conflict. This is not done consistantly, so be very careful
-# when adding to this list.
-#
-SAMBA4_LIBS="heimdal,cmocka,ldb,pyldb-util,NONE"
-
-EXTRA_OECONF += "--enable-fhs \
- --with-piddir=/run \
- --with-sockets-dir=/run/samba \
- --with-modulesdir=${libdir}/samba \
- --with-lockdir=${localstatedir}/lib/samba \
- --with-cachedir=${localstatedir}/lib/samba \
- --disable-rpath-install \
- --with-shared-modules=${SAMBA4_MODULES} \
- --bundled-libraries=${SAMBA4_LIBS} \
- ${@oe.utils.conditional('TARGET_ARCH', 'x86_64', '', '--disable-glusterfs', d)} \
- --with-cluster-support \
- --with-profiling-data \
- --with-libiconv=${STAGING_DIR_HOST}${prefix} \
- --with-pam --with-pammodulesdir=${base_libdir}/security \
- "
-
-LDFLAGS += "-Wl,-z,relro,-z,now ${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-gold', ' -fuse-ld=bfd ', '', d)}"
-
-do_install_append() {
- for section in 1 5 7; do
- install -d ${D}${mandir}/man$section
- install -m 0644 ctdb/doc/*.$section ${D}${mandir}/man$section
- done
- for section in 1 5 7 8; do
- install -d ${D}${mandir}/man$section
- install -m 0644 docs/manpages/*.$section ${D}${mandir}/man$section
- done
-
- install -d ${D}${systemd_system_unitdir}
- install -m 0644 ${S}/bin/default/packaging/systemd/*.service ${D}${systemd_system_unitdir}/
- sed -e 's,\(ExecReload=\).*\(/kill\),\1${base_bindir}\2,' \
- -e 's,/etc/sysconfig/samba,${sysconfdir}/default/samba,' \
- -i ${D}${systemd_system_unitdir}/*.service
-
- if [ "${@bb.utils.contains('PACKAGECONFIG', 'ad-dc', 'yes', 'no', d)}" = "no" ]; then
- rm -f ${D}${systemd_system_unitdir}/samba.service
- fi
-
- install -d ${D}${sysconfdir}/tmpfiles.d
- install -m644 packaging/systemd/samba.conf.tmp ${D}${sysconfdir}/tmpfiles.d/samba.conf
- echo "d ${localstatedir}/log/samba 0755 root root -" \
- >> ${D}${sysconfdir}/tmpfiles.d/samba.conf
- install -d ${D}${sysconfdir}/init.d
- install -m 0755 packaging/sysv/samba.init ${D}${sysconfdir}/init.d/samba
- sed -e 's,/opt/samba/bin,${sbindir},g' \
- -e 's,/opt/samba/smb.conf,${sysconfdir}/samba/smb.conf,g' \
- -e 's,/opt/samba/log,${localstatedir}/log/samba,g' \
- -e 's,/etc/init.d/samba.server,${sysconfdir}/init.d/samba,g' \
- -e 's,/usr/bin,${base_bindir},g' \
- -i ${D}${sysconfdir}/init.d/samba
-
- install -d ${D}${sysconfdir}/samba
- echo "127.0.0.1 localhost" > ${D}${sysconfdir}/samba/lmhosts
- install -m644 ${WORKDIR}/smb.conf ${D}${sysconfdir}/samba/smb.conf
- install -D -m 644 ${WORKDIR}/volatiles.03_samba ${D}${sysconfdir}/default/volatiles/03_samba
-
- install -d ${D}${sysconfdir}/default
- install -m644 packaging/systemd/samba.sysconfig ${D}${sysconfdir}/default/samba
-
- # install ctdb config file and test cases
- install -D -m 0644 ${S}/ctdb/tests/onnode/nodes ${D}${sysconfdir}/ctdb/nodes
- # the items are from ctdb/tests/run_tests.sh
- for d in onnode takeover tool eventscripts cunit simple complex; do
- testdir=${D}${datadir}/ctdb-tests/$d
- install -d $testdir
- cp ${S}/ctdb/tests/$d/*.sh $testdir
- cp -r ${S}/ctdb/tests/$d/scripts ${S}/ctdb/tests/$d/stubs $testdir || true
- done
-
- # fix file-rdeps qa warning
- if [ -f ${D}${bindir}/onnode ]; then
- sed -i 's:\(#!/bin/\)bash:\1sh:' ${D}${bindir}/onnode
- fi
-
- chmod 0750 ${D}${sysconfdir}/sudoers.d
- rm -rf ${D}/run ${D}${localstatedir}/run ${D}${localstatedir}/log
-}
-
-PACKAGES =+ "${PN}-python ${PN}-pidl \
- ${PN}-dsdb-modules ${PN}-testsuite registry-tools \
- winbind \
- ${PN}-common ${PN}-base ${PN}-ad-dc ${PN}-ctdb-tests \
- smbclient ${PN}-client ${PN}-server ${PN}-test"
-
-python samba_populate_packages() {
- def module_hook(file, pkg, pattern, format, basename):
- pn = d.getVar('PN')
- d.appendVar('RRECOMMENDS_%s-base' % pn, ' %s' % pkg)
-
- mlprefix = d.getVar('MLPREFIX') or ''
- pam_libdir = d.expand('${base_libdir}/security')
- pam_pkgname = mlprefix + 'pam-plugin%s'
- do_split_packages(d, pam_libdir, '^pam_(.*)\.so$', pam_pkgname, 'PAM plugin for %s', extra_depends='', prepend=True)
-
- libdir = d.getVar('libdir')
- do_split_packages(d, libdir, '^lib(.*)\.so\..*$', 'lib%s', 'Samba %s library', extra_depends='${PN}-common', prepend=True, allow_links=True)
- pkglibdir = '%s/samba' % libdir
- do_split_packages(d, pkglibdir, '^lib(.*)\.so$', 'lib%s', 'Samba %s library', extra_depends='${PN}-common', prepend=True)
- moduledir = '%s/samba/auth' % libdir
- do_split_packages(d, moduledir, '^(.*)\.so$', 'samba-auth-%s', 'Samba %s authentication backend', hook=module_hook, extra_depends='', prepend=True)
- moduledir = '%s/samba/pdb' % libdir
- do_split_packages(d, moduledir, '^(.*)\.so$', 'samba-pdb-%s', 'Samba %s password backend', hook=module_hook, extra_depends='', prepend=True)
-}
-
-PACKAGESPLITFUNCS_prepend = "samba_populate_packages "
-PACKAGES_DYNAMIC = "samba-auth-.* samba-pdb-.*"
-
-RDEPENDS_${PN} += "${PN}-base ${PN}-python ${PN}-dsdb-modules"
-RDEPENDS_${PN}-python += "pytalloc python-tdb"
-
-FILES_${PN}-base = "${sbindir}/nmbd \
- ${sbindir}/smbd \
- ${sysconfdir}/init.d \
- ${localstatedir}/lib/samba \
- ${localstatedir}/nmbd \
- ${localstatedir}/spool/samba \
- ${systemd_system_unitdir}/nmb.service \
- ${systemd_system_unitdir}/smb.service"
-
-FILES_${PN}-ad-dc = "${sbindir}/samba \
- ${systemd_system_unitdir}/samba.service \
- ${libdir}/krb5/plugins/kdb/samba.so \
- "
-RDEPENDS_${PN}-ad-dc = "krb5-kdc"
-
-FILES_${PN}-ctdb-tests = "${bindir}/ctdb_run_tests \
- ${bindir}/ctdb_run_cluster_tests \
- ${sysconfdir}/ctdb/nodes \
- ${datadir}/ctdb-tests \
- ${datadir}/ctdb/tests \
- "
-
-FILES_${BPN}-common = "${sysconfdir}/default \
- ${sysconfdir}/samba \
- ${sysconfdir}/tmpfiles.d \
-"
-
-FILES_${PN} += "${libdir}/vfs/*.so \
- ${libdir}/charset/*.so \
- ${libdir}/*.dat \
- ${libdir}/auth/*.so \
-"
-
-FILES_${PN}-dsdb-modules = "${libdir}/samba/ldb"
-
-FILES_${PN}-testsuite = "${bindir}/gentest \
- ${bindir}/locktest \
- ${bindir}/masktest \
- ${bindir}/ndrdump \
- ${bindir}/smbtorture"
-
-FILES_registry-tools = "${bindir}/regdiff \
- ${bindir}/regpatch \
- ${bindir}/regshell \
- ${bindir}/regtree"
-
-FILES_winbind = "${sbindir}/winbindd \
- ${bindir}/wbinfo \
- ${bindir}/ntlm_auth \
- ${libdir}/samba/idmap \
- ${libdir}/samba/nss_info \
- ${libdir}/winbind_krb5_locator.so \
- ${libdir}/winbind-krb5-localauth.so \
- ${sysconfdir}/init.d/winbind \
- ${systemd_system_unitdir}/winbind.service"
-
-FILES_${PN}-python = "${PYTHON_SITEPACKAGES_DIR}"
-
-FILES_smbclient = "${bindir}/cifsdd \
- ${bindir}/rpcclient \
- ${bindir}/smbcacls \
- ${bindir}/smbclient \
- ${bindir}/smbcquotas \
- ${bindir}/smbget \
- ${bindir}/smbspool \
- ${bindir}/smbtar \
- ${bindir}/smbtree \
- ${libdir}/samba/smbspool_krb5_wrapper"
-
-RDEPENDS_${PN}-pidl_append = " perl"
-FILES_${PN}-pidl = "${bindir}/pidl ${datadir}/perl5/Parse"
-
-RDEPENDS_${PN}-client = "\
- smbclient \
- winbind \
- registry-tools \
- ${PN}-pidl \
- "
-
-ALLOW_EMPTY_${PN}-client = "1"
-
-RDEPENDS_${PN}-server = "\
- ${PN} \
- winbind \
- registry-tools \
- "
-
-ALLOW_EMPTY_${PN}-server = "1"
-
-RDEPENDS_${PN}-test = "\
- ${PN}-ctdb-tests \
- ${PN}-testsuite \
- "
-
-ALLOW_EMPTY_${PN}-test = "1"
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/wolfssl/wolfssl_3.15.8.bb b/meta-openembedded/meta-networking/recipes-connectivity/wolfssl/wolfssl_3.15.8.bb
deleted file mode 100644
index d4b9691..0000000
--- a/meta-openembedded/meta-networking/recipes-connectivity/wolfssl/wolfssl_3.15.8.bb
+++ /dev/null
@@ -1,21 +0,0 @@
-SUMMARY = "wolfSSL Lightweight Embedded SSL/TLS Library"
-DESCRIPTION = "wolfSSL, formerly CyaSSL, is a lightweight SSL library written \
- in C and optimized for embedded and RTOS environments. It can \
- be up to 20 times smaller than OpenSSL while still supporting \
- a full TLS client and server, up to TLS 1.3"
-HOMEPAGE = "https://www.wolfssl.com/products/wolfssl"
-BUGTRACKER = "https://github.com/wolfssl/wolfssl/issues"
-SECTION = "libs"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
-
-PROVIDES += "cyassl"
-RPROVIDES_${PN} = "cyassl"
-
-SRC_URI = "git://github.com/wolfSSL/wolfssl.git;protocol=https"
-SRCREV = "e87433e2b6682aa7162fcb4aafefb08e2fbd932b"
-S = "${WORKDIR}/git"
-
-inherit autotools
-
-BBCLASSEXTEND += "native nativesdk"
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/wolfssl/wolfssl_4.0.0.bb b/meta-openembedded/meta-networking/recipes-connectivity/wolfssl/wolfssl_4.0.0.bb
new file mode 100644
index 0000000..d8883a7
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-connectivity/wolfssl/wolfssl_4.0.0.bb
@@ -0,0 +1,21 @@
+SUMMARY = "wolfSSL Lightweight Embedded SSL/TLS Library"
+DESCRIPTION = "wolfSSL, formerly CyaSSL, is a lightweight SSL library written \
+ in C and optimized for embedded and RTOS environments. It can \
+ be up to 20 times smaller than OpenSSL while still supporting \
+ a full TLS client and server, up to TLS 1.3"
+HOMEPAGE = "https://www.wolfssl.com/products/wolfssl"
+BUGTRACKER = "https://github.com/wolfssl/wolfssl/issues"
+SECTION = "libs"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
+
+PROVIDES += "cyassl"
+RPROVIDES_${PN} = "cyassl"
+
+SRC_URI = "git://github.com/wolfSSL/wolfssl.git;protocol=https"
+SRCREV = "21f2beca9f320199fcea4a96df3e19967804144b"
+S = "${WORKDIR}/git"
+
+inherit autotools
+
+BBCLASSEXTEND += "native nativesdk"
diff --git a/meta-openembedded/meta-networking/recipes-core/packagegroups/packagegroup-meta-networking.bb b/meta-openembedded/meta-networking/recipes-core/packagegroups/packagegroup-meta-networking.bb
index 63ad34c..64eabe4 100644
--- a/meta-openembedded/meta-networking/recipes-core/packagegroups/packagegroup-meta-networking.bb
+++ b/meta-openembedded/meta-networking/recipes-core/packagegroups/packagegroup-meta-networking.bb
@@ -38,8 +38,9 @@
inetutils wolfssl lftp miniupnpd networkmanager \
networkmanager-openvpn rdist nanomsg python-networkmanager \
wireless-regdb \
- ${@bb.utils.contains("DISTRO_FEATURE", "bluez5 x11", "blueman", "", d)} \
- ${@bb.utils.contains("DISTRO_FEATURE", "pam", "samba", "", d)} \
+ ${@bb.utils.contains("DISTRO_FEATURES", "bluez5 x11", "blueman", "", d)} \
+ ${@bb.utils.contains("DISTRO_FEATURES", "pam", "samba", "", d)} \
+ ${@bb.utils.contains("DISTRO_FEATURES", "pam", "samba", "", d)} \
"
RDEPENDS_packagegroup-meta-networking-daemons = "\
@@ -47,7 +48,7 @@
ptpd igmpproxy opensaf squid \
atftp postfix iscsi-initiator-utils vsftpd cyrus-sasl \
pure-ftpd vblade tftp-hpa ncftp \
- ${@bb.utils.contains("DISTRO_FEATURE", "systemd", "networkd-dispatcher", "", d)} \
+ ${@bb.utils.contains("DISTRO_FEATURES", "systemd", "networkd-dispatcher", "", d)} \
"
RDEPENDS_packagegroup-meta-networking-devtools = "\
@@ -56,7 +57,7 @@
RDEPENDS_packagegroup-meta-networking-extended = "\
corosync \
- ${@bb.utils.contains("DISTRO_FEATURE", "systemd", "dlm", "", d)} \
+ ${@bb.utils.contains("DISTRO_FEATURES", "systemd", "dlm", "", d)} \
"
RDEPENDS_packagegroup-meta-networking-filter = "\
@@ -85,7 +86,7 @@
tsocks freediameter xl2tpd babeld mdns net-snmp \
quagga pptp-linux zeroconf nopoll openflow rp-pppoe \
radiusclient-ng openl2tp usrsctp \
- ${@bb.utils.contains("DISTRO_FEATURE", "pam", "dante", "", d)} \
+ ${@bb.utils.contains("DISTRO_FEATURES", "pam", "dante", "", d)} \
"
RDEPENDS_packagegroup-meta-networking-support = "\
@@ -104,7 +105,7 @@
netcat-openbsd fetchmail yp-tools ypbind-mt yp-tools \
arptables macchanger nghttp2 strongswan fping \
dnssec-conf libesmtp cifs-utils open-isns \
- ${@bb.utils.contains("DISTRO_FEATURE", "pam", "libldb", "", d)} \
+ ${@bb.utils.contains("DISTRO_FEATURES", "pam", "libldb", "", d)} \
${@bb.utils.contains("LICENSE_FLAGS_WHITELIST", "non-commercial", "netperf", "", d)} \
${@bb.utils.contains_any("TRANSLATED_TARGET_ARCH", "i586 x86-64", "spice", "", d)} \
"
diff --git a/meta-openembedded/meta-networking/recipes-daemons/dnrd/dnrd/dnrd.conf.sample b/meta-openembedded/meta-networking/recipes-daemons/dnrd/dnrd/dnrd.conf.sample
deleted file mode 100644
index ec05841..0000000
--- a/meta-openembedded/meta-networking/recipes-daemons/dnrd/dnrd/dnrd.conf.sample
+++ /dev/null
@@ -1,21 +0,0 @@
-# options to dnrd
-
-# example: two default dns servers and dns servers for exampledomain.com. The
-# latter are load balanced (-b)
-#
-#
-
-# DNRD_OPTS="
-# -s XXX.XXX.XX.XXX
-# -s XXX.XXX.XX.XXX
-# -b
-# -s XXX.XXX.XX.XXX:exampledomain.com
-# -s XXX.XXX.XX.XXX:exampledomain.com"
-
-# example: dnrd user
-#
-
-# DNRD_USER="user"
-#
-
-
diff --git a/meta-openembedded/meta-networking/recipes-daemons/dnrd/dnrd/dnrd.init b/meta-openembedded/meta-networking/recipes-daemons/dnrd/dnrd/dnrd.init
deleted file mode 100644
index 2fe583f..0000000
--- a/meta-openembedded/meta-networking/recipes-daemons/dnrd/dnrd/dnrd.init
+++ /dev/null
@@ -1,94 +0,0 @@
-#!/bin/sh
-#
-# Startup script for dnrd
-#
-# Copyright 2008, Rakesh Pandit <rakesh.pandit@gmail.com>
-#
-# This source is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2, or (at your option)
-# any later version.
-
-# This source is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-#
-# chkconfig: - 85 15
-# description: dnrd is a proxying nameserver. It forwards DNS queries to the
-# appropriate nameserver, but can also act as the primary nameserver for
-# a subnet behind a firewall. It also has features such as caching DNS
-# requests, support for DNS servers, cache poisoning prevention, TCP
-# support, etc..
-
-# processname: dnrd
-# pidfile: /var/run/dnrd.pid
-# config: /etc/dnrd/dnrd.conf
-
-# Provides: dnrd
-# Required-Start:
-# Should-Start:
-# Required-Stop:
-# Default-Stop: 0 1 2 6
-# Short-Description: Start dnrd daemon
-# Description: Domain Name Relay Daemon
-# END INIT INFO
-
-exe=/usr/sbin/dnrd
-pfile=/etc/passwd
-
-# Source function library.
-. /etc/init.d/functions
-
-# Source conf file
-. /etc/dnrd/dnrd.conf
-
-[ -x $exe ] || exit 1
-[ -r "/etc/dnrd/dnrd.conf" ] || exit 1
-if [ $DNRD_USER ]
-then
- grep "^${LOGIN}:" $pfile >/dev/null 2>&1
- if [ $? -eq 0 ];then
- echo "$DNRD_USER specified in /etc/dnrd/dnrd.conf does not exist!"
- fi
-else
- echo "DNRD_USER not set at /etc/dnrd/dnrd.conf!"
- exit 1
-fi
-
-case "$1" in
- start)
- echo -n "Starting dnrd: "
- daemon dnrd $DNRD_OPTS -u $DNRD_USER
- echo
- touch /var/lock/subsys/dnrd
- ;;
- stop)
- echo -n "Shutting down dnrd: "
- killproc dnrd
- echo
- rm -f /var/lock/subsys/dnrd
- rm -f /var/run/dnrd.pid
- ;;
- status)
- status dnrd
- ;;
- restart)
- $0 stop
- $0 start
- ;;
- reload)
- echo -n "Reloading dnrd: "
- killproc dnrd -HUP
- echo
- ;;
- *)
- echo "Usage: $0 {start|stop|restart|reload|status}"
- exit 1
-esac
-
-exit 0
diff --git a/meta-openembedded/meta-networking/recipes-daemons/dnrd/dnrd/dnrd.service b/meta-openembedded/meta-networking/recipes-daemons/dnrd/dnrd/dnrd.service
deleted file mode 100644
index 9c9fa66..0000000
--- a/meta-openembedded/meta-networking/recipes-daemons/dnrd/dnrd/dnrd.service
+++ /dev/null
@@ -1,12 +0,0 @@
-[Unit]
-Description=Domain Name Relay Daemon
-After=network.target
-
-[Service]
-Type=forking
-PIDFile=/var/run/dnrd.pid
-EnvironmentFile=/etc/dnrd/dnrd.conf
-ExecStart=/usr/sbin/dnrd $DNRD_OPTS -u $DNRD_USER
-
-[Install]
-WantedBy=multi-user.target
diff --git a/meta-openembedded/meta-networking/recipes-daemons/keepalived/keepalived_1.4.2.bb b/meta-openembedded/meta-networking/recipes-daemons/keepalived/keepalived_1.4.2.bb
deleted file mode 100644
index 31c50ff..0000000
--- a/meta-openembedded/meta-networking/recipes-daemons/keepalived/keepalived_1.4.2.bb
+++ /dev/null
@@ -1,45 +0,0 @@
-SUMMARY = "High Availability monitor built upon LVS, VRRP and service pollers"
-DESCRIPTION = "Keepalived is a routing software written in C. The main goal \
-of this project is to provide simple and robust facilities for loadbalancing \
-and high-availability to Linux system and Linux based infrastructures. \
-Loadbalancing framework relies on well-known and widely used Linux Virtual \
-Server (IPVS) kernel module providing Layer4 loadbalancing \
-"
-HOMEPAGE = "http://www.keepalived.org/"
-
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
-
-SRC_URI = "http://www.keepalived.org/software/${BP}.tar.gz"
-SRC_URI[md5sum] = "610af6e04071f02d3469191de7499f4e"
-SRC_URI[sha256sum] = "4e2d7cc01a6ee29a3955f5c622d47704ba7d9dd758189f15e9def016a2d1faa3"
-
-DEPENDS = "libnfnetlink openssl"
-
-inherit autotools pkgconfig systemd
-
-PACKAGECONFIG ??= "libnl snmp \
- ${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)} \
-"
-PACKAGECONFIG[libnl] = "--enable-libnl,--disable-libnl,libnl"
-PACKAGECONFIG[snmp] = "--enable-snmp,--disable-snmp,net-snmp"
-PACKAGECONFIG[systemd] = "--with-init=systemd --with-systemdsystemunitdir=${systemd_system_unitdir},--with-init=SYSV,systemd"
-
-EXTRA_OECONF = "--disable-libiptc"
-EXTRA_OEMAKE = "initdir=${sysconfdir}/init.d"
-
-do_install_append() {
- if [ -f ${D}${sysconfdir}/init.d/${BPN} ]; then
- chmod 0755 ${D}${sysconfdir}/init.d/${BPN}
- sed -i 's#rc.d/##' ${D}${sysconfdir}/init.d/${BPN}
- fi
-
- if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then
- install -D -m 0644 ${B}/${BPN}/${BPN}.service ${D}${systemd_system_unitdir}/${BPN}.service
- fi
-}
-
-FILES_${PN} += "${datadir}/snmp/mibs/KEEPALIVED-MIB.txt"
-
-SYSTEMD_SERVICE_${PN} = "keepalived.service"
-SYSTEMD_AUTO_ENABLE ?= "disable"
diff --git a/meta-openembedded/meta-networking/recipes-daemons/keepalived/keepalived_2.0.15.bb b/meta-openembedded/meta-networking/recipes-daemons/keepalived/keepalived_2.0.15.bb
new file mode 100644
index 0000000..9a20e02
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-daemons/keepalived/keepalived_2.0.15.bb
@@ -0,0 +1,45 @@
+SUMMARY = "High Availability monitor built upon LVS, VRRP and service pollers"
+DESCRIPTION = "Keepalived is a routing software written in C. The main goal \
+of this project is to provide simple and robust facilities for loadbalancing \
+and high-availability to Linux system and Linux based infrastructures. \
+Loadbalancing framework relies on well-known and widely used Linux Virtual \
+Server (IPVS) kernel module providing Layer4 loadbalancing \
+"
+HOMEPAGE = "http://www.keepalived.org/"
+
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
+
+SRC_URI = "http://www.keepalived.org/software/${BP}.tar.gz"
+SRC_URI[md5sum] = "68413d76fc23191ddd66246d498e19b5"
+SRC_URI[sha256sum] = "933ee01bc6346aa573453b998f87510d3cce4aba4537c9642b24e6dbfba5c6f4"
+
+DEPENDS = "libnfnetlink openssl"
+
+inherit autotools pkgconfig systemd
+
+PACKAGECONFIG ??= "libnl snmp \
+ ${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)} \
+"
+PACKAGECONFIG[libnl] = "--enable-libnl,--disable-libnl,libnl"
+PACKAGECONFIG[snmp] = "--enable-snmp,--disable-snmp,net-snmp"
+PACKAGECONFIG[systemd] = "--with-init=systemd --with-systemdsystemunitdir=${systemd_system_unitdir},--with-init=SYSV,systemd"
+
+EXTRA_OECONF = "--disable-libiptc"
+EXTRA_OEMAKE = "initdir=${sysconfdir}/init.d"
+
+do_install_append() {
+ if [ -f ${D}${sysconfdir}/init.d/${BPN} ]; then
+ chmod 0755 ${D}${sysconfdir}/init.d/${BPN}
+ sed -i 's#rc.d/##' ${D}${sysconfdir}/init.d/${BPN}
+ fi
+
+ if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then
+ install -D -m 0644 ${B}/${BPN}/${BPN}.service ${D}${systemd_system_unitdir}/${BPN}.service
+ fi
+}
+
+FILES_${PN} += "${datadir}/snmp/mibs/KEEPALIVED-MIB.txt"
+
+SYSTEMD_SERVICE_${PN} = "keepalived.service"
+SYSTEMD_AUTO_ENABLE ?= "disable"
diff --git a/meta-openembedded/meta-networking/recipes-daemons/networkd-dispatcher/networkd-dispatcher.bb b/meta-openembedded/meta-networking/recipes-daemons/networkd-dispatcher/networkd-dispatcher.bb
deleted file mode 100644
index 050a938..0000000
--- a/meta-openembedded/meta-networking/recipes-daemons/networkd-dispatcher/networkd-dispatcher.bb
+++ /dev/null
@@ -1,34 +0,0 @@
-python __anonymous() {
- features = d.getVar('DISTRO_FEATURES')
- if not features or 'systemd' not in features:
- raise bb.parse.SkipPackage('networkd-dispatcher needs systemd in DISTRO_FEATURES')
-}
-
-SUMMARY = "Dispatcher service for systemd-networkd connection status changes"
-DESCRIPTION = "This daemon is similar to NetworkManager-dispatcher, but is much \
-more limited in the types of events it supports due to the limited nature of \
-systemd-networkd(8)."
-AUTHOR = "Clayton Craft and others"
-
-LICENSE = "GPLv3"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=84dcc94da3adb52b53ae4fa38fe49e5d"
-
-RDEPENDS_${PN} = "systemd python3 python3-pygobject python3-dbus"
-
-SRC_URI = "git://gitlab.com/craftyguy/networkd-dispatcher.git;protocol=https"
-SRCREV = "c7e25623a161b64618ea778541c064d2a1df086b"
-PV = "1.7+git${SRCPV}"
-
-S = "${WORKDIR}/git"
-
-# Nothing to build, just a python script to install
-do_configure[noexec] = "1"
-do_compile[noexec] = "1"
-
-do_install() {
- install -D -m 0755 ${S}/networkd-dispatcher ${D}${sbindir}/networkd-dispatcher
- install -D -m 0644 ${S}/networkd-dispatcher.service ${D}/${systemd_system_unitdir}/networkd-dispatcher.service
- install -D -m 0644 ${S}/networkd-dispatcher.conf ${D}/${sysconfdir}/conf.d/networkd-dispatcher.conf
-}
-
-FILES_${PN} += "${systemd_system_unitdir}/networkd-dispatcher.service"
diff --git a/meta-openembedded/meta-networking/recipes-daemons/networkd-dispatcher/networkd-dispatcher_2.0.1.bb b/meta-openembedded/meta-networking/recipes-daemons/networkd-dispatcher/networkd-dispatcher_2.0.1.bb
new file mode 100644
index 0000000..affd0aa
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-daemons/networkd-dispatcher/networkd-dispatcher_2.0.1.bb
@@ -0,0 +1,32 @@
+python __anonymous() {
+ features = d.getVar('DISTRO_FEATURES')
+ if not features or 'systemd' not in features:
+ raise bb.parse.SkipPackage('networkd-dispatcher needs systemd in DISTRO_FEATURES')
+}
+
+SUMMARY = "Dispatcher service for systemd-networkd connection status changes"
+DESCRIPTION = "This daemon is similar to NetworkManager-dispatcher, but is much \
+more limited in the types of events it supports due to the limited nature of \
+systemd-networkd(8)."
+AUTHOR = "Clayton Craft and others"
+
+LICENSE = "GPLv3"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=84dcc94da3adb52b53ae4fa38fe49e5d"
+
+RDEPENDS_${PN} = "systemd python3 python3-pygobject python3-dbus"
+
+SRC_URI = "https://gitlab.com/craftyguy/networkd-dispatcher/-/archive/${PV}/networkd-dispatcher-${PV}.tar.bz2"
+SRC_URI[md5sum] = "304d7dcc21331ea295e207f8493cb8d8"
+SRC_URI[sha256sum] = "21f84c3646a043329dc64787e4e58dfce592b2559b0e3069af82c469805660c2"
+
+# Nothing to build, just a python script to install
+do_configure[noexec] = "1"
+do_compile[noexec] = "1"
+
+do_install() {
+ install -D -m 0755 ${S}/networkd-dispatcher ${D}${sbindir}/networkd-dispatcher
+ install -D -m 0644 ${S}/networkd-dispatcher.service ${D}/${systemd_system_unitdir}/networkd-dispatcher.service
+ install -D -m 0644 ${S}/networkd-dispatcher.conf ${D}/${sysconfdir}/conf.d/networkd-dispatcher.conf
+}
+
+FILES_${PN} += "${systemd_system_unitdir}/networkd-dispatcher.service"
diff --git a/meta-openembedded/meta-networking/recipes-daemons/openhpi/files/openhpi-fix-function-saHpiSensorThresholds.patch b/meta-openembedded/meta-networking/recipes-daemons/openhpi/files/openhpi-fix-function-saHpiSensorThresholds.patch
new file mode 100644
index 0000000..b2771c0
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-daemons/openhpi/files/openhpi-fix-function-saHpiSensorThresholds.patch
@@ -0,0 +1,35 @@
+From e0b2be7a1fce0fed63bac8c350b711b69edfe30e Mon Sep 17 00:00:00 2001
+From: "yanjun.zhu" <yanjun.zhu@windriver.com>
+Date: Tue, 30 Apr 2019 10:04:58 +0800
+Subject: [PATCH] openhpid/safhpi.c: fix function saHpiSensorThresholdsSet
+
+In COPY_TH the SensorThresholds->TH will be copied to tmp.TH only if
+TH.IsSupported == SAHPI_TRUE. So we should pass &tmp but not
+SensorThresholds as the argument to OH_CALL_ABI. Otherwise the TH will
+be set even if TH.IsSupported == SAHPI_FALSE.
+
+Upstream-Status: Submitted
+[https://github.com/open-hpi/openhpi/pull/2744/commits/77a78bb1ada56e55c5ba6d7a5987c214705bf035]
+
+Signed-off-by: yanjun.zhu <yanjun.zhu@windriver.com>
+Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
+---
+ openhpid/safhpi.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/openhpid/safhpi.c b/openhpid/safhpi.c
+index 28a2632..61b7f03 100644
+--- a/openhpid/safhpi.c
++++ b/openhpid/safhpi.c
+@@ -1933,7 +1933,7 @@ SaErrorT SAHPI_API saHpiSensorThresholdsSet (
+ oh_release_domain(d); /* Unlock domain */
+
+ OH_CALL_ABI(h, set_sensor_thresholds, SA_ERR_HPI_INVALID_CMD, rv,
+- ResourceId, SensorNum, SensorThresholds);
++ ResourceId, SensorNum, &tmp);
+ oh_release_handler(h);
+
+ return rv;
+--
+2.7.4
+
diff --git a/meta-openembedded/meta-networking/recipes-daemons/openhpi/files/openhpi-fix-testfail-errors.patch b/meta-openembedded/meta-networking/recipes-daemons/openhpi/files/openhpi-fix-testfail-errors.patch
deleted file mode 100644
index 60e2e79..0000000
--- a/meta-openembedded/meta-networking/recipes-daemons/openhpi/files/openhpi-fix-testfail-errors.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-Fix for saftest failures.
-
-Upstream-Status: Pending
-
-Signed-off-by: yanjun.zhu <yanjun.zhu@windriver.com>
-
-Index: openhpi-3.6.1/openhpid/safhpi.c
-===================================================================
---- openhpi-3.6.1.orig/openhpid/safhpi.c
-+++ openhpi-3.6.1/openhpid/safhpi.c
-@@ -1933,7 +1933,7 @@ SaErrorT SAHPI_API saHpiSensorThresholds
- oh_release_domain(d); /* Unlock domain */
-
- OH_CALL_ABI(h, set_sensor_thresholds, SA_ERR_HPI_INVALID_CMD, rv,
-- ResourceId, SensorNum, SensorThresholds);
-+ ResourceId, SensorNum, &tmp);
- oh_release_handler(h);
-
- return rv;
-Index: openhpi-3.6.1/utils/sahpi_struct_utils.c
-===================================================================
---- openhpi-3.6.1.orig/utils/sahpi_struct_utils.c
-+++ openhpi-3.6.1/utils/sahpi_struct_utils.c
-@@ -3861,6 +3861,9 @@ SaHpiBoolT oh_valid_textbuffer(SaHpiText
- /* found a unpaired surrogate */
- return SAHPI_FALSE;
- }
-+ } else {
-+ /*the first 2 bytes wrong*/
-+ return SAHPI_FALSE;
- }
- }
- break;
diff --git a/meta-openembedded/meta-networking/recipes-daemons/openhpi/openhpi_3.8.0.bb b/meta-openembedded/meta-networking/recipes-daemons/openhpi/openhpi_3.8.0.bb
index ca9130d..e3a0c2e 100644
--- a/meta-openembedded/meta-networking/recipes-daemons/openhpi/openhpi_3.8.0.bb
+++ b/meta-openembedded/meta-networking/recipes-daemons/openhpi/openhpi_3.8.0.bb
@@ -33,7 +33,7 @@
file://openhpi-glib-cross-compile.patch \
file://openhpi-linkfix.patch \
file://openhpi-fix-host-gcc.patch \
- file://openhpi-fix-testfail-errors.patch \
+ file://openhpi-fix-function-saHpiSensorThresholds.patch \
file://openhpi-add-libnetsnmp-when-link.patch \
file://openhpi-invalide-session.patch \
file://openhpi-use-serial-tests-config-needed-by-ptest.patch \
@@ -70,10 +70,10 @@
do_install_append () {
install -m 0755 -d ${D}${sysconfdir}/${BPN}
- install -m 0755 ${S}/openhpiclient.conf.example ${D}${sysconfdir}/${BPN}/openhpiclient.conf
- install -m 0700 ${S}/openhpi.conf.example ${D}${sysconfdir}/${BPN}/openhpi.conf
- install -m 0755 ${S}/simulation.data.example ${D}${sysconfdir}/${BPN}/simulation.data
- install -m 0755 ${S}/test_agent.data.example ${D}${sysconfdir}/${BPN}/test_agent.data
+ install -m 0644 ${S}/openhpiclient.conf.example ${D}${sysconfdir}/${BPN}/openhpiclient.conf
+ install -m 0600 ${S}/openhpi.conf.example ${D}${sysconfdir}/${BPN}/openhpi.conf
+ install -m 0644 ${S}/simulation.data.example ${D}${sysconfdir}/${BPN}/simulation.data
+ install -m 0644 ${S}/test_agent.data.example ${D}${sysconfdir}/${BPN}/test_agent.data
install -m 0755 ${WORKDIR}/openhpi.init ${D}${sysconfdir}/init.d/openhpid
install -d ${D}${systemd_unitdir}/system
@@ -105,6 +105,9 @@
sed -i "s/^Makefile:/MM:/g" ${x};
done;
+ install -m 644 ${S}/openhpid/t/ohpi/openhpi.conf ${D}${PTEST_PATH}/openhpid/t/ohpi/
+ sed -i "s:OPENHPI_CONF=[^ ]*:OPENHPI_CONF=./openhpi.conf:g" ${D}${PTEST_PATH}/openhpid/t/ohpi/Makefile
+
mkdir -p ${D}${PTEST_PATH}/plugins/watchdog/
cp -L ${D}/${libdir}/${BPN}/libwatchdog.so ${D}${PTEST_PATH}/plugins/watchdog/
cp -L ${D}/${libdir}/${BPN}/libsimulator.so ${D}${PTEST_PATH}/plugins/watchdog/
diff --git a/meta-openembedded/meta-networking/recipes-daemons/opensaf/opensaf_5.18.09.bb b/meta-openembedded/meta-networking/recipes-daemons/opensaf/opensaf_5.18.09.bb
deleted file mode 100644
index f1aedc4..0000000
--- a/meta-openembedded/meta-networking/recipes-daemons/opensaf/opensaf_5.18.09.bb
+++ /dev/null
@@ -1,75 +0,0 @@
-SUMMARY = "OpenSAF is an open source implementation of the SAF AIS specification"
-DESCRIPTION = "OpenSAF is an open source project established to develop a base platform \
-middleware consistent with Service Availability Forum (SA Forum) \
-specifications, under the LGPLv2.1 license. The OpenSAF Foundation was \
-established by leading Communications and Enterprise Computing Companies to \
-facilitate the OpenSAF Project and to accelerate the adoption of the OpenSAF \
-code base in commercial products. \
-The OpenSAF project was launched in mid 2007 and has been under development by \
-an informal group of supporters of the OpenSAF initiative. The OpenSAF \
-Foundation was founded on January 22nd 2008 with Emerson Network Power, \
-Ericsson, Nokia Siemens Networks, HP and Sun Microsystems as founding members."
-HOMEPAGE = "http://www.opensaf.org"
-SECTION = "admin"
-LICENSE = "LGPLv2.1"
-LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=a916467b91076e631dd8edb7424769c7"
-
-DEPENDS = "libxml2 python"
-TOOLCHAIN = "gcc"
-
-SECURITY_CFLAGS = "${SECURITY_NO_PIE_CFLAGS}"
-
-SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/releases/${BPN}-${PV}.tar.gz \
- file://0001-configure-Pass-linker-specific-options-with-Wl.patch \
- file://0001-configure-Disable-format-overflow-if-supported-by-gc.patch \
- file://0001-src-Add-missing-header-limits.h-for-_POSIX_HOST_NAME.patch \
- file://0001-immpbe_dump.cc-Use-sys-wait.h-instead-of-wait.h.patch \
- file://0001-Catch-std-ifstream-failure-by-reference.patch \
- file://0002-Fix-format-truncation-errors.patch \
- file://0001-Fix-string-overflow-in-snprintf.patch \
- file://0008-check-for-size-before-using-strncpy.patch \
- "
-SRC_URI[md5sum] = "45044fde0b35eac057a5fa05c27b8040"
-SRC_URI[sha256sum] = "230a0ea628ba278170a913746c39b2c8cd529d7dc25326b2e17b5c095cf94025"
-
-inherit autotools useradd systemd pkgconfig
-
-USERADD_PACKAGES = "${PN}"
-GROUPADD_PARAM_${PN} = "-f -r opensaf"
-USERADD_PARAM_${PN} = "-r -g opensaf -d ${datadir}/opensaf/ -s ${sbindir}/nologin -c \"OpenSAF\" opensaf"
-
-SYSTEMD_SERVICE_${PN} += "opensafd.service"
-SYSTEMD_AUTO_ENABLE = "disable"
-
-PACKAGECONFIG[systemd] = ",,systemd"
-PACKAGECONFIG[openhpi] = "--with-hpi-interface=B03,,openhpi"
-PACKAGECONFIG[plm] = "--enable-ais-plm,--disable-ais-plm,libvirt openhpi"
-
-PACKAGECONFIG ?= "${@bb.utils.contains('DISTRO_FEATURES', 'systemd', ' systemd', '', d)}"
-
-PKGLIBDIR="${libdir}"
-CPPFLAGS += "-Wno-error=stringop-overflow= -Wno-error=stringop-truncation"
-CXXFLAGS += "-Wno-error=stringop-overflow= -Wno-error=stringop-truncation -Wno-error=format-truncation="
-LDFLAGS += "-Wl,--as-needed -latomic -Wl,--no-as-needed"
-
-do_install_append() {
- cp -av --no-preserve=ownership ${B}/lib/.libs/*.so* ${D}${libdir}
- rm -fr "${D}${localstatedir}/lock"
- rm -fr "${D}${localstatedir}/run"
- rmdir --ignore-fail-on-non-empty "${D}${localstatedir}"
- rmdir --ignore-fail-on-non-empty "${D}${datadir}/java"
- if [ ! -d "${D}${sysconfdir}/init.d" ]; then
- install -d ${D}${sysconfdir}/init.d
- install -m 0755 ${B}/osaf/services/infrastructure/nid/scripts/opensafd ${D}${sysconfdir}/init.d/
- fi
-}
-
-FILES_${PN} += "${systemd_unitdir}/system/*.service"
-FILES_${PN}-staticdev += "${PKGLIBDIR}/*.a"
-
-INSANE_SKIP_${PN} = "dev-so"
-
-RDEPENDS_${PN} += "bash python"
-
-# http://errors.yoctoproject.org/Errors/Details/186970/
-EXCLUDE_FROM_WORLD_libc-musl = "1"
diff --git a/meta-openembedded/meta-networking/recipes-daemons/opensaf/opensaf_5.19.01.bb b/meta-openembedded/meta-networking/recipes-daemons/opensaf/opensaf_5.19.01.bb
new file mode 100644
index 0000000..3e4d33e
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-daemons/opensaf/opensaf_5.19.01.bb
@@ -0,0 +1,75 @@
+SUMMARY = "OpenSAF is an open source implementation of the SAF AIS specification"
+DESCRIPTION = "OpenSAF is an open source project established to develop a base platform \
+middleware consistent with Service Availability Forum (SA Forum) \
+specifications, under the LGPLv2.1 license. The OpenSAF Foundation was \
+established by leading Communications and Enterprise Computing Companies to \
+facilitate the OpenSAF Project and to accelerate the adoption of the OpenSAF \
+code base in commercial products. \
+The OpenSAF project was launched in mid 2007 and has been under development by \
+an informal group of supporters of the OpenSAF initiative. The OpenSAF \
+Foundation was founded on January 22nd 2008 with Emerson Network Power, \
+Ericsson, Nokia Siemens Networks, HP and Sun Microsystems as founding members."
+HOMEPAGE = "http://www.opensaf.org"
+SECTION = "admin"
+LICENSE = "LGPLv2.1"
+LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=a916467b91076e631dd8edb7424769c7"
+
+DEPENDS = "libxml2 python"
+TOOLCHAIN = "gcc"
+
+SECURITY_CFLAGS = "${SECURITY_NO_PIE_CFLAGS}"
+
+SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/releases/${BPN}-${PV}.tar.gz \
+ file://0001-configure-Pass-linker-specific-options-with-Wl.patch \
+ file://0001-configure-Disable-format-overflow-if-supported-by-gc.patch \
+ file://0001-src-Add-missing-header-limits.h-for-_POSIX_HOST_NAME.patch \
+ file://0001-immpbe_dump.cc-Use-sys-wait.h-instead-of-wait.h.patch \
+ file://0001-Catch-std-ifstream-failure-by-reference.patch \
+ file://0002-Fix-format-truncation-errors.patch \
+ file://0001-Fix-string-overflow-in-snprintf.patch \
+ file://0008-check-for-size-before-using-strncpy.patch \
+ "
+SRC_URI[md5sum] = "d9f44f778e23cf739085f74c5ff793b1"
+SRC_URI[sha256sum] = "5713fbe21c557c9a992af6805bc44521f2cf6cf950ae873036d9a81c73364b60"
+
+inherit autotools useradd systemd pkgconfig
+
+USERADD_PACKAGES = "${PN}"
+GROUPADD_PARAM_${PN} = "-f -r opensaf"
+USERADD_PARAM_${PN} = "-r -g opensaf -d ${datadir}/opensaf/ -s ${sbindir}/nologin -c \"OpenSAF\" opensaf"
+
+SYSTEMD_SERVICE_${PN} += "opensafd.service"
+SYSTEMD_AUTO_ENABLE = "disable"
+
+PACKAGECONFIG[systemd] = ",,systemd"
+PACKAGECONFIG[openhpi] = "--with-hpi-interface=B03,,openhpi"
+PACKAGECONFIG[plm] = "--enable-ais-plm,--disable-ais-plm,libvirt openhpi"
+
+PACKAGECONFIG ?= "${@bb.utils.contains('DISTRO_FEATURES', 'systemd', ' systemd', '', d)}"
+
+PKGLIBDIR="${libdir}"
+CPPFLAGS += "-Wno-error=stringop-overflow= -Wno-error=stringop-truncation"
+CXXFLAGS += "-Wno-error=stringop-overflow= -Wno-error=stringop-truncation -Wno-error=format-truncation="
+LDFLAGS += "-Wl,--as-needed -latomic -Wl,--no-as-needed"
+
+do_install_append() {
+ cp -av --no-preserve=ownership ${B}/lib/.libs/*.so* ${D}${libdir}
+ rm -fr "${D}${localstatedir}/lock"
+ rm -fr "${D}${localstatedir}/run"
+ rmdir --ignore-fail-on-non-empty "${D}${localstatedir}"
+ rmdir --ignore-fail-on-non-empty "${D}${datadir}/java"
+ if [ ! -d "${D}${sysconfdir}/init.d" ]; then
+ install -d ${D}${sysconfdir}/init.d
+ install -m 0755 ${B}/osaf/services/infrastructure/nid/scripts/opensafd ${D}${sysconfdir}/init.d/
+ fi
+}
+
+FILES_${PN} += "${systemd_unitdir}/system/*.service"
+FILES_${PN}-staticdev += "${PKGLIBDIR}/*.a"
+
+INSANE_SKIP_${PN} = "dev-so"
+
+RDEPENDS_${PN} += "bash python"
+
+# http://errors.yoctoproject.org/Errors/Details/186970/
+EXCLUDE_FROM_WORLD_libc-musl = "1"
diff --git a/meta-openembedded/meta-networking/recipes-daemons/postfix/files/linux_5.x.patch b/meta-openembedded/meta-networking/recipes-daemons/postfix/files/linux_5.x.patch
deleted file mode 100644
index fbb811c..0000000
--- a/meta-openembedded/meta-networking/recipes-daemons/postfix/files/linux_5.x.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-Recognise kernel 5.x versioning scheme
-
-Upstream-Status: Pending
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-
---- a/makedefs
-+++ b/makedefs
-@@ -543,7 +543,7 @@ EOF
- : ${SHLIB_ENV="LD_LIBRARY_PATH=`pwd`/lib"}
- : ${PLUGIN_LD="${CC-gcc} -shared"}
- ;;
-- Linux.[34].*) SYSTYPE=LINUX$RELEASE_MAJOR
-+ Linux.[345].*) SYSTYPE=LINUX$RELEASE_MAJOR
- case "$CCARGS" in
- *-DNO_DB*) ;;
- *-DHAS_DB*) ;;
---- a/src/util/sys_defs.h
-+++ b/src/util/sys_defs.h
-@@ -749,7 +749,7 @@ extern int initgroups(const char *, int)
- /*
- * LINUX.
- */
--#if defined(LINUX2) || defined(LINUX3) || defined(LINUX4)
-+#if defined(LINUX2) || defined(LINUX3) || defined(LINUX4) || defined(LINUX5)
- #define SUPPORTED
- #define UINT32_TYPE unsigned int
- #define UINT16_TYPE unsigned short
diff --git a/meta-openembedded/meta-networking/recipes-daemons/postfix/postfix_3.4.1.bb b/meta-openembedded/meta-networking/recipes-daemons/postfix/postfix_3.4.1.bb
deleted file mode 100644
index 73380d8..0000000
--- a/meta-openembedded/meta-networking/recipes-daemons/postfix/postfix_3.4.1.bb
+++ /dev/null
@@ -1,12 +0,0 @@
-require postfix.inc
-
-SRC_URI += "file://0001-makedefs-Use-native-compiler-to-build-makedefs.test.patch \
- file://postfix-install.patch \
- file://icu-config.patch \
- file://0001-makedefs-add-lnsl-and-lresolv-to-SYSLIBS-by-default.patch \
- file://linux_5.x.patch \
- "
-SRC_URI[md5sum] = "d292bb49a1c79ff6d2eb9c5e88c51425"
-SRC_URI[sha256sum] = "8c9763f7a8ec70d499257b7f25bb50e1f3da8a4c43e59826ba8a26c4a778d0ce"
-
-UPSTREAM_CHECK_REGEX = "postfix\-(?P<pver>3\.3(\.\d+)+).tar.gz"
diff --git a/meta-openembedded/meta-networking/recipes-daemons/postfix/postfix_3.4.5.bb b/meta-openembedded/meta-networking/recipes-daemons/postfix/postfix_3.4.5.bb
new file mode 100644
index 0000000..3ce8055
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-daemons/postfix/postfix_3.4.5.bb
@@ -0,0 +1,11 @@
+require postfix.inc
+
+SRC_URI += "file://0001-makedefs-Use-native-compiler-to-build-makedefs.test.patch \
+ file://postfix-install.patch \
+ file://icu-config.patch \
+ file://0001-makedefs-add-lnsl-and-lresolv-to-SYSLIBS-by-default.patch \
+ "
+SRC_URI[md5sum] = "093109941095390562166de766d4720d"
+SRC_URI[sha256sum] = "8b2ba54f9d2a049582a0ed3ee2dbe96ba57e278feea9cb4f80e1a61844e6319f"
+
+UPSTREAM_CHECK_REGEX = "postfix\-(?P<pver>3\.3(\.\d+)+).tar.gz"
diff --git a/meta-openembedded/meta-networking/recipes-daemons/squid/files/0001-Bug-4843-pt1-ext_edirectory_userip_acl-refactoring-f.patch b/meta-openembedded/meta-networking/recipes-daemons/squid/files/0001-Bug-4843-pt1-ext_edirectory_userip_acl-refactoring-f.patch
deleted file mode 100644
index 001d9e9..0000000
--- a/meta-openembedded/meta-networking/recipes-daemons/squid/files/0001-Bug-4843-pt1-ext_edirectory_userip_acl-refactoring-f.patch
+++ /dev/null
@@ -1,506 +0,0 @@
-From 01a44c96dbd04936e9cb2501745a834a0b09d504 Mon Sep 17 00:00:00 2001
-From: Amos Jeffries <yadij@users.noreply.github.com>
-Date: Sun, 13 May 2018 06:57:41 +0000
-Subject: [PATCH] Bug 4843 pt1: ext_edirectory_userip_acl refactoring for GCC-8
- (#204)
-
-Proposed changes to this helper to fix strcat / strncat buffer
-overread / overflow issues.
-
-The approach takes three parts:
-
-* adds a makeHexString function to replace many for-loops
- catenating bits of strings together with hex conversion into a
- second buffer. Replacing with a snprintf() and buffer overflow
- handling.
-
-* a copy of Ip::Address::lookupHostIp to convert the input
- string into IP address binary format, then generate the hex
- string using the above new hex function instead of looped
- sub-string concatenations across several buffers.
- This removes all the "00" and "0000" strncat() calls and
- allows far simpler code even with added buffer overflow
- handling.
-
-* replace multiple string part concatenations with a few simpler
- calls to snprintf() for all the search_ip buffer constructions.
- Adding buffer overflow handling as needed for the new calls.
----
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-Upstream-Status: Backport
-
- .../ext_edirectory_userip_acl.cc | 376 ++++++------------
- 1 file changed, 120 insertions(+), 256 deletions(-)
-
-diff --git a/helpers/external_acl/eDirectory_userip/ext_edirectory_userip_acl.cc b/helpers/external_acl/eDirectory_userip/ext_edirectory_userip_acl.cc
-index 63609e4..ad16bfd 100644
---- a/helpers/external_acl/eDirectory_userip/ext_edirectory_userip_acl.cc
-+++ b/helpers/external_acl/eDirectory_userip/ext_edirectory_userip_acl.cc
-@@ -67,6 +67,9 @@
- #ifdef HAVE_LDAP_H
- #include <ldap.h>
- #endif
-+#ifdef HAVE_NETDB_H
-+#include <netdb.h>
-+#endif
-
- #ifdef HELPER_INPUT_BUFFER
- #define EDUI_MAXLEN HELPER_INPUT_BUFFER
-@@ -714,11 +717,14 @@ BindLDAP(edui_ldap_t *l, char *dn, char *pw, unsigned int t)
-
- /* Copy details - dn and pw CAN be NULL for anonymous and/or TLS */
- if (dn != NULL) {
-+ if (strlen(dn) >= sizeof(l->dn))
-+ return LDAP_ERR_OOB; /* DN too large */
-+
- if ((l->basedn[0] != '\0') && (strstr(dn, l->basedn) == NULL)) {
- /* We got a basedn, but it's not part of dn */
-- xstrncpy(l->dn, dn, sizeof(l->dn));
-- strncat(l->dn, ",", 1);
-- strncat(l->dn, l->basedn, strlen(l->basedn));
-+ const int x = snprintf(l->dn, sizeof(l->dn)-1, "%s,%s", dn, l->basedn);
-+ if (x < 0 || static_cast<size_t>(x) >= sizeof(l->dn))
-+ return LDAP_ERR_OOB; /* DN too large */
- } else
- xstrncpy(l->dn, dn, sizeof(l->dn));
- }
-@@ -778,24 +784,73 @@ BindLDAP(edui_ldap_t *l, char *dn, char *pw, unsigned int t)
- }
- }
-
-+// XXX: duplicate (partial) of Ip::Address::lookupHostIp
-+/**
-+ * Convert the IP address string representation in src to
-+ * its binary representation.
-+ *
-+ * \return binary representation of the src IP address.
-+ * Must be free'd using freeaddrinfo().
-+ */
-+static struct addrinfo *
-+makeIpBinary(const char *src)
-+{
-+ struct addrinfo want;
-+ memset(&want, 0, sizeof(want));
-+ want.ai_flags = AI_NUMERICHOST; // prevent actual DNS lookups!
-+
-+ struct addrinfo *dst = nullptr;
-+ if (getaddrinfo(src, nullptr, &want, &dst) != 0) {
-+ // not an IP address
-+ /* free any memory getaddrinfo() dynamically allocated. */
-+ if (dst)
-+ freeaddrinfo(dst);
-+ return nullptr;
-+ }
-+
-+ return dst;
-+}
-+
-+/**
-+ * Convert srcLen bytes from src into HEX and store into dst, which
-+ * has a maximum content size of dstSize including c-string terminator.
-+ * The dst value produced will be a 0-terminated c-string.
-+ *
-+ * \retval N length of dst written (excluding c-string terminator)
-+ * \retval -11 (LDAP_ERR_OOB) buffer overflow detected
-+ */
-+static int
-+makeHexString(char *dst, const int dstSize, const char *src, const int srcLen)
-+{
-+ // HEX encoding doubles the amount of bytes/octets copied
-+ if ((srcLen*2) >= dstSize)
-+ return LDAP_ERR_OOB; // cannot copy that many
-+
-+ *dst = 0;
-+
-+ for (int k = 0; k < srcLen; ++k) {
-+ int c = static_cast<int>(src[k]);
-+ if (c < 0)
-+ c = c + 256;
-+ char hexc[4];
-+ const int hlen = snprintf(hexc, sizeof(hexc), "%02X", c);
-+ if (hlen < 0 || static_cast<size_t>(hlen) > sizeof(hexc)) // should be impossible
-+ return LDAP_ERR_OOB;
-+ strcat(dst, hexc);
-+ }
-+ return strlen(dst);
-+}
-+
- /*
- * ConvertIP() - <edui_ldap_t> <ip>
- *
- * Take an IPv4 address in dot-decimal or IPv6 notation, and convert to 2-digit HEX stored in l->search_ip
- * This is the networkAddress that we search LDAP for.
-- *
-- * PENDING -- CHANGE OVER TO inet*_pton, but inet6_pton does not provide the correct syntax
-- *
- */
- static int
- ConvertIP(edui_ldap_t *l, char *ip)
- {
-- char bufa[EDUI_MAXLEN], bufb[EDUI_MAXLEN], obj[EDUI_MAXLEN];
-- char hexc[4], *p;
- void *y, *z;
-- size_t s;
-- long x;
-- int i, j, t, swi; /* IPv6 "::" cut over toggle */
- if (l == NULL) return LDAP_ERR_NULL;
- if (ip == NULL) return LDAP_ERR_PARAM;
- if (!(l->status & LDAP_INIT_S)) return LDAP_ERR_INIT; /* Not initalized */
-@@ -831,183 +886,22 @@ ConvertIP(edui_ldap_t *l, char *ip)
- l->status |= (LDAP_IPV4_S);
- z = NULL;
- }
-- s = strlen(ip);
-- *(bufa) = '\0';
-- *(bufb) = '\0';
-- *(obj) = '\0';
-- /* StringSplit() will zero out bufa & obj at each call */
-- memset(l->search_ip, '\0', sizeof(l->search_ip));
-- xstrncpy(bufa, ip, sizeof(bufa)); /* To avoid segfaults, use bufa instead of ip */
-- swi = 0;
-- if (l->status & LDAP_IPV6_S) {
-- /* Search for :: in string */
-- if ((bufa[0] == ':') && (bufa[1] == ':')) {
-- /* bufa starts with a ::, so just copy and clear */
-- xstrncpy(bufb, bufa, sizeof(bufb));
-- *(bufa) = '\0';
-- ++swi; /* Indicates that there is a bufb */
-- } else if ((bufa[0] == ':') && (bufa[1] != ':')) {
-- /* bufa starts with a :, a typo so just fill in a ':', cat and clear */
-- bufb[0] = ':';
-- strncat(bufb, bufa, strlen(bufa));
-- *(bufa) = '\0';
-- ++swi; /* Indicates that there is a bufb */
-- } else {
-- p = strstr(bufa, "::");
-- if (p != NULL) {
-- /* Found it, break bufa down and split into bufb here */
-- *(bufb) = '\0';
-- i = strlen(p);
-- memcpy(bufb, p, i);
-- *p = '\0';
-- bufb[i] = '\0';
-- ++swi; /* Indicates that there is a bufb */
-- }
-- }
-- }
-- s = strlen(bufa);
-- if (s < 1)
-- s = strlen(bufb);
-- while (s > 0) {
-- if ((l->status & LDAP_IPV4_S) && (swi == 0)) {
-- /* Break down IPv4 address */
-- t = StringSplit(bufa, '.', obj, sizeof(obj));
-- if (t > 0) {
-- errno = 0;
-- x = strtol(obj, (char **)NULL, 10);
-- if (((x < 0) || (x > 255)) || ((errno != 0) && (x == 0)) || ((obj[0] != '0') && (x == 0)))
-- return LDAP_ERR_OOB; /* Out of bounds -- Invalid address */
-- memset(hexc, '\0', sizeof(hexc));
-- int hlen = snprintf(hexc, sizeof(hexc), "%02X", (int)x);
-- strncat(l->search_ip, hexc, hlen);
-- } else
-- break; /* reached end of octet */
-- } else if (l->status & LDAP_IPV6_S) {
-- /* Break down IPv6 address */
-- if (swi > 1)
-- t = StringSplit(bufb, ':', obj, sizeof(obj)); /* After "::" */
-- else
-- t = StringSplit(bufa, ':', obj, sizeof(obj)); /* Before "::" */
-- /* Convert octet by size (t) - and fill 0's */
-- switch (t) { /* IPv6 is already in HEX, copy contents */
-- case 4:
-- hexc[0] = (char) toupper((int)obj[0]);
-- i = (int)hexc[0];
-- if (!isxdigit(i))
-- return LDAP_ERR_OOB; /* Out of bounds */
-- hexc[1] = (char) toupper((int)obj[1]);
-- i = (int)hexc[1];
-- if (!isxdigit(i))
-- return LDAP_ERR_OOB; /* Out of bounds */
-- hexc[2] = '\0';
-- strncat(l->search_ip, hexc, 2);
-- hexc[0] = (char) toupper((int)obj[2]);
-- i = (int)hexc[0];
-- if (!isxdigit(i))
-- return LDAP_ERR_OOB; /* Out of bounds */
-- hexc[1] = (char) toupper((int)obj[3]);
-- i = (int)hexc[1];
-- if (!isxdigit(i))
-- return LDAP_ERR_OOB; /* Out of bounds */
-- hexc[2] = '\0';
-- strncat(l->search_ip, hexc, 2);
-- break;
-- case 3:
-- hexc[0] = '0';
-- hexc[1] = (char) toupper((int)obj[0]);
-- i = (int)hexc[1];
-- if (!isxdigit(i))
-- return LDAP_ERR_OOB; /* Out of bounds */
-- hexc[2] = '\0';
-- strncat(l->search_ip, hexc, 2);
-- hexc[0] = (char) toupper((int)obj[1]);
-- i = (int)hexc[0];
-- if (!isxdigit(i))
-- return LDAP_ERR_OOB; /* Out of bounds */
-- hexc[1] = (char) toupper((int)obj[2]);
-- i = (int)hexc[1];
-- if (!isxdigit(i))
-- return LDAP_ERR_OOB; /* Out of bounds */
-- hexc[2] = '\0';
-- strncat(l->search_ip, hexc, 2);
-- break;
-- case 2:
-- strncat(l->search_ip, "00", 2);
-- hexc[0] = (char) toupper((int)obj[0]);
-- i = (int)hexc[0];
-- if (!isxdigit(i))
-- return LDAP_ERR_OOB; /* Out of bounds */
-- hexc[1] = (char) toupper((int)obj[1]);
-- i = (int)hexc[1];
-- if (!isxdigit(i))
-- return LDAP_ERR_OOB; /* Out of bounds */
-- hexc[2] = '\0';
-- strncat(l->search_ip, hexc, 2);
-- break;
-- case 1:
-- strncat(l->search_ip, "00", 2);
-- hexc[0] = '0';
-- hexc[1] = (char) toupper((int)obj[0]);
-- i = (int)hexc[1];
-- if (!isxdigit(i))
-- return LDAP_ERR_OOB; /* Out of bounds */
-- hexc[2] = '\0';
-- strncat(l->search_ip, hexc, 2);
-- break;
-- default:
-- if (t > 4)
-- return LDAP_ERR_OOB;
-- break;
-- }
-- /* Code to pad the address with 0's between a '::' */
-- if ((strlen(bufa) == 0) && (swi == 1)) {
-- /* We are *AT* the split, pad in some 0000 */
-- t = strlen(bufb);
-- /* How many ':' exist in bufb ? */
-- j = 0;
-- for (i = 0; i < t; ++i) {
-- if (bufb[i] == ':')
-- ++j;
-- }
-- --j; /* Preceding "::" doesn't count */
-- t = 8 - (strlen(l->search_ip) / 4) - j; /* Remainder */
-- if (t > 0) {
-- for (i = 0; i < t; ++i)
-- strncat(l->search_ip, "0000", 4);
-- }
-- }
-- }
-- if ((bufa[0] == '\0') && (swi > 0)) {
-- s = strlen(bufb);
-- ++swi;
-- } else
-- s = strlen(bufa);
-- }
-- s = strlen(l->search_ip);
-
-- /* CHECK sizes of address, truncate or pad */
-- /* if "::" is at end of ip, then pad another block or two */
-- while ((l->status & LDAP_IPV6_S) && (s < 32)) {
-- strncat(l->search_ip, "0000", 4);
-- s = strlen(l->search_ip);
-- }
-- if ((l->status & LDAP_IPV6_S) && (s > 32)) {
-- /* Too long, truncate */
-- l->search_ip[32] = '\0';
-- s = strlen(l->search_ip);
-- }
-- /* If at end of ip, and its not long enough, then pad another block or two */
-- while ((l->status & LDAP_IPV4_S) && (s < 8)) {
-- strncat(l->search_ip, "00", 2);
-- s = strlen(l->search_ip);
-- }
-- if ((l->status & LDAP_IPV4_S) && (s > 8)) {
-- /* Too long, truncate */
-- l->search_ip[8] = '\0';
-- s = strlen(l->search_ip);
-+ size_t s = LDAP_ERR_INVALID;
-+ if (struct addrinfo *dst = makeIpBinary(ip)) {
-+ if (dst->ai_family == AF_INET6) {
-+ struct sockaddr_in6 *sia = reinterpret_cast<struct sockaddr_in6 *>(dst->ai_addr);
-+ const char *ia = reinterpret_cast<const char *>(sia->sin6_addr.s6_addr);
-+ s = makeHexString(l->search_ip, sizeof(l->search_ip), ia, 16); // IPv6 = 16-byte address
-+
-+ } else if (dst->ai_family == AF_INET) {
-+ struct sockaddr_in *sia = reinterpret_cast<struct sockaddr_in *>(dst->ai_addr);
-+ const char *ia = reinterpret_cast<const char *>(&(sia->sin_addr));
-+ s = makeHexString(l->search_ip, sizeof(l->search_ip), ia, 4); // IPv4 = 4-byte address
-+ } // else leave s with LDAP_ERR_INVALID value
-+ freeaddrinfo(dst);
- }
-
-- /* Completed, s is length of address in HEX */
- return s;
- }
-
-@@ -1099,48 +993,42 @@ SearchFilterLDAP(edui_ldap_t *l, char *group)
- }
- if (group == NULL) {
- /* No groupMembership= to add, yay! */
-- xstrncpy(bufa, "(&", sizeof(bufa));
-- strncat(bufa, edui_conf.search_filter, strlen(edui_conf.search_filter));
- /* networkAddress */
-- snprintf(bufb, sizeof(bufb), "(|(networkAddress=1\\23%s)", bufc);
- if (l->status & LDAP_IPV4_S) {
-- int ln = snprintf(bufd, sizeof(bufd), "(networkAddress=8\\23\\00\\00%s)(networkAddress=9\\23\\00\\00%s))", \
-- bufc, bufc);
-- strncat(bufb, bufd, ln);
-+ const int ln = snprintf(bufd, sizeof(bufd), "(networkAddress=8\\23\\00\\00%s)(networkAddress=9\\23\\00\\00%s)", bufc, bufc);
-+ if (ln < 0 || static_cast<size_t>(ln) >= sizeof(bufd))
-+ return LDAP_ERR_OOB;
-+
- } else if (l->status & LDAP_IPV6_S) {
-- int ln = snprintf(bufd, sizeof(bufd), "(networkAddress=10\\23\\00\\00%s)(networkAddress=11\\23\\00\\00%s))", \
-- bufc, bufc);
-- strncat(bufb, bufd, ln);
-- } else
-- strncat(bufb, ")", 1);
-- strncat(bufa, bufb, strlen(bufb));
-- strncat(bufa, ")", 1);
-+ const int ln = snprintf(bufd, sizeof(bufd), "(networkAddress=10\\23\\00\\00%s)(networkAddress=11\\23\\00\\00%s)", bufc, bufc);
-+ if (ln < 0 || static_cast<size_t>(ln) >= sizeof(bufd))
-+ return LDAP_ERR_OOB;
-+ }
-+ const int x = snprintf(bufa, sizeof(bufa), "(&%s(|(networkAddress=1\\23%s)%s))", edui_conf.search_filter, bufc, bufd);
-+ if (x < 0 || static_cast<size_t>(x) >= sizeof(bufa))
-+ return LDAP_ERR_OOB;
-+
- } else {
- /* Needs groupMembership= to add... */
-- xstrncpy(bufa, "(&(&", sizeof(bufa));
-- strncat(bufa, edui_conf.search_filter, strlen(edui_conf.search_filter));
- /* groupMembership -- NOTE: Squid *MUST* provide "cn=" from squid.conf */
-- snprintf(bufg, sizeof(bufg), "(groupMembership=%s", group);
- if ((l->basedn[0] != '\0') && (strstr(group, l->basedn) == NULL)) {
-- strncat(bufg, ",", 1);
-- strncat(bufg, l->basedn, strlen(l->basedn));
-+ const int ln = snprintf(bufg, sizeof(bufg), ",%s", l->basedn);
-+ if (ln < 0 || static_cast<size_t>(ln) >= sizeof(bufd))
-+ return LDAP_ERR_OOB;
- }
-- strncat(bufg, ")", 1);
-- strncat(bufa, bufg, strlen(bufg));
- /* networkAddress */
-- snprintf(bufb, sizeof(bufb), "(|(networkAddress=1\\23%s)", bufc);
- if (l->status & LDAP_IPV4_S) {
-- int ln = snprintf(bufd, sizeof(bufd), "(networkAddress=8\\23\\00\\00%s)(networkAddress=9\\23\\00\\00%s))", \
-- bufc, bufc);
-- strncat(bufb, bufd, ln);
-+ const int ln = snprintf(bufd, sizeof(bufd), "(networkAddress=8\\23\\00\\00%s)(networkAddress=9\\23\\00\\00%s)", bufc, bufc);
-+ if (ln < 0 || static_cast<size_t>(ln) >= sizeof(bufd))
-+ return LDAP_ERR_OOB;
- } else if (l->status & LDAP_IPV6_S) {
-- int ln = snprintf(bufd, sizeof(bufd), "(networkAddress=10\\23\\00\\00%s)(networkAddress=11\\23\\00\\00%s))", \
-- bufc, bufc);
-- strncat(bufb, bufd, ln);
-- } else
-- strncat(bufb, ")", 1);
-- strncat(bufa, bufb, strlen(bufb));
-- strncat(bufa, "))", 2);
-+ const int ln = snprintf(bufd, sizeof(bufd), "(networkAddress=10\\23\\00\\00%s)(networkAddress=11\\23\\00\\00%s)", bufc, bufc);
-+ if (ln < 0 || static_cast<size_t>(ln) >= sizeof(bufd))
-+ return LDAP_ERR_OOB;
-+ }
-+ const int x = snprintf(bufa, sizeof(bufa), "(&(&%s(groupMembership=%s%s)(|(networkAddress=1\\23%s)%s)))", edui_conf.search_filter, group, bufg, bufc, bufd);
-+ if (x < 0 || static_cast<size_t>(x) >= sizeof(bufa))
-+ return LDAP_ERR_OOB;
- }
- s = strlen(bufa);
- xstrncpy(l->search_filter, bufa, sizeof(l->search_filter));
-@@ -1212,10 +1100,10 @@ static int
- SearchIPLDAP(edui_ldap_t *l)
- {
- ber_len_t i, x;
-- ber_len_t j, k;
-- ber_len_t y, z;
-- int c;
-- char bufa[EDUI_MAXLEN], bufb[EDUI_MAXLEN], hexc[4];
-+ ber_len_t j;
-+ ber_len_t z;
-+ char bufa[EDUI_MAXLEN];
-+ char bufb[EDUI_MAXLEN];
- LDAPMessage *ent;
- if (l == NULL) return LDAP_ERR_NULL;
- if (l->lp == NULL) return LDAP_ERR_POINTER;
-@@ -1273,19 +1161,11 @@ SearchIPLDAP(edui_ldap_t *l)
- /* bufa is the address, just compare it */
- if (!(l->status & LDAP_IPV4_S) || (l->status & LDAP_IPV6_S))
- break; /* Not looking for IPv4 */
-- for (k = 0; k < z; ++k) {
-- c = (int) bufa[k];
-- if (c < 0)
-- c = c + 256;
-- int hlen = snprintf(hexc, sizeof(hexc), "%02X", c);
-- if (k == 0)
-- xstrncpy(bufb, hexc, sizeof(bufb));
-- else
-- strncat(bufb, hexc, hlen);
-- }
-- y = strlen(bufb);
-+ const int blen = makeHexString(bufb, sizeof(bufb), bufa, z);
-+ if (blen < 0)
-+ return blen;
- /* Compare value with IP */
-- if (memcmp(l->search_ip, bufb, y) == 0) {
-+ if (memcmp(l->search_ip, bufb, blen) == 0) {
- /* We got a match! - Scan 'ber' for 'cn' values */
- z = ldap_count_values_len(ber);
- for (j = 0; j < z; ++j) {
-@@ -1308,19 +1188,11 @@ SearchIPLDAP(edui_ldap_t *l)
- /* bufa + 2 is the address (skip 2 digit port) */
- if (!(l->status & LDAP_IPV4_S) || (l->status & LDAP_IPV6_S))
- break; /* Not looking for IPv4 */
-- for (k = 2; k < z; ++k) {
-- c = (int) bufa[k];
-- if (c < 0)
-- c = c + 256;
-- int hlen = snprintf(hexc, sizeof(hexc), "%02X", c);
-- if (k == 2)
-- xstrncpy(bufb, hexc, sizeof(bufb));
-- else
-- strncat(bufb, hexc, hlen);
-- }
-- y = strlen(bufb);
-+ const int blen = makeHexString(bufb, sizeof(bufb), &bufa[2], z);
-+ if (blen < 0)
-+ return blen;
- /* Compare value with IP */
-- if (memcmp(l->search_ip, bufb, y) == 0) {
-+ if (memcmp(l->search_ip, bufb, blen) == 0) {
- /* We got a match! - Scan 'ber' for 'cn' values */
- z = ldap_count_values_len(ber);
- for (j = 0; j < z; ++j) {
-@@ -1343,19 +1215,11 @@ SearchIPLDAP(edui_ldap_t *l)
- /* bufa + 2 is the address (skip 2 digit port) */
- if (!(l->status & LDAP_IPV6_S))
- break; /* Not looking for IPv6 */
-- for (k = 2; k < z; ++k) {
-- c = (int) bufa[k];
-- if (c < 0)
-- c = c + 256;
-- int hlen = snprintf(hexc, sizeof(hexc), "%02X", c);
-- if (k == 2)
-- xstrncpy(bufb, hexc, sizeof(bufb));
-- else
-- strncat(bufb, hexc, hlen);
-- }
-- y = strlen(bufb);
-+ const int blen = makeHexString(bufb, sizeof(bufb), &bufa[2], z);
-+ if (blen < 0)
-+ return blen;
- /* Compare value with IP */
-- if (memcmp(l->search_ip, bufb, y) == 0) {
-+ if (memcmp(l->search_ip, bufb, blen) == 0) {
- /* We got a match! - Scan 'ber' for 'cn' values */
- z = ldap_count_values_len(ber);
- for (j = 0; j < z; ++j) {
diff --git a/meta-openembedded/meta-networking/recipes-daemons/squid/files/0001-splay.cc-fix-bind-is-not-a-member-of-std.patch b/meta-openembedded/meta-networking/recipes-daemons/squid/files/0001-splay.cc-fix-bind-is-not-a-member-of-std.patch
new file mode 100644
index 0000000..fbbad15
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-daemons/squid/files/0001-splay.cc-fix-bind-is-not-a-member-of-std.patch
@@ -0,0 +1,31 @@
+From 1def5b4278d97f197520d23c1dce52f93a1b2f46 Mon Sep 17 00:00:00 2001
+From: Andrej Valek <andrej.valek@siemens.com>
+Date: Tue, 9 Apr 2019 09:40:30 +0200
+Subject: [PATCH] splay.cc: fix bind is not a member of std
+
+fix
+| ../../squid-4.6/test-suite/splay.cc:134:28: error: 'bind' is not a member of 'std'
+| auto nextRandom = std::bind (distribution, generator);
+| ^~~~
+| ../../squid-4.6/test-suite/splay.cc:134:28: note: 'std::bind' is defined in header '<functional>'; did you forget to '#include <functional>'?
+
+Signed-off-by: Andrej Valek <andrej.valek@siemens.com>
+---
+ test-suite/splay.cc | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/test-suite/splay.cc b/test-suite/splay.cc
+index f71b337..4e21adc 100644
+--- a/test-suite/splay.cc
++++ b/test-suite/splay.cc
+@@ -20,6 +20,7 @@
+ #include <unistd.h>
+ #endif
+ #include <random>
++#include <functional>
+
+ class intnode
+ {
+--
+2.11.0
+
diff --git a/meta-openembedded/meta-networking/recipes-daemons/squid/files/0001-tools.cc-fixed-unused-result-warning.patch b/meta-openembedded/meta-networking/recipes-daemons/squid/files/0001-tools.cc-fixed-unused-result-warning.patch
index 8ea55d0..f267875 100644
--- a/meta-openembedded/meta-networking/recipes-daemons/squid/files/0001-tools.cc-fixed-unused-result-warning.patch
+++ b/meta-openembedded/meta-networking/recipes-daemons/squid/files/0001-tools.cc-fixed-unused-result-warning.patch
@@ -1,4 +1,4 @@
-From faaa796a138cbd5033b1e53f33faac0cf4162bf5 Mon Sep 17 00:00:00 2001
+From 86dae8010310d13bd2a2beb006b4085d06ae1556 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Sun, 25 Jun 2017 00:59:24 -0700
Subject: [PATCH] tools.cc: fixed unused-result warning
@@ -12,21 +12,23 @@
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
- src/tools.cc | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
+ src/tools.cc | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/src/tools.cc b/src/tools.cc
-index 8137a03..843e266 100644
+index 5829574..19f0836 100644
--- a/src/tools.cc
+++ b/src/tools.cc
-@@ -612,8 +612,8 @@ enter_suid(void)
- if (setresuid((uid_t)-1, 0, (uid_t)-1) < 0)
- debugs (21, 3, "enter_suid: setresuid failed: " << xstrerror ());
+@@ -581,8 +581,10 @@ enter_suid(void)
+ debugs (21, 3, "enter_suid: setresuid failed: " << xstrerr(xerrno));
+ }
#else
-
- setuid(0);
-+ if (setuid(0) < 0)
-+ debugs(50, DBG_IMPORTANT, "WARNING: no_suid: setuid(0): " << xstrerror());
++ if (setuid(0) < 0) {
++ const auto xerrno = errno;
++ debugs(50, DBG_IMPORTANT, "WARNING: no_suid: setuid(0): " << xstrerr(xerrno));
++ }
#endif
#if HAVE_PRCTL && defined(PR_SET_DUMPABLE)
/* Set Linux DUMPABLE flag */
diff --git a/meta-openembedded/meta-networking/recipes-daemons/squid/files/0002-smblib-fix-buffer-over-read.patch b/meta-openembedded/meta-networking/recipes-daemons/squid/files/0002-smblib-fix-buffer-over-read.patch
deleted file mode 100644
index c8f0c47..0000000
--- a/meta-openembedded/meta-networking/recipes-daemons/squid/files/0002-smblib-fix-buffer-over-read.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-From a6b1e0fd14311587186e40d09bff5c8c3aada2e4 Mon Sep 17 00:00:00 2001
-From: Amos Jeffries <squid3@treenet.co.nz>
-Date: Sat, 25 Jul 2015 05:53:16 -0700
-Subject: [PATCH] smblib: fix buffer over-read
-
-When parsing SMB LanManager packets with invalid protocol ID and the
-default set of Squid supported protocols. It may access memory outside
-the buffer storing protocol names.
-
-smblib is only used by already deprecated helpers which are deprecated
-due to far more significant NTLM protocol issues. It will also only
-result in packets being rejected later with invalid protocol names. So
-this is a minor bug rather than a vulnerability.
-
- Detected by Coverity Scan. Issue 1256165
----
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-Upstream-Status: Backport
-
- lib/smblib/smblib-util.c | 6 +++++-
- 1 file changed, 5 insertions(+), 1 deletion(-)
-
-diff --git a/lib/smblib/smblib-util.c b/lib/smblib/smblib-util.c
-index 6139ae2..e722cbb 100644
---- a/lib/smblib/smblib-util.c
-+++ b/lib/smblib/smblib-util.c
-@@ -204,7 +204,11 @@ int SMB_Figure_Protocol(const char *dialects[], int prot_index)
- {
- int i;
-
-- if (dialects == SMB_Prots) { /* The jobs is easy, just index into table */
-+ // prot_index may be a value outside the table SMB_Types[]
-+ // which holds data at offsets 0 to 11
-+ int ourType = (prot_index < 0 || prot_index > 11);
-+
-+ if (ourType && dialects == SMB_Prots) { /* The jobs is easy, just index into table */
-
- return(SMB_Types[prot_index]);
- } else { /* Search through SMB_Prots looking for a match */
diff --git a/meta-openembedded/meta-networking/recipes-daemons/squid/files/Fix-flawed-dynamic-ldb-link-test-in-configure.patch b/meta-openembedded/meta-networking/recipes-daemons/squid/files/Fix-flawed-dynamic-ldb-link-test-in-configure.patch
index 25f68af..1516bb0 100644
--- a/meta-openembedded/meta-networking/recipes-daemons/squid/files/Fix-flawed-dynamic-ldb-link-test-in-configure.patch
+++ b/meta-openembedded/meta-networking/recipes-daemons/squid/files/Fix-flawed-dynamic-ldb-link-test-in-configure.patch
@@ -1,4 +1,4 @@
-From b4943594654cd340b95aabdc2f3750a4705cc0de Mon Sep 17 00:00:00 2001
+From b73b802282bf95d214c86ba943c5765ba6930bc1 Mon Sep 17 00:00:00 2001
From: Jim Somerville <Jim.Somerville@windriver.com>
Date: Mon, 21 Oct 2013 12:50:44 -0400
Subject: [PATCH] Fix flawed dynamic -ldb link test in configure
@@ -12,19 +12,17 @@
Signed-off-by: Jim Somerville <Jim.Somerville@windriver.com>
---
- configure.ac | 12 ++++++++++--
- 1 file changed, 10 insertions(+), 2 deletions(-)
+ configure.ac | 10 ++++++++++
+ 1 file changed, 10 insertions(+)
diff --git a/configure.ac b/configure.ac
-index 57cd1ac..3827222 100644
+index d2f7feb..c7ae568 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -3229,8 +3229,16 @@ AC_CHECK_DECL(dbopen,,,[
- #include <db.h>
- #endif])
+@@ -3235,6 +3235,16 @@ case "$host" in
+ ;;
+ esac
--dnl 1.85
--SQUID_CHECK_DBOPEN_NEEDS_LIBDB
+if test "x$ac_cv_have_decl_dbopen" = "xyes"; then
+ dnl 1.85
+ SQUID_CHECK_DBOPEN_NEEDS_LIBDB
@@ -35,6 +33,6 @@
+ # dynamic compile/link test.
+ ac_cv_dbopen_libdb="yes"
+fi
- if test "x$ac_cv_dbopen_libdb" = "xyes"; then
- LIB_DB="-ldb"
- fi
+ dnl System-specific library modifications
+ dnl
+ case "$host" in
diff --git a/meta-openembedded/meta-networking/recipes-daemons/squid/files/Skip-AC_RUN_IFELSE-tests.patch b/meta-openembedded/meta-networking/recipes-daemons/squid/files/Skip-AC_RUN_IFELSE-tests.patch
index 6a33525..dd83b62 100644
--- a/meta-openembedded/meta-networking/recipes-daemons/squid/files/Skip-AC_RUN_IFELSE-tests.patch
+++ b/meta-openembedded/meta-networking/recipes-daemons/squid/files/Skip-AC_RUN_IFELSE-tests.patch
@@ -1,4 +1,4 @@
-From a85311965707ba2fa78f7ce044e6f61e65e66fd0 Mon Sep 17 00:00:00 2001
+From e4778299a3e49a634d2c7fe4fd9ac77777e829e3 Mon Sep 17 00:00:00 2001
From: Jim Somerville <Jim.Somerville@windriver.com>
Date: Tue, 14 Oct 2014 02:56:08 -0400
Subject: [PATCH] Skip AC_RUN_IFELSE tests
@@ -17,7 +17,7 @@
2 files changed, 15 insertions(+), 3 deletions(-)
diff --git a/acinclude/krb5.m4 b/acinclude/krb5.m4
-index 5c83d88..c264118 100644
+index ad0ba60..4477446 100644
--- a/acinclude/krb5.m4
+++ b/acinclude/krb5.m4
@@ -61,7 +61,15 @@ main(void)
@@ -38,10 +38,10 @@
])
]) dnl SQUID_CHECK_KRB5_HEIMDAL_BROKEN_KRB5_H
diff --git a/acinclude/lib-checks.m4 b/acinclude/lib-checks.m4
-index c4874da..ba72982 100644
+index 7624b56..b449c5a 100644
--- a/acinclude/lib-checks.m4
+++ b/acinclude/lib-checks.m4
-@@ -177,7 +177,9 @@ AC_DEFUN([SQUID_CHECK_OPENSSL_CONST_SSL_METHOD],[
+@@ -217,7 +217,9 @@ AC_DEFUN([SQUID_CHECK_OPENSSL_CONST_SSL_METHOD],[
[
AC_MSG_RESULT([no])
],
@@ -51,8 +51,8 @@
+ ])
SQUID_STATE_ROLLBACK(check_const_SSL_METHOD)
- ]
-@@ -265,7 +267,9 @@ AC_DEFUN([SQUID_CHECK_OPENSSL_TXTDB],[
+ ])
+@@ -377,7 +379,9 @@ AC_DEFUN([SQUID_CHECK_OPENSSL_TXTDB],[
AC_MSG_RESULT([yes])
AC_DEFINE(SQUID_USE_SSLLHASH_HACK, 1)
],
diff --git a/meta-openembedded/meta-networking/recipes-daemons/squid/files/set_sysroot_patch.patch b/meta-openembedded/meta-networking/recipes-daemons/squid/files/set_sysroot_patch.patch
index e990480..124e044 100644
--- a/meta-openembedded/meta-networking/recipes-daemons/squid/files/set_sysroot_patch.patch
+++ b/meta-openembedded/meta-networking/recipes-daemons/squid/files/set_sysroot_patch.patch
@@ -17,25 +17,25 @@
index 504a844..ff4688c 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -974,15 +974,15 @@ if test "x$squid_opt_use_esi" = "xyes" -a "x$with_libxml2" != "xno" ; then
- dnl Find the main header and include path...
- AC_CACHE_CHECK([location of libxml2 include files], [ac_cv_libxml2_include], [
- AC_CHECK_HEADERS([libxml/parser.h], [], [
-- AC_MSG_NOTICE([Testing in /usr/include/libxml2])
-+ AC_MSG_NOTICE([Testing in $SYSROOT/usr/include/libxml2])
- SAVED_CPPFLAGS="$CPPFLAGS"
-- CPPFLAGS="-I/usr/include/libxml2 $CPPFLAGS"
-+ CPPFLAGS="-I$SYSROOT/usr/include/libxml2 $CPPFLAGS"
- unset ac_cv_header_libxml_parser_h
-- AC_CHECK_HEADERS([libxml/parser.h], [ac_cv_libxml2_include="-I/usr/include/libxml2"], [
-- AC_MSG_NOTICE([Testing in /usr/local/include/libxml2])
-- CPPFLAGS="-I/usr/local/include/libxml2 $SAVED_CPPFLAGS"
-+ AC_CHECK_HEADERS([libxml/parser.h], [ac_cv_libxml2_include="-I$SYSROOT/usr/include/libxml2"], [
-+ AC_MSG_NOTICE([Testing in $SYSROOT/usr/local/include/libxml2])
-+ CPPFLAGS="-I$SYSROOT/usr/local/include/libxml2 $SAVED_CPPFLAGS"
+@@ -931,15 +931,15 @@ if test "x$squid_opt_use_esi" = "xyes" -a "x$with_libxml2" != "xno" ; then
+ dnl Find the main header and include path...
+ AC_CACHE_CHECK([location of libxml2 include files], [ac_cv_libxml2_include], [
+ AC_CHECK_HEADERS([libxml/parser.h], [], [
+- AC_MSG_NOTICE([Testing in /usr/include/libxml2])
++ AC_MSG_NOTICE([Testing in $SYSROOT/usr/include/libxml2])
+ SAVED_CPPFLAGS="$CPPFLAGS"
+- CPPFLAGS="-I/usr/include/libxml2 $CPPFLAGS"
++ CPPFLAGS="-I$SYSROOT/usr/include/libxml2 $CPPFLAGS"
unset ac_cv_header_libxml_parser_h
-- AC_CHECK_HEADERS([libxml/parser.h], [ac_cv_libxml2_include="-I/usr/local/include/libxml2"], [
-+ AC_CHECK_HEADERS([libxml/parser.h], [ac_cv_libxml2_include="-I$SYSROOT/usr/local/include/libxml2"], [
- AC_MSG_NOTICE([Failed to find libxml2 header file libxml/parser.h])
+- AC_CHECK_HEADERS([libxml/parser.h], [LIBXML2_CFLAGS="$LIBXML2_CFLAGS -I/usr/include/libxml2"], [
+- AC_MSG_NOTICE([Testing in /usr/local/include/libxml2])
+- CPPFLAGS="-I/usr/local/include/libxml2 $SAVED_CPPFLAGS"
++ AC_CHECK_HEADERS([libxml/parser.h], [LIBXML2_CFLAGS="$LIBXML2_CFLAGS -I$SYSROOT/usr/include/libxml2"], [
++ AC_MSG_NOTICE([Testing in $SYSROOT/usr/local/include/libxml2])
++ CPPFLAGS="-I$SYSROOT/usr/local/include/libxml2 $SAVED_CPPFLAGS"
+ unset ac_cv_header_libxml_parser_h
+- AC_CHECK_HEADERS([libxml/parser.h], [LIBXML2_CFLAGS="$LIBXML2_CFLAGS -I/usr/local/include/libxml2"], [
++ AC_CHECK_HEADERS([libxml/parser.h], [LIBXML2_CFLAGS="$LIBXML2_CFLAGS -I$SYSROOT/usr/local/include/libxml2"], [
+ AC_MSG_NOTICE([Failed to find libxml2 header file libxml/parser.h])
+ ])
])
- ])
diff --git a/meta-openembedded/meta-networking/recipes-daemons/squid/files/squid-use-serial-tests-config-needed-by-ptest.patch b/meta-openembedded/meta-networking/recipes-daemons/squid/files/squid-use-serial-tests-config-needed-by-ptest.patch
index 9c75f17..732cf17 100644
--- a/meta-openembedded/meta-networking/recipes-daemons/squid/files/squid-use-serial-tests-config-needed-by-ptest.patch
+++ b/meta-openembedded/meta-networking/recipes-daemons/squid/files/squid-use-serial-tests-config-needed-by-ptest.patch
@@ -1,4 +1,4 @@
-From 9bcec221a2bb438d8a9ed59aed846ffe3be9cffa Mon Sep 17 00:00:00 2001
+From 3d881c112bba765731d581194aae95651819b715 Mon Sep 17 00:00:00 2001
From: Jackie Huang <jackie.huang@windriver.com>
Date: Tue, 19 Jul 2016 01:56:23 -0400
Subject: [PATCH] squid: use serial-tests config needed by ptest
@@ -15,15 +15,15 @@
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/configure.ac b/configure.ac
-index 3827222..504a844 100644
+index c7ae568..5e1454e 100644
--- a/configure.ac
+++ b/configure.ac
@@ -10,7 +10,7 @@ AC_PREREQ(2.61)
AC_CONFIG_HEADERS([include/autoconf.h])
AC_CONFIG_AUX_DIR(cfgaux)
AC_CONFIG_SRCDIR([src/main.cc])
--AM_INIT_AUTOMAKE([tar-ustar nostdinc subdir-objects])
-+AM_INIT_AUTOMAKE([tar-ustar nostdinc subdir-objects serial-tests])
+-AM_INIT_AUTOMAKE([tar-ustar nostdinc subdir-objects dist-xz])
++AM_INIT_AUTOMAKE([tar-ustar nostdinc subdir-objects dist-xz serial-tests])
AC_REVISION($Revision$)dnl
AC_PREFIX_DEFAULT(/usr/local/squid)
AM_MAINTAINER_MODE
diff --git a/meta-openembedded/meta-networking/recipes-daemons/squid/squid_3.5.28.bb b/meta-openembedded/meta-networking/recipes-daemons/squid/squid_3.5.28.bb
deleted file mode 100644
index e33c1b7..0000000
--- a/meta-openembedded/meta-networking/recipes-daemons/squid/squid_3.5.28.bb
+++ /dev/null
@@ -1,115 +0,0 @@
-SUMMARY = "A fully-featured http proxy and web-cache daemon for Linux"
-DESCRIPTION = "A fully-featured http proxy and web-cache daemon for Linux. \
-Squid offers a rich access control, authorization and logging environment to \
-develop web proxy and content serving applications. \
-Squid offers a rich set of traffic optimization options, most of which are \
-enabled by default for simpler installation and high performance. \
-"
-HOMEPAGE = "http://www.squid-cache.org"
-SECTION = "web"
-LICENSE = "GPLv2+"
-
-MAJ_VER = "${@oe.utils.trim_version("${PV}", 1)}"
-MIN_VER = "${@oe.utils.trim_version("${PV}", 2)}"
-
-SRC_URI = "http://www.squid-cache.org/Versions/v${MAJ_VER}/${MIN_VER}/${BPN}-${PV}.tar.bz2 \
- file://Set-up-for-cross-compilation.patch \
- file://Skip-AC_RUN_IFELSE-tests.patch \
- file://Fix-flawed-dynamic-ldb-link-test-in-configure.patch \
- file://squid-use-serial-tests-config-needed-by-ptest.patch \
- file://run-ptest \
- file://volatiles.03_squid \
- file://set_sysroot_patch.patch \
- file://squid-don-t-do-squid-conf-tests-at-build-time.patch \
- file://0001-configure-Check-for-Wno-error-format-truncation-comp.patch \
- file://0001-tools.cc-fixed-unused-result-warning.patch \
- file://0001-Bug-4843-pt1-ext_edirectory_userip_acl-refactoring-f.patch \
- file://0002-smblib-fix-buffer-over-read.patch \
- "
-
-SRC_URI_remove_toolchain-clang = "file://0001-configure-Check-for-Wno-error-format-truncation-comp.patch"
-
-SRC_URI[md5sum] = "4ae3f6277b3aa6386cb5ad2d954179c2"
-SRC_URI[sha256sum] = "11971bfe3c13f438e42569ea551206caf68ecaa968305c30f7b422b556ebc7ac"
-
-LIC_FILES_CHKSUM = "file://COPYING;md5=c492e2d6d32ec5c1aad0e0609a141ce9 \
- file://errors/COPYRIGHT;md5=1c0781e2ecd3051c765d525572defbc7 \
- "
-DEPENDS = "libtool krb5 openldap db cyrus-sasl openssl expat libxml2"
-
-inherit autotools pkgconfig useradd ptest perlnative
-
-USERADD_PACKAGES = "${PN}"
-USERADD_PARAM_${PN} = "--system --no-create-home --home-dir /var/run/squid --shell /bin/false --user-group squid"
-
-PACKAGECONFIG ??= "${@bb.utils.contains('TARGET_ARCH', 'powerpc', 'noatomics', '', d)} \
- ${@bb.utils.contains('TARGET_ARCH', 'mips', 'noatomics', '', d)} \
- ${@bb.utils.contains('TARGET_ARCH', 'mipsel', 'noatomics', '', d)} \
- ${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)} \
- "
-PACKAGECONFIG[libnetfilter-conntrack] = "--with-netfilter-conntrack=${includedir}, --without-netfilter-conntrack, libnetfilter-conntrack"
-PACKAGECONFIG[noatomics] = "squid_cv_gnu_atomics=no,squid_cv_gnu_atomics=yes,,"
-PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6,"
-PACKAGECONFIG[werror] = "--enable-strict-error-checking,--disable-strict-error-checking,"
-
-BASIC_AUTH = "DB SASL LDAP"
-
-DEPENDS += "${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'libpam', '', d)}"
-BASIC_AUTH += "${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'PAM', '', d)}"
-
-EXTRA_OECONF += "--with-default-user=squid --enable-auth-basic='${BASIC_AUTH}' \
- --sysconfdir=${sysconfdir}/${BPN} \
- --with-logdir=${localstatedir}/log/${BPN} \
- 'PERL=${USRBINPATH}/env perl'"
-
-export BUILDCXXFLAGS="${BUILD_CXXFLAGS}"
-
-TESTDIR = "test-suite"
-
-do_configure_prepend() {
- export SYSROOT=$PKG_CONFIG_SYSROOT_DIR
-}
-
-do_compile_ptest() {
- oe_runmake -C ${TESTDIR} buildtest-TESTS
-}
-
-do_install_ptest() {
- cp -rf ${B}/${TESTDIR} ${D}${PTEST_PATH}
- cp -rf ${S}/${TESTDIR} ${D}${PTEST_PATH}
-
- # do NOT need to rebuild Makefile itself
- sed -i 's/^Makefile:.*$/Makefile:/' ${D}${PTEST_PATH}/${TESTDIR}/Makefile
-
- # Add squid-conf-tests for runtime tests
- sed -e 's/^\(runtest-TESTS:\)/\1 squid-conf-tests/' \
- -e "s/\(list=' \$(TESTS)\)/\1 squid-conf-tests/" \
- -i ${D}${PTEST_PATH}/${TESTDIR}/Makefile
-
- # Ensure the path for command true is correct
- sed -i 's:^TRUE = .*$:TRUE = /bin/true:' ${D}${PTEST_PATH}/${TESTDIR}/Makefile
-}
-
-do_install_append() {
- if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then
- install -d ${D}${sysconfdir}/tmpfiles.d
- echo "d ${localstatedir}/run/${BPN} 0755 squid squid -" >> ${D}${sysconfdir}/tmpfiles.d/${BPN}.conf
- echo "d ${localstatedir}/log/${BPN} 0750 squid squid -" >> ${D}${sysconfdir}/tmpfiles.d/${BPN}.conf
- fi
-
- install -d ${D}${sysconfdir}/default/volatiles
- install -m 0644 ${WORKDIR}/volatiles.03_squid ${D}${sysconfdir}/default/volatiles/03_squid
-
- rmdir "${D}${localstatedir}/run/${BPN}"
- rmdir --ignore-fail-on-non-empty "${D}${localstatedir}/run"
-
- rmdir "${D}${localstatedir}/log/${BPN}"
- rmdir --ignore-fail-on-non-empty "${D}${localstatedir}/log"
-}
-
-FILES_${PN} += "${libdir} ${datadir}/errors ${datadir}/icons"
-FILES_${PN}-dbg += "/usr/src/debug"
-FILES_${PN}-doc += "${datadir}/*.txt"
-
-RDEPENDS_${PN} += "perl"
-RDEPENDS_${PN}-ptest += "make"
diff --git a/meta-openembedded/meta-networking/recipes-daemons/squid/squid_4.6.bb b/meta-openembedded/meta-networking/recipes-daemons/squid/squid_4.6.bb
new file mode 100644
index 0000000..ca4927d
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-daemons/squid/squid_4.6.bb
@@ -0,0 +1,115 @@
+SUMMARY = "A fully-featured http proxy and web-cache daemon for Linux"
+DESCRIPTION = "A fully-featured http proxy and web-cache daemon for Linux. \
+Squid offers a rich access control, authorization and logging environment to \
+develop web proxy and content serving applications. \
+Squid offers a rich set of traffic optimization options, most of which are \
+enabled by default for simpler installation and high performance. \
+"
+HOMEPAGE = "http://www.squid-cache.org"
+SECTION = "web"
+LICENSE = "GPLv2+"
+
+MAJ_VER = "${@oe.utils.trim_version("${PV}", 1)}"
+MIN_VER = "${@oe.utils.trim_version("${PV}", 2)}"
+
+SRC_URI = "http://www.squid-cache.org/Versions/v${MAJ_VER}/${BPN}-${PV}.tar.bz2 \
+ file://Set-up-for-cross-compilation.patch \
+ file://Skip-AC_RUN_IFELSE-tests.patch \
+ file://Fix-flawed-dynamic-ldb-link-test-in-configure.patch \
+ file://squid-use-serial-tests-config-needed-by-ptest.patch \
+ file://run-ptest \
+ file://volatiles.03_squid \
+ file://set_sysroot_patch.patch \
+ file://squid-don-t-do-squid-conf-tests-at-build-time.patch \
+ file://0001-configure-Check-for-Wno-error-format-truncation-comp.patch \
+ file://0001-tools.cc-fixed-unused-result-warning.patch \
+ file://0001-splay.cc-fix-bind-is-not-a-member-of-std.patch \
+ "
+
+SRC_URI_remove_toolchain-clang = "file://0001-configure-Check-for-Wno-error-format-truncation-comp.patch"
+
+SRC_URI[md5sum] = "6fb9f2be772b9bcaf2b3322d9e16ee1e"
+SRC_URI[sha256sum] = "73c1970467618db194057f6c43c80019a4dc47847579fc404796ff2dcd215f05"
+
+LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
+ file://errors/COPYRIGHT;md5=19cc4dd146f397e72f3ff6f9f58fbfbe \
+ "
+DEPENDS = "libtool krb5 openldap db cyrus-sasl"
+
+inherit autotools pkgconfig useradd ptest perlnative
+
+LDFLAGS_append_mipsarch = " -latomic"
+LDFLAGS_append_powerpc = " -latomic"
+
+USERADD_PACKAGES = "${PN}"
+USERADD_PARAM_${PN} = "--system --no-create-home --home-dir /var/run/squid --shell /bin/false --user-group squid"
+
+PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)} \
+ "
+PACKAGECONFIG[libnetfilter-conntrack] = "--with-netfilter-conntrack=${includedir}, --without-netfilter-conntrack, libnetfilter-conntrack"
+PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6,"
+PACKAGECONFIG[werror] = "--enable-strict-error-checking,--disable-strict-error-checking,"
+PACKAGECONFIG[esi] = "--enable-esi,--disable-esi,expat libxml2"
+PACKAGECONFIG[ssl] = "--with-openssl=yes,--with-openssl=no,openssl"
+
+BASIC_AUTH = "DB SASL LDAP"
+
+DEPENDS += "${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'libpam', '', d)}"
+BASIC_AUTH += "${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'PAM', '', d)}"
+
+EXTRA_OECONF += "--with-default-user=squid --enable-auth-basic='${BASIC_AUTH}' \
+ --sysconfdir=${sysconfdir}/${BPN} \
+ --with-logdir=${localstatedir}/log/${BPN} \
+ 'PERL=${USRBINPATH}/env perl'"
+
+export BUILDCXXFLAGS="${BUILD_CXXFLAGS}"
+
+TESTDIR = "test-suite"
+
+do_configure_prepend() {
+ export SYSROOT=$PKG_CONFIG_SYSROOT_DIR
+}
+
+do_compile_ptest() {
+ oe_runmake -C ${TESTDIR} buildtest-TESTS
+}
+
+do_install_ptest() {
+ cp -rf ${B}/${TESTDIR} ${D}${PTEST_PATH}
+ cp -rf ${S}/${TESTDIR} ${D}${PTEST_PATH}
+
+ # do NOT need to rebuild Makefile itself
+ sed -i 's/^Makefile:.*$/Makefile:/' ${D}${PTEST_PATH}/${TESTDIR}/Makefile
+
+ # Add squid-conf-tests for runtime tests
+ sed -e 's/^\(runtest-TESTS:\)/\1 squid-conf-tests/' \
+ -e "s/\(list=' \$(TESTS)\)/\1 squid-conf-tests/" \
+ -i ${D}${PTEST_PATH}/${TESTDIR}/Makefile
+
+ # Ensure the path for command true is correct
+ sed -i 's:^TRUE = .*$:TRUE = /bin/true:' ${D}${PTEST_PATH}/${TESTDIR}/Makefile
+}
+
+do_install_append() {
+ if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then
+ install -d ${D}${sysconfdir}/tmpfiles.d
+ echo "d ${localstatedir}/run/${BPN} 0755 squid squid -" >> ${D}${sysconfdir}/tmpfiles.d/${BPN}.conf
+ echo "d ${localstatedir}/log/${BPN} 0750 squid squid -" >> ${D}${sysconfdir}/tmpfiles.d/${BPN}.conf
+ fi
+
+ install -d ${D}${sysconfdir}/default/volatiles
+ install -m 0644 ${WORKDIR}/volatiles.03_squid ${D}${sysconfdir}/default/volatiles/03_squid
+
+ rmdir "${D}${localstatedir}/run/${BPN}"
+ rmdir --ignore-fail-on-non-empty "${D}${localstatedir}/run"
+
+ rmdir "${D}${localstatedir}/log/${BPN}"
+ rmdir --ignore-fail-on-non-empty "${D}${localstatedir}/log"
+}
+
+FILES_${PN} += "${libdir} ${datadir}/errors ${datadir}/icons"
+FILES_${PN}-dbg += "/usr/src/debug"
+FILES_${PN}-doc += "${datadir}/*.txt"
+
+RDEPENDS_${PN} += "perl"
+RDEPENDS_${PN}-ptest += "make"
diff --git a/meta-openembedded/meta-networking/recipes-daemons/vblade/vblade_22.bb b/meta-openembedded/meta-networking/recipes-daemons/vblade/vblade_22.bb
index a51a8c3..a52a1e9 100644
--- a/meta-openembedded/meta-networking/recipes-daemons/vblade/vblade_22.bb
+++ b/meta-openembedded/meta-networking/recipes-daemons/vblade/vblade_22.bb
@@ -4,6 +4,8 @@
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
+UPSTREAM_CHECK_URI = "https://sourceforge.net/projects/aoetools/files/vblade/"
+
SRC_URI = "${SOURCEFORGE_MIRROR}/aoetools/${BP}.tar.gz \
file://cross.patch \
file://makefile-add-ldflags.patch \
diff --git a/meta-openembedded/meta-networking/recipes-filter/arno-iptables-firewall/arno-iptables-firewall_2.0.1g.bb b/meta-openembedded/meta-networking/recipes-filter/arno-iptables-firewall/arno-iptables-firewall_2.0.1g.bb
deleted file mode 100644
index 6fd0aff..0000000
--- a/meta-openembedded/meta-networking/recipes-filter/arno-iptables-firewall/arno-iptables-firewall_2.0.1g.bb
+++ /dev/null
@@ -1,35 +0,0 @@
-SUMMARY = "IPTables based firewall scripts"
-HOMEPAGE = "http://rocky.eld.leidenuniv.nl/joomla/index.php?option=com_content&view=article&id=45&Itemid=63"
-
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://gpl_license.txt;md5=11c7b65c4a4acb9d5175f7e9bf99c403"
-
-SRC_URI = "http://rocky.eld.leidenuniv.nl/arno-iptables-firewall/${BPN}_${PV}.tar.gz \
- "
-SRC_URI[md5sum] = "77eba7f148bf2840a3e35a6f50c9c353"
-SRC_URI[sha256sum] = "0bafd85ddc235752250eaec0c7fdb21e530912483f6807a97f86158ed2d301f7"
-
-S = "${WORKDIR}/${BPN}_${PV}"
-
-inherit systemd
-
-do_install() {
- install -d ${D}${sysconfdir} ${D}${sbindir} ${D}${bindir} ${D}${systemd_unitdir}/system ${D}${sysconfdir}/init.d
- install -d ${D}${datadir}/arno-iptables-firewall ${D}${sysconfdir}/arno-iptables-firewall
- cp -r ${S}${sysconfdir}/arno-iptables-firewall ${D}${sysconfdir}/
- install -m 0755 ${S}${sysconfdir}/init.d/arno-iptables-firewall ${D}${bindir}
- install -m 0755 ${S}/bin/arno-iptables-firewall ${D}${sbindir}
- install -m 0755 ${S}/bin/arno-fwfilter ${D}${bindir}
- cp -r ${S}/share/arno-iptables-firewall/* ${D}${datadir}/arno-iptables-firewall
- cp -r ${S}/etc/arno-iptables-firewall/* ${D}${sysconfdir}/arno-iptables-firewall
- install -m 0644 ${S}/${systemd_unitdir}/system/arno-iptables-firewall.service ${D}${systemd_unitdir}/system
- sed -i -e 's%/usr/local/sbin%${bindir}%g' ${D}${systemd_unitdir}/system/arno-iptables-firewall.service
- sed -i -e 's%/usr/local/sbin%${sbindir}%g' ${D}${bindir}/arno-iptables-firewall
- sed -i -e 's%/usr/local%${exec_prefix}%g' ${D}${sysconfdir}/arno-iptables-firewall/firewall.conf
- sed -i -e 's%#!/bin/bash%#!/bin/sh%g' ${D}${bindir}/arno-fwfilter
- sed -i -e 's%#!/bin/bash%#!/bin/sh%g' ${D}${datadir}/arno-iptables-firewall/plugins/traffic-accounting-helper
- sed -i -e 's%#!/bin/bash%#!/bin/sh%g' ${D}${datadir}/arno-iptables-firewall/plugins/dyndns-host-open-helper
-}
-
-SYSTEMD_SERVICE_${PN} = "arno-iptables-firewall.service"
-FILES_${PN} += "${systemd_unitdir}/system/arno-iptables-firewall.service"
diff --git a/meta-openembedded/meta-networking/recipes-filter/arno-iptables-firewall/arno-iptables-firewall_2.0.3.bb b/meta-openembedded/meta-networking/recipes-filter/arno-iptables-firewall/arno-iptables-firewall_2.0.3.bb
new file mode 100644
index 0000000..040c53f
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-filter/arno-iptables-firewall/arno-iptables-firewall_2.0.3.bb
@@ -0,0 +1,34 @@
+SUMMARY = "IPTables based firewall scripts"
+HOMEPAGE = "http://rocky.eld.leidenuniv.nl/joomla/index.php?option=com_content&view=article&id=45&Itemid=63"
+
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://gpl_license.txt;md5=11c7b65c4a4acb9d5175f7e9bf99c403"
+
+SRC_URI = "https://github.com/arno-iptables-firewall/aif/archive/${PV}.tar.gz"
+SRC_URI[md5sum] = "71271c08299aacd45ceb9c9400082d03"
+SRC_URI[sha256sum] = "e2c4fb88a25f0cae8308a3b2bb922b5e2f52f24d8309b24e15a527a6b326e703"
+
+S = "${WORKDIR}/aif-${PV}"
+
+inherit systemd
+
+do_install() {
+ install -d ${D}${sysconfdir} ${D}${sbindir} ${D}${bindir} ${D}${systemd_unitdir}/system ${D}${sysconfdir}/init.d
+ install -d ${D}${datadir}/arno-iptables-firewall ${D}${sysconfdir}/arno-iptables-firewall
+ cp -r ${S}${sysconfdir}/arno-iptables-firewall ${D}${sysconfdir}/
+ install -m 0755 ${S}${sysconfdir}/init.d/arno-iptables-firewall ${D}${bindir}
+ install -m 0755 ${S}/bin/arno-iptables-firewall ${D}${sbindir}
+ install -m 0755 ${S}/bin/arno-fwfilter ${D}${bindir}
+ cp -r ${S}/share/arno-iptables-firewall/* ${D}${datadir}/arno-iptables-firewall
+ cp -r ${S}/etc/arno-iptables-firewall/* ${D}${sysconfdir}/arno-iptables-firewall
+ install -m 0644 ${S}/${systemd_unitdir}/system/arno-iptables-firewall.service ${D}${systemd_unitdir}/system
+ sed -i -e 's%/usr/local/sbin%${bindir}%g' ${D}${systemd_unitdir}/system/arno-iptables-firewall.service
+ sed -i -e 's%/usr/local/sbin%${sbindir}%g' ${D}${bindir}/arno-iptables-firewall
+ sed -i -e 's%/usr/local%${exec_prefix}%g' ${D}${sysconfdir}/arno-iptables-firewall/firewall.conf
+ sed -i -e 's%#!/bin/bash%#!/bin/sh%g' ${D}${bindir}/arno-fwfilter
+ sed -i -e 's%#!/bin/bash%#!/bin/sh%g' ${D}${datadir}/arno-iptables-firewall/plugins/traffic-accounting-helper
+ sed -i -e 's%#!/bin/bash%#!/bin/sh%g' ${D}${datadir}/arno-iptables-firewall/plugins/dyndns-host-open-helper
+}
+
+SYSTEMD_SERVICE_${PN} = "arno-iptables-firewall.service"
+FILES_${PN} += "${systemd_unitdir}/system/arno-iptables-firewall.service"
diff --git a/meta-openembedded/meta-networking/recipes-filter/conntrack-tools/conntrack-tools_1.4.4.bb b/meta-openembedded/meta-networking/recipes-filter/conntrack-tools/conntrack-tools_1.4.4.bb
deleted file mode 100644
index 46168b0..0000000
--- a/meta-openembedded/meta-networking/recipes-filter/conntrack-tools/conntrack-tools_1.4.4.bb
+++ /dev/null
@@ -1,34 +0,0 @@
-SUMMARY = "Connection tracking userspace tools for Linux"
-SECTION = "net"
-LICENSE = "GPLv2+"
-LIC_FILES_CHKSUM = "file://COPYING;md5=8ca43cbc842c2336e835926c2166c28b"
-
-DEPENDS = "libnfnetlink libnetfilter-conntrack libnetfilter-cttimeout \
- libnetfilter-cthelper libnetfilter-queue bison-native libtirpc"
-
-EXTRA_OECONF += "LIBS=-ltirpc CPPFLAGS=-I${STAGING_INCDIR}/tirpc"
-
-SRC_URI = "http://www.netfilter.org/projects/conntrack-tools/files/conntrack-tools-${PV}.tar.bz2;name=tar \
- file://conntrack-failover \
- file://init \
-"
-SRC_URI[tar.md5sum] = "acd9e0b27cf16ae3092ba900e4d7560e"
-SRC_URI[tar.sha256sum] = "b7caf4fcc4c03575df57d25e5216584d597fd916c891f191dac616ce68bdba6c"
-
-inherit autotools update-rc.d pkgconfig
-
-INITSCRIPT_NAME = "conntrackd"
-
-do_install_append() {
- install -d ${D}/${sysconfdir}/conntrackd
- install -d ${D}/${sysconfdir}/init.d
- install -m 0644 ${S}/doc/sync/ftfw/conntrackd.conf ${D}/${sysconfdir}/conntrackd/conntrackd.conf.sample
- install -m 0755 ${WORKDIR}/conntrack-failover ${D}/${sysconfdir}/init.d/conntrack-failover
- install -m 0755 ${WORKDIR}/init ${D}/${sysconfdir}/init.d/conntrackd
-
- # Fix hardcoded paths in scripts
- sed -i 's!/usr/sbin/!${sbindir}/!g' ${D}/${sysconfdir}/init.d/conntrack-failover ${D}/${sysconfdir}/init.d/conntrackd
- sed -i 's!/etc/!${sysconfdir}/!g' ${D}/${sysconfdir}/init.d/conntrack-failover ${D}/${sysconfdir}/init.d/conntrackd
- sed -i 's!/var/!${localstatedir}/!g' ${D}/${sysconfdir}/init.d/conntrack-failover ${D}/${sysconfdir}/init.d/conntrackd ${D}/${sysconfdir}/conntrackd/conntrackd.conf.sample
- sed -i 's!^export PATH=.*!export PATH=${base_sbindir}:${base_bindir}:${sbindir}:${bindir}!' ${D}/${sysconfdir}/init.d/conntrackd
-}
diff --git a/meta-openembedded/meta-networking/recipes-filter/conntrack-tools/conntrack-tools_1.4.5.bb b/meta-openembedded/meta-networking/recipes-filter/conntrack-tools/conntrack-tools_1.4.5.bb
new file mode 100644
index 0000000..51e0ec1
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-filter/conntrack-tools/conntrack-tools_1.4.5.bb
@@ -0,0 +1,34 @@
+SUMMARY = "Connection tracking userspace tools for Linux"
+SECTION = "net"
+LICENSE = "GPLv2+"
+LIC_FILES_CHKSUM = "file://COPYING;md5=8ca43cbc842c2336e835926c2166c28b"
+
+DEPENDS = "libnfnetlink libnetfilter-conntrack libnetfilter-cttimeout \
+ libnetfilter-cthelper libnetfilter-queue bison-native libtirpc"
+
+EXTRA_OECONF += "LIBS=-ltirpc CPPFLAGS=-I${STAGING_INCDIR}/tirpc"
+
+SRC_URI = "http://www.netfilter.org/projects/conntrack-tools/files/conntrack-tools-${PV}.tar.bz2;name=tar \
+ file://conntrack-failover \
+ file://init \
+"
+SRC_URI[tar.md5sum] = "9356a0cd4df81a597ac26d87ccfebac4"
+SRC_URI[tar.sha256sum] = "36c6d99c7684851d4d72e75bd07ff3f0ff1baaf4b6f069eb7244990cd1a9a462"
+
+inherit autotools update-rc.d pkgconfig
+
+INITSCRIPT_NAME = "conntrackd"
+
+do_install_append() {
+ install -d ${D}/${sysconfdir}/conntrackd
+ install -d ${D}/${sysconfdir}/init.d
+ install -m 0644 ${S}/doc/sync/ftfw/conntrackd.conf ${D}/${sysconfdir}/conntrackd/conntrackd.conf.sample
+ install -m 0755 ${WORKDIR}/conntrack-failover ${D}/${sysconfdir}/init.d/conntrack-failover
+ install -m 0755 ${WORKDIR}/init ${D}/${sysconfdir}/init.d/conntrackd
+
+ # Fix hardcoded paths in scripts
+ sed -i 's!/usr/sbin/!${sbindir}/!g' ${D}/${sysconfdir}/init.d/conntrack-failover ${D}/${sysconfdir}/init.d/conntrackd
+ sed -i 's!/etc/!${sysconfdir}/!g' ${D}/${sysconfdir}/init.d/conntrack-failover ${D}/${sysconfdir}/init.d/conntrackd
+ sed -i 's!/var/!${localstatedir}/!g' ${D}/${sysconfdir}/init.d/conntrack-failover ${D}/${sysconfdir}/init.d/conntrackd ${D}/${sysconfdir}/conntrackd/conntrackd.conf.sample
+ sed -i 's!^export PATH=.*!export PATH=${base_sbindir}:${base_bindir}:${sbindir}:${bindir}!' ${D}/${sysconfdir}/init.d/conntrackd
+}
diff --git a/meta-openembedded/meta-networking/recipes-filter/ebtables/ebtables_2.0.10-4.bb b/meta-openembedded/meta-networking/recipes-filter/ebtables/ebtables_2.0.10-4.bb
index f05bd61..2767840 100644
--- a/meta-openembedded/meta-networking/recipes-filter/ebtables/ebtables_2.0.10-4.bb
+++ b/meta-openembedded/meta-networking/recipes-filter/ebtables/ebtables_2.0.10-4.bb
@@ -12,6 +12,8 @@
RRECOMMENDS_${PN} += "kernel-module-ebtables \
"
+UPSTREAM_CHECK_URI = "https://sourceforge.net/projects/ebtables/files/ebtables/"
+
SRC_URI = "${SOURCEFORGE_MIRROR}/ebtables/ebtables-v${PV}.tar.gz \
file://ebtables-save \
file://installnonroot.patch \
diff --git a/meta-openembedded/meta-networking/recipes-filter/libnetfilter/files/0001-Correct-typo-in-the-location-of-internal.h-in-includ.patch b/meta-openembedded/meta-networking/recipes-filter/libnetfilter/files/0001-Correct-typo-in-the-location-of-internal.h-in-includ.patch
deleted file mode 100644
index 76d2d5d..0000000
--- a/meta-openembedded/meta-networking/recipes-filter/libnetfilter/files/0001-Correct-typo-in-the-location-of-internal.h-in-includ.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From 32af64e1811c74292891dc4dc8455736f7d33ccf Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Thu, 30 Mar 2017 13:26:56 -0700
-Subject: [PATCH] Correct typo in the location of internal.h in #include
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- src/libnetfilter_queue.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/libnetfilter_queue.c b/src/libnetfilter_queue.c
-index 211a8ba..065d618 100644
---- a/src/libnetfilter_queue.c
-+++ b/src/libnetfilter_queue.c
-@@ -32,7 +32,7 @@
-
- #include <libnfnetlink/libnfnetlink.h>
- #include <libnetfilter_queue/libnetfilter_queue.h>
--#include "src/internal.h"
-+#include "internal.h"
-
- /**
- * \mainpage
---
-2.12.1
-
diff --git a/meta-openembedded/meta-networking/recipes-filter/libnetfilter/files/0001-libnetfilter-queue-Declare-the-define-visivility-attribute-together.patch b/meta-openembedded/meta-networking/recipes-filter/libnetfilter/files/0001-libnetfilter-queue-Declare-the-define-visivility-attribute-together.patch
index 946f1b7..aa9ff09 100644
--- a/meta-openembedded/meta-networking/recipes-filter/libnetfilter/files/0001-libnetfilter-queue-Declare-the-define-visivility-attribute-together.patch
+++ b/meta-openembedded/meta-networking/recipes-filter/libnetfilter/files/0001-libnetfilter-queue-Declare-the-define-visivility-attribute-together.patch
@@ -1,4 +1,4 @@
-From 06562244ac4a1a61e1a2c6b219a517658f7349bf Mon Sep 17 00:00:00 2001
+From db7eb5f0a4e78c6bd3c4f9cbd8332d909eb82ad6 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Mon, 10 Apr 2017 12:09:41 -0700
Subject: [PATCH] Declare the define visivility attribute together
@@ -9,16 +9,17 @@
fail to link due to these missing symbols
Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
---
doxygen.cfg.in | 2 +-
- src/extra/ipv4.c | 15 +++----
+ src/extra/ipv4.c | 15 ++----
src/extra/ipv6.c | 9 ++--
- src/extra/pktbuff.c | 42 ++++++------------
- src/extra/tcp.c | 21 +++------
- src/extra/udp.c | 21 +++------
- src/internal.h | 5 +--
- src/libnetfilter_queue.c | 108 ++++++++++++++++-------------------------------
- src/nlmsg.c | 21 +++------
+ src/extra/pktbuff.c | 42 +++++----------
+ src/extra/tcp.c | 21 +++-----
+ src/extra/udp.c | 21 +++-----
+ src/internal.h | 5 +-
+ src/libnetfilter_queue.c | 108 +++++++++++++--------------------------
+ src/nlmsg.c | 21 +++-----
9 files changed, 82 insertions(+), 162 deletions(-)
diff --git a/doxygen.cfg.in b/doxygen.cfg.in
@@ -592,7 +593,7 @@
struct iphdr;
diff --git a/src/libnetfilter_queue.c b/src/libnetfilter_queue.c
-index 065d618..ab0b66b 100644
+index 673e3b0..c12f068 100644
--- a/src/libnetfilter_queue.c
+++ b/src/libnetfilter_queue.c
@@ -133,8 +133,7 @@ struct nfq_data {
@@ -772,7 +773,7 @@
/**
* nfq_set_queue_flags - set flags (options) for the kernel queue
-@@ -690,7 +678,7 @@ EXPORT_SYMBOL(nfq_set_mode);
+@@ -708,7 +696,7 @@ EXPORT_SYMBOL(nfq_set_mode);
*
* \return -1 on error with errno set appropriately; =0 otherwise.
*/
@@ -781,7 +782,7 @@
uint32_t mask, uint32_t flags)
{
union {
-@@ -711,7 +699,6 @@ int nfq_set_queue_flags(struct nfq_q_handle *qh,
+@@ -729,7 +717,6 @@ int nfq_set_queue_flags(struct nfq_q_handle *qh,
return nfnl_query(qh->h->nfnlh, &u.nmh);
}
@@ -789,7 +790,7 @@
/**
* nfq_set_queue_maxlen - Set kernel queue maximum length parameter
-@@ -724,7 +711,7 @@ EXPORT_SYMBOL(nfq_set_queue_flags);
+@@ -742,7 +729,7 @@ EXPORT_SYMBOL(nfq_set_queue_flags);
*
* \return -1 on error; >=0 otherwise.
*/
@@ -798,7 +799,7 @@
uint32_t queuelen)
{
union {
-@@ -742,7 +729,6 @@ int nfq_set_queue_maxlen(struct nfq_q_handle *qh,
+@@ -760,7 +747,6 @@ int nfq_set_queue_maxlen(struct nfq_q_handle *qh,
return nfnl_query(qh->h->nfnlh, &u.nmh);
}
@@ -806,7 +807,7 @@
/**
* @}
-@@ -829,14 +815,13 @@ static int __set_verdict(struct nfq_q_handle *qh, uint32_t id,
+@@ -847,14 +833,13 @@ static int __set_verdict(struct nfq_q_handle *qh, uint32_t id,
*
* \return -1 on error; >= 0 otherwise.
*/
@@ -822,7 +823,7 @@
/**
* nfq_set_verdict2 - like nfq_set_verdict, but you can set the mark.
-@@ -847,14 +832,13 @@ EXPORT_SYMBOL(nfq_set_verdict);
+@@ -865,14 +850,13 @@ EXPORT_SYMBOL(nfq_set_verdict);
* \param data_len number of bytes of data pointed to by #buf
* \param buf the buffer that contains the packet data
*/
@@ -838,7 +839,7 @@
/**
* nfq_set_verdict_batch - issue verdicts on several packets at once
-@@ -868,13 +852,12 @@ EXPORT_SYMBOL(nfq_set_verdict2);
+@@ -886,13 +870,12 @@ EXPORT_SYMBOL(nfq_set_verdict2);
* batch support was added in Linux 3.1.
* These functions will fail silently on older kernels.
*/
@@ -853,7 +854,7 @@
/**
* nfq_set_verdict_batch2 - like nfq_set_verdict_batch, but you can set a mark.
-@@ -883,13 +866,12 @@ EXPORT_SYMBOL(nfq_set_verdict_batch);
+@@ -901,13 +884,12 @@ EXPORT_SYMBOL(nfq_set_verdict_batch);
* \param verdict verdict to return to netfilter (NF_ACCEPT, NF_DROP)
* \param mark mark to put on packet
*/
@@ -868,7 +869,7 @@
/**
* nfq_set_verdict_mark - like nfq_set_verdict, but you can set the mark.
-@@ -905,14 +887,13 @@ EXPORT_SYMBOL(nfq_set_verdict_batch2);
+@@ -923,14 +905,13 @@ EXPORT_SYMBOL(nfq_set_verdict_batch2);
* This function is deprecated since it is broken, its use is highly
* discouraged. Please, use nfq_set_verdict2 instead.
*/
@@ -884,7 +885,7 @@
/**
* @}
-@@ -947,12 +928,11 @@ EXPORT_SYMBOL(nfq_set_verdict_mark);
+@@ -965,12 +946,11 @@ EXPORT_SYMBOL(nfq_set_verdict_mark);
} __attribute__ ((packed));
\endverbatim
*/
@@ -898,7 +899,7 @@
/**
* nfq_get_nfmark - get the packet mark
-@@ -960,11 +940,10 @@ EXPORT_SYMBOL(nfq_get_msg_packet_hdr);
+@@ -978,11 +958,10 @@ EXPORT_SYMBOL(nfq_get_msg_packet_hdr);
*
* \return the netfilter mark currently assigned to the given queued packet.
*/
@@ -911,7 +912,7 @@
/**
* nfq_get_timestamp - get the packet timestamp
-@@ -975,7 +954,7 @@ EXPORT_SYMBOL(nfq_get_nfmark);
+@@ -993,7 +972,7 @@ EXPORT_SYMBOL(nfq_get_nfmark);
*
* \return 0 on success, non-zero on failure.
*/
@@ -920,7 +921,7 @@
{
struct nfqnl_msg_packet_timestamp *qpt;
qpt = nfnl_get_pointer_to_data(nfad->data, NFQA_TIMESTAMP,
-@@ -988,7 +967,6 @@ int nfq_get_timestamp(struct nfq_data *nfad, struct timeval *tv)
+@@ -1006,7 +985,6 @@ int nfq_get_timestamp(struct nfq_data *nfad, struct timeval *tv)
return 0;
}
@@ -928,7 +929,7 @@
/**
* nfq_get_indev - get the interface that the packet was received through
-@@ -1001,11 +979,10 @@ EXPORT_SYMBOL(nfq_get_timestamp);
+@@ -1019,11 +997,10 @@ EXPORT_SYMBOL(nfq_get_timestamp);
* \warning all nfq_get_dev() functions return 0 if not set, since linux
* only allows ifindex >= 1, see net/core/dev.c:2600 (in 2.6.13.1)
*/
@@ -941,7 +942,7 @@
/**
* nfq_get_physindev - get the physical interface that the packet was received
-@@ -1015,11 +992,10 @@ EXPORT_SYMBOL(nfq_get_indev);
+@@ -1033,11 +1010,10 @@ EXPORT_SYMBOL(nfq_get_indev);
* If the returned index is 0, the packet was locally generated or the
* physical input interface is no longer known (ie. POSTROUTING?).
*/
@@ -954,7 +955,7 @@
/**
* nfq_get_outdev - gets the interface that the packet will be routed out
-@@ -1029,11 +1005,10 @@ EXPORT_SYMBOL(nfq_get_physindev);
+@@ -1047,11 +1023,10 @@ EXPORT_SYMBOL(nfq_get_physindev);
* returned index is 0, the packet is destined for localhost or the output
* interface is not yet known (ie. PREROUTING?).
*/
@@ -967,7 +968,7 @@
/**
* nfq_get_physoutdev - get the physical interface that the packet output
-@@ -1045,11 +1020,10 @@ EXPORT_SYMBOL(nfq_get_outdev);
+@@ -1063,11 +1038,10 @@ EXPORT_SYMBOL(nfq_get_outdev);
*
* \return The index of physical interface that the packet output will be routed out.
*/
@@ -980,7 +981,7 @@
/**
* nfq_get_indev_name - get the name of the interface the packet
-@@ -1089,13 +1063,12 @@ EXPORT_SYMBOL(nfq_get_physoutdev);
+@@ -1107,13 +1081,12 @@ EXPORT_SYMBOL(nfq_get_physoutdev);
\endverbatim
*
*/
@@ -995,7 +996,7 @@
/**
* nfq_get_physindev_name - get the name of the physical interface the
-@@ -1109,13 +1082,12 @@ EXPORT_SYMBOL(nfq_get_indev_name);
+@@ -1127,13 +1100,12 @@ EXPORT_SYMBOL(nfq_get_indev_name);
*
* \return -1 in case of error, > 0 if it succeed.
*/
@@ -1010,7 +1011,7 @@
/**
* nfq_get_outdev_name - get the name of the physical interface the
-@@ -1129,13 +1101,12 @@ EXPORT_SYMBOL(nfq_get_physindev_name);
+@@ -1147,13 +1119,12 @@ EXPORT_SYMBOL(nfq_get_physindev_name);
*
* \return -1 in case of error, > 0 if it succeed.
*/
@@ -1025,7 +1026,7 @@
/**
* nfq_get_physoutdev_name - get the name of the interface the
-@@ -1150,13 +1121,12 @@ EXPORT_SYMBOL(nfq_get_outdev_name);
+@@ -1168,13 +1139,12 @@ EXPORT_SYMBOL(nfq_get_outdev_name);
* \return -1 in case of error, > 0 if it succeed.
*/
@@ -1040,7 +1041,7 @@
/**
* nfq_get_packet_hw
-@@ -1180,12 +1150,11 @@ EXPORT_SYMBOL(nfq_get_physoutdev_name);
+@@ -1198,12 +1168,11 @@ EXPORT_SYMBOL(nfq_get_physoutdev_name);
} __attribute__ ((packed));
\endverbatim
*/
@@ -1054,7 +1055,7 @@
/**
* nfq_get_uid - get the UID of the user the packet belongs to
-@@ -1193,7 +1162,7 @@ EXPORT_SYMBOL(nfq_get_packet_hw);
+@@ -1215,7 +1184,7 @@ EXPORT_SYMBOL(nfq_get_packet_hw);
*
* \return 1 if there is a UID available, 0 otherwise.
*/
@@ -1063,7 +1064,7 @@
{
if (!nfnl_attr_present(nfad->data, NFQA_UID))
return 0;
-@@ -1201,7 +1170,6 @@ int nfq_get_uid(struct nfq_data *nfad, uint32_t *uid)
+@@ -1223,7 +1192,6 @@ int nfq_get_uid(struct nfq_data *nfad, uint32_t *uid)
*uid = ntohl(nfnl_get_data(nfad->data, NFQA_UID, uint32_t));
return 1;
}
@@ -1071,7 +1072,7 @@
/**
* nfq_get_gid - get the GID of the user the packet belongs to
-@@ -1209,7 +1177,7 @@ EXPORT_SYMBOL(nfq_get_uid);
+@@ -1235,7 +1203,7 @@ EXPORT_SYMBOL(nfq_get_uid);
*
* \return 1 if there is a GID available, 0 otherwise.
*/
@@ -1080,15 +1081,15 @@
{
if (!nfnl_attr_present(nfad->data, NFQA_GID))
return 0;
-@@ -1217,7 +1185,6 @@ int nfq_get_gid(struct nfq_data *nfad, uint32_t *gid)
+@@ -1243,7 +1211,6 @@ int nfq_get_gid(struct nfq_data *nfad, uint32_t *gid)
*gid = ntohl(nfnl_get_data(nfad->data, NFQA_GID, uint32_t));
return 1;
}
-EXPORT_SYMBOL(nfq_get_gid);
-
/**
-@@ -1227,7 +1194,7 @@ EXPORT_SYMBOL(nfq_get_gid);
+ * nfq_get_secctx - get the security context for this packet
+@@ -1256,7 +1223,7 @@ EXPORT_SYMBOL(nfq_get_gid);
*
* \return -1 on error, otherwise > 0
*/
@@ -1097,7 +1098,7 @@
{
if (!nfnl_attr_present(nfad->data, NFQA_SECCTX))
return -1;
-@@ -1240,7 +1207,6 @@ int nfq_get_secctx(struct nfq_data *nfad, unsigned char **secdata)
+@@ -1269,7 +1236,6 @@ int nfq_get_secctx(struct nfq_data *nfad, unsigned char **secdata)
return 0;
}
@@ -1105,7 +1106,7 @@
/**
* nfq_get_payload - get payload
-@@ -1253,7 +1219,7 @@ EXPORT_SYMBOL(nfq_get_secctx);
+@@ -1282,7 +1248,7 @@ EXPORT_SYMBOL(nfq_get_secctx);
*
* \return -1 on error, otherwise > 0.
*/
@@ -1114,7 +1115,7 @@
{
*data = (unsigned char *)
nfnl_get_pointer_to_data(nfad->data, NFQA_PAYLOAD, char);
-@@ -1262,7 +1228,6 @@ int nfq_get_payload(struct nfq_data *nfad, unsigned char **data)
+@@ -1291,7 +1257,6 @@ int nfq_get_payload(struct nfq_data *nfad, unsigned char **data)
return -1;
}
@@ -1122,7 +1123,7 @@
/**
* @}
-@@ -1307,7 +1272,7 @@ do { \
+@@ -1336,7 +1301,7 @@ do { \
* would have been printed into the buffer (in case that there is enough
* room in it). See snprintf() return value for more information.
*/
@@ -1131,7 +1132,7 @@
{
struct nfqnl_msg_packet_hdr *ph;
struct nfqnl_msg_packet_hw *hwph;
-@@ -1460,7 +1425,6 @@ int nfq_snprintf_xml(char *buf, size_t rem, struct nfq_data *tb, int flags)
+@@ -1489,7 +1454,6 @@ int nfq_snprintf_xml(char *buf, size_t rem, struct nfq_data *tb, int flags)
return len;
}
@@ -1224,6 +1225,3 @@
/**
* @}
---
-2.12.2
-
diff --git a/meta-openembedded/meta-networking/recipes-filter/libnetfilter/libnetfilter-conntrack_1.0.6.bb b/meta-openembedded/meta-networking/recipes-filter/libnetfilter/libnetfilter-conntrack_1.0.6.bb
deleted file mode 100644
index e4e186b..0000000
--- a/meta-openembedded/meta-networking/recipes-filter/libnetfilter/libnetfilter-conntrack_1.0.6.bb
+++ /dev/null
@@ -1,16 +0,0 @@
-SUMMARY = "Netfilter connection tracking library"
-DESCRIPTION = "Userspace library providing a programming interface (API) to the Linux kernel netfilter connection tracking state table"
-HOMEPAGE = "http://www.netfilter.org/projects/libnetfilter_conntrack/index.html"
-SECTION = "libs"
-LICENSE = "GPLv2+"
-LIC_FILES_CHKSUM = "file://COPYING;md5=8ca43cbc842c2336e835926c2166c28b"
-DEPENDS = "libnfnetlink libmnl"
-
-SRC_URI = "http://www.netfilter.org/projects/libnetfilter_conntrack/files/libnetfilter_conntrack-${PV}.tar.bz2;name=tar \
-"
-SRC_URI[tar.md5sum] = "7139c5f408dd9606ffecfd5dcda8175b"
-SRC_URI[tar.sha256sum] = "efcc08021284e75f4d96d3581c5155a11f08fd63316b1938cbcb269c87f37feb"
-
-S = "${WORKDIR}/libnetfilter_conntrack-${PV}"
-
-inherit autotools pkgconfig
diff --git a/meta-openembedded/meta-networking/recipes-filter/libnetfilter/libnetfilter-conntrack_1.0.7.bb b/meta-openembedded/meta-networking/recipes-filter/libnetfilter/libnetfilter-conntrack_1.0.7.bb
new file mode 100644
index 0000000..5c81501
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-filter/libnetfilter/libnetfilter-conntrack_1.0.7.bb
@@ -0,0 +1,15 @@
+SUMMARY = "Netfilter connection tracking library"
+DESCRIPTION = "Userspace library providing a programming interface (API) to the Linux kernel netfilter connection tracking state table"
+HOMEPAGE = "http://www.netfilter.org/projects/libnetfilter_conntrack/index.html"
+SECTION = "libs"
+LICENSE = "GPLv2+"
+LIC_FILES_CHKSUM = "file://COPYING;md5=8ca43cbc842c2336e835926c2166c28b"
+DEPENDS = "libnfnetlink libmnl"
+
+SRC_URI = "https://www.netfilter.org/projects/libnetfilter_conntrack/files/libnetfilter_conntrack-${PV}.tar.bz2"
+SRC_URI[md5sum] = "013d182c2df716fcb5eb2a1fb7febd1f"
+SRC_URI[sha256sum] = "33685351e29dff93cc21f5344b6e628e41e32b9f9e567f4bec0478eb41f989b6"
+
+S = "${WORKDIR}/libnetfilter_conntrack-${PV}"
+
+inherit autotools pkgconfig
diff --git a/meta-openembedded/meta-networking/recipes-filter/libnetfilter/libnetfilter-queue_1.0.2.bb b/meta-openembedded/meta-networking/recipes-filter/libnetfilter/libnetfilter-queue_1.0.2.bb
deleted file mode 100644
index 754e11d..0000000
--- a/meta-openembedded/meta-networking/recipes-filter/libnetfilter/libnetfilter-queue_1.0.2.bb
+++ /dev/null
@@ -1,19 +0,0 @@
-SUMMARY = "Netfilter packet queue access library"
-DESCRIPTION = "Userspace library providing a programming interface (API) to access the Linux kernel netfilter packet queue"
-HOMEPAGE = "http://www.netfilter.org/projects/libnetfilter_queue/index.html"
-SECTION = "libs"
-LICENSE = "GPLv2+"
-LIC_FILES_CHKSUM = "file://COPYING;md5=8ca43cbc842c2336e835926c2166c28b"
-DEPENDS = "libnfnetlink libmnl"
-
-PV .= "+git${SRCREV}"
-SRCREV = "981025e103d887fb6a9c9bb49c74ec323108d098"
-
-SRC_URI = "git://git.netfilter.org/libnetfilter_queue \
- file://0001-Correct-typo-in-the-location-of-internal.h-in-includ.patch \
- file://0001-libnetfilter-queue-Declare-the-define-visivility-attribute-together.patch \
- "
-
-S = "${WORKDIR}/git"
-
-inherit autotools pkgconfig
diff --git a/meta-openembedded/meta-networking/recipes-filter/libnetfilter/libnetfilter-queue_1.0.3.bb b/meta-openembedded/meta-networking/recipes-filter/libnetfilter/libnetfilter-queue_1.0.3.bb
new file mode 100644
index 0000000..896cfdf
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-filter/libnetfilter/libnetfilter-queue_1.0.3.bb
@@ -0,0 +1,17 @@
+SUMMARY = "Netfilter packet queue access library"
+DESCRIPTION = "Userspace library providing a programming interface (API) to access the Linux kernel netfilter packet queue"
+HOMEPAGE = "http://www.netfilter.org/projects/libnetfilter_queue/index.html"
+SECTION = "libs"
+LICENSE = "GPLv2+"
+LIC_FILES_CHKSUM = "file://COPYING;md5=8ca43cbc842c2336e835926c2166c28b"
+DEPENDS = "libnfnetlink libmnl"
+
+SRCREV = "601abd1c71ccdf90753cf294c120ad43fb25dc54"
+
+SRC_URI = "git://git.netfilter.org/libnetfilter_queue \
+ file://0001-libnetfilter-queue-Declare-the-define-visivility-attribute-together.patch \
+ "
+
+S = "${WORKDIR}/git"
+
+inherit autotools pkgconfig
diff --git a/meta-openembedded/meta-networking/recipes-filter/nfacct/nfacct_1.0.2.bb b/meta-openembedded/meta-networking/recipes-filter/nfacct/nfacct_1.0.2.bb
index 8177ebc..3245455 100644
--- a/meta-openembedded/meta-networking/recipes-filter/nfacct/nfacct_1.0.2.bb
+++ b/meta-openembedded/meta-networking/recipes-filter/nfacct/nfacct_1.0.2.bb
@@ -3,6 +3,8 @@
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=8ca43cbc842c2336e835926c2166c28b"
+UPSTREAM_CHECK_URI = "ftp://ftp.netfilter.org/pub/nfacct/"
+
SRC_URI = "ftp://ftp.netfilter.org/pub/${BPN}/${BP}.tar.bz2"
SRC_URI[md5sum] = "94faafdaaed85ca9220c5692be8a408e"
diff --git a/meta-openembedded/meta-networking/recipes-filter/nftables/nftables_0.9.0.bb b/meta-openembedded/meta-networking/recipes-filter/nftables/nftables_0.9.0.bb
index aadf4f7..3ff9583 100644
--- a/meta-openembedded/meta-networking/recipes-filter/nftables/nftables_0.9.0.bb
+++ b/meta-openembedded/meta-networking/recipes-filter/nftables/nftables_0.9.0.bb
@@ -5,6 +5,8 @@
DEPENDS = "libmnl libnftnl readline gmp bison-native"
+UPSTREAM_CHECK_URI = "https://www.netfilter.org/projects/nftables/files/"
+
SRC_URI = "http://www.netfilter.org/projects/nftables/files/${BP}.tar.bz2 \
"
SRC_URI[md5sum] = "d4dcb61df80aa544b2e142e91d937635"
diff --git a/meta-openembedded/meta-networking/recipes-netkit/netkit-rsh/netkit-rsh/CVE-2019-7282-and-CVE-2019-7283.patch b/meta-openembedded/meta-networking/recipes-netkit/netkit-rsh/netkit-rsh/CVE-2019-7282-and-CVE-2019-7283.patch
new file mode 100644
index 0000000..285667b
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-netkit/netkit-rsh/netkit-rsh/CVE-2019-7282-and-CVE-2019-7283.patch
@@ -0,0 +1,35 @@
+From a7831a16c3e0e1463d5eb08a58af152cb75ca976 Mon Sep 17 00:00:00 2001
+From: Yi Zhao <yi.zhao@windriver.com>
+Date: Mon, 15 Apr 2019 06:05:58 +0000
+Subject: [PATCH] Fix CVE-2019-7282 and CVE-2019-7283
+
+Description: Fix CVE-2018-20685 and CVE-2019-6111
+Bug-Debian: https://bugs.debian.org/920486
+Origin: https://github.com/openssh/openssh-portable/commit/6010c0303a422a9c5fa8860c061bf7105eb7f8b2#diff-9f340c228413d5a9a9206ea2ed2bc624R1114
+
+Upstream-Status: Backport [Debian]
+[https://sources.debian.org/src/netkit-rsh/0.17-20/debian/patches/fix-CVE-2018-20685-and-CVE-2019-6111.patch]
+
+CVE: CVE-2019-7282 CVE-2019-7283
+
+Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
+---
+ rcp/rcp.c | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+diff --git a/rcp/rcp.c b/rcp/rcp.c
+index ca61c18..77d8ff8 100644
+--- a/rcp/rcp.c
++++ b/rcp/rcp.c
+@@ -740,6 +740,11 @@ sink(int argc, char *argv[])
+ size = size * 10 + (*cp++ - '0');
+ if (*cp++ != ' ')
+ SCREWUP("size not delimited");
++ if (*cp == '\0' || strchr(cp, '/') != NULL ||
++ strcmp(cp, ".") == 0 || strcmp(cp, "..") == 0) {
++ error("error: unexpected filename: %s", cp);
++ exit(1);
++ }
+ if (targisdir) {
+ static char *namebuf;
+ static int cursize;
diff --git a/meta-openembedded/meta-networking/recipes-netkit/netkit-rsh/netkit-rsh_0.17.bb b/meta-openembedded/meta-networking/recipes-netkit/netkit-rsh/netkit-rsh_0.17.bb
index d034cd8..6f203c5 100644
--- a/meta-openembedded/meta-networking/recipes-netkit/netkit-rsh/netkit-rsh_0.17.bb
+++ b/meta-openembedded/meta-networking/recipes-netkit/netkit-rsh/netkit-rsh_0.17.bb
@@ -16,6 +16,7 @@
file://netkit-rsh-0.17-rexec-ipv6.patch \
file://fix-host-variable.patch \
file://fixup_wait3_api_change.patch \
+ file://CVE-2019-7282-and-CVE-2019-7283.patch \
"
SRC_URI[archive.md5sum] = "65f5f28e2fe22d9ad8b17bb9a10df096"
diff --git a/meta-openembedded/meta-networking/recipes-protocols/babeld/babeld_1.8.3.bb b/meta-openembedded/meta-networking/recipes-protocols/babeld/babeld_1.8.3.bb
deleted file mode 100644
index 8f02847..0000000
--- a/meta-openembedded/meta-networking/recipes-protocols/babeld/babeld_1.8.3.bb
+++ /dev/null
@@ -1,27 +0,0 @@
-SUMMARY = "Babel is a loop-avoiding distance-vector routing protocol"
-DESCRIPTION = "\
-Babel is a loop-avoiding distance-vector routing protocol for IPv6 and \
-IPv4 with fast convergence properties. It is based on the ideas in DSDV, AODV \
-and Cisco's EIGRP, but is designed to work well not only in wired networks \
-but also in wireless mesh networks, and has been extended with support \
-for overlay networks. Babel is in the process of becoming an IETF Standard. \
-"
-HOMEPAGE = "https://www.irif.fr/~jch/software/babel/"
-SECTION = "net"
-
-LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://LICENCE;md5=411a48ac3c2e9e0911b8dd9aed26f754"
-
-SRC_URI = "git://github.com/jech/babeld.git;protocol=git"
-SRCREV = "535184173fcde5ddc43020cd197d01d1ea0e9a8b"
-
-S = "${WORKDIR}/git"
-
-do_compile () {
- oe_runmake babeld
-}
-
-do_install () {
- oe_runmake install.minimal PREFIX=${D}
-}
-
diff --git a/meta-openembedded/meta-networking/recipes-protocols/babeld/babeld_1.8.4.bb b/meta-openembedded/meta-networking/recipes-protocols/babeld/babeld_1.8.4.bb
new file mode 100644
index 0000000..550e126
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-protocols/babeld/babeld_1.8.4.bb
@@ -0,0 +1,27 @@
+SUMMARY = "Babel is a loop-avoiding distance-vector routing protocol"
+DESCRIPTION = "\
+Babel is a loop-avoiding distance-vector routing protocol for IPv6 and \
+IPv4 with fast convergence properties. It is based on the ideas in DSDV, AODV \
+and Cisco's EIGRP, but is designed to work well not only in wired networks \
+but also in wireless mesh networks, and has been extended with support \
+for overlay networks. Babel is in the process of becoming an IETF Standard. \
+"
+HOMEPAGE = "https://www.irif.fr/~jch/software/babel/"
+SECTION = "net"
+
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://LICENCE;md5=411a48ac3c2e9e0911b8dd9aed26f754"
+
+SRC_URI = "git://github.com/jech/babeld.git;protocol=git"
+SRCREV = "8627b6fcd4992f2e7992ecec97a4a4aa2d7ff099"
+
+S = "${WORKDIR}/git"
+
+do_compile () {
+ oe_runmake babeld
+}
+
+do_install () {
+ oe_runmake install.minimal PREFIX=${D}
+}
+
diff --git a/meta-openembedded/meta-networking/recipes-protocols/pptp-linux/pptp-linux/0001-include-missing-sys-types.h.patch b/meta-openembedded/meta-networking/recipes-protocols/pptp-linux/pptp-linux/0001-include-missing-sys-types.h.patch
deleted file mode 100644
index 804bf12..0000000
--- a/meta-openembedded/meta-networking/recipes-protocols/pptp-linux/pptp-linux/0001-include-missing-sys-types.h.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From f6c4d2468ae0dadd2f35680d61b98b2a59077328 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Fri, 7 Jul 2017 10:31:03 -0700
-Subject: [PATCH] include missing sys/types.h
-
-Fixes errors seen on musl
-pqueue.h:21:3: error: unknown type name 'u_int32_t'
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- pqueue.h | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/pqueue.h b/pqueue.h
-index c37ba7b..ae4cc6a 100644
---- a/pqueue.h
-+++ b/pqueue.h
-@@ -3,6 +3,7 @@
-
- #include <time.h>
- #include <sys/time.h>
-+#include <sys/types.h>
-
- /* wait this many seconds for missing packets before forgetting about them */
- #define DEFAULT_PACKET_TIMEOUT 0.3
---
-2.13.2
-
diff --git a/meta-openembedded/meta-networking/recipes-protocols/pptp-linux/pptp-linux_1.10.0.bb b/meta-openembedded/meta-networking/recipes-protocols/pptp-linux/pptp-linux_1.10.0.bb
new file mode 100644
index 0000000..3221581
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-protocols/pptp-linux/pptp-linux_1.10.0.bb
@@ -0,0 +1,30 @@
+SUMMARY = "Client for Microsoft PPTP VPNs"
+DESCRIPTION = "PPTP Client is a Linux, FreeBSD, NetBSD \
+ and OpenBSD client for the proprietary Microsoft Point-to-Point \
+ Tunneling Protocol, PPTP. Allows connection to a PPTP based \
+ Virtual Private Network (VPN) as used by employers and some \
+ cable and ADSL internet service providers."
+HOMEPAGE = "http://pptpclient.sourceforge.net"
+SECTION = "net"
+LICENSE = "GPLv2+"
+LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
+
+SRC_URI = "${SOURCEFORGE_MIRROR}/sourceforge/pptpclient/pptp-${PV}.tar.gz \
+ file://options.pptp \
+ "
+
+SRC_URI[md5sum] = "8d25341352fdae5ad5b36b9f18254908"
+SRC_URI[sha256sum] = "82492db8e487ce73b182ee7f444251d20c44f5c26d6e96c553ec7093aefb5af4"
+
+S = "${WORKDIR}/pptp-${PV}"
+
+EXTRA_OEMAKE = "-e MAKEFLAGS="
+
+do_install() {
+ install -d ${D}${sbindir} ${D}${sysconfdir}/ppp ${D}${mandir}/man8
+ install -m 555 pptp ${D}${sbindir}
+ install -m 644 pptp.8 ${D}${mandir}/man8
+ install -m 644 ${WORKDIR}/options.pptp ${D}${sysconfdir}/ppp
+}
+
+RDEPENDS_${PN} = "ppp"
diff --git a/meta-openembedded/meta-networking/recipes-protocols/pptp-linux/pptp-linux_1.9.0.bb b/meta-openembedded/meta-networking/recipes-protocols/pptp-linux/pptp-linux_1.9.0.bb
deleted file mode 100644
index 10c9170..0000000
--- a/meta-openembedded/meta-networking/recipes-protocols/pptp-linux/pptp-linux_1.9.0.bb
+++ /dev/null
@@ -1,31 +0,0 @@
-SUMMARY = "Client for Microsoft PPTP VPNs"
-DESCRIPTION = "PPTP Client is a Linux, FreeBSD, NetBSD \
- and OpenBSD client for the proprietary Microsoft Point-to-Point \
- Tunneling Protocol, PPTP. Allows connection to a PPTP based \
- Virtual Private Network (VPN) as used by employers and some \
- cable and ADSL internet service providers."
-HOMEPAGE = "http://pptpclient.sourceforge.net"
-SECTION = "net"
-LICENSE = "GPLv2+"
-LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
-
-SRC_URI = "${SOURCEFORGE_MIRROR}/sourceforge/pptpclient/pptp-${PV}.tar.gz \
- file://options.pptp \
- file://0001-include-missing-sys-types.h.patch \
- "
-
-SRC_URI[md5sum] = "b2117b377f65294a9786f80f0235d308"
-SRC_URI[sha256sum] = "0b1e8cbfc578d3f5ab12ee87c5c2c60419abfe9cc445690a8a19c320b11c9201"
-
-S = "${WORKDIR}/pptp-${PV}"
-
-EXTRA_OEMAKE = "-e MAKEFLAGS="
-
-do_install() {
- install -d ${D}${sbindir} ${D}${sysconfdir}/ppp ${D}${mandir}/man8
- install -m 555 pptp ${D}${sbindir}
- install -m 644 pptp.8 ${D}${mandir}/man8
- install -m 644 ${WORKDIR}/options.pptp ${D}${sysconfdir}/ppp
-}
-
-RDEPENDS_${PN} = "ppp"
diff --git a/meta-openembedded/meta-networking/recipes-support/chrony/chrony/0001-Fix-compilation-with-musl.patch b/meta-openembedded/meta-networking/recipes-support/chrony/chrony/0001-Fix-compilation-with-musl.patch
new file mode 100644
index 0000000..17b6353
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-support/chrony/chrony/0001-Fix-compilation-with-musl.patch
@@ -0,0 +1,29 @@
+From 11ec10cdb5ab4b94c5999e018a9c854419997761 Mon Sep 17 00:00:00 2001
+From: Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>
+Date: Wed, 10 Apr 2019 03:18:17 +0200
+Subject: [PATCH] Fix compilation with musl
+
+Fixes:
+../hash_intmd5.c:58: undefined reference to `MIN'
+
+Signed-off-by: Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>
+---
+ hash_intmd5.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/hash_intmd5.c b/hash_intmd5.c
+index 49da1cf..47efe4c 100644
+--- a/hash_intmd5.c
++++ b/hash_intmd5.c
+@@ -33,6 +33,8 @@
+
+ #include "md5.c"
+
++#include <sys/param.h>
++
+ static MD5_CTX ctx;
+
+ int
+--
+2.17.1
+
diff --git a/meta-openembedded/meta-networking/recipes-support/chrony/chrony_3.3.bb b/meta-openembedded/meta-networking/recipes-support/chrony/chrony_3.3.bb
deleted file mode 100644
index 2586370..0000000
--- a/meta-openembedded/meta-networking/recipes-support/chrony/chrony_3.3.bb
+++ /dev/null
@@ -1,134 +0,0 @@
-SUMMARY = "Versatile implementation of the Network Time Protocol"
-DESCRIPTION = "Chrony can synchronize the system clock with NTP \
-servers, reference clocks (e.g. GPS receiver), and manual input using \
-wristwatch and keyboard. It can also operate as an NTPv4 (RFC 5905) \
-server and peer to provide a time service to other computers in the \
-network. \
-\
-It is designed to perform well in a wide range of conditions, \
-including intermittent network connections, heavily congested \
-networks, changing temperatures (ordinary computer clocks are \
-sensitive to temperature), and systems that do not run continuously, or \
-run on a virtual machine. \
-\
-Typical accuracy between two machines on a LAN is in tens, or a few \
-hundreds, of microseconds; over the Internet, accuracy is typically \
-within a few milliseconds. With a good hardware reference clock \
-sub-microsecond accuracy is possible. \
-\
-Two programs are included in chrony: chronyd is a daemon that can be \
-started at boot time and chronyc is a command-line interface program \
-which can be used to monitor chronyd's performance and to change \
-various operating parameters whilst it is running. \
-\
-This recipe produces two binary packages: 'chrony' which contains chronyd, \
-the configuration file and the init script, and 'chronyc' which contains \
-the client program only."
-
-HOMEPAGE = "https://chrony.tuxfamily.org/"
-SECTION = "net"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
-
-SRC_URI = "https://download.tuxfamily.org/chrony/chrony-${PV}.tar.gz \
- file://chrony.conf \
- file://chronyd \
- file://arm_eabi.patch \
-"
-SRC_URI[md5sum] = "81ab62cf5d60b4b3fa8cd2c1b267ffd9"
-SRC_URI[sha256sum] = "0d1fb2d5875032f2d5a86f3770374c87ee4c941916f64171e81f7684f2a73128"
-
-DEPENDS = "pps-tools"
-
-# Note: Despite being built via './configure; make; make install',
-# chrony does not use GNU Autotools.
-inherit update-rc.d systemd
-
-# Configuration options:
-# - For command line editing support in chronyc, you may specify either
-# 'editline' or 'readline' but not both. editline is smaller, but
-# many systems already have readline for other purposes so you might want
-# to choose that instead. However, beware license incompatibility
-# since chrony is GPLv2 and readline versions after 6.0 are GPLv3+.
-# You can of course choose neither, but if you're that tight on space
-# consider dropping chronyc entirely (you can use it remotely with
-# appropriate chrony.conf options).
-# - Security-related:
-# - 'sechash' is omitted by default because it pulls in nss which is huge.
-# - 'privdrop' allows chronyd to run as non-root; would need changes to
-# chrony.conf and init script.
-# - 'scfilter' enables support for system call filtering, but requires the
-# kernel to have CONFIG_SECCOMP enabled.
-PACKAGECONFIG ??= "editline \
- ${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)} \
-"
-PACKAGECONFIG[readline] = "--without-editline,--without-readline,readline"
-PACKAGECONFIG[editline] = ",--without-editline,libedit"
-PACKAGECONFIG[sechash] = "--without-tomcrypt,--disable-sechash,nss"
-PACKAGECONFIG[privdrop] = ",--disable-privdrop,libcap"
-PACKAGECONFIG[scfilter] = "--enable-scfilter,--without-seccomp,libseccomp"
-PACKAGECONFIG[ipv6] = ",--disable-ipv6,"
-PACKAGECONFIG[nss] = "--with-nss,--without-nss,nss"
-PACKAGECONFIG[libcap] = "--with-libcap,--without-libcap,libcap"
-
-# --disable-static isn't supported by chrony's configure script.
-DISABLE_STATIC = ""
-
-do_configure() {
- ./configure --sysconfdir=${sysconfdir} --bindir=${bindir} --sbindir=${sbindir} \
- --localstatedir=${localstatedir} --datarootdir=${datadir} \
- ${PACKAGECONFIG_CONFARGS}
-}
-
-do_install() {
- # Binaries
- install -d ${D}${bindir}
- install -m 0755 ${S}/chronyc ${D}${bindir}
- install -d ${D}${sbindir}
- install -m 0755 ${S}/chronyd ${D}${sbindir}
-
- # Config file
- install -d ${D}${sysconfdir}
- install -m 644 ${WORKDIR}/chrony.conf ${D}${sysconfdir}
-
- # System V init script
- install -d ${D}${sysconfdir}/init.d
- install -m 755 ${WORKDIR}/chronyd ${D}${sysconfdir}/init.d
-
- # systemd unit configuration file
- install -d ${D}${systemd_unitdir}/system
- install -m 0644 ${S}/examples/chronyd.service ${D}${systemd_unitdir}/system/
-
- # Variable data (for drift and/or rtc file)
- install -d ${D}${localstatedir}/lib/chrony
-
- # Log files
- install -d ${D}${localstatedir}/log/chrony
-
- # Fix hard-coded paths in config files and init scripts
- sed -i -e 's!/var/!${localstatedir}/!g' -e 's!/etc/!${sysconfdir}/!g' \
- -e 's!/usr/sbin/!${sbindir}/!g' -e 's!/usr/bin/!${bindir}/!g' \
- ${D}${sysconfdir}/chrony.conf \
- ${D}${sysconfdir}/init.d/chronyd \
- ${D}${systemd_unitdir}/system/chronyd.service
- sed -i 's!^PATH=.*!PATH=${base_sbindir}:${base_bindir}:${sbindir}:${bindir}!' ${D}${sysconfdir}/init.d/chronyd
- sed -i 's!^EnvironmentFile=.*!EnvironmentFile=-${sysconfdir}/default/chronyd!' ${D}${systemd_unitdir}/system/chronyd.service
-}
-
-FILES_${PN} = "${sbindir}/chronyd ${sysconfdir} ${localstatedir}"
-CONFFILES_${PN} = "${sysconfdir}/chrony.conf"
-INITSCRIPT_NAME = "chronyd"
-INITSCRIPT_PARAMS = "defaults"
-SYSTEMD_PACKAGES = "${PN}"
-SYSTEMD_SERVICE_${PN} = "chronyd.service"
-
-# It's probably a bad idea to run chrony and another time daemon on
-# the same system. systemd includes the SNTP client 'timesyncd', which
-# will be disabled by chronyd.service, however it will remain on the rootfs
-# wasting 150 kB unless you put 'PACKAGECONFIG_remove_pn-systemd = "timesyncd"'
-# in a conf file or bbappend somewhere.
-RCONFLICTS_${PN} = "ntp ntimed"
-
-# Separate the client program into its own package
-PACKAGES =+ "chronyc"
-FILES_chronyc = "${bindir}/chronyc"
diff --git a/meta-openembedded/meta-networking/recipes-support/chrony/chrony_3.4.bb b/meta-openembedded/meta-networking/recipes-support/chrony/chrony_3.4.bb
new file mode 100644
index 0000000..f6898c0
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-support/chrony/chrony_3.4.bb
@@ -0,0 +1,139 @@
+SUMMARY = "Versatile implementation of the Network Time Protocol"
+DESCRIPTION = "Chrony can synchronize the system clock with NTP \
+servers, reference clocks (e.g. GPS receiver), and manual input using \
+wristwatch and keyboard. It can also operate as an NTPv4 (RFC 5905) \
+server and peer to provide a time service to other computers in the \
+network. \
+\
+It is designed to perform well in a wide range of conditions, \
+including intermittent network connections, heavily congested \
+networks, changing temperatures (ordinary computer clocks are \
+sensitive to temperature), and systems that do not run continuously, or \
+run on a virtual machine. \
+\
+Typical accuracy between two machines on a LAN is in tens, or a few \
+hundreds, of microseconds; over the Internet, accuracy is typically \
+within a few milliseconds. With a good hardware reference clock \
+sub-microsecond accuracy is possible. \
+\
+Two programs are included in chrony: chronyd is a daemon that can be \
+started at boot time and chronyc is a command-line interface program \
+which can be used to monitor chronyd's performance and to change \
+various operating parameters whilst it is running. \
+\
+This recipe produces two binary packages: 'chrony' which contains chronyd, \
+the configuration file and the init script, and 'chronyc' which contains \
+the client program only."
+
+HOMEPAGE = "https://chrony.tuxfamily.org/"
+SECTION = "net"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
+
+SRC_URI = "https://download.tuxfamily.org/chrony/chrony-${PV}.tar.gz \
+ file://chrony.conf \
+ file://chronyd \
+ file://arm_eabi.patch \
+"
+
+SRC_URI_append_libc-musl = " \
+ file://0001-Fix-compilation-with-musl.patch \
+"
+
+SRC_URI[md5sum] = "7170e750469c198fc6784047d6f71144"
+SRC_URI[sha256sum] = "af77e47c2610a7e55c8af5b89a8aeff52d9a867dd5983d848b52d374bc0e6b9f"
+
+DEPENDS = "pps-tools"
+
+# Note: Despite being built via './configure; make; make install',
+# chrony does not use GNU Autotools.
+inherit update-rc.d systemd
+
+# Configuration options:
+# - For command line editing support in chronyc, you may specify either
+# 'editline' or 'readline' but not both. editline is smaller, but
+# many systems already have readline for other purposes so you might want
+# to choose that instead. However, beware license incompatibility
+# since chrony is GPLv2 and readline versions after 6.0 are GPLv3+.
+# You can of course choose neither, but if you're that tight on space
+# consider dropping chronyc entirely (you can use it remotely with
+# appropriate chrony.conf options).
+# - Security-related:
+# - 'sechash' is omitted by default because it pulls in nss which is huge.
+# - 'privdrop' allows chronyd to run as non-root; would need changes to
+# chrony.conf and init script.
+# - 'scfilter' enables support for system call filtering, but requires the
+# kernel to have CONFIG_SECCOMP enabled.
+PACKAGECONFIG ??= "editline \
+ ${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)} \
+"
+PACKAGECONFIG[readline] = "--without-editline,--without-readline,readline"
+PACKAGECONFIG[editline] = ",--without-editline,libedit"
+PACKAGECONFIG[sechash] = "--without-tomcrypt,--disable-sechash,nss"
+PACKAGECONFIG[privdrop] = ",--disable-privdrop,libcap"
+PACKAGECONFIG[scfilter] = "--enable-scfilter,--without-seccomp,libseccomp"
+PACKAGECONFIG[ipv6] = ",--disable-ipv6,"
+PACKAGECONFIG[nss] = "--with-nss,--without-nss,nss"
+PACKAGECONFIG[libcap] = "--with-libcap,--without-libcap,libcap"
+
+# --disable-static isn't supported by chrony's configure script.
+DISABLE_STATIC = ""
+
+do_configure() {
+ ./configure --sysconfdir=${sysconfdir} --bindir=${bindir} --sbindir=${sbindir} \
+ --localstatedir=${localstatedir} --datarootdir=${datadir} \
+ ${PACKAGECONFIG_CONFARGS}
+}
+
+do_install() {
+ # Binaries
+ install -d ${D}${bindir}
+ install -m 0755 ${S}/chronyc ${D}${bindir}
+ install -d ${D}${sbindir}
+ install -m 0755 ${S}/chronyd ${D}${sbindir}
+
+ # Config file
+ install -d ${D}${sysconfdir}
+ install -m 644 ${WORKDIR}/chrony.conf ${D}${sysconfdir}
+
+ # System V init script
+ install -d ${D}${sysconfdir}/init.d
+ install -m 755 ${WORKDIR}/chronyd ${D}${sysconfdir}/init.d
+
+ # systemd unit configuration file
+ install -d ${D}${systemd_unitdir}/system
+ install -m 0644 ${S}/examples/chronyd.service ${D}${systemd_unitdir}/system/
+
+ # Variable data (for drift and/or rtc file)
+ install -d ${D}${localstatedir}/lib/chrony
+
+ # Log files
+ install -d ${D}${localstatedir}/log/chrony
+
+ # Fix hard-coded paths in config files and init scripts
+ sed -i -e 's!/var/!${localstatedir}/!g' -e 's!/etc/!${sysconfdir}/!g' \
+ -e 's!/usr/sbin/!${sbindir}/!g' -e 's!/usr/bin/!${bindir}/!g' \
+ ${D}${sysconfdir}/chrony.conf \
+ ${D}${sysconfdir}/init.d/chronyd \
+ ${D}${systemd_unitdir}/system/chronyd.service
+ sed -i 's!^PATH=.*!PATH=${base_sbindir}:${base_bindir}:${sbindir}:${bindir}!' ${D}${sysconfdir}/init.d/chronyd
+ sed -i 's!^EnvironmentFile=.*!EnvironmentFile=-${sysconfdir}/default/chronyd!' ${D}${systemd_unitdir}/system/chronyd.service
+}
+
+FILES_${PN} = "${sbindir}/chronyd ${sysconfdir} ${localstatedir}"
+CONFFILES_${PN} = "${sysconfdir}/chrony.conf"
+INITSCRIPT_NAME = "chronyd"
+INITSCRIPT_PARAMS = "defaults"
+SYSTEMD_PACKAGES = "${PN}"
+SYSTEMD_SERVICE_${PN} = "chronyd.service"
+
+# It's probably a bad idea to run chrony and another time daemon on
+# the same system. systemd includes the SNTP client 'timesyncd', which
+# will be disabled by chronyd.service, however it will remain on the rootfs
+# wasting 150 kB unless you put 'PACKAGECONFIG_remove_pn-systemd = "timesyncd"'
+# in a conf file or bbappend somewhere.
+RCONFLICTS_${PN} = "ntp ntimed"
+
+# Separate the client program into its own package
+PACKAGES =+ "chronyc"
+FILES_chronyc = "${bindir}/chronyc"
diff --git a/meta-openembedded/meta-networking/recipes-support/cifs/cifs-utils_6.9.bb b/meta-openembedded/meta-networking/recipes-support/cifs/cifs-utils_6.9.bb
new file mode 100644
index 0000000..51dcb23
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-support/cifs/cifs-utils_6.9.bb
@@ -0,0 +1,35 @@
+DESCRIPTION = "A a package of utilities for doing and managing mounts of the Linux CIFS filesystem."
+HOMEPAGE = "http://wiki.samba.org/index.php/LinuxCIFS_utils"
+SECTION = "otherosfs"
+LICENSE = "GPLv3 & LGPLv3"
+LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
+
+PV = "6.9"
+
+SRCREV = "9a8c21ad9e4510a83a3a41f7a04f763a4fe9ec09"
+SRC_URI = "git://git.samba.org/cifs-utils.git"
+
+S = "${WORKDIR}/git"
+DEPENDS += "libtalloc"
+
+PACKAGECONFIG ??= ""
+PACKAGECONFIG[cap] = "--with-libcap,--without-libcap,libcap"
+# when enabled, it creates ${bindir}/cifscreds and --ignore-fail-on-non-empty in do_install_append is needed
+PACKAGECONFIG[cifscreds] = "--enable-cifscreds,--disable-cifscreds,keyutils"
+# when enabled, it creates ${sbindir}/cifs.upcall and --ignore-fail-on-non-empty in do_install_append is needed
+PACKAGECONFIG[cifsupcall] = "--enable-cifsupcall,--disable-cifsupcall,krb5 libtalloc keyutils"
+PACKAGECONFIG[cifsidmap] = "--enable-cifsidmap,--disable-cifsidmap,keyutils samba"
+PACKAGECONFIG[cifsacl] = "--enable-cifsacl,--disable-cifsacl,samba"
+PACKAGECONFIG[pam] = "--enable-pam --with-pamdir=${base_libdir}/security,--disable-pam,libpam keyutils"
+
+inherit autotools pkgconfig
+
+do_install_append() {
+ # Remove empty /usr/bin and /usr/sbin directories since the mount helper
+ # is installed to /sbin
+ rmdir --ignore-fail-on-non-empty ${D}${bindir} ${D}${sbindir}
+}
+
+FILES_${PN} += "${base_libdir}/security"
+FILES_${PN}-dbg += "${base_libdir}/security/.debug"
+RRECOMMENDS_${PN} = "kernel-module-cifs"
diff --git a/meta-openembedded/meta-networking/recipes-support/cifs/cifs-utils_git.bb b/meta-openembedded/meta-networking/recipes-support/cifs/cifs-utils_git.bb
deleted file mode 100644
index 198e3ef..0000000
--- a/meta-openembedded/meta-networking/recipes-support/cifs/cifs-utils_git.bb
+++ /dev/null
@@ -1,37 +0,0 @@
-DESCRIPTION = "A a package of utilities for doing and managing mounts of the Linux CIFS filesystem."
-HOMEPAGE = "http://wiki.samba.org/index.php/LinuxCIFS_utils"
-SECTION = "otherosfs"
-LICENSE = "GPLv3 & LGPLv3"
-LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
-
-PV = "6.7"
-
-SRCREV = "8101a07871f185c7044fa2ca221b282ab4607c8b"
-SRC_URI = "git://git.samba.org/cifs-utils.git \
- file://0001-mount.cifs-Remove-data_blob.h-include.patch \
- "
-
-S = "${WORKDIR}/git"
-DEPENDS += "libtalloc"
-
-PACKAGECONFIG ??= ""
-PACKAGECONFIG[cap] = "--with-libcap,--without-libcap,libcap"
-# when enabled, it creates ${bindir}/cifscreds and --ignore-fail-on-non-empty in do_install_append is needed
-PACKAGECONFIG[cifscreds] = "--enable-cifscreds,--disable-cifscreds,keyutils"
-# when enabled, it creates ${sbindir}/cifs.upcall and --ignore-fail-on-non-empty in do_install_append is needed
-PACKAGECONFIG[cifsupcall] = "--enable-cifsupcall,--disable-cifsupcall,krb5 libtalloc keyutils"
-PACKAGECONFIG[cifsidmap] = "--enable-cifsidmap,--disable-cifsidmap,keyutils samba"
-PACKAGECONFIG[cifsacl] = "--enable-cifsacl,--disable-cifsacl,samba"
-PACKAGECONFIG[pam] = "--enable-pam --with-pamdir=${base_libdir}/security,--disable-pam,libpam keyutils"
-
-inherit autotools pkgconfig
-
-do_install_append() {
- # Remove empty /usr/bin and /usr/sbin directories since the mount helper
- # is installed to /sbin
- rmdir --ignore-fail-on-non-empty ${D}${bindir} ${D}${sbindir}
-}
-
-FILES_${PN} += "${base_libdir}/security"
-FILES_${PN}-dbg += "${base_libdir}/security/.debug"
-RRECOMMENDS_${PN} = "kernel-module-cifs"
diff --git a/meta-openembedded/meta-networking/recipes-support/cifs/files/0001-mount.cifs-Remove-data_blob.h-include.patch b/meta-openembedded/meta-networking/recipes-support/cifs/files/0001-mount.cifs-Remove-data_blob.h-include.patch
deleted file mode 100644
index 07f2a57..0000000
--- a/meta-openembedded/meta-networking/recipes-support/cifs/files/0001-mount.cifs-Remove-data_blob.h-include.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-Upstream-Status: Backport
-Signed-off-by: S. Lockwood-Childs <sjl@vctlabs.com>
-
-From 272d523a57a4e8791d625a479128613be5e401f5 Mon Sep 17 00:00:00 2001
-From: Thomas Witt <pyromaniac@exherbo.org>
-Date: Wed, 15 Mar 2017 20:20:44 +0000
-Subject: [PATCH] mount.cifs: Remove data_blob.h include
-
-data_blob.h includes talloc.h from libtalloc, but that is only marked as
-a dependency for cifs.upcall. No symbols from that header are used by
-cifs.mount, so remove it to avoid the libtalloc dependency
-
-Signed-off-by: Thomas Witt <pyromaniac@exherbo.org>
----
- mount.cifs.c | 1 -
- 1 file changed, 1 deletion(-)
-
-diff --git a/mount.cifs.c b/mount.cifs.c
-index 13b71ef..2612feb 100644
---- a/mount.cifs.c
-+++ b/mount.cifs.c
-@@ -61,7 +61,6 @@
- #include "mount.h"
- #include "util.h"
- #include "resolve_host.h"
--#include "data_blob.h"
-
- #ifndef MS_MOVE
- #define MS_MOVE 8192
---
-1.9.4
-
diff --git a/meta-openembedded/meta-networking/recipes-support/dovecot/dovecot_2.2.36.3.bb b/meta-openembedded/meta-networking/recipes-support/dovecot/dovecot_2.2.36.3.bb
new file mode 100644
index 0000000..be633e0
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-support/dovecot/dovecot_2.2.36.3.bb
@@ -0,0 +1,69 @@
+SUMMARY = "Dovecot is an open source IMAP and POP3 email server"
+HOMEPAGE = "https://www.dovecot.org/"
+DESCRIPTION = "Dovecot is an open source IMAP and POP3 email server for Linux/UNIX-like systems, written with security primarily in mind. Dovecot is an excellent choice for both small and large installations. It's fast, simple to set up, requires no special administration and it uses very little memory."
+SECTION = "mail"
+LICENSE = "LGPLv2.1 & MIT"
+LIC_FILES_CHKSUM = "file://COPYING;md5=a981379bd0f1c362f8d1d21515e5b30b"
+
+SRC_URI = "http://dovecot.org/releases/2.2/dovecot-${PV}.tar.gz \
+ file://0001-configure.ac-convert-AC_TRY_RUN-to-AC_TRY_LINK-state.patch \
+ file://dovecot.service \
+ file://dovecot.socket \
+ file://0001-doveadm-Fix-parallel-build.patch \
+ "
+
+SRC_URI[md5sum] = "80c1c271b1c4cbe26a793f4e3b09eb8e"
+SRC_URI[sha256sum] = "992521305fa1d61f4726aac2619ccc65094a3cc2e5c80644455199764305863e"
+
+DEPENDS = "openssl xz zlib bzip2 libcap icu libtirpc"
+CFLAGS += "-I${STAGING_INCDIR}/tirpc"
+LDFLAGS += "-ltirpc"
+
+inherit autotools pkgconfig systemd useradd
+
+PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'ldap pam', d)}"
+
+PACKAGECONFIG[pam] = "--with-pam,--without-pam,libpam,"
+PACKAGECONFIG[ldap] = "--with-ldap=plugin,--without-ldap,openldap,"
+PACKAGECONFIG[lz4] = "--with-lz4,--without-lz4,lz4,"
+
+# From native build in armv7a-hf/eglibc
+CACHED_CONFIGUREVARS += "i_cv_signed_size_t=no \
+ i_cv_gmtime_max_time_t=32 \
+ i_cv_signed_time_t=yes \
+ i_cv_mmap_plays_with_write=yes \
+ i_cv_fd_passing=yes \
+ i_cv_c99_vsnprintf=yes \
+ lib_cv___va_copy=yes \
+ lib_cv_va_copy=yes \
+ lib_cv_va_val_copy=yes \
+ "
+
+# hardcode epoll() to avoid running unsafe tests
+# BSD needs kqueue and uclibc poll()
+EXTRA_OECONF = " --with-ioloop=epoll \
+ --with-systemdsystemunitdir=${systemd_unitdir}/system"
+
+SYSTEMD_PACKAGES = "${PN}"
+SYSTEMD_SERVICE_${PN} = "dovecot.service dovecot.socket"
+SYSTEMD_AUTO_ENABLE = "disable"
+
+do_install_append () {
+ install -d 755 ${D}/etc/dovecot
+ touch 644 ${D}/etc/dovecot/dovecot.conf
+ install -m 0644 ${WORKDIR}/dovecot.service ${D}${systemd_unitdir}/system
+ sed -i -e 's#@SYSCONFDIR@#${sysconfdir}#g' ${D}${systemd_unitdir}/system/dovecot.service
+ sed -i -e 's#@SBINDIR@#${sbindir}#g' ${D}${systemd_unitdir}/system/dovecot.service
+}
+
+USERADD_PACKAGES = "${PN}"
+USERADD_PARAM_${PN} = "-r -d ${libexecdir} -M -s ${base_sbindir}/nologin -g dovecot dovecot; \
+ -r -d ${libexecdir} -M -s ${base_sbindir}/nologin -g dovenull dovenull"
+GROUPADD_PARAM_${PN} = "-f -r dovecot;-f -r dovenull"
+
+FILES_${PN} += "${libdir}/dovecot/*plugin.so \
+ ${libdir}/dovecot/libfs_compress.so \
+ ${libdir}/dovecot/libssl_iostream_openssl.so"
+FILES_${PN}-staticdev += "${libdir}/dovecot/*/*.a"
+FILES_${PN}-dev += "${libdir}/dovecot/libdovecot*.so"
+FILES_${PN}-dbg += "${libdir}/dovecot/*/.debug"
diff --git a/meta-openembedded/meta-networking/recipes-support/dovecot/dovecot_2.2.36.bb b/meta-openembedded/meta-networking/recipes-support/dovecot/dovecot_2.2.36.bb
deleted file mode 100644
index 39bfb91..0000000
--- a/meta-openembedded/meta-networking/recipes-support/dovecot/dovecot_2.2.36.bb
+++ /dev/null
@@ -1,69 +0,0 @@
-SUMMARY = "Dovecot is an open source IMAP and POP3 email server"
-HOMEPAGE = "https://www.dovecot.org/"
-DESCRIPTION = "Dovecot is an open source IMAP and POP3 email server for Linux/UNIX-like systems, written with security primarily in mind. Dovecot is an excellent choice for both small and large installations. It's fast, simple to set up, requires no special administration and it uses very little memory."
-SECTION = "mail"
-LICENSE = "LGPLv2.1 & MIT"
-LIC_FILES_CHKSUM = "file://COPYING;md5=a981379bd0f1c362f8d1d21515e5b30b"
-
-SRC_URI = "http://dovecot.org/releases/2.2/dovecot-${PV}.tar.gz \
- file://0001-configure.ac-convert-AC_TRY_RUN-to-AC_TRY_LINK-state.patch \
- file://dovecot.service \
- file://dovecot.socket \
- file://0001-doveadm-Fix-parallel-build.patch \
- "
-
-SRC_URI[md5sum] = "a8d6492584025b2413e82ea48de3cd5f"
-SRC_URI[sha256sum] = "e9aba89bb1ac1e9581b84e4a7a50f53142539614eaf7cc4c80007ebea4988be5"
-
-DEPENDS = "openssl xz zlib bzip2 libcap icu libtirpc"
-CFLAGS += "-I${STAGING_INCDIR}/tirpc"
-LDFLAGS += "-ltirpc"
-
-inherit autotools pkgconfig systemd useradd
-
-PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'ldap pam', d)}"
-
-PACKAGECONFIG[pam] = "--with-pam,--without-pam,libpam,"
-PACKAGECONFIG[ldap] = "--with-ldap=plugin,--without-ldap,openldap,"
-PACKAGECONFIG[lz4] = "--with-lz4,--without-lz4,lz4,"
-
-# From native build in armv7a-hf/eglibc
-CACHED_CONFIGUREVARS += "i_cv_signed_size_t=no \
- i_cv_gmtime_max_time_t=32 \
- i_cv_signed_time_t=yes \
- i_cv_mmap_plays_with_write=yes \
- i_cv_fd_passing=yes \
- i_cv_c99_vsnprintf=yes \
- lib_cv___va_copy=yes \
- lib_cv_va_copy=yes \
- lib_cv_va_val_copy=yes \
- "
-
-# hardcode epoll() to avoid running unsafe tests
-# BSD needs kqueue and uclibc poll()
-EXTRA_OECONF = " --with-ioloop=epoll \
- --with-systemdsystemunitdir=${systemd_unitdir}/system"
-
-SYSTEMD_PACKAGES = "${PN}"
-SYSTEMD_SERVICE_${PN} = "dovecot.service dovecot.socket"
-SYSTEMD_AUTO_ENABLE = "disable"
-
-do_install_append () {
- install -d 755 ${D}/etc/dovecot
- touch 644 ${D}/etc/dovecot/dovecot.conf
- install -m 0644 ${WORKDIR}/dovecot.service ${D}${systemd_unitdir}/system
- sed -i -e 's#@SYSCONFDIR@#${sysconfdir}#g' ${D}${systemd_unitdir}/system/dovecot.service
- sed -i -e 's#@SBINDIR@#${sbindir}#g' ${D}${systemd_unitdir}/system/dovecot.service
-}
-
-USERADD_PACKAGES = "${PN}"
-USERADD_PARAM_${PN} = "-r -d ${libexecdir} -M -s ${base_sbindir}/nologin -g dovecot dovecot; \
- -r -d ${libexecdir} -M -s ${base_sbindir}/nologin -g dovenull dovenull"
-GROUPADD_PARAM_${PN} = "-f -r dovecot;-f -r dovenull"
-
-FILES_${PN} += "${libdir}/dovecot/*plugin.so \
- ${libdir}/dovecot/libfs_compress.so \
- ${libdir}/dovecot/libssl_iostream_openssl.so"
-FILES_${PN}-staticdev += "${libdir}/dovecot/*/*.a"
-FILES_${PN}-dev += "${libdir}/dovecot/libdovecot*.so"
-FILES_${PN}-dbg += "${libdir}/dovecot/*/.debug"
diff --git a/meta-openembedded/meta-networking/recipes-support/drbd/drbd-utils/0001-drbd-drbd-tools-only-rmmod-if-DRBD-is-a-module.patch b/meta-openembedded/meta-networking/recipes-support/drbd/drbd-utils/0001-drbd-drbd-tools-only-rmmod-if-DRBD-is-a-module.patch
deleted file mode 100644
index c0f3adf..0000000
--- a/meta-openembedded/meta-networking/recipes-support/drbd/drbd-utils/0001-drbd-drbd-tools-only-rmmod-if-DRBD-is-a-module.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-Subject: drbd-tools: only rmmod if DRBD is a module
-
-Account for the case if the DRBD drive is built into
-the kernel. Otherwise, errors, like the following,
-will occur:
-
-root@localhost:~# /etc/init.d/drbd stop
- Stopping all DRBD resources: ERROR: Module drbd
- does not exist in /proc/modules
-
-Upstream-Status: Submitted [https://github.com/LINBIT/drbd-utils/pull/2]
-
-Signed-off-by: Aws Ismail <aws.ismail@windriver.com>
-Signed-off-by: Jason Wessel <jason.wessel@windriver.com>
-
-[ refresh to 8.4.4: squash Aws' and Jason's patches ]
-Signed-off-by: Michel Thebeau <michel.thebeau@windriver.com>
-
-Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
-Signed-off-by: Changqing Li <changqing.li@windriver.com>
-
----
- scripts/drbd | 4 +++-
- 1 file changed, 3 insertions(+), 1 deletion(-)
-
-diff --git a/scripts/drbd b/scripts/drbd
-index 20bf628..de589dc 100755
---- a/scripts/drbd
-+++ b/scripts/drbd
-@@ -241,7 +241,9 @@ case "$1" in
- if [ -d /sys/module/drbd/holders ]; then
- (cd /sys/module/drbd/holders; for tr in *; do [ -d ${tr} ] && ${RMMOD} ${tr}; done)
- fi
-- $RMMOD drbd && break
-+ if [ ! -z "$(cat /proc/modules | grep -w drbd)" ]; then
-+ $RMMOD drbd && break
-+ fi
- fi
- done
- run_hook stop
---
-1.9.1
-
diff --git a/meta-openembedded/meta-networking/recipes-support/drbd/drbd-utils_9.5.0.bb b/meta-openembedded/meta-networking/recipes-support/drbd/drbd-utils_9.5.0.bb
deleted file mode 100644
index bd1e857..0000000
--- a/meta-openembedded/meta-networking/recipes-support/drbd/drbd-utils_9.5.0.bb
+++ /dev/null
@@ -1,63 +0,0 @@
-SUMMARY = "Distributed block device driver for Linux"
-DESCRIPTION = "DRBD mirrors a block device over the network to another machine.\
-DRBD mirrors a block device over the network to another machine.\
-Think of it as networked raid 1. It is a building block for\
-setting up high availability (HA) clusters."
-HOMEPAGE = "http://www.drbd.org/"
-SECTION = "admin"
-LICENSE = "GPLv2+"
-LIC_FILES_CHKSUM = "file://COPYING;md5=5574c6965ae5f583e55880e397fbb018"
-
-SRC_URI = "git://github.com/LINBIT/drbd-utils;name=drbd-utils \
- git://github.com/LINBIT/drbd-headers;name=drbd-headers;destsuffix=git/drbd-headers \
- file://0001-drbd-drbd-tools-only-rmmod-if-DRBD-is-a-module.patch \
- "
-# v9.5.0
-SRCREV_drbd-utils = "ee126652638328b55dc6bff47d07d6161ab768db"
-SRCREV_drbd-headers = "b47cc11bcabe1a65c40ad23f71dcaf2da6419630"
-
-S = "${WORKDIR}/git"
-
-UPSTREAM_CHECK_URI = "https://github.com/LINBIT/drbd-utils/releases"
-
-SYSTEMD_SERVICE_${PN} = "drbd.service"
-SYSTEMD_AUTO_ENABLE = "disable"
-
-inherit autotools-brokensep systemd
-
-EXTRA_OECONF = " \
- --with-initdir=/etc/init.d \
- --without-pacemaker \
- --without-rgmanager \
- --without-bashcompletion \
- --with-distro debian \
- --with-initscripttype=both \
- --with-systemdunitdir=${systemd_unitdir}/system \
- --without-manual \
- "
-
-do_configure_prepend() {
- # move the the file under folder /lib/drbd/ to /usr/lib/drbd when usrmerge enabled
- if ${@bb.utils.contains('DISTRO_FEATURES', 'usrmerge', 'true', 'false', d)}; then
- for m_file in `find ${S} -name 'Makefile.in'`; do
- sed -i -e "s;\$(DESTDIR)\/lib\/drbd;\$(DESTDIR)\${nonarch_libdir}\/drbd;g" $m_file
- done
- # move the the file under folder /lib/udev/ to /usr/lib/udev when usrmerge enabled
- sed -i -e "s;default_udevdir=/lib/udev;default_udevdir=\${prefix}/lib/udev;g" ${S}/configure.ac
- fi
-
-}
-do_install_append() {
- # don't install empty /var/lock to avoid conflict with base-files
- rm -rf ${D}${localstatedir}/lock
-}
-
-RDEPENDS_${PN} += "bash perl-module-getopt-long perl-module-exporter perl-module-constant perl-module-overloading perl-module-exporter-heavy"
-
-# The drbd items are explicitly put under /lib when installed.
-#
-FILES_${PN} += "/run"
-FILES_${PN} += "${nonarch_base_libdir}/drbd \
- ${nonarch_libdir}/drbd \
- ${nonarch_libdir}/tmpfiles.d"
-FILES_${PN}-dbg += "${nonarch_base_libdir}/drbd/.debug"
diff --git a/meta-openembedded/meta-networking/recipes-support/drbd/drbd-utils_9.8.0.bb b/meta-openembedded/meta-networking/recipes-support/drbd/drbd-utils_9.8.0.bb
new file mode 100644
index 0000000..70e04b9
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-support/drbd/drbd-utils_9.8.0.bb
@@ -0,0 +1,63 @@
+SUMMARY = "Distributed block device driver for Linux"
+DESCRIPTION = "DRBD mirrors a block device over the network to another machine.\
+DRBD mirrors a block device over the network to another machine.\
+Think of it as networked raid 1. It is a building block for\
+setting up high availability (HA) clusters."
+HOMEPAGE = "http://www.drbd.org/"
+SECTION = "admin"
+LICENSE = "GPLv2+"
+LIC_FILES_CHKSUM = "file://COPYING;md5=5574c6965ae5f583e55880e397fbb018"
+
+SRC_URI = "git://github.com/LINBIT/drbd-utils;name=drbd-utils \
+ git://github.com/LINBIT/drbd-headers;name=drbd-headers;destsuffix=git/drbd-headers \
+ "
+# v9.8.0
+SRCREV_drbd-utils = "c30216b49330216bf8a567b7727da6e24f099f08"
+SRCREV_drbd-headers = "2357a11fb49bcbadf6b490e6d4cfe982a3d24813"
+
+S = "${WORKDIR}/git"
+
+UPSTREAM_CHECK_URI = "https://github.com/LINBIT/drbd-utils/releases"
+
+SYSTEMD_SERVICE_${PN} = "drbd.service"
+SYSTEMD_AUTO_ENABLE = "disable"
+
+inherit autotools-brokensep systemd
+
+EXTRA_OECONF = " \
+ --with-initdir=/etc/init.d \
+ --without-pacemaker \
+ --without-rgmanager \
+ --without-bashcompletion \
+ --with-distro debian \
+ --with-initscripttype=both \
+ --with-systemdunitdir=${systemd_unitdir}/system \
+ --without-manual \
+ "
+
+do_configure_prepend() {
+ # move the the file under folder /lib/drbd/ to /usr/lib/drbd when usrmerge enabled
+ if ${@bb.utils.contains('DISTRO_FEATURES', 'usrmerge', 'true', 'false', d)}; then
+ for m_file in `find ${S} -name 'Makefile.in'`; do
+ sed -i -e "s;\$(DESTDIR)\/lib\/drbd;\$(DESTDIR)\${nonarch_libdir}\/drbd;g" $m_file
+ done
+ # move the the file under folder /lib/udev/ to /usr/lib/udev when usrmerge enabled
+ sed -i -e "s;default_udevdir=/lib/udev;default_udevdir=\${prefix}/lib/udev;g" ${S}/configure.ac
+ fi
+
+}
+do_install_append() {
+ # don't install empty /var/lock and /var/run to avoid conflict with base-files
+ rm -rf ${D}${localstatedir}/lock
+ rm -rf ${D}${localstatedir}/run
+}
+
+RDEPENDS_${PN} += "bash perl-module-getopt-long perl-module-exporter perl-module-constant perl-module-overloading perl-module-exporter-heavy"
+
+# The drbd items are explicitly put under /lib when installed.
+#
+FILES_${PN} += "/run"
+FILES_${PN} += "${nonarch_base_libdir}/drbd \
+ ${nonarch_libdir}/drbd \
+ ${nonarch_libdir}/tmpfiles.d"
+FILES_${PN}-dbg += "${nonarch_base_libdir}/drbd/.debug"
diff --git a/meta-openembedded/meta-networking/recipes-support/drbd/drbd/0001-drbd-kbuild-fix-use-M-don-t-forget-addprefix-obj.patch b/meta-openembedded/meta-networking/recipes-support/drbd/drbd/0001-drbd-kbuild-fix-use-M-don-t-forget-addprefix-obj.patch
new file mode 100644
index 0000000..fbf94d5
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-support/drbd/drbd/0001-drbd-kbuild-fix-use-M-don-t-forget-addprefix-obj.patch
@@ -0,0 +1,79 @@
+Upstream-Status: Backport [https://github.com/LINBIT/drbd-9.0/commit/46e8e3f]
+
+Backport patch to fix compile errors:
+
+| LD [M] /home/kkang/buildarea/Yocto/build/tmp/work/qemux86_64-poky-linux/drbd/9.0.17-1-r0/drbd-9.0.17-1/drbd/drbd.o
+| x86_64-poky-linux-ld.bfd: cannot find .../tmp/work/qemux86_64-poky-linux/drbd/9.0.17-1-r0/drbd-9.0.17-1/drbd/drbd_bitmap.o: No such file or directory
+
+Signed-off-by: Kai Kang <kai.kang@windriver.com>
+
+From 46e8e3fc31b651fb56ea38134dcf14382fc43000 Mon Sep 17 00:00:00 2001
+From: Lars Ellenberg <lars.ellenberg@linbit.com>
+Date: Wed, 3 Apr 2019 10:57:46 +0200
+Subject: [PATCH] drbd: kbuild fix: use M=; don't forget addprefix $(obj)
+
+Kernel build started to warn about using SUBDIRS instead of M,
+and we don't support "very old" kernels anymore anyways.
+
+Our list of dependencies for drbd_buildtag.c needs to depend on the
+actual files $(obj)/*.o resulting from the build,
+not on just the list of *.o names.
+
+This apparently also fixes a build failure in opensuse build service for
+tumbleweed when using make-4.2.1-7.5 against kernel 5.0.5-something.
+---
+ drbd/Kbuild | 11 +++++------
+ drbd/Makefile | 4 +---
+ 2 files changed, 6 insertions(+), 9 deletions(-)
+
+diff --git a/drbd/Kbuild b/drbd/Kbuild
+index 285f7a81..99228029 100644
+--- a/drbd/Kbuild
++++ b/drbd/Kbuild
+@@ -1,4 +1,5 @@
+-obj-m := drbd.o drbd_transport_tcp.o
++obj-m += drbd.o drbd_transport_tcp.o
++# obj-$(CONFIG_BLK_DEV_DRBD) += drbd.o drbd_transport_tcp.o
+
+ clean-files := compat.h $(wildcard .config.$(KERNELVERSION).timestamp)
+
+@@ -56,10 +57,8 @@ ifndef DISABLE_KREF_DEBUGGING_HERE
+ drbd-y += kref_debug.o drbd_kref_debug.o
+ endif
+
+-$(patsubst %,$(obj)/%,$(drbd-y)): $(obj)/compat.h
+-$(patsubst %,$(obj)/%,drbd_transport_tcp.o): $(obj)/compat.h
+-
+-obj-$(CONFIG_BLK_DEV_DRBD) += drbd.o
++$(addprefix $(obj)/,$(drbd-y)): $(obj)/compat.h
++$(obj)/drbd_transport_tcp.o: $(obj)/compat.h
+
+ # ======================================================================
+
+@@ -124,7 +123,7 @@ endif
+ # and not in e.g. dash. I'm too lazy to fix it to be compatible.
+ SHELL=/bin/bash
+
+-$(obj)/drbd_buildtag.c: $(filter-out drbd_buildtag.o,$(drbd-y))
++$(obj)/drbd_buildtag.c: $(addprefix $(obj)/,$(filter-out drbd_buildtag.o,$(drbd-y)))
+ @$(kecho) ' GEN $@ $(echo-why)'
+ @set -e; exec > $@.new; \
+ echo -e "/* automatically generated. DO NOT EDIT. */"; \
+diff --git a/drbd/Makefile b/drbd/Makefile
+index 5f768fc6..f9e8792a 100644
+--- a/drbd/Makefile
++++ b/drbd/Makefile
+@@ -102,9 +102,7 @@ else
+
+ kbuild:
+ @rm -f .drbd_kernelrelease*
+- # previous to 2.6.6 (suse: 2.6.5-dunno), this should be:
+- $(MAKE) -C $(KDIR) $(if $(O),O=$(O),) SUBDIRS=$(DRBDSRC) $(ARCH_UM) modules
+-# $(MAKE) -C $(KDIR) M=$(DRBDSRC) $(ARCH_UM) modules
++ $(MAKE) -C $(KDIR) $(if $(O),O=$(O),) M=$(DRBDSRC) $(ARCH_UM) modules
+ -mv .drbd_kernelrelease.new .drbd_kernelrelease
+ @echo -n "Memorizing module configuration ... "
+ @config=$$( (for x in $(KDIR)/.config $(O)/.config ; do \
+--
+2.20.0
+
diff --git a/meta-openembedded/meta-networking/recipes-support/drbd/drbd_9.0.16-1.bb b/meta-openembedded/meta-networking/recipes-support/drbd/drbd_9.0.16-1.bb
deleted file mode 100644
index 8794c4f..0000000
--- a/meta-openembedded/meta-networking/recipes-support/drbd/drbd_9.0.16-1.bb
+++ /dev/null
@@ -1,23 +0,0 @@
-SUMMARY = "Distributed block device driver for Linux"
-DESCRIPTION = "DRBD is a block device which is designed to build high \
- availability clusters. This is done by mirroring a whole \
- block device via (a dedicated) network. You could see \
- it as a network raid-1."
-HOMEPAGE = "http://oss.linbit.com/drbd/"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=5574c6965ae5f583e55880e397fbb018"
-DEPENDS = "virtual/kernel"
-
-SRC_URI = "http://www.linbit.com/downloads/drbd/9.0/drbd-${PV}.tar.gz \
- file://check_existence_of_modules_before_installing.patch"
-
-SRC_URI[md5sum] = "6414a9eef2807c8210b6403e36ce3ea4"
-SRC_URI[sha256sum] = "6074b0d643f4bbae4641d3b4bc30f4840e74f2a212dd9c6555b8141e530e5789"
-
-inherit module
-
-EXTRA_OEMAKE += "KDIR='${STAGING_KERNEL_DIR}'"
-
-do_install () {
- oe_runmake install DESTDIR="${D}"
-}
diff --git a/meta-openembedded/meta-networking/recipes-support/drbd/drbd_9.0.17-1.bb b/meta-openembedded/meta-networking/recipes-support/drbd/drbd_9.0.17-1.bb
new file mode 100644
index 0000000..1eada26
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-support/drbd/drbd_9.0.17-1.bb
@@ -0,0 +1,25 @@
+SUMMARY = "Distributed block device driver for Linux"
+DESCRIPTION = "DRBD is a block device which is designed to build high \
+ availability clusters. This is done by mirroring a whole \
+ block device via (a dedicated) network. You could see \
+ it as a network raid-1."
+HOMEPAGE = "http://oss.linbit.com/drbd/"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=5574c6965ae5f583e55880e397fbb018"
+DEPENDS = "virtual/kernel"
+
+SRC_URI = "http://www.linbit.com/downloads/drbd/9.0/drbd-${PV}.tar.gz \
+ file://check_existence_of_modules_before_installing.patch \
+ file://0001-drbd-kbuild-fix-use-M-don-t-forget-addprefix-obj.patch \
+ "
+
+SRC_URI[md5sum] = "ae8d5030760b2820a4b3e250447890a0"
+SRC_URI[sha256sum] = "86dd6cc0fdc8123056a3bb67a634cd7ba62a7b05b23caab9995cce7730891da8"
+
+inherit module
+
+EXTRA_OEMAKE += "KDIR='${STAGING_KERNEL_DIR}'"
+
+do_install () {
+ oe_runmake install DESTDIR="${D}"
+}
diff --git a/meta-openembedded/meta-networking/recipes-support/fwknop/fwknop_2.6.10.bb b/meta-openembedded/meta-networking/recipes-support/fwknop/fwknop_2.6.10.bb
new file mode 100644
index 0000000..3eca3ab
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-support/fwknop/fwknop_2.6.10.bb
@@ -0,0 +1,36 @@
+SUMMARY = "fwknop - Single Packet Authorization"
+HOMEPAGE = "http://www.cipherdyne.org/fwknop/"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552 \
+ "
+inherit autotools-brokensep
+
+SRC_URI = "http://www.cipherdyne.org/${BPN}/download/${BPN}-${PV}.tar.bz2 \
+ "
+SRC_URI[md5sum] = "47a9c7c214c40dceb5dc2aa8832e4f32"
+SRC_URI[sha256sum] = "f6c09bec97ed8e474a98ae14f9f53e1bcdda33393f20667b6af3fb6bb894ca77"
+
+DEPENDS = "libpcap gpgme"
+
+EXTRA_OECONF = " --with-iptables=/usr/sbin/iptables \
+ "
+
+do_configure () {
+ install -m 0755 ${STAGING_DATADIR_NATIVE}/gnu-config/config.guess ${S}/config
+ install -m 0755 ${STAGING_DATADIR_NATIVE}/gnu-config/config.sub ${S}/config
+
+ aclocal
+ libtoolize --automake --copy --force
+ autoconf
+ autoheader
+ automake -a
+ oe_runconf
+}
+
+PACKAGES =+ "${PN}-client ${PN}-daemon"
+
+FILES_${PN}-client = "${bindir}/fwknop"
+FILES_${PN}-daemon = "${sbindir}/fwknopd \
+ ${sysconfdir}/fwknop/access.conf \
+ ${sysconfdir}/fwknop/fwknopd.conf"
+
diff --git a/meta-openembedded/meta-networking/recipes-support/fwknop/fwknop_2.6.9.bb b/meta-openembedded/meta-networking/recipes-support/fwknop/fwknop_2.6.9.bb
deleted file mode 100644
index 0fd5f6f..0000000
--- a/meta-openembedded/meta-networking/recipes-support/fwknop/fwknop_2.6.9.bb
+++ /dev/null
@@ -1,37 +0,0 @@
-SUMMARY = "fwknop - Single Packet Authorization"
-HOMEPAGE = "http://www.cipherdyne.org/fwknop/"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552 \
- "
-inherit autotools-brokensep
-
-SRC_URI = "http://www.cipherdyne.org/${BPN}/download/${BPN}-${PV}.tar.bz2 \
- "
-
-SRC_URI[md5sum] = "e2c49e9674888a028bd443a55c3aaa22"
-SRC_URI[sha256sum] = "5bf47fe1fd30e862d29464f762c0b8bf89b5e298665c37624d6707826da956d4"
-
-DEPENDS = "libpcap gpgme"
-
-EXTRA_OECONF = " --with-iptables=/usr/sbin/iptables \
- "
-
-do_configure () {
- install -m 0755 ${STAGING_DATADIR_NATIVE}/gnu-config/config.guess ${S}/config
- install -m 0755 ${STAGING_DATADIR_NATIVE}/gnu-config/config.sub ${S}/config
-
- aclocal
- libtoolize --automake --copy --force
- autoconf
- autoheader
- automake -a
- oe_runconf
-}
-
-PACKAGES =+ "${PN}-client ${PN}-daemon"
-
-FILES_${PN}-client = "${bindir}/fwknop"
-FILES_${PN}-daemon = "${sbindir}/fwknopd \
- ${sysconfdir}/fwknop/access.conf \
- ${sysconfdir}/fwknop/fwknopd.conf"
-
diff --git a/meta-openembedded/meta-networking/recipes-support/ipsec-tools/ipsec-tools/fix-CVE-2016-10396.patch b/meta-openembedded/meta-networking/recipes-support/ipsec-tools/ipsec-tools/fix-CVE-2016-10396.patch
index 19220c4..fec4804 100644
--- a/meta-openembedded/meta-networking/recipes-support/ipsec-tools/ipsec-tools/fix-CVE-2016-10396.patch
+++ b/meta-openembedded/meta-networking/recipes-support/ipsec-tools/ipsec-tools/fix-CVE-2016-10396.patch
@@ -1,6 +1,6 @@
Upstream-Status: Backport [https://anonscm.debian.org/cgit/pkg-ipsec-tools/pkg-ipsec-tools.git/plain/debian/patches/CVE-2016-10396.patch?id=62ac12648a4eb7c5ba5dba0f81998d1acf310d8b]
-CVE: CVE-2016-10396.
+CVE: CVE-2016-10396
Signed-off-by: Kai Kang <kai.kang@windriver.com>
---
diff --git a/meta-openembedded/meta-networking/recipes-support/linux-atm/linux-atm/0002-sigd-Replace-on_exit-API-with-atexit.patch b/meta-openembedded/meta-networking/recipes-support/linux-atm/linux-atm/0002-sigd-Replace-on_exit-API-with-atexit.patch
deleted file mode 100644
index ce06123..0000000
--- a/meta-openembedded/meta-networking/recipes-support/linux-atm/linux-atm/0002-sigd-Replace-on_exit-API-with-atexit.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From 27fa80dc8045e71c30dd2abea835206d5c8f6c71 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Sat, 17 Jun 2017 16:18:56 -0700
-Subject: [PATCH 2/3] sigd: Replace on_exit() API with atexit()
-
-on_exit is not universally available
-
-Upstream-Status: Pending
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- src/sigd/atmsigd.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/sigd/atmsigd.c b/src/sigd/atmsigd.c
-index 52e41c7..b766606 100644
---- a/src/sigd/atmsigd.c
-+++ b/src/sigd/atmsigd.c
-@@ -517,7 +517,7 @@ int main(int argc,char **argv)
- exit(0);
- }
- }
-- (void) on_exit(trace_on_exit,NULL);
-+ atexit(trace_on_exit);
- poll_loop();
- close_all();
- for (sig = entities; sig; sig = sig->next) stop_saal(&sig->saal);
---
-2.13.1
-
diff --git a/meta-openembedded/meta-networking/recipes-support/linux-atm/linux-atm/musl-no-on_exit.patch b/meta-openembedded/meta-networking/recipes-support/linux-atm/linux-atm/musl-no-on_exit.patch
new file mode 100644
index 0000000..25211d7
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-support/linux-atm/linux-atm/musl-no-on_exit.patch
@@ -0,0 +1,37 @@
+Description: musl lacks on_exit
+Author: Adrian Bunk <bunk@stusta.de>
+
+Only prints a trace on nonzero exit(),
+so can safely be disabled in musl builds.
+
+Signed-off-by: Adrian Bunk <bunk@stusta.de>
+Upstream-Status: Inappropriate [musl specific]
+
+--- linux-atm-2.5.1.orig/src/sigd/atmsigd.c
++++ linux-atm-2.5.1/src/sigd/atmsigd.c
+@@ -283,6 +283,7 @@ static void setup_signals(void)
+ /* ------------------------------- main ... ------------------------------- */
+
+
++#if 0
+ static void trace_on_exit(int status,void *dummy)
+ {
+ char path[PATH_MAX+1];
+@@ -300,6 +301,7 @@ static void trace_on_exit(int status,voi
+ dump_trace(file,"Message trace (after error exit)");
+ if (file != stderr) (void) fclose(file);
+ }
++#endif
+
+
+ static void manual_override(void)
+@@ -517,7 +519,9 @@ int main(int argc,char **argv)
+ exit(0);
+ }
+ }
++#if 0
+ (void) on_exit(trace_on_exit,NULL);
++#endif
+ poll_loop();
+ close_all();
+ for (sig = entities; sig; sig = sig->next) stop_saal(&sig->saal);
diff --git a/meta-openembedded/meta-networking/recipes-support/linux-atm/linux-atm_2.5.2.bb b/meta-openembedded/meta-networking/recipes-support/linux-atm/linux-atm_2.5.2.bb
index 51682b1..9ed7ca6 100644
--- a/meta-openembedded/meta-networking/recipes-support/linux-atm/linux-atm_2.5.2.bb
+++ b/meta-openembedded/meta-networking/recipes-support/linux-atm/linux-atm_2.5.2.bb
@@ -3,20 +3,19 @@
SECTION = "libs"
LICENSE = "GPL-2.0 & LGPL-2.0"
-DEPENDS = "virtual/kernel flex flex-native"
-
-PACKAGE_ARCH = "${MACHINE_ARCH}"
+DEPENDS = "flex flex-native"
SRC_URI = "http://nchc.dl.sourceforge.net/project/${BPN}/${BPN}/${PV}/${BPN}-${PV}.tar.gz \
file://link-with-ldflags.patch \
file://install-from-buildir.patch \
file://0001-fix-compile-error-with-linux-kernel-v4.8.patch \
file://0001-ttcp-Add-printf-format-string.patch \
- file://0002-sigd-Replace-on_exit-API-with-atexit.patch \
file://0003-mpoad-Drop-old-hack-to-compile-with-very-old-glibc.patch \
file://0001-IFNAMSIZ-is-defined-in-net-if.h.patch \
"
+SRC_URI_append_libc-musl = " file://musl-no-on_exit.patch"
+
SRC_URI[md5sum] = "d49499368c3cf15f73a05d9bce8824a8"
SRC_URI[sha256sum] = "9645481a2b16476b59220aa2d6bc5bc41043f291326c9b37581018fbd16dd53a"
diff --git a/meta-openembedded/meta-networking/recipes-support/macchanger/macchanger/0001-Fix-musl-build.patch b/meta-openembedded/meta-networking/recipes-support/macchanger/macchanger/0001-Fix-musl-build.patch
new file mode 100644
index 0000000..d36087d
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-support/macchanger/macchanger/0001-Fix-musl-build.patch
@@ -0,0 +1,31 @@
+From 12d1cc9da14b0cd0265bca3c4289a335ddf2e357 Mon Sep 17 00:00:00 2001
+From: Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>
+Date: Mon, 8 Apr 2019 21:00:20 +0200
+Subject: [PATCH] Fix musl build
+
+Fixes compilation error on musl:
+| ../macchanger-1.7.0/src/netinfo.c:116:26: error: expected ';' before 'epa'
+| req.ifr_data = (caddr_t)epa;
+
+Missing data type is defined in <sys/types.h>.
+
+Signed-off-by: Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>
+---
+ src/netinfo.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/src/netinfo.c b/src/netinfo.c
+index 3525123..1aa3293 100644
+--- a/src/netinfo.c
++++ b/src/netinfo.c
+@@ -28,6 +28,7 @@
+ #include <string.h>
+ #include <unistd.h>
+ #include <sys/ioctl.h>
++#include <sys/types.h>
+
+ #include <linux/ethtool.h>
+ #include <linux/sockios.h>
+--
+2.17.1
+
diff --git a/meta-openembedded/meta-networking/recipes-support/macchanger/macchanger_1.5.0.bb b/meta-openembedded/meta-networking/recipes-support/macchanger/macchanger_1.5.0.bb
deleted file mode 100644
index a90177f..0000000
--- a/meta-openembedded/meta-networking/recipes-support/macchanger/macchanger_1.5.0.bb
+++ /dev/null
@@ -1,24 +0,0 @@
-SUMMARY = "Tool to view/change network interface MAC addresses"
-DESCRIPTION = "A GNU/Linux utility for viewing/manipulating the MAC address of network interfaces."
-HOMEPAGE = "http://www.alobbs.com/macchanger"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
-SECTION = "net"
-
-SRC_URI = "${GNU_MIRROR}/macchanger/${BPN}-${PV}.tar.gz"
-
-SRC_URI[md5sum] = "79b7cdaeca3d8ebafa764c4b0dd03ab7"
-SRC_URI[sha256sum] = "d44bfa27cb29c5a718627cb3ef3aa42eb5130426545eb2031120826cd73fa8fe"
-
-FILES_${PN} = " \
- ${bindir}/${BPN} \
- ${datadir}/${BPN}/wireless.list \
- ${datadir}/${BPN}/OUI.list \
-"
-
-FILES_${PN}-doc = " \
- ${datadir}/info \
- ${datadir}/man \
-"
-
-inherit autotools
diff --git a/meta-openembedded/meta-networking/recipes-support/macchanger/macchanger_1.7.0.bb b/meta-openembedded/meta-networking/recipes-support/macchanger/macchanger_1.7.0.bb
new file mode 100644
index 0000000..6506fd8
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-support/macchanger/macchanger_1.7.0.bb
@@ -0,0 +1,25 @@
+SUMMARY = "Tool to view/change network interface MAC addresses"
+DESCRIPTION = "A GNU/Linux utility for viewing/manipulating the MAC address of network interfaces."
+HOMEPAGE = "https://github.com/alobbs/macchanger"
+LICENSE = "GPLv3"
+LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
+SECTION = "net"
+
+SRC_URI = "https://github.com/alobbs/macchanger/releases/download/${PV}/${BPN}-${PV}.tar.gz \
+ file://0001-Fix-musl-build.patch \
+"
+SRC_URI[md5sum] = "ca56f16142914337391dac91603eb332"
+SRC_URI[sha256sum] = "dae2717c270fd5f62d790dbf80c19793c651b1b26b62c101b82d5fdf25a845bf"
+
+FILES_${PN} = " \
+ ${bindir}/${BPN} \
+ ${datadir}/${BPN}/wireless.list \
+ ${datadir}/${BPN}/OUI.list \
+"
+
+FILES_${PN}-doc = " \
+ ${datadir}/info \
+ ${datadir}/man \
+"
+
+inherit autotools
diff --git a/meta-openembedded/meta-networking/recipes-support/nghttp2/nghttp2_1.37.0.bb b/meta-openembedded/meta-networking/recipes-support/nghttp2/nghttp2_1.37.0.bb
deleted file mode 100644
index 50196d6..0000000
--- a/meta-openembedded/meta-networking/recipes-support/nghttp2/nghttp2_1.37.0.bb
+++ /dev/null
@@ -1,13 +0,0 @@
-SUMMARY = "HTTP/2 C Library and tools"
-HOMEPAGE = "https://nghttp2.org/"
-SECTION = "libs"
-LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://COPYING;md5=764abdf30b2eadd37ce47dcbce0ea1ec"
-
-SRC_URI = "https://github.com/nghttp2/nghttp2/releases/download/v${PV}/nghttp2-${PV}.tar.xz"
-SRC_URI[md5sum] = "dc7536d02aa7d4883c20eaf637747381"
-SRC_URI[sha256sum] = "aa090b164b17f4b91fe32310a1c0edf3e97e02cd9d1524eef42d60dd1e8d47b7"
-
-DEPENDS = "libxml2 openssl zlib jansson cunit c-ares"
-
-inherit cmake pythonnative python-dir
diff --git a/meta-openembedded/meta-networking/recipes-support/nghttp2/nghttp2_1.38.0.bb b/meta-openembedded/meta-networking/recipes-support/nghttp2/nghttp2_1.38.0.bb
new file mode 100644
index 0000000..42b4379
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-support/nghttp2/nghttp2_1.38.0.bb
@@ -0,0 +1,13 @@
+SUMMARY = "HTTP/2 C Library and tools"
+HOMEPAGE = "https://nghttp2.org/"
+SECTION = "libs"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://COPYING;md5=764abdf30b2eadd37ce47dcbce0ea1ec"
+
+SRC_URI = "https://github.com/nghttp2/nghttp2/releases/download/v${PV}/nghttp2-${PV}.tar.xz"
+SRC_URI[md5sum] = "45b47086ee6da8171e11887c1665f275"
+SRC_URI[sha256sum] = "ef75c761858241c6b4372fa6397aa0481a984b84b7b07c4ec7dc2d7b9eee87f8"
+
+DEPENDS = "libxml2 openssl zlib jansson cunit c-ares"
+
+inherit cmake pythonnative python-dir
diff --git a/meta-openembedded/meta-networking/recipes-support/nis/ypbind-mt_2.4.bb b/meta-openembedded/meta-networking/recipes-support/nis/ypbind-mt_2.4.bb
deleted file mode 100644
index 9822f45..0000000
--- a/meta-openembedded/meta-networking/recipes-support/nis/ypbind-mt_2.4.bb
+++ /dev/null
@@ -1,62 +0,0 @@
-# This package builds the NIS ypbind daemon
-# The source package is utils/net/NIS/ypbind-mt
-#
-require nis.inc
-
-DESCRIPTION = " \
-Multithreaded NIS bind service (ypbind-mt). \
-ypbind-mt is a complete new implementation of a NIS \
-binding daemon for Linux. It has the following \
-features. Supports ypbind protocol V1 and V2. \
-Uses threads for better response. Supports multiple \
-domain bindings. Supports /var/yp/binding/* file \
-for Linux libc 4/5 and glibc 2.x. Supports a list \
-of known secure NIS server (/etc/yp.conf) Binds to \
-the server which answered as first. \
-\
-This is the final IPv4-only version of ypbind-mt. \
-"
-HOMEPAGE = "http://www.linux-nis.org/nis/ypbind-mt/index.html"
-DEPENDS = " \
- yp-tools \
- ${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)} \
- "
-DEPENDS_append_libc-musl = " bsd-headers nss"
-RDEPENDS_${PN} += "yp-tools"
-
-# ypbind-mt now provides all the functionality of ypbind
-# and is used in place of it.
-PROVIDES += "ypbind"
-
-SRC_URI = "http://www.linux-nis.org/download/ypbind-mt/${BP}.tar.bz2 \
- file://ypbind.init \
- file://ypbind.service \
- file://0001-dns_hosts-Fix-build-with-musl.patch \
- "
-SRC_URI[md5sum] = "1aeccd0d11c064d5d59c56941bca682b"
-SRC_URI[sha256sum] = "a2e1fa8fc992a12b289c229e00e38c20d59070c3bcf08babf40c692515c340e0"
-
-inherit systemd update-rc.d
-
-SYSTEMD_SERVICE_${PN} = "ypbind.service"
-INITSCRIPT_NAME = "ypbind"
-INITSCRIPT_PARAMS = "start 44 3 5 . stop 70 0 1 2 6 ."
-
-CACHED_CONFIGUREVARS = "ac_cv_prog_STRIP=/bin/true"
-
-CFLAGS_append_libc-musl = " -I${STAGING_INCDIR}/nss3"
-
-do_install_append () {
- install -d ${D}${sysconfdir}/init.d
- install -d ${D}${sysconfdir}/rcS.d
-
- install -m 0755 ${WORKDIR}/ypbind.init ${D}${sysconfdir}/init.d/ypbind
-
- install -d ${D}${systemd_unitdir}/system
- install -m 0644 ${WORKDIR}/ypbind.service ${D}${systemd_unitdir}/system
-}
-
-
-RPROVIDES_${PN} += "${PN}-systemd"
-RREPLACES_${PN} += "${PN}-systemd"
-RCONFLICTS_${PN} += "${PN}-systemd"
diff --git a/meta-openembedded/meta-networking/recipes-support/nis/ypbind-mt_2.6.bb b/meta-openembedded/meta-networking/recipes-support/nis/ypbind-mt_2.6.bb
new file mode 100644
index 0000000..1a64e6c
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-support/nis/ypbind-mt_2.6.bb
@@ -0,0 +1,62 @@
+# This package builds the NIS ypbind daemon
+# The source package is utils/net/NIS/ypbind-mt
+#
+require nis.inc
+
+DESCRIPTION = " \
+Multithreaded NIS bind service (ypbind-mt). \
+ypbind-mt is a complete new implementation of a NIS \
+binding daemon for Linux. It has the following \
+features. Supports ypbind protocol V1 and V2. \
+Uses threads for better response. Supports multiple \
+domain bindings. Supports /var/yp/binding/* file \
+for Linux libc 4/5 and glibc 2.x. Supports a list \
+of known secure NIS server (/etc/yp.conf) Binds to \
+the server which answered as first. \
+\
+This is the final IPv4-only version of ypbind-mt. \
+"
+HOMEPAGE = "https://github.com/thkukuk/ypbind-mt/"
+DEPENDS = " \
+ yp-tools \
+ ${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)} \
+ "
+DEPENDS_append_libc-musl = " bsd-headers nss"
+RDEPENDS_${PN} += "yp-tools"
+
+# ypbind-mt now provides all the functionality of ypbind
+# and is used in place of it.
+PROVIDES += "ypbind"
+
+SRC_URI = "https://github.com/thkukuk/ypbind-mt/releases/download/v${PV}/${BPN}-${PV}.tar.xz \
+ file://ypbind.init \
+ file://ypbind.service \
+ file://0001-dns_hosts-Fix-build-with-musl.patch \
+ "
+SRC_URI[md5sum] = "7cf89641fdc128d0919207e4b7caaf1d"
+SRC_URI[sha256sum] = "0696c0263c4fd48a4ff2ce6c109f05f37aab0f71646d81cb22c7c28591bf80eb"
+
+inherit systemd update-rc.d
+
+SYSTEMD_SERVICE_${PN} = "ypbind.service"
+INITSCRIPT_NAME = "ypbind"
+INITSCRIPT_PARAMS = "start 44 3 5 . stop 70 0 1 2 6 ."
+
+CACHED_CONFIGUREVARS = "ac_cv_prog_STRIP=/bin/true"
+
+CFLAGS_append_libc-musl = " -I${STAGING_INCDIR}/nss3"
+
+do_install_append () {
+ install -d ${D}${sysconfdir}/init.d
+ install -d ${D}${sysconfdir}/rcS.d
+
+ install -m 0755 ${WORKDIR}/ypbind.init ${D}${sysconfdir}/init.d/ypbind
+
+ install -d ${D}${systemd_unitdir}/system
+ install -m 0644 ${WORKDIR}/ypbind.service ${D}${systemd_unitdir}/system
+}
+
+
+RPROVIDES_${PN} += "${PN}-systemd"
+RREPLACES_${PN} += "${PN}-systemd"
+RCONFLICTS_${PN} += "${PN}-systemd"
diff --git a/meta-openembedded/meta-networking/recipes-support/ntp/ntp_4.2.8p12.bb b/meta-openembedded/meta-networking/recipes-support/ntp/ntp_4.2.8p12.bb
deleted file mode 100644
index 289d264..0000000
--- a/meta-openembedded/meta-networking/recipes-support/ntp/ntp_4.2.8p12.bb
+++ /dev/null
@@ -1,178 +0,0 @@
-SUMMARY = "Network Time Protocol daemon and utilities"
-DESCRIPTION = "The Network Time Protocol (NTP) is used to \
-synchronize the time of a computer client or server to \
-another server or reference time source, such as a radio \
-or satellite receiver or modem."
-HOMEPAGE = "http://support.ntp.org"
-SECTION = "net"
-LICENSE = "NTP"
-LIC_FILES_CHKSUM = "file://COPYRIGHT;md5=e877a1d567a6a58996d2b66e3e387003"
-
-DEPENDS = "libevent"
-
-SRC_URI = "http://www.eecis.udel.edu/~ntp/ntp_spool/ntp4/ntp-4.2/ntp-${PV}.tar.gz \
- file://ntp-4.2.4_p6-nano.patch \
- file://reproducibility-fixed-path-to-posix-shell.patch \
- file://reproducibility-respect-source-date-epoch.patch \
- file://ntpd \
- file://ntp.conf \
- file://ntpdate \
- file://ntpdate.default \
- file://ntpdate.service \
- file://ntpd.service \
- file://sntp.service \
- file://sntp \
- file://ntpd.list \
-"
-
-SRC_URI[md5sum] = "1522d66574bae14abb2622746dad2bdc"
-SRC_URI[sha256sum] = "709b222b5013d77d26bfff532b5ea470a8039497ef29d09363931c036cb30454"
-
-inherit autotools update-rc.d useradd systemd pkgconfig
-
-# The ac_cv_header_readline_history is to stop ntpdc depending on either
-# readline or curses
-EXTRA_OECONF += "--with-net-snmp-config=no \
- --without-ntpsnmpd \
- ac_cv_header_readline_history_h=no \
- --with-yielding_select=yes \
- --with-locfile=redhat \
- --without-rpath \
- "
-CFLAGS_append = " -DPTYS_ARE_GETPT -DPTYS_ARE_SEARCHED"
-
-USERADD_PACKAGES = "${PN}"
-NTP_USER_HOME ?= "/var/lib/ntp"
-USERADD_PARAM_${PN} = "--system --home-dir ${NTP_USER_HOME} \
- --no-create-home \
- --shell /bin/false --user-group ntp"
-
-# NB: debug is default-enabled by NTP; keep it default-enabled here.
-PACKAGECONFIG ??= "cap debug refclocks openssl \
- ${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)} \
-"
-PACKAGECONFIG[openssl] = "--with-openssl-libdir=${STAGING_LIBDIR} \
- --with-openssl-incdir=${STAGING_INCDIR} \
- --with-crypto, \
- --without-openssl --without-crypto, \
- openssl"
-PACKAGECONFIG[cap] = "--enable-linuxcaps,--disable-linuxcaps,libcap"
-PACKAGECONFIG[readline] = "--with-lineeditlibs,--without-lineeditlibs,readline"
-PACKAGECONFIG[refclocks] = "--enable-all-clocks,--disable-all-clocks,pps-tools"
-PACKAGECONFIG[debug] = "--enable-debugging,--disable-debugging"
-PACKAGECONFIG[mdns] = "ac_cv_header_dns_sd_h=yes,ac_cv_header_dns_sd_h=no,mdns"
-PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6,"
-
-do_install_append() {
- install -d ${D}${sysconfdir}/init.d
- install -m 644 ${WORKDIR}/ntp.conf ${D}${sysconfdir}
- install -m 755 ${WORKDIR}/ntpd ${D}${sysconfdir}/init.d
- install -d ${D}${bindir}
- install -m 755 ${WORKDIR}/ntpdate ${D}${bindir}/ntpdate-sync
-
- install -m 755 -d ${D}${NTP_USER_HOME}
- chown ntp:ntp ${D}${NTP_USER_HOME}
-
- # Fix hardcoded paths in scripts
- sed -i 's!/usr/sbin/!${sbindir}/!g' ${D}${sysconfdir}/init.d/ntpd ${D}${bindir}/ntpdate-sync
- sed -i 's!/usr/bin/!${bindir}/!g' ${D}${sysconfdir}/init.d/ntpd ${D}${bindir}/ntpdate-sync
- sed -i 's!/etc/!${sysconfdir}/!g' ${D}${sysconfdir}/init.d/ntpd ${D}${bindir}/ntpdate-sync
- sed -i 's!/var/!${localstatedir}/!g' ${D}${sysconfdir}/init.d/ntpd ${D}${bindir}/ntpdate-sync
- sed -i 's!^PATH=.*!PATH=${base_sbindir}:${base_bindir}:${sbindir}:${bindir}!' ${D}${bindir}/ntpdate-sync
- sed -i '1s,#!.*perl -w,#! ${bindir}/env perl,' ${D}${sbindir}/ntptrace
- sed -i '/use/i use warnings;' ${D}${sbindir}/ntptrace
- sed -i '1s,#!.*perl,#! ${bindir}/env perl,' ${D}${sbindir}/ntp-wait
- sed -i '/use/i use warnings;' ${D}${sbindir}/ntp-wait
- sed -i '1s,#!.*perl -w,#! ${bindir}/env perl,' ${D}${sbindir}/calc_tickadj
- sed -i '/use/i use warnings;' ${D}${sbindir}/calc_tickadj
-
- install -d ${D}/${sysconfdir}/default
- install -m 644 ${WORKDIR}/ntpdate.default ${D}${sysconfdir}/default/ntpdate
- install -m 0644 ${WORKDIR}/sntp ${D}${sysconfdir}/default/
-
- install -d ${D}/${sysconfdir}/network/if-up.d
- ln -s ${bindir}/ntpdate-sync ${D}/${sysconfdir}/network/if-up.d
-
- install -d ${D}${systemd_unitdir}/system
- install -m 0644 ${WORKDIR}/ntpdate.service ${D}${systemd_unitdir}/system/
- install -m 0644 ${WORKDIR}/ntpd.service ${D}${systemd_unitdir}/system/
- install -m 0644 ${WORKDIR}/sntp.service ${D}${systemd_unitdir}/system/
-
- install -d ${D}${systemd_unitdir}/ntp-units.d
- install -m 0644 ${WORKDIR}/ntpd.list ${D}${systemd_unitdir}/ntp-units.d/60-ntpd.list
-
- # Remove an empty libexecdir.
- rmdir --ignore-fail-on-non-empty ${D}${libexecdir}
-}
-
-PACKAGES += "ntpdate sntp ntpq ${PN}-tickadj ${PN}-utils"
-# NOTE: you don't need ntpdate, use "ntpd -q -g -x"
-
-# ntp originally includes tickadj. It's split off for inclusion in small firmware images on platforms
-# with wonky clocks (e.g. OpenSlug)
-RDEPENDS_${PN} = "${PN}-tickadj"
-# ntpd require libgcc for execution
-RDEPENDS_${PN} += "libgcc"
-# Handle move from bin to utils package
-RPROVIDES_${PN}-utils = "${PN}-bin"
-RREPLACES_${PN}-utils = "${PN}-bin"
-RCONFLICTS_${PN}-utils = "${PN}-bin"
-# ntpq was split out of ntp-utils
-RDEPENDS_${PN}-utils = "ntpq"
-
-SYSTEMD_PACKAGES = "${PN} ntpdate sntp"
-SYSTEMD_SERVICE_${PN} = "ntpd.service"
-SYSTEMD_SERVICE_ntpdate = "ntpdate.service"
-SYSTEMD_SERVICE_sntp = "sntp.service"
-SYSTEMD_AUTO_ENABLE_sntp = "disable"
-
-RPROVIDES_${PN} += "${PN}-systemd"
-RREPLACES_${PN} += "${PN}-systemd"
-RCONFLICTS_${PN} += "${PN}-systemd"
-
-RPROVIDES_ntpdate += "ntpdate-systemd"
-RREPLACES_ntpdate += "ntpdate-systemd"
-RCONFLICTS_ntpdate += "ntpdate-systemd"
-
-RSUGGESTS_${PN} = "iana-etc"
-
-FILES_${PN} = "${sbindir}/ntpd.ntp ${sysconfdir}/ntp.conf ${sysconfdir}/init.d/ntpd ${libdir} \
- ${NTP_USER_HOME} \
- ${systemd_unitdir}/ntp-units.d/60-ntpd.list ${libexecdir}\
-"
-FILES_${PN}-tickadj = "${sbindir}/tickadj"
-FILES_${PN}-utils = "${sbindir} ${datadir}/ntp/lib"
-RDEPENDS_${PN}-utils += "perl"
-FILES_ntpdate = "${sbindir}/ntpdate \
- ${sysconfdir}/network/if-up.d/ntpdate-sync \
- ${bindir}/ntpdate-sync \
- ${sysconfdir}/default/ntpdate \
- ${systemd_unitdir}/system/ntpdate.service \
-"
-FILES_sntp = "${sbindir}/sntp \
- ${sysconfdir}/default/sntp \
- ${systemd_unitdir}/system/sntp.service \
- "
-FILES_ntpq = "${sbindir}/ntpq"
-
-CONFFILES_${PN} = "${sysconfdir}/ntp.conf"
-CONFFILES_ntpdate = "${sysconfdir}/default/ntpdate"
-
-INITSCRIPT_NAME = "ntpd"
-# No dependencies, so just go in at the standard level (20)
-INITSCRIPT_PARAMS = "defaults"
-
-pkg_postinst_ntpdate() {
- if ! grep -q -s ntpdate $D/var/spool/cron/root; then
- echo "adding crontab"
- test -d $D/var/spool/cron || mkdir -p $D/var/spool/cron
- echo "30 * * * * ${bindir}/ntpdate-sync silent" >> $D/var/spool/cron/root
- fi
-}
-
-inherit update-alternatives
-
-ALTERNATIVE_PRIORITY = "100"
-
-ALTERNATIVE_${PN} = "ntpd"
-ALTERNATIVE_LINK_NAME[ntpd] = "${sbindir}/ntpd"
diff --git a/meta-openembedded/meta-networking/recipes-support/ntp/ntp_4.2.8p13.bb b/meta-openembedded/meta-networking/recipes-support/ntp/ntp_4.2.8p13.bb
new file mode 100644
index 0000000..dc18a60
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-support/ntp/ntp_4.2.8p13.bb
@@ -0,0 +1,178 @@
+SUMMARY = "Network Time Protocol daemon and utilities"
+DESCRIPTION = "The Network Time Protocol (NTP) is used to \
+synchronize the time of a computer client or server to \
+another server or reference time source, such as a radio \
+or satellite receiver or modem."
+HOMEPAGE = "http://support.ntp.org"
+SECTION = "net"
+LICENSE = "NTP"
+LIC_FILES_CHKSUM = "file://COPYRIGHT;md5=4cee33257467509e498f4cd9a6a4bd53"
+
+DEPENDS = "libevent"
+
+SRC_URI = "http://www.eecis.udel.edu/~ntp/ntp_spool/ntp4/ntp-4.2/ntp-${PV}.tar.gz \
+ file://ntp-4.2.4_p6-nano.patch \
+ file://reproducibility-fixed-path-to-posix-shell.patch \
+ file://reproducibility-respect-source-date-epoch.patch \
+ file://ntpd \
+ file://ntp.conf \
+ file://ntpdate \
+ file://ntpdate.default \
+ file://ntpdate.service \
+ file://ntpd.service \
+ file://sntp.service \
+ file://sntp \
+ file://ntpd.list \
+"
+
+SRC_URI[md5sum] = "ea040ab9b4ca656b5229b89d6b822f13"
+SRC_URI[sha256sum] = "288772cecfcd9a53694ffab108d1825a31ba77f3a8466b0401baeca3bc232a38"
+
+inherit autotools update-rc.d useradd systemd pkgconfig
+
+# The ac_cv_header_readline_history is to stop ntpdc depending on either
+# readline or curses
+EXTRA_OECONF += "--with-net-snmp-config=no \
+ --without-ntpsnmpd \
+ ac_cv_header_readline_history_h=no \
+ --with-yielding_select=yes \
+ --with-locfile=redhat \
+ --without-rpath \
+ "
+CFLAGS_append = " -DPTYS_ARE_GETPT -DPTYS_ARE_SEARCHED"
+
+USERADD_PACKAGES = "${PN}"
+NTP_USER_HOME ?= "/var/lib/ntp"
+USERADD_PARAM_${PN} = "--system --home-dir ${NTP_USER_HOME} \
+ --no-create-home \
+ --shell /bin/false --user-group ntp"
+
+# NB: debug is default-enabled by NTP; keep it default-enabled here.
+PACKAGECONFIG ??= "cap debug refclocks openssl \
+ ${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)} \
+"
+PACKAGECONFIG[openssl] = "--with-openssl-libdir=${STAGING_LIBDIR} \
+ --with-openssl-incdir=${STAGING_INCDIR} \
+ --with-crypto, \
+ --without-openssl --without-crypto, \
+ openssl"
+PACKAGECONFIG[cap] = "--enable-linuxcaps,--disable-linuxcaps,libcap"
+PACKAGECONFIG[readline] = "--with-lineeditlibs,--without-lineeditlibs,readline"
+PACKAGECONFIG[refclocks] = "--enable-all-clocks,--disable-all-clocks,pps-tools"
+PACKAGECONFIG[debug] = "--enable-debugging,--disable-debugging"
+PACKAGECONFIG[mdns] = "ac_cv_header_dns_sd_h=yes,ac_cv_header_dns_sd_h=no,mdns"
+PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6,"
+
+do_install_append() {
+ install -d ${D}${sysconfdir}/init.d
+ install -m 644 ${WORKDIR}/ntp.conf ${D}${sysconfdir}
+ install -m 755 ${WORKDIR}/ntpd ${D}${sysconfdir}/init.d
+ install -d ${D}${bindir}
+ install -m 755 ${WORKDIR}/ntpdate ${D}${bindir}/ntpdate-sync
+
+ install -m 755 -d ${D}${NTP_USER_HOME}
+ chown ntp:ntp ${D}${NTP_USER_HOME}
+
+ # Fix hardcoded paths in scripts
+ sed -i 's!/usr/sbin/!${sbindir}/!g' ${D}${sysconfdir}/init.d/ntpd ${D}${bindir}/ntpdate-sync
+ sed -i 's!/usr/bin/!${bindir}/!g' ${D}${sysconfdir}/init.d/ntpd ${D}${bindir}/ntpdate-sync
+ sed -i 's!/etc/!${sysconfdir}/!g' ${D}${sysconfdir}/init.d/ntpd ${D}${bindir}/ntpdate-sync
+ sed -i 's!/var/!${localstatedir}/!g' ${D}${sysconfdir}/init.d/ntpd ${D}${bindir}/ntpdate-sync
+ sed -i 's!^PATH=.*!PATH=${base_sbindir}:${base_bindir}:${sbindir}:${bindir}!' ${D}${bindir}/ntpdate-sync
+ sed -i '1s,#!.*perl -w,#! ${bindir}/env perl,' ${D}${sbindir}/ntptrace
+ sed -i '/use/i use warnings;' ${D}${sbindir}/ntptrace
+ sed -i '1s,#!.*perl,#! ${bindir}/env perl,' ${D}${sbindir}/ntp-wait
+ sed -i '/use/i use warnings;' ${D}${sbindir}/ntp-wait
+ sed -i '1s,#!.*perl -w,#! ${bindir}/env perl,' ${D}${sbindir}/calc_tickadj
+ sed -i '/use/i use warnings;' ${D}${sbindir}/calc_tickadj
+
+ install -d ${D}/${sysconfdir}/default
+ install -m 644 ${WORKDIR}/ntpdate.default ${D}${sysconfdir}/default/ntpdate
+ install -m 0644 ${WORKDIR}/sntp ${D}${sysconfdir}/default/
+
+ install -d ${D}/${sysconfdir}/network/if-up.d
+ ln -s ${bindir}/ntpdate-sync ${D}/${sysconfdir}/network/if-up.d
+
+ install -d ${D}${systemd_unitdir}/system
+ install -m 0644 ${WORKDIR}/ntpdate.service ${D}${systemd_unitdir}/system/
+ install -m 0644 ${WORKDIR}/ntpd.service ${D}${systemd_unitdir}/system/
+ install -m 0644 ${WORKDIR}/sntp.service ${D}${systemd_unitdir}/system/
+
+ install -d ${D}${systemd_unitdir}/ntp-units.d
+ install -m 0644 ${WORKDIR}/ntpd.list ${D}${systemd_unitdir}/ntp-units.d/60-ntpd.list
+
+ # Remove an empty libexecdir.
+ rmdir --ignore-fail-on-non-empty ${D}${libexecdir}
+}
+
+PACKAGES += "ntpdate sntp ntpq ${PN}-tickadj ${PN}-utils"
+# NOTE: you don't need ntpdate, use "ntpd -q -g -x"
+
+# ntp originally includes tickadj. It's split off for inclusion in small firmware images on platforms
+# with wonky clocks (e.g. OpenSlug)
+RDEPENDS_${PN} = "${PN}-tickadj"
+# ntpd require libgcc for execution
+RDEPENDS_${PN} += "libgcc"
+# Handle move from bin to utils package
+RPROVIDES_${PN}-utils = "${PN}-bin"
+RREPLACES_${PN}-utils = "${PN}-bin"
+RCONFLICTS_${PN}-utils = "${PN}-bin"
+# ntpq was split out of ntp-utils
+RDEPENDS_${PN}-utils = "ntpq"
+
+SYSTEMD_PACKAGES = "${PN} ntpdate sntp"
+SYSTEMD_SERVICE_${PN} = "ntpd.service"
+SYSTEMD_SERVICE_ntpdate = "ntpdate.service"
+SYSTEMD_SERVICE_sntp = "sntp.service"
+SYSTEMD_AUTO_ENABLE_sntp = "disable"
+
+RPROVIDES_${PN} += "${PN}-systemd"
+RREPLACES_${PN} += "${PN}-systemd"
+RCONFLICTS_${PN} += "${PN}-systemd"
+
+RPROVIDES_ntpdate += "ntpdate-systemd"
+RREPLACES_ntpdate += "ntpdate-systemd"
+RCONFLICTS_ntpdate += "ntpdate-systemd"
+
+RSUGGESTS_${PN} = "iana-etc"
+
+FILES_${PN} = "${sbindir}/ntpd.ntp ${sysconfdir}/ntp.conf ${sysconfdir}/init.d/ntpd ${libdir} \
+ ${NTP_USER_HOME} \
+ ${systemd_unitdir}/ntp-units.d/60-ntpd.list ${libexecdir}\
+"
+FILES_${PN}-tickadj = "${sbindir}/tickadj"
+FILES_${PN}-utils = "${sbindir} ${datadir}/ntp/lib"
+RDEPENDS_${PN}-utils += "perl"
+FILES_ntpdate = "${sbindir}/ntpdate \
+ ${sysconfdir}/network/if-up.d/ntpdate-sync \
+ ${bindir}/ntpdate-sync \
+ ${sysconfdir}/default/ntpdate \
+ ${systemd_unitdir}/system/ntpdate.service \
+"
+FILES_sntp = "${sbindir}/sntp \
+ ${sysconfdir}/default/sntp \
+ ${systemd_unitdir}/system/sntp.service \
+ "
+FILES_ntpq = "${sbindir}/ntpq"
+
+CONFFILES_${PN} = "${sysconfdir}/ntp.conf"
+CONFFILES_ntpdate = "${sysconfdir}/default/ntpdate"
+
+INITSCRIPT_NAME = "ntpd"
+# No dependencies, so just go in at the standard level (20)
+INITSCRIPT_PARAMS = "defaults"
+
+pkg_postinst_ntpdate() {
+ if ! grep -q -s ntpdate $D/var/spool/cron/root; then
+ echo "adding crontab"
+ test -d $D/var/spool/cron || mkdir -p $D/var/spool/cron
+ echo "30 * * * * ${bindir}/ntpdate-sync silent" >> $D/var/spool/cron/root
+ fi
+}
+
+inherit update-alternatives
+
+ALTERNATIVE_PRIORITY = "100"
+
+ALTERNATIVE_${PN} = "ntpd"
+ALTERNATIVE_LINK_NAME[ntpd] = "${sbindir}/ntpd"
diff --git a/meta-openembedded/meta-networking/recipes-support/nuttcp/nuttcp_7.3.3.bb b/meta-openembedded/meta-networking/recipes-support/nuttcp/nuttcp_7.3.3.bb
deleted file mode 100644
index ec40678..0000000
--- a/meta-openembedded/meta-networking/recipes-support/nuttcp/nuttcp_7.3.3.bb
+++ /dev/null
@@ -1,26 +0,0 @@
-SUMMARY = "network performance measurement tool"
-DESCRIPTION = "nuttcp is a network performance measurement tool intended for use by network \
-and system managers. Its most basic usage is to determine the raw TCP (or UDP) \
-network layer throughput by transferring memory buffers from a source system \
-across an interconnecting network to a destination system, either transferring \
-data for a specified time interval, or alternatively transferring a specified \
-number of bytes."
-HOMEPAGE = "http://www.nuttcp.net/Welcome%20Page.html"
-LICENSE = "GPL-2.0"
-SECTION = "net"
-LIC_FILES_CHKSUM = "file://${BP}.c;beginline=4;endline=30;md5=c55daba5a5a869a123c3565de07d15a6"
-
-SRC_URI = "http://nuttcp.net/${BPN}/beta/${BP}.c"
-SRC_URI[md5sum] = "dfbff3c38fb0cbdc474ca6d13539d425"
-SRC_URI[sha256sum] = "d68e291a72375d76f301d54aa945727c95e78090aa6783a4844764e632e98a4a"
-
-S = "${WORKDIR}"
-
-do_compile () {
- ${CC} ${CFLAGS} ${LDFLAGS} -o nuttcp nuttcp-${PV}.c
-}
-
-do_install () {
- install -d ${D}${bindir}
- install -m 0755 nuttcp ${D}${bindir}
-}
diff --git a/meta-openembedded/meta-networking/recipes-support/nuttcp/nuttcp_8.2.2.bb b/meta-openembedded/meta-networking/recipes-support/nuttcp/nuttcp_8.2.2.bb
new file mode 100644
index 0000000..2fd5631
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-support/nuttcp/nuttcp_8.2.2.bb
@@ -0,0 +1,28 @@
+SUMMARY = "network performance measurement tool"
+DESCRIPTION = "nuttcp is a network performance measurement tool intended for use by network \
+and system managers. Its most basic usage is to determine the raw TCP (or UDP) \
+network layer throughput by transferring memory buffers from a source system \
+across an interconnecting network to a destination system, either transferring \
+data for a specified time interval, or alternatively transferring a specified \
+number of bytes."
+HOMEPAGE = "http://www.nuttcp.net/Welcome%20Page.html"
+LICENSE = "GPL-2.0"
+SECTION = "net"
+LIC_FILES_CHKSUM = "file://${BP}.c;beginline=4;endline=30;md5=496a7c0bb83c07ff528d226bf85e05c5"
+
+UPSTREAM_CHECK_URI = "https://www.nuttcp.net/nuttcp/beta/"
+
+SRC_URI = "http://nuttcp.net/${BPN}/beta/${BP}.c"
+SRC_URI[md5sum] = "d3c92c4d2f261221193c3726c1b9a42f"
+SRC_URI[sha256sum] = "8c5595bcd27c2fd66831be74c390df078cfb1870aa427f2511ac2586d236c8a1"
+
+S = "${WORKDIR}"
+
+do_compile () {
+ ${CC} ${CFLAGS} ${LDFLAGS} -o nuttcp nuttcp-${PV}.c
+}
+
+do_install () {
+ install -d ${D}${bindir}
+ install -m 0755 nuttcp ${D}${bindir}
+}
diff --git a/meta-openembedded/meta-networking/recipes-support/open-isns/open-isns/0001-util.h-endian.h-is-available-on-musl-on-linux.patch b/meta-openembedded/meta-networking/recipes-support/open-isns/open-isns/0001-util.h-endian.h-is-available-on-musl-on-linux.patch
deleted file mode 100644
index fbdc4e9..0000000
--- a/meta-openembedded/meta-networking/recipes-support/open-isns/open-isns/0001-util.h-endian.h-is-available-on-musl-on-linux.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-From e0d86318227a23f00cf0f6639a6685bb9f5771a1 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Tue, 12 Dec 2017 09:42:19 -0800
-Subject: [PATCH] util.h: endian.h is available on musl on linux
-
-just checking for glibc alone is not enough since
-it excludes musl, therefore check for platform
-being linux as well
-
-Fixes build issues
-
-include/libisns/util.h:114:12: fatal error: sys/endian.h: No such file or directory
- # include <sys/endian.h>
- ^~~~~~~~~~~~~~
-
-Upstream-Status: Submitted
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- include/libisns/util.h | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/include/libisns/util.h b/include/libisns/util.h
-index 9a2bd13..6cc1a1b 100644
---- a/include/libisns/util.h
-+++ b/include/libisns/util.h
-@@ -100,7 +100,7 @@ enum {
- * There's no htonll yet
- */
- #ifndef htonll
--# ifdef __GLIBC__
-+# if defined(__GLIBC__) || defined(__linux__)
- # include <endian.h>
- # include <byteswap.h>
- # if __BYTE_ORDER == __BIG_ENDIAN
---
-2.15.1
-
diff --git a/meta-openembedded/meta-networking/recipes-support/open-isns/open-isns_0.98.bb b/meta-openembedded/meta-networking/recipes-support/open-isns/open-isns_0.98.bb
deleted file mode 100644
index 5e64f89..0000000
--- a/meta-openembedded/meta-networking/recipes-support/open-isns/open-isns_0.98.bb
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright (C) 2016 Joe MacDonald <joe_macdonald@mentor.com>
-# Released under the MIT license (see COPYING.MIT for the terms)
-
-SUMMARY = "iSNS daemon and utility programs"
-DESCRIPTION = "This is a partial implementation of RFC4171, the Internet \
-Storage Name Service (iSNS). The distribution includes the iSNS server, \
-supporting persisten storage of registrations, isnsadm, a command line \
-utility for managing nodes, and isnsdd, a corresponding discovery daemon."
-HOMEPAGE = "http://github.com/gonzoleeman/open-isns/"
-LICENSE = "GPLv2+ & LGPLv2+"
-LIC_FILES_CHKSUM = "file://COPYING;md5=321bf41f280cf805086dd5a720b37785"
-SECTION = "net"
-
-DEPENDS = "openssl"
-
-SRC_URI = "git://github.com/open-iscsi/open-isns \
- file://0001-util.h-endian.h-is-available-on-musl-on-linux.patch \
- "
-
-SRCREV = "e84374ce7d1f5fc58a4c0fc751e075b2cc752c34"
-
-S = "${WORKDIR}/git"
-
-inherit systemd autotools-brokensep update-rc.d
-
-EXTRA_OECONF = " --prefix=${prefix} --enable-shared"
-EXTRA_OEMAKE += "SYSTEMDDIR=${D}${systemd_unitdir}/system"
-
-do_install_append () {
- oe_runmake INCDIR=${D}${includedir}/libisns/ install_hdrs
- oe_runmake LIBDIR=${D}${libdir} install_lib
-
- install -D -m 755 ${S}/etc/openisns.init ${D}${sysconfdir}/init.d/openisns
- sed -i 's|daemon isnsd|start-stop-daemon --start --quiet --oknodo --exec ${sbindir}/isnsd --|' \
- ${D}${sysconfdir}/init.d/openisns
-}
-
-FILES_${PN} += "${libdir} ${systemd_unitdir}"
-
-INITSCRIPT_NAME = "openisns"
diff --git a/meta-openembedded/meta-networking/recipes-support/open-isns/open-isns_0.99.bb b/meta-openembedded/meta-networking/recipes-support/open-isns/open-isns_0.99.bb
new file mode 100644
index 0000000..a03b92f
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-support/open-isns/open-isns_0.99.bb
@@ -0,0 +1,38 @@
+# Copyright (C) 2016 Joe MacDonald <joe_macdonald@mentor.com>
+# Released under the MIT license (see COPYING.MIT for the terms)
+
+SUMMARY = "iSNS daemon and utility programs"
+DESCRIPTION = "This is a partial implementation of RFC4171, the Internet \
+Storage Name Service (iSNS). The distribution includes the iSNS server, \
+supporting persisten storage of registrations, isnsadm, a command line \
+utility for managing nodes, and isnsdd, a corresponding discovery daemon."
+HOMEPAGE = "http://github.com/gonzoleeman/open-isns/"
+LICENSE = "GPLv2+ & LGPLv2+"
+LIC_FILES_CHKSUM = "file://COPYING;md5=321bf41f280cf805086dd5a720b37785"
+SECTION = "net"
+
+DEPENDS = "openssl"
+
+SRC_URI = "git://github.com/open-iscsi/open-isns"
+
+SRCREV = "cfdbcff867ee580a71bc9c18c3a38a6057df0150"
+
+S = "${WORKDIR}/git"
+
+inherit systemd autotools-brokensep update-rc.d
+
+EXTRA_OECONF = " --prefix=${prefix} --enable-shared"
+EXTRA_OEMAKE += "SYSTEMDDIR=${D}${systemd_unitdir}/system"
+
+do_install_append () {
+ oe_runmake INCDIR=${D}${includedir}/libisns/ install_hdrs
+ oe_runmake LIBDIR=${D}${libdir} install_lib
+
+ install -D -m 755 ${S}/etc/openisns.init ${D}${sysconfdir}/init.d/openisns
+ sed -i 's|daemon isnsd|start-stop-daemon --start --quiet --oknodo --exec ${sbindir}/isnsd --|' \
+ ${D}${sysconfdir}/init.d/openisns
+}
+
+FILES_${PN} += "${libdir} ${systemd_unitdir}"
+
+INITSCRIPT_NAME = "openisns"
diff --git a/meta-openembedded/meta-networking/recipes-support/openvpn/openvpn_2.4.6.bb b/meta-openembedded/meta-networking/recipes-support/openvpn/openvpn_2.4.6.bb
deleted file mode 100644
index 84fd467..0000000
--- a/meta-openembedded/meta-networking/recipes-support/openvpn/openvpn_2.4.6.bb
+++ /dev/null
@@ -1,71 +0,0 @@
-SUMMARY = "A full-featured SSL VPN solution via tun device."
-HOMEPAGE = "http://openvpn.sourceforge.net"
-SECTION = "net"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=7aee596ed2deefe3e8a861e24292abba"
-DEPENDS = "lzo openssl iproute2 ${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'libpam', '', d)}"
-
-inherit autotools systemd update-rc.d
-
-SRC_URI = "http://swupdate.openvpn.org/community/releases/${BP}.tar.gz \
- file://openvpn \
- file://openvpn@.service \
- file://openvpn-volatile.conf"
-
-SRC_URI[md5sum] = "971d57e29b78b4b902eb2f4aae2f05a7"
-SRC_URI[sha256sum] = "738dbd37fcf8eb9382c53628db22258c41ba9550165519d9200e8bebaef4cbe2"
-
-SYSTEMD_SERVICE_${PN} += "openvpn@loopback-server.service openvpn@loopback-client.service"
-SYSTEMD_AUTO_ENABLE = "disable"
-
-INITSCRIPT_PACKAGES = "${PN}"
-INITSCRIPT_NAME_${PN} = "openvpn"
-INITSCRIPT_PARAMS_${PN} = "start 10 2 3 4 5 . stop 70 0 1 6 ."
-
-CFLAGS += "-fno-inline"
-
-# I want openvpn to be able to read password from file (hrw)
-EXTRA_OECONF += "--enable-iproute2"
-EXTRA_OECONF += "${@bb.utils.contains('DISTRO_FEATURES', 'pam', '', '--disable-plugin-auth-pam', d)}"
-
-# Explicitly specify IPROUTE to bypass the configure-time check for /sbin/ip on the host.
-EXTRA_OECONF += "IPROUTE=${base_sbindir}/ip"
-
-do_install_append() {
- install -d ${D}/${sysconfdir}/init.d
- install -m 755 ${WORKDIR}/openvpn ${D}/${sysconfdir}/init.d
-
- install -d ${D}/${sysconfdir}/openvpn
- install -d ${D}/${sysconfdir}/openvpn/sample
- install -m 755 ${S}/sample/sample-config-files/loopback-server ${D}${sysconfdir}/openvpn/sample/loopback-server.conf
- install -m 755 ${S}/sample/sample-config-files/loopback-client ${D}${sysconfdir}/openvpn/sample/loopback-client.conf
- install -dm 755 ${D}${sysconfdir}/openvpn/sample/sample-keys
- install -m 644 ${S}/sample/sample-keys/* ${D}${sysconfdir}/openvpn/sample/sample-keys
-
- if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then
- install -d ${D}/${systemd_unitdir}/system
- install -m 644 ${WORKDIR}/openvpn@.service ${D}/${systemd_unitdir}/system
- install -m 644 ${WORKDIR}/openvpn@.service ${D}/${systemd_unitdir}/system/openvpn@loopback-server.service
- install -m 644 ${WORKDIR}/openvpn@.service ${D}/${systemd_unitdir}/system/openvpn@loopback-client.service
-
- install -d ${D}/${localstatedir}
- install -d ${D}/${localstatedir}/lib
- install -d -m 710 ${D}/${localstatedir}/lib/openvpn
-
- install -d ${D}${sysconfdir}/tmpfiles.d
- install -m 0644 ${WORKDIR}/openvpn-volatile.conf ${D}${sysconfdir}/tmpfiles.d/openvpn.conf
- sed -i -e 's#@LOCALSTATEDIR@#${localstatedir}#g' ${D}${sysconfdir}/tmpfiles.d/openvpn.conf
- fi
-}
-
-PACKAGES =+ " ${PN}-sample "
-
-RRECOMMENDS_${PN} = "kernel-module-tun"
-
-FILES_${PN}-dbg += "${libdir}/openvpn/plugins/.debug"
-FILES_${PN} += "${systemd_unitdir}/system/openvpn@.service \
- ${sysconfdir}/tmpfiles.d \
- "
-FILES_${PN}-sample += "${systemd_unitdir}/system/openvpn@loopback-server.service \
- ${systemd_unitdir}/system/openvpn@loopback-client.service \
- ${sysconfdir}/openvpn/sample/"
diff --git a/meta-openembedded/meta-networking/recipes-support/openvpn/openvpn_2.4.7.bb b/meta-openembedded/meta-networking/recipes-support/openvpn/openvpn_2.4.7.bb
new file mode 100644
index 0000000..2a4eb25
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-support/openvpn/openvpn_2.4.7.bb
@@ -0,0 +1,71 @@
+SUMMARY = "A full-featured SSL VPN solution via tun device."
+HOMEPAGE = "https://openvpn.net/"
+SECTION = "net"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=7aee596ed2deefe3e8a861e24292abba"
+DEPENDS = "lzo openssl iproute2 ${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'libpam', '', d)}"
+
+inherit autotools systemd update-rc.d
+
+SRC_URI = "http://swupdate.openvpn.org/community/releases/${BP}.tar.gz \
+ file://openvpn \
+ file://openvpn@.service \
+ file://openvpn-volatile.conf"
+
+SRC_URI[md5sum] = "9d67cabc9b0441062ebd4e12bb7dfedb"
+SRC_URI[sha256sum] = "73dce542ed3d6f0553674f49025dfbdff18348eb8a25e6215135d686b165423c"
+
+SYSTEMD_SERVICE_${PN} += "openvpn@loopback-server.service openvpn@loopback-client.service"
+SYSTEMD_AUTO_ENABLE = "disable"
+
+INITSCRIPT_PACKAGES = "${PN}"
+INITSCRIPT_NAME_${PN} = "openvpn"
+INITSCRIPT_PARAMS_${PN} = "start 10 2 3 4 5 . stop 70 0 1 6 ."
+
+CFLAGS += "-fno-inline"
+
+# I want openvpn to be able to read password from file (hrw)
+EXTRA_OECONF += "--enable-iproute2"
+EXTRA_OECONF += "${@bb.utils.contains('DISTRO_FEATURES', 'pam', '', '--disable-plugin-auth-pam', d)}"
+
+# Explicitly specify IPROUTE to bypass the configure-time check for /sbin/ip on the host.
+EXTRA_OECONF += "IPROUTE=${base_sbindir}/ip"
+
+do_install_append() {
+ install -d ${D}/${sysconfdir}/init.d
+ install -m 755 ${WORKDIR}/openvpn ${D}/${sysconfdir}/init.d
+
+ install -d ${D}/${sysconfdir}/openvpn
+ install -d ${D}/${sysconfdir}/openvpn/sample
+ install -m 755 ${S}/sample/sample-config-files/loopback-server ${D}${sysconfdir}/openvpn/sample/loopback-server.conf
+ install -m 755 ${S}/sample/sample-config-files/loopback-client ${D}${sysconfdir}/openvpn/sample/loopback-client.conf
+ install -dm 755 ${D}${sysconfdir}/openvpn/sample/sample-keys
+ install -m 644 ${S}/sample/sample-keys/* ${D}${sysconfdir}/openvpn/sample/sample-keys
+
+ if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then
+ install -d ${D}/${systemd_unitdir}/system
+ install -m 644 ${WORKDIR}/openvpn@.service ${D}/${systemd_unitdir}/system
+ install -m 644 ${WORKDIR}/openvpn@.service ${D}/${systemd_unitdir}/system/openvpn@loopback-server.service
+ install -m 644 ${WORKDIR}/openvpn@.service ${D}/${systemd_unitdir}/system/openvpn@loopback-client.service
+
+ install -d ${D}/${localstatedir}
+ install -d ${D}/${localstatedir}/lib
+ install -d -m 710 ${D}/${localstatedir}/lib/openvpn
+
+ install -d ${D}${sysconfdir}/tmpfiles.d
+ install -m 0644 ${WORKDIR}/openvpn-volatile.conf ${D}${sysconfdir}/tmpfiles.d/openvpn.conf
+ sed -i -e 's#@LOCALSTATEDIR@#${localstatedir}#g' ${D}${sysconfdir}/tmpfiles.d/openvpn.conf
+ fi
+}
+
+PACKAGES =+ " ${PN}-sample "
+
+RRECOMMENDS_${PN} = "kernel-module-tun"
+
+FILES_${PN}-dbg += "${libdir}/openvpn/plugins/.debug"
+FILES_${PN} += "${systemd_unitdir}/system/openvpn@.service \
+ ${sysconfdir}/tmpfiles.d \
+ "
+FILES_${PN}-sample += "${systemd_unitdir}/system/openvpn@loopback-server.service \
+ ${systemd_unitdir}/system/openvpn@loopback-client.service \
+ ${sysconfdir}/openvpn/sample/"
diff --git a/meta-openembedded/meta-networking/recipes-support/phytool/phytool.bb b/meta-openembedded/meta-networking/recipes-support/phytool/phytool.bb
index 4ed3ed1..29499d6 100644
--- a/meta-openembedded/meta-networking/recipes-support/phytool/phytool.bb
+++ b/meta-openembedded/meta-networking/recipes-support/phytool/phytool.bb
@@ -2,8 +2,8 @@
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://LICENSE;md5=39bba7d2cf0ba1036f2a6e2be52fe3f0"
-PV = "1.0.1+git${SRCPV}"
-SRCREV = "3149bfdb4f513e2f0da0a7d0bc5d0873578696f2"
+PV = "2+git${SRCPV}"
+SRCREV = "8882328c08ba2efb13c049812098f1d0cb8adf0c"
SRC_URI = "git://github.com/wkz/phytool.git"
S = "${WORKDIR}/git"
diff --git a/meta-openembedded/meta-networking/recipes-support/smcroute/smcroute_2.0.0.bb b/meta-openembedded/meta-networking/recipes-support/smcroute/smcroute_2.0.0.bb
deleted file mode 100644
index 9b6fc2f..0000000
--- a/meta-openembedded/meta-networking/recipes-support/smcroute/smcroute_2.0.0.bb
+++ /dev/null
@@ -1,13 +0,0 @@
-SUMMARY = "Static Multicast Routing Daemon"
-DESCRIPTION = "SMCRoute is a daemon and command line tool to manipulate the multicast routing table in the UNIX kernel."
-HOMEPAGE = "http://troglobit.github.io/smcroute.html"
-SECTION = "net"
-LICENSE = "GPLv2+"
-LIC_FILES_CHKSUM = "file://COPYING;md5=4325afd396febcb659c36b49533135d4"
-
-SRCREV = "d6280e64b27d5a4bd7f37dac36b455f4ae5f9ab3"
-SRC_URI = "git://github.com/troglobit/smcroute.git;branch=master;protocol=git"
-
-S = "${WORKDIR}/git"
-
-inherit autotools
diff --git a/meta-openembedded/meta-networking/recipes-support/smcroute/smcroute_2.4.4.bb b/meta-openembedded/meta-networking/recipes-support/smcroute/smcroute_2.4.4.bb
new file mode 100644
index 0000000..0b63f79
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-support/smcroute/smcroute_2.4.4.bb
@@ -0,0 +1,13 @@
+SUMMARY = "Static Multicast Routing Daemon"
+DESCRIPTION = "SMCRoute is a daemon and command line tool to manipulate the multicast routing table in the UNIX kernel."
+HOMEPAGE = "http://troglobit.github.io/smcroute.html"
+SECTION = "net"
+LICENSE = "GPLv2+"
+LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
+
+SRCREV = "a8e5847e5f7e411be424f9b52a6cdf9d2ed4aeb5"
+SRC_URI = "git://github.com/troglobit/smcroute.git;branch=master;protocol=git"
+
+S = "${WORKDIR}/git"
+
+inherit autotools
diff --git a/meta-openembedded/meta-networking/recipes-support/spice/usbredir_0.8.0.bb b/meta-openembedded/meta-networking/recipes-support/spice/usbredir_0.8.0.bb
new file mode 100644
index 0000000..9ee43be
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-support/spice/usbredir_0.8.0.bb
@@ -0,0 +1,20 @@
+SUMMARY = "usbredir libraries and utilities"
+
+LICENSE = "GPLv2+ & LGPLv2.1+"
+LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
+ file://COPYING.LIB;md5=4b54a1fd55a448865a0b32d41598759d \
+"
+
+DEPENDS = "libusb1"
+
+SRCREV = "07b98b8e71f620dfdd57e92ddef6b677b259a092"
+
+SRC_URI = " \
+ git://anongit.freedesktop.org/spice/usbredir \
+"
+
+S = "${WORKDIR}/git"
+
+inherit autotools pkgconfig
+
+BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-openembedded/meta-networking/recipes-support/spice/usbredir_git.bb b/meta-openembedded/meta-networking/recipes-support/spice/usbredir_git.bb
deleted file mode 100644
index 3fea752..0000000
--- a/meta-openembedded/meta-networking/recipes-support/spice/usbredir_git.bb
+++ /dev/null
@@ -1,21 +0,0 @@
-SUMMARY = "usbredir libraries and utilities"
-
-LICENSE = "GPLv2+ & LGPLv2.1+"
-LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
- file://COPYING.LIB;md5=4b54a1fd55a448865a0b32d41598759d \
-"
-
-DEPENDS = "libusb1"
-
-SRCREV = "39aa3c69f61bba28856a3eef3fe4ab37a3968e88"
-PV = "0.7.1+git${SRCPV}"
-
-SRC_URI = " \
- git://anongit.freedesktop.org/spice/usbredir \
-"
-
-S = "${WORKDIR}/git"
-
-inherit autotools pkgconfig
-
-BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-openembedded/meta-networking/recipes-support/stunnel/stunnel_5.49.bb b/meta-openembedded/meta-networking/recipes-support/stunnel/stunnel_5.49.bb
deleted file mode 100644
index eca77cf..0000000
--- a/meta-openembedded/meta-networking/recipes-support/stunnel/stunnel_5.49.bb
+++ /dev/null
@@ -1,37 +0,0 @@
-SUMMARY = "Program for providing universal TLS/SSL tunneling service"
-DESCRIPTION = "SSL encryption wrapper between remote client and local (inetd-startable) or remote server."
-HOMEPAGE = "https://www.stunnel.org/"
-SECTION = "net"
-# Note: Linking stunnel statically or dynamically with other modules is making
-# a combined work based on stunnel. Thus, the terms and conditions of the GNU
-# General Public License cover the whole combination.
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=f6b7fe7379c9c2d7db6c80f7bd41e06d"
-
-DEPENDS = "autoconf-archive libnsl2 openssl"
-
-SRC_URI = "ftp://ftp.stunnel.org/stunnel/archive/5.x/${BP}.tar.gz \
- file://fix-openssl-no-des.patch \
-"
-
-SRC_URI[md5sum] = "0b41240e5585ec7d55ca343feed5530f"
-SRC_URI[sha256sum] = "3d6641213a82175c19f23fde1c3d1c841738385289eb7ca1554f4a58b96d955e"
-
-inherit autotools
-
-PACKAGECONFIG ?= "${@bb.utils.filter('DISTRO_FEATURES', 'ipv6 systemd', d)} libwrap"
-
-PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6,"
-PACKAGECONFIG[libwrap] = "--enable-libwrap,--disable-libwrap,tcp-wrappers"
-PACKAGECONFIG[systemd] = "--enable-systemd,--disable-systemd,systemd"
-
-EXTRA_OECONF += "--with-ssl='${STAGING_EXECPREFIXDIR}' --disable-fips"
-
-# When cross compiling, configure defaults to nobody, but provides no option to change it.
-EXTRA_OEMAKE += "DEFAULT_GROUP='nogroup'"
-
-# stunnel3 is a Perl wrapper to allow use of the legacy stunnel 3.x commandline
-# syntax with stunnel >= 4.05
-PACKAGES =+ "stunnel3"
-FILES_stunnel3 = "${bindir}/stunnel3"
-RDEPENDS_stunnel3 += "${PN} perl"
diff --git a/meta-openembedded/meta-networking/recipes-support/stunnel/stunnel_5.51.bb b/meta-openembedded/meta-networking/recipes-support/stunnel/stunnel_5.51.bb
new file mode 100644
index 0000000..61be9be
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-support/stunnel/stunnel_5.51.bb
@@ -0,0 +1,37 @@
+SUMMARY = "Program for providing universal TLS/SSL tunneling service"
+DESCRIPTION = "SSL encryption wrapper between remote client and local (inetd-startable) or remote server."
+HOMEPAGE = "https://www.stunnel.org/"
+SECTION = "net"
+# Note: Linking stunnel statically or dynamically with other modules is making
+# a combined work based on stunnel. Thus, the terms and conditions of the GNU
+# General Public License cover the whole combination.
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=c7acb24399f540ea323acb0366aecdbe"
+
+DEPENDS = "autoconf-archive libnsl2 openssl"
+
+SRC_URI = "ftp://ftp.stunnel.org/stunnel/archive/5.x/${BP}.tar.gz \
+ file://fix-openssl-no-des.patch \
+"
+
+SRC_URI[md5sum] = "57040c64f4b95e35a756e53e1c496728"
+SRC_URI[sha256sum] = "77437cdd1aef1a621824bb3607e966534642fe90c69f4d2279a9da9fa36c3253"
+
+inherit autotools
+
+PACKAGECONFIG ?= "${@bb.utils.filter('DISTRO_FEATURES', 'ipv6 systemd', d)} libwrap"
+
+PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6,"
+PACKAGECONFIG[libwrap] = "--enable-libwrap,--disable-libwrap,tcp-wrappers"
+PACKAGECONFIG[systemd] = "--enable-systemd,--disable-systemd,systemd"
+
+EXTRA_OECONF += "--with-ssl='${STAGING_EXECPREFIXDIR}' --disable-fips"
+
+# When cross compiling, configure defaults to nobody, but provides no option to change it.
+EXTRA_OEMAKE += "DEFAULT_GROUP='nogroup'"
+
+# stunnel3 is a Perl wrapper to allow use of the legacy stunnel 3.x commandline
+# syntax with stunnel >= 4.05
+PACKAGES =+ "stunnel3"
+FILES_stunnel3 = "${bindir}/stunnel3"
+RDEPENDS_stunnel3 += "${PN} perl"
diff --git a/meta-openembedded/meta-networking/recipes-support/traceroute/traceroute_2.1.0.bb b/meta-openembedded/meta-networking/recipes-support/traceroute/traceroute_2.1.0.bb
index 8f17d3f..19bbf03 100644
--- a/meta-openembedded/meta-networking/recipes-support/traceroute/traceroute_2.1.0.bb
+++ b/meta-openembedded/meta-networking/recipes-support/traceroute/traceroute_2.1.0.bb
@@ -13,6 +13,8 @@
inherit update-alternatives
+UPSTREAM_CHECK_URI = "https://sourceforge.net/projects/traceroute/files/traceroute/"
+
SRC_URI = "${SOURCEFORGE_MIRROR}/traceroute/traceroute/${BP}/${BP}.tar.gz \
file://filter-out-the-patches-from-subdirs.patch \
"
diff --git a/meta-openembedded/meta-networking/recipes-support/uftp/uftp_4.9.8.bb b/meta-openembedded/meta-networking/recipes-support/uftp/uftp_4.9.8.bb
deleted file mode 100644
index 0bbdd6b..0000000
--- a/meta-openembedded/meta-networking/recipes-support/uftp/uftp_4.9.8.bb
+++ /dev/null
@@ -1,16 +0,0 @@
-DESCRIPTION = "Encrypted UDP based FTP with multicast"
-HOMEPAGE = "https://sourceforge.net/projects/uftp-multicast"
-SECTION = "libs/network"
-
-LICENSE = "GPLv3"
-LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=d32239bcb673463ab874e80d47fae504"
-
-SRC_URI = "${SOURCEFORGE_MIRROR}/uftp-multicast/source-tar/uftp-${PV}.tar.gz"
-SRC_URI[md5sum] = "f7a5affd3000b5aafbb13df49719b6c0"
-SRC_URI[sha256sum] = "e98c6318e497124d777ca71eae752d213207c35de9f782c8bcaaf82ece20e599"
-
-DEPENDS = "openssl"
-
-do_install () {
- oe_runmake install DESTDIR=${D}
-}
diff --git a/meta-openembedded/meta-networking/recipes-support/uftp/uftp_4.9.9.bb b/meta-openembedded/meta-networking/recipes-support/uftp/uftp_4.9.9.bb
new file mode 100644
index 0000000..a64d081
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-support/uftp/uftp_4.9.9.bb
@@ -0,0 +1,17 @@
+DESCRIPTION = "Encrypted UDP based FTP with multicast"
+HOMEPAGE = "https://sourceforge.net/projects/uftp-multicast"
+SECTION = "libs/network"
+LICENSE = "GPLv3"
+LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=d32239bcb673463ab874e80d47fae504"
+
+UPSTREAM_CHECK_URI = "https://sourceforge.net/projects/uftp-multicast/files/source-tar/"
+
+SRC_URI = "${SOURCEFORGE_MIRROR}/uftp-multicast/source-tar/uftp-${PV}.tar.gz"
+SRC_URI[md5sum] = "154e2c82a33fd4999040f8836e2dca2c"
+SRC_URI[sha256sum] = "c04bc75a88fc3d57504269f260be4d0b1bc440508b5a5ca587df6c16b771aa48"
+
+DEPENDS = "openssl"
+
+do_install () {
+ oe_runmake install DESTDIR=${D}
+}
diff --git a/meta-openembedded/meta-networking/recipes-support/wireshark/wireshark_3.0.0.bb b/meta-openembedded/meta-networking/recipes-support/wireshark/wireshark_3.0.0.bb
deleted file mode 100644
index dc55e3d..0000000
--- a/meta-openembedded/meta-networking/recipes-support/wireshark/wireshark_3.0.0.bb
+++ /dev/null
@@ -1,81 +0,0 @@
-DESCRIPTION = "wireshark - a popular network protocol analyzer"
-HOMEPAGE = "http://www.wireshark.org"
-SECTION = "net"
-LICENSE = "GPL-2.0"
-LIC_FILES_CHKSUM = "file://COPYING;md5=6e271234ba1a13c6e512e76b94ac2f77"
-
-DEPENDS = "pcre expat glib-2.0 glib-2.0-native libgcrypt libgpg-error libxml2 bison-native"
-
-DEPENDS_append_class-target = " wireshark-native chrpath-replacement-native "
-
-SRC_URI = "https://1.eu.dl.wireshark.org/src/wireshark-${PV}.tar.xz"
-
-UPSTREAM_CHECK_URI = "https://1.as.dl.wireshark.org/src"
-
-SRC_URI[md5sum] = "258d62ac7434d126dc497303c8f7961b"
-SRC_URI[sha256sum] = "bc4f30f5b2e94f3a696fef9de44673cdf402db90aac5299966da647f708f009e"
-
-PE = "1"
-
-inherit cmake pkgconfig python3native perlnative upstream-version-is-even
-
-ARM_INSTRUCTION_SET = "arm"
-
-PACKAGECONFIG ?= "libpcap gnutls libnl libcap sbc"
-
-PACKAGECONFIG_class-native = "libpcap gnutls ssl libssh"
-
-PACKAGECONFIG[libcap] = "-DENABLE_CAP=ON,-DENABLE_CAP=OFF -DENABLE_PCAP_NG_DEFAULT=ON, libcap"
-PACKAGECONFIG[libpcap] = "-DENABLE_PCAP=ON,-DENABLE_PCAP=OFF -DENABLE_PCAP_NG_DEFAULT=ON , libpcap"
-PACKAGECONFIG[libsmi] = "-DENABLE_SMI=ON,-DENABLE_SMI=OFF,libsmi"
-PACKAGECONFIG[libnl] = ",,libnl"
-PACKAGECONFIG[portaudio] = "-DENABLE_PORTAUDIO=ON,-DENABLE_PORTAUDIO=OFF, portaudio-v19"
-PACKAGECONFIG[gnutls] = "-DENABLE_GNUTLS=ON,-DENABLE_GNUTLS=OFF, gnutls"
-PACKAGECONFIG[ssl] = ",,openssl"
-PACKAGECONFIG[krb5] = "-DENABLE_KRB5=ON,-DENABLE_KRB5=OFF, krb5"
-PACKAGECONFIG[lua] = "-DENABLE_LUA=ON,-DENABLE_LUA=OFF, lua"
-PACKAGECONFIG[zlib] = "-DENABLE_ZLIB=ON,-DENABLE_ZLIB=OFF, zlib"
-PACKAGECONFIG[geoip] = ",, geoip"
-PACKAGECONFIG[plugins] = "-DENABLE_PLUGINS=ON,-DENABLE_PLUGINS=OFF"
-PACKAGECONFIG[sbc] = "-DENABLE_SBC=ON,-DENABLE_SBC=OFF, sbc"
-PACKAGECONFIG[libssh] = ",,libssh2"
-PACKAGECONFIG[lz4] = "-DENABLE_LZ4=ON,-DENABLE_LZ4=OFF, lz4"
-
-# these next two options require addional layers
-PACKAGECONFIG[c-ares] = "-DENABLE_CARES=ON,-DENABLE_CARES=OFF, c-ares"
-PACKAGECONFIG[qt5] = "-DENABLE_QT5=ON -DBUILD_wireshark=ON, -DENABLE_QT5=OFF -DBUILD_wireshark=OFF, qtbase"
-
-EXTRA_OECMAKE += "-DENABLE_NETLINK=ON \
- -DBUILD_mmdbresolve=OFF \
- -DBUILD_randpktdump=OFF \
- -DBUILD_androiddump=OFF \
- -DBUILD_dcerpcidl2wrs=OFF \
- -DM_INCLUDE_DIR=${includedir} \
- -DM_LIBRARY=${libdir} \
- "
-CFLAGS_append = " -lm"
-
-do_install_append_class-native() {
- install -d ${D}${bindir}
- for f in lemon
- do
- install -m 0755 ${B}/run/$f ${D}${bindir}
- done
-}
-
-do_install_append_class-target() {
- for f in `find ${D}${libdir} ${D}${bindir} -type f -executable`
- do
- chrpath --delete $f
- done
-}
-
-PACKAGE_BEFORE_PN += "tshark"
-
-FILES_tshark = "${bindir}/tshark ${mandir}/man1/tshark.*"
-
-FILES_${PN} += "${datadir}*"
-
-RDEPENDS_tshark = "wireshark"
-
-BBCLASSEXTEND = "native"
diff --git a/meta-openembedded/meta-networking/recipes-support/wireshark/wireshark_3.0.1.bb b/meta-openembedded/meta-networking/recipes-support/wireshark/wireshark_3.0.1.bb
new file mode 100644
index 0000000..572dc1a
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-support/wireshark/wireshark_3.0.1.bb
@@ -0,0 +1,81 @@
+DESCRIPTION = "wireshark - a popular network protocol analyzer"
+HOMEPAGE = "http://www.wireshark.org"
+SECTION = "net"
+LICENSE = "GPL-2.0"
+LIC_FILES_CHKSUM = "file://COPYING;md5=6e271234ba1a13c6e512e76b94ac2f77"
+
+DEPENDS = "pcre expat glib-2.0 glib-2.0-native libgcrypt libgpg-error libxml2 bison-native"
+
+DEPENDS_append_class-target = " wireshark-native chrpath-replacement-native "
+
+SRC_URI = "https://1.eu.dl.wireshark.org/src/wireshark-${PV}.tar.xz"
+
+UPSTREAM_CHECK_URI = "https://1.as.dl.wireshark.org/src"
+
+SRC_URI[md5sum] = "370a113e1c8ec240c4621cfb5abb0c52"
+SRC_URI[sha256sum] = "86864c3d0f6c2311992a98d8ea7dfd429097fe62dae2e5516e1a2f6bef2ac08c"
+
+PE = "1"
+
+inherit cmake pkgconfig python3native perlnative upstream-version-is-even
+
+ARM_INSTRUCTION_SET = "arm"
+
+PACKAGECONFIG ?= "libpcap gnutls libnl libcap sbc"
+
+PACKAGECONFIG_class-native = "libpcap gnutls ssl libssh"
+
+PACKAGECONFIG[libcap] = "-DENABLE_CAP=ON,-DENABLE_CAP=OFF -DENABLE_PCAP_NG_DEFAULT=ON, libcap"
+PACKAGECONFIG[libpcap] = "-DENABLE_PCAP=ON,-DENABLE_PCAP=OFF -DENABLE_PCAP_NG_DEFAULT=ON , libpcap"
+PACKAGECONFIG[libsmi] = "-DENABLE_SMI=ON,-DENABLE_SMI=OFF,libsmi"
+PACKAGECONFIG[libnl] = ",,libnl"
+PACKAGECONFIG[portaudio] = "-DENABLE_PORTAUDIO=ON,-DENABLE_PORTAUDIO=OFF, portaudio-v19"
+PACKAGECONFIG[gnutls] = "-DENABLE_GNUTLS=ON,-DENABLE_GNUTLS=OFF, gnutls"
+PACKAGECONFIG[ssl] = ",,openssl"
+PACKAGECONFIG[krb5] = "-DENABLE_KRB5=ON,-DENABLE_KRB5=OFF, krb5"
+PACKAGECONFIG[lua] = "-DENABLE_LUA=ON,-DENABLE_LUA=OFF, lua"
+PACKAGECONFIG[zlib] = "-DENABLE_ZLIB=ON,-DENABLE_ZLIB=OFF, zlib"
+PACKAGECONFIG[geoip] = ",, geoip"
+PACKAGECONFIG[plugins] = "-DENABLE_PLUGINS=ON,-DENABLE_PLUGINS=OFF"
+PACKAGECONFIG[sbc] = "-DENABLE_SBC=ON,-DENABLE_SBC=OFF, sbc"
+PACKAGECONFIG[libssh] = ",,libssh2"
+PACKAGECONFIG[lz4] = "-DENABLE_LZ4=ON,-DENABLE_LZ4=OFF, lz4"
+
+# these next two options require addional layers
+PACKAGECONFIG[c-ares] = "-DENABLE_CARES=ON,-DENABLE_CARES=OFF, c-ares"
+PACKAGECONFIG[qt5] = "-DENABLE_QT5=ON -DBUILD_wireshark=ON, -DENABLE_QT5=OFF -DBUILD_wireshark=OFF, qtbase"
+
+EXTRA_OECMAKE += "-DENABLE_NETLINK=ON \
+ -DBUILD_mmdbresolve=OFF \
+ -DBUILD_randpktdump=OFF \
+ -DBUILD_androiddump=OFF \
+ -DBUILD_dcerpcidl2wrs=OFF \
+ -DM_INCLUDE_DIR=${includedir} \
+ -DM_LIBRARY=${libdir} \
+ "
+CFLAGS_append = " -lm"
+
+do_install_append_class-native() {
+ install -d ${D}${bindir}
+ for f in lemon
+ do
+ install -m 0755 ${B}/run/$f ${D}${bindir}
+ done
+}
+
+do_install_append_class-target() {
+ for f in `find ${D}${libdir} ${D}${bindir} -type f -executable`
+ do
+ chrpath --delete $f
+ done
+}
+
+PACKAGE_BEFORE_PN += "tshark"
+
+FILES_tshark = "${bindir}/tshark ${mandir}/man1/tshark.*"
+
+FILES_${PN} += "${datadir}*"
+
+RDEPENDS_tshark = "wireshark"
+
+BBCLASSEXTEND = "native"
diff --git a/meta-openembedded/meta-networking/recipes-support/wpan-tools/wpan-tools_0.9.bb b/meta-openembedded/meta-networking/recipes-support/wpan-tools/wpan-tools_0.9.bb
new file mode 100644
index 0000000..bab75fe
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-support/wpan-tools/wpan-tools_0.9.bb
@@ -0,0 +1,16 @@
+SUMMARY = "Userspace tools for Linux IEEE 802.15.4 stack"
+HOMEPAGE = "http://wpan.cakelab.org/releases/"
+DESCRIPTION = "This is a set of utils to manage the Linux WPAN stack via \
+netlink interface. This requires recent kernel with nl802154 interface."
+
+LICENSE = "ISC"
+LIC_FILES_CHKSUM = "file://COPYING;md5=4cfd939b1d7e6aba9fcefb7f6e2fd45d"
+
+DEPENDS = "libnl"
+
+SRC_URI = "git://github.com/linux-wpan/wpan-tools"
+SRCREV = "a316ca2caa746d60817400e5bf646c2820f09273"
+
+S = "${WORKDIR}/git"
+
+inherit autotools pkgconfig
diff --git a/meta-openembedded/meta-networking/recipes-support/wpan-tools/wpan-tools_git.bb b/meta-openembedded/meta-networking/recipes-support/wpan-tools/wpan-tools_git.bb
deleted file mode 100644
index b6d2f69..0000000
--- a/meta-openembedded/meta-networking/recipes-support/wpan-tools/wpan-tools_git.bb
+++ /dev/null
@@ -1,18 +0,0 @@
-SUMMARY = "Userspace tools for Linux IEEE 802.15.4 stack"
-HOMEPAGE = "http://wpan.cakelab.org/releases/"
-DESCRIPTION = "This is a set of utils to manage the Linux WPAN stack via \
-netlink interface. This requires recent kernel with nl802154 interface."
-
-LICENSE = "ISC"
-LIC_FILES_CHKSUM = "file://COPYING;md5=4cfd939b1d7e6aba9fcefb7f6e2fd45d"
-
-DEPENDS = "libnl"
-
-PV = "0.8+git${SRCPV}"
-SRC_URI = "git://github.com/linux-wpan/wpan-tools \
- "
-SRCREV = "3f473f5136f89773997cb4fff2d8ed647734e2f5"
-
-S = "${WORKDIR}/git"
-
-inherit autotools pkgconfig
diff --git a/meta-openembedded/meta-oe/recipes-benchmark/analyze-suspend/analyze-suspend_5.3.bb b/meta-openembedded/meta-oe/recipes-benchmark/analyze-suspend/analyze-suspend_5.3.bb
new file mode 100644
index 0000000..451671d
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-benchmark/analyze-suspend/analyze-suspend_5.3.bb
@@ -0,0 +1,29 @@
+SUMMARY = "Analyze Suspend"
+DESCRIPTION = "analyze-suspend is a tool for system developers to visualize \
+the activity between suspend and resume, allowing them to identify \
+inefficiencies and bottlenecks."
+HOMEPAGE = "https://01.org/suspendresume"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=12f884d2ae1ff87c09e5b7ccc2c4ca7e"
+
+# Apart from the listed RDEPENDS, analyze-suspend depends on some features
+# provided by the kernel. These options are:
+# - CONFIG_PM_DEBUG=y
+# - CONFIG_PM_SLEEP_DEBUG=y
+# - CONFIG_FTRACE=y
+# - CONFIG_FUNCTION_TRACER=y
+# - CONFIG_FUNCTION_GRAPH_TRACER=y
+
+RDEPENDS_${PN} += "python-core python-datetime python-stringold"
+
+SRC_URI = "git://github.com/01org/suspendresume.git;protocol=https"
+SRCREV = "5be9a16547234cef5aca8bfaccd920490ea1cfa7"
+
+S = "${WORKDIR}/git"
+
+do_install() {
+ install -Dm 0755 analyze_suspend.py ${D}${bindir}/analyze_suspend.py
+ install -Dm 0644 README ${D}${docdir}/analyze-suspend/README
+}
+
+BBCLASSEXTEND = "native"
diff --git a/meta-openembedded/meta-oe/recipes-benchmark/analyze-suspend/analyze-suspend_git.bb b/meta-openembedded/meta-oe/recipes-benchmark/analyze-suspend/analyze-suspend_git.bb
deleted file mode 100644
index 8888b22..0000000
--- a/meta-openembedded/meta-oe/recipes-benchmark/analyze-suspend/analyze-suspend_git.bb
+++ /dev/null
@@ -1,29 +0,0 @@
-SUMMARY = "Analyze Suspend"
-DESCRIPTION = "analyze-suspend is a tool for system developers to visualize \
-the activity between suspend and resume, allowing them to identify \
-inefficiencies and bottlenecks."
-HOMEPAGE = "https://01.org/suspendresume"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=12f884d2ae1ff87c09e5b7ccc2c4ca7e"
-
-# Apart from the listed RDEPENDS, analyze-suspend depends on some features
-# provided by the kernel. These options are:
-# - CONFIG_PM_DEBUG=y
-# - CONFIG_PM_SLEEP_DEBUG=y
-# - CONFIG_FTRACE=y
-# - CONFIG_FUNCTION_TRACER=y
-# - CONFIG_FUNCTION_GRAPH_TRACER=y
-
-RDEPENDS_${PN} += "python-core python-datetime python-stringold"
-
-PV = "3.2+gitr${SRCPV}"
-SRCREV = "c669e002a2e7504f21e277ad248fa81033926391"
-SRC_URI = "git://github.com/01org/suspendresume.git;protocol=https"
-S = "${WORKDIR}/git"
-
-do_install() {
- install -Dm 0755 analyze_suspend.py ${D}${bindir}/analyze_suspend.py
- install -Dm 0644 README ${D}${docdir}/analyze-suspend/README
-}
-
-BBCLASSEXTEND = "native"
diff --git a/meta-openembedded/meta-oe/recipes-benchmark/s-suite/s-suite_git.bb b/meta-openembedded/meta-oe/recipes-benchmark/s-suite/s-suite_git.bb
index 47d21d3..706a55e 100644
--- a/meta-openembedded/meta-oe/recipes-benchmark/s-suite/s-suite_git.bb
+++ b/meta-openembedded/meta-oe/recipes-benchmark/s-suite/s-suite_git.bb
@@ -2,8 +2,8 @@
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=b529aaa6a0c50f15d29f89609b5c22f3"
-SRCREV = "d05006865f68829fa7603bdb92bd51649f5ba1b6"
-PV = "0.0+git${SRCPV}"
+SRCREV = "262227ec9de4be1ab41d9918d32ceb773089f1dd"
+PV = "3.2+git${SRCPV}"
SRC_URI = "git://github.com/Algodev-github/S.git;protocol=https;branch=master"
S = "${WORKDIR}/git"
diff --git a/meta-openembedded/meta-oe/recipes-bsp/efivar/efivar/fix-compile-failure-with-host-gcc-4.6.patch b/meta-openembedded/meta-oe/recipes-bsp/efivar/efivar/fix-compile-failure-with-host-gcc-4.6.patch
deleted file mode 100644
index dbc9a57..0000000
--- a/meta-openembedded/meta-oe/recipes-bsp/efivar/efivar/fix-compile-failure-with-host-gcc-4.6.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-From 3edce6a0019bcb90febc1f654b5b2e2bad5c59bd Mon Sep 17 00:00:00 2001
-From: Hongxu Jia <hongxu.jia@windriver.com>
-Date: Thu, 26 May 2016 21:50:01 -0400
-Subject: [PATCH] fix compile failure with older host gcc (<=4.6)
-
-While host gcc version is 4.6.3 in ubuntu 1204, it
-did not recognize -std=gnu11 and -Wmaybe-uninitialized.
-
-While host gcc version is 4.4.7 in centos6, it
-did not recognize -std=gnu11, -Wmaybe-uninitialized,
-and -flto.
-
-For native build, use -std=gnu99 to replace -std=gnu11,
-and directly remove -Wmaybe-uninitialized and -flto.
-
-Upstream-Status: Pending
-
-Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
-
----
- gcc.specs | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/gcc.specs b/gcc.specs
-index 45d43d1..f1c6944 100644
---- a/gcc.specs
-+++ b/gcc.specs
-@@ -2,13 +2,13 @@
- + -D_GNU_SOURCE
-
- *efivar_cpp_options:
-- -Werror -Wall -std=gnu11 -Wextra
-+ -Werror -Wall -std=gnu99 -Wextra
-
- *cpp_options:
- + %(efivar_cpp_options)
-
- *cc1_options:
--+ %(efivar_cpp_options) -Wmaybe-uninitialized -fno-merge-constants -fvisibility=hidden %{!r:%{!fpie:%{!fPIE:%{!fpic:%{!fPIC:%{!fno-pic:-fPIE}}}}}}
-++ %(efivar_cpp_options) -fno-merge-constants -fvisibility=hidden %{!r:%{!fpie:%{!fPIE:%{!fpic:%{!fPIC:%{!fno-pic:-fPIE}}}}}}
-
- *self_spec:
- + %{!shared:%{!static:%{!r:-pie}}} %{static:-Wl,-no-fatal-warnings -Wl,-static -static -Wl,-z,relro,-z,now}
diff --git a/meta-openembedded/meta-oe/recipes-bsp/efivar/efivar_37.bb b/meta-openembedded/meta-oe/recipes-bsp/efivar/efivar_37.bb
index 8a56e7a..4b458de 100644
--- a/meta-openembedded/meta-oe/recipes-bsp/efivar/efivar_37.bb
+++ b/meta-openembedded/meta-oe/recipes-bsp/efivar/efivar_37.bb
@@ -19,8 +19,6 @@
SRC_URI_append_class-target = " file://0001-efivar-fix-for-cross-compile.patch \
${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-gold', 'file://0004-fix-unknow-option-for-gold-linker.patch', '', d)} \
"
-SRC_URI_append_class-native = " file://fix-compile-failure-with-host-gcc-4.6.patch \
- "
S = "${WORKDIR}/git"
@@ -42,4 +40,4 @@
BBCLASSEXTEND = "native"
-RRECOMMENDS_${PN} = "kernel-module-efivarfs"
+RRECOMMENDS_${PN}_class-target = "kernel-module-efivarfs"
diff --git a/meta-openembedded/meta-oe/recipes-bsp/ledmon/ledmon/0002-include-sys-select.h-and-sys-types.h.patch b/meta-openembedded/meta-oe/recipes-bsp/ledmon/ledmon/0002-include-sys-select.h-and-sys-types.h.patch
new file mode 100644
index 0000000..75bf2b4
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-bsp/ledmon/ledmon/0002-include-sys-select.h-and-sys-types.h.patch
@@ -0,0 +1,43 @@
+From 2ee8796db5019341b774bcb4f7d0944d89e1845b Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Tue, 9 Apr 2019 21:26:55 -0700
+Subject: [PATCH 2/2] include sys/select.h and sys/types.h
+
+sys/select.h is needed to provide fd_set definition
+sys/types.h is needed for ssize_t
+
+Upstream-Status: Pending
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/dellssd.c | 1 +
+ src/utils.h | 1 +
+ 2 files changed, 2 insertions(+)
+
+diff --git a/src/dellssd.c b/src/dellssd.c
+index 7b8d431..e97fe45 100644
+--- a/src/dellssd.c
++++ b/src/dellssd.c
+@@ -27,6 +27,7 @@
+ #include <unistd.h>
+
+ #include <sys/ioctl.h>
++#include <sys/select.h>
+ #include <linux/ipmi.h>
+
+ #if _HAVE_DMALLOC_H
+diff --git a/src/utils.h b/src/utils.h
+index 720447a..c106529 100644
+--- a/src/utils.h
++++ b/src/utils.h
+@@ -21,6 +21,7 @@
+ #define _UTILS_H_INCLUDED_
+
+ #include <getopt.h>
++#include <sys/types.h>
+ #include "config_file.h"
+ #include "stdlib.h"
+ #include "stdint.h"
+--
+2.21.0
+
diff --git a/meta-openembedded/meta-oe/recipes-bsp/ledmon/ledmon_git.bb b/meta-openembedded/meta-oe/recipes-bsp/ledmon/ledmon_git.bb
new file mode 100644
index 0000000..74ae56c
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-bsp/ledmon/ledmon_git.bb
@@ -0,0 +1,34 @@
+SUMMARY = "Intel(R) Enclosure LED Utilities"
+
+DESCRIPTION = "The utilities are designed primarily to be used on storage servers \
+ utilizing MD devices (aka Linux Software RAID) for RAID arrays.\
+"
+HOMEPAGE = "https://github.com/intel/ledmon"
+
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=0636e73ff0215e8d672dc4c32c317bb3 \
+"
+
+DEPENDS = "sg3-utils udev"
+
+inherit systemd
+
+SYSTEMD_SERVICE_${PN} = "ledmon.service"
+
+SRC_URI = "git://github.com/intel/ledmon;branch=master \
+ file://0002-include-sys-select.h-and-sys-types.h.patch \
+ "
+
+SRCREV = "ad1304ca1363d727425a1f23703c523e21feae4f"
+
+COMPATIBLE_HOST = "(i.86|x86_64).*-linux"
+COMPATIBLE_HOST_libc-musl = "null"
+
+S = "${WORKDIR}/git"
+EXTRA_OEMAKE = "CC='${CC}' LDFLAGS='${LDFLAGS}' CFLAGS='${CFLAGS}'"
+
+do_install_append() {
+ install -d ${D}/${systemd_unitdir}/system
+ oe_runmake DESTDIR=${D} install
+ oe_runmake DESTDIR=${D}${systemd_unitdir}/system install-systemd
+}
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd/0001-hostapd-Avoid-key-reinstallation-in-FT-handshake.patch b/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd/0001-hostapd-Avoid-key-reinstallation-in-FT-handshake.patch
deleted file mode 100644
index 5535a3c..0000000
--- a/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd/0001-hostapd-Avoid-key-reinstallation-in-FT-handshake.patch
+++ /dev/null
@@ -1,177 +0,0 @@
-From 044ae35c5694c39a4aca2a33502cc3897e88f79e Mon Sep 17 00:00:00 2001
-From: Mathy Vanhoef <Mathy.Vanhoef@cs.kuleuven.be>
-Date: Fri, 14 Jul 2017 15:15:35 +0200
-Subject: [PATCH 1/7] hostapd: Avoid key reinstallation in FT handshake
-
-Do not reinstall TK to the driver during Reassociation Response frame
-processing if the first attempt of setting the TK succeeded. This avoids
-issues related to clearing the TX/RX PN that could result in reusing
-same PN values for transmitted frames (e.g., due to CCM nonce reuse and
-also hitting replay protection on the receiver) and accepting replayed
-frames on RX side.
-
-This issue was introduced by the commit
-0e84c25434e6a1f283c7b4e62e483729085b78d2 ('FT: Fix PTK configuration in
-authenticator') which allowed wpa_ft_install_ptk() to be called multiple
-times with the same PTK. While the second configuration attempt is
-needed with some drivers, it must be done only if the first attempt
-failed.
-
-Signed-off-by: Mathy Vanhoef <Mathy.Vanhoef@cs.kuleuven.be>
-
-Upstream-Status: Backport
-Signed-off-by: Zheng Ruoqin <zhengrq.fnst@cn.fujitsu.com>
----
- src/ap/ieee802_11.c | 16 +++++++++++++---
- src/ap/wpa_auth.c | 11 +++++++++++
- src/ap/wpa_auth.h | 3 ++-
- src/ap/wpa_auth_ft.c | 10 ++++++++++
- src/ap/wpa_auth_i.h | 1 +
- 5 files changed, 37 insertions(+), 4 deletions(-)
-
-diff --git a/src/ap/ieee802_11.c b/src/ap/ieee802_11.c
-index 4e04169..333035f 100644
---- a/src/ap/ieee802_11.c
-+++ b/src/ap/ieee802_11.c
-@@ -1841,6 +1841,7 @@ static int add_associated_sta(struct hostapd_data *hapd,
- {
- struct ieee80211_ht_capabilities ht_cap;
- struct ieee80211_vht_capabilities vht_cap;
-+ int set = 1;
-
- /*
- * Remove the STA entry to ensure the STA PS state gets cleared and
-@@ -1848,9 +1849,18 @@ static int add_associated_sta(struct hostapd_data *hapd,
- * FT-over-the-DS, where a station re-associates back to the same AP but
- * skips the authentication flow, or if working with a driver that
- * does not support full AP client state.
-+ *
-+ * Skip this if the STA has already completed FT reassociation and the
-+ * TK has been configured since the TX/RX PN must not be reset to 0 for
-+ * the same key.
- */
-- if (!sta->added_unassoc)
-+ if (!sta->added_unassoc &&
-+ (!(sta->flags & WLAN_STA_AUTHORIZED) ||
-+ !wpa_auth_sta_ft_tk_already_set(sta->wpa_sm))) {
- hostapd_drv_sta_remove(hapd, sta->addr);
-+ wpa_auth_sm_event(sta->wpa_sm, WPA_DRV_STA_REMOVED);
-+ set = 0;
-+ }
-
- #ifdef CONFIG_IEEE80211N
- if (sta->flags & WLAN_STA_HT)
-@@ -1873,11 +1883,11 @@ static int add_associated_sta(struct hostapd_data *hapd,
- sta->flags & WLAN_STA_VHT ? &vht_cap : NULL,
- sta->flags | WLAN_STA_ASSOC, sta->qosinfo,
- sta->vht_opmode, sta->p2p_ie ? 1 : 0,
-- sta->added_unassoc)) {
-+ set)) {
- hostapd_logger(hapd, sta->addr,
- HOSTAPD_MODULE_IEEE80211, HOSTAPD_LEVEL_NOTICE,
- "Could not %s STA to kernel driver",
-- sta->added_unassoc ? "set" : "add");
-+ set ? "set" : "add");
-
- if (sta->added_unassoc) {
- hostapd_drv_sta_remove(hapd, sta->addr);
-diff --git a/src/ap/wpa_auth.c b/src/ap/wpa_auth.c
-index 3587086..707971d 100644
---- a/src/ap/wpa_auth.c
-+++ b/src/ap/wpa_auth.c
-@@ -1745,6 +1745,9 @@ int wpa_auth_sm_event(struct wpa_state_machine *sm, enum wpa_event event)
- #else /* CONFIG_IEEE80211R */
- break;
- #endif /* CONFIG_IEEE80211R */
-+ case WPA_DRV_STA_REMOVED:
-+ sm->tk_already_set = FALSE;
-+ return 0;
- }
-
- #ifdef CONFIG_IEEE80211R
-@@ -3250,6 +3253,14 @@ int wpa_auth_sta_wpa_version(struct wpa_state_machine *sm)
- }
-
-
-+int wpa_auth_sta_ft_tk_already_set(struct wpa_state_machine *sm)
-+{
-+ if (!sm || !wpa_key_mgmt_ft(sm->wpa_key_mgmt))
-+ return 0;
-+ return sm->tk_already_set;
-+}
-+
-+
- int wpa_auth_sta_clear_pmksa(struct wpa_state_machine *sm,
- struct rsn_pmksa_cache_entry *entry)
- {
-diff --git a/src/ap/wpa_auth.h b/src/ap/wpa_auth.h
-index 0de8d97..97461b0 100644
---- a/src/ap/wpa_auth.h
-+++ b/src/ap/wpa_auth.h
-@@ -267,7 +267,7 @@ void wpa_receive(struct wpa_authenticator *wpa_auth,
- u8 *data, size_t data_len);
- enum wpa_event {
- WPA_AUTH, WPA_ASSOC, WPA_DISASSOC, WPA_DEAUTH, WPA_REAUTH,
-- WPA_REAUTH_EAPOL, WPA_ASSOC_FT
-+ WPA_REAUTH_EAPOL, WPA_ASSOC_FT, WPA_DRV_STA_REMOVED
- };
- void wpa_remove_ptk(struct wpa_state_machine *sm);
- int wpa_auth_sm_event(struct wpa_state_machine *sm, enum wpa_event event);
-@@ -280,6 +280,7 @@ int wpa_auth_pairwise_set(struct wpa_state_machine *sm);
- int wpa_auth_get_pairwise(struct wpa_state_machine *sm);
- int wpa_auth_sta_key_mgmt(struct wpa_state_machine *sm);
- int wpa_auth_sta_wpa_version(struct wpa_state_machine *sm);
-+int wpa_auth_sta_ft_tk_already_set(struct wpa_state_machine *sm);
- int wpa_auth_sta_clear_pmksa(struct wpa_state_machine *sm,
- struct rsn_pmksa_cache_entry *entry);
- struct rsn_pmksa_cache_entry *
-diff --git a/src/ap/wpa_auth_ft.c b/src/ap/wpa_auth_ft.c
-index 42242a5..e63b99a 100644
---- a/src/ap/wpa_auth_ft.c
-+++ b/src/ap/wpa_auth_ft.c
-@@ -780,6 +780,14 @@ void wpa_ft_install_ptk(struct wpa_state_machine *sm)
- return;
- }
-
-+ if (sm->tk_already_set) {
-+ /* Must avoid TK reconfiguration to prevent clearing of TX/RX
-+ * PN in the driver */
-+ wpa_printf(MSG_DEBUG,
-+ "FT: Do not re-install same PTK to the driver");
-+ return;
-+ }
-+
- /* FIX: add STA entry to kernel/driver here? The set_key will fail
- * most likely without this.. At the moment, STA entry is added only
- * after association has been completed. This function will be called
-@@ -792,6 +800,7 @@ void wpa_ft_install_ptk(struct wpa_state_machine *sm)
-
- /* FIX: MLME-SetProtection.Request(TA, Tx_Rx) */
- sm->pairwise_set = TRUE;
-+ sm->tk_already_set = TRUE;
- }
-
-
-@@ -898,6 +907,7 @@ static int wpa_ft_process_auth_req(struct wpa_state_machine *sm,
-
- sm->pairwise = pairwise;
- sm->PTK_valid = TRUE;
-+ sm->tk_already_set = FALSE;
- wpa_ft_install_ptk(sm);
-
- buflen = 2 + sizeof(struct rsn_mdie) + 2 + sizeof(struct rsn_ftie) +
-diff --git a/src/ap/wpa_auth_i.h b/src/ap/wpa_auth_i.h
-index 72b7eb3..7fd8f05 100644
---- a/src/ap/wpa_auth_i.h
-+++ b/src/ap/wpa_auth_i.h
-@@ -65,6 +65,7 @@ struct wpa_state_machine {
- struct wpa_ptk PTK;
- Boolean PTK_valid;
- Boolean pairwise_set;
-+ Boolean tk_already_set;
- int keycount;
- Boolean Pair;
- struct wpa_key_replay_counter {
---
-1.8.3.1
-
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd/0002-Prevent-reinstallation-of-an-already-in-use-group-ke.patch b/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd/0002-Prevent-reinstallation-of-an-already-in-use-group-ke.patch
deleted file mode 100644
index 4e57bca..0000000
--- a/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd/0002-Prevent-reinstallation-of-an-already-in-use-group-ke.patch
+++ /dev/null
@@ -1,253 +0,0 @@
-From c623cc973de525f7411dffe438e957ba86ef4733 Mon Sep 17 00:00:00 2001
-From: Mathy Vanhoef <Mathy.Vanhoef@cs.kuleuven.be>
-Date: Wed, 12 Jul 2017 16:03:24 +0200
-Subject: [PATCH 2/7] Prevent reinstallation of an already in-use group key
-
-Track the current GTK and IGTK that is in use and when receiving a
-(possibly retransmitted) Group Message 1 or WNM-Sleep Mode Response, do
-not install the given key if it is already in use. This prevents an
-attacker from trying to trick the client into resetting or lowering the
-sequence counter associated to the group key.
-
-Signed-off-by: Mathy Vanhoef <Mathy.Vanhoef@cs.kuleuven.be>
-
-Upstream-Status: Backport
-Signed-off-by: Zheng Ruoqin <zhengrq.fnst@cn.fujitsu.com>
----
- src/common/wpa_common.h | 11 +++++
- src/rsn_supp/wpa.c | 116 ++++++++++++++++++++++++++++++------------------
- src/rsn_supp/wpa_i.h | 4 ++
- 3 files changed, 87 insertions(+), 44 deletions(-)
-
-diff --git a/src/common/wpa_common.h b/src/common/wpa_common.h
-index af1d0f0..d200285 100644
---- a/src/common/wpa_common.h
-+++ b/src/common/wpa_common.h
-@@ -217,6 +217,17 @@ struct wpa_ptk {
- size_t tk_len;
- };
-
-+struct wpa_gtk {
-+ u8 gtk[WPA_GTK_MAX_LEN];
-+ size_t gtk_len;
-+};
-+
-+#ifdef CONFIG_IEEE80211W
-+struct wpa_igtk {
-+ u8 igtk[WPA_IGTK_MAX_LEN];
-+ size_t igtk_len;
-+};
-+#endif /* CONFIG_IEEE80211W */
-
- /* WPA IE version 1
- * 00-50-f2:1 (OUI:OUI type)
-diff --git a/src/rsn_supp/wpa.c b/src/rsn_supp/wpa.c
-index 3c47879..95bd7be 100644
---- a/src/rsn_supp/wpa.c
-+++ b/src/rsn_supp/wpa.c
-@@ -714,6 +714,15 @@ static int wpa_supplicant_install_gtk(struct wpa_sm *sm,
- const u8 *_gtk = gd->gtk;
- u8 gtk_buf[32];
-
-+ /* Detect possible key reinstallation */
-+ if (sm->gtk.gtk_len == (size_t) gd->gtk_len &&
-+ os_memcmp(sm->gtk.gtk, gd->gtk, sm->gtk.gtk_len) == 0) {
-+ wpa_dbg(sm->ctx->msg_ctx, MSG_DEBUG,
-+ "WPA: Not reinstalling already in-use GTK to the driver (keyidx=%d tx=%d len=%d)",
-+ gd->keyidx, gd->tx, gd->gtk_len);
-+ return 0;
-+ }
-+
- wpa_hexdump_key(MSG_DEBUG, "WPA: Group Key", gd->gtk, gd->gtk_len);
- wpa_dbg(sm->ctx->msg_ctx, MSG_DEBUG,
- "WPA: Installing GTK to the driver (keyidx=%d tx=%d len=%d)",
-@@ -748,6 +757,9 @@ static int wpa_supplicant_install_gtk(struct wpa_sm *sm,
- }
- os_memset(gtk_buf, 0, sizeof(gtk_buf));
-
-+ sm->gtk.gtk_len = gd->gtk_len;
-+ os_memcpy(sm->gtk.gtk, gd->gtk, sm->gtk.gtk_len);
-+
- return 0;
- }
-
-@@ -854,6 +866,48 @@ static int wpa_supplicant_pairwise_gtk(struct wpa_sm *sm,
- }
-
-
-+#ifdef CONFIG_IEEE80211W
-+static int wpa_supplicant_install_igtk(struct wpa_sm *sm,
-+ const struct wpa_igtk_kde *igtk)
-+{
-+ size_t len = wpa_cipher_key_len(sm->mgmt_group_cipher);
-+ u16 keyidx = WPA_GET_LE16(igtk->keyid);
-+
-+ /* Detect possible key reinstallation */
-+ if (sm->igtk.igtk_len == len &&
-+ os_memcmp(sm->igtk.igtk, igtk->igtk, sm->igtk.igtk_len) == 0) {
-+ wpa_dbg(sm->ctx->msg_ctx, MSG_DEBUG,
-+ "WPA: Not reinstalling already in-use IGTK to the driver (keyidx=%d)",
-+ keyidx);
-+ return 0;
-+ }
-+
-+ wpa_dbg(sm->ctx->msg_ctx, MSG_DEBUG,
-+ "WPA: IGTK keyid %d pn %02x%02x%02x%02x%02x%02x",
-+ keyidx, MAC2STR(igtk->pn));
-+ wpa_hexdump_key(MSG_DEBUG, "WPA: IGTK", igtk->igtk, len);
-+ if (keyidx > 4095) {
-+ wpa_msg(sm->ctx->msg_ctx, MSG_WARNING,
-+ "WPA: Invalid IGTK KeyID %d", keyidx);
-+ return -1;
-+ }
-+ if (wpa_sm_set_key(sm, wpa_cipher_to_alg(sm->mgmt_group_cipher),
-+ broadcast_ether_addr,
-+ keyidx, 0, igtk->pn, sizeof(igtk->pn),
-+ igtk->igtk, len) < 0) {
-+ wpa_msg(sm->ctx->msg_ctx, MSG_WARNING,
-+ "WPA: Failed to configure IGTK to the driver");
-+ return -1;
-+ }
-+
-+ sm->igtk.igtk_len = len;
-+ os_memcpy(sm->igtk.igtk, igtk->igtk, sm->igtk.igtk_len);
-+
-+ return 0;
-+}
-+#endif /* CONFIG_IEEE80211W */
-+
-+
- static int ieee80211w_set_keys(struct wpa_sm *sm,
- struct wpa_eapol_ie_parse *ie)
- {
-@@ -864,30 +918,14 @@ static int ieee80211w_set_keys(struct wpa_sm *sm,
- if (ie->igtk) {
- size_t len;
- const struct wpa_igtk_kde *igtk;
-- u16 keyidx;
-+
- len = wpa_cipher_key_len(sm->mgmt_group_cipher);
- if (ie->igtk_len != WPA_IGTK_KDE_PREFIX_LEN + len)
- return -1;
-+
- igtk = (const struct wpa_igtk_kde *) ie->igtk;
-- keyidx = WPA_GET_LE16(igtk->keyid);
-- wpa_dbg(sm->ctx->msg_ctx, MSG_DEBUG, "WPA: IGTK keyid %d "
-- "pn %02x%02x%02x%02x%02x%02x",
-- keyidx, MAC2STR(igtk->pn));
-- wpa_hexdump_key(MSG_DEBUG, "WPA: IGTK",
-- igtk->igtk, len);
-- if (keyidx > 4095) {
-- wpa_msg(sm->ctx->msg_ctx, MSG_WARNING,
-- "WPA: Invalid IGTK KeyID %d", keyidx);
-- return -1;
-- }
-- if (wpa_sm_set_key(sm, wpa_cipher_to_alg(sm->mgmt_group_cipher),
-- broadcast_ether_addr,
-- keyidx, 0, igtk->pn, sizeof(igtk->pn),
-- igtk->igtk, len) < 0) {
-- wpa_msg(sm->ctx->msg_ctx, MSG_WARNING,
-- "WPA: Failed to configure IGTK to the driver");
-+ if (wpa_supplicant_install_igtk(sm, igtk) < 0)
- return -1;
-- }
- }
-
- return 0;
-@@ -2307,7 +2345,7 @@ void wpa_sm_deinit(struct wpa_sm *sm)
- */
- void wpa_sm_notify_assoc(struct wpa_sm *sm, const u8 *bssid)
- {
-- int clear_ptk = 1;
-+ int clear_keys = 1;
-
- if (sm == NULL)
- return;
-@@ -2333,11 +2371,11 @@ void wpa_sm_notify_assoc(struct wpa_sm *sm, const u8 *bssid)
- /* Prepare for the next transition */
- wpa_ft_prepare_auth_request(sm, NULL);
-
-- clear_ptk = 0;
-+ clear_keys = 0;
- }
- #endif /* CONFIG_IEEE80211R */
-
-- if (clear_ptk) {
-+ if (clear_keys) {
- /*
- * IEEE 802.11, 8.4.10: Delete PTK SA on (re)association if
- * this is not part of a Fast BSS Transition.
-@@ -2347,6 +2385,10 @@ void wpa_sm_notify_assoc(struct wpa_sm *sm, const u8 *bssid)
- os_memset(&sm->ptk, 0, sizeof(sm->ptk));
- sm->tptk_set = 0;
- os_memset(&sm->tptk, 0, sizeof(sm->tptk));
-+ os_memset(&sm->gtk, 0, sizeof(sm->gtk));
-+#ifdef CONFIG_IEEE80211W
-+ os_memset(&sm->igtk, 0, sizeof(sm->igtk));
-+#endif /* CONFIG_IEEE80211W */
- }
-
- #ifdef CONFIG_TDLS
-@@ -2877,6 +2919,10 @@ void wpa_sm_drop_sa(struct wpa_sm *sm)
- os_memset(sm->pmk, 0, sizeof(sm->pmk));
- os_memset(&sm->ptk, 0, sizeof(sm->ptk));
- os_memset(&sm->tptk, 0, sizeof(sm->tptk));
-+ os_memset(&sm->gtk, 0, sizeof(sm->gtk));
-+#ifdef CONFIG_IEEE80211W
-+ os_memset(&sm->igtk, 0, sizeof(sm->igtk));
-+#endif /* CONFIG_IEEE80211W */
- #ifdef CONFIG_IEEE80211R
- os_memset(sm->xxkey, 0, sizeof(sm->xxkey));
- os_memset(sm->pmk_r0, 0, sizeof(sm->pmk_r0));
-@@ -2949,29 +2995,11 @@ int wpa_wnmsleep_install_key(struct wpa_sm *sm, u8 subelem_id, u8 *buf)
- os_memset(&gd, 0, sizeof(gd));
- #ifdef CONFIG_IEEE80211W
- } else if (subelem_id == WNM_SLEEP_SUBELEM_IGTK) {
-- struct wpa_igtk_kde igd;
-- u16 keyidx;
--
-- os_memset(&igd, 0, sizeof(igd));
-- keylen = wpa_cipher_key_len(sm->mgmt_group_cipher);
-- os_memcpy(igd.keyid, buf + 2, 2);
-- os_memcpy(igd.pn, buf + 4, 6);
--
-- keyidx = WPA_GET_LE16(igd.keyid);
-- os_memcpy(igd.igtk, buf + 10, keylen);
--
-- wpa_hexdump_key(MSG_DEBUG, "Install IGTK (WNM SLEEP)",
-- igd.igtk, keylen);
-- if (wpa_sm_set_key(sm, wpa_cipher_to_alg(sm->mgmt_group_cipher),
-- broadcast_ether_addr,
-- keyidx, 0, igd.pn, sizeof(igd.pn),
-- igd.igtk, keylen) < 0) {
-- wpa_printf(MSG_DEBUG, "Failed to install the IGTK in "
-- "WNM mode");
-- os_memset(&igd, 0, sizeof(igd));
-+ const struct wpa_igtk_kde *igtk;
-+
-+ igtk = (const struct wpa_igtk_kde *) (buf + 2);
-+ if (wpa_supplicant_install_igtk(sm, igtk) < 0)
- return -1;
-- }
-- os_memset(&igd, 0, sizeof(igd));
- #endif /* CONFIG_IEEE80211W */
- } else {
- wpa_printf(MSG_DEBUG, "Unknown element id");
-diff --git a/src/rsn_supp/wpa_i.h b/src/rsn_supp/wpa_i.h
-index f653ba6..afc9e37 100644
---- a/src/rsn_supp/wpa_i.h
-+++ b/src/rsn_supp/wpa_i.h
-@@ -31,6 +31,10 @@ struct wpa_sm {
- u8 rx_replay_counter[WPA_REPLAY_COUNTER_LEN];
- int rx_replay_counter_set;
- u8 request_counter[WPA_REPLAY_COUNTER_LEN];
-+ struct wpa_gtk gtk;
-+#ifdef CONFIG_IEEE80211W
-+ struct wpa_igtk igtk;
-+#endif /* CONFIG_IEEE80211W */
-
- struct eapol_sm *eapol; /* EAPOL state machine from upper level code */
-
---
-1.8.3.1
-
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd/0003-Extend-protection-of-GTK-IGTK-reinstallation-of-WNM-.patch b/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd/0003-Extend-protection-of-GTK-IGTK-reinstallation-of-WNM-.patch
deleted file mode 100644
index e39bbf6..0000000
--- a/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd/0003-Extend-protection-of-GTK-IGTK-reinstallation-of-WNM-.patch
+++ /dev/null
@@ -1,187 +0,0 @@
-From a6caab8060ab60876e233306f5c586451169eba1 Mon Sep 17 00:00:00 2001
-From: Jouni Malinen <j@w1.fi>
-Date: Sun, 1 Oct 2017 12:12:24 +0300
-Subject: [PATCH 3/7] Extend protection of GTK/IGTK reinstallation of WNM-Sleep
- Mode cases
-
-This extends the protection to track last configured GTK/IGTK value
-separately from EAPOL-Key frames and WNM-Sleep Mode frames to cover a
-corner case where these two different mechanisms may get used when the
-GTK/IGTK has changed and tracking a single value is not sufficient to
-detect a possible key reconfiguration.
-
-Signed-off-by: Jouni Malinen <j@w1.fi>
-
-Upstream-Status: Backport
-Signed-off-by: Zheng Ruoqin <zhengrq.fnst@cn.fujitsu.com>
----
- src/rsn_supp/wpa.c | 53 +++++++++++++++++++++++++++++++++++++---------------
- src/rsn_supp/wpa_i.h | 2 ++
- 2 files changed, 40 insertions(+), 15 deletions(-)
-
-diff --git a/src/rsn_supp/wpa.c b/src/rsn_supp/wpa.c
-index 95bd7be..7a2c68d 100644
---- a/src/rsn_supp/wpa.c
-+++ b/src/rsn_supp/wpa.c
-@@ -709,14 +709,17 @@ struct wpa_gtk_data {
-
- static int wpa_supplicant_install_gtk(struct wpa_sm *sm,
- const struct wpa_gtk_data *gd,
-- const u8 *key_rsc)
-+ const u8 *key_rsc, int wnm_sleep)
- {
- const u8 *_gtk = gd->gtk;
- u8 gtk_buf[32];
-
- /* Detect possible key reinstallation */
-- if (sm->gtk.gtk_len == (size_t) gd->gtk_len &&
-- os_memcmp(sm->gtk.gtk, gd->gtk, sm->gtk.gtk_len) == 0) {
-+ if ((sm->gtk.gtk_len == (size_t) gd->gtk_len &&
-+ os_memcmp(sm->gtk.gtk, gd->gtk, sm->gtk.gtk_len) == 0) ||
-+ (sm->gtk_wnm_sleep.gtk_len == (size_t) gd->gtk_len &&
-+ os_memcmp(sm->gtk_wnm_sleep.gtk, gd->gtk,
-+ sm->gtk_wnm_sleep.gtk_len) == 0)) {
- wpa_dbg(sm->ctx->msg_ctx, MSG_DEBUG,
- "WPA: Not reinstalling already in-use GTK to the driver (keyidx=%d tx=%d len=%d)",
- gd->keyidx, gd->tx, gd->gtk_len);
-@@ -757,8 +760,14 @@ static int wpa_supplicant_install_gtk(struct wpa_sm *sm,
- }
- os_memset(gtk_buf, 0, sizeof(gtk_buf));
-
-- sm->gtk.gtk_len = gd->gtk_len;
-- os_memcpy(sm->gtk.gtk, gd->gtk, sm->gtk.gtk_len);
-+ if (wnm_sleep) {
-+ sm->gtk_wnm_sleep.gtk_len = gd->gtk_len;
-+ os_memcpy(sm->gtk_wnm_sleep.gtk, gd->gtk,
-+ sm->gtk_wnm_sleep.gtk_len);
-+ } else {
-+ sm->gtk.gtk_len = gd->gtk_len;
-+ os_memcpy(sm->gtk.gtk, gd->gtk, sm->gtk.gtk_len);
-+ }
-
- return 0;
- }
-@@ -852,7 +861,7 @@ static int wpa_supplicant_pairwise_gtk(struct wpa_sm *sm,
- (wpa_supplicant_check_group_cipher(sm, sm->group_cipher,
- gtk_len, gtk_len,
- &gd.key_rsc_len, &gd.alg) ||
-- wpa_supplicant_install_gtk(sm, &gd, key_rsc))) {
-+ wpa_supplicant_install_gtk(sm, &gd, key_rsc, 0))) {
- wpa_dbg(sm->ctx->msg_ctx, MSG_DEBUG,
- "RSN: Failed to install GTK");
- os_memset(&gd, 0, sizeof(gd));
-@@ -868,14 +877,18 @@ static int wpa_supplicant_pairwise_gtk(struct wpa_sm *sm,
-
- #ifdef CONFIG_IEEE80211W
- static int wpa_supplicant_install_igtk(struct wpa_sm *sm,
-- const struct wpa_igtk_kde *igtk)
-+ const struct wpa_igtk_kde *igtk,
-+ int wnm_sleep)
- {
- size_t len = wpa_cipher_key_len(sm->mgmt_group_cipher);
- u16 keyidx = WPA_GET_LE16(igtk->keyid);
-
- /* Detect possible key reinstallation */
-- if (sm->igtk.igtk_len == len &&
-- os_memcmp(sm->igtk.igtk, igtk->igtk, sm->igtk.igtk_len) == 0) {
-+ if ((sm->igtk.igtk_len == len &&
-+ os_memcmp(sm->igtk.igtk, igtk->igtk, sm->igtk.igtk_len) == 0) ||
-+ (sm->igtk_wnm_sleep.igtk_len == len &&
-+ os_memcmp(sm->igtk_wnm_sleep.igtk, igtk->igtk,
-+ sm->igtk_wnm_sleep.igtk_len) == 0)) {
- wpa_dbg(sm->ctx->msg_ctx, MSG_DEBUG,
- "WPA: Not reinstalling already in-use IGTK to the driver (keyidx=%d)",
- keyidx);
-@@ -900,8 +913,14 @@ static int wpa_supplicant_install_igtk(struct wpa_sm *sm,
- return -1;
- }
-
-- sm->igtk.igtk_len = len;
-- os_memcpy(sm->igtk.igtk, igtk->igtk, sm->igtk.igtk_len);
-+ if (wnm_sleep) {
-+ sm->igtk_wnm_sleep.igtk_len = len;
-+ os_memcpy(sm->igtk_wnm_sleep.igtk, igtk->igtk,
-+ sm->igtk_wnm_sleep.igtk_len);
-+ } else {
-+ sm->igtk.igtk_len = len;
-+ os_memcpy(sm->igtk.igtk, igtk->igtk, sm->igtk.igtk_len);
-+ }
-
- return 0;
- }
-@@ -924,7 +943,7 @@ static int ieee80211w_set_keys(struct wpa_sm *sm,
- return -1;
-
- igtk = (const struct wpa_igtk_kde *) ie->igtk;
-- if (wpa_supplicant_install_igtk(sm, igtk) < 0)
-+ if (wpa_supplicant_install_igtk(sm, igtk, 0) < 0)
- return -1;
- }
-
-@@ -1574,7 +1593,7 @@ static void wpa_supplicant_process_1_of_2(struct wpa_sm *sm,
- if (wpa_supplicant_rsc_relaxation(sm, key->key_rsc))
- key_rsc = null_rsc;
-
-- if (wpa_supplicant_install_gtk(sm, &gd, key_rsc) ||
-+ if (wpa_supplicant_install_gtk(sm, &gd, key_rsc, 0) ||
- wpa_supplicant_send_2_of_2(sm, key, ver, key_info) < 0)
- goto failed;
- os_memset(&gd, 0, sizeof(gd));
-@@ -2386,8 +2405,10 @@ void wpa_sm_notify_assoc(struct wpa_sm *sm, const u8 *bssid)
- sm->tptk_set = 0;
- os_memset(&sm->tptk, 0, sizeof(sm->tptk));
- os_memset(&sm->gtk, 0, sizeof(sm->gtk));
-+ os_memset(&sm->gtk_wnm_sleep, 0, sizeof(sm->gtk_wnm_sleep));
- #ifdef CONFIG_IEEE80211W
- os_memset(&sm->igtk, 0, sizeof(sm->igtk));
-+ os_memset(&sm->igtk_wnm_sleep, 0, sizeof(sm->igtk_wnm_sleep));
- #endif /* CONFIG_IEEE80211W */
- }
-
-@@ -2920,8 +2941,10 @@ void wpa_sm_drop_sa(struct wpa_sm *sm)
- os_memset(&sm->ptk, 0, sizeof(sm->ptk));
- os_memset(&sm->tptk, 0, sizeof(sm->tptk));
- os_memset(&sm->gtk, 0, sizeof(sm->gtk));
-+ os_memset(&sm->gtk_wnm_sleep, 0, sizeof(sm->gtk_wnm_sleep));
- #ifdef CONFIG_IEEE80211W
- os_memset(&sm->igtk, 0, sizeof(sm->igtk));
-+ os_memset(&sm->igtk_wnm_sleep, 0, sizeof(sm->igtk_wnm_sleep));
- #endif /* CONFIG_IEEE80211W */
- #ifdef CONFIG_IEEE80211R
- os_memset(sm->xxkey, 0, sizeof(sm->xxkey));
-@@ -2986,7 +3009,7 @@ int wpa_wnmsleep_install_key(struct wpa_sm *sm, u8 subelem_id, u8 *buf)
-
- wpa_hexdump_key(MSG_DEBUG, "Install GTK (WNM SLEEP)",
- gd.gtk, gd.gtk_len);
-- if (wpa_supplicant_install_gtk(sm, &gd, key_rsc)) {
-+ if (wpa_supplicant_install_gtk(sm, &gd, key_rsc, 1)) {
- os_memset(&gd, 0, sizeof(gd));
- wpa_printf(MSG_DEBUG, "Failed to install the GTK in "
- "WNM mode");
-@@ -2998,7 +3021,7 @@ int wpa_wnmsleep_install_key(struct wpa_sm *sm, u8 subelem_id, u8 *buf)
- const struct wpa_igtk_kde *igtk;
-
- igtk = (const struct wpa_igtk_kde *) (buf + 2);
-- if (wpa_supplicant_install_igtk(sm, igtk) < 0)
-+ if (wpa_supplicant_install_igtk(sm, igtk, 1) < 0)
- return -1;
- #endif /* CONFIG_IEEE80211W */
- } else {
-diff --git a/src/rsn_supp/wpa_i.h b/src/rsn_supp/wpa_i.h
-index afc9e37..9a54631 100644
---- a/src/rsn_supp/wpa_i.h
-+++ b/src/rsn_supp/wpa_i.h
-@@ -32,8 +32,10 @@ struct wpa_sm {
- int rx_replay_counter_set;
- u8 request_counter[WPA_REPLAY_COUNTER_LEN];
- struct wpa_gtk gtk;
-+ struct wpa_gtk gtk_wnm_sleep;
- #ifdef CONFIG_IEEE80211W
- struct wpa_igtk igtk;
-+ struct wpa_igtk igtk_wnm_sleep;
- #endif /* CONFIG_IEEE80211W */
-
- struct eapol_sm *eapol; /* EAPOL state machine from upper level code */
---
-1.8.3.1
-
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd/0004-Prevent-installation-of-an-all-zero-TK.patch b/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd/0004-Prevent-installation-of-an-all-zero-TK.patch
deleted file mode 100644
index 5103625..0000000
--- a/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd/0004-Prevent-installation-of-an-all-zero-TK.patch
+++ /dev/null
@@ -1,82 +0,0 @@
-From abf941647f2dc33b0b59612f525e1b292331cc9f Mon Sep 17 00:00:00 2001
-From: Mathy Vanhoef <Mathy.Vanhoef@cs.kuleuven.be>
-Date: Fri, 29 Sep 2017 04:22:51 +0200
-Subject: [PATCH 4/7] Prevent installation of an all-zero TK
-
-Properly track whether a PTK has already been installed to the driver
-and the TK part cleared from memory. This prevents an attacker from
-trying to trick the client into installing an all-zero TK.
-
-This fixes the earlier fix in commit
-ad00d64e7d8827b3cebd665a0ceb08adabf15e1e ('Fix TK configuration to the
-driver in EAPOL-Key 3/4 retry case') which did not take into account
-possibility of an extra message 1/4 showing up between retries of
-message 3/4.
-
-Signed-off-by: Mathy Vanhoef <Mathy.Vanhoef@cs.kuleuven.be>
-
-Upstream-Status: Backport
-Signed-off-by: Zheng Ruoqin <zhengrq.fnst@cn.fujitsu.com>
----
- src/common/wpa_common.h | 1 +
- src/rsn_supp/wpa.c | 5 ++---
- src/rsn_supp/wpa_i.h | 1 -
- 3 files changed, 3 insertions(+), 4 deletions(-)
-
-diff --git a/src/common/wpa_common.h b/src/common/wpa_common.h
-index d200285..1021ccb 100644
---- a/src/common/wpa_common.h
-+++ b/src/common/wpa_common.h
-@@ -215,6 +215,7 @@ struct wpa_ptk {
- size_t kck_len;
- size_t kek_len;
- size_t tk_len;
-+ int installed; /* 1 if key has already been installed to driver */
- };
-
- struct wpa_gtk {
-diff --git a/src/rsn_supp/wpa.c b/src/rsn_supp/wpa.c
-index 7a2c68d..0550a41 100644
---- a/src/rsn_supp/wpa.c
-+++ b/src/rsn_supp/wpa.c
-@@ -510,7 +510,6 @@ static void wpa_supplicant_process_1_of_4(struct wpa_sm *sm,
- os_memset(buf, 0, sizeof(buf));
- }
- sm->tptk_set = 1;
-- sm->tk_to_set = 1;
-
- kde = sm->assoc_wpa_ie;
- kde_len = sm->assoc_wpa_ie_len;
-@@ -615,7 +614,7 @@ static int wpa_supplicant_install_ptk(struct wpa_sm *sm,
- enum wpa_alg alg;
- const u8 *key_rsc;
-
-- if (!sm->tk_to_set) {
-+ if (sm->ptk.installed) {
- wpa_dbg(sm->ctx->msg_ctx, MSG_DEBUG,
- "WPA: Do not re-install same PTK to the driver");
- return 0;
-@@ -659,7 +658,7 @@ static int wpa_supplicant_install_ptk(struct wpa_sm *sm,
-
- /* TK is not needed anymore in supplicant */
- os_memset(sm->ptk.tk, 0, WPA_TK_MAX_LEN);
-- sm->tk_to_set = 0;
-+ sm->ptk.installed = 1;
-
- if (sm->wpa_ptk_rekey) {
- eloop_cancel_timeout(wpa_sm_rekey_ptk, sm, NULL);
-diff --git a/src/rsn_supp/wpa_i.h b/src/rsn_supp/wpa_i.h
-index 9a54631..41f371f 100644
---- a/src/rsn_supp/wpa_i.h
-+++ b/src/rsn_supp/wpa_i.h
-@@ -24,7 +24,6 @@ struct wpa_sm {
- struct wpa_ptk ptk, tptk;
- int ptk_set, tptk_set;
- unsigned int msg_3_of_4_ok:1;
-- unsigned int tk_to_set:1;
- u8 snonce[WPA_NONCE_LEN];
- u8 anonce[WPA_NONCE_LEN]; /* ANonce from the last 1/4 msg */
- int renew_snonce;
---
-1.8.3.1
-
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd/0005-Fix-PTK-rekeying-to-generate-a-new-ANonce.patch b/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd/0005-Fix-PTK-rekeying-to-generate-a-new-ANonce.patch
deleted file mode 100644
index b0e1df3..0000000
--- a/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd/0005-Fix-PTK-rekeying-to-generate-a-new-ANonce.patch
+++ /dev/null
@@ -1,67 +0,0 @@
-From 804b9d72808cddd822e7dcec4d60f40c1aceda82 Mon Sep 17 00:00:00 2001
-From: Jouni Malinen <j@w1.fi>
-Date: Sun, 1 Oct 2017 12:32:57 +0300
-Subject: [PATCH 5/7] Fix PTK rekeying to generate a new ANonce
-
-The Authenticator state machine path for PTK rekeying ended up bypassing
-the AUTHENTICATION2 state where a new ANonce is generated when going
-directly to the PTKSTART state since there is no need to try to
-determine the PMK again in such a case. This is far from ideal since the
-new PTK would depend on a new nonce only from the supplicant.
-
-Fix this by generating a new ANonce when moving to the PTKSTART state
-for the purpose of starting new 4-way handshake to rekey PTK.
-
-Signed-off-by: Jouni Malinen <j@w1.fi>
-
-Upstream-Status: Backport
-Signed-off-by: Zheng Ruoqin <zhengrq.fnst@cn.fujitsu.com>
----
- src/ap/wpa_auth.c | 24 +++++++++++++++++++++---
- 1 file changed, 21 insertions(+), 3 deletions(-)
-
-diff --git a/src/ap/wpa_auth.c b/src/ap/wpa_auth.c
-index 707971d..bf10cc1 100644
---- a/src/ap/wpa_auth.c
-+++ b/src/ap/wpa_auth.c
-@@ -1901,6 +1901,21 @@ SM_STATE(WPA_PTK, AUTHENTICATION2)
- }
-
-
-+static int wpa_auth_sm_ptk_update(struct wpa_state_machine *sm)
-+{
-+ if (random_get_bytes(sm->ANonce, WPA_NONCE_LEN)) {
-+ wpa_printf(MSG_ERROR,
-+ "WPA: Failed to get random data for ANonce");
-+ sm->Disconnect = TRUE;
-+ return -1;
-+ }
-+ wpa_hexdump(MSG_DEBUG, "WPA: Assign new ANonce", sm->ANonce,
-+ WPA_NONCE_LEN);
-+ sm->TimeoutCtr = 0;
-+ return 0;
-+}
-+
-+
- SM_STATE(WPA_PTK, INITPMK)
- {
- u8 msk[2 * PMK_LEN];
-@@ -2458,9 +2473,12 @@ SM_STEP(WPA_PTK)
- SM_ENTER(WPA_PTK, AUTHENTICATION);
- else if (sm->ReAuthenticationRequest)
- SM_ENTER(WPA_PTK, AUTHENTICATION2);
-- else if (sm->PTKRequest)
-- SM_ENTER(WPA_PTK, PTKSTART);
-- else switch (sm->wpa_ptk_state) {
-+ else if (sm->PTKRequest) {
-+ if (wpa_auth_sm_ptk_update(sm) < 0)
-+ SM_ENTER(WPA_PTK, DISCONNECTED);
-+ else
-+ SM_ENTER(WPA_PTK, PTKSTART);
-+ } else switch (sm->wpa_ptk_state) {
- case WPA_PTK_INITIALIZE:
- break;
- case WPA_PTK_DISCONNECT:
---
-1.8.3.1
-
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd/0006-TDLS-Reject-TPK-TK-reconfiguration.patch b/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd/0006-TDLS-Reject-TPK-TK-reconfiguration.patch
deleted file mode 100644
index 72c7d51..0000000
--- a/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd/0006-TDLS-Reject-TPK-TK-reconfiguration.patch
+++ /dev/null
@@ -1,135 +0,0 @@
-From 7fd26db2d8147ed662db192c41d7bc15752a601d Mon Sep 17 00:00:00 2001
-From: Jouni Malinen <j@w1.fi>
-Date: Fri, 22 Sep 2017 11:03:15 +0300
-Subject: [PATCH 6/7] TDLS: Reject TPK-TK reconfiguration
-
-Do not try to reconfigure the same TPK-TK to the driver after it has
-been successfully configured. This is an explicit check to avoid issues
-related to resetting the TX/RX packet number. There was already a check
-for this for TPK M2 (retries of that message are ignored completely), so
-that behavior does not get modified.
-
-For TPK M3, the TPK-TK could have been reconfigured, but that was
-followed by immediate teardown of the link due to an issue in updating
-the STA entry. Furthermore, for TDLS with any real security (i.e.,
-ignoring open/WEP), the TPK message exchange is protected on the AP path
-and simple replay attacks are not feasible.
-
-As an additional corner case, make sure the local nonce gets updated if
-the peer uses a very unlikely "random nonce" of all zeros.
-
-Signed-off-by: Jouni Malinen <j@w1.fi>
-
-Upstream-Status: Backport
-Signed-off-by: Zheng Ruoqin <zhengrq.fnst@cn.fujitsu.com>
----
- src/rsn_supp/tdls.c | 38 ++++++++++++++++++++++++++++++++++++--
- 1 file changed, 36 insertions(+), 2 deletions(-)
-
-diff --git a/src/rsn_supp/tdls.c b/src/rsn_supp/tdls.c
-index e424168..9eb9738 100644
---- a/src/rsn_supp/tdls.c
-+++ b/src/rsn_supp/tdls.c
-@@ -112,6 +112,7 @@ struct wpa_tdls_peer {
- u8 tk[16]; /* TPK-TK; assuming only CCMP will be used */
- } tpk;
- int tpk_set;
-+ int tk_set; /* TPK-TK configured to the driver */
- int tpk_success;
- int tpk_in_progress;
-
-@@ -192,6 +193,20 @@ static int wpa_tdls_set_key(struct wpa_sm *sm, struct wpa_tdls_peer *peer)
- u8 rsc[6];
- enum wpa_alg alg;
-
-+ if (peer->tk_set) {
-+ /*
-+ * This same TPK-TK has already been configured to the driver
-+ * and this new configuration attempt (likely due to an
-+ * unexpected retransmitted frame) would result in clearing
-+ * the TX/RX sequence number which can break security, so must
-+ * not allow that to happen.
-+ */
-+ wpa_printf(MSG_INFO, "TDLS: TPK-TK for the peer " MACSTR
-+ " has already been configured to the driver - do not reconfigure",
-+ MAC2STR(peer->addr));
-+ return -1;
-+ }
-+
- os_memset(rsc, 0, 6);
-
- switch (peer->cipher) {
-@@ -209,12 +224,15 @@ static int wpa_tdls_set_key(struct wpa_sm *sm, struct wpa_tdls_peer *peer)
- return -1;
- }
-
-+ wpa_printf(MSG_DEBUG, "TDLS: Configure pairwise key for peer " MACSTR,
-+ MAC2STR(peer->addr));
- if (wpa_sm_set_key(sm, alg, peer->addr, -1, 1,
- rsc, sizeof(rsc), peer->tpk.tk, key_len) < 0) {
- wpa_printf(MSG_WARNING, "TDLS: Failed to set TPK to the "
- "driver");
- return -1;
- }
-+ peer->tk_set = 1;
- return 0;
- }
-
-@@ -696,7 +714,7 @@ static void wpa_tdls_peer_clear(struct wpa_sm *sm, struct wpa_tdls_peer *peer)
- peer->cipher = 0;
- peer->qos_info = 0;
- peer->wmm_capable = 0;
-- peer->tpk_set = peer->tpk_success = 0;
-+ peer->tk_set = peer->tpk_set = peer->tpk_success = 0;
- peer->chan_switch_enabled = 0;
- os_memset(&peer->tpk, 0, sizeof(peer->tpk));
- os_memset(peer->inonce, 0, WPA_NONCE_LEN);
-@@ -1159,6 +1177,7 @@ skip_rsnie:
- wpa_tdls_peer_free(sm, peer);
- return -1;
- }
-+ peer->tk_set = 0; /* A new nonce results in a new TK */
- wpa_hexdump(MSG_DEBUG, "TDLS: Initiator Nonce for TPK handshake",
- peer->inonce, WPA_NONCE_LEN);
- os_memcpy(ftie->Snonce, peer->inonce, WPA_NONCE_LEN);
-@@ -1751,6 +1770,19 @@ static int wpa_tdls_addset_peer(struct wpa_sm *sm, struct wpa_tdls_peer *peer,
- }
-
-
-+static int tdls_nonce_set(const u8 *nonce)
-+{
-+ int i;
-+
-+ for (i = 0; i < WPA_NONCE_LEN; i++) {
-+ if (nonce[i])
-+ return 1;
-+ }
-+
-+ return 0;
-+}
-+
-+
- static int wpa_tdls_process_tpk_m1(struct wpa_sm *sm, const u8 *src_addr,
- const u8 *buf, size_t len)
- {
-@@ -2004,7 +2036,8 @@ skip_rsn:
- peer->rsnie_i_len = kde.rsn_ie_len;
- peer->cipher = cipher;
-
-- if (os_memcmp(peer->inonce, ftie->Snonce, WPA_NONCE_LEN) != 0) {
-+ if (os_memcmp(peer->inonce, ftie->Snonce, WPA_NONCE_LEN) != 0 ||
-+ !tdls_nonce_set(peer->inonce)) {
- /*
- * There is no point in updating the RNonce for every obtained
- * TPK M1 frame (e.g., retransmission due to timeout) with the
-@@ -2020,6 +2053,7 @@ skip_rsn:
- "TDLS: Failed to get random data for responder nonce");
- goto error;
- }
-+ peer->tk_set = 0; /* A new nonce results in a new TK */
- }
-
- #if 0
---
-1.8.3.1
-
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd/0007-FT-Do-not-allow-multiple-Reassociation-Response-fram.patch b/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd/0007-FT-Do-not-allow-multiple-Reassociation-Response-fram.patch
deleted file mode 100644
index d0978c7..0000000
--- a/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd/0007-FT-Do-not-allow-multiple-Reassociation-Response-fram.patch
+++ /dev/null
@@ -1,85 +0,0 @@
-From a42eb67c42f845faf266b0633d52e17f2a82f511 Mon Sep 17 00:00:00 2001
-From: Jouni Malinen <j@w1.fi>
-Date: Fri, 22 Sep 2017 12:06:37 +0300
-Subject: [PATCH 7/7] FT: Do not allow multiple Reassociation Response frames
-
-The driver is expected to not report a second association event without
-the station having explicitly request a new association. As such, this
-case should not be reachable. However, since reconfiguring the same
-pairwise or group keys to the driver could result in nonce reuse issues,
-be extra careful here and do an additional state check to avoid this
-even if the local driver ends up somehow accepting an unexpected
-Reassociation Response frame.
-
-Signed-off-by: Jouni Malinen <j@w1.fi>
-
-Upstream-Status: Backport
-Signed-off-by: Zheng Ruoqin <zhengrq.fnst@cn.fujitsu.com>
----
- src/rsn_supp/wpa.c | 3 +++
- src/rsn_supp/wpa_ft.c | 8 ++++++++
- src/rsn_supp/wpa_i.h | 1 +
- 3 files changed, 12 insertions(+)
-
-diff --git a/src/rsn_supp/wpa.c b/src/rsn_supp/wpa.c
-index 0550a41..2a53c6f 100644
---- a/src/rsn_supp/wpa.c
-+++ b/src/rsn_supp/wpa.c
-@@ -2440,6 +2440,9 @@ void wpa_sm_notify_disassoc(struct wpa_sm *sm)
- #ifdef CONFIG_TDLS
- wpa_tdls_disassoc(sm);
- #endif /* CONFIG_TDLS */
-+#ifdef CONFIG_IEEE80211R
-+ sm->ft_reassoc_completed = 0;
-+#endif /* CONFIG_IEEE80211R */
-
- /* Keys are not needed in the WPA state machine anymore */
- wpa_sm_drop_sa(sm);
-diff --git a/src/rsn_supp/wpa_ft.c b/src/rsn_supp/wpa_ft.c
-index 205793e..d45bb45 100644
---- a/src/rsn_supp/wpa_ft.c
-+++ b/src/rsn_supp/wpa_ft.c
-@@ -153,6 +153,7 @@ static u8 * wpa_ft_gen_req_ies(struct wpa_sm *sm, size_t *len,
- u16 capab;
-
- sm->ft_completed = 0;
-+ sm->ft_reassoc_completed = 0;
-
- buf_len = 2 + sizeof(struct rsn_mdie) + 2 + sizeof(struct rsn_ftie) +
- 2 + sm->r0kh_id_len + ric_ies_len + 100;
-@@ -681,6 +682,11 @@ int wpa_ft_validate_reassoc_resp(struct wpa_sm *sm, const u8 *ies,
- return -1;
- }
-
-+ if (sm->ft_reassoc_completed) {
-+ wpa_printf(MSG_DEBUG, "FT: Reassociation has already been completed for this FT protocol instance - ignore unexpected retransmission");
-+ return 0;
-+ }
-+
- if (wpa_ft_parse_ies(ies, ies_len, &parse) < 0) {
- wpa_printf(MSG_DEBUG, "FT: Failed to parse IEs");
- return -1;
-@@ -781,6 +787,8 @@ int wpa_ft_validate_reassoc_resp(struct wpa_sm *sm, const u8 *ies,
- return -1;
- }
-
-+ sm->ft_reassoc_completed = 1;
-+
- if (wpa_ft_process_gtk_subelem(sm, parse.gtk, parse.gtk_len) < 0)
- return -1;
-
-diff --git a/src/rsn_supp/wpa_i.h b/src/rsn_supp/wpa_i.h
-index 41f371f..56f88dc 100644
---- a/src/rsn_supp/wpa_i.h
-+++ b/src/rsn_supp/wpa_i.h
-@@ -128,6 +128,7 @@ struct wpa_sm {
- size_t r0kh_id_len;
- u8 r1kh_id[FT_R1KH_ID_LEN];
- int ft_completed;
-+ int ft_reassoc_completed;
- int over_the_ds_in_progress;
- u8 target_ap[ETH_ALEN]; /* over-the-DS target AP */
- int set_ptk_after_assoc;
---
-1.8.3.1
-
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd/hostapd-CVE-2018-14526.patch b/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd/hostapd-CVE-2018-14526.patch
deleted file mode 100644
index 522fc39..0000000
--- a/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd/hostapd-CVE-2018-14526.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-hostapd-2.6: Fix CVE-2018-14526
-
-[No upstream tracking] -- https://w1.fi/security/2018-1/unauthenticated-eapol-key-decryption.txt
-
-wpa: Ignore unauthenticated encrypted EAPOL-Key data
-
-Ignore unauthenticated encrypted EAPOL-Key data in supplicant
-processing. When using WPA2, these are frames that have the Encrypted
-flag set, but not the MIC flag.
-
-When using WPA2, EAPOL-Key frames that had the Encrypted flag set but
-not the MIC flag, had their data field decrypted without first verifying
-the MIC. In case the data field was encrypted using RC4 (i.e., when
-negotiating TKIP as the pairwise cipher), this meant that
-unauthenticated but decrypted data would then be processed. An adversary
-could abuse this as a decryption oracle to recover sensitive information
-in the data field of EAPOL-Key messages (e.g., the group key).
-
-Upstream-Status: Backport [https://w1.fi/cgit/hostap/commit/src/rsn_supp/wpa.c?id=3e34cfdff6b192fe337c6fb3f487f73e96582961]
-CVE: CVE-2018-14526
-Signed-off-by: Andrej Valek <andrej.valek@siemens.com>
-
-diff --git a/src/rsn_supp/wpa.c b/src/rsn_supp/wpa.c
-index 3c47879..6bdf923 100644
---- a/src/rsn_supp/wpa.c
-+++ b/src/rsn_supp/wpa.c
-@@ -2016,6 +2016,17 @@ int wpa_sm_rx_eapol(struct wpa_sm *sm, const u8 *src_addr,
-
- if ((sm->proto == WPA_PROTO_RSN || sm->proto == WPA_PROTO_OSEN) &&
- (key_info & WPA_KEY_INFO_ENCR_KEY_DATA)) {
-+ /*
-+ * Only decrypt the Key Data field if the frame's authenticity
-+ * was verified. When using AES-SIV (FILS), the MIC flag is not
-+ * set, so this check should only be performed if mic_len != 0
-+ * which is the case in this code branch.
-+ */
-+ if (!(key_info & WPA_KEY_INFO_MIC)) {
-+ wpa_msg(sm->ctx->msg_ctx, MSG_WARNING,
-+ "WPA: Ignore EAPOL-Key with encrypted but unauthenticated data");
-+ goto out;
-+ }
- if (wpa_supplicant_decrypt_key_data(sm, key, ver, key_data,
- &key_data_len))
- goto out;
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd_2.6.bb b/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd_2.6.bb
deleted file mode 100644
index 42aae42..0000000
--- a/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd_2.6.bb
+++ /dev/null
@@ -1,59 +0,0 @@
-SUMMARY = "User space daemon for extended IEEE 802.11 management"
-HOMEPAGE = "http://w1.fi/hostapd/"
-SECTION = "kernel/userland"
-LICENSE = "BSD-3-Clause"
-LIC_FILES_CHKSUM = "file://hostapd/README;md5=8aa4e8c78b59b12016c4cb2d0a8db350"
-
-DEPENDS = "libnl openssl"
-
-SRC_URI = " \
- http://w1.fi/releases/hostapd-${PV}.tar.gz \
- file://defconfig \
- file://init \
- file://hostapd.service \
- file://0001-hostapd-Avoid-key-reinstallation-in-FT-handshake.patch \
- file://0002-Prevent-reinstallation-of-an-already-in-use-group-ke.patch \
- file://0003-Extend-protection-of-GTK-IGTK-reinstallation-of-WNM-.patch \
- file://0004-Prevent-installation-of-an-all-zero-TK.patch \
- file://0005-Fix-PTK-rekeying-to-generate-a-new-ANonce.patch \
- file://0006-TDLS-Reject-TPK-TK-reconfiguration.patch \
- file://0007-FT-Do-not-allow-multiple-Reassociation-Response-fram.patch \
- file://hostapd-CVE-2018-14526.patch \
-"
-
-SRC_URI[md5sum] = "eaa56dce9bd8f1d195eb62596eab34c7"
-SRC_URI[sha256sum] = "01526b90c1d23bec4b0f052039cc4456c2fd19347b4d830d1d58a0a6aea7117d"
-
-S = "${WORKDIR}/hostapd-${PV}"
-B = "${WORKDIR}/hostapd-${PV}/hostapd"
-
-inherit update-rc.d systemd pkgconfig distro_features_check
-
-CONFLICT_DISTRO_FEATURES = "openssl-no-weak-ciphers"
-
-INITSCRIPT_NAME = "hostapd"
-
-SYSTEMD_SERVICE_${PN} = "hostapd.service"
-SYSTEMD_AUTO_ENABLE_${PN} = "disable"
-
-do_configure_append() {
- install -m 0644 ${WORKDIR}/defconfig ${B}/.config
-}
-
-do_compile() {
- export CFLAGS="-MMD -O2 -Wall -g"
- export EXTRA_CFLAGS="${CFLAGS}"
- make V=1
-}
-
-do_install() {
- install -d ${D}${sbindir} ${D}${sysconfdir}/init.d ${D}${systemd_unitdir}/system/
- install -m 0644 ${B}/hostapd.conf ${D}${sysconfdir}
- install -m 0755 ${B}/hostapd ${D}${sbindir}
- install -m 0755 ${B}/hostapd_cli ${D}${sbindir}
- install -m 755 ${WORKDIR}/init ${D}${sysconfdir}/init.d/hostapd
- install -m 0644 ${WORKDIR}/hostapd.service ${D}${systemd_unitdir}/system/
- sed -i -e 's,@SBINDIR@,${sbindir},g' -e 's,@SYSCONFDIR@,${sysconfdir},g' ${D}${systemd_unitdir}/system/hostapd.service
-}
-
-CONFFILES_${PN} += "${sysconfdir}/hostapd.conf"
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd_2.8.bb b/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd_2.8.bb
new file mode 100644
index 0000000..15884d0
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd_2.8.bb
@@ -0,0 +1,51 @@
+SUMMARY = "User space daemon for extended IEEE 802.11 management"
+HOMEPAGE = "http://w1.fi/hostapd/"
+SECTION = "kernel/userland"
+LICENSE = "BSD-3-Clause"
+LIC_FILES_CHKSUM = "file://hostapd/README;md5=1ec986bec88070e2a59c68c95d763f89"
+
+DEPENDS = "libnl openssl"
+
+SRC_URI = " \
+ http://w1.fi/releases/hostapd-${PV}.tar.gz \
+ file://defconfig \
+ file://init \
+ file://hostapd.service \
+"
+
+SRC_URI[md5sum] = "ed2c254e5f400838cb9d8e7b6e43b86c"
+SRC_URI[sha256sum] = "929f522be6eeec38c53147e7bc084df028f65f148a3f7e4fa6c4c3f955cee4b0"
+
+S = "${WORKDIR}/hostapd-${PV}"
+B = "${WORKDIR}/hostapd-${PV}/hostapd"
+
+inherit update-rc.d systemd pkgconfig distro_features_check
+
+CONFLICT_DISTRO_FEATURES = "openssl-no-weak-ciphers"
+
+INITSCRIPT_NAME = "hostapd"
+
+SYSTEMD_SERVICE_${PN} = "hostapd.service"
+SYSTEMD_AUTO_ENABLE_${PN} = "disable"
+
+do_configure_append() {
+ install -m 0644 ${WORKDIR}/defconfig ${B}/.config
+}
+
+do_compile() {
+ export CFLAGS="-MMD -O2 -Wall -g"
+ export EXTRA_CFLAGS="${CFLAGS}"
+ make V=1
+}
+
+do_install() {
+ install -d ${D}${sbindir} ${D}${sysconfdir}/init.d ${D}${systemd_unitdir}/system/
+ install -m 0644 ${B}/hostapd.conf ${D}${sysconfdir}
+ install -m 0755 ${B}/hostapd ${D}${sbindir}
+ install -m 0755 ${B}/hostapd_cli ${D}${sbindir}
+ install -m 755 ${WORKDIR}/init ${D}${sysconfdir}/init.d/hostapd
+ install -m 0644 ${WORKDIR}/hostapd.service ${D}${systemd_unitdir}/system/
+ sed -i -e 's,@SBINDIR@,${sbindir},g' -e 's,@SYSCONFDIR@,${sysconfdir},g' ${D}${systemd_unitdir}/system/hostapd.service
+}
+
+CONFFILES_${PN} += "${sysconfdir}/hostapd.conf"
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/paho-mqtt-c/paho-mqtt-c_1.2.1.bb b/meta-openembedded/meta-oe/recipes-connectivity/paho-mqtt-c/paho-mqtt-c_1.2.1.bb
deleted file mode 100644
index a7a9b5a..0000000
--- a/meta-openembedded/meta-oe/recipes-connectivity/paho-mqtt-c/paho-mqtt-c_1.2.1.bb
+++ /dev/null
@@ -1,35 +0,0 @@
-SUMMARY = "Paho MQTT - C libraries for the MQTT and MQTT-SN protocols"
-DESCRIPTION = "Client implementation of open and standard messaging protocols for Machine-to-Machine (M2M) and Internet of Things (IoT)."
-HOMEPAGE = "http://www.eclipse.org/paho/"
-SECTION = "console/network"
-LICENSE = "EPL-1.0 | EDL-1.0"
-
-LIC_FILES_CHKSUM = " \
- file://edl-v10;md5=3adfcc70f5aeb7a44f3f9b495aa1fbf3 \
- file://epl-v10;md5=659c8e92a40b6df1d9e3dccf5ae45a08 \
- file://notice.html;md5=a00d6f9ab542be7babc2d8b80d5d2a4c \
- file://about.html;md5=dcde438d73cf42393da9d40fabc0c9bc \
-"
-
-SRC_URI = "git://github.com/eclipse/paho.mqtt.c;protocol=http"
-
-SRCREV = "09fe0744e02f317b907e96dd5afcc02224ddbb85"
-
-DEPENDS = "openssl"
-
-S = "${WORKDIR}/git"
-
-TARGET_CC_ARCH += "${LDFLAGS}"
-
-do_install() {
- install -d ${D}${libdir}
- oe_libinstall -C build/output -so libpaho-mqtt3a ${D}${libdir}
- oe_libinstall -C build/output -so libpaho-mqtt3as ${D}${libdir}
- oe_libinstall -C build/output -so libpaho-mqtt3c ${D}${libdir}
- oe_libinstall -C build/output -so libpaho-mqtt3cs ${D}${libdir}
- install -d ${D}${includedir}
- install -m 644 src/MQTTAsync.h ${D}${includedir}
- install -m 644 src/MQTTClient.h ${D}${includedir}
- install -m 644 src/MQTTClientPersistence.h ${D}${includedir}
-}
-
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/paho-mqtt-c/paho-mqtt-c_1.3.0.bb b/meta-openembedded/meta-oe/recipes-connectivity/paho-mqtt-c/paho-mqtt-c_1.3.0.bb
new file mode 100644
index 0000000..79a8f43
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-connectivity/paho-mqtt-c/paho-mqtt-c_1.3.0.bb
@@ -0,0 +1,28 @@
+SUMMARY = "Paho MQTT - C libraries for the MQTT and MQTT-SN protocols"
+DESCRIPTION = "Client implementation of open and standard messaging protocols for Machine-to-Machine (M2M) and Internet of Things (IoT)."
+HOMEPAGE = "http://www.eclipse.org/paho/"
+SECTION = "console/network"
+LICENSE = "EPL-1.0 | EDL-1.0"
+
+LIC_FILES_CHKSUM = " \
+ file://edl-v10;md5=3adfcc70f5aeb7a44f3f9b495aa1fbf3 \
+ file://epl-v10;md5=659c8e92a40b6df1d9e3dccf5ae45a08 \
+ file://notice.html;md5=a00d6f9ab542be7babc2d8b80d5d2a4c \
+ file://about.html;md5=dcde438d73cf42393da9d40fabc0c9bc \
+"
+
+SRC_URI = "git://github.com/eclipse/paho.mqtt.c;protocol=http"
+
+SRCREV = "9f715d0862a8e16099b5837c4e53a1bf6a6a0675"
+
+DEPENDS = "openssl"
+
+S = "${WORKDIR}/git"
+
+inherit cmake
+
+do_install_append() {
+ # paho-mqtt installes some thing that we don't want.
+ rm -rf ${D}${prefix}/samples
+ find ${D}${prefix} -maxdepth 1 -type f -delete
+}
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/ser2net/ser2net_3.5.1.bb b/meta-openembedded/meta-oe/recipes-connectivity/ser2net/ser2net_3.5.1.bb
new file mode 100644
index 0000000..ed8aab0
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-connectivity/ser2net/ser2net_3.5.1.bb
@@ -0,0 +1,15 @@
+SUMMARY = "A serial to network proxy"
+SECTION = "console/network"
+HOMEPAGE = "http://sourceforge.net/projects/ser2net/"
+
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=bae3019b4c6dc4138c217864bd04331f"
+
+SRC_URI = "${SOURCEFORGE_MIRROR}/project/ser2net/ser2net/ser2net-${PV}.tar.gz"
+
+SRC_URI[md5sum] = "569267b37b8f507d8874f28f5334b5d2"
+SRC_URI[sha256sum] = "02f5dd0abbef5a17b80836b0de1ef0588e257106fb5e269b86822bfd001dc862"
+
+inherit autotools pkgconfig
+
+BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/ser2net/ser2net_3.5.bb b/meta-openembedded/meta-oe/recipes-connectivity/ser2net/ser2net_3.5.bb
deleted file mode 100644
index f64776c..0000000
--- a/meta-openembedded/meta-oe/recipes-connectivity/ser2net/ser2net_3.5.bb
+++ /dev/null
@@ -1,15 +0,0 @@
-SUMMARY = "A serial to network proxy"
-SECTION = "console/network"
-HOMEPAGE = "http://sourceforge.net/projects/ser2net/"
-
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=bae3019b4c6dc4138c217864bd04331f"
-
-SRC_URI = "${SOURCEFORGE_MIRROR}/project/ser2net/ser2net/ser2net-${PV}.tar.gz"
-
-SRC_URI[md5sum] = "e10e7c8c97e5bade5e85ce6e89bdf1f4"
-SRC_URI[sha256sum] = "ba9e1d60a89fd7ed075553b4a2074352902203f7fbd9b65b15048c05f0e3f3be"
-
-inherit autotools pkgconfig
-
-BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/thrift/thrift-0.9.3/0001-Forcibly-disable-check-for-Qt5.patch b/meta-openembedded/meta-oe/recipes-connectivity/thrift/thrift-0.9.3/0001-Forcibly-disable-check-for-Qt5.patch
deleted file mode 100644
index a77cd28..0000000
--- a/meta-openembedded/meta-oe/recipes-connectivity/thrift/thrift-0.9.3/0001-Forcibly-disable-check-for-Qt5.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From a5544d8e543436e413379422b702f6f56ac7eb8e Mon Sep 17 00:00:00 2001
-From: Philip Balister <philip@balister.org>
-Date: Tue, 12 Apr 2016 17:30:15 -0400
-Subject: [PATCH] Forcibly disable check for Qt5.
-
-Signed-off-by: Philip Balister <philip@balister.org>
-
----
- build/cmake/DefineOptions.cmake | 3 ---
- 1 file changed, 3 deletions(-)
-
-diff --git a/build/cmake/DefineOptions.cmake b/build/cmake/DefineOptions.cmake
-index 62e240f..f8b4493 100644
---- a/build/cmake/DefineOptions.cmake
-+++ b/build/cmake/DefineOptions.cmake
-@@ -52,9 +52,6 @@ CMAKE_DEPENDENT_OPTION(WITH_LIBEVENT "Build with libevent support" ON
- find_package(Qt4 QUIET COMPONENTS QtCore QtNetwork)
- CMAKE_DEPENDENT_OPTION(WITH_QT4 "Build with Qt4 support" ON
- "QT4_FOUND" OFF)
--find_package(Qt5 QUIET COMPONENTS Core Network)
--CMAKE_DEPENDENT_OPTION(WITH_QT5 "Build with Qt5 support" ON
-- "Qt5_FOUND" OFF)
- if(${WITH_QT4} AND ${WITH_QT5} AND ${CMAKE_MAJOR_VERSION} LESS 3)
- # cmake < 3.0.0 causes conflict when building both Qt4 and Qt5
- set(WITH_QT4 OFF)
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/thrift/thrift-0.9.3/0001-THRIFT-3828-In-cmake-avoid-use-of-both-quoted-paths-.patch b/meta-openembedded/meta-oe/recipes-connectivity/thrift/thrift-0.9.3/0001-THRIFT-3828-In-cmake-avoid-use-of-both-quoted-paths-.patch
deleted file mode 100644
index 182eacc..0000000
--- a/meta-openembedded/meta-oe/recipes-connectivity/thrift/thrift-0.9.3/0001-THRIFT-3828-In-cmake-avoid-use-of-both-quoted-paths-.patch
+++ /dev/null
@@ -1,108 +0,0 @@
-From b8e254a2f4ba49412e541598c72159869a7770f8 Mon Sep 17 00:00:00 2001
-From: Cody P Schafer <dev@codyps.com>
-Date: Mon, 16 May 2016 15:21:10 -0400
-Subject: [PATCH] THRIFT-3828 In cmake avoid use of both quoted paths and
- SYSTEM with include_directories()
-
-This allows us to avoid issues where there are no paths to be added to
-the include path (include_directories() errors when given an empty
-string).
-
-Specifically, gcc-6 requires that libraries stop passing paths like
-'/usr/include' (or they will get libstdc++ build errors), so these paths
-will be empty more often in the future.
-
----
- lib/cpp/CMakeLists.txt | 8 ++++----
- lib/cpp/test/CMakeLists.txt | 2 +-
- test/cpp/CMakeLists.txt | 6 +++---
- tutorial/cpp/CMakeLists.txt | 2 +-
- 4 files changed, 9 insertions(+), 9 deletions(-)
-
-diff --git a/lib/cpp/CMakeLists.txt b/lib/cpp/CMakeLists.txt
-index 4c7caeb..a716ac3 100755
---- a/lib/cpp/CMakeLists.txt
-+++ b/lib/cpp/CMakeLists.txt
-@@ -24,7 +24,7 @@ else()
- find_package(Boost 1.53.0 REQUIRED)
- endif()
-
--include_directories(SYSTEM "${Boost_INCLUDE_DIRS}")
-+include_directories(${Boost_INCLUDE_DIRS})
- include_directories(src)
-
- # SYSLIBS contains libraries that need to be linked to all lib targets
-@@ -104,7 +104,7 @@ if(OPENSSL_FOUND AND WITH_OPENSSL)
- src/thrift/transport/TSSLSocket.cpp
- src/thrift/transport/TSSLServerSocket.cpp
- )
-- include_directories(SYSTEM "${OPENSSL_INCLUDE_DIR}")
-+ include_directories(${OPENSSL_INCLUDE_DIR})
- list(APPEND SYSLIBS "${OPENSSL_LIBRARIES}")
- endif()
-
-@@ -162,7 +162,7 @@ TARGET_LINK_LIBRARIES_THRIFT(thrift ${SYSLIBS})
-
- if(WITH_LIBEVENT)
- find_package(Libevent REQUIRED) # Libevent comes with CMake support form upstream
-- include_directories(SYSTEM ${LIBEVENT_INCLUDE_DIRS})
-+ include_directories(${LIBEVENT_INCLUDE_DIRS})
-
- ADD_LIBRARY_THRIFT(thriftnb ${thriftcppnb_SOURCES})
- TARGET_LINK_LIBRARIES_THRIFT(thriftnb ${SYSLIBS} ${LIBEVENT_LIBRARIES})
-@@ -171,7 +171,7 @@ endif()
-
- if(WITH_ZLIB)
- find_package(ZLIB REQUIRED)
-- include_directories(SYSTEM ${ZLIB_INCLUDE_DIRS})
-+ include_directories(${ZLIB_INCLUDE_DIRS})
-
- ADD_LIBRARY_THRIFT(thriftz ${thriftcppz_SOURCES})
- TARGET_LINK_LIBRARIES_THRIFT(thriftz ${SYSLIBS} ${ZLIB_LIBRARIES})
-diff --git a/lib/cpp/test/CMakeLists.txt b/lib/cpp/test/CMakeLists.txt
-index 5de9fc4..c956c38 100644
---- a/lib/cpp/test/CMakeLists.txt
-+++ b/lib/cpp/test/CMakeLists.txt
-@@ -20,7 +20,7 @@
- # Find required packages
- set(Boost_USE_STATIC_LIBS ON) # Force the use of static boost test framework
- find_package(Boost 1.53.0 REQUIRED COMPONENTS chrono filesystem system thread unit_test_framework)
--include_directories(SYSTEM "${Boost_INCLUDE_DIRS}")
-+include_directories(${Boost_INCLUDE_DIRS})
-
- #Make sure gen-cpp files can be included
- include_directories("${CMAKE_CURRENT_BINARY_DIR}")
-diff --git a/test/cpp/CMakeLists.txt b/test/cpp/CMakeLists.txt
-index 2d75f2e..b1409de 100755
---- a/test/cpp/CMakeLists.txt
-+++ b/test/cpp/CMakeLists.txt
-@@ -22,13 +22,13 @@ include(ThriftMacros)
-
- set(Boost_USE_STATIC_LIBS ON)
- find_package(Boost 1.53.0 REQUIRED COMPONENTS program_options system filesystem)
--include_directories(SYSTEM "${Boost_INCLUDE_DIRS}")
-+include_directories(${Boost_INCLUDE_DIRS})
-
- find_package(OpenSSL REQUIRED)
--include_directories(SYSTEM "${OPENSSL_INCLUDE_DIR}")
-+include_directories(${OPENSSL_INCLUDE_DIR})
-
- find_package(Libevent REQUIRED) # Libevent comes with CMake support from upstream
--include_directories(SYSTEM ${LIBEVENT_INCLUDE_DIRS})
-+include_directories(${LIBEVENT_INCLUDE_DIRS})
-
- #Make sure gen-cpp files can be included
- include_directories("${CMAKE_CURRENT_BINARY_DIR}")
-diff --git a/tutorial/cpp/CMakeLists.txt b/tutorial/cpp/CMakeLists.txt
-index 2b0c143..5ecae17 100644
---- a/tutorial/cpp/CMakeLists.txt
-+++ b/tutorial/cpp/CMakeLists.txt
-@@ -18,7 +18,7 @@
- #
-
- find_package(Boost 1.53.0 REQUIRED)
--include_directories(SYSTEM "${Boost_INCLUDE_DIRS}")
-+include_directories(${Boost_INCLUDE_DIRS})
-
- #Make sure gen-cpp files can be included
- include_directories("${CMAKE_CURRENT_BINARY_DIR}")
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/thrift/thrift-0.9.3/0002-THRIFT-3831-in-test-cpp-explicitly-use-signed-char.patch b/meta-openembedded/meta-oe/recipes-connectivity/thrift/thrift-0.9.3/0002-THRIFT-3831-in-test-cpp-explicitly-use-signed-char.patch
deleted file mode 100644
index 37715c2..0000000
--- a/meta-openembedded/meta-oe/recipes-connectivity/thrift/thrift-0.9.3/0002-THRIFT-3831-in-test-cpp-explicitly-use-signed-char.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-From 7b05a74432f08ef34d0f8743dd6438ad012e3b5e Mon Sep 17 00:00:00 2001
-From: Cody P Schafer <dev@codyps.com>
-Date: Fri, 9 Sep 2016 15:50:26 -0400
-Subject: [PATCH] THRIFT-3831 in test/cpp explicitly use `signed char`
-
-`char`'s signed-ness is implimentation dependent, and in the case where
-`char` was not signed, we previously recieved errors like
-
- thrift/0.9.3-r0/git/test/cpp/src/TestClient.cpp:404:15: error: narrowing conversion of '-127' from 'int' to 'char' inside { } [-Wnarrowing]
-
-(This example from gcc-6 on arm)
-
----
- test/cpp/src/TestClient.cpp | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/test/cpp/src/TestClient.cpp b/test/cpp/src/TestClient.cpp
-index 7c425a9..7145ebb 100644
---- a/test/cpp/src/TestClient.cpp
-+++ b/test/cpp/src/TestClient.cpp
-@@ -381,7 +381,7 @@ int main(int argc, char** argv) {
- * BINARY TEST
- */
- printf("testBinary([-128..127]) = {");
-- const char bin_data[256]
-+ const signed char bin_data[256]
- = {-128, -127, -126, -125, -124, -123, -122, -121, -120, -119, -118, -117, -116, -115, -114,
- -113, -112, -111, -110, -109, -108, -107, -106, -105, -104, -103, -102, -101, -100, -99,
- -98, -97, -96, -95, -94, -93, -92, -91, -90, -89, -88, -87, -86, -85, -84,
-@@ -402,7 +402,7 @@ int main(int argc, char** argv) {
- 127};
- try {
- string bin_result;
-- testClient.testBinary(bin_result, string(bin_data, 256));
-+ testClient.testBinary(bin_result, string(reinterpret_cast<const char *>(bin_data), 256));
- if (bin_result.size() != 256) {
- printf("}\n*** FAILED ***\n");
- printf("invalid length: %lu\n", bin_result.size());
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/thrift/thrift-0.9.3/0004-THRIFT-3207-enable-build-with-OpenSSL-1.1.0-series.patch b/meta-openembedded/meta-oe/recipes-connectivity/thrift/thrift-0.9.3/0004-THRIFT-3207-enable-build-with-OpenSSL-1.1.0-series.patch
deleted file mode 100644
index 500cfab..0000000
--- a/meta-openembedded/meta-oe/recipes-connectivity/thrift/thrift-0.9.3/0004-THRIFT-3207-enable-build-with-OpenSSL-1.1.0-series.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-From 5f2c7e50b99d72177250c44236c41b99bfc161b5 Mon Sep 17 00:00:00 2001
-From: Andrej Valek <andrej.valek@siemens.com>
-Date: Thu, 7 Jun 2018 15:21:06 +0200
-Subject: [PATCH 4/6] %% original patch:
- 0004-THRIFT-3207-enable-build-with-OpenSSL-1.1.0-series.patch
-
----
- lib/cpp/src/thrift/transport/TSSLSocket.cpp | 6 ++++++
- 1 file changed, 6 insertions(+)
-
-diff --git a/lib/cpp/src/thrift/transport/TSSLSocket.cpp b/lib/cpp/src/thrift/transport/TSSLSocket.cpp
-index 98c5326..3da9e45 100644
---- a/lib/cpp/src/thrift/transport/TSSLSocket.cpp
-+++ b/lib/cpp/src/thrift/transport/TSSLSocket.cpp
-@@ -39,6 +39,7 @@
- #include <thrift/transport/PlatformSocket.h>
-
- #define OPENSSL_VERSION_NO_THREAD_ID 0x10000000L
-+#define OPENSSL_VERSION_WITH_TLSv1_1_AND_TLSv1_2 0x10100000L
-
- using namespace std;
- using namespace apache::thrift::concurrency;
-@@ -143,10 +144,15 @@ SSLContext::SSLContext(const SSLProtocol& protocol) {
- ctx_ = SSL_CTX_new(SSLv3_method());
- } else if (protocol == TLSv1_0) {
- ctx_ = SSL_CTX_new(TLSv1_method());
-+#if (OPENSSL_VERSION_NUMBER >= OPENSSL_VERSION_WITH_TLSv1_1_AND_TLSv1_2)
- } else if (protocol == TLSv1_1) {
- ctx_ = SSL_CTX_new(TLSv1_1_method());
- } else if (protocol == TLSv1_2) {
- ctx_ = SSL_CTX_new(TLSv1_2_method());
-+#else
-+ //Support for this versions will end on 2016-12-31
-+ //https://www.openssl.org/about/releasestrat.html
-+#endif
- } else {
- /// UNKNOWN PROTOCOL!
- throw TSSLException("SSL_CTX_new: Unknown protocol");
---
-2.19.0
-
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/thrift/thrift-0.9.3/0005-THRIFT-3878-Compile-error-in-TSSLSocket.cpp-with-new.patch b/meta-openembedded/meta-oe/recipes-connectivity/thrift/thrift-0.9.3/0005-THRIFT-3878-Compile-error-in-TSSLSocket.cpp-with-new.patch
deleted file mode 100644
index f4482b1..0000000
--- a/meta-openembedded/meta-oe/recipes-connectivity/thrift/thrift-0.9.3/0005-THRIFT-3878-Compile-error-in-TSSLSocket.cpp-with-new.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From 81f36e7174097a1f1f3e7f94a97574b2ec68577f Mon Sep 17 00:00:00 2001
-From: "James E. King, III" <jim.king@simplivity.com>
-Date: Thu, 29 Sep 2016 15:04:09 -0400
-Subject: [PATCH] THRIFT-3878: fix interop with newer OpenSSL libraries
-
----
- lib/cpp/src/thrift/transport/TSSLSocket.cpp | 5 +++++
- 1 file changed, 5 insertions(+)
-
-diff --git a/lib/cpp/src/thrift/transport/TSSLSocket.cpp b/lib/cpp/src/thrift/transport/TSSLSocket.cpp
-index 3da9e45..0a3a124 100644
---- a/lib/cpp/src/thrift/transport/TSSLSocket.cpp
-+++ b/lib/cpp/src/thrift/transport/TSSLSocket.cpp
-@@ -97,7 +97,12 @@ void initializeOpenSSL() {
- SSL_library_init();
- SSL_load_error_strings();
- // static locking
-+ // newer versions of OpenSSL changed CRYPTO_num_locks - see THRIFT-3878
-+#ifdef CRYPTO_num_locks
-+ mutexes = boost::shared_array<Mutex>(new Mutex[CRYPTO_num_locks()]);
-+#else
- mutexes = boost::shared_array<Mutex>(new Mutex[ ::CRYPTO_num_locks()]);
-+#endif
- if (mutexes == NULL) {
- throw TTransportException(TTransportException::INTERNAL_ERROR,
- "initializeOpenSSL() failed, "
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/thrift/thrift-0.9.3/0006-THRIFT-3736-C++-library-build-fails-if-OpenSSL-does-.patch b/meta-openembedded/meta-oe/recipes-connectivity/thrift/thrift-0.9.3/0006-THRIFT-3736-C++-library-build-fails-if-OpenSSL-does-.patch
deleted file mode 100644
index dfaa2fb..0000000
--- a/meta-openembedded/meta-oe/recipes-connectivity/thrift/thrift-0.9.3/0006-THRIFT-3736-C++-library-build-fails-if-OpenSSL-does-.patch
+++ /dev/null
@@ -1,46 +0,0 @@
-From 4cd49f470ca983369451d1141acc80fe1115cab4 Mon Sep 17 00:00:00 2001
-From: Nobuaki Sukegawa <nsuke@apache.org>
-Date: Sun, 13 Mar 2016 08:55:38 +0900
-Subject: [PATCH] THRIFT-3736 C++ library build fails if OpenSSL does not
-
- surrpot SSLv3
-
----
- lib/cpp/src/thrift/transport/TSSLSocket.cpp | 2 ++
- lib/cpp/test/SecurityTest.cpp | 8 ++++++++
- 2 files changed, 10 insertions(+)
-
-diff --git a/lib/cpp/src/thrift/transport/TSSLSocket.cpp b/lib/cpp/src/thrift/transport/TSSLSocket.cpp
-index 0a3a124..3e79354 100644
---- a/lib/cpp/src/thrift/transport/TSSLSocket.cpp
-+++ b/lib/cpp/src/thrift/transport/TSSLSocket.cpp
-@@ -145,8 +145,10 @@ static char uppercase(char c);
- SSLContext::SSLContext(const SSLProtocol& protocol) {
- if (protocol == SSLTLS) {
- ctx_ = SSL_CTX_new(SSLv23_method());
-+#ifndef OPENSSL_NO_SSL3
- } else if (protocol == SSLv3) {
- ctx_ = SSL_CTX_new(SSLv3_method());
-+#endif
- } else if (protocol == TLSv1_0) {
- ctx_ = SSL_CTX_new(TLSv1_method());
- #if (OPENSSL_VERSION_NUMBER >= OPENSSL_VERSION_WITH_TLSv1_1_AND_TLSv1_2)
-diff --git a/lib/cpp/test/SecurityTest.cpp b/lib/cpp/test/SecurityTest.cpp
-index 213efd4..08110e7 100644
---- a/lib/cpp/test/SecurityTest.cpp
-+++ b/lib/cpp/test/SecurityTest.cpp
-@@ -239,6 +239,14 @@ BOOST_AUTO_TEST_CASE(ssl_security_matrix)
- continue;
- }
-
-+#ifdef OPENSSL_NO_SSL3
-+ if (si == 2 || ci == 2)
-+ {
-+ // Skip all SSLv3 cases - protocol not supported
-+ continue;
-+ }
-+#endif
-+
- boost::mutex::scoped_lock lock(mMutex);
-
- BOOST_TEST_MESSAGE(boost::format("TEST: Server = %1%, Client = %2%")
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/thrift/thrift_0.12.0.bb b/meta-openembedded/meta-oe/recipes-connectivity/thrift/thrift_0.12.0.bb
new file mode 100644
index 0000000..1c69951
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-connectivity/thrift/thrift_0.12.0.bb
@@ -0,0 +1,66 @@
+SUMMARY = "Apache Thrift"
+DESCRIPTION = "A software framework, for scalable cross-language services development"
+HOMEPAGE = "https://thrift.apache.org/"
+
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=394465e125cffc0f133695ed43f14047 \
+ file://NOTICE;md5=42748ae4646b45fbfa5182807321fb6c"
+
+DEPENDS = "thrift-native boost flex-native bison-native openssl"
+
+SRC_URI = "https://www-eu.apache.org/dist/thrift//${PV}/${BPN}-${PV}.tar.gz"
+
+SRC_URI[md5sum] = "3deebbb4d1ca77dd9c9e009a1ea02183"
+SRC_URI[sha256sum] = "c336099532b765a6815173f62df0ed897528a9d551837d627c1f87fadad90428"
+
+BBCLASSEXTEND = "native nativesdk"
+
+inherit pkgconfig cmake pythonnative
+
+export STAGING_INCDIR
+export STAGING_LIBDIR
+export BUILD_SYS
+export HOST_SYS
+
+EXTRA_OECMAKE = " \
+ -DENABLE_PRECOMPILED_HEADERS=OFF \
+ -DBUILD_LIBRARIES=ON \
+ -DBUILD_COMPILER=ON \
+ -DBUILD_TESTING=OFF \
+ -DBUILD_EXAMPLES=OFF \
+ -DBUILD_TUTORIALS=OFF \
+ -DWITH_CPP=ON \
+ -DWITH_JAVA=OFF \
+ -DWITH_PYTHON=OFF \
+ -DWITH_STATIC_LIB=ON \
+ -DWITH_SHARED_LIB=ON \
+ -DWITH_OPENSSL=ON \
+ -DWITH_QT4=OFF \
+ -DWITH_QT5=OFF \
+ -DWITH_BOOST_FUNCTIONAL=OFF \
+"
+
+PACKAGECONFIG ??= "libevent glib boost-smart-ptr"
+PACKAGECONFIG[libevent] = "-DWITH_LIBEVENT=ON,-DWITH_LIBEVENT=OFF,libevent"
+PACKAGECONFIG[glib] = "-DWITH_C_GLIB=ON,-DWITH_C_GLIB=OFF,glib-2.0"
+PACKAGECONFIG[boost-smart-ptr] = "-DWITH_BOOST_SMART_PTR=ON,-DWITH_BOOST_SMART_PTR=OFF,boost"
+
+do_install_append () {
+ ln -sf thrift ${D}/${bindir}/thrift-compiler
+}
+
+LEAD_SONAME = "libthrift.so.${PV}"
+
+# thrift packages
+PACKAGE_BEFORE_PN = "${PN}-compiler lib${BPN} lib${BPN}z lib${BPN}nb lib${BPN}-c-glib"
+FILES_lib${BPN} = "${libdir}/libthrift.so.*"
+FILES_lib${BPN}z = "${libdir}/libthriftz.so.*"
+FILES_lib${BPN}nb = "${libdir}/libthriftnb.so.*"
+FILES_lib${BPN}-c-glib = "${libdir}/libthrift_c_glib.so.*"
+FILES_${PN}-compiler = "${bindir}/*"
+
+# The thrift packages just pulls in some default dependencies but is otherwise empty
+RRECOMMENDS_${PN} = "${PN}-compiler lib${BPN}"
+ALLOW_EMPTY_${PN} = "1"
+RRECOMMENDS_${PN}_class-native = ""
+RRECOMMENDS_${PN}_class-nativesdk = ""
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/thrift/thrift_0.9.3.bb b/meta-openembedded/meta-oe/recipes-connectivity/thrift/thrift_0.9.3.bb
deleted file mode 100644
index 7ab7402..0000000
--- a/meta-openembedded/meta-oe/recipes-connectivity/thrift/thrift_0.9.3.bb
+++ /dev/null
@@ -1,67 +0,0 @@
-SUMMARY = "Apache Thrift"
-DESCRIPTION = "A software framework, for scalable cross-language services development"
-HOMEPAGE = "https://thrift.apache.org/"
-
-LICENSE = "Apache-2.0"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=e4ed21f679b2aafef26eac82ab0c2cbf \
- file://NOTICE;md5=115f49498b66b494b0472658f2bfe80b"
-
-DEPENDS = "thrift-native boost flex-native bison-native openssl"
-
-SRC_URI = "http://mirror.switch.ch/mirror/apache/dist/thrift/${PV}/${BPN}-${PV}.tar.gz \
- file://0001-Forcibly-disable-check-for-Qt5.patch \
- file://0001-THRIFT-3828-In-cmake-avoid-use-of-both-quoted-paths-.patch \
- file://0002-THRIFT-3831-in-test-cpp-explicitly-use-signed-char.patch \
- file://0004-THRIFT-3207-enable-build-with-OpenSSL-1.1.0-series.patch \
- file://0005-THRIFT-3878-Compile-error-in-TSSLSocket.cpp-with-new.patch \
- file://0006-THRIFT-3736-C++-library-build-fails-if-OpenSSL-does-.patch \
-"
-
-SRC_URI[md5sum] = "88d667a8ae870d5adeca8cb7d6795442"
-SRC_URI[sha256sum] = "b0740a070ac09adde04d43e852ce4c320564a292f26521c46b78e0641564969e"
-
-BBCLASSEXTEND = "native nativesdk"
-
-inherit pkgconfig cmake pythonnative
-
-export STAGING_INCDIR
-export STAGING_LIBDIR
-export BUILD_SYS
-export HOST_SYS
-
-EXTRA_OECMAKE = " \
- -DBUILD_LIBRARIES=ON \
- -DBUILD_COMPILER=ON \
- -DBUILD_TESTING=OFF \
- -DBUILD_EXAMPLES=OFF \
- -DBUILD_TUTORIALS=OFF \
- -DWITH_CPP=ON \
- -DWITH_JAVA=OFF \
- -DWITH_STATIC_LIB=ON \
- -DWITH_SHARED_LIB=ON \
- -DWITH_OPENSSL=ON \
- -DWITH_QT4=OFF \
- -DWITH_QT5=OFF \
-"
-
-PACKAGECONFIG ??= "libevent glib python"
-PACKAGECONFIG[libevent] = "-DWITH_LIBEVENT=ON,-DWITH_LIBEVENT=OFF,libevent,"
-PACKAGECONFIG[python] = "-DWITH_PYTHON=ON,-DWITH_PYTHON=OFF,python,"
-PACKAGECONFIG[glib] = "-DWITH_C_GLIB=ON,-DWITH_C_GLIB=OFF,glib-2.0 ,"
-
-do_install_append () {
- ln -sf thrift ${D}/${bindir}/thrift-compiler
-}
-
-LEAD_SONAME = "libthrift.so.${PV}"
-
-# thrift packages
-PACKAGE_BEFORE_PN = "${PN}-compiler lib${BPN}"
-FILES_lib${BPN} = "${libdir}/*.so.*"
-FILES_${PN}-compiler = "${bindir}/*"
-
-# The thrift packages just pulls in some default dependencies but is otherwise empty
-RRECOMMENDS_${PN} = "${PN}-compiler lib${BPN}"
-ALLOW_EMPTY_${PN} = "1"
-RRECOMMENDS_${PN}_class-native = ""
-RRECOMMENDS_${PN}_class-nativesdk = ""
diff --git a/meta-openembedded/meta-oe/recipes-core/libnfc/libnfc_git.bb b/meta-openembedded/meta-oe/recipes-core/libnfc/libnfc_git.bb
new file mode 100644
index 0000000..d00733b
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-core/libnfc/libnfc_git.bb
@@ -0,0 +1,14 @@
+SUMMARY = "Platform independent Near Field Communication (NFC) library"
+DESCRIPTION = "libnfc is a library which allows userspace application access \
+to NFC devices."
+LICENSE = "LGPLv3"
+LIC_FILES_CHKSUM = "file://COPYING;md5=b52f2d57d10c4f7ee67a7eb9615d5d24"
+SECTION = "libs"
+
+inherit autotools pkgconfig
+
+S = "${WORKDIR}/git"
+SRCREV = "c42e2502d4627d3ea62f83c32677b100bb3cebdc"
+SRC_URI = "git://github.com/nfc-tools/libnfc.git"
+
+DEPENDS = "libusb"
diff --git a/meta-openembedded/meta-oe/recipes-dbs/mongodb/mongodb_git.bb b/meta-openembedded/meta-oe/recipes-dbs/mongodb/mongodb_git.bb
index 53a9f66..0f90003 100644
--- a/meta-openembedded/meta-oe/recipes-dbs/mongodb/mongodb_git.bb
+++ b/meta-openembedded/meta-oe/recipes-dbs/mongodb/mongodb_git.bb
@@ -21,12 +21,16 @@
file://arm64-support.patch \
file://0001-IntelRDFPMathLib20U1-Check-for-__DEFINED_wchar_t.patch \
file://0001-Support-deprecated-resolver-functions.patch \
- file://0001-asio-Dont-use-experimental-with-clang.patch \
"
SRC_URI_append_libc-musl ="\
file://0002-Fix-default-stack-size-to-256K.patch \
file://0004-wiredtiger-Disable-strtouq-on-musl.patch \
"
+
+SRC_URI_append_toolchain-clang = "\
+ file://0001-asio-Dont-use-experimental-with-clang.patch \
+ "
+
S = "${WORKDIR}/git"
COMPATIBLE_HOST ?= '(x86_64|i.86|powerpc64|arm|aarch64).*-linux'
diff --git a/meta-openembedded/meta-oe/recipes-dbs/postgresql/postgresql.inc b/meta-openembedded/meta-oe/recipes-dbs/postgresql/postgresql.inc
index 85f1917..6e20231 100644
--- a/meta-openembedded/meta-oe/recipes-dbs/postgresql/postgresql.inc
+++ b/meta-openembedded/meta-oe/recipes-dbs/postgresql/postgresql.inc
@@ -72,6 +72,16 @@
EXTRA_OECONF_sh4 += "--disable-spinlocks"
EXTRA_OECONF_aarch64 += "--disable-spinlocks"
+DEBUG_OPTIMIZATION_remove_mips = " -Og"
+DEBUG_OPTIMIZATION_append_mips = " -O"
+BUILD_OPTIMIZATION_remove_mips = " -Og"
+BUILD_OPTIMIZATION_append_mips = " -O"
+
+DEBUG_OPTIMIZATION_remove_mipsel = " -Og"
+DEBUG_OPTIMIZATION_append_mipsel = " -O"
+BUILD_OPTIMIZATION_remove_mipsel = " -Og"
+BUILD_OPTIMIZATION_append_mipsel = " -O"
+
PACKAGES_DYNAMIC += "^${PN}-plperl \
^${PN}-pltcl \
^${PN}-plpython \
diff --git a/meta-openembedded/meta-oe/recipes-dbs/postgresql/postgresql_11.2.bb b/meta-openembedded/meta-oe/recipes-dbs/postgresql/postgresql_11.2.bb
deleted file mode 100644
index 0f59c8d..0000000
--- a/meta-openembedded/meta-oe/recipes-dbs/postgresql/postgresql_11.2.bb
+++ /dev/null
@@ -1,11 +0,0 @@
-require postgresql.inc
-
-LIC_FILES_CHKSUM = "file://COPYRIGHT;md5=87da2b84884860b71f5f24ab37e7da78"
-
-SRC_URI += "\
- file://not-check-libperl.patch \
- file://0001-Add-support-for-RISC-V.patch \
-"
-
-SRC_URI[md5sum] = "19d43be679cb0d55363feb8926af3a0f"
-SRC_URI[sha256sum] = "2676b9ce09c21978032070b6794696e0aa5a476e3d21d60afc036dc0a9c09405"
diff --git a/meta-openembedded/meta-oe/recipes-dbs/postgresql/postgresql_11.3.bb b/meta-openembedded/meta-oe/recipes-dbs/postgresql/postgresql_11.3.bb
new file mode 100644
index 0000000..ff9306c
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-dbs/postgresql/postgresql_11.3.bb
@@ -0,0 +1,11 @@
+require postgresql.inc
+
+LIC_FILES_CHKSUM = "file://COPYRIGHT;md5=87da2b84884860b71f5f24ab37e7da78"
+
+SRC_URI += "\
+ file://not-check-libperl.patch \
+ file://0001-Add-support-for-RISC-V.patch \
+"
+
+SRC_URI[md5sum] = "c2a729b754b8de86a969c86ec25db076"
+SRC_URI[sha256sum] = "2a85e082fc225944821dfd23990e32dfcd2284c19060864b0ad4ca537d30522d"
diff --git a/meta-openembedded/meta-oe/recipes-dbs/rocksdb/rocksdb_git.bb b/meta-openembedded/meta-oe/recipes-dbs/rocksdb/rocksdb_git.bb
index 27c7b20..8d84619 100644
--- a/meta-openembedded/meta-oe/recipes-dbs/rocksdb/rocksdb_git.bb
+++ b/meta-openembedded/meta-oe/recipes-dbs/rocksdb/rocksdb_git.bb
@@ -6,9 +6,9 @@
file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
file://LICENSE.leveldb;md5=fb04ff57a14f308f2eed4a9b87d45837"
-SRCREV = "a1774dde9a5bd51bc6ece5988781c6f28cc69d48"
+SRCREV = "641fae60f63619ed5d0c9d9e4c4ea5a0ffa3e253"
SRCBRANCH = "5.18.fb"
-PV = "5.18.2"
+PV = "5.18.3"
SRC_URI = "git://github.com/facebook/${BPN}.git;branch=${SRCBRANCH} \
file://0001-Disable-Wshadow-and-do-not-mark-default-copy-constru.patch \
diff --git a/meta-openembedded/meta-oe/recipes-devtools/cloud9/cloud9/cloud9-avahi.service b/meta-openembedded/meta-oe/recipes-devtools/cloud9/cloud9/cloud9-avahi.service
deleted file mode 100644
index cb9b6e2..0000000
--- a/meta-openembedded/meta-oe/recipes-devtools/cloud9/cloud9/cloud9-avahi.service
+++ /dev/null
@@ -1,10 +0,0 @@
-<?xml version="1.0" standalone='no'?><!--*-nxml-*-->
-<!DOCTYPE service-group SYSTEM "avahi-service.dtd">
-
-<service-group>
- <name replace-wildcards="yes">Cloud9 IDE on %h</name>
- <service>
- <type>_http._tcp</type>
- <port>3000</port>
- </service>
-</service-group>
diff --git a/meta-openembedded/meta-oe/recipes-devtools/cloud9/cloud9/cloud9.service b/meta-openembedded/meta-oe/recipes-devtools/cloud9/cloud9/cloud9.service
deleted file mode 100644
index 495b131..0000000
--- a/meta-openembedded/meta-oe/recipes-devtools/cloud9/cloud9/cloud9.service
+++ /dev/null
@@ -1,11 +0,0 @@
-[Unit]
-Description=Cloud9 IDE
-ConditionPathExists=|/var/lib/cloud9
-
-[Service]
-Restart=always
-EnvironmentFile=-/etc/default/node
-ExecStart=/usr/bin/node4 /usr/share/cloud9/bin/cloud9.js -l 0.0.0.0 -w /var/lib/cloud9 -p 3000
-
-[Install]
-WantedBy=multi-user.target
diff --git a/meta-openembedded/meta-oe/recipes-devtools/cloud9/cloud9/index.js b/meta-openembedded/meta-oe/recipes-devtools/cloud9/cloud9/index.js
deleted file mode 100644
index 88c9a19..0000000
--- a/meta-openembedded/meta-oe/recipes-devtools/cloud9/cloud9/index.js
+++ /dev/null
@@ -1,2 +0,0 @@
-var o3 = require('./o3.js')
-module.exports = o3.xml;
diff --git a/meta-openembedded/meta-oe/recipes-devtools/doxygen/doxygen/0001-Fix-6906.patch b/meta-openembedded/meta-oe/recipes-devtools/doxygen/doxygen/0001-Fix-6906.patch
new file mode 100644
index 0000000..bbebc4d
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/doxygen/doxygen/0001-Fix-6906.patch
@@ -0,0 +1,94 @@
+From 81b213b98f51ec3eed5774f6f797c074ac35db3e Mon Sep 17 00:00:00 2001
+From: Ton van den Heuvel <tonvandenheuvel@gmail.com>
+Date: Mon, 6 May 2019 15:17:28 +0200
+Subject: [PATCH] Fix #6906
+
+Generate configvalues.h only as a dependency for the VHDL parser. Fixes
+a problem in combination with Ninja v1.9.0 because of duplicate rules
+for generating configvalues.h.
+
+Upstream-Status: Backport
+Signed-off-by: Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>
+---
+ addon/doxyapp/CMakeLists.txt | 8 --------
+ addon/doxyparse/CMakeLists.txt | 8 --------
+ src/CMakeLists.txt | 4 ++++
+ vhdlparser/CMakeLists.txt | 12 +++---------
+ 4 files changed, 7 insertions(+), 25 deletions(-)
+
+diff --git a/addon/doxyapp/CMakeLists.txt b/addon/doxyapp/CMakeLists.txt
+index a7377112..0aaf4655 100644
+--- a/addon/doxyapp/CMakeLists.txt
++++ b/addon/doxyapp/CMakeLists.txt
+@@ -1,11 +1,3 @@
+-# configvalues.h
+-add_custom_command(
+- COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/src/configgen.py -maph ${CMAKE_SOURCE_DIR}/src/config.xml > ${GENERATED_SRC}/configvalues.h
+- DEPENDS ${CMAKE_SOURCE_DIR}/src/config.xml ${CMAKE_SOURCE_DIR}/src/configgen.py
+- OUTPUT ${GENERATED_SRC}/configvalues.h
+-)
+-set_source_files_properties(${GENERATED_SRC}/configvalues.h PROPERTIES GENERATED 1)
+-
+ find_package(Iconv)
+
+ include_directories(
+diff --git a/addon/doxyparse/CMakeLists.txt b/addon/doxyparse/CMakeLists.txt
+index ff198fb4..1620c72e 100644
+--- a/addon/doxyparse/CMakeLists.txt
++++ b/addon/doxyparse/CMakeLists.txt
+@@ -1,11 +1,3 @@
+-# configvalues.h
+-add_custom_command(
+- COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/src/configgen.py -maph ${CMAKE_SOURCE_DIR}/src/config.xml > ${GENERATED_SRC}/configvalues.h
+- DEPENDS ${CMAKE_SOURCE_DIR}/src/config.xml ${CMAKE_SOURCE_DIR}/src/configgen.py
+- OUTPUT ${GENERATED_SRC}/configvalues.h
+-)
+-set_source_files_properties(${GENERATED_SRC}/configvalues.h PROPERTIES GENERATED 1)
+-
+ find_package(Iconv)
+
+ include_directories(
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index 92a302ab..37a21ff6 100644
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -43,6 +43,10 @@ add_custom_command(
+ OUTPUT ${GENERATED_SRC}/configvalues.h
+ )
+ set_source_files_properties(${GENERATED_SRC}/configvalues.h PROPERTIES GENERATED 1)
++add_custom_target(
++ generate_configvalues_header
++ DEPENDS ${GENERATED_SRC}/configvalues.h
++)
+
+ # configvalues.cpp
+ add_custom_command(
+diff --git a/vhdlparser/CMakeLists.txt b/vhdlparser/CMakeLists.txt
+index 71e97df5..f89008c5 100644
+--- a/vhdlparser/CMakeLists.txt
++++ b/vhdlparser/CMakeLists.txt
+@@ -1,14 +1,5 @@
+-# configvalues.h
+-add_custom_command(
+- COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/src/configgen.py -maph ${CMAKE_SOURCE_DIR}/src/config.xml > ${GENERATED_SRC}/configvalues.h
+- DEPENDS ${CMAKE_SOURCE_DIR}/src/config.xml ${CMAKE_SOURCE_DIR}/src/configgen.py
+- OUTPUT ${GENERATED_SRC}/configvalues.h
+-)
+-set_source_files_properties(${GENERATED_SRC}/configvalues.h PROPERTIES GENERATED 1)
+-
+ include_directories(${CMAKE_SOURCE_DIR}/src ${CMAKE_SOURCE_DIR}/qtools ${GENERATED_SRC})
+ add_library(vhdlparser STATIC
+-${GENERATED_SRC}/configvalues.h
+ CharStream.cc
+ ParseException.cc
+ Token.cc
+@@ -17,3 +8,6 @@ VhdlParser.cc
+ VhdlParserTokenManager.cc
+ VhdlParserIF.cpp
+ )
++add_dependencies(vhdlparser
++ generate_configvalues_header
++)
+--
+2.17.1
+
diff --git a/meta-openembedded/meta-oe/recipes-devtools/doxygen/doxygen_1.8.15.bb b/meta-openembedded/meta-oe/recipes-devtools/doxygen/doxygen_1.8.15.bb
index 2435b58..b49fbd4 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/doxygen/doxygen_1.8.15.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/doxygen/doxygen_1.8.15.bb
@@ -7,15 +7,11 @@
DEPENDS = "flex-native bison-native"
SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BP}.src.tar.gz \
- file://0001-build-don-t-look-for-Iconv.patch"
+ file://0001-build-don-t-look-for-Iconv.patch \
+ file://0001-Fix-6906.patch"
SRC_URI[md5sum] = "2c98c73eba392d334f5bbaf15e09bae3"
SRC_URI[sha256sum] = "bd9c0ec462b6a9b5b41ede97bede5458e0d7bb40d4cfa27f6f622eb33c59245d"
inherit cmake python3native
-# Avoid the following error:
-# ninja: error: build.ninja:1948: multiple rules generate
-# generated_src/configvalues.h [-w dupbuild=err]
-EXTRA_OECMAKE_BUILD += "-w dupbuild=warn"
-
BBCLASSEXTEND = "native"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/jsoncpp/jsoncpp_1.8.4.bb b/meta-openembedded/meta-oe/recipes-devtools/jsoncpp/jsoncpp_1.8.4.bb
index 88e3320..97fc6c7 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/jsoncpp/jsoncpp_1.8.4.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/jsoncpp/jsoncpp_1.8.4.bb
@@ -19,3 +19,5 @@
inherit cmake
EXTRA_OECMAKE += "-DBUILD_SHARED_LIBS=ON -DJSONCPP_WITH_TESTS=OFF"
+
+BBCLASSEXTEND = "native"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/lua/lua_5.3.4.bb b/meta-openembedded/meta-oe/recipes-devtools/lua/lua_5.3.4.bb
deleted file mode 100644
index 8f4e8fe..0000000
--- a/meta-openembedded/meta-oe/recipes-devtools/lua/lua_5.3.4.bb
+++ /dev/null
@@ -1,59 +0,0 @@
-DESCRIPTION = "Lua is a powerful light-weight programming language designed \
-for extending applications."
-LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://doc/readme.html;beginline=318;endline=352;md5=60aa5cfdbd40086501778d9b6ebf29ee"
-HOMEPAGE = "http://www.lua.org/"
-
-DEPENDS = "readline"
-SRC_URI = "http://www.lua.org/ftp/lua-${PV}.tar.gz;name=tarballsrc \
- file://lua.pc.in \
- "
-SRC_URI += "${@bb.utils.contains('DISTRO_FEATURES', 'ptest', \
- 'http://www.lua.org/tests/lua-${PV}-tests.tar.gz;name=tarballtest \
- file://run-ptest \
- ', '', d)}"
-
-SRC_URI[tarballsrc.md5sum] = "53a9c68bcc0eda58bdc2095ad5cdfc63"
-SRC_URI[tarballsrc.sha256sum] = "f681aa518233bc407e23acf0f5887c884f17436f000d453b2491a9f11a52400c"
-SRC_URI[tarballtest.md5sum] = "b14fe3748c1cb2d74e3acd1943629ba3"
-SRC_URI[tarballtest.sha256sum] = "b80771238271c72565e5a1183292ef31bd7166414cd0d43a8eb79845fa7f599f"
-
-inherit pkgconfig binconfig ptest
-
-UCLIBC_PATCHES += "file://uclibc-pthread.patch"
-SRC_URI_append_libc-uclibc = "${UCLIBC_PATCHES}"
-
-TARGET_CC_ARCH += " -fPIC ${LDFLAGS}"
-EXTRA_OEMAKE = "'CC=${CC} -fPIC' 'MYCFLAGS=${CFLAGS} -DLUA_USE_LINUX -fPIC' MYLDFLAGS='${LDFLAGS}'"
-
-do_configure_prepend() {
- sed -i -e s:/usr/local:${prefix}:g src/luaconf.h
-}
-
-do_compile () {
- oe_runmake linux
-}
-
-do_install () {
- oe_runmake \
- 'INSTALL_TOP=${D}${prefix}' \
- 'INSTALL_BIN=${D}${bindir}' \
- 'INSTALL_INC=${D}${includedir}/' \
- 'INSTALL_MAN=${D}${mandir}/man1' \
- 'INSTALL_SHARE=${D}${datadir}/lua' \
- 'INSTALL_LIB=${D}${libdir}' \
- 'INSTALL_CMOD=${D}${libdir}/lua/5.3' \
- install
- install -d ${D}${libdir}/pkgconfig
-
- sed -e s/@VERSION@/${PV}/ ${WORKDIR}/lua.pc.in > ${WORKDIR}/lua.pc
- install -m 0644 ${WORKDIR}/lua.pc ${D}${libdir}/pkgconfig/
- rmdir ${D}${datadir}/lua/5.3
- rmdir ${D}${datadir}/lua
-}
-
-do_install_ptest () {
- cp -R --no-dereference --preserve=mode,links -v ${WORKDIR}/lua-${PV}-tests ${D}${PTEST_PATH}/test
-}
-
-BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/lua/lua_5.3.5.bb b/meta-openembedded/meta-oe/recipes-devtools/lua/lua_5.3.5.bb
new file mode 100644
index 0000000..265e251
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/lua/lua_5.3.5.bb
@@ -0,0 +1,63 @@
+DESCRIPTION = "Lua is a powerful light-weight programming language designed \
+for extending applications."
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://doc/readme.html;beginline=318;endline=352;md5=60aa5cfdbd40086501778d9b6ebf29ee"
+HOMEPAGE = "http://www.lua.org/"
+
+DEPENDS = "readline"
+SRC_URI = "http://www.lua.org/ftp/lua-${PV}.tar.gz;name=tarballsrc \
+ file://lua.pc.in \
+ "
+
+# if no test suite matches PV release of Lua exactly, download the suite for the closest Lua release.
+PV_testsuites = "5.3.4"
+
+SRC_URI += "${@bb.utils.contains('DISTRO_FEATURES', 'ptest', \
+ 'http://www.lua.org/tests/lua-${PV_testsuites}-tests.tar.gz;name=tarballtest \
+ file://run-ptest \
+ ', '', d)}"
+
+SRC_URI[tarballsrc.md5sum] = "4f4b4f323fd3514a68e0ab3da8ce3455"
+SRC_URI[tarballsrc.sha256sum] = "0c2eed3f960446e1a3e4b9a1ca2f3ff893b6ce41942cf54d5dd59ab4b3b058ac"
+SRC_URI[tarballtest.md5sum] = "b14fe3748c1cb2d74e3acd1943629ba3"
+SRC_URI[tarballtest.sha256sum] = "b80771238271c72565e5a1183292ef31bd7166414cd0d43a8eb79845fa7f599f"
+
+inherit pkgconfig binconfig ptest
+
+UCLIBC_PATCHES += "file://uclibc-pthread.patch"
+SRC_URI_append_libc-uclibc = "${UCLIBC_PATCHES}"
+
+TARGET_CC_ARCH += " -fPIC ${LDFLAGS}"
+EXTRA_OEMAKE = "'CC=${CC} -fPIC' 'MYCFLAGS=${CFLAGS} -DLUA_USE_LINUX -fPIC' MYLDFLAGS='${LDFLAGS}'"
+
+do_configure_prepend() {
+ sed -i -e s:/usr/local:${prefix}:g src/luaconf.h
+}
+
+do_compile () {
+ oe_runmake linux
+}
+
+do_install () {
+ oe_runmake \
+ 'INSTALL_TOP=${D}${prefix}' \
+ 'INSTALL_BIN=${D}${bindir}' \
+ 'INSTALL_INC=${D}${includedir}/' \
+ 'INSTALL_MAN=${D}${mandir}/man1' \
+ 'INSTALL_SHARE=${D}${datadir}/lua' \
+ 'INSTALL_LIB=${D}${libdir}' \
+ 'INSTALL_CMOD=${D}${libdir}/lua/5.3' \
+ install
+ install -d ${D}${libdir}/pkgconfig
+
+ sed -e s/@VERSION@/${PV}/ ${WORKDIR}/lua.pc.in > ${WORKDIR}/lua.pc
+ install -m 0644 ${WORKDIR}/lua.pc ${D}${libdir}/pkgconfig/
+ rmdir ${D}${datadir}/lua/5.3
+ rmdir ${D}${datadir}/lua
+}
+
+do_install_ptest () {
+ cp -R --no-dereference --preserve=mode,links -v ${WORKDIR}/lua-${PV_testsuites}-tests ${D}${PTEST_PATH}/test
+}
+
+BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/perl/libdbd-mysql-perl/0001-Use-API-function-for-reconnect.patch b/meta-openembedded/meta-oe/recipes-devtools/perl/libdbd-mysql-perl/0001-Use-API-function-for-reconnect.patch
deleted file mode 100644
index 60d88c3..0000000
--- a/meta-openembedded/meta-oe/recipes-devtools/perl/libdbd-mysql-perl/0001-Use-API-function-for-reconnect.patch
+++ /dev/null
@@ -1,53 +0,0 @@
-From edb6b202b7e233864aa5dd84532646c50097b0b8 Mon Sep 17 00:00:00 2001
-From: Mingli Yu <mingli.yu@windriver.com>
-Date: Mon, 4 Mar 2019 00:49:17 -0800
-Subject: [PATCH] Use API function for reconnect
-
-For configuring reconnect functionality use standard API function
-MYSQL_OPT_RECONNECT instead of direct modification of internal structures
-which does not work for MariaDB. Fixes compilation with MariaDB 10.2.6+.
-
-Upstream-Status: Backport [https://github.com/perl5-dbi/DBD-mysql/commit/0b1884f4153d3de0a91bae4d3b3cc1771ffdf4f3]
-
-Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
----
- dbdimp.c | 16 ++++++++++------
- 1 file changed, 10 insertions(+), 6 deletions(-)
-
-diff --git a/dbdimp.c b/dbdimp.c
-index 9b8b313..3bed213 100644
---- a/dbdimp.c
-+++ b/dbdimp.c
-@@ -1979,6 +1979,16 @@ MYSQL *mysql_dr_connect(
-
- if (result)
- {
-+ /*
-+ we turn off Mysql's auto reconnect and handle re-connecting ourselves
-+ so that we can keep track of when this happens.
-+ */
-+#if MYSQL_VERSION_ID >= 50013
-+ my_bool reconnect = FALSE;
-+ mysql_options(result, MYSQL_OPT_RECONNECT, &reconnect);
-+#else
-+ result->reconnect = 0;
-+#endif
- #if MYSQL_VERSION_ID >=SERVER_PREPARE_VERSION
- /* connection succeeded. */
- /* imp_dbh == NULL when mysql_dr_connect() is called from mysql.xs
-@@ -1992,12 +2002,6 @@ MYSQL *mysql_dr_connect(
- imp_dbh->async_query_in_flight = NULL;
- }
- #endif
--
-- /*
-- we turn off Mysql's auto reconnect and handle re-connecting ourselves
-- so that we can keep track of when this happens.
-- */
-- result->reconnect=0;
- }
- else {
- /*
---
-2.17.1
-
diff --git a/meta-openembedded/meta-oe/recipes-devtools/perl/libdbd-mysql-perl_4.043.bb b/meta-openembedded/meta-oe/recipes-devtools/perl/libdbd-mysql-perl_4.043.bb
deleted file mode 100644
index e185f48..0000000
--- a/meta-openembedded/meta-oe/recipes-devtools/perl/libdbd-mysql-perl_4.043.bb
+++ /dev/null
@@ -1,26 +0,0 @@
-SUMMARY = "A Perl DBI driver for MySQL"
-DESCRIPTION = "DBD::mysql is the Perl5 Database Interface driver for \
-the MySQL database. In other words: DBD::mysql is an interface between \
-the Perl programming language and the MySQL programming API that comes \
-with the MySQL relational database management system. Most functions \
-provided by this programming API are supported. Some rarely used \
-functions are missing, mainly because no-one ever requested them. \
-"
-HOMEPAGE = "http://search.cpan.org/~michielb/DBD-mysql-4.036/lib/DBD/mysql.pm"
-
-SECTION = "libs"
-LICENSE = "Artistic-1.0 | GPL-1.0+"
-DEPENDS += "libdbi-perl-native libmysqlclient"
-
-LIC_FILES_CHKSUM = "file://LICENSE;md5=d0a06964340e5c0cde88b7af611f755c"
-
-SRC_URI = "http://search.cpan.org/CPAN/authors/id/M/MI/MICHIELB/DBD-mysql-${PV}.tar.gz \
- file://0001-Use-API-function-for-reconnect.patch \
-"
-
-SRC_URI[md5sum] = "4a00dd7f1c057931147c65dfc4901c36"
-SRC_URI[sha256sum] = "629f865e8317f52602b2f2efd2b688002903d2e4bbcba5427cb6188b043d6f99"
-
-S = "${WORKDIR}/DBD-mysql-${PV}"
-
-inherit cpan
diff --git a/meta-openembedded/meta-oe/recipes-devtools/perl/libdbd-mysql-perl_4.050.bb b/meta-openembedded/meta-oe/recipes-devtools/perl/libdbd-mysql-perl_4.050.bb
new file mode 100644
index 0000000..049dc66
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/perl/libdbd-mysql-perl_4.050.bb
@@ -0,0 +1,22 @@
+SUMMARY = "A Perl DBI driver for MySQL"
+DESCRIPTION = "DBD::mysql is the Perl5 Database Interface driver for \
+the MySQL database. In other words: DBD::mysql is an interface between \
+the Perl programming language and the MySQL programming API that comes \
+with the MySQL relational database management system. Most functions \
+provided by this programming API are supported. Some rarely used \
+functions are missing, mainly because no-one ever requested them. \
+"
+HOMEPAGE = "https://github.com/perl5-dbi/DBD-mysql"
+
+SECTION = "libs"
+LICENSE = "Artistic-1.0 | GPL-1.0+"
+DEPENDS += "libdev-checklib-perl-native libdbi-perl-native libmysqlclient"
+
+LIC_FILES_CHKSUM = "file://LICENSE;md5=d0a06964340e5c0cde88b7af611f755c"
+
+SRCREV = "9b5b70ea372f49fe9bc9e592dae3870596d1e3d6"
+SRC_URI = "git://github.com/perl5-dbi/DBD-mysql.git;protocol=https"
+
+S = "${WORKDIR}/git"
+
+inherit cpan
diff --git a/meta-openembedded/meta-oe/recipes-devtools/perl/libdbi-perl_1.642.bb b/meta-openembedded/meta-oe/recipes-devtools/perl/libdbi-perl_1.642.bb
index 3c03164..ff4a9d0 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/perl/libdbi-perl_1.642.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/perl/libdbi-perl_1.642.bb
@@ -7,10 +7,11 @@
HOMEPAGE = "http://search.cpan.org/dist/DBI/"
SECTION = "libs"
LICENSE = "Artistic-1.0 | GPL-1.0+"
-RDEPENDS_${PN} = " perl-module-carp \
- perl-module-exporter \
- perl-module-exporter-heavy \
- perl-module-dynaloader \
+RDEPENDS_${PN}_class-target = " \
+ perl-module-carp \
+ perl-module-exporter \
+ perl-module-exporter-heavy \
+ perl-module-dynaloader \
"
LIC_FILES_CHKSUM = "file://LICENSE;md5=10982c7148e0a012c0fd80534522f5c5"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/perl/libdev-checklib-perl/0001-CheckLib.pm-don-t-execute-the-binary.patch b/meta-openembedded/meta-oe/recipes-devtools/perl/libdev-checklib-perl/0001-CheckLib.pm-don-t-execute-the-binary.patch
new file mode 100644
index 0000000..78a7e63
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/perl/libdev-checklib-perl/0001-CheckLib.pm-don-t-execute-the-binary.patch
@@ -0,0 +1,46 @@
+From d111fd85b25466f7829ccee34493aa0e3b551308 Mon Sep 17 00:00:00 2001
+From: Mingli Yu <mingli.yu@windriver.com>
+Date: Tue, 23 Apr 2019 19:13:19 -0700
+Subject: [PATCH] CheckLib.pm: don't execute the binary
+
+Don't execute the binary in build env as the
+binary which is generated in cross compile env
+may fail when executed in build env.
+
+And it's enough to verify the libs via successully
+generate the binary which links the libs as below.
+ $ /yocto/builds/upgrade1/tmp/work/core2-64-poky-linux/libdbd-mysql-perl/4.050-r0/recipe-sysroot-native/usr/bin/x86_64-poky-linux/x86_64-poky-linux-gcc \
+ -m64 -march=core2 -mtune=core2 -msse3 -mfpmath=sse -fstack-protector-strong -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security \
+ -Werror=format-security --sysroot=/yocto/builds/upgrade1/tmp/work/core2-64-poky-linux/libdbd-mysql-perl/4.050-r0/recipe-sysroot \
+ -O2 -pipe -g -feliminate-unused-debug-types -fmacro-prefix-map=/yocto/builds/upgrade1/tmp/work/core2-64-poky-linux/perl/5.28.1-r1=/usr/src/debug/perl/5.28.1-r1 \
+ -fdebug-prefix-map=/yocto/builds/upgrade1/tmp/work/core2-64-poky-linux/perl/5.28.1-r1=/usr/src/debug/perl/5.28.1-r1 \
+ -fdebug-prefix-map=/yocto/builds/upgrade1/tmp/work/core2-64-poky-linux/libdbd-mysql-perl/4.050-r0/recipe-sysroot= -fdebug-prefix-map=/yocto/builds/upgrade1/tmp/work/core2-64-poky-linux/libdbd-mysql-perl/4.050-r0/recipe-sysroot-native= -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 assertlibEhx19yuY.c -L/yocto/builds/upgrade1/tmp/work/core2-64-poky-linux/libdbd-mysql-perl/4.050-r0/recipe-sysroot/usr/lib -lcrypto -fstack-protector-strong -o assertlibCOw_eujb
+
+Execute the binary in cross compile env as below
+and use the return status to determine the lib's
+checking status is not appropriate in cross compile env.
+ $ /yocto/builds/upgrade1/tmp/work/core2-64-poky-linux/libdbd-mysql-perl/4.050-r0/git/assertlibCOw_eujb
+
+Upstream-Status: Inappropriate[oe specific]
+
+Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
+---
+ lib/Devel/CheckLib.pm | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/lib/Devel/CheckLib.pm b/lib/Devel/CheckLib.pm
+index e45cfb4..d228bb5 100644
+--- a/lib/Devel/CheckLib.pm
++++ b/lib/Devel/CheckLib.pm
+@@ -424,7 +424,7 @@ sub assert_lib {
+ my $absexefile = File::Spec->rel2abs($exefile);
+ $absexefile = '"'.$absexefile.'"' if $absexefile =~ m/\s/;
+ if (!$not_execute && system($absexefile) != 0) {
+- push @wrongresult, $lib;
++ print "Checking the lib $lib\n";
+ }
+ else {
+ if ($analyze_binary) {
+--
+2.17.1
+
diff --git a/meta-openembedded/meta-oe/recipes-devtools/perl/libdev-checklib-perl_1.13.bb b/meta-openembedded/meta-oe/recipes-devtools/perl/libdev-checklib-perl_1.13.bb
new file mode 100644
index 0000000..f5bdb20
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/perl/libdev-checklib-perl_1.13.bb
@@ -0,0 +1,21 @@
+SUMMARY = "A Perl module that checks whether a particular C library and its headers are available"
+DESCRIPTION = "This module provides a way of checking whether a particular library \
+and its headers are available, by attempting to compile a simple program and \
+link against it."
+HOMEPAGE = "https://metacpan.org/pod/Devel::CheckLib"
+SECTION = "libs"
+LICENSE = "Artistic-1.0 | GPL-1.0+"
+
+LIC_FILES_CHKSUM = "file://README;md5=7911cdbb572d25c5f2e2ea17f669efc2"
+
+SRC_URI = "https://cpan.metacpan.org/modules/by-module/Devel/Devel-CheckLib-${PV}.tar.gz \
+ file://0001-CheckLib.pm-don-t-execute-the-binary.patch \
+"
+SRC_URI[md5sum] = "930216c5abc0f016df8a7539d48c891a"
+SRC_URI[sha256sum] = "24adfd908705dfac4bb320711763f37126b75cf54b3566c2c27c7cdef9c429a8"
+
+S = "${WORKDIR}/Devel-CheckLib-${PV}"
+
+inherit cpan
+
+BBCLASSEXTEND="native"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/php/php.inc b/meta-openembedded/meta-oe/recipes-devtools/php/php.inc
index 6f893ad..785c2f5 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/php/php.inc
+++ b/meta-openembedded/meta-oe/recipes-devtools/php/php.inc
@@ -102,7 +102,7 @@
do_configure_prepend () {
rm -f ${S}/build/libtool.m4 ${S}/ltmain.sh ${S}/aclocal.m4
- find ${S} -name config.m4 | xargs -n1 sed -i 's!APXS_HTTPD=.*!APXS_HTTPD=${STAGING_BINDIR_NATIVE}/httpd!'
+ find ${S} -name config.m4 | xargs -n1 sed -i 's!APXS_HTTPD=.*!APXS_HTTPD=${STAGING_SBINDIR_NATIVE}/httpd!'
}
do_configure_append() {
diff --git a/meta-openembedded/meta-oe/recipes-devtools/php/php/0001-opcache-config.m4-enable-opcache.patch b/meta-openembedded/meta-oe/recipes-devtools/php/php/0001-opcache-config.m4-enable-opcache.patch
index 9ffd0e4..34f433f 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/php/php/0001-opcache-config.m4-enable-opcache.patch
+++ b/meta-openembedded/meta-oe/recipes-devtools/php/php/0001-opcache-config.m4-enable-opcache.patch
@@ -1,7 +1,9 @@
-From fb139d9707dabe1684b472a08a6eb5761ede4a3a Mon Sep 17 00:00:00 2001
+From 8de5ba69d20d049b8ca983a9470c7303142ec0b3 Mon Sep 17 00:00:00 2001
From: Changqing Li <changqing.li@windriver.com>
-Date: Tue, 12 Feb 2019 14:56:16 +0800
-Subject: [PATCH] opcache/config.m4: enable opcache
+Date: Sun, 28 Apr 2019 16:55:13 +0800
+Subject: [PATCH] From fb139d9707dabe1684b472a08a6eb5761ede4a3a Mon Sep 17
+ 00:00:00 2001 From: Changqing Li <changqing.li@windriver.com> Date: Tue, 12
+ Feb 2019 14:56:16 +0800 Subject: [PATCH] opcache/config.m4: enable opcache
We can't use AC_TRY_RUN to run programs in a cross compile environment. Set
the variables directly instead since we know that we'd be running on latest
@@ -11,17 +13,17 @@
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
-update patch to version 7.3.2
+update patch to version 7.3.4
Signed-off-by: Changqing Li <changqing.li@windriver.com>
---
- ext/opcache/config.m4 | 357 +-------------------------------------------------
- 1 file changed, 6 insertions(+), 351 deletions(-)
+ ext/opcache/config.m4 | 312 +-------------------------------------------------
+ 1 file changed, 6 insertions(+), 306 deletions(-)
diff --git a/ext/opcache/config.m4 b/ext/opcache/config.m4
-index 392f4c6..6617693 100644
+index 4810217..22c3d61 100644
--- a/ext/opcache/config.m4
+++ b/ext/opcache/config.m4
-@@ -27,374 +27,29 @@ if test "$PHP_OPCACHE" != "no"; then
+@@ -27,319 +27,19 @@ if test "$PHP_OPCACHE" != "no"; then
AC_CHECK_HEADERS([unistd.h sys/uio.h])
AC_MSG_CHECKING(for sysvipc shared memory support)
@@ -93,8 +95,9 @@
- AC_DEFINE(HAVE_SHM_IPC, 1, [Define if you have SysV IPC SHM support])
- msg=yes],[msg=no],[msg=no])
- AC_MSG_RESULT([$msg])
+-
+ AC_DEFINE(HAVE_SHM_IPC, 1, [Define if you have SysV IPC SHM support])
-
++
AC_MSG_CHECKING(for mmap() using MAP_ANON shared memory support)
- AC_RUN_IFELSE([AC_LANG_SOURCE([[
-#include <sys/types.h>
@@ -344,64 +347,8 @@
- AC_MSG_RESULT([$msg])
+ AC_DEFINE(HAVE_SHM_MMAP_FILE, 1, [Define if you have mmap() SHM support])
- flock_type=unknown
- AC_MSG_CHECKING(for struct flock layout)
-
- if test "$flock_type" = "unknown"; then
--AC_RUN_IFELSE([AC_LANG_SOURCE([[
-- #include <fcntl.h>
-- struct flock lock = { 1, 2, 3, 4, 5, 6, 7 };
-- int main() {
-- if(lock.l_type == 1 && lock.l_whence == 2 && lock.l_start == 6 && lock.l_len== 7) {
-- return 0;
-- }
-- return 1;
-- }
--]])], [
-- flock_type=aix64
-- AC_DEFINE([HAVE_FLOCK_AIX64], [], [Struct flock is 64-bit AIX-type])
--], [])
--fi
--
--if test "$flock_type" = "unknown"; then
--AC_RUN_IFELSE([AC_LANG_SOURCE([[
-- #include <fcntl.h>
-- struct flock lock = { 1, 2, 3, 4, 5 };
-- int main() {
-- if(lock.l_type == 1 && lock.l_whence == 2 && lock.l_start == 3 && lock.l_len == 4) {
-- return 0;
-- }
-- return 1;
-- }
--]])], [
-- flock_type=linux
-+ flock_type=linux
- AC_DEFINE([HAVE_FLOCK_LINUX], [], [Struct flock is Linux-type])
--], [])
- fi
-
- if test "$flock_type" = "unknown"; then
--AC_RUN_IFELSE([AC_LANG_SOURCE([[
-- #include <fcntl.h>
-- struct flock lock = { 1, 2, 3, 4, 5 };
-- int main() {
-- if(lock.l_start == 1 && lock.l_len == 2 && lock.l_type == 4 && lock.l_whence == 5) {
-- return 0;
-- }
-- return 1;
-- }
--]])], [
-- flock_type=bsd
-- AC_DEFINE([HAVE_FLOCK_BSD], [], [Struct flock is BSD-type])
--], [])
--fi
--
--AC_MSG_RESULT([$flock_type])
--
--if test "$flock_type" = "unknown"; then
- AC_MSG_ERROR([Don't know how to define struct flock on this system[,] set --enable-opcache=no])
- fi
-
+ PHP_NEW_EXTENSION(opcache,
+ ZendAccelerator.c \
--
2.7.4
diff --git a/meta-openembedded/meta-oe/recipes-devtools/php/php/0049-ext-intl-Use-pkg-config-to-detect-icu.patch b/meta-openembedded/meta-oe/recipes-devtools/php/php/0049-ext-intl-Use-pkg-config-to-detect-icu.patch
index deada1f..2258c4c 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/php/php/0049-ext-intl-Use-pkg-config-to-detect-icu.patch
+++ b/meta-openembedded/meta-oe/recipes-devtools/php/php/0049-ext-intl-Use-pkg-config-to-detect-icu.patch
@@ -1,84 +1,131 @@
-From: Hugh McMaster <hugh.mcmaster@outlook.com>
-Date: Wed, 5 Dec 2018 23:27:30 +1100
-Subject: ext/intl: Use pkg-config to detect icu
+From 03fecab78f9fa747ad8ab3484e7ca00c0148321d Mon Sep 17 00:00:00 2001
+From: Changqing Li <changqing.li@windriver.com>
+Date: Sun, 28 Apr 2019 16:45:02 +0800
+Subject: [PATCH] From: Hugh McMaster <hugh.mcmaster@outlook.com> Date: Wed, 5
+ Dec 2018 23:27:30 +1100 Subject: ext/intl: Use pkg-config to detect icu
The developers of icu recommend using pkg-config to detect icu,
because icu-config is deprecated.
----
- acinclude.m4 | 56 +++++++-----------------------------------------------
- ext/intl/config.m4 | 16 ++++++----------
- 2 files changed, 13 insertions(+), 59 deletions(-)
---- php7.3.orig/acinclude.m4
-+++ php7.3/acinclude.m4
-@@ -2168,58 +2168,16 @@ dnl
+Upstream-Status: Pending
+
+update to version 7.3.4
+Signed-off-by: Changqing Li <changqing.li@windriver.com>
+---
+ acinclude.m4 | 95 ++++++------------------------------------------------
+ ext/intl/config.m4 | 16 ++++-----
+ 2 files changed, 15 insertions(+), 96 deletions(-)
+
+diff --git a/acinclude.m4 b/acinclude.m4
+index 7d77c33..86b0ecc 100644
+--- a/acinclude.m4
++++ b/acinclude.m4
+@@ -2158,92 +2158,15 @@ dnl
dnl Common setup macro for ICU
dnl
AC_DEFUN([PHP_SETUP_ICU],[
- PHP_ARG_WITH(icu-dir,,
- [ --with-icu-dir=DIR Specify where ICU libraries and headers can be found], DEFAULT, no)
-+ PKG_CHECK_MODULES([ICU], [icu-io >= 50.1])
-
+-
- if test "$PHP_ICU_DIR" = "no"; then
- PHP_ICU_DIR=DEFAULT
- fi
-
-- if test "$PHP_ICU_DIR" = "DEFAULT"; then
-- dnl Try to find icu-config
-- AC_PATH_PROG(ICU_CONFIG, icu-config, no, [$PATH:/usr/local/bin])
-- else
-- ICU_CONFIG="$PHP_ICU_DIR/bin/icu-config"
+- AC_MSG_CHECKING([for location of ICU headers and libraries])
+- found_icu=no
+-
+- dnl First try to find pkg-config
+- if test -z "$PKG_CONFIG"; then
+- AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
- fi
-
-- AC_MSG_CHECKING([for location of ICU headers and libraries])
+- dnl If pkg-config is found try using it
+- if test "$PHP_ICU_DIR" = "DEFAULT" && test -x "$PKG_CONFIG" && $PKG_CONFIG --exists icu-uc icu-io icu-i18n; then
+- if $PKG_CONFIG --atleast-version=40 icu-uc; then
+- found_icu=yes
+- icu_version_full=`$PKG_CONFIG --modversion icu-uc`
+- ac_IFS=$IFS
+- IFS="."
+- set $icu_version_full
+- IFS=$ac_IFS
+- icu_version=`expr [$]1 \* 1000 + [$]2`
+- AC_MSG_RESULT([found $icu_version_full])
-
-- dnl Trust icu-config to know better what the install prefix is..
-- icu_install_prefix=`$ICU_CONFIG --prefix 2> /dev/null`
-- if test "$?" != "0" || test -z "$icu_install_prefix"; then
-- AC_MSG_RESULT([not found])
-- AC_MSG_ERROR([Unable to detect ICU prefix or $ICU_CONFIG failed. Please verify ICU install prefix and make sure icu-config works.])
-- else
-- AC_MSG_RESULT([$icu_install_prefix])
+- ICU_LIBS=`$PKG_CONFIG --libs icu-uc icu-io icu-i18n`
+- ICU_INCS=`$PKG_CONFIG --cflags-only-I icu-uc icu-io icu-i18n`
+- ICU_CXXFLAGS="-DU_USING_ICU_NAMESPACE=1"
-
-- dnl Check ICU version
-- AC_MSG_CHECKING([for ICU 4.0 or greater])
-- icu_version_full=`$ICU_CONFIG --version`
-- ac_IFS=$IFS
-- IFS="."
-- set $icu_version_full
-- IFS=$ac_IFS
-- icu_version=`expr [$]1 \* 1000 + [$]2`
-- AC_MSG_RESULT([found $icu_version_full])
+- AC_MSG_RESULT([found $ICU_VERSION])
-
-- if test "$icu_version" -lt "4000"; then
-- AC_MSG_ERROR([ICU version 4.0 or later is required])
+- PHP_EVAL_LIBLINE($ICU_LIBS, $1)
+- PHP_EVAL_INCLINE($ICU_INCS)
+- else
+- AC_MSG_ERROR([ICU version 4.0 or later required.])
- fi
+- fi
+-
+- dnl If pkg-config fails for some reason, revert to the old method
+- if test "$found_icu" = "no"; then
+- if test "$PHP_ICU_DIR" = "DEFAULT"; then
+- dnl Try to find icu-config
+- AC_PATH_PROG(ICU_CONFIG, icu-config, no, [$PATH:/usr/local/bin])
+- else
+- ICU_CONFIG="$PHP_ICU_DIR/bin/icu-config"
+- fi
+-
+- dnl Trust icu-config to know better what the install prefix is..
+- icu_install_prefix=`$ICU_CONFIG --prefix 2> /dev/null`
+- if test "$?" != "0" || test -z "$icu_install_prefix"; then
+- AC_MSG_RESULT([not found])
+- AC_MSG_ERROR([Unable to detect ICU prefix or $ICU_CONFIG failed. Please verify ICU install prefix and make sure icu-config works.])
+- else
+- AC_MSG_RESULT([$icu_install_prefix])
+-
+- dnl Check ICU version
+- AC_MSG_CHECKING([for ICU 4.0 or greater])
+- icu_version_full=`$ICU_CONFIG --version`
+- ac_IFS=$IFS
+- IFS="."
+- set $icu_version_full
+- IFS=$ac_IFS
+- icu_version=`expr [$]1 \* 1000 + [$]2`
+- AC_MSG_RESULT([found $icu_version_full])
+-
+- if test "$icu_version" -lt "4000"; then
+- AC_MSG_ERROR([ICU version 4.0 or later is required])
+- fi
+-
+- ICU_VERSION=$icu_version
+- ICU_INCS=`$ICU_CONFIG --cppflags-searchpath`
+- ICU_LIBS=`$ICU_CONFIG --ldflags --ldflags-icuio`
+- PHP_EVAL_INCLINE($ICU_INCS)
+- PHP_EVAL_LIBLINE($ICU_LIBS, $1)
+-
+- ICU_CXXFLAGS=`$ICU_CONFIG --cxxflags`
+- if test "$icu_version" -ge "49000"; then
+- ICU_CXXFLAGS="$ICU_CXXFLAGS -DUNISTR_FROM_CHAR_EXPLICIT=explicit -DUNISTR_FROM_STRING_EXPLICIT=explicit"
+- ICU_CFLAGS="-DU_NO_DEFAULT_INCLUDE_UTF_HEADERS=1"
+- fi
+- if test "$icu_version" -ge "60000"; then
+- ICU_CFLAGS="$ICU_CFLAGS -DU_HIDE_OBSOLETE_UTF_OLD_H=1"
+- fi
+- fi
++ PKG_CHECK_MODULES([ICU], [icu-io >= 50.1])
+ PHP_EVAL_INCLINE($ICU_CFLAGS)
+ PHP_EVAL_LIBLINE($ICU_LIBS, $1)
-
-- ICU_VERSION=$icu_version
-- ICU_INCS=`$ICU_CONFIG --cppflags-searchpath`
-- ICU_LIBS=`$ICU_CONFIG --ldflags --ldflags-icuio`
-- PHP_EVAL_INCLINE($ICU_INCS)
-- PHP_EVAL_LIBLINE($ICU_LIBS, $1)
++
+ ICU_CFLAGS="$ICU_CFLAGS -DU_NO_DEFAULT_INCLUDE_UTF_HEADERS=1"
+ ICU_CXXFLAGS="$ICU_CXXFLAGS -DUNISTR_FROM_CHAR_EXPLICIT=explicit -DUNISTR_FROM_STRING_EXPLICIT=explicit"
-
-- ICU_CXXFLAGS=`$ICU_CONFIG --cxxflags`
-- if test "$icu_version" -ge "49000"; then
-- ICU_CXXFLAGS="$ICU_CXXFLAGS -DUNISTR_FROM_CHAR_EXPLICIT=explicit -DUNISTR_FROM_STRING_EXPLICIT=explicit"
-- ICU_CFLAGS="-DU_NO_DEFAULT_INCLUDE_UTF_HEADERS=1"
-- fi
-- if test "$icu_version" -ge "60000"; then
-- ICU_CFLAGS="$ICU_CFLAGS -DU_HIDE_OBSOLETE_UTF_OLD_H=1"
-- fi
++
+ if $PKG_CONFIG icu-io --atleast-version=60; then
+ ICU_CFLAGS="$ICU_CFLAGS -DU_HIDE_OBSOLETE_UTF_OLD_H=1"
fi
])
---- php7.3.orig/ext/intl/config.m4
-+++ php7.3/ext/intl/config.m4
+diff --git a/ext/intl/config.m4 b/ext/intl/config.m4
+index 4b9f469..fdae88a 100644
+--- a/ext/intl/config.m4
++++ b/ext/intl/config.m4
@@ -9,15 +9,7 @@ if test "$PHP_INTL" != "no"; then
PHP_SETUP_ICU(INTL_SHARED_LIBADD)
PHP_SUBST(INTL_SHARED_LIBADD)
@@ -109,3 +156,6 @@
PHP_INTL_CXX_SOURCES="intl_convertcpp.cpp \
common/common_enum.cpp \
+--
+2.7.4
+
diff --git a/meta-openembedded/meta-oe/recipes-devtools/php/php_7.3.2.bb b/meta-openembedded/meta-oe/recipes-devtools/php/php_7.3.2.bb
deleted file mode 100644
index 634facd..0000000
--- a/meta-openembedded/meta-oe/recipes-devtools/php/php_7.3.2.bb
+++ /dev/null
@@ -1,25 +0,0 @@
-require php.inc
-
-LIC_FILES_CHKSUM = "file://LICENSE;md5=fb07bfc51f6d5e0c30b65d9701233b2e"
-
-SRC_URI += "file://0001-acinclude.m4-don-t-unset-cache-variables.patch \
- file://0048-Use-pkg-config-for-FreeType2-detection.patch \
- file://0049-ext-intl-Use-pkg-config-to-detect-icu.patch \
- file://0001-Use-pkg-config-for-libxml2-detection.patch \
- "
-SRC_URI_append_class-target = " \
- file://pear-makefile.patch \
- file://phar-makefile.patch \
- file://0001-opcache-config.m4-enable-opcache.patch \
- "
-
-SRC_URI[md5sum] = "c893ff828945c274d90e026528142439"
-SRC_URI[sha256sum] = "946f50dacbd2f61e643bb737021cbe8b1816e780ee7ad3e0cd999a1892ab0add"
-
-PACKAGECONFIG[mysql] = "--with-mysqli=mysqlnd \
- --with-pdo-mysql=mysqlnd \
- ,--without-mysqli --without-pdo-mysql \
- ,mysql5"
-PACKAGECONFIG[valgrind] = "--with-valgrind=${STAGING_DIR_TARGET}/usr,--with-valgrind=no,valgrind"
-
-FILES_${PN}-fpm += "${sysconfdir}/php-fpm.d/www.conf.default"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/php/php_7.3.4.bb b/meta-openembedded/meta-oe/recipes-devtools/php/php_7.3.4.bb
new file mode 100644
index 0000000..1a5c976
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/php/php_7.3.4.bb
@@ -0,0 +1,25 @@
+require php.inc
+
+LIC_FILES_CHKSUM = "file://LICENSE;md5=fb07bfc51f6d5e0c30b65d9701233b2e"
+
+SRC_URI += "file://0001-acinclude.m4-don-t-unset-cache-variables.patch \
+ file://0048-Use-pkg-config-for-FreeType2-detection.patch \
+ file://0049-ext-intl-Use-pkg-config-to-detect-icu.patch \
+ file://0001-Use-pkg-config-for-libxml2-detection.patch \
+ "
+SRC_URI_append_class-target = " \
+ file://pear-makefile.patch \
+ file://phar-makefile.patch \
+ file://0001-opcache-config.m4-enable-opcache.patch \
+ "
+
+SRC_URI[md5sum] = "efb58aea95a66738d871f83ec55fec6f"
+SRC_URI[sha256sum] = "2e2c3d8212c83649e443b61efffbd03df4b9edd0f9c7a679081fe4cb2da12b78"
+
+PACKAGECONFIG[mysql] = "--with-mysqli=mysqlnd \
+ --with-pdo-mysql=mysqlnd \
+ ,--without-mysqli --without-pdo-mysql \
+ ,mysql5"
+PACKAGECONFIG[valgrind] = "--with-valgrind=${STAGING_DIR_TARGET}/usr,--with-valgrind=no,valgrind"
+
+FILES_${PN}-fpm += "${sysconfdir}/php-fpm.d/www.conf.default"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/pmtools/pmtools_git.bb b/meta-openembedded/meta-oe/recipes-devtools/pmtools/pmtools_git.bb
index 8491fc9..9afcbbb 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/pmtools/pmtools_git.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/pmtools/pmtools_git.bb
@@ -18,7 +18,7 @@
inherit update-alternatives
ALTERNATIVE_PRIORITY = "90"
-ALTERNATIVE_${PN} = "acpixtract"
+ALTERNATIVE_${PN} = "acpixtract acpidump"
do_configure[noexec] = "1"
do_compile() {
diff --git a/meta-openembedded/meta-oe/recipes-devtools/sip/sip.inc b/meta-openembedded/meta-oe/recipes-devtools/sip/sip.inc
index d079545..092531b 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/sip/sip.inc
+++ b/meta-openembedded/meta-oe/recipes-devtools/sip/sip.inc
@@ -4,10 +4,10 @@
LICENSE = "GPLv2+"
LIC_FILES_CHKSUM = "file://LICENSE-GPL2;md5=e91355d8a6f8bd8f7c699d62863c7303"
-SRC_URI = "${SOURCEFORGE_MIRROR}/project/pyqt/sip/sip-${PV}/sip-${PV}.tar.gz \
+SRC_URI = "https://www.riverbankcomputing.com/static/Downloads/sip/${PV}/sip-${PV}.tar.gz \
"
-SRC_URI[md5sum] = "9124cb8978742685747a5415179a9890"
-SRC_URI[sha256sum] = "e353a7056599bf5fbd5d3ff9842a6ab2ea3cf4e0304a0f925ec5862907c0d15e"
+SRC_URI[md5sum] = "7e854b0da395ddc8fb5da82d0321994d"
+SRC_URI[sha256sum] = "184c790d58e9527fc6bdac2bbf8638f3d1b41dea922cad8eb83172b4ba70c620"
S = "${WORKDIR}/sip-${PV}"
@@ -15,19 +15,19 @@
do_configure_prepend_class-target() {
echo "py_platform = linux" > sip.cfg
- echo "py_inc_dir = %(sysroot)/${includedir}/python${PYTHON_BASEVERSION}${PYTHON_ABI}" >> sip.cfg
+ echo "py_inc_dir = %(sysroot)/${includedir}/python%(py_major).%(py_minor)${PYTHON_ABI}" >> sip.cfg
echo "sip_bin_dir = ${D}/${bindir}" >> sip.cfg
echo "sip_inc_dir = ${D}/${includedir}" >> sip.cfg
- echo "sip_module_dir = ${D}/${libdir}/python${PYTHON_BASEVERSION}${PYTHON_ABI}/site-packages" >> sip.cfg
+ echo "sip_module_dir = ${D}/${libdir}/python%(py_major).%(py_minor)/site-packages" >> sip.cfg
echo "sip_sip_dir = ${D}/${datadir}/sip" >> sip.cfg
${PYTHON} configure.py --configuration sip.cfg --sip-module PyQt5.sip --sysroot ${STAGING_DIR_HOST} CC="${CC}" CXX="${CXX}" LINK="${CXX}" STRIP="" LINK_SHLIB="${CXX}" CFLAGS="${CFLAGS}" CXXFLAGS="${CXXFLAGS}" LFLAGS="${LDFLAGS}"
}
do_configure_prepend_class-native() {
echo "py_platform = linux" > sip.cfg
- echo "py_inc_dir = ${includedir}/python${PYTHON_BASEVERSION}${PYTHON_ABI}" >> sip.cfg
+ echo "py_inc_dir = ${includedir}/python%(py_major).%(py_minor)${PYTHON_ABI}" >> sip.cfg
echo "sip_bin_dir = ${D}/${bindir}" >> sip.cfg
echo "sip_inc_dir = ${D}/${includedir}" >> sip.cfg
- echo "sip_module_dir = ${D}/${libdir}/python${PYTHON_BASEVERSION}${PYTHON_ABI}/site-packages" >> sip.cfg
+ echo "sip_module_dir = ${D}/${libdir}/python%(py_major).%(py_minor)/site-packages" >> sip.cfg
echo "sip_sip_dir = ${D}/${datadir}/sip" >> sip.cfg
${PYTHON} configure.py --configuration sip.cfg --sip-module PyQt5.sip --sysroot=${STAGING_DIR_NATIVE}
}
diff --git a/meta-openembedded/meta-oe/recipes-devtools/sip/sip3_4.19.13.bb b/meta-openembedded/meta-oe/recipes-devtools/sip/sip3_4.19.13.bb
deleted file mode 100644
index dc15bc2..0000000
--- a/meta-openembedded/meta-oe/recipes-devtools/sip/sip3_4.19.13.bb
+++ /dev/null
@@ -1,11 +0,0 @@
-require sip.inc
-
-DEPENDS = "python3"
-
-inherit python3-dir python3native
-
-PACKAGES += "python3-sip3"
-
-FILES_python3-sip3 = "${libdir}/${PYTHON_DIR}${PYTHON_ABI}/site-packages/"
-FILES_${PN}-dbg += "${libdir}/${PYTHON_DIR}${PYTHON_ABI}/site-packages/.debug"
-
diff --git a/meta-openembedded/meta-oe/recipes-devtools/sip/sip3_4.19.16.bb b/meta-openembedded/meta-oe/recipes-devtools/sip/sip3_4.19.16.bb
new file mode 100644
index 0000000..010fa30
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-devtools/sip/sip3_4.19.16.bb
@@ -0,0 +1,11 @@
+require sip.inc
+
+DEPENDS = "python3"
+
+inherit python3-dir python3native
+
+PACKAGES += "python3-sip3"
+
+FILES_python3-sip3 = "${libdir}/${PYTHON_DIR}/site-packages/"
+FILES_${PN}-dbg += "${libdir}/${PYTHON_DIR}/site-packages/.debug"
+
diff --git a/meta-openembedded/meta-oe/recipes-devtools/sip/sip_4.19.13.bb b/meta-openembedded/meta-oe/recipes-devtools/sip/sip_4.19.16.bb
similarity index 100%
rename from meta-openembedded/meta-oe/recipes-devtools/sip/sip_4.19.13.bb
rename to meta-openembedded/meta-oe/recipes-devtools/sip/sip_4.19.16.bb
diff --git a/meta-openembedded/meta-oe/recipes-extended/fluentbit/fluentbit/0001-fluent-bit-shared-Link-with-lpthread.patch b/meta-openembedded/meta-oe/recipes-extended/fluentbit/fluentbit/0001-fluent-bit-shared-Link-with-lpthread.patch
deleted file mode 100644
index e9eed24..0000000
--- a/meta-openembedded/meta-oe/recipes-extended/fluentbit/fluentbit/0001-fluent-bit-shared-Link-with-lpthread.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From 62fa9bceb15a9d160dd5d624a6d46907c1019c5c Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Fri, 8 Sep 2017 17:02:55 -0700
-Subject: [PATCH] fluent-bit-shared: Link with -lpthread
-
-This fixes a reference to pthread_atfork in libfluent-bit.so
-otherwise we get undefined reference to the symbols in binaries
-which are linked with libfluent-bit.so
-
-Fixes errors like
-arm-bec-linux-gnueabi-ld: ../../bin/hello_world: hidden symbol `pthread_atfork' in /mnt/a/oe/build/tmp/work/cortexa7t2hf-neon-vfpv4-bec-linux-gnueabi/fluentbit/0.12.1-r0/recipe-sysroot/usr/lib/libpthread_nonshared.a(pthread_atfork.oS) is referenced by DSO
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
-Upstream-Status: Submitted
-
- src/CMakeLists.txt | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
-index 425a246..1264e59 100644
---- a/src/CMakeLists.txt
-+++ b/src/CMakeLists.txt
-@@ -168,7 +168,7 @@ set(FLB_DEPS
- # Shared Library
- if(NOT FLB_WITHOUT_SHARED_LIB)
- add_library(fluent-bit-shared SHARED ${src})
-- target_link_libraries(fluent-bit-shared ${FLB_DEPS})
-+ target_link_libraries(fluent-bit-shared ${FLB_DEPS} -lpthread)
- set_target_properties(fluent-bit-shared
- PROPERTIES OUTPUT_NAME fluent-bit)
-
---
-2.14.1
-
diff --git a/meta-openembedded/meta-oe/recipes-extended/fluentbit/fluentbit_0.12.1.bb b/meta-openembedded/meta-oe/recipes-extended/fluentbit/fluentbit_0.12.1.bb
deleted file mode 100644
index 99f680f..0000000
--- a/meta-openembedded/meta-oe/recipes-extended/fluentbit/fluentbit_0.12.1.bb
+++ /dev/null
@@ -1,30 +0,0 @@
-SUMMARY = "Fast data collector for Embedded Linux"
-HOMEPAGE = "http://fluentbit.io"
-BUGTRACKER = "https://github.com/fluent/fluent-bit/issues"
-
-SRC_URI = "http://fluentbit.io/releases/0.12/fluent-bit-${PV}.tar.gz \
- file://jemalloc.patch \
- file://0001-fluent-bit-shared-Link-with-lpthread.patch \
- "
-SRC_URI[md5sum] = "6b4472cb7e7213a01425af9121576827"
-SRC_URI[sha256sum] = "8ec05365baea723033165687611b3bba3e67a77dce72e282e9f000f7acf9e37b"
-
-S = "${WORKDIR}/fluent-bit-${PV}"
-
-LICENSE = "Apache-2.0"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=2ee41112a44fe7014dce33e26468ba93"
-
-DEPENDS = "zlib"
-INSANE_SKIP_${PN}-dev += "dev-elf"
-
-inherit cmake systemd
-
-EXTRA_OECMAKE = "-DGNU_HOST=${HOST_SYS} -DFLB_ALL=ON -DFLB_TD=1"
-
-# With Ninja it fails with:
-# ninja: error: build.ninja:134: bad $-escape (literal $ must be written as $$)
-OECMAKE_GENERATOR = "Unix Makefiles"
-
-SYSTEMD_SERVICE_${PN} = "td-agent-bit.service"
-
-TARGET_CC_ARCH_append = " ${SELECTED_OPTIMIZATION}"
diff --git a/meta-openembedded/meta-oe/recipes-extended/fluentbit/fluentbit_0.12.19.bb b/meta-openembedded/meta-oe/recipes-extended/fluentbit/fluentbit_0.12.19.bb
new file mode 100644
index 0000000..e50aa71
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-extended/fluentbit/fluentbit_0.12.19.bb
@@ -0,0 +1,29 @@
+SUMMARY = "Fast data collector for Embedded Linux"
+HOMEPAGE = "http://fluentbit.io"
+BUGTRACKER = "https://github.com/fluent/fluent-bit/issues"
+
+SRC_URI = "http://fluentbit.io/releases/0.12/fluent-bit-${PV}.tar.gz \
+ file://jemalloc.patch \
+ "
+SRC_URI[md5sum] = "7c8708312ac9122faacf9e2a4751eb34"
+SRC_URI[sha256sum] = "23a81087edf0e2c6f2d49411c6a82308afc5224f67bbaa45729c057af62e9241"
+
+S = "${WORKDIR}/fluent-bit-${PV}"
+
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=2ee41112a44fe7014dce33e26468ba93"
+
+DEPENDS = "zlib"
+INSANE_SKIP_${PN}-dev += "dev-elf"
+
+inherit cmake systemd
+
+EXTRA_OECMAKE = "-DGNU_HOST=${HOST_SYS} -DFLB_ALL=ON -DFLB_TD=1"
+
+# With Ninja it fails with:
+# ninja: error: build.ninja:134: bad $-escape (literal $ must be written as $$)
+OECMAKE_GENERATOR = "Unix Makefiles"
+
+SYSTEMD_SERVICE_${PN} = "td-agent-bit.service"
+
+TARGET_CC_ARCH_append = " ${SELECTED_OPTIMIZATION}"
diff --git a/meta-openembedded/meta-oe/recipes-extended/indent/indent/0001-Makefile.am-remove-regression-dir.patch b/meta-openembedded/meta-oe/recipes-extended/indent/indent/0001-Makefile.am-remove-regression-dir.patch
new file mode 100644
index 0000000..357d77d
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-extended/indent/indent/0001-Makefile.am-remove-regression-dir.patch
@@ -0,0 +1,67 @@
+From 27bda5ee884e79d6d0e76955124d2b0c5798d6cf Mon Sep 17 00:00:00 2001
+From: Mingli Yu <mingli.yu@windriver.com>
+Date: Mon, 25 Feb 2019 00:34:17 -0800
+Subject: [PATCH] Makefile.am: remove regression dir
+
+Remove regression dir to fix below do_compile
+error:
+| Making all in regression
+| /bin/sh: line 20: cd: regression: No such file or directory
+| Makefile:451: recipe for target 'all-recursive' failed
+
+BTW, it should be safe not to cover regression dir
+as there is no Makefile.in under ${S}/regression
+and the content of ${S}/regression/Makefile as below.
+-------------------------------------
+all:
+
+install:
+
+check:
+ ./TEST
+
+distclean: clean
+
+maintainer-clean: clean
+
+distdir:
+
+clean:
+ @rm -rf output
+
+.PHONY: all install
+-------------------------------------
+
+Upstream-Status: Pending
+
+Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
+---
+ Makefile.am | 5 ++---
+ 1 file changed, 2 insertions(+), 3 deletions(-)
+
+diff --git a/Makefile.am b/Makefile.am
+index ba37a42..548fea7 100644
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -1,7 +1,7 @@
+ ## Process this file with automake to produce Makefile.in
+ AUTOMAKE_OPTIONS = no-texinfo.tex
+
+-SUBDIRS = intl src doc po man regression
++SUBDIRS = intl src doc po man
+
+ BUILT_SOURCES =
+
+@@ -13,8 +13,7 @@ EXTRA_DIST = README.md \
+ aclocal/UTIMBUF.m4 \
+ miscel/Makefile.mingw32 \
+ miscel/README.vc++ \
+- bootstrap \
+- regression
++ bootstrap
+
+ DISTCLEANFILES=config/config.cache config/config.log config.h
+
+--
+2.17.1
+
diff --git a/meta-openembedded/meta-oe/recipes-extended/indent/indent/0001-src-indent.c-correct-the-check-for-locale.h.patch b/meta-openembedded/meta-oe/recipes-extended/indent/indent/0001-src-indent.c-correct-the-check-for-locale.h.patch
new file mode 100644
index 0000000..7df7ecb
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-extended/indent/indent/0001-src-indent.c-correct-the-check-for-locale.h.patch
@@ -0,0 +1,40 @@
+From 75369ce004ec0f5e46a432fa1dac8cfc7ae1ef8d Mon Sep 17 00:00:00 2001
+From: Mingli Yu <mingli.yu@windriver.com>
+Date: Sun, 24 Feb 2019 22:35:08 -0800
+Subject: [PATCH] src/indent.c: correct the check for locale.h
+
+Adjust to check HAVE_LC_MESSAGES or HAVE_LOCALE_H
+to determine whether include locale.h or not to
+fix below issue:
+
+| ../../indent-2.2.12/src/indent.c: In function 'main':
+| ../../indent-2.2.12/src/indent.c:1062:5: error: implicit declaration of function 'setlocale'; did you mean 'setstate'? [-Werror=implicit-function-declaration]
+| setlocale(LC_ALL, "");
+| ^~~~~~~~~
+| setstate
+| ../../indent-2.2.12/src/indent.c:1062:5: error: nested extern declaration of 'setlocale' [-Werror=nested-externs]
+| ../../indent-2.2.12/src/indent.c:1062:15: error: 'LC_ALL' undeclared (first use in this function)
+
+Upstream-Status: Pending
+
+Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
+---
+ src/indent.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/indent.c b/src/indent.c
+index 4d666e2..0c2780b 100644
+--- a/src/indent.c
++++ b/src/indent.c
+@@ -71,7 +71,7 @@
+ #include <string.h>
+ #include <ctype.h>
+ #include <stdlib.h>
+-#ifdef HAVE_LOCALE_H
++#if defined(HAVE_LC_MESSAGES) || defined(HAVE_LOCALE_H)
+ #include <locale.h>
+ #endif
+ #include "indent.h"
+--
+2.17.1
+
diff --git a/meta-openembedded/meta-oe/recipes-extended/indent/indent_2.2.10.bb b/meta-openembedded/meta-oe/recipes-extended/indent/indent_2.2.10.bb
deleted file mode 100644
index d25e8e3..0000000
--- a/meta-openembedded/meta-oe/recipes-extended/indent/indent_2.2.10.bb
+++ /dev/null
@@ -1,22 +0,0 @@
-SUMMARY = "A GNU program for formatting C code"
-HOMEPAGE = "http://www.gnu.org/software/indent/"
-SECTION = "Applications/Text"
-DESCRIPTION = "Indent is a GNU program for beautifying C code, so that \
-it is easier to read. Indent can also convert from one C writing style \
-to a different one. Indent understands correct C syntax and tries to handle \
-incorrect C syntax. \
-Install the indent package if you are developing applications in C and \
-you want a program to format your code."
-LICENSE = "GPLv3"
-LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
-DEPENDS = "virtual/gettext"
-
-SRC_URI = "${GNU_MIRROR}/${BPN}/${BP}.tar.gz"
-SRC_URI[md5sum] = "be35ea62705733859fbf8caf816d8959"
-SRC_URI[sha256sum] = "8a9b41be5bfcab5d8c1be74204b10ae78789fc3deabea0775fdced8677292639"
-
-inherit autotools gettext
-
-FILES_${PN}-doc += "/usr/doc/indent/indent.html"
-
-BBCLASSEXTEND = "native"
diff --git a/meta-openembedded/meta-oe/recipes-extended/indent/indent_2.2.12.bb b/meta-openembedded/meta-oe/recipes-extended/indent/indent_2.2.12.bb
new file mode 100644
index 0000000..f2891df
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-extended/indent/indent_2.2.12.bb
@@ -0,0 +1,27 @@
+SUMMARY = "A GNU program for formatting C code"
+HOMEPAGE = "http://www.gnu.org/software/indent/"
+SECTION = "Applications/Text"
+DESCRIPTION = "Indent is a GNU program for beautifying C code, so that \
+it is easier to read. Indent can also convert from one C writing style \
+to a different one. Indent understands correct C syntax and tries to handle \
+incorrect C syntax. \
+Install the indent package if you are developing applications in C and \
+you want a program to format your code."
+LICENSE = "GPLv3"
+LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
+DEPENDS = "virtual/gettext"
+
+SRC_URI = "${GNU_MIRROR}/${BPN}/${BP}.tar.gz \
+ file://0001-src-indent.c-correct-the-check-for-locale.h.patch \
+ file://0001-Makefile.am-remove-regression-dir.patch \
+"
+SRC_URI[md5sum] = "4764b6ac98f6654a35da117b8e5e8e14"
+SRC_URI[sha256sum] = "e77d68c0211515459b8812118d606812e300097cfac0b4e9fb3472664263bb8b"
+
+inherit autotools gettext
+
+CFLAGS_class-native += " -Wno-error=unused-value"
+
+FILES_${PN}-doc += "/usr/doc/indent/indent.html"
+
+BBCLASSEXTEND = "native"
diff --git a/meta-openembedded/meta-oe/recipes-extended/libcec/files/0001-Explicitly-use-python3-in-pyCecClient.patch b/meta-openembedded/meta-oe/recipes-extended/libcec/files/0001-Explicitly-use-python3-in-pyCecClient.patch
deleted file mode 100644
index ec1f5d0..0000000
--- a/meta-openembedded/meta-oe/recipes-extended/libcec/files/0001-Explicitly-use-python3-in-pyCecClient.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-From 16e8c072709572ccefa6c7f835136db01f031323 Mon Sep 17 00:00:00 2001
-From: Pascal Bach <pascal.bach@siemens.com>
-Date: Fri, 28 Sep 2018 16:56:14 +0200
-Subject: [PATCH] Explicitly use python3 in pyCecClient
-
-Upstream-Status: Submitted [https://github.com/Pulse-Eight/libcec/pull/433]
-
----
- src/pyCecClient/pyCecClient.py | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/pyCecClient/pyCecClient.py b/src/pyCecClient/pyCecClient.py
-index 6d47857..d0504ac 100755
---- a/src/pyCecClient/pyCecClient.py
-+++ b/src/pyCecClient/pyCecClient.py
-@@ -1,4 +1,4 @@
--#! /usr/bin/python
-+#! /usr/bin/python3
- ## demo of the python-libcec API
-
- # This file is part of the libCEC(R) library.
---
-2.11.0
-
diff --git a/meta-openembedded/meta-oe/recipes-extended/libcec/libcec_git.bb b/meta-openembedded/meta-oe/recipes-extended/libcec/libcec_git.bb
index 4ad4997..2666425 100644
--- a/meta-openembedded/meta-oe/recipes-extended/libcec/libcec_git.bb
+++ b/meta-openembedded/meta-oe/recipes-extended/libcec/libcec_git.bb
@@ -9,11 +9,11 @@
DEPENDS += "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'libx11 libxrandr', '', d)}"
DEPENDS_append_rpi = "${@bb.utils.contains('MACHINE_FEATURES', 'vc4graphics', '', ' userland', d)}"
-PV = "4.0.2+gitr${SRCPV}"
+PV = "4.0.4"
-SRCREV = "0a97062dd4b196ceeb003ec41841c7a7edc36dd1"
+SRCREV = "3bbd4321618503d14008387a72fabb6743878831"
SRC_URI = "git://github.com/Pulse-Eight/libcec.git \
- file://0001-Explicitly-use-python3-in-pyCecClient.patch"
+"
S = "${WORKDIR}/git"
diff --git a/meta-openembedded/meta-oe/recipes-extended/libmodbus/libmodbus.inc b/meta-openembedded/meta-oe/recipes-extended/libmodbus/libmodbus.inc
index a01659a..b502177 100644
--- a/meta-openembedded/meta-oe/recipes-extended/libmodbus/libmodbus.inc
+++ b/meta-openembedded/meta-oe/recipes-extended/libmodbus/libmodbus.inc
@@ -10,4 +10,7 @@
SRC_URI = "http://libmodbus.org/releases/${BP}.tar.gz"
+PACKAGECONFIG ??= ""
+PACKAGECONFIG[documentation] = "--with-documentation,--without-documentation,asciidoc-native xmlto-native"
+
inherit autotools pkgconfig
diff --git a/meta-openembedded/meta-oe/recipes-extended/libqb/libqb_1.0.3.bb b/meta-openembedded/meta-oe/recipes-extended/libqb/libqb_1.0.3.bb
deleted file mode 100644
index d857344..0000000
--- a/meta-openembedded/meta-oe/recipes-extended/libqb/libqb_1.0.3.bb
+++ /dev/null
@@ -1,33 +0,0 @@
-SUMMARY = "An IPC library for high performance servers"
-DESCRIPTION = "libqb is a library with the primary purpose of providing high performance client server reusable features. \
-It provides high performance logging, tracing, ipc, and poll."
-
-HOMEPAGE = "https://github.com/clusterlabs/libqb/wiki"
-SECTION = "libs"
-LICENSE = "LGPL-2.1"
-LIC_FILES_CHKSUM = "file://COPYING;md5=321bf41f280cf805086dd5a720b37785"
-
-inherit autotools pkgconfig
-
-PV .= "+git${SRCPV}"
-
-# v1.0.3
-SRCREV = "28dff090c74b6ba8609c4797294a5afe3fe73987"
-SRC_URI = "git://github.com/ClusterLabs/${BPN}.git \
- file://0001-build-fix-configure-script-neglecting-re-enable-out-.patch \
- "
-S = "${WORKDIR}/git"
-
-# otherwise do_configure fails
-# configure:21609: checking whether linker workaround for orphan sections usable
-# configure:21639: i586-oe-linux-gcc -m32 -march=i586 --sysroot=WORKDIR/libqb/1.0.3+gitAUTOINC+c235284b5f-r0/recipe-sysroot -o conftest -O -fno-omit-frame-pointer -g -feliminate-unused-debug-types -fdebug-prefix-map=WORKDIR/libqb/1.0.3+gitAUTOINC+c235284b5f-r0=/usr/src/debug/libqb/1.0.3+gitAUTOINC+c235284b5f-r0 -fdebug-prefix-map=WORKDIR/libqb/1.0.3+gitAUTOINC+c235284b5f-r0/recipe-sysroot= -fdebug-prefix-map=WORKDIR/libqb/1.0.3+gitAUTOINC+c235284b5f-r0/recipe-sysroot-native= -pipe -pthread -D_REENTRANT -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -Wl,conftest.ld conftest.c >&5
-# WORKDIR/libqb/1.0.3+gitAUTOINC+c235284b5f-r0/recipe-sysroot-native/usr/bin/i586-oe-linux/../../libexec/i586-oe-linux/gcc/i586-oe-linux/8.1.0/ld: error: conftest.ld: SECTIONS seen after other input files; try -T/--script
-# WORKDIR/libqb/1.0.3+gitAUTOINC+c235284b5f-r0/recipe-sysroot-native/usr/bin/i586-oe-linux/../../libexec/i586-oe-linux/gcc/i586-oe-linux/8.1.0/ld: internal error in write_sections, at ../../gold/reloc.cc:791
-# collect2: error: ld returned 1 exit status
-EXTRA_OECONF_append = "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-gold', ' --enable-nosection-fallback', '', d)}"
-
-CFLAGS += "-pthread -D_REENTRANT"
-do_configure_prepend() {
- ( cd ${S}
- ${S}/autogen.sh )
-}
diff --git a/meta-openembedded/meta-oe/recipes-extended/libqb/libqb_1.0.5.bb b/meta-openembedded/meta-oe/recipes-extended/libqb/libqb_1.0.5.bb
new file mode 100644
index 0000000..b205186
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-extended/libqb/libqb_1.0.5.bb
@@ -0,0 +1,31 @@
+SUMMARY = "An IPC library for high performance servers"
+DESCRIPTION = "libqb is a library with the primary purpose of providing high performance client server reusable features. \
+It provides high performance logging, tracing, ipc, and poll."
+
+HOMEPAGE = "https://github.com/clusterlabs/libqb/wiki"
+SECTION = "libs"
+LICENSE = "LGPL-2.1"
+LIC_FILES_CHKSUM = "file://COPYING;md5=321bf41f280cf805086dd5a720b37785"
+
+inherit autotools pkgconfig
+
+# v1.0.5
+SRCREV = "d08dbcf08b0da418bce9b5427dfd89522916322a"
+SRC_URI = "git://github.com/ClusterLabs/${BPN}.git;branch=version_1 \
+ file://0001-build-fix-configure-script-neglecting-re-enable-out-.patch \
+ "
+S = "${WORKDIR}/git"
+
+# otherwise do_configure fails
+# configure:21609: checking whether linker workaround for orphan sections usable
+# configure:21639: i586-oe-linux-gcc -m32 -march=i586 --sysroot=WORKDIR/libqb/1.0.3+gitAUTOINC+c235284b5f-r0/recipe-sysroot -o conftest -O -fno-omit-frame-pointer -g -feliminate-unused-debug-types -fdebug-prefix-map=WORKDIR/libqb/1.0.3+gitAUTOINC+c235284b5f-r0=/usr/src/debug/libqb/1.0.3+gitAUTOINC+c235284b5f-r0 -fdebug-prefix-map=WORKDIR/libqb/1.0.3+gitAUTOINC+c235284b5f-r0/recipe-sysroot= -fdebug-prefix-map=WORKDIR/libqb/1.0.3+gitAUTOINC+c235284b5f-r0/recipe-sysroot-native= -pipe -pthread -D_REENTRANT -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -Wl,conftest.ld conftest.c >&5
+# WORKDIR/libqb/1.0.3+gitAUTOINC+c235284b5f-r0/recipe-sysroot-native/usr/bin/i586-oe-linux/../../libexec/i586-oe-linux/gcc/i586-oe-linux/8.1.0/ld: error: conftest.ld: SECTIONS seen after other input files; try -T/--script
+# WORKDIR/libqb/1.0.3+gitAUTOINC+c235284b5f-r0/recipe-sysroot-native/usr/bin/i586-oe-linux/../../libexec/i586-oe-linux/gcc/i586-oe-linux/8.1.0/ld: internal error in write_sections, at ../../gold/reloc.cc:791
+# collect2: error: ld returned 1 exit status
+EXTRA_OECONF_append = "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-gold', ' --enable-nosection-fallback', '', d)}"
+
+CFLAGS += "-pthread -D_REENTRANT"
+do_configure_prepend() {
+ ( cd ${S}
+ ${S}/autogen.sh )
+}
diff --git a/meta-openembedded/meta-oe/recipes-extended/mozjs/mozjs/0001-To-fix-build-error-on-arm32BE.patch b/meta-openembedded/meta-oe/recipes-extended/mozjs/mozjs/0001-To-fix-build-error-on-arm32BE.patch
new file mode 100644
index 0000000..3bbd10a
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-extended/mozjs/mozjs/0001-To-fix-build-error-on-arm32BE.patch
@@ -0,0 +1,28 @@
+From 9afb0e4d3b9209ea198052cea0401bef7ee25ad8 Mon Sep 17 00:00:00 2001
+From: Lei Maohui <leimaohui@cn.fujitsu.com>
+Date: Thu, 9 May 2019 12:23:40 +0900
+Subject: [PATCH] To fix build error on arm32BE.
+
+error: #error Target architecture was not detected as supported by Double-Conversion.
+
+Signed-off-by: Lei Maohui <leimaohui@cn.fujitsu.com>
+---
+ mfbt/double-conversion/utils.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/mfbt/double-conversion/utils.h b/mfbt/double-conversion/utils.h
+index 4f37218..93575cb 100644
+--- a/mfbt/double-conversion/utils.h
++++ b/mfbt/double-conversion/utils.h
+@@ -53,7 +53,7 @@
+ // disabled.)
+ // On Linux,x86 89255e-22 != Div_double(89255.0/1e22)
+ #if defined(_M_X64) || defined(__x86_64__) || \
+- defined(__ARMEL__) || defined(__avr32__) || \
++ defined(__arm__) || defined(__avr32__) || \
+ defined(__hppa__) || defined(__ia64__) || \
+ defined(__mips__) || \
+ defined(__powerpc__) || defined(__ppc__) || defined(__ppc64__) || \
+--
+2.7.4
+
diff --git a/meta-openembedded/meta-oe/recipes-extended/mozjs/mozjs_52.9.1.bb b/meta-openembedded/meta-oe/recipes-extended/mozjs/mozjs_52.9.1.bb
index 92d1572..5e67eee 100644
--- a/meta-openembedded/meta-oe/recipes-extended/mozjs/mozjs_52.9.1.bb
+++ b/meta-openembedded/meta-oe/recipes-extended/mozjs/mozjs_52.9.1.bb
@@ -16,6 +16,7 @@
file://0001-mozjs-fix-coredump-caused-by-getenv.patch \
file://format-overflow.patch \
file://JS_PUBLIC_API.patch \
+ file://0001-To-fix-build-error-on-arm32BE.patch \
"
SRC_URI_append_libc-musl = " \
file://0006-support-musl.patch \
diff --git a/meta-openembedded/meta-oe/recipes-extended/openwsman/openwsman/0001-Adjust-for-CURLE_SSL_CACERT-deprecation-in-curl-7.62.patch b/meta-openembedded/meta-oe/recipes-extended/openwsman/openwsman/0001-Adjust-for-CURLE_SSL_CACERT-deprecation-in-curl-7.62.patch
deleted file mode 100644
index 4dcd108..0000000
--- a/meta-openembedded/meta-oe/recipes-extended/openwsman/openwsman/0001-Adjust-for-CURLE_SSL_CACERT-deprecation-in-curl-7.62.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-From f2c37fab5dbaffa06c1268ee1309596306c9a4df Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Tue, 20 Nov 2018 12:23:47 -0800
-Subject: [PATCH] Adjust for CURLE_SSL_CACERT deprecation in curl >= 7.62
-
-Use CURLE_PEER_FAILED_VERIFICATION instead
-
-Upstream-Status: Pending
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- src/lib/wsman-curl-client-transport.c | 7 +++++++
- 1 file changed, 7 insertions(+)
-
-diff --git a/src/lib/wsman-curl-client-transport.c b/src/lib/wsman-curl-client-transport.c
-index d0a3829b..92727f4f 100644
---- a/src/lib/wsman-curl-client-transport.c
-+++ b/src/lib/wsman-curl-client-transport.c
-@@ -186,16 +186,23 @@ convert_to_last_error(CURLcode r)
- return WS_LASTERR_SSL_CONNECT_ERROR;
- case CURLE_BAD_FUNCTION_ARGUMENT:
- return WS_LASTERR_CURL_BAD_FUNCTION_ARG;
-+#if LIBCURL_VERSION_NUM < 0x073E00
- case CURLE_SSL_PEER_CERTIFICATE:
- return WS_LASTERR_SSL_PEER_CERTIFICATE;
-+#endif
- case CURLE_SSL_ENGINE_NOTFOUND:
- return WS_LASTERR_SSL_ENGINE_NOTFOUND;
- case CURLE_SSL_ENGINE_SETFAILED:
- return WS_LASTERR_SSL_ENGINE_SETFAILED;
- case CURLE_SSL_CERTPROBLEM:
- return WS_LASTERR_SSL_CERTPROBLEM;
-+#if LIBCURL_VERSION_NUM < 0x073E00
- case CURLE_SSL_CACERT:
- return WS_LASTERR_SSL_CACERT;
-+#else
-+ case CURLE_PEER_FAILED_VERIFICATION:
-+ return WS_LASTERR_SSL_PEER_CERTIFICATE;
-+#endif
- #if LIBCURL_VERSION_NUM > 0x70C01
- case CURLE_SSL_ENGINE_INITFAILED:
- return WS_LASTERR_SSL_ENGINE_INITFAILED;
diff --git a/meta-openembedded/meta-oe/recipes-extended/openwsman/openwsman/0001-openSSL-1.1.0-API-fixes.patch b/meta-openembedded/meta-oe/recipes-extended/openwsman/openwsman/0001-openSSL-1.1.0-API-fixes.patch
deleted file mode 100644
index 8d230ba..0000000
--- a/meta-openembedded/meta-oe/recipes-extended/openwsman/openwsman/0001-openSSL-1.1.0-API-fixes.patch
+++ /dev/null
@@ -1,77 +0,0 @@
-From 634b95157e1823672a2c95fac0cecf079b5967e7 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Klaus=20K=C3=A4mpf?= <kkaempf@suse.de>
-Date: Mon, 19 Nov 2018 15:31:27 +0100
-Subject: [PATCH] openSSL 1.1.0 API fixes
-
----
- src/server/shttpd/io_ssl.c | 5 +++++
- src/server/shttpd/shttpd.c | 11 ++++++++++-
- src/server/shttpd/ssl.h | 3 +++
- 3 files changed, 18 insertions(+), 1 deletion(-)
-
-diff --git a/src/server/shttpd/io_ssl.c b/src/server/shttpd/io_ssl.c
-index 6de0db2a..ece610ef 100644
---- a/src/server/shttpd/io_ssl.c
-+++ b/src/server/shttpd/io_ssl.c
-@@ -21,8 +21,13 @@ struct ssl_func ssl_sw[] = {
- {"SSL_set_fd", {0}},
- {"SSL_new", {0}},
- {"SSL_CTX_new", {0}},
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- {"SSLv23_server_method", {0}},
- {"SSL_library_init", {0}},
-+#else
-+ {"TLS_server_method", {0}},
-+ {"OPENSSL_init_ssl", {0}},
-+#endif
- {"SSL_CTX_use_PrivateKey_file", {0}},
- {"SSL_CTX_use_certificate_file",{0}},
- {NULL, {0}}
-diff --git a/src/server/shttpd/shttpd.c b/src/server/shttpd/shttpd.c
-index f0f3fbd8..652aea17 100644
---- a/src/server/shttpd/shttpd.c
-+++ b/src/server/shttpd/shttpd.c
-@@ -1489,9 +1489,14 @@ set_ssl(struct shttpd_ctx *ctx, const char *pem)
- }
-
- /* Initialize SSL crap */
-- SSL_library_init();
-
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
-+ SSL_library_init();
- if ((CTX = SSL_CTX_new(SSLv23_server_method())) == NULL)
-+#else
-+ OPENSSL_init_ssl();
-+ if ((CTX = SSL_CTX_new(TLS_server_method())) == NULL)
-+#endif
- _shttpd_elog(E_LOG, NULL, "SSL_CTX_new error");
- else if (SSL_CTX_use_certificate_file(CTX, wsmand_options_get_ssl_cert_file(), SSL_FILETYPE_PEM) != 1)
- _shttpd_elog(E_LOG, NULL, "cannot open certificate file %s", pem);
-@@ -1552,6 +1557,10 @@ set_ssl(struct shttpd_ctx *ctx, const char *pem)
- if (rc != 1) {
- _shttpd_elog(E_LOG, NULL, "Failed to set SSL cipher list \"%s\"", ssl_cipher_list);
- }
-+ else if ((*ssl_cipher_list == 0) || (*ssl_cipher_list == ' ')) {
-+ _shttpd_elog(E_LOG, NULL, "Empty 'ssl_cipher_list' defaults to 'TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1305_SHA256:TLS_AES_128_GCM_SHA256'.");
-+ _shttpd_elog(E_LOG, NULL, "Check openSSL documentation.");
-+ }
- }
- ctx->ssl_ctx = CTX;
-
-diff --git a/src/server/shttpd/ssl.h b/src/server/shttpd/ssl.h
-index 2304b70a..89a73c49 100644
---- a/src/server/shttpd/ssl.h
-+++ b/src/server/shttpd/ssl.h
-@@ -56,6 +56,9 @@ extern struct ssl_func ssl_sw[];
- #if OPENSSL_VERSION_NUMBER < 0x10100000L
- #define SSLv23_server_method() (* (SSL_METHOD * (*)(void)) FUNC(9))()
- #define SSL_library_init() (* (int (*)(void)) FUNC(10))()
-+#else
-+#define TLS_server_method() (* (SSL_METHOD * (*)(void)) FUNC(9))()
-+#define OPENSSL_init_ssl() (* (int (*)(void)) FUNC(10))()
- #endif
- #define SSL_CTX_use_PrivateKey_file(x,y,z) (* (int (*)(SSL_CTX *, \
- const char *, int)) FUNC(11))((x), (y), (z))
---
-2.19.1
-
diff --git a/meta-openembedded/meta-oe/recipes-extended/openwsman/openwsman_2.6.8.bb b/meta-openembedded/meta-oe/recipes-extended/openwsman/openwsman_2.6.8.bb
deleted file mode 100644
index f04ff01..0000000
--- a/meta-openembedded/meta-oe/recipes-extended/openwsman/openwsman_2.6.8.bb
+++ /dev/null
@@ -1,75 +0,0 @@
-SUMMARY = "Opensource Implementation of WS-Management"
-DESCRIPTION = "Openwsman is a project intended to provide an open-source \
-implementation of the Web Services Management specipication \
-(WS-Management) and to expose system management information on the \
-Linux operating system using the WS-Management protocol. WS-Management \
-is based on a suite of web services specifications and usage \
-requirements that exposes a set of operations focused on and covers \
-all system management aspects. \
-Openwsman Server and service libraries"
-HOMEPAGE = "http://www.openwsman.org/"
-SECTION = "Applications/System"
-
-DEPENDS = "curl libxml2 openssl libpam"
-
-inherit distro_features_check
-REQUIRED_DISTRO_FEATURES = "pam"
-
-# v2.6.8
-SRCREV = "b9cd0b72534854abb6dd834c8c11e02111b4c8d7"
-
-SRC_URI = "git://github.com/Openwsman/openwsman.git \
- file://libssl-is-required-if-eventint-supported.patch \
- file://openwsmand.service \
- file://0001-lock.c-Define-PTHREAD_MUTEX_RECURSIVE_NP-if-undefine.patch \
- file://0001-openSSL-1.1.0-API-fixes.patch \
- file://0001-Adjust-for-CURLE_SSL_CACERT-deprecation-in-curl-7.62.patch \
- "
-
-S = "${WORKDIR}/git"
-
-LICENSE = "BSD"
-LIC_FILES_CHKSUM = "file://COPYING;md5=d4f53d4c6cf73b9d43186ce3be6dd0ba"
-
-inherit systemd cmake pkgconfig python3native perlnative
-
-SYSTEMD_SERVICE_${PN} = "openwsmand.service"
-SYSTEMD_AUTO_ENABLE = "disable"
-
-LDFLAGS_append = "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-gold', " -fuse-ld=bfd ", '', d)}"
-
-EXTRA_OECMAKE = "-DBUILD_BINDINGS=NO \
- -DBUILD_LIBCIM=NO \
- -DBUILD_PERL=YES \
- -DBUILD_PYTHON3=YES \
- -DBUILD_PYTHON=NO \
- -DCMAKE_INSTALL_PREFIX=${prefix} \
- -DLIB=${baselib} \
- "
-
-do_configure_prepend() {
- export STAGING_INCDIR=${STAGING_INCDIR}
- export STAGING_LIBDIR=${STAGING_LIBDIR}
-}
-
-do_install_append() {
- install -d ${D}/${sysconfdir}/init.d
- install -m 755 ${B}/etc/init/openwsmand.sh ${D}/${sysconfdir}/init.d/openwsmand
- ln -sf ${sysconfdir}/init.d/openwsmand ${D}/${sbindir}/rcopenwsmand
- chmod 755 ${D}/${sysconfdir}/openwsman/owsmangencert.sh
- if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then
- install -d ${D}/${systemd_unitdir}/system
- install -m 644 ${WORKDIR}/openwsmand.service ${D}/${systemd_unitdir}/system
-
- sed -i -e 's,@SBINDIR@,${sbindir},g' ${D}${systemd_unitdir}/system/openwsmand.service
- sed -i -e 's,@SYSCONFDIR@,${sysconfdir},g' ${D}${systemd_unitdir}/system/openwsmand.service
- sed -i -e 's,@LOCALSTATEDIR@,${localstatedir},g' ${D}${systemd_unitdir}/system/openwsmand.service
- fi
-}
-
-FILES_${PN}-dbg += "${libdir}/openwsman/plugins/.debug/ \
- ${libdir}/openwsman/authenticators/.debug/ \
- "
-
-INSANE_SKIP_${PN} = "dev-so"
-RDEPENDS_${PN} = "ruby"
diff --git a/meta-openembedded/meta-oe/recipes-extended/openwsman/openwsman_2.6.9.bb b/meta-openembedded/meta-oe/recipes-extended/openwsman/openwsman_2.6.9.bb
new file mode 100644
index 0000000..e5bb076
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-extended/openwsman/openwsman_2.6.9.bb
@@ -0,0 +1,73 @@
+SUMMARY = "Opensource Implementation of WS-Management"
+DESCRIPTION = "Openwsman is a project intended to provide an open-source \
+implementation of the Web Services Management specipication \
+(WS-Management) and to expose system management information on the \
+Linux operating system using the WS-Management protocol. WS-Management \
+is based on a suite of web services specifications and usage \
+requirements that exposes a set of operations focused on and covers \
+all system management aspects. \
+Openwsman Server and service libraries"
+HOMEPAGE = "http://www.openwsman.org/"
+SECTION = "Applications/System"
+
+DEPENDS = "curl libxml2 openssl libpam"
+
+inherit distro_features_check
+REQUIRED_DISTRO_FEATURES = "pam"
+
+# v2.6.9
+SRCREV = "5efb1545dbac7e6d1e0a992f3e84ca12cea1c18e"
+
+SRC_URI = "git://github.com/Openwsman/openwsman.git \
+ file://libssl-is-required-if-eventint-supported.patch \
+ file://openwsmand.service \
+ file://0001-lock.c-Define-PTHREAD_MUTEX_RECURSIVE_NP-if-undefine.patch \
+ "
+
+S = "${WORKDIR}/git"
+
+LICENSE = "BSD"
+LIC_FILES_CHKSUM = "file://COPYING;md5=d4f53d4c6cf73b9d43186ce3be6dd0ba"
+
+inherit systemd cmake pkgconfig python3native perlnative
+
+SYSTEMD_SERVICE_${PN} = "openwsmand.service"
+SYSTEMD_AUTO_ENABLE = "disable"
+
+LDFLAGS_append = "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-gold', " -fuse-ld=bfd ", '', d)}"
+
+EXTRA_OECMAKE = "-DBUILD_BINDINGS=NO \
+ -DBUILD_LIBCIM=NO \
+ -DBUILD_PERL=YES \
+ -DBUILD_PYTHON3=YES \
+ -DBUILD_PYTHON=NO \
+ -DCMAKE_INSTALL_PREFIX=${prefix} \
+ -DLIB=${baselib} \
+ "
+
+do_configure_prepend() {
+ export STAGING_INCDIR=${STAGING_INCDIR}
+ export STAGING_LIBDIR=${STAGING_LIBDIR}
+}
+
+do_install_append() {
+ install -d ${D}/${sysconfdir}/init.d
+ install -m 755 ${B}/etc/init/openwsmand.sh ${D}/${sysconfdir}/init.d/openwsmand
+ ln -sf ${sysconfdir}/init.d/openwsmand ${D}/${sbindir}/rcopenwsmand
+ chmod 755 ${D}/${sysconfdir}/openwsman/owsmangencert.sh
+ if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then
+ install -d ${D}/${systemd_unitdir}/system
+ install -m 644 ${WORKDIR}/openwsmand.service ${D}/${systemd_unitdir}/system
+
+ sed -i -e 's,@SBINDIR@,${sbindir},g' ${D}${systemd_unitdir}/system/openwsmand.service
+ sed -i -e 's,@SYSCONFDIR@,${sysconfdir},g' ${D}${systemd_unitdir}/system/openwsmand.service
+ sed -i -e 's,@LOCALSTATEDIR@,${localstatedir},g' ${D}${systemd_unitdir}/system/openwsmand.service
+ fi
+}
+
+FILES_${PN}-dbg += "${libdir}/openwsman/plugins/.debug/ \
+ ${libdir}/openwsman/authenticators/.debug/ \
+ "
+
+INSANE_SKIP_${PN} = "dev-so"
+RDEPENDS_${PN} = "ruby"
diff --git a/meta-openembedded/meta-oe/recipes-extended/redis/redis_4.0.12.bb b/meta-openembedded/meta-oe/recipes-extended/redis/redis_4.0.12.bb
deleted file mode 100644
index f09d226..0000000
--- a/meta-openembedded/meta-oe/recipes-extended/redis/redis_4.0.12.bb
+++ /dev/null
@@ -1,62 +0,0 @@
-SUMMARY = "Redis key-value store"
-DESCRIPTION = "Redis is an open source, advanced key-value store."
-HOMEPAGE = "http://redis.io"
-SECTION = "libs"
-LICENSE = "BSD"
-LIC_FILES_CHKSUM = "file://COPYING;md5=3c01b49fed4df1a79843688fa3f7b9d6"
-DEPENDS = ""
-
-SRC_URI = "http://download.redis.io/releases/${BP}.tar.gz \
- file://hiredis-use-default-CC-if-it-is-set.patch \
- file://lua-update-Makefile-to-use-environment-build-setting.patch \
- file://oe-use-libc-malloc.patch \
- file://redis.conf \
- file://init-redis-server \
- file://redis.service \
-"
-
-SRC_URI_append_mips = " file://remove-atomics.patch"
-SRC_URI_append_arm = " file://remove-atomics.patch"
-SRC_URI_append_powerpc = " file://remove-atomics.patch"
-
-SRC_URI[md5sum] = "48f240fd2d96b1b579300b866398edbc"
-SRC_URI[sha256sum] = "6447259d2eed426a949c9c13f8fdb2d91fb66d9dc915dd50db13b87f46d93162"
-
-inherit autotools-brokensep update-rc.d systemd useradd
-
-USERADD_PACKAGES = "${PN}"
-USERADD_PARAM_${PN} = "--system --home-dir /var/lib/redis -g redis --shell /bin/false redis"
-GROUPADD_PARAM_${PN} = "--system redis"
-
-
-REDIS_ON_SYSTEMD = "${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}"
-
-do_compile_prepend() {
- (cd deps && oe_runmake hiredis lua jemalloc linenoise)
-}
-
-do_install() {
- export PREFIX=${D}/${prefix}
- oe_runmake install
- install -d ${D}/${sysconfdir}/redis
- install -m 0644 ${WORKDIR}/redis.conf ${D}/${sysconfdir}/redis/redis.conf
- install -d ${D}/${sysconfdir}/init.d
- install -m 0755 ${WORKDIR}/init-redis-server ${D}/${sysconfdir}/init.d/redis-server
- install -d ${D}/var/lib/redis/
- chown redis.redis ${D}/var/lib/redis/
-
- install -d ${D}${systemd_system_unitdir}
- install -m 0644 ${WORKDIR}/redis.service ${D}${systemd_system_unitdir}
- sed -i 's!/usr/sbin/!${sbindir}/!g' ${D}${systemd_system_unitdir}/redis.service
-
- if [ "${REDIS_ON_SYSTEMD}" = true ]; then
- sed -i 's!daemonize yes!# daemonize yes!' ${D}/${sysconfdir}/redis/redis.conf
- fi
-}
-
-CONFFILES_${PN} = "${sysconfdir}/redis/redis.conf"
-
-INITSCRIPT_NAME = "redis-server"
-INITSCRIPT_PARAMS = "defaults 87"
-
-SYSTEMD_SERVICE_${PN} = "redis.service"
diff --git a/meta-openembedded/meta-oe/recipes-extended/redis/redis_4.0.14.bb b/meta-openembedded/meta-oe/recipes-extended/redis/redis_4.0.14.bb
new file mode 100644
index 0000000..63ab44b
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-extended/redis/redis_4.0.14.bb
@@ -0,0 +1,62 @@
+SUMMARY = "Redis key-value store"
+DESCRIPTION = "Redis is an open source, advanced key-value store."
+HOMEPAGE = "http://redis.io"
+SECTION = "libs"
+LICENSE = "BSD"
+LIC_FILES_CHKSUM = "file://COPYING;md5=3c01b49fed4df1a79843688fa3f7b9d6"
+DEPENDS = "readline lua ncurses"
+
+SRC_URI = "http://download.redis.io/releases/${BP}.tar.gz \
+ file://hiredis-use-default-CC-if-it-is-set.patch \
+ file://lua-update-Makefile-to-use-environment-build-setting.patch \
+ file://oe-use-libc-malloc.patch \
+ file://redis.conf \
+ file://init-redis-server \
+ file://redis.service \
+"
+
+SRC_URI_append_mips = " file://remove-atomics.patch"
+SRC_URI_append_arm = " file://remove-atomics.patch"
+SRC_URI_append_powerpc = " file://remove-atomics.patch"
+
+SRC_URI[md5sum] = "96ae20ffd68b9daee24b702b754d89f3"
+SRC_URI[sha256sum] = "1e1e18420a86cfb285933123b04a82e1ebda20bfb0a289472745a087587e93a7"
+
+inherit autotools-brokensep update-rc.d systemd useradd
+
+USERADD_PACKAGES = "${PN}"
+USERADD_PARAM_${PN} = "--system --home-dir /var/lib/redis -g redis --shell /bin/false redis"
+GROUPADD_PARAM_${PN} = "--system redis"
+
+
+REDIS_ON_SYSTEMD = "${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}"
+
+do_compile_prepend() {
+ (cd deps && oe_runmake hiredis lua linenoise)
+}
+
+do_install() {
+ export PREFIX=${D}/${prefix}
+ oe_runmake install
+ install -d ${D}/${sysconfdir}/redis
+ install -m 0644 ${WORKDIR}/redis.conf ${D}/${sysconfdir}/redis/redis.conf
+ install -d ${D}/${sysconfdir}/init.d
+ install -m 0755 ${WORKDIR}/init-redis-server ${D}/${sysconfdir}/init.d/redis-server
+ install -d ${D}/var/lib/redis/
+ chown redis.redis ${D}/var/lib/redis/
+
+ install -d ${D}${systemd_system_unitdir}
+ install -m 0644 ${WORKDIR}/redis.service ${D}${systemd_system_unitdir}
+ sed -i 's!/usr/sbin/!${sbindir}/!g' ${D}${systemd_system_unitdir}/redis.service
+
+ if [ "${REDIS_ON_SYSTEMD}" = true ]; then
+ sed -i 's!daemonize yes!# daemonize yes!' ${D}/${sysconfdir}/redis/redis.conf
+ fi
+}
+
+CONFFILES_${PN} = "${sysconfdir}/redis/redis.conf"
+
+INITSCRIPT_NAME = "redis-server"
+INITSCRIPT_PARAMS = "defaults 87"
+
+SYSTEMD_SERVICE_${PN} = "redis.service"
diff --git a/meta-openembedded/meta-oe/recipes-extended/rrdtool/rrdtool/0001-add-missing-etc-rrdcached-default-lsb.in-to-tarball-.patch b/meta-openembedded/meta-oe/recipes-extended/rrdtool/rrdtool/0001-add-missing-etc-rrdcached-default-lsb.in-to-tarball-.patch
new file mode 100644
index 0000000..701ab2c
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-extended/rrdtool/rrdtool/0001-add-missing-etc-rrdcached-default-lsb.in-to-tarball-.patch
@@ -0,0 +1,45 @@
+From 35aae13a34728e14150706b2a4b1a57fabe00e98 Mon Sep 17 00:00:00 2001
+From: Tobias Oetiker <tobi@oetiker.ch>
+Date: Mon, 4 Feb 2019 16:25:06 +0100
+Subject: [PATCH 1/3] add missing etc/rrdcached-default-lsb.in to tarball -
+ fixes #956
+
+Add missing etc/rrdcached-default-lsb.in to tarball - fixes #956
+
+Upstream-Status: Backport [https://github.com/oetiker/rrdtool-1.x/commit/35aae13a34728e14150706b2a4b1a57fabe00e98]
+
+Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
+---
+ Makefile.am | 2 +-
+ Makefile.in | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/Makefile.am b/Makefile.am
+index 5a15db6c..6bec092e 100644
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -20,7 +20,7 @@ EXTRA_DIST = COPYRIGHT CHANGES TODO CONTRIBUTORS THREADS VERSION LICENSE \
+ rrdtool.spec favicon.ico bootstrap \
+ libtool \
+ m4/snprintf.m4 \
+- etc/rrdcached-default-redhat etc/rrdcached-init-redhat \
++ etc/rrdcached-default-redhat etc/rrdcached-init-redhat etc/rrdcached-default-lsb.in \
+ win32/build-rrdtool.dot win32/build-rrdtool.pdf win32/build-rrdtool.svg \
+ win32/librrd-4.def win32/librrd-4.rc win32/librrd-4.vcxproj \
+ win32/Makefile.msc win32/README win32/README-MinGW-w64 win32/rrdcgi.rc win32/rrd_config.h \
+diff --git a/Makefile.in b/Makefile.in
+index 607193c1..c9b1939f 100644
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -432,7 +432,7 @@ EXTRA_DIST = COPYRIGHT CHANGES TODO CONTRIBUTORS THREADS VERSION LICENSE \
+ rrdtool.spec favicon.ico bootstrap \
+ libtool \
+ m4/snprintf.m4 \
+- etc/rrdcached-default-redhat etc/rrdcached-init-redhat \
++ etc/rrdcached-default-redhat etc/rrdcached-init-redhat etc/rrdcached-default-lsb.in \
+ win32/build-rrdtool.dot win32/build-rrdtool.pdf win32/build-rrdtool.svg \
+ win32/librrd-4.def win32/librrd-4.rc win32/librrd-4.vcxproj \
+ win32/Makefile.msc win32/README win32/README-MinGW-w64 win32/rrdcgi.rc win32/rrd_config.h \
+--
+2.17.1
+
diff --git a/meta-openembedded/meta-oe/recipes-extended/rrdtool/rrdtool/0002-properly-add-etc-files-via-EXTRA_DIST-fixes-956-some.patch b/meta-openembedded/meta-oe/recipes-extended/rrdtool/rrdtool/0002-properly-add-etc-files-via-EXTRA_DIST-fixes-956-some.patch
new file mode 100644
index 0000000..0385ae6
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-extended/rrdtool/rrdtool/0002-properly-add-etc-files-via-EXTRA_DIST-fixes-956-some.patch
@@ -0,0 +1,93 @@
+From 3e469b4c4b5c219469b0be299ce75c4fac09afc9 Mon Sep 17 00:00:00 2001
+From: Tobias Oetiker <tobi@oetiker.ch>
+Date: Mon, 4 Feb 2019 17:17:25 +0100
+Subject: [PATCH 2/3] properly add etc files via EXTRA_DIST - fixes #956 some more
+
+Add etc files via EXTRA_DIST - fixes #956 some more
+
+Upstream-Status: Backport [https://github.com/oetiker/rrdtool-1.x/commit/3e469b4c4b5c219469b0be299ce75c4fac09afc9]
+
+Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
+---
+ Makefile.am | 3 +--
+ Makefile.in | 5 ++---
+ etc/Makefile.am | 3 +++
+ etc/Makefile.in | 3 +++
+ 4 files changed, 9 insertions(+), 5 deletions(-)
+
+diff --git a/Makefile.am b/Makefile.am
+index 6bec092e..c3e2c303 100644
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -5,7 +5,7 @@ RSYNC = rsync --rsh=ssh
+
+ # build the following subdirectories
+
+-SUBDIRS = po src bindings tests
++SUBDIRS = po src bindings tests etc
+
+ if BUILD_DOCS
+ SUBDIRS += doc
+@@ -20,7 +20,6 @@ EXTRA_DIST = COPYRIGHT CHANGES TODO CONTRIBUTORS THREADS VERSION LICENSE \
+ rrdtool.spec favicon.ico bootstrap \
+ libtool \
+ m4/snprintf.m4 \
+- etc/rrdcached-default-redhat etc/rrdcached-init-redhat etc/rrdcached-default-lsb.in \
+ win32/build-rrdtool.dot win32/build-rrdtool.pdf win32/build-rrdtool.svg \
+ win32/librrd-4.def win32/librrd-4.rc win32/librrd-4.vcxproj \
+ win32/Makefile.msc win32/README win32/README-MinGW-w64 win32/rrdcgi.rc win32/rrd_config.h \
+diff --git a/Makefile.in b/Makefile.in
+index c9b1939f..6a1280e4 100644
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -168,7 +168,7 @@ am__define_uniq_tagged_files = \
+ ETAGS = etags
+ CTAGS = ctags
+ CSCOPE = cscope
+-DIST_SUBDIRS = po src bindings tests doc examples
++DIST_SUBDIRS = po src bindings tests etc doc examples
+ am__DIST_COMMON = $(srcdir)/Makefile.in \
+ $(top_srcdir)/conftools/compile \
+ $(top_srcdir)/conftools/config.guess \
+@@ -427,12 +427,11 @@ top_srcdir = @top_srcdir@
+ RSYNC = rsync --rsh=ssh
+
+ # build the following subdirectories
+-SUBDIRS = po src bindings tests $(am__append_1) $(am__append_2)
++SUBDIRS = po src bindings tests etc $(am__append_1) $(am__append_2)
+ EXTRA_DIST = COPYRIGHT CHANGES TODO CONTRIBUTORS THREADS VERSION LICENSE \
+ rrdtool.spec favicon.ico bootstrap \
+ libtool \
+ m4/snprintf.m4 \
+- etc/rrdcached-default-redhat etc/rrdcached-init-redhat etc/rrdcached-default-lsb.in \
+ win32/build-rrdtool.dot win32/build-rrdtool.pdf win32/build-rrdtool.svg \
+ win32/librrd-4.def win32/librrd-4.rc win32/librrd-4.vcxproj \
+ win32/Makefile.msc win32/README win32/README-MinGW-w64 win32/rrdcgi.rc win32/rrd_config.h \
+diff --git a/etc/Makefile.am b/etc/Makefile.am
+index f5503f0c..ab763dc8 100644
+--- a/etc/Makefile.am
++++ b/etc/Makefile.am
+@@ -1,3 +1,6 @@
++EXTRA_DIST = rrdcached-default-redhat rrdcached-init-redhat rrdcached-default-lsb.in \
++ rrdcached.socket.in rrdcached.service.in
++
+ if HAVE_SYSTEMD
+ systemdsystemunit_DATA = \
+ etc/rrdcached.socket \
+diff --git a/etc/Makefile.in b/etc/Makefile.in
+index c67f9214..74b914b9 100644
+--- a/etc/Makefile.in
++++ b/etc/Makefile.in
+@@ -364,6 +364,9 @@ target_vendor = @target_vendor@
+ top_build_prefix = @top_build_prefix@
+ top_builddir = @top_builddir@
+ top_srcdir = @top_srcdir@
++EXTRA_DIST = rrdcached-default-redhat rrdcached-init-redhat rrdcached-default-lsb.in \
++ rrdcached.socket.in rrdcached.service.in
++
+ @HAVE_SYSTEMD_TRUE@systemdsystemunit_DATA = \
+ @HAVE_SYSTEMD_TRUE@ etc/rrdcached.socket \
+ @HAVE_SYSTEMD_TRUE@ etc/rrdcached.service
+--
+2.17.1
+
diff --git a/meta-openembedded/meta-oe/recipes-extended/rrdtool/rrdtool/0003-Fixed-No-rule-to-make-target-etc-rrdcached.socket.patch b/meta-openembedded/meta-oe/recipes-extended/rrdtool/rrdtool/0003-Fixed-No-rule-to-make-target-etc-rrdcached.socket.patch
new file mode 100644
index 0000000..b929e31
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-extended/rrdtool/rrdtool/0003-Fixed-No-rule-to-make-target-etc-rrdcached.socket.patch
@@ -0,0 +1,51 @@
+From 865a9bade72f93cf72ca59954c6df01e8c48915d Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Jaroslav=20=C5=A0karvada?= <jskarvad@redhat.com>
+Date: Tue, 5 Feb 2019 15:04:34 +0100
+Subject: [PATCH 3/3] Fixed 'No rule to make target 'etc/rrdcached.socket'
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Fixed 'No rule to make target 'etc/rrdcached.socket'
+
+Upstream-Status: Backport [https://github.com/oetiker/rrdtool-1.x/commit/865a9bade72f93cf72ca59954c6df01e8c48915d]
+
+Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com
+Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
+---
+ etc/Makefile.am | 4 ++--
+ etc/Makefile.in | 4 ++--
+ 2 files changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/etc/Makefile.am b/etc/Makefile.am
+index ab763dc8..7d18178a 100644
+--- a/etc/Makefile.am
++++ b/etc/Makefile.am
+@@ -3,6 +3,6 @@ EXTRA_DIST = rrdcached-default-redhat rrdcached-init-redhat rrdcached-default-ls
+
+ if HAVE_SYSTEMD
+ systemdsystemunit_DATA = \
+- etc/rrdcached.socket \
+- etc/rrdcached.service
++ rrdcached.socket \
++ rrdcached.service
+ endif
+\ No newline at end of file
+diff --git a/etc/Makefile.in b/etc/Makefile.in
+index 74b914b9..d512fd59 100644
+--- a/etc/Makefile.in
++++ b/etc/Makefile.in
+@@ -368,8 +368,8 @@ EXTRA_DIST = rrdcached-default-redhat rrdcached-init-redhat rrdcached-default-ls
+ rrdcached.socket.in rrdcached.service.in
+
+ @HAVE_SYSTEMD_TRUE@systemdsystemunit_DATA = \
+-@HAVE_SYSTEMD_TRUE@ etc/rrdcached.socket \
+-@HAVE_SYSTEMD_TRUE@ etc/rrdcached.service
++@HAVE_SYSTEMD_TRUE@ rrdcached.socket \
++@HAVE_SYSTEMD_TRUE@ rrdcached.service
+
+ all: all-am
+
+--
+2.17.1
+
diff --git a/meta-openembedded/meta-oe/recipes-extended/rrdtool/rrdtool_1.7.0.bb b/meta-openembedded/meta-oe/recipes-extended/rrdtool/rrdtool_1.7.0.bb
deleted file mode 100644
index 4a6c446..0000000
--- a/meta-openembedded/meta-oe/recipes-extended/rrdtool/rrdtool_1.7.0.bb
+++ /dev/null
@@ -1,129 +0,0 @@
-SUMMARY = "High performance data logging and graphing system for time series data"
-HOMEPAGE = "http://oss.oetiker.ch/rrdtool/"
-
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYRIGHT;md5=3349111ed0533471494beec99715bc9d"
-
-DEPENDS = "libpng zlib cairo pango glib-2.0 libxml2 groff-native python-setuptools-native"
-
-SRCREV = "bfc82d5242855628b826018479df00e0ec4e8360"
-PV = "1.7.0"
-
-SRC_URI = "\
- git://github.com/oetiker/rrdtool-1.x.git;branch=master;protocol=http; \
-"
-
-S = "${WORKDIR}/git"
-
-inherit cpan autotools-brokensep gettext pythonnative python-dir systemd
-
-BBCLASSEXTEND = "native"
-
-SYSTEMD_PACKAGES = "rrdcached"
-SYSTEMD_SERVICE_rrdcached = "rrdcached.socket rrdcached.service"
-
-EXTRA_AUTORECONF = "-I m4 --exclude=autopoint"
-
-PACKAGECONFIG ??= "python perl ${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)}"
-
-PACKAGECONFIG[python] = "--enable-python=yes \
-am_cv_python_pythondir=${STAGING_LIBDIR}/python${PYTHON_BASEVERSION}/site-packages \
-am_cv_python_pyexecdir=${STAGING_LIBDIR}/python${PYTHON_BASEVERSION}/site-packages,\
---disable-python,python,"
-
-PACKAGECONFIG[perl] = \
-"--enable-perl=yes --with-perl-options='INSTALLDIRS="vendor"' \
-ac_cv_path_PERL_CC='${CC}', \
---disable-perl,perl,"
-
-PACKAGECONFIG[dbi] = "--enable-libdbi,--disable-libdbi,libdbi"
-
-PACKAGECONFIG[systemd] = "--with-systemdsystemunitdir=${systemd_unitdir}/system/,--without-systemdsystemunitdir,systemd,"
-
-EXTRA_OECONF = " \
- --enable-shared \
- --disable-libwrap \
- --program-prefix='' \
- rd_cv_ieee_works=yes \
- --disable-ruby \
- --disable-lua \
- --disable-tcl \
- --disable-rpath \
- --enable-nls=${USE_NLS} \
- --disable-docs \
-"
-
-export STAGING_LIBDIR
-export STAGING_INCDIR
-
-# emulate cpan_do_configure
-EXTRA_OEMAKE = ' PERL5LIB="${PERL_ARCHLIB}" '
-# Avoid do_configure error on some hosts
-
-do_configure() {
- unset PERLHOSTLIB
- #fix the pkglib problem with newer automake
- #perl
- sed -i -e "s|-Wl,--rpath -Wl,\$rp||g" \
- ${S}/bindings/perl-shared/Makefile.PL
-
- #python
- sed -i -e '/PYTHON_INCLUDES="-I${/c \
- PYTHON_INCLUDES="-I=/usr/include/python${PYTHON_BASEVERSION}"' \
- ${S}/m4/acinclude.m4
- #remove the useless RPATH from the rrdtool.so
- sed -i -e 's|LD_RUN_PATH=$(libdir)||g' ${S}/bindings/Makefile.am
-
- autotools_do_configure
-
- #modify python sitepkg
- #remove the dependency of perl-shared:Makefile
- #or perl-shared/Makefile will be regenerated
- #if any code touch bindings/Makefile after below perl bindings code
- sed -i -e "s:python/setup.py install:python/setup.py install \
- --install-lib=${PYTHON_SITEPACKAGES_DIR}:" \
- -e "s:perl-shared/Makefile.PL Makefile:perl-shared/Makefile.PL:" \
- ${B}/bindings/Makefile
-
- #redo the perl bindings
- (
- cd ${S}/bindings/perl-shared;
- perl Makefile.PL INSTALLDIRS="vendor" INSTALLPRIVLIB="abc";
-
- cd ../../bindings/perl-piped;
- perl Makefile.PL INSTALLDIRS="vendor";
- )
-
- #change the interpreter in file
- sed -i -e "s|^PERL = ${STAGING_BINDIR_NATIVE}/.*|PERL = /usr/bin/perl|g" \
- ${B}/examples/Makefile
- sed -i -e "s|${STAGING_BINDIR_NATIVE}/perl-native/perl|/usr/bin/perl|g" \
- ${B}/examples/*.pl
-}
-
-PACKAGES =+ "${PN}-perl ${PN}-python"
-PACKAGES =+ "rrdcached"
-
-DESCRIPTION_rrdcached = \
-"The rrdcached package contains the data caching daemon for RRDtool."
-
-FILES_rrdcached = "${bindir}/rrdcached \
- ${systemd_unitdir}/system/rrdcached.service \
- ${systemd_unitdir}/system/rrdcached.socket"
-
-FILES_${PN}-doc += "${datadir}/rrdtool/examples"
-
-DESCRIPTION_${PN}-perl = \
-"The ${PN}-perl package includes RRDtool bindings for perl."
-FILES_${PN}-perl = "${libdir}/perl/vendor_perl/*/*.pm \
- ${libdir}/perl/vendor_perl/*/auto/RRDs/RRDs.*"
-RDEPENDS_${PN}-perl = "perl perl-module-lib perl-module-getopt-long perl-module-time-hires \
- perl-module-io-file perl-module-ipc-open2 perl-module-io-socket"
-
-DESCRIPTION_${PN}-python = \
-"The ${PN}-python package includes RRDtool bindings for python."
-FILES_${PN}-python = "${libdir}/python${PYTHON_BASEVERSION}/site-packages/*"
-RDEPENDS_${PN}-python = "python"
-
-FILES_${PN}-dbg += "${libdir}/perl/vendor_perl/*/auto/RRDs/.debug \
- ${libdir}/python${PYTHON_BASEVERSION}/site-packages/.debug"
diff --git a/meta-openembedded/meta-oe/recipes-extended/rrdtool/rrdtool_1.7.1.bb b/meta-openembedded/meta-oe/recipes-extended/rrdtool/rrdtool_1.7.1.bb
new file mode 100644
index 0000000..63cdb7a
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-extended/rrdtool/rrdtool_1.7.1.bb
@@ -0,0 +1,132 @@
+SUMMARY = "High performance data logging and graphing system for time series data"
+HOMEPAGE = "http://oss.oetiker.ch/rrdtool/"
+
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYRIGHT;md5=3349111ed0533471494beec99715bc9d"
+
+DEPENDS = "libpng zlib cairo pango glib-2.0 libxml2 groff-native python-setuptools-native"
+
+SRCREV = "34e6ff6218bb0372eb545f886dec96dd3d20be47"
+PV = "1.7.1"
+
+SRC_URI = "\
+ git://github.com/oetiker/rrdtool-1.x.git;branch=master;protocol=http; \
+ file://0001-add-missing-etc-rrdcached-default-lsb.in-to-tarball-.patch \
+ file://0002-properly-add-etc-files-via-EXTRA_DIST-fixes-956-some.patch \
+ file://0003-Fixed-No-rule-to-make-target-etc-rrdcached.socket.patch \
+"
+
+S = "${WORKDIR}/git"
+
+inherit cpan autotools-brokensep gettext pythonnative python-dir systemd
+
+BBCLASSEXTEND = "native"
+
+SYSTEMD_PACKAGES = "rrdcached"
+SYSTEMD_SERVICE_rrdcached = "rrdcached.socket rrdcached.service"
+
+EXTRA_AUTORECONF = "-I m4 --exclude=autopoint"
+
+PACKAGECONFIG ??= "python perl ${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)}"
+
+PACKAGECONFIG[python] = "--enable-python=yes \
+am_cv_python_pythondir=${STAGING_LIBDIR}/python${PYTHON_BASEVERSION}/site-packages \
+am_cv_python_pyexecdir=${STAGING_LIBDIR}/python${PYTHON_BASEVERSION}/site-packages,\
+--disable-python,python,"
+
+PACKAGECONFIG[perl] = \
+"--enable-perl=yes --with-perl-options='INSTALLDIRS="vendor"' \
+ac_cv_path_PERL_CC='${CC}', \
+--disable-perl,perl,"
+
+PACKAGECONFIG[dbi] = "--enable-libdbi,--disable-libdbi,libdbi"
+
+PACKAGECONFIG[systemd] = "--with-systemdsystemunitdir=${systemd_unitdir}/system/,--without-systemdsystemunitdir,systemd,"
+
+EXTRA_OECONF = " \
+ --enable-shared \
+ --disable-libwrap \
+ --program-prefix='' \
+ rd_cv_ieee_works=yes \
+ --disable-ruby \
+ --disable-lua \
+ --disable-tcl \
+ --disable-rpath \
+ --enable-nls=${USE_NLS} \
+ --disable-docs \
+"
+
+export STAGING_LIBDIR
+export STAGING_INCDIR
+
+# emulate cpan_do_configure
+EXTRA_OEMAKE = ' PERL5LIB="${PERL_ARCHLIB}" '
+# Avoid do_configure error on some hosts
+
+do_configure() {
+ unset PERLHOSTLIB
+ #fix the pkglib problem with newer automake
+ #perl
+ sed -i -e "s|-Wl,--rpath -Wl,\$rp||g" \
+ ${S}/bindings/perl-shared/Makefile.PL
+
+ #python
+ sed -i -e '/PYTHON_INCLUDES="-I${/c \
+ PYTHON_INCLUDES="-I=/usr/include/python${PYTHON_BASEVERSION}"' \
+ ${S}/m4/acinclude.m4
+ #remove the useless RPATH from the rrdtool.so
+ sed -i -e 's|LD_RUN_PATH=$(libdir)||g' ${S}/bindings/Makefile.am
+
+ autotools_do_configure
+
+ #modify python sitepkg
+ #remove the dependency of perl-shared:Makefile
+ #or perl-shared/Makefile will be regenerated
+ #if any code touch bindings/Makefile after below perl bindings code
+ sed -i -e "s:python/setup.py install:python/setup.py install \
+ --install-lib=${PYTHON_SITEPACKAGES_DIR}:" \
+ -e "s:perl-shared/Makefile.PL Makefile:perl-shared/Makefile.PL:" \
+ ${B}/bindings/Makefile
+
+ #redo the perl bindings
+ (
+ cd ${S}/bindings/perl-shared;
+ perl Makefile.PL INSTALLDIRS="vendor" INSTALLPRIVLIB="abc";
+
+ cd ../../bindings/perl-piped;
+ perl Makefile.PL INSTALLDIRS="vendor";
+ )
+
+ #change the interpreter in file
+ sed -i -e "s|^PERL = ${STAGING_BINDIR_NATIVE}/.*|PERL = /usr/bin/perl|g" \
+ ${B}/examples/Makefile
+ sed -i -e "s|${STAGING_BINDIR_NATIVE}/perl-native/perl|/usr/bin/perl|g" \
+ ${B}/examples/*.pl
+}
+
+PACKAGES =+ "${PN}-perl ${PN}-python"
+PACKAGES =+ "rrdcached"
+
+DESCRIPTION_rrdcached = \
+"The rrdcached package contains the data caching daemon for RRDtool."
+
+FILES_rrdcached = "${bindir}/rrdcached \
+ ${systemd_unitdir}/system/rrdcached.service \
+ ${systemd_unitdir}/system/rrdcached.socket"
+
+FILES_${PN}-doc += "${datadir}/rrdtool/examples"
+
+DESCRIPTION_${PN}-perl = \
+"The ${PN}-perl package includes RRDtool bindings for perl."
+FILES_${PN}-perl = "${libdir}/perl/vendor_perl/*/*.pm \
+ ${libdir}/perl/vendor_perl/*/auto/RRDs/RRDs.*"
+RDEPENDS_${PN}-perl = "perl perl-module-lib perl-module-getopt-long perl-module-time-hires \
+ perl-module-io-file perl-module-ipc-open2 perl-module-io-socket"
+
+DESCRIPTION_${PN}-python = \
+"The ${PN}-python package includes RRDtool bindings for python."
+FILES_${PN}-python = "${libdir}/python${PYTHON_BASEVERSION}/site-packages/*"
+RDEPENDS_${PN}-python = "python"
+
+FILES_${PN}-dbg += "${libdir}/perl/vendor_perl/*/auto/RRDs/.debug \
+ ${libdir}/python${PYTHON_BASEVERSION}/site-packages/.debug"
diff --git a/meta-openembedded/meta-oe/recipes-graphics/fontforge/fontforge_20170731.bb b/meta-openembedded/meta-oe/recipes-graphics/fontforge/fontforge_20170731.bb
deleted file mode 100644
index 661b5e8..0000000
--- a/meta-openembedded/meta-oe/recipes-graphics/fontforge/fontforge_20170731.bb
+++ /dev/null
@@ -1,61 +0,0 @@
-SUMMARY = "A font editor"
-HOMEPAGE = "http://fontforge.github.io/en-US/"
-LICENSE = "BSD-3-Clause & GPLv3"
-LIC_FILES_CHKSUM = " \
- file://COPYING.gplv3;md5=d32239bcb673463ab874e80d47fae504 \
- file://LICENSE;md5=3f922b42ed0033fa0fd4cd3268f6429c \
-"
-
-DEPENDS = "glib-2.0 pango giflib tiff libxml2 jpeg python libtool uthash gnulib gettext-native"
-DEPENDS_append_class-target = " libxi"
-
-inherit autotools pkgconfig pythonnative distro_features_check gettext
-
-REQUIRED_DISTRO_FEATURES_append_class-target = " x11"
-
-SRC_URI = "git://github.com/${BPN}/${BPN}.git"
-# tag 20170731
-SRCREV = "b9149c13e8f9464fc21473f1f676b36a2130775d"
-S = "${WORKDIR}/git"
-
-EXTRA_OECONF_append_class-native = " with_x=no"
-
-do_configure_prepend() {
- # uthash sources are expected in uthash/src
- currdir=`pwd`
- cd ${S}
-
- mkdir -p uthash/src
- cp ${STAGING_INCDIR}/ut*.h uthash/src
-
- # avoid bootstrap cloning gnulib on every configure
- cat >.gitmodules <<EOF
-[submodule "gnulib"]
- path = gnulib
- url = git://git.sv.gnu.org/gnulib
-EOF
- cp -rf ${STAGING_DATADIR}/gnulib ${S}
-
- # --force to avoid errors on reconfigure e.g if recipes changed we depend on
- # | bootstrap: running: libtoolize --quiet
- # | libtoolize: error: 'libltdl/COPYING.LIB' exists: use '--force' to overwrite
- # | ...
- ./bootstrap --force
-
- cd $currdir
-}
-
-PACKAGES =+ "${PN}-python"
-
-RPROVIDES_${PN}-dbg += "${PN}-python-dbg"
-
-FILES_${PN} += " \
- ${datadir}/mime \
- ${datadir}/icons \
-"
-
-FILES_${PN}-python = "${PYTHON_SITEPACKAGES_DIR} ${datadir}/${BPN}/python"
-RDEPENDS_${PN}-python = "python"
-
-# for e.g kde's oxygen-fonts
-BBCLASSEXTEND = "native"
diff --git a/meta-openembedded/meta-oe/recipes-graphics/fontforge/fontforge_20190413.bb b/meta-openembedded/meta-oe/recipes-graphics/fontforge/fontforge_20190413.bb
new file mode 100644
index 0000000..ee3bc58
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-graphics/fontforge/fontforge_20190413.bb
@@ -0,0 +1,62 @@
+SUMMARY = "A font editor"
+HOMEPAGE = "http://fontforge.github.io/en-US/"
+LICENSE = "BSD-3-Clause & GPLv3"
+LIC_FILES_CHKSUM = " \
+ file://COPYING.gplv3;md5=d32239bcb673463ab874e80d47fae504 \
+ file://LICENSE;md5=5f9637af5c51f2e8d06385ef38eb48f1 \
+"
+
+DEPENDS = "glib-2.0 pango giflib tiff libxml2 jpeg python libtool uthash gnulib gettext-native"
+DEPENDS_append_class-target = " libxi"
+
+inherit autotools pkgconfig pythonnative distro_features_check gettext gtk-icon-cache mime
+
+REQUIRED_DISTRO_FEATURES_append_class-target = " x11"
+
+SRC_URI = "git://github.com/${BPN}/${BPN}.git"
+# tag 20190413
+SRCREV = "7f6f1d021fdfea7789972f9534ba3241616d8dfc"
+S = "${WORKDIR}/git"
+
+EXTRA_OECONF_append_class-native = " with_x=no"
+
+do_configure_prepend() {
+ # uthash sources are expected in uthash/src
+ currdir=`pwd`
+ cd ${S}
+
+ mkdir -p uthash/src
+ cp ${STAGING_INCDIR}/ut*.h uthash/src
+
+ # avoid bootstrap cloning gnulib on every configure
+ cat >.gitmodules <<EOF
+[submodule "gnulib"]
+ path = gnulib
+ url = git://git.sv.gnu.org/gnulib
+EOF
+ cp -rf ${STAGING_DATADIR}/gnulib ${S}
+
+ # --force to avoid errors on reconfigure e.g if recipes changed we depend on
+ # | bootstrap: running: libtoolize --quiet
+ # | libtoolize: error: 'libltdl/COPYING.LIB' exists: use '--force' to overwrite
+ # | ...
+ ./bootstrap --force
+
+ cd $currdir
+}
+
+PACKAGES =+ "${PN}-python"
+
+RPROVIDES_${PN}-dbg += "${PN}-python-dbg"
+
+FILES_${PN} += " \
+ ${datadir}/appdata \
+ ${datadir}/metainfo \
+ ${datadir}/mime \
+"
+
+FILES_${PN}-python = "${PYTHON_SITEPACKAGES_DIR} ${datadir}/${BPN}/python"
+RDEPENDS_${PN}-python = "python"
+
+# for e.g kde's oxygen-fonts
+BBCLASSEXTEND = "native"
diff --git a/meta-openembedded/meta-oe/recipes-graphics/ftgl/ftgl_2.1.3-rc5.bb b/meta-openembedded/meta-oe/recipes-graphics/ftgl/ftgl_2.1.3-rc5.bb
index c5eaf42..343c983 100644
--- a/meta-openembedded/meta-oe/recipes-graphics/ftgl/ftgl_2.1.3-rc5.bb
+++ b/meta-openembedded/meta-oe/recipes-graphics/ftgl/ftgl_2.1.3-rc5.bb
@@ -5,7 +5,7 @@
inherit autotools pkgconfig distro_features_check
-REQUIRED_DISTRO_FEATURES = "opengl"
+REQUIRED_DISTRO_FEATURES = "opengl x11"
DEPENDS += " \
freetype \
diff --git a/meta-openembedded/meta-oe/recipes-graphics/fvwm/fvwm/0001-Fix-compilation-for-disabled-gnome.patch b/meta-openembedded/meta-oe/recipes-graphics/fvwm/fvwm/0001-Fix-compilation-for-disabled-gnome.patch
index 5a76474..e81d395 100644
--- a/meta-openembedded/meta-oe/recipes-graphics/fvwm/fvwm/0001-Fix-compilation-for-disabled-gnome.patch
+++ b/meta-openembedded/meta-oe/recipes-graphics/fvwm/fvwm/0001-Fix-compilation-for-disabled-gnome.patch
@@ -27,22 +27,7 @@
index 48ce264..fab7b44 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -1413,23 +1413,7 @@ else
- problem_gdkimlib=": Failed on gdk-imlib, see config.log"
- fi
-
--GNOME_INIT_HOOK
--
--# Unfortunately we have 2 gnome supports: WM hints and gnome libs.
--# The $with_gnomehints below refers to the first, not GNOME_INIT_HOOK.
--if test ! x"$enable_gnome_hints" = xno; then
-- with_gnomehints=yes
-- problem_gnomehints=""
--else
-- with_gnomehints=no
-- problem_gnomehints=": Explicitly disabled"
--fi
--
+@@ -1413,8 +1413,4 @@ else
# Define some compatibility macros needed for config.h.
-mg_DEFINE_IF_NOT([#include <X11/keysym.h>],
- [defined XK_Page_Up && defined XK_Page_Down],
diff --git a/meta-openembedded/meta-oe/recipes-graphics/fvwm/fvwm/0002-Avoid-absolute-symlinks.patch b/meta-openembedded/meta-oe/recipes-graphics/fvwm/fvwm/0002-Avoid-absolute-symlinks.patch
deleted file mode 100644
index 756cc86..0000000
--- a/meta-openembedded/meta-oe/recipes-graphics/fvwm/fvwm/0002-Avoid-absolute-symlinks.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From: Sebastian Reichel <sebastian.reichel@collabora.co.uk>
-Date: Tue, 29 Auf 2017 16:08:42 +0200
-Subject: [PATCH] Avoid absolute symlinks
-
-Avoid usage of absolute symlinks, which breaks yocto builds
-since pyro.
-
-Upstream-Status: Pending
-Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.co.uk>
-
-diff --git a/default-config/Makefile.am b/default-config/Makefile.am
-index 5e16d095a137..5404145a742c 100644
---- a/default-config/Makefile.am
-+++ b/default-config/Makefile.am
-@@ -17,9 +17,9 @@ EXTRA_DIST = images \
-
- install-data-hook:
- cp -r $(srcdir)/images $(inst_location)
-- ln -sf $(inst_location)/FvwmScript-DateTime $(inst_location)/..
-- ln -sf $(inst_location)/FvwmScript-ConfirmQuit $(inst_location)/..
-- ln -sf $(inst_location)/FvwmScript-ConfirmCopyConfig $(inst_location)/..
-+ ln -sf default-config/FvwmScript-DateTime $(inst_location)/..
-+ ln -sf default-config/FvwmScript-ConfirmQuit $(inst_location)/..
-+ ln -sf default-config/FvwmScript-ConfirmCopyConfig $(inst_location)/..
-
- uninstall-hook:
- rm -fr $(DESTDIR)/$(configdir)
diff --git a/meta-openembedded/meta-oe/recipes-graphics/fvwm/fvwm_2.6.7.bb b/meta-openembedded/meta-oe/recipes-graphics/fvwm/fvwm_2.6.7.bb
deleted file mode 100644
index cb851bf..0000000
--- a/meta-openembedded/meta-oe/recipes-graphics/fvwm/fvwm_2.6.7.bb
+++ /dev/null
@@ -1,114 +0,0 @@
-SUMMARY = "F Virtual Window Manager "
-HOMEPAGE = "http://www.fvwm.org/"
-SECTION = "x11/wm"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=363fbcfb59124689af72c914560eaf6e"
-
-DEPENDS = " \
- bison-native \
- flex-native \
- freetype-native \
- gettext-native \
- libxslt-native \
- fontconfig \
- libice \
- libpng \
- librsvg \
- libsm \
- libxau \
- libxcb \
- libxcursor \
- libxdmcp \
- libxext \
- libxfixes \
- libxft \
- libxinerama \
- libxml2 \
- libxrender \
- libxt \
- virtual/libx11 \
- xrandr \
- zlib \
-"
-
-PV = "2.6.7+git${SRCPV}"
-
-SRC_URI = " \
- git://github.com/fvwmorg/fvwm.git;protocol=https \
- file://0001-Fix-compilation-for-disabled-gnome.patch \
- file://0002-Avoid-absolute-symlinks.patch \
-"
-
-SRCREV = "597a4e296da4f21e71a17facab297e016a3a80a8"
-
-S = "${WORKDIR}/git"
-
-inherit autotools gettext update-alternatives pkgconfig pythonnative perlnative distro_features_check
-# depends on virtual/libx11
-REQUIRED_DISTRO_FEATURES = "x11"
-
-ALTERNATIVE_${PN} = "x-window-manager"
-ALTERNATIVE_TARGET[x-window-manager] = "${bindir}/fvwm"
-ALTERNATIVE_PRIORITY[x-window-manager] = "20"
-
-EXTRA_OECONF = " \
- --disable-bidi \
- --disable-fontconfigtest \
- --disable-freetypetest \
- --disable-htmldoc \
- --disable-imlibtest \
- --disable-mandoc \
- --disable-nls \
- --disable-perllib \
- --disable-rsvg \
- --disable-shape \
- --disable-sm \
- --disable-xfttest \
- --with-imlib-exec-prefix=/nonexistent \
- --with-imlib-prefix=/nonexistent \
- --without-ncurses-library \
- --without-readline-library \
- --without-rplay-library \
- --without-stroke-library \
- --without-termcap-library \
- --without-xpm-library \
- ac_cv_func_mkstemp=no \
- has_safety_mkstemp=yes \
-"
-
-# show the exact commands in the log file
-EXTRA_OEMAKE = " \
- V=1 \
-"
-
-do_install_append() {
- install -d -m 0755 ${D}/${sysconfdir}/xdg/fvwm
- # You can install the config file here
-
- install -d -m 0755 ${D}/${datadir}/fvwm
- touch ${D}/${datadir}/fvwm/ConfigFvwmDefaults
-}
-
-# the only needed packages (note: locale packages are automatically generated
-# as well)
-PACKAGES = " \
- ${PN} \
- ${PN}-dbg \
-"
-
-# minimal set of binaries
-FILES_${PN} = " \
- ${bindir}/fvwm \
- ${bindir}/fvwm-root \
- ${datadir}/fvwm/ConfigFvwmDefaults \
-"
-
-RDEPENDS_${PN} = " \
- xuser-account \
-"
-
-# by default a lot of stuff is installed and it's not easy to control what to
-# install, so install everything, but skip the check
-INSANE_SKIP_${PN} = " \
- installed-vs-shipped \
-"
diff --git a/meta-openembedded/meta-oe/recipes-graphics/fvwm/fvwm_2.6.8.bb b/meta-openembedded/meta-oe/recipes-graphics/fvwm/fvwm_2.6.8.bb
new file mode 100644
index 0000000..e1c3158
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-graphics/fvwm/fvwm_2.6.8.bb
@@ -0,0 +1,112 @@
+SUMMARY = "F Virtual Window Manager "
+HOMEPAGE = "http://www.fvwm.org/"
+SECTION = "x11/wm"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=f8204787357db6ea518dcc9b6cf08388"
+
+DEPENDS = " \
+ bison-native \
+ flex-native \
+ freetype-native \
+ gettext-native \
+ libxslt-native \
+ fontconfig \
+ libice \
+ libpng \
+ librsvg \
+ libsm \
+ libxau \
+ libxcb \
+ libxcursor \
+ libxdmcp \
+ libxext \
+ libxfixes \
+ libxft \
+ libxinerama \
+ libxml2 \
+ libxrender \
+ libxt \
+ virtual/libx11 \
+ xrandr \
+ zlib \
+"
+
+PV = "2.6.8"
+
+SRC_URI = " \
+ git://github.com/fvwmorg/fvwm.git;protocol=https \
+ file://0001-Fix-compilation-for-disabled-gnome.patch \
+"
+
+SRCREV = "dc6a396bfe5cd6c53eb1df103c3af505d0899f90"
+
+S = "${WORKDIR}/git"
+
+inherit autotools gettext update-alternatives pkgconfig pythonnative perlnative distro_features_check
+# depends on virtual/libx11
+REQUIRED_DISTRO_FEATURES = "x11"
+
+ALTERNATIVE_${PN} = "x-window-manager"
+ALTERNATIVE_TARGET[x-window-manager] = "${bindir}/fvwm"
+ALTERNATIVE_PRIORITY[x-window-manager] = "20"
+
+EXTRA_OECONF = " \
+ --disable-bidi \
+ --disable-fontconfigtest \
+ --disable-htmldoc \
+ --disable-imlibtest \
+ --disable-mandoc \
+ --disable-nls \
+ --disable-perllib \
+ --disable-rsvg \
+ --disable-shape \
+ --disable-sm \
+ --disable-xfttest \
+ --with-imlib-exec-prefix=/nonexistent \
+ --with-imlib-prefix=/nonexistent \
+ --without-ncurses-library \
+ --without-readline-library \
+ --without-rplay-library \
+ --without-stroke-library \
+ --without-termcap-library \
+ --without-xpm-library \
+ ac_cv_func_mkstemp=no \
+ has_safety_mkstemp=yes \
+"
+
+# show the exact commands in the log file
+EXTRA_OEMAKE = " \
+ V=1 \
+"
+
+do_install_append() {
+ install -d -m 0755 ${D}/${sysconfdir}/xdg/fvwm
+ # You can install the config file here
+
+ install -d -m 0755 ${D}/${datadir}/fvwm
+ touch ${D}/${datadir}/fvwm/ConfigFvwmDefaults
+}
+
+# the only needed packages (note: locale packages are automatically generated
+# as well)
+PACKAGES = " \
+ ${PN} \
+ ${PN}-dbg \
+"
+
+# minimal set of binaries
+FILES_${PN} = " \
+ ${bindir}/fvwm \
+ ${bindir}/fvwm-root \
+ ${datadir}/fvwm/ConfigFvwmDefaults \
+"
+
+RDEPENDS_${PN} = " \
+ xuser-account \
+"
+
+# by default a lot of stuff is installed and it's not easy to control what to
+# install, so install everything, but skip the check
+INSANE_SKIP_${PN} = " \
+ installed-vs-shipped \
+"
diff --git a/meta-openembedded/meta-oe/recipes-graphics/glm/glm/0001-glm-Remove-redundant-double-semi-colons.patch b/meta-openembedded/meta-oe/recipes-graphics/glm/glm/0001-glm-Remove-redundant-double-semi-colons.patch
deleted file mode 100644
index 6e50f2c..0000000
--- a/meta-openembedded/meta-oe/recipes-graphics/glm/glm/0001-glm-Remove-redundant-double-semi-colons.patch
+++ /dev/null
@@ -1,120 +0,0 @@
-From 3f6869e392b061f2932f3df155b6cc37e3e7d342 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Fri, 1 Mar 2019 10:56:05 -0800
-Subject: [PATCH] glm: Remove redundant double semi-colons
-
-Make clang happy
-/glm/gtc/../ext/../detail/../simd/common.h:106:45: error: empty expression statement has no effect; remove unnecessary ';' to silence this warning [-Werror,-Wextra-semi-stmt]
-| glm_vec4 const or0 = _mm_or_ps(and0, and1);;
-| ^
-| 1 error generated.
-
-Upstream-Status: Submitted [https://github.com/g-truc/glm/pull/874]
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- glm/gtx/associated_min_max.inl | 8 ++++----
- glm/simd/common.h | 2 +-
- test/core/core_func_exponential.cpp | 6 +++---
- test/gtx/gtx_easing.cpp | 4 ++--
- 4 files changed, 10 insertions(+), 10 deletions(-)
-
-diff --git a/glm/gtx/associated_min_max.inl b/glm/gtx/associated_min_max.inl
-index 1a459add..5186c471 100644
---- a/glm/gtx/associated_min_max.inl
-+++ b/glm/gtx/associated_min_max.inl
-@@ -86,7 +86,7 @@ GLM_FUNC_QUALIFIER U associatedMin
- )
- {
- T Test1 = min(x, y);
-- T Test2 = min(z, w);;
-+ T Test2 = min(z, w);
- U Result1 = x < y ? a : b;
- U Result2 = z < w ? c : d;
- U Result = Test1 < Test2 ? Result1 : Result2;
-@@ -152,7 +152,7 @@ GLM_FUNC_QUALIFIER vec<L, U, Q> associatedMin
- for(length_t i = 0, n = Result.length(); i < n; ++i)
- {
- T Test1 = min(x[i], y[i]);
-- T Test2 = min(z[i], w[i]);;
-+ T Test2 = min(z[i], w[i]);
- U Result1 = x[i] < y[i] ? a : b;
- U Result2 = z[i] < w[i] ? c : d;
- Result[i] = Test1 < Test2 ? Result1 : Result2;
-@@ -278,7 +278,7 @@ GLM_FUNC_QUALIFIER U associatedMax
- )
- {
- T Test1 = max(x, y);
-- T Test2 = max(z, w);;
-+ T Test2 = max(z, w);
- U Result1 = x > y ? a : b;
- U Result2 = z > w ? c : d;
- U Result = Test1 > Test2 ? Result1 : Result2;
-@@ -344,7 +344,7 @@ GLM_FUNC_QUALIFIER vec<L, U, Q> associatedMax
- for(length_t i = 0, n = Result.length(); i < n; ++i)
- {
- T Test1 = max(x[i], y[i]);
-- T Test2 = max(z[i], w[i]);;
-+ T Test2 = max(z[i], w[i]);
- U Result1 = x[i] > y[i] ? a : b;
- U Result2 = z[i] > w[i] ? c : d;
- Result[i] = Test1 > Test2 ? Result1 : Result2;
-diff --git a/glm/simd/common.h b/glm/simd/common.h
-index d07920a3..9b017cb4 100644
---- a/glm/simd/common.h
-+++ b/glm/simd/common.h
-@@ -103,7 +103,7 @@ GLM_FUNC_QUALIFIER glm_vec4 glm_vec4_sign(glm_vec4 x)
- glm_vec4 const cmp1 = _mm_cmpgt_ps(x, zro0);
- glm_vec4 const and0 = _mm_and_ps(cmp0, _mm_set1_ps(-1.0f));
- glm_vec4 const and1 = _mm_and_ps(cmp1, _mm_set1_ps(1.0f));
-- glm_vec4 const or0 = _mm_or_ps(and0, and1);;
-+ glm_vec4 const or0 = _mm_or_ps(and0, and1);
- return or0;
- }
-
-diff --git a/test/core/core_func_exponential.cpp b/test/core/core_func_exponential.cpp
-index a414a4e9..380cdfb1 100644
---- a/test/core/core_func_exponential.cpp
-+++ b/test/core/core_func_exponential.cpp
-@@ -153,13 +153,13 @@ static int test_inversesqrt()
- float A = glm::inversesqrt(16.f) * glm::sqrt(16.f);
- Error += glm::equal(A, 1.f, 0.01f) ? 0 : 1;
-
-- glm::vec1 B = glm::inversesqrt(glm::vec1(16.f)) * glm::sqrt(16.f);;
-+ glm::vec1 B = glm::inversesqrt(glm::vec1(16.f)) * glm::sqrt(16.f);
- Error += glm::all(glm::equal(B, glm::vec1(1.f), 0.01f)) ? 0 : 1;
-
-- glm::vec2 C = glm::inversesqrt(glm::vec2(16.f)) * glm::sqrt(16.f);;
-+ glm::vec2 C = glm::inversesqrt(glm::vec2(16.f)) * glm::sqrt(16.f);
- Error += glm::all(glm::equal(C, glm::vec2(1.f), 0.01f)) ? 0 : 1;
-
-- glm::vec3 D = glm::inversesqrt(glm::vec3(16.f)) * glm::sqrt(16.f);;
-+ glm::vec3 D = glm::inversesqrt(glm::vec3(16.f)) * glm::sqrt(16.f);
- Error += glm::all(glm::equal(D, glm::vec3(1.f), 0.01f)) ? 0 : 1;
-
- glm::vec4 E = glm::inversesqrt(glm::vec4(16.f)) * glm::sqrt(16.f);
-diff --git a/test/gtx/gtx_easing.cpp b/test/gtx/gtx_easing.cpp
-index b3e13997..0e98cd53 100644
---- a/test/gtx/gtx_easing.cpp
-+++ b/test/gtx/gtx_easing.cpp
-@@ -34,7 +34,7 @@ namespace
- r = glm::circularEaseOut(a);
- r = glm::circularEaseInOut(a);
-
-- r = glm::exponentialEaseIn(a);;
-+ r = glm::exponentialEaseIn(a);
- r = glm::exponentialEaseOut(a);
- r = glm::exponentialEaseInOut(a);
-
-@@ -46,7 +46,7 @@ namespace
- r = glm::backEaseOut(a);
- r = glm::backEaseInOut(a);
-
-- r = glm::bounceEaseIn(a);;
-+ r = glm::bounceEaseIn(a);
- r = glm::bounceEaseOut(a);
- r = glm::bounceEaseInOut(a);
- }
---
-2.21.0
-
diff --git a/meta-openembedded/meta-oe/recipes-graphics/glm/glm_0.9.9.3.bb b/meta-openembedded/meta-oe/recipes-graphics/glm/glm_0.9.9.3.bb
deleted file mode 100644
index 2a26a5b..0000000
--- a/meta-openembedded/meta-oe/recipes-graphics/glm/glm_0.9.9.3.bb
+++ /dev/null
@@ -1,24 +0,0 @@
-SUMMARY = "OpenGL Mathematics Library"
-DESCRIPTION = "OpenGL Mathematics (GLM) is a header only C++ \
-mathematics library for graphics software based on the OpenGL \
-Shading Language (GLSL) specifications."
-HOMEPAGE = "https://glm.g-truc.net"
-BUGTRACKER = "https://github.com/g-truc/glm/issues"
-SECTION = "libs"
-LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://readme.md;beginline=21;endline=22;md5=3075b5727d36f29edccf97b93e72b790"
-
-SRC_URI = " \
- git://github.com/g-truc/glm;branch=master \
- file://0001-glm-Remove-redundant-double-semi-colons.patch \
-"
-# v0.9.9.3
-SRCREV = "9749727c2db4742369219e1d452f43e918734b4e"
-
-S = "${WORKDIR}/git"
-
-inherit cmake
-
-RDEPENDS_${PN}-dev = ""
-
-BBCLASSEXTEND = "native"
diff --git a/meta-openembedded/meta-oe/recipes-graphics/glm/glm_0.9.9.5.bb b/meta-openembedded/meta-oe/recipes-graphics/glm/glm_0.9.9.5.bb
new file mode 100644
index 0000000..f367e4e
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-graphics/glm/glm_0.9.9.5.bb
@@ -0,0 +1,23 @@
+SUMMARY = "OpenGL Mathematics Library"
+DESCRIPTION = "OpenGL Mathematics (GLM) is a header only C++ \
+mathematics library for graphics software based on the OpenGL \
+Shading Language (GLSL) specifications."
+HOMEPAGE = "https://glm.g-truc.net"
+BUGTRACKER = "https://github.com/g-truc/glm/issues"
+SECTION = "libs"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://readme.md;beginline=21;endline=22;md5=3075b5727d36f29edccf97b93e72b790"
+
+SRC_URI = " \
+ git://github.com/g-truc/glm;branch=master \
+"
+# v0.9.9.5
+SRCREV = "d162eee1e6f7c317a09229fe6ceab8ec6ab9a4b4"
+
+S = "${WORKDIR}/git"
+
+inherit cmake
+
+RDEPENDS_${PN}-dev = ""
+
+BBCLASSEXTEND = "native"
diff --git a/meta-openembedded/meta-oe/recipes-graphics/libforms/libforms_1.2.3.bb b/meta-openembedded/meta-oe/recipes-graphics/libforms/libforms_1.2.3.bb
index f86d7c1..5d33185 100644
--- a/meta-openembedded/meta-oe/recipes-graphics/libforms/libforms_1.2.3.bb
+++ b/meta-openembedded/meta-oe/recipes-graphics/libforms/libforms_1.2.3.bb
@@ -16,7 +16,7 @@
inherit autotools distro_features_check
-REQUIRED_DISTRO_FEATURES = "opengl"
+REQUIRED_DISTRO_FEATURES = "opengl x11"
S = "${WORKDIR}/xforms-${PV}"
diff --git a/meta-openembedded/meta-oe/recipes-graphics/libvncserver/libvncserver_git.bb b/meta-openembedded/meta-oe/recipes-graphics/libvncserver/libvncserver_git.bb
index 6a806ff..bc47a3f 100644
--- a/meta-openembedded/meta-oe/recipes-graphics/libvncserver/libvncserver_git.bb
+++ b/meta-openembedded/meta-oe/recipes-graphics/libvncserver/libvncserver_git.bb
@@ -32,6 +32,6 @@
SRC_URI = "git://github.com/LibVNC/libvncserver"
SRCREV = "c0a23857a5c42b45b6d22ccf7218becd1fa69402"
-
+PV = "0.9.12+git${SRCPV}"
S = "${WORKDIR}/git"
diff --git a/meta-openembedded/meta-oe/recipes-graphics/openbox/openbox_3.6.1.bb b/meta-openembedded/meta-oe/recipes-graphics/openbox/openbox_3.6.1.bb
index f4d21b8..9af3798 100644
--- a/meta-openembedded/meta-oe/recipes-graphics/openbox/openbox_3.6.1.bb
+++ b/meta-openembedded/meta-oe/recipes-graphics/openbox/openbox_3.6.1.bb
@@ -54,4 +54,4 @@
FILES_${PN}-config += "${sysconfdir}"
-RDEPENDS_${PN} += "${PN}-core ${PN}-config ${PN}-theme-clearlooks python pyxdg"
+RDEPENDS_${PN} += "${PN}-core ${PN}-config ${PN}-theme-clearlooks python python-shell pyxdg"
diff --git a/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xlsatoms_1.1.2.bb b/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xlsatoms_1.1.2.bb
deleted file mode 100644
index 723d4e2..0000000
--- a/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xlsatoms_1.1.2.bb
+++ /dev/null
@@ -1,14 +0,0 @@
-require recipes-graphics/xorg-app/xorg-app-common.inc
-
-SUMMARY = "X.Org X11 X client utilities"
-HOMEPAGE = "http://cgit.freedesktop.org/xorg/app/xlsatoms/"
-DESCRIPTION = "Xlsatoms lists the interned atoms defined on an X11 server"
-SECTION = "x11/app"
-LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://COPYING;md5=2b08d9e2e718ac83e6fe2b974d4b5fd8"
-
-DEPENDS += "libxmu"
-BBCLASSEXTEND = "native"
-
-SRC_URI[md5sum] = "5dcb6e6c4b28c8d7aeb45257f5a72a7d"
-SRC_URI[sha256sum] = "47e5dc7c3dbda6db2cf8c00cedac1722835c1550aa21cfdbc9ba83906694dea4"
diff --git a/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xlsatoms_1.1.3.bb b/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xlsatoms_1.1.3.bb
new file mode 100644
index 0000000..288bcfc
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xlsatoms_1.1.3.bb
@@ -0,0 +1,14 @@
+require recipes-graphics/xorg-app/xorg-app-common.inc
+
+SUMMARY = "X.Org X11 X client utilities"
+HOMEPAGE = "http://cgit.freedesktop.org/xorg/app/xlsatoms/"
+DESCRIPTION = "Xlsatoms lists the interned atoms defined on an X11 server"
+SECTION = "x11/app"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://COPYING;md5=2b08d9e2e718ac83e6fe2b974d4b5fd8"
+
+DEPENDS += "libxmu"
+BBCLASSEXTEND = "native"
+
+SRC_URI[md5sum] = "61671fee12535347db24ec3a715032a7"
+SRC_URI[sha256sum] = "57868f958c263976727881f3078e55b86b4a109dc578d2b92f5c6d690850a382"
diff --git a/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xrdb_1.1.1.bb b/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xrdb_1.1.1.bb
deleted file mode 100644
index e50c082..0000000
--- a/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xrdb_1.1.1.bb
+++ /dev/null
@@ -1,9 +0,0 @@
-require recipes-graphics/xorg-app/xorg-app-common.inc
-SUMMARY = "X server resource database utility"
-LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://COPYING;md5=d1167c4f586bd41f0c62166db4384a69"
-
-DEPENDS += "libxmu"
-
-SRC_URI[md5sum] = "96f9423eab4d0641c70848d665737d2e"
-SRC_URI[sha256sum] = "2d23ade7cdbb487996bf77cbb32cbe9bdb34d004748a53de7a4a97660d2217b7"
diff --git a/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xrdb_1.2.0.bb b/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xrdb_1.2.0.bb
new file mode 100644
index 0000000..c5e0e88
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xrdb_1.2.0.bb
@@ -0,0 +1,9 @@
+require recipes-graphics/xorg-app/xorg-app-common.inc
+SUMMARY = "X server resource database utility"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://COPYING;md5=d1167c4f586bd41f0c62166db4384a69"
+
+DEPENDS += "libxmu"
+
+SRC_URI[md5sum] = "34ae801ef994d192c70fcce2bdb2a1b2"
+SRC_URI[sha256sum] = "f23a65cfa1f7126040d68b6cf1e4567523edac10f8dc06f23d840d330c7c6946"
diff --git a/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xrefresh_1.0.5.bb b/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xrefresh_1.0.5.bb
deleted file mode 100644
index a2a4941..0000000
--- a/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xrefresh_1.0.5.bb
+++ /dev/null
@@ -1,13 +0,0 @@
-require recipes-graphics/xorg-app/xorg-app-common.inc
-
-SUMMARY = "X.Org X11 X client utilities"
-HOMEPAGE = "http://cgit.freedesktop.org/xorg/app/xrefresh/"
-DESCRIPTION = "xrefresh - refresh all or part of an X screen"
-SECTION = "x11/app"
-LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://COPYING;md5=dad633bce9c3cd0e3abf72a16e0057cf"
-
-BBCLASSEXTEND = "native"
-
-SRC_URI[md5sum] = "a896382bc53ef3e149eaf9b13bc81d42"
-SRC_URI[sha256sum] = "3213671b0a8a9d1e8d1d5d9e3fd86842c894dd9acc1be2560eda50bc1fb791d6"
diff --git a/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xrefresh_1.0.6.bb b/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xrefresh_1.0.6.bb
new file mode 100644
index 0000000..99dc3b5
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xrefresh_1.0.6.bb
@@ -0,0 +1,13 @@
+require recipes-graphics/xorg-app/xorg-app-common.inc
+
+SUMMARY = "X.Org X11 X client utilities"
+HOMEPAGE = "http://cgit.freedesktop.org/xorg/app/xrefresh/"
+DESCRIPTION = "xrefresh - refresh all or part of an X screen"
+SECTION = "x11/app"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://COPYING;md5=dad633bce9c3cd0e3abf72a16e0057cf"
+
+BBCLASSEXTEND = "native"
+
+SRC_URI[md5sum] = "c56fa4adbeed1ee5173f464a4c4a61a6"
+SRC_URI[sha256sum] = "287dfb9bb7e8d780d07e672e3252150850869cb550958ed5f8401f0835cd6353"
diff --git a/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xsetroot_1.1.1.bb b/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xsetroot_1.1.1.bb
deleted file mode 100644
index 2c79f27..0000000
--- a/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xsetroot_1.1.1.bb
+++ /dev/null
@@ -1,14 +0,0 @@
-require recipes-graphics/xorg-app/xorg-app-common.inc
-
-SUMMARY = "X.Org X11 X client utilities"
-HOMEPAGE = "http://cgit.freedesktop.org/xorg/app/xsetroot/"
-DESCRIPTION = "xsetroot is a root window parameter setting utility for X"
-SECTION = "x11/app"
-LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://COPYING;md5=6ea29dbee22324787c061f039e0529de"
-
-DEPENDS += "xbitmaps libxcursor"
-BBCLASSEXTEND = "native"
-
-SRC_URI[md5sum] = "7211b31ec70631829ebae9460999aa0b"
-SRC_URI[sha256sum] = "ba215daaa78c415fce11b9e58c365d03bb602eaa5ea916578d76861a468cc3d9"
diff --git a/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xsetroot_1.1.2.bb b/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xsetroot_1.1.2.bb
new file mode 100644
index 0000000..30a1e08
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xsetroot_1.1.2.bb
@@ -0,0 +1,14 @@
+require recipes-graphics/xorg-app/xorg-app-common.inc
+
+SUMMARY = "X.Org X11 X client utilities"
+HOMEPAGE = "http://cgit.freedesktop.org/xorg/app/xsetroot/"
+DESCRIPTION = "xsetroot is a root window parameter setting utility for X"
+SECTION = "x11/app"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://COPYING;md5=6ea29dbee22324787c061f039e0529de"
+
+DEPENDS += "xbitmaps libxcursor"
+BBCLASSEXTEND = "native"
+
+SRC_URI[md5sum] = "5fe769c8777a6e873ed1305e4ce2c353"
+SRC_URI[sha256sum] = "10c442ba23591fb5470cea477a0aa5f679371f4f879c8387a1d9d05637ae417c"
diff --git a/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xstdcmap_1.0.3.bb b/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xstdcmap_1.0.3.bb
deleted file mode 100644
index 99f7036..0000000
--- a/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xstdcmap_1.0.3.bb
+++ /dev/null
@@ -1,16 +0,0 @@
-require recipes-graphics/xorg-app/xorg-app-common.inc
-
-SUMMARY = "X.Org X11 X client utilities"
-HOMEPAGE = "http://cgit.freedesktop.org/xorg/app/xstdcmap"
-DESCRIPTION = "The xstdcmap utility can be used to selectively define \
-standard colormap properties."
-SECTION = "x11/app"
-LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://COPYING;md5=2b08d9e2e718ac83e6fe2b974d4b5fd8"
-
-DEPENDS += "libxmu"
-BBCLASSEXTEND = "native"
-
-SRC_URI[md5sum] = "eb5473acaef15a5db9b50df29c6a7f90"
-SRC_URI[sha256sum] = "f648e2b0cf16aa29856de998e2c7204be39dc1f8daeda9464d32288e0b580fc1"
-
diff --git a/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xstdcmap_1.0.4.bb b/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xstdcmap_1.0.4.bb
new file mode 100644
index 0000000..9d523bd
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xstdcmap_1.0.4.bb
@@ -0,0 +1,16 @@
+require recipes-graphics/xorg-app/xorg-app-common.inc
+
+SUMMARY = "X.Org X11 X client utilities"
+HOMEPAGE = "http://cgit.freedesktop.org/xorg/app/xstdcmap"
+DESCRIPTION = "The xstdcmap utility can be used to selectively define \
+standard colormap properties."
+SECTION = "x11/app"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://COPYING;md5=2b08d9e2e718ac83e6fe2b974d4b5fd8"
+
+DEPENDS += "libxmu"
+BBCLASSEXTEND = "native"
+
+SRC_URI[md5sum] = "da67142c128d18386ff145882e0afc66"
+SRC_URI[sha256sum] = "06898b3f1eaad0b205ff3c75bdefa3207868b889d4cb37b32b8267b2bbfe6f8b"
+
diff --git a/meta-openembedded/meta-oe/recipes-graphics/xorg-data/xbitmaps_1.1.1.bb b/meta-openembedded/meta-oe/recipes-graphics/xorg-data/xbitmaps_1.1.1.bb
deleted file mode 100644
index 8647f03..0000000
--- a/meta-openembedded/meta-oe/recipes-graphics/xorg-data/xbitmaps_1.1.1.bb
+++ /dev/null
@@ -1,11 +0,0 @@
-require xorg-data-common.inc
-
-SUMMARY = "Common X11 Bitmaps"
-LICENSE = "MIT"
-DEPENDS += "libxmu"
-RDEPENDS_${PN}-dev = ""
-
-LIC_FILES_CHKSUM = "file://COPYING;md5=dbd075aaffa4a60a8d00696f2e4b9a8f"
-
-SRC_URI[md5sum] = "7444bbbd999b53bec6a60608a5301f4c"
-SRC_URI[sha256sum] = "3671b034356bbc4d32d052808cf646c940ec8b2d1913adac51b1453e41aa1e9d"
diff --git a/meta-openembedded/meta-oe/recipes-graphics/xorg-data/xbitmaps_1.1.2.bb b/meta-openembedded/meta-oe/recipes-graphics/xorg-data/xbitmaps_1.1.2.bb
new file mode 100644
index 0000000..4d26db6
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-graphics/xorg-data/xbitmaps_1.1.2.bb
@@ -0,0 +1,11 @@
+require xorg-data-common.inc
+
+SUMMARY = "Common X11 Bitmaps"
+LICENSE = "MIT"
+DEPENDS += "libxmu"
+RDEPENDS_${PN}-dev = ""
+
+LIC_FILES_CHKSUM = "file://COPYING;md5=dbd075aaffa4a60a8d00696f2e4b9a8f"
+
+SRC_URI[md5sum] = "cedeef095918aca86da79a2934e03daf"
+SRC_URI[sha256sum] = "b9f0c71563125937776c8f1f25174ae9685314cbd130fb4c2efce811981e07ee"
diff --git a/meta-openembedded/meta-oe/recipes-kernel/bpftool/bpftool.bb b/meta-openembedded/meta-oe/recipes-kernel/bpftool/bpftool.bb
index f75ac6f..39c478a 100644
--- a/meta-openembedded/meta-oe/recipes-kernel/bpftool/bpftool.bb
+++ b/meta-openembedded/meta-oe/recipes-kernel/bpftool/bpftool.bb
@@ -2,7 +2,6 @@
DESCRIPTION = "bpftool is a kernel tool for inspection and simple manipulation \
of eBPF programs and maps."
LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/GPL-2.0;md5=801f80980d171dd6425610833a22dbe6"
DEPENDS = "binutils elfutils"
PROVIDES = "virtual/bpftool"
diff --git a/meta-openembedded/meta-oe/recipes-kernel/cpupower/cpupower.bb b/meta-openembedded/meta-oe/recipes-kernel/cpupower/cpupower.bb
index 9289738..cf70eb2 100644
--- a/meta-openembedded/meta-oe/recipes-kernel/cpupower/cpupower.bb
+++ b/meta-openembedded/meta-oe/recipes-kernel/cpupower/cpupower.bb
@@ -2,11 +2,10 @@
DESCRIPTION = "cpupower is a collection of tools to examine and tune power \
saving related features of your processor."
LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=bbea815ee2795b2f4230826c0c6b8814"
DEPENDS = "pciutils gettext-native"
PROVIDES = "virtual/cpupower"
-inherit kernelsrc kernel-arch
+inherit kernelsrc kernel-arch bash-completion
do_populate_lic[depends] += "virtual/kernel:do_patch"
diff --git a/meta-openembedded/meta-oe/recipes-multimedia/esound/esound_0.2.41.bb b/meta-openembedded/meta-oe/recipes-multimedia/esound/esound_0.2.41.bb
index 0ddf94f..d703f23 100644
--- a/meta-openembedded/meta-oe/recipes-multimedia/esound/esound_0.2.41.bb
+++ b/meta-openembedded/meta-oe/recipes-multimedia/esound/esound_0.2.41.bb
@@ -6,7 +6,7 @@
inherit gnome
-SRC_URI = "ftp://ftp.gnome.org/pub/GNOME/sources/esound/0.2/${P}.tar.bz2;name=archive \
+SRC_URI = "ftp://ftp.gnome.org/pub/GNOME/sources/esound/0.2/${BP}.tar.bz2;name=archive \
file://no-docs.patch \
file://0001-audio_alsa09.c-alsa-drain-fix.patch \
file://0002-Undefine-open64-and-fopen64.patch \
diff --git a/meta-openembedded/meta-oe/recipes-multimedia/libcdio/libcdio_2.0.0.bb b/meta-openembedded/meta-oe/recipes-multimedia/libcdio/libcdio_2.0.0.bb
deleted file mode 100644
index 6bf64d6..0000000
--- a/meta-openembedded/meta-oe/recipes-multimedia/libcdio/libcdio_2.0.0.bb
+++ /dev/null
@@ -1,29 +0,0 @@
-SUMMARY = "The GNU Compact Disc Input and Control library (libcdio) contains a library for CD-ROM and CD image access."
-HOMEPAGE = "http://www.gnu.org/software/libcdio/"
-SECTION = "libs"
-LICENSE = "GPLv3+"
-LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
-
-SRC_URI = "${GNU_MIRROR}/${BPN}/${BP}.tar.gz"
-
-SRC_URI[md5sum] = "0cb25905113b930e4539d2f4eb6574b0"
-SRC_URI[sha256sum] = "1b481b5da009bea31db875805665974e2fc568e2b2afa516f4036733657cf958"
-
-inherit autotools pkgconfig
-
-PACKAGECONFIG ??= "cdda-player"
-PACKAGECONFIG[cdda-player] = "--with-cdda-player,--without-cdda-player,ncurses"
-PACKAGECONFIG[cddb] = "--enable-cddb,--disable-cddb,libcddb"
-PACKAGECONFIG[vcd-info] = "--enable-vcd-info,--disable-vcd-info,vcdimager"
-
-PACKAGES += "${PN}-utils"
-
-FILES_${PN} = "${libdir}/${BPN}${SOLIB}"
-FILES_${PN}-utils = "${bindir}/*"
-
-python libcdio_split_packages() {
- libdir = d.expand('${libdir}')
- do_split_packages(d, libdir, '^lib(.*)\.so\..*', 'lib%s', 'libcdio %s library', extra_depends='', allow_links=True)
-}
-
-PACKAGESPLITFUNCS =+ "libcdio_split_packages"
diff --git a/meta-openembedded/meta-oe/recipes-multimedia/libcdio/libcdio_2.1.0.bb b/meta-openembedded/meta-oe/recipes-multimedia/libcdio/libcdio_2.1.0.bb
new file mode 100644
index 0000000..e282e89
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-multimedia/libcdio/libcdio_2.1.0.bb
@@ -0,0 +1,29 @@
+SUMMARY = "The GNU Compact Disc Input and Control library (libcdio) contains a library for CD-ROM and CD image access."
+HOMEPAGE = "http://www.gnu.org/software/libcdio/"
+SECTION = "libs"
+LICENSE = "GPLv3+"
+LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
+
+SRC_URI = "${GNU_MIRROR}/${BPN}/${BP}.tar.bz2"
+
+SRC_URI[md5sum] = "aa7629e8f73662a762f64c444b901055"
+SRC_URI[sha256sum] = "8550e9589dbd594bfac93b81ecf129b1dc9d0d51e90f9696f1b2f9b2af32712b"
+
+inherit autotools pkgconfig
+
+PACKAGECONFIG ??= "cdda-player"
+PACKAGECONFIG[cdda-player] = "--with-cdda-player,--without-cdda-player,ncurses"
+PACKAGECONFIG[cddb] = "--enable-cddb,--disable-cddb,libcddb"
+PACKAGECONFIG[vcd-info] = "--enable-vcd-info,--disable-vcd-info,vcdimager"
+
+PACKAGES += "${PN}-utils"
+
+FILES_${PN} = "${libdir}/${BPN}${SOLIB}"
+FILES_${PN}-utils = "${bindir}/*"
+
+python libcdio_split_packages() {
+ libdir = d.expand('${libdir}')
+ do_split_packages(d, libdir, '^lib(.*)\.so\..*', 'lib%s', 'libcdio %s library', extra_depends='', allow_links=True)
+}
+
+PACKAGESPLITFUNCS =+ "libcdio_split_packages"
diff --git a/meta-openembedded/meta-oe/recipes-multimedia/libopus/libopus_1.1.3.bb b/meta-openembedded/meta-oe/recipes-multimedia/libopus/libopus_1.1.3.bb
index dd6789d..50d4937 100644
--- a/meta-openembedded/meta-oe/recipes-multimedia/libopus/libopus_1.1.3.bb
+++ b/meta-openembedded/meta-oe/recipes-multimedia/libopus/libopus_1.1.3.bb
@@ -28,13 +28,13 @@
--enable-custom-modes \
"
+# ne10 is available only for armv7a and aarch64
+DEPENDS_append_aarch64 = " ne10"
+DEPENDS_append_armv7a = " ne10"
+
python () {
if d.getVar('TARGET_FPU') in [ 'soft' ]:
d.appendVar('PACKAGECONFIG', ' fixed-point')
-
- # Ne10 is only available for armv7 and aarch64
- if any((t.startswith('armv7') or t.startswith('aarch64')) for t in d.getVar('TUNE_FEATURES').split()):
- d.appendVar('DEPENDS', ' ne10')
}
# Fails to build with thumb-1 (qemuarm)
diff --git a/meta-openembedded/meta-oe/recipes-multimedia/v4l2apps/v4l-utils_1.16.0.bb b/meta-openembedded/meta-oe/recipes-multimedia/v4l2apps/v4l-utils_1.16.0.bb
deleted file mode 100644
index bcead00..0000000
--- a/meta-openembedded/meta-oe/recipes-multimedia/v4l2apps/v4l-utils_1.16.0.bb
+++ /dev/null
@@ -1,54 +0,0 @@
-SUMMARY = "v4l2 and IR applications"
-LICENSE = "GPLv2 & LGPLv2.1"
-LIC_FILES_CHKSUM = "file://COPYING;md5=48da9957849056017dc568bbc43d8975 \
- file://COPYING.libv4l;md5=d749e86a105281d7a44c2328acebc4b0"
-PROVIDES = "libv4l media-ctl"
-
-DEPENDS = "jpeg \
- ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'virtual/libx11', '', d)}"
-DEPENDS_append_libc-musl = " argp-standalone"
-DEPENDS_append_class-target = " udev"
-LDFLAGS_append = " -pthread"
-
-inherit autotools gettext pkgconfig
-
-PACKAGECONFIG ??= "media-ctl"
-PACKAGECONFIG[media-ctl] = "--enable-v4l-utils,--disable-v4l-utils,,"
-
-SRC_URI = "http://linuxtv.org/downloads/v4l-utils/v4l-utils-${PV}.tar.bz2 \
- file://0001-Revert-media-ctl-Don-t-install-libmediactl-and-libv4.patch \
- file://mediactl-pkgconfig.patch \
- file://export-mediactl-headers.patch \
- file://0002-contrib-test-Link-mc_nextgen_test-with-libargp-if-ne.patch \
- file://0003-v4l2-ctl-Do-not-use-getsubopt.patch \
- "
-SRC_URI[md5sum] = "21a6ec3605a1c3114c8ccb70a963c871"
-SRC_URI[sha256sum] = "f1b425584284bac378b76331c0671dc890bd7af49c03e8a6cc0c70e57eea0bad"
-
-EXTRA_OECONF = "--disable-qv4l2 --enable-shared --with-udevdir=${base_libdir}/udev"
-
-VIRTUAL-RUNTIME_ir-keytable-keymaps ?= "rc-keymaps"
-
-PACKAGES =+ "media-ctl ir-keytable rc-keymaps libv4l libv4l-dev"
-
-RPROVIDES_${PN}-dbg += "libv4l-dbg"
-
-FILES_media-ctl = "${bindir}/media-ctl ${libdir}/libmediactl.so.*"
-
-FILES_ir-keytable = "${bindir}/ir-keytable ${base_libdir}/udev/rules.d/*-infrared.rules"
-RDEPENDS_ir-keytable += "${VIRTUAL-RUNTIME_ir-keytable-keymaps}"
-
-FILES_rc-keymaps = "${sysconfdir}/rc* ${base_libdir}/udev/rc*"
-
-FILES_${PN} = "${bindir} ${sbindir}"
-
-FILES_libv4l += "${libdir}/libv4l*${SOLIBS} ${libdir}/libv4l/*.so ${libdir}/libv4l/plugins/*.so \
- ${libdir}/libdvbv5*${SOLIBS} \
- ${libdir}/libv4l/*-decomp"
-
-FILES_libv4l-dev += "${includedir} ${libdir}/pkgconfig \
- ${libdir}/libv4l*${SOLIBSDEV} ${libdir}/*.la \
- ${libdir}/v4l*${SOLIBSDEV} ${libdir}/libv4l/*.la ${libdir}/libv4l/plugins/*.la"
-
-PARALLEL_MAKE_class-native = ""
-BBCLASSEXTEND = "native"
diff --git a/meta-openembedded/meta-oe/recipes-multimedia/v4l2apps/v4l-utils_1.16.5.bb b/meta-openembedded/meta-oe/recipes-multimedia/v4l2apps/v4l-utils_1.16.5.bb
new file mode 100644
index 0000000..4154468
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-multimedia/v4l2apps/v4l-utils_1.16.5.bb
@@ -0,0 +1,54 @@
+SUMMARY = "v4l2 and IR applications"
+LICENSE = "GPLv2 & LGPLv2.1"
+LIC_FILES_CHKSUM = "file://COPYING;md5=48da9957849056017dc568bbc43d8975 \
+ file://COPYING.libv4l;md5=d749e86a105281d7a44c2328acebc4b0"
+PROVIDES = "libv4l media-ctl"
+
+DEPENDS = "jpeg \
+ ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'virtual/libx11', '', d)}"
+DEPENDS_append_libc-musl = " argp-standalone"
+DEPENDS_append_class-target = " udev"
+LDFLAGS_append = " -pthread"
+
+inherit autotools gettext pkgconfig
+
+PACKAGECONFIG ??= "media-ctl"
+PACKAGECONFIG[media-ctl] = "--enable-v4l-utils,--disable-v4l-utils,,"
+
+SRC_URI = "http://linuxtv.org/downloads/v4l-utils/v4l-utils-${PV}.tar.bz2 \
+ file://0001-Revert-media-ctl-Don-t-install-libmediactl-and-libv4.patch \
+ file://mediactl-pkgconfig.patch \
+ file://export-mediactl-headers.patch \
+ file://0002-contrib-test-Link-mc_nextgen_test-with-libargp-if-ne.patch \
+ file://0003-v4l2-ctl-Do-not-use-getsubopt.patch \
+ "
+SRC_URI[md5sum] = "de272817133c0dca000a78a5c8c8ec8b"
+SRC_URI[sha256sum] = "ed80242510385017a1dc566e17a285a77222bb301f5bc19386badfcc2c19df1b"
+
+EXTRA_OECONF = "--disable-qv4l2 --enable-shared --with-udevdir=${base_libdir}/udev"
+
+VIRTUAL-RUNTIME_ir-keytable-keymaps ?= "rc-keymaps"
+
+PACKAGES =+ "media-ctl ir-keytable rc-keymaps libv4l libv4l-dev"
+
+RPROVIDES_${PN}-dbg += "libv4l-dbg"
+
+FILES_media-ctl = "${bindir}/media-ctl ${libdir}/libmediactl.so.*"
+
+FILES_ir-keytable = "${bindir}/ir-keytable ${base_libdir}/udev/rules.d/*-infrared.rules"
+RDEPENDS_ir-keytable += "${VIRTUAL-RUNTIME_ir-keytable-keymaps}"
+
+FILES_rc-keymaps = "${sysconfdir}/rc* ${base_libdir}/udev/rc*"
+
+FILES_${PN} = "${bindir} ${sbindir}"
+
+FILES_libv4l += "${libdir}/libv4l*${SOLIBS} ${libdir}/libv4l/*.so ${libdir}/libv4l/plugins/*.so \
+ ${libdir}/libdvbv5*${SOLIBS} \
+ ${libdir}/libv4l/*-decomp"
+
+FILES_libv4l-dev += "${includedir} ${libdir}/pkgconfig \
+ ${libdir}/libv4l*${SOLIBSDEV} ${libdir}/*.la \
+ ${libdir}/v4l*${SOLIBSDEV} ${libdir}/libv4l/*.la ${libdir}/libv4l/plugins/*.la"
+
+PARALLEL_MAKE_class-native = ""
+BBCLASSEXTEND = "native"
diff --git a/meta-openembedded/meta-oe/recipes-navigation/geos/files/fix-gcc6-isnan.patch b/meta-openembedded/meta-oe/recipes-navigation/geos/files/fix-gcc6-isnan.patch
deleted file mode 100644
index 5c5fbd1..0000000
--- a/meta-openembedded/meta-oe/recipes-navigation/geos/files/fix-gcc6-isnan.patch
+++ /dev/null
@@ -1,22 +0,0 @@
---- geos-3.4.2/configure.in.orig 2016-06-08 17:46:43.002250304 +0000
-+++ geos-3.4.2/configure.in 2016-06-08 17:57:36.342241606 +0000
-@@ -197,7 +197,7 @@
- AC_LANG_PUSH([C++])
- AC_CACHE_CHECK([for isnan], ac_cv_isnan,
- [AC_TRY_LINK([#include <cmath>],
-- [double x; int y; y = isnan(x);],
-+ [double x; int y; y = std::isnan(x);],
- ac_cv_isnan=yes,
- ac_cv_isnan=no
- )])
---- geos-3.4.2/include/geos/platform.h.in.orig 2016-06-08 14:06:53.910234182 -0400
-+++ geos-3.4.2/include/geos/platform.h.in 2016-06-08 14:07:19.298233844 -0400
-@@ -84,7 +84,7 @@
- #endif
-
- #if defined(HAVE_ISNAN)
--# define ISNAN(x) (isnan(x))
-+# define ISNAN(x) (std::isnan(x))
- #else
- # if defined(_MSC_VER)
- # define ISNAN(x) _isnan(x)
diff --git a/meta-openembedded/meta-oe/recipes-navigation/geos/geos.inc b/meta-openembedded/meta-oe/recipes-navigation/geos/geos.inc
index 2e308b4..4872105 100644
--- a/meta-openembedded/meta-oe/recipes-navigation/geos/geos.inc
+++ b/meta-openembedded/meta-oe/recipes-navigation/geos/geos.inc
@@ -3,7 +3,7 @@
SECTION = "libs"
LICENSE = "LGPLv2.1+"
-LIC_FILES_CHKSUM = "file://COPYING;md5=7fbc338309ac38fefcd64b04bb903e34"
+LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c"
SRC_URI = "http://download.osgeo.org/geos/geos-${PV}.tar.bz2"
diff --git a/meta-openembedded/meta-oe/recipes-navigation/geos/geos_3.4.2.bb b/meta-openembedded/meta-oe/recipes-navigation/geos/geos_3.4.2.bb
deleted file mode 100644
index 7193f8f..0000000
--- a/meta-openembedded/meta-oe/recipes-navigation/geos/geos_3.4.2.bb
+++ /dev/null
@@ -1,7 +0,0 @@
-require geos.inc
-
-SRC_URI += "file://geos-config-Add-includedir-variable.patch \
- file://fix-gcc6-isnan.patch"
-
-SRC_URI[md5sum] = "fc5df2d926eb7e67f988a43a92683bae"
-SRC_URI[sha256sum] = "15e8bfdf7e29087a957b56ac543ea9a80321481cef4d4f63a7b268953ad26c53"
diff --git a/meta-openembedded/meta-oe/recipes-navigation/geos/geos_3.4.3.bb b/meta-openembedded/meta-oe/recipes-navigation/geos/geos_3.4.3.bb
new file mode 100644
index 0000000..538456c
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-navigation/geos/geos_3.4.3.bb
@@ -0,0 +1,7 @@
+require geos.inc
+
+SRC_URI += "file://geos-config-Add-includedir-variable.patch \
+"
+
+SRC_URI[md5sum] = "77f2c2cca1e9f49bc1bece9037ac7a7a"
+SRC_URI[sha256sum] = "cfbf68079117c1c2b76411636444ff41d73c31093c4cab9dcc9a8c1bbe7e3897"
diff --git a/meta-openembedded/meta-oe/recipes-support/augeas/augeas.inc b/meta-openembedded/meta-oe/recipes-support/augeas/augeas.inc
index c939d4b..1bbd181 100644
--- a/meta-openembedded/meta-oe/recipes-support/augeas/augeas.inc
+++ b/meta-openembedded/meta-oe/recipes-support/augeas/augeas.inc
@@ -6,9 +6,7 @@
LIC_FILES_CHKSUM = "file://COPYING;md5=bbb461211a33b134d42ed5ee802b37ff"
SRC_URI = "http://download.augeas.net/${BP}.tar.gz \
- file://add-missing-argz-conditional.patch \
file://sepbuildfix.patch \
- file://0001-Unset-need_charset_alias-when-building-for-musl.patch \
"
DEPENDS = "readline libxml2"
diff --git a/meta-openembedded/meta-oe/recipes-support/augeas/augeas/0001-Unset-need_charset_alias-when-building-for-musl.patch b/meta-openembedded/meta-oe/recipes-support/augeas/augeas/0001-Unset-need_charset_alias-when-building-for-musl.patch
deleted file mode 100644
index 0ba7c76..0000000
--- a/meta-openembedded/meta-oe/recipes-support/augeas/augeas/0001-Unset-need_charset_alias-when-building-for-musl.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From 32b15332e2130a54b25f4fbf6f58b407b851dd8f Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Mon, 13 Apr 2015 17:02:13 -0700
-Subject: [PATCH] Unset need_charset_alias when building for musl
-
-localcharset uses ac_cv_gnu_library_2_1 from glibc21.m4
-which actually shoudl be fixed in gnulib and then all downstream
-projects will get it eventually. For now we apply the fix to
-coreutils
-
-Upstream-Status: Pending
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-
----
- gnulib/lib/Makefile.am | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/gnulib/lib/Makefile.am b/gnulib/lib/Makefile.am
-index 963b22d..75788d2 100644
---- a/gnulib/lib/Makefile.am
-+++ b/gnulib/lib/Makefile.am
-@@ -463,7 +463,7 @@ install-exec-localcharset: all-local
- case '$(host_os)' in \
- darwin[56]*) \
- need_charset_alias=true ;; \
-- darwin* | cygwin* | mingw* | pw32* | cegcc*) \
-+ darwin* | cygwin* | mingw* | pw32* | cegcc* | linux-musl*) \
- need_charset_alias=false ;; \
- *) \
- need_charset_alias=true ;; \
diff --git a/meta-openembedded/meta-oe/recipes-support/augeas/augeas/add-missing-argz-conditional.patch b/meta-openembedded/meta-oe/recipes-support/augeas/augeas/add-missing-argz-conditional.patch
deleted file mode 100644
index 368bb41..0000000
--- a/meta-openembedded/meta-oe/recipes-support/augeas/augeas/add-missing-argz-conditional.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From 9a6e6374da7d7056db0950f0f7d6b8b905009775 Mon Sep 17 00:00:00 2001
-From: Constantin Musca <constantinx.musca@intel.com>
-Date: Fri, 15 Jul 2016 10:04:48 +0300
-Subject: [PATCH] Add missing GL_GENERATE_ARGZ_H conditional
-
-- GL_GENERATE_ARGZ_H is used in gnulib/lib/Makefile.am
-
-Upstream-Status: Pending
-Signed-off-by: Constantin Musca <constantinx.musca@intel.com>
-
----
- configure.ac | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/configure.ac b/configure.ac
-index 72b6984..fb9653e 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -55,6 +55,8 @@ AC_ARG_WITH([failmalloc],
-
- AM_CONDITIONAL([WITH_FAILMALLOC], [test x$with_failmalloc != xno])
-
-+AM_CONDITIONAL([GL_GENERATE_ARGZ_H], [test -n "$ARGZ_H"])
-+
- dnl --enable-debug=(yes|no)
- AC_ARG_ENABLE([debug],
- [AC_HELP_STRING([--enable-debug=no/yes],
diff --git a/meta-openembedded/meta-oe/recipes-support/augeas/augeas_1.11.0.bb b/meta-openembedded/meta-oe/recipes-support/augeas/augeas_1.11.0.bb
deleted file mode 100644
index cdd11be..0000000
--- a/meta-openembedded/meta-oe/recipes-support/augeas/augeas_1.11.0.bb
+++ /dev/null
@@ -1,4 +0,0 @@
-require augeas.inc
-
-SRC_URI[md5sum] = "abf51f4c0cf3901d167f23687f60434a"
-SRC_URI[sha256sum] = "393ce8f4055af89cd4c20bf903eacbbd909cf427891f41b56dc2ba66243ea0b0"
diff --git a/meta-openembedded/meta-oe/recipes-support/augeas/augeas_1.12.0.bb b/meta-openembedded/meta-oe/recipes-support/augeas/augeas_1.12.0.bb
new file mode 100644
index 0000000..d32c469
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/augeas/augeas_1.12.0.bb
@@ -0,0 +1,4 @@
+require augeas.inc
+
+SRC_URI[md5sum] = "74f1c7b8550f4e728486091f6b907175"
+SRC_URI[sha256sum] = "321942c9cc32185e2e9cb72d0a70eea106635b50269075aca6714e3ec282cb87"
diff --git a/meta-openembedded/meta-oe/recipes-support/bdwgc/bdwgc_7.6.12.bb b/meta-openembedded/meta-oe/recipes-support/bdwgc/bdwgc_7.6.12.bb
deleted file mode 100644
index b1c1099..0000000
--- a/meta-openembedded/meta-oe/recipes-support/bdwgc/bdwgc_7.6.12.bb
+++ /dev/null
@@ -1,40 +0,0 @@
-SUMMARY = "A garbage collector for C and C++"
-
-DESCRIPTION = "The Boehm-Demers-Weiser conservative garbage collector can be\
- used as a garbage collecting replacement for C malloc or C++ new. It allows\
- you to allocate memory basically as you normally would, without explicitly\
- deallocating memory that is no longer useful. The collector automatically\
- recycles memory when it determines that it can no longer be otherwise\
- accessed.\
- The collector is also used by a number of programming language\
- implementations that either use C as intermediate code, want to facilitate\
- easier interoperation with C libraries, or just prefer the simple collector\
- interface.\
- Alternatively, the garbage collector may be used as a leak detector for C\
- or C++ programs, though that is not its primary goal.\
- Empirically, this collector works with most unmodified C programs, simply\
- by replacing malloc with GC_malloc calls, replacing realloc with GC_realloc\
- calls, and removing free calls."
-
-HOMEPAGE = "http://www.hboehm.info/gc/"
-SECTION = "devel"
-LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://README.QUICK;md5=728501f233050290314d33fb07d883eb"
-
-SRCREV = "a46546f40d18e60c31077c2e7c8bb4e44bf1bef1"
-SRC_URI = "git://github.com/ivmai/bdwgc.git;branch=release-7_6 \
- "
-
-FILES_${PN}-doc = "${datadir}"
-
-S = "${WORKDIR}/git"
-
-ARM_INSTRUCTION_SET = "arm"
-
-inherit autotools pkgconfig
-
-# by default use external libatomic-ops
-PACKAGECONFIG ??= "libatomic-ops"
-PACKAGECONFIG[libatomic-ops] = "--with-libatomic-ops=yes,--with-libatomic-ops=no,libatomic-ops"
-
-BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-openembedded/meta-oe/recipes-support/bdwgc/bdwgc_8.0.4.bb b/meta-openembedded/meta-oe/recipes-support/bdwgc/bdwgc_8.0.4.bb
new file mode 100644
index 0000000..4c1393c
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/bdwgc/bdwgc_8.0.4.bb
@@ -0,0 +1,40 @@
+SUMMARY = "A garbage collector for C and C++"
+
+DESCRIPTION = "The Boehm-Demers-Weiser conservative garbage collector can be\
+ used as a garbage collecting replacement for C malloc or C++ new. It allows\
+ you to allocate memory basically as you normally would, without explicitly\
+ deallocating memory that is no longer useful. The collector automatically\
+ recycles memory when it determines that it can no longer be otherwise\
+ accessed.\
+ The collector is also used by a number of programming language\
+ implementations that either use C as intermediate code, want to facilitate\
+ easier interoperation with C libraries, or just prefer the simple collector\
+ interface.\
+ Alternatively, the garbage collector may be used as a leak detector for C\
+ or C++ programs, though that is not its primary goal.\
+ Empirically, this collector works with most unmodified C programs, simply\
+ by replacing malloc with GC_malloc calls, replacing realloc with GC_realloc\
+ calls, and removing free calls."
+
+HOMEPAGE = "http://www.hboehm.info/gc/"
+SECTION = "devel"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://README.QUICK;md5=81b447d779e278628c843aef92f088fa"
+
+SRCREV = "d3dede3ce4462cd82a15f161af797ca51654546a"
+SRC_URI = "git://github.com/ivmai/bdwgc.git;branch=release-8_0 \
+ "
+
+FILES_${PN}-doc = "${datadir}"
+
+S = "${WORKDIR}/git"
+
+ARM_INSTRUCTION_SET = "arm"
+
+inherit autotools pkgconfig
+
+# by default use external libatomic-ops
+PACKAGECONFIG ??= "libatomic-ops"
+PACKAGECONFIG[libatomic-ops] = "--with-libatomic-ops=yes,--with-libatomic-ops=no,libatomic-ops"
+
+BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-openembedded/meta-oe/recipes-support/ccid/ccid_1.4.24.bb b/meta-openembedded/meta-oe/recipes-support/ccid/ccid_1.4.24.bb
deleted file mode 100644
index 31145d0..0000000
--- a/meta-openembedded/meta-oe/recipes-support/ccid/ccid_1.4.24.bb
+++ /dev/null
@@ -1,19 +0,0 @@
-SUMMARY = "Generic USB CCID smart card reader driver"
-HOMEPAGE = "http://pcsclite.alioth.debian.org/ccid.html"
-LICENSE = "LGPLv2.1+"
-LIC_FILES_CHKSUM = "file://COPYING;md5=2d5025d4aa3495befef8f17206a5b0a1"
-
-DEPENDS = "virtual/libusb0 pcsc-lite"
-RDEPENDS_${PN} = "pcsc-lite"
-
-SRC_URI = "https://alioth.debian.org/frs/download.php/file/4171/ccid-${PV}.tar.bz2 \
- file://no-dep-on-libfl.patch \
-"
-
-SRC_URI[md5sum] = "915a03cda85b60fefbe3654cbdc68ca9"
-SRC_URI[sha256sum] = "62cb73c6c009c9799c526f05a05e25f00f0ad86d50f82a714dedcfbf4a7e4176"
-
-inherit autotools pkgconfig
-
-FILES_${PN} += "${libdir}/pcsc/"
-FILES_${PN}-dbg += "${libdir}/pcsc/drivers/*/*/*/.debug"
diff --git a/meta-openembedded/meta-oe/recipes-support/ccid/ccid_1.4.30.bb b/meta-openembedded/meta-oe/recipes-support/ccid/ccid_1.4.30.bb
new file mode 100644
index 0000000..95a41d2
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/ccid/ccid_1.4.30.bb
@@ -0,0 +1,19 @@
+SUMMARY = "Generic USB CCID smart card reader driver"
+HOMEPAGE = "https://ccid.apdu.fr/"
+LICENSE = "LGPLv2.1+"
+LIC_FILES_CHKSUM = "file://COPYING;md5=2d5025d4aa3495befef8f17206a5b0a1"
+
+DEPENDS = "virtual/libusb0 pcsc-lite"
+RDEPENDS_${PN} = "pcsc-lite"
+
+SRC_URI = "https://ccid.apdu.fr/files/ccid-${PV}.tar.bz2 \
+ file://no-dep-on-libfl.patch \
+"
+
+SRC_URI[md5sum] = "817abceef715e02cb47617621fe192e0"
+SRC_URI[sha256sum] = "ac17087be08880a0cdf99a8a2799a4ef004dc6ffa08b4d9b0ad995f39a53ff7c"
+
+inherit autotools pkgconfig
+
+FILES_${PN} += "${libdir}/pcsc/"
+FILES_${PN}-dbg += "${libdir}/pcsc/drivers/*/*/*/.debug"
diff --git a/meta-openembedded/meta-oe/recipes-support/cpprest/cpprest/1094.patch b/meta-openembedded/meta-oe/recipes-support/cpprest/cpprest/1094.patch
deleted file mode 100644
index 3daad97..0000000
--- a/meta-openembedded/meta-oe/recipes-support/cpprest/cpprest/1094.patch
+++ /dev/null
@@ -1,307 +0,0 @@
-From d672de675a16e5ab9efcf783705cbd171f38188e Mon Sep 17 00:00:00 2001
-From: "Billy O'Neal (VC LIBS)" <bion@microsoft.com>
-Date: Thu, 28 Mar 2019 15:17:12 -0700
-Subject: [PATCH] Avoid tripping over 32 bit time_t mistakes.
-
-Resolves https://github.com/Microsoft/cpprestsdk/issues/1090
----
- Release/src/utilities/asyncrt_utils.cpp | 30 ++---
- Release/tests/functional/utils/datetime.cpp | 140 ++++++++++----------
- 2 files changed, 84 insertions(+), 86 deletions(-)
-
-diff --git a/Release/src/utilities/asyncrt_utils.cpp b/Release/src/utilities/asyncrt_utils.cpp
-index 4a692e5fa..986b64bb7 100644
---- a/Release/src/utilities/asyncrt_utils.cpp
-+++ b/Release/src/utilities/asyncrt_utils.cpp
-@@ -618,7 +618,7 @@ std::string __cdecl conversions::to_utf8string(const utf16string& value) { retur
-
- utf16string __cdecl conversions::to_utf16string(const std::string& value) { return utf8_to_utf16(value); }
-
--static const uint64_t ntToUnixOffsetSeconds = 11644473600U; // diff between windows and unix epochs (seconds)
-+static const int64_t ntToUnixOffsetSeconds = 11644473600; // diff between windows and unix epochs (seconds)
-
- datetime __cdecl datetime::utc_now()
- {
-@@ -634,10 +634,10 @@ datetime __cdecl datetime::utc_now()
- #else // LINUX
- struct timeval time;
- gettimeofday(&time, nullptr);
-- uint64_t result = ntToUnixOffsetSeconds + time.tv_sec;
-+ int64_t result = ntToUnixOffsetSeconds + time.tv_sec;
- result *= _secondTicks; // convert to 10e-7
- result += time.tv_usec * 10; // convert and add microseconds, 10e-6 to 10e-7
-- return datetime(result);
-+ return datetime(static_cast<interval_type>(result));
- #endif
- }
-
-@@ -646,7 +646,7 @@ static const char monthNames[] = "Jan\0Feb\0Mar\0Apr\0May\0Jun\0Jul\0Aug\0Sep\0O
-
- utility::string_t datetime::to_string(date_format format) const
- {
-- const uint64_t input = m_interval / _secondTicks; // convert to seconds
-+ const int64_t input = static_cast<int64_t>(m_interval / _secondTicks); // convert to seconds
- const int frac_sec = static_cast<int>(m_interval % _secondTicks);
- const time_t time = static_cast<time_t>(input - ntToUnixOffsetSeconds);
- struct tm t;
-@@ -797,22 +797,20 @@ static int atoi2(const CharT* str)
- return (static_cast<unsigned char>(str[0]) - '0') * 10 + (static_cast<unsigned char>(str[1]) - '0');
- }
-
--static const time_t maxTimeT = sizeof(time_t) == 4 ? (time_t)INT_MAX : (time_t)LLONG_MAX;
--
--static time_t timezone_adjust(time_t result, unsigned char chSign, int adjustHours, int adjustMinutes)
-+static int64_t timezone_adjust(int64_t result, unsigned char chSign, int adjustHours, int adjustMinutes)
- {
- if (adjustHours > 23)
- {
-- return (time_t)-1;
-+ return -1;
- }
-
- // adjustMinutes > 59 is impossible due to digit 5 check
- const int tzAdjust = adjustMinutes * 60 + adjustHours * 60 * 60;
- if (chSign == '-')
- {
-- if (maxTimeT - result < tzAdjust)
-+ if (INT64_MAX - result < tzAdjust)
- {
-- return (time_t)-1;
-+ return -1;
- }
-
- result += tzAdjust;
-@@ -821,7 +819,7 @@ static time_t timezone_adjust(time_t result, unsigned char chSign, int adjustHou
- {
- if (tzAdjust > result)
- {
-- return (time_t)-1;
-+ return -1;
- }
-
- result -= tzAdjust;
-@@ -830,10 +828,10 @@ static time_t timezone_adjust(time_t result, unsigned char chSign, int adjustHou
- return result;
- }
-
--static time_t make_gm_time(struct tm* t)
-+static int64_t make_gm_time(struct tm* t)
- {
- #ifdef _MSC_VER
-- return _mkgmtime(t);
-+ return static_cast<int64_t>(_mkgmtime(t));
- #elif (defined(ANDROID) || defined(__ANDROID__))
- // HACK: The (nonportable?) POSIX function timegm is not available in
- // bionic. As a workaround[1][2], we set the C library timezone to
-@@ -867,9 +865,9 @@ static time_t make_gm_time(struct tm* t)
- unsetenv("TZ");
- }
- }
-- return time;
-+ return static_cast<int64_t>(time);
- #else // ^^^ ANDROID // Other POSIX platforms vvv
-- return timegm(t);
-+ return static_cast<int64_t>(timegm(t));
- #endif // _MSC_VER
- }
-
-@@ -916,7 +914,7 @@ zone = "UT" / "GMT" ; Universal Time
- datetime __cdecl datetime::from_string(const utility::string_t& dateString, date_format format)
- {
- datetime result;
-- time_t seconds;
-+ int64_t seconds;
- uint64_t frac_sec = 0;
- struct tm t{};
- auto str = dateString.c_str();
-diff --git a/Release/tests/functional/utils/datetime.cpp b/Release/tests/functional/utils/datetime.cpp
-index ae7f7a5e4..acd6fddb0 100644
---- a/Release/tests/functional/utils/datetime.cpp
-+++ b/Release/tests/functional/utils/datetime.cpp
-@@ -133,75 +133,77 @@ SUITE(datetime)
-
- TEST(parsing_time_rfc1123_accepts_each_day)
- {
-- TestRfc1123IsTimeT(_XPLATSTR("01 Jan 1970 00:00:00 GMT"), (time_t) 0);
-- TestRfc1123IsTimeT(_XPLATSTR("Fri, 02 Jan 1970 00:00:00 GMT"), (time_t) 86400 * 1);
-- TestRfc1123IsTimeT(_XPLATSTR("Sat, 03 Jan 1970 00:00:00 GMT"), (time_t) 86400 * 2);
-- TestRfc1123IsTimeT(_XPLATSTR("Sun, 04 Jan 1970 00:00:00 GMT"), (time_t) 86400 * 3);
-- TestRfc1123IsTimeT(_XPLATSTR("Mon, 05 Jan 1970 00:00:00 GMT"), (time_t) 86400 * 4);
-- TestRfc1123IsTimeT(_XPLATSTR("Tue, 06 Jan 1970 00:00:00 GMT"), (time_t) 86400 * 5);
-- TestRfc1123IsTimeT(_XPLATSTR("Wed, 07 Jan 1970 00:00:00 GMT"), (time_t) 86400 * 6);
-+ TestRfc1123IsTimeT(_XPLATSTR("01 Jan 1970 00:00:00 GMT"), (time_t)0);
-+ TestRfc1123IsTimeT(_XPLATSTR("Fri, 02 Jan 1970 00:00:00 GMT"), (time_t)86400 * 1);
-+ TestRfc1123IsTimeT(_XPLATSTR("Sat, 03 Jan 1970 00:00:00 GMT"), (time_t)86400 * 2);
-+ TestRfc1123IsTimeT(_XPLATSTR("Sun, 04 Jan 1970 00:00:00 GMT"), (time_t)86400 * 3);
-+ TestRfc1123IsTimeT(_XPLATSTR("Mon, 05 Jan 1970 00:00:00 GMT"), (time_t)86400 * 4);
-+ TestRfc1123IsTimeT(_XPLATSTR("Tue, 06 Jan 1970 00:00:00 GMT"), (time_t)86400 * 5);
-+ TestRfc1123IsTimeT(_XPLATSTR("Wed, 07 Jan 1970 00:00:00 GMT"), (time_t)86400 * 6);
- }
-
- TEST(parsing_time_rfc1123_boundary_cases)
- {
-- TestRfc1123IsTimeT(_XPLATSTR("01 Jan 1970 00:00:00 GMT"), (time_t) 0);
-- TestRfc1123IsTimeT(_XPLATSTR("19 Jan 2038 03:14:06 GMT"), (time_t) INT_MAX - 1);
--#ifndef _USE_32BIT_TIME_T
-- TestRfc1123IsTimeT(_XPLATSTR("19 Jan 2038 03:13:07 -0001"), (time_t) INT_MAX);
-- TestRfc1123IsTimeT(_XPLATSTR("19 Jan 2038 03:14:07 -0000"), (time_t) INT_MAX);
--#endif // _USE_32BIT_TIME_T
-- TestRfc1123IsTimeT(_XPLATSTR("14 Jan 2019 23:16:21 +0000"), (time_t) 1547507781);
-- TestRfc1123IsTimeT(_XPLATSTR("14 Jan 2019 23:16:21 -0001"), (time_t) 1547507841);
-- TestRfc1123IsTimeT(_XPLATSTR("14 Jan 2019 23:16:21 +0001"), (time_t) 1547507721);
-- TestRfc1123IsTimeT(_XPLATSTR("14 Jan 2019 23:16:21 -0100"), (time_t) 1547511381);
-- TestRfc1123IsTimeT(_XPLATSTR("14 Jan 2019 23:16:21 +0100"), (time_t) 1547504181);
-+ TestRfc1123IsTimeT(_XPLATSTR("01 Jan 1970 00:00:00 GMT"), (time_t)0);
-+ TestRfc1123IsTimeT(_XPLATSTR("19 Jan 2038 03:14:06 GMT"), (time_t)INT_MAX - 1);
-+ if (sizeof(time_t) == 8)
-+ {
-+ TestRfc1123IsTimeT(_XPLATSTR("19 Jan 2038 03:13:07 -0001"), (time_t)INT_MAX);
-+ TestRfc1123IsTimeT(_XPLATSTR("19 Jan 2038 03:14:07 -0000"), (time_t)INT_MAX);
-+ }
-+ TestRfc1123IsTimeT(_XPLATSTR("14 Jan 2019 23:16:21 +0000"), (time_t)1547507781);
-+ TestRfc1123IsTimeT(_XPLATSTR("14 Jan 2019 23:16:21 -0001"), (time_t)1547507841);
-+ TestRfc1123IsTimeT(_XPLATSTR("14 Jan 2019 23:16:21 +0001"), (time_t)1547507721);
-+ TestRfc1123IsTimeT(_XPLATSTR("14 Jan 2019 23:16:21 -0100"), (time_t)1547511381);
-+ TestRfc1123IsTimeT(_XPLATSTR("14 Jan 2019 23:16:21 +0100"), (time_t)1547504181);
- }
-
- TEST(parsing_time_rfc1123_uses_each_field)
- {
-- TestRfc1123IsTimeT(_XPLATSTR("02 Jan 1970 00:00:00 GMT"), (time_t) 86400);
-- TestRfc1123IsTimeT(_XPLATSTR("12 Jan 1970 00:00:00 GMT"), (time_t) 950400);
-- TestRfc1123IsTimeT(_XPLATSTR("01 Feb 1970 00:00:00 GMT"), (time_t) 2678400);
-- TestRfc1123IsTimeT(_XPLATSTR("01 Jan 2000 00:00:00 GMT"), (time_t) 946684800);
--#ifndef _USE_32BIT_TIME_T
-- TestRfc1123IsTimeT(_XPLATSTR("01 Jan 2100 00:00:00 GMT"), (time_t) 4102444800);
--#endif // _USE_32BIT_TIME_T
-- TestRfc1123IsTimeT(_XPLATSTR("01 Jan 1990 00:00:00 GMT"), (time_t) 631152000);
-- TestRfc1123IsTimeT(_XPLATSTR("01 Jan 1971 00:00:00 GMT"), (time_t) 31536000);
-- TestRfc1123IsTimeT(_XPLATSTR("01 Jan 1970 10:00:00 GMT"), (time_t) 36000);
-- TestRfc1123IsTimeT(_XPLATSTR("01 Jan 1970 01:00:00 GMT"), (time_t) 3600);
-- TestRfc1123IsTimeT(_XPLATSTR("01 Jan 1970 00:10:00 GMT"), (time_t) 600);
-- TestRfc1123IsTimeT(_XPLATSTR("01 Jan 1970 00:01:00 GMT"), (time_t) 60);
-- TestRfc1123IsTimeT(_XPLATSTR("01 Jan 1970 00:00:10 GMT"), (time_t) 10);
-- TestRfc1123IsTimeT(_XPLATSTR("01 Jan 1970 00:00:01 GMT"), (time_t) 1);
-- TestRfc1123IsTimeT(_XPLATSTR("01 Jan 1970 10:00:00 GMT"), (time_t) 36000);
-- TestRfc1123IsTimeT(_XPLATSTR("01 Jan 1970 02:00:00 PST"), (time_t) 36000);
-- TestRfc1123IsTimeT(_XPLATSTR("01 Jan 1970 03:00:00 PDT"), (time_t) 36000);
-- TestRfc1123IsTimeT(_XPLATSTR("01 Jan 1970 03:00:00 MST"), (time_t) 36000);
-- TestRfc1123IsTimeT(_XPLATSTR("01 Jan 1970 04:00:00 MDT"), (time_t) 36000);
-- TestRfc1123IsTimeT(_XPLATSTR("01 Jan 1970 04:00:00 CST"), (time_t) 36000);
-- TestRfc1123IsTimeT(_XPLATSTR("01 Jan 1970 05:00:00 CDT"), (time_t) 36000);
-- TestRfc1123IsTimeT(_XPLATSTR("01 Jan 1970 05:00:00 EST"), (time_t) 36000);
-- TestRfc1123IsTimeT(_XPLATSTR("01 Jan 1970 06:00:00 EDT"), (time_t) 36000);
-- TestRfc1123IsTimeT(_XPLATSTR("01 Jan 1970 06:00:00 -0400"), (time_t) 36000);
-- TestRfc1123IsTimeT(_XPLATSTR("01 Jan 1970 05:59:00 -0401"), (time_t) 36000);
-+ TestRfc1123IsTimeT(_XPLATSTR("02 Jan 1970 00:00:00 GMT"), (time_t)86400);
-+ TestRfc1123IsTimeT(_XPLATSTR("12 Jan 1970 00:00:00 GMT"), (time_t)950400);
-+ TestRfc1123IsTimeT(_XPLATSTR("01 Feb 1970 00:00:00 GMT"), (time_t)2678400);
-+ TestRfc1123IsTimeT(_XPLATSTR("01 Jan 2000 00:00:00 GMT"), (time_t)946684800);
-+ if (sizeof(time_t) == 8)
-+ {
-+ TestRfc1123IsTimeT(_XPLATSTR("01 Jan 2100 00:00:00 GMT"), (time_t)4102444800);
-+ }
-+ TestRfc1123IsTimeT(_XPLATSTR("01 Jan 1990 00:00:00 GMT"), (time_t)631152000);
-+ TestRfc1123IsTimeT(_XPLATSTR("01 Jan 1971 00:00:00 GMT"), (time_t)31536000);
-+ TestRfc1123IsTimeT(_XPLATSTR("01 Jan 1970 10:00:00 GMT"), (time_t)36000);
-+ TestRfc1123IsTimeT(_XPLATSTR("01 Jan 1970 01:00:00 GMT"), (time_t)3600);
-+ TestRfc1123IsTimeT(_XPLATSTR("01 Jan 1970 00:10:00 GMT"), (time_t)600);
-+ TestRfc1123IsTimeT(_XPLATSTR("01 Jan 1970 00:01:00 GMT"), (time_t)60);
-+ TestRfc1123IsTimeT(_XPLATSTR("01 Jan 1970 00:00:10 GMT"), (time_t)10);
-+ TestRfc1123IsTimeT(_XPLATSTR("01 Jan 1970 00:00:01 GMT"), (time_t)1);
-+ TestRfc1123IsTimeT(_XPLATSTR("01 Jan 1970 10:00:00 GMT"), (time_t)36000);
-+ TestRfc1123IsTimeT(_XPLATSTR("01 Jan 1970 02:00:00 PST"), (time_t)36000);
-+ TestRfc1123IsTimeT(_XPLATSTR("01 Jan 1970 03:00:00 PDT"), (time_t)36000);
-+ TestRfc1123IsTimeT(_XPLATSTR("01 Jan 1970 03:00:00 MST"), (time_t)36000);
-+ TestRfc1123IsTimeT(_XPLATSTR("01 Jan 1970 04:00:00 MDT"), (time_t)36000);
-+ TestRfc1123IsTimeT(_XPLATSTR("01 Jan 1970 04:00:00 CST"), (time_t)36000);
-+ TestRfc1123IsTimeT(_XPLATSTR("01 Jan 1970 05:00:00 CDT"), (time_t)36000);
-+ TestRfc1123IsTimeT(_XPLATSTR("01 Jan 1970 05:00:00 EST"), (time_t)36000);
-+ TestRfc1123IsTimeT(_XPLATSTR("01 Jan 1970 06:00:00 EDT"), (time_t)36000);
-+ TestRfc1123IsTimeT(_XPLATSTR("01 Jan 1970 06:00:00 -0400"), (time_t)36000);
-+ TestRfc1123IsTimeT(_XPLATSTR("01 Jan 1970 05:59:00 -0401"), (time_t)36000);
- }
-
- TEST(parsing_time_rfc1123_max_days)
- {
-- TestRfc1123IsTimeT(_XPLATSTR("31 Jan 1970 00:00:00 GMT"), (time_t) 2592000);
-- TestRfc1123IsTimeT(_XPLATSTR("28 Feb 2019 00:00:00 GMT"), (time_t) 1551312000); // non leap year allows feb 28
-- TestRfc1123IsTimeT(_XPLATSTR("29 Feb 2020 00:00:00 GMT"), (time_t) 1582934400); // leap year allows feb 29
-- TestRfc1123IsTimeT(_XPLATSTR("31 Mar 1970 00:00:00 GMT"), (time_t) 7689600);
-- TestRfc1123IsTimeT(_XPLATSTR("30 Apr 1970 00:00:00 GMT"), (time_t) 10281600);
-- TestRfc1123IsTimeT(_XPLATSTR("31 May 1970 00:00:00 GMT"), (time_t) 12960000);
-- TestRfc1123IsTimeT(_XPLATSTR("30 Jun 1970 00:00:00 GMT"), (time_t) 15552000);
-- TestRfc1123IsTimeT(_XPLATSTR("31 Jul 1970 00:00:00 GMT"), (time_t) 18230400);
-- TestRfc1123IsTimeT(_XPLATSTR("31 Aug 1970 00:00:00 GMT"), (time_t) 20908800);
-- TestRfc1123IsTimeT(_XPLATSTR("30 Sep 1970 00:00:00 GMT"), (time_t) 23500800);
-- TestRfc1123IsTimeT(_XPLATSTR("31 Oct 1970 00:00:00 GMT"), (time_t) 26179200);
-- TestRfc1123IsTimeT(_XPLATSTR("30 Nov 1970 00:00:00 GMT"), (time_t) 28771200);
-- TestRfc1123IsTimeT(_XPLATSTR("31 Dec 1970 00:00:00 GMT"), (time_t) 31449600);
-+ TestRfc1123IsTimeT(_XPLATSTR("31 Jan 1970 00:00:00 GMT"), (time_t)2592000);
-+ TestRfc1123IsTimeT(_XPLATSTR("28 Feb 2019 00:00:00 GMT"), (time_t)1551312000); // non leap year allows feb 28
-+ TestRfc1123IsTimeT(_XPLATSTR("29 Feb 2020 00:00:00 GMT"), (time_t)1582934400); // leap year allows feb 29
-+ TestRfc1123IsTimeT(_XPLATSTR("31 Mar 1970 00:00:00 GMT"), (time_t)7689600);
-+ TestRfc1123IsTimeT(_XPLATSTR("30 Apr 1970 00:00:00 GMT"), (time_t)10281600);
-+ TestRfc1123IsTimeT(_XPLATSTR("31 May 1970 00:00:00 GMT"), (time_t)12960000);
-+ TestRfc1123IsTimeT(_XPLATSTR("30 Jun 1970 00:00:00 GMT"), (time_t)15552000);
-+ TestRfc1123IsTimeT(_XPLATSTR("31 Jul 1970 00:00:00 GMT"), (time_t)18230400);
-+ TestRfc1123IsTimeT(_XPLATSTR("31 Aug 1970 00:00:00 GMT"), (time_t)20908800);
-+ TestRfc1123IsTimeT(_XPLATSTR("30 Sep 1970 00:00:00 GMT"), (time_t)23500800);
-+ TestRfc1123IsTimeT(_XPLATSTR("31 Oct 1970 00:00:00 GMT"), (time_t)26179200);
-+ TestRfc1123IsTimeT(_XPLATSTR("30 Nov 1970 00:00:00 GMT"), (time_t)28771200);
-+ TestRfc1123IsTimeT(_XPLATSTR("31 Dec 1970 00:00:00 GMT"), (time_t)31449600);
- }
-
- TEST(parsing_time_rfc1123_invalid_cases)
-@@ -266,7 +268,7 @@ SUITE(datetime)
- _XPLATSTR("Thu, 01 Jan 1970 00:00:00 G"),
- _XPLATSTR("Thu, 01 Jan 1970 00:00:00 GM"),
- _XPLATSTR("Fri, 01 Jan 1970 00:00:00 GMT"), // wrong day
-- _XPLATSTR("01 Jan 4970 00:00:00 GMT"), // year too big
-+ _XPLATSTR("01 Jan 4970 00:00:00 GMT"), // year too big
- _XPLATSTR("01 Jan 3001 00:00:00 GMT"),
- _XPLATSTR("01 Xxx 1971 00:00:00 GMT"), // month bad
- _XPLATSTR("00 Jan 1971 00:00:00 GMT"), // day too small
-@@ -288,8 +290,8 @@ SUITE(datetime)
- _XPLATSTR("01 Jan 1971 00:60:00 GMT"), // minute too big
- _XPLATSTR("01 Jan 1971 00:00:70 GMT"), // second too big
- _XPLATSTR("01 Jan 1971 00:00:61 GMT"),
-- _XPLATSTR("01 Jan 1969 00:00:00 GMT"), // underflow
-- _XPLATSTR("01 Jan 1969 00:00:00 CEST"), // bad tz
-+ _XPLATSTR("01 Jan 1969 00:00:00 GMT"), // underflow
-+ _XPLATSTR("01 Jan 1969 00:00:00 CEST"), // bad tz
- _XPLATSTR("01 Jan 1970 00:00:00 +2400"), // bad tzoffsets
- _XPLATSTR("01 Jan 1970 00:00:00 -3000"),
- _XPLATSTR("01 Jan 1970 00:00:00 +2160"),
-@@ -309,11 +311,12 @@ SUITE(datetime)
- // boundary cases:
- TestDateTimeRoundtrip(_XPLATSTR("1970-01-01T00:00:00Z")); // epoch
- TestDateTimeRoundtrip(_XPLATSTR("2038-01-19T03:14:06+00:00"), _XPLATSTR("2038-01-19T03:14:06Z")); // INT_MAX - 1
--#ifndef _USE_32BIT_TIME_T
-- TestDateTimeRoundtrip(_XPLATSTR("2038-01-19T03:13:07-00:01"),
-- _XPLATSTR("2038-01-19T03:14:07Z")); // INT_MAX after subtacting 1
-- TestDateTimeRoundtrip(_XPLATSTR("2038-01-19T03:14:07-00:00"), _XPLATSTR("2038-01-19T03:14:07Z"));
--#endif // _USE_32BIT_TIME_T
-+ if (sizeof(time_t) == 8)
-+ {
-+ TestDateTimeRoundtrip(_XPLATSTR("2038-01-19T03:13:07-00:01"),
-+ _XPLATSTR("2038-01-19T03:14:07Z")); // INT_MAX after subtacting 1
-+ TestDateTimeRoundtrip(_XPLATSTR("2038-01-19T03:14:07-00:00"), _XPLATSTR("2038-01-19T03:14:07Z"));
-+ }
- }
-
- TEST(parsing_time_iso8601_uses_each_timezone_digit)
-@@ -456,11 +459,8 @@ SUITE(datetime)
- _XPLATSTR("1971-01-01T00:60:00Z"), // minute too big
- _XPLATSTR("1971-01-01T00:00:70Z"), // second too big
- _XPLATSTR("1971-01-01T00:00:61Z"),
-- _XPLATSTR("1969-01-01T00:00:00Z"), // underflow
--#ifdef _USE_32BIT_TIME_T
-- _XPLATSTR("3000-01-01T00:00:01Z"), // overflow
--#endif
-- _XPLATSTR("3001-01-01T00:00:00Z"),
-+ _XPLATSTR("1969-01-01T00:00:00Z"), // underflow
-+ _XPLATSTR("3001-01-01T00:00:00Z"), // overflow
- _XPLATSTR("1970-01-01T00:00:00+00:01"), // time zone underflow
- // _XPLATSTR("1970-01-01T00:00:00.Z"), // accepted as invalid timezone above
- _XPLATSTR("1970-01-01T00:00:00+24:00"), // bad tzoffsets
diff --git a/meta-openembedded/meta-oe/recipes-support/cpprest/cpprest/disable-float-tests.patch b/meta-openembedded/meta-oe/recipes-support/cpprest/cpprest/disable-float-tests.patch
new file mode 100644
index 0000000..3ff7f0d
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/cpprest/cpprest/disable-float-tests.patch
@@ -0,0 +1,25 @@
+Description: new toolchain might have increased the float precision
+Author: Gianfranco Costamagna <locutusofborg@debian.org>
+Last-Update: 2017-10-28
+Forwarded: https://github.com/Microsoft/cpprestsdk/issues/576
+
+Index: cpprest/Release/tests/functional/streams/istream_tests.cpp
+===================================================================
+--- cpprest.orig/Release/tests/functional/streams/istream_tests.cpp
++++ cpprest/Release/tests/functional/streams/istream_tests.cpp
+@@ -1297,6 +1297,7 @@
+ void compare_double(double expected, double actual) { compare_floating(expected, actual, DBL_EPSILON); }
+ void compare_float(float expected, float actual) { compare_floating(expected, actual, FLT_EPSILON); }
+
++ /*
+ TEST(extract_floating_point)
+ {
+ std::string test_string;
+@@ -1343,6 +1344,7 @@
+ if (expected == 0) VERIFY_ARE_EQUAL(1 / expected, 1 / actual);
+ } while (!std_istream.eof());
+ }
++ */
+
+ TEST(extract_floating_point_with_exceptions)
+ {
diff --git a/meta-openembedded/meta-oe/recipes-support/cpprest/cpprest/disable-outside-tests.patch b/meta-openembedded/meta-oe/recipes-support/cpprest/cpprest/disable-outside-tests.patch
new file mode 100644
index 0000000..5232e2a
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/cpprest/cpprest/disable-outside-tests.patch
@@ -0,0 +1,138 @@
+Description: Debian forbids calls to external websites.
+
+Author: Gianfranco Costamagna <locutus@debian.org>
+Origin: Debian
+Forwarded: not-needed
+Reviewed-By: Gianfranco Costamagna <locutusofborg@debian.org>
+Last-Update: 2015-11-25
+
+Index: cpprest/Release/tests/functional/http/client/CMakeLists.txt
+===================================================================
+--- cpprest.orig/Release/tests/functional/http/client/CMakeLists.txt
++++ cpprest/Release/tests/functional/http/client/CMakeLists.txt
+@@ -12,7 +12,6 @@
+ multiple_requests.cpp
+ oauth1_tests.cpp
+ oauth2_tests.cpp
+- outside_tests.cpp
+ pipeline_stage_tests.cpp
+ progress_handler_tests.cpp
+ proxy_tests.cpp
+Index: cpprest/Release/tests/functional/http/client/authentication_tests.cpp
+===================================================================
+--- cpprest.orig/Release/tests/functional/http/client/authentication_tests.cpp
++++ cpprest/Release/tests/functional/http/client/authentication_tests.cpp
+@@ -675,9 +675,9 @@
+ VERIFY_ARE_EQUAL(return_code, response.status_code());
+ }
+
+- TEST(auth_no_data) { auth_test_impl(false); }
++ //TEST(auth_no_data) { auth_test_impl(false); }
+
+- TEST(unsuccessful_auth_with_basic_cred) { auth_test_impl(true); }
++ //TEST(unsuccessful_auth_with_basic_cred) { auth_test_impl(true); }
+
+ TEST_FIXTURE(uri_address, set_user_options_asio_http)
+ {
+@@ -695,6 +695,7 @@
+ VERIFY_ARE_EQUAL(200, response.status_code());
+ }
+
++ /*
+ TEST_FIXTURE(uri_address, set_user_options_asio_https)
+ {
+ handle_timeout([] {
+@@ -714,6 +715,7 @@
+ VERIFY_IS_FALSE(v.empty());
+ });
+ }
++ */
+
+ #endif
+
+Index: cpprest/Release/tests/functional/websockets/client/authentication_tests.cpp
+===================================================================
+--- cpprest.orig/Release/tests/functional/websockets/client/authentication_tests.cpp
++++ cpprest/Release/tests/functional/websockets/client/authentication_tests.cpp
+@@ -93,6 +93,7 @@
+ return false;
+ }
+
++ /*
+ TEST(ssl_test)
+ {
+ websocket_client client;
+@@ -127,6 +128,7 @@
+ throw;
+ }
+ }
++ */
+
+ // These tests are specific to our websocketpp based implementation.
+ #if !defined(__cplusplus_winrt)
+@@ -159,12 +161,14 @@
+ }
+ }
+
++ /*
+ // Test specifically for server SignalR team hit interesting cases with.
+ TEST(sni_with_older_server_test)
+ {
+ websocket_client client;
+ sni_test_impl(client);
+ }
++ */
+
+ // WinRT doesn't expose option for disabling.
+ // No stable server is available to reliably test this.
+@@ -194,6 +198,7 @@
+ }
+ }
+
++ /*
+ // Winrt doesn't allow explicitly setting server host for SNI.
+ TEST(sni_explicit_hostname)
+ {
+@@ -204,6 +209,7 @@
+ websocket_client client(config);
+ sni_test_impl(client);
+ }
++ */
+
+ void handshake_error_test_impl(const ::utility::string_t& host)
+ {
+@@ -225,11 +231,11 @@
+ }
+ }
+
+- TEST(self_signed_cert) { handshake_error_test_impl(U("wss://self-signed.badssl.com/")); }
++ //TEST(self_signed_cert) { handshake_error_test_impl(U("wss://self-signed.badssl.com/")); }
+
+- TEST(hostname_mismatch) { handshake_error_test_impl(U("wss://wrong.host.badssl.com/")); }
++ //TEST(hostname_mismatch) { handshake_error_test_impl(U("wss://wrong.host.badssl.com/")); }
+
+- TEST(cert_expired) { handshake_error_test_impl(U("wss://expired.badssl.com/")); }
++ //TEST(cert_expired) { handshake_error_test_impl(U("wss://expired.badssl.com/")); }
+
+ #endif
+
+Index: cpprest/Release/tests/functional/http/client/connections_and_errors.cpp
+===================================================================
+--- cpprest.orig/Release/tests/functional/http/client/connections_and_errors.cpp
++++ cpprest/Release/tests/functional/http/client/connections_and_errors.cpp
+@@ -406,6 +406,7 @@
+ }
+ #endif
+
++ /*
+ // Try to connect to a server on a closed port and cancel the operation.
+ TEST_FIXTURE(uri_address, cancel_bad_port)
+ {
+@@ -437,6 +438,7 @@
+
+ VERIFY_THROWS_HTTP_ERROR_CODE(t.get(), std::errc::operation_canceled);
+ }
++ */
+
+ } // SUITE(connections_and_errors)
+
diff --git a/meta-openembedded/meta-oe/recipes-support/cpprest/cpprest_2.10.12.bb b/meta-openembedded/meta-oe/recipes-support/cpprest/cpprest_2.10.12.bb
deleted file mode 100644
index 67edf56..0000000
--- a/meta-openembedded/meta-oe/recipes-support/cpprest/cpprest_2.10.12.bb
+++ /dev/null
@@ -1,18 +0,0 @@
-SUMMARY = "Microsoft project for cloud-based client-server communication in native code using a modern asynchronous C++ API design."
-SECTION = "libs/network"
-HOMEPAGE = "https://github.com/Microsoft/cpprestsdk/"
-LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://${S}/license.txt;md5=a2e15b954769218ff912468eecd6a02f"
-DEPENDS = "openssl websocketpp zlib boost brotli"
-
-EXTRA_OECMAKE = "-DCPPREST_EXPORT_DIR=cmake -DCPPREST_EXCLUDE_BROTLI=OFF"
-
-SRC_URI = "git://github.com/Microsoft/cpprestsdk.git;protocol=https;branch=master \
- file://1094.patch "
-
-# tag 2.10.12
-SRCREV= "d4fb1cf7f7d22c12e2e442ba5a5e98d09b0a28ab"
-
-S = "${WORKDIR}/git"
-
-inherit cmake pkgconfig
diff --git a/meta-openembedded/meta-oe/recipes-support/cpprest/cpprest_2.10.13.bb b/meta-openembedded/meta-oe/recipes-support/cpprest/cpprest_2.10.13.bb
new file mode 100644
index 0000000..1b1265f
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/cpprest/cpprest_2.10.13.bb
@@ -0,0 +1,19 @@
+SUMMARY = "Microsoft project for cloud-based client-server communication in native code using a modern asynchronous C++ API design."
+SECTION = "libs/network"
+HOMEPAGE = "https://github.com/Microsoft/cpprestsdk/"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://${S}/license.txt;md5=a2e15b954769218ff912468eecd6a02f"
+DEPENDS = "openssl websocketpp zlib boost brotli"
+
+EXTRA_OECMAKE = "-DCPPREST_EXPORT_DIR=cmake -DCPPREST_EXCLUDE_BROTLI=OFF"
+
+SRC_URI = "git://github.com/Microsoft/cpprestsdk.git;protocol=https;branch=master \
+ file://disable-float-tests.patch \
+ file://disable-outside-tests.patch "
+
+# tag 2.10.13
+SRCREV= "9d8f544001cb74544de6dc8c565592f7e2626d6e"
+
+S = "${WORKDIR}/git"
+
+inherit cmake pkgconfig
diff --git a/meta-openembedded/meta-oe/recipes-support/daemonize/daemonize_git.bb b/meta-openembedded/meta-oe/recipes-support/daemonize/daemonize_git.bb
index 4790883..1e49eef 100644
--- a/meta-openembedded/meta-oe/recipes-support/daemonize/daemonize_git.bb
+++ b/meta-openembedded/meta-oe/recipes-support/daemonize/daemonize_git.bb
@@ -2,13 +2,13 @@
HOMEPAGE = "http://software.clapper.org/daemonize/"
LICENSE = "BSD"
LIC_FILES_CHKSUM = "file://LICENSE.md;md5=3cf9084faa88bc8554a9139d8d7dd35f"
-PV = "1.7.7+git${SRCPV}"
+PV = "1.7.8"
inherit autotools
-SRCREV = "6b10308b13c13e7b911e75e27bf7e65c30d58799"
+SRCREV = "18869a797dab12bf1c917ba3b4782fef484c407c"
SRC_URI = "git://github.com/bmc/daemonize.git \
- file://fix-ldflags-for-gnuhash.patch"
+"
S = "${WORKDIR}/git"
diff --git a/meta-openembedded/meta-oe/recipes-support/daemonize/files/fix-ldflags-for-gnuhash.patch b/meta-openembedded/meta-oe/recipes-support/daemonize/files/fix-ldflags-for-gnuhash.patch
deleted file mode 100644
index 4fa2ee1..0000000
--- a/meta-openembedded/meta-oe/recipes-support/daemonize/files/fix-ldflags-for-gnuhash.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-Add the LDFLAGS to the final link to avoid errors with missing GNU_HASH
-
-Upstream-Status: Submitted [https://github.com/bmc/daemonize/pull/22]
-
-Signed-off-by: Derek Straka <derek@asterius.io>
-
-diff --git a/Makefile.in b/Makefile.in
-index 8a4d078..40d3dee 100644
---- a/Makefile.in
-+++ b/Makefile.in
-@@ -24,10 +24,10 @@ LDFLAGS = @LDFLAGS@
- all: daemonize
-
- daemonize: daemonize.o getopt.o $(MISSING_OBJECTS)
-- $(CC) $(CFLAGS) -o $@ $^
-+ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^
-
- testdaemon: testdaemon.o
-- $(CC) $(CFLAGS) -o $@ $^
-+ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^
-
- psman: daemonize.ps
-
diff --git a/meta-openembedded/meta-oe/recipes-support/fltk/fltk.inc b/meta-openembedded/meta-oe/recipes-support/fltk/fltk.inc
index d3416c8..97a1fbf 100644
--- a/meta-openembedded/meta-oe/recipes-support/fltk/fltk.inc
+++ b/meta-openembedded/meta-oe/recipes-support/fltk/fltk.inc
@@ -5,16 +5,15 @@
LIC_FILES_CHKSUM = "file://COPYING;md5=f6b26344a24a941a01a5b0826e80b5ca"
SRC_URI = " \
- http://fltk.org/pub/fltk/1.3.4/${BP}-source.tar.gz \
+ http://fltk.org/pub/fltk/${PV}/${BP}-source.tar.bz2 \
file://disable_test.patch \
- file://fltk-no-freetype-config.patch \
file://0001-Fl_Preferences.cxx-do-not-use-dlopen-in-case-glibc-s.patch \
file://0002-always-build-fluid-and-export-pointers.patch \
"
-PV = "1.3.4-2"
-SRC_URI[md5sum] = "b8e291343357e49dd81a22408744e400"
-SRC_URI[sha256sum] = "25d349c18c99508737d48f225a2eb26a43338f9247551cab72a317fa42cda910"
+PV = "1.3.5"
+SRC_URI[md5sum] = "0de2b45a1896be2b4a8cafae89b84248"
+SRC_URI[sha256sum] = "2933c72400f9e7c0f4c3a81a1ce98bc9582b2a3edc44b8597ccd26e240e32c3c"
inherit cmake pkgconfig
diff --git a/meta-openembedded/meta-oe/recipes-support/fltk/fltk/fltk-no-freetype-config.patch b/meta-openembedded/meta-oe/recipes-support/fltk/fltk/fltk-no-freetype-config.patch
deleted file mode 100644
index 2a9915b..0000000
--- a/meta-openembedded/meta-oe/recipes-support/fltk/fltk/fltk-no-freetype-config.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-From 699420d306cadbb5285942e09f4383d84b01985d Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
-Date: Fri, 13 Jan 2017 13:21:23 +0100
-Subject: [PATCH] replace freetype-config by pkg-config
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Upstream-Status: Pending
-
-Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
----
- configure.ac | 10 +++++-----
- 1 file changed, 5 insertions(+), 5 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index f0efd48..3af5ecb 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -1006,12 +1006,12 @@ case $host_os_gui in
-
- xft_found=no
- if test x$enable_xft != xno; then
-- AC_PATH_PROG(FTCONFIG, freetype-config)
-+ AC_PATH_PROG(PKGCONFIG,pkg-config)
-
-- if test "x$FTCONFIG" != x; then
-- CPPFLAGS="`$FTCONFIG --cflags` $CPPFLAGS"
-- CFLAGS="`$FTCONFIG --cflags` $CFLAGS"
-- CXXFLAGS="`$FTCONFIG --cflags` $CXXFLAGS"
-+ if test "x$PKGCONFIG" != x; then
-+ CPPFLAGS="`$PKGCONFIG --cflags xft` $CPPFLAGS"
-+ CFLAGS="`$PKGCONFIG --cflags xft` $CFLAGS"
-+ CXXFLAGS="`$PKGCONFIG --cflags xft` $CXXFLAGS"
-
- AC_CHECK_LIB(fontconfig, FcPatternCreate)
- AC_CHECK_HEADER(X11/Xft/Xft.h,
---
-2.7.4
-
diff --git a/meta-openembedded/meta-oe/recipes-support/gd/gd_2.2.5.bb b/meta-openembedded/meta-oe/recipes-support/gd/gd_2.2.5.bb
index 548d2c5..c846bda 100644
--- a/meta-openembedded/meta-oe/recipes-support/gd/gd_2.2.5.bb
+++ b/meta-openembedded/meta-oe/recipes-support/gd/gd_2.2.5.bb
@@ -35,6 +35,8 @@
EXTRA_OEMAKE = 'LDFLAGS="${LDFLAGS}"'
+DEBUG_OPTIMIZATION_append = " -Wno-error=maybe-uninitialized"
+
do_install_append() {
# cleanup buildpaths from gdlib.pc
sed -i -e 's#${STAGING_DIR_HOST}##g' ${D}${libdir}/pkgconfig/gdlib.pc
@@ -48,3 +50,5 @@
PROVIDES += "${PN}-tools"
RPROVIDES_${PN}-tools = "${PN}-tools"
RDEPENDS_${PN}-tools = "perl perl-module-strict"
+
+CVE_PRODUCT = "libgd"
diff --git a/meta-openembedded/meta-oe/recipes-support/gpm/gpm/gpm.service.in b/meta-openembedded/meta-oe/recipes-support/gpm/gpm/gpm.service.in
index ee6c040..5a6cade 100644
--- a/meta-openembedded/meta-oe/recipes-support/gpm/gpm/gpm.service.in
+++ b/meta-openembedded/meta-oe/recipes-support/gpm/gpm/gpm.service.in
@@ -4,6 +4,7 @@
[Service]
Type=forking
ExecStart=@bindir@/gpm -m /dev/input/mice -t imps2
+PIDFile=/run/gpm.pid
[Install]
WantedBy=multi-user.target
diff --git a/meta-openembedded/meta-oe/recipes-support/gpm/gpm/no-docs.patch b/meta-openembedded/meta-oe/recipes-support/gpm/gpm/no-docs.patch
deleted file mode 100644
index 3faef84..0000000
--- a/meta-openembedded/meta-oe/recipes-support/gpm/gpm/no-docs.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-
-#
-# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher
-#
-
-Index: gpm-1.99.7/Makefile.in
-===================================================================
---- gpm-1.99.7.orig/Makefile.in 2008-07-24 03:36:35.000000000 -0700
-+++ gpm-1.99.7/Makefile.in 2010-06-22 18:28:45.269507001 -0700
-@@ -19,7 +19,7 @@
- # user-overridable flags, but it's also all the implicit rule looks at.
- # missing ?
-
--SUBDIRS = src doc contrib
-+SUBDIRS = src
-
-
- ### simple, but effective rules
diff --git a/meta-openembedded/meta-oe/recipes-support/gpm/gpm/processcreds.patch b/meta-openembedded/meta-oe/recipes-support/gpm/gpm/processcreds.patch
deleted file mode 100644
index d647eca..0000000
--- a/meta-openembedded/meta-oe/recipes-support/gpm/gpm/processcreds.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-Index: gpm-1.99.7/src/daemon/processconn.c
-===================================================================
---- gpm-1.99.7.orig/src/daemon/processconn.c 2010-09-29 17:36:18.571782951 +0400
-+++ gpm-1.99.7/src/daemon/processconn.c 2010-09-29 17:42:44.659991758 +0400
-@@ -20,6 +20,7 @@
- *
- ********/
-
-+#define _GNU_SOURCE
- #include <sys/socket.h> /* accept */
- #include <stdlib.h> /* malloc */
- #include <unistd.h> /* close */
diff --git a/meta-openembedded/meta-oe/recipes-support/gpm/gpm_git.bb b/meta-openembedded/meta-oe/recipes-support/gpm/gpm_git.bb
index dcc9d68..7034d33 100644
--- a/meta-openembedded/meta-oe/recipes-support/gpm/gpm_git.bb
+++ b/meta-openembedded/meta-oe/recipes-support/gpm/gpm_git.bb
@@ -1,6 +1,8 @@
+SUMMARY = "Console mouse driver"
DESCRIPTION = "GPM (General Purpose Mouse) is a mouse server \
for the console and xterm, with sample clients included \
(emacs, etc)."
+HOMEPAGE = "https://www.nico.schottelius.org/software/gpm"
SECTION = "console/utils"
LICENSE = "GPLv2+"
LIC_FILES_CHKSUM = "file://COPYING;md5=18810669f13b87348459e611d31ab760"
@@ -13,8 +15,6 @@
SRC_URI = "git://github.com/telmich/gpm;protocol=git \
file://init \
- file://no-docs.patch \
- file://processcreds.patch \
file://gpm.service.in \
file://0001-Use-sigemptyset-API-instead-of-__sigemptyset.patch \
"
@@ -31,17 +31,10 @@
}
do_install_append () {
- if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then
- install -d ${D}${systemd_system_unitdir}
- sed 's:@bindir@:${bindir}:' < ${WORKDIR}/gpm.service.in >${D}${systemd_system_unitdir}/gpm.service
- fi
- if ${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'true', 'false', d)}; then
- install -D -m 0755 ${WORKDIR}/init ${D}/${sysconfdir}/init.d/gpm
- fi
- install -D -m 0644 ${S}/src/headers/gpm.h ${D}${includedir}/gpm.h
+ install -d ${D}${systemd_system_unitdir}
+ sed 's:@bindir@:${sbindir}:' < ${WORKDIR}/gpm.service.in >${D}${systemd_system_unitdir}/gpm.service
+ install -D -m 0755 ${WORKDIR}/init ${D}${INIT_D_DIR}/gpm
ln -s libgpm.so.2 ${D}${libdir}/libgpm.so
}
SYSTEMD_SERVICE_${PN} = "gpm.service"
-
-FILES_${PN} += "${datadir}/emacs"
diff --git a/meta-openembedded/meta-oe/recipes-support/hwdata/hwdata_git.bb b/meta-openembedded/meta-oe/recipes-support/hwdata/hwdata_git.bb
index 8e8dbf5..58a0607 100644
--- a/meta-openembedded/meta-oe/recipes-support/hwdata/hwdata_git.bb
+++ b/meta-openembedded/meta-oe/recipes-support/hwdata/hwdata_git.bb
@@ -5,8 +5,8 @@
LICENSE = "GPL-2.0+"
LIC_FILES_CHKSUM = "file://LICENSE;md5=1556547711e8246992b999edd9445a57"
-PV = "0.316+git${SRCPV}"
-SRCREV = "803819aef862ded2ce0737cd3cf642c633b68c35"
+PV = "0.322"
+SRCREV = "a65d28807d8f2446faa4734c758d1607f0a56ded"
SRC_URI = "git://github.com/vcrhonek/${BPN}.git"
S = "${WORKDIR}/git"
diff --git a/meta-openembedded/meta-oe/recipes-support/imagemagick/imagemagick_7.0.8.bb b/meta-openembedded/meta-oe/recipes-support/imagemagick/imagemagick_7.0.8.bb
index 52b291d..f235db0 100644
--- a/meta-openembedded/meta-oe/recipes-support/imagemagick/imagemagick_7.0.8.bb
+++ b/meta-openembedded/meta-oe/recipes-support/imagemagick/imagemagick_7.0.8.bb
@@ -9,9 +9,9 @@
DEPENDS = "lcms bzip2 jpeg libpng tiff zlib fftw freetype libtool"
BASE_PV := "${PV}"
-PV .= "_35"
+PV .= "_43"
SRC_URI = "git://github.com/ImageMagick/ImageMagick.git "
-SRCREV = "224159dfcc0ae3da9a247921e3c8bfb44d39965e"
+SRCREV = "723c2bd9cc716a9267a8afe08354d67bb60dabd5"
S = "${WORKDIR}/git"
diff --git a/meta-openembedded/meta-oe/recipes-support/inotify-tools/inotify-tools/inotifywait-fix-compile-error-with-GCC-6.patch b/meta-openembedded/meta-oe/recipes-support/inotify-tools/inotify-tools/inotifywait-fix-compile-error-with-GCC-6.patch
deleted file mode 100644
index ba042a2..0000000
--- a/meta-openembedded/meta-oe/recipes-support/inotify-tools/inotify-tools/inotifywait-fix-compile-error-with-GCC-6.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-From 7affb288d6c0726e7b1ebc317a878927b6ef0d02 Mon Sep 17 00:00:00 2001
-From: Andrea Galbusera <gizero@gmail.com>
-Date: Tue, 13 Sep 2016 08:10:29 +0200
-Subject: [PATCH] inotifywait: fix compile error with GCC 6
-
-Fails to compile with misleading-indentation error
-
-| src/inotifywait.c: In function 'output_event_csv':
-| src/inotifywait.c:126:5: error: this 'if' clause does not guard... [-Werror=misleading-indentation]
-| if (filename != NULL)
-| ^~
-| src/inotifywait.c:129:2: note: ...this statement, but the latter is misleadingly indented as if it is guarded by the 'if'
-| printf("%s,", csv_escape( inotifytools_event_to_str( event->mask ) ) );
-| ^~~~~~
-| cc1: all warnings being treated as errors
-
-Fix indentation to resolve.
-
-Upstream-Status: Submitted [https://github.com/rvoicilas/inotify-tools/pull/66]
-
-Signed-off-by: Andrea Galbusera <gizero@gmail.com>
----
- src/inotifywait.c | 6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/src/inotifywait.c b/src/inotifywait.c
-index c5ce5e3..404a85b 100644
---- a/src/inotifywait.c
-+++ b/src/inotifywait.c
-@@ -122,9 +122,9 @@ void validate_format( char * fmt ) {
-
-
- void output_event_csv( struct inotify_event * event ) {
-- char *filename = csv_escape(inotifytools_filename_from_wd(event->wd));
-- if (filename != NULL)
-- printf("%s,", filename);
-+ char *filename = csv_escape(inotifytools_filename_from_wd(event->wd));
-+ if (filename != NULL)
-+ printf("%s,", filename);
-
- printf("%s,", csv_escape( inotifytools_event_to_str( event->mask ) ) );
- if ( event->len > 0 )
---
-1.9.1
-
diff --git a/meta-openembedded/meta-oe/recipes-support/inotify-tools/inotify-tools_git.bb b/meta-openembedded/meta-oe/recipes-support/inotify-tools/inotify-tools_git.bb
index efc753d..05ca4b4 100644
--- a/meta-openembedded/meta-oe/recipes-support/inotify-tools/inotify-tools_git.bb
+++ b/meta-openembedded/meta-oe/recipes-support/inotify-tools/inotify-tools_git.bb
@@ -5,11 +5,10 @@
LICENSE = "GPL-2.0"
LIC_FILES_CHKSUM = "file://COPYING;md5=ac6c26e52aea428ee7f56dc2c56424c6"
-SRCREV = "1df9af4d6cd0f4af4b1b19254bcf056aed4ae395"
-PV = "3.14+git${SRCPV}"
+SRCREV = "e203934e46784bb34c213078423ba1678e0c4936"
+PV = "3.20.1"
SRC_URI = "git://github.com/rvoicilas/${BPN} \
- file://inotifywait-fix-compile-error-with-GCC-6.patch \
file://inotify-nosys-fix-system-call-number.patch \
"
diff --git a/meta-openembedded/meta-oe/recipes-support/itstool/itstool_2.0.5.bb b/meta-openembedded/meta-oe/recipes-support/itstool/itstool_2.0.5.bb
index b74d5f6..166e95b 100644
--- a/meta-openembedded/meta-oe/recipes-support/itstool/itstool_2.0.5.bb
+++ b/meta-openembedded/meta-oe/recipes-support/itstool/itstool_2.0.5.bb
@@ -5,7 +5,7 @@
inherit autotools python3native
-DEPENDS = "python3-native python3-lxml-native"
+DEPENDS = "python3-lxml-native"
SRC_URI = "http://files.itstool.org/${BPN}/${BPN}-${PV}.tar.bz2"
SRC_URI[md5sum] = "655c6f78fc64faee45adcc45ccc5a57e"
@@ -13,10 +13,10 @@
do_install_append() {
# fix shebang of main script
- sed -i 's:${STAGING_BINDIR_NATIVE}/${PYTHON_PN}-native/${PYTHON_PN}:${bindir}/${PYTHON_PN}:g' ${D}${bindir}/itstool
+ sed -i 's:^#!${WORKDIR}.*${PYTHON_PN} -s:#!${bindir_native}/${PYTHON_PN} -s:' ${D}${bindir}/itstool
}
BBCLASSEXTEND = "native"
-RDEPENDS_${PN} += "python3 python3-lxml"
+RDEPENDS_${PN} += "python3-lxml"
diff --git a/meta-openembedded/meta-oe/recipes-support/liboop/liboop/explicit_linking.patch b/meta-openembedded/meta-oe/recipes-support/liboop/liboop/explicit_linking.patch
deleted file mode 100644
index 05d3bf6..0000000
--- a/meta-openembedded/meta-oe/recipes-support/liboop/liboop/explicit_linking.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- a/Makefile.am
-+++ b/Makefile.am
-@@ -51,7 +51,7 @@ noinst_PROGRAMS = test-oop
-
- test_oop_SOURCES = test-oop.c
- test_oop_CFLAGS = $(GLIB2_CFLAGS) $(GLIB_INCLUDES) $(TCL_INCLUDES) $(WWW_INCLUDES)
--test_oop_LDADD = $(lib_LTLIBRARIES)
-+test_oop_LDADD = $(lib_LTLIBRARIES) $(GLIB2_LIBS) $(ADNS_LIBS) $(TCL_LIBS) $(READLINE_LIBS)
-
- release: dist
- gzip -dc $(PACKAGE)-$(VERSION).tar.gz | bzip2 -9 \
---- a/liboop-glib2.pc.in
-+++ b/liboop-glib2.pc.in
-@@ -7,5 +7,5 @@ Name: liboop-glib2
- Description: Event loop management library (GLIB2 support)
- Version: @VERSION@
- Requires: liboop = @VERSION@ glib-2.0
--Libs: -L${libdir} -loop-glib2
-+Libs: -L${libdir} -loop-glib2 @GLIB2_LIBS@
- Cflags: -D_REENTRANT -I${includedir}
diff --git a/meta-openembedded/meta-oe/recipes-support/liboop/liboop/new-readline-typedef.patch b/meta-openembedded/meta-oe/recipes-support/liboop/liboop/new-readline-typedef.patch
deleted file mode 100644
index 0a02420..0000000
--- a/meta-openembedded/meta-oe/recipes-support/liboop/liboop/new-readline-typedef.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/test-oop.c
-+++ b/test-oop.c
-@@ -180,7 +180,7 @@ static void *stop_readline(oop_source *s
- static void add_readline(oop_source *src) {
- rl_callback_handler_install(
- (char *) "> ", /* readline isn't const-correct */
-- (VFunction *) on_readline);
-+ (rl_vcpfunc_t *) on_readline);
- oop_readline_register(src);
- src->on_signal(src,SIGQUIT,stop_readline,NULL);
- }
diff --git a/meta-openembedded/meta-oe/recipes-support/liboop/liboop/read_bugfixes.patch b/meta-openembedded/meta-oe/recipes-support/liboop/liboop/read_bugfixes.patch
deleted file mode 100644
index 1880a24..0000000
--- a/meta-openembedded/meta-oe/recipes-support/liboop/liboop/read_bugfixes.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-From: Ian Jackson <ijackson@chiark.greenend.org.uk>
-Applied-Upstream: no
-Bug-Debian: http://bugs.debian.org/579604
-Subject: oop-read.h bugfixes
-
-Some years ago I contributed a feature for reading lines and records
-to liboop: oop-read.h and read.c. Since it took a while for that
-feature to make it into distributed versions, for a long time I've
-been using my own copy of the source file. It seems that I fixed a
-couple of bugs in my copy which are still in the Debian package. I
-can't find any record of me having told anyone about them and now I
-find that 1.0-6 still has the bugs.
-
-There are two fixes:
- * Initialise "rd->discard" properly
- * Avoid rd->neednotcheck becoming negative
-
---- a/read.c
-+++ b/read.c
-@@ -114,6 +114,7 @@ oop_read *oop_rd_new(oop_source *oop, oo
- rd->allocbuf= 0;
- rd->used= 0;
- rd->alloc= buf ? bufsz : 0;
-+ rd->discard= 0;
- rd->neednotcheck= 0;
- rd->displacedchar= -1;
- rd->style= *OOP_RD_STYLE_IMMED;
-@@ -235,7 +236,11 @@ static void *on_process(oop_source *oop,
-
- if (rd->discard) {
- rd->used -= rd->discard;
-- rd->neednotcheck -= rd->discard;
-+ if (rd->neednotcheck > rd->discard) {
-+ rd->neednotcheck -= rd->discard;
-+ } else {
-+ rd->neednotcheck= 0;
-+ }
- memmove(buf, buf + rd->discard, rd->used);
- rd->discard= 0;
- }
diff --git a/meta-openembedded/meta-oe/recipes-support/liboop/liboop/tcl_dev.patch b/meta-openembedded/meta-oe/recipes-support/liboop/liboop/tcl_dev.patch
index e738be5..e00cf80 100644
--- a/meta-openembedded/meta-oe/recipes-support/liboop/liboop/tcl_dev.patch
+++ b/meta-openembedded/meta-oe/recipes-support/liboop/liboop/tcl_dev.patch
@@ -1,14 +1,3 @@
---- a/configure
-+++ b/configure
-@@ -19935,7 +19935,7 @@
- fi
-
- if test xno != x$with_tcl; then
-- for version in 8.4 8.3 8.2 8.1 8.0 ; do
-+ for version in "" 8.4 8.3 8.2 8.1 8.0 ; do
- CPPFLAGS="$save_cppflags -I/usr/include/tcl$version"
- as_ac_Lib=`echo "ac_cv_lib_tcl$version''_Tcl_Main" | $as_tr_sh`
- echo "$as_me:$LINENO: checking for Tcl_Main in -ltcl$version" >&5
--- a/configure.ac
+++ b/configure.ac
@@ -71,7 +71,7 @@
diff --git a/meta-openembedded/meta-oe/recipes-support/liboop/liboop_1.0.1.bb b/meta-openembedded/meta-oe/recipes-support/liboop/liboop_1.0.1.bb
new file mode 100644
index 0000000..8ba3f72
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/liboop/liboop_1.0.1.bb
@@ -0,0 +1,20 @@
+DESCRIPTION = "Liboop is a low-level event loop management library for POSIX-based operating systems"
+HOMEPAGE = "http://www.lysator.liu.se/liboop/"
+LICENSE = "GPL-2.0"
+LIC_FILES_CHKSUM = "file://COPYING;md5=8b54f38ccbd44feb80ab90e01af8b700"
+
+SRC_URI = "http://ftp.debian.org/debian/pool/main/libo/liboop/liboop_${PV}.orig.tar.gz \
+ file://tcl_dev.patch \
+"
+
+SRC_URI[md5sum] = "f2b3dff17355fd9a6e2229caca8993f0"
+SRC_URI[sha256sum] = "56af16ad65e7397dadc8268e37ff6f67431db390c60c75e21a33e12b0e0d17e0"
+
+PACKAGECONFIG ?= ""
+PACKAGECONFIG[readline] = "--with-readline,--without-readline,readline"
+PACKAGECONFIG[glib] = "--with-glib,--without-glib,glib-2.0 libpcre"
+PACKAGECONFIG[tcl] = "--with-tcl,--without-tcl,tcl"
+
+EXTRA_OECONF += "--without-adns -without-libwww"
+
+inherit autotools pkgconfig
diff --git a/meta-openembedded/meta-oe/recipes-support/liboop/liboop_1.0.bb b/meta-openembedded/meta-oe/recipes-support/liboop/liboop_1.0.bb
deleted file mode 100644
index 82818c2..0000000
--- a/meta-openembedded/meta-oe/recipes-support/liboop/liboop_1.0.bb
+++ /dev/null
@@ -1,23 +0,0 @@
-DESCRIPTION = "Liboop is a low-level event loop management library for POSIX-based operating systems"
-HOMEPAGE = "http://liboop.org/"
-LICENSE = "GPL-2.0"
-LIC_FILES_CHKSUM = "file://COPYING;md5=8b54f38ccbd44feb80ab90e01af8b700"
-
-SRC_URI = "http://ftp.debian.org/debian/pool/main/libo/liboop/liboop_${PV}.orig.tar.gz \
- file://read_bugfixes.patch \
- file://explicit_linking.patch \
- file://tcl_dev.patch \
- file://new-readline-typedef.patch \
-"
-
-SRC_URI[md5sum] = "36cb971047d3af02369446f5e0b315a2"
-SRC_URI[sha256sum] = "34d83c6e0f09ee15cb2bc3131e219747c3b612bb57cf7d25318ab90da9a2d97c"
-
-PACKAGECONFIG ?= ""
-PACKAGECONFIG[readline] = "--with-readline,--without-readline,readline"
-PACKAGECONFIG[glib] = "--with-glib,--without-glib,glib-2.0 libpcre"
-PACKAGECONFIG[tcl] = "--with-tcl,--without-tcl,tcl"
-
-EXTRA_OECONF += "--without-adns -without-libwww"
-
-inherit autotools pkgconfig
diff --git a/meta-openembedded/meta-oe/recipes-support/multipath-tools/files/0027-RH-warn-on-invalid-regex-instead-of-failing.patch b/meta-openembedded/meta-oe/recipes-support/multipath-tools/files/0027-RH-warn-on-invalid-regex-instead-of-failing.patch
index 57d04d0..95624ad 100644
--- a/meta-openembedded/meta-oe/recipes-support/multipath-tools/files/0027-RH-warn-on-invalid-regex-instead-of-failing.patch
+++ b/meta-openembedded/meta-oe/recipes-support/multipath-tools/files/0027-RH-warn-on-invalid-regex-instead-of-failing.patch
@@ -1,4 +1,4 @@
-From d16de70b76919269561b4e404825f78286ea9a40 Mon Sep 17 00:00:00 2001
+From 56d65ecb1c6d814929f6ff3159ade09dc203cc83 Mon Sep 17 00:00:00 2001
From: Changqing Li <changqing.li@windriver.com>
Date: Mon, 26 Nov 2018 10:31:30 +0800
Subject: [PATCH] From 0000000000000000000000000000000000000000 Mon Sep 17
@@ -18,14 +18,15 @@
update this patch to new version
Signed-off-by: Changqing Li <changqing.li@windriver.com>
+
---
libmultipath/dict.c | 29 ++++++++++++++++++++++-------
libmultipath/parser.c | 13 +++++++++++++
- libmultipath/parser.h | 2 +-
- 3 files changed, 36 insertions(+), 8 deletions(-)
+ libmultipath/parser.h | 1 +
+ 3 files changed, 36 insertions(+), 7 deletions(-)
diff --git a/libmultipath/dict.c b/libmultipath/dict.c
-index a81c051..0689763 100644
+index eaad4f1..fb30577 100644
--- a/libmultipath/dict.c
+++ b/libmultipath/dict.c
@@ -59,6 +59,21 @@ set_str(vector strvec, void *ptr)
@@ -50,7 +51,7 @@
set_yes_no(vector strvec, void *ptr)
{
char * buff;
-@@ -1346,8 +1361,8 @@ ble_ ## option ## _handler (struct config *conf, vector strvec) \
+@@ -1373,8 +1388,8 @@ ble_ ## option ## _handler (struct config *conf, vector strvec) \
\
if (!conf->option) \
return 1; \
@@ -61,7 +62,7 @@
if (!buff) \
return 1; \
\
-@@ -1363,7 +1378,7 @@ ble_ ## option ## _ ## name ## _handler (struct config *conf, vector strvec) \
+@@ -1390,7 +1405,7 @@ ble_ ## option ## _ ## name ## _handler (struct config *conf, vector strvec) \
if (!conf->option) \
return 1; \
\
@@ -70,7 +71,7 @@
if (!buff) \
return 1; \
\
-@@ -1466,16 +1481,16 @@ device_handler(struct config *conf, vector strvec)
+@@ -1493,16 +1508,16 @@ device_handler(struct config *conf, vector strvec)
return 0;
}
@@ -116,18 +117,14 @@
static int kw_level = 0;
diff --git a/libmultipath/parser.h b/libmultipath/parser.h
-index 62906e9..b6899fc 100644
+index 62906e9..b791705 100644
--- a/libmultipath/parser.h
+++ b/libmultipath/parser.h
-@@ -76,7 +76,7 @@ extern int _install_keyword(vector keywords, char *string,
- extern void dump_keywords(vector keydump, int level);
+@@ -77,6 +77,7 @@ extern void dump_keywords(vector keydump, int level);
extern void free_keywords(vector keywords);
extern vector alloc_strvec(char *string);
--extern void *set_value(vector strvec);
+ extern void *set_value(vector strvec);
+extern void *set_regex_value(vector strvec);
extern int process_file(struct config *conf, char *conf_file);
extern struct keyword * find_keyword(vector keywords, vector v, char * name);
int snprint_keyword(char *buff, int len, char *fmt, struct keyword *kw,
---
-2.7.4
-
diff --git a/meta-openembedded/meta-oe/recipes-support/nano/nano_4.0.bb b/meta-openembedded/meta-oe/recipes-support/nano/nano_4.0.bb
deleted file mode 100644
index 3d7921a..0000000
--- a/meta-openembedded/meta-oe/recipes-support/nano/nano_4.0.bb
+++ /dev/null
@@ -1,20 +0,0 @@
-DESCRIPTION = "GNU nano (Nano's ANOther editor, or \
-Not ANOther editor) is an enhanced clone of the \
-Pico text editor."
-HOMEPAGE = "http://www.nano-editor.org/"
-SECTION = "console/utils"
-LICENSE = "GPLv3"
-LIC_FILES_CHKSUM = "file://COPYING;md5=f27defe1e96c2e1ecd4e0c9be8967949"
-
-DEPENDS = "ncurses file"
-RDEPENDS_${PN} = "ncurses-terminfo-base"
-
-PV_MAJOR = "${@d.getVar('PV').split('.')[0]}"
-
-SRC_URI = "https://nano-editor.org/dist/v${PV_MAJOR}/nano-${PV}.tar.xz"
-SRC_URI[md5sum] = "2de3e8a60ecf09649e316e89be2aac65"
-SRC_URI[sha256sum] = "1e2fcfea35784624a7d86785768b772d58bb3995d1aec9176a27a113b1e9bac3"
-
-inherit autotools gettext pkgconfig
-
-PACKAGECONFIG[tiny] = "--enable-tiny,"
diff --git a/meta-openembedded/meta-oe/recipes-support/nano/nano_4.1.bb b/meta-openembedded/meta-oe/recipes-support/nano/nano_4.1.bb
new file mode 100644
index 0000000..1fe36cd
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/nano/nano_4.1.bb
@@ -0,0 +1,20 @@
+DESCRIPTION = "GNU nano (Nano's ANOther editor, or \
+Not ANOther editor) is an enhanced clone of the \
+Pico text editor."
+HOMEPAGE = "http://www.nano-editor.org/"
+SECTION = "console/utils"
+LICENSE = "GPLv3"
+LIC_FILES_CHKSUM = "file://COPYING;md5=f27defe1e96c2e1ecd4e0c9be8967949"
+
+DEPENDS = "ncurses file"
+RDEPENDS_${PN} = "ncurses-terminfo-base"
+
+PV_MAJOR = "${@d.getVar('PV').split('.')[0]}"
+
+SRC_URI = "https://nano-editor.org/dist/v${PV_MAJOR}/nano-${PV}.tar.xz"
+SRC_URI[md5sum] = "235eaf7d27db3c3679b2054361ff6181"
+SRC_URI[sha256sum] = "86bde596a038d6fde619b49d785c0ebf0b3eaa7001a39dbe9316bd5392d221d0"
+
+inherit autotools gettext pkgconfig
+
+PACKAGECONFIG[tiny] = "--enable-tiny,"
diff --git a/meta-openembedded/meta-oe/recipes-support/ne10/ne10_1.2.1.bb b/meta-openembedded/meta-oe/recipes-support/ne10/ne10_1.2.1.bb
index 3afdff7..4e8986d 100644
--- a/meta-openembedded/meta-oe/recipes-support/ne10/ne10_1.2.1.bb
+++ b/meta-openembedded/meta-oe/recipes-support/ne10/ne10_1.2.1.bb
@@ -15,22 +15,15 @@
inherit cmake
-NE10_TARGET_ARCH = ""
-EXTRA_OECMAKE = '-DGNULINUX_PLATFORM=ON -DNE10_BUILD_SHARED=ON -DNE10_LINUX_TARGET_ARCH="${NE10_TARGET_ARCH}"'
-
+# Incompatible with archs other than armv7 and aarch64
+COMPATIBLE_MACHINE = "(^$)"
COMPATIBLE_MACHINE_aarch64 = "(.*)"
COMPATIBLE_MACHINE_armv7a = "(.*)"
+NE10_TARGET_ARCH = ""
+NE10_TARGET_ARCH_aarch64 = "aarch64"
+NE10_TARGET_ARCH_armv7a = "armv7"
-python () {
- if any(t.startswith('armv7') for t in d.getVar('TUNE_FEATURES').split()):
- d.setVar('NE10_TARGET_ARCH', 'armv7')
- bb.debug(2, 'Building Ne10 for armv7')
- elif any(t.startswith('aarch64') for t in d.getVar('TUNE_FEATURES').split()):
- d.setVar('NE10_TARGET_ARCH', 'aarch64')
- bb.debug(2, 'Building Ne10 for aarch64')
- else:
- raise bb.parse.SkipRecipe("Incompatible with archs other than armv7 and aarch64")
-}
+EXTRA_OECMAKE = '-DGNULINUX_PLATFORM=ON -DNE10_BUILD_SHARED=ON -DNE10_LINUX_TARGET_ARCH="${NE10_TARGET_ARCH}"'
do_install() {
install -d ${D}${libdir}
diff --git a/meta-openembedded/meta-oe/recipes-support/ode/ode/install.patch b/meta-openembedded/meta-oe/recipes-support/ode/ode/install.patch
deleted file mode 100644
index 2f6cdb0..0000000
--- a/meta-openembedded/meta-oe/recipes-support/ode/ode/install.patch
+++ /dev/null
@@ -1,23 +0,0 @@
---- ode-0.9.orig/Makefile.am 2007-02-21 15:54:54.000000000 +0100
-+++ ode-0.9/Makefile.am 2010-08-21 16:15:55.000000000 +0200
-@@ -25,13 +25,13 @@
-
- if USE_SONAME
- install-exec-hook:
-- ln -s $(libdir)/@ODE_SONAME@.@ODE_REVISION@.@ODE_AGE@ \
-- $(libdir)/libode.so
-- ln -s $(libdir)/@ODE_SONAME@.@ODE_REVISION@.@ODE_AGE@ \
-- $(libdir)/@ODE_SONAME@
-- ln -s $(libdir)/@ODE_SONAME@.@ODE_REVISION@.@ODE_AGE@ \
-- $(libdir)/@ODE_SONAME@.@ODE_REVISION@
-- /sbin/ldconfig
-+ ln -s @ODE_SONAME@.@ODE_REVISION@.@ODE_AGE@ \
-+ $(DESTDIR)/$(libdir)/libode.so
-+ ln -s @ODE_SONAME@.@ODE_REVISION@.@ODE_AGE@ \
-+ $(DESTDIR)/$(libdir)/@ODE_SONAME@
-+ ln -s @ODE_SONAME@.@ODE_REVISION@.@ODE_AGE@ \
-+ $(DESTDIR)/$(libdir)/@ODE_SONAME@.@ODE_REVISION@
-+ echo /sbin/ldconfig
- else
- install-exec-hook:
- endif
diff --git a/meta-openembedded/meta-oe/recipes-support/openwbem/openwbem/checkserverkey b/meta-openembedded/meta-oe/recipes-support/openwbem/openwbem/checkserverkey
deleted file mode 100644
index bcfa361..0000000
--- a/meta-openembedded/meta-oe/recipes-support/openwbem/openwbem/checkserverkey
+++ /dev/null
@@ -1,20 +0,0 @@
-#!/bin/bash
-
-if [ ! -f "/etc/openwbem/serverkey.pem" ]; then
- if [ -f "/etc/ssl/servercerts/servercert.pem" \
- -a -f "/etc/ssl/servercerts/serverkey.pem" ]; then
- echo "Using common server certificate /etc/ssl/servercerts/servercert.pem"
- ln -s /etc/ssl/servercerts/server{cert,key}.pem /etc/openwbem/
- else
- echo "FAILED: Starting OpenWBEM server"
- echo "There is no ssl server key available for OpenWBEM server to use."
- echo -e "Please generate one with the following script and start the OpenWBEM service again:\n"
- echo "##################################"
- echo "/etc/openwbem/owgencert"
- echo "================================="
-
- echo "NOTE: The script uses /dev/random device for generating some random bits while generating the server key."
- echo " If this takes too long, you can replace the value of \"RANDFILE\" in /etc/openwsman/ssleay.cnf with /dev/urandom. Please understand the implications"
- exit 1
- fi
-fi
diff --git a/meta-openembedded/meta-oe/recipes-support/openwbem/openwbem/loadmof.sh b/meta-openembedded/meta-oe/recipes-support/openwbem/openwbem/loadmof.sh
deleted file mode 100644
index dd87811..0000000
--- a/meta-openembedded/meta-oe/recipes-support/openwbem/openwbem/loadmof.sh
+++ /dev/null
@@ -1,118 +0,0 @@
-#!/bin/sh
-#
-# options:
-# loadmof.sh <MOF_PATH> <NAMESPACE> <FILES>
-#
-# - or -
-#
-# options:
-# loadmof.sh -n <NAMESPACE> <FILES> [...]
-#
-# The former is preserved for compatibility with Pegasus and
-# sblim providers. The latter is preferred. If $1 is "-n",
-# the latter code path is executed. Otherwise the former is
-# executed.
-
-if [ "x$1" != "x-n" -a "x$1" != "x-v" ]; then
-# OLD STYLE
-if [ -f "/etc/init.d/owcimomd" ]; then
- /etc/init.d/owcimomd status 1>&2 > /dev/null
- if [ $? = "0" ]; then
- CIMOM_RUNNING="true"
- else
- CIMOM_RUNNING="false"
- fi
-else
- exit 1
-fi
-if [ "$YAST_IS_RUNNING" = "instsys" ]; then
- CIMOM_RUNNING="false"
-fi
-
-CIMOM=$1
-shift
-case "$CIMOM" in
- pegasus)
- exit 0
- ;;
-esac
-MOF_PATH=$1
-shift
-NS=$1
-shift
-
-REPOSITORY="/var/lib/openwbem"
-#tmp_dir=`mktemp -d -p /tmp openwbem.XXXXXX`
-case "$CIMOM_RUNNING" in
- true|false)
- while [ "$#" -gt 0 ]
- do
- echo "Loading $MOF_PATH/$1"
- #sed "s/cmpi:/cmpi::/g" $MOF_PATH/$1 > $tmp_dir/$1
- /usr/bin/owmofc -c -n $NS -d $REPOSITORY $MOF_PATH/$1 > /dev/null 2>&1
- shift
- done
- ;;
-esac
-#rm -rf $tmp_dir
-# END OLD STYLE
-
-else
-# NEW STYLE
-if [ "x$3" = "x" ]; then
- echo "Usage: $0 -n <NAMESPACE> <FILES> [...]"
- exit 1
-fi
-
-if [ "x$1" = "x-v" ]; then
- VERBOSE=1
- shift
-fi
-
-# get rid of "-n" arg
-shift
-
-NS="$1"
-
-shift
-
-DBDIR=/var/lib/openwbem
-LOGFILE=$DBDIR/loadmof.log
-CIMOM_INIT=/etc/init.d/owcimomd
-if [ "$YAST_IS_RUNNING" != "instsys" ] ; then
- $CIMOM_INIT status > /dev/null 2>&1
- CIMOM_RUNNING=$?
-fi
-if [ "x$CIMOM_RUNNING" = "x0" ]; then
- $CIMOM_INIT stop > /dev/null 2>&1
-fi
-bkpdir=$DBDIR/backup-$$
-mkdir $bkpdir
-cp -a $DBDIR/*.{dat,ndx,lock} $bkpdir/
-rm -f $LOGFILE.9
-for i in 8 7 6 5 4 3 2 1 0; do
- let newI=$i+1
- if [ -f $LOGFILE.$i ]; then
- mv $LOGFILE.$i $LOGFILE.$newI
- fi
-done
-if [ -f $LOGFILE ]; then
- mv $LOGFILE $LOGFILE.0
-fi
-if [ "x$VERBOSE" = "x1" ]; then
- /usr/bin/owmofc -c -n $NS -d $DBDIR -s /usr/share/mof/cim-current "$@" 2>&1 | tee $LOGFILE
-else
- /usr/bin/owmofc -c -n $NS -d $DBDIR -s /usr/share/mof/cim-current "$@" > $LOGFILE 2>&1
-fi
-RVAL=$?
-if [ "x$RVAL" != "x0" ]; then
- echo "MOF import failed! Check $LOGFILE for details."
- mv $bkpdir/* $DBDIR/
-fi
-rm -rf $bkpdir
-if [ "x$CIMOM_RUNNING" = "x0" ]; then
- $CIMOM_INIT start > /dev/null 2>&1
-fi
-exit $RVAL
-fi
-
diff --git a/meta-openembedded/meta-oe/recipes-support/openwbem/openwbem/novell-openwbem-root-acl.mof b/meta-openembedded/meta-oe/recipes-support/openwbem/openwbem/novell-openwbem-root-acl.mof
deleted file mode 100644
index c9970c7..0000000
--- a/meta-openembedded/meta-oe/recipes-support/openwbem/openwbem/novell-openwbem-root-acl.mof
+++ /dev/null
@@ -1,21 +0,0 @@
-#pragma namespace("root/security")
-
-instance of OpenWBEM_NamespaceACL
-{
- nspace = "root";
- capability = "";
-};
-
-instance of OpenWBEM_NamespaceACL
-{
- nspace = "root/cimv2";
- capability = "";
-};
-
-instance of OpenWBEM_UserACL
-{
- nspace = "root/cimv2";
- username = "root";
- capability = "rw";
-};
-
diff --git a/meta-openembedded/meta-oe/recipes-support/openwbem/openwbem/openwbem-etc_pam.d_openwbem b/meta-openembedded/meta-oe/recipes-support/openwbem/openwbem/openwbem-etc_pam.d_openwbem
deleted file mode 100644
index b3785aa..0000000
--- a/meta-openembedded/meta-oe/recipes-support/openwbem/openwbem/openwbem-etc_pam.d_openwbem
+++ /dev/null
@@ -1,7 +0,0 @@
-#%PAM-1.0
-auth required pam_unix2.so nullok
-auth required pam_nologin.so
-account required pam_unix2.so
-password required pam_pwcheck.so nullok
-password required pam_unix2.so nullok use_first_pass use_authtok
-session required pam_unix2.so none
diff --git a/meta-openembedded/meta-oe/recipes-support/openwbem/openwbem/openwbem-owcimomd.init b/meta-openembedded/meta-oe/recipes-support/openwbem/openwbem/openwbem-owcimomd.init
deleted file mode 100644
index 47fa8a7..0000000
--- a/meta-openembedded/meta-oe/recipes-support/openwbem/openwbem/openwbem-owcimomd.init
+++ /dev/null
@@ -1,131 +0,0 @@
-#!/bin/sh
-#
-### BEGIN INIT INFO
-# Provides: owcimomd
-# Required-Start: $network
-# Required-Stop: $network
-# Default-Start: 2 3 4 5
-# Default-Stop: 0 1 6
-# Short-Description: OpenWBEM CIMOM Daemon
-# Description: owcimomd
-# Start/Stop the OpenWBEM CIMOM Daemon
-### END INIT INFO
-#
-#
-# chkconfig: 2345 36 64
-# description: OpenWBEM CIMOM Daemon
-# processname: owcimomd
-
-NAME=owcimomd
-DAEMON=/usr/sbin/$NAME
-OPTIONS=
-PIDFILE=/var/run/$NAME.pid
-
-if [ $EUID != 0 ]; then
- echo "This script must be run as root."
- exit 1;
-fi
-
-if [ "$DESCRIPTIVE" = "" ]; then
- DESCRIPTIVE="OpenWBEM CIMOM Daemon"
-fi
-
-lockfile=${SVIlock:-/var/lock/subsys/$NAME}
-
-[ -x $DAEMON ] || exit 0
-
-# See how we were called.
-. /etc/init.d/functions
-
-start() {
- if [ ! -f "/etc/openwbem/serverkey.pem" ]; then
- if [ -f "/etc/ssl/servercerts/servercert.pem" \
- -a -f "/etc/ssl/servercerts/serverkey.pem" ]; then
- echo "Using common server certificate /etc/ssl/servercerts/servercert.pem"
- ln -s /etc/ssl/servercerts/server{cert,key}.pem /etc/openwbem/
- else
- echo "Generating OpenWBEM server public certificate and private key"
- FQDN=`hostname --fqdn`
- if [ "x${FQDN}" = "x" ]; then
- FQDN=localhost.localdomain
- fi
-cat << EOF | sh /etc/openwbem/owgencert > /dev/null 2>&1
---
-SomeState
-SomeCity
-SomeOrganization
-SomeOrganizationalUnit
-${FQDN}
-root@${FQDN}
-EOF
- fi
- fi
-
- # Start daemons.
- echo -n "Starting the $DESCRIPTIVE"
- daemon $DAEMON $OPTIONS > /dev/null 2>&1
- RETVAL=$?
-
- if [ $RETVAL -eq 0 ]; then
- touch $lockfile
- success
- fi
-
- echo
- return $RETVAL
-}
-
-stop() {
- # Stop daemons.
- echo -n "Shutting down $DESCRIPTIVE"
- killproc $DAEMON
- RETVAL=$?
-
- if [ $RETVAL -eq 0 ]; then
- rm -f $lockfile
- success
- else
- failure
- fi
- echo
- return $RETVAL
-}
-
-restart() {
- stop
- start
-}
-
-case "$1" in
- start)
- start
- ;;
-
- stop)
- stop
- ;;
-
- restart|force-reload)
- restart
- ;;
-
- reload)
- echo -n "Reload service $DESCRIPTIVE"
- killproc -p $PIDFILE -HUP $DAEMON
- RETVAL=$?
- echo
- exit $RETVAL
- ;;
-
- status)
- echo -n "Checking for service $DESCRIPTIVE"
- status $DAEMON
- RETVAL=$?
- exit $RETVAL
- ;;
-
- *)
- echo "Usage: $0 {restart|start|stop|reload|force-reload|status}"
-esac
-
-exit $RETVAL
diff --git a/meta-openembedded/meta-oe/recipes-support/openwbem/openwbem/openwbem-rpmlintrc b/meta-openembedded/meta-oe/recipes-support/openwbem/openwbem/openwbem-rpmlintrc
deleted file mode 100644
index 785e32a..0000000
--- a/meta-openembedded/meta-oe/recipes-support/openwbem/openwbem/openwbem-rpmlintrc
+++ /dev/null
@@ -1,2 +0,0 @@
-addFilter("devel-file-in-non-devel-package .*/lib.*\.so")
-
diff --git a/meta-openembedded/meta-oe/recipes-support/openwbem/openwbem/owcimomd.service b/meta-openembedded/meta-oe/recipes-support/openwbem/openwbem/owcimomd.service
deleted file mode 100644
index c6694b7..0000000
--- a/meta-openembedded/meta-oe/recipes-support/openwbem/openwbem/owcimomd.service
+++ /dev/null
@@ -1,12 +0,0 @@
-[Unit]
-Description=Web Based Enterprise Management (WBEM) Implementation
-After=syslog.target
-
-[Service]
-Type=forking
-ExecStart=/usr/sbin/owcimomd
-ExecStartPre=/etc/openwbem/checkserverkey
-PIDFile=/var/run/owcimomd.pid
-
-[Install]
-WantedBy=multi-user.target
diff --git a/meta-openembedded/meta-oe/recipes-support/openwbem/openwbem/rmmof.sh b/meta-openembedded/meta-oe/recipes-support/openwbem/openwbem/rmmof.sh
deleted file mode 100644
index a495415..0000000
--- a/meta-openembedded/meta-oe/recipes-support/openwbem/openwbem/rmmof.sh
+++ /dev/null
@@ -1,53 +0,0 @@
-#!/bin/sh
-#
-# options:
-# rmmof.sh <MOF_PATH> <NAMESPACE> <FILES>
-#
-# - or -
-#
-# options:
-# loadmof.sh -n <NAMESPACE> <FILES> [...]
-#
-# The former is preserved for compatibility with Pegasus and
-# sblim providers. The latter is preferred. If $1 is "-n",
-# the latter code path is executed. Otherwise the former is
-# executed.
-
-if [ "x$3" = "x" ]; then
- echo "Usage: $0 -n <NAMESPACE> <FILES> [...]"
- exit 1
-fi
-
-# get rid of "-n" arg
-shift
-
-NS="$1"
-
-shift
-
-DBDIR=/var/lib/openwbem
-CIMOM_INIT=/etc/init.d/owcimomd
-if [ "$YAST_IS_RUNNING" != "instsys" ] ; then
- $CIMOM_INIT status
- CIMOM_RUNNING=$?
-fi
-if [ "x$CIMOM_RUNNING" = "x0" ]; then
- $CIMOM_INIT stop
-fi
-bkpdir=/tmp/owrep.bkp-$$
-mkdir $bkpdir
-cp -a $DBDIR $bkpdir/
-echo "Compiling MOF files"
-/usr/bin/owmofc -r -n $NS -d $DBDIR "$@" > /dev/null 2>&1
-RVAL=$?
-if [ "x$RVAL" != "x0" ]; then
- echo "MOF import failed!"
- rm -rf $DBDIR
- mv $bkpdir/openwbem $DBDIR
-fi
-rm -rf $bkpdir
-if [ "x$CIMOM_RUNNING" = "x0" ]; then
- $CIMOM_INIT start
-fi
-exit $RVAL
-
diff --git a/meta-openembedded/meta-oe/recipes-support/rdfind/files/reproducible_build.patch b/meta-openembedded/meta-oe/recipes-support/rdfind/files/reproducible_build.patch
deleted file mode 100644
index 36728a7..0000000
--- a/meta-openembedded/meta-oe/recipes-support/rdfind/files/reproducible_build.patch
+++ /dev/null
@@ -1,46 +0,0 @@
-Description: sort the filelist when it is complete to get reproducible behaviour
-Author: Reiner Herrmann <reiner@reiner-h.de>
-Bug-Debian: https://bugs.debian.org/795790
-
-Upstream-Status: Pending
-
-Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
-
-Index: rdfind-1.3.4/Fileinfo.hh
-===================================================================
---- rdfind-1.3.4.orig/Fileinfo.hh
-+++ rdfind-1.3.4/Fileinfo.hh
-@@ -189,6 +189,10 @@ public:
- static bool compareondepth(const Fileinfo &a, const Fileinfo &b)
- {return (a.depth() < b.depth());}
-
-+ //returns true if a has lower filename than b)
-+ static bool compareonfilename(const Fileinfo &a, const Fileinfo &b)
-+ {return (a.name().compare(b.name()) < 0);}
-+
- //fills with bytes from the file. if lasttype is supplied,
- //it is used to see if the file needs to be read again - useful if
- //file is shorter than the length of the bytes field.
-@@ -235,6 +239,10 @@ public:
- static bool equaldepth(const Fileinfo &a, const Fileinfo &b)
- {return (a.depth()==b.depth());}
-
-+ //returns true if filenames are equal
-+ static bool equalfilename(const Fileinfo &a, const Fileinfo &b)
-+ {return (a.name()==b.name());}
-+
- //returns true if file is a regular file. call readfileinfo first!
- bool isRegularFile() {return m_info.is_file;}
-
-Index: rdfind-1.3.4/rdfind.cc
-===================================================================
---- rdfind-1.3.4.orig/rdfind.cc
-+++ rdfind-1.3.4/rdfind.cc
-@@ -349,6 +349,7 @@ int main(int narg, char *argv[])
- cout<<dryruntext<<"Now have "<<filelist1.size()<<" files in total."<<endl;
-
-
-+ gswd.sortlist(&Fileinfo::compareonfilename,&Fileinfo::equalfilename);
-
- //mark files with a unique number
- gswd.markitems();
diff --git a/meta-openembedded/meta-oe/recipes-support/rdfind/rdfind_1.3.4.bb b/meta-openembedded/meta-oe/recipes-support/rdfind/rdfind_1.3.4.bb
deleted file mode 100644
index 4d984ee..0000000
--- a/meta-openembedded/meta-oe/recipes-support/rdfind/rdfind_1.3.4.bb
+++ /dev/null
@@ -1,17 +0,0 @@
-SUMMARY = "Rdfind is a program that finds duplicate files"
-HOMEPAGE = "https://rdfind.pauldreik.se/"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=9ac2e7cff1ddaf48b6eab6028f23ef88"
-
-DEPENDS = "nettle"
-
-SRC_URI = "https://rdfind.pauldreik.se/${BP}.tar.gz \
- file://reproducible_build.patch \
-"
-
-SRC_URI[md5sum] = "97c0cb35933588413583c61d3b5f9adf"
-SRC_URI[sha256sum] = "a5f0b3f72093d927b93898c993479b35682cccb47f7393fb72bd4803212fcc7d"
-
-inherit autotools
-
-BBCLASSEXTEND = "native"
diff --git a/meta-openembedded/meta-oe/recipes-support/rdfind/rdfind_1.4.1.bb b/meta-openembedded/meta-oe/recipes-support/rdfind/rdfind_1.4.1.bb
new file mode 100644
index 0000000..42f2064
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/rdfind/rdfind_1.4.1.bb
@@ -0,0 +1,16 @@
+SUMMARY = "Rdfind is a program that finds duplicate files"
+HOMEPAGE = "https://rdfind.pauldreik.se/"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=fa22e16ebbe6638b2bd253338fbded9f"
+
+DEPENDS = "nettle autoconf-archive"
+
+SRC_URI = "https://rdfind.pauldreik.se/${BP}.tar.gz \
+"
+
+SRC_URI[md5sum] = "180418c863b861d1df221bc486a07ce7"
+SRC_URI[sha256sum] = "30c613ec26eba48b188d2520cfbe64244f3b1a541e60909ce9ed2efb381f5e8c"
+
+inherit autotools
+
+BBCLASSEXTEND = "native"
diff --git a/meta-openembedded/meta-oe/recipes-support/udisks/udisks2_2.8.1.bb b/meta-openembedded/meta-oe/recipes-support/udisks/udisks2_2.8.1.bb
deleted file mode 100644
index 3f2130e..0000000
--- a/meta-openembedded/meta-oe/recipes-support/udisks/udisks2_2.8.1.bb
+++ /dev/null
@@ -1,50 +0,0 @@
-SUMMARY = "udisks provides dbus interfaces for disks and storage devices"
-LICENSE = "GPLv2+ & LGPLv2+"
-LIC_FILES_CHKSUM = "file://COPYING;md5=dd79f6dbbffdbc8e86b086a8f0c0ef43"
-
-DEPENDS = " \
- acl \
- libatasmart \
- polkit \
- libgudev \
- dbus-glib \
- glib-2.0 \
- libblockdev \
- intltool-native \
- gnome-common-native \
- libxslt-native \
-"
-DEPENDS += "${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)}"
-
-RDEPENDS_${PN} = "acl"
-
-SRC_URI = " \
- git://github.com/storaged-project/udisks.git;branch=master \
- file://non-gnu-libc.patch \
-"
-SRCREV = "05ae471be3c2adf2255b3a01edb00bba06e02afb"
-S = "${WORKDIR}/git"
-
-CVE_PRODUCT = "udisks"
-
-inherit autotools systemd gtk-doc gobject-introspection distro_features_check
-
-REQUIRED_DISTRO_FEATURES = "polkit"
-
-EXTRA_OECONF = "--disable-man --disable-gtk-doc"
-
-FILES_${PN} += " \
- ${datadir}/dbus-1/ \
- ${datadir}/polkit-1 \
- ${datadir}/bash-completion \
- ${libdir}/polkit-1/extensions/*.so \
- ${nonarch_base_libdir}/udev/* \
- ${exec_prefix}${nonarch_base_libdir}/udisks2/* \
- ${systemd_system_unitdir} \
-"
-
-PACKAGES =+ "${PN}-libs"
-FILES_${PN}-libs = "${libdir}/lib*${SOLIBS}"
-
-SYSTEMD_SERVICE_${PN} = "${BPN}.service"
-SYSTEMD_AUTO_ENABLE = "disable"
diff --git a/meta-openembedded/meta-oe/recipes-support/udisks/udisks2_git.bb b/meta-openembedded/meta-oe/recipes-support/udisks/udisks2_git.bb
new file mode 100644
index 0000000..9c9e5e5
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/udisks/udisks2_git.bb
@@ -0,0 +1,55 @@
+SUMMARY = "udisks provides dbus interfaces for disks and storage devices"
+LICENSE = "GPLv2+ & LGPLv2+"
+LIC_FILES_CHKSUM = "file://COPYING;md5=dd79f6dbbffdbc8e86b086a8f0c0ef43"
+
+DEPENDS = " \
+ acl \
+ libatasmart \
+ polkit \
+ libgudev \
+ dbus-glib \
+ glib-2.0 \
+ libblockdev \
+ libxslt-native \
+"
+DEPENDS += "${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)}"
+
+RDEPENDS_${PN} = "acl"
+
+SRC_URI = " \
+ git://github.com/storaged-project/udisks.git;branch=master \
+ file://non-gnu-libc.patch \
+"
+PV = "2.8.2"
+SRCREV = "7a787aa3b340fc7f1ca72d748635d6c5445edc58"
+S = "${WORKDIR}/git"
+
+CVE_PRODUCT = "udisks"
+
+inherit autotools systemd gtk-doc gobject-introspection gettext distro_features_check
+
+REQUIRED_DISTRO_FEATURES = "polkit"
+
+EXTRA_OECONF = "--disable-man --disable-gtk-doc"
+
+do_configure_prepend() {
+ # | configure.ac:656: error: required file 'build-aux/config.rpath' not found
+ mkdir -p ${S}/build-aux
+ touch ${S}/build-aux/config.rpath
+}
+
+FILES_${PN} += " \
+ ${datadir}/dbus-1/ \
+ ${datadir}/polkit-1 \
+ ${datadir}/bash-completion \
+ ${libdir}/polkit-1/extensions/*.so \
+ ${nonarch_base_libdir}/udev/* \
+ ${exec_prefix}${nonarch_base_libdir}/udisks2/* \
+ ${systemd_system_unitdir} \
+"
+
+PACKAGES =+ "${PN}-libs"
+FILES_${PN}-libs = "${libdir}/lib*${SOLIBS}"
+
+SYSTEMD_SERVICE_${PN} = "${BPN}.service"
+SYSTEMD_AUTO_ENABLE = "disable"
diff --git a/meta-openembedded/meta-oe/recipes-support/zbar/zbar_0.10.bb b/meta-openembedded/meta-oe/recipes-support/zbar/zbar_0.10.bb
index 6b6e501..ebd1f7a 100644
--- a/meta-openembedded/meta-oe/recipes-support/zbar/zbar_0.10.bb
+++ b/meta-openembedded/meta-oe/recipes-support/zbar/zbar_0.10.bb
@@ -6,7 +6,7 @@
LIC_FILES_CHKSUM = "file://COPYING;md5=42bafded1b380c6fefbeb6c5cd5448d9"
-SRC_URI = "${SOURCEFORGE_MIRROR}/${PN}/${P}.tar.bz2 \
+SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BP}.tar.bz2 \
file://0001-undefine-__va_arg_pack.patch \
file://0001-make-relies-GNU-extentions.patch \
"
diff --git a/meta-openembedded/meta-oe/recipes-test/catch2/catch2_2.6.1.bb b/meta-openembedded/meta-oe/recipes-test/catch2/catch2_2.6.1.bb
deleted file mode 100644
index 08d6616..0000000
--- a/meta-openembedded/meta-oe/recipes-test/catch2/catch2_2.6.1.bb
+++ /dev/null
@@ -1,25 +0,0 @@
-DESCRIPTION = "A modern, C++-native, header-only, test framework for unit-tests, \
-TDD and BDD - using C++11, C++14, C++17 and later."
-AUTHOR = "Phil Nash, Martin Horenovsky and others"
-HOMEPAGE = "https://github.com/catchorg/Catch2"
-LICENSE = "BSL-1.0"
-LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=e4224ccaecb14d942c71d31bef20d78c"
-
-SRC_URI = "git://github.com/catchorg/Catch2.git \
- file://0001-Fix-Wdefaulted-function-deleted-warning.patch \
- "
-# v2.6.1
-SRCREV = "dbbab8727c342733f75045483048cdcb52421e32"
-
-S = "${WORKDIR}/git"
-
-inherit cmake python3native
-
-do_install_append() {
- rm ${D}${datadir}/Catch2/lldbinit
- rm ${D}${datadir}/Catch2/gdbinit
- rmdir ${D}${datadir}/Catch2/
-}
-# Header-only library
-RDEPENDS_${PN}-dev = ""
-RRECOMMENDS_${PN}-dbg = "${PN}-dev (= ${EXTENDPKGV})"
diff --git a/meta-openembedded/meta-oe/recipes-test/catch2/catch2_2.7.2.bb b/meta-openembedded/meta-oe/recipes-test/catch2/catch2_2.7.2.bb
new file mode 100644
index 0000000..b5c8573
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-test/catch2/catch2_2.7.2.bb
@@ -0,0 +1,24 @@
+DESCRIPTION = "A modern, C++-native, header-only, test framework for unit-tests, \
+TDD and BDD - using C++11, C++14, C++17 and later."
+AUTHOR = "Phil Nash, Martin Horenovsky and others"
+HOMEPAGE = "https://github.com/catchorg/Catch2"
+LICENSE = "BSL-1.0"
+LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=e4224ccaecb14d942c71d31bef20d78c"
+
+SRC_URI = "git://github.com/catchorg/Catch2.git \
+ "
+# v2.7.2
+SRCREV = "7c37501b070c0e9ea9cdedbeac2059f0a6b0a8ab"
+
+S = "${WORKDIR}/git"
+
+inherit cmake python3native
+
+do_install_append() {
+ rm ${D}${datadir}/Catch2/lldbinit
+ rm ${D}${datadir}/Catch2/gdbinit
+ rmdir ${D}${datadir}/Catch2/
+}
+# Header-only library
+RDEPENDS_${PN}-dev = ""
+RRECOMMENDS_${PN}-dbg = "${PN}-dev (= ${EXTENDPKGV})"
diff --git a/meta-openembedded/meta-oe/recipes-test/catch2/files/0001-Fix-Wdefaulted-function-deleted-warning.patch b/meta-openembedded/meta-oe/recipes-test/catch2/files/0001-Fix-Wdefaulted-function-deleted-warning.patch
deleted file mode 100644
index 555c71a..0000000
--- a/meta-openembedded/meta-oe/recipes-test/catch2/files/0001-Fix-Wdefaulted-function-deleted-warning.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From a39e0eaa8318335260967ffd1d16388eb5a1d6d8 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Tue, 12 Feb 2019 12:57:00 -0800
-Subject: [PATCH] Fix -Wdefaulted-function-deleted warning
-
-Clang8 warns
-
-catch_interfaces_reporter.h:84:25: error: explicitly defaulted move assignment operator is implicitly deleted [-Werror,-Wdefaulted-function-deleted]
-| AssertionStats& operator = ( AssertionStats && ) = default;
-| ^
-
-Upstream-Status: Submitted [https://github.com/catchorg/Catch2/pull/1537]
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- include/internal/catch_interfaces_reporter.h | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/include/internal/catch_interfaces_reporter.h b/include/internal/catch_interfaces_reporter.h
-index 9d99c981..e5fbf8bb 100644
---- a/include/internal/catch_interfaces_reporter.h
-+++ b/include/internal/catch_interfaces_reporter.h
-@@ -80,8 +80,8 @@ namespace Catch {
-
- AssertionStats( AssertionStats const& ) = default;
- AssertionStats( AssertionStats && ) = default;
-- AssertionStats& operator = ( AssertionStats const& ) = default;
-- AssertionStats& operator = ( AssertionStats && ) = default;
-+ AssertionStats& operator = ( AssertionStats const& ) = delete;
-+ AssertionStats& operator = ( AssertionStats && ) = delete;
- virtual ~AssertionStats();
-
- AssertionResult assertionResult;
---
-2.20.1
-
diff --git a/meta-openembedded/meta-perl/recipes-perl/libnet/libnet-dns-perl_1.19.bb b/meta-openembedded/meta-perl/recipes-perl/libnet/libnet-dns-perl_1.19.bb
deleted file mode 100644
index b0be604..0000000
--- a/meta-openembedded/meta-perl/recipes-perl/libnet/libnet-dns-perl_1.19.bb
+++ /dev/null
@@ -1,66 +0,0 @@
-DESCRIPTION = "This package contains the DNS.pm module with friends."
-HOMEPAGE = "http://www.net-dns.org/"
-SECTION = "libs"
-LICENSE = "MIT"
-
-LIC_FILES_CHKSUM = "file://README;beginline=252;endline=269;md5=27db37b42cd1a5173a53922d67072bcb"
-
-DEPENDS += "perl"
-
-SRC_URI = "http://search.cpan.org/CPAN/authors/id/N/NL/NLNETLABS/Net-DNS-${PV}.tar.gz"
-
-SRC_URI[md5sum] = "8a40402888487b853f861d21433f341a"
-SRC_URI[sha256sum] = "206278bdd9a538bec3e45b50e80cc5a9d7dc6e70ebf0889ef78254f0f710ccd7"
-
-UPSTREAM_CHECK_REGEX = "Net\-DNS\-(?P<pver>(\d+\.\d+))(?!_\d+).tar"
-
-S = "${WORKDIR}/Net-DNS-${PV}"
-
-EXTRA_CPANFLAGS = "EXPATLIBPATH=${STAGING_LIBDIR} EXPATINCPATH=${STAGING_INCDIR}"
-
-inherit cpan ptest-perl
-
-RDEPENDS_${PN} = " \
- libdigest-hmac-perl \
- perl-module-base \
- perl-module-constant \
- perl-module-digest-md5 \
- perl-module-digest-sha \
- perl-module-file-spec \
- perl-module-integer \
- perl-module-io-file \
- perl-module-io-select \
- perl-module-io-socket \
- perl-module-io-socket-ip \
- perl-module-mime-base64 \
- perl-module-scalar-util \
- perl-module-test-more \
- perl-module-time-local \
-"
-
-RRECOMMENDS_${PN} += " \
- libnet-dns-sec-perl \
-"
-
-RDEPENDS_${PN}-ptest += " \
- perl-module-encode \
- perl-module-encode-byte \
- perl-module-extutils-mm \
- perl-module-extutils-mm-unix \
- perl-module-overload \
-"
-
-python __anonymous () {
- # rather than use "find" to determine libc-*.so,
- # statically export the known paths for glibc and musl
- import os
- if d.getVar('TCLIBC') == "glibc":
- os.environ["LIBC"] = "${STAGING_BASELIBDIR}/libc.so.6"
- elif d.getVar('TCLIBC') == "musl":
- os.environ["LIBC"] = "${STAGING_LIBDIR}/libc.so"
- else:
- raise bb.parse.SkipRecipe("incompatible with %s C library" %
- d.getVar('TCLIBC'))
-}
-
-BBCLASSEXTEND = "native"
diff --git a/meta-openembedded/meta-perl/recipes-perl/libnet/libnet-dns-perl_1.20.bb b/meta-openembedded/meta-perl/recipes-perl/libnet/libnet-dns-perl_1.20.bb
new file mode 100644
index 0000000..c37b40d
--- /dev/null
+++ b/meta-openembedded/meta-perl/recipes-perl/libnet/libnet-dns-perl_1.20.bb
@@ -0,0 +1,66 @@
+DESCRIPTION = "This package contains the DNS.pm module with friends."
+HOMEPAGE = "http://www.net-dns.org/"
+SECTION = "libs"
+LICENSE = "MIT"
+
+LIC_FILES_CHKSUM = "file://README;beginline=252;endline=269;md5=27db37b42cd1a5173a53922d67072bcb"
+
+DEPENDS += "perl"
+
+SRC_URI = "http://search.cpan.org/CPAN/authors/id/N/NL/NLNETLABS/Net-DNS-${PV}.tar.gz"
+
+SRC_URI[md5sum] = "565d3ae163591f3da7e1a20827b73c28"
+SRC_URI[sha256sum] = "7fd9692b687253baa8f2eb639f1dd7ff9c77fddd67167dc59b400bd25e4ce01b"
+
+UPSTREAM_CHECK_REGEX = "Net\-DNS\-(?P<pver>(\d+\.\d+))(?!_\d+).tar"
+
+S = "${WORKDIR}/Net-DNS-${PV}"
+
+EXTRA_CPANFLAGS = "EXPATLIBPATH=${STAGING_LIBDIR} EXPATINCPATH=${STAGING_INCDIR}"
+
+inherit cpan ptest-perl
+
+RDEPENDS_${PN} = " \
+ libdigest-hmac-perl \
+ perl-module-base \
+ perl-module-constant \
+ perl-module-digest-md5 \
+ perl-module-digest-sha \
+ perl-module-file-spec \
+ perl-module-integer \
+ perl-module-io-file \
+ perl-module-io-select \
+ perl-module-io-socket \
+ perl-module-io-socket-ip \
+ perl-module-mime-base64 \
+ perl-module-scalar-util \
+ perl-module-test-more \
+ perl-module-time-local \
+"
+
+RRECOMMENDS_${PN} += " \
+ libnet-dns-sec-perl \
+"
+
+RDEPENDS_${PN}-ptest += " \
+ perl-module-encode \
+ perl-module-encode-byte \
+ perl-module-extutils-mm \
+ perl-module-extutils-mm-unix \
+ perl-module-overload \
+"
+
+python __anonymous () {
+ # rather than use "find" to determine libc-*.so,
+ # statically export the known paths for glibc and musl
+ import os
+ if d.getVar('TCLIBC') == "glibc":
+ os.environ["LIBC"] = "${STAGING_BASELIBDIR}/libc.so.6"
+ elif d.getVar('TCLIBC') == "musl":
+ os.environ["LIBC"] = "${STAGING_LIBDIR}/libc.so"
+ else:
+ raise bb.parse.SkipRecipe("incompatible with %s C library" %
+ d.getVar('TCLIBC'))
+}
+
+BBCLASSEXTEND = "native"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-aiohttp.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-aiohttp.inc
new file mode 100644
index 0000000..81f1809
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-aiohttp.inc
@@ -0,0 +1,18 @@
+SUMMARY = "Async http client/server framework"
+DESCRIPTION = "Asynchronous HTTP client/server framework for asyncio and Python"
+HOMEPAGE = "https://github.com/aio-libs/aiohttp"
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=cf056e8e7a0a5477451af18b7b5aa98c"
+
+SRC_URI[md5sum] = "85fe5c9037256c58d4678148bd91b3f3"
+SRC_URI[sha256sum] = "9c4c83f4fa1938377da32bc2d59379025ceeee8e24b89f72fcbccd8ca22dc9bf"
+
+PYPI_PACKAGE = "aiohttp"
+inherit pypi
+RDEPENDS_${PN} = "\
+ ${PYTHON_PN}-async-timeout \
+ ${PYTHON_PN}-chardet \
+ ${PYTHON_PN}-idna-ssl \
+ ${PYTHON_PN}-multidict \
+ ${PYTHON_PN}-yarl \
+"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-alembic.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-alembic.inc
index 477e89c..9d556e7 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-alembic.inc
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-alembic.inc
@@ -1,9 +1,9 @@
DESCRIPTION = "A database migration tool for SQLAlchemy"
LICENSE = "BSD"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=c5f1361296835ff94bda73db7dd312a6"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=a5befaf254582f10aadd62d83cd20322"
-SRC_URI[md5sum] = "762ab9ba56d1c0b1bfbc7c9f7f849c92"
-SRC_URI[sha256sum] = "52d73b1d750f1414fa90c25a08da47b87de1e4ad883935718a8f36396e19e78e"
+SRC_URI[md5sum] = "9969c707786f41f1b95c09c54f8970e9"
+SRC_URI[sha256sum] = "828dcaa922155a2b7166c4f36ec45268944e4055c86499bd14319b4c8c0094b7"
PYPI_PACKAGE = "alembic"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-alembic_1.0.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-alembic_1.0.10.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python-alembic_1.0.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python-alembic_1.0.10.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-async-timeout.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-async-timeout.inc
new file mode 100644
index 0000000..7e4959e
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-async-timeout.inc
@@ -0,0 +1,15 @@
+SUMMARY = "asyncio-compatible timeout context manager"
+DESCRIPTION = "\
+The context manager is useful in cases when you want to apply \
+timeout logic around block of code or in cases when asyncio.wait_for() \
+is not suitable. Also it's much faster than asyncio.wait_for() because \
+timeout doesn't create a new task."
+HOMEPAGE = "https://github.com/aio-libs/async-timeout"
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=e3fc50a88d0a364313df4b21ef20c29e"
+
+SRC_URI[md5sum] = "305c4fa529f2485c403d0dbe14390175"
+SRC_URI[sha256sum] = "0c3c816a028d47f659d6ff5c745cb2acf1f966da1fe5c19c77a70282b25f4c5f"
+
+PYPI_PACKAGE = "async-timeout"
+inherit pypi
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-attrs.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-attrs.inc
index d0b5697..1f767ba 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-attrs.inc
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-attrs.inc
@@ -3,8 +3,8 @@
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENSE;md5=d4ab25949a73fe7d4fdee93bcbdbf8ff"
-SRC_URI[sha256sum] = "e0d0eb91441a3b53dab4d9b743eafc1ac44476296a2053b6ca3af0b139faf87b"
-SRC_URI[md5sum] = "3f3f3e0750dab74cfa1dc8b0fd7a5f86"
+SRC_URI[sha256sum] = "f0b870f674851ecbfbbbd364d6b5cbdff9dcedbc7f3f5e18a6891057f21fe399"
+SRC_URI[md5sum] = "2be7bce157988928f5ff2bb50a0b510d"
inherit pypi
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-attrs_18.1.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-attrs_19.1.0.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python-attrs_18.1.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python-attrs_19.1.0.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-beautifulsoup4.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-beautifulsoup4.inc
index d60d987..a33d8f4 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-beautifulsoup4.inc
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-beautifulsoup4.inc
@@ -3,8 +3,8 @@
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://COPYING.txt;md5=f2d38d8a40bf73fd4b3d16ca2e5882d1"
-SRC_URI[md5sum] = "c17714d0f91a23b708a592cb3c697728"
-SRC_URI[sha256sum] = "808b6ac932dccb0a4126558f7dfdcf41710dd44a4ef497a0bb59a77f9f078e89"
+SRC_URI[md5sum] = "c71f53fcb2580c376ab7b010a9178983"
+SRC_URI[sha256sum] = "945065979fb8529dd2f37dbb58f00b661bdbcbebf954f93b32fdf5263ef35348"
inherit pypi
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-beautifulsoup4_4.6.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-beautifulsoup4_4.7.1.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python-beautifulsoup4_4.6.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python-beautifulsoup4_4.7.1.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-certifi.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-certifi.inc
index c7955c5..9d99b34 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-certifi.inc
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-certifi.inc
@@ -7,7 +7,7 @@
LICENSE = "ISC"
LIC_FILES_CHKSUM = "file://LICENSE;md5=f77f61d14ee6feac4228d3ebd26cc1f1"
-SRC_URI[md5sum] = "a84571995a209dcd00a1702a74302b88"
-SRC_URI[sha256sum] = "4c1d68a1408dd090d2f3a869aa94c3947cc1d967821d1ed303208c9f41f0f2f4"
+SRC_URI[md5sum] = "76381d19d0a1171fecb2d1002b81424e"
+SRC_URI[sha256sum] = "b26104d6835d1f5e49452a26eb2ff87fe7090b89dfcaee5ea2212697e1e1d7ae"
BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-certifi_2018.8.13.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-certifi_2019.3.9.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python-certifi_2018.8.13.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python-certifi_2019.3.9.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-cffi.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-cffi.inc
index e6071ee..d86306b 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-cffi.inc
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-cffi.inc
@@ -4,8 +4,8 @@
LIC_FILES_CHKSUM = "file://LICENSE;md5=5677e2fdbf7cdda61d6dd2b57df547bf"
DEPENDS += "libffi ${PYTHON_PN}-pycparser"
-SRC_URI[md5sum] = "ac8492f4ad952360737413e82d661908"
-SRC_URI[sha256sum] = "e90f17980e6ab0f3c2f3730e56d1fe9bcba1891eeea58966e89d352492cc74f4"
+SRC_URI[md5sum] = "35ad1f9e1003cac9404c1493eb10d7f5"
+SRC_URI[sha256sum] = "041c81822e9f84b1d9c401182e174996f0bae9991f33725d059b771744290774"
RDEPENDS_${PN}_class-target = " \
${PYTHON_PN}-ctypes \
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-cffi_1.11.5.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-cffi_1.12.3.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python-cffi_1.11.5.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python-cffi_1.12.3.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-cryptography.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-cryptography.inc
index 8a36411..6c43e86 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-cryptography.inc
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-cryptography.inc
@@ -3,6 +3,8 @@
LICENSE = "Apache-2.0 | BSD"
LIC_FILES_CHKSUM = "file://LICENSE;md5=097f805837700cfac572ac274cd38124"
+LDSHARED += "-pthread"
+
DEPENDS += " \
${PYTHON_PN}-cffi \
${PYTHON_PN}-cffi-native \
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-cython.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-cython.inc
index 0939cad..8ccbe0a 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-cython.inc
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-cython.inc
@@ -7,8 +7,8 @@
PYPI_PACKAGE = "Cython"
BBCLASSEXTEND = "native nativesdk"
-SRC_URI[md5sum] = "0cb620e1259818e4ecc1a056e8c3a8be"
-SRC_URI[sha256sum] = "b64575241f64f6ec005a4d4137339fb0ba5e156e826db2fdb5f458060d9979e0"
+SRC_URI[md5sum] = "24f6a7e0e6691fbecf5880f38cdf880e"
+SRC_URI[sha256sum] = "55d081162191b7c11c7bfcb7c68e913827dfd5de6ecdbab1b99dab190586c1e8"
inherit pypi
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-cython_0.28.5.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-cython_0.29.7.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python-cython_0.28.5.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python-cython_0.29.7.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-dateutil.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-dateutil.inc
index 9c5a89d..e230f15 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-dateutil.inc
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-dateutil.inc
@@ -4,8 +4,8 @@
LICENSE = "BSD-3-Clause & Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE;md5=e3155c7bdc71f66e02678411d2abf996"
-SRC_URI[md5sum] = "175b7c1a3cc0cb01151eced07c61c0b8"
-SRC_URI[sha256sum] = "e27001de32f627c22380a688bcc43ce83504a7bc5da472209b4c70f02829f0b8"
+SRC_URI[md5sum] = "354db28843d949f1bc3e49e8458e22df"
+SRC_URI[sha256sum] = "c89805f6f4d64db21ed966fda138f8a5ed7a4fdbc1a8ee329ce1b74e3c74da9e"
PYPI_PACKAGE = "python-dateutil"
inherit pypi
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-dateutil_2.7.3.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-dateutil_2.8.0.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python-dateutil_2.7.3.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python-dateutil_2.8.0.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-decorator.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-decorator.inc
index 44edb8a..96cf8b4 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-decorator.inc
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-decorator.inc
@@ -7,10 +7,10 @@
decorator, just because you can."
LICENSE = "BSD"
-LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=893f896413826096ce5270c700a498fd"
+LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=be2fd2007972bf96c08af3293d728b22"
-SRC_URI[md5sum] = "249e7299b9b4bced0c382343f84eb1c0"
-SRC_URI[sha256sum] = "c39efa13fbdeb4506c476c9b3babf6a718da943dab7811c206005a4a956c080c"
+SRC_URI[md5sum] = "a565a98581c0d110bc247323e89df9b1"
+SRC_URI[sha256sum] = "86156361c50488b84a3f148056ea716ca587df2f0de1d34750d35c21312725de"
inherit pypi
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-decorator_4.3.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-decorator_4.4.0.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python-decorator_4.3.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python-decorator_4.4.0.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-editor.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-editor.inc
index 30650bd..734ce2b 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-editor.inc
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-editor.inc
@@ -2,8 +2,8 @@
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE;md5=d2794c0df5b907fdace235a619d80314"
-SRC_URI[md5sum] = "0aca5f2ef176ce68e98a5b7e31372835"
-SRC_URI[sha256sum] = "a3c066acee22a1c94f63938341d4fb374e3fdd69366ed6603d7b24bed1efc565"
+SRC_URI[md5sum] = "0e52648a4a6e7c89e3be44e9456530b4"
+SRC_URI[sha256sum] = "51fda6bcc5ddbbb7063b2af7509e43bd84bfc32a4ff71349ec7847713882327b"
PYPI_PACKAGE = "python-editor"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-editor_1.0.3.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-editor_1.0.4.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python-editor_1.0.3.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python-editor_1.0.4.bb
diff --git a/meta-openembedded/meta-demo/recipes-devtools/python/python-engineio.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-engineio.inc
similarity index 100%
rename from meta-openembedded/meta-demo/recipes-devtools/python/python-engineio.inc
rename to meta-openembedded/meta-python/recipes-devtools/python/python-engineio.inc
diff --git a/meta-openembedded/meta-demo/recipes-devtools/python/python-engineio_3.5.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-engineio_3.5.0.bb
similarity index 100%
rename from meta-openembedded/meta-demo/recipes-devtools/python/python-engineio_3.5.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python-engineio_3.5.0.bb
diff --git a/meta-openembedded/meta-demo/recipes-devtools/python/python-flask-socketio.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-flask-socketio.inc
similarity index 100%
rename from meta-openembedded/meta-demo/recipes-devtools/python/python-flask-socketio.inc
rename to meta-openembedded/meta-python/recipes-devtools/python/python-flask-socketio.inc
diff --git a/meta-openembedded/meta-demo/recipes-devtools/python/python-flask-socketio_3.3.2.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-flask-socketio_3.3.2.bb
similarity index 100%
rename from meta-openembedded/meta-demo/recipes-devtools/python/python-flask-socketio_3.3.2.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python-flask-socketio_3.3.2.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-hyperlink.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-hyperlink.inc
index 78e3ee8..2539854 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-hyperlink.inc
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-hyperlink.inc
@@ -3,8 +3,8 @@
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENSE;md5=3893d4ed05dcc823f8ed685a9ea19bcb"
-SRC_URI[sha256sum] = "f01b4ff744f14bc5d0a22a6b9f1525ab7d6312cb0ff967f59414bbac52f0a306"
-SRC_URI[md5sum] = "f41a96779b324d824864696a94b24823"
+SRC_URI[sha256sum] = "4288e34705da077fada1111a24a0aa08bb1e76699c9ce49876af722441845654"
+SRC_URI[md5sum] = "4772fb4d87c26a1ab22a6161424e3cba"
inherit pypi
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-hyperlink_18.0.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-hyperlink_19.0.0.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python-hyperlink_18.0.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python-hyperlink_19.0.0.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-idna-ssl.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-idna-ssl.inc
new file mode 100644
index 0000000..e74bbd7
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-idna-ssl.inc
@@ -0,0 +1,10 @@
+SUMMARY = "Patch ssl.match_hostname for Unicode(idna) domains support"
+HOMEPAGE = "https://github.com/aio-libs/idna-ssl"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=a61b9c5aec8796b64a6bf15d42605073"
+
+SRC_URI[md5sum] = "dd44ec53bac36e68446766fd8d3835bd"
+SRC_URI[sha256sum] = "a933e3bb13da54383f9e8f35dc4f9cb9eb9b3b78c6b36f311254d6d0d92c6c7c"
+
+PYPI_PACKAGE = "idna-ssl"
+inherit pypi
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-jinja2.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-jinja2.inc
index 5342eb5..aee7bd3 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-jinja2.inc
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-jinja2.inc
@@ -4,8 +4,8 @@
PYPI_PACKAGE = "Jinja2"
-SRC_URI[md5sum] = "61ef1117f945486472850819b8d1eb3d"
-SRC_URI[sha256sum] = "f84be1bb0040caca4cea721fcbbbbd61f9be9464ca236387158b0feea01914a4"
+SRC_URI[md5sum] = "0ae535be40fd215a8114a090c8b68e5a"
+SRC_URI[sha256sum] = "065c4f02ebe7f7cf559e49ee5a95fb800a9e4528727aec6f24402a5374c65013"
RDEPENDS_${PN} += "${PYTHON_PN}-io ${PYTHON_PN}-pickle ${PYTHON_PN}-crypt \
${PYTHON_PN}-math ${PYTHON_PN}-netclient \
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-jinja2_2.10.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-jinja2_2.10.1.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python-jinja2_2.10.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python-jinja2_2.10.1.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-lxml.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-lxml.inc
index 14897c0..63532c7 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-lxml.inc
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-lxml.inc
@@ -18,8 +18,8 @@
DEPENDS += "libxml2 libxslt"
-SRC_URI[md5sum] = "d2b2eb305bfa9ed15aebe61affb3ffa4"
-SRC_URI[sha256sum] = "da5e7e941d6e71c9c9a717c93725cda0708c2474f532e3680ac5e39ec57d224d"
+SRC_URI[md5sum] = "d35e90d9de17e1370fbb7e6059bd95ed"
+SRC_URI[sha256sum] = "4a03dd682f8e35a10234904e0b9508d705ff98cf962c5851ed052e9340df3d90"
DISTUTILS_BUILD_ARGS += " \
--with-xslt-config='pkg-config libxslt' \
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-lxml_4.3.1.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-lxml_4.3.3.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python-lxml_4.3.1.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python-lxml_4.3.3.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-mako.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-mako.inc
index a9fa556..724d0ce 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-mako.inc
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-mako.inc
@@ -8,8 +8,8 @@
inherit pypi
-SRC_URI[md5sum] = "5836cc997b1b773ef389bf6629c30e65"
-SRC_URI[sha256sum] = "4e02fde57bd4abb5ec400181e4c314f56ac3e49ba4fb8b0d50bba18cb27d25ae"
+SRC_URI[md5sum] = "d739720f3f0d6a1cb6a96ea7a4760c3e"
+SRC_URI[sha256sum] = "0728c404877cd4ca72c409c0ea372dc5f3b53fa1ad2bb434e1d216c0444ff1fd"
RDEPENDS_${PN} = " \
${PYTHON_PN}-html \
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-mako_1.0.7.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-mako_1.0.9.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python-mako_1.0.7.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python-mako_1.0.9.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-meld3.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-meld3.inc
new file mode 100644
index 0000000..d4e274e
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-meld3.inc
@@ -0,0 +1,15 @@
+SUMMARY = "meld3 templating system used by Supervisor"
+DESCRIPTION = "\
+meld3 is an HTML/XML templating system for Python which keeps \
+template markup and dynamic rendering logic separate from one \
+another. See http://www.entrian.com/PyMeld for a treatise on the \
+benefits of this pattern."
+HOMEPAGE = "https://github.com/supervisor/meld3"
+LICENSE = "BSD"
+LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=9e7581cef5645475fcefebdc15ed7abf"
+
+SRC_URI[md5sum] = "3ccc78cd79cffd63a751ad7684c02c91"
+SRC_URI[sha256sum] = "f7b754a0fde7a4429b2ebe49409db240b5699385a572501bb0d5627d299f9558"
+
+PYPI_PACKAGE = "meld3"
+inherit pypi
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-mock_2.0.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-mock_2.0.0.bb
deleted file mode 100644
index 210502f..0000000
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-mock_2.0.0.bb
+++ /dev/null
@@ -1,22 +0,0 @@
-SUMMARY = "A Python Mocking and Patching Library for Testing"
-LICENSE = "BSD-2-Clause"
-LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=de9dfbf780446b18aab11f00baaf5b7e"
-
-SRC_URI[md5sum] = "0febfafd14330c9dcaa40de2d82d40ad"
-SRC_URI[sha256sum] = "b158b6df76edd239b8208d481dc46b6afd45a846b7812ff0ce58971cf5bc8bba"
-
-inherit pypi setuptools
-
-DEPENDS += " \
- python-pbr-native"
-
-RDEPENDS_${PN} += " \
- python-prettytable \
- python-cmd2 \
- python-pyparsing \
- python-mccabe \
- python-pep8 \
- python-pyflakes \
- python-pbr \
- python-funcsigs \
-"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-mock_3.0.5.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-mock_3.0.5.bb
new file mode 100644
index 0000000..db71066
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-mock_3.0.5.bb
@@ -0,0 +1,22 @@
+SUMMARY = "A Python Mocking and Patching Library for Testing"
+LICENSE = "BSD-2-Clause"
+LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=de9dfbf780446b18aab11f00baaf5b7e"
+
+SRC_URI[md5sum] = "d834a46d9a129be3e76fdcc99751e82c"
+SRC_URI[sha256sum] = "83657d894c90d5681d62155c82bda9c1187827525880eda8ff5df4ec813437c3"
+
+inherit pypi setuptools
+
+DEPENDS += " \
+ python-pbr-native"
+
+RDEPENDS_${PN} += " \
+ python-prettytable \
+ python-cmd2 \
+ python-pyparsing \
+ python-mccabe \
+ python-pep8 \
+ python-pyflakes \
+ python-pbr \
+ python-funcsigs \
+"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-msgpack.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-msgpack.inc
index 9147c06..3a97042 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-msgpack.inc
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-msgpack.inc
@@ -5,8 +5,8 @@
PYPI_PACKAGE = "msgpack"
inherit pypi
-SRC_URI[md5sum] = "be3043cc2c1e3b5ebf08463ffa71cf17"
-SRC_URI[sha256sum] = "64abc6bf3a2ac301702f5760f4e6e227d0fd4d84d9014ef9a40faa9d43365259"
+SRC_URI[md5sum] = "1b96537be6f5186fed0d131aaa59ef26"
+SRC_URI[sha256sum] = "4008c72f5ef2b7936447dcb83db41d97e9791c83221be13d5e19db0796df1972"
RDEPENDS_${PN}_class-target += "\
${PYTHON_PN}-io \
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-msgpack_0.6.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-msgpack_0.6.1.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python-msgpack_0.6.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python-msgpack_0.6.1.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-obd.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-obd.inc
index f2caf64..5621dba 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-obd.inc
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-obd.inc
@@ -7,3 +7,5 @@
SRC_URI[sha256sum] = "4b1bac95df2faac571ebf444778e4d736d050d8ed7049023c0fc929a520eba6d"
inherit pypi
+
+RDEPENDS_${PN} = "${PYTHON_PN}-pyserial ${PYTHON_PN}-pint"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-paste_3.0.6.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-paste_3.0.6.bb
deleted file mode 100644
index 4d5c323..0000000
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-paste_3.0.6.bb
+++ /dev/null
@@ -1,17 +0,0 @@
-SUMMARY = "Tools for using a Web Server Gateway Interface stack"
-HOMEPAGE = "http://pythonpaste.org/"
-LICENSE = "MIT"
-RDEPENDS_${PN} = "python-six"
-
-LIC_FILES_CHKSUM = "file://docs/license.txt;md5=1798f29d55080c60365e6283cb49779c"
-
-SRC_URI[md5sum] = "4e93762f24fc728ecb4ddcff2693df39"
-SRC_URI[sha256sum] = "06aacf7a40685be0a0db8b26516e7d559d7fe5ccf7a47c5cd34f15ab558a8b92"
-
-PYPI_PACKAGE = "Paste"
-inherit pypi setuptools
-
-FILES_${PN} += "/usr/lib/*"
-
-DEPENDS += "${PYTHON_PN}-pytest-runner-native"
-
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-paste_3.0.8.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-paste_3.0.8.bb
new file mode 100644
index 0000000..c8c932c
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-paste_3.0.8.bb
@@ -0,0 +1,17 @@
+SUMMARY = "Tools for using a Web Server Gateway Interface stack"
+HOMEPAGE = "http://pythonpaste.org/"
+LICENSE = "MIT"
+RDEPENDS_${PN} = "python-six"
+
+LIC_FILES_CHKSUM = "file://docs/license.txt;md5=1798f29d55080c60365e6283cb49779c"
+
+SRC_URI[md5sum] = "0119f4e82b930781e3bcb59c77f7a353"
+SRC_URI[sha256sum] = "c4f13993e6ab4a38602cef298d876552083e8215685bb45abda7113f0dd48117"
+
+PYPI_PACKAGE = "Paste"
+inherit pypi setuptools
+
+FILES_${PN} += "/usr/lib/*"
+
+DEPENDS += "${PYTHON_PN}-pytest-runner-native"
+
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-pbr_4.2.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-pbr_4.2.0.bb
deleted file mode 100644
index 3248772..0000000
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-pbr_4.2.0.bb
+++ /dev/null
@@ -1,7 +0,0 @@
-inherit setuptools
-# The inc file is in oe-core
-require recipes-devtools/python/python-pbr.inc
-
-SRC_URI[md5sum] = "6619780896ca81c7cd19c6e2f439b6c9"
-SRC_URI[sha256sum] = "1b8be50d938c9bb75d0eaf7eda111eec1bf6dc88a62a6412e33bf077457e0f45"
-
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-pbr_5.2.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-pbr_5.2.0.bb
new file mode 100644
index 0000000..a423887
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-pbr_5.2.0.bb
@@ -0,0 +1,13 @@
+inherit setuptools
+# The inc file is in oe-core
+require recipes-devtools/python/python-pbr.inc
+
+SRC_URI[md5sum] = "2bca008fd08d035a2f78c606d876a6db"
+SRC_URI[sha256sum] = "d950c64aeea5456bbd147468382a5bb77fe692c13c9f00f0219814ce5b642755"
+
+do_install_append() {
+ if [ -f ${D}${bindir}/pbr ]; then
+ mv ${D}${bindir}/pbr ${D}${bindir}/pbr-2
+ fi
+}
+
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-pip_18.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-pip_18.0.bb
deleted file mode 100644
index 6b943b0..0000000
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-pip_18.0.bb
+++ /dev/null
@@ -1,14 +0,0 @@
-SUMMARY = "PIP is a tool for installing and managing Python packages"
-HOMEPAGE = "https://pip.pypa.io/"
-LICENSE = "MIT & LGPL-2.1"
-LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=593c6cd9d639307226978cbcae61ad4b"
-
-SRC_URI[md5sum] = "52f75ceb21e96c258f289859a2996b60"
-SRC_URI[sha256sum] = "a0e11645ee37c90b40c46d607070c4fd583e2cd46231b1c06e389c5e814eed76"
-
-inherit pypi setuptools
-
-# Since PIP is like CPAN for PERL we need to drag in all python modules to ensure everything works
-RDEPENDS_${PN}_class-target = "python-modules python-distribute python-misc"
-
-BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-pip_19.1.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-pip_19.1.bb
new file mode 100644
index 0000000..f451a87
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-pip_19.1.bb
@@ -0,0 +1,14 @@
+SUMMARY = "PIP is a tool for installing and managing Python packages"
+HOMEPAGE = "https://pip.pypa.io/"
+LICENSE = "MIT & LGPL-2.1"
+LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=8ba06d529c955048e5ddd7c45459eb2e"
+
+SRC_URI[md5sum] = "22e3726252b492ce24312c2b43d0127f"
+SRC_URI[sha256sum] = "d9137cb543d8a4d73140a3282f6d777b2e786bb6abb8add3ac5b6539c82cd624"
+
+inherit pypi setuptools
+
+# Since PIP is like CPAN for PERL we need to drag in all python modules to ensure everything works
+RDEPENDS_${PN}_class-target = "python-modules python-distribute python-misc"
+
+BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-psutil.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-psutil.inc
index 67ae118..acf4ddd 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-psutil.inc
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-psutil.inc
@@ -2,8 +2,8 @@
LICENSE = "BSD"
LIC_FILES_CHKSUM = "file://LICENSE;md5=0f02e99f7f3c9a7fe8ecfc5d44c2be62"
-SRC_URI[md5sum] = "200e073cdd56cc7a9ba9a06088569200"
-SRC_URI[sha256sum] = "686e5a35fe4c0acc25f3466c32e716f2d498aaae7b7edc03e2305b682226bcf6"
+SRC_URI[md5sum] = "571962acd249bcfbae317884af47c402"
+SRC_URI[sha256sum] = "828e1c3ca6756c54ac00f1427fdac8b12e21b8a068c3bb9b631a1734cada25ed"
PACKAGES =+ "${PN}-tests"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-psutil_5.4.6.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-psutil_5.6.2.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python-psutil_5.4.6.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python-psutil_5.6.2.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-py.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-py.inc
index 8144523..b6e0409 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-py.inc
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-py.inc
@@ -3,8 +3,8 @@
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENSE;md5=a6bb0320b04a0a503f12f69fea479de9"
-SRC_URI[md5sum] = "5ccd0cd5373c55171cf9fd61b9f19a1b"
-SRC_URI[sha256sum] = "06a30435d058473046be836d3fc4f27167fd84c45b99704f2fb5509ef61f9af1"
+SRC_URI[md5sum] = "d9e30436ce7e79f30847f9b30b62e149"
+SRC_URI[sha256sum] = "dc639b046a6e2cff5bbe40194ad65936d6ba360b52b3c3fe1d08a82dd50b5e53"
DEPENDS += "${PYTHON_PN}-setuptools-scm-native"
BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-py_1.6.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-py_1.8.0.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python-py_1.6.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python-py_1.8.0.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-pyasn1.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-pyasn1.inc
index ab34d25..3827fea 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-pyasn1.inc
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-pyasn1.inc
@@ -1,10 +1,10 @@
SUMMARY = "Python library implementing ASN.1 types."
HOMEPAGE = "http://pyasn1.sourceforge.net/"
LICENSE = "BSD-2-Clause"
-LIC_FILES_CHKSUM = "file://LICENSE.rst;md5=815ac3f9ca693006349094b358ab3155"
+LIC_FILES_CHKSUM = "file://LICENSE.rst;md5=a14482d15c2249de3b6f0e8a47e021fd"
-SRC_URI[md5sum] = "0d182b71e1f72fe147d7957bc90be7f2"
-SRC_URI[sha256sum] = "f58f2a3d12fd754aa123e9fa74fb7345333000a035f3921dbdaa08597aa53137"
+SRC_URI[md5sum] = "f3c0cfbf882a20811be5ad5a41f74b82"
+SRC_URI[sha256sum] = "da2420fe13a9452d8ae97a0e478adde1dee153b11ba832a95b223a2ba01c10f7"
RDEPENDS_${PN}_class-target += " \
${PYTHON_PN}-codecs \
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-pyasn1_0.4.4.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-pyasn1_0.4.5.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python-pyasn1_0.4.4.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python-pyasn1_0.4.5.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-pycodestyle_2.4.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-pycodestyle_2.4.0.bb
index 7c736e7..ec6c12f 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-pycodestyle_2.4.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-pycodestyle_2.4.0.bb
@@ -2,3 +2,9 @@
require python-pycodestyle.inc
RDEPENDS_${PN} += "${PYTHON_PN}-lang"
+
+do_install_append () {
+ if [ -f ${D}${bindir}/pycodestyle ]; then
+ mv ${D}${bindir}/pycodestyle ${D}${bindir}/pycodestyle-2
+ fi
+}
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-pymongo.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-pymongo.inc
index b5277f1..88786ec 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-pymongo.inc
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-pymongo.inc
@@ -8,8 +8,8 @@
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE;md5=86d3f3a95c324c9479bd8986968f4327"
-SRC_URI[md5sum] = "7449c81a6c32c3c8cb9bebebc848fded"
-SRC_URI[sha256sum] = "f14fb6c4058772a0d74d82874d3b89d7264d89b4ed7fa0413ea0ef8112b268b9"
+SRC_URI[md5sum] = "3e8035f85cfb2be95207724c59bddfaa"
+SRC_URI[sha256sum] = "9d50c99c6388863cbfdc5db9bad62e3a7c2e5fc151554a07c7f3c2530334a34f"
PACKAGES =+ "${PYTHON_PN}-bson"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-pymongo_3.7.1.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-pymongo_3.8.0.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python-pymongo_3.7.1.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python-pymongo_3.8.0.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-pyopenssl.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-pyopenssl.inc
index 516e795..00c103f 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-pyopenssl.inc
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-pyopenssl.inc
@@ -5,8 +5,8 @@
DEPENDS += "openssl ${PYTHON_PN}-cryptography"
-SRC_URI[md5sum] = "c92e9c85b520b7e153fef0f7f3c5dda7"
-SRC_URI[sha256sum] = "6488f1423b00f73b7ad5167885312bb0ce410d3312eb212393795b53c8caa580"
+SRC_URI[md5sum] = "b9876625dc1d5a5a662d748689191537"
+SRC_URI[sha256sum] = "aeca66338f6de19d1aa46ed634c3b9ae519a64b458f8468aec688e7e3c20f200"
PYPI_PACKAGE = "pyOpenSSL"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-pyopenssl_18.0.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-pyopenssl_19.0.0.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python-pyopenssl_18.0.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python-pyopenssl_19.0.0.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-pyperclip.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-pyperclip.inc
index 4ee47ee..85a4312 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-pyperclip.inc
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-pyperclip.inc
@@ -1,9 +1,9 @@
DESCRIPTION = "A cross-platform clipboard module for Python. (only handles plain text for now)"
LICENSE = "BSD"
-LIC_FILES_CHKSUM = "file://PKG-INFO;md5=4a3129a2c1b8bdc0e2895a1ec0e2dae2"
+LIC_FILES_CHKSUM = "file://PKG-INFO;md5=a428356ada7737b416ec4b63dc65d581"
-SRC_URI[md5sum] = "3680607974f99d6e4411b102358b1884"
-SRC_URI[sha256sum] = "43496f0a1f363a5ecfc4cda5eba6a2a3d5056fe6c7ffb9a99fbb1c5a3c7dea05"
+SRC_URI[md5sum] = "6bbb8598579cc3ee50554b4c59d0cfae"
+SRC_URI[sha256sum] = "979325468ccf682104d5dcaf753f869868100631301d3e72f47babdea5700d1c"
inherit pypi
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-pyperclip_1.6.2.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-pyperclip_1.7.0.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python-pyperclip_1.6.2.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python-pyperclip_1.7.0.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-pytz.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-pytz.inc
index aedffe1..928dbc0 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-pytz.inc
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-pytz.inc
@@ -5,8 +5,8 @@
inherit pypi
-SRC_URI[md5sum] = "45409cbfa3927bdd2f3ee914dd5b1060"
-SRC_URI[sha256sum] = "ffb9ef1de172603304d9d2819af6f5ece76f2e85ec10692a524dd876e72bf277"
+SRC_URI[md5sum] = "8b2860a161bfb0a6165798b1a2d8c40c"
+SRC_URI[sha256sum] = "d747dd3d23d77ef44c6a3526e274af6efeb0a6f1afd5a69ba4d5be4098c8e141"
RDEPENDS_${PN}_class-target += "\
${PYTHON_PN}-datetime \
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-pytz_2018.5.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-pytz_2019.1.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python-pytz_2018.5.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python-pytz_2019.1.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-raven.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-raven.inc
new file mode 100644
index 0000000..1c65e11
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-raven.inc
@@ -0,0 +1,13 @@
+SUMMARY = "Raven is the legacy Python client for Sentry (getsentry.com)"
+DESCRIPTION = "\
+Raven is the official legacy Python client for Sentry, officially \
+supports Python 2.6–2.7 & 3.3–3.7, and runs on PyPy and Google App Engine."
+HOMEPAGE = "https://github.com/getsentry/raven-python"
+LICENSE = "BSD-3-Clause"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=b9a4414e08f0571d55184531cefc131b"
+
+SRC_URI[md5sum] = "3676f31dadfa61526444dd0245c78a38"
+SRC_URI[sha256sum] = "3fa6de6efa2493a7c827472e984ce9b020797d0da16f1db67197bcc23c8fae54"
+
+PYPI_PACKAGE = "raven"
+inherit pypi
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-requests.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-requests.inc
index e6337cb..53504d0 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-requests.inc
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-requests.inc
@@ -23,4 +23,6 @@
${PYTHON_PN}-idna \
"
+CVE_PRODUCT = "requests"
+
BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-rfc3987.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-rfc3987.inc
index 4615904..9cfa07d 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-rfc3987.inc
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-rfc3987.inc
@@ -2,7 +2,7 @@
LICENSE = "GPLv3+"
LIC_FILES_CHKSUM = "file://PKG-INFO;beginline=8;endline=9;md5=2b723edf67b2f3088bc5e339b1ceda2d"
-SRC_URI[md5sum] = "aa108c7590902fe609c036864ecb7f84"
-SRC_URI[sha256sum] = "91a7826b0a26c246a5a91bef09c2c0809c713a689be689b9571e78a13f6557a4"
+SRC_URI[md5sum] = "b6c4028acdc788a9ba697e1c1d6b896c"
+SRC_URI[sha256sum] = "d3c4d257a560d544e9826b38bc81db676890c79ab9d7ac92b39c7a253d5ca733"
BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-rfc3987_1.3.7.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-rfc3987_1.3.8.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python-rfc3987_1.3.7.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python-rfc3987_1.3.8.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-sentry-sdk.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-sentry-sdk.inc
new file mode 100644
index 0000000..0c123ce
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-sentry-sdk.inc
@@ -0,0 +1,12 @@
+SUMMARY = "The new Python SDK for Sentry.io"
+DESCRIPTION = "This is the next line of the Python SDK \
+for Sentry, intended to replace the raven package on PyPI."
+HOMEPAGE = "https://github.com/getsentry/sentry-python"
+LICENSE = "BSD-2-Clause"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=0c79f8d3c91fc847350efd28bfe0a341"
+
+SRC_URI[md5sum] = "fef016d075137c4fb8724559cad28b86"
+SRC_URI[sha256sum] = "5818289868755cfea74e61e532b4b0d11d523901041338d473277db91d4d8173"
+
+PYPI_PACKAGE = "sentry-sdk"
+inherit pypi
diff --git a/meta-openembedded/meta-demo/recipes-devtools/python/python-socketio.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-socketio.inc
similarity index 100%
rename from meta-openembedded/meta-demo/recipes-devtools/python/python-socketio.inc
rename to meta-openembedded/meta-python/recipes-devtools/python/python-socketio.inc
diff --git a/meta-openembedded/meta-demo/recipes-devtools/python/python-socketio_4.0.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-socketio_4.0.0.bb
similarity index 100%
rename from meta-openembedded/meta-demo/recipes-devtools/python/python-socketio_4.0.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python-socketio_4.0.0.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-stevedore.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-stevedore.inc
index 14ebc0e..0aa0ef2 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-stevedore.inc
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-stevedore.inc
@@ -3,8 +3,8 @@
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57"
-SRC_URI[md5sum] = "525186cba577852e0408c92c3f8fac65"
-SRC_URI[sha256sum] = "1e153545aca7a6a49d8337acca4f41c212fbfa60bf864ecd056df0cafb9627e8"
+SRC_URI[md5sum] = "02c747c39f4634465aa2590ceefddf59"
+SRC_URI[sha256sum] = "7be098ff53d87f23d798a7ce7ae5c31f094f3deb92ba18059b1aeb1ca9fec0a0"
inherit pypi
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-stevedore_1.29.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-stevedore_1.30.1.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python-stevedore_1.29.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python-stevedore_1.30.1.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-supervisor.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-supervisor.inc
new file mode 100644
index 0000000..beab497
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-supervisor.inc
@@ -0,0 +1,30 @@
+SUMMARY = "Supervisor: A Process Control System"
+DESCRIPTION = "\
+Supervisor is a client/server system that allows its users \
+to monitorand control a number of processes on UNIX-like \
+operating systems."
+HOMEPAGE = "https://github.com/Supervisor/supervisor"
+LICENSE = "BSD"
+LIC_FILES_CHKSUM = "file://LICENSES.txt;md5=5b4e3a2172bba4c47cded5885e7e507e"
+
+SRC_URI[md5sum] = "ac70dadd051dcaf1d03c467d51a3aac1"
+SRC_URI[sha256sum] = "5604457da4fb89d850e78c128205fe4938c9277f87301885b33c94c60361e575"
+
+PYPI_PACKAGE = "supervisor"
+inherit pypi systemd
+RDEPENDS_${PN} = "\
+ ${PYTHON_PN}-meld3 \
+"
+
+SRC_URI += "file://supervisord.conf \
+ file://supervisor.service \
+ "
+SYSTEMD_SERVICE_${PN} = "supervisor.service"
+
+do_install_append() {
+ install -d ${D}${sysconfdir}/supervisor
+ install -d ${D}${systemd_system_unitdir}
+
+ install -m 0644 ${WORKDIR}/supervisord.conf ${D}${sysconfdir}/supervisor
+ install -m 0644 ${WORKDIR}/supervisor.service ${D}${systemd_system_unitdir}
+}
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-tinyrecord.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-tinyrecord.inc
new file mode 100644
index 0000000..981dc07
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-tinyrecord.inc
@@ -0,0 +1,15 @@
+SUMMARY = "transaction support for TinyDB"
+DESCRIPTION = "\
+Tinyrecord is a library which implements atomic transaction \
+support for the TinyDB NoSQL database. It uses a record-first \
+then execute architecture which allows us to minimize the time \
+that we are within a thread lock."
+HOMEPAGE = "https://github.com/eugene-eeo/tinyrecord"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://README;md5=31c1dc11b4ae83546538de4c16bceabc"
+
+SRC_URI[md5sum] = "e47dcfe299686cd3fa7ffaa7cb2ee8b1"
+SRC_URI[sha256sum] = "bc7e6a8e78600df234d7a85c2f5d584130f2c6ffd7cd310f9d3a1d976d3373c8"
+
+PYPI_PACKAGE = "tinyrecord"
+inherit pypi
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-twisted.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-twisted.inc
index 456adf4..ddef414 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-twisted.inc
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-twisted.inc
@@ -5,10 +5,10 @@
#twisted/topfiles/NEWS:655: - Relicensed: Now under the MIT license, rather than LGPL.
LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=04e7730aecedc79d805625a91bc06145"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=d136e8cf7b52f2e64079186ae2060d8a"
-SRC_URI[sha256sum] = "a4cc164a781859c74de47f17f0e85f4bce8a3321a9d0892c015c8f80c4158ad9"
-SRC_URI[md5sum] = "da8142ad4e9971a75fe751ac96a33b95"
+SRC_URI[sha256sum] = "1708e1928ae84ec9d3ebab0d427e20e1e38ff721b15bbced476d047d4a43abbe"
+SRC_URI[md5sum] = "473e12f4226e0fecc0ca5698e418e3f6"
PYPI_PACKAGE = "Twisted"
PYPI_PACKAGE_EXT = "tar.bz2"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-twisted_18.4.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-twisted_19.2.0.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python-twisted_18.4.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python-twisted_19.2.0.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-urllib3.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-urllib3.inc
index 288ed8b..34f1478 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-urllib3.inc
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-urllib3.inc
@@ -16,4 +16,6 @@
${PYTHON_PN}-threading \
"
+CVE_PRODUCT = "urllib3"
+
BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-websocket-client.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-websocket-client.inc
new file mode 100644
index 0000000..c4214b2
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-websocket-client.inc
@@ -0,0 +1,18 @@
+SUMMARY = "websocket client for python"
+DESCRIPTION = "\
+websocket-client module is WebSocket client for python. \
+This provide the low level APIs for WebSocket. All APIs \
+are the synchronous functions."
+HOMEPAGE = "https://github.com/websocket-client/websocket-client"
+LICENSE = "BSD-3-Clause"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=c4c4a98fbc4836b81c8c64d6ecb01fc1"
+
+SRC_URI[md5sum] = "89484bd5dac71123ae6a09b2f90fe62c"
+SRC_URI[sha256sum] = "1fd5520878b68b84b5748bb30e592b10d0a91529d5383f74f4964e72b297fd3a"
+
+PYPI_PACKAGE = "websocket_client"
+inherit pypi
+
+RDEPENDS_${PN} = "\
+ ${PYTHON_PN}-six \
+"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-yarl.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-yarl.inc
new file mode 100644
index 0000000..49b5a60
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-yarl.inc
@@ -0,0 +1,10 @@
+SUMMARY = "The module provides handy URL class for url parsing and changing"
+HOMEPAGE = "https://github.com/aio-libs/yarl/"
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=b334fc90d45983db318f54fd5bf6c90b"
+
+SRC_URI[md5sum] = "92889c31fce4c8f82b7ee9c2b2ed9cd1"
+SRC_URI[sha256sum] = "024ecdc12bc02b321bc66b41327f930d1c2c543fa9a561b39861da9388ba7aa9"
+
+PYPI_PACKAGE = "yarl"
+inherit pypi
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-zopeinterface.inc b/meta-openembedded/meta-python/recipes-devtools/python/python-zopeinterface.inc
index 12623c9..7213bc8 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python-zopeinterface.inc
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python-zopeinterface.inc
@@ -2,8 +2,8 @@
LICENSE = "ZPL-2.1"
LIC_FILES_CHKSUM = "file://PKG-INFO;beginline=8;endline=8;md5=e54fd776274c1b7423ec128974bd9d46"
-SRC_URI[md5sum] = "7b669cd692d817772c61d2e3ad0f1e71"
-SRC_URI[sha256sum] = "57c38470d9f57e37afb460c399eb254e7193ac7fb8042bd09bdc001981a9c74c"
+SRC_URI[md5sum] = "a3b24f9d079bae5e13dd7a88aa512112"
+SRC_URI[sha256sum] = "1b3d0dcabc7c90b470e59e38a9acaa361be43b3a6ea644c0063951964717f0e5"
PYPI_PACKAGE = "zope.interface"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python-zopeinterface_4.5.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python-zopeinterface_4.6.0.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python-zopeinterface_4.5.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python-zopeinterface_4.6.0.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-aiohttp_3.5.4.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-aiohttp_3.5.4.bb
new file mode 100644
index 0000000..cd0303f
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-aiohttp_3.5.4.bb
@@ -0,0 +1,2 @@
+inherit setuptools3
+require python-aiohttp.inc
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-alembic_1.0.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-alembic_1.0.10.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-alembic_1.0.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-alembic_1.0.10.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-async-timeout_3.0.1.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-async-timeout_3.0.1.bb
new file mode 100644
index 0000000..7e2ffdb
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-async-timeout_3.0.1.bb
@@ -0,0 +1,2 @@
+inherit setuptools3
+require python-async-timeout.inc
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-attrs_18.1.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-attrs_19.1.0.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-attrs_18.1.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-attrs_19.1.0.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-beautifulsoup4_4.6.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-beautifulsoup4_4.7.1.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-beautifulsoup4_4.6.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-beautifulsoup4_4.7.1.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-certifi_2018.8.13.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-certifi_2019.3.9.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-certifi_2018.8.13.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-certifi_2019.3.9.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-cffi_1.11.5.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-cffi_1.12.3.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-cffi_1.11.5.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-cffi_1.12.3.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-cython_0.28.5.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-cython_0.29.7.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-cython_0.28.5.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-cython_0.29.7.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-dateutil_2.7.3.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-dateutil_2.8.0.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-dateutil_2.7.3.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-dateutil_2.8.0.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-decorator_4.3.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-decorator_4.4.0.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-decorator_4.3.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-decorator_4.4.0.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-editor_1.0.3.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-editor_1.0.4.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-editor_1.0.3.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-editor_1.0.4.bb
diff --git a/meta-openembedded/meta-demo/recipes-devtools/python/python3-engineio_3.5.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-engineio_3.5.0.bb
similarity index 100%
rename from meta-openembedded/meta-demo/recipes-devtools/python/python3-engineio_3.5.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-engineio_3.5.0.bb
diff --git a/meta-openembedded/meta-demo/recipes-devtools/python/python3-flask-socketio_3.3.2.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-flask-socketio_3.3.2.bb
similarity index 100%
rename from meta-openembedded/meta-demo/recipes-devtools/python/python3-flask-socketio_3.3.2.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-flask-socketio_3.3.2.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-hyperlink_18.0.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-hyperlink_19.0.0.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-hyperlink_18.0.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-hyperlink_19.0.0.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-idna-ssl_1.1.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-idna-ssl_1.1.0.bb
new file mode 100644
index 0000000..3643fcf
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-idna-ssl_1.1.0.bb
@@ -0,0 +1,2 @@
+inherit setuptools3
+require python-idna-ssl.inc
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-jinja2_2.10.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-jinja2_2.10.1.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-jinja2_2.10.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-jinja2_2.10.1.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-lxml_4.3.1.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-lxml_4.3.3.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-lxml_4.3.1.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-lxml_4.3.3.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-meld3_1.0.2.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-meld3_1.0.2.bb
new file mode 100644
index 0000000..f695916
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-meld3_1.0.2.bb
@@ -0,0 +1,2 @@
+inherit setuptools3
+require python-meld3.inc
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-msgpack_0.6.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-msgpack_0.6.1.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-msgpack_0.6.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-msgpack_0.6.1.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-pillow_5.4.1.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-pillow_5.4.1.bb
index 746c184..6fce162 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-pillow_5.4.1.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-pillow_5.4.1.bb
@@ -23,6 +23,8 @@
openjpeg \
"
+CVE_PRODUCT = "pillow"
+
S = "${WORKDIR}/git"
BBCLASSEXTEND = "native"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-psutil_5.4.6.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-psutil_5.6.2.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-psutil_5.4.6.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-psutil_5.6.2.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-py_1.6.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-py_1.8.0.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-py_1.6.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-py_1.8.0.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-pyasn1_0.4.4.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-pyasn1_0.4.5.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-pyasn1_0.4.4.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-pyasn1_0.4.5.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-pymongo_3.7.1.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-pymongo_3.8.0.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-pymongo_3.7.1.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-pymongo_3.8.0.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-pyopenssl_18.0.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-pyopenssl_19.0.0.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-pyopenssl_18.0.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-pyopenssl_19.0.0.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-pyperclip_1.6.2.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-pyperclip_1.7.0.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-pyperclip_1.6.2.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-pyperclip_1.7.0.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-pytz_2018.5.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-pytz_2019.1.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-pytz_2018.5.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-pytz_2019.1.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-raven_6.10.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-raven_6.10.0.bb
new file mode 100644
index 0000000..0f346e4
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-raven_6.10.0.bb
@@ -0,0 +1,2 @@
+inherit setuptools3
+require python-raven.inc
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-rfc3987_1.3.7.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-rfc3987_1.3.8.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-rfc3987_1.3.7.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-rfc3987_1.3.8.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-sentry-sdk_0.7.14.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-sentry-sdk_0.7.14.bb
new file mode 100644
index 0000000..840df93
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-sentry-sdk_0.7.14.bb
@@ -0,0 +1,2 @@
+inherit setuptools3
+require python-sentry-sdk.inc
diff --git a/meta-openembedded/meta-demo/recipes-devtools/python/python3-socketio_4.0.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-socketio_4.0.0.bb
similarity index 100%
rename from meta-openembedded/meta-demo/recipes-devtools/python/python3-socketio_4.0.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-socketio_4.0.0.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-stevedore_1.29.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-stevedore_1.30.1.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-stevedore_1.29.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-stevedore_1.30.1.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-supervisor/supervisor.service b/meta-openembedded/meta-python/recipes-devtools/python/python3-supervisor/supervisor.service
new file mode 100644
index 0000000..e9d3f70
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-supervisor/supervisor.service
@@ -0,0 +1,15 @@
+[Unit]
+Description=Supervisor process control system for UNIX
+Documentation=http://supervisord.org
+After=network.target
+
+[Service]
+ExecStart=/usr/bin/supervisord -n -c /etc/supervisor/supervisord.conf
+ExecStop=/usr/bin/supervisorctl $OPTIONS shutdown
+ExecReload=/usr/bin/supervisorctl -c /etc/supervisor/supervisord.conf $OPTIONS reload
+KillMode=process
+Restart=on-failure
+RestartSec=50s
+
+[Install]
+WantedBy=multi-user.target
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-supervisor/supervisord.conf b/meta-openembedded/meta-python/recipes-devtools/python/python3-supervisor/supervisord.conf
new file mode 100644
index 0000000..3fb9b49
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-supervisor/supervisord.conf
@@ -0,0 +1,31 @@
+; supervisor config file
+
+[unix_http_server]
+file=/var/run/supervisor.sock ; (the path to the socket file)
+chmod=0700 ; sockef file mode (default 0700)
+
+[supervisord]
+logfile=/var/log/supervisord.log ; (main log file;default $CWD/supervisord.log)
+pidfile=/var/run/supervisord.pid ; (supervisord pidfile;default supervisord.pid)
+childlogdir=/var/log/ ; ('AUTO' child log dir, default $TEMP)
+
+; the below section must remain in the config file for RPC
+; (supervisorctl/web interface) to work, additional interfaces may be
+; added by defining them in separate rpcinterface: sections
+[rpcinterface:supervisor]
+supervisor.rpcinterface_factory = supervisor.rpcinterface:make_main_rpcinterface
+
+[supervisorctl]
+serverurl=unix:///var/run/supervisor.sock ; use a unix:// URL for a unix socket
+
+; The [include] section can just contain the "files" setting. This
+; setting can list multiple files (separated by whitespace or
+; newlines). It can also contain wildcards. The filenames are
+; interpreted as relative to this file. Included files *cannot*
+; include files themselves.
+
+[include]
+files = /etc/supervisor/conf.d/*.conf
+
+;[inet_http_server]
+;port=127.0.0.1:9001
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-supervisor_4.0.2.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-supervisor_4.0.2.bb
new file mode 100644
index 0000000..d29e1d6
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-supervisor_4.0.2.bb
@@ -0,0 +1,2 @@
+inherit setuptools3
+require python-supervisor.inc
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-tinyrecord_0.1.5.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-tinyrecord_0.1.5.bb
new file mode 100644
index 0000000..3f1b31f
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-tinyrecord_0.1.5.bb
@@ -0,0 +1,2 @@
+inherit setuptools3
+require python-tinyrecord.inc
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-twisted_18.4.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-twisted_19.2.0.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-twisted_18.4.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-twisted_19.2.0.bb
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-websocket-client_0.56.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-websocket-client_0.56.0.bb
new file mode 100644
index 0000000..9b6696e
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-websocket-client_0.56.0.bb
@@ -0,0 +1,2 @@
+inherit setuptools3
+require python-websocket-client.inc
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-yarl_1.3.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-yarl_1.3.0.bb
new file mode 100644
index 0000000..c5df442
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-yarl_1.3.0.bb
@@ -0,0 +1,2 @@
+inherit setuptools3
+require python-yarl.inc
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-zopeinterface_4.5.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-zopeinterface_4.6.0.bb
similarity index 100%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-zopeinterface_4.5.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-zopeinterface_4.6.0.bb
diff --git a/meta-openembedded/meta-webserver/recipes-httpd/apache-mod/apache-websocket_git.bb b/meta-openembedded/meta-webserver/recipes-httpd/apache-mod/apache-websocket_git.bb
index 0beb3ed..c44efb6 100644
--- a/meta-openembedded/meta-webserver/recipes-httpd/apache-mod/apache-websocket_git.bb
+++ b/meta-openembedded/meta-webserver/recipes-httpd/apache-mod/apache-websocket_git.bb
@@ -1,6 +1,6 @@
SUMMARY = "Websocket module for Apache web server"
DESCRIPTION = "Process requests using the WebSocket protocol (RFC 6455)"
-HOMEPAGE = "https://github.com/jchampio/${PN}/"
+HOMEPAGE = "https://github.com/jchampio/apache-websocket/"
SECTION = "net"
LICENSE = "Apache-2.0"
@@ -13,9 +13,9 @@
# fork contains patches from the modules ML and fixes CVE compliance issues
SRC_URI = "git://github.com/jchampio/apache-websocket.git"
-SRCREV = "f5230d8c520dccf8631da94bf90c23f3c1100dcc"
+SRCREV = "6968083264b90b89b1b9597a4ca03ba29e7ea2e1"
-PV = "0.1.1"
+PV = "0.1.1+git${SRCPV}"
S = "${WORKDIR}/git"
@@ -25,8 +25,8 @@
LIBTOOL=${STAGING_DIR_TARGET}${bindir_crossscripts}/${HOST_SYS}-libtool"
do_install() {
- install -d ${D}${libdir}/apache2/modules/
- install ${B}/.libs/mod_websocket.so ${D}${libdir}/apache2/modules/
+ install -d ${D}${libdir}/apache2/modules
+ install -m 755 ${B}/.libs/mod_websocket.so ${D}${libdir}/apache2/modules
}
FILES_${PN} += " ${libdir}/apache2/modules/* "
diff --git a/meta-openembedded/meta-webserver/recipes-httpd/apache2/apache2-native_2.4.34.bb b/meta-openembedded/meta-webserver/recipes-httpd/apache2/apache2-native_2.4.34.bb
deleted file mode 100644
index 4cc3845..0000000
--- a/meta-openembedded/meta-webserver/recipes-httpd/apache2/apache2-native_2.4.34.bb
+++ /dev/null
@@ -1,46 +0,0 @@
-DESCRIPTION = "The Apache HTTP Server is a powerful, efficient, and \
-extensible web server."
-SUMMARY = "Apache HTTP Server"
-HOMEPAGE = "http://httpd.apache.org/"
-DEPENDS = "expat-native pcre-native apr-native apr-util-native"
-SECTION = "net"
-LICENSE = "Apache-2.0"
-
-inherit autotools pkgconfig native
-
-SRC_URI = "${APACHE_MIRROR}/httpd/httpd-${PV}.tar.bz2 \
- file://0001-configure-use-pkg-config-for-PCRE-detection.patch \
- file://CVE-2018-11763.patch \
- "
-
-S = "${WORKDIR}/httpd-${PV}"
-
-LIC_FILES_CHKSUM = "file://LICENSE;md5=d52d0fd0bc788f068e647116c01ddfcd"
-SRC_URI[md5sum] = "818adca52f3be187fe45d6822755be95"
-SRC_URI[sha256sum] = "fa53c95631febb08a9de41fd2864cfff815cf62d9306723ab0d4b8d7aa1638f0"
-
-EXTRA_OECONF = "--with-apr=${STAGING_BINDIR_CROSS}/apr-1-config \
- --with-apr-util=${STAGING_BINDIR_CROSS}/apu-1-config \
- --prefix=${prefix} --datadir=${datadir}/apache2 \
- "
-
-do_install () {
- install -d ${D}${bindir} ${D}${libdir}
- cp server/gen_test_char ${D}${bindir}
- install -m 755 support/apxs ${D}${bindir}/
- install -m 755 httpd ${D}${bindir}/
- install -d ${D}${datadir}/apache2/build
- cp ${S}/build/*.mk ${D}${datadir}/apache2/build
- cp build/*.mk ${D}${datadir}/apache2/build
- cp ${S}/build/instdso.sh ${D}${datadir}/apache2/build
-
- install -d ${D}${includedir}/apache2
- cp ${S}/include/* ${D}${includedir}/apache2
- cp include/* ${D}${includedir}/apache2
- cp ${S}/os/unix/os.h ${D}${includedir}/apache2
- cp ${S}/os/unix/unixd.h ${D}${includedir}/apache2
-
- cp support/envvars-std ${D}${bindir}/envvars
- chmod 755 ${D}${bindir}/envvars
-}
-
diff --git a/meta-openembedded/meta-webserver/recipes-httpd/apache2/apache2/0001-configure-use-pkg-config-for-PCRE-detection.patch b/meta-openembedded/meta-webserver/recipes-httpd/apache2/apache2/0001-configure-use-pkg-config-for-PCRE-detection.patch
index da38a8c..6c02864 100644
--- a/meta-openembedded/meta-webserver/recipes-httpd/apache2/apache2/0001-configure-use-pkg-config-for-PCRE-detection.patch
+++ b/meta-openembedded/meta-webserver/recipes-httpd/apache2/apache2/0001-configure-use-pkg-config-for-PCRE-detection.patch
@@ -1,4 +1,4 @@
-From 419181e242892ded050f5a375a709b9588fb581d Mon Sep 17 00:00:00 2001
+From d2cedfa3394365689a3f7c8cfe8e0dd56b29bed9 Mon Sep 17 00:00:00 2001
From: Koen Kooi <koen.kooi@linaro.org>
Date: Tue, 17 Jun 2014 09:10:57 +0200
Subject: [PATCH] configure: use pkg-config for PCRE detection
@@ -6,13 +6,12 @@
Upstream-Status: Pending
Signed-off-by: Koen Kooi <koen.kooi@linaro.org>
-
---
configure.in | 27 +++++----------------------
1 file changed, 5 insertions(+), 22 deletions(-)
diff --git a/configure.in b/configure.in
-index be7bd25..54dfd0d 100644
+index 9feaceb..dc6ea15 100644
--- a/configure.in
+++ b/configure.in
@@ -215,28 +215,11 @@ fi
@@ -49,3 +48,6 @@
APACHE_SUBST(PCRE_LIBS)
AC_MSG_NOTICE([])
+--
+2.7.4
+
diff --git a/meta-openembedded/meta-webserver/recipes-httpd/apache2/apache2/0002-apache2-bump-up-the-core-size-limit-if-CoreDumpDirec.patch b/meta-openembedded/meta-webserver/recipes-httpd/apache2/apache2/0002-apache2-bump-up-the-core-size-limit-if-CoreDumpDirec.patch
new file mode 100644
index 0000000..85fe6ae
--- /dev/null
+++ b/meta-openembedded/meta-webserver/recipes-httpd/apache2/apache2/0002-apache2-bump-up-the-core-size-limit-if-CoreDumpDirec.patch
@@ -0,0 +1,51 @@
+From 7df207ad4d0dcda2ad36e5642296e0dec7e13647 Mon Sep 17 00:00:00 2001
+From: Paul Eggleton <paul.eggleton@linux.intel.com>
+Date: Tue, 17 Jul 2012 11:27:39 +0100
+Subject: [PATCH] apache2: bump up the core size limit if CoreDumpDirectory
+ is configured
+
+Bump up the core size limit if CoreDumpDirectory is
+configured.
+
+Upstream-Status: Pending
+
+Note: upstreaming was discussed but there are competing desires;
+ there are portability oddities here too.
+
+---
+ server/core.c | 19 +++++++++++++++++++
+ 1 file changed, 19 insertions(+)
+
+diff --git a/server/core.c b/server/core.c
+index eacb54f..7aa841f 100644
+--- a/server/core.c
++++ b/server/core.c
+@@ -4965,6 +4965,25 @@ static int core_post_config(apr_pool_t *pconf, apr_pool_t *plog, apr_pool_t *pte
+ }
+ apr_pool_cleanup_register(pconf, NULL, ap_mpm_end_gen_helper,
+ apr_pool_cleanup_null);
++
++#ifdef RLIMIT_CORE
++ if (ap_coredumpdir_configured) {
++ struct rlimit lim;
++
++ if (getrlimit(RLIMIT_CORE, &lim) == 0 && lim.rlim_cur == 0) {
++ lim.rlim_cur = lim.rlim_max;
++ if (setrlimit(RLIMIT_CORE, &lim) == 0) {
++ ap_log_error(APLOG_MARK, APLOG_NOTICE, 0, NULL,
++ "core dump file size limit raised to %lu bytes",
++ lim.rlim_cur);
++ } else {
++ ap_log_error(APLOG_MARK, APLOG_NOTICE, errno, NULL,
++ "core dump file size is zero, setrlimit failed");
++ }
++ }
++ }
++#endif
++
+ return OK;
+ }
+
+--
+2.7.4
+
diff --git a/meta-openembedded/meta-webserver/recipes-httpd/apache2/apache2/0003-apache2-do-not-export-apr-apr-util-symbols-when-usin.patch b/meta-openembedded/meta-webserver/recipes-httpd/apache2/apache2/0003-apache2-do-not-export-apr-apr-util-symbols-when-usin.patch
new file mode 100644
index 0000000..081a02b
--- /dev/null
+++ b/meta-openembedded/meta-webserver/recipes-httpd/apache2/apache2/0003-apache2-do-not-export-apr-apr-util-symbols-when-usin.patch
@@ -0,0 +1,34 @@
+From ddd560024a6d526187fd126f306b59533ca3f7e2 Mon Sep 17 00:00:00 2001
+From: Paul Eggleton <paul.eggleton@linux.intel.com>
+Date: Tue, 17 Jul 2012 11:27:39 +0100
+Subject: [PATCH] apache2: do not export apr/apr-util symbols when using
+ shared libapr
+
+There is no need to "suck in" the apr/apr-util symbols when using
+a shared libapr{,util}, it just bloats the symbol table; so don't.
+
+Upstream-Status: Pending
+
+Note: EXPORT_DIRS change is conditional on using shared apr
+
+---
+ server/Makefile.in | 3 ---
+ 1 file changed, 3 deletions(-)
+
+diff --git a/server/Makefile.in b/server/Makefile.in
+index 1fa3344..f635d76 100644
+--- a/server/Makefile.in
++++ b/server/Makefile.in
+@@ -60,9 +60,6 @@ export_files:
+ ls $$dir/*.h ; \
+ done; \
+ echo "$(top_srcdir)/server/mpm_fdqueue.h"; \
+- for dir in $(EXPORT_DIRS_APR); do \
+- ls $$dir/ap[ru].h $$dir/ap[ru]_*.h 2>/dev/null; \
+- done; \
+ ) | sed -e s,//,/,g | sort -u > $@
+
+ exports.c: export_files
+--
+2.7.4
+
diff --git a/meta-openembedded/meta-webserver/recipes-httpd/apache2/apache2/0004-apache2-log-the-SELinux-context-at-startup.patch b/meta-openembedded/meta-webserver/recipes-httpd/apache2/apache2/0004-apache2-log-the-SELinux-context-at-startup.patch
new file mode 100644
index 0000000..78a04d9a
--- /dev/null
+++ b/meta-openembedded/meta-webserver/recipes-httpd/apache2/apache2/0004-apache2-log-the-SELinux-context-at-startup.patch
@@ -0,0 +1,79 @@
+From dfa834ebd449df299f54e98f0fb3a7bb4008fb03 Mon Sep 17 00:00:00 2001
+From: Paul Eggleton <paul.eggleton@linux.intel.com>
+Date: Tue, 17 Jul 2012 11:27:39 +0100
+Subject: [PATCH] Log the SELinux context at startup.
+
+Log the SELinux context at startup.
+
+Upstream-Status: Inappropriate [other]
+
+Note: unlikely to be any interest in this upstream
+
+---
+ configure.in | 5 +++++
+ server/core.c | 26 ++++++++++++++++++++++++++
+ 2 files changed, 31 insertions(+)
+
+diff --git a/configure.in b/configure.in
+index dc6ea15..caa6f54 100644
+--- a/configure.in
++++ b/configure.in
+@@ -466,6 +466,11 @@ getloadavg
+ dnl confirm that a void pointer is large enough to store a long integer
+ APACHE_CHECK_VOID_PTR_LEN
+
++AC_CHECK_LIB(selinux, is_selinux_enabled, [
++ AC_DEFINE(HAVE_SELINUX, 1, [Defined if SELinux is supported])
++ APR_ADDTO(AP_LIBS, [-lselinux])
++])
++
+ AC_CACHE_CHECK([for gettid()], ac_cv_gettid,
+ [AC_TRY_RUN(#define _GNU_SOURCE
+ #include <unistd.h>
+diff --git a/server/core.c b/server/core.c
+index 7aa841f..79f34db 100644
+--- a/server/core.c
++++ b/server/core.c
+@@ -59,6 +59,10 @@
+ #include <unistd.h>
+ #endif
+
++#ifdef HAVE_SELINUX
++#include <selinux/selinux.h>
++#endif
++
+ /* LimitRequestBody handling */
+ #define AP_LIMIT_REQ_BODY_UNSET ((apr_off_t) -1)
+ #define AP_DEFAULT_LIMIT_REQ_BODY ((apr_off_t) 0)
+@@ -4984,6 +4988,28 @@ static int core_post_config(apr_pool_t *pconf, apr_pool_t *plog, apr_pool_t *pte
+ }
+ #endif
+
++#ifdef HAVE_SELINUX
++ {
++ static int already_warned = 0;
++ int is_enabled = is_selinux_enabled() > 0;
++
++ if (is_enabled && !already_warned) {
++ security_context_t con;
++
++ if (getcon(&con) == 0) {
++
++ ap_log_error(APLOG_MARK, APLOG_NOTICE, 0, NULL,
++ "SELinux policy enabled; "
++ "httpd running as context %s", con);
++
++ already_warned = 1;
++
++ freecon(con);
++ }
++ }
++ }
++#endif
++
+ return OK;
+ }
+
+--
+2.7.4
+
diff --git a/meta-openembedded/meta-webserver/recipes-httpd/apache2/apache2/0005-replace-lynx-to-curl-in-apachectl-script.patch b/meta-openembedded/meta-webserver/recipes-httpd/apache2/apache2/0005-replace-lynx-to-curl-in-apachectl-script.patch
new file mode 100644
index 0000000..47320a9
--- /dev/null
+++ b/meta-openembedded/meta-webserver/recipes-httpd/apache2/apache2/0005-replace-lynx-to-curl-in-apachectl-script.patch
@@ -0,0 +1,52 @@
+From 7db1b650bb4b01a5194a34cd7573f915656a595b Mon Sep 17 00:00:00 2001
+From: Yulong Pei <Yulong.pei@windriver.com>
+Date: Thu, 1 Sep 2011 01:03:14 +0800
+Subject: [PATCH] replace lynx to curl in apachectl script
+
+Upstream-Status: Inappropriate [configuration]
+
+Signed-off-by: Yulong Pei <Yulong.pei@windriver.com>
+---
+ support/apachectl.in | 14 ++++++++++----
+ 1 file changed, 10 insertions(+), 4 deletions(-)
+
+diff --git a/support/apachectl.in b/support/apachectl.in
+index 3281c2e..6ab4ba5 100644
+--- a/support/apachectl.in
++++ b/support/apachectl.in
+@@ -52,11 +52,11 @@ fi
+ # a command that outputs a formatted text version of the HTML at the
+ # url given on the command line. Designed for lynx, however other
+ # programs may work.
+-LYNX="@LYNX_PATH@ -dump"
++CURL="/usr/bin/curl"
+ #
+ # the URL to your server's mod_status status page. If you do not
+ # have one, then status and fullstatus will not work.
+-STATUSURL="http://localhost:@PORT@/server-status"
++STATUSURL="http://localhost:@PORT@/"
+ #
+ # Set this variable to a command that increases the maximum
+ # number of file descriptors allowed per child process. This is
+@@ -92,10 +92,16 @@ configtest)
+ ERROR=$?
+ ;;
+ status)
+- $LYNX $STATUSURL | awk ' /process$/ { print; exit } { print } '
++ $CURL -s $STATUSURL | grep -o "It works!"
++ if [ $? != 0 ] ; then
++ echo The httpd server does not work!
++ fi
+ ;;
+ fullstatus)
+- $LYNX $STATUSURL
++ $CURL -s $STATUSURL | grep -o "It works!"
++ if [ $? != 0 ] ; then
++ echo The httpd server does not work!
++ fi
+ ;;
+ *)
+ $HTTPD "$@"
+--
+2.7.4
+
diff --git a/meta-openembedded/meta-webserver/recipes-httpd/apache2/apache2/0006-apache2-fix-the-race-issue-of-parallel-installation.patch b/meta-openembedded/meta-webserver/recipes-httpd/apache2/apache2/0006-apache2-fix-the-race-issue-of-parallel-installation.patch
new file mode 100644
index 0000000..227d040
--- /dev/null
+++ b/meta-openembedded/meta-webserver/recipes-httpd/apache2/apache2/0006-apache2-fix-the-race-issue-of-parallel-installation.patch
@@ -0,0 +1,35 @@
+From 4f4d7d6b88b6e440263ebeb22dfb40c52bb30fd8 Mon Sep 17 00:00:00 2001
+From: Zhenhua Luo <zhenhua.luo@freescale.com>
+Date: Fri, 25 Jan 2013 18:10:50 +0800
+Subject: [PATCH] apache2: fix the race issue of parallel installation
+
+Upstream-Status: Pending
+
+fix following race issue when do parallel install
+| mkdir: cannot create directory `/home/mypc/workspace/poky/build_p4080ds_release/tmp/work/ppce500mc-fsl_networking-linux/apache2/2.4.3-r1/image/usr/share/apache2': File exists
+...
+| mkdir: cannot create directory `/home/mypc/workspace/poky/build_p4080ds_release/tmp/work/ppce500mc-fsl_networking-linux/apache2/2.4.3-r1/image/usr/share/apache2': File exists
+| make[1]: *** [install-man] Error 1
+| make[1]: *** Waiting for unfinished jobs....
+
+Signed-off-by: Zhenhua Luo <zhenhua.luo@freescale.com>
+---
+ build/mkdir.sh | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/build/mkdir.sh b/build/mkdir.sh
+index e2d5bb6..dde5ae0 100755
+--- a/build/mkdir.sh
++++ b/build/mkdir.sh
+@@ -39,7 +39,7 @@ for file in ${1+"$@"} ; do
+ esac
+ if test ! -d "$pathcomp"; then
+ echo "mkdir $pathcomp" 1>&2
+- mkdir "$pathcomp" || errstatus=$?
++ mkdir -p "$pathcomp" || errstatus=$?
+ fi
+ pathcomp="$pathcomp/"
+ done
+--
+2.7.4
+
diff --git a/meta-openembedded/meta-webserver/recipes-httpd/apache2/apache2/0007-apache2-allow-to-disable-selinux-support.patch b/meta-openembedded/meta-webserver/recipes-httpd/apache2/apache2/0007-apache2-allow-to-disable-selinux-support.patch
new file mode 100644
index 0000000..fed6b50
--- /dev/null
+++ b/meta-openembedded/meta-webserver/recipes-httpd/apache2/apache2/0007-apache2-allow-to-disable-selinux-support.patch
@@ -0,0 +1,40 @@
+From 964ef2c1af74984602f46e7db938d3b95b148385 Mon Sep 17 00:00:00 2001
+From: Wenzong Fan <wenzong.fan@windriver.com>
+Date: Mon, 1 Dec 2014 02:08:27 -0500
+Subject: [PATCH] apache2: allow to disable selinux support
+
+Upstream-Status: Pending
+
+Signed-off-by: Wenzong Fan <wenzong.fan@windriver.com>
+---
+ configure.in | 14 ++++++++++----
+ 1 file changed, 10 insertions(+), 4 deletions(-)
+
+diff --git a/configure.in b/configure.in
+index caa6f54..eab2090 100644
+--- a/configure.in
++++ b/configure.in
+@@ -466,10 +466,16 @@ getloadavg
+ dnl confirm that a void pointer is large enough to store a long integer
+ APACHE_CHECK_VOID_PTR_LEN
+
+-AC_CHECK_LIB(selinux, is_selinux_enabled, [
+- AC_DEFINE(HAVE_SELINUX, 1, [Defined if SELinux is supported])
+- APR_ADDTO(AP_LIBS, [-lselinux])
+-])
++# SELinux support
++AC_ARG_ENABLE(selinux,APACHE_HELP_STRING(--enable-selinux,Enable SELinux support [default=auto]),
++ [],[enable_selinux=auto])
++
++if test x$enable_selinux != xno; then
++ AC_CHECK_LIB(selinux, is_selinux_enabled, [
++ AC_DEFINE(HAVE_SELINUX, 1, [Defined if SELinux is supported])
++ APR_ADDTO(AP_LIBS, [-lselinux])
++ ])
++fi
+
+ AC_CACHE_CHECK([for gettid()], ac_cv_gettid,
+ [AC_TRY_RUN(#define _GNU_SOURCE
+--
+2.7.4
+
diff --git a/meta-openembedded/meta-webserver/recipes-httpd/apache2/apache2/0008-apache2-do-not-use-relative-path-for-gen_test_char.patch b/meta-openembedded/meta-webserver/recipes-httpd/apache2/apache2/0008-apache2-do-not-use-relative-path-for-gen_test_char.patch
new file mode 100644
index 0000000..82e9e8c
--- /dev/null
+++ b/meta-openembedded/meta-webserver/recipes-httpd/apache2/apache2/0008-apache2-do-not-use-relative-path-for-gen_test_char.patch
@@ -0,0 +1,27 @@
+From b62c4cd2295c98b2ebe12641e5f01590bd96ae94 Mon Sep 17 00:00:00 2001
+From: Paul Eggleton <paul.eggleton@linux.intel.com>
+Date: Tue, 17 Jul 2012 11:27:39 +0100
+Subject: [PATCH] apache2: do not use relative path for gen_test_char
+
+Upstream-Status: Inappropriate [embedded specific]
+
+---
+ server/Makefile.in | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/server/Makefile.in b/server/Makefile.in
+index f635d76..0d48924 100644
+--- a/server/Makefile.in
++++ b/server/Makefile.in
+@@ -29,7 +29,7 @@ gen_test_char: $(gen_test_char_OBJECTS)
+ $(LINK) $(EXTRA_LDFLAGS) $(gen_test_char_OBJECTS) $(EXTRA_LIBS)
+
+ test_char.h: gen_test_char
+- ./gen_test_char > test_char.h
++ gen_test_char > test_char.h
+
+ util.lo: test_char.h
+
+--
+2.7.4
+
diff --git a/meta-openembedded/meta-webserver/recipes-httpd/apache2/apache2/CVE-2018-11763.patch b/meta-openembedded/meta-webserver/recipes-httpd/apache2/apache2/CVE-2018-11763.patch
deleted file mode 100644
index a2c5b2e..0000000
--- a/meta-openembedded/meta-webserver/recipes-httpd/apache2/apache2/CVE-2018-11763.patch
+++ /dev/null
@@ -1,512 +0,0 @@
-From 484aba5048e3457dc1d15189f1910d007b1a4a76 Mon Sep 17 00:00:00 2001
-From: Jim Jagielski <jim@apache.org>
-Date: Wed, 12 Sep 2018 20:38:02 +0000
-Subject: [PATCH] Merge r1840010 from trunk:
-
-On the trunk:
-
-mod_http2: connection IO event handling reworked. Instead of reacting on
- incoming bytes, the state machine now acts on incoming frames that are
- affecting it. This reduces state transitions.
-
-
-Submitted by: icing
-Reviewed by: icing, ylavic, jim
-
-
-git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1840757 13f79535-47bb-0310-9956-ffa450edef68
-CVE: CVE-2018-11763
-Upstream-Status: Backport [https://github.com/apache/httpd/commit/484aba5048e3457dc1d15189f1910d007b1a4a76]
-
-Signed-off-by: Mingli Yu <Mingli.Yu@windriver.com>
----
- modules/http2/h2_session.c | 238 +++++++++++++++++++++++--------------
- modules/http2/h2_session.h | 7 +-
- modules/http2/h2_version.h | 4 +-
- 3 files changed, 158 insertions(+), 97 deletions(-)
-
-diff --git a/modules/http2/h2_session.c b/modules/http2/h2_session.c
-index 805d6774dc..a1b31d2b30 100644
---- a/modules/http2/h2_session.c
-+++ b/modules/http2/h2_session.c
-@@ -235,6 +235,7 @@ static int on_data_chunk_recv_cb(nghttp2_session *ngh2, uint8_t flags,
- stream = h2_session_stream_get(session, stream_id);
- if (stream) {
- status = h2_stream_recv_DATA(stream, flags, data, len);
-+ dispatch_event(session, H2_SESSION_EV_STREAM_CHANGE, 0, "stream data rcvd");
- }
- else {
- ap_log_cerror(APLOG_MARK, APLOG_DEBUG, 0, session->c, APLOGNO(03064)
-@@ -317,9 +318,9 @@ static int on_header_cb(nghttp2_session *ngh2, const nghttp2_frame *frame,
- }
-
- /**
-- * nghttp2 session has received a complete frame. Most, it uses
-- * for processing of internal state. HEADER and DATA frames however
-- * we need to handle ourself.
-+ * nghttp2 session has received a complete frame. Most are used by nghttp2
-+ * for processing of internal state. Some, like HEADER and DATA frames,
-+ * we need to act on.
- */
- static int on_frame_recv_cb(nghttp2_session *ng2s,
- const nghttp2_frame *frame,
-@@ -378,6 +379,9 @@ static int on_frame_recv_cb(nghttp2_session *ng2s,
- "h2_stream(%ld-%d): WINDOW_UPDATE incr=%d",
- session->id, (int)frame->hd.stream_id,
- frame->window_update.window_size_increment);
-+ if (nghttp2_session_want_write(session->ngh2)) {
-+ dispatch_event(session, H2_SESSION_EV_FRAME_RCVD, 0, "window update");
-+ }
- break;
- case NGHTTP2_RST_STREAM:
- ap_log_cerror(APLOG_MARK, APLOG_DEBUG, 0, session->c, APLOGNO(03067)
-@@ -404,6 +408,12 @@ static int on_frame_recv_cb(nghttp2_session *ng2s,
- frame->goaway.error_code, NULL);
- }
- break;
-+ case NGHTTP2_SETTINGS:
-+ if (APLOGctrace2(session->c)) {
-+ ap_log_cerror(APLOG_MARK, APLOG_TRACE2, 0, session->c,
-+ H2_SSSN_MSG(session, "SETTINGS, len=%ld"), (long)frame->hd.length);
-+ }
-+ break;
- default:
- if (APLOGctrace2(session->c)) {
- char buffer[256];
-@@ -415,7 +425,40 @@ static int on_frame_recv_cb(nghttp2_session *ng2s,
- }
- break;
- }
-- return (APR_SUCCESS == rv)? 0 : NGHTTP2_ERR_PROTO;
-+
-+ if (session->state == H2_SESSION_ST_IDLE) {
-+ /* We received a frame, but session is in state IDLE. That means the frame
-+ * did not really progress any of the (possibly) open streams. It was a meta
-+ * frame, e.g. SETTINGS/WINDOW_UPDATE/unknown/etc.
-+ * Remember: IDLE means we cannot send because either there are no streams open or
-+ * all open streams are blocked on exhausted WINDOWs for outgoing data.
-+ * The more frames we receive that do not change this, the less interested we
-+ * become in serving this connection. This is expressed in increasing "idle_delays".
-+ * Eventually, the connection will timeout and we'll close it. */
-+ session->idle_frames = H2MIN(session->idle_frames + 1, session->frames_received);
-+ ap_log_cerror( APLOG_MARK, APLOG_TRACE2, 0, session->c,
-+ H2_SSSN_MSG(session, "session has %ld idle frames"),
-+ (long)session->idle_frames);
-+ if (session->idle_frames > 10) {
-+ apr_size_t busy_frames = H2MAX(session->frames_received - session->idle_frames, 1);
-+ int idle_ratio = (int)(session->idle_frames / busy_frames);
-+ if (idle_ratio > 100) {
-+ session->idle_delay = apr_time_from_msec(H2MIN(1000, idle_ratio));
-+ }
-+ else if (idle_ratio > 10) {
-+ session->idle_delay = apr_time_from_msec(10);
-+ }
-+ else if (idle_ratio > 1) {
-+ session->idle_delay = apr_time_from_msec(1);
-+ }
-+ else {
-+ session->idle_delay = 0;
-+ }
-+ }
-+ }
-+
-+ if (APR_SUCCESS != rv) return NGHTTP2_ERR_PROTO;
-+ return 0;
- }
-
- static int h2_session_continue_data(h2_session *session) {
-@@ -1603,23 +1646,57 @@ static void update_child_status(h2_session *session, int status, const char *msg
-
- static void transit(h2_session *session, const char *action, h2_session_state nstate)
- {
-+ apr_time_t timeout;
-+ int ostate, loglvl;
-+ const char *s;
-+
- if (session->state != nstate) {
-- int loglvl = APLOG_DEBUG;
-- if ((session->state == H2_SESSION_ST_BUSY && nstate == H2_SESSION_ST_WAIT)
-- || (session->state == H2_SESSION_ST_WAIT && nstate == H2_SESSION_ST_BUSY)){
-+ ostate = session->state;
-+ session->state = nstate;
-+
-+ loglvl = APLOG_DEBUG;
-+ if ((ostate == H2_SESSION_ST_BUSY && nstate == H2_SESSION_ST_WAIT)
-+ || (ostate == H2_SESSION_ST_WAIT && nstate == H2_SESSION_ST_BUSY)){
- loglvl = APLOG_TRACE1;
- }
- ap_log_cerror(APLOG_MARK, loglvl, 0, session->c,
- H2_SSSN_LOG(APLOGNO(03078), session,
- "transit [%s] -- %s --> [%s]"),
-- h2_session_state_str(session->state), action,
-+ h2_session_state_str(ostate), action,
- h2_session_state_str(nstate));
-- session->state = nstate;
-+
- switch (session->state) {
- case H2_SESSION_ST_IDLE:
-- update_child_status(session, (session->open_streams == 0?
-- SERVER_BUSY_KEEPALIVE
-- : SERVER_BUSY_READ), "idle");
-+ if (!session->remote.emitted_count) {
-+ /* on fresh connections, with async mpm, do not return
-+ * to mpm for a second. This gives the first request a better
-+ * chance to arrive (und connection leaving IDLE state).
-+ * If we return to mpm right away, this connection has the
-+ * same chance of being cleaned up by the mpm as connections
-+ * that already served requests - not fair. */
-+ session->idle_sync_until = apr_time_now() + apr_time_from_sec(1);
-+ s = "timeout";
-+ timeout = H2MAX(session->s->timeout, session->s->keep_alive_timeout);
-+ update_child_status(session, SERVER_BUSY_READ, "idle");
-+ ap_log_cerror(APLOG_MARK, APLOG_TRACE1, 0, session->c,
-+ H2_SSSN_LOG("", session, "enter idle, timeout = %d sec"),
-+ (int)apr_time_sec(H2MAX(session->s->timeout, session->s->keep_alive_timeout)));
-+ }
-+ else if (session->open_streams) {
-+ s = "timeout";
-+ timeout = session->s->keep_alive_timeout;
-+ update_child_status(session, SERVER_BUSY_KEEPALIVE, "idle");
-+ }
-+ else {
-+ /* normal keepalive setup */
-+ s = "keepalive";
-+ timeout = session->s->keep_alive_timeout;
-+ update_child_status(session, SERVER_BUSY_KEEPALIVE, "idle");
-+ }
-+ session->idle_until = apr_time_now() + timeout;
-+ ap_log_cerror(APLOG_MARK, APLOG_TRACE1, 0, session->c,
-+ H2_SSSN_LOG("", session, "enter idle, %s = %d sec"),
-+ s, (int)apr_time_sec(timeout));
- break;
- case H2_SESSION_ST_DONE:
- update_child_status(session, SERVER_CLOSING, "done");
-@@ -1726,8 +1803,6 @@ static void h2_session_ev_no_io(h2_session *session, int arg, const char *msg)
- * This means we only wait for WINDOW_UPDATE from the
- * client and can block on READ. */
- transit(session, "no io (flow wait)", H2_SESSION_ST_IDLE);
-- session->idle_until = apr_time_now() + session->s->timeout;
-- session->keep_sync_until = session->idle_until;
- /* Make sure we have flushed all previously written output
- * so that the client will react. */
- if (h2_conn_io_flush(&session->io) != APR_SUCCESS) {
-@@ -1738,12 +1813,7 @@ static void h2_session_ev_no_io(h2_session *session, int arg, const char *msg)
- }
- else if (session->local.accepting) {
- /* When we have no streams, but accept new, switch to idle */
-- apr_time_t now = apr_time_now();
- transit(session, "no io (keepalive)", H2_SESSION_ST_IDLE);
-- session->idle_until = (session->remote.emitted_count?
-- session->s->keep_alive_timeout :
-- session->s->timeout) + now;
-- session->keep_sync_until = now + apr_time_from_sec(1);
- }
- else {
- /* We are no longer accepting new streams and there are
-@@ -1758,12 +1828,25 @@ static void h2_session_ev_no_io(h2_session *session, int arg, const char *msg)
- }
- }
-
--static void h2_session_ev_data_read(h2_session *session, int arg, const char *msg)
-+static void h2_session_ev_frame_rcvd(h2_session *session, int arg, const char *msg)
-+{
-+ switch (session->state) {
-+ case H2_SESSION_ST_IDLE:
-+ case H2_SESSION_ST_WAIT:
-+ transit(session, "frame received", H2_SESSION_ST_BUSY);
-+ break;
-+ default:
-+ /* nop */
-+ break;
-+ }
-+}
-+
-+static void h2_session_ev_stream_change(h2_session *session, int arg, const char *msg)
- {
- switch (session->state) {
- case H2_SESSION_ST_IDLE:
- case H2_SESSION_ST_WAIT:
-- transit(session, "data read", H2_SESSION_ST_BUSY);
-+ transit(session, "stream change", H2_SESSION_ST_BUSY);
- break;
- default:
- /* nop */
-@@ -1803,16 +1886,6 @@ static void h2_session_ev_pre_close(h2_session *session, int arg, const char *ms
- static void ev_stream_open(h2_session *session, h2_stream *stream)
- {
- h2_iq_append(session->in_process, stream->id);
-- switch (session->state) {
-- case H2_SESSION_ST_IDLE:
-- if (session->open_streams == 1) {
-- /* enter timeout, since we have a stream again */
-- session->idle_until = (session->s->timeout + apr_time_now());
-- }
-- break;
-- default:
-- break;
-- }
- }
-
- static void ev_stream_closed(h2_session *session, h2_stream *stream)
-@@ -1825,11 +1898,6 @@ static void ev_stream_closed(h2_session *session, h2_stream *stream)
- }
- switch (session->state) {
- case H2_SESSION_ST_IDLE:
-- if (session->open_streams == 0) {
-- /* enter keepalive timeout, since we no longer have streams */
-- session->idle_until = (session->s->keep_alive_timeout
-- + apr_time_now());
-- }
- break;
- default:
- break;
-@@ -1887,6 +1955,7 @@ static void on_stream_state_enter(void *ctx, h2_stream *stream)
- default:
- break;
- }
-+ dispatch_event(session, H2_SESSION_EV_STREAM_CHANGE, 0, "stream state change");
- }
-
- static void on_stream_event(void *ctx, h2_stream *stream,
-@@ -1945,8 +2014,8 @@ static void dispatch_event(h2_session *session, h2_session_event_t ev,
- case H2_SESSION_EV_NO_IO:
- h2_session_ev_no_io(session, arg, msg);
- break;
-- case H2_SESSION_EV_DATA_READ:
-- h2_session_ev_data_read(session, arg, msg);
-+ case H2_SESSION_EV_FRAME_RCVD:
-+ h2_session_ev_frame_rcvd(session, arg, msg);
- break;
- case H2_SESSION_EV_NGH2_DONE:
- h2_session_ev_ngh2_done(session, arg, msg);
-@@ -1957,6 +2026,9 @@ static void dispatch_event(h2_session *session, h2_session_event_t ev,
- case H2_SESSION_EV_PRE_CLOSE:
- h2_session_ev_pre_close(session, arg, msg);
- break;
-+ case H2_SESSION_EV_STREAM_CHANGE:
-+ h2_session_ev_stream_change(session, arg, msg);
-+ break;
- default:
- ap_log_cerror(APLOG_MARK, APLOG_TRACE1, 0, session->c,
- H2_SSSN_MSG(session, "unknown event %d"), ev);
-@@ -1990,13 +2062,15 @@ apr_status_t h2_session_process(h2_session *session, int async)
- apr_status_t status = APR_SUCCESS;
- conn_rec *c = session->c;
- int rv, mpm_state, trace = APLOGctrace3(c);
--
-+ apr_time_t now;
-+
- if (trace) {
- ap_log_cerror( APLOG_MARK, APLOG_TRACE3, status, c,
- H2_SSSN_MSG(session, "process start, async=%d"), async);
- }
-
- while (session->state != H2_SESSION_ST_DONE) {
-+ now = apr_time_now();
- session->have_read = session->have_written = 0;
-
- if (session->local.accepting
-@@ -2034,39 +2108,42 @@ apr_status_t h2_session_process(h2_session *session, int async)
- break;
-
- case H2_SESSION_ST_IDLE:
-- /* We trust our connection into the default timeout/keepalive
-- * handling of the core filters/mpm iff:
-- * - keep_sync_until is not set
-- * - we have an async mpm
-- * - we have no open streams to process
-- * - we are not sitting on a Upgrade: request
-- * - we already have seen at least one request
-- */
-- if (!session->keep_sync_until && async && !session->open_streams
-- && !session->r && session->remote.emitted_count) {
-+ if (session->idle_until && (apr_time_now() + session->idle_delay) > session->idle_until) {
-+ ap_log_cerror( APLOG_MARK, APLOG_TRACE1, status, c,
-+ H2_SSSN_MSG(session, "idle, timeout reached, closing"));
-+ if (session->idle_delay) {
-+ apr_table_setn(session->c->notes, "short-lingering-close", "1");
-+ }
-+ dispatch_event(session, H2_SESSION_EV_CONN_TIMEOUT, 0, "timeout");
-+ goto out;
-+ }
-+
-+ if (session->idle_delay) {
-+ /* we are less interested in spending time on this connection */
-+ ap_log_cerror( APLOG_MARK, APLOG_TRACE2, status, c,
-+ H2_SSSN_MSG(session, "session is idle (%ld ms), idle wait %ld sec left"),
-+ (long)apr_time_as_msec(session->idle_delay),
-+ (long)apr_time_sec(session->idle_until - now));
-+ apr_sleep(session->idle_delay);
-+ session->idle_delay = 0;
-+ }
-+
-+ h2_conn_io_flush(&session->io);
-+ if (async && !session->r && (now > session->idle_sync_until)) {
- if (trace) {
- ap_log_cerror(APLOG_MARK, APLOG_TRACE3, status, c,
- H2_SSSN_MSG(session,
- "nonblock read, %d streams open"),
- session->open_streams);
- }
-- h2_conn_io_flush(&session->io);
- status = h2_session_read(session, 0);
-
- if (status == APR_SUCCESS) {
- session->have_read = 1;
-- dispatch_event(session, H2_SESSION_EV_DATA_READ, 0, NULL);
- }
-- else if (APR_STATUS_IS_EAGAIN(status)
-- || APR_STATUS_IS_TIMEUP(status)) {
-- if (apr_time_now() > session->idle_until) {
-- dispatch_event(session,
-- H2_SESSION_EV_CONN_TIMEOUT, 0, NULL);
-- }
-- else {
-- status = APR_EAGAIN;
-- goto out;
-- }
-+ else if (APR_STATUS_IS_EAGAIN(status) || APR_STATUS_IS_TIMEUP(status)) {
-+ status = APR_EAGAIN;
-+ goto out;
- }
- else {
- ap_log_cerror(APLOG_MARK, APLOG_DEBUG, status, c,
-@@ -2078,7 +2155,6 @@ apr_status_t h2_session_process(h2_session *session, int async)
- }
- else {
- /* make certain, we send everything before we idle */
-- h2_conn_io_flush(&session->io);
- if (trace) {
- ap_log_cerror(APLOG_MARK, APLOG_TRACE3, status, c,
- H2_SSSN_MSG(session,
-@@ -2090,7 +2166,6 @@ apr_status_t h2_session_process(h2_session *session, int async)
- */
- status = h2_mplx_idle(session->mplx);
- if (status == APR_EAGAIN) {
-- dispatch_event(session, H2_SESSION_EV_DATA_READ, 0, NULL);
- break;
- }
- else if (status != APR_SUCCESS) {
-@@ -2101,33 +2176,11 @@ apr_status_t h2_session_process(h2_session *session, int async)
- status = h2_session_read(session, 1);
- if (status == APR_SUCCESS) {
- session->have_read = 1;
-- dispatch_event(session, H2_SESSION_EV_DATA_READ, 0, NULL);
- }
- else if (status == APR_EAGAIN) {
- /* nothing to read */
- }
- else if (APR_STATUS_IS_TIMEUP(status)) {
-- apr_time_t now = apr_time_now();
-- if (now > session->keep_sync_until) {
-- /* if we are on an async mpm, now is the time that
-- * we may dare to pass control to it. */
-- session->keep_sync_until = 0;
-- }
-- if (now > session->idle_until) {
-- if (trace) {
-- ap_log_cerror(APLOG_MARK, APLOG_TRACE3, status, c,
-- H2_SSSN_MSG(session,
-- "keepalive timeout"));
-- }
-- dispatch_event(session,
-- H2_SESSION_EV_CONN_TIMEOUT, 0, "timeout");
-- }
-- else if (trace) {
-- ap_log_cerror(APLOG_MARK, APLOG_TRACE3, status, c,
-- H2_SSSN_MSG(session,
-- "keepalive, %f sec left"),
-- (session->idle_until - now) / 1000000.0f);
-- }
- /* continue reading handling */
- }
- else if (APR_STATUS_IS_ECONNABORTED(status)
-@@ -2145,6 +2198,18 @@ apr_status_t h2_session_process(h2_session *session, int async)
- dispatch_event(session, H2_SESSION_EV_CONN_ERROR, 0, "error");
- }
- }
-+ if (nghttp2_session_want_write(session->ngh2)) {
-+ ap_update_child_status(session->c->sbh, SERVER_BUSY_WRITE, NULL);
-+ status = h2_session_send(session);
-+ if (status == APR_SUCCESS) {
-+ status = h2_conn_io_flush(&session->io);
-+ }
-+ if (status != APR_SUCCESS) {
-+ dispatch_event(session, H2_SESSION_EV_CONN_ERROR,
-+ H2_ERR_INTERNAL_ERROR, "writing");
-+ break;
-+ }
-+ }
- break;
-
- case H2_SESSION_ST_BUSY:
-@@ -2154,7 +2219,6 @@ apr_status_t h2_session_process(h2_session *session, int async)
- status = h2_session_read(session, 0);
- if (status == APR_SUCCESS) {
- session->have_read = 1;
-- dispatch_event(session, H2_SESSION_EV_DATA_READ, 0, NULL);
- }
- else if (status == APR_EAGAIN) {
- /* nothing to read */
-@@ -2218,7 +2282,7 @@ apr_status_t h2_session_process(h2_session *session, int async)
- session->iowait);
- if (status == APR_SUCCESS) {
- session->wait_us = 0;
-- dispatch_event(session, H2_SESSION_EV_DATA_READ, 0, NULL);
-+ dispatch_event(session, H2_SESSION_EV_STREAM_CHANGE, 0, NULL);
- }
- else if (APR_STATUS_IS_TIMEUP(status)) {
- /* go back to checking all inputs again */
-diff --git a/modules/http2/h2_session.h b/modules/http2/h2_session.h
-index 486938b009..df2a862445 100644
---- a/modules/http2/h2_session.h
-+++ b/modules/http2/h2_session.h
-@@ -66,10 +66,11 @@ typedef enum {
- H2_SESSION_EV_PROTO_ERROR, /* protocol error */
- H2_SESSION_EV_CONN_TIMEOUT, /* connection timeout */
- H2_SESSION_EV_NO_IO, /* nothing has been read or written */
-- H2_SESSION_EV_DATA_READ, /* connection data has been read */
-+ H2_SESSION_EV_FRAME_RCVD, /* a frame has been received */
- H2_SESSION_EV_NGH2_DONE, /* nghttp2 wants neither read nor write anything */
- H2_SESSION_EV_MPM_STOPPING, /* the process is stopping */
- H2_SESSION_EV_PRE_CLOSE, /* connection will close after this */
-+ H2_SESSION_EV_STREAM_CHANGE, /* a stream (state/input/output) changed */
- } h2_session_event_t;
-
- typedef struct h2_session {
-@@ -118,7 +119,9 @@ typedef struct h2_session {
- apr_size_t max_stream_mem; /* max buffer memory for a single stream */
-
- apr_time_t idle_until; /* Time we shut down due to sheer boredom */
-- apr_time_t keep_sync_until; /* Time we sync wait until passing to async mpm */
-+ apr_time_t idle_sync_until; /* Time we sync wait until keepalive handling kicks in */
-+ apr_size_t idle_frames; /* number of rcvd frames that kept session in idle state */
-+ apr_interval_time_t idle_delay; /* Time we delay processing rcvd frames in idle state */
-
- apr_bucket_brigade *bbtmp; /* brigade for keeping temporary data */
- struct apr_thread_cond_t *iowait; /* our cond when trywaiting for data */
-diff --git a/modules/http2/h2_version.h b/modules/http2/h2_version.h
-index 5c53abd575..2ac718fc0f 100644
---- a/modules/http2/h2_version.h
-+++ b/modules/http2/h2_version.h
-@@ -27,7 +27,7 @@
- * @macro
- * Version number of the http2 module as c string
- */
--#define MOD_HTTP2_VERSION "1.10.20"
-+#define MOD_HTTP2_VERSION "1.11.0"
-
- /**
- * @macro
-@@ -35,7 +35,7 @@
- * release. This is a 24 bit number with 8 bits for major number, 8 bits
- * for minor and 8 bits for patch. Version 1.2.3 becomes 0x010203.
- */
--#define MOD_HTTP2_VERSION_NUM 0x010a14
-+#define MOD_HTTP2_VERSION_NUM 0x010b00
-
-
- #endif /* mod_h2_h2_version_h */
---
-2.17.1
-
diff --git a/meta-openembedded/meta-webserver/recipes-httpd/apache2/apache2/apache-configure_perlbin.patch b/meta-openembedded/meta-webserver/recipes-httpd/apache2/apache2/apache-configure_perlbin.patch
index a2bc6e0..61669e3 100644
--- a/meta-openembedded/meta-webserver/recipes-httpd/apache2/apache2/apache-configure_perlbin.patch
+++ b/meta-openembedded/meta-webserver/recipes-httpd/apache2/apache2/apache-configure_perlbin.patch
@@ -5,6 +5,13 @@
Upstream-Status: Inappropriate [configuration]
+Add back this patch. Without this patch, apxs's shebang will use
+perl under hosttools, which can be too long for shebang, and cause
+error:
+bad interpreter: No such file or directory
+
+Signed-off-by: Changqing Li <changqing.li@windriver.com>
+
---
configure.in | 5 +----
1 file changed, 1 insertion(+), 4 deletions(-)
diff --git a/meta-openembedded/meta-webserver/recipes-httpd/apache2/apache2/configure-allow-to-disable-selinux-support.patch b/meta-openembedded/meta-webserver/recipes-httpd/apache2/apache2/configure-allow-to-disable-selinux-support.patch
deleted file mode 100644
index a6ccfb6..0000000
--- a/meta-openembedded/meta-webserver/recipes-httpd/apache2/apache2/configure-allow-to-disable-selinux-support.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-From 166cbc02f72d13d5e7bf08ac2351c0f07e1ff4b9 Mon Sep 17 00:00:00 2001
-From: Wenzong Fan <wenzong.fan@windriver.com>
-Date: Mon, 1 Dec 2014 02:08:27 -0500
-Subject: [PATCH] apache2: allow to disable selinux support
-
-Upstream-Status: Pending
-
-Signed-off-by: Wenzong Fan <wenzong.fan@windriver.com>
-
----
- configure.in | 14 ++++++++++----
- 1 file changed, 10 insertions(+), 4 deletions(-)
-
-diff --git a/configure.in b/configure.in
-index 54dfd0d..377e062 100644
---- a/configure.in
-+++ b/configure.in
-@@ -466,10 +466,16 @@ getloadavg
- dnl confirm that a void pointer is large enough to store a long integer
- APACHE_CHECK_VOID_PTR_LEN
-
--AC_CHECK_LIB(selinux, is_selinux_enabled, [
-- AC_DEFINE(HAVE_SELINUX, 1, [Defined if SELinux is supported])
-- APR_ADDTO(AP_LIBS, [-lselinux])
--])
-+# SELinux support
-+AC_ARG_ENABLE(selinux,APACHE_HELP_STRING(--enable-selinux,Enable SELinux support [default=auto]),
-+ [],[enable_selinux=auto])
-+
-+if test x$enable_selinux != xno; then
-+ AC_CHECK_LIB(selinux, is_selinux_enabled, [
-+ AC_DEFINE(HAVE_SELINUX, 1, [Defined if SELinux is supported])
-+ APR_ADDTO(AP_LIBS, [-lselinux])
-+ ])
-+fi
-
- AC_CACHE_CHECK([for gettid()], ac_cv_gettid,
- [AC_TRY_RUN(#define _GNU_SOURCE
diff --git a/meta-openembedded/meta-webserver/recipes-httpd/apache2/apache2/httpd-2.4.1-corelimit.patch b/meta-openembedded/meta-webserver/recipes-httpd/apache2/apache2/httpd-2.4.1-corelimit.patch
deleted file mode 100644
index ae4ff0c..0000000
--- a/meta-openembedded/meta-webserver/recipes-httpd/apache2/apache2/httpd-2.4.1-corelimit.patch
+++ /dev/null
@@ -1,47 +0,0 @@
-From 55ebb07cc57854cbfb372c3a688365039b809bc8 Mon Sep 17 00:00:00 2001
-From: Paul Eggleton <paul.eggleton@linux.intel.com>
-Date: Tue, 17 Jul 2012 11:27:39 +0100
-Subject: [PATCH] apache2: add from OE-Classic, update to version 2.4.2 and fix
-
-Bump up the core size limit if CoreDumpDirectory is
-configured.
-
-Upstream-Status: Pending
-
-Note: upstreaming was discussed but there are competing desires;
- there are portability oddities here too.
-
----
- server/core.c | 19 +++++++++++++++++++
- 1 file changed, 19 insertions(+)
-
-diff --git a/server/core.c b/server/core.c
-index 4af0816..4fd2b9f 100644
---- a/server/core.c
-+++ b/server/core.c
-@@ -4940,6 +4940,25 @@ static int core_post_config(apr_pool_t *pconf, apr_pool_t *plog, apr_pool_t *pte
- }
- apr_pool_cleanup_register(pconf, NULL, ap_mpm_end_gen_helper,
- apr_pool_cleanup_null);
-+
-+#ifdef RLIMIT_CORE
-+ if (ap_coredumpdir_configured) {
-+ struct rlimit lim;
-+
-+ if (getrlimit(RLIMIT_CORE, &lim) == 0 && lim.rlim_cur == 0) {
-+ lim.rlim_cur = lim.rlim_max;
-+ if (setrlimit(RLIMIT_CORE, &lim) == 0) {
-+ ap_log_error(APLOG_MARK, APLOG_NOTICE, 0, NULL,
-+ "core dump file size limit raised to %lu bytes",
-+ lim.rlim_cur);
-+ } else {
-+ ap_log_error(APLOG_MARK, APLOG_NOTICE, errno, NULL,
-+ "core dump file size is zero, setrlimit failed");
-+ }
-+ }
-+ }
-+#endif
-+
- return OK;
- }
-
diff --git a/meta-openembedded/meta-webserver/recipes-httpd/apache2/apache2/httpd-2.4.1-selinux.patch b/meta-openembedded/meta-webserver/recipes-httpd/apache2/apache2/httpd-2.4.1-selinux.patch
deleted file mode 100644
index 015034c..0000000
--- a/meta-openembedded/meta-webserver/recipes-httpd/apache2/apache2/httpd-2.4.1-selinux.patch
+++ /dev/null
@@ -1,76 +0,0 @@
-From 33c0f2d88ccfe02777f183eb785bb2b891aff168 Mon Sep 17 00:00:00 2001
-From: Paul Eggleton <paul.eggleton@linux.intel.com>
-Date: Tue, 17 Jul 2012 11:27:39 +0100
-Subject: [PATCH] Log the SELinux context at startup.
-
-Log the SELinux context at startup.
-
-Upstream-Status: Inappropriate [other]
-
-Note: unlikely to be any interest in this upstream
-
----
- configure.in | 5 +++++
- server/core.c | 26 ++++++++++++++++++++++++++
- 2 files changed, 31 insertions(+)
-
-diff --git a/configure.in b/configure.in
-index 761e836..d828512 100644
---- a/configure.in
-+++ b/configure.in
-@@ -483,6 +483,11 @@ getloadavg
- dnl confirm that a void pointer is large enough to store a long integer
- APACHE_CHECK_VOID_PTR_LEN
-
-+AC_CHECK_LIB(selinux, is_selinux_enabled, [
-+ AC_DEFINE(HAVE_SELINUX, 1, [Defined if SELinux is supported])
-+ APR_ADDTO(AP_LIBS, [-lselinux])
-+])
-+
- AC_CACHE_CHECK([for gettid()], ac_cv_gettid,
- [AC_TRY_RUN(#define _GNU_SOURCE
- #include <unistd.h>
-diff --git a/server/core.c b/server/core.c
-index 4fd2b9f..c61304a 100644
---- a/server/core.c
-+++ b/server/core.c
-@@ -59,6 +59,10 @@
- #include <unistd.h>
- #endif
-
-+#ifdef HAVE_SELINUX
-+#include <selinux/selinux.h>
-+#endif
-+
- /* LimitRequestBody handling */
- #define AP_LIMIT_REQ_BODY_UNSET ((apr_off_t) -1)
- #define AP_DEFAULT_LIMIT_REQ_BODY ((apr_off_t) 0)
-@@ -4959,6 +4963,28 @@ static int core_post_config(apr_pool_t *pconf, apr_pool_t *plog, apr_pool_t *pte
- }
- #endif
-
-+#ifdef HAVE_SELINUX
-+ {
-+ static int already_warned = 0;
-+ int is_enabled = is_selinux_enabled() > 0;
-+
-+ if (is_enabled && !already_warned) {
-+ security_context_t con;
-+
-+ if (getcon(&con) == 0) {
-+
-+ ap_log_error(APLOG_MARK, APLOG_NOTICE, 0, NULL,
-+ "SELinux policy enabled; "
-+ "httpd running as context %s", con);
-+
-+ already_warned = 1;
-+
-+ freecon(con);
-+ }
-+ }
-+ }
-+#endif
-+
- return OK;
- }
-
diff --git a/meta-openembedded/meta-webserver/recipes-httpd/apache2/apache2/httpd-2.4.3-fix-race-issue-of-dir-install.patch b/meta-openembedded/meta-webserver/recipes-httpd/apache2/apache2/httpd-2.4.3-fix-race-issue-of-dir-install.patch
deleted file mode 100644
index 2262e9f..0000000
--- a/meta-openembedded/meta-webserver/recipes-httpd/apache2/apache2/httpd-2.4.3-fix-race-issue-of-dir-install.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From 3b079a9df7582e305246fd805837d87a2c4ef534 Mon Sep 17 00:00:00 2001
-From: Zhenhua Luo <zhenhua.luo@freescale.com>
-Date: Fri, 25 Jan 2013 18:10:50 +0800
-Subject: [PATCH] apache2: fix the race issue of parallel installation
-
-Upstream-Status: Pending
-
-fix following race issue when do parallel install
-| mkdir: cannot create directory `/home/mypc/workspace/poky/build_p4080ds_release/tmp/work/ppce500mc-fsl_networking-linux/apache2/2.4.3-r1/image/usr/share/apache2': File exists
-...
-| mkdir: cannot create directory `/home/mypc/workspace/poky/build_p4080ds_release/tmp/work/ppce500mc-fsl_networking-linux/apache2/2.4.3-r1/image/usr/share/apache2': File exists
-| make[1]: *** [install-man] Error 1
-| make[1]: *** Waiting for unfinished jobs....
-
-Signed-off-by: Zhenhua Luo <zhenhua.luo@freescale.com>
-
----
- build/mkdir.sh | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/build/mkdir.sh b/build/mkdir.sh
-index e2d5bb6..dde5ae0 100755
---- a/build/mkdir.sh
-+++ b/build/mkdir.sh
-@@ -39,7 +39,7 @@ for file in ${1+"$@"} ; do
- esac
- if test ! -d "$pathcomp"; then
- echo "mkdir $pathcomp" 1>&2
-- mkdir "$pathcomp" || errstatus=$?
-+ mkdir -p "$pathcomp" || errstatus=$?
- fi
- pathcomp="$pathcomp/"
- done
diff --git a/meta-openembedded/meta-webserver/recipes-httpd/apache2/apache2/httpd-2.4.4-export.patch b/meta-openembedded/meta-webserver/recipes-httpd/apache2/apache2/httpd-2.4.4-export.patch
deleted file mode 100644
index 843226c..0000000
--- a/meta-openembedded/meta-webserver/recipes-httpd/apache2/apache2/httpd-2.4.4-export.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From a5627edbcc88cd50caaa42ca051ac7ed3d870172 Mon Sep 17 00:00:00 2001
-From: Paul Eggleton <paul.eggleton@linux.intel.com>
-Date: Tue, 17 Jul 2012 11:27:39 +0100
-Subject: [PATCH] apache2: add from OE-Classic, update to version 2.4.2 and fix
-
-There is no need to "suck in" the apr/apr-util symbols when using
-a shared libapr{,util}, it just bloats the symbol table; so don't.
-
-Upstream-Status: Pending
-
-Note: EXPORT_DIRS change is conditional on using shared apr
-
----
- server/Makefile.in | 3 ---
- 1 file changed, 3 deletions(-)
-
-diff --git a/server/Makefile.in b/server/Makefile.in
-index cb11684..0d48924 100644
---- a/server/Makefile.in
-+++ b/server/Makefile.in
-@@ -60,9 +60,6 @@ export_files:
- ls $$dir/*.h ; \
- done; \
- echo "$(top_srcdir)/server/mpm_fdqueue.h"; \
-- for dir in $(EXPORT_DIRS_APR); do \
-- ls $$dir/ap[ru].h $$dir/ap[ru]_*.h 2>/dev/null; \
-- done; \
- ) | sed -e s,//,/,g | sort -u > $@
-
- exports.c: export_files
diff --git a/meta-openembedded/meta-webserver/recipes-httpd/apache2/apache2/replace-lynx-to-curl-in-apachectl-script.patch b/meta-openembedded/meta-webserver/recipes-httpd/apache2/apache2/replace-lynx-to-curl-in-apachectl-script.patch
deleted file mode 100644
index 020f1d7..0000000
--- a/meta-openembedded/meta-webserver/recipes-httpd/apache2/apache2/replace-lynx-to-curl-in-apachectl-script.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-From 94a9e2241ea27e75babbfdeb38043b13049e23b0 Mon Sep 17 00:00:00 2001
-From: Yulong Pei <Yulong.pei@windriver.com>
-Date: Thu, 1 Sep 2011 01:03:14 +0800
-Subject: [PATCH] replace lynx to curl in apachectl script
-
-Upstream-Status: Inappropriate [configuration]
-
-Signed-off-by: Yulong Pei <Yulong.pei@windriver.com>
-
----
- support/apachectl.in | 14 ++++++++++----
- 1 file changed, 10 insertions(+), 4 deletions(-)
-
-diff --git a/support/apachectl.in b/support/apachectl.in
-index 3281c2e..6ab4ba5 100644
---- a/support/apachectl.in
-+++ b/support/apachectl.in
-@@ -52,11 +52,11 @@ fi
- # a command that outputs a formatted text version of the HTML at the
- # url given on the command line. Designed for lynx, however other
- # programs may work.
--LYNX="@LYNX_PATH@ -dump"
-+CURL="/usr/bin/curl"
- #
- # the URL to your server's mod_status status page. If you do not
- # have one, then status and fullstatus will not work.
--STATUSURL="http://localhost:@PORT@/server-status"
-+STATUSURL="http://localhost:@PORT@/"
- #
- # Set this variable to a command that increases the maximum
- # number of file descriptors allowed per child process. This is
-@@ -92,10 +92,16 @@ configtest)
- ERROR=$?
- ;;
- status)
-- $LYNX $STATUSURL | awk ' /process$/ { print; exit } { print } '
-+ $CURL -s $STATUSURL | grep -o "It works!"
-+ if [ $? != 0 ] ; then
-+ echo The httpd server does not work!
-+ fi
- ;;
- fullstatus)
-- $LYNX $STATUSURL
-+ $CURL -s $STATUSURL | grep -o "It works!"
-+ if [ $? != 0 ] ; then
-+ echo The httpd server does not work!
-+ fi
- ;;
- *)
- $HTTPD "$@"
diff --git a/meta-openembedded/meta-webserver/recipes-httpd/apache2/apache2/server-makefile.patch b/meta-openembedded/meta-webserver/recipes-httpd/apache2/apache2/server-makefile.patch
deleted file mode 100644
index 5476d4f..0000000
--- a/meta-openembedded/meta-webserver/recipes-httpd/apache2/apache2/server-makefile.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-From aa02bbfd8f16871db5563a95fa94dd170964949f Mon Sep 17 00:00:00 2001
-From: Paul Eggleton <paul.eggleton@linux.intel.com>
-Date: Tue, 17 Jul 2012 11:27:39 +0100
-
-Upstream-Status: Inappropriate [embedded specific]
-
----
- server/Makefile.in | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/server/Makefile.in b/server/Makefile.in
-index 1fa3344..cb11684 100644
---- a/server/Makefile.in
-+++ b/server/Makefile.in
-@@ -29,7 +29,7 @@ gen_test_char: $(gen_test_char_OBJECTS)
- $(LINK) $(EXTRA_LDFLAGS) $(gen_test_char_OBJECTS) $(EXTRA_LIBS)
-
- test_char.h: gen_test_char
-- ./gen_test_char > test_char.h
-+ gen_test_char > test_char.h
-
- util.lo: test_char.h
-
diff --git a/meta-openembedded/meta-webserver/recipes-httpd/apache2/apache2_2.4.34.bb b/meta-openembedded/meta-webserver/recipes-httpd/apache2/apache2_2.4.34.bb
deleted file mode 100644
index 80c8b20..0000000
--- a/meta-openembedded/meta-webserver/recipes-httpd/apache2/apache2_2.4.34.bb
+++ /dev/null
@@ -1,202 +0,0 @@
-DESCRIPTION = "The Apache HTTP Server is a powerful, efficient, and \
-extensible web server."
-SUMMARY = "Apache HTTP Server"
-HOMEPAGE = "http://httpd.apache.org/"
-DEPENDS = "libtool-native apache2-native openssl expat pcre apr apr-util"
-SECTION = "net"
-LICENSE = "Apache-2.0"
-
-SRC_URI = "${APACHE_MIRROR}/httpd/httpd-${PV}.tar.bz2 \
- file://server-makefile.patch \
- file://httpd-2.4.1-corelimit.patch \
- file://httpd-2.4.4-export.patch \
- file://httpd-2.4.1-selinux.patch \
- file://apache-configure_perlbin.patch \
- file://replace-lynx-to-curl-in-apachectl-script.patch \
- file://httpd-2.4.3-fix-race-issue-of-dir-install.patch \
- file://0001-configure-use-pkg-config-for-PCRE-detection.patch \
- file://configure-allow-to-disable-selinux-support.patch \
- file://CVE-2018-11763.patch \
- file://init \
- file://apache2-volatile.conf \
- file://apache2.service \
- file://volatiles.04_apache2 \
- "
-
-LIC_FILES_CHKSUM = "file://LICENSE;md5=d52d0fd0bc788f068e647116c01ddfcd"
-SRC_URI[md5sum] = "818adca52f3be187fe45d6822755be95"
-SRC_URI[sha256sum] = "fa53c95631febb08a9de41fd2864cfff815cf62d9306723ab0d4b8d7aa1638f0"
-
-S = "${WORKDIR}/httpd-${PV}"
-
-inherit autotools update-rc.d pkgconfig systemd update-alternatives
-
-CVE_PRODUCT = "http_server"
-
-ALTERNATIVE_${PN}-doc = "htpasswd.1"
-ALTERNATIVE_LINK_NAME[htpasswd.1] = "${mandir}/man1/htpasswd.1"
-
-SYSTEMD_SERVICE_${PN} = "apache2.service"
-SYSTEMD_AUTO_ENABLE_${PN} = "disable"
-
-SSTATE_SCAN_FILES += "apxs config_vars.mk config.nice"
-
-CFLAGS_append = " -DPATH_MAX=4096"
-CFLAGS_prepend = "-I${STAGING_INCDIR}/openssl "
-EXTRA_OECONF = "--enable-ssl \
- --with-ssl=${STAGING_LIBDIR}/.. \
- --with-expat=${STAGING_LIBDIR}/.. \
- --with-apr=${STAGING_BINDIR_CROSS}/apr-1-config \
- --with-apr-util=${STAGING_BINDIR_CROSS}/apu-1-config \
- --enable-info \
- --enable-rewrite \
- --with-dbm=sdbm \
- --with-berkeley-db=no \
- --localstatedir=/var/${BPN} \
- --with-gdbm=no \
- --with-ndbm=no \
- --includedir=${includedir}/${BPN} \
- --datadir=${datadir}/${BPN} \
- --sysconfdir=${sysconfdir}/${BPN} \
- --libexecdir=${libdir}/${BPN}/modules \
- ap_cv_void_ptr_lt_long=no \
- --enable-mpms-shared \
- ac_cv_have_threadsafe_pollset=no \
- --enable-layout=Debian \
- --prefix=${base_prefix}/"
-
-PACKAGECONFIG ?= "${@bb.utils.filter('DISTRO_FEATURES', 'selinux', d)}"
-PACKAGECONFIG[selinux] = "--enable-selinux,--disable-selinux,libselinux,libselinux"
-PACKAGECONFIG[openldap] = "--enable-ldap --enable-authnz-ldap,--disable-ldap --disable-authnz-ldap,openldap"
-PACKAGECONFIG[zlib] = "--enable-deflate --with-z=${STAGING_LIBDIR},,zlib,zlib"
-
-do_configure_prepend() {
- sed -i -e 's:$''{prefix}/usr/lib/cgi-bin:$''{libdir}/cgi-bin:g' ${S}/config.layout
-}
-
-do_install_append() {
- install -d ${D}/${sysconfdir}/init.d
- cat ${WORKDIR}/init | \
- sed -e 's,/usr/sbin/,${sbindir}/,g' \
- -e 's,/usr/bin/,${bindir}/,g' \
- -e 's,/usr/lib,${libdir}/,g' \
- -e 's,/etc/,${sysconfdir}/,g' \
- -e 's,/usr/,${prefix}/,g' > ${D}/${sysconfdir}/init.d/${BPN}
- chmod 755 ${D}/${sysconfdir}/init.d/${BPN}
- # remove the goofy original files...
- rm -rf ${D}/${sysconfdir}/${BPN}/original
- # Expat should be found in the staging area via DEPENDS...
- rm -f ${D}/${libdir}/libexpat.*
-
- install -d ${D}${sysconfdir}/${BPN}/conf.d
- install -d ${D}${sysconfdir}/${BPN}/modules.d
-
- # Ensure configuration file pulls in conf.d and modules.d
- printf "\nIncludeOptional ${sysconfdir}/${BPN}/conf.d/*.conf" >> ${D}/${sysconfdir}/${BPN}/httpd.conf
- printf "\nIncludeOptional ${sysconfdir}/${BPN}/modules.d/*.load" >> ${D}/${sysconfdir}/${BPN}/httpd.conf
- printf "\nIncludeOptional ${sysconfdir}/${BPN}/modules.d/*.conf\n\n" >> ${D}/${sysconfdir}/${BPN}/httpd.conf
- # match with that is in init script
- printf "\nPidFile /run/httpd.pid" >> ${D}/${sysconfdir}/${BPN}/httpd.conf
- # Set 'ServerName' to fix error messages when restart apache service
- sed -i 's/^#ServerName www.example.com/ServerName localhost/' ${D}/${sysconfdir}/${BPN}/httpd.conf
-
- if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then
- install -d ${D}${sysconfdir}/tmpfiles.d/
- install -m 0644 ${WORKDIR}/apache2-volatile.conf ${D}${sysconfdir}/tmpfiles.d/
- elif ${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'true', 'false', d)}; then
- install -d ${D}${sysconfdir}/default/volatiles
- install -m 0644 ${WORKDIR}/volatiles.04_apache2 ${D}${sysconfdir}/default/volatiles/04_apache2
- fi
-
- install -d ${D}${systemd_unitdir}/system
- install -m 0644 ${WORKDIR}/apache2.service ${D}${systemd_unitdir}/system
- sed -i -e 's,@SBINDIR@,${sbindir},g' ${D}${systemd_unitdir}/system/apache2.service
- sed -i -e 's,@BASE_BINDIR@,${base_bindir},g' ${D}${systemd_unitdir}/system/apache2.service
-
- chown -R root:root ${D}
-}
-
-do_install_append_class-target() {
- sed -i -e 's,${STAGING_DIR_HOST},,g' \
- -e 's,APU_INCLUDEDIR = .*,APU_INCLUDEDIR = ,g' \
- -e 's,APU_CONFIG = .*,APU_CONFIG = ,g' ${D}${datadir}/apache2/build/config_vars.mk
-
- sed -i -e 's,${STAGING_DIR_HOST},,g' \
- -e 's,".*/configure","configure",g' ${D}${datadir}/apache2/build/config.nice
- rm -rf ${D}${localstatedir}/run
-}
-
-SYSROOT_PREPROCESS_FUNCS += "apache_sysroot_preprocess"
-
-apache_sysroot_preprocess () {
- install -d ${SYSROOT_DESTDIR}${bindir_crossscripts}/
- install -m 755 ${D}${bindir}/apxs ${SYSROOT_DESTDIR}${bindir_crossscripts}/
- install -d ${SYSROOT_DESTDIR}${sbindir}/
- install -m 755 ${D}${sbindir}/apachectl ${SYSROOT_DESTDIR}${sbindir}/
- sed -i 's!my $installbuilddir = .*!my $installbuilddir = "${STAGING_DIR_HOST}/${datadir}/${BPN}/build";!' ${SYSROOT_DESTDIR}${bindir_crossscripts}/apxs
- sed -i 's!my $libtool = .*!my $libtool = "${STAGING_BINDIR_CROSS}/${HOST_SYS}-libtool";!' ${SYSROOT_DESTDIR}${bindir_crossscripts}/apxs
-
- sed -i 's!^APR_CONFIG = .*!APR_CONFIG = ${STAGING_BINDIR_CROSS}/apr-1-config!' ${SYSROOT_DESTDIR}${datadir}/${BPN}/build/config_vars.mk
- sed -i 's!^APU_CONFIG = .*!APU_CONFIG = ${STAGING_BINDIR_CROSS}/apu-1-config!' ${SYSROOT_DESTDIR}${datadir}/${BPN}/build/config_vars.mk
- sed -i 's!^includedir = .*!includedir = ${STAGING_INCDIR}/apache2!' ${SYSROOT_DESTDIR}${datadir}/${BPN}/build/config_vars.mk
- sed -i 's!^CFLAGS = -I[^ ]*!CFLAGS = -I${STAGING_INCDIR}/openssl!' ${SYSROOT_DESTDIR}${datadir}/${BPN}/build/config_vars.mk
- sed -i 's!^EXTRA_LDFLAGS = .*!EXTRA_LDFLAGS = -L${STAGING_LIBDIR}!' ${SYSROOT_DESTDIR}${datadir}/${BPN}/build/config_vars.mk
- sed -i 's!^EXTRA_INCLUDES = .*!EXTRA_INCLUDES = -I$(includedir) -I. -I${STAGING_INCDIR}!' ${SYSROOT_DESTDIR}${datadir}/${BPN}/build/config_vars.mk
- sed -i 's!--sysroot=[^ ]*!--sysroot=${STAGING_DIR_HOST}!' ${SYSROOT_DESTDIR}${datadir}/${BPN}/build/config_vars.mk
-}
-
-#
-# implications - used by update-rc.d scripts
-#
-INITSCRIPT_NAME = "apache2"
-INITSCRIPT_PARAMS = "defaults 91 20"
-LEAD_SONAME = "libapr-1.so.0"
-
-PACKAGES = "${PN}-scripts ${PN}-doc ${PN}-dev ${PN}-dbg ${PN}"
-
-CONFFILES_${PN} = "${sysconfdir}/${BPN}/httpd.conf \
- ${sysconfdir}/${BPN}/magic \
- ${sysconfdir}/${BPN}/mime.types \
- ${sysconfdir}/init.d/${BPN} "
-
-# we override here rather than append so that .so links are
-# included in the runtime package rather than here (-dev)
-# and to get build, icons, error into the -dev package
-FILES_${PN}-dev = "${datadir}/${BPN}/build \
- ${datadir}/${BPN}/icons \
- ${datadir}/${BPN}/error \
- ${bindir}/apr-config ${bindir}/apu-config \
- ${libdir}/apr*.exp \
- ${includedir}/${BPN} \
- ${libdir}/*.la \
- ${libdir}/*.a \
- ${bindir}/apxs \
- "
-
-
-# manual to manual
-FILES_${PN}-doc += " ${datadir}/${BPN}/manual"
-
-FILES_${PN}-scripts += "${bindir}/dbmmanage"
-
-#
-# override this too - here is the default, less datadir
-#
-FILES_${PN} = "${bindir} ${sbindir} ${libexecdir} ${libdir}/lib*.so.* ${sysconfdir} \
- ${sharedstatedir} ${localstatedir} /bin /sbin /lib/*.so* \
- ${libdir}/${BPN}"
-
-# we want htdocs and cgi-bin to go with the binary
-FILES_${PN} += "${datadir}/${BPN}/htdocs ${datadir}/${BPN}/cgi-bin"
-
-#make sure the lone .so links also get wrapped in the base package
-FILES_${PN} += "${libdir}/lib*.so ${libdir}/pkgconfig/*"
-
-FILES_${PN}-dbg += "${libdir}/${BPN}/modules/.debug"
-
-RDEPENDS_${PN} += "openssl libgcc"
-RDEPENDS_${PN}-scripts += "perl ${PN}"
-RDEPENDS_${PN}-dev = "perl"
-
-FILES_${PN} += "${libdir}/cgi-bin"
-FILES_${PN} += "${datadir}/${BPN}/"
diff --git a/meta-openembedded/meta-webserver/recipes-httpd/apache2/apache2_2.4.39.bb b/meta-openembedded/meta-webserver/recipes-httpd/apache2/apache2_2.4.39.bb
new file mode 100644
index 0000000..4cdf36c
--- /dev/null
+++ b/meta-openembedded/meta-webserver/recipes-httpd/apache2/apache2_2.4.39.bb
@@ -0,0 +1,214 @@
+DESCRIPTION = "The Apache HTTP Server is a powerful, efficient, and \
+extensible web server."
+SUMMARY = "Apache HTTP Server"
+HOMEPAGE = "http://httpd.apache.org/"
+SECTION = "net"
+LICENSE = "Apache-2.0"
+
+SRC_URI = "${APACHE_MIRROR}/httpd/httpd-${PV}.tar.bz2 \
+ file://0001-configure-use-pkg-config-for-PCRE-detection.patch \
+ file://0002-apache2-bump-up-the-core-size-limit-if-CoreDumpDirec.patch \
+ file://0003-apache2-do-not-export-apr-apr-util-symbols-when-usin.patch \
+ file://0004-apache2-log-the-SELinux-context-at-startup.patch \
+ file://0005-replace-lynx-to-curl-in-apachectl-script.patch \
+ file://0006-apache2-fix-the-race-issue-of-parallel-installation.patch \
+ file://0007-apache2-allow-to-disable-selinux-support.patch \
+ file://apache-configure_perlbin.patch \
+ "
+
+SRC_URI_append_class-target = " \
+ file://0008-apache2-do-not-use-relative-path-for-gen_test_char.patch \
+ file://init \
+ file://apache2-volatile.conf \
+ file://apache2.service \
+ file://volatiles.04_apache2 \
+ "
+
+LIC_FILES_CHKSUM = "file://LICENSE;md5=d52d0fd0bc788f068e647116c01ddfcd"
+SRC_URI[md5sum] = "930e217ba2d71e708a3f1521ecae7ec0"
+SRC_URI[sha256sum] = "b4ca9d05773aa59b54d66cd8f4744b945289f084d3be17d7981d1783a5decfa2"
+
+S = "${WORKDIR}/httpd-${PV}"
+
+inherit autotools update-rc.d pkgconfig systemd update-alternatives
+
+DEPENDS = "openssl expat pcre apr apr-util apache2-native "
+
+CVE_PRODUCT = "http_server"
+
+SSTATE_SCAN_FILES += "apxs config_vars.mk config.nice"
+
+PACKAGECONFIG ?= "${@bb.utils.filter('DISTRO_FEATURES', 'selinux', d)}"
+PACKAGECONFIG[selinux] = "--enable-selinux,--disable-selinux,libselinux,libselinux"
+PACKAGECONFIG[openldap] = "--enable-ldap --enable-authnz-ldap,--disable-ldap --disable-authnz-ldap,openldap"
+PACKAGECONFIG[zlib] = "--enable-deflate,,zlib,zlib"
+
+CFLAGS_append = " -DPATH_MAX=4096"
+
+EXTRA_OECONF_class-target = "\
+ --enable-layout=Debian \
+ --prefix=${base_prefix} \
+ --exec_prefix=${exec_prefix} \
+ --includedir=${includedir}/${BPN} \
+ --sysconfdir=${sysconfdir}/${BPN} \
+ --datadir=${datadir}/${BPN} \
+ --libdir=${libdir} \
+ --libexecdir=${libdir}/${BPN}/modules \
+ --localstatedir=${localstatedir} \
+ --enable-ssl \
+ --with-dbm=sdbm \
+ --with-gdbm=no \
+ --with-ndbm=no \
+ --with-berkeley-db=no \
+ --enable-info \
+ --enable-rewrite \
+ --enable-mpms-shared \
+ ap_cv_void_ptr_lt_long=no \
+ ac_cv_have_threadsafe_pollset=no \
+ "
+
+EXTRA_OECONF_class-native = "\
+ --prefix=${prefix} \
+ --includedir=${includedir}/${BPN} \
+ --sysconfdir=${sysconfdir}/${BPN} \
+ --datadir=${datadir}/${BPN} \
+ --libdir=${libdir} \
+ --libexecdir=${libdir}/${BPN}/modules \
+ --localstatedir=${localstatedir} \
+ "
+
+do_configure_prepend() {
+ sed -i -e 's:$''{prefix}/usr/lib/cgi-bin:$''{libdir}/cgi-bin:g' ${S}/config.layout
+}
+
+do_install_append_class-target() {
+ install -d ${D}/${sysconfdir}/init.d
+
+ cat ${WORKDIR}/init | \
+ sed -e 's,/usr/sbin/,${sbindir}/,g' \
+ -e 's,/usr/bin/,${bindir}/,g' \
+ -e 's,/usr/lib/,${libdir}/,g' \
+ -e 's,/etc/,${sysconfdir}/,g' \
+ -e 's,/usr/,${prefix}/,g' > ${D}/${sysconfdir}/init.d/${BPN}
+
+ chmod 755 ${D}/${sysconfdir}/init.d/${BPN}
+
+ # Remove the goofy original files...
+ rm -rf ${D}/${sysconfdir}/${BPN}/original
+
+ install -d ${D}${sysconfdir}/${BPN}/conf.d
+ install -d ${D}${sysconfdir}/${BPN}/modules.d
+
+ # Ensure configuration file pulls in conf.d and modules.d
+ printf "\nIncludeOptional ${sysconfdir}/${BPN}/conf.d/*.conf" >> ${D}/${sysconfdir}/${BPN}/httpd.conf
+ printf "\nIncludeOptional ${sysconfdir}/${BPN}/modules.d/*.load" >> ${D}/${sysconfdir}/${BPN}/httpd.conf
+ printf "\nIncludeOptional ${sysconfdir}/${BPN}/modules.d/*.conf\n\n" >> ${D}/${sysconfdir}/${BPN}/httpd.conf
+
+ # Match with that is in init script
+ printf "\nPidFile /run/httpd.pid" >> ${D}/${sysconfdir}/${BPN}/httpd.conf
+
+ # Set 'ServerName' to fix error messages when restart apache service
+ sed -i 's/^#ServerName www.example.com/ServerName localhost/' ${D}/${sysconfdir}/${BPN}/httpd.conf
+
+ sed -i 's/^ServerRoot/#ServerRoot/' ${D}/${sysconfdir}/${BPN}/httpd.conf
+
+ sed -i -e 's,${STAGING_DIR_TARGET},,g' \
+ -e 's,${DEBUG_PREFIX_MAP},,g' \
+ -e 's,-fdebug-prefix-map[^ ]*,,g; s,-fmacro-prefix-map[^ ]*,,g' \
+ -e 's,${HOSTTOOLS_DIR}/,,g' \
+ -e 's,APU_INCLUDEDIR = .*,APU_INCLUDEDIR = ,g' \
+ -e 's,APU_CONFIG = .*,APU_CONFIG = ,g' ${D}${datadir}/apache2/build/config_vars.mk
+
+ sed -i -e 's,--sysroot=${STAGING_DIR_TARGET},,g' \
+ -e 's,${DEBUG_PREFIX_MAP},,g' \
+ -e 's,${RECIPE_SYSROOT},,g' \
+ -e 's,-fdebug-prefix-map[^ ]*,,g; s,-fmacro-prefix-map[^ ]*,,g' \
+ -e 's,APU_INCLUDEDIR = .*,APU_INCLUDEDIR = ,g' \
+ -e 's,".*/configure","configure",g' ${D}${datadir}/apache2/build/config.nice
+
+ if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then
+ install -d ${D}${sysconfdir}/tmpfiles.d/
+ install -m 0644 ${WORKDIR}/apache2-volatile.conf ${D}${sysconfdir}/tmpfiles.d/
+
+ install -d ${D}${systemd_unitdir}/system
+ install -m 0644 ${WORKDIR}/apache2.service ${D}${systemd_unitdir}/system
+ sed -i -e 's,@SBINDIR@,${sbindir},g' ${D}${systemd_unitdir}/system/apache2.service
+ sed -i -e 's,@BASE_BINDIR@,${base_bindir},g' ${D}${systemd_unitdir}/system/apache2.service
+ elif ${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'true', 'false', d)}; then
+ install -d ${D}${sysconfdir}/default/volatiles
+ install -m 0644 ${WORKDIR}/volatiles.04_apache2 ${D}${sysconfdir}/default/volatiles/04_apache2
+ fi
+
+ rm -rf ${D}${localstatedir}
+ chown -R root:root ${D}
+}
+
+do_install_append_class-native() {
+ install -d ${D}${bindir} ${D}${libdir}
+ install -m 755 server/gen_test_char ${D}${bindir}
+}
+
+SYSROOT_PREPROCESS_FUNCS_append_class-target = " apache_sysroot_preprocess"
+
+apache_sysroot_preprocess() {
+ install -d ${SYSROOT_DESTDIR}${bindir_crossscripts}
+ install -m 755 ${D}${bindir}/apxs ${SYSROOT_DESTDIR}${bindir_crossscripts}
+ install -d ${SYSROOT_DESTDIR}${sbindir}
+ install -m 755 ${D}${sbindir}/apachectl ${SYSROOT_DESTDIR}${sbindir}
+ sed -i 's!my $installbuilddir = .*!my $installbuilddir = "${STAGING_DIR_HOST}/${datadir}/${BPN}/build";!' ${SYSROOT_DESTDIR}${bindir_crossscripts}/apxs
+ sed -i 's!my $libtool = .*!my $libtool = "${STAGING_BINDIR_CROSS}/${HOST_SYS}-libtool";!' ${SYSROOT_DESTDIR}${bindir_crossscripts}/apxs
+
+ sed -i 's!^APR_CONFIG = .*!APR_CONFIG = ${STAGING_BINDIR_CROSS}/apr-1-config!' ${SYSROOT_DESTDIR}${datadir}/${BPN}/build/config_vars.mk
+ sed -i 's!^APU_CONFIG = .*!APU_CONFIG = ${STAGING_BINDIR_CROSS}/apu-1-config!' ${SYSROOT_DESTDIR}${datadir}/${BPN}/build/config_vars.mk
+ sed -i 's!^includedir = .*!includedir = ${STAGING_INCDIR}/apache2!' ${SYSROOT_DESTDIR}${datadir}/${BPN}/build/config_vars.mk
+ sed -i 's!^CFLAGS = -I[^ ]*!CFLAGS = -I${STAGING_INCDIR}/openssl!' ${SYSROOT_DESTDIR}${datadir}/${BPN}/build/config_vars.mk
+ sed -i 's!^EXTRA_LDFLAGS = .*!EXTRA_LDFLAGS = -L${STAGING_LIBDIR}!' ${SYSROOT_DESTDIR}${datadir}/${BPN}/build/config_vars.mk
+ sed -i 's!^EXTRA_INCLUDES = .*!EXTRA_INCLUDES = -I$(includedir) -I. -I${STAGING_INCDIR}!' ${SYSROOT_DESTDIR}${datadir}/${BPN}/build/config_vars.mk
+ sed -i 's!--sysroot=[^ ]*!--sysroot=${STAGING_DIR_HOST}!' ${SYSROOT_DESTDIR}${datadir}/${BPN}/build/config_vars.mk
+}
+
+# Implications - used by update-rc.d scripts
+INITSCRIPT_NAME = "apache2"
+INITSCRIPT_PARAMS = "defaults 91 20"
+
+SYSTEMD_SERVICE_${PN} = "apache2.service"
+SYSTEMD_AUTO_ENABLE_${PN} = "enable"
+
+ALTERNATIVE_${PN}-doc = "htpasswd.1"
+ALTERNATIVE_LINK_NAME[htpasswd.1] = "${mandir}/man1/htpasswd.1"
+
+PACKAGES = "${PN}-scripts ${PN}-doc ${PN}-dev ${PN}-dbg ${PN}"
+
+CONFFILES_${PN} = "${sysconfdir}/${BPN}/httpd.conf \
+ ${sysconfdir}/${BPN}/magic \
+ ${sysconfdir}/${BPN}/mime.types"
+
+# We override here rather than append so that .so links are
+# included in the runtime package rather than here (-dev)
+# and to get build, icons, error into the -dev package
+FILES_${PN}-dev = "${datadir}/${BPN}/build \
+ ${datadir}/${BPN}/icons \
+ ${datadir}/${BPN}/error \
+ ${includedir}/${BPN} \
+ ${bindir}/apxs \
+ "
+
+# Add the manual to -doc
+FILES_${PN}-doc += " ${datadir}/${BPN}/manual"
+
+FILES_${PN}-scripts += "${bindir}/dbmmanage"
+
+# Override this too - here is the default, less datadir
+FILES_${PN} = "${bindir} ${sbindir} ${libexecdir} ${libdir} \
+ ${sysconfdir} ${libdir}/${BPN}"
+
+# We want htdocs and cgi-bin to go with the binary
+FILES_${PN} += "${datadir}/${BPN}/ ${libdir}/cgi-bin"
+
+FILES_${PN}-dbg += "${libdir}/${BPN}/modules/.debug"
+
+RDEPENDS_${PN} += "openssl libgcc"
+RDEPENDS_${PN}-scripts += "perl ${PN}"
+RDEPENDS_${PN}-dev = "perl"
+
+BBCLASSEXTEND = "native"
diff --git a/meta-openembedded/meta-webserver/recipes-httpd/apache2/files/init b/meta-openembedded/meta-webserver/recipes-httpd/apache2/files/init
old mode 100755
new mode 100644
diff --git a/meta-openembedded/meta-webserver/recipes-php/phpmyadmin/phpmyadmin_4.8.3.bb b/meta-openembedded/meta-webserver/recipes-php/phpmyadmin/phpmyadmin_4.8.3.bb
deleted file mode 100644
index 975f631..0000000
--- a/meta-openembedded/meta-webserver/recipes-php/phpmyadmin/phpmyadmin_4.8.3.bb
+++ /dev/null
@@ -1,41 +0,0 @@
-SUMMARY = "Web-based MySQL administration interface"
-HOMEPAGE = "http://www.phpmyadmin.net"
-# Main code is GPLv2, vendor/tecnickcom/tcpdf is under LGPLv3, js/jquery is under MIT
-LICENSE = "GPLv2 & LGPLv3 & MIT"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
- file://vendor/tecnickcom/tcpdf/LICENSE.TXT;md5=5c87b66a5358ebcc495b03e0afcd342c \
- file://js/vendor/jquery/MIT-LICENSE.txt;md5=e43aa437a6a1ba421653bd5034333bf9 \
-"
-
-SRC_URI = "https://files.phpmyadmin.net/phpMyAdmin/${PV}/phpMyAdmin-${PV}-all-languages.tar.xz \
- file://apache.conf \
-"
-
-SRC_URI[md5sum] = "c8a603f4b78d1dbcefc191b8ae598c79"
-SRC_URI[sha256sum] = "95f2692094d31c2c323d4767023583ab112ad54fff9e3af372710fcb676151af"
-
-UPSTREAM_CHECK_URI = "https://www.phpmyadmin.net/downloads/"
-UPSTREAM_CHECK_REGEX = "phpMyAdmin-(?P<pver>\d+(\.\d+)+)-all-languages.tar.xz"
-
-S = "${WORKDIR}/phpMyAdmin-${PV}-all-languages"
-
-inherit allarch
-
-do_install() {
- install -d ${D}${datadir}/${BPN}
- cp -R --no-dereference --preserve=mode,links -v * ${D}${datadir}/${BPN}
- chown -R root:root ${D}${datadir}/${BPN}
- # Don't install patches to target
- rm -rf ${D}${datadir}/${BPN}/patches
-
- install -d ${D}${sysconfdir}/apache2/conf.d
- install -m 0644 ${WORKDIR}/apache.conf ${D}${sysconfdir}/apache2/conf.d/phpmyadmin.conf
-
- # Remove a few scripts that explicitly require bash (!)
- rm -f ${D}${datadir}/phpmyadmin/libraries/transformations/*.sh
-}
-
-FILES_${PN} = "${datadir}/${BPN} \
- ${sysconfdir}/apache2/conf.d"
-
-RDEPENDS_${PN} += "bash php-cli"
diff --git a/meta-openembedded/meta-webserver/recipes-php/phpmyadmin/phpmyadmin_4.8.5.bb b/meta-openembedded/meta-webserver/recipes-php/phpmyadmin/phpmyadmin_4.8.5.bb
new file mode 100644
index 0000000..99678e6
--- /dev/null
+++ b/meta-openembedded/meta-webserver/recipes-php/phpmyadmin/phpmyadmin_4.8.5.bb
@@ -0,0 +1,41 @@
+SUMMARY = "Web-based MySQL administration interface"
+HOMEPAGE = "http://www.phpmyadmin.net"
+# Main code is GPLv2, vendor/tecnickcom/tcpdf is under LGPLv3, js/jquery is under MIT
+LICENSE = "GPLv2 & LGPLv3 & MIT"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
+ file://vendor/tecnickcom/tcpdf/LICENSE.TXT;md5=5c87b66a5358ebcc495b03e0afcd342c \
+ file://js/vendor/jquery/MIT-LICENSE.txt;md5=e43aa437a6a1ba421653bd5034333bf9 \
+"
+
+SRC_URI = "https://files.phpmyadmin.net/phpMyAdmin/${PV}/phpMyAdmin-${PV}-all-languages.tar.xz \
+ file://apache.conf \
+"
+
+SRC_URI[md5sum] = "e3737a28fff076003e56a83fe1920d04"
+SRC_URI[sha256sum] = "d7ab5df4e464d7ba17bf2a42da7d7f26dad45c34bf321ac8ae7d2ed748413913"
+
+UPSTREAM_CHECK_URI = "https://www.phpmyadmin.net/downloads/"
+UPSTREAM_CHECK_REGEX = "phpMyAdmin-(?P<pver>\d+(\.\d+)+)-all-languages.tar.xz"
+
+S = "${WORKDIR}/phpMyAdmin-${PV}-all-languages"
+
+inherit allarch
+
+do_install() {
+ install -d ${D}${datadir}/${BPN}
+ cp -R --no-dereference --preserve=mode,links -v * ${D}${datadir}/${BPN}
+ chown -R root:root ${D}${datadir}/${BPN}
+ # Don't install patches to target
+ rm -rf ${D}${datadir}/${BPN}/patches
+
+ install -d ${D}${sysconfdir}/apache2/conf.d
+ install -m 0644 ${WORKDIR}/apache.conf ${D}${sysconfdir}/apache2/conf.d/phpmyadmin.conf
+
+ # Remove a few scripts that explicitly require bash (!)
+ rm -f ${D}${datadir}/phpmyadmin/libraries/transformations/*.sh
+}
+
+FILES_${PN} = "${datadir}/${BPN} \
+ ${sysconfdir}/apache2/conf.d"
+
+RDEPENDS_${PN} += "bash php-cli"
diff --git a/meta-openembedded/meta-xfce/README b/meta-openembedded/meta-xfce/README
index 7431e8b..84b0198 100644
--- a/meta-openembedded/meta-xfce/README
+++ b/meta-openembedded/meta-xfce/README
@@ -19,4 +19,3 @@
When sending single patches, please using something like:
'git send-email -M -1 --to openembedded-devel@lists.openembedded.org --subject-prefix=meta-xfce][PATCH'
-Layer maintainer: Andreas Müller <schnitzeltony@googlemail.com>
diff --git a/meta-openembedded/meta-xfce/conf/layer.conf b/meta-openembedded/meta-xfce/conf/layer.conf
index 6e9d892..da07f8e 100644
--- a/meta-openembedded/meta-xfce/conf/layer.conf
+++ b/meta-openembedded/meta-xfce/conf/layer.conf
@@ -17,9 +17,6 @@
LAYERDEPENDS_xfce-layer += "gnome-layer"
LAYERDEPENDS_xfce-layer += "multimedia-layer"
LAYERDEPENDS_xfce-layer += "meta-python"
+LAYERDEPENDS_xfce-layer += "networking-layer"
LAYERSERIES_COMPAT_xfce-layer = "thud warrior"
-
-SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS += " \
- xfce4-session->machine-host \
-"
diff --git a/meta-openembedded/meta-xfce/recipes-apps/ristretto/ristretto_0.8.3.bb b/meta-openembedded/meta-xfce/recipes-apps/ristretto/ristretto_0.8.3.bb
deleted file mode 100644
index d9b9b2c..0000000
--- a/meta-openembedded/meta-xfce/recipes-apps/ristretto/ristretto_0.8.3.bb
+++ /dev/null
@@ -1,16 +0,0 @@
-SUMMARY = "Tiny image-viewer"
-HOMEPAGE = "http://goodies.xfce.org/projects/applications/ristretto"
-SECTION = "x11/application"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=35d145429ad3cbf5308d1dc93f66376b"
-DEPENDS = "exo libexif gtk+ dbus-glib libxfce4ui libxfce4util xfconf cairo file"
-
-inherit xfce-app
-
-RRECOMMENDS_${PN} += "tumbler"
-
-SRC_URI[md5sum] = "5866b4e11c32a38f72bc737239102544"
-SRC_URI[sha256sum] = "8c9c11760816dfd9ed57fb8b9df86c6a98a2604ab551be3133996a1c32ca2665"
-SRC_URI += "file://0001-Fix-build-after-update-of-xfconf.patch"
-
-FILES_${PN} += "${datadir}/appdata"
diff --git a/meta-openembedded/meta-xfce/recipes-apps/ristretto/ristretto_0.8.4.bb b/meta-openembedded/meta-xfce/recipes-apps/ristretto/ristretto_0.8.4.bb
new file mode 100644
index 0000000..416ac2a
--- /dev/null
+++ b/meta-openembedded/meta-xfce/recipes-apps/ristretto/ristretto_0.8.4.bb
@@ -0,0 +1,16 @@
+SUMMARY = "Tiny image-viewer"
+HOMEPAGE = "http://goodies.xfce.org/projects/applications/ristretto"
+SECTION = "x11/application"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=35d145429ad3cbf5308d1dc93f66376b"
+DEPENDS = "exo libexif gtk+ dbus-glib libxfce4ui libxfce4util xfconf cairo file"
+
+inherit xfce-app
+
+RRECOMMENDS_${PN} += "tumbler"
+
+SRC_URI[md5sum] = "0142c8b9c492cf447e563b00c6204359"
+SRC_URI[sha256sum] = "3a0be4526c93ec0ebbf2e63e69dd0c98f16b20b863d3b6426272592e5b00cea2"
+SRC_URI += "file://0001-Fix-build-after-update-of-xfconf.patch"
+
+FILES_${PN} += "${datadir}/appdata"
diff --git a/meta-openembedded/meta-xfce/recipes-apps/xfce4-notifyd/xfce4-notifyd_0.4.3.bb b/meta-openembedded/meta-xfce/recipes-apps/xfce4-notifyd/xfce4-notifyd_0.4.3.bb
deleted file mode 100644
index d771905..0000000
--- a/meta-openembedded/meta-xfce/recipes-apps/xfce4-notifyd/xfce4-notifyd_0.4.3.bb
+++ /dev/null
@@ -1,35 +0,0 @@
-SUMMARY = "Easily themable notification daemon with transparency effects"
-HOMEPAGE = "http://goodies.xfce.org/projects/applications/xfce4-notifyd"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
-DEPENDS = " \
- dbus \
- dbus-glib \
- dbus-glib-native \
- libnotify \
- libxfce4util \
- libxfce4ui \
- xfconf \
- xfce4-panel \
-"
-
-inherit xfce-app
-
-SRC_URI[md5sum] = "4887c62dfcb4c3e4f45c9acfb3def515"
-SRC_URI[sha256sum] = "293dda084cfca4887ae740e2725fdfc64412bc10eac7a55a924eb14482dceac0"
-
-# Avoid trouble with other desktops e.g KDE which also ships dbus service named
-# org.freedesktop.Notifications
-EXTRA_OECONF = "--disable-dbus-start-daemon"
-
-do_compile_prepend() {
- mkdir -p xfce4-notifyd xfce4-notifyd-config
-}
-
-FILES_${PN} += " \
- ${systemd_user_unitdir} \
- ${datadir}/xfce4 \
- ${datadir}/themes \
- ${datadir}/dbus-1 \
- ${libdir}/xfce4 \
-"
diff --git a/meta-openembedded/meta-xfce/recipes-apps/xfce4-notifyd/xfce4-notifyd_0.4.4.bb b/meta-openembedded/meta-xfce/recipes-apps/xfce4-notifyd/xfce4-notifyd_0.4.4.bb
new file mode 100644
index 0000000..06ab0df
--- /dev/null
+++ b/meta-openembedded/meta-xfce/recipes-apps/xfce4-notifyd/xfce4-notifyd_0.4.4.bb
@@ -0,0 +1,34 @@
+SUMMARY = "Easily themable notification daemon with transparency effects"
+HOMEPAGE = "http://goodies.xfce.org/projects/applications/xfce4-notifyd"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
+DEPENDS = " \
+ dbus \
+ dbus-glib \
+ libnotify \
+ libxfce4util \
+ libxfce4ui \
+ xfconf \
+ xfce4-panel \
+"
+
+inherit xfce-app
+
+SRC_URI[md5sum] = "9614d4f7c0790e8ab24e55896a44a8ac"
+SRC_URI[sha256sum] = "090571acf94c423003426cb779fb23e8545c68bab6485563b589c7def8a21b55"
+
+# Avoid trouble with other desktops e.g KDE which also ships dbus service named
+# org.freedesktop.Notifications
+EXTRA_OECONF = "--disable-dbus-start-daemon"
+
+do_compile_prepend() {
+ mkdir -p xfce4-notifyd xfce4-notifyd-config
+}
+
+FILES_${PN} += " \
+ ${systemd_user_unitdir} \
+ ${datadir}/xfce4 \
+ ${datadir}/themes \
+ ${datadir}/dbus-1 \
+ ${libdir}/xfce4 \
+"
diff --git a/meta-openembedded/meta-xfce/recipes-apps/xfce4-terminal/xfce4-terminal_0.8.7.4.bb b/meta-openembedded/meta-xfce/recipes-apps/xfce4-terminal/xfce4-terminal_0.8.7.4.bb
index 7fc638e..426282e 100644
--- a/meta-openembedded/meta-xfce/recipes-apps/xfce4-terminal/xfce4-terminal_0.8.7.4.bb
+++ b/meta-openembedded/meta-xfce/recipes-apps/xfce4-terminal/xfce4-terminal_0.8.7.4.bb
@@ -10,3 +10,5 @@
SRC_URI[md5sum] = "c861540dd1dd05f56e62382b3851cf66"
SRC_URI[sha256sum] = "a88f98af4da72394f2cfbd7f14b0f053ec0a3b58a4f6a577836357c60a6c42ab"
+
+RRECOMMENDS_${PN} += "vte-prompt"
diff --git a/meta-openembedded/meta-xfce/recipes-bindings/vala/xfce4-vala/0001-configure.ac-Detect-vapidir-if-not-set-explicitly.patch b/meta-openembedded/meta-xfce/recipes-bindings/vala/xfce4-vala/0001-configure.ac-Detect-vapidir-if-not-set-explicitly.patch
new file mode 100644
index 0000000..a3a9330
--- /dev/null
+++ b/meta-openembedded/meta-xfce/recipes-bindings/vala/xfce4-vala/0001-configure.ac-Detect-vapidir-if-not-set-explicitly.patch
@@ -0,0 +1,31 @@
+From 35267d995a81263b98f0ad56399ac3e30f9cf152 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
+Date: Tue, 30 Apr 2019 09:48:08 +0200
+Subject: [PATCH] configure.ac: Detect vala-api version if not set explicitly
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Upstream-Status: Pending
+
+Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
+---
+ configure.ac | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/configure.ac b/configure.ac
+index 9bf4230..c489385 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -38,7 +38,7 @@ AC_ARG_WITH([vala-api],
+ AC_HELP_STRING([--with-vala-api=VERSION],
+ [Use Vala API version VERSION]),
+ [vala_api=$withval],
+- [vala_api='0.16'])
++ [vala_api=`$PKG_CONFIG --variable=vapidir_versioned vapigen | sed -e 's:.*vala-::' -e s:/vapi::`])
+ M8T_CHECK_VALA([$vala_api])
+ AC_ARG_WITH([default-vapidir],
+ AC_HELP_STRING([--with-default-vapidir],
+--
+2.20.1
+
diff --git a/meta-openembedded/meta-xfce/recipes-bindings/vala/xfce4-vala_4.10.3.bb b/meta-openembedded/meta-xfce/recipes-bindings/vala/xfce4-vala_4.10.3.bb
index 97007be..68dbc69 100644
--- a/meta-openembedded/meta-xfce/recipes-bindings/vala/xfce4-vala_4.10.3.bb
+++ b/meta-openembedded/meta-xfce/recipes-bindings/vala/xfce4-vala_4.10.3.bb
@@ -7,12 +7,13 @@
REQUIRED_DISTRO_FEATURES = "x11"
-SRC_URI = "http://archive.xfce.org/src/bindings/${BPN}/${@xfce_verdir("${PV}")}/${BPN}-${PV}.tar.bz2"
+SRC_URI = " \
+ http://archive.xfce.org/src/bindings/${BPN}/${@xfce_verdir("${PV}")}/${BPN}-${PV}.tar.bz2 \
+ file://0001-configure.ac-Detect-vapidir-if-not-set-explicitly.patch \
+"
SRC_URI[md5sum] = "0bbb1d6e473e0fe9b335b7b1b49d8a71"
SRC_URI[sha256sum] = "07a8f2b7c09fcdd3d86e0c52adea3c58ca011d0142a93997a01b4af77260ae7b"
-EXTRA_OECONF = "-with-vala-api=0.42"
-
FILES_${PN} += "${datadir}/vala-*/vapi"
RDEPENDS_${PN} = "vala"
diff --git a/meta-openembedded/meta-gnome/recipes-devtools/glade/glade3/0001-Add-G_GNUC_PRINTF-on-functions-with-format-strings.patch b/meta-openembedded/meta-xfce/recipes-devtools/glade/glade3/0001-Add-G_GNUC_PRINTF-on-functions-with-format-strings.patch
similarity index 100%
rename from meta-openembedded/meta-gnome/recipes-devtools/glade/glade3/0001-Add-G_GNUC_PRINTF-on-functions-with-format-strings.patch
rename to meta-openembedded/meta-xfce/recipes-devtools/glade/glade3/0001-Add-G_GNUC_PRINTF-on-functions-with-format-strings.patch
diff --git a/meta-openembedded/meta-gnome/recipes-devtools/glade/glade3/0001-gnome-doc-utils.make-sysrooted-pkg-config.patch b/meta-openembedded/meta-xfce/recipes-devtools/glade/glade3/0001-gnome-doc-utils.make-sysrooted-pkg-config.patch
similarity index 100%
rename from meta-openembedded/meta-gnome/recipes-devtools/glade/glade3/0001-gnome-doc-utils.make-sysrooted-pkg-config.patch
rename to meta-openembedded/meta-xfce/recipes-devtools/glade/glade3/0001-gnome-doc-utils.make-sysrooted-pkg-config.patch
diff --git a/meta-openembedded/meta-gnome/recipes-devtools/glade/glade3/0002-fix-gcc-6-build.patch b/meta-openembedded/meta-xfce/recipes-devtools/glade/glade3/0002-fix-gcc-6-build.patch
similarity index 100%
rename from meta-openembedded/meta-gnome/recipes-devtools/glade/glade3/0002-fix-gcc-6-build.patch
rename to meta-openembedded/meta-xfce/recipes-devtools/glade/glade3/0002-fix-gcc-6-build.patch
diff --git a/meta-openembedded/meta-gnome/recipes-devtools/glade/glade3_3.8.5.bb b/meta-openembedded/meta-xfce/recipes-devtools/glade/glade3_3.8.5.bb
similarity index 100%
rename from meta-openembedded/meta-gnome/recipes-devtools/glade/glade3_3.8.5.bb
rename to meta-openembedded/meta-xfce/recipes-devtools/glade/glade3_3.8.5.bb
diff --git a/meta-openembedded/meta-xfce/recipes-multimedia/parole/parole_1.0.1.bb b/meta-openembedded/meta-xfce/recipes-multimedia/parole/parole_1.0.1.bb
deleted file mode 100644
index 2b4e974..0000000
--- a/meta-openembedded/meta-xfce/recipes-multimedia/parole/parole_1.0.1.bb
+++ /dev/null
@@ -1,38 +0,0 @@
-DESCRIPTION = "Parole is a modern simple media player based on the GStreamer framework"
-HOMEPAGE = "http://goodies.xfce.org/projects/applications/parole"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
-
-inherit xfce-app gtk-doc mime
-
-DEPENDS += " \
- glib-2.0 \
- dbus-glib \
- gtk+3 \
- \
- xfce4-dev-tools-native \
- libxfce4util \
- libxfce4ui \
- xfconf \
- \
- gstreamer1.0-plugins-base \
- taglib \
-"
-
-SRC_URI[md5sum] = "46fe86bbe0c4aa02c53244d66e62e90c"
-SRC_URI[sha256sum] = "8ad2931fdb35415cc3d7551b5f2207bfaa1aba15545accbacbb4984cdabd7099"
-
-RDEPENDS_${PN} += "gstreamer1.0-plugins-good"
-
-EXTRA_OECONF = "--disable-gtk-doc"
-
-PACKAGECONFIG ??= "notify"
-PACKAGECONFIG[clutter] = "--enable-clutter, --disable-clutter, clutter"
-PACKAGECONFIG[notify] = "--enable-notify-plugin, --disable-notify-plugin, libnotify"
-
-FILES_${PN} += " \
- ${datadir}/appdata \
- ${libdir}/parole-0/*.so \
-"
-
-FILES_${PN}-dev += "${libdir}/parole-0/*.la"
diff --git a/meta-openembedded/meta-xfce/recipes-multimedia/parole/parole_1.0.2.bb b/meta-openembedded/meta-xfce/recipes-multimedia/parole/parole_1.0.2.bb
new file mode 100644
index 0000000..a286a5a
--- /dev/null
+++ b/meta-openembedded/meta-xfce/recipes-multimedia/parole/parole_1.0.2.bb
@@ -0,0 +1,36 @@
+DESCRIPTION = "Parole is a modern simple media player based on the GStreamer framework"
+HOMEPAGE = "http://goodies.xfce.org/projects/applications/parole"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
+
+inherit xfce-app gtk-doc mime
+
+DEPENDS += " \
+ glib-2.0 \
+ dbus-glib \
+ gtk+3 \
+ \
+ xfce4-dev-tools-native \
+ libxfce4util \
+ libxfce4ui \
+ xfconf \
+ \
+ gstreamer1.0-plugins-base \
+ taglib \
+"
+
+SRC_URI[md5sum] = "cd22ab579470c5728db0aa6c0b9d4c7d"
+SRC_URI[sha256sum] = "bff0fc846d0d7b8f435ac5514976f1cd1d82b62dbf1b7d470e253a5b439407da"
+
+RDEPENDS_${PN} += "gstreamer1.0-plugins-good"
+
+EXTRA_OECONF = "--disable-gtk-doc"
+
+PACKAGECONFIG ??= "notify"
+PACKAGECONFIG[clutter] = "--enable-clutter, --disable-clutter, clutter"
+PACKAGECONFIG[notify] = "--enable-notify-plugin, --disable-notify-plugin, libnotify"
+
+FILES_${PN} += " \
+ ${datadir}/appdata \
+ ${libdir}/parole-0/*.so \
+"
diff --git a/meta-openembedded/meta-xfce/recipes-panel-plugins/cpufreq/xfce4-cpufreq-plugin/0001-Fix-memory-leak-and-reduce-cpu-load-slightly.patch b/meta-openembedded/meta-xfce/recipes-panel-plugins/cpufreq/xfce4-cpufreq-plugin/0001-Fix-memory-leak-and-reduce-cpu-load-slightly.patch
new file mode 100644
index 0000000..92a6e83
--- /dev/null
+++ b/meta-openembedded/meta-xfce/recipes-panel-plugins/cpufreq/xfce4-cpufreq-plugin/0001-Fix-memory-leak-and-reduce-cpu-load-slightly.patch
@@ -0,0 +1,121 @@
+From f86486e128f62ed5a531163535d11f0aa0268928 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
+Date: Sun, 5 May 2019 20:45:26 +0200
+Subject: [PATCH] Fix memory-leak and reduce cpu-load slightly
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+* when setting font remove old css provider befor setting new
+ -> fix memory leak
+* do call cpufreq_label_set_font only on init and when font was changed
+ -> reduce cpu-load
+
+Fixes https://bugzilla.xfce.org/show_bug.cgi?id=15218
+
+Upstream-Status: Submitted [1]
+
+[1] https://bugzilla.xfce.org/attachment.cgi?id=8492
+
+Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
+---
+ panel-plugin/xfce4-cpufreq-configure.c | 4 ++++
+ panel-plugin/xfce4-cpufreq-plugin.c | 13 +++++++++++--
+ panel-plugin/xfce4-cpufreq-plugin.h | 2 ++
+ 3 files changed, 17 insertions(+), 2 deletions(-)
+
+diff --git a/panel-plugin/xfce4-cpufreq-configure.c b/panel-plugin/xfce4-cpufreq-configure.c
+index 1205fc9..48e72ff 100644
+--- a/panel-plugin/xfce4-cpufreq-configure.c
++++ b/panel-plugin/xfce4-cpufreq-configure.c
+@@ -85,7 +85,10 @@ button_fontname_update(GtkWidget *button, gboolean update_plugin)
+ }
+
+ if (update_plugin)
++ {
++ cpufreq_label_set_font ();
+ cpufreq_update_plugin (TRUE);
++ }
+ }
+
+
+@@ -155,6 +158,7 @@ button_fontcolor_clicked (GtkWidget *button, void *data)
+ gtk_color_chooser_get_rgba (GTK_COLOR_CHOOSER (button), color);
+ cpuFreq->options->fontcolor = gdk_rgba_to_string (color);
+ g_free (color);
++ cpufreq_label_set_font ();
+ cpufreq_update_plugin (TRUE);
+ }
+
+diff --git a/panel-plugin/xfce4-cpufreq-plugin.c b/panel-plugin/xfce4-cpufreq-plugin.c
+index e886121..8d7c9e5 100644
+--- a/panel-plugin/xfce4-cpufreq-plugin.c
++++ b/panel-plugin/xfce4-cpufreq-plugin.c
+@@ -44,6 +44,7 @@ cpufreq_label_set_font (void)
+ {
+ gchar *css = NULL, *css_font = NULL, *css_color = NULL;
+ GtkCssProvider *provider;
++ GtkStyleContext *context;
+ PangoFontDescription *font;
+
+ if (G_UNLIKELY (cpuFreq->label == NULL))
+@@ -76,11 +77,17 @@ cpufreq_label_set_font (void)
+ if (css)
+ {
+ provider = gtk_css_provider_new ();
++ context = GTK_STYLE_CONTEXT (gtk_widget_get_style_context (GTK_WIDGET (cpuFreq->label)));
++
++ if (currentProvider)
++ gtk_style_context_remove_provider (context, currentProvider);
+
+ gtk_css_provider_load_from_data (provider, css, -1, NULL);
+ gtk_style_context_add_provider (
+- GTK_STYLE_CONTEXT (gtk_widget_get_style_context (GTK_WIDGET (cpuFreq->label))),
++ context,
+ GTK_STYLE_PROVIDER (provider), GTK_STYLE_PROVIDER_PRIORITY_APPLICATION);
++
++ currentProvider = provider;
+ }
+
+ g_free (css);
+@@ -420,7 +427,6 @@ cpufreq_update_plugin (gboolean reset_label_size)
+
+ if (cpuFreq->layout_changed)
+ {
+- cpufreq_label_set_font ();
+ cpufreq_widgets_layout ();
+ }
+
+@@ -601,6 +607,7 @@ cpufreq_widgets (void)
+
+ gtk_widget_show_all (cpuFreq->button);
+
++ cpufreq_label_set_font ();
+ cpufreq_update_plugin (TRUE);
+ }
+
+@@ -775,6 +782,8 @@ cpufreq_construct (XfcePanelPlugin *plugin)
+ {
+ xfce_textdomain (GETTEXT_PACKAGE, PACKAGE_LOCALE_DIR, "UTF-8");
+
++ currentProvider = NULL;
++
+ cpuFreq = g_new0 (CpuFreqPlugin, 1);
+ cpuFreq->options = g_new0 (CpuFreqPluginOptions, 1);
+ cpuFreq->plugin = plugin;
+diff --git a/panel-plugin/xfce4-cpufreq-plugin.h b/panel-plugin/xfce4-cpufreq-plugin.h
+index a6895e4..6338698 100644
+--- a/panel-plugin/xfce4-cpufreq-plugin.h
++++ b/panel-plugin/xfce4-cpufreq-plugin.h
+@@ -95,6 +95,8 @@ typedef struct
+
+ CpuFreqPlugin *cpuFreq;
+
++GtkCssProvider *currentProvider;
++
+ G_BEGIN_DECLS
+
+ void
+--
+2.20.1
+
diff --git a/meta-openembedded/meta-xfce/recipes-panel-plugins/cpufreq/xfce4-cpufreq-plugin_1.2.1.bb b/meta-openembedded/meta-xfce/recipes-panel-plugins/cpufreq/xfce4-cpufreq-plugin_1.2.1.bb
index 3f5587d..6addc3b 100644
--- a/meta-openembedded/meta-xfce/recipes-panel-plugins/cpufreq/xfce4-cpufreq-plugin_1.2.1.bb
+++ b/meta-openembedded/meta-xfce/recipes-panel-plugins/cpufreq/xfce4-cpufreq-plugin_1.2.1.bb
@@ -7,3 +7,4 @@
SRC_URI[md5sum] = "ccd8f0f7aef51bc4caf1049986d9614f"
SRC_URI[sha256sum] = "c5e044c0dc401d2066f208a3df82a588b3e51ff01425f155d0a1d0f8fce8f5b5"
+SRC_URI += "file://0001-Fix-memory-leak-and-reduce-cpu-load-slightly.patch"
diff --git a/meta-openembedded/meta-xfce/recipes-panel-plugins/datetime/xfce4-datetime-plugin_0.7.0.bb b/meta-openembedded/meta-xfce/recipes-panel-plugins/datetime/xfce4-datetime-plugin_0.7.0.bb
deleted file mode 100644
index af38ba5..0000000
--- a/meta-openembedded/meta-xfce/recipes-panel-plugins/datetime/xfce4-datetime-plugin_0.7.0.bb
+++ /dev/null
@@ -1,9 +0,0 @@
-SUMMARY = "Panel plugin displaying date and time and a calendar when left-clicked"
-HOMEPAGE = "http://goodies.xfce.org/projects/panel-plugins/xfce4-datetime-plugin"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
-
-inherit xfce-panel-plugin
-
-SRC_URI[md5sum] = "30caaa94c6c267827a31ad69fa472e51"
-SRC_URI[sha256sum] = "297f3077f7aee52a237449fbd8595e232267bc600b5b9e7ddc5baab306ed67b9"
diff --git a/meta-openembedded/meta-xfce/recipes-panel-plugins/datetime/xfce4-datetime-plugin_0.7.1.bb b/meta-openembedded/meta-xfce/recipes-panel-plugins/datetime/xfce4-datetime-plugin_0.7.1.bb
new file mode 100644
index 0000000..97aa184
--- /dev/null
+++ b/meta-openembedded/meta-xfce/recipes-panel-plugins/datetime/xfce4-datetime-plugin_0.7.1.bb
@@ -0,0 +1,9 @@
+SUMMARY = "Panel plugin displaying date and time and a calendar when left-clicked"
+HOMEPAGE = "http://goodies.xfce.org/projects/panel-plugins/xfce4-datetime-plugin"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
+
+inherit xfce-panel-plugin
+
+SRC_URI[md5sum] = "c42149ec71836fe83085511429e638dc"
+SRC_URI[sha256sum] = "e0c7321346ded2539c4688c593f650696ed0ddca0a5f9d4e404d0e7fc42ae256"
diff --git a/meta-openembedded/meta-xfce/recipes-panel-plugins/places/xfce4-places-plugin_1.7.0.bb b/meta-openembedded/meta-xfce/recipes-panel-plugins/places/xfce4-places-plugin_1.7.0.bb
deleted file mode 100644
index 16be09d..0000000
--- a/meta-openembedded/meta-xfce/recipes-panel-plugins/places/xfce4-places-plugin_1.7.0.bb
+++ /dev/null
@@ -1,12 +0,0 @@
-DESCRIPTION = "Panel plugin displaying menu with quick access to folders, documents, and removable media"
-HOMEPAGE = "http://goodies.xfce.org/projects/panel-plugins/xfce4-places-plugin"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=b6952d9a47fc2ad0f315510e1290455f"
-
-inherit xfce-panel-plugin
-
-SRC_URI[md5sum] = "fcae9b38a8affcd82699a94991bba29b"
-SRC_URI[sha256sum] = "4175c614749abbb5bcf6f49c88125fb0dd36db69f4c374df23563907b16e2c3f"
-
-PACKAGECONFIG ??= ""
-PACKAGECONFIG[notify] = "--enable-notifications,--disable-notifications,libnotify"
diff --git a/meta-openembedded/meta-xfce/recipes-panel-plugins/places/xfce4-places-plugin_1.8.0.bb b/meta-openembedded/meta-xfce/recipes-panel-plugins/places/xfce4-places-plugin_1.8.0.bb
new file mode 100644
index 0000000..698152b
--- /dev/null
+++ b/meta-openembedded/meta-xfce/recipes-panel-plugins/places/xfce4-places-plugin_1.8.0.bb
@@ -0,0 +1,13 @@
+SUMMARY = "Menu for quick access to folders, documents and removable media"
+DESCRIPTION = "Panel plugin displaying menu with quick access to folders, documents and removable media"
+HOMEPAGE = "http://goodies.xfce.org/projects/panel-plugins/xfce4-places-plugin"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=b6952d9a47fc2ad0f315510e1290455f"
+
+inherit xfce-panel-plugin
+
+SRC_URI[md5sum] = "e3a306d927befb8afcb5212f8ab0b8c9"
+SRC_URI[sha256sum] = "7ba3f46f88c2845cbf413efeefaed29157f8b98571856c6e2bf35e4de5d8ecce"
+
+PACKAGECONFIG ??= ""
+PACKAGECONFIG[notify] = "--enable-notifications,--disable-notifications,libnotify"
diff --git a/meta-openembedded/meta-xfce/recipes-xfce/exo/exo/reduce-build-to-exo-csource-only.patch b/meta-openembedded/meta-xfce/recipes-xfce/exo/exo/reduce-build-to-exo-csource-only.patch
index 0764775..8c95029 100644
--- a/meta-openembedded/meta-xfce/recipes-xfce/exo/exo/reduce-build-to-exo-csource-only.patch
+++ b/meta-openembedded/meta-xfce/recipes-xfce/exo/exo/reduce-build-to-exo-csource-only.patch
@@ -1,6 +1,6 @@
From e710d8d4a3e3480416826c70d56ea3d2598a77e4 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
-Date: Thu, 28 Mar 2013 23:41:03 +0100
+Date: Sat, 4 May 2019 14:50:11 +0200
Subject: [PATCH] reduce build to exo-csource only
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
@@ -16,11 +16,11 @@
---
Makefile.am | 10 +---------
- configure.ac | 22 ----------------------
- 2 files changed, 1 insertion(+), 31 deletions(-)
+ configure.ac | 20 --------------------
+ 2 files changed, 1 insertion(+), 29 deletions(-)
diff --git a/Makefile.am b/Makefile.am
-index 62ad18d..bdc5fae 100644
+index 62ad18d..8934f1f 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -1,15 +1,7 @@
@@ -41,10 +41,10 @@
distclean-local:
rm -rf *.cache *~
diff --git a/configure.ac b/configure.ac
-index 3f92d1b..0d4cc38 100644
+index 4e4eb5e..237184c 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -116,15 +116,6 @@ AC_PROG_CC()
+@@ -120,15 +120,6 @@ AC_PROG_CC()
AM_PROG_CC_C_O()
AC_PROG_INSTALL()
IT_PROG_INTLTOOL([intltool_minimum_version], [no-xml])
@@ -60,26 +60,31 @@
dnl ***************************************
dnl *** Check for standard header files ***
-@@ -171,19 +162,6 @@ dnl ***********************************
+@@ -175,12 +166,6 @@ dnl ***********************************
dnl *** Check for required packages ***
dnl ***********************************
XDT_CHECK_PACKAGE([GLIB], [glib-2.0], [2.42.0])
-XDT_CHECK_PACKAGE([GIO], [gio-2.0], [2.42.0])
--XDT_CHECK_PACKAGE([GTK], [gtk+-2.0], [2.24.0])
-XDT_CHECK_PACKAGE([GTK3], [gtk+-3.0], [3.22.0])
-XDT_CHECK_PACKAGE([GTHREAD], [gthread-2.0], [2.42.0])
-XDT_CHECK_PACKAGE([LIBXFCE4UTIL], [libxfce4util-1.0], [4.12.0])
--XDT_CHECK_PACKAGE([LIBXFCE4UI], [libxfce4ui-1], [4.12.0])
-XDT_CHECK_PACKAGE([LIBXFCE4UI2], [libxfce4ui-2], [4.12.0])
-XDT_CHECK_OPTIONAL_PACKAGE([GIO_UNIX], [gio-unix-2.0], [2.42.0], [gio-unix], [GIO-Unix features])
--
+
+ dnl ***********************************************************
+ dnl *** Optional support for a GTK+2 version of the library ***
+@@ -190,11 +175,6 @@ XDT_CHECK_OPTIONAL_PACKAGE([GTK2],
+ [GTK+ 2 support])
+ AM_CONDITIONAL([ENABLE_GTK2_LIBRARY], [test "x$GTK2_FOUND" = "xyes"])
+
-dnl *********************
-dnl *** Check for X11 ***
-dnl *********************
-XDT_CHECK_LIBX11_REQUIRE()
-
+-
dnl *************************
dnl *** Check for gtk-doc ***
+ dnl *************************
--
-2.14.3
+2.20.1
diff --git a/meta-openembedded/meta-xfce/recipes-xfce/exo/exo_0.12.4.bb b/meta-openembedded/meta-xfce/recipes-xfce/exo/exo_0.12.4.bb
deleted file mode 100644
index 7b7edfe..0000000
--- a/meta-openembedded/meta-xfce/recipes-xfce/exo/exo_0.12.4.bb
+++ /dev/null
@@ -1,36 +0,0 @@
-DESCRIPTION="Application library for the Xfce desktop environment"
-SECTION = "x11"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
-DEPENDS = "gtk+ libxfce4util libxfce4ui virtual/libx11 liburi-perl-native cairo"
-DEPENDS_class-native = "glib-2.0-native xfce4-dev-tools-native intltool-native"
-
-inherit xfce pythonnative perlnative gtk-doc distro_features_check
-
-REQUIRED_DISTRO_FEATURES = "x11"
-REQUIRED_DISTRO_FEATURES_class-native = ""
-
-# SRC_URI must follow inherited one
-SRC_URI += " \
- file://exo-no-tests-0.8.patch \
- file://configure.patch \
-"
-
-SRC_URI_append_class-native = " \
- file://reduce-build-to-exo-csource-only.patch \
-"
-
-SRC_URI[md5sum] = "962bbccb38db0aecd4151ca97f6a39bc"
-SRC_URI[sha256sum] = "b0af60816bdb572ce53f19462fb1f3a5895a04017a878893dc03c166ea2050af"
-
-PACKAGES =+ "exo-csource"
-
-# Note: python bindings did not work in oe-dev and are about to be moved to
-# pyxfce see http://comments.gmane.org/gmane.comp.desktop.xfce.devel.version4/19560
-FILES_${PN} += "${datadir}/xfce4/ \
- ${libdir}/xfce4/exo-1 \
-"
-
-FILES_exo-csource += "${bindir}/exo-csource"
-
-BBCLASSEXTEND = "native"
diff --git a/meta-openembedded/meta-xfce/recipes-xfce/exo/exo_0.12.5.bb b/meta-openembedded/meta-xfce/recipes-xfce/exo/exo_0.12.5.bb
new file mode 100644
index 0000000..7d61e8f
--- /dev/null
+++ b/meta-openembedded/meta-xfce/recipes-xfce/exo/exo_0.12.5.bb
@@ -0,0 +1,37 @@
+DESCRIPTION="Application library for the Xfce desktop environment"
+SECTION = "x11"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
+DEPENDS = "gtk+ libxfce4util libxfce4ui virtual/libx11 liburi-perl-native cairo"
+DEPENDS_class-native = "glib-2.0-native xfce4-dev-tools-native intltool-native"
+
+inherit xfce pythonnative perlnative gtk-doc distro_features_check
+
+REQUIRED_DISTRO_FEATURES = "x11"
+REQUIRED_DISTRO_FEATURES_class-native = ""
+
+# SRC_URI must follow inherited one
+SRC_URI += " \
+ file://exo-no-tests-0.8.patch \
+ file://configure.patch \
+"
+
+SRC_URI_append_class-native = " \
+ file://reduce-build-to-exo-csource-only.patch \
+"
+
+SRC_URI[md5sum] = "1de1d539262847d49474d20cbebc78ea"
+SRC_URI[sha256sum] = "e8f434d6436ae647dd1614e8a24aba23c83f70cb14037b5bc98652f558be43e8"
+
+PACKAGES =+ "exo-csource"
+
+# Note: python bindings did not work in oe-dev and are about to be moved to
+# pyxfce see http://comments.gmane.org/gmane.comp.desktop.xfce.devel.version4/19560
+FILES_${PN} += " \
+ ${datadir}/xfce4/ \
+ ${libdir}/xfce4/exo* \
+"
+
+FILES_exo-csource += "${bindir}/exo-csource"
+
+BBCLASSEXTEND = "native"
diff --git a/meta-openembedded/meta-xfce/recipes-xfce/libxfce4ui/libxfce4ui_4.13.4.bb b/meta-openembedded/meta-xfce/recipes-xfce/libxfce4ui/libxfce4ui_4.13.4.bb
index 8a385ba..df4b25c 100644
--- a/meta-openembedded/meta-xfce/recipes-xfce/libxfce4ui/libxfce4ui_4.13.4.bb
+++ b/meta-openembedded/meta-xfce/recipes-xfce/libxfce4ui/libxfce4ui_4.13.4.bb
@@ -18,6 +18,7 @@
PACKAGECONFIG ??= ""
PACKAGECONFIG[gladeui] = "--enable-gladeui,--disable-gladeui,glade3"
+PACKAGECONFIG[gladeui2] = "--enable-gladeui2,--disable-gladeui2,glade"
PACKAGECONFIG[startup-notification] = "--enable-startup-notification,--disable-startup-notification,startup-notification"
PACKAGES =+ "${PN}-gtk2 ${PN}-gtk3"
@@ -25,8 +26,12 @@
FILES_${PN}-gtk3 += "${libdir}/libxfce4ui-2.so.* ${libdir}/libxfce4kbd-private-3.so.*"
PACKAGES += "${PN}-glade"
-FILES_${PN}-glade = "${libdir}/glade3 \
- ${datadir}/glade3"
+FILES_${PN}-glade = " \
+ ${libdir}/glade \
+ ${libdir}/glade3 \
+ ${datadir}/glade \
+ ${datadir}/glade3 \
+"
RDEPENDS_${PN}-gtk2 = "${PN}"
RDEPENDS_${PN}-gtk3 = "${PN}"
diff --git a/meta-openembedded/meta-xfce/recipes-xfce/xfce4-session/machine-host.bb b/meta-openembedded/meta-xfce/recipes-xfce/xfce4-session/machine-host.bb
deleted file mode 100644
index c791974..0000000
--- a/meta-openembedded/meta-xfce/recipes-xfce/xfce4-session/machine-host.bb
+++ /dev/null
@@ -1,17 +0,0 @@
-SUMMARY = "Meta package adding machine name to known hosts"
-LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302"
-
-ALLOW_EMPTY_${PN} = "1"
-
-LOCALHOSTMACHINE = "127.0.0.1 ${MACHINE}"
-
-# on some machines starting applications as xfce4-terminal take ages without
-# machine name in hosts
-pkg_postinst_${PN} () {
-if ! grep -q '${LOCALHOSTMACHINE}' $D/etc/hosts ; then
- echo '${LOCALHOSTMACHINE}' >> $D/etc/hosts
-fi
-}
-
-PACKAGE_ARCH = "${MACHINE_ARCH}"
diff --git a/meta-openembedded/meta-xfce/recipes-xfce/xfce4-session/xfce4-session_4.13.1.bb b/meta-openembedded/meta-xfce/recipes-xfce/xfce4-session/xfce4-session_4.13.1.bb
index b11aaa4..3b9525f 100644
--- a/meta-openembedded/meta-xfce/recipes-xfce/xfce4-session/xfce4-session_4.13.1.bb
+++ b/meta-openembedded/meta-xfce/recipes-xfce/xfce4-session/xfce4-session_4.13.1.bb
@@ -26,9 +26,3 @@
${datadir}/themes/Default/balou/* \
${datadir}/polkit-1 \
"
-
-FILES_${PN} += " \
- ${libdir}/xfce4/session/splash-engines/*.la \
-"
-
-RDEPENDS_${PN} += "machine-host"
diff --git a/meta-openembedded/meta-xfce/recipes-xfce/xfconf/xfconf_4.13.6.bb b/meta-openembedded/meta-xfce/recipes-xfce/xfconf/xfconf_4.13.6.bb
index 2667ff9..ded3c44 100644
--- a/meta-openembedded/meta-xfce/recipes-xfce/xfconf/xfconf_4.13.6.bb
+++ b/meta-openembedded/meta-xfce/recipes-xfce/xfconf/xfconf_4.13.6.bb
@@ -16,3 +16,5 @@
${datadir}/dbus-1/services/org.xfce.Xfconf.service"
FILES_${PN}-dev += "${libdir}/gio/modules/libxfconfgsettingsbackend.la"
+
+PACKAGECONFIG[gsettings-backend] = "--enable-gsettings-backend,--disable-gsettings-backend,"
diff --git a/meta-raspberrypi/conf/machine/include/rpi-default-versions.inc b/meta-raspberrypi/conf/machine/include/rpi-default-versions.inc
index 9983b61..a5fe6d7 100644
--- a/meta-raspberrypi/conf/machine/include/rpi-default-versions.inc
+++ b/meta-raspberrypi/conf/machine/include/rpi-default-versions.inc
@@ -1,3 +1,3 @@
# RaspberryPi BSP default versions
-PREFERRED_VERSION_linux-raspberrypi ??= "4.19.%"
+PREFERRED_VERSION_linux-raspberrypi ??= "4.14.%"
diff --git a/meta-raspberrypi/dynamic-layers/qt5-layer/recipes-qt/qt5/qtbase_%.bbappend b/meta-raspberrypi/dynamic-layers/qt5-layer/recipes-qt/qt5/qtbase_%.bbappend
index 4202651..c43da01 100644
--- a/meta-raspberrypi/dynamic-layers/qt5-layer/recipes-qt/qt5/qtbase_%.bbappend
+++ b/meta-raspberrypi/dynamic-layers/qt5-layer/recipes-qt/qt5/qtbase_%.bbappend
@@ -4,7 +4,7 @@
PACKAGECONFIG_GL_append_rpi = "${@bb.utils.contains('MACHINE_FEATURES', 'vc4graphics', ' kms', '', d)}"
PACKAGECONFIG_GL_append_rpi = " gbm"
PACKAGECONFIG_FONTS_rpi = "fontconfig"
-PACKAGECONFIG_append_rpi = " libinput examples tslib xkb xkbcommon-evdev"
+PACKAGECONFIG_append_rpi = " libinput examples tslib xkb xkbcommon"
PACKAGECONFIG_remove_rpi = "tests"
OE_QTBASE_EGLFS_DEVICE_INTEGRATION_rpi = "${@bb.utils.contains('MACHINE_FEATURES', 'vc4graphics', '', 'eglfs_brcm', d)}"
diff --git a/meta-raspberrypi/recipes-connectivity/bluez5/bluez5_%.bbappend b/meta-raspberrypi/recipes-connectivity/bluez5/bluez5_%.bbappend
index 6651fb8..09fbaaa 100644
--- a/meta-raspberrypi/recipes-connectivity/bluez5/bluez5_%.bbappend
+++ b/meta-raspberrypi/recipes-connectivity/bluez5/bluez5_%.bbappend
@@ -1,16 +1,10 @@
-FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
+FILESEXTRAPATHS_prepend_rpi := "${THISDIR}/${PN}:"
-BCM_BT_SOURCES = " \
+RC_URI_append_rpi = "\
file://0001-bcm43xx-Add-bcm43xx-3wire-variant.patch \
file://0002-bcm43xx-The-UART-speed-must-be-reset-after-the-firmw.patch \
file://0003-Increase-firmware-load-timeout-to-30s.patch \
file://0004-Move-the-43xx-firmware-into-lib-firmware.patch \
"
-BCM_BT_RDEPENDS = "pi-bluetooth"
-
-SRC_URI_append_raspberrypi0-wifi = " ${BCM_BT_SOURCES}"
-SRC_URI_append_raspberrypi3 = " ${BCM_BT_SOURCES}"
-
-RDEPENDS_${PN}_append_raspberrypi0-wifi = " ${BCM_BT_RDEPENDS}"
-RDEPENDS_${PN}_append_raspberrypi3 = " ${BCM_BT_RDEPENDS}"
+RDEPENDS_${PN}_append_rpi = " pi-bluetooth"
diff --git a/meta-raspberrypi/recipes-core/psplash/psplash_%.bbappend b/meta-raspberrypi/recipes-core/psplash/psplash_%.bbappend
index 698564b..09e3ec9 100644
--- a/meta-raspberrypi/recipes-core/psplash/psplash_%.bbappend
+++ b/meta-raspberrypi/recipes-core/psplash/psplash_%.bbappend
@@ -1,4 +1,3 @@
FILESEXTRAPATHS_prepend := "${THISDIR}/files:"
SPLASH_IMAGES_append_rpi = " file://psplash-raspberrypi-img.h;outsuffix=raspberrypi"
-ALTERNATIVE_PRIORITY_psplash-raspberrypi[psplash] = "10"
-
+ALTERNATIVE_PRIORITY_psplash-raspberrypi[psplash] = "200"
diff --git a/meta-raspberrypi/recipes-graphics/userland/userland_git.bb b/meta-raspberrypi/recipes-graphics/userland/userland_git.bb
index 4311588..2815942 100644
--- a/meta-raspberrypi/recipes-graphics/userland/userland_git.bb
+++ b/meta-raspberrypi/recipes-graphics/userland/userland_git.bb
@@ -90,7 +90,5 @@
FILES_${PN}-doc += "${datadir}/install"
FILES_${PN}-dbg += "${libdir}/plugins/.debug"
-PACKAGE_ARCH = "${MACHINE_ARCH}"
-
RDEPENDS_${PN} += "bash"
RDEPENDS_${PN} += "${@bb.utils.contains("MACHINE_FEATURES", "vc4graphics", "libegl-mesa", "", d)}"
diff --git a/meta-raspberrypi/recipes-kernel/linux/linux-raspberrypi_4.14.bb b/meta-raspberrypi/recipes-kernel/linux/linux-raspberrypi_4.14.bb
index c68d2d0..6563918 100644
--- a/meta-raspberrypi/recipes-kernel/linux/linux-raspberrypi_4.14.bb
+++ b/meta-raspberrypi/recipes-kernel/linux/linux-raspberrypi_4.14.bb
@@ -1,6 +1,6 @@
-LINUX_VERSION ?= "4.14.98"
+LINUX_VERSION ?= "4.14.112"
-SRCREV = "5d63a4595d32a8505590d5fea5c4ec1ca79fd49d"
+SRCREV = "6b5c4a2508403839af29ef44059d04acbe0ee204"
SRC_URI = " \
git://github.com/raspberrypi/linux.git;branch=rpi-4.14.y \
file://0001-menuconfig-check-lxdiaglog.sh-Allow-specification-of.patch \
diff --git a/meta-raspberrypi/recipes-kernel/linux/linux-raspberrypi_4.19.bb b/meta-raspberrypi/recipes-kernel/linux/linux-raspberrypi_4.19.bb
index 0d3b753..8842e71 100644
--- a/meta-raspberrypi/recipes-kernel/linux/linux-raspberrypi_4.19.bb
+++ b/meta-raspberrypi/recipes-kernel/linux/linux-raspberrypi_4.19.bb
@@ -1,9 +1,9 @@
FILESEXTRAPATHS_prepend := "${THISDIR}/linux-raspberrypi:"
-LINUX_VERSION ?= "4.19.32"
+LINUX_VERSION ?= "4.19.34"
LINUX_RPI_BRANCH ?= "rpi-4.19.y"
-SRCREV = "d65a0f76d3adcf86a6f5c614c68edb3aeb3b8590"
+SRCREV = "ab8652c03fa081b27de7e28a74c2536cb2aa3e5b"
SRC_URI = " \
git://github.com/raspberrypi/linux.git;protocol=git;branch=${LINUX_RPI_BRANCH} \
"
diff --git a/meta-raspberrypi/recipes-kernel/linux/linux-raspberrypi_4.9.bb b/meta-raspberrypi/recipes-kernel/linux/linux-raspberrypi_4.9.bb
deleted file mode 100644
index b3f3248..0000000
--- a/meta-raspberrypi/recipes-kernel/linux/linux-raspberrypi_4.9.bb
+++ /dev/null
@@ -1,11 +0,0 @@
-FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}-${PV}:"
-
-LINUX_VERSION ?= "4.9.80"
-
-SRCREV = "7f9c648dad6473469b4133898fa6bb8d818ecff9"
-SRC_URI = " \
- git://github.com/raspberrypi/linux.git;branch=rpi-4.9.y \
- file://0001-menuconfig-check-lxdiaglog.sh-Allow-specification-of.patch \
- "
-
-require linux-raspberrypi.inc
diff --git a/meta-security/files/waf-cross-answers/README b/meta-security/files/waf-cross-answers/README
new file mode 100644
index 0000000..dda45c5
--- /dev/null
+++ b/meta-security/files/waf-cross-answers/README
@@ -0,0 +1,3 @@
+The files in this directory are cross answers files
+used by waf-samba.bbclass, please see waf-samba.bbclass
+for details about how they are used.
diff --git a/meta-security/files/waf-cross-answers/cross-answers-aarch64.txt b/meta-security/files/waf-cross-answers/cross-answers-aarch64.txt
new file mode 100644
index 0000000..1023f6a
--- /dev/null
+++ b/meta-security/files/waf-cross-answers/cross-answers-aarch64.txt
@@ -0,0 +1,39 @@
+Checking uname sysname type: "Linux"
+Checking uname version type: "# Wed May 20 10:34:39 UTC 2015"
+Checking simple C program: "hello world"
+rpath library support: OK
+-Wl,--version-script support: OK
+Checking getconf LFS_CFLAGS: NO
+Checking correct behavior of strtoll: NO
+Checking for working strptime: OK
+Checking for C99 vsnprintf: "1"
+Checking for HAVE_SHARED_MMAP: OK
+Checking for HAVE_MREMAP: OK
+Checking for HAVE_SECURE_MKSTEMP: OK
+Checking for HAVE_IFACE_GETIFADDRS: NO
+Checking for HAVE_IFACE_IFCONF: NO
+Checking for HAVE_IFACE_IFREQ: NO
+Checking for large file support without additional flags: OK
+Checking for HAVE_INCOHERENT_MMAP: NO
+Checking value of NSIG: "65"
+Checking value of _NSIG: "65"
+Checking value of SIGRTMAX: "64"
+Checking value of SIGRTMIN: "34"
+Checking whether the WRFILE -keytab is supported: OK
+Checking for kernel change notify support: OK
+Checking for Linux kernel oplocks: OK
+Checking for kernel share modes: OK
+Checking whether POSIX capabilities are available: OK
+Checking if can we convert from CP850 to UCS-2LE: OK
+Checking if can we convert from UTF-8 to UCS-2LE: OK
+vfs_fileid checking for statfs() and struct statfs.f_fsid: OK
+Checking whether we can use Linux thread-specific credentials: OK
+Checking whether fcntl locking is available: OK
+Checking for the maximum value of the 'time_t' type: OK
+Checking whether the realpath function allows a NULL argument: OK
+Checking for ftruncate extend: OK
+getcwd takes a NULL argument: OK
+Checking for small off_t: NO
+Checking whether blkcnt_t is 32 bit: NO
+Checking whether blkcnt_t is 64 bit: OK
+Checking whether fcntl lock supports open file description locks: OK
diff --git a/meta-security/files/waf-cross-answers/cross-answers-aarch64_be.txt b/meta-security/files/waf-cross-answers/cross-answers-aarch64_be.txt
new file mode 100644
index 0000000..1023f6a
--- /dev/null
+++ b/meta-security/files/waf-cross-answers/cross-answers-aarch64_be.txt
@@ -0,0 +1,39 @@
+Checking uname sysname type: "Linux"
+Checking uname version type: "# Wed May 20 10:34:39 UTC 2015"
+Checking simple C program: "hello world"
+rpath library support: OK
+-Wl,--version-script support: OK
+Checking getconf LFS_CFLAGS: NO
+Checking correct behavior of strtoll: NO
+Checking for working strptime: OK
+Checking for C99 vsnprintf: "1"
+Checking for HAVE_SHARED_MMAP: OK
+Checking for HAVE_MREMAP: OK
+Checking for HAVE_SECURE_MKSTEMP: OK
+Checking for HAVE_IFACE_GETIFADDRS: NO
+Checking for HAVE_IFACE_IFCONF: NO
+Checking for HAVE_IFACE_IFREQ: NO
+Checking for large file support without additional flags: OK
+Checking for HAVE_INCOHERENT_MMAP: NO
+Checking value of NSIG: "65"
+Checking value of _NSIG: "65"
+Checking value of SIGRTMAX: "64"
+Checking value of SIGRTMIN: "34"
+Checking whether the WRFILE -keytab is supported: OK
+Checking for kernel change notify support: OK
+Checking for Linux kernel oplocks: OK
+Checking for kernel share modes: OK
+Checking whether POSIX capabilities are available: OK
+Checking if can we convert from CP850 to UCS-2LE: OK
+Checking if can we convert from UTF-8 to UCS-2LE: OK
+vfs_fileid checking for statfs() and struct statfs.f_fsid: OK
+Checking whether we can use Linux thread-specific credentials: OK
+Checking whether fcntl locking is available: OK
+Checking for the maximum value of the 'time_t' type: OK
+Checking whether the realpath function allows a NULL argument: OK
+Checking for ftruncate extend: OK
+getcwd takes a NULL argument: OK
+Checking for small off_t: NO
+Checking whether blkcnt_t is 32 bit: NO
+Checking whether blkcnt_t is 64 bit: OK
+Checking whether fcntl lock supports open file description locks: OK
diff --git a/meta-security/files/waf-cross-answers/cross-answers-arm.txt b/meta-security/files/waf-cross-answers/cross-answers-arm.txt
new file mode 100644
index 0000000..a5cd998
--- /dev/null
+++ b/meta-security/files/waf-cross-answers/cross-answers-arm.txt
@@ -0,0 +1,40 @@
+Checking uname sysname type: "Linux"
+Checking uname version type: "# Wed May 20 10:34:39 UTC 2015"
+Checking simple C program: "hello world"
+rpath library support: OK
+-Wl,--version-script support: OK
+Checking getconf LFS_CFLAGS: NO
+Checking correct behavior of strtoll: NO
+Checking for working strptime: OK
+Checking for C99 vsnprintf: "1"
+Checking for HAVE_SHARED_MMAP: OK
+Checking for HAVE_MREMAP: OK
+Checking for HAVE_SECURE_MKSTEMP: OK
+Checking for HAVE_IFACE_GETIFADDRS: NO
+Checking for HAVE_IFACE_IFCONF: NO
+Checking for HAVE_IFACE_IFREQ: NO
+Checking for large file support without additional flags: NO
+Checking for -D_FILE_OFFSET_BITS=64: OK
+Checking for HAVE_INCOHERENT_MMAP: NO
+Checking value of NSIG: "65"
+Checking value of _NSIG: "65"
+Checking value of SIGRTMAX: "64"
+Checking value of SIGRTMIN: "34"
+Checking whether the WRFILE -keytab is supported: OK
+Checking for kernel change notify support: OK
+Checking for Linux kernel oplocks: OK
+Checking for kernel share modes: OK
+Checking whether POSIX capabilities are available: OK
+Checking if can we convert from CP850 to UCS-2LE: OK
+Checking if can we convert from UTF-8 to UCS-2LE: OK
+vfs_fileid checking for statfs() and struct statfs.f_fsid: OK
+Checking whether we can use Linux thread-specific credentials with 32-bit system calls: OK
+Checking whether fcntl locking is available: OK
+Checking for the maximum value of the 'time_t' type: NO
+Checking whether the realpath function allows a NULL argument: OK
+Checking for ftruncate extend: OK
+getcwd takes a NULL argument: OK
+Checking for small off_t: NO
+Checking whether blkcnt_t is 32 bit: NO
+Checking whether blkcnt_t is 64 bit: OK
+Checking whether fcntl lock supports open file description locks: OK
diff --git a/meta-security/files/waf-cross-answers/cross-answers-armeb.txt b/meta-security/files/waf-cross-answers/cross-answers-armeb.txt
new file mode 100644
index 0000000..a5cd998
--- /dev/null
+++ b/meta-security/files/waf-cross-answers/cross-answers-armeb.txt
@@ -0,0 +1,40 @@
+Checking uname sysname type: "Linux"
+Checking uname version type: "# Wed May 20 10:34:39 UTC 2015"
+Checking simple C program: "hello world"
+rpath library support: OK
+-Wl,--version-script support: OK
+Checking getconf LFS_CFLAGS: NO
+Checking correct behavior of strtoll: NO
+Checking for working strptime: OK
+Checking for C99 vsnprintf: "1"
+Checking for HAVE_SHARED_MMAP: OK
+Checking for HAVE_MREMAP: OK
+Checking for HAVE_SECURE_MKSTEMP: OK
+Checking for HAVE_IFACE_GETIFADDRS: NO
+Checking for HAVE_IFACE_IFCONF: NO
+Checking for HAVE_IFACE_IFREQ: NO
+Checking for large file support without additional flags: NO
+Checking for -D_FILE_OFFSET_BITS=64: OK
+Checking for HAVE_INCOHERENT_MMAP: NO
+Checking value of NSIG: "65"
+Checking value of _NSIG: "65"
+Checking value of SIGRTMAX: "64"
+Checking value of SIGRTMIN: "34"
+Checking whether the WRFILE -keytab is supported: OK
+Checking for kernel change notify support: OK
+Checking for Linux kernel oplocks: OK
+Checking for kernel share modes: OK
+Checking whether POSIX capabilities are available: OK
+Checking if can we convert from CP850 to UCS-2LE: OK
+Checking if can we convert from UTF-8 to UCS-2LE: OK
+vfs_fileid checking for statfs() and struct statfs.f_fsid: OK
+Checking whether we can use Linux thread-specific credentials with 32-bit system calls: OK
+Checking whether fcntl locking is available: OK
+Checking for the maximum value of the 'time_t' type: NO
+Checking whether the realpath function allows a NULL argument: OK
+Checking for ftruncate extend: OK
+getcwd takes a NULL argument: OK
+Checking for small off_t: NO
+Checking whether blkcnt_t is 32 bit: NO
+Checking whether blkcnt_t is 64 bit: OK
+Checking whether fcntl lock supports open file description locks: OK
diff --git a/meta-security/files/waf-cross-answers/cross-answers-i586.txt b/meta-security/files/waf-cross-answers/cross-answers-i586.txt
new file mode 100644
index 0000000..a5cd998
--- /dev/null
+++ b/meta-security/files/waf-cross-answers/cross-answers-i586.txt
@@ -0,0 +1,40 @@
+Checking uname sysname type: "Linux"
+Checking uname version type: "# Wed May 20 10:34:39 UTC 2015"
+Checking simple C program: "hello world"
+rpath library support: OK
+-Wl,--version-script support: OK
+Checking getconf LFS_CFLAGS: NO
+Checking correct behavior of strtoll: NO
+Checking for working strptime: OK
+Checking for C99 vsnprintf: "1"
+Checking for HAVE_SHARED_MMAP: OK
+Checking for HAVE_MREMAP: OK
+Checking for HAVE_SECURE_MKSTEMP: OK
+Checking for HAVE_IFACE_GETIFADDRS: NO
+Checking for HAVE_IFACE_IFCONF: NO
+Checking for HAVE_IFACE_IFREQ: NO
+Checking for large file support without additional flags: NO
+Checking for -D_FILE_OFFSET_BITS=64: OK
+Checking for HAVE_INCOHERENT_MMAP: NO
+Checking value of NSIG: "65"
+Checking value of _NSIG: "65"
+Checking value of SIGRTMAX: "64"
+Checking value of SIGRTMIN: "34"
+Checking whether the WRFILE -keytab is supported: OK
+Checking for kernel change notify support: OK
+Checking for Linux kernel oplocks: OK
+Checking for kernel share modes: OK
+Checking whether POSIX capabilities are available: OK
+Checking if can we convert from CP850 to UCS-2LE: OK
+Checking if can we convert from UTF-8 to UCS-2LE: OK
+vfs_fileid checking for statfs() and struct statfs.f_fsid: OK
+Checking whether we can use Linux thread-specific credentials with 32-bit system calls: OK
+Checking whether fcntl locking is available: OK
+Checking for the maximum value of the 'time_t' type: NO
+Checking whether the realpath function allows a NULL argument: OK
+Checking for ftruncate extend: OK
+getcwd takes a NULL argument: OK
+Checking for small off_t: NO
+Checking whether blkcnt_t is 32 bit: NO
+Checking whether blkcnt_t is 64 bit: OK
+Checking whether fcntl lock supports open file description locks: OK
diff --git a/meta-security/files/waf-cross-answers/cross-answers-i686.txt b/meta-security/files/waf-cross-answers/cross-answers-i686.txt
new file mode 100644
index 0000000..a5cd998
--- /dev/null
+++ b/meta-security/files/waf-cross-answers/cross-answers-i686.txt
@@ -0,0 +1,40 @@
+Checking uname sysname type: "Linux"
+Checking uname version type: "# Wed May 20 10:34:39 UTC 2015"
+Checking simple C program: "hello world"
+rpath library support: OK
+-Wl,--version-script support: OK
+Checking getconf LFS_CFLAGS: NO
+Checking correct behavior of strtoll: NO
+Checking for working strptime: OK
+Checking for C99 vsnprintf: "1"
+Checking for HAVE_SHARED_MMAP: OK
+Checking for HAVE_MREMAP: OK
+Checking for HAVE_SECURE_MKSTEMP: OK
+Checking for HAVE_IFACE_GETIFADDRS: NO
+Checking for HAVE_IFACE_IFCONF: NO
+Checking for HAVE_IFACE_IFREQ: NO
+Checking for large file support without additional flags: NO
+Checking for -D_FILE_OFFSET_BITS=64: OK
+Checking for HAVE_INCOHERENT_MMAP: NO
+Checking value of NSIG: "65"
+Checking value of _NSIG: "65"
+Checking value of SIGRTMAX: "64"
+Checking value of SIGRTMIN: "34"
+Checking whether the WRFILE -keytab is supported: OK
+Checking for kernel change notify support: OK
+Checking for Linux kernel oplocks: OK
+Checking for kernel share modes: OK
+Checking whether POSIX capabilities are available: OK
+Checking if can we convert from CP850 to UCS-2LE: OK
+Checking if can we convert from UTF-8 to UCS-2LE: OK
+vfs_fileid checking for statfs() and struct statfs.f_fsid: OK
+Checking whether we can use Linux thread-specific credentials with 32-bit system calls: OK
+Checking whether fcntl locking is available: OK
+Checking for the maximum value of the 'time_t' type: NO
+Checking whether the realpath function allows a NULL argument: OK
+Checking for ftruncate extend: OK
+getcwd takes a NULL argument: OK
+Checking for small off_t: NO
+Checking whether blkcnt_t is 32 bit: NO
+Checking whether blkcnt_t is 64 bit: OK
+Checking whether fcntl lock supports open file description locks: OK
diff --git a/meta-security/files/waf-cross-answers/cross-answers-mips.txt b/meta-security/files/waf-cross-answers/cross-answers-mips.txt
new file mode 100644
index 0000000..3e239e7
--- /dev/null
+++ b/meta-security/files/waf-cross-answers/cross-answers-mips.txt
@@ -0,0 +1,40 @@
+Checking uname sysname type: "Linux"
+Checking uname version type: "# Wed May 20 10:34:39 UTC 2015"
+Checking simple C program: "hello world"
+rpath library support: OK
+-Wl,--version-script support: OK
+Checking getconf LFS_CFLAGS: NO
+Checking correct behavior of strtoll: NO
+Checking for working strptime: OK
+Checking for C99 vsnprintf: "1"
+Checking for HAVE_SHARED_MMAP: OK
+Checking for HAVE_MREMAP: OK
+Checking for HAVE_SECURE_MKSTEMP: OK
+Checking for HAVE_IFACE_GETIFADDRS: NO
+Checking for HAVE_IFACE_IFCONF: NO
+Checking for HAVE_IFACE_IFREQ: NO
+Checking for large file support without additional flags: NO
+Checking for -D_FILE_OFFSET_BITS=64: OK
+Checking for HAVE_INCOHERENT_MMAP: NO
+Checking value of NSIG: "128"
+Checking value of _NSIG: "128"
+Checking value of SIGRTMAX: "127"
+Checking value of SIGRTMIN: "34"
+Checking whether the WRFILE -keytab is supported: OK
+Checking for kernel change notify support: OK
+Checking for Linux kernel oplocks: OK
+Checking for kernel share modes: OK
+Checking whether POSIX capabilities are available: OK
+Checking if can we convert from CP850 to UCS-2LE: OK
+Checking if can we convert from UTF-8 to UCS-2LE: OK
+vfs_fileid checking for statfs() and struct statfs.f_fsid: OK
+Checking whether we can use Linux thread-specific credentials: OK
+Checking whether fcntl locking is available: OK
+Checking for the maximum value of the 'time_t' type: NO
+Checking whether the realpath function allows a NULL argument: OK
+Checking for ftruncate extend: OK
+getcwd takes a NULL argument: OK
+Checking for small off_t: NO
+Checking whether blkcnt_t is 32 bit: NO
+Checking whether blkcnt_t is 64 bit: OK
+Checking whether fcntl lock supports open file description locks: OK
diff --git a/meta-security/files/waf-cross-answers/cross-answers-mips64.txt b/meta-security/files/waf-cross-answers/cross-answers-mips64.txt
new file mode 100644
index 0000000..82e694f
--- /dev/null
+++ b/meta-security/files/waf-cross-answers/cross-answers-mips64.txt
@@ -0,0 +1,39 @@
+Checking uname sysname type: "Linux"
+Checking uname version type: "# Wed May 20 10:34:39 UTC 2015"
+Checking simple C program: "hello world"
+rpath library support: OK
+-Wl,--version-script support: OK
+Checking getconf LFS_CFLAGS: NO
+Checking correct behavior of strtoll: NO
+Checking for working strptime: OK
+Checking for C99 vsnprintf: "1"
+Checking for HAVE_SHARED_MMAP: OK
+Checking for HAVE_MREMAP: OK
+Checking for HAVE_SECURE_MKSTEMP: OK
+Checking for HAVE_IFACE_GETIFADDRS: NO
+Checking for HAVE_IFACE_IFCONF: NO
+Checking for HAVE_IFACE_IFREQ: NO
+Checking for large file support without additional flags: OK
+Checking for HAVE_INCOHERENT_MMAP: OK
+Checking value of NSIG: "128"
+Checking value of _NSIG: "128"
+Checking value of SIGRTMAX: "127"
+Checking value of SIGRTMIN: "34"
+Checking whether the WRFILE -keytab is supported: OK
+Checking for kernel change notify support: OK
+Checking for Linux kernel oplocks: OK
+Checking for kernel share modes: OK
+Checking whether POSIX capabilities are available: OK
+Checking if can we convert from CP850 to UCS-2LE: OK
+Checking if can we convert from UTF-8 to UCS-2LE: OK
+vfs_fileid checking for statfs() and struct statfs.f_fsid: OK
+Checking whether we can use Linux thread-specific credentials: OK
+Checking whether fcntl locking is available: OK
+Checking for the maximum value of the 'time_t' type: OK
+Checking whether the realpath function allows a NULL argument: OK
+Checking for ftruncate extend: OK
+getcwd takes a NULL argument: OK
+Checking for small off_t: NO
+Checking whether blkcnt_t is 32 bit: NO
+Checking whether blkcnt_t is 64 bit: OK
+Checking whether fcntl lock supports open file description locks: OK
diff --git a/meta-security/files/waf-cross-answers/cross-answers-mips64el.txt b/meta-security/files/waf-cross-answers/cross-answers-mips64el.txt
new file mode 100644
index 0000000..82e694f
--- /dev/null
+++ b/meta-security/files/waf-cross-answers/cross-answers-mips64el.txt
@@ -0,0 +1,39 @@
+Checking uname sysname type: "Linux"
+Checking uname version type: "# Wed May 20 10:34:39 UTC 2015"
+Checking simple C program: "hello world"
+rpath library support: OK
+-Wl,--version-script support: OK
+Checking getconf LFS_CFLAGS: NO
+Checking correct behavior of strtoll: NO
+Checking for working strptime: OK
+Checking for C99 vsnprintf: "1"
+Checking for HAVE_SHARED_MMAP: OK
+Checking for HAVE_MREMAP: OK
+Checking for HAVE_SECURE_MKSTEMP: OK
+Checking for HAVE_IFACE_GETIFADDRS: NO
+Checking for HAVE_IFACE_IFCONF: NO
+Checking for HAVE_IFACE_IFREQ: NO
+Checking for large file support without additional flags: OK
+Checking for HAVE_INCOHERENT_MMAP: OK
+Checking value of NSIG: "128"
+Checking value of _NSIG: "128"
+Checking value of SIGRTMAX: "127"
+Checking value of SIGRTMIN: "34"
+Checking whether the WRFILE -keytab is supported: OK
+Checking for kernel change notify support: OK
+Checking for Linux kernel oplocks: OK
+Checking for kernel share modes: OK
+Checking whether POSIX capabilities are available: OK
+Checking if can we convert from CP850 to UCS-2LE: OK
+Checking if can we convert from UTF-8 to UCS-2LE: OK
+vfs_fileid checking for statfs() and struct statfs.f_fsid: OK
+Checking whether we can use Linux thread-specific credentials: OK
+Checking whether fcntl locking is available: OK
+Checking for the maximum value of the 'time_t' type: OK
+Checking whether the realpath function allows a NULL argument: OK
+Checking for ftruncate extend: OK
+getcwd takes a NULL argument: OK
+Checking for small off_t: NO
+Checking whether blkcnt_t is 32 bit: NO
+Checking whether blkcnt_t is 64 bit: OK
+Checking whether fcntl lock supports open file description locks: OK
diff --git a/meta-security/files/waf-cross-answers/cross-answers-mipsel.txt b/meta-security/files/waf-cross-answers/cross-answers-mipsel.txt
new file mode 100644
index 0000000..3e239e7
--- /dev/null
+++ b/meta-security/files/waf-cross-answers/cross-answers-mipsel.txt
@@ -0,0 +1,40 @@
+Checking uname sysname type: "Linux"
+Checking uname version type: "# Wed May 20 10:34:39 UTC 2015"
+Checking simple C program: "hello world"
+rpath library support: OK
+-Wl,--version-script support: OK
+Checking getconf LFS_CFLAGS: NO
+Checking correct behavior of strtoll: NO
+Checking for working strptime: OK
+Checking for C99 vsnprintf: "1"
+Checking for HAVE_SHARED_MMAP: OK
+Checking for HAVE_MREMAP: OK
+Checking for HAVE_SECURE_MKSTEMP: OK
+Checking for HAVE_IFACE_GETIFADDRS: NO
+Checking for HAVE_IFACE_IFCONF: NO
+Checking for HAVE_IFACE_IFREQ: NO
+Checking for large file support without additional flags: NO
+Checking for -D_FILE_OFFSET_BITS=64: OK
+Checking for HAVE_INCOHERENT_MMAP: NO
+Checking value of NSIG: "128"
+Checking value of _NSIG: "128"
+Checking value of SIGRTMAX: "127"
+Checking value of SIGRTMIN: "34"
+Checking whether the WRFILE -keytab is supported: OK
+Checking for kernel change notify support: OK
+Checking for Linux kernel oplocks: OK
+Checking for kernel share modes: OK
+Checking whether POSIX capabilities are available: OK
+Checking if can we convert from CP850 to UCS-2LE: OK
+Checking if can we convert from UTF-8 to UCS-2LE: OK
+vfs_fileid checking for statfs() and struct statfs.f_fsid: OK
+Checking whether we can use Linux thread-specific credentials: OK
+Checking whether fcntl locking is available: OK
+Checking for the maximum value of the 'time_t' type: NO
+Checking whether the realpath function allows a NULL argument: OK
+Checking for ftruncate extend: OK
+getcwd takes a NULL argument: OK
+Checking for small off_t: NO
+Checking whether blkcnt_t is 32 bit: NO
+Checking whether blkcnt_t is 64 bit: OK
+Checking whether fcntl lock supports open file description locks: OK
diff --git a/meta-security/files/waf-cross-answers/cross-answers-powerpc.txt b/meta-security/files/waf-cross-answers/cross-answers-powerpc.txt
new file mode 100644
index 0000000..27b9378
--- /dev/null
+++ b/meta-security/files/waf-cross-answers/cross-answers-powerpc.txt
@@ -0,0 +1,40 @@
+Checking uname sysname type: "Linux"
+Checking uname version type: "# Wed May 20 10:34:39 UTC 2015"
+Checking simple C program: "hello world"
+rpath library support: OK
+-Wl,--version-script support: OK
+Checking getconf LFS_CFLAGS: NO
+Checking correct behavior of strtoll: NO
+Checking for working strptime: OK
+Checking for C99 vsnprintf: "1"
+Checking for HAVE_SHARED_MMAP: OK
+Checking for HAVE_MREMAP: OK
+Checking for HAVE_SECURE_MKSTEMP: OK
+Checking for HAVE_IFACE_GETIFADDRS: NO
+Checking for HAVE_IFACE_IFCONF: NO
+Checking for HAVE_IFACE_IFREQ: NO
+Checking for large file support without additional flags: NO
+Checking for -D_FILE_OFFSET_BITS=64: OK
+Checking for HAVE_INCOHERENT_MMAP: NO
+Checking value of NSIG: "65"
+Checking value of _NSIG: "65"
+Checking value of SIGRTMAX: "64"
+Checking value of SIGRTMIN: "34"
+Checking whether the WRFILE -keytab is supported: OK
+Checking for kernel change notify support: OK
+Checking for Linux kernel oplocks: OK
+Checking for kernel share modes: OK
+Checking whether POSIX capabilities are available: OK
+Checking if can we convert from CP850 to UCS-2LE: OK
+Checking if can we convert from UTF-8 to UCS-2LE: OK
+vfs_fileid checking for statfs() and struct statfs.f_fsid: OK
+Checking whether we can use Linux thread-specific credentials: OK
+Checking whether fcntl locking is available: OK
+Checking for the maximum value of the 'time_t' type: NO
+Checking whether the realpath function allows a NULL argument: OK
+Checking for ftruncate extend: OK
+getcwd takes a NULL argument: OK
+Checking for small off_t: NO
+Checking whether blkcnt_t is 32 bit: NO
+Checking whether blkcnt_t is 64 bit: OK
+Checking whether fcntl lock supports open file description locks: OK
diff --git a/meta-security/files/waf-cross-answers/cross-answers-powerpc64.txt b/meta-security/files/waf-cross-answers/cross-answers-powerpc64.txt
new file mode 100644
index 0000000..7fd3092
--- /dev/null
+++ b/meta-security/files/waf-cross-answers/cross-answers-powerpc64.txt
@@ -0,0 +1,40 @@
+Checking uname sysname type: "Linux"
+Checking uname version type: "# Wed May 20 10:34:39 UTC 2015"
+Checking simple C program: "hello world"
+rpath library support: OK
+-Wl,--version-script support: OK
+Checking getconf LFS_CFLAGS: NO
+Checking correct behavior of strtoll: NO
+Checking for working strptime: OK
+Checking for C99 vsnprintf: "1"
+Checking for HAVE_SHARED_MMAP: OK
+Checking for HAVE_MREMAP: OK
+Checking for HAVE_SECURE_MKSTEMP: OK
+Checking for HAVE_IFACE_GETIFADDRS: NO
+Checking for HAVE_IFACE_IFCONF: NO
+Checking for HAVE_IFACE_IFREQ: NO
+Checking for large file support without additional flags: OK
+Checking for HAVE_INCOHERENT_MMAP: NO
+Checking value of NSIG: "65"
+Checking value of _NSIG: "65"
+Checking value of SIGRTMAX: "64"
+Checking value of SIGRTMIN: "34"
+Checking whether the WRFILE -keytab is supported: OK
+Checking for kernel change notify support: OK
+Checking for Linux kernel oplocks: OK
+Checking for kernel share modes: OK
+Checking whether POSIX capabilities are available: OK
+Checking if can we convert from CP850 to UCS-2LE: (255, "")
+Checking if can we convert from IBM850 to UCS-2LE: (255, "")
+Checking if can we convert from UTF-8 to UCS-2LE: OK
+vfs_fileid checking for statfs() and struct statfs.f_fsid: OK
+Checking whether we can use Linux thread-specific credentials: OK
+Checking whether fcntl locking is available: OK
+Checking for the maximum value of the 'time_t' type: OK
+Checking whether the realpath function allows a NULL argument: OK
+Checking for ftruncate extend: OK
+getcwd takes a NULL argument: OK
+Checking for small off_t: NO
+Checking whether blkcnt_t is 32 bit: NO
+Checking whether blkcnt_t is 64 bit: OK
+Checking whether fcntl lock supports open file description locks: OK
diff --git a/meta-security/files/waf-cross-answers/cross-answers-riscv64.txt b/meta-security/files/waf-cross-answers/cross-answers-riscv64.txt
new file mode 100644
index 0000000..1023f6a
--- /dev/null
+++ b/meta-security/files/waf-cross-answers/cross-answers-riscv64.txt
@@ -0,0 +1,39 @@
+Checking uname sysname type: "Linux"
+Checking uname version type: "# Wed May 20 10:34:39 UTC 2015"
+Checking simple C program: "hello world"
+rpath library support: OK
+-Wl,--version-script support: OK
+Checking getconf LFS_CFLAGS: NO
+Checking correct behavior of strtoll: NO
+Checking for working strptime: OK
+Checking for C99 vsnprintf: "1"
+Checking for HAVE_SHARED_MMAP: OK
+Checking for HAVE_MREMAP: OK
+Checking for HAVE_SECURE_MKSTEMP: OK
+Checking for HAVE_IFACE_GETIFADDRS: NO
+Checking for HAVE_IFACE_IFCONF: NO
+Checking for HAVE_IFACE_IFREQ: NO
+Checking for large file support without additional flags: OK
+Checking for HAVE_INCOHERENT_MMAP: NO
+Checking value of NSIG: "65"
+Checking value of _NSIG: "65"
+Checking value of SIGRTMAX: "64"
+Checking value of SIGRTMIN: "34"
+Checking whether the WRFILE -keytab is supported: OK
+Checking for kernel change notify support: OK
+Checking for Linux kernel oplocks: OK
+Checking for kernel share modes: OK
+Checking whether POSIX capabilities are available: OK
+Checking if can we convert from CP850 to UCS-2LE: OK
+Checking if can we convert from UTF-8 to UCS-2LE: OK
+vfs_fileid checking for statfs() and struct statfs.f_fsid: OK
+Checking whether we can use Linux thread-specific credentials: OK
+Checking whether fcntl locking is available: OK
+Checking for the maximum value of the 'time_t' type: OK
+Checking whether the realpath function allows a NULL argument: OK
+Checking for ftruncate extend: OK
+getcwd takes a NULL argument: OK
+Checking for small off_t: NO
+Checking whether blkcnt_t is 32 bit: NO
+Checking whether blkcnt_t is 64 bit: OK
+Checking whether fcntl lock supports open file description locks: OK
diff --git a/meta-security/files/waf-cross-answers/cross-answers-x86_64.txt b/meta-security/files/waf-cross-answers/cross-answers-x86_64.txt
new file mode 100644
index 0000000..1023f6a
--- /dev/null
+++ b/meta-security/files/waf-cross-answers/cross-answers-x86_64.txt
@@ -0,0 +1,39 @@
+Checking uname sysname type: "Linux"
+Checking uname version type: "# Wed May 20 10:34:39 UTC 2015"
+Checking simple C program: "hello world"
+rpath library support: OK
+-Wl,--version-script support: OK
+Checking getconf LFS_CFLAGS: NO
+Checking correct behavior of strtoll: NO
+Checking for working strptime: OK
+Checking for C99 vsnprintf: "1"
+Checking for HAVE_SHARED_MMAP: OK
+Checking for HAVE_MREMAP: OK
+Checking for HAVE_SECURE_MKSTEMP: OK
+Checking for HAVE_IFACE_GETIFADDRS: NO
+Checking for HAVE_IFACE_IFCONF: NO
+Checking for HAVE_IFACE_IFREQ: NO
+Checking for large file support without additional flags: OK
+Checking for HAVE_INCOHERENT_MMAP: NO
+Checking value of NSIG: "65"
+Checking value of _NSIG: "65"
+Checking value of SIGRTMAX: "64"
+Checking value of SIGRTMIN: "34"
+Checking whether the WRFILE -keytab is supported: OK
+Checking for kernel change notify support: OK
+Checking for Linux kernel oplocks: OK
+Checking for kernel share modes: OK
+Checking whether POSIX capabilities are available: OK
+Checking if can we convert from CP850 to UCS-2LE: OK
+Checking if can we convert from UTF-8 to UCS-2LE: OK
+vfs_fileid checking for statfs() and struct statfs.f_fsid: OK
+Checking whether we can use Linux thread-specific credentials: OK
+Checking whether fcntl locking is available: OK
+Checking for the maximum value of the 'time_t' type: OK
+Checking whether the realpath function allows a NULL argument: OK
+Checking for ftruncate extend: OK
+getcwd takes a NULL argument: OK
+Checking for small off_t: NO
+Checking whether blkcnt_t is 32 bit: NO
+Checking whether blkcnt_t is 64 bit: OK
+Checking whether fcntl lock supports open file description locks: OK
diff --git a/meta-security/lib/oeqa/runtime/cases/apparmor.py b/meta-security/lib/oeqa/runtime/cases/apparmor.py
index e2cb316..b6a9537 100644
--- a/meta-security/lib/oeqa/runtime/cases/apparmor.py
+++ b/meta-security/lib/oeqa/runtime/cases/apparmor.py
@@ -25,3 +25,22 @@
msg = ('aa-status failed. '
'Status and output:%s and %s' % (status, output))
self.assertEqual(status, 0, msg = msg)
+
+ @OETestDepends(['apparmor.ApparmorTest.test_apparmor_aa_status'])
+ def test_apparmor_aa_complain(self):
+ status, output = self.target.run('aa-complain /etc/apparmor.d/*')
+ match = re.search('apparmor module is loaded.', output)
+ if not match:
+ msg = ('aa-complain failed. '
+ 'Status and output:%s and %s' % (status, output))
+ self.assertEqual(status, 0, msg = msg)
+
+ @OETestDepends(['apparmor.ApparmorTest.test_apparmor_aa_complain'])
+ def test_apparmor_aa_enforce(self):
+ status, output = self.target.run('aa-enforce /etc/apparmor.d/*')
+ match = re.search('apparmor module is loaded.', output)
+ if not match:
+ msg = ('aa-enforce failed. '
+ 'Status and output:%s and %s' % (status, output))
+ self.assertEqual(status, 0, msg = msg)
+
diff --git a/meta-security/lib/oeqa/runtime/cases/clamav.py b/meta-security/lib/oeqa/runtime/cases/clamav.py
index fc77330..d0bc645 100644
--- a/meta-security/lib/oeqa/runtime/cases/clamav.py
+++ b/meta-security/lib/oeqa/runtime/cases/clamav.py
@@ -1,6 +1,7 @@
# Copyright (C) 2019 Armin Kuster <akuster808@gmail.com>
#
import re
+from tempfile import mkstemp
from oeqa.runtime.case import OERuntimeTestCase
from oeqa.core.decorator.depends import OETestDepends
@@ -9,6 +10,22 @@
class ClamavTest(OERuntimeTestCase):
+ @classmethod
+ def setUpClass(cls):
+ cls.tmp_fd, cls.tmp_path = mkstemp()
+ with os.fdopen(cls.tmp_fd, 'w') as f:
+ # use gooled public dns
+ f.write("nameserver 8.8.8.8")
+ f.write(os.linesep)
+ f.write("nameserver 8.8.4.4")
+ f.write(os.linesep)
+ f.write("nameserver 127.0.0.1")
+ f.write(os.linesep)
+
+ @classmethod
+ def tearDownClass(cls):
+ os.remove(cls.tmp_path)
+
@OEHasPackage(['clamav'])
@OETestDepends(['ssh.SSHTest.test_ssh'])
def test_freshclam_help(self):
@@ -18,6 +35,19 @@
self.assertEqual(status, 0, msg = msg)
@OETestDepends(['clamav.ClamavTest.test_freshclam_help'])
+ @OEHasPackage(['openssh-scp', 'dropbear'])
+ def test_ping_clamav_net(self):
+ dst = '/etc/resolv.conf'
+ self.tc.target.run('rm -f %s' % dst)
+ (status, output) = self.tc.target.copyTo(self.tmp_path, dst)
+ msg = 'File could not be copied. Output: %s' % output
+ self.assertEqual(status, 0, msg=msg)
+
+ status, output = self.target.run('ping -c 1 database.clamav.net')
+ msg = ('ping database.clamav.net failed: output is:\n%s' % output)
+ self.assertEqual(status, 0, msg = msg)
+
+ @OETestDepends(['clamav.ClamavTest.test_ping_clamav_net'])
def test_freshclam_download(self):
status, output = self.target.run('freshclam --show-progress')
match = re.search('Database updated', output)
diff --git a/meta-security/lib/oeqa/runtime/cases/samhain.py b/meta-security/lib/oeqa/runtime/cases/samhain.py
index e4bae7b..5043a38 100644
--- a/meta-security/lib/oeqa/runtime/cases/samhain.py
+++ b/meta-security/lib/oeqa/runtime/cases/samhain.py
@@ -1,6 +1,7 @@
# Copyright (C) 2019 Armin Kuster <akuster808@gmail.com>
#
import re
+import os
from oeqa.runtime.case import OERuntimeTestCase
from oeqa.core.decorator.depends import OETestDepends
@@ -11,10 +12,32 @@
@OEHasPackage(['samhain-standalone'])
@OETestDepends(['ssh.SSHTest.test_ssh'])
- def test_samhain_standalone_help(self):
- status, output = self.target.run('samhain --help')
- match = re.search('Please report bugs to support@la-samhna.de.', output)
- if not match:
- msg = ('samhain-standalone command does not work as expected. '
+ def test_samhain_help(self):
+ machine = self.td.get('MACHINE', '')
+ status, output = self.target.run('echo "127.0.0.1 %s.localdomain %s" >> /etc/hosts' % (machine, machine))
+ msg = ("samhain can't append hosts. "
'Status and output:%s and %s' % (status, output))
- self.assertEqual(status, 1, msg = msg)
+ self.assertEqual(status, 0, msg = msg)
+
+ status, output = self.target.run('samhain --help')
+ msg = ('samhain command does not work as expected. '
+ 'Status and output:%s and %s' % (status, output))
+ self.assertEqual(status, 0, msg = msg)
+
+ @OETestDepends(['samhain.SamhainTest.test_samhain_help'])
+ def test_samhain_init_db(self):
+ status, output = self.target.run('samhain -t init')
+ match = re.search('FAILED: 0 ', output)
+ if not match:
+ msg = ('samhain database init had an unexpected failure. '
+ 'Status and output:%s and %s' % (status, output))
+ self.assertEqual(status, 0, msg = msg)
+
+ @OETestDepends(['samhain.SamhainTest.test_samhain_init_db'])
+ def test_samhain_db_check(self):
+ status, output = self.target.run('samhain -t check')
+ match = re.search('FAILED: 0 ', output)
+ if not match:
+ msg = ('samhain errors found in db. '
+ 'Status and output:%s and %s' % (status, output))
+ self.assertEqual(status, 0, msg = msg)
diff --git a/meta-security/lib/oeqa/runtime/cases/smack.py b/meta-security/lib/oeqa/runtime/cases/smack.py
new file mode 100644
index 0000000..35e87ef
--- /dev/null
+++ b/meta-security/lib/oeqa/runtime/cases/smack.py
@@ -0,0 +1,529 @@
+import unittest
+import re
+import os
+import string
+from oeqa.runtime.case import OERuntimeTestCase
+from oeqa.core.decorator.depends import OETestDepends
+from oeqa.runtime.decorator.package import OEHasPackage
+from oeqa.core.decorator.data import skipIfNotFeature
+
+MAX_LABEL_LEN = 255
+LABEL = "a" * MAX_LABEL_LEN
+
+class SmackBasicTest(OERuntimeTestCase):
+ ''' base smack test '''
+
+ @classmethod
+ def setUpClass(cls):
+ cls.smack_path = ""
+ cls.current_label = ""
+ cls.uid = 1000
+
+ @skipIfNotFeature('smack',
+ 'Test requires smack to be in DISTRO_FEATURES')
+ @OEHasPackage(['smack-test'])
+ @OETestDepends(['ssh.SSHTest.test_ssh'])
+ def test_smack_basic(self):
+ status, output = self.target.run("grep smack /proc/mounts | awk '{print $2}'")
+ self.smack_path = output
+ status,output = self.target.run("cat /proc/self/attr/current")
+ self.current_label = output.strip()
+
+class SmackAccessLabel(SmackBasicTest):
+
+ @OETestDepends(['smack.SmackBasicTest.test_smack_basic'])
+ def test_add_access_label(self):
+ ''' Test if chsmack can correctly set a SMACK label '''
+ filename = "/tmp/test_access_label"
+ self.target.run("touch %s" %filename)
+ status, output = self.target.run("chsmack -a %s %s" %(LABEL, filename))
+ self.assertEqual(
+ status, 0,
+ "Cannot set smack access label. "
+ "Status and output: %d %s" %(status, output))
+ status, output = self.target.run("chsmack %s" %filename)
+ self.target.run("rm %s" %filename)
+ m = re.search('(?<=access=")\S+(?=")', output)
+ if m is None:
+ self.fail("Did not find access attribute")
+ else:
+ label_retrieved = m .group(0)
+ self.assertEqual(
+ LABEL, label_retrieved,
+ "label not set correctly. expected and gotten: "
+ "%s %s" %(LABEL,label_retrieved))
+
+
+class SmackExecLabel(SmackBasicTest):
+
+ @OETestDepends(['smack.SmackBasicTest.test_smack_basic'])
+ def test_add_exec_label(self):
+ '''Test if chsmack can correctly set a SMACK Exec label'''
+ filename = "/tmp/test_exec_label"
+ self.target.run("touch %s" %filename)
+ status, output = self.target.run("chsmack -e %s %s" %(LABEL, filename))
+ self.assertEqual(
+ status, 0,
+ "Cannot set smack exec label. "
+ "Status and output: %d %s" %(status, output))
+ status, output = self.target.run("chsmack %s" %filename)
+ self.target.run("rm %s" %filename)
+ m= re.search('(?<=execute=")\S+(?=")', output)
+ if m is None:
+ self.fail("Did not find execute attribute")
+ else:
+ label_retrieved = m.group(0)
+ self.assertEqual(
+ LABEL, label_retrieved,
+ "label not set correctly. expected and gotten: " +
+ "%s %s" %(LABEL,label_retrieved))
+
+
+class SmackMmapLabel(SmackBasicTest):
+
+ @OETestDepends(['smack.SmackBasicTest.test_smack_basic'])
+ def test_add_mmap_label(self):
+ '''Test if chsmack can correctly set a SMACK mmap label'''
+ filename = "/tmp/test_exec_label"
+ self.target.run("touch %s" %filename)
+ status, output = self.target.run("chsmack -m %s %s" %(LABEL, filename))
+ self.assertEqual(
+ status, 0,
+ "Cannot set smack mmap label. "
+ "Status and output: %d %s" %(status, output))
+ status, output = self.target.run("chsmack %s" %filename)
+ self.target.run("rm %s" %filename)
+ m = re.search('(?<=mmap=")\S+(?=")', output)
+ if m is None:
+ self.fail("Did not find mmap attribute")
+ else:
+ label_retrieved = m.group(0)
+ self.assertEqual(
+ LABEL, label_retrieved,
+ "label not set correctly. expected and gotten: " +
+ "%s %s" %(LABEL,label_retrieved))
+
+
+class SmackTransmutable(SmackBasicTest):
+
+ @OETestDepends(['smack.SmackBasicTest.test_smack_basic'])
+ def test_add_transmutable(self):
+ '''Test if chsmack can correctly set a SMACK transmutable mode'''
+
+ directory = "~/test_transmutable"
+ self.target.run("mkdir -p %s" %directory)
+ status, output = self.target.run("chsmack -t %s" %directory)
+ self.assertEqual(status, 0, "Cannot set smack transmutable. "
+ "Status and output: %d %s" %(status, output))
+ status, output = self.target.run("chsmack %s" %directory)
+ self.target.run("rmdir %s" %directory)
+ m = re.search('(?<=transmute=")\S+(?=")', output)
+ if m is None:
+ self.fail("Did not find transmute attribute")
+ else:
+ label_retrieved = m.group(0)
+ self.assertEqual(
+ "TRUE", label_retrieved,
+ "label not set correctly. expected and gotten: " +
+ "%s %s" %(LABEL,label_retrieved))
+
+
+class SmackChangeSelfLabelPrivilege(SmackBasicTest):
+
+ @OETestDepends(['smack.SmackBasicTest.test_smack_basic'])
+ def test_privileged_change_self_label(self):
+ '''Test if privileged process (with CAP_MAC_ADMIN privilege)
+ can change its label.
+ '''
+
+ labelf = "/proc/self/attr/current"
+ command = "/bin/sh -c 'echo PRIVILEGED >%s; cat %s'" %(labelf, labelf)
+
+ status, output = self.target.run(
+ "notroot.py 0 %s %s" %(self.current_label, command))
+
+ self.assertIn("PRIVILEGED", output,
+ "Privilege process did not change label.Output: %s" %output)
+
+class SmackChangeSelfLabelUnprivilege(SmackBasicTest):
+
+ @OETestDepends(['smack.SmackBasicTest.test_smack_basic'])
+ def test_unprivileged_change_self_label(self):
+ '''Test if unprivileged process (without CAP_MAC_ADMIN privilege)
+ cannot change its label'''
+
+ command = "/bin/sh -c 'echo %s >/proc/self/attr/current'" %LABEL
+ status, output = self.target.run(
+ "notroot.py %d %s %s"
+ %(self.uid, self.current_label, command) +
+ " 2>&1 | grep 'Operation not permitted'" )
+
+ self.assertEqual(
+ status, 0,
+ "Unprivileged process should not be able to change its label")
+
+
+class SmackChangeFileLabelPrivilege(SmackBasicTest):
+
+ @OETestDepends(['smack.SmackBasicTest.test_smack_basic'])
+ def test_unprivileged_change_file_label(self):
+ '''Test if unprivileged process cannot change file labels'''
+
+ status, chsmack = self.target.run("which chsmack")
+ status, touch = self.target.run("which touch")
+ filename = "/tmp/test_unprivileged_change_file_label"
+
+ self.target.run("touch %s" % filename)
+ self.target.run("notroot.py %d %s" %(self.uid, self.current_label))
+ status, output = self.target.run(
+ "notroot.py " +
+ "%d unprivileged %s -a %s %s 2>&1 " %(self.uid, chsmack, LABEL, filename) +
+ "| grep 'Operation not permitted'" )
+
+ self.target.run("rm %s" % filename)
+ self.assertEqual( status, 0, "Unprivileged process changed label for %s" %filename)
+
+class SmackLoadRule(SmackBasicTest):
+
+ @OETestDepends(['smack.SmackBasicTest.test_smack_basic'])
+ def test_load_smack_rule(self):
+ '''Test if new smack access rules can be loaded'''
+
+ # old 23 character format requires special spaces formatting
+ # 12345678901234567890123456789012345678901234567890123
+ ruleA="TheOne TheOther rwxat"
+ ruleB="TheOne TheOther r----"
+ clean="TheOne TheOther -----"
+ modeA = "rwxat"
+ modeB = "r"
+
+ status, output = self.target.run('echo -n "%s" > %s/load' %(ruleA, self.smack_path))
+ status, output = self.target.run( 'cat %s/load | grep "^TheOne" | grep " TheOther "' %self.smack_path)
+ self.assertEqual(status, 0, "Rule A was not added")
+ mode = list(filter(bool, output.split(" ")))[2].strip()
+ self.assertEqual( mode, modeA, "Mode A was not set correctly; mode: %s" %mode)
+
+ status, output = self.target.run( 'echo -n "%s" > %s/load' %(ruleB, self.smack_path))
+ status, output = self.target.run( 'cat %s/load | grep "^TheOne" | grep " TheOther "' %self.smack_path)
+ mode = list(filter(bool, output.split(" ")))[2].strip()
+ self.assertEqual( mode, modeB, "Mode B was not set correctly; mode: %s" %mode)
+
+ self.target.run('echo -n "%s" > %s/load' %(clean, self.smack_path))
+
+
+class SmackOnlycap(SmackBasicTest):
+
+ @OETestDepends(['smack.SmackBasicTest.test_smack_basic'])
+ def test_smack_onlycap(self):
+ '''Test if smack onlycap label can be set
+
+ test needs to change the running label of the current process,
+ so whole test takes places on image
+ '''
+ status, output = self.target.run("sh /usr/sbin/test_smack_onlycap.sh")
+ self.assertEqual(status, 0, output)
+
+class SmackNetlabel(SmackBasicTest):
+
+ @OETestDepends(['smack.SmackBasicTest.test_smack_basic'])
+ def test_smack_netlabel(self):
+
+ test_label="191.191.191.191 TheOne"
+ expected_label="191.191.191.191/32 TheOne"
+
+ status, output = self.target.run( "echo -n '%s' > %s/netlabel" %(test_label, self.smack_path))
+ self.assertEqual( status, 0, "Netlabel /32 could not be set. Output: %s" %output)
+
+ status, output = self.target.run("cat %s/netlabel" %self.smack_path)
+ self.assertIn( expected_label, output, "Did not find expected label in output: %s" %output)
+
+ test_label="253.253.253.0/24 TheOther"
+ status, output = self.target.run( "echo -n '%s' > %s/netlabel" %(test_label, self.smack_path))
+ self.assertEqual( status, 0, "Netlabel /24 could not be set. Output: %s" %output)
+
+ status, output = self.target.run("cat %s/netlabel" %self.smack_path)
+ self.assertIn(
+ test_label, output,
+ "Did not find expected label in output: %s" %output)
+
+class SmackCipso(SmackBasicTest):
+
+ @OETestDepends(['smack.SmackBasicTest.test_smack_basic'])
+ def test_smack_cipso(self):
+ '''Test if smack cipso rules can be set'''
+ # 12345678901234567890123456789012345678901234567890123456
+ ruleA="TheOneA 2 0 "
+ ruleB="TheOneB 3 1 55 "
+ ruleC="TheOneC 4 2 17 33 "
+
+ status, output = self.target.run(
+ "echo -n '%s' > %s/cipso" %(ruleA, self.smack_path))
+ self.assertEqual(status, 0,
+ "Could not set cipso label A. Ouput: %s" %output)
+
+ status, output = self.target.run(
+ "cat %s/cipso | grep '^TheOneA'" %self.smack_path)
+ self.assertEqual(status, 0, "Cipso rule A was not set")
+ self.assertIn(" 2", output, "Rule A was not set correctly")
+
+ status, output = self.target.run(
+ "echo -n '%s' > %s/cipso" %(ruleB, self.smack_path))
+ self.assertEqual(status, 0,
+ "Could not set cipso label B. Ouput: %s" %output)
+
+ status, output = self.target.run(
+ "cat %s/cipso | grep '^TheOneB'" %self.smack_path)
+ self.assertEqual(status, 0, "Cipso rule B was not set")
+ self.assertIn("/55", output, "Rule B was not set correctly")
+
+ status, output = self.target.run(
+ "echo -n '%s' > %s/cipso" %(ruleC, self.smack_path))
+ self.assertEqual(
+ status, 0,
+ "Could not set cipso label C. Ouput: %s" %output)
+
+ status, output = self.target.run(
+ "cat %s/cipso | grep '^TheOneC'" %self.smack_path)
+ self.assertEqual(status, 0, "Cipso rule C was not set")
+ self.assertIn("/17,33", output, "Rule C was not set correctly")
+
+class SmackDirect(SmackBasicTest):
+
+ @OETestDepends(['smack.SmackBasicTest.test_smack_basic'])
+ def test_smack_direct(self):
+ status, initial_direct = self.target.run(
+ "cat %s/direct" %self.smack_path)
+
+ test_direct="17"
+ status, output = self.target.run(
+ "echo '%s' > %s/direct" %(test_direct, self.smack_path))
+ self.assertEqual(status, 0 ,
+ "Could not set smack direct. Output: %s" %output)
+ status, new_direct = self.target.run("cat %s/direct" %self.smack_path)
+ # initial label before checking
+ status, output = self.target.run(
+ "echo '%s' > %s/direct" %(initial_direct, self.smack_path))
+ self.assertEqual(
+ test_direct, new_direct.strip(),
+ "Smack direct label does not match.")
+
+
+class SmackAmbient(SmackBasicTest):
+
+ @OETestDepends(['smack.SmackBasicTest.test_smack_basic'])
+ def test_smack_ambient(self):
+ test_ambient = "test_ambient"
+ status, initial_ambient = self.target.run("cat %s/ambient" %self.smack_path)
+ status, output = self.target.run(
+ "echo '%s' > %s/ambient" %(test_ambient, self.smack_path))
+ self.assertEqual(status, 0,
+ "Could not set smack ambient. Output: %s" %output)
+
+ status, output = self.target.run("cat %s/ambient" %self.smack_path)
+ # Filter '\x00', which is sometimes added to the ambient label
+ new_ambient = ''.join(filter(lambda x: x in string.printable, output))
+ initial_ambient = ''.join(filter(lambda x: x in string.printable, initial_ambient))
+ status, output = self.target.run(
+ "echo '%s' > %s/ambient" %(initial_ambient, self.smack_path))
+ self.assertEqual(
+ test_ambient, new_ambient.strip(),
+ "Ambient label does not match")
+
+
+class SmackloadBinary(SmackBasicTest):
+
+ @OETestDepends(['smack.SmackBasicTest.test_smack_basic'])
+ def test_smackload(self):
+ '''Test if smackload command works'''
+ rule="testobject testsubject rwx"
+
+ status, output = self.target.run("echo -n '%s' > /tmp/rules" %rule)
+ status, output = self.target.run("smackload /tmp/rules")
+ self.assertEqual( status, 0, "Smackload failed to load rule. Output: %s" %output)
+
+ status, output = self.target.run( "cat %s/load | grep '%s'" %(self.smack_path, rule))
+ self.assertEqual(status, 0, "Smackload rule was loaded correctly")
+
+
+class SmackcipsoBinary(SmackBasicTest):
+
+ @OETestDepends(['smack.SmackBasicTest.test_smack_basic'])
+ def test_smackcipso(self):
+ '''Test if smackcipso command works'''
+ # 12345678901234567890123456789012345678901234567890123456
+ rule="cipsolabel 2 2 "
+
+ status, output = self.target.run("echo '%s' | smackcipso" %rule)
+ self.assertEqual( status, 0, "Smackcipso failed to load rule. Output: %s" %output)
+
+ status, output = self.target.run(
+ "cat %s/cipso | grep 'cipsolabel'" %self.smack_path)
+ self.assertEqual(status, 0, "smackcipso rule was loaded correctly")
+ self.assertIn( "2/2", output, "Rule was not set correctly. Got: %s" %output)
+
+
+class SmackEnforceFileAccess(SmackBasicTest):
+
+ @OETestDepends(['smack.SmackBasicTest.test_smack_basic'])
+ def test_smack_enforce_file_access(self):
+ '''Test if smack file access is enforced (rwx)
+
+ test needs to change the running label of the current process,
+ so whole test takes places on image
+ '''
+ status, output = self.target.run("sh /usr/sbin/smack_test_file_access.sh")
+ self.assertEqual(status, 0, output)
+
+
+class SmackEnforceMmap(SmackBasicTest):
+
+ @OETestDepends(['smack.SmackBasicTest.test_smack_basic'])
+ def test_smack_mmap_enforced(self):
+ '''Test if smack mmap access is enforced'''
+ raise unittest.SkipTest("Depends on mmap_test, which was removed from the layer while investigating its license.")
+
+ # 12345678901234567890123456789012345678901234567890123456
+ delr1="mmap_label mmap_test_label1 -----"
+ delr2="mmap_label mmap_test_label2 -----"
+ delr3="mmap_file_label mmap_test_label1 -----"
+ delr4="mmap_file_label mmap_test_label2 -----"
+
+ RuleA="mmap_label mmap_test_label1 rw---"
+ RuleB="mmap_label mmap_test_label2 r--at"
+ RuleC="mmap_file_label mmap_test_label1 rw---"
+ RuleD="mmap_file_label mmap_test_label2 rwxat"
+
+ mmap_label="mmap_label"
+ file_label="mmap_file_label"
+ test_file = "/usr/sbin/smack_test_mmap"
+ mmap_exe = "/tmp/mmap_test"
+ status, echo = self.target.run("which echo")
+ status, output = self.target.run(
+ "notroot.py %d %s %s 'test' > %s" \
+ %(self.uid, self.current_label, echo, test_file))
+ status, output = self.target.run("ls %s" %test_file)
+ self.assertEqual(status, 0, "Could not create mmap test file")
+ self.target.run("chsmack -m %s %s" %(file_label, test_file))
+ self.target.run("chsmack -e %s %s" %(mmap_label, mmap_exe))
+
+ # test with no rules with mmap label or exec label as subject
+ # access should be granted
+ self.target.run('echo -n "%s" > %s/load' %(delr1, self.smack_path))
+ self.target.run('echo -n "%s" > %s/load' %(delr2, self.smack_path))
+ self.target.run('echo -n "%s" > %s/load' %(delr3, self.smack_path))
+ self.target.run('echo -n "%s" > %s/load' %(delr4, self.smack_path))
+ status, output = self.target.run("%s %s 0 2" % (mmap_exe, test_file))
+ self.assertEqual(
+ status, 0,
+ "Should have mmap access without rules. Output: %s" %output)
+
+ # add rules that do not match access required
+ self.target.run('echo -n "%s" > %s/load' %(RuleA, self.smack_path))
+ self.target.run('echo -n "%s" > %s/load' %(RuleB, self.smack_path))
+ status, output = self.target.run("%s %s 0 2" % (mmap_exe, test_file))
+ self.assertNotEqual(
+ status, 0,
+ "Should not have mmap access with unmatching rules. " +
+ "Output: %s" %output)
+ self.assertIn(
+ "Permission denied", output,
+ "Mmap access should be denied with unmatching rules")
+
+ # add rule to match only partially (one way)
+ self.target.run('echo -n "%s" > %s/load' %(RuleC, self.smack_path))
+ status, output = self.target.run("%s %s 0 2" %(mmap_exe, test_file))
+ self.assertNotEqual(
+ status, 0,
+ "Should not have mmap access with partial matching rules. " +
+ "Output: %s" %output)
+ self.assertIn(
+ "Permission denied", output,
+ "Mmap access should be denied with partial matching rules")
+
+ # add rule to match fully
+ self.target.run('echo -n "%s" > %s/load' %(RuleD, self.smack_path))
+ status, output = self.target.run("%s %s 0 2" %(mmap_exe, test_file))
+ self.assertEqual(
+ status, 0,
+ "Should have mmap access with full matching rules." +
+ "Output: %s" %output)
+
+
+class SmackEnforceTransmutable(SmackBasicTest):
+
+ @OETestDepends(['smack.SmackBasicTest.test_smack_basic'])
+ def test_smack_transmute_dir(self):
+ '''Test if smack transmute attribute works
+
+ test needs to change the running label of the current process,
+ so whole test takes places on image
+ '''
+ test_dir = "/tmp/smack_transmute_dir"
+ label="transmute_label"
+ status, initial_label = self.target.run("cat /proc/self/attr/current")
+
+ self.target.run("mkdir -p %s" % test_dir)
+ self.target.run("chsmack -a %s %s" % (label, test_dir))
+ self.target.run("chsmack -t %s" % test_dir)
+ self.target.run("echo -n '%s %s rwxat' | smackload" %(initial_label, label) )
+
+ self.target.run("touch %s/test" % test_dir)
+ status, output = self.target.run("chsmack %s/test" % test_dir)
+ self.assertIn( 'access="%s"' %label, output,
+ "Did not get expected label. Output: %s" % output)
+
+
+class SmackTcpSockets(SmackBasicTest):
+
+ @OETestDepends(['smack.SmackBasicTest.test_smack_basic'])
+ def test_smack_tcp_sockets(self):
+ '''Test if smack is enforced on tcp sockets
+
+ whole test takes places on image, depends on tcp_server/tcp_client'''
+
+ status, output = self.target.run("sh /usr/sbin/test_smack_tcp_sockets.sh")
+ self.assertEqual(status, 0, output)
+
+
+class SmackUdpSockets(SmackBasicTest):
+
+ @OETestDepends(['smack.SmackBasicTest.test_smack_basic'])
+ def test_smack_udp_sockets(self):
+ '''Test if smack is enforced on udp sockets
+
+ whole test takes places on image, depends on udp_server/udp_client'''
+
+ status, output = self.target.run("sh /usr/sbin/test_smack_udp_sockets.sh")
+ self.assertEqual(status, 0, output)
+
+
+class SmackFileLabels(SmackBasicTest):
+
+ @OETestDepends(['smack.SmackBasicTest.test_smack_basic'])
+ def test_smack_labels(self):
+ '''Check for correct Smack labels.'''
+ expected = '''
+/tmp/ access="*"
+/etc/ access="System::Shared" transmute="TRUE"
+/etc/passwd access="System::Shared"
+/etc/terminfo access="System::Shared" transmute="TRUE"
+/etc/skel/ access="System::Shared" transmute="TRUE"
+/etc/skel/.profile access="System::Shared"
+/var/log/ access="System::Log" transmute="TRUE"
+/var/tmp/ access="*"
+'''
+ files = ' '.join([x.split()[0] for x in expected.split('\n') if x])
+ files_wildcard = ' '.join([x + '/*' for x in files.split()])
+ # Auxiliary information.
+ status, output = self.target.run(
+ 'set -x; mount; ls -l -d %s; find %s | xargs ls -d -l; find %s | xargs chsmack' % (
+ ' '.join([x.rstrip('/') for x in files.split()]), files, files
+ )
+ )
+ msg = "File status:\n" + output
+ status, output = self.target.run('chsmack %s' % files)
+ self.assertEqual(
+ status, 0, msg="status and output: %s and %s\n%s" % (status,output, msg))
+ self.longMessage = True
+ self.maxDiff = None
+ self.assertEqual(output.strip().split('\n'), expected.strip().split('\n'), msg=msg)
diff --git a/meta-security/lib/oeqa/selftest/cases/cvechecker.py b/meta-security/lib/oeqa/selftest/cases/cvechecker.py
new file mode 100644
index 0000000..23ca7d2
--- /dev/null
+++ b/meta-security/lib/oeqa/selftest/cases/cvechecker.py
@@ -0,0 +1,27 @@
+import os
+import re
+
+from oeqa.selftest.case import OESelftestTestCase
+from oeqa.utils.commands import bitbake, get_bb_var
+
+class CveCheckerTests(OESelftestTestCase):
+ def test_cve_checker(self):
+ image = "core-image-sato"
+
+ deploy_dir = get_bb_var("DEPLOY_DIR_IMAGE")
+ image_link_name = get_bb_var('IMAGE_LINK_NAME', image)
+
+ manifest_link = os.path.join(deploy_dir, "%s.cve" % image_link_name)
+
+ self.logger.info('CVE_CHECK_MANIFEST = "%s"' % manifest_link)
+ if (not 'cve-check' in get_bb_var('INHERIT')):
+ add_cve_check_config = 'INHERIT += "cve-check"'
+ self.append_config(add_cve_check_config)
+ self.append_config('CVE_CHECK_MANIFEST = "%s"' % manifest_link)
+ result = bitbake("-k -c cve_check %s" % image, ignore_status=True)
+ if (not 'cve-check' in get_bb_var('INHERIT')):
+ self.remove_config(add_cve_check_config)
+
+ isfile = os.path.isfile(manifest_link)
+ self.assertEqual(True, isfile, 'Failed to create cve data file : %s' % manifest_link)
+
diff --git a/meta-security/meta-tpm/README b/meta-security/meta-tpm/README
index bbc70bb..dd662b3 100644
--- a/meta-security/meta-tpm/README
+++ b/meta-security/meta-tpm/README
@@ -2,3 +2,60 @@
==============
This layer contains base TPM recipes.
+
+Dependencies
+============
+
+This layer depends on:
+
+ URI: git://git.openembedded.org/openembedded-core
+ branch: master
+ revision: HEAD
+ prio: default
+
+ URI: git://git.openembedded.org/meta-openembedded/meta-oe
+ branch: master
+ revision: HEAD
+ prio: default
+
+Adding the meta-tpm layer to your build
+========================================
+
+In order to use this layer, you need to make the build system aware of
+it.
+
+Assuming this layer exists at the top-level of your
+yocto build tree, you can add it to the build system by adding the
+location of the meta-tpm layer to bblayers.conf, along with any
+other layers needed. e.g.:
+
+ BBLAYERS ?= " \
+ /path/to/oe-core/meta \
+ /path/to/meta-openembedded/meta-oe \
+ /path/to/layer/meta-tpm \
+
+
+Maintenance
+-----------
+
+Send pull requests, patches, comments or questions to yocto@yoctoproject.org
+
+When sending single patches, please using something like:
+'git send-email -1 --to yocto@yoctoproject.org --subject-prefix=meta-security][PATCH'
+
+These values can be set as defaults for this repository:
+
+$ git config sendemail.to yocto@yoctoproject.org
+$ git config format.subjectPrefix meta-security][PATCH
+
+Now you can just do 'git send-email origin/master' to send all local patches.
+
+Maintainers: Armin Kuster <akuster808@gmail.com>
+
+
+License
+=======
+
+All metadata is MIT licensed unless otherwise stated. Source code included
+in tree for individual recipes is under the LICENSE stated in each recipe
+(.bb file) unless otherwise stated.
diff --git a/meta-security/meta-tpm/conf/layer.conf b/meta-security/meta-tpm/conf/layer.conf
index 15a2bef..bf9a76e 100644
--- a/meta-security/meta-tpm/conf/layer.conf
+++ b/meta-security/meta-tpm/conf/layer.conf
@@ -12,4 +12,5 @@
LAYERDEPENDS_tpm-layer = " \
core \
+ openembedded-layer \
"
diff --git a/meta-security/recipes-kernel/linux/linux-yocto-5.0/apparmor.cfg b/meta-security/recipes-kernel/linux/linux-yocto-5.0/apparmor.cfg
index b5f9bb2..ae6cdcd 100644
--- a/meta-security/recipes-kernel/linux/linux-yocto-5.0/apparmor.cfg
+++ b/meta-security/recipes-kernel/linux/linux-yocto-5.0/apparmor.cfg
@@ -1,15 +1,9 @@
CONFIG_AUDIT=y
-# CONFIG_NETFILTER_XT_TARGET_AUDIT is not set
-CONFIG_SECURITY_NETWORK=y
-# CONFIG_SECURITY_NETWORK_XFRM is not set
CONFIG_SECURITY_PATH=y
-# CONFIG_SECURITY_SELINUX is not set
CONFIG_SECURITY_APPARMOR=y
CONFIG_SECURITY_APPARMOR_HASH=y
CONFIG_SECURITY_APPARMOR_HASH_DEFAULT=y
-# CONFIG_SECURITY_APPARMOR_DEBUG is not set
CONFIG_INTEGRITY_AUDIT=y
CONFIG_DEFAULT_SECURITY_APPARMOR=y
-# CONFIG_DEFAULT_SECURITY_DAC is not set
CONFIG_DEFAULT_SECURITY="apparmor"
CONFIG_AUDIT_GENERIC=y
diff --git a/meta-security/recipes-kernel/linux/linux-yocto-5.0/smack.cfg b/meta-security/recipes-kernel/linux/linux-yocto-5.0/smack.cfg
index 62f465a..0d5fc64 100644
--- a/meta-security/recipes-kernel/linux/linux-yocto-5.0/smack.cfg
+++ b/meta-security/recipes-kernel/linux/linux-yocto-5.0/smack.cfg
@@ -1,8 +1,7 @@
-CONFIG_IP_NF_SECURITY=m
-CONFIG_IP6_NF_SECURITY=m
-CONFIG_EXT2_FS_SECURITY=y
-CONFIG_EXT3_FS_SECURITY=y
-CONFIG_EXT4_FS_SECURITY=y
-CONFIG_SECURITY=y
+CONFIG_NETLABEL=y
+CONFIG_SECURITY_NETWORK=y
+# CONFIG_SECURITY_NETWORK_XFRM is not set
CONFIG_SECURITY_SMACK=y
+CONFIG_SECURITY_SMACK_BRINGUP=y
+CONFIG_SECURITY_SMACK_APPEND_SIGNALS=y
CONFIG_TMPFS_XATTR=y
diff --git a/meta-security/recipes-mac/AppArmor/apparmor_2.13.2.bb b/meta-security/recipes-mac/AppArmor/apparmor_2.13.2.bb
index 62ed611..4eaec00 100644
--- a/meta-security/recipes-mac/AppArmor/apparmor_2.13.2.bb
+++ b/meta-security/recipes-mac/AppArmor/apparmor_2.13.2.bb
@@ -14,7 +14,7 @@
DEPENDS = "bison-native apr gettext-native coreutils-native"
SRC_URI = " \
- http://archive.ubuntu.com/ubuntu/pool/main/a/${BPN}/${BPN}_${PV}.orig.tar.gz \
+ git://gitlab.com/apparmor/apparmor.git;protocol=https;branch=apparmor-2.13 \
file://disable_perl_h_check.patch \
file://crosscompile_perl_bindings.patch \
file://apparmor.rc \
@@ -24,8 +24,8 @@
file://run-ptest \
"
-SRC_URI[md5sum] = "2439b35266b5a3a461b0a2dba6e863c3"
-SRC_URI[sha256sum] = "844def9926dfda5c7858428d06e44afc80573f9706458b6e7282edbb40b11a30"
+SRCREV = "af4808b5f6b58946f5c5a4de4b77df5e0eae6ca0"
+S = "${WORKDIR}/git"
PARALLEL_MAKE = ""
diff --git a/meta-security/recipes-mac/smack/mmap-smack-test/mmap.c b/meta-security/recipes-mac/smack/mmap-smack-test/mmap.c
new file mode 100644
index 0000000..f358d27
--- /dev/null
+++ b/meta-security/recipes-mac/smack/mmap-smack-test/mmap.c
@@ -0,0 +1,7 @@
+#include <stdio.h>
+
+int main(int argc, char **argv)
+{
+ printf("Original test program removed while investigating its license.\n");
+ return 1;
+}
diff --git a/meta-security/recipes-mac/smack/mmap-smack-test_1.0.bb b/meta-security/recipes-mac/smack/mmap-smack-test_1.0.bb
new file mode 100644
index 0000000..9d11509
--- /dev/null
+++ b/meta-security/recipes-mac/smack/mmap-smack-test_1.0.bb
@@ -0,0 +1,16 @@
+SUMMARY = "Mmap binary used to test smack mmap attribute"
+DESCRIPTION = "Mmap binary used to test smack mmap attribute"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302"
+
+SRC_URI = "file://mmap.c"
+
+S = "${WORKDIR}"
+do_compile() {
+ ${CC} mmap.c ${LDFLAGS} -o mmap_test
+}
+
+do_install() {
+ install -d ${D}${bindir}
+ install -m 0755 mmap_test ${D}${bindir}
+}
diff --git a/meta-security/recipes-mac/smack/smack-test/notroot.py b/meta-security/recipes-mac/smack/smack-test/notroot.py
new file mode 100644
index 0000000..f0eb0b5
--- /dev/null
+++ b/meta-security/recipes-mac/smack/smack-test/notroot.py
@@ -0,0 +1,33 @@
+#!/usr/bin/env python
+#
+# Script used for running executables with custom labels, as well as custom uid/gid
+# Process label is changed by writing to /proc/self/attr/curent
+#
+# Script expects user id and group id to exist, and be the same.
+#
+# From adduser manual:
+# """By default, each user in Debian GNU/Linux is given a corresponding group
+# with the same name. """
+#
+# Usage: root@desk:~# python notroot.py <uid> <label> <full_path_to_executable> [arguments ..]
+# eg: python notroot.py 1000 User::Label /bin/ping -c 3 192.168.1.1
+#
+# Author: Alexandru Cornea <alexandru.cornea@intel.com>
+import os
+import sys
+
+try:
+ uid = int(sys.argv[1])
+ sys.argv.pop(1)
+ label = sys.argv[1]
+ sys.argv.pop(1)
+ open("/proc/self/attr/current", "w").write(label)
+ path=sys.argv[1]
+ sys.argv.pop(0)
+ os.setgid(uid)
+ os.setuid(uid)
+ os.execv(path,sys.argv)
+
+except Exception,e:
+ print e.message
+ sys.exit(1)
diff --git a/meta-security/recipes-mac/smack/smack-test/smack_test_file_access.sh b/meta-security/recipes-mac/smack/smack-test/smack_test_file_access.sh
new file mode 100644
index 0000000..5a0ce84
--- /dev/null
+++ b/meta-security/recipes-mac/smack/smack-test/smack_test_file_access.sh
@@ -0,0 +1,54 @@
+#!/bin/sh
+
+SMACK_PATH=`grep smack /proc/mounts | awk '{print $2}' `
+RC=0
+TMP="/tmp"
+test_file=$TMP/smack_test_access_file
+CAT=`which cat`
+ECHO=`which echo`
+uid=1000
+initial_label=`cat /proc/self/attr/current`
+python $TMP/notroot.py $uid "TheOther" $ECHO 'TEST' > $test_file
+chsmack -a "TheOther" $test_file
+
+# 12345678901234567890123456789012345678901234567890123456
+delrule="TheOne TheOther -----"
+rule_ro="TheOne TheOther r----"
+
+# Remove pre-existent rules for "TheOne TheOther <access>"
+echo -n "$delrule" > $SMACK_PATH/load
+python $TMP/notroot.py $uid "TheOne" $CAT $test_file 2>&1 1>/dev/null | grep -q "Permission denied" || RC=$?
+if [ $RC -ne 0 ]; then
+ echo "Process with different label than the test file and no read access on it can read it"
+ exit $RC
+fi
+
+# adding read access
+echo -n "$rule_ro" > $SMACK_PATH/load
+python $TMP/notroot.py $uid "TheOne" $CAT $test_file | grep -q "TEST" || RC=$?
+if [ $RC -ne 0 ]; then
+ echo "Process with different label than the test file but with read access on it cannot read it"
+ exit $RC
+fi
+
+# Remove pre-existent rules for "TheOne TheOther <access>"
+echo -n "$delrule" > $SMACK_PATH/load
+# changing label of test file to *
+# according to SMACK documentation, read access on a * object is always permitted
+chsmack -a '*' $test_file
+python $TMP/notroot.py $uid "TheOne" $CAT $test_file | grep -q "TEST" || RC=$?
+if [ $RC -ne 0 ]; then
+ echo "Process cannot read file with * label"
+ exit $RC
+fi
+
+# changing subject label to *
+# according to SMACK documentation, every access requested by a star labeled subject is rejected
+TOUCH=`which touch`
+python $TMP/notroot.py $uid '*' $TOUCH $TMP/test_file_2
+ls -la $TMP/test_file_2 2>&1 | grep -q 'No such file or directory' || RC=$?
+if [ $RC -ne 0 ];then
+ echo "Process with label '*' should not have any access"
+ exit $RC
+fi
+exit 0
diff --git a/meta-security/recipes-mac/smack/smack-test/test_privileged_change_self_label.sh b/meta-security/recipes-mac/smack/smack-test/test_privileged_change_self_label.sh
new file mode 100644
index 0000000..26d9e9d
--- /dev/null
+++ b/meta-security/recipes-mac/smack/smack-test/test_privileged_change_self_label.sh
@@ -0,0 +1,18 @@
+#!/bin/sh
+
+initial_label=`cat /proc/self/attr/current 2>/dev/null`
+modified_label="test_label"
+
+echo "$modified_label" >/proc/self/attr/current 2>/dev/null
+
+new_label=`cat /proc/self/attr/current 2>/dev/null`
+
+if [ "$new_label" != "$modified_label" ]; then
+ # restore proper label
+ echo $initial_label >/proc/self/attr/current
+ echo "Privileged process could not change its label"
+ exit 1
+fi
+
+echo "$initial_label" >/proc/self/attr/current 2>/dev/null
+exit 0
\ No newline at end of file
diff --git a/meta-security/recipes-mac/smack/smack-test/test_smack_onlycap.sh b/meta-security/recipes-mac/smack/smack-test/test_smack_onlycap.sh
new file mode 100644
index 0000000..1c4a93a
--- /dev/null
+++ b/meta-security/recipes-mac/smack/smack-test/test_smack_onlycap.sh
@@ -0,0 +1,27 @@
+#!/bin/sh
+RC=0
+SMACK_PATH=`grep smack /proc/mounts | awk '{print $2}'`
+test_label="test_label"
+onlycap_initial=`cat $SMACK_PATH/onlycap`
+smack_initial=`cat /proc/self/attr/current`
+
+# need to set out label to be the same as onlycap, otherwise we lose our smack privileges
+# even if we are root
+echo "$test_label" > /proc/self/attr/current
+
+echo "$test_label" > $SMACK_PATH/onlycap || RC=$?
+if [ $RC -ne 0 ]; then
+ echo "Onlycap label could not be set"
+ return $RC
+fi
+
+if [ `cat $SMACK_PATH/onlycap` != "$test_label" ]; then
+ echo "Onlycap label was not set correctly."
+ return 1
+fi
+
+# resetting original onlycap label
+echo "$onlycap_initial" > $SMACK_PATH/onlycap 2>/dev/null
+
+# resetting our initial's process label
+echo "$smack_initial" > /proc/self/attr/current
diff --git a/meta-security/recipes-mac/smack/smack-test_1.0.bb b/meta-security/recipes-mac/smack/smack-test_1.0.bb
new file mode 100644
index 0000000..7cf8f2e
--- /dev/null
+++ b/meta-security/recipes-mac/smack/smack-test_1.0.bb
@@ -0,0 +1,21 @@
+SUMMARY = "Smack test scripts"
+DESCRIPTION = "Smack scripts"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302"
+
+SRC_URI = " \
+ file://notroot.py \
+ file://smack_test_file_access.sh \
+ file://test_privileged_change_self_label.sh \
+ file://test_smack_onlycap.sh \
+"
+
+S = "${WORKDIR}"
+
+do_install() {
+ install -d ${D}${sbindir}
+ install -m 0755 notroot.py ${D}${sbindir}
+ install -m 0755 *.sh ${D}${sbindir}
+}
+
+RDEPENDS_${PN} = "smack python mmap-smack-test tcp-smack-test udp-smack-test"
diff --git a/meta-security/recipes-mac/smack/files/run-ptest b/meta-security/recipes-mac/smack/smack/run-ptest
similarity index 100%
rename from meta-security/recipes-mac/smack/files/run-ptest
rename to meta-security/recipes-mac/smack/smack/run-ptest
diff --git a/meta-security/recipes-mac/smack/files/smack_generator_make_fixup.patch b/meta-security/recipes-mac/smack/smack/smack_generator_make_fixup.patch
similarity index 100%
rename from meta-security/recipes-mac/smack/files/smack_generator_make_fixup.patch
rename to meta-security/recipes-mac/smack/smack/smack_generator_make_fixup.patch
diff --git a/meta-security/recipes-mac/smack/tcp-smack-test/tcp_client.c b/meta-security/recipes-mac/smack/tcp-smack-test/tcp_client.c
new file mode 100644
index 0000000..185f973
--- /dev/null
+++ b/meta-security/recipes-mac/smack/tcp-smack-test/tcp_client.c
@@ -0,0 +1,111 @@
+// (C) Copyright 2015 Intel Corporation
+//
+// Permission is hereby granted, free of charge, to any person obtaining a copy
+// of this software and associated documentation files (the "Software"), to deal
+// in the Software without restriction, including without limitation the rights
+// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the Software is
+// furnished to do so, subject to the following conditions:
+//
+// The above copyright notice and this permission notice shall be included in
+// all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+// THE SOFTWARE.
+#include <stdio.h>
+#include <sys/socket.h>
+#include <sys/types.h>
+#include <errno.h>
+#include <netinet/in.h>
+#include <unistd.h>
+#include <netdb.h>
+#include <string.h>
+#include <sys/xattr.h>
+
+int main(int argc, char* argv[])
+{
+
+ int sock;
+ char message[255] = "hello";
+ struct sockaddr_in server_addr;
+ char* label_in;
+ char* label_out;
+ char* attr_out = "security.SMACK64IPOUT";
+ char* attr_in = "security.SMACK64IPIN";
+ char out[256];
+ int port;
+
+ struct timeval timeout;
+ timeout.tv_sec = 15;
+ timeout.tv_usec = 0;
+
+ struct hostent* host = gethostbyname("localhost");
+
+ if (argc != 4)
+ {
+ perror("Client: Arguments missing, please provide socket labels");
+ return 2;
+ }
+
+ port = atoi(argv[1]);
+ label_in = argv[2];
+ label_out = argv[3];
+
+ if((sock = socket(AF_INET, SOCK_STREAM, 0)) < 0)
+ {
+ perror("Client: Socket failure");
+ return 2;
+ }
+
+
+ if(fsetxattr(sock, attr_out, label_out, strlen(label_out), 0) < 0)
+ {
+ perror("Client: Unable to set attribute SMACK64IPOUT");
+ return 2;
+ }
+
+ if(fsetxattr(sock, attr_in, label_in, strlen(label_in), 0) < 0)
+ {
+ perror("Client: Unable to set attribute SMACK64IPIN");
+ return 2;
+ }
+
+ server_addr.sin_family = AF_INET;
+ server_addr.sin_port = htons(port);
+ bcopy((char*) host->h_addr, (char*) &server_addr.sin_addr.s_addr,host->h_length);
+ bzero(&(server_addr.sin_zero),8);
+
+ if(setsockopt(sock, SOL_SOCKET, SO_SNDTIMEO, &timeout, sizeof(timeout)) < 0)
+ {
+ perror("Client: Set timeout failed\n");
+ return 2;
+ }
+
+ if (connect(sock, (struct sockaddr *)&server_addr,sizeof(struct sockaddr)) == -1)
+ {
+ perror("Client: Connection failure");
+ close(sock);
+ return 1;
+ }
+
+
+ if(write(sock, message, strlen(message)) < 0)
+ {
+ perror("Client: Error sending data\n");
+ close(sock);
+ return 1;
+ }
+ close(sock);
+ return 0;
+}
+
+
+
+
+
+
diff --git a/meta-security/recipes-mac/smack/tcp-smack-test/tcp_server.c b/meta-security/recipes-mac/smack/tcp-smack-test/tcp_server.c
new file mode 100644
index 0000000..9285dc6
--- /dev/null
+++ b/meta-security/recipes-mac/smack/tcp-smack-test/tcp_server.c
@@ -0,0 +1,118 @@
+// (C) Copyright 2015 Intel Corporation
+//
+// Permission is hereby granted, free of charge, to any person obtaining a copy
+// of this software and associated documentation files (the "Software"), to deal
+// in the Software without restriction, including without limitation the rights
+// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the Software is
+// furnished to do so, subject to the following conditions:
+//
+// The above copyright notice and this permission notice shall be included in
+// all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+// THE SOFTWARE.
+#include <stdio.h>
+#include <sys/socket.h>
+#include <sys/types.h>
+#include <errno.h>
+#include <netinet/in.h>
+#include <unistd.h>
+#include <string.h>
+
+int main(int argc, char* argv[])
+{
+
+ int sock;
+ int clientsock;
+ char message[255];
+ socklen_t client_length;
+ struct sockaddr_in server_addr, client_addr;
+ char* label_in;
+ char* attr_in = "security.SMACK64IPIN";
+ int port;
+
+ struct timeval timeout;
+ timeout.tv_sec = 15;
+ timeout.tv_usec = 0;
+
+ if (argc != 3)
+ {
+ perror("Server: Argument missing please provide port and label for SMACK64IPIN");
+ return 2;
+ }
+
+ port = atoi(argv[1]);
+ label_in = argv[2];
+ bzero(message,255);
+
+
+ if((sock = socket(AF_INET, SOCK_STREAM, 0)) < 0)
+ {
+ perror("Server: Socket failure");
+ return 2;
+ }
+
+
+ if(fsetxattr(sock, attr_in, label_in, strlen(label_in),0) < 0)
+ {
+ perror("Server: Unable to set attribute ipin 2");
+ return 2;
+ }
+
+ server_addr.sin_family = AF_INET;
+ server_addr.sin_port = htons(port);
+ server_addr.sin_addr.s_addr = INADDR_ANY;
+ bzero(&(server_addr.sin_zero),8);
+
+ if(setsockopt(sock, SOL_SOCKET, SO_RCVTIMEO, &timeout, sizeof(timeout)) < 0)
+ {
+ perror("Server: Set timeout failed\n");
+ return 2;
+ }
+
+ if(bind(sock, (struct sockaddr*) &server_addr, sizeof(server_addr)) < 0)
+ {
+ perror("Server: Bind failure ");
+ return 2;
+ }
+
+ listen(sock, 1);
+ client_length = sizeof(client_addr);
+
+ clientsock = accept(sock,(struct sockaddr*) &client_addr, &client_length);
+
+ if (clientsock < 0)
+ {
+ perror("Server: Connection failed");
+ close(sock);
+ return 1;
+ }
+
+
+ if(fsetxattr(clientsock, "security.SMACK64IPIN", label_in, strlen(label_in),0) < 0)
+ {
+ perror(" Server: Unable to set attribute ipin 2");
+ close(sock);
+ return 2;
+ }
+
+ if(read(clientsock, message, 254) < 0)
+ {
+ perror("Server: Error when reading from socket");
+ close(clientsock);
+ close(sock);
+ return 1;
+ }
+
+
+ close(clientsock);
+ close(sock);
+
+ return 0;
+}
diff --git a/meta-security/recipes-mac/smack/tcp-smack-test/test_smack_tcp_sockets.sh b/meta-security/recipes-mac/smack/tcp-smack-test/test_smack_tcp_sockets.sh
new file mode 100644
index 0000000..ed18f23
--- /dev/null
+++ b/meta-security/recipes-mac/smack/tcp-smack-test/test_smack_tcp_sockets.sh
@@ -0,0 +1,108 @@
+#!/bin/sh
+RC=0
+test_file=/tmp/smack_socket_tcp
+SMACK_PATH=`grep smack /proc/mounts | awk '{print $2}' `
+# make sure no access is granted
+# 12345678901234567890123456789012345678901234567890123456
+echo -n "label1 label2 -----" > $SMACK_PATH/load
+
+tcp_server=`which tcp_server`
+if [ -z $tcp_server ]; then
+ if [ -f "/tmp/tcp_server" ]; then
+ tcp_server="/tmp/tcp_server"
+ else
+ echo "tcp_server binary not found"
+ exit 1
+ fi
+fi
+tcp_client=`which tcp_client`
+if [ -z $tcp_client ]; then
+ if [ -f "/tmp/tcp_client" ]; then
+ tcp_client="/tmp/tcp_client"
+ else
+ echo "tcp_client binary not found"
+ exit 1
+ fi
+fi
+
+# checking access for sockets with different labels
+$tcp_server 50016 label1 &>/dev/null &
+server_pid=$!
+sleep 2
+$tcp_client 50016 label2 label1 &>/dev/null &
+client_pid=$!
+
+wait $server_pid
+server_rv=$?
+wait $client_pid
+client_rv=$?
+
+if [ $server_rv -eq 0 -o $client_rv -eq 0 ]; then
+ echo "Sockets with different labels should not communicate on tcp"
+ exit 1
+fi
+
+# granting access between different labels
+# 12345678901234567890123456789012345678901234567890123456
+echo -n "label1 label2 rw---" > $SMACK_PATH/load
+# checking access for sockets with different labels, but having a rule granting rw
+$tcp_server 50017 label1 2>$test_file &
+server_pid=$!
+sleep 1
+$tcp_client 50017 label2 label1 2>$test_file &
+client_pid=$!
+wait $server_pid
+server_rv=$?
+wait $client_pid
+client_rv=$?
+if [ $server_rv -ne 0 -o $client_rv -ne 0 ]; then
+ echo "Sockets with different labels, but having rw access, should communicate on tcp"
+ exit 1
+fi
+
+# checking access for sockets with the same label
+$tcp_server 50018 label1 2>$test_file &
+server_pid=$!
+sleep 1
+$tcp_client 50018 label1 label1 2>$test_file &
+client_pid=$!
+wait $server_pid
+server_rv=$?
+wait $client_pid
+client_rv=$?
+if [ $server_rv -ne 0 -o $client_rv -ne 0 ]; then
+ echo "Sockets with same labels should communicate on tcp"
+ exit 1
+fi
+
+# checking access on socket labeled star (*)
+# should always be permitted
+$tcp_server 50019 \* 2>$test_file &
+server_pid=$!
+sleep 1
+$tcp_client 50019 label1 label1 2>$test_file &
+client_pid=$!
+wait $server_pid
+server_rv=$?
+wait $client_pid
+client_rv=$?
+if [ $server_rv -ne 0 -o $client_rv -ne 0 ]; then
+ echo "Should have access on tcp socket labeled star (*)"
+ exit 1
+fi
+
+# checking access from socket labeled star (*)
+# all access from subject star should be denied
+$tcp_server 50020 label1 2>$test_file &
+server_pid=$!
+sleep 1
+$tcp_client 50020 label1 \* 2>$test_file &
+client_pid=$!
+wait $server_pid
+server_rv=$?
+wait $client_pid
+client_rv=$?
+if [ $server_rv -eq 0 -o $client_rv -eq 0 ]; then
+ echo "Socket labeled star should not have access to any tcp socket"
+ exit 1
+fi
diff --git a/meta-security/recipes-mac/smack/tcp-smack-test_1.0.bb b/meta-security/recipes-mac/smack/tcp-smack-test_1.0.bb
new file mode 100644
index 0000000..d2b3f6b
--- /dev/null
+++ b/meta-security/recipes-mac/smack/tcp-smack-test_1.0.bb
@@ -0,0 +1,24 @@
+SUMMARY = "Binary used to test smack tcp sockets"
+DESCRIPTION = "Server and client binaries used to test smack attributes on TCP sockets"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302"
+
+SRC_URI = "file://tcp_server.c \
+ file://tcp_client.c \
+ file://test_smack_tcp_sockets.sh \
+"
+
+S = "${WORKDIR}"
+
+do_compile() {
+ ${CC} tcp_client.c ${LDFLAGS} -o tcp_client
+ ${CC} tcp_server.c ${LDFLAGS} -o tcp_server
+}
+
+do_install() {
+ install -d ${D}${bindir}
+ install -d ${D}${sbindir}
+ install -m 0755 tcp_server ${D}${bindir}
+ install -m 0755 tcp_client ${D}${bindir}
+ install -m 0755 test_smack_tcp_sockets.sh ${D}${sbindir}
+}
diff --git a/meta-security/recipes-mac/smack/udp-smack-test/test_smack_udp_sockets.sh b/meta-security/recipes-mac/smack/udp-smack-test/test_smack_udp_sockets.sh
new file mode 100644
index 0000000..419ab9f
--- /dev/null
+++ b/meta-security/recipes-mac/smack/udp-smack-test/test_smack_udp_sockets.sh
@@ -0,0 +1,107 @@
+#!/bin/sh
+RC=0
+test_file="/tmp/smack_socket_udp"
+SMACK_PATH=`grep smack /proc/mounts | awk '{print $2}' `
+
+udp_server=`which udp_server`
+if [ -z $udp_server ]; then
+ if [ -f "/tmp/udp_server" ]; then
+ udp_server="/tmp/udp_server"
+ else
+ echo "udp_server binary not found"
+ exit 1
+ fi
+fi
+udp_client=`which udp_client`
+if [ -z $udp_client ]; then
+ if [ -f "/tmp/udp_client" ]; then
+ udp_client="/tmp/udp_client"
+ else
+ echo "udp_client binary not found"
+ exit 1
+ fi
+fi
+
+# make sure no access is granted
+# 12345678901234567890123456789012345678901234567890123456
+echo -n "label1 label2 -----" > $SMACK_PATH/load
+
+# checking access for sockets with different labels
+$udp_server 50021 label2 2>$test_file &
+server_pid=$!
+sleep 1
+$udp_client 50021 label1 2>$test_file &
+client_pid=$!
+wait $server_pid
+server_rv=$?
+wait $client_pid
+client_rv=$?
+if [ $server_rv -eq 0 ]; then
+ echo "Sockets with different labels should not communicate on udp"
+ exit 1
+fi
+
+# granting access between different labels
+# 12345678901234567890123456789012345678901234567890123456
+echo -n "label1 label2 rw---" > $SMACK_PATH/load
+# checking access for sockets with different labels, but having a rule granting rw
+$udp_server 50022 label2 2>$test_file &
+server_pid=$!
+sleep 1
+$udp_client 50022 label1 2>$test_file &
+client_pid=$!
+wait $server_pid
+server_rv=$?
+wait $client_pid
+client_rv=$?
+if [ $server_rv -ne 0 -o $client_rv -ne 0 ]; then
+ echo "Sockets with different labels, but having rw access, should communicate on udp"
+ exit 1
+fi
+
+# checking access for sockets with the same label
+$udp_server 50023 label1 &
+server_pid=$!
+sleep 1
+$udp_client 50023 label1 2>$test_file &
+client_pid=$!
+wait $server_pid
+server_rv=$?
+wait $client_pid
+client_rv=$?
+if [ $server_rv -ne 0 -o $client_rv -ne 0 ]; then
+ echo "Sockets with same labels should communicate on udp"
+ exit 1
+fi
+
+# checking access on socket labeled star (*)
+# should always be permitted
+$udp_server 50024 \* 2>$test_file &
+server_pid=$!
+sleep 1
+$udp_client 50024 label1 2>$test_file &
+client_pid=$!
+wait $server_pid
+server_rv=$?
+wait $client_pid
+client_rv=$?
+if [ $server_rv -ne 0 -o $client_rv -ne 0 ]; then
+ echo "Should have access on udp socket labeled star (*)"
+ exit 1
+fi
+
+# checking access from socket labeled star (*)
+# all access from subject star should be denied
+$udp_server 50025 label1 2>$test_file &
+server_pid=$!
+sleep 1
+$udp_client 50025 \* 2>$test_file &
+client_pid=$!
+wait $server_pid
+server_rv=$?
+wait $client_pid
+client_rv=$?
+if [ $server_rv -eq 0 ]; then
+ echo "Socket labeled star should not have access to any udp socket"
+ exit 1
+fi
diff --git a/meta-security/recipes-mac/smack/udp-smack-test/udp_client.c b/meta-security/recipes-mac/smack/udp-smack-test/udp_client.c
new file mode 100644
index 0000000..4d3afbe
--- /dev/null
+++ b/meta-security/recipes-mac/smack/udp-smack-test/udp_client.c
@@ -0,0 +1,75 @@
+// (C) Copyright 2015 Intel Corporation
+//
+// Permission is hereby granted, free of charge, to any person obtaining a copy
+// of this software and associated documentation files (the "Software"), to deal
+// in the Software without restriction, including without limitation the rights
+// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the Software is
+// furnished to do so, subject to the following conditions:
+//
+// The above copyright notice and this permission notice shall be included in
+// all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+// THE SOFTWARE.
+#include <sys/socket.h>
+#include <stdio.h>
+#include <netinet/in.h>
+#include <netdb.h>
+#include <string.h>
+
+int main(int argc, char* argv[])
+{
+ char* message = "hello";
+ int sock, ret;
+ struct sockaddr_in server_addr;
+ struct hostent* host = gethostbyname("localhost");
+ char* label;
+ char* attr = "security.SMACK64IPOUT";
+ int port;
+ if (argc != 3)
+ {
+ perror("Client: Argument missing, please provide port and label for SMACK64IPOUT");
+ return 2;
+ }
+
+ port = atoi(argv[1]);
+ label = argv[2];
+ sock = socket(AF_INET, SOCK_DGRAM,0);
+ if(sock < 0)
+ {
+ perror("Client: Socket failure");
+ return 2;
+ }
+
+
+ if(fsetxattr(sock, attr, label, strlen(label),0) < 0)
+ {
+ perror("Client: Unable to set attribute ");
+ return 2;
+ }
+
+
+ server_addr.sin_family = AF_INET;
+ server_addr.sin_port = htons(port);
+ bcopy((char*) host->h_addr, (char*) &server_addr.sin_addr.s_addr,host->h_length);
+ bzero(&(server_addr.sin_zero),8);
+
+ ret = sendto(sock, message, strlen(message),0,(const struct sockaddr*)&server_addr,
+ sizeof(struct sockaddr_in));
+
+ close(sock);
+ if(ret < 0)
+ {
+ perror("Client: Error sending message\n");
+ return 1;
+ }
+
+ return 0;
+}
+
diff --git a/meta-security/recipes-mac/smack/udp-smack-test/udp_server.c b/meta-security/recipes-mac/smack/udp-smack-test/udp_server.c
new file mode 100644
index 0000000..cbab71e
--- /dev/null
+++ b/meta-security/recipes-mac/smack/udp-smack-test/udp_server.c
@@ -0,0 +1,93 @@
+// (C) Copyright 2015 Intel Corporation
+//
+// Permission is hereby granted, free of charge, to any person obtaining a copy
+// of this software and associated documentation files (the "Software"), to deal
+// in the Software without restriction, including without limitation the rights
+// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the Software is
+// furnished to do so, subject to the following conditions:
+//
+// The above copyright notice and this permission notice shall be included in
+// all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+// THE SOFTWARE.
+#include <sys/socket.h>
+#include <stdio.h>
+#include <netinet/in.h>
+#include <netdb.h>
+#include <string.h>
+
+int main(int argc, char* argv[])
+{
+ int sock,ret;
+ struct sockaddr_in server_addr, client_addr;
+ socklen_t len;
+ char message[5];
+ char* label;
+ char* attr = "security.SMACK64IPIN";
+ int port;
+
+ if(argc != 3)
+ {
+ perror("Server: Argument missing, please provide port and label for SMACK64IPIN");
+ return 2;
+ }
+
+ port = atoi(argv[1]);
+ label = argv[2];
+
+ struct timeval timeout;
+ timeout.tv_sec = 15;
+ timeout.tv_usec = 0;
+
+ sock = socket(AF_INET,SOCK_DGRAM,0);
+ if(sock < 0)
+ {
+ perror("Server: Socket error");
+ return 2;
+ }
+
+
+ if(fsetxattr(sock, attr, label, strlen(label), 0) < 0)
+ {
+ perror("Server: Unable to set attribute ");
+ return 2;
+ }
+
+ server_addr.sin_family = AF_INET;
+ server_addr.sin_port = htons(port);
+ server_addr.sin_addr.s_addr = INADDR_ANY;
+ bzero(&(server_addr.sin_zero),8);
+
+
+ if(setsockopt(sock, SOL_SOCKET, SO_RCVTIMEO, &timeout, sizeof(timeout)) < 0)
+ {
+ perror("Server: Set timeout failed\n");
+ return 2;
+ }
+
+ if(bind(sock, (struct sockaddr*) &server_addr, sizeof(server_addr)) < 0)
+ {
+ perror("Server: Bind failure");
+ return 2;
+ }
+
+ len = sizeof(client_addr);
+ ret = recvfrom(sock, message, sizeof(message), 0, (struct sockaddr*)&client_addr,
+ &len);
+ close(sock);
+ if(ret < 0)
+ {
+ perror("Server: Error receiving");
+ return 1;
+
+ }
+ return 0;
+}
+
diff --git a/meta-security/recipes-mac/smack/udp-smack-test_1.0.bb b/meta-security/recipes-mac/smack/udp-smack-test_1.0.bb
new file mode 100644
index 0000000..9193f89
--- /dev/null
+++ b/meta-security/recipes-mac/smack/udp-smack-test_1.0.bb
@@ -0,0 +1,23 @@
+SUMMARY = "Binary used to test smack udp sockets"
+DESCRIPTION = "Server and client binaries used to test smack attributes on UDP sockets"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302"
+
+SRC_URI = "file://udp_server.c \
+ file://udp_client.c \
+ file://test_smack_udp_sockets.sh \
+"
+
+S = "${WORKDIR}"
+do_compile() {
+ ${CC} udp_client.c ${LDFLAGS} -o udp_client
+ ${CC} udp_server.c ${LDFLAGS} -o udp_server
+}
+
+do_install() {
+ install -d ${D}${bindir}
+ install -d ${D}${sbindir}
+ install -m 0755 udp_server ${D}${bindir}
+ install -m 0755 udp_client ${D}${bindir}
+ install -m 0755 test_smack_udp_sockets.sh ${D}${sbindir}
+}
diff --git a/meta-security/recipes-security/clamav/clamav_0.99.4.bb b/meta-security/recipes-security/clamav/clamav_0.99.4.bb
index 6219d9e..7d8767e 100644
--- a/meta-security/recipes-security/clamav/clamav_0.99.4.bb
+++ b/meta-security/recipes-security/clamav/clamav_0.99.4.bb
@@ -4,8 +4,9 @@
SECTION = "security"
LICENSE = "LGPL-2.1"
-DEPENDS = "libtool db libmspack chrpath-replacement-native"
-
+DEPENDS = "libtool db libmspack openssl zlib llvm chrpath-replacement-native clamav-native"
+DEPENDS_class-native = "db-native openssl-native zlib-native"
+
LIC_FILES_CHKSUM = "file://COPYING.LGPL;beginline=2;endline=3;md5=4b89c05acc71195e9a06edfa2fa7d092"
SRCREV = "b66e5e27b48c0a07494f9df9b809ed933cede047"
@@ -15,6 +16,7 @@
file://freshclam.conf \
file://volatiles.03_clamav \
file://${BPN}.service \
+ file://freshclam-native.conf \
"
S = "${WORKDIR}/git"
@@ -28,42 +30,54 @@
UID = "clamav"
GID = "clamav"
+INSTALL_CLAMAV_CVD ?= "1"
# Clamav has a built llvm version 2 but does not build with gcc 6.x,
# disable the internal one. This is a known issue
# If you want LLVM support, use the one in core
-PACKAGECONFIG ?= "ncurses openssl bz2 zlib llvm"
-PACKAGECONFIG += " ${@bb.utils.contains("DISTRO_FEATURES", "ipv6", "ipv6", "", d)}"
-PACKAGECONFIG += "${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd', '', d)}"
+CLAMAV_USR_DIR = "${STAGING_DIR_NATIVE}/usr"
+CLAMAV_USR_DIR_class-target = "${STAGING_DIR_HOST}/usr"
-PACKAGECONFIG[llvm] = "--with-system-llvm --with-llvm-linking=dynamic --disable-llvm, ,llvm8.0"
+PACKAGECONFIG_class-target ?= "ncurses bz2"
+PACKAGECONFIG_class-target += " ${@bb.utils.contains("DISTRO_FEATURES", "ipv6", "ipv6", "", d)}"
+PACKAGECONFIG_class-target += "${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd', '', d)}"
PACKAGECONFIG[pcre] = "--with-pcre=${STAGING_LIBDIR}, --without-pcre, libpcre"
-PACKAGECONFIG[xml] = "--with-xml=${STAGING_LIBDIR}/.., --with-xml=no, libxml2,"
+PACKAGECONFIG[xml] = "--with-xml=${CLAMAV_USR_DIR}, --disable-xml, libxml2,"
PACKAGECONFIG[json] = "--with-libjson=${STAGING_LIBDIR}, --without-libjson, json,"
PACKAGECONFIG[curl] = "--with-libcurl=${STAGING_LIBDIR}, --without-libcurl, curl,"
PACKAGECONFIG[ipv6] = "--enable-ipv6, --disable-ipv6"
-PACKAGECONFIG[openssl] = "--with-openssl=${STAGING_DIR_HOST}/usr, --without-openssl, openssl, openssl"
-PACKAGECONFIG[zlib] = "--with-zlib=${STAGING_DIR_HOST}/usr --disable-zlib-vcheck , --without-zlib, zlib, "
-PACKAGECONFIG[bz2] = "--with-libbz2-prefix=${STAGING_LIBDIR}/.., --without-libbz2-prefix, "
-PACKAGECONFIG[ncurses] = "--with-libncurses-prefix=${STAGING_LIBDIR}/.., --without-libncurses-prefix, ncurses, "
+PACKAGECONFIG[bz2] = "--with-libbz2-prefix=${CLAMAV_USR_DIR}, --without-libbz2-prefix, "
+PACKAGECONFIG[ncurses] = "--with-libncurses-prefix=${CLAMAV_USR_DIR}, --without-libncurses-prefix, ncurses, "
PACKAGECONFIG[systemd] = "--with-systemdsystemunitdir=${systemd_unitdir}/system/, --without-systemdsystemunitdir, "
-EXTRA_OECONF += " --with-user=${UID} --with-group=${GID} \
- --without-libcheck-prefix --disable-unrar \
+EXTRA_OECONF_CLAMAV = "--without-libcheck-prefix --disable-unrar \
+ --with-system-llvm --with-llvm-linking=dynamic --disable-llvm \
--disable-mempool \
--program-prefix="" \
--disable-yara \
- --disable-rpath \
+ --disable-xml \
+ --with-openssl=${CLAMAV_USR_DIR} \
+ --with-zlib=${CLAMAV_USR_DIR} --disable-zlib-vcheck \
"
+EXTRA_OECONF_class-native += "${EXTRA_OECONF_CLAMAV}"
+EXTRA_OECONF_class-target += "--with-user=${UID} --with-group=${GID} --disable-rpath ${EXTRA_OECONF_CLAMAV}"
+
do_configure () {
cd ${S}
./configure ${CONFIGUREOPTS} ${EXTRA_OECONF}
+ install -d ${S}/clamav_db
}
-do_compile_append() {
+do_configure_class-native () {
+ cd ${S}
+ ./configure ${CONFIGUREOPTS} ${EXTRA_OECONF}
+}
+
+
+do_compile_append_class-target() {
# brute force removing RPATH
chrpath -d ${B}/libclamav/.libs/libclamav.so.${SO_VER}
chrpath -d ${B}/sigtool/.libs/sigtool
@@ -72,9 +86,14 @@
chrpath -d ${B}/clamconf/.libs/clamconf
chrpath -d ${B}/clamd/.libs/clamd
chrpath -d ${B}/freshclam/.libs/freshclam
+
+ if [ "${INSTALL_CLAMAV_CVD}" = "1" ]; then
+ bbnote "CLAMAV creating cvd"
+ ${STAGING_BINDIR_NATIVE}/freshclam --datadir=${S}/clamav_db --config=${WORKDIR}/freshclam-native.conf
+ fi
}
-do_install_append() {
+do_install_append_class-target () {
install -d ${D}/${sysconfdir}
install -d ${D}/${localstatedir}/lib/clamav
install -d ${D}${sysconfdir}/clamav ${D}${sysconfdir}/default/volatiles
@@ -84,6 +103,7 @@
install -m 0644 ${WORKDIR}/volatiles.03_clamav ${D}${sysconfdir}/default/volatiles/volatiles.03_clamav
sed -i -e 's#${STAGING_DIR_HOST}##g' ${D}${libdir}/pkgconfig/libclamav.pc
rm ${D}/${libdir}/libclamav.so
+ install -m 666 ${S}/clamav_db/* ${D}/${localstatedir}/lib/clamav/.
if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)};then
install -D -m 0644 ${WORKDIR}/clamav.service ${D}${systemd_unitdir}/system/clamav.service
fi
@@ -93,11 +113,12 @@
if [ -e /etc/init.d/populate-volatile.sh ] ; then
${sysconfdir}/init.d/populate-volatile.sh update
fi
- chown ${UID}:${GID} ${localstatedir}/lib/clamav
+ mkdir -p ${localstatedir}/lib/clamav
+ chown -R ${UID}:${GID} ${localstatedir}/lib/clamav
}
-PACKAGES = "${PN} ${PN}-dev ${PN}-dbg ${PN}-daemon ${PN}-doc \
+PACKAGES = "${PN} ${PN}-dev ${PN}-dbg ${PN}-daemon ${PN}-doc ${PN}-cvd \
${PN}-clamdscan ${PN}-freshclam ${PN}-libclamav ${PN}-staticdev"
FILES_${PN} = "${bindir}/clambc ${bindir}/clamscan ${bindir}/clamsubmit \
@@ -140,6 +161,8 @@
${datadir}/man/* \
${docdir}/* "
+FILES_${PN}-cvd = "${localstatedir}/lib/clamav/*.cvd ${localstatedir}/lib/clamav/*.dat"
+
USERADD_PACKAGES = "${PN}"
GROUPADD_PARAM_${PN} = "--system ${UID}"
USERADD_PARAM_${PN} = "--system -g ${GID} --home-dir \
@@ -151,4 +174,7 @@
RCONFLICTS_${PN} += "${PN}-systemd"
SYSTEMD_SERVICE_${PN} = "${BPN}.service"
-RDEPENDS_${PN} += "openssl ncurses-libncurses libbz2 ncurses-libtinfo clamav-freshclam clamav-libclamav"
+RDEPENDS_${PN} = "openssl ncurses-libncurses libbz2 ncurses-libtinfo clamav-freshclam clamav-libclamav"
+RDEPENDS_${PN}_class-native = ""
+
+BBCLASSEXTEND = "native"
diff --git a/meta-security/recipes-security/clamav/files/freshclam-native.conf b/meta-security/recipes-security/clamav/files/freshclam-native.conf
new file mode 100644
index 0000000..aaa8cf4
--- /dev/null
+++ b/meta-security/recipes-security/clamav/files/freshclam-native.conf
@@ -0,0 +1,224 @@
+# Path to the database directory.
+# WARNING: It must match clamd.conf's directive!
+# Default: hardcoded (depends on installation options)
+#DatabaseDirectory /var/lib/clamav
+
+# Path to the log file (make sure it has proper permissions)
+# Default: disabled
+#UpdateLogFile /var/log/clamav/freshclam.log
+
+# Maximum size of the log file.
+# Value of 0 disables the limit.
+# You may use 'M' or 'm' for megabytes (1M = 1m = 1048576 bytes)
+# and 'K' or 'k' for kilobytes (1K = 1k = 1024 bytes).
+# in bytes just don't use modifiers. If LogFileMaxSize is enabled,
+# log rotation (the LogRotate option) will always be enabled.
+# Default: 1M
+LogFileMaxSize 2M
+
+# Log time with each message.
+# Default: no
+LogTime yes
+
+# Enable verbose logging.
+# Default: no
+#LogVerbose yes
+
+# Use system logger (can work together with UpdateLogFile).
+# Default: no
+#LogSyslog yes
+
+# Specify the type of syslog messages - please refer to 'man syslog'
+# for facility names.
+# Default: LOG_LOCAL6
+#LogFacility LOG_MAIL
+
+# Enable log rotation. Always enabled when LogFileMaxSize is enabled.
+# Default: no
+#LogRotate yes
+
+# This option allows you to save the process identifier of the daemon
+# Default: disabled
+#PidFile /var/run/freshclam.pid
+
+# By default when started freshclam drops privileges and switches to the
+# "clamav" user. This directive allows you to change the database owner.
+# Default: clamav (may depend on installation options)
+DatabaseOwner clamav
+
+# Initialize supplementary group access (freshclam must be started by root).
+# Default: no
+#AllowSupplementaryGroups yes
+
+# Use DNS to verify virus database version. Freshclam uses DNS TXT records
+# to verify database and software versions. With this directive you can change
+# the database verification domain.
+# WARNING: Do not touch it unless you're configuring freshclam to use your
+# own database verification domain.
+# Default: current.cvd.clamav.net
+#DNSDatabaseInfo current.cvd.clamav.net
+
+# Uncomment the following line and replace XY with your country
+# code. See http://www.iana.org/cctld/cctld-whois.htm for the full list.
+# You can use db.XY.ipv6.clamav.net for IPv6 connections.
+#DatabaseMirror db.XY.clamav.net
+
+# database.clamav.net is a round-robin record which points to our most
+# reliable mirrors. It's used as a fall back in case db.XY.clamav.net is
+# not working. DO NOT TOUCH the following line unless you know what you
+# are doing.
+DatabaseMirror database.clamav.net
+
+# How many attempts to make before giving up.
+# Default: 3 (per mirror)
+#MaxAttempts 5
+
+# With this option you can control scripted updates. It's highly recommended
+# to keep it enabled.
+# Default: yes
+#ScriptedUpdates yes
+
+# By default freshclam will keep the local databases (.cld) uncompressed to
+# make their handling faster. With this option you can enable the compression;
+# the change will take effect with the next database update.
+# Default: no
+#CompressLocalDatabase no
+
+# With this option you can provide custom sources (http:// or file://) for
+# database files. This option can be used multiple times.
+# Default: no custom URLs
+#DatabaseCustomURL http://myserver.com/mysigs.ndb
+#DatabaseCustomURL file:///mnt/nfs/local.hdb
+
+# This option allows you to easily point freshclam to private mirrors.
+# If PrivateMirror is set, freshclam does not attempt to use DNS
+# to determine whether its databases are out-of-date, instead it will
+# use the If-Modified-Since request or directly check the headers of the
+# remote database files. For each database, freshclam first attempts
+# to download the CLD file. If that fails, it tries to download the
+# CVD file. This option overrides DatabaseMirror, DNSDatabaseInfo
+# and ScriptedUpdates. It can be used multiple times to provide
+# fall-back mirrors.
+# Default: disabled
+#PrivateMirror mirror1.mynetwork.com
+#PrivateMirror mirror2.mynetwork.com
+
+# Number of database checks per day.
+# Default: 12 (every two hours)
+#Checks 24
+
+# Proxy settings
+# Default: disabled
+#HTTPProxyServer myproxy.com
+#HTTPProxyPort 1234
+#HTTPProxyUsername myusername
+#HTTPProxyPassword mypass
+
+# If your servers are behind a firewall/proxy which applies User-Agent
+# filtering you can use this option to force the use of a different
+# User-Agent header.
+# Default: clamav/version_number
+#HTTPUserAgent SomeUserAgentIdString
+
+# Use aaa.bbb.ccc.ddd as client address for downloading databases. Useful for
+# multi-homed systems.
+# Default: Use OS'es default outgoing IP address.
+#LocalIPAddress aaa.bbb.ccc.ddd
+
+# Send the RELOAD command to clamd.
+# Default: no
+#NotifyClamd /path/to/clamd.conf
+
+# Run command after successful database update.
+# Default: disabled
+#OnUpdateExecute command
+
+# Run command when database update process fails.
+# Default: disabled
+#OnErrorExecute command
+
+# Run command when freshclam reports outdated version.
+# In the command string %v will be replaced by the new version number.
+# Default: disabled
+#OnOutdatedExecute command
+
+# Don't fork into background.
+# Default: no
+#Foreground yes
+
+# Enable debug messages in libclamav.
+# Default: no
+#Debug yes
+
+# Timeout in seconds when connecting to database server.
+# Default: 30
+#ConnectTimeout 60
+
+# Timeout in seconds when reading from database server.
+# Default: 30
+#ReceiveTimeout 60
+
+# With this option enabled, freshclam will attempt to load new
+# databases into memory to make sure they are properly handled
+# by libclamav before replacing the old ones.
+# Default: yes
+#TestDatabases yes
+
+# When enabled freshclam will submit statistics to the ClamAV Project about
+# the latest virus detections in your environment. The ClamAV maintainers
+# will then use this data to determine what types of malware are the most
+# detected in the field and in what geographic area they are.
+# Freshclam will connect to clamd in order to get recent statistics.
+# Default: no
+#SubmitDetectionStats /path/to/clamd.conf
+
+# Country of origin of malware/detection statistics (for statistical
+# purposes only). The statistics collector at ClamAV.net will look up
+# your IP address to determine the geographical origin of the malware
+# reported by your installation. If this installation is mainly used to
+# scan data which comes from a different location, please enable this
+# option and enter a two-letter code (see http://www.iana.org/domains/root/db/)
+# of the country of origin.
+# Default: disabled
+#DetectionStatsCountry country-code
+
+# This option enables support for our "Personal Statistics" service.
+# When this option is enabled, the information on malware detected by
+# your clamd installation is made available to you through our website.
+# To get your HostID, log on http://www.stats.clamav.net and add a new
+# host to your host list. Once you have the HostID, uncomment this option
+# and paste the HostID here. As soon as your freshclam starts submitting
+# information to our stats collecting service, you will be able to view
+# the statistics of this clamd installation by logging into
+# http://www.stats.clamav.net with the same credentials you used to
+# generate the HostID. For more information refer to:
+# http://www.clamav.net/documentation.html#cctts
+# This feature requires SubmitDetectionStats to be enabled.
+# Default: disabled
+#DetectionStatsHostID unique-id
+
+# This option enables support for Google Safe Browsing. When activated for
+# the first time, freshclam will download a new database file (safebrowsing.cvd)
+# which will be automatically loaded by clamd and clamscan during the next
+# reload, provided that the heuristic phishing detection is turned on. This
+# database includes information about websites that may be phishing sites or
+# possible sources of malware. When using this option, it's mandatory to run
+# freshclam at least every 30 minutes.
+# Freshclam uses the ClamAV's mirror infrastructure to distribute the
+# database and its updates but all the contents are provided under Google's
+# terms of use. See http://www.google.com/transparencyreport/safebrowsing
+# and http://www.clamav.net/documentation.html#safebrowsing
+# for more information.
+# Default: disabled
+#SafeBrowsing yes
+
+# This option enables downloading of bytecode.cvd, which includes additional
+# detection mechanisms and improvements to the ClamAV engine.
+# Default: enabled
+#Bytecode yes
+
+# Download an additional 3rd party signature database distributed through
+# the ClamAV mirrors.
+# This option can be used multiple times.
+#ExtraDatabase dbname1
+#ExtraDatabase dbname2
diff --git a/meta-security/recipes-security/libseccomp/libseccomp_2.4.0.bb b/meta-security/recipes-security/libseccomp/libseccomp_2.4.0.bb
deleted file mode 100644
index 41ffd62..0000000
--- a/meta-security/recipes-security/libseccomp/libseccomp_2.4.0.bb
+++ /dev/null
@@ -1,41 +0,0 @@
-SUMMARY = "interface to seccomp filtering mechanism"
-DESCRIPTION = "The libseccomp library provides and easy to use, platform independent,interface to the Linux Kernel's syscall filtering mechanism: seccomp."
-SECTION = "security"
-LICENSE = "LGPL-2.1"
-LIC_FILES_CHKSUM = "file://LICENSE;beginline=0;endline=1;md5=8eac08d22113880357ceb8e7c37f989f"
-
-SRCREV = "4d64011741375bb1a4ba7d71905ca37b97885083"
-
-SRC_URI = "git://github.com/seccomp/libseccomp.git;branch=release-2.4 \
- file://run-ptest \
-"
-
-S = "${WORKDIR}/git"
-
-inherit autotools-brokensep pkgconfig ptest
-
-PACKAGECONFIG ??= ""
-PACKAGECONFIG[python] = "--enable-python, --disable-python, python"
-
-do_compile_ptest() {
- oe_runmake -C tests check-build
-}
-
-do_install_ptest() {
- install -d ${D}${PTEST_PATH}/tests
- install -d ${D}${PTEST_PATH}/tools
- for file in $(find tests/* -executable -type f); do
- install -m 744 ${S}/${file} ${D}/${PTEST_PATH}/tests
- done
- for file in $(find tests/*.tests -type f); do
- install -m 744 ${S}/${file} ${D}/${PTEST_PATH}/tests
- done
- for file in $(find tools/* -executable -type f); do
- install -m 744 ${S}/${file} ${D}/${PTEST_PATH}/tools
- done
-}
-
-FILES_${PN} = "${bindir} ${libdir}/${BPN}.so*"
-FILES_${PN}-dbg += "${libdir}/${PN}/tests/.debug/* ${libdir}/${PN}/tools/.debug"
-
-RDEPENDS_${PN}-ptest = "bash"
diff --git a/meta-security/recipes-security/libseccomp/libseccomp_2.4.1.bb b/meta-security/recipes-security/libseccomp/libseccomp_2.4.1.bb
new file mode 100644
index 0000000..dba1be5
--- /dev/null
+++ b/meta-security/recipes-security/libseccomp/libseccomp_2.4.1.bb
@@ -0,0 +1,41 @@
+SUMMARY = "interface to seccomp filtering mechanism"
+DESCRIPTION = "The libseccomp library provides and easy to use, platform independent,interface to the Linux Kernel's syscall filtering mechanism: seccomp."
+SECTION = "security"
+LICENSE = "LGPL-2.1"
+LIC_FILES_CHKSUM = "file://LICENSE;beginline=0;endline=1;md5=8eac08d22113880357ceb8e7c37f989f"
+
+SRCREV = "fb43972ea1aab24f2a70193fb7445c2674f594e3"
+
+SRC_URI = "git://github.com/seccomp/libseccomp.git;branch=release-2.4 \
+ file://run-ptest \
+"
+
+S = "${WORKDIR}/git"
+
+inherit autotools-brokensep pkgconfig ptest
+
+PACKAGECONFIG ??= ""
+PACKAGECONFIG[python] = "--enable-python, --disable-python, python"
+
+do_compile_ptest() {
+ oe_runmake -C tests check-build
+}
+
+do_install_ptest() {
+ install -d ${D}${PTEST_PATH}/tests
+ install -d ${D}${PTEST_PATH}/tools
+ for file in $(find tests/* -executable -type f); do
+ install -m 744 ${S}/${file} ${D}/${PTEST_PATH}/tests
+ done
+ for file in $(find tests/*.tests -type f); do
+ install -m 744 ${S}/${file} ${D}/${PTEST_PATH}/tests
+ done
+ for file in $(find tools/* -executable -type f); do
+ install -m 744 ${S}/${file} ${D}/${PTEST_PATH}/tools
+ done
+}
+
+FILES_${PN} = "${bindir} ${libdir}/${BPN}.so*"
+FILES_${PN}-dbg += "${libdir}/${PN}/tests/.debug/* ${libdir}/${PN}/tools/.debug"
+
+RDEPENDS_${PN}-ptest = "bash"
diff --git a/meta-security/recipes-support/libldb/libldb/avoid-openldap-unless-wanted.patch b/meta-security/recipes-support/libldb/libldb/avoid-openldap-unless-wanted.patch
new file mode 100644
index 0000000..8ab094f
--- /dev/null
+++ b/meta-security/recipes-support/libldb/libldb/avoid-openldap-unless-wanted.patch
@@ -0,0 +1,13 @@
+--- a/wscript 2015-11-18 12:43:33.000000000 +0100
++++ b/wscript 2015-11-18 12:46:25.000000000 +0100
+@@ -58,9 +58,7 @@
+ if conf.env.standalone_ldb:
+ conf.CHECK_XSLTPROC_MANPAGES()
+
+- # we need this for the ldap backend
+- if conf.CHECK_FUNCS_IN('ber_flush ldap_open ldap_initialize', 'lber ldap', headers='lber.h ldap.h'):
+- conf.env.ENABLE_LDAP_BACKEND = True
++ conf.env.ENABLE_LDAP_BACKEND = False
+
+ # we don't want any libraries or modules to rely on runtime
+ # resolution of symbols
diff --git a/meta-security/recipes-support/libldb/libldb/do-not-import-target-module-while-cross-compile.patch b/meta-security/recipes-support/libldb/libldb/do-not-import-target-module-while-cross-compile.patch
new file mode 100755
index 0000000..fdd312c
--- /dev/null
+++ b/meta-security/recipes-support/libldb/libldb/do-not-import-target-module-while-cross-compile.patch
@@ -0,0 +1,58 @@
+Some modules such as dynamic library maybe cann't be imported while cross compile,
+we just check whether does the module exist.
+
+Signed-off-by: Bian Naimeng <biannm@cn.fujitsu.com>
+
+Index: ldb-1.1.26/buildtools/wafsamba/samba_bundled.py
+===================================================================
+--- ldb-1.1.26.orig/buildtools/wafsamba/samba_bundled.py
++++ ldb-1.1.26/buildtools/wafsamba/samba_bundled.py
+@@ -2,6 +2,7 @@
+
+ import sys
+ import Build, Options, Logs
++import imp, os
+ from Configure import conf
+ from samba_utils import TO_LIST
+
+@@ -230,17 +231,32 @@ def CHECK_BUNDLED_SYSTEM_PYTHON(conf, li
+ # versions
+ minversion = minimum_library_version(conf, libname, minversion)
+
+- try:
+- m = __import__(modulename)
+- except ImportError:
+- found = False
+- else:
++ # Find module in PYTHONPATH
++ stuff = imp.find_module(modulename, [os.environ["PYTHONPATH"]])
++ if stuff:
+ try:
+- version = m.__version__
+- except AttributeError:
++ m = imp.load_module(modulename, stuff[0], stuff[1], stuff[2])
++ except ImportError:
+ found = False
++
++ if conf.env.CROSS_COMPILE:
++ # Some modules such as dynamic library maybe cann't be imported
++ # while cross compile, we just check whether the module exist
++ Logs.warn('Cross module[%s] has been found, but can not be loaded.' % (stuff[1]))
++ found = True
+ else:
+- found = tuplize_version(version) >= tuplize_version(minversion)
++ try:
++ version = m.__version__
++ except AttributeError:
++ found = False
++ else:
++ found = tuplize_version(version) >= tuplize_version(minversion)
++ finally:
++ if stuff[0]:
++ stuff[0].close()
++ else:
++ found = False
++
+ if not found and not conf.LIB_MAY_BE_BUNDLED(libname):
+ Logs.error('ERROR: Python module %s of version %s not found, and bundling disabled' % (libname, minversion))
+ sys.exit(1)
diff --git a/meta-security/recipes-support/libldb/libldb/options-1.3.1.patch b/meta-security/recipes-support/libldb/libldb/options-1.3.1.patch
new file mode 100644
index 0000000..ffe253b
--- /dev/null
+++ b/meta-security/recipes-support/libldb/libldb/options-1.3.1.patch
@@ -0,0 +1,193 @@
+From a4da3ab4d76013aaa731d43d52ccca1ebd37c395 Mon Sep 17 00:00:00 2001
+From: Jackie Huang <jackie.huang@windriver.com>
+Date: Wed, 21 Sep 2016 10:06:39 +0800
+Subject: [PATCH 1/1] ldb: Add configure options for packages
+
+Add configure options for the following packages:
+ - acl
+ - attr
+ - libaio
+ - libbsd
+ - libcap
+ - valgrind
+
+Upstream-Status: Inappropriate [oe deterministic build specific]
+
+Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
+---
+ lib/replace/system/wscript_configure | 6 ++-
+ lib/replace/wscript | 94 +++++++++++++++++++++++++++---------
+ wscript | 7 +++
+ 3 files changed, 83 insertions(+), 24 deletions(-)
+
+diff --git a/lib/replace/system/wscript_configure b/lib/replace/system/wscript_configure
+index 2035474..10f9ae7 100644
+--- a/lib/replace/system/wscript_configure
++++ b/lib/replace/system/wscript_configure
+@@ -1,6 +1,10 @@
+ #!/usr/bin/env python
+
+-conf.CHECK_HEADERS('sys/capability.h')
++import Options
++
++if Options.options.enable_libcap:
++ conf.CHECK_HEADERS('sys/capability.h')
++
+ conf.CHECK_FUNCS('getpwnam_r getpwuid_r getpwent_r')
+
+ # solaris varients of getXXent_r
+diff --git a/lib/replace/wscript b/lib/replace/wscript
+index 2f94d49..68b2d3a 100644
+--- a/lib/replace/wscript
++++ b/lib/replace/wscript
+@@ -23,6 +23,41 @@ def set_options(opt):
+ opt.PRIVATE_EXTENSION_DEFAULT('')
+ opt.RECURSE('buildtools/wafsamba')
+
++ opt.add_option('--with-acl',
++ help=("Enable use of acl"),
++ action="store_true", dest='enable_acl')
++ opt.add_option('--without-acl',
++ help=("Disable use of acl"),
++ action="store_false", dest='enable_acl', default=False)
++
++ opt.add_option('--with-attr',
++ help=("Enable use of attr"),
++ action="store_true", dest='enable_attr')
++ opt.add_option('--without-attr',
++ help=("Disable use of attr"),
++ action="store_false", dest='enable_attr', default=False)
++
++ opt.add_option('--with-libaio',
++ help=("Enable use of libaio"),
++ action="store_true", dest='enable_libaio')
++ opt.add_option('--without-libaio',
++ help=("Disable use of libaio"),
++ action="store_false", dest='enable_libaio', default=False)
++
++ opt.add_option('--with-libbsd',
++ help=("Enable use of libbsd"),
++ action="store_true", dest='enable_libbsd')
++ opt.add_option('--without-libbsd',
++ help=("Disable use of libbsd"),
++ action="store_false", dest='enable_libbsd', default=False)
++
++ opt.add_option('--with-libcap',
++ help=("Enable use of libcap"),
++ action="store_true", dest='enable_libcap')
++ opt.add_option('--without-libcap',
++ help=("Disable use of libcap"),
++ action="store_false", dest='enable_libcap', default=False)
++
+ @Utils.run_once
+ def configure(conf):
+ conf.RECURSE('buildtools/wafsamba')
+@@ -32,12 +67,25 @@ def configure(conf):
+ conf.DEFINE('HAVE_LIBREPLACE', 1)
+ conf.DEFINE('LIBREPLACE_NETWORK_CHECKS', 1)
+
+- conf.CHECK_HEADERS('linux/types.h crypt.h locale.h acl/libacl.h compat.h')
+- conf.CHECK_HEADERS('acl/libacl.h attr/xattr.h compat.h ctype.h dustat.h')
++ conf.CHECK_HEADERS('linux/types.h crypt.h locale.h compat.h')
++ conf.CHECK_HEADERS('compat.h ctype.h dustat.h')
+ conf.CHECK_HEADERS('fcntl.h fnmatch.h glob.h history.h krb5.h langinfo.h')
+- conf.CHECK_HEADERS('libaio.h locale.h ndir.h pwd.h')
+- conf.CHECK_HEADERS('shadow.h sys/acl.h')
+- conf.CHECK_HEADERS('sys/attributes.h attr/attributes.h sys/capability.h sys/dir.h sys/epoll.h')
++ conf.CHECK_HEADERS('locale.h ndir.h pwd.h')
++ conf.CHECK_HEADERS('shadow.h')
++ conf.CHECK_HEADERS('sys/attributes.h sys/dir.h sys/epoll.h')
++
++ if Options.options.enable_acl:
++ conf.CHECK_HEADERS('acl/libacl.h sys/acl.h')
++
++ if Options.options.enable_attr:
++ conf.CHECK_HEADERS('attr/attributes.h attr/xattr.h')
++
++ if Options.options.enable_libaio:
++ conf.CHECK_HEADERS('libaio.h')
++
++ if Options.options.enable_libcap:
++ conf.CHECK_HEADERS('sys/capability.h')
++
+ conf.CHECK_HEADERS('port.h')
+ conf.CHECK_HEADERS('sys/fcntl.h sys/filio.h sys/filsys.h sys/fs/s5param.h sys/fs/vx/quota.h')
+ conf.CHECK_HEADERS('sys/id.h sys/ioctl.h sys/ipc.h sys/mman.h sys/mode.h sys/ndir.h sys/priv.h')
+@@ -73,7 +121,9 @@ def configure(conf):
+
+ conf.CHECK_CODE('', headers='rpc/rpc.h rpcsvc/yp_prot.h', define='HAVE_RPCSVC_YP_PROT_H')
+
+- conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h valgrind/memcheck.h')
++ if Options.options.enable_valgrind:
++ conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h valgrind/memcheck.h')
++
+ conf.CHECK_HEADERS('nss_common.h nsswitch.h ns_api.h')
+ conf.CHECK_HEADERS('sys/extattr.h sys/ea.h sys/proplist.h sys/cdefs.h')
+ conf.CHECK_HEADERS('utmp.h utmpx.h lastlog.h')
+@@ -266,22 +316,20 @@ def configure(conf):
+
+ conf.CHECK_FUNCS('prctl dirname basename')
+
+- strlcpy_in_bsd = False
+-
+- # libbsd on some platforms provides strlcpy and strlcat
+- if not conf.CHECK_FUNCS('strlcpy strlcat'):
+- if conf.CHECK_FUNCS_IN('strlcpy strlcat', 'bsd', headers='bsd/string.h',
+- checklibc=True):
+- strlcpy_in_bsd = True
+- if not conf.CHECK_FUNCS('getpeereid'):
+- conf.CHECK_FUNCS_IN('getpeereid', 'bsd', headers='sys/types.h bsd/unistd.h')
+- if not conf.CHECK_FUNCS_IN('setproctitle', 'setproctitle', headers='setproctitle.h'):
+- conf.CHECK_FUNCS_IN('setproctitle', 'bsd', headers='sys/types.h bsd/unistd.h')
+- if not conf.CHECK_FUNCS('setproctitle_init'):
+- conf.CHECK_FUNCS_IN('setproctitle_init', 'bsd', headers='sys/types.h bsd/unistd.h')
+-
+- if not conf.CHECK_FUNCS('closefrom'):
+- conf.CHECK_FUNCS_IN('closefrom', 'bsd', headers='bsd/unistd.h')
++ if Options.options.enable_libbsd:
++ # libbsd on some platforms provides strlcpy and strlcat
++ if not conf.CHECK_FUNCS('strlcpy strlcat'):
++ conf.CHECK_FUNCS_IN('strlcpy strlcat', 'bsd', headers='bsd/string.h',
++ checklibc=True)
++ if not conf.CHECK_FUNCS('getpeereid'):
++ conf.CHECK_FUNCS_IN('getpeereid', 'bsd', headers='sys/types.h bsd/unistd.h')
++ if not conf.CHECK_FUNCS_IN('setproctitle', 'setproctitle', headers='setproctitle.h'):
++ conf.CHECK_FUNCS_IN('setproctitle', 'bsd', headers='sys/types.h bsd/unistd.h')
++ if not conf.CHECK_FUNCS('setproctitle_init'):
++ conf.CHECK_FUNCS_IN('setproctitle_init', 'bsd', headers='sys/types.h bsd/unistd.h')
++
++ if not conf.CHECK_FUNCS('closefrom'):
++ conf.CHECK_FUNCS_IN('closefrom', 'bsd', headers='bsd/unistd.h')
+
+ conf.CHECK_CODE('''
+ struct ucred cred;
+@@ -632,7 +680,7 @@ removeea setea
+ # look for a method of finding the list of network interfaces
+ for method in ['HAVE_IFACE_GETIFADDRS', 'HAVE_IFACE_AIX', 'HAVE_IFACE_IFCONF', 'HAVE_IFACE_IFREQ']:
+ bsd_for_strlcpy = ''
+- if strlcpy_in_bsd:
++ if Options.options.enable_libbsd:
+ bsd_for_strlcpy = ' bsd'
+ if conf.CHECK_CODE('''
+ #define %s 1
+diff --git a/wscript b/wscript
+index 8ae5be3..a178cc4 100644
+--- a/wscript
++++ b/wscript
+@@ -31,6 +31,13 @@ def set_options(opt):
+ opt.RECURSE('lib/replace')
+ opt.tool_options('python') # options for disabling pyc or pyo compilation
+
++ opt.add_option('--with-valgrind',
++ help=("enable use of valgrind"),
++ action="store_true", dest='enable_valgrind')
++ opt.add_option('--without-valgrind',
++ help=("disable use of valgrind"),
++ action="store_false", dest='enable_valgrind', default=False)
++
+ def configure(conf):
+ conf.RECURSE('lib/tdb')
+ conf.RECURSE('lib/tevent')
+--
+2.16.2
+
diff --git a/meta-security/recipes-support/libldb/libldb_1.3.1.bb b/meta-security/recipes-support/libldb/libldb_1.3.1.bb
new file mode 100644
index 0000000..c644b20
--- /dev/null
+++ b/meta-security/recipes-support/libldb/libldb_1.3.1.bb
@@ -0,0 +1,64 @@
+SUMMARY = "Hierarchical, reference counted memory pool system with destructors"
+HOMEPAGE = "http://ldb.samba.org"
+SECTION = "libs"
+LICENSE = "LGPL-3.0+ & LGPL-2.1+ & GPL-3.0+"
+
+DEPENDS += "libtdb libtalloc libtevent popt"
+RDEPENDS_pyldb += "python"
+
+SRC_URI = "http://samba.org/ftp/ldb/ldb-${PV}.tar.gz \
+ file://do-not-import-target-module-while-cross-compile.patch \
+ file://options-1.3.1.patch \
+ "
+
+PACKAGECONFIG ??= "\
+ ${@bb.utils.filter('DISTRO_FEATURES', 'acl', d)} \
+ ${@bb.utils.contains('DISTRO_FEATURES', 'xattr', 'attr', '', d)} \
+"
+PACKAGECONFIG[acl] = "--with-acl,--without-acl,acl"
+PACKAGECONFIG[attr] = "--with-attr,--without-attr,attr"
+PACKAGECONFIG[ldap] = ",,openldap"
+PACKAGECONFIG[libaio] = "--with-libaio,--without-libaio,libaio"
+PACKAGECONFIG[libbsd] = "--with-libbsd,--without-libbsd,libbsd"
+PACKAGECONFIG[libcap] = "--with-libcap,--without-libcap,libcap"
+PACKAGECONFIG[valgrind] = "--with-valgrind,--without-valgrind,valgrind"
+
+SRC_URI += "${@bb.utils.contains('PACKAGECONFIG', 'ldap', '', 'file://avoid-openldap-unless-wanted.patch', d)}"
+
+LIC_FILES_CHKSUM = "file://pyldb.h;endline=24;md5=dfbd238cecad76957f7f860fbe9adade \
+ file://man/ldb.3.xml;beginline=261;endline=262;md5=137f9fd61040c1505d1aa1019663fd08 \
+ file://tools/ldbdump.c;endline=19;md5=a7d4fc5d1f75676b49df491575a86a42"
+
+SRC_URI[md5sum] = "e5233f202bca27f6ce8474fb8ae65983"
+SRC_URI[sha256sum] = "b19f2c9f55ae0f46aa5ebaea0bf1a47ec1ac135e1d78af0f6318cf50bf62cbd2"
+
+CROSS_METHOD="exec"
+inherit waf-samba
+
+S = "${WORKDIR}/ldb-${PV}"
+
+EXTRA_OECONF += "--disable-rpath \
+ --disable-rpath-install \
+ --bundled-libraries=cmocka \
+ --builtin-libraries=replace \
+ --with-modulesdir=${libdir}/ldb/modules \
+ --with-privatelibdir=${libdir}/ldb \
+ --with-libiconv=${STAGING_DIR_HOST}${prefix}\
+ "
+
+PACKAGES =+ "pyldb pyldb-dbg pyldb-dev"
+
+NOAUTOPACKAGEDEBUG = "1"
+
+FILES_${PN} += "${libdir}/ldb/*"
+FILES_${PN}-dbg += "${bindir}/.debug/* \
+ ${libdir}/.debug/* \
+ ${libdir}/ldb/.debug/* \
+ ${libdir}/ldb/modules/ldb/.debug/*"
+
+FILES_pyldb = "${libdir}/python${PYTHON_BASEVERSION}/site-packages/* \
+ ${libdir}/libpyldb-util.so.* \
+ "
+FILES_pyldb-dbg = "${libdir}/python${PYTHON_BASEVERSION}/site-packages/.debug \
+ ${libdir}/.debug/libpyldb-util.so.*"
+FILES_pyldb-dev = "${libdir}/libpyldb-util.so"
diff --git a/poky/LICENSE b/poky/LICENSE
index 21fa6e6..d20dc59f 100644
--- a/poky/LICENSE
+++ b/poky/LICENSE
@@ -1,14 +1,20 @@
Different components of OpenEmbedded are under different licenses (a mix
-of MIT and GPLv2). Please see:
-
-meta/COPYING.GPLv2 (GPLv2)
-meta/COPYING.MIT (MIT)
-meta-selftest/COPYING.MIT (MIT)
-meta-skeleton/COPYING.MIT (MIT)
+of MIT and GPLv2). See LICENSE.GPL-2.0-only and LICENSE.MIT for further
+details of the individual licenses.
All metadata is MIT licensed unless otherwise stated. Source code
-included in tree for individual recipes is under the LICENSE stated in
-the associated recipe (.bb file) unless otherwise stated.
+included in tree for individual recipes (e.g. patches) are under
+the LICENSE stated in the associated recipe (.bb file) unless
+otherwise stated.
License information for any other files is either explicitly stated
-or defaults to GPL version 2.
+or defaults to GPL version 2 only.
+
+Individual files contain the following style tags instead of the full license
+text to identify their license:
+
+ SPDX-License-Identifier: GPL-2.0-only
+ SPDX-License-Identifier: MIT
+
+This enables machine processing of license information based on the SPDX
+License Identifiers that are here available: http://spdx.org/licenses/
diff --git a/poky/LICENSE.GPL-2.0-only b/poky/LICENSE.GPL-2.0-only
new file mode 100644
index 0000000..5db3c0a
--- /dev/null
+++ b/poky/LICENSE.GPL-2.0-only
@@ -0,0 +1,288 @@
+ GNU GENERAL PUBLIC LICENSE
+ Version 2, June 1991
+
+ Copyright (C) 1989, 1991 Free Software Foundation, Inc.,
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+ Preamble
+
+ The licenses for most software are designed to take away your
+freedom to share and change it. By contrast, the GNU General Public
+License is intended to guarantee your freedom to share and change free
+software--to make sure the software is free for all its users. This
+General Public License applies to most of the Free Software
+Foundation's software and to any other program whose authors commit to
+using it. (Some other Free Software Foundation software is covered by
+the GNU Lesser General Public License instead.) You can apply it to
+your programs, too.
+
+ When we speak of free software, we are referring to freedom, not
+price. Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+this service if you wish), that you receive source code or can get it
+if you want it, that you can change the software or use pieces of it
+in new free programs; and that you know you can do these things.
+
+ To protect your rights, we need to make restrictions that forbid
+anyone to deny you these rights or to ask you to surrender the rights.
+These restrictions translate to certain responsibilities for you if you
+distribute copies of the software, or if you modify it.
+
+ For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must give the recipients all the rights that
+you have. You must make sure that they, too, receive or can get the
+source code. And you must show them these terms so they know their
+rights.
+
+ We protect your rights with two steps: (1) copyright the software, and
+(2) offer you this license which gives you legal permission to copy,
+distribute and/or modify the software.
+
+ Also, for each author's protection and ours, we want to make certain
+that everyone understands that there is no warranty for this free
+software. If the software is modified by someone else and passed on, we
+want its recipients to know that what they have is not the original, so
+that any problems introduced by others will not reflect on the original
+authors' reputations.
+
+ Finally, any free program is threatened constantly by software
+patents. We wish to avoid the danger that redistributors of a free
+program will individually obtain patent licenses, in effect making the
+program proprietary. To prevent this, we have made it clear that any
+patent must be licensed for everyone's free use or not licensed at all.
+
+ The precise terms and conditions for copying, distribution and
+modification follow.
+
+ GNU GENERAL PUBLIC LICENSE
+ TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+ 0. This License applies to any program or other work which contains
+a notice placed by the copyright holder saying it may be distributed
+under the terms of this General Public License. The "Program", below,
+refers to any such program or work, and a "work based on the Program"
+means either the Program or any derivative work under copyright law:
+that is to say, a work containing the Program or a portion of it,
+either verbatim or with modifications and/or translated into another
+language. (Hereinafter, translation is included without limitation in
+the term "modification".) Each licensee is addressed as "you".
+
+Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope. The act of
+running the Program is not restricted, and the output from the Program
+is covered only if its contents constitute a work based on the
+Program (independent of having been made by running the Program).
+Whether that is true depends on what the Program does.
+
+ 1. You may copy and distribute verbatim copies of the Program's
+source code as you receive it, in any medium, provided that you
+conspicuously and appropriately publish on each copy an appropriate
+copyright notice and disclaimer of warranty; keep intact all the
+notices that refer to this License and to the absence of any warranty;
+and give any other recipients of the Program a copy of this License
+along with the Program.
+
+You may charge a fee for the physical act of transferring a copy, and
+you may at your option offer warranty protection in exchange for a fee.
+
+ 2. You may modify your copy or copies of the Program or any portion
+of it, thus forming a work based on the Program, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+ a) You must cause the modified files to carry prominent notices
+ stating that you changed the files and the date of any change.
+
+ b) You must cause any work that you distribute or publish, that in
+ whole or in part contains or is derived from the Program or any
+ part thereof, to be licensed as a whole at no charge to all third
+ parties under the terms of this License.
+
+ c) If the modified program normally reads commands interactively
+ when run, you must cause it, when started running for such
+ interactive use in the most ordinary way, to print or display an
+ announcement including an appropriate copyright notice and a
+ notice that there is no warranty (or else, saying that you provide
+ a warranty) and that users may redistribute the program under
+ these conditions, and telling the user how to view a copy of this
+ License. (Exception: if the Program itself is interactive but
+ does not normally print such an announcement, your work based on
+ the Program is not required to print an announcement.)
+
+These requirements apply to the modified work as a whole. If
+identifiable sections of that work are not derived from the Program,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works. But when you
+distribute the same sections as part of a whole which is a work based
+on the Program, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Program.
+
+In addition, mere aggregation of another work not based on the Program
+with the Program (or with a work based on the Program) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+ 3. You may copy and distribute the Program (or a work based on it,
+under Section 2) in object code or executable form under the terms of
+Sections 1 and 2 above provided that you also do one of the following:
+
+ a) Accompany it with the complete corresponding machine-readable
+ source code, which must be distributed under the terms of Sections
+ 1 and 2 above on a medium customarily used for software interchange; or,
+
+ b) Accompany it with a written offer, valid for at least three
+ years, to give any third party, for a charge no more than your
+ cost of physically performing source distribution, a complete
+ machine-readable copy of the corresponding source code, to be
+ distributed under the terms of Sections 1 and 2 above on a medium
+ customarily used for software interchange; or,
+
+ c) Accompany it with the information you received as to the offer
+ to distribute corresponding source code. (This alternative is
+ allowed only for noncommercial distribution and only if you
+ received the program in object code or executable form with such
+ an offer, in accord with Subsection b above.)
+
+The source code for a work means the preferred form of the work for
+making modifications to it. For an executable work, complete source
+code means all the source code for all modules it contains, plus any
+associated interface definition files, plus the scripts used to
+control compilation and installation of the executable. However, as a
+special exception, the source code distributed need not include
+anything that is normally distributed (in either source or binary
+form) with the major components (compiler, kernel, and so on) of the
+operating system on which the executable runs, unless that component
+itself accompanies the executable.
+
+If distribution of executable or object code is made by offering
+access to copy from a designated place, then offering equivalent
+access to copy the source code from the same place counts as
+distribution of the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+ 4. You may not copy, modify, sublicense, or distribute the Program
+except as expressly provided under this License. Any attempt
+otherwise to copy, modify, sublicense or distribute the Program is
+void, and will automatically terminate your rights under this License.
+However, parties who have received copies, or rights, from you under
+this License will not have their licenses terminated so long as such
+parties remain in full compliance.
+
+ 5. You are not required to accept this License, since you have not
+signed it. However, nothing else grants you permission to modify or
+distribute the Program or its derivative works. These actions are
+prohibited by law if you do not accept this License. Therefore, by
+modifying or distributing the Program (or any work based on the
+Program), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Program or works based on it.
+
+ 6. Each time you redistribute the Program (or any work based on the
+Program), the recipient automatically receives a license from the
+original licensor to copy, distribute or modify the Program subject to
+these terms and conditions. You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties to
+this License.
+
+ 7. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License. If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Program at all. For example, if a patent
+license would not permit royalty-free redistribution of the Program by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Program.
+
+If any portion of this section is held invalid or unenforceable under
+any particular circumstance, the balance of the section is intended to
+apply and the section as a whole is intended to apply in other
+circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system, which is
+implemented by public license practices. Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+ 8. If the distribution and/or use of the Program is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Program under this License
+may add an explicit geographical distribution limitation excluding
+those countries, so that distribution is permitted only in or among
+countries not thus excluded. In such case, this License incorporates
+the limitation as if written in the body of this License.
+
+ 9. The Free Software Foundation may publish revised and/or new versions
+of the General Public License from time to time. Such new versions will
+be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+Each version is given a distinguishing version number. If the Program
+specifies a version number of this License which applies to it and "any
+later version", you have the option of following the terms and conditions
+either of that version or of any later version published by the Free
+Software Foundation. If the Program does not specify a version number of
+this License, you may choose any version ever published by the Free Software
+Foundation.
+
+ 10. If you wish to incorporate parts of the Program into other free
+programs whose distribution conditions are different, write to the author
+to ask for permission. For software which is copyrighted by the Free
+Software Foundation, write to the Free Software Foundation; we sometimes
+make exceptions for this. Our decision will be guided by the two goals
+of preserving the free status of all derivatives of our free software and
+of promoting the sharing and reuse of software generally.
+
+ NO WARRANTY
+
+ 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
+FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
+OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
+PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
+OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
+TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
+PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
+REPAIR OR CORRECTION.
+
+ 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
+REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
+INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
+OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
+TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
+YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
+PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGES.
+
+ END OF TERMS AND CONDITIONS
+
+Note:
+Individual files contain the following tag instead of the full license text.
+
+ SPDX-License-Identifier: GPL-2.0-only
+
+This enables machine processing of license information based on the SPDX
+License Identifiers that are here available: http://spdx.org/licenses/
diff --git a/poky/LICENSE.MIT b/poky/LICENSE.MIT
new file mode 100644
index 0000000..a6919eb
--- /dev/null
+++ b/poky/LICENSE.MIT
@@ -0,0 +1,25 @@
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
+
+Note:
+Individual files contain the following tag instead of the full license text.
+
+ SPDX-License-Identifier: MIT
+
+This enables machine processing of license information based on the SPDX
+License Identifiers that are here available: http://spdx.org/licenses/
diff --git a/poky/bitbake/COPYING b/poky/bitbake/COPYING
deleted file mode 100644
index d511905..0000000
--- a/poky/bitbake/COPYING
+++ /dev/null
@@ -1,339 +0,0 @@
- GNU GENERAL PUBLIC LICENSE
- Version 2, June 1991
-
- Copyright (C) 1989, 1991 Free Software Foundation, Inc.,
- 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- Everyone is permitted to copy and distribute verbatim copies
- of this license document, but changing it is not allowed.
-
- Preamble
-
- The licenses for most software are designed to take away your
-freedom to share and change it. By contrast, the GNU General Public
-License is intended to guarantee your freedom to share and change free
-software--to make sure the software is free for all its users. This
-General Public License applies to most of the Free Software
-Foundation's software and to any other program whose authors commit to
-using it. (Some other Free Software Foundation software is covered by
-the GNU Lesser General Public License instead.) You can apply it to
-your programs, too.
-
- When we speak of free software, we are referring to freedom, not
-price. Our General Public Licenses are designed to make sure that you
-have the freedom to distribute copies of free software (and charge for
-this service if you wish), that you receive source code or can get it
-if you want it, that you can change the software or use pieces of it
-in new free programs; and that you know you can do these things.
-
- To protect your rights, we need to make restrictions that forbid
-anyone to deny you these rights or to ask you to surrender the rights.
-These restrictions translate to certain responsibilities for you if you
-distribute copies of the software, or if you modify it.
-
- For example, if you distribute copies of such a program, whether
-gratis or for a fee, you must give the recipients all the rights that
-you have. You must make sure that they, too, receive or can get the
-source code. And you must show them these terms so they know their
-rights.
-
- We protect your rights with two steps: (1) copyright the software, and
-(2) offer you this license which gives you legal permission to copy,
-distribute and/or modify the software.
-
- Also, for each author's protection and ours, we want to make certain
-that everyone understands that there is no warranty for this free
-software. If the software is modified by someone else and passed on, we
-want its recipients to know that what they have is not the original, so
-that any problems introduced by others will not reflect on the original
-authors' reputations.
-
- Finally, any free program is threatened constantly by software
-patents. We wish to avoid the danger that redistributors of a free
-program will individually obtain patent licenses, in effect making the
-program proprietary. To prevent this, we have made it clear that any
-patent must be licensed for everyone's free use or not licensed at all.
-
- The precise terms and conditions for copying, distribution and
-modification follow.
-
- GNU GENERAL PUBLIC LICENSE
- TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
-
- 0. This License applies to any program or other work which contains
-a notice placed by the copyright holder saying it may be distributed
-under the terms of this General Public License. The "Program", below,
-refers to any such program or work, and a "work based on the Program"
-means either the Program or any derivative work under copyright law:
-that is to say, a work containing the Program or a portion of it,
-either verbatim or with modifications and/or translated into another
-language. (Hereinafter, translation is included without limitation in
-the term "modification".) Each licensee is addressed as "you".
-
-Activities other than copying, distribution and modification are not
-covered by this License; they are outside its scope. The act of
-running the Program is not restricted, and the output from the Program
-is covered only if its contents constitute a work based on the
-Program (independent of having been made by running the Program).
-Whether that is true depends on what the Program does.
-
- 1. You may copy and distribute verbatim copies of the Program's
-source code as you receive it, in any medium, provided that you
-conspicuously and appropriately publish on each copy an appropriate
-copyright notice and disclaimer of warranty; keep intact all the
-notices that refer to this License and to the absence of any warranty;
-and give any other recipients of the Program a copy of this License
-along with the Program.
-
-You may charge a fee for the physical act of transferring a copy, and
-you may at your option offer warranty protection in exchange for a fee.
-
- 2. You may modify your copy or copies of the Program or any portion
-of it, thus forming a work based on the Program, and copy and
-distribute such modifications or work under the terms of Section 1
-above, provided that you also meet all of these conditions:
-
- a) You must cause the modified files to carry prominent notices
- stating that you changed the files and the date of any change.
-
- b) You must cause any work that you distribute or publish, that in
- whole or in part contains or is derived from the Program or any
- part thereof, to be licensed as a whole at no charge to all third
- parties under the terms of this License.
-
- c) If the modified program normally reads commands interactively
- when run, you must cause it, when started running for such
- interactive use in the most ordinary way, to print or display an
- announcement including an appropriate copyright notice and a
- notice that there is no warranty (or else, saying that you provide
- a warranty) and that users may redistribute the program under
- these conditions, and telling the user how to view a copy of this
- License. (Exception: if the Program itself is interactive but
- does not normally print such an announcement, your work based on
- the Program is not required to print an announcement.)
-
-These requirements apply to the modified work as a whole. If
-identifiable sections of that work are not derived from the Program,
-and can be reasonably considered independent and separate works in
-themselves, then this License, and its terms, do not apply to those
-sections when you distribute them as separate works. But when you
-distribute the same sections as part of a whole which is a work based
-on the Program, the distribution of the whole must be on the terms of
-this License, whose permissions for other licensees extend to the
-entire whole, and thus to each and every part regardless of who wrote it.
-
-Thus, it is not the intent of this section to claim rights or contest
-your rights to work written entirely by you; rather, the intent is to
-exercise the right to control the distribution of derivative or
-collective works based on the Program.
-
-In addition, mere aggregation of another work not based on the Program
-with the Program (or with a work based on the Program) on a volume of
-a storage or distribution medium does not bring the other work under
-the scope of this License.
-
- 3. You may copy and distribute the Program (or a work based on it,
-under Section 2) in object code or executable form under the terms of
-Sections 1 and 2 above provided that you also do one of the following:
-
- a) Accompany it with the complete corresponding machine-readable
- source code, which must be distributed under the terms of Sections
- 1 and 2 above on a medium customarily used for software interchange; or,
-
- b) Accompany it with a written offer, valid for at least three
- years, to give any third party, for a charge no more than your
- cost of physically performing source distribution, a complete
- machine-readable copy of the corresponding source code, to be
- distributed under the terms of Sections 1 and 2 above on a medium
- customarily used for software interchange; or,
-
- c) Accompany it with the information you received as to the offer
- to distribute corresponding source code. (This alternative is
- allowed only for noncommercial distribution and only if you
- received the program in object code or executable form with such
- an offer, in accord with Subsection b above.)
-
-The source code for a work means the preferred form of the work for
-making modifications to it. For an executable work, complete source
-code means all the source code for all modules it contains, plus any
-associated interface definition files, plus the scripts used to
-control compilation and installation of the executable. However, as a
-special exception, the source code distributed need not include
-anything that is normally distributed (in either source or binary
-form) with the major components (compiler, kernel, and so on) of the
-operating system on which the executable runs, unless that component
-itself accompanies the executable.
-
-If distribution of executable or object code is made by offering
-access to copy from a designated place, then offering equivalent
-access to copy the source code from the same place counts as
-distribution of the source code, even though third parties are not
-compelled to copy the source along with the object code.
-
- 4. You may not copy, modify, sublicense, or distribute the Program
-except as expressly provided under this License. Any attempt
-otherwise to copy, modify, sublicense or distribute the Program is
-void, and will automatically terminate your rights under this License.
-However, parties who have received copies, or rights, from you under
-this License will not have their licenses terminated so long as such
-parties remain in full compliance.
-
- 5. You are not required to accept this License, since you have not
-signed it. However, nothing else grants you permission to modify or
-distribute the Program or its derivative works. These actions are
-prohibited by law if you do not accept this License. Therefore, by
-modifying or distributing the Program (or any work based on the
-Program), you indicate your acceptance of this License to do so, and
-all its terms and conditions for copying, distributing or modifying
-the Program or works based on it.
-
- 6. Each time you redistribute the Program (or any work based on the
-Program), the recipient automatically receives a license from the
-original licensor to copy, distribute or modify the Program subject to
-these terms and conditions. You may not impose any further
-restrictions on the recipients' exercise of the rights granted herein.
-You are not responsible for enforcing compliance by third parties to
-this License.
-
- 7. If, as a consequence of a court judgment or allegation of patent
-infringement or for any other reason (not limited to patent issues),
-conditions are imposed on you (whether by court order, agreement or
-otherwise) that contradict the conditions of this License, they do not
-excuse you from the conditions of this License. If you cannot
-distribute so as to satisfy simultaneously your obligations under this
-License and any other pertinent obligations, then as a consequence you
-may not distribute the Program at all. For example, if a patent
-license would not permit royalty-free redistribution of the Program by
-all those who receive copies directly or indirectly through you, then
-the only way you could satisfy both it and this License would be to
-refrain entirely from distribution of the Program.
-
-If any portion of this section is held invalid or unenforceable under
-any particular circumstance, the balance of the section is intended to
-apply and the section as a whole is intended to apply in other
-circumstances.
-
-It is not the purpose of this section to induce you to infringe any
-patents or other property right claims or to contest validity of any
-such claims; this section has the sole purpose of protecting the
-integrity of the free software distribution system, which is
-implemented by public license practices. Many people have made
-generous contributions to the wide range of software distributed
-through that system in reliance on consistent application of that
-system; it is up to the author/donor to decide if he or she is willing
-to distribute software through any other system and a licensee cannot
-impose that choice.
-
-This section is intended to make thoroughly clear what is believed to
-be a consequence of the rest of this License.
-
- 8. If the distribution and/or use of the Program is restricted in
-certain countries either by patents or by copyrighted interfaces, the
-original copyright holder who places the Program under this License
-may add an explicit geographical distribution limitation excluding
-those countries, so that distribution is permitted only in or among
-countries not thus excluded. In such case, this License incorporates
-the limitation as if written in the body of this License.
-
- 9. The Free Software Foundation may publish revised and/or new versions
-of the General Public License from time to time. Such new versions will
-be similar in spirit to the present version, but may differ in detail to
-address new problems or concerns.
-
-Each version is given a distinguishing version number. If the Program
-specifies a version number of this License which applies to it and "any
-later version", you have the option of following the terms and conditions
-either of that version or of any later version published by the Free
-Software Foundation. If the Program does not specify a version number of
-this License, you may choose any version ever published by the Free Software
-Foundation.
-
- 10. If you wish to incorporate parts of the Program into other free
-programs whose distribution conditions are different, write to the author
-to ask for permission. For software which is copyrighted by the Free
-Software Foundation, write to the Free Software Foundation; we sometimes
-make exceptions for this. Our decision will be guided by the two goals
-of preserving the free status of all derivatives of our free software and
-of promoting the sharing and reuse of software generally.
-
- NO WARRANTY
-
- 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
-FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
-OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
-PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
-OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
-TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
-PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
-REPAIR OR CORRECTION.
-
- 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
-WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
-REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
-INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
-OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
-TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
-YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
-PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
-POSSIBILITY OF SUCH DAMAGES.
-
- END OF TERMS AND CONDITIONS
-
- How to Apply These Terms to Your New Programs
-
- If you develop a new program, and you want it to be of the greatest
-possible use to the public, the best way to achieve this is to make it
-free software which everyone can redistribute and change under these terms.
-
- To do so, attach the following notices to the program. It is safest
-to attach them to the start of each source file to most effectively
-convey the exclusion of warranty; and each file should have at least
-the "copyright" line and a pointer to where the full notice is found.
-
- <one line to give the program's name and a brief idea of what it does.>
- Copyright (C) <year> <name of author>
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License along
- with this program; if not, write to the Free Software Foundation, Inc.,
- 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-
-Also add information on how to contact you by electronic and paper mail.
-
-If the program is interactive, make it output a short notice like this
-when it starts in an interactive mode:
-
- Gnomovision version 69, Copyright (C) year name of author
- Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
- This is free software, and you are welcome to redistribute it
- under certain conditions; type `show c' for details.
-
-The hypothetical commands `show w' and `show c' should show the appropriate
-parts of the General Public License. Of course, the commands you use may
-be called something other than `show w' and `show c'; they could even be
-mouse-clicks or menu items--whatever suits your program.
-
-You should also get your employer (if you work as a programmer) or your
-school, if any, to sign a "copyright disclaimer" for the program, if
-necessary. Here is a sample; alter the names:
-
- Yoyodyne, Inc., hereby disclaims all copyright interest in the program
- `Gnomovision' (which makes passes at compilers) written by James Hacker.
-
- <signature of Ty Coon>, 1 April 1989
- Ty Coon, President of Vice
-
-This General Public License does not permit incorporating your program into
-proprietary programs. If your program is a subroutine library, you may
-consider it more useful to permit linking proprietary applications with the
-library. If this is what you want to do, use the GNU Lesser General
-Public License instead of this License.
diff --git a/poky/bitbake/HEADER b/poky/bitbake/HEADER
deleted file mode 100644
index 9859255..0000000
--- a/poky/bitbake/HEADER
+++ /dev/null
@@ -1,19 +0,0 @@
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
-#
-# <one line to give the program's name and a brief idea of what it does.>
-# Copyright (C) <year> <name of author>
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-
diff --git a/poky/bitbake/LICENSE b/poky/bitbake/LICENSE
index 7d4e5f4..8458042 100644
--- a/poky/bitbake/LICENSE
+++ b/poky/bitbake/LICENSE
@@ -1,4 +1,13 @@
-BitBake is licensed under the GNU General Public License version 2.0. See COPYING for further details.
+BitBake is licensed under the GNU General Public License version 2.0. See
+LICENSE.GPL-2.0-only for further details.
+
+Individual files contain the following style tags instead of the full license text:
+
+ SPDX-License-Identifier: GPL-2.0-only
+
+This enables machine processing of license information based on the SPDX
+License Identifiers that are here available: http://spdx.org/licenses/
+
The following external components are distributed with this software:
@@ -17,3 +26,4 @@
* Font Awesome fonts redistributed under the SIL Open Font License 1.1
* simplediff is distributed under the zlib license.
+
diff --git a/poky/bitbake/LICENSE.GPL-2.0-only b/poky/bitbake/LICENSE.GPL-2.0-only
new file mode 100644
index 0000000..5db3c0a
--- /dev/null
+++ b/poky/bitbake/LICENSE.GPL-2.0-only
@@ -0,0 +1,288 @@
+ GNU GENERAL PUBLIC LICENSE
+ Version 2, June 1991
+
+ Copyright (C) 1989, 1991 Free Software Foundation, Inc.,
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+ Preamble
+
+ The licenses for most software are designed to take away your
+freedom to share and change it. By contrast, the GNU General Public
+License is intended to guarantee your freedom to share and change free
+software--to make sure the software is free for all its users. This
+General Public License applies to most of the Free Software
+Foundation's software and to any other program whose authors commit to
+using it. (Some other Free Software Foundation software is covered by
+the GNU Lesser General Public License instead.) You can apply it to
+your programs, too.
+
+ When we speak of free software, we are referring to freedom, not
+price. Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+this service if you wish), that you receive source code or can get it
+if you want it, that you can change the software or use pieces of it
+in new free programs; and that you know you can do these things.
+
+ To protect your rights, we need to make restrictions that forbid
+anyone to deny you these rights or to ask you to surrender the rights.
+These restrictions translate to certain responsibilities for you if you
+distribute copies of the software, or if you modify it.
+
+ For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must give the recipients all the rights that
+you have. You must make sure that they, too, receive or can get the
+source code. And you must show them these terms so they know their
+rights.
+
+ We protect your rights with two steps: (1) copyright the software, and
+(2) offer you this license which gives you legal permission to copy,
+distribute and/or modify the software.
+
+ Also, for each author's protection and ours, we want to make certain
+that everyone understands that there is no warranty for this free
+software. If the software is modified by someone else and passed on, we
+want its recipients to know that what they have is not the original, so
+that any problems introduced by others will not reflect on the original
+authors' reputations.
+
+ Finally, any free program is threatened constantly by software
+patents. We wish to avoid the danger that redistributors of a free
+program will individually obtain patent licenses, in effect making the
+program proprietary. To prevent this, we have made it clear that any
+patent must be licensed for everyone's free use or not licensed at all.
+
+ The precise terms and conditions for copying, distribution and
+modification follow.
+
+ GNU GENERAL PUBLIC LICENSE
+ TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+ 0. This License applies to any program or other work which contains
+a notice placed by the copyright holder saying it may be distributed
+under the terms of this General Public License. The "Program", below,
+refers to any such program or work, and a "work based on the Program"
+means either the Program or any derivative work under copyright law:
+that is to say, a work containing the Program or a portion of it,
+either verbatim or with modifications and/or translated into another
+language. (Hereinafter, translation is included without limitation in
+the term "modification".) Each licensee is addressed as "you".
+
+Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope. The act of
+running the Program is not restricted, and the output from the Program
+is covered only if its contents constitute a work based on the
+Program (independent of having been made by running the Program).
+Whether that is true depends on what the Program does.
+
+ 1. You may copy and distribute verbatim copies of the Program's
+source code as you receive it, in any medium, provided that you
+conspicuously and appropriately publish on each copy an appropriate
+copyright notice and disclaimer of warranty; keep intact all the
+notices that refer to this License and to the absence of any warranty;
+and give any other recipients of the Program a copy of this License
+along with the Program.
+
+You may charge a fee for the physical act of transferring a copy, and
+you may at your option offer warranty protection in exchange for a fee.
+
+ 2. You may modify your copy or copies of the Program or any portion
+of it, thus forming a work based on the Program, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+ a) You must cause the modified files to carry prominent notices
+ stating that you changed the files and the date of any change.
+
+ b) You must cause any work that you distribute or publish, that in
+ whole or in part contains or is derived from the Program or any
+ part thereof, to be licensed as a whole at no charge to all third
+ parties under the terms of this License.
+
+ c) If the modified program normally reads commands interactively
+ when run, you must cause it, when started running for such
+ interactive use in the most ordinary way, to print or display an
+ announcement including an appropriate copyright notice and a
+ notice that there is no warranty (or else, saying that you provide
+ a warranty) and that users may redistribute the program under
+ these conditions, and telling the user how to view a copy of this
+ License. (Exception: if the Program itself is interactive but
+ does not normally print such an announcement, your work based on
+ the Program is not required to print an announcement.)
+
+These requirements apply to the modified work as a whole. If
+identifiable sections of that work are not derived from the Program,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works. But when you
+distribute the same sections as part of a whole which is a work based
+on the Program, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Program.
+
+In addition, mere aggregation of another work not based on the Program
+with the Program (or with a work based on the Program) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+ 3. You may copy and distribute the Program (or a work based on it,
+under Section 2) in object code or executable form under the terms of
+Sections 1 and 2 above provided that you also do one of the following:
+
+ a) Accompany it with the complete corresponding machine-readable
+ source code, which must be distributed under the terms of Sections
+ 1 and 2 above on a medium customarily used for software interchange; or,
+
+ b) Accompany it with a written offer, valid for at least three
+ years, to give any third party, for a charge no more than your
+ cost of physically performing source distribution, a complete
+ machine-readable copy of the corresponding source code, to be
+ distributed under the terms of Sections 1 and 2 above on a medium
+ customarily used for software interchange; or,
+
+ c) Accompany it with the information you received as to the offer
+ to distribute corresponding source code. (This alternative is
+ allowed only for noncommercial distribution and only if you
+ received the program in object code or executable form with such
+ an offer, in accord with Subsection b above.)
+
+The source code for a work means the preferred form of the work for
+making modifications to it. For an executable work, complete source
+code means all the source code for all modules it contains, plus any
+associated interface definition files, plus the scripts used to
+control compilation and installation of the executable. However, as a
+special exception, the source code distributed need not include
+anything that is normally distributed (in either source or binary
+form) with the major components (compiler, kernel, and so on) of the
+operating system on which the executable runs, unless that component
+itself accompanies the executable.
+
+If distribution of executable or object code is made by offering
+access to copy from a designated place, then offering equivalent
+access to copy the source code from the same place counts as
+distribution of the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+ 4. You may not copy, modify, sublicense, or distribute the Program
+except as expressly provided under this License. Any attempt
+otherwise to copy, modify, sublicense or distribute the Program is
+void, and will automatically terminate your rights under this License.
+However, parties who have received copies, or rights, from you under
+this License will not have their licenses terminated so long as such
+parties remain in full compliance.
+
+ 5. You are not required to accept this License, since you have not
+signed it. However, nothing else grants you permission to modify or
+distribute the Program or its derivative works. These actions are
+prohibited by law if you do not accept this License. Therefore, by
+modifying or distributing the Program (or any work based on the
+Program), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Program or works based on it.
+
+ 6. Each time you redistribute the Program (or any work based on the
+Program), the recipient automatically receives a license from the
+original licensor to copy, distribute or modify the Program subject to
+these terms and conditions. You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties to
+this License.
+
+ 7. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License. If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Program at all. For example, if a patent
+license would not permit royalty-free redistribution of the Program by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Program.
+
+If any portion of this section is held invalid or unenforceable under
+any particular circumstance, the balance of the section is intended to
+apply and the section as a whole is intended to apply in other
+circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system, which is
+implemented by public license practices. Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+ 8. If the distribution and/or use of the Program is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Program under this License
+may add an explicit geographical distribution limitation excluding
+those countries, so that distribution is permitted only in or among
+countries not thus excluded. In such case, this License incorporates
+the limitation as if written in the body of this License.
+
+ 9. The Free Software Foundation may publish revised and/or new versions
+of the General Public License from time to time. Such new versions will
+be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+Each version is given a distinguishing version number. If the Program
+specifies a version number of this License which applies to it and "any
+later version", you have the option of following the terms and conditions
+either of that version or of any later version published by the Free
+Software Foundation. If the Program does not specify a version number of
+this License, you may choose any version ever published by the Free Software
+Foundation.
+
+ 10. If you wish to incorporate parts of the Program into other free
+programs whose distribution conditions are different, write to the author
+to ask for permission. For software which is copyrighted by the Free
+Software Foundation, write to the Free Software Foundation; we sometimes
+make exceptions for this. Our decision will be guided by the two goals
+of preserving the free status of all derivatives of our free software and
+of promoting the sharing and reuse of software generally.
+
+ NO WARRANTY
+
+ 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
+FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
+OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
+PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
+OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
+TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
+PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
+REPAIR OR CORRECTION.
+
+ 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
+REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
+INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
+OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
+TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
+YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
+PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGES.
+
+ END OF TERMS AND CONDITIONS
+
+Note:
+Individual files contain the following tag instead of the full license text.
+
+ SPDX-License-Identifier: GPL-2.0-only
+
+This enables machine processing of license information based on the SPDX
+License Identifiers that are here available: http://spdx.org/licenses/
diff --git a/poky/bitbake/LICENSE.MIT b/poky/bitbake/LICENSE.MIT
new file mode 100644
index 0000000..a6919eb
--- /dev/null
+++ b/poky/bitbake/LICENSE.MIT
@@ -0,0 +1,25 @@
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
+
+Note:
+Individual files contain the following tag instead of the full license text.
+
+ SPDX-License-Identifier: MIT
+
+This enables machine processing of license information based on the SPDX
+License Identifiers that are here available: http://spdx.org/licenses/
diff --git a/poky/bitbake/bin/bitbake b/poky/bitbake/bin/bitbake
index 57dec2a..b219d36 100755
--- a/poky/bitbake/bin/bitbake
+++ b/poky/bitbake/bin/bitbake
@@ -1,6 +1,4 @@
#!/usr/bin/env python3
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
#
# Copyright (C) 2003, 2004 Chris Larson
# Copyright (C) 2003, 2004 Phil Blundell
@@ -9,18 +7,8 @@
# Copyright (C) 2005 ROAD GmbH
# Copyright (C) 2006 Richard Purdie
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
import os
import sys
@@ -38,7 +26,7 @@
if sys.getfilesystemencoding() != "utf-8":
sys.exit("Please use a locale setting which supports UTF-8 (such as LANG=en_US.UTF-8).\nPython can't change the filesystem locale after loading so we need a UTF-8 when Python starts or things won't work.")
-__version__ = "1.40.0"
+__version__ = "1.43.0"
if __name__ == "__main__":
if __version__ != bb.__version__:
diff --git a/poky/bitbake/bin/bitbake-diffsigs b/poky/bitbake/bin/bitbake-diffsigs
index fa430bb..19420a2 100755
--- a/poky/bitbake/bin/bitbake-diffsigs
+++ b/poky/bitbake/bin/bitbake-diffsigs
@@ -5,18 +5,8 @@
#
# Copyright (C) 2012-2013, 2017 Intel Corporation
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
import os
import sys
@@ -105,7 +95,7 @@
out2 = bb.siggen.compare_sigfiles(hashfiles[hash1], hashfiles[hash2], recursecb, color=color)
for change in out2:
for line in change.splitlines():
- recout.append(' ' + line)
+ recout.append(' ' + line)
return recout
diff --git a/poky/bitbake/bin/bitbake-hashserv b/poky/bitbake/bin/bitbake-hashserv
index c49397b..848a0ca 100755
--- a/poky/bitbake/bin/bitbake-hashserv
+++ b/poky/bitbake/bin/bitbake-hashserv
@@ -2,18 +2,9 @@
#
# Copyright (C) 2018 Garmin Ltd.
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
import os
import sys
import logging
diff --git a/poky/bitbake/bin/bitbake-layers b/poky/bitbake/bin/bitbake-layers
index d184011..a884dc1 100755
--- a/poky/bitbake/bin/bitbake-layers
+++ b/poky/bitbake/bin/bitbake-layers
@@ -7,18 +7,8 @@
# Copyright (C) 2011 Mentor Graphics Corporation
# Copyright (C) 2011-2015 Intel Corporation
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
import logging
import os
diff --git a/poky/bitbake/bin/bitbake-prserv b/poky/bitbake/bin/bitbake-prserv
index f38d2dd..1e9b6cb 100755
--- a/poky/bitbake/bin/bitbake-prserv
+++ b/poky/bitbake/bin/bitbake-prserv
@@ -1,4 +1,8 @@
#!/usr/bin/env python3
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
+
import os
import sys,logging
import optparse
diff --git a/poky/bitbake/bin/bitbake-selftest b/poky/bitbake/bin/bitbake-selftest
index 99f1af9..20553e9 100755
--- a/poky/bitbake/bin/bitbake-selftest
+++ b/poky/bitbake/bin/bitbake-selftest
@@ -2,18 +2,8 @@
#
# Copyright (C) 2012 Richard Purdie
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
import os
import sys, logging
diff --git a/poky/bitbake/bin/bitbake-worker b/poky/bitbake/bin/bitbake-worker
index a9e997e..f63f060 100755
--- a/poky/bitbake/bin/bitbake-worker
+++ b/poky/bitbake/bin/bitbake-worker
@@ -1,4 +1,7 @@
#!/usr/bin/env python3
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
import os
import sys
diff --git a/poky/bitbake/bin/bitdoc b/poky/bitbake/bin/bitdoc
index 2744678..9bd02be 100755
--- a/poky/bitbake/bin/bitdoc
+++ b/poky/bitbake/bin/bitdoc
@@ -1,21 +1,9 @@
#!/usr/bin/env python3
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
#
# Copyright (C) 2005 Holger Hans Peter Freyther
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
import optparse, os, sys
diff --git a/poky/bitbake/bin/git-make-shallow b/poky/bitbake/bin/git-make-shallow
index 296d3a3..57069f7 100755
--- a/poky/bitbake/bin/git-make-shallow
+++ b/poky/bitbake/bin/git-make-shallow
@@ -1,4 +1,8 @@
#!/usr/bin/env python3
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
+
"""git-make-shallow: make the current git repository shallow
Remove the history of the specified revisions, then optionally filter the
diff --git a/poky/bitbake/bin/toaster b/poky/bitbake/bin/toaster
index ecf66fa..c3472df 100755
--- a/poky/bitbake/bin/toaster
+++ b/poky/bitbake/bin/toaster
@@ -3,19 +3,9 @@
# toaster - shell script to start Toaster
# Copyright (C) 2013-2015 Intel Corp.
-
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
+# SPDX-License-Identifier: GPL-2.0-or-later
#
-# You should have received a copy of the GNU General Public License
-# along with this program. If not, see http://www.gnu.org/licenses/.
HELP="
Usage: source toaster start|stop [webport=<address:port>] [noweb] [nobuild] [toasterdir]
diff --git a/poky/bitbake/bin/toaster-eventreplay b/poky/bitbake/bin/toaster-eventreplay
index 80967a0..8fa4ab7 100755
--- a/poky/bitbake/bin/toaster-eventreplay
+++ b/poky/bitbake/bin/toaster-eventreplay
@@ -1,25 +1,12 @@
#!/usr/bin/env python3
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
#
# Copyright (C) 2014 Alex Damian
#
+# SPDX-License-Identifier: GPL-2.0-only
+#
# This file re-uses code spread throughout other Bitbake source files.
# As such, all other copyrights belong to their own right holders.
#
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
"""
This command takes a filename as a single parameter. The filename is read
diff --git a/poky/bitbake/contrib/dump_cache.py b/poky/bitbake/contrib/dump_cache.py
index 8963ca4..c6723cb 100755
--- a/poky/bitbake/contrib/dump_cache.py
+++ b/poky/bitbake/contrib/dump_cache.py
@@ -1,6 +1,4 @@
#!/usr/bin/env python3
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
#
# Copyright (C) 2012, 2018 Wind River Systems, Inc.
#
diff --git a/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-fetching.xml b/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-fetching.xml
index 3acd7c4..6840408 100644
--- a/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-fetching.xml
+++ b/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-fetching.xml
@@ -832,7 +832,13 @@
Bazaar (<filename>bzr://</filename>)
</para></listitem>
<listitem><para>
- Trees using Git Annex (<filename>gitannex://</filename>)
+ Mercurial (<filename>hg://</filename>)
+ </para></listitem>
+ <listitem><para>
+ npm (<filename>npm://</filename>)
+ </para></listitem>
+ <listitem><para>
+ OSC (<filename>osc://</filename>)
</para></listitem>
<listitem><para>
Secure FTP (<filename>sftp://</filename>)
@@ -841,10 +847,7 @@
Secure Shell (<filename>ssh://</filename>)
</para></listitem>
<listitem><para>
- OSC (<filename>osc://</filename>)
- </para></listitem>
- <listitem><para>
- Mercurial (<filename>hg://</filename>)
+ Trees using Git Annex (<filename>gitannex://</filename>)
</para></listitem>
</itemizedlist>
No documentation currently exists for these lesser used
diff --git a/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-metadata.xml b/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-metadata.xml
index 199ab23..a125ad3 100644
--- a/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-metadata.xml
+++ b/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-metadata.xml
@@ -61,6 +61,78 @@
</para>
</section>
+ <section id='modifying-existing-variables'>
+ <title>Modifying Existing Variables</title>
+
+ <para>
+ Sometimes you need to modify existing variables.
+ Following are some cases where you might find you want to
+ modify an existing variable:
+ <itemizedlist>
+ <listitem><para>
+ Customize a recipe that uses the variable.
+ </para></listitem>
+ <listitem><para>
+ Change a variable's default value used in a
+ <filename>*.bbclass</filename> file.
+ </para></listitem>
+ <listitem><para>
+ Change the variable in a <filename>*.bbappend</filename>
+ file to override the variable in the original recipe.
+ </para></listitem>
+ <listitem><para>
+ Change the variable in a configuration file so that the
+ value overrides an existing configuration.
+ </para></listitem>
+ </itemizedlist>
+ </para>
+
+ <para>
+ Changing a variable value can sometimes depend on how the
+ value was originally assigned and also on the desired
+ intent of the change.
+ In particular, when you append a value to a variable that
+ has a default value, the resulting value might not be what
+ you expect.
+ In this case, the value you provide might replace the value
+ rather than append to the default value.
+ </para>
+
+ <para>
+ If after you have changed a variable's value and something
+ unexplained occurs, you can use BitBake to check the actual
+ value of the suspect variable.
+ You can make these checks for both configuration and recipe
+ level changes:
+ <itemizedlist>
+ <listitem><para>
+ For configuration changes, use the following:
+ <literallayout class='monospaced'>
+ $ bitbake -e
+ </literallayout>
+ This command displays variable values after the
+ configuration files (i.e. <filename>local.conf</filename>,
+ <filename>bblayers.conf</filename>,
+ <filename>bitbake.conf</filename> and so forth) have
+ been parsed.
+ <note>
+ Variables that are exported to the environment are
+ preceded by the string "export" in the command's
+ output.
+ </note>
+ </para></listitem>
+ <listitem><para>
+ For recipe changes, use the following:
+ <literallayout class='monospaced'>
+ $ bitbake <replaceable>recipe</replaceable> -e | grep VARIABLE="
+ </literallayout>
+ This command checks to see if the variable actually
+ makes it into a specific recipe.
+ </para></listitem>
+ </itemizedlist>
+ </para>
+ </section>
+
<section id='line-joining'>
<title>Line Joining</title>
diff --git a/poky/bitbake/doc/poky.ent b/poky/bitbake/doc/poky.ent
index c032e14..85d9c83 100644
--- a/poky/bitbake/doc/poky.ent
+++ b/poky/bitbake/doc/poky.ent
@@ -17,13 +17,6 @@
<!ENTITY OE_DOCS_URL "http://docs.openembedded.org">
<!ENTITY OH_HOME_URL "http://o-hand.com">
<!ENTITY BITBAKE_HOME_URL "http://developer.berlios.de/projects/bitbake/">
-<!ENTITY ECLIPSE_MAIN_URL "http://www.eclipse.org/downloads">
-<!ENTITY ECLIPSE_DL_URL "http://download.eclipse.org">
-<!ENTITY ECLIPSE_DL_PLUGIN_URL "&YOCTO_DL_URL;/releases/eclipse-plugin/&DISTRO;">
-<!ENTITY ECLIPSE_UPDATES_URL "&ECLIPSE_DL_URL;/tm/updates/3.3">
-<!ENTITY ECLIPSE_INDIGO_URL "&ECLIPSE_DL_URL;/releases/indigo">
-<!ENTITY ECLIPSE_JUNO_URL "&ECLIPSE_DL_URL;/releases/juno">
-<!ENTITY ECLIPSE_INDIGO_CDT_URL "&ECLIPSE_DL_URL;tools/cdt/releases/indigo">
<!ENTITY YOCTO_DOCS_URL "&YOCTO_HOME_URL;/docs">
<!ENTITY YOCTO_SOURCES_URL "&YOCTO_HOME_URL;/sources/">
<!ENTITY YOCTO_AB_PORT_URL "&YOCTO_AB_URL;:8010">
@@ -31,7 +24,6 @@
<!ENTITY YOCTO_POKY_URL "&YOCTO_DL_URL;/releases/poky/">
<!ENTITY YOCTO_RELEASE_DL_URL "&YOCTO_DL_URL;/releases/yocto/yocto-&DISTRO;">
<!ENTITY YOCTO_TOOLCHAIN_DL_URL "&YOCTO_RELEASE_DL_URL;/toolchain/">
-<!ENTITY YOCTO_ECLIPSE_DL_URL "&YOCTO_RELEASE_DL_URL;/eclipse-plugin/indigo;">
<!ENTITY YOCTO_ADTINSTALLER_DL_URL "&YOCTO_RELEASE_DL_URL;/adt_installer">
<!ENTITY YOCTO_POKY_DL_URL "&YOCTO_RELEASE_DL_URL;/&YOCTO_POKY;.tar.bz2">
<!ENTITY YOCTO_MACHINES_DL_URL "&YOCTO_RELEASE_DL_URL;/machines">
diff --git a/poky/bitbake/lib/bb/COW.py b/poky/bitbake/lib/bb/COW.py
index 7817473..d26e981 100644
--- a/poky/bitbake/lib/bb/COW.py
+++ b/poky/bitbake/lib/bb/COW.py
@@ -1,23 +1,8 @@
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
#
# This is a copy on write dictionary and set which abuses classes to try and be nice and fast.
#
# Copyright (C) 2006 Tim Ansell
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-#
#Please Note:
# Be careful when using mutable types (ie Dict and Lists) - operations involving these are SLOW.
# Assign a file to __warn__ to get warnings about slow operations.
diff --git a/poky/bitbake/lib/bb/__init__.py b/poky/bitbake/lib/bb/__init__.py
index 4bc47c8..7579a89 100644
--- a/poky/bitbake/lib/bb/__init__.py
+++ b/poky/bitbake/lib/bb/__init__.py
@@ -1,5 +1,3 @@
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
#
# BitBake Build System Python Library
#
@@ -8,20 +6,10 @@
#
# Based on Gentoo's portage.py.
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-__version__ = "1.40.0"
+__version__ = "1.43.0"
import sys
if sys.version_info < (3, 4, 0):
diff --git a/poky/bitbake/lib/bb/build.py b/poky/bitbake/lib/bb/build.py
index 7571421..dae42ac 100644
--- a/poky/bitbake/lib/bb/build.py
+++ b/poky/bitbake/lib/bb/build.py
@@ -1,5 +1,3 @@
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
#
# BitBake 'Build' implementation
#
@@ -10,18 +8,7 @@
#
# Based on Gentoo's portage.py.
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+# SPDX-License-Identifier: GPL-2.0-only
#
# Based on functions from the base bb module, Copyright 2003 Holger Schurig
@@ -408,6 +395,8 @@
bb.plain(value)
elif cmd == 'bbnote':
bb.note(value)
+ elif cmd == 'bbverbnote':
+ bb.verbnote(value)
elif cmd == 'bbwarn':
bb.warn(value)
elif cmd == 'bberror':
@@ -815,6 +804,9 @@
task_deps['parents'][task] = []
if 'deps' in flags:
for dep in flags['deps']:
+ # Check and warn for "addtask task after foo" while foo does not exist
+ #if not dep in tasklist:
+ # bb.warn('%s: dependent task %s for %s does not exist' % (d.getVar('PN'), dep, task))
dep = d.expand(dep)
task_deps['parents'][task].append(dep)
diff --git a/poky/bitbake/lib/bb/cache.py b/poky/bitbake/lib/bb/cache.py
index 65c514b..060758e 100644
--- a/poky/bitbake/lib/bb/cache.py
+++ b/poky/bitbake/lib/bb/cache.py
@@ -1,5 +1,3 @@
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
#
# BitBake Cache implementation
#
@@ -15,18 +13,8 @@
# Copyright (C) 2005 Holger Hans Peter Freyther
# Copyright (C) 2005 ROAD GmbH
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
import os
import sys
diff --git a/poky/bitbake/lib/bb/cache_extra.py b/poky/bitbake/lib/bb/cache_extra.py
index 83f4959..bf4226d 100644
--- a/poky/bitbake/lib/bb/cache_extra.py
+++ b/poky/bitbake/lib/bb/cache_extra.py
@@ -1,5 +1,3 @@
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
#
# Extra RecipeInfo will be all defined in this file. Currently,
# Only Hob (Image Creator) Requests some extra fields. So
@@ -12,18 +10,8 @@
# Copyright (C) 2011, Intel Corporation. All rights reserved.
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
from bb.cache import RecipeInfoCommon
diff --git a/poky/bitbake/lib/bb/checksum.py b/poky/bitbake/lib/bb/checksum.py
index 4e1598f..5bc8a8f 100644
--- a/poky/bitbake/lib/bb/checksum.py
+++ b/poky/bitbake/lib/bb/checksum.py
@@ -2,18 +2,8 @@
#
# Copyright (C) 2012 Intel Corporation
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
import glob
import operator
diff --git a/poky/bitbake/lib/bb/codeparser.py b/poky/bitbake/lib/bb/codeparser.py
index ac995a6..fd2c473 100644
--- a/poky/bitbake/lib/bb/codeparser.py
+++ b/poky/bitbake/lib/bb/codeparser.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
+
"""
BitBake code parser
diff --git a/poky/bitbake/lib/bb/command.py b/poky/bitbake/lib/bb/command.py
index 6c966e3..378f389 100644
--- a/poky/bitbake/lib/bb/command.py
+++ b/poky/bitbake/lib/bb/command.py
@@ -6,18 +6,8 @@
# Copyright (C) 2006-2007 Richard Purdie
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
"""
The bitbake server takes 'commands' from its UI/commandline.
diff --git a/poky/bitbake/lib/bb/compat.py b/poky/bitbake/lib/bb/compat.py
index de1923d..4935668 100644
--- a/poky/bitbake/lib/bb/compat.py
+++ b/poky/bitbake/lib/bb/compat.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
+
"""Code pulled from future python versions, here for compatibility"""
from collections import MutableMapping, KeysView, ValuesView, ItemsView, OrderedDict
diff --git a/poky/bitbake/lib/bb/cooker.py b/poky/bitbake/lib/bb/cooker.py
index 9ccaa79..c8e1404 100644
--- a/poky/bitbake/lib/bb/cooker.py
+++ b/poky/bitbake/lib/bb/cooker.py
@@ -1,6 +1,4 @@
#!/usr/bin/env python
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
#
# Copyright (C) 2003, 2004 Chris Larson
# Copyright (C) 2003, 2004 Phil Blundell
@@ -9,19 +7,8 @@
# Copyright (C) 2005 ROAD GmbH
# Copyright (C) 2006 - 2007 Richard Purdie
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-
import sys, os, glob, os.path, re, time
import atexit
diff --git a/poky/bitbake/lib/bb/cookerdata.py b/poky/bitbake/lib/bb/cookerdata.py
index 09412e2..f8ae410 100644
--- a/poky/bitbake/lib/bb/cookerdata.py
+++ b/poky/bitbake/lib/bb/cookerdata.py
@@ -1,6 +1,4 @@
#!/usr/bin/env python
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
#
# Copyright (C) 2003, 2004 Chris Larson
# Copyright (C) 2003, 2004 Phil Blundell
@@ -9,18 +7,8 @@
# Copyright (C) 2005 ROAD GmbH
# Copyright (C) 2006 Richard Purdie
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
import logging
import os
diff --git a/poky/bitbake/lib/bb/daemonize.py b/poky/bitbake/lib/bb/daemonize.py
index c937675..f01e6ec 100644
--- a/poky/bitbake/lib/bb/daemonize.py
+++ b/poky/bitbake/lib/bb/daemonize.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
+
"""
Python Daemonizing helper
diff --git a/poky/bitbake/lib/bb/data.py b/poky/bitbake/lib/bb/data.py
index 29c2388..92ef405 100644
--- a/poky/bitbake/lib/bb/data.py
+++ b/poky/bitbake/lib/bb/data.py
@@ -1,5 +1,3 @@
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
"""
BitBake 'Data' implementations
@@ -22,18 +20,7 @@
# Copyright (C) 2003, 2004 Chris Larson
# Copyright (C) 2005 Holger Hans Peter Freyther
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+# SPDX-License-Identifier: GPL-2.0-only
#
# Based on functions from the base bb module, Copyright 2003 Holger Schurig
diff --git a/poky/bitbake/lib/bb/data_smart.py b/poky/bitbake/lib/bb/data_smart.py
index 07db7be..dd5c618 100644
--- a/poky/bitbake/lib/bb/data_smart.py
+++ b/poky/bitbake/lib/bb/data_smart.py
@@ -1,5 +1,3 @@
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
"""
BitBake Smart Dictionary Implementation
@@ -14,18 +12,8 @@
# Copyright (C) 2005 Uli Luckas
# Copyright (C) 2005 ROAD GmbH
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
# Based on functions from the base bb module, Copyright 2003 Holger Schurig
import copy, re, sys, traceback
diff --git a/poky/bitbake/lib/bb/event.py b/poky/bitbake/lib/bb/event.py
index 5b1b094..7cbb5ca 100644
--- a/poky/bitbake/lib/bb/event.py
+++ b/poky/bitbake/lib/bb/event.py
@@ -1,5 +1,3 @@
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
"""
BitBake 'Event' implementation
@@ -9,18 +7,8 @@
# Copyright (C) 2003, 2004 Chris Larson
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
import os, sys
import warnings
diff --git a/poky/bitbake/lib/bb/exceptions.py b/poky/bitbake/lib/bb/exceptions.py
index cd71343..ecbad59 100644
--- a/poky/bitbake/lib/bb/exceptions.py
+++ b/poky/bitbake/lib/bb/exceptions.py
@@ -1,3 +1,6 @@
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
import inspect
import traceback
diff --git a/poky/bitbake/lib/bb/fetch2/__init__.py b/poky/bitbake/lib/bb/fetch2/__init__.py
index 8fecc80..0126e0d 100644
--- a/poky/bitbake/lib/bb/fetch2/__init__.py
+++ b/poky/bitbake/lib/bb/fetch2/__init__.py
@@ -1,5 +1,3 @@
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
"""
BitBake 'Fetch' implementations
@@ -10,18 +8,7 @@
# Copyright (C) 2003, 2004 Chris Larson
# Copyright (C) 2012 Intel Corporation
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+# SPDX-License-Identifier: GPL-2.0-only
#
# Based on functions from the base bb module, Copyright 2003 Holger Schurig
diff --git a/poky/bitbake/lib/bb/fetch2/bzr.py b/poky/bitbake/lib/bb/fetch2/bzr.py
index 658502f..c56d875 100644
--- a/poky/bitbake/lib/bb/fetch2/bzr.py
+++ b/poky/bitbake/lib/bb/fetch2/bzr.py
@@ -10,18 +10,8 @@
# BitBake build tools.
# Copyright (C) 2003, 2004 Chris Larson
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
import os
import sys
diff --git a/poky/bitbake/lib/bb/fetch2/clearcase.py b/poky/bitbake/lib/bb/fetch2/clearcase.py
index 3a6573d..9ed0d9b 100644
--- a/poky/bitbake/lib/bb/fetch2/clearcase.py
+++ b/poky/bitbake/lib/bb/fetch2/clearcase.py
@@ -1,5 +1,3 @@
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
"""
BitBake 'Fetch' clearcase implementation
@@ -47,18 +45,7 @@
"""
# Copyright (C) 2014 Siemens AG
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+# SPDX-License-Identifier: GPL-2.0-only
#
import os
diff --git a/poky/bitbake/lib/bb/fetch2/cvs.py b/poky/bitbake/lib/bb/fetch2/cvs.py
index 0e0a319..1b35ba4 100644
--- a/poky/bitbake/lib/bb/fetch2/cvs.py
+++ b/poky/bitbake/lib/bb/fetch2/cvs.py
@@ -1,5 +1,3 @@
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
"""
BitBake 'Fetch' implementations
@@ -10,20 +8,9 @@
# Copyright (C) 2003, 2004 Chris Larson
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-#
-#Based on functions from the base bb module, Copyright 2003 Holger Schurig
+# Based on functions from the base bb module, Copyright 2003 Holger Schurig
#
import os
diff --git a/poky/bitbake/lib/bb/fetch2/git.py b/poky/bitbake/lib/bb/fetch2/git.py
index 8185bf4..e171aa7 100644
--- a/poky/bitbake/lib/bb/fetch2/git.py
+++ b/poky/bitbake/lib/bb/fetch2/git.py
@@ -1,5 +1,3 @@
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
"""
BitBake 'Fetch' git implementation
@@ -55,20 +53,10 @@
"""
-#Copyright (C) 2005 Richard Purdie
+# Copyright (C) 2005 Richard Purdie
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
import collections
import errno
@@ -503,6 +491,17 @@
repourl = self._get_repo_url(ud)
runfetchcmd("%s remote set-url origin %s" % (ud.basecmd, repourl), d, workdir=destdir)
+
+ if self._contains_lfs(ud, d, destdir):
+ path = d.getVar('PATH')
+ if path:
+ gitlfstool = bb.utils.which(path, "git-lfs", executable=True)
+ if not gitlfstool:
+ raise bb.fetch2.FetchError("Repository %s has lfs content, install git-lfs plugin on host to download" % (repourl))
+ else:
+ bb.note("Could not find 'PATH'")
+
+
if not ud.nocheckout:
if subdir != "":
runfetchcmd("%s read-tree %s%s" % (ud.basecmd, ud.revisions[ud.names[0]], readpathspec), d,
@@ -553,6 +552,20 @@
raise bb.fetch2.FetchError("The command '%s' gave output with more then 1 line unexpectedly, output: '%s'" % (cmd, output))
return output.split()[0] != "0"
+ def _contains_lfs(self, ud, d, wd):
+ """
+ Check if the repository has 'lfs' (large file) content
+ """
+ cmd = "%s grep lfs HEAD:.gitattributes | wc -l" % (
+ ud.basecmd)
+ try:
+ output = runfetchcmd(cmd, d, quiet=True, workdir=wd)
+ if int(output) > 0:
+ return True
+ except (bb.fetch2.FetchError,ValueError):
+ pass
+ return False
+
def _get_repo_url(self, ud):
"""
Return the repository URL
diff --git a/poky/bitbake/lib/bb/fetch2/gitannex.py b/poky/bitbake/lib/bb/fetch2/gitannex.py
index a9b69ca..1d497dc 100644
--- a/poky/bitbake/lib/bb/fetch2/gitannex.py
+++ b/poky/bitbake/lib/bb/fetch2/gitannex.py
@@ -1,5 +1,3 @@
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
"""
BitBake 'Fetch' git annex implementation
"""
@@ -7,18 +5,8 @@
# Copyright (C) 2014 Otavio Salvador
# Copyright (C) 2014 O.S. Systems Software LTDA.
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
import os
import bb
diff --git a/poky/bitbake/lib/bb/fetch2/gitsm.py b/poky/bitbake/lib/bb/fetch2/gitsm.py
index 3238913..1f03ba7 100644
--- a/poky/bitbake/lib/bb/fetch2/gitsm.py
+++ b/poky/bitbake/lib/bb/fetch2/gitsm.py
@@ -1,5 +1,3 @@
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
"""
BitBake 'Fetch' git submodules implementation
@@ -16,18 +14,8 @@
# Copyright (C) 2013 Richard Purdie
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
import os
import bb
diff --git a/poky/bitbake/lib/bb/fetch2/hg.py b/poky/bitbake/lib/bb/fetch2/hg.py
index 5a2985e..15d729e 100644
--- a/poky/bitbake/lib/bb/fetch2/hg.py
+++ b/poky/bitbake/lib/bb/fetch2/hg.py
@@ -1,5 +1,3 @@
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
"""
BitBake 'Fetch' implementation for mercurial DRCS (hg).
@@ -9,20 +7,10 @@
# Copyright (C) 2004 Marcin Juszkiewicz
# Copyright (C) 2007 Robert Schuster
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+# SPDX-License-Identifier: GPL-2.0-only
#
# Based on functions from the base bb module, Copyright 2003 Holger Schurig
+#
import os
import sys
diff --git a/poky/bitbake/lib/bb/fetch2/local.py b/poky/bitbake/lib/bb/fetch2/local.py
index a114ac1..01d9ff9 100644
--- a/poky/bitbake/lib/bb/fetch2/local.py
+++ b/poky/bitbake/lib/bb/fetch2/local.py
@@ -1,5 +1,3 @@
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
"""
BitBake 'Fetch' implementations
@@ -10,20 +8,10 @@
# Copyright (C) 2003, 2004 Chris Larson
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+# SPDX-License-Identifier: GPL-2.0-only
#
# Based on functions from the base bb module, Copyright 2003 Holger Schurig
+#
import os
import urllib.request, urllib.parse, urllib.error
diff --git a/poky/bitbake/lib/bb/fetch2/npm.py b/poky/bitbake/lib/bb/fetch2/npm.py
index 65bf5a3..f08bdee 100644
--- a/poky/bitbake/lib/bb/fetch2/npm.py
+++ b/poky/bitbake/lib/bb/fetch2/npm.py
@@ -1,5 +1,6 @@
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
"""
BitBake 'Fetch' NPM implementation
diff --git a/poky/bitbake/lib/bb/fetch2/osc.py b/poky/bitbake/lib/bb/fetch2/osc.py
index 6c60456..3e56715 100644
--- a/poky/bitbake/lib/bb/fetch2/osc.py
+++ b/poky/bitbake/lib/bb/fetch2/osc.py
@@ -1,5 +1,6 @@
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
"""
Bitbake "Fetch" implementation for osc (Opensuse build service client).
Based on the svn "Fetch" implementation.
diff --git a/poky/bitbake/lib/bb/fetch2/perforce.py b/poky/bitbake/lib/bb/fetch2/perforce.py
index 903a8e6..54d001e 100644
--- a/poky/bitbake/lib/bb/fetch2/perforce.py
+++ b/poky/bitbake/lib/bb/fetch2/perforce.py
@@ -1,5 +1,3 @@
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
"""
BitBake 'Fetch' implementation for perforce
@@ -8,18 +6,7 @@
# Copyright (C) 2003, 2004 Chris Larson
# Copyright (C) 2016 Kodak Alaris, Inc.
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+# SPDX-License-Identifier: GPL-2.0-only
#
# Based on functions from the base bb module, Copyright 2003 Holger Schurig
diff --git a/poky/bitbake/lib/bb/fetch2/repo.py b/poky/bitbake/lib/bb/fetch2/repo.py
index 8c7e818..2bdbbd4 100644
--- a/poky/bitbake/lib/bb/fetch2/repo.py
+++ b/poky/bitbake/lib/bb/fetch2/repo.py
@@ -1,5 +1,3 @@
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
"""
BitBake "Fetch" repo (git) implementation
@@ -8,20 +6,10 @@
# Copyright (C) 2009 Tom Rini <trini@embeddedalley.com>
#
# Based on git.py which is:
-#Copyright (C) 2005 Richard Purdie
+# Copyright (C) 2005 Richard Purdie
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
import os
import bb
diff --git a/poky/bitbake/lib/bb/fetch2/s3.py b/poky/bitbake/lib/bb/fetch2/s3.py
index 1629288..ffca73c 100644
--- a/poky/bitbake/lib/bb/fetch2/s3.py
+++ b/poky/bitbake/lib/bb/fetch2/s3.py
@@ -1,5 +1,3 @@
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
"""
BitBake 'Fetch' implementation for Amazon AWS S3.
@@ -13,18 +11,7 @@
# Based in part on bb.fetch2.wget:
# Copyright (C) 2003, 2004 Chris Larson
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+# SPDX-License-Identifier: GPL-2.0-only
#
# Based on functions from the base bb module, Copyright 2003 Holger Schurig
diff --git a/poky/bitbake/lib/bb/fetch2/sftp.py b/poky/bitbake/lib/bb/fetch2/sftp.py
index 81884a6..f87f292 100644
--- a/poky/bitbake/lib/bb/fetch2/sftp.py
+++ b/poky/bitbake/lib/bb/fetch2/sftp.py
@@ -1,5 +1,3 @@
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
"""
BitBake SFTP Fetch implementation
@@ -44,18 +42,7 @@
# Based in part on bb.fetch2.wget:
# Copyright (C) 2003, 2004 Chris Larson
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+# SPDX-License-Identifier: GPL-2.0-only
#
# Based on functions from the base bb module, Copyright 2003 Holger Schurig
diff --git a/poky/bitbake/lib/bb/fetch2/ssh.py b/poky/bitbake/lib/bb/fetch2/ssh.py
index 6047ee4..f5be060 100644
--- a/poky/bitbake/lib/bb/fetch2/ssh.py
+++ b/poky/bitbake/lib/bb/fetch2/ssh.py
@@ -1,5 +1,3 @@
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
'''
BitBake 'Fetch' implementations
@@ -29,18 +27,8 @@
# Copyright 2003 Holger Schurig
#
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
import re, os
from bb.fetch2 import FetchMethod
diff --git a/poky/bitbake/lib/bb/fetch2/svn.py b/poky/bitbake/lib/bb/fetch2/svn.py
index 9dcf3eb..baeb0e7 100644
--- a/poky/bitbake/lib/bb/fetch2/svn.py
+++ b/poky/bitbake/lib/bb/fetch2/svn.py
@@ -1,5 +1,3 @@
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
"""
BitBake 'Fetch' implementation for svn.
@@ -8,18 +6,7 @@
# Copyright (C) 2003, 2004 Chris Larson
# Copyright (C) 2004 Marcin Juszkiewicz
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+# SPDX-License-Identifier: GPL-2.0-only
#
# Based on functions from the base bb module, Copyright 2003 Holger Schurig
diff --git a/poky/bitbake/lib/bb/fetch2/wget.py b/poky/bitbake/lib/bb/fetch2/wget.py
index 3bb3e3b..0f71ee4 100644
--- a/poky/bitbake/lib/bb/fetch2/wget.py
+++ b/poky/bitbake/lib/bb/fetch2/wget.py
@@ -1,5 +1,3 @@
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
"""
BitBake 'Fetch' implementations
@@ -10,18 +8,7 @@
# Copyright (C) 2003, 2004 Chris Larson
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+# SPDX-License-Identifier: GPL-2.0-only
#
# Based on functions from the base bb module, Copyright 2003 Holger Schurig
diff --git a/poky/bitbake/lib/bb/main.py b/poky/bitbake/lib/bb/main.py
index 41dd3b9..8d1978f 100755
--- a/poky/bitbake/lib/bb/main.py
+++ b/poky/bitbake/lib/bb/main.py
@@ -1,6 +1,4 @@
#!/usr/bin/env python
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
#
# Copyright (C) 2003, 2004 Chris Larson
# Copyright (C) 2003, 2004 Phil Blundell
@@ -9,18 +7,8 @@
# Copyright (C) 2005 ROAD GmbH
# Copyright (C) 2006 Richard Purdie
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
import os
import sys
diff --git a/poky/bitbake/lib/bb/methodpool.py b/poky/bitbake/lib/bb/methodpool.py
index 49aed33..51783ac 100644
--- a/poky/bitbake/lib/bb/methodpool.py
+++ b/poky/bitbake/lib/bb/methodpool.py
@@ -1,21 +1,8 @@
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
-#
#
# Copyright (C) 2006 Holger Hans Peter Freyther
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
from bb.utils import better_compile, better_exec
diff --git a/poky/bitbake/lib/bb/monitordisk.py b/poky/bitbake/lib/bb/monitordisk.py
index 2ad1e61..69b25c7 100644
--- a/poky/bitbake/lib/bb/monitordisk.py
+++ b/poky/bitbake/lib/bb/monitordisk.py
@@ -1,21 +1,9 @@
#!/usr/bin/env python
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
#
# Copyright (C) 2012 Robert Yang
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
import os, logging, re, sys
import bb
diff --git a/poky/bitbake/lib/bb/msg.py b/poky/bitbake/lib/bb/msg.py
index 96f077e..6216eb3 100644
--- a/poky/bitbake/lib/bb/msg.py
+++ b/poky/bitbake/lib/bb/msg.py
@@ -1,5 +1,3 @@
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
"""
BitBake 'msg' implementation
@@ -9,18 +7,8 @@
# Copyright (C) 2006 Richard Purdie
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
import sys
import copy
diff --git a/poky/bitbake/lib/bb/namedtuple_with_abc.py b/poky/bitbake/lib/bb/namedtuple_with_abc.py
index 32f2fc6..c8e1d55 100644
--- a/poky/bitbake/lib/bb/namedtuple_with_abc.py
+++ b/poky/bitbake/lib/bb/namedtuple_with_abc.py
@@ -1,6 +1,9 @@
# http://code.activestate.com/recipes/577629-namedtupleabc-abstract-base-class-mix-in-for-named/
#!/usr/bin/env python
# Copyright (c) 2011 Jan Kaliszewski (zuo). Available under the MIT License.
+#
+# SPDX-License-Identifier: MIT
+#
"""
namedtuple_with_abc.py:
diff --git a/poky/bitbake/lib/bb/parse/__init__.py b/poky/bitbake/lib/bb/parse/__init__.py
index 5397d57..76e180b 100644
--- a/poky/bitbake/lib/bb/parse/__init__.py
+++ b/poky/bitbake/lib/bb/parse/__init__.py
@@ -9,20 +9,10 @@
# Copyright (C) 2003, 2004 Chris Larson
# Copyright (C) 2003, 2004 Phil Blundell
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+# SPDX-License-Identifier: GPL-2.0-only
#
# Based on functions from the base bb module, Copyright 2003 Holger Schurig
+#
handlers = []
diff --git a/poky/bitbake/lib/bb/parse/ast.py b/poky/bitbake/lib/bb/parse/ast.py
index 6d7c80b..f0911e6 100644
--- a/poky/bitbake/lib/bb/parse/ast.py
+++ b/poky/bitbake/lib/bb/parse/ast.py
@@ -1,5 +1,3 @@
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
"""
AbstractSyntaxTree classes for the Bitbake language
"""
@@ -8,19 +6,8 @@
# Copyright (C) 2003, 2004 Phil Blundell
# Copyright (C) 2009 Holger Hans Peter Freyther
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-
import re
import string
diff --git a/poky/bitbake/lib/bb/parse/parse_py/BBHandler.py b/poky/bitbake/lib/bb/parse/parse_py/BBHandler.py
index 9dba5f2..889f230 100644
--- a/poky/bitbake/lib/bb/parse/parse_py/BBHandler.py
+++ b/poky/bitbake/lib/bb/parse/parse_py/BBHandler.py
@@ -1,6 +1,4 @@
#!/usr/bin/env python
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
"""
class for handling .bb files
@@ -12,19 +10,8 @@
# Copyright (C) 2003, 2004 Chris Larson
# Copyright (C) 2003, 2004 Phil Blundell
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-
import re, bb, os
import logging
@@ -42,7 +29,7 @@
__inherit_regexp__ = re.compile(r"inherit\s+(.+)" )
__export_func_regexp__ = re.compile(r"EXPORT_FUNCTIONS\s+(.+)" )
__addtask_regexp__ = re.compile(r"addtask\s+(?P<func>\w+)\s*((before\s*(?P<before>((.*(?=after))|(.*))))|(after\s*(?P<after>((.*(?=before))|(.*)))))*")
-__deltask_regexp__ = re.compile(r"deltask\s+(?P<func>\w+)")
+__deltask_regexp__ = re.compile(r"deltask\s+(?P<func>\w+)(?P<ignores>.*)")
__addhandler_regexp__ = re.compile(r"addhandler\s+(.+)" )
__def_regexp__ = re.compile(r"def\s+(\w+).*:" )
__python_func_regexp__ = re.compile(r"(\s+.*)|(^$)|(^#)" )
@@ -236,11 +223,27 @@
m = __addtask_regexp__.match(s)
if m:
+ if len(m.group().split()) == 2:
+ # Check and warn for "addtask task1 task2"
+ m2 = re.match(r"addtask\s+(?P<func>\w+)(?P<ignores>.*)", s)
+ if m2 and m2.group('ignores'):
+ logger.warning('addtask ignored: "%s"' % m2.group('ignores'))
+
+ # Check and warn for "addtask task1 before task2 before task3", the
+ # similar to "after"
+ taskexpression = s.split()
+ for word in ('before', 'after'):
+ if taskexpression.count(word) > 1:
+ logger.warning("addtask contained multiple '%s' keywords, only one is supported" % word)
+
ast.handleAddTask(statements, fn, lineno, m)
return
m = __deltask_regexp__.match(s)
if m:
+ # Check and warn "for deltask task1 task2"
+ if m.group('ignores'):
+ logger.warning('deltask ignored: "%s"' % m.group('ignores'))
ast.handleDelTask(statements, fn, lineno, m)
return
diff --git a/poky/bitbake/lib/bb/parse/parse_py/ConfHandler.py b/poky/bitbake/lib/bb/parse/parse_py/ConfHandler.py
index ea49f8c..71bf61b 100644
--- a/poky/bitbake/lib/bb/parse/parse_py/ConfHandler.py
+++ b/poky/bitbake/lib/bb/parse/parse_py/ConfHandler.py
@@ -1,6 +1,4 @@
#!/usr/bin/env python
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
"""
class for handling configuration data files
@@ -11,18 +9,8 @@
# Copyright (C) 2003, 2004 Chris Larson
# Copyright (C) 2003, 2004 Phil Blundell
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
import errno
import re
diff --git a/poky/bitbake/lib/bb/parse/parse_py/__init__.py b/poky/bitbake/lib/bb/parse/parse_py/__init__.py
index 3e658d0..cdebe44 100644
--- a/poky/bitbake/lib/bb/parse/parse_py/__init__.py
+++ b/poky/bitbake/lib/bb/parse/parse_py/__init__.py
@@ -1,6 +1,4 @@
#!/usr/bin/env python
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
"""
BitBake Parsers
@@ -11,20 +9,10 @@
# Copyright (C) 2003, 2004 Chris Larson
# Copyright (C) 2003, 2004 Phil Blundell
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+# SPDX-License-Identifier: GPL-2.0-only
#
# Based on functions from the base bb module, Copyright 2003 Holger Schurig
+#
from __future__ import absolute_import
from . import ConfHandler
diff --git a/poky/bitbake/lib/bb/persist_data.py b/poky/bitbake/lib/bb/persist_data.py
index 0d44100..de8f87a 100644
--- a/poky/bitbake/lib/bb/persist_data.py
+++ b/poky/bitbake/lib/bb/persist_data.py
@@ -8,18 +8,8 @@
# Copyright (C) 2007 Richard Purdie
# Copyright (C) 2010 Chris Larson <chris_larson@mentor.com>
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
import collections
import logging
diff --git a/poky/bitbake/lib/bb/process.py b/poky/bitbake/lib/bb/process.py
index e69697c..2dc472a 100644
--- a/poky/bitbake/lib/bb/process.py
+++ b/poky/bitbake/lib/bb/process.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
+
import logging
import signal
import subprocess
diff --git a/poky/bitbake/lib/bb/progress.py b/poky/bitbake/lib/bb/progress.py
index f54d1c7..e9b72e2 100644
--- a/poky/bitbake/lib/bb/progress.py
+++ b/poky/bitbake/lib/bb/progress.py
@@ -4,18 +4,8 @@
# Copyright (C) 2016 Intel Corporation
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
import sys
import re
diff --git a/poky/bitbake/lib/bb/providers.py b/poky/bitbake/lib/bb/providers.py
index f496d84..f80963c 100644
--- a/poky/bitbake/lib/bb/providers.py
+++ b/poky/bitbake/lib/bb/providers.py
@@ -1,5 +1,3 @@
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
#
# Copyright (C) 2003, 2004 Chris Larson
# Copyright (C) 2003, 2004 Phil Blundell
@@ -8,18 +6,8 @@
# Copyright (C) 2005 ROAD GmbH
# Copyright (C) 2006 Richard Purdie
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
import re
import logging
diff --git a/poky/bitbake/lib/bb/remotedata.py b/poky/bitbake/lib/bb/remotedata.py
index 68ecffc..7391e1b 100644
--- a/poky/bitbake/lib/bb/remotedata.py
+++ b/poky/bitbake/lib/bb/remotedata.py
@@ -6,18 +6,8 @@
# Copyright (C) 2016 Intel Corporation
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
import bb.data
diff --git a/poky/bitbake/lib/bb/runqueue.py b/poky/bitbake/lib/bb/runqueue.py
index 329cda3..d573ed4 100644
--- a/poky/bitbake/lib/bb/runqueue.py
+++ b/poky/bitbake/lib/bb/runqueue.py
@@ -1,6 +1,4 @@
#!/usr/bin/env python
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
"""
BitBake 'RunQueue' implementation
@@ -9,18 +7,8 @@
# Copyright (C) 2006-2007 Richard Purdie
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
import copy
import os
@@ -1667,7 +1655,7 @@
recout = []
if len(hashfiles) == 2:
out2 = bb.siggen.compare_sigfiles(hashfiles[hash1], hashfiles[hash2], recursecb)
- recout.extend(list(' ' + l for l in out2))
+ recout.extend(list(' ' + l for l in out2))
else:
recout.append("Unable to find matching sigdata for %s with hashes %s or %s" % (key, hash1, hash2))
diff --git a/poky/bitbake/lib/bb/server/__init__.py b/poky/bitbake/lib/bb/server/__init__.py
index 5a3fba9..b6f7513 100644
--- a/poky/bitbake/lib/bb/server/__init__.py
+++ b/poky/bitbake/lib/bb/server/__init__.py
@@ -5,17 +5,5 @@
# Copyright (C) 2006 - 2008 Richard Purdie
# Copyright (C) 2013 Alexandru Damian
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-
-
diff --git a/poky/bitbake/lib/bb/server/process.py b/poky/bitbake/lib/bb/server/process.py
index 80a7875..f901fe5 100644
--- a/poky/bitbake/lib/bb/server/process.py
+++ b/poky/bitbake/lib/bb/server/process.py
@@ -3,18 +3,8 @@
#
# Copyright (C) 2010 Bob Foerster <robert@erafx.com>
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
"""
This module implements a multiprocessing.Process based server for bitbake.
diff --git a/poky/bitbake/lib/bb/server/xmlrpcclient.py b/poky/bitbake/lib/bb/server/xmlrpcclient.py
index 4661a9e..c054c3c 100644
--- a/poky/bitbake/lib/bb/server/xmlrpcclient.py
+++ b/poky/bitbake/lib/bb/server/xmlrpcclient.py
@@ -4,18 +4,8 @@
# Copyright (C) 2006 - 2007 Michael 'Mickey' Lauer
# Copyright (C) 2006 - 2008 Richard Purdie
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
import os
import sys
diff --git a/poky/bitbake/lib/bb/server/xmlrpcserver.py b/poky/bitbake/lib/bb/server/xmlrpcserver.py
index 875b128..54fa32f 100644
--- a/poky/bitbake/lib/bb/server/xmlrpcserver.py
+++ b/poky/bitbake/lib/bb/server/xmlrpcserver.py
@@ -4,18 +4,8 @@
# Copyright (C) 2006 - 2007 Michael 'Mickey' Lauer
# Copyright (C) 2006 - 2008 Richard Purdie
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
import os
import sys
diff --git a/poky/bitbake/lib/bb/siggen.py b/poky/bitbake/lib/bb/siggen.py
index 09c9c8a..e0a66e6 100644
--- a/poky/bitbake/lib/bb/siggen.py
+++ b/poky/bitbake/lib/bb/siggen.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
+
import hashlib
import logging
import os
@@ -119,6 +123,12 @@
k = fn + "." + task
if not ignore_mismatch and k in self.basehash and self.basehash[k] != basehash[k]:
bb.error("When reparsing %s, the basehash value changed from %s to %s. The metadata is not deterministic and this needs to be fixed." % (k, self.basehash[k], basehash[k]))
+ bb.error("The following commands may help:")
+ cmd = "$ bitbake %s -c%s" % (d.getVar('PN'), task)
+ # Make sure sigdata is dumped before run printdiff
+ bb.error("%s -Snone" % cmd)
+ bb.error("Then:")
+ bb.error("%s -Sprintdiff\n" % cmd)
self.basehash[k] = basehash[k]
self.taskdeps[fn] = taskdeps
@@ -633,6 +643,10 @@
a_taint = a_data.get('taint', None)
b_taint = b_data.get('taint', None)
if a_taint != b_taint:
+ if a_taint.startswith('nostamp:'):
+ a_taint = a_taint.replace('nostamp:', 'nostamp(uuid4):')
+ if b_taint.startswith('nostamp:'):
+ b_taint = b_taint.replace('nostamp:', 'nostamp(uuid4):')
output.append(color_format("{color_title}Taint (by forced/invalidated task) changed{color_default} from %s to %s") % (a_taint, b_taint))
return output
@@ -705,7 +719,11 @@
output.append("Hash for dependent task %s is %s" % (dep, a_data['runtaskhashes'][dep]))
if 'taint' in a_data:
- output.append("Tainted (by forced/invalidated task): %s" % a_data['taint'])
+ if a_data['taint'].startswith('nostamp:'):
+ msg = a_data['taint'].replace('nostamp:', 'nostamp(uuid4):')
+ else:
+ msg = a_data['taint']
+ output.append("Tainted (by forced/invalidated task): %s" % msg)
if 'task' in a_data:
computed_basehash = calc_basehash(a_data)
diff --git a/poky/bitbake/lib/bb/taskdata.py b/poky/bitbake/lib/bb/taskdata.py
index 94e822c..c7de3db 100644
--- a/poky/bitbake/lib/bb/taskdata.py
+++ b/poky/bitbake/lib/bb/taskdata.py
@@ -1,6 +1,4 @@
#!/usr/bin/env python
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
"""
BitBake 'TaskData' implementation
@@ -10,18 +8,8 @@
# Copyright (C) 2006 Richard Purdie
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
import logging
import re
diff --git a/poky/bitbake/lib/bb/tests/codeparser.py b/poky/bitbake/lib/bb/tests/codeparser.py
index 3fd76a8..826a2d2 100644
--- a/poky/bitbake/lib/bb/tests/codeparser.py
+++ b/poky/bitbake/lib/bb/tests/codeparser.py
@@ -1,23 +1,10 @@
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
#
# BitBake Test for codeparser.py
#
# Copyright (C) 2010 Chris Larson
# Copyright (C) 2012 Richard Purdie
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+# SPDX-License-Identifier: GPL-2.0-only
#
import unittest
diff --git a/poky/bitbake/lib/bb/tests/cooker.py b/poky/bitbake/lib/bb/tests/cooker.py
index 2b44236..090916e 100644
--- a/poky/bitbake/lib/bb/tests/cooker.py
+++ b/poky/bitbake/lib/bb/tests/cooker.py
@@ -1,20 +1,7 @@
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
#
# BitBake Tests for cooker.py
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+# SPDX-License-Identifier: GPL-2.0-only
#
import unittest
diff --git a/poky/bitbake/lib/bb/tests/cow.py b/poky/bitbake/lib/bb/tests/cow.py
index d149d84..b4af4bb 100644
--- a/poky/bitbake/lib/bb/tests/cow.py
+++ b/poky/bitbake/lib/bb/tests/cow.py
@@ -1,23 +1,10 @@
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
#
# BitBake Tests for Copy-on-Write (cow.py)
#
+# SPDX-License-Identifier: GPL-2.0-only
+#
# Copyright 2006 Holger Freyther <freyther@handhelds.org>
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-#
import unittest
import os
diff --git a/poky/bitbake/lib/bb/tests/data.py b/poky/bitbake/lib/bb/tests/data.py
index 3c511f2..3cf5abe 100644
--- a/poky/bitbake/lib/bb/tests/data.py
+++ b/poky/bitbake/lib/bb/tests/data.py
@@ -1,23 +1,10 @@
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
#
# BitBake Tests for the Data Store (data.py/data_smart.py)
#
# Copyright (C) 2010 Chris Larson
# Copyright (C) 2012 Richard Purdie
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+# SPDX-License-Identifier: GPL-2.0-only
#
import unittest
diff --git a/poky/bitbake/lib/bb/tests/event.py b/poky/bitbake/lib/bb/tests/event.py
index d3a5f62..b6e40c6 100644
--- a/poky/bitbake/lib/bb/tests/event.py
+++ b/poky/bitbake/lib/bb/tests/event.py
@@ -1,22 +1,9 @@
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
#
# BitBake Tests for the Event implementation (event.py)
#
# Copyright (C) 2017 Intel Corporation
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+# SPDX-License-Identifier: GPL-2.0-only
#
import unittest
diff --git a/poky/bitbake/lib/bb/tests/fetch.py b/poky/bitbake/lib/bb/tests/fetch.py
index 429998b..97656df 100644
--- a/poky/bitbake/lib/bb/tests/fetch.py
+++ b/poky/bitbake/lib/bb/tests/fetch.py
@@ -1,22 +1,9 @@
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
#
# BitBake Tests for the Fetcher (fetch2/)
#
# Copyright (C) 2012 Richard Purdie
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+# SPDX-License-Identifier: GPL-2.0-only
#
import unittest
diff --git a/poky/bitbake/lib/bb/tests/parse.py b/poky/bitbake/lib/bb/tests/parse.py
index 1bc4740..9afd1b2 100644
--- a/poky/bitbake/lib/bb/tests/parse.py
+++ b/poky/bitbake/lib/bb/tests/parse.py
@@ -1,22 +1,9 @@
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
#
# BitBake Test for lib/bb/parse/
#
# Copyright (C) 2015 Richard Purdie
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+# SPDX-License-Identifier: GPL-2.0-only
#
import unittest
@@ -187,3 +174,21 @@
self.assertEqual(d1.getVar("VAR_var"), "B")
self.assertEqual(d2.getVar("VAR_var"), None)
+ addtask_deltask = """
+addtask do_patch after do_foo after do_unpack before do_configure before do_compile
+addtask do_fetch do_patch
+
+deltask do_fetch do_patch
+"""
+ def test_parse_addtask_deltask(self):
+ import sys
+ f = self.parsehelper(self.addtask_deltask)
+ d = bb.parse.handle(f.name, self.d)['']
+
+ stdout = sys.stdout.getvalue()
+ self.assertTrue("addtask contained multiple 'before' keywords" in stdout)
+ self.assertTrue("addtask contained multiple 'after' keywords" in stdout)
+ self.assertTrue('addtask ignored: " do_patch"' in stdout)
+ self.assertTrue('deltask ignored: " do_patch"' in stdout)
+ #self.assertTrue('dependent task do_foo for do_patch does not exist' in stdout)
+
diff --git a/poky/bitbake/lib/bb/tests/persist_data.py b/poky/bitbake/lib/bb/tests/persist_data.py
index 812bcbd..f641b5a 100644
--- a/poky/bitbake/lib/bb/tests/persist_data.py
+++ b/poky/bitbake/lib/bb/tests/persist_data.py
@@ -1,22 +1,9 @@
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
#
# BitBake Test for lib/bb/persist_data/
#
# Copyright (C) 2018 Garmin Ltd.
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+# SPDX-License-Identifier: GPL-2.0-only
#
import unittest
diff --git a/poky/bitbake/lib/bb/tests/utils.py b/poky/bitbake/lib/bb/tests/utils.py
index f1cd83a..4d78828 100644
--- a/poky/bitbake/lib/bb/tests/utils.py
+++ b/poky/bitbake/lib/bb/tests/utils.py
@@ -1,22 +1,9 @@
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
#
# BitBake Tests for utils.py
#
# Copyright (C) 2012 Richard Purdie
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+# SPDX-License-Identifier: GPL-2.0-only
#
import unittest
diff --git a/poky/bitbake/lib/bb/tinfoil.py b/poky/bitbake/lib/bb/tinfoil.py
index 368264f..0a1b913 100644
--- a/poky/bitbake/lib/bb/tinfoil.py
+++ b/poky/bitbake/lib/bb/tinfoil.py
@@ -4,18 +4,8 @@
# Copyright (C) 2011 Mentor Graphics Corporation
# Copyright (C) 2006-2012 Richard Purdie
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
import logging
import os
diff --git a/poky/bitbake/lib/bb/ui/__init__.py b/poky/bitbake/lib/bb/ui/__init__.py
index a4805ed..4b7ac36 100644
--- a/poky/bitbake/lib/bb/ui/__init__.py
+++ b/poky/bitbake/lib/bb/ui/__init__.py
@@ -3,15 +3,5 @@
#
# Copyright (C) 2006-2007 Richard Purdie
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
diff --git a/poky/bitbake/lib/bb/ui/buildinfohelper.py b/poky/bitbake/lib/bb/ui/buildinfohelper.py
index 31323d2..f2151c2 100644
--- a/poky/bitbake/lib/bb/ui/buildinfohelper.py
+++ b/poky/bitbake/lib/bb/ui/buildinfohelper.py
@@ -3,18 +3,8 @@
#
# Copyright (C) 2013 Intel Corporation
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
import sys
import bb
diff --git a/poky/bitbake/lib/bb/ui/knotty.py b/poky/bitbake/lib/bb/ui/knotty.py
index fa88e6c..3d9e203 100644
--- a/poky/bitbake/lib/bb/ui/knotty.py
+++ b/poky/bitbake/lib/bb/ui/knotty.py
@@ -5,18 +5,8 @@
#
# Copyright (C) 2006-2012 Richard Purdie
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
from __future__ import division
@@ -222,6 +212,23 @@
sys.stdout.flush()
self.footer_present = False
+ def elapsed(self, sec):
+ hrs = int(sec / 3600.0)
+ sec -= hrs * 3600
+ min = int(sec / 60.0)
+ sec -= min * 60
+ if hrs > 0:
+ return "%dh%dm%ds" % (hrs, min, sec)
+ elif min > 0:
+ return "%dm%ds" % (min, sec)
+ else:
+ return "%ds" % (sec)
+
+ def keepAlive(self, t):
+ if not self.cuu:
+ print("Bitbake still alive (%ds)" % t)
+ sys.stdout.flush()
+
def updateFooter(self):
if not self.cuu:
return
@@ -258,7 +265,7 @@
else:
start_time = activetasks[t].get("starttime", None)
if start_time:
- tasks.append("%s - %ds (pid %s)" % (activetasks[t]["title"], currenttime - start_time, t))
+ tasks.append("%s - %s (pid %s)" % (activetasks[t]["title"], self.elapsed(currenttime - start_time), t))
else:
tasks.append("%s (pid %s)" % (activetasks[t]["title"], t))
@@ -455,11 +462,17 @@
warnings = 0
taskfailures = []
+ printinterval = 5000
+ lastprint = time.time()
+
termfilter = tf(main, helper, console, errconsole, format, params.options.quiet)
atexit.register(termfilter.finish)
while True:
try:
+ if (lastprint + printinterval) <= time.time():
+ termfilter.keepAlive(printinterval)
+ printinterval += 5000
event = eventHandler.waitEvent(0)
if event is None:
if main.shutdown > 1:
@@ -488,6 +501,8 @@
continue
if isinstance(event, logging.LogRecord):
+ lastprint = time.time()
+ printinterval = 5000
if event.levelno >= format.ERROR:
errors = errors + 1
return_value = 1
diff --git a/poky/bitbake/lib/bb/ui/ncurses.py b/poky/bitbake/lib/bb/ui/ncurses.py
index 8690c52..c422732 100644
--- a/poky/bitbake/lib/bb/ui/ncurses.py
+++ b/poky/bitbake/lib/bb/ui/ncurses.py
@@ -6,18 +6,8 @@
# Copyright (C) 2006 Michael 'Mickey' Lauer
# Copyright (C) 2006-2007 Richard Purdie
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
"""
We have the following windows:
diff --git a/poky/bitbake/lib/bb/ui/taskexp.py b/poky/bitbake/lib/bb/ui/taskexp.py
index 8305d70..50a943c 100644
--- a/poky/bitbake/lib/bb/ui/taskexp.py
+++ b/poky/bitbake/lib/bb/ui/taskexp.py
@@ -4,18 +4,8 @@
# Copyright (C) 2007 Ross Burton
# Copyright (C) 2007 - 2008 Richard Purdie
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
import sys
import gi
diff --git a/poky/bitbake/lib/bb/ui/toasterui.py b/poky/bitbake/lib/bb/ui/toasterui.py
index 88cec37..51892c9 100644
--- a/poky/bitbake/lib/bb/ui/toasterui.py
+++ b/poky/bitbake/lib/bb/ui/toasterui.py
@@ -7,18 +7,8 @@
# Copyright (C) 2006-2012 Richard Purdie
# Copyright (C) 2013 Intel Corporation
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
from __future__ import division
import time
diff --git a/poky/bitbake/lib/bb/ui/uievent.py b/poky/bitbake/lib/bb/ui/uievent.py
index 9542b91..fedb050 100644
--- a/poky/bitbake/lib/bb/ui/uievent.py
+++ b/poky/bitbake/lib/bb/ui/uievent.py
@@ -1,22 +1,9 @@
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
#
# Copyright (C) 2006 - 2007 Michael 'Mickey' Lauer
# Copyright (C) 2006 - 2007 Richard Purdie
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-
"""
Use this class to fork off a thread to recieve event callbacks from the bitbake
diff --git a/poky/bitbake/lib/bb/ui/uihelper.py b/poky/bitbake/lib/bb/ui/uihelper.py
index 963c1ea..db7f0ca 100644
--- a/poky/bitbake/lib/bb/ui/uihelper.py
+++ b/poky/bitbake/lib/bb/ui/uihelper.py
@@ -1,21 +1,9 @@
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
#
# Copyright (C) 2006 - 2007 Michael 'Mickey' Lauer
# Copyright (C) 2006 - 2007 Richard Purdie
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
import bb.build
import time
diff --git a/poky/bitbake/lib/bb/utils.py b/poky/bitbake/lib/bb/utils.py
index d186b1f..ed19825 100644
--- a/poky/bitbake/lib/bb/utils.py
+++ b/poky/bitbake/lib/bb/utils.py
@@ -1,23 +1,11 @@
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
"""
BitBake Utility Functions
"""
# Copyright (C) 2004 Michael Lauer
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
import re, fcntl, os, string, stat, shutil, time
import sys
@@ -734,7 +722,7 @@
try:
os.makedirs(directory)
except OSError as e:
- if e.errno != errno.EEXIST:
+ if e.errno != errno.EEXIST or not os.path.isdir(directory):
raise e
def movefile(src, dest, newmtime = None, sstat = None):
diff --git a/poky/bitbake/lib/bblayers/__init__.py b/poky/bitbake/lib/bblayers/__init__.py
index 3ad9513..4e7c09d 100644
--- a/poky/bitbake/lib/bblayers/__init__.py
+++ b/poky/bitbake/lib/bblayers/__init__.py
@@ -1,2 +1,6 @@
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
+
from pkgutil import extend_path
__path__ = extend_path(__path__, __name__)
diff --git a/poky/bitbake/lib/bblayers/action.py b/poky/bitbake/lib/bblayers/action.py
index a3f658f..d6459d6 100644
--- a/poky/bitbake/lib/bblayers/action.py
+++ b/poky/bitbake/lib/bblayers/action.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
+
import fnmatch
import logging
import os
diff --git a/poky/bitbake/lib/bblayers/common.py b/poky/bitbake/lib/bblayers/common.py
index 98515ce..c5657d3 100644
--- a/poky/bitbake/lib/bblayers/common.py
+++ b/poky/bitbake/lib/bblayers/common.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
+
import argparse
import logging
import os
diff --git a/poky/bitbake/lib/bblayers/layerindex.py b/poky/bitbake/lib/bblayers/layerindex.py
index b2ff226..57cd902 100644
--- a/poky/bitbake/lib/bblayers/layerindex.py
+++ b/poky/bitbake/lib/bblayers/layerindex.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
+
import layerindexlib
import argparse
diff --git a/poky/bitbake/lib/bblayers/query.py b/poky/bitbake/lib/bblayers/query.py
index 9294dfa..993589d 100644
--- a/poky/bitbake/lib/bblayers/query.py
+++ b/poky/bitbake/lib/bblayers/query.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
+
import collections
import fnmatch
import logging
diff --git a/poky/bitbake/lib/hashserv/__init__.py b/poky/bitbake/lib/hashserv/__init__.py
index 46bca7c..fdc9ced 100644
--- a/poky/bitbake/lib/hashserv/__init__.py
+++ b/poky/bitbake/lib/hashserv/__init__.py
@@ -1,17 +1,7 @@
# Copyright (C) 2018 Garmin Ltd.
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
from http.server import BaseHTTPRequestHandler, HTTPServer
import contextlib
diff --git a/poky/bitbake/lib/hashserv/tests.py b/poky/bitbake/lib/hashserv/tests.py
index 806b54c..8300a25 100644
--- a/poky/bitbake/lib/hashserv/tests.py
+++ b/poky/bitbake/lib/hashserv/tests.py
@@ -2,18 +2,8 @@
#
# Copyright (C) 2018 Garmin Ltd.
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
import unittest
import threading
diff --git a/poky/bitbake/lib/layerindexlib/__init__.py b/poky/bitbake/lib/layerindexlib/__init__.py
index cb79cb3..d231cf6 100644
--- a/poky/bitbake/lib/layerindexlib/__init__.py
+++ b/poky/bitbake/lib/layerindexlib/__init__.py
@@ -1,17 +1,7 @@
# Copyright (C) 2016-2018 Wind River Systems, Inc.
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-# See the GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
import datetime
diff --git a/poky/bitbake/lib/layerindexlib/cooker.py b/poky/bitbake/lib/layerindexlib/cooker.py
index 848f0e2..604a961 100644
--- a/poky/bitbake/lib/layerindexlib/cooker.py
+++ b/poky/bitbake/lib/layerindexlib/cooker.py
@@ -1,17 +1,7 @@
# Copyright (C) 2016-2018 Wind River Systems, Inc.
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-# See the GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
import logging
import json
diff --git a/poky/bitbake/lib/layerindexlib/plugin.py b/poky/bitbake/lib/layerindexlib/plugin.py
index 92a2e97..7015a1a 100644
--- a/poky/bitbake/lib/layerindexlib/plugin.py
+++ b/poky/bitbake/lib/layerindexlib/plugin.py
@@ -1,18 +1,7 @@
# Copyright (C) 2016-2018 Wind River Systems, Inc.
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-# See the GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-
# The file contains:
# LayerIndex exceptions
# Plugin base class
diff --git a/poky/bitbake/lib/layerindexlib/restapi.py b/poky/bitbake/lib/layerindexlib/restapi.py
index d08eb20..21fd144 100644
--- a/poky/bitbake/lib/layerindexlib/restapi.py
+++ b/poky/bitbake/lib/layerindexlib/restapi.py
@@ -1,17 +1,7 @@
# Copyright (C) 2016-2018 Wind River Systems, Inc.
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-# See the GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
import logging
import json
diff --git a/poky/bitbake/lib/layerindexlib/tests/common.py b/poky/bitbake/lib/layerindexlib/tests/common.py
index 22a5458..077382f 100644
--- a/poky/bitbake/lib/layerindexlib/tests/common.py
+++ b/poky/bitbake/lib/layerindexlib/tests/common.py
@@ -1,17 +1,7 @@
# Copyright (C) 2017-2018 Wind River Systems, Inc.
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-# See the GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
import unittest
import tempfile
diff --git a/poky/bitbake/lib/layerindexlib/tests/cooker.py b/poky/bitbake/lib/layerindexlib/tests/cooker.py
index fdbf091..1fa102e 100644
--- a/poky/bitbake/lib/layerindexlib/tests/cooker.py
+++ b/poky/bitbake/lib/layerindexlib/tests/cooker.py
@@ -1,17 +1,7 @@
# Copyright (C) 2018 Wind River Systems, Inc.
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-# See the GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
import unittest
import tempfile
diff --git a/poky/bitbake/lib/layerindexlib/tests/layerindexobj.py b/poky/bitbake/lib/layerindexlib/tests/layerindexobj.py
index e2fbb95..0c5ec88 100644
--- a/poky/bitbake/lib/layerindexlib/tests/layerindexobj.py
+++ b/poky/bitbake/lib/layerindexlib/tests/layerindexobj.py
@@ -1,17 +1,7 @@
# Copyright (C) 2017-2018 Wind River Systems, Inc.
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-# See the GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
import unittest
import tempfile
diff --git a/poky/bitbake/lib/layerindexlib/tests/restapi.py b/poky/bitbake/lib/layerindexlib/tests/restapi.py
index 5876695..6d8dc00 100644
--- a/poky/bitbake/lib/layerindexlib/tests/restapi.py
+++ b/poky/bitbake/lib/layerindexlib/tests/restapi.py
@@ -1,17 +1,7 @@
# Copyright (C) 2017-2018 Wind River Systems, Inc.
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-# See the GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
import unittest
import tempfile
diff --git a/poky/bitbake/lib/progressbar/__init__.py b/poky/bitbake/lib/progressbar/__init__.py
index fbab744..c545a62 100644
--- a/poky/bitbake/lib/progressbar/__init__.py
+++ b/poky/bitbake/lib/progressbar/__init__.py
@@ -4,6 +4,8 @@
# progressbar - Text progress bar library for Python.
# Copyright (c) 2005 Nilton Volpato
#
+# SPDX-License-Identifier: LGPL-2.1-or-later OR BSD-3-Clause-Clear
+#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
diff --git a/poky/bitbake/lib/progressbar/compat.py b/poky/bitbake/lib/progressbar/compat.py
index a39f4a1..9804e0b 100644
--- a/poky/bitbake/lib/progressbar/compat.py
+++ b/poky/bitbake/lib/progressbar/compat.py
@@ -3,6 +3,8 @@
# progressbar - Text progress bar library for Python.
# Copyright (c) 2005 Nilton Volpato
#
+# SPDX-License-Identifier: LGPL-2.1-or-later OR BSD-3-Clause-Clear
+#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
diff --git a/poky/bitbake/lib/progressbar/progressbar.py b/poky/bitbake/lib/progressbar/progressbar.py
index 2873ad6..e2b6ba1 100644
--- a/poky/bitbake/lib/progressbar/progressbar.py
+++ b/poky/bitbake/lib/progressbar/progressbar.py
@@ -5,6 +5,8 @@
#
# (With some small changes after importing into BitBake)
#
+# SPDX-License-Identifier: LGPL-2.1-or-later OR BSD-3-Clause-Clear
+#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
diff --git a/poky/bitbake/lib/progressbar/widgets.py b/poky/bitbake/lib/progressbar/widgets.py
index 77285ca..0772aa5 100644
--- a/poky/bitbake/lib/progressbar/widgets.py
+++ b/poky/bitbake/lib/progressbar/widgets.py
@@ -3,6 +3,8 @@
# progressbar - Text progress bar library for Python.
# Copyright (c) 2005 Nilton Volpato
#
+# SPDX-License-Identifier: LGPL-2.1-or-later OR BSD-3-Clause-Clear
+#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
diff --git a/poky/bitbake/lib/prserv/__init__.py b/poky/bitbake/lib/prserv/__init__.py
index c3cb73a..9961040 100644
--- a/poky/bitbake/lib/prserv/__init__.py
+++ b/poky/bitbake/lib/prserv/__init__.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
+
__version__ = "1.0.0"
import os, time
diff --git a/poky/bitbake/lib/prserv/db.py b/poky/bitbake/lib/prserv/db.py
index 495d09f..d6188a6 100644
--- a/poky/bitbake/lib/prserv/db.py
+++ b/poky/bitbake/lib/prserv/db.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
+
import logging
import os.path
import errno
diff --git a/poky/bitbake/lib/prserv/serv.py b/poky/bitbake/lib/prserv/serv.py
index 6a99728..be3acec 100644
--- a/poky/bitbake/lib/prserv/serv.py
+++ b/poky/bitbake/lib/prserv/serv.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
+
import os,sys,logging
import signal, time
from xmlrpc.server import SimpleXMLRPCServer, SimpleXMLRPCRequestHandler
diff --git a/poky/bitbake/lib/pyinotify.py b/poky/bitbake/lib/pyinotify.py
index 4eb03b0..9dcfd0d 100644
--- a/poky/bitbake/lib/pyinotify.py
+++ b/poky/bitbake/lib/pyinotify.py
@@ -3,23 +3,8 @@
# pyinotify.py - python interface to inotify
# Copyright (c) 2005-2015 Sebastien Martini <seb@dbzteam.org>
#
-# Permission is hereby granted, free of charge, to any person obtaining a copy
-# of this software and associated documentation files (the "Software"), to deal
-# in the Software without restriction, including without limitation the rights
-# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-# copies of the Software, and to permit persons to whom the Software is
-# furnished to do so, subject to the following conditions:
+# SPDX-License-Identifier: MIT
#
-# The above copyright notice and this permission notice shall be included in
-# all copies or substantial portions of the Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-# THE SOFTWARE.
"""
pyinotify
diff --git a/poky/bitbake/lib/toaster/bldcollector/admin.py b/poky/bitbake/lib/toaster/bldcollector/admin.py
index 1f2e07f..feaa888 100644
--- a/poky/bitbake/lib/toaster/bldcollector/admin.py
+++ b/poky/bitbake/lib/toaster/bldcollector/admin.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
+
from django.contrib import admin
from orm.models import BitbakeVersion, Release, ToasterSetting, Layer_Version
from django import forms
diff --git a/poky/bitbake/lib/toaster/bldcollector/urls.py b/poky/bitbake/lib/toaster/bldcollector/urls.py
index 888175d..8eb1e34 100644
--- a/poky/bitbake/lib/toaster/bldcollector/urls.py
+++ b/poky/bitbake/lib/toaster/bldcollector/urls.py
@@ -3,19 +3,8 @@
#
# Copyright (C) 2014-2017 Intel Corporation
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-
from django.conf.urls import include, url
diff --git a/poky/bitbake/lib/toaster/bldcollector/views.py b/poky/bitbake/lib/toaster/bldcollector/views.py
index f32fa4d..c708b41 100644
--- a/poky/bitbake/lib/toaster/bldcollector/views.py
+++ b/poky/bitbake/lib/toaster/bldcollector/views.py
@@ -3,18 +3,8 @@
#
# Copyright (C) 2014 Intel Corporation
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
from django.views.decorators.cache import cache_control
from django.core.urlresolvers import reverse
diff --git a/poky/bitbake/lib/toaster/bldcontrol/admin.py b/poky/bitbake/lib/toaster/bldcontrol/admin.py
index fcbe5f5..e85c30e 100644
--- a/poky/bitbake/lib/toaster/bldcontrol/admin.py
+++ b/poky/bitbake/lib/toaster/bldcontrol/admin.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
+
from django.contrib import admin
from django.contrib.admin.filters import RelatedFieldListFilter
from .models import BuildEnvironment
diff --git a/poky/bitbake/lib/toaster/bldcontrol/bbcontroller.py b/poky/bitbake/lib/toaster/bldcontrol/bbcontroller.py
index 5195600..301df18 100644
--- a/poky/bitbake/lib/toaster/bldcontrol/bbcontroller.py
+++ b/poky/bitbake/lib/toaster/bldcontrol/bbcontroller.py
@@ -1,24 +1,10 @@
#
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
-#
# BitBake Toaster Implementation
#
# Copyright (C) 2014 Intel Corporation
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-
import os
import sys
diff --git a/poky/bitbake/lib/toaster/bldcontrol/localhostbecontroller.py b/poky/bitbake/lib/toaster/bldcontrol/localhostbecontroller.py
index 9490635..39ea736 100644
--- a/poky/bitbake/lib/toaster/bldcontrol/localhostbecontroller.py
+++ b/poky/bitbake/lib/toaster/bldcontrol/localhostbecontroller.py
@@ -1,24 +1,10 @@
#
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
-#
# BitBake Toaster Implementation
#
# Copyright (C) 2014 Intel Corporation
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-
import os
import sys
diff --git a/poky/bitbake/lib/toaster/bldcontrol/management/commands/checksettings.py b/poky/bitbake/lib/toaster/bldcontrol/management/commands/checksettings.py
index 14298d9..fe2c4dc 100644
--- a/poky/bitbake/lib/toaster/bldcontrol/management/commands/checksettings.py
+++ b/poky/bitbake/lib/toaster/bldcontrol/management/commands/checksettings.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
+
from django.core.management.base import BaseCommand, CommandError
from django.db import transaction
diff --git a/poky/bitbake/lib/toaster/bldcontrol/management/commands/runbuilds.py b/poky/bitbake/lib/toaster/bldcontrol/management/commands/runbuilds.py
index 6a55dd4..50ec409 100644
--- a/poky/bitbake/lib/toaster/bldcontrol/management/commands/runbuilds.py
+++ b/poky/bitbake/lib/toaster/bldcontrol/management/commands/runbuilds.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
+
from django.core.management.base import BaseCommand
from django.db import transaction
from django.db.models import Q
diff --git a/poky/bitbake/lib/toaster/bldcontrol/models.py b/poky/bitbake/lib/toaster/bldcontrol/models.py
index 409614b..bcffcf5 100644
--- a/poky/bitbake/lib/toaster/bldcontrol/models.py
+++ b/poky/bitbake/lib/toaster/bldcontrol/models.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
+
from __future__ import unicode_literals
from django.db import models
from django.core.validators import MaxValueValidator, MinValueValidator
diff --git a/poky/bitbake/lib/toaster/bldcontrol/views.py b/poky/bitbake/lib/toaster/bldcontrol/views.py
index 60f00ef..286d88b 100644
--- a/poky/bitbake/lib/toaster/bldcontrol/views.py
+++ b/poky/bitbake/lib/toaster/bldcontrol/views.py
@@ -1 +1,5 @@
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
+
# Create your views here.
diff --git a/poky/bitbake/lib/toaster/manage.py b/poky/bitbake/lib/toaster/manage.py
index 0c7ea50..ae32619 100755
--- a/poky/bitbake/lib/toaster/manage.py
+++ b/poky/bitbake/lib/toaster/manage.py
@@ -1,4 +1,8 @@
#!/usr/bin/env python3
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
+
import os
import sys
diff --git a/poky/bitbake/lib/toaster/orm/fixtures/oe-core.xml b/poky/bitbake/lib/toaster/orm/fixtures/oe-core.xml
index a37c664..bd9c326 100644
--- a/poky/bitbake/lib/toaster/orm/fixtures/oe-core.xml
+++ b/poky/bitbake/lib/toaster/orm/fixtures/oe-core.xml
@@ -8,9 +8,9 @@
<!-- Bitbake versions which correspond to the metadata release -->
<object model="orm.bitbakeversion" pk="1">
- <field type="CharField" name="name">sumo</field>
+ <field type="CharField" name="name">warrior</field>
<field type="CharField" name="giturl">git://git.openembedded.org/bitbake</field>
- <field type="CharField" name="branch">1.38</field>
+ <field type="CharField" name="branch">1.42</field>
</object>
<object model="orm.bitbakeversion" pk="2">
<field type="CharField" name="name">HEAD</field>
@@ -30,11 +30,11 @@
<!-- Releases available -->
<object model="orm.release" pk="1">
- <field type="CharField" name="name">sumo</field>
- <field type="CharField" name="description">Openembedded Sumo</field>
+ <field type="CharField" name="name">warrior</field>
+ <field type="CharField" name="description">Openembedded Warrior</field>
<field rel="ManyToOneRel" to="orm.bitbakeversion" name="bitbake_version">1</field>
- <field type="CharField" name="branch_name">sumo</field>
- <field type="TextField" name="helptext">Toaster will run your builds using the tip of the <a href=\"http://cgit.openembedded.org/openembedded-core/log/?h=sumo\">OpenEmbedded Sumo</a> branch.</field>
+ <field type="CharField" name="branch_name">warrior</field>
+ <field type="TextField" name="helptext">Toaster will run your builds using the tip of the <a href=\"http://cgit.openembedded.org/openembedded-core/log/?h=warrior\">OpenEmbedded Warrior</a> branch.</field>
</object>
<object model="orm.release" pk="2">
<field type="CharField" name="name">local</field>
diff --git a/poky/bitbake/lib/toaster/orm/fixtures/poky.xml b/poky/bitbake/lib/toaster/orm/fixtures/poky.xml
index 482efaf..4162e4f 100644
--- a/poky/bitbake/lib/toaster/orm/fixtures/poky.xml
+++ b/poky/bitbake/lib/toaster/orm/fixtures/poky.xml
@@ -8,9 +8,9 @@
<!-- Bitbake versions which correspond to the metadata release -->
<object model="orm.bitbakeversion" pk="1">
- <field type="CharField" name="name">sumo</field>
+ <field type="CharField" name="name">warrior</field>
<field type="CharField" name="giturl">git://git.yoctoproject.org/poky</field>
- <field type="CharField" name="branch">sumo</field>
+ <field type="CharField" name="branch">warrior</field>
<field type="CharField" name="dirpath">bitbake</field>
</object>
<object model="orm.bitbakeversion" pk="2">
@@ -35,11 +35,11 @@
<!-- Releases available -->
<object model="orm.release" pk="1">
- <field type="CharField" name="name">sumo</field>
- <field type="CharField" name="description">Yocto Project 2.5 "Sumo"</field>
+ <field type="CharField" name="name">warrior</field>
+ <field type="CharField" name="description">Yocto Project 2.7 "Warrior"</field>
<field rel="ManyToOneRel" to="orm.bitbakeversion" name="bitbake_version">1</field>
- <field type="CharField" name="branch_name">sumo</field>
- <field type="TextField" name="helptext">Toaster will run your builds using the tip of the <a href="http://git.yoctoproject.org/cgit/cgit.cgi/poky/log/?h=sumo">Yocto Project Sumo branch</a>.</field>
+ <field type="CharField" name="branch_name">warrior</field>
+ <field type="TextField" name="helptext">Toaster will run your builds using the tip of the <a href="http://git.yoctoproject.org/cgit/cgit.cgi/poky/log/?h=warrior">Yocto Project Warrior branch</a>.</field>
</object>
<object model="orm.release" pk="2">
<field type="CharField" name="name">local</field>
@@ -130,7 +130,7 @@
<field rel="ManyToOneRel" to="orm.layer" name="layer">1</field>
<field type="IntegerField" name="layer_source">0</field>
<field rel="ManyToOneRel" to="orm.release" name="release">1</field>
- <field type="CharField" name="branch">sumo</field>
+ <field type="CharField" name="branch">warrior</field>
<field type="CharField" name="dirpath">meta</field>
</object>
<object model="orm.layer_version" pk="2">
@@ -168,7 +168,7 @@
<field rel="ManyToOneRel" to="orm.layer" name="layer">2</field>
<field type="IntegerField" name="layer_source">0</field>
<field rel="ManyToOneRel" to="orm.release" name="release">1</field>
- <field type="CharField" name="branch">sumo</field>
+ <field type="CharField" name="branch">warrior</field>
<field type="CharField" name="dirpath">meta-poky</field>
</object>
<object model="orm.layer_version" pk="6">
@@ -206,7 +206,7 @@
<field rel="ManyToOneRel" to="orm.layer" name="layer">3</field>
<field type="IntegerField" name="layer_source">0</field>
<field rel="ManyToOneRel" to="orm.release" name="release">1</field>
- <field type="CharField" name="branch">sumo</field>
+ <field type="CharField" name="branch">warrior</field>
<field type="CharField" name="dirpath">meta-yocto-bsp</field>
</object>
<object model="orm.layer_version" pk="10">
diff --git a/poky/bitbake/lib/toaster/orm/management/commands/lsupdates.py b/poky/bitbake/lib/toaster/orm/management/commands/lsupdates.py
index 66114ff..5b5abbb 100644
--- a/poky/bitbake/lib/toaster/orm/management/commands/lsupdates.py
+++ b/poky/bitbake/lib/toaster/orm/management/commands/lsupdates.py
@@ -1,23 +1,10 @@
#
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
-#
# BitBake Toaster Implementation
#
# Copyright (C) 2016-2017 Intel Corporation
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
from django.core.management.base import BaseCommand
diff --git a/poky/bitbake/lib/toaster/orm/models.py b/poky/bitbake/lib/toaster/orm/models.py
index 7720290..41a9f81 100644
--- a/poky/bitbake/lib/toaster/orm/models.py
+++ b/poky/bitbake/lib/toaster/orm/models.py
@@ -1,23 +1,10 @@
#
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
-#
# BitBake Toaster Implementation
#
# Copyright (C) 2013 Intel Corporation
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
from __future__ import unicode_literals
diff --git a/poky/bitbake/lib/toaster/tests/browser/selenium_helpers.py b/poky/bitbake/lib/toaster/tests/browser/selenium_helpers.py
index 08711e4..6d9bb80 100644
--- a/poky/bitbake/lib/toaster/tests/browser/selenium_helpers.py
+++ b/poky/bitbake/lib/toaster/tests/browser/selenium_helpers.py
@@ -1,23 +1,10 @@
#! /usr/bin/env python
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
#
# BitBake Toaster Implementation
#
# Copyright (C) 2013-2016 Intel Corporation
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+# SPDX-License-Identifier: GPL-2.0-only
#
# The Wait class and some of SeleniumDriverHelper and SeleniumTestCase are
# modified from Patchwork, released under the same licence terms as Toaster:
diff --git a/poky/bitbake/lib/toaster/tests/browser/selenium_helpers_base.py b/poky/bitbake/lib/toaster/tests/browser/selenium_helpers_base.py
index 156d639..8417aa3 100644
--- a/poky/bitbake/lib/toaster/tests/browser/selenium_helpers_base.py
+++ b/poky/bitbake/lib/toaster/tests/browser/selenium_helpers_base.py
@@ -1,23 +1,10 @@
#! /usr/bin/env python
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
#
# BitBake Toaster Implementation
#
# Copyright (C) 2013-2016 Intel Corporation
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+# SPDX-License-Identifier: GPL-2.0-only
#
# The Wait class and some of SeleniumDriverHelper and SeleniumTestCase are
# modified from Patchwork, released under the same licence terms as Toaster:
diff --git a/poky/bitbake/lib/toaster/tests/browser/test_all_builds_page.py b/poky/bitbake/lib/toaster/tests/browser/test_all_builds_page.py
index b86f29b..f402161 100644
--- a/poky/bitbake/lib/toaster/tests/browser/test_all_builds_page.py
+++ b/poky/bitbake/lib/toaster/tests/browser/test_all_builds_page.py
@@ -1,23 +1,11 @@
#! /usr/bin/env python
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
#
# BitBake Toaster Implementation
#
# Copyright (C) 2013-2016 Intel Corporation
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
import re
diff --git a/poky/bitbake/lib/toaster/tests/browser/test_all_projects_page.py b/poky/bitbake/lib/toaster/tests/browser/test_all_projects_page.py
index 44da640..f86d19d 100644
--- a/poky/bitbake/lib/toaster/tests/browser/test_all_projects_page.py
+++ b/poky/bitbake/lib/toaster/tests/browser/test_all_projects_page.py
@@ -1,23 +1,11 @@
#! /usr/bin/env python
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
#
# BitBake Toaster Implementation
#
# Copyright (C) 2013-2016 Intel Corporation
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
import re
diff --git a/poky/bitbake/lib/toaster/tests/browser/test_builddashboard_page.py b/poky/bitbake/lib/toaster/tests/browser/test_builddashboard_page.py
index f8ccb54..53c125e 100644
--- a/poky/bitbake/lib/toaster/tests/browser/test_builddashboard_page.py
+++ b/poky/bitbake/lib/toaster/tests/browser/test_builddashboard_page.py
@@ -1,23 +1,11 @@
#! /usr/bin/env python
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
#
# BitBake Toaster Implementation
#
# Copyright (C) 2013-2016 Intel Corporation
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
from django.core.urlresolvers import reverse
from django.utils import timezone
diff --git a/poky/bitbake/lib/toaster/tests/browser/test_builddashboard_page_artifacts.py b/poky/bitbake/lib/toaster/tests/browser/test_builddashboard_page_artifacts.py
index 1c627ad..c560d7d 100644
--- a/poky/bitbake/lib/toaster/tests/browser/test_builddashboard_page_artifacts.py
+++ b/poky/bitbake/lib/toaster/tests/browser/test_builddashboard_page_artifacts.py
@@ -1,23 +1,11 @@
#! /usr/bin/env python
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
#
# BitBake Toaster Implementation
#
# Copyright (C) 2013-2016 Intel Corporation
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
from django.core.urlresolvers import reverse
from django.utils import timezone
diff --git a/poky/bitbake/lib/toaster/tests/browser/test_builddashboard_page_recipes.py b/poky/bitbake/lib/toaster/tests/browser/test_builddashboard_page_recipes.py
index ed18324..e4f3d68 100644
--- a/poky/bitbake/lib/toaster/tests/browser/test_builddashboard_page_recipes.py
+++ b/poky/bitbake/lib/toaster/tests/browser/test_builddashboard_page_recipes.py
@@ -1,23 +1,11 @@
#! /usr/bin/env python
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
#
# BitBake Toaster Implementation
#
# Copyright (C) 2013-2016 Intel Corporation
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
from django.core.urlresolvers import reverse
from django.utils import timezone
diff --git a/poky/bitbake/lib/toaster/tests/browser/test_builddashboard_page_tasks.py b/poky/bitbake/lib/toaster/tests/browser/test_builddashboard_page_tasks.py
index da50f16..bdb0c27 100644
--- a/poky/bitbake/lib/toaster/tests/browser/test_builddashboard_page_tasks.py
+++ b/poky/bitbake/lib/toaster/tests/browser/test_builddashboard_page_tasks.py
@@ -1,23 +1,11 @@
#! /usr/bin/env python
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
#
# BitBake Toaster Implementation
#
# Copyright (C) 2013-2016 Intel Corporation
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
from django.core.urlresolvers import reverse
from django.utils import timezone
diff --git a/poky/bitbake/lib/toaster/tests/browser/test_js_unit_tests.py b/poky/bitbake/lib/toaster/tests/browser/test_js_unit_tests.py
index 3c0b962..63f3f4a 100644
--- a/poky/bitbake/lib/toaster/tests/browser/test_js_unit_tests.py
+++ b/poky/bitbake/lib/toaster/tests/browser/test_js_unit_tests.py
@@ -1,23 +1,11 @@
#! /usr/bin/env python
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
#
# BitBake Toaster Implementation
#
# Copyright (C) 2013-2016 Intel Corporation
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
"""
Run the js unit tests
diff --git a/poky/bitbake/lib/toaster/tests/browser/test_landing_page.py b/poky/bitbake/lib/toaster/tests/browser/test_landing_page.py
index 4d4cd66..0a00fcc 100644
--- a/poky/bitbake/lib/toaster/tests/browser/test_landing_page.py
+++ b/poky/bitbake/lib/toaster/tests/browser/test_landing_page.py
@@ -1,23 +1,11 @@
#! /usr/bin/env python
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
#
# BitBake Toaster Implementation
#
+# SPDX-License-Identifier: GPL-2.0-only
+#
# Copyright (C) 2013-2016 Intel Corporation
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
from django.core.urlresolvers import reverse
from django.utils import timezone
diff --git a/poky/bitbake/lib/toaster/tests/browser/test_layerdetails_page.py b/poky/bitbake/lib/toaster/tests/browser/test_layerdetails_page.py
index f24fb09..e34aa13 100644
--- a/poky/bitbake/lib/toaster/tests/browser/test_layerdetails_page.py
+++ b/poky/bitbake/lib/toaster/tests/browser/test_layerdetails_page.py
@@ -1,23 +1,11 @@
#! /usr/bin/env python
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
#
# BitBake Toaster Implementation
#
+# SPDX-License-Identifier: GPL-2.0-only
+#
# Copyright (C) 2013-2016 Intel Corporation
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
from django.core.urlresolvers import reverse
from tests.browser.selenium_helpers import SeleniumTestCase
diff --git a/poky/bitbake/lib/toaster/tests/browser/test_most_recent_builds_states.py b/poky/bitbake/lib/toaster/tests/browser/test_most_recent_builds_states.py
index abc0b0b..d52b184 100644
--- a/poky/bitbake/lib/toaster/tests/browser/test_most_recent_builds_states.py
+++ b/poky/bitbake/lib/toaster/tests/browser/test_most_recent_builds_states.py
@@ -1,23 +1,11 @@
#! /usr/bin/env python
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
#
# BitBake Toaster Implementation
#
+# SPDX-License-Identifier: GPL-2.0-only
+#
# Copyright (C) 2013-2016 Intel Corporation
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
from django.core.urlresolvers import reverse
from django.utils import timezone
diff --git a/poky/bitbake/lib/toaster/tests/browser/test_new_custom_image_page.py b/poky/bitbake/lib/toaster/tests/browser/test_new_custom_image_page.py
index ab5a8e6..3b47a49 100644
--- a/poky/bitbake/lib/toaster/tests/browser/test_new_custom_image_page.py
+++ b/poky/bitbake/lib/toaster/tests/browser/test_new_custom_image_page.py
@@ -1,23 +1,11 @@
#! /usr/bin/env python
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
#
# BitBake Toaster Implementation
#
# Copyright (C) 2013-2016 Intel Corporation
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
from django.core.urlresolvers import reverse
from tests.browser.selenium_helpers import SeleniumTestCase
diff --git a/poky/bitbake/lib/toaster/tests/browser/test_new_project_page.py b/poky/bitbake/lib/toaster/tests/browser/test_new_project_page.py
index 77e5f15..d250bd1 100644
--- a/poky/bitbake/lib/toaster/tests/browser/test_new_project_page.py
+++ b/poky/bitbake/lib/toaster/tests/browser/test_new_project_page.py
@@ -1,23 +1,11 @@
#! /usr/bin/env python
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
#
# BitBake Toaster Implementation
#
# Copyright (C) 2013-2016 Intel Corporation
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
from django.core.urlresolvers import reverse
from tests.browser.selenium_helpers import SeleniumTestCase
diff --git a/poky/bitbake/lib/toaster/tests/browser/test_project_builds_page.py b/poky/bitbake/lib/toaster/tests/browser/test_project_builds_page.py
index 9fe91ab..065f3eb 100644
--- a/poky/bitbake/lib/toaster/tests/browser/test_project_builds_page.py
+++ b/poky/bitbake/lib/toaster/tests/browser/test_project_builds_page.py
@@ -1,23 +1,11 @@
#! /usr/bin/env python
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
#
# BitBake Toaster Implementation
#
# Copyright (C) 2013-2016 Intel Corporation
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
import re
diff --git a/poky/bitbake/lib/toaster/tests/browser/test_project_config_page.py b/poky/bitbake/lib/toaster/tests/browser/test_project_config_page.py
index 0710084..48508df 100644
--- a/poky/bitbake/lib/toaster/tests/browser/test_project_config_page.py
+++ b/poky/bitbake/lib/toaster/tests/browser/test_project_config_page.py
@@ -1,23 +1,11 @@
#! /usr/bin/env python
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
#
# BitBake Toaster Implementation
#
# Copyright (C) 2013-2016 Intel Corporation
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
import re
diff --git a/poky/bitbake/lib/toaster/tests/browser/test_project_page.py b/poky/bitbake/lib/toaster/tests/browser/test_project_page.py
index 0186463..5cb607d 100644
--- a/poky/bitbake/lib/toaster/tests/browser/test_project_page.py
+++ b/poky/bitbake/lib/toaster/tests/browser/test_project_page.py
@@ -1,23 +1,11 @@
#! /usr/bin/env python
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
#
# BitBake Toaster Implementation
#
# Copyright (C) 2013-2016 Intel Corporation
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
from django.core.urlresolvers import reverse
from django.utils import timezone
diff --git a/poky/bitbake/lib/toaster/tests/browser/test_sample.py b/poky/bitbake/lib/toaster/tests/browser/test_sample.py
index 20ec53c..008ba14 100644
--- a/poky/bitbake/lib/toaster/tests/browser/test_sample.py
+++ b/poky/bitbake/lib/toaster/tests/browser/test_sample.py
@@ -1,23 +1,11 @@
#! /usr/bin/env python
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
#
# BitBake Toaster Implementation
#
# Copyright (C) 2013-2016 Intel Corporation
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
"""
A small example test demonstrating the basics of writing a test with
diff --git a/poky/bitbake/lib/toaster/tests/browser/test_task_page.py b/poky/bitbake/lib/toaster/tests/browser/test_task_page.py
index 690d116..47c8c1a 100644
--- a/poky/bitbake/lib/toaster/tests/browser/test_task_page.py
+++ b/poky/bitbake/lib/toaster/tests/browser/test_task_page.py
@@ -1,23 +1,11 @@
#! /usr/bin/env python
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
#
# BitBake Toaster Implementation
#
# Copyright (C) 2013-2016 Intel Corporation
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
from django.core.urlresolvers import reverse
from django.utils import timezone
diff --git a/poky/bitbake/lib/toaster/tests/browser/test_toastertable_ui.py b/poky/bitbake/lib/toaster/tests/browser/test_toastertable_ui.py
index 53ddf30..b4f8344 100644
--- a/poky/bitbake/lib/toaster/tests/browser/test_toastertable_ui.py
+++ b/poky/bitbake/lib/toaster/tests/browser/test_toastertable_ui.py
@@ -1,23 +1,11 @@
#! /usr/bin/env python
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
#
# BitBake Toaster Implementation
#
# Copyright (C) 2013-2016 Intel Corporation
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
from datetime import datetime
diff --git a/poky/bitbake/lib/toaster/tests/builds/buildtest.py b/poky/bitbake/lib/toaster/tests/builds/buildtest.py
index 5a56a11..9f40f97 100644
--- a/poky/bitbake/lib/toaster/tests/builds/buildtest.py
+++ b/poky/bitbake/lib/toaster/tests/builds/buildtest.py
@@ -1,23 +1,11 @@
#! /usr/bin/env python
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
#
# BitBake Toaster Implementation
#
# Copyright (C) 2016 Intel Corporation
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
import os
import sys
diff --git a/poky/bitbake/lib/toaster/tests/builds/test_core_image_min.py b/poky/bitbake/lib/toaster/tests/builds/test_core_image_min.py
index 586f4a8..3d3aa2a 100644
--- a/poky/bitbake/lib/toaster/tests/builds/test_core_image_min.py
+++ b/poky/bitbake/lib/toaster/tests/builds/test_core_image_min.py
@@ -1,24 +1,11 @@
#! /usr/bin/env python
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
#
# BitBake Toaster Implementation
#
# Copyright (C) 2016 Intel Corporation
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-
# Tests were part of openembedded-core oe selftest Authored by: Lucian Musat
# Ionut Chisanovici, Paul Eggleton and Cristian Iorga
diff --git a/poky/bitbake/lib/toaster/tests/commands/test_loaddata.py b/poky/bitbake/lib/toaster/tests/commands/test_loaddata.py
index 951f6ff..b633d97 100644
--- a/poky/bitbake/lib/toaster/tests/commands/test_loaddata.py
+++ b/poky/bitbake/lib/toaster/tests/commands/test_loaddata.py
@@ -1,23 +1,11 @@
#! /usr/bin/env python
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
#
# BitBake Toaster Implementation
#
# Copyright (C) 2016 Intel Corporation
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
from django.test import TestCase
from django.core import management
diff --git a/poky/bitbake/lib/toaster/tests/commands/test_lsupdates.py b/poky/bitbake/lib/toaster/tests/commands/test_lsupdates.py
index 49897a4..23a84a2 100644
--- a/poky/bitbake/lib/toaster/tests/commands/test_lsupdates.py
+++ b/poky/bitbake/lib/toaster/tests/commands/test_lsupdates.py
@@ -1,23 +1,11 @@
#! /usr/bin/env python
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
#
# BitBake Toaster Implementation
#
# Copyright (C) 2016 Intel Corporation
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
from django.test import TestCase
from django.core import management
diff --git a/poky/bitbake/lib/toaster/tests/commands/test_runbuilds.py b/poky/bitbake/lib/toaster/tests/commands/test_runbuilds.py
index 3e63483..29bc7c9 100644
--- a/poky/bitbake/lib/toaster/tests/commands/test_runbuilds.py
+++ b/poky/bitbake/lib/toaster/tests/commands/test_runbuilds.py
@@ -1,23 +1,11 @@
#! /usr/bin/env python
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
#
# BitBake Toaster Implementation
#
# Copyright (C) 2016 Intel Corporation
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
import os
diff --git a/poky/bitbake/lib/toaster/tests/db/test_db.py b/poky/bitbake/lib/toaster/tests/db/test_db.py
index a0f5f6e..0410422 100644
--- a/poky/bitbake/lib/toaster/tests/db/test_db.py
+++ b/poky/bitbake/lib/toaster/tests/db/test_db.py
@@ -2,6 +2,8 @@
#
# Copyright (c) 2016 Damien Lespiau
#
+# SPDX-License-Identifier: MIT
+#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
# in the Software without restriction, including without limitation the rights
diff --git a/poky/bitbake/lib/toaster/tests/eventreplay/__init__.py b/poky/bitbake/lib/toaster/tests/eventreplay/__init__.py
index 6956619..3606cba 100644
--- a/poky/bitbake/lib/toaster/tests/eventreplay/__init__.py
+++ b/poky/bitbake/lib/toaster/tests/eventreplay/__init__.py
@@ -1,23 +1,11 @@
#! /usr/bin/env python
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
#
# BitBake Toaster Implementation
#
# Copyright (C) 2016 Intel Corporation
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
# Tests were part of openembedded-core oe selftest Authored by: Lucian Musat
# Ionut Chisanovici, Paul Eggleton and Cristian Iorga
diff --git a/poky/bitbake/lib/toaster/tests/functional/functional_helpers.py b/poky/bitbake/lib/toaster/tests/functional/functional_helpers.py
index 486078a..6a3f74b 100644
--- a/poky/bitbake/lib/toaster/tests/functional/functional_helpers.py
+++ b/poky/bitbake/lib/toaster/tests/functional/functional_helpers.py
@@ -1,23 +1,11 @@
#! /usr/bin/env python
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
#
# BitBake Toaster functional tests implementation
#
# Copyright (C) 2017 Intel Corporation
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
import os
import logging
diff --git a/poky/bitbake/lib/toaster/tests/functional/test_functional_basic.py b/poky/bitbake/lib/toaster/tests/functional/test_functional_basic.py
index cfa2b0f..2b3a288 100644
--- a/poky/bitbake/lib/toaster/tests/functional/test_functional_basic.py
+++ b/poky/bitbake/lib/toaster/tests/functional/test_functional_basic.py
@@ -1,23 +1,11 @@
#! /usr/bin/env python
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
#
# BitBake Toaster functional tests implementation
#
# Copyright (C) 2017 Intel Corporation
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
import time
import re
diff --git a/poky/bitbake/lib/toaster/tests/views/test_views.py b/poky/bitbake/lib/toaster/tests/views/test_views.py
index 1463077..477654e 100644
--- a/poky/bitbake/lib/toaster/tests/views/test_views.py
+++ b/poky/bitbake/lib/toaster/tests/views/test_views.py
@@ -1,23 +1,11 @@
#! /usr/bin/env python
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
#
# BitBake Toaster Implementation
#
# Copyright (C) 2013-2015 Intel Corporation
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
"""Test cases for Toaster GUI and ReST."""
diff --git a/poky/bitbake/lib/toaster/toastergui/api.py b/poky/bitbake/lib/toaster/toastergui/api.py
index 564d595..8b49b3e 100644
--- a/poky/bitbake/lib/toaster/toastergui/api.py
+++ b/poky/bitbake/lib/toaster/toastergui/api.py
@@ -3,19 +3,8 @@
#
# Copyright (C) 2016 Intel Corporation
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-
# Please run flake8 on this file before sending patches
import os
diff --git a/poky/bitbake/lib/toaster/toastergui/buildtables.py b/poky/bitbake/lib/toaster/toastergui/buildtables.py
index 755a7c2..327059d 100644
--- a/poky/bitbake/lib/toaster/toastergui/buildtables.py
+++ b/poky/bitbake/lib/toaster/toastergui/buildtables.py
@@ -1,23 +1,10 @@
#
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
-#
# BitBake Toaster Implementation
#
# Copyright (C) 2016 Intel Corporation
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
from orm.models import Build, Task, Target, Package
from django.db.models import Q, Sum
diff --git a/poky/bitbake/lib/toaster/toastergui/tablefilter.py b/poky/bitbake/lib/toaster/toastergui/tablefilter.py
index 65454e1..ffef795 100644
--- a/poky/bitbake/lib/toaster/toastergui/tablefilter.py
+++ b/poky/bitbake/lib/toaster/toastergui/tablefilter.py
@@ -1,23 +1,10 @@
#
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
-#
# BitBake Toaster Implementation
#
# Copyright (C) 2015 Intel Corporation
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
from django.db.models import Q, Max, Min
from django.utils import dateparse, timezone
diff --git a/poky/bitbake/lib/toaster/toastergui/tables.py b/poky/bitbake/lib/toaster/toastergui/tables.py
index 9ff756b..b3ea222 100644
--- a/poky/bitbake/lib/toaster/toastergui/tables.py
+++ b/poky/bitbake/lib/toaster/toastergui/tables.py
@@ -1,23 +1,10 @@
#
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
-#
# BitBake Toaster Implementation
#
# Copyright (C) 2015 Intel Corporation
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
from toastergui.widgets import ToasterTable
from orm.models import Recipe, ProjectLayer, Layer_Version, Machine, Project
diff --git a/poky/bitbake/lib/toaster/toastergui/templatetags/field_values_filter.py b/poky/bitbake/lib/toaster/toastergui/templatetags/field_values_filter.py
index 5a73af7..eb48339 100644
--- a/poky/bitbake/lib/toaster/toastergui/templatetags/field_values_filter.py
+++ b/poky/bitbake/lib/toaster/toastergui/templatetags/field_values_filter.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
+
from django import template
register = template.Library()
diff --git a/poky/bitbake/lib/toaster/toastergui/templatetags/objects_to_dictionaries_filter.py b/poky/bitbake/lib/toaster/toastergui/templatetags/objects_to_dictionaries_filter.py
index 0dcc7d2..048d533 100644
--- a/poky/bitbake/lib/toaster/toastergui/templatetags/objects_to_dictionaries_filter.py
+++ b/poky/bitbake/lib/toaster/toastergui/templatetags/objects_to_dictionaries_filter.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
+
from django import template
import json
diff --git a/poky/bitbake/lib/toaster/toastergui/templatetags/project_url_tag.py b/poky/bitbake/lib/toaster/toastergui/templatetags/project_url_tag.py
index 04770ac..71e0925 100644
--- a/poky/bitbake/lib/toaster/toastergui/templatetags/project_url_tag.py
+++ b/poky/bitbake/lib/toaster/toastergui/templatetags/project_url_tag.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
+
from django import template
from django.core.urlresolvers import reverse
diff --git a/poky/bitbake/lib/toaster/toastergui/templatetags/projecttags.py b/poky/bitbake/lib/toaster/toastergui/templatetags/projecttags.py
index b170a16..1dbab3b 100644
--- a/poky/bitbake/lib/toaster/toastergui/templatetags/projecttags.py
+++ b/poky/bitbake/lib/toaster/toastergui/templatetags/projecttags.py
@@ -1,23 +1,10 @@
#
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
-#
# BitBake Toaster Implementation
#
# Copyright (C) 2013 Intel Corporation
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
from datetime import datetime, timedelta
from os.path import relpath
diff --git a/poky/bitbake/lib/toaster/toastergui/typeaheads.py b/poky/bitbake/lib/toaster/toastergui/typeaheads.py
index 5aa0f8d..fd750ff 100644
--- a/poky/bitbake/lib/toaster/toastergui/typeaheads.py
+++ b/poky/bitbake/lib/toaster/toastergui/typeaheads.py
@@ -3,18 +3,8 @@
#
# Copyright (C) 2015 Intel Corporation
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
import subprocess
diff --git a/poky/bitbake/lib/toaster/toastergui/urls.py b/poky/bitbake/lib/toaster/toastergui/urls.py
index dc03e30..673d9ae 100644
--- a/poky/bitbake/lib/toaster/toastergui/urls.py
+++ b/poky/bitbake/lib/toaster/toastergui/urls.py
@@ -3,18 +3,8 @@
#
# Copyright (C) 2013-2017 Intel Corporation
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
from django.conf.urls import include, url
from django.views.generic import RedirectView, TemplateView
diff --git a/poky/bitbake/lib/toaster/toastergui/views.py b/poky/bitbake/lib/toaster/toastergui/views.py
index c712b06..d7acaff 100644
--- a/poky/bitbake/lib/toaster/toastergui/views.py
+++ b/poky/bitbake/lib/toaster/toastergui/views.py
@@ -1,24 +1,10 @@
#
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
-#
# BitBake Toaster Implementation
#
# Copyright (C) 2013 Intel Corporation
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-
import re
diff --git a/poky/bitbake/lib/toaster/toastergui/widgets.py b/poky/bitbake/lib/toaster/toastergui/widgets.py
index db5c3aa..645f458 100644
--- a/poky/bitbake/lib/toaster/toastergui/widgets.py
+++ b/poky/bitbake/lib/toaster/toastergui/widgets.py
@@ -1,23 +1,10 @@
#
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
-#
# BitBake Toaster Implementation
#
# Copyright (C) 2015 Intel Corporation
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
from django.views.generic import View, TemplateView
from django.views.decorators.cache import cache_control
diff --git a/poky/bitbake/lib/toaster/toastermain/management/commands/builddelete.py b/poky/bitbake/lib/toaster/toastermain/management/commands/builddelete.py
index bf69a8f..c2d773a 100644
--- a/poky/bitbake/lib/toaster/toastermain/management/commands/builddelete.py
+++ b/poky/bitbake/lib/toaster/toastermain/management/commands/builddelete.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
+
from django.core.management.base import BaseCommand, CommandError
from django.core.exceptions import ObjectDoesNotExist
from orm.models import Build
diff --git a/poky/bitbake/lib/toaster/toastermain/management/commands/buildimport.py b/poky/bitbake/lib/toaster/toastermain/management/commands/buildimport.py
index 2d57ab5..408ad44 100644
--- a/poky/bitbake/lib/toaster/toastermain/management/commands/buildimport.py
+++ b/poky/bitbake/lib/toaster/toastermain/management/commands/buildimport.py
@@ -1,23 +1,10 @@
#
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
-#
# BitBake Toaster Implementation
#
# Copyright (C) 2018 Wind River Systems
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
# buildimport: import a project for project specific configuration
#
diff --git a/poky/bitbake/lib/toaster/toastermain/management/commands/buildslist.py b/poky/bitbake/lib/toaster/toastermain/management/commands/buildslist.py
index 70b5812..1ed2022 100644
--- a/poky/bitbake/lib/toaster/toastermain/management/commands/buildslist.py
+++ b/poky/bitbake/lib/toaster/toastermain/management/commands/buildslist.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
+
from django.core.management.base import BaseCommand, CommandError
from orm.models import Build
import os
diff --git a/poky/bitbake/lib/toaster/toastermain/management/commands/checksocket.py b/poky/bitbake/lib/toaster/toastermain/management/commands/checksocket.py
index 0399b86..c1758f3 100644
--- a/poky/bitbake/lib/toaster/toastermain/management/commands/checksocket.py
+++ b/poky/bitbake/lib/toaster/toastermain/management/commands/checksocket.py
@@ -1,23 +1,11 @@
#!/usr/bin/env python
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
#
# BitBake Toaster Implementation
#
# Copyright (C) 2015 Intel Corporation
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
"""Custom management command checksocket."""
diff --git a/poky/bitbake/lib/toaster/toastermain/management/commands/perf.py b/poky/bitbake/lib/toaster/toastermain/management/commands/perf.py
index 6b450bb..7d629fb 100644
--- a/poky/bitbake/lib/toaster/toastermain/management/commands/perf.py
+++ b/poky/bitbake/lib/toaster/toastermain/management/commands/perf.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
+
from django.core.management.base import BaseCommand
from django.test.client import Client
import os, sys, re
diff --git a/poky/bitbake/lib/toaster/toastermain/settings.py b/poky/bitbake/lib/toaster/toastermain/settings.py
index 13541d3..74501fa 100644
--- a/poky/bitbake/lib/toaster/toastermain/settings.py
+++ b/poky/bitbake/lib/toaster/toastermain/settings.py
@@ -1,23 +1,10 @@
#
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
-#
# BitBake Toaster Implementation
#
# Copyright (C) 2013 Intel Corporation
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
# Django settings for Toaster project.
diff --git a/poky/bitbake/lib/toaster/toastermain/settings_production_example.py b/poky/bitbake/lib/toaster/toastermain/settings_production_example.py
index 61a2888..6cd0f52 100644
--- a/poky/bitbake/lib/toaster/toastermain/settings_production_example.py
+++ b/poky/bitbake/lib/toaster/toastermain/settings_production_example.py
@@ -1,23 +1,10 @@
#
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
-#
# BitBake Toaster Implementation
#
# Copyright (C) 2016 Intel Corporation
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
# See Django documentation for more information about deployment
# https://docs.djangoproject.com/en/1.8/howto/deployment/checklist/
diff --git a/poky/bitbake/lib/toaster/toastermain/settings_test.py b/poky/bitbake/lib/toaster/toastermain/settings_test.py
index a322711..6538d9e 100644
--- a/poky/bitbake/lib/toaster/toastermain/settings_test.py
+++ b/poky/bitbake/lib/toaster/toastermain/settings_test.py
@@ -1,23 +1,10 @@
#
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
-#
# BitBake Toaster Implementation
#
# Copyright (C) 2016 Intel Corporation
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
# Django settings for Toaster project.
diff --git a/poky/bitbake/lib/toaster/toastermain/urls.py b/poky/bitbake/lib/toaster/toastermain/urls.py
index e2fb0ae..ac77bc3 100644
--- a/poky/bitbake/lib/toaster/toastermain/urls.py
+++ b/poky/bitbake/lib/toaster/toastermain/urls.py
@@ -1,23 +1,10 @@
#
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
-#
# BitBake Toaster Implementation
#
# Copyright (C) 2013 Intel Corporation
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
from django.conf.urls import include, url
from django.views.generic import RedirectView, TemplateView
diff --git a/poky/bitbake/lib/toaster/toastermain/wsgi.py b/poky/bitbake/lib/toaster/toastermain/wsgi.py
index 031b314..4c31283 100644
--- a/poky/bitbake/lib/toaster/toastermain/wsgi.py
+++ b/poky/bitbake/lib/toaster/toastermain/wsgi.py
@@ -1,7 +1,8 @@
-"""
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
#
+# SPDX-License-Identifier: GPL-2.0-only
+#
+
+"""
WSGI config for Toaster project.
This module contains the WSGI application used by Django's development server
diff --git a/poky/documentation/Makefile b/poky/documentation/Makefile
index 1480e14..accf234 100644
--- a/poky/documentation/Makefile
+++ b/poky/documentation/Makefile
@@ -4,24 +4,17 @@
# in any manuals must be .PNG files and live in the individual book's figures
# directory as well as in the figures directory for the mega-manual.
#
-# Some manuals are available as linked help through the Eclipse development
-# system. These manuals also include an "eclipse" sub-directory as part of
-# the make process.
-#
# Note that the figures for the Yocto Project Development Tasks Manual
# differ depending on the BRANCH being built.
#
# The Makefile has these targets:
# all: If you leave off the target then "all" is implied.
-# You will generate HTML, eclipse help (if applicable),
-# and a tarball of files.
+# You will generate HTML and a tarball of files.
#
# pdf: generates a PDF version of a manual. Not valid for the
# Quick Start or the mega-manual (single, large HTML file
# comprised of all Yocto Project manuals).
# html: generates an HTML version of a manual.
-# eclipse: generates an HTML version of a manual that can be used as
-# eclipse help (including necessary metadata files).
# tarball: creates a tarball for the doc files.
# validate: validates
# publish: pushes generated files to the Yocto Project website
@@ -53,13 +46,13 @@
# make DOC=dev-manual BRANCH=edison
# make DOC=mega-manual BRANCH=denzil
#
-# The first example generates the HTML and Eclipse help versions of the BSP Guide.
+# The first example generates the HTML version of the BSP Guide.
# The second example generates the HTML version only of the Quick Start. Note
# that the Quick Start only has an HTML version available. So, the
# 'make DOC=brief-yoctoprojectqs' command would be equivalent. The third example
# generates just the PDF version of the Yocto Project Reference Manual.
-# The fourth example generates the HTML 'edison' version and (if available)
-# the Eclipse help version of the YP Development Tasks Manual. The last example
+# The fourth example generates the HTML 'edison' version of the YP Development
+# Tasks Manual. The last example
# generates the HTML version of the mega-manual and uses the 'denzil'
# branch when choosing figures for the tarball of figures. Any example that does
# not use the BRANCH argument builds the current version of the manual set.
@@ -67,7 +60,7 @@
# The publish target pushes the generated manuals to the Yocto Project
# website. Unless you are a developer on the YP team, you will not succeed in
# pushing manuals to this server. All files needed for the manual's HTML form are
-# pushed as well as applicable Eclipse versions.
+# pushed.
#
# Examples:
#
@@ -90,10 +83,10 @@
--stringparam section.autolabel 0 \
--stringparam section.label.includes.component.label 0 \
--xinclude
-ALLPREQ = html eclipse tarball
+ALLPREQ = html tarball
TARFILES = brief-yoctoprojectqs-style.css brief-yoctoprojectqs.html figures/bypqs-title.png \
figures/yocto-project-transp.png
-MANUALS = $(DOC)/$(DOC).html $(DOC)/eclipse
+MANUALS = $(DOC)/$(DOC).html
FIGURES = figures
STYLESHEET = $(DOC)/*.css
@@ -101,7 +94,7 @@
ifeq ($(DOC),overview-manual)
XSLTOPTS = --xinclude
-ALLPREQ = html eclipse tarball
+ALLPREQ = html tarball
TARFILES = overview-manual-style.css overview-manual.html figures/overview-manual-title.png \
figures/git-workflow.png figures/source-repos.png figures/index-downloads.png \
figures/yp-download.png figures/YP-flow-diagram.png figures/key-dev-elements.png \
@@ -110,9 +103,8 @@
figures/package-feeds.png figures/patching.png figures/source-fetching.png \
figures/configuration-compile-autoreconf.png figures/analysis-for-package-splitting.png \
figures/image-generation.png figures/sdk-generation.png figures/images.png \
- figures/sdk.png \
- eclipse
-MANUALS = $(DOC)/$(DOC).html $(DOC)/eclipse
+ figures/sdk.png
+MANUALS = $(DOC)/$(DOC).html
FIGURES = figures
STYLESHEET = $(DOC)/*.css
@@ -120,11 +112,10 @@
ifeq ($(DOC),bsp-guide)
XSLTOPTS = --xinclude
-ALLPREQ = html eclipse tarball
+ALLPREQ = html tarball
TARFILES = bsp-style.css bsp-guide.html figures/bsp-title.png \
- figures/bsp-dev-flow.png \
- eclipse
-MANUALS = $(DOC)/$(DOC).html $(DOC)/eclipse
+ figures/bsp-dev-flow.png
+MANUALS = $(DOC)/$(DOC).html
FIGURES = figures
STYLESHEET = $(DOC)/*.css
@@ -132,7 +123,7 @@
ifeq ($(DOC),dev-manual)
XSLTOPTS = --xinclude
-ALLPREQ = html eclipse tarball
+ALLPREQ = html tarball
#
# Note that the tarfile might produce the "Cannot stat: No such file or
# directory" error message for .PNG files that are not present when building
@@ -165,11 +156,10 @@
TARFILES = dev-style.css dev-manual.html figures/buildhistory-web.png \
figures/dev-title.png figures/buildhistory.png \
figures/recipe-workflow.png figures/bitbake-build-flow.png \
- figures/multiconfig_files.png \
- eclipse
+ figures/multiconfig_files.png
endif
-MANUALS = $(DOC)/$(DOC).html $(DOC)/eclipse
+MANUALS = $(DOC)/$(DOC).html
FIGURES = figures
STYLESHEET = $(DOC)/*.css
@@ -230,7 +220,7 @@
figures/profile-title.png figures/kernelshark-all.png \
figures/kernelshark-choose-events.png \
figures/kernelshark-i915-display.png \
- figures/kernelshark-output-display.png figures/lttngmain0.png \
+ figures/kernelshark-output-display.png \
figures/oprofileui-busybox.png figures/oprofileui-copy-to-user.png \
figures/oprofileui-downloading.png figures/oprofileui-processes.png \
figures/perf-probe-do_fork-profile.png \
@@ -267,7 +257,7 @@
figures/compatible-layers.png figures/import-layer.png figures/new-project.png \
figures/sdk-environment.png figures/sdk-installed-standard-sdk-directory.png \
figures/sdk-devtool-add-flow.png figures/sdk-installed-extensible-sdk-directory.png \
- figures/sdk-devtool-modify-flow.png figures/sdk-eclipse-dev-flow.png \
+ figures/sdk-devtool-modify-flow.png \
figures/sdk-devtool-upgrade-flow.png figures/bitbake-build-flow.png figures/bypqs-title.png \
figures/overview-manual-title.png figures/sdk-autotools-flow.png figures/sdk-makefile-flow.png \
figures/bb_multiconfig_files.png figures/bitbake-title.png
@@ -281,37 +271,35 @@
ifeq ($(DOC),ref-manual)
XSLTOPTS = --xinclude
-ALLPREQ = html eclipse tarball
+ALLPREQ = html tarball
TARFILES = ref-manual.html ref-style.css figures/poky-title.png \
- figures/build-workspace-directory.png \
- eclipse
-MANUALS = $(DOC)/$(DOC).html $(DOC)/eclipse
+ figures/build-workspace-directory.png
+MANUALS = $(DOC)/$(DOC).html
FIGURES = figures
STYLESHEET = $(DOC)/*.css
endif
ifeq ($(DOC),sdk-manual)
XSLTOPTS = --xinclude
-ALLPREQ = html eclipse tarball
+ALLPREQ = html tarball
TARFILES = sdk-manual.html sdk-style.css figures/sdk-title.png \
figures/sdk-environment.png figures/sdk-installed-standard-sdk-directory.png \
figures/sdk-installed-extensible-sdk-directory.png figures/sdk-devtool-add-flow.png \
- figures/sdk-devtool-modify-flow.png figures/sdk-eclipse-dev-flow.png \
- figures/sdk-devtool-upgrade-flow.png figures/sdk-autotools-flow.png figures/sdk-makefile-flow.png \
- eclipse
-MANUALS = $(DOC)/$(DOC).html $(DOC)/eclipse
+ figures/sdk-devtool-modify-flow.png \
+ figures/sdk-devtool-upgrade-flow.png figures/sdk-autotools-flow.png figures/sdk-makefile-flow.png
+MANUALS = $(DOC)/$(DOC).html
FIGURES = figures
STYLESHEET = $(DOC)/*.css
endif
ifeq ($(DOC),profile-manual)
XSLTOPTS = --xinclude
-ALLPREQ = html eclipse tarball
+ALLPREQ = html tarball
TARFILES = profile-manual.html profile-manual-style.css \
figures/profile-title.png figures/kernelshark-all.png \
figures/kernelshark-choose-events.png \
figures/kernelshark-i915-display.png \
- figures/kernelshark-output-display.png figures/lttngmain0.png \
+ figures/kernelshark-output-display.png \
figures/oprofileui-busybox.png figures/oprofileui-copy-to-user.png \
figures/oprofileui-downloading.png figures/oprofileui-processes.png \
figures/perf-probe-do_fork-profile.png \
@@ -332,21 +320,19 @@
figures/pychart-linux-yocto-rpm.png \
figures/pychart-linux-yocto-rpm-nostrip.png \
figures/sched-wakeup-profile.png figures/sysprof-callers.png \
- figures/sysprof-copy-from-user.png figures/sysprof-copy-to-user.png \
- eclipse
-MANUALS = $(DOC)/$(DOC).html $(DOC)/eclipse
+ figures/sysprof-copy-from-user.png figures/sysprof-copy-to-user.png
+MANUALS = $(DOC)/$(DOC).html
FIGURES = figures
STYLESHEET = $(DOC)/*.css
endif
ifeq ($(DOC),kernel-dev)
XSLTOPTS = --xinclude
-ALLPREQ = html eclipse tarball
+ALLPREQ = html tarball
TARFILES = kernel-dev.html kernel-dev-style.css \
figures/kernel-dev-title.png figures/kernel-overview-2-generic.png \
- figures/kernel-architecture-overview.png figures/kernel-dev-flow.png \
- eclipse
-MANUALS = $(DOC)/$(DOC).html $(DOC)/eclipse
+ figures/kernel-architecture-overview.png figures/kernel-dev-flow.png
+MANUALS = $(DOC)/$(DOC).html
FIGURES = figures
STYLESHEET = $(DOC)/*.css
endif
@@ -412,50 +398,6 @@
endif
-eclipse: BASE_DIR = html/$(DOC)/
-
-eclipse: eclipse-generate eclipse-resolve-links
-
-.PHONY : eclipse-generate eclipse-resolve-links
-
-eclipse-generate:
-ifeq ($(filter $(DOC), overview-manual sdk-manual bsp-guide dev-manual kernel-dev profile-manual ref-manual brief-yoctoprojectqs),)
- @echo " "
- @echo "ERROR: You can only create eclipse documentation"
- @echo " of the following documentation parts:"
- @echo " - overview-manual"
- @echo " - sdk-manual"
- @echo " - bsp-guide"
- @echo " - dev-manual"
- @echo " - kernel-dev"
- @echo " - profile-manual"
- @echo " - ref-manual"
- @echo " - brief-yoctoprojectqs"
- @echo " "
-else
- @echo " "
- @echo "******** Building eclipse help of "$(DOC)
- @echo " "
- cd $(DOC) && \
- xsltproc $(XSLTOPTS) \
- --stringparam base.dir '$(BASE_DIR)' \
- -o eclipse/$(DOC).html \
- $(DOC)-eclipse-customization.xsl $(DOC).xml && \
- mv eclipse/toc.xml eclipse/$(DOC)-toc.xml && \
- cp -rf $(FIGURES) eclipse/$(BASE_DIR) && \
- cd ..;
-
- $(call modify-eclipse)
-endif
-
-eclipse-resolve-links:
- @echo " "
- @echo "******** Using eclipse-help.sed to process external links"
- @echo " "
- $(foreach FILE, \
- $(wildcard $(DOC)/eclipse/html/$(DOC)/*.html), \
- $(shell sed -i -f tools/eclipse-help.sed $(FILE)))
-
tarball: html
@echo " "
@echo "******** Creating Tarball of document files"
diff --git a/poky/documentation/brief-yoctoprojectqs/brief-yoctoprojectqs-eclipse-customization.xsl b/poky/documentation/brief-yoctoprojectqs/brief-yoctoprojectqs-eclipse-customization.xsl
deleted file mode 100644
index fbb3b57..0000000
--- a/poky/documentation/brief-yoctoprojectqs/brief-yoctoprojectqs-eclipse-customization.xsl
+++ /dev/null
@@ -1,35 +0,0 @@
-<?xml version='1.0'?>
-<xsl:stylesheet
- xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
- xmlns="http://www.w3.org/1999/xhtml"
- xmlns:fo="http://www.w3.org/1999/XSL/Format"
- version="1.0">
-
- <xsl:import href="http://downloads.yoctoproject.org/mirror/docbook-mirror/docbook-xsl-1.76.1/eclipse/eclipse3.xsl" />
-
-<!--
-
- <xsl:import href="../template/1.76.1/docbook-xsl-1.76.1/eclipse/eclipse3.xsl" />
-
- <xsl:import
- href="http://docbook.sourceforge.net/release/xsl/1.76.1/eclipse/eclipse3.xsl" />
-
--->
-
- <xsl:import href="brief-yoctoprojectqs-titlepage.xsl"/>
-
- <xsl:param name="chunker.output.indent" select="'yes'"/>
- <xsl:param name="chunk.quietly" select="1"/>
- <xsl:param name="use.id.as.filename" select="1"/>
- <xsl:param name="ulink.target" select="'_self'" />
- <xsl:param name="base.dir" select="'html/brief-yoctoprojectqs/'"/>
- <xsl:param name="chunk.section.depth" select="0"/>
- <xsl:param name="html.stylesheet" select="'../book.css'"/>
- <xsl:param name="eclipse.manifest" select="0"/>
- <xsl:param name="create.plugin.xml" select="0"/>
- <xsl:param name="suppress.navigation" select="1"/>
- <xsl:param name="generate.index" select="0"/>
- <xsl:param name="generate.toc" select="'article nop'"></xsl:param>
- <xsl:param name="html.stylesheet" select="'style.css'" />
-</xsl:stylesheet>
-
diff --git a/poky/documentation/brief-yoctoprojectqs/brief-yoctoprojectqs.xml b/poky/documentation/brief-yoctoprojectqs/brief-yoctoprojectqs.xml
index 421412e..1daeb25 100644
--- a/poky/documentation/brief-yoctoprojectqs/brief-yoctoprojectqs.xml
+++ b/poky/documentation/brief-yoctoprojectqs/brief-yoctoprojectqs.xml
@@ -174,6 +174,7 @@
yocto-2.5.2
yocto-2.6
yocto-2.6.1
+ yocto-2.6.2
yocto-2.7
yocto_1.5_M5.rc8
</literallayout>
diff --git a/poky/documentation/bsp-guide/bsp-guide-eclipse-customization.xsl b/poky/documentation/bsp-guide/bsp-guide-eclipse-customization.xsl
deleted file mode 100644
index 35346ef..0000000
--- a/poky/documentation/bsp-guide/bsp-guide-eclipse-customization.xsl
+++ /dev/null
@@ -1,35 +0,0 @@
-<?xml version='1.0'?>
-<xsl:stylesheet
- xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
- xmlns="http://www.w3.org/1999/xhtml"
- xmlns:fo="http://www.w3.org/1999/XSL/Format"
- version="1.0">
-
- <xsl:import href="http://downloads.yoctoproject.org/mirror/docbook-mirror/docbook-xsl-1.76.1/eclipse/eclipse3.xsl" />
-
-<!--
-
- <xsl:import href="../template/1.76.1/docbook-xsl-1.76.1/eclipse/eclipse3.xsl" />
-
- <xsl:import
- href="http://docbook.sourceforge.net/release/xsl/1.76.1/eclipse/eclipse3.xsl" />
-
--->
-
- <xsl:param name="chunker.output.indent" select="'yes'"/>
- <xsl:param name="chunk.quietly" select="1"/>
- <xsl:param name="chunk.first.sections" select="1"/>
- <xsl:param name="chunk.section.depth" select="10"/>
- <xsl:param name="use.id.as.filename" select="1"/>
- <xsl:param name="ulink.target" select="'_self'" />
- <xsl:param name="base.dir" select="'html/bsp-guide/'"/>
- <xsl:param name="html.stylesheet" select="'../book.css'"/>
- <xsl:param name="eclipse.manifest" select="0"/>
- <xsl:param name="create.plugin.xml" select="0"/>
- <xsl:param name="suppress.navigation" select="1"/>
- <xsl:param name="generate.index" select="0"/>
- <xsl:param name="chapter.autolabel" select="1" />
- <xsl:param name="appendix.autolabel" select="1" />
- <xsl:param name="section.autolabel" select="1" />
- <xsl:param name="section.label.includes.component.label" select="1" />
-</xsl:stylesheet>
diff --git a/poky/documentation/bsp-guide/bsp-guide.xml b/poky/documentation/bsp-guide/bsp-guide.xml
index f559e08..addb421 100644
--- a/poky/documentation/bsp-guide/bsp-guide.xml
+++ b/poky/documentation/bsp-guide/bsp-guide.xml
@@ -128,9 +128,14 @@
</revision>
<revision>
<revnumber>2.7</revnumber>
- <date>&REL_MONTH_YEAR;</date>
+ <date>May 2019</date>
<revremark>Released with the Yocto Project 2.7 Release.</revremark>
</revision>
+ <revision>
+ <revnumber>2.8</revnumber>
+ <date>&REL_MONTH_YEAR;</date>
+ <revremark>Released with the Yocto Project 2.8 Release.</revremark>
+ </revision>
</revhistory>
<copyright>
diff --git a/poky/documentation/bsp-guide/bsp.xml b/poky/documentation/bsp-guide/bsp.xml
index 0bb0b68..58f5733 100644
--- a/poky/documentation/bsp-guide/bsp.xml
+++ b/poky/documentation/bsp-guide/bsp.xml
@@ -148,16 +148,11 @@
Some layers function as a layer to hold other BSP layers.
These layers are knows as
"<ulink url='&YOCTO_DOCS_REF_URL;#term-container-layer'>container layers</ulink>".
- An example of this type of layer is the
- <filename>meta-intel</filename> layer.
- This layer contains BSP layers for the Intel-core2-32
- <trademark class='registered'>Intel</trademark> Common Core
- (Intel-core2-32) and the Intel-corei7-64
- <trademark class='registered'>Intel</trademark> Common Core
- (Intel-corei7-64).
- the <filename>meta-intel</filename> layer also contains
- the <filename>common/</filename> directory, which contains
- common content across those layers.
+ An example of this type of layer is OpenEmbedded's
+ <ulink url='https://github.com/openembedded/meta-openembedded'><filename>meta-openembedded</filename></ulink>
+ layer.
+ The <filename>meta-openembedded</filename> layer contains
+ many <filename>meta-*</filename> layers.
</para>
<para>
@@ -1817,9 +1812,8 @@
The remainder of this section provides a description of
the Yocto Project reference BSP for Beaglebone, which
resides in the
- <ulink url='&YOCTO_DOCS_REF_URL;#term-container-layer'>Container Layer</ulink>
- (i.e.
- <ulink url='&YOCTO_GIT_URL;/cgit/cgit.cgi/poky/tree/meta-yocto-bsp'><filename>meta-yocto-bsp</filename></ulink>).
+ <ulink url='&YOCTO_GIT_URL;/cgit/cgit.cgi/poky/tree/meta-yocto-bsp'><filename>meta-yocto-bsp</filename></ulink>
+ layer.
</para>
<section id='bsp-layer-configuration-example'>
@@ -1882,7 +1876,7 @@
</literallayout>
For example, the machine configuration file for the
<ulink url='http://beagleboard.org/bone'>BeagleBone and BeagleBone Black development boards</ulink>
- is located in the container layer
+ is located in the layer
<filename>poky/meta-yocto-bsp/conf/machine</filename>
and is named <filename>beaglebone-yocto.conf</filename>:
<literallayout class='monospaced'>
@@ -1908,10 +1902,11 @@
IMAGE_INSTALL_append = " kernel-devicetree kernel-image-zimage"
do_image_wic[depends] += "mtools-native:do_populate_sysroot dosfstools-native:do_populate_sysroot"
- SERIAL_CONSOLES = "115200;ttyO0"
+ SERIAL_CONSOLES ?= "115200;ttyS0 115200;ttyO0"
+ SERIAL_CONSOLES_CHECK = "${SERIAL_CONSOLES}"
PREFERRED_PROVIDER_virtual/kernel ?= "linux-yocto"
- PREFERRED_VERSION_linux-yocto ?= "4.12%"
+ PREFERRED_VERSION_linux-yocto ?= "5.0%"
KERNEL_IMAGETYPE = "zImage"
KERNEL_DEVICETREE = "am335x-bone.dtb am335x-boneblack.dtb am335x-bonegreen.dtb"
@@ -1919,13 +1914,13 @@
SPL_BINARY = "MLO"
UBOOT_SUFFIX = "img"
- UBOOT_MACHINE = "am335x_boneblack_config"
+ UBOOT_MACHINE = "am335x_evm_defconfig"
UBOOT_ENTRYPOINT = "0x80008000"
UBOOT_LOADADDRESS = "0x80008000"
MACHINE_FEATURES = "usbgadget usbhost vfat alsa"
- IMAGE_BOOT_FILES ?= "u-boot.${UBOOT_SUFFIX} MLO"
+ IMAGE_BOOT_FILES ?= "u-boot.${UBOOT_SUFFIX} MLO zImage am335x-bone.dtb am335x-boneblack.dtb am335x-bonegreen.dtb"
</literallayout>
The variables used to configure the machine define
machine-specific properties.
@@ -1954,7 +1949,7 @@
In this case, the recipe that provides
"virtual/xserver" is "xserver-xorg", which
exists in
- <filename>poky/meta/recipes-graphics/xserver-xorg</filename>.
+ <filename>poky/meta/recipes-graphics/xorg-xserver</filename>.
</para></listitem>
<listitem><para>
<ulink url='&YOCTO_DOCS_REF_URL;#var-XSERVER'><filename>XSERVER</filename></ulink>:
@@ -2067,7 +2062,7 @@
<listitem><para>
<ulink url='&YOCTO_DOCS_REF_URL;#var-PREFERRED_VERSION'><filename>PREFERRED_VERSION_linux-yocto</filename></ulink>:
Defines the version of the recipe used
- to build the kernel, which is "4.12" in this
+ to build the kernel, which is "5.0" in this
case.
</para></listitem>
<listitem><para>
@@ -2078,8 +2073,8 @@
</para></listitem>
<listitem><para>
<ulink url='&YOCTO_DOCS_REF_URL;#var-KERNEL_DEVICETREE'><filename>KERNEL_DEVICETREE</filename></ulink>:
- The name of the generated Linux kernel device
- tree (i.e. the <filename>.dtb</filename>) file.
+ The names of the generated Linux kernel device
+ trees (i.e. the <filename>*.dtb</filename>) files.
All the device trees for the various BeagleBone
devices are included.
<!--
@@ -2153,8 +2148,6 @@
when preparing the image using the Wic tool
with the <filename>bootimg-partition</filename>
source plugin.
- In this case, the "u-boot.${UBOOT_SUFFIX}" and
- "MLO" files are installed.
</para></listitem>
</itemizedlist>
</para>
@@ -2169,38 +2162,37 @@
machine configuration:
<literallayout class='monospaced'>
PREFERRED_PROVIDER_virtual/kernel ?= "linux-yocto"
- PREFERRED_VERSION_linux-yocto ?= "4.12%"
+ PREFERRED_VERSION_linux-yocto ?= "5.0%"
</literallayout>
The <filename>meta-yocto-bsp/recipes-kernel/linux</filename>
directory in the layer contains metadata used
to build the kernel.
- In this case, a kernel append file is used to
- override an established kernel recipe, which is
+ In this case, a kernel append file (i.e.
+ <filename>linux-yocto_5.0.bbappend</filename>) is used to
+ override an established kernel recipe (i.e.
+ <filename>linux-yocto_5.0.bb</filename>), which is
located in
- <ulink url='&YOCTO_GIT_URL;/cgit/cgit.cgi/poky/tree/meta/recipes-kernel/linux'></ulink>
- and named
- <filename>linux-yocto_4.12.bb</filename>.
+ <ulink url='&YOCTO_GIT_URL;/cgit/cgit.cgi/poky/tree/meta/recipes-kernel/linux'></ulink>.
</para>
<para>
Following is the contents of the append file:
<literallayout class='monospaced'>
- KBRANCH_genericx86 = "standard/base"
- KBRANCH_genericx86-64 = "standard/base"
+ KBRANCH_genericx86 = "v5.0/standard/base"
+ KBRANCH_genericx86-64 = "v5.0/standard/base"
+ KBRANCH_edgerouter = "v5.0/standard/edgerouter"
+ KBRANCH_beaglebone-yocto = "v5.0/standard/beaglebone"
+ KBRANCH_mpc8315e-rdb = "v5.0/standard/fsl-mpc8315e-rdb"
KMACHINE_genericx86 ?= "common-pc"
KMACHINE_genericx86-64 ?= "common-pc-64"
- KBRANCH_edgerouter = "standard/edgerouter"
- KBRANCH_beaglebone-yocto = "standard/beaglebone"
- KMACHINE_beaglebone-yocto = "beaglebone"
- KBRANCH_mpc8315e-rdb = "standard/fsl-mpc8315e-rdb"
+ KMACHINE_beaglebone-yocto ?= "beaglebone"
- SRCREV_machine_genericx86 ?= "1c4ad569af3e23a77994235435040e322908687f"
- SRCREV_machine_genericx86-64 ?= "1c4ad569af3e23a77994235435040e322908687f"
- SRCREV_machine_edgerouter ?= "257f843ea367744620f1d92910afd2f454e31483"
- SRCREV_machine_beaglebone-yocto ?= "257f843ea367744620f1d92910afd2f454e31483"
- SRCREV_machine_mpc8315e-rdb ?= "014560874f9eb2a86138c9cc35046ff1720485e1"
-
+ SRCREV_machine_genericx86 ?= "3df4aae6074e94e794e27fe7f17451d9353cdf3d"
+ SRCREV_machine_genericx86-64 ?= "3df4aae6074e94e794e27fe7f17451d9353cdf3d"
+ SRCREV_machine_edgerouter ?= "3df4aae6074e94e794e27fe7f17451d9353cdf3d"
+ SRCREV_machine_beaglebone-yocto ?= "3df4aae6074e94e794e27fe7f17451d9353cdf3d"
+ SRCREV_machine_mpc8315e-rdb ?= "8b62af7f252af10588276802c4c6d7c502e875be"
COMPATIBLE_MACHINE_genericx86 = "genericx86"
COMPATIBLE_MACHINE_genericx86-64 = "genericx86-64"
@@ -2208,16 +2200,15 @@
COMPATIBLE_MACHINE_beaglebone-yocto = "beaglebone-yocto"
COMPATIBLE_MACHINE_mpc8315e-rdb = "mpc8315e-rdb"
- LINUX_VERSION_genericx86 = "4.12.20"
- LINUX_VERSION_genericx86-64 = "4.12.20"
- LINUX_VERSION_edgerouter = "4.12.19"
- LINUX_VERSION_beaglebone-yocto = "4.12.19"
- LINUX_VERSION_mpc8315e-rdb = "4.12.19"
+ LINUX_VERSION_genericx86 = "5.0.3"
+ LINUX_VERSION_genericx86-64 = "5.0.3"
+ LINUX_VERSION_edgerouter = "5.0.3"
+ LINUX_VERSION_beaglebone-yocto = "5.0.3"
+ LINUX_VERSION_mpc8315e-rdb = "5.0.3"
</literallayout>
This particular append file works for all the
machines that are part of the
- <filename>meta-yocto-bsp</filename> container
- layer.
+ <filename>meta-yocto-bsp</filename> layer.
The relevant statements are appended with
the "beaglebone-yocto" string.
The OpenEmbedded build system uses these
@@ -2240,15 +2231,6 @@
<ulink url='&YOCTO_DOCS_REF_URL;#var-SRCREV'><filename>SRCREV</filename></ulink>:
Identifies the revision of the source code used
to build the image.
-<!--
- You find out about that point in the kernel source tree by
- doing the following command:
-
- git log ‐‐decorate 257f843ea367744620f1d92910afd2f454e31483
-
- Returns information about the commit, which is usually
- that it is a merge point for a stable kernel release.
--->
</para></listitem>
<listitem><para>
<ulink url='&YOCTO_DOCS_REF_URL;#var-COMPATIBLE_MACHINE'><filename>COMPATIBLE_MACHINE</filename></ulink>:
diff --git a/poky/documentation/dev-manual/dev-manual-common-tasks.xml b/poky/documentation/dev-manual/dev-manual-common-tasks.xml
index 893ef7b..8ddcd5b 100644
--- a/poky/documentation/dev-manual/dev-manual-common-tasks.xml
+++ b/poky/documentation/dev-manual/dev-manual-common-tasks.xml
@@ -1883,7 +1883,8 @@
<ulink url='&YOCTO_DOCS_REF_URL;#ref-tasks-fetch'><filename>do_fetch</filename></ulink>
task uses the prefix of each entry in the
<filename>SRC_URI</filename> variable value to determine which
- fetcher to use to get your source files.
+ <ulink url='&YOCTO_DOCS_BB_URL;#bb-fetchers'>fetcher</ulink>
+ to use to get your source files.
It is the <filename>SRC_URI</filename> variable that triggers
the fetcher.
The
@@ -7387,17 +7388,17 @@
it is based on is by definition incomplete.
The purpose of the command is to allow the generation of
customized images, and as such, was designed to be
- completely extensible through a plug-in interface.
+ completely extensible through a plugin interface.
See the
- "<link linkend='wic-using-the-wic-plug-ins-interface'>Using the Wic Plug-Ins Interface</link>"
- section for information on these plug-ins.
+ "<link linkend='wic-using-the-wic-plugin-interface'>Using the Wic PlugIn Interface</link>"
+ section for information on these plugins.
</para>
<para>
This section provides some background information on Wic,
describes what you need to have in
place to run the tool, provides instruction on how to use
- the Wic utility, provides information on using the Wic plug-ins
+ the Wic utility, provides information on using the Wic plugins
interface, and provides several examples that show how to use
Wic.
</para>
@@ -7792,28 +7793,28 @@
</para>
</section>
- <section id='wic-using-the-wic-plug-ins-interface'>
- <title>Using the Wic Plug-Ins Interface</title>
+ <section id='wic-using-the-wic-plugin-interface'>
+ <title>Using the Wic Plugin Interface</title>
<para>
You can extend and specialize Wic functionality by using
- Wic plug-ins.
- This section explains the Wic plug-in interface.
+ Wic plugins.
+ This section explains the Wic plugin interface.
<note>
- Wic plug-ins consist of "source" and "imager" plug-ins.
- Imager plug-ins are beyond the scope of this section.
+ Wic plugins consist of "source" and "imager" plugins.
+ Imager plugins are beyond the scope of this section.
</note>
</para>
<para>
- Source plug-ins provide a mechanism to customize partition
+ Source plugins provide a mechanism to customize partition
content during the Wic image generation process.
- You can use source plug-ins to map values that you specify
+ You can use source plugins to map values that you specify
using <filename>--source</filename> commands in kickstart
- files (i.e. <filename>*.wks</filename>) to a plug-in
+ files (i.e. <filename>*.wks</filename>) to a plugin
implementation used to populate a given partition.
<note>
- If you use plug-ins that have build-time dependencies
+ If you use plugins that have build-time dependencies
(e.g. native tools, bootloaders, and so forth)
when building a Wic image, you need to specify those
dependencies using the
@@ -7823,43 +7824,43 @@
</para>
<para>
- Source plug-ins are subclasses defined in plug-in files.
- As shipped, the Yocto Project provides several plug-in
+ Source plugins are subclasses defined in plugin files.
+ As shipped, the Yocto Project provides several plugin
files.
- You can see the source plug-in files that ship with the
+ You can see the source plugin files that ship with the
Yocto Project
<ulink url='&YOCTO_GIT_URL;/cgit/cgit.cgi/poky/tree/scripts/lib/wic/plugins/source'>here</ulink>.
- Each of these plug-in files contains source plug-ins that
+ Each of these plugin files contains source plugins that
are designed to populate a specific Wic image partition.
</para>
<para>
- Source plug-ins are subclasses of the
+ Source plugins are subclasses of the
<filename>SourcePlugin</filename> class, which is
defined in the
<filename>poky/scripts/lib/wic/pluginbase.py</filename>
file.
For example, the <filename>BootimgEFIPlugin</filename>
- source plug-in found in the
+ source plugin found in the
<filename>bootimg-efi.py</filename> file is a subclass of
the <filename>SourcePlugin</filename> class, which is found
in the <filename>pluginbase.py</filename> file.
</para>
<para>
- You can also implement source plug-ins in a layer outside
+ You can also implement source plugins in a layer outside
of the Source Repositories (external layer).
- To do so, be sure that your plug-in files are located in
+ To do so, be sure that your plugin files are located in
a directory whose path is
<filename>scripts/lib/wic/plugins/source/</filename>
within your external layer.
- When the plug-in files are located there, the source
- plug-ins they contain are made available to Wic.
+ When the plugin files are located there, the source
+ plugins they contain are made available to Wic.
</para>
<para>
When the Wic implementation needs to invoke a
- partition-specific implementation, it looks for the plug-in
+ partition-specific implementation, it looks for the plugin
with the same name as the <filename>--source</filename>
parameter used in the kickstart file given to that
partition.
@@ -7869,13 +7870,13 @@
part /boot --source bootimg-pcbios --ondisk sda --label boot --active --align 1024
</literallayout>
The methods defined as class members of the matching
- source plug-in (i.e. <filename>bootimg-pcbios</filename>)
- in the <filename>bootimg-pcbios.py</filename> plug-in file
+ source plugin (i.e. <filename>bootimg-pcbios</filename>)
+ in the <filename>bootimg-pcbios.py</filename> plugin file
are used.
</para>
<para>
- To be more concrete, here is the corresponding plug-in
+ To be more concrete, here is the corresponding plugin
definition from the <filename>bootimg-pcbios.py</filename>
file for the previous command along with an example
method called by the Wic implementation when it needs to
@@ -7907,19 +7908,19 @@
.
.
</literallayout>
- If a subclass (plug-in) itself does not implement a
+ If a subclass (plugin) itself does not implement a
particular function, Wic locates and uses the default
version in the superclass.
- It is for this reason that all source plug-ins are derived
+ It is for this reason that all source plugins are derived
from the <filename>SourcePlugin</filename> class.
</para>
<para>
The <filename>SourcePlugin</filename> class defined in
the <filename>pluginbase.py</filename> file defines
- a set of methods that source plug-ins can implement or
+ a set of methods that source plugins can implement or
override.
- Any plug-ins (subclass of
+ Any plugins (subclass of
<filename>SourcePlugin</filename>) that do not implement
a particular method inherit the implementation of the
method from the <filename>SourcePlugin</filename> class.
@@ -7980,11 +7981,11 @@
</para>
<para>
- You can extend the source plug-in mechanism.
- To add more hooks, create more source plug-in methods
+ You can extend the source plugin mechanism.
+ To add more hooks, create more source plugin methods
within <filename>SourcePlugin</filename> and the
corresponding derived subclasses.
- The code that calls the plug-in methods uses the
+ The code that calls the plugin methods uses the
<filename>plugin.get_source_plugin_methods()</filename>
function to find the method or methods needed by the call.
Retrieval of those methods is accomplished by filling up
@@ -9404,7 +9405,7 @@
<para>
Many pieces of software split functionality into optional
- modules (or plug-ins) and the plug-ins that are built
+ modules (or plugins) and the plugins that are built
might depend on configuration options.
To avoid having to duplicate the logic that determines what
modules are available in your recipe or to avoid having
@@ -12489,14 +12490,6 @@
</itemizedlist>
</para>
- <para>
- For debugging information within the popular
- <trademark class='trade'>Eclipse</trademark> IDE, see the
- "<ulink url='&YOCTO_DOCS_SDK_URL;#adt-eclipse'>Working within Eclipse</ulink>"
- section in the Yocto Project Application Development and the
- Extensible Software Development Kit (eSDK) manual.
- </para>
-
<section id='dev-debugging-viewing-logs-from-failed-tasks'>
<title>Viewing Logs from Failed Tasks</title>
@@ -12534,6 +12527,16 @@
<title>Viewing Variable Values</title>
<para>
+ Sometimes you need to know the value of a variable as a
+ result of BitBake's parsing step.
+ This could be because some unexpected behavior occurred
+ in your project.
+ Perhaps an attempt to
+ <ulink url='&YOCTO_DOCS_BB_URL;#modifying-existing-variables'>modify a variable</ulink>
+ did not work out as expected.
+ </para>
+
+ <para>
BitBake's <filename>-e</filename> option is used to display
variable values after parsing.
The following command displays the variable values after the
@@ -15059,12 +15062,12 @@
</para>
<para>
- Specifying audio and video plug-ins as part of the
+ Specifying audio and video plugins as part of the
<filename>COMMERCIAL_AUDIO_PLUGINS</filename> and
<filename>COMMERCIAL_VIDEO_PLUGINS</filename> statements
(along with the enabling
<filename>LICENSE_FLAGS_WHITELIST</filename>) includes the
- plug-ins or components into built images, thus adding
+ plugins or components into built images, thus adding
support for media formats or components.
</para>
</section>
diff --git a/poky/documentation/dev-manual/dev-manual-eclipse-customization.xsl b/poky/documentation/dev-manual/dev-manual-eclipse-customization.xsl
deleted file mode 100644
index 6d7b5fb..0000000
--- a/poky/documentation/dev-manual/dev-manual-eclipse-customization.xsl
+++ /dev/null
@@ -1,35 +0,0 @@
-<?xml version='1.0'?>
-<xsl:stylesheet
- xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
- xmlns="http://www.w3.org/1999/xhtml"
- xmlns:fo="http://www.w3.org/1999/XSL/Format"
- version="1.0">
-
- <xsl:import href="http://downloads.yoctoproject.org/mirror/docbook-mirror/docbook-xsl-1.76.1/eclipse/eclipse3.xsl" />
-
-<!--
-
- <xsl:import href="../template/1.76.1/docbook-xsl-1.76.1/eclipse/eclipse3.xsl" />
-
- <xsl:import
- href="http://docbook.sourceforge.net/release/xsl/1.76.1/eclipse/eclipse3.xsl" />
-
--->
-
- <xsl:param name="chunker.output.indent" select="'yes'"/>
- <xsl:param name="chunk.quietly" select="1"/>
- <xsl:param name="chunk.first.sections" select="1"/>
- <xsl:param name="chunk.section.depth" select="10"/>
- <xsl:param name="use.id.as.filename" select="1"/>
- <xsl:param name="ulink.target" select="'_self'" />
- <xsl:param name="base.dir" select="'html/dev-manual/'"/>
- <xsl:param name="html.stylesheet" select="'../book.css'"/>
- <xsl:param name="eclipse.manifest" select="0"/>
- <xsl:param name="create.plugin.xml" select="0"/>
- <xsl:param name="suppress.navigation" select="1"/>
- <xsl:param name="generate.index" select="0"/>
- <xsl:param name="chapter.autolabel" select="1" />
- <xsl:param name="appendix.autolabel" select="1" />
- <xsl:param name="section.autolabel" select="1" />
- <xsl:param name="section.label.includes.component.label" select="1" />
-</xsl:stylesheet>
diff --git a/poky/documentation/dev-manual/dev-manual-start.xml b/poky/documentation/dev-manual/dev-manual-start.xml
index 6ec5c3c..5625dfc 100644
--- a/poky/documentation/dev-manual/dev-manual-start.xml
+++ b/poky/documentation/dev-manual/dev-manual-start.xml
@@ -176,14 +176,6 @@
isolated applications.
</para></listitem>
<listitem><para>
- When possible, use the Yocto Project plug-in for the
- <trademark class='trade'>Eclipse</trademark> IDE
- and SDK development practices.
- For more information, see the
- <ulink url='&YOCTO_DOCS_SDK_URL;'>Yocto Project Application Development and the Extensible Software Development Kit (eSDK)</ulink>
- manual.
- </para></listitem>
- <listitem><para>
Keep your cross-development toolchains updated.
You can do this through provisioning either as new
toolchain downloads or as updates through a package
@@ -421,8 +413,7 @@
further steps are necessary depending on what you want to
accomplish.
See the following references for information on how to prepare for
- Board Support Package (BSP) development, kernel development, and
- development using the <trademark class='trade'>Eclipse</trademark> IDE:
+ Board Support Package (BSP) development and kernel development:
<itemizedlist>
<listitem><para>
<emphasis>BSP Development:</emphasis>
@@ -437,13 +428,6 @@
"<ulink url='&YOCTO_DOCS_KERNEL_DEV_URL;#preparing-the-build-host-to-work-on-the-kernel'>Preparing the Build Host to Work on the Kernel</ulink>"
section in the Yocto Project Linux Kernel Development Manual.
</para></listitem>
- <listitem><para>
- <emphasis>Eclipse Development:</emphasis>
- See the
- "<ulink url='&YOCTO_DOCS_SDK_URL;#sdk-eclipse-project'>Developing Applications Using <trademark class='trade'>Eclipse</trademark></ulink>"
- Chapter in the Yocto Project Application Development and the
- Extensible Software Development Kit (eSDK) manual.
- </para></listitem>
</itemizedlist>
</para>
@@ -767,7 +751,7 @@
<ulink url='&YOCTO_DL_URL;/releases'></ulink> to access the
Index of Releases.
The list represents released components (e.g.
- <filename>eclipse-plugin</filename>,
+ <filename>bitbake</filename>,
<filename>sato</filename>, and so on).
<note>
The <filename>yocto</filename> directory contains the
@@ -864,8 +848,7 @@
Yocto Project maintains an area for nightly builds that contains
tarball releases at <ulink url='&YOCTO_AB_NIGHTLY_URL;'/>.
These builds include Yocto Project releases ("poky"),
- toolchains, Yocto Project plugins for Eclipse, and builds for
- supported machines.
+ toolchains, and builds for supported machines.
</para>
<para>
@@ -1130,6 +1113,7 @@
yocto-2.5.3
yocto-2.6
yocto-2.6.1
+ yocto-2.6.2
yocto-2.7
yocto_1.5_M5.rc8
</literallayout>
diff --git a/poky/documentation/dev-manual/dev-manual.xml b/poky/documentation/dev-manual/dev-manual.xml
index 5dda016..42deff1 100644
--- a/poky/documentation/dev-manual/dev-manual.xml
+++ b/poky/documentation/dev-manual/dev-manual.xml
@@ -113,9 +113,14 @@
</revision>
<revision>
<revnumber>2.7</revnumber>
- <date>&REL_MONTH_YEAR;</date>
+ <date>May 2019</date>
<revremark>Released with the Yocto Project 2.7 Release.</revremark>
</revision>
+ <revision>
+ <revnumber>2.8</revnumber>
+ <date>&REL_MONTH_YEAR;</date>
+ <revremark>Released with the Yocto Project 2.8 Release.</revremark>
+ </revision>
</revhistory>
<copyright>
diff --git a/poky/documentation/kernel-dev/kernel-dev-eclipse-customization.xsl b/poky/documentation/kernel-dev/kernel-dev-eclipse-customization.xsl
deleted file mode 100644
index 3c56a5a..0000000
--- a/poky/documentation/kernel-dev/kernel-dev-eclipse-customization.xsl
+++ /dev/null
@@ -1,35 +0,0 @@
-<?xml version='1.0'?>
-<xsl:stylesheet
- xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
- xmlns="http://www.w3.org/1999/xhtml"
- xmlns:fo="http://www.w3.org/1999/XSL/Format"
- version="1.0">
-
- <xsl:import href="http://downloads.yoctoproject.org/mirror/docbook-mirror/docbook-xsl-1.76.1/eclipse/eclipse3.xsl" />
-
-<!--
-
- <xsl:import href="../template/1.76.1/docbook-xsl-1.76.1/eclipse/eclipse3.xsl" />
-
- <xsl:import
- href="http://docbook.sourceforge.net/release/xsl/1.76.1/eclipse/eclipse3.xsl" />
-
--->
-
- <xsl:param name="chunker.output.indent" select="'yes'"/>
- <xsl:param name="chunk.quietly" select="1"/>
- <xsl:param name="chunk.first.sections" select="1"/>
- <xsl:param name="chunk.section.depth" select="10"/>
- <xsl:param name="use.id.as.filename" select="1"/>
- <xsl:param name="ulink.target" select="'_self'" />
- <xsl:param name="base.dir" select="'html/kernel-dev/'"/>
- <xsl:param name="html.stylesheet" select="'../book.css'"/>
- <xsl:param name="eclipse.manifest" select="0"/>
- <xsl:param name="create.plugin.xml" select="0"/>
- <xsl:param name="suppress.navigation" select="1"/>
- <xsl:param name="generate.index" select="0"/>
- <xsl:param name="chapter.autolabel" select="1" />
- <xsl:param name="appendix.autolabel">A</xsl:param>
- <xsl:param name="section.autolabel" select="1" />
- <xsl:param name="section.label.includes.component.label" select="1" />
-</xsl:stylesheet>
diff --git a/poky/documentation/kernel-dev/kernel-dev.xml b/poky/documentation/kernel-dev/kernel-dev.xml
index 33553df..c43330a 100644
--- a/poky/documentation/kernel-dev/kernel-dev.xml
+++ b/poky/documentation/kernel-dev/kernel-dev.xml
@@ -98,9 +98,14 @@
</revision>
<revision>
<revnumber>2.7</revnumber>
- <date>&REL_MONTH_YEAR;</date>
+ <date>May 2019</date>
<revremark>Released with the Yocto Project 2.7 Release.</revremark>
</revision>
+ <revision>
+ <revnumber>2.8</revnumber>
+ <date>&REL_MONTH_YEAR;</date>
+ <revremark>Released with the Yocto Project 2.8 Release.</revremark>
+ </revision>
</revhistory>
<copyright>
diff --git a/poky/documentation/mega-manual/figures/index-downloads.png b/poky/documentation/mega-manual/figures/index-downloads.png
old mode 100644
new mode 100755
index 96303b8..d8d4475
--- a/poky/documentation/mega-manual/figures/index-downloads.png
+++ b/poky/documentation/mega-manual/figures/index-downloads.png
Binary files differ
diff --git a/poky/documentation/mega-manual/figures/lttngmain0.png b/poky/documentation/mega-manual/figures/lttngmain0.png
deleted file mode 100644
index 5f60113..0000000
--- a/poky/documentation/mega-manual/figures/lttngmain0.png
+++ /dev/null
Binary files differ
diff --git a/poky/documentation/mega-manual/figures/sdk-eclipse-dev-flow.png b/poky/documentation/mega-manual/figures/sdk-eclipse-dev-flow.png
deleted file mode 100644
index 9f986e0..0000000
--- a/poky/documentation/mega-manual/figures/sdk-eclipse-dev-flow.png
+++ /dev/null
Binary files differ
diff --git a/poky/documentation/mega-manual/mega-manual.xml b/poky/documentation/mega-manual/mega-manual.xml
index 2c518f9..b66b933 100644
--- a/poky/documentation/mega-manual/mega-manual.xml
+++ b/poky/documentation/mega-manual/mega-manual.xml
@@ -84,9 +84,14 @@
</revision>
<revision>
<revnumber>2.7</revnumber>
- <date>&REL_MONTH_YEAR;</date>
+ <date>May 2019</date>
<revremark>Released with the Yocto Project 2.7 Release.</revremark>
</revision>
+ <revision>
+ <revnumber>2.8</revnumber>
+ <date>&REL_MONTH_YEAR;</date>
+ <revremark>Released with the Yocto Project 2.8 Release.</revremark>
+ </revision>
</revhistory>
<copyright>
@@ -201,15 +206,11 @@
<xi:include
xmlns:xi="http://www.w3.org/2003/XInclude" href="../sdk-manual/sdk-working-projects.xml"/>
<xi:include
- xmlns:xi="http://www.w3.org/2003/XInclude" href="../sdk-manual/sdk-eclipse-project.xml"/>
- <xi:include
xmlns:xi="http://www.w3.org/2003/XInclude" href="../sdk-manual/sdk-appendix-obtain.xml"/>
<xi:include
xmlns:xi="http://www.w3.org/2003/XInclude" href="../sdk-manual/sdk-appendix-customizing.xml"/>
<xi:include
xmlns:xi="http://www.w3.org/2003/XInclude" href="../sdk-manual/sdk-appendix-customizing-standard.xml"/>
- <xi:include
- xmlns:xi="http://www.w3.org/2003/XInclude" href="../sdk-manual/sdk-appendix-neon.xml"/>
<!-- Includes bsp-guide title image and then bsp-guide chapters -->
diff --git a/poky/documentation/overview-manual/figures/index-downloads.png b/poky/documentation/overview-manual/figures/index-downloads.png
old mode 100644
new mode 100755
index 96303b8..d8d4475
--- a/poky/documentation/overview-manual/figures/index-downloads.png
+++ b/poky/documentation/overview-manual/figures/index-downloads.png
Binary files differ
diff --git a/poky/documentation/overview-manual/overview-manual-concepts.xml b/poky/documentation/overview-manual/overview-manual-concepts.xml
index 5aca215..8a1b38c 100644
--- a/poky/documentation/overview-manual/overview-manual-concepts.xml
+++ b/poky/documentation/overview-manual/overview-manual-concepts.xml
@@ -925,14 +925,16 @@
<para>
Another place the build system can get source files from is
- through an SCM such as Git or Subversion.
- In this case, a repository is cloned or checked out.
+ through a Source Control Manager (SCM) such as Git or
+ Subversion.
+ In such cases, a repository is cloned or checked out.
The
<ulink url='&YOCTO_DOCS_REF_URL;#ref-tasks-fetch'><filename>do_fetch</filename></ulink>
task inside BitBake uses
the <ulink url='&YOCTO_DOCS_REF_URL;#var-SRC_URI'><filename>SRC_URI</filename></ulink>
variable and the argument's prefix to determine the correct
- fetcher module.
+ <ulink url='&YOCTO_DOCS_BB_URL;#bb-fetchers'><filename>fetcher</filename></ulink>
+ module.
<note>
For information on how to have the OpenEmbedded build
system generate tarballs for Git repositories and place
@@ -940,7 +942,7 @@
<ulink url='&YOCTO_DOCS_REF_URL;#var-DL_DIR'><filename>DL_DIR</filename></ulink>
directory, see the
<ulink url='&YOCTO_DOCS_REF_URL;#var-BB_GENERATE_MIRROR_TARBALLS'><filename>BB_GENERATE_MIRROR_TARBALLS</filename></ulink>
- variable.
+ variable in the Yocto Project Reference Manual.
</note>
</para>
diff --git a/poky/documentation/overview-manual/overview-manual-development-environment.xml b/poky/documentation/overview-manual/overview-manual-development-environment.xml
index bba93cc..2f1bd16 100644
--- a/poky/documentation/overview-manual/overview-manual-development-environment.xml
+++ b/poky/documentation/overview-manual/overview-manual-development-environment.xml
@@ -166,22 +166,6 @@
section in the Yocto Project Linux Kernel Development Manual.
</para></listitem>
<listitem><para>
- <emphasis>Using the <trademark class='trade'>Eclipse</trademark> IDE:</emphasis>
- One of two Yocto Project development methods that involves an
- interface that effectively puts the Yocto Project into the
- background is the popular Eclipse IDE.
- This method of development is advantageous if you are already
- familiar with working within Eclipse.
- Development is supported through a plugin that you install
- onto your development host.</para>
-
- <para>For steps that show you how to set up your development
- host to use the Eclipse Yocto Project plugin, see the
- "<ulink url='&YOCTO_DOCS_SDK_URL;#sdk-eclipse-project'>Developing Applications Using <trademark class='trade'>Eclipse</trademark></ulink>"
- Chapter in the Yocto Project Application Development and the
- Extensible Software Development Kit (eSDK) manual.
- </para></listitem>
- <listitem><para>
<emphasis>Using Toaster:</emphasis>
The other Yocto Project development method that involves an
interface that effectively puts the Yocto Project into the
@@ -276,11 +260,10 @@
<emphasis>
<ulink url='&YOCTO_DL_URL;/releases/'>Index of /releases:</ulink>
</emphasis>
- This is an index of releases such as
- the <trademark class='trade'>Eclipse</trademark>
- Yocto Plug-in, miscellaneous support, Poky, Pseudo, installers
- for cross-development toolchains, and all released versions of
- Yocto Project in the form of images or tarballs.
+ This is an index of releases such as Poky, Pseudo, installers
+ for cross-development toolchains, miscellaneous support
+ and all released versions of Yocto Project in the form of
+ images or tarballs.
Downloading and extracting these files does not produce a local
copy of the Git repository but rather a snapshot of a
particular release or image.</para>
diff --git a/poky/documentation/overview-manual/overview-manual-eclipse-customization.xsl b/poky/documentation/overview-manual/overview-manual-eclipse-customization.xsl
deleted file mode 100644
index aaf99ea..0000000
--- a/poky/documentation/overview-manual/overview-manual-eclipse-customization.xsl
+++ /dev/null
@@ -1,35 +0,0 @@
-<?xml version='1.0'?>
-<xsl:stylesheet
- xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
- xmlns="http://www.w3.org/1999/xhtml"
- xmlns:fo="http://www.w3.org/1999/XSL/Format"
- version="1.0">
-
- <xsl:import href="http://downloads.yoctoproject.org/mirror/docbook-mirror/docbook-xsl-1.76.1/eclipse/eclipse3.xsl" />
-
-<!--
-
- <xsl:import href="../template/1.76.1/docbook-xsl-1.76.1/eclipse/eclipse3.xsl" />
-
- <xsl:import
- href="http://docbook.sourceforge.net/release/xsl/1.76.1/eclipse/eclipse3.xsl" />
-
--->
-
- <xsl:param name="chunker.output.indent" select="'yes'"/>
- <xsl:param name="chunk.quietly" select="1"/>
- <xsl:param name="chunk.first.sections" select="1"/>
- <xsl:param name="chunk.section.depth" select="10"/>
- <xsl:param name="use.id.as.filename" select="1"/>
- <xsl:param name="ulink.target" select="'_self'" />
- <xsl:param name="base.dir" select="'html/overview-manual/'"/>
- <xsl:param name="html.stylesheet" select="'../book.css'"/>
- <xsl:param name="eclipse.manifest" select="0"/>
- <xsl:param name="create.plugin.xml" select="0"/>
- <xsl:param name="suppress.navigation" select="1"/>
- <xsl:param name="generate.index" select="0"/>
- <xsl:param name="chapter.autolabel" select="1" />
- <xsl:param name="appendix.autolabel" select="1" />
- <xsl:param name="section.autolabel" select="1" />
- <xsl:param name="section.label.includes.component.label" select="1" />
-</xsl:stylesheet>
diff --git a/poky/documentation/overview-manual/overview-manual-yp-intro.xml b/poky/documentation/overview-manual/overview-manual-yp-intro.xml
index 254f191..dbf62cc 100644
--- a/poky/documentation/overview-manual/overview-manual-yp-intro.xml
+++ b/poky/documentation/overview-manual/overview-manual-yp-intro.xml
@@ -502,35 +502,6 @@
Manual.
</para></listitem>
<listitem><para>
- <emphasis><trademark class='trade'>Eclipse</trademark> IDE Plug-in:</emphasis>
- This plug-in enables you to use the popular Eclipse
- Integrated Development Environment (IDE), which allows
- for development using the Yocto Project all within the
- Eclipse IDE.
- You can work within Eclipse to cross-compile, deploy,
- and execute your output into a QEMU emulation session
- as well as onto actual target hardware.</para>
-
- <para>The environment also supports performance
- enhancing tools that allow you to perform remote
- profiling, tracing, collection of power data,
- collection of latency data, and collection of
- performance data.</para>
-
- <para>Once you enable the plug-in, standard Eclipse
- functions automatically use the cross-toolchain
- and target system libraries.
- You can build applications using any of these
- libraries.</para>
-
- <para>For more information on the Eclipse plug-in,
- see the
- "<ulink url='&YOCTO_DOCS_SDK_URL;#adt-eclipse'>Working Within Eclipse</ulink>"
- section in the Yocto Project Application Development
- and the Extensible Software Development Kit (eSDK)
- manual.
- </para></listitem>
- <listitem><para>
<emphasis>Toaster:</emphasis>
Toaster is a web interface to the Yocto Project
OpenEmbedded build system.
@@ -953,20 +924,6 @@
see the
<ulink url='&YOCTO_DOCS_TOAST_URL;'>Toaster User Manual</ulink>.
</para></listitem>
- <listitem><para>
- <emphasis><trademark class='trade'>Eclipse</trademark> IDE:</emphasis>
- If your Build Host supports and runs the popular
- Eclipse IDE, you can install the Yocto Project Eclipse
- plug-in and use the Yocto Project to develop software.
- The plug-in integrates the Yocto Project functionality
- into Eclipse development practices.</para>
-
- <para>For information about how to install and use the
- Yocto Project Eclipse plug-in, see the
- "<ulink url='&YOCTO_DOCS_SDK_URL;#sdk-eclipse-project'>Developing Applications Using Eclipse</ulink>"
- chapter in the Yocto Project Application Development and
- the Extensible Software Development Kit (eSDK) Manual.
- </para></listitem>
</itemizedlist>
</para>
</section>
diff --git a/poky/documentation/overview-manual/overview-manual.xml b/poky/documentation/overview-manual/overview-manual.xml
index b23c394..e74ba8d 100644
--- a/poky/documentation/overview-manual/overview-manual.xml
+++ b/poky/documentation/overview-manual/overview-manual.xml
@@ -37,9 +37,14 @@
<revremark>The initial document released with the Yocto Project 2.5 Release.</revremark>
</revision>
<revision>
- <revnumber>2.6</revnumber>
+ <revnumber>2.7</revnumber>
+ <date>May 2019</date>
+ <revremark>Released with the Yocto Project 2.7 Release.</revremark>
+ </revision>
+ <revision>
+ <revnumber>2.8</revnumber>
<date>&REL_MONTH_YEAR;</date>
- <revremark>Released with the Yocto Project 2.6 Release.</revremark>
+ <revremark>Released with the Yocto Project 2.8 Release.</revremark>
</revision>
</revhistory>
diff --git a/poky/documentation/poky.ent b/poky/documentation/poky.ent
index 6326012..b5f6009 100644
--- a/poky/documentation/poky.ent
+++ b/poky/documentation/poky.ent
@@ -1,12 +1,12 @@
-<!ENTITY DISTRO "2.7">
-<!ENTITY DISTRO_COMPRESSED "27">
-<!ENTITY DISTRO_NAME_NO_CAP "warrior">
-<!ENTITY DISTRO_NAME "Warrior">
-<!ENTITY DISTRO_NAME_NO_CAP_MINUS_ONE "thud">
-<!ENTITY DISTRO_NAME_MINUS_ONE "Thud">
-<!ENTITY YOCTO_DOC_VERSION "2.7">
-<!ENTITY YOCTO_DOC_VERSION_MINUS_ONE "2.6">
-<!ENTITY DISTRO_REL_TAG "yocto-2.7">
+<!ENTITY DISTRO "2.8">
+<!ENTITY DISTRO_COMPRESSED "28">
+<!ENTITY DISTRO_NAME_NO_CAP "zeus">
+<!ENTITY DISTRO_NAME "Zeus">
+<!ENTITY DISTRO_NAME_NO_CAP_MINUS_ONE "warrior">
+<!ENTITY DISTRO_NAME_MINUS_ONE "Warrior">
+<!ENTITY YOCTO_DOC_VERSION "2.8">
+<!ENTITY YOCTO_DOC_VERSION_MINUS_ONE "2.7">
+<!ENTITY DISTRO_REL_TAG "yocto-2.8">
<!ENTITY METAINTELVERSION "9.0">
<!ENTITY REL_MONTH_YEAR "TBD">
<!ENTITY META_INTEL_REL_TAG "&METAINTELVERSION;-&DISTRO_NAME_NO_CAP;-&YOCTO_DOC_VERSION;">
@@ -27,15 +27,6 @@
<!ENTITY OE_DOCS_URL "http://docs.openembedded.org">
<!ENTITY OH_HOME_URL "http://o-hand.com">
<!ENTITY BITBAKE_HOME_URL "http://developer.berlios.de/projects/bitbake/">
-<!ENTITY ECLIPSE_MAIN_URL "http://www.eclipse.org/downloads">
-<!ENTITY ECLIPSE_DL_URL "http://download.eclipse.org">
-<!ENTITY ECLIPSE_DL_PLUGIN_URL "&YOCTO_DL_URL;/releases/eclipse-plugin/&DISTRO;">
-<!ENTITY ECLIPSE_UPDATES_URL "&ECLIPSE_DL_URL;/tm/updates/3.3">
-<!ENTITY ECLIPSE_INDIGO_URL "&ECLIPSE_DL_URL;/releases/indigo">
-<!ENTITY ECLIPSE_JUNO_URL "&ECLIPSE_DL_URL;/releases/juno">
-<!ENTITY ECLIPSE_LUNA_URL "&ECLIPSE_DL_URL;/releases/luna">
-<!ENTITY ECLIPSE_KEPLER_URL "&ECLIPSE_DL_URL;/releases/kepler">
-<!ENTITY ECLIPSE_INDIGO_CDT_URL "&ECLIPSE_DL_URL;/tools/cdt/releases/indigo">
<!ENTITY YOCTO_DOCS_URL "&YOCTO_HOME_URL;/docs">
<!ENTITY YOCTO_SOURCES_URL "&YOCTO_HOME_URL;/sources/">
<!ENTITY YOCTO_AB_PORT_URL "https://autobuilder.yocto.io/">
@@ -43,7 +34,6 @@
<!ENTITY YOCTO_POKY_URL "&YOCTO_DL_URL;/releases/poky/">
<!ENTITY YOCTO_RELEASE_DL_URL "&YOCTO_DL_URL;/releases/yocto/yocto-&DISTRO;">
<!ENTITY YOCTO_TOOLCHAIN_DL_URL "&YOCTO_RELEASE_DL_URL;/toolchain/">
-<!ENTITY YOCTO_ECLIPSE_DL_URL "&YOCTO_RELEASE_DL_URL;/eclipse-plugin/">
<!ENTITY YOCTO_ADTINSTALLER_DL_URL "&YOCTO_RELEASE_DL_URL;/adt-installer">
<!ENTITY YOCTO_POKY_DL_URL "&YOCTO_RELEASE_DL_URL;/&YOCTO_POKY;.tar.bz2">
<!ENTITY YOCTO_MACHINES_DL_URL "&YOCTO_RELEASE_DL_URL;/machines">
diff --git a/poky/documentation/profile-manual/figures/lttngmain0.png b/poky/documentation/profile-manual/figures/lttngmain0.png
deleted file mode 100644
index 5f60113..0000000
--- a/poky/documentation/profile-manual/figures/lttngmain0.png
+++ /dev/null
Binary files differ
diff --git a/poky/documentation/profile-manual/profile-manual-eclipse-customization.xsl b/poky/documentation/profile-manual/profile-manual-eclipse-customization.xsl
deleted file mode 100644
index a898281..0000000
--- a/poky/documentation/profile-manual/profile-manual-eclipse-customization.xsl
+++ /dev/null
@@ -1,35 +0,0 @@
-<?xml version='1.0'?>
-<xsl:stylesheet
- xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
- xmlns="http://www.w3.org/1999/xhtml"
- xmlns:fo="http://www.w3.org/1999/XSL/Format"
- version="1.0">
-
- <xsl:import href="http://downloads.yoctoproject.org/mirror/docbook-mirror/docbook-xsl-1.76.1/eclipse/eclipse3.xsl" />
-
-<!--
-
- <xsl:import href="../template/1.76.1/docbook-xsl-1.76.1/eclipse/eclipse3.xsl" />
-
- <xsl:import
- href="http://docbook.sourceforge.net/release/xsl/1.76.1/eclipse/eclipse3.xsl" />
-
--->
-
- <xsl:param name="chunker.output.indent" select="'yes'"/>
- <xsl:param name="chunk.quietly" select="1"/>
- <xsl:param name="chunk.first.sections" select="1"/>
- <xsl:param name="chunk.section.depth" select="10"/>
- <xsl:param name="use.id.as.filename" select="1"/>
- <xsl:param name="ulink.target" select="'_self'" />
- <xsl:param name="base.dir" select="'html/profile-manual/'"/>
- <xsl:param name="html.stylesheet" select="'../book.css'"/>
- <xsl:param name="eclipse.manifest" select="0"/>
- <xsl:param name="create.plugin.xml" select="0"/>
- <xsl:param name="suppress.navigation" select="1"/>
- <xsl:param name="generate.index" select="0"/>
- <xsl:param name="chapter.autolabel" select="1" />
- <xsl:param name="appendix.autolabel">A</xsl:param>
- <xsl:param name="section.autolabel" select="1" />
- <xsl:param name="section.label.includes.component.label" select="1" />
-</xsl:stylesheet>
diff --git a/poky/documentation/profile-manual/profile-manual-usage.xml b/poky/documentation/profile-manual/profile-manual-usage.xml
index a1b5651..5999b29 100644
--- a/poky/documentation/profile-manual/profile-manual-usage.xml
+++ b/poky/documentation/profile-manual/profile-manual-usage.xml
@@ -2350,22 +2350,8 @@
<para>
For this section, we'll assume you've already performed the
basic setup outlined in the General Setup section.
- </para>
-
- <para>
LTTng is run on the target system by ssh'ing to it.
- However, if you want to see the traces graphically,
- install Eclipse as described in section
- "<link linkend='manually-copying-a-trace-to-the-host-and-viewing-it-in-eclipse'>Manually copying a trace to the host and viewing it in Eclipse (i.e. using Eclipse without network support)</link>"
- and follow the directions to manually copy traces to the host and
- view them in Eclipse (i.e. using Eclipse without network support).
</para>
-
- <note>
- Be sure to download and install/run the 'SR1' or later Juno release
- of eclipse e.g.:
- <ulink url='http://www.eclipse.org/downloads/download.php?file=/technology/epp/downloads/release/juno/SR1/eclipse-cpp-juno-SR1-linux-gtk-x86_64.tar.gz'>http://www.eclipse.org/downloads/download.php?file=/technology/epp/downloads/release/juno/SR1/eclipse-cpp-juno-SR1-linux-gtk-x86_64.tar.gz</ulink>
- </note>
</section>
<section id='collecting-and-viewing-traces'>
@@ -2564,163 +2550,6 @@
</para>
</section>
- <section id='manually-copying-a-trace-to-the-host-and-viewing-it-in-eclipse'>
- <title>Manually copying a trace to the host and viewing it in Eclipse (i.e. using Eclipse without network support)</title>
-
- <para>
- If you already have an LTTng trace on a remote target and
- would like to view it in Eclipse on the host, you can easily
- copy it from the target to the host and import it into
- Eclipse to view it using the LTTng Eclipse plug-in already
- bundled in the Eclipse (Juno SR1 or greater).
- </para>
-
- <para>
- Using the trace we created in the previous section, archive
- it and copy it to your host system:
- <literallayout class='monospaced'>
- root@crownbay:~/lttng-traces# tar zcvf auto-20121015-232120.tar.gz auto-20121015-232120
- auto-20121015-232120/
- auto-20121015-232120/kernel/
- auto-20121015-232120/kernel/metadata
- auto-20121015-232120/kernel/channel0_1
- auto-20121015-232120/kernel/channel0_0
-
- $ scp root@192.168.1.47:lttng-traces/auto-20121015-232120.tar.gz .
- root@192.168.1.47's password:
- auto-20121015-232120.tar.gz 100% 1566KB 1.5MB/s 00:01
- </literallayout>
- Unarchive it on the host:
- <literallayout class='monospaced'>
- $ gunzip -c auto-20121015-232120.tar.gz | tar xvf -
- auto-20121015-232120/
- auto-20121015-232120/kernel/
- auto-20121015-232120/kernel/metadata
- auto-20121015-232120/kernel/channel0_1
- auto-20121015-232120/kernel/channel0_0
- </literallayout>
- We can now import the trace into Eclipse and view it:
- <orderedlist>
- <listitem><para>First, start eclipse and open the
- 'LTTng Kernel' perspective by selecting the following
- menu item:
- <literallayout class='monospaced'>
- Window | Open Perspective | Other...
- </literallayout></para></listitem>
- <listitem><para>In the dialog box that opens, select
- 'LTTng Kernel' from the list.</para></listitem>
- <listitem><para>Back at the main menu, select the
- following menu item:
- <literallayout class='monospaced'>
- File | New | Project...
- </literallayout></para></listitem>
- <listitem><para>In the dialog box that opens, select
- the 'Tracing | Tracing Project' wizard and press
- 'Next>'.</para></listitem>
- <listitem><para>Give the project a name and press
- 'Finish'.</para></listitem>
- <listitem><para>In the 'Project Explorer' pane under
- the project you created, right click on the
- 'Traces' item.</para></listitem>
- <listitem><para>Select 'Import..." and in the dialog
- that's displayed:</para></listitem>
- <listitem><para>Browse the filesystem and find the
- select the 'kernel' directory containing the trace
- you copied from the target
- e.g. auto-20121015-232120/kernel</para></listitem>
- <listitem><para>'Checkmark' the directory in the tree
- that's displayed for the trace</para></listitem>
- <listitem><para>Below that, select 'Common Trace Format:
- Kernel Trace' for the 'Trace Type'</para></listitem>
- <listitem><para>Press 'Finish' to close the dialog
- </para></listitem>
- <listitem><para>Back in the 'Project Explorer' pane,
- double-click on the 'kernel' item for the
- trace you just imported under 'Traces'
- </para></listitem>
- </orderedlist>
- You should now see your trace data displayed graphically
- in several different views in Eclipse:
- </para>
-
- <para>
- <imagedata fileref="figures/lttngmain0.png" width="6in" depth="6in" align="center" scalefit="1" />
- </para>
-
- <para>
- You can access extensive help information on how to use
- the LTTng plug-in to search and analyze captured traces via
- the Eclipse help system:
- <literallayout class='monospaced'>
- Help | Help Contents | LTTng Plug-in User Guide
- </literallayout>
- </para>
- </section>
-
- <section id='collecting-and-viewing-a-trace-in-eclipse'>
- <title>Collecting and viewing a trace in Eclipse</title>
-
- <note>
- This section on collecting traces remotely doesn't currently
- work because of Eclipse 'RSE' connectivity problems. Manually
- tracing on the target, copying the trace files to the host,
- and viewing the trace in Eclipse on the host as outlined in
- previous steps does work however - please use the manual
- steps outlined above to view traces in Eclipse.
- </note>
-
- <para>
- In order to trace a remote target, you also need to add
- a 'tracing' group on the target and connect as a user
- who's part of that group e.g:
- <literallayout class='monospaced'>
- # adduser tomz
- # groupadd -r tracing
- # usermod -a -G tracing tomz
- </literallayout>
- <orderedlist>
- <listitem><para>First, start eclipse and open the
- 'LTTng Kernel' perspective by selecting the following
- menu item:
- <literallayout class='monospaced'>
- Window | Open Perspective | Other...
- </literallayout></para></listitem>
- <listitem><para>In the dialog box that opens, select
- 'LTTng Kernel' from the list.</para></listitem>
- <listitem><para>Back at the main menu, select the
- following menu item:
- <literallayout class='monospaced'>
- File | New | Project...
- </literallayout></para></listitem>
- <listitem><para>In the dialog box that opens, select
- the 'Tracing | Tracing Project' wizard and
- press 'Next>'.</para></listitem>
- <listitem><para>Give the project a name and press
- 'Finish'. That should result in an entry in the
- 'Project' subwindow.</para></listitem>
- <listitem><para>In the 'Control' subwindow just below
- it, press 'New Connection'.</para></listitem>
- <listitem><para>Add a new connection, giving it the
- hostname or IP address of the target system.
- </para></listitem>
- <listitem><para>Provide the username and password
- of a qualified user (a member of the 'tracing' group)
- or root account on the target system.
- </para></listitem>
- <listitem><para>Provide appropriate answers to whatever
- else is asked for e.g. 'secure storage password'
- can be anything you want.
- If you get an 'RSE Error' it may be due to proxies.
- It may be possible to get around the problem by
- changing the following setting:
- <literallayout class='monospaced'>
- Window | Preferences | Network Connections
- </literallayout>
- Switch 'Active Provider' to 'Direct'
- </para></listitem>
- </orderedlist>
- </para>
- </section>
</section>
<section id='lltng-documentation'>
@@ -2742,15 +2571,6 @@
You can find a "Getting Started" link on this site that takes
you to an LTTng Quick Start.
</para>
-
- <para>
- Finally, you can access extensive help information on how to use
- the LTTng plug-in to search and analyze captured traces via the
- Eclipse help system:
- <literallayout class='monospaced'>
- Help | Help Contents | LTTng Plug-in User Guide
- </literallayout>
- </para>
</section>
</section>
diff --git a/poky/documentation/profile-manual/profile-manual.xml b/poky/documentation/profile-manual/profile-manual.xml
index af2c7ba..c6e8baf 100644
--- a/poky/documentation/profile-manual/profile-manual.xml
+++ b/poky/documentation/profile-manual/profile-manual.xml
@@ -98,9 +98,14 @@
</revision>
<revision>
<revnumber>2.7</revnumber>
- <date>&REL_MONTH_YEAR;</date>
+ <date>May 2019</date>
<revremark>Released with the Yocto Project 2.7 Release.</revremark>
</revision>
+ <revision>
+ <revnumber>2.8</revnumber>
+ <date>&REL_MONTH_YEAR;</date>
+ <revremark>Released with the Yocto Project 2.8 Release.</revremark>
+ </revision>
</revhistory>
<copyright>
diff --git a/poky/documentation/ref-manual/migration.xml b/poky/documentation/ref-manual/migration.xml
index c648d8d..1ecf5b9 100644
--- a/poky/documentation/ref-manual/migration.xml
+++ b/poky/documentation/ref-manual/migration.xml
@@ -4506,8 +4506,8 @@
</para></listitem>
<listitem><para>
<emphasis>fsimage Plug-in Removed:</emphasis>
- The Wic fsimage plug-in has been removed as it duplicates
- functionality of the rawcopy plug-in.
+ The Wic fsimage plugin has been removed as it duplicates
+ functionality of the rawcopy plugin.
</para></listitem>
</itemizedlist>
</para>
@@ -6325,6 +6325,280 @@
</para>
</section>
</section>
+
+<section id='moving-to-the-yocto-project-2.7-release'>
+ <title>Moving to the Yocto Project 2.7 Release</title>
+
+ <para>
+ This section provides migration information for moving to the
+ Yocto Project 2.7 Release from the prior release.
+ </para>
+
+ <section id='migration-2.7-bitbake-changes'>
+ <title>BitBake Changes</title>
+
+ <para>
+ The following changes have been made to BitBake:
+ <itemizedlist>
+ <listitem><para>
+ BitBake now checks anonymous Python functions and pure
+ Python functions (e.g. <filename>def funcname:</filename>)
+ in the metadata for tab indentation.
+ If found, BitBake produces a warning.
+ </para></listitem>
+ <listitem><para>
+ Bitbake now checks
+ <link linkend='var-BBFILE_COLLECTIONS'><filename>BBFILE_COLLECTIONS</filename></link>
+ for duplicate entries and triggers an error if any are
+ found.
+ </para></listitem>
+ </itemizedlist>
+ </para>
+ </section>
+
+ <section id='migration-2.7-eclipse-support-dropped'>
+ <title><trademark class='trade'>Eclipse</trademark> Support Removed</title>
+
+ <para>
+ Support for the Eclipse IDE has been removed.
+ Support continues for those releases prior to 2.7 that did include
+ support.
+ The 2.7 release does not include the Eclipse Yocto plugin.
+ </para>
+ </section>
+
+ <section id='migration-2.7-qemu-native-splits-system-and-user-mode-parts'>
+ <title><filename>qemu-native</filename> Splits the System and User-Mode Parts</title>
+
+ <para>
+ The system and user-mode parts of <filename>qemu-native</filename>
+ are now split.
+ <filename>qemu-native</filename> provides the user-mode components
+ and <filename>qemu-system-native</filename> provides the system
+ components.
+ If you have recipes that depend on QEMU's system emulation
+ functionality at build time, they should now depend upon
+ <filename>qemu-system-native</filename> instead of
+ <filename>qemu-native</filename>.
+ </para>
+ </section>
+
+ <section id='migration-2.7-upstream-tracking.inc-removed'>
+ <title>The <filename>upstream-tracking.inc</filename> File Has Been Removed</title>
+
+ <para>
+ The previously deprecated <filename>upstream-tracking.inc</filename>
+ file is now removed.
+ Any <filename>UPSTREAM_TRACKING*</filename> variables are now set
+ in the corresponding recipes instead.
+ </para>
+
+ <para>
+ Remove any references you have to the
+ <filename>upstream-tracking.inc</filename> file in your
+ configuration.
+ </para>
+ </section>
+
+ <section id='migration-2.7-distro-features-libc-removed'>
+ <title>The <filename>DISTRO_FEATURES_LIBC</filename> Variable Has Been Removed</title>
+
+ <para>
+ The <filename>DISTRO_FEATURES_LIBC</filename> variable is no
+ longer used.
+ The ability to configure glibc using kconfig has been removed
+ for quite some time making the <filename>libc-*</filename> features
+ set no longer effective.
+ </para>
+
+ <para>
+ Remove any references you have to
+ <filename>DISTRO_FEATURES_LIBC</filename> in your own layers.
+ </para>
+ </section>
+
+ <section id='migration-2.7-license-values'>
+ <title>License Value Corrections</title>
+
+ <para>
+ The following corrections have been made to the
+ <link linkend='var-LICENSE'><filename>LICENSE</filename></link>
+ values set by recipes:
+ <literallayout class='monospaced'>
+ <emphasis>socat</emphasis>: Corrected <filename>LICENSE</filename> to be "GPLv2" rather than
+ "GPLv2+".
+
+ <emphasis>libgfortran</emphasis>: Set license to "GPL-3.0-with-GCC-exception".
+
+ <emphasis>elfutils</emphasis>: Removed "Elfutils-Exception" and set to "GPLv2" for shared
+ libraries
+ </literallayout>
+ </para>
+ </section>
+
+ <section id='migration-2.7-packaging-changes'>
+ <title>Packaging Changes</title>
+
+ <para>
+ This section provides information about packaging changes.
+ <itemizedlist>
+ <listitem><para>
+ <filename>bind</filename>: The
+ <filename>nsupdate</filename> binary has been moved to
+ the <filename>bind-utils</filename> package.
+ </para></listitem>
+ <listitem><para>
+ Debug split: The default debug split has been changed to
+ create separate source packages (i.e.
+ <replaceable>package_name</replaceable><filename>-dbg</filename>
+ and
+ <replaceable>package_name</replaceable><filename>-src</filename>).
+ If you are currently using <filename>dbg-pkgs</filename>
+ in
+ <link linkend='var-IMAGE_FEATURES'><filename>IMAGE_FEATURES</filename></link>
+ to bring in debug symbols and you still need the sources,
+ you must now also add <filename>src-pkgs</filename> to
+ <filename>IMAGE_FEATURES</filename>.
+ Source packages remain in the target portion of the SDK
+ by default, unless you have set your own value for
+ <link linkend='var-SDKIMAGE_FEATURES'><filename>SDKIMAGE_FEATURES</filename></link>
+ that does not include <filename>src-pkgs</filename>.
+ </para></listitem>
+ <listitem><para>
+ Mount all using <filename>util-linux</filename>:
+ <filename>/etc/default/mountall</filename> has
+ moved into the -mount sub-package.
+ </para></listitem>
+ <listitem><para>
+ Splitting binaries using <filename>util-linux</filename>:
+ <filename>util-linux</filename> now splits each binary into
+ its own package for fine-grained control.
+ The main <filename>util-linux</filename> package pulls in
+ the individual binary packages using the
+ <link linkend='var-RRECOMMENDS'><filename>RRECOMMENDS</filename></link>
+ and
+ <link linkend='var-RDEPENDS'><filename>RDEPENDS</filename></link>
+ variables.
+ As a result, existing images should not see any changes
+ assuming
+ <link linkend='var-NO_RECOMMENDATIONS'><filename>NO_RECOMMENDATIONS</filename></link>
+ is not set.
+ </para></listitem>
+ <listitem><para>
+ <filename>netbase/base-files</filename>:
+ <filename>/etc/hosts</filename> has moved from
+ <filename>netbase</filename> to
+ <filename>base-files</filename>.
+ </para></listitem>
+ <listitem><para>
+ <filename>tzdata</filename>: The main package has been
+ converted to an empty meta package that pulls in all
+ <filename>tzdata</filename> packages by default.
+ </para></listitem>
+ <listitem><para>
+ <filename>lrzsz</filename>: This package has been removed
+ from <filename>packagegroup-self-hosted</filename> and
+ <filename>packagegroup-core-tools-testapps</filename>.
+ The X/Y/ZModem support is less likely to be needed on
+ modern systems.
+ If you are relying on these packagegroups to include the
+ <filename>lrzsz</filename> package in your image, you
+ now need to explicitly add the package.
+ </para></listitem>
+ </itemizedlist>
+ </para>
+ </section>
+
+ <section id='migration-2.7-removed-recipes'>
+ <title>Removed Recipes</title>
+
+ <para>
+ The following recipes have been removed:
+ <literallayout class='monospaced'>
+ <emphasis>gcc</emphasis>: Drop version 7.3 recipes. Version 8.3 now remains.
+
+ <emphasis>linux-yocto</emphasis>: Drop versions 4.14 and 4.18 recipes. Versions 4.19 and 5.0 remain.
+
+ <emphasis>go</emphasis>: Drop version 1.9 recipes. Versions 1.11 and 1.12 remain.
+
+ <emphasis>xvideo-tests</emphasis>: Became obsolete.
+
+ <emphasis>libart-lgpl</emphasis>: Became obsolete.
+
+ <emphasis>gtk-icon-utils-native</emphasis>: These tools are now provided by gtk+3-native
+
+ <emphasis>gcc-cross-initial</emphasis>: No longer needed. gcc-cross/gcc-crosssdk is now used instead.
+
+ <emphasis>gcc-crosssdk-initial</emphasis>: No longer needed. gcc-cross/gcc-crosssdk is now used instead.
+
+ <emphasis>glibc-initial</emphasis>: Removed because the benefits of having it for site_config are
+ currently outweighed by the cost of building the recipe.
+ </literallayout>
+ </para>
+ </section>
+
+ <section id='migration-2.7-removed-classes'>
+ <title>Removed Classes</title>
+
+ <para>
+ The following classes have been removed:
+ <literallayout class='monospaced'>
+ <emphasis>distutils-tools</emphasis>: This class was never used.
+
+ <emphasis>bugzilla.bbclass</emphasis>: Became obsolete.
+
+ <emphasis>distrodata</emphasis>: This functionally has been replaced by a more modern
+ tinfoil-based implementation.
+ </literallayout>
+ </para>
+ </section>
+
+ <section id='migration-2.7-miscellaneous-changes'>
+ <title>Miscellaneous Changes</title>
+
+ <para>
+ The following miscellaneous changes occurred:
+ <itemizedlist>
+ <listitem><para>
+ The <filename>distro</filename> subdirectory of the Poky
+ repository has been removed from the top-level
+ <filename>scripts</filename> directory.
+ </para></listitem>
+ <listitem><para>
+ Perl now builds for the target using
+ <ulink url='http://arsv.github.io/perl-cross/'><filename>perl-cross</filename></ulink>
+ for better maintainability and improved build performance.
+ This change should not present any problems unless you have
+ heavily customized your Perl recipe.
+ </para></listitem>
+ <listitem><para>
+ <filename>arm-tunes</filename>: Removed the "-march"
+ option if mcpu is already added.
+ </para></listitem>
+ <listitem><para>
+ <filename>update-alternatives</filename>: Convert file
+ renames to
+ <link linkend='var-PACKAGE_PREPROCESS_FUNCS'><filename>PACKAGE_PREPROCESS_FUNCS</filename></link>
+ </para></listitem>
+ <listitem><para>
+ <filename>base/pixbufcache</filename>: Obsolete
+ <filename>sstatecompletions</filename> code has been
+ removed.
+ </para></listitem>
+ <listitem><para>
+ <link linkend='ref-classes-native'><filename>native</filename></link>
+ class:
+ <link linkend='var-RDEPENDS'><filename>RDEPENDS</filename></link>
+ handling has been enabled.
+ </para></listitem>
+ <listitem><para>
+ <filename>inetutils</filename>: This recipe has rsh
+ disabled.
+ </para></listitem>
+ </itemizedlist>
+ </para>
+ </section>
+</section>
</chapter>
<!--
vim: expandtab tw=80 ts=4
diff --git a/poky/documentation/ref-manual/ref-features.xml b/poky/documentation/ref-manual/ref-features.xml
index cb74df6..7a3555d 100644
--- a/poky/documentation/ref-manual/ref-features.xml
+++ b/poky/documentation/ref-manual/ref-features.xml
@@ -342,9 +342,6 @@
class.
The current list of these valid features is as follows:
<itemizedlist>
- <listitem><para><emphasis>eclipse-debug:</emphasis> Provides
- Eclipse remote debugging support.
- </para></listitem>
<listitem><para><emphasis>hwcodecs:</emphasis> Installs
hardware acceleration codecs.
</para></listitem>
diff --git a/poky/documentation/ref-manual/ref-kickstart.xml b/poky/documentation/ref-manual/ref-kickstart.xml
index a58f9d7..1128bd5 100644
--- a/poky/documentation/ref-manual/ref-kickstart.xml
+++ b/poky/documentation/ref-manual/ref-kickstart.xml
@@ -117,9 +117,9 @@
This option is a Wic-specific option that names the source
of the data that populates the partition.
The most common value for this option is "rootfs", but you
- can use any value that maps to a valid source plug-in.
- For information on the source plug-ins, see the
- "<ulink url='&YOCTO_DOCS_DEV_URL;#wic-using-the-wic-plug-ins-interface'>Using the Wic Plug-Ins Interface</ulink>"
+ can use any value that maps to a valid source plugin.
+ For information on the source plugins, see the
+ "<ulink url='&YOCTO_DOCS_DEV_URL;#wic-using-the-wic-plugin-interface'>Using the Wic Plugins Interface</ulink>"
section in the Yocto Project Development Tasks Manual.
</para>
@@ -139,12 +139,12 @@
<filename>--source <replaceable>plugin-name</replaceable></filename>,
Wic creates a partition as large as needed and fills it
with the contents of the partition that is generated by the
- specified plug-in name using the data pointed to by the
+ specified plugin name using the data pointed to by the
<filename>-r</filename> command-line option or the
equivalent rootfs derived from the <filename>-e</filename>
command-line option.
Exactly what those contents are and filesystem type used are
- dependent on the given plug-in implementation.
+ dependent on the given plugin implementation.
</para>
<para>If you do not use the <filename>--source</filename>
@@ -220,7 +220,7 @@
This option is a Wic-specific option that excludes the given
relative path from the resulting image.
This option is only effective with the rootfs source
- plug-in.
+ plugin.
</para></listitem>
<listitem><para>
<emphasis><filename>--extra-space</filename>:</emphasis>
@@ -299,7 +299,7 @@
supports the following options:
<note>
Bootloader functionality and boot partitions are implemented by
- the various <filename>--source</filename> plug-ins that
+ the various <filename>--source</filename> plugins that
implement bootloader functionality.
The bootloader command essentially provides a means of
modifying bootloader configuration.
diff --git a/poky/documentation/ref-manual/ref-manual-eclipse-customization.xsl b/poky/documentation/ref-manual/ref-manual-eclipse-customization.xsl
deleted file mode 100644
index f3b7521..0000000
--- a/poky/documentation/ref-manual/ref-manual-eclipse-customization.xsl
+++ /dev/null
@@ -1,35 +0,0 @@
-<?xml version='1.0'?>
-<xsl:stylesheet
- xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
- xmlns="http://www.w3.org/1999/xhtml"
- xmlns:fo="http://www.w3.org/1999/XSL/Format"
- version="1.0">
-
- <xsl:import href="http://downloads.yoctoproject.org/mirror/docbook-mirror/docbook-xsl-1.76.1/eclipse/eclipse3.xsl" />
-
-<!--
-
- <xsl:import href="../template/1.76.1/docbook-xsl-1.76.1/eclipse/eclipse3.xsl" />
-
- <xsl:import
- href="http://docbook.sourceforge.net/release/xsl/1.76.1/eclipse/eclipse3.xsl" />
-
--->
-
- <xsl:param name="chunker.output.indent" select="'yes'"/>
- <xsl:param name="chunk.quietly" select="1"/>
- <xsl:param name="chunk.first.sections" select="1"/>
- <xsl:param name="chunk.section.depth" select="10"/>
- <xsl:param name="use.id.as.filename" select="1"/>
- <xsl:param name="ulink.target" select="'_self'" />
- <xsl:param name="base.dir" select="'html/ref-manual/'"/>
- <xsl:param name="html.stylesheet" select="'../book.css'"/>
- <xsl:param name="eclipse.manifest" select="0"/>
- <xsl:param name="create.plugin.xml" select="0"/>
- <xsl:param name="suppress.navigation" select="1"/>
- <xsl:param name="generate.index" select="0"/>
- <xsl:param name="chapter.autolabel" select="1" />
- <xsl:param name="appendix.autolabel">A</xsl:param>
- <xsl:param name="section.autolabel" select="1" />
- <xsl:param name="section.label.includes.component.label" select="1" />
-</xsl:stylesheet>
diff --git a/poky/documentation/ref-manual/ref-manual.xml b/poky/documentation/ref-manual/ref-manual.xml
index 26295f0..fc43197 100644
--- a/poky/documentation/ref-manual/ref-manual.xml
+++ b/poky/documentation/ref-manual/ref-manual.xml
@@ -129,9 +129,14 @@
</revision>
<revision>
<revnumber>2.7</revnumber>
- <date>&REL_MONTH_YEAR;</date>
+ <date>May 2019</date>
<revremark>Released with the Yocto Project 2.7 Release.</revremark>
</revision>
+ <revision>
+ <revnumber>2.8</revnumber>
+ <date>&REL_MONTH_YEAR;</date>
+ <revremark>Released with the Yocto Project 2.8 Release.</revremark>
+ </revision>
</revhistory>
<copyright>
diff --git a/poky/documentation/ref-manual/ref-system-requirements.xml b/poky/documentation/ref-manual/ref-system-requirements.xml
index 5f2b9f6..239dd84 100644
--- a/poky/documentation/ref-manual/ref-system-requirements.xml
+++ b/poky/documentation/ref-manual/ref-system-requirements.xml
@@ -91,6 +91,7 @@
<listitem><para>Ubuntu 16.04 (LTS)</para></listitem>
<listitem><para>Ubuntu 18.04</para></listitem>
<listitem><para>Fedora 28</para></listitem>
+ <listitem><para>Fedora 29</para></listitem>
<listitem><para>CentOS 7.x</para></listitem>
<listitem><para>Debian GNU/Linux 8.x (Jessie)</para></listitem>
<listitem><para>Debian GNU/Linux 9.x (Stretch)</para></listitem>
diff --git a/poky/documentation/ref-manual/ref-terms.xml b/poky/documentation/ref-manual/ref-terms.xml
index c573a52..f985468 100644
--- a/poky/documentation/ref-manual/ref-terms.xml
+++ b/poky/documentation/ref-manual/ref-terms.xml
@@ -183,16 +183,11 @@
<listitem><para id='term-container-layer'>
<emphasis>Container Layer:</emphasis>
Layers that hold other layers.
- An example of a container layer is the
- <filename>meta-intel</filename> layer.
- This layer contains BSP layers for the Intel-core2-32
- <trademark class='registered'>Intel</trademark> Common Core
- (Intel-core2-32) and the Intel-corei7-64
- <trademark class='registered'>Intel</trademark> Common Core
- (Intel-corei7-64).
- the <filename>meta-intel</filename> layer also contains
- the <filename>common/</filename> directory, which contains
- common content across those layers.
+ An example of a container layer is OpenEmbedded's
+ <ulink url='https://github.com/openembedded/meta-openembedded'><filename>meta-openembedded</filename></ulink>
+ layer.
+ The <filename>meta-openembedded</filename> layer contains
+ many <filename>meta-*</filename> layers.
</para></listitem>
<listitem><para id='cross-development-toolchain'>
<emphasis>Cross-Development Toolchain:</emphasis>
diff --git a/poky/documentation/ref-manual/ref-variables.xml b/poky/documentation/ref-manual/ref-variables.xml
index 536bd15..0d01c16 100644
--- a/poky/documentation/ref-manual/ref-variables.xml
+++ b/poky/documentation/ref-manual/ref-variables.xml
@@ -11309,7 +11309,7 @@
Here are two examples:
<literallayout class='monospaced'>
PREFERRED_VERSION_python = "3.4.0"
- PREFERRED_VERSION_linux-yocto = "4.12%"
+ PREFERRED_VERSION_linux-yocto = "5.0%"
</literallayout>
<note><title>Important</title>
The use of the "<filename>%</filename>" character
@@ -11355,14 +11355,14 @@
to set a machine-specific override.
Here is an example:
<literallayout class='monospaced'>
- PREFERRED_VERSION_linux-yocto_qemux86 = "4.12%"
+ PREFERRED_VERSION_linux-yocto_qemux86 = "5.0%"
</literallayout>
Although not recommended, worst case, you can also use the
"forcevariable" override, which is the strongest override
possible.
Here is an example:
<literallayout class='monospaced'>
- PREFERRED_VERSION_linux-yocto_forcevariable = "4.12%"
+ PREFERRED_VERSION_linux-yocto_forcevariable = "5.0%"
</literallayout>
<note>
The <filename>_forcevariable</filename> override is
@@ -12609,7 +12609,7 @@
is set to "minimal" to keep the SDK reasonably small
but you still want to provide a usable toolchain.
For example, suppose you want to use the toolchain from an
- IDE (e.g. Eclipse) or from other tools and you do not
+ IDE or from other tools and you do not
want to perform additional steps to install the toolchain.
</para>
@@ -13722,6 +13722,9 @@
a secure shell.</para></listitem>
<listitem><para><emphasis><filename>svn://</filename> -</emphasis> Fetches files from
a Subversion (<filename>svn</filename>) revision control repository.</para></listitem>
+ <listitem><para><emphasis><filename>npm://</filename> -</emphasis> Fetches JavaScript
+ modules from a registry.
+ </para></listitem>
</itemizedlist>
</para>
diff --git a/poky/documentation/ref-manual/resources.xml b/poky/documentation/ref-manual/resources.xml
index 6a0cee8..afe8e28 100644
--- a/poky/documentation/ref-manual/resources.xml
+++ b/poky/documentation/ref-manual/resources.xml
@@ -247,14 +247,6 @@
</para></listitem>
<listitem><para>
<emphasis>
- <ulink url='&YOCTO_DOCS_SDK_URL;#adt-eclipse'>Eclipse IDE Yocto Plug-in</ulink>:
- </emphasis>
- Instructions that demonstrate how an application developer
- uses the Eclipse Yocto Project Plug-in feature within
- the Eclipse IDE.
- </para></listitem>
- <listitem><para>
- <emphasis>
<ulink url='&YOCTO_WIKI_URL;/wiki/FAQ'>FAQ</ulink>:
</emphasis>
A list of commonly asked questions and their answers.
diff --git a/poky/documentation/sdk-manual/figures/sdk-eclipse-dev-flow.png b/poky/documentation/sdk-manual/figures/sdk-eclipse-dev-flow.png
deleted file mode 100644
index 9f986e0..0000000
--- a/poky/documentation/sdk-manual/figures/sdk-eclipse-dev-flow.png
+++ /dev/null
Binary files differ
diff --git a/poky/documentation/sdk-manual/sdk-appendix-customizing.xml b/poky/documentation/sdk-manual/sdk-appendix-customizing.xml
index 7454c90..911658f 100644
--- a/poky/documentation/sdk-manual/sdk-appendix-customizing.xml
+++ b/poky/documentation/sdk-manual/sdk-appendix-customizing.xml
@@ -503,7 +503,7 @@
have set <filename>SDK_EXT_TYPE</filename> to "minimal", which by
default, excludes the toolchain.
Also, it is helpful if you are building a small SDK for use with
- an IDE, such as <trademark class='trade'>Eclipse</trademark>, or some
+ an IDE or some
other tool where you do not want to take extra steps to install a
toolchain.
</para>
diff --git a/poky/documentation/sdk-manual/sdk-appendix-neon.xml b/poky/documentation/sdk-manual/sdk-appendix-neon.xml
deleted file mode 100644
index 0fb9298..0000000
--- a/poky/documentation/sdk-manual/sdk-appendix-neon.xml
+++ /dev/null
@@ -1,956 +0,0 @@
-<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
-"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
-[<!ENTITY % poky SYSTEM "../poky.ent"> %poky; ] >
-
-<appendix id='sdk-appendix-neon-yp-eclipse-plug-in'>
- <title>Using <trademark class='trade'>Eclipse</trademark> Neon</title>
-
- <para>
- This release of the Yocto Project supports both the Oxygen and Neon
- versions of the Eclipse IDE.
- This appendix presents information that describes how to obtain and
- configure the Neon version of Eclipse.
- It also provides a basic project example that you can work through
- from start to finish.
- For general information on using the Eclipse IDE and the Yocto
- Project Eclipse Plug-In, see the
- "<link linkend='application-development-workflow-using-eclipse'>Application Development Workflow Using <trademark class='trade'>Eclipse</trademark></link>"
- section.
- </para>
-
- <section id='neon-setting-up-the-eclipse-ide'>
- <title>Setting Up the Neon Version of the Eclipse IDE</title>
-
- <para>
- To develop within the Eclipse IDE, you need to do the following:
- <orderedlist>
- <listitem><para>Install the Neon version of the Eclipse
- IDE.</para></listitem>
- <listitem><para>Configure the Eclipse IDE.
- </para></listitem>
- <listitem><para>Install the Eclipse Yocto Plug-in.
- </para></listitem>
- <listitem><para>Configure the Eclipse Yocto Plug-in.
- </para></listitem>
- </orderedlist>
- <note>
- Do not install Eclipse from your distribution's package
- repository.
- Be sure to install Eclipse from the official Eclipse
- download site as directed in the next section.
- </note>
- </para>
-
- <section id='neon-installing-eclipse-ide'>
- <title>Installing the Neon Eclipse IDE</title>
-
- <para>
- Follow these steps to locate, install, and configure
- Neon Eclipse:
- <orderedlist>
- <listitem><para><emphasis>Locate the Neon Download:</emphasis>
- Open a browser and go to
- <ulink url='http://www.eclipse.org/neon/'>http://www.eclipse.org/neon/</ulink>.
- </para></listitem>
- <listitem><para><emphasis>Download the Tarball:</emphasis>
- Click the "Download" button and look for the
- "Eclipse IDE for C/C++ Developers" Neon 3 Package.
- Select the correct platform download link listed at
- the right.
- For example, click on "64-bit" next to Linux if your
- build host is running a 64-bit Linux distribution.
- Click through the process to save the file.
- </para></listitem>
- <listitem><para><emphasis>Unpack the Tarball:</emphasis>
- Move to a directory and unpack the tarball.
- The following commands unpack the tarball into the
- home directory:
- <literallayout class='monospaced'>
- $ cd ~
- $ tar -xzvf ~/Downloads/eclipse-cpp-neon-3-linux-gtk-x86_64.tar.gz
- </literallayout>
- Everything unpacks into a folder named "Eclipse".
- </para></listitem>
- <listitem><para><emphasis>Launch Eclipse:</emphasis>
- The following commands launch Eclipse assuming you
- unpacked it in your home directory:
- <literallayout class='monospaced'>
- $ cd ~/eclipse
- $ ./eclipse
- </literallayout>
- Accept the default "workspace" once Eclipse launches.
- </para></listitem>
- </orderedlist>
- </para>
- </section>
-
- <section id='neon-configuring-the-neon-eclipse-ide'>
- <title>Configuring the Neon Eclipse IDE</title>
-
- <para>
- Follow these steps to configure the Neon Eclipse IDE.
- <note><title>Notes</title>
- <itemizedlist>
- <listitem><para>
- Depending on how you installed Eclipse and what
- you have already done, some of the options do
- not appear.
- If you cannot find an option as directed by the
- manual, it has already been installed.
- </para></listitem>
- <listitem><para>
- If you want to see all options regardless of
- whether they are installed or not, deselect the
- "Hide items that are already installed"
- check box.
- </para></listitem>
- </itemizedlist>
- </note>
- <orderedlist>
- <listitem><para>Be sure Eclipse is running and
- you are in your workbench.
- </para></listitem>
- <listitem><para>Select "Install New Software" from
- the "Help" pull-down menu.
- </para></listitem>
- <listitem><para>Select
- "Neon - http://download.eclipse.org/releases/neon"
- from the "Work with:" pull-down menu.
- </para></listitem>
- <listitem><para>Expand the box next to
- "Linux Tools" and select the following
- <literallayout class='monospaced'>
- C/C++ Remote (Over TCF/TE) Run/Debug Launcher
- TM Terminal
- </literallayout>
- </para></listitem>
- <listitem><para>Expand the box next to "Mobile and
- Device Development" and select the following
- boxes:
- <literallayout class='monospaced'>
- C/C++ Remote (Over TCF/TE) Run/Debug Launcher
- Remote System Explorer User Actions
- TM Terminal
- TCF Remote System Explorer add-in
- TCF Target Explorer
- </literallayout>
- </para></listitem>
- <listitem><para>Expand the box next to
- "Programming Languages" and select the
- following box:
- <literallayout class='monospaced'>
- C/C++ Development Tools SDK
- </literallayout>
- </para></listitem>
- <listitem><para>
- Complete the installation by clicking through
- appropriate "Next" and "Finish" buttons.
- </para></listitem>
- </orderedlist>
- </para>
- </section>
-
- <section id='neon-installing-the-eclipse-yocto-plug-in'>
- <title>Installing or Accessing the Neon Eclipse Yocto Plug-in</title>
-
- <para>
- You can install the Eclipse Yocto Plug-in into the Eclipse
- IDE one of two ways: use the Yocto Project's Eclipse
- Update site to install the pre-built plug-in or build and
- install the plug-in from the latest source code.
- </para>
-
- <section id='neon-new-software'>
- <title>Installing the Pre-built Plug-in from the Yocto Project Eclipse Update Site</title>
-
- <para>
- To install the Neon Eclipse Yocto Plug-in from the update
- site, follow these steps:
- <orderedlist>
- <listitem><para>Start up the Eclipse IDE.
- </para></listitem>
- <listitem><para>In Eclipse, select "Install New
- Software" from the "Help" menu.
- </para></listitem>
- <listitem><para>Click "Add..." in the "Work with:"
- area.
- </para></listitem>
- <listitem><para>Enter
- <filename>&ECLIPSE_DL_PLUGIN_URL;/neon</filename>
- in the URL field and provide a meaningful name
- in the "Name" field.
- </para></listitem>
- <listitem><para>
- Click "OK" to have the entry automatically
- populate the "Work with:" field and to have
- the items for installation appear in the window
- below.
- </para></listitem>
- <listitem><para>Check the boxes next to the following:
- <literallayout class='monospaced'>
- Yocto Project SDK Plug-in
- Yocto Project Documentation plug-in
- </literallayout>
- </para></listitem>
- <listitem><para>Complete the remaining software
- installation steps and then restart the Eclipse
- IDE to finish the installation of the plug-in.
- <note>
- You can click "OK" when prompted about
- installing software that contains unsigned
- content.
- </note>
- </para></listitem>
- </orderedlist>
- </para>
- </section>
-
- <section id='neon-zip-file-method'>
- <title>Installing the Plug-in Using the Latest Source Code</title>
-
- <para>
- To install the Neon Eclipse Yocto Plug-in from the latest
- source code, follow these steps:
- <orderedlist>
- <listitem><para>
- Be sure your build host has JDK version 1.8
- or greater.
- On a Linux build host you can determine the
- version using the following command:
- <literallayout class='monospaced'>
- $ java -version
- </literallayout>
- </para></listitem>
- <listitem><para>install X11-related packages:
- <literallayout class='monospaced'>
- $ sudo apt-get install xauth
- </literallayout>
- </para></listitem>
- <listitem><para>In a new terminal shell, create a Git
- repository with:
- <literallayout class='monospaced'>
- $ cd ~
- $ git clone git://git.yoctoproject.org/eclipse-yocto
- </literallayout>
- </para></listitem>
- <listitem><para>
- Use Git to create the correct tag:
- <literallayout class='monospaced'>
- $ cd ~/eclipse-yocto
- $ git checkout -b neon/&DISTRO_NAME_NO_CAP; remotes/origin/neon/&DISTRO_NAME_NO_CAP;
- </literallayout>
- This creates a local tag named
- <filename>neon/&DISTRO_NAME_NO_CAP;</filename>
- based on the branch
- <filename>origin/neon/&DISTRO_NAME_NO_CAP;</filename>.
- You are put into a detached HEAD state,
- which is fine since you are only going to
- be building and not developing.
- </para></listitem>
- <listitem><para>Change to the
- <filename>scripts</filename>
- directory within the Git repository:
- <literallayout class='monospaced'>
- $ cd scripts
- </literallayout>
- </para></listitem>
- <listitem><para>Set up the local build environment
- by running the setup script:
- <literallayout class='monospaced'>
- $ ./setup.sh
- </literallayout>
- When the script finishes execution,
- it prompts you with instructions on how to run
- the <filename>build.sh</filename> script, which
- is also in the <filename>scripts</filename>
- directory of the Git repository created
- earlier.
- </para></listitem>
- <listitem><para>
- Run the <filename>build.sh</filename>
- script as directed.
- Be sure to provide the tag name,
- documentation branch, and a release name.</para>
-
- <para>Following is an example:
- <literallayout class='monospaced'>
- $ ECLIPSE_HOME=/home/scottrif/eclipse-yocto/scripts/eclipse ./build.sh -l neon/&DISTRO_NAME_NO_CAP; master yocto-&DISTRO; 2>&1 | tee build.log
- </literallayout>
- The previous example command adds the tag
- you need for
- <filename>neon/&DISTRO_NAME_NO_CAP;</filename>
- to <filename>HEAD</filename>, then tells
- the build script to use the local (-l) Git
- checkout for the build.
- After running the script, the file
- <filename>org.yocto.sdk-</filename><replaceable>release</replaceable><filename>-</filename><replaceable>date</replaceable><filename>-archive.zip</filename>
- is in the current directory.
- </para></listitem>
- <listitem><para>If necessary, start the Eclipse IDE
- and be sure you are in the Workbench.
- </para></listitem>
- <listitem><para>Select "Install New Software" from
- the "Help" pull-down menu.
- </para></listitem>
- <listitem><para>Click "Add".
- </para></listitem>
- <listitem><para>Provide anything you want in the
- "Name" field.
- </para></listitem>
- <listitem><para>Click "Archive" and browse to the
- ZIP file you built earlier.
- This ZIP file should not be "unzipped", and must
- be the <filename>*archive.zip</filename> file
- created by running the
- <filename>build.sh</filename> script.
- </para></listitem>
- <listitem><para>Click the "OK" button.
- </para></listitem>
- <listitem><para>Check the boxes that appear in
- the installation window to install the
- following:
- <literallayout class='monospaced'>
- Yocto Project SDK Plug-in
- Yocto Project Documentation plug-in
- </literallayout>
- </para></listitem>
- <listitem><para>Finish the installation by clicking
- through the appropriate buttons.
- You can click "OK" when prompted about
- installing software that contains unsigned
- content.
- </para></listitem>
- <listitem><para>Restart the Eclipse IDE if
- necessary.
- </para></listitem>
- </orderedlist>
- </para>
-
- <para>
- At this point you should be able to configure the
- Eclipse Yocto Plug-in as described in the
- "<link linkend='neon-configuring-the-eclipse-yocto-plug-in'>Configuring the Neon Eclipse Yocto Plug-in</link>"
- section.</para>
- </section>
- </section>
-
- <section id='neon-configuring-the-eclipse-yocto-plug-in'>
- <title>Configuring the Neon Eclipse Yocto Plug-In</title>
-
- <para>
- Configuring the Neon Eclipse Yocto Plug-in involves setting the
- Cross Compiler options and the Target options.
- The configurations you choose become the default settings
- for all projects.
- You do have opportunities to change them later when
- you configure the project (see the following section).
- </para>
-
- <para>
- To start, you need to do the following from within the
- Eclipse IDE:
- <orderedlist>
- <listitem><para>
- Choose "Preferences" from the
- "Window" menu to display the Preferences Dialog.
- </para></listitem>
- <listitem><para>
- Click "Yocto Project SDK" to display
- the configuration screen.
- </para></listitem>
- </orderedlist>
- The following sub-sections describe how to configure the
- the plug-in.
- <note>
- Throughout the descriptions, a start-to-finish example for
- preparing a QEMU image for use with Eclipse is referenced
- as the "wiki" and is linked to the example on the
- <ulink url='https://wiki.yoctoproject.org/wiki/TipsAndTricks/RunningEclipseAgainstBuiltImage'> Cookbook guide to Making an Eclipse Debug Capable Image</ulink>
- wiki page.
- </note>
- </para>
-
- <section id='neon-configuring-the-cross-compiler-options'>
- <title>Configuring the Cross-Compiler Options</title>
-
- <para>
- Cross Compiler options enable Eclipse to use your specific
- cross compiler toolchain.
- To configure these options, you must select
- the type of toolchain, point to the toolchain, specify
- the sysroot location, and select the target
- architecture.
- <itemizedlist>
- <listitem><para>
- <emphasis>Selecting the Toolchain Type:</emphasis>
- Choose between "Standalone pre-built toolchain"
- and
- "Build system derived toolchain" for Cross Compiler
- Options.
- <itemizedlist>
- <listitem><para>
- <emphasis>Standalone Pre-built Toolchain:</emphasis>
- Select this type when you are using
- a stand-alone cross-toolchain.
- For example, suppose you are an
- application developer and do not
- need to build a target image.
- Instead, you just want to use an
- architecture-specific toolchain on
- an existing kernel and target root
- filesystem.
- In other words, you have downloaded
- and installed a pre-built toolchain
- for an existing image.
- </para></listitem>
- <listitem><para>
- <emphasis>Build System Derived Toolchain:</emphasis>
- Select this type if you built the
- toolchain as part of the
- <ulink url='&YOCTO_DOCS_REF_URL;#build-directory'>Build Directory</ulink>.
- When you select "Build system derived
- toolchain", you are using the toolchain
- built and bundled inside the Build
- Directory.
- For example, suppose you created a
- suitable image using the steps in the
- <ulink url='https://wiki.yoctoproject.org/wiki/TipsAndTricks/RunningEclipseAgainstBuiltImage'>wiki</ulink>.
- In this situation, you would select
- "Build system derived toolchain".
- </para></listitem>
- </itemizedlist>
- </para></listitem>
- <listitem><para>
- <emphasis>Specify the Toolchain Root Location:</emphasis>
- If you are using a stand-alone pre-built
- toolchain, you should be pointing to where it is
- installed (e.g.
- <filename>/opt/poky/&DISTRO;</filename>).
- See the
- "<link linkend='sdk-installing-the-sdk'>Installing the SDK</link>"
- section for information about how the SDK is
- installed.</para>
-
- <para>If you are using a build system derived
- toolchain, the path you provide for the
- "Toolchain Root Location" field is the
- <ulink url='&YOCTO_DOCS_REF_URL;#build-directory'>Build Directory</ulink>
- from which you run the
- <filename>bitbake</filename> command (e.g
- <filename>/home/scottrif/poky/build</filename>).</para>
- <para>For more information, see the
- "<link linkend='sdk-building-an-sdk-installer'>Building an SDK Installer</link>"
- section.
- </para></listitem>
- <listitem><para>
- <emphasis>Specify Sysroot Location:</emphasis>
- This location is where the root filesystem for
- the target hardware resides.
- </para>
-
- <para>This location depends on where you
- separately extracted and installed the
- target filesystem when you either built
- it or downloaded it.
- <note>
- If you downloaded the root filesystem
- for the target hardware rather than
- built it, you must download the
- <filename>sato-sdk</filename> image
- in order to build any c/c++ projects.
- </note>
- As an example, suppose you prepared an image
- using the steps in the
- <ulink url='https://wiki.yoctoproject.org/wiki/TipsAndTricks/RunningEclipseAgainstBuiltImage'>wiki</ulink>.
- If so, the <filename>MY_QEMU_ROOTFS</filename>
- directory is found in the
- <ulink url='&YOCTO_DOCS_REF_URL;#build-directory'>Build Directory</ulink>
- and you would browse to and select that directory
- (e.g. <filename>/home/scottrif/build/MY_QEMU_ROOTFS</filename>).
- </para>
-
- <para>For more information on how to install the
- toolchain and on how to extract and install the
- sysroot filesystem, see the
- "<link linkend='sdk-building-an-sdk-installer'>Building an SDK Installer</link>"
- section.
- </para></listitem>
- <listitem><para>
- <emphasis>Select the Target Architecture:</emphasis>
- The target architecture is the type of hardware
- you are going to use or emulate.
- Use the pull-down "Target Architecture" menu
- to make your selection.
- The pull-down menu should have the supported
- architectures.
- If the architecture you need is not listed in
- the menu, you will need to build the image.
- See the
- "<ulink url='&YOCTO_DOCS_DEV_URL;#dev-building-a-simple-image'>Building a Simple Image</ulink>"
- section of the Yocto Project Development Tasks
- Manual for more information.
- You can also see the
- <ulink url='https://wiki.yoctoproject.org/wiki/TipsAndTricks/RunningEclipseAgainstBuiltImage'>wiki</ulink>.
- </para></listitem>
- </itemizedlist>
- </para>
- </section>
-
- <section id='neon-configuring-the-target-options'>
- <title>Configuring the Target Options</title>
-
- <para>
- You can choose to emulate hardware using the QEMU
- emulator, or you can choose to run your image on actual
- hardware.
- <itemizedlist>
- <listitem><para>
- <emphasis>QEMU:</emphasis>
- Select this option if you will be using the
- QEMU emulator.
- If you are using the emulator, you also need to
- locate the kernel and specify any custom
- options.</para>
-
- <para>If you selected the Build system derived
- toolchain, the target kernel you built will be
- located in the
- <ulink url='&YOCTO_DOCS_REF_URL;#build-directory'>Build Directory</ulink>
- in
- <filename>tmp/deploy/images/<replaceable>machine</replaceable></filename>
- directory.
- As an example, suppose you performed the steps in
- the
- <ulink url='https://wiki.yoctoproject.org/wiki/TipsAndTricks/RunningEclipseAgainstBuiltImage'>wiki</ulink>.
- In this case, you specify your Build Directory path
- followed by the image (e.g.
- <filename>/home/scottrif/poky/build/tmp/deploy/images/qemux86/bzImage-qemux86.bin</filename>).
- </para>
-
- <para>If you selected the standalone pre-built
- toolchain, the pre-built image you downloaded is
- located in the directory you specified when you
- downloaded the image.</para>
-
- <para>Most custom options are for advanced QEMU
- users to further customize their QEMU instance.
- These options are specified between paired
- angled brackets.
- Some options must be specified outside the
- brackets.
- In particular, the options
- <filename>serial</filename>,
- <filename>nographic</filename>, and
- <filename>kvm</filename> must all be outside the
- brackets.
- Use the <filename>man qemu</filename> command
- to get help on all the options and their use.
- The following is an example:
- <literallayout class='monospaced'>
- serial ‘<-m 256 -full-screen>’
- </literallayout>
- Regardless of the mode, Sysroot is already
- defined as part of the Cross-Compiler Options
- configuration in the "Sysroot Location:" field.
- </para></listitem>
- <listitem><para>
- <emphasis>External HW:</emphasis>
- Select this option if you will be using actual
- hardware.
- </para></listitem>
- </itemizedlist>
- </para>
-
- <para>
- Click the "Apply" and "OK" to save your plug-in
- configurations.
- </para>
- </section>
- </section>
- </section>
-
- <section id='neon-creating-the-project'>
- <title>Creating the Project</title>
-
- <para>
- You can create two types of projects: Autotools-based, or
- Makefile-based.
- This section describes how to create Autotools-based projects
- from within the Eclipse IDE.
- For information on creating Makefile-based projects in a
- terminal window, see the
- "<link linkend='makefile-based-projects'>Makefile-Based Projects</link>"
- section.
- <note>
- Do not use special characters in project names
- (e.g. spaces, underscores, etc.). Doing so can
- cause the configuration to fail.
- </note>
- </para>
-
- <para>
- To create a project based on a Yocto template and then display
- the source code, follow these steps:
- <orderedlist>
- <listitem><para>
- Select "C Project" from the "File -> New" menu.
- </para></listitem>
- <listitem><para>
- Expand "Yocto Project SDK Autotools Project".
- </para></listitem>
- <listitem><para>
- Select "Hello World ANSI C Autotools Projects".
- This is an Autotools-based project based on a Yocto
- template.
- </para></listitem>
- <listitem><para>
- Put a name in the "Project name:" field.
- Do not use hyphens as part of the name
- (e.g. "hello").
- </para></listitem>
- <listitem><para>
- Click "Next".
- </para></listitem>
- <listitem><para>
- Add appropriate information in the various fields.
- </para></listitem>
- <listitem><para>
- Click "Finish".
- </para></listitem>
- <listitem><para>
- If the "open perspective" prompt appears,
- click "Yes" so that you are in the C/C++ perspective.
- </para></listitem>
- <listitem><para>
- The left-hand navigation pane shows your project.
- You can display your source by double clicking the
- project's source file.
- </para></listitem>
- </orderedlist>
- </para>
- </section>
-
- <section id='neon-configuring-the-cross-toolchains'>
- <title>Configuring the Cross-Toolchains</title>
-
- <para>
- The earlier section,
- "<link linkend='neon-configuring-the-eclipse-yocto-plug-in'>Configuring the Neon Eclipse Yocto Plug-in</link>",
- sets up the default project configurations.
- You can override these settings for a given project by following
- these steps:
- <orderedlist>
- <listitem><para>
- Select "Yocto Project Settings" from
- the "Project -> Properties" menu.
- This selection brings up the Yocto Project Settings
- Dialog and allows you to make changes specific to an
- individual project.</para>
- <para>By default, the Cross Compiler Options and Target
- Options for a project are inherited from settings you
- provided using the Preferences Dialog as described
- earlier in the
- "<link linkend='neon-configuring-the-eclipse-yocto-plug-in'>Configuring the Neon Eclipse Yocto Plug-in</link>" section.
- The Yocto Project Settings Dialog allows you to override
- those default settings for a given project.
- </para></listitem>
- <listitem><para>
- Make or verify your configurations for the project and
- click "OK".
- </para></listitem>
- <listitem><para>
- Right-click in the navigation pane and select
- "Reconfigure Project" from the pop-up menu.
- This selection reconfigures the project by running
- <ulink url='https://en.wikipedia.org/wiki/GNU_Build_System'>Autotools GNU utility programs</ulink>
- such as Autoconf, Automake, and so forth in the
- workspace for your project.
- Click on the "Console" tab beneath your source code
- to see the results of reconfiguring your project.
- </para></listitem>
- </orderedlist>
- </para>
- </section>
-
- <section id='neon-building-the-project'>
- <title>Building the Project</title>
-
- <para>
- To build the project select "Build All" from the
- "Project" menu.
- The console should update and you can note the cross-compiler
- you are using.
- <note>
- When building "Yocto Project SDK Autotools" projects, the
- Eclipse IDE might display error messages for
- Functions/Symbols/Types that cannot be "resolved", even when
- the related include file is listed at the project navigator and
- when the project is able to build.
- For these cases only, it is recommended to add a new linked
- folder to the appropriate sysroot.
- Use these steps to add the linked folder:
- <orderedlist>
- <listitem><para>
- Select the project.
- </para></listitem>
- <listitem><para>
- Select "Folder" from the "File > New" menu.
- </para></listitem>
- <listitem><para>
- In the "New Folder" Dialog, select "Link to alternate
- location (linked folder)".
- </para></listitem>
- <listitem><para>
- Click "Browse" to navigate to the include folder inside
- the same sysroot location selected in the Yocto Project
- configuration preferences.
- </para></listitem>
- <listitem><para>
- Click "OK".
- </para></listitem>
- <listitem><para>
- Click "Finish" to save the linked folder.
- </para></listitem>
- </orderedlist>
- </note>
- </para>
- </section>
-
- <section id='neon-starting-qemu-in-user-space-nfs-mode'>
- <title>Starting QEMU in User-Space NFS Mode</title>
-
- <para>
- To start the QEMU emulator from within Eclipse, follow these
- steps:
- <note>
- See the
- "<ulink url='&YOCTO_DOCS_DEV_URL;#dev-manual-qemu'>Using the Quick EMUlator (QEMU)</ulink>"
- chapter in the Yocto Project Development Tasks Manual
- for more information on using QEMU.
- </note>
- <orderedlist>
- <listitem><para>Expose and select "External Tools
- Configurations ..." from the "Run -> External Tools" menu.
- </para></listitem>
- <listitem><para>
- Locate and select your image in the navigation panel to
- the left (e.g. <filename>qemu_i586-poky-linux</filename>).
- </para></listitem>
- <listitem><para>
- Click "Run" to launch QEMU.
- <note>
- The host on which you are running QEMU must have
- the <filename>rpcbind</filename> utility running to be
- able to make RPC calls on a server on that machine.
- If QEMU does not invoke and you receive error messages
- involving <filename>rpcbind</filename>, follow the
- suggestions to get the service running.
- As an example, on a new Ubuntu 16.04 LTS installation,
- you must do the following in order to get QEMU to
- launch:
- <literallayout class='monospaced'>
- $ sudo apt-get install rpcbind
- </literallayout>
- After installing <filename>rpcbind</filename>, you
- need to edit the
- <filename>/etc/init.d/rpcbind</filename> file to
- include the following line:
- <literallayout class='monospaced'>
- OPTIONS="-i -w"
- </literallayout>
- After modifying the file, you need to start the
- service:
- <literallayout class='monospaced'>
- $ sudo service portmap restart
- </literallayout>
- </note>
- </para></listitem>
- <listitem><para>If needed, enter your host root password in
- the shell window at the prompt.
- This sets up a <filename>Tap 0</filename> connection
- needed for running in user-space NFS mode.
- </para></listitem>
- <listitem><para>Wait for QEMU to launch.
- </para></listitem>
- <listitem><para>Once QEMU launches, you can begin operating
- within that environment.
- One useful task at this point would be to determine the
- IP Address for the user-space NFS by using the
- <filename>ifconfig</filename> command.
- The IP address of the QEMU machine appears in the
- xterm window.
- You can use this address to help you see which particular
- IP address the instance of QEMU is using.
- </para></listitem>
- </orderedlist>
- </para>
- </section>
-
- <section id='neon-deploying-and-debugging-the-application'>
- <title>Deploying and Debugging the Application</title>
-
- <para>
- Once the QEMU emulator is running the image, you can deploy
- your application using the Eclipse IDE and then use
- the emulator to perform debugging.
- Follow these steps to deploy the application.
- <note>
- Currently, Eclipse does not support SSH port forwarding.
- Consequently, if you need to run or debug a remote
- application using the host display, you must create a
- tunneling connection from outside Eclipse and keep
- that connection alive during your work.
- For example, in a new terminal, run the following:
- <literallayout class='monospaced'>
- $ ssh -XY <replaceable>user_name</replaceable>@<replaceable>remote_host_ip</replaceable>
- </literallayout>
- Using the above form, here is an example:
- <literallayout class='monospaced'>
- $ ssh -XY root@192.168.7.2
- </literallayout>
- After running the command, add the command to be executed
- in Eclipse's run configuration before the application
- as follows:
- <literallayout class='monospaced'>
- export DISPLAY=:10.0
- </literallayout>
- Be sure to not destroy the connection during your QEMU
- session (i.e. do not
- exit out of or close that shell).
- </note>
- <orderedlist>
- <listitem><para>
- Select "Debug Configurations..." from the
- "Run" menu.</para></listitem>
- <listitem><para>
- In the left area, expand
- "C/C++Remote Application".
- </para></listitem>
- <listitem><para>
- Locate your project and select it to bring
- up a new tabbed view in the Debug Configurations Dialog.
- </para></listitem>
- <listitem><para>
- Click on the "Debugger" tab to see the
- cross-tool debugger you are using.
- Be sure to change to the debugger perspective in Eclipse.
- </para></listitem>
- <listitem><para>
- Click on the "Main" tab.
- </para></listitem>
- <listitem><para>Create a new connection to the QEMU instance
- by clicking on "new".</para></listitem>
- <listitem><para>
- Select "SSH", which means
- Secure Socket Shell.
- Optionally, you can select a TCF connection instead.
- </para></listitem>
- <listitem><para>
- Click "Next".
- </para></listitem>
- <listitem><para>
- Clear out the "Connection name" field and
- enter any name you want for the connection.
- </para></listitem>
- <listitem><para>
- Put the IP address for the connection in
- the "Host" field.
- For QEMU, the default is "192.168.7.2".
- However, if a previous QEMU session did not exit
- cleanly, the IP address increments (e.g.
- "192.168.7.3").
- <note>
- You can find the IP address for the current QEMU
- session by looking in the xterm that opens when
- you launch QEMU.
- </note>
- </para></listitem>
- <listitem><para>
- Enter "root", which
- is the default for QEMU, for the "User" field.
- Be sure to leave the password field empty.
- </para></listitem>
- <listitem><para>Click "Finish" to close the
- New Connections Dialog.
- </para></listitem>
- <listitem><para>
- If necessary, use the drop-down menu now in the
- "Connection" field and pick the IP Address you entered.
- </para></listitem>
- <listitem><para>
- Assuming you are connecting as the root user,
- which is the default for QEMU x86-64 SDK images provided by
- the Yocto Project, in the "Remote Absolute File Path for
- C/C++ Application" field, browse to
- <filename>/home/root/</filename><replaceable>ProjectName</replaceable>
- (e.g. <filename>/home/root/hello</filename>).
- You could also browse to any other path you have write
- access to on the target such as
- <filename>/usr/bin</filename>.
- This location is where your application will be located on
- the QEMU system.
- If you fail to browse to and specify an appropriate
- location, QEMU will not understand what to remotely
- launch.
- Eclipse is helpful in that it auto fills your application
- name for you assuming you browsed to a directory.
- <note><title>Tips</title>
- <itemizedlist>
- <listitem><para>
- If you are prompted to provide a username
- and to optionally set a password, be sure
- you provide "root" as the username and you
- leave the password field blank.
- </para></listitem>
- <listitem><para>
- If browsing to a directory fails or times
- out, but you can
- <filename>ssh</filename> into your QEMU
- or target from the command line and you
- have proxies set up, it is likely that
- Eclipse is sending the SSH traffic to a
- proxy.
- In this case, either use TCF , or click on
- "Configure proxy settings" in the
- connection dialog and add the target IP
- address to the "bypass proxy" section.
- You might also need to change
- "Active Provider" from Native to Manual.
- </para></listitem>
- </itemizedlist>
- </note>
- </para></listitem>
- <listitem><para>
- Be sure you change to the "Debug" perspective in Eclipse.
- </para></listitem>
- <listitem><para>
- Click "Debug"
- </para></listitem>
- <listitem><para>
- Accept the debug perspective.
- </para></listitem>
- </orderedlist>
- </para>
- </section>
-
- <section id='neon-using-Linuxtools'>
- <title>Using Linuxtools</title>
-
- <para>
- As mentioned earlier in the manual, performance tools exist
- (Linuxtools) that enhance your development experience.
- These tools are aids in developing and debugging applications and
- images.
- You can run these tools from within the Eclipse IDE through the
- "Linuxtools" menu.
- </para>
-
- <para>
- For information on how to configure and use these tools, see
- <ulink url='http://www.eclipse.org/linuxtools/'>http://www.eclipse.org/linuxtools/</ulink>.
- </para>
- </section>
-</appendix>
-<!--
-vim: expandtab tw=80 ts=4
--->
diff --git a/poky/documentation/sdk-manual/sdk-appendix-obtain.xml b/poky/documentation/sdk-manual/sdk-appendix-obtain.xml
index 2cadcc1..765c0f2 100644
--- a/poky/documentation/sdk-manual/sdk-appendix-obtain.xml
+++ b/poky/documentation/sdk-manual/sdk-appendix-obtain.xml
@@ -216,12 +216,6 @@
TOOLCHAIN_TARGET_TASK_append = " libc-staticdev"
</literallayout>
</para></listitem>
- <listitem><para>
- For additional information on building the
- installer, see the
- <ulink url='https://wiki.yoctoproject.org/wiki/TipsAndTricks/RunningEclipseAgainstBuiltImage'>Cookbook guide to Making an <trademark class='trade'>Eclipse</trademark> Debug Capable Image</ulink>
- wiki page.
- </para></listitem>
</itemizedlist>
</note>
</para></listitem>
@@ -259,9 +253,6 @@
<listitem><para>
You want to use the root filesystem as the
target sysroot.
- For example, the Eclipse IDE environment with the Eclipse
- Yocto Plug-in installed allows you to use QEMU to boot
- under NFS.
</para></listitem>
<listitem><para>
You want to develop your target application
diff --git a/poky/documentation/sdk-manual/sdk-eclipse-project.xml b/poky/documentation/sdk-manual/sdk-eclipse-project.xml
deleted file mode 100644
index 15a9ae7..0000000
--- a/poky/documentation/sdk-manual/sdk-eclipse-project.xml
+++ /dev/null
@@ -1,1248 +0,0 @@
-<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
-"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
-[<!ENTITY % poky SYSTEM "../poky.ent"> %poky; ] >
-
-<chapter id='sdk-eclipse-project'>
-
- <title>Developing Applications Using <trademark class='trade'>Eclipse</trademark></title>
-
- <para>
- If you are familiar with the popular Eclipse IDE, you can use an
- Eclipse Yocto Plug-in to allow you to develop, deploy, and test your
- application all from within Eclipse.
- This chapter describes general workflow using the SDK and Eclipse
- and how to configure and set up Eclipse.
- <note><title>Notes</title>
- <itemizedlist>
- <listitem><para>
- This chapter assumes development of applications on top of
- an image prepared using the Yocto Project.
- As such, inclusion of a pre-built image or the building of
- an image is included in the workflow.
- </para></listitem>
- <listitem><para>
- The chapter also assumes development on a build host that
- is set up to use the Yocto Project.
- Realize that you can easily use Eclipse and the Yocto
- Project plug-in to develop an application for any number
- of images developed and tested on different machines.
- </para></listitem>
- </itemizedlist>
- </note>
- </para>
-
- <section id='application-development-workflow-using-eclipse'>
- <title>Application Development Workflow Using <trademark class='trade'>Eclipse</trademark></title>
-
- <para>
- The following figure and supporting list summarize a
- general workflow for application development that uses the
- SDK within the Eclipse IDE.
- The application developed runs on top of an image created using
- the Yocto Project.
- </para>
-
- <para>
- <imagedata fileref="figures/sdk-eclipse-dev-flow.png"
- width="7in" depth="7in" align="center" scale="100" />
- </para>
-
- <para>
- <orderedlist>
- <listitem><para>
- <emphasis>Prepare the Host System for the Yocto Project</emphasis>:
- Because this example workflow assumes development on a
- system set up to use the Yocto Project, you need to be
- sure your
- <ulink url='&YOCTO_DOCS_REF_URL;#hardware-build-system-term'>build host</ulink>
- can use the Yocto Project.
- See the
- "<ulink url='&YOCTO_DOCS_DEV_URL;#dev-preparing-the-build-host'>Preparing the Build Host</ulink>"
- section in the Yocto Project Development Tasks Manual for
- information on how to set up your build host.
- <note>
- Be sure you install the "xterm" package, which is a
- <ulink url='&YOCTO_DOCS_REF_URL;#required-packages-for-the-build-host'>graphical and Eclipse plug-in extra</ulink>
- needed by Eclipse.
- </note>
- </para></listitem>
- <listitem><para>
- <emphasis>Secure the Yocto Project Kernel Target Image</emphasis>:
- This example workflow assumes application development on
- top of an image built using the Yocto Project.
- Depending on whether you are using a pre-built image
- that matches your target architecture or you are using an
- image you build using the
- <ulink url='&YOCTO_DOCS_REF_URL;#build-system-term'>OpenEmbedded Build System</ulink>
- and where you are going to run the image while you
- develop your application (QEMU or real hardware), the
- area from which you get the image differs.
- <itemizedlist>
- <listitem><para>
- Download the image from
- <ulink url='&YOCTO_MACHINES_DL_URL;'><filename>machines</filename></ulink>
- if your target architecture is supported and
- you are going to develop and test your
- application on actual hardware.
- </para></listitem>
- <listitem><para>
- Download the image from
- <ulink url='&YOCTO_QEMU_DL_URL;'>
- <filename>machines/qemu</filename></ulink> if
- your target architecture is supported and you
- are going to develop and test your application
- using the
- <ulink url='&YOCTO_DOCS_DEV_URL;#dev-manual-qemu'>QEMU Emulator</ulink>.
- </para></listitem>
- <listitem><para>
- Build your image if you cannot find a pre-built
- image that matches your target architecture.
- If your target architecture is similar to a
- supported architecture, you can modify the
- kernel image before you build it.
- See the
- "<ulink url='&YOCTO_DOCS_KERNEL_DEV_URL;#using-devtool-to-patch-the-kernel'>Using <filename>devtool</filename> to Patch the Kernel</ulink>"
- section in the Yocto Project Linux Kernel
- Development Manual for an example.
- You can also see the
- "<ulink url='https://wiki.yoctoproject.org/wiki/TipsAndTricks/RunningEclipseAgainstBuiltImage#Making_a_Suitable_Qemux86_Image'>Making a Suitable Qemux86 Image</ulink>"
- wiki for steps needed to build an image suitable
- for QEMU and for debugging within the Eclipse IDE.
- </para></listitem>
- </itemizedlist>
- </para></listitem>
- <listitem>
- <para><emphasis>Install the SDK</emphasis>:
- The SDK provides a target-specific cross-development
- toolchain, the root filesystem, the QEMU emulator, and
- other tools that can help you develop your application.
- For information on how to install the SDK, see the
- "<link linkend='sdk-installing-the-sdk'>Installing the SDK</link>"
- section.
- </para></listitem>
- <listitem><para>
- <emphasis>Secure the Target Root Filesystem and the Cross-Development Toolchain</emphasis>:
- You need to find and download the appropriate root
- filesystem and the cross-development toolchain.</para>
-
- <para>You can find the tarballs for the root filesystem
- in the same area used for the kernel image.
- Depending on the type of image you are running, the
- root filesystem you need differs.
- For example, if you are developing an application that
- runs on an image that supports Sato, you need to get a
- root filesystem that supports Sato.</para>
-
- <para>You can find the cross-development toolchains at
- <ulink url='&YOCTO_TOOLCHAIN_DL_URL;'><filename>toolchains</filename></ulink>.
- Be sure to get the correct toolchain for your
- development host and your target architecture.
- See the "<link linkend='sdk-locating-pre-built-sdk-installers'>Locating Pre-Built SDK Installers</link>"
- section for information and the
- "<link linkend='sdk-installing-the-sdk'>Installing the SDK</link>"
- section for installation information.
- <note>
- As an alternative to downloading an SDK, you can
- build the SDK installer.
- For information on building the installer, see the
- "<link linkend='sdk-building-an-sdk-installer'>Building an SDK Installer</link>"
- section.
- Another helpful resource for building an installer
- is the
- "<ulink url='https://wiki.yoctoproject.org/wiki/TipsAndTricks/RunningEclipseAgainstBuiltImage'>Cookbook guide to Making an Eclipse Debug Capable Image</ulink>"
- wiki page.
- </note>
- </para></listitem>
- <listitem><para>
- <emphasis>Create and Build Your Application</emphasis>:
- You need to have source files for your application.
- Once you have the files, you can use the Eclipse IDE
- to import them and build the project.
- </para></listitem>
- <listitem><para>
- <emphasis>Deploy the Image With the Application</emphasis>:
- Using the Eclipse IDE, you can deploy your image to the
- hardware or to QEMU through the project's preferences.
- You can also use Eclipse to load and test your image
- under QEMU.
- See the
- "<ulink url='&YOCTO_DOCS_DEV_URL;#dev-manual-qemu'>Using the Quick EMUlator (QEMU)</ulink>"
- chapter in the Yocto Project Development Tasks Manual
- for information on using QEMU.
- </para></listitem>
- <listitem><para>
- <emphasis>Test and Debug the Application</emphasis>:
- Once your application is deployed, you need to test it.
- Within the Eclipse IDE, you can use the debugging
- environment along with supported performance enhancing
- <ulink url='http://www.eclipse.org/linuxtools/'>Linux Tools</ulink>.
- </para></listitem>
- </orderedlist>
- </para>
- </section>
-
- <section id='adt-eclipse'>
- <title>Working Within Eclipse</title>
-
- <para>
- The Eclipse IDE is a popular development environment and it
- fully supports development using the Yocto Project.
- </para>
-
- <para>
- When you install and configure the Eclipse Yocto Project
- Plug-in into the Eclipse IDE, you maximize your Yocto
- Project experience.
- Installing and configuring the Plug-in results in an
- environment that has extensions specifically designed to let
- you more easily develop software.
- These extensions allow for cross-compilation, deployment, and
- execution of your output into a QEMU emulation session as well
- as actual target hardware.
- You can also perform cross-debugging and profiling.
- The environment also supports performance enhancing
- <ulink url='http://www.eclipse.org/linuxtools/'>tools</ulink>
- that allow you to perform remote profiling, tracing,
- collection of power data, collection of latency data, and
- collection of performance data.
- <note>
- This release of the Yocto Project supports both the Oxygen
- and Neon versions of the Eclipse IDE.
- This section provides information on how to use the Oxygen
- release with the Yocto Project.
- For information on how to use the Neon version of Eclipse
- with the Yocto Project, see
- "<link linkend='sdk-appendix-neon-yp-eclipse-plug-in'>Appendix D</link>".
- </note>
- </para>
-
- <section id='oxygen-setting-up-the-eclipse-ide'>
- <title>Setting Up the Oxygen Version of the Eclipse IDE</title>
-
- <para>
- To develop within the Eclipse IDE, you need to do the
- following:
- <orderedlist>
- <listitem><para>
- Install the Oxygen version of the Eclipse IDE.
- </para></listitem>
- <listitem><para>
- Configure the Eclipse IDE.
- </para></listitem>
- <listitem><para>
- Install the Eclipse Yocto Plug-in.
- </para></listitem>
- <listitem><para>
- Configure the Eclipse Yocto Plug-in.
- </para></listitem>
- </orderedlist>
- <note>
- Do not install Eclipse from your distribution's package
- repository.
- Be sure to install Eclipse from the official Eclipse
- download site as directed in the next section.
- </note>
- </para>
-
- <section id='oxygen-installing-eclipse-ide'>
- <title>Installing the Oxygen Eclipse IDE</title>
-
- <para>
- Follow these steps to locate, install, and configure
- Oxygen Eclipse:
- <orderedlist>
- <listitem><para>
- <emphasis>Locate the Oxygen Download:</emphasis>
- Open a browser and go to
- <ulink url='http://www.eclipse.org/oxygen/'>http://www.eclipse.org/oxygen/</ulink>.
- </para></listitem>
- <listitem><para>
- <emphasis>Download the Tarball:</emphasis>
- Click through the "Download" buttons to
- download the file.
- </para></listitem>
- <listitem><para>
- <emphasis>Unpack the Tarball:</emphasis>
- Move to a clean directory and unpack the
- tarball.
- Here is an example:
- <literallayout class='monospaced'>
- $ cd ~
- $ tar -xzvf ~/Downloads/eclipse-inst-linux64.tar.gz
- </literallayout>
- Everything unpacks into a folder named
- "eclipse-installer".
- </para></listitem>
- <listitem><para>
- <emphasis>Launch the Installer:</emphasis>
- Use the following commands to launch the
- installer:
- <literallayout class='monospaced'>
- $ cd ~/eclipse-installer
- $ ./eclipse-inst
- </literallayout>
- </para></listitem>
- <listitem><para>
- <emphasis>Select Your IDE:</emphasis>
- From the list, select the "Eclipse IDE for
- C/C++ Developers".
- </para></listitem>
- <listitem><para>
- <emphasis>Install the Software:</emphasis>
- Click "Install" to begin the installation.
- Accept all the certificates and any license
- agreements.
- Click "Install" again to finish the installation.
- </para></listitem>
- <listitem><para>
- <emphasis>Launch Oxygen:</emphasis>
- Accept the default "workspace" and click the
- "Launch" button.
- You should see the Eclipse welcome page from which
- can click "workbench" to enter your workspace.
- <note>
- The executable for Eclipse is located in the
- <filename>eclipse/cpp-oxygen/eclipse</filename>
- folder.
- To launch Eclipse outside of the installation
- process, simply execute that binary.
- Here is an example:
- <literallayout class='monospaced'>
- $ ~/eclipse/cpp-oxygen/eclipse/eclipse
- </literallayout>
- </note>
- </para></listitem>
- </orderedlist>
- </para>
- </section>
-
- <section id='oxygen-configuring-the-eclipse-ide'>
- <title>Configuring the Oxygen Eclipse IDE</title>
-
- <para>
- Follow these steps to configure the Oxygen Eclipse IDE.
- <note><title>Notes</title>
- <itemizedlist>
- <listitem><para>
- Depending on how you installed Eclipse and what
- you have already done, some of the options do
- not appear.
- If you cannot find an option as directed by the
- manual, it has already been installed.
- </para></listitem>
- <listitem><para>
- If you want to see all options regardless of
- whether they are installed or not, deselect the
- "Hide items that are already installed"
- check box.
- </para></listitem>
- </itemizedlist>
- </note>
- <orderedlist>
- <listitem><para>
- Be sure Eclipse is running and you are in your
- workbench.
- Just click "workbench" if you are not in your
- default workspace.
- </para></listitem>
- <listitem><para>
- Select "Install New Software" from the "Help"
- pull-down menu.
- </para></listitem>
- <listitem><para>
- Select
- "Oxygen - http://download.eclipse.org/releases/oxygen"
- from the "Work with:" pull-down menu.
- </para></listitem>
- <listitem><para>
- Expand the box next to "Linux Tools" and select
- the following:
- <literallayout class='monospaced'>
- C/C++ Remote (Over TCF/TE) Run/Debug Launcher
- TM Terminal
- </literallayout>
- </para></listitem>
- <listitem><para>
- Expand the box next to "Mobile and Device
- Development" and select the following
- boxes:
- <literallayout class='monospaced'>
- C/C++ Remote (Over TCF/TE) Run/Debug Launcher
- Remote System Explorer User Actions
- TM Terminal
- TCF Remote System Explorer add-in
- TCF Target Explorer
- </literallayout>
- </para></listitem>
- <listitem><para>
- Expand the box next to "Programming Languages"
- and select the following box:
- <literallayout class='monospaced'>
- C/C++ Development Tools SDK
- </literallayout>
- </para></listitem>
- <listitem><para>
- Complete the installation by clicking through
- appropriate "Next" and "Finish" buttons and then
- restart the Eclipse IDE.
- </para></listitem>
- </orderedlist>
- </para>
- </section>
-
- <section id='oxygen-installing-the-eclipse-yocto-plug-in'>
- <title>Installing or Accessing the Oxygen Eclipse Yocto Plug-in</title>
-
- <para>
- You can install the Eclipse Yocto Plug-in into the
- Eclipse IDE one of two ways: use the Yocto Project's
- Eclipse Update site to install the pre-built plug-in,
- or build and install the plug-in from the latest
- source code.
- </para>
-
- <section id='oxygen-new-software'>
- <title>Installing the Pre-built Plug-in from the Yocto Project Eclipse Update Site</title>
-
- <para>
- To install the Oxygen Eclipse Yocto Plug-in from the
- update site, follow these steps:
- <orderedlist>
- <listitem><para>
- Start up the Eclipse IDE.
- </para></listitem>
- <listitem><para>
- In Eclipse, select "Install New
- Software" from the "Help" menu.
- </para></listitem>
- <listitem><para>
- Click "Add..." in the "Work with:" area.
- </para></listitem>
- <listitem><para>
- Enter
- <filename>&ECLIPSE_DL_PLUGIN_URL;/oxygen</filename>
- in the URL field and provide a meaningful
- name in the "Name" field.
- </para></listitem>
- <listitem><para>
- Click "OK" to have the entry automatically
- populate the "Work with:" field and to have
- the items for installation appear in the window
- below.
- </para></listitem>
- <listitem><para>
- Check the boxes next to the following:
- <literallayout class='monospaced'>
- Yocto Project SDK Plug-in
- Yocto Project Documentation plug-in
- </literallayout>
- </para></listitem>
- <listitem><para>
- Complete the remaining software
- installation steps and then restart the
- Eclipse IDE to finish the installation of
- the plug-in.
- <note>
- You can click "OK" when prompted about
- installing software that contains
- unsigned content.
- </note>
- </para></listitem>
- </orderedlist>
- </para>
- </section>
-
- <section id='oxygen-zip-file-method'>
- <title>Installing the Plug-in Using the Latest Source Code</title>
-
- <para>
- To install the Oxygen Eclipse Yocto Plug-in from the
- latest source code, follow these steps:
- <orderedlist>
- <listitem><para>
- Be sure your build host has JDK version 1.8
- or greater.
- On a Linux build host you can determine the
- version using the following command:
- <literallayout class='monospaced'>
- $ java -version
- </literallayout>
- </para></listitem>
- <listitem><para>
- Install X11-related packages:
- <literallayout class='monospaced'>
- $ sudo apt-get install xauth
- </literallayout>
- </para></listitem>
- <listitem><para>
- In a new terminal shell, create a
- Git repository with:
- <literallayout class='monospaced'>
- $ cd ~
- $ git clone git://git.yoctoproject.org/eclipse-yocto
- </literallayout>
- </para></listitem>
- <listitem><para>
- Use Git to create the correct tag:
- <literallayout class='monospaced'>
- $ cd ~/eclipse-yocto
- $ git checkout -b oxygen/&DISTRO_NAME_NO_CAP; remotes/origin/oxygen/&DISTRO_NAME_NO_CAP;
- </literallayout>
- This creates a local tag named
- <filename>oxygen/&DISTRO_NAME_NO_CAP;</filename>
- based on the branch
- <filename>origin/oxygen/&DISTRO_NAME_NO_CAP;</filename>.
- You are put into a detached HEAD state,
- which is fine since you are only going to
- be building and not developing.
- </para></listitem>
- <listitem><para>
- Change to the <filename>scripts</filename>
- directory within the Git repository:
- <literallayout class='monospaced'>
- $ cd scripts
- </literallayout>
- </para></listitem>
- <listitem><para>
- Set up the local build environment
- by running the setup script:
- <literallayout class='monospaced'>
- $ ./setup.sh
- </literallayout>
- When the script finishes execution,
- it prompts you with instructions on how to
- run the <filename>build.sh</filename>
- script, which is also in the
- <filename>scripts</filename> directory of
- the Git repository created earlier.
- </para></listitem>
- <listitem><para>
- Run the <filename>build.sh</filename>
- script as directed.
- Be sure to provide the tag name,
- documentation branch, and a release name.
- </para>
- <para>
- Following is an example:
- <literallayout class='monospaced'>
- $ ECLIPSE_HOME=/home/scottrif/eclipse-yocto/scripts/eclipse ./build.sh -l oxygen/&DISTRO_NAME_NO_CAP; master yocto-&DISTRO; 2>&1 | tee build.log
- </literallayout>
- The previous example command adds the tag
- you need for
- <filename>oxygen/&DISTRO_NAME_NO_CAP;</filename>
- to <filename>HEAD</filename>, then tells
- the build script to use the local (-l) Git
- checkout for the build.
- After running the script, the file
- <filename>org.yocto.sdk-</filename><replaceable>release</replaceable><filename>-</filename><replaceable>date</replaceable><filename>-archive.zip</filename>
- is in the current directory.
- </para></listitem>
- <listitem><para>
- If necessary, start the Eclipse IDE
- and be sure you are in the Workbench.
- </para></listitem>
- <listitem><para>
- Select "Install New Software" from
- the "Help" pull-down menu.
- </para></listitem>
- <listitem><para>
- Click "Add".
- </para></listitem>
- <listitem><para>
- Provide anything you want in the
- "Name" field.
- </para></listitem>
- <listitem><para>
- Click "Archive" and browse to the
- ZIP file you built earlier.
- This ZIP file should not be "unzipped", and
- must be the
- <filename>*archive.zip</filename> file
- created by running the
- <filename>build.sh</filename> script.
- </para></listitem>
- <listitem><para>
- Click the "OK" button.
- </para></listitem>
- <listitem><para>
- Check the boxes that appear in
- the installation window to install the
- following:
- <literallayout class='monospaced'>
- Yocto Project SDK Plug-in
- Yocto Project Documentation plug-in
- </literallayout>
- </para></listitem>
- <listitem><para>
- Finish the installation by clicking
- through the appropriate buttons.
- You can click "OK" when prompted about
- installing software that contains unsigned
- content.
- </para></listitem>
- <listitem><para>
- Restart the Eclipse IDE if necessary.
- </para></listitem>
- </orderedlist>
- </para>
-
- <para>
- At this point you should be able to configure the
- Eclipse Yocto Plug-in as described in the
- "<link linkend='oxygen-configuring-the-eclipse-yocto-plug-in'>Configuring the Oxygen Eclipse Yocto Plug-in</link>"
- section.
- </para>
- </section>
- </section>
-
- <section id='oxygen-configuring-the-eclipse-yocto-plug-in'>
- <title>Configuring the Oxygen Eclipse Yocto Plug-In</title>
-
- <para>
- Configuring the Oxygen Eclipse Yocto Plug-in involves
- setting the Cross Compiler options and the Target
- options.
- The configurations you choose become the default
- settings for all projects.
- You do have opportunities to change them later when
- you configure the project (see the following section).
- </para>
-
- <para>
- To start, you need to do the following from within the
- Eclipse IDE:
- <orderedlist>
- <listitem><para>
- Choose "Preferences" from the "Window" menu to
- display the Preferences Dialog.
- </para></listitem>
- <listitem><para>
- Click "Yocto Project SDK" to display
- the configuration screen.
- </para></listitem>
- </orderedlist>
- The following sub-sections describe how to configure
- the plug-in.
- <note>
- Throughout the descriptions, a start-to-finish
- example for preparing a QEMU image for use with
- Eclipse is referenced as the "wiki" and is linked
- to the example on the
- "<ulink url='https://wiki.yoctoproject.org/wiki/TipsAndTricks/RunningEclipseAgainstBuiltImage'> Cookbook guide to Making an Eclipse Debug Capable Image</ulink>"
- wiki page.
- </note>
- </para>
-
- <section id='oxygen-configuring-the-cross-compiler-options'>
- <title>Configuring the Cross-Compiler Options</title>
-
- <para>
- Cross Compiler options enable Eclipse to use your
- specific cross compiler toolchain.
- To configure these options, you must select
- the type of toolchain, point to the toolchain,
- specify the sysroot location, and select the target
- architecture.
- <itemizedlist>
- <listitem><para>
- <emphasis>Selecting the Toolchain Type:</emphasis>
- Choose between "Standalone pre-built toolchain"
- and "Build system derived toolchain" for
- Cross Compiler Options.
- <itemizedlist>
- <listitem><para>
- <emphasis>Standalone Pre-built Toolchain:</emphasis>
- Select this type when you are using
- a stand-alone cross-toolchain.
- For example, suppose you are an
- application developer and do not
- need to build a target image.
- Instead, you just want to use an
- architecture-specific toolchain on
- an existing kernel and target root
- filesystem.
- In other words, you have downloaded
- and installed a pre-built toolchain
- for an existing image.
- </para></listitem>
- <listitem><para>
- <emphasis>Build System Derived Toolchain:</emphasis>
- Select this type if you built the
- toolchain as part of the
- <ulink url='&YOCTO_DOCS_REF_URL;#build-directory'>Build Directory</ulink>.
- When you select "Build system derived
- toolchain", you are using the toolchain
- built and bundled inside the Build
- Directory.
- For example, suppose you created a
- suitable image using the steps in the
- <ulink url='https://wiki.yoctoproject.org/wiki/TipsAndTricks/RunningEclipseAgainstBuiltImage'>wiki</ulink>.
- In this situation, you would select
- "Build system derived toolchain".
- </para></listitem>
- </itemizedlist>
- </para></listitem>
- <listitem><para>
- <emphasis>Specify the Toolchain Root Location:</emphasis>
- If you are using a stand-alone pre-built
- toolchain, you should be pointing to where
- it is installed (e.g.
- <filename>/opt/poky/&DISTRO;</filename>).
- See the
- "<link linkend='sdk-installing-the-sdk'>Installing the SDK</link>"
- section for information about how the SDK is
- installed.</para>
-
- <para>If you are using a build system
- derived toolchain, the path you provide for
- the "Toolchain Root Location" field is the
- <ulink url='&YOCTO_DOCS_REF_URL;#build-directory'>Build Directory</ulink>
- from which you run the
- <filename>bitbake</filename> command (e.g
- <filename>/home/scottrif/poky/build</filename>).
- </para>
- <para>For more information, see the
- "<link linkend='sdk-building-an-sdk-installer'>Building an SDK Installer</link>"
- section.
- </para></listitem>
- <listitem><para>
- <emphasis>Specify Sysroot Location:</emphasis>
- This location is where the root filesystem
- for the target hardware resides.
- </para>
-
- <para>This location depends on where you
- separately extracted and installed the
- target filesystem when you either built
- it or downloaded it.
- <note>
- If you downloaded the root filesystem
- for the target hardware rather than
- built it, you must download the
- <filename>sato-sdk</filename> image
- in order to build any c/c++ projects.
- </note>
- As an example, suppose you prepared an
- image using the steps in the
- <ulink url='https://wiki.yoctoproject.org/wiki/TipsAndTricks/RunningEclipseAgainstBuiltImage'>wiki</ulink>.
- If so, the
- <filename>MY_QEMU_ROOTFS</filename>
- directory is found in the Build Directory
- and you would browse to and select that
- directory (e.g.
- <filename>/home/scottrif/poky/build/MY_QEMU_ROOTFS</filename>).
- </para>
-
- <para>For more information on how to
- install the toolchain and on how to extract
- and install the sysroot filesystem, see the
- "<link linkend='sdk-building-an-sdk-installer'>Building an SDK Installer</link>"
- section.
- </para></listitem>
- <listitem><para>
- <emphasis>Select the Target Architecture:</emphasis>
- The target architecture is the type of
- hardware you are going to use or emulate.
- Use the pull-down "Target Architecture"
- menu to make your selection.
- The pull-down menu should have the
- supported architectures.
- If the architecture you need is not listed
- in the menu, you will need to build the
- image.
- See the
- "<ulink url='&YOCTO_DOCS_DEV_URL;#dev-building-a-simple-image'>Building a Simple Image</ulink>"
- section of the Yocto Project Development Tasks
- Manual for more information.
- You can also see the
- <ulink url='https://wiki.yoctoproject.org/wiki/TipsAndTricks/RunningEclipseAgainstBuiltImage'>wiki</ulink>.
- </para></listitem>
- </itemizedlist>
- </para>
- </section>
-
- <section id='oxygen-configuring-the-target-options'>
- <title>Configuring the Target Options</title>
-
- <para>
- You can choose to emulate hardware using the QEMU
- emulator, or you can choose to run your image on
- actual hardware.
- <itemizedlist>
- <listitem><para>
- <emphasis>QEMU:</emphasis>
- Select this option if you will be using the
- QEMU emulator.
- If you are using the emulator, you also
- need to locate the kernel and specify any
- custom options.</para>
-
- <para>If you selected the Build system derived
- toolchain, the target kernel you built will be
- located in the
- <ulink url='&YOCTO_DOCS_REF_URL;#build-directory'>Build Directory</ulink>
- in
- <filename>tmp/deploy/images/<replaceable>machine</replaceable></filename>
- directory.
- As an example, suppose you performed the
- steps in the
- <ulink url='https://wiki.yoctoproject.org/wiki/TipsAndTricks/RunningEclipseAgainstBuiltImage'>wiki</ulink>.
- In this case, you specify your Build
- Directory path followed by the image (e.g.
- <filename>/home/scottrif/poky/build/tmp/deploy/images/qemux86/bzImage-qemux86.bin</filename>).
- </para>
-
- <para>If you selected the standalone
- pre-built toolchain, the pre-built image
- you downloaded is located in the directory
- you specified when you downloaded the
- image.</para>
-
- <para>Most custom options are for advanced
- QEMU users to further customize their QEMU
- instance.
- These options are specified between paired
- angled brackets.
- Some options must be specified outside the
- brackets.
- In particular, the options
- <filename>serial</filename>,
- <filename>nographic</filename>, and
- <filename>kvm</filename> must all be
- outside the brackets.
- Use the <filename>man qemu</filename>
- command to get help on all the options and
- their use.
- The following is an example:
- <literallayout class='monospaced'>
- serial ‘<-m 256 -full-screen>’
- </literallayout>
- Regardless of the mode, Sysroot is already
- defined as part of the Cross-Compiler
- Options configuration in the "Sysroot
- Location:" field.
- </para></listitem>
- <listitem><para>
- <emphasis>External HW:</emphasis>
- Select this option if you will be using
- actual hardware.
- </para></listitem>
- </itemizedlist>
- </para>
-
- <para>
- Click "Apply and Close" to save your plug-in
- configurations.
- </para>
- </section>
- </section>
- </section>
-
- <section id='oxygen-creating-the-project'>
- <title>Creating the Project</title>
-
- <para>
- You can create two types of projects: Autotools-based, or
- Makefile-based.
- This section describes how to create Autotools-based
- projects from within the Eclipse IDE.
- For information on creating Makefile-based projects in a
- terminal window, see the
- "<link linkend='makefile-based-projects'>Makefile-Based Projects</link>"
- section.
- <note>
- Do not use special characters in project names
- (e.g. spaces, underscores, etc.). Doing so can
- cause configuration to fail.
- </note>
- </para>
-
- <para>
- To create a project based on a Yocto template and then
- display the source code, follow these steps:
- <orderedlist>
- <listitem><para>
- Select "C/C++ Project" from the "File -> New" menu.
- </para></listitem>
- <listitem><para>
- Select "C Managed Build" from the available options and
- click "Next".
- </para></listitem>
- <listitem><para>
- Expand "Yocto Project SDK Autotools Project".
- </para></listitem>
- <listitem><para>
- Select "Hello World ANSI C Autotools Projects".
- This is an Autotools-based project based on a Yocto
- template.
- </para></listitem>
- <listitem><para>
- Put a name in the "Project name:" field.
- Do not use hyphens as part of the name
- (e.g. "hello").
- </para></listitem>
- <listitem><para>
- Click "Next".
- </para></listitem>
- <listitem><para>
- Add appropriate information in the various fields.
- </para></listitem>
- <listitem><para>
- Click "Finish".
- </para></listitem>
- <listitem><para>
- If the "open perspective" prompt appears,
- click "Yes" so that you in the C/C++ perspective.
- </para></listitem>
- <listitem><para>The left-hand navigation pane shows
- your project.
- You can display your source by double clicking the
- project's source file.
- </para></listitem>
- </orderedlist>
- </para>
- </section>
-
- <section id='oxygen-configuring-the-cross-toolchains'>
- <title>Configuring the Cross-Toolchains</title>
-
- <para>
- The earlier section,
- "<link linkend='oxygen-configuring-the-eclipse-yocto-plug-in'>Configuring the Oxygen Eclipse Yocto Plug-in</link>",
- sets up the default project configurations.
- You can override these settings for a given project by
- following these steps:
- <orderedlist>
- <listitem><para>
- Select "Yocto Project Settings" from
- the "Project -> Properties" menu.
- This selection brings up the Yocto Project Settings
- Dialog and allows you to make changes specific to
- an individual project.</para>
- <para>By default, the Cross Compiler Options and
- Target Options for a project are inherited from
- settings you provided using the Preferences Dialog
- as described earlier in the
- "<link linkend='oxygen-configuring-the-eclipse-yocto-plug-in'>Configuring the Oxygen Eclipse Yocto Plug-in</link>"
- section.
- The Yocto Project Settings Dialog allows you to
- override those default settings for a given
- project.
- </para></listitem>
- <listitem><para>
- Make or verify your configurations for the
- project and click "Apply and Close".
- </para></listitem>
- <listitem><para>
- Right-click in the navigation pane and select
- "Reconfigure Project" from the pop-up menu.
- This selection reconfigures the project by running
- <ulink url='https://en.wikipedia.org/wiki/GNU_Build_System'>Autotools GNU utility programs</ulink>
- such as Autoconf, Automake, and so forth in the
- workspace for your project.
- Click on the "Console" tab beneath your source code
- to see the results of reconfiguring your project.
- </para></listitem>
- </orderedlist>
- </para>
- </section>
-
- <section id='oxygen-building-the-project'>
- <title>Building the Project</title>
- <para>
- To build the project select "Build All" from the
- "Project" menu.
- The console should update and you can note the
- cross-compiler you are using (i.e.
- <filename>i586-poky-linux-gcc</filename> in this example).
- <note>
- When building "Yocto Project SDK Autotools" projects,
- the Eclipse IDE might display error messages for
- Functions/Symbols/Types that cannot be "resolved",
- even when the related include file is listed at the
- project navigator and when the project is able to
- build.
- For these cases only, it is recommended to add a new
- linked folder to the appropriate sysroot.
- Use these steps to add the linked folder:
- <orderedlist>
- <listitem><para>
- Select the project.
- </para></listitem>
- <listitem><para>
- Select "Folder" from the "File -> New" menu.
- </para></listitem>
- <listitem><para>
- In the "New Folder" Dialog, click the "Advanced"
- button and then activate "Link to
- alternate location (linked folder)" button.
- </para></listitem>
- <listitem><para>
- Click "Browse" to navigate to the include
- folder inside the same sysroot location
- selected in the Yocto Project
- configuration preferences.
- </para></listitem>
- <listitem><para>
- Click "Finish" to save the linked folder.
- </para></listitem>
- </orderedlist>
- </note>
- </para>
- </section>
-
- <section id='oxygen-starting-qemu-in-user-space-nfs-mode'>
- <title>Starting QEMU in User-Space NFS Mode</title>
-
- <para>
- To start the QEMU emulator from within Eclipse, follow
- these steps:
- <note>
- See the
- "<ulink url='&YOCTO_DOCS_DEV_URL;#dev-manual-qemu'>Using the Quick EMUlator (QEMU)</ulink>"
- chapter in the Yocto Project Development Tasks Manual
- for more information on using QEMU.
- </note>
- <orderedlist>
- <listitem><para>Expose and select "External Tools
- Configurations ..." from the "Run -> External
- Tools" menu.
- </para></listitem>
- <listitem><para>
- Locate and select your image in the navigation
- panel to the left
- (e.g. <filename>qemu_i586-poky-linux</filename>).
- </para></listitem>
- <listitem><para>
- Click "Run" to launch QEMU.
- <note>
- The host on which you are running QEMU must
- have the <filename>rpcbind</filename> utility
- running to be able to make RPC calls on a
- server on that machine.
- If QEMU does not invoke and you receive error
- messages involving
- <filename>rpcbind</filename>, follow the
- suggestions to get the service running.
- As an example, on a new Ubuntu 16.04 LTS
- installation, you must do the following in a new
- shell in order to get QEMU to launch:
- <literallayout class='monospaced'>
- $ sudo apt-get install rpcbind
- </literallayout>
- After installing <filename>rpcbind</filename>,
- you need to edit the
- <filename>/etc/init.d/rpcbind</filename> file
- to include the following line:
- <literallayout class='monospaced'>
- OPTIONS="-i -w"
- </literallayout>
- After modifying the file, you need to start the
- service:
- <literallayout class='monospaced'>
- $ sudo service portmap restart
- </literallayout>
- </note>
- </para></listitem>
- <listitem><para>
- If needed, enter your host root password in
- the shell window at the prompt.
- This sets up a <filename>Tap 0</filename>
- connection needed for running in user-space NFS
- mode.
- </para></listitem>
- <listitem><para>
- Wait for QEMU to launch.
- </para></listitem>
- <listitem><para>
- Once QEMU launches, you can begin operating
- within that environment.
- One useful task at this point would be to determine
- the IP Address for the user-space NFS by using the
- <filename>ifconfig</filename> command.
- The IP address of the QEMU machine appears in the
- xterm window.
- You can use this address to help you see which
- particular
- IP address the instance of QEMU is using.
- </para></listitem>
- </orderedlist>
- </para>
- </section>
-
- <section id='oxygen-deploying-and-debugging-the-application'>
- <title>Deploying and Debugging the Application</title>
-
- <para>
- Once the QEMU emulator is running the image, you can deploy
- your application using the Eclipse IDE and then use
- the emulator to perform debugging.
- Follow these steps to deploy the application.
- <note>
- Currently, Eclipse does not support SSH port
- forwarding.
- Consequently, if you need to run or debug a remote
- application using the host display, you must create a
- tunneling connection from outside Eclipse and keep
- that connection alive during your work.
- For example, in a new terminal, run the following:
- <literallayout class='monospaced'>
- $ ssh -XY <replaceable>user_name</replaceable>@<replaceable>remote_host_ip</replaceable>
- </literallayout>
- Using the above form, here is an example:
- <literallayout class='monospaced'>
- $ ssh -XY root@192.168.7.2
- </literallayout>
- After running the command, add the command to be
- executed in Eclipse's run configuration before the
- application as follows:
- <literallayout class='monospaced'>
- export DISPLAY=:10.0
- </literallayout>
- Be sure to not destroy the connection during your QEMU
- session (i.e. do not
- exit out of or close that shell).
- </note>
- <orderedlist>
- <listitem><para>
- Select "Debug Configurations..." from the
- "Run" menu.
- </para></listitem>
- <listitem><para>
- In the left area, expand
- "C/C++Remote Application".
- </para></listitem>
- <listitem><para>
- Locate your project and select it to bring
- up a new tabbed view in the Debug Configurations
- Dialog.
- </para></listitem>
- <listitem><para>
- Click on the "Debugger" tab to see the
- cross-tool debugger you are using.
- Be sure to change to the debugger perspective in
- Eclipse.
- </para></listitem>
- <listitem><para>
- Click on the "Main" tab.
- </para></listitem>
- <listitem><para>
- Create a new connection to the QEMU instance
- by clicking on "new".</para></listitem>
- <listitem><para>Select "SSH", which
- means Secure Socket Shell and then click "OK".
- Optionally, you can select a TCF connection
- instead.
- </para></listitem>
- <listitem><para>
- Clear out the "Connection name" field and
- enter any name you want for the connection.
- </para></listitem>
- <listitem><para>
- Put the IP address for the connection in
- the "Host" field.
- For QEMU, the default is "192.168.7.2".
- However, if a previous QEMU session did not exit
- cleanly, the IP address increments (e.g.
- "192.168.7.3").
- <note>
- You can find the IP address for the current
- QEMU session by looking in the xterm that
- opens when you launch QEMU.
- </note>
- </para></listitem>
- <listitem><para>
- Enter "root", which
- is the default for QEMU, for the "User" field.
- Be sure to leave the password field empty.
- </para></listitem>
- <listitem><para>
- Click "Finish" to close the New Connections Dialog.
- </para></listitem>
- <listitem><para>
- If necessary, use the drop-down menu now in the
- "Connection" field and pick the IP Address you
- entered.
- </para></listitem>
- <listitem><para>
- Assuming you are connecting as the root
- user, which is the default for QEMU x86-64 SDK
- images provided by the Yocto Project, in the
- "Remote Absolute File Path for C/C++ Application"
- field, browse to
- <filename>/home/root/</filename><replaceable>ProjectName</replaceable>
- (e.g. <filename>/home/root/hello</filename>).
- You could also browse to any other path you have
- write access to on the target such as
- <filename>/usr/bin</filename>.
- This location is where your application will be
- located on the QEMU system.
- If you fail to browse to and specify an appropriate
- location, QEMU will not understand what to remotely
- launch.
- Eclipse is helpful in that it auto fills your
- application name for you assuming you browsed to a
- directory.
- <note><title>Tips</title>
- <itemizedlist>
- <listitem><para>
- If you are prompted to provide a username
- and to optionally set a password, be sure
- you provide "root" as the username and you
- leave the password field blank.
- </para></listitem>
- <listitem><para>
- If browsing to a directory fails or times
- out, but you can
- <filename>ssh</filename> into your QEMU
- or target from the command line and you
- have proxies set up, it is likely that
- Eclipse is sending the SSH traffic to a
- proxy.
- In this case, either use TCF , or click on
- "Configure proxy settings" in the
- connection dialog and add the target IP
- address to the "bypass proxy" section.
- You might also need to change
- "Active Provider" from Native to Manual.
- </para></listitem>
- </itemizedlist>
- </note>
- </para></listitem>
- <listitem><para>
- Be sure you change to the "Debug" perspective in
- Eclipse.
- </para></listitem>
- <listitem><para>
- Click "Debug"
- </para></listitem>
- <listitem><para>
- Accept the debug perspective.
- </para></listitem>
- </orderedlist>
- </para>
- </section>
-
- <section id='oxygen-using-Linuxtools'>
- <title>Using Linuxtools</title>
-
- <para>
- As mentioned earlier in the manual, performance tools exist
- (Linuxtools) that enhance your development experience.
- These tools are aids in developing and debugging
- applications and images.
- You can run these tools from within the Eclipse IDE through
- the "Linuxtools" menu.
- </para>
-
- <para>
- For information on how to configure and use these tools,
- see
- <ulink url='http://www.eclipse.org/linuxtools/'>http://www.eclipse.org/linuxtools/</ulink>.
- </para>
- </section>
- </section>
-</chapter>
-<!--
-vim: expandtab tw=80 ts=4
--->
diff --git a/poky/documentation/sdk-manual/sdk-extensible.xml b/poky/documentation/sdk-manual/sdk-extensible.xml
index 9be082d..f7c5c00 100644
--- a/poky/documentation/sdk-manual/sdk-extensible.xml
+++ b/poky/documentation/sdk-manual/sdk-extensible.xml
@@ -27,8 +27,7 @@
<para>
In addition to the functionality available through
<filename>devtool</filename>, you can alternatively make use of the
- toolchain directly, for example from Makefile, Autotools, and
- <trademark class='trade'>Eclipse</trademark>-based projects.
+ toolchain directly, for example from Makefile and Autotools.
See the
"<link linkend='sdk-working-projects'>Using the SDK Toolchain Directly</link>"
chapter for more information.
@@ -119,11 +118,6 @@
For information on building the installer, see the
"<link linkend='sdk-building-an-sdk-installer'>Building an SDK Installer</link>"
section.
- Another helpful resource for building an installer is the
- <ulink url='https://wiki.yoctoproject.org/wiki/TipsAndTricks/RunningEclipseAgainstBuiltImage'>Cookbook guide to Making an Eclipse Debug Capable Image</ulink>
- wiki page.
- This wiki page focuses on development when using the Eclipse
- IDE.
</note>
</para>
diff --git a/poky/documentation/sdk-manual/sdk-intro.xml b/poky/documentation/sdk-manual/sdk-intro.xml
index 8642be6..9169fe9 100644
--- a/poky/documentation/sdk-manual/sdk-intro.xml
+++ b/poky/documentation/sdk-manual/sdk-intro.xml
@@ -14,9 +14,6 @@
This manual provides information that explains how to use both the
Yocto Project extensible and standard SDKs to develop
applications and images.
- Additionally, the manual also provides information on how to use
- the popular <trademark class='trade'>Eclipse</trademark> IDE as part
- of your application development workflow within the SDK environment.
<note>
Prior to the 2.0 Release of the Yocto Project, application
development was primarily accomplished through the use of the
@@ -112,21 +109,6 @@
However, QEMU plays an important role in the development
process that revolves around use of the SDK.
</para></listitem>
- <listitem><para>
- The Eclipse IDE Yocto Plug-in.
- This plug-in is available for you if you are an Eclipse
- user.
- In the same manner as QEMU, the plug-in is not literally part
- of the SDK but is rather available for use as part of the
- development process.
- </para></listitem>
- <listitem><para>
- Various performance-related
- <ulink url='http://www.eclipse.org/linuxtools/index.php'>tools</ulink>
- that can enhance your development experience.
- These tools are also separate from the actual SDK but can be
- independently obtained and used in the development process.
- </para></listitem>
</itemizedlist>
</para>
@@ -271,53 +253,6 @@
</itemizedlist>
</para>
</section>
-
- <section id='eclipse-overview'>
- <title><trademark class='trade'>Eclipse</trademark> Yocto Plug-in</title>
-
- <para>
- The Eclipse IDE is a popular development environment and it fully
- supports development using the Yocto Project.
- When you install and configure the Eclipse Yocto Project Plug-in
- into the Eclipse IDE, you maximize your Yocto Project experience.
- Installing and configuring the Plug-in results in an environment
- that has extensions specifically designed to let you more easily
- develop software.
- These extensions allow for cross-compilation, deployment, and
- execution of your output into a QEMU emulation session.
- You can also perform cross-debugging and profiling.
- The environment also supports many performance-related
- <ulink url='http://www.eclipse.org/linuxtools/index.php'>tools</ulink>
- that enhance your development experience.
- <note>
- Previous releases of the Eclipse Yocto Plug-in supported
- "user-space tools" (i.e. LatencyTOP, PowerTOP, Perf, SystemTap,
- and Lttng-ust) that also added to the development experience.
- These tools have been deprecated with the release of the
- Eclipse Yocto Plug-in.
- </note>
- </para>
-
- <para>
- For information about the application development workflow that
- uses the Eclipse IDE and for a detailed example of how to install
- and configure the Eclipse Yocto Project Plug-in, see the
- "<link linkend='sdk-eclipse-project'>Developing Applications Using <trademark class='trade'>Eclipse</trademark></link>"
- Chapter.
- </para>
- </section>
-
- <section id='performance-enhancing-tools'>
- <title>Performance Enhancing Tools</title>
-
- <para>
- Supported performance enhancing tools are available that let you
- profile, debug, and perform tracing on your projects developed
- using Eclipse.
- For information on these tools see
- <ulink url='http://www.eclipse.org/linuxtools/'>http://www.eclipse.org/linuxtools/</ulink>.
- </para>
- </section>
</section>
<section id='sdk-development-model'>
diff --git a/poky/documentation/sdk-manual/sdk-manual-eclipse-customization.xsl b/poky/documentation/sdk-manual/sdk-manual-eclipse-customization.xsl
deleted file mode 100644
index 77ba5f5..0000000
--- a/poky/documentation/sdk-manual/sdk-manual-eclipse-customization.xsl
+++ /dev/null
@@ -1,35 +0,0 @@
-<?xml version='1.0'?>
-<xsl:stylesheet
- xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
- xmlns="http://www.w3.org/1999/xhtml"
- xmlns:fo="http://www.w3.org/1999/XSL/Format"
- version="1.0">
-
- <xsl:import href="http://downloads.yoctoproject.org/mirror/docbook-mirror/docbook-xsl-1.76.1/eclipse/eclipse3.xsl" />
-
-<!--
-
- <xsl:import href="../template/1.76.1/docbook-xsl-1.76.1/eclipse/eclipse3.xsl" />
-
- <xsl:import
- href="http://docbook.sourceforge.net/release/xsl/1.76.1/eclipse/eclipse3.xsl" />
-
--->
-
- <xsl:param name="chunker.output.indent" select="'yes'"/>
- <xsl:param name="chunk.quietly" select="1"/>
- <xsl:param name="chunk.first.sections" select="1"/>
- <xsl:param name="chunk.section.depth" select="10"/>
- <xsl:param name="use.id.as.filename" select="1"/>
- <xsl:param name="ulink.target" select="'_self'" />
- <xsl:param name="base.dir" select="'html/adt-manual/'"/>
- <xsl:param name="html.stylesheet" select="'../book.css'"/>
- <xsl:param name="eclipse.manifest" select="0"/>
- <xsl:param name="create.plugin.xml" select="0"/>
- <xsl:param name="suppress.navigation" select="1"/>
- <xsl:param name="generate.index" select="0"/>
- <xsl:param name="chapter.autolabel" select="1" />
- <xsl:param name="appendix.autolabel" select="1" />
- <xsl:param name="section.autolabel" select="1" />
- <xsl:param name="section.label.includes.component.label" select="1" />
-</xsl:stylesheet>
diff --git a/poky/documentation/sdk-manual/sdk-manual.xml b/poky/documentation/sdk-manual/sdk-manual.xml
index 1828119..7edd2c4 100644
--- a/poky/documentation/sdk-manual/sdk-manual.xml
+++ b/poky/documentation/sdk-manual/sdk-manual.xml
@@ -63,9 +63,14 @@
</revision>
<revision>
<revnumber>2.7</revnumber>
- <date>&REL_MONTH_YEAR;</date>
+ <date>May 2019</date>
<revremark>Released with the Yocto Project 2.7 Release.</revremark>
</revision>
+ <revision>
+ <revnumber>2.8</revnumber>
+ <date>&REL_MONTH_YEAR;</date>
+ <revremark>Released with the Yocto Project 2.8 Release.</revremark>
+ </revision>
</revhistory>
<copyright>
@@ -130,16 +135,12 @@
<xi:include href="sdk-working-projects.xml"/>
- <xi:include href="sdk-eclipse-project.xml"/>
-
<xi:include href="sdk-appendix-obtain.xml"/>
<xi:include href="sdk-appendix-customizing.xml"/>
<xi:include href="sdk-appendix-customizing-standard.xml"/>
- <xi:include href="sdk-appendix-neon.xml"/>
-
<!-- <index id='index'>
<title>Index</title>
</index>
diff --git a/poky/documentation/sdk-manual/sdk-using.xml b/poky/documentation/sdk-manual/sdk-using.xml
index 06fdb57..66b15cd 100644
--- a/poky/documentation/sdk-manual/sdk-using.xml
+++ b/poky/documentation/sdk-manual/sdk-using.xml
@@ -18,8 +18,8 @@
</para>
<para>
- You can use a standard SDK to work on Makefile, Autotools, and
- <trademark class='trade'>Eclipse</trademark>-based projects.
+ You can use a standard SDK to work on Makefile and Autotools-based
+ projects.
See the
"<link linkend='sdk-working-projects'>Using the SDK Toolchain Directly</link>"
chapter for more information.
@@ -111,11 +111,6 @@
For information on building the installer, see the
"<link linkend='sdk-building-an-sdk-installer'>Building an SDK Installer</link>"
section.
- Another helpful resource for building an installer is the
- <ulink url='https://wiki.yoctoproject.org/wiki/TipsAndTricks/RunningEclipseAgainstBuiltImage'>Cookbook guide to Making an Eclipse Debug Capable Image</ulink>
- wiki page.
- This wiki page focuses on development when using the Eclipse
- IDE.
</note>
</para>
diff --git a/poky/documentation/sdk-manual/sdk-working-projects.xml b/poky/documentation/sdk-manual/sdk-working-projects.xml
index d8cc422..521271d 100644
--- a/poky/documentation/sdk-manual/sdk-working-projects.xml
+++ b/poky/documentation/sdk-manual/sdk-working-projects.xml
@@ -7,12 +7,8 @@
<title>Using the SDK Toolchain Directly</title>
<para>
- You can use the SDK toolchain directly with Makefile,
- Autotools, and <trademark class='trade'>Eclipse</trademark>-based
- projects.
- This chapter covers the first two, while the
- "<link linkend='sdk-eclipse-project'>Developing Applications Using <trademark class='trade'>Eclipse</trademark></link>"
- Chapter covers the latter.
+ You can use the SDK toolchain directly with Makefile and
+ Autotools-based projects.
</para>
<section id='autotools-based-projects'>
diff --git a/poky/documentation/toaster-manual/toaster-manual.xml b/poky/documentation/toaster-manual/toaster-manual.xml
index 42dc6a3..b31659f 100644
--- a/poky/documentation/toaster-manual/toaster-manual.xml
+++ b/poky/documentation/toaster-manual/toaster-manual.xml
@@ -73,9 +73,14 @@
</revision>
<revision>
<revnumber>2.7</revnumber>
- <date>&REL_MONTH_YEAR;</date>
+ <date>May 2019</date>
<revremark>Released with the Yocto Project 2.7 Release.</revremark>
</revision>
+ <revision>
+ <revnumber>2.8</revnumber>
+ <date>&REL_MONTH_YEAR;</date>
+ <revremark>Released with the Yocto Project 2.8 Release.</revremark>
+ </revision>
</revhistory>
<copyright>
diff --git a/poky/documentation/tools/mega-manual.sed b/poky/documentation/tools/mega-manual.sed
index 79bbeef..9c4f4e2 100644
--- a/poky/documentation/tools/mega-manual.sed
+++ b/poky/documentation/tools/mega-manual.sed
@@ -1,36 +1,36 @@
# Processes bitbake-user-manual (<word>-<word>-<word> style).
# This style is for manual three-word folders, which currently is only the BitBake User Manual.
# We used to have the "yocto-project-qs" and "poky-ref-manual" folders but no longer do.
-# s@"ulink" href="http://www.yoctoproject.org/docs/2.7/[a-z]*-[a-z]*-[a-z]*/[a-z]*-[a-z]*-[a-z]*.html#@"link" href="#@g
-s@"ulink" href="http://www.yoctoproject.org/docs/2.7/bitbake-user-manual/bitbake-user-manual.html#@"link" href="#@g
+# s@"ulink" href="http://www.yoctoproject.org/docs/2.8/[a-z]*-[a-z]*-[a-z]*/[a-z]*-[a-z]*-[a-z]*.html#@"link" href="#@g
+s@"ulink" href="http://www.yoctoproject.org/docs/2.8/bitbake-user-manual/bitbake-user-manual.html#@"link" href="#@g
# Processes all other manuals (<word>-<word> style).
# This style is for manual folders that use two word, which is the standard now (e.g. "ref-manual").
# Here is the one-liner:
-# s@"ulink" href="http://www.yoctoproject.org/docs/2.7/[a-z]*-[a-z]*/[a-z]*-[a-z]*.html#@"link" href="#@g
+# s@"ulink" href="http://www.yoctoproject.org/docs/2.8/[a-z]*-[a-z]*/[a-z]*-[a-z]*.html#@"link" href="#@g
-s@"ulink" href="http://www.yoctoproject.org/docs/2.7/sdk-manual/sdk-manual.html#@"link" href="#@g
-s@"ulink" href="http://www.yoctoproject.org/docs/2.7/bsp-guide/bsp-guide.html#@"link" href="#@g
-s@"ulink" href="http://www.yoctoproject.org/docs/2.7/dev-manual/dev-manual.html#@"link" href="#@g
-s@"ulink" href="http://www.yoctoproject.org/docs/2.7/overview-manual/overview-manual.html#@"link" href="#@g
-s@"ulink" href="http://www.yoctoproject.org/docs/2.7/brief-yoctoprojectqs/brief-yoctoprojectqs.html#@"link" href="#@g
-s@"ulink" href="http://www.yoctoproject.org/docs/2.7/kernel-dev/kernel-dev.html#@"link" href="#@g
-s@"ulink" href="http://www.yoctoproject.org/docs/2.7/profile-manual/profile-manual.html#@"link" href="#@g
-s@"ulink" href="http://www.yoctoproject.org/docs/2.7/ref-manual/ref-manual.html#@"link" href="#@g
-s@"ulink" href="http://www.yoctoproject.org/docs/2.7/toaster-manual/toaster-manual.html#@"link" href="#@g
+s@"ulink" href="http://www.yoctoproject.org/docs/2.8/sdk-manual/sdk-manual.html#@"link" href="#@g
+s@"ulink" href="http://www.yoctoproject.org/docs/2.8/bsp-guide/bsp-guide.html#@"link" href="#@g
+s@"ulink" href="http://www.yoctoproject.org/docs/2.8/dev-manual/dev-manual.html#@"link" href="#@g
+s@"ulink" href="http://www.yoctoproject.org/docs/2.8/overview-manual/overview-manual.html#@"link" href="#@g
+s@"ulink" href="http://www.yoctoproject.org/docs/2.8/brief-yoctoprojectqs/brief-yoctoprojectqs.html#@"link" href="#@g
+s@"ulink" href="http://www.yoctoproject.org/docs/2.8/kernel-dev/kernel-dev.html#@"link" href="#@g
+s@"ulink" href="http://www.yoctoproject.org/docs/2.8/profile-manual/profile-manual.html#@"link" href="#@g
+s@"ulink" href="http://www.yoctoproject.org/docs/2.8/ref-manual/ref-manual.html#@"link" href="#@g
+s@"ulink" href="http://www.yoctoproject.org/docs/2.8/toaster-manual/toaster-manual.html#@"link" href="#@g
# Process cases where just an external manual is referenced without an id anchor
-s@<a class="ulink" href="http://www.yoctoproject.org/docs/2.7/brief-yoctoprojectqs/brief-yoctoprojectqs.html" target="_top">Yocto Project Quick Build</a>@Yocto Project Quick Build@g
-s@<a class="ulink" href="http://www.yoctoproject.org/docs/2.7/bitbake-user-manual/bitbake-user-manual.html" target="_top">BitBake User Manual</a>@BitBake User Manual@g
-s@<a class="ulink" href="http://www.yoctoproject.org/docs/2.7/dev-manual/dev-manual.html" target="_top">Yocto Project Development Tasks Manual</a>@Yocto Project Development Tasks Manual@g
-s@<a class="ulink" href="http://www.yoctoproject.org/docs/2.7/overview-manual/overview-manual.html" target="_top">Yocto Project Overview and Concepts Manual</a>@Yocto project Overview and Concepts Manual@g
-s@<a class="ulink" href="http://www.yoctoproject.org/docs/2.7/sdk-manual/sdk-manual.html" target="_top">Yocto Project Application Development and the Extensible Software Development Kit (eSDK)</a>@Yocto Project Application Development and the Extensible Software Development Kit (eSDK)@g
-s@<a class="ulink" href="http://www.yoctoproject.org/docs/2.7/bsp-guide/bsp-guide.html" target="_top">Yocto Project Board Support Package (BSP) Developer's Guide</a>@Yocto Project Board Support Package (BSP) Developer's Guide@g
-s@<a class="ulink" href="http://www.yoctoproject.org/docs/2.7/profile-manual/profile-manual.html" target="_top">Yocto Project Profiling and Tracing Manual</a>@Yocto Project Profiling and Tracing Manual@g
-s@<a class="ulink" href="http://www.yoctoproject.org/docs/2.7/kernel-dev/kernel-dev.html" target="_top">Yocto Project Linux Kernel Development Manual</a>@Yocto Project Linux Kernel Development Manual@g
-s@<a class="ulink" href="http://www.yoctoproject.org/docs/2.7/ref-manual/ref-manual.html" target="_top">Yocto Project Reference Manual</a>@Yocto Project Reference Manual@g
-s@<a class="ulink" href="http://www.yoctoproject.org/docs/2.7/toaster-manual/toaster-manual.html" target="_top">Toaster User Manual</a>@Toaster User Manual@g
+s@<a class="ulink" href="http://www.yoctoproject.org/docs/2.8/brief-yoctoprojectqs/brief-yoctoprojectqs.html" target="_top">Yocto Project Quick Build</a>@Yocto Project Quick Build@g
+s@<a class="ulink" href="http://www.yoctoproject.org/docs/2.8/bitbake-user-manual/bitbake-user-manual.html" target="_top">BitBake User Manual</a>@BitBake User Manual@g
+s@<a class="ulink" href="http://www.yoctoproject.org/docs/2.8/dev-manual/dev-manual.html" target="_top">Yocto Project Development Tasks Manual</a>@Yocto Project Development Tasks Manual@g
+s@<a class="ulink" href="http://www.yoctoproject.org/docs/2.8/overview-manual/overview-manual.html" target="_top">Yocto Project Overview and Concepts Manual</a>@Yocto project Overview and Concepts Manual@g
+s@<a class="ulink" href="http://www.yoctoproject.org/docs/2.8/sdk-manual/sdk-manual.html" target="_top">Yocto Project Application Development and the Extensible Software Development Kit (eSDK)</a>@Yocto Project Application Development and the Extensible Software Development Kit (eSDK)@g
+s@<a class="ulink" href="http://www.yoctoproject.org/docs/2.8/bsp-guide/bsp-guide.html" target="_top">Yocto Project Board Support Package (BSP) Developer's Guide</a>@Yocto Project Board Support Package (BSP) Developer's Guide@g
+s@<a class="ulink" href="http://www.yoctoproject.org/docs/2.8/profile-manual/profile-manual.html" target="_top">Yocto Project Profiling and Tracing Manual</a>@Yocto Project Profiling and Tracing Manual@g
+s@<a class="ulink" href="http://www.yoctoproject.org/docs/2.8/kernel-dev/kernel-dev.html" target="_top">Yocto Project Linux Kernel Development Manual</a>@Yocto Project Linux Kernel Development Manual@g
+s@<a class="ulink" href="http://www.yoctoproject.org/docs/2.8/ref-manual/ref-manual.html" target="_top">Yocto Project Reference Manual</a>@Yocto Project Reference Manual@g
+s@<a class="ulink" href="http://www.yoctoproject.org/docs/2.8/toaster-manual/toaster-manual.html" target="_top">Toaster User Manual</a>@Toaster User Manual@g
# Process a single, rouge occurrence of a linked reference to the Mega-Manual.
-s@<a class="ulink" href="http://www.yoctoproject.org/docs/2.7/mega-manual/mega-manual.html" target="_top">Yocto Project Mega-Manual</a>@Yocto Project Mega-Manual@g
+s@<a class="ulink" href="http://www.yoctoproject.org/docs/2.8/mega-manual/mega-manual.html" target="_top">Yocto Project Mega-Manual</a>@Yocto Project Mega-Manual@g
diff --git a/poky/meta-poky/conf/distro/poky-tiny.conf b/poky/meta-poky/conf/distro/poky-tiny.conf
index 243d492..a82d043 100644
--- a/poky/meta-poky/conf/distro/poky-tiny.conf
+++ b/poky/meta-poky/conf/distro/poky-tiny.conf
@@ -78,8 +78,8 @@
DISTRO_FEATURES_append_libc-uclibc = " largefile"
DISTRO_FEATURES_append_libc-musl = " largefile"
-DISTRO_FEATURES_class-native = "${DISTRO_FEATURES_DEFAULT} ${DISTRO_FEATURES_LIBC} ${POKY_DEFAULT_DISTRO_FEATURES}"
-DISTRO_FEATURES_class-nativesdk = "${DISTRO_FEATURES_DEFAULT} ${DISTRO_FEATURES_LIBC} ${POKY_DEFAULT_DISTRO_FEATURES}"
+DISTRO_FEATURES_class-native = "${DISTRO_FEATURES_DEFAULT} ${POKY_DEFAULT_DISTRO_FEATURES}"
+DISTRO_FEATURES_class-nativesdk = "${DISTRO_FEATURES_DEFAULT} ${POKY_DEFAULT_DISTRO_FEATURES}"
# enable mdev/busybox for init
VIRTUAL-RUNTIME_dev_manager = "busybox-mdev"
diff --git a/poky/meta-poky/conf/distro/poky.conf b/poky/meta-poky/conf/distro/poky.conf
index 6544c03..78621e6 100644
--- a/poky/meta-poky/conf/distro/poky.conf
+++ b/poky/meta-poky/conf/distro/poky.conf
@@ -1,6 +1,6 @@
DISTRO = "poky"
DISTRO_NAME = "Poky (Yocto Project Reference Distro)"
-DISTRO_VERSION = "2.6+snapshot-${DATE}"
+DISTRO_VERSION = "2.7+snapshot-${DATE}"
DISTRO_CODENAME = "master"
SDK_VENDOR = "-pokysdk"
SDK_VERSION = "${@d.getVar('DISTRO_VERSION').replace('snapshot-${DATE}', 'snapshot')}"
@@ -19,7 +19,7 @@
POKY_DEFAULT_EXTRA_RDEPENDS = "packagegroup-core-boot"
POKY_DEFAULT_EXTRA_RRECOMMENDS = "kernel-module-af-packet"
-DISTRO_FEATURES ?= "${DISTRO_FEATURES_DEFAULT} ${DISTRO_FEATURES_LIBC} ${POKY_DEFAULT_DISTRO_FEATURES}"
+DISTRO_FEATURES ?= "${DISTRO_FEATURES_DEFAULT} ${POKY_DEFAULT_DISTRO_FEATURES}"
PREFERRED_VERSION_linux-yocto ?= "5.0%"
@@ -50,11 +50,12 @@
svn://.*/.* http://downloads.yoctoproject.org/mirror/sources/ \n"
SANITY_TESTED_DISTROS ?= " \
- poky-2.5 \n \
poky-2.6 \n \
+ poky-2.7 \n \
ubuntu-16.04 \n \
ubuntu-18.04 \n \
fedora-28 \n \
+ fedora-29 \n \
centos-7 \n \
debian-8 \n \
debian-9 \n \
diff --git a/poky/meta-poky/conf/local.conf.sample.extended b/poky/meta-poky/conf/local.conf.sample.extended
index 87d211d..26603de 100644
--- a/poky/meta-poky/conf/local.conf.sample.extended
+++ b/poky/meta-poky/conf/local.conf.sample.extended
@@ -24,22 +24,10 @@
# For a quad-core machine, BB_NUMBER_THREADS = "4", PARALLEL_MAKE = "-j 4" would
# be appropriate for example.
-
-# glibc configurability is used to reduce minimal image's size.
-# the all supported glibc options are listed in DISTRO_FEATURES_LIBC
-# and disabled by default. Uncomment and copy the DISTRO_FEATURES_LIBC
-# and DISTRO_FEATURES definitions to local.conf to enable the options.
-#DISTRO_FEATURES_LIBC = "ipv6 libc-backtrace libc-big-macros libc-bsd libc-cxx-tests libc-catgets libc-charsets libc-crypt \
-# libc-crypt-ufc libc-db-aliases libc-envz libc-fcvt libc-fmtmsg libc-fstab libc-ftraverse \
-# libc-getlogin libc-idn libc-inet libc-inet-anl libc-libm libc-locales libc-locale-code \
-# libc-memusage libc-nsswitch libc-rcmd libc-rtld-debug libc-spawn libc-streams \
-# libc-utmp libc-utmpx libc-wordexp libc-posix-clang-wchar libc-posix-regexp libc-posix-regexp-glibc \
-# libc-posix-wchar-io"
-
-#DISTRO_FEATURES = "alsa bluetooth ext2 irda pcmcia usbgadget usbhost wifi nfs zeroconf pci ${DISTRO_FEATURES_LIBC}"
-
-# If you want to get an image based on directfb without x11, Please copy this variable to build/conf/local.conf
-#DISTRO_FEATURES = "alsa argp bluetooth ext2 irda largefile pcmcia usbgadget usbhost wifi xattr nfs zeroconf pci 3g directfb ${DISTRO_FEATURES_LIBC}"
+# If you want to get an image based on directfb without x11 alter
+# DISTRO_FEATURES:
+DISTRO_FEATURES_append = " directfb"
+DISTRO_FEATURES_remove = "x11"
# ENABLE_BINARY_LOCALE_GENERATION controls the generation of binary locale
# packages at build time using qemu-native. Disabling it (by setting it to 0)
diff --git a/poky/meta-selftest/COPYING.MIT b/poky/meta-selftest/COPYING.MIT
deleted file mode 100644
index 89de354..0000000
--- a/poky/meta-selftest/COPYING.MIT
+++ /dev/null
@@ -1,17 +0,0 @@
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in
-all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-THE SOFTWARE.
diff --git a/poky/meta-skeleton/COPYING.MIT b/poky/meta-skeleton/COPYING.MIT
deleted file mode 100644
index fb950dc..0000000
--- a/poky/meta-skeleton/COPYING.MIT
+++ /dev/null
@@ -1,17 +0,0 @@
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in
-all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-THE SOFTWARE.
diff --git a/poky/meta-yocto-bsp/conf/machine/beaglebone-yocto.conf b/poky/meta-yocto-bsp/conf/machine/beaglebone-yocto.conf
index 70d3cfe..bc18ee8 100644
--- a/poky/meta-yocto-bsp/conf/machine/beaglebone-yocto.conf
+++ b/poky/meta-yocto-bsp/conf/machine/beaglebone-yocto.conf
@@ -32,7 +32,7 @@
SPL_BINARY = "MLO"
UBOOT_SUFFIX = "img"
-UBOOT_MACHINE = "am335x_boneblack_config"
+UBOOT_MACHINE = "am335x_evm_defconfig"
UBOOT_ENTRYPOINT = "0x80008000"
UBOOT_LOADADDRESS = "0x80008000"
diff --git a/poky/meta-yocto-bsp/lib/oeqa/selftest/cases/systemd_boot.py b/poky/meta-yocto-bsp/lib/oeqa/selftest/cases/systemd_boot.py
index dfd739a..0a3a2cd 100644
--- a/poky/meta-yocto-bsp/lib/oeqa/selftest/cases/systemd_boot.py
+++ b/poky/meta-yocto-bsp/lib/oeqa/selftest/cases/systemd_boot.py
@@ -1,14 +1,11 @@
import os
from oeqa.selftest.case import OESelftestTestCase
-from oeqa.core.decorator.oeid import OETestID
from oeqa.core.decorator.depends import OETestDepends
from oeqa.utils.commands import runCmd, bitbake, get_bb_var, runqemu
class Systemdboot(OESelftestTestCase):
- @OETestID(1445)
- @OETestID(1528)
def test_efi_systemdboot_images_can_be_built(self):
"""
Summary: Check if systemd-boot images can be built correctly
diff --git a/poky/meta-yocto-bsp/recipes-kernel/linux/linux-yocto_4.19.bbappend b/poky/meta-yocto-bsp/recipes-kernel/linux/linux-yocto_4.19.bbappend
index 8e708cb..ec269d9 100644
--- a/poky/meta-yocto-bsp/recipes-kernel/linux/linux-yocto_4.19.bbappend
+++ b/poky/meta-yocto-bsp/recipes-kernel/linux/linux-yocto_4.19.bbappend
@@ -8,11 +8,11 @@
KMACHINE_genericx86-64 ?= "common-pc-64"
KMACHINE_beaglebone-yocto ?= "beaglebone"
-SRCREV_machine_genericx86 ?= "eebb51300a07804a020ec468b5f8c5bf720198d9"
-SRCREV_machine_genericx86-64 ?= "eebb51300a07804a020ec468b5f8c5bf720198d9"
-SRCREV_machine_edgerouter ?= "eebb51300a07804a020ec468b5f8c5bf720198d9"
-SRCREV_machine_beaglebone-yocto ?= "eebb51300a07804a020ec468b5f8c5bf720198d9"
-SRCREV_machine_mpc8315e-rdb ?= "8b60f968823256f5d2889c4520d70299ca21411b"
+SRCREV_machine_genericx86 ?= "5664dc14399edcaad210bbeb6343d84561fb3ea8"
+SRCREV_machine_genericx86-64 ?= "5664dc14399edcaad210bbeb6343d84561fb3ea8"
+SRCREV_machine_edgerouter ?= "5664dc14399edcaad210bbeb6343d84561fb3ea8"
+SRCREV_machine_beaglebone-yocto ?= "5664dc14399edcaad210bbeb6343d84561fb3ea8"
+SRCREV_machine_mpc8315e-rdb ?= "d419f4ca6ba4b097b8ad710a93b89510f5b2998c"
COMPATIBLE_MACHINE_genericx86 = "genericx86"
COMPATIBLE_MACHINE_genericx86-64 = "genericx86-64"
@@ -20,8 +20,8 @@
COMPATIBLE_MACHINE_beaglebone-yocto = "beaglebone-yocto"
COMPATIBLE_MACHINE_mpc8315e-rdb = "mpc8315e-rdb"
-LINUX_VERSION_genericx86 = "4.19.14"
-LINUX_VERSION_genericx86-64 = "4.19.14"
-LINUX_VERSION_edgerouter = "4.19.14"
-LINUX_VERSION_beaglebone-yocto = "4.19.14"
-LINUX_VERSION_mpc8315e-rdb = "4.19.14"
+LINUX_VERSION_genericx86 = "4.19.34"
+LINUX_VERSION_genericx86-64 = "4.19.34"
+LINUX_VERSION_edgerouter = "4.19.34"
+LINUX_VERSION_beaglebone-yocto = "4.19.34"
+LINUX_VERSION_mpc8315e-rdb = "4.19.34"
diff --git a/poky/meta-yocto-bsp/recipes-kernel/linux/linux-yocto_5.0.bbappend b/poky/meta-yocto-bsp/recipes-kernel/linux/linux-yocto_5.0.bbappend
index 5cf6e1f..d7cf121 100644
--- a/poky/meta-yocto-bsp/recipes-kernel/linux/linux-yocto_5.0.bbappend
+++ b/poky/meta-yocto-bsp/recipes-kernel/linux/linux-yocto_5.0.bbappend
@@ -8,11 +8,11 @@
KMACHINE_genericx86-64 ?= "common-pc-64"
KMACHINE_beaglebone-yocto ?= "beaglebone"
-SRCREV_machine_genericx86 ?= "3df4aae6074e94e794e27fe7f17451d9353cdf3d"
-SRCREV_machine_genericx86-64 ?= "3df4aae6074e94e794e27fe7f17451d9353cdf3d"
-SRCREV_machine_edgerouter ?= "3df4aae6074e94e794e27fe7f17451d9353cdf3d"
-SRCREV_machine_beaglebone-yocto ?= "3df4aae6074e94e794e27fe7f17451d9353cdf3d"
-SRCREV_machine_mpc8315e-rdb ?= "8b62af7f252af10588276802c4c6d7c502e875be"
+SRCREV_machine_genericx86 ?= "f990fd0ce123aa6035042efad09b2ddc3e7d48f4"
+SRCREV_machine_genericx86-64 ?= "f990fd0ce123aa6035042efad09b2ddc3e7d48f4"
+SRCREV_machine_edgerouter ?= "f990fd0ce123aa6035042efad09b2ddc3e7d48f4"
+SRCREV_machine_beaglebone-yocto ?= "f990fd0ce123aa6035042efad09b2ddc3e7d48f4"
+SRCREV_machine_mpc8315e-rdb ?= "670ce7e9db627d0c2067cfdb571ddc1f117818d8"
COMPATIBLE_MACHINE_genericx86 = "genericx86"
COMPATIBLE_MACHINE_genericx86-64 = "genericx86-64"
@@ -20,8 +20,8 @@
COMPATIBLE_MACHINE_beaglebone-yocto = "beaglebone-yocto"
COMPATIBLE_MACHINE_mpc8315e-rdb = "mpc8315e-rdb"
-LINUX_VERSION_genericx86 = "5.0.3"
-LINUX_VERSION_genericx86-64 = "5.0.3"
-LINUX_VERSION_edgerouter = "5.0.3"
-LINUX_VERSION_beaglebone-yocto = "5.0.3"
-LINUX_VERSION_mpc8315e-rdb = "5.0.3"
+LINUX_VERSION_genericx86 = "5.0.13"
+LINUX_VERSION_genericx86-64 = "5.0.13"
+LINUX_VERSION_edgerouter = "5.0.13"
+LINUX_VERSION_beaglebone-yocto = "5.0.13"
+LINUX_VERSION_mpc8315e-rdb = "5.0.13"
diff --git a/poky/meta/COPYING.GPLv2 b/poky/meta/COPYING.GPLv2
deleted file mode 100644
index d511905..0000000
--- a/poky/meta/COPYING.GPLv2
+++ /dev/null
@@ -1,339 +0,0 @@
- GNU GENERAL PUBLIC LICENSE
- Version 2, June 1991
-
- Copyright (C) 1989, 1991 Free Software Foundation, Inc.,
- 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- Everyone is permitted to copy and distribute verbatim copies
- of this license document, but changing it is not allowed.
-
- Preamble
-
- The licenses for most software are designed to take away your
-freedom to share and change it. By contrast, the GNU General Public
-License is intended to guarantee your freedom to share and change free
-software--to make sure the software is free for all its users. This
-General Public License applies to most of the Free Software
-Foundation's software and to any other program whose authors commit to
-using it. (Some other Free Software Foundation software is covered by
-the GNU Lesser General Public License instead.) You can apply it to
-your programs, too.
-
- When we speak of free software, we are referring to freedom, not
-price. Our General Public Licenses are designed to make sure that you
-have the freedom to distribute copies of free software (and charge for
-this service if you wish), that you receive source code or can get it
-if you want it, that you can change the software or use pieces of it
-in new free programs; and that you know you can do these things.
-
- To protect your rights, we need to make restrictions that forbid
-anyone to deny you these rights or to ask you to surrender the rights.
-These restrictions translate to certain responsibilities for you if you
-distribute copies of the software, or if you modify it.
-
- For example, if you distribute copies of such a program, whether
-gratis or for a fee, you must give the recipients all the rights that
-you have. You must make sure that they, too, receive or can get the
-source code. And you must show them these terms so they know their
-rights.
-
- We protect your rights with two steps: (1) copyright the software, and
-(2) offer you this license which gives you legal permission to copy,
-distribute and/or modify the software.
-
- Also, for each author's protection and ours, we want to make certain
-that everyone understands that there is no warranty for this free
-software. If the software is modified by someone else and passed on, we
-want its recipients to know that what they have is not the original, so
-that any problems introduced by others will not reflect on the original
-authors' reputations.
-
- Finally, any free program is threatened constantly by software
-patents. We wish to avoid the danger that redistributors of a free
-program will individually obtain patent licenses, in effect making the
-program proprietary. To prevent this, we have made it clear that any
-patent must be licensed for everyone's free use or not licensed at all.
-
- The precise terms and conditions for copying, distribution and
-modification follow.
-
- GNU GENERAL PUBLIC LICENSE
- TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
-
- 0. This License applies to any program or other work which contains
-a notice placed by the copyright holder saying it may be distributed
-under the terms of this General Public License. The "Program", below,
-refers to any such program or work, and a "work based on the Program"
-means either the Program or any derivative work under copyright law:
-that is to say, a work containing the Program or a portion of it,
-either verbatim or with modifications and/or translated into another
-language. (Hereinafter, translation is included without limitation in
-the term "modification".) Each licensee is addressed as "you".
-
-Activities other than copying, distribution and modification are not
-covered by this License; they are outside its scope. The act of
-running the Program is not restricted, and the output from the Program
-is covered only if its contents constitute a work based on the
-Program (independent of having been made by running the Program).
-Whether that is true depends on what the Program does.
-
- 1. You may copy and distribute verbatim copies of the Program's
-source code as you receive it, in any medium, provided that you
-conspicuously and appropriately publish on each copy an appropriate
-copyright notice and disclaimer of warranty; keep intact all the
-notices that refer to this License and to the absence of any warranty;
-and give any other recipients of the Program a copy of this License
-along with the Program.
-
-You may charge a fee for the physical act of transferring a copy, and
-you may at your option offer warranty protection in exchange for a fee.
-
- 2. You may modify your copy or copies of the Program or any portion
-of it, thus forming a work based on the Program, and copy and
-distribute such modifications or work under the terms of Section 1
-above, provided that you also meet all of these conditions:
-
- a) You must cause the modified files to carry prominent notices
- stating that you changed the files and the date of any change.
-
- b) You must cause any work that you distribute or publish, that in
- whole or in part contains or is derived from the Program or any
- part thereof, to be licensed as a whole at no charge to all third
- parties under the terms of this License.
-
- c) If the modified program normally reads commands interactively
- when run, you must cause it, when started running for such
- interactive use in the most ordinary way, to print or display an
- announcement including an appropriate copyright notice and a
- notice that there is no warranty (or else, saying that you provide
- a warranty) and that users may redistribute the program under
- these conditions, and telling the user how to view a copy of this
- License. (Exception: if the Program itself is interactive but
- does not normally print such an announcement, your work based on
- the Program is not required to print an announcement.)
-
-These requirements apply to the modified work as a whole. If
-identifiable sections of that work are not derived from the Program,
-and can be reasonably considered independent and separate works in
-themselves, then this License, and its terms, do not apply to those
-sections when you distribute them as separate works. But when you
-distribute the same sections as part of a whole which is a work based
-on the Program, the distribution of the whole must be on the terms of
-this License, whose permissions for other licensees extend to the
-entire whole, and thus to each and every part regardless of who wrote it.
-
-Thus, it is not the intent of this section to claim rights or contest
-your rights to work written entirely by you; rather, the intent is to
-exercise the right to control the distribution of derivative or
-collective works based on the Program.
-
-In addition, mere aggregation of another work not based on the Program
-with the Program (or with a work based on the Program) on a volume of
-a storage or distribution medium does not bring the other work under
-the scope of this License.
-
- 3. You may copy and distribute the Program (or a work based on it,
-under Section 2) in object code or executable form under the terms of
-Sections 1 and 2 above provided that you also do one of the following:
-
- a) Accompany it with the complete corresponding machine-readable
- source code, which must be distributed under the terms of Sections
- 1 and 2 above on a medium customarily used for software interchange; or,
-
- b) Accompany it with a written offer, valid for at least three
- years, to give any third party, for a charge no more than your
- cost of physically performing source distribution, a complete
- machine-readable copy of the corresponding source code, to be
- distributed under the terms of Sections 1 and 2 above on a medium
- customarily used for software interchange; or,
-
- c) Accompany it with the information you received as to the offer
- to distribute corresponding source code. (This alternative is
- allowed only for noncommercial distribution and only if you
- received the program in object code or executable form with such
- an offer, in accord with Subsection b above.)
-
-The source code for a work means the preferred form of the work for
-making modifications to it. For an executable work, complete source
-code means all the source code for all modules it contains, plus any
-associated interface definition files, plus the scripts used to
-control compilation and installation of the executable. However, as a
-special exception, the source code distributed need not include
-anything that is normally distributed (in either source or binary
-form) with the major components (compiler, kernel, and so on) of the
-operating system on which the executable runs, unless that component
-itself accompanies the executable.
-
-If distribution of executable or object code is made by offering
-access to copy from a designated place, then offering equivalent
-access to copy the source code from the same place counts as
-distribution of the source code, even though third parties are not
-compelled to copy the source along with the object code.
-
- 4. You may not copy, modify, sublicense, or distribute the Program
-except as expressly provided under this License. Any attempt
-otherwise to copy, modify, sublicense or distribute the Program is
-void, and will automatically terminate your rights under this License.
-However, parties who have received copies, or rights, from you under
-this License will not have their licenses terminated so long as such
-parties remain in full compliance.
-
- 5. You are not required to accept this License, since you have not
-signed it. However, nothing else grants you permission to modify or
-distribute the Program or its derivative works. These actions are
-prohibited by law if you do not accept this License. Therefore, by
-modifying or distributing the Program (or any work based on the
-Program), you indicate your acceptance of this License to do so, and
-all its terms and conditions for copying, distributing or modifying
-the Program or works based on it.
-
- 6. Each time you redistribute the Program (or any work based on the
-Program), the recipient automatically receives a license from the
-original licensor to copy, distribute or modify the Program subject to
-these terms and conditions. You may not impose any further
-restrictions on the recipients' exercise of the rights granted herein.
-You are not responsible for enforcing compliance by third parties to
-this License.
-
- 7. If, as a consequence of a court judgment or allegation of patent
-infringement or for any other reason (not limited to patent issues),
-conditions are imposed on you (whether by court order, agreement or
-otherwise) that contradict the conditions of this License, they do not
-excuse you from the conditions of this License. If you cannot
-distribute so as to satisfy simultaneously your obligations under this
-License and any other pertinent obligations, then as a consequence you
-may not distribute the Program at all. For example, if a patent
-license would not permit royalty-free redistribution of the Program by
-all those who receive copies directly or indirectly through you, then
-the only way you could satisfy both it and this License would be to
-refrain entirely from distribution of the Program.
-
-If any portion of this section is held invalid or unenforceable under
-any particular circumstance, the balance of the section is intended to
-apply and the section as a whole is intended to apply in other
-circumstances.
-
-It is not the purpose of this section to induce you to infringe any
-patents or other property right claims or to contest validity of any
-such claims; this section has the sole purpose of protecting the
-integrity of the free software distribution system, which is
-implemented by public license practices. Many people have made
-generous contributions to the wide range of software distributed
-through that system in reliance on consistent application of that
-system; it is up to the author/donor to decide if he or she is willing
-to distribute software through any other system and a licensee cannot
-impose that choice.
-
-This section is intended to make thoroughly clear what is believed to
-be a consequence of the rest of this License.
-
- 8. If the distribution and/or use of the Program is restricted in
-certain countries either by patents or by copyrighted interfaces, the
-original copyright holder who places the Program under this License
-may add an explicit geographical distribution limitation excluding
-those countries, so that distribution is permitted only in or among
-countries not thus excluded. In such case, this License incorporates
-the limitation as if written in the body of this License.
-
- 9. The Free Software Foundation may publish revised and/or new versions
-of the General Public License from time to time. Such new versions will
-be similar in spirit to the present version, but may differ in detail to
-address new problems or concerns.
-
-Each version is given a distinguishing version number. If the Program
-specifies a version number of this License which applies to it and "any
-later version", you have the option of following the terms and conditions
-either of that version or of any later version published by the Free
-Software Foundation. If the Program does not specify a version number of
-this License, you may choose any version ever published by the Free Software
-Foundation.
-
- 10. If you wish to incorporate parts of the Program into other free
-programs whose distribution conditions are different, write to the author
-to ask for permission. For software which is copyrighted by the Free
-Software Foundation, write to the Free Software Foundation; we sometimes
-make exceptions for this. Our decision will be guided by the two goals
-of preserving the free status of all derivatives of our free software and
-of promoting the sharing and reuse of software generally.
-
- NO WARRANTY
-
- 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
-FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
-OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
-PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
-OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
-TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
-PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
-REPAIR OR CORRECTION.
-
- 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
-WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
-REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
-INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
-OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
-TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
-YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
-PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
-POSSIBILITY OF SUCH DAMAGES.
-
- END OF TERMS AND CONDITIONS
-
- How to Apply These Terms to Your New Programs
-
- If you develop a new program, and you want it to be of the greatest
-possible use to the public, the best way to achieve this is to make it
-free software which everyone can redistribute and change under these terms.
-
- To do so, attach the following notices to the program. It is safest
-to attach them to the start of each source file to most effectively
-convey the exclusion of warranty; and each file should have at least
-the "copyright" line and a pointer to where the full notice is found.
-
- <one line to give the program's name and a brief idea of what it does.>
- Copyright (C) <year> <name of author>
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License along
- with this program; if not, write to the Free Software Foundation, Inc.,
- 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-
-Also add information on how to contact you by electronic and paper mail.
-
-If the program is interactive, make it output a short notice like this
-when it starts in an interactive mode:
-
- Gnomovision version 69, Copyright (C) year name of author
- Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
- This is free software, and you are welcome to redistribute it
- under certain conditions; type `show c' for details.
-
-The hypothetical commands `show w' and `show c' should show the appropriate
-parts of the General Public License. Of course, the commands you use may
-be called something other than `show w' and `show c'; they could even be
-mouse-clicks or menu items--whatever suits your program.
-
-You should also get your employer (if you work as a programmer) or your
-school, if any, to sign a "copyright disclaimer" for the program, if
-necessary. Here is a sample; alter the names:
-
- Yoyodyne, Inc., hereby disclaims all copyright interest in the program
- `Gnomovision' (which makes passes at compilers) written by James Hacker.
-
- <signature of Ty Coon>, 1 April 1989
- Ty Coon, President of Vice
-
-This General Public License does not permit incorporating your program into
-proprietary programs. If your program is a subroutine library, you may
-consider it more useful to permit linking proprietary applications with the
-library. If this is what you want to do, use the GNU Lesser General
-Public License instead of this License.
diff --git a/poky/meta/classes/ccmake.bbclass b/poky/meta/classes/ccmake.bbclass
index 4114daa..df5134a 100644
--- a/poky/meta/classes/ccmake.bbclass
+++ b/poky/meta/classes/ccmake.bbclass
@@ -81,7 +81,7 @@
with open(d.expand("${WORKDIR}/site-file.cmake"), "w") as f:
for k, kt, v in added:
- f.write("SET({0} \"{1}\" CACHE {2} "")\n".format(k, v, kt))
+ f.write("SET({0} \"{1}\" CACHE {2} \"\")\n".format(k, v, kt))
bb.plain("Configuration cmake fragment written to: {0}".format(d.expand("${WORKDIR}/site-file.cmake")))
# restore the original config
diff --git a/poky/meta/classes/cml1.bbclass b/poky/meta/classes/cml1.bbclass
index 98d24ce..c7f6723 100644
--- a/poky/meta/classes/cml1.bbclass
+++ b/poky/meta/classes/cml1.bbclass
@@ -1,7 +1,7 @@
cml1_do_configure() {
set -e
unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS
- oe_runmake oldconfig
+ yes '' | oe_runmake oldconfig
}
EXPORT_FUNCTIONS do_configure
diff --git a/poky/meta/classes/distutils.bbclass b/poky/meta/classes/distutils.bbclass
index 9862731..3759b58 100644
--- a/poky/meta/classes/distutils.bbclass
+++ b/poky/meta/classes/distutils.bbclass
@@ -9,6 +9,9 @@
--install-lib=${PYTHON_SITEPACKAGES_DIR} \
--install-data=${datadir}"
+DISTUTILS_PYTHON = "python"
+DISTUTILS_PYTHON_class-native = "nativepython"
+
distutils_do_configure() {
if [ "${CLEANBROKEN}" != "1" ] ; then
NO_FETCH_BUILD=1 \
@@ -49,29 +52,20 @@
# support filenames with *spaces*
# only modify file if it contains path and recompile it
- find ${D} -name "*.py" -exec grep -q ${D} {} \; -exec sed -i -e s:${D}::g {} \; -exec ${STAGING_BINDIR_NATIVE}/python-native/python -mcompileall {} \;
+ find ${D} -name "*.py" -exec grep -q ${D} {} \; \
+ -exec sed -i -e s:${D}::g {} \; \
+ -exec ${STAGING_BINDIR_NATIVE}/python-native/python -mcompileall {} \;
- if test -e ${D}${bindir} ; then
- for i in ${D}${bindir}/* ; do \
- if [ ${PN} != "${BPN}-native" ]; then
- sed -i -e s:${STAGING_BINDIR_NATIVE}/python-native/python:${USRBINPATH}/env\ python:g $i
- fi
+ for i in ${D}${bindir}/* ${D}${sbindir}/*; do
+ if [ -f "$i" ]; then
+ sed -i -e s:${PYTHON}:${USRBINPATH}/env\ ${DISTUTILS_PYTHON}:g $i
sed -i -e s:${STAGING_BINDIR_NATIVE}:${bindir}:g $i
- done
- fi
-
- if [ -e ${D}${sbindir} ]; then
- for i in ${D}${sbindir}/* ; do \
- if [ ${PN} != "${BPN}-native" ]; then
- sed -i -e s:${STAGING_BINDIR_NATIVE}/python-native/python:${USRBINPATH}/env\ python:g $i
- fi
- sed -i -e s:${STAGING_BINDIR_NATIVE}:${bindir}:g $i
- done
- fi
+ fi
+ done
rm -f ${D}${PYTHON_SITEPACKAGES_DIR}/easy-install.pth
rm -f ${D}${PYTHON_SITEPACKAGES_DIR}/site.py*
-
+
#
# FIXME: Bandaid against wrong datadir computation
#
@@ -81,7 +75,8 @@
fi
# Fix backport modules
- if [ -e ${STAGING_LIBDIR}/${PYTHON_DIR}/site-packages/backports/__init__.py ] && [ -e ${D}${PYTHON_SITEPACKAGES_DIR}/backports/__init__.py ]; then
+ if [ -e ${STAGING_LIBDIR}/${PYTHON_DIR}/site-packages/backports/__init__.py ] &&
+ [ -e ${D}${PYTHON_SITEPACKAGES_DIR}/backports/__init__.py ]; then
rm ${D}${PYTHON_SITEPACKAGES_DIR}/backports/__init__.py;
rm ${D}${PYTHON_SITEPACKAGES_DIR}/backports/__init__.pyc;
fi
diff --git a/poky/meta/classes/distutils3.bbclass b/poky/meta/classes/distutils3.bbclass
index 834e322..05a24bf 100644
--- a/poky/meta/classes/distutils3.bbclass
+++ b/poky/meta/classes/distutils3.bbclass
@@ -10,6 +10,9 @@
--install-lib=${PYTHON_SITEPACKAGES_DIR} \
--install-data=${datadir}"
+DISTUTILS_PYTHON = "python3"
+DISTUTILS_PYTHON_class-native = "nativepython3"
+
distutils3_do_configure() {
if [ "${CLEANBROKEN}" != "1" ] ; then
NO_FETCH_BUILD=1 \
@@ -53,24 +56,18 @@
bbfatal_log "'${PYTHON_PN} setup.py install ${DISTUTILS_INSTALL_ARGS}' execution failed."
# support filenames with *spaces*
- find ${D} -name "*.py" -exec grep -q ${D} {} \; -exec sed -i -e s:${D}::g {} \;
+ find ${D} -name "*.py" -exec grep -q ${D} {} \; \
+ -exec sed -i -e s:${D}::g {} \;
- if test -e ${D}${bindir} ; then
- for i in ${D}${bindir}/* ; do \
- sed -i -e s:${STAGING_BINDIR_NATIVE}/${PYTHON_PN}-native/${PYTHON_PN}:${USRBINPATH}/env\ ${PYTHON_PN}:g $i
+ for i in ${D}${bindir}/* ${D}${sbindir}/*; do
+ if [ -f "$i" ]; then
+ sed -i -e s:${PYTHON}:${USRBINPATH}/env\ ${DISTUTILS_PYTHON}:g $i
sed -i -e s:${STAGING_BINDIR_NATIVE}:${bindir}:g $i
- done
- fi
-
- if test -e ${D}${sbindir}; then
- for i in ${D}${sbindir}/* ; do \
- sed -i -e s:${STAGING_BINDIR_NATIVE}/python-${PYTHON_PN}/${PYTHON_PN}:${USRBINPATH}/env\ ${PYTHON_PN}:g $i
- sed -i -e s:${STAGING_BINDIR_NATIVE}:${bindir}:g $i
- done
- fi
+ fi
+ done
rm -f ${D}${PYTHON_SITEPACKAGES_DIR}/easy-install.pth
-
+
#
# FIXME: Bandaid against wrong datadir computation
#
diff --git a/poky/meta/classes/go.bbclass b/poky/meta/classes/go.bbclass
index 78c2d68..b6d9372 100644
--- a/poky/meta/classes/go.bbclass
+++ b/poky/meta/classes/go.bbclass
@@ -20,8 +20,6 @@
GO386[export] = "0"
GO386_x86_class-target = "${TARGET_GO386}"
GO386_x86_class-target[export] = "1"
-GO386_i586_class-target = "${TARGET_GO386}"
-GO386_i586_class-target[export] = "1"
GOMIPS[export] = "0"
GOMIPS_mips_class-target = "${TARGET_GOMIPS}"
@@ -132,7 +130,7 @@
install -d ${D}${libdir}/go/src/${GO_IMPORT}
tar -C ${S}/src/${GO_IMPORT} -cf - --exclude-vcs --exclude '*.test' --exclude 'testdata' . | \
tar -C ${D}${libdir}/go/src/${GO_IMPORT} --no-same-owner -xf -
- tar -C ${B} -cf - pkg | tar -C ${D}${libdir}/go --no-same-owner -xf -
+ tar -C ${B} -cf - --exclude-vcs pkg | tar -C ${D}${libdir}/go --no-same-owner -xf -
if [ -n "`ls ${B}/${GO_BUILD_BINDIR}/`" ]; then
install -d ${D}${bindir}
diff --git a/poky/meta/classes/goarch.bbclass b/poky/meta/classes/goarch.bbclass
index 909646b..166dea9 100644
--- a/poky/meta/classes/goarch.bbclass
+++ b/poky/meta/classes/goarch.bbclass
@@ -3,13 +3,13 @@
BUILD_GOTUPLE = "${BUILD_GOOS}_${BUILD_GOARCH}"
HOST_GOOS = "${@go_map_os(d.getVar('HOST_OS'), d)}"
HOST_GOARCH = "${@go_map_arch(d.getVar('HOST_ARCH'), d)}"
-HOST_GOARM = "${@go_map_arm(d.getVar('HOST_ARCH'), d.getVar('BASE_GOARM'), d)}"
+HOST_GOARM = "${@go_map_arm(d.getVar('HOST_ARCH'), d)}"
HOST_GO386 = "${@go_map_386(d.getVar('HOST_ARCH'), d.getVar('TUNE_FEATURES'), d)}"
HOST_GOMIPS = "${@go_map_mips(d.getVar('HOST_ARCH'), d.getVar('TUNE_FEATURES'), d)}"
HOST_GOTUPLE = "${HOST_GOOS}_${HOST_GOARCH}"
TARGET_GOOS = "${@go_map_os(d.getVar('TARGET_OS'), d)}"
TARGET_GOARCH = "${@go_map_arch(d.getVar('TARGET_ARCH'), d)}"
-TARGET_GOARM = "${@go_map_arm(d.getVar('TARGET_ARCH'), d.getVar('BASE_GOARM'), d)}"
+TARGET_GOARM = "${@go_map_arm(d.getVar('TARGET_ARCH'), d)}"
TARGET_GO386 = "${@go_map_386(d.getVar('TARGET_ARCH'), d.getVar('TUNE_FEATURES'), d)}"
TARGET_GOMIPS = "${@go_map_mips(d.getVar('TARGET_ARCH'), d.getVar('TUNE_FEATURES'), d)}"
TARGET_GOTUPLE = "${TARGET_GOOS}_${TARGET_GOARCH}"
@@ -81,10 +81,9 @@
else:
raise bb.parse.SkipRecipe("Unsupported CPU architecture: %s" % a)
-def go_map_arm(a, f, d):
- import re
- if re.match('arm.*', a):
- return f
+def go_map_arm(a, d):
+ if a.startswith("arm"):
+ return d.getVar('BASE_GOARM')
return ''
def go_map_386(a, f, d):
diff --git a/poky/meta/classes/gobject-introspection.bbclass b/poky/meta/classes/gobject-introspection.bbclass
index 4ceb0c6..504f75e 100644
--- a/poky/meta/classes/gobject-introspection.bbclass
+++ b/poky/meta/classes/gobject-introspection.bbclass
@@ -6,14 +6,24 @@
# This also sets up autoconf-based recipes to build introspection data (or not),
# depending on distro and machine features (see gobject-introspection-data class).
inherit python3native gobject-introspection-data
+
+# meson: default option name to enable/disable introspection. This matches most
+# project's configuration. In doubts - check meson_options.txt in project's
+# source path.
+GIR_MESON_OPTION ?= 'introspection'
+GIR_MESON_ENABLE_FLAG ?= 'true'
+GIR_MESON_DISABLE_FLAG ?= 'false'
+
+# Auto enable/disable based on GI_DATA_ENABLED
EXTRA_OECONF_prepend_class-target = "${@bb.utils.contains('GI_DATA_ENABLED', 'True', '--enable-introspection', '--disable-introspection', d)} "
+EXTRA_OEMESON_prepend_class-target = "-D${GIR_MESON_OPTION}=${@bb.utils.contains('GI_DATA_ENABLED', 'True', '${GIR_MESON_ENABLE_FLAG}', '${GIR_MESON_DISABLE_FLAG}', d)} "
# When building native recipes, disable introspection, as it is not necessary,
# pulls in additional dependencies, and makes build times longer
EXTRA_OECONF_prepend_class-native = "--disable-introspection "
EXTRA_OECONF_prepend_class-nativesdk = "--disable-introspection "
-
-UNKNOWN_CONFIGURE_WHITELIST_append = " --enable-introspection --disable-introspection"
+EXTRA_OEMESON_prepend_class-native = "-D${GIR_MESON_OPTION}=${GIR_MESON_DISABLE_FLAG} "
+EXTRA_OEMESON_prepend_class-nativesdk = "-D${GIR_MESON_OPTION}=${GIR_MESON_DISABLE_FLAG} "
# Generating introspection data depends on a combination of native and target
# introspection tools, and qemu to run the target tools.
diff --git a/poky/meta/classes/gtk-doc.bbclass b/poky/meta/classes/gtk-doc.bbclass
index 707d74d..7dd662b 100644
--- a/poky/meta/classes/gtk-doc.bbclass
+++ b/poky/meta/classes/gtk-doc.bbclass
@@ -10,13 +10,24 @@
GTKDOC_ENABLED ?= "${@bb.utils.contains('DISTRO_FEATURES', 'api-documentation', \
bb.utils.contains('MACHINE_FEATURES', 'qemu-usermode', 'True', 'False', d), 'False', d)}"
+# meson: default option name to enable/disable gtk-doc. This matches most
+# project's configuration. In doubts - check meson_options.txt in project's
+# source path.
+GTKDOC_MESON_OPTION ?= 'docs'
+GTKDOC_MESON_ENABLE_FLAG ?= 'true'
+GTKDOC_MESON_DISABLE_FLAG ?= 'false'
+
+# Auto enable/disable based on GTKDOC_ENABLED
EXTRA_OECONF_prepend_class-target = "${@bb.utils.contains('GTKDOC_ENABLED', 'True', '--enable-gtk-doc --enable-gtk-doc-html --disable-gtk-doc-pdf', \
'--disable-gtk-doc', d)} "
+EXTRA_OEMESON_prepend_class-target = "-D${GTKDOC_MESON_OPTION}=${@bb.utils.contains('GTKDOC_ENABLED', 'True', '${GTKDOC_MESON_ENABLE_FLAG}', '${GTKDOC_MESON_DISABLE_FLAG}', d)} "
# When building native recipes, disable gtkdoc, as it is not necessary,
# pulls in additional dependencies, and makes build times longer
EXTRA_OECONF_prepend_class-native = "--disable-gtk-doc "
EXTRA_OECONF_prepend_class-nativesdk = "--disable-gtk-doc "
+EXTRA_OEMESON_prepend_class-native = "-D${GTKDOC_MESON_OPTION}=${GTKDOC_MESON_DISABLE_FLAG} "
+EXTRA_OEMESON_prepend_class-nativesdk = "-D${GTKDOC_MESON_OPTION}=${GTKDOC_MESON_DISABLE_FLAG} "
# Even though gtkdoc is disabled on -native, gtk-doc package is still
# needed for m4 macros.
diff --git a/poky/meta/classes/gtk-icon-cache.bbclass b/poky/meta/classes/gtk-icon-cache.bbclass
index d87167a..66fe781 100644
--- a/poky/meta/classes/gtk-icon-cache.bbclass
+++ b/poky/meta/classes/gtk-icon-cache.bbclass
@@ -1,8 +1,8 @@
FILES_${PN} += "${datadir}/icons/hicolor"
-DEPENDS += "${@['hicolor-icon-theme', '']['${BPN}' == 'hicolor-icon-theme']} gtk-icon-utils-native"
+DEPENDS +=" ${@['hicolor-icon-theme', '']['${BPN}' == 'hicolor-icon-theme']} gtk+3-native"
-PACKAGE_WRITE_DEPS += "gtk-icon-utils-native gdk-pixbuf-native"
+PACKAGE_WRITE_DEPS += "gtk+3-native gdk-pixbuf-native"
gtk_icon_cache_postinst() {
if [ "x$D" != "x" ]; then
diff --git a/poky/meta/classes/icecc.bbclass b/poky/meta/classes/icecc.bbclass
index 6d003dc..edb0e10 100644
--- a/poky/meta/classes/icecc.bbclass
+++ b/poky/meta/classes/icecc.bbclass
@@ -312,6 +312,7 @@
# dummy python version of set_icecc_env
return
+set_icecc_env[vardepsexclude] += "KERNEL_CC"
set_icecc_env() {
if [ "${@use_icecc(bb, d)}" = "no" ]
then
diff --git a/poky/meta/classes/image.bbclass b/poky/meta/classes/image.bbclass
index 276d0d3..d2b2fb9 100644
--- a/poky/meta/classes/image.bbclass
+++ b/poky/meta/classes/image.bbclass
@@ -33,7 +33,7 @@
# IMAGE_FEATURES may contain any available package group
IMAGE_FEATURES ?= ""
IMAGE_FEATURES[type] = "list"
-IMAGE_FEATURES[validitems] += "debug-tweaks read-only-rootfs empty-root-password allow-empty-password allow-root-login post-install-logging"
+IMAGE_FEATURES[validitems] += "debug-tweaks read-only-rootfs stateless-rootfs empty-root-password allow-empty-password allow-root-login post-install-logging"
# Generate companion debugfs?
IMAGE_GEN_DEBUGFS ?= "0"
@@ -664,6 +664,12 @@
find ${IMAGE_ROOTFS} -exec touch -h --date=@$REPRODUCIBLE_TIMESTAMP_ROOTFS {} \;
fi
}
-IMAGE_PREPROCESS_COMMAND_append = " reproducible_final_image_task; "
+
+systemd_preset_all () {
+ systemctl --root="${IMAGE_ROOTFS}" --preset-mode=enable-only preset-all
+}
+
+IMAGE_EXTRADEPENDS += "${@ 'systemd-systemctl-native' if bb.utils.contains('DISTRO_FEATURES', 'systemd', True, False, d) and not bb.utils.contains('IMAGE_FEATURES', 'stateless-rootfs', True, False, d) else ''}"
+IMAGE_PREPROCESS_COMMAND_append = " ${@ 'systemd_preset_all;' if bb.utils.contains('DISTRO_FEATURES', 'systemd', True, False, d) and not bb.utils.contains('IMAGE_FEATURES', 'stateless-rootfs', True, False, d) else ''} reproducible_final_image_task; "
CVE_PRODUCT = ""
diff --git a/poky/meta/classes/image_types.bbclass b/poky/meta/classes/image_types.bbclass
index f363c42..1c44ec4 100644
--- a/poky/meta/classes/image_types.bbclass
+++ b/poky/meta/classes/image_types.bbclass
@@ -54,7 +54,7 @@
# Sort the set so that ordering is consistant
return " ".join(sorted(deps))
-XZ_COMPRESSION_LEVEL ?= "-3"
+XZ_COMPRESSION_LEVEL ?= "-9"
XZ_INTEGRITY_CHECK ?= "crc32"
ZIP_COMPRESSION_LEVEL ?= "-9"
@@ -170,7 +170,9 @@
echo vol_type=dynamic >> ubinize${vname}-${IMAGE_NAME}.cfg
echo vol_name=${UBI_VOLNAME} >> ubinize${vname}-${IMAGE_NAME}.cfg
echo vol_flags=autoresize >> ubinize${vname}-${IMAGE_NAME}.cfg
- mkfs.ubifs -r ${IMAGE_ROOTFS} -o ${IMGDEPLOYDIR}/${IMAGE_NAME}${vname}${IMAGE_NAME_SUFFIX}.ubifs ${mkubifs_args}
+ if [ -n "$vname" ]; then
+ mkfs.ubifs -r ${IMAGE_ROOTFS} -o ${IMGDEPLOYDIR}/${IMAGE_NAME}${vname}${IMAGE_NAME_SUFFIX}.ubifs ${mkubifs_args}
+ fi
ubinize -o ${IMGDEPLOYDIR}/${IMAGE_NAME}${vname}${IMAGE_NAME_SUFFIX}.ubi ${ubinize_args} ubinize${vname}-${IMAGE_NAME}.cfg
# Cleanup cfg file
@@ -204,6 +206,7 @@
IMAGE_CMD_ubi () {
multiubi_mkfs "${MKUBIFS_ARGS}" "${UBINIZE_ARGS}"
}
+IMAGE_TYPEDEP_ubi = "ubifs"
IMAGE_CMD_ubifs = "mkfs.ubifs -r ${IMAGE_ROOTFS} -o ${IMGDEPLOYDIR}/${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.ubifs ${MKUBIFS_ARGS}"
diff --git a/poky/meta/classes/insane.bbclass b/poky/meta/classes/insane.bbclass
index 4267cbd..a9be88e 100644
--- a/poky/meta/classes/insane.bbclass
+++ b/poky/meta/classes/insane.bbclass
@@ -1141,12 +1141,16 @@
###########################################################################
# Check unrecognised configure options (with a white list)
###########################################################################
- if bb.data.inherits_class("autotools", d):
+ if bb.data.inherits_class("autotools", d) or bb.data.inherits_class("meson", d):
bb.note("Checking configure output for unrecognised options")
try:
- flag = "WARNING: unrecognized options:"
- log = os.path.join(d.getVar('B'), 'config.log')
- output = subprocess.check_output(['grep', '-F', flag, log]).decode("utf-8").replace(', ', ' ')
+ if bb.data.inherits_class("autotools", d):
+ flag = "WARNING: unrecognized options:"
+ log = os.path.join(d.getVar('B'), 'config.log')
+ if bb.data.inherits_class("meson", d):
+ flag = "WARNING: Unknown options:"
+ log = os.path.join(d.getVar('T'), 'log.do_configure')
+ output = subprocess.check_output(['grep', '-F', flag, log]).decode("utf-8").replace(', ', ' ').replace('"', '')
options = set()
for line in output.splitlines():
options |= set(line.partition(flag)[2].split())
diff --git a/poky/meta/classes/kernel-fitimage.bbclass b/poky/meta/classes/kernel-fitimage.bbclass
index 2517d75..2820ff9 100644
--- a/poky/meta/classes/kernel-fitimage.bbclass
+++ b/poky/meta/classes/kernel-fitimage.bbclass
@@ -10,6 +10,8 @@
uarch = d.getVar("UBOOT_ARCH")
if uarch == "arm64":
replacementtype = "Image"
+ elif uarch == "riscv":
+ replacementtype = "Image"
elif uarch == "mips":
replacementtype = "vmlinuz.bin"
elif uarch == "x86":
diff --git a/poky/meta/classes/kernel-module-split.bbclass b/poky/meta/classes/kernel-module-split.bbclass
index e8d3eb5..221022b 100644
--- a/poky/meta/classes/kernel-module-split.bbclass
+++ b/poky/meta/classes/kernel-module-split.bbclass
@@ -44,9 +44,23 @@
def extract_modinfo(file):
import tempfile, subprocess
tempfile.tempdir = d.getVar("WORKDIR")
+ compressed = re.match( r'.*\.([xg])z$', file)
tf = tempfile.mkstemp()
tmpfile = tf[1]
- cmd = "%sobjcopy -j .modinfo -O binary %s %s" % (d.getVar("HOST_PREFIX") or "", file, tmpfile)
+ if compressed:
+ tmpkofile = tmpfile + ".ko"
+ if compressed.group(1) == 'g':
+ cmd = "gunzip -dc %s > %s" % (file, tmpkofile)
+ subprocess.check_call(cmd, shell=True)
+ elif compressed.group(1) == 'x':
+ cmd = "xz -dc %s > %s" % (file, tmpkofile)
+ subprocess.check_call(cmd, shell=True)
+ else:
+ msg = "Cannot decompress '%s'" % file
+ raise msg
+ cmd = "%sobjcopy -j .modinfo -O binary %s %s" % (d.getVar("HOST_PREFIX") or "", tmpkofile, tmpfile)
+ else:
+ cmd = "%sobjcopy -j .modinfo -O binary %s %s" % (d.getVar("HOST_PREFIX") or "", file, tmpfile)
subprocess.check_call(cmd, shell=True)
# errors='replace': Some old kernel versions contain invalid utf-8 characters in mod descriptions (like 0xf6, 'ö')
f = open(tmpfile, errors='replace')
@@ -54,6 +68,8 @@
f.close()
os.close(tf[0])
os.unlink(tmpfile)
+ if compressed:
+ os.unlink(tmpkofile)
vals = {}
for i in l:
m = modinfoexp.match(i)
@@ -133,7 +149,7 @@
kernel_package_name = d.getVar("KERNEL_PACKAGE_NAME") or "kernel"
kernel_version = d.getVar("KERNEL_VERSION")
- module_regex = r'^(.*)\.k?o$'
+ module_regex = r'^(.*)\.k?o(?:\.[xg]z)?$'
module_pattern_prefix = d.getVar('KERNEL_MODULE_PACKAGE_PREFIX')
module_pattern_suffix = d.getVar('KERNEL_MODULE_PACKAGE_SUFFIX')
diff --git a/poky/meta/classes/kernel.bbclass b/poky/meta/classes/kernel.bbclass
index 9da9818..b346a60 100644
--- a/poky/meta/classes/kernel.bbclass
+++ b/poky/meta/classes/kernel.bbclass
@@ -130,7 +130,7 @@
# the symlink.
do_unpack[cleandirs] += " ${S} ${STAGING_KERNEL_DIR} ${B} ${STAGING_KERNEL_BUILDDIR}"
do_clean[cleandirs] += " ${S} ${STAGING_KERNEL_DIR} ${B} ${STAGING_KERNEL_BUILDDIR}"
-base_do_unpack_append () {
+python do_symlink_kernsrc () {
s = d.getVar("S")
if s[-1] == '/':
# drop trailing slash, so that os.symlink(kernsrc, s) doesn't use s as directory name and fail
@@ -147,6 +147,7 @@
shutil.move(s, kernsrc)
os.symlink(kernsrc, s)
}
+addtask symlink_kernsrc before do_configure after do_unpack
inherit kernel-arch deploy
diff --git a/poky/meta/classes/license_image.bbclass b/poky/meta/classes/license_image.bbclass
index 6750038..6fb76be 100644
--- a/poky/meta/classes/license_image.bbclass
+++ b/poky/meta/classes/license_image.bbclass
@@ -102,7 +102,7 @@
rootfs_license_manifest = os.path.join(rootfs_license_dir,
os.path.split(license_manifest)[1])
if not os.path.exists(rootfs_license_manifest):
- os.link(license_manifest, rootfs_license_manifest)
+ oe.path.copyhardlink(license_manifest, rootfs_license_manifest)
if copy_lic_dirs == "1":
for pkg in sorted(pkg_dic):
@@ -136,7 +136,7 @@
continue
if not os.path.exists(rootfs_license):
- os.link(pkg_license, rootfs_license)
+ oe.path.copyhardlink(pkg_license, rootfs_license)
if not os.path.exists(pkg_rootfs_license):
os.symlink(os.path.join('..', lic), pkg_rootfs_license)
@@ -146,7 +146,7 @@
os.path.exists(pkg_rootfs_license)):
continue
- os.link(pkg_license, pkg_rootfs_license)
+ oe.path.copyhardlink(pkg_license, pkg_rootfs_license)
# Fixup file ownership and permissions
for walkroot, dirs, files in os.walk(rootfs_license_dir):
for f in files:
diff --git a/poky/meta/classes/native.bbclass b/poky/meta/classes/native.bbclass
index e9f6c74..d5b6f6a 100644
--- a/poky/meta/classes/native.bbclass
+++ b/poky/meta/classes/native.bbclass
@@ -89,6 +89,7 @@
NATIVE_PACKAGE_PATH_SUFFIX ?= ""
bindir .= "${NATIVE_PACKAGE_PATH_SUFFIX}"
+sbindir .= "${NATIVE_PACKAGE_PATH_SUFFIX}"
base_libdir .= "${NATIVE_PACKAGE_PATH_SUFFIX}"
libdir .= "${NATIVE_PACKAGE_PATH_SUFFIX}"
libexecdir .= "${NATIVE_PACKAGE_PATH_SUFFIX}"
diff --git a/poky/meta/classes/populate_sdk_base.bbclass b/poky/meta/classes/populate_sdk_base.bbclass
index ebc30d3..a7f0fe7 100644
--- a/poky/meta/classes/populate_sdk_base.bbclass
+++ b/poky/meta/classes/populate_sdk_base.bbclass
@@ -45,8 +45,23 @@
TOOLCHAIN_TARGET_TASK_ATTEMPTONLY ?= ""
TOOLCHAIN_OUTPUTNAME ?= "${SDK_NAME}-toolchain-${SDK_VERSION}"
+# Default archived SDK's suffix
+SDK_ARCHIVE_TYPE ?= "tar.xz"
+
+# To support different sdk type according to SDK_ARCHIVE_TYPE, now support zip and tar.xz
+python () {
+ if d.getVar('SDK_ARCHIVE_TYPE') == 'zip':
+ d.setVar('SDK_ARCHIVE_DEPENDS', 'zip-native')
+ # SDK_ARCHIVE_CMD used to generate archived sdk ${TOOLCHAIN_OUTPUTNAME}.${SDK_ARCHIVE_TYPE} from input dir ${SDK_OUTPUT}/${SDKPATH} to output dir ${SDKDEPLOYDIR}
+ # recommand to cd into input dir first to avoid archive with buildpath
+ d.setVar('SDK_ARCHIVE_CMD', 'cd ${SDK_OUTPUT}/${SDKPATH}; zip -r ${SDKDEPLOYDIR}/${TOOLCHAIN_OUTPUTNAME}.${SDK_ARCHIVE_TYPE} .')
+ else:
+ d.setVar('SDK_ARCHIVE_DEPENDS', 'xz-native')
+ d.setVar('SDK_ARCHIVE_CMD', 'cd ${SDK_OUTPUT}/${SDKPATH}; tar ${SDKTAROPTS} -cf - . | xz -T 0 > ${SDKDEPLOYDIR}/${TOOLCHAIN_OUTPUTNAME}.${SDK_ARCHIVE_TYPE}')
+}
+
SDK_RDEPENDS = "${TOOLCHAIN_TARGET_TASK} ${TOOLCHAIN_HOST_TASK}"
-SDK_DEPENDS = "virtual/fakeroot-native xz-native cross-localedef-native nativesdk-qemuwrapper-cross ${@' '.join(["%s-qemuwrapper-cross" % m for m in d.getVar("MULTILIB_VARIANTS").split()])} qemuwrapper-cross"
+SDK_DEPENDS = "virtual/fakeroot-native ${SDK_ARCHIVE_DEPENDS} cross-localedef-native nativesdk-qemuwrapper-cross ${@' '.join(["%s-qemuwrapper-cross" % m for m in d.getVar("MULTILIB_VARIANTS").split()])} qemuwrapper-cross"
PATH_prepend = "${STAGING_DIR_HOST}${SDKPATHNATIVE}${bindir}/crossscripts:${@":".join(all_multilib_tune_values(d, 'STAGING_BINDIR_CROSS').split())}:"
SDK_DEPENDS_append_libc-glibc = " nativesdk-glibc-locale"
@@ -104,7 +119,7 @@
POPULATE_SDK_POST_TARGET_COMMAND_append_task-populate-sdk = " write_target_sdk_manifest ; "
POPULATE_SDK_POST_HOST_COMMAND_append_task-populate-sdk = " write_host_sdk_manifest; "
SDK_PACKAGING_COMMAND = "${@'${SDK_PACKAGING_FUNC};' if '${SDK_PACKAGING_FUNC}' else ''}"
-SDK_POSTPROCESS_COMMAND = " create_sdk_files; check_sdk_sysroots; tar_sdk; ${SDK_PACKAGING_COMMAND} "
+SDK_POSTPROCESS_COMMAND = " create_sdk_files; check_sdk_sysroots; archive_sdk; ${SDK_PACKAGING_COMMAND} "
def populate_sdk_common(d):
from oe.sdk import populate_sdk
@@ -222,11 +237,10 @@
SDKTAROPTS = "--owner=root --group=root"
-fakeroot tar_sdk() {
+fakeroot archive_sdk() {
# Package it up
mkdir -p ${SDKDEPLOYDIR}
- cd ${SDK_OUTPUT}/${SDKPATH}
- tar ${SDKTAROPTS} -cf - . | xz ${XZ_DEFAULTS} > ${SDKDEPLOYDIR}/${TOOLCHAIN_OUTPUTNAME}.tar.xz
+ ${SDK_ARCHIVE_CMD}
}
TOOLCHAIN_SHAR_EXT_TMPL ?= "${COREBASE}/meta/files/toolchain-shar-extract.sh"
@@ -263,16 +277,17 @@
-e '/@SDK_PRE_INSTALL_COMMAND@/d' \
-e '/@SDK_POST_INSTALL_COMMAND@/d' \
-e 's#@SDK_GCC_VER@#${@oe.utils.host_gcc_version(d, taskcontextonly=True)}#g' \
+ -e 's#@SDK_ARCHIVE_TYPE@#${SDK_ARCHIVE_TYPE}#g' \
${SDKDEPLOYDIR}/${TOOLCHAIN_OUTPUTNAME}.sh
# add execution permission
chmod +x ${SDKDEPLOYDIR}/${TOOLCHAIN_OUTPUTNAME}.sh
# append the SDK tarball
- cat ${SDKDEPLOYDIR}/${TOOLCHAIN_OUTPUTNAME}.tar.xz >> ${SDKDEPLOYDIR}/${TOOLCHAIN_OUTPUTNAME}.sh
+ cat ${SDKDEPLOYDIR}/${TOOLCHAIN_OUTPUTNAME}.${SDK_ARCHIVE_TYPE} >> ${SDKDEPLOYDIR}/${TOOLCHAIN_OUTPUTNAME}.sh
# delete the old tarball, we don't need it anymore
- rm ${SDKDEPLOYDIR}/${TOOLCHAIN_OUTPUTNAME}.tar.xz
+ rm ${SDKDEPLOYDIR}/${TOOLCHAIN_OUTPUTNAME}.${SDK_ARCHIVE_TYPE}
}
populate_sdk_log_check() {
diff --git a/poky/meta/classes/ptest.bbclass b/poky/meta/classes/ptest.bbclass
index 97865c9..fa4c36e 100644
--- a/poky/meta/classes/ptest.bbclass
+++ b/poky/meta/classes/ptest.bbclass
@@ -13,6 +13,7 @@
PTEST_ENABLED_class-native = ""
PTEST_ENABLED_class-nativesdk = ""
PTEST_ENABLED_class-cross-canadian = ""
+RDEPENDS_${PN}-ptest += "${PN}"
RDEPENDS_${PN}-ptest_class-native = ""
RDEPENDS_${PN}-ptest_class-nativesdk = ""
RRECOMMENDS_${PN}-ptest += "ptest-runner"
@@ -65,6 +66,38 @@
done
}
+PTEST_BINDIR_PKGD_PATH = "${PKGD}${PTEST_PATH}/bin"
+
+# This function needs to run after apply_update_alternative_renames because the
+# aforementioned function will update the ALTERNATIVE_LINK_NAME flag. Append is
+# used here to make this function to run as late as possible.
+PACKAGE_PREPROCESS_FUNCS_append = "${@bb.utils.contains('PTEST_BINDIR', '1', \
+ bb.utils.contains('PTEST_ENABLED', '1', ' ptest_update_alternatives', '', d), '', d)}"
+
+python ptest_update_alternatives() {
+ """
+ This function will generate the symlinks in the PTEST_BINDIR_PKGD_PATH
+ to match the renamed binaries by update-alternatives.
+ """
+
+ if not bb.data.inherits_class('update-alternatives', d) \
+ or not update_alternatives_enabled(d):
+ return
+
+ bb.note("Generating symlinks for ptest")
+ bin_paths = { d.getVar("bindir"), d.getVar("base_bindir"),
+ d.getVar("sbindir"), d.getVar("base_sbindir") }
+ ptest_bindir = d.getVar("PTEST_BINDIR_PKGD_PATH")
+ os.mkdir(ptest_bindir)
+ for pkg in (d.getVar('PACKAGES') or "").split():
+ alternatives = update_alternatives_alt_targets(d, pkg)
+ for alt_name, alt_link, alt_target, _ in alternatives:
+ # Some alternatives are for man pages,
+ # check if the alternative is in PATH
+ if os.path.dirname(alt_link) in bin_paths:
+ os.symlink(alt_target, os.path.join(ptest_bindir, alt_name))
+}
+
do_configure_ptest_base[dirs] = "${B}"
do_compile_ptest_base[dirs] = "${B}"
do_install_ptest_base[dirs] = "${B}"
diff --git a/poky/meta/classes/rootfs-postcommands.bbclass b/poky/meta/classes/rootfs-postcommands.bbclass
index bde58ad..89f8efd 100644
--- a/poky/meta/classes/rootfs-postcommands.bbclass
+++ b/poky/meta/classes/rootfs-postcommands.bbclass
@@ -126,6 +126,12 @@
${IMAGE_ROOTFS}/etc/init.d/populate-volatile.sh
fi
fi
+
+ if ${@bb.utils.contains("DISTRO_FEATURES", "systemd", "true", "false", d)}; then
+ # Create machine-id
+ # 20:12 < mezcalero> koen: you have three options: a) run systemd-machine-id-setup at install time, b) have / read-only and an empty file there (for stateless) and c) boot with / writable
+ touch ${IMAGE_ROOTFS}${sysconfdir}/machine-id
+ fi
}
#
diff --git a/poky/meta/classes/sanity.bbclass b/poky/meta/classes/sanity.bbclass
index 4cbb1f3..9429202 100644
--- a/poky/meta/classes/sanity.bbclass
+++ b/poky/meta/classes/sanity.bbclass
@@ -560,7 +560,7 @@
try:
subprocess.check_output(["perl", "-e", "use %s" % m])
except subprocess.CalledProcessError as e:
- errresult += e.output
+ errresult += bytes.decode(e.output)
ret += "%s " % m
if ret:
return "Required perl module(s) not found: %s\n\n%s\n" % (ret, errresult)
diff --git a/poky/meta/classes/staging.bbclass b/poky/meta/classes/staging.bbclass
index 062b281..6bcd0b0 100644
--- a/poky/meta/classes/staging.bbclass
+++ b/poky/meta/classes/staging.bbclass
@@ -27,9 +27,10 @@
${mandir} \
${docdir} \
${infodir} \
- ${datadir}/locale \
${datadir}/applications \
${datadir}/fonts \
+ ${datadir}/gtk-doc/html \
+ ${datadir}/locale \
${datadir}/pixmaps \
${libdir}/${PN}/ptest \
"
diff --git a/poky/meta/classes/systemd.bbclass b/poky/meta/classes/systemd.bbclass
index c8f4fde..d1cb17d 100644
--- a/poky/meta/classes/systemd.bbclass
+++ b/poky/meta/classes/systemd.bbclass
@@ -23,38 +23,41 @@
}
systemd_postinst() {
-OPTS=""
-
-if [ -n "$D" ]; then
- OPTS="--root=$D"
-fi
-
if type systemctl >/dev/null 2>/dev/null; then
- if [ -z "$D" ]; then
- systemctl daemon-reload
+ OPTS=""
+
+ if [ -n "$D" ]; then
+ OPTS="--root=$D"
fi
- systemctl $OPTS ${SYSTEMD_AUTO_ENABLE} ${SYSTEMD_SERVICE_ESCAPED}
+ if [ "${SYSTEMD_AUTO_ENABLE}" = "enable" ]; then
+ for service in ${SYSTEMD_SERVICE_ESCAPED}; do
+ case "${service}" in
+ *@*)
+ systemctl ${OPTS} enable "${service}"
+ ;;
+ esac
+ done
+ fi
- if [ -z "$D" -a "${SYSTEMD_AUTO_ENABLE}" = "enable" ]; then
- systemctl --no-block restart ${SYSTEMD_SERVICE_ESCAPED}
+ if [ -z "$D" ]; then
+ systemctl daemon-reload
+ systemctl preset ${SYSTEMD_SERVICE_ESCAPED}
+
+ if [ "${SYSTEMD_AUTO_ENABLE}" = "enable" ]; then
+ systemctl --no-block restart ${SYSTEMD_SERVICE_ESCAPED}
+ fi
fi
fi
}
systemd_prerm() {
-OPTS=""
-
-if [ -n "$D" ]; then
- OPTS="--root=$D"
-fi
-
if type systemctl >/dev/null 2>/dev/null; then
if [ -z "$D" ]; then
systemctl stop ${SYSTEMD_SERVICE_ESCAPED}
- fi
- systemctl $OPTS disable ${SYSTEMD_SERVICE_ESCAPED}
+ systemctl disable ${SYSTEMD_SERVICE_ESCAPED}
+ fi
fi
}
@@ -177,12 +180,25 @@
else:
bb.fatal("SYSTEMD_SERVICE_%s value %s does not exist" % (pkg_systemd, service))
+ def systemd_create_presets(pkg, action):
+ presetf = oe.path.join(d.getVar("PKGD"), d.getVar("systemd_unitdir"), "system-preset/98-%s.preset" % pkg)
+ bb.utils.mkdirhier(os.path.dirname(presetf))
+ with open(presetf, 'a') as fd:
+ for service in d.getVar('SYSTEMD_SERVICE_%s' % pkg).split():
+ fd.write("%s %s\n" % (action,service))
+ d.appendVar("FILES_%s" % pkg, ' ' + oe.path.join(d.getVar("systemd_unitdir"), "system-preset/98-%s.preset" % pkg))
+
# Run all modifications once when creating package
if os.path.exists(d.getVar("D")):
for pkg in d.getVar('SYSTEMD_PACKAGES').split():
systemd_check_package(pkg)
if d.getVar('SYSTEMD_SERVICE_' + pkg):
systemd_generate_package_scripts(pkg)
+ action = get_package_var(d, 'SYSTEMD_AUTO_ENABLE', pkg)
+ if action in ("enable", "disable"):
+ systemd_create_presets(pkg, action)
+ elif action not in ("mask", "preset"):
+ bb.fatal("SYSTEMD_AUTO_ENABLE_%s '%s' is not 'enable', 'disable', 'mask' or 'preset'" % (pkg, action))
systemd_check_services()
}
diff --git a/poky/meta/classes/testimage.bbclass b/poky/meta/classes/testimage.bbclass
index ff1c53b..9bb5a5c 100644
--- a/poky/meta/classes/testimage.bbclass
+++ b/poky/meta/classes/testimage.bbclass
@@ -316,7 +316,8 @@
configuration = get_testimage_configuration(d, 'runtime', machine)
results.logDetails(get_testimage_json_result_dir(d),
configuration,
- get_testimage_result_id(configuration))
+ get_testimage_result_id(configuration),
+ dump_streams=d.getVar('TESTREPORT_FULLLOGS'))
results.logSummary(pn)
if not results.wasSuccessful():
bb.fatal('%s - FAILED - check the task log and the ssh log' % pn, forcelog=True)
diff --git a/poky/meta/classes/uboot-sign.bbclass b/poky/meta/classes/uboot-sign.bbclass
index 9e3d1d6..8beafff 100644
--- a/poky/meta/classes/uboot-sign.bbclass
+++ b/poky/meta/classes/uboot-sign.bbclass
@@ -45,49 +45,72 @@
# Functions in this bbclass is for u-boot only
UBOOT_PN = "${@d.getVar('PREFERRED_PROVIDER_u-boot') or 'u-boot'}"
+concat_dtb_helper() {
+ if [ -e "${UBOOT_DTB_BINARY}" ]; then
+ ln -sf ${UBOOT_DTB_IMAGE} ${DEPLOYDIR}/${UBOOT_DTB_BINARY}
+ ln -sf ${UBOOT_DTB_IMAGE} ${DEPLOYDIR}/${UBOOT_DTB_SYMLINK}
+ fi
+
+ if [ -f "${UBOOT_NODTB_BINARY}" ]; then
+ install ${UBOOT_NODTB_BINARY} ${DEPLOYDIR}/${UBOOT_NODTB_IMAGE}
+ ln -sf ${UBOOT_NODTB_IMAGE} ${DEPLOYDIR}/${UBOOT_NODTB_SYMLINK}
+ ln -sf ${UBOOT_NODTB_IMAGE} ${DEPLOYDIR}/${UBOOT_NODTB_BINARY}
+ fi
+
+ # Concatenate U-Boot w/o DTB & DTB with public key
+ # (cf. kernel-fitimage.bbclass for more details)
+ deployed_uboot_dtb_binary='${DEPLOY_DIR_IMAGE}/${UBOOT_DTB_IMAGE}'
+ if [ "x${UBOOT_SUFFIX}" = "ximg" -o "x${UBOOT_SUFFIX}" = "xrom" ] && \
+ [ -e "$deployed_uboot_dtb_binary" ]; then
+ oe_runmake EXT_DTB=$deployed_uboot_dtb_binary
+ install ${UBOOT_BINARY} ${DEPLOYDIR}/${UBOOT_IMAGE}
+ elif [ -e "${DEPLOYDIR}/${UBOOT_NODTB_IMAGE}" -a -e "$deployed_uboot_dtb_binary" ]; then
+ cd ${DEPLOYDIR}
+ cat ${UBOOT_NODTB_IMAGE} $deployed_uboot_dtb_binary | tee ${UBOOT_BINARY} > ${UBOOT_IMAGE}
+ else
+ bbwarn "Failure while adding public key to u-boot binary. Verified boot won't be available."
+ fi
+}
+
concat_dtb() {
- if [ "${UBOOT_SIGN_ENABLE}" = "1" -a "${PN}" = "${UBOOT_PN}" ]; then
+ if [ "${UBOOT_SIGN_ENABLE}" = "1" -a "${PN}" = "${UBOOT_PN}" -a -n "${UBOOT_DTB_BINARY}" ]; then
mkdir -p ${DEPLOYDIR}
- if [ -e ${B}/${UBOOT_DTB_BINARY} ]; then
- ln -sf ${UBOOT_DTB_IMAGE} ${DEPLOYDIR}/${UBOOT_DTB_BINARY}
- ln -sf ${UBOOT_DTB_IMAGE} ${DEPLOYDIR}/${UBOOT_DTB_SYMLINK}
- fi
-
- if [ -f ${B}/${UBOOT_NODTB_BINARY} ]; then
- install ${B}/${UBOOT_NODTB_BINARY} ${DEPLOYDIR}/${UBOOT_NODTB_IMAGE}
- ln -sf ${UBOOT_NODTB_IMAGE} ${UBOOT_NODTB_SYMLINK}
- ln -sf ${UBOOT_NODTB_IMAGE} ${UBOOT_NODTB_BINARY}
- fi
-
- # Concatenate U-Boot w/o DTB & DTB with public key
- # (cf. kernel-fitimage.bbclass for more details)
- deployed_uboot_dtb_binary='${DEPLOY_DIR_IMAGE}/${UBOOT_DTB_IMAGE}'
- if [ "x${UBOOT_SUFFIX}" = "ximg" -o "x${UBOOT_SUFFIX}" = "xrom" ] && \
- [ -e "$deployed_uboot_dtb_binary" ]; then
+ if [ -n "${UBOOT_CONFIG}" ]; then
+ for config in ${UBOOT_MACHINE}; do
+ cd ${B}/${config}
+ concat_dtb_helper
+ done
+ else
cd ${B}
- oe_runmake EXT_DTB=$deployed_uboot_dtb_binary
- install ${B}/${UBOOT_BINARY} ${DEPLOYDIR}/${UBOOT_IMAGE}
- elif [ -e "${DEPLOYDIR}/${UBOOT_NODTB_IMAGE}" -a -e "$deployed_uboot_dtb_binary" ]; then
- cd ${DEPLOYDIR}
- cat ${UBOOT_NODTB_IMAGE} $deployed_uboot_dtb_binary | tee ${B}/${UBOOT_BINARY} > ${UBOOT_IMAGE}
- elif [ -n "${UBOOT_DTB_BINARY}" ]; then
- bbwarn "Failure while adding public key to u-boot binary. Verified boot won't be available."
+ concat_dtb_helper
fi
fi
}
# Install UBOOT_DTB_BINARY to datadir, so that kernel can use it for
# signing, and kernel will deploy UBOOT_DTB_BINARY after signs it.
+install_helper() {
+ if [ -f "${UBOOT_DTB_BINARY}" ]; then
+ install -d ${D}${datadir}
+ # UBOOT_DTB_BINARY is a symlink to UBOOT_DTB_IMAGE, so we
+ # need both of them.
+ install ${UBOOT_DTB_BINARY} ${D}${datadir}/${UBOOT_DTB_IMAGE}
+ ln -sf ${UBOOT_DTB_IMAGE} ${D}${datadir}/${UBOOT_DTB_BINARY}
+ else
+ bbwarn "${UBOOT_DTB_BINARY} not found"
+ fi
+}
+
do_install_append() {
- if [ "${UBOOT_SIGN_ENABLE}" = "1" -a "${PN}" = "${UBOOT_PN}" ]; then
- if [ -f ${B}/${UBOOT_DTB_BINARY} ]; then
- install -d ${D}${datadir}
- # UBOOT_DTB_BINARY is a symlink to UBOOT_DTB_IMAGE, so we
- # need both of them.
- install ${B}/${UBOOT_DTB_BINARY} ${D}${datadir}/${UBOOT_DTB_IMAGE}
- ln -sf ${UBOOT_DTB_IMAGE} ${D}${datadir}/${UBOOT_DTB_BINARY}
- elif [ -n "${UBOOT_DTB_BINARY}" ]; then
- bbwarn "${B}/${UBOOT_DTB_BINARY} not found"
+ if [ "${UBOOT_SIGN_ENABLE}" = "1" -a "${PN}" = "${UBOOT_PN}" -a -n "${UBOOT_DTB_BINARY}" ]; then
+ if [ -n "${UBOOT_CONFIG}" ]; then
+ for config in ${UBOOT_MACHINE}; do
+ cd ${B}/${config}
+ install_helper
+ done
+ else
+ cd ${B}
+ install_helper
fi
fi
}
diff --git a/poky/meta/classes/update-alternatives.bbclass b/poky/meta/classes/update-alternatives.bbclass
index 537e85d..b702e77 100644
--- a/poky/meta/classes/update-alternatives.bbclass
+++ b/poky/meta/classes/update-alternatives.bbclass
@@ -216,42 +216,62 @@
update_files(alt_target, alt_target_rename, pkg, d)
}
+def update_alternatives_alt_targets(d, pkg):
+ """
+ Returns the update-alternatives metadata for a package.
+
+ The returned format is a list of tuples where the tuple contains:
+ alt_name: The binary name
+ alt_link: The path for the binary (Shared by different packages)
+ alt_target: The path for the renamed binary (Unique per package)
+ alt_priority: The priority of the alt_target
+
+ All the alt_targets will be installed into the sysroot. The alt_link is
+ a symlink pointing to the alt_target with the highest priority.
+ """
+
+ pn = d.getVar('BPN')
+ pkgdest = d.getVar('PKGD')
+ updates = list()
+ for alt_name in (d.getVar('ALTERNATIVE_%s' % pkg) or "").split():
+ alt_link = d.getVarFlag('ALTERNATIVE_LINK_NAME', alt_name)
+ alt_target = d.getVarFlag('ALTERNATIVE_TARGET_%s' % pkg, alt_name) or \
+ d.getVarFlag('ALTERNATIVE_TARGET', alt_name) or \
+ d.getVar('ALTERNATIVE_TARGET_%s' % pkg) or \
+ d.getVar('ALTERNATIVE_TARGET') or \
+ alt_link
+ alt_priority = d.getVarFlag('ALTERNATIVE_PRIORITY_%s' % pkg, alt_name) or \
+ d.getVarFlag('ALTERNATIVE_PRIORITY', alt_name) or \
+ d.getVar('ALTERNATIVE_PRIORITY_%s' % pkg) or \
+ d.getVar('ALTERNATIVE_PRIORITY')
+
+ # This shouldn't trigger, as it should have been resolved earlier!
+ if alt_link == alt_target:
+ bb.note('alt_link == alt_target: %s == %s -- correcting, this should not happen!' % (alt_link, alt_target))
+ alt_target = '%s.%s' % (alt_target, pn)
+
+ if not os.path.lexists('%s/%s' % (pkgdest, alt_target)):
+ bb.warn('%s: NOT adding alternative provide %s: %s does not exist' % (pn, alt_link, alt_target))
+ continue
+
+ alt_target = os.path.normpath(alt_target)
+ updates.append( (alt_name, alt_link, alt_target, alt_priority) )
+
+ return updates
+
PACKAGESPLITFUNCS_prepend = "populate_packages_updatealternatives "
python populate_packages_updatealternatives () {
if not update_alternatives_enabled(d):
return
- pn = d.getVar('BPN')
-
# Do actual update alternatives processing
- pkgdest = d.getVar('PKGD')
for pkg in (d.getVar('PACKAGES') or "").split():
# Create post install/removal scripts
alt_setup_links = ""
alt_remove_links = ""
- for alt_name in (d.getVar('ALTERNATIVE_%s' % pkg) or "").split():
- alt_link = d.getVarFlag('ALTERNATIVE_LINK_NAME', alt_name)
- alt_target = d.getVarFlag('ALTERNATIVE_TARGET_%s' % pkg, alt_name) or d.getVarFlag('ALTERNATIVE_TARGET', alt_name)
- alt_target = alt_target or d.getVar('ALTERNATIVE_TARGET_%s' % pkg) or d.getVar('ALTERNATIVE_TARGET') or alt_link
- # Sometimes alt_target is specified as relative to the link name.
- alt_target = os.path.join(os.path.dirname(alt_link), alt_target)
-
- alt_priority = d.getVarFlag('ALTERNATIVE_PRIORITY_%s' % pkg, alt_name) or d.getVarFlag('ALTERNATIVE_PRIORITY', alt_name)
- alt_priority = alt_priority or d.getVar('ALTERNATIVE_PRIORITY_%s' % pkg) or d.getVar('ALTERNATIVE_PRIORITY')
-
- # This shouldn't trigger, as it should have been resolved earlier!
- if alt_link == alt_target:
- bb.note('alt_link == alt_target: %s == %s -- correcting, this should not happen!' % (alt_link, alt_target))
- alt_target = '%s.%s' % (alt_target, pn)
-
- if not os.path.lexists('%s/%s' % (pkgdest, alt_target)):
- bb.warn('%s: NOT adding alternative provide %s: %s does not exist' % (pn, alt_link, alt_target))
- continue
-
- # Default to generate shell script.. eventually we may want to change this...
- alt_target = os.path.normpath(alt_target)
-
+ updates = update_alternatives_alt_targets(d, pkg)
+ for alt_name, alt_link, alt_target, alt_priority in updates:
alt_setup_links += '\tupdate-alternatives --install %s %s %s %s\n' % (alt_link, alt_name, alt_target, alt_priority)
alt_remove_links += '\tupdate-alternatives --remove %s %s\n' % (alt_name, alt_target)
diff --git a/poky/meta/classes/useradd-staticids.bbclass b/poky/meta/classes/useradd-staticids.bbclass
index 70d59e5..3a1b5f1 100644
--- a/poky/meta/classes/useradd-staticids.bbclass
+++ b/poky/meta/classes/useradd-staticids.bbclass
@@ -76,8 +76,8 @@
for param in oe.useradd.split_commands(params):
try:
uaargs = parser.parse_args(oe.useradd.split_args(param))
- except:
- bb.fatal("%s: Unable to parse arguments for USERADD_PARAM_%s: '%s'" % (d.getVar('PN'), pkg, param))
+ except Exception as e:
+ bb.fatal("%s: Unable to parse arguments for USERADD_PARAM_%s '%s': %s" % (d.getVar('PN'), pkg, param, e))
# Read all passwd files specified in USERADD_UID_TABLES or files/passwd
# Use the standard passwd layout:
@@ -197,8 +197,8 @@
try:
# If we're processing multiple lines, we could have left over values here...
gaargs = parser.parse_args(oe.useradd.split_args(param))
- except:
- bb.fatal("%s: Unable to parse arguments for GROUPADD_PARAM_%s: '%s'" % (d.getVar('PN'), pkg, param))
+ except Exception as e:
+ bb.fatal("%s: Unable to parse arguments for GROUPADD_PARAM_%s '%s': %s" % (d.getVar('PN'), pkg, param, e))
# Read all group files specified in USERADD_GID_TABLES or files/group
# Use the standard group layout:
diff --git a/poky/meta/classes/waf.bbclass b/poky/meta/classes/waf.bbclass
index 8e6d754..9002440 100644
--- a/poky/meta/classes/waf.bbclass
+++ b/poky/meta/classes/waf.bbclass
@@ -5,6 +5,32 @@
EXTRA_OECONF_append = " ${PACKAGECONFIG_CONFARGS}"
+def waflock_hash(d):
+ # Calculates the hash used for the waf lock file. This should include
+ # all of the user controllable inputs passed to waf configure. Note
+ # that the full paths for ${B} and ${S} are used; this is OK and desired
+ # because a change to either of these should create a unique lock file
+ # to prevent collisions.
+ import hashlib
+ h = hashlib.sha512()
+ def update(name):
+ val = d.getVar(name)
+ if val is not None:
+ h.update(val.encode('utf-8'))
+ update('S')
+ update('B')
+ update('prefix')
+ update('EXTRA_OECONF')
+ return h.hexdigest()
+
+# Use WAFLOCK to specify a separate lock file. The build is already
+# sufficiently isolated by setting the output directory, this ensures that
+# bitbake won't step on toes of any other configured context in the source
+# directory (e.g. if the source is coming from externalsrc and was previously
+# configured elsewhere).
+export WAFLOCK = ".lock-waf_oe_${@waflock_hash(d)}_build"
+BB_HASHBASE_WHITELIST += "WAFLOCK"
+
python waf_preconfigure() {
import subprocess
from distutils.version import StrictVersion
diff --git a/poky/meta/conf/bitbake.conf b/poky/meta/conf/bitbake.conf
index 7f8b043..c5313cc 100644
--- a/poky/meta/conf/bitbake.conf
+++ b/poky/meta/conf/bitbake.conf
@@ -514,6 +514,9 @@
# Used by ssh fetcher
HOSTTOOLS_NONFATAL += "scp"
+# Link to git-lfs if present
+HOSTTOOLS_NONFATAL += "git-lfs"
+
CCACHE ??= ""
TOOLCHAIN_OPTIONS = " --sysroot=${STAGING_DIR_TARGET}"
@@ -628,28 +631,28 @@
##################################################################
# Settings used by bitbake-layers.
##################################################################
-BBLAYERS_LAYERINDEX_URL ??= "http://layers.openembedded.org/layerindex/"
+BBLAYERS_LAYERINDEX_URL ??= "https://layers.openembedded.org/layerindex/"
BBLAYERS_FETCH_DIR ??= "${COREBASE}"
##################################################################
# Download locations and utilities.
##################################################################
-APACHE_MIRROR = "http://archive.apache.org/dist"
+APACHE_MIRROR = "https://archive.apache.org/dist"
DEBIAN_MIRROR = "http://ftp.debian.org/debian/pool"
GENTOO_MIRROR = "http://distfiles.gentoo.org/distfiles"
GNOME_GIT = "git://gitlab.gnome.org/GNOME"
-GNOME_MIRROR = "http://ftp.gnome.org/pub/GNOME/sources"
-GNU_MIRROR = "http://ftp.gnu.org/gnu"
+GNOME_MIRROR = "https://ftp.gnome.org/pub/GNOME/sources"
+GNU_MIRROR = "https://ftp.gnu.org/gnu"
GNUPG_MIRROR = "https://www.gnupg.org/ftp/gcrypt"
GPE_MIRROR = "http://gpe.linuxtogo.org/download/source"
-KERNELORG_MIRROR = "http://cdn.kernel.org/pub"
-SOURCEFORGE_MIRROR = "http://downloads.sourceforge.net"
-XLIBS_MIRROR = "http://xlibs.freedesktop.org/release"
+KERNELORG_MIRROR = "https://cdn.kernel.org/pub"
+SOURCEFORGE_MIRROR = "https://downloads.sourceforge.net"
+XLIBS_MIRROR = "https://xlibs.freedesktop.org/release"
XORG_MIRROR = "http://xorg.freedesktop.org/releases"
-SAVANNAH_GNU_MIRROR = "http://download.savannah.gnu.org/releases"
-SAVANNAH_NONGNU_MIRROR = "http://download.savannah.nongnu.org/releases"
-CPAN_MIRROR = "http://search.cpan.org/CPAN"
+SAVANNAH_GNU_MIRROR = "https://download.savannah.gnu.org/releases"
+SAVANNAH_NONGNU_MIRROR = "https://download.savannah.nongnu.org/releases"
+CPAN_MIRROR = "https://search.cpan.org/CPAN"
SRC_URI[vardepsexclude] += "\
APACHE_MIRROR \
@@ -845,7 +848,7 @@
SERIAL_CONSOLE ??= ""
SERIAL_CONSOLES ??= "${@d.getVar('SERIAL_CONSOLE').replace(' ', ';')}"
-NO_RECOMMENDATIONS ?= ""
+NO_RECOMMENDATIONS ??= ""
BAD_RECOMMENDATIONS ?= ""
# Make sure MACHINE isn't exported
@@ -898,3 +901,9 @@
MLPREFIX ??= ""
MULTILIB_VARIANTS ??= ""
+
+# Older versions of bitbake (< 1.42) don't set BB_UNIHASH. For compatibility with these
+# versions, set BB_UNIHASH equivalent to BB_TASKHASH if unspecified, which is
+# what it would be anyway if the signature generator (e.g. OEEquivHash) doesn't
+# support unihashes.
+BB_UNIHASH ?= "${BB_TASKHASH}"
diff --git a/poky/meta/conf/distro/include/default-distrovars.inc b/poky/meta/conf/distro/include/default-distrovars.inc
index 7a0baf3..10d86cf 100644
--- a/poky/meta/conf/distro/include/default-distrovars.inc
+++ b/poky/meta/conf/distro/include/default-distrovars.inc
@@ -10,7 +10,7 @@
LOCALE_UTF8_IS_DEFAULT ?= "1"
LOCALE_UTF8_IS_DEFAULT_class-nativesdk = "0"
-DISTRO_FEATURES_DEFAULT ?= "acl alsa argp bluetooth ext2 ipv4 ipv6 irda largefile pcmcia usbgadget usbhost wifi xattr nfs zeroconf pci 3g nfc x11"
+DISTRO_FEATURES_DEFAULT ?= "acl alsa argp bluetooth ext2 ipv4 ipv6 largefile pcmcia usbgadget usbhost wifi xattr nfs zeroconf pci 3g nfc x11"
DISTRO_FEATURES ?= "${DISTRO_FEATURES_DEFAULT}"
IMAGE_FEATURES ?= ""
diff --git a/poky/meta/conf/distro/include/maintainers.inc b/poky/meta/conf/distro/include/maintainers.inc
index 950b8e8..a9a689f 100644
--- a/poky/meta/conf/distro/include/maintainers.inc
+++ b/poky/meta/conf/distro/include/maintainers.inc
@@ -122,6 +122,7 @@
RECIPE_MAINTAINER_pn-core-image-weston = "Richard Purdie <richard.purdie@linuxfoundation.org>"
RECIPE_MAINTAINER_pn-core-image-x11 = "Richard Purdie <richard.purdie@linuxfoundation.org>"
RECIPE_MAINTAINER_pn-core-image-sato-dev = "Richard Purdie <richard.purdie@linuxfoundation.org>"
+RECIPE_MAINTAINER_pn-core-image-sato-ptest-fast = "Richard Purdie <richard.purdie@linuxfoundation.org>"
RECIPE_MAINTAINER_pn-core-image-sato-sdk-ptest = "Richard Purdie <richard.purdie@linuxfoundation.org>"
RECIPE_MAINTAINER_pn-coreutils = "Chen Qi <Qi.Chen@windriver.com>"
RECIPE_MAINTAINER_pn-cpio = "Denys Dmytriyenko <denys@ti.com>"
@@ -165,6 +166,7 @@
RECIPE_MAINTAINER_pn-eglinfo-x11 = "Alexander Kanavin <alex.kanavin@gmail.com>"
RECIPE_MAINTAINER_pn-eglinfo-wayland = "Alexander Kanavin <alex.kanavin@gmail.com>"
RECIPE_MAINTAINER_pn-elfutils = "Hongxu Jia <hongxu.jia@windriver.com>"
+RECIPE_MAINTAINER_pn-ell = "Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>"
RECIPE_MAINTAINER_pn-enchant = "Anuj Mittal <anuj.mittal@intel.com>"
RECIPE_MAINTAINER_pn-encodings = "Armin Kuster <akuster808@gmail.com>"
RECIPE_MAINTAINER_pn-epiphany = "Alexander Kanavin <alex.kanavin@gmail.com>"
@@ -194,8 +196,8 @@
RECIPE_MAINTAINER_pn-gcc-crosssdk-initial-${SDK_SYS} = "Khem Raj <raj.khem@gmail.com>"
RECIPE_MAINTAINER_pn-gcc-runtime = "Khem Raj <raj.khem@gmail.com>"
RECIPE_MAINTAINER_pn-gcc-sanitizers = "Khem Raj <raj.khem@gmail.com>"
-RECIPE_MAINTAINER_pn-gcc-source-7.3.0 = "Khem Raj <raj.khem@gmail.com>"
RECIPE_MAINTAINER_pn-gcc-source-8.3.0 = "Khem Raj <raj.khem@gmail.com>"
+RECIPE_MAINTAINER_pn-gcc-source-9.1.0 = "Khem Raj <raj.khem@gmail.com>"
RECIPE_MAINTAINER_pn-gccmakedep = "Khem Raj <raj.khem@gmail.com>"
RECIPE_MAINTAINER_pn-gconf = "Ross Burton <ross.burton@intel.com>"
RECIPE_MAINTAINER_pn-gcr = "Alexander Kanavin <alex.kanavin@gmail.com>"
@@ -284,7 +286,6 @@
RECIPE_MAINTAINER_pn-iproute2 = "Changhyeok Bae <changhyeok.bae@gmail.com>"
RECIPE_MAINTAINER_pn-iptables = "Changhyeok Bae <changhyeok.bae@gmail.com>"
RECIPE_MAINTAINER_pn-iputils = "Changhyeok Bae <changhyeok.bae@gmail.com>"
-RECIPE_MAINTAINER_pn-irda-utils = "Changhyeok Bae <changhyeok.bae@gmail.com>"
RECIPE_MAINTAINER_pn-iso-codes = "Alexander Kanavin <alex.kanavin@gmail.com>"
RECIPE_MAINTAINER_pn-iw = "Changhyeok Bae <changhyeok.bae@gmail.com>"
RECIPE_MAINTAINER_pn-libjpeg-turbo = "Anuj Mittal <anuj.mittal@intel.com>"
@@ -536,7 +537,6 @@
RECIPE_MAINTAINER_pn-ofono = "Ross Burton <ross.burton@intel.com>"
RECIPE_MAINTAINER_pn-openssh = "Armin Kuster <akuster808@gmail.com>"
RECIPE_MAINTAINER_pn-openssl = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-openssl10 = "Alexander Kanavin <alex.kanavin@gmail.com>"
RECIPE_MAINTAINER_pn-opkg = "Alejandro del Castillo <alejandro.delcastillo@ni.com>"
RECIPE_MAINTAINER_pn-opkg-arch-config = "Alejandro del Castillo <alejandro.delcastillo@ni.com>"
RECIPE_MAINTAINER_pn-opkg-keyrings = "Alejandro del Castillo <alejandro.delcastillo@ni.com>"
@@ -555,8 +555,8 @@
RECIPE_MAINTAINER_pn-pciutils = "Chen Qi <Qi.Chen@windriver.com>"
RECIPE_MAINTAINER_pn-pcmanfm = "Alexander Kanavin <alex.kanavin@gmail.com>"
RECIPE_MAINTAINER_pn-perf = "Bruce Ashfield <bruce.ashfield@gmail.com>"
-RECIPE_MAINTAINER_pn-perl = "Ross Burton <ross.burton@intel.com>"
-RECIPE_MAINTAINER_pn-perl-native = "Ross Burton <ross.burton@intel.com>"
+RECIPE_MAINTAINER_pn-perl = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER_pn-perl-native = "Alexander Kanavin <alex.kanavin@gmail.com>"
RECIPE_MAINTAINER_pn-piglit = "Ross Burton <ross.burton@intel.com>"
RECIPE_MAINTAINER_pn-pigz = "Hongxu Jia <hongxu.jia@windriver.com>"
RECIPE_MAINTAINER_pn-pinentry = "Armin Kuster <akuster808@gmail.com>"
diff --git a/poky/meta/conf/distro/include/no-static-libs.inc b/poky/meta/conf/distro/include/no-static-libs.inc
index 712d858..4141ecb 100644
--- a/poky/meta/conf/distro/include/no-static-libs.inc
+++ b/poky/meta/conf/distro/include/no-static-libs.inc
@@ -26,9 +26,6 @@
DISABLE_STATIC_pn-openssl = ""
DISABLE_STATIC_pn-openssl-native = ""
DISABLE_STATIC_pn-nativesdk-openssl = ""
-DISABLE_STATIC_pn-openssl10 = ""
-DISABLE_STATIC_pn-openssl10-native = ""
-DISABLE_STATIC_pn-nativesdk-openssl10 = ""
# libssp-static-dev included in build-appliance
DISABLE_STATIC_pn-gcc-runtime = ""
# libusb1-native is used to build static dfu-util-native
diff --git a/poky/meta/conf/distro/include/ptest-packagelists.inc b/poky/meta/conf/distro/include/ptest-packagelists.inc
new file mode 100644
index 0000000..ec7ed6f
--- /dev/null
+++ b/poky/meta/conf/distro/include/ptest-packagelists.inc
@@ -0,0 +1,77 @@
+#
+# Lists of the ptests in OE-Core, sorted into two sets by the time they take
+#
+# ptests which take less than ~30s each
+#
+PTESTS_FAST = "\
+ acl-ptest \
+ apr-ptest \
+ apr-util-ptest \
+ attr-ptest \
+ bluez5-ptest \
+ bzip2-ptest \
+ diffstat-ptest \
+ diffutils-ptest \
+ elfutils-ptest \
+ ethtool-ptest \
+ flex-ptest \
+ gawk-ptest \
+ gdbm-ptest \
+ gdk-pixbuf-ptest \
+ gettext-ptest \
+ gzip-ptest \
+ json-glib-ptest \
+ kbd-ptest \
+ libconvert-asn1-perl-ptest \
+ liberror-perl-ptest \
+ libpcre-ptest \
+ libtimedate-perl-ptest \
+ libtest-needs-perl-ptest \
+ liburi-perl-ptest \
+ libusb1-ptest \
+ libxml-namespacesupport-perl-ptest \
+ libxml-perl-ptest \
+ libxml-parser-perl-ptest \
+ libxml-sax-perl-ptest \
+ libxml-sax-base-perl-ptest \
+ libxml-simple-perl-ptest \
+ libxml2-ptest \
+ lzo-ptest \
+ m4-ptest \
+ nettle-ptest \
+ openssl-ptest \
+ opkg-ptest \
+ pango-ptest \
+ parted-ptest \
+ quilt-ptest \
+ sed-ptest \
+ slang-ptest \
+ zlib-ptest \
+"
+
+#PTESTS_PROBLEMS = "\
+# qemu-ptest \ # Doesn't run any tests?
+# ruby-ptest \ # Timeout
+# mdadm-ptest \ # Timeout
+# clutter-1.0-ptest \ # Doesn't build due to depends on cogl-1.0
+#"
+
+PTESTS_SLOW = "\
+ bash-ptest \
+ busybox-ptest \
+ dbus-test-ptest \
+ e2fsprogs-ptest \
+ glib-2.0-ptest \
+ gstreamer1.0-ptest \
+ libevent-ptest \
+ lttng-tools-ptest \
+ openssh-ptest \
+ openssl-ptest \
+ perl-ptest \
+ python-ptest \
+ python3-ptest \
+ strace-ptest \
+ tcl-ptest \
+ util-linux-ptest \
+ valgrind-ptest \
+"
diff --git a/poky/meta/conf/distro/include/tcmode-default.inc b/poky/meta/conf/distro/include/tcmode-default.inc
index 04373cc..daacfe2 100644
--- a/poky/meta/conf/distro/include/tcmode-default.inc
+++ b/poky/meta/conf/distro/include/tcmode-default.inc
@@ -24,7 +24,7 @@
GDBVERSION ?= "8.2%"
GLIBCVERSION ?= "2.29%"
LINUXLIBCVERSION ?= "5.0%"
-QEMUVERSION ?= "3.1%"
+QEMUVERSION ?= "4.0%"
GOVERSION ?= "1.12%"
PREFERRED_VERSION_gcc ?= "${GCCVERSION}"
@@ -39,6 +39,7 @@
PREFERRED_VERSION_nativesdk-gcc-sanitizers ?= "${SDKGCCVERSION}"
PREFERRED_VERSION_libgcc ?= "${GCCVERSION}"
PREFERRED_VERSION_libgcc-initial ?= "${GCCVERSION}"
+PREFERRED_VERSION_libgfortran ?= "${GCCVERSION}"
PREFERRED_VERSION_nativesdk-gcc ?= "${SDKGCCVERSION}"
PREFERRED_VERSION_nativesdk-libgcc ?= "${SDKGCCVERSION}"
PREFERRED_VERSION_nativesdk-libgcc-initial ?= "${SDKGCCVERSION}"
diff --git a/poky/meta/conf/layer.conf b/poky/meta/conf/layer.conf
index 9d63b5b..6590e80 100644
--- a/poky/meta/conf/layer.conf
+++ b/poky/meta/conf/layer.conf
@@ -76,6 +76,7 @@
weston->weston-conf \
weston-init->weston \
weston-init->kbd \
+ connman->xl2tpd \
"
# Avoid adding bison-native to the sysroot without a specific
diff --git a/poky/meta/conf/licenses.conf b/poky/meta/conf/licenses.conf
index 1058084..7b01c57 100644
--- a/poky/meta/conf/licenses.conf
+++ b/poky/meta/conf/licenses.conf
@@ -16,7 +16,7 @@
SRC_DISTRIBUTE_LICENSES += "CDDL-1.0 CECILL-1.0 CECILL-2.0 CECILL-B CECILL-C"
SRC_DISTRIBUTE_LICENSES += "ClArtistic CPAL-1.0 CPL-1.0 CUA-OPL-1.0 DSSSL"
SRC_DISTRIBUTE_LICENSES += "ECL-1.0 ECL-2.0 eCos-2.0 EDL-1.0 EFL-1.0 EFL-2.0"
-SRC_DISTRIBUTE_LICENSES += "Elfutils-Exception Entessa EPL-1.0 EPL-2.0 ErlPL-1.1"
+SRC_DISTRIBUTE_LICENSES += "Entessa EPL-1.0 EPL-2.0 ErlPL-1.1"
SRC_DISTRIBUTE_LICENSES += "EUDatagrid EUPL-1.0 EUPL-1.1 Fair Frameworx-1.0"
SRC_DISTRIBUTE_LICENSES += "FreeType GFDL-1.1 GFDL-1.2 GFDL-1.3 GPL-1.0"
SRC_DISTRIBUTE_LICENSES += "GPL-2.0 GPL-2.0-with-autoconf-exception"
diff --git a/poky/meta/conf/machine/qemux86.conf b/poky/meta/conf/machine/qemux86.conf
index ae5187c..f2434a4 100644
--- a/poky/meta/conf/machine/qemux86.conf
+++ b/poky/meta/conf/machine/qemux86.conf
@@ -8,7 +8,9 @@
PREFERRED_PROVIDER_virtual/libgles2 ?= "mesa"
require conf/machine/include/qemu.inc
-require conf/machine/include/tune-i586.inc
+DEFAULTTUNE ?= "i586"
+X86ARCH32 ?= "i586"
+require conf/machine/include/tune-corei7.inc
require conf/machine/include/qemuboot-x86.inc
UBOOT_MACHINE ?= "qemu-x86_defconfig"
diff --git a/poky/meta/files/common-licenses/Elfutils-Exception b/poky/meta/files/common-licenses/Elfutils-Exception
deleted file mode 100644
index 627d769..0000000
--- a/poky/meta/files/common-licenses/Elfutils-Exception
+++ /dev/null
@@ -1,12 +0,0 @@
- This file describes the limits of the Exception under which you are allowed
- to distribute Non-GPL Code in linked combination with Red Hat elfutils.
- For the full text of the license, please see one of the header files
- included with the source distribution or the file COPYING found in the
- top level directory of the source.
-
- The Approved Interfaces are the functions declared in the files:
-
- libelf.h
- libdw.h
- libdwfl.h
-
diff --git a/poky/meta/files/toolchain-shar-extract.sh b/poky/meta/files/toolchain-shar-extract.sh
index 156085b..ccc4f4e 100644
--- a/poky/meta/files/toolchain-shar-extract.sh
+++ b/poky/meta/files/toolchain-shar-extract.sh
@@ -113,7 +113,16 @@
payload_offset=$(($(grep -na -m1 "^MARKER:$" $0|cut -d':' -f1) + 1))
if [ "$listcontents" = "1" ] ; then
- tail -n +$payload_offset $0| tar tvJ || exit 1
+ if [ @SDK_ARCHIVE_TYPE@ = "zip" ]; then
+ tail -n +$payload_offset $0 > sdk.zip
+ if unzip -l sdk.zip;then
+ rm sdk.zip
+ else
+ rm sdk.zip && exit 1
+ fi
+ else
+ tail -n +$payload_offset $0| tar tvJ || exit 1
+ fi
exit
fi
@@ -232,7 +241,16 @@
fi
printf "Extracting SDK..."
-tail -n +$payload_offset $0| $SUDO_EXEC tar xJ -C $target_sdk_dir --checkpoint=.2500 $EXTRA_TAR_OPTIONS || exit 1
+if [ @SDK_ARCHIVE_TYPE@ = "zip" ]; then
+ tail -n +$payload_offset $0 > sdk.zip
+ if $SUDO_EXEC unzip $EXTRA_TAR_OPTIONS sdk.zip -d $target_sdk_dir;then
+ rm sdk.zip
+ else
+ rm sdk.zip && exit 1
+ fi
+else
+ tail -n +$payload_offset $0| $SUDO_EXEC tar xJ -C $target_sdk_dir --checkpoint=.2500 $EXTRA_TAR_OPTIONS || exit 1
+fi
echo "done"
printf "Setting it up..."
diff --git a/poky/meta/lib/bblayers/create.py b/poky/meta/lib/bblayers/create.py
index 2ebf151..542f31f 100644
--- a/poky/meta/lib/bblayers/create.py
+++ b/poky/meta/lib/bblayers/create.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
+
import logging
import os
import sys
diff --git a/poky/meta/lib/buildstats.py b/poky/meta/lib/buildstats.py
index c5d4c73..8627ed3 100644
--- a/poky/meta/lib/buildstats.py
+++ b/poky/meta/lib/buildstats.py
@@ -1,3 +1,6 @@
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
# Implements system state sampling. Called by buildstats.bbclass.
# Because it is a real Python module, it can hold persistent state,
# like open log files and the time of the last sampling.
diff --git a/poky/meta/lib/oe/__init__.py b/poky/meta/lib/oe/__init__.py
index 3ad9513..4e7c09d 100644
--- a/poky/meta/lib/oe/__init__.py
+++ b/poky/meta/lib/oe/__init__.py
@@ -1,2 +1,6 @@
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
+
from pkgutil import extend_path
__path__ = extend_path(__path__, __name__)
diff --git a/poky/meta/lib/oe/buildhistory_analysis.py b/poky/meta/lib/oe/buildhistory_analysis.py
index ad7fceb..62c7a2e 100644
--- a/poky/meta/lib/oe/buildhistory_analysis.py
+++ b/poky/meta/lib/oe/buildhistory_analysis.py
@@ -3,6 +3,8 @@
# Copyright (C) 2012-2013, 2016-2017 Intel Corporation
# Author: Paul Eggleton <paul.eggleton@linux.intel.com>
#
+# SPDX-License-Identifier: GPL-2.0-only
+#
# Note: requires GitPython 0.3.1+
#
# You can use this from the command line by running scripts/buildhistory-diff
@@ -127,7 +129,7 @@
removed = list(set(aitems) - set(bitems))
added = list(set(bitems) - set(aitems))
- if not removed and not added:
+ if not removed and not added and self.fieldname in ['RPROVIDES', 'RDEPENDS', 'RRECOMMENDS', 'RSUGGESTS', 'RREPLACES', 'RCONFLICTS']:
depvera = bb.utils.explode_dep_versions2(self.oldvalue, sort=False)
depverb = bb.utils.explode_dep_versions2(self.newvalue, sort=False)
for i, j in zip(depvera.items(), depverb.items()):
diff --git a/poky/meta/lib/oe/cachedpath.py b/poky/meta/lib/oe/cachedpath.py
index 0840cc4..254257a 100644
--- a/poky/meta/lib/oe/cachedpath.py
+++ b/poky/meta/lib/oe/cachedpath.py
@@ -1,4 +1,6 @@
#
+# SPDX-License-Identifier: GPL-2.0-only
+#
# Based on standard python library functions but avoid
# repeated stat calls. Its assumed the files will not change from under us
# so we can cache stat calls.
diff --git a/poky/meta/lib/oe/classextend.py b/poky/meta/lib/oe/classextend.py
index 662707b..e25122e 100644
--- a/poky/meta/lib/oe/classextend.py
+++ b/poky/meta/lib/oe/classextend.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
+
import collections
class ClassExtender(object):
diff --git a/poky/meta/lib/oe/classutils.py b/poky/meta/lib/oe/classutils.py
index 45cd524..08bb66b 100644
--- a/poky/meta/lib/oe/classutils.py
+++ b/poky/meta/lib/oe/classutils.py
@@ -1,3 +1,6 @@
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
class ClassRegistryMeta(type):
"""Give each ClassRegistry their own registry"""
diff --git a/poky/meta/lib/oe/copy_buildsystem.py b/poky/meta/lib/oe/copy_buildsystem.py
index 7cb784c..5b96121 100644
--- a/poky/meta/lib/oe/copy_buildsystem.py
+++ b/poky/meta/lib/oe/copy_buildsystem.py
@@ -1,3 +1,6 @@
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
# This class should provide easy access to the different aspects of the
# buildsystem such as layers, bitbake location, etc.
#
diff --git a/poky/meta/lib/oe/data.py b/poky/meta/lib/oe/data.py
index b8901e6..602130a 100644
--- a/poky/meta/lib/oe/data.py
+++ b/poky/meta/lib/oe/data.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
+
import json
import oe.maketype
diff --git a/poky/meta/lib/oe/distro_check.py b/poky/meta/lib/oe/distro_check.py
index e775c3a..88e46c3 100644
--- a/poky/meta/lib/oe/distro_check.py
+++ b/poky/meta/lib/oe/distro_check.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
+
def create_socket(url, d):
import urllib
from bb.utils import export_proxies
diff --git a/poky/meta/lib/oe/elf.py b/poky/meta/lib/oe/elf.py
index 4cc9a9a..2562cea 100644
--- a/poky/meta/lib/oe/elf.py
+++ b/poky/meta/lib/oe/elf.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
+
def machine_dict(d):
# TARGET_OS TARGET_ARCH MACHINE, OSABI, ABIVERSION, Little Endian, 32bit?
machdata = {
diff --git a/poky/meta/lib/oe/gpg_sign.py b/poky/meta/lib/oe/gpg_sign.py
index ccd5aee..a95d2ba 100644
--- a/poky/meta/lib/oe/gpg_sign.py
+++ b/poky/meta/lib/oe/gpg_sign.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
+
"""Helper module for GPG signing"""
import os
diff --git a/poky/meta/lib/oe/license.py b/poky/meta/lib/oe/license.py
index 04f5b31..c1274a6 100644
--- a/poky/meta/lib/oe/license.py
+++ b/poky/meta/lib/oe/license.py
@@ -1,4 +1,6 @@
-# vi:sts=4:sw=4:et
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
"""Code for parsing OpenEmbedded license strings"""
import ast
diff --git a/poky/meta/lib/oe/lsb.py b/poky/meta/lib/oe/lsb.py
index 71c0992..4f2b419 100644
--- a/poky/meta/lib/oe/lsb.py
+++ b/poky/meta/lib/oe/lsb.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
+
def get_os_release():
"""Get all key-value pairs from /etc/os-release as a dict"""
from collections import OrderedDict
diff --git a/poky/meta/lib/oe/maketype.py b/poky/meta/lib/oe/maketype.py
index c36e7b5..d929c8b 100644
--- a/poky/meta/lib/oe/maketype.py
+++ b/poky/meta/lib/oe/maketype.py
@@ -1,3 +1,6 @@
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
"""OpenEmbedded variable typing support
Types are defined in the metadata by name, using the 'type' flag on a
diff --git a/poky/meta/lib/oe/manifest.py b/poky/meta/lib/oe/manifest.py
index 674303c..f7c88f9 100644
--- a/poky/meta/lib/oe/manifest.py
+++ b/poky/meta/lib/oe/manifest.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
+
from abc import ABCMeta, abstractmethod
import os
import re
diff --git a/poky/meta/lib/oe/package.py b/poky/meta/lib/oe/package.py
index 6e83f01..b595132 100644
--- a/poky/meta/lib/oe/package.py
+++ b/poky/meta/lib/oe/package.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
+
import stat
import mmap
import subprocess
diff --git a/poky/meta/lib/oe/package_manager.py b/poky/meta/lib/oe/package_manager.py
index 2835c1d..06feb4d 100644
--- a/poky/meta/lib/oe/package_manager.py
+++ b/poky/meta/lib/oe/package_manager.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
+
from abc import ABCMeta, abstractmethod
import os
import glob
diff --git a/poky/meta/lib/oe/packagedata.py b/poky/meta/lib/oe/packagedata.py
index 32e5c82..cbde380 100644
--- a/poky/meta/lib/oe/packagedata.py
+++ b/poky/meta/lib/oe/packagedata.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
+
import codecs
import os
diff --git a/poky/meta/lib/oe/packagegroup.py b/poky/meta/lib/oe/packagegroup.py
index 4bc5d3e..2419cbb 100644
--- a/poky/meta/lib/oe/packagegroup.py
+++ b/poky/meta/lib/oe/packagegroup.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
+
import itertools
def is_optional(feature, d):
diff --git a/poky/meta/lib/oe/patch.py b/poky/meta/lib/oe/patch.py
index f43cf04..2b1eee1 100644
--- a/poky/meta/lib/oe/patch.py
+++ b/poky/meta/lib/oe/patch.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
+
import oe.path
import oe.types
@@ -847,6 +851,7 @@
def should_apply(parm, d):
+ import bb.utils
if "mindate" in parm or "maxdate" in parm:
pn = d.getVar('PN')
srcdate = d.getVar('SRCDATE_%s' % pn)
@@ -883,5 +888,15 @@
if srcrev and parm["notrev"] in srcrev:
return False, "doesn't apply to revision"
+ if "maxver" in parm:
+ pv = d.getVar('PV')
+ if bb.utils.vercmp_string_op(pv, parm["maxver"], ">"):
+ return False, "applies to earlier version"
+
+ if "minver" in parm:
+ pv = d.getVar('PV')
+ if bb.utils.vercmp_string_op(pv, parm["minver"], "<"):
+ return False, "applies to later version"
+
return True, None
diff --git a/poky/meta/lib/oe/path.py b/poky/meta/lib/oe/path.py
index 1e24d05..fa209b9 100644
--- a/poky/meta/lib/oe/path.py
+++ b/poky/meta/lib/oe/path.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
+
import errno
import glob
import shutil
@@ -90,7 +94,7 @@
subprocess.check_output(cmd, shell=True, stderr=subprocess.STDOUT)
def copyhardlinktree(src, dst):
- """ Make the hard link when possible, otherwise copy. """
+ """Make a tree of hard links when possible, otherwise copy."""
bb.utils.mkdirhier(dst)
if os.path.isdir(src) and not len(os.listdir(src)):
return
@@ -114,6 +118,17 @@
else:
copytree(src, dst)
+def copyhardlink(src, dst):
+ """Make a hard link when possible, otherwise copy."""
+
+ # We need to stat the destination directory as the destination file probably
+ # doesn't exist yet.
+ dstdir = os.path.dirname(dst)
+ if os.stat(src).st_dev == os.stat(dstdir).st_dev:
+ os.link(src, dst)
+ else:
+ shutil.copy(src, dst)
+
def remove(path, recurse=True):
"""
Equivalent to rm -f or rm -rf
diff --git a/poky/meta/lib/oe/prservice.py b/poky/meta/lib/oe/prservice.py
index 32dfc15..b1132cc 100644
--- a/poky/meta/lib/oe/prservice.py
+++ b/poky/meta/lib/oe/prservice.py
@@ -1,3 +1,6 @@
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
def prserv_make_conn(d, check = False):
import prserv.serv
diff --git a/poky/meta/lib/oe/qa.py b/poky/meta/lib/oe/qa.py
index 59c72ce..21066c4 100644
--- a/poky/meta/lib/oe/qa.py
+++ b/poky/meta/lib/oe/qa.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
+
import os, struct, mmap
class NotELFFileError(Exception):
diff --git a/poky/meta/lib/oe/recipeutils.py b/poky/meta/lib/oe/recipeutils.py
index 4ca200d..1e5b9a4 100644
--- a/poky/meta/lib/oe/recipeutils.py
+++ b/poky/meta/lib/oe/recipeutils.py
@@ -4,6 +4,8 @@
#
# Copyright (C) 2013-2017 Intel Corporation
#
+# SPDX-License-Identifier: GPL-2.0-only
+#
import sys
import os
diff --git a/poky/meta/lib/oe/rootfs.py b/poky/meta/lib/oe/rootfs.py
index b7c0b9c..9358f56 100644
--- a/poky/meta/lib/oe/rootfs.py
+++ b/poky/meta/lib/oe/rootfs.py
@@ -1,3 +1,6 @@
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
from abc import ABCMeta, abstractmethod
from oe.utils import execute_pre_post_process
from oe.package_manager import *
diff --git a/poky/meta/lib/oe/sdk.py b/poky/meta/lib/oe/sdk.py
index 878ee16..b4fbdb7 100644
--- a/poky/meta/lib/oe/sdk.py
+++ b/poky/meta/lib/oe/sdk.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
+
from abc import ABCMeta, abstractmethod
from oe.utils import execute_pre_post_process
from oe.manifest import *
diff --git a/poky/meta/lib/oe/sstatesig.py b/poky/meta/lib/oe/sstatesig.py
index a83af51..417943d 100644
--- a/poky/meta/lib/oe/sstatesig.py
+++ b/poky/meta/lib/oe/sstatesig.py
@@ -1,3 +1,6 @@
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
import bb.siggen
import oe
diff --git a/poky/meta/lib/oe/terminal.py b/poky/meta/lib/oe/terminal.py
index e404555..9bda3ef 100644
--- a/poky/meta/lib/oe/terminal.py
+++ b/poky/meta/lib/oe/terminal.py
@@ -1,3 +1,6 @@
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
import logging
import oe.classutils
import shlex
diff --git a/poky/meta/lib/oe/types.py b/poky/meta/lib/oe/types.py
index 1eebba5..77ee7ee 100644
--- a/poky/meta/lib/oe/types.py
+++ b/poky/meta/lib/oe/types.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
+
import errno
import re
import os
diff --git a/poky/meta/lib/oe/useradd.py b/poky/meta/lib/oe/useradd.py
index 179ac76..bedfe0e 100644
--- a/poky/meta/lib/oe/useradd.py
+++ b/poky/meta/lib/oe/useradd.py
@@ -1,3 +1,6 @@
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
import argparse
import re
diff --git a/poky/meta/lib/oe/utils.py b/poky/meta/lib/oe/utils.py
index a4fd79c..d686ce1 100644
--- a/poky/meta/lib/oe/utils.py
+++ b/poky/meta/lib/oe/utils.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
+
import subprocess
import multiprocessing
import traceback
@@ -324,7 +328,12 @@
if errors:
msg = ""
for (e, tb) in errors:
- msg = msg + str(e) + ": " + str(tb) + "\n"
+ if isinstance(e, subprocess.CalledProcessError) and e.output:
+ msg = msg + str(e) + "\n"
+ msg = msg + "Subprocess output:"
+ msg = msg + e.output.decode("utf-8", errors="ignore")
+ else:
+ msg = msg + str(e) + ": " + str(tb) + "\n"
bb.fatal("Fatal errors occurred in subprocesses:\n%s" % msg)
return results
diff --git a/poky/meta/lib/oeqa/buildperf/__init__.py b/poky/meta/lib/oeqa/buildperf/__init__.py
index 605f429..b7ebd03 100644
--- a/poky/meta/lib/oeqa/buildperf/__init__.py
+++ b/poky/meta/lib/oeqa/buildperf/__init__.py
@@ -1,13 +1,7 @@
# Copyright (c) 2016, Intel Corporation.
#
-# This program is free software; you can redistribute it and/or modify it
-# under the terms and conditions of the GNU General Public License,
-# version 2, as published by the Free Software Foundation.
#
-# This program is distributed in the hope it will be useful, but WITHOUT
-# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
-# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
-# more details.
+# SPDX-License-Identifier: GPL-2.0-only
#
"""Build performance tests"""
from .base import (BuildPerfTestCase,
diff --git a/poky/meta/lib/oeqa/buildperf/base.py b/poky/meta/lib/oeqa/buildperf/base.py
index ac6ee15..3b2fed5 100644
--- a/poky/meta/lib/oeqa/buildperf/base.py
+++ b/poky/meta/lib/oeqa/buildperf/base.py
@@ -1,13 +1,6 @@
# Copyright (c) 2016, Intel Corporation.
#
-# This program is free software; you can redistribute it and/or modify it
-# under the terms and conditions of the GNU General Public License,
-# version 2, as published by the Free Software Foundation.
-#
-# This program is distributed in the hope it will be useful, but WITHOUT
-# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
-# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
-# more details.
+# SPDX-License-Identifier: GPL-2.0-only
#
"""Build performance test base classes and functionality"""
import json
diff --git a/poky/meta/lib/oeqa/buildperf/test_basic.py b/poky/meta/lib/oeqa/buildperf/test_basic.py
index 6d6b01b..2104617 100644
--- a/poky/meta/lib/oeqa/buildperf/test_basic.py
+++ b/poky/meta/lib/oeqa/buildperf/test_basic.py
@@ -1,13 +1,6 @@
# Copyright (c) 2016, Intel Corporation.
#
-# This program is free software; you can redistribute it and/or modify it
-# under the terms and conditions of the GNU General Public License,
-# version 2, as published by the Free Software Foundation.
-#
-# This program is distributed in the hope it will be useful, but WITHOUT
-# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
-# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
-# more details.
+# SPDX-License-Identifier: GPL-2.0-only
#
"""Basic set of build performance tests"""
import os
diff --git a/poky/meta/lib/oeqa/controllers/__init__.py b/poky/meta/lib/oeqa/controllers/__init__.py
index 8eda927..cc3836c 100644
--- a/poky/meta/lib/oeqa/controllers/__init__.py
+++ b/poky/meta/lib/oeqa/controllers/__init__.py
@@ -1,3 +1,6 @@
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
# Enable other layers to have modules in the same named directory
from pkgutil import extend_path
__path__ = extend_path(__path__, __name__)
diff --git a/poky/meta/lib/oeqa/controllers/masterimage.py b/poky/meta/lib/oeqa/controllers/masterimage.py
index f175e11..0435dfa 100644
--- a/poky/meta/lib/oeqa/controllers/masterimage.py
+++ b/poky/meta/lib/oeqa/controllers/masterimage.py
@@ -1,7 +1,7 @@
# Copyright (C) 2014 Intel Corporation
#
-# Released under the MIT license (see COPYING.MIT)
-
+# SPDX-License-Identifier: MIT
+#
# This module adds support to testimage.bbclass to deploy images and run
# tests using a "master image" - this is a "known good" image that is
# installed onto the device as part of initial setup and will be booted into
diff --git a/poky/meta/lib/oeqa/controllers/testtargetloader.py b/poky/meta/lib/oeqa/controllers/testtargetloader.py
index b51d04b..23101c7 100644
--- a/poky/meta/lib/oeqa/controllers/testtargetloader.py
+++ b/poky/meta/lib/oeqa/controllers/testtargetloader.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
+
import types
import bb
import os
diff --git a/poky/meta/lib/oeqa/core/case.py b/poky/meta/lib/oeqa/core/case.py
index 917a2aa..54977c8 100644
--- a/poky/meta/lib/oeqa/core/case.py
+++ b/poky/meta/lib/oeqa/core/case.py
@@ -1,5 +1,8 @@
+#
# Copyright (C) 2016 Intel Corporation
-# Released under the MIT license (see COPYING.MIT)
+#
+# SPDX-License-Identifier: MIT
+#
import unittest
diff --git a/poky/meta/lib/oeqa/core/cases/example/test_basic.py b/poky/meta/lib/oeqa/core/cases/example/test_basic.py
index 11cf380..d77edcd 100644
--- a/poky/meta/lib/oeqa/core/cases/example/test_basic.py
+++ b/poky/meta/lib/oeqa/core/cases/example/test_basic.py
@@ -1,5 +1,7 @@
# Copyright (C) 2016 Intel Corporation
-# Released under the MIT license (see COPYING.MIT)
+#
+# SPDX-License-Identifier: MIT
+#
from oeqa.core.case import OETestCase
from oeqa.core.decorator.depends import OETestDepends
diff --git a/poky/meta/lib/oeqa/core/context.py b/poky/meta/lib/oeqa/core/context.py
index 821aec8..0962704 100644
--- a/poky/meta/lib/oeqa/core/context.py
+++ b/poky/meta/lib/oeqa/core/context.py
@@ -1,5 +1,7 @@
-# Copyright (C) 2016 Intel Corporation
-# Released under the MIT license (see COPYING.MIT)
+## Copyright (C) 2016 Intel Corporation
+#
+# SPDX-License-Identifier: MIT
+#
import os
import sys
diff --git a/poky/meta/lib/oeqa/core/decorator/__init__.py b/poky/meta/lib/oeqa/core/decorator/__init__.py
index 14d7bfc..923b218 100644
--- a/poky/meta/lib/oeqa/core/decorator/__init__.py
+++ b/poky/meta/lib/oeqa/core/decorator/__init__.py
@@ -1,5 +1,8 @@
+#
# Copyright (C) 2016 Intel Corporation
-# Released under the MIT license (see COPYING.MIT)
+#
+# SPDX-License-Identifier: MIT
+#
from functools import wraps
from abc import abstractmethod, ABCMeta
diff --git a/poky/meta/lib/oeqa/core/decorator/data.py b/poky/meta/lib/oeqa/core/decorator/data.py
index f0f65ab..babc978 100644
--- a/poky/meta/lib/oeqa/core/decorator/data.py
+++ b/poky/meta/lib/oeqa/core/decorator/data.py
@@ -1,5 +1,8 @@
+#
# Copyright (C) 2016 Intel Corporation
-# Released under the MIT license (see COPYING.MIT)
+#
+# SPDX-License-Identifier: MIT
+#
from oeqa.core.exception import OEQAMissingVariable
diff --git a/poky/meta/lib/oeqa/core/decorator/depends.py b/poky/meta/lib/oeqa/core/decorator/depends.py
index 950dbaa..33f0841 100644
--- a/poky/meta/lib/oeqa/core/decorator/depends.py
+++ b/poky/meta/lib/oeqa/core/decorator/depends.py
@@ -1,5 +1,8 @@
+#
# Copyright (C) 2016 Intel Corporation
-# Released under the MIT license (see COPYING.MIT)
+#
+# SPDX-License-Identifier: MIT
+#
from unittest import SkipTest
diff --git a/poky/meta/lib/oeqa/core/decorator/oeid.py b/poky/meta/lib/oeqa/core/decorator/oeid.py
deleted file mode 100644
index ea8017a..0000000
--- a/poky/meta/lib/oeqa/core/decorator/oeid.py
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright (C) 2016 Intel Corporation
-# Released under the MIT license (see COPYING.MIT)
-
-from . import OETestFilter, registerDecorator
-from oeqa.core.utils.misc import intToList
-
-def _idFilter(oeid, filters):
- return False if oeid in filters else True
-
-@registerDecorator
-class OETestID(OETestFilter):
- attrs = ('oeid',)
-
- def bind(self, registry, case):
- super(OETestID, self).bind(registry, case)
-
- def filtrate(self, filters):
- if filters.get('oeid'):
- filterx = intToList(filters['oeid'], 'oeid')
- del filters['oeid']
- if _idFilter(self.oeid, filterx):
- return True
- return False
diff --git a/poky/meta/lib/oeqa/core/decorator/oetag.py b/poky/meta/lib/oeqa/core/decorator/oetag.py
index ad38ab7..8c31138 100644
--- a/poky/meta/lib/oeqa/core/decorator/oetag.py
+++ b/poky/meta/lib/oeqa/core/decorator/oetag.py
@@ -1,5 +1,8 @@
+#
# Copyright (C) 2016 Intel Corporation
-# Released under the MIT license (see COPYING.MIT)
+#
+# SPDX-License-Identifier: MIT
+#
from . import OETestFilter, registerDecorator
from oeqa.core.utils.misc import strToList
diff --git a/poky/meta/lib/oeqa/core/decorator/oetimeout.py b/poky/meta/lib/oeqa/core/decorator/oetimeout.py
index a247583..df90d1c 100644
--- a/poky/meta/lib/oeqa/core/decorator/oetimeout.py
+++ b/poky/meta/lib/oeqa/core/decorator/oetimeout.py
@@ -1,5 +1,8 @@
+#
# Copyright (C) 2016 Intel Corporation
-# Released under the MIT license (see COPYING.MIT)
+#
+# SPDX-License-Identifier: MIT
+#
import signal
from . import OETestDecorator, registerDecorator
diff --git a/poky/meta/lib/oeqa/core/exception.py b/poky/meta/lib/oeqa/core/exception.py
index 732f2ef..05be0ed 100644
--- a/poky/meta/lib/oeqa/core/exception.py
+++ b/poky/meta/lib/oeqa/core/exception.py
@@ -1,5 +1,8 @@
+#
# Copyright (C) 2016 Intel Corporation
-# Released under the MIT license (see COPYING.MIT)
+#
+# SPDX-License-Identifier: MIT
+#
class OEQAException(Exception):
pass
diff --git a/poky/meta/lib/oeqa/core/loader.py b/poky/meta/lib/oeqa/core/loader.py
index e66de32..7fea058 100644
--- a/poky/meta/lib/oeqa/core/loader.py
+++ b/poky/meta/lib/oeqa/core/loader.py
@@ -1,5 +1,8 @@
+#
# Copyright (C) 2016 Intel Corporation
-# Released under the MIT license (see COPYING.MIT)
+#
+# SPDX-License-Identifier: MIT
+#
import os
import re
diff --git a/poky/meta/lib/oeqa/core/runner.py b/poky/meta/lib/oeqa/core/runner.py
index df88b85..930620e 100644
--- a/poky/meta/lib/oeqa/core/runner.py
+++ b/poky/meta/lib/oeqa/core/runner.py
@@ -1,5 +1,8 @@
+#
# Copyright (C) 2016 Intel Corporation
-# Released under the MIT license (see COPYING.MIT)
+#
+# SPDX-License-Identifier: MIT
+#
import os
import time
@@ -7,6 +10,7 @@
import logging
import re
import json
+import sys
from unittest import TextTestResult as _TestResult
from unittest import TextTestRunner as _TestRunner
@@ -45,6 +49,9 @@
self.tc = tc
+ # stdout and stderr for each test case
+ self.logged_output = {}
+
def startTest(self, test):
# May have been set by concurrencytest
if test.id() not in self.starttime:
@@ -53,6 +60,9 @@
def stopTest(self, test):
self.endtime[test.id()] = time.time()
+ if self.buffer:
+ self.logged_output[test.id()] = (
+ sys.stdout.getvalue(), sys.stderr.getvalue())
super(OETestResult, self).stopTest(test)
if test.id() in self.progressinfo:
self.tc.logger.info(self.progressinfo[test.id()])
@@ -81,11 +91,17 @@
def _getTestResultDetails(self, case):
result_types = {'failures': 'FAILED', 'errors': 'ERROR', 'skipped': 'SKIPPED',
- 'expectedFailures': 'EXPECTEDFAIL', 'successes': 'PASSED'}
+ 'expectedFailures': 'EXPECTEDFAIL', 'successes': 'PASSED',
+ 'unexpectedSuccesses' : 'PASSED'}
for rtype in result_types:
found = False
- for (scase, msg) in getattr(self, rtype):
+ for resultclass in getattr(self, rtype):
+ # unexpectedSuccesses are just lists, not lists of tuples
+ if isinstance(resultclass, tuple):
+ scase, msg = resultclass
+ else:
+ scase, msg = resultclass, None
if case.id() == scase.id():
found = True
break
@@ -93,13 +109,13 @@
# When fails at module or class level the class name is passed as string
# so figure out to see if match
- m = re.search(r"^setUpModule \((?P<module_name>.*)\)$", scase_str)
+ m = re.search(r"^setUpModule \((?P<module_name>.*)\).*$", scase_str)
if m:
if case.__class__.__module__ == m.group('module_name'):
found = True
break
- m = re.search(r"^setUpClass \((?P<class_name>.*)\)$", scase_str)
+ m = re.search(r"^setUpClass \((?P<class_name>.*)\).*$", scase_str)
if m:
class_name = "%s.%s" % (case.__class__.__module__,
case.__class__.__name__)
@@ -118,7 +134,8 @@
self.successes.append((test, None))
super(OETestResult, self).addSuccess(test)
- def logDetails(self, json_file_dir=None, configuration=None, result_id=None):
+ def logDetails(self, json_file_dir=None, configuration=None, result_id=None,
+ dump_streams=False):
self.tc.logger.info("RESULTS:")
result = {}
@@ -131,23 +148,21 @@
(status, log) = self._getTestResultDetails(case)
- oeid = -1
- if hasattr(case, 'decorators'):
- for d in case.decorators:
- if hasattr(d, 'oeid'):
- oeid = d.oeid
-
t = ""
if case.id() in self.starttime and case.id() in self.endtime:
t = " (" + "{0:.2f}".format(self.endtime[case.id()] - self.starttime[case.id()]) + "s)"
if status not in logs:
logs[status] = []
- logs[status].append("RESULTS - %s - Testcase %s: %s%s" % (case.id(), oeid, status, t))
+ logs[status].append("RESULTS - %s: %s%s" % (case.id(), status, t))
+ report = {'status': status}
if log:
- result[case.id()] = {'status': status, 'log': log}
- else:
- result[case.id()] = {'status': status}
+ report['log'] = log
+ if dump_streams and case.id() in self.logged_output:
+ (stdout, stderr) = self.logged_output[case.id()]
+ report['stdout'] = stdout
+ report['stderr'] = stderr
+ result[case.id()] = report
for i in ['PASSED', 'SKIPPED', 'EXPECTEDFAIL', 'ERROR', 'FAILED', 'UNKNOWN']:
if i not in logs:
@@ -190,38 +205,19 @@
self._walked_cases = self._walked_cases + 1
def _list_tests_name(self, suite):
- from oeqa.core.decorator.oeid import OETestID
from oeqa.core.decorator.oetag import OETestTag
self._walked_cases = 0
- def _list_cases_without_id(logger, case):
-
- found_id = False
- if hasattr(case, 'decorators'):
- for d in case.decorators:
- if isinstance(d, OETestID):
- found_id = True
-
- if not found_id:
- logger.info('oeid missing for %s' % case.id())
-
def _list_cases(logger, case):
- oeid = None
oetag = None
if hasattr(case, 'decorators'):
for d in case.decorators:
- if isinstance(d, OETestID):
- oeid = d.oeid
- elif isinstance(d, OETestTag):
+ if isinstance(d, OETestTag):
oetag = d.oetag
- logger.info("%s\t%s\t\t%s" % (oeid, oetag, case.id()))
-
- self.tc.logger.info("Listing test cases that don't have oeid ...")
- self._walk_suite(suite, _list_cases_without_id)
- self.tc.logger.info("-" * 80)
+ logger.info("%s\t\t%s" % (oetag, case.id()))
self.tc.logger.info("Listing all available tests:")
self._walked_cases = 0
diff --git a/poky/meta/lib/oeqa/core/target/__init__.py b/poky/meta/lib/oeqa/core/target/__init__.py
index d2468bc..1382aa9 100644
--- a/poky/meta/lib/oeqa/core/target/__init__.py
+++ b/poky/meta/lib/oeqa/core/target/__init__.py
@@ -1,5 +1,8 @@
+#
# Copyright (C) 2016 Intel Corporation
-# Released under the MIT license (see COPYING.MIT)
+#
+# SPDX-License-Identifier: MIT
+#
from abc import abstractmethod
diff --git a/poky/meta/lib/oeqa/core/target/qemu.py b/poky/meta/lib/oeqa/core/target/qemu.py
index 7a161a3..081c627 100644
--- a/poky/meta/lib/oeqa/core/target/qemu.py
+++ b/poky/meta/lib/oeqa/core/target/qemu.py
@@ -1,5 +1,8 @@
+#
# Copyright (C) 2016 Intel Corporation
-# Released under the MIT license (see COPYING.MIT)
+#
+# SPDX-License-Identifier: MIT
+#
import os
import sys
diff --git a/poky/meta/lib/oeqa/core/target/ssh.py b/poky/meta/lib/oeqa/core/target/ssh.py
index 8ff1f6c..51032ef 100644
--- a/poky/meta/lib/oeqa/core/target/ssh.py
+++ b/poky/meta/lib/oeqa/core/target/ssh.py
@@ -1,5 +1,8 @@
+#
# Copyright (C) 2016 Intel Corporation
-# Released under the MIT license (see COPYING.MIT)
+#
+# SPDX-License-Identifier: MIT
+#
import os
import time
@@ -207,7 +210,7 @@
logger.debug('time: %s, endtime: %s' % (time.time(), endtime))
try:
if select.select([process.stdout], [], [], 5)[0] != []:
- reader = codecs.getreader('utf-8')(process.stdout)
+ reader = codecs.getreader('utf-8')(process.stdout, 'ignore')
data = reader.read(1024, 4096)
if not data:
process.stdout.close()
@@ -234,7 +237,7 @@
output += lastline
else:
- output = process.communicate()[0].decode("utf-8", errors='replace')
+ output = process.communicate()[0].decode('utf-8', errors='ignore')
logger.debug('Data from SSH call: %s' % output.rstrip())
options = {
diff --git a/poky/meta/lib/oeqa/core/tests/cases/data.py b/poky/meta/lib/oeqa/core/tests/cases/data.py
index 88003a6..0d8de87 100644
--- a/poky/meta/lib/oeqa/core/tests/cases/data.py
+++ b/poky/meta/lib/oeqa/core/tests/cases/data.py
@@ -1,5 +1,8 @@
+#
# Copyright (C) 2016 Intel Corporation
-# Released under the MIT license (see COPYING.MIT)
+#
+# SPDX-License-Identifier: MIT
+#
from oeqa.core.case import OETestCase
from oeqa.core.decorator.oetag import OETestTag
diff --git a/poky/meta/lib/oeqa/core/tests/cases/depends.py b/poky/meta/lib/oeqa/core/tests/cases/depends.py
index 17cdd90..46e7db9 100644
--- a/poky/meta/lib/oeqa/core/tests/cases/depends.py
+++ b/poky/meta/lib/oeqa/core/tests/cases/depends.py
@@ -1,5 +1,8 @@
+#
# Copyright (C) 2016 Intel Corporation
-# Released under the MIT license (see COPYING.MIT)
+#
+# SPDX-License-Identifier: MIT
+#
from oeqa.core.case import OETestCase
from oeqa.core.decorator.depends import OETestDepends
diff --git a/poky/meta/lib/oeqa/core/tests/cases/loader/invalid/oeid.py b/poky/meta/lib/oeqa/core/tests/cases/loader/invalid/oeid.py
deleted file mode 100644
index 038d445..0000000
--- a/poky/meta/lib/oeqa/core/tests/cases/loader/invalid/oeid.py
+++ /dev/null
@@ -1,15 +0,0 @@
-# Copyright (C) 2016 Intel Corporation
-# Released under the MIT license (see COPYING.MIT)
-
-from oeqa.core.case import OETestCase
-
-class AnotherIDTest(OETestCase):
-
- def testAnotherIdGood(self):
- self.assertTrue(True, msg='How is this possible?')
-
- def testAnotherIdOther(self):
- self.assertTrue(True, msg='How is this possible?')
-
- def testAnotherIdNone(self):
- self.assertTrue(True, msg='How is this possible?')
diff --git a/poky/meta/lib/oeqa/core/tests/cases/loader/valid/another.py b/poky/meta/lib/oeqa/core/tests/cases/loader/valid/another.py
index c9ffd17..bedc20c 100644
--- a/poky/meta/lib/oeqa/core/tests/cases/loader/valid/another.py
+++ b/poky/meta/lib/oeqa/core/tests/cases/loader/valid/another.py
@@ -1,5 +1,8 @@
+#
# Copyright (C) 2016 Intel Corporation
-# Released under the MIT license (see COPYING.MIT)
+#
+# SPDX-License-Identifier: MIT
+#
from oeqa.core.case import OETestCase
diff --git a/poky/meta/lib/oeqa/core/tests/cases/oeid.py b/poky/meta/lib/oeqa/core/tests/cases/oeid.py
deleted file mode 100644
index c2d3d32..0000000
--- a/poky/meta/lib/oeqa/core/tests/cases/oeid.py
+++ /dev/null
@@ -1,18 +0,0 @@
-# Copyright (C) 2016 Intel Corporation
-# Released under the MIT license (see COPYING.MIT)
-
-from oeqa.core.case import OETestCase
-from oeqa.core.decorator.oeid import OETestID
-
-class IDTest(OETestCase):
-
- @OETestID(101)
- def testIdGood(self):
- self.assertTrue(True, msg='How is this possible?')
-
- @OETestID(102)
- def testIdOther(self):
- self.assertTrue(True, msg='How is this possible?')
-
- def testIdNone(self):
- self.assertTrue(True, msg='How is this possible?')
diff --git a/poky/meta/lib/oeqa/core/tests/cases/oetag.py b/poky/meta/lib/oeqa/core/tests/cases/oetag.py
index 0cae02e..4e1d080 100644
--- a/poky/meta/lib/oeqa/core/tests/cases/oetag.py
+++ b/poky/meta/lib/oeqa/core/tests/cases/oetag.py
@@ -1,5 +1,8 @@
+#
# Copyright (C) 2016 Intel Corporation
-# Released under the MIT license (see COPYING.MIT)
+#
+# SPDX-License-Identifier: MIT
+#
from oeqa.core.case import OETestCase
from oeqa.core.decorator.oetag import OETestTag
diff --git a/poky/meta/lib/oeqa/core/tests/cases/timeout.py b/poky/meta/lib/oeqa/core/tests/cases/timeout.py
index 870c315..5dfecc7 100644
--- a/poky/meta/lib/oeqa/core/tests/cases/timeout.py
+++ b/poky/meta/lib/oeqa/core/tests/cases/timeout.py
@@ -1,5 +1,8 @@
+#
# Copyright (C) 2016 Intel Corporation
-# Released under the MIT license (see COPYING.MIT)
+#
+# SPDX-License-Identifier: MIT
+#
from time import sleep
diff --git a/poky/meta/lib/oeqa/core/tests/common.py b/poky/meta/lib/oeqa/core/tests/common.py
index 52b18a1..39efd50 100644
--- a/poky/meta/lib/oeqa/core/tests/common.py
+++ b/poky/meta/lib/oeqa/core/tests/common.py
@@ -1,5 +1,8 @@
+#
# Copyright (C) 2016 Intel Corporation
-# Released under the MIT license (see COPYING.MIT)
+#
+# SPDX-License-Identifier: MIT
+#
import sys
import os
diff --git a/poky/meta/lib/oeqa/core/tests/test_data.py b/poky/meta/lib/oeqa/core/tests/test_data.py
index 21b6c68..50811bb 100755
--- a/poky/meta/lib/oeqa/core/tests/test_data.py
+++ b/poky/meta/lib/oeqa/core/tests/test_data.py
@@ -1,7 +1,9 @@
#!/usr/bin/env python3
# Copyright (C) 2016 Intel Corporation
-# Released under the MIT license (see COPYING.MIT)
+#
+# SPDX-License-Identifier: MIT
+#
import unittest
import logging
diff --git a/poky/meta/lib/oeqa/core/tests/test_decorators.py b/poky/meta/lib/oeqa/core/tests/test_decorators.py
index f7d11e8..499cd66 100755
--- a/poky/meta/lib/oeqa/core/tests/test_decorators.py
+++ b/poky/meta/lib/oeqa/core/tests/test_decorators.py
@@ -1,7 +1,9 @@
#!/usr/bin/env python3
-
+#
# Copyright (C) 2016 Intel Corporation
-# Released under the MIT license (see COPYING.MIT)
+#
+# SPDX-License-Identifier: MIT
+#
import signal
import unittest
@@ -42,29 +44,6 @@
for test in tests:
self._runFilterTest(['oetag'], test[0], test[1], test[2])
- def test_oeid(self):
- # Get all cases without filtering.
- filter_all = {}
- test_all = {'testIdGood', 'testIdOther', 'testIdNone'}
- msg_all = 'Failed to get all oeid cases without filtering.'
-
- # Get cases with '101' oeid.
- filter_good = {'oeid': 101}
- test_good = {'testIdGood'}
- msg_good = 'Failed to get just one tes filtering with "101" oeid.'
-
- # Get cases with an invalid id.
- filter_invalid = {'oeid':999}
- test_invalid = set()
- msg_invalid = 'Failed to filter all test using an invalid oeid.'
-
- tests = ((filter_all, test_all, msg_all),
- (filter_good, test_good, msg_good),
- (filter_invalid, test_invalid, msg_invalid))
-
- for test in tests:
- self._runFilterTest(['oeid'], test[0], test[1], test[2])
-
class TestDependsDecorator(TestBase):
modules = ['depends']
diff --git a/poky/meta/lib/oeqa/core/tests/test_loader.py b/poky/meta/lib/oeqa/core/tests/test_loader.py
index b79b8ba..519ba96 100755
--- a/poky/meta/lib/oeqa/core/tests/test_loader.py
+++ b/poky/meta/lib/oeqa/core/tests/test_loader.py
@@ -1,7 +1,9 @@
#!/usr/bin/env python3
-
+#
# Copyright (C) 2016 Intel Corporation
-# Released under the MIT license (see COPYING.MIT)
+#
+# SPDX-License-Identifier: MIT
+#
import os
import unittest
@@ -42,7 +44,7 @@
cases_path = self.cases_path
invalid_path = os.path.join(cases_path, 'loader', 'invalid')
self.cases_path = [self.cases_path, invalid_path]
- expect = 'Duplicated oeid module found in'
+ expect = 'Duplicated oetag module found in'
msg = 'Expected ImportError exception for having duplicated module'
try:
# Must throw ImportEror because duplicated module
@@ -55,17 +57,16 @@
self.cases_path = cases_path
def test_filter_modules(self):
- expected_modules = {'oeid', 'oetag'}
+ expected_modules = {'oetag'}
tc = self._testLoader(modules=expected_modules)
modules = getSuiteModules(tc.suites)
msg = 'Expected just %s modules' % ', '.join(expected_modules)
self.assertEqual(modules, expected_modules, msg=msg)
def test_filter_cases(self):
- modules = ['oeid', 'oetag', 'data']
+ modules = ['oetag', 'data']
expected_cases = {'data.DataTest.testDataOk',
- 'oetag.TagTest.testTagGood',
- 'oeid.IDTest.testIdGood'}
+ 'oetag.TagTest.testTagGood'}
tc = self._testLoader(modules=modules, tests=expected_cases)
cases = set(getSuiteCasesIDs(tc.suites))
msg = 'Expected just %s cases' % ', '.join(expected_cases)
@@ -74,7 +75,7 @@
def test_import_from_paths(self):
cases_path = self.cases_path
cases2_path = os.path.join(cases_path, 'loader', 'valid')
- expected_modules = {'oeid', 'another'}
+ expected_modules = {'another'}
self.cases_path = [self.cases_path, cases2_path]
tc = self._testLoader(modules=expected_modules)
modules = getSuiteModules(tc.suites)
diff --git a/poky/meta/lib/oeqa/core/tests/test_runner.py b/poky/meta/lib/oeqa/core/tests/test_runner.py
index a3f3861..205464c 100755
--- a/poky/meta/lib/oeqa/core/tests/test_runner.py
+++ b/poky/meta/lib/oeqa/core/tests/test_runner.py
@@ -1,7 +1,9 @@
#!/usr/bin/env python3
-
+#
# Copyright (C) 2016 Intel Corporation
-# Released under the MIT license (see COPYING.MIT)
+#
+# SPDX-License-Identifier: MIT
+#
import unittest
import logging
diff --git a/poky/meta/lib/oeqa/core/utils/concurrencytest.py b/poky/meta/lib/oeqa/core/utils/concurrencytest.py
index e050818..6bf7718 100644
--- a/poky/meta/lib/oeqa/core/utils/concurrencytest.py
+++ b/poky/meta/lib/oeqa/core/utils/concurrencytest.py
@@ -1,5 +1,7 @@
#!/usr/bin/env python3
#
+# SPDX-License-Identifier: GPL-2.0-or-later
+#
# Modified for use in OE by Richard Purdie, 2018
#
# Modified by: Corey Goldberg, 2013
@@ -19,6 +21,7 @@
import threading
import time
import io
+import subunit
from queue import Queue
from itertools import cycle
@@ -51,10 +54,11 @@
def _add_result_with_semaphore(self, method, test, *args, **kwargs):
self.semaphore.acquire()
try:
- self.result.starttime[test.id()] = self._test_start.timestamp()
- self.result.threadprogress[self.threadnum].append(test.id())
- totalprogress = sum(len(x) for x in self.result.threadprogress.values())
- self.result.progressinfo[test.id()] = "%s: %s/%s %s/%s (%ss) (%s)" % (
+ if self._test_start:
+ self.result.starttime[test.id()] = self._test_start.timestamp()
+ self.result.threadprogress[self.threadnum].append(test.id())
+ totalprogress = sum(len(x) for x in self.result.threadprogress.values())
+ self.result.progressinfo[test.id()] = "%s: %s/%s %s/%s (%ss) (%s)" % (
self.threadnum,
len(self.result.threadprogress[self.threadnum]),
self.totalinprocess,
@@ -67,6 +71,23 @@
super(BBThreadsafeForwardingResult, self)._add_result_with_semaphore(method, test, *args, **kwargs)
#
+# We have to patch subunit since it doesn't understand how to handle addError
+# outside of a running test case. This can happen if classSetUp() fails
+# for a class of tests. This unfortunately has horrible internal knowledge.
+#
+def outSideTestaddError(self, offset, line):
+ """An 'error:' directive has been read."""
+ test_name = line[offset:-1].decode('utf8')
+ self.parser._current_test = subunit.RemotedTestCase(test_name)
+ self.parser.current_test_description = test_name
+ self.parser._state = self.parser._reading_error_details
+ self.parser._reading_error_details.set_simple()
+ self.parser.subunitLineReceived(line)
+
+subunit._OutSideTest.addError = outSideTestaddError
+
+
+#
# A dummy structure to add to io.StringIO so that the .buffer object
# is available and accepts writes. This allows unittest with buffer=True
# to interact ok with subunit which wants to access sys.stdout.buffer.
diff --git a/poky/meta/lib/oeqa/core/utils/misc.py b/poky/meta/lib/oeqa/core/utils/misc.py
index 0b223b5..e1a5958 100644
--- a/poky/meta/lib/oeqa/core/utils/misc.py
+++ b/poky/meta/lib/oeqa/core/utils/misc.py
@@ -1,5 +1,8 @@
+#
# Copyright (C) 2016 Intel Corporation
-# Released under the MIT license (see COPYING.MIT)
+#
+# SPDX-License-Identifier: MIT
+#
def toList(obj, obj_type, obj_name="Object"):
if isinstance(obj, obj_type):
diff --git a/poky/meta/lib/oeqa/core/utils/path.py b/poky/meta/lib/oeqa/core/utils/path.py
index a21caad..c086dcb 100644
--- a/poky/meta/lib/oeqa/core/utils/path.py
+++ b/poky/meta/lib/oeqa/core/utils/path.py
@@ -1,5 +1,8 @@
+#
# Copyright (C) 2016 Intel Corporation
-# Released under the MIT license (see COPYING.MIT)
+#
+# SPDX-License-Identifier: MIT
+#
import os
import sys
diff --git a/poky/meta/lib/oeqa/core/utils/test.py b/poky/meta/lib/oeqa/core/utils/test.py
index 88d5d13..d38cab8 100644
--- a/poky/meta/lib/oeqa/core/utils/test.py
+++ b/poky/meta/lib/oeqa/core/utils/test.py
@@ -1,5 +1,8 @@
+#
# Copyright (C) 2016 Intel Corporation
-# Released under the MIT license (see COPYING.MIT)
+#
+# SPDX-License-Identifier: MIT
+#
import os
import inspect
diff --git a/poky/meta/lib/oeqa/manual/compliance-test.json b/poky/meta/lib/oeqa/manual/compliance-test.json
index 982f0b4..8c13b68 100644
--- a/poky/meta/lib/oeqa/manual/compliance-test.json
+++ b/poky/meta/lib/oeqa/manual/compliance-test.json
@@ -1,94 +1,6 @@
[
{
"test": {
- "@alias": "compliance-test.compliance-test.LTP_subset_test_suite",
- "author": [
- {
- "email": "corneliux.stoicescu@intel.com",
- "name": "corneliux.stoicescu@intel.com"
- }
- ],
- "execution": {
- "1": {
- "action": "For real hardware, run following component, \nsyscalls \nfs \nfsx \ndio \nio \nmm \nipc \nsched \nmath \nnptl \npty \nadmin_tools \ntimers \ncommands \n\nFor QEMU, run following component \nsyscalls \nmm \nipc \nsched \nmath \nnptl \npty \nadmin_tools \ncommands \n\nRun Instructions: \nLTP download: http://sourceforge.net/projects/ltp/files/LTP%20Source/ltp-20120401/ltp-full-20120401.bz2/download \n\n(link is outdated, always use the last version released or the one found in the image) \n\n\n\nbuild steps: refer to http://ltp.sourceforge.net \n\nRun steps:",
- "expected_results": ""
- },
- "2": {
- "action": "Build LTP with toolchain or in sdk image. Or use a sato-sdk image which has LTP already included in /opt/ltp",
- "expected_results": ""
- },
- "3": {
- "action": "For QEMU, create the qemu target with \"-m 512\", which makes some memory stress cases pass. For some issues, we could only set 128M for qemuarm and 256M for qemumips.",
- "expected_results": ""
- },
- "4": {
- "action": "Copy LTP folder into target, for example, /opt/ltp if you have built it yourself. Modify the default scenario file \"scenario_groups/default\", remove test suites not to be tested",
- "expected_results": ""
- },
- "5": {
- "action": "Comment runtests/sched: hackbench, which is not suitable to run in emulators. Reminder (comment it also for Sugarbay Devices).",
- "expected_results": ""
- },
- "6": {
- "action": "Comment oom01, oom02, oom03, oom04 in runtest/mm, which consume lots of memory",
- "expected_results": ""
- },
- "7": {
- "action": "From /opt/ltp run: ./runltp -p -l result-M2-20101218.log -C result-M2-20101218.fail -d /opt/ltp/tmp &> result-M2-20101218.fulllog \n\n",
- "expected_results": "Check the result on wiki, https://wiki.yoctoproject.org/wiki/LTP_result, there should be no regression failure met."
- }
- },
- "summary": "LTP_subset_test_suite"
- }
- },
- {
- "test": {
- "@alias": "compliance-test.compliance-test.POSIX_subset_test_suite",
- "author": [
- {
- "email": "corneliux.stoicescu@intel.com",
- "name": "corneliux.stoicescu@intel.com"
- }
- ],
- "execution": {
- "1": {
- "action": "In a sato-sdk image go to /opt/ltp or get latest LTP sourcecode, download location is http://sourceforge.net/projects/ltp/files/LTP%20Source/ and install it.",
- "expected_results": ""
- },
- "2": {
- "action": "Go into the folder of LTP, and posix_testsuite is under testcases/open_posix_testsuite/",
- "expected_results": ""
- },
- "3": {
- "action": "Run connmand: make generate-makefiles",
- "expected_results": ""
- },
- "4": {
- "action": "Run connmand: make conformance-all",
- "expected_results": ""
- },
- "5": {
- "action": "Run connmand: make conformance-test (this step may show errors, ignore them)",
- "expected_results": ""
- },
- "6": {
- "action": "Run connmand: make tools-all",
- "expected_results": ""
- },
- "7": {
- "action": "Run connmand: sh posix.sh > posix.log, posix.sh as below: \n \n#!/bin/sh \n./bin/run-posix-option-group-test.sh AIO \n./bin/run-posix-option-group-test.sh MEM \n./bin/run-posix-option-group-test.sh MSG \n./bin/run-posix-option-group-test.sh SEM \n./bin/run-posix-option-group-test.sh SIG \n./bin/run-posix-option-group-test.sh THR \n./bin/run-posix-option-group-test.sh TMR \n./bin/run-posix-option-group-test.sh TPS \n \n",
- "expected_results": ""
- },
- "8": {
- "action": "Check the posix.log after testing is finished",
- "expected_results": "Compare the test result on wiki, https://wiki.yoctoproject.org/wiki/Posix_result, there should be no more regression failures met."
- }
- },
- "summary": "POSIX_subset_test_suite"
- }
- },
- {
- "test": {
"@alias": "compliance-test.compliance-test.LSB_subset_test_suite",
"author": [
{
@@ -191,4 +103,4 @@
"summary": "stress_test_-_-ltp_-Beaglebone"
}
}
-]
\ No newline at end of file
+]
diff --git a/poky/meta/lib/oeqa/manual/oe-core.json b/poky/meta/lib/oeqa/manual/oe-core.json
index d893d84..3ee0aa9 100644
--- a/poky/meta/lib/oeqa/manual/oe-core.json
+++ b/poky/meta/lib/oeqa/manual/oe-core.json
@@ -1,32 +1,6 @@
[
{
"test": {
- "@alias": "oe-core.scripts.Use_scripts/pybootchartgui/pybootchartgui.py_to_generate_build_profiles",
- "author": [
- {
- "email": "alexandru.c.georgescu@intel.com",
- "name": "alexandru.c.georgescu@intel.com"
- }
- ],
- "execution": {
- "1": {
- "action": "Run a build for a recipe (e.g. core-image-minimal)",
- "expected_results": ""
- },
- "2": {
- "action": "Run the profiling script, ../scripts/pybootchartgui/pybootchartgui.py tmp/buildstats/ \n\n",
- "expected_results": ""
- },
- "3": {
- "action": "Verify the results ",
- "expected_results": "The scripts generates svg files with the profiling results . "
- }
- },
- "summary": "Use_scripts/pybootchartgui/pybootchartgui.py_to_generate_build_profiles"
- }
- },
- {
- "test": {
"@alias": "oe-core.scripts.Crosstap_script_check",
"author": [
{
diff --git a/poky/meta/lib/oeqa/oetest.py b/poky/meta/lib/oeqa/oetest.py
index f0423af..9c84466 100644
--- a/poky/meta/lib/oeqa/oetest.py
+++ b/poky/meta/lib/oeqa/oetest.py
@@ -1,6 +1,8 @@
+#
# Copyright (C) 2013 Intel Corporation
#
-# Released under the MIT license (see COPYING.MIT)
+# SPDX-License-Identifier: MIT
+#
# Main unittest module used by testimage.bbclass
# This provides the oeRuntimeTest base class which is inherited by all tests in meta/lib/oeqa/runtime.
diff --git a/poky/meta/lib/oeqa/runexported.py b/poky/meta/lib/oeqa/runexported.py
index 9cfea0f..7e37213 100755
--- a/poky/meta/lib/oeqa/runexported.py
+++ b/poky/meta/lib/oeqa/runexported.py
@@ -1,9 +1,9 @@
#!/usr/bin/env python3
-
-
+#
# Copyright (C) 2013 Intel Corporation
#
-# Released under the MIT license (see COPYING.MIT)
+# SPDX-License-Identifier: MIT
+#
# This script should be used outside of the build system to run image tests.
# It needs a json file as input as exported by the build.
diff --git a/poky/meta/lib/oeqa/runtime/case.py b/poky/meta/lib/oeqa/runtime/case.py
index 2f190ac..f036982 100644
--- a/poky/meta/lib/oeqa/runtime/case.py
+++ b/poky/meta/lib/oeqa/runtime/case.py
@@ -1,5 +1,8 @@
+#
# Copyright (C) 2016 Intel Corporation
-# Released under the MIT license (see COPYING.MIT)
+#
+# SPDX-License-Identifier: MIT
+#
from oeqa.core.case import OETestCase
from oeqa.utils.package_manager import install_package, uninstall_package
diff --git a/poky/meta/lib/oeqa/runtime/cases/_qemutiny.py b/poky/meta/lib/oeqa/runtime/cases/_qemutiny.py
index 7b5b481..6886e36 100644
--- a/poky/meta/lib/oeqa/runtime/cases/_qemutiny.py
+++ b/poky/meta/lib/oeqa/runtime/cases/_qemutiny.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
from oeqa.runtime.case import OERuntimeTestCase
class QemuTinyTest(OERuntimeTestCase):
diff --git a/poky/meta/lib/oeqa/runtime/cases/apt.py b/poky/meta/lib/oeqa/runtime/cases/apt.py
index 793143f..74a940d 100644
--- a/poky/meta/lib/oeqa/runtime/cases/apt.py
+++ b/poky/meta/lib/oeqa/runtime/cases/apt.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
import os
from oeqa.utils.httpserver import HTTPService
from oeqa.runtime.case import OERuntimeTestCase
diff --git a/poky/meta/lib/oeqa/runtime/cases/buildcpio.py b/poky/meta/lib/oeqa/runtime/cases/buildcpio.py
index a61d1e0..f4e871e 100644
--- a/poky/meta/lib/oeqa/runtime/cases/buildcpio.py
+++ b/poky/meta/lib/oeqa/runtime/cases/buildcpio.py
@@ -1,6 +1,9 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
from oeqa.runtime.case import OERuntimeTestCase
from oeqa.core.decorator.depends import OETestDepends
-from oeqa.core.decorator.oeid import OETestID
from oeqa.runtime.decorator.package import OEHasPackage
from oeqa.runtime.utils.targetbuildproject import TargetBuildProject
@@ -18,7 +21,6 @@
def tearDownClass(cls):
cls.project.clean()
- @OETestID(205)
@OETestDepends(['ssh.SSHTest.test_ssh'])
@OEHasPackage(['gcc'])
@OEHasPackage(['make'])
diff --git a/poky/meta/lib/oeqa/runtime/cases/buildgalculator.py b/poky/meta/lib/oeqa/runtime/cases/buildgalculator.py
index a0a0032..6dd1fae 100644
--- a/poky/meta/lib/oeqa/runtime/cases/buildgalculator.py
+++ b/poky/meta/lib/oeqa/runtime/cases/buildgalculator.py
@@ -1,6 +1,9 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
from oeqa.runtime.case import OERuntimeTestCase
from oeqa.core.decorator.depends import OETestDepends
-from oeqa.core.decorator.oeid import OETestID
from oeqa.runtime.decorator.package import OEHasPackage
from oeqa.runtime.utils.targetbuildproject import TargetBuildProject
@@ -18,7 +21,6 @@
def tearDownClass(cls):
cls.project.clean()
- @OETestID(1526)
@OETestDepends(['ssh.SSHTest.test_ssh'])
@OEHasPackage(['gcc'])
@OEHasPackage(['make'])
diff --git a/poky/meta/lib/oeqa/runtime/cases/buildlzip.py b/poky/meta/lib/oeqa/runtime/cases/buildlzip.py
index 5b455a0..bc70b41 100644
--- a/poky/meta/lib/oeqa/runtime/cases/buildlzip.py
+++ b/poky/meta/lib/oeqa/runtime/cases/buildlzip.py
@@ -1,6 +1,9 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
from oeqa.runtime.case import OERuntimeTestCase
from oeqa.core.decorator.depends import OETestDepends
-from oeqa.core.decorator.oeid import OETestID
from oeqa.runtime.decorator.package import OEHasPackage
from oeqa.runtime.utils.targetbuildproject import TargetBuildProject
@@ -19,7 +22,6 @@
def tearDownClass(cls):
cls.project.clean()
- @OETestID(206)
@OETestDepends(['ssh.SSHTest.test_ssh'])
@OEHasPackage(['gcc'])
@OEHasPackage(['make'])
diff --git a/poky/meta/lib/oeqa/runtime/cases/connman.py b/poky/meta/lib/oeqa/runtime/cases/connman.py
index 12456b4..f0d15fa 100644
--- a/poky/meta/lib/oeqa/runtime/cases/connman.py
+++ b/poky/meta/lib/oeqa/runtime/cases/connman.py
@@ -1,6 +1,9 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
from oeqa.runtime.case import OERuntimeTestCase
from oeqa.core.decorator.depends import OETestDepends
-from oeqa.core.decorator.oeid import OETestID
from oeqa.runtime.decorator.package import OEHasPackage
class ConnmanTest(OERuntimeTestCase):
@@ -12,7 +15,6 @@
else:
return "Unable to get status or logs for %s" % service
- @OETestID(961)
@OETestDepends(['ssh.SSHTest.test_ssh'])
@OEHasPackage(["connman"])
def test_connmand_help(self):
@@ -20,7 +22,6 @@
msg = 'Failed to get connman help. Output: %s' % output
self.assertEqual(status, 0, msg=msg)
- @OETestID(221)
@OETestDepends(['connman.ConnmanTest.test_connmand_help'])
def test_connmand_running(self):
cmd = '%s | grep [c]onnmand' % self.tc.target_cmds['ps']
diff --git a/poky/meta/lib/oeqa/runtime/cases/date.py b/poky/meta/lib/oeqa/runtime/cases/date.py
index 0887b83..7750a72 100644
--- a/poky/meta/lib/oeqa/runtime/cases/date.py
+++ b/poky/meta/lib/oeqa/runtime/cases/date.py
@@ -1,8 +1,11 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
import re
from oeqa.runtime.case import OERuntimeTestCase
from oeqa.core.decorator.depends import OETestDepends
-from oeqa.core.decorator.oeid import OETestID
from oeqa.runtime.decorator.package import OEHasPackage
class DateTest(OERuntimeTestCase):
@@ -17,7 +20,6 @@
self.logger.debug('Starting systemd-timesyncd daemon')
self.target.run('systemctl start systemd-timesyncd')
- @OETestID(211)
@OETestDepends(['ssh.SSHTest.test_ssh'])
@OEHasPackage(['coreutils', 'busybox'])
def test_date(self):
diff --git a/poky/meta/lib/oeqa/runtime/cases/df.py b/poky/meta/lib/oeqa/runtime/cases/df.py
index e0b6bb8..d8d79f3 100644
--- a/poky/meta/lib/oeqa/runtime/cases/df.py
+++ b/poky/meta/lib/oeqa/runtime/cases/df.py
@@ -1,11 +1,13 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
from oeqa.runtime.case import OERuntimeTestCase
from oeqa.core.decorator.depends import OETestDepends
-from oeqa.core.decorator.oeid import OETestID
from oeqa.runtime.decorator.package import OEHasPackage
class DfTest(OERuntimeTestCase):
- @OETestID(234)
@OETestDepends(['ssh.SSHTest.test_ssh'])
@OEHasPackage(['coreutils', 'busybox'])
def test_df(self):
diff --git a/poky/meta/lib/oeqa/runtime/cases/dnf.py b/poky/meta/lib/oeqa/runtime/cases/dnf.py
index c1ed39d..629b9af 100644
--- a/poky/meta/lib/oeqa/runtime/cases/dnf.py
+++ b/poky/meta/lib/oeqa/runtime/cases/dnf.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
import os
import re
import subprocess
@@ -5,7 +9,6 @@
from oeqa.runtime.case import OERuntimeTestCase
from oeqa.core.decorator.depends import OETestDepends
-from oeqa.core.decorator.oeid import OETestID
from oeqa.core.decorator.data import skipIfNotDataVar, skipIfNotFeature
from oeqa.runtime.decorator.package import OEHasPackage
@@ -26,27 +29,22 @@
'RPM is not the primary package manager')
@OEHasPackage(['dnf'])
@OETestDepends(['ssh.SSHTest.test_ssh'])
- @OETestID(1735)
def test_dnf_help(self):
self.dnf('--help')
@OETestDepends(['dnf.DnfBasicTest.test_dnf_help'])
- @OETestID(1739)
def test_dnf_version(self):
self.dnf('--version')
@OETestDepends(['dnf.DnfBasicTest.test_dnf_help'])
- @OETestID(1737)
def test_dnf_info(self):
self.dnf('info dnf')
@OETestDepends(['dnf.DnfBasicTest.test_dnf_help'])
- @OETestID(1738)
def test_dnf_search(self):
self.dnf('search dnf')
@OETestDepends(['dnf.DnfBasicTest.test_dnf_help'])
- @OETestID(1736)
def test_dnf_history(self):
self.dnf('history')
@@ -71,7 +69,6 @@
return output
@OETestDepends(['dnf.DnfBasicTest.test_dnf_help'])
- @OETestID(1744)
def test_dnf_makecache(self):
self.dnf_with_repo('makecache')
@@ -82,12 +79,10 @@
# self.dnf_with_repo('repolist')
@OETestDepends(['dnf.DnfRepoTest.test_dnf_makecache'])
- @OETestID(1746)
def test_dnf_repoinfo(self):
self.dnf_with_repo('repoinfo')
@OETestDepends(['dnf.DnfRepoTest.test_dnf_makecache'])
- @OETestID(1740)
def test_dnf_install(self):
output = self.dnf_with_repo('list run-postinsts-dev')
if 'Installed Packages' in output:
@@ -95,13 +90,11 @@
self.dnf_with_repo('install -y run-postinsts-dev')
@OETestDepends(['dnf.DnfRepoTest.test_dnf_install'])
- @OETestID(1741)
def test_dnf_install_dependency(self):
self.dnf_with_repo('remove -y run-postinsts')
self.dnf_with_repo('install -y run-postinsts-dev')
@OETestDepends(['dnf.DnfRepoTest.test_dnf_install_dependency'])
- @OETestID(1742)
def test_dnf_install_from_disk(self):
self.dnf_with_repo('remove -y run-postinsts-dev')
self.dnf_with_repo('install -y --downloadonly run-postinsts-dev')
@@ -110,7 +103,6 @@
self.dnf_with_repo('install -y %s' % output)
@OETestDepends(['dnf.DnfRepoTest.test_dnf_install_from_disk'])
- @OETestID(1743)
def test_dnf_install_from_http(self):
output = subprocess.check_output('%s %s -name run-postinsts-dev*' % (bb.utils.which(os.getenv('PATH'), "find"),
os.path.join(self.tc.td['WORKDIR'], 'oe-testimage-repo')), shell=True).decode("utf-8")
@@ -120,12 +112,10 @@
self.dnf_with_repo('install -y %s' % url)
@OETestDepends(['dnf.DnfRepoTest.test_dnf_install'])
- @OETestID(1745)
def test_dnf_reinstall(self):
self.dnf_with_repo('reinstall -y run-postinsts-dev')
@OETestDepends(['dnf.DnfRepoTest.test_dnf_makecache'])
- @OETestID(1771)
def test_dnf_installroot(self):
rootpath = '/home/root/chroot/test'
#Copy necessary files to avoid errors with not yet installed tools on
@@ -151,7 +141,6 @@
self.assertEqual(0, status, output)
@OETestDepends(['dnf.DnfRepoTest.test_dnf_makecache'])
- @OETestID(1772)
def test_dnf_exclude(self):
excludepkg = 'curl-dev'
self.dnf_with_repo('install -y curl*')
diff --git a/poky/meta/lib/oeqa/runtime/cases/gcc.py b/poky/meta/lib/oeqa/runtime/cases/gcc.py
index 8265c59..1b6e431 100644
--- a/poky/meta/lib/oeqa/runtime/cases/gcc.py
+++ b/poky/meta/lib/oeqa/runtime/cases/gcc.py
@@ -1,8 +1,11 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
import os
from oeqa.runtime.case import OERuntimeTestCase
from oeqa.core.decorator.depends import OETestDepends
-from oeqa.core.decorator.oeid import OETestID
from oeqa.runtime.decorator.package import OEHasPackage
class GccCompileTest(OERuntimeTestCase):
@@ -24,7 +27,6 @@
files = '/tmp/test.c /tmp/test.o /tmp/test /tmp/testmakefile'
cls.tc.target.run('rm %s' % files)
- @OETestID(203)
@OETestDepends(['ssh.SSHTest.test_ssh'])
@OEHasPackage(['gcc'])
def test_gcc_compile(self):
@@ -36,7 +38,6 @@
msg = 'running compiled file failed, output: %s' % output
self.assertEqual(status, 0, msg=msg)
- @OETestID(200)
@OETestDepends(['ssh.SSHTest.test_ssh'])
@OEHasPackage(['g++'])
def test_gpp_compile(self):
@@ -48,7 +49,6 @@
msg = 'running compiled file failed, output: %s' % output
self.assertEqual(status, 0, msg=msg)
- @OETestID(1142)
@OETestDepends(['ssh.SSHTest.test_ssh'])
@OEHasPackage(['g++'])
def test_gpp2_compile(self):
@@ -60,7 +60,6 @@
msg = 'running compiled file failed, output: %s' % output
self.assertEqual(status, 0, msg=msg)
- @OETestID(204)
@OETestDepends(['ssh.SSHTest.test_ssh'])
@OEHasPackage(['gcc'])
@OEHasPackage(['make'])
diff --git a/poky/meta/lib/oeqa/runtime/cases/gi.py b/poky/meta/lib/oeqa/runtime/cases/gi.py
index 7e16651..42bd100 100644
--- a/poky/meta/lib/oeqa/runtime/cases/gi.py
+++ b/poky/meta/lib/oeqa/runtime/cases/gi.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
import os
from oeqa.runtime.case import OERuntimeTestCase
diff --git a/poky/meta/lib/oeqa/runtime/cases/gstreamer.py b/poky/meta/lib/oeqa/runtime/cases/gstreamer.py
index 128630e..f735f82 100644
--- a/poky/meta/lib/oeqa/runtime/cases/gstreamer.py
+++ b/poky/meta/lib/oeqa/runtime/cases/gstreamer.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
from oeqa.runtime.case import OERuntimeTestCase
from oeqa.runtime.decorator.package import OEHasPackage
diff --git a/poky/meta/lib/oeqa/runtime/cases/kernelmodule.py b/poky/meta/lib/oeqa/runtime/cases/kernelmodule.py
index 27a2c35..47fd2f8 100644
--- a/poky/meta/lib/oeqa/runtime/cases/kernelmodule.py
+++ b/poky/meta/lib/oeqa/runtime/cases/kernelmodule.py
@@ -1,8 +1,11 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
import os
from oeqa.runtime.case import OERuntimeTestCase
from oeqa.core.decorator.depends import OETestDepends
-from oeqa.core.decorator.oeid import OETestID
from oeqa.core.decorator.data import skipIfNotFeature
from oeqa.runtime.decorator.package import OEHasPackage
@@ -23,7 +26,6 @@
files = '/tmp/Makefile /tmp/hellomod.c'
cls.tc.target.run('rm %s' % files)
- @OETestID(1541)
@skipIfNotFeature('tools-sdk',
'Test requires tools-sdk to be in IMAGE_FEATURES')
@OETestDepends(['gcc.GccCompileTest.test_gcc_compile'])
diff --git a/poky/meta/lib/oeqa/runtime/cases/ksample.py b/poky/meta/lib/oeqa/runtime/cases/ksample.py
index de2366a..a9a1620 100644
--- a/poky/meta/lib/oeqa/runtime/cases/ksample.py
+++ b/poky/meta/lib/oeqa/runtime/cases/ksample.py
@@ -1,9 +1,12 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
import os
import time
from oeqa.runtime.case import OERuntimeTestCase
from oeqa.core.decorator.depends import OETestDepends
-from oeqa.core.decorator.oeid import OETestID
from oeqa.core.decorator.data import skipIfNotFeature
# need some kernel fragments
diff --git a/poky/meta/lib/oeqa/runtime/cases/ldd.py b/poky/meta/lib/oeqa/runtime/cases/ldd.py
index 5bde184..9c2caa8 100644
--- a/poky/meta/lib/oeqa/runtime/cases/ldd.py
+++ b/poky/meta/lib/oeqa/runtime/cases/ldd.py
@@ -1,12 +1,14 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
from oeqa.runtime.case import OERuntimeTestCase
from oeqa.core.decorator.depends import OETestDepends
-from oeqa.core.decorator.oeid import OETestID
from oeqa.core.decorator.data import skipIfNotFeature
from oeqa.runtime.decorator.package import OEHasPackage
class LddTest(OERuntimeTestCase):
- @OETestID(962)
@OEHasPackage(["ldd"])
@OETestDepends(['ssh.SSHTest.test_ssh'])
def test_ldd(self):
diff --git a/poky/meta/lib/oeqa/runtime/cases/logrotate.py b/poky/meta/lib/oeqa/runtime/cases/logrotate.py
index d266644..8358793 100644
--- a/poky/meta/lib/oeqa/runtime/cases/logrotate.py
+++ b/poky/meta/lib/oeqa/runtime/cases/logrotate.py
@@ -1,9 +1,12 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
# This test should cover https://bugzilla.yoctoproject.org/tr_show_case.cgi?case_id=289 testcase
# Note that the image under test must have logrotate installed
from oeqa.runtime.case import OERuntimeTestCase
from oeqa.core.decorator.depends import OETestDepends
-from oeqa.core.decorator.oeid import OETestID
from oeqa.runtime.decorator.package import OEHasPackage
class LogrotateTest(OERuntimeTestCase):
@@ -16,7 +19,6 @@
def tearDownClass(cls):
cls.tc.target.run('mv -f $HOME/wtmp.oeqabak /etc/logrotate.d/wtmp && rm -rf $HOME/logrotate_dir')
- @OETestID(1544)
@OETestDepends(['ssh.SSHTest.test_ssh'])
@OEHasPackage(['logrotate'])
def test_1_logrotate_setup(self):
@@ -31,7 +33,6 @@
' %s and %s' % (status, output))
self.assertEqual(status, 0, msg = msg)
- @OETestID(1542)
@OETestDepends(['logrotate.LogrotateTest.test_1_logrotate_setup'])
def test_2_logrotate(self):
status, output = self.target.run('logrotate -f /etc/logrotate.conf')
diff --git a/poky/meta/lib/oeqa/runtime/cases/ltp.py b/poky/meta/lib/oeqa/runtime/cases/ltp.py
new file mode 100644
index 0000000..3054864
--- /dev/null
+++ b/poky/meta/lib/oeqa/runtime/cases/ltp.py
@@ -0,0 +1,118 @@
+# LTP runtime
+#
+# Copyright (c) 2019 MontaVista Software, LLC
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
+
+import time
+import datetime
+import pprint
+
+from oeqa.runtime.case import OERuntimeTestCase
+from oeqa.core.decorator.depends import OETestDepends
+from oeqa.runtime.decorator.package import OEHasPackage
+from oeqa.utils.logparser import LtpParser
+
+class LtpTestBase(OERuntimeTestCase):
+
+ @classmethod
+ def setUpClass(cls):
+ cls.ltp_startup()
+
+ @classmethod
+ def tearDownClass(cls):
+ cls.ltp_finishup()
+
+ @classmethod
+ def ltp_startup(cls):
+ cls.sections = {}
+ cls.failmsg = ""
+ test_log_dir = os.path.join(cls.td.get('WORKDIR', ''), 'testimage')
+ timestamp = datetime.datetime.now().strftime('%Y%m%d%H%M%S')
+
+ cls.ltptest_log_dir_link = os.path.join(test_log_dir, 'ltp_log')
+ cls.ltptest_log_dir = '%s.%s' % (cls.ltptest_log_dir_link, timestamp)
+ os.makedirs(cls.ltptest_log_dir)
+
+ cls.tc.target.run("mkdir -p /opt/ltp/results")
+
+ if not hasattr(cls.tc, "extraresults"):
+ cls.tc.extraresults = {}
+ cls.extras = cls.tc.extraresults
+ cls.extras['ltpresult.rawlogs'] = {'log': ""}
+
+
+ @classmethod
+ def ltp_finishup(cls):
+ cls.extras['ltpresult.sections'] = cls.sections
+
+ # update symlink to ltp_log
+ if os.path.exists(cls.ltptest_log_dir_link):
+ os.remove(cls.ltptest_log_dir_link)
+ os.symlink(os.path.basename(cls.ltptest_log_dir), cls.ltptest_log_dir_link)
+
+ if cls.failmsg:
+ cls.fail(cls.failmsg)
+
+class LtpTest(LtpTestBase):
+
+ ltp_groups = ["math", "syscalls", "dio", "io", "mm", "ipc", "sched", "nptl", "pty", "containers", "controllers", "filecaps", "cap_bounds", "fcntl-locktests", "connectors","timers", "commands", "net.ipv6_lib", "input","fs_perms_simple"]
+
+ ltp_fs = ["fs", "fsx", "fs_bind", "fs_ext4"]
+ # skip kernel cpuhotplug
+ ltp_kernel = ["power_management_tests", "hyperthreading ", "kernel_misc", "hugetlb"]
+ ltp_groups += ltp_fs
+
+ def runltp(self, ltp_group):
+ cmd = '/opt/ltp/runltp -f %s -p -q -r /opt/ltp -l /opt/ltp/results/%s -I 1 -d /opt/ltp' % (ltp_group, ltp_group)
+ starttime = time.time()
+ (status, output) = self.target.run(cmd)
+ endtime = time.time()
+
+ with open(os.path.join(self.ltptest_log_dir, "%s-raw.log" % ltp_group), 'w') as f:
+ f.write(output)
+
+ self.extras['ltpresult.rawlogs']['log'] = self.extras['ltpresult.rawlogs']['log'] + output
+
+ # copy nice log from DUT
+ dst = os.path.join(self.ltptest_log_dir, "%s" % ltp_group )
+ remote_src = "/opt/ltp/results/%s" % ltp_group
+ (status, output) = self.target.copyFrom(remote_src, dst)
+ msg = 'File could not be copied. Output: %s' % output
+ self.assertEqual(status, 0, msg=msg)
+
+ parser = LtpParser()
+ results, sections = parser.parse(dst)
+
+ runtime = int(endtime-starttime)
+ sections['duration'] = runtime
+ self.sections[ltp_group] = sections
+
+ failed_tests = {}
+ for test in results:
+ result = results[test]
+ testname = ("ltpresult." + ltp_group + "." + test)
+ self.extras[testname] = {'status': result}
+ if result == 'FAILED':
+ failed_tests[ltp_group] = test
+
+ if failed_tests:
+ self.failmsg = self.failmsg + "Failed ptests:\n%s" % pprint.pformat(failed_tests)
+
+ # LTP runtime tests
+ @OETestDepends(['ssh.SSHTest.test_ssh'])
+ @OEHasPackage(["ltp"])
+ def test_ltp_help(self):
+ (status, output) = self.target.run('/opt/ltp/runltp --help')
+ msg = 'Failed to get ltp help. Output: %s' % output
+ self.assertEqual(status, 0, msg=msg)
+
+ @OETestDepends(['ltp.LtpTest.test_ltp_help'])
+ def test_ltp_groups(self):
+ for ltp_group in self.ltp_groups:
+ self.runltp(ltp_group)
+
+ @OETestDepends(['ltp.LtpTest.test_ltp_groups'])
+ def test_ltp_runltp_cve(self):
+ self.runltp("cve")
diff --git a/poky/meta/lib/oeqa/runtime/cases/ltp_compliance.py b/poky/meta/lib/oeqa/runtime/cases/ltp_compliance.py
new file mode 100644
index 0000000..ba47c78
--- /dev/null
+++ b/poky/meta/lib/oeqa/runtime/cases/ltp_compliance.py
@@ -0,0 +1,97 @@
+# LTP compliance runtime
+#
+# Copyright (c) 2019 MontaVista Software, LLC
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
+
+import time
+import datetime
+import pprint
+
+from oeqa.runtime.case import OERuntimeTestCase
+from oeqa.core.decorator.depends import OETestDepends
+from oeqa.runtime.decorator.package import OEHasPackage
+from oeqa.utils.logparser import LtpComplianceParser
+
+class LtpPosixBase(OERuntimeTestCase):
+
+ @classmethod
+ def setUpClass(cls):
+ cls.ltp_startup()
+
+ @classmethod
+ def tearDownClass(cls):
+ cls.ltp_finishup()
+
+ @classmethod
+ def ltp_startup(cls):
+ cls.sections = {}
+ cls.failmsg = ""
+ test_log_dir = os.path.join(cls.td.get('WORKDIR', ''), 'testimage')
+ timestamp = datetime.datetime.now().strftime('%Y%m%d%H%M%S')
+
+ cls.ltptest_log_dir_link = os.path.join(test_log_dir, 'ltpcomp_log')
+ cls.ltptest_log_dir = '%s.%s' % (cls.ltptest_log_dir_link, timestamp)
+ os.makedirs(cls.ltptest_log_dir)
+
+ cls.tc.target.run("mkdir -p /opt/ltp/results")
+
+ if not hasattr(cls.tc, "extraresults"):
+ cls.tc.extraresults = {}
+ cls.extras = cls.tc.extraresults
+ cls.extras['ltpposixresult.rawlogs'] = {'log': ""}
+
+
+ @classmethod
+ def ltp_finishup(cls):
+ cls.extras['ltpposixresult.sections'] = cls.sections
+
+ # update symlink to ltp_log
+ if os.path.exists(cls.ltptest_log_dir_link):
+ os.remove(cls.ltptest_log_dir_link)
+
+ os.symlink(os.path.basename(cls.ltptest_log_dir), cls.ltptest_log_dir_link)
+
+ if cls.failmsg:
+ cls.fail(cls.failmsg)
+
+class LtpPosixTest(LtpPosixBase):
+ posix_groups = ["AIO", "MEM", "MSG", "SEM", "SIG", "THR", "TMR", "TPS"]
+
+ def runltp(self, posix_group):
+ cmd = "/opt/ltp/bin/run-posix-option-group-test.sh %s 2>@1 | tee /opt/ltp/results/%s" % (posix_group, posix_group)
+ starttime = time.time()
+ (status, output) = self.target.run(cmd)
+ endtime = time.time()
+
+ with open(os.path.join(self.ltptest_log_dir, "%s" % posix_group), 'w') as f:
+ f.write(output)
+
+ self.extras['ltpposixresult.rawlogs']['log'] = self.extras['ltpposixresult.rawlogs']['log'] + output
+
+ parser = LtpComplianceParser()
+ results, sections = parser.parse(os.path.join(self.ltptest_log_dir, "%s" % posix_group))
+
+ runtime = int(endtime-starttime)
+ sections['duration'] = runtime
+ self.sections[posix_group] = sections
+
+ failed_tests = {}
+ for test in results:
+ result = results[test]
+ testname = ("ltpposixresult." + posix_group + "." + test)
+ self.extras[testname] = {'status': result}
+ if result == 'FAILED':
+ failed_tests[posix_group] = test
+
+ if failed_tests:
+ self.failmsg = self.failmsg + "Failed ptests:\n%s" % pprint.pformat(failed_tests)
+
+ # LTP Posix compliance runtime tests
+
+ @OETestDepends(['ssh.SSHTest.test_ssh'])
+ @OEHasPackage(["ltp"])
+ def test_posix_groups(self):
+ for posix_group in self.posix_groups:
+ self.runltp(posix_group)
diff --git a/poky/meta/lib/oeqa/runtime/cases/multilib.py b/poky/meta/lib/oeqa/runtime/cases/multilib.py
index 8902038..62e662b 100644
--- a/poky/meta/lib/oeqa/runtime/cases/multilib.py
+++ b/poky/meta/lib/oeqa/runtime/cases/multilib.py
@@ -1,6 +1,9 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
from oeqa.runtime.case import OERuntimeTestCase
from oeqa.core.decorator.depends import OETestDepends
-from oeqa.core.decorator.oeid import OETestID
from oeqa.core.decorator.data import skipIfNotInDataVar
from oeqa.runtime.decorator.package import OEHasPackage
@@ -23,7 +26,6 @@
msg = "%s isn't %s (is %s)" % (binary, arch, theclass)
self.assertEqual(theclass, arch, msg=msg)
- @OETestID(1593)
@skipIfNotInDataVar('MULTILIBS', 'multilib:lib32',
"This isn't a multilib:lib32 image")
@OETestDepends(['ssh.SSHTest.test_ssh'])
@@ -36,7 +38,6 @@
self.archtest("/lib/libc.so.6", "ELF32")
self.archtest("/lib64/libc.so.6", "ELF64")
- @OETestID(279)
@OETestDepends(['multilib.MultilibTest.test_check_multilib_libc'])
@OEHasPackage(['lib32-connman', '!connman'])
def test_file_connman(self):
diff --git a/poky/meta/lib/oeqa/runtime/cases/oe_syslog.py b/poky/meta/lib/oeqa/runtime/cases/oe_syslog.py
index a92a1f2..0f5f9f4 100644
--- a/poky/meta/lib/oeqa/runtime/cases/oe_syslog.py
+++ b/poky/meta/lib/oeqa/runtime/cases/oe_syslog.py
@@ -1,12 +1,14 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
from oeqa.runtime.case import OERuntimeTestCase
from oeqa.core.decorator.depends import OETestDepends
-from oeqa.core.decorator.oeid import OETestID
from oeqa.core.decorator.data import skipIfDataVar
from oeqa.runtime.decorator.package import OEHasPackage
class SyslogTest(OERuntimeTestCase):
- @OETestID(201)
@OETestDepends(['ssh.SSHTest.test_ssh'])
@OEHasPackage(["busybox-syslog", "sysklogd", "rsyslog", "syslog-ng"])
def test_syslog_running(self):
@@ -19,7 +21,6 @@
class SyslogTestConfig(OERuntimeTestCase):
- @OETestID(1149)
@OETestDepends(['oe_syslog.SyslogTest.test_syslog_running'])
def test_syslog_logger(self):
status, output = self.target.run('logger foobar')
@@ -36,7 +37,6 @@
' Output: %s ' % output)
self.assertEqual(status, 0, msg=msg)
- @OETestID(1150)
@OETestDepends(['oe_syslog.SyslogTest.test_syslog_running'])
def test_syslog_restart(self):
if "systemd" != self.tc.td.get("VIRTUAL-RUNTIME_init_manager", ""):
@@ -45,7 +45,6 @@
(_, _) = self.target.run('systemctl restart syslog.service')
- @OETestID(202)
@OETestDepends(['oe_syslog.SyslogTestConfig.test_syslog_logger'])
@OEHasPackage(["busybox-syslog"])
@skipIfDataVar('VIRTUAL-RUNTIME_init_manager', 'systemd',
diff --git a/poky/meta/lib/oeqa/runtime/cases/opkg.py b/poky/meta/lib/oeqa/runtime/cases/opkg.py
index 693f5d6..bb8b6d9 100644
--- a/poky/meta/lib/oeqa/runtime/cases/opkg.py
+++ b/poky/meta/lib/oeqa/runtime/cases/opkg.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
import os
from oeqa.utils.httpserver import HTTPService
from oeqa.runtime.case import OERuntimeTestCase
diff --git a/poky/meta/lib/oeqa/runtime/cases/pam.py b/poky/meta/lib/oeqa/runtime/cases/pam.py
index 3654cdc..271a194 100644
--- a/poky/meta/lib/oeqa/runtime/cases/pam.py
+++ b/poky/meta/lib/oeqa/runtime/cases/pam.py
@@ -1,14 +1,16 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
# This test should cover https://bugzilla.yoctoproject.org/tr_show_case.cgi?case_id=287 testcase
# Note that the image under test must have "pam" in DISTRO_FEATURES
from oeqa.runtime.case import OERuntimeTestCase
from oeqa.core.decorator.depends import OETestDepends
-from oeqa.core.decorator.oeid import OETestID
from oeqa.core.decorator.data import skipIfNotFeature
class PamBasicTest(OERuntimeTestCase):
- @OETestID(1543)
@skipIfNotFeature('pam', 'Test requires pam to be in DISTRO_FEATURES')
@OETestDepends(['ssh.SSHTest.test_ssh'])
def test_pam(self):
diff --git a/poky/meta/lib/oeqa/runtime/cases/parselogs.py b/poky/meta/lib/oeqa/runtime/cases/parselogs.py
index bed4a02..eb2ebb1 100644
--- a/poky/meta/lib/oeqa/runtime/cases/parselogs.py
+++ b/poky/meta/lib/oeqa/runtime/cases/parselogs.py
@@ -1,10 +1,13 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
import os
from subprocess import check_output
from shutil import rmtree
from oeqa.runtime.case import OERuntimeTestCase
from oeqa.core.decorator.depends import OETestDepends
-from oeqa.core.decorator.oeid import OETestID
from oeqa.core.decorator.data import skipIfDataVar
from oeqa.runtime.decorator.package import OEHasPackage
@@ -351,7 +354,6 @@
def write_dmesg(self):
(status, dmesg) = self.target.run('dmesg > /tmp/dmesg_output.log')
- @OETestID(1059)
@OETestDepends(['ssh.SSHTest.test_ssh'])
def test_parselogs(self):
self.write_dmesg()
diff --git a/poky/meta/lib/oeqa/runtime/cases/perl.py b/poky/meta/lib/oeqa/runtime/cases/perl.py
index be3287f..2c6b3b7 100644
--- a/poky/meta/lib/oeqa/runtime/cases/perl.py
+++ b/poky/meta/lib/oeqa/runtime/cases/perl.py
@@ -1,12 +1,14 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
import os
from oeqa.runtime.case import OERuntimeTestCase
from oeqa.core.decorator.depends import OETestDepends
-from oeqa.core.decorator.oeid import OETestID
from oeqa.runtime.decorator.package import OEHasPackage
class PerlTest(OERuntimeTestCase):
- @OETestID(208)
@OETestDepends(['ssh.SSHTest.test_ssh'])
@OEHasPackage(['perl'])
def test_perl_works(self):
diff --git a/poky/meta/lib/oeqa/runtime/cases/ping.py b/poky/meta/lib/oeqa/runtime/cases/ping.py
index 02f580a..f6603f7 100644
--- a/poky/meta/lib/oeqa/runtime/cases/ping.py
+++ b/poky/meta/lib/oeqa/runtime/cases/ping.py
@@ -1,13 +1,15 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
from subprocess import Popen, PIPE
from oeqa.runtime.case import OERuntimeTestCase
-from oeqa.core.decorator.oeid import OETestID
from oeqa.core.decorator.oetimeout import OETimeout
class PingTest(OERuntimeTestCase):
@OETimeout(30)
- @OETestID(964)
def test_ping(self):
output = ''
count = 0
diff --git a/poky/meta/lib/oeqa/runtime/cases/ptest.py b/poky/meta/lib/oeqa/runtime/cases/ptest.py
index 2a28ca5..d8d1e1b 100644
--- a/poky/meta/lib/oeqa/runtime/cases/ptest.py
+++ b/poky/meta/lib/oeqa/runtime/cases/ptest.py
@@ -1,17 +1,19 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
import unittest
import pprint
import datetime
from oeqa.runtime.case import OERuntimeTestCase
from oeqa.core.decorator.depends import OETestDepends
-from oeqa.core.decorator.oeid import OETestID
from oeqa.core.decorator.data import skipIfNotFeature
from oeqa.runtime.decorator.package import OEHasPackage
from oeqa.utils.logparser import PtestParser
class PtestRunnerTest(OERuntimeTestCase):
- @OETestID(1600)
@skipIfNotFeature('ptest', 'Test requires ptest to be in DISTRO_FEATURES')
@OETestDepends(['ssh.SSHTest.test_ssh'])
@OEHasPackage(['ptest-runner'])
diff --git a/poky/meta/lib/oeqa/runtime/cases/python.py b/poky/meta/lib/oeqa/runtime/cases/python.py
index 66ab4d2..ec54f1e 100644
--- a/poky/meta/lib/oeqa/runtime/cases/python.py
+++ b/poky/meta/lib/oeqa/runtime/cases/python.py
@@ -1,10 +1,12 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
from oeqa.runtime.case import OERuntimeTestCase
from oeqa.core.decorator.depends import OETestDepends
-from oeqa.core.decorator.oeid import OETestID
from oeqa.runtime.decorator.package import OEHasPackage
class PythonTest(OERuntimeTestCase):
- @OETestID(965)
@OETestDepends(['ssh.SSHTest.test_ssh'])
@OEHasPackage(['python3-core'])
def test_python3(self):
diff --git a/poky/meta/lib/oeqa/runtime/cases/rpm.py b/poky/meta/lib/oeqa/runtime/cases/rpm.py
index de92157..d8cabd3 100644
--- a/poky/meta/lib/oeqa/runtime/cases/rpm.py
+++ b/poky/meta/lib/oeqa/runtime/cases/rpm.py
@@ -1,16 +1,18 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
import os
import fnmatch
from oeqa.runtime.case import OERuntimeTestCase
from oeqa.core.decorator.depends import OETestDepends
-from oeqa.core.decorator.oeid import OETestID
from oeqa.core.decorator.data import skipIfDataVar
from oeqa.runtime.decorator.package import OEHasPackage
from oeqa.core.utils.path import findFile
class RpmBasicTest(OERuntimeTestCase):
- @OETestID(960)
@OEHasPackage(['rpm'])
@OETestDepends(['ssh.SSHTest.test_ssh'])
def test_rpm_help(self):
@@ -18,7 +20,6 @@
msg = 'status and output: %s and %s' % (status, output)
self.assertEqual(status, 0, msg=msg)
- @OETestID(191)
@OETestDepends(['rpm.RpmBasicTest.test_rpm_help'])
def test_rpm_query(self):
status, output = self.target.run('ls /var/lib/rpm/')
@@ -43,7 +44,6 @@
cls.test_file = os.path.join(rpmdir, f)
cls.dst = '/tmp/base-passwd-doc.rpm'
- @OETestID(192)
@OETestDepends(['rpm.RpmBasicTest.test_rpm_query'])
def test_rpm_install(self):
self.tc.target.copyTo(self.test_file, self.dst)
@@ -52,14 +52,12 @@
self.assertEqual(status, 0, msg=msg)
self.tc.target.run('rm -f %s' % self.dst)
- @OETestID(194)
@OETestDepends(['rpm.RpmInstallRemoveTest.test_rpm_install'])
def test_rpm_remove(self):
status,output = self.target.run('rpm -e base-passwd-doc')
msg = 'Failed to remove base-passwd-doc package: %s' % output
self.assertEqual(status, 0, msg=msg)
- @OETestID(1096)
@OETestDepends(['rpm.RpmBasicTest.test_rpm_query'])
def test_rpm_query_nonroot(self):
@@ -92,7 +90,6 @@
finally:
unset_up_test_user(tuser)
- @OETestID(195)
@OETestDepends(['rpm.RpmInstallRemoveTest.test_rpm_remove'])
def test_check_rpm_install_removal_log_file_size(self):
"""
diff --git a/poky/meta/lib/oeqa/runtime/cases/scp.py b/poky/meta/lib/oeqa/runtime/cases/scp.py
index 8f895da..3a5f292 100644
--- a/poky/meta/lib/oeqa/runtime/cases/scp.py
+++ b/poky/meta/lib/oeqa/runtime/cases/scp.py
@@ -1,9 +1,12 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
import os
from tempfile import mkstemp
from oeqa.runtime.case import OERuntimeTestCase
from oeqa.core.decorator.depends import OETestDepends
-from oeqa.core.decorator.oeid import OETestID
from oeqa.runtime.decorator.package import OEHasPackage
class ScpTest(OERuntimeTestCase):
@@ -19,7 +22,6 @@
def tearDownClass(cls):
os.remove(cls.tmp_path)
- @OETestID(220)
@OETestDepends(['ssh.SSHTest.test_ssh'])
@OEHasPackage(['openssh-scp', 'dropbear'])
def test_scp_file(self):
diff --git a/poky/meta/lib/oeqa/runtime/cases/skeletoninit.py b/poky/meta/lib/oeqa/runtime/cases/skeletoninit.py
index 4fdcf03..4779cd6 100644
--- a/poky/meta/lib/oeqa/runtime/cases/skeletoninit.py
+++ b/poky/meta/lib/oeqa/runtime/cases/skeletoninit.py
@@ -1,9 +1,12 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
# This test should cover https://bugzilla.yoctoproject.org/tr_show_case.cgi?case_id=284
# testcase. Image under test must have meta-skeleton layer in bblayers and
# IMAGE_INSTALL_append = " service" in local.conf
from oeqa.runtime.case import OERuntimeTestCase
from oeqa.core.decorator.depends import OETestDepends
-from oeqa.core.decorator.oeid import OETestID
from oeqa.core.decorator.data import skipIfDataVar
from oeqa.runtime.decorator.package import OEHasPackage
@@ -22,7 +25,6 @@
msg = 'skeleton-test not found. Output:\n%s' % output
self.assertEqual(status, 0, msg=msg)
- @OETestID(284)
@OETestDepends(['skeletoninit.SkeletonBasicTest.test_skeleton_availability'])
def test_skeleton_script(self):
output1 = self.target.run("/etc/init.d/skeleton start")[1]
diff --git a/poky/meta/lib/oeqa/runtime/cases/ssh.py b/poky/meta/lib/oeqa/runtime/cases/ssh.py
index 0b1ea7b..60a5fbb 100644
--- a/poky/meta/lib/oeqa/runtime/cases/ssh.py
+++ b/poky/meta/lib/oeqa/runtime/cases/ssh.py
@@ -1,11 +1,13 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
from oeqa.runtime.case import OERuntimeTestCase
from oeqa.core.decorator.depends import OETestDepends
-from oeqa.core.decorator.oeid import OETestID
from oeqa.runtime.decorator.package import OEHasPackage
class SSHTest(OERuntimeTestCase):
- @OETestID(224)
@OETestDepends(['ping.PingTest.test_ping'])
@OEHasPackage(['dropbear', 'openssh-sshd'])
def test_ssh(self):
diff --git a/poky/meta/lib/oeqa/runtime/cases/stap.py b/poky/meta/lib/oeqa/runtime/cases/stap.py
index c492caf..5342f6a 100644
--- a/poky/meta/lib/oeqa/runtime/cases/stap.py
+++ b/poky/meta/lib/oeqa/runtime/cases/stap.py
@@ -1,8 +1,11 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
import os
from oeqa.runtime.case import OERuntimeTestCase
from oeqa.core.decorator.depends import OETestDepends
-from oeqa.core.decorator.oeid import OETestID
from oeqa.core.decorator.data import skipIfNotFeature
from oeqa.runtime.decorator.package import OEHasPackage
@@ -19,7 +22,6 @@
files = '/tmp/hello.stp'
cls.tc.target.run('rm %s' % files)
- @OETestID(1652)
@skipIfNotFeature('tools-profile',
'Test requires tools-profile to be in IMAGE_FEATURES')
@OETestDepends(['kernelmodule.KernelModuleTest.test_kernel_module'])
diff --git a/poky/meta/lib/oeqa/runtime/cases/systemd.py b/poky/meta/lib/oeqa/runtime/cases/systemd.py
index 460b8fc..c11fa49 100644
--- a/poky/meta/lib/oeqa/runtime/cases/systemd.py
+++ b/poky/meta/lib/oeqa/runtime/cases/systemd.py
@@ -1,9 +1,12 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
import re
import time
from oeqa.runtime.case import OERuntimeTestCase
from oeqa.core.decorator.depends import OETestDepends
-from oeqa.core.decorator.oeid import OETestID
from oeqa.core.decorator.data import skipIfDataVar, skipIfNotDataVar
from oeqa.runtime.decorator.package import OEHasPackage
from oeqa.core.decorator.data import skipIfNotFeature
@@ -78,12 +81,10 @@
def test_systemd_basic(self):
self.systemctl('--version')
- @OETestID(551)
@OETestDepends(['systemd.SystemdBasicTests.test_systemd_basic'])
def test_systemd_list(self):
self.systemctl('list-unit-files')
- @OETestID(550)
@OETestDepends(['systemd.SystemdBasicTests.test_systemd_basic'])
def test_systemd_failed(self):
settled, output = self.settle()
@@ -104,7 +105,6 @@
def test_systemd_status(self):
self.systemctl('status --full', 'avahi-daemon.service')
- @OETestID(695)
@OETestDepends(['systemd.SystemdServiceTests.test_systemd_status'])
def test_systemd_stop_start(self):
self.systemctl('stop', 'avahi-daemon.service')
@@ -113,7 +113,6 @@
self.systemctl('start','avahi-daemon.service')
self.systemctl('is-active', 'avahi-daemon.service', verbose=True)
- @OETestID(696)
@OETestDepends(['systemd.SystemdServiceTests.test_systemd_status'])
def test_systemd_disable_enable(self):
self.systemctl('disable', 'avahi-daemon.service')
diff --git a/poky/meta/lib/oeqa/runtime/cases/x32lib.py b/poky/meta/lib/oeqa/runtime/cases/x32lib.py
index 8da0154..ddf2201 100644
--- a/poky/meta/lib/oeqa/runtime/cases/x32lib.py
+++ b/poky/meta/lib/oeqa/runtime/cases/x32lib.py
@@ -1,13 +1,15 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
from oeqa.runtime.case import OERuntimeTestCase
from oeqa.core.decorator.depends import OETestDepends
-from oeqa.core.decorator.oeid import OETestID
from oeqa.core.decorator.data import skipIfNotInDataVar
class X32libTest(OERuntimeTestCase):
@skipIfNotInDataVar('DEFAULTTUNE', 'x86-64-x32',
'DEFAULTTUNE is not set to x86-64-x32')
- @OETestID(281)
@OETestDepends(['ssh.SSHTest.test_ssh'])
def test_x32_file(self):
cmd = 'readelf -h /bin/ls | grep Class | grep ELF32'
diff --git a/poky/meta/lib/oeqa/runtime/cases/xorg.py b/poky/meta/lib/oeqa/runtime/cases/xorg.py
index 82521c6..d684558 100644
--- a/poky/meta/lib/oeqa/runtime/cases/xorg.py
+++ b/poky/meta/lib/oeqa/runtime/cases/xorg.py
@@ -1,12 +1,14 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
from oeqa.runtime.case import OERuntimeTestCase
from oeqa.core.decorator.depends import OETestDepends
-from oeqa.core.decorator.oeid import OETestID
from oeqa.core.decorator.data import skipIfNotFeature
from oeqa.runtime.decorator.package import OEHasPackage
class XorgTest(OERuntimeTestCase):
- @OETestID(1151)
@skipIfNotFeature('x11-base',
'Test requires x11 to be in IMAGE_FEATURES')
@OETestDepends(['ssh.SSHTest.test_ssh'])
diff --git a/poky/meta/lib/oeqa/runtime/context.py b/poky/meta/lib/oeqa/runtime/context.py
index db0482d..77d58ee 100644
--- a/poky/meta/lib/oeqa/runtime/context.py
+++ b/poky/meta/lib/oeqa/runtime/context.py
@@ -1,5 +1,8 @@
+#
# Copyright (C) 2016 Intel Corporation
-# Released under the MIT license (see COPYING.MIT)
+#
+# SPDX-License-Identifier: MIT
+#
import os
diff --git a/poky/meta/lib/oeqa/runtime/decorator/package.py b/poky/meta/lib/oeqa/runtime/decorator/package.py
index aa6ecb6..4c5ca19 100644
--- a/poky/meta/lib/oeqa/runtime/decorator/package.py
+++ b/poky/meta/lib/oeqa/runtime/decorator/package.py
@@ -1,5 +1,8 @@
+#
# Copyright (C) 2016 Intel Corporation
-# Released under the MIT license (see COPYING.MIT)
+#
+# SPDX-License-Identifier: MIT
+#
from oeqa.core.decorator import OETestDecorator, registerDecorator
from oeqa.core.utils.misc import strToSet
diff --git a/poky/meta/lib/oeqa/runtime/loader.py b/poky/meta/lib/oeqa/runtime/loader.py
index 041ef97..7041ddf 100644
--- a/poky/meta/lib/oeqa/runtime/loader.py
+++ b/poky/meta/lib/oeqa/runtime/loader.py
@@ -1,5 +1,8 @@
+#
# Copyright (C) 2016 Intel Corporation
-# Released under the MIT license (see COPYING.MIT)
+#
+# SPDX-License-Identifier: MIT
+#
from oeqa.core.loader import OETestLoader
from oeqa.runtime.case import OERuntimeTestCase
diff --git a/poky/meta/lib/oeqa/runtime/utils/targetbuildproject.py b/poky/meta/lib/oeqa/runtime/utils/targetbuildproject.py
index de17ba0..f4f4816 100644
--- a/poky/meta/lib/oeqa/runtime/utils/targetbuildproject.py
+++ b/poky/meta/lib/oeqa/runtime/utils/targetbuildproject.py
@@ -1,5 +1,8 @@
+#
# Copyright (C) 2016 Intel Corporation
-# Released under the MIT license (see COPYING.MIT)
+#
+# SPDX-License-Identifier: MIT
+#
from oeqa.utils.buildproject import BuildProject
diff --git a/poky/meta/lib/oeqa/sdk/case.py b/poky/meta/lib/oeqa/sdk/case.py
index d8611c8..ebb03af 100644
--- a/poky/meta/lib/oeqa/sdk/case.py
+++ b/poky/meta/lib/oeqa/sdk/case.py
@@ -1,5 +1,8 @@
+#
# Copyright (C) 2016 Intel Corporation
-# Released under the MIT license (see COPYING.MIT)
+#
+# SPDX-License-Identifier: MIT
+#
import os
import subprocess
@@ -9,7 +12,7 @@
class OESDKTestCase(OETestCase):
def _run(self, cmd):
return subprocess.check_output(". %s > /dev/null; %s;" % \
- (self.tc.sdk_env, cmd), shell=True,
+ (self.tc.sdk_env, cmd), shell=True, executable="/bin/bash",
stderr=subprocess.STDOUT, universal_newlines=True)
def fetch(self, workdir, dl_dir, url, archive=None):
diff --git a/poky/meta/lib/oeqa/sdk/cases/assimp.py b/poky/meta/lib/oeqa/sdk/cases/assimp.py
index a600010..f26b17f 100644
--- a/poky/meta/lib/oeqa/sdk/cases/assimp.py
+++ b/poky/meta/lib/oeqa/sdk/cases/assimp.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
import os
import subprocess
import tempfile
diff --git a/poky/meta/lib/oeqa/sdk/cases/buildcpio.py b/poky/meta/lib/oeqa/sdk/cases/buildcpio.py
index 9504ee8..0a5e68d 100644
--- a/poky/meta/lib/oeqa/sdk/cases/buildcpio.py
+++ b/poky/meta/lib/oeqa/sdk/cases/buildcpio.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
import os
import tempfile
import subprocess
diff --git a/poky/meta/lib/oeqa/sdk/cases/buildepoxy.py b/poky/meta/lib/oeqa/sdk/cases/buildepoxy.py
index ef24b4f..f3d207c 100644
--- a/poky/meta/lib/oeqa/sdk/cases/buildepoxy.py
+++ b/poky/meta/lib/oeqa/sdk/cases/buildepoxy.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
import os
import subprocess
import tempfile
diff --git a/poky/meta/lib/oeqa/sdk/cases/buildgalculator.py b/poky/meta/lib/oeqa/sdk/cases/buildgalculator.py
index 47d7580..bbaa5c5 100644
--- a/poky/meta/lib/oeqa/sdk/cases/buildgalculator.py
+++ b/poky/meta/lib/oeqa/sdk/cases/buildgalculator.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
import os
import subprocess
import tempfile
diff --git a/poky/meta/lib/oeqa/sdk/cases/buildlzip.py b/poky/meta/lib/oeqa/sdk/cases/buildlzip.py
index b7483bf..515acd2 100644
--- a/poky/meta/lib/oeqa/sdk/cases/buildlzip.py
+++ b/poky/meta/lib/oeqa/sdk/cases/buildlzip.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
import os, tempfile, subprocess, unittest
from oeqa.sdk.case import OESDKTestCase
from oeqa.utils.subprocesstweak import errors_have_output
diff --git a/poky/meta/lib/oeqa/sdk/cases/gcc.py b/poky/meta/lib/oeqa/sdk/cases/gcc.py
index 54c6fc4..eb08ead 100644
--- a/poky/meta/lib/oeqa/sdk/cases/gcc.py
+++ b/poky/meta/lib/oeqa/sdk/cases/gcc.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
import os
import shutil
import unittest
diff --git a/poky/meta/lib/oeqa/sdk/cases/perl.py b/poky/meta/lib/oeqa/sdk/cases/perl.py
index b8adc5a..14d76d8 100644
--- a/poky/meta/lib/oeqa/sdk/cases/perl.py
+++ b/poky/meta/lib/oeqa/sdk/cases/perl.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
import unittest
from oeqa.sdk.case import OESDKTestCase
diff --git a/poky/meta/lib/oeqa/sdk/cases/python.py b/poky/meta/lib/oeqa/sdk/cases/python.py
index b9174fa..a334abc 100644
--- a/poky/meta/lib/oeqa/sdk/cases/python.py
+++ b/poky/meta/lib/oeqa/sdk/cases/python.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
import subprocess, unittest
from oeqa.sdk.case import OESDKTestCase
diff --git a/poky/meta/lib/oeqa/sdk/context.py b/poky/meta/lib/oeqa/sdk/context.py
index adc4166..09e77c1 100644
--- a/poky/meta/lib/oeqa/sdk/context.py
+++ b/poky/meta/lib/oeqa/sdk/context.py
@@ -1,5 +1,8 @@
+#
# Copyright (C) 2016 Intel Corporation
-# Released under the MIT license (see COPYING.MIT)
+#
+# SPDX-License-Identifier: MIT
+#
import os
import sys
diff --git a/poky/meta/lib/oeqa/sdk/testsdk.py b/poky/meta/lib/oeqa/sdk/testsdk.py
index 632ac50..35e4018 100644
--- a/poky/meta/lib/oeqa/sdk/testsdk.py
+++ b/poky/meta/lib/oeqa/sdk/testsdk.py
@@ -1,5 +1,8 @@
+#
# Copyright 2018 by Garmin Ltd. or its subsidiaries
-# Released under the MIT license (see COPYING.MIT)
+#
+# SPDX-License-Identifier: MIT
+#
from oeqa.sdk.context import OESDKTestContext, OESDKTestContextExecutor
diff --git a/poky/meta/lib/oeqa/sdk/utils/sdkbuildproject.py b/poky/meta/lib/oeqa/sdk/utils/sdkbuildproject.py
index 6fed73e..32f5e33 100644
--- a/poky/meta/lib/oeqa/sdk/utils/sdkbuildproject.py
+++ b/poky/meta/lib/oeqa/sdk/utils/sdkbuildproject.py
@@ -1,5 +1,8 @@
+#
# Copyright (C) 2016 Intel Corporation
-# Released under the MIT license (see COPYING.MIT)
+#
+# SPDX-License-Identifier: MIT
+#
import os
import subprocess
@@ -42,7 +45,8 @@
def _run(self, cmd):
self.log("Running . %s; " % self.sdkenv + cmd)
try:
- output = subprocess.check_output(". %s; " % self.sdkenv + cmd, shell=True, stderr=subprocess.STDOUT)
+ output = subprocess.check_output(". %s; " % self.sdkenv + cmd, shell=True,
+ executable='/bin/bash', stderr=subprocess.STDOUT)
except subprocess.CalledProcessError as exc:
print(exc.output.decode('utf-8'))
return exc.returncode
diff --git a/poky/meta/lib/oeqa/sdkext/case.py b/poky/meta/lib/oeqa/sdkext/case.py
index 21b7188..668faec 100644
--- a/poky/meta/lib/oeqa/sdkext/case.py
+++ b/poky/meta/lib/oeqa/sdkext/case.py
@@ -1,5 +1,8 @@
+#
# Copyright (C) 2016 Intel Corporation
-# Released under the MIT license (see COPYING.MIT)
+#
+# SPDX-License-Identifier: MIT
+#
import os
import subprocess
diff --git a/poky/meta/lib/oeqa/sdkext/cases/devtool.py b/poky/meta/lib/oeqa/sdkext/cases/devtool.py
index d322f86..5a02add 100644
--- a/poky/meta/lib/oeqa/sdkext/cases/devtool.py
+++ b/poky/meta/lib/oeqa/sdkext/cases/devtool.py
@@ -1,12 +1,14 @@
+#
# Copyright (C) 2016 Intel Corporation
-# Released under the MIT license (see COPYING.MIT)
+#
+# SPDX-License-Identifier: MIT
+#
import os
import shutil
import subprocess
from oeqa.sdkext.case import OESDKExtTestCase
-from oeqa.core.decorator.oeid import OETestID
from oeqa.utils.httpserver import HTTPService
from oeqa.utils.subprocesstweak import errors_have_output
@@ -51,19 +53,15 @@
self._run('devtool add myapp %s' % self.myapp_dst)
self._run('devtool reset myapp')
- @OETestID(1605)
def test_devtool_build_make(self):
self._test_devtool_build(self.myapp_dst)
- @OETestID(1606)
def test_devtool_build_esdk_package(self):
self._test_devtool_build_package(self.myapp_dst)
- @OETestID(1607)
def test_devtool_build_cmake(self):
self._test_devtool_build(self.myapp_cmake_dst)
- @OETestID(1608)
def test_extend_autotools_recipe_creation(self):
req = 'https://github.com/rdfa/librdfa'
recipe = "librdfa"
@@ -74,7 +72,6 @@
finally:
self._run('devtool reset %s' % recipe)
- @OETestID(1609)
def test_devtool_kernelmodule(self):
docfile = 'https://github.com/umlaeute/v4l2loopback.git'
recipe = 'v4l2loopback-driver'
@@ -84,7 +81,6 @@
finally:
self._run('devtool reset %s' % recipe)
- @OETestID(1610)
def test_recipes_for_nodejs(self):
package_nodejs = "npm://registry.npmjs.org;name=winston;version=2.2.0"
self._run('devtool add %s ' % package_nodejs)
diff --git a/poky/meta/lib/oeqa/sdkext/context.py b/poky/meta/lib/oeqa/sdkext/context.py
index 65da4c6..2ac2bf6 100644
--- a/poky/meta/lib/oeqa/sdkext/context.py
+++ b/poky/meta/lib/oeqa/sdkext/context.py
@@ -1,5 +1,8 @@
+#
# Copyright (C) 2016 Intel Corporation
-# Released under the MIT license (see COPYING.MIT)
+#
+# SPDX-License-Identifier: MIT
+#
import os
from oeqa.sdk.context import OESDKTestContext, OESDKTestContextExecutor
diff --git a/poky/meta/lib/oeqa/sdkext/testsdk.py b/poky/meta/lib/oeqa/sdkext/testsdk.py
index 57b2e0e..785b5dd 100644
--- a/poky/meta/lib/oeqa/sdkext/testsdk.py
+++ b/poky/meta/lib/oeqa/sdkext/testsdk.py
@@ -1,5 +1,8 @@
+#
# Copyright 2018 by Garmin Ltd. or its subsidiaries
-# Released under the MIT license (see COPYING.MIT)
+#
+# SPDX-License-Identifier: MIT
+#
from oeqa.sdk.testsdk import TestSDKBase
diff --git a/poky/meta/lib/oeqa/selftest/case.py b/poky/meta/lib/oeqa/selftest/case.py
index 9c08d59..d207a0a 100644
--- a/poky/meta/lib/oeqa/selftest/case.py
+++ b/poky/meta/lib/oeqa/selftest/case.py
@@ -1,5 +1,8 @@
+#
# Copyright (C) 2013-2017 Intel Corporation
-# Released under the MIT license (see COPYING.MIT)
+#
+# SPDX-License-Identifier: MIT
+#
import sys
import os
diff --git a/poky/meta/lib/oeqa/selftest/cases/_sstatetests_noauto.py b/poky/meta/lib/oeqa/selftest/cases/_sstatetests_noauto.py
index 0e58962..f7c356a 100644
--- a/poky/meta/lib/oeqa/selftest/cases/_sstatetests_noauto.py
+++ b/poky/meta/lib/oeqa/selftest/cases/_sstatetests_noauto.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
import os
import shutil
diff --git a/poky/meta/lib/oeqa/selftest/cases/archiver.py b/poky/meta/lib/oeqa/selftest/cases/archiver.py
index 0a6d4e3..f8672f8 100644
--- a/poky/meta/lib/oeqa/selftest/cases/archiver.py
+++ b/poky/meta/lib/oeqa/selftest/cases/archiver.py
@@ -1,12 +1,14 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
import os
import glob
from oeqa.utils.commands import bitbake, get_bb_vars
from oeqa.selftest.case import OESelftestTestCase
-from oeqa.core.decorator.oeid import OETestID
class Archiver(OESelftestTestCase):
- @OETestID(1345)
def test_archiver_allows_to_filter_on_recipe_name(self):
"""
Summary: The archiver should offer the possibility to filter on the recipe. (#6929)
@@ -40,7 +42,6 @@
excluded_present = len(glob.glob(src_path + '/%s-*' % exclude_recipe))
self.assertFalse(excluded_present, 'Recipe %s was not excluded.' % exclude_recipe)
- @OETestID(1900)
def test_archiver_filters_by_type(self):
"""
Summary: The archiver is documented to filter on the recipe type.
@@ -73,7 +74,6 @@
excluded_present = len(glob.glob(src_path_native + '/%s-*' % native_recipe))
self.assertFalse(excluded_present, 'Recipe %s was not excluded.' % native_recipe)
- @OETestID(1901)
def test_archiver_filters_by_type_and_name(self):
"""
Summary: Test that the archiver archives by recipe type, taking the
diff --git a/poky/meta/lib/oeqa/selftest/cases/bblayers.py b/poky/meta/lib/oeqa/selftest/cases/bblayers.py
index 447c54b..954488d 100644
--- a/poky/meta/lib/oeqa/selftest/cases/bblayers.py
+++ b/poky/meta/lib/oeqa/selftest/cases/bblayers.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
import os
import re
@@ -5,33 +9,27 @@
from oeqa.utils.commands import runCmd, get_bb_var, get_bb_vars
from oeqa.selftest.case import OESelftestTestCase
-from oeqa.core.decorator.oeid import OETestID
class BitbakeLayers(OESelftestTestCase):
- @OETestID(756)
def test_bitbakelayers_showcrossdepends(self):
result = runCmd('bitbake-layers show-cross-depends')
self.assertTrue('aspell' in result.output, msg = "No dependencies were shown. bitbake-layers show-cross-depends output: %s" % result.output)
- @OETestID(83)
def test_bitbakelayers_showlayers(self):
result = runCmd('bitbake-layers show-layers')
self.assertTrue('meta-selftest' in result.output, msg = "No layers were shown. bitbake-layers show-layers output: %s" % result.output)
- @OETestID(93)
def test_bitbakelayers_showappends(self):
recipe = "xcursor-transparent-theme"
bb_file = self.get_recipe_basename(recipe)
result = runCmd('bitbake-layers show-appends')
self.assertTrue(bb_file in result.output, msg="%s file was not recognised. bitbake-layers show-appends output: %s" % (bb_file, result.output))
- @OETestID(90)
def test_bitbakelayers_showoverlayed(self):
result = runCmd('bitbake-layers show-overlayed')
self.assertTrue('aspell' in result.output, msg="aspell overlayed recipe was not recognised bitbake-layers show-overlayed %s" % result.output)
- @OETestID(95)
def test_bitbakelayers_flatten(self):
recipe = "xcursor-transparent-theme"
recipe_path = "recipes-graphics/xcursor-transparent-theme"
@@ -46,7 +44,6 @@
find_in_contents = re.search("##### bbappended from meta-selftest #####\n(.*\n)*include test_recipe.inc", contents)
self.assertTrue(find_in_contents, msg = "Flattening layers did not work. bitbake-layers flatten output: %s" % result.output)
- @OETestID(1195)
def test_bitbakelayers_add_remove(self):
test_layer = os.path.join(get_bb_var('COREBASE'), 'meta-skeleton')
result = runCmd('bitbake-layers show-layers')
@@ -64,7 +61,6 @@
result = runCmd('bitbake-layers show-layers')
self.assertNotIn('meta-skeleton', result.output, msg = "meta-skeleton should have been removed at this step. bitbake-layers show-layers output: %s" % result.output)
- @OETestID(1384)
def test_bitbakelayers_showrecipes(self):
result = runCmd('bitbake-layers show-recipes')
self.assertIn('aspell:', result.output)
diff --git a/poky/meta/lib/oeqa/selftest/cases/bbtests.py b/poky/meta/lib/oeqa/selftest/cases/bbtests.py
index c503e4e..e9ad44b 100644
--- a/poky/meta/lib/oeqa/selftest/cases/bbtests.py
+++ b/poky/meta/lib/oeqa/selftest/cases/bbtests.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
import os
import re
@@ -5,7 +9,6 @@
from oeqa.utils.commands import runCmd, bitbake, get_bb_var, get_bb_vars
from oeqa.selftest.case import OESelftestTestCase
-from oeqa.core.decorator.oeid import OETestID
class BitbakeTests(OESelftestTestCase):
@@ -14,13 +17,11 @@
if line in l:
return l
- @OETestID(789)
# Test bitbake can run from the <builddir>/conf directory
def test_run_bitbake_from_dir_1(self):
os.chdir(os.path.join(self.builddir, 'conf'))
self.assertEqual(bitbake('-e').status, 0, msg = "bitbake couldn't run from \"conf\" dir")
- @OETestID(790)
# Test bitbake can run from the <builddir>'s parent directory
def test_run_bitbake_from_dir_2(self):
my_env = os.environ.copy()
@@ -36,7 +37,6 @@
self.assertEqual(bitbake('-e', env=my_env).status, 0, msg = "bitbake couldn't run from /tmp/")
- @OETestID(806)
def test_event_handler(self):
self.write_config("INHERIT += \"test_events\"")
result = bitbake('m4-native')
@@ -46,7 +46,6 @@
self.assertTrue(find_build_completed, msg = "Match failed in:\n%s" % result.output)
self.assertFalse('Test for bb.event.InvalidEvent' in result.output, msg = "\"Test for bb.event.InvalidEvent\" message found during bitbake process. bitbake output: %s" % result.output)
- @OETestID(103)
def test_local_sstate(self):
bitbake('m4-native')
bitbake('m4-native -cclean')
@@ -54,17 +53,14 @@
find_setscene = re.search("m4-native.*do_.*_setscene", result.output)
self.assertTrue(find_setscene, msg = "No \"m4-native.*do_.*_setscene\" message found during bitbake m4-native. bitbake output: %s" % result.output )
- @OETestID(105)
def test_bitbake_invalid_recipe(self):
result = bitbake('-b asdf', ignore_status=True)
self.assertTrue("ERROR: Unable to find any recipe file matching 'asdf'" in result.output, msg = "Though asdf recipe doesn't exist, bitbake didn't output any err. message. bitbake output: %s" % result.output)
- @OETestID(107)
def test_bitbake_invalid_target(self):
result = bitbake('asdf', ignore_status=True)
self.assertTrue("ERROR: Nothing PROVIDES 'asdf'" in result.output, msg = "Though no 'asdf' target exists, bitbake didn't output any err. message. bitbake output: %s" % result.output)
- @OETestID(106)
def test_warnings_errors(self):
result = bitbake('-b asdf', ignore_status=True)
find_warnings = re.search("Summary: There w.{2,3}? [1-9][0-9]* WARNING messages* shown", result.output)
@@ -72,7 +68,6 @@
self.assertTrue(find_warnings, msg="Did not find the mumber of warnings at the end of the build:\n" + result.output)
self.assertTrue(find_errors, msg="Did not find the mumber of errors at the end of the build:\n" + result.output)
- @OETestID(108)
def test_invalid_patch(self):
# This patch should fail to apply.
self.write_recipeinc('man-db', 'FILESEXTRAPATHS_prepend := "${THISDIR}/files:"\nSRC_URI += "file://0001-Test-patch-here.patch"')
@@ -83,7 +78,6 @@
line = self.getline(result, "Function failed: patch_do_patch")
self.assertTrue(line and line.startswith("ERROR:"), msg = "Incorrectly formed patch application didn't fail. bitbake output: %s" % result.output)
- @OETestID(1354)
def test_force_task_1(self):
# test 1 from bug 5875
test_recipe = 'zlib'
@@ -108,7 +102,6 @@
ret = bitbake(test_recipe)
self.assertIn('task do_package_write_rpm:', ret.output, 'Task do_package_write_rpm did not re-executed.')
- @OETestID(163)
def test_force_task_2(self):
# test 2 from bug 5875
test_recipe = 'zlib'
@@ -121,7 +114,6 @@
for task in look_for_tasks:
self.assertIn(task, result.output, msg="Couldn't find %s task.")
- @OETestID(167)
def test_bitbake_g(self):
result = bitbake('-g core-image-minimal')
for f in ['pn-buildlist', 'recipe-depends.dot', 'task-depends.dot']:
@@ -129,7 +121,6 @@
self.assertTrue('Task dependencies saved to \'task-depends.dot\'' in result.output, msg = "No task dependency \"task-depends.dot\" file was generated for the given task target. bitbake output: %s" % result.output)
self.assertTrue('busybox' in ftools.read_file(os.path.join(self.builddir, 'task-depends.dot')), msg = "No \"busybox\" dependency found in task-depends.dot file.")
- @OETestID(899)
def test_image_manifest(self):
bitbake('core-image-minimal')
bb_vars = get_bb_vars(["DEPLOY_DIR_IMAGE", "IMAGE_LINK_NAME"], "core-image-minimal")
@@ -138,7 +129,6 @@
manifest = os.path.join(deploydir, imagename + ".manifest")
self.assertTrue(os.path.islink(manifest), msg="No manifest file created for image. It should have been created in %s" % manifest)
- @OETestID(168)
def test_invalid_recipe_src_uri(self):
data = 'SRC_URI = "file://invalid"'
self.write_recipeinc('man-db', data)
@@ -159,7 +149,6 @@
self.assertTrue(line and line.startswith("ERROR:"), msg = "\"invalid\" file \
doesn't exist, yet fetcher didn't report any error. bitbake output: %s" % result.output)
- @OETestID(171)
def test_rename_downloaded_file(self):
# TODO unique dldir instead of using cleanall
# TODO: need to set sstatedir?
@@ -177,29 +166,24 @@
self.assertTrue(os.path.isfile(os.path.join(dl_dir, 'test-aspell.tar.gz')), msg = "File rename failed. No corresponding test-aspell.tar.gz file found under %s" % dl_dir)
self.assertTrue(os.path.isfile(os.path.join(dl_dir, 'test-aspell.tar.gz.done')), "File rename failed. No corresponding test-aspell.tar.gz.done file found under %s" % dl_dir)
- @OETestID(1028)
def test_environment(self):
self.write_config("TEST_ENV=\"localconf\"")
result = runCmd('bitbake -e | grep TEST_ENV=')
self.assertTrue('localconf' in result.output, msg = "bitbake didn't report any value for TEST_ENV variable. To test, run 'bitbake -e | grep TEST_ENV='")
- @OETestID(1029)
def test_dry_run(self):
result = runCmd('bitbake -n m4-native')
self.assertEqual(0, result.status, "bitbake dry run didn't run as expected. %s" % result.output)
- @OETestID(1030)
def test_just_parse(self):
result = runCmd('bitbake -p')
self.assertEqual(0, result.status, "errors encountered when parsing recipes. %s" % result.output)
- @OETestID(1031)
def test_version(self):
result = runCmd('bitbake -s | grep wget')
find = re.search(r"wget *:([0-9a-zA-Z\.\-]+)", result.output)
self.assertTrue(find, "No version returned for searched recipe. bitbake output: %s" % result.output)
- @OETestID(1032)
def test_prefile(self):
preconf = os.path.join(self.builddir, 'conf/prefile.conf')
self.track_for_cleanup(preconf)
@@ -210,7 +194,6 @@
result = runCmd('bitbake -r conf/prefile.conf -e | grep TEST_PREFILE=')
self.assertTrue('localconf' in result.output, "Preconfigure file \"prefile.conf\"was not taken into consideration.")
- @OETestID(1033)
def test_postfile(self):
postconf = os.path.join(self.builddir, 'conf/postfile.conf')
self.track_for_cleanup(postconf)
@@ -219,12 +202,10 @@
result = runCmd('bitbake -R conf/postfile.conf -e | grep TEST_POSTFILE=')
self.assertTrue('postfile' in result.output, "Postconfigure file \"postfile.conf\"was not taken into consideration.")
- @OETestID(1034)
def test_checkuri(self):
result = runCmd('bitbake -c checkuri m4')
self.assertEqual(0, result.status, msg = "\"checkuri\" task was not executed. bitbake output: %s" % result.output)
- @OETestID(1035)
def test_continue(self):
self.write_config("""DL_DIR = \"${TOPDIR}/download-selftest\"
SSTATE_DIR = \"${TOPDIR}/download-selftest\"
@@ -239,7 +220,6 @@
continuepos = result.output.find('NOTE: recipe xcursor-transparent-theme-%s: task do_unpack: Started' % manver.group(1))
self.assertLess(errorpos,continuepos, msg = "bitbake didn't pass do_fail_task. bitbake output: %s" % result.output)
- @OETestID(1119)
def test_non_gplv3(self):
self.write_config('INCOMPATIBLE_LICENSE = "GPLv3"')
result = bitbake('selftest-ed', ignore_status=True)
@@ -248,7 +228,6 @@
self.assertFalse(os.path.isfile(os.path.join(lic_dir, 'selftest-ed/generic_GPLv3')))
self.assertTrue(os.path.isfile(os.path.join(lic_dir, 'selftest-ed/generic_GPLv2')))
- @OETestID(1422)
def test_setscene_only(self):
""" Bitbake option to restore from sstate only within a build (i.e. execute no real tasks, only setscene)"""
test_recipe = 'ed'
@@ -263,7 +242,6 @@
self.assertIn('_setscene', task, 'A task different from _setscene ran: %s.\n'
'Executed tasks were: %s' % (task, str(tasks)))
- @OETestID(1425)
def test_bbappend_order(self):
""" Bitbake should bbappend to recipe in a predictable order """
test_recipe = 'ed'
diff --git a/poky/meta/lib/oeqa/selftest/cases/buildhistory.py b/poky/meta/lib/oeqa/selftest/cases/buildhistory.py
index 06792d9..d865da6 100644
--- a/poky/meta/lib/oeqa/selftest/cases/buildhistory.py
+++ b/poky/meta/lib/oeqa/selftest/cases/buildhistory.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
import os
import re
import datetime
diff --git a/poky/meta/lib/oeqa/selftest/cases/buildoptions.py b/poky/meta/lib/oeqa/selftest/cases/buildoptions.py
index 6a18eb8..3ad65b4 100644
--- a/poky/meta/lib/oeqa/selftest/cases/buildoptions.py
+++ b/poky/meta/lib/oeqa/selftest/cases/buildoptions.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
import os
import re
import glob as g
@@ -7,11 +11,9 @@
from oeqa.selftest.cases.buildhistory import BuildhistoryBase
from oeqa.utils.commands import runCmd, bitbake, get_bb_var, get_bb_vars
import oeqa.utils.ftools as ftools
-from oeqa.core.decorator.oeid import OETestID
class ImageOptionsTests(OESelftestTestCase):
- @OETestID(761)
def test_incremental_image_generation(self):
image_pkgtype = get_bb_var("IMAGE_PKGTYPE")
if image_pkgtype != 'rpm':
@@ -30,7 +32,6 @@
incremental_removed = re.search(r"Erasing\s*:\s*packagegroup-core-ssh-openssh", log_data_removed)
self.assertTrue(incremental_removed, msg = "Match failed in:\n%s" % log_data_removed)
- @OETestID(286)
def test_ccache_tool(self):
bitbake("ccache-native")
bb_vars = get_bb_vars(['SYSROOT_DESTDIR', 'bindir'], 'ccache-native')
@@ -45,7 +46,6 @@
loglines = "".join(f.readlines())
self.assertIn("ccache", loglines, msg="No match for ccache in m4-native log.do_compile. For further details: %s" % log_compile)
- @OETestID(1435)
def test_read_only_image(self):
distro_features = get_bb_var('DISTRO_FEATURES')
if not ('x11' in distro_features and 'opengl' in distro_features):
@@ -56,7 +56,6 @@
class DiskMonTest(OESelftestTestCase):
- @OETestID(277)
def test_stoptask_behavior(self):
self.write_config('BB_DISKMON_DIRS = "STOPTASKS,${TMPDIR},100000G,100K"')
res = bitbake("delay -c delay", ignore_status = True)
@@ -76,7 +75,6 @@
if line in l:
return l
- @OETestID(927)
def test_options_warnqa_errorqa_switch(self):
self.write_config("INHERIT_remove = \"report-error\"")
@@ -98,7 +96,6 @@
line = self.getline(res, "QA Issue: xcursor-transparent-theme-dbg is listed in PACKAGES multiple times, this leads to packaging errors.")
self.assertTrue(line and line.startswith("WARNING:"), msg=res.output)
- @OETestID(1421)
def test_layer_without_git_dir(self):
"""
Summary: Test that layer git revisions are displayed and do not fail without git repository
@@ -140,12 +137,10 @@
class BuildhistoryTests(BuildhistoryBase):
- @OETestID(293)
def test_buildhistory_basic(self):
self.run_buildhistory_operation('xcursor-transparent-theme')
self.assertTrue(os.path.isdir(get_bb_var('BUILDHISTORY_DIR')), "buildhistory dir was not created.")
- @OETestID(294)
def test_buildhistory_buildtime_pr_backwards(self):
target = 'xcursor-transparent-theme'
error = "ERROR:.*QA Issue: Package version for package %s went backwards which would break package feeds from (.*-r1.* to .*-r0.*)" % target
@@ -153,7 +148,6 @@
self.run_buildhistory_operation(target, target_config="PR = \"r0\"", change_bh_location=False, expect_error=True, error_regex=error)
class ArchiverTest(OESelftestTestCase):
- @OETestID(926)
def test_arch_work_dir_and_export_source(self):
"""
Test for archiving the work directory and exporting the source files.
diff --git a/poky/meta/lib/oeqa/selftest/cases/containerimage.py b/poky/meta/lib/oeqa/selftest/cases/containerimage.py
index 8deaae7..c0998e3 100644
--- a/poky/meta/lib/oeqa/selftest/cases/containerimage.py
+++ b/poky/meta/lib/oeqa/selftest/cases/containerimage.py
@@ -1,8 +1,11 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
import os
from oeqa.selftest.case import OESelftestTestCase
from oeqa.utils.commands import bitbake, get_bb_vars, runCmd
-from oeqa.core.decorator.oeid import OETestID
# This test builds an image with using the "container" IMAGE_FSTYPE, and
# ensures that then files in the image are only the ones expected.
@@ -21,7 +24,6 @@
# Verify that when specifying a IMAGE_TYPEDEP_ of the form "foo.bar" that
# the conversion type bar gets added as a dep as well
- @OETestID(1619)
def test_expected_files(self):
def get_each_path_part(path):
diff --git a/poky/meta/lib/oeqa/selftest/cases/devtool.py b/poky/meta/lib/oeqa/selftest/cases/devtool.py
index 58f3e58..434a7b9 100644
--- a/poky/meta/lib/oeqa/selftest/cases/devtool.py
+++ b/poky/meta/lib/oeqa/selftest/cases/devtool.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
import os
import re
import shutil
@@ -9,7 +13,6 @@
from oeqa.selftest.case import OESelftestTestCase
from oeqa.utils.commands import runCmd, bitbake, get_bb_var, create_temp_layer
from oeqa.utils.commands import get_bb_vars, runqemu, get_test_layer
-from oeqa.core.decorator.oeid import OETestID
oldmetapath = None
@@ -233,7 +236,6 @@
class DevtoolTests(DevtoolBase):
- @OETestID(1158)
def test_create_workspace(self):
# Check preconditions
result = runCmd('bitbake-layers show-layers')
@@ -256,7 +258,6 @@
class DevtoolAddTests(DevtoolBase):
- @OETestID(1159)
def test_devtool_add(self):
# Fetch source
tempdir = tempfile.mkdtemp(prefix='devtoolqa')
@@ -298,7 +299,6 @@
bindir = bindir[1:]
self.assertTrue(os.path.isfile(os.path.join(installdir, bindir, 'pv')), 'pv binary not found in D')
- @OETestID(1423)
def test_devtool_add_git_local(self):
# We need dbus built so that DEPENDS recognition works
bitbake('dbus')
@@ -340,7 +340,6 @@
checkvars['DEPENDS'] = set(['dbus'])
self._test_recipe_contents(recipefile, checkvars, [])
- @OETestID(1162)
def test_devtool_add_library(self):
# Fetch source
tempdir = tempfile.mkdtemp(prefix='devtoolqa')
@@ -389,7 +388,6 @@
self.assertFalse(matches, 'Stamp files exist for recipe libftdi that should have been cleaned')
self.assertFalse(os.path.isfile(os.path.join(staging_libdir, 'libftdi1.so.2.1.0')), 'libftdi binary still found in STAGING_LIBDIR after cleaning')
- @OETestID(1160)
def test_devtool_add_fetch(self):
# Fetch source
tempdir = tempfile.mkdtemp(prefix='devtoolqa')
@@ -435,7 +433,6 @@
checkvars['SRC_URI'] = url
self._test_recipe_contents(recipefile, checkvars, [])
- @OETestID(1161)
def test_devtool_add_fetch_git(self):
tempdir = tempfile.mkdtemp(prefix='devtoolqa')
self.track_for_cleanup(tempdir)
@@ -483,7 +480,6 @@
checkvars['SRCREV'] = checkrev
self._test_recipe_contents(recipefile, checkvars, [])
- @OETestID(1391)
def test_devtool_add_fetch_simple(self):
# Fetch source from a remote URL, auto-detecting name
tempdir = tempfile.mkdtemp(prefix='devtoolqa')
@@ -513,7 +509,6 @@
class DevtoolModifyTests(DevtoolBase):
- @OETestID(1164)
def test_devtool_modify(self):
import oe.path
@@ -571,7 +566,6 @@
result = runCmd('devtool status')
self.assertNotIn('mdadm', result.output)
- @OETestID(1620)
def test_devtool_buildclean(self):
def assertFile(path, *paths):
f = os.path.join(path, *paths)
@@ -618,7 +612,6 @@
finally:
self.delete_recipeinc('m4')
- @OETestID(1166)
def test_devtool_modify_invalid(self):
# Try modifying some recipes
tempdir = tempfile.mkdtemp(prefix='devtoolqa')
@@ -647,7 +640,6 @@
self.assertNotEqual(result.status, 0, 'devtool modify on %s should have failed. devtool output: %s' % (testrecipe, result.output))
self.assertIn('ERROR: ', result.output, 'devtool modify on %s should have given an ERROR' % testrecipe)
- @OETestID(1365)
def test_devtool_modify_native(self):
# Check preconditions
self.assertTrue(not os.path.exists(self.workspacedir), 'This test cannot be run with a workspace directory under the build directory')
@@ -677,7 +669,6 @@
self.assertTrue(inheritnative, 'None of these recipes do "inherit native" - need to adjust testrecipes list: %s' % ', '.join(testrecipes))
- @OETestID(1165)
def test_devtool_modify_git(self):
# Check preconditions
testrecipe = 'psplash'
@@ -705,7 +696,6 @@
# Try building
bitbake(testrecipe)
- @OETestID(1167)
def test_devtool_modify_localfiles(self):
# Check preconditions
testrecipe = 'lighttpd'
@@ -736,7 +726,6 @@
# Try building
bitbake(testrecipe)
- @OETestID(1378)
def test_devtool_modify_virtual(self):
# Try modifying a virtual recipe
virtrecipe = 'virtual/make'
@@ -760,7 +749,6 @@
class DevtoolUpdateTests(DevtoolBase):
- @OETestID(1169)
def test_devtool_update_recipe(self):
# Check preconditions
testrecipe = 'minicom'
@@ -793,7 +781,6 @@
('??', '.*/0002-Add-a-new-file.patch$')]
self._check_repo_status(os.path.dirname(recipefile), expected_status)
- @OETestID(1172)
def test_devtool_update_recipe_git(self):
# Check preconditions
testrecipe = 'mtd-utils'
@@ -863,7 +850,6 @@
('??', '%s/0002-Add-a-new-file.patch' % relpatchpath)]
self._check_repo_status(os.path.dirname(recipefile), expected_status)
- @OETestID(1170)
def test_devtool_update_recipe_append(self):
# Check preconditions
testrecipe = 'mdadm'
@@ -932,7 +918,6 @@
self.assertEqual(expectedlines, f.readlines())
# Deleting isn't expected to work under these circumstances
- @OETestID(1171)
def test_devtool_update_recipe_append_git(self):
# Check preconditions
testrecipe = 'mtd-utils'
@@ -1023,7 +1008,6 @@
self.assertEqual(expectedlines, set(f.readlines()))
# Deleting isn't expected to work under these circumstances
- @OETestID(1370)
def test_devtool_update_recipe_local_files(self):
"""Check that local source files are copied over instead of patched"""
testrecipe = 'makedevs'
@@ -1055,7 +1039,6 @@
('??', '.*/makedevs/0001-Add-new-file.patch$')]
self._check_repo_status(os.path.dirname(recipefile), expected_status)
- @OETestID(1371)
def test_devtool_update_recipe_local_files_2(self):
"""Check local source files support when oe-local-files is in Git"""
testrecipe = 'devtool-test-local'
@@ -1100,7 +1083,6 @@
('??', '.*/0001-Add-new-file.patch$')]
self._check_repo_status(os.path.dirname(recipefile), expected_status)
- @OETestID(1627)
def test_devtool_update_recipe_local_files_3(self):
# First, modify the recipe
testrecipe = 'devtool-test-localonly'
@@ -1120,7 +1102,6 @@
expected_status = [(' M', '.*/%s/file2$' % testrecipe)]
self._check_repo_status(os.path.dirname(recipefile), expected_status)
- @OETestID(1629)
def test_devtool_update_recipe_local_patch_gz(self):
# First, modify the recipe
testrecipe = 'devtool-test-patch-gz'
@@ -1148,7 +1129,6 @@
if 'gzip compressed data' not in result.output:
self.fail('New patch file is not gzipped - file reports:\n%s' % result.output)
- @OETestID(1628)
def test_devtool_update_recipe_local_files_subdir(self):
# Try devtool update-recipe on a recipe that has a file with subdir= set in
# SRC_URI such that it overwrites a file that was in an archive that
@@ -1177,7 +1157,6 @@
class DevtoolExtractTests(DevtoolBase):
- @OETestID(1163)
def test_devtool_extract(self):
tempdir = tempfile.mkdtemp(prefix='devtoolqa')
# Try devtool extract
@@ -1188,7 +1167,6 @@
self.assertExists(os.path.join(tempdir, 'Makefile.am'), 'Extracted source could not be found')
self._check_src_repo(tempdir)
- @OETestID(1379)
def test_devtool_extract_virtual(self):
tempdir = tempfile.mkdtemp(prefix='devtoolqa')
# Try devtool extract
@@ -1199,7 +1177,6 @@
self.assertExists(os.path.join(tempdir, 'Makefile.am'), 'Extracted source could not be found')
self._check_src_repo(tempdir)
- @OETestID(1168)
def test_devtool_reset_all(self):
tempdir = tempfile.mkdtemp(prefix='devtoolqa')
self.track_for_cleanup(tempdir)
@@ -1226,7 +1203,6 @@
matches2 = glob.glob(stampprefix2 + '*')
self.assertFalse(matches2, 'Stamp files exist for recipe %s that should have been cleaned' % testrecipe2)
- @OETestID(1272)
def test_devtool_deploy_target(self):
# NOTE: Whilst this test would seemingly be better placed as a runtime test,
# unfortunately the runtime tests run under bitbake and you can't run
@@ -1312,7 +1288,6 @@
result = runCmd('ssh %s root@%s %s' % (sshargs, qemu.ip, testcommand), ignore_status=True)
self.assertNotEqual(result, 0, 'undeploy-target did not remove command as it should have')
- @OETestID(1366)
def test_devtool_build_image(self):
"""Test devtool build-image plugin"""
# Check preconditions
@@ -1348,7 +1323,6 @@
class DevtoolUpgradeTests(DevtoolBase):
- @OETestID(1367)
def test_devtool_upgrade(self):
# Check preconditions
self.assertTrue(not os.path.exists(self.workspacedir), 'This test cannot be run with a workspace directory under the build directory')
@@ -1393,7 +1367,6 @@
self.assertNotIn(recipe, result.output)
self.assertNotExists(os.path.join(self.workspacedir, 'recipes', recipe), 'Recipe directory should not exist after resetting')
- @OETestID(1433)
def test_devtool_upgrade_git(self):
# Check preconditions
self.assertTrue(not os.path.exists(self.workspacedir), 'This test cannot be run with a workspace directory under the build directory')
@@ -1430,7 +1403,6 @@
self.assertNotIn(recipe, result.output)
self.assertNotExists(os.path.join(self.workspacedir, 'recipes', recipe), 'Recipe directory should not exist after resetting')
- @OETestID(1352)
def test_devtool_layer_plugins(self):
"""Test that devtool can use plugins from other layers.
@@ -1456,7 +1428,6 @@
shutil.copy(srcfile, dstfile)
self.track_for_cleanup(dstfile)
- @OETestID(1625)
def test_devtool_load_plugin(self):
"""Test that devtool loads only the first found plugin in BBPATH."""
@@ -1524,7 +1495,6 @@
self.assertExists(os.path.join(olddir, patchfn), 'Original patch file does not exist')
return recipe, oldrecipefile, recipedir, olddir, newversion, patchfn
- @OETestID(1623)
def test_devtool_finish_upgrade_origlayer(self):
recipe, oldrecipefile, recipedir, olddir, newversion, patchfn = self._setup_test_devtool_finish_upgrade()
# Ensure the recipe is where we think it should be (so that cleanup doesn't trash things)
@@ -1543,7 +1513,6 @@
self.assertExists(os.path.join(newdir, patchfn), 'Patch file should have been copied into new directory but wasn\'t')
self.assertExists(os.path.join(newdir, '0002-Add-a-comment-to-the-code.patch'), 'New patch file should have been created but wasn\'t')
- @OETestID(1624)
def test_devtool_finish_upgrade_otherlayer(self):
recipe, oldrecipefile, recipedir, olddir, newversion, patchfn = self._setup_test_devtool_finish_upgrade()
# Ensure the recipe is where we think it should be (so that cleanup doesn't trash things)
@@ -1599,7 +1568,6 @@
self.fail('Unable to find recipe files directory for %s' % recipe)
return recipe, oldrecipefile, recipedir, filesdir
- @OETestID(1621)
def test_devtool_finish_modify_origlayer(self):
recipe, oldrecipefile, recipedir, filesdir = self._setup_test_devtool_finish_modify()
# Ensure the recipe is where we think it should be (so that cleanup doesn't trash things)
@@ -1614,7 +1582,6 @@
('??', '.*/.*-Add-a-comment-to-the-code.patch$')]
self._check_repo_status(recipedir, expected_status)
- @OETestID(1622)
def test_devtool_finish_modify_otherlayer(self):
recipe, oldrecipefile, recipedir, filesdir = self._setup_test_devtool_finish_modify()
# Ensure the recipe is where we think it should be (so that cleanup doesn't trash things)
@@ -1647,7 +1614,6 @@
if files:
self.fail('Unexpected file(s) copied next to bbappend: %s' % ', '.join(files))
- @OETestID(1626)
def test_devtool_rename(self):
# Check preconditions
self.assertTrue(not os.path.exists(self.workspacedir), 'This test cannot be run with a workspace directory under the build directory')
@@ -1708,7 +1674,6 @@
checkvars['SRC_URI'] = url
self._test_recipe_contents(newrecipefile, checkvars, [])
- @OETestID(1577)
def test_devtool_virtual_kernel_modify(self):
"""
Summary: The purpose of this test case is to verify that
diff --git a/poky/meta/lib/oeqa/selftest/cases/distrodata.py b/poky/meta/lib/oeqa/selftest/cases/distrodata.py
index 0b45471..68ba556 100644
--- a/poky/meta/lib/oeqa/selftest/cases/distrodata.py
+++ b/poky/meta/lib/oeqa/selftest/cases/distrodata.py
@@ -1,14 +1,16 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
from oeqa.selftest.case import OESelftestTestCase
from oeqa.utils.commands import runCmd, bitbake, get_bb_var, get_bb_vars
from oeqa.utils.decorators import testcase
from oeqa.utils.ftools import write_file
-from oeqa.core.decorator.oeid import OETestID
import oe.recipeutils
class Distrodata(OESelftestTestCase):
- @OETestID(1902)
def test_checkpkg(self):
"""
Summary: Test that upstream version checks do not regress
diff --git a/poky/meta/lib/oeqa/selftest/cases/eSDK.py b/poky/meta/lib/oeqa/selftest/cases/eSDK.py
index 8eb6ec6..862849a 100644
--- a/poky/meta/lib/oeqa/selftest/cases/eSDK.py
+++ b/poky/meta/lib/oeqa/selftest/cases/eSDK.py
@@ -1,9 +1,12 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
import tempfile
import shutil
import os
import glob
import time
-from oeqa.core.decorator.oeid import OETestID
from oeqa.selftest.case import OESelftestTestCase
from oeqa.utils.commands import runCmd, bitbake, get_bb_var, get_bb_vars
@@ -104,14 +107,12 @@
cls.tmpdirobj.cleanup()
super().tearDownClass()
- @OETestID(1602)
def test_install_libraries_headers(self):
pn_sstate = 'bc'
bitbake(pn_sstate)
cmd = "devtool sdk-install %s " % pn_sstate
oeSDKExtSelfTest.run_esdk_cmd(self.env_eSDK, self.tmpdir_eSDKQA, cmd)
- @OETestID(1603)
def test_image_generation_binary_feeds(self):
image = 'core-image-minimal'
cmd = "devtool build-image %s" % image
diff --git a/poky/meta/lib/oeqa/selftest/cases/efibootpartition.py b/poky/meta/lib/oeqa/selftest/cases/efibootpartition.py
index c6f39d5..a61cf9bc 100644
--- a/poky/meta/lib/oeqa/selftest/cases/efibootpartition.py
+++ b/poky/meta/lib/oeqa/selftest/cases/efibootpartition.py
@@ -2,6 +2,8 @@
#
# Copyright (c) 2017 Wind River Systems, Inc.
#
+# SPDX-License-Identifier: MIT
+#
import re
diff --git a/poky/meta/lib/oeqa/selftest/cases/fetch.py b/poky/meta/lib/oeqa/selftest/cases/fetch.py
index 4acc8cd..76cbadf 100644
--- a/poky/meta/lib/oeqa/selftest/cases/fetch.py
+++ b/poky/meta/lib/oeqa/selftest/cases/fetch.py
@@ -1,10 +1,12 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
import oe.path
from oeqa.selftest.case import OESelftestTestCase
from oeqa.utils.commands import bitbake
-from oeqa.core.decorator.oeid import OETestID
class Fetch(OESelftestTestCase):
- @OETestID(1058)
def test_git_mirrors(self):
"""
Verify that the git fetcher will fall back to the HTTP mirrors. The
diff --git a/poky/meta/lib/oeqa/selftest/cases/gotoolchain.py b/poky/meta/lib/oeqa/selftest/cases/gotoolchain.py
index 1e23257..3119520 100644
--- a/poky/meta/lib/oeqa/selftest/cases/gotoolchain.py
+++ b/poky/meta/lib/oeqa/selftest/cases/gotoolchain.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
import glob
import os
import shutil
diff --git a/poky/meta/lib/oeqa/selftest/cases/image_typedep.py b/poky/meta/lib/oeqa/selftest/cases/image_typedep.py
index 932c7f8..52e1080 100644
--- a/poky/meta/lib/oeqa/selftest/cases/image_typedep.py
+++ b/poky/meta/lib/oeqa/selftest/cases/image_typedep.py
@@ -1,14 +1,16 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
import os
from oeqa.selftest.case import OESelftestTestCase
from oeqa.utils.commands import bitbake
-from oeqa.core.decorator.oeid import OETestID
class ImageTypeDepTests(OESelftestTestCase):
# Verify that when specifying a IMAGE_TYPEDEP_ of the form "foo.bar" that
# the conversion type bar gets added as a dep as well
- @OETestID(1633)
def test_conversion_typedep_added(self):
self.write_recipeinc('emptytest', """
diff --git a/poky/meta/lib/oeqa/selftest/cases/imagefeatures.py b/poky/meta/lib/oeqa/selftest/cases/imagefeatures.py
index aed63e5..afc629f 100644
--- a/poky/meta/lib/oeqa/selftest/cases/imagefeatures.py
+++ b/poky/meta/lib/oeqa/selftest/cases/imagefeatures.py
@@ -1,6 +1,9 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
from oeqa.selftest.case import OESelftestTestCase
from oeqa.utils.commands import runCmd, bitbake, get_bb_var, runqemu
-from oeqa.core.decorator.oeid import OETestID
from oeqa.utils.sshcontrol import SSHControl
import os
import json
@@ -10,7 +13,6 @@
test_user = 'tester'
root_user = 'root'
- @OETestID(1107)
def test_non_root_user_can_connect_via_ssh_without_password(self):
"""
Summary: Check if non root user can connect via ssh without password
@@ -36,7 +38,6 @@
status, output = ssh.run("true")
self.assertEqual(status, 0, 'ssh to user %s failed with %s' % (user, output))
- @OETestID(1115)
def test_all_users_can_connect_via_ssh_without_password(self):
"""
Summary: Check if all users can connect via ssh without password
@@ -66,7 +67,6 @@
self.assertEqual(status, 0, 'ssh to user tester failed with %s' % output)
- @OETestID(1116)
def test_clutter_image_can_be_built(self):
"""
Summary: Check if clutter image can be built
@@ -79,7 +79,6 @@
# Build a core-image-clutter
bitbake('core-image-clutter')
- @OETestID(1117)
def test_wayland_support_in_image(self):
"""
Summary: Check Wayland support in image
@@ -97,7 +96,6 @@
# Build a core-image-weston
bitbake('core-image-weston')
- @OETestID(1497)
def test_bmap(self):
"""
Summary: Check bmap support
@@ -131,7 +129,6 @@
# check if the resulting gzip is valid
self.assertTrue(runCmd('gzip -t %s' % gzip_path))
- @OETestID(1903)
def test_hypervisor_fmts(self):
"""
Summary: Check various hypervisor formats
@@ -166,7 +163,6 @@
native_sysroot=sysroot)
self.assertTrue(json.loads(result.output).get('format') == itype)
- @OETestID(1905)
def test_long_chain_conversion(self):
"""
Summary: Check for chaining many CONVERSION_CMDs together
@@ -198,7 +194,6 @@
self.assertTrue(runCmd('cd %s;sha256sum -c %s.%s.sha256sum' %
(deploy_dir_image, link_name, conv)))
- @OETestID(1904)
def test_image_fstypes(self):
"""
Summary: Check if image of supported image fstypes can be built
diff --git a/poky/meta/lib/oeqa/selftest/cases/layerappend.py b/poky/meta/lib/oeqa/selftest/cases/layerappend.py
index 2fd5cdb..05e9426 100644
--- a/poky/meta/lib/oeqa/selftest/cases/layerappend.py
+++ b/poky/meta/lib/oeqa/selftest/cases/layerappend.py
@@ -1,9 +1,12 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
import os
from oeqa.selftest.case import OESelftestTestCase
from oeqa.utils.commands import runCmd, bitbake, get_bb_var
import oeqa.utils.ftools as ftools
-from oeqa.core.decorator.oeid import OETestID
class LayerAppendTests(OESelftestTestCase):
layerconf = """
@@ -49,7 +52,6 @@
ftools.remove_from_file(self.builddir + "/conf/bblayers.conf", self.layerappend)
super(LayerAppendTests, self).tearDownLocal()
- @OETestID(1196)
def test_layer_appends(self):
corebase = get_bb_var("COREBASE")
diff --git a/poky/meta/lib/oeqa/selftest/cases/liboe.py b/poky/meta/lib/oeqa/selftest/cases/liboe.py
index e846092..afe8f88 100644
--- a/poky/meta/lib/oeqa/selftest/cases/liboe.py
+++ b/poky/meta/lib/oeqa/selftest/cases/liboe.py
@@ -1,5 +1,8 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
from oeqa.selftest.case import OESelftestTestCase
-from oeqa.core.decorator.oeid import OETestID
from oeqa.utils.commands import get_bb_var, get_bb_vars, bitbake, runCmd
import oe.path
import os
@@ -11,7 +14,6 @@
super(LibOE, cls).setUpClass()
cls.tmp_dir = get_bb_var('TMPDIR')
- @OETestID(1635)
def test_copy_tree_special(self):
"""
Summary: oe.path.copytree() should copy files with special character
@@ -37,7 +39,6 @@
oe.path.remove(testloc)
- @OETestID(1636)
def test_copy_tree_xattr(self):
"""
Summary: oe.path.copytree() should preserve xattr on copied files
@@ -72,7 +73,6 @@
oe.path.remove(testloc)
- @OETestID(1634)
def test_copy_hardlink_tree_count(self):
"""
Summary: oe.path.copyhardlinktree() shouldn't miss out files
diff --git a/poky/meta/lib/oeqa/selftest/cases/lic_checksum.py b/poky/meta/lib/oeqa/selftest/cases/lic_checksum.py
index f992b37..bae935d 100644
--- a/poky/meta/lib/oeqa/selftest/cases/lic_checksum.py
+++ b/poky/meta/lib/oeqa/selftest/cases/lic_checksum.py
@@ -1,16 +1,18 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
import os
import tempfile
from oeqa.selftest.case import OESelftestTestCase
from oeqa.utils.commands import bitbake
from oeqa.utils import CommandError
-from oeqa.core.decorator.oeid import OETestID
class LicenseTests(OESelftestTestCase):
# Verify that changing a license file that has an absolute path causes
# the license qa to fail due to a mismatched md5sum.
- @OETestID(1197)
def test_nonmatching_checksum(self):
bitbake_cmd = '-c populate_lic emptytest'
error_msg = 'emptytest: The new md5 checksum is 8d777f385d3dfec8815d20f7496026dc'
diff --git a/poky/meta/lib/oeqa/selftest/cases/manifest.py b/poky/meta/lib/oeqa/selftest/cases/manifest.py
index 1460719..c0b25ab 100644
--- a/poky/meta/lib/oeqa/selftest/cases/manifest.py
+++ b/poky/meta/lib/oeqa/selftest/cases/manifest.py
@@ -1,8 +1,11 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
import os
from oeqa.selftest.case import OESelftestTestCase
from oeqa.utils.commands import get_bb_var, get_bb_vars, bitbake
-from oeqa.core.decorator.oeid import OETestID
class ManifestEntry:
'''A manifest item of a collection able to list missing packages'''
@@ -59,7 +62,6 @@
self.skipTest("{}: Cannot setup testing scenario"\
.format(self.classname))
- @OETestID(1380)
def test_SDK_manifest_entries(self):
'''Verifying the SDK manifest entries exist, this may take a build'''
@@ -126,7 +128,6 @@
self.logger.info(msg)
self.fail(logmsg)
- @OETestID(1381)
def test_image_manifest_entries(self):
'''Verifying the image manifest entries exist'''
diff --git a/poky/meta/lib/oeqa/selftest/cases/meta_ide.py b/poky/meta/lib/oeqa/selftest/cases/meta_ide.py
index 5df9d3e..f47bc70 100644
--- a/poky/meta/lib/oeqa/selftest/cases/meta_ide.py
+++ b/poky/meta/lib/oeqa/selftest/cases/meta_ide.py
@@ -1,7 +1,10 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
from oeqa.selftest.case import OESelftestTestCase
from oeqa.sdk.utils.sdkbuildproject import SDKBuildProject
from oeqa.utils.commands import bitbake, get_bb_vars, runCmd
-from oeqa.core.decorator.oeid import OETestID
import tempfile
import shutil
@@ -23,18 +26,15 @@
shutil.rmtree(cls.tmpdir_metaideQA, ignore_errors=True)
super(MetaIDE, cls).tearDownClass()
- @OETestID(1982)
def test_meta_ide_had_installed_meta_ide_support(self):
self.assertExists(self.environment_script_path)
- @OETestID(1983)
def test_meta_ide_can_compile_c_program(self):
runCmd('cp %s/test.c %s' % (self.tc.files_dir, self.tmpdir_metaideQA))
runCmd("cd %s; . %s; $CC test.c -lm" % (self.tmpdir_metaideQA, self.environment_script_path))
compiled_file = '%s/a.out' % self.tmpdir_metaideQA
self.assertExists(compiled_file)
- @OETestID(1984)
def test_meta_ide_can_build_cpio_project(self):
dl_dir = self.td.get('DL_DIR', None)
self.project = SDKBuildProject(self.tmpdir_metaideQA + "/cpio/", self.environment_script_path,
diff --git a/poky/meta/lib/oeqa/selftest/cases/multiconfig.py b/poky/meta/lib/oeqa/selftest/cases/multiconfig.py
index 3c36f6e..d21bf0a 100644
--- a/poky/meta/lib/oeqa/selftest/cases/multiconfig.py
+++ b/poky/meta/lib/oeqa/selftest/cases/multiconfig.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
import os
from oeqa.selftest.case import OESelftestTestCase
from oeqa.utils.commands import bitbake
diff --git a/poky/meta/lib/oeqa/selftest/cases/oelib/buildhistory.py b/poky/meta/lib/oeqa/selftest/cases/oelib/buildhistory.py
index 08675fd..6d80827 100644
--- a/poky/meta/lib/oeqa/selftest/cases/oelib/buildhistory.py
+++ b/poky/meta/lib/oeqa/selftest/cases/oelib/buildhistory.py
@@ -1,8 +1,11 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
import os
from oeqa.selftest.case import OESelftestTestCase
import tempfile
from oeqa.utils.commands import get_bb_var
-from oeqa.core.decorator.oeid import OETestID
class TestBlobParsing(OESelftestTestCase):
@@ -40,7 +43,6 @@
self.repo.git.add("--all")
self.repo.git.commit(message=msg)
- @OETestID(1859)
def test_blob_to_dict(self):
"""
Test convertion of git blobs to dictionary
@@ -53,7 +55,6 @@
self.assertEqual(valuesmap, blob_to_dict(blob),
"commit was not translated correctly to dictionary")
- @OETestID(1860)
def test_compare_dict_blobs(self):
"""
Test comparisson of dictionaries extracted from git blobs
@@ -74,7 +75,6 @@
var_changes = { x.fieldname : (x.oldvalue, x.newvalue) for x in change_records}
self.assertEqual(changesmap, var_changes, "Changes not reported correctly")
- @OETestID(1861)
def test_compare_dict_blobs_default(self):
"""
Test default values for comparisson of git blob dictionaries
diff --git a/poky/meta/lib/oeqa/selftest/cases/oelib/elf.py b/poky/meta/lib/oeqa/selftest/cases/oelib/elf.py
index 15c03f4..d0a2809 100644
--- a/poky/meta/lib/oeqa/selftest/cases/oelib/elf.py
+++ b/poky/meta/lib/oeqa/selftest/cases/oelib/elf.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
from unittest.case import TestCase
import oe.qa
diff --git a/poky/meta/lib/oeqa/selftest/cases/oelib/license.py b/poky/meta/lib/oeqa/selftest/cases/oelib/license.py
index d7f91fb..6ebbee5 100644
--- a/poky/meta/lib/oeqa/selftest/cases/oelib/license.py
+++ b/poky/meta/lib/oeqa/selftest/cases/oelib/license.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
from unittest.case import TestCase
import oe.license
diff --git a/poky/meta/lib/oeqa/selftest/cases/oelib/path.py b/poky/meta/lib/oeqa/selftest/cases/oelib/path.py
index e0eb813..a1cfa08 100644
--- a/poky/meta/lib/oeqa/selftest/cases/oelib/path.py
+++ b/poky/meta/lib/oeqa/selftest/cases/oelib/path.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
from unittest.case import TestCase
import oe, oe.path
import tempfile
diff --git a/poky/meta/lib/oeqa/selftest/cases/oelib/types.py b/poky/meta/lib/oeqa/selftest/cases/oelib/types.py
index 6b53aa6..7eb49e6 100644
--- a/poky/meta/lib/oeqa/selftest/cases/oelib/types.py
+++ b/poky/meta/lib/oeqa/selftest/cases/oelib/types.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
from unittest.case import TestCase
from oe.maketype import create
diff --git a/poky/meta/lib/oeqa/selftest/cases/oelib/utils.py b/poky/meta/lib/oeqa/selftest/cases/oelib/utils.py
index 789c6f7..a7214be 100644
--- a/poky/meta/lib/oeqa/selftest/cases/oelib/utils.py
+++ b/poky/meta/lib/oeqa/selftest/cases/oelib/utils.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
import sys
from unittest.case import TestCase
from contextlib import contextmanager
diff --git a/poky/meta/lib/oeqa/selftest/cases/oescripts.py b/poky/meta/lib/oeqa/selftest/cases/oescripts.py
index bcdc2d5..217afe3 100644
--- a/poky/meta/lib/oeqa/selftest/cases/oescripts.py
+++ b/poky/meta/lib/oeqa/selftest/cases/oescripts.py
@@ -1,11 +1,14 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
+import os
from oeqa.selftest.case import OESelftestTestCase
from oeqa.selftest.cases.buildhistory import BuildhistoryBase
from oeqa.utils.commands import Command, runCmd, bitbake, get_bb_var, get_test_layer
-from oeqa.core.decorator.oeid import OETestID
class BuildhistoryDiffTests(BuildhistoryBase):
- @OETestID(295)
def test_buildhistory_diff(self):
target = 'xcursor-transparent-theme'
self.run_buildhistory_operation(target, target_config="PR = \"r1\"", change_bh_location=True)
@@ -26,3 +29,36 @@
self.fail('Unexpected line:\n%s\nExpected line endings:\n %s' % (line, '\n '.join(expected_endlines)))
if expected_endlines:
self.fail('Missing expected line endings:\n %s' % '\n '.join(expected_endlines))
+
+class OEScriptTests(OESelftestTestCase):
+
+ @classmethod
+ def setUpClass(cls):
+ super(OEScriptTests, cls).setUpClass()
+ try:
+ import cairo
+ except ImportError:
+ cls.skipTest('Python module cairo is not present')
+ bitbake("core-image-minimal -c rootfs -f")
+ cls.tmpdir = get_bb_var('TMPDIR')
+ cls.buildstats = cls.tmpdir + "/buildstats/" + sorted(os.listdir(cls.tmpdir + "/buildstats"))[-1]
+
+ scripts_dir = os.path.join(get_bb_var('COREBASE'), 'scripts')
+
+class OEPybootchartguyTests(OEScriptTests):
+
+ def test_pybootchartguy_help(self):
+ runCmd('%s/pybootchartgui/pybootchartgui.py --help' % self.scripts_dir)
+
+ def test_pybootchartguy_to_generate_build_png_output(self):
+ runCmd('%s/pybootchartgui/pybootchartgui.py %s -o %s/charts -f png' % (self.scripts_dir, self.buildstats, self.tmpdir))
+ self.assertTrue(os.path.exists(self.tmpdir + "/charts.png"))
+
+ def test_pybootchartguy_to_generate_build_svg_output(self):
+ runCmd('%s/pybootchartgui/pybootchartgui.py %s -o %s/charts -f svg' % (self.scripts_dir, self.buildstats, self.tmpdir))
+ self.assertTrue(os.path.exists(self.tmpdir + "/charts.svg"))
+
+ def test_pybootchartguy_to_generate_build_pdf_output(self):
+ runCmd('%s/pybootchartgui/pybootchartgui.py %s -o %s/charts -f pdf' % (self.scripts_dir, self.buildstats, self.tmpdir))
+ self.assertTrue(os.path.exists(self.tmpdir + "/charts.pdf"))
+
diff --git a/poky/meta/lib/oeqa/selftest/cases/package.py b/poky/meta/lib/oeqa/selftest/cases/package.py
index 6596dab..7a00753 100644
--- a/poky/meta/lib/oeqa/selftest/cases/package.py
+++ b/poky/meta/lib/oeqa/selftest/cases/package.py
@@ -1,5 +1,8 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
from oeqa.selftest.case import OESelftestTestCase
-from oeqa.core.decorator.oeid import OETestID
from oeqa.utils.commands import bitbake, get_bb_vars, get_bb_var, runqemu
import stat
import subprocess, os
@@ -36,7 +39,6 @@
self.bindir = type(self).bindir
self.libdir = type(self).libdir
- @OETestID(1880)
def test_dpkg(self):
for ver1, ver2, sort in self.tests:
op = { -1: "<<", 0: "=", 1: ">>" }[sort]
@@ -53,7 +55,6 @@
status = subprocess.call((oe.path.join(self.bindir, "dpkg"), "--compare-versions", ver1, op, ver2))
self.assertNotEqual(status, 0, "%s %s %s failed" % (ver1, op, ver2))
- @OETestID(1881)
def test_opkg(self):
for ver1, ver2, sort in self.tests:
op = { -1: "<<", 0: "=", 1: ">>" }[sort]
@@ -70,7 +71,6 @@
status = subprocess.call((oe.path.join(self.bindir, "opkg"), "compare-versions", ver1, op, ver2))
self.assertNotEqual(status, 0, "%s %s %s failed" % (ver1, op, ver2))
- @OETestID(1882)
def test_rpm(self):
# Need to tell the Python bindings where to find its configuration
env = os.environ.copy()
diff --git a/poky/meta/lib/oeqa/selftest/cases/pkgdata.py b/poky/meta/lib/oeqa/selftest/cases/pkgdata.py
index aa05f40..833a180 100644
--- a/poky/meta/lib/oeqa/selftest/cases/pkgdata.py
+++ b/poky/meta/lib/oeqa/selftest/cases/pkgdata.py
@@ -1,10 +1,13 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
import os
import tempfile
import fnmatch
from oeqa.selftest.case import OESelftestTestCase
from oeqa.utils.commands import runCmd, bitbake, get_bb_var, get_bb_vars
-from oeqa.core.decorator.oeid import OETestID
class OePkgdataUtilTests(OESelftestTestCase):
@@ -16,7 +19,6 @@
bitbake('target-sdk-provides-dummy -c clean')
bitbake('busybox zlib m4')
- @OETestID(1203)
def test_lookup_pkg(self):
# Forward tests
result = runCmd('oe-pkgdata-util lookup-pkg "zlib busybox"')
@@ -35,7 +37,6 @@
self.assertEqual(result.status, 1, "Status different than 1. output: %s" % result.output)
self.assertEqual(result.output, 'ERROR: The following packages could not be found: nonexistentpkg')
- @OETestID(1205)
def test_read_value(self):
result = runCmd('oe-pkgdata-util read-value PN libz1')
self.assertEqual(result.output, 'zlib')
@@ -45,7 +46,6 @@
pkgsize = int(result.output.strip())
self.assertGreater(pkgsize, 1, "Size should be greater than 1. %s" % result.output)
- @OETestID(1198)
def test_find_path(self):
result = runCmd('oe-pkgdata-util find-path /lib/libz.so.1')
self.assertEqual(result.output, 'zlib: /lib/libz.so.1')
@@ -55,7 +55,6 @@
self.assertEqual(result.status, 1, "Status different than 1. output: %s" % result.output)
self.assertEqual(result.output, 'ERROR: Unable to find any package producing path /not/exist')
- @OETestID(1204)
def test_lookup_recipe(self):
result = runCmd('oe-pkgdata-util lookup-recipe "libz-staticdev busybox"')
self.assertEqual(result.output, 'zlib\nbusybox')
@@ -65,7 +64,6 @@
self.assertEqual(result.status, 1, "Status different than 1. output: %s" % result.output)
self.assertEqual(result.output, 'ERROR: The following packages could not be found: nonexistentpkg')
- @OETestID(1202)
def test_list_pkgs(self):
# No arguments
result = runCmd('oe-pkgdata-util list-pkgs')
@@ -109,7 +107,6 @@
pkglist = sorted(result.output.split())
self.assertEqual(pkglist, ['libz-dbg', 'libz-dev', 'libz-doc'], "Packages listed: %s" % result.output)
- @OETestID(1201)
def test_list_pkg_files(self):
def splitoutput(output):
files = {}
@@ -199,7 +196,6 @@
self.assertIn(os.path.join(mandir, 'man3/zlib.3'), files['libz-doc'])
self.assertIn(os.path.join(libdir, 'libz.a'), files['libz-staticdev'])
- @OETestID(1200)
def test_glob(self):
tempdir = tempfile.mkdtemp(prefix='pkgdataqa')
self.track_for_cleanup(tempdir)
@@ -219,7 +215,6 @@
self.assertNotIn('libz-dev', resultlist)
self.assertNotIn('libz-dbg', resultlist)
- @OETestID(1206)
def test_specify_pkgdatadir(self):
result = runCmd('oe-pkgdata-util -p %s lookup-pkg zlib' % get_bb_var('PKGDATA_DIR'))
self.assertEqual(result.output, 'libz1')
diff --git a/poky/meta/lib/oeqa/selftest/cases/prservice.py b/poky/meta/lib/oeqa/selftest/cases/prservice.py
index 796ad4f..fe1f24e 100644
--- a/poky/meta/lib/oeqa/selftest/cases/prservice.py
+++ b/poky/meta/lib/oeqa/selftest/cases/prservice.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
import os
import re
import shutil
@@ -6,7 +10,6 @@
import oeqa.utils.ftools as ftools
from oeqa.selftest.case import OESelftestTestCase
from oeqa.utils.commands import runCmd, bitbake, get_bb_var
-from oeqa.core.decorator.oeid import OETestID
from oeqa.utils.network import get_free_port
class BitbakePrTests(OESelftestTestCase):
@@ -88,39 +91,30 @@
self.assertTrue(pr_2 - pr_1 == 1, "Step between same pkg. revision is greater than 1")
- @OETestID(930)
def test_import_export_replace_db(self):
self.run_test_pr_export_import('m4')
- @OETestID(931)
def test_import_export_override_db(self):
self.run_test_pr_export_import('m4', replace_current_db=False)
- @OETestID(932)
def test_pr_service_rpm_arch_dep(self):
self.run_test_pr_service('m4', 'rpm', 'do_package')
- @OETestID(934)
def test_pr_service_deb_arch_dep(self):
self.run_test_pr_service('m4', 'deb', 'do_package')
- @OETestID(933)
def test_pr_service_ipk_arch_dep(self):
self.run_test_pr_service('m4', 'ipk', 'do_package')
- @OETestID(935)
def test_pr_service_rpm_arch_indep(self):
self.run_test_pr_service('xcursor-transparent-theme', 'rpm', 'do_package')
- @OETestID(937)
def test_pr_service_deb_arch_indep(self):
self.run_test_pr_service('xcursor-transparent-theme', 'deb', 'do_package')
- @OETestID(936)
def test_pr_service_ipk_arch_indep(self):
self.run_test_pr_service('xcursor-transparent-theme', 'ipk', 'do_package')
- @OETestID(1419)
def test_stopping_prservice_message(self):
port = get_free_port()
diff --git a/poky/meta/lib/oeqa/selftest/cases/recipetool.py b/poky/meta/lib/oeqa/selftest/cases/recipetool.py
index 06f980e..f1cb37b 100644
--- a/poky/meta/lib/oeqa/selftest/cases/recipetool.py
+++ b/poky/meta/lib/oeqa/selftest/cases/recipetool.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
import os
import shutil
import tempfile
@@ -5,7 +9,6 @@
from oeqa.utils.commands import runCmd, bitbake, get_bb_var
from oeqa.utils.commands import get_bb_vars, create_temp_layer
-from oeqa.core.decorator.oeid import OETestID
from oeqa.selftest.cases import devtool
templayerdir = None
@@ -89,7 +92,6 @@
for errorstr in checkerror:
self.assertIn(errorstr, result.output)
- @OETestID(1177)
def test_recipetool_appendfile_basic(self):
# Basic test
expectedlines = ['FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"\n',
@@ -97,14 +99,12 @@
_, output = self._try_recipetool_appendfile('base-files', '/etc/motd', self.testfile, '', expectedlines, ['motd'])
self.assertNotIn('WARNING: ', output)
- @OETestID(1183)
def test_recipetool_appendfile_invalid(self):
# Test some commands that should error
self._try_recipetool_appendfile_fail('/etc/passwd', self.testfile, ['ERROR: /etc/passwd cannot be handled by this tool', 'useradd', 'extrausers'])
self._try_recipetool_appendfile_fail('/etc/timestamp', self.testfile, ['ERROR: /etc/timestamp cannot be handled by this tool'])
self._try_recipetool_appendfile_fail('/dev/console', self.testfile, ['ERROR: /dev/console cannot be handled by this tool'])
- @OETestID(1176)
def test_recipetool_appendfile_alternatives(self):
# Now try with a file we know should be an alternative
# (this is very much a fake example, but one we know is reliably an alternative)
@@ -128,7 +128,6 @@
result = runCmd('diff -q %s %s' % (testfile2, copiedfile), ignore_status=True)
self.assertNotEqual(result.status, 0, 'New file should have been copied but was not %s' % result.output)
- @OETestID(1178)
def test_recipetool_appendfile_binary(self):
# Try appending a binary file
# /bin/ls can be a symlink to /usr/bin/ls
@@ -137,7 +136,6 @@
self.assertIn('WARNING: ', result.output)
self.assertIn('is a binary', result.output)
- @OETestID(1173)
def test_recipetool_appendfile_add(self):
# Try arbitrary file add to a recipe
expectedlines = ['FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"\n',
@@ -166,7 +164,6 @@
'}\n']
self._try_recipetool_appendfile('netbase', '/usr/share/scriptname', testfile2, '-r netbase', expectedlines, ['testfile', testfile2name])
- @OETestID(1174)
def test_recipetool_appendfile_add_bindir(self):
# Try arbitrary file add to a recipe, this time to a location such that should be installed as executable
expectedlines = ['FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"\n',
@@ -180,7 +177,6 @@
_, output = self._try_recipetool_appendfile('netbase', '/usr/bin/selftest-recipetool-testbin', self.testfile, '-r netbase', expectedlines, ['testfile'])
self.assertNotIn('WARNING: ', output)
- @OETestID(1175)
def test_recipetool_appendfile_add_machine(self):
# Try arbitrary file add to a recipe, this time to a location such that should be installed as executable
expectedlines = ['FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"\n',
@@ -196,7 +192,6 @@
_, output = self._try_recipetool_appendfile('netbase', '/usr/share/something', self.testfile, '-r netbase -m mymachine', expectedlines, ['mymachine/testfile'])
self.assertNotIn('WARNING: ', output)
- @OETestID(1184)
def test_recipetool_appendfile_orig(self):
# A file that's in SRC_URI and in do_install with the same name
expectedlines = ['FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"\n',
@@ -204,7 +199,6 @@
_, output = self._try_recipetool_appendfile('selftest-recipetool-appendfile', '/usr/share/selftest-replaceme-orig', self.testfile, '', expectedlines, ['selftest-replaceme-orig'])
self.assertNotIn('WARNING: ', output)
- @OETestID(1191)
def test_recipetool_appendfile_todir(self):
# A file that's in SRC_URI and in do_install with destination directory rather than file
expectedlines = ['FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"\n',
@@ -212,7 +206,6 @@
_, output = self._try_recipetool_appendfile('selftest-recipetool-appendfile', '/usr/share/selftest-replaceme-todir', self.testfile, '', expectedlines, ['selftest-replaceme-todir'])
self.assertNotIn('WARNING: ', output)
- @OETestID(1187)
def test_recipetool_appendfile_renamed(self):
# A file that's in SRC_URI with a different name to the destination file
expectedlines = ['FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"\n',
@@ -220,7 +213,6 @@
_, output = self._try_recipetool_appendfile('selftest-recipetool-appendfile', '/usr/share/selftest-replaceme-renamed', self.testfile, '', expectedlines, ['file1'])
self.assertNotIn('WARNING: ', output)
- @OETestID(1190)
def test_recipetool_appendfile_subdir(self):
# A file that's in SRC_URI in a subdir
expectedlines = ['FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"\n',
@@ -234,7 +226,6 @@
_, output = self._try_recipetool_appendfile('selftest-recipetool-appendfile', '/usr/share/selftest-replaceme-subdir', self.testfile, '', expectedlines, ['testfile'])
self.assertNotIn('WARNING: ', output)
- @OETestID(1189)
def test_recipetool_appendfile_src_glob(self):
# A file that's in SRC_URI as a glob
expectedlines = ['FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"\n',
@@ -248,7 +239,6 @@
_, output = self._try_recipetool_appendfile('selftest-recipetool-appendfile', '/usr/share/selftest-replaceme-src-globfile', self.testfile, '', expectedlines, ['testfile'])
self.assertNotIn('WARNING: ', output)
- @OETestID(1181)
def test_recipetool_appendfile_inst_glob(self):
# A file that's in do_install as a glob
expectedlines = ['FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"\n',
@@ -256,7 +246,6 @@
_, output = self._try_recipetool_appendfile('selftest-recipetool-appendfile', '/usr/share/selftest-replaceme-inst-globfile', self.testfile, '', expectedlines, ['selftest-replaceme-inst-globfile'])
self.assertNotIn('WARNING: ', output)
- @OETestID(1182)
def test_recipetool_appendfile_inst_todir_glob(self):
# A file that's in do_install as a glob with destination as a directory
expectedlines = ['FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"\n',
@@ -264,7 +253,6 @@
_, output = self._try_recipetool_appendfile('selftest-recipetool-appendfile', '/usr/share/selftest-replaceme-inst-todir-globfile', self.testfile, '', expectedlines, ['selftest-replaceme-inst-todir-globfile'])
self.assertNotIn('WARNING: ', output)
- @OETestID(1185)
def test_recipetool_appendfile_patch(self):
# A file that's added by a patch in SRC_URI
expectedlines = ['FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"\n',
@@ -283,7 +271,6 @@
else:
self.fail('Patch warning not found in output:\n%s' % output)
- @OETestID(1188)
def test_recipetool_appendfile_script(self):
# Now, a file that's in SRC_URI but installed by a script (so no mention in do_install)
expectedlines = ['FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"\n',
@@ -297,7 +284,6 @@
_, output = self._try_recipetool_appendfile('selftest-recipetool-appendfile', '/usr/share/selftest-replaceme-scripted', self.testfile, '', expectedlines, ['testfile'])
self.assertNotIn('WARNING: ', output)
- @OETestID(1180)
def test_recipetool_appendfile_inst_func(self):
# A file that's installed from a function called by do_install
expectedlines = ['FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"\n',
@@ -305,7 +291,6 @@
_, output = self._try_recipetool_appendfile('selftest-recipetool-appendfile', '/usr/share/selftest-replaceme-inst-func', self.testfile, '', expectedlines, ['selftest-replaceme-inst-func'])
self.assertNotIn('WARNING: ', output)
- @OETestID(1186)
def test_recipetool_appendfile_postinstall(self):
# A file that's created by a postinstall script (and explicitly mentioned in it)
# First try without specifying recipe
@@ -321,7 +306,6 @@
'}\n']
_, output = self._try_recipetool_appendfile('selftest-recipetool-appendfile', '/usr/share/selftest-replaceme-postinst', self.testfile, '-r selftest-recipetool-appendfile', expectedlines, ['testfile'])
- @OETestID(1179)
def test_recipetool_appendfile_extlayer(self):
# Try creating a bbappend in a layer that's not in bblayers.conf and has a different structure
exttemplayerdir = os.path.join(self.tempdir, 'extlayer')
@@ -337,7 +321,6 @@
'metadata/recipes/recipes-test/selftest-recipetool-appendfile/selftest-recipetool-appendfile/selftest-replaceme-orig']
self.assertEqual(sorted(createdfiles), sorted(expectedfiles))
- @OETestID(1192)
def test_recipetool_appendfile_wildcard(self):
def try_appendfile_wc(options):
@@ -362,7 +345,6 @@
filename = try_appendfile_wc('-w')
self.assertEqual(filename, recipefn.split('_')[0] + '_%.bbappend')
- @OETestID(1193)
def test_recipetool_create(self):
# Try adding a recipe
tempsrc = os.path.join(self.tempdir, 'srctree')
@@ -379,7 +361,6 @@
checkvars['SRC_URI[sha256sum]'] = '2e6a401cac9024db2288297e3be1a8ab60e7401ba8e91225218aaf4a27e82a07'
self._test_recipe_contents(recipefile, checkvars, [])
- @OETestID(1194)
def test_recipetool_create_git(self):
if 'x11' not in get_bb_var('DISTRO_FEATURES'):
self.skipTest('Test requires x11 as distro feature')
@@ -402,7 +383,6 @@
inherits = ['autotools', 'pkgconfig']
self._test_recipe_contents(recipefile, checkvars, inherits)
- @OETestID(1392)
def test_recipetool_create_simple(self):
# Try adding a recipe
temprecipe = os.path.join(self.tempdir, 'recipe')
@@ -425,7 +405,6 @@
inherits = ['autotools']
self._test_recipe_contents(os.path.join(temprecipe, dirlist[0]), checkvars, inherits)
- @OETestID(1418)
def test_recipetool_create_cmake(self):
bitbake('-c packagedata gtk+')
@@ -445,7 +424,6 @@
inherits = ['cmake', 'python-dir', 'gettext', 'pkgconfig']
self._test_recipe_contents(recipefile, checkvars, inherits)
- @OETestID(1638)
def test_recipetool_create_github(self):
# Basic test to see if github URL mangling works
temprecipe = os.path.join(self.tempdir, 'recipe')
@@ -460,7 +438,6 @@
inherits = ['setuptools']
self._test_recipe_contents(recipefile, checkvars, inherits)
- @OETestID(1639)
def test_recipetool_create_github_tarball(self):
# Basic test to ensure github URL mangling doesn't apply to release tarballs
temprecipe = os.path.join(self.tempdir, 'recipe')
@@ -476,7 +453,6 @@
inherits = ['setuptools']
self._test_recipe_contents(recipefile, checkvars, inherits)
- @OETestID(1637)
def test_recipetool_create_git_http(self):
# Basic test to check http git URL mangling works
temprecipe = os.path.join(self.tempdir, 'recipe')
@@ -504,7 +480,6 @@
shutil.copy(srcfile, dstfile)
self.track_for_cleanup(dstfile)
- @OETestID(1640)
def test_recipetool_load_plugin(self):
"""Test that recipetool loads only the first found plugin in BBPATH."""
@@ -626,11 +601,9 @@
class RecipetoolAppendsrcTests(RecipetoolAppendsrcBase):
- @OETestID(1273)
def test_recipetool_appendsrcfile_basic(self):
self._test_appendsrcfile('base-files', 'a-file')
- @OETestID(1274)
def test_recipetool_appendsrcfile_basic_wildcard(self):
testrecipe = 'base-files'
self._test_appendsrcfile(testrecipe, 'a-file', options='-w')
@@ -638,15 +611,12 @@
bbappendfile = self._check_bbappend(testrecipe, recipefile, self.templayerdir)
self.assertEqual(os.path.basename(bbappendfile), '%s_%%.bbappend' % testrecipe)
- @OETestID(1281)
def test_recipetool_appendsrcfile_subdir_basic(self):
self._test_appendsrcfile('base-files', 'a-file', 'tmp')
- @OETestID(1282)
def test_recipetool_appendsrcfile_subdir_basic_dirdest(self):
self._test_appendsrcfile('base-files', destdir='tmp')
- @OETestID(1280)
def test_recipetool_appendsrcfile_srcdir_basic(self):
testrecipe = 'bash'
bb_vars = get_bb_vars(['S', 'WORKDIR'], testrecipe)
@@ -655,14 +625,12 @@
subdir = os.path.relpath(srcdir, workdir)
self._test_appendsrcfile(testrecipe, 'a-file', srcdir=subdir)
- @OETestID(1275)
def test_recipetool_appendsrcfile_existing_in_src_uri(self):
testrecipe = 'base-files'
filepath = self._get_first_file_uri(testrecipe)
self.assertTrue(filepath, 'Unable to test, no file:// uri found in SRC_URI for %s' % testrecipe)
self._test_appendsrcfile(testrecipe, filepath, has_src_uri=False)
- @OETestID(1276)
def test_recipetool_appendsrcfile_existing_in_src_uri_diff_params(self):
testrecipe = 'base-files'
subdir = 'tmp'
@@ -672,7 +640,6 @@
output = self._test_appendsrcfile(testrecipe, filepath, subdir, has_src_uri=False)
self.assertTrue(any('with different parameters' in l for l in output))
- @OETestID(1277)
def test_recipetool_appendsrcfile_replace_file_srcdir(self):
testrecipe = 'bash'
filepath = 'Makefile.in'
@@ -685,7 +652,6 @@
bitbake('%s:do_unpack' % testrecipe)
self.assertEqual(open(self.testfile, 'r').read(), open(os.path.join(srcdir, filepath), 'r').read())
- @OETestID(1278)
def test_recipetool_appendsrcfiles_basic(self, destdir=None):
newfiles = [self.testfile]
for i in range(1, 5):
@@ -695,6 +661,5 @@
newfiles.append(testfile)
self._test_appendsrcfiles('gcc', newfiles, destdir=destdir, options='-W')
- @OETestID(1279)
def test_recipetool_appendsrcfiles_basic_subdir(self):
self.test_recipetool_appendsrcfiles_basic(destdir='testdir')
diff --git a/poky/meta/lib/oeqa/selftest/cases/recipeutils.py b/poky/meta/lib/oeqa/selftest/cases/recipeutils.py
index dd2f558..7478703 100644
--- a/poky/meta/lib/oeqa/selftest/cases/recipeutils.py
+++ b/poky/meta/lib/oeqa/selftest/cases/recipeutils.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
import os
import re
import time
@@ -6,7 +10,6 @@
from oeqa.selftest.case import OESelftestTestCase
from oeqa.utils.commands import runCmd, get_test_layer
-from oeqa.core.decorator.oeid import OETestID
def setUpModule():
diff --git a/poky/meta/lib/oeqa/selftest/cases/resulttooltests.py b/poky/meta/lib/oeqa/selftest/cases/resulttooltests.py
index 0a089c0..10eb9c1 100644
--- a/poky/meta/lib/oeqa/selftest/cases/resulttooltests.py
+++ b/poky/meta/lib/oeqa/selftest/cases/resulttooltests.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
import os
import sys
basepath = os.path.abspath(os.path.dirname(__file__) + '/../../../../../')
diff --git a/poky/meta/lib/oeqa/selftest/cases/runcmd.py b/poky/meta/lib/oeqa/selftest/cases/runcmd.py
index a1615cf..3755764 100644
--- a/poky/meta/lib/oeqa/selftest/cases/runcmd.py
+++ b/poky/meta/lib/oeqa/selftest/cases/runcmd.py
@@ -1,7 +1,10 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
from oeqa.selftest.case import OESelftestTestCase
from oeqa.utils.commands import runCmd
from oeqa.utils import CommandError
-from oeqa.core.decorator.oeid import OETestID
import subprocess
import threading
@@ -27,60 +30,49 @@
TIMEOUT = 5
DELTA = 3
- @OETestID(1916)
def test_result_okay(self):
result = runCmd("true")
self.assertEqual(result.status, 0)
- @OETestID(1915)
def test_result_false(self):
result = runCmd("false", ignore_status=True)
self.assertEqual(result.status, 1)
- @OETestID(1917)
def test_shell(self):
# A shell is used for all string commands.
result = runCmd("false; true", ignore_status=True)
self.assertEqual(result.status, 0)
- @OETestID(1910)
def test_no_shell(self):
self.assertRaises(FileNotFoundError,
runCmd, "false; true", shell=False)
- @OETestID(1906)
def test_list_not_found(self):
self.assertRaises(FileNotFoundError,
runCmd, ["false; true"])
- @OETestID(1907)
def test_list_okay(self):
result = runCmd(["true"])
self.assertEqual(result.status, 0)
- @OETestID(1913)
def test_result_assertion(self):
self.assertRaisesRegexp(AssertionError, "Command 'echo .* false' returned non-zero exit status 1:\nfoobar",
runCmd, "echo foobar >&2; false", shell=True)
- @OETestID(1914)
def test_result_exception(self):
self.assertRaisesRegexp(CommandError, "Command 'echo .* false' returned non-zero exit status 1 with output: foobar",
runCmd, "echo foobar >&2; false", shell=True, assert_error=False)
- @OETestID(1911)
def test_output(self):
result = runCmd("echo stdout; echo stderr >&2", shell=True)
self.assertEqual("stdout\nstderr", result.output)
self.assertEqual("", result.error)
- @OETestID(1912)
def test_output_split(self):
result = runCmd("echo stdout; echo stderr >&2", shell=True, stderr=subprocess.PIPE)
self.assertEqual("stdout", result.output)
self.assertEqual("stderr", result.error)
- @OETestID(1920)
def test_timeout(self):
numthreads = threading.active_count()
start = time.time()
@@ -91,7 +83,6 @@
self.assertLess(end - start, self.TIMEOUT + self.DELTA)
self.assertEqual(numthreads, threading.active_count())
- @OETestID(1921)
def test_timeout_split(self):
numthreads = threading.active_count()
start = time.time()
@@ -102,14 +93,12 @@
self.assertLess(end - start, self.TIMEOUT + self.DELTA)
self.assertEqual(numthreads, threading.active_count())
- @OETestID(1918)
def test_stdin(self):
numthreads = threading.active_count()
result = runCmd("cat", data=b"hello world", timeout=self.TIMEOUT)
self.assertEqual("hello world", result.output)
self.assertEqual(numthreads, threading.active_count())
- @OETestID(1919)
def test_stdin_timeout(self):
numthreads = threading.active_count()
start = time.time()
@@ -119,14 +108,12 @@
self.assertLess(end - start, self.TIMEOUT + self.DELTA)
self.assertEqual(numthreads, threading.active_count())
- @OETestID(1908)
def test_log(self):
log = MemLogger()
result = runCmd("echo stdout; echo stderr >&2", shell=True, output_log=log)
self.assertEqual(["Running: echo stdout; echo stderr >&2", "stdout", "stderr"], log.info_msgs)
self.assertEqual([], log.error_msgs)
- @OETestID(1909)
def test_log_split(self):
log = MemLogger()
result = runCmd("echo stdout; echo stderr >&2", shell=True, output_log=log, stderr=subprocess.PIPE)
diff --git a/poky/meta/lib/oeqa/selftest/cases/runqemu.py b/poky/meta/lib/oeqa/selftest/cases/runqemu.py
index f69d470..b88ae30 100644
--- a/poky/meta/lib/oeqa/selftest/cases/runqemu.py
+++ b/poky/meta/lib/oeqa/selftest/cases/runqemu.py
@@ -1,6 +1,8 @@
#
# Copyright (c) 2017 Wind River Systems, Inc.
#
+# SPDX-License-Identifier: MIT
+#
import re
import tempfile
@@ -8,7 +10,6 @@
import oe.types
from oeqa.selftest.case import OESelftestTestCase
from oeqa.utils.commands import bitbake, runqemu, get_bb_var, runCmd
-from oeqa.core.decorator.oeid import OETestID
class RunqemuTests(OESelftestTestCase):
"""Runqemu test class"""
@@ -42,7 +43,6 @@
bitbake(self.recipe)
RunqemuTests.image_is_ready = True
- @OETestID(2001)
def test_boot_machine(self):
"""Test runqemu machine"""
cmd = "%s %s" % (self.cmd_common, self.machine)
@@ -50,7 +50,6 @@
with open(qemu.qemurunnerlog) as f:
self.assertTrue(qemu.runner.logged, "Failed: %s, %s" % (cmd, f.read()))
- @OETestID(2002)
def test_boot_machine_ext4(self):
"""Test runqemu machine ext4"""
cmd = "%s %s ext4" % (self.cmd_common, self.machine)
@@ -58,7 +57,6 @@
with open(qemu.qemurunnerlog) as f:
self.assertIn('rootfs.ext4', f.read(), "Failed: %s" % cmd)
- @OETestID(2003)
def test_boot_machine_iso(self):
"""Test runqemu machine iso"""
cmd = "%s %s iso" % (self.cmd_common, self.machine)
@@ -66,7 +64,6 @@
with open(qemu.qemurunnerlog) as f:
self.assertIn('media=cdrom', f.read(), "Failed: %s" % cmd)
- @OETestID(2004)
def test_boot_recipe_image(self):
"""Test runqemu recipe-image"""
cmd = "%s %s" % (self.cmd_common, self.recipe)
@@ -75,7 +72,6 @@
self.assertTrue(qemu.runner.logged, "Failed: %s, %s" % (cmd, f.read()))
- @OETestID(2005)
def test_boot_recipe_image_vmdk(self):
"""Test runqemu recipe-image vmdk"""
cmd = "%s %s wic.vmdk" % (self.cmd_common, self.recipe)
@@ -83,7 +79,6 @@
with open(qemu.qemurunnerlog) as f:
self.assertIn('format=vmdk', f.read(), "Failed: %s" % cmd)
- @OETestID(2006)
def test_boot_recipe_image_vdi(self):
"""Test runqemu recipe-image vdi"""
cmd = "%s %s wic.vdi" % (self.cmd_common, self.recipe)
@@ -91,7 +86,6 @@
with open(qemu.qemurunnerlog) as f:
self.assertIn('format=vdi', f.read(), "Failed: %s" % cmd)
- @OETestID(2007)
def test_boot_deploy(self):
"""Test runqemu deploy_dir_image"""
cmd = "%s %s" % (self.cmd_common, self.deploy_dir_image)
@@ -100,7 +94,6 @@
self.assertTrue(qemu.runner.logged, "Failed: %s, %s" % (cmd, f.read()))
- @OETestID(2008)
def test_boot_deploy_hddimg(self):
"""Test runqemu deploy_dir_image hddimg"""
cmd = "%s %s hddimg" % (self.cmd_common, self.deploy_dir_image)
@@ -108,7 +101,6 @@
with open(qemu.qemurunnerlog) as f:
self.assertTrue(re.search('file=.*.hddimg', f.read()), "Failed: %s, %s" % (cmd, f.read()))
- @OETestID(2009)
def test_boot_machine_slirp(self):
"""Test runqemu machine slirp"""
cmd = "%s slirp %s" % (self.cmd_common, self.machine)
@@ -116,7 +108,6 @@
with open(qemu.qemurunnerlog) as f:
self.assertIn(' -netdev user', f.read(), "Failed: %s" % cmd)
- @OETestID(2009)
def test_boot_machine_slirp_qcow2(self):
"""Test runqemu machine slirp qcow2"""
cmd = "%s slirp wic.qcow2 %s" % (self.cmd_common, self.machine)
@@ -124,7 +115,6 @@
with open(qemu.qemurunnerlog) as f:
self.assertIn('format=qcow2', f.read(), "Failed: %s" % cmd)
- @OETestID(2010)
def test_boot_qemu_boot(self):
"""Test runqemu /path/to/image.qemuboot.conf"""
qemuboot_conf = "%s-%s.qemuboot.conf" % (self.recipe, self.machine)
@@ -136,7 +126,6 @@
with open(qemu.qemurunnerlog) as f:
self.assertTrue(qemu.runner.logged, "Failed: %s, %s" % (cmd, f.read()))
- @OETestID(2011)
def test_boot_rootfs(self):
"""Test runqemu /path/to/rootfs.ext4"""
rootfs = "%s-%s.ext4" % (self.recipe, self.machine)
diff --git a/poky/meta/lib/oeqa/selftest/cases/runtime_test.py b/poky/meta/lib/oeqa/selftest/cases/runtime_test.py
index 6c25bb9..d817b75 100644
--- a/poky/meta/lib/oeqa/selftest/cases/runtime_test.py
+++ b/poky/meta/lib/oeqa/selftest/cases/runtime_test.py
@@ -1,7 +1,10 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
from oeqa.selftest.case import OESelftestTestCase
from oeqa.utils.commands import runCmd, bitbake, get_bb_var, get_bb_vars, runqemu
from oeqa.utils.sshcontrol import SSHControl
-from oeqa.core.decorator.oeid import OETestID
import os
import re
import tempfile
@@ -15,7 +18,6 @@
runCmd("rm -rf /tmp/sdk")
super(TestExport, cls).tearDownClass()
- @OETestID(1499)
def test_testexport_basic(self):
"""
Summary: Check basic testexport functionality with only ping test enabled.
@@ -55,7 +57,6 @@
# Verify ping test was succesful
self.assertEqual(0, result.status, 'oe-test runtime returned a non 0 status')
- @OETestID(1641)
def test_testexport_sdk(self):
"""
Summary: Check sdk functionality for testexport.
@@ -110,7 +111,6 @@
class TestImage(OESelftestTestCase):
- @OETestID(1644)
def test_testimage_install(self):
"""
Summary: Check install packages functionality for testimage/testexport.
@@ -131,7 +131,6 @@
bitbake('core-image-full-cmdline socat')
bitbake('-c testimage core-image-full-cmdline')
- @OETestID(1883)
def test_testimage_dnf(self):
"""
Summary: Check package feeds functionality for dnf
@@ -169,7 +168,6 @@
# remove the oeqa-feed-sign temporal directory
shutil.rmtree(self.gpg_home, ignore_errors=True)
- @OETestID(1883)
def test_testimage_virgl_gtk(self):
"""
Summary: Check host-assisted accelerate OpenGL functionality in qemu with gtk frontend
@@ -200,7 +198,6 @@
bitbake('core-image-minimal')
bitbake('-c testimage core-image-minimal')
- @OETestID(1883)
def test_testimage_virgl_headless(self):
"""
Summary: Check host-assisted accelerate OpenGL functionality in qemu with egl-headless frontend
@@ -235,8 +232,6 @@
bitbake('-c testimage core-image-minimal')
class Postinst(OESelftestTestCase):
- @OETestID(1540)
- @OETestID(1545)
def test_postinst_rootfs_and_boot(self):
"""
Summary: The purpose of this test case is to verify Post-installation
diff --git a/poky/meta/lib/oeqa/selftest/cases/selftest.py b/poky/meta/lib/oeqa/selftest/cases/selftest.py
index 4b3cb14..af080dc 100644
--- a/poky/meta/lib/oeqa/selftest/cases/selftest.py
+++ b/poky/meta/lib/oeqa/selftest/cases/selftest.py
@@ -1,12 +1,14 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
import importlib
from oeqa.utils.commands import runCmd
import oeqa.selftest
from oeqa.selftest.case import OESelftestTestCase
-from oeqa.core.decorator.oeid import OETestID
class ExternalLayer(OESelftestTestCase):
- @OETestID(1885)
def test_list_imported(self):
"""
Summary: Checks functionality to import tests from other layers.
diff --git a/poky/meta/lib/oeqa/selftest/cases/signing.py b/poky/meta/lib/oeqa/selftest/cases/signing.py
index 4fa99ac..9c710bd 100644
--- a/poky/meta/lib/oeqa/selftest/cases/signing.py
+++ b/poky/meta/lib/oeqa/selftest/cases/signing.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
from oeqa.selftest.case import OESelftestTestCase
from oeqa.utils.commands import runCmd, bitbake, get_bb_var, get_bb_vars
import os
@@ -7,7 +11,6 @@
import shutil
import tempfile
from contextlib import contextmanager
-from oeqa.core.decorator.oeid import OETestID
from oeqa.utils.ftools import write_file
@@ -51,7 +54,6 @@
os.environ[e] = origenv[e]
os.chdir(builddir)
- @OETestID(1362)
def test_signing_packages(self):
"""
Summary: Test that packages can be signed in the package feed
@@ -116,7 +118,6 @@
bitbake('core-image-minimal')
- @OETestID(1382)
def test_signing_sstate_archive(self):
"""
Summary: Test that sstate archives can be signed
@@ -169,7 +170,6 @@
class LockedSignatures(OESelftestTestCase):
- @OETestID(1420)
def test_locked_signatures(self):
"""
Summary: Test locked signature mechanism
diff --git a/poky/meta/lib/oeqa/selftest/cases/sstate.py b/poky/meta/lib/oeqa/selftest/cases/sstate.py
index bc2fdbd..410dec6 100644
--- a/poky/meta/lib/oeqa/selftest/cases/sstate.py
+++ b/poky/meta/lib/oeqa/selftest/cases/sstate.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
import datetime
import unittest
import os
diff --git a/poky/meta/lib/oeqa/selftest/cases/sstatetests.py b/poky/meta/lib/oeqa/selftest/cases/sstatetests.py
index 938e654..2867cb7 100644
--- a/poky/meta/lib/oeqa/selftest/cases/sstatetests.py
+++ b/poky/meta/lib/oeqa/selftest/cases/sstatetests.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
import os
import shutil
import glob
@@ -7,7 +11,6 @@
from oeqa.selftest.case import OESelftestTestCase
from oeqa.utils.commands import runCmd, bitbake, get_bb_var, get_test_layer, create_temp_layer
from oeqa.selftest.cases.sstate import SStateBase
-from oeqa.core.decorator.oeid import OETestID
import bb.siggen
@@ -73,19 +76,15 @@
else:
self.assertTrue(not file_tracker , msg="Found sstate files in the wrong place for: %s (found %s)" % (', '.join(map(str, targets)), str(file_tracker)))
- @OETestID(975)
def test_sstate_creation_distro_specific_pass(self):
self.run_test_sstate_creation(['binutils-cross-'+ self.tune_arch, 'binutils-native'], distro_specific=True, distro_nonspecific=False, temp_sstate_location=True)
- @OETestID(1374)
def test_sstate_creation_distro_specific_fail(self):
self.run_test_sstate_creation(['binutils-cross-'+ self.tune_arch, 'binutils-native'], distro_specific=False, distro_nonspecific=True, temp_sstate_location=True, should_pass=False)
- @OETestID(976)
def test_sstate_creation_distro_nonspecific_pass(self):
self.run_test_sstate_creation(['linux-libc-headers'], distro_specific=False, distro_nonspecific=True, temp_sstate_location=True)
- @OETestID(1375)
def test_sstate_creation_distro_nonspecific_fail(self):
self.run_test_sstate_creation(['linux-libc-headers'], distro_specific=True, distro_nonspecific=False, temp_sstate_location=True, should_pass=False)
@@ -106,17 +105,14 @@
tgz_removed = self.search_sstate('|'.join(map(str, [s + r'.*?\.tgz$' for s in targets])), distro_specific, distro_nonspecific)
self.assertTrue(not tgz_removed, msg="do_cleansstate didn't remove .tgz sstate files for: %s (%s)" % (', '.join(map(str, targets)), str(tgz_removed)))
- @OETestID(977)
def test_cleansstate_task_distro_specific_nonspecific(self):
targets = ['binutils-cross-'+ self.tune_arch, 'binutils-native']
targets.append('linux-libc-headers')
self.run_test_cleansstate_task(targets, distro_specific=True, distro_nonspecific=True, temp_sstate_location=True)
- @OETestID(1376)
def test_cleansstate_task_distro_nonspecific(self):
self.run_test_cleansstate_task(['linux-libc-headers'], distro_specific=False, distro_nonspecific=True, temp_sstate_location=True)
- @OETestID(1377)
def test_cleansstate_task_distro_specific(self):
targets = ['binutils-cross-'+ self.tune_arch, 'binutils-native']
targets.append('linux-libc-headers')
@@ -155,15 +151,12 @@
created_once = [x for x in file_tracker_2 if x not in file_tracker_1]
self.assertTrue(created_once == [], msg="The following sstate files ware created only in the second run: %s" % ', '.join(map(str, created_once)))
- @OETestID(175)
def test_rebuild_distro_specific_sstate_cross_native_targets(self):
self.run_test_rebuild_distro_specific_sstate(['binutils-cross-' + self.tune_arch, 'binutils-native'], temp_sstate_location=True)
- @OETestID(1372)
def test_rebuild_distro_specific_sstate_cross_target(self):
self.run_test_rebuild_distro_specific_sstate(['binutils-cross-' + self.tune_arch], temp_sstate_location=True)
- @OETestID(1373)
def test_rebuild_distro_specific_sstate_native_target(self):
self.run_test_rebuild_distro_specific_sstate(['binutils-native'], temp_sstate_location=True)
@@ -210,7 +203,6 @@
expected_not_actual = [x for x in expected_remaining_sstate if x not in actual_remaining_sstate]
self.assertFalse(expected_not_actual, msg="Extra files ware removed: %s" ', '.join(map(str, expected_not_actual)))
- @OETestID(973)
def test_sstate_cache_management_script_using_pr_1(self):
global_config = []
target_config = []
@@ -218,7 +210,6 @@
target_config.append('PR = "0"')
self.run_test_sstate_cache_management_script('m4', global_config, target_config, ignore_patterns=['populate_lic'])
- @OETestID(978)
def test_sstate_cache_management_script_using_pr_2(self):
global_config = []
target_config = []
@@ -228,7 +219,6 @@
target_config.append('PR = "1"')
self.run_test_sstate_cache_management_script('m4', global_config, target_config, ignore_patterns=['populate_lic'])
- @OETestID(979)
def test_sstate_cache_management_script_using_pr_3(self):
global_config = []
target_config = []
@@ -240,7 +230,6 @@
target_config.append('PR = "1"')
self.run_test_sstate_cache_management_script('m4', global_config, target_config, ignore_patterns=['populate_lic'])
- @OETestID(974)
def test_sstate_cache_management_script_using_machine(self):
global_config = []
target_config = []
@@ -250,7 +239,6 @@
target_config.append('')
self.run_test_sstate_cache_management_script('m4', global_config, target_config, ignore_patterns=['populate_lic'])
- @OETestID(1270)
def test_sstate_32_64_same_hash(self):
"""
The sstate checksums for both native and target should not vary whether
@@ -299,7 +287,6 @@
self.assertCountEqual(files1, files2)
- @OETestID(1271)
def test_sstate_nativelsbstring_same_hash(self):
"""
The sstate checksums should be independent of whichever NATIVELSBSTRING is
@@ -333,7 +320,6 @@
self.maxDiff = None
self.assertCountEqual(files1, files2)
- @OETestID(1368)
def test_sstate_allarch_samesigs(self):
"""
The sstate checksums of allarch packages should be independent of whichever
@@ -354,7 +340,6 @@
"""
self.sstate_allarch_samesigs(configA, configB)
- @OETestID(1645)
def test_sstate_nativesdk_samesigs_multilib(self):
"""
check nativesdk stamps are the same between the two MACHINE values.
@@ -405,7 +390,6 @@
self.maxDiff = None
self.assertEqual(files1, files2)
- @OETestID(1369)
def test_sstate_sametune_samesigs(self):
"""
The sstate checksums of two identical machines (using the same tune) should be the
@@ -452,7 +436,6 @@
self.assertCountEqual(files1, files2)
- @OETestID(1498)
def test_sstate_noop_samesigs(self):
"""
The sstate checksums of two builds with these variables changed or
diff --git a/poky/meta/lib/oeqa/selftest/cases/tinfoil.py b/poky/meta/lib/oeqa/selftest/cases/tinfoil.py
index f889a47..42a1b6b 100644
--- a/poky/meta/lib/oeqa/selftest/cases/tinfoil.py
+++ b/poky/meta/lib/oeqa/selftest/cases/tinfoil.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
import os
import re
import time
@@ -6,12 +10,10 @@
from oeqa.selftest.case import OESelftestTestCase
from oeqa.utils.commands import runCmd
-from oeqa.core.decorator.oeid import OETestID
class TinfoilTests(OESelftestTestCase):
""" Basic tests for the tinfoil API """
- @OETestID(1568)
def test_getvar(self):
with bb.tinfoil.Tinfoil() as tinfoil:
tinfoil.prepare(True)
@@ -19,7 +21,6 @@
if not machine:
self.fail('Unable to get MACHINE value - returned %s' % machine)
- @OETestID(1569)
def test_expand(self):
with bb.tinfoil.Tinfoil() as tinfoil:
tinfoil.prepare(True)
@@ -28,7 +29,6 @@
if not pid:
self.fail('Unable to expand "%s" - returned %s' % (expr, pid))
- @OETestID(1570)
def test_getvar_bb_origenv(self):
with bb.tinfoil.Tinfoil() as tinfoil:
tinfoil.prepare(True)
@@ -37,7 +37,6 @@
self.fail('Unable to get BB_ORIGENV value - returned %s' % origenv)
self.assertEqual(origenv.getVar('HOME', False), os.environ['HOME'])
- @OETestID(1571)
def test_parse_recipe(self):
with bb.tinfoil.Tinfoil() as tinfoil:
tinfoil.prepare(config_only=False, quiet=2)
@@ -48,7 +47,6 @@
rd = tinfoil.parse_recipe_file(best[3])
self.assertEqual(testrecipe, rd.getVar('PN'))
- @OETestID(1572)
def test_parse_recipe_copy_expand(self):
with bb.tinfoil.Tinfoil() as tinfoil:
tinfoil.prepare(config_only=False, quiet=2)
@@ -67,7 +65,6 @@
localdata.setVar('PN', 'hello')
self.assertEqual('hello', localdata.getVar('BPN'))
- @OETestID(1573)
def test_parse_recipe_initial_datastore(self):
with bb.tinfoil.Tinfoil() as tinfoil:
tinfoil.prepare(config_only=False, quiet=2)
@@ -81,7 +78,6 @@
# Check we can get variable values
self.assertEqual('somevalue', rd.getVar('MYVARIABLE'))
- @OETestID(1574)
def test_list_recipes(self):
with bb.tinfoil.Tinfoil() as tinfoil:
tinfoil.prepare(config_only=False, quiet=2)
@@ -100,7 +96,6 @@
if checkpns:
self.fail('Unable to find pkg_fn entries for: %s' % ', '.join(checkpns))
- @OETestID(1575)
def test_wait_event(self):
with bb.tinfoil.Tinfoil() as tinfoil:
tinfoil.prepare(config_only=True)
@@ -136,7 +131,6 @@
self.assertTrue(commandcomplete, 'Timed out waiting for CommandCompleted event from bitbake server')
self.assertTrue(eventreceived, 'Did not receive FilesMatchingFound event from bitbake server')
- @OETestID(1576)
def test_setvariable_clean(self):
# First check that setVariable affects the datastore
with bb.tinfoil.Tinfoil() as tinfoil:
@@ -159,7 +153,6 @@
value = tinfoil.run_command('getVariable', 'TESTVAR')
self.assertEqual(value, 'specialvalue', 'Value set using config_data.setVar() is not reflected in config_data.getVar()')
- @OETestID(1884)
def test_datastore_operations(self):
with bb.tinfoil.Tinfoil() as tinfoil:
tinfoil.prepare(config_only=True)
diff --git a/poky/meta/lib/oeqa/selftest/cases/wic.py b/poky/meta/lib/oeqa/selftest/cases/wic.py
index 79925f9..d16eae5 100644
--- a/poky/meta/lib/oeqa/selftest/cases/wic.py
+++ b/poky/meta/lib/oeqa/selftest/cases/wic.py
@@ -1,22 +1,8 @@
#!/usr/bin/env python
-# ex:ts=4:sw=4:sts=4:et
-# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
#
# Copyright (c) 2015, Intel Corporation.
-# All rights reserved.
#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 as
-# published by the Free Software Foundation.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+# SPDX-License-Identifier: GPL-2.0-only
#
# AUTHORS
# Ed Bartosh <ed.bartosh@linux.intel.com>
@@ -34,7 +20,6 @@
from oeqa.selftest.case import OESelftestTestCase
from oeqa.utils.commands import runCmd, bitbake, get_bb_var, get_bb_vars, runqemu
-from oeqa.core.decorator.oeid import OETestID
@lru_cache(maxsize=32)
@@ -103,63 +88,51 @@
class Wic(WicTestCase):
- @OETestID(1552)
def test_version(self):
"""Test wic --version"""
runCmd('wic --version')
- @OETestID(1208)
def test_help(self):
"""Test wic --help and wic -h"""
runCmd('wic --help')
runCmd('wic -h')
- @OETestID(1209)
def test_createhelp(self):
"""Test wic create --help"""
runCmd('wic create --help')
- @OETestID(1210)
def test_listhelp(self):
"""Test wic list --help"""
runCmd('wic list --help')
- @OETestID(1553)
def test_help_create(self):
"""Test wic help create"""
runCmd('wic help create')
- @OETestID(1554)
def test_help_list(self):
"""Test wic help list"""
runCmd('wic help list')
- @OETestID(1215)
def test_help_overview(self):
"""Test wic help overview"""
runCmd('wic help overview')
- @OETestID(1216)
def test_help_plugins(self):
"""Test wic help plugins"""
runCmd('wic help plugins')
- @OETestID(1217)
def test_help_kickstart(self):
"""Test wic help kickstart"""
runCmd('wic help kickstart')
- @OETestID(1555)
def test_list_images(self):
"""Test wic list images"""
runCmd('wic list images')
- @OETestID(1556)
def test_list_source_plugins(self):
"""Test wic list source-plugins"""
runCmd('wic list source-plugins')
- @OETestID(1557)
def test_listed_images_help(self):
"""Test wic listed images help"""
output = runCmd('wic list images').output
@@ -167,24 +140,20 @@
for image in imagelist:
runCmd('wic list %s help' % image)
- @OETestID(1213)
def test_unsupported_subcommand(self):
"""Test unsupported subcommand"""
self.assertNotEqual(0, runCmd('wic unsupported', ignore_status=True).status)
- @OETestID(1214)
def test_no_command(self):
"""Test wic without command"""
self.assertEqual(1, runCmd('wic', ignore_status=True).status)
- @OETestID(1211)
def test_build_image_name(self):
"""Test wic create wictestdisk --image-name=core-image-minimal"""
cmd = "wic create wictestdisk --image-name=core-image-minimal -o %s" % self.resultdir
runCmd(cmd)
self.assertEqual(1, len(glob(self.resultdir + "wictestdisk-*.direct")))
- @OETestID(1157)
@only_for_arch(['i586', 'i686', 'x86_64'])
def test_gpt_image(self):
"""Test creation of core-image-minimal with gpt table and UUID boot"""
@@ -192,7 +161,6 @@
runCmd(cmd)
self.assertEqual(1, len(glob(self.resultdir + "directdisk-*.direct")))
- @OETestID(1346)
@only_for_arch(['i586', 'i686', 'x86_64'])
def test_iso_image(self):
"""Test creation of hybrid iso image with legacy and EFI boot"""
@@ -207,7 +175,6 @@
self.assertEqual(1, len(glob(self.resultdir + "HYBRID_ISO_IMG-*.direct")))
self.assertEqual(1, len(glob(self.resultdir + "HYBRID_ISO_IMG-*.iso")))
- @OETestID(1348)
@only_for_arch(['i586', 'i686', 'x86_64'])
def test_qemux86_directdisk(self):
"""Test creation of qemux-86-directdisk image"""
@@ -215,7 +182,6 @@
runCmd(cmd)
self.assertEqual(1, len(glob(self.resultdir + "qemux86-directdisk-*direct")))
- @OETestID(1350)
@only_for_arch(['i586', 'i686', 'x86_64'])
def test_mkefidisk(self):
"""Test creation of mkefidisk image"""
@@ -223,7 +189,6 @@
runCmd(cmd)
self.assertEqual(1, len(glob(self.resultdir + "mkefidisk-*direct")))
- @OETestID(1385)
@only_for_arch(['i586', 'i686', 'x86_64'])
def test_bootloader_config(self):
"""Test creation of directdisk-bootloader-config image"""
@@ -235,7 +200,6 @@
runCmd(cmd)
self.assertEqual(1, len(glob(self.resultdir + "directdisk-bootloader-config-*direct")))
- @OETestID(1560)
@only_for_arch(['i586', 'i686', 'x86_64'])
def test_systemd_bootdisk(self):
"""Test creation of systemd-bootdisk image"""
@@ -247,7 +211,6 @@
runCmd(cmd)
self.assertEqual(1, len(glob(self.resultdir + "systemd-bootdisk-*direct")))
- @OETestID(1561)
def test_sdimage_bootpart(self):
"""Test creation of sdimage-bootpart image"""
cmd = "wic create sdimage-bootpart -e core-image-minimal -o %s" % self.resultdir
@@ -256,7 +219,6 @@
runCmd(cmd)
self.assertEqual(1, len(glob(self.resultdir + "sdimage-bootpart-*direct")))
- @OETestID(1562)
@only_for_arch(['i586', 'i686', 'x86_64'])
def test_default_output_dir(self):
"""Test default output location"""
@@ -270,7 +232,6 @@
runCmd(cmd)
self.assertEqual(1, len(glob("directdisk-*.direct")))
- @OETestID(1212)
@only_for_arch(['i586', 'i686', 'x86_64'])
def test_build_artifacts(self):
"""Test wic create directdisk providing all artifacts."""
@@ -288,7 +249,6 @@
"-o %(resultdir)s" % bbvars)
self.assertEqual(1, len(glob(self.resultdir + "directdisk-*.direct")))
- @OETestID(1264)
def test_compress_gzip(self):
"""Test compressing an image with gzip"""
runCmd("wic create wictestdisk "
@@ -296,7 +256,6 @@
"-c gzip -o %s" % self.resultdir)
self.assertEqual(1, len(glob(self.resultdir + "wictestdisk-*.direct.gz")))
- @OETestID(1265)
def test_compress_bzip2(self):
"""Test compressing an image with bzip2"""
runCmd("wic create wictestdisk "
@@ -304,7 +263,6 @@
"-c bzip2 -o %s" % self.resultdir)
self.assertEqual(1, len(glob(self.resultdir + "wictestdisk-*.direct.bz2")))
- @OETestID(1266)
def test_compress_xz(self):
"""Test compressing an image with xz"""
runCmd("wic create wictestdisk "
@@ -312,7 +270,6 @@
"--compress-with=xz -o %s" % self.resultdir)
self.assertEqual(1, len(glob(self.resultdir + "wictestdisk-*.direct.xz")))
- @OETestID(1267)
def test_wrong_compressor(self):
"""Test how wic breaks if wrong compressor is provided"""
self.assertEqual(2, runCmd("wic create wictestdisk "
@@ -320,7 +277,6 @@
"-c wrong -o %s" % self.resultdir,
ignore_status=True).status)
- @OETestID(1558)
def test_debug_short(self):
"""Test -D option"""
runCmd("wic create wictestdisk "
@@ -328,7 +284,6 @@
"-D -o %s" % self.resultdir)
self.assertEqual(1, len(glob(self.resultdir + "wictestdisk-*.direct")))
- @OETestID(1658)
def test_debug_long(self):
"""Test --debug option"""
runCmd("wic create wictestdisk "
@@ -336,7 +291,6 @@
"--debug -o %s" % self.resultdir)
self.assertEqual(1, len(glob(self.resultdir + "wictestdisk-*.direct")))
- @OETestID(1563)
def test_skip_build_check_short(self):
"""Test -s option"""
runCmd("wic create wictestdisk "
@@ -344,7 +298,6 @@
"-s -o %s" % self.resultdir)
self.assertEqual(1, len(glob(self.resultdir + "wictestdisk-*.direct")))
- @OETestID(1671)
def test_skip_build_check_long(self):
"""Test --skip-build-check option"""
runCmd("wic create wictestdisk "
@@ -353,7 +306,6 @@
"--outdir %s" % self.resultdir)
self.assertEqual(1, len(glob(self.resultdir + "wictestdisk-*.direct")))
- @OETestID(1564)
def test_build_rootfs_short(self):
"""Test -f option"""
runCmd("wic create wictestdisk "
@@ -361,7 +313,6 @@
"-f -o %s" % self.resultdir)
self.assertEqual(1, len(glob(self.resultdir + "wictestdisk-*.direct")))
- @OETestID(1656)
def test_build_rootfs_long(self):
"""Test --build-rootfs option"""
runCmd("wic create wictestdisk "
@@ -370,7 +321,6 @@
"--outdir %s" % self.resultdir)
self.assertEqual(1, len(glob(self.resultdir + "wictestdisk-*.direct")))
- @OETestID(1268)
@only_for_arch(['i586', 'i686', 'x86_64'])
def test_rootfs_indirect_recipes(self):
"""Test usage of rootfs plugin with rootfs recipes"""
@@ -381,7 +331,6 @@
"--outdir %s" % self.resultdir)
self.assertEqual(1, len(glob(self.resultdir + "directdisk-multi-rootfs*.direct")))
- @OETestID(1269)
@only_for_arch(['i586', 'i686', 'x86_64'])
def test_rootfs_artifacts(self):
"""Test usage of rootfs plugin with rootfs paths"""
@@ -401,7 +350,6 @@
"--outdir %(resultdir)s" % bbvars)
self.assertEqual(1, len(glob(self.resultdir + "%(wks)s-*.direct" % bbvars)))
- @OETestID(1661)
def test_exclude_path(self):
"""Test --exclude-path wks option."""
@@ -504,7 +452,6 @@
finally:
os.environ['PATH'] = oldpath
- @OETestID(1662)
def test_exclude_path_errors(self):
"""Test --exclude-path wks option error handling."""
wks_file = 'temp.wks'
@@ -525,7 +472,6 @@
class Wic2(WicTestCase):
- @OETestID(1496)
def test_bmap_short(self):
"""Test generation of .bmap file -m option"""
cmd = "wic create wictestdisk -e core-image-minimal -m -o %s" % self.resultdir
@@ -533,7 +479,6 @@
self.assertEqual(1, len(glob(self.resultdir + "wictestdisk-*direct")))
self.assertEqual(1, len(glob(self.resultdir + "wictestdisk-*direct.bmap")))
- @OETestID(1655)
def test_bmap_long(self):
"""Test generation of .bmap file --bmap option"""
cmd = "wic create wictestdisk -e core-image-minimal --bmap -o %s" % self.resultdir
@@ -541,7 +486,6 @@
self.assertEqual(1, len(glob(self.resultdir + "wictestdisk-*direct")))
self.assertEqual(1, len(glob(self.resultdir + "wictestdisk-*direct.bmap")))
- @OETestID(1347)
def test_image_env(self):
"""Test generation of <image>.env files."""
image = 'core-image-minimal'
@@ -564,7 +508,6 @@
self.assertTrue(var in content, "%s is not in .env file" % var)
self.assertTrue(content[var])
- @OETestID(1559)
def test_image_vars_dir_short(self):
"""Test image vars directory selection -v option"""
image = 'core-image-minimal'
@@ -577,7 +520,6 @@
self.resultdir))
self.assertEqual(1, len(glob(self.resultdir + "wictestdisk-*direct")))
- @OETestID(1665)
def test_image_vars_dir_long(self):
"""Test image vars directory selection --vars option"""
image = 'core-image-minimal'
@@ -593,7 +535,6 @@
self.resultdir))
self.assertEqual(1, len(glob(self.resultdir + "wictestdisk-*direct")))
- @OETestID(1351)
@only_for_arch(['i586', 'i686', 'x86_64'])
def test_wic_image_type(self):
"""Test building wic images by bitbake"""
@@ -614,7 +555,6 @@
self.assertTrue(os.path.islink(path))
self.assertTrue(os.path.isfile(os.path.realpath(path)))
- @OETestID(1424)
@only_for_arch(['i586', 'i686', 'x86_64'])
def test_qemu(self):
"""Test wic-image-minimal under qemu"""
@@ -636,7 +576,6 @@
self.assertEqual(output, 'UUID=2c71ef06-a81d-4735-9d3a-379b69c6bdba\t/media\text4\tdefaults\t0\t0')
@only_for_arch(['i586', 'i686', 'x86_64'])
- @OETestID(1852)
def test_qemu_efi(self):
"""Test core-image-minimal efi image under qemu"""
config = 'IMAGE_FSTYPES = "wic"\nWKS_FILE = "mkefidisk.wks"\n'
@@ -666,7 +605,6 @@
return wkspath, wksname
- @OETestID(1847)
def test_fixed_size(self):
"""
Test creation of a simple image with partition size controlled through
@@ -697,7 +635,6 @@
self.assertEqual(1, len(partlns))
self.assertEqual("1:0.00MiB:200MiB:200MiB:ext4::;", partlns[0])
- @OETestID(1848)
def test_fixed_size_error(self):
"""
Test creation of a simple image with partition size controlled through
@@ -713,7 +650,6 @@
self.assertEqual(0, len(wicout))
@only_for_arch(['i586', 'i686', 'x86_64'])
- @OETestID(1854)
def test_rawcopy_plugin_qemu(self):
"""Test rawcopy plugin in qemu"""
# build ext4 and wic images
@@ -729,7 +665,6 @@
self.assertEqual(1, status, 'Failed to run command "%s": %s' % (cmd, output))
self.assertEqual(output, '2')
- @OETestID(1853)
def test_rawcopy_plugin(self):
"""Test rawcopy plugin"""
img = 'core-image-minimal'
@@ -746,7 +681,6 @@
out = glob(self.resultdir + "%s-*direct" % wksname)
self.assertEqual(1, len(out))
- @OETestID(1849)
def test_fs_types(self):
"""Test filesystem types for empty and not empty partitions"""
img = 'core-image-minimal'
@@ -766,7 +700,6 @@
out = glob(self.resultdir + "%s-*direct" % wksname)
self.assertEqual(1, len(out))
- @OETestID(1851)
def test_kickstart_parser(self):
"""Test wks parser options"""
with NamedTemporaryFile("w", suffix=".wks") as wks:
@@ -779,7 +712,6 @@
out = glob(self.resultdir + "%s-*direct" % wksname)
self.assertEqual(1, len(out))
- @OETestID(1850)
def test_image_bootpart_globbed(self):
"""Test globbed sources with image-bootpart plugin"""
img = "core-image-minimal"
@@ -790,7 +722,6 @@
self.remove_config(config)
self.assertEqual(1, len(glob(self.resultdir + "sdimage-bootpart-*direct")))
- @OETestID(1855)
def test_sparse_copy(self):
"""Test sparse_copy with FIEMAP and SEEK_HOLE filemap APIs"""
libpath = os.path.join(get_bb_var('COREBASE'), 'scripts', 'lib', 'wic')
@@ -819,7 +750,6 @@
self.assertEqual(dest_stat.st_blocks, 8)
os.unlink(dest)
- @OETestID(1857)
def test_wic_ls(self):
"""Test listing image content using 'wic ls'"""
runCmd("wic create wictestdisk "
@@ -838,7 +768,6 @@
result = runCmd("wic ls %s:1/ -n %s" % (images[0], sysroot))
self.assertEqual(6, len(result.output.split('\n')))
- @OETestID(1856)
def test_wic_cp(self):
"""Test copy files and directories to the the wic image."""
runCmd("wic create wictestdisk "
@@ -878,7 +807,6 @@
self.assertEqual(8, len(result.output.split('\n')))
self.assertTrue(os.path.basename(testdir) in result.output)
- @OETestID(1858)
def test_wic_rm(self):
"""Test removing files and directories from the the wic image."""
runCmd("wic create mkefidisk "
@@ -905,7 +833,6 @@
self.assertNotIn('\nBZIMAGE ', result.output)
self.assertNotIn('\nEFI <DIR> ', result.output)
- @OETestID(1922)
def test_mkfs_extraopts(self):
"""Test wks option --mkfs-extraopts for empty and not empty partitions"""
img = 'core-image-minimal'
diff --git a/poky/meta/lib/oeqa/selftest/context.py b/poky/meta/lib/oeqa/selftest/context.py
index c56e53d..d279994 100644
--- a/poky/meta/lib/oeqa/selftest/context.py
+++ b/poky/meta/lib/oeqa/selftest/context.py
@@ -1,5 +1,8 @@
+#
# Copyright (C) 2017 Intel Corporation
-# Released under the MIT license (see COPYING.MIT)
+#
+# SPDX-License-Identifier: MIT
+#
import os
import time
diff --git a/poky/meta/lib/oeqa/targetcontrol.py b/poky/meta/lib/oeqa/targetcontrol.py
index 1868ad3..15e617c 100644
--- a/poky/meta/lib/oeqa/targetcontrol.py
+++ b/poky/meta/lib/oeqa/targetcontrol.py
@@ -1,6 +1,8 @@
+#
# Copyright (C) 2013 Intel Corporation
#
-# Released under the MIT license (see COPYING.MIT)
+# SPDX-License-Identifier: MIT
+#
# This module is used by testimage.bbclass for setting up and controlling a target machine.
@@ -159,7 +161,7 @@
def start(self, params=None, ssh=True, extra_bootparams='', runqemuparams='', launch_cmd='', discard_writes=True):
if launch_cmd:
- start = self.runner.launch(get_ip=ssh, launch_cmd=launch_cmd)
+ start = self.runner.launch(get_ip=ssh, launch_cmd=launch_cmd, qemuparams=params)
else:
start = self.runner.start(params, get_ip=ssh, extra_bootparams=extra_bootparams, runqemuparams=runqemuparams, discard_writes=discard_writes)
diff --git a/poky/meta/lib/oeqa/utils/__init__.py b/poky/meta/lib/oeqa/utils/__init__.py
index d38a323..70fbe7b 100644
--- a/poky/meta/lib/oeqa/utils/__init__.py
+++ b/poky/meta/lib/oeqa/utils/__init__.py
@@ -1,3 +1,6 @@
+#
+# SPDX-License-Identifier: MIT
+#
# Enable other layers to have modules in the same named directory
from pkgutil import extend_path
__path__ = extend_path(__path__, __name__)
diff --git a/poky/meta/lib/oeqa/utils/buildproject.py b/poky/meta/lib/oeqa/utils/buildproject.py
index 01a803a..e6d80cc 100644
--- a/poky/meta/lib/oeqa/utils/buildproject.py
+++ b/poky/meta/lib/oeqa/utils/buildproject.py
@@ -1,6 +1,8 @@
+#
# Copyright (C) 2013-2016 Intel Corporation
#
-# Released under the MIT license (see COPYING.MIT)
+# SPDX-License-Identifier: MIT
+#
# Provides a class for automating build tests for projects
diff --git a/poky/meta/lib/oeqa/utils/commands.py b/poky/meta/lib/oeqa/utils/commands.py
index 2e6a228..59ebfbe 100644
--- a/poky/meta/lib/oeqa/utils/commands.py
+++ b/poky/meta/lib/oeqa/utils/commands.py
@@ -1,6 +1,8 @@
+#
# Copyright (c) 2013-2014 Intel Corporation
#
-# Released under the MIT license (see COPYING.MIT)
+# SPDX-License-Identifier: MIT
+#
# DESCRIPTION
# This module is mainly used by scripts/oe-selftest and modules under meta/oeqa/selftest
diff --git a/poky/meta/lib/oeqa/utils/decorators.py b/poky/meta/lib/oeqa/utils/decorators.py
index d876896..aabf411 100644
--- a/poky/meta/lib/oeqa/utils/decorators.py
+++ b/poky/meta/lib/oeqa/utils/decorators.py
@@ -1,6 +1,8 @@
+#
# Copyright (C) 2013 Intel Corporation
#
-# Released under the MIT license (see COPYING.MIT)
+# SPDX-License-Identifier: MIT
+#
# Some custom decorators that can be used by unittests
# Most useful is skipUnlessPassed which can be used for
diff --git a/poky/meta/lib/oeqa/utils/dump.py b/poky/meta/lib/oeqa/utils/dump.py
index 79c22b7..d34e05e 100644
--- a/poky/meta/lib/oeqa/utils/dump.py
+++ b/poky/meta/lib/oeqa/utils/dump.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
import os
import sys
import errno
diff --git a/poky/meta/lib/oeqa/utils/ftools.py b/poky/meta/lib/oeqa/utils/ftools.py
index a7233d4..3093419 100644
--- a/poky/meta/lib/oeqa/utils/ftools.py
+++ b/poky/meta/lib/oeqa/utils/ftools.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
import os
import re
import errno
diff --git a/poky/meta/lib/oeqa/utils/git.py b/poky/meta/lib/oeqa/utils/git.py
index 757e3f0..ea35a76 100644
--- a/poky/meta/lib/oeqa/utils/git.py
+++ b/poky/meta/lib/oeqa/utils/git.py
@@ -1,7 +1,7 @@
#
# Copyright (C) 2016 Intel Corporation
#
-# Released under the MIT license (see COPYING.MIT)
+# SPDX-License-Identifier: MIT
#
"""Git repository interactions"""
import os
diff --git a/poky/meta/lib/oeqa/utils/gitarchive.py b/poky/meta/lib/oeqa/utils/gitarchive.py
index 9520b2e..6e8040e 100644
--- a/poky/meta/lib/oeqa/utils/gitarchive.py
+++ b/poky/meta/lib/oeqa/utils/gitarchive.py
@@ -4,14 +4,7 @@
# Copyright (c) 2017, Intel Corporation.
# Copyright (c) 2019, Linux Foundation
#
-# This program is free software; you can redistribute it and/or modify it
-# under the terms and conditions of the GNU General Public License,
-# version 2, as published by the Free Software Foundation.
-#
-# This program is distributed in the hope it will be useful, but WITHOUT
-# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
-# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
-# more details.
+# SPDX-License-Identifier: GPL-2.0-only
#
import os
diff --git a/poky/meta/lib/oeqa/utils/httpserver.py b/poky/meta/lib/oeqa/utils/httpserver.py
index a48d499..aa43559 100644
--- a/poky/meta/lib/oeqa/utils/httpserver.py
+++ b/poky/meta/lib/oeqa/utils/httpserver.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
import http.server
import multiprocessing
import os
diff --git a/poky/meta/lib/oeqa/utils/logparser.py b/poky/meta/lib/oeqa/utils/logparser.py
index 32fde14..cc6d18d 100644
--- a/poky/meta/lib/oeqa/utils/logparser.py
+++ b/poky/meta/lib/oeqa/utils/logparser.py
@@ -1,4 +1,7 @@
#!/usr/bin/env python
+#
+# SPDX-License-Identifier: MIT
+#
import sys
import os
@@ -86,3 +89,65 @@
status = self.results[section][test_name]
f.write(status + ": " + test_name + "\n")
+
+# ltp log parsing
+class LtpParser(object):
+ def __init__(self):
+ self.results = {}
+ self.section = {'duration': "", 'log': ""}
+
+ def parse(self, logfile):
+ test_regex = {}
+ test_regex['PASSED'] = re.compile(r"PASS")
+ test_regex['FAILED'] = re.compile(r"FAIL")
+ test_regex['SKIPPED'] = re.compile(r"SKIP")
+
+ with open(logfile, errors='replace') as f:
+ for line in f:
+ for t in test_regex:
+ result = test_regex[t].search(line)
+ if result:
+ self.results[line.split()[0].strip()] = t
+
+ for test in self.results:
+ result = self.results[test]
+ self.section['log'] = self.section['log'] + ("%s: %s\n" % (result.strip()[:-2], test.strip()))
+
+ return self.results, self.section
+
+
+# ltp Compliance log parsing
+class LtpComplianceParser(object):
+ def __init__(self):
+ self.results = {}
+ self.section = {'duration': "", 'log': ""}
+
+ def parse(self, logfile):
+ test_regex = {}
+ test_regex['PASSED'] = re.compile(r"^PASS")
+ test_regex['FAILED'] = re.compile(r"^FAIL")
+ test_regex['SKIPPED'] = re.compile(r"(?:UNTESTED)|(?:UNSUPPORTED)")
+
+ section_regex = {}
+ section_regex['test'] = re.compile(r"^Testing")
+
+ with open(logfile, errors='replace') as f:
+ for line in f:
+ result = section_regex['test'].search(line)
+ if result:
+ self.name = ""
+ self.name = line.split()[1].strip()
+ self.results[self.name] = "PASSED"
+ failed = 0
+
+ failed_result = test_regex['FAILED'].search(line)
+ if failed_result:
+ failed = line.split()[1].strip()
+ if int(failed) > 0:
+ self.results[self.name] = "FAILED"
+
+ for test in self.results:
+ result = self.results[test]
+ self.section['log'] = self.section['log'] + ("%s: %s\n" % (result.strip()[:-2], test.strip()))
+
+ return self.results, self.section
diff --git a/poky/meta/lib/oeqa/utils/metadata.py b/poky/meta/lib/oeqa/utils/metadata.py
index e0808ae..8013aa6 100644
--- a/poky/meta/lib/oeqa/utils/metadata.py
+++ b/poky/meta/lib/oeqa/utils/metadata.py
@@ -1,6 +1,6 @@
# Copyright (C) 2016 Intel Corporation
#
-# Released under the MIT license (see COPYING.MIT)
+# SPDX-License-Identifier: MIT
#
# Functions to get metadata from the testing host used
# for analytics of test results.
diff --git a/poky/meta/lib/oeqa/utils/network.py b/poky/meta/lib/oeqa/utils/network.py
index 2768f6c..59cbbc4 100644
--- a/poky/meta/lib/oeqa/utils/network.py
+++ b/poky/meta/lib/oeqa/utils/network.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
import socket
def get_free_port():
diff --git a/poky/meta/lib/oeqa/utils/package_manager.py b/poky/meta/lib/oeqa/utils/package_manager.py
index 1495f87..2d358f7 100644
--- a/poky/meta/lib/oeqa/utils/package_manager.py
+++ b/poky/meta/lib/oeqa/utils/package_manager.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: MIT
+#
+
import os
import json
import shutil
diff --git a/poky/meta/lib/oeqa/utils/qemurunner.py b/poky/meta/lib/oeqa/utils/qemurunner.py
index 1abb2c1..fd386ef 100644
--- a/poky/meta/lib/oeqa/utils/qemurunner.py
+++ b/poky/meta/lib/oeqa/utils/qemurunner.py
@@ -1,6 +1,8 @@
+#
# Copyright (C) 2013 Intel Corporation
#
-# Released under the MIT license (see COPYING.MIT)
+# SPDX-License-Identifier: MIT
+#
# This module provides a class for starting qemu images using runqemu.
# It's used by testimage.bbclass.
diff --git a/poky/meta/lib/oeqa/utils/qemutinyrunner.py b/poky/meta/lib/oeqa/utils/qemutinyrunner.py
index 5aa99d0..364005b 100644
--- a/poky/meta/lib/oeqa/utils/qemutinyrunner.py
+++ b/poky/meta/lib/oeqa/utils/qemutinyrunner.py
@@ -1,6 +1,8 @@
+#
# Copyright (C) 2015 Intel Corporation
#
-# Released under the MIT license (see COPYING.MIT)
+# SPDX-License-Identifier: MIT
+#
# This module provides a class for starting qemu images of poky tiny.
# It's used by testimage.bbclass.
diff --git a/poky/meta/lib/oeqa/utils/sshcontrol.py b/poky/meta/lib/oeqa/utils/sshcontrol.py
index d292893..49a0726 100644
--- a/poky/meta/lib/oeqa/utils/sshcontrol.py
+++ b/poky/meta/lib/oeqa/utils/sshcontrol.py
@@ -1,7 +1,8 @@
-# -*- coding: utf-8 -*-
+#
# Copyright (C) 2013 Intel Corporation
#
-# Released under the MIT license (see COPYING.MIT)
+# SPDX-License-Identifier: MIT
+#
# Provides a class for setting up ssh connections,
# running commands and copying files to/from a target.
diff --git a/poky/meta/lib/oeqa/utils/subprocesstweak.py b/poky/meta/lib/oeqa/utils/subprocesstweak.py
index 1f7d11b..b47975a 100644
--- a/poky/meta/lib/oeqa/utils/subprocesstweak.py
+++ b/poky/meta/lib/oeqa/utils/subprocesstweak.py
@@ -1,3 +1,6 @@
+#
+# SPDX-License-Identifier: MIT
+#
import subprocess
class OETestCalledProcessError(subprocess.CalledProcessError):
diff --git a/poky/meta/lib/oeqa/utils/targetbuild.py b/poky/meta/lib/oeqa/utils/targetbuild.py
index b8db7b2..1055810 100644
--- a/poky/meta/lib/oeqa/utils/targetbuild.py
+++ b/poky/meta/lib/oeqa/utils/targetbuild.py
@@ -1,6 +1,8 @@
+#
# Copyright (C) 2013 Intel Corporation
#
-# Released under the MIT license (see COPYING.MIT)
+# SPDX-License-Identifier: MIT
+#
# Provides a class for automating build tests for projects
diff --git a/poky/meta/lib/oeqa/utils/testexport.py b/poky/meta/lib/oeqa/utils/testexport.py
index be2a211..e89d130 100644
--- a/poky/meta/lib/oeqa/utils/testexport.py
+++ b/poky/meta/lib/oeqa/utils/testexport.py
@@ -1,6 +1,8 @@
+#
# Copyright (C) 2015 Intel Corporation
#
-# Released under the MIT license (see COPYING.MIT)
+# SPDX-License-Identifier: MIT
+#
# Provides functions to help with exporting binaries obtained from built targets
diff --git a/poky/meta/lib/rootfspostcommands.py b/poky/meta/lib/rootfspostcommands.py
index 4742e06..fdb9f5b 100644
--- a/poky/meta/lib/rootfspostcommands.py
+++ b/poky/meta/lib/rootfspostcommands.py
@@ -1,3 +1,7 @@
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
+
import os
def sort_file(filename, mapping):
diff --git a/poky/meta/recipes-bsp/gnu-efi/gnu-efi/gcc46-compatibility.patch b/poky/meta/recipes-bsp/gnu-efi/gnu-efi/gcc46-compatibility.patch
deleted file mode 100644
index 69efd34..0000000
--- a/poky/meta/recipes-bsp/gnu-efi/gnu-efi/gcc46-compatibility.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From 8d16ae374c5d4d9fac45c002605a66cfb8c08be5 Mon Sep 17 00:00:00 2001
-From: Steve Langasek <steve.langasek@ubuntu.com>
-Date: Wed, 9 Sep 2015 08:26:06 +0000
-Subject: [PATCH 3/3] gnu-efi, syslinux: Support gcc < 4.7
-
-don't break with old compilers and -DGNU_EFI_USE_MS_ABI
-It's entirely legitimate to request GNU_EFI_USE_MS_ABI even if the current
-compiler doesn't support it, and gnu-efi should transparently fall back to
-using legacy techniques to set the calling convention. We don't get type
-checking, but at least it will still compile.
-
-Author: Steve Langasek <steve.langasek@ubuntu.com>
-Upstream-Status: Pending
-[Rebased for 3.0.6]
-Signed-off-by: California Sullivan <california.l.sullivan@intel.com>
----
- inc/x86_64/efibind.h | 2 --
- 1 file changed, 2 deletions(-)
-
-diff --git a/inc/x86_64/efibind.h b/inc/x86_64/efibind.h
-index 4309f9f..02c0af1 100644
---- a/inc/x86_64/efibind.h
-+++ b/inc/x86_64/efibind.h
-@@ -25,8 +25,6 @@ Revision History
- #if defined(GNU_EFI_USE_MS_ABI)
- #if (defined(__GNUC__) && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 7)))||(defined(__clang__) && (__clang_major__ > 3 || (__clang_major__ == 3 && __clang_minor__ >= 2)))
- #define HAVE_USE_MS_ABI 1
-- #else
-- #error Compiler is too old for GNU_EFI_USE_MS_ABI
- #endif
- #endif
-
---
-2.9.4
-
diff --git a/poky/meta/recipes-bsp/gnu-efi/gnu-efi_3.0.9.bb b/poky/meta/recipes-bsp/gnu-efi/gnu-efi_3.0.9.bb
index 0667191..f844435 100644
--- a/poky/meta/recipes-bsp/gnu-efi/gnu-efi_3.0.9.bb
+++ b/poky/meta/recipes-bsp/gnu-efi/gnu-efi_3.0.9.bb
@@ -15,7 +15,6 @@
SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BP}.tar.bz2 \
file://parallel-make-archives.patch \
file://lib-Makefile-fix-parallel-issue.patch \
- file://gcc46-compatibility.patch \
"
SRC_URI[md5sum] = "32af17b917545a693e549af2439c4a99"
diff --git a/poky/meta/recipes-bsp/grub/files/disable-address-of-packed-member.patch b/poky/meta/recipes-bsp/grub/files/disable-address-of-packed-member.patch
deleted file mode 100644
index 415f52e..0000000
--- a/poky/meta/recipes-bsp/grub/files/disable-address-of-packed-member.patch
+++ /dev/null
@@ -1,262 +0,0 @@
-Disable address-of-packed-member warnings with gcc9
-
-gcc9 has turned this warning into error when -Werror is used, lets paper
-it over by turning it into a warning for now
-
-Fixes
- error: taking address of packed member of 'struct head' may result in an unaligned pointer value [-Werror=address-of-packed-member]
-
-Upstream-Status: Pending
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
---- a/grub-core/commands/lsacpi.c
-+++ b/grub-core/commands/lsacpi.c
-@@ -26,6 +26,9 @@
- #include <grub/dl.h>
-
- #pragma GCC diagnostic ignored "-Wcast-align"
-+#if __GNUC__ >= 9
-+#pragma GCC diagnostic ignored "-Waddress-of-packed-member"
-+#endif
-
- GRUB_MOD_LICENSE ("GPLv3+");
-
---- a/grub-core/commands/lspci.c
-+++ b/grub-core/commands/lspci.c
-@@ -26,6 +26,9 @@
-
- GRUB_MOD_LICENSE ("GPLv3+");
-
-+#if __GNUC__ >= 9
-+#pragma GCC diagnostic ignored "-Waddress-of-packed-member"
-+#endif
- struct grub_pci_classname
- {
- int class;
-@@ -171,7 +174,7 @@ grub_lspci_iter (grub_pci_device_t dev,
-
- if (space == 0)
- continue;
--
-+
- switch (space & GRUB_PCI_ADDR_SPACE_MASK)
- {
- case GRUB_PCI_ADDR_SPACE_IO:
-@@ -195,13 +198,13 @@ grub_lspci_iter (grub_pci_device_t dev,
- (space & GRUB_PCI_ADDR_MEM_MASK),
- space & GRUB_PCI_ADDR_MEM_PREFETCH
- ? "prefetchable" : "non-prefetchable");
--
-+
- }
- else
- grub_printf ("\t32-bit memory space %d at 0x%016llx [%s]\n",
- (unsigned) ((reg - GRUB_PCI_REG_ADDRESSES)
- / sizeof (grub_uint32_t)) - 1,
-- (unsigned long long)
-+ (unsigned long long)
- (space & GRUB_PCI_ADDR_MEM_MASK),
- space & GRUB_PCI_ADDR_MEM_PREFETCH
- ? "prefetchable" : "non-prefetchable");
---- a/grub-core/fs/cpio_common.c
-+++ b/grub-core/fs/cpio_common.c
-@@ -26,7 +26,9 @@
- #include <grub/archelp.h>
-
- GRUB_MOD_LICENSE ("GPLv3+");
--
-+#if __GNUC__ >= 9
-+#pragma GCC diagnostic ignored "-Waddress-of-packed-member"
-+#endif
- struct grub_archelp_data
- {
- grub_disk_t disk;
-@@ -108,7 +110,7 @@ grub_cpio_get_link_target (struct grub_a
- if (!ret)
- return NULL;
-
-- err = grub_disk_read (data->disk, 0, data->dofs, data->size,
-+ err = grub_disk_read (data->disk, 0, data->dofs, data->size,
- ret);
- if (err)
- {
---- a/grub-core/fs/hfs.c
-+++ b/grub-core/fs/hfs.c
-@@ -32,6 +32,9 @@
- #include <grub/fshelp.h>
-
- GRUB_MOD_LICENSE ("GPLv3+");
-+#if __GNUC__ >= 9
-+#pragma GCC diagnostic ignored "-Waddress-of-packed-member"
-+#endif
-
- #define GRUB_HFS_SBLOCK 2
- #define GRUB_HFS_EMBED_HFSPLUS_SIG 0x482B
-@@ -882,7 +885,7 @@ grub_hfs_iterate_dir_it_dir (struct grub
- {
- struct grub_hfs_catalog_key *ckey = rec->key;
- struct grub_hfs_iterate_dir_node_found_ctx *ctx = hook_arg;
--
-+
- /* Stop when the entries do not match anymore. */
- if (ckey->parent_dir != ctx->dir_be)
- return 1;
-@@ -1076,7 +1079,7 @@ macroman_to_utf8 (char *to, const grub_u
- {
- *optr++ = ':';
- continue;
-- }
-+ }
- if (!(*iptr & 0x80))
- {
- *optr++ = *iptr;
-@@ -1093,7 +1096,7 @@ utf8_to_macroman (grub_uint8_t *to, cons
- grub_uint8_t *end = to + 31;
- grub_uint8_t *optr = to;
- const char *iptr = from;
--
-+
- while (*iptr && optr < end)
- {
- int i, clen;
-@@ -1103,7 +1106,7 @@ utf8_to_macroman (grub_uint8_t *to, cons
- *optr++ = '/';
- iptr++;
- continue;
-- }
-+ }
- if (!(*iptr & 0x80))
- {
- *optr++ = *iptr++;
-@@ -1164,7 +1167,7 @@ lookup_file (grub_fshelp_node_t dir,
- *foundnode = grub_malloc (sizeof (struct grub_fshelp_node));
- if (!*foundnode)
- return grub_errno;
--
-+
- (*foundnode)->inode = grub_be_to_cpu32 (fdrec.dir.dirid);
- (*foundnode)->fdrec = fdrec;
- (*foundnode)->data = dir->data;
-@@ -1265,7 +1268,7 @@ grub_hfs_dir (grub_device_t device, cons
- .hook_data = hook_data
- };
- grub_fshelp_node_t found = NULL;
--
-+
- grub_dl_ref (my_mod);
-
- data = grub_hfs_mount (device->disk);
-@@ -1294,7 +1297,7 @@ grub_hfs_open (struct grub_file *file, c
- {
- struct grub_hfs_data *data;
- grub_fshelp_node_t found = NULL;
--
-+
- grub_dl_ref (my_mod);
-
- data = grub_hfs_mount (file->device->disk);
---- a/grub-core/fs/hfsplus.c
-+++ b/grub-core/fs/hfsplus.c
-@@ -19,7 +19,7 @@
-
- /* HFS+ is documented at http://developer.apple.com/technotes/tn/tn1150.html */
-
--#define grub_fshelp_node grub_hfsplus_file
-+#define grub_fshelp_node grub_hfsplus_file
- #include <grub/err.h>
- #include <grub/file.h>
- #include <grub/mm.h>
-@@ -34,6 +34,9 @@
-
- GRUB_MOD_LICENSE ("GPLv3+");
-
-+#if __GNUC__ >= 9
-+#pragma GCC diagnostic ignored "-Waddress-of-packed-member"
-+#endif
- /* The type of node. */
- enum grub_hfsplus_btnode_type
- {
-@@ -145,7 +148,7 @@ grub_hfsplus_read_block (grub_fshelp_nod
- {
- struct grub_hfsplus_btnode *nnode = 0;
- grub_disk_addr_t blksleft = fileblock;
-- struct grub_hfsplus_extent *extents = node->compressed
-+ struct grub_hfsplus_extent *extents = node->compressed
- ? &node->resource_extents[0] : &node->extents[0];
-
- while (1)
-@@ -461,7 +464,7 @@ grub_hfsplus_cmp_extkey (struct grub_hfs
-
- if (extkey_a->type < extkey_b->type)
- return -1;
--
-+
- akey = grub_be_to_cpu32 (extkey_a->start);
- if (akey > extkey_b->start)
- return 1;
-@@ -548,7 +551,7 @@ grub_hfsplus_btree_search (struct grub_h
- struct grub_hfsplus_key_internal *key,
- int (*compare_keys) (struct grub_hfsplus_key *keya,
- struct grub_hfsplus_key_internal *keyb),
-- struct grub_hfsplus_btnode **matchnode,
-+ struct grub_hfsplus_btnode **matchnode,
- grub_off_t *keyoffset)
- {
- grub_uint64_t currnode;
---- a/grub-core/fs/jfs.c
-+++ b/grub-core/fs/jfs.c
-@@ -28,6 +28,9 @@
- #include <grub/i18n.h>
-
- GRUB_MOD_LICENSE ("GPLv3+");
-+#if __GNUC__ >= 9
-+#pragma GCC diagnostic ignored "-Waddress-of-packed-member"
-+#endif
-
- #define GRUB_JFS_MAX_SYMLNK_CNT 8
- #define GRUB_JFS_FILETYPE_MASK 0170000
---- a/grub-core/kern/efi/efi.c
-+++ b/grub-core/kern/efi/efi.c
-@@ -29,6 +29,9 @@
- #include <grub/mm.h>
- #include <grub/loader.h>
-
-+#if __GNUC__ >= 9
-+#pragma GCC diagnostic ignored "-Waddress-of-packed-member"
-+#endif
- /* The handle of GRUB itself. Filled in by the startup code. */
- grub_efi_handle_t grub_efi_image_handle;
-
-@@ -201,7 +204,7 @@ grub_efi_set_variable(const char *var, c
-
- r = grub_efi_system_table->runtime_services;
-
-- status = efi_call_5 (r->set_variable, var16, guid,
-+ status = efi_call_5 (r->set_variable, var16, guid,
- (GRUB_EFI_VARIABLE_NON_VOLATILE
- | GRUB_EFI_VARIABLE_BOOTSERVICE_ACCESS
- | GRUB_EFI_VARIABLE_RUNTIME_ACCESS),
---- a/grub-core/loader/efi/chainloader.c
-+++ b/grub-core/loader/efi/chainloader.c
-@@ -41,6 +41,9 @@
- #endif
-
- GRUB_MOD_LICENSE ("GPLv3+");
-+#if __GNUC__ >= 9
-+#pragma GCC diagnostic ignored "-Waddress-of-packed-member"
-+#endif
-
- static grub_dl_t my_mod;
-
---- a/grub-core/commands/usbtest.c
-+++ b/grub-core/commands/usbtest.c
-@@ -63,6 +63,10 @@ static const char *usb_devspeed[] =
- "High"
- };
-
-+#if __GNUC__ >= 9
-+#pragma GCC diagnostic ignored "-Waddress-of-packed-member"
-+#endif
-+
- static grub_usb_err_t
- grub_usb_get_string (grub_usb_device_t dev, grub_uint8_t index, int langid,
- char **string)
diff --git a/poky/meta/recipes-bsp/grub/files/fix.build.with.gcc-7.patch b/poky/meta/recipes-bsp/grub/files/fix.build.with.gcc-7.patch
deleted file mode 100644
index f35df97..0000000
--- a/poky/meta/recipes-bsp/grub/files/fix.build.with.gcc-7.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-* e.g. with gentoo gcc-7.1 they define _FORTIFY_SOURCE by default with:
- https://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo/src/patchsets/gcc/7.1.0/gentoo/10_all_default-fortify-source.patch?view=markup
- which results in following error while building grub-efi-native:
- ./config-util.h:1504:48: error: this use of "defined" may not be portable [-Werror=expansion-to-defined]
- || (defined _FORTIFY_SOURCE && 0 < _FORTIFY_SOURCE \
- ^~~~~~~~~~~~~~~
- this part comes from gnulib and it's used only for Apple and BSD,
- so we can ignore it, but we cannot add -Wno-error=expansion-to-defined
- because this warning was introduced only in gcc-7 and older gcc
- will fail with:
- cc1: error: -Werror=expansion-to-defined: no option -Wexpansion-to-defined
- use #pragma to work around this
-
-Upstream-Status: Pending (should be fixed in gnulib which is then rarely updated in grub)
-
-Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
-
-diff -uNr grub-2.02.old/m4/extern-inline.m4 grub-2.02/m4/extern-inline.m4
---- grub-2.02.old/m4/extern-inline.m4 2016-02-28 15:22:21.000000000 +0100
-+++ grub-2.02/m4/extern-inline.m4 2017-08-22 19:26:45.213637276 +0200
-@@ -39,6 +39,10 @@
- OS X 10.9 has a macro __header_inline indicating the bug is fixed for C and
- for clang but remains for g++; see <http://trac.macports.org/ticket/41033>.
- Assume DragonFly and FreeBSD will be similar. */
-+#pragma GCC diagnostic push
-+#if __GNUC__ >= 7
-+#pragma GCC diagnostic ignored "-Wexpansion-to-defined"
-+#endif
- #if (((defined __APPLE__ && defined __MACH__) \
- || defined __DragonFly__ || defined __FreeBSD__) \
- && (defined __header_inline \
-@@ -50,6 +52,7 @@
- && defined __GNUC__ && ! defined __cplusplus))))
- # define _GL_EXTERN_INLINE_STDHEADER_BUG
- #endif
-+#pragma GCC diagnostic pop
- #if ((__GNUC__ \
- ? defined __GNUC_STDC_INLINE__ && __GNUC_STDC_INLINE__ \
- : (199901L <= __STDC_VERSION__ \
diff --git a/poky/meta/recipes-bsp/grub/files/fix.build.with.squashfs.patch b/poky/meta/recipes-bsp/grub/files/fix.build.with.squashfs.patch
deleted file mode 100644
index 2c2d2ea..0000000
--- a/poky/meta/recipes-bsp/grub/files/fix.build.with.squashfs.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-When squashfs support is enabled, the build fails with:
-
-../grub-2.02/grub-core/fs/squash4.c: In function 'direct_read':
-../grub-2.02/grub-core/fs/squash4.c:868:10: error: 'err' may be used uninitialized in this function [-Werror=maybe-uninitialized]
- if (err)
- ^
-cc1: all warnings being treated as errors
-Makefile:7272: recipe for target 'grub-core/fs/libgrubmods_a-squash4.o' failed
-
-Upstream-Status: Pending (should be fixed in gnulib which is then rarely updated in grub)
-
-Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
-
---- grub-2.02/grub-core/fs/squash4.c 2019-03-10 20:00:14.070468728 +0000
-+++ grub-2.02.fixed/grub-core/fs/squash4.c 2019-03-10 19:58:31.382477818 +0000
-@@ -746,7 +746,7 @@
- struct grub_squash_cache_inode *ino,
- grub_off_t off, char *buf, grub_size_t len)
- {
-- grub_err_t err;
-+ grub_err_t err = 0;
- grub_off_t cumulated_uncompressed_size = 0;
- grub_uint64_t a = 0;
- grub_size_t i;
diff --git a/poky/meta/recipes-bsp/grub/grub-efi_2.02.bb b/poky/meta/recipes-bsp/grub/grub-efi_2.02.bb
index 14fce97..0028a9b 100644
--- a/poky/meta/recipes-bsp/grub/grub-efi_2.02.bb
+++ b/poky/meta/recipes-bsp/grub/grub-efi_2.02.bb
@@ -41,10 +41,6 @@
CACHED_CONFIGUREVARS += "ac_cv_path_HELP2MAN="
EXTRA_OECONF += "--enable-efiemu=no"
-# ldm.c:114:7: error: trampoline generated for nested function 'hook' [-Werror=trampolines]
-# and many other places in the grub code when compiled with some native gcc compilers (specifically, gentoo)
-CFLAGS_append_class-native = " -Wno-error=trampolines"
-
do_mkimage() {
cd ${B}
# Search for the grub.cfg on the local boot media by using the
@@ -70,6 +66,7 @@
do_install_class-native() {
install -d ${D}${bindir}
install -m 755 grub-mkimage ${D}${bindir}
+ install -m 755 grub-editenv ${D}${bindir}
}
do_install_class-target() {
diff --git a/poky/meta/recipes-bsp/grub/grub2.inc b/poky/meta/recipes-bsp/grub/grub2.inc
index c699472..7d8c280 100644
--- a/poky/meta/recipes-bsp/grub/grub2.inc
+++ b/poky/meta/recipes-bsp/grub/grub2.inc
@@ -17,12 +17,9 @@
file://autogen.sh-exclude-pc.patch \
file://grub-module-explicitly-keeps-symbole-.module_license.patch \
file://0001-grub.d-10_linux.in-add-oe-s-kernel-name.patch \
- file://fix.build.with.gcc-7.patch \
file://gcc8.patch \
file://0001-x86-64-Treat-R_X86_64_PLT32-as-R_X86_64_PC32.patch \
file://0001-grub-setup-Debug-message-cleanup.patch \
- file://disable-address-of-packed-member.patch \
- file://fix.build.with.squashfs.patch \
"
SRC_URI[md5sum] = "1116d1f60c840e6dbd67abbc99acb45d"
SRC_URI[sha256sum] = "660ee136fbcee08858516ed4de2ad87068bfe1b6b8b37896ce3529ff054a726d"
@@ -63,6 +60,8 @@
BUILD_CXXFLAGS = ""
BUILD_LDFLAGS = ""
+CFLAGS_append = "-Wno-error"
+
do_configure_prepend() {
# The grub2 configure script uses variables such as TARGET_CFLAGS etc
# for its own purposes. Remove the OE versions from the environment to
diff --git a/poky/meta/recipes-bsp/u-boot/u-boot-common.inc b/poky/meta/recipes-bsp/u-boot/u-boot-common.inc
index dcfb9cc..a0212e1 100644
--- a/poky/meta/recipes-bsp/u-boot/u-boot-common.inc
+++ b/poky/meta/recipes-bsp/u-boot/u-boot-common.inc
@@ -8,7 +8,7 @@
# We use the revision in order to avoid having to fetch it from the
# repo during parse
-SRCREV = "d3689267f92c5956e09cc7d1baa4700141662bff"
+SRCREV = "3c99166441bf3ea325af2da83cfe65430b49c066"
SRC_URI = "git://git.denx.de/u-boot.git"
diff --git a/poky/meta/recipes-bsp/u-boot/u-boot-fw-utils_2019.01.bb b/poky/meta/recipes-bsp/u-boot/u-boot-fw-utils_2019.04.bb
similarity index 100%
rename from poky/meta/recipes-bsp/u-boot/u-boot-fw-utils_2019.01.bb
rename to poky/meta/recipes-bsp/u-boot/u-boot-fw-utils_2019.04.bb
diff --git a/poky/meta/recipes-bsp/u-boot/u-boot-tools_2019.01.bb b/poky/meta/recipes-bsp/u-boot/u-boot-tools_2019.04.bb
similarity index 100%
rename from poky/meta/recipes-bsp/u-boot/u-boot-tools_2019.01.bb
rename to poky/meta/recipes-bsp/u-boot/u-boot-tools_2019.04.bb
diff --git a/poky/meta/recipes-bsp/u-boot/u-boot.inc b/poky/meta/recipes-bsp/u-boot/u-boot.inc
index 96c1f94..9a754fd 100644
--- a/poky/meta/recipes-bsp/u-boot/u-boot.inc
+++ b/poky/meta/recipes-bsp/u-boot/u-boot.inc
@@ -13,7 +13,7 @@
EXTRA_OEMAKE = 'CROSS_COMPILE=${TARGET_PREFIX} CC="${TARGET_PREFIX}gcc ${TOOLCHAIN_OPTIONS}" V=1'
EXTRA_OEMAKE += 'HOSTCC="${BUILD_CC} ${BUILD_CFLAGS} ${BUILD_LDFLAGS}"'
-EXTRA_OEMAKE += 'PYTHON=nativepython STAGING_INCDIR=${STAGING_INCDIR_NATIVE} STAGING_LIBDIR=${STAGING_LIBDIR_NATIVE}'
+EXTRA_OEMAKE += 'PYTHON2=nativepython STAGING_INCDIR=${STAGING_INCDIR_NATIVE} STAGING_LIBDIR=${STAGING_LIBDIR_NATIVE}'
PACKAGECONFIG ??= "openssl"
# u-boot will compile its own tools during the build, with specific
diff --git a/poky/meta/recipes-bsp/u-boot/u-boot_2019.01.bb b/poky/meta/recipes-bsp/u-boot/u-boot_2019.04.bb
similarity index 100%
rename from poky/meta/recipes-bsp/u-boot/u-boot_2019.01.bb
rename to poky/meta/recipes-bsp/u-boot/u-boot_2019.04.bb
diff --git a/poky/meta/recipes-connectivity/connman/connman.inc b/poky/meta/recipes-connectivity/connman/connman.inc
index 0a117e4..ae67079 100644
--- a/poky/meta/recipes-connectivity/connman/connman.inc
+++ b/poky/meta/recipes-connectivity/connman/connman.inc
@@ -53,6 +53,7 @@
PACKAGECONFIG[wispr] = "--enable-wispr,--disable-wispr,gnutls,"
PACKAGECONFIG[nftables] = "--with-firewall=nftables ,,libmnl libnftnl,,kernel-module-nf-tables-ipv4 kernel-module-nft-chain-nat-ipv4 kernel-module-nft-chain-route-ipv4 kernel-module-nft-meta kernel-module-nft-masq-ipv4 kernel-module-nft-nat"
PACKAGECONFIG[iptables] = "--with-firewall=iptables ,,iptables,iptables"
+PACKAGECONFIG[nfc] = "--enable-neard, --disable-neard, neard, neard"
INITSCRIPT_NAME = "connman"
INITSCRIPT_PARAMS = "start 05 5 2 3 . stop 22 0 1 6 ."
diff --git a/poky/meta/recipes-connectivity/connman/connman/0001-Fix-various-issues-which-cause-problems-under-musl.patch b/poky/meta/recipes-connectivity/connman/connman/0001-Fix-various-issues-which-cause-problems-under-musl.patch
deleted file mode 100644
index f344fea..0000000
--- a/poky/meta/recipes-connectivity/connman/connman/0001-Fix-various-issues-which-cause-problems-under-musl.patch
+++ /dev/null
@@ -1,362 +0,0 @@
-From 181ff3439783c6920f5211730672685a210c318f Mon Sep 17 00:00:00 2001
-From: Ross Burton <ross.burton@intel.com>
-Date: Mon, 8 Oct 2018 22:12:56 +0200
-Subject: [PATCH] Fix various issues which cause problems under musl
-
-Instead of using #define _GNU_SOURCE in some source files which causes
-problems when building with musl as more files need the define, simply
-use AC_USE_SYSTEM_EXTENSIONS in configure.ac to get it defined globally.
-
-Signed-off-by: Ross Burton <ross.burton@intel.com>
-Upstream-Status: Backport [bd1326ba7d68df38c5ccaafd2403a5fb30bd452b]
----
- configure.ac | 3 +++
- gdhcp/client.c | 1 -
- gdhcp/common.h | 5 +++--
- gweb/gresolv.c | 1 +
- plugins/tist.c | 1 -
- plugins/wifi.c | 3 +--
- src/backtrace.c | 1 -
- src/inet.c | 1 -
- src/ippool.c | 1 -
- src/iptables.c | 2 +-
- src/log.c | 1 -
- src/ntp.c | 1 -
- src/resolver.c | 1 -
- src/rfkill.c | 1 -
- src/stats.c | 1 -
- src/tethering.c | 2 --
- src/timezone.c | 1 -
- tools/dhcp-test.c | 1 -
- tools/dnsproxy-test.c | 1 +
- tools/private-network-test.c | 2 +-
- tools/stats-tool.c | 1 -
- tools/tap-test.c | 3 +--
- tools/wispr.c | 1 -
- vpn/plugins/vpn.c | 1 -
- 24 files changed, 12 insertions(+), 25 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index 39745f76..984126c2 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -20,6 +20,7 @@ AC_SUBST(abs_top_srcdir)
- AC_SUBST(abs_top_builddir)
-
- AC_LANG_C
-+AC_USE_SYSTEM_EXTENSIONS
-
- AC_PROG_CC
- AM_PROG_CC_C_O
-@@ -185,6 +186,8 @@ AC_CHECK_LIB(resolv, ns_initparse, dummy=yes, [
- AC_CHECK_HEADERS([execinfo.h])
- AM_CONDITIONAL([BACKTRACE], [test "${ac_cv_header_execinfo_h}" = "yes"])
-
-+AC_CHECK_MEMBERS([struct in6_pktinfo.ipi6_addr], [], [], [[#include <netinet/in.h>]])
-+
- AC_CHECK_FUNC(signalfd, dummy=yes,
- AC_MSG_ERROR(signalfd support is required))
-
-diff --git a/gdhcp/client.c b/gdhcp/client.c
-index 67357782..c7db76f0 100644
---- a/gdhcp/client.c
-+++ b/gdhcp/client.c
-@@ -23,7 +23,6 @@
- #include <config.h>
- #endif
-
--#define _GNU_SOURCE
- #include <stdio.h>
- #include <errno.h>
- #include <unistd.h>
-diff --git a/gdhcp/common.h b/gdhcp/common.h
-index 75abc183..6899499e 100644
---- a/gdhcp/common.h
-+++ b/gdhcp/common.h
-@@ -19,6 +19,7 @@
- *
- */
-
-+#include <config.h>
- #include <netinet/udp.h>
- #include <netinet/ip.h>
-
-@@ -170,8 +171,8 @@ static const uint8_t dhcp_option_lengths[] = {
- [OPTION_U32] = 4,
- };
-
--/* already defined within netinet/in.h if using GNU compiler */
--#ifndef __USE_GNU
-+/* already defined within netinet/in.h if using glibc or musl */
-+#ifndef HAVE_STRUCT_IN6_PKTINFO_IPI6_ADDR
- struct in6_pktinfo {
- struct in6_addr ipi6_addr; /* src/dst IPv6 address */
- unsigned int ipi6_ifindex; /* send/recv interface index */
-diff --git a/gweb/gresolv.c b/gweb/gresolv.c
-index 81c79b6c..b06f8932 100644
---- a/gweb/gresolv.c
-+++ b/gweb/gresolv.c
-@@ -29,6 +29,7 @@
- #include <string.h>
- #include <stdlib.h>
- #include <resolv.h>
-+#include <stdio.h>
- #include <sys/types.h>
- #include <sys/socket.h>
- #include <netdb.h>
-diff --git a/plugins/tist.c b/plugins/tist.c
-index ad5ef79e..cc2800a1 100644
---- a/plugins/tist.c
-+++ b/plugins/tist.c
-@@ -23,7 +23,6 @@
- #include <config.h>
- #endif
-
--#define _GNU_SOURCE
- #include <stdio.h>
- #include <stdbool.h>
- #include <stdlib.h>
-diff --git a/plugins/wifi.c b/plugins/wifi.c
-index dc08c6af..46e4cca4 100644
---- a/plugins/wifi.c
-+++ b/plugins/wifi.c
-@@ -30,9 +30,8 @@
- #include <string.h>
- #include <sys/ioctl.h>
- #include <sys/socket.h>
--#include <linux/if_arp.h>
--#include <linux/wireless.h>
- #include <net/ethernet.h>
-+#include <linux/wireless.h>
-
- #ifndef IFF_LOWER_UP
- #define IFF_LOWER_UP 0x10000
-diff --git a/src/backtrace.c b/src/backtrace.c
-index e8d7f432..bede6698 100644
---- a/src/backtrace.c
-+++ b/src/backtrace.c
-@@ -24,7 +24,6 @@
- #include <config.h>
- #endif
-
--#define _GNU_SOURCE
- #include <stdio.h>
- #include <unistd.h>
- #include <stdlib.h>
-diff --git a/src/inet.c b/src/inet.c
-index a31372b5..a58ce7c1 100644
---- a/src/inet.c
-+++ b/src/inet.c
-@@ -25,7 +25,6 @@
- #include <config.h>
- #endif
-
--#define _GNU_SOURCE
- #include <stdio.h>
- #include <errno.h>
- #include <unistd.h>
-diff --git a/src/ippool.c b/src/ippool.c
-index cea1dccd..8a645da2 100644
---- a/src/ippool.c
-+++ b/src/ippool.c
-@@ -28,7 +28,6 @@
- #include <stdio.h>
- #include <string.h>
- #include <unistd.h>
--#include <sys/errno.h>
- #include <sys/socket.h>
-
- #include "connman.h"
-diff --git a/src/iptables.c b/src/iptables.c
-index f3670e77..469effed 100644
---- a/src/iptables.c
-+++ b/src/iptables.c
-@@ -28,7 +28,7 @@
- #include <stdio.h>
- #include <string.h>
- #include <unistd.h>
--#include <sys/errno.h>
-+#include <errno.h>
- #include <sys/socket.h>
- #include <xtables.h>
- #include <inttypes.h>
-diff --git a/src/log.c b/src/log.c
-index 9bae4a3d..f7e82e5d 100644
---- a/src/log.c
-+++ b/src/log.c
-@@ -23,7 +23,6 @@
- #include <config.h>
- #endif
-
--#define _GNU_SOURCE
- #include <stdio.h>
- #include <unistd.h>
- #include <stdarg.h>
-diff --git a/src/ntp.c b/src/ntp.c
-index 51ba9aac..724ca188 100644
---- a/src/ntp.c
-+++ b/src/ntp.c
-@@ -23,7 +23,6 @@
- #include <config.h>
- #endif
-
--#define _GNU_SOURCE
- #include <errno.h>
- #include <fcntl.h>
- #include <unistd.h>
-diff --git a/src/resolver.c b/src/resolver.c
-index 76f0a8e1..10121aa5 100644
---- a/src/resolver.c
-+++ b/src/resolver.c
-@@ -23,7 +23,6 @@
- #include <config.h>
- #endif
-
--#define _GNU_SOURCE
- #include <stdio.h>
- #include <errno.h>
- #include <fcntl.h>
-diff --git a/src/rfkill.c b/src/rfkill.c
-index d9bed4d2..b2514c41 100644
---- a/src/rfkill.c
-+++ b/src/rfkill.c
-@@ -23,7 +23,6 @@
- #include <config.h>
- #endif
-
--#define _GNU_SOURCE
- #include <stdio.h>
- #include <errno.h>
- #include <fcntl.h>
-diff --git a/src/stats.c b/src/stats.c
-index 663bc382..c9ddc2e8 100644
---- a/src/stats.c
-+++ b/src/stats.c
-@@ -23,7 +23,6 @@
- #include <config.h>
- #endif
-
--#define _GNU_SOURCE
- #include <errno.h>
- #include <sys/mman.h>
- #include <sys/types.h>
-diff --git a/src/tethering.c b/src/tethering.c
-index 4b202369..f3cb36f4 100644
---- a/src/tethering.c
-+++ b/src/tethering.c
-@@ -34,8 +34,6 @@
- #include <string.h>
- #include <fcntl.h>
- #include <netinet/in.h>
--#include <linux/sockios.h>
--#include <linux/if_tun.h>
- #include <linux/if_bridge.h>
-
- #include "connman.h"
-diff --git a/src/timezone.c b/src/timezone.c
-index e346b11a..8e912670 100644
---- a/src/timezone.c
-+++ b/src/timezone.c
-@@ -23,7 +23,6 @@
- #include <config.h>
- #endif
-
--#define _GNU_SOURCE
- #include <errno.h>
- #include <stdio.h>
- #include <fcntl.h>
-diff --git a/tools/dhcp-test.c b/tools/dhcp-test.c
-index c34e10a8..eae66fc2 100644
---- a/tools/dhcp-test.c
-+++ b/tools/dhcp-test.c
-@@ -33,7 +33,6 @@
- #include <arpa/inet.h>
- #include <net/route.h>
- #include <net/ethernet.h>
--#include <linux/if_arp.h>
-
- #include <gdhcp/gdhcp.h>
-
-diff --git a/tools/dnsproxy-test.c b/tools/dnsproxy-test.c
-index 551cae91..371e2e23 100644
---- a/tools/dnsproxy-test.c
-+++ b/tools/dnsproxy-test.c
-@@ -24,6 +24,7 @@
- #endif
-
- #include <errno.h>
-+#include <stdio.h>
- #include <stdlib.h>
- #include <string.h>
- #include <unistd.h>
-diff --git a/tools/private-network-test.c b/tools/private-network-test.c
-index 3dd115ba..2828bb30 100644
---- a/tools/private-network-test.c
-+++ b/tools/private-network-test.c
-@@ -32,7 +32,7 @@
- #include <stdlib.h>
- #include <string.h>
- #include <signal.h>
--#include <sys/poll.h>
-+#include <poll.h>
- #include <sys/signalfd.h>
- #include <unistd.h>
-
-diff --git a/tools/stats-tool.c b/tools/stats-tool.c
-index efa39de2..5695048f 100644
---- a/tools/stats-tool.c
-+++ b/tools/stats-tool.c
-@@ -22,7 +22,6 @@
- #include <config.h>
- #endif
-
--#define _GNU_SOURCE
- #include <sys/mman.h>
- #include <sys/types.h>
- #include <sys/stat.h>
-diff --git a/tools/tap-test.c b/tools/tap-test.c
-index fdc098aa..cb3ee622 100644
---- a/tools/tap-test.c
-+++ b/tools/tap-test.c
-@@ -23,13 +23,12 @@
- #include <config.h>
- #endif
-
--#define _GNU_SOURCE
- #include <stdio.h>
- #include <errno.h>
- #include <fcntl.h>
- #include <unistd.h>
- #include <string.h>
--#include <sys/poll.h>
-+#include <poll.h>
- #include <sys/ioctl.h>
-
- #include <netinet/in.h>
-diff --git a/tools/wispr.c b/tools/wispr.c
-index d5f9341f..e56dfc16 100644
---- a/tools/wispr.c
-+++ b/tools/wispr.c
-@@ -23,7 +23,6 @@
- #include <config.h>
- #endif
-
--#define _GNU_SOURCE
- #include <stdio.h>
- #include <fcntl.h>
- #include <unistd.h>
-diff --git a/vpn/plugins/vpn.c b/vpn/plugins/vpn.c
-index 10548aaf..6e3f640c 100644
---- a/vpn/plugins/vpn.c
-+++ b/vpn/plugins/vpn.c
-@@ -23,7 +23,6 @@
- #include <config.h>
- #endif
-
--#define _GNU_SOURCE
- #include <string.h>
- #include <fcntl.h>
- #include <unistd.h>
---
-2.17.1
-
diff --git a/poky/meta/recipes-connectivity/connman/connman_1.36.bb b/poky/meta/recipes-connectivity/connman/connman_1.36.bb
deleted file mode 100644
index 6e4dbdf..0000000
--- a/poky/meta/recipes-connectivity/connman/connman_1.36.bb
+++ /dev/null
@@ -1,16 +0,0 @@
-require connman.inc
-
-SRC_URI = "${KERNELORG_MIRROR}/linux/network/${BPN}/${BP}.tar.xz \
- file://0001-plugin.h-Change-visibility-to-default-for-debug-symb.patch \
- file://0001-connman.service-stop-systemd-resolved-when-we-use-co.patch \
- file://connman \
- file://no-version-scripts.patch \
- file://0001-Fix-various-issues-which-cause-problems-under-musl.patch \
-"
-
-SRC_URI_append_libc-musl = " file://0002-resolve-musl-does-not-implement-res_ninit.patch"
-
-SRC_URI[md5sum] = "dae77d9c904d2c223ae849e32079d57e"
-SRC_URI[sha256sum] = "c789db41cc443fa41e661217ea321492ad59a004bebcd1aa013f3bc10a6e0074"
-
-RRECOMMENDS_${PN} = "connman-conf"
diff --git a/poky/meta/recipes-connectivity/connman/connman_1.37.bb b/poky/meta/recipes-connectivity/connman/connman_1.37.bb
new file mode 100644
index 0000000..2cf904c
--- /dev/null
+++ b/poky/meta/recipes-connectivity/connman/connman_1.37.bb
@@ -0,0 +1,15 @@
+require connman.inc
+
+SRC_URI = "${KERNELORG_MIRROR}/linux/network/${BPN}/${BP}.tar.xz \
+ file://0001-plugin.h-Change-visibility-to-default-for-debug-symb.patch \
+ file://0001-connman.service-stop-systemd-resolved-when-we-use-co.patch \
+ file://connman \
+ file://no-version-scripts.patch \
+"
+
+SRC_URI_append_libc-musl = " file://0002-resolve-musl-does-not-implement-res_ninit.patch"
+
+SRC_URI[md5sum] = "75012084f14fb63a84b116e66c6e94fb"
+SRC_URI[sha256sum] = "6ce29b3eb0bb16a7387bc609c39455fd13064bdcde5a4d185fab3a0c71946e16"
+
+RRECOMMENDS_${PN} = "connman-conf"
diff --git a/poky/meta/recipes-connectivity/dhcp/dhcp/0001-dhcpd-fix-Replace-custom-isc_boolean_t-with-C-standa.patch b/poky/meta/recipes-connectivity/dhcp/dhcp/0001-dhcpd-fix-Replace-custom-isc_boolean_t-with-C-standa.patch
deleted file mode 100644
index d2e5771..0000000
--- a/poky/meta/recipes-connectivity/dhcp/dhcp/0001-dhcpd-fix-Replace-custom-isc_boolean_t-with-C-standa.patch
+++ /dev/null
@@ -1,2882 +0,0 @@
-From ffb1d1325bd6503df9a324befac5f5039ac77432 Mon Sep 17 00:00:00 2001
-From: Armin Kuster <akuster@mvista.com>
-Date: Tue, 23 Oct 2018 10:36:56 +0000
-Subject: [PATCH] dhcpd: fix Replace custom isc_boolean_t with C standard bool
- type
-
-
-Upstream-Status: Pending
-
-Fixes issues introduced by bind when they changed their headers.
-
-Signed-off-by: Armin Kuster <akuster@mvista.com>
----
- includes/dhcpd.h | 34 +++++++++++++++++-----------------
- includes/heap.h | 2 +-
- includes/omapip/omapip.h | 2 +-
- includes/omapip/omapip_p.h | 6 +++---
- includes/tree.h | 2 +-
- 5 files changed, 23 insertions(+), 23 deletions(-)
-
-Index: dhcp-4.4.1/includes/dhcpd.h
-===================================================================
---- dhcp-4.4.1.orig/includes/dhcpd.h
-+++ dhcp-4.4.1/includes/dhcpd.h
-@@ -461,20 +461,20 @@ struct packet {
- * options we got in a previous exchange were still there, we need
- * to signal this in a reliable way.
- */
-- isc_boolean_t agent_options_stashed;
-+ bool agent_options_stashed;
-
- /*
- * ISC_TRUE if packet received unicast (as opposed to multicast).
- * Only used in DHCPv6.
- */
-- isc_boolean_t unicast;
-+ bool unicast;
-
- /* Propagates server value SV_ECHO_CLIENT_ID so it is available
- * in cons_options() */
- int sv_echo_client_id;
-
- /* Relay port check */
-- isc_boolean_t relay_source_port;
-+ bool relay_source_port;
- };
-
- /*
-@@ -1174,7 +1174,7 @@ struct dhc6_lease {
- struct dhc6_lease *next;
- struct data_string server_id;
-
-- isc_boolean_t released;
-+ bool released;
- int score;
- u_int8_t pref;
-
-@@ -1695,8 +1695,8 @@ struct ipv6_pool {
- int bits; /* number of bits, CIDR style */
- int units; /* allocation unit in bits */
- iasubopt_hash_t *leases; /* non-free leases */
-- isc_uint64_t num_active; /* count of active leases */
-- isc_uint64_t num_abandoned; /* count of abandoned leases */
-+ uint64_t num_active; /* count of active leases */
-+ uint64_t num_abandoned; /* count of abandoned leases */
- isc_heap_t *active_timeouts; /* timeouts for active leases */
- int num_inactive; /* count of inactive leases */
- isc_heap_t *inactive_timeouts; /* timeouts for expired or
-@@ -1732,11 +1732,11 @@ struct ipv6_pond {
- struct ipv6_pool **ipv6_pools; /* NULL-terminated array */
- int last_ipv6_pool; /* offset of last IPv6 pool
- used to issue a lease */
-- isc_uint64_t num_total; /* Total number of elements in the pond */
-- isc_uint64_t num_active; /* Number of elements in the pond in use */
-- isc_uint64_t num_abandoned; /* count of abandoned leases */
-+ uint64_t num_total; /* Total number of elements in the pond */
-+ uint64_t num_active; /* Number of elements in the pond in use */
-+ uint64_t num_abandoned; /* count of abandoned leases */
- int logged; /* already logged a message */
-- isc_uint64_t low_threshold; /* low threshold to restart logging */
-+ uint64_t low_threshold; /* low threshold to restart logging */
- int jumbo_range;
- #ifdef EUI_64
- int use_eui_64; /* use EUI-64 address assignment when true */
-@@ -1745,9 +1745,9 @@ struct ipv6_pond {
-
- /*
- * Max addresses in a pond that can be supported by log threshold
-- * Currently based on max value supported by isc_uint64_t.
-+ * Currently based on max value supported by uint64_t.
- */
--#define POND_TRACK_MAX ISC_UINT64_MAX
-+#define POND_TRACK_MAX UINT64_MAX
-
- /* Flags for dhcp_ddns_cb_t */
- #define DDNS_UPDATE_ADDR 0x0001
-@@ -1868,7 +1868,7 @@ lookup_fqdn6_option(struct universe *uni
- unsigned code);
- void
- save_fqdn6_option(struct universe *universe, struct option_state *options,
-- struct option_cache *oc, isc_boolean_t appendp);
-+ struct option_cache *oc, bool appendp);
- void
- delete_fqdn6_option(struct universe *universe, struct option_state *options,
- int code);
-@@ -1953,7 +1953,7 @@ void save_option(struct universe *, stru
- void also_save_option(struct universe *, struct option_state *,
- struct option_cache *);
- void save_hashed_option(struct universe *, struct option_state *,
-- struct option_cache *, isc_boolean_t appendp);
-+ struct option_cache *, bool appendp);
- void delete_option (struct universe *, struct option_state *, int);
- void delete_hashed_option (struct universe *,
- struct option_state *, int);
-@@ -2041,7 +2041,7 @@ int linked_option_state_dereference (str
- struct option_state *,
- const char *, int);
- void save_linked_option(struct universe *, struct option_state *,
-- struct option_cache *, isc_boolean_t appendp);
-+ struct option_cache *, bool appendp);
- void linked_option_space_foreach (struct packet *, struct lease *,
- struct client_state *,
- struct option_state *,
-@@ -2069,7 +2069,7 @@ void do_packet (struct interface_info *,
- struct dhcp_packet *, unsigned,
- unsigned int, struct iaddr, struct hardware *);
- void do_packet6(struct interface_info *, const char *,
-- int, int, const struct iaddr *, isc_boolean_t);
-+ int, int, const struct iaddr *, bool);
- int packet6_len_okay(const char *, int);
-
- int validate_packet(struct packet *);
-@@ -2224,7 +2224,7 @@ uint32_t parse_byte_order_uint32(const v
- int ddns_updates(struct packet *, struct lease *, struct lease *,
- struct iasubopt *, struct iasubopt *, struct option_state *);
- isc_result_t ddns_removals(struct lease *, struct iasubopt *,
-- struct dhcp_ddns_cb *, isc_boolean_t);
-+ struct dhcp_ddns_cb *, bool);
- u_int16_t get_conflict_mask(struct option_state *input_options);
- #if defined (TRACING)
- void trace_ddns_init(void);
-@@ -2450,7 +2450,7 @@ void dhcpleasequery (struct packet *, in
- void dhcpv6_leasequery (struct data_string *, struct packet *);
-
- /* dhcpv6.c */
--isc_boolean_t server_duid_isset(void);
-+bool server_duid_isset(void);
- void copy_server_duid(struct data_string *ds, const char *file, int line);
- void set_server_duid(struct data_string *new_duid);
- isc_result_t set_server_duid_from_option(void);
-@@ -2852,7 +2852,7 @@ extern void (*bootp_packet_handler) (str
- struct iaddr, struct hardware *);
- extern void (*dhcpv6_packet_handler)(struct interface_info *,
- const char *, int,
-- int, const struct iaddr *, isc_boolean_t);
-+ int, const struct iaddr *, bool);
- extern struct timeout *timeouts;
- extern omapi_object_type_t *dhcp_type_interface;
- #if defined (TRACING)
-@@ -2943,7 +2943,7 @@ int addr_or(struct iaddr *result,
- const struct iaddr *a1, const struct iaddr *a2);
- int addr_and(struct iaddr *result,
- const struct iaddr *a1, const struct iaddr *a2);
--isc_boolean_t is_cidr_mask_valid(const struct iaddr *addr, int bits);
-+bool is_cidr_mask_valid(const struct iaddr *addr, int bits);
- isc_result_t range2cidr(struct iaddrcidrnetlist **result,
- const struct iaddr *lo, const struct iaddr *hi);
- isc_result_t free_iaddrcidrnetlist(struct iaddrcidrnetlist **result);
-@@ -3787,7 +3787,7 @@ isc_result_t ia_add_iasubopt(struct ia_x
- const char *file, int line);
- void ia_remove_iasubopt(struct ia_xx *ia, struct iasubopt *iasubopt,
- const char *file, int line);
--isc_boolean_t ia_equal(const struct ia_xx *a, const struct ia_xx *b);
-+bool ia_equal(const struct ia_xx *a, const struct ia_xx *b);
-
- isc_result_t ipv6_pool_allocate(struct ipv6_pool **pool, u_int16_t type,
- const struct in6_addr *start_addr,
-@@ -3820,9 +3820,9 @@ isc_result_t expire_lease6(struct iasubo
- struct ipv6_pool *pool, time_t now);
- isc_result_t release_lease6(struct ipv6_pool *pool, struct iasubopt *lease);
- isc_result_t decline_lease6(struct ipv6_pool *pool, struct iasubopt *lease);
--isc_boolean_t lease6_exists(const struct ipv6_pool *pool,
-+bool lease6_exists(const struct ipv6_pool *pool,
- const struct in6_addr *addr);
--isc_boolean_t lease6_usable(struct iasubopt *lease);
-+bool lease6_usable(struct iasubopt *lease);
- isc_result_t cleanup_lease6(ia_hash_t *ia_table,
- struct ipv6_pool *pool,
- struct iasubopt *lease,
-@@ -3834,13 +3834,13 @@ isc_result_t create_prefix6(struct ipv6_
- unsigned int *attempts,
- const struct data_string *uid,
- time_t soft_lifetime_end_time);
--isc_boolean_t prefix6_exists(const struct ipv6_pool *pool,
-+bool prefix6_exists(const struct ipv6_pool *pool,
- const struct in6_addr *pref, u_int8_t plen);
-
- isc_result_t add_ipv6_pool(struct ipv6_pool *pool);
- isc_result_t find_ipv6_pool(struct ipv6_pool **pool, u_int16_t type,
- const struct in6_addr *addr);
--isc_boolean_t ipv6_in_pool(const struct in6_addr *addr,
-+bool ipv6_in_pool(const struct in6_addr *addr,
- const struct ipv6_pool *pool);
- isc_result_t ipv6_pond_allocate(struct ipv6_pond **pond,
- const char *file, int line);
-Index: dhcp-4.4.1/includes/heap.h
-===================================================================
---- dhcp-4.4.1.orig/includes/heap.h
-+++ dhcp-4.4.1/includes/heap.h
-@@ -26,7 +26,7 @@
- * The comparision function returns ISC_TRUE if the first argument has
- * higher priority than the second argument, and ISC_FALSE otherwise.
- */
--typedef isc_boolean_t (*isc_heapcompare_t)(void *, void *);
-+typedef bool (*isc_heapcompare_t)(void *, void *);
-
- /*%
- * The index function allows the client of the heap to receive a callback
-Index: dhcp-4.4.1/includes/omapip/omapip.h
-===================================================================
---- dhcp-4.4.1.orig/includes/omapip/omapip.h
-+++ dhcp-4.4.1/includes/omapip/omapip.h
-@@ -264,7 +264,7 @@ isc_result_t omapi_protocol_connect (oma
- isc_result_t omapi_connect_list (omapi_object_t *, omapi_addr_list_t *,
- omapi_addr_t *);
- isc_result_t omapi_protocol_listen (omapi_object_t *, unsigned, int);
--isc_boolean_t omapi_protocol_authenticated (omapi_object_t *);
-+bool omapi_protocol_authenticated (omapi_object_t *);
- isc_result_t omapi_protocol_configure_security (omapi_object_t *,
- isc_result_t (*)
- (omapi_object_t *,
-Index: dhcp-4.4.1/includes/omapip/omapip_p.h
-===================================================================
---- dhcp-4.4.1.orig/includes/omapip/omapip_p.h
-+++ dhcp-4.4.1/includes/omapip/omapip_p.h
-@@ -149,7 +149,7 @@ typedef struct __omapi_protocol_object {
- omapi_remote_auth_t *remote_auth_list; /* Authenticators active on
- this connection. */
-
-- isc_boolean_t insecure; /* Set to allow unauthenticated
-+ bool insecure; /* Set to allow unauthenticated
- messages. */
-
- isc_result_t (*verify_auth) (omapi_object_t *, omapi_auth_key_t *);
-@@ -158,7 +158,7 @@ typedef struct __omapi_protocol_object {
- typedef struct {
- OMAPI_OBJECT_PREAMBLE;
-
-- isc_boolean_t insecure; /* Set to allow unauthenticated
-+ bool insecure; /* Set to allow unauthenticated
- messages. */
-
- isc_result_t (*verify_auth) (omapi_object_t *, omapi_auth_key_t *);
-@@ -208,7 +208,7 @@ typedef struct __omapi_io_object {
- isc_result_t (*writer) (omapi_object_t *);
- isc_result_t (*reaper) (omapi_object_t *);
- isc_socket_t *fd;
-- isc_boolean_t closed; /* ISC_TRUE = closed, do not use */
-+ bool closed; /* ISC_TRUE = closed, do not use */
- } omapi_io_object_t;
-
- typedef struct __omapi_generic_object {
-Index: dhcp-4.4.1/includes/tree.h
-===================================================================
---- dhcp-4.4.1.orig/includes/tree.h
-+++ dhcp-4.4.1/includes/tree.h
-@@ -304,7 +304,7 @@ struct universe {
- struct option_state *,
- unsigned);
- void (*save_func) (struct universe *, struct option_state *,
-- struct option_cache *, isc_boolean_t);
-+ struct option_cache *, bool );
- void (*foreach) (struct packet *,
- struct lease *, struct client_state *,
- struct option_state *, struct option_state *,
-Index: dhcp-4.4.1/common/conflex.c
-===================================================================
---- dhcp-4.4.1.orig/common/conflex.c
-+++ dhcp-4.4.1/common/conflex.c
-@@ -322,7 +322,7 @@ get_raw_token(struct parse *cfile) {
-
- static enum dhcp_token
- get_next_token(const char **rval, unsigned *rlen,
-- struct parse *cfile, isc_boolean_t raw) {
-+ struct parse *cfile, bool raw) {
- int rv;
-
- if (cfile -> token) {
-@@ -367,7 +367,7 @@ get_next_token(const char **rval, unsign
-
- enum dhcp_token
- next_token(const char **rval, unsigned *rlen, struct parse *cfile) {
-- return get_next_token(rval, rlen, cfile, ISC_FALSE);
-+ return get_next_token(rval, rlen, cfile, false);
- }
-
-
-@@ -378,7 +378,7 @@ next_token(const char **rval, unsigned *
-
- enum dhcp_token
- next_raw_token(const char **rval, unsigned *rlen, struct parse *cfile) {
-- return get_next_token(rval, rlen, cfile, ISC_TRUE);
-+ return get_next_token(rval, rlen, cfile, true);
- }
-
-
-@@ -393,7 +393,7 @@ next_raw_token(const char **rval, unsign
-
- enum dhcp_token
- do_peek_token(const char **rval, unsigned int *rlen,
-- struct parse *cfile, isc_boolean_t raw) {
-+ struct parse *cfile, bool raw) {
- int x;
-
- if (!cfile->token || (!raw && (cfile->token == WHITESPACE))) {
-@@ -441,7 +441,7 @@ do_peek_token(const char **rval, unsigne
-
- enum dhcp_token
- peek_token(const char **rval, unsigned *rlen, struct parse *cfile) {
-- return do_peek_token(rval, rlen, cfile, ISC_FALSE);
-+ return do_peek_token(rval, rlen, cfile, false);
- }
-
-
-@@ -452,7 +452,7 @@ peek_token(const char **rval, unsigned *
-
- enum dhcp_token
- peek_raw_token(const char **rval, unsigned *rlen, struct parse *cfile) {
-- return do_peek_token(rval, rlen, cfile, ISC_TRUE);
-+ return do_peek_token(rval, rlen, cfile, true);
- }
-
- static void skip_to_eol (cfile)
-Index: dhcp-4.4.1/common/discover.c
-===================================================================
---- dhcp-4.4.1.orig/common/discover.c
-+++ dhcp-4.4.1/common/discover.c
-@@ -73,7 +73,7 @@ void (*bootp_packet_handler) (struct int
- void (*dhcpv6_packet_handler)(struct interface_info *,
- const char *, int,
- int, const struct iaddr *,
-- isc_boolean_t);
-+ bool);
- #endif /* DHCPv6 */
-
-
-@@ -236,7 +236,7 @@ struct iface_conf_list {
- struct iface_info {
- char name[IF_NAMESIZE+1]; /* name of the interface, e.g. "bge0" */
- struct sockaddr_storage addr; /* address information */
-- isc_uint64_t flags; /* interface flags, e.g. IFF_LOOPBACK */
-+ uint64_t flags; /* interface flags, e.g. IFF_LOOPBACK */
- };
-
- /*
-@@ -312,14 +312,14 @@ int
- next_iface(struct iface_info *info, int *err, struct iface_conf_list *ifaces) {
- struct LIFREQ *p;
- struct LIFREQ tmp;
-- isc_boolean_t foundif;
-+ bool foundif;
- #if defined(sun) || defined(__linux)
- /* Pointer used to remove interface aliases. */
- char *s;
- #endif
-
- do {
-- foundif = ISC_FALSE;
-+ foundif = false;
-
- if (ifaces->next >= ifaces->num) {
- *err = 0;
-@@ -353,8 +353,8 @@ next_iface(struct iface_info *info, int
- }
- #endif /* defined(sun) || defined(__linux) */
-
-- foundif = ISC_TRUE;
-- } while ((foundif == ISC_FALSE) ||
-+ foundif = true;
-+ } while ((foundif == false) ||
- (strncmp(info->name, "dummy", 5) == 0));
-
- memset(&tmp, 0, sizeof(tmp));
-@@ -410,7 +410,7 @@ struct iface_conf_list {
- struct iface_info {
- char name[IFNAMSIZ]; /* name of the interface, e.g. "bge0" */
- struct sockaddr_storage addr; /* address information */
-- isc_uint64_t flags; /* interface flags, e.g. IFF_LOOPBACK */
-+ uint64_t flags; /* interface flags, e.g. IFF_LOOPBACK */
- };
-
- /*
-@@ -1190,9 +1190,9 @@ got_one_v6(omapi_object_t *h) {
- * If a packet is not multicast, we assume it is unicast.
- */
- if (IN6_IS_ADDR_MULTICAST(&to)) {
-- is_unicast = ISC_FALSE;
-+ is_unicast = false;
- } else {
-- is_unicast = ISC_TRUE;
-+ is_unicast = true;
- }
-
- ifrom.len = 16;
-Index: dhcp-4.4.1/omapip/iscprint.c
-===================================================================
---- dhcp-4.4.1.orig/omapip/iscprint.c
-+++ dhcp-4.4.1/omapip/iscprint.c
-@@ -59,8 +59,8 @@ isc_print_vsnprintf(char *str, size_t si
- int plus;
- int space;
- int neg;
-- isc_int64_t tmpi;
-- isc_uint64_t tmpui;
-+ int64_t tmpi;
-+ uint64_t tmpui;
- unsigned long width;
- unsigned long precision;
- unsigned int length;
-@@ -234,7 +234,7 @@ isc_print_vsnprintf(char *str, size_t si
- goto printint;
- case 'o':
- if (q)
-- tmpui = va_arg(ap, isc_uint64_t);
-+ tmpui = va_arg(ap, uint64_t);
- else if (l)
- tmpui = va_arg(ap, long int);
- else
-@@ -244,7 +244,7 @@ isc_print_vsnprintf(char *str, size_t si
- goto printint;
- case 'u':
- if (q)
-- tmpui = va_arg(ap, isc_uint64_t);
-+ tmpui = va_arg(ap, uint64_t);
- else if (l)
- tmpui = va_arg(ap, unsigned long int);
- else
-@@ -253,7 +253,7 @@ isc_print_vsnprintf(char *str, size_t si
- goto printint;
- case 'x':
- if (q)
-- tmpui = va_arg(ap, isc_uint64_t);
-+ tmpui = va_arg(ap, uint64_t);
- else if (l)
- tmpui = va_arg(ap, unsigned long int);
- else
-@@ -267,7 +267,7 @@ isc_print_vsnprintf(char *str, size_t si
- goto printint;
- case 'X':
- if (q)
-- tmpui = va_arg(ap, isc_uint64_t);
-+ tmpui = va_arg(ap, uint64_t);
- else if (l)
- tmpui = va_arg(ap, unsigned long int);
- else
-Index: dhcp-4.4.1/server/confpars.c
-===================================================================
---- dhcp-4.4.1.orig/server/confpars.c
-+++ dhcp-4.4.1/server/confpars.c
-@@ -4005,15 +4005,15 @@ add_ipv6_pool_to_subnet(struct subnet *s
-
- /* Only bother if we aren't already flagged as jumbo */
- if (pond->jumbo_range == 0) {
-- if ((units - bits) > (sizeof(isc_uint64_t) * 8)) {
-+ if ((units - bits) > (sizeof(uint64_t) * 8)) {
- pond->jumbo_range = 1;
- pond->num_total = POND_TRACK_MAX;
- }
- else {
-- isc_uint64_t space_left
-+ uint64_t space_left
- = POND_TRACK_MAX - pond->num_total;
-- isc_uint64_t addon
-- = (isc_uint64_t)(1) << (units - bits);
-+ uint64_t addon
-+ = (uint64_t)(1) << (units - bits);
-
- if (addon > space_left) {
- pond->jumbo_range = 1;
-@@ -4739,7 +4739,7 @@ parse_ia_na_declaration(struct parse *cf
- struct iasubopt *iaaddr;
- struct ipv6_pool *pool;
- char addr_buf[sizeof("ffff:ffff:ffff:ffff:ffff:ffff:255.255.255.255")];
-- isc_boolean_t newbinding;
-+ bool newbinding;
- struct binding_scope *scope = NULL;
- struct binding *bnd;
- struct binding_value *nv = NULL;
-@@ -4959,9 +4959,9 @@ parse_ia_na_declaration(struct parse *cf
- }
- strcpy(bnd->name, val);
-
-- newbinding = ISC_TRUE;
-+ newbinding = true;
- } else {
-- newbinding = ISC_FALSE;
-+ newbinding = false;
- }
-
- if (!binding_value_allocate(&nv, MDL)) {
-@@ -5186,7 +5186,7 @@ parse_ia_ta_declaration(struct parse *cf
- struct iasubopt *iaaddr;
- struct ipv6_pool *pool;
- char addr_buf[sizeof("ffff:ffff:ffff:ffff:ffff:ffff:255.255.255.255")];
-- isc_boolean_t newbinding;
-+ bool newbinding;
- struct binding_scope *scope = NULL;
- struct binding *bnd;
- struct binding_value *nv = NULL;
-@@ -5406,9 +5406,9 @@ parse_ia_ta_declaration(struct parse *cf
- }
- strcpy(bnd->name, val);
-
-- newbinding = ISC_TRUE;
-+ newbinding = true;
- } else {
-- newbinding = ISC_FALSE;
-+ newbinding = false;
- }
-
- if (!binding_value_allocate(&nv, MDL)) {
-@@ -5623,7 +5623,7 @@ parse_ia_pd_declaration(struct parse *cf
- struct iasubopt *iapref;
- struct ipv6_pool *pool;
- char addr_buf[sizeof("ffff:ffff:ffff:ffff:ffff:ffff:255.255.255.255")];
-- isc_boolean_t newbinding;
-+ bool newbinding;
- struct binding_scope *scope = NULL;
- struct binding *bnd;
- struct binding_value *nv = NULL;
-@@ -5843,9 +5843,9 @@ parse_ia_pd_declaration(struct parse *cf
- }
- strcpy(bnd->name, val);
-
-- newbinding = ISC_TRUE;
-+ newbinding = true;
- } else {
-- newbinding = ISC_FALSE;
-+ newbinding = false;
- }
-
- if (!binding_value_allocate(&nv, MDL)) {
-Index: dhcp-4.4.1/server/dhcpv6.c
-===================================================================
---- dhcp-4.4.1.orig/server/dhcpv6.c
-+++ dhcp-4.4.1/server/dhcpv6.c
-@@ -71,8 +71,8 @@ struct reply_state {
- unsigned ia_count;
- unsigned pd_count;
- unsigned client_resources;
-- isc_boolean_t resources_included;
-- isc_boolean_t static_lease;
-+ bool resources_included;
-+ bool static_lease;
- unsigned static_prefixes;
- struct ia_xx *ia;
- struct ia_xx *old_ia;
-@@ -123,7 +123,7 @@ static isc_result_t shared_network_from_
- struct packet *packet);
- static void seek_shared_host(struct host_decl **hp,
- struct shared_network *shared);
--static isc_boolean_t fixed_matches_shared(struct host_decl *host,
-+static bool fixed_matches_shared(struct host_decl *host,
- struct shared_network *shared);
- static isc_result_t reply_process_ia_na(struct reply_state *reply,
- struct option_cache *ia);
-@@ -131,9 +131,9 @@ static isc_result_t reply_process_ia_ta(
- struct option_cache *ia);
- static isc_result_t reply_process_addr(struct reply_state *reply,
- struct option_cache *addr);
--static isc_boolean_t address_is_owned(struct reply_state *reply,
-+static bool address_is_owned(struct reply_state *reply,
- struct iaddr *addr);
--static isc_boolean_t temporary_is_available(struct reply_state *reply,
-+static bool temporary_is_available(struct reply_state *reply,
- struct iaddr *addr);
- static isc_result_t find_client_temporaries(struct reply_state *reply);
- static isc_result_t reply_process_try_addr(struct reply_state *reply,
-@@ -151,7 +151,7 @@ static isc_result_t reply_process_ia_pd(
- static struct group *find_group_by_prefix(struct reply_state *reply);
- static isc_result_t reply_process_prefix(struct reply_state *reply,
- struct option_cache *pref);
--static isc_boolean_t prefix_is_owned(struct reply_state *reply,
-+static bool prefix_is_owned(struct reply_state *reply,
- struct iaddrcidrnet *pref);
- static isc_result_t find_client_prefix(struct reply_state *reply);
- static isc_result_t reply_process_try_prefix(struct reply_state *reply,
-@@ -174,7 +174,7 @@ static void unicast_reject(struct data_s
- const struct data_string *client_id,
- const struct data_string *server_id);
-
--static isc_boolean_t is_unicast_option_defined(struct packet *packet);
-+static bool is_unicast_option_defined(struct packet *packet);
- static isc_result_t shared_network_from_requested_addr (struct shared_network
- **shared,
- struct packet* packet);
-@@ -363,7 +363,7 @@ static struct data_string server_duid;
- /*
- * Check if the server_duid has been set.
- */
--isc_boolean_t
-+bool
- server_duid_isset(void) {
- return (server_duid.data != NULL);
- }
-@@ -992,7 +992,7 @@ void check_pool6_threshold(struct reply_
- struct iasubopt *lease)
- {
- struct ipv6_pond *pond;
-- isc_uint64_t used, count, high_threshold;
-+ uint64_t used, count, high_threshold;
- int poolhigh = 0, poollow = 0;
- char *shared_name = "no name";
- char tmp_addr[INET6_ADDRSTRLEN];
-@@ -1310,9 +1310,9 @@ pick_v6_address(struct reply_state *repl
- unsigned int attempts;
- char tmp_buf[INET6_ADDRSTRLEN];
- struct iasubopt **addr = &reply->lease;
-- isc_uint64_t total = 0;
-- isc_uint64_t active = 0;
-- isc_uint64_t abandoned = 0;
-+ uint64_t total = 0;
-+ uint64_t active = 0;
-+ uint64_t abandoned = 0;
- int jumbo_range = 0;
- char *shared_name = (reply->shared->name ?
- reply->shared->name : "(no name)");
-@@ -1825,7 +1825,7 @@ lease_to_client(struct data_string *repl
-
- /* Start counting resources (addresses) offered. */
- reply.client_resources = 0;
-- reply.resources_included = ISC_FALSE;
-+ reply.resources_included = false;
-
- status = reply_process_ia_na(&reply, oc);
-
-@@ -1843,7 +1843,7 @@ lease_to_client(struct data_string *repl
-
- /* Start counting resources (addresses) offered. */
- reply.client_resources = 0;
-- reply.resources_included = ISC_FALSE;
-+ reply.resources_included = false;
-
- status = reply_process_ia_ta(&reply, oc);
-
-@@ -1864,7 +1864,7 @@ lease_to_client(struct data_string *repl
-
- /* Start counting resources (prefixes) offered. */
- reply.client_resources = 0;
-- reply.resources_included = ISC_FALSE;
-+ reply.resources_included = false;
-
- status = reply_process_ia_pd(&reply, oc);
-
-@@ -2077,9 +2077,9 @@ reply_process_ia_na(struct reply_state *
- tmp_addr, MDL) == 0)
- log_fatal("Impossible condition at %s:%d.", MDL);
-
-- reply->static_lease = ISC_TRUE;
-+ reply->static_lease = true;
- } else
-- reply->static_lease = ISC_FALSE;
-+ reply->static_lease = false;
-
- /*
- * Save the cursor position at the start of the IA, so we can
-@@ -2778,7 +2778,7 @@ reply_process_addr(struct reply_state *r
- * (fault out all else). Otherwise it's a dynamic address, so lookup
- * that address and make sure it belongs to this DUID:IAID pair.
- */
--static isc_boolean_t
-+static bool
- address_is_owned(struct reply_state *reply, struct iaddr *addr) {
- int i;
- struct ipv6_pond *pond;
-@@ -2791,13 +2791,13 @@ address_is_owned(struct reply_state *rep
- log_fatal("Impossible condition at %s:%d.", MDL);
-
- if (memcmp(addr->iabuf, reply->fixed.data, 16) == 0)
-- return (ISC_TRUE);
-+ return (true);
-
-- return (ISC_FALSE);
-+ return (false);
- }
-
- if ((reply->old_ia == NULL) || (reply->old_ia->num_iasubopt == 0))
-- return (ISC_FALSE);
-+ return (false);
-
- for (i = 0 ; i < reply->old_ia->num_iasubopt ; i++) {
- struct iasubopt *tmp;
-@@ -2805,8 +2805,8 @@ address_is_owned(struct reply_state *rep
- tmp = reply->old_ia->iasubopt[i];
-
- if (memcmp(addr->iabuf, &tmp->addr, 16) == 0) {
-- if (lease6_usable(tmp) == ISC_FALSE) {
-- return (ISC_FALSE);
-+ if (lease6_usable(tmp) == false) {
-+ return (false);
- }
-
- pond = tmp->ipv6_pool->ipv6_pond;
-@@ -2814,15 +2814,15 @@ address_is_owned(struct reply_state *rep
- (permitted(reply->packet, pond->prohibit_list))) ||
- ((pond->permit_list != NULL) &&
- (!permitted(reply->packet, pond->permit_list))))
-- return (ISC_FALSE);
-+ return (false);
-
- iasubopt_reference(&reply->lease, tmp, MDL);
-
-- return (ISC_TRUE);
-+ return (true);
- }
- }
-
-- return (ISC_FALSE);
-+ return (false);
- }
-
- /* Process a client-supplied IA_TA. This may append options to the tail of
-@@ -2890,7 +2890,7 @@ reply_process_ia_ta(struct reply_state *
- /*
- * Temporary leases are dynamic by definition.
- */
-- reply->static_lease = ISC_FALSE;
-+ reply->static_lease = false;
-
- /*
- * Save the cursor position at the start of the IA, so we can
-@@ -2972,7 +2972,7 @@ reply_process_ia_ta(struct reply_state *
- }
- status = ISC_R_CANCELED;
- reply->client_resources = 0;
-- reply->resources_included = ISC_FALSE;
-+ reply->resources_included = false;
- if (reply->lease != NULL)
- iasubopt_dereference(&reply->lease, MDL);
- }
-@@ -3364,7 +3364,7 @@ void shorten_lifetimes(struct reply_stat
- /*
- * Verify the temporary address is available.
- */
--static isc_boolean_t
-+static bool
- temporary_is_available(struct reply_state *reply, struct iaddr *addr) {
- struct in6_addr tmp_addr;
- struct subnet *subnet;
-@@ -3379,7 +3379,7 @@ temporary_is_available(struct reply_stat
- * So this is not a request for this address.
- */
- if (IN6_IS_ADDR_UNSPECIFIED(&tmp_addr))
-- return ISC_FALSE;
-+ return false;
-
- /*
- * Verify that this address is on the client's network.
-@@ -3393,13 +3393,13 @@ temporary_is_available(struct reply_stat
-
- /* Address not found on shared network. */
- if (subnet == NULL)
-- return ISC_FALSE;
-+ return false;
-
- /*
- * Check if this address is owned (must be before next step).
- */
- if (address_is_owned(reply, addr))
-- return ISC_TRUE;
-+ return true;
-
- /*
- * Verify that this address is in a temporary pool and try to get it.
-@@ -3424,18 +3424,18 @@ temporary_is_available(struct reply_stat
- }
-
- if (pool == NULL)
-- return ISC_FALSE;
-+ return false;
- if (lease6_exists(pool, &tmp_addr))
-- return ISC_FALSE;
-+ return false;
- if (iasubopt_allocate(&reply->lease, MDL) != ISC_R_SUCCESS)
-- return ISC_FALSE;
-+ return false;
- reply->lease->addr = tmp_addr;
- reply->lease->plen = 0;
- /* Default is soft binding for 2 minutes. */
- if (add_lease6(pool, reply->lease, cur_time + 120) != ISC_R_SUCCESS)
-- return ISC_FALSE;
-+ return false;
-
-- return ISC_TRUE;
-+ return true;
- }
-
- /*
-@@ -3652,7 +3652,7 @@ find_client_address(struct reply_state *
- */
-
- if ((candidate_shared != reply->shared) ||
-- (lease6_usable(lease) != ISC_TRUE))
-+ (lease6_usable(lease) != true))
- continue;
-
- if (((pond->prohibit_list != NULL) &&
-@@ -3971,7 +3971,7 @@ reply_process_send_addr(struct reply_sta
- goto cleanup;
- }
-
-- reply->resources_included = ISC_TRUE;
-+ reply->resources_included = true;
-
- cleanup:
- if (data.data != NULL)
-@@ -4722,7 +4722,7 @@ reply_process_prefix(struct reply_state
- * (fault out all else). Otherwise it's a dynamic prefix, so lookup
- * that prefix and make sure it belongs to this DUID:IAID pair.
- */
--static isc_boolean_t
-+static bool
- prefix_is_owned(struct reply_state *reply, struct iaddrcidrnet *pref) {
- struct iaddrcidrnetlist *l;
- int i;
-@@ -4736,14 +4736,14 @@ prefix_is_owned(struct reply_state *repl
- if ((pref->bits == l->cidrnet.bits) &&
- (memcmp(pref->lo_addr.iabuf,
- l->cidrnet.lo_addr.iabuf, 16) == 0))
-- return (ISC_TRUE);
-+ return (true);
- }
-- return (ISC_FALSE);
-+ return (false);
- }
-
- if ((reply->old_ia == NULL) ||
- (reply->old_ia->num_iasubopt == 0))
-- return (ISC_FALSE);
-+ return (false);
-
- for (i = 0 ; i < reply->old_ia->num_iasubopt ; i++) {
- struct iasubopt *tmp;
-@@ -4752,8 +4752,8 @@ prefix_is_owned(struct reply_state *repl
-
- if ((pref->bits == (int) tmp->plen) &&
- (memcmp(pref->lo_addr.iabuf, &tmp->addr, 16) == 0)) {
-- if (lease6_usable(tmp) == ISC_FALSE) {
-- return (ISC_FALSE);
-+ if (lease6_usable(tmp) == false) {
-+ return (false);
- }
-
- pond = tmp->ipv6_pool->ipv6_pond;
-@@ -4761,14 +4761,14 @@ prefix_is_owned(struct reply_state *repl
- (permitted(reply->packet, pond->prohibit_list))) ||
- ((pond->permit_list != NULL) &&
- (!permitted(reply->packet, pond->permit_list))))
-- return (ISC_FALSE);
-+ return (false);
-
- iasubopt_reference(&reply->lease, tmp, MDL);
-- return (ISC_TRUE);
-+ return (true);
- }
- }
-
-- return (ISC_FALSE);
-+ return (false);
- }
-
- /*
-@@ -4914,7 +4914,7 @@ find_client_prefix(struct reply_state *r
- */
- if (((candidate_shared != NULL) &&
- (candidate_shared != reply->shared)) ||
-- (lease6_usable(prefix) != ISC_TRUE))
-+ (lease6_usable(prefix) != true))
- continue;
-
- /*
-@@ -5233,7 +5233,7 @@ reply_process_send_prefix(struct reply_s
- goto cleanup;
- }
-
-- reply->resources_included = ISC_TRUE;
-+ reply->resources_included = true;
-
- cleanup:
- if (data.data != NULL)
-@@ -5383,8 +5383,8 @@ dhcpv6_request(struct data_string *reply
-
- /* If the REQUEST arrived via unicast and unicast option isn't set,
- * reject it per RFC 3315, Sec 18.2.1 */
-- if (packet->unicast == ISC_TRUE &&
-- is_unicast_option_defined(packet) == ISC_FALSE) {
-+ if (packet->unicast == true &&
-+ is_unicast_option_defined(packet) == false) {
- unicast_reject(reply_ret, packet, &client_id, &server_id);
- } else {
- /*
-@@ -5505,7 +5505,7 @@ dhcpv6_confirm(struct data_string *reply
- struct option_state *cli_enc_opt_state, *opt_state;
- struct iaddr cli_addr;
- int pass;
-- isc_boolean_t inappropriate, has_addrs;
-+ bool inappropriate, has_addrs;
- char reply_data[65536];
- struct dhcpv6_packet *reply = (struct dhcpv6_packet *)reply_data;
- int reply_ofs = (int)(offsetof(struct dhcpv6_packet, options));
-@@ -5556,7 +5556,7 @@ dhcpv6_confirm(struct data_string *reply
- goto exit;
-
- /* Are the addresses in all the IA's appropriate for that link? */
-- has_addrs = inappropriate = ISC_FALSE;
-+ has_addrs = inappropriate = false;
- pass = D6O_IA_NA;
- while(!inappropriate) {
- /* If we've reached the end of the IA_NA pass, move to the
-@@ -5602,7 +5602,7 @@ dhcpv6_confirm(struct data_string *reply
- data_string_forget(&iaaddr, MDL);
-
- /* Record that we've processed at least one address. */
-- has_addrs = ISC_TRUE;
-+ has_addrs = true;
-
- /* Find out if any subnets cover this address. */
- for (subnet = shared->subnets ; subnet != NULL ;
-@@ -5621,7 +5621,7 @@ dhcpv6_confirm(struct data_string *reply
- * continue searching.
- */
- if (subnet == NULL) {
-- inappropriate = ISC_TRUE;
-+ inappropriate = true;
- break;
- }
- }
-@@ -5719,8 +5719,8 @@ dhcpv6_renew(struct data_string *reply,
-
- /* If the RENEW arrived via unicast and unicast option isn't set,
- * reject it per RFC 3315, Sec 18.2.3 */
-- if (packet->unicast == ISC_TRUE &&
-- is_unicast_option_defined(packet) == ISC_FALSE) {
-+ if (packet->unicast == true &&
-+ is_unicast_option_defined(packet) == false) {
- unicast_reject(reply, packet, &client_id, &server_id);
- } else {
- /*
-@@ -6142,8 +6142,8 @@ dhcpv6_decline(struct data_string *reply
-
- /* If the DECLINE arrived via unicast and unicast option isn't set,
- * reject it per RFC 3315, Sec 18.2.7 */
-- if (packet->unicast == ISC_TRUE &&
-- is_unicast_option_defined(packet) == ISC_FALSE) {
-+ if (packet->unicast == true &&
-+ is_unicast_option_defined(packet) == false) {
- unicast_reject(reply, packet, &client_id, &server_id);
- } else {
- /*
-@@ -6597,8 +6597,8 @@ dhcpv6_release(struct data_string *reply
-
- /* If the RELEASE arrived via unicast and unicast option isn't set,
- * reject it per RFC 3315, Sec 18.2.6 */
-- if (packet->unicast == ISC_TRUE &&
-- is_unicast_option_defined(packet) == ISC_FALSE) {
-+ if (packet->unicast == true &&
-+ is_unicast_option_defined(packet) == false) {
- unicast_reject(reply, packet, &client_id, &server_id);
- } else {
- /*
-@@ -6897,7 +6897,7 @@ dhcpv6_relay_forw(struct data_string *re
- }
- data_string_forget(&a_opt, MDL);
-
-- packet->relay_source_port = ISC_TRUE;
-+ packet->relay_source_port = true;
- }
- #endif
-
-@@ -7219,7 +7219,7 @@ dhcp4o6_relay_forw(struct data_string *r
- }
- data_string_forget(&a_opt, MDL);
-
-- packet->relay_source_port = ISC_TRUE;
-+ packet->relay_source_port = true;
- }
- #endif
-
-@@ -8036,35 +8036,35 @@ seek_shared_host(struct host_decl **hp,
- host_reference(hp, seek, MDL);
- }
-
--static isc_boolean_t
-+static bool
- fixed_matches_shared(struct host_decl *host, struct shared_network *shared) {
- struct subnet *subnet;
- struct data_string addr;
-- isc_boolean_t matched;
-+ bool matched;
- struct iaddr fixed;
-
- if (host->fixed_addr == NULL)
-- return ISC_FALSE;
-+ return false;
-
- memset(&addr, 0, sizeof(addr));
- if (!evaluate_option_cache(&addr, NULL, NULL, NULL, NULL, NULL,
- &global_scope, host->fixed_addr, MDL))
-- return ISC_FALSE;
-+ return false;
-
- if (addr.len < 16) {
- data_string_forget(&addr, MDL);
-- return ISC_FALSE;
-+ return false;
- }
-
- fixed.len = 16;
- memcpy(fixed.iabuf, addr.data, 16);
-
-- matched = ISC_FALSE;
-+ matched = false;
- for (subnet = shared->subnets ; subnet != NULL ;
- subnet = subnet->next_sibling) {
- if (addr_eq(subnet_number(fixed, subnet->netmask),
- subnet->net)) {
-- matched = ISC_TRUE;
-+ matched = true;
- break;
- }
- }
-@@ -8167,15 +8167,15 @@ unicast_reject(struct data_string *reply
- * statements from the network's group outward into a local option cache.
- * The option cache is then scanned for the presence of unicast option. If
- * the packet cannot be mapped to a shared network, the function returns
-- * ISC_FALSE.
-+ * false.
- * \param packet inbound packet from the client
- *
-- * \return ISC_TRUE if the dhcp6.unicast option is defined, false otherwise.
-+ * \return true if the dhcp6.unicast option is defined, false otherwise.
- *
- */
--isc_boolean_t
-+bool
- is_unicast_option_defined(struct packet *packet) {
-- isc_boolean_t is_defined = ISC_FALSE;
-+ bool is_defined = false;
- struct option_state *opt_state = NULL;
- struct option_cache *oc = NULL;
- struct shared_network *shared = NULL;
-@@ -8195,7 +8195,7 @@ is_unicast_option_defined(struct packet
- * logic will catch it */
- log_error("is_unicast_option_defined:"
- "cannot attribute packet to a network.");
-- return (ISC_FALSE);
-+ return (false);
- }
-
- /* Now that we've mapped it to a network, execute statments to that
-@@ -8205,7 +8205,7 @@ is_unicast_option_defined(struct packet
- &global_scope, shared->group, NULL, NULL);
-
- oc = lookup_option(&dhcpv6_universe, opt_state, D6O_UNICAST);
-- is_defined = (oc != NULL ? ISC_TRUE : ISC_FALSE);
-+ is_defined = (oc != NULL ? true : false);
- log_debug("is_unicast_option_defined: option found : %d", is_defined);
-
- if (shared != NULL) {
-Index: dhcp-4.4.1/client/clparse.c
-===================================================================
---- dhcp-4.4.1.orig/client/clparse.c
-+++ dhcp-4.4.1/client/clparse.c
-@@ -1527,7 +1527,7 @@ parse_client6_lease_statement(struct par
-
- case TOKEN_RELEASED:
- case TOKEN_ABANDONED:
-- lease->released = ISC_TRUE;
-+ lease->released = true;
- break;
-
- default:
-Index: dhcp-4.4.1/client/dhc6.c
-===================================================================
---- dhcp-4.4.1.orig/client/dhc6.c
-+++ dhcp-4.4.1/client/dhc6.c
-@@ -109,7 +109,7 @@ static isc_result_t dhc6_add_ia_pd(struc
- u_int8_t message,
- int wanted,
- int *added);
--static isc_boolean_t stopping_finished(void);
-+static bool stopping_finished(void);
- static void dhc6_merge_lease(struct dhc6_lease *src, struct dhc6_lease *dst);
- void do_select6(void *input);
- void do_refresh6(void *input);
-@@ -131,7 +131,7 @@ static void script_write_params6(struct
- const char *prefix,
- struct option_state *options);
- static void script_write_requested6(struct client_state *client);
--static isc_boolean_t active_prefix(struct client_state *client);
-+static bool active_prefix(struct client_state *client);
-
- static int check_timing6(struct client_state *client, u_int8_t msg_type,
- char *msg_str, struct dhc6_lease *lease,
-@@ -149,7 +149,7 @@ static isc_result_t dhc6_add_ia_na_decli
- struct data_string *packet,
- struct dhc6_lease *lease);
- static int drop_declined_addrs(struct dhc6_lease *lease);
--static isc_boolean_t unexpired_address_in_lease(struct dhc6_lease *lease);
-+static bool unexpired_address_in_lease(struct dhc6_lease *lease);
-
- extern int onetry;
- extern int stateless;
-@@ -418,14 +418,14 @@ valid_reply(struct packet *packet, struc
- {
- struct data_string sid, cid;
- struct option_cache *oc;
-- int rval = ISC_TRUE;
-+ int rval = true;
-
- memset(&sid, 0, sizeof(sid));
- memset(&cid, 0, sizeof(cid));
-
- if (!lookup_option(&dhcpv6_universe, packet->options, D6O_SERVERID)) {
- log_error("Response without a server identifier received.");
-- rval = ISC_FALSE;
-+ rval = false;
- }
-
- oc = lookup_option(&dhcpv6_universe, packet->options, D6O_CLIENTID);
-@@ -434,7 +434,7 @@ valid_reply(struct packet *packet, struc
- client->sent_options, &global_scope, oc,
- MDL)) {
- log_error("Response without a client identifier.");
-- rval = ISC_FALSE;
-+ rval = false;
- }
-
- oc = lookup_option(&dhcpv6_universe, client->sent_options,
-@@ -444,7 +444,7 @@ valid_reply(struct packet *packet, struc
- client->sent_options, NULL, &global_scope,
- oc, MDL)) {
- log_error("Local client identifier is missing!");
-- rval = ISC_FALSE;
-+ rval = false;
- }
-
- if (sid.len == 0 ||
-@@ -452,7 +452,7 @@ valid_reply(struct packet *packet, struc
- memcmp(sid.data, cid.data, sid.len)) {
- log_error("Advertise with matching transaction ID, but "
- "mismatching client id.");
-- rval = ISC_FALSE;
-+ rval = false;
- }
-
- /* clean up pointers to the strings */
-@@ -2375,7 +2375,7 @@ start_release6(struct client_state *clie
- /* Note this in the lease file. */
- if (client->active_lease == NULL)
- return;
-- client->active_lease->released = ISC_TRUE;
-+ client->active_lease->released = true;
- write_client6_lease(client, client->active_lease, 0, 1);
-
- /* Set timers per RFC3315 section 18.1.6. */
-@@ -2612,7 +2612,7 @@ dhc6_check_advertise(struct dhc6_lease *
- {
- struct dhc6_ia *ia;
- isc_result_t rval = ISC_R_SUCCESS;
-- int have_addrs = ISC_FALSE;
-+ int have_addrs = false;
- unsigned code;
- const char *scope;
- int got_na = 0, got_ta = 0, got_pd = 0;
-@@ -2650,14 +2650,14 @@ dhc6_check_advertise(struct dhc6_lease *
- * Should we check the addr itself for usability?
- */
- if (ia->addrs != NULL) {
-- have_addrs = ISC_TRUE;
-+ have_addrs = true;
- }
- }
-
- /* If we didn't get some addrs or the user required us to
- * get all of the requested IAs and we didn't return an error
- */
-- if ((have_addrs != ISC_TRUE) ||
-+ if ((have_addrs != true) ||
- ((require_all_ias != 0) &&
- ((got_na < wanted_ia_na) ||
- (got_ta < wanted_ia_ta) ||
-@@ -2670,7 +2670,7 @@ dhc6_check_advertise(struct dhc6_lease *
- /* status code <-> action matrix for the client in INIT state
- * (rapid/commit). Returns always false as no action is defined.
- */
--static isc_boolean_t
-+static bool
- dhc6_init_action(struct client_state *client, isc_result_t *rvalp,
- unsigned code)
- {
-@@ -2679,21 +2679,21 @@ dhc6_init_action(struct client_state *cl
-
- if (client == NULL) {
- *rvalp = DHCP_R_INVALIDARG;
-- return ISC_FALSE;
-+ return false;
- }
-
- if (*rvalp == ISC_R_SUCCESS)
-- return ISC_FALSE;
-+ return false;
-
- /* No possible action in any case... */
-- return ISC_FALSE;
-+ return false;
- }
-
- /* status code <-> action matrix for the client in SELECT state
- * (request/reply). Returns true if action was taken (and the
- * packet should be ignored), or false if no action was taken.
- */
--static isc_boolean_t
-+static bool
- dhc6_select_action(struct client_state *client, isc_result_t *rvalp,
- unsigned code)
- {
-@@ -2705,12 +2705,12 @@ dhc6_select_action(struct client_state *
-
- if (client == NULL) {
- *rvalp = DHCP_R_INVALIDARG;
-- return ISC_FALSE;
-+ return false;
- }
- rval = *rvalp;
-
- if (rval == ISC_R_SUCCESS)
-- return ISC_FALSE;
-+ return false;
-
- switch (code) {
- /* We may have an earlier failure status code (so no
-@@ -2723,7 +2723,7 @@ dhc6_select_action(struct client_state *
- case STATUS_NoBinding:
- case STATUS_UseMulticast:
- /* Take no action. */
-- return ISC_FALSE;
-+ return false;
-
- /* If the server can't deal with us, either try the
- * next advertised server, or continue retrying if there
-@@ -2739,7 +2739,7 @@ dhc6_select_action(struct client_state *
-
- break;
- } else /* Take no action - continue to retry. */
-- return ISC_FALSE;
-+ return false;
-
- /* If the server has no addresses, try other servers if
- * we got some, otherwise go to INIT to hope for more
-@@ -2748,7 +2748,7 @@ dhc6_select_action(struct client_state *
- case STATUS_NoAddrsAvail:
- case STATUS_NoPrefixAvail:
- if (client->state == S_REBOOTING)
-- return ISC_FALSE;
-+ return false;
-
- if (client->selected_lease == NULL)
- log_fatal("Impossible case at %s:%d.", MDL);
-@@ -2794,7 +2794,7 @@ dhc6_select_action(struct client_state *
- break;
- }
-
-- return ISC_TRUE;
-+ return true;
- }
-
- static void
-@@ -2821,7 +2821,7 @@ dhc6_withdraw_lease(struct client_state
- * (request/reply). Returns true if action was taken (and the
- * packet should be ignored), or false if no action was taken.
- */
--static isc_boolean_t
-+static bool
- dhc6_reply_action(struct client_state *client, isc_result_t *rvalp,
- unsigned code)
- {
-@@ -2832,12 +2832,12 @@ dhc6_reply_action(struct client_state *c
-
- if (client == NULL) {
- *rvalp = DHCP_R_INVALIDARG;
-- return ISC_FALSE;
-+ return false;
- }
- rval = *rvalp;
-
- if (rval == ISC_R_SUCCESS)
-- return ISC_FALSE;
-+ return false;
-
- switch (code) {
- /* It's possible an earlier status code set rval to a failure
-@@ -2852,7 +2852,7 @@ dhc6_reply_action(struct client_state *c
- case STATUS_UnspecFail:
- /* For unknown codes...it's a soft (retryable) error. */
- default:
-- return ISC_FALSE;
-+ return false;
-
- /* The server is telling us to use a multicast address, so
- * we have to delete the unicast option from the active
-@@ -2865,7 +2865,7 @@ dhc6_reply_action(struct client_state *c
- delete_option(&dhcp_universe,
- client->active_lease->options,
- D6O_UNICAST);
-- return ISC_FALSE;
-+ return false;
-
- /* "When the client receives a NotOnLink status from the
- * server in response to a Request, the client can either
-@@ -2914,7 +2914,7 @@ dhc6_reply_action(struct client_state *c
- break;
- }
-
-- return ISC_TRUE;
-+ return true;
- }
-
- /* status code <-> action matrix for the client in STOPPED state
-@@ -2922,7 +2922,7 @@ dhc6_reply_action(struct client_state *c
- * packet should be ignored), or false if no action was taken.
- * NoBinding is translated into Success.
- */
--static isc_boolean_t
-+static bool
- dhc6_stop_action(struct client_state *client, isc_result_t *rvalp,
- unsigned code)
- {
-@@ -2933,12 +2933,12 @@ dhc6_stop_action(struct client_state *cl
-
- if (client == NULL) {
- *rvalp = DHCP_R_INVALIDARG;
-- return ISC_FALSE;
-+ return false;
- }
- rval = *rvalp;
-
- if (rval == ISC_R_SUCCESS)
-- return ISC_FALSE;
-+ return false;
-
- switch (code) {
- /* It's possible an earlier status code set rval to a failure
-@@ -2948,13 +2948,13 @@ dhc6_stop_action(struct client_state *cl
- /* For unknown codes...it's a soft (retryable) error. */
- case STATUS_UnspecFail:
- default:
-- return ISC_FALSE;
-+ return false;
-
- /* NoBinding is not an error */
- case STATUS_NoBinding:
- if (rval == ISC_R_FAILURE)
- *rvalp = ISC_R_SUCCESS;
-- return ISC_FALSE;
-+ return false;
-
- /* Should not happen */
- case STATUS_NoAddrsAvail:
-@@ -2976,13 +2976,13 @@ dhc6_stop_action(struct client_state *cl
- delete_option(&dhcp_universe,
- client->active_lease->options,
- D6O_UNICAST);
-- return ISC_FALSE;
-+ return false;
- }
-
-- return ISC_TRUE;
-+ return true;
- }
-
--static isc_boolean_t
-+static bool
- dhc6_decline_action(struct client_state *client, isc_result_t *rvalp,
- unsigned code)
- {
-@@ -2993,12 +2993,12 @@ dhc6_decline_action(struct client_state
-
- if (client == NULL) {
- *rvalp = DHCP_R_INVALIDARG;
-- return ISC_FALSE;
-+ return false;
- }
- rval = *rvalp;
-
- if (rval == ISC_R_SUCCESS) {
-- return ISC_FALSE;
-+ return false;
- }
-
- switch (code) {
-@@ -3013,13 +3013,13 @@ dhc6_decline_action(struct client_state
- delete_option(&dhcp_universe,
- client->active_lease->options,
- D6O_UNICAST);
-- return ISC_FALSE;
-+ return false;
- default:
- /* Anything else is basically meaningless */
- break;
- }
-
-- return ISC_TRUE;
-+ return true;
- }
-
-
-@@ -3029,14 +3029,14 @@ dhc6_decline_action(struct client_state
- static isc_result_t
- dhc6_check_reply(struct client_state *client, struct dhc6_lease *new)
- {
-- isc_boolean_t (*action)(struct client_state *,
-+ bool (*action)(struct client_state *,
- isc_result_t *, unsigned);
- struct dhc6_ia *ia;
- isc_result_t rval = ISC_R_SUCCESS;
- unsigned code;
- const char *scope;
- int nscore, sscore;
-- int have_addrs = ISC_FALSE;
-+ int have_addrs = false;
- int got_na = 0, got_ta = 0, got_pd = 0;
-
- if ((client == NULL) || (new == NULL))
-@@ -3102,7 +3102,7 @@ dhc6_check_reply(struct client_state *cl
- return ISC_R_CANCELED;
-
- if (ia->addrs != NULL) {
-- have_addrs = ISC_TRUE;
-+ have_addrs = true;
- }
- }
-
-@@ -3119,13 +3119,13 @@ dhc6_check_reply(struct client_state *cl
- * check in and commented it as I eventually do want
- * us to check for TAs as well. SAR
- */
-- if ((have_addrs != ISC_TRUE) ||
-+ if ((have_addrs != true) ||
- ((require_all_ias != 0) &&
- ((got_na < wanted_ia_na) ||
- /*(got_ta < wanted_ia_ta) ||*/
- (got_pd < wanted_ia_pd)))) {
- rval = ISC_R_FAILURE;
-- if (action(client, &rval, STATUS_NoAddrsAvail) == ISC_TRUE) {
-+ if (action(client, &rval, STATUS_NoAddrsAvail) == true) {
- return ISC_R_CANCELED;
- }
- }
-@@ -4256,7 +4256,7 @@ dhc6_add_ia_pd(struct client_state *clie
-
- /* stopping_finished() checks if there is a remaining work to do.
- */
--static isc_boolean_t
-+static bool
- stopping_finished(void)
- {
- struct interface_info *ip;
-@@ -4265,12 +4265,12 @@ stopping_finished(void)
- for (ip = interfaces; ip; ip = ip -> next) {
- for (client = ip -> client; client; client = client -> next) {
- if (client->state != S_STOPPED)
-- return ISC_FALSE;
-+ return false;
- if (client->active_lease != NULL)
-- return ISC_FALSE;
-+ return false;
- }
- }
-- return ISC_TRUE;
-+ return true;
- }
-
- /* reply_handler() accepts a Reply while we're attempting Select or Renew or
-@@ -4474,8 +4474,8 @@ dhc6_check_times(struct client_state *cl
- struct dhc6_addr *addr;
- TIME renew=MAX_TIME, rebind=MAX_TIME, depref=MAX_TIME,
- lo_expire=MAX_TIME, hi_expire=0, max_ia_starts = 0, tmp;
-- int has_addrs = ISC_FALSE;
-- int has_preferred_addrs = ISC_FALSE;
-+ int has_addrs = false;
-+ int has_preferred_addrs = false;
- struct timeval tv;
-
- lease = client->active_lease;
-@@ -4506,7 +4506,7 @@ dhc6_check_times(struct client_state *cl
- depref = tmp;
-
- if (!(addr->flags & DHC6_ADDR_EXPIRED)) {
-- has_preferred_addrs = ISC_TRUE;
-+ has_preferred_addrs = true;
- }
- }
-
-@@ -4525,7 +4525,7 @@ dhc6_check_times(struct client_state *cl
- if (tmp < this_ia_lo_expire)
- this_ia_lo_expire = tmp;
-
-- has_addrs = ISC_TRUE;
-+ has_addrs = true;
- }
- }
-
-@@ -4603,7 +4603,7 @@ dhc6_check_times(struct client_state *cl
- * In the future, we may decide that we're done here, or to
- * schedule a future request (using 4-pkt info-request model).
- */
-- if (has_addrs == ISC_FALSE) {
-+ if (has_addrs == false) {
- dhc6_lease_destroy(&client->active_lease, MDL);
- client->active_lease = NULL;
-
-@@ -4855,7 +4855,7 @@ start_bound(struct client_state *client)
- "is selected.");
- return;
- }
-- lease->released = ISC_FALSE;
-+ lease->released = false;
- old = client->old_lease;
-
- client->v6_handler = bound_handler;
-@@ -5448,8 +5448,8 @@ do_expire(void *input)
- struct dhc6_lease *lease;
- struct dhc6_ia *ia, **tia;
- struct dhc6_addr *addr;
-- int has_addrs = ISC_FALSE;
-- int ia_has_addrs = ISC_FALSE;
-+ int has_addrs = false;
-+ int ia_has_addrs = false;
-
- client = (struct client_state *)input;
-
-@@ -5458,7 +5458,7 @@ do_expire(void *input)
- return;
-
- for (ia = lease->bindings, tia = &lease->bindings; ia != NULL ; ) {
-- ia_has_addrs = ISC_FALSE;
-+ ia_has_addrs = false;
- for (addr = ia->addrs ; addr != NULL ; addr = addr->next) {
- if (addr->flags & DHC6_ADDR_EXPIRED)
- continue;
-@@ -5495,14 +5495,14 @@ do_expire(void *input)
- continue;
- }
-
-- ia_has_addrs = ISC_TRUE;
-- has_addrs = ISC_TRUE;
-+ ia_has_addrs = true;
-+ has_addrs = true;
- }
-
- /* Update to the next ia and git rid of this ia
- * if it doesn't have any leases.
- */
-- if (ia_has_addrs == ISC_TRUE) {
-+ if (ia_has_addrs == true) {
- /* leases, just advance the list pointer */
- tia = &(*tia)->next;
- } else {
-@@ -5517,7 +5517,7 @@ do_expire(void *input)
- }
-
- /* Clean up empty leases. */
-- if (has_addrs == ISC_FALSE) {
-+ if (has_addrs == false) {
- log_info("PRC: Bound lease is devoid of active addresses."
- " Re-initializing.");
-
-@@ -5596,14 +5596,14 @@ dhc6_check_irt(struct client_state *clie
- TIME expire = MAX_TIME;
- struct timeval tv;
- int i;
-- isc_boolean_t found = ISC_FALSE;
-+ bool found = false;
-
- cancel_timeout(refresh_info_request6, client);
-
- req = client->config->requested_options;
- for (i = 0; req[i] != NULL; i++) {
- if (req[i] == irt_option) {
-- found = ISC_TRUE;
-+ found = true;
- break;
- }
- }
-@@ -5924,7 +5924,7 @@ static void script_write_requested6(clie
- /*
- * Check if there is something not fully defined in the active lease.
- */
--static isc_boolean_t
-+static bool
- active_prefix(struct client_state *client)
- {
- struct dhc6_lease *lease;
-@@ -5934,21 +5934,21 @@ active_prefix(struct client_state *clien
-
- lease = client->active_lease;
- if (lease == NULL)
-- return ISC_FALSE;
-+ return false;
- memset(zeros, 0, 16);
- for (ia = lease->bindings; ia != NULL; ia = ia->next) {
- if (ia->ia_type != D6O_IA_PD)
- continue;
- for (pref = ia->addrs; pref != NULL; pref = pref->next) {
- if (pref->plen == 0)
-- return ISC_FALSE;
-+ return false;
- if (pref->address.len != 16)
-- return ISC_FALSE;
-+ return false;
- if (memcmp(pref->address.iabuf, zeros, 16) == 0)
-- return ISC_FALSE;
-+ return false;
- }
- }
-- return ISC_TRUE;
-+ return true;
- }
-
- /* Adds a leases's declined addreses to the outbound packet
-@@ -6111,26 +6111,26 @@ int drop_declined_addrs(struct dhc6_leas
- /* Run through the addresses in lease and return true if there's any unexpired.
- * Return false otherwise.
- */
--static isc_boolean_t
-+static bool
- unexpired_address_in_lease(struct dhc6_lease *lease)
- {
- struct dhc6_ia *ia;
- struct dhc6_addr *addr;
-
- if (lease == NULL) {
-- return ISC_FALSE;
-+ return false;
- }
-
- for (ia = lease->bindings ; ia != NULL ; ia = ia->next) {
- for (addr = ia->addrs ; addr != NULL ; addr = addr->next) {
- if (!(addr->flags & DHC6_ADDR_EXPIRED) &&
- (addr->starts + addr->max_life > cur_time)) {
-- return ISC_TRUE;
-+ return true;
- }
- }
- }
-
- log_debug("PRC: Previous lease is devoid of active addresses.");
-- return ISC_FALSE;
-+ return false;
- }
- #endif /* DHCPv6 */
-Index: dhcp-4.4.1/client/dhclient.c
-===================================================================
---- dhcp-4.4.1.orig/client/dhclient.c
-+++ dhcp-4.4.1/client/dhclient.c
-@@ -52,7 +52,7 @@ char *path_dhclient_script = path_dhclie
- const char *path_dhclient_duid = NULL;
-
- /* False (default) => we write and use a pid file */
--isc_boolean_t no_pid_file = ISC_FALSE;
-+bool no_pid_file = false;
-
- int dhcp_max_agent_option_packet_length = 0;
-
-@@ -397,7 +397,7 @@ main(int argc, char **argv) {
- path_dhclient_pid = argv[i];
- no_dhclient_pid = 1;
- } else if (!strcmp(argv[i], "--no-pid")) {
-- no_pid_file = ISC_TRUE;
-+ no_pid_file = true;
- } else if (!strcmp(argv[i], "-cf")) {
- if (++i == argc)
- usage(use_noarg, argv[i-1]);
-@@ -652,7 +652,7 @@ main(int argc, char **argv) {
- * to write a pid file - we assume they are controlling
- * the process in some other fashion.
- */
-- if ((release_mode || exit_mode) && (no_pid_file == ISC_FALSE)) {
-+ if ((release_mode || exit_mode) && (no_pid_file == false)) {
- FILE *pidfd;
- pid_t oldpid;
- long temp;
-@@ -4469,7 +4469,7 @@ void write_client_pid_file ()
- int pfdesc;
-
- /* nothing to do if the user doesn't want a pid file */
-- if (no_pid_file == ISC_TRUE) {
-+ if (no_pid_file == true) {
- return;
- }
-
-@@ -4727,7 +4727,7 @@ unsigned cons_agent_information_options
- static void shutdown_exit (void *foo)
- {
- /* get rid of the pid if we can */
-- if (no_pid_file == ISC_FALSE)
-+ if (no_pid_file == false)
- (void) unlink(path_dhclient_pid);
- finish(0);
- }
-Index: dhcp-4.4.1/common/inet.c
-===================================================================
---- dhcp-4.4.1.orig/common/inet.c
-+++ dhcp-4.4.1/common/inet.c
-@@ -299,7 +299,7 @@ addr_and(struct iaddr *result, const str
- *
- * Because the final ".1" would get masked out by the /8.
- */
--isc_boolean_t
-+bool
- is_cidr_mask_valid(const struct iaddr *addr, int bits) {
- int zero_bits;
- int zero_bytes;
-@@ -311,10 +311,10 @@ is_cidr_mask_valid(const struct iaddr *a
- * Check our bit boundaries.
- */
- if (bits < 0) {
-- return ISC_FALSE;
-+ return false;
- }
- if (bits > (addr->len * 8)) {
-- return ISC_FALSE;
-+ return false;
- }
-
- /*
-@@ -328,7 +328,7 @@ is_cidr_mask_valid(const struct iaddr *a
- */
- for (i=1; i<=zero_bytes; i++) {
- if (addr->iabuf[addr->len-i] != 0) {
-- return ISC_FALSE;
-+ return false;
- }
- }
-
-@@ -340,7 +340,7 @@ is_cidr_mask_valid(const struct iaddr *a
- * happy.
- */
- shift_bits = zero_bits % 8;
-- if (shift_bits == 0) return ISC_TRUE;
-+ if (shift_bits == 0) return true;
- byte = addr->iabuf[addr->len-zero_bytes-1];
- return (((byte >> shift_bits) << shift_bits) == byte);
- }
-Index: dhcp-4.4.1/common/options.c
-===================================================================
---- dhcp-4.4.1.orig/common/options.c
-+++ dhcp-4.4.1/common/options.c
-@@ -676,7 +676,7 @@ cons_options(struct packet *inpacket, st
- * the priority_list. This way we'll send it whether or not it
- * is in the PRL. */
- if ((inpacket != NULL) && (priority_len < PRIORITY_COUNT) &&
-- (inpacket->sv_echo_client_id == ISC_TRUE)) {
-+ (inpacket->sv_echo_client_id == true)) {
- priority_list[priority_len++] =
- DHO_DHCP_CLIENT_IDENTIFIER;
- }
-@@ -1802,7 +1802,7 @@ const char *pretty_print_option (option,
- const unsigned char *dp = data;
- char comma;
- unsigned long tval;
-- isc_boolean_t a_array = ISC_FALSE;
-+ bool a_array = false;
- int len_used;
-
- if (emit_commas)
-@@ -1828,7 +1828,7 @@ const char *pretty_print_option (option,
- fmtbuf [l] = option -> format [i];
- switch (option -> format [i]) {
- case 'a':
-- a_array = ISC_TRUE;
-+ a_array = true;
- /* Fall through */
- case 'A':
- --numelem;
-@@ -1858,7 +1858,7 @@ const char *pretty_print_option (option,
- hunksize++;
- comma = ':';
- numhunk = 0;
-- a_array = ISC_TRUE;
-+ a_array = true;
- hunkinc = 1;
- }
- fmtbuf [l + 1] = 0;
-@@ -1954,7 +1954,7 @@ const char *pretty_print_option (option,
-
- /* If this is an array, compute its size. */
- if (numhunk == 0) {
-- if (a_array == ISC_TRUE) {
-+ if (a_array == true) {
- /*
- * It is an 'a' type array - we repeat the
- * last format type. A binary string for 'X'
-@@ -2006,7 +2006,7 @@ const char *pretty_print_option (option,
-
- /* Cycle through the array (or hunk) printing the data. */
- for (i = 0; i < numhunk; i++) {
-- if ((a_array == ISC_TRUE) && (i != 0) && (numelem > 0)) {
-+ if ((a_array == true) && (i != 0) && (numelem > 0)) {
- /*
- * For 'a' type of arrays we repeat
- * only the last format character
-@@ -2734,7 +2734,7 @@ save_option(struct universe *universe, s
- struct option_cache *oc)
- {
- if (universe->save_func)
-- (*universe->save_func)(universe, options, oc, ISC_FALSE);
-+ (*universe->save_func)(universe, options, oc, true);
- else
- log_error("can't store options in %s space.", universe->name);
- }
-@@ -2745,14 +2745,14 @@ also_save_option(struct universe *univer
- struct option_cache *oc)
- {
- if (universe->save_func)
-- (*universe->save_func)(universe, options, oc, ISC_TRUE);
-+ (*universe->save_func)(universe, options, oc, true);
- else
- log_error("can't store options in %s space.", universe->name);
- }
-
- void
- save_hashed_option(struct universe *universe, struct option_state *options,
-- struct option_cache *oc, isc_boolean_t appendp)
-+ struct option_cache *oc, bool appendp)
- {
- int hashix;
- pair bptr;
-@@ -3062,7 +3062,7 @@ store_option(struct data_string *result,
- cfg_options, scope, subu);
- subu = NULL;
- }
-- } while (ISC_FALSE);
-+ } while (false);
-
- status = append_option(result, universe, oc->option, &tmp);
- data_string_forget(&tmp, MDL);
-@@ -3459,7 +3459,7 @@ lookup_fqdn6_option(struct universe *uni
- */
- void
- save_fqdn6_option(struct universe *universe, struct option_state *options,
-- struct option_cache *oc, isc_boolean_t appendp)
-+ struct option_cache *oc, bool appendp)
- {
- log_fatal("Impossible condition at %s:%d.", MDL);
- }
-@@ -3784,7 +3784,7 @@ void hashed_option_space_foreach (struct
-
- void
- save_linked_option(struct universe *universe, struct option_state *options,
-- struct option_cache *oc, isc_boolean_t appendp)
-+ struct option_cache *oc, bool appendp)
- {
- pair *tail;
- struct option_chain_head *head;
-@@ -4073,7 +4073,7 @@ packet6_len_okay(const char *packet, int
- void
- do_packet6(struct interface_info *interface, const char *packet,
- int len, int from_port, const struct iaddr *from,
-- isc_boolean_t was_unicast) {
-+ bool was_unicast) {
- unsigned char msg_type;
- const struct dhcpv6_packet *msg;
- const struct dhcpv6_relay_packet *relay;
-Index: dhcp-4.4.1/common/parse.c
-===================================================================
---- dhcp-4.4.1.orig/common/parse.c
-+++ dhcp-4.4.1/common/parse.c
-@@ -4952,7 +4952,7 @@ int parse_option_token (rv, cfile, fmt,
- unsigned len;
- struct iaddr addr;
- int compress;
-- isc_boolean_t freeval = ISC_FALSE;
-+ bool freeval = false;
- const char *f, *g;
- struct enumeration_value *e;
-
-@@ -5038,7 +5038,7 @@ int parse_option_token (rv, cfile, fmt,
- return 0;
- }
- len = strlen (val);
-- freeval = ISC_TRUE;
-+ freeval = true;
- goto make_string;
-
- case 't': /* Text string... */
-@@ -5055,9 +5055,9 @@ int parse_option_token (rv, cfile, fmt,
- if (!make_const_data (&t, (const unsigned char *)val,
- len, 1, 1, MDL))
- log_fatal ("No memory for concatenation");
-- if (freeval == ISC_TRUE) {
-+ if (freeval == true) {
- dfree((char *)val, MDL);
-- freeval = ISC_FALSE;
-+ freeval = false;
- POST(freeval);
- }
- break;
-Index: dhcp-4.4.1/omapip/dispatch.c
-===================================================================
---- dhcp-4.4.1.orig/omapip/dispatch.c
-+++ dhcp-4.4.1/omapip/dispatch.c
-@@ -156,7 +156,7 @@ omapi_iscsock_cb(isc_task_t *task,
- * This should be a temporary fix until we arrange to properly
- * close the socket.
- */
-- if (obj->closed == ISC_TRUE) {
-+ if (obj->closed == true) {
- return(0);
- }
- #endif
-@@ -223,7 +223,7 @@ isc_result_t omapi_register_io_object (o
- status = omapi_io_allocate (&obj, MDL);
- if (status != ISC_R_SUCCESS)
- return status;
-- obj->closed = ISC_FALSE; /* mark as open */
-+ obj->closed = false; /* mark as open */
-
- status = omapi_object_reference (&obj -> inner, h, MDL);
- if (status != ISC_R_SUCCESS) {
-@@ -404,7 +404,7 @@ isc_result_t omapi_unregister_io_object
- isc_socket_detach(&obj->fd);
- }
- #else
-- obj->closed = ISC_TRUE;
-+ obj->closed = true;
- #endif
-
- omapi_io_dereference (&ph, MDL);
-Index: dhcp-4.4.1/omapip/isclib.c
-===================================================================
---- dhcp-4.4.1.orig/omapip/isclib.c
-+++ dhcp-4.4.1/omapip/isclib.c
-@@ -106,9 +106,9 @@ isclib_cleanup(void)
- if (dhcp_gbl_ctx.taskmgr != NULL)
- isc_taskmgr_destroy(&dhcp_gbl_ctx.taskmgr);
-
-- if (dhcp_gbl_ctx.actx_started != ISC_FALSE) {
-+ if (dhcp_gbl_ctx.actx_started != false) {
- isc_app_ctxfinish(dhcp_gbl_ctx.actx);
-- dhcp_gbl_ctx.actx_started = ISC_FALSE;
-+ dhcp_gbl_ctx.actx_started = false;
- }
-
- if (dhcp_gbl_ctx.actx != NULL)
-@@ -211,7 +211,7 @@ dhcp_context_create(int flags,
- result = isc_app_ctxstart(dhcp_gbl_ctx.actx);
- if (result != ISC_R_SUCCESS)
- return (result);
-- dhcp_gbl_ctx.actx_started = ISC_TRUE;
-+ dhcp_gbl_ctx.actx_started = true;
-
- /* Not all OSs support suppressing SIGPIPE through socket
- * options, so set the sigal action to be ignore. This allows
-Index: dhcp-4.4.1/omapip/protocol.c
-===================================================================
---- dhcp-4.4.1.orig/omapip/protocol.c
-+++ dhcp-4.4.1/omapip/protocol.c
-@@ -950,14 +950,14 @@ isc_result_t omapi_protocol_stuff_values
- /* Returns a boolean indicating whether this protocol requires that
- messages be authenticated or not. */
-
--isc_boolean_t omapi_protocol_authenticated (omapi_object_t *h)
-+bool omapi_protocol_authenticated (omapi_object_t *h)
- {
- if (h -> type != omapi_type_protocol)
-- return isc_boolean_false;
-+ return false;
- if (((omapi_protocol_object_t *)h) -> insecure)
-- return isc_boolean_false;
-+ return false;
- else
-- return isc_boolean_true;
-+ return true;
- }
-
- /* Sets the address and authenticator verification callbacks. The handle
-Index: dhcp-4.4.1/relay/dhcrelay.c
-===================================================================
---- dhcp-4.4.1.orig/relay/dhcrelay.c
-+++ dhcp-4.4.1/relay/dhcrelay.c
-@@ -45,9 +45,9 @@ char *token_line;
- char *tlname;
-
- const char *path_dhcrelay_pid = _PATH_DHCRELAY_PID;
--isc_boolean_t no_dhcrelay_pid = ISC_FALSE;
-+bool no_dhcrelay_pid = false;
- /* False (default) => we write and use a pid file */
--isc_boolean_t no_pid_file = ISC_FALSE;
-+bool no_pid_file = false;
-
- int bogus_agent_drops = 0; /* Packets dropped because agent option
- field was specified and we're not relaying
-@@ -82,7 +82,7 @@ int dfd[2] = { -1, -1 };
-
- #ifdef DHCPv6
- /* Force use of DHCPv6 interface-id option. */
--isc_boolean_t use_if_id = ISC_FALSE;
-+bool use_if_id = false;
- #endif
-
- /* Maximum size of a packet with agent options added. */
-@@ -556,7 +556,7 @@ main(int argc, char **argv) {
- }
- local_family_set = 1;
- local_family = AF_INET6;
-- use_if_id = ISC_TRUE;
-+ use_if_id = true;
- } else if (!strcmp(argv[i], "-l")) {
- if (local_family_set && (local_family == AF_INET)) {
- usage(use_v6command, argv[i]);
-@@ -564,7 +564,7 @@ main(int argc, char **argv) {
- local_family_set = 1;
- local_family = AF_INET6;
- if (downstreams != NULL)
-- use_if_id = ISC_TRUE;
-+ use_if_id = true;
- if (++i == argc)
- usage(use_noarg, argv[i-1]);
- sl = parse_downstream(argv[i]);
-@@ -595,9 +595,9 @@ main(int argc, char **argv) {
- if (++i == argc)
- usage(use_noarg, argv[i-1]);
- path_dhcrelay_pid = argv[i];
-- no_dhcrelay_pid = ISC_TRUE;
-+ no_dhcrelay_pid = true;
- } else if (!strcmp(argv[i], "--no-pid")) {
-- no_pid_file = ISC_TRUE;
-+ no_pid_file = true;
- } else if (argv[i][0] == '-') {
- usage("Unknown command: %s", argv[i]);
- } else {
-@@ -645,7 +645,7 @@ main(int argc, char **argv) {
- * If the user didn't specify a pid file directly
- * find one from environment variables or defaults
- */
-- if (no_dhcrelay_pid == ISC_FALSE) {
-+ if (no_dhcrelay_pid == false) {
- if (local_family == AF_INET) {
- path_dhcrelay_pid = getenv("PATH_DHCRELAY_PID");
- if (path_dhcrelay_pid == NULL)
-@@ -774,7 +774,7 @@ main(int argc, char **argv) {
- }
-
- /* Create the pid file. */
-- if (no_pid_file == ISC_FALSE) {
-+ if (no_pid_file == false) {
- pfdesc = open(path_dhcrelay_pid,
- O_CREAT | O_TRUNC | O_WRONLY, 0644);
-
-@@ -1569,7 +1569,7 @@ static void
- setup_streams(void) {
- struct stream_list *dp, *up;
- int i;
-- isc_boolean_t link_is_set;
-+ bool link_is_set;
-
- for (dp = downstreams; dp; dp = dp->next) {
- /* Check interface */
-@@ -1579,9 +1579,9 @@ setup_streams(void) {
-
- /* Check/set link. */
- if (IN6_IS_ADDR_UNSPECIFIED(&dp->link.sin6_addr))
-- link_is_set = ISC_FALSE;
-+ link_is_set = false;
- else
-- link_is_set = ISC_TRUE;
-+ link_is_set = true;
- for (i = 0; i < dp->ifp->v6address_count; i++) {
- if (IN6_IS_ADDR_LINKLOCAL(&dp->ifp->v6addresses[i]))
- continue;
-@@ -2076,7 +2076,7 @@ dhcp_set_control_state(control_object_st
- if (newstate != server_shutdown)
- return ISC_R_SUCCESS;
-
-- if (no_pid_file == ISC_FALSE)
-+ if (no_pid_file == false)
- (void) unlink(path_dhcrelay_pid);
-
- if (!no_daemon && dfd[0] != -1 && dfd[1] != -1) {
-Index: dhcp-4.4.1/server/dhcp.c
-===================================================================
---- dhcp-4.4.1.orig/server/dhcp.c
-+++ dhcp-4.4.1/server/dhcp.c
-@@ -225,7 +225,7 @@ dhcp (struct packet *packet) {
- packet->options->universe_count =
- agent_universe.index + 1;
-
-- packet->agent_options_stashed = ISC_TRUE;
-+ packet->agent_options_stashed = true;
- }
- nolease:
-
-@@ -1094,7 +1094,7 @@ void dhcpinform (packet, ms_nulltp)
- int nulltp;
- struct sockaddr_in to;
- struct in_addr from;
-- isc_boolean_t zeroed_ciaddr;
-+ bool zeroed_ciaddr;
- struct interface_info *interface;
- int result, h_m_client_ip = 0;
- struct host_decl *host = NULL, *hp = NULL, *h;
-@@ -1109,7 +1109,7 @@ void dhcpinform (packet, ms_nulltp)
- it's common for clients not to do this, so we'll use their IP
- source address if they didn't set ciaddr. */
- if (!packet->raw->ciaddr.s_addr) {
-- zeroed_ciaddr = ISC_TRUE;
-+ zeroed_ciaddr = true;
- /* With DHCPv4-over-DHCPv6 it can be an IPv6 address
- so we check its length. */
- if (packet->client_addr.len == 4) {
-@@ -1122,7 +1122,7 @@ void dhcpinform (packet, ms_nulltp)
- addr_type = "v4o6";
- }
- } else {
-- zeroed_ciaddr = ISC_FALSE;
-+ zeroed_ciaddr = false;
- cip.len = 4;
- memcpy(cip.iabuf, &packet->raw->ciaddr, 4);
- addr_type = "client";
-@@ -1133,7 +1133,7 @@ void dhcpinform (packet, ms_nulltp)
- if (packet->raw->giaddr.s_addr) {
- gip.len = 4;
- memcpy(gip.iabuf, &packet->raw->giaddr, 4);
-- if (zeroed_ciaddr == ISC_TRUE) {
-+ if (zeroed_ciaddr == true) {
- addr_type = "relay";
- memcpy(sip.iabuf, gip.iabuf, 4);
- }
-@@ -1207,7 +1207,7 @@ void dhcpinform (packet, ms_nulltp)
- save_option(&dhcp_universe, options, noc);
- option_cache_dereference(&noc, MDL);
-
-- if ((zeroed_ciaddr == ISC_TRUE) && (gip.len != 0))
-+ if ((zeroed_ciaddr == true) && (gip.len != 0))
- addr_type = "relay link select";
- else
- addr_type = "selected";
-@@ -1261,7 +1261,7 @@ void dhcpinform (packet, ms_nulltp)
- NULL, NULL);
-
- /* If we have ciaddr, find its lease so we can find its pool. */
-- if (zeroed_ciaddr == ISC_FALSE) {
-+ if (zeroed_ciaddr == false) {
- struct lease* cip_lease = NULL;
-
- find_lease_by_ip_addr (&cip_lease, cip, MDL);
-@@ -2036,7 +2036,7 @@ void echo_client_id(packet, lease, in_op
- unsigned int opcode = DHO_DHCP_CLIENT_IDENTIFIER;
-
- /* Save knowledge that echo is enabled to the packet */
-- packet->sv_echo_client_id = ISC_TRUE;
-+ packet->sv_echo_client_id = true;
-
- /* Now see if inbound packet contains client-id */
- oc = lookup_option(&dhcp_universe, packet->options, opcode);
-@@ -2187,7 +2187,7 @@ void ack_lease (packet, lease, offer, wh
- struct iaddr cip;
- #if defined(DELAYED_ACK)
- /* By default we don't do the enqueue */
-- isc_boolean_t enqueue = ISC_FALSE;
-+ bool enqueue = false;
- #endif
- int use_old_lease = 0;
-
-@@ -3217,7 +3217,7 @@ void ack_lease (packet, lease, offer, wh
- * can just answer right away, set a flag to indicate this.
- */
- if (commit)
-- enqueue = ISC_TRUE;
-+ enqueue = true;
-
- /* Install the new information on 'lt' onto the lease at
- * 'lease'. We will not 'commit' this information to disk
-@@ -4234,7 +4234,7 @@ int find_lease (struct lease **lp,
- * preference, so the first one is the best one.
- */
- while (uid_lease) {
-- isc_boolean_t do_release = !packet->raw->ciaddr.s_addr;
-+ bool do_release = !packet->raw->ciaddr.s_addr;
- #if defined (DEBUG_FIND_LEASE)
- log_info ("trying next lease matching client id: %s",
- piaddr (uid_lease -> ip_addr));
-@@ -4267,7 +4267,7 @@ int find_lease (struct lease **lp,
- #endif
- /* Allow multiple leases using the same UID
- on different subnetworks. */
-- do_release = ISC_FALSE;
-+ do_release = false;
- goto n_uid;
- }
-
-@@ -5331,7 +5331,7 @@ get_server_source_address(struct in_addr
- struct option_cache *oc = NULL;
- struct data_string d;
- struct in_addr *a = NULL;
-- isc_boolean_t found = ISC_FALSE;
-+ bool found = false;
- int allocate = 0;
-
- memset(&d, 0, sizeof(d));
-@@ -5344,7 +5344,7 @@ get_server_source_address(struct in_addr
- packet->options, options,
- &global_scope, oc, MDL)) {
- if (d.len == sizeof(*from)) {
-- found = ISC_TRUE;
-+ found = true;
- memcpy(from, d.data, sizeof(*from));
-
- /*
-@@ -5362,7 +5362,7 @@ get_server_source_address(struct in_addr
- oc = NULL;
- }
-
-- if ((found == ISC_FALSE) &&
-+ if ((found == false) &&
- (packet->interface->address_count > 0)) {
- *from = packet->interface->addresses[0];
-
-Index: dhcp-4.4.1/server/failover.c
-===================================================================
---- dhcp-4.4.1.orig/server/failover.c
-+++ dhcp-4.4.1/server/failover.c
-@@ -45,7 +45,7 @@ static isc_result_t failover_message_der
- static void dhcp_failover_pool_balance(dhcp_failover_state_t *state);
- static void dhcp_failover_pool_reqbalance(dhcp_failover_state_t *state);
- static int dhcp_failover_pool_dobalance(dhcp_failover_state_t *state,
-- isc_boolean_t *sendreq);
-+ bool *sendreq);
- static inline int secondary_not_hoarding(dhcp_failover_state_t *state,
- struct pool *p);
- static void scrub_lease(struct lease* lease, const char *file, int line);
-@@ -2464,7 +2464,7 @@ void
- dhcp_failover_pool_rebalance(void *failover_state)
- {
- dhcp_failover_state_t *state;
-- isc_boolean_t sendreq = ISC_FALSE;
-+ bool sendreq = false;
-
- state = (dhcp_failover_state_t *)failover_state;
-
-@@ -2512,7 +2512,7 @@ dhcp_failover_pool_reqbalance(dhcp_failo
- */
- static int
- dhcp_failover_pool_dobalance(dhcp_failover_state_t *state,
-- isc_boolean_t *sendreq)
-+ bool *sendreq)
- {
- int lts, total, thresh, hold, panic, pass;
- int leases_queued = 0;
-@@ -2581,7 +2581,7 @@ dhcp_failover_pool_dobalance(dhcp_failov
-
- if ((sendreq != NULL) && (lts < panic)) {
- reqlog = " (requesting peer rebalance!)";
-- *sendreq = ISC_TRUE;
-+ *sendreq = true;
- } else
- reqlog = "";
-
-@@ -5111,7 +5111,7 @@ isc_result_t dhcp_failover_send_update_d
- * a more detailed system of preferences is required, so this is something we
- * should monitor as we gain experience with these dueling events.
- */
--static isc_boolean_t
-+static bool
- failover_lease_is_better(dhcp_failover_state_t *state, struct lease *lease,
- failover_message_t *msg)
- {
-@@ -5132,15 +5132,15 @@ failover_lease_is_better(dhcp_failover_s
- case FTS_ACTIVE:
- if (msg->binding_status == FTS_ACTIVE) {
- if (msg_cltt < lease->cltt)
-- return ISC_TRUE;
-+ return true;
- else if (msg_cltt > lease->cltt)
-- return ISC_FALSE;
-+ return false;
- else if (state->i_am == primary)
-- return ISC_TRUE;
-+ return true;
- else
-- return ISC_FALSE;
-+ return false;
- } else if (msg->binding_status == FTS_EXPIRED) {
-- return ISC_FALSE;
-+ return false;
- }
- /* FALL THROUGH */
-
-@@ -5151,11 +5151,11 @@ failover_lease_is_better(dhcp_failover_s
- case FTS_ABANDONED:
- case FTS_RESET:
- if (msg->binding_status == FTS_ACTIVE)
-- return ISC_FALSE;
-+ return false;
- else if (state->i_am == primary)
-- return ISC_TRUE;
-+ return true;
- else
-- return ISC_FALSE;
-+ return false;
- /* FALL THROUGH to impossible condition */
-
- default:
-@@ -5164,7 +5164,7 @@ failover_lease_is_better(dhcp_failover_s
-
- log_fatal("Impossible condition at %s:%d.", MDL);
- /* Silence compiler warning. */
-- return ISC_FALSE;
-+ return false;
- }
-
- isc_result_t dhcp_failover_process_bind_update (dhcp_failover_state_t *state,
-@@ -5177,8 +5177,8 @@ isc_result_t dhcp_failover_process_bind_
- int new_binding_state;
- int send_to_backup = 0;
- int required_options;
-- isc_boolean_t chaddr_changed = ISC_FALSE;
-- isc_boolean_t ident_changed = ISC_FALSE;
-+ bool chaddr_changed = false;
-+ bool ident_changed = false;
-
- /* Validate the binding update. */
- required_options = FTB_ASSIGNED_IP_ADDRESS | FTB_BINDING_STATUS;
-@@ -5250,7 +5250,7 @@ isc_result_t dhcp_failover_process_bind_
- if ((lt->hardware_addr.hlen != msg->chaddr.count) ||
- (memcmp(lt->hardware_addr.hbuf, msg->chaddr.data,
- msg->chaddr.count) != 0))
-- chaddr_changed = ISC_TRUE;
-+ chaddr_changed = true;
-
- lt -> hardware_addr.hlen = msg -> chaddr.count;
- memcpy (lt -> hardware_addr.hbuf, msg -> chaddr.data,
-@@ -5262,7 +5262,7 @@ isc_result_t dhcp_failover_process_bind_
- reason = FTR_MISSING_BINDINFO;
- goto bad;
- } else if (msg->binding_status == FTS_ABANDONED) {
-- chaddr_changed = ISC_TRUE;
-+ chaddr_changed = true;
- lt->hardware_addr.hlen = 0;
- if (lt->scope)
- binding_scope_dereference(<->scope, MDL);
-@@ -5282,7 +5282,7 @@ isc_result_t dhcp_failover_process_bind_
- (lt->uid == NULL) || /* Sanity; should never happen. */
- (memcmp(lt->uid, msg->client_identifier.data,
- lt->uid_len) != 0))
-- ident_changed = ISC_TRUE;
-+ ident_changed = true;
-
- lt->uid_len = msg->client_identifier.count;
-
-@@ -5312,7 +5312,7 @@ isc_result_t dhcp_failover_process_bind_
- } else if (lt->uid && msg->binding_status != FTS_RESET &&
- msg->binding_status != FTS_FREE &&
- msg->binding_status != FTS_BACKUP) {
-- ident_changed = ISC_TRUE;
-+ ident_changed = true;
- if (lt->uid != lt->uid_buf)
- dfree (lt->uid, MDL);
- lt->uid = NULL;
-@@ -5347,7 +5347,7 @@ isc_result_t dhcp_failover_process_bind_
- if (msg->binding_status == FTS_ACTIVE &&
- (chaddr_changed || ident_changed)) {
- #if defined (NSUPDATE)
-- (void) ddns_removals(lease, NULL, NULL, ISC_FALSE);
-+ (void) ddns_removals(lease, NULL, NULL, false);
- #endif /* NSUPDATE */
-
- if (lease->scope != NULL)
-@@ -5534,7 +5534,7 @@ isc_result_t dhcp_failover_process_bind_
- struct iaddr ia;
- const char *message = "no memory";
- u_int32_t pot_expire;
-- int send_to_backup = ISC_FALSE;
-+ int send_to_backup = false;
- struct timeval tv;
-
- ia.len = sizeof msg -> assigned_addr;
-@@ -5621,7 +5621,7 @@ isc_result_t dhcp_failover_process_bind_
- if (state->i_am == primary &&
- !(lease->flags & (RESERVED_LEASE | BOOTP_LEASE)) &&
- peer_wants_lease(lease))
-- send_to_backup = ISC_TRUE;
-+ send_to_backup = true;
-
- if (!send_to_backup && state->me.state == normal)
- commit_leases();
-Index: dhcp-4.4.1/server/dhcpd.c
-===================================================================
---- dhcp-4.4.1.orig/server/dhcpd.c
-+++ dhcp-4.4.1/server/dhcpd.c
-@@ -98,7 +98,7 @@ const char *path_dhcpd_conf = _PATH_DHCP
- const char *path_dhcpd_db = _PATH_DHCPD_DB;
- const char *path_dhcpd_pid = _PATH_DHCPD_PID;
- /* False (default) => we write and use a pid file */
--isc_boolean_t no_pid_file = ISC_FALSE;
-+bool no_pid_file = false;
-
- int dhcp_max_agent_option_packet_length = DHCP_MTU_MAX;
-
-@@ -476,7 +476,7 @@ main(int argc, char **argv) {
- path_dhcpd_pid = argv [i];
- have_dhcpd_pid = 1;
- } else if (!strcmp(argv[i], "--no-pid")) {
-- no_pid_file = ISC_TRUE;
-+ no_pid_file = true;
- } else if (!strcmp (argv [i], "-t")) {
- /* test configurations only */
- #ifndef DEBUG
-@@ -863,7 +863,7 @@ main(int argc, char **argv) {
- * - we don't have a pid file to check
- * - there is no other process running
- */
-- if ((lftest == 0) && (no_pid_file == ISC_FALSE)) {
-+ if ((lftest == 0) && (no_pid_file == false)) {
- /*Read previous pid file. */
- if ((i = open(path_dhcpd_pid, O_RDONLY)) >= 0) {
- status = read(i, pbuf, (sizeof pbuf) - 1);
-@@ -974,7 +974,7 @@ main(int argc, char **argv) {
- * that we have forked we can write our pid if
- * appropriate.
- */
-- if (no_pid_file == ISC_FALSE) {
-+ if (no_pid_file == false) {
- i = open(path_dhcpd_pid, O_WRONLY|O_CREAT|O_TRUNC, 0644);
- if (i >= 0) {
- sprintf(pbuf, "%d\n", (int) getpid());
-@@ -1730,7 +1730,7 @@ static isc_result_t dhcp_io_shutdown_cou
- free_everything ();
- omapi_print_dmalloc_usage_by_caller ();
- #endif
-- if (no_pid_file == ISC_FALSE)
-+ if (no_pid_file == false)
- (void) unlink(path_dhcpd_pid);
- exit (0);
- }
-@@ -1741,7 +1741,7 @@ static isc_result_t dhcp_io_shutdown_cou
- free_everything ();
- omapi_print_dmalloc_usage_by_caller ();
- #endif
-- if (no_pid_file == ISC_FALSE)
-+ if (no_pid_file == false)
- (void) unlink(path_dhcpd_pid);
- exit (0);
- }
-@@ -1750,7 +1750,7 @@ static isc_result_t dhcp_io_shutdown_cou
- #if defined(FAILOVER_PROTOCOL)
- !failover_connection_count &&
- #endif
-- ISC_TRUE) {
-+ true) {
- shutdown_state = shutdown_done;
- shutdown_time = cur_time;
- goto oncemore;
-Index: dhcp-4.4.1/server/mdb6.c
-===================================================================
---- dhcp-4.4.1.orig/server/mdb6.c
-+++ dhcp-4.4.1/server/mdb6.c
-@@ -514,10 +514,10 @@ ia_remove_all_lease(struct ia_xx *ia, co
- /*
- * Compare two IA.
- */
--isc_boolean_t
-+bool
- ia_equal(const struct ia_xx *a, const struct ia_xx *b)
- {
-- isc_boolean_t found;
-+ bool found;
- int i, j;
-
- /*
-@@ -525,9 +525,9 @@ ia_equal(const struct ia_xx *a, const st
- */
- if (a == NULL) {
- if (b == NULL) {
-- return ISC_TRUE;
-+ return true;
- } else {
-- return ISC_FALSE;
-+ return false;
- }
- }
-
-@@ -535,58 +535,58 @@ ia_equal(const struct ia_xx *a, const st
- * Check the type is the same.
- */
- if (a->ia_type != b->ia_type) {
-- return ISC_FALSE;
-+ return false;
- }
-
- /*
- * Check the DUID is the same.
- */
- if (a->iaid_duid.len != b->iaid_duid.len) {
-- return ISC_FALSE;
-+ return false;
- }
- if (memcmp(a->iaid_duid.data,
- b->iaid_duid.data, a->iaid_duid.len) != 0) {
-- return ISC_FALSE;
-+ return false;
- }
-
- /*
- * Make sure we have the same number of addresses/prefixes in each.
- */
- if (a->num_iasubopt != b->num_iasubopt) {
-- return ISC_FALSE;
-+ return false;
- }
-
- /*
- * Check that each address/prefix is present in both.
- */
- for (i=0; i<a->num_iasubopt; i++) {
-- found = ISC_FALSE;
-+ found = false;
- for (j=0; j<a->num_iasubopt; j++) {
- if (a->iasubopt[i]->plen != b->iasubopt[i]->plen)
- continue;
- if (memcmp(&(a->iasubopt[i]->addr),
- &(b->iasubopt[j]->addr),
- sizeof(struct in6_addr)) == 0) {
-- found = ISC_TRUE;
-+ found = true;
- break;
- }
- }
- if (!found) {
-- return ISC_FALSE;
-+ return false;
- }
- }
-
- /*
- * These are the same in every way we care about.
- */
-- return ISC_TRUE;
-+ return true;
- }
-
- /*
- * Helper function for lease heaps.
- * Makes the top of the heap the oldest lease.
- */
--static isc_boolean_t
-+static bool
- lease_older(void *a, void *b) {
- struct iasubopt *la = (struct iasubopt *)a;
- struct iasubopt *lb = (struct iasubopt *)b;
-@@ -1038,8 +1038,8 @@ create_lease6(struct ipv6_pool *pool, st
- struct data_string new_ds;
- struct iasubopt *iaaddr;
- isc_result_t result;
-- isc_boolean_t reserved_iid;
-- static isc_boolean_t init_resiid = ISC_FALSE;
-+ bool reserved_iid;
-+ static bool init_resiid = false;
-
- /*
- * Fill the reserved IIDs.
-@@ -1049,7 +1049,7 @@ create_lease6(struct ipv6_pool *pool, st
- memset(&resany, 0, 8);
- resany.s6_addr[8] = 0xfd;
- memset(&resany.s6_addr[9], 0xff, 6);
-- init_resiid = ISC_TRUE;
-+ init_resiid = true;
- }
-
- /*
-@@ -1094,14 +1094,14 @@ create_lease6(struct ipv6_pool *pool, st
- /*
- * Avoid reserved interface IDs. (cf. RFC 5453)
- */
-- reserved_iid = ISC_FALSE;
-+ reserved_iid = false;
- if (memcmp(&tmp.s6_addr[8], &rtany.s6_addr[8], 8) == 0) {
-- reserved_iid = ISC_TRUE;
-+ reserved_iid = true;
- }
- if (!reserved_iid &&
- (memcmp(&tmp.s6_addr[8], &resany.s6_addr[8], 7) == 0) &&
- ((tmp.s6_addr[15] & 0x80) == 0x80)) {
-- reserved_iid = ISC_TRUE;
-+ reserved_iid = true;
- }
-
- /*
-@@ -1177,7 +1177,7 @@ create_lease6_eui_64(struct ipv6_pool *p
- struct iasubopt *test_iaaddr;
- struct iasubopt *iaaddr;
- isc_result_t result;
-- static isc_boolean_t init_resiid = ISC_FALSE;
-+ static bool init_resiid = false;
-
- /* Fill the reserved IIDs. */
- if (!init_resiid) {
-@@ -1185,7 +1185,7 @@ create_lease6_eui_64(struct ipv6_pool *p
- memset(&resany, 0, 8);
- resany.s6_addr[8] = 0xfd;
- memset(&resany.s6_addr[9], 0xff, 6);
-- init_resiid = ISC_TRUE;
-+ init_resiid = true;
- }
-
- /* Pool must be IA_NA */
-@@ -1520,7 +1520,7 @@ add_lease6(struct ipv6_pool *pool, struc
- /*
- * Determine if an address is present in a pool or not.
- */
--isc_boolean_t
-+bool
- lease6_exists(const struct ipv6_pool *pool, const struct in6_addr *addr) {
- struct iasubopt *test_iaaddr;
-
-@@ -1528,9 +1528,9 @@ lease6_exists(const struct ipv6_pool *po
- if (iasubopt_hash_lookup(&test_iaaddr, pool->leases,
- (void *)addr, sizeof(*addr), MDL)) {
- iasubopt_dereference(&test_iaaddr, MDL);
-- return ISC_TRUE;
-+ return true;
- } else {
-- return ISC_FALSE;
-+ return false;
- }
- }
-
-@@ -1545,20 +1545,20 @@ lease6_exists(const struct ipv6_pool *po
- * \param[in] lease = lease to check
- *
- * \return
-- * ISC_TRUE = The lease is allowed to use that address
-- * ISC_FALSE = The lease isn't allowed to use that address
-+ * true = The lease is allowed to use that address
-+ * false = The lease isn't allowed to use that address
- */
--isc_boolean_t
-+bool
- lease6_usable(struct iasubopt *lease) {
- struct iasubopt *test_iaaddr;
-- isc_boolean_t status = ISC_TRUE;
-+ bool status = true;
-
- test_iaaddr = NULL;
- if (iasubopt_hash_lookup(&test_iaaddr, lease->ipv6_pool->leases,
- (void *)&lease->addr,
- sizeof(lease->addr), MDL)) {
- if (test_iaaddr != lease) {
-- status = ISC_FALSE;
-+ status = false;
- }
- iasubopt_dereference(&test_iaaddr, MDL);
- }
-@@ -1697,7 +1697,7 @@ move_lease_to_inactive(struct ipv6_pool
- #if defined (NSUPDATE)
- /* Process events upon expiration. */
- if (pool->pool_type != D6O_IA_PD) {
-- (void) ddns_removals(NULL, lease, NULL, ISC_FALSE);
-+ (void) ddns_removals(NULL, lease, NULL, false);
- }
- #endif
-
-@@ -1977,21 +1977,21 @@ create_prefix6(struct ipv6_pool *pool, s
- /*
- * Determine if a prefix is present in a pool or not.
- */
--isc_boolean_t
-+bool
- prefix6_exists(const struct ipv6_pool *pool,
- const struct in6_addr *pref, u_int8_t plen) {
- struct iasubopt *test_iapref;
-
- if ((int)plen != pool->units)
-- return ISC_FALSE;
-+ return false;
-
- test_iapref = NULL;
- if (iasubopt_hash_lookup(&test_iapref, pool->leases,
- (void *)pref, sizeof(*pref), MDL)) {
- iasubopt_dereference(&test_iapref, MDL);
-- return ISC_TRUE;
-+ return true;
- } else {
-- return ISC_FALSE;
-+ return false;
- }
- }
-
-@@ -2267,15 +2267,15 @@ ipv6_network_portion(struct in6_addr *re
- /*
- * Determine if the given address/prefix is in the pool.
- */
--isc_boolean_t
-+bool
- ipv6_in_pool(const struct in6_addr *addr, const struct ipv6_pool *pool) {
- struct in6_addr tmp;
-
- ipv6_network_portion(&tmp, addr, pool->bits);
- if (memcmp(&tmp, &pool->start_addr, sizeof(tmp)) == 0) {
-- return ISC_TRUE;
-+ return true;
- } else {
-- return ISC_FALSE;
-+ return false;
- }
- }
-
-Index: dhcp-4.4.1/server/ddns.c
-===================================================================
---- dhcp-4.4.1.orig/server/ddns.c
-+++ dhcp-4.4.1/server/ddns.c
-@@ -373,7 +373,7 @@ ddns_updates(struct packet *packet, stru
-
- /* If desired do the removals */
- if (do_remove != 0) {
-- (void) ddns_removals(lease, lease6, NULL, ISC_TRUE);
-+ (void) ddns_removals(lease, lease6, NULL, true);
- }
- goto out;
- }
-@@ -618,7 +618,7 @@ ddns_updates(struct packet *packet, stru
- * We should log a more specific error closer to the actual
- * error if we want one. ddns_removal failure not logged here.
- */
-- (void) ddns_removals(lease, lease6, ddns_cb, ISC_TRUE);
-+ (void) ddns_removals(lease, lease6, ddns_cb, true);
- }
- else {
- ddns_fwd_srv_connector(lease, lease6, scope, ddns_cb,
-@@ -1907,7 +1907,7 @@ ddns_fwd_srv_rem1(dhcp_ddns_cb_t *ddns_c
- * the current entry.
- *
- * \li active - indication about the status of the lease. It is
-- * ISC_TRUE if the lease is still active, and FALSE if the lease
-+ * true if the lease is still active, and FALSE if the lease
- * is inactive. This is used to indicate if the lease is inactive or going
- * to inactive so we can avoid trying to update the lease with cb pointers
- * and text information if it isn't useful.
-@@ -1923,7 +1923,7 @@ isc_result_t
- ddns_removals(struct lease *lease,
- struct iasubopt *lease6,
- dhcp_ddns_cb_t *add_ddns_cb,
-- isc_boolean_t active)
-+ bool active)
- {
- isc_result_t rcode, execute_add = ISC_R_FAILURE;
- struct binding_scope **scope = NULL;
-@@ -1970,7 +1970,7 @@ ddns_removals(struct lease *lease,
- if (((ddns_cb->state == DDNS_STATE_ADD_PTR) ||
- (ddns_cb->state == DDNS_STATE_ADD_FW_NXDOMAIN) ||
- (ddns_cb->state == DDNS_STATE_ADD_FW_YXDHCID)) ||
-- ((active == ISC_FALSE) &&
-+ ((active == false) &&
- ((ddns_cb->flags & DDNS_ACTIVE_LEASE) != 0))) {
- /* Cancel the current request */
- ddns_cancel(lease->ddns_cb, MDL);
-@@ -1998,7 +1998,7 @@ ddns_removals(struct lease *lease,
- if (((ddns_cb->state == DDNS_STATE_ADD_PTR) ||
- (ddns_cb->state == DDNS_STATE_ADD_FW_NXDOMAIN) ||
- (ddns_cb->state == DDNS_STATE_ADD_FW_YXDHCID)) ||
-- ((active == ISC_FALSE) &&
-+ ((active == false) &&
- ((ddns_cb->flags & DDNS_ACTIVE_LEASE) != 0))) {
- /* Cancel the current request */
- ddns_cancel(lease6->ddns_cb, MDL);
-@@ -2053,7 +2053,7 @@ ddns_removals(struct lease *lease,
- * the lease information for v6 when the response
- * from the DNS code is processed.
- */
-- if (active == ISC_TRUE) {
-+ if (active == true) {
- ddns_cb->flags |= DDNS_ACTIVE_LEASE;
- }
-
-Index: dhcp-4.4.1/server/mdb.c
-===================================================================
---- dhcp-4.4.1.orig/server/mdb.c
-+++ dhcp-4.4.1/server/mdb.c
-@@ -1504,7 +1504,7 @@ void make_binding_state_transition (stru
- lease -> binding_state == FTS_ACTIVE &&
- lease -> next_binding_state != FTS_RELEASED))) {
- #if defined (NSUPDATE)
-- (void) ddns_removals(lease, NULL, NULL, ISC_TRUE);
-+ (void) ddns_removals(lease, NULL, NULL, true);
- #endif
- if (lease->on_star.on_expiry) {
- execute_statements(NULL, NULL, lease,
-@@ -1568,7 +1568,7 @@ void make_binding_state_transition (stru
- * release message. This is not true of expiry, where the
- * peer may have extended the lease.
- */
-- (void) ddns_removals(lease, NULL, NULL, ISC_TRUE);
-+ (void) ddns_removals(lease, NULL, NULL, true);
- #endif
- if (lease->on_star.on_release) {
- execute_statements(NULL, NULL, lease,
-@@ -1736,7 +1736,7 @@ void release_lease (lease, packet)
- /* If there are statements to execute when the lease is
- released, execute them. */
- #if defined (NSUPDATE)
-- (void) ddns_removals(lease, NULL, NULL, ISC_FALSE);
-+ (void) ddns_removals(lease, NULL, NULL, false);
- #endif
- if (lease->on_star.on_release) {
- execute_statements (NULL, packet, lease,
-@@ -1810,7 +1810,7 @@ void abandon_lease (lease, message)
- {
- struct lease *lt = NULL;
- #if defined (NSUPDATE)
-- (void) ddns_removals(lease, NULL, NULL, ISC_FALSE);
-+ (void) ddns_removals(lease, NULL, NULL, false);
- #endif
-
- if (!lease_copy(<, lease, MDL)) {
-@@ -1860,7 +1860,7 @@ void dissociate_lease (lease)
- {
- struct lease *lt = (struct lease *)0;
- #if defined (NSUPDATE)
-- (void) ddns_removals(lease, NULL, NULL, ISC_FALSE);
-+ (void) ddns_removals(lease, NULL, NULL, false);
- #endif
-
- if (!lease_copy (<, lease, MDL))
-@@ -2072,38 +2072,38 @@ int find_lease_by_hw_addr (struct lease
- * should never see reset leases for this.
- * 4) Abandoned leases are always dead last.
- */
--static isc_boolean_t
-+static bool
- client_lease_preferred(struct lease *cand, struct lease *lease)
- {
- if (cand->binding_state == FTS_ACTIVE) {
- if (lease->binding_state == FTS_ACTIVE &&
- lease->ends >= cand->ends)
-- return ISC_TRUE;
-+ return true;
- } else if (cand->binding_state == FTS_EXPIRED ||
- cand->binding_state == FTS_RELEASED) {
- if (lease->binding_state == FTS_ACTIVE)
-- return ISC_TRUE;
-+ return true;
-
- if ((lease->binding_state == FTS_EXPIRED ||
- lease->binding_state == FTS_RELEASED) &&
- lease->cltt >= cand->cltt)
-- return ISC_TRUE;
-+ return true;
- } else if (cand->binding_state != FTS_ABANDONED) {
- if (lease->binding_state == FTS_ACTIVE ||
- lease->binding_state == FTS_EXPIRED ||
- lease->binding_state == FTS_RELEASED)
-- return ISC_TRUE;
-+ return true;
-
- if (lease->binding_state != FTS_ABANDONED &&
- lease->cltt >= cand->cltt)
-- return ISC_TRUE;
-+ return true;
- } else /* (cand->binding_state == FTS_ABANDONED) */ {
- if (lease->binding_state != FTS_ABANDONED ||
- lease->cltt >= cand->cltt)
-- return ISC_TRUE;
-+ return true;
- }
-
-- return ISC_FALSE;
-+ return false;
- }
-
- /* Add the specified lease to the uid hash. */
diff --git a/poky/meta/recipes-connectivity/dhcp/dhcp/0001-master-Added-includes-of-new-BIND9-compatibility-hea.patch b/poky/meta/recipes-connectivity/dhcp/dhcp/0001-master-Added-includes-of-new-BIND9-compatibility-hea.patch
new file mode 100644
index 0000000..1bc1422
--- /dev/null
+++ b/poky/meta/recipes-connectivity/dhcp/dhcp/0001-master-Added-includes-of-new-BIND9-compatibility-hea.patch
@@ -0,0 +1,79 @@
+From 8194daabfd590f17825f0c61e9534bee5c99cc86 Mon Sep 17 00:00:00 2001
+From: Thomas Markwalder <tmark@isc.org>
+Date: Fri, 14 Sep 2018 13:41:41 -0400
+Subject: [master] Added includes of new BIND9 compatibility headers
+
+ Merges in rt48072.
+
+Upstream-Status: Backport
+Signed-off-by: Adrian Bunk <bunk@stusta.de>
+
+diff --git a/includes/omapip/isclib.h b/includes/omapip/isclib.h
+index 75a87ff6..538b927f 100644
+--- a/includes/omapip/isclib.h
++++ b/includes/omapip/isclib.h
+@@ -48,6 +48,9 @@
+ #include <string.h>
+ #include <netdb.h>
+
++#include <isc/boolean.h>
++#include <isc/int.h>
++
+ #include <isc/buffer.h>
+ #include <isc/lex.h>
+ #include <isc/lib.h>
+diff --git a/includes/omapip/result.h b/includes/omapip/result.h
+index 91243e1b..860298f6 100644
+--- a/includes/omapip/result.h
++++ b/includes/omapip/result.h
+@@ -26,6 +26,7 @@
+ #ifndef DHCP_RESULT_H
+ #define DHCP_RESULT_H 1
+
++#include <isc/boolean.h>
+ #include <isc/lang.h>
+ #include <isc/resultclass.h>
+ #include <isc/types.h>
+diff --git a/server/dhcpv6.c b/server/dhcpv6.c
+index a7110f98..cde4f617 100644
+--- a/server/dhcpv6.c
++++ b/server/dhcpv6.c
+@@ -1034,7 +1034,8 @@ void check_pool6_threshold(struct reply_state *reply,
+ shared_name,
+ inet_ntop(AF_INET6, &lease->addr,
+ tmp_addr, sizeof(tmp_addr)),
+- used, count);
++ (long long unsigned)(used),
++ (long long unsigned)(count));
+ }
+ return;
+ }
+@@ -1066,7 +1067,8 @@ void check_pool6_threshold(struct reply_state *reply,
+ "address: %s; high threshold %d%% %llu/%llu.",
+ shared_name,
+ inet_ntop(AF_INET6, &lease->addr, tmp_addr, sizeof(tmp_addr)),
+- poolhigh, used, count);
++ poolhigh, (long long unsigned)(used),
++ (long long unsigned)(count));
+
+ /* handle the low threshold now, if we don't
+ * have one we default to 0. */
+@@ -1436,12 +1438,15 @@ pick_v6_address(struct reply_state *reply)
+ log_debug("Unable to pick client address: "
+ "no addresses available - shared network %s: "
+ " 2^64-1 < total, %llu active, %llu abandoned",
+- shared_name, active - abandoned, abandoned);
++ shared_name, (long long unsigned)(active - abandoned),
++ (long long unsigned)(abandoned));
+ } else {
+ log_debug("Unable to pick client address: "
+ "no addresses available - shared network %s: "
+ "%llu total, %llu active, %llu abandoned",
+- shared_name, total, active - abandoned, abandoned);
++ shared_name, (long long unsigned)(total),
++ (long long unsigned)(active - abandoned),
++ (long long unsigned)(abandoned));
+ }
+
+ return ISC_R_NORESOURCES;
+
diff --git a/poky/meta/recipes-connectivity/dhcp/dhcp_4.4.1.bb b/poky/meta/recipes-connectivity/dhcp/dhcp_4.4.1.bb
index ca0daa1..e8cc731 100644
--- a/poky/meta/recipes-connectivity/dhcp/dhcp_4.4.1.bb
+++ b/poky/meta/recipes-connectivity/dhcp/dhcp_4.4.1.bb
@@ -10,7 +10,7 @@
file://0009-remove-dhclient-script-bash-dependency.patch \
file://0012-dhcp-correct-the-intention-for-xml2-lib-search.patch \
file://0013-fixup_use_libbind.patch \
- file://0001-dhcpd-fix-Replace-custom-isc_boolean_t-with-C-standa.patch \
+ file://0001-master-Added-includes-of-new-BIND9-compatibility-hea.patch \
"
SRC_URI[md5sum] = "18c7f4dcbb0a63df25098216d47b1ede"
diff --git a/poky/meta/recipes-connectivity/iproute2/iproute2.inc b/poky/meta/recipes-connectivity/iproute2/iproute2.inc
index 1aa1eec..d728717 100644
--- a/poky/meta/recipes-connectivity/iproute2/iproute2.inc
+++ b/poky/meta/recipes-connectivity/iproute2/iproute2.inc
@@ -18,7 +18,8 @@
PACKAGECONFIG ??= "tipc"
PACKAGECONFIG[tipc] = ",,libmnl,"
-EXTRA_OEMAKE = "CC='${CC}' KERNEL_INCLUDE=${STAGING_INCDIR} DOCDIR=${docdir}/iproute2 SUBDIRS='lib tc ip bridge misc genl ${@bb.utils.contains('PACKAGECONFIG', 'tipc', 'tipc', '', d)}' SBINDIR='${base_sbindir}' LIBDIR='${libdir}'"
+EXTRA_OEMAKE = "CC='${CC}' KERNEL_INCLUDE=${STAGING_INCDIR} DOCDIR=${docdir}/iproute2 SUBDIRS='lib tc ip bridge misc genl \
+ ${@bb.utils.contains('PACKAGECONFIG', 'tipc', 'tipc', '', d)}' SBINDIR='${base_sbindir}' LIBDIR='${libdir}'"
do_configure_append () {
sh configure ${STAGING_INCDIR}
@@ -37,10 +38,19 @@
# The .so files in iproute2-tc are modules, not traditional libraries
INSANE_SKIP_${PN}-tc = "dev-so"
-PACKAGES =+ "${PN}-tc ${PN}-lnstat ${PN}-ifstat ${PN}-genl ${PN}-rtacct ${PN}-nstat ${PN}-ss ${@bb.utils.contains('PACKAGECONFIG', 'tipc', '${PN}-tipc', '', d)}"
+PACKAGES =+ "${PN}-tc \
+ ${PN}-lnstat \
+ ${PN}-ifstat \
+ ${PN}-genl \
+ ${PN}-rtacct \
+ ${PN}-nstat \
+ ${PN}-ss \
+ ${@bb.utils.contains('PACKAGECONFIG', 'tipc', '${PN}-tipc', '', d)}"
FILES_${PN}-tc = "${base_sbindir}/tc* \
${libdir}/tc/*.so"
-FILES_${PN}-lnstat = "${base_sbindir}/lnstat ${base_sbindir}/ctstat ${base_sbindir}/rtstat"
+FILES_${PN}-lnstat = "${base_sbindir}/lnstat \
+ ${base_sbindir}/ctstat \
+ ${base_sbindir}/rtstat"
FILES_${PN}-ifstat = "${base_sbindir}/ifstat"
FILES_${PN}-genl = "${base_sbindir}/genl"
FILES_${PN}-rtacct = "${base_sbindir}/rtacct"
diff --git a/poky/meta/recipes-connectivity/iproute2/iproute2/0001-ip-Remove-unneed-header.patch b/poky/meta/recipes-connectivity/iproute2/iproute2/0001-ip-Remove-unneed-header.patch
deleted file mode 100644
index a9027c5..0000000
--- a/poky/meta/recipes-connectivity/iproute2/iproute2/0001-ip-Remove-unneed-header.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From 02ed10fc5215c4a32e6740b0a0c2439659be6801 Mon Sep 17 00:00:00 2001
-From: Changhyeok Bae <changhyeok.bae@gmail.com>
-Date: Mon, 13 Nov 2017 15:59:35 +0000
-Subject: [PATCH] ip: Remove unneed header
-
-Fix redefinition of struct ethhdr with a suitably patched musl libc
-that suppresses the kernel if_ether.h.
-
-Signed-off-by: Changhyeok Bae <changhyeok.bae@gmail.com>
-
-Upstream-Status: Pending [netdev@vger.kernel.org]
----
- ip/iplink_bridge.c | 1 -
- 1 file changed, 1 deletion(-)
-
-diff --git a/ip/iplink_bridge.c b/ip/iplink_bridge.c
-index cccdec1..f065b22 100644
---- a/ip/iplink_bridge.c
-+++ b/ip/iplink_bridge.c
-@@ -13,7 +13,6 @@
- #include <stdlib.h>
- #include <string.h>
- #include <netinet/in.h>
--#include <netinet/ether.h>
- #include <linux/if_link.h>
- #include <linux/if_bridge.h>
- #include <net/if.h>
---
-2.7.4
-
diff --git a/poky/meta/recipes-connectivity/iproute2/iproute2/configure-cross.patch b/poky/meta/recipes-connectivity/iproute2/iproute2/configure-cross.patch
index 8b75a2a..b0c4a08 100644
--- a/poky/meta/recipes-connectivity/iproute2/iproute2/configure-cross.patch
+++ b/poky/meta/recipes-connectivity/iproute2/iproute2/configure-cross.patch
@@ -1,6 +1,6 @@
-From 85b0589b4843c03e8e6fd9416d71ea449a73c5c0 Mon Sep 17 00:00:00 2001
+From 3835b1cc4a55361443c2b37dea688da652217635 Mon Sep 17 00:00:00 2001
From: Koen Kooi <koen@dominion.thruhere.net>
-Date: Thu, 3 Nov 2011 10:46:16 +0100
+Date: Sun, 31 Mar 2019 17:32:07 +0200
Subject: [PATCH] make configure cross compile safe
According to Kevin Tian:
@@ -9,11 +9,15 @@
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
Signed-off-by: Shane Wang <shane.wang@intel.com>
-Index: iproute2-4.14.1/configure
-===================================================================
---- iproute2-4.14.1.orig/configure
-+++ iproute2-4.14.1/configure
-@@ -2,6 +2,7 @@
+---
+ configure | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/configure b/configure
+index 45fcffb6..0c5c9146 100755
+--- a/configure
++++ b/configure
+@@ -3,6 +3,7 @@
# This is not an autoconf generated configure
#
INCLUDE=${1:-"$PWD/include"}
@@ -21,12 +25,15 @@
# Output file which is input to Makefile
CONFIG=config.mk
-@@ -195,7 +196,7 @@ check_ipt_lib_dir()
+@@ -162,7 +163,7 @@ check_ipt_lib_dir()
return
fi
-- for dir in /lib /usr/lib /usr/local/lib
-+ for dir in $SYSROOT/lib $SYSROOT/usr/lib $SYSROOT/usr/local/lib
- do
- for file in $dir/{xtables,iptables}/lib*t_*so ; do
+- for dir in /lib /usr/lib /usr/local/lib; do
++ for dir in $SYSROOT/lib $SYSROOT/usr/lib $SYSROOT/usr/local/lib; do
+ for file in "xtables" "iptables"; do
+ file="$dir/$file/lib*t_*so"
if [ -f $file ]; then
+--
+2.17.1
+
diff --git a/poky/meta/recipes-connectivity/iproute2/iproute2_4.19.0.bb b/poky/meta/recipes-connectivity/iproute2/iproute2_4.19.0.bb
deleted file mode 100644
index 6db4062..0000000
--- a/poky/meta/recipes-connectivity/iproute2/iproute2_4.19.0.bb
+++ /dev/null
@@ -1,14 +0,0 @@
-require iproute2.inc
-
-SRC_URI = "${KERNELORG_MIRROR}/linux/utils/net/${BPN}/${BP}.tar.xz \
- file://configure-cross.patch \
- file://0001-libc-compat.h-add-musl-workaround.patch \
- file://0001-ip-Remove-unneed-header.patch \
- "
-
-SRC_URI[md5sum] = "67eeebacaac4515cab73dfd2fc796af3"
-SRC_URI[sha256sum] = "d9ec5ca1f47d8a85416fa26e7dc1cbf5d067640eb60e90bdc1c7e5bdc6a29984"
-
-# CFLAGS are computed in Makefile and reference CCOPTS
-#
-EXTRA_OEMAKE_append = " CCOPTS='${CFLAGS}'"
diff --git a/poky/meta/recipes-connectivity/iproute2/iproute2_5.0.0.bb b/poky/meta/recipes-connectivity/iproute2/iproute2_5.0.0.bb
new file mode 100644
index 0000000..8f33c7f
--- /dev/null
+++ b/poky/meta/recipes-connectivity/iproute2/iproute2_5.0.0.bb
@@ -0,0 +1,13 @@
+require iproute2.inc
+
+SRC_URI = "${KERNELORG_MIRROR}/linux/utils/net/${BPN}/${BP}.tar.xz \
+ file://configure-cross.patch \
+ file://0001-libc-compat.h-add-musl-workaround.patch \
+ "
+
+SRC_URI[md5sum] = "d22107b4d7cfb999eeb8ad8a0aec1124"
+SRC_URI[sha256sum] = "df047302a39650ef832c07e8dab5df7a23218cd398bd310c8628e386161d20ba"
+
+# CFLAGS are computed in Makefile and reference CCOPTS
+#
+EXTRA_OEMAKE_append = " CCOPTS='${CFLAGS}'"
diff --git a/poky/meta/recipes-connectivity/irda-utils/irda-utils-0.9.18/init b/poky/meta/recipes-connectivity/irda-utils/irda-utils-0.9.18/init
deleted file mode 100755
index 6f29e9c..0000000
--- a/poky/meta/recipes-connectivity/irda-utils/irda-utils-0.9.18/init
+++ /dev/null
@@ -1,78 +0,0 @@
-#! /bin/sh
-### BEGIN INIT INFO
-# Provides: irda
-# Required-Start: $network $remote_fs
-# Required-Stop: $network $remote_fs
-# Default-Start: 2 3 4 5
-# Default-Stop: 0 1 6
-# Short-Description: Infrared port support
-### END INIT INFO
-
-NAME="irattach"
-test -x "$IRDA_DAEMON" || IRDA_DAEMON=/usr/sbin/irattach
-test -z "$IRATTACH_PID" && IRATTACH_PID=/var/run/irattach.pid
-
-# Source function library.
-. /etc/init.d/functions
-
-module_id() {
- awk 'BEGIN { FS=": " } /Hardware/ { print $2 } ' </proc/cpuinfo
-}
-
-if [ ! -f /etc/sysconfig/irda ]; then
- case `module_id` in
- "HP iPAQ H2200" | "HP iPAQ HX4700" | "HTC Universal")
- IRDA=yes
- DEVICE=/dev/ttyS2
- DONGLE=
- DISCOVERY=
- ;;
- *)
- IRDA=yes
- DEVICE=/dev/ttyS1
- DONGLE=
- DISCOVERY=
- ;;
- esac
-else
- . /etc/sysconfig/irda
-fi
-
-# Check that irda is up.
-[ ${IRDA} = "no" ] && exit 0
-
-[ -f /usr/sbin/irattach ] || exit 0
-
-ARGS=
-if [ $DONGLE ]; then
- ARGS="$ARGS -d $DONGLE"
-fi
-if [ "$DISCOVERY" = "yes" ];then
- ARGS="$ARGS -s"
-fi
-
-case "$1" in
- start)
- echo -n "Starting IrDA: $NAME"
- start-stop-daemon --start --quiet --exec "$IRDA_DAEMON" ${DEVICE} ${ARGS} --pidfile "$IRATTACH_PID"
- sleep 1
- [ -f /var/run/irattach.pid ] && echo " done" || echo " fail"
- ;;
- stop)
- echo "Stopping IrDA: $NAME"
- start-stop-daemon --stop --quiet --exec "$IRDA_DAEMON" --pidfile "$IRATTACH_PID"
- ;;
- restart|force-reload)
- $0 stop
- $0 start
- ;;
- status)
- status irattach
- exit $?
- ;;
- *)
- N=/etc/init.d/$NAME
- echo "Usage: $N {start|stop|restart|force-reload|status}" >&2
- exit 1
- ;;
-esac
diff --git a/poky/meta/recipes-connectivity/irda-utils/irda-utils-0.9.18/ldflags.patch b/poky/meta/recipes-connectivity/irda-utils/irda-utils-0.9.18/ldflags.patch
deleted file mode 100644
index b246de8..0000000
--- a/poky/meta/recipes-connectivity/irda-utils/irda-utils-0.9.18/ldflags.patch
+++ /dev/null
@@ -1,87 +0,0 @@
-Obey LDFLAGS
-
-Signed-off-by: Christopher Larson <chris_larson@mentor.com>
-Upstream-Status: Pending
-
-Index: irda-utils-0.9.18/findchip/Makefile
-===================================================================
---- irda-utils-0.9.18.orig/findchip/Makefile
-+++ irda-utils-0.9.18/findchip/Makefile
-@@ -65,5 +65,5 @@ install: findchip
-
- gfindchip: gfindchip.c
- $(prn_cc)
-- $(ECMD))$(CC) $(CFLAGS) `gtk-config --cflags` $< -o $@ `gtk-config --libs`
-+ $(ECMD)$(CC) $(CFLAGS) $(LDFLAGS) `gtk-config --cflags` $< -o $@ `gtk-config --libs`
-
-Index: irda-utils-0.9.18/irattach/Makefile
-===================================================================
---- irda-utils-0.9.18.orig/irattach/Makefile
-+++ irda-utils-0.9.18/irattach/Makefile
-@@ -49,13 +49,13 @@ all: $(TARGETS)
-
- irattach: irattach.o util.o
- $(prn_cc_o)
-- $(ECMD)$(CC) $(CFLAGS) irattach.o util.o -o $@
-+ $(ECMD)$(CC) $(CFLAGS) $(LDFLAGS) irattach.o util.o -o $@
-
-
-
- dongle_attach: dongle_attach.o
- $(prn_cc_o)
-- $(ECMD)$(CC) $(CFLAGS) dongle_attach.o -o $@
-+ $(ECMD)$(CC) $(CFLAGS) $(LDFLAGS) dongle_attach.o -o $@
-
-
- install: $(TARGETS)
-Index: irda-utils-0.9.18/irdadump/Makefile
-===================================================================
---- irda-utils-0.9.18.orig/irdadump/Makefile
-+++ irda-utils-0.9.18/irdadump/Makefile
-@@ -40,7 +40,7 @@ lib_irdadump.a: $(LIBIRDADUMP_OBJS)
-
- irdadump: $(IRDADUMP_OBJS) $(LIBIRDADUMP_TARGET)
- $(prn_cc_o)
-- $(ECMD)$(CC) $(CFLAGS) `pkg-config --libs glib-2.0` -o $(IRDADUMP_TARGET) $< $(LIBIRDADUMP_TARGET)
-+ $(ECMD)$(CC) $(CFLAGS) $(LDFLAGS) `pkg-config --libs glib-2.0` -o $(IRDADUMP_TARGET) $< $(LIBIRDADUMP_TARGET)
-
-
- .c.o:
-Index: irda-utils-0.9.18/irdaping/Makefile
-===================================================================
---- irda-utils-0.9.18.orig/irdaping/Makefile
-+++ irda-utils-0.9.18/irdaping/Makefile
-@@ -56,7 +56,7 @@ all: $(TARGETS)
-
- irdaping: $(OBJS)
- $(prn_cc_o)
-- $(ECMD)$(CC) $(CFLAGS) $(OBJS) -o $@
-+ $(ECMD)$(CC) $(CFLAGS) $(LDFLAGS) $(OBJS) -o $@
-
-
- .c.o:
-Index: irda-utils-0.9.18/irnetd/Makefile
-===================================================================
---- irda-utils-0.9.18.orig/irnetd/Makefile
-+++ irda-utils-0.9.18/irnetd/Makefile
-@@ -50,7 +50,7 @@ all: $(TARGETS)
-
- irnetd: $(OBJS)
- $(prn_cc_o)
-- $(ECMD)$(CC) $(CFLAGS) $(OBJS) -o $@
-+ $(ECMD)$(CC) $(CFLAGS) $(LDFLAGS) $(OBJS) -o $@
-
-
- install: irnetd
-Index: irda-utils-0.9.18/psion/Makefile
-===================================================================
---- irda-utils-0.9.18.orig/psion/Makefile
-+++ irda-utils-0.9.18/psion/Makefile
-@@ -25,4 +25,4 @@ install: $(PSION_TARGETS)
- CFLAGS += -g -I../include -Wall -Wstrict-prototypes $(RPM_OPT_FLAGS)
- irpsion5:
- $(prn_cc_o)
-- $(ECMD)$(CC) $(CFLAGS) $(PSION_SRC) -o $@
-\ No newline at end of file
-+ $(ECMD)$(CC) $(CFLAGS) $(LDFLAGS) $(PSION_SRC) -o $@
-\ No newline at end of file
diff --git a/poky/meta/recipes-connectivity/irda-utils/irda-utils-0.9.18/musl.patch b/poky/meta/recipes-connectivity/irda-utils/irda-utils-0.9.18/musl.patch
deleted file mode 100644
index 97eb975..0000000
--- a/poky/meta/recipes-connectivity/irda-utils/irda-utils-0.9.18/musl.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-Replace use of <net/if_packet.h> with <linux/if_packet.h>.
-
-kernel headers <linux/if_packet.h> already provides the
-needed definitions, moreover not all libc implementations
-provide if_packet.h e.g. musl
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-Upstream-Status: Pending
-
-Index: irda-utils-0.9.18/irdaping/irdaping.c
-===================================================================
---- irda-utils-0.9.18.orig/irdaping/irdaping.c
-+++ irda-utils-0.9.18/irdaping/irdaping.c
-@@ -33,7 +33,6 @@
- #include <sys/socket.h>
- #include <sys/ioctl.h>
- #include <net/if.h> /* For struct ifreq */
--#include <net/if_packet.h> /* For struct sockaddr_pkt */
- #include <net/if_arp.h> /* For ARPHRD_IRDA */
- #include <netinet/if_ether.h> /* For ETH_P_ALL */
- #include <netinet/in.h> /* For htons */
-@@ -46,6 +45,7 @@
- #include <asm/byteorder.h> /* __cpu_to_le32 and co. */
-
- #include <linux/types.h> /* For __u8 and co. */
-+#include <linux/if_packet.h> /* For struct sockaddr_pkt */
- #include <irda.h>
-
- #ifndef AF_IRDA
diff --git a/poky/meta/recipes-connectivity/irda-utils/irda-utils_0.9.18.bb b/poky/meta/recipes-connectivity/irda-utils/irda-utils_0.9.18.bb
deleted file mode 100644
index 11b2ee9..0000000
--- a/poky/meta/recipes-connectivity/irda-utils/irda-utils_0.9.18.bb
+++ /dev/null
@@ -1,51 +0,0 @@
-SUMMARY = "Common files for IrDA"
-DESCRIPTION = "Provides common files needed to use IrDA. \
-IrDA allows communication over Infrared with other devices \
-such as phones and laptops."
-HOMEPAGE = "http://irda.sourceforge.net/"
-BUGTRACKER = "http://sourceforge.net/p/irda/bugs/"
-SECTION = "base"
-LICENSE = "GPLv2+"
-LIC_FILES_CHKSUM = "file://irdadump/COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \
- file://smcinit/COPYING;md5=0636e73ff0215e8d672dc4c32c317bb3 \
- file://man/COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \
- file://irdadump/irdadump.c;beginline=1;endline=24;md5=d78b9dce3cd78c2220250c9c7a2be178"
-
-SRC_URI = "${SOURCEFORGE_MIRROR}/irda/irda-utils-${PV}.tar.gz \
- file://ldflags.patch \
- file://musl.patch \
- file://init"
-
-SRC_URI[md5sum] = "84dc12aa4c3f61fccb8d8919bf4079bb"
-SRC_URI[sha256sum] = "61980551e46b2eaa9e17ad31cbc1a638074611fc33bff34163d10c7a67a9fdc6"
-
-inherit update-rc.d
-
-EXTRA_OEMAKE = "\
- 'CC=${CC}' \
- 'LD=${LD}' \
- 'CFLAGS=${CFLAGS}' \
- 'LDFLAGS=${LDFLAGS}' \
- 'SYS_INCLUDES=' \
- 'V=1' \
-"
-
-INITSCRIPT_NAME = "irattach"
-INITSCRIPT_PARAMS = "defaults 20"
-
-TARGETS ??= "irattach irdaping"
-do_compile () {
- for t in ${TARGETS}; do
- oe_runmake -C $t
- done
-}
-
-do_install () {
- install -d ${D}${sbindir}
- for t in ${TARGETS}; do
- oe_runmake -C $t ROOT="${D}" install
- done
-
- install -d ${D}${sysconfdir}/init.d
- install -m 0755 ${WORKDIR}/init ${D}${sysconfdir}/init.d/${INITSCRIPT_NAME}
-}
diff --git a/poky/meta/recipes-connectivity/iw/iw/0001-connect-fix-parsing-of-WEP-keys.patch b/poky/meta/recipes-connectivity/iw/iw/0001-connect-fix-parsing-of-WEP-keys.patch
deleted file mode 100644
index 8cf8f7a..0000000
--- a/poky/meta/recipes-connectivity/iw/iw/0001-connect-fix-parsing-of-WEP-keys.patch
+++ /dev/null
@@ -1,194 +0,0 @@
-From 2a6be4166fd718be0694fe8a6e3f1013c125dee2 Mon Sep 17 00:00:00 2001
-From: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
-Date: Tue, 12 Jun 2018 09:01:56 +0300
-Subject: [PATCH] connect: fix parsing of WEP keys
-
-The introduction of MFP options added a bug that causes a
-segmentation fault when parsing WEP keys.
-Fix that.
-
-Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
-Signed-off-by: Johannes Berg <johannes.berg@intel.com>
-
-Upstream-Status: Backport
-[https://git.kernel.org/pub/scm/linux/kernel/git/jberg/iw.git/commit/?id=0e39f109c4b8155697a12ef090b59cdb304c8c44]
-Signed-off-by: Liu Haitao <haitao.liu@windriver.com>
----
- ap.c | 2 +-
- connect.c | 7 ++-----
- ibss.c | 2 +-
- iw.h | 3 ++-
- util.c | 36 ++++++++++++++++++------------------
- 5 files changed, 24 insertions(+), 26 deletions(-)
-
-diff --git a/ap.c b/ap.c
-index 4bab5b9..dcce402 100644
---- a/ap.c
-+++ b/ap.c
-@@ -116,7 +116,7 @@ static int handle_start_ap(struct nl80211_state *state,
- argv++;
- argc--;
-
-- return parse_keys(msg, argv, argc);
-+ return parse_keys(msg, &argv, &argc);
- nla_put_failure:
- return -ENOSPC;
- }
-diff --git a/connect.c b/connect.c
-index 339fc73..4a847a1 100644
---- a/connect.c
-+++ b/connect.c
-@@ -54,13 +54,10 @@ static int iw_conn(struct nl80211_state *state,
- argv++;
- argc--;
-
-- ret = parse_keys(msg, argv, argc);
-+ ret = parse_keys(msg, &argv, &argc);
- if (ret)
- return ret;
-
-- argc -= 4;
-- argv += 4;
--
- if (!argc)
- return 0;
-
-@@ -228,7 +225,7 @@ static int iw_auth(struct nl80211_state *state,
- argv++;
- argc--;
-
-- return parse_keys(msg, argv, argc);
-+ return parse_keys(msg, &argv, &argc);
- nla_put_failure:
- return -ENOSPC;
- }
-diff --git a/ibss.c b/ibss.c
-index 84f1e95..d77fc92 100644
---- a/ibss.c
-+++ b/ibss.c
-@@ -115,7 +115,7 @@ static int join_ibss(struct nl80211_state *state,
- argv++;
- argc--;
-
-- return parse_keys(msg, argv, argc);
-+ return parse_keys(msg, &argv, &argc);
- nla_put_failure:
- return -ENOSPC;
- }
-diff --git a/iw.h b/iw.h
-index ee7ca20..8767ed3 100644
---- a/iw.h
-+++ b/iw.h
-@@ -180,7 +180,8 @@ int parse_hex_mask(char *hexmask, unsigned char **result, size_t *result_len,
- unsigned char **mask);
- unsigned char *parse_hex(char *hex, size_t *outlen);
-
--int parse_keys(struct nl_msg *msg, char **argv, int argc);
-+
-+int parse_keys(struct nl_msg *msg, char **argv[], int *argc);
- int parse_freqchan(struct chandef *chandef, bool chan, int argc, char **argv, int *parsed);
- enum nl80211_chan_width str_to_bw(const char *str);
- int put_chandef(struct nl_msg *msg, struct chandef *chandef);
-diff --git a/util.c b/util.c
-index 6e0ddff..122c019 100644
---- a/util.c
-+++ b/util.c
-@@ -417,23 +417,23 @@ static int parse_cipher_suite(const char *cipher_str)
- return -EINVAL;
- }
-
--int parse_keys(struct nl_msg *msg, char **argv, int argc)
-+int parse_keys(struct nl_msg *msg, char **argv[], int *argc)
- {
- struct nlattr *keys;
- int i = 0;
- bool have_default = false;
-- char *arg = *argv;
-+ char *arg = **argv;
- char keybuf[13];
- int pos = 0;
-
-- if (!argc)
-+ if (!*argc)
- return 1;
-
- if (!memcmp(&arg[pos], "psk", 3)) {
- char psk_keybuf[32];
- int cipher_suite, akm_suite;
-
-- if (argc < 4)
-+ if (*argc < 4)
- goto explain;
-
- pos+=3;
-@@ -451,9 +451,9 @@ int parse_keys(struct nl_msg *msg, char **argv, int argc)
- NLA_PUT(msg, NL80211_ATTR_PMK, 32, psk_keybuf);
- NLA_PUT_U32(msg, NL80211_ATTR_AUTH_TYPE, NL80211_AUTHTYPE_OPEN_SYSTEM);
-
-- argv++;
-- argc--;
-- arg = *argv;
-+ *argv += 1;
-+ *argc -= 1;
-+ arg = **argv;
-
- akm_suite = parse_akm_suite(arg);
- if (akm_suite < 0)
-@@ -461,9 +461,9 @@ int parse_keys(struct nl_msg *msg, char **argv, int argc)
-
- NLA_PUT_U32(msg, NL80211_ATTR_AKM_SUITES, akm_suite);
-
-- argv++;
-- argc--;
-- arg = *argv;
-+ *argv += 1;
-+ *argc -= 1;
-+ arg = **argv;
-
- cipher_suite = parse_cipher_suite(arg);
- if (cipher_suite < 0)
-@@ -471,9 +471,9 @@ int parse_keys(struct nl_msg *msg, char **argv, int argc)
-
- NLA_PUT_U32(msg, NL80211_ATTR_CIPHER_SUITES_PAIRWISE, cipher_suite);
-
-- argv++;
-- argc--;
-- arg = *argv;
-+ *argv += 1;
-+ *argc -= 1;
-+ arg = **argv;
-
- cipher_suite = parse_cipher_suite(arg);
- if (cipher_suite < 0)
-@@ -495,7 +495,7 @@ int parse_keys(struct nl_msg *msg, char **argv, int argc)
- struct nlattr *key = nla_nest_start(msg, ++i);
- char *keydata;
-
-- arg = *argv;
-+ arg = **argv;
- pos = 0;
-
- if (!key)
-@@ -537,15 +537,15 @@ int parse_keys(struct nl_msg *msg, char **argv, int argc)
-
- NLA_PUT(msg, NL80211_KEY_DATA, keylen, keydata);
-
-- argv++;
-- argc--;
-+ *argv += 1;
-+ *argc -= 1;
-
- /* one key should be TX key */
-- if (!have_default && !argc)
-+ if (!have_default && !*argc)
- NLA_PUT_FLAG(msg, NL80211_KEY_DEFAULT);
-
- nla_nest_end(msg, key);
-- } while (argc);
-+ } while (*argc);
-
- nla_nest_end(msg, keys);
-
---
-2.17.1
-
diff --git a/poky/meta/recipes-connectivity/iw/iw/separate-objdir.patch b/poky/meta/recipes-connectivity/iw/iw/separate-objdir.patch
index 0ea6a52..eb01a5a 100644
--- a/poky/meta/recipes-connectivity/iw/iw/separate-objdir.patch
+++ b/poky/meta/recipes-connectivity/iw/iw/separate-objdir.patch
@@ -7,29 +7,36 @@
Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Maxin B. John <maxin.john@intel.com>
---
-diff -Naur iw-4.3-origin/Makefile iw-4.3/Makefile
---- iw-4.3-origin/Makefile 2015-11-20 16:37:58.752077287 +0200
-+++ iw-4.3/Makefile 2015-11-20 16:57:15.510615815 +0200
-@@ -1,5 +1,7 @@
+ Makefile | 8 ++++++--
+ 1 file changed, 6 insertions(+), 2 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index 33aaf6a..9030796 100644
+--- a/Makefile
++++ b/Makefile
+@@ -1,5 +1,9 @@
MAKEFLAGS += --no-print-directory
--
+
+SRCDIR ?= $(dir $(lastword $(MAKEFILE_LIST)))
+OBJDIR ?= $(PWD)
+VPATH = $(SRCDIR)
++
PREFIX ?= /usr
SBINDIR ?= $(PREFIX)/sbin
MANDIR ?= $(PREFIX)/share/man
-@@ -95,11 +97,11 @@
+@@ -103,11 +107,11 @@ VERSION_OBJS := $(filter-out version.o, $(OBJS))
version.c: version.sh $(patsubst %.o,%.c,$(VERSION_OBJS)) nl80211.h iw.h Makefile \
$(wildcard .git/index .git/refs/tags)
@$(NQ) ' GEN ' $@
- $(Q)./version.sh $@
+ $(Q)cd $(SRCDIR) && ./version.sh $(OBJDIR)/$@
-
+
%.o: %.c iw.h nl80211.h
@$(NQ) ' CC ' $@
-- $(Q)$(CC) $(CFLAGS) -c -o $@ $<
-+ $(Q)$(CC) -I$(SRCDIR) $(CFLAGS) -c -o $@ $<
-
+- $(Q)$(CC) $(CFLAGS) $(CPPFLAGS) -c -o $@ $<
++ $(Q)$(CC) -I$(SRCDIR) $(CFLAGS) $(CPPFLAGS) -c -o $@ $<
+
ifeq ($(IW_ANDROID_BUILD),)
iw: $(OBJS)
+--
+2.20.1 (Apple Git-117)
diff --git a/poky/meta/recipes-connectivity/iw/iw_4.14.bb b/poky/meta/recipes-connectivity/iw/iw_4.14.bb
deleted file mode 100644
index f414a4b..0000000
--- a/poky/meta/recipes-connectivity/iw/iw_4.14.bb
+++ /dev/null
@@ -1,34 +0,0 @@
-SUMMARY = "nl80211 based CLI configuration utility for wireless devices"
-DESCRIPTION = "iw is a new nl80211 based CLI configuration utility for \
-wireless devices. It supports almost all new drivers that have been added \
-to the kernel recently. "
-HOMEPAGE = "http://wireless.kernel.org/en/users/Documentation/iw"
-SECTION = "base"
-LICENSE = "BSD"
-LIC_FILES_CHKSUM = "file://COPYING;md5=878618a5c4af25e9b93ef0be1a93f774"
-
-DEPENDS = "libnl"
-
-SRC_URI = "http://www.kernel.org/pub/software/network/iw/${BP}.tar.gz \
- file://0001-iw-version.sh-don-t-use-git-describe-for-versioning.patch \
- file://separate-objdir.patch \
- file://0001-connect-fix-parsing-of-WEP-keys.patch \
-"
-
-SRC_URI[md5sum] = "2067516ca9940fdb8c091ee3250da374"
-SRC_URI[sha256sum] = "a0c3aad6ff52234d03a2522ba2eba570e36abb3e60dc29bf0b1ce88dd725d6d4"
-
-inherit pkgconfig
-
-EXTRA_OEMAKE = "\
- -f '${S}/Makefile' \
- \
- 'PREFIX=${prefix}' \
- 'SBINDIR=${sbindir}' \
- 'MANDIR=${mandir}' \
-"
-B = "${WORKDIR}/build"
-
-do_install() {
- oe_runmake 'DESTDIR=${D}' install
-}
diff --git a/poky/meta/recipes-connectivity/iw/iw_5.0.1.bb b/poky/meta/recipes-connectivity/iw/iw_5.0.1.bb
new file mode 100644
index 0000000..e127963
--- /dev/null
+++ b/poky/meta/recipes-connectivity/iw/iw_5.0.1.bb
@@ -0,0 +1,33 @@
+SUMMARY = "nl80211 based CLI configuration utility for wireless devices"
+DESCRIPTION = "iw is a new nl80211 based CLI configuration utility for \
+wireless devices. It supports almost all new drivers that have been added \
+to the kernel recently. "
+HOMEPAGE = "http://wireless.kernel.org/en/users/Documentation/iw"
+SECTION = "base"
+LICENSE = "BSD"
+LIC_FILES_CHKSUM = "file://COPYING;md5=878618a5c4af25e9b93ef0be1a93f774"
+
+DEPENDS = "libnl"
+
+SRC_URI = "http://www.kernel.org/pub/software/network/iw/${BP}.tar.gz \
+ file://0001-iw-version.sh-don-t-use-git-describe-for-versioning.patch \
+ file://separate-objdir.patch \
+"
+
+SRC_URI[md5sum] = "a0a17ab1b20132c716bba9a4f9974ba6"
+SRC_URI[sha256sum] = "36fc7592dde7bec934df83cd53ef1f2c08ceec5cd58d07eb8f71cc6e8464013c"
+
+inherit pkgconfig
+
+EXTRA_OEMAKE = "\
+ -f '${S}/Makefile' \
+ \
+ 'PREFIX=${prefix}' \
+ 'SBINDIR=${sbindir}' \
+ 'MANDIR=${mandir}' \
+"
+B = "${WORKDIR}/build"
+
+do_install() {
+ oe_runmake 'DESTDIR=${D}' install
+}
diff --git a/poky/meta/recipes-connectivity/openssh/openssh/0001-upstream-Have-progressmeter-force-an-update-at-the-b.patch b/poky/meta/recipes-connectivity/openssh/openssh/0001-upstream-Have-progressmeter-force-an-update-at-the-b.patch
new file mode 100644
index 0000000..4c9d574
--- /dev/null
+++ b/poky/meta/recipes-connectivity/openssh/openssh/0001-upstream-Have-progressmeter-force-an-update-at-the-b.patch
@@ -0,0 +1,121 @@
+From 5df934e2279e8ed1f07b990f4b2b3baf6470f7e5 Mon Sep 17 00:00:00 2001
+From: "dtucker@openbsd.org" <dtucker@openbsd.org>
+Date: Thu, 24 Jan 2019 16:52:17 +0000
+Subject: [PATCH] upstream: Have progressmeter force an update at the beginning
+ and
+
+end of each transfer. Fixes the problem recently introduces where very quick
+transfers do not display the progressmeter at all. Spotted by naddy@
+
+OpenBSD-Commit-ID: 68dc46c259e8fdd4f5db3ec2a130f8e4590a7a9a
+Upstream-Status: Backport
+Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
+---
+ progressmeter.c | 13 +++++--------
+ progressmeter.h | 4 ++--
+ scp.c | 2 +-
+ sftp-client.c | 2 +-
+ 4 files changed, 9 insertions(+), 12 deletions(-)
+
+diff --git a/progressmeter.c b/progressmeter.c
+index add462d..e385c12 100644
+--- a/progressmeter.c
++++ b/progressmeter.c
+@@ -1,4 +1,4 @@
+-/* $OpenBSD: progressmeter.c,v 1.46 2019/01/23 08:01:46 dtucker Exp $ */
++/* $OpenBSD: progressmeter.c,v 1.47 2019/01/24 16:52:17 dtucker Exp $ */
+ /*
+ * Copyright (c) 2003 Nils Nordman. All rights reserved.
+ *
+@@ -59,9 +59,6 @@ static void format_rate(char *, int, off_t);
+ static void sig_winch(int);
+ static void setscreensize(void);
+
+-/* updates the progressmeter to reflect the current state of the transfer */
+-void refresh_progress_meter(void);
+-
+ /* signal handler for updating the progress meter */
+ static void sig_alarm(int);
+
+@@ -120,7 +117,7 @@ format_size(char *buf, int size, off_t bytes)
+ }
+
+ void
+-refresh_progress_meter(void)
++refresh_progress_meter(int force_update)
+ {
+ char buf[MAX_WINSIZE + 1];
+ off_t transferred;
+@@ -131,7 +128,7 @@ refresh_progress_meter(void)
+ int hours, minutes, seconds;
+ int file_len;
+
+- if ((!alarm_fired && !win_resized) || !can_output())
++ if ((!force_update && !alarm_fired && !win_resized) || !can_output())
+ return;
+ alarm_fired = 0;
+
+@@ -254,7 +251,7 @@ start_progress_meter(const char *f, off_t filesize, off_t *ctr)
+ bytes_per_second = 0;
+
+ setscreensize();
+- refresh_progress_meter();
++ refresh_progress_meter(1);
+
+ signal(SIGALRM, sig_alarm);
+ signal(SIGWINCH, sig_winch);
+@@ -271,7 +268,7 @@ stop_progress_meter(void)
+
+ /* Ensure we complete the progress */
+ if (cur_pos != end_pos)
+- refresh_progress_meter();
++ refresh_progress_meter(1);
+
+ atomicio(vwrite, STDOUT_FILENO, "\n", 1);
+ }
+diff --git a/progressmeter.h b/progressmeter.h
+index 8f66780..1703ea7 100644
+--- a/progressmeter.h
++++ b/progressmeter.h
+@@ -1,4 +1,4 @@
+-/* $OpenBSD: progressmeter.h,v 1.4 2019/01/23 08:01:46 dtucker Exp $ */
++/* $OpenBSD: progressmeter.h,v 1.5 2019/01/24 16:52:17 dtucker Exp $ */
+ /*
+ * Copyright (c) 2002 Nils Nordman. All rights reserved.
+ *
+@@ -24,5 +24,5 @@
+ */
+
+ void start_progress_meter(const char *, off_t, off_t *);
+-void refresh_progress_meter(void);
++void refresh_progress_meter(int);
+ void stop_progress_meter(void);
+diff --git a/scp.c b/scp.c
+index 4a342a6..0587cec 100644
+--- a/scp.c
++++ b/scp.c
+@@ -585,7 +585,7 @@ scpio(void *_cnt, size_t s)
+ off_t *cnt = (off_t *)_cnt;
+
+ *cnt += s;
+- refresh_progress_meter();
++ refresh_progress_meter(0);
+ if (limit_kbps > 0)
+ bandwidth_limit(&bwlimit, s);
+ return 0;
+diff --git a/sftp-client.c b/sftp-client.c
+index 2bc698f..cf2887a 100644
+--- a/sftp-client.c
++++ b/sftp-client.c
+@@ -101,7 +101,7 @@ sftpio(void *_bwlimit, size_t amount)
+ {
+ struct bwlimit *bwlimit = (struct bwlimit *)_bwlimit;
+
+- refresh_progress_meter();
++ refresh_progress_meter(0);
+ if (bwlimit != NULL)
+ bandwidth_limit(bwlimit, amount);
+ return 0;
+--
+2.7.4
+
diff --git a/poky/meta/recipes-connectivity/openssh/openssh/CVE-2018-20685.patch b/poky/meta/recipes-connectivity/openssh/openssh/CVE-2018-20685.patch
new file mode 100644
index 0000000..c5b3bae
--- /dev/null
+++ b/poky/meta/recipes-connectivity/openssh/openssh/CVE-2018-20685.patch
@@ -0,0 +1,40 @@
+From 6010c0303a422a9c5fa8860c061bf7105eb7f8b2 Mon Sep 17 00:00:00 2001
+From: "djm@openbsd.org" <djm@openbsd.org>
+Date: Fri, 16 Nov 2018 03:03:10 +0000
+Subject: [PATCH] upstream: disallow empty incoming filename or ones that refer
+ to the
+
+current directory; based on report/patch from Harry Sintonen
+
+OpenBSD-Commit-ID: f27651b30eaee2df49540ab68d030865c04f6de9
+
+CVE: CVE-2018-20685
+Upstream-Status: Backport
+Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
+---
+ scp.c | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/scp.c b/scp.c
+index 60682c6..4f3fdcd 100644
+--- a/scp.c
++++ b/scp.c
+@@ -1,4 +1,4 @@
+-/* $OpenBSD: scp.c,v 1.197 2018/06/01 04:31:48 dtucker Exp $ */
++/* $OpenBSD: scp.c,v 1.198 2018/11/16 03:03:10 djm Exp $ */
+ /*
+ * scp - secure remote copy. This is basically patched BSD rcp which
+ * uses ssh to do the data transfer (instead of using rcmd).
+@@ -1106,7 +1106,8 @@ sink(int argc, char **argv)
+ SCREWUP("size out of range");
+ size = (off_t)ull;
+
+- if ((strchr(cp, '/') != NULL) || (strcmp(cp, "..") == 0)) {
++ if (*cp == '\0' || strchr(cp, '/') != NULL ||
++ strcmp(cp, ".") == 0 || strcmp(cp, "..") == 0) {
+ run_err("error: unexpected filename: %s", cp);
+ exit(1);
+ }
+--
+2.7.4
+
diff --git a/poky/meta/recipes-connectivity/openssh/openssh/CVE-2019-6109.patch b/poky/meta/recipes-connectivity/openssh/openssh/CVE-2019-6109.patch
new file mode 100644
index 0000000..dabe4a6
--- /dev/null
+++ b/poky/meta/recipes-connectivity/openssh/openssh/CVE-2019-6109.patch
@@ -0,0 +1,275 @@
+From 15d47c3bd8551521240bc459fc004c280daef817 Mon Sep 17 00:00:00 2001
+From: "dtucker@openbsd.org" <dtucker@openbsd.org>
+Date: Wed, 23 Jan 2019 08:01:46 +0000
+Subject: [PATCH] upstream: Sanitize scp filenames via snmprintf. To do this we
+ move
+
+the progressmeter formatting outside of signal handler context and have the
+atomicio callback called for EINTR too. bz#2434 with contributions from djm
+and jjelen at redhat.com, ok djm@
+
+OpenBSD-Commit-ID: 1af61c1f70e4f3bd8ab140b9f1fa699481db57d8
+CVE: CVE-2019-6109
+Upstream-Status: Backport
+Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
+---
+ atomicio.c | 20 +++++++++++++++-----
+ progressmeter.c | 53 ++++++++++++++++++++++++-----------------------------
+ progressmeter.h | 3 ++-
+ scp.c | 1 +
+ sftp-client.c | 16 +++++++++-------
+ 5 files changed, 51 insertions(+), 42 deletions(-)
+
+diff --git a/atomicio.c b/atomicio.c
+index f854a06..d91bd76 100644
+--- a/atomicio.c
++++ b/atomicio.c
+@@ -1,4 +1,4 @@
+-/* $OpenBSD: atomicio.c,v 1.28 2016/07/27 23:18:12 djm Exp $ */
++/* $OpenBSD: atomicio.c,v 1.29 2019/01/23 08:01:46 dtucker Exp $ */
+ /*
+ * Copyright (c) 2006 Damien Miller. All rights reserved.
+ * Copyright (c) 2005 Anil Madhavapeddy. All rights reserved.
+@@ -65,9 +65,14 @@ atomicio6(ssize_t (*f) (int, void *, size_t), int fd, void *_s, size_t n,
+ res = (f) (fd, s + pos, n - pos);
+ switch (res) {
+ case -1:
+- if (errno == EINTR)
++ if (errno == EINTR) {
++ /* possible SIGALARM, update callback */
++ if (cb != NULL && cb(cb_arg, 0) == -1) {
++ errno = EINTR;
++ return pos;
++ }
+ continue;
+- if (errno == EAGAIN || errno == EWOULDBLOCK) {
++ } else if (errno == EAGAIN || errno == EWOULDBLOCK) {
+ #ifndef BROKEN_READ_COMPARISON
+ (void)poll(&pfd, 1, -1);
+ #endif
+@@ -122,9 +127,14 @@ atomiciov6(ssize_t (*f) (int, const struct iovec *, int), int fd,
+ res = (f) (fd, iov, iovcnt);
+ switch (res) {
+ case -1:
+- if (errno == EINTR)
++ if (errno == EINTR) {
++ /* possible SIGALARM, update callback */
++ if (cb != NULL && cb(cb_arg, 0) == -1) {
++ errno = EINTR;
++ return pos;
++ }
+ continue;
+- if (errno == EAGAIN || errno == EWOULDBLOCK) {
++ } else if (errno == EAGAIN || errno == EWOULDBLOCK) {
+ #ifndef BROKEN_READV_COMPARISON
+ (void)poll(&pfd, 1, -1);
+ #endif
+diff --git a/progressmeter.c b/progressmeter.c
+index fe9bf52..add462d 100644
+--- a/progressmeter.c
++++ b/progressmeter.c
+@@ -1,4 +1,4 @@
+-/* $OpenBSD: progressmeter.c,v 1.45 2016/06/30 05:17:05 dtucker Exp $ */
++/* $OpenBSD: progressmeter.c,v 1.46 2019/01/23 08:01:46 dtucker Exp $ */
+ /*
+ * Copyright (c) 2003 Nils Nordman. All rights reserved.
+ *
+@@ -31,6 +31,7 @@
+
+ #include <errno.h>
+ #include <signal.h>
++#include <stdarg.h>
+ #include <stdio.h>
+ #include <string.h>
+ #include <time.h>
+@@ -39,6 +40,7 @@
+ #include "progressmeter.h"
+ #include "atomicio.h"
+ #include "misc.h"
++#include "utf8.h"
+
+ #define DEFAULT_WINSIZE 80
+ #define MAX_WINSIZE 512
+@@ -61,7 +63,7 @@ static void setscreensize(void);
+ void refresh_progress_meter(void);
+
+ /* signal handler for updating the progress meter */
+-static void update_progress_meter(int);
++static void sig_alarm(int);
+
+ static double start; /* start progress */
+ static double last_update; /* last progress update */
+@@ -74,6 +76,7 @@ static long stalled; /* how long we have been stalled */
+ static int bytes_per_second; /* current speed in bytes per second */
+ static int win_size; /* terminal window size */
+ static volatile sig_atomic_t win_resized; /* for window resizing */
++static volatile sig_atomic_t alarm_fired;
+
+ /* units for format_size */
+ static const char unit[] = " KMGT";
+@@ -126,9 +129,17 @@ refresh_progress_meter(void)
+ off_t bytes_left;
+ int cur_speed;
+ int hours, minutes, seconds;
+- int i, len;
+ int file_len;
+
++ if ((!alarm_fired && !win_resized) || !can_output())
++ return;
++ alarm_fired = 0;
++
++ if (win_resized) {
++ setscreensize();
++ win_resized = 0;
++ }
++
+ transferred = *counter - (cur_pos ? cur_pos : start_pos);
+ cur_pos = *counter;
+ now = monotime_double();
+@@ -158,16 +169,11 @@ refresh_progress_meter(void)
+
+ /* filename */
+ buf[0] = '\0';
+- file_len = win_size - 35;
++ file_len = win_size - 36;
+ if (file_len > 0) {
+- len = snprintf(buf, file_len + 1, "\r%s", file);
+- if (len < 0)
+- len = 0;
+- if (len >= file_len + 1)
+- len = file_len;
+- for (i = len; i < file_len; i++)
+- buf[i] = ' ';
+- buf[file_len] = '\0';
++ buf[0] = '\r';
++ snmprintf(buf+1, sizeof(buf)-1 , &file_len, "%*s",
++ file_len * -1, file);
+ }
+
+ /* percent of transfer done */
+@@ -228,22 +234,11 @@ refresh_progress_meter(void)
+
+ /*ARGSUSED*/
+ static void
+-update_progress_meter(int ignore)
++sig_alarm(int ignore)
+ {
+- int save_errno;
+-
+- save_errno = errno;
+-
+- if (win_resized) {
+- setscreensize();
+- win_resized = 0;
+- }
+- if (can_output())
+- refresh_progress_meter();
+-
+- signal(SIGALRM, update_progress_meter);
++ signal(SIGALRM, sig_alarm);
++ alarm_fired = 1;
+ alarm(UPDATE_INTERVAL);
+- errno = save_errno;
+ }
+
+ void
+@@ -259,10 +254,9 @@ start_progress_meter(const char *f, off_t filesize, off_t *ctr)
+ bytes_per_second = 0;
+
+ setscreensize();
+- if (can_output())
+- refresh_progress_meter();
++ refresh_progress_meter();
+
+- signal(SIGALRM, update_progress_meter);
++ signal(SIGALRM, sig_alarm);
+ signal(SIGWINCH, sig_winch);
+ alarm(UPDATE_INTERVAL);
+ }
+@@ -286,6 +280,7 @@ stop_progress_meter(void)
+ static void
+ sig_winch(int sig)
+ {
++ signal(SIGWINCH, sig_winch);
+ win_resized = 1;
+ }
+
+diff --git a/progressmeter.h b/progressmeter.h
+index bf179dc..8f66780 100644
+--- a/progressmeter.h
++++ b/progressmeter.h
+@@ -1,4 +1,4 @@
+-/* $OpenBSD: progressmeter.h,v 1.3 2015/01/14 13:54:13 djm Exp $ */
++/* $OpenBSD: progressmeter.h,v 1.4 2019/01/23 08:01:46 dtucker Exp $ */
+ /*
+ * Copyright (c) 2002 Nils Nordman. All rights reserved.
+ *
+@@ -24,4 +24,5 @@
+ */
+
+ void start_progress_meter(const char *, off_t, off_t *);
++void refresh_progress_meter(void);
+ void stop_progress_meter(void);
+diff --git a/scp.c b/scp.c
+index 4f3fdcd..4a342a6 100644
+--- a/scp.c
++++ b/scp.c
+@@ -585,6 +585,7 @@ scpio(void *_cnt, size_t s)
+ off_t *cnt = (off_t *)_cnt;
+
+ *cnt += s;
++ refresh_progress_meter();
+ if (limit_kbps > 0)
+ bandwidth_limit(&bwlimit, s);
+ return 0;
+diff --git a/sftp-client.c b/sftp-client.c
+index 4986d6d..2bc698f 100644
+--- a/sftp-client.c
++++ b/sftp-client.c
+@@ -101,7 +101,9 @@ sftpio(void *_bwlimit, size_t amount)
+ {
+ struct bwlimit *bwlimit = (struct bwlimit *)_bwlimit;
+
+- bandwidth_limit(bwlimit, amount);
++ refresh_progress_meter();
++ if (bwlimit != NULL)
++ bandwidth_limit(bwlimit, amount);
+ return 0;
+ }
+
+@@ -121,8 +123,8 @@ send_msg(struct sftp_conn *conn, struct sshbuf *m)
+ iov[1].iov_base = (u_char *)sshbuf_ptr(m);
+ iov[1].iov_len = sshbuf_len(m);
+
+- if (atomiciov6(writev, conn->fd_out, iov, 2,
+- conn->limit_kbps > 0 ? sftpio : NULL, &conn->bwlimit_out) !=
++ if (atomiciov6(writev, conn->fd_out, iov, 2, sftpio,
++ conn->limit_kbps > 0 ? &conn->bwlimit_out : NULL) !=
+ sshbuf_len(m) + sizeof(mlen))
+ fatal("Couldn't send packet: %s", strerror(errno));
+
+@@ -138,8 +140,8 @@ get_msg_extended(struct sftp_conn *conn, struct sshbuf *m, int initial)
+
+ if ((r = sshbuf_reserve(m, 4, &p)) != 0)
+ fatal("%s: buffer error: %s", __func__, ssh_err(r));
+- if (atomicio6(read, conn->fd_in, p, 4,
+- conn->limit_kbps > 0 ? sftpio : NULL, &conn->bwlimit_in) != 4) {
++ if (atomicio6(read, conn->fd_in, p, 4, sftpio,
++ conn->limit_kbps > 0 ? &conn->bwlimit_in : NULL) != 4) {
+ if (errno == EPIPE || errno == ECONNRESET)
+ fatal("Connection closed");
+ else
+@@ -157,8 +159,8 @@ get_msg_extended(struct sftp_conn *conn, struct sshbuf *m, int initial)
+
+ if ((r = sshbuf_reserve(m, msg_len, &p)) != 0)
+ fatal("%s: buffer error: %s", __func__, ssh_err(r));
+- if (atomicio6(read, conn->fd_in, p, msg_len,
+- conn->limit_kbps > 0 ? sftpio : NULL, &conn->bwlimit_in)
++ if (atomicio6(read, conn->fd_in, p, msg_len, sftpio,
++ conn->limit_kbps > 0 ? &conn->bwlimit_in : NULL)
+ != msg_len) {
+ if (errno == EPIPE)
+ fatal("Connection closed");
+--
+2.7.4
+
diff --git a/poky/meta/recipes-connectivity/openssh/openssh/CVE-2019-6111.patch b/poky/meta/recipes-connectivity/openssh/openssh/CVE-2019-6111.patch
new file mode 100644
index 0000000..e498da3
--- /dev/null
+++ b/poky/meta/recipes-connectivity/openssh/openssh/CVE-2019-6111.patch
@@ -0,0 +1,187 @@
+From 15cc3497367d2e9729353b3df75518548e845c82 Mon Sep 17 00:00:00 2001
+From: "djm@openbsd.org" <djm@openbsd.org>
+Date: Sat, 26 Jan 2019 22:41:28 +0000
+Subject: [PATCH] upstream: check in scp client that filenames sent during
+
+remote->local directory copies satisfy the wildcard specified by the user.
+
+This checking provides some protection against a malicious server
+sending unexpected filenames, but it comes at a risk of rejecting wanted
+files due to differences between client and server wildcard expansion rules.
+
+For this reason, this also adds a new -T flag to disable the check.
+
+reported by Harry Sintonen
+fix approach suggested by markus@;
+has been in snaps for ~1wk courtesy deraadt@
+
+OpenBSD-Commit-ID: 00f44b50d2be8e321973f3c6d014260f8f7a8eda
+
+CVE: CVE-2019-6111
+Upstream-Status: Backport
+Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
+---
+ scp.1 | 12 +++++++++++-
+ scp.c | 37 +++++++++++++++++++++++++++++--------
+ 2 files changed, 40 insertions(+), 9 deletions(-)
+
+diff --git a/scp.1 b/scp.1
+index 0e5cc1b..397e770 100644
+--- a/scp.1
++++ b/scp.1
+@@ -18,7 +18,7 @@
+ .Nd secure copy (remote file copy program)
+ .Sh SYNOPSIS
+ .Nm scp
+-.Op Fl 346BCpqrv
++.Op Fl 346BCpqrTv
+ .Op Fl c Ar cipher
+ .Op Fl F Ar ssh_config
+ .Op Fl i Ar identity_file
+@@ -208,6 +208,16 @@ to use for the encrypted connection.
+ The program must understand
+ .Xr ssh 1
+ options.
++.It Fl T
++Disable strict filename checking.
++By default when copying files from a remote host to a local directory
++.Nm
++checks that the received filenames match those requested on the command-line
++to prevent the remote end from sending unexpected or unwanted files.
++Because of differences in how various operating systems and shells interpret
++filename wildcards, these checks may cause wanted files to be rejected.
++This option disables these checks at the expense of fully trusting that
++the server will not send unexpected filenames.
+ .It Fl v
+ Verbose mode.
+ Causes
+diff --git a/scp.c b/scp.c
+index 0587cec..b2d331e 100644
+--- a/scp.c
++++ b/scp.c
+@@ -94,6 +94,7 @@
+ #include <dirent.h>
+ #include <errno.h>
+ #include <fcntl.h>
++#include <fnmatch.h>
+ #include <limits.h>
+ #include <locale.h>
+ #include <pwd.h>
+@@ -375,14 +376,14 @@ void verifydir(char *);
+ struct passwd *pwd;
+ uid_t userid;
+ int errs, remin, remout;
+-int pflag, iamremote, iamrecursive, targetshouldbedirectory;
++int Tflag, pflag, iamremote, iamrecursive, targetshouldbedirectory;
+
+ #define CMDNEEDS 64
+ char cmd[CMDNEEDS]; /* must hold "rcp -r -p -d\0" */
+
+ int response(void);
+ void rsource(char *, struct stat *);
+-void sink(int, char *[]);
++void sink(int, char *[], const char *);
+ void source(int, char *[]);
+ void tolocal(int, char *[]);
+ void toremote(int, char *[]);
+@@ -421,8 +422,9 @@ main(int argc, char **argv)
+ addargs(&args, "-oRemoteCommand=none");
+ addargs(&args, "-oRequestTTY=no");
+
+- fflag = tflag = 0;
+- while ((ch = getopt(argc, argv, "dfl:prtvBCc:i:P:q12346S:o:F:")) != -1)
++ fflag = Tflag = tflag = 0;
++ while ((ch = getopt(argc, argv,
++ "dfl:prtTvBCc:i:P:q12346S:o:F:")) != -1) {
+ switch (ch) {
+ /* User-visible flags. */
+ case '1':
+@@ -501,9 +503,13 @@ main(int argc, char **argv)
+ setmode(0, O_BINARY);
+ #endif
+ break;
++ case 'T':
++ Tflag = 1;
++ break;
+ default:
+ usage();
+ }
++ }
+ argc -= optind;
+ argv += optind;
+
+@@ -534,7 +540,7 @@ main(int argc, char **argv)
+ }
+ if (tflag) {
+ /* Receive data. */
+- sink(argc, argv);
++ sink(argc, argv, NULL);
+ exit(errs != 0);
+ }
+ if (argc < 2)
+@@ -792,7 +798,7 @@ tolocal(int argc, char **argv)
+ continue;
+ }
+ free(bp);
+- sink(1, argv + argc - 1);
++ sink(1, argv + argc - 1, src);
+ (void) close(remin);
+ remin = remout = -1;
+ }
+@@ -968,7 +974,7 @@ rsource(char *name, struct stat *statp)
+ (sizeof(type) != 4 && sizeof(type) != 8))
+
+ void
+-sink(int argc, char **argv)
++sink(int argc, char **argv, const char *src)
+ {
+ static BUF buffer;
+ struct stat stb;
+@@ -984,6 +990,7 @@ sink(int argc, char **argv)
+ unsigned long long ull;
+ int setimes, targisdir, wrerrno = 0;
+ char ch, *cp, *np, *targ, *why, *vect[1], buf[2048], visbuf[2048];
++ char *src_copy = NULL, *restrict_pattern = NULL;
+ struct timeval tv[2];
+
+ #define atime tv[0]
+@@ -1008,6 +1015,17 @@ sink(int argc, char **argv)
+ (void) atomicio(vwrite, remout, "", 1);
+ if (stat(targ, &stb) == 0 && S_ISDIR(stb.st_mode))
+ targisdir = 1;
++ if (src != NULL && !iamrecursive && !Tflag) {
++ /*
++ * Prepare to try to restrict incoming filenames to match
++ * the requested destination file glob.
++ */
++ if ((src_copy = strdup(src)) == NULL)
++ fatal("strdup failed");
++ if ((restrict_pattern = strrchr(src_copy, '/')) != NULL) {
++ *restrict_pattern++ = '\0';
++ }
++ }
+ for (first = 1;; first = 0) {
+ cp = buf;
+ if (atomicio(read, remin, cp, 1) != 1)
+@@ -1112,6 +1130,9 @@ sink(int argc, char **argv)
+ run_err("error: unexpected filename: %s", cp);
+ exit(1);
+ }
++ if (restrict_pattern != NULL &&
++ fnmatch(restrict_pattern, cp, 0) != 0)
++ SCREWUP("filename does not match request");
+ if (targisdir) {
+ static char *namebuf;
+ static size_t cursize;
+@@ -1149,7 +1170,7 @@ sink(int argc, char **argv)
+ goto bad;
+ }
+ vect[0] = xstrdup(np);
+- sink(1, vect);
++ sink(1, vect, src);
+ if (setimes) {
+ setimes = 0;
+ if (utimes(vect[0], tv) < 0)
+--
+2.7.4
+
diff --git a/poky/meta/recipes-connectivity/openssh/openssh_7.9p1.bb b/poky/meta/recipes-connectivity/openssh/openssh_7.9p1.bb
index 6260135..3b4ed72 100644
--- a/poky/meta/recipes-connectivity/openssh/openssh_7.9p1.bb
+++ b/poky/meta/recipes-connectivity/openssh/openssh_7.9p1.bb
@@ -24,6 +24,10 @@
file://fix-potential-signed-overflow-in-pointer-arithmatic.patch \
file://sshd_check_keys \
file://add-test-support-for-busybox.patch \
+ file://CVE-2018-20685.patch \
+ file://CVE-2019-6109.patch \
+ file://0001-upstream-Have-progressmeter-force-an-update-at-the-b.patch \
+ file://CVE-2019-6111.patch \
"
SRC_URI[md5sum] = "c6af50b7a474d04726a5aa747a5dce8f"
SRC_URI[sha256sum] = "6b4b3ba2253d84ed3771c8050728d597c91cfce898713beb7b64a305b6f11aad"
@@ -144,6 +148,7 @@
RDEPENDS_${PN} += "${PN}-scp ${PN}-ssh ${PN}-sshd ${PN}-keygen"
RDEPENDS_${PN}-sshd += "${PN}-keygen ${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'pam-plugin-keyinit pam-plugin-loginuid', '', d)}"
+RRECOMMENDS_${PN}-sshd_append_class-target = " rng-tools"
RDEPENDS_${PN}-ptest += "${PN}-sftp ${PN}-misc ${PN}-sftp-server make sed"
RPROVIDES_${PN}-ssh = "ssh"
diff --git a/poky/meta/recipes-connectivity/openssl/openssl10/0001-Fix-BN_LLONG-breakage.patch b/poky/meta/recipes-connectivity/openssl/openssl10/0001-Fix-BN_LLONG-breakage.patch
deleted file mode 100644
index 13d39c9..0000000
--- a/poky/meta/recipes-connectivity/openssl/openssl10/0001-Fix-BN_LLONG-breakage.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From 247b3188cde5f3347091cd54271127386d3aece0 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Wed, 6 Feb 2019 22:10:33 -0800
-Subject: [PATCH] Fix BN_LLONG breakage
-
-opensslconf.h is un-defining BN_LLONG only when included from bn.h which
-is not robust at all, especially when include guards are used and
-multiple inclusions of a given header is not allowed. so lets take out
-the nesting constraint and add OPENSSL_SYS_UEFI constraint instead
-
-Upstream-Status: Inappropriate [ fixed differently with OpenSSL 1.1+ ]
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- crypto/opensslconf.h.in | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/crypto/opensslconf.h.in b/crypto/opensslconf.h.in
-index 7a1c85d..a10c10f 100644
---- a/crypto/opensslconf.h.in
-+++ b/crypto/opensslconf.h.in
-@@ -56,7 +56,7 @@
- #endif
- #endif
-
--#if defined(HEADER_BN_H) && !defined(CONFIG_HEADER_BN_H)
-+#if !defined(OPENSSL_SYS_UEFI) && !defined(CONFIG_HEADER_BN_H)
- #define CONFIG_HEADER_BN_H
- #undef BN_LLONG
-
---
-2.20.1
-
diff --git a/poky/meta/recipes-connectivity/openssl/openssl10/0001-Fix-DES_LONG-breakage.patch b/poky/meta/recipes-connectivity/openssl/openssl10/0001-Fix-DES_LONG-breakage.patch
deleted file mode 100644
index 7243fb4..0000000
--- a/poky/meta/recipes-connectivity/openssl/openssl10/0001-Fix-DES_LONG-breakage.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From 1aec49cc45e7cf5ebc059a77081ac3ea2a5aff7b Mon Sep 17 00:00:00 2001
-From: Denys Dmytriyenko <denys@ti.com>
-Date: Fri, 1 Mar 2019 13:14:56 -0500
-Subject: [PATCH] Fix DES_LONG breakage
-
-Mimic previous BN_LLONG fix by Khem Raj here. Re-use its description:
-
-opensslconf.h is defining DES_LONG only when included from des.h which
-is not robust at all, especially when include guards are used and
-multiple inclusions of a given header is not allowed. so lets take out
-the nesting constraint and add OPENSSL_SYS_UEFI constraint instead
-
-Upstream-Status: Inappropriate [ fixed differently with OpenSSL 1.1+ ]
-
-Signed-off-by: Denys Dmytriyenko <denys@ti.com>
----
- crypto/opensslconf.h.in | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/crypto/opensslconf.h.in b/crypto/opensslconf.h.in
-index a10c10f..0147a4d 100644
---- a/crypto/opensslconf.h.in
-+++ b/crypto/opensslconf.h.in
-@@ -48,7 +48,7 @@
- #endif
- #endif
-
--#if (defined(HEADER_NEW_DES_H) || defined(HEADER_DES_H)) && !defined(DES_LONG)
-+#if !defined(OPENSSL_SYS_UEFI) && !defined(DES_LONG)
- /* If this is set to 'unsigned int' on a DEC Alpha, this gives about a
- * %20 speed up (longs are 8 bytes, int's are 4). */
- #ifndef DES_LONG
---
-2.7.4
-
diff --git a/poky/meta/recipes-connectivity/openssl/openssl10/0001-Fix-build-with-clang-using-external-assembler.patch b/poky/meta/recipes-connectivity/openssl/openssl10/0001-Fix-build-with-clang-using-external-assembler.patch
deleted file mode 100644
index 2270962..0000000
--- a/poky/meta/recipes-connectivity/openssl/openssl10/0001-Fix-build-with-clang-using-external-assembler.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-From 2f6026cb8b16cf00726e3c5625c023f196680f07 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Fri, 17 Mar 2017 12:52:08 -0700
-Subject: [PATCH] Fix build with clang using external assembler
-
-Cherry-picked from
-https://github.com/openssl/openssl/commit/11208dcfb9105e8afa37233185decefd45e89e17
-https://github.com/openssl/openssl/commit/fbab8baddef8d3346ae40ff068871e2ddaf10270
-https://github.com/openssl/openssl/commit/6cf412c473d8145562b76219ce3da73b201b3255
-
-Fixes
-
-| ghash-armv4.S: Assembler messages:
-| ghash-armv4.S:81: Error: bad instruction `ldrbpl r12,[r2,r3]'
-| ghash-armv4.S:91: Error: bad instruction `ldrbpl r8,[r0,r3]'
-| ghash-armv4.S:137: Error: bad instruction `ldrbne r12,[r2,#15]'
-| ghash-armv4.S:224: Error: bad instruction `ldrbpl r12,[r0,r3]'
-| clang-4.0: error: assembler command failed with exit code 1 (use -v to see invocation)
-| make[2]: *** [<builtin>: ghash-armv4.o] Error 1
-
-Upstream-Status: Backport
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- crypto/modes/asm/ghash-armv4.pl | 7 +++++++
- 1 file changed, 7 insertions(+)
-
-diff --git a/crypto/modes/asm/ghash-armv4.pl b/crypto/modes/asm/ghash-armv4.pl
-index 8ccc963ef..442fed4da 100644
---- a/crypto/modes/asm/ghash-armv4.pl
-+++ b/crypto/modes/asm/ghash-armv4.pl
-@@ -124,7 +124,10 @@ $code=<<___;
- #include "arm_arch.h"
-
- .text
-+#if defined(__thumb2__) || defined(__clang__)
-+.syntax unified
-+#endif
- .code 32
-
- #ifdef __clang__
- #define ldrplb ldrbpl
---
-2.12.0
-
diff --git a/poky/meta/recipes-connectivity/openssl/openssl10/0001-allow-manpages-to-be-disabled.patch b/poky/meta/recipes-connectivity/openssl/openssl10/0001-allow-manpages-to-be-disabled.patch
deleted file mode 100644
index 3f7d649..0000000
--- a/poky/meta/recipes-connectivity/openssl/openssl10/0001-allow-manpages-to-be-disabled.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From e1c39b80b01d4d18feeadfdc6e45a3e1dd110634 Mon Sep 17 00:00:00 2001
-From: Andre McCurdy <armccurdy@gmail.com>
-Date: Fri, 27 Jul 2018 21:41:06 +0000
-Subject: [PATCH] allow manpages to be disabled
-
-Define OE_DISABLE_MANPAGES (via environment or the make command line)
-to skip creation and installation of manpages.
-
-Upstream-Status: Inappropriate [configuration]
-
-Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
----
- Makefile.org | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/Makefile.org b/Makefile.org
-index ed98d2a..747d8cb 100644
---- a/Makefile.org
-+++ b/Makefile.org
-@@ -549,7 +549,7 @@ dist:
- @$(MAKE) SDIRS='$(SDIRS)' clean
- @$(MAKE) TAR='$(TAR)' TARFLAGS='$(TARFLAGS)' $(DISTTARVARS) tar
-
--install: all install_docs install_sw
-+install: all $(if $(OE_DISABLE_MANPAGES),,install_docs) install_sw
-
- install_sw:
- @$(PERL) $(TOP)/util/mkdir-p.pl $(INSTALL_PREFIX)$(INSTALLTOP)/bin \
---
-1.9.1
-
diff --git a/poky/meta/recipes-connectivity/openssl/openssl10/0001-openssl-force-soft-link-to-avoid-rare-race.patch b/poky/meta/recipes-connectivity/openssl/openssl10/0001-openssl-force-soft-link-to-avoid-rare-race.patch
deleted file mode 100644
index dd1a9b1..0000000
--- a/poky/meta/recipes-connectivity/openssl/openssl10/0001-openssl-force-soft-link-to-avoid-rare-race.patch
+++ /dev/null
@@ -1,46 +0,0 @@
-From 3d9199423d48766649a2b2ebb3924e892ed16fa4 Mon Sep 17 00:00:00 2001
-From: Randy MacLeod <Randy.MacLeod@windriver.com>
-Date: Tue, 20 Jun 2017 15:32:08 -0400
-Subject: [PATCH] openssl: Force soft link to avoid rare race
-
-This patch works around a rare parallel build race condition.
-The error seen is:
-
-ln: failed to create symbolic link 'libssl.so': File exists
-make[4]: *** [Makefile.shared:171: link_a.gnu] Error 1
-make[4]: Leaving directory
-'/.../build/tmp-glibc/work/x86_64-linux/openssl-native/1.0.2k-r0/openssl-1.0.2k'
-
-The openssl team is rewriting their build files so it's not
-appropriate for openssl upstream and fixing the root cause of
-the Makefile race condition was also not pursued.
-
-Upstream-Status: Inappropriate [build rules rewrite in progress]
-Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com>
----
- Makefile.shared | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/Makefile.shared b/Makefile.shared
-index e8d222a..1bff92f 100644
---- a/Makefile.shared
-+++ b/Makefile.shared
-@@ -118,14 +118,14 @@
- if [ -n "$$SHLIB_COMPAT" ]; then \
- for x in $$SHLIB_COMPAT; do \
- ( $(SET_X); rm -f $$SHLIB$$x$$SHLIB_SUFFIX; \
-- ln -s $$prev $$SHLIB$$x$$SHLIB_SUFFIX ); \
-+ ln -sf $$prev $$SHLIB$$x$$SHLIB_SUFFIX ); \
- prev=$$SHLIB$$x$$SHLIB_SUFFIX; \
- done; \
- fi; \
- if [ -n "$$SHLIB_SOVER" ]; then \
- [ -e "$$SHLIB$$SHLIB_SUFFIX" ] || \
- ( $(SET_X); rm -f $$SHLIB$$SHLIB_SUFFIX; \
-- ln -s $$prev $$SHLIB$$SHLIB_SUFFIX ); \
-+ ln -sf $$prev $$SHLIB$$SHLIB_SUFFIX ); \
- fi; \
- fi
-
---
-2.9.3
diff --git a/poky/meta/recipes-connectivity/openssl/openssl10/Makefiles-ptest.patch b/poky/meta/recipes-connectivity/openssl/openssl10/Makefiles-ptest.patch
deleted file mode 100644
index 1b8402a..0000000
--- a/poky/meta/recipes-connectivity/openssl/openssl10/Makefiles-ptest.patch
+++ /dev/null
@@ -1,89 +0,0 @@
-From a176c69f4fdfbfa7e4ccb79d91c3b6602da7e69a Mon Sep 17 00:00:00 2001
-From: Anders Roxell <anders.roxell@enea.com>
-Date: Thu, 24 Apr 2014 19:28:25 +0200
-Subject: [PATCH 19/28] openssl: enable ptest support
-
-Add 'buildtest' and 'runtest' targets to Makefile, to build and run tests
-cross-compiled.
-
-Signed-off-by: Anders Roxell <anders.roxell@enea.com>
-Signed-off-by: Maxin B. John <maxin.john@enea.com>
-Upstream-Status: Pending
-
----
- Makefile.org | 10 +++++++++-
- test/Makefile | 13 +++++++++----
- 2 files changed, 18 insertions(+), 5 deletions(-)
-
-diff --git a/Makefile.org b/Makefile.org
-index 111fbba..8e7936c 100644
---- a/Makefile.org
-+++ b/Makefile.org
-@@ -467,8 +467,16 @@ rehash.time: certs apps
- test: tests
-
- tests: rehash
-+ $(MAKE) buildtest
-+ $(MAKE) runtest
-+
-+buildtest:
-+ @(cd test && \
-+ $(CLEARENV) && $(MAKE) -e $(BUILDENV) TOP=.. TESTS='$(TESTS)' OPENSSL_DEBUG_MEMORY=on OPENSSL_CONF=../apps/openssl.cnf exe apps);
-+
-+runtest:
- @(cd test && echo "testing..." && \
-- $(CLEARENV) && $(MAKE) -e $(BUILDENV) TOP=.. TESTS='$(TESTS)' OPENSSL_DEBUG_MEMORY=on OPENSSL_CONF=../apps/openssl.cnf tests );
-+ $(CLEARENV) && $(MAKE) -e $(BUILDENV) TOP=.. TESTS='$(TESTS)' OPENSSL_DEBUG_MEMORY=on OPENSSL_CONF=../apps/openssl.cnf alltests );
- OPENSSL_CONF=apps/openssl.cnf util/opensslwrap.sh version -a
-
- report:
-diff --git a/test/Makefile b/test/Makefile
-index 55a6b50..d46b4d1 100644
---- a/test/Makefile
-+++ b/test/Makefile
-@@ -150,7 +150,7 @@ tests: exe apps $(TESTS)
- apps:
- @(cd ..; $(MAKE) DIRS=apps all)
-
--alltests: \
-+all-tests= \
- test_des test_idea test_sha test_md4 test_md5 test_hmac \
- test_md2 test_mdc2 test_wp \
- test_rmd test_rc2 test_rc4 test_rc5 test_bf test_cast test_aes \
-@@ -162,6 +162,11 @@ alltests: \
- test_constant_time test_verify_extra test_clienthello test_sslv2conftest \
- test_dtls test_bad_dtls test_fatalerr test_x509_time
-
-+alltests:
-+ @(for i in $(all-tests); do \
-+ ( $(MAKE) $$i && echo "PASS: $$i" ) || echo "FAIL: $$i"; \
-+ done)
-+
- test_evp: $(EVPTEST)$(EXE_EXT) evptests.txt
- ../util/shlib_wrap.sh ./$(EVPTEST) evptests.txt
-
-@@ -230,7 +235,7 @@ test_x509: ../apps/openssl$(EXE_EXT) tx509 testx509.pem v3-cert1.pem v3-cert2.pe
- echo test second x509v3 certificate
- sh ./tx509 v3-cert2.pem 2>/dev/null
-
--test_rsa: $(RSATEST)$(EXE_EXT) ../apps/openssl$(EXE_EXT) trsa testrsa.pem
-+test_rsa: ../apps/openssl$(EXE_EXT) trsa testrsa.pem
- @sh ./trsa 2>/dev/null
- ../util/shlib_wrap.sh ./$(RSATEST)
-
-@@ -331,11 +336,11 @@ test_tsa: ../apps/openssl$(EXE_EXT) testtsa CAtsa.cnf ../util/shlib_wrap.sh
- sh ./testtsa; \
- fi
-
--test_ige: $(IGETEST)$(EXE_EXT)
-+test_ige:
- @echo "Test IGE mode"
- ../util/shlib_wrap.sh ./$(IGETEST)
-
--test_jpake: $(JPAKETEST)$(EXE_EXT)
-+test_jpake:
- @echo "Test JPAKE"
- ../util/shlib_wrap.sh ./$(JPAKETEST)
-
---
-2.15.1
diff --git a/poky/meta/recipes-connectivity/openssl/openssl10/Use-SHA256-not-MD5-as-default-digest.patch b/poky/meta/recipes-connectivity/openssl/openssl10/Use-SHA256-not-MD5-as-default-digest.patch
deleted file mode 100644
index 58c9ee7..0000000
--- a/poky/meta/recipes-connectivity/openssl/openssl10/Use-SHA256-not-MD5-as-default-digest.patch
+++ /dev/null
@@ -1,69 +0,0 @@
-From d795f5f20a29adecf92c09459a3ee07ffac01a99 Mon Sep 17 00:00:00 2001
-From: Rich Salz <rsalz@akamai.com>
-Date: Sat, 13 Jun 2015 17:03:39 -0400
-Subject: [PATCH] Use SHA256 not MD5 as default digest.
-
-Commit f8547f62c212837dbf44fb7e2755e5774a59a57b upstream.
-
-Upstream-Status: Backport
-Backport from OpenSSL 2.0 to OpenSSL 1.0.2
-Commit f8547f62c212837dbf44fb7e2755e5774a59a57b
-
-CVE: CVE-2004-2761
-
- The MD5 Message-Digest Algorithm is not collision resistant,
- which makes it easier for context-dependent attackers to
- conduct spoofing attacks, as demonstrated by attacks on the
- use of MD5 in the signature algorithm of an X.509 certificate.
-
-Reviewed-by: Viktor Dukhovni <viktor@openssl.org>
-Signed-off-by: Zhang Xiao <xiao.zhang@windriver.com>
-Signed-off-by: T.O. Radzy Radzykewycz <radzy@windriver.com>
----
- apps/ca.c | 2 +-
- apps/dgst.c | 2 +-
- apps/enc.c | 2 +-
- 3 files changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/apps/ca.c b/apps/ca.c
-index 3b7336c..8f3a84b 100644
---- a/apps/ca.c
-+++ b/apps/ca.c
-@@ -1612,7 +1612,7 @@ static int certify_cert(X509 **xret, char *infile, EVP_PKEY *pkey, X509 *x509,
- } else
- BIO_printf(bio_err, "Signature ok\n");
-
-- if ((rreq = X509_to_X509_REQ(req, NULL, EVP_md5())) == NULL)
-+ if ((rreq = X509_to_X509_REQ(req, NULL, NULL)) == NULL)
- goto err;
-
- ok = do_body(xret, pkey, x509, dgst, sigopts, policy, db, serial, subj,
-diff --git a/apps/dgst.c b/apps/dgst.c
-index 95e5fa3..0d1529f 100644
---- a/apps/dgst.c
-+++ b/apps/dgst.c
-@@ -442,7 +442,7 @@ int MAIN(int argc, char **argv)
- goto end;
- }
- if (md == NULL)
-- md = EVP_md5();
-+ md = EVP_sha256();
- if (!EVP_DigestInit_ex(mctx, md, impl)) {
- BIO_printf(bio_err, "Error setting digest %s\n", pname);
- ERR_print_errors(bio_err);
-diff --git a/apps/enc.c b/apps/enc.c
-index 7b7c70b..a7d944c 100644
---- a/apps/enc.c
-+++ b/apps/enc.c
-@@ -344,7 +344,7 @@ int MAIN(int argc, char **argv)
- }
-
- if (dgst == NULL) {
-- dgst = EVP_md5();
-+ dgst = EVP_sha256();
- }
-
- if (bufsize != NULL) {
---
-1.9.1
-
diff --git a/poky/meta/recipes-connectivity/openssl/openssl10/configure-musl-target.patch b/poky/meta/recipes-connectivity/openssl/openssl10/configure-musl-target.patch
deleted file mode 100644
index f357b3f..0000000
--- a/poky/meta/recipes-connectivity/openssl/openssl10/configure-musl-target.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-Add musl triplet support
-
-Upstream-Status: Pending
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-
-Index: openssl-1.0.2a/Configure
-===================================================================
---- openssl-1.0.2a.orig/Configure
-+++ openssl-1.0.2a/Configure
-@@ -431,7 +431,7 @@ my %table=(
- #
- # ./Configure linux-armv4 -march=armv6 -D__ARM_MAX_ARCH__=8
- #
--"linux-armv4", "gcc: -O3 -Wall::-D_REENTRANT::-ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_INT DES_UNROLL BF_PTR:${armv4_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
-+"linux-armv4", "gcc: -O3 -Wall::-D_REENTRANT::-ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_INT DES_UNROLL BF_PTR:${armv4_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
- "linux-aarch64","gcc: -O3 -Wall::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_INT DES_UNROLL BF_PTR:${aarch64_asm}:linux64:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
- # Configure script adds minimally required -march for assembly support,
- # if no -march was specified at command line. mips32 and mips64 below
-@@ -504,4 +504,6 @@ my %table=(
- "linux-gnueabi-armeb","$ENV{'CC'}:-DB_ENDIAN -O3 -fomit-frame-pointer -Wall::-D_REENTRANT::-ldl:BN_LLONG DES_RISC1:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
-+"linux-musleabi-arm","$ENV{'CC'}:-DL_ENDIAN -O3 -fomit-frame-pointer -Wall::-D_REENTRANT::-ldl:BN_LLONG DES_RISC1:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
-+"linux-musleabi-armeb","$ENV{'CC'}:-DB_ENDIAN -O3 -fomit-frame-pointer -Wall::-D_REENTRANT::-ldl:BN_LLONG DES_RISC1:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
-
- "linux-avr32","$ENV{'CC'}:-O3 -fomit-frame-pointer -Wall::-D_REENTRANT::-ldl:BN_LLONG DES_RISC1:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).",
-
diff --git a/poky/meta/recipes-connectivity/openssl/openssl10/configure-targets.patch b/poky/meta/recipes-connectivity/openssl/openssl10/configure-targets.patch
deleted file mode 100644
index 1e01589..0000000
--- a/poky/meta/recipes-connectivity/openssl/openssl10/configure-targets.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-Upstream-Status: Inappropriate [embedded specific]
-
-The number of colons are important :)
-
-
----
- Configure | 16 ++++++++++++++++
- 1 file changed, 16 insertions(+)
-
-Index: openssl-1.0.2a/Configure
-===================================================================
---- openssl-1.0.2a.orig/Configure
-+++ openssl-1.0.2a/Configure
-@@ -443,6 +443,21 @@ my %table=(
- "linux-alpha-ccc","ccc:-fast -readonly_strings -DL_ENDIAN::-D_REENTRANT:::SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_INT DES_PTR DES_RISC1 DES_UNROLL:${alpha_asm}",
- "linux-alpha+bwx-ccc","ccc:-fast -readonly_strings -DL_ENDIAN::-D_REENTRANT:::SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_INT DES_PTR DES_RISC1 DES_UNROLL:${alpha_asm}",
-
-+
-+# Linux on ARM
-+"linux-elf-arm","$ENV{'CC'}:-DL_ENDIAN -O3 -fomit-frame-pointer -Wall::-D_REENTRANT::-ldl:BN_LLONG DES_RISC1:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
-+"linux-elf-armeb","$ENV{'CC'}:-DB_ENDIAN -O3 -fomit-frame-pointer -Wall::-D_REENTRANT::-ldl:BN_LLONG DES_RISC1:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
-+"linux-gnueabi-arm","$ENV{'CC'}:-DL_ENDIAN -O3 -fomit-frame-pointer -Wall::-D_REENTRANT::-ldl:BN_LLONG DES_RISC1:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
-+"linux-gnueabi-armeb","$ENV{'CC'}:-DB_ENDIAN -O3 -fomit-frame-pointer -Wall::-D_REENTRANT::-ldl:BN_LLONG DES_RISC1:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
-+
-+"linux-avr32","$ENV{'CC'}:-O3 -fomit-frame-pointer -Wall::-D_REENTRANT::-ldl:BN_LLONG DES_RISC1:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).",
-+
-+#### Linux on MIPS/MIPS64
-+"linux-mips","$ENV{'CC'}:-DB_ENDIAN -O3 -fomit-frame-pointer -Wall::-D_REENTRANT::-ldl:BN_LLONG RC2_CHAR RC4_INDEX DES_INT DES_UNROLL DES_RISC2:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
-+"linux-mips64","$ENV{'CC'}:-DB_ENDIAN -mabi=64 -O3 -fomit-frame-pointer -Wall::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC2_CHAR RC4_INDEX DES_INT DES_UNROLL DES_RISC2:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
-+"linux-mips64el","$ENV{'CC'}:-DL_ENDIAN -mabi=64 -O3 -fomit-frame-pointer -Wall::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC2_CHAR RC4_INDEX DES_INT DES_UNROLL DES_RISC2:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
-+"linux-mipsel","$ENV{'CC'}:-DL_ENDIAN -O3 -fomit-frame-pointer -Wall::-D_REENTRANT::-ldl:BN_LLONG RC2_CHAR RC4_INDEX DES_INT DES_UNROLL DES_RISC2:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
-+
- # Android: linux-* but without pointers to headers and libs.
- "android","gcc:-mandroid -I\$(ANDROID_DEV)/include -B\$(ANDROID_DEV)/lib -O3 -fomit-frame-pointer -Wall::-D_REENTRANT::-ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_INT DES_UNROLL BF_PTR:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
- "android-x86","gcc:-mandroid -I\$(ANDROID_DEV)/include -B\$(ANDROID_DEV)/lib -O3 -fomit-frame-pointer -Wall::-D_REENTRANT::-ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:".eval{my $asm=${x86_elf_asm};$asm=~s/:elf/:android/;$asm}.":dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
diff --git a/poky/meta/recipes-connectivity/openssl/openssl10/debian/c_rehash-compat.patch b/poky/meta/recipes-connectivity/openssl/openssl10/debian/c_rehash-compat.patch
deleted file mode 100644
index 3820e3e..0000000
--- a/poky/meta/recipes-connectivity/openssl/openssl10/debian/c_rehash-compat.patch
+++ /dev/null
@@ -1,71 +0,0 @@
-From 83f318d68bbdab1ca898c94576a838cc97df4700 Mon Sep 17 00:00:00 2001
-From: Ludwig Nussel <ludwig.nussel@suse.de>
-Date: Wed, 21 Apr 2010 15:52:10 +0200
-Subject: [PATCH] also create old hash for compatibility
-
-Upstream-Status: Backport [debian]
-
-Index: openssl-1.0.2n/tools/c_rehash.in
-===================================================================
---- openssl-1.0.2n.orig/tools/c_rehash.in
-+++ openssl-1.0.2n/tools/c_rehash.in
-@@ -8,8 +8,6 @@ my $prefix;
-
- my $openssl = $ENV{OPENSSL} || "openssl";
- my $pwd;
--my $x509hash = "-subject_hash";
--my $crlhash = "-hash";
- my $verbose = 0;
- my $symlink_exists=eval {symlink("",""); 1};
- my $removelinks = 1;
-@@ -18,10 +16,7 @@ my $removelinks = 1;
- while ( $ARGV[0] =~ /^-/ ) {
- my $flag = shift @ARGV;
- last if ( $flag eq '--');
-- if ( $flag eq '-old') {
-- $x509hash = "-subject_hash_old";
-- $crlhash = "-hash_old";
-- } elsif ( $flag eq '-h') {
-+ if ( $flag eq '-h') {
- help();
- } elsif ( $flag eq '-n' ) {
- $removelinks = 0;
-@@ -113,7 +108,9 @@ sub hash_dir {
- next;
- }
- link_hash_cert($fname) if($cert);
-+ link_hash_cert_old($fname) if($cert);
- link_hash_crl($fname) if($crl);
-+ link_hash_crl_old($fname) if($crl);
- }
- }
-
-@@ -146,6 +143,7 @@ sub check_file {
-
- sub link_hash_cert {
- my $fname = $_[0];
-+ my $x509hash = $_[1] || '-subject_hash';
- $fname =~ s/'/'\\''/g;
- my ($hash, $fprint) = `"$openssl" x509 $x509hash -fingerprint -noout -in "$fname"`;
- chomp $hash;
-@@ -177,10 +175,20 @@ sub link_hash_cert {
- $hashlist{$hash} = $fprint;
- }
-
-+sub link_hash_cert_old {
-+ link_hash_cert($_[0], '-subject_hash_old');
-+}
-+
-+sub link_hash_crl_old {
-+ link_hash_crl($_[0], '-hash_old');
-+}
-+
-+
- # Same as above except for a CRL. CRL links are of the form <hash>.r<n>
-
- sub link_hash_crl {
- my $fname = $_[0];
-+ my $crlhash = $_[1] || "-hash";
- $fname =~ s/'/'\\''/g;
- my ($hash, $fprint) = `"$openssl" crl $crlhash -fingerprint -noout -in '$fname'`;
- chomp $hash;
diff --git a/poky/meta/recipes-connectivity/openssl/openssl10/debian/debian-targets.patch b/poky/meta/recipes-connectivity/openssl/openssl10/debian/debian-targets.patch
deleted file mode 100644
index 24709f4..0000000
--- a/poky/meta/recipes-connectivity/openssl/openssl10/debian/debian-targets.patch
+++ /dev/null
@@ -1,73 +0,0 @@
-Upstream-Status: Backport [debian]
-
-Index: openssl-1.0.2n/Configure
-===================================================================
---- openssl-1.0.2n.orig/Configure
-+++ openssl-1.0.2n/Configure
-@@ -133,6 +133,10 @@ my $clang_devteam_warn = "-Wno-unused-pa
- # Warn that "make depend" should be run?
- my $warn_make_depend = 0;
-
-+# There are no separate CFLAGS/CPPFLAGS/LDFLAGS, set everything in CFLAGS
-+my $debian_cflags = `dpkg-buildflags --get CFLAGS` . `dpkg-buildflags --get CPPFLAGS` . `dpkg-buildflags --get LDFLAGS` . "-Wa,--noexecstack -Wall";
-+$debian_cflags =~ s/\n/ /g;
-+
- my $strict_warnings = 0;
-
- my $x86_gcc_des="DES_PTR DES_RISC1 DES_UNROLL";
-@@ -369,6 +373,55 @@ my %table=(
- "osf1-alpha-cc", "cc:-std1 -tune host -O4 -readonly_strings::(unknown):::SIXTY_FOUR_BIT_LONG RC4_CHUNK:${alpha_asm}:dlfcn:alpha-osf1-shared:::.so",
- "tru64-alpha-cc", "cc:-std1 -tune host -fast -readonly_strings::-pthread:::SIXTY_FOUR_BIT_LONG RC4_CHUNK:${alpha_asm}:dlfcn:alpha-osf1-shared::-msym:.so",
-
-+# Debian GNU/* (various architectures)
-+"debian-alpha","gcc:-DTERMIO ${debian_cflags}::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_RISC1 DES_UNROLL:${alpha_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
-+"debian-alpha-ev4","gcc:-DTERMIO ${debian_cflags} -mcpu=ev4::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_RISC1 DES_UNROLL:${alpha_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
-+"debian-alpha-ev5","gcc:-DTERMIO ${debian_cflags} -mcpu=ev5::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_RISC1 DES_UNROLL:${alpha_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
-+"debian-arm64","gcc:-DL_ENDIAN -DTERMIO ${debian_cflags}::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_INT DES_UNROLL BF_PTR:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
-+"debian-armel","gcc:-DL_ENDIAN -DTERMIO ${debian_cflags}::-D_REENTRANT::-ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_INT DES_UNROLL BF_PTR:${armv4_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
-+"debian-armhf","gcc:-DL_ENDIAN -DTERMIO ${debian_cflags}::-D_REENTRANT::-ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_INT DES_UNROLL BF_PTR:${armv4_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
-+"debian-amd64", "gcc:-m64 -DL_ENDIAN -DTERMIO ${debian_cflags} -DMD32_REG_T=int::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_INT DES_UNROLL:${x86_64_asm}:elf:dlfcn:linux-shared:-fPIC:-m64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR):::",
-+"debian-avr32", "gcc:-DB_ENDIAN -DTERMIO ${debian_cflags} -fomit-frame-pointer::-D_REENTRANT::-ldl:BN_LLONG_BF_PTR:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
-+"debian-kfreebsd-amd64","gcc:-m64 -DL_ENDIAN -DTERMIOS ${debian_cflags} -DMD32_REG_T=int::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_INT DES_UNROLL:${x86_64_asm}:elf:dlfcn:linux-shared:-fPIC:-m64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
-+"debian-kfreebsd-i386","gcc:-DL_ENDIAN -DTERMIOS ${debian_cflags} -march=i486::-D_REENTRANT::-ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
-+"debian-hppa","gcc:-DB_ENDIAN -DTERMIO ${debian_cflags}::-D_REENTRANT::-ldl:BN_LLONG MD2_CHAR RC4_INDEX:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
-+"debian-hurd-i386","gcc:-DL_ENDIAN -DTERMIOS -O3 -Wa,--noexecstack -g -mtune=i486 -Wall::-D_REENTRANT::-ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
-+"debian-ia64","gcc:-DTERMIO ${debian_cflags}::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_UNROLL DES_INT:${ia64_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
-+"debian-i386","gcc:-DL_ENDIAN -DTERMIO ${debian_cflags}::-D_REENTRANT::-ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
-+"debian-i386-i486","gcc:-DL_ENDIAN -DTERMIO ${debian_cflags} -march=i486::-D_REENTRANT::-ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
-+"debian-i386-i586","gcc:-DL_ENDIAN -DTERMIO ${debian_cflags} -march=i586::-D_REENTRANT::-ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
-+"debian-i386-i686/cmov","gcc:-DL_ENDIAN -DTERMIO ${debian_cflags} -march=i686::-D_REENTRANT::-ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
-+"debian-m68k","gcc:-DB_ENDIAN -DTERMIO ${debian_cflags}::-D_REENTRANT::-ldl:BN_LLONG MD2_CHAR RC4_INDEX:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
-+"debian-mips", "gcc:-DB_ENDIAN -DTERMIO ${debian_cflags}::-D_REENTRANT::-ldl:BN_LLONG RC2_CHAR RC4_INDEX DES_INT DES_UNROLL DES_RISC2:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
-+"debian-mipsel", "gcc:-DL_ENDIAN -DTERMIO ${debian_cflags}::-D_REENTRANT::-ldl:BN_LLONG RC2_CHAR RC4_INDEX DES_INT DES_UNROLL DES_RISC2:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
-+"debian-mipsn32", "mips64-linux-gnuabin32-gcc:-DB_ENDIAN -DTERMIO ${debian_cflags}::-D_REENTRANT::-ldl:BN_LLONG RC2_CHAR RC4_INDEX DES_INT DES_UNROLL DES_RISC2:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
-+"debian-mipsn32el", "mips64el-linux-gnuabin32-gcc:-DL_ENDIAN -DTERMIO ${debian_cflags}::-D_REENTRANT::-ldl:BN_LLONG RC2_CHAR RC4_INDEX DES_INT DES_UNROLL DES_RISC2:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
-+"debian-mips64", "mips64-linux-gnuabi64-gcc:-DB_ENDIAN -DTERMIO ${debian_cflags}::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC2_CHAR RC4_INDEX DES_INT DES_UNROLL DES_RISC2:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
-+"debian-mips64el", "mips64el-linux-gnuabi64-gcc:-DL_ENDIAN -DTERMIO ${debian_cflags}::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC2_CHAR RC4_INDEX DES_INT DES_UNROLL DES_RISC2:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
-+"debian-netbsd-i386", "gcc:-DL_ENDIAN -DTERMIOS ${debian_cflags} -m486::(unknown):::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${no_asm}:dlfcn:bsd-gcc-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
-+"debian-netbsd-m68k", "gcc:-DB_ENDIAN -DTERMIOS ${debian_cflags}::(unknown):::BN_LLONG MD2_CHAR RC4_INDEX DES_UNROLL:${no_asm}:dlfcn:bsd-gcc-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
-+"debian-netbsd-sparc", "gcc:-DB_ENDIAN -DTERMIOS ${debian_cflags} -mv8::(unknown):::BN_LLONG MD2_CHAR RC4_INDEX DES_UNROLL:${no_asm}:dlfcn:bsd-gcc-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
-+"debian-openbsd-alpha","gcc:-DTERMIOS ${debian_cflags}::(unknown):::SIXTY_FOUR_BIT_LONG DES_INT DES_PTR DES_RISC2:${no_asm}:dlfcn:bsd-gcc-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
-+"debian-openbsd-i386", "gcc:-DL_ENDIAN -DTERMIOS ${debian_cflags} -m486::(unknown):::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_asm}:a.out:dlfcn:bsd-gcc-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
-+"debian-openbsd-mips","gcc:-DL_ENDIAN ${debian_cflags}::(unknown)::BN_LLONG MD2_CHAR RC4_INDEX RC4_CHAR DES_UNROLL DES_RISC2 DES_PTR BF_PTR:${no_asm}:dlfcn:bsd-gcc-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
-+"debian-or1k", "gcc:-DB_ENDIAN -DTERMIO ${debian_cflags}::-D_REENTRANT::-ldl:BN_LLONG DES_RISC1:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
-+"debian-powerpc","gcc:-DB_ENDIAN -DTERMIO ${debian_cflags}::-D_REENTRANT::-ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_RISC1 DES_UNROLL:${ppc32_asm}:linux32:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
-+"debian-powerpcspe","gcc:-DB_ENDIAN -DTERMIO ${debian_cflags}::-D_REENTRANT::-ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_RISC1 DES_UNROLL:${ppc32_asm}:linux32:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
-+"debian-ppc64","gcc:-m64 -DB_ENDIAN -DTERMIO ${debian_cflags}::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_RISC1 DES_UNROLL:${ppc64_asm}:linux64:dlfcn:linux-shared:-fPIC:-m64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
-+"debian-ppc64el","gcc:-m64 -DL_ENDIAN -DTERMIO ${debian_cflags}::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_RISC1 DES_UNROLL:${ppc64_asm}:linux64le:dlfcn:linux-shared:-fPIC:-m64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
-+"debian-s390","gcc:-DB_ENDIAN -DTERMIO ${debian_cflags}::-D_REENTRANT::-ldl:RC4_CHAR RC4_CHUNK DES_INT DES_UNROLL:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
-+"debian-s390x","gcc:-DB_ENDIAN -DTERMIO ${debian_cflags}::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_INT DES_UNROLL:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
-+"debian-sh3", "gcc:-DL_ENDIAN -DTERMIO ${debian_cflags}::-D_REENTRANT::-ldl:BN_LLONG:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
-+"debian-sh4", "gcc:-DL_ENDIAN -DTERMIO ${debian_cflags}::-D_REENTRANT::-ldl:BN_LLONG:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
-+"debian-sh3eb", "gcc:-DB_ENDIAN -DTERMIO ${debian_cflags}::-D_REENTRANT::-ldl:BN_LLONG:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
-+"debian-sh4eb", "gcc:-DB_ENDIAN -DTERMIO ${debian_cflags}::-D_REENTRANT::-ldl:BN_LLONG:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
-+"debian-m32r","gcc:-DB_ENDIAN -DTERMIO ${debian_cflags}::-D_REENTRANT::-ldl:BN_LLONG:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
-+"debian-sparc","gcc:-DB_ENDIAN -DTERMIO ${debian_cflags}::-D_REENTRANT::-ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:${sparcv9_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
-+"debian-sparc-v8","gcc:-DB_ENDIAN -DTERMIO ${debian_cflags} -mcpu=v8 -DBN_DIV2W::-D_REENTRANT::-ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:${sparcv8_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
-+"debian-sparc-v9","gcc:-DB_ENDIAN -DTERMIO ${debian_cflags} -mcpu=v9 -Wa,-Av8plus -DULTRASPARC -DBN_DIV2W::-D_REENTRANT::-ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:${sparcv9_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
-+"debian-sparc64","gcc:-m64 -DB_ENDIAN -DTERMIO ${debian_cflags} -DULTRASPARC -DBN_DIV2W::-D_REENTRANT::-ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_INT DES_PTR DES_RISC1 DES_UNROLL BF_PTR:${sparcv9_asm}:dlfcn:linux-shared:-fPIC:-m64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
-+"debian-x32","gcc:-mx32 -DL_ENDIAN -DTERMIO ${debian_cflags} -DMD32_REG_T=int::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT RC4_CHUNK DES_INT DES_UNROLL:${x86_64_asm}:elf:dlfcn:linux-shared:-fPIC:-mx32:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR):::x32",
-+
- ####
- #### Variety of LINUX:-)
- ####
diff --git a/poky/meta/recipes-connectivity/openssl/openssl10/debian/man-dir.patch b/poky/meta/recipes-connectivity/openssl/openssl10/debian/man-dir.patch
deleted file mode 100644
index 4085e3b..0000000
--- a/poky/meta/recipes-connectivity/openssl/openssl10/debian/man-dir.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-Upstream-Status: Backport [debian]
-
-Index: openssl-1.0.0c/Makefile.org
-===================================================================
---- openssl-1.0.0c.orig/Makefile.org 2010-12-12 16:11:27.000000000 +0100
-+++ openssl-1.0.0c/Makefile.org 2010-12-12 16:11:37.000000000 +0100
-@@ -131,7 +131,7 @@
-
- MAKEFILE= Makefile
-
--MANDIR=$(OPENSSLDIR)/man
-+MANDIR=/usr/share/man
- MAN1=1
- MAN3=3
- MANSUFFIX=
diff --git a/poky/meta/recipes-connectivity/openssl/openssl10/debian/man-section.patch b/poky/meta/recipes-connectivity/openssl/openssl10/debian/man-section.patch
deleted file mode 100644
index 21c1d1a..0000000
--- a/poky/meta/recipes-connectivity/openssl/openssl10/debian/man-section.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-Upstream-Status: Backport [debian]
-
-Index: openssl-1.0.0c/Makefile.org
-===================================================================
---- openssl-1.0.0c.orig/Makefile.org 2010-12-12 16:11:37.000000000 +0100
-+++ openssl-1.0.0c/Makefile.org 2010-12-12 16:13:28.000000000 +0100
-@@ -160,7 +160,8 @@
- MANDIR=/usr/share/man
- MAN1=1
- MAN3=3
--MANSUFFIX=
-+MANSUFFIX=ssl
-+MANSECTION=SSL
- HTMLSUFFIX=html
- HTMLDIR=$(OPENSSLDIR)/html
- SHELL=/bin/sh
-@@ -651,7 +652,7 @@
- echo "installing man$$sec/$$fn.$${sec}$(MANSUFFIX)"; \
- (cd `$(PERL) util/dirname.pl $$i`; \
- sh -c "$$pod2man \
-- --section=$$sec --center=OpenSSL \
-+ --section=$${sec}$(MANSECTION) --center=OpenSSL \
- --release=$(VERSION) `basename $$i`") \
- > $(INSTALL_PREFIX)$(MANDIR)/man$$sec/$$fn.$${sec}$(MANSUFFIX); \
- $(PERL) util/extract-names.pl < $$i | \
-@@ -668,7 +669,7 @@
- echo "installing man$$sec/$$fn.$${sec}$(MANSUFFIX)"; \
- (cd `$(PERL) util/dirname.pl $$i`; \
- sh -c "$$pod2man \
-- --section=$$sec --center=OpenSSL \
-+ --section=$${sec}$(MANSECTION) --center=OpenSSL \
- --release=$(VERSION) `basename $$i`") \
- > $(INSTALL_PREFIX)$(MANDIR)/man$$sec/$$fn.$${sec}$(MANSUFFIX); \
- $(PERL) util/extract-names.pl < $$i | \
diff --git a/poky/meta/recipes-connectivity/openssl/openssl10/debian/no-rpath.patch b/poky/meta/recipes-connectivity/openssl/openssl10/debian/no-rpath.patch
deleted file mode 100644
index 1ccb3b8..0000000
--- a/poky/meta/recipes-connectivity/openssl/openssl10/debian/no-rpath.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-Upstream-Status: Backport [debian]
-
-Index: openssl-1.0.0c/Makefile.shared
-===================================================================
---- openssl-1.0.0c.orig/Makefile.shared 2010-08-21 13:36:49.000000000 +0200
-+++ openssl-1.0.0c/Makefile.shared 2010-12-12 16:13:36.000000000 +0100
-@@ -153,7 +153,7 @@
- NOALLSYMSFLAGS='-Wl,--no-whole-archive'; \
- SHAREDFLAGS="$(CFLAGS) $(SHARED_LDFLAGS) -shared -Wl,-Bsymbolic -Wl,-soname=$$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX"
-
--DO_GNU_APP=LDFLAGS="$(CFLAGS) -Wl,-rpath,$(LIBRPATH)"
-+DO_GNU_APP=LDFLAGS="$(CFLAGS)"
-
- #This is rather special. It's a special target with which one can link
- #applications without bothering with any features that have anything to
diff --git a/poky/meta/recipes-connectivity/openssl/openssl10/debian/no-symbolic.patch b/poky/meta/recipes-connectivity/openssl/openssl10/debian/no-symbolic.patch
deleted file mode 100644
index cc4408a..0000000
--- a/poky/meta/recipes-connectivity/openssl/openssl10/debian/no-symbolic.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-Upstream-Status: Backport [debian]
-
-Index: openssl-1.0.0c/Makefile.shared
-===================================================================
---- openssl-1.0.0c.orig/Makefile.shared 2010-12-12 16:13:36.000000000 +0100
-+++ openssl-1.0.0c/Makefile.shared 2010-12-12 16:13:44.000000000 +0100
-@@ -151,7 +151,7 @@
- SHLIB_SUFFIX=; \
- ALLSYMSFLAGS='-Wl,--whole-archive'; \
- NOALLSYMSFLAGS='-Wl,--no-whole-archive'; \
-- SHAREDFLAGS="$(CFLAGS) $(SHARED_LDFLAGS) -shared -Wl,-Bsymbolic -Wl,-soname=$$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX"
-+ SHAREDFLAGS="$(CFLAGS) $(SHARED_LDFLAGS) -shared -Wl,-soname=$$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX"
-
- DO_GNU_APP=LDFLAGS="$(CFLAGS)"
-
diff --git a/poky/meta/recipes-connectivity/openssl/openssl10/debian/pic.patch b/poky/meta/recipes-connectivity/openssl/openssl10/debian/pic.patch
deleted file mode 100644
index bfda388..0000000
--- a/poky/meta/recipes-connectivity/openssl/openssl10/debian/pic.patch
+++ /dev/null
@@ -1,177 +0,0 @@
-Upstream-Status: Backport [debian]
-
-Index: openssl-1.0.1c/crypto/des/asm/desboth.pl
-===================================================================
---- openssl-1.0.1c.orig/crypto/des/asm/desboth.pl 2001-10-24 23:20:56.000000000 +0200
-+++ openssl-1.0.1c/crypto/des/asm/desboth.pl 2012-07-29 14:15:26.000000000 +0200
-@@ -16,6 +16,11 @@
-
- &push("edi");
-
-+ &call (&label("pic_point0"));
-+ &set_label("pic_point0");
-+ &blindpop("ebp");
-+ &add ("ebp", "\$_GLOBAL_OFFSET_TABLE_+[.-" . &label("pic_point0") . "]");
-+
- &comment("");
- &comment("Load the data words");
- &mov($L,&DWP(0,"ebx","",0));
-@@ -47,15 +52,21 @@
- &mov(&swtmp(2), (DWC(($enc)?"1":"0")));
- &mov(&swtmp(1), "eax");
- &mov(&swtmp(0), "ebx");
-- &call("DES_encrypt2");
-+ &exch("ebx", "ebp");
-+ &call("DES_encrypt2\@PLT");
-+ &exch("ebx", "ebp");
- &mov(&swtmp(2), (DWC(($enc)?"0":"1")));
- &mov(&swtmp(1), "edi");
- &mov(&swtmp(0), "ebx");
-- &call("DES_encrypt2");
-+ &exch("ebx", "ebp");
-+ &call("DES_encrypt2\@PLT");
-+ &exch("ebx", "ebp");
- &mov(&swtmp(2), (DWC(($enc)?"1":"0")));
- &mov(&swtmp(1), "esi");
- &mov(&swtmp(0), "ebx");
-- &call("DES_encrypt2");
-+ &exch("ebx", "ebp");
-+ &call("DES_encrypt2\@PLT");
-+ &exch("ebx", "ebp");
-
- &stack_pop(3);
- &mov($L,&DWP(0,"ebx","",0));
-Index: openssl-1.0.1c/crypto/perlasm/cbc.pl
-===================================================================
---- openssl-1.0.1c.orig/crypto/perlasm/cbc.pl 2011-07-13 08:22:46.000000000 +0200
-+++ openssl-1.0.1c/crypto/perlasm/cbc.pl 2012-07-29 14:15:26.000000000 +0200
-@@ -122,7 +122,11 @@
- &mov(&DWP($data_off,"esp","",0), "eax"); # put in array for call
- &mov(&DWP($data_off+4,"esp","",0), "ebx"); #
-
-- &call($enc_func);
-+ &call (&label("pic_point0"));
-+ &set_label("pic_point0");
-+ &blindpop("ebx");
-+ &add ("ebx", "\$_GLOBAL_OFFSET_TABLE_+[.-" . &label("pic_point0") . "]");
-+ &call("$enc_func\@PLT");
-
- &mov("eax", &DWP($data_off,"esp","",0));
- &mov("ebx", &DWP($data_off+4,"esp","",0));
-@@ -185,7 +189,11 @@
- &mov(&DWP($data_off,"esp","",0), "eax"); # put in array for call
- &mov(&DWP($data_off+4,"esp","",0), "ebx"); #
-
-- &call($enc_func);
-+ &call (&label("pic_point1"));
-+ &set_label("pic_point1");
-+ &blindpop("ebx");
-+ &add ("ebx", "\$_GLOBAL_OFFSET_TABLE_+[.-" . &label("pic_point1") . "]");
-+ &call("$enc_func\@PLT");
-
- &mov("eax", &DWP($data_off,"esp","",0));
- &mov("ebx", &DWP($data_off+4,"esp","",0));
-@@ -218,7 +226,11 @@
- &mov(&DWP($data_off,"esp","",0), "eax"); # put back
- &mov(&DWP($data_off+4,"esp","",0), "ebx"); #
-
-- &call($dec_func);
-+ &call (&label("pic_point2"));
-+ &set_label("pic_point2");
-+ &blindpop("ebx");
-+ &add ("ebx", "\$_GLOBAL_OFFSET_TABLE_+[.-" . &label("pic_point2") . "]");
-+ &call("$dec_func\@PLT");
-
- &mov("eax", &DWP($data_off,"esp","",0)); # get return
- &mov("ebx", &DWP($data_off+4,"esp","",0)); #
-@@ -261,7 +273,11 @@
- &mov(&DWP($data_off,"esp","",0), "eax"); # put back
- &mov(&DWP($data_off+4,"esp","",0), "ebx"); #
-
-- &call($dec_func);
-+ &call (&label("pic_point3"));
-+ &set_label("pic_point3");
-+ &blindpop("ebx");
-+ &add ("ebx", "\$_GLOBAL_OFFSET_TABLE_+[.-" . &label("pic_point3") . "]");
-+ &call("$dec_func\@PLT");
-
- &mov("eax", &DWP($data_off,"esp","",0)); # get return
- &mov("ebx", &DWP($data_off+4,"esp","",0)); #
-Index: openssl-1.0.1c/crypto/perlasm/x86gas.pl
-===================================================================
---- openssl-1.0.1c.orig/crypto/perlasm/x86gas.pl 2011-12-09 20:16:35.000000000 +0100
-+++ openssl-1.0.1c/crypto/perlasm/x86gas.pl 2012-07-29 14:15:26.000000000 +0200
-@@ -161,6 +161,7 @@
- if ($::macosx) { push (@out,"$tmp,2\n"); }
- elsif ($::elf) { push (@out,"$tmp,4\n"); }
- else { push (@out,"$tmp\n"); }
-+ if ($::elf) { push (@out,".hidden\tOPENSSL_ia32cap_P\n"); }
- }
- push(@out,$initseg) if ($initseg);
- }
-@@ -218,8 +219,23 @@
- elsif ($::elf)
- { $initseg.=<<___;
- .section .init
-+___
-+ if ($::pic)
-+ { $initseg.=<<___;
-+ pushl %ebx
-+ call .pic_point0
-+.pic_point0:
-+ popl %ebx
-+ addl \$_GLOBAL_OFFSET_TABLE_+[.-.pic_point0],%ebx
-+ call $f\@PLT
-+ popl %ebx
-+___
-+ }
-+ else
-+ { $initseg.=<<___;
- call $f
- ___
-+ }
- }
- elsif ($::coff)
- { $initseg.=<<___; # applies to both Cygwin and Mingw
-Index: openssl-1.0.1c/crypto/x86cpuid.pl
-===================================================================
---- openssl-1.0.1c.orig/crypto/x86cpuid.pl 2012-02-28 15:20:34.000000000 +0100
-+++ openssl-1.0.1c/crypto/x86cpuid.pl 2012-07-29 14:15:26.000000000 +0200
-@@ -8,6 +8,8 @@
-
- for (@ARGV) { $sse2=1 if (/-DOPENSSL_IA32_SSE2/); }
-
-+push(@out, ".hidden OPENSSL_ia32cap_P\n");
-+
- &function_begin("OPENSSL_ia32_cpuid");
- &xor ("edx","edx");
- &pushf ();
-@@ -139,9 +141,7 @@
- &set_label("nocpuid");
- &function_end("OPENSSL_ia32_cpuid");
-
--&external_label("OPENSSL_ia32cap_P");
--
--&function_begin_B("OPENSSL_rdtsc","EXTRN\t_OPENSSL_ia32cap_P:DWORD");
-+&function_begin_B("OPENSSL_rdtsc");
- &xor ("eax","eax");
- &xor ("edx","edx");
- &picmeup("ecx","OPENSSL_ia32cap_P");
-@@ -155,7 +155,7 @@
- # This works in Ring 0 only [read DJGPP+MS-DOS+privileged DPMI host],
- # but it's safe to call it on any [supported] 32-bit platform...
- # Just check for [non-]zero return value...
--&function_begin_B("OPENSSL_instrument_halt","EXTRN\t_OPENSSL_ia32cap_P:DWORD");
-+&function_begin_B("OPENSSL_instrument_halt");
- &picmeup("ecx","OPENSSL_ia32cap_P");
- &bt (&DWP(0,"ecx"),4);
- &jnc (&label("nohalt")); # no TSC
-@@ -222,7 +222,7 @@
- &ret ();
- &function_end_B("OPENSSL_far_spin");
-
--&function_begin_B("OPENSSL_wipe_cpu","EXTRN\t_OPENSSL_ia32cap_P:DWORD");
-+&function_begin_B("OPENSSL_wipe_cpu");
- &xor ("eax","eax");
- &xor ("edx","edx");
- &picmeup("ecx","OPENSSL_ia32cap_P");
diff --git a/poky/meta/recipes-connectivity/openssl/openssl10/debian1.0.2/block_digicert_malaysia.patch b/poky/meta/recipes-connectivity/openssl/openssl10/debian1.0.2/block_digicert_malaysia.patch
deleted file mode 100644
index c43bcd1..0000000
--- a/poky/meta/recipes-connectivity/openssl/openssl10/debian1.0.2/block_digicert_malaysia.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From: Raphael Geissert <geissert@debian.org>
-Description: make X509_verify_cert indicate that any certificate whose
- name contains "Digicert Sdn. Bhd." (from Malaysia) is revoked.
-Forwarded: not-needed
-Origin: vendor
-Last-Update: 2011-11-05
-
-Upstream-Status: Backport [debian]
-
-
-Index: openssl-1.0.2~beta1/crypto/x509/x509_vfy.c
-===================================================================
---- openssl-1.0.2~beta1.orig/crypto/x509/x509_vfy.c 2014-02-25 00:16:12.488028844 +0100
-+++ openssl-1.0.2~beta1/crypto/x509/x509_vfy.c 2014-02-25 00:16:12.484028929 +0100
-@@ -964,10 +964,11 @@
- for (i = sk_X509_num(ctx->chain) - 1; i >= 0; i--)
- {
- x = sk_X509_value(ctx->chain, i);
-- /* Mark DigiNotar certificates as revoked, no matter
-- * where in the chain they are.
-+ /* Mark certificates containing the following names as
-+ * revoked, no matter where in the chain they are.
- */
-- if (x->name && strstr(x->name, "DigiNotar"))
-+ if (x->name && (strstr(x->name, "DigiNotar") ||
-+ strstr(x->name, "Digicert Sdn. Bhd.")))
- {
- ctx->error = X509_V_ERR_CERT_REVOKED;
- ctx->error_depth = i;
diff --git a/poky/meta/recipes-connectivity/openssl/openssl10/debian1.0.2/block_diginotar.patch b/poky/meta/recipes-connectivity/openssl/openssl10/debian1.0.2/block_diginotar.patch
deleted file mode 100644
index d81e22c..0000000
--- a/poky/meta/recipes-connectivity/openssl/openssl10/debian1.0.2/block_diginotar.patch
+++ /dev/null
@@ -1,68 +0,0 @@
-From: Raphael Geissert <geissert@debian.org>
-Description: make X509_verify_cert indicate that any certificate whose
- name contains "DigiNotar" is revoked.
-Forwarded: not-needed
-Origin: vendor
-Last-Update: 2011-09-08
-Bug: http://bugs.debian.org/639744
-Reviewed-by: Kurt Roeckx <kurt@roeckx.be>
-Reviewed-by: Dr Stephen N Henson <shenson@drh-consultancy.co.uk>
-
-This is not meant as final patch.
-
-Upstream-Status: Backport [debian]
-
-Signed-off-by: Armin Kuster <akuster@mvista.com>
-
-Index: openssl-1.0.2g/crypto/x509/x509_vfy.c
-===================================================================
---- openssl-1.0.2g.orig/crypto/x509/x509_vfy.c
-+++ openssl-1.0.2g/crypto/x509/x509_vfy.c
-@@ -119,6 +119,7 @@ static int check_trust(X509_STORE_CTX *c
- static int check_revocation(X509_STORE_CTX *ctx);
- static int check_cert(X509_STORE_CTX *ctx);
- static int check_policy(X509_STORE_CTX *ctx);
-+static int check_ca_blacklist(X509_STORE_CTX *ctx);
-
- static int get_crl_score(X509_STORE_CTX *ctx, X509 **pissuer,
- unsigned int *preasons, X509_CRL *crl, X509 *x);
-@@ -489,6 +490,9 @@ int X509_verify_cert(X509_STORE_CTX *ctx
- if (!ok)
- goto err;
-
-+ ok = check_ca_blacklist(ctx);
-+ if(!ok) goto err;
-+
- #ifndef OPENSSL_NO_RFC3779
- /* RFC 3779 path validation, now that CRL check has been done */
- ok = v3_asid_validate_path(ctx);
-@@ -996,6 +1000,29 @@ static int check_crl_time(X509_STORE_CTX
- return 1;
- }
-
-+static int check_ca_blacklist(X509_STORE_CTX *ctx)
-+ {
-+ X509 *x;
-+ int i;
-+ /* Check all certificates against the blacklist */
-+ for (i = sk_X509_num(ctx->chain) - 1; i >= 0; i--)
-+ {
-+ x = sk_X509_value(ctx->chain, i);
-+ /* Mark DigiNotar certificates as revoked, no matter
-+ * where in the chain they are.
-+ */
-+ if (x->name && strstr(x->name, "DigiNotar"))
-+ {
-+ ctx->error = X509_V_ERR_CERT_REVOKED;
-+ ctx->error_depth = i;
-+ ctx->current_cert = x;
-+ if (!ctx->verify_cb(0,ctx))
-+ return 0;
-+ }
-+ }
-+ return 1;
-+ }
-+
- static int get_crl_sk(X509_STORE_CTX *ctx, X509_CRL **pcrl, X509_CRL **pdcrl,
- X509 **pissuer, int *pscore, unsigned int *preasons,
- STACK_OF(X509_CRL) *crls)
diff --git a/poky/meta/recipes-connectivity/openssl/openssl10/debian1.0.2/soname.patch b/poky/meta/recipes-connectivity/openssl/openssl10/debian1.0.2/soname.patch
deleted file mode 100644
index 09dd9ea..0000000
--- a/poky/meta/recipes-connectivity/openssl/openssl10/debian1.0.2/soname.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-Upstream-Status: Inappropriate
-
-Index: openssl-1.0.2d/crypto/opensslv.h
-===================================================================
---- openssl-1.0.2d.orig/crypto/opensslv.h
-+++ openssl-1.0.2d/crypto/opensslv.h
-@@ -88,7 +88,7 @@ extern "C" {
- * should only keep the versions that are binary compatible with the current.
- */
- # define SHLIB_VERSION_HISTORY ""
--# define SHLIB_VERSION_NUMBER "1.0.0"
-+# define SHLIB_VERSION_NUMBER "1.0.2"
-
-
- #ifdef __cplusplus
diff --git a/poky/meta/recipes-connectivity/openssl/openssl10/debian1.0.2/version-script.patch b/poky/meta/recipes-connectivity/openssl/openssl10/debian1.0.2/version-script.patch
deleted file mode 100644
index e404ee3..0000000
--- a/poky/meta/recipes-connectivity/openssl/openssl10/debian1.0.2/version-script.patch
+++ /dev/null
@@ -1,4658 +0,0 @@
-Upstream-Status: Inappropriate
-
-Index: openssl-1.0.2~beta1.obsolete.0.0498436515490575/Configure
-===================================================================
---- openssl-1.0.2~beta1.obsolete.0.0498436515490575.orig/Configure 2014-02-24 21:02:30.000000000 +0100
-+++ openssl-1.0.2~beta1.obsolete.0.0498436515490575/Configure 2014-02-24 21:02:30.000000000 +0100
-@@ -1651,6 +1651,8 @@
- }
- }
-
-+$shared_ldflag .= " -Wl,--version-script=openssl.ld";
-+
- open(IN,'<Makefile.org') || die "unable to read Makefile.org:$!\n";
- unlink("$Makefile.new") || die "unable to remove old $Makefile.new:$!\n" if -e "$Makefile.new";
- open(OUT,">$Makefile.new") || die "unable to create $Makefile.new:$!\n";
-Index: openssl-1.0.2~beta1.obsolete.0.0498436515490575/openssl.ld
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ openssl-1.0.2~beta1.obsolete.0.0498436515490575/openssl.ld 2014-02-24 22:19:08.601827266 +0100
-@@ -0,0 +1,4608 @@
-+OPENSSL_1.0.2d {
-+ global:
-+ BIO_f_ssl;
-+ BIO_new_buffer_ssl_connect;
-+ BIO_new_ssl;
-+ BIO_new_ssl_connect;
-+ BIO_proxy_ssl_copy_session_id;
-+ BIO_ssl_copy_session_id;
-+ BIO_ssl_shutdown;
-+ d2i_SSL_SESSION;
-+ DTLSv1_client_method;
-+ DTLSv1_method;
-+ DTLSv1_server_method;
-+ ERR_load_SSL_strings;
-+ i2d_SSL_SESSION;
-+ kssl_build_principal_2;
-+ kssl_cget_tkt;
-+ kssl_check_authent;
-+ kssl_ctx_free;
-+ kssl_ctx_new;
-+ kssl_ctx_setkey;
-+ kssl_ctx_setprinc;
-+ kssl_ctx_setstring;
-+ kssl_ctx_show;
-+ kssl_err_set;
-+ kssl_krb5_free_data_contents;
-+ kssl_sget_tkt;
-+ kssl_skip_confound;
-+ kssl_validate_times;
-+ PEM_read_bio_SSL_SESSION;
-+ PEM_read_SSL_SESSION;
-+ PEM_write_bio_SSL_SESSION;
-+ PEM_write_SSL_SESSION;
-+ SSL_accept;
-+ SSL_add_client_CA;
-+ SSL_add_dir_cert_subjects_to_stack;
-+ SSL_add_dir_cert_subjs_to_stk;
-+ SSL_add_file_cert_subjects_to_stack;
-+ SSL_add_file_cert_subjs_to_stk;
-+ SSL_alert_desc_string;
-+ SSL_alert_desc_string_long;
-+ SSL_alert_type_string;
-+ SSL_alert_type_string_long;
-+ SSL_callback_ctrl;
-+ SSL_check_private_key;
-+ SSL_CIPHER_description;
-+ SSL_CIPHER_get_bits;
-+ SSL_CIPHER_get_name;
-+ SSL_CIPHER_get_version;
-+ SSL_clear;
-+ SSL_COMP_add_compression_method;
-+ SSL_COMP_get_compression_methods;
-+ SSL_COMP_get_compress_methods;
-+ SSL_COMP_get_name;
-+ SSL_connect;
-+ SSL_copy_session_id;
-+ SSL_ctrl;
-+ SSL_CTX_add_client_CA;
-+ SSL_CTX_add_session;
-+ SSL_CTX_callback_ctrl;
-+ SSL_CTX_check_private_key;
-+ SSL_CTX_ctrl;
-+ SSL_CTX_flush_sessions;
-+ SSL_CTX_free;
-+ SSL_CTX_get_cert_store;
-+ SSL_CTX_get_client_CA_list;
-+ SSL_CTX_get_client_cert_cb;
-+ SSL_CTX_get_ex_data;
-+ SSL_CTX_get_ex_new_index;
-+ SSL_CTX_get_info_callback;
-+ SSL_CTX_get_quiet_shutdown;
-+ SSL_CTX_get_timeout;
-+ SSL_CTX_get_verify_callback;
-+ SSL_CTX_get_verify_depth;
-+ SSL_CTX_get_verify_mode;
-+ SSL_CTX_load_verify_locations;
-+ SSL_CTX_new;
-+ SSL_CTX_remove_session;
-+ SSL_CTX_sess_get_get_cb;
-+ SSL_CTX_sess_get_new_cb;
-+ SSL_CTX_sess_get_remove_cb;
-+ SSL_CTX_sessions;
-+ SSL_CTX_sess_set_get_cb;
-+ SSL_CTX_sess_set_new_cb;
-+ SSL_CTX_sess_set_remove_cb;
-+ SSL_CTX_set1_param;
-+ SSL_CTX_set_cert_store;
-+ SSL_CTX_set_cert_verify_callback;
-+ SSL_CTX_set_cert_verify_cb;
-+ SSL_CTX_set_cipher_list;
-+ SSL_CTX_set_client_CA_list;
-+ SSL_CTX_set_client_cert_cb;
-+ SSL_CTX_set_client_cert_engine;
-+ SSL_CTX_set_cookie_generate_cb;
-+ SSL_CTX_set_cookie_verify_cb;
-+ SSL_CTX_set_default_passwd_cb;
-+ SSL_CTX_set_default_passwd_cb_userdata;
-+ SSL_CTX_set_default_verify_paths;
-+ SSL_CTX_set_def_passwd_cb_ud;
-+ SSL_CTX_set_def_verify_paths;
-+ SSL_CTX_set_ex_data;
-+ SSL_CTX_set_generate_session_id;
-+ SSL_CTX_set_info_callback;
-+ SSL_CTX_set_msg_callback;
-+ SSL_CTX_set_psk_client_callback;
-+ SSL_CTX_set_psk_server_callback;
-+ SSL_CTX_set_purpose;
-+ SSL_CTX_set_quiet_shutdown;
-+ SSL_CTX_set_session_id_context;
-+ SSL_CTX_set_ssl_version;
-+ SSL_CTX_set_timeout;
-+ SSL_CTX_set_tmp_dh_callback;
-+ SSL_CTX_set_tmp_ecdh_callback;
-+ SSL_CTX_set_tmp_rsa_callback;
-+ SSL_CTX_set_trust;
-+ SSL_CTX_set_verify;
-+ SSL_CTX_set_verify_depth;
-+ SSL_CTX_use_cert_chain_file;
-+ SSL_CTX_use_certificate;
-+ SSL_CTX_use_certificate_ASN1;
-+ SSL_CTX_use_certificate_chain_file;
-+ SSL_CTX_use_certificate_file;
-+ SSL_CTX_use_PrivateKey;
-+ SSL_CTX_use_PrivateKey_ASN1;
-+ SSL_CTX_use_PrivateKey_file;
-+ SSL_CTX_use_psk_identity_hint;
-+ SSL_CTX_use_RSAPrivateKey;
-+ SSL_CTX_use_RSAPrivateKey_ASN1;
-+ SSL_CTX_use_RSAPrivateKey_file;
-+ SSL_do_handshake;
-+ SSL_dup;
-+ SSL_dup_CA_list;
-+ SSLeay_add_ssl_algorithms;
-+ SSL_free;
-+ SSL_get1_session;
-+ SSL_get_certificate;
-+ SSL_get_cipher_list;
-+ SSL_get_ciphers;
-+ SSL_get_client_CA_list;
-+ SSL_get_current_cipher;
-+ SSL_get_current_compression;
-+ SSL_get_current_expansion;
-+ SSL_get_default_timeout;
-+ SSL_get_error;
-+ SSL_get_ex_data;
-+ SSL_get_ex_data_X509_STORE_CTX_idx;
-+ SSL_get_ex_d_X509_STORE_CTX_idx;
-+ SSL_get_ex_new_index;
-+ SSL_get_fd;
-+ SSL_get_finished;
-+ SSL_get_info_callback;
-+ SSL_get_peer_cert_chain;
-+ SSL_get_peer_certificate;
-+ SSL_get_peer_finished;
-+ SSL_get_privatekey;
-+ SSL_get_psk_identity;
-+ SSL_get_psk_identity_hint;
-+ SSL_get_quiet_shutdown;
-+ SSL_get_rbio;
-+ SSL_get_read_ahead;
-+ SSL_get_rfd;
-+ SSL_get_servername;
-+ SSL_get_servername_type;
-+ SSL_get_session;
-+ SSL_get_shared_ciphers;
-+ SSL_get_shutdown;
-+ SSL_get_SSL_CTX;
-+ SSL_get_ssl_method;
-+ SSL_get_verify_callback;
-+ SSL_get_verify_depth;
-+ SSL_get_verify_mode;
-+ SSL_get_verify_result;
-+ SSL_get_version;
-+ SSL_get_wbio;
-+ SSL_get_wfd;
-+ SSL_has_matching_session_id;
-+ SSL_library_init;
-+ SSL_load_client_CA_file;
-+ SSL_load_error_strings;
-+ SSL_new;
-+ SSL_peek;
-+ SSL_pending;
-+ SSL_read;
-+ SSL_renegotiate;
-+ SSL_renegotiate_pending;
-+ SSL_rstate_string;
-+ SSL_rstate_string_long;
-+ SSL_SESSION_cmp;
-+ SSL_SESSION_free;
-+ SSL_SESSION_get_ex_data;
-+ SSL_SESSION_get_ex_new_index;
-+ SSL_SESSION_get_id;
-+ SSL_SESSION_get_time;
-+ SSL_SESSION_get_timeout;
-+ SSL_SESSION_hash;
-+ SSL_SESSION_new;
-+ SSL_SESSION_print;
-+ SSL_SESSION_print_fp;
-+ SSL_SESSION_set_ex_data;
-+ SSL_SESSION_set_time;
-+ SSL_SESSION_set_timeout;
-+ SSL_set1_param;
-+ SSL_set_accept_state;
-+ SSL_set_bio;
-+ SSL_set_cipher_list;
-+ SSL_set_client_CA_list;
-+ SSL_set_connect_state;
-+ SSL_set_ex_data;
-+ SSL_set_fd;
-+ SSL_set_generate_session_id;
-+ SSL_set_info_callback;
-+ SSL_set_msg_callback;
-+ SSL_set_psk_client_callback;
-+ SSL_set_psk_server_callback;
-+ SSL_set_purpose;
-+ SSL_set_quiet_shutdown;
-+ SSL_set_read_ahead;
-+ SSL_set_rfd;
-+ SSL_set_session;
-+ SSL_set_session_id_context;
-+ SSL_set_session_secret_cb;
-+ SSL_set_session_ticket_ext;
-+ SSL_set_session_ticket_ext_cb;
-+ SSL_set_shutdown;
-+ SSL_set_SSL_CTX;
-+ SSL_set_ssl_method;
-+ SSL_set_tmp_dh_callback;
-+ SSL_set_tmp_ecdh_callback;
-+ SSL_set_tmp_rsa_callback;
-+ SSL_set_trust;
-+ SSL_set_verify;
-+ SSL_set_verify_depth;
-+ SSL_set_verify_result;
-+ SSL_set_wfd;
-+ SSL_shutdown;
-+ SSL_state;
-+ SSL_state_string;
-+ SSL_state_string_long;
-+ SSL_use_certificate;
-+ SSL_use_certificate_ASN1;
-+ SSL_use_certificate_file;
-+ SSL_use_PrivateKey;
-+ SSL_use_PrivateKey_ASN1;
-+ SSL_use_PrivateKey_file;
-+ SSL_use_psk_identity_hint;
-+ SSL_use_RSAPrivateKey;
-+ SSL_use_RSAPrivateKey_ASN1;
-+ SSL_use_RSAPrivateKey_file;
-+ SSLv23_client_method;
-+ SSLv23_method;
-+ SSLv23_server_method;
-+ SSLv2_client_method;
-+ SSLv2_method;
-+ SSLv2_server_method;
-+ SSLv3_client_method;
-+ SSLv3_method;
-+ SSLv3_server_method;
-+ SSL_version;
-+ SSL_want;
-+ SSL_write;
-+ TLSv1_client_method;
-+ TLSv1_method;
-+ TLSv1_server_method;
-+
-+
-+ SSLeay;
-+ SSLeay_version;
-+ ASN1_BIT_STRING_asn1_meth;
-+ ASN1_HEADER_free;
-+ ASN1_HEADER_new;
-+ ASN1_IA5STRING_asn1_meth;
-+ ASN1_INTEGER_get;
-+ ASN1_INTEGER_set;
-+ ASN1_INTEGER_to_BN;
-+ ASN1_OBJECT_create;
-+ ASN1_OBJECT_free;
-+ ASN1_OBJECT_new;
-+ ASN1_PRINTABLE_type;
-+ ASN1_STRING_cmp;
-+ ASN1_STRING_dup;
-+ ASN1_STRING_free;
-+ ASN1_STRING_new;
-+ ASN1_STRING_print;
-+ ASN1_STRING_set;
-+ ASN1_STRING_type_new;
-+ ASN1_TYPE_free;
-+ ASN1_TYPE_new;
-+ ASN1_UNIVERSALSTRING_to_string;
-+ ASN1_UTCTIME_check;
-+ ASN1_UTCTIME_print;
-+ ASN1_UTCTIME_set;
-+ ASN1_check_infinite_end;
-+ ASN1_d2i_bio;
-+ ASN1_d2i_fp;
-+ ASN1_digest;
-+ ASN1_dup;
-+ ASN1_get_object;
-+ ASN1_i2d_bio;
-+ ASN1_i2d_fp;
-+ ASN1_object_size;
-+ ASN1_parse;
-+ ASN1_put_object;
-+ ASN1_sign;
-+ ASN1_verify;
-+ BF_cbc_encrypt;
-+ BF_cfb64_encrypt;
-+ BF_ecb_encrypt;
-+ BF_encrypt;
-+ BF_ofb64_encrypt;
-+ BF_options;
-+ BF_set_key;
-+ BIO_CONNECT_free;
-+ BIO_CONNECT_new;
-+ BIO_accept;
-+ BIO_ctrl;
-+ BIO_int_ctrl;
-+ BIO_debug_callback;
-+ BIO_dump;
-+ BIO_dup_chain;
-+ BIO_f_base64;
-+ BIO_f_buffer;
-+ BIO_f_cipher;
-+ BIO_f_md;
-+ BIO_f_null;
-+ BIO_f_proxy_server;
-+ BIO_fd_non_fatal_error;
-+ BIO_fd_should_retry;
-+ BIO_find_type;
-+ BIO_free;
-+ BIO_free_all;
-+ BIO_get_accept_socket;
-+ BIO_get_filter_bio;
-+ BIO_get_host_ip;
-+ BIO_get_port;
-+ BIO_get_retry_BIO;
-+ BIO_get_retry_reason;
-+ BIO_gethostbyname;
-+ BIO_gets;
-+ BIO_new;
-+ BIO_new_accept;
-+ BIO_new_connect;
-+ BIO_new_fd;
-+ BIO_new_file;
-+ BIO_new_fp;
-+ BIO_new_socket;
-+ BIO_pop;
-+ BIO_printf;
-+ BIO_push;
-+ BIO_puts;
-+ BIO_read;
-+ BIO_s_accept;
-+ BIO_s_connect;
-+ BIO_s_fd;
-+ BIO_s_file;
-+ BIO_s_mem;
-+ BIO_s_null;
-+ BIO_s_proxy_client;
-+ BIO_s_socket;
-+ BIO_set;
-+ BIO_set_cipher;
-+ BIO_set_tcp_ndelay;
-+ BIO_sock_cleanup;
-+ BIO_sock_error;
-+ BIO_sock_init;
-+ BIO_sock_non_fatal_error;
-+ BIO_sock_should_retry;
-+ BIO_socket_ioctl;
-+ BIO_write;
-+ BN_CTX_free;
-+ BN_CTX_new;
-+ BN_MONT_CTX_free;
-+ BN_MONT_CTX_new;
-+ BN_MONT_CTX_set;
-+ BN_add;
-+ BN_add_word;
-+ BN_hex2bn;
-+ BN_bin2bn;
-+ BN_bn2hex;
-+ BN_bn2bin;
-+ BN_clear;
-+ BN_clear_bit;
-+ BN_clear_free;
-+ BN_cmp;
-+ BN_copy;
-+ BN_div;
-+ BN_div_word;
-+ BN_dup;
-+ BN_free;
-+ BN_from_montgomery;
-+ BN_gcd;
-+ BN_generate_prime;
-+ BN_get_word;
-+ BN_is_bit_set;
-+ BN_is_prime;
-+ BN_lshift;
-+ BN_lshift1;
-+ BN_mask_bits;
-+ BN_mod;
-+ BN_mod_exp;
-+ BN_mod_exp_mont;
-+ BN_mod_exp_simple;
-+ BN_mod_inverse;
-+ BN_mod_mul;
-+ BN_mod_mul_montgomery;
-+ BN_mod_word;
-+ BN_mul;
-+ BN_new;
-+ BN_num_bits;
-+ BN_num_bits_word;
-+ BN_options;
-+ BN_print;
-+ BN_print_fp;
-+ BN_rand;
-+ BN_reciprocal;
-+ BN_rshift;
-+ BN_rshift1;
-+ BN_set_bit;
-+ BN_set_word;
-+ BN_sqr;
-+ BN_sub;
-+ BN_to_ASN1_INTEGER;
-+ BN_ucmp;
-+ BN_value_one;
-+ BUF_MEM_free;
-+ BUF_MEM_grow;
-+ BUF_MEM_new;
-+ BUF_strdup;
-+ CONF_free;
-+ CONF_get_number;
-+ CONF_get_section;
-+ CONF_get_string;
-+ CONF_load;
-+ CRYPTO_add_lock;
-+ CRYPTO_dbg_free;
-+ CRYPTO_dbg_malloc;
-+ CRYPTO_dbg_realloc;
-+ CRYPTO_dbg_remalloc;
-+ CRYPTO_free;
-+ CRYPTO_get_add_lock_callback;
-+ CRYPTO_get_id_callback;
-+ CRYPTO_get_lock_name;
-+ CRYPTO_get_locking_callback;
-+ CRYPTO_get_mem_functions;
-+ CRYPTO_lock;
-+ CRYPTO_malloc;
-+ CRYPTO_mem_ctrl;
-+ CRYPTO_mem_leaks;
-+ CRYPTO_mem_leaks_cb;
-+ CRYPTO_mem_leaks_fp;
-+ CRYPTO_realloc;
-+ CRYPTO_remalloc;
-+ CRYPTO_set_add_lock_callback;
-+ CRYPTO_set_id_callback;
-+ CRYPTO_set_locking_callback;
-+ CRYPTO_set_mem_functions;
-+ CRYPTO_thread_id;
-+ DH_check;
-+ DH_compute_key;
-+ DH_free;
-+ DH_generate_key;
-+ DH_generate_parameters;
-+ DH_new;
-+ DH_size;
-+ DHparams_print;
-+ DHparams_print_fp;
-+ DSA_free;
-+ DSA_generate_key;
-+ DSA_generate_parameters;
-+ DSA_is_prime;
-+ DSA_new;
-+ DSA_print;
-+ DSA_print_fp;
-+ DSA_sign;
-+ DSA_sign_setup;
-+ DSA_size;
-+ DSA_verify;
-+ DSAparams_print;
-+ DSAparams_print_fp;
-+ ERR_clear_error;
-+ ERR_error_string;
-+ ERR_free_strings;
-+ ERR_func_error_string;
-+ ERR_get_err_state_table;
-+ ERR_get_error;
-+ ERR_get_error_line;
-+ ERR_get_state;
-+ ERR_get_string_table;
-+ ERR_lib_error_string;
-+ ERR_load_ASN1_strings;
-+ ERR_load_BIO_strings;
-+ ERR_load_BN_strings;
-+ ERR_load_BUF_strings;
-+ ERR_load_CONF_strings;
-+ ERR_load_DH_strings;
-+ ERR_load_DSA_strings;
-+ ERR_load_ERR_strings;
-+ ERR_load_EVP_strings;
-+ ERR_load_OBJ_strings;
-+ ERR_load_PEM_strings;
-+ ERR_load_PROXY_strings;
-+ ERR_load_RSA_strings;
-+ ERR_load_X509_strings;
-+ ERR_load_crypto_strings;
-+ ERR_load_strings;
-+ ERR_peek_error;
-+ ERR_peek_error_line;
-+ ERR_print_errors;
-+ ERR_print_errors_fp;
-+ ERR_put_error;
-+ ERR_reason_error_string;
-+ ERR_remove_state;
-+ EVP_BytesToKey;
-+ EVP_CIPHER_CTX_cleanup;
-+ EVP_CipherFinal;
-+ EVP_CipherInit;
-+ EVP_CipherUpdate;
-+ EVP_DecodeBlock;
-+ EVP_DecodeFinal;
-+ EVP_DecodeInit;
-+ EVP_DecodeUpdate;
-+ EVP_DecryptFinal;
-+ EVP_DecryptInit;
-+ EVP_DecryptUpdate;
-+ EVP_DigestFinal;
-+ EVP_DigestInit;
-+ EVP_DigestUpdate;
-+ EVP_EncodeBlock;
-+ EVP_EncodeFinal;
-+ EVP_EncodeInit;
-+ EVP_EncodeUpdate;
-+ EVP_EncryptFinal;
-+ EVP_EncryptInit;
-+ EVP_EncryptUpdate;
-+ EVP_OpenFinal;
-+ EVP_OpenInit;
-+ EVP_PKEY_assign;
-+ EVP_PKEY_copy_parameters;
-+ EVP_PKEY_free;
-+ EVP_PKEY_missing_parameters;
-+ EVP_PKEY_new;
-+ EVP_PKEY_save_parameters;
-+ EVP_PKEY_size;
-+ EVP_PKEY_type;
-+ EVP_SealFinal;
-+ EVP_SealInit;
-+ EVP_SignFinal;
-+ EVP_VerifyFinal;
-+ EVP_add_alias;
-+ EVP_add_cipher;
-+ EVP_add_digest;
-+ EVP_bf_cbc;
-+ EVP_bf_cfb64;
-+ EVP_bf_ecb;
-+ EVP_bf_ofb;
-+ EVP_cleanup;
-+ EVP_des_cbc;
-+ EVP_des_cfb64;
-+ EVP_des_ecb;
-+ EVP_des_ede;
-+ EVP_des_ede3;
-+ EVP_des_ede3_cbc;
-+ EVP_des_ede3_cfb64;
-+ EVP_des_ede3_ofb;
-+ EVP_des_ede_cbc;
-+ EVP_des_ede_cfb64;
-+ EVP_des_ede_ofb;
-+ EVP_des_ofb;
-+ EVP_desx_cbc;
-+ EVP_dss;
-+ EVP_dss1;
-+ EVP_enc_null;
-+ EVP_get_cipherbyname;
-+ EVP_get_digestbyname;
-+ EVP_get_pw_prompt;
-+ EVP_idea_cbc;
-+ EVP_idea_cfb64;
-+ EVP_idea_ecb;
-+ EVP_idea_ofb;
-+ EVP_md2;
-+ EVP_md5;
-+ EVP_md_null;
-+ EVP_rc2_cbc;
-+ EVP_rc2_cfb64;
-+ EVP_rc2_ecb;
-+ EVP_rc2_ofb;
-+ EVP_rc4;
-+ EVP_read_pw_string;
-+ EVP_set_pw_prompt;
-+ EVP_sha;
-+ EVP_sha1;
-+ MD2;
-+ MD2_Final;
-+ MD2_Init;
-+ MD2_Update;
-+ MD2_options;
-+ MD5;
-+ MD5_Final;
-+ MD5_Init;
-+ MD5_Update;
-+ MDC2;
-+ MDC2_Final;
-+ MDC2_Init;
-+ MDC2_Update;
-+ NETSCAPE_SPKAC_free;
-+ NETSCAPE_SPKAC_new;
-+ NETSCAPE_SPKI_free;
-+ NETSCAPE_SPKI_new;
-+ NETSCAPE_SPKI_sign;
-+ NETSCAPE_SPKI_verify;
-+ OBJ_add_object;
-+ OBJ_bsearch;
-+ OBJ_cleanup;
-+ OBJ_cmp;
-+ OBJ_create;
-+ OBJ_dup;
-+ OBJ_ln2nid;
-+ OBJ_new_nid;
-+ OBJ_nid2ln;
-+ OBJ_nid2obj;
-+ OBJ_nid2sn;
-+ OBJ_obj2nid;
-+ OBJ_sn2nid;
-+ OBJ_txt2nid;
-+ PEM_ASN1_read;
-+ PEM_ASN1_read_bio;
-+ PEM_ASN1_write;
-+ PEM_ASN1_write_bio;
-+ PEM_SealFinal;
-+ PEM_SealInit;
-+ PEM_SealUpdate;
-+ PEM_SignFinal;
-+ PEM_SignInit;
-+ PEM_SignUpdate;
-+ PEM_X509_INFO_read;
-+ PEM_X509_INFO_read_bio;
-+ PEM_X509_INFO_write_bio;
-+ PEM_dek_info;
-+ PEM_do_header;
-+ PEM_get_EVP_CIPHER_INFO;
-+ PEM_proc_type;
-+ PEM_read;
-+ PEM_read_DHparams;
-+ PEM_read_DSAPrivateKey;
-+ PEM_read_DSAparams;
-+ PEM_read_PKCS7;
-+ PEM_read_PrivateKey;
-+ PEM_read_RSAPrivateKey;
-+ PEM_read_X509;
-+ PEM_read_X509_CRL;
-+ PEM_read_X509_REQ;
-+ PEM_read_bio;
-+ PEM_read_bio_DHparams;
-+ PEM_read_bio_DSAPrivateKey;
-+ PEM_read_bio_DSAparams;
-+ PEM_read_bio_PKCS7;
-+ PEM_read_bio_PrivateKey;
-+ PEM_read_bio_RSAPrivateKey;
-+ PEM_read_bio_X509;
-+ PEM_read_bio_X509_CRL;
-+ PEM_read_bio_X509_REQ;
-+ PEM_write;
-+ PEM_write_DHparams;
-+ PEM_write_DSAPrivateKey;
-+ PEM_write_DSAparams;
-+ PEM_write_PKCS7;
-+ PEM_write_PrivateKey;
-+ PEM_write_RSAPrivateKey;
-+ PEM_write_X509;
-+ PEM_write_X509_CRL;
-+ PEM_write_X509_REQ;
-+ PEM_write_bio;
-+ PEM_write_bio_DHparams;
-+ PEM_write_bio_DSAPrivateKey;
-+ PEM_write_bio_DSAparams;
-+ PEM_write_bio_PKCS7;
-+ PEM_write_bio_PrivateKey;
-+ PEM_write_bio_RSAPrivateKey;
-+ PEM_write_bio_X509;
-+ PEM_write_bio_X509_CRL;
-+ PEM_write_bio_X509_REQ;
-+ PKCS7_DIGEST_free;
-+ PKCS7_DIGEST_new;
-+ PKCS7_ENCRYPT_free;
-+ PKCS7_ENCRYPT_new;
-+ PKCS7_ENC_CONTENT_free;
-+ PKCS7_ENC_CONTENT_new;
-+ PKCS7_ENVELOPE_free;
-+ PKCS7_ENVELOPE_new;
-+ PKCS7_ISSUER_AND_SERIAL_digest;
-+ PKCS7_ISSUER_AND_SERIAL_free;
-+ PKCS7_ISSUER_AND_SERIAL_new;
-+ PKCS7_RECIP_INFO_free;
-+ PKCS7_RECIP_INFO_new;
-+ PKCS7_SIGNED_free;
-+ PKCS7_SIGNED_new;
-+ PKCS7_SIGNER_INFO_free;
-+ PKCS7_SIGNER_INFO_new;
-+ PKCS7_SIGN_ENVELOPE_free;
-+ PKCS7_SIGN_ENVELOPE_new;
-+ PKCS7_dup;
-+ PKCS7_free;
-+ PKCS7_new;
-+ PROXY_ENTRY_add_noproxy;
-+ PROXY_ENTRY_clear_noproxy;
-+ PROXY_ENTRY_free;
-+ PROXY_ENTRY_get_noproxy;
-+ PROXY_ENTRY_new;
-+ PROXY_ENTRY_set_server;
-+ PROXY_add_noproxy;
-+ PROXY_add_server;
-+ PROXY_check_by_host;
-+ PROXY_check_url;
-+ PROXY_clear_noproxy;
-+ PROXY_free;
-+ PROXY_get_noproxy;
-+ PROXY_get_proxies;
-+ PROXY_get_proxy_entry;
-+ PROXY_load_conf;
-+ PROXY_new;
-+ PROXY_print;
-+ RAND_bytes;
-+ RAND_cleanup;
-+ RAND_file_name;
-+ RAND_load_file;
-+ RAND_screen;
-+ RAND_seed;
-+ RAND_write_file;
-+ RC2_cbc_encrypt;
-+ RC2_cfb64_encrypt;
-+ RC2_ecb_encrypt;
-+ RC2_encrypt;
-+ RC2_ofb64_encrypt;
-+ RC2_set_key;
-+ RC4;
-+ RC4_options;
-+ RC4_set_key;
-+ RSAPrivateKey_asn1_meth;
-+ RSAPrivateKey_dup;
-+ RSAPublicKey_dup;
-+ RSA_PKCS1_SSLeay;
-+ RSA_free;
-+ RSA_generate_key;
-+ RSA_new;
-+ RSA_new_method;
-+ RSA_print;
-+ RSA_print_fp;
-+ RSA_private_decrypt;
-+ RSA_private_encrypt;
-+ RSA_public_decrypt;
-+ RSA_public_encrypt;
-+ RSA_set_default_method;
-+ RSA_sign;
-+ RSA_sign_ASN1_OCTET_STRING;
-+ RSA_size;
-+ RSA_verify;
-+ RSA_verify_ASN1_OCTET_STRING;
-+ SHA;
-+ SHA1;
-+ SHA1_Final;
-+ SHA1_Init;
-+ SHA1_Update;
-+ SHA_Final;
-+ SHA_Init;
-+ SHA_Update;
-+ OpenSSL_add_all_algorithms;
-+ OpenSSL_add_all_ciphers;
-+ OpenSSL_add_all_digests;
-+ TXT_DB_create_index;
-+ TXT_DB_free;
-+ TXT_DB_get_by_index;
-+ TXT_DB_insert;
-+ TXT_DB_read;
-+ TXT_DB_write;
-+ X509_ALGOR_free;
-+ X509_ALGOR_new;
-+ X509_ATTRIBUTE_free;
-+ X509_ATTRIBUTE_new;
-+ X509_CINF_free;
-+ X509_CINF_new;
-+ X509_CRL_INFO_free;
-+ X509_CRL_INFO_new;
-+ X509_CRL_add_ext;
-+ X509_CRL_cmp;
-+ X509_CRL_delete_ext;
-+ X509_CRL_dup;
-+ X509_CRL_free;
-+ X509_CRL_get_ext;
-+ X509_CRL_get_ext_by_NID;
-+ X509_CRL_get_ext_by_OBJ;
-+ X509_CRL_get_ext_by_critical;
-+ X509_CRL_get_ext_count;
-+ X509_CRL_new;
-+ X509_CRL_sign;
-+ X509_CRL_verify;
-+ X509_EXTENSION_create_by_NID;
-+ X509_EXTENSION_create_by_OBJ;
-+ X509_EXTENSION_dup;
-+ X509_EXTENSION_free;
-+ X509_EXTENSION_get_critical;
-+ X509_EXTENSION_get_data;
-+ X509_EXTENSION_get_object;
-+ X509_EXTENSION_new;
-+ X509_EXTENSION_set_critical;
-+ X509_EXTENSION_set_data;
-+ X509_EXTENSION_set_object;
-+ X509_INFO_free;
-+ X509_INFO_new;
-+ X509_LOOKUP_by_alias;
-+ X509_LOOKUP_by_fingerprint;
-+ X509_LOOKUP_by_issuer_serial;
-+ X509_LOOKUP_by_subject;
-+ X509_LOOKUP_ctrl;
-+ X509_LOOKUP_file;
-+ X509_LOOKUP_free;
-+ X509_LOOKUP_hash_dir;
-+ X509_LOOKUP_init;
-+ X509_LOOKUP_new;
-+ X509_LOOKUP_shutdown;
-+ X509_NAME_ENTRY_create_by_NID;
-+ X509_NAME_ENTRY_create_by_OBJ;
-+ X509_NAME_ENTRY_dup;
-+ X509_NAME_ENTRY_free;
-+ X509_NAME_ENTRY_get_data;
-+ X509_NAME_ENTRY_get_object;
-+ X509_NAME_ENTRY_new;
-+ X509_NAME_ENTRY_set_data;
-+ X509_NAME_ENTRY_set_object;
-+ X509_NAME_add_entry;
-+ X509_NAME_cmp;
-+ X509_NAME_delete_entry;
-+ X509_NAME_digest;
-+ X509_NAME_dup;
-+ X509_NAME_entry_count;
-+ X509_NAME_free;
-+ X509_NAME_get_entry;
-+ X509_NAME_get_index_by_NID;
-+ X509_NAME_get_index_by_OBJ;
-+ X509_NAME_get_text_by_NID;
-+ X509_NAME_get_text_by_OBJ;
-+ X509_NAME_hash;
-+ X509_NAME_new;
-+ X509_NAME_oneline;
-+ X509_NAME_print;
-+ X509_NAME_set;
-+ X509_OBJECT_free_contents;
-+ X509_OBJECT_retrieve_by_subject;
-+ X509_OBJECT_up_ref_count;
-+ X509_PKEY_free;
-+ X509_PKEY_new;
-+ X509_PUBKEY_free;
-+ X509_PUBKEY_get;
-+ X509_PUBKEY_new;
-+ X509_PUBKEY_set;
-+ X509_REQ_INFO_free;
-+ X509_REQ_INFO_new;
-+ X509_REQ_dup;
-+ X509_REQ_free;
-+ X509_REQ_get_pubkey;
-+ X509_REQ_new;
-+ X509_REQ_print;
-+ X509_REQ_print_fp;
-+ X509_REQ_set_pubkey;
-+ X509_REQ_set_subject_name;
-+ X509_REQ_set_version;
-+ X509_REQ_sign;
-+ X509_REQ_to_X509;
-+ X509_REQ_verify;
-+ X509_REVOKED_add_ext;
-+ X509_REVOKED_delete_ext;
-+ X509_REVOKED_free;
-+ X509_REVOKED_get_ext;
-+ X509_REVOKED_get_ext_by_NID;
-+ X509_REVOKED_get_ext_by_OBJ;
-+ X509_REVOKED_get_ext_by_critical;
-+ X509_REVOKED_get_ext_by_critic;
-+ X509_REVOKED_get_ext_count;
-+ X509_REVOKED_new;
-+ X509_SIG_free;
-+ X509_SIG_new;
-+ X509_STORE_CTX_cleanup;
-+ X509_STORE_CTX_init;
-+ X509_STORE_add_cert;
-+ X509_STORE_add_lookup;
-+ X509_STORE_free;
-+ X509_STORE_get_by_subject;
-+ X509_STORE_load_locations;
-+ X509_STORE_new;
-+ X509_STORE_set_default_paths;
-+ X509_VAL_free;
-+ X509_VAL_new;
-+ X509_add_ext;
-+ X509_asn1_meth;
-+ X509_certificate_type;
-+ X509_check_private_key;
-+ X509_cmp_current_time;
-+ X509_delete_ext;
-+ X509_digest;
-+ X509_dup;
-+ X509_free;
-+ X509_get_default_cert_area;
-+ X509_get_default_cert_dir;
-+ X509_get_default_cert_dir_env;
-+ X509_get_default_cert_file;
-+ X509_get_default_cert_file_env;
-+ X509_get_default_private_dir;
-+ X509_get_ext;
-+ X509_get_ext_by_NID;
-+ X509_get_ext_by_OBJ;
-+ X509_get_ext_by_critical;
-+ X509_get_ext_count;
-+ X509_get_issuer_name;
-+ X509_get_pubkey;
-+ X509_get_pubkey_parameters;
-+ X509_get_serialNumber;
-+ X509_get_subject_name;
-+ X509_gmtime_adj;
-+ X509_issuer_and_serial_cmp;
-+ X509_issuer_and_serial_hash;
-+ X509_issuer_name_cmp;
-+ X509_issuer_name_hash;
-+ X509_load_cert_file;
-+ X509_new;
-+ X509_print;
-+ X509_print_fp;
-+ X509_set_issuer_name;
-+ X509_set_notAfter;
-+ X509_set_notBefore;
-+ X509_set_pubkey;
-+ X509_set_serialNumber;
-+ X509_set_subject_name;
-+ X509_set_version;
-+ X509_sign;
-+ X509_subject_name_cmp;
-+ X509_subject_name_hash;
-+ X509_to_X509_REQ;
-+ X509_verify;
-+ X509_verify_cert;
-+ X509_verify_cert_error_string;
-+ X509v3_add_ext;
-+ X509v3_add_extension;
-+ X509v3_add_netscape_extensions;
-+ X509v3_add_standard_extensions;
-+ X509v3_cleanup_extensions;
-+ X509v3_data_type_by_NID;
-+ X509v3_data_type_by_OBJ;
-+ X509v3_delete_ext;
-+ X509v3_get_ext;
-+ X509v3_get_ext_by_NID;
-+ X509v3_get_ext_by_OBJ;
-+ X509v3_get_ext_by_critical;
-+ X509v3_get_ext_count;
-+ X509v3_pack_string;
-+ X509v3_pack_type_by_NID;
-+ X509v3_pack_type_by_OBJ;
-+ X509v3_unpack_string;
-+ _des_crypt;
-+ a2d_ASN1_OBJECT;
-+ a2i_ASN1_INTEGER;
-+ a2i_ASN1_STRING;
-+ asn1_Finish;
-+ asn1_GetSequence;
-+ bn_div_words;
-+ bn_expand2;
-+ bn_mul_add_words;
-+ bn_mul_words;
-+ BN_uadd;
-+ BN_usub;
-+ bn_sqr_words;
-+ _ossl_old_crypt;
-+ d2i_ASN1_BIT_STRING;
-+ d2i_ASN1_BOOLEAN;
-+ d2i_ASN1_HEADER;
-+ d2i_ASN1_IA5STRING;
-+ d2i_ASN1_INTEGER;
-+ d2i_ASN1_OBJECT;
-+ d2i_ASN1_OCTET_STRING;
-+ d2i_ASN1_PRINTABLE;
-+ d2i_ASN1_PRINTABLESTRING;
-+ d2i_ASN1_SET;
-+ d2i_ASN1_T61STRING;
-+ d2i_ASN1_TYPE;
-+ d2i_ASN1_UTCTIME;
-+ d2i_ASN1_bytes;
-+ d2i_ASN1_type_bytes;
-+ d2i_DHparams;
-+ d2i_DSAPrivateKey;
-+ d2i_DSAPrivateKey_bio;
-+ d2i_DSAPrivateKey_fp;
-+ d2i_DSAPublicKey;
-+ d2i_DSAparams;
-+ d2i_NETSCAPE_SPKAC;
-+ d2i_NETSCAPE_SPKI;
-+ d2i_Netscape_RSA;
-+ d2i_PKCS7;
-+ d2i_PKCS7_DIGEST;
-+ d2i_PKCS7_ENCRYPT;
-+ d2i_PKCS7_ENC_CONTENT;
-+ d2i_PKCS7_ENVELOPE;
-+ d2i_PKCS7_ISSUER_AND_SERIAL;
-+ d2i_PKCS7_RECIP_INFO;
-+ d2i_PKCS7_SIGNED;
-+ d2i_PKCS7_SIGNER_INFO;
-+ d2i_PKCS7_SIGN_ENVELOPE;
-+ d2i_PKCS7_bio;
-+ d2i_PKCS7_fp;
-+ d2i_PrivateKey;
-+ d2i_PublicKey;
-+ d2i_RSAPrivateKey;
-+ d2i_RSAPrivateKey_bio;
-+ d2i_RSAPrivateKey_fp;
-+ d2i_RSAPublicKey;
-+ d2i_X509;
-+ d2i_X509_ALGOR;
-+ d2i_X509_ATTRIBUTE;
-+ d2i_X509_CINF;
-+ d2i_X509_CRL;
-+ d2i_X509_CRL_INFO;
-+ d2i_X509_CRL_bio;
-+ d2i_X509_CRL_fp;
-+ d2i_X509_EXTENSION;
-+ d2i_X509_NAME;
-+ d2i_X509_NAME_ENTRY;
-+ d2i_X509_PKEY;
-+ d2i_X509_PUBKEY;
-+ d2i_X509_REQ;
-+ d2i_X509_REQ_INFO;
-+ d2i_X509_REQ_bio;
-+ d2i_X509_REQ_fp;
-+ d2i_X509_REVOKED;
-+ d2i_X509_SIG;
-+ d2i_X509_VAL;
-+ d2i_X509_bio;
-+ d2i_X509_fp;
-+ DES_cbc_cksum;
-+ DES_cbc_encrypt;
-+ DES_cblock_print_file;
-+ DES_cfb64_encrypt;
-+ DES_cfb_encrypt;
-+ DES_decrypt3;
-+ DES_ecb3_encrypt;
-+ DES_ecb_encrypt;
-+ DES_ede3_cbc_encrypt;
-+ DES_ede3_cfb64_encrypt;
-+ DES_ede3_ofb64_encrypt;
-+ DES_enc_read;
-+ DES_enc_write;
-+ DES_encrypt1;
-+ DES_encrypt2;
-+ DES_encrypt3;
-+ DES_fcrypt;
-+ DES_is_weak_key;
-+ DES_key_sched;
-+ DES_ncbc_encrypt;
-+ DES_ofb64_encrypt;
-+ DES_ofb_encrypt;
-+ DES_options;
-+ DES_pcbc_encrypt;
-+ DES_quad_cksum;
-+ DES_random_key;
-+ _ossl_old_des_random_seed;
-+ _ossl_old_des_read_2passwords;
-+ _ossl_old_des_read_password;
-+ _ossl_old_des_read_pw;
-+ _ossl_old_des_read_pw_string;
-+ DES_set_key;
-+ DES_set_odd_parity;
-+ DES_string_to_2keys;
-+ DES_string_to_key;
-+ DES_xcbc_encrypt;
-+ DES_xwhite_in2out;
-+ fcrypt_body;
-+ i2a_ASN1_INTEGER;
-+ i2a_ASN1_OBJECT;
-+ i2a_ASN1_STRING;
-+ i2d_ASN1_BIT_STRING;
-+ i2d_ASN1_BOOLEAN;
-+ i2d_ASN1_HEADER;
-+ i2d_ASN1_IA5STRING;
-+ i2d_ASN1_INTEGER;
-+ i2d_ASN1_OBJECT;
-+ i2d_ASN1_OCTET_STRING;
-+ i2d_ASN1_PRINTABLE;
-+ i2d_ASN1_SET;
-+ i2d_ASN1_TYPE;
-+ i2d_ASN1_UTCTIME;
-+ i2d_ASN1_bytes;
-+ i2d_DHparams;
-+ i2d_DSAPrivateKey;
-+ i2d_DSAPrivateKey_bio;
-+ i2d_DSAPrivateKey_fp;
-+ i2d_DSAPublicKey;
-+ i2d_DSAparams;
-+ i2d_NETSCAPE_SPKAC;
-+ i2d_NETSCAPE_SPKI;
-+ i2d_Netscape_RSA;
-+ i2d_PKCS7;
-+ i2d_PKCS7_DIGEST;
-+ i2d_PKCS7_ENCRYPT;
-+ i2d_PKCS7_ENC_CONTENT;
-+ i2d_PKCS7_ENVELOPE;
-+ i2d_PKCS7_ISSUER_AND_SERIAL;
-+ i2d_PKCS7_RECIP_INFO;
-+ i2d_PKCS7_SIGNED;
-+ i2d_PKCS7_SIGNER_INFO;
-+ i2d_PKCS7_SIGN_ENVELOPE;
-+ i2d_PKCS7_bio;
-+ i2d_PKCS7_fp;
-+ i2d_PrivateKey;
-+ i2d_PublicKey;
-+ i2d_RSAPrivateKey;
-+ i2d_RSAPrivateKey_bio;
-+ i2d_RSAPrivateKey_fp;
-+ i2d_RSAPublicKey;
-+ i2d_X509;
-+ i2d_X509_ALGOR;
-+ i2d_X509_ATTRIBUTE;
-+ i2d_X509_CINF;
-+ i2d_X509_CRL;
-+ i2d_X509_CRL_INFO;
-+ i2d_X509_CRL_bio;
-+ i2d_X509_CRL_fp;
-+ i2d_X509_EXTENSION;
-+ i2d_X509_NAME;
-+ i2d_X509_NAME_ENTRY;
-+ i2d_X509_PKEY;
-+ i2d_X509_PUBKEY;
-+ i2d_X509_REQ;
-+ i2d_X509_REQ_INFO;
-+ i2d_X509_REQ_bio;
-+ i2d_X509_REQ_fp;
-+ i2d_X509_REVOKED;
-+ i2d_X509_SIG;
-+ i2d_X509_VAL;
-+ i2d_X509_bio;
-+ i2d_X509_fp;
-+ idea_cbc_encrypt;
-+ idea_cfb64_encrypt;
-+ idea_ecb_encrypt;
-+ idea_encrypt;
-+ idea_ofb64_encrypt;
-+ idea_options;
-+ idea_set_decrypt_key;
-+ idea_set_encrypt_key;
-+ lh_delete;
-+ lh_doall;
-+ lh_doall_arg;
-+ lh_free;
-+ lh_insert;
-+ lh_new;
-+ lh_node_stats;
-+ lh_node_stats_bio;
-+ lh_node_usage_stats;
-+ lh_node_usage_stats_bio;
-+ lh_retrieve;
-+ lh_stats;
-+ lh_stats_bio;
-+ lh_strhash;
-+ sk_delete;
-+ sk_delete_ptr;
-+ sk_dup;
-+ sk_find;
-+ sk_free;
-+ sk_insert;
-+ sk_new;
-+ sk_pop;
-+ sk_pop_free;
-+ sk_push;
-+ sk_set_cmp_func;
-+ sk_shift;
-+ sk_unshift;
-+ sk_zero;
-+ BIO_f_nbio_test;
-+ ASN1_TYPE_get;
-+ ASN1_TYPE_set;
-+ PKCS7_content_free;
-+ ERR_load_PKCS7_strings;
-+ X509_find_by_issuer_and_serial;
-+ X509_find_by_subject;
-+ PKCS7_ctrl;
-+ PKCS7_set_type;
-+ PKCS7_set_content;
-+ PKCS7_SIGNER_INFO_set;
-+ PKCS7_add_signer;
-+ PKCS7_add_certificate;
-+ PKCS7_add_crl;
-+ PKCS7_content_new;
-+ PKCS7_dataSign;
-+ PKCS7_dataVerify;
-+ PKCS7_dataInit;
-+ PKCS7_add_signature;
-+ PKCS7_cert_from_signer_info;
-+ PKCS7_get_signer_info;
-+ EVP_delete_alias;
-+ EVP_mdc2;
-+ PEM_read_bio_RSAPublicKey;
-+ PEM_write_bio_RSAPublicKey;
-+ d2i_RSAPublicKey_bio;
-+ i2d_RSAPublicKey_bio;
-+ PEM_read_RSAPublicKey;
-+ PEM_write_RSAPublicKey;
-+ d2i_RSAPublicKey_fp;
-+ i2d_RSAPublicKey_fp;
-+ BIO_copy_next_retry;
-+ RSA_flags;
-+ X509_STORE_add_crl;
-+ X509_load_crl_file;
-+ EVP_rc2_40_cbc;
-+ EVP_rc4_40;
-+ EVP_CIPHER_CTX_init;
-+ HMAC;
-+ HMAC_Init;
-+ HMAC_Update;
-+ HMAC_Final;
-+ ERR_get_next_error_library;
-+ EVP_PKEY_cmp_parameters;
-+ HMAC_cleanup;
-+ BIO_ptr_ctrl;
-+ BIO_new_file_internal;
-+ BIO_new_fp_internal;
-+ BIO_s_file_internal;
-+ BN_BLINDING_convert;
-+ BN_BLINDING_invert;
-+ BN_BLINDING_update;
-+ RSA_blinding_on;
-+ RSA_blinding_off;
-+ i2t_ASN1_OBJECT;
-+ BN_BLINDING_new;
-+ BN_BLINDING_free;
-+ EVP_cast5_cbc;
-+ EVP_cast5_cfb64;
-+ EVP_cast5_ecb;
-+ EVP_cast5_ofb;
-+ BF_decrypt;
-+ CAST_set_key;
-+ CAST_encrypt;
-+ CAST_decrypt;
-+ CAST_ecb_encrypt;
-+ CAST_cbc_encrypt;
-+ CAST_cfb64_encrypt;
-+ CAST_ofb64_encrypt;
-+ RC2_decrypt;
-+ OBJ_create_objects;
-+ BN_exp;
-+ BN_mul_word;
-+ BN_sub_word;
-+ BN_dec2bn;
-+ BN_bn2dec;
-+ BIO_ghbn_ctrl;
-+ CRYPTO_free_ex_data;
-+ CRYPTO_get_ex_data;
-+ CRYPTO_set_ex_data;
-+ ERR_load_CRYPTO_strings;
-+ ERR_load_CRYPTOlib_strings;
-+ EVP_PKEY_bits;
-+ MD5_Transform;
-+ SHA1_Transform;
-+ SHA_Transform;
-+ X509_STORE_CTX_get_chain;
-+ X509_STORE_CTX_get_current_cert;
-+ X509_STORE_CTX_get_error;
-+ X509_STORE_CTX_get_error_depth;
-+ X509_STORE_CTX_get_ex_data;
-+ X509_STORE_CTX_set_cert;
-+ X509_STORE_CTX_set_chain;
-+ X509_STORE_CTX_set_error;
-+ X509_STORE_CTX_set_ex_data;
-+ CRYPTO_dup_ex_data;
-+ CRYPTO_get_new_lockid;
-+ CRYPTO_new_ex_data;
-+ RSA_set_ex_data;
-+ RSA_get_ex_data;
-+ RSA_get_ex_new_index;
-+ RSA_padding_add_PKCS1_type_1;
-+ RSA_padding_add_PKCS1_type_2;
-+ RSA_padding_add_SSLv23;
-+ RSA_padding_add_none;
-+ RSA_padding_check_PKCS1_type_1;
-+ RSA_padding_check_PKCS1_type_2;
-+ RSA_padding_check_SSLv23;
-+ RSA_padding_check_none;
-+ bn_add_words;
-+ d2i_Netscape_RSA_2;
-+ CRYPTO_get_ex_new_index;
-+ RIPEMD160_Init;
-+ RIPEMD160_Update;
-+ RIPEMD160_Final;
-+ RIPEMD160;
-+ RIPEMD160_Transform;
-+ RC5_32_set_key;
-+ RC5_32_ecb_encrypt;
-+ RC5_32_encrypt;
-+ RC5_32_decrypt;
-+ RC5_32_cbc_encrypt;
-+ RC5_32_cfb64_encrypt;
-+ RC5_32_ofb64_encrypt;
-+ BN_bn2mpi;
-+ BN_mpi2bn;
-+ ASN1_BIT_STRING_get_bit;
-+ ASN1_BIT_STRING_set_bit;
-+ BIO_get_ex_data;
-+ BIO_get_ex_new_index;
-+ BIO_set_ex_data;
-+ X509v3_get_key_usage;
-+ X509v3_set_key_usage;
-+ a2i_X509v3_key_usage;
-+ i2a_X509v3_key_usage;
-+ EVP_PKEY_decrypt;
-+ EVP_PKEY_encrypt;
-+ PKCS7_RECIP_INFO_set;
-+ PKCS7_add_recipient;
-+ PKCS7_add_recipient_info;
-+ PKCS7_set_cipher;
-+ ASN1_TYPE_get_int_octetstring;
-+ ASN1_TYPE_get_octetstring;
-+ ASN1_TYPE_set_int_octetstring;
-+ ASN1_TYPE_set_octetstring;
-+ ASN1_UTCTIME_set_string;
-+ ERR_add_error_data;
-+ ERR_set_error_data;
-+ EVP_CIPHER_asn1_to_param;
-+ EVP_CIPHER_param_to_asn1;
-+ EVP_CIPHER_get_asn1_iv;
-+ EVP_CIPHER_set_asn1_iv;
-+ EVP_rc5_32_12_16_cbc;
-+ EVP_rc5_32_12_16_cfb64;
-+ EVP_rc5_32_12_16_ecb;
-+ EVP_rc5_32_12_16_ofb;
-+ asn1_add_error;
-+ d2i_ASN1_BMPSTRING;
-+ i2d_ASN1_BMPSTRING;
-+ BIO_f_ber;
-+ BN_init;
-+ COMP_CTX_new;
-+ COMP_CTX_free;
-+ COMP_CTX_compress_block;
-+ COMP_CTX_expand_block;
-+ X509_STORE_CTX_get_ex_new_index;
-+ OBJ_NAME_add;
-+ BIO_socket_nbio;
-+ EVP_rc2_64_cbc;
-+ OBJ_NAME_cleanup;
-+ OBJ_NAME_get;
-+ OBJ_NAME_init;
-+ OBJ_NAME_new_index;
-+ OBJ_NAME_remove;
-+ BN_MONT_CTX_copy;
-+ BIO_new_socks4a_connect;
-+ BIO_s_socks4a_connect;
-+ PROXY_set_connect_mode;
-+ RAND_SSLeay;
-+ RAND_set_rand_method;
-+ RSA_memory_lock;
-+ bn_sub_words;
-+ bn_mul_normal;
-+ bn_mul_comba8;
-+ bn_mul_comba4;
-+ bn_sqr_normal;
-+ bn_sqr_comba8;
-+ bn_sqr_comba4;
-+ bn_cmp_words;
-+ bn_mul_recursive;
-+ bn_mul_part_recursive;
-+ bn_sqr_recursive;
-+ bn_mul_low_normal;
-+ BN_RECP_CTX_init;
-+ BN_RECP_CTX_new;
-+ BN_RECP_CTX_free;
-+ BN_RECP_CTX_set;
-+ BN_mod_mul_reciprocal;
-+ BN_mod_exp_recp;
-+ BN_div_recp;
-+ BN_CTX_init;
-+ BN_MONT_CTX_init;
-+ RAND_get_rand_method;
-+ PKCS7_add_attribute;
-+ PKCS7_add_signed_attribute;
-+ PKCS7_digest_from_attributes;
-+ PKCS7_get_attribute;
-+ PKCS7_get_issuer_and_serial;
-+ PKCS7_get_signed_attribute;
-+ COMP_compress_block;
-+ COMP_expand_block;
-+ COMP_rle;
-+ COMP_zlib;
-+ ms_time_diff;
-+ ms_time_new;
-+ ms_time_free;
-+ ms_time_cmp;
-+ ms_time_get;
-+ PKCS7_set_attributes;
-+ PKCS7_set_signed_attributes;
-+ X509_ATTRIBUTE_create;
-+ X509_ATTRIBUTE_dup;
-+ ASN1_GENERALIZEDTIME_check;
-+ ASN1_GENERALIZEDTIME_print;
-+ ASN1_GENERALIZEDTIME_set;
-+ ASN1_GENERALIZEDTIME_set_string;
-+ ASN1_TIME_print;
-+ BASIC_CONSTRAINTS_free;
-+ BASIC_CONSTRAINTS_new;
-+ ERR_load_X509V3_strings;
-+ NETSCAPE_CERT_SEQUENCE_free;
-+ NETSCAPE_CERT_SEQUENCE_new;
-+ OBJ_txt2obj;
-+ PEM_read_NETSCAPE_CERT_SEQUENCE;
-+ PEM_read_NS_CERT_SEQ;
-+ PEM_read_bio_NETSCAPE_CERT_SEQUENCE;
-+ PEM_read_bio_NS_CERT_SEQ;
-+ PEM_write_NETSCAPE_CERT_SEQUENCE;
-+ PEM_write_NS_CERT_SEQ;
-+ PEM_write_bio_NETSCAPE_CERT_SEQUENCE;
-+ PEM_write_bio_NS_CERT_SEQ;
-+ X509V3_EXT_add;
-+ X509V3_EXT_add_alias;
-+ X509V3_EXT_add_conf;
-+ X509V3_EXT_cleanup;
-+ X509V3_EXT_conf;
-+ X509V3_EXT_conf_nid;
-+ X509V3_EXT_get;
-+ X509V3_EXT_get_nid;
-+ X509V3_EXT_print;
-+ X509V3_EXT_print_fp;
-+ X509V3_add_standard_extensions;
-+ X509V3_add_value;
-+ X509V3_add_value_bool;
-+ X509V3_add_value_int;
-+ X509V3_conf_free;
-+ X509V3_get_value_bool;
-+ X509V3_get_value_int;
-+ X509V3_parse_list;
-+ d2i_ASN1_GENERALIZEDTIME;
-+ d2i_ASN1_TIME;
-+ d2i_BASIC_CONSTRAINTS;
-+ d2i_NETSCAPE_CERT_SEQUENCE;
-+ d2i_ext_ku;
-+ ext_ku_free;
-+ ext_ku_new;
-+ i2d_ASN1_GENERALIZEDTIME;
-+ i2d_ASN1_TIME;
-+ i2d_BASIC_CONSTRAINTS;
-+ i2d_NETSCAPE_CERT_SEQUENCE;
-+ i2d_ext_ku;
-+ EVP_MD_CTX_copy;
-+ i2d_ASN1_ENUMERATED;
-+ d2i_ASN1_ENUMERATED;
-+ ASN1_ENUMERATED_set;
-+ ASN1_ENUMERATED_get;
-+ BN_to_ASN1_ENUMERATED;
-+ ASN1_ENUMERATED_to_BN;
-+ i2a_ASN1_ENUMERATED;
-+ a2i_ASN1_ENUMERATED;
-+ i2d_GENERAL_NAME;
-+ d2i_GENERAL_NAME;
-+ GENERAL_NAME_new;
-+ GENERAL_NAME_free;
-+ GENERAL_NAMES_new;
-+ GENERAL_NAMES_free;
-+ d2i_GENERAL_NAMES;
-+ i2d_GENERAL_NAMES;
-+ i2v_GENERAL_NAMES;
-+ i2s_ASN1_OCTET_STRING;
-+ s2i_ASN1_OCTET_STRING;
-+ X509V3_EXT_check_conf;
-+ hex_to_string;
-+ string_to_hex;
-+ DES_ede3_cbcm_encrypt;
-+ RSA_padding_add_PKCS1_OAEP;
-+ RSA_padding_check_PKCS1_OAEP;
-+ X509_CRL_print_fp;
-+ X509_CRL_print;
-+ i2v_GENERAL_NAME;
-+ v2i_GENERAL_NAME;
-+ i2d_PKEY_USAGE_PERIOD;
-+ d2i_PKEY_USAGE_PERIOD;
-+ PKEY_USAGE_PERIOD_new;
-+ PKEY_USAGE_PERIOD_free;
-+ v2i_GENERAL_NAMES;
-+ i2s_ASN1_INTEGER;
-+ X509V3_EXT_d2i;
-+ name_cmp;
-+ str_dup;
-+ i2s_ASN1_ENUMERATED;
-+ i2s_ASN1_ENUMERATED_TABLE;
-+ BIO_s_log;
-+ BIO_f_reliable;
-+ PKCS7_dataFinal;
-+ PKCS7_dataDecode;
-+ X509V3_EXT_CRL_add_conf;
-+ BN_set_params;
-+ BN_get_params;
-+ BIO_get_ex_num;
-+ BIO_set_ex_free_func;
-+ EVP_ripemd160;
-+ ASN1_TIME_set;
-+ i2d_AUTHORITY_KEYID;
-+ d2i_AUTHORITY_KEYID;
-+ AUTHORITY_KEYID_new;
-+ AUTHORITY_KEYID_free;
-+ ASN1_seq_unpack;
-+ ASN1_seq_pack;
-+ ASN1_unpack_string;
-+ ASN1_pack_string;
-+ PKCS12_pack_safebag;
-+ PKCS12_MAKE_KEYBAG;
-+ PKCS8_encrypt;
-+ PKCS12_MAKE_SHKEYBAG;
-+ PKCS12_pack_p7data;
-+ PKCS12_pack_p7encdata;
-+ PKCS12_add_localkeyid;
-+ PKCS12_add_friendlyname_asc;
-+ PKCS12_add_friendlyname_uni;
-+ PKCS12_get_friendlyname;
-+ PKCS12_pbe_crypt;
-+ PKCS12_decrypt_d2i;
-+ PKCS12_i2d_encrypt;
-+ PKCS12_init;
-+ PKCS12_key_gen_asc;
-+ PKCS12_key_gen_uni;
-+ PKCS12_gen_mac;
-+ PKCS12_verify_mac;
-+ PKCS12_set_mac;
-+ PKCS12_setup_mac;
-+ OPENSSL_asc2uni;
-+ OPENSSL_uni2asc;
-+ i2d_PKCS12_BAGS;
-+ PKCS12_BAGS_new;
-+ d2i_PKCS12_BAGS;
-+ PKCS12_BAGS_free;
-+ i2d_PKCS12;
-+ d2i_PKCS12;
-+ PKCS12_new;
-+ PKCS12_free;
-+ i2d_PKCS12_MAC_DATA;
-+ PKCS12_MAC_DATA_new;
-+ d2i_PKCS12_MAC_DATA;
-+ PKCS12_MAC_DATA_free;
-+ i2d_PKCS12_SAFEBAG;
-+ PKCS12_SAFEBAG_new;
-+ d2i_PKCS12_SAFEBAG;
-+ PKCS12_SAFEBAG_free;
-+ ERR_load_PKCS12_strings;
-+ PKCS12_PBE_add;
-+ PKCS8_add_keyusage;
-+ PKCS12_get_attr_gen;
-+ PKCS12_parse;
-+ PKCS12_create;
-+ i2d_PKCS12_bio;
-+ i2d_PKCS12_fp;
-+ d2i_PKCS12_bio;
-+ d2i_PKCS12_fp;
-+ i2d_PBEPARAM;
-+ PBEPARAM_new;
-+ d2i_PBEPARAM;
-+ PBEPARAM_free;
-+ i2d_PKCS8_PRIV_KEY_INFO;
-+ PKCS8_PRIV_KEY_INFO_new;
-+ d2i_PKCS8_PRIV_KEY_INFO;
-+ PKCS8_PRIV_KEY_INFO_free;
-+ EVP_PKCS82PKEY;
-+ EVP_PKEY2PKCS8;
-+ PKCS8_set_broken;
-+ EVP_PBE_ALGOR_CipherInit;
-+ EVP_PBE_alg_add;
-+ PKCS5_pbe_set;
-+ EVP_PBE_cleanup;
-+ i2d_SXNET;
-+ d2i_SXNET;
-+ SXNET_new;
-+ SXNET_free;
-+ i2d_SXNETID;
-+ d2i_SXNETID;
-+ SXNETID_new;
-+ SXNETID_free;
-+ DSA_SIG_new;
-+ DSA_SIG_free;
-+ DSA_do_sign;
-+ DSA_do_verify;
-+ d2i_DSA_SIG;
-+ i2d_DSA_SIG;
-+ i2d_ASN1_VISIBLESTRING;
-+ d2i_ASN1_VISIBLESTRING;
-+ i2d_ASN1_UTF8STRING;
-+ d2i_ASN1_UTF8STRING;
-+ i2d_DIRECTORYSTRING;
-+ d2i_DIRECTORYSTRING;
-+ i2d_DISPLAYTEXT;
-+ d2i_DISPLAYTEXT;
-+ d2i_ASN1_SET_OF_X509;
-+ i2d_ASN1_SET_OF_X509;
-+ i2d_PBKDF2PARAM;
-+ PBKDF2PARAM_new;
-+ d2i_PBKDF2PARAM;
-+ PBKDF2PARAM_free;
-+ i2d_PBE2PARAM;
-+ PBE2PARAM_new;
-+ d2i_PBE2PARAM;
-+ PBE2PARAM_free;
-+ d2i_ASN1_SET_OF_GENERAL_NAME;
-+ i2d_ASN1_SET_OF_GENERAL_NAME;
-+ d2i_ASN1_SET_OF_SXNETID;
-+ i2d_ASN1_SET_OF_SXNETID;
-+ d2i_ASN1_SET_OF_POLICYQUALINFO;
-+ i2d_ASN1_SET_OF_POLICYQUALINFO;
-+ d2i_ASN1_SET_OF_POLICYINFO;
-+ i2d_ASN1_SET_OF_POLICYINFO;
-+ SXNET_add_id_asc;
-+ SXNET_add_id_ulong;
-+ SXNET_add_id_INTEGER;
-+ SXNET_get_id_asc;
-+ SXNET_get_id_ulong;
-+ SXNET_get_id_INTEGER;
-+ X509V3_set_conf_lhash;
-+ i2d_CERTIFICATEPOLICIES;
-+ CERTIFICATEPOLICIES_new;
-+ CERTIFICATEPOLICIES_free;
-+ d2i_CERTIFICATEPOLICIES;
-+ i2d_POLICYINFO;
-+ POLICYINFO_new;
-+ d2i_POLICYINFO;
-+ POLICYINFO_free;
-+ i2d_POLICYQUALINFO;
-+ POLICYQUALINFO_new;
-+ d2i_POLICYQUALINFO;
-+ POLICYQUALINFO_free;
-+ i2d_USERNOTICE;
-+ USERNOTICE_new;
-+ d2i_USERNOTICE;
-+ USERNOTICE_free;
-+ i2d_NOTICEREF;
-+ NOTICEREF_new;
-+ d2i_NOTICEREF;
-+ NOTICEREF_free;
-+ X509V3_get_string;
-+ X509V3_get_section;
-+ X509V3_string_free;
-+ X509V3_section_free;
-+ X509V3_set_ctx;
-+ s2i_ASN1_INTEGER;
-+ CRYPTO_set_locked_mem_functions;
-+ CRYPTO_get_locked_mem_functions;
-+ CRYPTO_malloc_locked;
-+ CRYPTO_free_locked;
-+ BN_mod_exp2_mont;
-+ ERR_get_error_line_data;
-+ ERR_peek_error_line_data;
-+ PKCS12_PBE_keyivgen;
-+ X509_ALGOR_dup;
-+ d2i_ASN1_SET_OF_DIST_POINT;
-+ i2d_ASN1_SET_OF_DIST_POINT;
-+ i2d_CRL_DIST_POINTS;
-+ CRL_DIST_POINTS_new;
-+ CRL_DIST_POINTS_free;
-+ d2i_CRL_DIST_POINTS;
-+ i2d_DIST_POINT;
-+ DIST_POINT_new;
-+ d2i_DIST_POINT;
-+ DIST_POINT_free;
-+ i2d_DIST_POINT_NAME;
-+ DIST_POINT_NAME_new;
-+ DIST_POINT_NAME_free;
-+ d2i_DIST_POINT_NAME;
-+ X509V3_add_value_uchar;
-+ d2i_ASN1_SET_OF_X509_ATTRIBUTE;
-+ i2d_ASN1_SET_OF_ASN1_TYPE;
-+ d2i_ASN1_SET_OF_X509_EXTENSION;
-+ d2i_ASN1_SET_OF_X509_NAME_ENTRY;
-+ d2i_ASN1_SET_OF_ASN1_TYPE;
-+ i2d_ASN1_SET_OF_X509_ATTRIBUTE;
-+ i2d_ASN1_SET_OF_X509_EXTENSION;
-+ i2d_ASN1_SET_OF_X509_NAME_ENTRY;
-+ X509V3_EXT_i2d;
-+ X509V3_EXT_val_prn;
-+ X509V3_EXT_add_list;
-+ EVP_CIPHER_type;
-+ EVP_PBE_CipherInit;
-+ X509V3_add_value_bool_nf;
-+ d2i_ASN1_UINTEGER;
-+ sk_value;
-+ sk_num;
-+ sk_set;
-+ i2d_ASN1_SET_OF_X509_REVOKED;
-+ sk_sort;
-+ d2i_ASN1_SET_OF_X509_REVOKED;
-+ i2d_ASN1_SET_OF_X509_ALGOR;
-+ i2d_ASN1_SET_OF_X509_CRL;
-+ d2i_ASN1_SET_OF_X509_ALGOR;
-+ d2i_ASN1_SET_OF_X509_CRL;
-+ i2d_ASN1_SET_OF_PKCS7_SIGNER_INFO;
-+ i2d_ASN1_SET_OF_PKCS7_RECIP_INFO;
-+ d2i_ASN1_SET_OF_PKCS7_SIGNER_INFO;
-+ d2i_ASN1_SET_OF_PKCS7_RECIP_INFO;
-+ PKCS5_PBE_add;
-+ PEM_write_bio_PKCS8;
-+ i2d_PKCS8_fp;
-+ PEM_read_bio_PKCS8_PRIV_KEY_INFO;
-+ PEM_read_bio_P8_PRIV_KEY_INFO;
-+ d2i_PKCS8_bio;
-+ d2i_PKCS8_PRIV_KEY_INFO_fp;
-+ PEM_write_bio_PKCS8_PRIV_KEY_INFO;
-+ PEM_write_bio_P8_PRIV_KEY_INFO;
-+ PEM_read_PKCS8;
-+ d2i_PKCS8_PRIV_KEY_INFO_bio;
-+ d2i_PKCS8_fp;
-+ PEM_write_PKCS8;
-+ PEM_read_PKCS8_PRIV_KEY_INFO;
-+ PEM_read_P8_PRIV_KEY_INFO;
-+ PEM_read_bio_PKCS8;
-+ PEM_write_PKCS8_PRIV_KEY_INFO;
-+ PEM_write_P8_PRIV_KEY_INFO;
-+ PKCS5_PBE_keyivgen;
-+ i2d_PKCS8_bio;
-+ i2d_PKCS8_PRIV_KEY_INFO_fp;
-+ i2d_PKCS8_PRIV_KEY_INFO_bio;
-+ BIO_s_bio;
-+ PKCS5_pbe2_set;
-+ PKCS5_PBKDF2_HMAC_SHA1;
-+ PKCS5_v2_PBE_keyivgen;
-+ PEM_write_bio_PKCS8PrivateKey;
-+ PEM_write_PKCS8PrivateKey;
-+ BIO_ctrl_get_read_request;
-+ BIO_ctrl_pending;
-+ BIO_ctrl_wpending;
-+ BIO_new_bio_pair;
-+ BIO_ctrl_get_write_guarantee;
-+ CRYPTO_num_locks;
-+ CONF_load_bio;
-+ CONF_load_fp;
-+ i2d_ASN1_SET_OF_ASN1_OBJECT;
-+ d2i_ASN1_SET_OF_ASN1_OBJECT;
-+ PKCS7_signatureVerify;
-+ RSA_set_method;
-+ RSA_get_method;
-+ RSA_get_default_method;
-+ RSA_check_key;
-+ OBJ_obj2txt;
-+ DSA_dup_DH;
-+ X509_REQ_get_extensions;
-+ X509_REQ_set_extension_nids;
-+ BIO_nwrite;
-+ X509_REQ_extension_nid;
-+ BIO_nread;
-+ X509_REQ_get_extension_nids;
-+ BIO_nwrite0;
-+ X509_REQ_add_extensions_nid;
-+ BIO_nread0;
-+ X509_REQ_add_extensions;
-+ BIO_new_mem_buf;
-+ DH_set_ex_data;
-+ DH_set_method;
-+ DSA_OpenSSL;
-+ DH_get_ex_data;
-+ DH_get_ex_new_index;
-+ DSA_new_method;
-+ DH_new_method;
-+ DH_OpenSSL;
-+ DSA_get_ex_new_index;
-+ DH_get_default_method;
-+ DSA_set_ex_data;
-+ DH_set_default_method;
-+ DSA_get_ex_data;
-+ X509V3_EXT_REQ_add_conf;
-+ NETSCAPE_SPKI_print;
-+ NETSCAPE_SPKI_set_pubkey;
-+ NETSCAPE_SPKI_b64_encode;
-+ NETSCAPE_SPKI_get_pubkey;
-+ NETSCAPE_SPKI_b64_decode;
-+ UTF8_putc;
-+ UTF8_getc;
-+ RSA_null_method;
-+ ASN1_tag2str;
-+ BIO_ctrl_reset_read_request;
-+ DISPLAYTEXT_new;
-+ ASN1_GENERALIZEDTIME_free;
-+ X509_REVOKED_get_ext_d2i;
-+ X509_set_ex_data;
-+ X509_reject_set_bit_asc;
-+ X509_NAME_add_entry_by_txt;
-+ X509_NAME_add_entry_by_NID;
-+ X509_PURPOSE_get0;
-+ PEM_read_X509_AUX;
-+ d2i_AUTHORITY_INFO_ACCESS;
-+ PEM_write_PUBKEY;
-+ ACCESS_DESCRIPTION_new;
-+ X509_CERT_AUX_free;
-+ d2i_ACCESS_DESCRIPTION;
-+ X509_trust_clear;
-+ X509_TRUST_add;
-+ ASN1_VISIBLESTRING_new;
-+ X509_alias_set1;
-+ ASN1_PRINTABLESTRING_free;
-+ EVP_PKEY_get1_DSA;
-+ ASN1_BMPSTRING_new;
-+ ASN1_mbstring_copy;
-+ ASN1_UTF8STRING_new;
-+ DSA_get_default_method;
-+ i2d_ASN1_SET_OF_ACCESS_DESCRIPTION;
-+ ASN1_T61STRING_free;
-+ DSA_set_method;
-+ X509_get_ex_data;
-+ ASN1_STRING_type;
-+ X509_PURPOSE_get_by_sname;
-+ ASN1_TIME_free;
-+ ASN1_OCTET_STRING_cmp;
-+ ASN1_BIT_STRING_new;
-+ X509_get_ext_d2i;
-+ PEM_read_bio_X509_AUX;
-+ ASN1_STRING_set_default_mask_asc;
-+ ASN1_STRING_set_def_mask_asc;
-+ PEM_write_bio_RSA_PUBKEY;
-+ ASN1_INTEGER_cmp;
-+ d2i_RSA_PUBKEY_fp;
-+ X509_trust_set_bit_asc;
-+ PEM_write_bio_DSA_PUBKEY;
-+ X509_STORE_CTX_free;
-+ EVP_PKEY_set1_DSA;
-+ i2d_DSA_PUBKEY_fp;
-+ X509_load_cert_crl_file;
-+ ASN1_TIME_new;
-+ i2d_RSA_PUBKEY;
-+ X509_STORE_CTX_purpose_inherit;
-+ PEM_read_RSA_PUBKEY;
-+ d2i_X509_AUX;
-+ i2d_DSA_PUBKEY;
-+ X509_CERT_AUX_print;
-+ PEM_read_DSA_PUBKEY;
-+ i2d_RSA_PUBKEY_bio;
-+ ASN1_BIT_STRING_num_asc;
-+ i2d_PUBKEY;
-+ ASN1_UTCTIME_free;
-+ DSA_set_default_method;
-+ X509_PURPOSE_get_by_id;
-+ ACCESS_DESCRIPTION_free;
-+ PEM_read_bio_PUBKEY;
-+ ASN1_STRING_set_by_NID;
-+ X509_PURPOSE_get_id;
-+ DISPLAYTEXT_free;
-+ OTHERNAME_new;
-+ X509_CERT_AUX_new;
-+ X509_TRUST_cleanup;
-+ X509_NAME_add_entry_by_OBJ;
-+ X509_CRL_get_ext_d2i;
-+ X509_PURPOSE_get0_name;
-+ PEM_read_PUBKEY;
-+ i2d_DSA_PUBKEY_bio;
-+ i2d_OTHERNAME;
-+ ASN1_OCTET_STRING_free;
-+ ASN1_BIT_STRING_set_asc;
-+ X509_get_ex_new_index;
-+ ASN1_STRING_TABLE_cleanup;
-+ X509_TRUST_get_by_id;
-+ X509_PURPOSE_get_trust;
-+ ASN1_STRING_length;
-+ d2i_ASN1_SET_OF_ACCESS_DESCRIPTION;
-+ ASN1_PRINTABLESTRING_new;
-+ X509V3_get_d2i;
-+ ASN1_ENUMERATED_free;
-+ i2d_X509_CERT_AUX;
-+ X509_STORE_CTX_set_trust;
-+ ASN1_STRING_set_default_mask;
-+ X509_STORE_CTX_new;
-+ EVP_PKEY_get1_RSA;
-+ DIRECTORYSTRING_free;
-+ PEM_write_X509_AUX;
-+ ASN1_OCTET_STRING_set;
-+ d2i_DSA_PUBKEY_fp;
-+ d2i_RSA_PUBKEY;
-+ X509_TRUST_get0_name;
-+ X509_TRUST_get0;
-+ AUTHORITY_INFO_ACCESS_free;
-+ ASN1_IA5STRING_new;
-+ d2i_DSA_PUBKEY;
-+ X509_check_purpose;
-+ ASN1_ENUMERATED_new;
-+ d2i_RSA_PUBKEY_bio;
-+ d2i_PUBKEY;
-+ X509_TRUST_get_trust;
-+ X509_TRUST_get_flags;
-+ ASN1_BMPSTRING_free;
-+ ASN1_T61STRING_new;
-+ ASN1_UTCTIME_new;
-+ i2d_AUTHORITY_INFO_ACCESS;
-+ EVP_PKEY_set1_RSA;
-+ X509_STORE_CTX_set_purpose;
-+ ASN1_IA5STRING_free;
-+ PEM_write_bio_X509_AUX;
-+ X509_PURPOSE_get_count;
-+ CRYPTO_add_info;
-+ X509_NAME_ENTRY_create_by_txt;
-+ ASN1_STRING_get_default_mask;
-+ X509_alias_get0;
-+ ASN1_STRING_data;
-+ i2d_ACCESS_DESCRIPTION;
-+ X509_trust_set_bit;
-+ ASN1_BIT_STRING_free;
-+ PEM_read_bio_RSA_PUBKEY;
-+ X509_add1_reject_object;
-+ X509_check_trust;
-+ PEM_read_bio_DSA_PUBKEY;
-+ X509_PURPOSE_add;
-+ ASN1_STRING_TABLE_get;
-+ ASN1_UTF8STRING_free;
-+ d2i_DSA_PUBKEY_bio;
-+ PEM_write_RSA_PUBKEY;
-+ d2i_OTHERNAME;
-+ X509_reject_set_bit;
-+ PEM_write_DSA_PUBKEY;
-+ X509_PURPOSE_get0_sname;
-+ EVP_PKEY_set1_DH;
-+ ASN1_OCTET_STRING_dup;
-+ ASN1_BIT_STRING_set;
-+ X509_TRUST_get_count;
-+ ASN1_INTEGER_free;
-+ OTHERNAME_free;
-+ i2d_RSA_PUBKEY_fp;
-+ ASN1_INTEGER_dup;
-+ d2i_X509_CERT_AUX;
-+ PEM_write_bio_PUBKEY;
-+ ASN1_VISIBLESTRING_free;
-+ X509_PURPOSE_cleanup;
-+ ASN1_mbstring_ncopy;
-+ ASN1_GENERALIZEDTIME_new;
-+ EVP_PKEY_get1_DH;
-+ ASN1_OCTET_STRING_new;
-+ ASN1_INTEGER_new;
-+ i2d_X509_AUX;
-+ ASN1_BIT_STRING_name_print;
-+ X509_cmp;
-+ ASN1_STRING_length_set;
-+ DIRECTORYSTRING_new;
-+ X509_add1_trust_object;
-+ PKCS12_newpass;
-+ SMIME_write_PKCS7;
-+ SMIME_read_PKCS7;
-+ DES_set_key_checked;
-+ PKCS7_verify;
-+ PKCS7_encrypt;
-+ DES_set_key_unchecked;
-+ SMIME_crlf_copy;
-+ i2d_ASN1_PRINTABLESTRING;
-+ PKCS7_get0_signers;
-+ PKCS7_decrypt;
-+ SMIME_text;
-+ PKCS7_simple_smimecap;
-+ PKCS7_get_smimecap;
-+ PKCS7_sign;
-+ PKCS7_add_attrib_smimecap;
-+ CRYPTO_dbg_set_options;
-+ CRYPTO_remove_all_info;
-+ CRYPTO_get_mem_debug_functions;
-+ CRYPTO_is_mem_check_on;
-+ CRYPTO_set_mem_debug_functions;
-+ CRYPTO_pop_info;
-+ CRYPTO_push_info_;
-+ CRYPTO_set_mem_debug_options;
-+ PEM_write_PKCS8PrivateKey_nid;
-+ PEM_write_bio_PKCS8PrivateKey_nid;
-+ PEM_write_bio_PKCS8PrivKey_nid;
-+ d2i_PKCS8PrivateKey_bio;
-+ ASN1_NULL_free;
-+ d2i_ASN1_NULL;
-+ ASN1_NULL_new;
-+ i2d_PKCS8PrivateKey_bio;
-+ i2d_PKCS8PrivateKey_fp;
-+ i2d_ASN1_NULL;
-+ i2d_PKCS8PrivateKey_nid_fp;
-+ d2i_PKCS8PrivateKey_fp;
-+ i2d_PKCS8PrivateKey_nid_bio;
-+ i2d_PKCS8PrivateKeyInfo_fp;
-+ i2d_PKCS8PrivateKeyInfo_bio;
-+ PEM_cb;
-+ i2d_PrivateKey_fp;
-+ d2i_PrivateKey_bio;
-+ d2i_PrivateKey_fp;
-+ i2d_PrivateKey_bio;
-+ X509_reject_clear;
-+ X509_TRUST_set_default;
-+ d2i_AutoPrivateKey;
-+ X509_ATTRIBUTE_get0_type;
-+ X509_ATTRIBUTE_set1_data;
-+ X509at_get_attr;
-+ X509at_get_attr_count;
-+ X509_ATTRIBUTE_create_by_NID;
-+ X509_ATTRIBUTE_set1_object;
-+ X509_ATTRIBUTE_count;
-+ X509_ATTRIBUTE_create_by_OBJ;
-+ X509_ATTRIBUTE_get0_object;
-+ X509at_get_attr_by_NID;
-+ X509at_add1_attr;
-+ X509_ATTRIBUTE_get0_data;
-+ X509at_delete_attr;
-+ X509at_get_attr_by_OBJ;
-+ RAND_add;
-+ BIO_number_written;
-+ BIO_number_read;
-+ X509_STORE_CTX_get1_chain;
-+ ERR_load_RAND_strings;
-+ RAND_pseudo_bytes;
-+ X509_REQ_get_attr_by_NID;
-+ X509_REQ_get_attr;
-+ X509_REQ_add1_attr_by_NID;
-+ X509_REQ_get_attr_by_OBJ;
-+ X509at_add1_attr_by_NID;
-+ X509_REQ_add1_attr_by_OBJ;
-+ X509_REQ_get_attr_count;
-+ X509_REQ_add1_attr;
-+ X509_REQ_delete_attr;
-+ X509at_add1_attr_by_OBJ;
-+ X509_REQ_add1_attr_by_txt;
-+ X509_ATTRIBUTE_create_by_txt;
-+ X509at_add1_attr_by_txt;
-+ BN_pseudo_rand;
-+ BN_is_prime_fasttest;
-+ BN_CTX_end;
-+ BN_CTX_start;
-+ BN_CTX_get;
-+ EVP_PKEY2PKCS8_broken;
-+ ASN1_STRING_TABLE_add;
-+ CRYPTO_dbg_get_options;
-+ AUTHORITY_INFO_ACCESS_new;
-+ CRYPTO_get_mem_debug_options;
-+ DES_crypt;
-+ PEM_write_bio_X509_REQ_NEW;
-+ PEM_write_X509_REQ_NEW;
-+ BIO_callback_ctrl;
-+ RAND_egd;
-+ RAND_status;
-+ bn_dump1;
-+ DES_check_key_parity;
-+ lh_num_items;
-+ RAND_event;
-+ DSO_new;
-+ DSO_new_method;
-+ DSO_free;
-+ DSO_flags;
-+ DSO_up;
-+ DSO_set_default_method;
-+ DSO_get_default_method;
-+ DSO_get_method;
-+ DSO_set_method;
-+ DSO_load;
-+ DSO_bind_var;
-+ DSO_METHOD_null;
-+ DSO_METHOD_openssl;
-+ DSO_METHOD_dlfcn;
-+ DSO_METHOD_win32;
-+ ERR_load_DSO_strings;
-+ DSO_METHOD_dl;
-+ NCONF_load;
-+ NCONF_load_fp;
-+ NCONF_new;
-+ NCONF_get_string;
-+ NCONF_free;
-+ NCONF_get_number;
-+ CONF_dump_fp;
-+ NCONF_load_bio;
-+ NCONF_dump_fp;
-+ NCONF_get_section;
-+ NCONF_dump_bio;
-+ CONF_dump_bio;
-+ NCONF_free_data;
-+ CONF_set_default_method;
-+ ERR_error_string_n;
-+ BIO_snprintf;
-+ DSO_ctrl;
-+ i2d_ASN1_SET_OF_ASN1_INTEGER;
-+ i2d_ASN1_SET_OF_PKCS12_SAFEBAG;
-+ i2d_ASN1_SET_OF_PKCS7;
-+ BIO_vfree;
-+ d2i_ASN1_SET_OF_ASN1_INTEGER;
-+ d2i_ASN1_SET_OF_PKCS12_SAFEBAG;
-+ ASN1_UTCTIME_get;
-+ X509_REQ_digest;
-+ X509_CRL_digest;
-+ d2i_ASN1_SET_OF_PKCS7;
-+ EVP_CIPHER_CTX_set_key_length;
-+ EVP_CIPHER_CTX_ctrl;
-+ BN_mod_exp_mont_word;
-+ RAND_egd_bytes;
-+ X509_REQ_get1_email;
-+ X509_get1_email;
-+ X509_email_free;
-+ i2d_RSA_NET;
-+ d2i_RSA_NET_2;
-+ d2i_RSA_NET;
-+ DSO_bind_func;
-+ CRYPTO_get_new_dynlockid;
-+ sk_new_null;
-+ CRYPTO_set_dynlock_destroy_callback;
-+ CRYPTO_set_dynlock_destroy_cb;
-+ CRYPTO_destroy_dynlockid;
-+ CRYPTO_set_dynlock_size;
-+ CRYPTO_set_dynlock_create_callback;
-+ CRYPTO_set_dynlock_create_cb;
-+ CRYPTO_set_dynlock_lock_callback;
-+ CRYPTO_set_dynlock_lock_cb;
-+ CRYPTO_get_dynlock_lock_callback;
-+ CRYPTO_get_dynlock_lock_cb;
-+ CRYPTO_get_dynlock_destroy_callback;
-+ CRYPTO_get_dynlock_destroy_cb;
-+ CRYPTO_get_dynlock_value;
-+ CRYPTO_get_dynlock_create_callback;
-+ CRYPTO_get_dynlock_create_cb;
-+ c2i_ASN1_BIT_STRING;
-+ i2c_ASN1_BIT_STRING;
-+ RAND_poll;
-+ c2i_ASN1_INTEGER;
-+ i2c_ASN1_INTEGER;
-+ BIO_dump_indent;
-+ ASN1_parse_dump;
-+ c2i_ASN1_OBJECT;
-+ X509_NAME_print_ex_fp;
-+ ASN1_STRING_print_ex_fp;
-+ X509_NAME_print_ex;
-+ ASN1_STRING_print_ex;
-+ MD4;
-+ MD4_Transform;
-+ MD4_Final;
-+ MD4_Update;
-+ MD4_Init;
-+ EVP_md4;
-+ i2d_PUBKEY_bio;
-+ i2d_PUBKEY_fp;
-+ d2i_PUBKEY_bio;
-+ ASN1_STRING_to_UTF8;
-+ BIO_vprintf;
-+ BIO_vsnprintf;
-+ d2i_PUBKEY_fp;
-+ X509_cmp_time;
-+ X509_STORE_CTX_set_time;
-+ X509_STORE_CTX_get1_issuer;
-+ X509_OBJECT_retrieve_match;
-+ X509_OBJECT_idx_by_subject;
-+ X509_STORE_CTX_set_flags;
-+ X509_STORE_CTX_trusted_stack;
-+ X509_time_adj;
-+ X509_check_issued;
-+ ASN1_UTCTIME_cmp_time_t;
-+ DES_set_weak_key_flag;
-+ DES_check_key;
-+ DES_rw_mode;
-+ RSA_PKCS1_RSAref;
-+ X509_keyid_set1;
-+ BIO_next;
-+ DSO_METHOD_vms;
-+ BIO_f_linebuffer;
-+ BN_bntest_rand;
-+ OPENSSL_issetugid;
-+ BN_rand_range;
-+ ERR_load_ENGINE_strings;
-+ ENGINE_set_DSA;
-+ ENGINE_get_finish_function;
-+ ENGINE_get_default_RSA;
-+ ENGINE_get_BN_mod_exp;
-+ DSA_get_default_openssl_method;
-+ ENGINE_set_DH;
-+ ENGINE_set_def_BN_mod_exp_crt;
-+ ENGINE_set_default_BN_mod_exp_crt;
-+ ENGINE_init;
-+ DH_get_default_openssl_method;
-+ RSA_set_default_openssl_method;
-+ ENGINE_finish;
-+ ENGINE_load_public_key;
-+ ENGINE_get_DH;
-+ ENGINE_ctrl;
-+ ENGINE_get_init_function;
-+ ENGINE_set_init_function;
-+ ENGINE_set_default_DSA;
-+ ENGINE_get_name;
-+ ENGINE_get_last;
-+ ENGINE_get_prev;
-+ ENGINE_get_default_DH;
-+ ENGINE_get_RSA;
-+ ENGINE_set_default;
-+ ENGINE_get_RAND;
-+ ENGINE_get_first;
-+ ENGINE_by_id;
-+ ENGINE_set_finish_function;
-+ ENGINE_get_def_BN_mod_exp_crt;
-+ ENGINE_get_default_BN_mod_exp_crt;
-+ RSA_get_default_openssl_method;
-+ ENGINE_set_RSA;
-+ ENGINE_load_private_key;
-+ ENGINE_set_default_RAND;
-+ ENGINE_set_BN_mod_exp;
-+ ENGINE_remove;
-+ ENGINE_free;
-+ ENGINE_get_BN_mod_exp_crt;
-+ ENGINE_get_next;
-+ ENGINE_set_name;
-+ ENGINE_get_default_DSA;
-+ ENGINE_set_default_BN_mod_exp;
-+ ENGINE_set_default_RSA;
-+ ENGINE_get_default_RAND;
-+ ENGINE_get_default_BN_mod_exp;
-+ ENGINE_set_RAND;
-+ ENGINE_set_id;
-+ ENGINE_set_BN_mod_exp_crt;
-+ ENGINE_set_default_DH;
-+ ENGINE_new;
-+ ENGINE_get_id;
-+ DSA_set_default_openssl_method;
-+ ENGINE_add;
-+ DH_set_default_openssl_method;
-+ ENGINE_get_DSA;
-+ ENGINE_get_ctrl_function;
-+ ENGINE_set_ctrl_function;
-+ BN_pseudo_rand_range;
-+ X509_STORE_CTX_set_verify_cb;
-+ ERR_load_COMP_strings;
-+ PKCS12_item_decrypt_d2i;
-+ ASN1_UTF8STRING_it;
-+ ENGINE_unregister_ciphers;
-+ ENGINE_get_ciphers;
-+ d2i_OCSP_BASICRESP;
-+ KRB5_CHECKSUM_it;
-+ EC_POINT_add;
-+ ASN1_item_ex_i2d;
-+ OCSP_CERTID_it;
-+ d2i_OCSP_RESPBYTES;
-+ X509V3_add1_i2d;
-+ PKCS7_ENVELOPE_it;
-+ UI_add_input_boolean;
-+ ENGINE_unregister_RSA;
-+ X509V3_EXT_nconf;
-+ ASN1_GENERALSTRING_free;
-+ d2i_OCSP_CERTSTATUS;
-+ X509_REVOKED_set_serialNumber;
-+ X509_print_ex;
-+ OCSP_ONEREQ_get1_ext_d2i;
-+ ENGINE_register_all_RAND;
-+ ENGINE_load_dynamic;
-+ PBKDF2PARAM_it;
-+ EXTENDED_KEY_USAGE_new;
-+ EC_GROUP_clear_free;
-+ OCSP_sendreq_bio;
-+ ASN1_item_digest;
-+ OCSP_BASICRESP_delete_ext;
-+ OCSP_SIGNATURE_it;
-+ X509_CRL_it;
-+ OCSP_BASICRESP_add_ext;
-+ KRB5_ENCKEY_it;
-+ UI_method_set_closer;
-+ X509_STORE_set_purpose;
-+ i2d_ASN1_GENERALSTRING;
-+ OCSP_response_status;
-+ i2d_OCSP_SERVICELOC;
-+ ENGINE_get_digest_engine;
-+ EC_GROUP_set_curve_GFp;
-+ OCSP_REQUEST_get_ext_by_OBJ;
-+ _ossl_old_des_random_key;
-+ ASN1_T61STRING_it;
-+ EC_GROUP_method_of;
-+ i2d_KRB5_APREQ;
-+ _ossl_old_des_encrypt;
-+ ASN1_PRINTABLE_new;
-+ HMAC_Init_ex;
-+ d2i_KRB5_AUTHENT;
-+ OCSP_archive_cutoff_new;
-+ EC_POINT_set_Jprojective_coordinates_GFp;
-+ EC_POINT_set_Jproj_coords_GFp;
-+ _ossl_old_des_is_weak_key;
-+ OCSP_BASICRESP_get_ext_by_OBJ;
-+ EC_POINT_oct2point;
-+ OCSP_SINGLERESP_get_ext_count;
-+ UI_ctrl;
-+ _shadow_DES_rw_mode;
-+ asn1_do_adb;
-+ ASN1_template_i2d;
-+ ENGINE_register_DH;
-+ UI_construct_prompt;
-+ X509_STORE_set_trust;
-+ UI_dup_input_string;
-+ d2i_KRB5_APREQ;
-+ EVP_MD_CTX_copy_ex;
-+ OCSP_request_is_signed;
-+ i2d_OCSP_REQINFO;
-+ KRB5_ENCKEY_free;
-+ OCSP_resp_get0;
-+ GENERAL_NAME_it;
-+ ASN1_GENERALIZEDTIME_it;
-+ X509_STORE_set_flags;
-+ EC_POINT_set_compressed_coordinates_GFp;
-+ EC_POINT_set_compr_coords_GFp;
-+ OCSP_response_status_str;
-+ d2i_OCSP_REVOKEDINFO;
-+ OCSP_basic_add1_cert;
-+ ERR_get_implementation;
-+ EVP_CipherFinal_ex;
-+ OCSP_CERTSTATUS_new;
-+ CRYPTO_cleanup_all_ex_data;
-+ OCSP_resp_find;
-+ BN_nnmod;
-+ X509_CRL_sort;
-+ X509_REVOKED_set_revocationDate;
-+ ENGINE_register_RAND;
-+ OCSP_SERVICELOC_new;
-+ EC_POINT_set_affine_coordinates_GFp;
-+ EC_POINT_set_affine_coords_GFp;
-+ _ossl_old_des_options;
-+ SXNET_it;
-+ UI_dup_input_boolean;
-+ PKCS12_add_CSPName_asc;
-+ EC_POINT_is_at_infinity;
-+ ENGINE_load_cryptodev;
-+ DSO_convert_filename;
-+ POLICYQUALINFO_it;
-+ ENGINE_register_ciphers;
-+ BN_mod_lshift_quick;
-+ DSO_set_filename;
-+ ASN1_item_free;
-+ KRB5_TKTBODY_free;
-+ AUTHORITY_KEYID_it;
-+ KRB5_APREQBODY_new;
-+ X509V3_EXT_REQ_add_nconf;
-+ ENGINE_ctrl_cmd_string;
-+ i2d_OCSP_RESPDATA;
-+ EVP_MD_CTX_init;
-+ EXTENDED_KEY_USAGE_free;
-+ PKCS7_ATTR_SIGN_it;
-+ UI_add_error_string;
-+ KRB5_CHECKSUM_free;
-+ OCSP_REQUEST_get_ext;
-+ ENGINE_load_ubsec;
-+ ENGINE_register_all_digests;
-+ PKEY_USAGE_PERIOD_it;
-+ PKCS12_unpack_authsafes;
-+ ASN1_item_unpack;
-+ NETSCAPE_SPKAC_it;
-+ X509_REVOKED_it;
-+ ASN1_STRING_encode;
-+ EVP_aes_128_ecb;
-+ KRB5_AUTHENT_free;
-+ OCSP_BASICRESP_get_ext_by_critical;
-+ OCSP_BASICRESP_get_ext_by_crit;
-+ OCSP_cert_status_str;
-+ d2i_OCSP_REQUEST;
-+ UI_dup_info_string;
-+ _ossl_old_des_xwhite_in2out;
-+ PKCS12_it;
-+ OCSP_SINGLERESP_get_ext_by_critical;
-+ OCSP_SINGLERESP_get_ext_by_crit;
-+ OCSP_CERTSTATUS_free;
-+ _ossl_old_des_crypt;
-+ ASN1_item_i2d;
-+ EVP_DecryptFinal_ex;
-+ ENGINE_load_openssl;
-+ ENGINE_get_cmd_defns;
-+ ENGINE_set_load_privkey_function;
-+ ENGINE_set_load_privkey_fn;
-+ EVP_EncryptFinal_ex;
-+ ENGINE_set_default_digests;
-+ X509_get0_pubkey_bitstr;
-+ asn1_ex_i2c;
-+ ENGINE_register_RSA;
-+ ENGINE_unregister_DSA;
-+ _ossl_old_des_key_sched;
-+ X509_EXTENSION_it;
-+ i2d_KRB5_AUTHENT;
-+ SXNETID_it;
-+ d2i_OCSP_SINGLERESP;
-+ EDIPARTYNAME_new;
-+ PKCS12_certbag2x509;
-+ _ossl_old_des_ofb64_encrypt;
-+ d2i_EXTENDED_KEY_USAGE;
-+ ERR_print_errors_cb;
-+ ENGINE_set_ciphers;
-+ d2i_KRB5_APREQBODY;
-+ UI_method_get_flusher;
-+ X509_PUBKEY_it;
-+ _ossl_old_des_enc_read;
-+ PKCS7_ENCRYPT_it;
-+ i2d_OCSP_RESPONSE;
-+ EC_GROUP_get_cofactor;
-+ PKCS12_unpack_p7data;
-+ d2i_KRB5_AUTHDATA;
-+ OCSP_copy_nonce;
-+ KRB5_AUTHDATA_new;
-+ OCSP_RESPDATA_new;
-+ EC_GFp_mont_method;
-+ OCSP_REVOKEDINFO_free;
-+ UI_get_ex_data;
-+ KRB5_APREQBODY_free;
-+ EC_GROUP_get0_generator;
-+ UI_get_default_method;
-+ X509V3_set_nconf;
-+ PKCS12_item_i2d_encrypt;
-+ X509_add1_ext_i2d;
-+ PKCS7_SIGNER_INFO_it;
-+ KRB5_PRINCNAME_new;
-+ PKCS12_SAFEBAG_it;
-+ EC_GROUP_get_order;
-+ d2i_OCSP_RESPID;
-+ OCSP_request_verify;
-+ NCONF_get_number_e;
-+ _ossl_old_des_decrypt3;
-+ X509_signature_print;
-+ OCSP_SINGLERESP_free;
-+ ENGINE_load_builtin_engines;
-+ i2d_OCSP_ONEREQ;
-+ OCSP_REQUEST_add_ext;
-+ OCSP_RESPBYTES_new;
-+ EVP_MD_CTX_create;
-+ OCSP_resp_find_status;
-+ X509_ALGOR_it;
-+ ASN1_TIME_it;
-+ OCSP_request_set1_name;
-+ OCSP_ONEREQ_get_ext_count;
-+ UI_get0_result;
-+ PKCS12_AUTHSAFES_it;
-+ EVP_aes_256_ecb;
-+ PKCS12_pack_authsafes;
-+ ASN1_IA5STRING_it;
-+ UI_get_input_flags;
-+ EC_GROUP_set_generator;
-+ _ossl_old_des_string_to_2keys;
-+ OCSP_CERTID_free;
-+ X509_CERT_AUX_it;
-+ CERTIFICATEPOLICIES_it;
-+ _ossl_old_des_ede3_cbc_encrypt;
-+ RAND_set_rand_engine;
-+ DSO_get_loaded_filename;
-+ X509_ATTRIBUTE_it;
-+ OCSP_ONEREQ_get_ext_by_NID;
-+ PKCS12_decrypt_skey;
-+ KRB5_AUTHENT_it;
-+ UI_dup_error_string;
-+ RSAPublicKey_it;
-+ i2d_OCSP_REQUEST;
-+ PKCS12_x509crl2certbag;
-+ OCSP_SERVICELOC_it;
-+ ASN1_item_sign;
-+ X509_CRL_set_issuer_name;
-+ OBJ_NAME_do_all_sorted;
-+ i2d_OCSP_BASICRESP;
-+ i2d_OCSP_RESPBYTES;
-+ PKCS12_unpack_p7encdata;
-+ HMAC_CTX_init;
-+ ENGINE_get_digest;
-+ OCSP_RESPONSE_print;
-+ KRB5_TKTBODY_it;
-+ ACCESS_DESCRIPTION_it;
-+ PKCS7_ISSUER_AND_SERIAL_it;
-+ PBE2PARAM_it;
-+ PKCS12_certbag2x509crl;
-+ PKCS7_SIGNED_it;
-+ ENGINE_get_cipher;
-+ i2d_OCSP_CRLID;
-+ OCSP_SINGLERESP_new;
-+ ENGINE_cmd_is_executable;
-+ RSA_up_ref;
-+ ASN1_GENERALSTRING_it;
-+ ENGINE_register_DSA;
-+ X509V3_EXT_add_nconf_sk;
-+ ENGINE_set_load_pubkey_function;
-+ PKCS8_decrypt;
-+ PEM_bytes_read_bio;
-+ DIRECTORYSTRING_it;
-+ d2i_OCSP_CRLID;
-+ EC_POINT_is_on_curve;
-+ CRYPTO_set_locked_mem_ex_functions;
-+ CRYPTO_set_locked_mem_ex_funcs;
-+ d2i_KRB5_CHECKSUM;
-+ ASN1_item_dup;
-+ X509_it;
-+ BN_mod_add;
-+ KRB5_AUTHDATA_free;
-+ _ossl_old_des_cbc_cksum;
-+ ASN1_item_verify;
-+ CRYPTO_set_mem_ex_functions;
-+ EC_POINT_get_Jprojective_coordinates_GFp;
-+ EC_POINT_get_Jproj_coords_GFp;
-+ ZLONG_it;
-+ CRYPTO_get_locked_mem_ex_functions;
-+ CRYPTO_get_locked_mem_ex_funcs;
-+ ASN1_TIME_check;
-+ UI_get0_user_data;
-+ HMAC_CTX_cleanup;
-+ DSA_up_ref;
-+ _ossl_old_des_ede3_cfb64_encrypt;
-+ _ossl_odes_ede3_cfb64_encrypt;
-+ ASN1_BMPSTRING_it;
-+ ASN1_tag2bit;
-+ UI_method_set_flusher;
-+ X509_ocspid_print;
-+ KRB5_ENCDATA_it;
-+ ENGINE_get_load_pubkey_function;
-+ UI_add_user_data;
-+ OCSP_REQUEST_delete_ext;
-+ UI_get_method;
-+ OCSP_ONEREQ_free;
-+ ASN1_PRINTABLESTRING_it;
-+ X509_CRL_set_nextUpdate;
-+ OCSP_REQUEST_it;
-+ OCSP_BASICRESP_it;
-+ AES_ecb_encrypt;
-+ BN_mod_sqr;
-+ NETSCAPE_CERT_SEQUENCE_it;
-+ GENERAL_NAMES_it;
-+ AUTHORITY_INFO_ACCESS_it;
-+ ASN1_FBOOLEAN_it;
-+ UI_set_ex_data;
-+ _ossl_old_des_string_to_key;
-+ ENGINE_register_all_RSA;
-+ d2i_KRB5_PRINCNAME;
-+ OCSP_RESPBYTES_it;
-+ X509_CINF_it;
-+ ENGINE_unregister_digests;
-+ d2i_EDIPARTYNAME;
-+ d2i_OCSP_SERVICELOC;
-+ ENGINE_get_digests;
-+ _ossl_old_des_set_odd_parity;
-+ OCSP_RESPDATA_free;
-+ d2i_KRB5_TICKET;
-+ OTHERNAME_it;
-+ EVP_MD_CTX_cleanup;
-+ d2i_ASN1_GENERALSTRING;
-+ X509_CRL_set_version;
-+ BN_mod_sub;
-+ OCSP_SINGLERESP_get_ext_by_NID;
-+ ENGINE_get_ex_new_index;
-+ OCSP_REQUEST_free;
-+ OCSP_REQUEST_add1_ext_i2d;
-+ X509_VAL_it;
-+ EC_POINTs_make_affine;
-+ EC_POINT_mul;
-+ X509V3_EXT_add_nconf;
-+ X509_TRUST_set;
-+ X509_CRL_add1_ext_i2d;
-+ _ossl_old_des_fcrypt;
-+ DISPLAYTEXT_it;
-+ X509_CRL_set_lastUpdate;
-+ OCSP_BASICRESP_free;
-+ OCSP_BASICRESP_add1_ext_i2d;
-+ d2i_KRB5_AUTHENTBODY;
-+ CRYPTO_set_ex_data_implementation;
-+ CRYPTO_set_ex_data_impl;
-+ KRB5_ENCDATA_new;
-+ DSO_up_ref;
-+ OCSP_crl_reason_str;
-+ UI_get0_result_string;
-+ ASN1_GENERALSTRING_new;
-+ X509_SIG_it;
-+ ERR_set_implementation;
-+ ERR_load_EC_strings;
-+ UI_get0_action_string;
-+ OCSP_ONEREQ_get_ext;
-+ EC_POINT_method_of;
-+ i2d_KRB5_APREQBODY;
-+ _ossl_old_des_ecb3_encrypt;
-+ CRYPTO_get_mem_ex_functions;
-+ ENGINE_get_ex_data;
-+ UI_destroy_method;
-+ ASN1_item_i2d_bio;
-+ OCSP_ONEREQ_get_ext_by_OBJ;
-+ ASN1_primitive_new;
-+ ASN1_PRINTABLE_it;
-+ EVP_aes_192_ecb;
-+ OCSP_SIGNATURE_new;
-+ LONG_it;
-+ ASN1_VISIBLESTRING_it;
-+ OCSP_SINGLERESP_add1_ext_i2d;
-+ d2i_OCSP_CERTID;
-+ ASN1_item_d2i_fp;
-+ CRL_DIST_POINTS_it;
-+ GENERAL_NAME_print;
-+ OCSP_SINGLERESP_delete_ext;
-+ PKCS12_SAFEBAGS_it;
-+ d2i_OCSP_SIGNATURE;
-+ OCSP_request_add1_nonce;
-+ ENGINE_set_cmd_defns;
-+ OCSP_SERVICELOC_free;
-+ EC_GROUP_free;
-+ ASN1_BIT_STRING_it;
-+ X509_REQ_it;
-+ _ossl_old_des_cbc_encrypt;
-+ ERR_unload_strings;
-+ PKCS7_SIGN_ENVELOPE_it;
-+ EDIPARTYNAME_free;
-+ OCSP_REQINFO_free;
-+ EC_GROUP_new_curve_GFp;
-+ OCSP_REQUEST_get1_ext_d2i;
-+ PKCS12_item_pack_safebag;
-+ asn1_ex_c2i;
-+ ENGINE_register_digests;
-+ i2d_OCSP_REVOKEDINFO;
-+ asn1_enc_restore;
-+ UI_free;
-+ UI_new_method;
-+ EVP_EncryptInit_ex;
-+ X509_pubkey_digest;
-+ EC_POINT_invert;
-+ OCSP_basic_sign;
-+ i2d_OCSP_RESPID;
-+ OCSP_check_nonce;
-+ ENGINE_ctrl_cmd;
-+ d2i_KRB5_ENCKEY;
-+ OCSP_parse_url;
-+ OCSP_SINGLERESP_get_ext;
-+ OCSP_CRLID_free;
-+ OCSP_BASICRESP_get1_ext_d2i;
-+ RSAPrivateKey_it;
-+ ENGINE_register_all_DH;
-+ i2d_EDIPARTYNAME;
-+ EC_POINT_get_affine_coordinates_GFp;
-+ EC_POINT_get_affine_coords_GFp;
-+ OCSP_CRLID_new;
-+ ENGINE_get_flags;
-+ OCSP_ONEREQ_it;
-+ UI_process;
-+ ASN1_INTEGER_it;
-+ EVP_CipherInit_ex;
-+ UI_get_string_type;
-+ ENGINE_unregister_DH;
-+ ENGINE_register_all_DSA;
-+ OCSP_ONEREQ_get_ext_by_critical;
-+ bn_dup_expand;
-+ OCSP_cert_id_new;
-+ BASIC_CONSTRAINTS_it;
-+ BN_mod_add_quick;
-+ EC_POINT_new;
-+ EVP_MD_CTX_destroy;
-+ OCSP_RESPBYTES_free;
-+ EVP_aes_128_cbc;
-+ OCSP_SINGLERESP_get1_ext_d2i;
-+ EC_POINT_free;
-+ DH_up_ref;
-+ X509_NAME_ENTRY_it;
-+ UI_get_ex_new_index;
-+ BN_mod_sub_quick;
-+ OCSP_ONEREQ_add_ext;
-+ OCSP_request_sign;
-+ EVP_DigestFinal_ex;
-+ ENGINE_set_digests;
-+ OCSP_id_issuer_cmp;
-+ OBJ_NAME_do_all;
-+ EC_POINTs_mul;
-+ ENGINE_register_complete;
-+ X509V3_EXT_nconf_nid;
-+ ASN1_SEQUENCE_it;
-+ UI_set_default_method;
-+ RAND_query_egd_bytes;
-+ UI_method_get_writer;
-+ UI_OpenSSL;
-+ PEM_def_callback;
-+ ENGINE_cleanup;
-+ DIST_POINT_it;
-+ OCSP_SINGLERESP_it;
-+ d2i_KRB5_TKTBODY;
-+ EC_POINT_cmp;
-+ OCSP_REVOKEDINFO_new;
-+ i2d_OCSP_CERTSTATUS;
-+ OCSP_basic_add1_nonce;
-+ ASN1_item_ex_d2i;
-+ BN_mod_lshift1_quick;
-+ UI_set_method;
-+ OCSP_id_get0_info;
-+ BN_mod_sqrt;
-+ EC_GROUP_copy;
-+ KRB5_ENCDATA_free;
-+ _ossl_old_des_cfb_encrypt;
-+ OCSP_SINGLERESP_get_ext_by_OBJ;
-+ OCSP_cert_to_id;
-+ OCSP_RESPID_new;
-+ OCSP_RESPDATA_it;
-+ d2i_OCSP_RESPDATA;
-+ ENGINE_register_all_complete;
-+ OCSP_check_validity;
-+ PKCS12_BAGS_it;
-+ OCSP_url_svcloc_new;
-+ ASN1_template_free;
-+ OCSP_SINGLERESP_add_ext;
-+ KRB5_AUTHENTBODY_it;
-+ X509_supported_extension;
-+ i2d_KRB5_AUTHDATA;
-+ UI_method_get_opener;
-+ ENGINE_set_ex_data;
-+ OCSP_REQUEST_print;
-+ CBIGNUM_it;
-+ KRB5_TICKET_new;
-+ KRB5_APREQ_new;
-+ EC_GROUP_get_curve_GFp;
-+ KRB5_ENCKEY_new;
-+ ASN1_template_d2i;
-+ _ossl_old_des_quad_cksum;
-+ OCSP_single_get0_status;
-+ BN_swap;
-+ POLICYINFO_it;
-+ ENGINE_set_destroy_function;
-+ asn1_enc_free;
-+ OCSP_RESPID_it;
-+ EC_GROUP_new;
-+ EVP_aes_256_cbc;
-+ i2d_KRB5_PRINCNAME;
-+ _ossl_old_des_encrypt2;
-+ _ossl_old_des_encrypt3;
-+ PKCS8_PRIV_KEY_INFO_it;
-+ OCSP_REQINFO_it;
-+ PBEPARAM_it;
-+ KRB5_AUTHENTBODY_new;
-+ X509_CRL_add0_revoked;
-+ EDIPARTYNAME_it;
-+ NETSCAPE_SPKI_it;
-+ UI_get0_test_string;
-+ ENGINE_get_cipher_engine;
-+ ENGINE_register_all_ciphers;
-+ EC_POINT_copy;
-+ BN_kronecker;
-+ _ossl_old_des_ede3_ofb64_encrypt;
-+ _ossl_odes_ede3_ofb64_encrypt;
-+ UI_method_get_reader;
-+ OCSP_BASICRESP_get_ext_count;
-+ ASN1_ENUMERATED_it;
-+ UI_set_result;
-+ i2d_KRB5_TICKET;
-+ X509_print_ex_fp;
-+ EVP_CIPHER_CTX_set_padding;
-+ d2i_OCSP_RESPONSE;
-+ ASN1_UTCTIME_it;
-+ _ossl_old_des_enc_write;
-+ OCSP_RESPONSE_new;
-+ AES_set_encrypt_key;
-+ OCSP_resp_count;
-+ KRB5_CHECKSUM_new;
-+ ENGINE_load_cswift;
-+ OCSP_onereq_get0_id;
-+ ENGINE_set_default_ciphers;
-+ NOTICEREF_it;
-+ X509V3_EXT_CRL_add_nconf;
-+ OCSP_REVOKEDINFO_it;
-+ AES_encrypt;
-+ OCSP_REQUEST_new;
-+ ASN1_ANY_it;
-+ CRYPTO_ex_data_new_class;
-+ _ossl_old_des_ncbc_encrypt;
-+ i2d_KRB5_TKTBODY;
-+ EC_POINT_clear_free;
-+ AES_decrypt;
-+ asn1_enc_init;
-+ UI_get_result_maxsize;
-+ OCSP_CERTID_new;
-+ ENGINE_unregister_RAND;
-+ UI_method_get_closer;
-+ d2i_KRB5_ENCDATA;
-+ OCSP_request_onereq_count;
-+ OCSP_basic_verify;
-+ KRB5_AUTHENTBODY_free;
-+ ASN1_item_d2i;
-+ ASN1_primitive_free;
-+ i2d_EXTENDED_KEY_USAGE;
-+ i2d_OCSP_SIGNATURE;
-+ asn1_enc_save;
-+ ENGINE_load_nuron;
-+ _ossl_old_des_pcbc_encrypt;
-+ PKCS12_MAC_DATA_it;
-+ OCSP_accept_responses_new;
-+ asn1_do_lock;
-+ PKCS7_ATTR_VERIFY_it;
-+ KRB5_APREQBODY_it;
-+ i2d_OCSP_SINGLERESP;
-+ ASN1_item_ex_new;
-+ UI_add_verify_string;
-+ _ossl_old_des_set_key;
-+ KRB5_PRINCNAME_it;
-+ EVP_DecryptInit_ex;
-+ i2d_OCSP_CERTID;
-+ ASN1_item_d2i_bio;
-+ EC_POINT_dbl;
-+ asn1_get_choice_selector;
-+ i2d_KRB5_CHECKSUM;
-+ ENGINE_set_table_flags;
-+ AES_options;
-+ ENGINE_load_chil;
-+ OCSP_id_cmp;
-+ OCSP_BASICRESP_new;
-+ OCSP_REQUEST_get_ext_by_NID;
-+ KRB5_APREQ_it;
-+ ENGINE_get_destroy_function;
-+ CONF_set_nconf;
-+ ASN1_PRINTABLE_free;
-+ OCSP_BASICRESP_get_ext_by_NID;
-+ DIST_POINT_NAME_it;
-+ X509V3_extensions_print;
-+ _ossl_old_des_cfb64_encrypt;
-+ X509_REVOKED_add1_ext_i2d;
-+ _ossl_old_des_ofb_encrypt;
-+ KRB5_TKTBODY_new;
-+ ASN1_OCTET_STRING_it;
-+ ERR_load_UI_strings;
-+ i2d_KRB5_ENCKEY;
-+ ASN1_template_new;
-+ OCSP_SIGNATURE_free;
-+ ASN1_item_i2d_fp;
-+ KRB5_PRINCNAME_free;
-+ PKCS7_RECIP_INFO_it;
-+ EXTENDED_KEY_USAGE_it;
-+ EC_GFp_simple_method;
-+ EC_GROUP_precompute_mult;
-+ OCSP_request_onereq_get0;
-+ UI_method_set_writer;
-+ KRB5_AUTHENT_new;
-+ X509_CRL_INFO_it;
-+ DSO_set_name_converter;
-+ AES_set_decrypt_key;
-+ PKCS7_DIGEST_it;
-+ PKCS12_x5092certbag;
-+ EVP_DigestInit_ex;
-+ i2a_ACCESS_DESCRIPTION;
-+ OCSP_RESPONSE_it;
-+ PKCS7_ENC_CONTENT_it;
-+ OCSP_request_add0_id;
-+ EC_POINT_make_affine;
-+ DSO_get_filename;
-+ OCSP_CERTSTATUS_it;
-+ OCSP_request_add1_cert;
-+ UI_get0_output_string;
-+ UI_dup_verify_string;
-+ BN_mod_lshift;
-+ KRB5_AUTHDATA_it;
-+ asn1_set_choice_selector;
-+ OCSP_basic_add1_status;
-+ OCSP_RESPID_free;
-+ asn1_get_field_ptr;
-+ UI_add_input_string;
-+ OCSP_CRLID_it;
-+ i2d_KRB5_AUTHENTBODY;
-+ OCSP_REQUEST_get_ext_count;
-+ ENGINE_load_atalla;
-+ X509_NAME_it;
-+ USERNOTICE_it;
-+ OCSP_REQINFO_new;
-+ OCSP_BASICRESP_get_ext;
-+ CRYPTO_get_ex_data_implementation;
-+ CRYPTO_get_ex_data_impl;
-+ ASN1_item_pack;
-+ i2d_KRB5_ENCDATA;
-+ X509_PURPOSE_set;
-+ X509_REQ_INFO_it;
-+ UI_method_set_opener;
-+ ASN1_item_ex_free;
-+ ASN1_BOOLEAN_it;
-+ ENGINE_get_table_flags;
-+ UI_create_method;
-+ OCSP_ONEREQ_add1_ext_i2d;
-+ _shadow_DES_check_key;
-+ d2i_OCSP_REQINFO;
-+ UI_add_info_string;
-+ UI_get_result_minsize;
-+ ASN1_NULL_it;
-+ BN_mod_lshift1;
-+ d2i_OCSP_ONEREQ;
-+ OCSP_ONEREQ_new;
-+ KRB5_TICKET_it;
-+ EVP_aes_192_cbc;
-+ KRB5_TICKET_free;
-+ UI_new;
-+ OCSP_response_create;
-+ _ossl_old_des_xcbc_encrypt;
-+ PKCS7_it;
-+ OCSP_REQUEST_get_ext_by_critical;
-+ OCSP_REQUEST_get_ext_by_crit;
-+ ENGINE_set_flags;
-+ _ossl_old_des_ecb_encrypt;
-+ OCSP_response_get1_basic;
-+ EVP_Digest;
-+ OCSP_ONEREQ_delete_ext;
-+ ASN1_TBOOLEAN_it;
-+ ASN1_item_new;
-+ ASN1_TIME_to_generalizedtime;
-+ BIGNUM_it;
-+ AES_cbc_encrypt;
-+ ENGINE_get_load_privkey_function;
-+ ENGINE_get_load_privkey_fn;
-+ OCSP_RESPONSE_free;
-+ UI_method_set_reader;
-+ i2d_ASN1_T61STRING;
-+ EC_POINT_set_to_infinity;
-+ ERR_load_OCSP_strings;
-+ EC_POINT_point2oct;
-+ KRB5_APREQ_free;
-+ ASN1_OBJECT_it;
-+ OCSP_crlID_new;
-+ OCSP_crlID2_new;
-+ CONF_modules_load_file;
-+ CONF_imodule_set_usr_data;
-+ ENGINE_set_default_string;
-+ CONF_module_get_usr_data;
-+ ASN1_add_oid_module;
-+ CONF_modules_finish;
-+ OPENSSL_config;
-+ CONF_modules_unload;
-+ CONF_imodule_get_value;
-+ CONF_module_set_usr_data;
-+ CONF_parse_list;
-+ CONF_module_add;
-+ CONF_get1_default_config_file;
-+ CONF_imodule_get_flags;
-+ CONF_imodule_get_module;
-+ CONF_modules_load;
-+ CONF_imodule_get_name;
-+ ERR_peek_top_error;
-+ CONF_imodule_get_usr_data;
-+ CONF_imodule_set_flags;
-+ ENGINE_add_conf_module;
-+ ERR_peek_last_error_line;
-+ ERR_peek_last_error_line_data;
-+ ERR_peek_last_error;
-+ DES_read_2passwords;
-+ DES_read_password;
-+ UI_UTIL_read_pw;
-+ UI_UTIL_read_pw_string;
-+ ENGINE_load_aep;
-+ ENGINE_load_sureware;
-+ OPENSSL_add_all_algorithms_noconf;
-+ OPENSSL_add_all_algo_noconf;
-+ OPENSSL_add_all_algorithms_conf;
-+ OPENSSL_add_all_algo_conf;
-+ OPENSSL_load_builtin_modules;
-+ AES_ofb128_encrypt;
-+ AES_ctr128_encrypt;
-+ AES_cfb128_encrypt;
-+ ENGINE_load_4758cca;
-+ _ossl_096_des_random_seed;
-+ EVP_aes_256_ofb;
-+ EVP_aes_192_ofb;
-+ EVP_aes_128_cfb128;
-+ EVP_aes_256_cfb128;
-+ EVP_aes_128_ofb;
-+ EVP_aes_192_cfb128;
-+ CONF_modules_free;
-+ NCONF_default;
-+ OPENSSL_no_config;
-+ NCONF_WIN32;
-+ ASN1_UNIVERSALSTRING_new;
-+ EVP_des_ede_ecb;
-+ i2d_ASN1_UNIVERSALSTRING;
-+ ASN1_UNIVERSALSTRING_free;
-+ ASN1_UNIVERSALSTRING_it;
-+ d2i_ASN1_UNIVERSALSTRING;
-+ EVP_des_ede3_ecb;
-+ X509_REQ_print_ex;
-+ ENGINE_up_ref;
-+ BUF_MEM_grow_clean;
-+ CRYPTO_realloc_clean;
-+ BUF_strlcat;
-+ BIO_indent;
-+ BUF_strlcpy;
-+ OpenSSLDie;
-+ OPENSSL_cleanse;
-+ ENGINE_setup_bsd_cryptodev;
-+ ERR_release_err_state_table;
-+ EVP_aes_128_cfb8;
-+ FIPS_corrupt_rsa;
-+ FIPS_selftest_des;
-+ EVP_aes_128_cfb1;
-+ EVP_aes_192_cfb8;
-+ FIPS_mode_set;
-+ FIPS_selftest_dsa;
-+ EVP_aes_256_cfb8;
-+ FIPS_allow_md5;
-+ DES_ede3_cfb_encrypt;
-+ EVP_des_ede3_cfb8;
-+ FIPS_rand_seeded;
-+ AES_cfbr_encrypt_block;
-+ AES_cfb8_encrypt;
-+ FIPS_rand_seed;
-+ FIPS_corrupt_des;
-+ EVP_aes_192_cfb1;
-+ FIPS_selftest_aes;
-+ FIPS_set_prng_key;
-+ EVP_des_cfb8;
-+ FIPS_corrupt_dsa;
-+ FIPS_test_mode;
-+ FIPS_rand_method;
-+ EVP_aes_256_cfb1;
-+ ERR_load_FIPS_strings;
-+ FIPS_corrupt_aes;
-+ FIPS_selftest_sha1;
-+ FIPS_selftest_rsa;
-+ FIPS_corrupt_sha1;
-+ EVP_des_cfb1;
-+ FIPS_dsa_check;
-+ AES_cfb1_encrypt;
-+ EVP_des_ede3_cfb1;
-+ FIPS_rand_check;
-+ FIPS_md5_allowed;
-+ FIPS_mode;
-+ FIPS_selftest_failed;
-+ sk_is_sorted;
-+ X509_check_ca;
-+ HMAC_CTX_set_flags;
-+ d2i_PROXY_CERT_INFO_EXTENSION;
-+ PROXY_POLICY_it;
-+ i2d_PROXY_POLICY;
-+ i2d_PROXY_CERT_INFO_EXTENSION;
-+ d2i_PROXY_POLICY;
-+ PROXY_CERT_INFO_EXTENSION_new;
-+ PROXY_CERT_INFO_EXTENSION_free;
-+ PROXY_CERT_INFO_EXTENSION_it;
-+ PROXY_POLICY_free;
-+ PROXY_POLICY_new;
-+ BN_MONT_CTX_set_locked;
-+ FIPS_selftest_rng;
-+ EVP_sha384;
-+ EVP_sha512;
-+ EVP_sha224;
-+ EVP_sha256;
-+ FIPS_selftest_hmac;
-+ FIPS_corrupt_rng;
-+ BN_mod_exp_mont_consttime;
-+ RSA_X931_hash_id;
-+ RSA_padding_check_X931;
-+ RSA_verify_PKCS1_PSS;
-+ RSA_padding_add_X931;
-+ RSA_padding_add_PKCS1_PSS;
-+ PKCS1_MGF1;
-+ BN_X931_generate_Xpq;
-+ RSA_X931_generate_key;
-+ BN_X931_derive_prime;
-+ BN_X931_generate_prime;
-+ RSA_X931_derive;
-+ BIO_new_dgram;
-+ BN_get0_nist_prime_384;
-+ ERR_set_mark;
-+ X509_STORE_CTX_set0_crls;
-+ ENGINE_set_STORE;
-+ ENGINE_register_ECDSA;
-+ STORE_meth_set_list_start_fn;
-+ STORE_method_set_list_start_function;
-+ BN_BLINDING_invert_ex;
-+ NAME_CONSTRAINTS_free;
-+ STORE_ATTR_INFO_set_number;
-+ BN_BLINDING_get_thread_id;
-+ X509_STORE_CTX_set0_param;
-+ POLICY_MAPPING_it;
-+ STORE_parse_attrs_start;
-+ POLICY_CONSTRAINTS_free;
-+ EVP_PKEY_add1_attr_by_NID;
-+ BN_nist_mod_192;
-+ EC_GROUP_get_trinomial_basis;
-+ STORE_set_method;
-+ GENERAL_SUBTREE_free;
-+ NAME_CONSTRAINTS_it;
-+ ECDH_get_default_method;
-+ PKCS12_add_safe;
-+ EC_KEY_new_by_curve_name;
-+ STORE_meth_get_update_store_fn;
-+ STORE_method_get_update_store_function;
-+ ENGINE_register_ECDH;
-+ SHA512_Update;
-+ i2d_ECPrivateKey;
-+ BN_get0_nist_prime_192;
-+ STORE_modify_certificate;
-+ EC_POINT_set_affine_coordinates_GF2m;
-+ EC_POINT_set_affine_coords_GF2m;
-+ BN_GF2m_mod_exp_arr;
-+ STORE_ATTR_INFO_modify_number;
-+ X509_keyid_get0;
-+ ENGINE_load_gmp;
-+ pitem_new;
-+ BN_GF2m_mod_mul_arr;
-+ STORE_list_public_key_endp;
-+ o2i_ECPublicKey;
-+ EC_KEY_copy;
-+ BIO_dump_fp;
-+ X509_policy_node_get0_parent;
-+ EC_GROUP_check_discriminant;
-+ i2o_ECPublicKey;
-+ EC_KEY_precompute_mult;
-+ a2i_IPADDRESS;
-+ STORE_meth_set_initialise_fn;
-+ STORE_method_set_initialise_function;
-+ X509_STORE_CTX_set_depth;
-+ X509_VERIFY_PARAM_inherit;
-+ EC_POINT_point2bn;
-+ STORE_ATTR_INFO_set_dn;
-+ X509_policy_tree_get0_policies;
-+ EC_GROUP_new_curve_GF2m;
-+ STORE_destroy_method;
-+ ENGINE_unregister_STORE;
-+ EVP_PKEY_get1_EC_KEY;
-+ STORE_ATTR_INFO_get0_number;
-+ ENGINE_get_default_ECDH;
-+ EC_KEY_get_conv_form;
-+ ASN1_OCTET_STRING_NDEF_it;
-+ STORE_delete_public_key;
-+ STORE_get_public_key;
-+ STORE_modify_arbitrary;
-+ ENGINE_get_static_state;
-+ pqueue_iterator;
-+ ECDSA_SIG_new;
-+ OPENSSL_DIR_end;
-+ BN_GF2m_mod_sqr;
-+ EC_POINT_bn2point;
-+ X509_VERIFY_PARAM_set_depth;
-+ EC_KEY_set_asn1_flag;
-+ STORE_get_method;
-+ EC_KEY_get_key_method_data;
-+ ECDSA_sign_ex;
-+ STORE_parse_attrs_end;
-+ EC_GROUP_get_point_conversion_form;
-+ EC_GROUP_get_point_conv_form;
-+ STORE_method_set_store_function;
-+ STORE_ATTR_INFO_in;
-+ PEM_read_bio_ECPKParameters;
-+ EC_GROUP_get_pentanomial_basis;
-+ EVP_PKEY_add1_attr_by_txt;
-+ BN_BLINDING_set_flags;
-+ X509_VERIFY_PARAM_set1_policies;
-+ X509_VERIFY_PARAM_set1_name;
-+ X509_VERIFY_PARAM_set_purpose;
-+ STORE_get_number;
-+ ECDSA_sign_setup;
-+ BN_GF2m_mod_solve_quad_arr;
-+ EC_KEY_up_ref;
-+ POLICY_MAPPING_free;
-+ BN_GF2m_mod_div;
-+ X509_VERIFY_PARAM_set_flags;
-+ EC_KEY_free;
-+ STORE_meth_set_list_next_fn;
-+ STORE_method_set_list_next_function;
-+ PEM_write_bio_ECPrivateKey;
-+ d2i_EC_PUBKEY;
-+ STORE_meth_get_generate_fn;
-+ STORE_method_get_generate_function;
-+ STORE_meth_set_list_end_fn;
-+ STORE_method_set_list_end_function;
-+ pqueue_print;
-+ EC_GROUP_have_precompute_mult;
-+ EC_KEY_print_fp;
-+ BN_GF2m_mod_arr;
-+ PEM_write_bio_X509_CERT_PAIR;
-+ EVP_PKEY_cmp;
-+ X509_policy_level_node_count;
-+ STORE_new_engine;
-+ STORE_list_public_key_start;
-+ X509_VERIFY_PARAM_new;
-+ ECDH_get_ex_data;
-+ EVP_PKEY_get_attr;
-+ ECDSA_do_sign;
-+ ENGINE_unregister_ECDH;
-+ ECDH_OpenSSL;
-+ EC_KEY_set_conv_form;
-+ EC_POINT_dup;
-+ GENERAL_SUBTREE_new;
-+ STORE_list_crl_endp;
-+ EC_get_builtin_curves;
-+ X509_policy_node_get0_qualifiers;
-+ X509_pcy_node_get0_qualifiers;
-+ STORE_list_crl_end;
-+ EVP_PKEY_set1_EC_KEY;
-+ BN_GF2m_mod_sqrt_arr;
-+ i2d_ECPrivateKey_bio;
-+ ECPKParameters_print_fp;
-+ pqueue_find;
-+ ECDSA_SIG_free;
-+ PEM_write_bio_ECPKParameters;
-+ STORE_method_set_ctrl_function;
-+ STORE_list_public_key_end;
-+ EC_KEY_set_private_key;
-+ pqueue_peek;
-+ STORE_get_arbitrary;
-+ STORE_store_crl;
-+ X509_policy_node_get0_policy;
-+ PKCS12_add_safes;
-+ BN_BLINDING_convert_ex;
-+ X509_policy_tree_free;
-+ OPENSSL_ia32cap_loc;
-+ BN_GF2m_poly2arr;
-+ STORE_ctrl;
-+ STORE_ATTR_INFO_compare;
-+ BN_get0_nist_prime_224;
-+ i2d_ECParameters;
-+ i2d_ECPKParameters;
-+ BN_GENCB_call;
-+ d2i_ECPKParameters;
-+ STORE_meth_set_generate_fn;
-+ STORE_method_set_generate_function;
-+ ENGINE_set_ECDH;
-+ NAME_CONSTRAINTS_new;
-+ SHA256_Init;
-+ EC_KEY_get0_public_key;
-+ PEM_write_bio_EC_PUBKEY;
-+ STORE_ATTR_INFO_set_cstr;
-+ STORE_list_crl_next;
-+ STORE_ATTR_INFO_in_range;
-+ ECParameters_print;
-+ STORE_meth_set_delete_fn;
-+ STORE_method_set_delete_function;
-+ STORE_list_certificate_next;
-+ ASN1_generate_nconf;
-+ BUF_memdup;
-+ BN_GF2m_mod_mul;
-+ STORE_meth_get_list_next_fn;
-+ STORE_method_get_list_next_function;
-+ STORE_ATTR_INFO_get0_dn;
-+ STORE_list_private_key_next;
-+ EC_GROUP_set_seed;
-+ X509_VERIFY_PARAM_set_trust;
-+ STORE_ATTR_INFO_free;
-+ STORE_get_private_key;
-+ EVP_PKEY_get_attr_count;
-+ STORE_ATTR_INFO_new;
-+ EC_GROUP_get_curve_GF2m;
-+ STORE_meth_set_revoke_fn;
-+ STORE_method_set_revoke_function;
-+ STORE_store_number;
-+ BN_is_prime_ex;
-+ STORE_revoke_public_key;
-+ X509_STORE_CTX_get0_param;
-+ STORE_delete_arbitrary;
-+ PEM_read_X509_CERT_PAIR;
-+ X509_STORE_set_depth;
-+ ECDSA_get_ex_data;
-+ SHA224;
-+ BIO_dump_indent_fp;
-+ EC_KEY_set_group;
-+ BUF_strndup;
-+ STORE_list_certificate_start;
-+ BN_GF2m_mod;
-+ X509_REQ_check_private_key;
-+ EC_GROUP_get_seed_len;
-+ ERR_load_STORE_strings;
-+ PEM_read_bio_EC_PUBKEY;
-+ STORE_list_private_key_end;
-+ i2d_EC_PUBKEY;
-+ ECDSA_get_default_method;
-+ ASN1_put_eoc;
-+ X509_STORE_CTX_get_explicit_policy;
-+ X509_STORE_CTX_get_expl_policy;
-+ X509_VERIFY_PARAM_table_cleanup;
-+ STORE_modify_private_key;
-+ X509_VERIFY_PARAM_free;
-+ EC_METHOD_get_field_type;
-+ EC_GFp_nist_method;
-+ STORE_meth_set_modify_fn;
-+ STORE_method_set_modify_function;
-+ STORE_parse_attrs_next;
-+ ENGINE_load_padlock;
-+ EC_GROUP_set_curve_name;
-+ X509_CERT_PAIR_it;
-+ STORE_meth_get_revoke_fn;
-+ STORE_method_get_revoke_function;
-+ STORE_method_set_get_function;
-+ STORE_modify_number;
-+ STORE_method_get_store_function;
-+ STORE_store_private_key;
-+ BN_GF2m_mod_sqr_arr;
-+ RSA_setup_blinding;
-+ BIO_s_datagram;
-+ STORE_Memory;
-+ sk_find_ex;
-+ EC_GROUP_set_curve_GF2m;
-+ ENGINE_set_default_ECDSA;
-+ POLICY_CONSTRAINTS_new;
-+ BN_GF2m_mod_sqrt;
-+ ECDH_set_default_method;
-+ EC_KEY_generate_key;
-+ SHA384_Update;
-+ BN_GF2m_arr2poly;
-+ STORE_method_get_get_function;
-+ STORE_meth_set_cleanup_fn;
-+ STORE_method_set_cleanup_function;
-+ EC_GROUP_check;
-+ d2i_ECPrivateKey_bio;
-+ EC_KEY_insert_key_method_data;
-+ STORE_meth_get_lock_store_fn;
-+ STORE_method_get_lock_store_function;
-+ X509_VERIFY_PARAM_get_depth;
-+ SHA224_Final;
-+ STORE_meth_set_update_store_fn;
-+ STORE_method_set_update_store_function;
-+ SHA224_Update;
-+ d2i_ECPrivateKey;
-+ ASN1_item_ndef_i2d;
-+ STORE_delete_private_key;
-+ ERR_pop_to_mark;
-+ ENGINE_register_all_STORE;
-+ X509_policy_level_get0_node;
-+ i2d_PKCS7_NDEF;
-+ EC_GROUP_get_degree;
-+ ASN1_generate_v3;
-+ STORE_ATTR_INFO_modify_cstr;
-+ X509_policy_tree_level_count;
-+ BN_GF2m_add;
-+ EC_KEY_get0_group;
-+ STORE_generate_crl;
-+ STORE_store_public_key;
-+ X509_CERT_PAIR_free;
-+ STORE_revoke_private_key;
-+ BN_nist_mod_224;
-+ SHA512_Final;
-+ STORE_ATTR_INFO_modify_dn;
-+ STORE_meth_get_initialise_fn;
-+ STORE_method_get_initialise_function;
-+ STORE_delete_number;
-+ i2d_EC_PUBKEY_bio;
-+ BIO_dgram_non_fatal_error;
-+ EC_GROUP_get_asn1_flag;
-+ STORE_ATTR_INFO_in_ex;
-+ STORE_list_crl_start;
-+ ECDH_get_ex_new_index;
-+ STORE_meth_get_modify_fn;
-+ STORE_method_get_modify_function;
-+ v2i_ASN1_BIT_STRING;
-+ STORE_store_certificate;
-+ OBJ_bsearch_ex;
-+ X509_STORE_CTX_set_default;
-+ STORE_ATTR_INFO_set_sha1str;
-+ BN_GF2m_mod_inv;
-+ BN_GF2m_mod_exp;
-+ STORE_modify_public_key;
-+ STORE_meth_get_list_start_fn;
-+ STORE_method_get_list_start_function;
-+ EC_GROUP_get0_seed;
-+ STORE_store_arbitrary;
-+ STORE_meth_set_unlock_store_fn;
-+ STORE_method_set_unlock_store_function;
-+ BN_GF2m_mod_div_arr;
-+ ENGINE_set_ECDSA;
-+ STORE_create_method;
-+ ECPKParameters_print;
-+ EC_KEY_get0_private_key;
-+ PEM_write_EC_PUBKEY;
-+ X509_VERIFY_PARAM_set1;
-+ ECDH_set_method;
-+ v2i_GENERAL_NAME_ex;
-+ ECDH_set_ex_data;
-+ STORE_generate_key;
-+ BN_nist_mod_521;
-+ X509_policy_tree_get0_level;
-+ EC_GROUP_set_point_conversion_form;
-+ EC_GROUP_set_point_conv_form;
-+ PEM_read_EC_PUBKEY;
-+ i2d_ECDSA_SIG;
-+ ECDSA_OpenSSL;
-+ STORE_delete_crl;
-+ EC_KEY_get_enc_flags;
-+ ASN1_const_check_infinite_end;
-+ EVP_PKEY_delete_attr;
-+ ECDSA_set_default_method;
-+ EC_POINT_set_compressed_coordinates_GF2m;
-+ EC_POINT_set_compr_coords_GF2m;
-+ EC_GROUP_cmp;
-+ STORE_revoke_certificate;
-+ BN_get0_nist_prime_256;
-+ STORE_meth_get_delete_fn;
-+ STORE_method_get_delete_function;
-+ SHA224_Init;
-+ PEM_read_ECPrivateKey;
-+ SHA512_Init;
-+ STORE_parse_attrs_endp;
-+ BN_set_negative;
-+ ERR_load_ECDSA_strings;
-+ EC_GROUP_get_basis_type;
-+ STORE_list_public_key_next;
-+ i2v_ASN1_BIT_STRING;
-+ STORE_OBJECT_free;
-+ BN_nist_mod_384;
-+ i2d_X509_CERT_PAIR;
-+ PEM_write_ECPKParameters;
-+ ECDH_compute_key;
-+ STORE_ATTR_INFO_get0_sha1str;
-+ ENGINE_register_all_ECDH;
-+ pqueue_pop;
-+ STORE_ATTR_INFO_get0_cstr;
-+ POLICY_CONSTRAINTS_it;
-+ STORE_get_ex_new_index;
-+ EVP_PKEY_get_attr_by_OBJ;
-+ X509_VERIFY_PARAM_add0_policy;
-+ BN_GF2m_mod_solve_quad;
-+ SHA256;
-+ i2d_ECPrivateKey_fp;
-+ X509_policy_tree_get0_user_policies;
-+ X509_pcy_tree_get0_usr_policies;
-+ OPENSSL_DIR_read;
-+ ENGINE_register_all_ECDSA;
-+ X509_VERIFY_PARAM_lookup;
-+ EC_POINT_get_affine_coordinates_GF2m;
-+ EC_POINT_get_affine_coords_GF2m;
-+ EC_GROUP_dup;
-+ ENGINE_get_default_ECDSA;
-+ EC_KEY_new;
-+ SHA256_Transform;
-+ EC_KEY_set_enc_flags;
-+ ECDSA_verify;
-+ EC_POINT_point2hex;
-+ ENGINE_get_STORE;
-+ SHA512;
-+ STORE_get_certificate;
-+ ECDSA_do_sign_ex;
-+ ECDSA_do_verify;
-+ d2i_ECPrivateKey_fp;
-+ STORE_delete_certificate;
-+ SHA512_Transform;
-+ X509_STORE_set1_param;
-+ STORE_method_get_ctrl_function;
-+ STORE_free;
-+ PEM_write_ECPrivateKey;
-+ STORE_meth_get_unlock_store_fn;
-+ STORE_method_get_unlock_store_function;
-+ STORE_get_ex_data;
-+ EC_KEY_set_public_key;
-+ PEM_read_ECPKParameters;
-+ X509_CERT_PAIR_new;
-+ ENGINE_register_STORE;
-+ RSA_generate_key_ex;
-+ DSA_generate_parameters_ex;
-+ ECParameters_print_fp;
-+ X509V3_NAME_from_section;
-+ EVP_PKEY_add1_attr;
-+ STORE_modify_crl;
-+ STORE_list_private_key_start;
-+ POLICY_MAPPINGS_it;
-+ GENERAL_SUBTREE_it;
-+ EC_GROUP_get_curve_name;
-+ PEM_write_X509_CERT_PAIR;
-+ BIO_dump_indent_cb;
-+ d2i_X509_CERT_PAIR;
-+ STORE_list_private_key_endp;
-+ asn1_const_Finish;
-+ i2d_EC_PUBKEY_fp;
-+ BN_nist_mod_256;
-+ X509_VERIFY_PARAM_add0_table;
-+ pqueue_free;
-+ BN_BLINDING_create_param;
-+ ECDSA_size;
-+ d2i_EC_PUBKEY_bio;
-+ BN_get0_nist_prime_521;
-+ STORE_ATTR_INFO_modify_sha1str;
-+ BN_generate_prime_ex;
-+ EC_GROUP_new_by_curve_name;
-+ SHA256_Final;
-+ DH_generate_parameters_ex;
-+ PEM_read_bio_ECPrivateKey;
-+ STORE_meth_get_cleanup_fn;
-+ STORE_method_get_cleanup_function;
-+ ENGINE_get_ECDH;
-+ d2i_ECDSA_SIG;
-+ BN_is_prime_fasttest_ex;
-+ ECDSA_sign;
-+ X509_policy_check;
-+ EVP_PKEY_get_attr_by_NID;
-+ STORE_set_ex_data;
-+ ENGINE_get_ECDSA;
-+ EVP_ecdsa;
-+ BN_BLINDING_get_flags;
-+ PKCS12_add_cert;
-+ STORE_OBJECT_new;
-+ ERR_load_ECDH_strings;
-+ EC_KEY_dup;
-+ EVP_CIPHER_CTX_rand_key;
-+ ECDSA_set_method;
-+ a2i_IPADDRESS_NC;
-+ d2i_ECParameters;
-+ STORE_list_certificate_end;
-+ STORE_get_crl;
-+ X509_POLICY_NODE_print;
-+ SHA384_Init;
-+ EC_GF2m_simple_method;
-+ ECDSA_set_ex_data;
-+ SHA384_Final;
-+ PKCS7_set_digest;
-+ EC_KEY_print;
-+ STORE_meth_set_lock_store_fn;
-+ STORE_method_set_lock_store_function;
-+ ECDSA_get_ex_new_index;
-+ SHA384;
-+ POLICY_MAPPING_new;
-+ STORE_list_certificate_endp;
-+ X509_STORE_CTX_get0_policy_tree;
-+ EC_GROUP_set_asn1_flag;
-+ EC_KEY_check_key;
-+ d2i_EC_PUBKEY_fp;
-+ PKCS7_set0_type_other;
-+ PEM_read_bio_X509_CERT_PAIR;
-+ pqueue_next;
-+ STORE_meth_get_list_end_fn;
-+ STORE_method_get_list_end_function;
-+ EVP_PKEY_add1_attr_by_OBJ;
-+ X509_VERIFY_PARAM_set_time;
-+ pqueue_new;
-+ ENGINE_set_default_ECDH;
-+ STORE_new_method;
-+ PKCS12_add_key;
-+ DSO_merge;
-+ EC_POINT_hex2point;
-+ BIO_dump_cb;
-+ SHA256_Update;
-+ pqueue_insert;
-+ pitem_free;
-+ BN_GF2m_mod_inv_arr;
-+ ENGINE_unregister_ECDSA;
-+ BN_BLINDING_set_thread_id;
-+ get_rfc3526_prime_8192;
-+ X509_VERIFY_PARAM_clear_flags;
-+ get_rfc2409_prime_1024;
-+ DH_check_pub_key;
-+ get_rfc3526_prime_2048;
-+ get_rfc3526_prime_6144;
-+ get_rfc3526_prime_1536;
-+ get_rfc3526_prime_3072;
-+ get_rfc3526_prime_4096;
-+ get_rfc2409_prime_768;
-+ X509_VERIFY_PARAM_get_flags;
-+ EVP_CIPHER_CTX_new;
-+ EVP_CIPHER_CTX_free;
-+ Camellia_cbc_encrypt;
-+ Camellia_cfb128_encrypt;
-+ Camellia_cfb1_encrypt;
-+ Camellia_cfb8_encrypt;
-+ Camellia_ctr128_encrypt;
-+ Camellia_cfbr_encrypt_block;
-+ Camellia_decrypt;
-+ Camellia_ecb_encrypt;
-+ Camellia_encrypt;
-+ Camellia_ofb128_encrypt;
-+ Camellia_set_key;
-+ EVP_camellia_128_cbc;
-+ EVP_camellia_128_cfb128;
-+ EVP_camellia_128_cfb1;
-+ EVP_camellia_128_cfb8;
-+ EVP_camellia_128_ecb;
-+ EVP_camellia_128_ofb;
-+ EVP_camellia_192_cbc;
-+ EVP_camellia_192_cfb128;
-+ EVP_camellia_192_cfb1;
-+ EVP_camellia_192_cfb8;
-+ EVP_camellia_192_ecb;
-+ EVP_camellia_192_ofb;
-+ EVP_camellia_256_cbc;
-+ EVP_camellia_256_cfb128;
-+ EVP_camellia_256_cfb1;
-+ EVP_camellia_256_cfb8;
-+ EVP_camellia_256_ecb;
-+ EVP_camellia_256_ofb;
-+ a2i_ipadd;
-+ ASIdentifiers_free;
-+ i2d_ASIdOrRange;
-+ EVP_CIPHER_block_size;
-+ v3_asid_is_canonical;
-+ IPAddressChoice_free;
-+ EVP_CIPHER_CTX_set_app_data;
-+ BIO_set_callback_arg;
-+ v3_addr_add_prefix;
-+ IPAddressOrRange_it;
-+ BIO_set_flags;
-+ ASIdentifiers_it;
-+ v3_addr_get_range;
-+ BIO_method_type;
-+ v3_addr_inherits;
-+ IPAddressChoice_it;
-+ AES_ige_encrypt;
-+ v3_addr_add_range;
-+ EVP_CIPHER_CTX_nid;
-+ d2i_ASRange;
-+ v3_addr_add_inherit;
-+ v3_asid_add_id_or_range;
-+ v3_addr_validate_resource_set;
-+ EVP_CIPHER_iv_length;
-+ EVP_MD_type;
-+ v3_asid_canonize;
-+ IPAddressRange_free;
-+ v3_asid_add_inherit;
-+ EVP_CIPHER_CTX_key_length;
-+ IPAddressRange_new;
-+ ASIdOrRange_new;
-+ EVP_MD_size;
-+ EVP_MD_CTX_test_flags;
-+ BIO_clear_flags;
-+ i2d_ASRange;
-+ IPAddressRange_it;
-+ IPAddressChoice_new;
-+ ASIdentifierChoice_new;
-+ ASRange_free;
-+ EVP_MD_pkey_type;
-+ EVP_MD_CTX_clear_flags;
-+ IPAddressFamily_free;
-+ i2d_IPAddressFamily;
-+ IPAddressOrRange_new;
-+ EVP_CIPHER_flags;
-+ v3_asid_validate_resource_set;
-+ d2i_IPAddressRange;
-+ AES_bi_ige_encrypt;
-+ BIO_get_callback;
-+ IPAddressOrRange_free;
-+ v3_addr_subset;
-+ d2i_IPAddressFamily;
-+ v3_asid_subset;
-+ BIO_test_flags;
-+ i2d_ASIdentifierChoice;
-+ ASRange_it;
-+ d2i_ASIdentifiers;
-+ ASRange_new;
-+ d2i_IPAddressChoice;
-+ v3_addr_get_afi;
-+ EVP_CIPHER_key_length;
-+ EVP_Cipher;
-+ i2d_IPAddressOrRange;
-+ ASIdOrRange_it;
-+ EVP_CIPHER_nid;
-+ i2d_IPAddressChoice;
-+ EVP_CIPHER_CTX_block_size;
-+ ASIdentifiers_new;
-+ v3_addr_validate_path;
-+ IPAddressFamily_new;
-+ EVP_MD_CTX_set_flags;
-+ v3_addr_is_canonical;
-+ i2d_IPAddressRange;
-+ IPAddressFamily_it;
-+ v3_asid_inherits;
-+ EVP_CIPHER_CTX_cipher;
-+ EVP_CIPHER_CTX_get_app_data;
-+ EVP_MD_block_size;
-+ EVP_CIPHER_CTX_flags;
-+ v3_asid_validate_path;
-+ d2i_IPAddressOrRange;
-+ v3_addr_canonize;
-+ ASIdentifierChoice_it;
-+ EVP_MD_CTX_md;
-+ d2i_ASIdentifierChoice;
-+ BIO_method_name;
-+ EVP_CIPHER_CTX_iv_length;
-+ ASIdOrRange_free;
-+ ASIdentifierChoice_free;
-+ BIO_get_callback_arg;
-+ BIO_set_callback;
-+ d2i_ASIdOrRange;
-+ i2d_ASIdentifiers;
-+ SEED_decrypt;
-+ SEED_encrypt;
-+ SEED_cbc_encrypt;
-+ EVP_seed_ofb;
-+ SEED_cfb128_encrypt;
-+ SEED_ofb128_encrypt;
-+ EVP_seed_cbc;
-+ SEED_ecb_encrypt;
-+ EVP_seed_ecb;
-+ SEED_set_key;
-+ EVP_seed_cfb128;
-+ X509_EXTENSIONS_it;
-+ X509_get1_ocsp;
-+ OCSP_REQ_CTX_free;
-+ i2d_X509_EXTENSIONS;
-+ OCSP_sendreq_nbio;
-+ OCSP_sendreq_new;
-+ d2i_X509_EXTENSIONS;
-+ X509_ALGORS_it;
-+ X509_ALGOR_get0;
-+ X509_ALGOR_set0;
-+ AES_unwrap_key;
-+ AES_wrap_key;
-+ X509at_get0_data_by_OBJ;
-+ ASN1_TYPE_set1;
-+ ASN1_STRING_set0;
-+ i2d_X509_ALGORS;
-+ BIO_f_zlib;
-+ COMP_zlib_cleanup;
-+ d2i_X509_ALGORS;
-+ CMS_ReceiptRequest_free;
-+ PEM_write_CMS;
-+ CMS_add0_CertificateChoices;
-+ CMS_unsigned_add1_attr_by_OBJ;
-+ ERR_load_CMS_strings;
-+ CMS_sign_receipt;
-+ i2d_CMS_ContentInfo;
-+ CMS_signed_delete_attr;
-+ d2i_CMS_bio;
-+ CMS_unsigned_get_attr_by_NID;
-+ CMS_verify;
-+ SMIME_read_CMS;
-+ CMS_decrypt_set1_key;
-+ CMS_SignerInfo_get0_algs;
-+ CMS_add1_cert;
-+ CMS_set_detached;
-+ CMS_encrypt;
-+ CMS_EnvelopedData_create;
-+ CMS_uncompress;
-+ CMS_add0_crl;
-+ CMS_SignerInfo_verify_content;
-+ CMS_unsigned_get0_data_by_OBJ;
-+ PEM_write_bio_CMS;
-+ CMS_unsigned_get_attr;
-+ CMS_RecipientInfo_ktri_cert_cmp;
-+ CMS_RecipientInfo_ktri_get0_algs;
-+ CMS_RecipInfo_ktri_get0_algs;
-+ CMS_ContentInfo_free;
-+ CMS_final;
-+ CMS_add_simple_smimecap;
-+ CMS_SignerInfo_verify;
-+ CMS_data;
-+ CMS_ContentInfo_it;
-+ d2i_CMS_ReceiptRequest;
-+ CMS_compress;
-+ CMS_digest_create;
-+ CMS_SignerInfo_cert_cmp;
-+ CMS_SignerInfo_sign;
-+ CMS_data_create;
-+ i2d_CMS_bio;
-+ CMS_EncryptedData_set1_key;
-+ CMS_decrypt;
-+ int_smime_write_ASN1;
-+ CMS_unsigned_delete_attr;
-+ CMS_unsigned_get_attr_count;
-+ CMS_add_smimecap;
-+ PEM_read_CMS;
-+ CMS_signed_get_attr_by_OBJ;
-+ d2i_CMS_ContentInfo;
-+ CMS_add_standard_smimecap;
-+ CMS_ContentInfo_new;
-+ CMS_RecipientInfo_type;
-+ CMS_get0_type;
-+ CMS_is_detached;
-+ CMS_sign;
-+ CMS_signed_add1_attr;
-+ CMS_unsigned_get_attr_by_OBJ;
-+ SMIME_write_CMS;
-+ CMS_EncryptedData_decrypt;
-+ CMS_get0_RecipientInfos;
-+ CMS_add0_RevocationInfoChoice;
-+ CMS_decrypt_set1_pkey;
-+ CMS_SignerInfo_set1_signer_cert;
-+ CMS_get0_signers;
-+ CMS_ReceiptRequest_get0_values;
-+ CMS_signed_get0_data_by_OBJ;
-+ CMS_get0_SignerInfos;
-+ CMS_add0_cert;
-+ CMS_EncryptedData_encrypt;
-+ CMS_digest_verify;
-+ CMS_set1_signers_certs;
-+ CMS_signed_get_attr;
-+ CMS_RecipientInfo_set0_key;
-+ CMS_SignedData_init;
-+ CMS_RecipientInfo_kekri_get0_id;
-+ CMS_verify_receipt;
-+ CMS_ReceiptRequest_it;
-+ PEM_read_bio_CMS;
-+ CMS_get1_crls;
-+ CMS_add0_recipient_key;
-+ SMIME_read_ASN1;
-+ CMS_ReceiptRequest_new;
-+ CMS_get0_content;
-+ CMS_get1_ReceiptRequest;
-+ CMS_signed_add1_attr_by_OBJ;
-+ CMS_RecipientInfo_kekri_id_cmp;
-+ CMS_add1_ReceiptRequest;
-+ CMS_SignerInfo_get0_signer_id;
-+ CMS_unsigned_add1_attr_by_NID;
-+ CMS_unsigned_add1_attr;
-+ CMS_signed_get_attr_by_NID;
-+ CMS_get1_certs;
-+ CMS_signed_add1_attr_by_NID;
-+ CMS_unsigned_add1_attr_by_txt;
-+ CMS_dataFinal;
-+ CMS_RecipientInfo_ktri_get0_signer_id;
-+ CMS_RecipInfo_ktri_get0_sigr_id;
-+ i2d_CMS_ReceiptRequest;
-+ CMS_add1_recipient_cert;
-+ CMS_dataInit;
-+ CMS_signed_add1_attr_by_txt;
-+ CMS_RecipientInfo_decrypt;
-+ CMS_signed_get_attr_count;
-+ CMS_get0_eContentType;
-+ CMS_set1_eContentType;
-+ CMS_ReceiptRequest_create0;
-+ CMS_add1_signer;
-+ CMS_RecipientInfo_set0_pkey;
-+ ENGINE_set_load_ssl_client_cert_function;
-+ ENGINE_set_ld_ssl_clnt_cert_fn;
-+ ENGINE_get_ssl_client_cert_function;
-+ ENGINE_get_ssl_client_cert_fn;
-+ ENGINE_load_ssl_client_cert;
-+ ENGINE_load_capi;
-+ OPENSSL_isservice;
-+ FIPS_dsa_sig_decode;
-+ EVP_CIPHER_CTX_clear_flags;
-+ FIPS_rand_status;
-+ FIPS_rand_set_key;
-+ CRYPTO_set_mem_info_functions;
-+ RSA_X931_generate_key_ex;
-+ int_ERR_set_state_func;
-+ int_EVP_MD_set_engine_callbacks;
-+ int_CRYPTO_set_do_dynlock_callback;
-+ FIPS_rng_stick;
-+ EVP_CIPHER_CTX_set_flags;
-+ BN_X931_generate_prime_ex;
-+ FIPS_selftest_check;
-+ FIPS_rand_set_dt;
-+ CRYPTO_dbg_pop_info;
-+ FIPS_dsa_free;
-+ RSA_X931_derive_ex;
-+ FIPS_rsa_new;
-+ FIPS_rand_bytes;
-+ fips_cipher_test;
-+ EVP_CIPHER_CTX_test_flags;
-+ CRYPTO_malloc_debug_init;
-+ CRYPTO_dbg_push_info;
-+ FIPS_corrupt_rsa_keygen;
-+ FIPS_dh_new;
-+ FIPS_corrupt_dsa_keygen;
-+ FIPS_dh_free;
-+ fips_pkey_signature_test;
-+ EVP_add_alg_module;
-+ int_RAND_init_engine_callbacks;
-+ int_EVP_CIPHER_set_engine_callbacks;
-+ int_EVP_MD_init_engine_callbacks;
-+ FIPS_rand_test_mode;
-+ FIPS_rand_reset;
-+ FIPS_dsa_new;
-+ int_RAND_set_callbacks;
-+ BN_X931_derive_prime_ex;
-+ int_ERR_lib_init;
-+ int_EVP_CIPHER_init_engine_callbacks;
-+ FIPS_rsa_free;
-+ FIPS_dsa_sig_encode;
-+ CRYPTO_dbg_remove_all_info;
-+ OPENSSL_init;
-+ CRYPTO_strdup;
-+ JPAKE_STEP3A_process;
-+ JPAKE_STEP1_release;
-+ JPAKE_get_shared_key;
-+ JPAKE_STEP3B_init;
-+ JPAKE_STEP1_generate;
-+ JPAKE_STEP1_init;
-+ JPAKE_STEP3B_process;
-+ JPAKE_STEP2_generate;
-+ JPAKE_CTX_new;
-+ JPAKE_CTX_free;
-+ JPAKE_STEP3B_release;
-+ JPAKE_STEP3A_release;
-+ JPAKE_STEP2_process;
-+ JPAKE_STEP3B_generate;
-+ JPAKE_STEP1_process;
-+ JPAKE_STEP3A_generate;
-+ JPAKE_STEP2_release;
-+ JPAKE_STEP3A_init;
-+ ERR_load_JPAKE_strings;
-+ JPAKE_STEP2_init;
-+ pqueue_size;
-+ i2d_TS_ACCURACY;
-+ i2d_TS_MSG_IMPRINT_fp;
-+ i2d_TS_MSG_IMPRINT;
-+ EVP_PKEY_print_public;
-+ EVP_PKEY_CTX_new;
-+ i2d_TS_TST_INFO;
-+ EVP_PKEY_asn1_find;
-+ DSO_METHOD_beos;
-+ TS_CONF_load_cert;
-+ TS_REQ_get_ext;
-+ EVP_PKEY_sign_init;
-+ ASN1_item_print;
-+ TS_TST_INFO_set_nonce;
-+ TS_RESP_dup;
-+ ENGINE_register_pkey_meths;
-+ EVP_PKEY_asn1_add0;
-+ PKCS7_add0_attrib_signing_time;
-+ i2d_TS_TST_INFO_fp;
-+ BIO_asn1_get_prefix;
-+ TS_TST_INFO_set_time;
-+ EVP_PKEY_meth_set_decrypt;
-+ EVP_PKEY_set_type_str;
-+ EVP_PKEY_CTX_get_keygen_info;
-+ TS_REQ_set_policy_id;
-+ d2i_TS_RESP_fp;
-+ ENGINE_get_pkey_asn1_meth_engine;
-+ ENGINE_get_pkey_asn1_meth_eng;
-+ WHIRLPOOL_Init;
-+ TS_RESP_set_status_info;
-+ EVP_PKEY_keygen;
-+ EVP_DigestSignInit;
-+ TS_ACCURACY_set_millis;
-+ TS_REQ_dup;
-+ GENERAL_NAME_dup;
-+ ASN1_SEQUENCE_ANY_it;
-+ WHIRLPOOL;
-+ X509_STORE_get1_crls;
-+ ENGINE_get_pkey_asn1_meth;
-+ EVP_PKEY_asn1_new;
-+ BIO_new_NDEF;
-+ ENGINE_get_pkey_meth;
-+ TS_MSG_IMPRINT_set_algo;
-+ i2d_TS_TST_INFO_bio;
-+ TS_TST_INFO_set_ordering;
-+ TS_TST_INFO_get_ext_by_OBJ;
-+ CRYPTO_THREADID_set_pointer;
-+ TS_CONF_get_tsa_section;
-+ SMIME_write_ASN1;
-+ TS_RESP_CTX_set_signer_key;
-+ EVP_PKEY_encrypt_old;
-+ EVP_PKEY_encrypt_init;
-+ CRYPTO_THREADID_cpy;
-+ ASN1_PCTX_get_cert_flags;
-+ i2d_ESS_SIGNING_CERT;
-+ TS_CONF_load_key;
-+ i2d_ASN1_SEQUENCE_ANY;
-+ d2i_TS_MSG_IMPRINT_bio;
-+ EVP_PKEY_asn1_set_public;
-+ b2i_PublicKey_bio;
-+ BIO_asn1_set_prefix;
-+ EVP_PKEY_new_mac_key;
-+ BIO_new_CMS;
-+ CRYPTO_THREADID_cmp;
-+ TS_REQ_ext_free;
-+ EVP_PKEY_asn1_set_free;
-+ EVP_PKEY_get0_asn1;
-+ d2i_NETSCAPE_X509;
-+ EVP_PKEY_verify_recover_init;
-+ EVP_PKEY_CTX_set_data;
-+ EVP_PKEY_keygen_init;
-+ TS_RESP_CTX_set_status_info;
-+ TS_MSG_IMPRINT_get_algo;
-+ TS_REQ_print_bio;
-+ EVP_PKEY_CTX_ctrl_str;
-+ EVP_PKEY_get_default_digest_nid;
-+ PEM_write_bio_PKCS7_stream;
-+ TS_MSG_IMPRINT_print_bio;
-+ BN_asc2bn;
-+ TS_REQ_get_policy_id;
-+ ENGINE_set_default_pkey_asn1_meths;
-+ ENGINE_set_def_pkey_asn1_meths;
-+ d2i_TS_ACCURACY;
-+ DSO_global_lookup;
-+ TS_CONF_set_tsa_name;
-+ i2d_ASN1_SET_ANY;
-+ ENGINE_load_gost;
-+ WHIRLPOOL_BitUpdate;
-+ ASN1_PCTX_get_flags;
-+ TS_TST_INFO_get_ext_by_NID;
-+ TS_RESP_new;
-+ ESS_CERT_ID_dup;
-+ TS_STATUS_INFO_dup;
-+ TS_REQ_delete_ext;
-+ EVP_DigestVerifyFinal;
-+ EVP_PKEY_print_params;
-+ i2d_CMS_bio_stream;
-+ TS_REQ_get_msg_imprint;
-+ OBJ_find_sigid_by_algs;
-+ TS_TST_INFO_get_serial;
-+ TS_REQ_get_nonce;
-+ X509_PUBKEY_set0_param;
-+ EVP_PKEY_CTX_set0_keygen_info;
-+ DIST_POINT_set_dpname;
-+ i2d_ISSUING_DIST_POINT;
-+ ASN1_SET_ANY_it;
-+ EVP_PKEY_CTX_get_data;
-+ TS_STATUS_INFO_print_bio;
-+ EVP_PKEY_derive_init;
-+ d2i_TS_TST_INFO;
-+ EVP_PKEY_asn1_add_alias;
-+ d2i_TS_RESP_bio;
-+ OTHERNAME_cmp;
-+ GENERAL_NAME_set0_value;
-+ PKCS7_RECIP_INFO_get0_alg;
-+ TS_RESP_CTX_new;
-+ TS_RESP_set_tst_info;
-+ PKCS7_final;
-+ EVP_PKEY_base_id;
-+ TS_RESP_CTX_set_signer_cert;
-+ TS_REQ_set_msg_imprint;
-+ EVP_PKEY_CTX_ctrl;
-+ TS_CONF_set_digests;
-+ d2i_TS_MSG_IMPRINT;
-+ EVP_PKEY_meth_set_ctrl;
-+ TS_REQ_get_ext_by_NID;
-+ PKCS5_pbe_set0_algor;
-+ BN_BLINDING_thread_id;
-+ TS_ACCURACY_new;
-+ X509_CRL_METHOD_free;
-+ ASN1_PCTX_get_nm_flags;
-+ EVP_PKEY_meth_set_sign;
-+ CRYPTO_THREADID_current;
-+ EVP_PKEY_decrypt_init;
-+ NETSCAPE_X509_free;
-+ i2b_PVK_bio;
-+ EVP_PKEY_print_private;
-+ GENERAL_NAME_get0_value;
-+ b2i_PVK_bio;
-+ ASN1_UTCTIME_adj;
-+ TS_TST_INFO_new;
-+ EVP_MD_do_all_sorted;
-+ TS_CONF_set_default_engine;
-+ TS_ACCURACY_set_seconds;
-+ TS_TST_INFO_get_time;
-+ PKCS8_pkey_get0;
-+ EVP_PKEY_asn1_get0;
-+ OBJ_add_sigid;
-+ PKCS7_SIGNER_INFO_sign;
-+ EVP_PKEY_paramgen_init;
-+ EVP_PKEY_sign;
-+ OBJ_sigid_free;
-+ EVP_PKEY_meth_set_init;
-+ d2i_ESS_ISSUER_SERIAL;
-+ ISSUING_DIST_POINT_new;
-+ ASN1_TIME_adj;
-+ TS_OBJ_print_bio;
-+ EVP_PKEY_meth_set_verify_recover;
-+ EVP_PKEY_meth_set_vrfy_recover;
-+ TS_RESP_get_status_info;
-+ CMS_stream;
-+ EVP_PKEY_CTX_set_cb;
-+ PKCS7_to_TS_TST_INFO;
-+ ASN1_PCTX_get_oid_flags;
-+ TS_TST_INFO_add_ext;
-+ EVP_PKEY_meth_set_derive;
-+ i2d_TS_RESP_fp;
-+ i2d_TS_MSG_IMPRINT_bio;
-+ TS_RESP_CTX_set_accuracy;
-+ TS_REQ_set_nonce;
-+ ESS_CERT_ID_new;
-+ ENGINE_pkey_asn1_find_str;
-+ TS_REQ_get_ext_count;
-+ BUF_reverse;
-+ TS_TST_INFO_print_bio;
-+ d2i_ISSUING_DIST_POINT;
-+ ENGINE_get_pkey_meths;
-+ i2b_PrivateKey_bio;
-+ i2d_TS_RESP;
-+ b2i_PublicKey;
-+ TS_VERIFY_CTX_cleanup;
-+ TS_STATUS_INFO_free;
-+ TS_RESP_verify_token;
-+ OBJ_bsearch_ex_;
-+ ASN1_bn_print;
-+ EVP_PKEY_asn1_get_count;
-+ ENGINE_register_pkey_asn1_meths;
-+ ASN1_PCTX_set_nm_flags;
-+ EVP_DigestVerifyInit;
-+ ENGINE_set_default_pkey_meths;
-+ TS_TST_INFO_get_policy_id;
-+ TS_REQ_get_cert_req;
-+ X509_CRL_set_meth_data;
-+ PKCS8_pkey_set0;
-+ ASN1_STRING_copy;
-+ d2i_TS_TST_INFO_fp;
-+ X509_CRL_match;
-+ EVP_PKEY_asn1_set_private;
-+ TS_TST_INFO_get_ext_d2i;
-+ TS_RESP_CTX_add_policy;
-+ d2i_TS_RESP;
-+ TS_CONF_load_certs;
-+ TS_TST_INFO_get_msg_imprint;
-+ ERR_load_TS_strings;
-+ TS_TST_INFO_get_version;
-+ EVP_PKEY_CTX_dup;
-+ EVP_PKEY_meth_set_verify;
-+ i2b_PublicKey_bio;
-+ TS_CONF_set_certs;
-+ EVP_PKEY_asn1_get0_info;
-+ TS_VERIFY_CTX_free;
-+ TS_REQ_get_ext_by_critical;
-+ TS_RESP_CTX_set_serial_cb;
-+ X509_CRL_get_meth_data;
-+ TS_RESP_CTX_set_time_cb;
-+ TS_MSG_IMPRINT_get_msg;
-+ TS_TST_INFO_ext_free;
-+ TS_REQ_get_version;
-+ TS_REQ_add_ext;
-+ EVP_PKEY_CTX_set_app_data;
-+ OBJ_bsearch_;
-+ EVP_PKEY_meth_set_verifyctx;
-+ i2d_PKCS7_bio_stream;
-+ CRYPTO_THREADID_set_numeric;
-+ PKCS7_sign_add_signer;
-+ d2i_TS_TST_INFO_bio;
-+ TS_TST_INFO_get_ordering;
-+ TS_RESP_print_bio;
-+ TS_TST_INFO_get_exts;
-+ HMAC_CTX_copy;
-+ PKCS5_pbe2_set_iv;
-+ ENGINE_get_pkey_asn1_meths;
-+ b2i_PrivateKey;
-+ EVP_PKEY_CTX_get_app_data;
-+ TS_REQ_set_cert_req;
-+ CRYPTO_THREADID_set_callback;
-+ TS_CONF_set_serial;
-+ TS_TST_INFO_free;
-+ d2i_TS_REQ_fp;
-+ TS_RESP_verify_response;
-+ i2d_ESS_ISSUER_SERIAL;
-+ TS_ACCURACY_get_seconds;
-+ EVP_CIPHER_do_all;
-+ b2i_PrivateKey_bio;
-+ OCSP_CERTID_dup;
-+ X509_PUBKEY_get0_param;
-+ TS_MSG_IMPRINT_dup;
-+ PKCS7_print_ctx;
-+ i2d_TS_REQ_bio;
-+ EVP_whirlpool;
-+ EVP_PKEY_asn1_set_param;
-+ EVP_PKEY_meth_set_encrypt;
-+ ASN1_PCTX_set_flags;
-+ i2d_ESS_CERT_ID;
-+ TS_VERIFY_CTX_new;
-+ TS_RESP_CTX_set_extension_cb;
-+ ENGINE_register_all_pkey_meths;
-+ TS_RESP_CTX_set_status_info_cond;
-+ TS_RESP_CTX_set_stat_info_cond;
-+ EVP_PKEY_verify;
-+ WHIRLPOOL_Final;
-+ X509_CRL_METHOD_new;
-+ EVP_DigestSignFinal;
-+ TS_RESP_CTX_set_def_policy;
-+ NETSCAPE_X509_it;
-+ TS_RESP_create_response;
-+ PKCS7_SIGNER_INFO_get0_algs;
-+ TS_TST_INFO_get_nonce;
-+ EVP_PKEY_decrypt_old;
-+ TS_TST_INFO_set_policy_id;
-+ TS_CONF_set_ess_cert_id_chain;
-+ EVP_PKEY_CTX_get0_pkey;
-+ d2i_TS_REQ;
-+ EVP_PKEY_asn1_find_str;
-+ BIO_f_asn1;
-+ ESS_SIGNING_CERT_new;
-+ EVP_PBE_find;
-+ X509_CRL_get0_by_cert;
-+ EVP_PKEY_derive;
-+ i2d_TS_REQ;
-+ TS_TST_INFO_delete_ext;
-+ ESS_ISSUER_SERIAL_free;
-+ ASN1_PCTX_set_str_flags;
-+ ENGINE_get_pkey_asn1_meth_str;
-+ TS_CONF_set_signer_key;
-+ TS_ACCURACY_get_millis;
-+ TS_RESP_get_token;
-+ TS_ACCURACY_dup;
-+ ENGINE_register_all_pkey_asn1_meths;
-+ ENGINE_reg_all_pkey_asn1_meths;
-+ X509_CRL_set_default_method;
-+ CRYPTO_THREADID_hash;
-+ CMS_ContentInfo_print_ctx;
-+ TS_RESP_free;
-+ ISSUING_DIST_POINT_free;
-+ ESS_ISSUER_SERIAL_new;
-+ CMS_add1_crl;
-+ PKCS7_add1_attrib_digest;
-+ TS_RESP_CTX_add_md;
-+ TS_TST_INFO_dup;
-+ ENGINE_set_pkey_asn1_meths;
-+ PEM_write_bio_Parameters;
-+ TS_TST_INFO_get_accuracy;
-+ X509_CRL_get0_by_serial;
-+ TS_TST_INFO_set_version;
-+ TS_RESP_CTX_get_tst_info;
-+ TS_RESP_verify_signature;
-+ CRYPTO_THREADID_get_callback;
-+ TS_TST_INFO_get_tsa;
-+ TS_STATUS_INFO_new;
-+ EVP_PKEY_CTX_get_cb;
-+ TS_REQ_get_ext_d2i;
-+ GENERAL_NAME_set0_othername;
-+ TS_TST_INFO_get_ext_count;
-+ TS_RESP_CTX_get_request;
-+ i2d_NETSCAPE_X509;
-+ ENGINE_get_pkey_meth_engine;
-+ EVP_PKEY_meth_set_signctx;
-+ EVP_PKEY_asn1_copy;
-+ ASN1_TYPE_cmp;
-+ EVP_CIPHER_do_all_sorted;
-+ EVP_PKEY_CTX_free;
-+ ISSUING_DIST_POINT_it;
-+ d2i_TS_MSG_IMPRINT_fp;
-+ X509_STORE_get1_certs;
-+ EVP_PKEY_CTX_get_operation;
-+ d2i_ESS_SIGNING_CERT;
-+ TS_CONF_set_ordering;
-+ EVP_PBE_alg_add_type;
-+ TS_REQ_set_version;
-+ EVP_PKEY_get0;
-+ BIO_asn1_set_suffix;
-+ i2d_TS_STATUS_INFO;
-+ EVP_MD_do_all;
-+ TS_TST_INFO_set_accuracy;
-+ PKCS7_add_attrib_content_type;
-+ ERR_remove_thread_state;
-+ EVP_PKEY_meth_add0;
-+ TS_TST_INFO_set_tsa;
-+ EVP_PKEY_meth_new;
-+ WHIRLPOOL_Update;
-+ TS_CONF_set_accuracy;
-+ ASN1_PCTX_set_oid_flags;
-+ ESS_SIGNING_CERT_dup;
-+ d2i_TS_REQ_bio;
-+ X509_time_adj_ex;
-+ TS_RESP_CTX_add_flags;
-+ d2i_TS_STATUS_INFO;
-+ TS_MSG_IMPRINT_set_msg;
-+ BIO_asn1_get_suffix;
-+ TS_REQ_free;
-+ EVP_PKEY_meth_free;
-+ TS_REQ_get_exts;
-+ TS_RESP_CTX_set_clock_precision_digits;
-+ TS_RESP_CTX_set_clk_prec_digits;
-+ TS_RESP_CTX_add_failure_info;
-+ i2d_TS_RESP_bio;
-+ EVP_PKEY_CTX_get0_peerkey;
-+ PEM_write_bio_CMS_stream;
-+ TS_REQ_new;
-+ TS_MSG_IMPRINT_new;
-+ EVP_PKEY_meth_find;
-+ EVP_PKEY_id;
-+ TS_TST_INFO_set_serial;
-+ a2i_GENERAL_NAME;
-+ TS_CONF_set_crypto_device;
-+ EVP_PKEY_verify_init;
-+ TS_CONF_set_policies;
-+ ASN1_PCTX_new;
-+ ESS_CERT_ID_free;
-+ ENGINE_unregister_pkey_meths;
-+ TS_MSG_IMPRINT_free;
-+ TS_VERIFY_CTX_init;
-+ PKCS7_stream;
-+ TS_RESP_CTX_set_certs;
-+ TS_CONF_set_def_policy;
-+ ASN1_GENERALIZEDTIME_adj;
-+ NETSCAPE_X509_new;
-+ TS_ACCURACY_free;
-+ TS_RESP_get_tst_info;
-+ EVP_PKEY_derive_set_peer;
-+ PEM_read_bio_Parameters;
-+ TS_CONF_set_clock_precision_digits;
-+ TS_CONF_set_clk_prec_digits;
-+ ESS_ISSUER_SERIAL_dup;
-+ TS_ACCURACY_get_micros;
-+ ASN1_PCTX_get_str_flags;
-+ NAME_CONSTRAINTS_check;
-+ ASN1_BIT_STRING_check;
-+ X509_check_akid;
-+ ENGINE_unregister_pkey_asn1_meths;
-+ ENGINE_unreg_pkey_asn1_meths;
-+ ASN1_PCTX_free;
-+ PEM_write_bio_ASN1_stream;
-+ i2d_ASN1_bio_stream;
-+ TS_X509_ALGOR_print_bio;
-+ EVP_PKEY_meth_set_cleanup;
-+ EVP_PKEY_asn1_free;
-+ ESS_SIGNING_CERT_free;
-+ TS_TST_INFO_set_msg_imprint;
-+ GENERAL_NAME_cmp;
-+ d2i_ASN1_SET_ANY;
-+ ENGINE_set_pkey_meths;
-+ i2d_TS_REQ_fp;
-+ d2i_ASN1_SEQUENCE_ANY;
-+ GENERAL_NAME_get0_otherName;
-+ d2i_ESS_CERT_ID;
-+ OBJ_find_sigid_algs;
-+ EVP_PKEY_meth_set_keygen;
-+ PKCS5_PBKDF2_HMAC;
-+ EVP_PKEY_paramgen;
-+ EVP_PKEY_meth_set_paramgen;
-+ BIO_new_PKCS7;
-+ EVP_PKEY_verify_recover;
-+ TS_ext_print_bio;
-+ TS_ASN1_INTEGER_print_bio;
-+ check_defer;
-+ DSO_pathbyaddr;
-+ EVP_PKEY_set_type;
-+ TS_ACCURACY_set_micros;
-+ TS_REQ_to_TS_VERIFY_CTX;
-+ EVP_PKEY_meth_set_copy;
-+ ASN1_PCTX_set_cert_flags;
-+ TS_TST_INFO_get_ext;
-+ EVP_PKEY_asn1_set_ctrl;
-+ TS_TST_INFO_get_ext_by_critical;
-+ EVP_PKEY_CTX_new_id;
-+ TS_REQ_get_ext_by_OBJ;
-+ TS_CONF_set_signer_cert;
-+ X509_NAME_hash_old;
-+ ASN1_TIME_set_string;
-+ EVP_MD_flags;
-+ TS_RESP_CTX_free;
-+ DSAparams_dup;
-+ DHparams_dup;
-+ OCSP_REQ_CTX_add1_header;
-+ OCSP_REQ_CTX_set1_req;
-+ X509_STORE_set_verify_cb;
-+ X509_STORE_CTX_get0_current_crl;
-+ X509_STORE_CTX_get0_parent_ctx;
-+ X509_STORE_CTX_get0_current_issuer;
-+ X509_STORE_CTX_get0_cur_issuer;
-+ X509_issuer_name_hash_old;
-+ X509_subject_name_hash_old;
-+ EVP_CIPHER_CTX_copy;
-+ UI_method_get_prompt_constructor;
-+ UI_method_get_prompt_constructr;
-+ UI_method_set_prompt_constructor;
-+ UI_method_set_prompt_constructr;
-+ EVP_read_pw_string_min;
-+ CRYPTO_cts128_encrypt;
-+ CRYPTO_cts128_decrypt_block;
-+ CRYPTO_cfb128_1_encrypt;
-+ CRYPTO_cbc128_encrypt;
-+ CRYPTO_ctr128_encrypt;
-+ CRYPTO_ofb128_encrypt;
-+ CRYPTO_cts128_decrypt;
-+ CRYPTO_cts128_encrypt_block;
-+ CRYPTO_cbc128_decrypt;
-+ CRYPTO_cfb128_encrypt;
-+ CRYPTO_cfb128_8_encrypt;
-+ SSL_renegotiate_abbreviated;
-+ TLSv1_1_method;
-+ TLSv1_1_client_method;
-+ TLSv1_1_server_method;
-+ SSL_CTX_set_srp_client_pwd_callback;
-+ SSL_CTX_set_srp_client_pwd_cb;
-+ SSL_get_srp_g;
-+ SSL_CTX_set_srp_username_callback;
-+ SSL_CTX_set_srp_un_cb;
-+ SSL_get_srp_userinfo;
-+ SSL_set_srp_server_param;
-+ SSL_set_srp_server_param_pw;
-+ SSL_get_srp_N;
-+ SSL_get_srp_username;
-+ SSL_CTX_set_srp_password;
-+ SSL_CTX_set_srp_strength;
-+ SSL_CTX_set_srp_verify_param_callback;
-+ SSL_CTX_set_srp_vfy_param_cb;
-+ SSL_CTX_set_srp_cb_arg;
-+ SSL_CTX_set_srp_username;
-+ SSL_CTX_SRP_CTX_init;
-+ SSL_SRP_CTX_init;
-+ SRP_Calc_A_param;
-+ SRP_generate_server_master_secret;
-+ SRP_gen_server_master_secret;
-+ SSL_CTX_SRP_CTX_free;
-+ SRP_generate_client_master_secret;
-+ SRP_gen_client_master_secret;
-+ SSL_srp_server_param_with_username;
-+ SSL_srp_server_param_with_un;
-+ SSL_SRP_CTX_free;
-+ SSL_set_debug;
-+ SSL_SESSION_get0_peer;
-+ TLSv1_2_client_method;
-+ SSL_SESSION_set1_id_context;
-+ TLSv1_2_server_method;
-+ SSL_cache_hit;
-+ SSL_get0_kssl_ctx;
-+ SSL_set0_kssl_ctx;
-+ SSL_set_state;
-+ SSL_CIPHER_get_id;
-+ TLSv1_2_method;
-+ kssl_ctx_get0_client_princ;
-+ SSL_export_keying_material;
-+ SSL_set_tlsext_use_srtp;
-+ SSL_CTX_set_next_protos_advertised_cb;
-+ SSL_CTX_set_next_protos_adv_cb;
-+ SSL_get0_next_proto_negotiated;
-+ SSL_get_selected_srtp_profile;
-+ SSL_CTX_set_tlsext_use_srtp;
-+ SSL_select_next_proto;
-+ SSL_get_srtp_profiles;
-+ SSL_CTX_set_next_proto_select_cb;
-+ SSL_CTX_set_next_proto_sel_cb;
-+ SSL_SESSION_get_compress_id;
-+
-+ SRP_VBASE_get_by_user;
-+ SRP_Calc_server_key;
-+ SRP_create_verifier;
-+ SRP_create_verifier_BN;
-+ SRP_Calc_u;
-+ SRP_VBASE_free;
-+ SRP_Calc_client_key;
-+ SRP_get_default_gN;
-+ SRP_Calc_x;
-+ SRP_Calc_B;
-+ SRP_VBASE_new;
-+ SRP_check_known_gN_param;
-+ SRP_Calc_A;
-+ SRP_Verify_A_mod_N;
-+ SRP_VBASE_init;
-+ SRP_Verify_B_mod_N;
-+ EC_KEY_set_public_key_affine_coordinates;
-+ EC_KEY_set_pub_key_aff_coords;
-+ EVP_aes_192_ctr;
-+ EVP_PKEY_meth_get0_info;
-+ EVP_PKEY_meth_copy;
-+ ERR_add_error_vdata;
-+ EVP_aes_128_ctr;
-+ EVP_aes_256_ctr;
-+ EC_GFp_nistp224_method;
-+ EC_KEY_get_flags;
-+ RSA_padding_add_PKCS1_PSS_mgf1;
-+ EVP_aes_128_xts;
-+ EVP_aes_256_xts;
-+ EVP_aes_128_gcm;
-+ EC_KEY_clear_flags;
-+ EC_KEY_set_flags;
-+ EVP_aes_256_ccm;
-+ RSA_verify_PKCS1_PSS_mgf1;
-+ EVP_aes_128_ccm;
-+ EVP_aes_192_gcm;
-+ X509_ALGOR_set_md;
-+ RAND_init_fips;
-+ EVP_aes_256_gcm;
-+ EVP_aes_192_ccm;
-+ CMAC_CTX_copy;
-+ CMAC_CTX_free;
-+ CMAC_CTX_get0_cipher_ctx;
-+ CMAC_CTX_cleanup;
-+ CMAC_Init;
-+ CMAC_Update;
-+ CMAC_resume;
-+ CMAC_CTX_new;
-+ CMAC_Final;
-+ CRYPTO_ctr128_encrypt_ctr32;
-+ CRYPTO_gcm128_release;
-+ CRYPTO_ccm128_decrypt_ccm64;
-+ CRYPTO_ccm128_encrypt;
-+ CRYPTO_gcm128_encrypt;
-+ CRYPTO_xts128_encrypt;
-+ EVP_rc4_hmac_md5;
-+ CRYPTO_nistcts128_decrypt_block;
-+ CRYPTO_gcm128_setiv;
-+ CRYPTO_nistcts128_encrypt;
-+ EVP_aes_128_cbc_hmac_sha1;
-+ CRYPTO_gcm128_tag;
-+ CRYPTO_ccm128_encrypt_ccm64;
-+ ENGINE_load_rdrand;
-+ CRYPTO_ccm128_setiv;
-+ CRYPTO_nistcts128_encrypt_block;
-+ CRYPTO_gcm128_aad;
-+ CRYPTO_ccm128_init;
-+ CRYPTO_nistcts128_decrypt;
-+ CRYPTO_gcm128_new;
-+ CRYPTO_ccm128_tag;
-+ CRYPTO_ccm128_decrypt;
-+ CRYPTO_ccm128_aad;
-+ CRYPTO_gcm128_init;
-+ CRYPTO_gcm128_decrypt;
-+ ENGINE_load_rsax;
-+ CRYPTO_gcm128_decrypt_ctr32;
-+ CRYPTO_gcm128_encrypt_ctr32;
-+ CRYPTO_gcm128_finish;
-+ EVP_aes_256_cbc_hmac_sha1;
-+ PKCS5_pbkdf2_set;
-+ CMS_add0_recipient_password;
-+ CMS_decrypt_set1_password;
-+ CMS_RecipientInfo_set0_password;
-+ RAND_set_fips_drbg_type;
-+ X509_REQ_sign_ctx;
-+ RSA_PSS_PARAMS_new;
-+ X509_CRL_sign_ctx;
-+ X509_signature_dump;
-+ d2i_RSA_PSS_PARAMS;
-+ RSA_PSS_PARAMS_it;
-+ RSA_PSS_PARAMS_free;
-+ X509_sign_ctx;
-+ i2d_RSA_PSS_PARAMS;
-+ ASN1_item_sign_ctx;
-+ EC_GFp_nistp521_method;
-+ EC_GFp_nistp256_method;
-+ OPENSSL_stderr;
-+ OPENSSL_cpuid_setup;
-+ OPENSSL_showfatal;
-+ BIO_new_dgram_sctp;
-+ BIO_dgram_sctp_msg_waiting;
-+ BIO_dgram_sctp_wait_for_dry;
-+ BIO_s_datagram_sctp;
-+ BIO_dgram_is_sctp;
-+ BIO_dgram_sctp_notification_cb;
-+ CRYPTO_memcmp;
-+ SSL_CTX_set_alpn_protos;
-+ SSL_set_alpn_protos;
-+ SSL_CTX_set_alpn_select_cb;
-+ SSL_get0_alpn_selected;
-+ SSL_CTX_set_custom_cli_ext;
-+ SSL_CTX_set_custom_srv_ext;
-+ SSL_CTX_set_srv_supp_data;
-+ SSL_CTX_set_cli_supp_data;
-+ SSL_set_cert_cb;
-+ SSL_CTX_use_serverinfo;
-+ SSL_CTX_use_serverinfo_file;
-+ SSL_CTX_set_cert_cb;
-+ SSL_CTX_get0_param;
-+ SSL_get0_param;
-+ SSL_certs_clear;
-+ DTLSv1_2_method;
-+ DTLSv1_2_server_method;
-+ DTLSv1_2_client_method;
-+ DTLS_method;
-+ DTLS_server_method;
-+ DTLS_client_method;
-+ SSL_CTX_get_ssl_method;
-+ SSL_CTX_get0_certificate;
-+ SSL_CTX_get0_privatekey;
-+ SSL_COMP_set0_compression_methods;
-+ SSL_COMP_free_compression_methods;
-+ SSL_CIPHER_find;
-+ SSL_is_server;
-+ SSL_CONF_CTX_new;
-+ SSL_CONF_CTX_finish;
-+ SSL_CONF_CTX_free;
-+ SSL_CONF_CTX_set_flags;
-+ SSL_CONF_CTX_clear_flags;
-+ SSL_CONF_CTX_set1_prefix;
-+ SSL_CONF_CTX_set_ssl;
-+ SSL_CONF_CTX_set_ssl_ctx;
-+ SSL_CONF_cmd;
-+ SSL_CONF_cmd_argv;
-+ SSL_CONF_cmd_value_type;
-+ SSL_trace;
-+ SSL_CIPHER_standard_name;
-+ SSL_get_tlsa_record_byname;
-+ ASN1_TIME_diff;
-+ BIO_hex_string;
-+ CMS_RecipientInfo_get0_pkey_ctx;
-+ CMS_RecipientInfo_encrypt;
-+ CMS_SignerInfo_get0_pkey_ctx;
-+ CMS_SignerInfo_get0_md_ctx;
-+ CMS_SignerInfo_get0_signature;
-+ CMS_RecipientInfo_kari_get0_alg;
-+ CMS_RecipientInfo_kari_get0_reks;
-+ CMS_RecipientInfo_kari_get0_orig_id;
-+ CMS_RecipientInfo_kari_orig_id_cmp;
-+ CMS_RecipientEncryptedKey_get0_id;
-+ CMS_RecipientEncryptedKey_cert_cmp;
-+ CMS_RecipientInfo_kari_set0_pkey;
-+ CMS_RecipientInfo_kari_get0_ctx;
-+ CMS_RecipientInfo_kari_decrypt;
-+ CMS_SharedInfo_encode;
-+ DH_compute_key_padded;
-+ d2i_DHxparams;
-+ i2d_DHxparams;
-+ DH_get_1024_160;
-+ DH_get_2048_224;
-+ DH_get_2048_256;
-+ DH_KDF_X9_42;
-+ ECDH_KDF_X9_62;
-+ ECDSA_METHOD_new;
-+ ECDSA_METHOD_free;
-+ ECDSA_METHOD_set_app_data;
-+ ECDSA_METHOD_get_app_data;
-+ ECDSA_METHOD_set_sign;
-+ ECDSA_METHOD_set_sign_setup;
-+ ECDSA_METHOD_set_verify;
-+ ECDSA_METHOD_set_flags;
-+ ECDSA_METHOD_set_name;
-+ EVP_des_ede3_wrap;
-+ EVP_aes_128_wrap;
-+ EVP_aes_192_wrap;
-+ EVP_aes_256_wrap;
-+ EVP_aes_128_cbc_hmac_sha256;
-+ EVP_aes_256_cbc_hmac_sha256;
-+ CRYPTO_128_wrap;
-+ CRYPTO_128_unwrap;
-+ OCSP_REQ_CTX_nbio;
-+ OCSP_REQ_CTX_new;
-+ OCSP_set_max_response_length;
-+ OCSP_REQ_CTX_i2d;
-+ OCSP_REQ_CTX_nbio_d2i;
-+ OCSP_REQ_CTX_get0_mem_bio;
-+ OCSP_REQ_CTX_http;
-+ RSA_padding_add_PKCS1_OAEP_mgf1;
-+ RSA_padding_check_PKCS1_OAEP_mgf1;
-+ RSA_OAEP_PARAMS_free;
-+ RSA_OAEP_PARAMS_it;
-+ RSA_OAEP_PARAMS_new;
-+ SSL_get_sigalgs;
-+ SSL_get_shared_sigalgs;
-+ SSL_check_chain;
-+ X509_chain_up_ref;
-+ X509_http_nbio;
-+ X509_CRL_http_nbio;
-+ X509_REVOKED_dup;
-+ i2d_re_X509_tbs;
-+ X509_get0_signature;
-+ X509_get_signature_nid;
-+ X509_CRL_diff;
-+ X509_chain_check_suiteb;
-+ X509_CRL_check_suiteb;
-+ X509_check_host;
-+ X509_check_email;
-+ X509_check_ip;
-+ X509_check_ip_asc;
-+ X509_STORE_set_lookup_crls_cb;
-+ X509_STORE_CTX_get0_store;
-+ X509_VERIFY_PARAM_set1_host;
-+ X509_VERIFY_PARAM_add1_host;
-+ X509_VERIFY_PARAM_set_hostflags;
-+ X509_VERIFY_PARAM_get0_peername;
-+ X509_VERIFY_PARAM_set1_email;
-+ X509_VERIFY_PARAM_set1_ip;
-+ X509_VERIFY_PARAM_set1_ip_asc;
-+ X509_VERIFY_PARAM_get0_name;
-+ X509_VERIFY_PARAM_get_count;
-+ X509_VERIFY_PARAM_get0;
-+ X509V3_EXT_free;
-+ EC_GROUP_get_mont_data;
-+ EC_curve_nid2nist;
-+ EC_curve_nist2nid;
-+ PEM_write_bio_DHxparams;
-+ PEM_write_DHxparams;
-+ SSL_CTX_add_client_custom_ext;
-+ SSL_CTX_add_server_custom_ext;
-+ SSL_extension_supported;
-+ BUF_strnlen;
-+ sk_deep_copy;
-+ SSL_test_functions;
-+
-+ local:
-+ *;
-+};
-+
-+OPENSSL_1.0.2g {
-+ global:
-+ SRP_VBASE_get1_by_user;
-+ SRP_user_pwd_free;
-+} OPENSSL_1.0.2d;
-+
-Index: openssl-1.0.2~beta1.obsolete.0.0498436515490575/engines/openssl.ld
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ openssl-1.0.2~beta1.obsolete.0.0498436515490575/engines/openssl.ld 2014-02-24 21:02:30.000000000 +0100
-@@ -0,0 +1,10 @@
-+OPENSSL_1.0.2 {
-+ global:
-+ bind_engine;
-+ v_check;
-+ OPENSSL_init;
-+ OPENSSL_finish;
-+ local:
-+ *;
-+};
-+
-Index: openssl-1.0.2~beta1.obsolete.0.0498436515490575/engines/ccgost/openssl.ld
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ openssl-1.0.2~beta1.obsolete.0.0498436515490575/engines/ccgost/openssl.ld 2014-02-24 21:02:30.000000000 +0100
-@@ -0,0 +1,10 @@
-+OPENSSL_1.0.2 {
-+ global:
-+ bind_engine;
-+ v_check;
-+ OPENSSL_init;
-+ OPENSSL_finish;
-+ local:
-+ *;
-+};
-+
diff --git a/poky/meta/recipes-connectivity/openssl/openssl10/engines-install-in-libdir-ssl.patch b/poky/meta/recipes-connectivity/openssl/openssl10/engines-install-in-libdir-ssl.patch
deleted file mode 100644
index a574648..0000000
--- a/poky/meta/recipes-connectivity/openssl/openssl10/engines-install-in-libdir-ssl.patch
+++ /dev/null
@@ -1,64 +0,0 @@
-Upstream-Status: Inappropriate [configuration]
-
-
-Index: openssl-1.0.2/engines/Makefile
-===================================================================
---- openssl-1.0.2.orig/engines/Makefile
-+++ openssl-1.0.2/engines/Makefile
-@@ -107,13 +107,13 @@ install:
- @[ -n "$(INSTALLTOP)" ] # should be set by top Makefile...
- @if [ -n "$(SHARED_LIBS)" ]; then \
- set -e; \
-- $(PERL) $(TOP)/util/mkdir-p.pl $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines; \
-+ $(PERL) $(TOP)/util/mkdir-p.pl $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/ssl/engines; \
- for l in $(LIBNAMES); do \
- ( echo installing $$l; \
- pfx=lib; \
- if expr "$(PLATFORM)" : "Cygwin" >/dev/null; then \
- sfx=".so"; \
-- cp cyg$$l.dll $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines/$$pfx$$l$$sfx.new; \
-+ cp cyg$$l.dll $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/ssl/engines/$$pfx$$l$$sfx.new; \
- else \
- case "$(CFLAGS)" in \
- *DSO_BEOS*) sfx=".so";; \
-@@ -122,10 +122,10 @@ install:
- *DSO_WIN32*) sfx="eay32.dll"; pfx=;; \
- *) sfx=".bad";; \
- esac; \
-- cp $$pfx$$l$$sfx $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines/$$pfx$$l$$sfx.new; \
-+ cp $$pfx$$l$$sfx $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/ssl/engines/$$pfx$$l$$sfx.new; \
- fi; \
-- chmod 555 $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines/$$pfx$$l$$sfx.new; \
-- mv -f $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines/$$pfx$$l$$sfx.new $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines/$$pfx$$l$$sfx ); \
-+ chmod 555 $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/ssl/engines/$$pfx$$l$$sfx.new; \
-+ mv -f $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/ssl/engines/$$pfx$$l$$sfx.new $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/ssl/engines/$$pfx$$l$$sfx ); \
- done; \
- fi
- @target=install; $(RECURSIVE_MAKE)
-Index: openssl-1.0.2/engines/ccgost/Makefile
-===================================================================
---- openssl-1.0.2.orig/engines/ccgost/Makefile
-+++ openssl-1.0.2/engines/ccgost/Makefile
-@@ -47,7 +47,7 @@ install:
- pfx=lib; \
- if expr "$(PLATFORM)" : "Cygwin" >/dev/null; then \
- sfx=".so"; \
-- cp cyg$(LIBNAME).dll $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines/$${pfx}$(LIBNAME)$$sfx.new; \
-+ cp cyg$(LIBNAME).dll $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/ssl/engines/$${pfx}$(LIBNAME)$$sfx.new; \
- else \
- case "$(CFLAGS)" in \
- *DSO_BEOS*) sfx=".so";; \
-@@ -56,10 +56,10 @@ install:
- *DSO_WIN32*) sfx="eay32.dll"; pfx=;; \
- *) sfx=".bad";; \
- esac; \
-- cp $${pfx}$(LIBNAME)$$sfx $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines/$${pfx}$(LIBNAME)$$sfx.new; \
-+ cp $${pfx}$(LIBNAME)$$sfx $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/ssl/engines/$${pfx}$(LIBNAME)$$sfx.new; \
- fi; \
-- chmod 555 $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines/$${pfx}$(LIBNAME)$$sfx.new; \
-- mv -f $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines/$${pfx}$(LIBNAME)$$sfx.new $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines/$${pfx}$(LIBNAME)$$sfx; \
-+ chmod 555 $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/ssl/engines/$${pfx}$(LIBNAME)$$sfx.new; \
-+ mv -f $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/ssl/engines/$${pfx}$(LIBNAME)$$sfx.new $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/ssl/engines/$${pfx}$(LIBNAME)$$sfx; \
- fi
-
- links:
diff --git a/poky/meta/recipes-connectivity/openssl/openssl10/oe-ldflags.patch b/poky/meta/recipes-connectivity/openssl/openssl10/oe-ldflags.patch
deleted file mode 100644
index 292e13d..0000000
--- a/poky/meta/recipes-connectivity/openssl/openssl10/oe-ldflags.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-Upstream-Status: Inappropriate [open-embedded]
-
-Index: openssl-1.0.0/Makefile.shared
-===================================================================
---- openssl-1.0.0.orig/Makefile.shared
-+++ openssl-1.0.0/Makefile.shared
-@@ -92,7 +92,7 @@
- LINK_APP= \
- ( $(SET_X); \
- LIBDEPS="$${LIBDEPS:-$(LIBDEPS)}"; \
-- LDCMD="$${LDCMD:-$(CC)}"; LDFLAGS="$${LDFLAGS:-$(CFLAGS)}"; \
-+ LDCMD="$${LDCMD:-$(CC)}"; LDFLAGS="$(OE_LDFLAGS) $${LDFLAGS:-$(CFLAGS)}"; \
- LIBPATH=`for x in $$LIBDEPS; do echo $$x; done | sed -e 's/^ *-L//;t' -e d | uniq`; \
- LIBPATH=`echo $$LIBPATH | sed -e 's/ /:/g'`; \
- LD_LIBRARY_PATH=$$LIBPATH:$$LD_LIBRARY_PATH \
-@@ -102,7 +102,7 @@
- ( $(SET_X); \
- LIBDEPS="$${LIBDEPS:-$(LIBDEPS)}"; \
- SHAREDCMD="$${SHAREDCMD:-$(CC)}"; \
-- SHAREDFLAGS="$${SHAREDFLAGS:-$(CFLAGS) $(SHARED_LDFLAGS)}"; \
-+ SHAREDFLAGS="$(OE_LDFLAGS) $${SHAREDFLAGS:-$(CFLAGS) $(SHARED_LDFLAGS)}"; \
- LIBPATH=`for x in $$LIBDEPS; do echo $$x; done | sed -e 's/^ *-L//;t' -e d | uniq`; \
- LIBPATH=`echo $$LIBPATH | sed -e 's/ /:/g'`; \
- LD_LIBRARY_PATH=$$LIBPATH:$$LD_LIBRARY_PATH \
diff --git a/poky/meta/recipes-connectivity/openssl/openssl10/openssl-c_rehash.sh b/poky/meta/recipes-connectivity/openssl/openssl10/openssl-c_rehash.sh
deleted file mode 100644
index 6620fdc..0000000
--- a/poky/meta/recipes-connectivity/openssl/openssl10/openssl-c_rehash.sh
+++ /dev/null
@@ -1,222 +0,0 @@
-#!/bin/sh
-#
-# Ben Secrest <blsecres@gmail.com>
-#
-# sh c_rehash script, scan all files in a directory
-# and add symbolic links to their hash values.
-#
-# based on the c_rehash perl script distributed with openssl
-#
-# LICENSE: See OpenSSL license
-# ^^acceptable?^^
-#
-
-# default certificate location
-DIR=/etc/openssl
-
-# for filetype bitfield
-IS_CERT=$(( 1 << 0 ))
-IS_CRL=$(( 1 << 1 ))
-
-
-# check to see if a file is a certificate file or a CRL file
-# arguments:
-# 1. the filename to be scanned
-# returns:
-# bitfield of file type; uses ${IS_CERT} and ${IS_CRL}
-#
-check_file()
-{
- local IS_TYPE=0
-
- # make IFS a newline so we can process grep output line by line
- local OLDIFS=${IFS}
- IFS=$( printf "\n" )
-
- # XXX: could be more efficient to have two 'grep -m' but is -m portable?
- for LINE in $( grep '^-----BEGIN .*-----' ${1} )
- do
- if echo ${LINE} \
- | grep -q -E '^-----BEGIN (X509 |TRUSTED )?CERTIFICATE-----'
- then
- IS_TYPE=$(( ${IS_TYPE} | ${IS_CERT} ))
-
- if [ $(( ${IS_TYPE} & ${IS_CRL} )) -ne 0 ]
- then
- break
- fi
- elif echo ${LINE} | grep -q '^-----BEGIN X509 CRL-----'
- then
- IS_TYPE=$(( ${IS_TYPE} | ${IS_CRL} ))
-
- if [ $(( ${IS_TYPE} & ${IS_CERT} )) -ne 0 ]
- then
- break
- fi
- fi
- done
-
- # restore IFS
- IFS=${OLDIFS}
-
- return ${IS_TYPE}
-}
-
-
-#
-# use openssl to fingerprint a file
-# arguments:
-# 1. the filename to fingerprint
-# 2. the method to use (x509, crl)
-# returns:
-# none
-# assumptions:
-# user will capture output from last stage of pipeline
-#
-fingerprint()
-{
- ${SSL_CMD} ${2} -fingerprint -noout -in ${1} | sed 's/^.*=//' | tr -d ':'
-}
-
-
-#
-# link_hash - create links to certificate files
-# arguments:
-# 1. the filename to create a link for
-# 2. the type of certificate being linked (x509, crl)
-# returns:
-# 0 on success, 1 otherwise
-#
-link_hash()
-{
- local FINGERPRINT=$( fingerprint ${1} ${2} )
- local HASH=$( ${SSL_CMD} ${2} -hash -noout -in ${1} )
- local SUFFIX=0
- local LINKFILE=''
- local TAG=''
-
- if [ ${2} = "crl" ]
- then
- TAG='r'
- fi
-
- LINKFILE=${HASH}.${TAG}${SUFFIX}
-
- while [ -f ${LINKFILE} ]
- do
- if [ ${FINGERPRINT} = $( fingerprint ${LINKFILE} ${2} ) ]
- then
- echo "NOTE: Skipping duplicate file ${1}" >&2
- return 1
- fi
-
- SUFFIX=$(( ${SUFFIX} + 1 ))
- LINKFILE=${HASH}.${TAG}${SUFFIX}
- done
-
- echo "${3} => ${LINKFILE}"
-
- # assume any system with a POSIX shell will either support symlinks or
- # do something to handle this gracefully
- ln -s ${3} ${LINKFILE}
-
- return 0
-}
-
-
-# hash_dir create hash links in a given directory
-hash_dir()
-{
- echo "Doing ${1}"
-
- cd ${1}
-
- ls -1 * 2>/dev/null | while read FILE
- do
- if echo ${FILE} | grep -q -E '^[[:xdigit:]]{8}\.r?[[:digit:]]+$' \
- && [ -h "${FILE}" ]
- then
- rm ${FILE}
- fi
- done
-
- ls -1 *.pem *.cer *.crt *.crl 2>/dev/null | while read FILE
- do
- REAL_FILE=${FILE}
- # if we run on build host then get to the real files in rootfs
- if [ -n "${SYSROOT}" -a -h ${FILE} ]
- then
- FILE=$( readlink ${FILE} )
- # check the symlink is absolute (or dangling in other word)
- if [ "x/" = "x$( echo ${FILE} | cut -c1 -)" ]
- then
- REAL_FILE=${SYSROOT}/${FILE}
- fi
- fi
-
- check_file ${REAL_FILE}
- local FILE_TYPE=${?}
- local TYPE_STR=''
-
- if [ $(( ${FILE_TYPE} & ${IS_CERT} )) -ne 0 ]
- then
- TYPE_STR='x509'
- elif [ $(( ${FILE_TYPE} & ${IS_CRL} )) -ne 0 ]
- then
- TYPE_STR='crl'
- else
- echo "NOTE: ${FILE} does not contain a certificate or CRL: skipping" >&2
- continue
- fi
-
- link_hash ${REAL_FILE} ${TYPE_STR} ${FILE}
- done
-}
-
-
-# choose the name of an ssl application
-if [ -n "${OPENSSL}" ]
-then
- SSL_CMD=$(which ${OPENSSL} 2>/dev/null)
-else
- SSL_CMD=/usr/bin/openssl
- OPENSSL=${SSL_CMD}
- export OPENSSL
-fi
-
-# fix paths
-PATH=${PATH}:${DIR}/bin
-export PATH
-
-# confirm existance/executability of ssl command
-if ! [ -x ${SSL_CMD} ]
-then
- echo "${0}: rehashing skipped ('openssl' program not available)" >&2
- exit 0
-fi
-
-# determine which directories to process
-old_IFS=$IFS
-if [ ${#} -gt 0 ]
-then
- IFS=':'
- DIRLIST=${*}
-elif [ -n "${SSL_CERT_DIR}" ]
-then
- DIRLIST=$SSL_CERT_DIR
-else
- DIRLIST=${DIR}/certs
-fi
-
-IFS=':'
-
-# process directories
-for CERT_DIR in ${DIRLIST}
-do
- if [ -d ${CERT_DIR} -a -w ${CERT_DIR} ]
- then
- IFS=$old_IFS
- hash_dir ${CERT_DIR}
- IFS=':'
- fi
-done
diff --git a/poky/meta/recipes-connectivity/openssl/openssl10/openssl-fix-des.pod-error.patch b/poky/meta/recipes-connectivity/openssl/openssl10/openssl-fix-des.pod-error.patch
deleted file mode 100644
index de49729..0000000
--- a/poky/meta/recipes-connectivity/openssl/openssl10/openssl-fix-des.pod-error.patch
+++ /dev/null
@@ -1,19 +0,0 @@
-openssl: Fix pod2man des.pod error on Ubuntu 12.04
-
-This is a formatting fix, '=back' is required before
-'=head1' on Ubuntu 12.04.
-
-Upstream-Status: Pending
-Signed-off-by: Baogen Shang <baogen.shang@windriver.com>
-diff -urpN a_origin/des.pod b_modify/des.pod
---- a_origin/crypto/des/des.pod 2013-08-15 15:02:56.211674589 +0800
-+++ b_modify/crypto/des/des.pod 2013-08-15 15:04:14.439674580 +0800
-@@ -181,6 +181,8 @@ the uuencoded file to embed in the begin
- output. If there is no name specified after the B<-u>, the name text.des
- will be embedded in the header.
-
-+=back
-+
- =head1 SEE ALSO
-
- ps(1),
diff --git a/poky/meta/recipes-connectivity/openssl/openssl10/openssl_fix_for_x32.patch b/poky/meta/recipes-connectivity/openssl/openssl10/openssl_fix_for_x32.patch
deleted file mode 100644
index 0f08a64..0000000
--- a/poky/meta/recipes-connectivity/openssl/openssl10/openssl_fix_for_x32.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-Upstream-Status: Pending
-
-Received from H J Liu @ Intel
-Make the assembly syntax compatible with x32 gcc. Othewise x32 gcc throws errors.
-Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com> 2011/07/13
-
-ported the patch to the 1.0.0e version
-Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com> 2011/12/01
-Index: openssl-1.0.2/crypto/bn/bn.h
-===================================================================
---- openssl-1.0.2.orig/crypto/bn/bn.h
-+++ openssl-1.0.2/crypto/bn/bn.h
-@@ -173,6 +173,13 @@ extern "C" {
- # endif
- # endif
-
-+/* Address type. */
-+#ifdef _WIN64
-+#define BN_ADDR unsigned long long
-+#else
-+#define BN_ADDR unsigned long
-+#endif
-+
- /*
- * assuming long is 64bit - this is the DEC Alpha unsigned long long is only
- * 64 bits :-(, don't define BN_LLONG for the DEC Alpha
-Index: openssl-1.0.2/crypto/bn/bn_exp.c
-===================================================================
---- openssl-1.0.2.orig/crypto/bn/bn_exp.c
-+++ openssl-1.0.2/crypto/bn/bn_exp.c
-@@ -638,7 +638,7 @@ static int MOD_EXP_CTIME_COPY_FROM_PREBU
- * multiple.
- */
- #define MOD_EXP_CTIME_ALIGN(x_) \
-- ((unsigned char*)(x_) + (MOD_EXP_CTIME_MIN_CACHE_LINE_WIDTH - (((size_t)(x_)) & (MOD_EXP_CTIME_MIN_CACHE_LINE_MASK))))
-+ ((unsigned char*)(x_) + (MOD_EXP_CTIME_MIN_CACHE_LINE_WIDTH - (((BN_ADDR)(x_)) & (MOD_EXP_CTIME_MIN_CACHE_LINE_MASK))))
-
- /*
- * This variant of BN_mod_exp_mont() uses fixed windows and the special
diff --git a/poky/meta/recipes-connectivity/openssl/openssl10/parallel.patch b/poky/meta/recipes-connectivity/openssl/openssl10/parallel.patch
deleted file mode 100644
index 41abf3d..0000000
--- a/poky/meta/recipes-connectivity/openssl/openssl10/parallel.patch
+++ /dev/null
@@ -1,368 +0,0 @@
-From 7fb1192f112c1920bfd39f4185f34e9afff3cff2 Mon Sep 17 00:00:00 2001
-From: Ross Burton <ross.burton@intel.com>
-Date: Sat, 5 Mar 2016 00:12:02 +0000
-Subject: [PATCH 24/28] Fix the parallel races in the Makefiles.
-
-This patch was taken from the Gentoo packaging:
-https://gitweb.gentoo.org/repo/gentoo.git/plain/dev-libs/openssl/files/openssl-1.0.2g-parallel-build.patch
-
-Upstream-Status: Pending
-Signed-off-by: Ross Burton <ross.burton@intel.com>
-
-Refreshed for 1.0.2i
-Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
-
----
- Makefile.org | 14 ++--
- Makefile.shared | 2 +
- crypto/Makefile | 10 +--
- engines/Makefile | 6 +-
- test/Makefile | 94 +++++++++++-----------
- 5 files changed, 64 insertions(+), 62 deletions(-)
-
-diff --git a/Makefile.org b/Makefile.org
-index efcfafb..82eab91 100644
---- a/Makefile.org
-+++ b/Makefile.org
-@@ -282,17 +282,17 @@ build_libcrypto: build_crypto build_engines libcrypto.pc
- build_libssl: build_ssl libssl.pc
-
- build_crypto:
-- @dir=crypto; target=all; $(BUILD_ONE_CMD)
-+ +@dir=crypto; target=all; $(BUILD_ONE_CMD)
- build_ssl: build_crypto
-- @dir=ssl; target=all; $(BUILD_ONE_CMD)
-+ +@dir=ssl; target=all; $(BUILD_ONE_CMD)
- build_engines: build_crypto
-- @dir=engines; target=all; $(BUILD_ONE_CMD)
-+ +@dir=engines; target=all; $(BUILD_ONE_CMD)
- build_apps: build_libs
-- @dir=apps; target=all; $(BUILD_ONE_CMD)
-+ +@dir=apps; target=all; $(BUILD_ONE_CMD)
- build_tests: build_libs
-- @dir=test; target=all; $(BUILD_ONE_CMD)
-+ +@dir=test; target=all; $(BUILD_ONE_CMD)
- build_tools: build_libs
-- @dir=tools; target=all; $(BUILD_ONE_CMD)
-+ +@dir=tools; target=all; $(BUILD_ONE_CMD)
-
- all_testapps: build_libs build_testapps
- build_testapps:
-@@ -564,7 +564,7 @@ install_sw:
- (cp $$i $(INSTALL_PREFIX)$(INSTALLTOP)/include/openssl/$$i; \
- chmod 644 $(INSTALL_PREFIX)$(INSTALLTOP)/include/openssl/$$i ); \
- done;
-- @set -e; target=install; $(RECURSIVE_BUILD_CMD)
-+ +@set -e; target=install; $(RECURSIVE_BUILD_CMD)
- @set -e; liblist="$(LIBS)"; for i in $$liblist ;\
- do \
- if [ -f "$$i" ]; then \
-diff --git a/Makefile.shared b/Makefile.shared
-index bbefb2b..18013a9 100644
---- a/Makefile.shared
-+++ b/Makefile.shared
-@@ -105,6 +105,7 @@ LINK_SO= \
- SHAREDFLAGS="$(OE_LDFLAGS) $${SHAREDFLAGS:-$(CFLAGS) $(SHARED_LDFLAGS)}"; \
- LIBPATH=`for x in $$LIBDEPS; do echo $$x; done | sed -e 's/^ *-L//;t' -e d | uniq`; \
- LIBPATH=`echo $$LIBPATH | sed -e 's/ /:/g'`; \
-+ [ -e $$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX ] && exit 0; \
- LD_LIBRARY_PATH=$$LIBPATH:$$LD_LIBRARY_PATH \
- $${SHAREDCMD} $${SHAREDFLAGS} \
- -o $$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX \
-@@ -122,6 +123,7 @@ SYMLINK_SO= \
- done; \
- fi; \
- if [ -n "$$SHLIB_SOVER" ]; then \
-+ [ -e "$$SHLIB$$SHLIB_SUFFIX" ] || \
- ( $(SET_X); rm -f $$SHLIB$$SHLIB_SUFFIX; \
- ln -s $$prev $$SHLIB$$SHLIB_SUFFIX ); \
- fi; \
-diff --git a/crypto/Makefile b/crypto/Makefile
-index 875ea1a..c22b683 100644
---- a/crypto/Makefile
-+++ b/crypto/Makefile
-@@ -85,11 +85,11 @@ testapps:
- @if [ -z "$(THIS)" ]; then $(MAKE) -f $(TOP)/Makefile reflect THIS=$@; fi
-
- subdirs:
-- @target=all; $(RECURSIVE_MAKE)
-+ +@target=all; $(RECURSIVE_MAKE)
-
- files:
- $(PERL) $(TOP)/util/files.pl "CPUID_OBJ=$(CPUID_OBJ)" Makefile >> $(TOP)/MINFO
-- @target=files; $(RECURSIVE_MAKE)
-+ +@target=files; $(RECURSIVE_MAKE)
-
- links:
- @$(PERL) $(TOP)/util/mklink.pl ../include/openssl $(EXHEADER)
-@@ -100,7 +100,7 @@ links:
- # lib: $(LIB): are splitted to avoid end-less loop
- lib: $(LIB)
- @touch lib
--$(LIB): $(LIBOBJ)
-+$(LIB): $(LIBOBJ) | subdirs
- $(AR) $(LIB) $(LIBOBJ)
- test -z "$(FIPSLIBDIR)" || $(AR) $(LIB) $(FIPSLIBDIR)fipscanister.o
- $(RANLIB) $(LIB) || echo Never mind.
-@@ -111,7 +111,7 @@ shared: buildinf.h lib subdirs
- fi
-
- libs:
-- @target=lib; $(RECURSIVE_MAKE)
-+ +@target=lib; $(RECURSIVE_MAKE)
-
- install:
- @[ -n "$(INSTALLTOP)" ] # should be set by top Makefile...
-@@ -120,7 +120,7 @@ install:
- (cp $$i $(INSTALL_PREFIX)$(INSTALLTOP)/include/openssl/$$i; \
- chmod 644 $(INSTALL_PREFIX)$(INSTALLTOP)/include/openssl/$$i ); \
- done;
-- @target=install; $(RECURSIVE_MAKE)
-+ +@target=install; $(RECURSIVE_MAKE)
-
- lint:
- @target=lint; $(RECURSIVE_MAKE)
-diff --git a/engines/Makefile b/engines/Makefile
-index fe8e9ca..a43d21b 100644
---- a/engines/Makefile
-+++ b/engines/Makefile
-@@ -72,7 +72,7 @@ top:
-
- all: lib subdirs
-
--lib: $(LIBOBJ)
-+lib: $(LIBOBJ) | subdirs
- @if [ -n "$(SHARED_LIBS)" ]; then \
- set -e; \
- for l in $(LIBNAMES); do \
-@@ -89,7 +89,7 @@ lib: $(LIBOBJ)
-
- subdirs:
- echo $(EDIRS)
-- @target=all; $(RECURSIVE_MAKE)
-+ +@target=all; $(RECURSIVE_MAKE)
-
- files:
- $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO
-@@ -128,7 +128,7 @@ install:
- mv -f $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/ssl/engines/$$pfx$$l$$sfx.new $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/ssl/engines/$$pfx$$l$$sfx ); \
- done; \
- fi
-- @target=install; $(RECURSIVE_MAKE)
-+ +@target=install; $(RECURSIVE_MAKE)
-
- tags:
- ctags $(SRC)
-diff --git a/test/Makefile b/test/Makefile
-index 36506cf..c69af8b 100644
---- a/test/Makefile
-+++ b/test/Makefile
-@@ -145,7 +145,7 @@ install:
- tags:
- ctags $(SRC)
-
--tests: exe apps $(TESTS)
-+tests: exe $(TESTS)
-
- apps:
- @(cd ..; $(MAKE) DIRS=apps all)
-@@ -448,142 +448,142 @@ BUILD_CMD_STATIC=shlib_target=; \
- link_app.$${shlib_target}
-
- $(RSATEST)$(EXE_EXT): $(RSATEST).o $(DLIBCRYPTO)
-- @target=$(RSATEST); $(BUILD_CMD)
-+ +@target=$(RSATEST); $(BUILD_CMD)
-
- $(BNTEST)$(EXE_EXT): $(BNTEST).o $(DLIBCRYPTO)
-- @target=$(BNTEST); $(BUILD_CMD)
-+ +@target=$(BNTEST); $(BUILD_CMD)
-
- $(ECTEST)$(EXE_EXT): $(ECTEST).o $(DLIBCRYPTO)
-- @target=$(ECTEST); $(BUILD_CMD)
-+ +@target=$(ECTEST); $(BUILD_CMD)
-
- $(EXPTEST)$(EXE_EXT): $(EXPTEST).o $(DLIBCRYPTO)
-- @target=$(EXPTEST); $(BUILD_CMD)
-+ +@target=$(EXPTEST); $(BUILD_CMD)
-
- $(IDEATEST)$(EXE_EXT): $(IDEATEST).o $(DLIBCRYPTO)
-- @target=$(IDEATEST); $(BUILD_CMD)
-+ +@target=$(IDEATEST); $(BUILD_CMD)
-
- $(MD2TEST)$(EXE_EXT): $(MD2TEST).o $(DLIBCRYPTO)
-- @target=$(MD2TEST); $(BUILD_CMD)
-+ +@target=$(MD2TEST); $(BUILD_CMD)
-
- $(SHATEST)$(EXE_EXT): $(SHATEST).o $(DLIBCRYPTO)
-- @target=$(SHATEST); $(BUILD_CMD)
-+ +@target=$(SHATEST); $(BUILD_CMD)
-
- $(SHA1TEST)$(EXE_EXT): $(SHA1TEST).o $(DLIBCRYPTO)
-- @target=$(SHA1TEST); $(BUILD_CMD)
-+ +@target=$(SHA1TEST); $(BUILD_CMD)
-
- $(SHA256TEST)$(EXE_EXT): $(SHA256TEST).o $(DLIBCRYPTO)
-- @target=$(SHA256TEST); $(BUILD_CMD)
-+ +@target=$(SHA256TEST); $(BUILD_CMD)
-
- $(SHA512TEST)$(EXE_EXT): $(SHA512TEST).o $(DLIBCRYPTO)
-- @target=$(SHA512TEST); $(BUILD_CMD)
-+ +@target=$(SHA512TEST); $(BUILD_CMD)
-
- $(RMDTEST)$(EXE_EXT): $(RMDTEST).o $(DLIBCRYPTO)
-- @target=$(RMDTEST); $(BUILD_CMD)
-+ +@target=$(RMDTEST); $(BUILD_CMD)
-
- $(MDC2TEST)$(EXE_EXT): $(MDC2TEST).o $(DLIBCRYPTO)
-- @target=$(MDC2TEST); $(BUILD_CMD)
-+ +@target=$(MDC2TEST); $(BUILD_CMD)
-
- $(MD4TEST)$(EXE_EXT): $(MD4TEST).o $(DLIBCRYPTO)
-- @target=$(MD4TEST); $(BUILD_CMD)
-+ +@target=$(MD4TEST); $(BUILD_CMD)
-
- $(MD5TEST)$(EXE_EXT): $(MD5TEST).o $(DLIBCRYPTO)
-- @target=$(MD5TEST); $(BUILD_CMD)
-+ +@target=$(MD5TEST); $(BUILD_CMD)
-
- $(HMACTEST)$(EXE_EXT): $(HMACTEST).o $(DLIBCRYPTO)
-- @target=$(HMACTEST); $(BUILD_CMD)
-+ +@target=$(HMACTEST); $(BUILD_CMD)
-
- $(WPTEST)$(EXE_EXT): $(WPTEST).o $(DLIBCRYPTO)
-- @target=$(WPTEST); $(BUILD_CMD)
-+ +@target=$(WPTEST); $(BUILD_CMD)
-
- $(RC2TEST)$(EXE_EXT): $(RC2TEST).o $(DLIBCRYPTO)
-- @target=$(RC2TEST); $(BUILD_CMD)
-+ +@target=$(RC2TEST); $(BUILD_CMD)
-
- $(BFTEST)$(EXE_EXT): $(BFTEST).o $(DLIBCRYPTO)
-- @target=$(BFTEST); $(BUILD_CMD)
-+ +@target=$(BFTEST); $(BUILD_CMD)
-
- $(CASTTEST)$(EXE_EXT): $(CASTTEST).o $(DLIBCRYPTO)
-- @target=$(CASTTEST); $(BUILD_CMD)
-+ +@target=$(CASTTEST); $(BUILD_CMD)
-
- $(RC4TEST)$(EXE_EXT): $(RC4TEST).o $(DLIBCRYPTO)
-- @target=$(RC4TEST); $(BUILD_CMD)
-+ +@target=$(RC4TEST); $(BUILD_CMD)
-
- $(RC5TEST)$(EXE_EXT): $(RC5TEST).o $(DLIBCRYPTO)
-- @target=$(RC5TEST); $(BUILD_CMD)
-+ +@target=$(RC5TEST); $(BUILD_CMD)
-
- $(DESTEST)$(EXE_EXT): $(DESTEST).o $(DLIBCRYPTO)
-- @target=$(DESTEST); $(BUILD_CMD)
-+ +@target=$(DESTEST); $(BUILD_CMD)
-
- $(RANDTEST)$(EXE_EXT): $(RANDTEST).o $(DLIBCRYPTO)
-- @target=$(RANDTEST); $(BUILD_CMD)
-+ +@target=$(RANDTEST); $(BUILD_CMD)
-
- $(DHTEST)$(EXE_EXT): $(DHTEST).o $(DLIBCRYPTO)
-- @target=$(DHTEST); $(BUILD_CMD)
-+ +@target=$(DHTEST); $(BUILD_CMD)
-
- $(DSATEST)$(EXE_EXT): $(DSATEST).o $(DLIBCRYPTO)
-- @target=$(DSATEST); $(BUILD_CMD)
-+ +@target=$(DSATEST); $(BUILD_CMD)
-
- $(METHTEST)$(EXE_EXT): $(METHTEST).o $(DLIBCRYPTO)
-- @target=$(METHTEST); $(BUILD_CMD)
-+ +@target=$(METHTEST); $(BUILD_CMD)
-
- $(SSLTEST)$(EXE_EXT): $(SSLTEST).o $(DLIBSSL) $(DLIBCRYPTO)
-- @target=$(SSLTEST); $(FIPS_BUILD_CMD)
-+ +@target=$(SSLTEST); $(FIPS_BUILD_CMD)
-
- $(ENGINETEST)$(EXE_EXT): $(ENGINETEST).o $(DLIBCRYPTO)
-- @target=$(ENGINETEST); $(BUILD_CMD)
-+ +@target=$(ENGINETEST); $(BUILD_CMD)
-
- $(EVPTEST)$(EXE_EXT): $(EVPTEST).o $(DLIBCRYPTO)
-- @target=$(EVPTEST); $(BUILD_CMD)
-+ +@target=$(EVPTEST); $(BUILD_CMD)
-
- $(EVPEXTRATEST)$(EXE_EXT): $(EVPEXTRATEST).o $(DLIBCRYPTO)
-- @target=$(EVPEXTRATEST); $(BUILD_CMD)
-+ +@target=$(EVPEXTRATEST); $(BUILD_CMD)
-
- $(ECDSATEST)$(EXE_EXT): $(ECDSATEST).o $(DLIBCRYPTO)
-- @target=$(ECDSATEST); $(BUILD_CMD)
-+ +@target=$(ECDSATEST); $(BUILD_CMD)
-
- $(ECDHTEST)$(EXE_EXT): $(ECDHTEST).o $(DLIBCRYPTO)
-- @target=$(ECDHTEST); $(BUILD_CMD)
-+ +@target=$(ECDHTEST); $(BUILD_CMD)
-
- $(IGETEST)$(EXE_EXT): $(IGETEST).o $(DLIBCRYPTO)
-- @target=$(IGETEST); $(BUILD_CMD)
-+ +@target=$(IGETEST); $(BUILD_CMD)
-
- $(JPAKETEST)$(EXE_EXT): $(JPAKETEST).o $(DLIBCRYPTO)
-- @target=$(JPAKETEST); $(BUILD_CMD)
-+ +@target=$(JPAKETEST); $(BUILD_CMD)
-
- $(ASN1TEST)$(EXE_EXT): $(ASN1TEST).o $(DLIBCRYPTO)
-- @target=$(ASN1TEST); $(BUILD_CMD)
-+ +@target=$(ASN1TEST); $(BUILD_CMD)
-
- $(SRPTEST)$(EXE_EXT): $(SRPTEST).o $(DLIBCRYPTO)
-- @target=$(SRPTEST); $(BUILD_CMD)
-+ +@target=$(SRPTEST); $(BUILD_CMD)
-
- $(V3NAMETEST)$(EXE_EXT): $(V3NAMETEST).o $(DLIBCRYPTO)
-- @target=$(V3NAMETEST); $(BUILD_CMD)
-+ +@target=$(V3NAMETEST); $(BUILD_CMD)
-
- $(HEARTBEATTEST)$(EXE_EXT): $(HEARTBEATTEST).o $(DLIBCRYPTO)
-- @target=$(HEARTBEATTEST); $(BUILD_CMD_STATIC)
-+ +@target=$(HEARTBEATTEST); $(BUILD_CMD_STATIC)
-
- $(CONSTTIMETEST)$(EXE_EXT): $(CONSTTIMETEST).o
-- @target=$(CONSTTIMETEST) $(BUILD_CMD)
-+ +@target=$(CONSTTIMETEST) $(BUILD_CMD)
-
- $(VERIFYEXTRATEST)$(EXE_EXT): $(VERIFYEXTRATEST).o
-- @target=$(VERIFYEXTRATEST) $(BUILD_CMD)
-+ +@target=$(VERIFYEXTRATEST) $(BUILD_CMD)
-
- $(CLIENTHELLOTEST)$(EXE_EXT): $(CLIENTHELLOTEST).o
-- @target=$(CLIENTHELLOTEST) $(BUILD_CMD)
-+ +@target=$(CLIENTHELLOTEST) $(BUILD_CMD)
-
- $(BADDTLSTEST)$(EXE_EXT): $(BADDTLSTEST).o
-- @target=$(BADDTLSTEST) $(BUILD_CMD)
-+ +@target=$(BADDTLSTEST) $(BUILD_CMD)
-
- $(FATALERRTEST)$(EXE_EXT): $(FATALERRTEST).o ssltestlib.o $(DLIBSSL) $(DLIBCRYPTO)
- @target=$(FATALERRTEST); exobj=ssltestlib.o; $(BUILD_CMD)
-
- $(X509TIMETEST)$(EXE_EXT): $(X509TIMETEST).o
-- @target=$(X509TIMETEST) $(BUILD_CMD)
-+ +@target=$(X509TIMETEST) $(BUILD_CMD)
-
- $(SSLV2CONFTEST)$(EXE_EXT): $(SSLV2CONFTEST).o
-- @target=$(SSLV2CONFTEST) $(BUILD_CMD)
-+ +@target=$(SSLV2CONFTEST) $(BUILD_CMD)
-
- $(DTLSTEST)$(EXE_EXT): $(DTLSTEST).o ssltestlib.o $(DLIBSSL) $(DLIBCRYPTO)
-- @target=$(DTLSTEST); exobj=ssltestlib.o; $(BUILD_CMD)
-+ +@target=$(DTLSTEST); exobj=ssltestlib.o; $(BUILD_CMD)
-
- #$(AESTEST).o: $(AESTEST).c
- # $(CC) -c $(CFLAGS) -DINTERMEDIATE_VALUE_KAT -DTRACE_KAT_MCT $(AESTEST).c
-@@ -596,7 +596,7 @@ $(DTLSTEST)$(EXE_EXT): $(DTLSTEST).o ssltestlib.o $(DLIBSSL) $(DLIBCRYPTO)
- # fi
-
- dummytest$(EXE_EXT): dummytest.o $(DLIBCRYPTO)
-- @target=dummytest; $(BUILD_CMD)
-+ +@target=dummytest; $(BUILD_CMD)
-
- # DO NOT DELETE THIS LINE -- make depend depends on it.
-
---
-2.15.1
-
diff --git a/poky/meta/recipes-connectivity/openssl/openssl10/ptest-deps.patch b/poky/meta/recipes-connectivity/openssl/openssl10/ptest-deps.patch
deleted file mode 100644
index ef6d179..0000000
--- a/poky/meta/recipes-connectivity/openssl/openssl10/ptest-deps.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-Remove Makefile dependencies for test targets
-
-These are probably here because the executables aren't always built for
-other platforms (e.g. Windows); however we can safely assume they'll
-always be there. None of the other test targets have such dependencies
-and if we don't remove them, make tries to rebuild the executables and
-fails during run-ptest.
-
-Upstream-Status: Inappropriate [config]
-
-Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
-
-Index: openssl-1.0.2/test/Makefile
-===================================================================
---- openssl-1.0.2.orig/test/Makefile
-+++ openssl-1.0.2/test/Makefile
-@@ -330,7 +330,7 @@ test_cms: ../apps/openssl$(EXE_EXT) cms-
- @echo "CMS consistency test"
- $(PERL) cms-test.pl
-
--test_srp: $(SRPTEST)$(EXE_EXT)
-+test_srp:
- @echo "Test SRP"
- ../util/shlib_wrap.sh ./srptest
-
-@@ -342,7 +342,7 @@ test_v3name: $(V3NAMETEST)$(EXE_EXT)
- @echo "Test X509v3_check_*"
- ../util/shlib_wrap.sh ./$(V3NAMETEST)
-
--test_heartbeat: $(HEARTBEATTEST)$(EXE_EXT)
-+test_heartbeat:
- ../util/shlib_wrap.sh ./$(HEARTBEATTEST)
-
- test_constant_time: $(CONSTTIMETEST)$(EXE_EXT)
diff --git a/poky/meta/recipes-connectivity/openssl/openssl10/ptest_makefile_deps.patch b/poky/meta/recipes-connectivity/openssl/openssl10/ptest_makefile_deps.patch
deleted file mode 100644
index 4202e61..0000000
--- a/poky/meta/recipes-connectivity/openssl/openssl10/ptest_makefile_deps.patch
+++ /dev/null
@@ -1,248 +0,0 @@
-Additional Makefile dependencies removal for test targets
-
-Removing the dependency check for test targets as these tests are
-causing a number of failures and "noise" during ptest execution.
-
-Upstream-Status: Inappropriate [config]
-
-Signed-off-by: Maxin B. John <maxin.john@intel.com>
-
-diff -Naur openssl-1.0.2d-orig/test/Makefile openssl-1.0.2d/test/Makefile
---- openssl-1.0.2d-orig/test/Makefile 2015-09-28 12:50:41.530022979 +0300
-+++ openssl-1.0.2d/test/Makefile 2015-09-28 12:57:45.930717240 +0300
-@@ -155,67 +155,67 @@
- ( $(MAKE) $$i && echo "PASS: $$i" ) || echo "FAIL: $$i"; \
- done)
-
--test_evp: $(EVPTEST)$(EXE_EXT) evptests.txt
-+test_evp:
- ../util/shlib_wrap.sh ./$(EVPTEST) evptests.txt
-
--test_evp_extra: $(EVPEXTRATEST)$(EXE_EXT)
-+test_evp_extra:
- ../util/shlib_wrap.sh ./$(EVPEXTRATEST)
-
--test_des: $(DESTEST)$(EXE_EXT)
-+test_des:
- ../util/shlib_wrap.sh ./$(DESTEST)
-
--test_idea: $(IDEATEST)$(EXE_EXT)
-+test_idea:
- ../util/shlib_wrap.sh ./$(IDEATEST)
-
--test_sha: $(SHATEST)$(EXE_EXT) $(SHA1TEST)$(EXE_EXT) $(SHA256TEST)$(EXE_EXT) $(SHA512TEST)$(EXE_EXT)
-+test_sha:
- ../util/shlib_wrap.sh ./$(SHATEST)
- ../util/shlib_wrap.sh ./$(SHA1TEST)
- ../util/shlib_wrap.sh ./$(SHA256TEST)
- ../util/shlib_wrap.sh ./$(SHA512TEST)
-
--test_mdc2: $(MDC2TEST)$(EXE_EXT)
-+test_mdc2:
- ../util/shlib_wrap.sh ./$(MDC2TEST)
-
--test_md5: $(MD5TEST)$(EXE_EXT)
-+test_md5:
- ../util/shlib_wrap.sh ./$(MD5TEST)
-
--test_md4: $(MD4TEST)$(EXE_EXT)
-+test_md4:
- ../util/shlib_wrap.sh ./$(MD4TEST)
-
--test_hmac: $(HMACTEST)$(EXE_EXT)
-+test_hmac:
- ../util/shlib_wrap.sh ./$(HMACTEST)
-
--test_wp: $(WPTEST)$(EXE_EXT)
-+test_wp:
- ../util/shlib_wrap.sh ./$(WPTEST)
-
--test_md2: $(MD2TEST)$(EXE_EXT)
-+test_md2:
- ../util/shlib_wrap.sh ./$(MD2TEST)
-
--test_rmd: $(RMDTEST)$(EXE_EXT)
-+test_rmd:
- ../util/shlib_wrap.sh ./$(RMDTEST)
-
--test_bf: $(BFTEST)$(EXE_EXT)
-+test_bf:
- ../util/shlib_wrap.sh ./$(BFTEST)
-
--test_cast: $(CASTTEST)$(EXE_EXT)
-+test_cast:
- ../util/shlib_wrap.sh ./$(CASTTEST)
-
--test_rc2: $(RC2TEST)$(EXE_EXT)
-+test_rc2:
- ../util/shlib_wrap.sh ./$(RC2TEST)
-
--test_rc4: $(RC4TEST)$(EXE_EXT)
-+test_rc4:
- ../util/shlib_wrap.sh ./$(RC4TEST)
-
--test_rc5: $(RC5TEST)$(EXE_EXT)
-+test_rc5:
- ../util/shlib_wrap.sh ./$(RC5TEST)
-
--test_rand: $(RANDTEST)$(EXE_EXT)
-+test_rand:
- ../util/shlib_wrap.sh ./$(RANDTEST)
-
--test_enc: ../apps/openssl$(EXE_EXT) testenc
-+test_enc:
- @sh ./testenc
-
--test_x509: ../apps/openssl$(EXE_EXT) tx509 testx509.pem v3-cert1.pem v3-cert2.pem
-+test_x509:
- echo test normal x509v1 certificate
- sh ./tx509 2>/dev/null
- echo test first x509v3 certificate
-@@ -223,25 +223,25 @@
- echo test second x509v3 certificate
- sh ./tx509 v3-cert2.pem 2>/dev/null
-
--test_rsa: ../apps/openssl$(EXE_EXT) trsa testrsa.pem
-+test_rsa:
- @sh ./trsa 2>/dev/null
- ../util/shlib_wrap.sh ./$(RSATEST)
-
--test_crl: ../apps/openssl$(EXE_EXT) tcrl testcrl.pem
-+test_crl:
- @sh ./tcrl 2>/dev/null
-
--test_sid: ../apps/openssl$(EXE_EXT) tsid testsid.pem
-+test_sid:
- @sh ./tsid 2>/dev/null
-
--test_req: ../apps/openssl$(EXE_EXT) treq testreq.pem testreq2.pem
-+test_req:
- @sh ./treq 2>/dev/null
- @sh ./treq testreq2.pem 2>/dev/null
-
--test_pkcs7: ../apps/openssl$(EXE_EXT) tpkcs7 tpkcs7d testp7.pem pkcs7-1.pem
-+test_pkcs7:
- @sh ./tpkcs7 2>/dev/null
- @sh ./tpkcs7d 2>/dev/null
-
--test_bn: $(BNTEST)$(EXE_EXT) $(EXPTEST)$(EXE_EXT) bctest
-+test_bn:
- @echo starting big number library test, could take a while...
- @../util/shlib_wrap.sh ./$(BNTEST) >tmp.bntest
- @echo quit >>tmp.bntest
-@@ -250,33 +250,33 @@
- @echo 'test a^b%c implementations'
- ../util/shlib_wrap.sh ./$(EXPTEST)
-
--test_ec: $(ECTEST)$(EXE_EXT)
-+test_ec:
- @echo 'test elliptic curves'
- ../util/shlib_wrap.sh ./$(ECTEST)
-
--test_ecdsa: $(ECDSATEST)$(EXE_EXT)
-+test_ecdsa:
- @echo 'test ecdsa'
- ../util/shlib_wrap.sh ./$(ECDSATEST)
-
--test_ecdh: $(ECDHTEST)$(EXE_EXT)
-+test_ecdh:
- @echo 'test ecdh'
- ../util/shlib_wrap.sh ./$(ECDHTEST)
-
--test_verify: ../apps/openssl$(EXE_EXT)
-+test_verify:
- @echo "The following command should have some OK's and some failures"
- @echo "There are definitly a few expired certificates"
- ../util/shlib_wrap.sh ../apps/openssl verify -CApath ../certs/demo ../certs/demo/*.pem
-
--test_dh: $(DHTEST)$(EXE_EXT)
-+test_dh:
- @echo "Generate a set of DH parameters"
- ../util/shlib_wrap.sh ./$(DHTEST)
-
--test_dsa: $(DSATEST)$(EXE_EXT)
-+test_dsa:
- @echo "Generate a set of DSA parameters"
- ../util/shlib_wrap.sh ./$(DSATEST)
- ../util/shlib_wrap.sh ./$(DSATEST) -app2_1
-
--test_gen testreq.pem: ../apps/openssl$(EXE_EXT) testgen test.cnf
-+test_gen testreq.pem:
- @echo "Generate and verify a certificate request"
- @sh ./testgen
-
-@@ -288,13 +288,11 @@
- @cat certCA.ss certU.ss > intP1.ss
- @cat certCA.ss certU.ss certP1.ss > intP2.ss
-
--test_engine: $(ENGINETEST)$(EXE_EXT)
-+test_engine:
- @echo "Manipulate the ENGINE structures"
- ../util/shlib_wrap.sh ./$(ENGINETEST)
-
--test_ssl: keyU.ss certU.ss certCA.ss certP1.ss keyP1.ss certP2.ss keyP2.ss \
-- intP1.ss intP2.ss $(SSLTEST)$(EXE_EXT) testssl testsslproxy \
-- ../apps/server2.pem serverinfo.pem
-+test_ssl:
- @echo "test SSL protocol"
- @if [ -n "$(FIPSCANLIB)" ]; then \
- sh ./testfipsssl keyU.ss certU.ss certCA.ss; \
-@@ -304,7 +302,7 @@
- @sh ./testsslproxy keyP1.ss certP1.ss intP1.ss
- @sh ./testsslproxy keyP2.ss certP2.ss intP2.ss
-
--test_ca: ../apps/openssl$(EXE_EXT) testca CAss.cnf Uss.cnf
-+test_ca:
- @if ../util/shlib_wrap.sh ../apps/openssl no-rsa; then \
- echo "skipping CA.sh test -- requires RSA"; \
- else \
-@@ -312,11 +310,11 @@
- sh ./testca; \
- fi
-
--test_aes: #$(AESTEST)
-+test_aes:
- # @echo "test Rijndael"
- # ../util/shlib_wrap.sh ./$(AESTEST)
-
--test_tsa: ../apps/openssl$(EXE_EXT) testtsa CAtsa.cnf ../util/shlib_wrap.sh
-+test_tsa:
- @if ../util/shlib_wrap.sh ../apps/openssl no-rsa; then \
- echo "skipping testtsa test -- requires RSA"; \
- else \
-@@ -331,7 +329,7 @@
- @echo "Test JPAKE"
- ../util/shlib_wrap.sh ./$(JPAKETEST)
-
--test_cms: ../apps/openssl$(EXE_EXT) cms-test.pl smcont.txt
-+test_cms:
- @echo "CMS consistency test"
- $(PERL) cms-test.pl
-
-@@ -339,22 +337,22 @@
- @echo "Test SRP"
- ../util/shlib_wrap.sh ./srptest
-
--test_ocsp: ../apps/openssl$(EXE_EXT) tocsp
-+test_ocsp:
- @echo "Test OCSP"
- @sh ./tocsp
-
--test_v3name: $(V3NAMETEST)$(EXE_EXT)
-+test_v3name:
- @echo "Test X509v3_check_*"
- ../util/shlib_wrap.sh ./$(V3NAMETEST)
-
- test_heartbeat:
- ../util/shlib_wrap.sh ./$(HEARTBEATTEST)
-
--test_constant_time: $(CONSTTIMETEST)$(EXE_EXT)
-+test_constant_time:
- @echo "Test constant time utilites"
- ../util/shlib_wrap.sh ./$(CONSTTIMETEST)
-
--test_verify_extra: $(VERIFYEXTRATEST)$(EXE_EXT)
-+test_verify_extra:
- @echo $(START) $@
- ../util/shlib_wrap.sh ./$(VERIFYEXTRATEST)
-
diff --git a/poky/meta/recipes-connectivity/openssl/openssl10/reproducible-cflags.patch b/poky/meta/recipes-connectivity/openssl/openssl10/reproducible-cflags.patch
deleted file mode 100644
index 2803cb0..0000000
--- a/poky/meta/recipes-connectivity/openssl/openssl10/reproducible-cflags.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-Allow passing custom c-flags to mkbuildinf.pl in order to pass
-flags without any build host references
-
-Upstream-Status: Inappropriate [OE specific]
-
-Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
-
---- Makefile 2018-03-06 14:50:18.342138147 -0800
-+++ Makefile 2018-03-06 15:24:04.794239071 -0800
---- a/crypto/Makefile
-+++ b/crypto/Makefile
-@@ -55,7 +55,7 @@
- all: shared
-
- buildinf.h: ../Makefile
-- $(PERL) $(TOP)/util/mkbuildinf.pl "$(CC) $(CFLAGS)" "$(PLATFORM)" >buildinf.h
-+ $(PERL) $(TOP)/util/mkbuildinf.pl "$(CC_INFO)" "$(PLATFORM)" >buildinf.h
-
- x86cpuid.s: x86cpuid.pl perlasm/x86asm.pl
- $(PERL) x86cpuid.pl $(PERLASM_SCHEME) $(CFLAGS) $(PROCESSOR) > $@
diff --git a/poky/meta/recipes-connectivity/openssl/openssl10/reproducible-mkbuildinf.patch b/poky/meta/recipes-connectivity/openssl/openssl10/reproducible-mkbuildinf.patch
deleted file mode 100644
index b556731..0000000
--- a/poky/meta/recipes-connectivity/openssl/openssl10/reproducible-mkbuildinf.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-If SOURCE_DATE_EPOCH is present in the environment, use it as build date.
-Also make sure to use UTC time.
-
-Upstream-Status: Backport [ https://github.com/openssl/openssl/blob/master/util/mkbuildinf.pl ]
-
-Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
-
---- mkbuildinf.pl 2018-03-06 14:20:09.438048058 -0800
-+++ mkbuildinf.pl 2018-03-06 14:19:20.722045632 -0800
---- a/util/mkbuildinf.pl
-+++ b/util/mkbuildinf.pl
-@@ -3,7 +3,8 @@
- my ($cflags, $platform) = @ARGV;
-
- $cflags = "compiler: $cflags";
--$date = localtime();
-+my $date = gmtime($ENV{'SOURCE_DATE_EPOCH'} || time()) . " UTC";
-+
- print <<"END_OUTPUT";
- #ifndef MK1MF_BUILD
- /* auto-generated by util/mkbuildinf.pl for crypto/cversion.c */
diff --git a/poky/meta/recipes-connectivity/openssl/openssl10/run-ptest b/poky/meta/recipes-connectivity/openssl/openssl10/run-ptest
deleted file mode 100755
index 3b20fce..0000000
--- a/poky/meta/recipes-connectivity/openssl/openssl10/run-ptest
+++ /dev/null
@@ -1,2 +0,0 @@
-#!/bin/sh
-make -k runtest
diff --git a/poky/meta/recipes-connectivity/openssl/openssl10/shared-libs.patch b/poky/meta/recipes-connectivity/openssl/openssl10/shared-libs.patch
deleted file mode 100644
index a7ca0a3..0000000
--- a/poky/meta/recipes-connectivity/openssl/openssl10/shared-libs.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-Upstream-Status: Inappropriate [configuration]
-
-Index: openssl-1.0.1e/crypto/Makefile
-===================================================================
---- openssl-1.0.1e.orig/crypto/Makefile
-+++ openssl-1.0.1e/crypto/Makefile
-@@ -108,7 +108,7 @@ $(LIB): $(LIBOBJ)
-
- shared: buildinf.h lib subdirs
- if [ -n "$(SHARED_LIBS)" ]; then \
-- (cd ..; $(MAKE) $(SHARED_LIB)); \
-+ (cd ..; $(MAKE) -e $(SHARED_LIB)); \
- fi
-
- libs:
-Index: openssl-1.0.1e/Makefile.org
-===================================================================
---- openssl-1.0.1e.orig/Makefile.org
-+++ openssl-1.0.1e/Makefile.org
-@@ -310,7 +310,7 @@ libcrypto$(SHLIB_EXT): libcrypto.a fips_
-
- libssl$(SHLIB_EXT): libcrypto$(SHLIB_EXT) libssl.a
- @if [ "$(SHLIB_TARGET)" != "" ]; then \
-- $(MAKE) SHLIBDIRS=ssl SHLIBDEPS='-lcrypto' build-shared; \
-+ $(MAKE) -e SHLIBDIRS=ssl SHLIBDEPS='-lcrypto' build-shared; \
- else \
- echo "There's no support for shared libraries on this platform" >&2; \
- exit 1; \
-Index: openssl-1.0.1e/ssl/Makefile
-===================================================================
---- openssl-1.0.1e.orig/ssl/Makefile
-+++ openssl-1.0.1e/ssl/Makefile
-@@ -62,7 +62,7 @@ lib: $(LIBOBJ)
-
- shared: lib
- if [ -n "$(SHARED_LIBS)" ]; then \
-- (cd ..; $(MAKE) $(SHARED_LIB)); \
-+ (cd ..; $(MAKE) -e $(SHARED_LIB)); \
- fi
-
- files:
diff --git a/poky/meta/recipes-connectivity/openssl/openssl10_1.0.2r.bb b/poky/meta/recipes-connectivity/openssl/openssl10_1.0.2r.bb
deleted file mode 100644
index 87df4f5..0000000
--- a/poky/meta/recipes-connectivity/openssl/openssl10_1.0.2r.bb
+++ /dev/null
@@ -1,360 +0,0 @@
-SUMMARY = "Secure Socket Layer"
-DESCRIPTION = "Secure Socket Layer (SSL) binary and related cryptographic tools."
-HOMEPAGE = "http://www.openssl.org/"
-BUGTRACKER = "http://www.openssl.org/news/vulnerabilities.html"
-SECTION = "libs/network"
-
-# "openssl | SSLeay" dual license
-LICENSE = "openssl"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=f475368924827d06d4b416111c8bdb77"
-
-DEPENDS = "hostperl-runtime-native"
-DEPENDS_append_class-target = " openssl-native"
-
-SRC_URI = "http://www.openssl.org/source/openssl-${PV}.tar.gz \
- file://run-ptest \
- file://openssl-c_rehash.sh \
- file://configure-targets.patch \
- file://shared-libs.patch \
- file://oe-ldflags.patch \
- file://engines-install-in-libdir-ssl.patch \
- file://debian1.0.2/block_diginotar.patch \
- file://debian1.0.2/block_digicert_malaysia.patch \
- file://debian/c_rehash-compat.patch \
- file://debian/debian-targets.patch \
- file://debian/man-dir.patch \
- file://debian/man-section.patch \
- file://debian/no-rpath.patch \
- file://debian/no-symbolic.patch \
- file://debian/pic.patch \
- file://debian1.0.2/version-script.patch \
- file://debian1.0.2/soname.patch \
- file://openssl_fix_for_x32.patch \
- file://openssl-fix-des.pod-error.patch \
- file://Makefiles-ptest.patch \
- file://ptest-deps.patch \
- file://ptest_makefile_deps.patch \
- file://configure-musl-target.patch \
- file://parallel.patch \
- file://Use-SHA256-not-MD5-as-default-digest.patch \
- file://0001-Fix-build-with-clang-using-external-assembler.patch \
- file://0001-openssl-force-soft-link-to-avoid-rare-race.patch \
- file://0001-allow-manpages-to-be-disabled.patch \
- file://0001-Fix-BN_LLONG-breakage.patch \
- file://0001-Fix-DES_LONG-breakage.patch \
- "
-
-SRC_URI_append_class-target = " \
- file://reproducible-cflags.patch \
- file://reproducible-mkbuildinf.patch \
- "
-
-SRC_URI_append_class-nativesdk = " \
- file://environment.d-openssl.sh \
- "
-
-SRC_URI[md5sum] = "0d2baaf04c56d542f6cc757b9c2a2aac"
-SRC_URI[sha256sum] = "ae51d08bba8a83958e894946f15303ff894d75c2b8bbd44a852b64e3fe11d0d6"
-
-S = "${WORKDIR}/openssl-${PV}"
-
-UPSTREAM_CHECK_REGEX = "openssl-(?P<pver>1\.0.+)\.tar"
-
-inherit pkgconfig siteinfo multilib_header ptest manpages
-
-PACKAGECONFIG ?= "cryptodev-linux"
-PACKAGECONFIG_class-native = ""
-PACKAGECONFIG_class-nativesdk = ""
-
-PACKAGECONFIG[cryptodev-linux] = "-DHAVE_CRYPTODEV -DUSE_CRYPTODEV_DIGESTS,,cryptodev-linux"
-PACKAGECONFIG[manpages] = ",,,"
-PACKAGECONFIG[perl] = ",,,"
-
-# Remove this to enable SSLv3. SSLv3 is defaulted to disabled due to the POODLE
-# vulnerability
-EXTRA_OECONF = "no-ssl3"
-
-EXTRA_OEMAKE = "${@bb.utils.contains('PACKAGECONFIG', 'manpages', '', 'OE_DISABLE_MANPAGES=1', d)}"
-
-export OE_LDFLAGS = "${LDFLAGS}"
-
-TERMIO ?= "-DTERMIO"
-TERMIO_libc-musl = "-DTERMIOS"
-EXTRA_OECONF_append_libc-musl_powerpc64 = " no-asm"
-
-CFLAG = "${@oe.utils.conditional('SITEINFO_ENDIANNESS', 'le', '-DL_ENDIAN', '-DB_ENDIAN', d)} \
- ${TERMIO} ${CFLAGS} -Wall"
-
-# Avoid binaries being marked as requiring an executable stack since they don't
-# (and it causes issues with SELinux)
-CFLAG += "-Wa,--noexecstack"
-
-CFLAG_append_class-native = " -fPIC"
-
-do_configure () {
- # The crypto_use_bigint patch means that perl's bignum module needs to be
- # installed, but some distributions (for example Fedora 23) don't ship it by
- # default. As the resulting error is very misleading check for bignum before
- # building.
- if ! perl -Mbigint -e true; then
- bbfatal "The perl module 'bignum' was not found but this is required to build openssl. Please install this module (often packaged as perl-bignum) and re-run bitbake."
- fi
-
- ln -sf apps/openssl.pod crypto/crypto.pod ssl/ssl.pod doc/
-
- os=${HOST_OS}
- case $os in
- linux-gnueabi |\
- linux-gnuspe |\
- linux-musleabi |\
- linux-muslspe |\
- linux-musl )
- os=linux
- ;;
- *)
- ;;
- esac
- target="$os-${HOST_ARCH}"
- case $target in
- linux-arm)
- target=linux-armv4
- ;;
- linux-armeb)
- target=linux-elf-armeb
- ;;
- linux-aarch64*)
- target=linux-aarch64
- ;;
- linux-sh3)
- target=debian-sh3
- ;;
- linux-sh4)
- target=debian-sh4
- ;;
- linux-i486)
- target=debian-i386-i486
- ;;
- linux-i586 | linux-viac3)
- target=debian-i386-i586
- ;;
- linux-i686)
- target=debian-i386-i686/cmov
- ;;
- linux-gnux32-x86_64 | linux-muslx32-x86_64 )
- target=linux-x32
- ;;
- linux-gnu64-x86_64)
- target=linux-x86_64
- ;;
- linux-gnun32-mips*el)
- target=debian-mipsn32el
- ;;
- linux-gnun32-mips*)
- target=debian-mipsn32
- ;;
- linux-mips*64*el)
- target=debian-mips64el
- ;;
- linux-mips*64*)
- target=debian-mips64
- ;;
- linux-mips*el)
- target=debian-mipsel
- ;;
- linux-mips*)
- target=debian-mips
- ;;
- linux-microblaze* | linux-nios2* | linux-gnu*ilp32** | linux-arc*)
- target=linux-generic32
- ;;
- linux-powerpc)
- target=linux-ppc
- ;;
- linux-powerpc64)
- target=linux-ppc64
- ;;
- linux-riscv32)
- target=linux-generic32
- ;;
- linux-riscv64)
- target=linux-generic64
- ;;
- linux-sparc | linux-supersparc)
- target=linux-sparcv8
- ;;
- esac
-
- # inject machine-specific flags
- sed -i -e "s|^\(\"$target\",\s*\"[^:]\+\):\([^:]\+\)|\1:${CFLAG}|g" Configure
-
- useprefix=${prefix}
- if [ "x$useprefix" = "x" ]; then
- useprefix=/
- fi
- libdirleaf="$( echo "${libdir}" | sed "s:^$useprefix/*::" )"
- perl ./Configure ${EXTRA_OECONF} ${PACKAGECONFIG_CONFARGS} shared --prefix=$useprefix --openssldir=${libdir}/ssl --libdir=$libdirleaf $target
-}
-
-do_compile () {
- oe_runmake depend
- oe_runmake
-}
-
-do_compile_class-target () {
- sed -i 's/\((OPENSSL=\)".*"/\1"openssl"/' Makefile
- oe_runmake depend
- cc_sanitized=$(echo "${CC} ${CFLAG}" | sed -e 's,--sysroot=${STAGING_DIR_TARGET},,g' -e 's|${DEBUG_PREFIX_MAP}||g' -e 's/[ \t]\+/ /g')
- oe_runmake CC_INFO="$cc_sanitized"
-}
-
-do_compile_ptest () {
- oe_runmake buildtest
-}
-
-do_install () {
- # Create ${D}/${prefix} to fix parallel issues
- mkdir -p ${D}/${prefix}/
-
- oe_runmake INSTALL_PREFIX="${D}" MANDIR="${mandir}" install
-
- oe_libinstall -so libcrypto ${D}${libdir}
- oe_libinstall -so libssl ${D}${libdir}
-
- install -d ${D}${includedir}
- cp --dereference -R include/openssl ${D}${includedir}
-
- oe_multilib_header openssl/opensslconf.h
-
- install -Dm 0755 ${WORKDIR}/openssl-c_rehash.sh ${D}${bindir}/c_rehash
- sed -i -e 's,/etc/openssl,${sysconfdir}/ssl,g' ${D}${bindir}/c_rehash
-
- if [ "${@bb.utils.filter('PACKAGECONFIG', 'perl', d)}" ]; then
- sed -i -e '1s,.*,#!${bindir}/env perl,' ${D}${libdir}/ssl/misc/CA.pl
- sed -i -e '1s,.*,#!${bindir}/env perl,' ${D}${libdir}/ssl/misc/tsget
- else
- rm -f ${D}${libdir}/ssl/misc/CA.pl ${D}${libdir}/ssl/misc/tsget
- fi
-
- # Create SSL structure for packages such as ca-certificates which
- # contain hard-coded paths to /etc/ssl. Debian does the same.
- install -d ${D}${sysconfdir}/ssl
- mv ${D}${libdir}/ssl/certs \
- ${D}${libdir}/ssl/private \
- ${D}${libdir}/ssl/openssl.cnf \
- ${D}${sysconfdir}/ssl/
-
- # Although absolute symlinks would be OK for the target, they become
- # invalid if native or nativesdk are relocated from sstate.
- ln -sf ${@oe.path.relative('${libdir}/ssl', '${sysconfdir}/ssl/certs')} ${D}${libdir}/ssl/certs
- ln -sf ${@oe.path.relative('${libdir}/ssl', '${sysconfdir}/ssl/private')} ${D}${libdir}/ssl/private
- ln -sf ${@oe.path.relative('${libdir}/ssl', '${sysconfdir}/ssl/openssl.cnf')} ${D}${libdir}/ssl/openssl.cnf
-
- # Rename man pages to prefix openssl10-*
- for f in `find ${D}${mandir} -type f`; do
- mv $f $(dirname $f)/openssl10-$(basename $f)
- done
- for f in `find ${D}${mandir} -type l`; do
- ln_f=`readlink $f`
- rm -f $f
- ln -s openssl10-$ln_f $(dirname $f)/openssl10-$(basename $f)
- done
-}
-
-do_install_append_class-native () {
- create_wrapper ${D}${bindir}/openssl \
- OPENSSL_CONF=${libdir}/ssl/openssl.cnf \
- SSL_CERT_DIR=${libdir}/ssl/certs \
- SSL_CERT_FILE=${libdir}/ssl/cert.pem \
- OPENSSL_ENGINES=${libdir}/ssl/engines
-}
-
-do_install_append_class-nativesdk () {
- mkdir -p ${D}${SDKPATHNATIVE}/environment-setup.d
- install -m 644 ${WORKDIR}/environment.d-openssl.sh ${D}${SDKPATHNATIVE}/environment-setup.d/openssl.sh
-}
-
-do_install_ptest () {
- cp -r -L Makefile.org Makefile test ${D}${PTEST_PATH}
-
- # Replace the path to native perl with the path to target perl
- sed -i 's,^PERL=.*,PERL=${bindir}/perl,' ${D}${PTEST_PATH}/Makefile
-
- cp Configure config e_os.h ${D}${PTEST_PATH}
- cp -r -L include ${D}${PTEST_PATH}
- ln -sf ${libdir}/libcrypto.a ${D}${PTEST_PATH}
- ln -sf ${libdir}/libssl.a ${D}${PTEST_PATH}
- mkdir -p ${D}${PTEST_PATH}/crypto
- cp crypto/constant_time_locl.h ${D}${PTEST_PATH}/crypto
- cp -r certs ${D}${PTEST_PATH}
- mkdir -p ${D}${PTEST_PATH}/apps
- ln -sf ${libdir}/ssl/misc/CA.sh ${D}${PTEST_PATH}/apps
- ln -sf ${sysconfdir}/ssl/openssl.cnf ${D}${PTEST_PATH}/apps
- ln -sf ${bindir}/openssl ${D}${PTEST_PATH}/apps
- cp apps/server.pem ${D}${PTEST_PATH}/apps
- cp apps/server2.pem ${D}${PTEST_PATH}/apps
- mkdir -p ${D}${PTEST_PATH}/util
- install util/opensslwrap.sh ${D}${PTEST_PATH}/util
- install util/shlib_wrap.sh ${D}${PTEST_PATH}/util
- # Time stamps are relevant for "make alltests", otherwise
- # make may try to recompile binaries. Not only must the
- # binary files be newer than the sources, they also must
- # be more recent than the header files in /usr/include.
- #
- # Using "cp -a" is not sufficient, because do_install
- # does not preserve the original time stamps.
- #
- # So instead of using the original file stamps, we set
- # the current time for all files. Binaries will get
- # modified again later when stripping them, but that's okay.
- touch ${D}${PTEST_PATH}
- find ${D}${PTEST_PATH} -type f -print0 | xargs --verbose -0 touch -r ${D}${PTEST_PATH}
-
- # exclude binary files or the package won't install
- for d in ssltest_old v3ext x509aux; do
- rm -rf ${D}${libdir}/${BPN}/ptest/test/$d
- done
-
- # Remove build host references
- sed -i \
- -e 's,--sysroot=${STAGING_DIR_TARGET},,g' \
- -e 's|${DEBUG_PREFIX_MAP}||g' \
- ${D}${PTEST_PATH}/Makefile ${D}${PTEST_PATH}/Configure
-}
-
-# Add the openssl.cnf file to the openssl-conf package. Make the libcrypto
-# package RRECOMMENDS on this package. This will enable the configuration
-# file to be installed for both the base openssl package and the libcrypto
-# package since the base openssl package depends on the libcrypto package.
-
-PACKAGES =+ "libcrypto10 libssl10 openssl10-conf ${PN}-engines ${PN}-misc"
-
-FILES_libcrypto10 = "${libdir}/libcrypto${SOLIBS}"
-FILES_libssl10 = "${libdir}/libssl${SOLIBS}"
-FILES_openssl10-conf = "${sysconfdir}/ssl/openssl.cnf"
-FILES_${PN}-engines = "${libdir}/ssl/engines/*.so ${libdir}/engines"
-FILES_${PN}-misc = "${libdir}/ssl/misc"
-FILES_${PN} =+ "${libdir}/ssl/*"
-FILES_${PN}_append_class-nativesdk = " ${SDKPATHNATIVE}/environment-setup.d/openssl.sh"
-
-CONFFILES_openssl10-conf = "${sysconfdir}/ssl/openssl.cnf"
-
-RRECOMMENDS_libcrypto10 += "openssl10-conf"
-RDEPENDS_${PN}-misc = "${@bb.utils.filter('PACKAGECONFIG', 'perl', d)}"
-RDEPENDS_${PN}-ptest += "${PN}-misc make perl perl-module-filehandle bc"
-
-BBCLASSEXTEND = "native nativesdk"
-PACKAGE_PREPROCESS_FUNCS += "openssl_package_preprocess"
-
-# openssl 1.0 development files and executable binaries clash with openssl 1.1
-# files when installed into target rootfs. So we don't put them into
-# packages, but they continue to be provided via target sysroot for
-# cross-compilation on the host, if some software still depends on openssl 1.0.
-openssl_package_preprocess () {
- for file in `find ${PKGD} -name *.h -o -name *.pc -o -name *.so`; do
- rm $file
- done
- rm ${PKGD}${bindir}/openssl
- rm ${PKGD}${bindir}/c_rehash
- rmdir ${PKGD}${bindir}
-
-}
diff --git a/poky/meta/recipes-connectivity/openssl/openssl_1.1.1b.bb b/poky/meta/recipes-connectivity/openssl/openssl_1.1.1b.bb
index d3404d2..8bb3a30 100644
--- a/poky/meta/recipes-connectivity/openssl/openssl_1.1.1b.bb
+++ b/poky/meta/recipes-connectivity/openssl/openssl_1.1.1b.bb
@@ -199,8 +199,4 @@
RRECOMMENDS_libcrypto += "openssl-conf"
RDEPENDS_${PN}-ptest += "openssl-bin perl perl-modules bash"
-RPROVIDES_openssl-conf = "openssl10-conf"
-RREPLACES_openssl-conf = "openssl10-conf"
-RCONFLICTS_openssl-conf = "openssl10-conf"
-
BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-connectivity/socat/socat/0001-Access-c_ispeed-and-c_ospeed-via-APIs.patch b/poky/meta/recipes-connectivity/socat/socat/0001-Access-c_ispeed-and-c_ospeed-via-APIs.patch
deleted file mode 100644
index c0e27f3..0000000
--- a/poky/meta/recipes-connectivity/socat/socat/0001-Access-c_ispeed-and-c_ospeed-via-APIs.patch
+++ /dev/null
@@ -1,52 +0,0 @@
-From fb10ab134d630705cae0c7be42437cc289af7d32 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Tue, 15 Mar 2016 21:36:02 +0000
-Subject: [PATCH] Use __c_ispeed and __c_ospeed on musl
-
-Original intention of these asserts is to find if termios structure
-is mapped correctly to locally define union, the get* APIs for
-baudrate would not do the right thing since they do not return the
-value from c_ospeed/c_ispeed but the value which is stored in iflag
-for baudrate.
-
-So we check if we are on Linux but not using glibc then we use
-__c_ispeed and __c_ospeed as defined in musl, however these are
-internal elements of structs it should not have been used this
-way.
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-
----
-Upstream-Status: Pending
-
- xioinitialize.c | 7 +++++++
- 1 file changed, 7 insertions(+)
-
-diff --git a/xioinitialize.c b/xioinitialize.c
-index 9f50155..8fb2e4c 100644
---- a/xioinitialize.c
-+++ b/xioinitialize.c
-@@ -65,6 +65,12 @@ int xioinitialize(void) {
- #if HAVE_TERMIOS_ISPEED && (ISPEED_OFFSET != -1) && (OSPEED_OFFSET != -1)
- #if defined(ISPEED_OFFSET) && (ISPEED_OFFSET != -1)
- #if defined(OSPEED_OFFSET) && (OSPEED_OFFSET != -1)
-+#if defined(__linux__) && !defined(__GLIBC__)
-+ tdata.termarg.__c_ispeed = 0x56789abc;
-+ tdata.termarg.__c_ospeed = 0x6789abcd;
-+ assert(tdata.termarg.__c_ispeed == tdata.speeds[ISPEED_OFFSET]);
-+ assert(tdata.termarg.__c_ospeed == tdata.speeds[OSPEED_OFFSET]);
-+#else
- tdata.termarg.c_ispeed = 0x56789abc;
- tdata.termarg.c_ospeed = 0x6789abcd;
- assert(tdata.termarg.c_ispeed == tdata.speeds[ISPEED_OFFSET]);
-@@ -72,6 +78,7 @@ int xioinitialize(void) {
- #endif
- #endif
- #endif
-+#endif
- }
- #endif
-
---
-2.8.0
-
diff --git a/poky/meta/recipes-connectivity/socat/socat/Makefile.in-fix-for-parallel-build.patch b/poky/meta/recipes-connectivity/socat/socat/Makefile.in-fix-for-parallel-build.patch
deleted file mode 100644
index aa4db65..0000000
--- a/poky/meta/recipes-connectivity/socat/socat/Makefile.in-fix-for-parallel-build.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From c6f0080b55679b6e8b5d332d6e05fdcbda1e4064 Mon Sep 17 00:00:00 2001
-From: Robert Yang <liezhi.yang@windriver.com>
-Date: Mon, 4 May 2015 00:58:47 -0700
-Subject: [PATCH] Makefile.in: fix for parallel build
-
-Fixed:
-vsnprintf_r.o: file not recognized: File truncated
-collect2: error: ld returned 3 exit status
-Makefile:122: recipe for target 'filan' failed
-
-Let filan depend on vsnprintf_r.o and snprinterr.o to fix the issue.
-
-Upstream-Status: Pending
-
-Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
----
- Makefile.in | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/Makefile.in b/Makefile.in
-index f2a6edb..88b784b 100644
---- a/Makefile.in
-+++ b/Makefile.in
-@@ -118,7 +118,7 @@ PROCAN_OBJS=procan_main.o procan.o procan-cdefs.o hostan.o error.o sycls.o sysut
- procan: $(PROCAN_OBJS)
- $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(PROCAN_OBJS) $(CLIBS)
-
--filan: filan_main.o filan.o fdname.o error.o sycls.o sysutils.o utils.o
-+filan: filan_main.o filan.o fdname.o error.o sycls.o sysutils.o utils.o vsnprintf_r.o snprinterr.o
- $(CC) $(CFLAGS) $(LDFLAGS) -o $@ filan_main.o filan.o fdname.o error.o sycls.o sysutils.o utils.o vsnprintf_r.o snprinterr.o $(CLIBS)
-
- libxio.a: $(XIOOBJS) $(UTLOBJS)
---
-1.7.9.5
-
diff --git a/poky/meta/recipes-connectivity/socat/socat_1.7.3.2.bb b/poky/meta/recipes-connectivity/socat/socat_1.7.3.2.bb
deleted file mode 100644
index b2d6b1d..0000000
--- a/poky/meta/recipes-connectivity/socat/socat_1.7.3.2.bb
+++ /dev/null
@@ -1,54 +0,0 @@
-SUMMARY = "Multipurpose relay for bidirectional data transfer"
-DESCRIPTION = "Socat is a relay for bidirectional data \
-transfer between two independent data channels."
-HOMEPAGE = "http://www.dest-unreach.org/socat/"
-
-SECTION = "console/network"
-
-DEPENDS = "openssl readline"
-
-LICENSE = "GPL-2.0-with-OpenSSL-exception"
-LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
- file://README;beginline=257;endline=287;md5=338c05eadd013872abb1d6e198e10a3f"
-
-SRC_URI = "http://www.dest-unreach.org/socat/download/socat-${PV}.tar.bz2 \
- file://Makefile.in-fix-for-parallel-build.patch \
- file://0001-define-NETDB_INTERNAL-to-1-if-not-available.patch \
- file://0001-Access-c_ispeed-and-c_ospeed-via-APIs.patch \
-"
-
-SRC_URI[md5sum] = "607a24c15bd2cb54e9328bfbbd3a1ae9"
-SRC_URI[sha256sum] = "e3561f808739383eb10fada1e5d4f26883f0311b34fd0af7837d0c95ef379251"
-
-inherit autotools
-
-EXTRA_AUTORECONF += "--exclude=autoheader"
-
-EXTRA_OECONF += "ac_cv_have_z_modifier=yes \
- ac_cv_header_bsd_libutil_h=no \
- sc_cv_termios_ispeed=no \
- ${TERMBITS_SHIFTS} \
-"
-
-TERMBITS_SHIFTS ?= "sc_cv_sys_crdly_shift=9 \
- sc_cv_sys_tabdly_shift=11 \
- sc_cv_sys_csize_shift=4"
-
-TERMBITS_SHIFTS_powerpc = "sc_cv_sys_crdly_shift=12 \
- sc_cv_sys_tabdly_shift=10 \
- sc_cv_sys_csize_shift=8"
-
-TERMBITS_SHIFTS_powerpc64 = "sc_cv_sys_crdly_shift=12 \
- sc_cv_sys_tabdly_shift=10 \
- sc_cv_sys_csize_shift=8"
-
-PACKAGECONFIG_class-target ??= "tcp-wrappers"
-PACKAGECONFIG ??= ""
-PACKAGECONFIG[tcp-wrappers] = "--enable-libwrap,--disable-libwrap,tcp-wrappers"
-
-do_install_prepend () {
- mkdir -p ${D}${bindir}
- install -d ${D}${bindir} ${D}${mandir}/man1
-}
-
-BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-connectivity/socat/socat_1.7.3.3.bb b/poky/meta/recipes-connectivity/socat/socat_1.7.3.3.bb
new file mode 100644
index 0000000..7a889a3
--- /dev/null
+++ b/poky/meta/recipes-connectivity/socat/socat_1.7.3.3.bb
@@ -0,0 +1,52 @@
+SUMMARY = "Multipurpose relay for bidirectional data transfer"
+DESCRIPTION = "Socat is a relay for bidirectional data \
+transfer between two independent data channels."
+HOMEPAGE = "http://www.dest-unreach.org/socat/"
+
+SECTION = "console/network"
+
+DEPENDS = "openssl readline"
+
+LICENSE = "GPL-2.0-with-OpenSSL-exception"
+LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
+ file://README;beginline=257;endline=287;md5=338c05eadd013872abb1d6e198e10a3f"
+
+SRC_URI = "http://www.dest-unreach.org/socat/download/socat-${PV}.tar.bz2 \
+ file://0001-define-NETDB_INTERNAL-to-1-if-not-available.patch \
+"
+
+SRC_URI[md5sum] = "b2a032a47b8b89a18485697fa975154f"
+SRC_URI[sha256sum] = "0dd63ffe498168a4aac41d307594c5076ff307aa0ac04b141f8f1cec6594d04a"
+
+inherit autotools
+
+EXTRA_AUTORECONF += "--exclude=autoheader"
+
+EXTRA_OECONF += "ac_cv_have_z_modifier=yes \
+ ac_cv_header_bsd_libutil_h=no \
+ sc_cv_termios_ispeed=no \
+ ${TERMBITS_SHIFTS} \
+"
+
+TERMBITS_SHIFTS ?= "sc_cv_sys_crdly_shift=9 \
+ sc_cv_sys_tabdly_shift=11 \
+ sc_cv_sys_csize_shift=4"
+
+TERMBITS_SHIFTS_powerpc = "sc_cv_sys_crdly_shift=12 \
+ sc_cv_sys_tabdly_shift=10 \
+ sc_cv_sys_csize_shift=8"
+
+TERMBITS_SHIFTS_powerpc64 = "sc_cv_sys_crdly_shift=12 \
+ sc_cv_sys_tabdly_shift=10 \
+ sc_cv_sys_csize_shift=8"
+
+PACKAGECONFIG_class-target ??= "tcp-wrappers"
+PACKAGECONFIG ??= ""
+PACKAGECONFIG[tcp-wrappers] = "--enable-libwrap,--disable-libwrap,tcp-wrappers"
+
+do_install_prepend () {
+ mkdir -p ${D}${bindir}
+ install -d ${D}${bindir} ${D}${mandir}/man1
+}
+
+BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-connectivity/wpa-supplicant/wpa-supplicant_2.7.bb b/poky/meta/recipes-connectivity/wpa-supplicant/wpa-supplicant_2.7.bb
deleted file mode 100644
index fe5fa2b..0000000
--- a/poky/meta/recipes-connectivity/wpa-supplicant/wpa-supplicant_2.7.bb
+++ /dev/null
@@ -1,109 +0,0 @@
-SUMMARY = "Client for Wi-Fi Protected Access (WPA)"
-HOMEPAGE = "http://w1.fi/wpa_supplicant/"
-BUGTRACKER = "http://w1.fi/security/"
-SECTION = "network"
-LICENSE = "BSD"
-LIC_FILES_CHKSUM = "file://COPYING;md5=a3791c270ad6bb026707d17bf750e5ef \
- file://README;beginline=1;endline=56;md5=495cbce6008253de4b4d8f4cdfae9f4f \
- file://wpa_supplicant/wpa_supplicant.c;beginline=1;endline=12;md5=a5687903a31b8679e6a06b3afa5c819e"
-DEPENDS = "dbus libnl"
-RRECOMMENDS_${PN} = "wpa-supplicant-passphrase wpa-supplicant-cli"
-
-PACKAGECONFIG ??= "gnutls"
-PACKAGECONFIG[gnutls] = ",,gnutls libgcrypt"
-PACKAGECONFIG[openssl] = ",,openssl"
-
-inherit pkgconfig systemd
-
-SYSTEMD_SERVICE_${PN} = "wpa_supplicant.service wpa_supplicant-nl80211@.service wpa_supplicant-wired@.service"
-SYSTEMD_AUTO_ENABLE = "disable"
-
-SRC_URI = "http://w1.fi/releases/wpa_supplicant-${PV}.tar.gz \
- file://defconfig \
- file://wpa-supplicant.sh \
- file://wpa_supplicant.conf \
- file://wpa_supplicant.conf-sane \
- file://99_wpa_supplicant \
- file://0001-replace-systemd-install-Alias-with-WantedBy.patch \
- "
-SRC_URI[md5sum] = "a68538fb62766f40f890125026c42c10"
-SRC_URI[sha256sum] = "76ea6b06b7a2ea8e6d9eb1a9166166f1656e6d48c7508914f592100c95c73074"
-
-CVE_PRODUCT = "wpa_supplicant"
-
-S = "${WORKDIR}/wpa_supplicant-${PV}"
-
-PACKAGES_prepend = "wpa-supplicant-passphrase wpa-supplicant-cli "
-FILES_wpa-supplicant-passphrase = "${bindir}/wpa_passphrase"
-FILES_wpa-supplicant-cli = "${sbindir}/wpa_cli"
-FILES_${PN} += "${datadir}/dbus-1/system-services/*"
-CONFFILES_${PN} += "${sysconfdir}/wpa_supplicant.conf"
-
-do_configure () {
- ${MAKE} -C wpa_supplicant clean
- install -m 0755 ${WORKDIR}/defconfig wpa_supplicant/.config
-
- if echo "${PACKAGECONFIG}" | grep -qw "openssl"; then
- ssl=openssl
- elif echo "${PACKAGECONFIG}" | grep -qw "gnutls"; then
- ssl=gnutls
- fi
- if [ -n "$ssl" ]; then
- sed -i "s/%ssl%/$ssl/" wpa_supplicant/.config
- fi
-
- # For rebuild
- rm -f wpa_supplicant/*.d wpa_supplicant/dbus/*.d
-}
-
-export EXTRA_CFLAGS = "${CFLAGS}"
-export BINDIR = "${sbindir}"
-
-do_compile () {
- unset CFLAGS CPPFLAGS CXXFLAGS
- sed -e "s:CFLAGS\ =.*:& \$(EXTRA_CFLAGS):g" -i ${S}/src/lib.rules
- oe_runmake -C wpa_supplicant
-}
-
-do_install () {
- install -d ${D}${sbindir}
- install -m 755 wpa_supplicant/wpa_supplicant ${D}${sbindir}
- install -m 755 wpa_supplicant/wpa_cli ${D}${sbindir}
-
- install -d ${D}${bindir}
- install -m 755 wpa_supplicant/wpa_passphrase ${D}${bindir}
-
- install -d ${D}${docdir}/wpa_supplicant
- install -m 644 wpa_supplicant/README ${WORKDIR}/wpa_supplicant.conf ${D}${docdir}/wpa_supplicant
-
- install -d ${D}${sysconfdir}
- install -m 600 ${WORKDIR}/wpa_supplicant.conf-sane ${D}${sysconfdir}/wpa_supplicant.conf
-
- install -d ${D}${sysconfdir}/network/if-pre-up.d/
- install -d ${D}${sysconfdir}/network/if-post-down.d/
- install -d ${D}${sysconfdir}/network/if-down.d/
- install -m 755 ${WORKDIR}/wpa-supplicant.sh ${D}${sysconfdir}/network/if-pre-up.d/wpa-supplicant
- cd ${D}${sysconfdir}/network/ && \
- ln -sf ../if-pre-up.d/wpa-supplicant if-post-down.d/wpa-supplicant
-
- install -d ${D}/${sysconfdir}/dbus-1/system.d
- install -m 644 ${S}/wpa_supplicant/dbus/dbus-wpa_supplicant.conf ${D}/${sysconfdir}/dbus-1/system.d
- install -d ${D}/${datadir}/dbus-1/system-services
- install -m 644 ${S}/wpa_supplicant/dbus/*.service ${D}/${datadir}/dbus-1/system-services
-
- if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then
- install -d ${D}/${systemd_unitdir}/system
- install -m 644 ${S}/wpa_supplicant/systemd/*.service ${D}/${systemd_unitdir}/system
- fi
-
- install -d ${D}/etc/default/volatiles
- install -m 0644 ${WORKDIR}/99_wpa_supplicant ${D}/etc/default/volatiles
-}
-
-pkg_postinst_wpa-supplicant () {
- # If we're offline, we don't need to do this.
- if [ "x$D" = "x" ]; then
- killall -q -HUP dbus-daemon || true
- fi
-
-}
diff --git a/poky/meta/recipes-connectivity/wpa-supplicant/wpa-supplicant_2.8.bb b/poky/meta/recipes-connectivity/wpa-supplicant/wpa-supplicant_2.8.bb
new file mode 100644
index 0000000..bd4167c
--- /dev/null
+++ b/poky/meta/recipes-connectivity/wpa-supplicant/wpa-supplicant_2.8.bb
@@ -0,0 +1,109 @@
+SUMMARY = "Client for Wi-Fi Protected Access (WPA)"
+HOMEPAGE = "http://w1.fi/wpa_supplicant/"
+BUGTRACKER = "http://w1.fi/security/"
+SECTION = "network"
+LICENSE = "BSD"
+LIC_FILES_CHKSUM = "file://COPYING;md5=279b4f5abb9c153c285221855ddb78cc \
+ file://README;beginline=1;endline=56;md5=e7d3dbb01f75f0b9799e192731d1e1ff \
+ file://wpa_supplicant/wpa_supplicant.c;beginline=1;endline=12;md5=0a8b56d3543498b742b9c0e94cc2d18b"
+DEPENDS = "dbus libnl"
+RRECOMMENDS_${PN} = "wpa-supplicant-passphrase wpa-supplicant-cli"
+
+PACKAGECONFIG ??= "gnutls"
+PACKAGECONFIG[gnutls] = ",,gnutls libgcrypt"
+PACKAGECONFIG[openssl] = ",,openssl"
+
+inherit pkgconfig systemd
+
+SYSTEMD_SERVICE_${PN} = "wpa_supplicant.service wpa_supplicant-nl80211@.service wpa_supplicant-wired@.service"
+SYSTEMD_AUTO_ENABLE = "disable"
+
+SRC_URI = "http://w1.fi/releases/wpa_supplicant-${PV}.tar.gz \
+ file://defconfig \
+ file://wpa-supplicant.sh \
+ file://wpa_supplicant.conf \
+ file://wpa_supplicant.conf-sane \
+ file://99_wpa_supplicant \
+ file://0001-replace-systemd-install-Alias-with-WantedBy.patch \
+ "
+SRC_URI[md5sum] = "0af5998c5d924e985cab16b9a1c77904"
+SRC_URI[sha256sum] = "a689336a12a99151b9de5e25bfccadb88438f4f4438eb8db331cd94346fd3d96"
+
+CVE_PRODUCT = "wpa_supplicant"
+
+S = "${WORKDIR}/wpa_supplicant-${PV}"
+
+PACKAGES_prepend = "wpa-supplicant-passphrase wpa-supplicant-cli "
+FILES_wpa-supplicant-passphrase = "${bindir}/wpa_passphrase"
+FILES_wpa-supplicant-cli = "${sbindir}/wpa_cli"
+FILES_${PN} += "${datadir}/dbus-1/system-services/*"
+CONFFILES_${PN} += "${sysconfdir}/wpa_supplicant.conf"
+
+do_configure () {
+ ${MAKE} -C wpa_supplicant clean
+ install -m 0755 ${WORKDIR}/defconfig wpa_supplicant/.config
+
+ if echo "${PACKAGECONFIG}" | grep -qw "openssl"; then
+ ssl=openssl
+ elif echo "${PACKAGECONFIG}" | grep -qw "gnutls"; then
+ ssl=gnutls
+ fi
+ if [ -n "$ssl" ]; then
+ sed -i "s/%ssl%/$ssl/" wpa_supplicant/.config
+ fi
+
+ # For rebuild
+ rm -f wpa_supplicant/*.d wpa_supplicant/dbus/*.d
+}
+
+export EXTRA_CFLAGS = "${CFLAGS}"
+export BINDIR = "${sbindir}"
+
+do_compile () {
+ unset CFLAGS CPPFLAGS CXXFLAGS
+ sed -e "s:CFLAGS\ =.*:& \$(EXTRA_CFLAGS):g" -i ${S}/src/lib.rules
+ oe_runmake -C wpa_supplicant
+}
+
+do_install () {
+ install -d ${D}${sbindir}
+ install -m 755 wpa_supplicant/wpa_supplicant ${D}${sbindir}
+ install -m 755 wpa_supplicant/wpa_cli ${D}${sbindir}
+
+ install -d ${D}${bindir}
+ install -m 755 wpa_supplicant/wpa_passphrase ${D}${bindir}
+
+ install -d ${D}${docdir}/wpa_supplicant
+ install -m 644 wpa_supplicant/README ${WORKDIR}/wpa_supplicant.conf ${D}${docdir}/wpa_supplicant
+
+ install -d ${D}${sysconfdir}
+ install -m 600 ${WORKDIR}/wpa_supplicant.conf-sane ${D}${sysconfdir}/wpa_supplicant.conf
+
+ install -d ${D}${sysconfdir}/network/if-pre-up.d/
+ install -d ${D}${sysconfdir}/network/if-post-down.d/
+ install -d ${D}${sysconfdir}/network/if-down.d/
+ install -m 755 ${WORKDIR}/wpa-supplicant.sh ${D}${sysconfdir}/network/if-pre-up.d/wpa-supplicant
+ cd ${D}${sysconfdir}/network/ && \
+ ln -sf ../if-pre-up.d/wpa-supplicant if-post-down.d/wpa-supplicant
+
+ install -d ${D}/${sysconfdir}/dbus-1/system.d
+ install -m 644 ${S}/wpa_supplicant/dbus/dbus-wpa_supplicant.conf ${D}/${sysconfdir}/dbus-1/system.d
+ install -d ${D}/${datadir}/dbus-1/system-services
+ install -m 644 ${S}/wpa_supplicant/dbus/*.service ${D}/${datadir}/dbus-1/system-services
+
+ if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then
+ install -d ${D}/${systemd_unitdir}/system
+ install -m 644 ${S}/wpa_supplicant/systemd/*.service ${D}/${systemd_unitdir}/system
+ fi
+
+ install -d ${D}/etc/default/volatiles
+ install -m 0644 ${WORKDIR}/99_wpa_supplicant ${D}/etc/default/volatiles
+}
+
+pkg_postinst_wpa-supplicant () {
+ # If we're offline, we don't need to do this.
+ if [ "x$D" = "x" ]; then
+ killall -q -HUP dbus-daemon || true
+ fi
+
+}
diff --git a/poky/meta/recipes-core/base-files/base-files_3.0.14.bb b/poky/meta/recipes-core/base-files/base-files_3.0.14.bb
index a1639db..4b4027f 100644
--- a/poky/meta/recipes-core/base-files/base-files_3.0.14.bb
+++ b/poky/meta/recipes-core/base-files/base-files_3.0.14.bb
@@ -134,15 +134,16 @@
install -m 0644 ${WORKDIR}/motd ${D}${sysconfdir}/motd
ln -sf /proc/mounts ${D}${sysconfdir}/mtab
-}
-DISTRO_VERSION[vardepsexclude] += "DATE"
-do_install_basefilesissue () {
+ # deal with hostname
if [ "${hostname}" ]; then
echo ${hostname} > ${D}${sysconfdir}/hostname
echo "127.0.1.1 ${hostname}" >> ${D}${sysconfdir}/hosts
fi
+}
+DISTRO_VERSION[vardepsexclude] += "DATE"
+do_install_basefilesissue () {
install -m 644 ${WORKDIR}/issue* ${D}${sysconfdir}
if [ -n "${DISTRO_NAME}" ]; then
printf "${DISTRO_NAME} " >> ${D}${sysconfdir}/issue
diff --git a/poky/meta/recipes-core/base-passwd/base-passwd/kvm.patch b/poky/meta/recipes-core/base-passwd/base-passwd/kvm.patch
new file mode 100644
index 0000000..113d515
--- /dev/null
+++ b/poky/meta/recipes-core/base-passwd/base-passwd/kvm.patch
@@ -0,0 +1,23 @@
+From 6355278b9f744291864c373a32a8da8f84aaaf37 Mon Sep 17 00:00:00 2001
+From: Jacob Kroon <jacob.kroon@gmail.com>
+Date: Wed, 30 Jan 2019 04:53:48 +0000
+Subject: [PATCH] Add kvm group
+
+Upstream-Status: Pending
+Signed-off-by: Jacob Kroon <jacob.kroon@gmail.com>
+---
+ group.master | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/group.master b/group.master
+index cea9d60..5b62284 100644
+--- a/group.master
++++ b/group.master
+@@ -34,6 +34,7 @@ utmp:*:43:
+ video:*:44:
+ sasl:*:45:
+ plugdev:*:46:
++kvm:*:47:
+ staff:*:50:
+ games:*:60:
+ shutdown:*:70:
diff --git a/poky/meta/recipes-core/base-passwd/base-passwd_3.5.29.bb b/poky/meta/recipes-core/base-passwd/base-passwd_3.5.29.bb
index c6be1c1..d1aab09 100644
--- a/poky/meta/recipes-core/base-passwd/base-passwd_3.5.29.bb
+++ b/poky/meta/recipes-core/base-passwd/base-passwd_3.5.29.bb
@@ -12,7 +12,8 @@
file://noshadow.patch \
file://input.patch \
file://disable-docs.patch \
- "
+ file://kvm.patch \
+ "
SRC_URI[md5sum] = "6beccac48083fe8ae5048acd062e5421"
SRC_URI[sha256sum] = "f0b66388b2c8e49c15692439d2bee63bcdd4bbbf7a782c7f64accc55986b6a36"
diff --git a/poky/meta/recipes-core/busybox/busybox.inc b/poky/meta/recipes-core/busybox/busybox.inc
index c9d25ff..174ce5a 100644
--- a/poky/meta/recipes-core/busybox/busybox.inc
+++ b/poky/meta/recipes-core/busybox/busybox.inc
@@ -347,24 +347,12 @@
fi
}
+PTEST_BINDIR = "1"
+
do_install_ptest () {
cp -r ${B}/testsuite ${D}${PTEST_PATH}/
cp ${B}/.config ${D}${PTEST_PATH}/
ln -s /bin/busybox ${D}${PTEST_PATH}/busybox
-
- mkdir ${D}${PTEST_PATH}/bin
- if [ "${BUSYBOX_SPLIT_SUID}" = "1" ]; then
- while read link; do
- ln -s ${base_bindir}/busybox.suid ${D}${PTEST_PATH}/bin/$(basename $link)
- done <${D}${sysconfdir}/busybox.links.suid
- while read link; do
- ln -s ${base_bindir}/busybox.nosuid ${D}${PTEST_PATH}/bin/$(basename $link)
- done <${D}${sysconfdir}/busybox.links.nosuid
- else
- while read link; do
- ln -s ${base_bindir}/busybox ${D}${PTEST_PATH}/bin/$(basename $link)
- done <${D}${sysconfdir}/busybox.links
- fi
}
inherit update-alternatives
diff --git a/poky/meta/recipes-core/busybox/busybox/0001-dc.tests-fix-two-test-case-to-also-depend-on-DC_BIG.patch b/poky/meta/recipes-core/busybox/busybox/0001-dc.tests-fix-two-test-case-to-also-depend-on-DC_BIG.patch
new file mode 100644
index 0000000..d22db4a
--- /dev/null
+++ b/poky/meta/recipes-core/busybox/busybox/0001-dc.tests-fix-two-test-case-to-also-depend-on-DC_BIG.patch
@@ -0,0 +1,39 @@
+From a4e03fbb4d82f91069d96005405f89c45b8fd157 Mon Sep 17 00:00:00 2001
+From: Chen Qi <Qi.Chen@windriver.com>
+Date: Wed, 17 Apr 2019 09:24:37 +0800
+Subject: [PATCH] dc.tests: fix two test case to also depend on DC_BIG
+
+Upstream-Status: Submitted [http://lists.busybox.net/pipermail/busybox/2019-April/087205.html]
+
+Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
+---
+ testsuite/dc.tests | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/testsuite/dc.tests b/testsuite/dc.tests
+index 1708a48..8c3af41 100755
+--- a/testsuite/dc.tests
++++ b/testsuite/dc.tests
+@@ -41,6 +41,9 @@ testing "dc complex without spaces (multiple args)" \
+ "16\n" \
+ "" ""
+
++optional FEATURE_DC_BIG
++# All tests below depend on FEATURE_DC_BIG
++
+ testing "dc read" \
+ "dc -finput" \
+ "2\n9\n1\n" \
+@@ -51,9 +54,6 @@ testing "dc read string" \
+ "2\nstr\n1\n" \
+ "1?2\nf" "[str]\n"
+
+-optional FEATURE_DC_BIG
+-# All tests below depend on FEATURE_DC_BIG
+-
+ testing "dc '>a' (conditional execute string) 1" \
+ "dc" \
+ "1\n9\n" \
+--
+2.7.4
+
diff --git a/poky/meta/recipes-core/busybox/busybox_1.30.1.bb b/poky/meta/recipes-core/busybox/busybox_1.30.1.bb
index 164f3ab..ba76755 100644
--- a/poky/meta/recipes-core/busybox/busybox_1.30.1.bb
+++ b/poky/meta/recipes-core/busybox/busybox_1.30.1.bb
@@ -44,6 +44,7 @@
file://0001-testsuite-check-uudecode-before-using-it.patch \
file://0001-testsuite-use-www.example.org-for-wget-test-cases.patch \
file://0001-du-l-works-fix-to-use-145-instead-of-144.patch \
+ file://0001-dc.tests-fix-two-test-case-to-also-depend-on-DC_BIG.patch \
"
SRC_URI_append_libc-musl = " file://musl.cfg "
diff --git a/poky/meta/recipes-core/coreutils/coreutils/strtod_fix_clash_with_strtold.patch b/poky/meta/recipes-core/coreutils/coreutils/strtod_fix_clash_with_strtold.patch
new file mode 100644
index 0000000..7777009
--- /dev/null
+++ b/poky/meta/recipes-core/coreutils/coreutils/strtod_fix_clash_with_strtold.patch
@@ -0,0 +1,56 @@
+From 0562b040fa17f1722ba2b3096067b45d0582ca53 Mon Sep 17 00:00:00 2001
+From: Paul Eggert <eggert@cs.ucla.edu>
+Date: Mon, 11 Mar 2019 16:40:29 -0700
+Subject: [PATCH] strtod: fix clash with strtold
+
+Problem reported for RHEL 5 by Jesse Caldwell (Bug#34817).
+* lib/strtod.c (compute_minus_zero, minus_zero):
+Simplify by remving the macro / external variable,
+and having just a function. User changed. This avoids
+the need for an external variable that might clash.
+
+Upstream-Status: Backport [rhel5]
+
+Signed-off-by: Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>
+
+---
+ ChangeLog | 9 +++++++++
+ lib/strtod.c | 11 +++++------
+ 2 files changed, 14 insertions(+), 6 deletions(-)
+
+diff --git a/lib/strtod.c b/lib/strtod.c
+index b9eaa51b4..69b1564e1 100644
+--- a/lib/strtod.c
++++ b/lib/strtod.c
+@@ -294,16 +294,15 @@ parse_number (const char *nptr,
+ ICC 10.0 has a bug when optimizing the expression -zero.
+ The expression -MIN * MIN does not work when cross-compiling
+ to PowerPC on Mac OS X 10.5. */
+-#if defined __hpux || defined __sgi || defined __ICC
+ static DOUBLE
+-compute_minus_zero (void)
++minus_zero (void)
+ {
++#if defined __hpux || defined __sgi || defined __ICC
+ return -MIN * MIN;
+-}
+-# define minus_zero compute_minus_zero ()
+ #else
+-DOUBLE minus_zero = -0.0;
++ return -0.0;
+ #endif
++}
+
+ /* Convert NPTR to a DOUBLE. If ENDPTR is not NULL, a pointer to the
+ character after the last one used in the number is put in *ENDPTR. */
+@@ -479,6 +478,6 @@ STRTOD (const char *nptr, char **endptr)
+ /* Special case -0.0, since at least ICC miscompiles negation. We
+ can't use copysign(), as that drags in -lm on some platforms. */
+ if (!num && negative)
+- return minus_zero;
++ return minus_zero ();
+ return negative ? -num : num;
+ }
+--
+2.20.1
+
diff --git a/poky/meta/recipes-core/coreutils/coreutils_8.30.bb b/poky/meta/recipes-core/coreutils/coreutils_8.30.bb
deleted file mode 100644
index 8f4ee55..0000000
--- a/poky/meta/recipes-core/coreutils/coreutils_8.30.bb
+++ /dev/null
@@ -1,139 +0,0 @@
-SUMMARY = "The basic file, shell and text manipulation utilities"
-DESCRIPTION = "The GNU Core Utilities provide the basic file, shell and text \
-manipulation utilities. These are the core utilities which are expected to exist on \
-every system."
-HOMEPAGE = "http://www.gnu.org/software/coreutils/"
-BUGTRACKER = "http://debbugs.gnu.org/coreutils"
-LICENSE = "GPLv3+"
-LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504\
- file://src/ls.c;beginline=1;endline=15;md5=dbe356a88b09c29232b083d1ff8ac82a"
-DEPENDS = "gmp libcap"
-DEPENDS_class-native = ""
-
-inherit autotools gettext texinfo
-
-SRC_URI = "${GNU_MIRROR}/coreutils/${BP}.tar.xz \
- file://remove-usr-local-lib-from-m4.patch \
- file://fix-selinux-flask.patch \
- file://0001-uname-report-processor-and-hardware-correctly.patch \
- file://disable-ls-output-quoting.patch \
- file://0001-local.mk-fix-cross-compiling-problem.patch \
- "
-
-SRC_URI[md5sum] = "ab06d68949758971fe744db66b572816"
-SRC_URI[sha256sum] = "e831b3a86091496cdba720411f9748de81507798f6130adeaef872d206e1b057"
-
-EXTRA_OECONF_class-native = "--without-gmp"
-EXTRA_OECONF_class-target = "--enable-install-program=arch,hostname --libexecdir=${libdir}"
-EXTRA_OECONF_class-nativesdk = "--enable-install-program=arch,hostname"
-
-# acl and xattr are not default features
-#
-PACKAGECONFIG_class-target ??= "\
- ${@bb.utils.filter('DISTRO_FEATURES', 'acl xattr', d)} \
-"
-
-# The lib/oe/path.py requires xattr
-PACKAGECONFIG_class-native ??= "xattr"
-
-# with, without, depends, rdepends
-#
-PACKAGECONFIG[acl] = "--enable-acl,--disable-acl,acl,"
-PACKAGECONFIG[xattr] = "--enable-xattr,--disable-xattr,attr,"
-PACKAGECONFIG[single-binary] = "--enable-single-binary,--disable-single-binary,,"
-
-# [ df mktemp nice printenv base64 gets a special treatment and is not included in this
-bindir_progs = "arch basename chcon cksum comm csplit cut dir dircolors dirname du \
- env expand expr factor fmt fold groups head hostid id install \
- join link logname md5sum mkfifo nl nohup nproc od paste pathchk \
- pinky pr printf ptx readlink realpath runcon seq sha1sum sha224sum sha256sum \
- sha384sum sha512sum shred shuf sort split stdbuf sum tac tail tee test timeout \
- tr truncate tsort tty unexpand uniq unlink uptime users vdir wc who whoami yes"
-
-# hostname gets a special treatment and is not included in this
-base_bindir_progs = "cat chgrp chmod chown cp date dd echo false hostname kill ln ls mkdir \
- mknod mv pwd rm rmdir sleep stty sync touch true uname stat"
-
-sbindir_progs= "chroot"
-
-# Let aclocal use the relative path for the m4 file rather than the
-# absolute since coreutils has a lot of m4 files, otherwise there might
-# be an "Argument list too long" error when it is built in a long/deep
-# directory.
-acpaths = "-I ./m4"
-
-# Deal with a separate builddir failure if src doesn't exist when creating version.c/version.h
-do_compile_prepend () {
- mkdir -p ${B}/src
-}
-
-do_install_class-native() {
- autotools_do_install
- # remove groups to fix conflict with shadow-native
- rm -f ${D}${STAGING_BINDIR_NATIVE}/groups
- # The return is a must since native doesn't need the
- # do_install_append() in the below.
- return
-}
-
-do_install_append() {
- for i in df mktemp nice printenv base64; do mv ${D}${bindir}/$i ${D}${bindir}/$i.${BPN}; done
-
- install -d ${D}${base_bindir}
- [ "${base_bindir}" != "${bindir}" ] && for i in ${base_bindir_progs}; do mv ${D}${bindir}/$i ${D}${base_bindir}/$i.${BPN}; done
-
- install -d ${D}${sbindir}
- [ "${sbindir}" != "${bindir}" ] && for i in ${sbindir_progs}; do mv ${D}${bindir}/$i ${D}${sbindir}/$i.${BPN}; done
-
- # [ requires special handling because [.coreutils will cause the sed stuff
- # in update-alternatives to fail, therefore use lbracket - the name used
- # for the actual source file.
- mv ${D}${bindir}/[ ${D}${bindir}/lbracket.${BPN}
-}
-
-inherit update-alternatives
-
-ALTERNATIVE_PRIORITY = "100"
-# Make hostname's priority higher than busybox but lower than net-tools
-ALTERNATIVE_PRIORITY[hostname] = "90"
-ALTERNATIVE_${PN} = "lbracket ${bindir_progs} ${base_bindir_progs} ${sbindir_progs} base64 nice printenv mktemp df"
-ALTERNATIVE_${PN}-doc = "base64.1 nice.1 mktemp.1 df.1 groups.1 kill.1 uptime.1 stat.1 hostname.1"
-
-ALTERNATIVE_LINK_NAME[hostname.1] = "${mandir}/man1/hostname.1"
-
-ALTERNATIVE_LINK_NAME[base64] = "${base_bindir}/base64"
-ALTERNATIVE_TARGET[base64] = "${bindir}/base64.${BPN}"
-ALTERNATIVE_LINK_NAME[base64.1] = "${mandir}/man1/base64.1"
-
-ALTERNATIVE_LINK_NAME[mktemp] = "${base_bindir}/mktemp"
-ALTERNATIVE_TARGET[mktemp] = "${bindir}/mktemp.${BPN}"
-ALTERNATIVE_LINK_NAME[mktemp.1] = "${mandir}/man1/mktemp.1"
-
-ALTERNATIVE_LINK_NAME[df] = "${base_bindir}/df"
-ALTERNATIVE_TARGET[df] = "${bindir}/df.${BPN}"
-ALTERNATIVE_LINK_NAME[df.1] = "${mandir}/man1/df.1"
-
-ALTERNATIVE_LINK_NAME[nice] = "${base_bindir}/nice"
-ALTERNATIVE_TARGET[nice] = "${bindir}/nice.${BPN}"
-ALTERNATIVE_LINK_NAME[nice.1] = "${mandir}/man1/nice.1"
-
-ALTERNATIVE_LINK_NAME[printenv] = "${base_bindir}/printenv"
-ALTERNATIVE_TARGET[printenv] = "${bindir}/printenv.${BPN}"
-
-ALTERNATIVE_LINK_NAME[lbracket] = "${bindir}/["
-ALTERNATIVE_TARGET[lbracket] = "${bindir}/lbracket.${BPN}"
-
-ALTERNATIVE_LINK_NAME[groups.1] = "${mandir}/man1/groups.1"
-ALTERNATIVE_LINK_NAME[uptime.1] = "${mandir}/man1/uptime.1"
-ALTERNATIVE_LINK_NAME[kill.1] = "${mandir}/man1/kill.1"
-ALTERNATIVE_LINK_NAME[stat.1] = "${mandir}/man1/stat.1"
-
-python __anonymous() {
- for prog in d.getVar('base_bindir_progs').split():
- d.setVarFlag('ALTERNATIVE_LINK_NAME', prog, '%s/%s' % (d.getVar('base_bindir'), prog))
-
- for prog in d.getVar('sbindir_progs').split():
- d.setVarFlag('ALTERNATIVE_LINK_NAME', prog, '%s/%s' % (d.getVar('sbindir'), prog))
-}
-
-BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-core/coreutils/coreutils_8.31.bb b/poky/meta/recipes-core/coreutils/coreutils_8.31.bb
new file mode 100644
index 0000000..4a74f61
--- /dev/null
+++ b/poky/meta/recipes-core/coreutils/coreutils_8.31.bb
@@ -0,0 +1,141 @@
+SUMMARY = "The basic file, shell and text manipulation utilities"
+DESCRIPTION = "The GNU Core Utilities provide the basic file, shell and text \
+manipulation utilities. These are the core utilities which are expected to exist on \
+every system."
+HOMEPAGE = "http://www.gnu.org/software/coreutils/"
+BUGTRACKER = "http://debbugs.gnu.org/coreutils"
+LICENSE = "GPLv3+"
+LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504\
+ file://src/ls.c;beginline=1;endline=15;md5=c456f9896277a0543e3866777ccc0255"
+DEPENDS = "gmp libcap"
+DEPENDS_class-native = ""
+
+inherit autotools gettext texinfo
+
+SRC_URI = "${GNU_MIRROR}/coreutils/${BP}.tar.xz \
+ file://remove-usr-local-lib-from-m4.patch \
+ file://fix-selinux-flask.patch \
+ file://0001-uname-report-processor-and-hardware-correctly.patch \
+ file://disable-ls-output-quoting.patch \
+ file://0001-local.mk-fix-cross-compiling-problem.patch \
+ "
+
+SRC_URI_append_libc-musl = "file://strtod_fix_clash_with_strtold.patch"
+
+SRC_URI[md5sum] = "0009a224d8e288e8ec406ef0161f9293"
+SRC_URI[sha256sum] = "ff7a9c918edce6b4f4b2725e3f9b37b0c4d193531cac49a48b56c4d0d3a9e9fd"
+
+EXTRA_OECONF_class-native = "--without-gmp"
+EXTRA_OECONF_class-target = "--enable-install-program=arch,hostname --libexecdir=${libdir}"
+EXTRA_OECONF_class-nativesdk = "--enable-install-program=arch,hostname"
+
+# acl and xattr are not default features
+#
+PACKAGECONFIG_class-target ??= "\
+ ${@bb.utils.filter('DISTRO_FEATURES', 'acl xattr', d)} \
+"
+
+# The lib/oe/path.py requires xattr
+PACKAGECONFIG_class-native ??= "xattr"
+
+# with, without, depends, rdepends
+#
+PACKAGECONFIG[acl] = "--enable-acl,--disable-acl,acl,"
+PACKAGECONFIG[xattr] = "--enable-xattr,--disable-xattr,attr,"
+PACKAGECONFIG[single-binary] = "--enable-single-binary,--disable-single-binary,,"
+
+# [ df mktemp nice printenv base64 gets a special treatment and is not included in this
+bindir_progs = "arch basename chcon cksum comm csplit cut dir dircolors dirname du \
+ env expand expr factor fmt fold groups head hostid id install \
+ join link logname md5sum mkfifo nl nohup nproc od paste pathchk \
+ pinky pr printf ptx readlink realpath runcon seq sha1sum sha224sum sha256sum \
+ sha384sum sha512sum shred shuf sort split stdbuf sum tac tail tee test timeout \
+ tr truncate tsort tty unexpand uniq unlink uptime users vdir wc who whoami yes"
+
+# hostname gets a special treatment and is not included in this
+base_bindir_progs = "cat chgrp chmod chown cp date dd echo false hostname kill ln ls mkdir \
+ mknod mv pwd rm rmdir sleep stty sync touch true uname stat"
+
+sbindir_progs= "chroot"
+
+# Let aclocal use the relative path for the m4 file rather than the
+# absolute since coreutils has a lot of m4 files, otherwise there might
+# be an "Argument list too long" error when it is built in a long/deep
+# directory.
+acpaths = "-I ./m4"
+
+# Deal with a separate builddir failure if src doesn't exist when creating version.c/version.h
+do_compile_prepend () {
+ mkdir -p ${B}/src
+}
+
+do_install_class-native() {
+ autotools_do_install
+ # remove groups to fix conflict with shadow-native
+ rm -f ${D}${STAGING_BINDIR_NATIVE}/groups
+ # The return is a must since native doesn't need the
+ # do_install_append() in the below.
+ return
+}
+
+do_install_append() {
+ for i in df mktemp nice printenv base64; do mv ${D}${bindir}/$i ${D}${bindir}/$i.${BPN}; done
+
+ install -d ${D}${base_bindir}
+ [ "${base_bindir}" != "${bindir}" ] && for i in ${base_bindir_progs}; do mv ${D}${bindir}/$i ${D}${base_bindir}/$i.${BPN}; done
+
+ install -d ${D}${sbindir}
+ [ "${sbindir}" != "${bindir}" ] && for i in ${sbindir_progs}; do mv ${D}${bindir}/$i ${D}${sbindir}/$i.${BPN}; done
+
+ # [ requires special handling because [.coreutils will cause the sed stuff
+ # in update-alternatives to fail, therefore use lbracket - the name used
+ # for the actual source file.
+ mv ${D}${bindir}/[ ${D}${bindir}/lbracket.${BPN}
+}
+
+inherit update-alternatives
+
+ALTERNATIVE_PRIORITY = "100"
+# Make hostname's priority higher than busybox but lower than net-tools
+ALTERNATIVE_PRIORITY[hostname] = "90"
+ALTERNATIVE_${PN} = "lbracket ${bindir_progs} ${base_bindir_progs} ${sbindir_progs} base64 nice printenv mktemp df"
+ALTERNATIVE_${PN}-doc = "base64.1 nice.1 mktemp.1 df.1 groups.1 kill.1 uptime.1 stat.1 hostname.1"
+
+ALTERNATIVE_LINK_NAME[hostname.1] = "${mandir}/man1/hostname.1"
+
+ALTERNATIVE_LINK_NAME[base64] = "${base_bindir}/base64"
+ALTERNATIVE_TARGET[base64] = "${bindir}/base64.${BPN}"
+ALTERNATIVE_LINK_NAME[base64.1] = "${mandir}/man1/base64.1"
+
+ALTERNATIVE_LINK_NAME[mktemp] = "${base_bindir}/mktemp"
+ALTERNATIVE_TARGET[mktemp] = "${bindir}/mktemp.${BPN}"
+ALTERNATIVE_LINK_NAME[mktemp.1] = "${mandir}/man1/mktemp.1"
+
+ALTERNATIVE_LINK_NAME[df] = "${base_bindir}/df"
+ALTERNATIVE_TARGET[df] = "${bindir}/df.${BPN}"
+ALTERNATIVE_LINK_NAME[df.1] = "${mandir}/man1/df.1"
+
+ALTERNATIVE_LINK_NAME[nice] = "${base_bindir}/nice"
+ALTERNATIVE_TARGET[nice] = "${bindir}/nice.${BPN}"
+ALTERNATIVE_LINK_NAME[nice.1] = "${mandir}/man1/nice.1"
+
+ALTERNATIVE_LINK_NAME[printenv] = "${base_bindir}/printenv"
+ALTERNATIVE_TARGET[printenv] = "${bindir}/printenv.${BPN}"
+
+ALTERNATIVE_LINK_NAME[lbracket] = "${bindir}/["
+ALTERNATIVE_TARGET[lbracket] = "${bindir}/lbracket.${BPN}"
+
+ALTERNATIVE_LINK_NAME[groups.1] = "${mandir}/man1/groups.1"
+ALTERNATIVE_LINK_NAME[uptime.1] = "${mandir}/man1/uptime.1"
+ALTERNATIVE_LINK_NAME[kill.1] = "${mandir}/man1/kill.1"
+ALTERNATIVE_LINK_NAME[stat.1] = "${mandir}/man1/stat.1"
+
+python __anonymous() {
+ for prog in d.getVar('base_bindir_progs').split():
+ d.setVarFlag('ALTERNATIVE_LINK_NAME', prog, '%s/%s' % (d.getVar('base_bindir'), prog))
+
+ for prog in d.getVar('sbindir_progs').split():
+ d.setVarFlag('ALTERNATIVE_LINK_NAME', prog, '%s/%s' % (d.getVar('sbindir'), prog))
+}
+
+BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-core/dbus/dbus-test_1.12.12.bb b/poky/meta/recipes-core/dbus/dbus-test_1.12.12.bb
index f413192..f95b31a 100644
--- a/poky/meta/recipes-core/dbus/dbus-test_1.12.12.bb
+++ b/poky/meta/recipes-core/dbus/dbus-test_1.12.12.bb
@@ -7,7 +7,6 @@
DEPENDS = "dbus glib-2.0"
-RDEPENDS_${PN} += "make"
RDEPENDS_${PN}-dev = ""
SRC_URI = "http://dbus.freedesktop.org/releases/dbus/dbus-${PV}.tar.gz \
@@ -33,13 +32,14 @@
--enable-installed-tests \
--enable-checks \
--enable-asserts \
- --enable-verbose-mode \
--enable-largefile \
--disable-xml-docs \
--disable-doxygen-docs \
--disable-libaudit \
--with-dbus-test-dir=${PTEST_PATH} \
- ${EXTRA_OECONF_X}"
+ ${EXTRA_OECONF_X} \
+ --enable-embedded-tests \
+ "
EXTRA_OECONF_append_class-target = " SYSTEMCTL=${base_bindir}/systemctl"
@@ -50,6 +50,7 @@
PACKAGECONFIG[systemd] = "--enable-systemd --with-systemdsystemunitdir=${systemd_system_unitdir},--disable-systemd --without-systemdsystemunitdir,systemd"
PACKAGECONFIG[x11] = "--with-x --enable-x11-autolaunch,--without-x --disable-x11-autolaunch, virtual/libx11 libsm"
PACKAGECONFIG[user-session] = "--enable-user-session --with-systemduserunitdir=${systemd_user_unitdir},--disable-user-session"
+PACKAGECONFIG[verbose-mode] = "--enable-verbose-mode,,,"
do_install() {
:
@@ -58,12 +59,17 @@
do_install_ptest() {
install -d ${D}${PTEST_PATH}/test
l="shell printf refs syslog marshal syntax corrupt dbus-daemon dbus-daemon-eavesdrop loopback relay \
- variant uid-permissions syntax spawn sd-activation names monitor message fdpass "
+ variant uid-permissions syntax spawn sd-activation names monitor message fdpass service shell-service"
for i in $l; do install ${B}/test/.libs/test-$i ${D}${PTEST_PATH}/test; done
l="bus bus-system bus-launch-helper"
for i in $l; do install ${B}/bus/.libs/test-$i ${D}${PTEST_PATH}/test; done
+ install -d ${D}${PTEST_PATH}/bus
+ install ${B}/bus/.libs/dbus-daemon-launch-helper-test ${D}${PTEST_PATH}/bus
+
+ install ${B}/test/test-segfault ${D}${PTEST_PATH}/test
+
cp -r ${B}/test/data ${D}${PTEST_PATH}/test
install ${B}/dbus/.libs/test-dbus ${D}${PTEST_PATH}/test
@@ -78,6 +84,7 @@
sed -i -e 's;@PTEST_PATH@;${PTEST_PATH};g' ${D}${PTEST_PATH}/run-ptest
}
-RDEPENDS_${PN}-ptest += "bash"
+RDEPENDS_${PN}-ptest += "bash make dbus"
+RDEPENDS_${PN}-ptest_remove = "${PN}"
PRIVATE_LIBS_${PN}-ptest = "libdbus-1.so.3"
diff --git a/poky/meta/recipes-core/dbus/dbus/run-ptest b/poky/meta/recipes-core/dbus/dbus/run-ptest
index 353ba1e..cf2e68f 100755
--- a/poky/meta/recipes-core/dbus/dbus/run-ptest
+++ b/poky/meta/recipes-core/dbus/dbus/run-ptest
@@ -17,8 +17,16 @@
files=`ls test/test-*`
for i in $files
- do
- ./$i ./test/data >/dev/null
- output
- done
+do
+ #these programs are used by testcase test-bus, don't run here
+ if [ $i = "test/test-service" ] \
+ || [ $i = "test/test-shell-service" ] \
+ || [ $i = "test/test-segfault" ]
+ then
+ continue
+ fi
+
+ ./$i ./test/data >/dev/null 2>&1
+ output
+done
diff --git a/poky/meta/recipes-core/dropbear/dropbear.inc b/poky/meta/recipes-core/dropbear/dropbear.inc
index 3fbdb5e..2537603 100644
--- a/poky/meta/recipes-core/dropbear/dropbear.inc
+++ b/poky/meta/recipes-core/dropbear/dropbear.inc
@@ -34,6 +34,8 @@
inherit autotools update-rc.d systemd
+CVE_PRODUCT = "dropbear_ssh"
+
INITSCRIPT_NAME = "dropbear"
INITSCRIPT_PARAMS = "defaults 10"
diff --git a/poky/meta/recipes-core/dropbear/dropbear_2019.77.bb b/poky/meta/recipes-core/dropbear/dropbear_2019.77.bb
deleted file mode 100644
index d2a71ba..0000000
--- a/poky/meta/recipes-core/dropbear/dropbear_2019.77.bb
+++ /dev/null
@@ -1,4 +0,0 @@
-require dropbear.inc
-
-SRC_URI[md5sum] = "5d4f0256c5d13820b0a3eaadb1a0bc1a"
-SRC_URI[sha256sum] = "d91f78ebe633be1d071fd1b7e5535b9693794048b019e9f4bea257e1992b458d"
diff --git a/poky/meta/recipes-core/dropbear/dropbear_2019.78.bb b/poky/meta/recipes-core/dropbear/dropbear_2019.78.bb
new file mode 100644
index 0000000..d2cd816
--- /dev/null
+++ b/poky/meta/recipes-core/dropbear/dropbear_2019.78.bb
@@ -0,0 +1,4 @@
+require dropbear.inc
+
+SRC_URI[md5sum] = "a972c85ed678ad0fdcb7844e1294fb54"
+SRC_URI[sha256sum] = "525965971272270995364a0eb01f35180d793182e63dd0b0c3eb0292291644a4"
diff --git a/poky/meta/recipes-core/ell/ell_0.20.bb b/poky/meta/recipes-core/ell/ell_0.20.bb
new file mode 100644
index 0000000..81caa80
--- /dev/null
+++ b/poky/meta/recipes-core/ell/ell_0.20.bb
@@ -0,0 +1,22 @@
+SUMMARY = "Embedded Linux Library"
+DESCRIPTION = "The Embedded Linux Library (ELL) provides core, \
+low-level functionality for system daemons. It typically has no \
+dependencies other than the Linux kernel, C standard library, and \
+libdl (for dynamic linking). While ELL is designed to be efficient \
+and compact enough for use on embedded Linux platforms, it is not \
+limited to resource-constrained systems."
+SECTION = "libs"
+LICENSE = "LGPLv2.1"
+LIC_FILES_CHKSUM = "file://COPYING;md5=fb504b67c50331fc78734fed90fb0e09"
+
+DEPENDS = "dbus"
+
+inherit autotools pkgconfig
+
+SRC_URI = "https://mirrors.edge.kernel.org/pub/linux/libs/${BPN}/${BPN}-${PV}.tar.xz"
+SRC_URI[md5sum] = "920189f5be4ee4cd72d610baeb20da65"
+SRC_URI[sha256sum] = "d4aa08915f4058ecaab509dffbe22665d71dba6fe9626caff63c0e5f4b78a394"
+
+do_configure_prepend () {
+ mkdir -p ${S}/build-aux
+}
diff --git a/poky/meta/recipes-core/gettext/gettext-0.19.8.1/run-ptest b/poky/meta/recipes-core/gettext/gettext-0.19.8.1/run-ptest
new file mode 100644
index 0000000..f17f3c8
--- /dev/null
+++ b/poky/meta/recipes-core/gettext/gettext-0.19.8.1/run-ptest
@@ -0,0 +1,6 @@
+#!/bin/sh
+#
+#This script is used to run gettext test suites
+cd tests
+
+make -k runtest-TESTS top_srcdir=.. srcdir=. abs_srcdir=$PWD top_builddir=$PWD/../ abs_top_srcdir=$PWD/../ | cat
diff --git a/poky/meta/recipes-core/gettext/gettext-0.19.8.1/serial-tests-config.patch b/poky/meta/recipes-core/gettext/gettext-0.19.8.1/serial-tests-config.patch
new file mode 100644
index 0000000..31ff913
--- /dev/null
+++ b/poky/meta/recipes-core/gettext/gettext-0.19.8.1/serial-tests-config.patch
@@ -0,0 +1,58 @@
+From c4b1f3a0c7b7c40b343be9b95deb84e0485643be Mon Sep 17 00:00:00 2001
+From: "Hongjun.Yang" <hongjun.yang@windriver.com>
+Date: Thu, 28 Jul 2016 12:36:15 +0800
+Subject: [PATCH] fix for ptest
+
+Add serial-tests support, ptest need it
+
+Upstream-Status: Inappropriate [oe specific]
+
+Signed-off-by: Changqing Li <changqing.li@windriver.com>
+---
+ configure.ac | 2 +-
+ gettext-runtime/configure.ac | 2 +-
+ gettext-tools/configure.ac | 2 +-
+ 3 files changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 5e996fa..880581f 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -23,7 +23,7 @@ AC_INIT([gettext],
+ [bug-gnu-gettext@gnu.org])
+ AC_CONFIG_SRCDIR([gettext-tools/src/msgfmt.c])
+ AC_CONFIG_AUX_DIR([build-aux])
+-AM_INIT_AUTOMAKE([1.13 silent-rules parallel-tests dist-xz dist-lzip])
++AM_INIT_AUTOMAKE([1.13 silent-rules serial-tests dist-xz dist-lzip])
+
+ dnl Override automake's tar command used for creating distributions.
+ am__tar='${AMTAR} chof - --owner=root --group=root "$$tardir"'
+diff --git a/gettext-runtime/configure.ac b/gettext-runtime/configure.ac
+index e9299b6..d4f5528 100644
+--- a/gettext-runtime/configure.ac
++++ b/gettext-runtime/configure.ac
+@@ -22,7 +22,7 @@ AC_INIT([gettext-runtime],
+ [bug-gnu-gettext@gnu.org])
+ AC_CONFIG_SRCDIR([intl/dcigettext.c])
+ AC_CONFIG_AUX_DIR([../build-aux])
+-AM_INIT_AUTOMAKE([1.11.1 silent-rules parallel-tests])
++AM_INIT_AUTOMAKE([1.11.1 silent-rules serial-tests])
+ AC_CONFIG_HEADERS([config.h])
+
+ dnl Installation directories.
+diff --git a/gettext-tools/configure.ac b/gettext-tools/configure.ac
+index 920eeb6..c507434 100644
+--- a/gettext-tools/configure.ac
++++ b/gettext-tools/configure.ac
+@@ -22,7 +22,7 @@ AC_INIT([gettext-tools],
+ [bug-gnu-gettext@gnu.org])
+ AC_CONFIG_SRCDIR([src/msgfmt.c])
+ AC_CONFIG_AUX_DIR([../build-aux])
+-AM_INIT_AUTOMAKE([1.11.1 silent-rules parallel-tests])
++AM_INIT_AUTOMAKE([1.11.1 silent-rules serial-tests])
+ AC_CONFIG_HEADERS([config.h])
+
+ dnl Installation directories.
+--
+2.1.4
+
diff --git a/poky/meta/recipes-core/gettext/gettext_0.19.8.1.bb b/poky/meta/recipes-core/gettext/gettext_0.19.8.1.bb
index 4049724..627568b 100644
--- a/poky/meta/recipes-core/gettext/gettext_0.19.8.1.bb
+++ b/poky/meta/recipes-core/gettext/gettext_0.19.8.1.bb
@@ -22,12 +22,14 @@
file://cr-statement.c-timsort.h-fix-formatting-issues.patch \
file://use-pkgconfig.patch \
file://fix-CVE-2018-18751.patch \
+ file://run-ptest \
+ file://serial-tests-config.patch \
"
SRC_URI[md5sum] = "97e034cf8ce5ba73a28ff6c3c0638092"
SRC_URI[sha256sum] = "ff942af0e438ced4a8b0ea4b0b6e0d6d657157c5e2364de57baa279c1c125c43"
-inherit autotools texinfo pkgconfig
+inherit autotools texinfo pkgconfig ptest
EXTRA_OECONF += "--without-lispdir \
--disable-csharp \
@@ -129,4 +131,57 @@
}
+do_compile_ptest() {
+ cd ${B}/gettext-tools/tests/
+ sed -i '/^buildtest-TESTS: /c buildtest-TESTS: $(TESTS) $(check_PROGRAMS)' Makefile
+ oe_runmake buildtest-TESTS
+ cd -
+}
+
+do_install_ptest() {
+ if [ ${PTEST_ENABLED} = "1" ]; then
+ mkdir -p ${D}${PTEST_PATH}/tests
+ mkdir -p ${D}${PTEST_PATH}/src
+ mkdir -p ${D}${PTEST_PATH}/po
+ mkdir -p ${D}${PTEST_PATH}/misc
+ cp -rf ${S}/gettext-tools/tests/* ${D}${PTEST_PATH}/tests
+ cp -rf ${B}/gettext-tools/tests/.libs/* ${D}${PTEST_PATH}/tests
+ cp -rf ${B}/gettext-runtime/intl/.libs/libgnuintl.so.8* ${D}${libdir}/
+ cp -rf ${B}/gettext-tools/tests/Makefile ${D}${PTEST_PATH}/tests
+ sed -i '/^Makefile:/c Makefile:' ${D}${PTEST_PATH}/tests/Makefile
+ sed -i -e 's:CONFIG_SHELL=.*:& LOCALE_FR='fr_FR.iso88591' LOCALE_FR_UTF8='fr_FR.utf8' LOCALE_JA='ja_JP.eucjp':g' \
+ -e 's:lang-c lang-c++:lang-c++:g' ${D}${PTEST_PATH}/tests/Makefile
+ install ${S}/gettext-tools/src/msgunfmt.tcl ${D}${PTEST_PATH}/src
+ install ${S}/gettext-tools/src/project-id ${D}${PTEST_PATH}/src
+ install ${B}/gettext-runtime/src/gettext.sh ${D}${PTEST_PATH}/src
+ install ${B}/gettext-runtime/src/ngettext ${D}${PTEST_PATH}/src
+ install ${B}/gettext-runtime/src/envsubst ${D}${PTEST_PATH}/src
+ install ${B}/gettext-runtime/src/gettext ${D}${PTEST_PATH}/src
+ install ${B}/gettext-tools/src/.libs/cldr-plurals ${D}${PTEST_PATH}/src
+ install ${S}/gettext-tools/po/gettext-tools.pot ${D}${PTEST_PATH}/po
+ install ${B}/gettext-tools/misc/* ${D}${PTEST_PATH}/misc
+ find ${D}${PTEST_PATH}/ -name "*.o" -exec rm {} \;
+ chmod 0755 ${D}${PTEST_PATH}/tests/lang-vala ${D}${PTEST_PATH}/tests/plural-1 ${D}${PTEST_PATH}/tests/xgettext-tcl-4 \
+ ${D}${PTEST_PATH}/tests/xgettext-vala-1 ${D}${PTEST_PATH}/tests/xgettext-po-2
+ fi
+}
+
+RDEPENDS_${PN}-ptest_append_libc-glibc = "\
+ glibc-gconv-big5 \
+ glibc-charmap-big5 \
+ glibc-gconv-cp1251 \
+ glibc-charmap-cp1251 \
+ glibc-charmap-iso-8859-9 \
+ glibc-gconv-iso8859-9 \
+ glibc-charmap-koi8-r \
+ glibc-gconv-koi8-r \
+ glibc-gconv-iso8859-2 \
+ glibc-charmap-iso-8859-2 \
+ glibc-gconv-euc-kr \
+ glibc-charmap-euc-kr \
+"
+
+INSANE_SKIP_${PN}-ptest += "ldflags"
+INSANE_SKIP_${PN}-ptest += "rpaths"
+
BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-core/glib-2.0/glib-2.0/fix-nl-abaltmon.patch b/poky/meta/recipes-core/glib-2.0/glib-2.0/fix-nl-abaltmon.patch
new file mode 100644
index 0000000..c36a397
--- /dev/null
+++ b/poky/meta/recipes-core/glib-2.0/glib-2.0/fix-nl-abaltmon.patch
@@ -0,0 +1,104 @@
+Fix the last few remaining bugs in glib's date/locale code.
+
+Upstream-Status: Backport
+Signed-off-by: Ross Burton <ross.burton@intel.com>
+
+From 93d8482384ebc5c7d1f3d92b0190db0371269663 Mon Sep 17 00:00:00 2001
+From: Rafal Luzynski <digitalfreak@lingonborough.com>
+Date: Fri, 10 May 2019 00:40:27 +0200
+Subject: [PATCH] build: Fix a typo in the test whether _NL_ABALTMON_n is
+ supported
+
+The correct spelling is "_NL_ABALTMON_n" rather than "_NL_ALTMON_n".
+The typo made Meson build think that _NL_ABALTMON_n constants are
+not supported which was totally wrong. This made g_date_time_format()
+output incorrect abbreviated month names in some languages.
+The old configure.ac script was correct here.
+
+Bug introduced in commit be4f96b6502c01d2a51d60b7a669c8ef82e22a4d.
+
+Closes: #1759
+---
+ meson.build | 26 +++++++++++++-------------
+ 1 file changed, 13 insertions(+), 13 deletions(-)
+
+diff --git a/meson.build b/meson.build
+index c5d2ce5f8..08fa40ac5 100644
+--- a/meson.build
++++ b/meson.build
+@@ -1002,20 +1002,20 @@ if cc.links('''#ifndef _GNU_SOURCE
+ #include <langinfo.h>
+ int main (int argc, char ** argv) {
+ char *str;
+- str = nl_langinfo (_NL_ALTMON_1);
+- str = nl_langinfo (_NL_ALTMON_2);
+- str = nl_langinfo (_NL_ALTMON_3);
+- str = nl_langinfo (_NL_ALTMON_4);
+- str = nl_langinfo (_NL_ALTMON_5);
+- str = nl_langinfo (_NL_ALTMON_6);
+- str = nl_langinfo (_NL_ALTMON_7);
+- str = nl_langinfo (_NL_ALTMON_8);
+- str = nl_langinfo (_NL_ALTMON_9);
+- str = nl_langinfo (_NL_ALTMON_10);
+- str = nl_langinfo (_NL_ALTMON_11);
+- str = nl_langinfo (_NL_ALTMON_12);
++ str = nl_langinfo (_NL_ABALTMON_1);
++ str = nl_langinfo (_NL_ABALTMON_2);
++ str = nl_langinfo (_NL_ABALTMON_3);
++ str = nl_langinfo (_NL_ABALTMON_4);
++ str = nl_langinfo (_NL_ABALTMON_5);
++ str = nl_langinfo (_NL_ABALTMON_6);
++ str = nl_langinfo (_NL_ABALTMON_7);
++ str = nl_langinfo (_NL_ABALTMON_8);
++ str = nl_langinfo (_NL_ABALTMON_9);
++ str = nl_langinfo (_NL_ABALTMON_10);
++ str = nl_langinfo (_NL_ABALTMON_11);
++ str = nl_langinfo (_NL_ABALTMON_12);
+ return 0;
+- }''', name : 'nl_langinfo (_NL_ALTMON_n)')
++ }''', name : 'nl_langinfo (_NL_ABALTMON_n)')
+ glib_conf.set('HAVE_LANGINFO_ABALTMON', 1)
+ endif
+
+--
+2.18.1
+
+From 35c28be32762d5af6b93cb6a3420c5977f7bf599 Mon Sep 17 00:00:00 2001
+From: Rafal Luzynski <digitalfreak@lingonborough.com>
+Date: Mon, 13 May 2019 23:11:28 +0200
+Subject: [PATCH] tests: Update month name check for Greek locale
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Update the abbreviated month name in the test to match the actual
+translation. Otherwise the test fails with false positive.
+
+Vocabulary:
+
+July (nominative) - Greek: Ιούλιος (abbreviated: Ιούλ)
+Of July (genitive) - Greek: Ιουλίου (abbreviated: Ιουλ)
+
+This is similar to commit 4d215e006ee69bd7a993bf853722993433adbf9a
+and commit 7fe793e125c316ac34edd8158df5a132cb044bc1.
+
+Closes #1776
+---
+ glib/tests/date.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/glib/tests/date.c b/glib/tests/date.c
+index 8eb28712b..ff13ad101 100644
+--- a/glib/tests/date.c
++++ b/glib/tests/date.c
+@@ -388,7 +388,7 @@ test_month_names (void)
+ TEST_DATE ( 1, 4, 2018, "%OB %Y", "Απρίλιος 2018");
+ TEST_DATE ( 1, 5, 2018, "%OB %Y", "Μάιος 2018");
+ TEST_DATE ( 1, 6, 2018, "%OB %Y", "Ιούνιος 2018");
+- TEST_DATE (16, 7, 2018, "%e %b %Y", "16 Ιούλ 2018");
++ TEST_DATE (16, 7, 2018, "%e %b %Y", "16 Ιουλ 2018");
+ TEST_DATE ( 1, 8, 2018, "%Ob %Y", "Αύγ 2018");
+ }
+ else
+--
+2.18.1
diff --git a/poky/meta/recipes-core/glib-2.0/glib-2.0_2.58.3.bb b/poky/meta/recipes-core/glib-2.0/glib-2.0_2.58.3.bb
index 733a2d4..d749be3 100644
--- a/poky/meta/recipes-core/glib-2.0/glib-2.0_2.58.3.bb
+++ b/poky/meta/recipes-core/glib-2.0/glib-2.0_2.58.3.bb
@@ -17,6 +17,7 @@
file://0001-Do-not-write-bindir-into-pkg-config-files.patch \
file://0001-meson.build-do-not-hardcode-linux-as-the-host-system.patch \
file://0001-meson-do-a-build-time-check-for-strlcpy-before-attem.patch \
+ file://fix-nl-abaltmon.patch \
file://glib-meson.cross \
"
diff --git a/poky/meta/recipes-core/glib-2.0/glib.inc b/poky/meta/recipes-core/glib-2.0/glib.inc
index 574bb38..9ffc456 100644
--- a/poky/meta/recipes-core/glib-2.0/glib.inc
+++ b/poky/meta/recipes-core/glib-2.0/glib.inc
@@ -30,11 +30,7 @@
inherit meson gettext gtk-doc pkgconfig ptest-gnome upstream-version-is-even bash-completion gio-module-cache manpages distro_features_check
-GTKDOC_ENABLE_FLAG = "-Dgtk_doc=true"
-GTKDOC_DISABLE_FLAG = "-Dgtk_doc=false"
-
-EXTRA_OEMESON_append_class-target = " ${@bb.utils.contains('GTKDOC_ENABLED', 'True', '${GTKDOC_ENABLE_FLAG}', \
- '${GTKDOC_DISABLE_FLAG}', d)} "
+GTKDOC_MESON_OPTION = "gtk_doc"
# This avoids the need to depend on target python3, which in case of mingw is not even possible.
# meson's python configuration pokes into python3 configuration, so this provides the native config to it.
@@ -152,6 +148,14 @@
tzdata-europe \
tzdata-posix \
shared-mime-info \
+ ${PN}-locale-ja \
+ ${PN}-locale-fr \
+ ${PN}-locale-el \
+ ${PN}-locale-hr \
+ ${PN}-locale-lt \
+ ${PN}-locale-pl \
+ ${PN}-locale-ru \
+ ${PN}-locale-th \
"
RDEPENDS_${PN}-ptest_append_libc-glibc = "\
@@ -177,5 +181,7 @@
locale-base-fr-fr \
locale-base-es-es \
locale-base-en-gb \
+ locale-base-en-us \
locale-base-pl-pl \
+ locale-base-pl-pl.iso-8859-2 \
"
diff --git a/poky/meta/recipes-core/glib-networking/glib-networking_2.58.0.bb b/poky/meta/recipes-core/glib-networking/glib-networking_2.58.0.bb
deleted file mode 100644
index f3190e1..0000000
--- a/poky/meta/recipes-core/glib-networking/glib-networking_2.58.0.bb
+++ /dev/null
@@ -1,31 +0,0 @@
-SUMMARY = "GLib networking extensions"
-DESCRIPTION = "glib-networking contains the implementations of certain GLib networking features that cannot be implemented directly in GLib itself because of their dependencies."
-HOMEPAGE = "https://gitlab.gnome.org/GNOME/glib-networking/"
-BUGTRACKER = "http://bugzilla.gnome.org"
-
-LICENSE = "LGPLv2.1"
-LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c"
-
-SECTION = "libs"
-DEPENDS = "glib-2.0"
-
-SRC_URI[archive.md5sum] = "75b14b7e73a67753be9ce307751c661d"
-SRC_URI[archive.sha256sum] = "bdfa0255e031b8ee003cc283002536b77ee76450105f1dc6ab066b9bf4330068"
-
-PACKAGECONFIG ??= "gnutls"
-
-PACKAGECONFIG[gnutls] = "-Dgnutls=true,-Dgnutls=false,gnutls"
-PACKAGECONFIG[libproxy] = "-Dlibproxy_support=true,-Dlibproxy_support=false,libproxy"
-
-EXTRA_OEMESON = "-Dgnome_proxy_support=false"
-
-GNOMEBASEBUILDCLASS = "meson"
-inherit gnomebase gettext upstream-version-is-even gio-module-cache
-
-FILES_${PN} += "\
- ${libdir}/gio/modules/libgio*.so \
- ${datadir}/dbus-1/services/ \
- ${systemd_user_unitdir} \
- "
-FILES_${PN}-dev += "${libdir}/gio/modules/libgio*.la"
-FILES_${PN}-staticdev += "${libdir}/gio/modules/libgio*.a"
diff --git a/poky/meta/recipes-core/glib-networking/glib-networking_2.60.1.bb b/poky/meta/recipes-core/glib-networking/glib-networking_2.60.1.bb
new file mode 100644
index 0000000..09af229
--- /dev/null
+++ b/poky/meta/recipes-core/glib-networking/glib-networking_2.60.1.bb
@@ -0,0 +1,31 @@
+SUMMARY = "GLib networking extensions"
+DESCRIPTION = "glib-networking contains the implementations of certain GLib networking features that cannot be implemented directly in GLib itself because of their dependencies."
+HOMEPAGE = "https://gitlab.gnome.org/GNOME/glib-networking/"
+BUGTRACKER = "http://bugzilla.gnome.org"
+
+LICENSE = "LGPLv2.1"
+LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c"
+
+SECTION = "libs"
+DEPENDS = "glib-2.0"
+
+SRC_URI[archive.md5sum] = "83321ffc3c336894b8a5bc18db3fe58d"
+SRC_URI[archive.sha256sum] = "d71c6b2faa5ac29100314f08a1be020a2afd0291f025614c0af0d17b14435d92"
+
+PACKAGECONFIG ??= "gnutls"
+
+PACKAGECONFIG[gnutls] = "-Dgnutls=enabled,-Dgnutls=disabled,gnutls"
+PACKAGECONFIG[libproxy] = "-Dlibproxy=enabled,-Dlibproxy=disabled,libproxy"
+
+EXTRA_OEMESON = "-Dgnome_proxy=disabled"
+
+GNOMEBASEBUILDCLASS = "meson"
+inherit gnomebase gettext upstream-version-is-even gio-module-cache
+
+FILES_${PN} += "\
+ ${libdir}/gio/modules/libgio*.so \
+ ${datadir}/dbus-1/services/ \
+ ${systemd_user_unitdir} \
+ "
+FILES_${PN}-dev += "${libdir}/gio/modules/libgio*.la"
+FILES_${PN}-staticdev += "${libdir}/gio/modules/libgio*.a"
diff --git a/poky/meta/recipes-core/glibc/glibc_2.29.bb b/poky/meta/recipes-core/glibc/glibc_2.29.bb
index 9184c59..073d153 100644
--- a/poky/meta/recipes-core/glibc/glibc_2.29.bb
+++ b/poky/meta/recipes-core/glibc/glibc_2.29.bb
@@ -110,7 +110,7 @@
do_compile () {
# -Wl,-rpath-link <staging>/lib in LDFLAGS can cause breakage if another glibc is in staging
- unset LDFLAGS
+ LDFLAGS="-fuse-ld=bfd"
base_do_compile
echo "Adjust ldd script"
if [ -n "${RTLDLIST}" ]
diff --git a/poky/meta/recipes-core/images/build-appliance-image_15.0.0.bb b/poky/meta/recipes-core/images/build-appliance-image_15.0.0.bb
index a59334f..3302a86 100644
--- a/poky/meta/recipes-core/images/build-appliance-image_15.0.0.bb
+++ b/poky/meta/recipes-core/images/build-appliance-image_15.0.0.bb
@@ -22,7 +22,7 @@
inherit core-image module-base setuptools3
-SRCREV ?= "c96d8de352f242f70ff9c166508c3d0e50199874"
+SRCREV ?= "5c504dd014a1bd3e6b3fea528a11aca7dff4d931"
SRC_URI = "git://git.yoctoproject.org/poky \
file://Yocto_Build_Appliance.vmx \
file://Yocto_Build_Appliance.vmxf \
diff --git a/poky/meta/recipes-core/initrdscripts/files/init-live.sh b/poky/meta/recipes-core/initrdscripts/files/init-live.sh
old mode 100644
new mode 100755
index 65183d7..b20660b
--- a/poky/meta/recipes-core/initrdscripts/files/init-live.sh
+++ b/poky/meta/recipes-core/initrdscripts/files/init-live.sh
@@ -28,8 +28,7 @@
_UDEV_DAEMON=`udev_daemon`
early_setup() {
- mkdir -p /proc
- mkdir -p /sys
+ mkdir -p /proc /sys /run /var/run
mount -t proc proc /proc
mount -t sysfs sysfs /sys
mount -t devtmpfs none /dev
@@ -37,9 +36,6 @@
# support modular kernel
modprobe isofs 2> /dev/null
- mkdir -p /run
- mkdir -p /var/run
-
$_UDEV_DAEMON --daemon
udevadm trigger --action=add
}
diff --git a/poky/meta/recipes-core/libxcrypt/libxcrypt.bb b/poky/meta/recipes-core/libxcrypt/libxcrypt.bb
deleted file mode 100644
index 3b9af6d..0000000
--- a/poky/meta/recipes-core/libxcrypt/libxcrypt.bb
+++ /dev/null
@@ -1,30 +0,0 @@
-SUMMARY = "Extended cryptographic library (from glibc)"
-DESCRIPTION = "Forked code from glibc libary to extract only crypto part."
-HOMEPAGE = "https://github.com/besser82/libxcrypt"
-SECTION = "libs"
-LICENSE = "LGPLv2.1"
-LIC_FILES_CHKSUM ?= "file://LICENSING;md5=be275bc7f91642efe7709a8ae7a1433b \
- file://COPYING.LIB;md5=4fbd65380cdd255951079008b364516c \
-"
-
-inherit autotools pkgconfig
-
-PV = "4.4.2"
-# v4.4.2
-SRCREV ?= "cf6abf18083566ec1612af27982a5160c9e0f137"
-SRCBRANCH ?= "develop"
-
-SRC_URI = "git://github.com/besser82/libxcrypt.git;branch=${SRCBRANCH} \
- "
-
-PROVIDES = "virtual/crypt"
-
-FILES_${PN} = "${libdir}/libcrypt*.so.* ${libdir}/libcrypt-*.so ${libdir}/libowcrypt*.so.* ${libdir}/libowcrypt-*.so"
-
-S = "${WORKDIR}/git"
-
-BUILD_CPPFLAGS = "-I${STAGING_INCDIR_NATIVE} -std=gnu99"
-TARGET_CPPFLAGS = "-I${STAGING_DIR_TARGET}${includedir} -Wno-error=missing-attributes"
-CPPFLAGS_append_class-nativesdk = " -Wno-error=missing-attributes"
-
-BBCLASSEXTEND = "nativesdk"
diff --git a/poky/meta/recipes-core/libxcrypt/libxcrypt_4.4.4.bb b/poky/meta/recipes-core/libxcrypt/libxcrypt_4.4.4.bb
new file mode 100644
index 0000000..b44c07b
--- /dev/null
+++ b/poky/meta/recipes-core/libxcrypt/libxcrypt_4.4.4.bb
@@ -0,0 +1,32 @@
+SUMMARY = "Extended cryptographic library (from glibc)"
+DESCRIPTION = "Forked code from glibc libary to extract only crypto part."
+HOMEPAGE = "https://github.com/besser82/libxcrypt"
+SECTION = "libs"
+LICENSE = "LGPLv2.1"
+LIC_FILES_CHKSUM ?= "file://LICENSING;md5=be275bc7f91642efe7709a8ae7a1433b \
+ file://COPYING.LIB;md5=4fbd65380cdd255951079008b364516c \
+"
+
+inherit autotools pkgconfig
+
+PV = "4.4.4"
+
+SRC_URI = "git://github.com/besser82/libxcrypt.git;branch=${SRCBRANCH}"
+SRCREV = "3b251d4e1af66aa7697c4ac96c689f996fa90c32"
+SRCBRANCH ?= "develop"
+
+PROVIDES = "virtual/crypt"
+
+FILES_${PN} = "${libdir}/libcrypt*.so.* \
+ ${libdir}/libcrypt-*.so \
+ ${libdir}/libowcrypt*.so.* \
+ ${libdir}/libowcrypt-*.so \
+"
+
+S = "${WORKDIR}/git"
+
+BUILD_CPPFLAGS = "-I${STAGING_INCDIR_NATIVE}"
+TARGET_CPPFLAGS = "-I${STAGING_DIR_TARGET}${includedir} -Wno-error=missing-attributes"
+CPPFLAGS_append_class-nativesdk = " -Wno-error=missing-attributes"
+
+BBCLASSEXTEND = "nativesdk"
diff --git a/poky/meta/recipes-core/libxml/libxml2/0001-Fix-infinite-loop-in-LZMA-decompression.patch b/poky/meta/recipes-core/libxml/libxml2/0001-Fix-infinite-loop-in-LZMA-decompression.patch
deleted file mode 100644
index 16c2295..0000000
--- a/poky/meta/recipes-core/libxml/libxml2/0001-Fix-infinite-loop-in-LZMA-decompression.patch
+++ /dev/null
@@ -1,55 +0,0 @@
-From 28a9dc642ffd759df1e48be247a114f440a6c16e Mon Sep 17 00:00:00 2001
-From: Nick Wellnhofer <wellnhofer@aevum.de>
-Date: Mon, 30 Jul 2018 13:14:11 +0200
-Subject: [PATCH] Fix infinite loop in LZMA decompression
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Check the liblzma error code more thoroughly to avoid infinite loops.
-
-Closes: https://gitlab.gnome.org/GNOME/libxml2/issues/13
-Closes: https://bugzilla.gnome.org/show_bug.cgi?id=794914
-
-This is CVE-2018-9251 and CVE-2018-14567.
-
-Thanks to Dongliang Mu and Simon Wörner for the reports.
-
-CVE: CVE-2018-9251
-CVE: CVE-2018-14567
-Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/libxml2/commit/2240fbf5912054af025fb6e01e26375100275e74]
-Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
----
- xzlib.c | 9 +++++++++
- 1 file changed, 9 insertions(+)
-
-diff --git a/xzlib.c b/xzlib.c
-index a839169..0ba88cf 100644
---- a/xzlib.c
-+++ b/xzlib.c
-@@ -562,6 +562,10 @@ xz_decomp(xz_statep state)
- "internal error: inflate stream corrupt");
- return -1;
- }
-+ /*
-+ * FIXME: Remapping a couple of error codes and falling through
-+ * to the LZMA error handling looks fragile.
-+ */
- if (ret == Z_MEM_ERROR)
- ret = LZMA_MEM_ERROR;
- if (ret == Z_DATA_ERROR)
-@@ -587,6 +591,11 @@ xz_decomp(xz_statep state)
- xz_error(state, LZMA_PROG_ERROR, "compression error");
- return -1;
- }
-+ if ((state->how != GZIP) &&
-+ (ret != LZMA_OK) && (ret != LZMA_STREAM_END)) {
-+ xz_error(state, ret, "lzma error");
-+ return -1;
-+ }
- } while (strm->avail_out && ret != LZMA_STREAM_END);
-
- /* update available output and crc check value */
---
-2.7.4
-
diff --git a/poky/meta/recipes-core/libxml/libxml2/fix-CVE-2017-8872.patch b/poky/meta/recipes-core/libxml/libxml2/fix-CVE-2017-8872.patch
deleted file mode 100644
index 42a4b0e..0000000
--- a/poky/meta/recipes-core/libxml/libxml2/fix-CVE-2017-8872.patch
+++ /dev/null
@@ -1,65 +0,0 @@
-Upstream-Status: Backport
-CVE: CVE-2017-8872
-Signed-off-by: Ross Burton <ross.burton@intel.com>
-
-From 123234f2cfcd9e9b9f83047eee1dc17b4c3f4407 Mon Sep 17 00:00:00 2001
-From: Nick Wellnhofer <wellnhofer@aevum.de>
-Date: Tue, 11 Sep 2018 14:52:07 +0200
-Subject: [PATCH] Free input buffer in xmlHaltParser
-
-This avoids miscalculation of available bytes.
-
-Thanks to Yunho Kim for the report.
-
-Closes: #26
----
- parser.c | 5 +++++
- result/errors/759573.xml.err | 17 +++++++----------
- 2 files changed, 12 insertions(+), 10 deletions(-)
-
-diff --git a/parser.c b/parser.c
-index ca9fde2c..5813a664 100644
---- a/parser.c
-+++ b/parser.c
-@@ -12462,7 +12462,12 @@ xmlHaltParser(xmlParserCtxtPtr ctxt) {
- ctxt->input->free((xmlChar *) ctxt->input->base);
- ctxt->input->free = NULL;
- }
-+ if (ctxt->input->buf != NULL) {
-+ xmlFreeParserInputBuffer(ctxt->input->buf);
-+ ctxt->input->buf = NULL;
-+ }
- ctxt->input->cur = BAD_CAST"";
-+ ctxt->input->length = 0;
- ctxt->input->base = ctxt->input->cur;
- ctxt->input->end = ctxt->input->cur;
- }
-diff --git a/result/errors/759573.xml.err b/result/errors/759573.xml.err
-index 554039f6..38ef5c40 100644
---- a/result/errors/759573.xml.err
-+++ b/result/errors/759573.xml.err
-@@ -21,14 +21,11 @@ Entity: line 1:
- ^
- ./test/errors/759573.xml:1: parser error : internal error: xmlParseInternalSubset: error detected in Markup declaration
-
--<?h?><!DOCTYPEt[<!ELEMENT t (A)><!ENTITY % xx '%<![INCLUDE[000%ஸ00
-- ^
-+
-+^
- ./test/errors/759573.xml:1: parser error : DOCTYPE improperly terminated
--<?h?><!DOCTYPEt[<!ELEMENT t (A)><!ENTITY % xx '%<![INCLUDE[000%ஸ00
-- ^
--./test/errors/759573.xml:1: parser error : StartTag: invalid element name
--<?h?><!DOCTYPEt[<!ELEMENT t (A)><!ENTITY % xx '%<![INCLUDE[000%ஸ00
-- ^
--./test/errors/759573.xml:1: parser error : Extra content at the end of the document
--<?h?><!DOCTYPEt[<!ELEMENT t (A)><!ENTITY % xx '%<![INCLUDE[000%ஸ00
-- ^
-+
-+^
-+./test/errors/759573.xml:1: parser error : Start tag expected, '<' not found
-+
-+^
---
-2.11.0
-
diff --git a/poky/meta/recipes-core/libxml/libxml2/fix-CVE-2018-14404.patch b/poky/meta/recipes-core/libxml/libxml2/fix-CVE-2018-14404.patch
deleted file mode 100644
index 21668e2..0000000
--- a/poky/meta/recipes-core/libxml/libxml2/fix-CVE-2018-14404.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-libxml2-2.9.8: Fix CVE-2018-14404
-
-[No upstream tracking] -- https://gitlab.gnome.org/GNOME/libxml2/issues/5
- -- https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=901817
- -- https://bugzilla.redhat.com/show_bug.cgi?id=1595985
-
-xpath: Fix nullptr deref with XPath logic ops
-
-If the XPath stack is corrupted, for example by a misbehaving extension
-function, the "and" and "or" XPath operators could dereference NULL
-pointers. Check that the XPath stack isn't empty and optimize the
-logic operators slightly.
-
-Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/libxml2/commit/a436374994c47b12d5de1b8b1d191a098fa23594]
-CVE: CVE-2018-14404
-Signed-off-by: Andrej Valek <andrej.valek@siemens.com>
-
-diff --git a/xpath.c b/xpath.c
-index f440696..75cac5c 100644
---- a/xpath.c
-+++ b/xpath.c
-@@ -13297,9 +13297,8 @@ xmlXPathCompOpEval(xmlXPathParserContextPtr ctxt, xmlXPathStepOpPtr op)
- return(0);
- }
- xmlXPathBooleanFunction(ctxt, 1);
-- arg1 = valuePop(ctxt);
-- arg1->boolval &= arg2->boolval;
-- valuePush(ctxt, arg1);
-+ if (ctxt->value != NULL)
-+ ctxt->value->boolval &= arg2->boolval;
- xmlXPathReleaseObject(ctxt->context, arg2);
- return (total);
- case XPATH_OP_OR:
-@@ -13323,9 +13322,8 @@ xmlXPathCompOpEval(xmlXPathParserContextPtr ctxt, xmlXPathStepOpPtr op)
- return(0);
- }
- xmlXPathBooleanFunction(ctxt, 1);
-- arg1 = valuePop(ctxt);
-- arg1->boolval |= arg2->boolval;
-- valuePush(ctxt, arg1);
-+ if (ctxt->value != NULL)
-+ ctxt->value->boolval |= arg2->boolval;
- xmlXPathReleaseObject(ctxt->context, arg2);
- return (total);
- case XPATH_OP_EQUAL:
diff --git a/poky/meta/recipes-core/libxml/libxml2/fix-execution-of-ptests.patch b/poky/meta/recipes-core/libxml/libxml2/fix-execution-of-ptests.patch
index 51a9e19..ad719d4 100644
--- a/poky/meta/recipes-core/libxml/libxml2/fix-execution-of-ptests.patch
+++ b/poky/meta/recipes-core/libxml/libxml2/fix-execution-of-ptests.patch
@@ -1,14 +1,23 @@
-Make sure that Makefile doesn't try to compile these tests again
-on the target where the source dependencies won't be available.
+From 395c0f53ec226aaabedb166e6b3a7f8590b95a5f Mon Sep 17 00:00:00 2001
+From: Hongxu Jia <hongxu.jia@windriver.com>
+Date: Sat, 11 May 2019 20:39:15 +0800
+Subject: [PATCH] Make sure that Makefile doesn't try to compile these tests
+ again on the target where the source dependencies won't be available.
Upstream-Status: Inappropriate [cross-compile specific]
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
-Index: libxml2-2.9.7/Makefile.am
-===================================================================
---- libxml2-2.9.7.orig/Makefile.am
-+++ libxml2-2.9.7/Makefile.am
+Rebase to 2.9.9
+Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
+---
+ Makefile.am | 3 +--
+ 1 file changed, 1 insertion(+), 2 deletions(-)
+
+diff --git a/Makefile.am b/Makefile.am
+index 8f4e43d..5edb930 100644
+--- a/Makefile.am
++++ b/Makefile.am
@@ -211,8 +211,7 @@ install-ptest:
sed -i -e 's|^Makefile:|_Makefile:|' $(DESTDIR)/Makefile
$(MAKE) -C python install-ptest
@@ -19,3 +28,6 @@
[ -d test ] || $(LN_S) $(srcdir)/test .
[ -d result ] || $(LN_S) $(srcdir)/result .
$(CHECKER) ./runtest$(EXEEXT) && \
+--
+2.7.4
+
diff --git a/poky/meta/recipes-core/libxml/libxml2/libxml-64bit.patch b/poky/meta/recipes-core/libxml/libxml2/libxml-64bit.patch
index 1147017..fd8e469 100644
--- a/poky/meta/recipes-core/libxml/libxml2/libxml-64bit.patch
+++ b/poky/meta/recipes-core/libxml/libxml2/libxml-64bit.patch
@@ -1,14 +1,19 @@
-Upstream-Status: Backport [from debian: bugs.debian.org/439843]
+From 056b14345b1abd76a761ab14538f1bc21302781a Mon Sep 17 00:00:00 2001
+From: Hongxu Jia <hongxu.jia@windriver.com>
+Date: Sat, 11 May 2019 20:26:51 +0800
+Subject: [PATCH] libxml 64bit
+Upstream-Status: Backport [from debian: bugs.debian.org/439843]
+Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
---
- libxml.h | 3 +++
+ libxml.h | 3 +++
1 file changed, 3 insertions(+)
---- libxml2-2.6.29.orig/libxml.h
-+++ libxml2-2.6.29/libxml.h
-@@ -11,10 +11,13 @@
-
- #ifndef NO_LARGEFILE_SOURCE
+diff --git a/libxml.h b/libxml.h
+index 64e30f7..4e80d90 100644
+--- a/libxml.h
++++ b/libxml.h
+@@ -15,6 +15,9 @@
#ifndef _LARGEFILE_SOURCE
#define _LARGEFILE_SOURCE
#endif
@@ -18,5 +23,6 @@
#ifndef _FILE_OFFSET_BITS
#define _FILE_OFFSET_BITS 64
#endif
- #endif
-
+--
+2.7.4
+
diff --git a/poky/meta/recipes-core/libxml/libxml2/libxml-m4-use-pkgconfig.patch b/poky/meta/recipes-core/libxml/libxml2/libxml-m4-use-pkgconfig.patch
index d9ed151..e6998f6 100644
--- a/poky/meta/recipes-core/libxml/libxml2/libxml-m4-use-pkgconfig.patch
+++ b/poky/meta/recipes-core/libxml/libxml2/libxml-m4-use-pkgconfig.patch
@@ -1,11 +1,20 @@
-AM_PATH_XML2 uses xml-config which we disable through
+From 43edc9a445ed66cceb7533eadeef242940b4592c Mon Sep 17 00:00:00 2001
+From: Hongxu Jia <hongxu.jia@windriver.com>
+Date: Sat, 11 May 2019 20:37:12 +0800
+Subject: [PATCH] AM_PATH_XML2 uses xml-config which we disable through
binconfig-disabled.bbclass, so port it to use pkg-config instead.
Upstream-Status: Pending
Signed-off-by: Ross Burton <ross.burton@intel.com>
+Rebase to 2.9.9
+Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
+---
+ libxml.m4 | 186 ++------------------------------------------------------------
+ 1 file changed, 5 insertions(+), 181 deletions(-)
+
diff --git a/libxml.m4 b/libxml.m4
-index 68cd824..5fa0a9b 100644
+index 2d7a6f5..1c53585 100644
--- a/libxml.m4
+++ b/libxml.m4
@@ -1,188 +1,12 @@
@@ -202,3 +211,6 @@
- AC_SUBST(XML_LIBS)
- rm -f conf.xmltest
])
+--
+2.7.4
+
diff --git a/poky/meta/recipes-core/libxml/libxml2/python-sitepackages-dir.patch b/poky/meta/recipes-core/libxml/libxml2/python-sitepackages-dir.patch
index e83c832..956ff3f 100644
--- a/poky/meta/recipes-core/libxml/libxml2/python-sitepackages-dir.patch
+++ b/poky/meta/recipes-core/libxml/libxml2/python-sitepackages-dir.patch
@@ -1,4 +1,7 @@
-Allow us to pass in PYTHON_SITE_PACKAGES
+From b038c3452667ed17ddb0e791cd7bdc7f8774ac29 Mon Sep 17 00:00:00 2001
+From: Hongxu Jia <hongxu.jia@windriver.com>
+Date: Sat, 11 May 2019 20:35:20 +0800
+Subject: [PATCH] Allow us to pass in PYTHON_SITE_PACKAGES
The python binary used when building for nativesdk doesn't give us the
correct path here so we need to be able to specify it ourselves.
@@ -6,16 +9,18 @@
Upstream-Status: Inappropriate [config]
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
-Rebase to 2.9.2
+Rebase to 2.9.9
+
Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
---
configure.ac | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/configure.ac b/configure.ac
+index ca911f3..3bbd654 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -813,7 +813,8 @@ dnl
+@@ -808,7 +808,8 @@ dnl
PYTHON_VERSION=
PYTHON_INCLUDES=
@@ -26,5 +31,5 @@
pythondir=
if test "$with_python" != "no" ; then
--
-1.9.1
+2.7.4
diff --git a/poky/meta/recipes-core/libxml/libxml2/runtest.patch b/poky/meta/recipes-core/libxml/libxml2/runtest.patch
index 544dc05..0dbb353 100644
--- a/poky/meta/recipes-core/libxml/libxml2/runtest.patch
+++ b/poky/meta/recipes-core/libxml/libxml2/runtest.patch
@@ -1,14 +1,28 @@
-Add 'install-ptest' rule.
-Print a standard result line for each test.
+Add 'install-ptest' rule. Print a standard result line for
+each test.
Signed-off-by: Mihaela Sendrea <mihaela.sendrea@enea.com>
Signed-off-by: Andrej Valek <andrej.valek@siemens.com>
Upstream-Status: Backport
-diff -uNr a/Makefile.am b/Makefile.am
---- a/Makefile.am 2017-12-02 09:58:10.000000000 +0100
-+++ b/Makefile.am 2018-03-20 08:27:34.360505864 +0100
-@@ -202,6 +202,15 @@
+Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
+---
+ Makefile.am | 9 ++++
+ runsuite.c | 1 +
+ runtest.c | 2 +
+ runxmlconf.c | 1 +
+ testapi.c | 122 ++++++++++++++++++++++++++++++---------------
+ testchar.c | 156 +++++++++++++++++++++++++++++++++++++++++-----------------
+ testdict.c | 1 +
+ testlimits.c | 1 +
+ testrecurse.c | 2 +
+ 9 files changed, 210 insertions(+), 85 deletions(-)
+
+diff --git a/Makefile.am b/Makefile.am
+index 9c630be..7cfd04b 100644
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -202,6 +202,15 @@ runxmlconf_LDADD= $(LDADDS)
#testOOM_DEPENDENCIES = $(DEPS)
#testOOM_LDADD= $(LDADDS)
@@ -24,10 +38,11 @@
runtests: runtest$(EXEEXT) testrecurse$(EXEEXT) testapi$(EXEEXT) \
testchar$(EXEEXT) testdict$(EXEEXT) runxmlconf$(EXEEXT)
[ -d test ] || $(LN_S) $(srcdir)/test .
-diff -uNr a/runsuite.c b/runsuite.c
---- a/runsuite.c 2016-06-07 12:04:14.000000000 +0200
-+++ b/runsuite.c 2018-03-20 08:27:57.478817247 +0100
-@@ -1162,6 +1162,7 @@
+diff --git a/runsuite.c b/runsuite.c
+index aaab13e..9ba2c5d 100644
+--- a/runsuite.c
++++ b/runsuite.c
+@@ -1162,6 +1162,7 @@ main(int argc ATTRIBUTE_UNUSED, char **argv ATTRIBUTE_UNUSED) {
if (logfile != NULL)
fclose(logfile);
@@ -35,20 +50,19 @@
return(ret);
}
#else /* !SCHEMAS */
-diff -uNr a/runtest.c b/runtest.c
---- a/runtest.c 2017-11-13 22:00:17.000000000 +0100
-+++ b/runtest.c 2018-03-20 08:28:50.859047551 +0100
-@@ -4496,7 +4496,8 @@
- }
-
+diff --git a/runtest.c b/runtest.c
+index addda5c..8ba5d59 100644
+--- a/runtest.c
++++ b/runtest.c
+@@ -4501,6 +4501,7 @@ launchTests(testDescPtr tst) {
xmlCharEncCloseFunc(ebcdicHandler);
--
-+
+ xmlCharEncCloseFunc(eucJpHandler);
+
+ printf("%s: %s\n", (err == 0) ? "PASS" : "FAIL", tst->desc);
return(err);
}
-@@ -4573,6 +4574,7 @@
+@@ -4577,6 +4578,7 @@ main(int argc ATTRIBUTE_UNUSED, char **argv ATTRIBUTE_UNUSED) {
xmlCleanupParser();
xmlMemoryDump();
@@ -56,10 +70,11 @@
return(ret);
}
-diff -uNr a/runxmlconf.c b/runxmlconf.c
---- a/runxmlconf.c 2016-06-07 12:04:14.000000000 +0200
-+++ b/runxmlconf.c 2018-03-20 08:29:17.944862893 +0100
-@@ -595,6 +595,7 @@
+diff --git a/runxmlconf.c b/runxmlconf.c
+index cef20f4..4f291fb 100644
+--- a/runxmlconf.c
++++ b/runxmlconf.c
+@@ -595,6 +595,7 @@ main(int argc ATTRIBUTE_UNUSED, char **argv ATTRIBUTE_UNUSED) {
if (logfile != NULL)
fclose(logfile);
@@ -67,15 +82,15 @@
return(ret);
}
-diff -uNr a/testapi.c b/testapi.c
---- a/testapi.c 2018-01-25 07:39:15.000000000 +0100
-+++ b/testapi.c 2018-03-20 09:08:35.323980145 +0100
-@@ -1246,49 +1246,91 @@
+diff --git a/testapi.c b/testapi.c
+index 4a751e2..7ccc066 100644
+--- a/testapi.c
++++ b/testapi.c
+@@ -1246,49 +1246,91 @@ static int
testlibxml2(void)
{
int test_ret = 0;
-+ int ret = 0;
-
+-
- test_ret += test_HTMLparser();
- test_ret += test_HTMLtree();
- test_ret += test_SAX2();
@@ -115,6 +130,8 @@
- test_ret += test_xpath();
- test_ret += test_xpathInternals();
- test_ret += test_xpointer();
++ int ret = 0;
++
+ test_ret += (ret = test_HTMLparser());
+ printf("%s: HTMLparser\n", (ret == 0) ? "PASS" : "FAIL");
+ test_ret += (ret = test_HTMLtree());
@@ -201,20 +218,11 @@
return(test_ret);
}
-diff -uNr a/testdict.c b/testdict.c
---- a/testdict.c 2016-06-07 12:04:14.000000000 +0200
-+++ b/testdict.c 2018-03-20 08:59:16.864275812 +0100
-@@ -440,5 +440,6 @@
- clean_strings();
- xmlCleanupParser();
- xmlMemoryDump();
-+ printf("%s: testdict\n\n", (ret == 0) ? "PASS" : "FAIL");
- return(ret);
- }
-diff -uNr a/testchar.c b/testchar.c
---- a/testchar.c 2016-06-07 12:04:14.000000000 +0200
-+++ b/testchar.c 2018-03-20 09:11:20.383573912 +0100
-@@ -23,7 +23,7 @@
+diff --git a/testchar.c b/testchar.c
+index 0d08792..f555d3b 100644
+--- a/testchar.c
++++ b/testchar.c
+@@ -23,7 +23,7 @@ static void errorHandler(void *unused, xmlErrorPtr err) {
char document1[100] = "<doc>XXXX</doc>";
char document2[100] = "<doc foo='XXXX'/>";
@@ -223,7 +231,7 @@
int len, char *data, int forbid1, int forbid2) {
int i;
xmlDocPtr res;
-@@ -37,33 +37,41 @@
+@@ -37,33 +37,41 @@ static void testDocumentRangeByte1(xmlParserCtxtPtr ctxt, char *document,
res = xmlReadMemory(document, len, "test", NULL, 0);
if ((i == forbid1) || (i == forbid2)) {
@@ -269,7 +277,7 @@
int len, char *data) {
int i, j;
xmlDocPtr res;
-@@ -80,10 +88,12 @@
+@@ -80,10 +88,12 @@ static void testDocumentRangeByte2(xmlParserCtxtPtr ctxt, char *document,
/* if first bit of first char is set, then second bit must too */
if ((i & 0x80) && ((i & 0x40) == 0)) {
@@ -283,7 +291,7 @@
}
/*
-@@ -91,10 +101,12 @@
+@@ -91,10 +101,12 @@ static void testDocumentRangeByte2(xmlParserCtxtPtr ctxt, char *document,
* bits must be 10
*/
else if ((i & 0x80) && ((j & 0xC0) != 0x80)) {
@@ -297,7 +305,7 @@
}
/*
-@@ -102,10 +114,12 @@
+@@ -102,10 +114,12 @@ static void testDocumentRangeByte2(xmlParserCtxtPtr ctxt, char *document,
* than 0x80, i.e. one of bits 5 to 1 of i must be set
*/
else if ((i & 0x80) && ((i & 0x1E) == 0)) {
@@ -311,7 +319,7 @@
}
/*
-@@ -113,10 +127,12 @@
+@@ -113,10 +127,12 @@ static void testDocumentRangeByte2(xmlParserCtxtPtr ctxt, char *document,
* at least 3 bytes, but we give only 2 !
*/
else if ((i & 0xE0) == 0xE0) {
@@ -325,7 +333,7 @@
}
/*
-@@ -125,11 +141,13 @@
+@@ -125,11 +141,13 @@ static void testDocumentRangeByte2(xmlParserCtxtPtr ctxt, char *document,
else if ((lastError != 0) || (res == NULL)) {
fprintf(stderr,
"Failed to parse document for Bytes 0x%02X 0x%02X\n", i, j);
@@ -339,7 +347,7 @@
}
/**
-@@ -141,9 +159,10 @@
+@@ -141,9 +159,10 @@ static void testDocumentRangeByte2(xmlParserCtxtPtr ctxt, char *document,
* CDATA in text or in attribute values.
*/
@@ -351,7 +359,7 @@
/*
* Set up a parsing context using the first document as
-@@ -152,7 +171,7 @@
+@@ -152,7 +171,7 @@ static void testDocumentRanges(void) {
ctxt = xmlNewParserCtxt();
if (ctxt == NULL) {
fprintf(stderr, "Failed to allocate parser context\n");
@@ -360,7 +368,7 @@
}
printf("testing 1 byte char in document: 1");
-@@ -163,7 +182,7 @@
+@@ -163,7 +182,7 @@ static void testDocumentRanges(void) {
data[2] = ' ';
data[3] = ' ';
/* test 1 byte injection at beginning of area */
@@ -369,7 +377,7 @@
data, -1, -1);
printf(" 2");
fflush(stdout);
-@@ -172,7 +191,7 @@
+@@ -172,7 +191,7 @@ static void testDocumentRanges(void) {
data[2] = ' ';
data[3] = ' ';
/* test 1 byte injection at end of area */
@@ -378,7 +386,7 @@
data + 3, -1, -1);
printf(" 3");
-@@ -183,7 +202,7 @@
+@@ -183,7 +202,7 @@ static void testDocumentRanges(void) {
data[2] = ' ';
data[3] = ' ';
/* test 1 byte injection at beginning of area */
@@ -387,7 +395,7 @@
data, '\'', -1);
printf(" 4");
fflush(stdout);
-@@ -192,7 +211,7 @@
+@@ -192,7 +211,7 @@ static void testDocumentRanges(void) {
data[2] = ' ';
data[3] = ' ';
/* test 1 byte injection at end of area */
@@ -396,7 +404,7 @@
data + 3, '\'', -1);
printf(" done\n");
-@@ -204,7 +223,7 @@
+@@ -204,7 +223,7 @@ static void testDocumentRanges(void) {
data[2] = ' ';
data[3] = ' ';
/* test 2 byte injection at beginning of area */
@@ -405,7 +413,7 @@
data);
printf(" 2");
fflush(stdout);
-@@ -213,7 +232,7 @@
+@@ -213,7 +232,7 @@ static void testDocumentRanges(void) {
data[2] = ' ';
data[3] = ' ';
/* test 2 byte injection at end of area */
@@ -414,7 +422,7 @@
data + 2);
printf(" 3");
-@@ -224,7 +243,7 @@
+@@ -224,7 +243,7 @@ static void testDocumentRanges(void) {
data[2] = ' ';
data[3] = ' ';
/* test 2 byte injection at beginning of area */
@@ -423,7 +431,7 @@
data);
printf(" 4");
fflush(stdout);
-@@ -233,14 +252,15 @@
+@@ -233,14 +252,15 @@ static void testDocumentRanges(void) {
data[2] = ' ';
data[3] = ' ';
/* test 2 byte injection at end of area */
@@ -441,7 +449,7 @@
int i = 0;
int len, c;
-@@ -255,19 +275,25 @@
+@@ -255,19 +275,25 @@ static void testCharRangeByte1(xmlParserCtxtPtr ctxt, char *data) {
c = xmlCurrentChar(ctxt, &len);
if ((i == 0) || (i >= 0x80)) {
/* we must see an error there */
@@ -470,7 +478,7 @@
int i, j;
int len, c;
-@@ -284,10 +310,12 @@
+@@ -284,10 +310,12 @@ static void testCharRangeByte2(xmlParserCtxtPtr ctxt, char *data) {
/* if first bit of first char is set, then second bit must too */
if ((i & 0x80) && ((i & 0x40) == 0)) {
@@ -484,7 +492,7 @@
}
/*
-@@ -295,10 +323,12 @@
+@@ -295,10 +323,12 @@ static void testCharRangeByte2(xmlParserCtxtPtr ctxt, char *data) {
* bits must be 10
*/
else if ((i & 0x80) && ((j & 0xC0) != 0x80)) {
@@ -498,7 +506,7 @@
}
/*
-@@ -306,10 +336,12 @@
+@@ -306,10 +336,12 @@ static void testCharRangeByte2(xmlParserCtxtPtr ctxt, char *data) {
* than 0x80, i.e. one of bits 5 to 1 of i must be set
*/
else if ((i & 0x80) && ((i & 0x1E) == 0)) {
@@ -512,7 +520,7 @@
}
/*
-@@ -317,10 +349,12 @@
+@@ -317,10 +349,12 @@ static void testCharRangeByte2(xmlParserCtxtPtr ctxt, char *data) {
* at least 3 bytes, but we give only 2 !
*/
else if ((i & 0xE0) == 0xE0) {
@@ -526,7 +534,7 @@
}
/*
-@@ -329,6 +363,7 @@
+@@ -329,6 +363,7 @@ static void testCharRangeByte2(xmlParserCtxtPtr ctxt, char *data) {
else if ((lastError != 0) || (len != 2)) {
fprintf(stderr,
"Failed to parse char for Bytes 0x%02X 0x%02X\n", i, j);
@@ -534,7 +542,7 @@
}
/*
-@@ -338,12 +373,14 @@
+@@ -338,12 +373,14 @@ static void testCharRangeByte2(xmlParserCtxtPtr ctxt, char *data) {
fprintf(stderr,
"Failed to parse char for Bytes 0x%02X 0x%02X: expect %d got %d\n",
i, j, ((j & 0x3F) + ((i & 0x1F) << 6)), c);
@@ -550,7 +558,7 @@
int i, j, k, K;
int len, c;
unsigned char lows[6] = {0, 0x80, 0x81, 0xC1, 0xFF, 0xBF};
-@@ -368,20 +405,24 @@
+@@ -368,20 +405,24 @@ static void testCharRangeByte3(xmlParserCtxtPtr ctxt, char *data) {
* at least 4 bytes, but we give only 3 !
*/
if ((i & 0xF0) == 0xF0) {
@@ -577,7 +585,7 @@
}
/*
-@@ -390,10 +431,12 @@
+@@ -390,10 +431,12 @@ static void testCharRangeByte3(xmlParserCtxtPtr ctxt, char *data) {
* the 6th byte of data[1] must be set
*/
else if (((i & 0xF) == 0) && ((j & 0x20) == 0)) {
@@ -591,7 +599,7 @@
}
/*
-@@ -401,10 +444,12 @@
+@@ -401,10 +444,12 @@ static void testCharRangeByte3(xmlParserCtxtPtr ctxt, char *data) {
*/
else if (((value > 0xD7FF) && (value <0xE000)) ||
((value > 0xFFFD) && (value <0x10000))) {
@@ -605,7 +613,7 @@
}
/*
-@@ -414,6 +459,7 @@
+@@ -414,6 +459,7 @@ static void testCharRangeByte3(xmlParserCtxtPtr ctxt, char *data) {
fprintf(stderr,
"Failed to parse char for Bytes 0x%02X 0x%02X 0x%02X\n",
i, j, K);
@@ -613,7 +621,7 @@
}
/*
-@@ -423,13 +469,15 @@
+@@ -423,13 +469,15 @@ static void testCharRangeByte3(xmlParserCtxtPtr ctxt, char *data) {
fprintf(stderr,
"Failed to parse char for Bytes 0x%02X 0x%02X 0x%02X: expect %d got %d\n",
i, j, data[2], value, c);
@@ -630,7 +638,7 @@
int i, j, k, K, l, L;
int len, c;
unsigned char lows[6] = {0, 0x80, 0x81, 0xC1, 0xFF, 0xBF};
-@@ -458,10 +506,12 @@
+@@ -458,10 +506,12 @@ static void testCharRangeByte4(xmlParserCtxtPtr ctxt, char *data) {
* at least 5 bytes, but we give only 4 !
*/
if ((i & 0xF8) == 0xF8) {
@@ -644,7 +652,7 @@
}
/*
-@@ -469,10 +519,12 @@
+@@ -469,10 +519,12 @@ static void testCharRangeByte4(xmlParserCtxtPtr ctxt, char *data) {
*/
else if (((j & 0xC0) != 0x80) || ((K & 0xC0) != 0x80) ||
((L & 0xC0) != 0x80)) {
@@ -658,7 +666,7 @@
}
/*
-@@ -481,10 +533,12 @@
+@@ -481,10 +533,12 @@ static void testCharRangeByte4(xmlParserCtxtPtr ctxt, char *data) {
* the 6 or 5th byte of j must be set
*/
else if (((i & 0x7) == 0) && ((j & 0x30) == 0)) {
@@ -672,7 +680,7 @@
}
/*
-@@ -493,10 +547,12 @@
+@@ -493,10 +547,12 @@ static void testCharRangeByte4(xmlParserCtxtPtr ctxt, char *data) {
else if (((value > 0xD7FF) && (value <0xE000)) ||
((value > 0xFFFD) && (value <0x10000)) ||
(value > 0x10FFFF)) {
@@ -686,7 +694,7 @@
}
/*
-@@ -506,6 +562,7 @@
+@@ -506,6 +562,7 @@ static void testCharRangeByte4(xmlParserCtxtPtr ctxt, char *data) {
fprintf(stderr,
"Failed to parse char for Bytes 0x%02X 0x%02X 0x%02X\n",
i, j, K);
@@ -694,7 +702,7 @@
}
/*
-@@ -515,11 +572,13 @@
+@@ -515,11 +572,13 @@ static void testCharRangeByte4(xmlParserCtxtPtr ctxt, char *data) {
fprintf(stderr,
"Failed to parse char for Bytes 0x%02X 0x%02X 0x%02X: expect %d got %d\n",
i, j, data[2], value, c);
@@ -708,7 +716,7 @@
}
/**
-@@ -530,11 +589,12 @@
+@@ -530,11 +589,12 @@ static void testCharRangeByte4(xmlParserCtxtPtr ctxt, char *data) {
* cover the full range of UTF-8 chars accepted by XML-1.0
*/
@@ -722,7 +730,7 @@
memset(data, 0, 5);
-@@ -545,17 +605,19 @@
+@@ -545,17 +605,19 @@ static void testCharRanges(void) {
ctxt = xmlNewParserCtxt();
if (ctxt == NULL) {
fprintf(stderr, "Failed to allocate parser context\n");
@@ -743,7 +751,7 @@
goto error;
}
input->filename = NULL;
-@@ -567,25 +629,28 @@
+@@ -567,25 +629,28 @@ static void testCharRanges(void) {
printf("testing char range: 1");
fflush(stdout);
@@ -776,7 +784,7 @@
/*
* this initialize the library and check potential ABI mismatches
* between the version it was compiled for and the actual shared
-@@ -602,8 +667,9 @@
+@@ -602,8 +667,9 @@ int main(void) {
/*
* Run the tests
*/
@@ -788,20 +796,33 @@
/*
* Cleanup function for the XML library.
-diff -uNr a/testlimits.c b/testlimits.c
---- a/testlimits.c 2016-11-07 09:41:40.000000000 +0100
-+++ b/testlimits.c 2018-03-20 08:59:38.965581280 +0100
-@@ -1634,5 +1634,6 @@
+diff --git a/testdict.c b/testdict.c
+index 40bebd0..114b934 100644
+--- a/testdict.c
++++ b/testdict.c
+@@ -440,5 +440,6 @@ int main(void)
+ clean_strings();
+ xmlCleanupParser();
+ xmlMemoryDump();
++ printf("%s: testdict\n\n", (ret == 0) ? "PASS" : "FAIL");
+ return(ret);
+ }
+diff --git a/testlimits.c b/testlimits.c
+index 68c94db..1584434 100644
+--- a/testlimits.c
++++ b/testlimits.c
+@@ -1634,5 +1634,6 @@ main(int argc ATTRIBUTE_UNUSED, char **argv ATTRIBUTE_UNUSED) {
xmlCleanupParser();
xmlMemoryDump();
+ printf("%s: testlimits\n", (ret == 0) ? "PASS" : "FAIL");
return(ret);
}
-diff -uNr a/testrecurse.c b/testrecurse.c
---- a/testrecurse.c 2017-10-26 09:54:40.000000000 +0200
-+++ b/testrecurse.c 2018-03-20 09:00:46.781628749 +0100
-@@ -892,6 +892,7 @@
+diff --git a/testrecurse.c b/testrecurse.c
+index f95ae1c..74c8f8b 100644
+--- a/testrecurse.c
++++ b/testrecurse.c
+@@ -892,6 +892,7 @@ launchTests(testDescPtr tst) {
err++;
}
}
@@ -809,10 +830,13 @@
return(err);
}
-@@ -961,5 +962,6 @@
+@@ -961,5 +962,6 @@ main(int argc ATTRIBUTE_UNUSED, char **argv ATTRIBUTE_UNUSED) {
xmlCleanupParser();
xmlMemoryDump();
+ printf("%s: testrecurse\n\n", (ret == 0) ? "PASS" : "FAIL");
return(ret);
}
+--
+2.7.4
+
diff --git a/poky/meta/recipes-core/libxml/libxml2_2.9.8.bb b/poky/meta/recipes-core/libxml/libxml2_2.9.8.bb
deleted file mode 100644
index 62643bc..0000000
--- a/poky/meta/recipes-core/libxml/libxml2_2.9.8.bb
+++ /dev/null
@@ -1,113 +0,0 @@
-SUMMARY = "XML C Parser Library and Toolkit"
-DESCRIPTION = "The XML Parser Library allows for manipulation of XML files. Libxml2 exports Push and Pull type parser interfaces for both XML and HTML. It can do DTD validation at parse time, on a parsed document instance or with an arbitrary DTD. Libxml2 includes complete XPath, XPointer and Xinclude implementations. It also has a SAX like interface, which is designed to be compatible with Expat."
-HOMEPAGE = "http://www.xmlsoft.org/"
-BUGTRACKER = "http://bugzilla.gnome.org/buglist.cgi?product=libxml2"
-SECTION = "libs"
-LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://Copyright;md5=2044417e2e5006b65a8b9067b683fcf1 \
- file://hash.c;beginline=6;endline=15;md5=96f7296605eae807670fb08947829969 \
- file://list.c;beginline=4;endline=13;md5=cdbfa3dee51c099edb04e39f762ee907 \
- file://trio.c;beginline=5;endline=14;md5=6c025753c86d958722ec76e94cae932e"
-
-DEPENDS = "zlib virtual/libiconv"
-
-SRC_URI = "http://www.xmlsoft.org/sources/libxml2-${PV}.tar.gz;name=libtar \
- http://www.w3.org/XML/Test/xmlts20080827.tar.gz;subdir=${BP};name=testtar \
- file://libxml-64bit.patch \
- file://runtest.patch \
- file://run-ptest \
- file://python-sitepackages-dir.patch \
- file://libxml-m4-use-pkgconfig.patch \
- file://0001-Make-ptest-run-the-python-tests-if-python-is-enabled.patch \
- file://fix-execution-of-ptests.patch \
- file://fix-CVE-2017-8872.patch \
- file://fix-CVE-2018-14404.patch \
- file://0001-Fix-infinite-loop-in-LZMA-decompression.patch \
- "
-
-SRC_URI[libtar.md5sum] = "b786e353e2aa1b872d70d5d1ca0c740d"
-SRC_URI[libtar.sha256sum] = "0b74e51595654f958148759cfef0993114ddccccbb6f31aee018f3558e8e2732"
-SRC_URI[testtar.md5sum] = "ae3d1ebe000a3972afa104ca7f0e1b4a"
-SRC_URI[testtar.sha256sum] = "96151685cec997e1f9f3387e3626d61e6284d4d6e66e0e440c209286c03e9cc7"
-
-BINCONFIG = "${bindir}/xml2-config"
-
-PACKAGECONFIG ??= "python \
- ${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)} \
-"
-PACKAGECONFIG[python] = "--with-python=${PYTHON},--without-python,python3"
-PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6,"
-
-inherit autotools pkgconfig binconfig-disabled ptest distro_features_check
-
-inherit ${@bb.utils.contains('PACKAGECONFIG', 'python', 'python3native', '', d)}
-
-RDEPENDS_${PN}-ptest += "make ${@bb.utils.contains('PACKAGECONFIG', 'python', 'libgcc python3-core python3-logging python3-shell python3-stringold python3-threading python3-unittest ${PN}-python', '', d)}"
-
-RDEPENDS_${PN}-python += "${@bb.utils.contains('PACKAGECONFIG', 'python', 'python3-core', '', d)}"
-
-RDEPENDS_${PN}-ptest_append_libc-glibc = " glibc-gconv-ebcdic-us \
- glibc-gconv-ibm1141 \
- glibc-gconv-iso8859-5 \
- glibc-gconv-euc-jp \
- locale-base-en-us \
- "
-
-export PYTHON_SITE_PACKAGES="${PYTHON_SITEPACKAGES_DIR}"
-
-# WARNING: zlib is required for RPM use
-EXTRA_OECONF = "--without-debug --without-legacy --with-catalog --without-docbook --with-c14n --without-lzma --with-fexceptions"
-EXTRA_OECONF_class-native = "--without-legacy --without-docbook --with-c14n --without-lzma --with-zlib"
-EXTRA_OECONF_class-nativesdk = "--without-legacy --without-docbook --with-c14n --without-lzma --with-zlib"
-EXTRA_OECONF_linuxstdbase = "--with-debug --with-legacy --with-docbook --with-c14n --without-lzma --with-zlib"
-
-python populate_packages_prepend () {
- # autonamer would call this libxml2-2, but we don't want that
- if d.getVar('DEBIAN_NAMES'):
- d.setVar('PKG_libxml2', '${MLPREFIX}libxml2')
-}
-
-PACKAGE_BEFORE_PN += "${PN}-utils"
-PACKAGES += "${PN}-python"
-
-FILES_${PN}-staticdev += "${PYTHON_SITEPACKAGES_DIR}/*.a"
-FILES_${PN}-dev += "${libdir}/xml2Conf.sh ${libdir}/cmake/*"
-FILES_${PN}-utils = "${bindir}/*"
-FILES_${PN}-python = "${PYTHON_SITEPACKAGES_DIR}"
-
-do_configure_prepend () {
- # executables take longer to package: these should not be executable
- find ${S}/xmlconf/ -type f -exec chmod -x {} \+
-}
-
-do_compile_ptest() {
- oe_runmake check-am
-}
-
-do_install_ptest () {
- cp -r ${S}/xmlconf ${D}${PTEST_PATH}
- if [ "${@bb.utils.filter('PACKAGECONFIG', 'python', d)}" ]; then
- sed -i -e 's|^\(PYTHON = \).*|\1${USRBINPATH}/${PYTHON_PN}|' \
- ${D}${PTEST_PATH}/python/tests/Makefile
- grep -lrZ '#!/usr/bin/python' ${D}${PTEST_PATH}/python |
- xargs -0 sed -i -e 's|/usr/bin/python|${USRBINPATH}/${PYTHON_PN}|'
- fi
- #Remove build host references from various Makefiles
- find "${D}${PTEST_PATH}" -name Makefile -type f -exec \
- sed -i \
- -e 's,--sysroot=${STAGING_DIR_TARGET},,g' \
- -e 's|${DEBUG_PREFIX_MAP}||g' \
- -e 's:${HOSTTOOLS_DIR}/::g' \
- -e 's:${RECIPE_SYSROOT_NATIVE}::g' \
- -e 's:${RECIPE_SYSROOT}::g' \
- -e 's:${BASE_WORKDIR}/${MULTIMACH_TARGET_SYS}::g' \
- -e '/^RELDATE/d' \
- {} +
-}
-
-do_install_append_class-native () {
- # Docs are not needed in the native case
- rm ${D}${datadir}/gtk-doc -rf
-}
-
-BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-core/libxml/libxml2_2.9.9.bb b/poky/meta/recipes-core/libxml/libxml2_2.9.9.bb
new file mode 100644
index 0000000..c38f883
--- /dev/null
+++ b/poky/meta/recipes-core/libxml/libxml2_2.9.9.bb
@@ -0,0 +1,110 @@
+SUMMARY = "XML C Parser Library and Toolkit"
+DESCRIPTION = "The XML Parser Library allows for manipulation of XML files. Libxml2 exports Push and Pull type parser interfaces for both XML and HTML. It can do DTD validation at parse time, on a parsed document instance or with an arbitrary DTD. Libxml2 includes complete XPath, XPointer and Xinclude implementations. It also has a SAX like interface, which is designed to be compatible with Expat."
+HOMEPAGE = "http://www.xmlsoft.org/"
+BUGTRACKER = "http://bugzilla.gnome.org/buglist.cgi?product=libxml2"
+SECTION = "libs"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://Copyright;md5=2044417e2e5006b65a8b9067b683fcf1 \
+ file://hash.c;beginline=6;endline=15;md5=96f7296605eae807670fb08947829969 \
+ file://list.c;beginline=4;endline=13;md5=cdbfa3dee51c099edb04e39f762ee907 \
+ file://trio.c;beginline=5;endline=14;md5=6c025753c86d958722ec76e94cae932e"
+
+DEPENDS = "zlib virtual/libiconv"
+
+SRC_URI = "http://www.xmlsoft.org/sources/libxml2-${PV}.tar.gz;name=libtar \
+ http://www.w3.org/XML/Test/xmlts20080827.tar.gz;subdir=${BP};name=testtar \
+ file://libxml-64bit.patch \
+ file://runtest.patch \
+ file://run-ptest \
+ file://python-sitepackages-dir.patch \
+ file://libxml-m4-use-pkgconfig.patch \
+ file://0001-Make-ptest-run-the-python-tests-if-python-is-enabled.patch \
+ file://fix-execution-of-ptests.patch \
+ "
+
+SRC_URI[libtar.md5sum] = "c04a5a0a042eaa157e8e8c9eabe76bd6"
+SRC_URI[libtar.sha256sum] = "94fb70890143e3c6549f265cee93ec064c80a84c42ad0f23e85ee1fd6540a871"
+SRC_URI[testtar.md5sum] = "ae3d1ebe000a3972afa104ca7f0e1b4a"
+SRC_URI[testtar.sha256sum] = "96151685cec997e1f9f3387e3626d61e6284d4d6e66e0e440c209286c03e9cc7"
+
+BINCONFIG = "${bindir}/xml2-config"
+
+PACKAGECONFIG ??= "python \
+ ${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)} \
+"
+PACKAGECONFIG[python] = "--with-python=${PYTHON},--without-python,python3"
+PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6,"
+
+inherit autotools pkgconfig binconfig-disabled ptest distro_features_check
+
+inherit ${@bb.utils.contains('PACKAGECONFIG', 'python', 'python3native', '', d)}
+
+RDEPENDS_${PN}-ptest += "make ${@bb.utils.contains('PACKAGECONFIG', 'python', 'libgcc python3-core python3-logging python3-shell python3-stringold python3-threading python3-unittest ${PN}-python', '', d)}"
+
+RDEPENDS_${PN}-python += "${@bb.utils.contains('PACKAGECONFIG', 'python', 'python3-core', '', d)}"
+
+RDEPENDS_${PN}-ptest_append_libc-glibc = " glibc-gconv-ebcdic-us \
+ glibc-gconv-ibm1141 \
+ glibc-gconv-iso8859-5 \
+ glibc-gconv-euc-jp \
+ locale-base-en-us \
+ "
+
+export PYTHON_SITE_PACKAGES="${PYTHON_SITEPACKAGES_DIR}"
+
+# WARNING: zlib is required for RPM use
+EXTRA_OECONF = "--without-debug --without-legacy --with-catalog --without-docbook --with-c14n --without-lzma --with-fexceptions"
+EXTRA_OECONF_class-native = "--without-legacy --without-docbook --with-c14n --without-lzma --with-zlib"
+EXTRA_OECONF_class-nativesdk = "--without-legacy --without-docbook --with-c14n --without-lzma --with-zlib"
+EXTRA_OECONF_linuxstdbase = "--with-debug --with-legacy --with-docbook --with-c14n --without-lzma --with-zlib"
+
+python populate_packages_prepend () {
+ # autonamer would call this libxml2-2, but we don't want that
+ if d.getVar('DEBIAN_NAMES'):
+ d.setVar('PKG_libxml2', '${MLPREFIX}libxml2')
+}
+
+PACKAGE_BEFORE_PN += "${PN}-utils"
+PACKAGES += "${PN}-python"
+
+FILES_${PN}-staticdev += "${PYTHON_SITEPACKAGES_DIR}/*.a"
+FILES_${PN}-dev += "${libdir}/xml2Conf.sh ${libdir}/cmake/*"
+FILES_${PN}-utils = "${bindir}/*"
+FILES_${PN}-python = "${PYTHON_SITEPACKAGES_DIR}"
+
+do_configure_prepend () {
+ # executables take longer to package: these should not be executable
+ find ${S}/xmlconf/ -type f -exec chmod -x {} \+
+}
+
+do_compile_ptest() {
+ oe_runmake check-am
+}
+
+do_install_ptest () {
+ cp -r ${S}/xmlconf ${D}${PTEST_PATH}
+ if [ "${@bb.utils.filter('PACKAGECONFIG', 'python', d)}" ]; then
+ sed -i -e 's|^\(PYTHON = \).*|\1${USRBINPATH}/${PYTHON_PN}|' \
+ ${D}${PTEST_PATH}/python/tests/Makefile
+ grep -lrZ '#!/usr/bin/python' ${D}${PTEST_PATH}/python |
+ xargs -0 sed -i -e 's|/usr/bin/python|${USRBINPATH}/${PYTHON_PN}|'
+ fi
+ #Remove build host references from various Makefiles
+ find "${D}${PTEST_PATH}" -name Makefile -type f -exec \
+ sed -i \
+ -e 's,--sysroot=${STAGING_DIR_TARGET},,g' \
+ -e 's|${DEBUG_PREFIX_MAP}||g' \
+ -e 's:${HOSTTOOLS_DIR}/::g' \
+ -e 's:${RECIPE_SYSROOT_NATIVE}::g' \
+ -e 's:${RECIPE_SYSROOT}::g' \
+ -e 's:${BASE_WORKDIR}/${MULTIMACH_TARGET_SYS}::g' \
+ -e '/^RELDATE/d' \
+ {} +
+}
+
+do_install_append_class-native () {
+ # Docs are not needed in the native case
+ rm ${D}${datadir}/gtk-doc -rf
+}
+
+BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-core/meta/target-sdk-provides-dummy.bb b/poky/meta/recipes-core/meta/target-sdk-provides-dummy.bb
index 85472a8..50182de 100644
--- a/poky/meta/recipes-core/meta/target-sdk-provides-dummy.bb
+++ b/poky/meta/recipes-core/meta/target-sdk-provides-dummy.bb
@@ -52,3 +52,5 @@
"
require dummy-sdk-package.inc
+
+SSTATE_DUPWHITELIST += "${PKGDATA_DIR}/${PN} ${PKGDATA_DIR}/runtime/${PN}"
diff --git a/poky/meta/recipes-core/musl/musl_git.bb b/poky/meta/recipes-core/musl/musl_git.bb
index 2d8dab90..1e32480 100644
--- a/poky/meta/recipes-core/musl/musl_git.bb
+++ b/poky/meta/recipes-core/musl/musl_git.bb
@@ -4,9 +4,9 @@
require musl.inc
inherit linuxloader
-SRCREV = "43e7efb46555f13a556d92944ac05c19b8929b60"
+SRCREV = "65c8be380431eebe4d70d130bd38563f8df9a7d7"
-BASEVER = "1.1.21"
+BASEVER = "1.1.22"
PV = "${BASEVER}+git${SRCPV}"
diff --git a/poky/meta/recipes-core/ncurses/ncurses_6.1+20181013.bb b/poky/meta/recipes-core/ncurses/ncurses_6.1+20181013.bb
index ef6ca98..928c477 100644
--- a/poky/meta/recipes-core/ncurses/ncurses_6.1+20181013.bb
+++ b/poky/meta/recipes-core/ncurses/ncurses_6.1+20181013.bb
@@ -8,4 +8,4 @@
SRCREV = "7a97a7f937762ba342d5b2fd7cd090885a809835"
S = "${WORKDIR}/git"
EXTRA_OECONF += "--with-abi-version=5 --cache-file=${B}/config.cache"
-UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>\d+(\.\d+)+(\+\d+)*)"
+UPSTREAM_CHECK_GITTAGREGEX = "upstream/(?P<pver>\d+(\.\d+)+(\+\d+)*)"
diff --git a/poky/meta/recipes-core/packagegroups/packagegroup-base.bb b/poky/meta/recipes-core/packagegroups/packagegroup-base.bb
index 442201c..cae704a 100644
--- a/poky/meta/recipes-core/packagegroups/packagegroup-base.bb
+++ b/poky/meta/recipes-core/packagegroups/packagegroup-base.bb
@@ -21,7 +21,6 @@
${@bb.utils.contains("MACHINE_FEATURES", "apm", "packagegroup-base-apm", "", d)} \
${@bb.utils.contains("MACHINE_FEATURES", "ext2", "packagegroup-base-ext2", "", d)} \
${@bb.utils.contains("MACHINE_FEATURES", "vfat", "packagegroup-base-vfat", "", d)} \
- ${@bb.utils.contains("MACHINE_FEATURES", "irda", "packagegroup-base-irda", "",d)} \
${@bb.utils.contains("MACHINE_FEATURES", "keyboard", "packagegroup-base-keyboard", "", d)} \
${@bb.utils.contains("MACHINE_FEATURES", "pci", "packagegroup-base-pci", "",d)} \
${@bb.utils.contains("MACHINE_FEATURES", "pcmcia", "packagegroup-base-pcmcia", "", d)} \
@@ -63,7 +62,6 @@
${@bb.utils.contains('COMBINED_FEATURES', 'alsa', 'packagegroup-base-alsa', '',d)} \
${@bb.utils.contains('COMBINED_FEATURES', 'ext2', 'packagegroup-base-ext2', '',d)} \
${@bb.utils.contains('COMBINED_FEATURES', 'vfat', 'packagegroup-base-vfat', '',d)} \
- ${@bb.utils.contains('COMBINED_FEATURES', 'irda', 'packagegroup-base-irda', '',d)} \
${@bb.utils.contains('COMBINED_FEATURES', 'pci', 'packagegroup-base-pci', '',d)} \
${@bb.utils.contains('COMBINED_FEATURES', 'pcmcia', 'packagegroup-base-pcmcia', '',d)} \
${@bb.utils.contains('COMBINED_FEATURES', 'usbgadget', 'packagegroup-base-usbgadget', '',d)} \
@@ -221,23 +219,6 @@
${@bb.utils.contains('COMBINED_FEATURES', 'pcmcia', 'kernel-module-dtl1-cs', '',d)} \
"
-SUMMARY_packagegroup-base-irda = "IrDA support"
-RDEPENDS_packagegroup-base-irda = "\
- irda-utils"
-
-RRECOMMENDS_packagegroup-base-irda = "\
- kernel-module-pxaficp-ir \
- kernel-module-irda \
- kernel-module-ircomm \
- kernel-module-ircomm-tty \
- kernel-module-irlan \
- ${@bb.utils.contains('DISTRO_FEATURES', 'ppp', 'kernel-module-irnet', '',d)} \
- kernel-module-irport \
- kernel-module-irtty \
- kernel-module-irtty-sir \
- kernel-module-sir-dev \
- ${@bb.utils.contains('COMBINED_FEATURES', 'usbhost', 'kernel-module-ir-usb', '',d)} "
-
SUMMARY_packagegroup-base-usbgadget = "USB gadget support"
RRECOMMENDS_packagegroup-base-usbgadget = "\
kernel-module-pxa27x_udc \
diff --git a/poky/meta/recipes-core/packagegroups/packagegroup-self-hosted.bb b/poky/meta/recipes-core/packagegroups/packagegroup-self-hosted.bb
index b296db5..f206cee 100644
--- a/poky/meta/recipes-core/packagegroups/packagegroup-self-hosted.bb
+++ b/poky/meta/recipes-core/packagegroups/packagegroup-self-hosted.bb
@@ -189,7 +189,6 @@
libx11-dev \
adwaita-icon-theme \
xdg-utils \
- epiphany \
l3afpad \
pcmanfm \
vte \
diff --git a/poky/meta/recipes-core/systemd/systemd-boot_241.bb b/poky/meta/recipes-core/systemd/systemd-boot_242.bb
similarity index 100%
rename from poky/meta/recipes-core/systemd/systemd-boot_241.bb
rename to poky/meta/recipes-core/systemd/systemd-boot_242.bb
diff --git a/poky/meta/recipes-core/systemd/systemd-conf/journald.conf b/poky/meta/recipes-core/systemd/systemd-conf/journald.conf
new file mode 100644
index 0000000..fd4d969
--- /dev/null
+++ b/poky/meta/recipes-core/systemd/systemd-conf/journald.conf
@@ -0,0 +1,3 @@
+[Journal]
+ForwardToSyslog=yes
+RuntimeMaxUse=64M
diff --git a/poky/meta/recipes-core/systemd/systemd-conf/logind.conf b/poky/meta/recipes-core/systemd/systemd-conf/logind.conf
new file mode 100644
index 0000000..bf7f692
--- /dev/null
+++ b/poky/meta/recipes-core/systemd/systemd-conf/logind.conf
@@ -0,0 +1,2 @@
+[Login]
+KillUserProcesses=yes
diff --git a/poky/meta/recipes-core/systemd/systemd-conf/system.conf b/poky/meta/recipes-core/systemd/systemd-conf/system.conf
new file mode 100644
index 0000000..554cab2
--- /dev/null
+++ b/poky/meta/recipes-core/systemd/systemd-conf/system.conf
@@ -0,0 +1,2 @@
+[Manager]
+DefaultMemoryAccounting=yes
diff --git a/poky/meta/recipes-core/systemd/systemd-conf/system.conf-qemuall b/poky/meta/recipes-core/systemd/systemd-conf/system.conf-qemuall
new file mode 100644
index 0000000..741be27
--- /dev/null
+++ b/poky/meta/recipes-core/systemd/systemd-conf/system.conf-qemuall
@@ -0,0 +1,3 @@
+[Manager]
+# Change DefaultTimeoutStartSec from 90s to 240s
+DefaultTimeoutStartSec = 240s
diff --git a/poky/meta/recipes-core/systemd/systemd-conf_241.bb b/poky/meta/recipes-core/systemd/systemd-conf_241.bb
deleted file mode 100644
index 9bb27fd..0000000
--- a/poky/meta/recipes-core/systemd/systemd-conf_241.bb
+++ /dev/null
@@ -1,53 +0,0 @@
-require systemd.inc
-
-SUMMARY = "Systemd system configuration"
-DESCRIPTION = "Systemd may require slightly different configuration for \
-different machines. For example, qemu machines require a longer \
-DefaultTimeoutStartSec setting."
-
-PACKAGE_ARCH = "${MACHINE_ARCH}"
-
-CONFFILES_${PN} = "${sysconfdir}/machine-id \
-${sysconfdir}/systemd/coredump.conf \
-${sysconfdir}/systemd/journald.conf \
-${sysconfdir}/systemd/logind.conf \
-${sysconfdir}/systemd/system.conf \
-${sysconfdir}/systemd/user.conf"
-
-FILES_${PN} = "${sysconfdir}/machine-id ${sysconfdir}/systemd"
-
-do_configure[noexec] = '1'
-do_compile[noexec] = '1'
-
-do_install() {
- rm -rf ${D}/${sysconfdir}/systemd
- install -d ${D}/${sysconfdir}/systemd
-
- # Create machine-id
- # 20:12 < mezcalero> koen: you have three options: a) run systemd-machine-id-setup at install time, b) have / read-only and an empty file there (for stateless) and c) boot with / writable
- touch ${D}${sysconfdir}/machine-id
-
- install -m 0644 ${S}/src/coredump/coredump.conf ${D}${sysconfdir}/systemd/coredump.conf
-
- install -m 0644 ${S}/src/journal/journald.conf ${D}${sysconfdir}/systemd/journald.conf
- # Enable journal to forward message to syslog daemon
- sed -i -e 's/.*ForwardToSyslog.*/ForwardToSyslog=yes/' ${D}${sysconfdir}/systemd/journald.conf
- # Set the maximium size of runtime journal to 64M as default
- sed -i -e 's/.*RuntimeMaxUse.*/RuntimeMaxUse=64M/' ${D}${sysconfdir}/systemd/journald.conf
-
- install -m 0644 ${S}/src/login/logind.conf.in ${D}${sysconfdir}/systemd/logind.conf
- # Set KILL_USER_PROCESSES to yes
- sed -i -e 's/@KILL_USER_PROCESSES@/yes/' ${D}${sysconfdir}/systemd/logind.conf
-
- install -m 0644 ${S}/src/core/system.conf.in ${D}${sysconfdir}/systemd/system.conf
- # Set MEMORY_ACCOUNTING_DEFAULT to yes
- sed -i -e 's/@MEMORY_ACCOUNTING_DEFAULT@/yes/' ${D}${sysconfdir}/systemd/system.conf
-
- install -m 0644 ${S}/src/core/user.conf ${D}${sysconfdir}/systemd/user.conf
-}
-
-# Based on change from YP bug 8141, OE commit 5196d7bacaef1076c361adaa2867be31759c1b52
-do_install_append_qemuall() {
- # Change DefaultTimeoutStartSec from 90s to 240s
- echo "DefaultTimeoutStartSec = 240s" >> ${D}${sysconfdir}/systemd/system.conf
-}
diff --git a/poky/meta/recipes-core/systemd/systemd-conf_242.bb b/poky/meta/recipes-core/systemd/systemd-conf_242.bb
new file mode 100644
index 0000000..96beea5
--- /dev/null
+++ b/poky/meta/recipes-core/systemd/systemd-conf_242.bb
@@ -0,0 +1,32 @@
+SUMMARY = "Systemd system configuration"
+DESCRIPTION = "Systemd may require slightly different configuration for \
+different machines. For example, qemu machines require a longer \
+DefaultTimeoutStartSec setting."
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
+
+SRC_URI = "\
+ file://journald.conf \
+ file://logind.conf \
+ file://system.conf \
+ file://system.conf-qemuall \
+"
+
+do_install() {
+ install -D -m0644 ${WORKDIR}/journald.conf ${D}${systemd_unitdir}/journald.conf.d/00-${PN}.conf
+ install -D -m0644 ${WORKDIR}/logind.conf ${D}${systemd_unitdir}/logind.conf.d/00-${PN}.conf
+ install -D -m0644 ${WORKDIR}/system.conf ${D}${systemd_unitdir}/system.conf.d/00-${PN}.conf
+}
+
+# Based on change from YP bug 8141, OE commit 5196d7bacaef1076c361adaa2867be31759c1b52
+do_install_append_qemuall() {
+ install -D -m0644 ${WORKDIR}/system.conf-qemuall ${D}${systemd_unitdir}/system.conf.d/01-${PN}.conf
+}
+
+PACKAGE_ARCH = "${MACHINE_ARCH}"
+
+FILES_${PN} = "\
+ ${systemd_unitdir}/journald.conf.d/ \
+ ${systemd_unitdir}/logind.conf.d/ \
+ ${systemd_unitdir}/system.conf.d/ \
+"
diff --git a/poky/meta/recipes-core/systemd/systemd-systemctl/systemctl b/poky/meta/recipes-core/systemd/systemd-systemctl/systemctl
index 2bc6489..8d7b3ba 100755
--- a/poky/meta/recipes-core/systemd/systemd-systemctl/systemctl
+++ b/poky/meta/recipes-core/systemd/systemd-systemctl/systemctl
@@ -1,196 +1,314 @@
-#!/bin/sh
-echo "Started $0 $*"
+#!/usr/bin/env python3
+"""systemctl: subset of systemctl used for image construction
-ROOT=
+Mask/preset systemd units
+"""
-# parse command line params
-action=
-while [ $# != 0 ]; do
- opt="$1"
+import argparse
+import fnmatch
+import os
+import re
+import sys
- case "$opt" in
- enable)
- shift
+from collections import namedtuple
+from pathlib import Path
- action="$opt"
- services="$1"
- cmd_args="1"
- shift
- ;;
- disable)
- shift
+version = 1.0
- action="$opt"
- services="$1"
- cmd_args="1"
- shift
- ;;
- mask)
- shift
+ROOT = Path("/")
+SYSCONFDIR = Path("etc")
+BASE_LIBDIR = Path("lib")
+LIBDIR = Path("usr", "lib")
- action="$opt"
- services="$1"
- cmd_args="1"
- shift
- ;;
- preset)
- shift
+locations = list()
- action="$opt"
- services="$1"
- cmd_args="1"
- shift
- ;;
- --root=*)
- ROOT=${opt##--root=}
- cmd_args="0"
- shift
- ;;
- *)
- if [ "$cmd_args" = "1" ]; then
- services="$services $opt"
- shift
- else
- echo "'$opt' is an unkown option; exiting with error"
- exit 1
- fi
- ;;
- esac
-done
-if [ "$action" = "preset" -a "$service_file" = "" ]; then
- services=$(for f in `find $ROOT/etc/systemd/system $ROOT/lib/systemd/system $ROOT/usr/lib/systemd/system -type f 2>1`; do basename $f; done)
- services="$services $opt"
- presetall=1
-fi
-for service in $services; do
- if [ "$presetall" = "1" ]; then
- action="preset"
- fi
- if [ "$action" = "mask" ]; then
- if [ ! -d $ROOT/etc/systemd/system/ ]; then
- mkdir -p $ROOT/etc/systemd/system/
- fi
- cmd="ln -s /dev/null $ROOT/etc/systemd/system/$service"
- echo "$cmd"
- $cmd
- exit 0
- fi
+class SystemdFile():
+ """Class representing a single systemd configuration file"""
+ def __init__(self, root, path):
+ self.sections = dict()
+ self._parse(root, path)
- service_base_file=`echo $service | sed 's/\(@\).*\(\.[^.]\+\)/\1\2/'`
- if [ -z `echo $service | sed '/@/p;d'` ]; then
- echo "Try to find location of $service..."
- service_template=false
- else
- echo "Try to find location of template $service_base_file of instance $service..."
- service_template=true
- instance_specified=`echo $service | sed 's/^.\+@\(.*\)\.[^.]\+/\1/'`
- fi
+ def _parse(self, root, path):
+ """Parse a systemd syntax configuration file
- # find service file
- for p in $ROOT/etc/systemd/system \
- $ROOT/lib/systemd/system \
- $ROOT/usr/lib/systemd/system; do
- if [ -e $p/$service_base_file ]; then
- service_file=$p/$service_base_file
- service_file=${service_file##$ROOT}
- fi
- done
- if [ -z "$service_file" ]; then
- echo "'$service_base_file' couldn't be found; exiting with error"
- exit 1
- fi
- echo "Found $service in $service_file"
+ Args:
+ path: A pathlib.Path object pointing to the file
- # If any new unit types are added to systemd they should be added
- # to this regular expression.
- unit_types_re='\.\(service\|socket\|device\|mount\|automount\|swap\|target\|target\.wants\|path\|timer\|snapshot\)\s*$'
- if [ "$action" = "preset" ]; then
- action=`egrep -sh $service $ROOT/etc/systemd/user-preset/*.preset | cut -f1 -d' '`
- if [ -z "$action" ]; then
- globalpreset=`egrep -sh '\*' $ROOT/etc/systemd/user-preset/*.preset | cut -f1 -d' '`
- if [ -n "$globalpreset" ]; then
- action="$globalpreset"
- else
- action="enable"
- fi
- fi
- fi
- # create the required symbolic links
- wanted_by=$(sed '/^WantedBy[[:space:]]*=/s,[^=]*=,,p;d' "$ROOT/$service_file" \
- | tr ',' '\n' \
- | grep "$unit_types_re")
+ """
+ skip_re = re.compile(r"^\s*([#;]|$)")
+ section_re = re.compile(r"^\s*\[(?P<section>.*)\]")
+ kv_re = re.compile(r"^\s*(?P<key>[^\s]+)\s*=\s*(?P<value>.*)")
+ section = None
- required_by=$(sed '/^RequiredBy[[:space:]]*=/s,[^=]*=,,p;d' "$ROOT/$service_file" \
- | tr ',' '\n' \
- | grep "$unit_types_re")
+ if path.is_symlink():
+ try:
+ path.resolve()
+ except FileNotFoundError:
+ # broken symlink, try relative to root
+ path = root / Path(os.readlink(str(path))).relative_to(ROOT)
- for dependency in WantedBy RequiredBy; do
- if [ "$dependency" = "WantedBy" ]; then
- suffix="wants"
- dependency_list="$wanted_by"
- elif [ "$dependency" = "RequiredBy" ]; then
- suffix="requires"
- dependency_list="$required_by"
- fi
- for r in $dependency_list; do
- echo "$dependency=$r found in $service"
- if [ -n "$instance_specified" ]; then
- # substitute wildcards in the dependency
- r=`echo $r | sed "s/%i/$instance_specified/g"`
- fi
+ with path.open() as f:
+ for line in f:
+ if skip_re.match(line):
+ continue
- if [ "$action" = "enable" ]; then
- enable_service=$service
- if [ "$service_template" = true -a -z "$instance_specified" ]; then
- default_instance=$(sed '/^DefaultInstance[[:space:]]*=/s,[^=]*=,,p;d' "$ROOT/$service_file")
- if [ -z $default_instance ]; then
- echo "Template unit without instance or DefaultInstance directive, nothing to enable"
- continue
- else
- echo "Found DefaultInstance $default_instance, enabling it"
- enable_service=$(echo $service | sed "s/@/@$(echo $default_instance | sed 's/\\/\\\\/g')/")
- fi
- fi
- mkdir -p $ROOT/etc/systemd/system/$r.$suffix
- ln -s $service_file $ROOT/etc/systemd/system/$r.$suffix/$enable_service
- echo "Enabled $enable_service for $r."
- else
- if [ "$service_template" = true -a -z "$instance_specified" ]; then
- disable_service="$ROOT/etc/systemd/system/$r.$suffix/`echo $service | sed 's/@/@*/'`"
- else
- disable_service="$ROOT/etc/systemd/system/$r.$suffix/$service"
- fi
- rm -f $disable_service
- [ -d $ROOT/etc/systemd/system/$r.$suffix ] && rmdir --ignore-fail-on-non-empty -p $ROOT/etc/systemd/system/$r.$suffix
- echo "Disabled ${disable_service##$ROOT/etc/systemd/system/$r.$suffix/} for $r."
- fi
- done
- done
+ line = line.rstrip("\n")
+ m = section_re.match(line)
+ if m:
+ section = dict()
+ self.sections[m.group('section')] = section
+ continue
- # create the required symbolic 'Alias' links
- alias=$(sed '/^Alias[[:space:]]*=/s,[^=]*=,,p;d' "$ROOT/$service_file" \
- | tr ',' '\n' \
- | grep "$unit_types_re")
+ while line.endswith("\\"):
+ line += f.readline().rstrip("\n")
- for r in $alias; do
- if [ "$action" = "enable" ]; then
- mkdir -p $ROOT/etc/systemd/system
- ln -s $service_file $ROOT/etc/systemd/system/$r
- echo "Enabled $service for $alias."
- else
- rm -f $ROOT/etc/systemd/system/$r
- echo "Disabled $service for $alias."
- fi
- done
+ m = kv_re.match(line)
+ k = m.group('key')
+ v = m.group('value')
+ if k not in section:
+ section[k] = list()
+ section[k].extend(v.split())
- # call us for the other required scripts
- also=$(sed '/^Also[[:space:]]*=/s,[^=]*=,,p;d' "$ROOT/$service_file" \
- | tr ',' '\n')
- for a in $also; do
- echo "Also=$a found in $service"
- if [ "$action" = "enable" ]; then
- $0 --root=$ROOT enable $a
- fi
- done
-done
+ def get(self, section, prop):
+ """Get a property from section
+
+ Args:
+ section: Section to retrieve property from
+ prop: Property to retrieve
+
+ Returns:
+ List representing all properties of type prop in section.
+
+ Raises:
+ KeyError: if ``section`` or ``prop`` not found
+ """
+ return self.sections[section][prop]
+
+
+class Presets():
+ """Class representing all systemd presets"""
+ def __init__(self, scope, root):
+ self.directives = list()
+ self._collect_presets(scope, root)
+
+ def _parse_presets(self, presets):
+ """Parse presets out of a set of preset files"""
+ skip_re = re.compile(r"^\s*([#;]|$)")
+ directive_re = re.compile(r"^\s*(?P<action>enable|disable)\s+(?P<unit_name>(.+))")
+
+ Directive = namedtuple("Directive", "action unit_name")
+ for preset in presets:
+ with preset.open() as f:
+ for line in f:
+ m = directive_re.match(line)
+ if m:
+ directive = Directive(action=m.group('action'),
+ unit_name=m.group('unit_name'))
+ self.directives.append(directive)
+ elif skip_re.match(line):
+ pass
+ else:
+ sys.exit("Unparsed preset line in {}".format(preset))
+
+ def _collect_presets(self, scope, root):
+ """Collect list of preset files"""
+ presets = dict()
+ for location in locations:
+ paths = (root / location / scope).glob("*.preset")
+ for path in paths:
+ # earlier names override later ones
+ if path.name not in presets:
+ presets[path.name] = path
+
+ self._parse_presets([v for k, v in sorted(presets.items())])
+
+ def state(self, unit_name):
+ """Return state of preset for unit_name
+
+ Args:
+ presets: set of presets
+ unit_name: name of the unit
+
+ Returns:
+ None: no matching preset
+ `enable`: unit_name is enabled
+ `disable`: unit_name is disabled
+ """
+ for directive in self.directives:
+ if fnmatch.fnmatch(unit_name, directive.unit_name):
+ return directive.action
+
+ return None
+
+
+def add_link(path, target):
+ try:
+ path.parent.mkdir(parents=True)
+ except FileExistsError:
+ pass
+ if not path.is_symlink():
+ print("ln -s {} {}".format(target, path))
+ path.symlink_to(target)
+
+
+class SystemdUnitNotFoundError(Exception):
+ pass
+
+
+class SystemdUnit():
+ def __init__(self, root, unit):
+ self.root = root
+ self.unit = unit
+ self.config = None
+
+ def _path_for_unit(self, unit):
+ for location in locations:
+ path = self.root / location / "system" / unit
+ if path.exists():
+ return path
+
+ raise SystemdUnitNotFoundError(self.root, unit)
+
+ def _process_deps(self, config, service, location, prop, dirstem):
+ systemdir = self.root / SYSCONFDIR / "systemd" / "system"
+
+ target = ROOT / location.relative_to(self.root)
+ try:
+ for dependent in config.get('Install', prop):
+ wants = systemdir / "{}.{}".format(dependent, dirstem) / service
+ add_link(wants, target)
+
+ except KeyError:
+ pass
+
+ def enable(self):
+ # if we're enabling an instance, first extract the actual instance
+ # then figure out what the template unit is
+ template = re.match(r"[^@]+@(?P<instance>[^\.]*)\.", self.unit)
+ if template:
+ instance = template.group('instance')
+ unit = re.sub(r"@[^\.]*\.", "@.", self.unit, 1)
+ else:
+ instance = None
+ unit = self.unit
+
+ path = self._path_for_unit(unit)
+
+ if path.is_symlink():
+ # ignore aliases
+ return
+
+ config = SystemdFile(self.root, path)
+ if instance == "":
+ try:
+ default_instance = config.get('Install', 'DefaultInstance')[0]
+ except KeyError:
+ # no default instance, so nothing to enable
+ return
+
+ service = self.unit.replace("@.",
+ "@{}.".format(default_instance))
+ else:
+ service = self.unit
+
+ self._process_deps(config, service, path, 'WantedBy', 'wants')
+ self._process_deps(config, service, path, 'RequiredBy', 'requires')
+
+ try:
+ for also in config.get('Install', 'Also'):
+ SystemdUnit(self.root, also).enable()
+
+ except KeyError:
+ pass
+
+ systemdir = self.root / SYSCONFDIR / "systemd" / "system"
+ target = ROOT / path.relative_to(self.root)
+ try:
+ for dest in config.get('Install', 'Alias'):
+ alias = systemdir / dest
+ add_link(alias, target)
+
+ except KeyError:
+ pass
+
+ def mask(self):
+ systemdir = self.root / SYSCONFDIR / "systemd" / "system"
+ add_link(systemdir / self.unit, "/dev/null")
+
+
+def collect_services(root):
+ """Collect list of service files"""
+ services = set()
+ for location in locations:
+ paths = (root / location / "system").glob("*")
+ for path in paths:
+ if path.is_dir():
+ continue
+ services.add(path.name)
+
+ return services
+
+
+def preset_all(root):
+ presets = Presets('system-preset', root)
+ services = collect_services(root)
+
+ for service in services:
+ state = presets.state(service)
+
+ if state == "enable" or state is None:
+ SystemdUnit(root, service).enable()
+
+ # If we populate the systemd links we also create /etc/machine-id, which
+ # allows systemd to boot with the filesystem read-only before generating
+ # a real value and then committing it back.
+ #
+ # For the stateless configuration, where /etc is generated at runtime
+ # (for example on a tmpfs), this script shouldn't run at all and we
+ # allow systemd to completely populate /etc.
+ (root / SYSCONFDIR / "machine-id").touch()
+
+
+def main():
+ if sys.version_info < (3, 4, 0):
+ sys.exit("Python 3.4 or greater is required")
+
+ parser = argparse.ArgumentParser()
+ parser.add_argument('command', nargs=1, choices=['enable', 'mask',
+ 'preset-all'])
+ parser.add_argument('service', nargs=argparse.REMAINDER)
+ parser.add_argument('--root')
+ parser.add_argument('--preset-mode',
+ choices=['full', 'enable-only', 'disable-only'],
+ default='full')
+
+ args = parser.parse_args()
+
+ root = Path(args.root) if args.root else ROOT
+
+ locations.append(SYSCONFDIR / "systemd")
+ # Handle the usrmerge case by ignoring /lib when it's a symlink
+ if not (root / BASE_LIBDIR).is_symlink():
+ locations.append(BASE_LIBDIR / "systemd")
+ locations.append(LIBDIR / "systemd")
+
+ command = args.command[0]
+ if command == "mask":
+ for service in args.service:
+ SystemdUnit(root, service).mask()
+ elif command == "enable":
+ for service in args.service:
+ SystemdUnit(root, service).enable()
+ elif command == "preset-all":
+ if len(args.service) != 0:
+ sys.exit("Too many arguments.")
+ if args.preset_mode != "enable-only":
+ sys.exit("Only enable-only is supported as preset-mode.")
+ preset_all(root)
+ else:
+ raise RuntimeError()
+
+
+if __name__ == '__main__':
+ main()
diff --git a/poky/meta/recipes-core/systemd/systemd.inc b/poky/meta/recipes-core/systemd/systemd.inc
index 5bd88ed..3a353b0 100644
--- a/poky/meta/recipes-core/systemd/systemd.inc
+++ b/poky/meta/recipes-core/systemd/systemd.inc
@@ -14,8 +14,8 @@
LIC_FILES_CHKSUM = "file://LICENSE.GPL2;md5=751419260aa954499f7abaabaa882bbe \
file://LICENSE.LGPL2.1;md5=4fbd65380cdd255951079008b364516c"
-SRCREV = "c1f8ff8d0de7e303b8004b02a0a47d4cc103a7f8"
-SRCBRANCH = "v241-stable"
+SRCREV = "db2e367bfc3b119609f837eb973d915f6c550b2f"
+SRCBRANCH = "v242-stable"
SRC_URI = "git://github.com/systemd/systemd-stable.git;protocol=git;branch=${SRCBRANCH}"
S = "${WORKDIR}/git"
diff --git a/poky/meta/recipes-core/systemd/systemd/0001-do-not-disable-buffer-in-writing-files.patch b/poky/meta/recipes-core/systemd/systemd/0001-do-not-disable-buffer-in-writing-files.patch
index a6857b1..68ca604 100644
--- a/poky/meta/recipes-core/systemd/systemd/0001-do-not-disable-buffer-in-writing-files.patch
+++ b/poky/meta/recipes-core/systemd/systemd/0001-do-not-disable-buffer-in-writing-files.patch
@@ -14,6 +14,8 @@
Upstream-Status: Inappropriate [musl]
Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
+[Rebased for v242]
+Signed-off-by: Andrej Valek <andrej.valek@siemens.com>
---
src/basic/cgroup-util.c | 14 +++++++-------
src/basic/procfs-util.c | 4 ++--
@@ -25,21 +27,20 @@
src/hibernate-resume/hibernate-resume.c | 2 +-
src/libsystemd/sd-device/sd-device.c | 2 +-
src/login/logind-dbus.c | 2 +-
- src/network/networkd-ipv6-proxy-ndp.c | 2 +-
- src/network/networkd-link.c | 18 +++++++++---------
src/nspawn/nspawn-cgroup.c | 2 +-
src/nspawn/nspawn.c | 6 +++---
+ src/shared/sysctl-util.c | 2 +-
src/sleep/sleep.c | 12 ++++++------
src/udev/udevadm-trigger.c | 2 +-
src/udev/udevd.c | 6 +++---
src/vconsole/vconsole-setup.c | 2 +-
- 18 files changed, 48 insertions(+), 48 deletions(-)
+ 17 files changed, 39 insertions(+), 39 deletions(-)
diff --git a/src/basic/cgroup-util.c b/src/basic/cgroup-util.c
-index 8ce7ccb..b633226 100644
+index fc28109..44fe985 100644
--- a/src/basic/cgroup-util.c
+++ b/src/basic/cgroup-util.c
-@@ -818,7 +818,7 @@ int cg_attach(const char *controller, const char *path, pid_t pid) {
+@@ -822,7 +822,7 @@ int cg_attach(const char *controller, const char *path, pid_t pid) {
xsprintf(c, PID_FMT "\n", pid);
@@ -48,7 +49,7 @@
if (r < 0)
return r;
-@@ -1100,7 +1100,7 @@ int cg_install_release_agent(const char *controller, const char *agent) {
+@@ -1104,7 +1104,7 @@ int cg_install_release_agent(const char *controller, const char *agent) {
sc = strstrip(contents);
if (isempty(sc)) {
@@ -57,7 +58,7 @@
if (r < 0)
return r;
} else if (!path_equal(sc, agent))
-@@ -1118,7 +1118,7 @@ int cg_install_release_agent(const char *controller, const char *agent) {
+@@ -1122,7 +1122,7 @@ int cg_install_release_agent(const char *controller, const char *agent) {
sc = strstrip(contents);
if (streq(sc, "0")) {
@@ -66,7 +67,7 @@
if (r < 0)
return r;
-@@ -1145,7 +1145,7 @@ int cg_uninstall_release_agent(const char *controller) {
+@@ -1149,7 +1149,7 @@ int cg_uninstall_release_agent(const char *controller) {
if (r < 0)
return r;
@@ -75,7 +76,7 @@
if (r < 0)
return r;
-@@ -1155,7 +1155,7 @@ int cg_uninstall_release_agent(const char *controller) {
+@@ -1159,7 +1159,7 @@ int cg_uninstall_release_agent(const char *controller) {
if (r < 0)
return r;
@@ -84,7 +85,7 @@
if (r < 0)
return r;
-@@ -2012,7 +2012,7 @@ int cg_set_attribute(const char *controller, const char *path, const char *attri
+@@ -2016,7 +2016,7 @@ int cg_set_attribute(const char *controller, const char *path, const char *attri
if (r < 0)
return r;
@@ -93,7 +94,7 @@
}
int cg_get_attribute(const char *controller, const char *path, const char *attribute, char **ret) {
-@@ -2660,7 +2660,7 @@ int cg_enable_everywhere(
+@@ -2664,7 +2664,7 @@ int cg_enable_everywhere(
return log_debug_errno(errno, "Failed to open cgroup.subtree_control file of %s: %m", p);
}
@@ -103,10 +104,10 @@
log_debug_errno(r, "Failed to %s controller %s for %s (%s): %m",
FLAGS_SET(mask, bit) ? "enable" : "disable", n, p, fs);
diff --git a/src/basic/procfs-util.c b/src/basic/procfs-util.c
-index 42ce53d..5751253 100644
+index 7aaf95b..25fc3de 100644
--- a/src/basic/procfs-util.c
+++ b/src/basic/procfs-util.c
-@@ -86,13 +86,13 @@ int procfs_tasks_set_limit(uint64_t limit) {
+@@ -85,13 +85,13 @@ int procfs_tasks_set_limit(uint64_t limit) {
* decrease it, as threads-max is the much more relevant sysctl. */
if (limit > pid_max-1) {
sprintf(buffer, "%" PRIu64, limit+1); /* Add one, since PID 0 is not a valid PID */
@@ -136,10 +137,10 @@
return r;
diff --git a/src/basic/util.c b/src/basic/util.c
-index e577c93..3c64f91 100644
+index 93d610b..97dca64 100644
--- a/src/basic/util.c
+++ b/src/basic/util.c
-@@ -631,7 +631,7 @@ void disable_coredumps(void) {
+@@ -294,7 +294,7 @@ void disable_coredumps(void) {
if (detect_container() > 0)
return;
@@ -149,10 +150,10 @@
log_debug_errno(r, "Failed to turn off coredumps, ignoring: %m");
}
diff --git a/src/binfmt/binfmt.c b/src/binfmt/binfmt.c
-index af31f09..eec5738 100644
+index 66e2f01..5daa43b 100644
--- a/src/binfmt/binfmt.c
+++ b/src/binfmt/binfmt.c
-@@ -47,7 +47,7 @@ static int delete_rule(const char *rule) {
+@@ -48,7 +48,7 @@ static int delete_rule(const char *rule) {
if (!fn)
return log_oom();
@@ -161,7 +162,7 @@
}
static int apply_rule(const char *rule) {
-@@ -55,7 +55,7 @@ static int apply_rule(const char *rule) {
+@@ -56,7 +56,7 @@ static int apply_rule(const char *rule) {
(void) delete_rule(rule);
@@ -170,7 +171,7 @@
if (r < 0)
return log_error_errno(r, "Failed to add binary format: %m");
-@@ -212,7 +212,7 @@ static int run(int argc, char *argv[]) {
+@@ -213,7 +213,7 @@ static int run(int argc, char *argv[]) {
}
/* Flush out all rules */
@@ -180,10 +181,10 @@
STRV_FOREACH(f, files) {
k = apply_file(*f, true);
diff --git a/src/core/main.c b/src/core/main.c
-index 561f956..db6f113 100644
+index 46db471..726ccaf 100644
--- a/src/core/main.c
+++ b/src/core/main.c
-@@ -1468,7 +1468,7 @@ static int bump_unix_max_dgram_qlen(void) {
+@@ -1469,7 +1469,7 @@ static int bump_unix_max_dgram_qlen(void) {
if (v >= DEFAULT_UNIX_MAX_DGRAM_QLEN)
return 0;
@@ -192,7 +193,7 @@
if (r < 0)
return log_full_errno(IN_SET(r, -EROFS, -EPERM, -EACCES) ? LOG_DEBUG : LOG_WARNING, r,
"Failed to bump AF_UNIX datagram queue length, ignoring: %m");
-@@ -1683,7 +1683,7 @@ static void initialize_core_pattern(bool skip_setup) {
+@@ -1684,7 +1684,7 @@ static void initialize_core_pattern(bool skip_setup) {
if (getpid_cached() != 1)
return;
@@ -202,10 +203,10 @@
log_warning_errno(r, "Failed to write '%s' to /proc/sys/kernel/core_pattern, ignoring: %m", arg_early_core_pattern);
}
diff --git a/src/core/smack-setup.c b/src/core/smack-setup.c
-index 49b37ae..c96eedc 100644
+index cd7fb01..077e861 100644
--- a/src/core/smack-setup.c
+++ b/src/core/smack-setup.c
-@@ -350,17 +350,17 @@ int mac_smack_setup(bool *loaded_policy) {
+@@ -351,17 +351,17 @@ int mac_smack_setup(bool *loaded_policy) {
}
#ifdef SMACK_RUN_LABEL
@@ -241,10 +242,10 @@
log_error_errno(r, "Failed to write '%s' to /sys/power/resume: %m", major_minor);
return EXIT_FAILURE;
diff --git a/src/libsystemd/sd-device/sd-device.c b/src/libsystemd/sd-device/sd-device.c
-index 2a69f2e..9d55340 100644
+index c2315c0..00f81b4 100644
--- a/src/libsystemd/sd-device/sd-device.c
+++ b/src/libsystemd/sd-device/sd-device.c
-@@ -1836,7 +1836,7 @@ _public_ int sd_device_set_sysattr_value(sd_device *device, const char *sysattr,
+@@ -1852,7 +1852,7 @@ _public_ int sd_device_set_sysattr_value(sd_device *device, const char *sysattr,
if (!value)
return -ENOMEM;
@@ -254,10 +255,10 @@
if (r == -ELOOP)
return -EINVAL;
diff --git a/src/login/logind-dbus.c b/src/login/logind-dbus.c
-index 8ab498f..d27ef9c 100644
+index 2cebcce..7111fc1 100644
--- a/src/login/logind-dbus.c
+++ b/src/login/logind-dbus.c
-@@ -1231,7 +1231,7 @@ static int trigger_device(Manager *m, sd_device *d) {
+@@ -1285,7 +1285,7 @@ static int trigger_device(Manager *m, sd_device *d) {
if (!t)
return -ENOMEM;
@@ -266,109 +267,11 @@
}
return 0;
-diff --git a/src/network/networkd-ipv6-proxy-ndp.c b/src/network/networkd-ipv6-proxy-ndp.c
-index f594b27..c283cc3 100644
---- a/src/network/networkd-ipv6-proxy-ndp.c
-+++ b/src/network/networkd-ipv6-proxy-ndp.c
-@@ -43,7 +43,7 @@ static int ipv6_proxy_ndp_set(Link *link) {
- v = ipv6_proxy_ndp_is_needed(link);
- p = strjoina("/proc/sys/net/ipv6/conf/", link->ifname, "/proxy_ndp");
-
-- r = write_string_file(p, one_zero(v), WRITE_STRING_FILE_VERIFY_ON_FAILURE | WRITE_STRING_FILE_DISABLE_BUFFER);
-+ r = write_string_file(p, one_zero(v), WRITE_STRING_FILE_VERIFY_ON_FAILURE | 0);
- if (r < 0)
- log_link_warning_errno(link, r, "Cannot configure proxy NDP for interface: %m");
-
-diff --git a/src/network/networkd-link.c b/src/network/networkd-link.c
-index 22392d7..e0ed551 100644
---- a/src/network/networkd-link.c
-+++ b/src/network/networkd-link.c
-@@ -274,7 +274,7 @@ static int link_enable_ipv6(Link *link) {
-
- p = strjoina("/proc/sys/net/ipv6/conf/", link->ifname, "/disable_ipv6");
-
-- r = write_string_file(p, one_zero(disabled), WRITE_STRING_FILE_VERIFY_ON_FAILURE | WRITE_STRING_FILE_DISABLE_BUFFER);
-+ r = write_string_file(p, one_zero(disabled), WRITE_STRING_FILE_VERIFY_ON_FAILURE | 0);
- if (r < 0)
- log_link_warning_errno(link, r, "Cannot %s IPv6 for interface %s: %m",
- enable_disable(!disabled), link->ifname);
-@@ -1272,7 +1272,7 @@ static int link_set_proxy_arp(Link *link) {
-
- p = strjoina("/proc/sys/net/ipv4/conf/", link->ifname, "/proxy_arp");
-
-- r = write_string_file(p, one_zero(link->network->proxy_arp), WRITE_STRING_FILE_VERIFY_ON_FAILURE | WRITE_STRING_FILE_DISABLE_BUFFER);
-+ r = write_string_file(p, one_zero(link->network->proxy_arp), WRITE_STRING_FILE_VERIFY_ON_FAILURE | 0);
- if (r < 0)
- log_link_warning_errno(link, r, "Cannot configure proxy ARP for interface: %m");
-
-@@ -2541,7 +2541,7 @@ static int link_set_ipv4_forward(Link *link) {
- * primarily to keep IPv4 and IPv6 packet forwarding behaviour
- * somewhat in sync (see below). */
-
-- r = write_string_file("/proc/sys/net/ipv4/ip_forward", "1", WRITE_STRING_FILE_VERIFY_ON_FAILURE | WRITE_STRING_FILE_DISABLE_BUFFER);
-+ r = write_string_file("/proc/sys/net/ipv4/ip_forward", "1", WRITE_STRING_FILE_VERIFY_ON_FAILURE | 0);
- if (r < 0)
- log_link_warning_errno(link, r, "Cannot turn on IPv4 packet forwarding, ignoring: %m");
-
-@@ -2563,7 +2563,7 @@ static int link_set_ipv6_forward(Link *link) {
- * same behaviour there and also propagate the setting from
- * one to all, to keep things simple (see above). */
-
-- r = write_string_file("/proc/sys/net/ipv6/conf/all/forwarding", "1", WRITE_STRING_FILE_VERIFY_ON_FAILURE | WRITE_STRING_FILE_DISABLE_BUFFER);
-+ r = write_string_file("/proc/sys/net/ipv6/conf/all/forwarding", "1", WRITE_STRING_FILE_VERIFY_ON_FAILURE | 0);
- if (r < 0)
- log_link_warning_errno(link, r, "Cannot configure IPv6 packet forwarding, ignoring: %m");
-
-@@ -2583,7 +2583,7 @@ static int link_set_ipv6_privacy_extensions(Link *link) {
- p = strjoina("/proc/sys/net/ipv6/conf/", link->ifname, "/use_tempaddr");
- xsprintf(buf, "%u", (unsigned) link->network->ipv6_privacy_extensions);
-
-- r = write_string_file(p, buf, WRITE_STRING_FILE_VERIFY_ON_FAILURE | WRITE_STRING_FILE_DISABLE_BUFFER);
-+ r = write_string_file(p, buf, WRITE_STRING_FILE_VERIFY_ON_FAILURE | 0);
- if (r < 0)
- log_link_warning_errno(link, r, "Cannot configure IPv6 privacy extension for interface: %m");
-
-@@ -2607,7 +2607,7 @@ static int link_set_ipv6_accept_ra(Link *link) {
- p = strjoina("/proc/sys/net/ipv6/conf/", link->ifname, "/accept_ra");
-
- /* We handle router advertisements ourselves, tell the kernel to GTFO */
-- r = write_string_file(p, "0", WRITE_STRING_FILE_VERIFY_ON_FAILURE | WRITE_STRING_FILE_DISABLE_BUFFER);
-+ r = write_string_file(p, "0", WRITE_STRING_FILE_VERIFY_ON_FAILURE | 0);
- if (r < 0)
- log_link_warning_errno(link, r, "Cannot disable kernel IPv6 accept_ra for interface: %m");
-
-@@ -2635,7 +2635,7 @@ static int link_set_ipv6_dad_transmits(Link *link) {
- p = strjoina("/proc/sys/net/ipv6/conf/", link->ifname, "/dad_transmits");
- xsprintf(buf, "%i", link->network->ipv6_dad_transmits);
-
-- r = write_string_file(p, buf, WRITE_STRING_FILE_VERIFY_ON_FAILURE | WRITE_STRING_FILE_DISABLE_BUFFER);
-+ r = write_string_file(p, buf, WRITE_STRING_FILE_VERIFY_ON_FAILURE | 0);
- if (r < 0)
- log_link_warning_errno(link, r, "Cannot set IPv6 dad transmits for interface: %m");
-
-@@ -2663,7 +2663,7 @@ static int link_set_ipv6_hop_limit(Link *link) {
- p = strjoina("/proc/sys/net/ipv6/conf/", link->ifname, "/hop_limit");
- xsprintf(buf, "%i", link->network->ipv6_hop_limit);
-
-- r = write_string_file(p, buf, WRITE_STRING_FILE_VERIFY_ON_FAILURE | WRITE_STRING_FILE_DISABLE_BUFFER);
-+ r = write_string_file(p, buf, WRITE_STRING_FILE_VERIFY_ON_FAILURE | 0);
- if (r < 0)
- log_link_warning_errno(link, r, "Cannot set IPv6 hop limit for interface: %m");
-
-@@ -2689,7 +2689,7 @@ static int link_set_ipv6_mtu(Link *link) {
-
- xsprintf(buf, "%" PRIu32, link->network->ipv6_mtu);
-
-- r = write_string_file(p, buf, WRITE_STRING_FILE_DISABLE_BUFFER);
-+ r = write_string_file(p, buf, 0);
- if (r < 0)
- log_link_warning_errno(link, r, "Cannot set IPv6 MTU for interface: %m");
-
diff --git a/src/nspawn/nspawn-cgroup.c b/src/nspawn/nspawn-cgroup.c
-index 97fa092..b841f51 100644
+index 168125d..dd0ab79 100644
--- a/src/nspawn/nspawn-cgroup.c
+++ b/src/nspawn/nspawn-cgroup.c
-@@ -123,7 +123,7 @@ int sync_cgroup(pid_t pid, CGroupUnified unified_requested, uid_t uid_shift) {
+@@ -124,7 +124,7 @@ int sync_cgroup(pid_t pid, CGroupUnified unified_requested, uid_t uid_shift) {
(void) mkdir_parents(fn, 0755);
sprintf(pid_string, PID_FMT, pid);
@@ -378,10 +281,10 @@
log_error_errno(r, "Failed to move process: %m");
goto finish;
diff --git a/src/nspawn/nspawn.c b/src/nspawn/nspawn.c
-index e0c2d71..213790c 100644
+index 3b0ecb1..a1b5240 100644
--- a/src/nspawn/nspawn.c
+++ b/src/nspawn/nspawn.c
-@@ -2117,7 +2117,7 @@ static int reset_audit_loginuid(void) {
+@@ -2341,7 +2341,7 @@ static int reset_audit_loginuid(void) {
if (streq(p, "4294967295"))
return 0;
@@ -390,7 +293,7 @@
if (r < 0) {
log_error_errno(r,
"Failed to reset audit login UID. This probably means that your kernel is too\n"
-@@ -3195,13 +3195,13 @@ static int setup_uid_map(pid_t pid) {
+@@ -3531,13 +3531,13 @@ static int setup_uid_map(pid_t pid) {
xsprintf(uid_map, "/proc/" PID_FMT "/uid_map", pid);
xsprintf(line, UID_FMT " " UID_FMT " " UID_FMT "\n", 0, arg_uid_shift, arg_uid_range);
@@ -406,11 +309,24 @@
if (r < 0)
return log_error_errno(r, "Failed to write GID map: %m");
+diff --git a/src/shared/sysctl-util.c b/src/shared/sysctl-util.c
+index 9be4055..f935cde 100644
+--- a/src/shared/sysctl-util.c
++++ b/src/shared/sysctl-util.c
+@@ -73,7 +73,7 @@ int sysctl_write_ip_property(int af, const char *ifname, const char *property, c
+
+ log_debug("Setting '%s' to '%s'", p, value);
+
+- return write_string_file(p, value, WRITE_STRING_FILE_VERIFY_ON_FAILURE | WRITE_STRING_FILE_DISABLE_BUFFER);
++ return write_string_file(p, value, WRITE_STRING_FILE_VERIFY_ON_FAILURE | 0);
+ }
+
+ int sysctl_read(const char *property, char **content) {
diff --git a/src/sleep/sleep.c b/src/sleep/sleep.c
-index 5b7984a..bf818aa 100644
+index 11aabaf..6aa5d37 100644
--- a/src/sleep/sleep.c
+++ b/src/sleep/sleep.c
-@@ -43,7 +43,7 @@ static int write_hibernate_location_info(void) {
+@@ -48,7 +48,7 @@ static int write_hibernate_location_info(void) {
/* if it's a swap partition, we just write the disk to /sys/power/resume */
if (streq(type, "partition")) {
@@ -419,7 +335,7 @@
if (r < 0)
return log_debug_errno(r, "Faileed to write partitoin device to /sys/power/resume: %m");
-@@ -79,12 +79,12 @@ static int write_hibernate_location_info(void) {
+@@ -84,12 +84,12 @@ static int write_hibernate_location_info(void) {
offset = fiemap->fm_extents[0].fe_physical / page_size();
xsprintf(offset_str, "%" PRIu64, offset);
@@ -434,7 +350,7 @@
if (r < 0)
return log_debug_errno(r, "Failed to write device '%s': %m", device_str);
-@@ -98,7 +98,7 @@ static int write_mode(char **modes) {
+@@ -103,7 +103,7 @@ static int write_mode(char **modes) {
STRV_FOREACH(mode, modes) {
int k;
@@ -443,7 +359,7 @@
if (k >= 0)
return 0;
-@@ -117,7 +117,7 @@ static int write_state(FILE **f, char **states) {
+@@ -122,7 +122,7 @@ static int write_state(FILE **f, char **states) {
STRV_FOREACH(state, states) {
int k;
@@ -452,7 +368,7 @@
if (k >= 0)
return 0;
log_debug_errno(k, "Failed to write '%s' to /sys/power/state: %m", *state);
-@@ -212,7 +212,7 @@ static int rtc_write_wake_alarm(uint64_t sec) {
+@@ -217,7 +217,7 @@ static int rtc_write_wake_alarm(uint64_t sec) {
xsprintf(buf, "%" PRIu64, sec);
@@ -462,10 +378,10 @@
return log_error_errno(r, "Failed to write '%s' to /sys/class/rtc/rtc0/wakealarm: %m", buf);
diff --git a/src/udev/udevadm-trigger.c b/src/udev/udevadm-trigger.c
-index 9532946..2e576bb 100644
+index b7dafb7..bab4907 100644
--- a/src/udev/udevadm-trigger.c
+++ b/src/udev/udevadm-trigger.c
-@@ -42,7 +42,7 @@ static int exec_list(sd_device_enumerator *e, const char *action, Set *settle_se
+@@ -43,7 +43,7 @@ static int exec_list(sd_device_enumerator *e, const char *action, Set *settle_se
if (!filename)
return log_oom();
@@ -475,10 +391,10 @@
log_debug_errno(r, "Failed to write '%s' to '%s', ignoring: %m", action, filename);
continue;
diff --git a/src/udev/udevd.c b/src/udev/udevd.c
-index 0303f36..687d009 100644
+index 140ec35..33063a9 100644
--- a/src/udev/udevd.c
+++ b/src/udev/udevd.c
-@@ -1218,7 +1218,7 @@ static int synthesize_change(sd_device *dev) {
+@@ -1185,7 +1185,7 @@ static int synthesize_change(sd_device *dev) {
*/
log_debug("Device '%s' is closed, synthesising 'change'", devname);
strscpyl(filename, sizeof(filename), syspath, "/uevent", NULL);
@@ -487,7 +403,7 @@
FOREACH_DEVICE(e, d) {
const char *t, *n, *s;
-@@ -1233,7 +1233,7 @@ static int synthesize_change(sd_device *dev) {
+@@ -1200,7 +1200,7 @@ static int synthesize_change(sd_device *dev) {
log_debug("Device '%s' is closed, synthesising partition '%s' 'change'", devname, n);
strscpyl(filename, sizeof(filename), s, "/uevent", NULL);
@@ -496,7 +412,7 @@
}
return 0;
-@@ -1241,7 +1241,7 @@ static int synthesize_change(sd_device *dev) {
+@@ -1208,7 +1208,7 @@ static int synthesize_change(sd_device *dev) {
log_debug("Device %s is closed, synthesising 'change'", devname);
strscpyl(filename, sizeof(filename), syspath, "/uevent", NULL);
@@ -506,10 +422,10 @@
return 0;
}
diff --git a/src/vconsole/vconsole-setup.c b/src/vconsole/vconsole-setup.c
-index ebdeba3..aa879e6 100644
+index 67dc2e4..01b83d0 100644
--- a/src/vconsole/vconsole-setup.c
+++ b/src/vconsole/vconsole-setup.c
-@@ -114,7 +114,7 @@ static int toggle_utf8(const char *name, int fd, bool utf8) {
+@@ -116,7 +116,7 @@ static int toggle_utf8(const char *name, int fd, bool utf8) {
static int toggle_utf8_sysfs(bool utf8) {
int r;
@@ -519,5 +435,5 @@
return log_warning_errno(r, "Failed to %s sysfs UTF-8 flag: %m", enable_disable(utf8));
--
-2.7.4
+2.11.0
diff --git a/poky/meta/recipes-core/systemd/systemd/0001-meson-declare-version.h-as-dep-for-various-targets-t.patch b/poky/meta/recipes-core/systemd/systemd/0001-meson-declare-version.h-as-dep-for-various-targets-t.patch
deleted file mode 100644
index 01936f2..0000000
--- a/poky/meta/recipes-core/systemd/systemd/0001-meson-declare-version.h-as-dep-for-various-targets-t.patch
+++ /dev/null
@@ -1,118 +0,0 @@
-From 9f86d8769ab830a724c84f849975b5595e26b47c Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= <zbyszek@in.waw.pl>
-Date: Sun, 24 Feb 2019 22:49:38 +0100
-Subject: [PATCH] meson: declare version.h as dep for various targets that
- include build.h
-
-Should fix #11565.
-
-Upstream-Status: Backport
-
-Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
----
- meson.build | 19 +++++++++++++------
- src/core/meson.build | 3 ++-
- src/udev/meson.build | 1 +
- 3 files changed, 16 insertions(+), 7 deletions(-)
-
-diff --git a/meson.build b/meson.build
-index 30df834..232f3e1 100644
---- a/meson.build
-+++ b/meson.build
-@@ -1637,7 +1637,8 @@ exe = executable('systemd-analyze',
- include_directories : includes,
- link_with : [libcore,
- libshared],
-- dependencies : [threads,
-+ dependencies : [versiondep,
-+ threads,
- librt,
- libseccomp,
- libselinux,
-@@ -2183,7 +2184,8 @@ if conf.get('ENABLE_IMPORTD') == 1
- systemd_pull_sources,
- include_directories : includes,
- link_with : [libshared],
-- dependencies : [libcurl,
-+ dependencies : [versiondep,
-+ libcurl,
- libz,
- libbzip2,
- libxz,
-@@ -2232,7 +2234,8 @@ if conf.get('ENABLE_REMOTE') == 1 and conf.get('HAVE_LIBCURL') == 1
- systemd_journal_upload_sources,
- include_directories : includes,
- link_with : [libshared],
-- dependencies : [threads,
-+ dependencies : [versiondep,
-+ threads,
- libcurl,
- libgnutls,
- libxz,
-@@ -2558,6 +2561,7 @@ exe = executable('systemd-stdio-bridge',
- 'src/stdio-bridge/stdio-bridge.c',
- include_directories : includes,
- link_with : [libshared],
-+ dependencies : [versiondep],
- install_rpath : rootlibexecdir,
- install : true)
- public_programs += exe
-@@ -2641,7 +2645,8 @@ exe = executable('systemd-udevd',
- link_with : [libudev_core,
- libsystemd_network,
- libudev_static],
-- dependencies : [threads,
-+ dependencies : [versiondep,
-+ threads,
- libkmod,
- libidn,
- libacl,
-@@ -2658,7 +2663,8 @@ exe = executable('udevadm',
- link_with : [libudev_core,
- libsystemd_network,
- libudev_static],
-- dependencies : [threads,
-+ dependencies : [versiondep,
-+ threads,
- libkmod,
- libidn,
- libacl,
-@@ -2798,7 +2804,8 @@ foreach tuple : tests
- sources,
- include_directories : incs,
- link_with : link_with,
-- dependencies : dependencies,
-+ dependencies : [versiondep,
-+ dependencies],
- c_args : defs,
- build_by_default : want_tests != 'false',
- install_rpath : rootlibexecdir,
-diff --git a/src/core/meson.build b/src/core/meson.build
-index 85021bd..88fb093 100644
---- a/src/core/meson.build
-+++ b/src/core/meson.build
-@@ -150,7 +150,8 @@ libcore = static_library(
- load_fragment_gperf_c,
- load_fragment_gperf_nulstr_c,
- include_directories : includes,
-- dependencies : [threads,
-+ dependencies : [versiondep,
-+ threads,
- librt,
- libseccomp,
- libpam,
-diff --git a/src/udev/meson.build b/src/udev/meson.build
-index 9d3f6d1..973a75e 100644
---- a/src/udev/meson.build
-+++ b/src/udev/meson.build
-@@ -180,6 +180,7 @@ foreach prog : [['ata_id/ata_id.c'],
- prog,
- include_directories : includes,
- c_args : ['-DLOG_REALM=LOG_REALM_UDEV'],
-+ dependencies : [versiondep],
- link_with : [libudev_static],
- install_rpath : udev_rpath,
- install : true,
---
-2.7.4
-
diff --git a/poky/meta/recipes-core/systemd/systemd/0001-meson-declare-version.h-as-dependency-for-systemd.patch b/poky/meta/recipes-core/systemd/systemd/0001-meson-declare-version.h-as-dependency-for-systemd.patch
deleted file mode 100644
index 8874dff..0000000
--- a/poky/meta/recipes-core/systemd/systemd/0001-meson-declare-version.h-as-dependency-for-systemd.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From e14d724a932a255eec4d60b08e128519c33e88ee Mon Sep 17 00:00:00 2001
-From: Michael Olbrich <m.olbrich@pengutronix.de>
-Date: Mon, 25 Feb 2019 11:59:23 +0100
-Subject: [PATCH] meson: declare version.h as dependency for systemd
-
-This is a followup to #11815 and adds the last missing dependency.
-With this #11565 is hopefully really fixed.
-
-Upstream-Status: Backport
-
-Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
----
- meson.build | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/meson.build b/meson.build
-index 232f3e1..70148be 100644
---- a/meson.build
-+++ b/meson.build
-@@ -1618,7 +1618,8 @@ executable('systemd',
- include_directories : includes,
- link_with : [libcore,
- libshared],
-- dependencies : [threads,
-+ dependencies : [versiondep,
-+ threads,
- librt,
- libseccomp,
- libselinux,
---
-2.7.4
-
diff --git a/poky/meta/recipes-core/systemd/systemd/0002-don-t-use-glibc-specific-qsort_r.patch b/poky/meta/recipes-core/systemd/systemd/0002-don-t-use-glibc-specific-qsort_r.patch
index 36e0699..c6213ab 100644
--- a/poky/meta/recipes-core/systemd/systemd/0002-don-t-use-glibc-specific-qsort_r.patch
+++ b/poky/meta/recipes-core/systemd/systemd/0002-don-t-use-glibc-specific-qsort_r.patch
@@ -8,20 +8,23 @@
Signed-off-by: Khem Raj <raj.khem@gmail.com>
[Rebased for v241]
Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
+[Rebased for v242]
+Signed-off-by: Andrej Valek <andrej.valek@siemens.com>
---
- src/basic/util.h | 14 --------------
+ src/basic/sort-util.h | 14 --------------
src/libsystemd/sd-hwdb/hwdb-util.c | 19 ++++++++++++++-----
src/shared/format-table.c | 36 ++++++++++++++++++++++++------------
3 files changed, 38 insertions(+), 31 deletions(-)
-diff --git a/src/basic/util.h b/src/basic/util.h
-index dc33d66..9f6a6ce 100644
---- a/src/basic/util.h
-+++ b/src/basic/util.h
-@@ -116,20 +116,6 @@ static inline void qsort_safe(void *base, size_t nmemb, size_t size, __compar_fn
+diff --git a/src/basic/sort-util.h b/src/basic/sort-util.h
+index e029f8646e..27d68b341c 100644
+--- a/src/basic/sort-util.h
++++ b/src/basic/sort-util.h
+@@ -54,17 +54,3 @@ static inline void qsort_safe(void *base, size_t nmemb, size_t size, __compar_fn
+ int (*_func_)(const typeof(p[0])*, const typeof(p[0])*) = func; \
qsort_safe((p), (n), sizeof((p)[0]), (__compar_fn_t) _func_); \
})
-
+-
-static inline void qsort_r_safe(void *base, size_t nmemb, size_t size, __compar_d_fn_t compar, void *userdata) {
- if (nmemb <= 1)
- return;
@@ -35,15 +38,11 @@
- int (*_func_)(const typeof(p[0])*, const typeof(p[0])*, typeof(userdata)) = func; \
- qsort_r_safe((p), (n), sizeof((p)[0]), (__compar_d_fn_t) _func_, userdata); \
- })
--
- /* Normal memcpy requires src to be nonnull. We do nothing if n is 0. */
- static inline void memcpy_safe(void *dst, const void *src, size_t n) {
- if (n == 0)
diff --git a/src/libsystemd/sd-hwdb/hwdb-util.c b/src/libsystemd/sd-hwdb/hwdb-util.c
-index f852967..b570ce1 100644
+index c83575c7c8..72f8f3a050 100644
--- a/src/libsystemd/sd-hwdb/hwdb-util.c
+++ b/src/libsystemd/sd-hwdb/hwdb-util.c
-@@ -126,9 +126,13 @@ static void trie_free(struct trie *trie) {
+@@ -128,9 +128,13 @@ static void trie_free(struct trie *trie) {
DEFINE_TRIVIAL_CLEANUP_FUNC(struct trie*, trie_free);
@@ -60,7 +59,7 @@
}
static int trie_node_add_value(struct trie *trie, struct trie_node *node,
-@@ -156,7 +160,10 @@ static int trie_node_add_value(struct trie *trie, struct trie_node *node,
+@@ -158,7 +162,10 @@ static int trie_node_add_value(struct trie *trie, struct trie_node *node,
.value_off = v,
};
@@ -72,7 +71,7 @@
if (val) {
/* At this point we have 2 identical properties on the same match-string.
* Since we process files in order, we just replace the previous value. */
-@@ -182,7 +189,9 @@ static int trie_node_add_value(struct trie *trie, struct trie_node *node,
+@@ -184,7 +191,9 @@ static int trie_node_add_value(struct trie *trie, struct trie_node *node,
.line_number = line_number,
};
node->values_count++;
@@ -84,10 +83,10 @@
}
diff --git a/src/shared/format-table.c b/src/shared/format-table.c
-index 7d52980..75dbfe1 100644
+index a5c0a99b08..d595cbe372 100644
--- a/src/shared/format-table.c
+++ b/src/shared/format-table.c
-@@ -848,31 +848,33 @@ static int cell_data_compare(TableData *a, size_t index_a, TableData *b, size_t
+@@ -850,31 +850,33 @@ static int cell_data_compare(TableData *a, size_t index_a, TableData *b, size_t
return CMP(index_a, index_b);
}
@@ -131,7 +130,7 @@
}
/* Order identical lines by the order there were originally added in */
-@@ -1105,7 +1107,12 @@ int table_print(Table *t, FILE *f) {
+@@ -1107,7 +1109,12 @@ int table_print(Table *t, FILE *f) {
for (i = 0; i < n_rows; i++)
sorted[i] = i * t->n_columns;
@@ -145,7 +144,7 @@
}
if (t->display_map)
-@@ -1532,7 +1539,12 @@ int table_to_json(Table *t, JsonVariant **ret) {
+@@ -1534,7 +1541,12 @@ int table_to_json(Table *t, JsonVariant **ret) {
for (i = 0; i < n_rows; i++)
sorted[i] = i * t->n_columns;
@@ -160,5 +159,5 @@
if (t->display_map)
--
-2.7.4
+2.11.0
diff --git a/poky/meta/recipes-core/systemd/systemd/0003-missing_type.h-add-__compare_fn_t-and-comparison_fn_.patch b/poky/meta/recipes-core/systemd/systemd/0003-missing_type.h-add-__compare_fn_t-and-comparison_fn_.patch
index 5246b4b..2e39f7a 100644
--- a/poky/meta/recipes-core/systemd/systemd/0003-missing_type.h-add-__compare_fn_t-and-comparison_fn_.patch
+++ b/poky/meta/recipes-core/systemd/systemd/0003-missing_type.h-add-__compare_fn_t-and-comparison_fn_.patch
@@ -9,14 +9,16 @@
Upstream-Status: Inappropriate [musl specific]
Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
+[Rebased for v242]
+Signed-off-by: Andrej Valek <andrej.valek@siemens.com>
---
src/basic/missing_type.h | 9 +++++++++
- src/basic/util.h | 1 +
+ src/basic/sort-util.h | 1 +
src/journal/catalog.c | 1 +
3 files changed, 11 insertions(+)
diff --git a/src/basic/missing_type.h b/src/basic/missing_type.h
-index bf8a6ca..c487e65 100644
+index bf8a6caa1b..2134fe5095 100644
--- a/src/basic/missing_type.h
+++ b/src/basic/missing_type.h
@@ -10,3 +10,12 @@
@@ -32,30 +34,30 @@
+#define __COMPAR_FN_T
+typedef int (*__compar_fn_t)(const void *, const void *);
+#endif
-diff --git a/src/basic/util.h b/src/basic/util.h
-index 9f6a6ce..2c5dc32 100644
---- a/src/basic/util.h
-+++ b/src/basic/util.h
-@@ -26,6 +26,7 @@
- #include "format-util.h"
+diff --git a/src/basic/sort-util.h b/src/basic/sort-util.h
+index e029f86..7247d40 100644
+--- a/src/basic/sort-util.h
++++ b/src/basic/sort-util.h
+@@ -4,6 +4,7 @@
+ #include <stdlib.h>
+
#include "macro.h"
- #include "time-util.h"
+#include "missing.h"
- size_t page_size(void) _pure_;
- #define PAGE_ALIGN(l) ALIGN_TO((l), page_size())
+ void *xbsearch_r(const void *key, const void *base, size_t nmemb, size_t size,
+ __compar_d_fn_t compar, void *arg);
diff --git a/src/journal/catalog.c b/src/journal/catalog.c
-index 4062f12..034e00c 100644
+index 7beffc1e1a..4818a2e5cc 100644
--- a/src/journal/catalog.c
+++ b/src/journal/catalog.c
-@@ -26,6 +26,7 @@
+@@ -29,6 +29,7 @@
+ #include "string-util.h"
#include "strv.h"
#include "tmpfile-util.h"
- #include "util.h"
+#include "missing.h"
const char * const catalog_file_dirs[] = {
"/usr/local/lib/systemd/catalog/",
--
-2.7.4
+2.11.0
diff --git a/poky/meta/recipes-core/systemd/systemd/0004-add-fallback-parse_printf_format-implementation.patch b/poky/meta/recipes-core/systemd/systemd/0004-add-fallback-parse_printf_format-implementation.patch
index bb738e2..fa8217e 100644
--- a/poky/meta/recipes-core/systemd/systemd/0004-add-fallback-parse_printf_format-implementation.patch
+++ b/poky/meta/recipes-core/systemd/systemd/0004-add-fallback-parse_printf_format-implementation.patch
@@ -20,10 +20,10 @@
create mode 100644 src/basic/parse-printf-format.h
diff --git a/meson.build b/meson.build
-index 3386546..44b24ee 100644
+index 79195c9748..0bffbf29c5 100644
--- a/meson.build
+++ b/meson.build
-@@ -667,6 +667,7 @@ foreach header : ['crypt.h',
+@@ -685,6 +685,7 @@ foreach header : ['crypt.h',
'linux/memfd.h',
'linux/vm_sockets.h',
'linux/can/vxcan.h',
@@ -32,10 +32,10 @@
'valgrind/memcheck.h',
'valgrind/valgrind.h',
diff --git a/src/basic/meson.build b/src/basic/meson.build
-index e5852f3..2192a0c 100644
+index 91e0df3d2f..a732b554da 100644
--- a/src/basic/meson.build
+++ b/src/basic/meson.build
-@@ -284,6 +284,11 @@ foreach item : [['af', af_list_txt, 'af', ''],
+@@ -298,6 +298,11 @@ foreach item : [['af', af_list_txt, 'af', ''],
endforeach
basic_sources += generated_gperf_headers
@@ -49,7 +49,7 @@
'gcrypt-util.h')
diff --git a/src/basic/parse-printf-format.c b/src/basic/parse-printf-format.c
new file mode 100644
-index 0000000..49437e5
+index 0000000000..49437e5445
--- /dev/null
+++ b/src/basic/parse-printf-format.c
@@ -0,0 +1,273 @@
@@ -328,7 +328,7 @@
+}
diff --git a/src/basic/parse-printf-format.h b/src/basic/parse-printf-format.h
new file mode 100644
-index 0000000..47be752
+index 0000000000..47be7522d7
--- /dev/null
+++ b/src/basic/parse-printf-format.h
@@ -0,0 +1,57 @@
@@ -390,7 +390,7 @@
+
+#endif /* HAVE_PRINTF_H */
diff --git a/src/basic/stdio-util.h b/src/basic/stdio-util.h
-index dc67b6e..cf8d514 100644
+index c3b9448d4f..2937aa13b1 100644
--- a/src/basic/stdio-util.h
+++ b/src/basic/stdio-util.h
@@ -1,13 +1,13 @@
@@ -403,13 +403,13 @@
#include <sys/types.h>
#include "macro.h"
- #include "util.h"
+ #include "memory-util.h"
+#include "parse-printf-format.h"
#define snprintf_ok(buf, len, fmt, ...) \
((size_t) snprintf(buf, len, fmt, __VA_ARGS__) < (len))
diff --git a/src/journal/journal-send.c b/src/journal/journal-send.c
-index 8618454..3fea912 100644
+index 5ef11fa1a4..6384ab620c 100644
--- a/src/journal/journal-send.c
+++ b/src/journal/journal-send.c
@@ -2,7 +2,6 @@
@@ -421,13 +421,13 @@
#include <sys/socket.h>
#include <sys/un.h>
@@ -21,6 +20,7 @@
+ #include "stdio-util.h"
#include "string-util.h"
#include "tmpfile-util.h"
- #include "util.h"
+#include "parse-printf-format.h"
#define SNDBUF_SIZE (8*1024*1024)
--
-2.7.4
+2.11.0
diff --git a/poky/meta/recipes-core/systemd/systemd/0005-rules-watch-metadata-changes-in-ide-devices.patch b/poky/meta/recipes-core/systemd/systemd/0005-rules-watch-metadata-changes-in-ide-devices.patch
index 2123052..5312083 100644
--- a/poky/meta/recipes-core/systemd/systemd/0005-rules-watch-metadata-changes-in-ide-devices.patch
+++ b/poky/meta/recipes-core/systemd/systemd/0005-rules-watch-metadata-changes-in-ide-devices.patch
@@ -38,8 +38,8 @@
ACTION=="change", SUBSYSTEM=="scsi", ENV{DEVTYPE}=="scsi_device", TEST=="block", ATTR{block/*/uevent}="change"
# watch metadata changes, caused by tools closing the device node which was opened for writing
--ACTION!="remove", SUBSYSTEM=="block", KERNEL=="loop*|nvme*|sd*|vd*|xvd*|pmem*|mmcblk*|dasd*", OPTIONS+="watch"
-+ACTION!="remove", SUBSYSTEM=="block", KERNEL=="loop*|nvme*|sd*|vd*|xvd*|pmem*|mmcblk*|dasd*|hd*", OPTIONS+="watch"
+-ACTION!="remove", SUBSYSTEM=="block", KERNEL=="loop*|nvme*|sd*|vd*|xvd*|pmem*|mmcblk*|dasd*|nbd*", OPTIONS+="watch"
++ACTION!="remove", SUBSYSTEM=="block", KERNEL=="loop*|nvme*|sd*|vd*|xvd*|pmem*|mmcblk*|dasd*|nbd*|hd*", OPTIONS+="watch"
--
2.7.4
diff --git a/poky/meta/recipes-core/systemd/systemd/0005-src-basic-missing.h-check-for-missing-strndupa.patch b/poky/meta/recipes-core/systemd/systemd/0005-src-basic-missing.h-check-for-missing-strndupa.patch
index f20897b..a2e25a9 100644
--- a/poky/meta/recipes-core/systemd/systemd/0005-src-basic-missing.h-check-for-missing-strndupa.patch
+++ b/poky/meta/recipes-core/systemd/systemd/0005-src-basic-missing.h-check-for-missing-strndupa.patch
@@ -9,21 +9,45 @@
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
+[Rebased for v242]
+Signed-off-by: Andrej Valek <andrej.valek@siemens.com>
---
- meson.build | 1 +
- src/basic/missing_stdlib.h | 12 ++++++++++++
- src/basic/mkdir.c | 1 +
- src/basic/parse-util.c | 1 +
- src/basic/procfs-util.c | 1 +
- src/shared/pager.c | 1 +
- src/shared/uid-range.c | 1 +
- 7 files changed, 18 insertions(+)
+ meson.build | 1 +
+ src/backlight/backlight.c | 1 +
+ src/basic/env-util.c | 1 +
+ src/basic/missing_stdlib.h | 12 ++++++++++++
+ src/basic/mkdir.c | 1 +
+ src/basic/parse-util.c | 1 +
+ src/basic/proc-cmdline.c | 1 +
+ src/basic/procfs-util.c | 1 +
+ src/basic/time-util.c | 1 +
+ src/core/dbus-cgroup.c | 1 +
+ src/core/dbus-util.c | 1 +
+ src/core/kmod-setup.c | 1 +
+ src/core/service.c | 1 +
+ src/journal/journalctl.c | 1 +
+ src/libsystemd/sd-bus/bus-message.c | 1 +
+ src/libsystemd/sd-bus/bus-objects.c | 1 +
+ src/libsystemd/sd-bus/test-bus-benchmark.c | 1 +
+ src/locale/keymap-util.c | 1 +
+ src/nspawn/nspawn-settings.c | 1 +
+ src/shared/dns-domain.c | 1 +
+ src/shared/journal-importer.c | 1 +
+ src/shared/logs-show.c | 1 +
+ src/shared/pager.c | 1 +
+ src/shared/path-lookup.c | 1 +
+ src/shared/uid-range.c | 1 +
+ src/socket-proxy/socket-proxyd.c | 1 +
+ src/test/test-hexdecoct.c | 1 +
+ src/udev/udev-builtin-path_id.c | 1 +
+ src/udev/udev-rules.c | 1 +
+ 29 files changed, 40 insertions(+)
diff --git a/meson.build b/meson.build
-index 44b24ee..70fb218 100644
+index 79195c9..80d9564 100644
--- a/meson.build
+++ b/meson.build
-@@ -558,6 +558,7 @@ foreach ident : [
+@@ -572,6 +572,7 @@ foreach ident : [
#include <unistd.h>'''],
['explicit_bzero' , '''#include <string.h>'''],
['reallocarray', '''#include <malloc.h>'''],
@@ -31,8 +55,32 @@
]
have = cc.has_function(ident[0], prefix : ident[1], args : '-D_GNU_SOURCE')
+diff --git a/src/backlight/backlight.c b/src/backlight/backlight.c
+index dfd6805..c2b2ace 100644
+--- a/src/backlight/backlight.c
++++ b/src/backlight/backlight.c
+@@ -17,6 +17,7 @@
+ #include "string-util.h"
+ #include "strv.h"
+ #include "util.h"
++#include "missing.h"
+
+ static int find_pci_or_platform_parent(sd_device *device, sd_device **ret) {
+ const char *subsystem, *sysname, *value;
+diff --git a/src/basic/env-util.c b/src/basic/env-util.c
+index fd449dc..e2b0722 100644
+--- a/src/basic/env-util.c
++++ b/src/basic/env-util.c
+@@ -16,6 +16,7 @@
+ #include "string-util.h"
+ #include "strv.h"
+ #include "utf8.h"
++#include "missing.h"
+
+ #define VALID_CHARS_ENV_NAME \
+ DIGITS LETTERS \
diff --git a/src/basic/missing_stdlib.h b/src/basic/missing_stdlib.h
-index c0ffe86..d50274b 100644
+index 188a8d4..1e16ec2 100644
--- a/src/basic/missing_stdlib.h
+++ b/src/basic/missing_stdlib.h
@@ -11,3 +11,15 @@
@@ -52,10 +100,10 @@
+ })
+#endif
diff --git a/src/basic/mkdir.c b/src/basic/mkdir.c
-index 4bb65d5..3038ab9 100644
+index 6b82eab..51c6b78 100644
--- a/src/basic/mkdir.c
+++ b/src/basic/mkdir.c
-@@ -13,6 +13,7 @@
+@@ -14,6 +14,7 @@
#include "stat-util.h"
#include "stdio-util.h"
#include "user-util.h"
@@ -75,6 +123,18 @@
int parse_boolean(const char *v) {
if (!v)
+diff --git a/src/basic/proc-cmdline.c b/src/basic/proc-cmdline.c
+index 1670001..b51feaa 100644
+--- a/src/basic/proc-cmdline.c
++++ b/src/basic/proc-cmdline.c
+@@ -15,6 +15,7 @@
+ #include "string-util.h"
+ #include "util.h"
+ #include "virt.h"
++#include "missing.h"
+
+ int proc_cmdline(char **ret) {
+ const char *e;
diff --git a/src/basic/procfs-util.c b/src/basic/procfs-util.c
index 7aaf95b..42ce53d 100644
--- a/src/basic/procfs-util.c
@@ -87,30 +147,258 @@
int procfs_tasks_get_limit(uint64_t *ret) {
_cleanup_free_ char *value = NULL;
-diff --git a/src/shared/pager.c b/src/shared/pager.c
-index bf2597e..fa9e321 100644
---- a/src/shared/pager.c
-+++ b/src/shared/pager.c
-@@ -24,6 +24,7 @@
+diff --git a/src/basic/time-util.c b/src/basic/time-util.c
+index daf952b..374b97f 100644
+--- a/src/basic/time-util.c
++++ b/src/basic/time-util.c
+@@ -28,6 +28,7 @@
#include "string-util.h"
#include "strv.h"
- #include "terminal-util.h"
+ #include "time-util.h"
+#include "missing.h"
- static pid_t pager_pid = 0;
+ static clockid_t map_clock_id(clockid_t c) {
-diff --git a/src/shared/uid-range.c b/src/shared/uid-range.c
-index 5fa7bd2..9c63b9e 100644
---- a/src/shared/uid-range.c
-+++ b/src/shared/uid-range.c
-@@ -9,6 +9,7 @@
- #include "uid-range.h"
+diff --git a/src/core/dbus-cgroup.c b/src/core/dbus-cgroup.c
+index 4615aea..bc1364f 100644
+--- a/src/core/dbus-cgroup.c
++++ b/src/core/dbus-cgroup.c
+@@ -15,6 +15,7 @@
+ #include "fileio.h"
+ #include "limits-util.h"
+ #include "path-util.h"
++#include "missing.h"
+
+ static BUS_DEFINE_PROPERTY_GET_ENUM(property_get_cgroup_device_policy, cgroup_device_policy, CGroupDevicePolicy);
+
+diff --git a/src/core/dbus-util.c b/src/core/dbus-util.c
+index f4fbb72..0a1e3b5 100644
+--- a/src/core/dbus-util.c
++++ b/src/core/dbus-util.c
+@@ -7,6 +7,7 @@
+ #include "unit-printf.h"
+ #include "user-util.h"
+ #include "unit.h"
++#include "missing.h"
+
+ int bus_property_get_triggered_unit(
+ sd_bus *bus,
+diff --git a/src/core/kmod-setup.c b/src/core/kmod-setup.c
+index a91cfeb..a459610 100644
+--- a/src/core/kmod-setup.c
++++ b/src/core/kmod-setup.c
+@@ -11,6 +11,7 @@
+ #include "kmod-setup.h"
+ #include "macro.h"
+ #include "string-util.h"
++#include "missing.h"
+
+ #if HAVE_KMOD
+ #include <libkmod.h>
+diff --git a/src/core/service.c b/src/core/service.c
+index 0289990..0e725b5 100644
+--- a/src/core/service.c
++++ b/src/core/service.c
+@@ -42,6 +42,7 @@
+ #include "unit.h"
+ #include "utf8.h"
+ #include "util.h"
++#include "missing.h"
+
+ static const UnitActiveState state_translation_table[_SERVICE_STATE_MAX] = {
+ [SERVICE_DEAD] = UNIT_INACTIVE,
+diff --git a/src/journal/journalctl.c b/src/journal/journalctl.c
+index 0048909..0e85eb7 100644
+--- a/src/journal/journalctl.c
++++ b/src/journal/journalctl.c
+@@ -67,6 +67,7 @@
+ #include "tmpfile-util.h"
+ #include "unit-name.h"
+ #include "user-util.h"
++#include "missing.h"
+
+ #define DEFAULT_FSS_INTERVAL_USEC (15*USEC_PER_MINUTE)
+
+diff --git a/src/libsystemd/sd-bus/bus-message.c b/src/libsystemd/sd-bus/bus-message.c
+index 427d42f..b050568 100644
+--- a/src/libsystemd/sd-bus/bus-message.c
++++ b/src/libsystemd/sd-bus/bus-message.c
+@@ -21,6 +21,7 @@
+ #include "strv.h"
+ #include "time-util.h"
+ #include "utf8.h"
++#include "missing.h"
+
+ static int message_append_basic(sd_bus_message *m, char type, const void *p, const void **stored);
+
+diff --git a/src/libsystemd/sd-bus/bus-objects.c b/src/libsystemd/sd-bus/bus-objects.c
+index d9fc256..e9c6932 100644
+--- a/src/libsystemd/sd-bus/bus-objects.c
++++ b/src/libsystemd/sd-bus/bus-objects.c
+@@ -13,6 +13,7 @@
+ #include "set.h"
+ #include "string-util.h"
+ #include "strv.h"
++#include "missing.h"
+
+ static int node_vtable_get_userdata(
+ sd_bus *bus,
+diff --git a/src/libsystemd/sd-bus/test-bus-benchmark.c b/src/libsystemd/sd-bus/test-bus-benchmark.c
+index 8de0a85..4fd0a2e 100644
+--- a/src/libsystemd/sd-bus/test-bus-benchmark.c
++++ b/src/libsystemd/sd-bus/test-bus-benchmark.c
+@@ -14,6 +14,7 @@
+ #include "missing_resource.h"
+ #include "time-util.h"
+ #include "util.h"
++#include "missing.h"
+
+ #define MAX_SIZE (2*1024*1024)
+
+diff --git a/src/locale/keymap-util.c b/src/locale/keymap-util.c
+index b8bd181..fe0cae0 100644
+--- a/src/locale/keymap-util.c
++++ b/src/locale/keymap-util.c
+@@ -23,6 +23,7 @@
+ #include "string-util.h"
+ #include "strv.h"
+ #include "tmpfile-util.h"
++#include "missing.h"
+
+ static bool startswith_comma(const char *s, const char *prefix) {
+ s = startswith(s, prefix);
+diff --git a/src/nspawn/nspawn-settings.c b/src/nspawn/nspawn-settings.c
+index 476cb07..91e28de 100644
+--- a/src/nspawn/nspawn-settings.c
++++ b/src/nspawn/nspawn-settings.c
+@@ -16,6 +16,7 @@
+ #include "strv.h"
#include "user-util.h"
#include "util.h"
+#include "missing.h"
+ Settings *settings_new(void) {
+ Settings *s;
+diff --git a/src/shared/dns-domain.c b/src/shared/dns-domain.c
+index 4b31cb3..989ebf3 100644
+--- a/src/shared/dns-domain.c
++++ b/src/shared/dns-domain.c
+@@ -24,6 +24,7 @@
+ #include "string-util.h"
+ #include "strv.h"
+ #include "utf8.h"
++#include "missing.h"
+
+ int dns_label_unescape(const char **name, char *dest, size_t sz, DNSLabelFlags flags) {
+ const char *n;
+diff --git a/src/shared/journal-importer.c b/src/shared/journal-importer.c
+index 8638cd3..d03774a 100644
+--- a/src/shared/journal-importer.c
++++ b/src/shared/journal-importer.c
+@@ -13,6 +13,7 @@
+ #include "parse-util.h"
+ #include "string-util.h"
+ #include "unaligned.h"
++#include "missing.h"
+
+ enum {
+ IMPORTER_STATE_LINE = 0, /* waiting to read, or reading line */
+diff --git a/src/shared/logs-show.c b/src/shared/logs-show.c
+index 5fb736f..19cb165 100644
+--- a/src/shared/logs-show.c
++++ b/src/shared/logs-show.c
+@@ -38,6 +38,7 @@
+ #include "time-util.h"
+ #include "utf8.h"
+ #include "util.h"
++#include "missing.h"
+
+ /* up to three lines (each up to 100 characters) or 300 characters, whichever is less */
+ #define PRINT_LINE_THRESHOLD 3
+diff --git a/src/shared/pager.c b/src/shared/pager.c
+index 2abb0f6..a00c95f 100644
+--- a/src/shared/pager.c
++++ b/src/shared/pager.c
+@@ -25,6 +25,7 @@
+ #include "strv.h"
+ #include "terminal-util.h"
+ #include "util.h"
++#include "missing.h"
+
+ static pid_t pager_pid = 0;
+
+diff --git a/src/shared/path-lookup.c b/src/shared/path-lookup.c
+index 442fde7..0eb1188 100644
+--- a/src/shared/path-lookup.c
++++ b/src/shared/path-lookup.c
+@@ -20,6 +20,7 @@
+ #include "tmpfile-util.h"
+ #include "user-util.h"
+ #include "util.h"
++#include "missing.h"
+
+ int xdg_user_runtime_dir(char **ret, const char *suffix) {
+ const char *e;
+diff --git a/src/shared/uid-range.c b/src/shared/uid-range.c
+index 7cb7d8a..8b12b91 100644
+--- a/src/shared/uid-range.c
++++ b/src/shared/uid-range.c
+@@ -9,6 +9,7 @@
+ #include "sort-util.h"
+ #include "uid-range.h"
+ #include "user-util.h"
++#include "missing.h"
+
static bool uid_range_intersect(UidRange *range, uid_t start, uid_t nr) {
assert(range);
+diff --git a/src/socket-proxy/socket-proxyd.c b/src/socket-proxy/socket-proxyd.c
+index abbbc9f..6179b58 100644
+--- a/src/socket-proxy/socket-proxyd.c
++++ b/src/socket-proxy/socket-proxyd.c
+@@ -28,6 +28,7 @@
+ #include "socket-util.h"
+ #include "string-util.h"
+ #include "util.h"
++#include "missing.h"
+
+ #define BUFFER_SIZE (256 * 1024)
+
+diff --git a/src/test/test-hexdecoct.c b/src/test/test-hexdecoct.c
+index 5221742..a05e778 100644
+--- a/src/test/test-hexdecoct.c
++++ b/src/test/test-hexdecoct.c
+@@ -6,6 +6,7 @@
+ #include "hexdecoct.h"
+ #include "macro.h"
+ #include "string-util.h"
++#include "missing.h"
+
+ static void test_hexchar(void) {
+ assert_se(hexchar(0xa) == 'a');
+diff --git a/src/udev/udev-builtin-path_id.c b/src/udev/udev-builtin-path_id.c
+index 7ce1c56..cc19b8e 100644
+--- a/src/udev/udev-builtin-path_id.c
++++ b/src/udev/udev-builtin-path_id.c
+@@ -23,6 +23,7 @@
+ #include "strv.h"
+ #include "sysexits.h"
+ #include "udev-builtin.h"
++#include "missing.h"
+
+ _printf_(2,3)
+ static void path_prepend(char **path, const char *fmt, ...) {
+diff --git a/src/udev/udev-rules.c b/src/udev/udev-rules.c
+index ee87d7c..9aced10 100644
+--- a/src/udev/udev-rules.c
++++ b/src/udev/udev-rules.c
+@@ -40,6 +40,7 @@
+ #include "udev.h"
+ #include "user-util.h"
+ #include "util.h"
++#include "missing.h"
+
+ #define PREALLOC_TOKEN 2048
+ #define RULES_DIRS (const char* const*) CONF_PATHS_STRV("udev/rules.d")
--
-2.7.4
+2.11.0
diff --git a/poky/meta/recipes-core/systemd/systemd/0006-network-remove-redunant-link-name-in-message.patch b/poky/meta/recipes-core/systemd/systemd/0006-network-remove-redunant-link-name-in-message.patch
new file mode 100644
index 0000000..33f482a
--- /dev/null
+++ b/poky/meta/recipes-core/systemd/systemd/0006-network-remove-redunant-link-name-in-message.patch
@@ -0,0 +1,41 @@
+From 9e6940858c7dbdd56b297bdf49f58d623e3430b7 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= <zbyszek@in.waw.pl>
+Date: Tue, 7 May 2019 13:46:55 +0200
+Subject: [PATCH] network: remove redunant link name in message
+
+Fixes #12454.
+
+gcc was complaining that the link->ifname argument is NULL. Adding
+assert(link->ifname) right before the call has no effect. It seems that
+gcc is confused by the fact that log_link_warning_errno() internally
+calls log_object(), with link->ifname passed as the object. log_object()
+is also a macro and is does a check whether the passed object is NULL.
+So we have a check if something is NULL right next an unconditional use
+of it where it cannot be NULL. I think it's a bug in gcc.
+
+Anyway, we don't need to use link->ifname here. log_object() already prepends
+the object name to the message.
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+Upstream-Status: backport [https://github.com/systemd/systemd/commit/c98b3545008d8e984ab456dcf79787418fcbfe13]
+---
+ src/network/networkd-link.c | 3 +--
+ 1 file changed, 1 insertion(+), 2 deletions(-)
+
+diff --git a/src/network/networkd-link.c b/src/network/networkd-link.c
+index 3e334c8d29..a158c01bbd 100644
+--- a/src/network/networkd-link.c
++++ b/src/network/networkd-link.c
+@@ -321,8 +321,7 @@ static int link_enable_ipv6(Link *link) {
+
+ r = sysctl_write_ip_property_boolean(AF_INET6, link->ifname, "disable_ipv6", disabled);
+ if (r < 0)
+- log_link_warning_errno(link, r, "Cannot %s IPv6 for interface %s: %m",
+- enable_disable(!disabled), link->ifname);
++ log_link_warning_errno(link, r, "Cannot %s IPv6: %m", enable_disable(!disabled));
+ else
+ log_link_info(link, "IPv6 successfully %sd", enable_disable(!disabled));
+
+--
+2.21.0
+
diff --git a/poky/meta/recipes-core/systemd/systemd/0007-don-t-fail-if-GLOB_BRACE-and-GLOB_ALTDIRFUNC-is-not.patch b/poky/meta/recipes-core/systemd/systemd/0007-don-t-fail-if-GLOB_BRACE-and-GLOB_ALTDIRFUNC-is-not.patch
index 765e476..aa2b4cb 100644
--- a/poky/meta/recipes-core/systemd/systemd/0007-don-t-fail-if-GLOB_BRACE-and-GLOB_ALTDIRFUNC-is-not.patch
+++ b/poky/meta/recipes-core/systemd/systemd/0007-don-t-fail-if-GLOB_BRACE-and-GLOB_ALTDIRFUNC-is-not.patch
@@ -16,28 +16,29 @@
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
---
- src/basic/glob-util.c | 12 +++++++++++-
- src/test/test-glob-util.c | 17 +++++++++++++++--
- src/tmpfiles/tmpfiles.c | 9 +++++++++
- 3 files changed, 35 insertions(+), 3 deletions(-)
+ src/basic/glob-util.c | 13 ++++++++++++-
+ src/test/test-glob-util.c | 16 ++++++++++++++++
+ src/tmpfiles/tmpfiles.c | 10 ++++++++++
+ 3 files changed, 38 insertions(+), 1 deletion(-)
diff --git a/src/basic/glob-util.c b/src/basic/glob-util.c
-index 9fac676..962d8b9 100644
+index 32c53f8..ae358d9 100644
--- a/src/basic/glob-util.c
+++ b/src/basic/glob-util.c
-@@ -10,6 +10,11 @@
- #include "macro.h"
+@@ -13,6 +13,12 @@
#include "path-util.h"
#include "strv.h"
+
+/* Don't fail if the standard library
+ * doesn't provide brace expansion */
+#ifndef GLOB_BRACE
+#define GLOB_BRACE 0
+#endif
-
++
static void closedir_wrapper(void* v) {
(void) closedir(v);
-@@ -18,6 +23,7 @@ static void closedir_wrapper(void* v) {
+ }
+@@ -20,6 +26,7 @@ static void closedir_wrapper(void* v) {
int safe_glob(const char *path, int flags, glob_t *pglob) {
int k;
@@ -45,7 +46,7 @@
/* We want to set GLOB_ALTDIRFUNC ourselves, don't allow it to be set. */
assert(!(flags & GLOB_ALTDIRFUNC));
-@@ -31,10 +37,14 @@ int safe_glob(const char *path, int flags, glob_t *pglob) {
+@@ -33,10 +40,14 @@ int safe_glob(const char *path, int flags, glob_t *pglob) {
pglob->gl_lstat = lstat;
if (!pglob->gl_stat)
pglob->gl_stat = stat;
@@ -62,26 +63,25 @@
return -ENOENT;
if (k == GLOB_NOSPACE)
diff --git a/src/test/test-glob-util.c b/src/test/test-glob-util.c
-index b4f4144..955b3ba 100644
+index b4f4144..f0d474e 100644
--- a/src/test/test-glob-util.c
+++ b/src/test/test-glob-util.c
-@@ -12,6 +12,11 @@
- #include "macro.h"
+@@ -13,6 +13,12 @@
#include "rm-rf.h"
#include "tmpfile-util.h"
+
+/* Don't fail if the standard library
+ * doesn't provide brace expansion */
+#ifndef GLOB_BRACE
+#define GLOB_BRACE 0
+#endif
-
++
static void test_glob_exists(void) {
char name[] = "/tmp/test-glob_exists.XXXXXX";
-@@ -38,25 +43,33 @@ static void closedir_wrapper(void* v) {
- static void test_glob_no_dot(void) {
- char template[] = "/tmp/test-glob-util.XXXXXXX";
+ int fd = -1;
+@@ -40,11 +46,13 @@ static void test_glob_no_dot(void) {
const char *fn;
--
+
_cleanup_globfree_ glob_t g = {
+#ifdef GLOB_ALTDIRFUNC
.gl_closedir = closedir_wrapper,
@@ -91,9 +91,9 @@
.gl_stat = stat,
+#endif
};
--
- int r;
+ int r;
+@@ -52,11 +60,19 @@ static void test_glob_no_dot(void) {
assert_se(mkdtemp(template));
fn = strjoina(template, "/*");
@@ -114,22 +114,23 @@
(void) rm_rf(template, REMOVE_ROOT|REMOVE_PHYSICAL);
diff --git a/src/tmpfiles/tmpfiles.c b/src/tmpfiles/tmpfiles.c
-index b66765b..11dbbf4 100644
+index d9d1cc1..477d1e3 100644
--- a/src/tmpfiles/tmpfiles.c
+++ b/src/tmpfiles/tmpfiles.c
-@@ -60,6 +60,11 @@
+@@ -63,6 +63,12 @@
#include "umask-util.h"
#include "user-util.h"
- #include "util.h"
+
+/* Don't fail if the standard library
+ * doesn't provide brace expansion */
+#ifndef GLOB_BRACE
+#define GLOB_BRACE 0
+#endif
-
++
/* This reads all files listed in /etc/tmpfiles.d/?*.conf and creates
* them in the file system. This is intended to be used to create
-@@ -1853,7 +1858,9 @@ finish:
+ * properly owned directories beneath /tmp, /var/tmp, /run, which are
+@@ -1839,7 +1845,9 @@ finish:
static int glob_item(Item *i, action_t action) {
_cleanup_globfree_ glob_t g = {
@@ -139,7 +140,7 @@
};
int r = 0, k;
char **fn;
-@@ -1873,7 +1880,9 @@ static int glob_item(Item *i, action_t action) {
+@@ -1859,7 +1867,9 @@ static int glob_item(Item *i, action_t action) {
static int glob_item_recursively(Item *i, fdaction_t action) {
_cleanup_globfree_ glob_t g = {
@@ -150,5 +151,5 @@
int r = 0, k;
char **fn;
--
-2.7.4
+2.11.0
diff --git a/poky/meta/recipes-core/systemd/systemd/0009-socket-util-don-t-fail-if-libc-doesn-t-support-IDN.patch b/poky/meta/recipes-core/systemd/systemd/0009-socket-util-don-t-fail-if-libc-doesn-t-support-IDN.patch
index 57cb5f3..1dedbd3 100644
--- a/poky/meta/recipes-core/systemd/systemd/0009-socket-util-don-t-fail-if-libc-doesn-t-support-IDN.patch
+++ b/poky/meta/recipes-core/systemd/systemd/0009-socket-util-don-t-fail-if-libc-doesn-t-support-IDN.patch
@@ -13,12 +13,12 @@
1 file changed, 10 insertions(+)
diff --git a/src/basic/socket-util.c b/src/basic/socket-util.c
-index 91bf801..c445fea 100644
+index 904bafb..a7a009d 100644
--- a/src/basic/socket-util.c
+++ b/src/basic/socket-util.c
-@@ -33,6 +33,16 @@
+@@ -34,6 +34,16 @@
+ #include "user-util.h"
#include "utf8.h"
- #include "util.h"
+/* Don't fail if the standard library
+ * doesn't support IDN */
@@ -34,5 +34,5 @@
# define IDN_FLAGS NI_IDN
#else
--
-2.7.4
+2.11.0
diff --git a/poky/meta/recipes-core/systemd/systemd/0013-test-hexdecoct.c-Include-missing.h-for-strndupa.patch b/poky/meta/recipes-core/systemd/systemd/0013-test-hexdecoct.c-Include-missing.h-for-strndupa.patch
deleted file mode 100644
index 874c17c..0000000
--- a/poky/meta/recipes-core/systemd/systemd/0013-test-hexdecoct.c-Include-missing.h-for-strndupa.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From e5a48f84db58ffb9128383eaefc123b5829523e5 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Mon, 23 Oct 2017 12:33:22 -0700
-Subject: [PATCH 13/24] test-hexdecoct.c: Include missing.h for strndupa
-
-Upstream-Status: Inappropriate [musl specific]
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
----
- src/test/test-hexdecoct.c | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/src/test/test-hexdecoct.c b/src/test/test-hexdecoct.c
-index 5221742..a05e778 100644
---- a/src/test/test-hexdecoct.c
-+++ b/src/test/test-hexdecoct.c
-@@ -6,6 +6,7 @@
- #include "hexdecoct.h"
- #include "macro.h"
- #include "string-util.h"
-+#include "missing.h"
-
- static void test_hexchar(void) {
- assert_se(hexchar(0xa) == 'a');
---
-2.7.4
-
diff --git a/poky/meta/recipes-core/systemd/systemd/0017-Do-not-disable-buffering-when-writing-to-oom_score_a.patch b/poky/meta/recipes-core/systemd/systemd/0017-Do-not-disable-buffering-when-writing-to-oom_score_a.patch
index 05e6ded..b54635e 100644
--- a/poky/meta/recipes-core/systemd/systemd/0017-Do-not-disable-buffering-when-writing-to-oom_score_a.patch
+++ b/poky/meta/recipes-core/systemd/systemd/0017-Do-not-disable-buffering-when-writing-to-oom_score_a.patch
@@ -22,10 +22,10 @@
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/basic/process-util.c b/src/basic/process-util.c
-index aec2daf..7b4aabf 100644
+index f773eea..79af915 100644
--- a/src/basic/process-util.c
+++ b/src/basic/process-util.c
-@@ -1538,7 +1538,7 @@ int set_oom_score_adjust(int value) {
+@@ -1546,7 +1546,7 @@ int set_oom_score_adjust(int value) {
sprintf(t, "%i", value);
return write_string_file("/proc/self/oom_score_adj", t,
@@ -33,7 +33,8 @@
+ WRITE_STRING_FILE_VERIFY_ON_FAILURE);
}
- static const char *const ioprio_class_table[] = {
+ int cpus_in_affinity_mask(void) {
--
-2.7.4
+2.11.0
+
diff --git a/poky/meta/recipes-core/systemd/systemd/0021-avoid-redefinition-of-prctl_mm_map-structure.patch b/poky/meta/recipes-core/systemd/systemd/0021-avoid-redefinition-of-prctl_mm_map-structure.patch
index a8c53c9..cdddf83 100644
--- a/poky/meta/recipes-core/systemd/systemd/0021-avoid-redefinition-of-prctl_mm_map-structure.patch
+++ b/poky/meta/recipes-core/systemd/systemd/0021-avoid-redefinition-of-prctl_mm_map-structure.patch
@@ -11,8 +11,7 @@
Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
---
src/basic/missing_prctl.h | 2 ++
- src/basic/util.h | 3 ++-
- 2 files changed, 4 insertions(+), 1 deletion(-)
+ 1 file changed, 2 insertions(+)
diff --git a/src/basic/missing_prctl.h b/src/basic/missing_prctl.h
index f80cd17..47e4893 100644
@@ -28,20 +27,6 @@
/* 58319057b7847667f0c9585b9de0e8932b0fdb08 (4.3) */
#ifndef PR_CAP_AMBIENT
-diff --git a/src/basic/util.h b/src/basic/util.h
-index 2c5dc32..f721184 100644
---- a/src/basic/util.h
-+++ b/src/basic/util.h
-@@ -26,7 +26,8 @@
- #include "format-util.h"
- #include "macro.h"
- #include "time-util.h"
--#include "missing.h"
-+#include "missing_stdlib.h"
-+#include "missing_type.h"
-
- size_t page_size(void) _pure_;
- #define PAGE_ALIGN(l) ALIGN_TO((l), page_size())
--
-2.7.4
+2.11.0
diff --git a/poky/meta/recipes-core/systemd/systemd/0024-test-json.c-define-M_PIl.patch b/poky/meta/recipes-core/systemd/systemd/0024-test-json.c-define-M_PIl.patch
index c2ae2bb..0e5629d 100644
--- a/poky/meta/recipes-core/systemd/systemd/0024-test-json.c-define-M_PIl.patch
+++ b/poky/meta/recipes-core/systemd/systemd/0024-test-json.c-define-M_PIl.patch
@@ -14,11 +14,11 @@
1 file changed, 4 insertions(+)
diff --git a/src/test/test-json.c b/src/test/test-json.c
-index fdf1b4f..fa541f8 100644
+index 9b8a2a9..efc746c 100644
--- a/src/test/test-json.c
+++ b/src/test/test-json.c
-@@ -10,6 +10,10 @@
- #include "strv.h"
+@@ -11,6 +11,10 @@
+ #include "tests.h"
#include "util.h"
+#ifndef M_PIl
@@ -29,5 +29,5 @@
unsigned line = 0, column = 0;
void *state = NULL;
--
-2.7.4
+2.11.0
diff --git a/poky/meta/recipes-core/systemd/systemd/0025-fs-utilh-add-missing-sys-stat-include.patch b/poky/meta/recipes-core/systemd/systemd/0025-fs-utilh-add-missing-sys-stat-include.patch
new file mode 100644
index 0000000..bae9d3e
--- /dev/null
+++ b/poky/meta/recipes-core/systemd/systemd/0025-fs-utilh-add-missing-sys-stat-include.patch
@@ -0,0 +1,30 @@
+From 2560a6b7b9adc5bd5dec0f87c2e3025ced8a2af2 Mon Sep 17 00:00:00 2001
+From: Andrej Valek <andrej.valek@siemens.com>
+Date: Thu, 18 Apr 2019 10:47:11 +0200
+Subject: [PATCH] fs-utilh: add missing sys/stat include
+
+fix error:
+| error: passing argument 5 of 'chase_symlinks_and_stat' from incompatible pointer type [-Werror=incompatible-pointer-types]
+
+Signed-off-by: Andrej Valek <andrej.valek@siemens.com>
+
+Upstream-Status: Pending
+---
+ src/basic/fs-util.h | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/src/basic/fs-util.h b/src/basic/fs-util.h
+index b965120..e2fdfff 100644
+--- a/src/basic/fs-util.h
++++ b/src/basic/fs-util.h
+@@ -8,6 +8,7 @@
+ #include <stdint.h>
+ #include <sys/inotify.h>
+ #include <sys/types.h>
++#include <sys/stat.h>
+ #include <unistd.h>
+
+ #include "errno-util.h"
+--
+2.11.0
+
diff --git a/poky/meta/recipes-core/systemd/systemd/99-default.preset b/poky/meta/recipes-core/systemd/systemd/99-default.preset
new file mode 100644
index 0000000..1f29b50
--- /dev/null
+++ b/poky/meta/recipes-core/systemd/systemd/99-default.preset
@@ -0,0 +1 @@
+disable *
diff --git a/poky/meta/recipes-core/systemd/systemd_241.bb b/poky/meta/recipes-core/systemd/systemd_241.bb
deleted file mode 100644
index e61e07e..0000000
--- a/poky/meta/recipes-core/systemd/systemd_241.bb
+++ /dev/null
@@ -1,652 +0,0 @@
-require systemd.inc
-
-PROVIDES = "udev"
-
-PE = "1"
-
-DEPENDS = "intltool-native gperf-native libcap util-linux"
-
-SECTION = "base/shell"
-
-inherit useradd pkgconfig meson perlnative update-rc.d update-alternatives qemu systemd gettext bash-completion manpages distro_features_check
-
-# As this recipe builds udev, respect systemd being in DISTRO_FEATURES so
-# that we don't build both udev and systemd in world builds.
-REQUIRED_DISTRO_FEATURES = "systemd"
-
-SRC_URI += "file://touchscreen.rules \
- file://00-create-volatile.conf \
- file://init \
- file://0001-binfmt-Don-t-install-dependency-links-at-install-tim.patch \
- file://0002-use-lnr-wrapper-instead-of-looking-for-relative-opti.patch \
- file://0003-implment-systemd-sysv-install-for-OE.patch \
- file://0004-rules-whitelist-hd-devices.patch \
- file://0005-rules-watch-metadata-changes-in-ide-devices.patch \
- file://0001-meson-declare-version.h-as-dep-for-various-targets-t.patch \
- file://0001-meson-declare-version.h-as-dependency-for-systemd.patch \
- "
-
-# patches needed by musl
-SRC_URI += "${SRC_URI_MUSL}"
-SRC_URI_MUSL = "file://0001-Use-getenv-when-secure-versions-are-not-available.patch \
- file://0002-don-t-use-glibc-specific-qsort_r.patch \
- file://0003-missing_type.h-add-__compare_fn_t-and-comparison_fn_.patch \
- file://0004-add-fallback-parse_printf_format-implementation.patch \
- file://0005-src-basic-missing.h-check-for-missing-strndupa.patch \
- file://0006-Include-netinet-if_ether.h.patch \
- file://0007-don-t-fail-if-GLOB_BRACE-and-GLOB_ALTDIRFUNC-is-not.patch \
- file://0008-add-missing-FTW_-macros-for-musl.patch \
- file://0009-socket-util-don-t-fail-if-libc-doesn-t-support-IDN.patch \
- file://0010-fix-missing-of-__register_atfork-for-non-glibc-build.patch \
- file://0011-Use-uintmax_t-for-handling-rlim_t.patch \
- file://0012-fix-missing-ULONG_LONG_MAX-definition-in-case-of-mus.patch \
- file://0013-test-hexdecoct.c-Include-missing.h-for-strndupa.patch \
- file://0014-test-sizeof.c-Disable-tests-for-missing-typedefs-in-.patch \
- file://0015-don-t-pass-AT_SYMLINK_NOFOLLOW-flag-to-faccessat.patch \
- file://0016-Define-glibc-compatible-basename-for-non-glibc-syste.patch \
- file://0017-Do-not-disable-buffering-when-writing-to-oom_score_a.patch \
- file://0018-distinguish-XSI-compliant-strerror_r-from-GNU-specif.patch \
- file://0019-Hide-__start_BUS_ERROR_MAP-and-__stop_BUS_ERROR_MAP.patch \
- file://0020-missing_type.h-add-__compar_d_fn_t-definition.patch \
- file://0021-avoid-redefinition-of-prctl_mm_map-structure.patch \
- file://0022-include-sys-wait.h-to-avoid-compile-failure.patch \
- file://0023-socket-util.h-include-string.h.patch \
- file://0024-test-json.c-define-M_PIl.patch \
- file://0001-do-not-disable-buffer-in-writing-files.patch \
- "
-
-PAM_PLUGINS = " \
- pam-plugin-unix \
- pam-plugin-loginuid \
- pam-plugin-keyinit \
-"
-
-PACKAGECONFIG ??= " \
- ${@bb.utils.filter('DISTRO_FEATURES', 'efi ldconfig pam selinux usrmerge polkit', d)} \
- ${@bb.utils.contains('DISTRO_FEATURES', 'wifi', 'rfkill', '', d)} \
- ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'xkbcommon', '', d)} \
- acl \
- backlight \
- binfmt \
- firstboot \
- gshadow \
- hibernate \
- hostnamed \
- ima \
- kmod \
- localed \
- logind \
- machined \
- myhostname \
- networkd \
- nss \
- nss-mymachines \
- nss-resolve \
- quotacheck \
- randomseed \
- resolved \
- smack \
- sysusers \
- timedated \
- timesyncd \
- utmp \
- vconsole \
- xz \
-"
-
-PACKAGECONFIG_remove_libc-musl = " \
- gshadow \
- localed \
- myhostname \
- nss \
- nss-mymachines \
- nss-resolve \
- resolved \
- smack \
- sysusers \
- utmp \
-"
-
-# Use the upstream systemd serial-getty@.service and rely on
-# systemd-getty-generator instead of using the OE-core specific
-# systemd-serialgetty.bb - not enabled by default.
-PACKAGECONFIG[serial-getty-generator] = ""
-
-PACKAGECONFIG[acl] = "-Dacl=true,-Dacl=false,acl"
-PACKAGECONFIG[audit] = "-Daudit=true,-Daudit=false,audit"
-PACKAGECONFIG[backlight] = "-Dbacklight=true,-Dbacklight=false"
-PACKAGECONFIG[binfmt] = "-Dbinfmt=true,-Dbinfmt=false"
-PACKAGECONFIG[bzip2] = "-Dbzip2=true,-Dbzip2=false,bzip2"
-PACKAGECONFIG[coredump] = "-Dcoredump=true,-Dcoredump=false"
-PACKAGECONFIG[cryptsetup] = "-Dlibcryptsetup=true,-Dlibcryptsetup=false,cryptsetup"
-PACKAGECONFIG[dbus] = "-Ddbus=true,-Ddbus=false,dbus"
-PACKAGECONFIG[efi] = "-Defi=true,-Defi=false"
-PACKAGECONFIG[elfutils] = "-Delfutils=true,-Delfutils=false,elfutils"
-PACKAGECONFIG[firstboot] = "-Dfirstboot=true,-Dfirstboot=false"
-# Sign the journal for anti-tampering
-PACKAGECONFIG[gcrypt] = "-Dgcrypt=true,-Dgcrypt=false,libgcrypt"
-PACKAGECONFIG[gnutls] = "-Dgnutls=true,-Dgnutls=false,gnutls"
-PACKAGECONFIG[gshadow] = "-Dgshadow=true,-Dgshadow=false"
-PACKAGECONFIG[hibernate] = "-Dhibernate=true,-Dhibernate=false"
-PACKAGECONFIG[hostnamed] = "-Dhostnamed=true,-Dhostnamed=false"
-PACKAGECONFIG[ima] = "-Dima=true,-Dima=false"
-# importd requires curl/xz/zlib/bzip2/gcrypt
-PACKAGECONFIG[importd] = "-Dimportd=true,-Dimportd=false"
-# Update NAT firewall rules
-PACKAGECONFIG[iptc] = "-Dlibiptc=true,-Dlibiptc=false,iptables"
-PACKAGECONFIG[journal-upload] = "-Dlibcurl=true,-Dlibcurl=false,curl"
-PACKAGECONFIG[kmod] = "-Dkmod=true,-Dkmod=false,kmod"
-PACKAGECONFIG[ldconfig] = "-Dldconfig=true,-Dldconfig=false"
-PACKAGECONFIG[libidn] = "-Dlibidn=true,-Dlibidn=false,libidn"
-PACKAGECONFIG[localed] = "-Dlocaled=true,-Dlocaled=false"
-PACKAGECONFIG[logind] = "-Dlogind=true,-Dlogind=false"
-PACKAGECONFIG[lz4] = "-Dlz4=true,-Dlz4=false,lz4"
-PACKAGECONFIG[machined] = "-Dmachined=true,-Dmachined=false"
-PACKAGECONFIG[manpages] = "-Dman=true,-Dman=false,libxslt-native xmlto-native docbook-xml-dtd4-native docbook-xsl-stylesheets-native"
-PACKAGECONFIG[microhttpd] = "-Dmicrohttpd=true,-Dmicrohttpd=false,libmicrohttpd"
-PACKAGECONFIG[myhostname] = "-Dnss-myhostname=true,-Dnss-myhostname=false"
-PACKAGECONFIG[networkd] = "-Dnetworkd=true,-Dnetworkd=false"
-PACKAGECONFIG[nss] = "-Dnss-systemd=true,-Dnss-systemd=false"
-PACKAGECONFIG[nss-mymachines] = "-Dnss-mymachines=true,-Dnss-mymachines=false"
-PACKAGECONFIG[nss-resolve] = "-Dnss-resolve=true,-Dnss-resolve=false"
-PACKAGECONFIG[openssl] = "-Dopenssl=true,-Dopenssl=false,openssl"
-PACKAGECONFIG[pam] = "-Dpam=true,-Dpam=false,libpam,${PAM_PLUGINS}"
-PACKAGECONFIG[pcre2] = "-Dpcre2=true,-Dpcre2=false,libpcre2"
-PACKAGECONFIG[polkit] = "-Dpolkit=true,-Dpolkit=false"
-PACKAGECONFIG[portabled] = "-Dportabled=true,-Dportabled=false"
-PACKAGECONFIG[qrencode] = "-Dqrencode=true,-Dqrencode=false,qrencode"
-PACKAGECONFIG[quotacheck] = "-Dquotacheck=true,-Dquotacheck=false"
-PACKAGECONFIG[randomseed] = "-Drandomseed=true,-Drandomseed=false"
-PACKAGECONFIG[resolved] = "-Dresolve=true,-Dresolve=false"
-PACKAGECONFIG[rfkill] = "-Drfkill=true,-Drfkill=false"
-# libseccomp is found in meta-security
-PACKAGECONFIG[seccomp] = "-Dseccomp=true,-Dseccomp=false,libseccomp"
-PACKAGECONFIG[selinux] = "-Dselinux=true,-Dselinux=false,libselinux,initscripts-sushell"
-PACKAGECONFIG[smack] = "-Dsmack=true,-Dsmack=false"
-PACKAGECONFIG[sysusers] = "-Dsysusers=true,-Dsysusers=false"
-PACKAGECONFIG[time-epoch] = "-Dtime-epoch=0,,"
-PACKAGECONFIG[timedated] = "-Dtimedated=true,-Dtimedated=false"
-PACKAGECONFIG[timesyncd] = "-Dtimesyncd=true,-Dtimesyncd=false"
-PACKAGECONFIG[usrmerge] = "-Dsplit-usr=false,-Dsplit-usr=true"
-PACKAGECONFIG[sbinmerge] = "-Dsplit-bin=false,-Dsplit-bin=true"
-PACKAGECONFIG[utmp] = "-Dutmp=true,-Dutmp=false"
-PACKAGECONFIG[valgrind] = "-DVALGRIND=1,,valgrind"
-PACKAGECONFIG[vconsole] = "-Dvconsole=true,-Dvconsole=false,,${PN}-vconsole-setup"
-# Verify keymaps on locale change
-PACKAGECONFIG[xkbcommon] = "-Dxkbcommon=true,-Dxkbcommon=false,libxkbcommon"
-PACKAGECONFIG[xz] = "-Dxz=true,-Dxz=false,xz"
-PACKAGECONFIG[zlib] = "-Dzlib=true,-Dzlib=false,zlib"
-
-# Helper variables to clarify locations. This mirrors the logic in systemd's
-# build system.
-rootprefix ?= "${root_prefix}"
-rootlibdir ?= "${base_libdir}"
-rootlibexecdir = "${rootprefix}/lib"
-
-# This links udev statically with systemd helper library.
-# Otherwise udev package would depend on systemd package (which has the needed shared library),
-# and always pull it into images.
-EXTRA_OEMESON += "-Dlink-udev-shared=false"
-
-EXTRA_OEMESON += "-Dnobody-user=nobody \
- -Dnobody-group=nobody \
- -Drootlibdir=${rootlibdir} \
- -Drootprefix=${rootprefix} \
- -Dsysvrcnd-path=${sysconfdir} \
- "
-
-# Hardcode target binary paths to avoid using paths from sysroot
-EXTRA_OEMESON += "-Dkexec-path=${sbindir}/kexec \
- -Dkmod-path=${base_bindir}/kmod \
- -Dmount-path=${base_bindir}/mount \
- -Dquotacheck-path=${sbindir}/quotacheck \
- -Dquotaon-path=${sbindir}/quotaon \
- -Dsulogin-path=${base_sbindir}/sulogin \
- -Dumount-path=${base_bindir}/umount"
-
-do_install() {
- meson_do_install
- install -d ${D}/${base_sbindir}
- if ${@bb.utils.contains('PACKAGECONFIG', 'serial-getty-generator', 'false', 'true', d)}; then
- # Provided by a separate recipe
- rm ${D}${systemd_unitdir}/system/serial-getty* -f
- fi
-
- # Provide support for initramfs
- [ ! -e ${D}/init ] && ln -s ${rootlibexecdir}/systemd/systemd ${D}/init
- [ ! -e ${D}/${base_sbindir}/udevd ] && ln -s ${rootlibexecdir}/systemd/systemd-udevd ${D}/${base_sbindir}/udevd
-
- install -d ${D}${sysconfdir}/udev/rules.d/
- install -d ${D}${sysconfdir}/tmpfiles.d
- install -m 0644 ${WORKDIR}/*.rules ${D}${sysconfdir}/udev/rules.d/
- install -d ${D}${libdir}/pkgconfig
- install -m 0644 ${B}/src/udev/udev.pc ${D}${libdir}/pkgconfig/
-
- install -m 0644 ${WORKDIR}/00-create-volatile.conf ${D}${sysconfdir}/tmpfiles.d/
-
- if ${@bb.utils.contains('DISTRO_FEATURES','sysvinit','true','false',d)}; then
- install -d ${D}${sysconfdir}/init.d
- install -m 0755 ${WORKDIR}/init ${D}${sysconfdir}/init.d/systemd-udevd
- sed -i s%@UDEVD@%${rootlibexecdir}/systemd/systemd-udevd% ${D}${sysconfdir}/init.d/systemd-udevd
- fi
-
- chown root:systemd-journal ${D}/${localstatedir}/log/journal
-
- # Delete journal README, as log can be symlinked inside volatile.
- rm -f ${D}/${localstatedir}/log/README
-
- # journal-remote creates this at start
- rm -rf ${D}/${localstatedir}/log/journal/remote
-
- install -d ${D}${systemd_unitdir}/system/graphical.target.wants
- install -d ${D}${systemd_unitdir}/system/multi-user.target.wants
- install -d ${D}${systemd_unitdir}/system/poweroff.target.wants
- install -d ${D}${systemd_unitdir}/system/reboot.target.wants
- install -d ${D}${systemd_unitdir}/system/rescue.target.wants
-
- # Create symlinks for systemd-update-utmp-runlevel.service
- if ${@bb.utils.contains('PACKAGECONFIG', 'utmp', 'true', 'false', d)}; then
- ln -sf ../systemd-update-utmp-runlevel.service ${D}${systemd_unitdir}/system/graphical.target.wants/systemd-update-utmp-runlevel.service
- ln -sf ../systemd-update-utmp-runlevel.service ${D}${systemd_unitdir}/system/multi-user.target.wants/systemd-update-utmp-runlevel.service
- ln -sf ../systemd-update-utmp-runlevel.service ${D}${systemd_unitdir}/system/poweroff.target.wants/systemd-update-utmp-runlevel.service
- ln -sf ../systemd-update-utmp-runlevel.service ${D}${systemd_unitdir}/system/reboot.target.wants/systemd-update-utmp-runlevel.service
- ln -sf ../systemd-update-utmp-runlevel.service ${D}${systemd_unitdir}/system/rescue.target.wants/systemd-update-utmp-runlevel.service
- fi
-
- # this file is needed to exist if networkd is disabled but timesyncd is still in use since timesyncd checks it
- # for existence else it fails
- if [ -s ${D}${exec_prefix}/lib/tmpfiles.d/systemd.conf ]; then
- ${@bb.utils.contains('PACKAGECONFIG', 'networkd', ':', 'sed -i -e "\$ad /run/systemd/netif/links 0755 root root -" ${D}${exec_prefix}/lib/tmpfiles.d/systemd.conf', d)}
- fi
- if ! ${@bb.utils.contains('PACKAGECONFIG', 'resolved', 'true', 'false', d)}; then
- echo 'L! ${sysconfdir}/resolv.conf - - - - ../run/systemd/resolve/resolv.conf' >>${D}${exec_prefix}/lib/tmpfiles.d/etc.conf
- echo 'd /run/systemd/resolve 0755 root root -' >>${D}${exec_prefix}/lib/tmpfiles.d/systemd.conf
- echo 'f /run/systemd/resolve/resolv.conf 0644 root root' >>${D}${exec_prefix}/lib/tmpfiles.d/systemd.conf
- ln -s ../run/systemd/resolve/resolv.conf ${D}${sysconfdir}/resolv-conf.systemd
- else
- sed -i -e "s%^L! /etc/resolv.conf.*$%L! /etc/resolv.conf - - - - ../run/systemd/resolve/resolv.conf%g" ${D}${exec_prefix}/lib/tmpfiles.d/etc.conf
- ln -s ../run/systemd/resolve/resolv.conf ${D}${sysconfdir}/resolv-conf.systemd
- fi
- install -Dm 0755 ${S}/src/systemctl/systemd-sysv-install.SKELETON ${D}${systemd_unitdir}/systemd-sysv-install
-
- # If polkit is setup fixup permissions and ownership
- if ${@bb.utils.contains('PACKAGECONFIG', 'polkit', 'true', 'false', d)}; then
- if [ -d ${D}${datadir}/polkit-1/rules.d ]; then
- chmod 700 ${D}${datadir}/polkit-1/rules.d
- chown polkitd:root ${D}${datadir}/polkit-1/rules.d
- fi
- fi
-
- # conf files are handled by systemd-conf
- rm -f ${D}${sysconfdir}/machine-id
- rm -f ${D}${sysconfdir}/systemd/coredump.conf
- rm -f ${D}${sysconfdir}/systemd/journald.conf
- rm -f ${D}${sysconfdir}/systemd/logind.conf
- rm -f ${D}${sysconfdir}/systemd/system.conf
- rm -f ${D}${sysconfdir}/systemd/user.conf
-
- # duplicate udevadm for postinst script
- install -d ${D}${libexecdir}
- ln ${D}${base_bindir}/udevadm ${D}${libexecdir}/${MLPREFIX}udevadm
-}
-
-
-python populate_packages_prepend (){
- systemdlibdir = d.getVar("rootlibdir")
- do_split_packages(d, systemdlibdir, '^lib(.*)\.so\.*', 'lib%s', 'Systemd %s library', extra_depends='', allow_links=True)
-}
-PACKAGES_DYNAMIC += "^lib(udev|systemd|nss).*"
-
-PACKAGES =+ "\
- ${PN}-gui \
- ${PN}-vconsole-setup \
- ${PN}-initramfs \
- ${PN}-analyze \
- ${PN}-kernel-install \
- ${PN}-rpm-macros \
- ${PN}-binfmt \
- ${PN}-zsh-completion \
- ${PN}-xorg-xinitrc \
- ${PN}-container \
- ${PN}-journal-gatewayd \
- ${PN}-journal-upload \
- ${PN}-journal-remote \
- ${PN}-extra-utils \
-"
-
-SUMMARY_${PN}-container = "Tools for containers and VMs"
-DESCRIPTION_${PN}-container = "Systemd tools to spawn and manage containers and virtual machines."
-
-SUMMARY_${PN}-journal-gatewayd = "HTTP server for journal events"
-DESCRIPTION_${PN}-journal-gatewayd = "systemd-journal-gatewayd serves journal events over the network. Clients must connect using HTTP. The server listens on port 19531 by default."
-
-SUMMARY_${PN}-journal-upload = "Send journal messages over the network"
-DESCRIPTION_${PN}-journal-upload = "systemd-journal-upload uploads journal entries to a specified URL."
-
-SUMMARY_${PN}-journal-remote = "Receive journal messages over the network"
-DESCRIPTION_${PN}-journal-remote = "systemd-journal-remote is a command to receive serialized journal events and store them to journal files."
-
-SYSTEMD_PACKAGES = "${@bb.utils.contains('PACKAGECONFIG', 'binfmt', '${PN}-binfmt', '', d)} \
- ${@bb.utils.contains('PACKAGECONFIG', 'microhttpd', '${PN}-journal-gatewayd', '', d)} \
- ${@bb.utils.contains('PACKAGECONFIG', 'microhttpd', '${PN}-journal-remote', '', d)} \
- ${@bb.utils.contains('PACKAGECONFIG', 'journal-upload', '${PN}-journal-upload', '', d)} \
-"
-SYSTEMD_SERVICE_${PN}-binfmt = "systemd-binfmt.service"
-
-USERADD_PACKAGES = "${PN} ${PN}-extra-utils \
- ${@bb.utils.contains('PACKAGECONFIG', 'microhttpd', '${PN}-journal-gateway', '', d)} \
- ${@bb.utils.contains('PACKAGECONFIG', 'microhttpd', '${PN}-journal-remote', '', d)} \
- ${@bb.utils.contains('PACKAGECONFIG', 'journal-upload', '${PN}-journal-upload', '', d)} \
-"
-GROUPADD_PARAM_${PN} = "-r systemd-journal"
-USERADD_PARAM_${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'coredump', '--system -d / -M --shell /bin/nologin systemd-coredump;', '', d)}"
-USERADD_PARAM_${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'networkd', '--system -d / -M --shell /bin/nologin systemd-network;', '', d)}"
-USERADD_PARAM_${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'polkit', '--system --no-create-home --user-group --home-dir ${sysconfdir}/polkit-1 polkitd;', '', d)}"
-USERADD_PARAM_${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'resolved', '--system -d / -M --shell /bin/nologin systemd-resolve;', '', d)}"
-USERADD_PARAM_${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'timesyncd', '--system -d / -M --shell /bin/nologin systemd-timesync;', '', d)}"
-USERADD_PARAM_${PN}-extra-utils = "--system -d / -M --shell /bin/nologin systemd-bus-proxy"
-USERADD_PARAM_${PN}-journal-gateway = "--system -d / -M --shell /bin/nologin systemd-journal-gateway"
-USERADD_PARAM_${PN}-journal-remote = "--system -d / -M --shell /bin/nologin systemd-journal-remote"
-USERADD_PARAM_${PN}-journal-upload = "--system -d / -M --shell /bin/nologin systemd-journal-upload"
-
-FILES_${PN}-analyze = "${bindir}/systemd-analyze"
-
-FILES_${PN}-initramfs = "/init"
-RDEPENDS_${PN}-initramfs = "${PN}"
-
-FILES_${PN}-gui = "${bindir}/systemadm"
-
-FILES_${PN}-vconsole-setup = "${rootlibexecdir}/systemd/systemd-vconsole-setup \
- ${systemd_unitdir}/system/systemd-vconsole-setup.service \
- ${systemd_unitdir}/system/sysinit.target.wants/systemd-vconsole-setup.service"
-
-RDEPENDS_${PN}-kernel-install += "bash"
-FILES_${PN}-kernel-install = "${bindir}/kernel-install \
- ${sysconfdir}/kernel/ \
- ${exec_prefix}/lib/kernel \
- "
-FILES_${PN}-rpm-macros = "${exec_prefix}/lib/rpm \
- "
-
-FILES_${PN}-xorg-xinitrc = "${sysconfdir}/X11/xinit/xinitrc.d/*"
-
-FILES_${PN}-zsh-completion = "${datadir}/zsh/site-functions"
-
-FILES_${PN}-binfmt = "${sysconfdir}/binfmt.d/ \
- ${exec_prefix}/lib/binfmt.d \
- ${rootlibexecdir}/systemd/systemd-binfmt \
- ${systemd_unitdir}/system/proc-sys-fs-binfmt_misc.* \
- ${systemd_unitdir}/system/systemd-binfmt.service"
-RRECOMMENDS_${PN}-binfmt = "kernel-module-binfmt-misc"
-
-RRECOMMENDS_${PN}-vconsole-setup = "kbd kbd-consolefonts kbd-keymaps"
-
-
-FILES_${PN}-journal-gatewayd = "${rootlibexecdir}/systemd/systemd-journal-gatewayd \
- ${systemd_system_unitdir}/systemd-journal-gatewayd.service \
- ${systemd_system_unitdir}/systemd-journal-gatewayd.socket \
- ${systemd_system_unitdir}/sockets.target.wants/systemd-journal-gatewayd.socket \
- ${datadir}/systemd/gatewayd/browse.html \
- "
-SYSTEMD_SERVICE_${PN}-journal-gatewayd = "systemd-journal-gatewayd.socket"
-
-FILES_${PN}-journal-upload = "${rootlibexecdir}/systemd/systemd-journal-upload \
- ${systemd_system_unitdir}/systemd-journal-upload.service \
- ${sysconfdir}/systemd/journal-upload.conf \
- "
-SYSTEMD_SERVICE_${PN}-journal-upload = "systemd-journal-upload.service"
-
-FILES_${PN}-journal-remote = "${rootlibexecdir}/systemd/systemd-journal-remote \
- ${sysconfdir}/systemd/journal-remote.conf \
- ${systemd_system_unitdir}/systemd-journal-remote.service \
- ${systemd_system_unitdir}/systemd-journal-remote.socket \
- "
-SYSTEMD_SERVICE_${PN}-remote = "systemd-journal-remote.socket"
-
-
-FILES_${PN}-container = "${sysconfdir}/dbus-1/system.d/org.freedesktop.import1.conf \
- ${sysconfdir}/dbus-1/system.d/org.freedesktop.machine1.conf \
- ${base_bindir}/machinectl \
- ${bindir}/systemd-nspawn \
- ${nonarch_libdir}/systemd/import-pubring.gpg \
- ${systemd_system_unitdir}/busnames.target.wants/org.freedesktop.import1.busname \
- ${systemd_system_unitdir}/busnames.target.wants/org.freedesktop.machine1.busname \
- ${systemd_system_unitdir}/local-fs.target.wants/var-lib-machines.mount \
- ${systemd_system_unitdir}/machine.slice \
- ${systemd_system_unitdir}/machines.target \
- ${systemd_system_unitdir}/org.freedesktop.import1.busname \
- ${systemd_system_unitdir}/org.freedesktop.machine1.busname \
- ${systemd_system_unitdir}/systemd-importd.service \
- ${systemd_system_unitdir}/systemd-machined.service \
- ${systemd_system_unitdir}/dbus-org.freedesktop.machine1.service \
- ${systemd_system_unitdir}/var-lib-machines.mount \
- ${rootlibexecdir}/systemd/systemd-import \
- ${rootlibexecdir}/systemd/systemd-importd \
- ${rootlibexecdir}/systemd/systemd-machined \
- ${rootlibexecdir}/systemd/systemd-pull \
- ${exec_prefix}/lib/tmpfiles.d/systemd-nspawn.conf \
- ${systemd_system_unitdir}/systemd-nspawn@.service \
- ${libdir}/libnss_mymachines.so.2 \
- ${datadir}/dbus-1/system-services/org.freedesktop.import1.service \
- ${datadir}/dbus-1/system-services/org.freedesktop.machine1.service \
- ${datadir}/dbus-1/system.d/org.freedesktop.import1.conf \
- ${datadir}/dbus-1/system.d/org.freedesktop.machine1.conf \
- ${datadir}/polkit-1/actions/org.freedesktop.import1.policy \
- ${datadir}/polkit-1/actions/org.freedesktop.machine1.policy \
- "
-
-RRECOMMENDS_${PN}-container += "\
- ${PN}-journal-upload \
- ${PN}-journal-remote \
- ${PN}-journal-gatewayd \
- "
-
-FILES_${PN}-extra-utils = "\
- ${base_bindir}/systemd-escape \
- ${base_bindir}/systemd-inhibit \
- ${bindir}/systemd-detect-virt \
- ${bindir}/systemd-path \
- ${bindir}/systemd-run \
- ${bindir}/systemd-cat \
- ${bindir}/systemd-delta \
- ${bindir}/systemd-cgls \
- ${bindir}/systemd-cgtop \
- ${bindir}/systemd-stdio-bridge \
- ${base_bindir}/systemd-ask-password \
- ${base_bindir}/systemd-tty-ask-password-agent \
- ${systemd_unitdir}/system/systemd-ask-password-console.path \
- ${systemd_unitdir}/system/systemd-ask-password-console.service \
- ${systemd_unitdir}/system/systemd-ask-password-wall.path \
- ${systemd_unitdir}/system/systemd-ask-password-wall.service \
- ${systemd_unitdir}/system/sysinit.target.wants/systemd-ask-password-console.path \
- ${systemd_unitdir}/system/sysinit.target.wants/systemd-ask-password-wall.path \
- ${systemd_unitdir}/system/multi-user.target.wants/systemd-ask-password-wall.path \
- ${rootlibexecdir}/systemd/systemd-resolve-host \
- ${rootlibexecdir}/systemd/systemd-ac-power \
- ${rootlibexecdir}/systemd/systemd-activate \
- ${rootlibexecdir}/systemd/systemd-bus-proxyd \
- ${systemd_unitdir}/system/systemd-bus-proxyd.service \
- ${systemd_unitdir}/system/systemd-bus-proxyd.socket \
- ${rootlibexecdir}/systemd/systemd-socket-proxyd \
- ${rootlibexecdir}/systemd/systemd-reply-password \
- ${rootlibexecdir}/systemd/systemd-sleep \
- ${rootlibexecdir}/systemd/system-sleep \
- ${systemd_unitdir}/system/systemd-hibernate.service \
- ${systemd_unitdir}/system/systemd-hybrid-sleep.service \
- ${systemd_unitdir}/system/systemd-suspend.service \
- ${systemd_unitdir}/system/sleep.target \
- ${rootlibexecdir}/systemd/systemd-initctl \
- ${systemd_unitdir}/system/systemd-initctl.service \
- ${systemd_unitdir}/system/systemd-initctl.socket \
- ${systemd_unitdir}/system/sockets.target.wants/systemd-initctl.socket \
- ${rootlibexecdir}/systemd/system-generators/systemd-gpt-auto-generator \
- ${rootlibexecdir}/systemd/systemd-cgroups-agent \
-"
-
-FILES_${PN} = " ${base_bindir}/* \
- ${base_sbindir}/shutdown \
- ${base_sbindir}/halt \
- ${base_sbindir}/poweroff \
- ${base_sbindir}/runlevel \
- ${base_sbindir}/telinit \
- ${base_sbindir}/resolvconf \
- ${base_sbindir}/reboot \
- ${base_sbindir}/init \
- ${datadir}/dbus-1/services \
- ${datadir}/dbus-1/system-services \
- ${datadir}/polkit-1 \
- ${datadir}/${BPN} \
- ${datadir}/factory \
- ${sysconfdir}/dbus-1/ \
- ${sysconfdir}/modules-load.d/ \
- ${sysconfdir}/pam.d/ \
- ${sysconfdir}/sysctl.d/ \
- ${sysconfdir}/systemd/ \
- ${sysconfdir}/tmpfiles.d/ \
- ${sysconfdir}/xdg/ \
- ${sysconfdir}/init.d/README \
- ${sysconfdir}/resolv-conf.systemd \
- ${rootlibexecdir}/systemd/* \
- ${systemd_unitdir}/* \
- ${base_libdir}/security/*.so \
- /cgroup \
- ${bindir}/systemd* \
- ${bindir}/busctl \
- ${bindir}/coredumpctl \
- ${bindir}/localectl \
- ${bindir}/hostnamectl \
- ${bindir}/resolvectl \
- ${bindir}/timedatectl \
- ${bindir}/bootctl \
- ${bindir}/kernel-install \
- ${exec_prefix}/lib/tmpfiles.d/*.conf \
- ${exec_prefix}/lib/systemd \
- ${exec_prefix}/lib/modules-load.d \
- ${exec_prefix}/lib/sysctl.d \
- ${exec_prefix}/lib/sysusers.d \
- ${exec_prefix}/lib/environment.d \
- ${localstatedir} \
- ${nonarch_base_libdir}/udev/rules.d/70-uaccess.rules \
- ${nonarch_base_libdir}/udev/rules.d/71-seat.rules \
- ${nonarch_base_libdir}/udev/rules.d/73-seat-late.rules \
- ${nonarch_base_libdir}/udev/rules.d/99-systemd.rules \
- ${nonarch_base_libdir}/modprobe.d/systemd.conf \
- ${datadir}/dbus-1/system.d/org.freedesktop.timedate1.conf \
- ${datadir}/dbus-1/system.d/org.freedesktop.locale1.conf \
- ${datadir}/dbus-1/system.d/org.freedesktop.network1.conf \
- ${datadir}/dbus-1/system.d/org.freedesktop.resolve1.conf \
- ${datadir}/dbus-1/system.d/org.freedesktop.systemd1.conf \
- ${datadir}/dbus-1/system.d/org.freedesktop.hostname1.conf \
- ${datadir}/dbus-1/system.d/org.freedesktop.login1.conf \
- ${datadir}/dbus-1/system.d/org.freedesktop.timesync1.conf \
- ${datadir}/dbus-1/system.d/org.freedesktop.portable1.conf \
- "
-
-FILES_${PN}-dev += "${base_libdir}/security/*.la ${datadir}/dbus-1/interfaces/ ${sysconfdir}/rpm/macros.systemd"
-
-RDEPENDS_${PN} += "kmod dbus util-linux-mount util-linux-umount udev (= ${EXTENDPKGV}) util-linux-agetty util-linux-fsck"
-RDEPENDS_${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'serial-getty-generator', '', 'systemd-serialgetty', d)}"
-RDEPENDS_${PN} += "volatile-binds update-rc.d systemd-conf"
-
-RRECOMMENDS_${PN} += "systemd-extra-utils \
- systemd-compat-units udev-hwdb \
- e2fsprogs-e2fsck \
- kernel-module-autofs4 kernel-module-unix kernel-module-ipv6 \
- os-release \
-"
-
-INSANE_SKIP_${PN} += "dev-so libdir"
-INSANE_SKIP_${PN}-dbg += "libdir"
-INSANE_SKIP_${PN}-doc += " libdir"
-
-PACKAGES =+ "udev udev-hwdb"
-
-RPROVIDES_udev = "hotplug"
-
-RDEPENDS_udev-hwdb += "udev"
-
-FILES_udev += "${base_sbindir}/udevd \
- ${rootlibexecdir}/systemd/network/99-default.link \
- ${rootlibexecdir}/systemd/systemd-udevd \
- ${rootlibexecdir}/udev/accelerometer \
- ${rootlibexecdir}/udev/ata_id \
- ${rootlibexecdir}/udev/cdrom_id \
- ${rootlibexecdir}/udev/collect \
- ${rootlibexecdir}/udev/findkeyboards \
- ${rootlibexecdir}/udev/keyboard-force-release.sh \
- ${rootlibexecdir}/udev/keymap \
- ${rootlibexecdir}/udev/mtd_probe \
- ${rootlibexecdir}/udev/scsi_id \
- ${rootlibexecdir}/udev/v4l_id \
- ${rootlibexecdir}/udev/keymaps \
- ${rootlibexecdir}/udev/rules.d/*.rules \
- ${sysconfdir}/udev \
- ${sysconfdir}/init.d/systemd-udevd \
- ${systemd_unitdir}/system/*udev* \
- ${systemd_unitdir}/system/*.wants/*udev* \
- ${base_bindir}/udevadm \
- ${libexecdir}/${MLPREFIX}udevadm \
- ${datadir}/bash-completion/completions/udevadm \
- "
-
-FILES_udev-hwdb = "${rootlibexecdir}/udev/hwdb.d"
-
-INITSCRIPT_PACKAGES = "udev"
-INITSCRIPT_NAME_udev = "systemd-udevd"
-INITSCRIPT_PARAMS_udev = "start 03 S ."
-
-python __anonymous() {
- if not bb.utils.contains('DISTRO_FEATURES', 'sysvinit', True, False, d):
- d.setVar("INHIBIT_UPDATERCD_BBCLASS", "1")
-}
-
-ALTERNATIVE_${PN} = "halt reboot shutdown poweroff runlevel resolv-conf"
-
-ALTERNATIVE_TARGET[resolv-conf] = "${sysconfdir}/resolv-conf.systemd"
-ALTERNATIVE_LINK_NAME[resolv-conf] = "${sysconfdir}/resolv.conf"
-ALTERNATIVE_PRIORITY[resolv-conf] ?= "50"
-
-ALTERNATIVE_TARGET[halt] = "${base_bindir}/systemctl"
-ALTERNATIVE_LINK_NAME[halt] = "${base_sbindir}/halt"
-ALTERNATIVE_PRIORITY[halt] ?= "300"
-
-ALTERNATIVE_TARGET[reboot] = "${base_bindir}/systemctl"
-ALTERNATIVE_LINK_NAME[reboot] = "${base_sbindir}/reboot"
-ALTERNATIVE_PRIORITY[reboot] ?= "300"
-
-ALTERNATIVE_TARGET[shutdown] = "${base_bindir}/systemctl"
-ALTERNATIVE_LINK_NAME[shutdown] = "${base_sbindir}/shutdown"
-ALTERNATIVE_PRIORITY[shutdown] ?= "300"
-
-ALTERNATIVE_TARGET[poweroff] = "${base_bindir}/systemctl"
-ALTERNATIVE_LINK_NAME[poweroff] = "${base_sbindir}/poweroff"
-ALTERNATIVE_PRIORITY[poweroff] ?= "300"
-
-ALTERNATIVE_TARGET[runlevel] = "${base_bindir}/systemctl"
-ALTERNATIVE_LINK_NAME[runlevel] = "${base_sbindir}/runlevel"
-ALTERNATIVE_PRIORITY[runlevel] ?= "300"
-
-pkg_postinst_${PN} () {
- sed -e '/^hosts:/s/\s*\<myhostname\>//' \
- -e 's/\(^hosts:.*\)\(\<files\>\)\(.*\)\(\<dns\>\)\(.*\)/\1\2 myhostname \3\4\5/' \
- -i $D${sysconfdir}/nsswitch.conf
-}
-
-pkg_prerm_${PN} () {
- sed -e '/^hosts:/s/\s*\<myhostname\>//' \
- -e '/^hosts:/s/\s*myhostname//' \
- -i $D${sysconfdir}/nsswitch.conf
-}
-
-PACKAGE_WRITE_DEPS += "qemu-native"
-pkg_postinst_udev-hwdb () {
- if test -n "$D"; then
- $INTERCEPT_DIR/postinst_intercept update_udev_hwdb ${PKG} mlprefix=${MLPREFIX} binprefix=${MLPREFIX}
- else
- udevadm hwdb --update
- fi
-}
-
-pkg_prerm_udev-hwdb () {
- rm -f $D${sysconfdir}/udev/hwdb.bin
-}
diff --git a/poky/meta/recipes-core/systemd/systemd_242.bb b/poky/meta/recipes-core/systemd/systemd_242.bb
new file mode 100644
index 0000000..73e03c7
--- /dev/null
+++ b/poky/meta/recipes-core/systemd/systemd_242.bb
@@ -0,0 +1,662 @@
+require systemd.inc
+
+PROVIDES = "udev"
+
+PE = "1"
+
+DEPENDS = "intltool-native gperf-native libcap util-linux"
+
+SECTION = "base/shell"
+
+inherit useradd pkgconfig meson perlnative update-rc.d update-alternatives qemu systemd gettext bash-completion manpages distro_features_check
+
+# As this recipe builds udev, respect systemd being in DISTRO_FEATURES so
+# that we don't build both udev and systemd in world builds.
+REQUIRED_DISTRO_FEATURES = "systemd"
+
+SRC_URI += "file://touchscreen.rules \
+ file://00-create-volatile.conf \
+ file://init \
+ file://0001-binfmt-Don-t-install-dependency-links-at-install-tim.patch \
+ file://0002-use-lnr-wrapper-instead-of-looking-for-relative-opti.patch \
+ file://0003-implment-systemd-sysv-install-for-OE.patch \
+ file://0004-rules-whitelist-hd-devices.patch \
+ file://0005-rules-watch-metadata-changes-in-ide-devices.patch \
+ file://0006-network-remove-redunant-link-name-in-message.patch \
+ file://99-default.preset \
+ "
+
+# patches needed by musl
+SRC_URI += "${SRC_URI_MUSL}"
+SRC_URI_MUSL = "file://0001-Use-getenv-when-secure-versions-are-not-available.patch \
+ file://0002-don-t-use-glibc-specific-qsort_r.patch \
+ file://0003-missing_type.h-add-__compare_fn_t-and-comparison_fn_.patch \
+ file://0004-add-fallback-parse_printf_format-implementation.patch \
+ file://0005-src-basic-missing.h-check-for-missing-strndupa.patch \
+ file://0006-Include-netinet-if_ether.h.patch \
+ file://0007-don-t-fail-if-GLOB_BRACE-and-GLOB_ALTDIRFUNC-is-not.patch \
+ file://0008-add-missing-FTW_-macros-for-musl.patch \
+ file://0009-socket-util-don-t-fail-if-libc-doesn-t-support-IDN.patch \
+ file://0010-fix-missing-of-__register_atfork-for-non-glibc-build.patch \
+ file://0011-Use-uintmax_t-for-handling-rlim_t.patch \
+ file://0012-fix-missing-ULONG_LONG_MAX-definition-in-case-of-mus.patch \
+ file://0014-test-sizeof.c-Disable-tests-for-missing-typedefs-in-.patch \
+ file://0015-don-t-pass-AT_SYMLINK_NOFOLLOW-flag-to-faccessat.patch \
+ file://0016-Define-glibc-compatible-basename-for-non-glibc-syste.patch \
+ file://0017-Do-not-disable-buffering-when-writing-to-oom_score_a.patch \
+ file://0018-distinguish-XSI-compliant-strerror_r-from-GNU-specif.patch \
+ file://0019-Hide-__start_BUS_ERROR_MAP-and-__stop_BUS_ERROR_MAP.patch \
+ file://0020-missing_type.h-add-__compar_d_fn_t-definition.patch \
+ file://0021-avoid-redefinition-of-prctl_mm_map-structure.patch \
+ file://0022-include-sys-wait.h-to-avoid-compile-failure.patch \
+ file://0023-socket-util.h-include-string.h.patch \
+ file://0024-test-json.c-define-M_PIl.patch \
+ file://0025-fs-utilh-add-missing-sys-stat-include.patch \
+ file://0001-do-not-disable-buffer-in-writing-files.patch \
+ "
+
+PAM_PLUGINS = " \
+ pam-plugin-unix \
+ pam-plugin-loginuid \
+ pam-plugin-keyinit \
+"
+
+PACKAGECONFIG ??= " \
+ ${@bb.utils.filter('DISTRO_FEATURES', 'efi ldconfig pam selinux usrmerge polkit', d)} \
+ ${@bb.utils.contains('DISTRO_FEATURES', 'wifi', 'rfkill', '', d)} \
+ ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'xkbcommon', '', d)} \
+ acl \
+ backlight \
+ binfmt \
+ gshadow \
+ hibernate \
+ hostnamed \
+ ima \
+ kmod \
+ localed \
+ logind \
+ machined \
+ myhostname \
+ networkd \
+ nss \
+ nss-mymachines \
+ nss-resolve \
+ quotacheck \
+ randomseed \
+ resolved \
+ smack \
+ sysusers \
+ timedated \
+ timesyncd \
+ utmp \
+ vconsole \
+ xz \
+"
+
+PACKAGECONFIG_remove_libc-musl = " \
+ gshadow \
+ localed \
+ myhostname \
+ nss \
+ nss-mymachines \
+ nss-resolve \
+ resolved \
+ smack \
+ sysusers \
+ utmp \
+"
+
+# Use the upstream systemd serial-getty@.service and rely on
+# systemd-getty-generator instead of using the OE-core specific
+# systemd-serialgetty.bb - not enabled by default.
+PACKAGECONFIG[serial-getty-generator] = ""
+
+PACKAGECONFIG[acl] = "-Dacl=true,-Dacl=false,acl"
+PACKAGECONFIG[audit] = "-Daudit=true,-Daudit=false,audit"
+PACKAGECONFIG[backlight] = "-Dbacklight=true,-Dbacklight=false"
+PACKAGECONFIG[binfmt] = "-Dbinfmt=true,-Dbinfmt=false"
+PACKAGECONFIG[bzip2] = "-Dbzip2=true,-Dbzip2=false,bzip2"
+PACKAGECONFIG[cgroupv2] = "-Ddefault-hierarchy=unified,-Ddefault-hierarchy=hybrid"
+PACKAGECONFIG[coredump] = "-Dcoredump=true,-Dcoredump=false"
+PACKAGECONFIG[cryptsetup] = "-Dlibcryptsetup=true,-Dlibcryptsetup=false,cryptsetup"
+PACKAGECONFIG[dbus] = "-Ddbus=true,-Ddbus=false,dbus"
+PACKAGECONFIG[efi] = "-Defi=true,-Defi=false"
+PACKAGECONFIG[elfutils] = "-Delfutils=true,-Delfutils=false,elfutils"
+PACKAGECONFIG[firstboot] = "-Dfirstboot=true,-Dfirstboot=false"
+# Sign the journal for anti-tampering
+PACKAGECONFIG[gcrypt] = "-Dgcrypt=true,-Dgcrypt=false,libgcrypt"
+PACKAGECONFIG[gnutls] = "-Dgnutls=true,-Dgnutls=false,gnutls"
+PACKAGECONFIG[gshadow] = "-Dgshadow=true,-Dgshadow=false"
+PACKAGECONFIG[hibernate] = "-Dhibernate=true,-Dhibernate=false"
+PACKAGECONFIG[hostnamed] = "-Dhostnamed=true,-Dhostnamed=false"
+PACKAGECONFIG[ima] = "-Dima=true,-Dima=false"
+# importd requires curl/xz/zlib/bzip2/gcrypt
+PACKAGECONFIG[importd] = "-Dimportd=true,-Dimportd=false"
+# Update NAT firewall rules
+PACKAGECONFIG[iptc] = "-Dlibiptc=true,-Dlibiptc=false,iptables"
+PACKAGECONFIG[journal-upload] = "-Dlibcurl=true,-Dlibcurl=false,curl"
+PACKAGECONFIG[kmod] = "-Dkmod=true,-Dkmod=false,kmod"
+PACKAGECONFIG[ldconfig] = "-Dldconfig=true,-Dldconfig=false"
+PACKAGECONFIG[libidn] = "-Dlibidn=true,-Dlibidn=false,libidn"
+PACKAGECONFIG[localed] = "-Dlocaled=true,-Dlocaled=false"
+PACKAGECONFIG[logind] = "-Dlogind=true,-Dlogind=false"
+PACKAGECONFIG[lz4] = "-Dlz4=true,-Dlz4=false,lz4"
+PACKAGECONFIG[machined] = "-Dmachined=true,-Dmachined=false"
+PACKAGECONFIG[manpages] = "-Dman=true,-Dman=false,libxslt-native xmlto-native docbook-xml-dtd4-native docbook-xsl-stylesheets-native"
+PACKAGECONFIG[microhttpd] = "-Dmicrohttpd=true,-Dmicrohttpd=false,libmicrohttpd"
+PACKAGECONFIG[myhostname] = "-Dnss-myhostname=true,-Dnss-myhostname=false,,libnss-myhostname"
+PACKAGECONFIG[networkd] = "-Dnetworkd=true,-Dnetworkd=false"
+PACKAGECONFIG[nss] = "-Dnss-systemd=true,-Dnss-systemd=false"
+PACKAGECONFIG[nss-mymachines] = "-Dnss-mymachines=true,-Dnss-mymachines=false"
+PACKAGECONFIG[nss-resolve] = "-Dnss-resolve=true,-Dnss-resolve=false"
+PACKAGECONFIG[openssl] = "-Dopenssl=true,-Dopenssl=false,openssl"
+PACKAGECONFIG[pam] = "-Dpam=true,-Dpam=false,libpam,${PAM_PLUGINS}"
+PACKAGECONFIG[pcre2] = "-Dpcre2=true,-Dpcre2=false,libpcre2"
+PACKAGECONFIG[polkit] = "-Dpolkit=true,-Dpolkit=false"
+PACKAGECONFIG[portabled] = "-Dportabled=true,-Dportabled=false"
+PACKAGECONFIG[qrencode] = "-Dqrencode=true,-Dqrencode=false,qrencode"
+PACKAGECONFIG[quotacheck] = "-Dquotacheck=true,-Dquotacheck=false"
+PACKAGECONFIG[randomseed] = "-Drandomseed=true,-Drandomseed=false"
+PACKAGECONFIG[resolved] = "-Dresolve=true,-Dresolve=false"
+PACKAGECONFIG[rfkill] = "-Drfkill=true,-Drfkill=false"
+# libseccomp is found in meta-security
+PACKAGECONFIG[seccomp] = "-Dseccomp=true,-Dseccomp=false,libseccomp"
+PACKAGECONFIG[selinux] = "-Dselinux=true,-Dselinux=false,libselinux,initscripts-sushell"
+PACKAGECONFIG[smack] = "-Dsmack=true,-Dsmack=false"
+PACKAGECONFIG[sysusers] = "-Dsysusers=true,-Dsysusers=false"
+PACKAGECONFIG[time-epoch] = "-Dtime-epoch=0,,"
+PACKAGECONFIG[timedated] = "-Dtimedated=true,-Dtimedated=false"
+PACKAGECONFIG[timesyncd] = "-Dtimesyncd=true,-Dtimesyncd=false"
+PACKAGECONFIG[usrmerge] = "-Dsplit-usr=false,-Dsplit-usr=true"
+PACKAGECONFIG[sbinmerge] = "-Dsplit-bin=false,-Dsplit-bin=true"
+PACKAGECONFIG[utmp] = "-Dutmp=true,-Dutmp=false"
+PACKAGECONFIG[valgrind] = "-DVALGRIND=1,,valgrind"
+PACKAGECONFIG[vconsole] = "-Dvconsole=true,-Dvconsole=false,,${PN}-vconsole-setup"
+# Verify keymaps on locale change
+PACKAGECONFIG[xkbcommon] = "-Dxkbcommon=true,-Dxkbcommon=false,libxkbcommon"
+PACKAGECONFIG[xz] = "-Dxz=true,-Dxz=false,xz"
+PACKAGECONFIG[zlib] = "-Dzlib=true,-Dzlib=false,zlib"
+
+# Helper variables to clarify locations. This mirrors the logic in systemd's
+# build system.
+rootprefix ?= "${root_prefix}"
+rootlibdir ?= "${base_libdir}"
+rootlibexecdir = "${rootprefix}/lib"
+
+# This links udev statically with systemd helper library.
+# Otherwise udev package would depend on systemd package (which has the needed shared library),
+# and always pull it into images.
+EXTRA_OEMESON += "-Dlink-udev-shared=false"
+
+EXTRA_OEMESON += "-Dnobody-user=nobody \
+ -Dnobody-group=nobody \
+ -Drootlibdir=${rootlibdir} \
+ -Drootprefix=${rootprefix} \
+ -Dsysvrcnd-path=${sysconfdir} \
+ -Ddefault-locale=C \
+ "
+
+# Hardcode target binary paths to avoid using paths from sysroot
+EXTRA_OEMESON += "-Dkexec-path=${sbindir}/kexec \
+ -Dkmod-path=${base_bindir}/kmod \
+ -Dmount-path=${base_bindir}/mount \
+ -Dquotacheck-path=${sbindir}/quotacheck \
+ -Dquotaon-path=${sbindir}/quotaon \
+ -Dsulogin-path=${base_sbindir}/sulogin \
+ -Dumount-path=${base_bindir}/umount"
+
+do_install() {
+ meson_do_install
+ install -d ${D}/${base_sbindir}
+ if ${@bb.utils.contains('PACKAGECONFIG', 'serial-getty-generator', 'false', 'true', d)}; then
+ # Provided by a separate recipe
+ rm ${D}${systemd_unitdir}/system/serial-getty* -f
+ fi
+
+ # Provide support for initramfs
+ [ ! -e ${D}/init ] && ln -s ${rootlibexecdir}/systemd/systemd ${D}/init
+ [ ! -e ${D}/${base_sbindir}/udevd ] && ln -s ${rootlibexecdir}/systemd/systemd-udevd ${D}/${base_sbindir}/udevd
+
+ install -d ${D}${sysconfdir}/udev/rules.d/
+ install -d ${D}${sysconfdir}/tmpfiles.d
+ install -m 0644 ${WORKDIR}/*.rules ${D}${sysconfdir}/udev/rules.d/
+ install -d ${D}${libdir}/pkgconfig
+ install -m 0644 ${B}/src/udev/udev.pc ${D}${libdir}/pkgconfig/
+
+ install -m 0644 ${WORKDIR}/00-create-volatile.conf ${D}${sysconfdir}/tmpfiles.d/
+
+ if ${@bb.utils.contains('DISTRO_FEATURES','sysvinit','true','false',d)}; then
+ install -d ${D}${sysconfdir}/init.d
+ install -m 0755 ${WORKDIR}/init ${D}${sysconfdir}/init.d/systemd-udevd
+ sed -i s%@UDEVD@%${rootlibexecdir}/systemd/systemd-udevd% ${D}${sysconfdir}/init.d/systemd-udevd
+ fi
+
+ chown root:systemd-journal ${D}/${localstatedir}/log/journal
+
+ # Delete journal README, as log can be symlinked inside volatile.
+ rm -f ${D}/${localstatedir}/log/README
+
+ # journal-remote creates this at start
+ rm -rf ${D}/${localstatedir}/log/journal/remote
+
+ install -d ${D}${systemd_unitdir}/system/graphical.target.wants
+ install -d ${D}${systemd_unitdir}/system/multi-user.target.wants
+ install -d ${D}${systemd_unitdir}/system/poweroff.target.wants
+ install -d ${D}${systemd_unitdir}/system/reboot.target.wants
+ install -d ${D}${systemd_unitdir}/system/rescue.target.wants
+
+ # Create symlinks for systemd-update-utmp-runlevel.service
+ if ${@bb.utils.contains('PACKAGECONFIG', 'utmp', 'true', 'false', d)}; then
+ ln -sf ../systemd-update-utmp-runlevel.service ${D}${systemd_unitdir}/system/graphical.target.wants/systemd-update-utmp-runlevel.service
+ ln -sf ../systemd-update-utmp-runlevel.service ${D}${systemd_unitdir}/system/multi-user.target.wants/systemd-update-utmp-runlevel.service
+ ln -sf ../systemd-update-utmp-runlevel.service ${D}${systemd_unitdir}/system/poweroff.target.wants/systemd-update-utmp-runlevel.service
+ ln -sf ../systemd-update-utmp-runlevel.service ${D}${systemd_unitdir}/system/reboot.target.wants/systemd-update-utmp-runlevel.service
+ ln -sf ../systemd-update-utmp-runlevel.service ${D}${systemd_unitdir}/system/rescue.target.wants/systemd-update-utmp-runlevel.service
+ fi
+
+ # this file is needed to exist if networkd is disabled but timesyncd is still in use since timesyncd checks it
+ # for existence else it fails
+ if [ -s ${D}${exec_prefix}/lib/tmpfiles.d/systemd.conf ]; then
+ ${@bb.utils.contains('PACKAGECONFIG', 'networkd', ':', 'sed -i -e "\$ad /run/systemd/netif/links 0755 root root -" ${D}${exec_prefix}/lib/tmpfiles.d/systemd.conf', d)}
+ fi
+ if ! ${@bb.utils.contains('PACKAGECONFIG', 'resolved', 'true', 'false', d)}; then
+ echo 'L! ${sysconfdir}/resolv.conf - - - - ../run/systemd/resolve/resolv.conf' >>${D}${exec_prefix}/lib/tmpfiles.d/etc.conf
+ echo 'd /run/systemd/resolve 0755 root root -' >>${D}${exec_prefix}/lib/tmpfiles.d/systemd.conf
+ echo 'f /run/systemd/resolve/resolv.conf 0644 root root' >>${D}${exec_prefix}/lib/tmpfiles.d/systemd.conf
+ ln -s ../run/systemd/resolve/resolv.conf ${D}${sysconfdir}/resolv-conf.systemd
+ else
+ sed -i -e "s%^L! /etc/resolv.conf.*$%L! /etc/resolv.conf - - - - ../run/systemd/resolve/resolv.conf%g" ${D}${exec_prefix}/lib/tmpfiles.d/etc.conf
+ ln -s ../run/systemd/resolve/resolv.conf ${D}${sysconfdir}/resolv-conf.systemd
+ fi
+ install -Dm 0755 ${S}/src/systemctl/systemd-sysv-install.SKELETON ${D}${systemd_unitdir}/systemd-sysv-install
+
+ # If polkit is setup fixup permissions and ownership
+ if ${@bb.utils.contains('PACKAGECONFIG', 'polkit', 'true', 'false', d)}; then
+ if [ -d ${D}${datadir}/polkit-1/rules.d ]; then
+ chmod 700 ${D}${datadir}/polkit-1/rules.d
+ chown polkitd:root ${D}${datadir}/polkit-1/rules.d
+ fi
+ fi
+
+ # duplicate udevadm for postinst script
+ install -d ${D}${libexecdir}
+ ln ${D}${base_bindir}/udevadm ${D}${libexecdir}/${MLPREFIX}udevadm
+
+ # install default policy for presets
+ # https://www.freedesktop.org/wiki/Software/systemd/Preset/#howto
+ install -Dm 0644 ${WORKDIR}/99-default.preset ${D}${systemd_unitdir}/system-preset/99-default.preset
+}
+
+
+python populate_packages_prepend (){
+ systemdlibdir = d.getVar("rootlibdir")
+ do_split_packages(d, systemdlibdir, '^lib(.*)\.so\.*', 'lib%s', 'Systemd %s library', extra_depends='', allow_links=True)
+}
+PACKAGES_DYNAMIC += "^lib(udev|systemd|nss).*"
+
+PACKAGES =+ "\
+ ${PN}-gui \
+ ${PN}-vconsole-setup \
+ ${PN}-initramfs \
+ ${PN}-analyze \
+ ${PN}-kernel-install \
+ ${PN}-rpm-macros \
+ ${PN}-binfmt \
+ ${PN}-zsh-completion \
+ ${PN}-xorg-xinitrc \
+ ${PN}-container \
+ ${PN}-journal-gatewayd \
+ ${PN}-journal-upload \
+ ${PN}-journal-remote \
+ ${PN}-extra-utils \
+"
+
+SUMMARY_${PN}-container = "Tools for containers and VMs"
+DESCRIPTION_${PN}-container = "Systemd tools to spawn and manage containers and virtual machines."
+
+SUMMARY_${PN}-journal-gatewayd = "HTTP server for journal events"
+DESCRIPTION_${PN}-journal-gatewayd = "systemd-journal-gatewayd serves journal events over the network. Clients must connect using HTTP. The server listens on port 19531 by default."
+
+SUMMARY_${PN}-journal-upload = "Send journal messages over the network"
+DESCRIPTION_${PN}-journal-upload = "systemd-journal-upload uploads journal entries to a specified URL."
+
+SUMMARY_${PN}-journal-remote = "Receive journal messages over the network"
+DESCRIPTION_${PN}-journal-remote = "systemd-journal-remote is a command to receive serialized journal events and store them to journal files."
+
+SYSTEMD_PACKAGES = "${@bb.utils.contains('PACKAGECONFIG', 'binfmt', '${PN}-binfmt', '', d)} \
+ ${@bb.utils.contains('PACKAGECONFIG', 'microhttpd', '${PN}-journal-gatewayd', '', d)} \
+ ${@bb.utils.contains('PACKAGECONFIG', 'microhttpd', '${PN}-journal-remote', '', d)} \
+ ${@bb.utils.contains('PACKAGECONFIG', 'journal-upload', '${PN}-journal-upload', '', d)} \
+"
+SYSTEMD_SERVICE_${PN}-binfmt = "systemd-binfmt.service"
+
+USERADD_PACKAGES = "${PN} ${PN}-extra-utils \
+ ${@bb.utils.contains('PACKAGECONFIG', 'microhttpd', '${PN}-journal-gateway', '', d)} \
+ ${@bb.utils.contains('PACKAGECONFIG', 'microhttpd', '${PN}-journal-remote', '', d)} \
+ ${@bb.utils.contains('PACKAGECONFIG', 'journal-upload', '${PN}-journal-upload', '', d)} \
+"
+GROUPADD_PARAM_${PN} = "-r systemd-journal"
+USERADD_PARAM_${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'coredump', '--system -d / -M --shell /bin/nologin systemd-coredump;', '', d)}"
+USERADD_PARAM_${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'networkd', '--system -d / -M --shell /bin/nologin systemd-network;', '', d)}"
+USERADD_PARAM_${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'polkit', '--system --no-create-home --user-group --home-dir ${sysconfdir}/polkit-1 polkitd;', '', d)}"
+USERADD_PARAM_${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'resolved', '--system -d / -M --shell /bin/nologin systemd-resolve;', '', d)}"
+USERADD_PARAM_${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'timesyncd', '--system -d / -M --shell /bin/nologin systemd-timesync;', '', d)}"
+USERADD_PARAM_${PN}-extra-utils = "--system -d / -M --shell /bin/nologin systemd-bus-proxy"
+USERADD_PARAM_${PN}-journal-gateway = "--system -d / -M --shell /bin/nologin systemd-journal-gateway"
+USERADD_PARAM_${PN}-journal-remote = "--system -d / -M --shell /bin/nologin systemd-journal-remote"
+USERADD_PARAM_${PN}-journal-upload = "--system -d / -M --shell /bin/nologin systemd-journal-upload"
+
+FILES_${PN}-analyze = "${bindir}/systemd-analyze"
+
+FILES_${PN}-initramfs = "/init"
+RDEPENDS_${PN}-initramfs = "${PN}"
+
+FILES_${PN}-gui = "${bindir}/systemadm"
+
+FILES_${PN}-vconsole-setup = "${rootlibexecdir}/systemd/systemd-vconsole-setup \
+ ${systemd_unitdir}/system/systemd-vconsole-setup.service \
+ ${systemd_unitdir}/system/sysinit.target.wants/systemd-vconsole-setup.service"
+
+RDEPENDS_${PN}-kernel-install += "bash"
+FILES_${PN}-kernel-install = "${bindir}/kernel-install \
+ ${sysconfdir}/kernel/ \
+ ${exec_prefix}/lib/kernel \
+ "
+FILES_${PN}-rpm-macros = "${exec_prefix}/lib/rpm \
+ "
+
+FILES_${PN}-xorg-xinitrc = "${sysconfdir}/X11/xinit/xinitrc.d/*"
+
+FILES_${PN}-zsh-completion = "${datadir}/zsh/site-functions"
+
+FILES_${PN}-binfmt = "${sysconfdir}/binfmt.d/ \
+ ${exec_prefix}/lib/binfmt.d \
+ ${rootlibexecdir}/systemd/systemd-binfmt \
+ ${systemd_unitdir}/system/proc-sys-fs-binfmt_misc.* \
+ ${systemd_unitdir}/system/systemd-binfmt.service"
+RRECOMMENDS_${PN}-binfmt = "kernel-module-binfmt-misc"
+
+RRECOMMENDS_${PN}-vconsole-setup = "kbd kbd-consolefonts kbd-keymaps"
+
+
+FILES_${PN}-journal-gatewayd = "${rootlibexecdir}/systemd/systemd-journal-gatewayd \
+ ${systemd_system_unitdir}/systemd-journal-gatewayd.service \
+ ${systemd_system_unitdir}/systemd-journal-gatewayd.socket \
+ ${systemd_system_unitdir}/sockets.target.wants/systemd-journal-gatewayd.socket \
+ ${datadir}/systemd/gatewayd/browse.html \
+ "
+SYSTEMD_SERVICE_${PN}-journal-gatewayd = "systemd-journal-gatewayd.socket"
+
+FILES_${PN}-journal-upload = "${rootlibexecdir}/systemd/systemd-journal-upload \
+ ${systemd_system_unitdir}/systemd-journal-upload.service \
+ ${sysconfdir}/systemd/journal-upload.conf \
+ "
+SYSTEMD_SERVICE_${PN}-journal-upload = "systemd-journal-upload.service"
+
+FILES_${PN}-journal-remote = "${rootlibexecdir}/systemd/systemd-journal-remote \
+ ${sysconfdir}/systemd/journal-remote.conf \
+ ${systemd_system_unitdir}/systemd-journal-remote.service \
+ ${systemd_system_unitdir}/systemd-journal-remote.socket \
+ "
+SYSTEMD_SERVICE_${PN}-remote = "systemd-journal-remote.socket"
+
+
+FILES_${PN}-container = "${sysconfdir}/dbus-1/system.d/org.freedesktop.import1.conf \
+ ${sysconfdir}/dbus-1/system.d/org.freedesktop.machine1.conf \
+ ${sysconfdir}/systemd/system/multi-user.target.wants/machines.target \
+ ${base_bindir}/machinectl \
+ ${bindir}/systemd-nspawn \
+ ${nonarch_libdir}/systemd/import-pubring.gpg \
+ ${systemd_system_unitdir}/busnames.target.wants/org.freedesktop.import1.busname \
+ ${systemd_system_unitdir}/busnames.target.wants/org.freedesktop.machine1.busname \
+ ${systemd_system_unitdir}/local-fs.target.wants/var-lib-machines.mount \
+ ${systemd_system_unitdir}/machines.target.wants/var-lib-machines.mount \
+ ${systemd_system_unitdir}/remote-fs.target.wants/var-lib-machines.mount \
+ ${systemd_system_unitdir}/machine.slice \
+ ${systemd_system_unitdir}/machines.target \
+ ${systemd_system_unitdir}/org.freedesktop.import1.busname \
+ ${systemd_system_unitdir}/org.freedesktop.machine1.busname \
+ ${systemd_system_unitdir}/systemd-importd.service \
+ ${systemd_system_unitdir}/systemd-machined.service \
+ ${systemd_system_unitdir}/dbus-org.freedesktop.machine1.service \
+ ${systemd_system_unitdir}/var-lib-machines.mount \
+ ${rootlibexecdir}/systemd/systemd-import \
+ ${rootlibexecdir}/systemd/systemd-importd \
+ ${rootlibexecdir}/systemd/systemd-machined \
+ ${rootlibexecdir}/systemd/systemd-pull \
+ ${exec_prefix}/lib/tmpfiles.d/systemd-nspawn.conf \
+ ${systemd_system_unitdir}/systemd-nspawn@.service \
+ ${libdir}/libnss_mymachines.so.2 \
+ ${datadir}/dbus-1/system-services/org.freedesktop.import1.service \
+ ${datadir}/dbus-1/system-services/org.freedesktop.machine1.service \
+ ${datadir}/dbus-1/system.d/org.freedesktop.import1.conf \
+ ${datadir}/dbus-1/system.d/org.freedesktop.machine1.conf \
+ ${datadir}/polkit-1/actions/org.freedesktop.import1.policy \
+ ${datadir}/polkit-1/actions/org.freedesktop.machine1.policy \
+ "
+
+RRECOMMENDS_${PN}-container += "\
+ ${PN}-journal-upload \
+ ${PN}-journal-remote \
+ ${PN}-journal-gatewayd \
+ "
+
+FILES_${PN}-extra-utils = "\
+ ${base_bindir}/systemd-escape \
+ ${base_bindir}/systemd-inhibit \
+ ${bindir}/systemd-detect-virt \
+ ${bindir}/systemd-path \
+ ${bindir}/systemd-run \
+ ${bindir}/systemd-cat \
+ ${bindir}/systemd-delta \
+ ${bindir}/systemd-cgls \
+ ${bindir}/systemd-cgtop \
+ ${bindir}/systemd-stdio-bridge \
+ ${base_bindir}/systemd-ask-password \
+ ${base_bindir}/systemd-tty-ask-password-agent \
+ ${systemd_unitdir}/system/systemd-ask-password-console.path \
+ ${systemd_unitdir}/system/systemd-ask-password-console.service \
+ ${systemd_unitdir}/system/systemd-ask-password-wall.path \
+ ${systemd_unitdir}/system/systemd-ask-password-wall.service \
+ ${systemd_unitdir}/system/sysinit.target.wants/systemd-ask-password-console.path \
+ ${systemd_unitdir}/system/sysinit.target.wants/systemd-ask-password-wall.path \
+ ${systemd_unitdir}/system/multi-user.target.wants/systemd-ask-password-wall.path \
+ ${rootlibexecdir}/systemd/systemd-resolve-host \
+ ${rootlibexecdir}/systemd/systemd-ac-power \
+ ${rootlibexecdir}/systemd/systemd-activate \
+ ${rootlibexecdir}/systemd/systemd-bus-proxyd \
+ ${systemd_unitdir}/system/systemd-bus-proxyd.service \
+ ${systemd_unitdir}/system/systemd-bus-proxyd.socket \
+ ${rootlibexecdir}/systemd/systemd-socket-proxyd \
+ ${rootlibexecdir}/systemd/systemd-reply-password \
+ ${rootlibexecdir}/systemd/systemd-sleep \
+ ${rootlibexecdir}/systemd/system-sleep \
+ ${systemd_unitdir}/system/systemd-hibernate.service \
+ ${systemd_unitdir}/system/systemd-hybrid-sleep.service \
+ ${systemd_unitdir}/system/systemd-suspend.service \
+ ${systemd_unitdir}/system/sleep.target \
+ ${rootlibexecdir}/systemd/systemd-initctl \
+ ${systemd_unitdir}/system/systemd-initctl.service \
+ ${systemd_unitdir}/system/systemd-initctl.socket \
+ ${systemd_unitdir}/system/sockets.target.wants/systemd-initctl.socket \
+ ${rootlibexecdir}/systemd/system-generators/systemd-gpt-auto-generator \
+ ${rootlibexecdir}/systemd/systemd-cgroups-agent \
+"
+
+CONFFILES_${PN} = "${sysconfdir}/systemd/coredump.conf \
+ ${sysconfdir}/systemd/journald.conf \
+ ${sysconfdir}/systemd/logind.conf \
+ ${sysconfdir}/systemd/system.conf \
+ ${sysconfdir}/systemd/user.conf \
+ ${sysconfdir}/systemd/resolved.conf \
+ ${sysconfdir}/systemd/timesyncd.conf \
+"
+
+FILES_${PN} = " ${base_bindir}/* \
+ ${base_sbindir}/shutdown \
+ ${base_sbindir}/halt \
+ ${base_sbindir}/poweroff \
+ ${base_sbindir}/runlevel \
+ ${base_sbindir}/telinit \
+ ${base_sbindir}/resolvconf \
+ ${base_sbindir}/reboot \
+ ${base_sbindir}/init \
+ ${datadir}/dbus-1/services \
+ ${datadir}/dbus-1/system-services \
+ ${datadir}/polkit-1 \
+ ${datadir}/${BPN} \
+ ${datadir}/factory \
+ ${sysconfdir}/dbus-1/ \
+ ${sysconfdir}/modules-load.d/ \
+ ${sysconfdir}/pam.d/ \
+ ${sysconfdir}/sysctl.d/ \
+ ${sysconfdir}/systemd/ \
+ ${sysconfdir}/tmpfiles.d/ \
+ ${sysconfdir}/xdg/ \
+ ${sysconfdir}/init.d/README \
+ ${sysconfdir}/resolv-conf.systemd \
+ ${rootlibexecdir}/systemd/* \
+ ${systemd_unitdir}/* \
+ ${base_libdir}/security/*.so \
+ /cgroup \
+ ${bindir}/systemd* \
+ ${bindir}/busctl \
+ ${bindir}/coredumpctl \
+ ${bindir}/localectl \
+ ${bindir}/hostnamectl \
+ ${bindir}/resolvectl \
+ ${bindir}/timedatectl \
+ ${bindir}/bootctl \
+ ${bindir}/kernel-install \
+ ${exec_prefix}/lib/tmpfiles.d/*.conf \
+ ${exec_prefix}/lib/systemd \
+ ${exec_prefix}/lib/modules-load.d \
+ ${exec_prefix}/lib/sysctl.d \
+ ${exec_prefix}/lib/sysusers.d \
+ ${exec_prefix}/lib/environment.d \
+ ${localstatedir} \
+ ${nonarch_base_libdir}/udev/rules.d/70-uaccess.rules \
+ ${nonarch_base_libdir}/udev/rules.d/71-seat.rules \
+ ${nonarch_base_libdir}/udev/rules.d/73-seat-late.rules \
+ ${nonarch_base_libdir}/udev/rules.d/99-systemd.rules \
+ ${nonarch_base_libdir}/modprobe.d/systemd.conf \
+ ${datadir}/dbus-1/system.d/org.freedesktop.timedate1.conf \
+ ${datadir}/dbus-1/system.d/org.freedesktop.locale1.conf \
+ ${datadir}/dbus-1/system.d/org.freedesktop.network1.conf \
+ ${datadir}/dbus-1/system.d/org.freedesktop.resolve1.conf \
+ ${datadir}/dbus-1/system.d/org.freedesktop.systemd1.conf \
+ ${datadir}/dbus-1/system.d/org.freedesktop.hostname1.conf \
+ ${datadir}/dbus-1/system.d/org.freedesktop.login1.conf \
+ ${datadir}/dbus-1/system.d/org.freedesktop.timesync1.conf \
+ ${datadir}/dbus-1/system.d/org.freedesktop.portable1.conf \
+ "
+
+FILES_${PN}-dev += "${base_libdir}/security/*.la ${datadir}/dbus-1/interfaces/ ${sysconfdir}/rpm/macros.systemd"
+
+RDEPENDS_${PN} += "kmod dbus util-linux-mount util-linux-umount udev (= ${EXTENDPKGV}) util-linux-agetty util-linux-fsck"
+RDEPENDS_${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'serial-getty-generator', '', 'systemd-serialgetty', d)}"
+RDEPENDS_${PN} += "volatile-binds update-rc.d"
+
+RRECOMMENDS_${PN} += "systemd-extra-utils \
+ systemd-compat-units udev-hwdb \
+ e2fsprogs-e2fsck \
+ kernel-module-autofs4 kernel-module-unix kernel-module-ipv6 \
+ os-release \
+ systemd-conf \
+"
+
+INSANE_SKIP_${PN} += "dev-so libdir"
+INSANE_SKIP_${PN}-dbg += "libdir"
+INSANE_SKIP_${PN}-doc += " libdir"
+
+PACKAGES =+ "udev udev-hwdb"
+
+RPROVIDES_udev = "hotplug"
+
+RDEPENDS_udev-hwdb += "udev"
+
+FILES_udev += "${base_sbindir}/udevd \
+ ${rootlibexecdir}/systemd/network/99-default.link \
+ ${rootlibexecdir}/systemd/systemd-udevd \
+ ${rootlibexecdir}/udev/accelerometer \
+ ${rootlibexecdir}/udev/ata_id \
+ ${rootlibexecdir}/udev/cdrom_id \
+ ${rootlibexecdir}/udev/collect \
+ ${rootlibexecdir}/udev/findkeyboards \
+ ${rootlibexecdir}/udev/keyboard-force-release.sh \
+ ${rootlibexecdir}/udev/keymap \
+ ${rootlibexecdir}/udev/mtd_probe \
+ ${rootlibexecdir}/udev/scsi_id \
+ ${rootlibexecdir}/udev/v4l_id \
+ ${rootlibexecdir}/udev/keymaps \
+ ${rootlibexecdir}/udev/rules.d/*.rules \
+ ${sysconfdir}/udev \
+ ${sysconfdir}/init.d/systemd-udevd \
+ ${systemd_unitdir}/system/*udev* \
+ ${systemd_unitdir}/system/*.wants/*udev* \
+ ${base_bindir}/udevadm \
+ ${libexecdir}/${MLPREFIX}udevadm \
+ ${datadir}/bash-completion/completions/udevadm \
+ "
+
+FILES_udev-hwdb = "${rootlibexecdir}/udev/hwdb.d"
+
+INITSCRIPT_PACKAGES = "udev"
+INITSCRIPT_NAME_udev = "systemd-udevd"
+INITSCRIPT_PARAMS_udev = "start 03 S ."
+
+python __anonymous() {
+ if not bb.utils.contains('DISTRO_FEATURES', 'sysvinit', True, False, d):
+ d.setVar("INHIBIT_UPDATERCD_BBCLASS", "1")
+}
+
+ALTERNATIVE_${PN} = "halt reboot shutdown poweroff runlevel resolv-conf"
+
+ALTERNATIVE_TARGET[resolv-conf] = "${sysconfdir}/resolv-conf.systemd"
+ALTERNATIVE_LINK_NAME[resolv-conf] = "${sysconfdir}/resolv.conf"
+ALTERNATIVE_PRIORITY[resolv-conf] ?= "50"
+
+ALTERNATIVE_TARGET[halt] = "${base_bindir}/systemctl"
+ALTERNATIVE_LINK_NAME[halt] = "${base_sbindir}/halt"
+ALTERNATIVE_PRIORITY[halt] ?= "300"
+
+ALTERNATIVE_TARGET[reboot] = "${base_bindir}/systemctl"
+ALTERNATIVE_LINK_NAME[reboot] = "${base_sbindir}/reboot"
+ALTERNATIVE_PRIORITY[reboot] ?= "300"
+
+ALTERNATIVE_TARGET[shutdown] = "${base_bindir}/systemctl"
+ALTERNATIVE_LINK_NAME[shutdown] = "${base_sbindir}/shutdown"
+ALTERNATIVE_PRIORITY[shutdown] ?= "300"
+
+ALTERNATIVE_TARGET[poweroff] = "${base_bindir}/systemctl"
+ALTERNATIVE_LINK_NAME[poweroff] = "${base_sbindir}/poweroff"
+ALTERNATIVE_PRIORITY[poweroff] ?= "300"
+
+ALTERNATIVE_TARGET[runlevel] = "${base_bindir}/systemctl"
+ALTERNATIVE_LINK_NAME[runlevel] = "${base_sbindir}/runlevel"
+ALTERNATIVE_PRIORITY[runlevel] ?= "300"
+
+pkg_postinst_${PN} () {
+ sed -e '/^hosts:/s/\s*\<myhostname\>//' \
+ -e 's/\(^hosts:.*\)\(\<files\>\)\(.*\)\(\<dns\>\)\(.*\)/\1\2 myhostname \3\4\5/' \
+ -i $D${sysconfdir}/nsswitch.conf
+}
+
+pkg_prerm_${PN} () {
+ sed -e '/^hosts:/s/\s*\<myhostname\>//' \
+ -e '/^hosts:/s/\s*myhostname//' \
+ -i $D${sysconfdir}/nsswitch.conf
+}
+
+PACKAGE_WRITE_DEPS += "qemu-native"
+pkg_postinst_udev-hwdb () {
+ if test -n "$D"; then
+ $INTERCEPT_DIR/postinst_intercept update_udev_hwdb ${PKG} mlprefix=${MLPREFIX} binprefix=${MLPREFIX}
+ else
+ udevadm hwdb --update
+ fi
+}
+
+pkg_prerm_udev-hwdb () {
+ rm -f $D${sysconfdir}/udev/hwdb.bin
+}
diff --git a/poky/meta/recipes-core/util-linux/util-linux.inc b/poky/meta/recipes-core/util-linux/util-linux.inc
index c7ba8c44..34255a2 100644
--- a/poky/meta/recipes-core/util-linux/util-linux.inc
+++ b/poky/meta/recipes-core/util-linux/util-linux.inc
@@ -284,6 +284,7 @@
BBCLASSEXTEND = "native nativesdk"
+PTEST_BINDIR = "1"
do_compile_ptest() {
oe_runmake buildtest-TESTS
}
@@ -312,8 +313,8 @@
'/^\tif[[:space:]]\[[[:space:]]![[:space:]]-x[[:space:]]"$1"/s|$1|`which $1 2>/dev/null`|g' \
${D}${PTEST_PATH}/tests/functions.sh
- # "kill -L" behaves differently than "/bin/kill -L" so we need an additional fix
+ # Running "kill" without the the complete path would use the shell's built-in kill
sed -i -e \
- '/^TS_CMD_KILL/ s|kill|/bin/kill|g' \
+ '/^TS_CMD_KILL/ s|kill|${PTEST_PATH}/bin/kill|g' \
${D}${PTEST_PATH}/tests/commands.sh
}
diff --git a/poky/meta/recipes-core/util-linux/util-linux/run-ptest b/poky/meta/recipes-core/util-linux/util-linux/run-ptest
index 8c57bd2..0324832 100644
--- a/poky/meta/recipes-core/util-linux/util-linux/run-ptest
+++ b/poky/meta/recipes-core/util-linux/util-linux/run-ptest
@@ -1,5 +1,9 @@
#!/bin/sh
+current_path=$(readlink -f $0)
+export bindir=$(dirname $current_path)
+export PATH=$bindir/bin:$PATH
+
cd tests || exit 1
comps=$(find ts/ -type f -perm -111 -regex ".*/[^\.~]*" | sort)
diff --git a/poky/meta/recipes-devtools/binutils/binutils-2.32.inc b/poky/meta/recipes-devtools/binutils/binutils-2.32.inc
index 5d0c16b..49e6827 100644
--- a/poky/meta/recipes-devtools/binutils/binutils-2.32.inc
+++ b/poky/meta/recipes-devtools/binutils/binutils-2.32.inc
@@ -44,6 +44,10 @@
file://0013-Detect-64-bit-MIPS-targets.patch \
file://0014-sync-with-OE-libtool-changes.patch \
file://0015-binutils-enable-x86_64-pep-for-producing-EFI-binarie.patch \
+ file://CVE-2019-9074.patch \
+ file://CVE-2019-9075.patch \
+ file://CVE-2019-9076.patch \
+ file://CVE-2019-9077.patch \
"
S = "${WORKDIR}/git"
diff --git a/poky/meta/recipes-devtools/binutils/binutils/CVE-2019-9074.patch b/poky/meta/recipes-devtools/binutils/binutils/CVE-2019-9074.patch
new file mode 100644
index 0000000..a11a512
--- /dev/null
+++ b/poky/meta/recipes-devtools/binutils/binutils/CVE-2019-9074.patch
@@ -0,0 +1,68 @@
+From e2ebb3906432dcca2727186ad79415f920730fb2 Mon Sep 17 00:00:00 2001
+From: Alan Modra <amodra@gmail.com>
+Date: Tue, 19 Feb 2019 22:48:44 +1030
+Subject: [PATCH] PR24235, Read memory violation in pei-x86_64.c
+
+ PR 24235
+ * pei-x86_64.c (pex64_bfd_print_pdata_section): Correct checks
+ attempting to prevent read past end of section.
+
+Upstream-Status: Backport [https://github.com/bminor/binutils-gdb/commit/179f2db0d9c397d7dd8a59907b84208b79f7f48c]
+CVE: CVE-2019-9074
+Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
+---
+ bfd/ChangeLog | 6 ++++++
+ bfd/pei-x86_64.c | 9 ++++-----
+ 2 files changed, 10 insertions(+), 5 deletions(-)
+
+diff --git a/bfd/ChangeLog b/bfd/ChangeLog
+index dd2c741..cbf30de 100644
+--- a/bfd/ChangeLog
++++ b/bfd/ChangeLog
+@@ -1,3 +1,9 @@
++2019-02-19 Alan Modra <amodra@gmail.com>
++
++ PR 24235
++ * pei-x86_64.c (pex64_bfd_print_pdata_section): Correct checks
++ attempting to prevent read past end of section.
++
+ 2019-02-04 Nick Clifton <nickc@redhat.com>
+
+ * development.sh (experimental) Set to false.
+diff --git a/bfd/pei-x86_64.c b/bfd/pei-x86_64.c
+index ff1093c..7e75104 100644
+--- a/bfd/pei-x86_64.c
++++ b/bfd/pei-x86_64.c
+@@ -541,7 +541,7 @@ pex64_bfd_print_pdata_section (bfd *abfd, void *vfile, asection *pdata_section)
+ /* virt_size might be zero for objects. */
+ if (stop == 0 && strcmp (abfd->xvec->name, "pe-x86-64") == 0)
+ {
+- stop = (datasize / onaline) * onaline;
++ stop = datasize;
+ virt_size_is_zero = TRUE;
+ }
+ else if (datasize < stop)
+@@ -551,8 +551,8 @@ pex64_bfd_print_pdata_section (bfd *abfd, void *vfile, asection *pdata_section)
+ _("Warning: %s section size (%ld) is smaller than virtual size (%ld)\n"),
+ pdata_section->name, (unsigned long) datasize,
+ (unsigned long) stop);
+- /* Be sure not to read passed datasize. */
+- stop = datasize / onaline;
++ /* Be sure not to read past datasize. */
++ stop = datasize;
+ }
+
+ /* Display functions table. */
+@@ -724,8 +724,7 @@ pex64_bfd_print_pdata_section (bfd *abfd, void *vfile, asection *pdata_section)
+ altent += imagebase;
+
+ if (altent >= pdata_vma
+- && (altent + PDATA_ROW_SIZE <= pdata_vma
+- + pei_section_data (abfd, pdata_section)->virt_size))
++ && altent - pdata_vma + PDATA_ROW_SIZE <= stop)
+ {
+ pex64_get_runtime_function
+ (abfd, &arf, &pdata[altent - pdata_vma]);
+--
+2.7.4
+
diff --git a/poky/meta/recipes-devtools/binutils/binutils/CVE-2019-9075.patch b/poky/meta/recipes-devtools/binutils/binutils/CVE-2019-9075.patch
new file mode 100644
index 0000000..bcb1310
--- /dev/null
+++ b/poky/meta/recipes-devtools/binutils/binutils/CVE-2019-9075.patch
@@ -0,0 +1,119 @@
+From 8abac8031ed369a2734b1cdb7df28a39a54b4b49 Mon Sep 17 00:00:00 2001
+From: Alan Modra <amodra@gmail.com>
+Date: Wed, 20 Feb 2019 08:21:24 +1030
+Subject: [PATCH] PR24236, Heap buffer overflow in
+ _bfd_archive_64_bit_slurp_armap
+
+ PR 24236
+ * archive64.c (_bfd_archive_64_bit_slurp_armap): Move code adding
+ sentinel NUL to string buffer nearer to loop where it is used.
+ Don't go past sentinel when scanning strings, and don't write
+ NUL again.
+ * archive.c (do_slurp_coff_armap): Simplify string handling to
+ archive64.c style.
+
+Upstream-Status: Backport [https://github.com/bminor/binutils-gdb/commit/8abac8031ed369a2734b1cdb7df28a39a54b4b49]
+CVE: CVE-2019-9075
+Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
+---
+ bfd/ChangeLog | 10 ++++++++++
+ bfd/archive.c | 17 +++++++----------
+ bfd/archive64.c | 10 +++++-----
+ 3 files changed, 22 insertions(+), 15 deletions(-)
+
+diff --git a/bfd/ChangeLog b/bfd/ChangeLog
+index 72c87c7..e39bb12 100644
+--- a/bfd/ChangeLog
++++ b/bfd/ChangeLog
+@@ -1,3 +1,13 @@
++2019-02-20 Alan Modra <amodra@gmail.com>
++
++ PR 24236
++ * archive64.c (_bfd_archive_64_bit_slurp_armap): Move code adding
++ sentinel NUL to string buffer nearer to loop where it is used.
++ Don't go past sentinel when scanning strings, and don't write
++ NUL again.
++ * archive.c (do_slurp_coff_armap): Simplify string handling to
++ archive64.c style.
++
+ 2019-02-19 Alan Modra <amodra@gmail.com>
+
+ PR 24235
+diff --git a/bfd/archive.c b/bfd/archive.c
+index d2d9b72..68a92a3 100644
+--- a/bfd/archive.c
++++ b/bfd/archive.c
+@@ -1012,6 +1012,7 @@ do_slurp_coff_armap (bfd *abfd)
+ int *raw_armap, *rawptr;
+ struct artdata *ardata = bfd_ardata (abfd);
+ char *stringbase;
++ char *stringend;
+ bfd_size_type stringsize;
+ bfd_size_type parsed_size;
+ carsym *carsyms;
+@@ -1071,22 +1072,18 @@ do_slurp_coff_armap (bfd *abfd)
+ }
+
+ /* OK, build the carsyms. */
+- for (i = 0; i < nsymz && stringsize > 0; i++)
++ stringend = stringbase + stringsize;
++ *stringend = 0;
++ for (i = 0; i < nsymz; i++)
+ {
+- bfd_size_type len;
+-
+ rawptr = raw_armap + i;
+ carsyms->file_offset = swap ((bfd_byte *) rawptr);
+ carsyms->name = stringbase;
+- /* PR 17512: file: 4a1d50c1. */
+- len = strnlen (stringbase, stringsize);
+- if (len < stringsize)
+- len ++;
+- stringbase += len;
+- stringsize -= len;
++ stringbase += strlen (stringbase);
++ if (stringbase != stringend)
++ ++stringbase;
+ carsyms++;
+ }
+- *stringbase = 0;
+
+ ardata->symdef_count = nsymz;
+ ardata->first_file_filepos = bfd_tell (abfd);
+diff --git a/bfd/archive64.c b/bfd/archive64.c
+index 312bf82..42f6ed9 100644
+--- a/bfd/archive64.c
++++ b/bfd/archive64.c
+@@ -100,8 +100,6 @@ _bfd_archive_64_bit_slurp_armap (bfd *abfd)
+ return FALSE;
+ carsyms = ardata->symdefs;
+ stringbase = ((char *) ardata->symdefs) + carsym_size;
+- stringbase[stringsize] = 0;
+- stringend = stringbase + stringsize;
+
+ raw_armap = (bfd_byte *) bfd_alloc (abfd, ptrsize);
+ if (raw_armap == NULL)
+@@ -115,15 +113,17 @@ _bfd_archive_64_bit_slurp_armap (bfd *abfd)
+ goto release_raw_armap;
+ }
+
++ stringend = stringbase + stringsize;
++ *stringend = 0;
+ for (i = 0; i < nsymz; i++)
+ {
+ carsyms->file_offset = bfd_getb64 (raw_armap + i * 8);
+ carsyms->name = stringbase;
+- if (stringbase < stringend)
+- stringbase += strlen (stringbase) + 1;
++ stringbase += strlen (stringbase);
++ if (stringbase != stringend)
++ ++stringbase;
+ ++carsyms;
+ }
+- *stringbase = '\0';
+
+ ardata->symdef_count = nsymz;
+ ardata->first_file_filepos = bfd_tell (abfd);
+--
+2.7.4
+
diff --git a/poky/meta/recipes-devtools/binutils/binutils/CVE-2019-9076.patch b/poky/meta/recipes-devtools/binutils/binutils/CVE-2019-9076.patch
new file mode 100644
index 0000000..ec8cde2
--- /dev/null
+++ b/poky/meta/recipes-devtools/binutils/binutils/CVE-2019-9076.patch
@@ -0,0 +1,49 @@
+From 9f841c583880eb6d0194455c1583a766f853e628 Mon Sep 17 00:00:00 2001
+From: Alan Modra <amodra@gmail.com>
+Date: Wed, 20 Feb 2019 12:06:31 +1030
+Subject: [PATCH] PR24233, Out of memory
+
+ PR 24233
+ * objdump.c (dump_bfd_private_header): Print warning if
+ bfd_print_private_bfd_data returns false.
+
+Upstream-Status: Backport [https://github.com/bminor/binutils-gdb/commit/7d272a55caebfc26ab2e15d1e9439bac978b9bb7]
+CVE: CVE-2019-9076
+Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
+---
+ binutils/ChangeLog | 6 ++++++
+ binutils/objdump.c | 4 +++-
+ 2 files changed, 9 insertions(+), 1 deletion(-)
+
+diff --git a/binutils/ChangeLog b/binutils/ChangeLog
+index f837c37..d5dd7cb 100644
+--- a/binutils/ChangeLog
++++ b/binutils/ChangeLog
+@@ -1,3 +1,9 @@
++2019-02-20 Alan Modra <amodra@gmail.com>
++
++ PR 24233
++ * objdump.c (dump_bfd_private_header): Print warning if
++ bfd_print_private_bfd_data returns false.
++
+ 2019-02-02 Nick Clifton <nickc@redhat.com>
+
+ * configure: Regenerate.
+diff --git a/binutils/objdump.c b/binutils/objdump.c
+index 8725390..7d0c6a4 100644
+--- a/binutils/objdump.c
++++ b/binutils/objdump.c
+@@ -3178,7 +3178,9 @@ dump_bfd_header (bfd *abfd)
+ static void
+ dump_bfd_private_header (bfd *abfd)
+ {
+- bfd_print_private_bfd_data (abfd, stdout);
++ if (!bfd_print_private_bfd_data (abfd, stdout))
++ non_fatal (_("warning: private headers incomplete: %s"),
++ bfd_errmsg (bfd_get_error ()));
+ }
+
+ static void
+--
+2.7.4
+
diff --git a/poky/meta/recipes-devtools/binutils/binutils/CVE-2019-9077.patch b/poky/meta/recipes-devtools/binutils/binutils/CVE-2019-9077.patch
new file mode 100644
index 0000000..11ecb71
--- /dev/null
+++ b/poky/meta/recipes-devtools/binutils/binutils/CVE-2019-9077.patch
@@ -0,0 +1,37 @@
+From f7bbc8890de45df6eda0ddef5dd04f835f54eecf Mon Sep 17 00:00:00 2001
+From: Nick Clifton <nickc@redhat.com>
+Date: Wed, 20 Feb 2019 17:03:47 +0000
+Subject: [PATCH] Fix a illegal memory access fault when parsing a corrupt MIPS
+ option section using readelf.
+
+ PR 24243
+ * readelf.c (process_mips_specific): Check for an options section
+ that is too small to even contain a single option.
+
+Upstream-Status: Backport [https://github.com/bminor/binutils-gdb/commit/7fc0c668f2aceb8582d74db1ad2528e2bba8a921]
+CVE: CVE-2019-9077
+Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
+---
+ binutils/readelf.c | 6 ++++++
+ 1 file changed, 6 insertions(+)
+
+diff --git a/binutils/readelf.c b/binutils/readelf.c
+index 9df3742..18ab806 100644
+--- a/binutils/readelf.c
++++ b/binutils/readelf.c
+@@ -16179,6 +16179,12 @@ process_mips_specific (Filedata * filedata)
+ error (_("No MIPS_OPTIONS header found\n"));
+ return FALSE;
+ }
++ /* PR 24243 */
++ if (sect->sh_size < sizeof (* eopt))
++ {
++ error (_("The MIPS options section is too small.\n"));
++ return FALSE;
++ }
+
+ eopt = (Elf_External_Options *) get_data (NULL, filedata, options_offset, 1,
+ sect->sh_size, _("options"));
+--
+2.7.4
+
diff --git a/poky/meta/recipes-devtools/bison/bison/0001-Unset-need_charset_alias-when-building-for-musl.patch b/poky/meta/recipes-devtools/bison/bison/0001-Unset-need_charset_alias-when-building-for-musl.patch
deleted file mode 100644
index ba1a4ba..0000000
--- a/poky/meta/recipes-devtools/bison/bison/0001-Unset-need_charset_alias-when-building-for-musl.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From b9565dc2fe0c4f7daaec91b7e83bc7313dee2f4a Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Mon, 13 Apr 2015 17:02:13 -0700
-Subject: [PATCH] Unset need_charset_alias when building for musl
-
-localcharset uses ac_cv_gnu_library_2_1 from glibc21.m4
-which actually shoudl be fixed in gnulib and then all downstream
-projects will get it eventually. For now we apply the fix to
-coreutils
-
-Upstream-Status: Pending
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- lib/gnulib.mk | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/lib/gnulib.mk b/lib/gnulib.mk
-index e1d74db..c0e92dd 100644
---- a/lib/gnulib.mk
-+++ b/lib/gnulib.mk
-@@ -1882,7 +1882,7 @@ install-exec-localcharset: all-local
- case '$(host_os)' in \
- darwin[56]*) \
- need_charset_alias=true ;; \
-- darwin* | cygwin* | mingw* | pw32* | cegcc*) \
-+ darwin* | cygwin* | mingw* | pw32* | cegcc* | linux-musl*) \
- need_charset_alias=false ;; \
- *) \
- need_charset_alias=true ;; \
---
-2.1.4
-
diff --git a/poky/meta/recipes-devtools/bison/bison/0001-src-local.mk-fix-parallel-issue.patch b/poky/meta/recipes-devtools/bison/bison/0001-src-local.mk-fix-parallel-issue.patch
deleted file mode 100644
index 1e86f55..0000000
--- a/poky/meta/recipes-devtools/bison/bison/0001-src-local.mk-fix-parallel-issue.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From 5b9204eee4b06b48d54ecc3ef3a0b56fc5cc84f8 Mon Sep 17 00:00:00 2001
-From: Robert Yang <liezhi.yang@windriver.com>
-Date: Fri, 24 Apr 2015 00:38:32 -0700
-Subject: [PATCH] src/local.mk: fix parallel issue
-
-Fixed:
-rm -f src/yacc src/yacc.tmp
-echo '#! /bin/sh' >src/yacc.tmp
-/bin/bash: src/yacc.tmp: No such file or directory
-Makefile:6670: recipe for target 'src/yacc' failed
-
-Upstream-Status: Submitted [ http://lists.gnu.org/archive/html/bison-patches/2017-07/msg00000.html ]
-
-Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
-Signed-off-by: Dengke Du <dengke.du@windriver.com>
----
- src/local.mk | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/src/local.mk b/src/local.mk
-index 573ad00..28bfae4 100644
---- a/src/local.mk
-+++ b/src/local.mk
-@@ -119,6 +119,7 @@ MOSTLYCLEANFILES += src/yacc
-
- src/yacc:
- $(AM_V_GEN)rm -f $@ $@.tmp
-+ $(AM_V_at)$(MKDIR_P) src
- $(AM_V_at)echo '#! /bin/sh' >$@.tmp
- $(AM_V_at)echo "exec '$(bindir)/bison' -y "'"$$@"' >>$@.tmp
- $(AM_V_at)chmod a+x $@.tmp
---
-2.8.1
-
diff --git a/poky/meta/recipes-devtools/bison/bison/gnulib.patch b/poky/meta/recipes-devtools/bison/bison/gnulib.patch
deleted file mode 100644
index 7eaf0ce..0000000
--- a/poky/meta/recipes-devtools/bison/bison/gnulib.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-Fix gnulib issues found with glibc 2.28 libio.h removal
-
-see
-https://lists.gnu.org/r/bug-gnulib/2018-03/msg00000.html
-
-Upstream-Status: Pending
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-
-Index: bison-3.0.4/lib/fseterr.c
-===================================================================
---- bison-3.0.4.orig/lib/fseterr.c
-+++ bison-3.0.4/lib/fseterr.c
-@@ -29,7 +29,7 @@ fseterr (FILE *fp)
- /* Most systems provide FILE as a struct and the necessary bitmask in
- <stdio.h>, because they need it for implementing getc() and putc() as
- fast macros. */
--#if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
-+#if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
- fp->_flags |= _IO_ERR_SEEN;
- #elif defined __sferror || defined __DragonFly__ /* FreeBSD, NetBSD, OpenBSD, DragonFly, Mac OS X, Cygwin */
- fp_->_flags |= __SERR;
diff --git a/poky/meta/recipes-devtools/bison/bison_3.0.4.bb b/poky/meta/recipes-devtools/bison/bison_3.0.4.bb
deleted file mode 100644
index f1b05da..0000000
--- a/poky/meta/recipes-devtools/bison/bison_3.0.4.bb
+++ /dev/null
@@ -1,43 +0,0 @@
-SUMMARY = "GNU Project parser generator (yacc replacement)"
-DESCRIPTION = "Bison is a general-purpose parser generator that converts an annotated context-free grammar into \
-an LALR(1) or GLR parser for that grammar. Bison is upward compatible with Yacc: all properly-written Yacc \
-grammars ought to work with Bison with no change. Anyone familiar with Yacc should be able to use Bison with \
-little trouble."
-HOMEPAGE = "http://www.gnu.org/software/bison/"
-LICENSE = "GPLv3"
-LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
-SECTION = "devel"
-DEPENDS = "bison-native flex-native"
-
-SRC_URI = "${GNU_MIRROR}/bison/bison-${PV}.tar.xz \
- file://0001-Unset-need_charset_alias-when-building-for-musl.patch \
- file://dont-depend-on-help2man.patch.patch \
- file://0001-src-local.mk-fix-parallel-issue.patch \
- file://add-with-bisonlocaledir.patch \
- file://gnulib.patch \
-"
-
-# No point in hardcoding path to m4, just use PATH
-EXTRA_OECONF += "M4=m4"
-
-SRC_URI[md5sum] = "c342201de104cc9ce0a21e0ad10d4021"
-SRC_URI[sha256sum] = "a72428c7917bdf9fa93cb8181c971b6e22834125848cf1d03ce10b1bb0716fe1"
-
-inherit autotools gettext texinfo
-
-# The automatic m4 path detection gets confused, so force the right value
-acpaths = "-I ${S}/m4"
-
-do_compile_prepend() {
- for i in mfcalc calc++ rpcalc; do mkdir -p ${B}/examples/$i; done
-}
-
-do_install_append_class-native() {
- create_wrapper ${D}/${bindir}/bison \
- BISON_PKGDATADIR=${STAGING_DATADIR_NATIVE}/bison
-}
-do_install_append_class-nativesdk() {
- create_wrapper ${D}/${bindir}/bison \
- BISON_PKGDATADIR=${datadir}/bison
-}
-BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-devtools/bison/bison_3.1.bb b/poky/meta/recipes-devtools/bison/bison_3.1.bb
new file mode 100644
index 0000000..a743bfd
--- /dev/null
+++ b/poky/meta/recipes-devtools/bison/bison_3.1.bb
@@ -0,0 +1,40 @@
+SUMMARY = "GNU Project parser generator (yacc replacement)"
+DESCRIPTION = "Bison is a general-purpose parser generator that converts an annotated context-free grammar into \
+an LALR(1) or GLR parser for that grammar. Bison is upward compatible with Yacc: all properly-written Yacc \
+grammars ought to work with Bison with no change. Anyone familiar with Yacc should be able to use Bison with \
+little trouble."
+HOMEPAGE = "http://www.gnu.org/software/bison/"
+LICENSE = "GPLv3"
+LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
+SECTION = "devel"
+DEPENDS = "bison-native flex-native"
+
+SRC_URI = "${GNU_MIRROR}/bison/bison-${PV}.tar.xz \
+ file://dont-depend-on-help2man.patch.patch \
+ file://add-with-bisonlocaledir.patch \
+"
+
+# No point in hardcoding path to m4, just use PATH
+EXTRA_OECONF += "M4=m4"
+
+SRC_URI[md5sum] = "db7e431785ad96870bfa570a15cab079"
+SRC_URI[sha256sum] = "7c2464ad6cb7b513b2c350a092d919327e1f63d12ff024836acbb504475da5c6"
+
+inherit autotools gettext texinfo
+
+# The automatic m4 path detection gets confused, so force the right value
+acpaths = "-I ${S}/m4"
+
+do_compile_prepend() {
+ for i in mfcalc calc++ rpcalc; do mkdir -p ${B}/examples/$i; done
+}
+
+do_install_append_class-native() {
+ create_wrapper ${D}/${bindir}/bison \
+ BISON_PKGDATADIR=${STAGING_DATADIR_NATIVE}/bison
+}
+do_install_append_class-nativesdk() {
+ create_wrapper ${D}/${bindir}/bison \
+ BISON_PKGDATADIR=${datadir}/bison
+}
+BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-devtools/btrfs-tools/btrfs-tools_4.20.1.bb b/poky/meta/recipes-devtools/btrfs-tools/btrfs-tools_4.20.1.bb
deleted file mode 100644
index 3647232..0000000
--- a/poky/meta/recipes-devtools/btrfs-tools/btrfs-tools_4.20.1.bb
+++ /dev/null
@@ -1,44 +0,0 @@
-SUMMARY = "Checksumming Copy on Write Filesystem utilities"
-DESCRIPTION = "Btrfs is a new copy on write filesystem for Linux aimed at \
-implementing advanced features while focusing on fault tolerance, repair and \
-easy administration. \
-This package contains utilities (mkfs, fsck, btrfsctl) used to work with \
-btrfs and an utility (btrfs-convert) to make a btrfs filesystem from an ext3."
-
-HOMEPAGE = "https://btrfs.wiki.kernel.org"
-
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=fcb02dc552a041dee27e4b85c7396067"
-SECTION = "base"
-DEPENDS = "util-linux attr e2fsprogs lzo acl python3-setuptools-native"
-DEPENDS_append_class-target = " udev"
-RDEPENDS_${PN} = "libgcc"
-
-SRCREV = "6c33832b8c7bf2d7b64d6aed023c0bda43a03311"
-SRC_URI = "git://git.kernel.org/pub/scm/linux/kernel/git/kdave/btrfs-progs.git \
- file://0001-Add-LDFLAGS-when-building-libbtrfsutil.so.patch \
- file://0001-Add-a-possibility-to-specify-where-python-modules-ar.patch \
- "
-
-inherit autotools-brokensep pkgconfig manpages distutils3-base
-
-CLEANBROKEN = "1"
-
-PACKAGECONFIG[manpages] = "--enable-documentation, --disable-documentation, asciidoc-native xmlto-native"
-EXTRA_OECONF = " --disable-zstd"
-EXTRA_OECONF_append_libc-musl = " --disable-backtrace "
-EXTRA_OEMAKE = "V=1"
-
-do_configure_prepend() {
- # Upstream doesn't ship this and autoreconf won't install it as automake isn't used.
- mkdir -p ${S}/config
- cp -f $(automake --print-libdir)/install-sh ${S}/config/
-}
-
-S = "${WORKDIR}/git"
-
-do_install_append() {
- oe_runmake 'DESTDIR=${D}' 'PYTHON_SITEPACKAGES_DIR=${PYTHON_SITEPACKAGES_DIR}' install_python
-}
-
-BBCLASSEXTEND = "native"
diff --git a/poky/meta/recipes-devtools/btrfs-tools/btrfs-tools_4.20.2.bb b/poky/meta/recipes-devtools/btrfs-tools/btrfs-tools_4.20.2.bb
new file mode 100644
index 0000000..a1e7309
--- /dev/null
+++ b/poky/meta/recipes-devtools/btrfs-tools/btrfs-tools_4.20.2.bb
@@ -0,0 +1,44 @@
+SUMMARY = "Checksumming Copy on Write Filesystem utilities"
+DESCRIPTION = "Btrfs is a new copy on write filesystem for Linux aimed at \
+implementing advanced features while focusing on fault tolerance, repair and \
+easy administration. \
+This package contains utilities (mkfs, fsck, btrfsctl) used to work with \
+btrfs and an utility (btrfs-convert) to make a btrfs filesystem from an ext3."
+
+HOMEPAGE = "https://btrfs.wiki.kernel.org"
+
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=fcb02dc552a041dee27e4b85c7396067"
+SECTION = "base"
+DEPENDS = "util-linux attr e2fsprogs lzo acl python3-setuptools-native"
+DEPENDS_append_class-target = " udev"
+RDEPENDS_${PN} = "libgcc"
+
+SRCREV = "5c748404b97035463c79ba4e5fd41b6858535509"
+SRC_URI = "git://git.kernel.org/pub/scm/linux/kernel/git/kdave/btrfs-progs.git \
+ file://0001-Add-LDFLAGS-when-building-libbtrfsutil.so.patch \
+ file://0001-Add-a-possibility-to-specify-where-python-modules-ar.patch \
+ "
+
+inherit autotools-brokensep pkgconfig manpages distutils3-base
+
+CLEANBROKEN = "1"
+
+PACKAGECONFIG[manpages] = "--enable-documentation, --disable-documentation, asciidoc-native xmlto-native"
+EXTRA_OECONF = " --disable-zstd"
+EXTRA_OECONF_append_libc-musl = " --disable-backtrace "
+EXTRA_OEMAKE = "V=1"
+
+do_configure_prepend() {
+ # Upstream doesn't ship this and autoreconf won't install it as automake isn't used.
+ mkdir -p ${S}/config
+ cp -f $(automake --print-libdir)/install-sh ${S}/config/
+}
+
+S = "${WORKDIR}/git"
+
+do_install_append() {
+ oe_runmake 'DESTDIR=${D}' 'PYTHON_SITEPACKAGES_DIR=${PYTHON_SITEPACKAGES_DIR}' install_python
+}
+
+BBCLASSEXTEND = "native"
diff --git a/poky/meta/recipes-devtools/ccache/ccache.inc b/poky/meta/recipes-devtools/ccache/ccache.inc
index 7f80065..a31acad 100644
--- a/poky/meta/recipes-devtools/ccache/ccache.inc
+++ b/poky/meta/recipes-devtools/ccache/ccache.inc
@@ -9,7 +9,7 @@
DEPENDS = "zlib"
-SRC_URI = "https://download.samba.org/pub/${BPN}/${BP}.tar.gz"
+SRC_URI = "https://github.com/ccache/ccache/releases/download/v${PV}/${BP}.tar.gz"
inherit autotools
diff --git a/poky/meta/recipes-devtools/ccache/ccache_3.6.bb b/poky/meta/recipes-devtools/ccache/ccache_3.6.bb
deleted file mode 100644
index 60807be..0000000
--- a/poky/meta/recipes-devtools/ccache/ccache_3.6.bb
+++ /dev/null
@@ -1,12 +0,0 @@
-require ccache.inc
-
-LICENSE = "GPLv3+"
-LIC_FILES_CHKSUM = "file://LICENSE.adoc;md5=70762511f9c509cc2a4e4ba2ef687ae3"
-
-SRC_URI[md5sum] = "bd6fd69db28426baf22ec0acdd5c4b2a"
-SRC_URI[sha256sum] = "a3f2b91a2353b65a863c5901251efe48060ecdebec46b5eaec8ea8e092b9e871"
-
-SRC_URI += " \
- file://0002-dev.mk.in-fix-file-name-too-long.patch \
- file://0003-Fix-Segmentation-fault-error-when-gcc-o-dev-null.patch \
-"
diff --git a/poky/meta/recipes-devtools/ccache/ccache_3.7.1.bb b/poky/meta/recipes-devtools/ccache/ccache_3.7.1.bb
new file mode 100644
index 0000000..1db7094
--- /dev/null
+++ b/poky/meta/recipes-devtools/ccache/ccache_3.7.1.bb
@@ -0,0 +1,7 @@
+require ccache.inc
+
+LICENSE = "GPLv3+"
+LIC_FILES_CHKSUM = "file://LICENSE.adoc;md5=0094c59039cec66b8a4c905204333514"
+
+SRC_URI[md5sum] = "74339465ab87e0b406985ed69515f19b"
+SRC_URI[sha256sum] = "e562fcdbe766406b6fe4bf97ce5c001d2be8a17465f33bcddefc9499bbb057d8"
diff --git a/poky/meta/recipes-devtools/ccache/files/0002-dev.mk.in-fix-file-name-too-long.patch b/poky/meta/recipes-devtools/ccache/files/0002-dev.mk.in-fix-file-name-too-long.patch
deleted file mode 100644
index 16a6e9d..0000000
--- a/poky/meta/recipes-devtools/ccache/files/0002-dev.mk.in-fix-file-name-too-long.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From 7dab2995ed8eeccd7b0acd79668bc28f3a2427d5 Mon Sep 17 00:00:00 2001
-From: Robert Yang <liezhi.yang@windriver.com>
-Date: Wed, 16 Sep 2015 19:45:40 -0700
-Subject: [PATCH] dev.mk.in: fix file name too long error
-
-The all_cppflags changes path to filename which causes file name too long
-error when the path is longer than NAME_MAX (usually 255). Strip srcdir
-to fix the problem.
-
-Upstream-Status: Backport [https://github.com/ccache/ccache/commit/4d86e884d07ba1853a0c70507cc4d04107f57c29]
-
-Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
-
----
- dev.mk.in | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/dev.mk.in b/dev.mk.in
-index 91b0a57..583ade0 100644
---- a/dev.mk.in
-+++ b/dev.mk.in
-@@ -1,7 +1,7 @@
- # GNU make syntax reigns in this file.
-
- all_cflags += -Werror @more_warnings@
--all_cppflags += -MD -MP -MF .deps/$(subst .._,,$(subst /,_,$<)).d
-+all_cppflags += -MD -MP -MF .deps/$(subst .._,,$(subst /,_,$(subst $(srcdir)/,,$<))).d
-
- A2X = a2x
- ASCIIDOC = asciidoc
diff --git a/poky/meta/recipes-devtools/ccache/files/0003-Fix-Segmentation-fault-error-when-gcc-o-dev-null.patch b/poky/meta/recipes-devtools/ccache/files/0003-Fix-Segmentation-fault-error-when-gcc-o-dev-null.patch
deleted file mode 100644
index b3012b7..0000000
--- a/poky/meta/recipes-devtools/ccache/files/0003-Fix-Segmentation-fault-error-when-gcc-o-dev-null.patch
+++ /dev/null
@@ -1,79 +0,0 @@
-From c51b63758e95247e3c1e2f06e5f5bfb49849e66d Mon Sep 17 00:00:00 2001
-From: Robert Yang <liezhi.yang@windriver.com>
-Date: Tue, 22 Jan 2019 16:30:52 +0800
-Subject: [PATCH] Fix Segmentation fault error when gcc -o /dev/null
-
-Fixed:
-$ export CCACHE_DEBUG=1
-$ ccache gcc -c hello.c -o /dev/null
-
-Segmentation fault (core dumped)
-
-This is because failed to open /dev/null.foo (Permission denied), check file
-stream before write to it can fix the problem.
-
-Upstream-Status: Backport [https://github.com/ccache/ccache/commit/4d86e884d07ba1853a0c70507cc4d04107f57c29]
-
-Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
----
- src/ccache.c | 15 ++++++++++++---
- src/util.c | 8 ++++++--
- 2 files changed, 18 insertions(+), 5 deletions(-)
-
-diff --git a/src/ccache.c b/src/ccache.c
-index b4cdb86..8c227df 100644
---- a/src/ccache.c
-+++ b/src/ccache.c
-@@ -521,9 +521,13 @@ init_hash_debug(struct hash *hash, const char *obj_path, char type,
-
- char *path = format("%s.ccache-input-%c", obj_path, type);
- FILE *debug_binary_file = fopen(path, "wb");
-- hash_enable_debug(hash, section_name, debug_binary_file, debug_text_file);
-+ if (debug_binary_file) {
-+ hash_enable_debug(hash, section_name, debug_binary_file, debug_text_file);
-+ exitfn_add(fclose_exitfn, debug_binary_file);
-+ } else {
-+ cc_log("Failed to open %s: %s", path, strerror(errno));
-+ }
- free(path);
-- exitfn_add(fclose_exitfn, debug_binary_file);
- }
-
- static enum guessed_compiler
-@@ -3670,8 +3674,13 @@ ccache(int argc, char *argv[])
- if (conf->debug) {
- char *path = format("%s.ccache-input-text", output_obj);
- debug_text_file = fopen(path, "w");
-+ if (debug_text_file) {
-+ exitfn_add(fclose_exitfn, debug_text_file);
-+ }
-+ else {
-+ cc_log("Failed to open %s: %s", path, strerror(errno));
-+ }
- free(path);
-- exitfn_add(fclose_exitfn, debug_text_file);
- }
-
- struct hash *common_hash = hash_init();
-diff --git a/src/util.c b/src/util.c
-index e442cc4..a49fb4c 100644
---- a/src/util.c
-+++ b/src/util.c
-@@ -219,8 +219,12 @@ void
- cc_dump_log_buffer(const char *path)
- {
- FILE *file = fopen(path, "w");
-- (void) fwrite(logbuffer, 1, logsize, file);
-- fclose(file);
-+ if (file) {
-+ (void) fwrite(logbuffer, 1, logsize, file);
-+ fclose(file);
-+ } else {
-+ cc_log("Failed to open %s: %s", path, strerror(errno));
-+ }
- }
-
- // Something went badly wrong!
---
-2.7.4
-
diff --git a/poky/meta/recipes-devtools/createrepo-c/createrepo-c_0.12.2.bb b/poky/meta/recipes-devtools/createrepo-c/createrepo-c_0.12.2.bb
new file mode 100644
index 0000000..c70523d
--- /dev/null
+++ b/poky/meta/recipes-devtools/createrepo-c/createrepo-c_0.12.2.bb
@@ -0,0 +1,34 @@
+DESCRIPTION = "C implementation of createrepo."
+HOMEPAGE = "https://github.com/rpm-software-management/createrepo_c/wiki"
+
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
+
+SRC_URI = "git://github.com/rpm-software-management/createrepo_c \
+ file://0001-Do-not-set-PYTHON_INSTALL_DIR-by-running-python.patch \
+ "
+
+SRCREV = "5b4c06f6af24633f667da37455281f24a4abd461"
+
+S = "${WORKDIR}/git"
+
+DEPENDS = "expat curl glib-2.0 libxml2 openssl bzip2 zlib file sqlite3 xz rpm"
+DEPENDS_append_class-native = " file-replacement-native"
+
+inherit cmake pkgconfig bash-completion distutils3-base
+
+EXTRA_OECMAKE = " -DPYTHON_INSTALL_DIR=${PYTHON_SITEPACKAGES_DIR} -DPYTHON_DESIRED=3 -DWITH_ZCHUNK=OFF"
+
+BBCLASSEXTEND = "native nativesdk"
+
+# Direct createrepo to read rpm configuration from our sysroot, not the one it was compiled in
+do_install_append_class-native() {
+ create_wrapper ${D}/${bindir}/createrepo_c \
+ RPM_CONFIGDIR=${STAGING_LIBDIR_NATIVE}/rpm
+}
+
+do_install_append_class-nativesdk() {
+ create_wrapper ${D}/${bindir}/createrepo_c \
+ RPM_CONFIGDIR=${SDKPATHNATIVE}${libdir_nativesdk}/rpm
+ rm -rf ${D}/etc
+}
diff --git a/poky/meta/recipes-devtools/createrepo-c/createrepo-c_git.bb b/poky/meta/recipes-devtools/createrepo-c/createrepo-c_git.bb
deleted file mode 100644
index 9aa8d2a..0000000
--- a/poky/meta/recipes-devtools/createrepo-c/createrepo-c_git.bb
+++ /dev/null
@@ -1,35 +0,0 @@
-DESCRIPTION = "C implementation of createrepo."
-HOMEPAGE = "https://github.com/rpm-software-management/createrepo_c/wiki"
-
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
-
-SRC_URI = "git://github.com/rpm-software-management/createrepo_c \
- file://0001-Do-not-set-PYTHON_INSTALL_DIR-by-running-python.patch \
- "
-
-PV = "0.12.1"
-SRCREV = "7744554ddef7c5be2cd7fbcac49c8b24ce60ef88"
-
-S = "${WORKDIR}/git"
-
-DEPENDS = "expat curl glib-2.0 libxml2 openssl bzip2 zlib file sqlite3 xz rpm"
-DEPENDS_append_class-native = " file-replacement-native"
-
-inherit cmake pkgconfig bash-completion distutils3-base
-
-EXTRA_OECMAKE = " -DPYTHON_INSTALL_DIR=${PYTHON_SITEPACKAGES_DIR} -DPYTHON_DESIRED=3 -DWITH_ZCHUNK=OFF"
-
-BBCLASSEXTEND = "native nativesdk"
-
-# Direct createrepo to read rpm configuration from our sysroot, not the one it was compiled in
-do_install_append_class-native() {
- create_wrapper ${D}/${bindir}/createrepo_c \
- RPM_CONFIGDIR=${STAGING_LIBDIR_NATIVE}/rpm
-}
-
-do_install_append_class-nativesdk() {
- create_wrapper ${D}/${bindir}/createrepo_c \
- RPM_CONFIGDIR=${SDKPATHNATIVE}${libdir_nativesdk}/rpm
- rm -rf ${D}/etc
-}
diff --git a/poky/meta/recipes-devtools/dnf/dnf_4.1.0.bb b/poky/meta/recipes-devtools/dnf/dnf_4.1.0.bb
deleted file mode 100644
index d45023e..0000000
--- a/poky/meta/recipes-devtools/dnf/dnf_4.1.0.bb
+++ /dev/null
@@ -1,75 +0,0 @@
-SUMMARY = "Package manager forked from Yum, using libsolv as a dependency resolver"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
- file://PACKAGE-LICENSING;md5=4a0548e303dbc77f067335b4d688e745 \
- "
-
-SRC_URI = "git://github.com/rpm-software-management/dnf.git \
- file://0001-Corretly-install-tmpfiles.d-configuration.patch \
- file://0001-Do-not-hardcode-etc-and-systemd-unit-directories.patch \
- file://0005-Do-not-prepend-installroot-to-logdir.patch \
- file://0029-Do-not-set-PYTHON_INSTALL_DIR-by-running-python.patch \
- file://0030-Run-python-scripts-using-env.patch \
- "
-
-SRCREV = "ad9b2175517c896c898cf9c8660e9b9b688ac5c7"
-UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>\d+(\.\d+)+)"
-
-S = "${WORKDIR}/git"
-
-inherit cmake gettext bash-completion distutils3-base systemd
-
-DEPENDS += "libdnf librepo libcomps python3-iniparse"
-
-# manpages generation requires http://www.sphinx-doc.org/
-EXTRA_OECMAKE = " -DWITH_MAN=0 -DPYTHON_INSTALL_DIR=${PYTHON_SITEPACKAGES_DIR} -DPYTHON_DESIRED=3"
-
-BBCLASSEXTEND = "native nativesdk"
-
-RDEPENDS_${PN}_class-target += " \
- python3-core \
- python3-codecs \
- python3-netclient \
- python3-email \
- python3-threading \
- python3-distutils \
- python3-logging \
- python3-fcntl \
- librepo \
- python3-shell \
- libcomps \
- libdnf \
- python3-sqlite3 \
- python3-compression \
- python3-rpm \
- python3-iniparse \
- python3-json \
- python3-curses \
- python3-misc \
- python3-gpg \
- "
-
-RRECOMMENDS_${PN}_class-target += "gnupg"
-
-# Create a symlink called 'dnf' as 'make install' does not do it, but
-# .spec file in dnf source tree does (and then Fedora and dnf documentation
-# says that dnf binary is plain 'dnf').
-do_install_append() {
- lnr ${D}/${bindir}/dnf-3 ${D}/${bindir}/dnf
- lnr ${D}/${bindir}/dnf-automatic-3 ${D}/${bindir}/dnf-automatic
-}
-
-# Direct dnf-native to read rpm configuration from our sysroot, not the one it was compiled in
-do_install_append_class-native() {
- create_wrapper ${D}/${bindir}/dnf \
- RPM_CONFIGDIR=${STAGING_LIBDIR_NATIVE}/rpm \
- RPM_NO_CHROOT_FOR_SCRIPTS=1
-}
-
-SYSTEMD_SERVICE_${PN} = "dnf-makecache.service dnf-makecache.timer \
- dnf-automatic.service dnf-automatic.timer \
- dnf-automatic-download.service dnf-automatic-download.timer \
- dnf-automatic-install.service dnf-automatic-install.timer \
- dnf-automatic-notifyonly.service dnf-automatic-notifyonly.timer \
-"
-SYSTEMD_AUTO_ENABLE ?= "disable"
diff --git a/poky/meta/recipes-devtools/dnf/dnf_4.2.2.bb b/poky/meta/recipes-devtools/dnf/dnf_4.2.2.bb
new file mode 100644
index 0000000..c777733
--- /dev/null
+++ b/poky/meta/recipes-devtools/dnf/dnf_4.2.2.bb
@@ -0,0 +1,83 @@
+SUMMARY = "Package manager forked from Yum, using libsolv as a dependency resolver"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
+ file://PACKAGE-LICENSING;md5=4a0548e303dbc77f067335b4d688e745 \
+ "
+
+SRC_URI = "git://github.com/rpm-software-management/dnf.git \
+ file://0001-Corretly-install-tmpfiles.d-configuration.patch \
+ file://0001-Do-not-hardcode-etc-and-systemd-unit-directories.patch \
+ file://0005-Do-not-prepend-installroot-to-logdir.patch \
+ file://0029-Do-not-set-PYTHON_INSTALL_DIR-by-running-python.patch \
+ file://0030-Run-python-scripts-using-env.patch \
+ "
+
+SRCREV = "9947306a55271b8b7c9e2b6e3b7d582885b6045d"
+UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>\d+(\.\d+)+)"
+
+S = "${WORKDIR}/git"
+
+inherit cmake gettext bash-completion distutils3-base systemd
+
+DEPENDS += "libdnf librepo libcomps python3-iniparse"
+
+# manpages generation requires http://www.sphinx-doc.org/
+EXTRA_OECMAKE = " -DWITH_MAN=0 -DPYTHON_INSTALL_DIR=${PYTHON_SITEPACKAGES_DIR} -DPYTHON_DESIRED=3"
+
+BBCLASSEXTEND = "native nativesdk"
+
+RDEPENDS_${PN} += " \
+ python3-core \
+ python3-codecs \
+ python3-netclient \
+ python3-email \
+ python3-threading \
+ python3-distutils \
+ python3-logging \
+ python3-fcntl \
+ librepo \
+ python3-shell \
+ libcomps \
+ libdnf \
+ python3-sqlite3 \
+ python3-compression \
+ python3-rpm \
+ python3-iniparse \
+ python3-json \
+ python3-curses \
+ python3-misc \
+ python3-gpg \
+ "
+
+RDEPENDS_${PN}_class-native = ""
+
+RRECOMMENDS_${PN}_class-target += "gnupg"
+
+# Create a symlink called 'dnf' as 'make install' does not do it, but
+# .spec file in dnf source tree does (and then Fedora and dnf documentation
+# says that dnf binary is plain 'dnf').
+do_install_append() {
+ lnr ${D}/${bindir}/dnf-3 ${D}/${bindir}/dnf
+ lnr ${D}/${bindir}/dnf-automatic-3 ${D}/${bindir}/dnf-automatic
+}
+
+# Direct dnf-native to read rpm configuration from our sysroot, not the one it was compiled in
+do_install_append_class-native() {
+ create_wrapper ${D}/${bindir}/dnf \
+ RPM_CONFIGDIR=${STAGING_LIBDIR_NATIVE}/rpm \
+ RPM_NO_CHROOT_FOR_SCRIPTS=1
+}
+
+do_install_append_class-nativesdk() {
+ create_wrapper ${D}/${bindir}/dnf \
+ RPM_CONFIGDIR=${SDKPATHNATIVE}${libdir_nativesdk}/rpm \
+ RPM_NO_CHROOT_FOR_SCRIPTS=1
+}
+
+SYSTEMD_SERVICE_${PN} = "dnf-makecache.service dnf-makecache.timer \
+ dnf-automatic.service dnf-automatic.timer \
+ dnf-automatic-download.service dnf-automatic-download.timer \
+ dnf-automatic-install.service dnf-automatic-install.timer \
+ dnf-automatic-notifyonly.service dnf-automatic-notifyonly.timer \
+"
+SYSTEMD_AUTO_ENABLE ?= "disable"
diff --git a/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs/run-ptest b/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs/run-ptest
index ef10b08..c97c037 100644
--- a/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs/run-ptest
+++ b/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs/run-ptest
@@ -1,7 +1,7 @@
#!/bin/sh
cd ./test
-./test_script | sed -u -e '/:[[:space:]]ok/s/^/PASS: /' -e '/:[[:space:]]failed/s/^/FAIL: /' -e '/:[[:space:]]skipped/s/^/SKIP: /'
+SKIP_SLOW_TESTS=yes ./test_script | sed -u -e '/:[[:space:]]ok/s/^/PASS: /' -e '/:[[:space:]]failed/s/^/FAIL: /' -e '/:[[:space:]]skipped/s/^/SKIP: /'
rm -rf /var/volatile/tmp/*e2fsprogs*
rm -f tmp-*
rm -f *.tmp
diff --git a/poky/meta/recipes-devtools/elfutils/elfutils_0.176.bb b/poky/meta/recipes-devtools/elfutils/elfutils_0.176.bb
index fd901c9..157551e 100644
--- a/poky/meta/recipes-devtools/elfutils/elfutils_0.176.bb
+++ b/poky/meta/recipes-devtools/elfutils/elfutils_0.176.bb
@@ -1,7 +1,7 @@
SUMMARY = "Utilities and libraries for handling compiled object files"
HOMEPAGE = "https://sourceware.org/elfutils"
SECTION = "base"
-LICENSE = "(GPLv3 & Elfutils-Exception)"
+LICENSE = "GPLv2 & LGPLv3+ & GPLv3+"
LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
DEPENDS = "libtool bzip2 zlib virtual/libintl"
DEPENDS_append_libc-musl = " argp-standalone fts "
@@ -27,16 +27,26 @@
file://debian/hurd_path.patch \
file://debian/ignore_strmerge.diff \
file://debian/disable_werror.patch \
+ file://debian/testsuite-ignore-elflint.diff \
+ file://0001-skip-the-test-when-gcc-not-deployed.patch \
+ file://run-ptest \
+ file://ptest.patch \
+ file://musl.patch \
"
-SRC_URI_append_libc-musl = " file://0008-build-Provide-alternatives-for-glibc-assumptions-hel.patch"
+SRC_URI_append_libc-musl = " file://0008-build-Provide-alternatives-for-glibc-assumptions-hel.patch \
+ file://0001-fix-err-variable-and-function-conflicts.patch \
+"
SRC_URI[md5sum] = "077e4f49320cad82bf17a997068b1db9"
SRC_URI[sha256sum] = "eb5747c371b0af0f71e86215a5ebb88728533c3a104a43d4231963f308cd1023"
-inherit autotools gettext
+inherit autotools gettext ptest
EXTRA_OECONF = "--program-prefix=eu- --without-lzma"
EXTRA_OECONF_append_class-native = " --without-bzlib"
+RDEPENDS_${PN}-ptest = "libasm libelf bash make coreutils ${PN}-binutils ${PN}"
+
+EXTRA_OECONF_append_class-target += "--disable-tests-rpath"
do_install_append() {
if [ "${TARGET_ARCH}" != "x86_64" ] && [ -z `echo "${TARGET_ARCH}"|grep 'i.86'` ];then
@@ -44,6 +54,22 @@
fi
}
+do_compile_ptest() {
+ cd ${B}/tests
+ oe_runmake buildtest-TESTS oecheck
+}
+
+do_install_ptest() {
+ if [ ${PTEST_ENABLED} = "1" ]; then
+ cp -r ${S}/tests/ ${D}${PTEST_PATH}
+ cp -r ${B}/tests/* ${D}${PTEST_PATH}/tests
+ cp -r ${B}/config.h ${D}${PTEST_PATH}
+ cp -r ${B}/backends ${D}${PTEST_PATH}
+ sed -i '/^Makefile:/c Makefile:' ${D}${PTEST_PATH}/tests/Makefile
+ find ${D}${PTEST_PATH} -type f -name *.[hoc] | xargs -i rm {}
+ fi
+}
+
EXTRA_OEMAKE_class-native = ""
EXTRA_OEMAKE_class-nativesdk = ""
@@ -53,6 +79,18 @@
# Package utilities separately
PACKAGES =+ "${PN}-binutils libelf libasm libdw"
+
+# shared libraries are licensed GPLv2 or GPLv3+, binaries GPLv3+
+# according to NEWS file:
+# "The license is now GPLv2/LGPLv3+ for the libraries and GPLv3+ for stand-alone
+# programs. There is now also a formal CONTRIBUTING document describing how to
+# submit patches."
+LICENSE_${PN}-binutils = "GPLv3+"
+LICENSE_${PN} = "GPLv3+"
+LICENSE_libelf = "GPLv2 | LGPLv3+"
+LICENSE_libasm = "GPLv2 | LGPLv3+"
+LICENSE_libdw = "GPLv2 | LGPLv3+"
+
FILES_${PN}-binutils = "\
${bindir}/eu-addr2line \
${bindir}/eu-ld \
diff --git a/poky/meta/recipes-devtools/elfutils/files/0001-fix-err-variable-and-function-conflicts.patch b/poky/meta/recipes-devtools/elfutils/files/0001-fix-err-variable-and-function-conflicts.patch
new file mode 100644
index 0000000..433db13
--- /dev/null
+++ b/poky/meta/recipes-devtools/elfutils/files/0001-fix-err-variable-and-function-conflicts.patch
@@ -0,0 +1,91 @@
+From 2c50fe7068bd6911958c6d851aef88179e73bb21 Mon Sep 17 00:00:00 2001
+From: Mingli Yu <Mingli.Yu@windriver.com>
+Date: Tue, 16 Apr 2019 15:30:38 +0800
+Subject: [PATCH] fix err variable and function conflicts
+
+There comes below build failure with musl when
+ptest enabled.
+| In file included from ../../elfutils-0.176/tests/dwfl-proc-attach.c:33:
+| ../../elfutils-0.176/lib/system.h:63:35: error: called object 'err' is not a function or function pointer
+| #define error(status, errno, ...) err(status, __VA_ARGS__)
+| ^~~
+| ../../elfutils-0.176/tests/dwfl-proc-attach.c:92:5: note: in expansion of macro 'error'
+| error (-1, 0, "dwfl_linux_proc_attach pid %d: %s", pid,
+| ^~~~~
+| ../../elfutils-0.176/tests/dwfl-proc-attach.c:79:7: note: declared here
+| int err;
+| ^~~
+
+It is because there is no error.h in musl and
+the patch 0008-build-Provide-alternatives-for-glibc-assumptions-hel.patch
+has updated to use err.h to replace error.h
+and also added macro definiton as below when
+use musl.
+ #define error(status, errno, ...) err(status, __VA_ARGS__)
+
+And in err.h, there is below logic:
+_Noreturn void err(int, const char *, ...);
+
+But when ptest enabled, there comes below error
+as there is both variable and function defined
+to be err in tests/dwfl-proc-attach.c.
+So change the err variable's name to workaround
+the build failure with musl.
+
+Upstream-Status: Inappropriate [workaround in musl]
+
+Signed-off-by: Mingli Yu <Mingli.Yu@windriver.com>
+---
+ tests/dwfl-proc-attach.c | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+Index: elfutils-0.176/tests/dwfl-proc-attach.c
+===================================================================
+--- elfutils-0.176.orig/tests/dwfl-proc-attach.c
++++ elfutils-0.176/tests/dwfl-proc-attach.c
+@@ -76,10 +76,10 @@ main (int argc __attribute__ ((unused)),
+ char **argv __attribute__ ((unused)))
+ {
+ /* Create two extra threads to iterate through. */
+- int err;
+- if ((err = pthread_create (&thread1, NULL, sleeper, NULL)) != 0)
++ int err1;
++ if ((err1 = pthread_create (&thread1, NULL, sleeper, NULL)) != 0)
+ error (-1, err, "Couldn't create thread1");
+- if ((err = pthread_create (&thread2, NULL, sleeper, NULL)) != 0)
++ if ((err1 = pthread_create (&thread2, NULL, sleeper, NULL)) != 0)
+ error (-1, err, "Couldn't create thread2");
+
+ Dwfl *dwfl = dwfl_begin (&proc_callbacks);
+Index: elfutils-0.176/tests/backtrace.c
+===================================================================
+--- elfutils-0.176.orig/tests/backtrace.c
++++ elfutils-0.176/tests/backtrace.c
+@@ -219,23 +219,23 @@ dump (Dwfl *dwfl)
+ {
+ ptrdiff_t ptrdiff = dwfl_getmodules (dwfl, dump_modules, NULL, 0);
+ assert (ptrdiff == 0);
+- bool err = false;
++ bool err1 = false;
+ switch (dwfl_getthreads (dwfl, thread_callback, NULL))
+ {
+ case 0:
+ break;
+ case DWARF_CB_ABORT:
+- err = true;
++ err1 = true;
+ break;
+ case -1:
+ error (0, 0, "dwfl_getthreads: %s", dwfl_errmsg (-1));
+- err = true;
++ err1 = true;
+ break;
+ default:
+ abort ();
+ }
+ callback_verify (0, 0, 0, NULL, dwfl);
+- if (err)
++ if (err1)
+ exit (EXIT_FAILURE);
+ }
+
diff --git a/poky/meta/recipes-devtools/elfutils/files/0001-skip-the-test-when-gcc-not-deployed.patch b/poky/meta/recipes-devtools/elfutils/files/0001-skip-the-test-when-gcc-not-deployed.patch
new file mode 100644
index 0000000..67ca0e4
--- /dev/null
+++ b/poky/meta/recipes-devtools/elfutils/files/0001-skip-the-test-when-gcc-not-deployed.patch
@@ -0,0 +1,45 @@
+From 61939d2e552e7645ecd671fa01cf1c7a72caa82a Mon Sep 17 00:00:00 2001
+From: Mingli Yu <Mingli.Yu@windriver.com>
+Date: Fri, 12 Apr 2019 16:29:58 +0800
+Subject: [PATCH] skip the test when gcc not deployed
+
+Skip the tests which depend on gcc when
+gcc not deployed.
+
+Upstream-Status: Inappropriate [oe specific]
+
+Signed-off-by: Mingli Yu <Mingli.Yu@windriver.com>
+---
+ tests/run-strip-g.sh | 2 ++
+ tests/run-strip-nothing.sh | 2 ++
+ 2 files changed, 4 insertions(+)
+
+diff --git a/tests/run-strip-g.sh b/tests/run-strip-g.sh
+index 1303819..a943dec 100755
+--- a/tests/run-strip-g.sh
++++ b/tests/run-strip-g.sh
+@@ -24,6 +24,8 @@
+
+ tempfiles a.out strip.out debug.out readelf.out
+
++# skip the test if gcc deployed
++which gcc || exit 77
+ echo Create debug a.out.
+ echo "int main() { return 1; }" | gcc -g -xc -
+
+diff --git a/tests/run-strip-nothing.sh b/tests/run-strip-nothing.sh
+index 914fdfb..d03f734 100755
+--- a/tests/run-strip-nothing.sh
++++ b/tests/run-strip-nothing.sh
+@@ -22,6 +22,8 @@
+
+ tempfiles a.out strip.out debug.out
+
++# skip the case if no gcc deployed
++which gcc || exit 77
+ # Create no-debug a.out.
+ echo "int main() { return 1; }" | gcc -s -xc -
+
+--
+2.7.4
+
diff --git a/poky/meta/recipes-devtools/elfutils/files/debian/testsuite-ignore-elflint.diff b/poky/meta/recipes-devtools/elfutils/files/debian/testsuite-ignore-elflint.diff
new file mode 100644
index 0000000..c4ce20c
--- /dev/null
+++ b/poky/meta/recipes-devtools/elfutils/files/debian/testsuite-ignore-elflint.diff
@@ -0,0 +1,52 @@
+From 03a343c6b1b72598fce654b8a638f106da44abfb Mon Sep 17 00:00:00 2001
+From: OpenEmbedded <oe.patch@oe>
+Date: Fri, 12 Apr 2019 08:05:50 +0000
+Subject: [PATCH] On many architectures this test fails because binaries/libs
+ produced by binutils don't pass elflint. However elfutils shouldn't FTBFS
+ because of this.
+
+So we run the tests on all archs to see what breaks, but if it breaks we ignore
+the result (exitcode 77 means: this test was skipped).
+
+Upstream-Status: Inappropriate [oe specific]
+
+Signed-off-by: Mingli Yu <Mingli.Yu@windriver.com>
+---
+ tests/run-elflint-self.sh | 2 +-
+ tests/test-subr.sh | 15 +++++++++++++++
+ 2 files changed, 16 insertions(+), 1 deletion(-)
+
+diff --git a/tests/run-elflint-self.sh b/tests/run-elflint-self.sh
+index 58fa7d0..85d21a5 100755
+--- a/tests/run-elflint-self.sh
++++ b/tests/run-elflint-self.sh
+@@ -18,5 +18,5 @@
+
+ . $srcdir/test-subr.sh
+
+-testrun_on_self ${abs_top_builddir}/src/elflint --quiet --gnu-ld
++testrun_on_self_skip ${abs_top_builddir}/src/elflint --quiet --gnu-ld
+ testrun_on_self_compressed ${abs_top_builddir}/src/elflint --quiet --gnu-ld
+diff --git a/tests/test-subr.sh b/tests/test-subr.sh
+index 09f428d..26f61f1 100644
+--- a/tests/test-subr.sh
++++ b/tests/test-subr.sh
+@@ -201,3 +201,18 @@ testrun_on_self_quiet()
+ # Only exit if something failed
+ if test $exit_status != 0; then exit $exit_status; fi
+ }
++
++# Same as testrun_on_self(), but skip on failure.
++testrun_on_self_skip()
++{
++ exit_status=0
++
++ for file in $self_test_files; do
++ testrun $* $file \
++ || { echo "*** failure in $* $file"; exit_status=77; }
++ done
++
++ # Only exit if something failed
++ if test $exit_status != 0; then exit $exit_status; fi
++}
++
diff --git a/poky/meta/recipes-devtools/elfutils/files/musl.patch b/poky/meta/recipes-devtools/elfutils/files/musl.patch
new file mode 100644
index 0000000..be35791
--- /dev/null
+++ b/poky/meta/recipes-devtools/elfutils/files/musl.patch
@@ -0,0 +1,29 @@
+Fix error on musl:
+
+| ../../elfutils-0.176/tests/elfstrmerge.c: In function 'main':
+| ../../elfutils-0.176/tests/elfstrmerge.c:370:60: error: 'ALLPERMS' undeclared (first use in this function); did you mean 'EPERM'?
+| fdnew = open (fnew, O_WRONLY | O_CREAT, st.st_mode & ALLPERMS);
+| ^~~~~~~~
+| EPERM
+| ../../elfutils-0.176/tests/elfstrmerge.c:370:60: note: each undeclared identifier is reported only once for each function it appears in
+
+Upstream-Status: Inappropriate [workaround in musl]
+
+Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
+
+Index: elfutils-0.176/tests/elfstrmerge.c
+===================================================================
+--- elfutils-0.176.orig/tests/elfstrmerge.c
++++ elfutils-0.176/tests/elfstrmerge.c
+@@ -33,6 +33,11 @@
+ #include ELFUTILS_HEADER(dwelf)
+ #include "elf-knowledge.h"
+
++/* for musl */
++#ifndef ALLPERMS
++# define ALLPERMS (S_ISUID|S_ISGID|S_ISVTX|S_IRWXU|S_IRWXG|S_IRWXO)/* 07777 */
++#endif
++
+ /* The original ELF file. */
+ static int fd = -1;
+ static Elf *elf = NULL;
diff --git a/poky/meta/recipes-devtools/elfutils/files/ptest.patch b/poky/meta/recipes-devtools/elfutils/files/ptest.patch
new file mode 100644
index 0000000..35b23f4
--- /dev/null
+++ b/poky/meta/recipes-devtools/elfutils/files/ptest.patch
@@ -0,0 +1,76 @@
+Changes to allow ptest to run standalone on target:
+
+a) Run the tests serially
+b) Use the standalone test mode which allows the tests to be run in their
+ 'installled' locations on target (but not any of the standalone build pieces)
+c) We want to use the binaries from their installed locations so the run-subr
+ script needs tweaking to run them like that. The rpath conditional isn't
+ enough since we want the second entry in the case statement.
+d) Add an oecheck make target which we can use to build the test binaries we need
+
+Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
+
+Upstream-Status: Inappropriate [oe specific]
+
+Index: elfutils-0.176/configure.ac
+===================================================================
+--- elfutils-0.176.orig/configure.ac
++++ elfutils-0.176/configure.ac
+@@ -45,7 +45,7 @@ AC_COPYRIGHT([Copyright (C) 1996-2018 Th
+ AC_PREREQ(2.63) dnl Minimum Autoconf version required.
+
+ dnl We use GNU make extensions; automake 1.10 defaults to -Wportability.
+-AM_INIT_AUTOMAKE([gnits 1.11 -Wno-portability dist-bzip2 no-dist-gzip parallel-tests])
++AM_INIT_AUTOMAKE([gnits 1.11 -Wno-portability dist-bzip2 no-dist-gzip serial-tests])
+ AM_MAINTAINER_MODE
+
+ AM_SILENT_RULES([yes])
+Index: elfutils-0.176/tests/Makefile.am
+===================================================================
+--- elfutils-0.176.orig/tests/Makefile.am
++++ elfutils-0.176/tests/Makefile.am
+@@ -445,10 +445,10 @@ installed_TESTS_ENVIRONMENT = libdir=$(D
+ installed_LOG_COMPILER = $(abs_srcdir)/test-wrapper.sh \
+ installed $(tests_rpath) \
+ '$(program_transform_name)'
+-if STANDALONE
++if !STANDALONE
+ TESTS_ENVIRONMENT = $(installed_TESTS_ENVIRONMENT)
+ LOG_COMPILER = $(installed_LOG_COMPILER)
+-else !STANDALONE
++else STANDALONE
+ TESTS_ENVIRONMENT = LC_ALL=C; LANG=C; VALGRIND_CMD=$(valgrind_cmd); \
+ abs_srcdir=$(abs_srcdir); abs_builddir=$(abs_builddir); \
+ abs_top_builddir=$(abs_top_builddir); \
+@@ -463,7 +463,7 @@ installcheck-local:
+ $(MAKE) $(AM_MAKEFLAGS) \
+ TESTS_ENVIRONMENT="$(installed_TESTS_ENVIRONMENT)" \
+ LOG_COMPILER="$(installed_LOG_COMPILER)" check-TESTS
+-endif !STANDALONE
++endif STANDALONE
+
+ if STANDALONE
+ libdw = -ldw
+@@ -612,3 +612,5 @@ check: check-am coverage
+ coverage:
+ -$(srcdir)/coverage.sh
+ endif
++oecheck:
++ $(MAKE) $(AM_MAKEFLAGS) $(check_PROGRAMS)
+Index: elfutils-0.176/tests/test-subr.sh
+===================================================================
+--- elfutils-0.176.orig/tests/test-subr.sh
++++ elfutils-0.176/tests/test-subr.sh
+@@ -91,12 +91,6 @@ installed_testrun()
+ program="$1"
+ shift
+ case "$program" in
+- ${abs_builddir}/*)
+- if [ "x$elfutils_tests_rpath" != xno ]; then
+- echo >&2 installcheck not possible with --enable-tests-rpath
+- exit 77
+- fi
+- ;;
+ ${abs_top_builddir}/src/*)
+ program=${bindir}/`program_transform ${program##*/}`
+ ;;
diff --git a/poky/meta/recipes-devtools/elfutils/files/run-ptest b/poky/meta/recipes-devtools/elfutils/files/run-ptest
new file mode 100644
index 0000000..81b81f2
--- /dev/null
+++ b/poky/meta/recipes-devtools/elfutils/files/run-ptest
@@ -0,0 +1,6 @@
+#!/bin/sh
+#
+#This script is used to run elfutils test suites
+cd tests
+
+make -k runtest-TESTS abs_srcdir=$PWD abs_builddir=$PWD srcdir=$PWD top_srcdir=$PWD/../ abs_top_builddir=$PWD/../ elfutils_testrun=installed elfutils_tests_rpath=no program_transform_name=s,^,eu-,
diff --git a/poky/meta/recipes-devtools/file/file_5.36.bb b/poky/meta/recipes-devtools/file/file_5.36.bb
index 1a81fde..9a0e5bd 100644
--- a/poky/meta/recipes-devtools/file/file_5.36.bb
+++ b/poky/meta/recipes-devtools/file/file_5.36.bb
@@ -27,8 +27,6 @@
EXTRA_OEMAKE_append_class-target = "-e FILE_COMPILE=${STAGING_BINDIR_NATIVE}/file-native/file"
EXTRA_OEMAKE_append_class-nativesdk = "-e FILE_COMPILE=${STAGING_BINDIR_NATIVE}/file-native/file"
-CFLAGS_append = " -std=c99"
-
FILES_${PN} += "${datadir}/misc/*.mgc"
do_install_append_class-native() {
diff --git a/poky/meta/recipes-devtools/gcc/gcc-8.3.inc b/poky/meta/recipes-devtools/gcc/gcc-8.3.inc
index f7bf257..fe9c7c3 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-8.3.inc
+++ b/poky/meta/recipes-devtools/gcc/gcc-8.3.inc
@@ -71,6 +71,7 @@
file://0038-Re-introduce-spe-commandline-options.patch \
file://0039-riscv-Disable-multilib-for-OE.patch \
file://0040-powerpc-powerpc64-Add-support-for-musl-ldso.patch \
+ file://0041-Add-a-recursion-limit-to-libiberty-s-demangling-code.patch \
"
SRC_URI[md5sum] = "65b210b4bfe7e060051f799e0f994896"
SRC_URI[sha256sum] = "64baadfe6cc0f4947a84cb12d7f0dfaf45bb58b7e92461639596c21e02d97d2c"
@@ -82,7 +83,6 @@
# Language Overrides
FORTRAN = ""
-JAVA = ""
LTO = "--enable-lto"
SSP ?= "--disable-libssp"
diff --git a/poky/meta/recipes-devtools/gcc/gcc-8.3/0041-Add-a-recursion-limit-to-libiberty-s-demangling-code.patch b/poky/meta/recipes-devtools/gcc/gcc-8.3/0041-Add-a-recursion-limit-to-libiberty-s-demangling-code.patch
new file mode 100644
index 0000000..f3303b6
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-8.3/0041-Add-a-recursion-limit-to-libiberty-s-demangling-code.patch
@@ -0,0 +1,325 @@
+From e1744e11b1c2b36f91a8847b61bafb8c5e7407ae Mon Sep 17 00:00:00 2001
+From: nickc <nickc@138bc75d-0d04-0410-961f-82ee72b054a4>
+Date: Fri, 7 Dec 2018 10:33:30 +0000
+Subject: [PATCH] Add a recursion limit to libiberty's demangling code. The
+ limit is enabled by default, but can be disabled via a new demangling option.
+
+include * demangle.h (DMGL_NO_RECURSE_LIMIT): Define.
+ (DEMANGLE_RECURSION_LIMIT): Define
+
+ PR 87681
+ PR 87675
+ PR 87636
+ PR 87350
+ PR 87335
+libiberty * cp-demangle.h (struct d_info): Add recursion_level field.
+ * cp-demangle.c (d_function_type): Add recursion counter.
+ If the recursion limit is reached and the check is not disabled,
+ then return with a failure result.
+ (cplus_demangle_init_info): Initialise the recursion_level field.
+ (d_demangle_callback): If the recursion limit is enabled, check
+ for a mangled string that is so long that there is not enough
+ stack space for the local arrays.
+ * cplus-dem.c (struct work): Add recursion_level field.
+ (squangle_mop_up): Set the numb and numk fields to zero.
+ (work_stuff_copy_to_from): Handle the case where a btypevec or
+ ktypevec field is NULL.
+ (demangle_nested_args): Add recursion counter. If
+ the recursion limit is not disabled and reached, return with a
+ failure result.
+
+git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@266886 138bc75d-0d04-0410-961f-82ee72b054a4
+
+CVE: CVE-2018-18484
+Upstream-Status: Backport [https://github.com/gcc-mirror/gcc/commit/03e51746ed98d9106803f6009ebd71ea670ad3b9]
+Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
+---
+ include/ChangeLog | 5 +++++
+ include/demangle.h | 11 +++++++++++
+ libiberty/ChangeLog | 23 ++++++++++++++++++++++
+ libiberty/cp-demangle.c | 51 ++++++++++++++++++++++++++++++++++++++-----------
+ libiberty/cp-demangle.h | 3 +++
+ libiberty/cplus-dem.c | 37 +++++++++++++++++++++++++++++++++--
+ 6 files changed, 117 insertions(+), 13 deletions(-)
+
+diff --git a/include/ChangeLog b/include/ChangeLog
+index 02ab336..88b0648 100644
+--- a/include/ChangeLog
++++ b/include/ChangeLog
+@@ -2,6 +2,11 @@
+
+ * GCC 8.3.0 released.
+
++2018-12-07 Nick Clifton <nickc@redhat.com>
++
++ * demangle.h (DMGL_NO_RECURSE_LIMIT): Define.
++ (DEMANGLE_RECURSION_LIMIT): Define
++
+ 2018-07-26 Release Manager
+
+ * GCC 8.2.0 released.
+diff --git a/include/demangle.h b/include/demangle.h
+index b8d57cf..9bb8a19 100644
+--- a/include/demangle.h
++++ b/include/demangle.h
+@@ -68,6 +68,17 @@ extern "C" {
+ /* If none of these are set, use 'current_demangling_style' as the default. */
+ #define DMGL_STYLE_MASK (DMGL_AUTO|DMGL_GNU|DMGL_LUCID|DMGL_ARM|DMGL_HP|DMGL_EDG|DMGL_GNU_V3|DMGL_JAVA|DMGL_GNAT|DMGL_DLANG|DMGL_RUST)
+
++/* Disable a limit on the depth of recursion in mangled strings.
++ Note if this limit is disabled then stack exhaustion is possible when
++ demangling pathologically complicated strings. Bug reports about stack
++ exhaustion when the option is enabled will be rejected. */
++#define DMGL_NO_RECURSE_LIMIT (1 << 18)
++
++/* If DMGL_NO_RECURSE_LIMIT is not enabled, then this is the value used as
++ the maximum depth of recursion allowed. It should be enough for any
++ real-world mangled name. */
++#define DEMANGLE_RECURSION_LIMIT 1024
++
+ /* Enumeration of possible demangling styles.
+
+ Lucid and ARM styles are still kept logically distinct, even though
+diff --git a/libiberty/ChangeLog b/libiberty/ChangeLog
+index 1dd05da..2f77038 100644
+--- a/libiberty/ChangeLog
++++ b/libiberty/ChangeLog
+@@ -9,6 +9,29 @@
+ (simple_object_copy_lto_debug_sections): Create file in binary
+ mode.
+
++2018-12-07 Nick Clifton <nickc@redhat.com>
++
++ PR 87681
++ PR 87675
++ PR 87636
++ PR 87350
++ PR 87335
++ * cp-demangle.h (struct d_info): Add recursion_level field.
++ * cp-demangle.c (d_function_type): Add recursion counter.
++ If the recursion limit is reached and the check is not disabled,
++ then return with a failure result.
++ (cplus_demangle_init_info): Initialise the recursion_level field.
++ (d_demangle_callback): If the recursion limit is enabled, check
++ for a mangled string that is so long that there is not enough
++ stack space for the local arrays.
++ * cplus-dem.c (struct work): Add recursion_level field.
++ (squangle_mop_up): Set the numb and numk fields to zero.
++ (work_stuff_copy_to_from): Handle the case where a btypevec or
++ ktypevec field is NULL.
++ (demangle_nested_args): Add recursion counter. If
++ the recursion limit is not disabled and reached, return with a
++ failure result.
++
+ 2018-07-26 Release Manager
+
+ * GCC 8.2.0 released.
+diff --git a/libiberty/cp-demangle.c b/libiberty/cp-demangle.c
+index 3f2a097..c374e46 100644
+--- a/libiberty/cp-demangle.c
++++ b/libiberty/cp-demangle.c
+@@ -2843,21 +2843,35 @@ d_ref_qualifier (struct d_info *di, struct demangle_component *sub)
+ static struct demangle_component *
+ d_function_type (struct d_info *di)
+ {
+- struct demangle_component *ret;
++ struct demangle_component *ret = NULL;
+
+- if (! d_check_char (di, 'F'))
+- return NULL;
+- if (d_peek_char (di) == 'Y')
++ if ((di->options & DMGL_NO_RECURSE_LIMIT) == 0)
+ {
+- /* Function has C linkage. We don't print this information.
+- FIXME: We should print it in verbose mode. */
+- d_advance (di, 1);
++ if (di->recursion_level > DEMANGLE_RECURSION_LIMIT)
++ /* FIXME: There ought to be a way to report
++ that the recursion limit has been reached. */
++ return NULL;
++
++ di->recursion_level ++;
+ }
+- ret = d_bare_function_type (di, 1);
+- ret = d_ref_qualifier (di, ret);
+
+- if (! d_check_char (di, 'E'))
+- return NULL;
++ if (d_check_char (di, 'F'))
++ {
++ if (d_peek_char (di) == 'Y')
++ {
++ /* Function has C linkage. We don't print this information.
++ FIXME: We should print it in verbose mode. */
++ d_advance (di, 1);
++ }
++ ret = d_bare_function_type (di, 1);
++ ret = d_ref_qualifier (di, ret);
++
++ if (! d_check_char (di, 'E'))
++ ret = NULL;
++ }
++
++ if ((di->options & DMGL_NO_RECURSE_LIMIT) == 0)
++ di->recursion_level --;
+ return ret;
+ }
+
+@@ -6188,6 +6202,7 @@ cplus_demangle_init_info (const char *mangled, int options, size_t len,
+ di->expansion = 0;
+ di->is_expression = 0;
+ di->is_conversion = 0;
++ di->recursion_level = 0;
+ }
+
+ /* Internal implementation for the demangler. If MANGLED is a g++ v3 ABI
+@@ -6227,6 +6242,20 @@ d_demangle_callback (const char *mangled, int options,
+
+ cplus_demangle_init_info (mangled, options, strlen (mangled), &di);
+
++ /* PR 87675 - Check for a mangled string that is so long
++ that we do not have enough stack space to demangle it. */
++ if (((options & DMGL_NO_RECURSE_LIMIT) == 0)
++ /* This check is a bit arbitrary, since what we really want to do is to
++ compare the sizes of the di.comps and di.subs arrays against the
++ amount of stack space remaining. But there is no portable way to do
++ this, so instead we use the recursion limit as a guide to the maximum
++ size of the arrays. */
++ && (unsigned long) di.num_comps > DEMANGLE_RECURSION_LIMIT)
++ {
++ /* FIXME: We need a way to indicate that a stack limit has been reached. */
++ return 0;
++ }
++
+ {
+ #ifdef CP_DYNAMIC_ARRAYS
+ __extension__ struct demangle_component comps[di.num_comps];
+diff --git a/libiberty/cp-demangle.h b/libiberty/cp-demangle.h
+index 51b8a24..d87a830 100644
+--- a/libiberty/cp-demangle.h
++++ b/libiberty/cp-demangle.h
+@@ -122,6 +122,9 @@ struct d_info
+ /* Non-zero if we are parsing the type operand of a conversion
+ operator, but not when in an expression. */
+ int is_conversion;
++ /* If DMGL_NO_RECURSE_LIMIT is not active then this is set to
++ the current recursion level. */
++ unsigned int recursion_level;
+ };
+
+ /* To avoid running past the ending '\0', don't:
+diff --git a/libiberty/cplus-dem.c b/libiberty/cplus-dem.c
+index 6d58bd8..8b9646f 100644
+--- a/libiberty/cplus-dem.c
++++ b/libiberty/cplus-dem.c
+@@ -146,6 +146,7 @@ struct work_stuff
+ int *proctypevec; /* Indices of currently processed remembered typevecs. */
+ int proctypevec_size;
+ int nproctypes;
++ unsigned int recursion_level;
+ };
+
+ #define PRINT_ANSI_QUALIFIERS (work -> options & DMGL_ANSI)
+@@ -1292,12 +1293,14 @@ squangle_mop_up (struct work_stuff *work)
+ free ((char *) work -> btypevec);
+ work->btypevec = NULL;
+ work->bsize = 0;
++ work->numb = 0;
+ }
+ if (work -> ktypevec != NULL)
+ {
+ free ((char *) work -> ktypevec);
+ work->ktypevec = NULL;
+ work->ksize = 0;
++ work->numk = 0;
+ }
+ }
+
+@@ -1331,8 +1334,15 @@ work_stuff_copy_to_from (struct work_stuff *to, struct work_stuff *from)
+
+ for (i = 0; i < from->numk; i++)
+ {
+- int len = strlen (from->ktypevec[i]) + 1;
++ int len;
++
++ if (from->ktypevec[i] == NULL)
++ {
++ to->ktypevec[i] = NULL;
++ continue;
++ }
+
++ len = strlen (from->ktypevec[i]) + 1;
+ to->ktypevec[i] = XNEWVEC (char, len);
+ memcpy (to->ktypevec[i], from->ktypevec[i], len);
+ }
+@@ -1342,8 +1352,15 @@ work_stuff_copy_to_from (struct work_stuff *to, struct work_stuff *from)
+
+ for (i = 0; i < from->numb; i++)
+ {
+- int len = strlen (from->btypevec[i]) + 1;
++ int len;
++
++ if (from->btypevec[i] == NULL)
++ {
++ to->btypevec[i] = NULL;
++ continue;
++ }
+
++ len = strlen (from->btypevec[i]) + 1;
+ to->btypevec[i] = XNEWVEC (char , len);
+ memcpy (to->btypevec[i], from->btypevec[i], len);
+ }
+@@ -1401,6 +1418,7 @@ delete_non_B_K_work_stuff (struct work_stuff *work)
+
+ free ((char*) work->tmpl_argvec);
+ work->tmpl_argvec = NULL;
++ work->ntmpl_args = 0;
+ }
+ if (work->previous_argument)
+ {
+@@ -4477,6 +4495,7 @@ remember_Btype (struct work_stuff *work, const char *start,
+ }
+
+ /* Lose all the info related to B and K type codes. */
++
+ static void
+ forget_B_and_K_types (struct work_stuff *work)
+ {
+@@ -4502,6 +4521,7 @@ forget_B_and_K_types (struct work_stuff *work)
+ }
+ }
+ }
++
+ /* Forget the remembered types, but not the type vector itself. */
+
+ static void
+@@ -4696,6 +4716,16 @@ demangle_nested_args (struct work_stuff *work, const char **mangled,
+ int result;
+ int saved_nrepeats;
+
++ if ((work->options & DMGL_NO_RECURSE_LIMIT) == 0)
++ {
++ if (work->recursion_level > DEMANGLE_RECURSION_LIMIT)
++ /* FIXME: There ought to be a way to report
++ that the recursion limit has been reached. */
++ return 0;
++
++ work->recursion_level ++;
++ }
++
+ /* The G++ name-mangling algorithm does not remember types on nested
+ argument lists, unless -fsquangling is used, and in that case the
+ type vector updated by remember_type is not used. So, we turn
+@@ -4722,6 +4752,9 @@ demangle_nested_args (struct work_stuff *work, const char **mangled,
+ --work->forgetting_types;
+ work->nrepeats = saved_nrepeats;
+
++ if ((work->options & DMGL_NO_RECURSE_LIMIT) == 0)
++ --work->recursion_level;
++
+ return result;
+ }
+
+--
+2.7.4
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.1.inc b/poky/meta/recipes-devtools/gcc/gcc-9.1.inc
new file mode 100644
index 0000000..eb25380
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-9.1.inc
@@ -0,0 +1,118 @@
+require gcc-common.inc
+
+# Third digit in PV should be incremented after a minor release
+
+PV = "9.1.0"
+
+# BINV should be incremented to a revision after a minor gcc release
+
+BINV = "9.1.0"
+
+FILESEXTRAPATHS =. "${FILE_DIRNAME}/gcc-9.1:${FILE_DIRNAME}/gcc-9.1/backport:"
+
+DEPENDS =+ "mpfr gmp libmpc zlib flex-native"
+NATIVEDEPS = "mpfr-native gmp-native libmpc-native zlib-native flex-native"
+
+LICENSE = "GPL-3.0-with-GCC-exception & GPLv3"
+
+LIC_FILES_CHKSUM = "\
+ file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552 \
+ file://COPYING3;md5=d32239bcb673463ab874e80d47fae504 \
+ file://COPYING3.LIB;md5=6a6a8e020838b23406c81b19c1d46df6 \
+ file://COPYING.LIB;md5=2d5025d4aa3495befef8f17206a5b0a1 \
+ file://COPYING.RUNTIME;md5=fe60d87048567d4fe8c8a0ed2448bcc8 \
+"
+
+BASEURI ?= "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.xz"
+#RELEASE ?= "5a5ca2d"
+#BASEURI ?= "https://repo.or.cz/official-gcc.git/snapshot/${RELEASE}.tar.gz;downloadfilename=gcc-${RELEASE}.tar.gz"
+SRC_URI = "\
+ ${BASEURI} \
+ file://0001-gcc-4.3.1-ARCH_FLAGS_FOR_TARGET.patch \
+ file://0002-gcc-poison-system-directories.patch \
+ file://0003-gcc-4.3.3-SYSROOT_CFLAGS_FOR_TARGET.patch \
+ file://0004-64-bit-multilib-hack.patch \
+ file://0005-optional-libstdc.patch \
+ file://0006-gcc-disable-MASK_RELAX_PIC_CALLS-bit.patch \
+ file://0007-COLLECT_GCC_OPTIONS.patch \
+ file://0008-Use-the-defaults.h-in-B-instead-of-S-and-t-oe-in-B.patch \
+ file://0009-fortran-cross-compile-hack.patch \
+ file://0010-cpp-honor-sysroot.patch \
+ file://0011-MIPS64-Default-to-N64-ABI.patch \
+ file://0012-Define-GLIBC_DYNAMIC_LINKER-and-UCLIBC_DYNAMIC_LINKE.patch \
+ file://0013-gcc-Fix-argument-list-too-long-error.patch \
+ file://0014-Disable-sdt.patch \
+ file://0015-libtool.patch \
+ file://0016-gcc-armv4-pass-fix-v4bx-to-linker-to-support-EABI.patch \
+ file://0017-Use-the-multilib-config-files-from-B-instead-of-usin.patch \
+ file://0018-Avoid-using-libdir-from-.la-which-usually-points-to-.patch \
+ file://0019-export-CPP.patch \
+ file://0020-Ensure-target-gcc-headers-can-be-included.patch \
+ file://0021-gcc-4.8-won-t-build-with-disable-dependency-tracking.patch \
+ file://0022-Don-t-search-host-directory-during-relink-if-inst_pr.patch \
+ file://0023-Use-SYSTEMLIBS_DIR-replacement-instead-of-hardcoding.patch \
+ file://0024-aarch64-Add-support-for-musl-ldso.patch \
+ file://0025-libcc1-fix-libcc1-s-install-path-and-rpath.patch \
+ file://0026-handle-sysroot-support-for-nativesdk-gcc.patch \
+ file://0027-Search-target-sysroot-gcc-version-specific-dirs-with.patch \
+ file://0028-Fix-various-_FOR_BUILD-and-related-variables.patch \
+ file://0029-nios2-Define-MUSL_DYNAMIC_LINKER.patch \
+ file://0030-Add-ssp_nonshared-to-link-commandline-for-musl-targe.patch \
+ file://0031-libgcc-Add-knob-to-use-ldbl-128-on-ppc.patch \
+ file://0032-Link-libgcc-using-LDFLAGS-not-just-SHLIB_LDFLAGS.patch \
+ file://0033-libgcc_s-Use-alias-for-__cpu_indicator_init-instead-.patch \
+ file://0034-sync-gcc-stddef.h-with-musl.patch \
+ file://0035-fix-segmentation-fault-in-precompiled-header-generat.patch \
+ file://0036-Fix-for-testsuite-failure.patch \
+ file://0037-Re-introduce-spe-commandline-options.patch \
+"
+SRC_URI[md5sum] = "6069ae3737cf02bf2cb44a391ef0e937"
+SRC_URI[sha256sum] = "79a66834e96a6050d8fe78db2c3b32fb285b230b855d0a66288235bc04b327a0"
+S = "${TMPDIR}/work-shared/gcc-${PV}-${PR}/gcc-${PV}"
+# For dev release snapshotting
+#S = "${TMPDIR}/work-shared/gcc-${PV}-${PR}/official-gcc-${RELEASE}"
+#B = "${WORKDIR}/gcc-${PV}/build.${HOST_SYS}.${TARGET_SYS}"
+
+# Language Overrides
+FORTRAN = ""
+JAVA = ""
+
+LTO = "--enable-lto"
+SSP ?= "--disable-libssp"
+SSP_mingw32 = "--enable-libssp"
+
+EXTRA_OECONF_BASE = "\
+ ${LTO} \
+ ${SSP} \
+ --enable-libitm \
+ --disable-bootstrap \
+ --disable-libmudflap \
+ --with-system-zlib \
+ ${@'--with-linker-hash-style=${LINKER_HASH_STYLE}' if '${LINKER_HASH_STYLE}' else ''} \
+ --enable-linker-build-id \
+ --with-ppl=no \
+ --with-cloog=no \
+ --enable-checking=release \
+ --enable-cheaders=c_global \
+ --without-isl \
+"
+
+EXTRA_OECONF_INITIAL = "\
+ --disable-libmudflap \
+ --disable-libgomp \
+ --disable-libitm \
+ --disable-libquadmath \
+ --with-system-zlib \
+ --disable-lto \
+ --disable-plugin \
+ --enable-linker-build-id \
+ --enable-decimal-float=no \
+ --without-isl \
+ --disable-libssp \
+"
+
+EXTRA_OECONF_PATHS = "\
+ --with-gxx-include-dir=/not/exist{target_includedir}/c++/${BINV} \
+ --with-sysroot=/not/exist \
+ --with-build-sysroot=${STAGING_DIR_TARGET} \
+"
diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.1/0001-gcc-4.3.1-ARCH_FLAGS_FOR_TARGET.patch b/poky/meta/recipes-devtools/gcc/gcc-9.1/0001-gcc-4.3.1-ARCH_FLAGS_FOR_TARGET.patch
new file mode 100644
index 0000000..33c910c
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-9.1/0001-gcc-4.3.1-ARCH_FLAGS_FOR_TARGET.patch
@@ -0,0 +1,42 @@
+From f1f6d84aadc4e3cde707b1ec8490f5dc46d4c8e0 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 29 Mar 2013 08:37:11 +0400
+Subject: [PATCH 01/37] gcc-4.3.1: ARCH_FLAGS_FOR_TARGET
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+Upstream-Status: Inappropriate [embedded specific]
+---
+ configure | 2 +-
+ configure.ac | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/configure b/configure
+index adf4fda0f69..8a04eea4c71 100755
+--- a/configure
++++ b/configure
+@@ -7602,7 +7602,7 @@ fi
+ # for target_alias and gcc doesn't manage it consistently.
+ target_configargs="--cache-file=./config.cache ${target_configargs}"
+
+-FLAGS_FOR_TARGET=
++FLAGS_FOR_TARGET="$ARCH_FLAGS_FOR_TARGET"
+ case " $target_configdirs " in
+ *" newlib "*)
+ case " $target_configargs " in
+diff --git a/configure.ac b/configure.ac
+index 87f2aee0500..01b46b8bed4 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -3118,7 +3118,7 @@ fi
+ # for target_alias and gcc doesn't manage it consistently.
+ target_configargs="--cache-file=./config.cache ${target_configargs}"
+
+-FLAGS_FOR_TARGET=
++FLAGS_FOR_TARGET="$ARCH_FLAGS_FOR_TARGET"
+ case " $target_configdirs " in
+ *" newlib "*)
+ case " $target_configargs " in
+--
+2.20.1
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.1/0002-gcc-poison-system-directories.patch b/poky/meta/recipes-devtools/gcc/gcc-9.1/0002-gcc-poison-system-directories.patch
new file mode 100644
index 0000000..1231567
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-9.1/0002-gcc-poison-system-directories.patch
@@ -0,0 +1,203 @@
+From 733ca3372e4125170d4531bcd33e48eeb36bfec0 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 29 Mar 2013 08:59:00 +0400
+Subject: [PATCH 02/37] gcc: poison-system-directories
+
+Add /sw/include and /opt/include based on the original
+zecke-no-host-includes.patch patch. The original patch checked for
+/usr/include, /sw/include and /opt/include and then triggered a failure and
+aborted.
+
+Instead, we add the two missing items to the current scan. If the user
+wants this to be a failure, they can add "-Werror=poison-system-directories".
+
+Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+Upstream-Status: Pending
+---
+ gcc/common.opt | 4 ++++
+ gcc/config.in | 6 ++++++
+ gcc/configure | 16 ++++++++++++++++
+ gcc/configure.ac | 10 ++++++++++
+ gcc/doc/invoke.texi | 9 +++++++++
+ gcc/gcc.c | 2 ++
+ gcc/incpath.c | 21 +++++++++++++++++++++
+ 7 files changed, 68 insertions(+)
+
+diff --git a/gcc/common.opt b/gcc/common.opt
+index 9a5e9af06ca..211f2b2260e 100644
+--- a/gcc/common.opt
++++ b/gcc/common.opt
+@@ -684,6 +684,10 @@ Wreturn-local-addr
+ Common Var(warn_return_local_addr) Init(1) Warning
+ Warn about returning a pointer/reference to a local or temporary variable.
+
++Wpoison-system-directories
++Common Var(flag_poison_system_directories) Init(1) Warning
++Warn for -I and -L options using system directories if cross compiling
++
+ Wshadow
+ Common Var(warn_shadow) Warning
+ Warn when one variable shadows another. Same as -Wshadow=global.
+diff --git a/gcc/config.in b/gcc/config.in
+index 48a533bf208..fc3043bbdfb 100644
+--- a/gcc/config.in
++++ b/gcc/config.in
+@@ -200,6 +200,12 @@
+ #endif
+
+
++/* Define to warn for use of native system header directories */
++#ifndef USED_FOR_TARGET
++#undef ENABLE_POISON_SYSTEM_DIRECTORIES
++#endif
++
++
+ /* Define if you want all operations on RTL (the basic data structure of the
+ optimizer and back end) to be checked for dynamic type safety at runtime.
+ This is quite expensive. */
+diff --git a/gcc/configure b/gcc/configure
+index d6a48ef76e7..2e08396622e 100755
+--- a/gcc/configure
++++ b/gcc/configure
+@@ -995,6 +995,7 @@ with_system_zlib
+ enable_maintainer_mode
+ enable_link_mutex
+ enable_version_specific_runtime_libs
++enable_poison_system_directories
+ enable_plugin
+ enable_host_shared
+ enable_libquadmath_support
+@@ -1748,6 +1749,8 @@ Optional Features:
+ --enable-version-specific-runtime-libs
+ specify that runtime libraries should be installed
+ in a compiler-specific directory
++ --enable-poison-system-directories
++ warn for use of native system header directories
+ --enable-plugin enable plugin support
+ --enable-host-shared build host code as shared libraries
+ --disable-libquadmath-support
+@@ -29717,6 +29720,19 @@ if test "${enable_version_specific_runtime_libs+set}" = set; then :
+ fi
+
+
++# Check whether --enable-poison-system-directories was given.
++if test "${enable_poison_system_directories+set}" = set; then :
++ enableval=$enable_poison_system_directories;
++else
++ enable_poison_system_directories=no
++fi
++
++if test "x${enable_poison_system_directories}" = "xyes"; then
++
++$as_echo "#define ENABLE_POISON_SYSTEM_DIRECTORIES 1" >>confdefs.h
++
++fi
++
+ # Substitute configuration variables
+
+
+diff --git a/gcc/configure.ac b/gcc/configure.ac
+index 78370352938..7d34911573e 100644
+--- a/gcc/configure.ac
++++ b/gcc/configure.ac
+@@ -6375,6 +6375,16 @@ AC_ARG_ENABLE(version-specific-runtime-libs,
+ [specify that runtime libraries should be
+ installed in a compiler-specific directory])])
+
++AC_ARG_ENABLE([poison-system-directories],
++ AS_HELP_STRING([--enable-poison-system-directories],
++ [warn for use of native system header directories]),,
++ [enable_poison_system_directories=no])
++if test "x${enable_poison_system_directories}" = "xyes"; then
++ AC_DEFINE([ENABLE_POISON_SYSTEM_DIRECTORIES],
++ [1],
++ [Define to warn for use of native system header directories])
++fi
++
+ # Substitute configuration variables
+ AC_SUBST(subdirs)
+ AC_SUBST(srcdir)
+diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
+index 99fd97404e1..001868e1509 100644
+--- a/gcc/doc/invoke.texi
++++ b/gcc/doc/invoke.texi
+@@ -330,6 +330,7 @@ Objective-C and Objective-C++ Dialects}.
+ -Wpacked -Wpacked-bitfield-compat -Wpacked-not-aligned -Wpadded @gol
+ -Wparentheses -Wno-pedantic-ms-format @gol
+ -Wplacement-new -Wplacement-new=@var{n} @gol
++-Wno-poison-system-directories @gol
+ -Wpointer-arith -Wpointer-compare -Wno-pointer-to-int-cast @gol
+ -Wno-pragmas -Wno-prio-ctor-dtor -Wredundant-decls @gol
+ -Wrestrict -Wno-return-local-addr @gol
+@@ -6254,6 +6255,14 @@ made up of data only and thus requires no special treatment. But, for
+ most targets, it is made up of code and thus requires the stack to be
+ made executable in order for the program to work properly.
+
++@item -Wno-poison-system-directories
++@opindex Wno-poison-system-directories
++Do not warn for @option{-I} or @option{-L} options using system
++directories such as @file{/usr/include} when cross compiling. This
++option is intended for use in chroot environments when such
++directories contain the correct headers and libraries for the target
++system rather than the host.
++
+ @item -Wfloat-equal
+ @opindex Wfloat-equal
+ @opindex Wno-float-equal
+diff --git a/gcc/gcc.c b/gcc/gcc.c
+index 797ed36616f..79c38d858d1 100644
+--- a/gcc/gcc.c
++++ b/gcc/gcc.c
+@@ -1042,6 +1042,8 @@ proper position among the other output files. */
+ "%{fuse-ld=*:-fuse-ld=%*} " LINK_COMPRESS_DEBUG_SPEC \
+ "%X %{o*} %{e*} %{N} %{n} %{r}\
+ %{s} %{t} %{u*} %{z} %{Z} %{!nostdlib:%{!r:%{!nostartfiles:%S}}} \
++ %{Wno-poison-system-directories:--no-poison-system-directories} \
++ %{Werror=poison-system-directories:--error-poison-system-directories} \
+ %{static|no-pie|static-pie:} %@{L*} %(mfwrap) %(link_libgcc) " \
+ VTABLE_VERIFICATION_SPEC " " SANITIZER_EARLY_SPEC " %o "" \
+ %{fopenacc|fopenmp|%:gt(%{ftree-parallelize-loops=*:%*} 1):\
+diff --git a/gcc/incpath.c b/gcc/incpath.c
+index bcbe2082905..5752298bbf2 100644
+--- a/gcc/incpath.c
++++ b/gcc/incpath.c
+@@ -26,6 +26,7 @@
+ #include "intl.h"
+ #include "incpath.h"
+ #include "cppdefault.h"
++#include "diagnostic-core.h"
+
+ /* Microsoft Windows does not natively support inodes.
+ VMS has non-numeric inodes. */
+@@ -393,6 +394,26 @@ merge_include_chains (const char *sysroot, cpp_reader *pfile, int verbose)
+ }
+ fprintf (stderr, _("End of search list.\n"));
+ }
++
++#ifdef ENABLE_POISON_SYSTEM_DIRECTORIES
++ if (flag_poison_system_directories)
++ {
++ struct cpp_dir *p;
++
++ for (p = heads[INC_QUOTE]; p; p = p->next)
++ {
++ if ((!strncmp (p->name, "/usr/include", 12))
++ || (!strncmp (p->name, "/usr/local/include", 18))
++ || (!strncmp (p->name, "/usr/X11R6/include", 18))
++ || (!strncmp (p->name, "/sw/include", 11))
++ || (!strncmp (p->name, "/opt/include", 12)))
++ warning (OPT_Wpoison_system_directories,
++ "include location \"%s\" is unsafe for "
++ "cross-compilation",
++ p->name);
++ }
++ }
++#endif
+ }
+
+ /* Use given -I paths for #include "..." but not #include <...>, and
+--
+2.20.1
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.1/0003-gcc-4.3.3-SYSROOT_CFLAGS_FOR_TARGET.patch b/poky/meta/recipes-devtools/gcc/gcc-9.1/0003-gcc-4.3.3-SYSROOT_CFLAGS_FOR_TARGET.patch
new file mode 100644
index 0000000..916c374
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-9.1/0003-gcc-4.3.3-SYSROOT_CFLAGS_FOR_TARGET.patch
@@ -0,0 +1,73 @@
+From 320352cc741c89f1a9b2ee7929193d255e65f27a Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 29 Mar 2013 09:08:31 +0400
+Subject: [PATCH 03/37] gcc-4.3.3: SYSROOT_CFLAGS_FOR_TARGET
+
+Before committing, I noticed that PR/32161 was marked as a dup of PR/32009, but my previous patch did not fix it.
+
+This alternative patch is better because it lets you just use CFLAGS_FOR_TARGET to set the compilation flags for libgcc. Since bootstrapped target libraries are never compiled with the native compiler, it makes little sense to use different flags for stage1 and later stages. And it also makes little sense to use a different variable than CFLAGS_FOR_TARGET.
+
+Other changes I had to do include:
+
+- moving the creation of default CFLAGS_FOR_TARGET from Makefile.am to configure.ac, because otherwise the BOOT_CFLAGS are substituted into CFLAGS_FOR_TARGET (which is "-O2 -g $(CFLAGS)") via $(CFLAGS). It is also cleaner this way though.
+
+- passing the right CFLAGS to configure scripts as exported environment variables
+
+I also stopped passing LIBCFLAGS to configure scripts since they are unused in the whole src tree. And I updated the documentation as H-P reminded me to do.
+
+Bootstrapped/regtested i686-pc-linux-gnu, will commit to 4.4 shortly. Ok for 4.3?
+
+Signed-off-by: Paolo Bonzini <bonzini@gnu.org>
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+Upstream-Status: Pending
+---
+ configure | 32 ++++++++++++++++++++++++++++++++
+ 1 file changed, 32 insertions(+)
+
+diff --git a/configure b/configure
+index 8a04eea4c71..3b0eed74847 100755
+--- a/configure
++++ b/configure
+@@ -6863,6 +6863,38 @@ fi
+
+
+
++# During gcc bootstrap, if we use some random cc for stage1 then CFLAGS
++# might be empty or "-g". We don't require a C++ compiler, so CXXFLAGS
++# might also be empty (or "-g", if a non-GCC C++ compiler is in the path).
++# We want to ensure that TARGET libraries (which we know are built with
++# gcc) are built with "-O2 -g", so include those options when setting
++# CFLAGS_FOR_TARGET and CXXFLAGS_FOR_TARGET.
++if test "x$CFLAGS_FOR_TARGET" = x; then
++ CFLAGS_FOR_TARGET=$CFLAGS
++ case " $CFLAGS " in
++ *" -O2 "*) ;;
++ *) CFLAGS_FOR_TARGET="-O2 $CFLAGS" ;;
++ esac
++ case " $CFLAGS " in
++ *" -g "* | *" -g3 "*) ;;
++ *) CFLAGS_FOR_TARGET="-g $CFLAGS" ;;
++ esac
++fi
++
++
++if test "x$CXXFLAGS_FOR_TARGET" = x; then
++ CXXFLAGS_FOR_TARGET=$CXXFLAGS
++ case " $CXXFLAGS " in
++ *" -O2 "*) ;;
++ *) CXXFLAGS_FOR_TARGET="-O2 $CXXFLAGS" ;;
++ esac
++ case " $CXXFLAGS " in
++ *" -g "* | *" -g3 "*) ;;
++ *) CXXFLAGS_FOR_TARGET="-g $CXXFLAGS" ;;
++ esac
++fi
++
++
+ # Handle --with-headers=XXX. If the value is not "yes", the contents of
+ # the named directory are copied to $(tooldir)/sys-include.
+ if test x"${with_headers}" != x && test x"${with_headers}" != xno ; then
+--
+2.20.1
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.1/0004-64-bit-multilib-hack.patch b/poky/meta/recipes-devtools/gcc/gcc-9.1/0004-64-bit-multilib-hack.patch
new file mode 100644
index 0000000..137261b
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-9.1/0004-64-bit-multilib-hack.patch
@@ -0,0 +1,119 @@
+From 150d946082b3e21614d1cd0eb4752871495fe519 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 29 Mar 2013 09:10:06 +0400
+Subject: [PATCH 04/37] 64-bit multilib hack.
+
+GCC has internal multilib handling code but it assumes a very specific rigid directory
+layout. The build system implementation of multilib layout is very generic and allows
+complete customisation of the library directories.
+
+This patch is a partial solution to allow any custom directories to be passed into gcc
+and handled correctly. It forces gcc to use the base_libdir (which is the current
+directory, "."). We need to do this for each multilib that is configured as we don't
+know which compiler options may be being passed into the compiler. Since we have a compiler
+per mulitlib at this point that isn't an issue.
+
+The one problem is the target compiler is only going to work for the default multlilib at
+this point. Ideally we'd figure out which multilibs were being enabled with which paths
+and be able to patch these entries with a complete set of correct paths but this we
+don't have such code at this point. This is something the target gcc recipe should do
+and override these platform defaults in its build config.
+
+Do same for riscv64 and aarch64
+
+RP 15/8/11
+
+Upstream-Status: Inappropriate[OE-Specific]
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+Signed-off-by: Elvis Dowson <elvis.dowson@gmail.com>
+Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
+---
+ gcc/config/aarch64/t-aarch64-linux | 8 ++++----
+ gcc/config/i386/t-linux64 | 6 ++----
+ gcc/config/mips/t-linux64 | 10 +++-------
+ gcc/config/riscv/t-linux | 6 ++++--
+ gcc/config/rs6000/t-linux64 | 5 ++---
+ 5 files changed, 15 insertions(+), 20 deletions(-)
+
+diff --git a/gcc/config/aarch64/t-aarch64-linux b/gcc/config/aarch64/t-aarch64-linux
+index 5ad670ba2ce..e26019e7157 100644
+--- a/gcc/config/aarch64/t-aarch64-linux
++++ b/gcc/config/aarch64/t-aarch64-linux
+@@ -21,8 +21,8 @@
+ LIB1ASMSRC = aarch64/lib1funcs.asm
+ LIB1ASMFUNCS = _aarch64_sync_cache_range
+
+-AARCH_BE = $(if $(findstring TARGET_BIG_ENDIAN_DEFAULT=1, $(tm_defines)),_be)
+-MULTILIB_OSDIRNAMES = mabi.lp64=../lib64$(call if_multiarch,:aarch64$(AARCH_BE)-linux-gnu)
+-MULTIARCH_DIRNAME = $(call if_multiarch,aarch64$(AARCH_BE)-linux-gnu)
++#AARCH_BE = $(if $(findstring TARGET_BIG_ENDIAN_DEFAULT=1, $(tm_defines)),_be)
++#MULTILIB_OSDIRNAMES = mabi.lp64=../lib64$(call if_multiarch,:aarch64$(AARCH_BE)-linux-gnu)
++#MULTIARCH_DIRNAME = $(call if_multiarch,aarch64$(AARCH_BE)-linux-gnu)
+
+-MULTILIB_OSDIRNAMES += mabi.ilp32=../libilp32$(call if_multiarch,:aarch64$(AARCH_BE)-linux-gnu_ilp32)
++#MULTILIB_OSDIRNAMES += mabi.ilp32=../libilp32$(call if_multiarch,:aarch64$(AARCH_BE)-linux-gnu_ilp32)
+diff --git a/gcc/config/i386/t-linux64 b/gcc/config/i386/t-linux64
+index c686ab2f0d2..c82b60dadcd 100644
+--- a/gcc/config/i386/t-linux64
++++ b/gcc/config/i386/t-linux64
+@@ -32,7 +32,5 @@
+ #
+ comma=,
+ MULTILIB_OPTIONS = $(subst $(comma),/,$(TM_MULTILIB_CONFIG))
+-MULTILIB_DIRNAMES = $(patsubst m%, %, $(subst /, ,$(MULTILIB_OPTIONS)))
+-MULTILIB_OSDIRNAMES = m64=../lib64$(call if_multiarch,:x86_64-linux-gnu)
+-MULTILIB_OSDIRNAMES+= m32=$(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib)$(call if_multiarch,:i386-linux-gnu)
+-MULTILIB_OSDIRNAMES+= mx32=../libx32$(call if_multiarch,:x86_64-linux-gnux32)
++MULTILIB_DIRNAMES = . .
++MULTILIB_OSDIRNAMES = ../$(shell basename $(base_libdir)) ../$(shell basename $(base_libdir))
+diff --git a/gcc/config/mips/t-linux64 b/gcc/config/mips/t-linux64
+index 3a2ff700d7d..13ef19576b5 100644
+--- a/gcc/config/mips/t-linux64
++++ b/gcc/config/mips/t-linux64
+@@ -17,10 +17,6 @@
+ # <http://www.gnu.org/licenses/>.
+
+ MULTILIB_OPTIONS = mabi=n32/mabi=32/mabi=64
+-MULTILIB_DIRNAMES = n32 32 64
+-MIPS_EL = $(if $(filter %el, $(firstword $(subst -, ,$(target)))),el)
+-MIPS_SOFT = $(if $(strip $(filter MASK_SOFT_FLOAT_ABI, $(target_cpu_default)) $(filter soft, $(with_float))),soft)
+-MULTILIB_OSDIRNAMES = \
+- ../lib32$(call if_multiarch,:mips64$(MIPS_EL)-linux-gnuabin32$(MIPS_SOFT)) \
+- ../lib$(call if_multiarch,:mips$(MIPS_EL)-linux-gnu$(MIPS_SOFT)) \
+- ../lib64$(call if_multiarch,:mips64$(MIPS_EL)-linux-gnuabi64$(MIPS_SOFT))
++MULTILIB_DIRNAMES = . . .
++MULTILIB_OSDIRNAMES = ../$(shell basename $(base_libdir)) ../$(shell basename $(base_libdir)) ../$(shell basename $(base_libdir))
++
+diff --git a/gcc/config/riscv/t-linux b/gcc/config/riscv/t-linux
+index 216d2776a18..e4d817621fc 100644
+--- a/gcc/config/riscv/t-linux
++++ b/gcc/config/riscv/t-linux
+@@ -1,3 +1,5 @@
+ # Only XLEN and ABI affect Linux multilib dir names, e.g. /lib32/ilp32d/
+-MULTILIB_DIRNAMES := $(patsubst rv32%,lib32,$(patsubst rv64%,lib64,$(MULTILIB_DIRNAMES)))
+-MULTILIB_OSDIRNAMES := $(patsubst lib%,../lib%,$(MULTILIB_DIRNAMES))
++#MULTILIB_DIRNAMES := $(patsubst rv32%,lib32,$(patsubst rv64%,lib64,$(MULTILIB_DIRNAMES)))
++MULTILIB_DIRNAMES := . .
++#MULTILIB_OSDIRNAMES := $(patsubst lib%,../lib%,$(MULTILIB_DIRNAMES))
++MULTILIB_OSDIRNAMES := ../$(shell basename $(base_libdir)) ../$(shell basename $(base_libdir))
+diff --git a/gcc/config/rs6000/t-linux64 b/gcc/config/rs6000/t-linux64
+index f3c6e2be1d9..bd0393155fa 100644
+--- a/gcc/config/rs6000/t-linux64
++++ b/gcc/config/rs6000/t-linux64
+@@ -26,10 +26,9 @@
+ # MULTILIB_OSDIRNAMES according to what is found on the target.
+
+ MULTILIB_OPTIONS := m64/m32
+-MULTILIB_DIRNAMES := 64 32
++MULTILIB_DIRNAMES := . .
+ MULTILIB_EXTRA_OPTS :=
+-MULTILIB_OSDIRNAMES := m64=../lib64$(call if_multiarch,:powerpc64-linux-gnu)
+-MULTILIB_OSDIRNAMES += m32=$(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib)$(call if_multiarch,:powerpc-linux-gnu)
++MULTILIB_OSDIRNAMES := ../$(shell basename $(base_libdir)) ../$(shell basename $(base_libdir))
+
+ rs6000-linux.o: $(srcdir)/config/rs6000/rs6000-linux.c
+ $(COMPILE) $<
+--
+2.20.1
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.1/0005-optional-libstdc.patch b/poky/meta/recipes-devtools/gcc/gcc-9.1/0005-optional-libstdc.patch
new file mode 100644
index 0000000..d8e970a
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-9.1/0005-optional-libstdc.patch
@@ -0,0 +1,125 @@
+From a3323ea74f0793b35af4a4cdbe5e99fe21e4816b Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 29 Mar 2013 09:12:56 +0400
+Subject: [PATCH 05/37] optional libstdc
+
+gcc-runtime builds libstdc++ separately from gcc-cross-*. Its configure tests using g++
+will not run correctly since by default the linker will try to link against libstdc++
+which shouldn't exist yet. We need an option to disable -lstdc++
+option whilst leaving -lc, -lgcc and other automatic library dependencies added by gcc
+driver. This patch adds such an option which only disables the -lstdc++.
+
+A "standard" gcc build uses xgcc and hence avoids this. We should ask upstream how to
+do this officially, the likely answer is don't build libstdc++ separately.
+
+RP 29/6/10
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+Upstream-Status: Inappropriate [embedded specific]
+---
+ gcc/c-family/c.opt | 4 ++++
+ gcc/cp/g++spec.c | 1 +
+ gcc/doc/invoke.texi | 32 +++++++++++++++++++++++++++++++-
+ gcc/gcc.c | 1 +
+ 4 files changed, 37 insertions(+), 1 deletion(-)
+
+diff --git a/gcc/c-family/c.opt b/gcc/c-family/c.opt
+index 88c72c51c21..a7029592aa3 100644
+--- a/gcc/c-family/c.opt
++++ b/gcc/c-family/c.opt
+@@ -1948,6 +1948,10 @@ nostdinc++
+ C++ ObjC++
+ Do not search standard system include directories for C++.
+
++nostdlib++
++Driver
++Do not link standard C++ runtime library
++
+ o
+ C ObjC C++ ObjC++ Joined Separate
+ ; Documented in common.opt
+diff --git a/gcc/cp/g++spec.c b/gcc/cp/g++spec.c
+index 6c4574a837d..0e2657f00ee 100644
+--- a/gcc/cp/g++spec.c
++++ b/gcc/cp/g++spec.c
+@@ -137,6 +137,7 @@ lang_specific_driver (struct cl_decoded_option **in_decoded_options,
+ switch (decoded_options[i].opt_index)
+ {
+ case OPT_nostdlib:
++ case OPT_nostdlib__:
+ case OPT_nodefaultlibs:
+ library = -1;
+ break;
+diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
+index 001868e1509..4186c2616ab 100644
+--- a/gcc/doc/invoke.texi
++++ b/gcc/doc/invoke.texi
+@@ -226,6 +226,9 @@ in the following sections.
+ -fno-weak -nostdinc++ @gol
+ -fvisibility-inlines-hidden @gol
+ -fvisibility-ms-compat @gol
++-fvtable-verify=@r{[}std@r{|}preinit@r{|}none@r{]} @gol
++-fvtv-counts -fvtv-debug @gol
++-nostdlib++ @gol
+ -fext-numeric-literals @gol
+ -Wabi=@var{n} -Wabi-tag -Wconversion-null -Wctor-dtor-privacy @gol
+ -Wdelete-non-virtual-dtor -Wdeprecated-copy -Wdeprecated-copy-dtor @gol
+@@ -536,7 +539,7 @@ Objective-C and Objective-C++ Dialects}.
+ -pie -pthread -r -rdynamic @gol
+ -s -static -static-pie -static-libgcc -static-libstdc++ @gol
+ -static-libasan -static-libtsan -static-liblsan -static-libubsan @gol
+--shared -shared-libgcc -symbolic @gol
++-shared -shared-libgcc -symbolic -nostdlib++ @gol
+ -T @var{script} -Wl,@var{option} -Xlinker @var{option} @gol
+ -u @var{symbol} -z @var{keyword}}
+
+@@ -13259,6 +13262,33 @@ Specify that the program entry point is @var{entry}. The argument is
+ interpreted by the linker; the GNU linker accepts either a symbol name
+ or an address.
+
++@item -nostdlib++
++@opindex nostdlib++
++Do not use the standard system C++ runtime libraries when linking.
++Only the libraries you specify will be passed to the linker.
++
++@cindex @option{-lgcc}, use with @option{-nostdlib}
++@cindex @option{-nostdlib} and unresolved references
++@cindex unresolved references and @option{-nostdlib}
++@cindex @option{-lgcc}, use with @option{-nodefaultlibs}
++@cindex @option{-nodefaultlibs} and unresolved references
++@cindex unresolved references and @option{-nodefaultlibs}
++One of the standard libraries bypassed by @option{-nostdlib} and
++@option{-nodefaultlibs} is @file{libgcc.a}, a library of internal subroutines
++which GCC uses to overcome shortcomings of particular machines, or special
++needs for some languages.
++(@xref{Interface,,Interfacing to GCC Output,gccint,GNU Compiler
++Collection (GCC) Internals},
++for more discussion of @file{libgcc.a}.)
++In most cases, you need @file{libgcc.a} even when you want to avoid
++other standard libraries. In other words, when you specify @option{-nostdlib}
++or @option{-nodefaultlibs} you should usually specify @option{-lgcc} as well.
++This ensures that you have no unresolved references to internal GCC
++library subroutines.
++(An example of such an internal subroutine is @code{__main}, used to ensure C++
++constructors are called; @pxref{Collect2,,@code{collect2}, gccint,
++GNU Compiler Collection (GCC) Internals}.)
++
+ @item -pie
+ @opindex pie
+ Produce a dynamically linked position independent executable on targets
+diff --git a/gcc/gcc.c b/gcc/gcc.c
+index 79c38d858d1..308872aef5f 100644
+--- a/gcc/gcc.c
++++ b/gcc/gcc.c
+@@ -1052,6 +1052,7 @@ proper position among the other output files. */
+ %(mflib) " STACK_SPLIT_SPEC "\
+ %{fprofile-arcs|fprofile-generate*|coverage:-lgcov} " SANITIZER_SPEC " \
+ %{!nostdlib:%{!r:%{!nodefaultlibs:%(link_ssp) %(link_gcc_c_sequence)}}}\
++ %{!nostdlib++:}\
+ %{!nostdlib:%{!r:%{!nostartfiles:%E}}} %{T*} \n%(post_link) }}}}}}"
+ #endif
+
+--
+2.20.1
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.1/0006-gcc-disable-MASK_RELAX_PIC_CALLS-bit.patch b/poky/meta/recipes-devtools/gcc/gcc-9.1/0006-gcc-disable-MASK_RELAX_PIC_CALLS-bit.patch
new file mode 100644
index 0000000..4a552d5
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-9.1/0006-gcc-disable-MASK_RELAX_PIC_CALLS-bit.patch
@@ -0,0 +1,59 @@
+From ca3b3ac12d9b6e1065333dec89e7be2c733509d9 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 29 Mar 2013 09:14:20 +0400
+Subject: [PATCH 06/37] gcc: disable MASK_RELAX_PIC_CALLS bit
+
+The new feature added after 4.3.3
+"http://www.pubbs.net/200909/gcc/94048-patch-add-support-for-rmipsjalr.html"
+will cause cc1plus eat up all the system memory when build webkit-gtk.
+The function mips_get_pic_call_symbol keeps on recursively calling itself.
+Disable this feature to walk aside the bug.
+
+Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+Upstream-Status: Inappropriate [configuration]
+---
+ gcc/configure | 7 -------
+ gcc/configure.ac | 7 -------
+ 2 files changed, 14 deletions(-)
+
+diff --git a/gcc/configure b/gcc/configure
+index 2e08396622e..d36cb51bc2c 100755
+--- a/gcc/configure
++++ b/gcc/configure
+@@ -27509,13 +27509,6 @@ $as_echo_n "checking assembler and linker for explicit JALR relocation... " >&6;
+ rm -f conftest.*
+ fi
+ fi
+- if test $gcc_cv_as_ld_jalr_reloc = yes; then
+- if test x$target_cpu_default = x; then
+- target_cpu_default=MASK_RELAX_PIC_CALLS
+- else
+- target_cpu_default="($target_cpu_default)|MASK_RELAX_PIC_CALLS"
+- fi
+- fi
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gcc_cv_as_ld_jalr_reloc" >&5
+ $as_echo "$gcc_cv_as_ld_jalr_reloc" >&6; }
+
+diff --git a/gcc/configure.ac b/gcc/configure.ac
+index 7d34911573e..dfa88c35f3f 100644
+--- a/gcc/configure.ac
++++ b/gcc/configure.ac
+@@ -4816,13 +4816,6 @@ x:
+ rm -f conftest.*
+ fi
+ fi
+- if test $gcc_cv_as_ld_jalr_reloc = yes; then
+- if test x$target_cpu_default = x; then
+- target_cpu_default=MASK_RELAX_PIC_CALLS
+- else
+- target_cpu_default="($target_cpu_default)|MASK_RELAX_PIC_CALLS"
+- fi
+- fi
+ AC_MSG_RESULT($gcc_cv_as_ld_jalr_reloc)
+
+ AC_CACHE_CHECK([linker for .eh_frame personality relaxation],
+--
+2.20.1
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.1/0007-COLLECT_GCC_OPTIONS.patch b/poky/meta/recipes-devtools/gcc/gcc-9.1/0007-COLLECT_GCC_OPTIONS.patch
new file mode 100644
index 0000000..a522ada
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-9.1/0007-COLLECT_GCC_OPTIONS.patch
@@ -0,0 +1,38 @@
+From c7b8c2a6e81daaa50047c336c8ee90086aa4d4d5 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 29 Mar 2013 09:16:28 +0400
+Subject: [PATCH 07/37] COLLECT_GCC_OPTIONS
+
+This patch adds --sysroot into COLLECT_GCC_OPTIONS which is used to
+invoke collect2.
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+Upstream-Status: Pending
+---
+ gcc/gcc.c | 9 +++++++++
+ 1 file changed, 9 insertions(+)
+
+diff --git a/gcc/gcc.c b/gcc/gcc.c
+index 308872aef5f..30845e5b125 100644
+--- a/gcc/gcc.c
++++ b/gcc/gcc.c
+@@ -4804,6 +4804,15 @@ set_collect_gcc_options (void)
+ sizeof ("COLLECT_GCC_OPTIONS=") - 1);
+
+ first_time = TRUE;
++#ifdef HAVE_LD_SYSROOT
++ if (target_system_root_changed && target_system_root)
++ {
++ obstack_grow (&collect_obstack, "'--sysroot=", sizeof("'--sysroot=")-1);
++ obstack_grow (&collect_obstack, target_system_root,strlen(target_system_root));
++ obstack_grow (&collect_obstack, "'", 1);
++ first_time = FALSE;
++ }
++#endif
+ for (i = 0; (int) i < n_switches; i++)
+ {
+ const char *const *args;
+--
+2.20.1
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.1/0008-Use-the-defaults.h-in-B-instead-of-S-and-t-oe-in-B.patch b/poky/meta/recipes-devtools/gcc/gcc-9.1/0008-Use-the-defaults.h-in-B-instead-of-S-and-t-oe-in-B.patch
new file mode 100644
index 0000000..2ef94a0
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-9.1/0008-Use-the-defaults.h-in-B-instead-of-S-and-t-oe-in-B.patch
@@ -0,0 +1,96 @@
+From 2f65b8bbf9c7c4bc0b94bb7ba9f6a8eb8675c9ab Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 29 Mar 2013 09:17:25 +0400
+Subject: [PATCH 08/37] Use the defaults.h in ${B} instead of ${S}, and t-oe in
+ ${B}
+
+Use the defaults.h in ${B} instead of ${S}, and t-oe in ${B}, so that
+the source can be shared between gcc-cross-initial,
+gcc-cross-intermediate, gcc-cross, gcc-runtime, and also the sdk build.
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+Upstream-Status: Pending
+
+While compiling gcc-crosssdk-initial-x86_64 on some host, there is
+occasionally failure that test the existance of default.h doesn't
+work, the reason is tm_include_list='** defaults.h' rather than
+tm_include_list='** ./defaults.h'
+
+So we add the test condition for this situation.
+Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
+---
+ gcc/Makefile.in | 2 +-
+ gcc/configure | 4 ++--
+ gcc/configure.ac | 4 ++--
+ gcc/mkconfig.sh | 4 ++--
+ 4 files changed, 7 insertions(+), 7 deletions(-)
+
+diff --git a/gcc/Makefile.in b/gcc/Makefile.in
+index 508c674cbdc..3ccff1614bb 100644
+--- a/gcc/Makefile.in
++++ b/gcc/Makefile.in
+@@ -540,7 +540,7 @@ TARGET_SYSTEM_ROOT = @TARGET_SYSTEM_ROOT@
+ TARGET_SYSTEM_ROOT_DEFINE = @TARGET_SYSTEM_ROOT_DEFINE@
+
+ xmake_file=@xmake_file@
+-tmake_file=@tmake_file@
++tmake_file=@tmake_file@ ./t-oe
+ TM_ENDIAN_CONFIG=@TM_ENDIAN_CONFIG@
+ TM_MULTILIB_CONFIG=@TM_MULTILIB_CONFIG@
+ TM_MULTILIB_EXCEPTIONS_CONFIG=@TM_MULTILIB_EXCEPTIONS_CONFIG@
+diff --git a/gcc/configure b/gcc/configure
+index d36cb51bc2c..7acc7e487b0 100755
+--- a/gcc/configure
++++ b/gcc/configure
+@@ -12341,8 +12341,8 @@ for f in $tm_file; do
+ tm_include_list="${tm_include_list} $f"
+ ;;
+ defaults.h )
+- tm_file_list="${tm_file_list} \$(srcdir)/$f"
+- tm_include_list="${tm_include_list} $f"
++ tm_file_list="${tm_file_list} ./$f"
++ tm_include_list="${tm_include_list} ./$f"
+ ;;
+ * )
+ tm_file_list="${tm_file_list} \$(srcdir)/config/$f"
+diff --git a/gcc/configure.ac b/gcc/configure.ac
+index dfa88c35f3f..f5d5e5c16a8 100644
+--- a/gcc/configure.ac
++++ b/gcc/configure.ac
+@@ -1968,8 +1968,8 @@ for f in $tm_file; do
+ tm_include_list="${tm_include_list} $f"
+ ;;
+ defaults.h )
+- tm_file_list="${tm_file_list} \$(srcdir)/$f"
+- tm_include_list="${tm_include_list} $f"
++ tm_file_list="${tm_file_list} ./$f"
++ tm_include_list="${tm_include_list} ./$f"
+ ;;
+ * )
+ tm_file_list="${tm_file_list} \$(srcdir)/config/$f"
+diff --git a/gcc/mkconfig.sh b/gcc/mkconfig.sh
+index 308b87d0cc1..19068cbc24a 100644
+--- a/gcc/mkconfig.sh
++++ b/gcc/mkconfig.sh
+@@ -77,7 +77,7 @@ if [ -n "$HEADERS" ]; then
+ if [ $# -ge 1 ]; then
+ echo '#ifdef IN_GCC' >> ${output}T
+ for file in "$@"; do
+- if test x"$file" = x"defaults.h"; then
++ if test x"$file" = x"./defaults.h" -o x"$file" = x"defaults.h"; then
+ postpone_defaults_h="yes"
+ else
+ echo "# include \"$file\"" >> ${output}T
+@@ -106,7 +106,7 @@ esac
+
+ # If we postponed including defaults.h, add the #include now.
+ if test x"$postpone_defaults_h" = x"yes"; then
+- echo "# include \"defaults.h\"" >> ${output}T
++ echo "# include \"./defaults.h\"" >> ${output}T
+ fi
+
+ # Add multiple inclusion protection guard, part two.
+--
+2.20.1
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.1/0009-fortran-cross-compile-hack.patch b/poky/meta/recipes-devtools/gcc/gcc-9.1/0009-fortran-cross-compile-hack.patch
new file mode 100644
index 0000000..7959714
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-9.1/0009-fortran-cross-compile-hack.patch
@@ -0,0 +1,46 @@
+From eda94df7d2389b6c36428e5687d5f0722d3375c3 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 29 Mar 2013 09:20:01 +0400
+Subject: [PATCH 09/37] fortran cross-compile hack.
+
+* Fortran would have searched for arm-angstrom-gnueabi-gfortran but would have used
+used gfortan. For gcc_4.2.2.bb we want to use the gfortran compiler from our cross
+directory.
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+Upstream-Status: Inappropriate [embedded specific]
+---
+ libgfortran/configure | 2 +-
+ libgfortran/configure.ac | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/libgfortran/configure b/libgfortran/configure
+index 487d8c090e2..a02b49293ac 100755
+--- a/libgfortran/configure
++++ b/libgfortran/configure
+@@ -13056,7 +13056,7 @@ esac
+
+ # We need gfortran to compile parts of the library
+ #AC_PROG_FC(gfortran)
+-FC="$GFORTRAN"
++#FC="$GFORTRAN"
+ ac_ext=${ac_fc_srcext-f}
+ ac_compile='$FC -c $FCFLAGS $ac_fcflags_srcext conftest.$ac_ext >&5'
+ ac_link='$FC -o conftest$ac_exeext $FCFLAGS $LDFLAGS $ac_fcflags_srcext conftest.$ac_ext $LIBS >&5'
+diff --git a/libgfortran/configure.ac b/libgfortran/configure.ac
+index c06db7b1a78..5b4b1b7f1f2 100644
+--- a/libgfortran/configure.ac
++++ b/libgfortran/configure.ac
+@@ -250,7 +250,7 @@ AC_SUBST(enable_static)
+
+ # We need gfortran to compile parts of the library
+ #AC_PROG_FC(gfortran)
+-FC="$GFORTRAN"
++#FC="$GFORTRAN"
+ AC_PROG_FC(gfortran)
+
+ # extra LD Flags which are required for targets
+--
+2.20.1
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.1/0010-cpp-honor-sysroot.patch b/poky/meta/recipes-devtools/gcc/gcc-9.1/0010-cpp-honor-sysroot.patch
new file mode 100644
index 0000000..b680e6f
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-9.1/0010-cpp-honor-sysroot.patch
@@ -0,0 +1,54 @@
+From c2ec131f19d656fd916c45f51186633c789db6e9 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 29 Mar 2013 09:22:00 +0400
+Subject: [PATCH 10/37] cpp: honor sysroot.
+
+Currently, if the gcc toolchain is relocated and installed from sstate, then you try and compile
+preprocessed source (.i or .ii files), the compiler will try and access the builtin sysroot location
+rather than the --sysroot option specified on the commandline. If access to that directory is
+permission denied (unreadable), gcc will error.
+
+This happens when ccache is in use due to the fact it uses preprocessed source files.
+
+The fix below adds %I to the cpp-output spec macro so the default substitutions for -iprefix,
+-isystem, -isysroot happen and the correct sysroot is used.
+
+[YOCTO #2074]
+
+RP 2012/04/13
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+Upstream-Status: Pending
+---
+ gcc/cp/lang-specs.h | 2 +-
+ gcc/gcc.c | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/gcc/cp/lang-specs.h b/gcc/cp/lang-specs.h
+index c6e42eda283..e1ddf066467 100644
+--- a/gcc/cp/lang-specs.h
++++ b/gcc/cp/lang-specs.h
+@@ -66,5 +66,5 @@ along with GCC; see the file COPYING3. If not see
+ {".ii", "@c++-cpp-output", 0, 0, 0},
+ {"@c++-cpp-output",
+ "%{!E:%{!M:%{!MM:"
+- " cc1plus -fpreprocessed %i %(cc1_options) %2"
++ " cc1plus -fpreprocessed %i %I %(cc1_options) %2"
+ " %{!fsyntax-only:%(invoke_as)}}}}", 0, 0, 0},
+diff --git a/gcc/gcc.c b/gcc/gcc.c
+index 30845e5b125..cef26c454d7 100644
+--- a/gcc/gcc.c
++++ b/gcc/gcc.c
+@@ -1349,7 +1349,7 @@ static const struct compiler default_compilers[] =
+ %W{o*:--output-pch=%*}}%V}}}}}}}", 0, 0, 0},
+ {".i", "@cpp-output", 0, 0, 0},
+ {"@cpp-output",
+- "%{!M:%{!MM:%{!E:cc1 -fpreprocessed %i %(cc1_options) %{!fsyntax-only:%(invoke_as)}}}}", 0, 0, 0},
++ "%{!M:%{!MM:%{!E:cc1 -fpreprocessed %i %I %(cc1_options) %{!fsyntax-only:%(invoke_as)}}}}", 0, 0, 0},
+ {".s", "@assembler", 0, 0, 0},
+ {"@assembler",
+ "%{!M:%{!MM:%{!E:%{!S:as %(asm_debug) %(asm_options) %i %A }}}}", 0, 0, 0},
+--
+2.20.1
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.1/0011-MIPS64-Default-to-N64-ABI.patch b/poky/meta/recipes-devtools/gcc/gcc-9.1/0011-MIPS64-Default-to-N64-ABI.patch
new file mode 100644
index 0000000..d59a31b
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-9.1/0011-MIPS64-Default-to-N64-ABI.patch
@@ -0,0 +1,57 @@
+From 52b915732de89d8676868641af462df81211bb39 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 29 Mar 2013 09:23:08 +0400
+Subject: [PATCH 11/37] MIPS64: Default to N64 ABI
+
+MIPS64 defaults to n32 ABI, this patch makes it
+so that it defaults to N64 ABI
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+Upstream-Status: Inappropriate [OE config specific]
+---
+ gcc/config.gcc | 10 +++++-----
+ 1 file changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/gcc/config.gcc b/gcc/config.gcc
+index a189cb19f63..293ed8d585d 100644
+--- a/gcc/config.gcc
++++ b/gcc/config.gcc
+@@ -2267,29 +2267,29 @@ mips*-*-linux*) # Linux MIPS, either endian.
+ default_mips_arch=mips32
+ ;;
+ mips64el-st-linux-gnu)
+- default_mips_abi=n32
++ default_mips_abi=64
+ tm_file="${tm_file} mips/st.h"
+ tmake_file="${tmake_file} mips/t-st"
+ enable_mips_multilibs="yes"
+ ;;
+ mips64octeon*-*-linux*)
+- default_mips_abi=n32
++ default_mips_abi=64
+ tm_defines="${tm_defines} MIPS_CPU_STRING_DEFAULT=\\\"octeon\\\""
+ target_cpu_default=MASK_SOFT_FLOAT_ABI
+ enable_mips_multilibs="yes"
+ ;;
+ mipsisa64r6*-*-linux*)
+- default_mips_abi=n32
++ default_mips_abi=64
+ default_mips_arch=mips64r6
+ enable_mips_multilibs="yes"
+ ;;
+ mipsisa64r2*-*-linux*)
+- default_mips_abi=n32
++ default_mips_abi=64
+ default_mips_arch=mips64r2
+ enable_mips_multilibs="yes"
+ ;;
+ mips64*-*-linux* | mipsisa64*-*-linux*)
+- default_mips_abi=n32
++ default_mips_abi=64
+ enable_mips_multilibs="yes"
+ ;;
+ esac
+--
+2.20.1
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.1/0012-Define-GLIBC_DYNAMIC_LINKER-and-UCLIBC_DYNAMIC_LINKE.patch b/poky/meta/recipes-devtools/gcc/gcc-9.1/0012-Define-GLIBC_DYNAMIC_LINKER-and-UCLIBC_DYNAMIC_LINKE.patch
new file mode 100644
index 0000000..f23a314
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-9.1/0012-Define-GLIBC_DYNAMIC_LINKER-and-UCLIBC_DYNAMIC_LINKE.patch
@@ -0,0 +1,232 @@
+From 492f008dce784749e39e1c396aeea6fa1d977374 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 29 Mar 2013 09:24:50 +0400
+Subject: [PATCH 12/37] Define GLIBC_DYNAMIC_LINKER and UCLIBC_DYNAMIC_LINKER
+ relative to SYSTEMLIBS_DIR
+
+This patch defines GLIBC_DYNAMIC_LINKER and UCLIBC_DYNAMIC_LINKER
+relative to SYSTEMLIBS_DIR which can be set in generated headers
+This breaks the assumption of hardcoded multilib in gcc
+Change is only for the supported architectures in OE including
+SH, sparc, alpha for possible future support (if any)
+
+Removes the do_headerfix task in metadata
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+Upstream-Status: Inappropriate [OE configuration]
+---
+ gcc/config/alpha/linux-elf.h | 4 ++--
+ gcc/config/arm/linux-eabi.h | 4 ++--
+ gcc/config/arm/linux-elf.h | 2 +-
+ gcc/config/i386/linux.h | 2 +-
+ gcc/config/i386/linux64.h | 6 +++---
+ gcc/config/linux.h | 8 ++++----
+ gcc/config/mips/linux.h | 12 ++++++------
+ gcc/config/rs6000/linux64.h | 15 +++++----------
+ gcc/config/sh/linux.h | 2 +-
+ gcc/config/sparc/linux.h | 2 +-
+ gcc/config/sparc/linux64.h | 4 ++--
+ 11 files changed, 28 insertions(+), 33 deletions(-)
+
+diff --git a/gcc/config/alpha/linux-elf.h b/gcc/config/alpha/linux-elf.h
+index 824861befec..6afacce3292 100644
+--- a/gcc/config/alpha/linux-elf.h
++++ b/gcc/config/alpha/linux-elf.h
+@@ -23,8 +23,8 @@ along with GCC; see the file COPYING3. If not see
+ #define EXTRA_SPECS \
+ { "elf_dynamic_linker", ELF_DYNAMIC_LINKER },
+
+-#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2"
+-#define UCLIBC_DYNAMIC_LINKER "/lib/ld-uClibc.so.0"
++#define GLIBC_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-linux.so.2"
++#define UCLIBC_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-uClibc.so.0"
+ #if DEFAULT_LIBC == LIBC_UCLIBC
+ #define CHOOSE_DYNAMIC_LINKER(G, U) "%{mglibc:" G ";:" U "}"
+ #elif DEFAULT_LIBC == LIBC_GLIBC
+diff --git a/gcc/config/arm/linux-eabi.h b/gcc/config/arm/linux-eabi.h
+index 66ec0ea3980..e4ade2e2ab0 100644
+--- a/gcc/config/arm/linux-eabi.h
++++ b/gcc/config/arm/linux-eabi.h
+@@ -65,8 +65,8 @@
+ GLIBC_DYNAMIC_LINKER_DEFAULT and TARGET_DEFAULT_FLOAT_ABI. */
+
+ #undef GLIBC_DYNAMIC_LINKER
+-#define GLIBC_DYNAMIC_LINKER_SOFT_FLOAT "/lib/ld-linux.so.3"
+-#define GLIBC_DYNAMIC_LINKER_HARD_FLOAT "/lib/ld-linux-armhf.so.3"
++#define GLIBC_DYNAMIC_LINKER_SOFT_FLOAT SYSTEMLIBS_DIR "ld-linux.so.3"
++#define GLIBC_DYNAMIC_LINKER_HARD_FLOAT SYSTEMLIBS_DIR "ld-linux-armhf.so.3"
+ #define GLIBC_DYNAMIC_LINKER_DEFAULT GLIBC_DYNAMIC_LINKER_SOFT_FLOAT
+
+ #define GLIBC_DYNAMIC_LINKER \
+diff --git a/gcc/config/arm/linux-elf.h b/gcc/config/arm/linux-elf.h
+index 9a360defd21..98f6e960b64 100644
+--- a/gcc/config/arm/linux-elf.h
++++ b/gcc/config/arm/linux-elf.h
+@@ -60,7 +60,7 @@
+
+ #define LIBGCC_SPEC "%{mfloat-abi=soft*:-lfloat} -lgcc"
+
+-#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2"
++#define GLIBC_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-linux.so.2"
+
+ #define LINUX_TARGET_LINK_SPEC "%{h*} \
+ %{static:-Bstatic} \
+diff --git a/gcc/config/i386/linux.h b/gcc/config/i386/linux.h
+index 9a6e2d99896..31efbb73016 100644
+--- a/gcc/config/i386/linux.h
++++ b/gcc/config/i386/linux.h
+@@ -20,7 +20,7 @@ along with GCC; see the file COPYING3. If not see
+ <http://www.gnu.org/licenses/>. */
+
+ #define GNU_USER_LINK_EMULATION "elf_i386"
+-#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2"
++#define GLIBC_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-linux.so.2"
+
+ #undef MUSL_DYNAMIC_LINKER
+ #define MUSL_DYNAMIC_LINKER "/lib/ld-musl-i386.so.1"
+diff --git a/gcc/config/i386/linux64.h b/gcc/config/i386/linux64.h
+index c08221c4210..dbb474d792b 100644
+--- a/gcc/config/i386/linux64.h
++++ b/gcc/config/i386/linux64.h
+@@ -27,9 +27,9 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
+ #define GNU_USER_LINK_EMULATION64 "elf_x86_64"
+ #define GNU_USER_LINK_EMULATIONX32 "elf32_x86_64"
+
+-#define GLIBC_DYNAMIC_LINKER32 "/lib/ld-linux.so.2"
+-#define GLIBC_DYNAMIC_LINKER64 "/lib64/ld-linux-x86-64.so.2"
+-#define GLIBC_DYNAMIC_LINKERX32 "/libx32/ld-linux-x32.so.2"
++#define GLIBC_DYNAMIC_LINKER32 SYSTEMLIBS_DIR "ld-linux.so.2"
++#define GLIBC_DYNAMIC_LINKER64 SYSTEMLIBS_DIR "ld-linux-x86-64.so.2"
++#define GLIBC_DYNAMIC_LINKERX32 SYSTEMLIBS_DIR "ld-linux-x32.so.2"
+
+ #undef MUSL_DYNAMIC_LINKER32
+ #define MUSL_DYNAMIC_LINKER32 "/lib/ld-musl-i386.so.1"
+diff --git a/gcc/config/linux.h b/gcc/config/linux.h
+index c3c4a219e67..4b05d8e93d1 100644
+--- a/gcc/config/linux.h
++++ b/gcc/config/linux.h
+@@ -94,10 +94,10 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
+ GLIBC_DYNAMIC_LINKER must be defined for each target using them, or
+ GLIBC_DYNAMIC_LINKER32 and GLIBC_DYNAMIC_LINKER64 for targets
+ supporting both 32-bit and 64-bit compilation. */
+-#define UCLIBC_DYNAMIC_LINKER "/lib/ld-uClibc.so.0"
+-#define UCLIBC_DYNAMIC_LINKER32 "/lib/ld-uClibc.so.0"
+-#define UCLIBC_DYNAMIC_LINKER64 "/lib/ld64-uClibc.so.0"
+-#define UCLIBC_DYNAMIC_LINKERX32 "/lib/ldx32-uClibc.so.0"
++#define UCLIBC_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-uClibc.so.0"
++#define UCLIBC_DYNAMIC_LINKER32 SYSTEMLIBS_DIR "ld-uClibc.so.0"
++#define UCLIBC_DYNAMIC_LINKER64 SYSTEMLIBS_DIR "ld64-uClibc.so.0"
++#define UCLIBC_DYNAMIC_LINKERX32 SYSTEMLIBS_DIR "ldx32-uClibc.so.0"
+ #define BIONIC_DYNAMIC_LINKER "/system/bin/linker"
+ #define BIONIC_DYNAMIC_LINKER32 "/system/bin/linker"
+ #define BIONIC_DYNAMIC_LINKER64 "/system/bin/linker64"
+diff --git a/gcc/config/mips/linux.h b/gcc/config/mips/linux.h
+index 6f79ac9c01a..25de96f9561 100644
+--- a/gcc/config/mips/linux.h
++++ b/gcc/config/mips/linux.h
+@@ -22,20 +22,20 @@ along with GCC; see the file COPYING3. If not see
+ #define GNU_USER_LINK_EMULATIONN32 "elf32%{EB:b}%{EL:l}tsmipn32"
+
+ #define GLIBC_DYNAMIC_LINKER32 \
+- "%{mnan=2008:/lib/ld-linux-mipsn8.so.1;:/lib/ld.so.1}"
++ "%{mnan=2008:" SYSTEMLIBS_DIR "ld-linux-mipsn8.so.1;:" SYSTEMLIBS_DIR "ld.so.1}"
+ #define GLIBC_DYNAMIC_LINKER64 \
+- "%{mnan=2008:/lib64/ld-linux-mipsn8.so.1;:/lib64/ld.so.1}"
++ "%{mnan=2008:" SYSTEMLIBS_DIR "ld-linux-mipsn8.so.1;:" SYSTEMLIBS_DIR "ld.so.1}"
+ #define GLIBC_DYNAMIC_LINKERN32 \
+- "%{mnan=2008:/lib32/ld-linux-mipsn8.so.1;:/lib32/ld.so.1}"
++ "%{mnan=2008:" SYSTEMLIBS_DIR "ld-linux-mipsn8.so.1;:" SYSTEMLIBS_DIR "ld.so.1}"
+
+ #undef UCLIBC_DYNAMIC_LINKER32
+ #define UCLIBC_DYNAMIC_LINKER32 \
+- "%{mnan=2008:/lib/ld-uClibc-mipsn8.so.0;:/lib/ld-uClibc.so.0}"
++ "%{mnan=2008:" SYSTEMLIBS_DIR "ld-uClibc-mipsn8.so.0;:" SYSTEMLIBS_DIR "ld-uClibc.so.0}"
+ #undef UCLIBC_DYNAMIC_LINKER64
+ #define UCLIBC_DYNAMIC_LINKER64 \
+- "%{mnan=2008:/lib/ld64-uClibc-mipsn8.so.0;:/lib/ld64-uClibc.so.0}"
++ "%{mnan=2008:" SYSTEMLIBS_DIR "ld64-uClibc-mipsn8.so.0;:" SYSTEMLIBS_DIR "ld64-uClibc.so.0}"
+ #define UCLIBC_DYNAMIC_LINKERN32 \
+- "%{mnan=2008:/lib32/ld-uClibc-mipsn8.so.0;:/lib32/ld-uClibc.so.0}"
++ "%{mnan=2008:" SYSTEMLIBS_DIR "ld-uClibc-mipsn8.so.0;:" SYSTEMLIBS_DIR "ld-uClibc.so.0}"
+
+ #undef MUSL_DYNAMIC_LINKER32
+ #define MUSL_DYNAMIC_LINKER32 \
+diff --git a/gcc/config/rs6000/linux64.h b/gcc/config/rs6000/linux64.h
+index bcc540b5ff2..982ca274621 100644
+--- a/gcc/config/rs6000/linux64.h
++++ b/gcc/config/rs6000/linux64.h
+@@ -428,24 +428,19 @@ extern int dot_symbols;
+ #undef LINK_OS_DEFAULT_SPEC
+ #define LINK_OS_DEFAULT_SPEC "%(link_os_linux)"
+
+-#define GLIBC_DYNAMIC_LINKER32 "%(dynamic_linker_prefix)/lib/ld.so.1"
+-
++#define GLIBC_DYNAMIC_LINKER32 SYSTEMLIBS_DIR "ld.so.1"
+ #ifdef LINUX64_DEFAULT_ABI_ELFv2
+-#define GLIBC_DYNAMIC_LINKER64 \
+-"%{mabi=elfv1:%(dynamic_linker_prefix)/lib64/ld64.so.1;" \
+-":%(dynamic_linker_prefix)/lib64/ld64.so.2}"
++#define GLIBC_DYNAMIC_LINKER64 "%{mabi=elfv1:" SYSTEMLIBS_DIR "ld64.so.1;:" SYSTEMLIBS_DIR "ld64.so.2}"
+ #else
+-#define GLIBC_DYNAMIC_LINKER64 \
+-"%{mabi=elfv2:%(dynamic_linker_prefix)/lib64/ld64.so.2;" \
+-":%(dynamic_linker_prefix)/lib64/ld64.so.1}"
++#define GLIBC_DYNAMIC_LINKER64 "%{mabi=elfv2:" SYSTEMLIBS_DIR "ld64.so.2;:" SYSTEMLIBS_DIR "ld64.so.1}"
+ #endif
+
+ #undef MUSL_DYNAMIC_LINKER32
+ #define MUSL_DYNAMIC_LINKER32 \
+- "/lib/ld-musl-powerpc" MUSL_DYNAMIC_LINKER_E "%{msoft-float:-sf}.so.1"
++ SYSTEMLIBS_DIR "ld-musl-powerpc" MUSL_DYNAMIC_LINKER_E "%{msoft-float:-sf}.so.1"
+ #undef MUSL_DYNAMIC_LINKER64
+ #define MUSL_DYNAMIC_LINKER64 \
+- "/lib/ld-musl-powerpc64" MUSL_DYNAMIC_LINKER_E "%{msoft-float:-sf}.so.1"
++ SYSTEMLIBS_DIR "ld-musl-powerpc64" MUSL_DYNAMIC_LINKER_E "%{msoft-float:-sf}.so.1"
+
+ #undef DEFAULT_ASM_ENDIAN
+ #if (TARGET_DEFAULT & MASK_LITTLE_ENDIAN)
+diff --git a/gcc/config/sh/linux.h b/gcc/config/sh/linux.h
+index c9897b7aca5..82f275319cc 100644
+--- a/gcc/config/sh/linux.h
++++ b/gcc/config/sh/linux.h
+@@ -64,7 +64,7 @@ along with GCC; see the file COPYING3. If not see
+ "/lib/ld-musl-sh" MUSL_DYNAMIC_LINKER_E MUSL_DYNAMIC_LINKER_FP \
+ "%{mfdpic:-fdpic}.so.1"
+
+-#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2"
++#define GLIBC_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-linux.so.2"
+
+ #undef SUBTARGET_LINK_EMUL_SUFFIX
+ #define SUBTARGET_LINK_EMUL_SUFFIX "%{mfdpic:_fd;:_linux}"
+diff --git a/gcc/config/sparc/linux.h b/gcc/config/sparc/linux.h
+index 2db9ea2172e..1979cfff5d3 100644
+--- a/gcc/config/sparc/linux.h
++++ b/gcc/config/sparc/linux.h
+@@ -83,7 +83,7 @@ extern const char *host_detect_local_cpu (int argc, const char **argv);
+ When the -shared link option is used a final link is not being
+ done. */
+
+-#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2"
++#define GLIBC_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-linux.so.2"
+
+ #undef LINK_SPEC
+ #define LINK_SPEC "-m elf32_sparc %{shared:-shared} \
+diff --git a/gcc/config/sparc/linux64.h b/gcc/config/sparc/linux64.h
+index 21e13001951..d39c38a531f 100644
+--- a/gcc/config/sparc/linux64.h
++++ b/gcc/config/sparc/linux64.h
+@@ -84,8 +84,8 @@ along with GCC; see the file COPYING3. If not see
+ When the -shared link option is used a final link is not being
+ done. */
+
+-#define GLIBC_DYNAMIC_LINKER32 "/lib/ld-linux.so.2"
+-#define GLIBC_DYNAMIC_LINKER64 "/lib64/ld-linux.so.2"
++#define GLIBC_DYNAMIC_LINKER32 SYSTEMLIBS_DIR "ld-linux.so.2"
++#define GLIBC_DYNAMIC_LINKER64 SYSTEMLIBS_DIR "ld-linux.so.2"
+
+ #ifdef SPARC_BI_ARCH
+
+--
+2.20.1
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.1/0013-gcc-Fix-argument-list-too-long-error.patch b/poky/meta/recipes-devtools/gcc/gcc-9.1/0013-gcc-Fix-argument-list-too-long-error.patch
new file mode 100644
index 0000000..f853ff9
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-9.1/0013-gcc-Fix-argument-list-too-long-error.patch
@@ -0,0 +1,40 @@
+From d8a24eca2d7a222d4910c8a508d75d0d1418e201 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 29 Mar 2013 09:26:37 +0400
+Subject: [PATCH 13/37] gcc: Fix argument list too long error.
+
+There would be an "Argument list too long" error when the
+build directory is longer than 200, this is caused by:
+
+headers=`echo $(PLUGIN_HEADERS) | tr ' ' '\012' | sort -u`
+
+The PLUGIN_HEADERS is too long before sort, so the "echo" can't handle
+it, use the $(sort list) of GNU make which can handle the too long list
+would fix the problem, the header would be short enough after sorted.
+The "tr ' ' '\012'" was used for translating the space to "\n", the
+$(sort list) doesn't need this.
+
+Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+Upstream-Status: Pending
+---
+ gcc/Makefile.in | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/gcc/Makefile.in b/gcc/Makefile.in
+index 3ccff1614bb..88b1aec732b 100644
+--- a/gcc/Makefile.in
++++ b/gcc/Makefile.in
+@@ -3538,7 +3538,7 @@ install-plugin: installdirs lang.install-plugin s-header-vars install-gengtype
+ # We keep the directory structure for files in config or c-family and .def
+ # files. All other files are flattened to a single directory.
+ $(mkinstalldirs) $(DESTDIR)$(plugin_includedir)
+- headers=`echo $(PLUGIN_HEADERS) $$(cd $(srcdir); echo *.h *.def) | tr ' ' '\012' | sort -u`; \
++ headers="$(sort $(PLUGIN_HEADERS) $$(cd $(srcdir); echo *.h *.def))"; \
+ srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`; \
+ for file in $$headers; do \
+ if [ -f $$file ] ; then \
+--
+2.20.1
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.1/0014-Disable-sdt.patch b/poky/meta/recipes-devtools/gcc/gcc-9.1/0014-Disable-sdt.patch
new file mode 100644
index 0000000..945cf8f
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-9.1/0014-Disable-sdt.patch
@@ -0,0 +1,113 @@
+From d5e52580314ef6056ca701fcc030c7c884cb1d7f Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 29 Mar 2013 09:28:10 +0400
+Subject: [PATCH 14/37] Disable sdt.
+
+We don't list dtrace in DEPENDS so we shouldn't be depending on this header.
+It may or may not exist from preivous builds though. To be determinstic, disable
+sdt.h usage always. This avoids build failures if the header is removed after configure
+but before libgcc is compiled for example.
+
+RP 2012/8/7
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+Disable sdt for libstdc++-v3.
+
+Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
+
+Upstream-Status: Inappropriate [hack]
+---
+ gcc/configure | 12 ++++++------
+ gcc/configure.ac | 18 +++++++++---------
+ libstdc++-v3/configure | 6 +++---
+ libstdc++-v3/configure.ac | 2 +-
+ 4 files changed, 19 insertions(+), 19 deletions(-)
+
+diff --git a/gcc/configure b/gcc/configure
+index 7acc7e487b0..6a87ab693ea 100755
+--- a/gcc/configure
++++ b/gcc/configure
+@@ -29292,12 +29292,12 @@ fi
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking sys/sdt.h in the target C library" >&5
+ $as_echo_n "checking sys/sdt.h in the target C library... " >&6; }
+ have_sys_sdt_h=no
+-if test -f $target_header_dir/sys/sdt.h; then
+- have_sys_sdt_h=yes
+-
+-$as_echo "#define HAVE_SYS_SDT_H 1" >>confdefs.h
+-
+-fi
++#if test -f $target_header_dir/sys/sdt.h; then
++# have_sys_sdt_h=yes
++#
++#$as_echo "#define HAVE_SYS_SDT_H 1" >>confdefs.h
++#
++#fi
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $have_sys_sdt_h" >&5
+ $as_echo "$have_sys_sdt_h" >&6; }
+
+diff --git a/gcc/configure.ac b/gcc/configure.ac
+index f5d5e5c16a8..a50765171be 100644
+--- a/gcc/configure.ac
++++ b/gcc/configure.ac
+@@ -5985,15 +5985,15 @@ fi
+ AC_SUBST([enable_default_ssp])
+
+ # Test for <sys/sdt.h> on the target.
+-GCC_TARGET_TEMPLATE([HAVE_SYS_SDT_H])
+-AC_MSG_CHECKING(sys/sdt.h in the target C library)
+-have_sys_sdt_h=no
+-if test -f $target_header_dir/sys/sdt.h; then
+- have_sys_sdt_h=yes
+- AC_DEFINE(HAVE_SYS_SDT_H, 1,
+- [Define if your target C library provides sys/sdt.h])
+-fi
+-AC_MSG_RESULT($have_sys_sdt_h)
++#GCC_TARGET_TEMPLATE([HAVE_SYS_SDT_H])
++#AC_MSG_CHECKING(sys/sdt.h in the target C library)
++#have_sys_sdt_h=no
++#if test -f $target_header_dir/sys/sdt.h; then
++# have_sys_sdt_h=yes
++# AC_DEFINE(HAVE_SYS_SDT_H, 1,
++# [Define if your target C library provides sys/sdt.h])
++#fi
++#AC_MSG_RESULT($have_sys_sdt_h)
+
+ # Check if TFmode long double should be used by default or not.
+ # Some glibc targets used DFmode long double, but with glibc 2.4
+diff --git a/libstdc++-v3/configure b/libstdc++-v3/configure
+index 15848e364ab..8d3da1cc526 100755
+--- a/libstdc++-v3/configure
++++ b/libstdc++-v3/configure
+@@ -22084,11 +22084,11 @@ ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
+- if test $glibcxx_cv_sys_sdt_h = yes; then
++# if test $glibcxx_cv_sys_sdt_h = yes; then
+
+-$as_echo "#define HAVE_SYS_SDT_H 1" >>confdefs.h
++#$as_echo "#define HAVE_SYS_SDT_H 1" >>confdefs.h
+
+- fi
++# fi
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $glibcxx_cv_sys_sdt_h" >&5
+ $as_echo "$glibcxx_cv_sys_sdt_h" >&6; }
+
+diff --git a/libstdc++-v3/configure.ac b/libstdc++-v3/configure.ac
+index ad5b4117cfd..2341645ba6f 100644
+--- a/libstdc++-v3/configure.ac
++++ b/libstdc++-v3/configure.ac
+@@ -230,7 +230,7 @@ GLIBCXX_CHECK_SC_NPROCESSORS_ONLN
+ GLIBCXX_CHECK_SC_NPROC_ONLN
+ GLIBCXX_CHECK_PTHREADS_NUM_PROCESSORS_NP
+ GLIBCXX_CHECK_SYSCTL_HW_NCPU
+-GLIBCXX_CHECK_SDT_H
++#GLIBCXX_CHECK_SDT_H
+
+ # Check for available headers.
+ AC_CHECK_HEADERS([endian.h execinfo.h float.h fp.h ieeefp.h inttypes.h \
+--
+2.20.1
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.1/0015-libtool.patch b/poky/meta/recipes-devtools/gcc/gcc-9.1/0015-libtool.patch
new file mode 100644
index 0000000..764460b
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-9.1/0015-libtool.patch
@@ -0,0 +1,42 @@
+From d7c605d92094c75dc2717d9dd830e525b2c8b0ff Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 29 Mar 2013 09:29:11 +0400
+Subject: [PATCH 15/37] libtool
+
+libstdc++ from gcc-runtime gets created with -rpath=/usr/lib/../lib for qemux86-64
+when running on am x86_64 build host.
+
+This patch stops this speading to libdir in the libstdc++.la file within libtool.
+Arguably, it shouldn't be passing this into libtool in the first place but
+for now this resolves the nastiest problems this causes.
+
+func_normal_abspath would resolve an empty path to `pwd` so we need
+to filter the zero case.
+
+RP 2012/8/24
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+Upstream-Status: Pending
+---
+ ltmain.sh | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/ltmain.sh b/ltmain.sh
+index 79f9ba89af5..8e222f7c16b 100644
+--- a/ltmain.sh
++++ b/ltmain.sh
+@@ -6359,6 +6359,10 @@ func_mode_link ()
+ func_warning "ignoring multiple \`-rpath's for a libtool library"
+
+ install_libdir="$1"
++ if test -n "$install_libdir"; then
++ func_normal_abspath "$install_libdir"
++ install_libdir=$func_normal_abspath_result
++ fi
+
+ oldlibs=
+ if test -z "$rpath"; then
+--
+2.20.1
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.1/0016-gcc-armv4-pass-fix-v4bx-to-linker-to-support-EABI.patch b/poky/meta/recipes-devtools/gcc/gcc-9.1/0016-gcc-armv4-pass-fix-v4bx-to-linker-to-support-EABI.patch
new file mode 100644
index 0000000..398074b
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-9.1/0016-gcc-armv4-pass-fix-v4bx-to-linker-to-support-EABI.patch
@@ -0,0 +1,43 @@
+From c3addf8bc41190d46d98eb7690ff4583eebd5943 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 29 Mar 2013 09:30:32 +0400
+Subject: [PATCH 16/37] gcc: armv4: pass fix-v4bx to linker to support EABI.
+
+The LINK_SPEC for linux gets overwritten by linux-eabi.h which
+means the value of TARGET_FIX_V4BX_SPEC gets lost and as a result
+the option is not passed to linker when chosing march=armv4
+This patch redefines this in linux-eabi.h and reinserts it
+for eabi defaulting toolchains.
+
+We might want to send it upstream.
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+Upstream-Status: Pending
+---
+ gcc/config/arm/linux-eabi.h | 6 +++++-
+ 1 file changed, 5 insertions(+), 1 deletion(-)
+
+diff --git a/gcc/config/arm/linux-eabi.h b/gcc/config/arm/linux-eabi.h
+index e4ade2e2ab0..108863f69d2 100644
+--- a/gcc/config/arm/linux-eabi.h
++++ b/gcc/config/arm/linux-eabi.h
+@@ -91,10 +91,14 @@
+ #define MUSL_DYNAMIC_LINKER \
+ "/lib/ld-musl-arm" MUSL_DYNAMIC_LINKER_E "%{mfloat-abi=hard:hf}.so.1"
+
++/* For armv4 we pass --fix-v4bx to linker to support EABI */
++#undef TARGET_FIX_V4BX_SPEC
++#define TARGET_FIX_V4BX_SPEC "%{mcpu=arm8|mcpu=arm810|mcpu=strongarm*|march=armv4: --fix-v4bx}"
++
+ /* At this point, bpabi.h will have clobbered LINK_SPEC. We want to
+ use the GNU/Linux version, not the generic BPABI version. */
+ #undef LINK_SPEC
+-#define LINK_SPEC EABI_LINK_SPEC \
++#define LINK_SPEC TARGET_FIX_V4BX_SPEC EABI_LINK_SPEC \
+ LINUX_OR_ANDROID_LD (LINUX_TARGET_LINK_SPEC, \
+ LINUX_TARGET_LINK_SPEC " " ANDROID_LINK_SPEC)
+
+--
+2.20.1
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.1/0017-Use-the-multilib-config-files-from-B-instead-of-usin.patch b/poky/meta/recipes-devtools/gcc/gcc-9.1/0017-Use-the-multilib-config-files-from-B-instead-of-usin.patch
new file mode 100644
index 0000000..7d5c94a
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-9.1/0017-Use-the-multilib-config-files-from-B-instead-of-usin.patch
@@ -0,0 +1,102 @@
+From e1071f4e749586fcb3edcacf43d4dd44081d16ec Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 29 Mar 2013 09:33:04 +0400
+Subject: [PATCH 17/37] Use the multilib config files from ${B} instead of
+ using the ones from ${S}
+
+Use the multilib config files from ${B} instead of using the ones from ${S}
+so that the source can be shared between gcc-cross-initial,
+gcc-cross-intermediate, gcc-cross, gcc-runtime, and also the sdk build.
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+Signed-off-by: Constantin Musca <constantinx.musca@intel.com>
+
+Upstream-Status: Inappropriate [configuration]
+---
+ gcc/configure | 22 ++++++++++++++++++----
+ gcc/configure.ac | 22 ++++++++++++++++++----
+ 2 files changed, 36 insertions(+), 8 deletions(-)
+
+diff --git a/gcc/configure b/gcc/configure
+index 6a87ab693ea..2e822caf66d 100755
+--- a/gcc/configure
++++ b/gcc/configure
+@@ -12321,10 +12321,20 @@ done
+ tmake_file_=
+ for f in ${tmake_file}
+ do
+- if test -f ${srcdir}/config/$f
+- then
+- tmake_file_="${tmake_file_} \$(srcdir)/config/$f"
+- fi
++ case $f in
++ */t-linux64 )
++ if test -f ./config/$f
++ then
++ tmake_file_="${tmake_file_} ./config/$f"
++ fi
++ ;;
++ * )
++ if test -f ${srcdir}/config/$f
++ then
++ tmake_file_="${tmake_file_} \$(srcdir)/config/$f"
++ fi
++ ;;
++ esac
+ done
+ tmake_file="${tmake_file_}"
+
+@@ -12335,6 +12345,10 @@ tm_file_list="options.h"
+ tm_include_list="options.h insn-constants.h"
+ for f in $tm_file; do
+ case $f in
++ */linux64.h )
++ tm_file_list="${tm_file_list} ./config/$f"
++ tm_include_list="${tm_include_list} ./config/$f"
++ ;;
+ ./* )
+ f=`echo $f | sed 's/^..//'`
+ tm_file_list="${tm_file_list} $f"
+diff --git a/gcc/configure.ac b/gcc/configure.ac
+index a50765171be..70e7bac78c4 100644
+--- a/gcc/configure.ac
++++ b/gcc/configure.ac
+@@ -1948,10 +1948,20 @@ done
+ tmake_file_=
+ for f in ${tmake_file}
+ do
+- if test -f ${srcdir}/config/$f
+- then
+- tmake_file_="${tmake_file_} \$(srcdir)/config/$f"
+- fi
++ case $f in
++ */t-linux64 )
++ if test -f ./config/$f
++ then
++ tmake_file_="${tmake_file_} ./config/$f"
++ fi
++ ;;
++ * )
++ if test -f ${srcdir}/config/$f
++ then
++ tmake_file_="${tmake_file_} \$(srcdir)/config/$f"
++ fi
++ ;;
++ esac
+ done
+ tmake_file="${tmake_file_}"
+
+@@ -1962,6 +1972,10 @@ tm_file_list="options.h"
+ tm_include_list="options.h insn-constants.h"
+ for f in $tm_file; do
+ case $f in
++ */linux64.h )
++ tm_file_list="${tm_file_list} ./config/$f"
++ tm_include_list="${tm_include_list} ./config/$f"
++ ;;
+ ./* )
+ f=`echo $f | sed 's/^..//'`
+ tm_file_list="${tm_file_list} $f"
+--
+2.20.1
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.1/0018-Avoid-using-libdir-from-.la-which-usually-points-to-.patch b/poky/meta/recipes-devtools/gcc/gcc-9.1/0018-Avoid-using-libdir-from-.la-which-usually-points-to-.patch
new file mode 100644
index 0000000..596337b
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-9.1/0018-Avoid-using-libdir-from-.la-which-usually-points-to-.patch
@@ -0,0 +1,31 @@
+From 1ffbbb39c9848aa7a04da18fb79b1f0bd7731e00 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 20 Feb 2015 09:39:38 +0000
+Subject: [PATCH 18/37] Avoid using libdir from .la which usually points to a
+ host path
+
+Upstream-Status: Inappropriate [embedded specific]
+
+Signed-off-by: Jonathan Liu <net147@gmail.com>
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ ltmain.sh | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/ltmain.sh b/ltmain.sh
+index 8e222f7c16b..0a93b4e5c3b 100644
+--- a/ltmain.sh
++++ b/ltmain.sh
+@@ -5628,6 +5628,9 @@ func_mode_link ()
+ absdir="$abs_ladir"
+ libdir="$abs_ladir"
+ else
++ # Instead of using libdir from .la which usually points to a host path,
++ # use the path the .la is contained in.
++ libdir="$abs_ladir"
+ dir="$libdir"
+ absdir="$libdir"
+ fi
+--
+2.20.1
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.1/0019-export-CPP.patch b/poky/meta/recipes-devtools/gcc/gcc-9.1/0019-export-CPP.patch
new file mode 100644
index 0000000..50d17dd
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-9.1/0019-export-CPP.patch
@@ -0,0 +1,53 @@
+From 5ece023b88eaba16d8744f8f2ff72345ec3b7f92 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 20 Feb 2015 09:40:59 +0000
+Subject: [PATCH 19/37] export CPP
+
+The OE environment sets and exports CPP as being the target gcc. When
+building gcc-cross-canadian for a mingw targetted sdk, the following can be found
+in build.x86_64-pokysdk-mingw32.i586-poky-linux/build-x86_64-linux/libiberty/config.log:
+
+configure:3641: checking for _FILE_OFFSET_BITS value needed for large files
+configure:3666: gcc -c -isystem/media/build1/poky/build/tmp/sysroots/x86_64-linux/usr/include -O2 -pipe conftest.c >&5
+configure:3666: $? = 0
+configure:3698: result: no
+configure:3786: checking how to run the C preprocessor
+configure:3856: result: x86_64-pokysdk-mingw32-gcc -E --sysroot=/media/build1/poky/build/tmp/sysroots/x86_64-nativesdk-mingw32-pokysdk-mingw32
+configure:3876: x86_64-pokysdk-mingw32-gcc -E --sysroot=/media/build1/poky/build/tmp/sysroots/x86_64-nativesdk-mingw32-pokysdk-mingw32 conftest.c
+configure:3876: $? = 0
+
+Note this is a *build* target (in build-x86_64-linux) so it should be
+using the host "gcc", not x86_64-pokysdk-mingw32-gcc. Since the mingw32
+headers are very different, using the wrong cpp is a real problem. It is leaking
+into configure through the CPP variable. Ultimately this leads to build
+failures related to not being able to include a process.h file for pem-unix.c.
+
+The fix is to ensure we export a sane CPP value into the build
+environment when using build targets. We could define a CPP_FOR_BUILD value which may be
+the version which needs to be upstreamed but for now, this fix is good enough to
+avoid the problem.
+
+RP 22/08/2013
+
+Upstream-Status: Pending
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ Makefile.in | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/Makefile.in b/Makefile.in
+index 28539a45372..b21e0791f55 100644
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -149,6 +149,7 @@ BUILD_EXPORTS = \
+ AR="$(AR_FOR_BUILD)"; export AR; \
+ AS="$(AS_FOR_BUILD)"; export AS; \
+ CC="$(CC_FOR_BUILD)"; export CC; \
++ CPP="$(CC_FOR_BUILD) -E"; export CPP; \
+ CFLAGS="$(CFLAGS_FOR_BUILD)"; export CFLAGS; \
+ CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \
+ CXX="$(CXX_FOR_BUILD)"; export CXX; \
+--
+2.20.1
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.1/0020-Ensure-target-gcc-headers-can-be-included.patch b/poky/meta/recipes-devtools/gcc/gcc-9.1/0020-Ensure-target-gcc-headers-can-be-included.patch
new file mode 100644
index 0000000..f37c6f3
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-9.1/0020-Ensure-target-gcc-headers-can-be-included.patch
@@ -0,0 +1,98 @@
+From 89f7a8e5c55b31bff011cd7466d78cd84d1eb307 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 20 Feb 2015 10:25:11 +0000
+Subject: [PATCH 20/37] Ensure target gcc headers can be included
+
+There are a few headers installed as part of the OpenEmbedded
+gcc-runtime target (omp.h, ssp/*.h). Being installed from a recipe
+built for the target architecture, these are within the target
+sysroot and not cross/nativesdk; thus they weren't able to be
+found by gcc with the existing search paths. Add support for
+picking up these headers under the sysroot supplied on the gcc
+command line in order to resolve this.
+
+Upstream-Status: Pending
+
+Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ gcc/Makefile.in | 2 ++
+ gcc/cppdefault.c | 4 ++++
+ gcc/defaults.h | 9 +++++++++
+ gcc/gcc.c | 7 -------
+ 4 files changed, 15 insertions(+), 7 deletions(-)
+
+diff --git a/gcc/Makefile.in b/gcc/Makefile.in
+index 88b1aec732b..eb1dc304de2 100644
+--- a/gcc/Makefile.in
++++ b/gcc/Makefile.in
+@@ -618,6 +618,7 @@ libexecdir = @libexecdir@
+
+ # Directory in which the compiler finds libraries etc.
+ libsubdir = $(libdir)/gcc/$(real_target_noncanonical)/$(version)$(accel_dir_suffix)
++libsubdir_target = gcc/$(target_noncanonical)/$(version)
+ # Directory in which the compiler finds executables
+ libexecsubdir = $(libexecdir)/gcc/$(real_target_noncanonical)/$(version)$(accel_dir_suffix)
+ # Directory in which all plugin resources are installed
+@@ -2867,6 +2868,7 @@ CFLAGS-intl.o += -DLOCALEDIR=\"$(localedir)\"
+
+ PREPROCESSOR_DEFINES = \
+ -DGCC_INCLUDE_DIR=\"$(libsubdir)/include\" \
++ -DGCC_INCLUDE_SUBDIR_TARGET=\"$(libsubdir_target)/include\" \
+ -DFIXED_INCLUDE_DIR=\"$(libsubdir)/include-fixed\" \
+ -DGPLUSPLUS_INCLUDE_DIR=\"$(gcc_gxx_include_dir)\" \
+ -DGPLUSPLUS_INCLUDE_DIR_ADD_SYSROOT=$(gcc_gxx_include_dir_add_sysroot) \
+diff --git a/gcc/cppdefault.c b/gcc/cppdefault.c
+index c4796385643..980e2bd47a7 100644
+--- a/gcc/cppdefault.c
++++ b/gcc/cppdefault.c
+@@ -59,6 +59,10 @@ const struct default_include cpp_include_defaults[]
+ /* This is the dir for gcc's private headers. */
+ { GCC_INCLUDE_DIR, "GCC", 0, 0, 0, 0 },
+ #endif
++#ifdef GCC_INCLUDE_SUBDIR_TARGET
++ /* This is the dir for gcc's private headers under the specified sysroot. */
++ { STANDARD_STARTFILE_PREFIX_2 GCC_INCLUDE_SUBDIR_TARGET, "GCC", 0, 0, 1, 0 },
++#endif
+ #ifdef LOCAL_INCLUDE_DIR
+ /* /usr/local/include comes before the fixincluded header files. */
+ { LOCAL_INCLUDE_DIR, 0, 0, 1, 1, 2 },
+diff --git a/gcc/defaults.h b/gcc/defaults.h
+index b7534256119..41ca579b267 100644
+--- a/gcc/defaults.h
++++ b/gcc/defaults.h
+@@ -1459,4 +1459,13 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
+ #define DWARF_GNAT_ENCODINGS_DEFAULT DWARF_GNAT_ENCODINGS_GDB
+ #endif
+
++/* Default prefixes to attach to command names. */
++
++#ifndef STANDARD_STARTFILE_PREFIX_1
++#define STANDARD_STARTFILE_PREFIX_1 "/lib/"
++#endif
++#ifndef STANDARD_STARTFILE_PREFIX_2
++#define STANDARD_STARTFILE_PREFIX_2 "/usr/lib/"
++#endif
++
+ #endif /* ! GCC_DEFAULTS_H */
+diff --git a/gcc/gcc.c b/gcc/gcc.c
+index cef26c454d7..14b1a6e8c44 100644
+--- a/gcc/gcc.c
++++ b/gcc/gcc.c
+@@ -1470,13 +1470,6 @@ static const char *gcc_libexec_prefix;
+
+ /* Default prefixes to attach to command names. */
+
+-#ifndef STANDARD_STARTFILE_PREFIX_1
+-#define STANDARD_STARTFILE_PREFIX_1 "/lib/"
+-#endif
+-#ifndef STANDARD_STARTFILE_PREFIX_2
+-#define STANDARD_STARTFILE_PREFIX_2 "/usr/lib/"
+-#endif
+-
+ #ifdef CROSS_DIRECTORY_STRUCTURE /* Don't use these prefixes for a cross compiler. */
+ #undef MD_EXEC_PREFIX
+ #undef MD_STARTFILE_PREFIX
+--
+2.20.1
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.1/0021-gcc-4.8-won-t-build-with-disable-dependency-tracking.patch b/poky/meta/recipes-devtools/gcc/gcc-9.1/0021-gcc-4.8-won-t-build-with-disable-dependency-tracking.patch
new file mode 100644
index 0000000..ef98572
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-9.1/0021-gcc-4.8-won-t-build-with-disable-dependency-tracking.patch
@@ -0,0 +1,54 @@
+From 2a1895aca3d9020d0d5ac74975221727384ef8a6 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 20 Feb 2015 11:17:19 +0000
+Subject: [PATCH 21/37] gcc 4.8+ won't build with --disable-dependency-tracking
+
+since the *.Ppo files don't get created unless --enable-dependency-tracking is true.
+
+This patch ensures we only use those compiler options when its enabled.
+
+Upstream-Status: Submitted
+
+(Problem was already reported upstream, attached this patch there
+http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55930)
+
+RP
+2012/09/22
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ libatomic/Makefile.am | 3 ++-
+ libatomic/Makefile.in | 3 ++-
+ 2 files changed, 4 insertions(+), 2 deletions(-)
+
+diff --git a/libatomic/Makefile.am b/libatomic/Makefile.am
+index c1b7c73934a..ef43d62c07a 100644
+--- a/libatomic/Makefile.am
++++ b/libatomic/Makefile.am
+@@ -101,7 +101,8 @@ PAT_S = $(word 3,$(PAT_SPLIT))
+ IFUNC_DEF = -DIFUNC_ALT=$(PAT_S)
+ IFUNC_OPT = $(word $(PAT_S),$(IFUNC_OPTIONS))
+
+-M_DEPS = -MT $@ -MD -MP -MF $(DEPDIR)/$(@F).Ppo
++@AMDEP_TRUE@M_DEPS = -MT $@ -MD -MP -MF $(DEPDIR)/$(@F).Ppo
++@AMDEP_FALSE@M_DEPS =
+ M_SIZE = -DN=$(PAT_N)
+ M_IFUNC = $(if $(PAT_S),$(IFUNC_DEF) $(IFUNC_OPT))
+ M_FILE = $(PAT_BASE)_n.c
+diff --git a/libatomic/Makefile.in b/libatomic/Makefile.in
+index 29324e3e0ac..d5cdb4259ef 100644
+--- a/libatomic/Makefile.in
++++ b/libatomic/Makefile.in
+@@ -414,7 +414,8 @@ PAT_N = $(word 2,$(PAT_SPLIT))
+ PAT_S = $(word 3,$(PAT_SPLIT))
+ IFUNC_DEF = -DIFUNC_ALT=$(PAT_S)
+ IFUNC_OPT = $(word $(PAT_S),$(IFUNC_OPTIONS))
+-M_DEPS = -MT $@ -MD -MP -MF $(DEPDIR)/$(@F).Ppo
++@AMDEP_TRUE@M_DEPS = -MT $@ -MD -MP -MF $(DEPDIR)/$(@F).Ppo
++@AMDEP_FALSE@M_DEPS =
+ M_SIZE = -DN=$(PAT_N)
+ M_IFUNC = $(if $(PAT_S),$(IFUNC_DEF) $(IFUNC_OPT))
+ M_FILE = $(PAT_BASE)_n.c
+--
+2.20.1
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.1/0022-Don-t-search-host-directory-during-relink-if-inst_pr.patch b/poky/meta/recipes-devtools/gcc/gcc-9.1/0022-Don-t-search-host-directory-during-relink-if-inst_pr.patch
new file mode 100644
index 0000000..8316c4d
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-9.1/0022-Don-t-search-host-directory-during-relink-if-inst_pr.patch
@@ -0,0 +1,38 @@
+From 4b9f8cfbfb48a1a9781b7c3a9b867732ef37b7c5 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Tue, 3 Mar 2015 08:21:19 +0000
+Subject: [PATCH 22/37] Don't search host directory during "relink" if
+ $inst_prefix is provided
+
+http://lists.gnu.org/archive/html/libtool-patches/2011-01/msg00026.html
+
+Upstream-Status: Submitted
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ ltmain.sh | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/ltmain.sh b/ltmain.sh
+index 0a93b4e5c3b..6de6ed2f9a0 100644
+--- a/ltmain.sh
++++ b/ltmain.sh
+@@ -6004,12 +6004,13 @@ func_mode_link ()
+ fi
+ else
+ # We cannot seem to hardcode it, guess we'll fake it.
++ # Default if $libdir is not relative to the prefix:
+ add_dir="-L$libdir"
+- # Try looking first in the location we're being installed to.
++
+ if test -n "$inst_prefix_dir"; then
+ case $libdir in
+ [\\/]*)
+- add_dir="$add_dir -L$inst_prefix_dir$libdir"
++ add_dir="-L$inst_prefix_dir$libdir"
+ ;;
+ esac
+ fi
+--
+2.20.1
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.1/0023-Use-SYSTEMLIBS_DIR-replacement-instead-of-hardcoding.patch b/poky/meta/recipes-devtools/gcc/gcc-9.1/0023-Use-SYSTEMLIBS_DIR-replacement-instead-of-hardcoding.patch
new file mode 100644
index 0000000..fdea599
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-9.1/0023-Use-SYSTEMLIBS_DIR-replacement-instead-of-hardcoding.patch
@@ -0,0 +1,29 @@
+From 3a554b321250f6ddf1277e5559890ee977e78cb0 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Tue, 28 Apr 2015 23:15:27 -0700
+Subject: [PATCH 23/37] Use SYSTEMLIBS_DIR replacement instead of hardcoding
+ base_libdir
+
+Upstream-Status: Pending
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ gcc/config/aarch64/aarch64-linux.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/gcc/config/aarch64/aarch64-linux.h b/gcc/config/aarch64/aarch64-linux.h
+index 9d0292d64f2..51661995fc7 100644
+--- a/gcc/config/aarch64/aarch64-linux.h
++++ b/gcc/config/aarch64/aarch64-linux.h
+@@ -21,7 +21,7 @@
+ #ifndef GCC_AARCH64_LINUX_H
+ #define GCC_AARCH64_LINUX_H
+
+-#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux-aarch64%{mbig-endian:_be}%{mabi=ilp32:_ilp32}.so.1"
++#define GLIBC_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-linux-aarch64%{mbig-endian:_be}%{mabi=ilp32:_ilp32}.so.1"
+
+ #undef MUSL_DYNAMIC_LINKER
+ #define MUSL_DYNAMIC_LINKER "/lib/ld-musl-aarch64%{mbig-endian:_be}%{mabi=ilp32:_ilp32}.so.1"
+--
+2.20.1
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.1/0024-aarch64-Add-support-for-musl-ldso.patch b/poky/meta/recipes-devtools/gcc/gcc-9.1/0024-aarch64-Add-support-for-musl-ldso.patch
new file mode 100644
index 0000000..f53c994
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-9.1/0024-aarch64-Add-support-for-musl-ldso.patch
@@ -0,0 +1,28 @@
+From b7001034f35e7e5090fa95cb9a622469300cd45d Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Tue, 28 Apr 2015 23:18:39 -0700
+Subject: [PATCH 24/37] aarch64: Add support for musl ldso
+
+Upstream-Status: Pending
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ gcc/config/aarch64/aarch64-linux.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/gcc/config/aarch64/aarch64-linux.h b/gcc/config/aarch64/aarch64-linux.h
+index 51661995fc7..db687f753f6 100644
+--- a/gcc/config/aarch64/aarch64-linux.h
++++ b/gcc/config/aarch64/aarch64-linux.h
+@@ -24,7 +24,7 @@
+ #define GLIBC_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-linux-aarch64%{mbig-endian:_be}%{mabi=ilp32:_ilp32}.so.1"
+
+ #undef MUSL_DYNAMIC_LINKER
+-#define MUSL_DYNAMIC_LINKER "/lib/ld-musl-aarch64%{mbig-endian:_be}%{mabi=ilp32:_ilp32}.so.1"
++#define MUSL_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-musl-aarch64%{mbig-endian:_be}%{mabi=ilp32:_ilp32}.so.1"
+
+ #undef ASAN_CC1_SPEC
+ #define ASAN_CC1_SPEC "%{%:sanitize(address):-funwind-tables}"
+--
+2.20.1
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.1/0025-libcc1-fix-libcc1-s-install-path-and-rpath.patch b/poky/meta/recipes-devtools/gcc/gcc-9.1/0025-libcc1-fix-libcc1-s-install-path-and-rpath.patch
new file mode 100644
index 0000000..7b80655
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-9.1/0025-libcc1-fix-libcc1-s-install-path-and-rpath.patch
@@ -0,0 +1,54 @@
+From 4d05ea7a12d1ba4515220c5c16f71ac650219db6 Mon Sep 17 00:00:00 2001
+From: Robert Yang <liezhi.yang@windriver.com>
+Date: Sun, 5 Jul 2015 20:25:18 -0700
+Subject: [PATCH 25/37] libcc1: fix libcc1's install path and rpath
+
+* Install libcc1.so and libcc1plugin.so into
+ $(libexecdir)/gcc/$(target_noncanonical)/$(gcc_version), as what we
+ had done to lto-plugin.
+* Fix bad RPATH iussue:
+ gcc-5.2.0: package gcc-plugins contains bad RPATH /patht/to/tmp/sysroots/qemux86-64/usr/lib64/../lib64 in file
+ /path/to/gcc/5.2.0-r0/packages-split/gcc-plugins/usr/lib64/gcc/x86_64-poky-linux/5.2.0/plugin/libcc1plugin.so.0.0.0
+ [rpaths]
+
+Upstream-Status: Inappropriate [OE configuration]
+
+Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
+---
+ libcc1/Makefile.am | 4 ++--
+ libcc1/Makefile.in | 4 ++--
+ 2 files changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/libcc1/Makefile.am b/libcc1/Makefile.am
+index 72c6aead475..42a87740b31 100644
+--- a/libcc1/Makefile.am
++++ b/libcc1/Makefile.am
+@@ -37,8 +37,8 @@ libiberty = $(if $(wildcard $(libiberty_noasan)),$(Wc)$(libiberty_noasan), \
+ $(Wc)$(libiberty_normal)))
+ libiberty_dep = $(patsubst $(Wc)%,%,$(libiberty))
+
+-plugindir = $(libdir)/gcc/$(target_noncanonical)/$(gcc_version)/plugin
+-cc1libdir = $(libdir)/$(libsuffix)
++cc1libdir = $(libexecdir)/gcc/$(target_noncanonical)/$(gcc_version)
++plugindir = $(cc1libdir)
+
+ if ENABLE_PLUGIN
+ plugin_LTLIBRARIES = libcc1plugin.la libcp1plugin.la
+diff --git a/libcc1/Makefile.in b/libcc1/Makefile.in
+index 7104b649026..2103c477468 100644
+--- a/libcc1/Makefile.in
++++ b/libcc1/Makefile.in
+@@ -393,8 +393,8 @@ libiberty = $(if $(wildcard $(libiberty_noasan)),$(Wc)$(libiberty_noasan), \
+ $(Wc)$(libiberty_normal)))
+
+ libiberty_dep = $(patsubst $(Wc)%,%,$(libiberty))
+-plugindir = $(libdir)/gcc/$(target_noncanonical)/$(gcc_version)/plugin
+-cc1libdir = $(libdir)/$(libsuffix)
++cc1libdir = $(libexecdir)/gcc/$(target_noncanonical)/$(gcc_version)
++plugindir = $(cc1libdir)
+ @ENABLE_PLUGIN_TRUE@plugin_LTLIBRARIES = libcc1plugin.la libcp1plugin.la
+ @ENABLE_PLUGIN_TRUE@cc1lib_LTLIBRARIES = libcc1.la
+ shared_source = callbacks.cc callbacks.hh connection.cc connection.hh \
+--
+2.20.1
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-9.1/0026-handle-sysroot-support-for-nativesdk-gcc.patch b/poky/meta/recipes-devtools/gcc/gcc-9.1/0026-handle-sysroot-support-for-nativesdk-gcc.patch
new file mode 100644
index 0000000..7062c03
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-9.1/0026-handle-sysroot-support-for-nativesdk-gcc.patch
@@ -0,0 +1,213 @@
+From fe175ac845f1ac6965ede0240e9b763ae520614d Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Mon, 7 Dec 2015 23:39:54 +0000
+Subject: [PATCH 26/37] handle sysroot support for nativesdk-gcc
+
+Being able to build a nativesdk gcc is useful, particularly in cases
+where the host compiler may be of an incompatible version (or a 32
+bit compiler is needed).
+
+Sadly, building nativesdk-gcc is not straight forward. We install
+nativesdk-gcc into a relocatable location and this means that its
+library locations can change. "Normal" sysroot support doesn't help
+in this case since the values of paths like "libdir" change, not just
+base root directory of the system.
+
+In order to handle this we do two things:<