summaryrefslogtreecommitdiff
path: root/import-layers/meta-openembedded/meta-oe
diff options
context:
space:
mode:
authorBrad Bishop <bradleyb@fuzziesquirrel.com>2018-02-01 18:27:11 +0300
committerBrad Bishop <bradleyb@fuzziesquirrel.com>2018-03-13 05:51:39 +0300
commit6e60e8b2b2bab889379b380a28a167a0edd9d1d3 (patch)
treef12f54d5ba8e74e67e5fad3651a1e125bb8f4191 /import-layers/meta-openembedded/meta-oe
parent509842add85b53e13164c1569a1fd43d5b8d91c5 (diff)
downloadopenbmc-6e60e8b2b2bab889379b380a28a167a0edd9d1d3.tar.xz
Yocto 2.3
Move OpenBMC to Yocto 2.3(pyro). Tested: Built and verified Witherspoon and Palmetto images Change-Id: I50744030e771f4850afc2a93a10d3507e76d36bc Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com> Resolves: openbmc/openbmc#2461
Diffstat (limited to 'import-layers/meta-openembedded/meta-oe')
-rw-r--r--import-layers/meta-openembedded/meta-oe/README9
-rw-r--r--import-layers/meta-openembedded/meta-oe/classes/breakpad.bbclass6
-rw-r--r--import-layers/meta-openembedded/meta-oe/classes/gitpkgv.bbclass8
-rw-r--r--import-layers/meta-openembedded/meta-oe/classes/gitver.bbclass10
-rw-r--r--import-layers/meta-openembedded/meta-oe/classes/machine_kernel_pr.bbclass2
-rw-r--r--import-layers/meta-openembedded/meta-oe/classes/meson.bbclass100
-rw-r--r--import-layers/meta-openembedded/meta-oe/classes/socorro-syms.bbclass8
-rw-r--r--import-layers/meta-openembedded/meta-oe/conf/distro/include/meta_oe_security_flags.inc1
-rw-r--r--import-layers/meta-openembedded/meta-oe/conf/layer.conf2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-benchmark/glmark2/files/Fix-build-error-due-missing-space-before-macro.patch27
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-benchmark/glmark2/files/Fix-deprecated-declarations.patch61
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-benchmark/glmark2/files/build-Check-packages-to-be-used-by-the-enabled-flavo.patch6
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-benchmark/glmark2/glmark2_git.bb16
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-benchmark/iozone3/iozone3/parallelism.patch97
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-benchmark/iozone3/iozone3_465.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-benchmark/iozone3/iozone3_434.bb)11
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-benchmark/iperf/iperf-2.0.5/0001-fix-out-of-tree-config.patch52
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-benchmark/iperf/iperf-2.0.5/0002-fix-bool-size-m4.patch16
-rwxr-xr-ximport-layers/meta-openembedded/meta-oe/recipes-benchmark/iperf/iperf-2.0.5/iperf-2.0.5_ManPage.patch8
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-benchmark/iperf/iperf_2.0.5.bb23
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-benchmark/iperf3/iperf3/0001-include-stdint.h-for-various-std-c99-int-types.patch39
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-benchmark/iperf3/iperf3/0002-Remove-pg-from-profile_CFLAGS.patch31
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-benchmark/iperf3/iperf3_git.bb11
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-benchmark/libhugetlbfs/files/0001-install-perl-lib-to-directory-perl-instead-of-perl5.patch39
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-benchmark/libhugetlbfs/files/libhugetlbfs-avoid-using-restrict-as-var-name.patch34
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-benchmark/libhugetlbfs/libhugetlbfs_git.bb7
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-benchmark/lmbench/lmbench-3.0-a9/0001-Check-for-musl-define-guard-before-redefining-sockle.patch29
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-benchmark/lmbench/lmbench-3.0-a9/0001-lat_http.c-Add-printf-format.patch26
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-benchmark/lmbench/lmbench-3.0-a9/0002-build-Adjust-CFLAGS-LDFLAGS-to-append-values-passed-.patch76
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-benchmark/lmbench/lmbench_3.0-a9.bb11
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-benchmark/nbench-byte/nbench-byte_2.2.3.bb4
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-benchmark/phoronix-test-suite/phoronix-test-suite_6.6.1.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-benchmark/phoronix-test-suite/phoronix-test-suite_6.0.1.bb)7
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-benchmark/pmbw/pmbw_git.bb30
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-benchmark/sysbench/sysbench_0.4.12.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-benchmark/tinymembench/tinymembench_git.bb4
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/bluez/bluez4.inc6
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/ell/ell_git.bb17
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/gnokii/gnokii_0.6.31.bb4
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/gnuradio/gnuradio/0001-buildsys-don-t-add-usr-include-and-usr-lib-to-config.patch58
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd/0001-WPS-Reject-a-Credential-with-invalid-passphrase.patch86
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd/key-replay-cve-multiple.patch984
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd_2.6.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd_2.5.bb)9
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/irssi/irssi_0.8.16-rc1.bb22
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/irssi/irssi_1.0.1.bb12
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/krb5/krb5/fix-CVE-2017-11368.patch116
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/krb5/krb5_1.15.1.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-connectivity/krb5/krb5_1.13.6.bb)110
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/libev/libev_4.24.bb22
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/libmbim/libmbim_1.14.0.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/libmtp/libmtp_1.1.5.bb3
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/libndp/libndp/0001-include-sys-select.h-for-fd_-definitions.patch25
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/libndp/libndp_1.6.bb9
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/libqmi/libqmi_1.16.0.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/libtorrent/libtorrent/0001-Define-64bit-atomic-helpers-for-ppc-32-bit.patch30
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/libtorrent/libtorrent/0001-implement-64bit-atomic-for-mips.patch263
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/libtorrent/libtorrent_0.13.3.bb17
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/libtorrent/libtorrent_git.bb26
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/libuv/libuv_1.11.0.bb19
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/libwebsockets/libwebsockets_2.1.0.bb28
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/linuxptp/linuxptp/no-incdefs-using-host-headers.patch29
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/linuxptp/linuxptp_1.6.bb5
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/lirc/lirc.inc13
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/lirc/lirc/0001-lircrcd-Mark-local-inline-funtions-as-static.patch49
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/lirc/lirc/pollfd.patch101
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/lirc/lirc_0.9.4d.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-connectivity/lirc/lirc_0.9.2.bb)35
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/modemmanager/modemmanager_1.6.4.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/mosh/mosh_1.3.0.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-connectivity/mosh/mosh_1.2.4.bb)7
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/networkmanager/networkmanager-openvpn_1.2.8.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-connectivity/networkmanager/networkmanager-openvpn_1.0.8.bb)16
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/networkmanager/networkmanager/0001-adjust-net-headers-for-musl-compatibility.patch82
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/networkmanager/networkmanager/0001-check-for-strndupa-before-using-it.patch67
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/networkmanager/networkmanager/0002-Fix-nm-version-macro-includes.patch (renamed from import-layers/meta-openembedded/meta-oe/recipes-connectivity/networkmanager/networkmanager/0006-Fix-nm-version-macro-includes.patch)0
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/networkmanager/networkmanager/0002-add-pkg-config-for-libgcrypt.patch41
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/networkmanager/networkmanager/0002-networkmanager-fixed-issues-of-NetworkManager-wait-o.patch44
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/networkmanager/networkmanager/0002-socket-util.h-Include-linux-sockios.h-on-musl.patch30
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/networkmanager/networkmanager/0003-Define-ETH_ALEN.patch39
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/networkmanager/networkmanager/0003-core-fix-failure-to-configure-routes-due-to-wrong-de.patch54
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/networkmanager/networkmanager/0004-Define-missing-features-to-cater-for-musl.patch93
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/networkmanager/networkmanager/0004-ppp-manager-clear-ppp_watch_id-upon-pppd-termination.patch29
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/networkmanager/networkmanager/0005-device-update-ip_iface-only-if-IP-interface-exists.patch45
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/networkmanager/networkmanager/0005-sd-lldp.h-Remove-net-ethernet.h-seems-to-be-over-spe.patch36
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/networkmanager/networkmanager_1.4.4.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-connectivity/networkmanager/networkmanager_1.0.12.bb)52
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/obex/obex-data-server/obex-data-server-0.4.6-build-fixes-1.patch20
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/obex/obex-data-server_0.4.6.bb7
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/obex/openobex-1.5/disable-cable-test.patch16
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/obex/openobex-1.5/libusb_crosscompile_check.patch11
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/obex/openobex-1.5/separate_builddir.patch16
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/obex/openobex_1.5.bb35
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/obex/openobex_1.7.2.bb37
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/obexftp/obexftp/0001-apps-CMakeLists.txt-Explicitly-link-libbfb-and-libmu.patch66
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/obexftp/obexftp/make_fuse_swig_optional.patch24
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/obexftp/obexftp_0.23.bb16
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/obexftp/obexftp_0.24.2.bb41
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/rtorrent/rtorrent_git.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-connectivity/rtorrent/rtorrent_0.9.3.bb)12
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/ser2net/ser2net_2.9.1.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/soft66/soft66_git.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/telepathy/libtelepathy_0.3.3.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/telepathy/telepathy-mission-control_5.16.1.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/thrift/thrift_0.9.3.bb47
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/umip/files/0001-Add-format-string-to-fprintf-call.patch26
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/umip/files/add-dependency-to-support-parallel-compilation.patch23
-rwxr-xr-ximport-layers/meta-openembedded/meta-oe/recipes-connectivity/umip/files/mip6d112
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/umip/files/mip6d.service10
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/umip/umip_1.0.bb28
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/usbmuxd/usbmuxd_git.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/wvdial/wvdial_1.61.bb4
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/wvdial/wvstreams/0001-Check-for-limits.h-during-configure.patch26
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/wvdial/wvstreams/0001-build-fix-parallel-make.patch76
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/wvdial/wvstreams/0002-wvrules.mk-Use-_DEFAULT_SOURCE.patch29
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/wvdial/wvstreams/0002-wvtask-Dont-use-ucontext-on-non-glibc-systems.patch135
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/wvdial/wvstreams/0003-wvtask-Check-for-HAVE_LIBC_STACK_END-only-on-glibc-s.patch27
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/wvdial/wvstreams/0004-wvcrash-Replace-use-of-basename-API.patch28
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/wvdial/wvstreams/0005-check-for-libexecinfo-during-configure.patch30
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/wvdial/wvstreams/argp.patch37
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/wvdial/wvstreams/gcc-6.patch42
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/wvdial/wvstreams_4.6.1.bb17
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/zabbix/zabbix_3.0.8.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-connectivity/zabbix/zabbix_2.4.7.bb)4
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/zeroc-ice/zeroc-ice_3.5.1.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/zeromq/cppzmq_git.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-connectivity/zeromq/zeromq_4.1.6.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-connectivity/zeromq/zeromq_4.1.5.bb)4
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-core/dbus/dbus-daemon-proxy_git.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-core/dbus/libdbus-c++-0.9.0/0001-pipe.c-Use-a-string-instead-of-char.patch27
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-core/dbus/libdbus-c++-0.9.0/0001-src-eventloop.cpp-use-portable-method-for-initializi.patch36
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-core/dbus/libdbus-c++-0.9.0/0002-tools-generate_proxy.cpp-avoid-possibly-undefined-ui.patch58
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-core/dbus/libdbus-c++-0.9.0/0003-Fixed-undefined-ssize_t-for-clang-3.8.0-on-FreeBSD.patch30
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-core/dbus/libdbus-c++-0.9.0/0004-use-POSIX-poll.h-instead-of-sys-poll.h.patch77
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-core/dbus/libdbus-c++-0.9.0/fix-missing-unistd.h-include.patch40
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-core/dbus/libdbus-c++-0.9.0/remove-CXX_FOR_BUILD-stuff.patch33
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-core/dbus/libdbus-c++_0.9.0.bb30
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-core/fakeroot/fakeroot-native_1.18.4.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-core/fakeroot/fakeroot_1.18.4.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-core/glib-2.0/glibmm_2.50.1.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-core/glib-2.0/glibmm_2.44.0.bb)9
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-core/libsigc++-2.0/libsigc++-2.0_2.10.0.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-core/libsigc++-2.0/libsigc++-2.0_2.2.11.bb)7
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-core/libxml/libxml++/libxml++_ptest.patch34
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-core/libxml/libxml++_2.40.1.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-core/libxml/libxml++_2.38.1.bb)6
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-core/llvm/llvm.inc2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-core/meta/distro-feed-configs.bb4
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-core/mm-common/mm-common_0.9.10.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-core/mm-common/mm-common_0.9.8.bb)4
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-core/packagegroups/packagegroup-cli-tools.bb4
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-core/plymouth/plymouth_0.9.2.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-core/proxy-libintl/proxy-libintl-20100902/create-as-shared-lib.patch31
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-core/proxy-libintl/proxy-libintl-20100902/stub-only.patch72
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-core/proxy-libintl/proxy-libintl_20100902.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-core/toybox/toybox/0001-Fix-TOYBOX_VERSION.patch29
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-core/toybox/toybox/0002-Fix-trimmed-printf-in-grep.patch34
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-core/toybox/toybox_0.7.3.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-core/toybox/toybox_0.7.1.bb)12
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/android-tools/android-tools/fix-big-endian-build.patch39
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/android-tools/android-tools_5.1.1.r37.bb25
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/autoconf-archive/autoconf-archive.inc4
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/autoconf-archive/autoconf-archive/delete-some-m4-files.patch23
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/autoconf-archive/autoconf-archive_2016.09.16.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-devtools/autoconf-archive/autoconf-archive_2012.04.07.bb)8
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad_git.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad_svn.bb)24
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/cloud9/cloud9_0.6.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/cppunit/cppunit_1.13.2.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-devtools/cppunit/cppunit_1.13.1.bb)4
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/cxxtest/cxxtest_4.3.bb21
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/dmalloc/dmalloc/0001-undefined-strdup-macro.patch29
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/dmalloc/dmalloc/02-Makefile.in.patch312
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/dmalloc/dmalloc/03-threads.patch18
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/dmalloc/dmalloc/100-use-xtools.patch109
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/dmalloc/dmalloc/13-fix-ldflags-in-makefile.patch38
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/dmalloc/dmalloc/130-mips.patch90
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/dmalloc/dmalloc/150-use_DESTDIR.patch104
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/dmalloc/dmalloc/configure-pagesize-HACK.patch37
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/dmalloc/dmalloc_5.5.2.bb39
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/dt/dt_18.32.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/geany/geany-plugins_1.30.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-devtools/geany/geany-plugins_1.28.bb)10
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/geany/geany/0001-configure.ac-remove-additional-c-test.patch47
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/geany/geany_1.28.bb18
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/geany/geany_1.30.1.bb16
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/glade/glade3/0001-Add-G_GNUC_PRINTF-on-functions-with-format-strings.patch62
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/glade/glade3_3.8.5.bb10
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/json-spirit/json-spirit/0001-Adjust-the-cmake-files.patch145
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/json-spirit/json-spirit/json_spirit_v4.08.zipbin0 -> 56299 bytes
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/json-spirit/json-spirit_4.08.bb26
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/jsoncpp/jsoncpp_1.8.0.bb21
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/jsonrpc/jsonrpc/0001-cmake-replace-hardcoded-lib-CMAKE_LIBRARY_PATH-with-.patch77
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/jsonrpc/jsonrpc/0001-filedescriptorclient-Typecast-min-arguments-correctl.patch33
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/jsonrpc/jsonrpc/0001-filedescriptorserver-Include-sys-select.h-before-oth.patch34
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/jsonrpc/jsonrpc/0001-memset-and-family-needs-to-include-string.h.patch26
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/jsonrpc/jsonrpc/0002-Fix-build-problem-on-Mac.patch27
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/jsonrpc/jsonrpc_0.7.0.bb32
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/libedit/libedit/stdc-predef.patch17
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/libedit/libedit_20170329-3.1.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-devtools/libedit/libedit_20160618-3.1.bb)9
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/libfribidi/fribidi_0.19.7.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/libgee/libgee_0.18.0.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/librcf/librcf/0001-Add-CMake-build-files.patch302
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/librcf/librcf/aarch64-support.patch13
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/librcf/librcf_2.2.0.0.bb49
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/libubox/libubox_git.bb1
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/log4cplus/log4cplus_1.2.0.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/ltp-ddt/ltp-ddt_1.0.0.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/ltrace/ltrace/0001-ARM-code-has-unreachable-code-after-switch-statement.patch40
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/ltrace/ltrace/0001-Add-support-for-mips64-n32-n64.patch1148
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/ltrace/ltrace/0001-Fix-tautological-compare-warning.patch261
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/ltrace/ltrace/0001-Use-correct-enum-type.patch28
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/ltrace/ltrace/0001-configure-Recognise-linux-musl-as-a-host-OS.patch25
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/ltrace/ltrace/0002-Fix-const-qualifier-error.patch76
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/ltrace/ltrace_git.bb14
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/luajit/luajit_2.0.4.bb6
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/mercurial/files/mercurial-CVE-2017-9462.patch135
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/mercurial/mercurial-native_4.0.1.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-devtools/mercurial/mercurial-native_3.8.4.bb)8
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/meson/meson/native_bindir.patch52
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/meson/meson_0.37.1.bb20
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/msgpack/msgpack-c/0001-Comment-intentional-fallthrough-in-case-statements.patch39
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/msgpack/msgpack-c_2.1.1.bb22
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/ninja/ninja_1.7.2.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-devtools/ninja/ninja_1.7.1.bb)4
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs_4.8.2.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs_4.6.1.bb)8
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/packagekit/packagekit_0.5.6.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/php/php-5.6.26/0001-Add-lpthread-to-link.patch38
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/php/php-7.1.7/0001-Specify-tag-with-libtool.patch62
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/php/php-7.1.7/change-AC_TRY_RUN-to-AC_TRY_LINK.patch56
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/php/php.inc30
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/php/php/70_mod_php7.conf9
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/php/php_5.5.38.bb6
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/php/php_5.6.26.bb5
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/php/php_7.1.7.bb16
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/protobuf/protobuf_3.1.0.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-devtools/protobuf/protobuf_2.6.1.bb)8
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/python/python-distutils-extra.bb9
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/python/python-distutils-extra.inc13
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/python/python-pygobject_3.22.0.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-devtools/python/python-pygobject_3.20.1.bb)10
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/python/python-simplejson_3.8.2.bb27
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/python/python3-distutils-extra.bb11
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/rapidjson/rapidjson/remove-march-native-from-CMAKE_CXX_FLAGS.patch40
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/rapidjson/rapidjson_git.bb25
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/sip/sip_4.19.2.bb42
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/tcltk/tk_8.6.6.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/uw-imap/uw-imap_2007f.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/vala-dbus-binding-tool/vala-dbus-binding-tool.inc2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/vala-dbus-binding-tool/vala-dbus-binding-tool_0.4.0.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/vala-dbus-binding-tool/vala-dbus-binding-tool_git.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/xerces-c/xerces-c_3.1.4.bb4
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/yajl/yajl_1.0.12.bb19
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-devtools/yajl/yajl_2.1.0.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/acpica/acpica_20150515.bb46
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/acpica/acpitests/aapits-linux.patch336
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/acpica/acpitests/aapits-makefile.patch34
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/acpica/acpitests_20140828.bb35
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/acpica/files/no-werror.patch32
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/boinc/boinc-client/boinc-AM_CONDITIONAL.patch24
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/boinc/boinc-client/cross-compile.patch98
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/boinc/boinc-client/gtk-configure.patch29
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/boinc/boinc-client/opengl_m4_check.patch19
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/boinc/boinc-client_7.6.33.bb77
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/cfengine/cfengine_3.9.0.bb3
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/collectd/collectd/0001-collectd-replace-deprecated-readdir_r-with-readdir.patch66
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/collectd/collectd/0001-conditionally-check-libvirt.patch47
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/collectd/collectd/0001-configure-Check-for-Wno-error-format-truncation-comp.patch121
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/collectd/collectd/0001-fix-to-build-with-glibc-2.25.patch24
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/collectd/collectd/0001-redefine-the-dependence.patch28
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/collectd/collectd/CVE-2016-6254.patch55
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/collectd/collectd/collectd-version.patch29
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/collectd/collectd/no-gcrypt-badpath.patch63
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/collectd/collectd_5.7.1.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-extended/collectd/collectd_5.5.0.bb)12
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/corosync/corosync/0001-Include-fcntl.h-for-F_-and-O_-defines.patch28
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/corosync/corosync_2.4.0.bb56
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/corosync/corosync_2.4.2.bb56
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/dash/dash/0001-Fix-printf-format-errors-with-clang.patch28
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/dash/dash_0.5.8.bb4
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/dialog/dialog_1.3-20160828.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-extended/dialog/dialog_1.3-20160424.bb)5
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/dlm/dlm/respect-ldflags-also-from-bin_ldflags.patch36
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/dlm/dlm_4.0.2.bb4
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/efibootmgr/efibootmgr/0001-Remove-extra-const-keywords-gcc-7-gripes-about.patch49
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/efibootmgr/efibootmgr_0.12.bb3
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/efivar/efivar/0001-Remove-some-extra-const-that-gcc-complains-about.patch44
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/efivar/efivar/0002-New-gcc-version-new-way-symbol-versioning-breaks.patch66
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/efivar/efivar_0.24.bb7
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/fluentbit/fluentbit/0001-CMakeLists.txt-Add-AUTOCONF_HOST_OPT-to-help-cross-c.patch52
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/fluentbit/fluentbit/0002-msgpack-Add-comment-for-intended-fallthrough.patch28
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/fluentbit/fluentbit_0.11.3.bb24
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/fluentbit/fluentbit_0.7.2.bb16
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/gnuplot/gnuplot.inc3
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/gnuplot/gnuplot/lua-loadlibs-configure-in-fix.patch (renamed from import-layers/meta-openembedded/meta-oe/recipes-extended/gnuplot/gnuplot-4.6.5/lua-loadlibs-configure-in-fix.patch)0
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/gnuplot/gnuplot/subdirs.patch (renamed from import-layers/meta-openembedded/meta-oe/recipes-extended/gnuplot/gnuplot-4.6.5/subdirs.patch)0
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/gnuplot/gnuplot_5.0.5.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-extended/gnuplot/gnuplot_4.6.5.bb)4
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/konkretcmpi/konkretcmpi/0001-to-fix-lib64-can-not-be-shiped-in-64bit-target.patch36
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/lcdproc/lcdproc/0001-include-asm-ioctl.h-explicitly.patch43
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/lcdproc/lcdproc_0.5.6.bb23
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/lcdproc/lcdproc_git.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-extended/lcdproc/lcdproc5.inc)32
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/libcec/files/python-install-location.patch28
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/libcec/libcec_git.bb20
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/libexecinfo/libexecinfo/0001-makefile-Fix-build-on-linux.patch59
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/libexecinfo/libexecinfo/0002-execinfo-Fix-compiler-errors-found-with-newer-gcc-cl.patch79
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/libexecinfo/libexecinfo_1.1.bb32
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/libgxim/libgxim/0001-Use-AM_CPPFLAGS-instead-of-INCLUDES.patch53
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/libgxim/libgxim/0002-Update-autotools-macro.patch31
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/libgxim/libgxim/0003-Add-format-string-qualifier-to-fix-potential-securit.patch30
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/libgxim/libgxim_0.5.0.bb10
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/liblockfile/liblockfile-1.09/glibc-2.4.patch70
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/liblogging/liblogging_1.0.5.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/libqb/libqb/0001-Remove-runtime-check-for-CLOCK_MONOTONIC.patch43
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/libqb/libqb_1.0.1.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-extended/libqb/libqb_0.17.2.bb)14
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/libuio/libuio/0001-include-fcntl.h-for-O_RDWR-define.patch38
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/libuio/libuio_0.2.1.bb6
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/lprng/lprng_3.8.C.bb3
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/mml-widget/gtkmathview_0.8.0.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/mozjs/mozjs/0001-add-support-for-big-endian-32bit-ARM.patch26
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/mozjs/mozjs/0001-compare-the-first-character-of-string-to-be-null-or-.patch32
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/mozjs/mozjs_17.0.0.bb36
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/openlmi/openlmi-networking_0.3.1.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/openlmi/openlmi-providers_0.6.0.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/openlmi/openlmi-storage_0.8.1.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/p7zip/p7zip_16.02.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/p8platform/p8platform_git.bb18
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/polkit/polkit-group-rule.inc2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/polkit/polkit_0.113.bb4
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/pywbem/pywbem_0.8.0.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/rarpd/rarpd_ss981107.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/redis/redis/redis.conf8
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/redis/redis/redis.service15
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/redis/redis_3.0.2.bb21
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/rrdtool/rrdtool_1.6.0.bb13
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/rsyslog/rsyslog/0001-Include-sys-time-h.patch33
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/rsyslog/rsyslog/0001-Undefine-GLOB_BRACE.patch35
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/rsyslog/rsyslog_8.22.0.bb44
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/sblim-sfcb/sblim-sfcb-1.4.9/0001-Replace-need-for-error.h-when-it-does-not-exist.patch124
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/sblim-sfcb/sblim-sfcb-1.4.9/0001-include-stdint.h-system-header-for-UINT16_MAX.patch29
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/sblim-sfcb/sblim-sfcb_1.4.9.bb7
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/scsirastools/scsirastools_1.6.4.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/smartmontools/smartmontools_6.5.bb4
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/subsurface/subsurface_git.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/t1lib/t1lib-5.1.2/format_security.patch41
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/t1lib/t1lib_5.1.2.bb3
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/tcsh/files/01_build.1.patch16
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/tcsh/files/01_build.2.patch13
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/tcsh/files/01_build.3.patch13
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/tcsh/files/12_unknown_lscolors.patch24
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/tcsh/files/15_no-strip.patch14
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/tcsh/files/disable-broken-test.patch14
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/tcsh/files/disable-lexical.at-31.patch30
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/tcsh/files/disable-test-nice.patch23
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/tcsh/files/disable-test-notty.patch30
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/tcsh/files/fix-gcc6-wait-union.patch11
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/tcsh/files/tcsh-6.17.02-multibyte.patch18
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/tcsh/tcsh/0001-Enable-system-malloc-on-all-linux.patch30
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/tcsh/tcsh/0002-Add-debian-csh-scripts.patch60
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/tcsh/tcsh_6.18.01.bb53
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/tcsh/tcsh_6.20.00.bb44
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/tipcutils/tipcutils/0001-include-sys-select.h-for-FD_-definitions.patch25
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/tipcutils/tipcutils/0002-replace-non-standard-uint-with-unsigned-int.patch211
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/tipcutils/tipcutils_git.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-extended/tipcutils/tipcutils_2.2.0.bb)8
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-extended/zlog/zlog_git.bb19
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-gnome/atk/atkmm_2.24.2.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-gnome/atk/atkmm_2.22.7.bb)6
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-gnome/gtk+/gtkmm_2.24.5.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-gnome/gtk+/gtkmm_2.24.3.bb)4
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-gnome/gtkextra/gtkextra_3.0.5.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-gnome/gtkhtml2/gtkhtml2_svn.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-gnome/libglade/libglade-2.6.4/0001-configure.in-remove-deprecated-GNOME_COMMON_INIT.patch30
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-gnome/libglade/libglade_2.6.4.bb10
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-gnome/libunique/libunique/0001-test-unique-Add-format-qualifier-s-for-string.patch32
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-gnome/libunique/libunique_1.1.6.bb13
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-gnome/vte9/vte9.inc3
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-graphics/assimp/assimp_3.1.1.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-graphics/cairo/cairomm_1.11.2.bb16
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-graphics/cairo/cairomm_1.12.0.bb15
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-graphics/clutter/clutter-box2d_git.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-graphics/directfb/directfb.inc2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-graphics/fbgrab/fbgrab_1.3.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-graphics/fbgrab/fbgrab_1.2.bb)6
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-graphics/fbida/fbida_2.10.bb25
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-graphics/fbida/files/0001-Avoid-using-host-path.patch34
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-graphics/fbida/files/fix-preprocessor.patch14
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-graphics/fbida/files/support-jpeg-turbo.patch1854
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-graphics/fbida/files/use-jpeg-turbo.patch13
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-graphics/fim/fim_0.4-rc1.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-graphics/fontforge/fontforge_20161012.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-graphics/fontforge/fontforge_20150824.bb)6
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-graphics/gegl/gegl_0.3.4.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-graphics/gimp/gimp_2.8.20.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-graphics/gimp/gimp_2.8.18.bb)6
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-graphics/glcompbench/glcompbench/0001-waf-Disable-errors-due-to-Wdeprecated.patch31
-rwxr-xr-ximport-layers/meta-openembedded/meta-oe/recipes-graphics/glcompbench/glcompbench_2012.08.bb3
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-graphics/glm/glm_0.9.8.4.bb22
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-graphics/gphoto2/libgphoto2-2.5.8/0001-scripts-remove-bashisms.patch149
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-graphics/gphoto2/libgphoto2_2.5.8.bb4
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-graphics/gtkperf/gtkperf/0001-Include-stdlib.h-for-exit-API.patch34
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-graphics/gtkperf/gtkperf/0002-timing.c-Fix-format-security-errors.patch42
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-graphics/gtkperf/gtkperf_0.40.bb5
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-graphics/libmng/libmng_2.0.3.bb23
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-graphics/libsexy/libsexy_0.1.11.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-graphics/libvncserver/libvncserver/0002-format_string.patch21
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-graphics/libvncserver/libvncserver_0.9.10.bb3
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-graphics/lxdm/lxdm/0001-check-for-libexecinfo-providing-backtrace-APIs.patch36
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-graphics/lxdm/lxdm_0.5.3.bb16
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-graphics/pango/pangomm_2.40.1.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-graphics/pango/pangomm_2.36.0.bb)6
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-graphics/slim/slim_1.3.2.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-graphics/terminus-font/terminus-font_4.38.bb4
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-graphics/tesseract/tesseract-lang_git.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-graphics/ttf-fonts/ttf-abyssinica_1.500.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-graphics/vdpau/libvdpau_git.bb23
-rwxr-xr-ximport-layers/meta-openembedded/meta-oe/recipes-graphics/wayland/wayland-fits_git.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-graphics/xdotool/xdotool_1.20100416.2809.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xstdcmap_1.0.3.bb3
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-driver/xf86-input-mtev_git.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-driver/xf86-input-tslib_0.0.6.bb6
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-driver/xf86-video-ati_7.8.0.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-driver/xf86-video-ati_7.6.1.bb)4
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-driver/xf86-video-geode_2.11.16.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-driver/xf86-video-glamo_git.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-driver/xf86-video-nouveau_1.0.12.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-font/font-adobe-100dpi_1.0.3.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-font/font-adobe-utopia-100dpi_1.0.4.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-font/font-bh-100dpi_1.0.3.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-font/font-bh-lucidatypewriter-100dpi_1.0.3.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-font/font-misc-misc_1.1.2.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-font/xorg-fonts-100dpi.bb10
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-graphics/xserver-common/xserver-common-1.34/0001-Don-t-install-Xsession-or-Xserver.patch30
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-graphics/xserver-common/xserver-common-1.34/0003-add-89xdgautostart-Xsession.d-script.patch29
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-graphics/xserver-common/xserver-common-1.34/0005-add-XWindowManager-Xsession.d-script.patch23
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-graphics/xserver-common/xserver-common-1.34/0014-Xserver-Start-Xsession-like-x11-common-does.patch26
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-graphics/xserver-common/xserver-common_1.34.bb6
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-graphics/xserver-nodm-init/xserver-nodm-init-2.0/gplv2-license.patch353
-rwxr-xr-ximport-layers/meta-openembedded/meta-oe/recipes-graphics/xserver-nodm-init/xserver-nodm-init-2.0/xserver-nodm60
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-graphics/xserver-nodm-init/xserver-nodm-init-2.0/xserver-nodm.conf1
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-graphics/xserver-nodm-init/xserver-nodm-init-2.0/xserver-nodm.service9
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-graphics/xserver-nodm-init/xserver-nodm-init_2.0.bb41
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-kernel/crash/crash/0001-Fix-for-a-compilation-error-if-glibc-2.25-or-later-h.patch112
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-kernel/crash/crash/0001-cross_add_configure_option.patch13
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-kernel/crash/crash/0002-crash-fix-build-error-unknown-type-name-gdb_fpregset.patch36
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-kernel/crash/crash/0003-crash-detect-the-sysroot-s-glibc-header-file.patch33
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-kernel/crash/crash/0004-crash-fix-build-failure-with-mips.patch87
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-kernel/crash/crash_7.1.8.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-kernel/crash/crash_7.1.5.bb)11
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-kernel/ktap/ktap-module_git.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-kernel/ktap/ktap_git.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-kernel/makedumpfile/makedumpfile/0001-makedumpfile-Add-proper-format-string-to-print-a-str.patch35
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-kernel/makedumpfile/makedumpfile/0002-mem_section-Support-only-46-bit-for-MAX_PHYSMEM_BITS.patch73
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-kernel/makedumpfile/makedumpfile_1.6.1.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-kernel/makedumpfile/makedumpfile_1.6.0.bb)12
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-kernel/minicoredumper/minicoredumper_2.0.0.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-kernel/minicoredumper/minicoredumper_1.0.2.bb)20
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-multimedia/audiofile/audiofile_0.2.7.bb15
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-multimedia/audiofile/audiofile_0.3.6.bb27
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-multimedia/audiofile/files/0001-fix-negative-shift-constants.patch77
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-multimedia/audiofile/files/0002-fix-build-on-gcc6.patch75
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-multimedia/audiofile/files/0003-fix-CVE-2015-7747.patch35
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-multimedia/cdrkit/cdrkit_1.1.11.bb8
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-multimedia/cdrkit/files/0001-genisoimage-Fix-fprintf-format-errors.patch49
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-multimedia/esound/esound/0001-replace-missing-AM_PATH_AUDIOFILE-by-PKG_CHECK_MODUL.patch31
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-multimedia/esound/esound_0.2.36.bb15
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-multimedia/jack/a2jmidid/0002-aarch64.patch31
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-multimedia/jack/a2jmidid_8.bb6
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-multimedia/jack/jack/0001-typecast-input-parameter-to-int-for-abs.patch32
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-multimedia/jack/jack_git.bb13
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-multimedia/libass/libass.inc2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-multimedia/libass/libass_0.13.2.bb4
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-multimedia/libass/libass_0.13.6.bb4
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-multimedia/libcdio/libcdio-paranoia_10.2+0.93+1.bb24
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-multimedia/libcdio/libcdio_0.93.bb19
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-multimedia/libopus/libopus_1.1.3.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-multimedia/libopus/libopus_1.1.2.bb)20
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-multimedia/libsdl-mixer/libsdl-mixer_1.2.12.bb3
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-multimedia/libsdl-mixer/libsdl2-mixer_2.0.1.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-multimedia/live555/live555.inc15
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-multimedia/live555/live555_20130430.bb7
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-multimedia/live555/live555_20170410.bb9
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-multimedia/mikmod/libmikmod_3.3.6.bb4
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-multimedia/minidlna/minidlna_1.1.5.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-multimedia/mplayer/mplayer2_git.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-multimedia/mplayer/mpv/0001-Fix-build-with-HAVE_GL-0.patch39
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-multimedia/mplayer/mpv_0.24.0.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-multimedia/mplayer/mpv_0.15.0.bb)25
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-multimedia/pulseaudio/pavucontrol/0001-build-sys-Use-C-11-for-building.patch27
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-multimedia/pulseaudio/pavucontrol/0002-build-sys-Add-m4-file-for-AX_CXX_COMPILE_STDCXX_11.patch624
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-multimedia/pulseaudio/pavucontrol_3.0.bb7
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-multimedia/v4l2apps/v4l-utils/0001-Revert-media-ctl-Don-t-install-libmediactl-and-libv4.patch18
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-multimedia/v4l2apps/v4l-utils/0001-buildsystem-do-not-assume-building-in-source-tree.patch110
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-multimedia/v4l2apps/v4l-utils/0001-ir-ctl-Define-TEMP_FAILURE_RETRY-if-undefined.patch55
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-multimedia/v4l2apps/v4l-utils/0002-contrib-test-Link-mc_nextgen_test-with-libargp-if-ne.patch28
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-multimedia/v4l2apps/v4l-utils/0003-v4l2-ctl-Do-not-use-getsubopt.patch49
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-multimedia/v4l2apps/v4l-utils_1.12.3.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-multimedia/v4l2apps/v4l-utils_1.10.1.bb)11
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-navigation/gdal/gdal_1.11.1.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-navigation/geoclue/geoclue_2.4.4.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-navigation/gpsd/gpsd_3.14.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-navigation/navit/navit-fpu.inc2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-navigation/orrery/orrery/0001-orrery-Fix-sprintf-format.patch26
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-navigation/orrery/orrery_2.7.bb3
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-sato/claws-mail/claws-mail_3.9.0.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-sato/claws-mail/claws-plugin-gtkhtml2-viewer_0.31.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-sato/claws-mail/claws-plugin-mailmbox_1.15.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-sato/claws-mail/claws-plugin-rssyl_0.34.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-sato/claws-mail/sylpheed_2.7.1.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/apcupsd/apcupsd_3.14.10.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/atop/atop/0001-include-missing-header-files.patch97
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/atop/atop_2.2.3.bb3
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/avro/avro-c/0001-avro-c-Fix-build-with-clang-compiler.patch37
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/avro/avro-c_1.8.1.bb20
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/canonical-multitouch/frame_2.5.0.bb4
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/canonical-multitouch/geis/0001-libgeis-Compare-the-first-character-of-string-to-nul.patch43
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/canonical-multitouch/geis_2.2.17.bb5
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/canonical-multitouch/grail_3.1.1.bb5
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/ckermit/ckermit_302.bb1
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/cryptsetup/cryptsetup_1.7.4.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-support/cryptsetup/cryptsetup_1.7.2.bb)9
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/digitemp/digitemp/makefile-fix.patch20
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/digitemp/digitemp_3.6.0.bb27
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/digitemp/digitemp_git.bb25
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/dstat/dstat_0.7.3.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/eject/eject_2.1.5.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/emacs/emacs.inc4
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/emacs/emacs_23.4.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/farsight/farsight2_0.0.22.bb6
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/farsight/libnice_0.1.13.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-support/farsight/libnice_0.0.13.bb)22
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/fftw/benchfft_3.1.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/fftw/fftw/0001-NEON-autodetection-segfaults-assume-neon-present.patch80
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/fftw/fftw_3.3.6.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-support/fftw/fftw_3.3.4.bb)13
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/flite/flite-alsa_1.3.bb9
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk-native.bb16
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk.bb34
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk.inc21
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk/0001-Fl_Preferences.cxx-do-not-use-dlopen-in-case-glibc-s.patch39
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk/0002-always-build-fluid-and-export-pointers.patch31
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk/fix-boolean-issue-with-jpeg9.patch40
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk/fltk-no-freetype-config.patch40
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk_1.3.3.bb49
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/freerdp/freerdp/0003-add-missing-define.patch45
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/freerdp/freerdp_git.bb13
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/gd/gd/.gitignore-the-new-test-case.patch24
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/gd/gd/CVE-2016-10166.patch60
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/gd/gd/CVE-2016-10167.patch48
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/gd/gd/CVE-2016-10168.patch38
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/gd/gd/CVE-2016-6906-1.patch167
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/gd/gd/CVE-2016-6906-2.patch135
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/gd/gd/Fix-290-TGA-RLE-decoding-is-broken.patch359
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/gd/gd_2.2.3.bb22
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/gflags/gflags_2.2.0.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-support/gflags/gflags_2.1.2.bb)12
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/gnulib/gnulib_git.bb3
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools/0001-Fix-build-failure-for-ppc.patch28
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools/0001-Support-Atomic-ops-on-clang.patch33
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools/0001-Use-ucontext_t-instead-of-struct-ucontext.patch36
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools_2.5.bb6
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/gpm/gpm-1.99.7/eglibc-2.17.patch12
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/gpm/gpm-1.99.7/remove_nested_functions.patch326
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/gpm/gpm/gpm.service.in9
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/gpm/gpm/init (renamed from import-layers/meta-openembedded/meta-oe/recipes-support/gpm/gpm-1.99.7/init)0
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/gpm/gpm/no-docs.patch (renamed from import-layers/meta-openembedded/meta-oe/recipes-support/gpm/gpm-1.99.7/no-docs.patch)2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/gpm/gpm/processcreds.patch (renamed from import-layers/meta-openembedded/meta-oe/recipes-support/gpm/gpm-1.99.7/processcreds.patch)0
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/gpm/gpm_1.99.7.bb53
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/gpm/gpm_git.bb45
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/hunspell/hunspell_1.3.3.bb18
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/hunspell/hunspell_1.6.1.bb17
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/iksemel/iksemel_1.4.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/imagemagick/imagemagick_7.0.2.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/ipmitool/ipmitool_1.8.18.bb36
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/ipmiutil/ipmiutil_2.9.6.bb4
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/lcov/lcov_1.11.bb1
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/libatasmart/files/0001-Makefile.am-add-CFLAGS-and-LDFLAGS-definiton.patch41
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/libatasmart/libatasmart_0.19.bb4
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/libcanberra/libcanberra_0.30.bb5
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/libdbi/libdbi-drivers_0.8.3-1.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/libetpan/libetpan_0.57.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/libftdi/libftdi_1.3.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/libgit2/libgit2_0.24.3.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-support/libgit2/libgit2_0.24.1.bb)2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/libiio/libiio_git.bb24
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/libmicrohttpd/libmicrohttpd/Check-response-existence-on-upgrade.patch49
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/libmicrohttpd/libmicrohttpd_0.9.53.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-support/libmicrohttpd/libmicrohttpd_0.9.50.bb)11
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/libnih/libnih-1.0.3/0001-signal.c-SIGCLD-and-SIGCHILD-are-same-on-sytem-V-sys.patch28
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/libnih/libnih_1.0.3.bb5
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/liboop/liboop/explicit_linking.patch20
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/liboop/liboop/new-readline-typedef.patch11
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/liboop/liboop/read_bugfixes.patch40
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/liboop/liboop/tcl_dev.patch22
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/liboop/liboop_1.0.bb23
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/libraw1394/libraw1394_2.1.2.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-support/libraw1394/libraw1394_2.1.0.bb)4
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/libsdl-ttf/files/automake_foreign.patch13
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/libsdl-ttf/libsdl-ttf_2.0.11.bb4
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/libsdl-ttf/libsdl2-ttf_2.0.14.bb11
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/libsodium/libsodium_1.0.11.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/libssh/libssh_0.7.3.bb3
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/libssh2/libssh2_1.7.0.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/libtinyxml/libtinyxml_2.6.2.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/libtinyxml2/libtinyxml2_4.0.1.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-support/libtinyxml2/libtinyxml2_3.0.0.bb)2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/libutempter/libutempter.bb4
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/libutempter/libutempter/libutempter-remove-glibc-assumption.patch81
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/log4c/log4c/0001-Use-the-API-properly-in-the-example-format-security-.patch26
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/log4c/log4c_1.2.4.bb6
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/log4cpp/log4cpp_1.1.2.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-support/log4cpp/log4cpp_1.1.1.bb)9
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/lvm2/files/0001-Avoid-bashisms-in-init-scripts.patch182
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/lvm2/files/0001-implement-libc-specific-reopen_stream.patch79
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/lvm2/files/0002-Guard-use-of-mallinfo-with-__GLIBC__.patch (renamed from import-layers/meta-openembedded/meta-oe/recipes-support/lvm2/lvm2/0003-Guard-use-of-mallinfo-with-__GLIBC__.patch)18
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/lvm2/files/0003-include-fcntl.h-for-O_-defines-and-fcntl-signature.patch (renamed from import-layers/meta-openembedded/meta-oe/recipes-support/lvm2/lvm2/0004-include-fcntl.h-for-O_-defines-and-fcntl-signature.patch)15
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/lvm2/files/0004-tweak-MODPROBE_CMD-for-cross-compile.patch (renamed from import-layers/meta-openembedded/meta-oe/recipes-support/lvm2/lvm2/0005-tweak-MODPROBE_CMD-for-cross-compile.patch)22
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/lvm2/files/lvm.conf (renamed from import-layers/meta-openembedded/meta-oe/recipes-support/lvm2/lvm2/lvm.conf)0
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/lvm2/libdevmapper_2.02.166.bb31
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/lvm2/lvm2.inc81
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/lvm2/lvm2/0001-implement-libc-specific-_reopen_stream.patch139
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/lvm2/lvm2/0002-use-PTHREAD_MUTEX_RECURSIVE-instead-of-PTHREAD_MUTEX.patch44
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/lvm2/lvm2_2.02.138.bb4
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/lvm2/lvm2_2.02.166.bb81
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/lzip/lzip_1.16.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/mcelog/mcelog/mcelog-debash.patch36
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/mcelog/mcelog_1.49.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-support/mcelog/mcelog_1.40.bb)5
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/mg/files/remove_ncurses_check.patch36
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/mg/mg/0001-Undefine-REGEX-for-musl-based-systems.patch39
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/mg/mg/0001-fileio-Include-sys-param.h-for-MAXNAMLEN.patch25
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/mg/mg/0002-fileio-Define-DEFFILEMODE-if-platform-is-missing.patch28
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/mg/mg_20170401.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-support/mg/mg_20161005.bb)12
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/multipath-tools/files/0001-multipathd.service-Error-fix.patch10
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/multipath-tools/files/always-use-libdevmapper-kpartx.patch25
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/multipath-tools/files/always-use-libdevmapper.patch53
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/multipath-tools/files/checkers-disable-libcheckrbd.so.patch31
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/multipath-tools/files/do-not-link-libmpathpersist-to-TMPDIR.patch30
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/multipath-tools/files/makefile_inc.patch38
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/multipath-tools/files/shared-libs-avoid-linking-.so-as-executable.patch55
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/multipath-tools/multipath-tools_git.bb49
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/mysql/mariadb-native_5.5.55.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-support/mysql/mariadb-native_5.5.52.bb)0
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/mysql/mariadb.inc8
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/mysql/mariadb/0001-disable-ucontext-on-musl.patch28
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/mysql/mariadb/gcc7.patch13
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/mysql/mariadb_5.5.55.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-support/mysql/mariadb_5.5.52.bb)0
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/nano/nano-2.2.5/ncursesw.includedir.patch12
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/nano/nano.inc12
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/nano/nano_2.2.5.bb8
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/nano/nano_2.7.4.bb4
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/ne10/ne10/0001-CMakeLists.txt-Remove-mthumb-interwork.patch44
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/ne10/ne10/0001-Dont-specify-march-explicitly.patch38
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/ne10/ne10_1.2.1.bb14
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/ode/ode_0.13.bb3
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/open-vcdiff/open-vcdiff_0.8.4.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/openct/openct_0.6.20.bb8
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/opencv/opencv-samples_2.4.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/opencv/opencv/0001-3rdparty-ippicv-Use-pre-downloaded-ipp.patch2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/opencv/opencv/0001-Make-opencv-ts-create-share-library-intead-of-static.patch26
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/opencv/opencv/0001-Revert-cuda-fix-fp16-compilation.patch27
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/opencv/opencv/0001-To-fix-errors-as-following.patch53
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/opencv/opencv/0001-tracking-make-opencv_dnn-dependancy-optional.patch243
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/opencv/opencv/0002-Revert-check-FP16-build-condition-correctly.patch245
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/opencv/opencv/fixgcc60.patch30
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/opencv/opencv/uselocalxfeatures.patch12
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/opencv/opencv/useoeprotobuf.patch13
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/opencv/opencv_2.4.bb6
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/opencv/opencv_3.2.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-support/opencv/opencv_3.1.bb)95
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/openipmi/files/do-not-install-pyc-and-pyo.patch25
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/openipmi/files/fix-symlink-install-error-in-cmdlang.patch22
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/openipmi/files/include_sys_types.patch17
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/openipmi/files/ipmi-init-fix-the-arguments.patch41
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/openipmi/files/ipmi.service12
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/openipmi/files/makefile-add-ldflags.patch19
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/openipmi/files/openipmi-don-t-rm-.libs.patch32
-rwxr-xr-ximport-layers/meta-openembedded/meta-oe/recipes-support/openipmi/files/openipmi-helper512
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/openipmi/files/openipmi-no-openipmigui-man.patch26
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/openipmi/files/openipmi-remove-host-path-from-la_LDFLAGS.patch85
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/openipmi/openipmi_2.0.22.bb112
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/openldap/openldap_2.4.44.bb8
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/openmotif/openmotif_2.3.3.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/opensync/wbxml2_0.10.8.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/openwbem/openwbem_3.2.3.bb4
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/picocom/picocom_1.7.bb19
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/picocom/picocom_git.bb23
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/pidgin/pidgin-otr_4.0.0.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/pidgin/pidgin_2.11.0.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/pngcheck/pngcheck/0001-make-Respect-variables-from-environement.patch60
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/pngcheck/pngcheck/0001-png-fix-IDAT-windowsize-Fix-format-string-errors-in-.patch36
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/pngcheck/pngcheck/10-pngsplit-format-strings.patch40
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/pngcheck/pngcheck_2.3.0.bb12
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/poco/poco_1.7.8.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-support/poco/poco_1.7.5.bb)19
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/poppler/poppler_0.53.0.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-support/poppler/poppler_0.47.0.bb)13
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/portaudio/portaudio-v19_20161030.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-support/portaudio/portaudio-v19_20140130.bb)8
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/postgresql/postgresql.inc18
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/postgresql/postgresql_9.4.11.bb11
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/postgresql/postgresql_9.4.8.bb14
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/procmail/procmail_3.22.bb3
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/psqlodbc/psqlodbc_09.05.0300.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/raptor2/files/0001-configure.ac-do-additional-checks-on-libxml2-also-wh.patch34
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/raptor2/raptor2_2.0.15.bb25
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/samsung-soc-utils/s3c24xx-gpio_svn.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/samsung-soc-utils/s3c64xx-gpio_svn.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/sdparm/files/make-sysroot-work.patch14
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/sdparm/sdparm_1.10.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-support/sdparm/sdparm_1.09.bb)4
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/sharutils/sharutils-4.14/fix-for-cross-compiling.patch29
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/sharutils/sharutils/0001-Fix-build-with-clang.patch29
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/sharutils/sharutils_4.14.bb18
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/sharutils/sharutils_4.15.2.bb21
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/sqlite/sqlite-2.8.17/0001-shell.c-Fix-format-not-a-string-literal-warning.patch32
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/sqlite/sqlite_2.8.17.bb8
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/srecord/files/add-option-to-remove-docs.patch57
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/srecord/srecord_1.64.bb23
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/synergy/synergy_git.bb5
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/syslog-ng/files/Fix-the-memory-leak-problem-for-mutex.patch58
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/syslog-ng/files/configure.patch23
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/syslog-ng/files/dbifix.patch20
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/syslog-ng/files/fix-a-memory-leak-in-log_driver_free.patch33
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/syslog-ng/files/syslog-ng.conf4
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/syslog-ng/files/syslog-ng.service-the-syslog-ng-service.patch13
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/syslog-ng/syslog-ng.inc50
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/syslog-ng/syslog-ng_3.6.4.bb15
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/syslog-ng/syslog-ng_3.8.1.bb11
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/system-config-keyboard/system-config-keyboard_1.4.0.bb3
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/system-setup-keyboard/system-setup-keyboard_0.8.8.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/tbb/tbb.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-support/tbb/tbb_4.1.bb)24
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/tbb/tbb/allow-to-build-for-older-arm-cores.patch30
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/tbb/tbb/cross-compile.patch30
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/udisks/udisks/0001-Make-udev-rules-directory-configurable.patch91
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/udisks/udisks2_2.1.7.bb6
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/udisks/udisks_1.0.5.bb12
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/uim/uim/0001-Add-support-for-aarch64.patch82
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/uim/uim_1.8.6.bb3
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/upower/upower_0.99.4.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/usb-modeswitch/usb-modeswitch-data_20170205.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-support/usb-modeswitch/usb-modeswitch-data_20140529.bb)8
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/usb-modeswitch/usb-modeswitch_2.5.0.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-support/usb-modeswitch/usb-modeswitch_2.2.0.bb)6
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/utouch/files/0001-include-sys-stat.h-for-fixing-build-issue-on-musl.patch29
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/utouch/utouch-frame_git.bb4
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/vala-terminal/vala-terminal_git.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_4.3.36.bb6
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_5.1.18.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_5.1.6.bb)8
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/vim/files/disable_acl_header_check.patch6
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/vim/files/vim-add-knob-whether-elf.h-are-checked.patch8
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/vim/vim-tiny_8.0.0427.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-support/vim/vim-tiny_8.0.0022.bb)0
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/vim/vim_8.0.0427.bb (renamed from import-layers/meta-openembedded/meta-oe/recipes-support/vim/vim_8.0.0022.bb)13
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/wmiconfig/wmiconfig/0001-makefile-Pass-CFLAGS-to-compile.patch26
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/wmiconfig/wmiconfig/0002-fix-err-API-to-have-format-string.patch656
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/wmiconfig/wmiconfig_svn.bb5
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/xchat/xchat_2.8.8.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/xdg-user-dirs/files/0001-explicitly-disable-man-generation-disable-documentat.patch31
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/xdg-user-dirs/xdg-user-dirs_0.15.bb3
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/zbar/zbar/0001-make-relies-GNU-extentions.patch32
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/zbar/zbar/0001-undefine-__va_arg_pack.patch51
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/zbar/zbar_0.10.bb28
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-support/zile/zile_2.4.11.bb2
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-test/fwts/fwts/0001-ignore-constant-logical-operand-warning-with-clang.patch83
-rw-r--r--import-layers/meta-openembedded/meta-oe/recipes-test/fwts/fwts_git.bb21
706 files changed, 20909 insertions, 5056 deletions
diff --git a/import-layers/meta-openembedded/meta-oe/README b/import-layers/meta-openembedded/meta-oe/README
index a4fc10e79..fdc56403f 100644
--- a/import-layers/meta-openembedded/meta-oe/README
+++ b/import-layers/meta-openembedded/meta-oe/README
@@ -1,16 +1,15 @@
This layer depends on:
URI: git://github.com/openembedded/oe-core.git
-branch: morty
+branch: pyro
revision: HEAD
-Send pull requests to openembedded-devel@lists.openembedded.org with '[meta-oe]' in the subject'
+Send pull requests to openembedded-devel@lists.openembedded.org with '[meta-oe][pyro]' in the subject'
When sending single patches, please use something like:
-'git send-email -M -1 --to openembedded-devel@lists.openembedded.org --subject-prefix=meta-oe][morty][PATCH'
+'git send-email -M -1 --to openembedded-devel@lists.openembedded.org --subject-prefix=meta-oe][pyro][PATCH'
You are encouraged to fork the mirror on github https://github.com/openembedded/meta-oe/ to share your patches, this is preferred for patch sets consisting of more than one patch. Other services like gitorious, repo.or.cz or self hosted setups are of course accepted as well, 'git fetch <remote>' works the same on all of them. We recommend github because it is free, easy to use, has been proven to be reliable and has a really good web GUI.
-morty branch maintainer(s):
+pyro Branch Maintainer:
Armin Kuster <akuster808@gmail.com>
-
diff --git a/import-layers/meta-openembedded/meta-oe/classes/breakpad.bbclass b/import-layers/meta-openembedded/meta-oe/classes/breakpad.bbclass
index b3abf278d..36f11ff48 100644
--- a/import-layers/meta-openembedded/meta-oe/classes/breakpad.bbclass
+++ b/import-layers/meta-openembedded/meta-oe/classes/breakpad.bbclass
@@ -10,11 +10,11 @@ CXXFLAGS += "-I${STAGING_DIR_TARGET}${includedir}/breakpad "
BREAKPAD_BIN ?= ""
python () {
- breakpad_bin = d.getVar("BREAKPAD_BIN", True)
+ breakpad_bin = d.getVar("BREAKPAD_BIN")
if not breakpad_bin:
- PN = d.getVar("PN", True)
- FILE = os.path.basename(d.getVar("FILE", True))
+ PN = d.getVar("PN")
+ FILE = os.path.basename(d.getVar("FILE"))
bb.error("To build %s, see breakpad.bbclass for instructions on \
setting up your Breakpad configuration" % PN)
raise ValueError('BREAKPAD_BIN not defined in %s' % PN)
diff --git a/import-layers/meta-openembedded/meta-oe/classes/gitpkgv.bbclass b/import-layers/meta-openembedded/meta-oe/classes/gitpkgv.bbclass
index 8cd4bfd1e..2d9680a35 100644
--- a/import-layers/meta-openembedded/meta-oe/classes/gitpkgv.bbclass
+++ b/import-layers/meta-openembedded/meta-oe/classes/gitpkgv.bbclass
@@ -52,14 +52,14 @@ def get_git_pkgv(d, use_tags):
import bb
from pipes import quote
- src_uri = d.getVar('SRC_URI', 1).split()
+ src_uri = d.getVar('SRC_URI').split()
fetcher = bb.fetch2.Fetch(src_uri, d)
ud = fetcher.ud
#
# If SRCREV_FORMAT is set respect it for tags
#
- format = d.getVar('SRCREV_FORMAT', True)
+ format = d.getVar('SRCREV_FORMAT')
if not format:
names = []
for url in ud.values():
@@ -110,9 +110,9 @@ def get_git_pkgv(d, use_tags):
d, quiet=True).strip()
ver = gitpkgv_drop_tag_prefix(output)
except Exception:
- ver = "0.0-%s-g%s" % (commits, rev[:7])
+ ver = "0.0-%s-g%s" % (commits, vars['rev'][:7])
else:
- ver = "%s+%s" % (commits, rev[:7])
+ ver = "%s+%s" % (commits, vars['rev'][:7])
format = format.replace(name, ver)
diff --git a/import-layers/meta-openembedded/meta-oe/classes/gitver.bbclass b/import-layers/meta-openembedded/meta-oe/classes/gitver.bbclass
index 91541437d..380374ab2 100644
--- a/import-layers/meta-openembedded/meta-oe/classes/gitver.bbclass
+++ b/import-layers/meta-openembedded/meta-oe/classes/gitver.bbclass
@@ -23,7 +23,7 @@ def gitrev_run(cmd, path):
def get_git_pv(d, tagadjust=None):
import os
- srcdir = d.getVar("EXTERNALSRC", True) or d.getVar("S", True)
+ srcdir = d.getVar("EXTERNALSRC") or d.getVar("S")
gitdir = os.path.abspath(os.path.join(srcdir, ".git"))
try:
ver = gitrev_run("git describe --tags", gitdir)
@@ -45,11 +45,11 @@ def get_git_pv(d, tagadjust=None):
def get_git_hash(d):
import os
- srcdir = d.getVar("EXTERNALSRC", True) or d.getVar("S", True)
+ srcdir = d.getVar("EXTERNALSRC") or d.getVar("S")
gitdir = os.path.abspath(os.path.join(srcdir, ".git"))
try:
- return gitrev_run("git rev-parse HEAD", gitdir)
-
+ rev = gitrev_run("git rev-list HEAD -1")
+ return rev[:7]
except Exception as exc:
bb.fatal(str(exc))
@@ -79,6 +79,6 @@ def mark_recipe_dependencies(path, d):
mark_dependency(d, tagdir)
python () {
- srcdir = d.getVar("EXTERNALSRC", True) or d.getVar("S", True)
+ srcdir = d.getVar("EXTERNALSRC") or d.getVar("S")
mark_recipe_dependencies(srcdir, d)
}
diff --git a/import-layers/meta-openembedded/meta-oe/classes/machine_kernel_pr.bbclass b/import-layers/meta-openembedded/meta-oe/classes/machine_kernel_pr.bbclass
index 463b64d8e..e48bd017f 100644
--- a/import-layers/meta-openembedded/meta-oe/classes/machine_kernel_pr.bbclass
+++ b/import-layers/meta-openembedded/meta-oe/classes/machine_kernel_pr.bbclass
@@ -1,6 +1,6 @@
python __anonymous () {
- machine_kernel_pr = d.getVar('MACHINE_KERNEL_PR', True)
+ machine_kernel_pr = d.getVar('MACHINE_KERNEL_PR')
if machine_kernel_pr:
d.setVar('PR', machine_kernel_pr)
diff --git a/import-layers/meta-openembedded/meta-oe/classes/meson.bbclass b/import-layers/meta-openembedded/meta-oe/classes/meson.bbclass
new file mode 100644
index 000000000..c33174a21
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/classes/meson.bbclass
@@ -0,0 +1,100 @@
+inherit python3native
+
+DEPENDS_append = " meson-native ninja-native"
+
+# As Meson enforces out-of-tree builds we can just use cleandirs
+B = "${WORKDIR}/build"
+do_configure[cleandirs] = "${B}"
+
+# Where the meson.build build configuration is
+MESON_SOURCEPATH = "${S}"
+
+# These variables in the environment override the *native* tools, not the cross.
+export CC = "${BUILD_CC}"
+export CXX = "${BUILD_CXX}"
+export LD = "${BUILD_LD}"
+export AR = "${BUILD_AR}"
+
+def noprefix(var, d):
+ return d.getVar(var, True).replace(d.getVar('prefix', True) + '/', '', 1)
+
+MESONOPTS = " --prefix ${prefix} \
+ --bindir ${@noprefix('bindir', d)} \
+ --sbindir ${@noprefix('sbindir', d)} \
+ --datadir ${@noprefix('datadir', d)} \
+ --libdir ${@noprefix('libdir', d)} \
+ --libexecdir ${@noprefix('libexecdir', d)} \
+ --includedir ${@noprefix('includedir', d)} \
+ --mandir ${@noprefix('mandir', d)} \
+ --infodir ${@noprefix('infodir', d)} \
+ --localedir ${@noprefix('localedir', d)} \
+ --sysconfdir ${sysconfdir} \
+ --localstatedir ${localstatedir} \
+ --sharedstatedir ${sharedstatedir}"
+
+MESON_C_ARGS = "${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS}"
+
+MESON_HOST_ENDIAN = "${@bb.utils.contains('SITEINFO_ENDIANNESS', 'be', 'big', 'little', d)}"
+MESON_TARGET_ENDIAN = "${@bb.utils.contains('TUNE_FEATURES', 'bigendian', 'big', 'little', d)}"
+
+EXTRA_OEMESON += "${PACKAGECONFIG_CONFARGS}"
+
+MESON_CROSS_FILE = ""
+MESON_CROSS_FILE_class-target = "--cross-file ${WORKDIR}/meson.cross"
+
+def meson_array(var, d):
+ return "', '".join(d.getVar(var, True).split()).join(("'", "'"))
+
+addtask write_config before do_configure
+do_write_config[vardeps] += "MESON_C_ARGS TOOLCHAIN_OPTIONS"
+do_write_config() {
+ # This needs to be Py to split the args into single-element lists
+ cat >${WORKDIR}/meson.cross <<EOF
+[binaries]
+c = '${HOST_PREFIX}gcc'
+cpp = '${HOST_PREFIX}g++'
+ar = '${HOST_PREFIX}ar'
+ld = '${HOST_PREFIX}ld'
+strip = '${HOST_PREFIX}strip'
+readelf = '${HOST_PREFIX}readelf'
+pkgconfig = 'pkg-config'
+
+[properties]
+c_args = [${@meson_array('MESON_C_ARGS', d)}]
+cpp_args = [${@meson_array('TOOLCHAIN_OPTIONS', d)}]
+c_link_args = [${@meson_array('TOOLCHAIN_OPTIONS', d)}]
+cpp_link_args = [${@meson_array('TOOLCHAIN_OPTIONS', d)}]
+
+[host_machine]
+system = '${HOST_OS}'
+cpu_family = '${HOST_ARCH}'
+cpu = '${HOST_ARCH}'
+endian = '${MESON_HOST_ENDIAN}'
+
+[target_machine]
+system = '${TARGET_OS}'
+cpu_family = '${TARGET_ARCH}'
+cpu = '${TARGET_ARCH}'
+endian = '${MESON_TARGET_ENDIAN}'
+EOF
+}
+
+CONFIGURE_FILES = "meson.build"
+
+meson_do_configure() {
+ if ! meson ${MESONOPTS} "${MESON_SOURCEPATH}" "${B}" ${MESON_CROSS_FILE} ${EXTRA_OEMESON}; then
+ cat ${B}/meson-logs/meson-log.txt
+ bbfatal_log meson failed
+ fi
+}
+
+do_compile[progress] = "outof:^\[(\d+)/(\d+)\]\s+"
+meson_do_compile() {
+ ninja ${PARALLEL_MAKE}
+}
+
+meson_do_install() {
+ DESTDIR='${D}' ninja ${PARALLEL_MAKEINST} install
+}
+
+EXPORT_FUNCTIONS do_configure do_compile do_install
diff --git a/import-layers/meta-openembedded/meta-oe/classes/socorro-syms.bbclass b/import-layers/meta-openembedded/meta-oe/classes/socorro-syms.bbclass
index 3f6ae6319..cc435aba1 100644
--- a/import-layers/meta-openembedded/meta-oe/classes/socorro-syms.bbclass
+++ b/import-layers/meta-openembedded/meta-oe/classes/socorro-syms.bbclass
@@ -21,10 +21,10 @@ FILES_${PN}-socorro-syms = "/usr/share/socorro-syms"
python symbol_file_preprocess() {
- package_dir = d.getVar("PKGD", True)
- breakpad_bin = d.getVar("BREAKPAD_BIN", True)
+ package_dir = d.getVar("PKGD")
+ breakpad_bin = d.getVar("BREAKPAD_BIN")
if not breakpad_bin:
- package_name = d.getVar("PN", True)
+ package_name = d.getVar("PN")
bb.error("Package %s depends on Breakpad via socorro-syms. See "
"breakpad.bbclass for instructions on setting up the Breakpad "
"configuration." % package_name)
@@ -106,7 +106,7 @@ def repository_path(d, source_file_path):
# child of the build directory TOPDIR.
git_root_dir = run_command(
"git rev-parse --show-toplevel", os.path.dirname(source_file_path))
- if not git_root_dir.startswith(d.getVar("TOPDIR", True)):
+ if not git_root_dir.startswith(d.getVar("TOPDIR")):
return None
return git_repository_path(source_file_path)
diff --git a/import-layers/meta-openembedded/meta-oe/conf/distro/include/meta_oe_security_flags.inc b/import-layers/meta-openembedded/meta-oe/conf/distro/include/meta_oe_security_flags.inc
index 815fb16c7..03868bfaf 100644
--- a/import-layers/meta-openembedded/meta-oe/conf/distro/include/meta_oe_security_flags.inc
+++ b/import-layers/meta-openembedded/meta-oe/conf/distro/include/meta_oe_security_flags.inc
@@ -1,5 +1,6 @@
# Build errors with the pie options enabled
SECURITY_CFLAGS_pn-libdbus-c++ = "${SECURITY_NO_PIE_CFLAGS}"
+SECURITY_CFLAGS_pn-libdevmapper = "${SECURITY_NO_PIE_CFLAGS}"
SECURITY_CFLAGS_pn-lvm2 = "${SECURITY_NO_PIE_CFLAGS}"
SECURITY_CFLAGS_pn-rrdtool = "${SECURITY_NO_PIE_CFLAGS}"
diff --git a/import-layers/meta-openembedded/meta-oe/conf/layer.conf b/import-layers/meta-openembedded/meta-oe/conf/layer.conf
index bdc821006..54425c68e 100644
--- a/import-layers/meta-openembedded/meta-oe/conf/layer.conf
+++ b/import-layers/meta-openembedded/meta-oe/conf/layer.conf
@@ -79,3 +79,5 @@ FREESMARTPHONE_GIT = "git://git.freesmartphone.org"
# Override security flags
require conf/distro/include/meta_oe_security_flags.inc
+
+HOSTTOOLS += "id"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-benchmark/glmark2/files/Fix-build-error-due-missing-space-before-macro.patch b/import-layers/meta-openembedded/meta-oe/recipes-benchmark/glmark2/files/Fix-build-error-due-missing-space-before-macro.patch
deleted file mode 100644
index 00eb2ed73..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-benchmark/glmark2/files/Fix-build-error-due-missing-space-before-macro.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From 3fb9b6aeed2e2758239e59ba9ba1ca98535fe510 Mon Sep 17 00:00:00 2001
-From: Otavio Salvador <otavio@ossystems.com.br>
-Date: Fri, 19 Aug 2016 15:08:44 +0000
-Subject: [PATCH] Fix build error due missing space before macro
-Organization: O.S. Systems Software LTDA.
-
-Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
----
- src/native-state-x11.cpp | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/native-state-x11.cpp b/src/native-state-x11.cpp
-index 3b66b77..3c1703b 100644
---- a/src/native-state-x11.cpp
-+++ b/src/native-state-x11.cpp
-@@ -60,7 +60,7 @@ NativeStateX11::display()
- bool
- NativeStateX11::create_window(WindowProperties const& properties)
- {
-- static const char *win_name("glmark2 "GLMARK_VERSION);
-+ static const char *win_name("glmark2 " GLMARK_VERSION);
-
- if (!xdpy_) {
- Log::error("Error: X11 Display has not been initialized!\n");
---
-2.1.4
-
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-benchmark/glmark2/files/Fix-deprecated-declarations.patch b/import-layers/meta-openembedded/meta-oe/recipes-benchmark/glmark2/files/Fix-deprecated-declarations.patch
deleted file mode 100644
index 7a25de790..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-benchmark/glmark2/files/Fix-deprecated-declarations.patch
+++ /dev/null
@@ -1,61 +0,0 @@
-Index: git/src/image-reader.cpp
-===================================================================
---- git.orig/src/image-reader.cpp 2016-07-29 16:17:51.000000000 -0500
-+++ git/src/image-reader.cpp 2016-07-29 16:18:43.000000000 -0500
-@@ -120,7 +120,7 @@
-
- Log::debug("Reading PNG file %s\n", filename.c_str());
-
-- const std::auto_ptr<std::istream> is_ptr(Util::get_resource(filename));
-+ const std::unique_ptr<std::istream> is_ptr(Util::get_resource(filename));
- if (!(*is_ptr)) {
- Log::error("Cannot open file %s!\n", filename.c_str());
- return false;
-Index: git/src/libmatrix/shader-source.cc
-===================================================================
---- git.orig/src/libmatrix/shader-source.cc 2016-07-29 16:18:14.000000000 -0500
-+++ git/src/libmatrix/shader-source.cc 2016-07-29 16:18:43.000000000 -0500
-@@ -34,7 +34,7 @@
- bool
- ShaderSource::load_file(const std::string& filename, std::string& str)
- {
-- std::auto_ptr<std::istream> is_ptr(Util::get_resource(filename));
-+ std::unique_ptr<std::istream> is_ptr(Util::get_resource(filename));
- std::istream& inputFile(*is_ptr);
-
- if (!inputFile)
-Index: git/src/model.cpp
-===================================================================
---- git.orig/src/model.cpp 2016-07-29 16:18:00.000000000 -0500
-+++ git/src/model.cpp 2016-07-29 16:18:43.000000000 -0500
-@@ -361,7 +361,7 @@
-
- Log::debug("Loading model from 3ds file '%s'\n", filename.c_str());
-
-- const std::auto_ptr<std::istream> input_file_ptr(Util::get_resource(filename));
-+ const std::unique_ptr<std::istream> input_file_ptr(Util::get_resource(filename));
- std::istream& input_file(*input_file_ptr);
-
- if (!input_file) {
-@@ -681,7 +681,7 @@
- {
- Log::debug("Loading model from obj file '%s'\n", filename.c_str());
-
-- const std::auto_ptr<std::istream> input_file_ptr(Util::get_resource(filename));
-+ const std::unique_ptr<std::istream> input_file_ptr(Util::get_resource(filename));
- std::istream& inputFile(*input_file_ptr);
- if (!inputFile)
- {
-Index: git/src/scene-jellyfish.cpp
-===================================================================
---- git.orig/src/scene-jellyfish.cpp 2016-07-29 16:18:08.000000000 -0500
-+++ git/src/scene-jellyfish.cpp 2016-07-29 16:18:43.000000000 -0500
-@@ -272,7 +272,7 @@
- {
- Log::debug("Loading model from file '%s'\n", filename.c_str());
-
-- const std::auto_ptr<std::istream> input_file_ptr(Util::get_resource(filename));
-+ const std::unique_ptr<std::istream> input_file_ptr(Util::get_resource(filename));
- std::istream& inputFile(*input_file_ptr);
- if (!inputFile)
- {
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-benchmark/glmark2/files/build-Check-packages-to-be-used-by-the-enabled-flavo.patch b/import-layers/meta-openembedded/meta-oe/recipes-benchmark/glmark2/files/build-Check-packages-to-be-used-by-the-enabled-flavo.patch
index ff13329ae..72b8debe5 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-benchmark/glmark2/files/build-Check-packages-to-be-used-by-the-enabled-flavo.patch
+++ b/import-layers/meta-openembedded/meta-oe/recipes-benchmark/glmark2/files/build-Check-packages-to-be-used-by-the-enabled-flavo.patch
@@ -18,9 +18,9 @@ index cab62a3..e7eaed0 100644
--- a/wscript
+++ b/wscript
@@ -121,13 +121,17 @@ def configure(ctx):
- ('mirclient','mirclient', '0.13', list_contains(Options.options.flavors, 'mir')),
- ('wayland-client','wayland-client', None, list_contains(Options.options.flavors, 'wayland')),
- ('wayland-egl','wayland-egl', None, list_contains(Options.options.flavors, 'wayland'))]
+ ('mirclient','mirclient', '0.13', list_contains(ctx.options.flavors, 'mir')),
+ ('wayland-client','wayland-client', None, list_contains(ctx.options.flavors, 'wayland')),
+ ('wayland-egl','wayland-egl', None, list_contains(ctx.options.flavors, 'wayland'))]
- for (pkg, uselib, atleast, mandatory) in opt_pkgs:
+ for (pkg, uselib, atleast, check) in opt_pkgs:
+ # Check packages required by the flavors
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-benchmark/glmark2/glmark2_git.bb b/import-layers/meta-openembedded/meta-oe/recipes-benchmark/glmark2/glmark2_git.bb
index a2558a72a..26c5c0482 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-benchmark/glmark2/glmark2_git.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-benchmark/glmark2/glmark2_git.bb
@@ -12,13 +12,13 @@ DEPENDS = "libpng12 jpeg"
PV = "2014.03+${SRCPV}"
-SRC_URI = "git://github.com/glmark2/glmark2.git;protocol=https \
- file://build-Check-packages-to-be-used-by-the-enabled-flavo.patch \
- file://0001-Fix-wl_surface-should-be-destoryed-after-the-wl_wind.patch \
- file://Fix-build-error-due-missing-space-before-macro.patch \
- file://Fix-configure-for-sqrt-check.patch \
- file://Fix-deprecated-declarations.patch"
-SRCREV = "fa71af2dfab711fac87b9504b6fc9862f44bf72a"
+SRC_URI = " \
+ git://github.com/glmark2/glmark2.git;protocol=https \
+ file://build-Check-packages-to-be-used-by-the-enabled-flavo.patch \
+ file://0001-Fix-wl_surface-should-be-destoryed-after-the-wl_wind.patch \
+ file://Fix-configure-for-sqrt-check.patch \
+"
+SRCREV = "f413c5b423250b4fde8f95639ad368d5b02c5b9b"
S = "${WORKDIR}/git"
@@ -39,7 +39,7 @@ PACKAGECONFIG[wayland-gl] = ",,virtual/libgl wayland"
PACKAGECONFIG[wayland-gles2] = ",,virtual/libgles2 wayland"
python __anonymous() {
- packageconfig = (d.getVar("PACKAGECONFIG", True) or "").split()
+ packageconfig = (d.getVar("PACKAGECONFIG") or "").split()
flavors = []
if "x11-gles2" in packageconfig:
flavors.append("x11-glesv2")
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-benchmark/iozone3/iozone3/parallelism.patch b/import-layers/meta-openembedded/meta-oe/recipes-benchmark/iozone3/iozone3/parallelism.patch
new file mode 100644
index 000000000..d5622ed2c
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-benchmark/iozone3/iozone3/parallelism.patch
@@ -0,0 +1,97 @@
+remove libasync.o and libbif.o from deps
+
+there are no implicit rules to build them and they get wrong CFLAGS
+when compiled with implicit rule.
+
+They are built as part of iozone_linux.o target anyway
+
+Only fixed linux targets for now
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+Upstream-Status: Pending
+
+
+
+--- current/makefile.org 2016-12-06 02:19:10.367911020 +0000
++++ current/makefile 2016-12-06 02:21:38.767911020 +0000
+@@ -167,7 +167,7 @@
+ #
+ # GNU 'C' compiler Linux build with threads, largefiles, async I/O
+ #
+-linux: iozone_linux.o libasync.o libbif.o fileop_linux.o pit_server.o
++linux: iozone_linux.o fileop_linux.o pit_server.o
+ $(CC) -O3 $(LDFLAGS) iozone_linux.o libasync.o libbif.o -lpthread \
+ -lrt -o iozone
+ $(CC) -O3 -Dlinux fileop_linux.o -o fileop
+@@ -176,7 +176,7 @@
+ #
+ # GNU 'C' compiler Linux build for powerpc chip with threads, largefiles, async I/O
+ #
+-linux-powerpc: iozone_linux-powerpc.o libbif.o libasync.o fileop_linux-ppc.o pit_server.o
++linux-powerpc: iozone_linux-powerpc.o fileop_linux-ppc.o pit_server.o
+ $(CC) -O3 $(LDFLAGS) iozone_linux-powerpc.o libasync.o \
+ libbif.o -lpthread -lrt -o iozone
+ $(CC) -O3 -Dlinux fileop_linux-ppc.o -o fileop
+@@ -184,7 +184,7 @@
+ #
+ # GNU 'C' compiler Linux build for sparc chip with threads, largefiles, async I/O
+ #
+-linux-sparc: iozone_linux-sparc.o libbif.o libasync.o fileop_linux.o pit_server.o
++linux-sparc: iozone_linux-sparc.o fileop_linux.o pit_server.o
+ $(CC) -O3 $(LDFLAGS) iozone_linux-sparc.o libasync.o libbif.o \
+ -lpthread -lrt -o iozone
+ $(CC) -O3 -Dlinux fileop_linux.o -o fileop
+@@ -193,7 +193,7 @@
+ #
+ # GNU 'C' compiler Linux build with threads, largefiles, async I/O
+ #
+-linux-ia64: iozone_linux-ia64.o libbif.o libasync.o fileop_linux-ia64.o pit_server.o
++linux-ia64: iozone_linux-ia64.o fileop_linux-ia64.o pit_server.o
+ $(CC) -O3 $(LDFLAGS) iozone_linux-ia64.o libbif.o libasync.o \
+ -lrt -lpthread -o iozone
+ $(CC) -O3 -Dlinux fileop_linux-ia64.o -o fileop
+@@ -202,7 +202,7 @@
+ #
+ # GNU 'C' compiler Linux build for powerpc chip with threads, largefiles, async I/O
+ #
+-linux-powerpc64: iozone_linux-powerpc64.o libbif.o libasync.o fileop_linux-ppc64.o pit_server-linux-powerpc64.o
++linux-powerpc64: iozone_linux-powerpc64.o fileop_linux-ppc64.o pit_server-linux-powerpc64.o
+ $(CC) -O3 -Dunix -DHAVE_ANSIC_C -DSHARED_MEM -DASYNC_IO \
+ -D_LARGEFILE64_SOURCE -Dlinux \
+ iozone_linux-powerpc64.o libasync.o libbif.o -lpthread \
+@@ -213,7 +213,7 @@
+ #
+ # GNU 'C' compiler Linux build with threads, largefiles, async I/O
+ #
+-linux-arm: iozone_linux-arm.o libbif.o libasync.o fileop_linux-arm.o pit_server.o
++linux-arm: iozone_linux-arm.o fileop_linux-arm.o pit_server.o
+ $(CC) -O3 $(LDFLAGS) iozone_linux-arm.o libbif.o libasync.o \
+ -lrt -lpthread -o iozone
+ $(CC) -O3 -Dlinux fileop_linux-arm.o -o fileop
+@@ -222,7 +222,7 @@
+ #
+ # GNU 'C' compiler Linux build with threads, largefiles, async I/O
+ #
+-linux-AMD64: iozone_linux-AMD64.o libbif.o libasync.o fileop_linux-AMD64.o pit_server.o
++linux-AMD64: iozone_linux-AMD64.o fileop_linux-AMD64.o pit_server.o
+ $(CC) -O3 $(LDFLAGS) iozone_linux-AMD64.o libbif.o libasync.o \
+ -lrt -lpthread -o iozone
+ $(CC) -O3 -Dlinux fileop_linux-AMD64.o -o fileop
+@@ -231,7 +231,7 @@
+ #
+ # GNU 'C' compiler Linux build with S/390, threads, largfiles, async I/O
+ #
+-linux-S390: iozone_linux-s390.o libbif.o libasync.o fileop_linux-s390.o pit_server.o
++linux-S390: iozone_linux-s390.o fileop_linux-s390.o pit_server.o
+ $(CC) -O2 $(LDFLAGS) -lpthread -lrt iozone_linux-s390.o \
+ libbif.o libasync.o -o iozone
+ $(CC) -O3 -Dlinux fileop_linux-s390.o -o fileop
+@@ -240,7 +240,7 @@
+ #
+ # GNU 'C' compiler Linux build with S/390, threads, largfiles, async I/O
+ #
+-linux-S390X: iozone_linux-s390x.o libbif.o libasync.o fileop_linux-s390x.o pit_server.o
++linux-S390X: iozone_linux-s390x.o fileop_linux-s390x.o pit_server.o
+ $(CC) -O2 $(LDFLAGS) -lpthread -lrt iozone_linux-s390x.o \
+ libbif.o libasync.o -o iozone
+ $(CC) -O3 -Dlinux fileop_linux-s390x.o -o fileop
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-benchmark/iozone3/iozone3_434.bb b/import-layers/meta-openembedded/meta-oe/recipes-benchmark/iozone3/iozone3_465.bb
index daa36ee0b..2864a4d7f 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-benchmark/iozone3/iozone3_434.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-benchmark/iozone3/iozone3_465.bb
@@ -3,13 +3,15 @@ HOMEPAGE = "http://www.iozone.org/"
AUTHOR = "Don Capps <don.capps2@verizon.net>, William D. Norcott <wnorcott@us.oracle.com>"
SECTION = "console/tests"
LICENSE = "iozone3"
-LIC_FILES_CHKSUM = "file://iozone.c;beginline=268;endline=272;md5=ab42a6185fd0443978871f11a007ac0b"
-
+LIC_FILES_CHKSUM = "file://iozone.c;beginline=37;endline=48;md5=7331260091868dcad0f9edea735b5f4b \
+ file://iozone.c;beginline=260;endline=266;md5=77f9ee51e45b57a7e7519c4fa0b4f00b \
+"
SRC_URI = "http://www.iozone.org/src/current/${BPN}_${PV}.tar \
+ file://parallelism.patch \
file://copyright.txt \
"
-SRC_URI[md5sum] = "3e8f4213581407225065b91774e970ed"
-SRC_URI[sha256sum] = "2c388d9db393a5505b31eca38951883744c69745f687f3c7df5185b4681d462a"
+SRC_URI[md5sum] = "c924e5e46fb1cf8145f420e8e57eb954"
+SRC_URI[sha256sum] = "2e3d72916e7d7340a7c505fc0c3d28553fcc5ff2daf41d811368e55bd4e6a293"
S = "${WORKDIR}/${BPN}_${PV}/src/current/"
@@ -20,6 +22,7 @@ S = "${WORKDIR}/${BPN}_${PV}/src/current/"
#
EXTRA_OEMAKE_powerpc = "linux-powerpc CC='${CC}' GCC='${CC}'"
EXTRA_OEMAKE_powerpc64 = "linux-powerpc64 CC='${CC}' GCC='${CC}'"
+EXTRA_OEMAKE_x86-64 = "linux-AMD64 CC='${CC}' GCC='${CC}'"
EXTRA_OEMAKE_arm = "linux-arm CC='${CC}' GCC='${CC}'"
EXTRA_OEMAKE = "linux CC='${CC}' GCC='${CC}'"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-benchmark/iperf/iperf-2.0.5/0001-fix-out-of-tree-config.patch b/import-layers/meta-openembedded/meta-oe/recipes-benchmark/iperf/iperf-2.0.5/0001-fix-out-of-tree-config.patch
deleted file mode 100644
index e8a029790..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-benchmark/iperf/iperf-2.0.5/0001-fix-out-of-tree-config.patch
+++ /dev/null
@@ -1,52 +0,0 @@
-iperf: fix out of tree configuration
-
-The configure step uses a package header to check for support of types/declares,
-this package header encapsulates all the required system header for providing
-the needed resources. When configured from an out of tree directory the package
-header is not found due to the hard path.
-We now make the path for package header relative to our 'srcdir' so it is
-found appropriately.
-
-Signed-off-by: Awais Belal <awais_belal@mentor.com>
----
-diff --git a/configure.ac b/configure.ac
-index 2b3fd20..d420f9e 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -176,8 +176,8 @@ dnl Check for system services
-
- dnl check for multicast
- if test "$ac_cv_multicast" != no; then
-- AC_CHECK_TYPES(struct ip_mreq,,,[#include "compat/headers_slim.h"])
-- AC_CHECK_DECLS(IP_ADD_MEMBERSHIP,,,[#include "compat/headers_slim.h"])
-+ AC_CHECK_TYPES(struct ip_mreq,,,[#include "${srcdir}/compat/headers_slim.h"])
-+ AC_CHECK_DECLS(IP_ADD_MEMBERSHIP,,,[#include "${srcdir}/compat/headers_slim.h"])
- AC_MSG_CHECKING(for multicast support)
- ac_cv_multicast=no
- if test "$ac_cv_have_decl_IP_ADD_MEMBERSHIP" = yes; then
-@@ -193,9 +193,9 @@ fi
-
- dnl check for IPv6
- if test "$ac_cv_have_ipv6" != no; then
-- AC_CHECK_TYPES(struct sockaddr_storage,,,[#include "compat/headers_slim.h"])
-- AC_CHECK_TYPES(struct sockaddr_in6,,,[#include "compat/headers_slim.h"])
-- AC_CHECK_DECLS(AF_INET6,,,[#include "compat/headers_slim.h"])
-+ AC_CHECK_TYPES(struct sockaddr_storage,,,[#include "${srcdir}/compat/headers_slim.h"])
-+ AC_CHECK_TYPES(struct sockaddr_in6,,,[#include "${srcdir}/compat/headers_slim.h"])
-+ AC_CHECK_DECLS(AF_INET6,,,[#include "${srcdir}/compat/headers_slim.h"])
- AC_MSG_CHECKING(for IPv6 headers and structures)
- ac_cv_have_ipv6=no
- if test "$ac_cv_type_struct_sockaddr_storage" = yes; then
-@@ -211,9 +211,9 @@ fi
-
- if test "$ac_cv_have_ipv6" = yes; then
- if test "$ac_cv_multicast" = yes; then
-- AC_CHECK_TYPES(struct ipv6_mreq,,,[#include "compat/headers_slim.h"])
-- AC_CHECK_DECLS(IPV6_ADD_MEMBERSHIP,,,[#include "compat/headers_slim.h"])
-- AC_CHECK_DECLS(IPV6_MULTICAST_HOPS,,,[#include "compat/headers_slim.h"])
-+ AC_CHECK_TYPES(struct ipv6_mreq,,,[#include "${srcdir}/compat/headers_slim.h"])
-+ AC_CHECK_DECLS(IPV6_ADD_MEMBERSHIP,,,[#include "${srcdir}/compat/headers_slim.h"])
-+ AC_CHECK_DECLS(IPV6_MULTICAST_HOPS,,,[#include "${srcdir}/compat/headers_slim.h"])
- AC_MSG_CHECKING(for IPv6 multicast support)
- ac_cv_have_ipv6_multicast=no
- if test "$ac_cv_type_struct_ipv6_mreq" = yes; then
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-benchmark/iperf/iperf-2.0.5/0002-fix-bool-size-m4.patch b/import-layers/meta-openembedded/meta-oe/recipes-benchmark/iperf/iperf-2.0.5/0002-fix-bool-size-m4.patch
deleted file mode 100644
index 348e316ce..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-benchmark/iperf/iperf-2.0.5/0002-fix-bool-size-m4.patch
+++ /dev/null
@@ -1,16 +0,0 @@
---- iperf-2.0.5/m4/dast.m4.orig 2016-06-15 11:42:03.945581785 -0400
-+++ iperf-2.0.5/m4/dast.m4 2016-06-15 11:42:11.053581641 -0400
-@@ -11,7 +11,12 @@
-
- AC_DEFUN(DAST_CHECK_BOOL, [
-
--AC_CHECK_SIZEOF(bool)
-+if test "$ac_cv_header_stdbool_h" = yes; then
-+ AC_CHECK_SIZEOF(bool,,[#include <stdbool.h>])
-+else
-+ AC_CHECK_SIZEOF(bool)
-+fi
-+
- if test "$ac_cv_sizeof_bool" = 0 ; then
- AC_DEFINE(bool, int)
- fi
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-benchmark/iperf/iperf-2.0.5/iperf-2.0.5_ManPage.patch b/import-layers/meta-openembedded/meta-oe/recipes-benchmark/iperf/iperf-2.0.5/iperf-2.0.5_ManPage.patch
deleted file mode 100755
index 12e8f4631..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-benchmark/iperf/iperf-2.0.5/iperf-2.0.5_ManPage.patch
+++ /dev/null
@@ -1,8 +0,0 @@
-diff --git iperf-2.0.5/man/Makefile.am iperf-2.0.5/man/Makefile.am
- index ed97bc6..728873f 100644
---- iperf-2.0.5/man/Makefile.am
-+++ iperf-2.0.5/man/Makefile.am
-@@ -1,2 +1 @@
--man_MANS = iperf.1
--dist_man_MANS = $(man_MANS)
-+dist_man_MANS = iperf.1
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-benchmark/iperf/iperf_2.0.5.bb b/import-layers/meta-openembedded/meta-oe/recipes-benchmark/iperf/iperf_2.0.5.bb
deleted file mode 100644
index 9981d8275..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-benchmark/iperf/iperf_2.0.5.bb
+++ /dev/null
@@ -1,23 +0,0 @@
-DESCRIPTION = "Iperf is a tool to measure maximum TCP bandwidth, allowing the tuning of various parameters and UDP characteristics"
-HOMEPAGE = "http://dast.nlanr.net/Projects/Iperf/"
-SECTION = "console/network"
-LICENSE = "BSD-2-Clause"
-LIC_FILES_CHKSUM = "file://COPYING;md5=e8478eae9f479e39bc34975193360298"
-
-SRC_URI = " ${SOURCEFORGE_MIRROR}/iperf/${BP}.tar.gz \
- file://iperf-2.0.5_ManPage.patch \
- file://0001-fix-out-of-tree-config.patch \
- file://0002-fix-bool-size-m4.patch \
- "
-
-SRC_URI[md5sum] = "44b5536b67719f4250faed632a3cd016"
-SRC_URI[sha256sum] = "636b4eff0431cea80667ea85a67ce4c68698760a9837e1e9d13096d20362265b"
-
-S = "${WORKDIR}/${BP}"
-
-inherit autotools pkgconfig
-
-EXTRA_OECONF = "--exec-prefix=${STAGING_DIR_HOST}${layout_exec_prefix}"
-
-PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'ipv6', 'ipv6', '', d)}"
-PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6,"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-benchmark/iperf3/iperf3/0001-include-stdint.h-for-various-std-c99-int-types.patch b/import-layers/meta-openembedded/meta-oe/recipes-benchmark/iperf3/iperf3/0001-include-stdint.h-for-various-std-c99-int-types.patch
new file mode 100644
index 000000000..ae3620800
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-benchmark/iperf3/iperf3/0001-include-stdint.h-for-various-std-c99-int-types.patch
@@ -0,0 +1,39 @@
+From be653711fb92d2430b3ecc546b4e3ad927d19ec5 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 14 Jul 2017 12:59:42 -0700
+Subject: [PATCH 1/2] include stdint.h for various std c99 int types
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/cjson.h | 2 ++
+ src/timer.h | 1 +
+ 2 files changed, 3 insertions(+)
+
+diff --git a/src/cjson.h b/src/cjson.h
+index fb8cd3b..69cd272 100644
+--- a/src/cjson.h
++++ b/src/cjson.h
+@@ -23,6 +23,8 @@
+ #ifndef cJSON__h
+ #define cJSON__h
+
++#include <stdint.h>
++
+ #ifdef __cplusplus
+ extern "C"
+ {
+diff --git a/src/timer.h b/src/timer.h
+index 0f9c5eb..0b195be 100644
+--- a/src/timer.h
++++ b/src/timer.h
+@@ -31,6 +31,7 @@
+ #define __TIMER_H
+
+ #include <sys/time.h>
++#include <stdint.h>
+
+ /* TimerClientData is an opaque value that tags along with a timer. The
+ ** client can use it for whatever, and it gets passed to the callback when
+--
+2.13.3
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-benchmark/iperf3/iperf3/0002-Remove-pg-from-profile_CFLAGS.patch b/import-layers/meta-openembedded/meta-oe/recipes-benchmark/iperf3/iperf3/0002-Remove-pg-from-profile_CFLAGS.patch
new file mode 100644
index 000000000..06eb41ac0
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-benchmark/iperf3/iperf3/0002-Remove-pg-from-profile_CFLAGS.patch
@@ -0,0 +1,31 @@
+From 6db0e28f906bc3784019dfb5bb011237a8034fda Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 14 Jul 2017 13:00:16 -0700
+Subject: [PATCH 2/2] Remove -pg from profile_CFLAGS
+
+musl fails to link with missing gcrt1.o
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/Makefile.am | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/src/Makefile.am b/src/Makefile.am
+index 23b0c72..6268145 100644
+--- a/src/Makefile.am
++++ b/src/Makefile.am
+@@ -49,9 +49,9 @@ iperf3_LDFLAGS = -g
+ iperf3_profile_SOURCES = main.c \
+ $(libiperf_la_SOURCES)
+
+-iperf3_profile_CFLAGS = -pg -g
++iperf3_profile_CFLAGS = -g
+ iperf3_profile_LDADD = libiperf.la
+-iperf3_profile_LDFLAGS = -pg -g
++iperf3_profile_LDFLAGS = -g
+
+ # Specify the sources and various flags for the test cases
+ t_timer_SOURCES = t_timer.c
+--
+2.13.3
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-benchmark/iperf3/iperf3_git.bb b/import-layers/meta-openembedded/meta-oe/recipes-benchmark/iperf3/iperf3_git.bb
index d19aa1ec4..4a01896ca 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-benchmark/iperf3/iperf3_git.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-benchmark/iperf3/iperf3_git.bb
@@ -11,10 +11,11 @@ AUTHOR = "ESNET <info@es.net>, Lawrence Berkeley National Laboratory <websupport
LICENSE = "BSD"
LIC_FILES_CHKSUM = "file://LICENSE;md5=8c3434c5a9a53c78c7739f0bc9e5adda"
-SRC_URI = "\
- git://github.com/esnet/iperf.git \
- file://automake-foreign.patch \
-"
+SRC_URI = "git://github.com/esnet/iperf.git \
+ file://automake-foreign.patch \
+ file://0001-include-stdint.h-for-various-std-c99-int-types.patch \
+ file://0002-Remove-pg-from-profile_CFLAGS.patch \
+ "
PV = "3.1.3+gitr${SRCPV}"
SRCREV = "099244ec686b620393e9845478a554b1c7ca5c8b"
@@ -25,4 +26,6 @@ inherit autotools
PACKAGECONFIG[lksctp] = "ac_cv_header_netinet_sctp_h=yes,ac_cv_header_netinet_sctp_h=no,lksctp-tools"
+CFLAGS += "-D_GNU_SOURCE"
+
BBCLASSEXTEND = "native"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-benchmark/libhugetlbfs/files/0001-install-perl-lib-to-directory-perl-instead-of-perl5.patch b/import-layers/meta-openembedded/meta-oe/recipes-benchmark/libhugetlbfs/files/0001-install-perl-lib-to-directory-perl-instead-of-perl5.patch
deleted file mode 100644
index 0b8d0e4d5..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-benchmark/libhugetlbfs/files/0001-install-perl-lib-to-directory-perl-instead-of-perl5.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-Upstream-Status: Inappropriate [oe-core specific]
-
-libhugetlbfs depends on perl, and perl installs a directory 'perl'
-and make a symlink 'perl5' to it. So just install perl libs in
-libhugetlbfs to directory 'perl' instead of 'perl5'. This can avoid
-the following error:
-| CalledProcessError: Command 'tar -cf - -C .../perl/5.14.3-r1/sysroot-destdir
-| -ps . | tar -xf - -C .../tmp/sysroots/t4240qds'
-| returned non-zero exit status 2 with output
-| tar: ./usr/lib/perl5: Cannot create symlink to `perl': File exists
-| tar: Exiting with failure status due to previous errors
-
-
-Signed-off-by: Ting Liu <b28495@freescale.com>
-
---- a/Makefileold 2013-10-11 23:07:31.759421318 -0500
-+++ b/Makefile 2013-10-11 23:08:01.935571122 -0500
-@@ -173,17 +173,17 @@
- DOCDIR = $(PREFIX)/share/doc/libhugetlbfs
-
- ifdef CC32
--PMDIR = $(PREFIX)/lib/perl5/TLBC
-+PMDIR = $(PREFIX)/lib/perl/TLBC
- endif
-
- ifdef CC64
- ifeq ($(ARCH),x86_64)
--PMDIR = $(PREFIX)/lib/perl5/TLBC
-+PMDIR = $(PREFIX)/lib/perl/TLBC
- else
- ifeq ($(ARCH),aarch64)
--PMDIR = $(PREFIX)/lib/perl5/TLBC
-+PMDIR = $(PREFIX)/lib/perl/TLBC
- else
--PMDIR = $(PREFIX)/lib64/perl5/TLBC
-+PMDIR = $(PREFIX)/lib64/perl/TLBC
- endif
- endif
- endif
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-benchmark/libhugetlbfs/files/libhugetlbfs-avoid-using-restrict-as-var-name.patch b/import-layers/meta-openembedded/meta-oe/recipes-benchmark/libhugetlbfs/files/libhugetlbfs-avoid-using-restrict-as-var-name.patch
deleted file mode 100644
index b77cfe10e..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-benchmark/libhugetlbfs/files/libhugetlbfs-avoid-using-restrict-as-var-name.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-Avoid using keyword restrict as variable name which causes error with gcc 5.x:
-
-| hugeutils.c: In function '__lh_hugetlbfs_setup_env':
-| hugeutils.c:304:40: error: expected identifier or '(' before 'restrict'
-| char *p, *tok, *exe, buf[MAX_EXE+1], restrict[MAX_EXE];
-| ^
-
-Upstream-Status: Pending
-
-Signed-off-by: Kai Kang <kai.kang@windriver.com>
----
-diff --git a/hugeutils.c b/hugeutils.c
-index 53a7fbd..b9d7001 100644
---- a/hugeutils.c
-+++ b/hugeutils.c
-@@ -301,14 +301,14 @@ void hugetlbfs_setup_env()
-
- env = getenv("HUGETLB_RESTRICT_EXE");
- if (env) {
-- char *p, *tok, *exe, buf[MAX_EXE+1], restrict[MAX_EXE];
-+ char *p, *tok, *exe, buf[MAX_EXE+1], restricted[MAX_EXE];
- int found = 0;
-
- exe = get_exe_name(buf, sizeof buf);
- DEBUG("Found HUGETLB_RESTRICT_EXE, this exe is \"%s\"\n", exe);
-- strncpy(restrict, env, sizeof restrict);
-- restrict[sizeof(restrict)-1] = 0;
-- for (p = restrict; (tok = strtok(p, ":")) != NULL; p = NULL) {
-+ strncpy(restricted, env, sizeof restricted);
-+ restricted[sizeof(restricted)-1] = 0;
-+ for (p = restricted; (tok = strtok(p, ":")) != NULL; p = NULL) {
- DEBUG(" ...check exe match for \"%s\"\n", tok);
- if (strcmp(tok, exe) == 0) {
- found = 1;
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-benchmark/libhugetlbfs/libhugetlbfs_git.bb b/import-layers/meta-openembedded/meta-oe/recipes-benchmark/libhugetlbfs/libhugetlbfs_git.bb
index 301b5505d..823e07c18 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-benchmark/libhugetlbfs/libhugetlbfs_git.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-benchmark/libhugetlbfs/libhugetlbfs_git.bb
@@ -7,10 +7,10 @@ DEPENDS = "sysfsutils perl"
RDEPENDS_${PN} += "bash perl python python-io python-lang python-subprocess python-resource ${PN}-perl"
RDEPENDS_${PN}-tests += "bash"
-PV = "2.19"
+PV = "2.20"
PE = "1"
-SRCREV = "426c22d65415fcb8927f68fbc5887e075a8dc40a"
+SRCREV = "e44180072b796c0e28e53c4d01ef6279caaa2a99"
SRC_URI = " \
git://github.com/libhugetlbfs/libhugetlbfs.git;protocol=https \
file://skip-checking-LIB32-and-LIB64-if-they-point-to-the-s.patch \
@@ -18,7 +18,6 @@ SRC_URI = " \
file://tests-Makefile-install-static-4G-edge-testcases.patch \
file://0001-run_test.py-not-use-hard-coded-path-.-obj-hugeadm.patch \
file://libhugetlbfs-elf_i386-avoid-search-host-library-path.patch \
- file://libhugetlbfs-avoid-using-restrict-as-var-name.patch \
file://Force-text-segment-alignment-to-0x08000000-for-i386-.patch \
"
@@ -39,7 +38,7 @@ TARGET_CC_ARCH += "${LDFLAGS}"
#The CUSTOM_LDSCRIPTS doesn't work with the gold linker
inherit cpan-base
do_configure() {
- if [ "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-gold', 'ld-is-gold', '', d)}" = "ld-is-gold" ] ; then
+ if [ "${@bb.utils.filter('DISTRO_FEATURES', 'ld-is-gold', d)}" ]; then
sed -i 's/CUSTOM_LDSCRIPTS = yes/CUSTOM_LDSCRIPTS = no/' Makefile
fi
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-benchmark/lmbench/lmbench-3.0-a9/0001-Check-for-musl-define-guard-before-redefining-sockle.patch b/import-layers/meta-openembedded/meta-oe/recipes-benchmark/lmbench/lmbench-3.0-a9/0001-Check-for-musl-define-guard-before-redefining-sockle.patch
new file mode 100644
index 000000000..20791bf23
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-benchmark/lmbench/lmbench-3.0-a9/0001-Check-for-musl-define-guard-before-redefining-sockle.patch
@@ -0,0 +1,29 @@
+From 31d58ed7e6552781f415501e96d7cc74f83b910d Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Wed, 12 Jul 2017 18:08:51 -0700
+Subject: [PATCH 1/2] Check for musl define guard before redefining socklen_t
+
+musl uses __DEFINED_socklen_t so check for that as well
+along with HAVE_socklen_t
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/bench.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/bench.h b/src/bench.h
+index 597d068..2ebdf5a 100644
+--- a/src/bench.h
++++ b/src/bench.h
+@@ -77,7 +77,7 @@ typedef long long int64;
+ #endif /* HAVE_int64_t */
+ #endif /* HAVE_int64 */
+
+-#ifndef HAVE_socklen_t
++#if !defined(HAVE_socklen_t) && !defined(__DEFINED_socklen_t)
+ typedef int socklen_t;
+ #endif
+
+--
+2.13.2
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-benchmark/lmbench/lmbench-3.0-a9/0001-lat_http.c-Add-printf-format.patch b/import-layers/meta-openembedded/meta-oe/recipes-benchmark/lmbench/lmbench-3.0-a9/0001-lat_http.c-Add-printf-format.patch
new file mode 100644
index 000000000..18ed43d06
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-benchmark/lmbench/lmbench-3.0-a9/0001-lat_http.c-Add-printf-format.patch
@@ -0,0 +1,26 @@
+From 6faa6acdf20aa6f738eed1483b7dceed94286adb Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Tue, 27 Jun 2017 14:39:10 -0700
+Subject: [PATCH] lat_http.c: Add printf format
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/lat_http.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/lat_http.c b/src/lat_http.c
+index c630d59..28d04f7 100644
+--- a/src/lat_http.c
++++ b/src/lat_http.c
+@@ -27,7 +27,7 @@ http(char *server, char *file, int prog)
+ sock = tcp_connect(server, prog, SOCKOPT_REUSE);
+ sprintf(buf, "GET /%s HTTP/1.0\r\n\r\n\n", file);
+ if (debug) {
+- printf(buf);
++ printf("%s", buf);
+ }
+ write(sock, buf, strlen(buf));
+ while ((n = read(sock, buf, XFERSIZE)) > 0) {
+--
+2.13.2
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-benchmark/lmbench/lmbench-3.0-a9/0002-build-Adjust-CFLAGS-LDFLAGS-to-append-values-passed-.patch b/import-layers/meta-openembedded/meta-oe/recipes-benchmark/lmbench/lmbench-3.0-a9/0002-build-Adjust-CFLAGS-LDFLAGS-to-append-values-passed-.patch
new file mode 100644
index 000000000..d5c8f5f2f
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-benchmark/lmbench/lmbench-3.0-a9/0002-build-Adjust-CFLAGS-LDFLAGS-to-append-values-passed-.patch
@@ -0,0 +1,76 @@
+From 76f3a9abc2ff96155425ef97d8c5520cfbc8fe6a Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Wed, 12 Jul 2017 18:09:46 -0700
+Subject: [PATCH 2/2] build: Adjust CFLAGS/LDFLAGS to append values passed from
+ env
+
+For musl we have to pass additional arguments via cflags and ldflags
+to link in librirpc, make room for those changes to take effect
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ scripts/build | 2 +-
+ src/Makefile | 14 +++++++-------
+ 2 files changed, 8 insertions(+), 8 deletions(-)
+
+diff --git a/scripts/build b/scripts/build
+index 34a1371..3786741 100755
+--- a/scripts/build
++++ b/scripts/build
+@@ -18,7 +18,7 @@ done
+
+ trap 'rm -f ${BASE}$$.s ${BASE}$$.c ${BASE}$$.o ${BASE}$$; exit 1' 1 2 15
+
+-LDLIBS=-lm
++LDLIBS+=-lm
+
+ # check for HP-UX's ANSI compiler
+ echo "main(int ac, char *av[]) { int i; }" > ${BASE}$$.c
+diff --git a/src/Makefile b/src/Makefile
+index d9efd54..96467d7 100644
+--- a/src/Makefile
++++ b/src/Makefile
+@@ -112,8 +112,8 @@ LIBOBJS= $O/lib_tcp.o $O/lib_udp.o $O/lib_unix.o $O/lib_timing.o \
+ $O/lib_sched.o
+
+ lmbench: $(UTILS)
+- @env CFLAGS=-O MAKE="$(MAKE)" MAKEFLAGS="$(MAKEFLAGS)" CC="$(CC)" OS="$(OS)" ../scripts/build all
+- -@env CFLAGS=-O MAKE="$(MAKE)" MAKEFLAGS="k$(MAKEFLAGS)" CC="$(CC)" OS="$(OS)" ../scripts/build opt
++ @env CFLAGS+=-O MAKE="$(MAKE)" MAKEFLAGS="$(MAKEFLAGS)" CC="$(CC)" OS="$(OS)" ../scripts/build all
++ -@env CFLAGS+=-O MAKE="$(MAKE)" MAKEFLAGS="k$(MAKEFLAGS)" CC="$(CC)" OS="$(OS)" ../scripts/build opt
+
+ results: lmbench
+ @env OS="${OS}" ../scripts/config-run
+@@ -137,7 +137,7 @@ os: lmbench
+ @env OS="${OS}" BENCHMARK_HARDWARE=NO BENCHMARK_OS=YES ../scripts/results
+
+ install: lmbench
+- @env CFLAGS=-O MAKE="$(MAKE)" MAKEFLAGS="$(MAKEFLAGS)" CC="${CC}" OS="${OS}" ../scripts/build install-target
++ @env CFLAGS+=-O MAKE="$(MAKE)" MAKEFLAGS="$(MAKEFLAGS)" CC="${CC}" OS="${OS}" ../scripts/build install-target
+
+ install-target:
+ if [ ! -d $(BASE) ]; then mkdir $(BASE); fi
+@@ -155,16 +155,16 @@ all: $(EXES) $O/lmbench
+ opt: $(OPT_EXES)
+ asm: $(ASMS)
+ $(ASMS):
+- $(CC) -S $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $@ `basename $@ .s`.c
++ $(CC) -S $(CFLAGS) $(CPPFLAGS) -o $@ `basename $@ .s`.c $(LDFLAGS)
+
+ Wall:
+- @env CFLAGS="-g -O -Wall" MAKE="$(MAKE)" MAKEFLAGS="$(MAKEFLAGS)" CC="${CC}" OS="${OS}" ../scripts/build all opt
++ @env CFLAGS+="-g -O -Wall" MAKE="$(MAKE)" MAKEFLAGS="$(MAKEFLAGS)" CC="${CC}" OS="${OS}" ../scripts/build all opt
+
+ debug:
+- @env CFLAGS="-g -O -DDEBUG" MAKE="$(MAKE)" MAKEFLAGS="$(MAKEFLAGS)" CC="${CC}" OS="${OS}" ../scripts/build all opt
++ @env CFLAGS+="-g -O -DDEBUG" MAKE="$(MAKE)" MAKEFLAGS="$(MAKEFLAGS)" CC="${CC}" OS="${OS}" ../scripts/build all opt
+
+ assembler:
+- @env CFLAGS=-O MAKE="$(MAKE)" MAKEFLAGS="$(MAKEFLAGS)" CC="${CC}" OS="${OS}" ../scripts/build asm
++ @env CFLAGS+=-O MAKE="$(MAKE)" MAKEFLAGS="$(MAKEFLAGS)" CC="${CC}" OS="${OS}" ../scripts/build asm
+
+
+ tag:
+--
+2.13.2
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-benchmark/lmbench/lmbench_3.0-a9.bb b/import-layers/meta-openembedded/meta-oe/recipes-benchmark/lmbench/lmbench_3.0-a9.bb
index 62906fd68..03b3721ca 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-benchmark/lmbench/lmbench_3.0-a9.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-benchmark/lmbench/lmbench_3.0-a9.bb
@@ -7,6 +7,10 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=8ca43cbc842c2336e835926c2166c28b \
inherit autotools-brokensep
+DEPENDS_append_libc-musl = " libtirpc"
+CFLAGS_append_libc-musl = " -I${STAGING_INCDIR}/tirpc"
+LDLIBS_append_libc-musl = " -ltirpc "
+
PR = "r2"
SRC_URI = "${SOURCEFORGE_MIRROR}/lmbench/lmbench-${PV}.tgz \
@@ -19,12 +23,15 @@ SRC_URI = "${SOURCEFORGE_MIRROR}/lmbench/lmbench-${PV}.tgz \
file://lmbench_result_html_report.patch \
file://fix-lmbench-memory-check-failure.patch \
file://0001-avoid-gcc-optimize-away-the-loops.patch \
-"
+ file://0001-lat_http.c-Add-printf-format.patch \
+ file://0001-Check-for-musl-define-guard-before-redefining-sockle.patch \
+ file://0002-build-Adjust-CFLAGS-LDFLAGS-to-append-values-passed-.patch \
+ "
SRC_URI[md5sum] = "b3351a3294db66a72e2864a199d37cbf"
SRC_URI[sha256sum] = "cbd5777d15f44eab7666dcac418054c3c09df99826961a397d9acf43d8a2a551"
EXTRA_OEMAKE = 'CC="${CC}" AR="${AR}" RANLIB="${RANLIB}" CFLAGS="${CFLAGS}" \
- LDFLAGS="${LDFLAGS}" LD="${LD}" OS="${TARGET_SYS}" \
+ LDFLAGS="${LDFLAGS}" LDLIBS="${LDLIBS}" LD="${LD}" OS="${TARGET_SYS}" \
TARGET="${TARGET_OS}" BASE="${prefix}" MANDIR="${mandir}"'
do_configure() {
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-benchmark/nbench-byte/nbench-byte_2.2.3.bb b/import-layers/meta-openembedded/meta-oe/recipes-benchmark/nbench-byte/nbench-byte_2.2.3.bb
index 4ec1c6375..56272d985 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-benchmark/nbench-byte/nbench-byte_2.2.3.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-benchmark/nbench-byte/nbench-byte_2.2.3.bb
@@ -1,12 +1,12 @@
DESCRIPTION = "BYTE Magazine's native benchmarks (also called BYTEmark) \
designed to expose the capabilities of a system's CPU, FPU, \
and memory system."
-HOMEPAGE = "http://www.math.utah.edu/~mayer/linux/"
+HOMEPAGE = "http://www.tux.org/~mayer/linux/"
LICENSE = "nbench-byte"
LIC_FILES_CHKSUM = "file://README;beginline=57;endline=66;md5=020ef579f8fa5746b7e307a54707834f"
SECTION = "console/utils"
-SRC_URI = "http://www.math.utah.edu/~mayer/linux/${BP}.tar.gz \
+SRC_URI = "http://www.tux.org/~mayer/linux/${BP}.tar.gz \
file://nbench_32bits.patch \
file://Makefile-add-more-dependencies-to-pointer.h.patch"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-benchmark/phoronix-test-suite/phoronix-test-suite_6.0.1.bb b/import-layers/meta-openembedded/meta-oe/recipes-benchmark/phoronix-test-suite/phoronix-test-suite_6.6.1.bb
index aab64a354..b3217790d 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-benchmark/phoronix-test-suite/phoronix-test-suite_6.0.1.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-benchmark/phoronix-test-suite/phoronix-test-suite_6.6.1.bb
@@ -6,8 +6,9 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
SECTION = "console/tests"
SRC_URI = "http://www.phoronix-test-suite.com/releases/${BP}.tar.gz"
-SRC_URI[md5sum] = "c3b26fcc57a3a253e558f759fdc1089f"
-SRC_URI[sha256sum] = "27add54f4ecb464549de580cece84b4a4945b99df3ef7ff7034eb7f23ffb3b39"
+SRC_URI[md5sum] = "5bcac5896a4a34fc6ae4ae94991e1637"
+SRC_URI[sha256sum] = "631ceb808d8bd6cebe69c8b711d55090d6880e906a65837f18fa8200fe7d2c4d"
+
S = "${WORKDIR}/phoronix-test-suite"
inherit systemd allarch
@@ -33,3 +34,5 @@ FILES_${PN} += " \
${datadir}/mime/packages/openbenchmarking-mime.xml \
${systemd_unitdir}/* \
"
+
+PNBLACKLIST[phoronix-test-suite] ?= "Runtime depends on blacklisted php-cli - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-benchmark/pmbw/pmbw_git.bb b/import-layers/meta-openembedded/meta-oe/recipes-benchmark/pmbw/pmbw_git.bb
new file mode 100644
index 000000000..8113da76d
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-benchmark/pmbw/pmbw_git.bb
@@ -0,0 +1,30 @@
+SUMMERY = "Parallel Memory Bandwidth Measurement / Benchmark"
+DESCRIPTION = "\
+The tool pmbw is a set of assembler routines to measure the parallel memory \
+(cache and RAM) bandwidth of modern multi-core machines."
+HOMEPAGE = "http://panthema.net/2013/pmbw/"
+SECTION = "benchmark/tests"
+AUTHOR = "Timo Bingmann"
+LICENSE = "GPLv3"
+LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
+
+SRC_URI = "git://github.com/bingmann/pmbw;protocol=https"
+
+PV = "0.6.2+git${SRCPV}"
+SRCREV = "4a3b37728060a8aba06fc83f157a1965088d79d6"
+
+S = "${WORKDIR}/git"
+
+inherit autotools
+
+# the hand coded asm uses r11, which therefore cannot be used for storing
+# the frame pointer when debugging on arm
+SELECTED_OPTIMIZATION_remove_arm = "-fno-omit-frame-pointer"
+
+PACKAGES =+ "${PN}-stats2gnuplot"
+
+FILES_${PN}-stats2gnuplot = "${bindir}/stats2gnuplot"
+
+RRECOMMENDS_${PN} = "${PN}-stats2gnuplot"
+
+PNBLACKLIST[pmbw] ?= "Fails to build with RSS http://errors.yoctoproject.org/Errors/Details/130568/ - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-benchmark/sysbench/sysbench_0.4.12.bb b/import-layers/meta-openembedded/meta-oe/recipes-benchmark/sysbench/sysbench_0.4.12.bb
index fdf54e3b1..708c71f4f 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-benchmark/sysbench/sysbench_0.4.12.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-benchmark/sysbench/sysbench_0.4.12.bb
@@ -13,7 +13,7 @@ SRC_URI = "https://launchpad.net/ubuntu/+archive/primary/+files/${BPN}_${PV}.ori
SRC_URI[md5sum] = "3a6d54fdd3fe002328e4458206392b9d"
SRC_URI[sha256sum] = "83fa7464193e012c91254e595a89894d8e35b4a38324b52a5974777e3823ea9e"
-PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'largefile', 'largefile', '', d)}"
+PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'largefile', d)}"
PACKAGECONFIG[largefile] = "--enable-largefile,--disable-largefile,,"
PACKAGECONFIG[aio] = "--enable-aio,--disable-aio,libaio,"
PACKAGECONFIG[mysql] = "--with-mysql \
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-benchmark/tinymembench/tinymembench_git.bb b/import-layers/meta-openembedded/meta-oe/recipes-benchmark/tinymembench/tinymembench_git.bb
index 5968d8213..8cb59da73 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-benchmark/tinymembench/tinymembench_git.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-benchmark/tinymembench/tinymembench_git.bb
@@ -27,3 +27,7 @@ do_install() {
#| {standard input}:82: Error: selected processor does not support Thumb mode `mla r3,r4,r3,r5'
#| {standard input}:82: Error: unshifted register required -- `and r8,r7,r3,lsr#16'
ARM_INSTRUCTION_SET = "arm"
+#
+# Does not work for 64bit mips.
+#
+COMPATIBLE_HOST = "^(?!mips64).*"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/bluez/bluez4.inc b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/bluez/bluez4.inc
index 59c35e473..5240ccfd8 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/bluez/bluez4.inc
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/bluez/bluez4.inc
@@ -15,11 +15,7 @@ RCONFLICTS_${PN} += "${PN}-systemd"
DEPENDS = "udev libusb dbus-glib glib-2.0 libcheck readline libsndfile1"
RDEPENDS_${PN}-dev = "bluez-hcidump"
-PACKAGECONFIG ??= "\
- ${@bb.utils.contains('DISTRO_FEATURES', 'alsa', 'alsa', '', d)}\
- ${@bb.utils.contains('DISTRO_FEATURES', 'pie', 'pie', '', d)}\
- ${@bb.utils.contains('DISTRO_FEATURES', 'systemd','systemd', '', d)} \
-"
+PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'alsa pie systemd', d)}"
PACKAGECONFIG[alsa] = "--enable-alsa,--disable-alsa,alsa-lib"
PACKAGECONFIG[pie] = "--enable-pie,--disable-pie,"
PACKAGECONFIG[systemd] = "--with-systemdunitdir=${systemd_unitdir}/system/,--with-systemdunitdir="
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/ell/ell_git.bb b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/ell/ell_git.bb
new file mode 100644
index 000000000..d259f52ac
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/ell/ell_git.bb
@@ -0,0 +1,17 @@
+SUMMARY = "Embedded Linux Library"
+DESCRIPTION = "ELL is a DBUS library which provides DBUS bindings."
+LICENSE = "LGPLv2.1"
+LIC_FILES_CHKSUM = "file://COPYING;md5=fb504b67c50331fc78734fed90fb0e09"
+SECTION = "libs"
+
+inherit autotools pkgconfig
+
+S = "${WORKDIR}/git"
+SRCREV = "399099946abaeb2f3718a0667cc11436a7c0be14"
+SRC_URI = "git://git.kernel.org/pub/scm/libs/ell/ell.git"
+
+do_configure_prepend () {
+ mkdir ${S}/build-aux
+}
+
+DEPENDS = "dbus"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/gnokii/gnokii_0.6.31.bb b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/gnokii/gnokii_0.6.31.bb
index 2de547a70..b6098d84a 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/gnokii/gnokii_0.6.31.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/gnokii/gnokii_0.6.31.bb
@@ -8,7 +8,7 @@ SRC_URI = "http://www.gnokii.org/download/gnokii/gnokii-${PV}.tar.bz2"
DEPENDS = "glib-2.0 intltool-native"
X11DEPENDS = " libxpm gtk+"
-PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', '', d)}"
+PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}"
PACKAGECONFIG[bluez4] = "--enable-bluetooth,--disable-bluetooth,bluez4"
PACKAGECONFIG[libical] = "--enable-libical,--disable-libical,libical"
PACKAGECONFIG[pcsc-lite] = "--enable-libpcsclite,--disable-libpcsclite,pcsc-lite"
@@ -32,3 +32,5 @@ FILES_libgnokii = "${libdir}/libgnokii.so.*"
SRC_URI[md5sum] = "d9627f4a1152d3ea7806df4532850d5f"
SRC_URI[sha256sum] = "8f5a083b05c1a66a3402ca5cd80084e14c2c0632c991bb53b03c78e9adb02501"
+
+PNBLACKLIST[gnokii] ?= "Fails to build with RSS http://errors.yoctoproject.org/Errors/Details/130662/ - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/gnuradio/gnuradio/0001-buildsys-don-t-add-usr-include-and-usr-lib-to-config.patch b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/gnuradio/gnuradio/0001-buildsys-don-t-add-usr-include-and-usr-lib-to-config.patch
deleted file mode 100644
index 7caaf51e6..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/gnuradio/gnuradio/0001-buildsys-don-t-add-usr-include-and-usr-lib-to-config.patch
+++ /dev/null
@@ -1,58 +0,0 @@
-From a130153ae84d8bb5914879cef94df09f06825c10 Mon Sep 17 00:00:00 2001
-From: Koen Kooi <koen@dominion.thruhere.net>
-Date: Sat, 18 Jun 2011 11:25:36 +0200
-Subject: [PATCH] buildsys: don't add /usr/include and /usr/lib to configure tests for libusb
-
-Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
----
- config/usrp_libusb.m4 | 13 -------------
- 1 files changed, 0 insertions(+), 13 deletions(-)
-
-diff --git a/config/usrp_libusb.m4 b/config/usrp_libusb.m4
-index cc3410f..b421820 100644
---- a/config/usrp_libusb.m4
-+++ b/config/usrp_libusb.m4
-@@ -117,10 +117,6 @@ AC_DEFUN([USRP_LIBUSB], [
- dnl configured to find this header.
- AC_LANG_PUSH(C)
- save_CPPFLAGS="$CPPFLAGS"
-- if test x$USB_INCLUDEDIR != x; then
-- USB_INCLUDES="-I$USB_INCLUDEDIR"
-- CPPFLAGS="$USB_INCLUDES"
-- fi
- AC_MSG_CHECKING([$libusb_name for header $usb_header])
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
- #include "$usb_header"
-@@ -172,9 +168,6 @@ AC_DEFUN([USRP_LIBUSB], [
- *)
- AC_LANG_PUSH(C)
- save_CPPFLAGS="$CPPFLAGS"
-- if test x$USB_INCLUDEDIR != x; then
-- CPPFLAGS="$USB_INCLUDES"
-- fi
- save_LIBS="$LIBS"
- LIBS="$USB_LIBS"
- AC_MSG_CHECKING([$libusb_name for symbol usb_debug in library $usb_lib_name])
-@@ -217,9 +210,6 @@ AC_DEFUN([USRP_LIBUSB], [
- dnl final error checking, mostly to create #define's
- AC_LANG_PUSH(C)
- save_CPPFLAGS="$CPPFLAGS"
-- if test x$USB_INCLUDEDIR != x; then
-- CPPFLAGS="$USB_INCLUDES"
-- fi
- dnl Check for the header.
- AC_CHECK_HEADERS([$usb_header], [], [libusbok=no])
- CPPFLAGS="$save_CPPFLAGS"
-@@ -231,9 +221,6 @@ AC_DEFUN([USRP_LIBUSB], [
- dnl check for the library (again)
- AC_LANG_PUSH(C)
- save_CPPFLAGS="$CPPFLAGS"
-- if test x$USB_INCLUDEDIR != x; then
-- CPPFLAGS="$USB_INCLUDES"
-- fi
- save_LIBS="$LIBS"
- LIBS="$USB_LIBS"
- AC_CHECK_LIB([$usb_lib_name], [$usb_lib_func], [], [
---
-1.6.6.1
-
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd/0001-WPS-Reject-a-Credential-with-invalid-passphrase.patch b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd/0001-WPS-Reject-a-Credential-with-invalid-passphrase.patch
deleted file mode 100644
index 2fc78968a..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd/0001-WPS-Reject-a-Credential-with-invalid-passphrase.patch
+++ /dev/null
@@ -1,86 +0,0 @@
-From ecbb0b3dc122b0d290987cf9c84010bbe53e1022 Mon Sep 17 00:00:00 2001
-From: Jouni Malinen <jouni@qca.qualcomm.com>
-Date: Fri, 4 Mar 2016 17:20:18 +0200
-Subject: [PATCH 1/1] WPS: Reject a Credential with invalid passphrase
-
-WPA/WPA2-Personal passphrase is not allowed to include control
-characters. Reject a Credential received from a WPS Registrar both as
-STA (Credential) and AP (AP Settings) if the credential is for WPAPSK or
-WPA2PSK authentication type and includes an invalid passphrase.
-
-This fixes an issue where hostapd or wpa_supplicant could have updated
-the configuration file PSK/passphrase parameter with arbitrary data from
-an external device (Registrar) that may not be fully trusted. Should
-such data include a newline character, the resulting configuration file
-could become invalid and fail to be parsed.
-
-Upstream-Status: Backport
-
-CVE: CVE-2016-4476
-
-Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com>
-Signed-off-by: Zhixiong Chi <Zhixiong.Chi@windriver.com>
----
- src/utils/common.c | 12 ++++++++++++
- src/utils/common.h | 1 +
- src/wps/wps_attr_process.c | 10 ++++++++++
- 3 files changed, 23 insertions(+)
-
-diff --git a/src/utils/common.c b/src/utils/common.c
-index 450e2c6..27b7c02 100644
---- a/src/utils/common.c
-+++ b/src/utils/common.c
-@@ -697,6 +697,18 @@ int is_hex(const u8 *data, size_t len)
- }
-
-
-+int has_ctrl_char(const u8 *data, size_t len)
-+{
-+ size_t i;
-+
-+ for (i = 0; i < len; i++) {
-+ if (data[i] < 32 || data[i] == 127)
-+ return 1;
-+ }
-+ return 0;
-+}
-+
-+
- size_t merge_byte_arrays(u8 *res, size_t res_len,
- const u8 *src1, size_t src1_len,
- const u8 *src2, size_t src2_len)
-diff --git a/src/utils/common.h b/src/utils/common.h
-index 701dbb2..a972240 100644
---- a/src/utils/common.h
-+++ b/src/utils/common.h
-@@ -488,6 +488,7 @@ const char * wpa_ssid_txt(const u8 *ssid, size_t ssid_len);
-
- char * wpa_config_parse_string(const char *value, size_t *len);
- int is_hex(const u8 *data, size_t len);
-+int has_ctrl_char(const u8 *data, size_t len);
- size_t merge_byte_arrays(u8 *res, size_t res_len,
- const u8 *src1, size_t src1_len,
- const u8 *src2, size_t src2_len);
-diff --git a/src/wps/wps_attr_process.c b/src/wps/wps_attr_process.c
-index eadb22f..e8c4579 100644
---- a/src/wps/wps_attr_process.c
-+++ b/src/wps/wps_attr_process.c
-@@ -229,6 +229,16 @@ static int wps_workaround_cred_key(struct wps_credential *cred)
- cred->key_len--;
- #endif /* CONFIG_WPS_STRICT */
- }
-+
-+
-+ if (cred->auth_type & (WPS_AUTH_WPAPSK | WPS_AUTH_WPA2PSK) &&
-+ (cred->key_len < 8 || has_ctrl_char(cred->key, cred->key_len))) {
-+ wpa_printf(MSG_INFO, "WPS: Reject credential with invalid WPA/WPA2-Personal passphrase");
-+ wpa_hexdump_ascii_key(MSG_INFO, "WPS: Network Key",
-+ cred->key, cred->key_len);
-+ return -1;
-+ }
-+
- return 0;
- }
-
---
-1.9.1
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd/key-replay-cve-multiple.patch b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd/key-replay-cve-multiple.patch
new file mode 100644
index 000000000..694da8fb6
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd/key-replay-cve-multiple.patch
@@ -0,0 +1,984 @@
+The WPA2 four-way handshake protocol is vulnerable to replay attacks which can
+result in unauthenticated clients gaining access to the network.
+
+Backport a number of patches from upstream to fix this.
+
+CVE: CVE-2017-13077
+CVE: CVE-2017-13078
+CVE: CVE-2017-13079
+CVE: CVE-2017-13080
+CVE: CVE-2017-13081
+CVE: CVE-2017-13082
+CVE: CVE-2017-13086
+CVE: CVE-2017-13087
+CVE: CVE-2017-13088
+
+Upstream-Status: Backport
+Signed-off-by: Ross Burton <ross.burton@intel.com>
+
+From cf4cab804c7afd5c45505528a8d16e46163243a2 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/8] 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>
+---
+ 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 {
+--
+2.7.4
+
+From 927f891007c402fefd1ff384645b3f07597c3ede 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/8] 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>
+---
+ 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 */
+
+--
+2.7.4
+
+From 8280294e74846ea342389a0cd17215050fa5afe8 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/8] 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>
+---
+ 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 */
+--
+2.7.4
+
+From 8f82bc94e8697a9d47fa8774dfdaaede1084912c 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/8] 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>
+---
+ 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;
+--
+2.7.4
+
+From 12fac09b437a1dc8a0f253e265934a8aaf4d2f8b 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/8] 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>
+---
+ 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:
+--
+2.7.4
+
+From 6c4bed4f47d1960ec04981a9d50e5076aea5223d 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/8] 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>
+---
+ 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
+--
+2.7.4
+
+Note: [PATCH 7/8] only applies to wpa_supplicant
+
+From b372ab0b7daea719749194dc554b26e6367603f2 Mon Sep 17 00:00:00 2001
+From: Jouni Malinen <j@w1.fi>
+Date: Fri, 22 Sep 2017 12:06:37 +0300
+Subject: [PATCH 8/8] 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>
+---
+ 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;
+--
+2.7.4
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd_2.5.bb b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd_2.6.bb
index ab01235ec..c3a1eadfd 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd_2.5.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/hostapd/hostapd_2.6.bb
@@ -1,7 +1,7 @@
HOMEPAGE = "http://w1.fi/hostapd/"
SECTION = "kernel/userland"
LICENSE = "GPLv2 | BSD"
-LIC_FILES_CHKSUM = "file://${B}/README;md5=4d53178f44d4b38418a4fa8de365e11c"
+LIC_FILES_CHKSUM = "file://${B}/README;md5=8aa4e8c78b59b12016c4cb2d0a8db350"
DEPENDS = "libnl openssl"
SUMMARY = "User space daemon for extended IEEE 802.11 management"
@@ -16,7 +16,7 @@ SRC_URI = " \
file://defconfig \
file://init \
file://hostapd.service \
- file://0001-WPS-Reject-a-Credential-with-invalid-passphrase.patch \
+ file://key-replay-cve-multiple.patch \
"
S = "${WORKDIR}/hostapd-${PV}"
@@ -43,5 +43,6 @@ do_install() {
CONFFILES_${PN} += "${sysconfdir}/hostapd.conf"
-SRC_URI[md5sum] = "69f9cec3f76d74f402864a43e4f8624f"
-SRC_URI[sha256sum] = "8e272d954dc0d7026c264b79b15389ec2b2c555b32970de39f506b9f463ec74a"
+SRC_URI[md5sum] = "eaa56dce9bd8f1d195eb62596eab34c7"
+SRC_URI[sha256sum] = "01526b90c1d23bec4b0f052039cc4456c2fd19347b4d830d1d58a0a6aea7117d"
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/irssi/irssi_0.8.16-rc1.bb b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/irssi/irssi_0.8.16-rc1.bb
deleted file mode 100644
index 54d881d1c..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/irssi/irssi_0.8.16-rc1.bb
+++ /dev/null
@@ -1,22 +0,0 @@
-SUMMARY = "ncurses IRC client"
-DESCRIPTION = "Irssi is an ncurses IRC client"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=55fdc1113306167d6ea2561404ce02f8"
-
-DEPENDS = "glib-2.0 ncurses openssl"
-
-REALPV = "0.8.16-rc1"
-PV = "0.8.15+${REALPV}"
-
-SRC_URI = "http://irssi.org/files/irssi-${REALPV}.tar.gz"
-
-SRC_URI[md5sum] = "769fec4df8e633c583c411ccd2cd563a"
-SRC_URI[sha256sum] = "bb6c0125db30b697f80837941c17372b7484c64d57a6920b8bfa7ee3def92de3"
-
-S = "${WORKDIR}/irssi-${REALPV}"
-
-inherit autotools pkgconfig
-
-EXTRA_OECONF = "--enable-ssl \
- --with-ncurses=${STAGING_EXECPREFIXDIR} \
-"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/irssi/irssi_1.0.1.bb b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/irssi/irssi_1.0.1.bb
new file mode 100644
index 000000000..041f5de6d
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/irssi/irssi_1.0.1.bb
@@ -0,0 +1,12 @@
+SUMMARY = "ncurses IRC client"
+DESCRIPTION = "Irssi is an ncurses IRC client"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=55fdc1113306167d6ea2561404ce02f8"
+
+DEPENDS = "glib-2.0 ncurses openssl"
+
+SRC_URI = "https://github.com/${BPN}/${BPN}/releases/download/${PV}/${BP}.tar.xz"
+SRC_URI[md5sum] = "f6bed196cef63ea089f5cce089784445"
+SRC_URI[sha256sum] = "9428c51a3f3598ffaef438c351a8d609cf10db34f2435bdcb84456226c383ccf"
+
+inherit autotools pkgconfig
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/krb5/krb5/fix-CVE-2017-11368.patch b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/krb5/krb5/fix-CVE-2017-11368.patch
new file mode 100644
index 000000000..a2eb7bc02
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/krb5/krb5/fix-CVE-2017-11368.patch
@@ -0,0 +1,116 @@
+Upstream-Status: Backport [https://github.com/krb5/krb5/commit/ffb35baac6981f9e8914f8f3bffd37f284b85970]
+
+Backport patch to fix CVE-2017-11368.
+
+Signed-off-by: Kai Kang <kai.kang@windriver.com>
+---
+From ffb35baac6981f9e8914f8f3bffd37f284b85970 Mon Sep 17 00:00:00 2001
+From: Greg Hudson <ghudson@mit.edu>
+Date: Thu, 13 Jul 2017 12:14:20 -0400
+Subject: [PATCH] Prevent KDC unset status assertion failures
+
+Assign status values if S4U2Self padata fails to decode, if an
+S4U2Proxy request uses invalid KDC options, or if an S4U2Proxy request
+uses an evidence ticket which does not match the canonicalized request
+server principal name. Reported by Samuel Cabrero.
+
+If a status value is not assigned during KDC processing, default to
+"UNKNOWN_REASON" rather than failing an assertion. This change will
+prevent future denial of service bugs due to similar mistakes, and
+will allow us to omit assigning status values for unlikely errors such
+as small memory allocation failures.
+
+CVE-2017-11368:
+
+In MIT krb5 1.7 and later, an authenticated attacker can cause an
+assertion failure in krb5kdc by sending an invalid S4U2Self or
+S4U2Proxy request.
+
+ CVSSv3 Vector: AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H/E:H/RL:O/RC:C
+
+ticket: 8599 (new)
+target_version: 1.15-next
+target_version: 1.14-next
+tags: pullup
+---
+ src/kdc/do_as_req.c | 4 ++--
+ src/kdc/do_tgs_req.c | 3 ++-
+ src/kdc/kdc_util.c | 10 ++++++++--
+ 3 files changed, 12 insertions(+), 5 deletions(-)
+
+diff --git a/src/kdc/do_as_req.c b/src/kdc/do_as_req.c
+index 2d3ad13..9b256c8 100644
+--- a/src/kdc/do_as_req.c
++++ b/src/kdc/do_as_req.c
+@@ -366,8 +366,8 @@ finish_process_as_req(struct as_req_state *state, krb5_error_code errcode)
+ did_log = 1;
+
+ egress:
+- if (errcode != 0)
+- assert (state->status != 0);
++ if (errcode != 0 && state->status == NULL)
++ state->status = "UNKNOWN_REASON";
+
+ au_state->status = state->status;
+ au_state->reply = &state->reply;
+diff --git a/src/kdc/do_tgs_req.c b/src/kdc/do_tgs_req.c
+index cdc79ad..d8d6719 100644
+--- a/src/kdc/do_tgs_req.c
++++ b/src/kdc/do_tgs_req.c
+@@ -823,7 +823,8 @@ process_tgs_req(struct server_handle *handle, krb5_data *pkt,
+ free(reply.enc_part.ciphertext.data);
+
+ cleanup:
+- assert(status != NULL);
++ if (status == NULL)
++ status = "UNKNOWN_REASON";
+ if (reply_key)
+ krb5_free_keyblock(kdc_context, reply_key);
+ if (errcode)
+diff --git a/src/kdc/kdc_util.c b/src/kdc/kdc_util.c
+index 778a629..b710aef 100644
+--- a/src/kdc/kdc_util.c
++++ b/src/kdc/kdc_util.c
+@@ -1220,8 +1220,10 @@ kdc_process_for_user(kdc_realm_t *kdc_active_realm,
+ req_data.data = (char *)pa_data->contents;
+
+ code = decode_krb5_pa_for_user(&req_data, &for_user);
+- if (code)
++ if (code) {
++ *status = "DECODE_PA_FOR_USER";
+ return code;
++ }
+
+ code = verify_for_user_checksum(kdc_context, tgs_session, for_user);
+ if (code) {
+@@ -1320,8 +1322,10 @@ kdc_process_s4u_x509_user(krb5_context context,
+ req_data.data = (char *)pa_data->contents;
+
+ code = decode_krb5_pa_s4u_x509_user(&req_data, s4u_x509_user);
+- if (code)
++ if (code) {
++ *status = "DECODE_PA_S4U_X509_USER";
+ return code;
++ }
+
+ code = verify_s4u_x509_user_checksum(context,
+ tgs_subkey ? tgs_subkey :
+@@ -1624,6 +1628,7 @@ kdc_process_s4u2proxy_req(kdc_realm_t *kdc_active_realm,
+ * that is validated previously in validate_tgs_request().
+ */
+ if (request->kdc_options & (NON_TGT_OPTION | KDC_OPT_ENC_TKT_IN_SKEY)) {
++ *status = "INVALID_S4U2PROXY_OPTIONS";
+ return KRB5KDC_ERR_BADOPTION;
+ }
+
+@@ -1631,6 +1636,7 @@ kdc_process_s4u2proxy_req(kdc_realm_t *kdc_active_realm,
+ if (!krb5_principal_compare(kdc_context,
+ server->princ, /* after canon */
+ server_princ)) {
++ *status = "EVIDENCE_TICKET_MISMATCH";
+ return KRB5KDC_ERR_SERVER_NOMATCH;
+ }
+
+--
+2.10.1
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/krb5/krb5_1.13.6.bb b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/krb5/krb5_1.15.1.bb
index 06f7f90bd..b515eb5dc 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/krb5/krb5_1.13.6.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/krb5/krb5_1.15.1.bb
@@ -14,10 +14,10 @@ DESCRIPTION = "Kerberos is a system for authenticating users and services on a n
HOMEPAGE = "http://web.mit.edu/Kerberos/"
SECTION = "console/network"
LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://${S}/../NOTICE;md5=c6f37efad53b098e420f45e7ab6807dc"
+LIC_FILES_CHKSUM = "file://${S}/../NOTICE;md5=3e12b8a065cca25dfdcac734fb3ec0b9"
DEPENDS = "ncurses util-linux e2fsprogs e2fsprogs-native"
-inherit autotools-brokensep binconfig perlnative systemd
+inherit autotools-brokensep binconfig perlnative systemd update-rc.d
SHRT_VER = "${@oe.utils.trim_version("${PV}", 2)}"
SRC_URI = "http://web.mit.edu/kerberos/dist/${BPN}/${SHRT_VER}/${BP}.tar.gz \
@@ -30,14 +30,14 @@ SRC_URI = "http://web.mit.edu/kerberos/dist/${BPN}/${SHRT_VER}/${BP}.tar.gz \
file://etc/default/krb5-admin-server \
file://krb5-kdc.service \
file://krb5-admin-server.service \
+ file://fix-CVE-2017-11368.patch;striplevel=2 \
"
-SRC_URI[md5sum] = "6164ca9c075b4ecc68eadd6d13040417"
-SRC_URI[sha256sum] = "9c0a46b8918237a53916370d2e02298c2b294f55f0351f9404e18930bc26badc"
+SRC_URI[md5sum] = "8022f3a1cde8463e44fd35ef42731f85"
+SRC_URI[sha256sum] = "437c8831ddd5fde2a993fef425dedb48468109bb3d3261ef838295045a89eb45"
-S = "${WORKDIR}/${BP}/src"
+CVE_PRODUCT = "kerberos"
-SYSTEMD_SERVICE_${PN} = "krb5-admin-server.service krb5-kdc.service"
-SYSTEMD_AUTO_ENABLE = "disable"
+S = "${WORKDIR}/${BP}/src"
PACKAGECONFIG ??= "openssl"
PACKAGECONFIG[libedit] = "--with-libedit,--without-libedit,libedit"
@@ -54,13 +54,6 @@ CACHED_CONFIGUREVARS += "krb5_cv_attr_constructor_destructor=yes ac_cv_func_regc
CFLAGS_append = " -fPIC -DDESTRUCTOR_ATTR_WORKS=1 -I${STAGING_INCDIR}/et"
LDFLAGS_append = " -pthread"
-FILES_${PN} += "${datadir}/gnats"
-FILES_${PN}-doc += "${datadir}/examples"
-FILES_${PN}-dbg += "${libdir}/krb5/plugins/*/.debug"
-
-# As this recipe doesn't inherit update-rc.d, we need to add this dependency here
-RDEPENDS_${PN}_class-target += "initscripts-functions"
-
do_configure() {
gnu-configize --force
autoreconf
@@ -69,6 +62,13 @@ do_configure() {
do_install_append() {
rm -rf ${D}/${localstatedir}/run
+ rm -f ${D}${bindir}/sclient
+ rm -f ${D}${bindir}/sim_client
+ rm -f ${D}${bindir}/uuclient
+ rm -f ${D}${sbindir}/krb5-send-pr
+ rm -f ${D}${sbindir}/sim_server
+ rm -f ${D}${sbindir}/sserver
+ rm -f ${D}${sbindir}/uuserver
if ${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'true', 'false', d)}; then
mkdir -p ${D}/${sysconfdir}/init.d ${D}/${sysconfdir}/default
@@ -90,7 +90,87 @@ do_install_append() {
fi
}
-pkg_postinst_${PN} () {
+PACKAGES =+ "${PN}-admin-server \
+ ${PN}-gss-samples \
+ ${PN}-k5tls \
+ ${PN}-kdc \
+ ${PN}-kdc-ldap \
+ ${PN}-kpropd \
+ ${PN}-otp \
+ ${PN}-pkinit \
+ ${PN}-user \
+ libgssapi-krb5 \
+ libgssrpc \
+ libk5crypto \
+ libkadm5clnt-mit \
+ libkadm5srv-mit \
+ libkdb5 \
+ libkrad \
+ libkrb5 \
+ libkrb5support \
+ libverto"
+
+FILES_${PN} = "${libdir}/krb5/plugins/preauth/test.so"
+FILES_${PN}-doc += "${datadir}/examples"
+FILES_${PN}-dbg += "${libdir}/krb5/plugins/*/.debug"
+
+FILES_${PN}-admin-server = "${sbindir}/kadmin.local \
+ ${sbindir}/kadmind \
+ ${sbindir}/kprop \
+ ${sysconfdir}/default/krb5-admin-server \
+ ${sysconfdir}/init.d/krb5-admin-server \
+ ${systemd_system_unitdir}/krb5-admin-server.service"
+
+FILES_${PN}-gss-samples = "${bindir}/gss-client \
+ ${sbindir}/gss-server"
+
+FILES_${PN}-k5tls = "${libdir}/krb5/plugins/tls/k5tls.so"
+
+FILES_${PN}-kdc = "${libdir}/krb5/plugins/kdb/db2.so \
+ ${localstatedir}/krb5kdc \
+ ${sbindir}/kdb5_util \
+ ${sbindir}/kproplog \
+ ${sbindir}/krb5kdc \
+ ${sysconfdir}/default/krb5-kdc \
+ ${sysconfdir}/default/volatiles/87_krb5 \
+ ${sysconfdir}/init.d/krb5-kdc \
+ ${sysconfdir}/tmpfiles.d/krb5.conf \
+ ${systemd_system_unitdir}/krb5-kdc.service"
+
+FILES_${PN}-kdc-ldap = "${libdir}/krb5/libkdb_ldap${SOLIBS} \
+ ${libdir}/krb5/plugins/kdb/kldap.so \
+ ${sbindir}/kdb5_ldap_util"
+
+FILES_${PN}-kpropd = "${sbindir}/kpropd"
+FILES_${PN}-otp = "${libdir}/krb5/plugins/preauth/otp.so"
+FILES_${PN}-pkinit = "${libdir}/krb5/plugins/preauth/pkinit.so"
+FILES_${PN}-user = "${bindir}/k*"
+
+FILES_libgssapi-krb5 = "${libdir}/libgssapi_krb5${SOLIBS}"
+FILES_libgssrpc = "${libdir}/libgssrpc${SOLIBS}"
+FILES_libk5crypto = "${libdir}/libk5crypto${SOLIBS}"
+FILES_libkadm5clnt-mit = "${libdir}/libkadm5clnt_mit${SOLIBS}"
+FILES_libkadm5srv-mit = "${libdir}/libkadm5srv_mit${SOLIBS}"
+FILES_libkdb5 = "${libdir}/libkdb5${SOLIBS}"
+FILES_libkrad = "${libdir}/libkrad${SOLIBS}"
+FILES_libkrb5 = "${libdir}/libkrb5${SOLIBS} \
+ ${libdir}/krb5/plugins/authdata \
+ ${libdir}/krb5/plugins/libkrb5"
+FILES_libkrb5support = "${libdir}/libkrb5support${SOLIBS}"
+FILES_libverto = "${libdir}/libverto${SOLIBS}"
+
+RDEPENDS_${PN}-kadmin-server = "${PN}-kdc"
+RDEPENDS_${PN}-kpropd = "${PN}-kdc"
+
+INITSCRIPT_PACKAGES = "${PN}-admin-server ${PN}-kdc"
+INITSCRIPT_NAME_${PN}-admin-server = "krb5-admin-server"
+INITSCRIPT_NAME_${PN}-kdc = "krb5-kdc"
+
+SYSTEMD_PACKAGES = "${PN}-admin-server ${PN}-kdc"
+SYSTEMD_SERVICE_${PN}-admin-server = "krb5-admin-server.service"
+SYSTEMD_SERVICE_${PN}-kdc = "krb5-kdc.service"
+
+pkg_postinst_${PN}-kdc () {
if [ -z "$D" ]; then
if command -v systemd-tmpfiles >/dev/null; then
systemd-tmpfiles --create ${sysconfdir}/tmpfiles.d/krb5.conf
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/libev/libev_4.24.bb b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/libev/libev_4.24.bb
new file mode 100644
index 000000000..5e0f3a5ed
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/libev/libev_4.24.bb
@@ -0,0 +1,22 @@
+SUMMARY = "A full-featured and high-performance event loop that is loosely \
+modelled after libevent."
+HOMEPAGE = "http://software.schmorp.de/pkg/libev.html"
+LICENSE = "BSD-2-Clause | GPL-2.0+"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=d6ad416afd040c90698edcdf1cbee347"
+
+SRC_URI = "http://dist.schmorp.de/libev/Attic/${BP}.tar.gz"
+
+SRC_URI[md5sum] = "94459a5a22db041dec6f98424d6efe54"
+SRC_URI[sha256sum] = "973593d3479abdf657674a55afe5f78624b0e440614e2b8cb3a07f16d4d7f821"
+
+S = "${WORKDIR}/${PN}-${PV}"
+
+inherit autotools
+
+EXTRA_OECONF += "--with-pic"
+
+do_install_append() {
+ # Avoid conflicting with libevent. The provided compatibility layer is
+ # still basic so drop it for now.
+ rm ${D}${includedir}/event.h
+}
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/libmbim/libmbim_1.14.0.bb b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/libmbim/libmbim_1.14.0.bb
index 02a178863..f89ef9d57 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/libmbim/libmbim_1.14.0.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/libmbim/libmbim_1.14.0.bb
@@ -7,7 +7,7 @@ LIC_FILES_CHKSUM = " \
file://COPYING.LIB;md5=4fbd65380cdd255951079008b364516c \
"
-DEPENDS = "glib-2.0 libgudev"
+DEPENDS = "glib-2.0 glib-2.0-native libgudev"
inherit autotools pkgconfig bash-completion
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/libmtp/libmtp_1.1.5.bb b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/libmtp/libmtp_1.1.5.bb
index b5df8e0dd..c05ff4ea3 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/libmtp/libmtp_1.1.5.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/libmtp/libmtp_1.1.5.bb
@@ -50,9 +50,6 @@ PACKAGES =+ "libmtp-common libmtp-runtime mtp-tools"
RDEPENDS_${PN} += "libmtp-common"
RRECOMMENDS_${PN} += "libmtp-runtime mtp-tools"
FILES_${PN}-dbg += "${nonarch_base_libdir}/udev/.debug/*"
-PKG_${PN}-bin = "mtp-tools"
-SUMMARY_${PN}-bin = "Tools for communicating with MTP devices"
-DESCRIPTION_${PN}-bin = "${DESCRIPTION}\nThis package contains tools for communicating with MTP devices."
FILES_libmtp-common = "${nonarch_base_libdir}/udev/rules.d/*"
SUMMARY_libmtp-common = "The udev rules file for MTP devices"
FILES_libmtp-runtime = "${nonarch_base_libdir}/udev/mtp-probe"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/libndp/libndp/0001-include-sys-select.h-for-fd_-definitions.patch b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/libndp/libndp/0001-include-sys-select.h-for-fd_-definitions.patch
new file mode 100644
index 000000000..15aa94e2c
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/libndp/libndp/0001-include-sys-select.h-for-fd_-definitions.patch
@@ -0,0 +1,25 @@
+From 94e9a082d76414f82794b0c9817d0c24e3868275 Mon Sep 17 00:00:00 2001
+From: Kylie McClain <somasis@exherbo.org>
+Date: Sat, 21 May 2016 21:24:36 -0400
+Subject: [PATCH] ndptool: Fix compilation on musl libc
+
+FD_ZERO, fd_set, etc are defined within sys/select.h on musl.
+
+Signed-off-by: Kylie McClain <somasis@exherbo.org>
+Signed-off-by: Jiri Pirko <jiri@mellanox.com>
+---
+ utils/ndptool.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/utils/ndptool.c b/utils/ndptool.c
+index 1d96f4c..96479fa 100644
+--- a/utils/ndptool.c
++++ b/utils/ndptool.c
+@@ -28,6 +28,7 @@
+ #include <arpa/inet.h>
+ #include <errno.h>
+ #include <ndp.h>
++#include <sys/select.h>
+
+ enum verbosity_level {
+ VERB1,
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/libndp/libndp_1.6.bb b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/libndp/libndp_1.6.bb
index a35dff8b7..2cc345af4 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/libndp/libndp_1.6.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/libndp/libndp_1.6.bb
@@ -3,8 +3,11 @@ SUMMARY = "Library for IPv6 Neighbor Discovery Protocol"
LICENSE = "LGPLv2.1"
LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c"
-SRC_URI = "http://libndp.org/files/${BPN}-${PV}.tar.gz"
-SRC_URI[md5sum] = "1e54d26bcb4a4110bc3f90c5dd04f1a7"
-SRC_URI[sha256sum] = "0c7dfa84e013bd5e569ef2c6292a6f72cfaf14f4ff77a77425e52edc33ffac0e"
+SRC_URI = "git://github.com/jpirko/libndp \
+ file://0001-include-sys-select.h-for-fd_-definitions.patch \
+ "
+# tag for v1.6
+SRCREV = "2f721c4ff519f38f46695a60d9f9d88f35bf3c1d"
+S = "${WORKDIR}/git"
inherit autotools
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/libqmi/libqmi_1.16.0.bb b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/libqmi/libqmi_1.16.0.bb
index 679b102d9..80c26c05c 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/libqmi/libqmi_1.16.0.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/libqmi/libqmi_1.16.0.bb
@@ -7,7 +7,7 @@ LIC_FILES_CHKSUM = " \
file://COPYING.LIB;md5=4fbd65380cdd255951079008b364516c \
"
-DEPENDS = "glib-2.0 libgudev libmbim"
+DEPENDS = "glib-2.0 libgudev libmbim glib-2.0-native"
inherit autotools pkgconfig bash-completion
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/libtorrent/libtorrent/0001-Define-64bit-atomic-helpers-for-ppc-32-bit.patch b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/libtorrent/libtorrent/0001-Define-64bit-atomic-helpers-for-ppc-32-bit.patch
new file mode 100644
index 000000000..4d0979710
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/libtorrent/libtorrent/0001-Define-64bit-atomic-helpers-for-ppc-32-bit.patch
@@ -0,0 +1,30 @@
+From c9859a38a58996b8767a30e14febc03845f66f95 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 1 Jul 2017 13:10:53 -0700
+Subject: [PATCH] Define 64bit atomic helpers for ppc 32-bit
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/atomic64.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/src/atomic64.c b/src/atomic64.c
+index f841b39b..35c7c9d8 100644
+--- a/src/atomic64.c
++++ b/src/atomic64.c
+@@ -18,10 +18,10 @@
+ #include <stdbool.h>
+
+ /*
+- * only need these on MIPS, since it lacks hardware 64-bit atomics,
++ * only need these on MIPS & PPC32, since it lacks hardware 64-bit atomics,
+ * unlike x86 and ARM.
+ */
+-#if defined(__mips__) || defined(__mipsel__)
++#if defined(__mips__) || defined(__mipsel__) || defined(__powerpc__)
+
+ static void __spin_lock(volatile int *lock) {
+ while (__sync_lock_test_and_set(lock, 1))
+--
+2.13.2
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/libtorrent/libtorrent/0001-implement-64bit-atomic-for-mips.patch b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/libtorrent/libtorrent/0001-implement-64bit-atomic-for-mips.patch
new file mode 100644
index 000000000..84e0772a7
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/libtorrent/libtorrent/0001-implement-64bit-atomic-for-mips.patch
@@ -0,0 +1,263 @@
+From d7b6df5808e7bef5930b61a82e880699a9f9e208 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Thu, 29 Jun 2017 15:39:19 -0700
+Subject: [PATCH] implement 64bit atomic for mips
+
+GCC does not provide 64bit atomics for mips32
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/Makefile.am | 1 +
+ src/atomic64.c | 228 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ 2 files changed, 229 insertions(+)
+ create mode 100644 src/atomic64.c
+
+diff --git a/src/Makefile.am b/src/Makefile.am
+index 99aaace0..cbbbbee9 100644
+--- a/src/Makefile.am
++++ b/src/Makefile.am
+@@ -27,6 +27,7 @@ libtorrent_la_LIBADD = \
+ utils/libsub_utils.la
+
+ libtorrent_la_SOURCES = \
++ atomic64.c \
+ globals.cc \
+ globals.h \
+ manager.cc \
+diff --git a/src/atomic64.c b/src/atomic64.c
+new file mode 100644
+index 00000000..f841b39b
+--- /dev/null
++++ b/src/atomic64.c
+@@ -0,0 +1,228 @@
++/*===----- atomic64.c - Support functions for 64-bit atomic operations.-----===
++ *
++ * The LLVM Compiler Infrastructure
++ *
++ * This file is dual licensed under the MIT and the University of Illinois Open
++ * Source Licenses. See LICENSE.TXT for details.
++ *
++ *===-----------------------------------------------------------------------===
++ *
++ * atomic64.c defines a set of functions for performing atomic accesses on
++ * 64-bit memory locations. It also implements spinlock synchronization
++ * operations.
++ *
++ *===-----------------------------------------------------------------------===
++ */
++
++#include <stdint.h>
++#include <stdbool.h>
++
++/*
++ * only need these on MIPS, since it lacks hardware 64-bit atomics,
++ * unlike x86 and ARM.
++ */
++#if defined(__mips__) || defined(__mipsel__)
++
++static void __spin_lock(volatile int *lock) {
++ while (__sync_lock_test_and_set(lock, 1))
++ while (*lock) {}
++}
++
++static void __spin_unlock(volatile int *lock) {
++ __sync_lock_release(lock);
++}
++
++/*
++ * Make sure the lock is on its own cache line to prevent false sharing.
++ * Put it inside a struct that is aligned and padded to the typical MIPS
++ * cacheline which is 32 bytes.
++ */
++static struct {
++ int lock;
++ char pad[32 - sizeof(int)];
++} __attribute__((aligned (32))) lock = { 0 };
++
++
++uint64_t __sync_fetch_and_add_8(volatile uint64_t *ptr, uint64_t val) {
++ uint64_t ret;
++
++ __spin_lock(&lock.lock);
++
++ ret = *ptr;
++ *ptr = ret + val;
++
++ __spin_unlock(&lock.lock);
++
++ return ret;
++}
++
++uint64_t __sync_fetch_and_sub_8(volatile uint64_t *ptr, uint64_t val) {
++ uint64_t ret;
++
++ __spin_lock(&lock.lock);
++
++ ret = *ptr;
++ *ptr = ret - val;
++
++ __spin_unlock(&lock.lock);
++
++ return ret;
++}
++
++uint64_t __sync_fetch_and_and_8(volatile uint64_t *ptr, uint64_t val) {
++ uint64_t ret;
++
++ __spin_lock(&lock.lock);
++
++ ret = *ptr;
++ *ptr = ret & val;
++
++ __spin_unlock(&lock.lock);
++
++ return ret;
++}
++
++uint64_t __sync_fetch_and_or_8(volatile uint64_t *ptr, uint64_t val) {
++ uint64_t ret;
++
++ __spin_lock(&lock.lock);
++
++ ret = *ptr;
++ *ptr = ret | val;
++
++ __spin_unlock(&lock.lock);
++
++ return ret;
++}
++
++uint64_t __sync_fetch_and_xor_8(volatile uint64_t *ptr, uint64_t val) {
++ uint64_t ret;
++
++ __spin_lock(&lock.lock);
++
++ ret = *ptr;
++ *ptr = ret ^ val;
++
++ __spin_unlock(&lock.lock);
++
++ return ret;
++}
++
++uint64_t __sync_add_and_fetch_8(volatile uint64_t *ptr, uint64_t val) {
++ uint64_t ret;
++
++ __spin_lock(&lock.lock);
++
++ ret = *ptr + val;
++ *ptr = ret;
++
++ __spin_unlock(&lock.lock);
++
++ return ret;
++}
++
++uint64_t __sync_sub_and_fetch_8(volatile uint64_t *ptr, uint64_t val) {
++ uint64_t ret;
++
++ __spin_lock(&lock.lock);
++
++ ret = *ptr - val;
++ *ptr = ret;
++
++ __spin_unlock(&lock.lock);
++
++ return ret;
++}
++
++uint64_t __sync_and_and_fetch_8(volatile uint64_t *ptr, uint64_t val) {
++ uint64_t ret;
++
++ __spin_lock(&lock.lock);
++
++ ret = *ptr & val;
++ *ptr = ret;
++
++ __spin_unlock(&lock.lock);
++
++ return ret;
++}
++
++uint64_t __sync_or_and_fetch_8(volatile uint64_t *ptr, uint64_t val) {
++ uint64_t ret;
++
++ __spin_lock(&lock.lock);
++
++ ret = *ptr | val;
++ *ptr = ret;
++
++ __spin_unlock(&lock.lock);
++
++ return ret;
++}
++
++uint64_t __sync_xor_and_fetch_8(volatile uint64_t *ptr, uint64_t val) {
++ uint64_t ret;
++
++ __spin_lock(&lock.lock);
++
++ ret = *ptr ^ val;
++ *ptr = ret;
++
++ __spin_unlock(&lock.lock);
++
++ return ret;
++}
++
++bool __sync_bool_compare_and_swap_8(volatile uint64_t *ptr,
++ uint64_t oldval, uint64_t newval) {
++ bool ret = false;
++
++ __spin_lock(&lock.lock);
++
++ if (*ptr == oldval) {
++ *ptr = newval;
++ ret = true;
++ }
++
++ __spin_unlock(&lock.lock);
++
++ return ret;
++}
++
++uint64_t __sync_val_compare_and_swap_8(volatile uint64_t *ptr,
++ uint64_t oldval, uint64_t newval) {
++ uint64_t ret;
++
++ __spin_lock(&lock.lock);
++
++ ret = *ptr;
++ if (ret == oldval)
++ *ptr = newval;
++
++ __spin_unlock(&lock.lock);
++
++ return ret;
++}
++
++uint64_t __sync_lock_test_and_set_8(volatile uint64_t *ptr, uint64_t val) {
++ uint64_t ret;
++
++ __spin_lock(&lock.lock);
++
++ ret = *ptr;
++ *ptr = val;
++
++ __spin_unlock(&lock.lock);
++
++ return ret;
++}
++
++void __sync_lock_release_8(volatile uint64_t *ptr) {
++ __spin_lock(&lock.lock);
++
++ *ptr = 0;
++
++ __spin_unlock(&lock.lock);
++}
++
++#endif
+--
+2.13.2
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/libtorrent/libtorrent_0.13.3.bb b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/libtorrent/libtorrent_0.13.3.bb
deleted file mode 100644
index 4af3a6a6a..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/libtorrent/libtorrent_0.13.3.bb
+++ /dev/null
@@ -1,17 +0,0 @@
-DESCRIPTION = "libTorrent is a BitTorrent library written in C++ for *nix, \
-with a focus on high performance and good code."
-HOMEPAGE = "http://libtorrent.rakshasa.no/"
-LICENSE = "GPL-2.0"
-LIC_FILES_CHKSUM = "file://COPYING;md5=393a5ca445f6965873eca0259a17f833"
-
-DEPENDS = "libsigc++-2.0 openssl cppunit"
-
-SRC_URI = "http://libtorrent.rakshasa.no/downloads/${BP}.tar.gz \
- file://don-t-run-code-while-configuring-package.patch \
-"
-
-SRC_URI[md5sum] = "e94f6c590bb02aaf4d58618f738a85f2"
-SRC_URI[sha256sum] = "34317d6783b7f8d0805274c9467475b5432a246c0de8e28fc16e3b0b43f35677"
-
-inherit autotools pkgconfig
-
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/libtorrent/libtorrent_git.bb b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/libtorrent/libtorrent_git.bb
new file mode 100644
index 000000000..92e65289a
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/libtorrent/libtorrent_git.bb
@@ -0,0 +1,26 @@
+DESCRIPTION = "libTorrent is a BitTorrent library written in C++ for *nix, \
+with a focus on high performance and good code."
+HOMEPAGE = "http://libtorrent.rakshasa.no/"
+LICENSE = "GPL-2.0"
+LIC_FILES_CHKSUM = "file://COPYING;md5=393a5ca445f6965873eca0259a17f833"
+
+DEPENDS = "zlib libsigc++-2.0 openssl cppunit"
+
+SRC_URI = "git://github.com/rakshasa/libtorrent \
+ file://don-t-run-code-while-configuring-package.patch \
+ file://0001-implement-64bit-atomic-for-mips.patch \
+ file://0001-Define-64bit-atomic-helpers-for-ppc-32-bit.patch \
+ "
+SRCREV = "c167c5a9e0bcf0df23ae5efd91396aae0e37eb87"
+
+PV = "0.13.6+git${SRCPV}"
+
+S = "${WORKDIR}/git"
+
+inherit autotools pkgconfig
+
+EXTRA_OECONF = "--with-zlib=${STAGING_EXECPREFIXDIR}"
+
+do_configure_prepend() {
+ (cd ${S}; ./autogen.sh; cd -)
+}
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/libuv/libuv_1.11.0.bb b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/libuv/libuv_1.11.0.bb
new file mode 100644
index 000000000..0a5846bb8
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/libuv/libuv_1.11.0.bb
@@ -0,0 +1,19 @@
+SUMMARY = "A multi-platform support library with a focus on asynchronous I/O"
+HOMEPAGE = "https://github.com/libuv/libuv"
+BUGTRACKER = "https://github.com/libuv/libuv/issues"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=bb5ea0d651f4c3519327171906045775"
+
+SRC_URI = "https://github.com/libuv/${BPN}/archive/v${PV}.tar.gz;downloadfilename=${BP}.tar.gz"
+
+SRC_URI[md5sum] = "15550a9f5f45f7f32ae2d9bb0a21a2a7"
+SRC_URI[sha256sum] = "6ec7eec6ecc24b1a8ffedebedb2fe9313fffb5410de89aaf784dd01080411c7a"
+
+inherit autotools
+
+do_configure() {
+ ${S}/autogen.sh || bbnote "${PN} failed to autogen.sh"
+ oe_runconf
+}
+
+BBCLASSEXTEND = "native"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/libwebsockets/libwebsockets_2.1.0.bb b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/libwebsockets/libwebsockets_2.1.0.bb
new file mode 100644
index 000000000..935479987
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/libwebsockets/libwebsockets_2.1.0.bb
@@ -0,0 +1,28 @@
+SUMMARY = "Canonical libwebsockets.org websocket library"
+HOMEPAGE = "https://libwebsockets.org/"
+LICENSE = "LGPL-2.1"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=e3393a657830d4a118c5a6ed35ba53d0"
+
+DEPENDS = "zlib"
+
+SRC_URI = "https://github.com/warmcat/libwebsockets/archive/v${PV}.tar.gz"
+
+SRC_URI[md5sum] = "4df3be57dee43aeebd54a3ed56568f50"
+SRC_URI[sha256sum] = "bcc96aaa609daae4d3f7ab1ee480126709ef4f6a8bf9c85de40aae48e38cce66"
+
+inherit cmake pkgconfig
+
+PACKAGECONFIG ?= "libuv client server http2 ssl"
+PACKAGECONFIG[client] = "-DLWS_WITHOUT_CLIENT=OFF,-DLWS_WITHOUT_CLIENT=ON,"
+PACKAGECONFIG[http2] = "-DLWS_WITH_HTTP2=ON,-DLWS_WITH_HTTP2=OFF,"
+PACKAGECONFIG[ipv6] = "-DLWS_IPV6=ON,-DLWS_IPV6=OFF,"
+PACKAGECONFIG[libev] = "-DLWS_WITH_LIBEV=ON,-DLWS_WITH_LIBEV=OFF,libev"
+PACKAGECONFIG[libuv] = "-DLWS_WITH_LIBUV=ON,-DLWS_WITH_LIBUV=OFF,libuv"
+PACKAGECONFIG[server] = "-DLWS_WITHOUT_SERVER=OFF,-DLWS_WITHOUT_SERVER=ON,"
+PACKAGECONFIG[ssl] = "-DLWS_WITH_SSL=ON,-DLWS_WITH_SSL=OFF,openssl"
+PACKAGECONFIG[testapps] = "-DLWS_WITHOUT_TESTAPPS=OFF,-DLWS_WITHOUT_TESTAPPS=ON,"
+
+PACKAGES =+ "${PN}-testapps"
+
+FILES_${PN}-dev += "${libdir}/cmake"
+FILES_${PN}-testapps += "${datadir}/libwebsockets-test-server/*"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/linuxptp/linuxptp/no-incdefs-using-host-headers.patch b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/linuxptp/linuxptp/no-incdefs-using-host-headers.patch
new file mode 100644
index 000000000..02dbb2346
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/linuxptp/linuxptp/no-incdefs-using-host-headers.patch
@@ -0,0 +1,29 @@
+From 8a4cad5e2f2cbb6a34bdc6e877fe499502b8c4c8 Mon Sep 17 00:00:00 2001
+From: Marcel Ziswiler <marcel.ziswiler@toradex.com>
+Date: Fri, 23 Dec 2016 18:12:29 +0100
+Subject: [PATCH] linuxptp: no incdefs using host headers
+
+Avoid using host headers via incdefs.sh shell script.
+
+Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
+---
+
+ makefile | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/makefile b/makefile
+index 8cdbd15..85174b8 100644
+--- a/makefile
++++ b/makefile
+@@ -33,7 +33,7 @@ OBJECTS = $(OBJ) hwstamp_ctl.o phc2sys.o phc_ctl.o pmc.o pmc_common.o \
+ SRC = $(OBJECTS:.o=.c)
+ DEPEND = $(OBJECTS:.o=.d)
+ srcdir := $(dir $(lastword $(MAKEFILE_LIST)))
+-incdefs := $(shell $(srcdir)/incdefs.sh)
++#incdefs := $(shell $(srcdir)/incdefs.sh)
+ version := $(shell $(srcdir)/version.sh $(srcdir))
+ VPATH = $(srcdir)
+
+--
+2.9.3
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/linuxptp/linuxptp_1.6.bb b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/linuxptp/linuxptp_1.6.bb
index 0939d17f9..2e28644f0 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/linuxptp/linuxptp_1.6.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/linuxptp/linuxptp_1.6.bb
@@ -3,13 +3,14 @@ LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
SRC_URI = "http://sourceforge.net/projects/linuxptp/files/v${PV}/linuxptp-${PV}.tgz \
- file://build-Allow-CC-and-prefix-to-be-overriden.patch"
+ file://build-Allow-CC-and-prefix-to-be-overriden.patch \
+ file://no-incdefs-using-host-headers.patch"
SRC_URI[md5sum] = "6aa15d83f5a35f1fd076ba9adc4e7285"
SRC_URI[sha256sum] = "e7fd16a9f235b059be527bd512e86f0c1d9f2e7c36736e6d6d9727a4427ac14c"
EXTRA_OEMAKE = "ARCH=${TARGET_ARCH} \
- EXTRA_CFLAGS='-D_GNU_SOURCE -DHAVE_CLOCK_ADJTIME -DHAVE_ONESTEP_SYNC ${CFLAGS}'"
+ EXTRA_CFLAGS='-D_GNU_SOURCE -DHAVE_CLOCK_ADJTIME -DHAVE_POSIX_SPAWN -DHAVE_ONESTEP_SYNC ${CFLAGS}'"
do_install () {
install -d ${D}/${bindir}
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/lirc/lirc.inc b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/lirc/lirc.inc
deleted file mode 100644
index 6ff8e0160..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/lirc/lirc.inc
+++ /dev/null
@@ -1,13 +0,0 @@
-DESCRIPTION = "LIRC is a package that allows you to decode and send infra-red signals of many commonly used remote controls."
-DESCRIPTION_append_lirc = " This package contains the lirc daemon, libraries and tools."
-DESCRIPTION_append_lirc-exec = " This package contains a daemon that runs programs on IR signals."
-DESCRIPTION_append_lirc-remotes = " This package contains some config files for remotes."
-DESCRIPTION_append_lirc-nslu2example = " This package contains a working config for RC5 remotes and a modified NSLU2."
-HOMEPAGE = "http://www.lirc.org"
-SECTION = "console/network"
-LICENSE = "GPLv2"
-DEPENDS = "alsa-lib libftdi libusb1 libusb-compat jack portaudio-v19"
-
-SRC_URI = "http://prdownloads.sourceforge.net/lirc/lirc-${PV}.tar.bz2"
-
-LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/lirc/lirc/0001-lircrcd-Mark-local-inline-funtions-as-static.patch b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/lirc/lirc/0001-lircrcd-Mark-local-inline-funtions-as-static.patch
deleted file mode 100644
index e19d27671..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/lirc/lirc/0001-lircrcd-Mark-local-inline-funtions-as-static.patch
+++ /dev/null
@@ -1,49 +0,0 @@
-From c2be4543e4777c9e3d74b30326ba37b01917b0a9 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Thu, 25 Aug 2016 03:02:37 +0000
-Subject: [PATCH] lircrcd: Mark local inline funtions as static
-
-These functions are not used anywhere outside
-this file, so they should be converted into static
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
-Upstream-Status: Pending
-
- daemons/lircrcd.c | 6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/daemons/lircrcd.c b/daemons/lircrcd.c
-index 55777cd..5ddc94d 100644
---- a/daemons/lircrcd.c
-+++ b/daemons/lircrcd.c
-@@ -153,7 +153,7 @@ char *s;
- /* A safer write(), since sockets might not write all but only some of the
- bytes requested */
-
--inline int write_socket(int fd, char *buf, int len)
-+static inline int write_socket(int fd, char *buf, int len)
- {
- int done, todo = len;
-
-@@ -167,7 +167,7 @@ inline int write_socket(int fd, char *buf, int len)
- return (len);
- }
-
--inline int write_socket_len(int fd, char *buf)
-+static inline int write_socket_len(int fd, char *buf)
- {
- int len;
-
-@@ -177,7 +177,7 @@ inline int write_socket_len(int fd, char *buf)
- return (1);
- }
-
--inline int read_timeout(int fd, char *buf, int len, int timeout)
-+static inline int read_timeout(int fd, char *buf, int len, int timeout)
- {
- fd_set fds;
- struct timeval tv;
---
-1.9.1
-
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/lirc/lirc/pollfd.patch b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/lirc/lirc/pollfd.patch
new file mode 100644
index 000000000..4feea8034
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/lirc/lirc/pollfd.patch
@@ -0,0 +1,101 @@
+Index: lirc-0.9.4d/daemons/lircrcd.cpp
+===================================================================
+--- lirc-0.9.4d.orig/daemons/lircrcd.cpp
++++ lirc-0.9.4d/daemons/lircrcd.cpp
+@@ -29,10 +29,12 @@
+ #include <sys/un.h>
+ #include <sys/stat.h>
+ #include <sys/types.h>
++#include <poll.h>
+ #include <syslog.h>
+
+ #include "lirc_client.h"
+ #include "lirc/lirc_log.h"
++#include "lirc/curl_poll.h"
+
+ #define MAX_CLIENTS 100
+ #define WHITE_SPACE " \t"
+Index: lirc-0.9.4d/lib/curl_poll.c
+===================================================================
+--- lirc-0.9.4d.orig/lib/curl_poll.c
++++ lirc-0.9.4d/lib/curl_poll.c
+@@ -36,6 +36,7 @@
+ #include <stdlib.h>
+ #include <sys/time.h>
+ #include <sys/types.h>
++#include <sys/poll.h>
+
+ #include "lirc_log.h"
+ #include "curl_poll.h"
+@@ -67,7 +68,7 @@ static const logchannel_t logchannel = L
+
+ #ifdef HAVE_POLL_FINE
+
+-int curl_poll(struct pollfd ufds[], unsigned int nfds, int timeout_ms)
++int curl_poll(struct pollfd *ufds, unsigned int nfds, int timeout_ms)
+ {
+ return poll(ufds, nfds, timeout_ms);
+ }
+@@ -112,7 +113,7 @@ static int verify_sock(int s)
+ }
+
+
+-int curl_poll(struct pollfd ufds[], unsigned int nfds, int timeout_ms)
++int curl_poll(struct pollfd *ufds, unsigned int nfds, int timeout_ms)
+ {
+ struct timeval pending_tv;
+ struct timeval* ptimeout;
+Index: lirc-0.9.4d/lib/curl_poll.h
+===================================================================
+--- lirc-0.9.4d.orig/lib/curl_poll.h
++++ lirc-0.9.4d/lib/curl_poll.h
+@@ -1,5 +1,5 @@
+-#ifndef _POLL_H
+-#define _POLL_H
++#ifndef _LIB_CURL_POLL_H
++#define _LIB_CURL_POLL_H
+ /***************************************************************************
+ * _ _ ____ _
+ * Project ___| | | | _ \| |
+@@ -29,13 +29,9 @@
+ extern "C" {
+ #endif
+
+-#ifdef HAVE_SYS_POLL_H
+-#include <sys/poll.h>
+-#else
+ #include <poll.h>
+-#endif
+
+-int curl_poll(struct pollfd ufds[], unsigned int nfds, int timeout_ms);
++int curl_poll(struct pollfd *ufds, unsigned int nfds, int timeout_ms);
+
+ #ifdef __cplusplus
+ }
+Index: lirc-0.9.4d/lib/lirc/curl_poll.h
+===================================================================
+--- lirc-0.9.4d.orig/lib/lirc/curl_poll.h
++++ lirc-0.9.4d/lib/lirc/curl_poll.h
+@@ -1,5 +1,5 @@
+-#ifndef _POLL_H
+-#define _POLL_H
++#ifndef _LIRC_CURL_POLL_H
++#define _LIRC_CURL_POLL_H
+ /***************************************************************************
+ * _ _ ____ _
+ * Project ___| | | | _ \| |
+@@ -29,13 +29,9 @@
+ extern "C" {
+ #endif
+
+-#ifdef HAVE_SYS_POLL_H
+-#include <sys/poll.h>
+-#else
+ #include <poll.h>
+-#endif
+
+-int curl_poll(struct pollfd ufds[], unsigned int nfds, int timeout_ms);
++int curl_poll(struct pollfd *ufds, unsigned int nfds, int timeout_ms);
+
+ #ifdef __cplusplus
+ }
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/lirc/lirc_0.9.2.bb b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/lirc/lirc_0.9.4d.bb
index 17261921f..b13163deb 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/lirc/lirc_0.9.2.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/lirc/lirc_0.9.4d.bb
@@ -1,7 +1,18 @@
-require lirc.inc
+DESCRIPTION = "LIRC is a package that allows you to decode and send infra-red signals of many commonly used remote controls."
+DESCRIPTION_append_lirc = " This package contains the lirc daemon, libraries and tools."
+DESCRIPTION_append_lirc-exec = " This package contains a daemon that runs programs on IR signals."
+DESCRIPTION_append_lirc-remotes = " This package contains some config files for remotes."
+DESCRIPTION_append_lirc-nslu2example = " This package contains a working config for RC5 remotes and a modified NSLU2."
+HOMEPAGE = "http://www.lirc.org"
+SECTION = "console/network"
+LICENSE = "GPLv2"
+DEPENDS = "libxslt-native alsa-lib libftdi libusb1 libusb-compat jack portaudio-v19"
-SRC_URI += " \
- file://0001-lircrcd-Mark-local-inline-funtions-as-static.patch \
+
+LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
+
+SRC_URI = "http://prdownloads.sourceforge.net/lirc/lirc-${PV}.tar.bz2 \
+ file://pollfd.patch \
file://lircd.service \
file://lircd.init \
file://lircexec.init \
@@ -9,14 +20,14 @@ SRC_URI += " \
file://lirc_options.conf \
file://lirc.tmpfiles \
"
-#file://0001-Adaptation-for-STM-configuration.patch \
-#
-SRC_URI[md5sum] = "3afc84e79c0839823cc20e7a710dd06d"
-SRC_URI[sha256sum] = "4e3f948fcdee6dce009171143f0cb7cd7be48593dd58138db4101a41f651a1dd"
+SRC_URI[md5sum] = "0d11679cbdd94a5a6da00a8e7231b4bf"
+SRC_URI[sha256sum] = "c68f18c35b489b865c0a741d119b136e8702191538cd3551b977a7af6c4e41ab"
-SYSTEMD_PACKAGES = "lirc"
-SYSTEMD_SERVICE_${PN} = "lircd.service lircmd.service"
+SYSTEMD_PACKAGES = "lirc lirc-exec"
+SYSTEMD_SERVICE_${PN} = "lircd.service lircmd.service lircd-setup.service lircd-uinput.service"
+SYSTEMD_SERVICE_${PN}-exec = "irexec.service"
SYSTEMD_AUTO_ENABLE_lirc = "enable"
+SYSTEMD_AUTO_ENABLE_lirc-exec = "enable"
inherit autotools pkgconfig systemd python3native
@@ -27,6 +38,7 @@ PACKAGECONFIG ?= " \
${@bb.utils.contains('DISTRO_FEATURES', 'systemd', ' systemd', '', d)} \
${@bb.utils.contains('DISTRO_FEATURES', 'x11', ' x11', '', d)} \
"
+CACHED_CONFIGUREVARS = "HAVE_WORKING_POLL=yes"
#EXTRA_OEMAKE = 'SUBDIRS="lib daemons tools"'
do_install_append() {
@@ -41,6 +53,7 @@ do_install_append() {
install -m 0644 ${WORKDIR}/lirc.tmpfiles ${D}${libdir}/tmpfiles.d/lirc.conf
rm -rf ${D}${libdir}/lirc/plugins/*.la
rmdir ${D}/var/run/lirc ${D}/var/run
+ chown -R root:root ${D}${datadir}/lirc/contrib
}
PACKAGES =+ "${PN}-contrib ${PN}-exec ${PN}-plugins ${PN}-python"
@@ -53,7 +66,7 @@ RRECOMMENDS_lirc = "${PN}-exec ${PN}-plugins"
FILES_${PN}-plugins = "${libdir}/lirc/plugins/*.so ${datadir}/lirc/configs"
FILES_${PN}-contrib = "${datadir}/lirc/contrib"
-FILES_${PN}-exec = "${bindir}/irexec ${sysconfdir}/lircexec"
+FILES_${PN}-exec = "${bindir}/irexec ${sysconfdir}/lircexec ${systemd_unitdir}/system/irexec.service"
FILES_${PN} += "${systemd_unitdir}/system/lircexec.init"
FILES_${PN} += "${systemd_unitdir}/system/lircd.service"
FILES_${PN} += "${systemd_unitdir}/system/lircd.socket"
@@ -70,3 +83,5 @@ INITSCRIPT_PARAMS_lirc-exec = "defaults 21"
pkg_postinst_${PN}_append() {
if [ ! -c $D/dev/lirc -a ! -f /sbin/udevd ]; then mknod $D/dev/lirc c 61 0; fi
}
+
+SECURITY_CFLAGS = "${SECURITY_NO_PIE_CFLAGS}"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/modemmanager/modemmanager_1.6.4.bb b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/modemmanager/modemmanager_1.6.4.bb
index 5e4e22082..e60cd4b74 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/modemmanager/modemmanager_1.6.4.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/modemmanager/modemmanager_1.6.4.bb
@@ -20,7 +20,7 @@ SRC_URI[sha256sum] = "cdd5b4cb1e4d7643643a28ccbfc4bb354bfa9cb89a77ea160ebdf79261
S = "${WORKDIR}/ModemManager-${PV}"
PACKAGECONFIG ??= "mbim qmi polkit \
- ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd', '', d)} \
+ ${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)} \
"
PACKAGECONFIG[systemd] = "--with-systemdsystemunitdir=${systemd_unitdir}/system/,,"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/mosh/mosh_1.2.4.bb b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/mosh/mosh_1.3.0.bb
index 4bf238d28..9fc8435ee 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/mosh/mosh_1.2.4.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/mosh/mosh_1.3.0.bb
@@ -15,11 +15,10 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
DEPENDS = "protobuf-native protobuf ncurses zlib libio-pty-perl openssl libutempter"
SRC_URI = "http://mosh.mit.edu/mosh-${PV}.tar.gz"
+SRC_URI[md5sum] = "d961276995936953bf2d5a794068b076"
+SRC_URI[sha256sum] = "320e12f461e55d71566597976bd9440ba6c5265fa68fbf614c6f1c8401f93376"
-SRC_URI[md5sum] = "c2d918f4d91fdc32546e2e089f9281b2"
-SRC_URI[sha256sum] = "e74d0d323226046e402dd469a176075fc2013b69b0e67cea49762c957175df46"
-
-inherit autotools
+inherit autotools pkgconfig
PACKAGE_BEFORE_PN += "${PN}-server"
FILES_${PN}-server = "${bindir}/mosh-server"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/networkmanager/networkmanager-openvpn_1.0.8.bb b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/networkmanager/networkmanager-openvpn_1.2.8.bb
index fe1d60121..cce3f9188 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/networkmanager/networkmanager-openvpn_1.0.8.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/networkmanager/networkmanager-openvpn_1.2.8.bb
@@ -4,25 +4,33 @@ SECTION = "net/misc"
LICENSE = "GPLv2+"
LIC_FILES_CHKSUM = "file://COPYING;md5=100d5a599bead70ddcd70dcd73f2e29c"
-DEPENDS = "dbus dbus-glib networkmanager openvpn intltool-native"
+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] = "758a9951ad5e20a37c72cc7326c9c750"
-SRC_URI[sha256sum] = "1b979519d72ba4d78e729d4856c5b53fad914ca7ee3ca91209ce489ba78912ac"
+SRC_URI[md5sum] = "9f325be386aa906ff9b0b7c0bdf2a59a"
+SRC_URI[sha256sum] = "3e0b4007f248d96df4b8eb5d0f937536044af7053debbbf525e67c9bc5d30654"
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 \
+ ${libdir}/NetworkManager/VPN/nm-openvpn-service.name \
+"
+
+FILES_${PN}-staticdev += " \
+ ${libdir}/NetworkManager/*.a \
"
RDEPENDS_${PN} = " \
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/networkmanager/networkmanager/0001-adjust-net-headers-for-musl-compatibility.patch b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/networkmanager/networkmanager/0001-adjust-net-headers-for-musl-compatibility.patch
new file mode 100644
index 000000000..ced0c7cff
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/networkmanager/networkmanager/0001-adjust-net-headers-for-musl-compatibility.patch
@@ -0,0 +1,82 @@
+From 047d3bf96b510740f64687480333c378e414995f Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 31 Mar 2017 15:57:05 -0700
+Subject: [PATCH 1/5] adjust net/ headers for musl compatibility
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ libnm-core/nm-utils.c | 12 +++++++-----
+ libnm-core/nm-utils.h | 5 ++---
+ src/platform/wifi/wifi-utils.h | 2 +-
+ 3 files changed, 10 insertions(+), 9 deletions(-)
+
+diff --git a/libnm-core/nm-utils.c b/libnm-core/nm-utils.c
+index df75d56..868224e 100644
+--- a/libnm-core/nm-utils.c
++++ b/libnm-core/nm-utils.c
+@@ -19,24 +19,26 @@
+ * Copyright 2005 - 2014 Red Hat, Inc.
+ */
+
+-#include "nm-default.h"
+-
+-#include "nm-utils.h"
+-
+ #include <string.h>
+ #include <errno.h>
+ #include <stdlib.h>
+-#include <netinet/ether.h>
+ #include <arpa/inet.h>
+ #include <uuid/uuid.h>
+ #include <libintl.h>
+ #include <gmodule.h>
+ #include <sys/stat.h>
++//#include <net/if_arp.h>
++//#include <net/ethernet.h>
++#include <netinet/ether.h>
++
++#include "nm-default.h"
+
++#include "nm-utils.h"
+ #if WITH_JANSSON
+ #include <jansson.h>
+ #endif
+
++
+ #include "nm-common-macros.h"
+ #include "nm-utils-private.h"
+ #include "nm-setting-private.h"
+diff --git a/libnm-core/nm-utils.h b/libnm-core/nm-utils.h
+index 407c14e..156ccae 100644
+--- a/libnm-core/nm-utils.h
++++ b/libnm-core/nm-utils.h
+@@ -27,11 +27,10 @@
+
+ #include <glib.h>
+
+-#include <netinet/in.h>
+-
+ /* For ETH_ALEN and INFINIBAND_ALEN */
+-#include <linux/if_ether.h>
++//#include <linux/if_ether.h>
+ #include <linux/if_infiniband.h>
++#include <netinet/in.h>
+
+ #include "nm-core-enum-types.h"
+ #include "nm-setting-wireless-security.h"
+diff --git a/src/platform/wifi/wifi-utils.h b/src/platform/wifi/wifi-utils.h
+index 8e2b93f..84f5ce9 100644
+--- a/src/platform/wifi/wifi-utils.h
++++ b/src/platform/wifi/wifi-utils.h
+@@ -22,7 +22,7 @@
+ #ifndef __WIFI_UTILS_H__
+ #define __WIFI_UTILS_H__
+
+-#include <net/ethernet.h>
++//#include <net/ethernet.h>
+
+ #include "nm-dbus-interface.h"
+
+--
+2.12.1
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/networkmanager/networkmanager/0001-check-for-strndupa-before-using-it.patch b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/networkmanager/networkmanager/0001-check-for-strndupa-before-using-it.patch
new file mode 100644
index 000000000..26f380bf9
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/networkmanager/networkmanager/0001-check-for-strndupa-before-using-it.patch
@@ -0,0 +1,67 @@
+From 05e8bd664d0244cb8ab4376b962830b97860f6bf Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 31 Mar 2017 18:37:19 -0700
+Subject: [PATCH] check for strndupa before using it
+
+musl does not have strndupa
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ config.h.in | 4 ++++
+ configure.ac | 1 +
+ src/systemd/src/basic/alloc-util.h | 12 ++++++++++++
+ 3 files changed, 17 insertions(+)
+
+diff --git a/config.h.in b/config.h.in
+index db8c135..c4229ed 100644
+--- a/config.h.in
++++ b/config.h.in
+@@ -41,6 +41,10 @@
+ */
+ #undef HAVE_DCGETTEXT
+
++/* Define to 1 if you have the declaration of `strndupa', and to 0 if you
++ don't. */
++#undef HAVE_DECL_STRNDUPA
++
+ /* Define to 1 if you have the <dlfcn.h> header file. */
+ #undef HAVE_DLFCN_H
+
+diff --git a/configure.ac b/configure.ac
+index 2630f8d..d0a57fd 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -54,6 +54,7 @@ AC_SUBST(NM_VERSION)
+
+ GIT_SHA_RECORD(NM_GIT_SHA)
+
++AC_CHECK_DECLS([strndupa], [], [], [[#include <string.h>]])
+ dnl
+ dnl Checks for typedefs, structures, and compiler characteristics.
+ dnl
+diff --git a/src/systemd/src/basic/alloc-util.h b/src/systemd/src/basic/alloc-util.h
+index ceeee51..924b59c 100644
+--- a/src/systemd/src/basic/alloc-util.h
++++ b/src/systemd/src/basic/alloc-util.h
+@@ -25,6 +25,18 @@
+ #include <string.h>
+
+ #include "macro.h"
++#include "config.h"
++
++#if !HAVE_DECL_STRNDUPA
++#define strndupa(s, n) \
++ ({ \
++ const char *__old = (s); \
++ size_t __len = strnlen(__old, (n)); \
++ char *__new = (char *)alloca(__len + 1); \
++ __new[__len] = '\0'; \
++ (char *)memcpy(__new, __old, __len); \
++ })
++#endif
+
+ #define new(t, n) ((t*) malloc_multiply(sizeof(t), (n)))
+
+--
+2.12.1
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/networkmanager/networkmanager/0006-Fix-nm-version-macro-includes.patch b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/networkmanager/networkmanager/0002-Fix-nm-version-macro-includes.patch
index aa57c832c..aa57c832c 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/networkmanager/networkmanager/0006-Fix-nm-version-macro-includes.patch
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/networkmanager/networkmanager/0002-Fix-nm-version-macro-includes.patch
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/networkmanager/networkmanager/0002-add-pkg-config-for-libgcrypt.patch b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/networkmanager/networkmanager/0002-add-pkg-config-for-libgcrypt.patch
deleted file mode 100644
index bb95eaaa4..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/networkmanager/networkmanager/0002-add-pkg-config-for-libgcrypt.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-From a9261fee4a41045c42e0d292237cee532e11982c Mon Sep 17 00:00:00 2001
-From: Adrian <adrian.freihofer@gmail.com>
-Date: Thu, 27 Nov 2014 15:43:26 +0100
-Subject: [PATCH] add pkg config for libgcrypt
-
----
- configure.ac | 18 +++++++-----------
- 1 file changed, 7 insertions(+), 11 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index 94b0758..654a015 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -480,17 +480,13 @@ if test x"$ac_crypto" = xnss; then
- with_nss=yes
- elif test x"$ac_crypto" = xgnutls; then
- PKG_CHECK_MODULES(GNUTLS, [gnutls >= 1.2])
-- AC_PATH_PROG(LIBGCRYPT_CONFIG, libgcrypt-config, no)
-- if test x"$LIBGCRYPT_CONFIG" = xno; then
-- AC_MSG_ERROR([gnutls explicitly requested but gcrypt not found on system])
-- else
-- AC_DEFINE(HAVE_GNUTLS, 1, [Define if you have libgnutls])
-- LIBGCRYPT_CFLAGS=`$LIBGCRYPT_CONFIG --cflags`
-- LIBGCRYPT_LIBS=`$LIBGCRYPT_CONFIG --libs`
-- AC_SUBST(LIBGCRYPT_CFLAGS)
-- AC_SUBST(LIBGCRYPT_LIBS)
-- with_gnutls=yes
-- fi
-+ AC_DEFINE(HAVE_GNUTLS, 1, [Define if you have libgnutls])
-+ PKG_CHECK_MODULES(LIBGCRYPT, [libgcrypt >= 1.1.42], [
-+ AC_DEFINE(HAVE_GCRYPT, 1, [Define if gcrypt library is available.])
-+ with_gnutls=yes
-+ ], [
-+ AC_MSG_ERROR([gnutls explicitly requested but gcrypt not found on system])
-+ ])
- else
- AC_MSG_ERROR([Please choose either 'nss' or 'gnutls' for certificate and crypto operations])
- fi
---
-1.9.1
-
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/networkmanager/networkmanager/0002-networkmanager-fixed-issues-of-NetworkManager-wait-o.patch b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/networkmanager/networkmanager/0002-networkmanager-fixed-issues-of-NetworkManager-wait-o.patch
deleted file mode 100644
index 4eb9e2168..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/networkmanager/networkmanager/0002-networkmanager-fixed-issues-of-NetworkManager-wait-o.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-From 0690452b863286e524d2037427816b7850301f93 Mon Sep 17 00:00:00 2001
-From: Haiqing Bai <Haiqing.Bai@windriver.com>
-Date: Tue, 6 Sep 2016 09:27:38 +0800
-Subject: [PATCH] networkmanager: fixed issues of
- NetworkManager-wait-online.service.in.
-
-Remove network.target in "Before" to avoid circle dependency.
-Wants=network.target
-Before=network.target network-online.target
-
-Correct the "WantedBy" to network-online.target.
-
-Upstream-status: Pending
-
-Signed-off-by: Haiqing Bai <Haiqing.Bai@windriver.com>
----
- data/NetworkManager-wait-online.service.in | 7 ++++---
- 1 file changed, 4 insertions(+), 3 deletions(-)
-
-diff --git a/data/NetworkManager-wait-online.service.in b/data/NetworkManager-wait-online.service.in
-index 6ad6942..1753d20 100644
---- a/data/NetworkManager-wait-online.service.in
-+++ b/data/NetworkManager-wait-online.service.in
-@@ -1,13 +1,14 @@
- [Unit]
- Description=Network Manager Wait Online
-+Documentation=man:nm-online(1)
- Requisite=NetworkManager.service
- After=NetworkManager.service
--Wants=network.target
--Before=network.target network-online.target
-+Before=network-online.target
-
- [Service]
- Type=oneshot
- ExecStart=@bindir@/nm-online -s -q --timeout=30
-+RemainAfterExit=yes
-
- [Install]
--WantedBy=multi-user.target
-+WantedBy=network-online.target
---
-1.9.1
-
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/networkmanager/networkmanager/0002-socket-util.h-Include-linux-sockios.h-on-musl.patch b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/networkmanager/networkmanager/0002-socket-util.h-Include-linux-sockios.h-on-musl.patch
new file mode 100644
index 000000000..22bc6e8bd
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/networkmanager/networkmanager/0002-socket-util.h-Include-linux-sockios.h-on-musl.patch
@@ -0,0 +1,30 @@
+From 98d7e3ae5b15e30af1bf5dd1d279e1a774bf2b86 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 31 Mar 2017 16:05:05 -0700
+Subject: [PATCH 2/5] socket-util.h: Include linux/sockios.h on musl
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/systemd/src/basic/socket-util.h | 6 ++++++
+ 1 file changed, 6 insertions(+)
+
+diff --git a/src/systemd/src/basic/socket-util.h b/src/systemd/src/basic/socket-util.h
+index 2536b08..76d6107 100644
+--- a/src/systemd/src/basic/socket-util.h
++++ b/src/systemd/src/basic/socket-util.h
+@@ -29,6 +29,12 @@
+ #include <linux/netlink.h>
+ #include <linux/if_packet.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 "util.h"
+
+--
+2.12.1
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/networkmanager/networkmanager/0003-Define-ETH_ALEN.patch b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/networkmanager/networkmanager/0003-Define-ETH_ALEN.patch
new file mode 100644
index 000000000..236914f75
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/networkmanager/networkmanager/0003-Define-ETH_ALEN.patch
@@ -0,0 +1,39 @@
+From 16c3dc7a407101243d2056d2c93e61dce1a05350 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 31 Mar 2017 16:08:45 -0700
+Subject: [PATCH 3/5] Define ETH_ALEN
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ libnm-core/nm-utils.h | 1 +
+ src/platform/wifi/wifi-utils.h | 2 ++
+ 2 files changed, 3 insertions(+)
+
+diff --git a/libnm-core/nm-utils.h b/libnm-core/nm-utils.h
+index 156ccae..68e222b 100644
+--- a/libnm-core/nm-utils.h
++++ b/libnm-core/nm-utils.h
+@@ -29,6 +29,7 @@
+
+ /* For ETH_ALEN and INFINIBAND_ALEN */
+ //#include <linux/if_ether.h>
++#define ETH_ALEN 6 /* Octets in one ethernet addr */
+ #include <linux/if_infiniband.h>
+ #include <netinet/in.h>
+
+diff --git a/src/platform/wifi/wifi-utils.h b/src/platform/wifi/wifi-utils.h
+index 84f5ce9..33a838d 100644
+--- a/src/platform/wifi/wifi-utils.h
++++ b/src/platform/wifi/wifi-utils.h
+@@ -24,6 +24,8 @@
+
+ //#include <net/ethernet.h>
+
++#define ETH_ALEN 6 /* Octets in one ethernet addr */
++
+ #include "nm-dbus-interface.h"
+
+ typedef struct WifiData WifiData;
+--
+2.12.1
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/networkmanager/networkmanager/0003-core-fix-failure-to-configure-routes-due-to-wrong-de.patch b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/networkmanager/networkmanager/0003-core-fix-failure-to-configure-routes-due-to-wrong-de.patch
deleted file mode 100644
index 5da536e68..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/networkmanager/networkmanager/0003-core-fix-failure-to-configure-routes-due-to-wrong-de.patch
+++ /dev/null
@@ -1,54 +0,0 @@
-From 11aa07ed939193e85516c287a57dee1837242972 Mon Sep 17 00:00:00 2001
-From: Thomas Haller <thaller@redhat.com>
-Date: Mon, 4 Jan 2016 18:54:26 +0100
-Subject: [PATCH 1/7] core: fix failure to configure routes due to wrong
- device-route for IPv4 peer-addresses
-
-As in the case of a OpenVPN connection, we might add an address like:
- 10.8.0.58/32 ptp 10.8.0.57
-
-In this case, kernel would automatically add a device-route like:
- 10.8.0.57/32 via 0.0.0.0 dev 32 metric 0 mss 0 src rtprot-kernel scope link pref-src 10.8.0.58
-
-nm_ip4_config_commit() checks all IP addresses to figure out
-the present device-routes. Then the routes are synced by NMRouteManager.
-Due to a bug, we would not consider the peer-address, but the local-address
-and configure a route 10.8.0.58/32, instead of 10.8.0.57/32.
-
-That stays mostly unnoticed, because usually the peer and the local-address are
-in the same subnet, so that there is no difference (/32 is an example of the
-peer-address being in a different subnet).
-
-It also seems that due to a bug fixed by df4e5357521 this issue didn't surface.
-Probably because we would not notice the 10.8.0.57/32 right away and thus
-nm_route_manager_ip4_route_sync() would not wrongly delete it.
-
-https://bugzilla.gnome.org/show_bug.cgi?id=759892
-
-https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=809195
-https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=809494
-https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=809526
-https://bugs.archlinux.org/task/47535
-https://bugzilla.redhat.com/show_bug.cgi?id=1294309
-https://mail.gnome.org/archives/networkmanager-list/2015-December/msg00059.html
----
- src/nm-ip4-config.c | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/src/nm-ip4-config.c b/src/nm-ip4-config.c
-index f625d35..61e29af 100644
---- a/src/nm-ip4-config.c
-+++ b/src/nm-ip4-config.c
-@@ -298,7 +298,8 @@ nm_ip4_config_commit (const NMIP4Config *config, int ifindex, gboolean routes_fu
-
- route.ifindex = ifindex;
- route.source = NM_IP_CONFIG_SOURCE_KERNEL;
-- route.network = nm_utils_ip4_address_clear_host_address (addr->address, addr->plen);
-+ route.network = nm_utils_ip4_address_clear_host_address (addr->peer_address ? : addr->address,
-+ addr->plen);
- route.plen = addr->plen;
- route.pref_src = addr->address;
- route.metric = default_route_metric;
---
-2.5.0
-
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/networkmanager/networkmanager/0004-Define-missing-features-to-cater-for-musl.patch b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/networkmanager/networkmanager/0004-Define-missing-features-to-cater-for-musl.patch
new file mode 100644
index 000000000..27c9ae962
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/networkmanager/networkmanager/0004-Define-missing-features-to-cater-for-musl.patch
@@ -0,0 +1,93 @@
+From 2153109e60e362e0d09215d529bf00176f31a3e7 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 31 Mar 2017 16:09:41 -0700
+Subject: [PATCH 4/5] Define missing features to cater for musl
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/systemd/sd-adapt/nm-sd-adapt.h | 2 +-
+ src/systemd/src/basic/parse-util.c | 5 ++++-
+ src/systemd/src/basic/stdio-util.h | 2 ++
+ src/systemd/src/basic/util.h | 5 +++++
+ src/systemd/src/systemd/sd-event.h | 4 ----
+ 5 files changed, 12 insertions(+), 6 deletions(-)
+
+diff --git a/src/systemd/sd-adapt/nm-sd-adapt.h b/src/systemd/sd-adapt/nm-sd-adapt.h
+index cf27c1a..72c1b89 100644
+--- a/src/systemd/sd-adapt/nm-sd-adapt.h
++++ b/src/systemd/sd-adapt/nm-sd-adapt.h
+@@ -119,7 +119,7 @@ G_STMT_START { \
+ # ifdef HAVE___SECURE_GETENV
+ # define secure_getenv __secure_getenv
+ # else
+-# error neither secure_getenv nor __secure_getenv is available
++# define secure_getenv getenv
+ # endif
+ #endif
+
+diff --git a/src/systemd/src/basic/parse-util.c b/src/systemd/src/basic/parse-util.c
+index 2738663..9c21e5a 100644
+--- a/src/systemd/src/basic/parse-util.c
++++ b/src/systemd/src/basic/parse-util.c
+@@ -25,8 +25,11 @@
+ #include <stdio.h>
+ #include <stdlib.h>
+ #include <string.h>
++#ifdef __GLIBC__
+ #include <xlocale.h>
+-
++#else
++#include <locale.h>
++#endif
+ #include "alloc-util.h"
+ #include "extract-word.h"
+ #include "macro.h"
+diff --git a/src/systemd/src/basic/stdio-util.h b/src/systemd/src/basic/stdio-util.h
+index bd1144b..c92e935 100644
+--- a/src/systemd/src/basic/stdio-util.h
++++ b/src/systemd/src/basic/stdio-util.h
+@@ -19,7 +19,9 @@
+ along with systemd; If not, see <http://www.gnu.org/licenses/>.
+ ***/
+
++#ifdef __GLIBC__
+ #include <printf.h>
++#endif
+ #include <stdarg.h>
+ #include <stdio.h>
+ #include <sys/types.h>
+diff --git a/src/systemd/src/basic/util.h b/src/systemd/src/basic/util.h
+index bb2fc31..fe074a5 100644
+--- a/src/systemd/src/basic/util.h
++++ b/src/systemd/src/basic/util.h
+@@ -46,6 +46,11 @@
+ #include "missing.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())
+
+diff --git a/src/systemd/src/systemd/sd-event.h b/src/systemd/src/systemd/sd-event.h
+index cc26b7d..c7e0004 100644
+--- a/src/systemd/src/systemd/sd-event.h
++++ b/src/systemd/src/systemd/sd-event.h
+@@ -69,11 +69,7 @@ typedef int (*sd_event_handler_t)(sd_event_source *s, void *userdata);
+ typedef int (*sd_event_io_handler_t)(sd_event_source *s, int fd, uint32_t revents, void *userdata);
+ typedef int (*sd_event_time_handler_t)(sd_event_source *s, uint64_t usec, void *userdata);
+ typedef int (*sd_event_signal_handler_t)(sd_event_source *s, const struct signalfd_siginfo *si, void *userdata);
+-#if defined __USE_POSIX199309 || defined __USE_XOPEN_EXTENDED
+ typedef int (*sd_event_child_handler_t)(sd_event_source *s, const siginfo_t *si, void *userdata);
+-#else
+-typedef void* sd_event_child_handler_t;
+-#endif
+
+ int sd_event_default(sd_event **e);
+
+--
+2.12.1
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/networkmanager/networkmanager/0004-ppp-manager-clear-ppp_watch_id-upon-pppd-termination.patch b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/networkmanager/networkmanager/0004-ppp-manager-clear-ppp_watch_id-upon-pppd-termination.patch
deleted file mode 100644
index 41f288281..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/networkmanager/networkmanager/0004-ppp-manager-clear-ppp_watch_id-upon-pppd-termination.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From 8204c2a1968f757599c5ebec9a85efaacb0e522a Mon Sep 17 00:00:00 2001
-From: Beniamino Galvani <bgalvani@redhat.com>
-Date: Mon, 4 Jan 2016 14:18:02 +0100
-Subject: [PATCH 2/7] ppp-manager: clear @ppp_watch_id upon pppd termination
-
-Set @ppp_watch_id to zero upon pppd termination, otherwise the call to
-g_source_remove(priv->ppp_watch_id) in dispose() could trigger a failed
-assertion.
-
-(cherry picked from commit 5f93f0101538db39efe0f9ea2316e63bff953bf0)
----
- src/ppp-manager/nm-ppp-manager.c | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/src/ppp-manager/nm-ppp-manager.c b/src/ppp-manager/nm-ppp-manager.c
-index d27b262..85ca9c5 100644
---- a/src/ppp-manager/nm-ppp-manager.c
-+++ b/src/ppp-manager/nm-ppp-manager.c
-@@ -828,6 +828,7 @@ ppp_watch_cb (GPid pid, gint status, gpointer user_data)
-
- nm_log_dbg (LOGD_PPP, "pppd pid %d cleaned up", priv->pid);
- priv->pid = 0;
-+ priv->ppp_watch_id = 0;
- g_signal_emit (manager, signals[STATE_CHANGED], 0, NM_PPP_STATUS_DEAD);
- }
-
---
-2.5.0
-
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/networkmanager/networkmanager/0005-device-update-ip_iface-only-if-IP-interface-exists.patch b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/networkmanager/networkmanager/0005-device-update-ip_iface-only-if-IP-interface-exists.patch
deleted file mode 100644
index 05c2dca00..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/networkmanager/networkmanager/0005-device-update-ip_iface-only-if-IP-interface-exists.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-From cbcb848e6d4f4e8c4aa11c80f1f3dbb7fb2d397e Mon Sep 17 00:00:00 2001
-From: Beniamino Galvani <bgalvani@redhat.com>
-Date: Mon, 4 Jan 2016 14:22:01 +0100
-Subject: [PATCH 3/7] device: update @ip_iface only if IP interface exists
-
-If @ip_ifindex is zero, the IP interface has disappeared and
-there's no point in updating @ip_iface.
-
-Actually, unconditionally updating @ip_iface is dangerous because it
-breaks the assumption used by other functions (as
-nm_device_get_ip_ifindex()) that a non-NULL @ip_iface implies a valid
-@ip_ifindex. This was causing the scary failure:
-
- devices/nm-device.c:666:get_ip_iface_identifier: assertion failed: (ifindex)
-
-https://bugzilla.redhat.com/show_bug.cgi?id=1268617
-(cherry picked from commit ed536998f9530698ff3082fc5587dbeb7d3a594f)
----
- src/devices/nm-device.c | 7 ++++---
- 1 file changed, 4 insertions(+), 3 deletions(-)
-
-diff --git a/src/devices/nm-device.c b/src/devices/nm-device.c
-index bb39ca5..4413e92 100644
---- a/src/devices/nm-device.c
-+++ b/src/devices/nm-device.c
-@@ -1526,12 +1526,13 @@ device_ip_link_changed (NMDevice *self)
- {
- NMDevicePrivate *priv = NM_DEVICE_GET_PRIVATE (self);
- const NMPlatformLink *pllink;
-- int ip_ifindex;
-
- priv->device_ip_link_changed_id = 0;
-
-- ip_ifindex = nm_device_get_ip_ifindex (self);
-- pllink = nm_platform_link_get (NM_PLATFORM_GET, ip_ifindex);
-+ if (!priv->ip_ifindex)
-+ return G_SOURCE_REMOVE;
-+
-+ pllink = nm_platform_link_get (NM_PLATFORM_GET, priv->ip_ifindex);
- if (!pllink)
- return G_SOURCE_REMOVE;
-
---
-2.5.0
-
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/networkmanager/networkmanager/0005-sd-lldp.h-Remove-net-ethernet.h-seems-to-be-over-spe.patch b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/networkmanager/networkmanager/0005-sd-lldp.h-Remove-net-ethernet.h-seems-to-be-over-spe.patch
new file mode 100644
index 000000000..f4a04c782
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/networkmanager/networkmanager/0005-sd-lldp.h-Remove-net-ethernet.h-seems-to-be-over-spe.patch
@@ -0,0 +1,36 @@
+From 9e9e5814456ec23b9fc669d342bf9d8f7ee49fc2 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 31 Mar 2017 16:48:00 -0700
+Subject: [PATCH 5/5] sd-lldp.h: Remove net/ethernet.h seems to be over
+ specified
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/systemd/src/systemd/sd-lldp.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+Index: NetworkManager-1.4.2/src/systemd/src/systemd/sd-lldp.h
+===================================================================
+--- NetworkManager-1.4.2.orig/src/systemd/src/systemd/sd-lldp.h
++++ NetworkManager-1.4.2/src/systemd/src/systemd/sd-lldp.h
+@@ -22,7 +22,7 @@
+ ***/
+
+ #include <inttypes.h>
+-#include <net/ethernet.h>
++//#include <net/ethernet.h>
+ #include <sys/types.h>
+
+ #include "sd-event.h"
+Index: NetworkManager-1.4.2/src/systemd/src/libsystemd-network/sd-lldp.c
+===================================================================
+--- NetworkManager-1.4.2.orig/src/systemd/src/libsystemd-network/sd-lldp.c
++++ NetworkManager-1.4.2/src/systemd/src/libsystemd-network/sd-lldp.c
+@@ -21,6 +21,7 @@
+ #include "nm-sd-adapt.h"
+
+ #include <arpa/inet.h>
++#include <net/ethernet.h>
+
+ #include "sd-lldp.h"
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/networkmanager/networkmanager_1.0.12.bb b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/networkmanager/networkmanager_1.4.4.bb
index 913488085..85098fe2c 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/networkmanager/networkmanager_1.0.12.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/networkmanager/networkmanager_1.4.4.bb
@@ -4,22 +4,37 @@ SECTION = "net/misc"
LICENSE = "GPLv2+"
LIC_FILES_CHKSUM = "file://COPYING;md5=cbbffd568227ada506640fe950a4823b \
file://libnm-util/COPYING;md5=1c4fa765d6eb3cd2fbd84344a1b816cd \
- file://docs/api/html/license.html;md5=51d7fb67bde992e58533a8481cee070b \
+ file://docs/api/html/license.html;md5=8eb8e72bab097b9d11763002cb003697 \
"
-DEPENDS = "intltool-native libnl dbus dbus-glib dbus-glib-native libgudev util-linux libndp libnewt polkit"
+DEPENDS = " \
+ intltool-native \
+ libnl \
+ dbus \
+ dbus-glib \
+ dbus-glib-native \
+ libgudev \
+ util-linux \
+ libndp \
+ libnewt \
+ polkit \
+ jansson \
+"
inherit gnomebase gettext systemd bluetooth bash-completion vala gobject-introspection
-SRC_URI = " \
- ${GNOME_MIRROR}/NetworkManager/${@gnome_verdir("${PV}")}/NetworkManager-${PV}.tar.xz \
- file://0001-don-t-try-to-run-sbin-dhclient-to-get-the-version-nu.patch \
- file://0002-add-pkg-config-for-libgcrypt.patch \
- file://0006-Fix-nm-version-macro-includes.patch \
- file://0002-networkmanager-fixed-issues-of-NetworkManager-wait-o.patch \
-"
-SRC_URI[md5sum] = "ebb273456a81ccf9dfaf2461061b0e96"
-SRC_URI[sha256sum] = "3a470f8c60109b1acb5784ddc2423501706b5fe34c793a6faee87e591eb04a9e"
+SRC_URI = "${GNOME_MIRROR}/NetworkManager/${@gnome_verdir("${PV}")}/NetworkManager-${PV}.tar.xz \
+ file://0001-don-t-try-to-run-sbin-dhclient-to-get-the-version-nu.patch \
+ file://0002-Fix-nm-version-macro-includes.patch \
+ file://0001-adjust-net-headers-for-musl-compatibility.patch \
+ file://0002-socket-util.h-Include-linux-sockios.h-on-musl.patch \
+ file://0003-Define-ETH_ALEN.patch \
+ file://0004-Define-missing-features-to-cater-for-musl.patch \
+ file://0005-sd-lldp.h-Remove-net-ethernet.h-seems-to-be-over-spe.patch \
+ file://0001-check-for-strndupa-before-using-it.patch \
+ "
+SRC_URI[md5sum] = "63f1e0d6d7e9099499d062c84c927a75"
+SRC_URI[sha256sum] = "829378f318cc008d138a23ca6a9191928ce75344e7e47a2f2c35f4ac82133309"
S = "${WORKDIR}/NetworkManager-${PV}"
@@ -38,9 +53,9 @@ do_compile_prepend() {
}
PACKAGECONFIG ??= "nss ifupdown netconfig dhclient dnsmasq \
- ${@bb.utils.contains('DISTRO_FEATURES','systemd','systemd','consolekit',d)} \
- ${@bb.utils.contains('DISTRO_FEATURES','bluetooth','${BLUEZ}','',d)} \
- ${@bb.utils.contains('DISTRO_FEATURES','wifi','wifi','',d)} \
+ ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd', 'consolekit', d)} \
+ ${@bb.utils.contains('DISTRO_FEATURES', 'bluetooth', '${BLUEZ}', '', d)} \
+ ${@bb.utils.filter('DISTRO_FEATURES', 'wifi', d)} \
"
PACKAGECONFIG[systemd] = " \
--with-systemdsystemunitdir=${systemd_unitdir}/system --with-session-tracking=systemd --enable-polkit, \
@@ -57,7 +72,7 @@ PACKAGECONFIG[ppp] = "--enable-ppp,--disable-ppp,ppp,ppp"
PACKAGECONFIG[dhclient] = "--with-dhclient=${base_sbindir}/dhclient,,,dhcp-client"
PACKAGECONFIG[dnsmasq] = "--with-dnsmasq=${bindir}/dnsmasq"
PACKAGECONFIG[nss] = "--with-crypto=nss,,nss"
-PACKAGECONFIG[gnutls] = "--with-crypto=gnutls,,gnutls libgcrypt"
+PACKAGECONFIG[gnutls] = "--with-crypto=gnutls,,gnutls"
PACKAGECONFIG[wifi] = "--enable-wifi=yes,--enable-wifi=no,wireless-tools,wpa-supplicant wireless-tools"
PACKAGECONFIG[ifupdown] = "--enable-ifupdown,--disable-ifupdown"
PACKAGECONFIG[netconfig] = "--with-netconfig=yes,--with-netconfig=no"
@@ -85,15 +100,10 @@ FILES_${PN} += " \
"
RRECOMMENDS_${PN} += "iptables \
- ${@bb.utils.contains('PACKAGECONFIG','dnsmasq','dnsmasq','',d)} \
+ ${@bb.utils.filter('PACKAGECONFIG', 'dnsmasq', d)} \
"
RCONFLICTS_${PN} = "connman"
-FILES_${PN}-dbg += " \
- ${libdir}/NetworkManager/.debug/ \
- ${libdir}/pppd/*/.debug/ \
-"
-
FILES_${PN}-dev += " \
${datadir}/NetworkManager/gdb-cmd \
${libdir}/pppd/*/*.la \
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/obex/obex-data-server/obex-data-server-0.4.6-build-fixes-1.patch b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/obex/obex-data-server/obex-data-server-0.4.6-build-fixes-1.patch
new file mode 100644
index 000000000..e2c4e9ff6
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/obex/obex-data-server/obex-data-server-0.4.6-build-fixes-1.patch
@@ -0,0 +1,20 @@
+Submitted By: Armin K. <krejzi at email dot com>
+Date: 2012-07-06
+Initial Package Version: 0.4.6
+Upstream Status: Unknown
+Origin: Self
+Description: Some build fixes.
+
+Index: obex-data-server-0.4.6/src/ods-obex.c
+===================================================================
+--- obex-data-server-0.4.6.orig/src/ods-obex.c
++++ obex-data-server-0.4.6/src/ods-obex.c
+@@ -412,7 +412,7 @@ ods_obex_setup_usbtransport (OdsObexCont
+ goto err;
+ }
+
+- interfaces_num = OBEX_FindInterfaces(obex_context->obex_handle, &obex_intf);
++ interfaces_num = OBEX_EnumerateInterfaces(obex_context->obex_handle);
+ if (intf_num >= interfaces_num) {
+ g_set_error (error, ODS_ERROR, ODS_ERROR_FAILED, "Invalid interface number");
+ goto err;
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/obex/obex-data-server_0.4.6.bb b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/obex/obex-data-server_0.4.6.bb
index c2c284e93..e10b89c36 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/obex/obex-data-server_0.4.6.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/obex/obex-data-server_0.4.6.bb
@@ -2,14 +2,15 @@ DESCRIPTION = "obex-data-server is a D-Bus service providing high-level OBEX cli
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
-DEPENDS = "gtk+ dbus-glib imagemagick openobex"
+DEPENDS = "gtk+ dbus-glib dbus-glib-native imagemagick openobex"
DEPENDS += "${@bb.utils.contains('DISTRO_FEATURES','bluez5','bluez5','bluez4',d)}"
-SRC_URI = "http://tadas.dailyda.com/software/obex-data-server-${PV}.tar.gz"
+SRC_URI = "http://tadas.dailyda.com/software/obex-data-server-${PV}.tar.gz \
+ file://obex-data-server-0.4.6-build-fixes-1.patch \
+"
SRC_URI[md5sum] = "961ca5db6fe9c97024e133cc6203cc4d"
SRC_URI[sha256sum] = "b399465ddbd6d0217abedd9411d9d74a820effa0a6a142adc448268d3920094f"
inherit autotools-brokensep pkgconfig
FILES_${PN} += "${datadir}/dbus-1/"
-
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/obex/openobex-1.5/disable-cable-test.patch b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/obex/openobex-1.5/disable-cable-test.patch
deleted file mode 100644
index 95b636dd8..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/obex/openobex-1.5/disable-cable-test.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-
-#
-# Patch managed by http://www.holgerschurig.de/patcher.html
-#
-
---- openobex-1.2/apps/Makefile.am~disable-cable-test
-+++ openobex-1.2/apps/Makefile.am
-@@ -6,7 +6,7 @@
- obex_io.c obex_io.h \
- obex_put_common.c obex_put_common.h
-
--bin_PROGRAMS = irxfer obex_tcp irobex_palm3 obex_test
-+bin_PROGRAMS = irxfer obex_tcp irobex_palm3
-
- obex_test_SOURCES = \
- obex_test.c obex_test.h \
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/obex/openobex-1.5/libusb_crosscompile_check.patch b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/obex/openobex-1.5/libusb_crosscompile_check.patch
deleted file mode 100644
index 1177dfeac..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/obex/openobex-1.5/libusb_crosscompile_check.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- /tmp/acinclude.m4 2009-04-12 10:32:15.000000000 +0200
-+++ openobex-1.5/acinclude.m4 2009-04-12 10:32:38.000000000 +0200
-@@ -158,7 +158,7 @@
- ;;
- *)
- PKG_CHECK_MODULES(USB, libusb, usb_lib_found=yes, AC_MSG_RESULT(no))
-- AC_CHECK_FILE(${prefix}/lib/pkgconfig/libusb.pc, REQUIRES="libusb")
-+ REQUIRES="libusb"
- ;;
- esac
- AC_SUBST(USB_CFLAGS)
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/obex/openobex-1.5/separate_builddir.patch b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/obex/openobex-1.5/separate_builddir.patch
deleted file mode 100644
index 8abf8ae24..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/obex/openobex-1.5/separate_builddir.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-Fix detection of IrDA failing with B!=S
-
-Upstream-Status: Pending
-
-Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
-
---- a/acinclude.m4 2014-05-24 14:05:41.757796816 +0100
-+++ b/acinclude.m4 2014-05-24 14:03:06.556795536 +0100
-@@ -54,6 +54,7 @@
- ])
-
- AC_DEFUN([AC_PATH_IRDA_LINUX], [
-+ CPPFLAGS="${CPPFLAGS} -I${srcdir}"
- AC_CACHE_CHECK([for IrDA support], irda_found, [
- AC_TRY_COMPILE([
- #include <sys/socket.h>
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/obex/openobex_1.5.bb b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/obex/openobex_1.5.bb
deleted file mode 100644
index 6ac790598..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/obex/openobex_1.5.bb
+++ /dev/null
@@ -1,35 +0,0 @@
-DESCRIPTION = "The Openobex project is an open source implementation of the \
-Object Exchange (OBEX) protocol."
-HOMEPAGE = "http://openobex.triq.net"
-SECTION = "libs"
-DEPENDS = "virtual/libusb0"
-DEPENDS += "${@bb.utils.contains('DISTRO_FEATURES','bluez5','bluez5','bluez4',d)}"
-
-LICENSE = "GPLv2 & LGPLv2.1"
-LIC_FILES_CHKSUM = "file://COPYING;md5=eb723b61539feef013de476e68b5c50a \
- file://COPYING.LIB;md5=a6f89e2100d9b6cdffcea4f398e37343 \
-"
-
-SRC_URI = "http://www.kernel.org/pub/linux/bluetooth/openobex-${PV}.tar.gz \
- file://disable-cable-test.patch \
- file://libusb_crosscompile_check.patch \
- file://separate_builddir.patch"
-
-SRC_URI[md5sum] = "0d83dc86445a46a1b9750107ba7ab65c"
-SRC_URI[sha256sum] = "e602047570799a47ecb028420bda8f2cef41310e5a99d084de10aa9422935e65"
-
-inherit autotools binconfig pkgconfig
-
-EXTRA_OECONF = "--enable-apps --enable-syslog"
-
-do_install_append() {
- install -d ${D}${datadir}/aclocal
- install -m 0644 ${S}/openobex.m4 ${D}${datadir}/aclocal
-}
-
-PACKAGES += "openobex-apps"
-FILES_${PN} = "${libdir}/lib*.so.*"
-FILES_${PN}-dev += "${bindir}/openobex-config"
-FILES_${PN}-apps = "${bindir}/*"
-DEBIAN_NOAUTONAME_${PN}-apps = "1"
-
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/obex/openobex_1.7.2.bb b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/obex/openobex_1.7.2.bb
new file mode 100644
index 000000000..053c80a84
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/obex/openobex_1.7.2.bb
@@ -0,0 +1,37 @@
+DESCRIPTION = "The Openobex project is an open source implementation of the \
+Object Exchange (OBEX) protocol."
+HOMEPAGE = "http://openobex.triq.net"
+SECTION = "libs"
+DEPENDS = "virtual/libusb0"
+DEPENDS_append_class-target = " ${@bb.utils.contains('DISTRO_FEATURES','bluez5','bluez5','bluez4',d)}"
+
+LICENSE = "GPLv2 & LGPLv2.1"
+LIC_FILES_CHKSUM = "file://COPYING;md5=eb723b61539feef013de476e68b5c50a \
+ file://COPYING.LIB;md5=a6f89e2100d9b6cdffcea4f398e37343 \
+"
+
+SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BPN}/${PV}/${BP}-Source.tar.gz \
+"
+
+SRC_URI[md5sum] = "f6e0b6cb7dcfd731460a7e9a91429a3a"
+SRC_URI[sha256sum] = "158860aaea52f0fce0c8e4b64550daaae06df2689e05834697b7e8c7d73dd4fc"
+
+inherit cmake pkgconfig
+
+S = "${WORKDIR}/${BP}-Source"
+
+EXTRA_OECONF = " -DCMAKE_SKIP_RPATH=ON "
+
+#--enable-apps --enable-syslog
+
+do_install_append () {
+ rmdir ${D}${bindir}
+}
+
+PACKAGES =+ "openobex-apps"
+FILES_${PN}-apps = "${bindir}/*"
+FILES_${PN} += "${libdir}/lib*.so.*"
+FILES_${PN}-dev += "${bindir}/openobex-config ${libdir}/cmake"
+DEBIAN_NOAUTONAME_${PN}-apps = "1"
+
+BBCLASSEXTEND = "native"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/obexftp/obexftp/0001-apps-CMakeLists.txt-Explicitly-link-libbfb-and-libmu.patch b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/obexftp/obexftp/0001-apps-CMakeLists.txt-Explicitly-link-libbfb-and-libmu.patch
new file mode 100644
index 000000000..1f6de87c8
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/obexftp/obexftp/0001-apps-CMakeLists.txt-Explicitly-link-libbfb-and-libmu.patch
@@ -0,0 +1,66 @@
+From b8dc608dad7d9fc3a4c16acd0327d97b81c23b95 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Tue, 15 Nov 2016 01:32:31 +0000
+Subject: [PATCH] apps/CMakeLists.txt: Explicitly link libbfb and libmulticobex
+
+Transitive linking is disabled now for multicobex and
+obexftp, This ends up with linking errors for apps, therefore
+they are required to be added to link line explicitly.
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ apps/CMakeLists.txt | 13 +++++++++++--
+ 1 file changed, 11 insertions(+), 2 deletions(-)
+
+Index: obexftp-0.24.2-Source/apps/CMakeLists.txt
+===================================================================
+--- obexftp-0.24.2-Source.orig/apps/CMakeLists.txt
++++ obexftp-0.24.2-Source/apps/CMakeLists.txt
+@@ -5,14 +5,23 @@ add_definitions( -DVERSION="${obexftp_VE
+ add_definitions ( -DHAVE_USB )
+
+ add_executable ( obexftp_app obexftp.c )
+-target_link_libraries ( obexftp_app obexftp )
++target_link_libraries ( obexftp_app
++ PRIVATE multicobex
++ PRIVATE bfb
++ obexftp
++)
+ set_target_properties ( obexftp_app PROPERTIES
+ OUTPUT_NAME obexftp
+ )
+
+
+ add_executable ( obexftpd_app obexftpd.c )
+-target_link_libraries ( obexftpd_app obexftp openobex )
++target_link_libraries ( obexftpd_app
++ PRIVATE multicobex
++ PRIVATE bfb
++ obexftp
++ openobex
++)
+ set_target_properties ( obexftpd_app PROPERTIES
+ OUTPUT_NAME obexftpd
+ )
+Index: obexftp-0.24.2-Source/fuse/CMakeLists.txt
+===================================================================
+--- obexftp-0.24.2-Source.orig/fuse/CMakeLists.txt
++++ obexftp-0.24.2-Source/fuse/CMakeLists.txt
+@@ -13,6 +13,8 @@ if ( Fuse_FOUND )
+ )
+
+ target_link_libraries ( obexfs
++ PRIVATE multicobex
++ PRIVATE bfb
+ obexftp
+ ${Fuse_LIBRARIES}
+ ${EXPAT_LIBRARIES}
+@@ -23,6 +25,8 @@ if ( Fuse_FOUND )
+ )
+
+ target_link_libraries ( obexautofs
++ PRIVATE multicobex
++ PRIVATE bfb
+ obexftp
+ ${Fuse_LIBRARIES}
+ )
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/obexftp/obexftp/make_fuse_swig_optional.patch b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/obexftp/obexftp/make_fuse_swig_optional.patch
new file mode 100644
index 000000000..84b143bf5
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/obexftp/obexftp/make_fuse_swig_optional.patch
@@ -0,0 +1,24 @@
+Index: obexftp-0.24.2-Source/CMakeLists.txt
+===================================================================
+--- obexftp-0.24.2-Source.orig/CMakeLists.txt
++++ obexftp-0.24.2-Source/CMakeLists.txt
+@@ -58,9 +58,17 @@ add_subdirectory ( bfb )
+ add_subdirectory ( multicobex )
+ add_subdirectory ( obexftp )
+ add_subdirectory ( apps )
+-add_subdirectory ( fuse )
+-add_subdirectory ( swig )
+ add_subdirectory ( doc )
++
++option ( ENABLE_FUSE "Build the obexftp fuse module" OFF )
++if ( ENABLE_FUSE )
++ add_subdirectory ( fuse )
++endif ( ENABLE_FUSE )
++
++option ( ENABLE_SWIG "Build the obexftp swig module" OFF )
++if ( ENABLE_SWIG )
++ add_subdirectory ( swig )
++endif ( ENABLE_SWIG )
+ #examples
+
+ set ( prefix "${CMAKE_INSTALL_PREFIX}" )
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/obexftp/obexftp_0.23.bb b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/obexftp/obexftp_0.23.bb
deleted file mode 100644
index b6bdfb7e4..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/obexftp/obexftp_0.23.bb
+++ /dev/null
@@ -1,16 +0,0 @@
-DESCRIPTION = "A tool for transfer files to/from any OBEX enabled device"
-LICENSE = "GPLv2 & LGPLv2 & LGPLv2.1"
-LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
-
-DEPENDS += "openobex"
-
-SRC_URI = "http://sourceforge.net/projects/openobex/files/obexftp/${PV}/obexftp-${PV}.tar.bz2 \
- file://Remove_some_printf_in_obexftpd.patch "
-
-SRC_URI[md5sum] = "f20762061b68bc921e80be4aebc349eb"
-SRC_URI[sha256sum] = "44a74ff288d38c0f75354d6bc2efe7d6dec10112eaff2e7b10e292b0d2105b36"
-
-inherit autotools pkgconfig
-
-EXTRA_OECONF += "--disable-tcl --disable-perl --disable-python --disable-ruby"
-
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/obexftp/obexftp_0.24.2.bb b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/obexftp/obexftp_0.24.2.bb
new file mode 100644
index 000000000..489861cb7
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/obexftp/obexftp_0.24.2.bb
@@ -0,0 +1,41 @@
+DESCRIPTION = "A tool for transfer files to/from any OBEX enabled device"
+LICENSE = "GPLv2 & PD & LGPLv2.1"
+LIC_FILES_CHKSUM = "file://LGPL-2.1.txt;md5=4fbd65380cdd255951079008b364516c \
+ file://GPL-2.txt;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
+ file://License.txt;md5=fcbddc3c1debed80dd80da2d3e5f0dc1 \
+ "
+
+DEPENDS += "openobex obexftp-native"
+SRC_URI = "http://downloads.sourceforge.net/openobex/${BP}-Source.tar.gz \
+ file://Remove_some_printf_in_obexftpd.patch \
+ file://0001-apps-CMakeLists.txt-Explicitly-link-libbfb-and-libmu.patch \
+ file://make_fuse_swig_optional.patch \
+"
+SRC_URI[md5sum] = "157a9d1b2ed220203f7084db906de73c"
+SRC_URI[sha256sum] = "d40fb48e0a0eea997b3e582774b29f793919a625d54b87182e31a3f3d1c989a3"
+
+inherit cmake pkgconfig
+
+PACKAGECONFIG ?= ""
+# fuse support will need meta-filesystems layer
+PACKAGECONFIG[fuse] = "-DENABLE_FUSE=ON,-DENABLE_FUSE=OFF,fuse"
+PACKAGECONFIG[swig] = "-DENABLE_SWIG=ON,-DENABLE_SWIG=OFF,swig"
+
+DEPENDS_remove_class-native = "fuse-native"
+
+S = "${WORKDIR}/${BP}-Source"
+
+EXTRA_OECMAKE += "-DCMAKE_SKIP_RPATH=ON \
+ -DENABLE_PERL=OFF -DENABLE_PYTHON=OFF \
+ -DENABLE_RUBY=OFF -DENABLE_TCL=OFF \
+"
+
+do_compile_class-native () {
+ oe_runmake crctable
+}
+
+do_install_class-native () {
+ install -D -m 0755 ${B}/bfb/crctable ${D}${bindir}/crctable
+}
+
+BBCLASSEXTEND = "native"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/rtorrent/rtorrent_0.9.3.bb b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/rtorrent/rtorrent_git.bb
index eb0a39af5..af1c4d656 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/rtorrent/rtorrent_0.9.3.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/rtorrent/rtorrent_git.bb
@@ -5,11 +5,17 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
DEPENDS = "libsigc++-2.0 curl cppunit libtorrent ncurses"
-SRC_URI = "http://libtorrent.rakshasa.no/downloads/${BP}.tar.gz \
+SRC_URI = "git://github.com/rakshasa/rtorrent \
file://don-t-run-code-while-configuring-package.patch \
"
+SRCREV = "226e670decf92e7adaa845a6982aca4f164ea740"
-SRC_URI[md5sum] = "0bf2f262faa8c8c8d3b11ce286ea2bf2"
-SRC_URI[sha256sum] = "9e93ca41beb1afe74ad7ad8013e0d53ae3586c9b0e97263d722f721535cc7310"
+PV = "0.9.6+git${SRCPV}"
+
+S = "${WORKDIR}/git"
inherit autotools pkgconfig
+
+do_configure_prepend() {
+ (cd ${S}; ./autogen.sh; cd -)
+}
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/ser2net/ser2net_2.9.1.bb b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/ser2net/ser2net_2.9.1.bb
index 8fe6a6f9c..288c586a5 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/ser2net/ser2net_2.9.1.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/ser2net/ser2net_2.9.1.bb
@@ -12,4 +12,4 @@ SRC_URI[sha256sum] = "fdee1e69903cf409bdc6f32403a566cbc6006aa9e2a4d6f8f12b90dfd5
inherit autotools pkgconfig
-BBCLASSEXTEND += "native nativesdk"
+BBCLASSEXTEND = "native nativesdk"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/soft66/soft66_git.bb b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/soft66/soft66_git.bb
index b6495267c..816f58350 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/soft66/soft66_git.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/soft66/soft66_git.bb
@@ -3,7 +3,7 @@ LICENSE = "GPLv3 & LGPLv3+"
LIC_FILES_CHKSUM = "file://COPYING;md5=f27defe1e96c2e1ecd4e0c9be8967949 \
file://COPYING.LESSER;md5=e6a600fd5e1d9cbde2d983680233ad02 "
-PNBLACKLIST[soft66] ?= "BROKEN: depends on broken libftdi"
+PNBLACKLIST[soft66] ?= "BROKEN: depends on broken libftdi - the recipe will be removed on 2017-09-01 unless the issue is fixed"
DEPENDS = "libftdi"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/telepathy/libtelepathy_0.3.3.bb b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/telepathy/libtelepathy_0.3.3.bb
index c398dc15a..783bd5d73 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/telepathy/libtelepathy_0.3.3.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/telepathy/libtelepathy_0.3.3.bb
@@ -22,3 +22,5 @@ inherit autotools pkgconfig pythonnative
FILES_${PN} += "${datadir}/telepathy \
${datadir}/dbus-1"
+
+PNBLACKLIST[libtelepathy] ?= "Fails to build with RSS http://errors.yoctoproject.org/Errors/Details/130609/ - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/telepathy/telepathy-mission-control_5.16.1.bb b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/telepathy/telepathy-mission-control_5.16.1.bb
index 582783c9d..6a4d5d006 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/telepathy/telepathy-mission-control_5.16.1.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/telepathy/telepathy-mission-control_5.16.1.bb
@@ -49,3 +49,5 @@ FILES_libmissioncontrol-server-dev = "${libdir}/libmissioncontrol-server.*"
FILES_libmissioncontrol-dbg = "${libdir}/.debug/libmissioncontrol.so.*"
FILES_libmissioncontrol-config-dbg = "${libdir}/.debug/libmissioncontrol-config.so.*"
FILES_libmissioncontrol-server-dbg = "${libdir}/.debug/libmissioncontrol-server.so.*"
+
+PNBLACKLIST[telepathy-mission-control] ?= "Depends on blacklisted libtelepathy - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/thrift/thrift_0.9.3.bb b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/thrift/thrift_0.9.3.bb
index 905e5618d..9baeed169 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/thrift/thrift_0.9.3.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/thrift/thrift_0.9.3.bb
@@ -3,18 +3,19 @@ DESCRIPTION = "A software framework, for scalable cross-language services devel
HOMEPAGE = "https://thrift.apache.org/"
LICENSE = "Apache-2.0"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=e4ed21f679b2aafef26eac82ab0c2cbf"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=e4ed21f679b2aafef26eac82ab0c2cbf \
+ file://NOTICE;md5=115f49498b66b494b0472658f2bfe80b"
-DEPENDS = "thrift-native boost python libevent flex-native bison-native \
- glib-2.0 openssl"
+DEPENDS = "thrift-native boost flex-native bison-native openssl"
-SRC_URI = "git://git-wip-us.apache.org/repos/asf/thrift.git;protocol=https \
+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 \
"
-SRCREV = "61b8a29b0704ccd81b520f2300f5d1bb261fea3e"
-S = "${WORKDIR}/git"
+
+SRC_URI[md5sum] = "88d667a8ae870d5adeca8cb7d6795442"
+SRC_URI[sha256sum] = "b0740a070ac09adde04d43e852ce4c320564a292f26521c46b78e0641564969e"
BBCLASSEXTEND = "native nativesdk"
@@ -25,12 +26,44 @@ export STAGING_LIBDIR
export BUILD_SYS
export HOST_SYS
-EXTRA_OECMAKE = "-DWITH_QT4=OFF -DWITH_QT5=OFF -DBUILD_JAVA=OFF"
+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 \
+"
+
EXTRA_OECMAKE_append_class-native = "\
-DBUILD_TESTING=OFF -DBUILD_EXAMPLES=OFF -DWITH_CPP=OFF"
EXTRA_OECMAKE_append_class-nativesdk = "\
-DBUILD_TESTING=OFF -DBUILD_EXAMPLES=OFF -DWITH_PYTHON=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/import-layers/meta-openembedded/meta-oe/recipes-connectivity/umip/files/0001-Add-format-string-to-fprintf-call.patch b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/umip/files/0001-Add-format-string-to-fprintf-call.patch
new file mode 100644
index 000000000..8e5f4da36
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/umip/files/0001-Add-format-string-to-fprintf-call.patch
@@ -0,0 +1,26 @@
+From a0ad5128d14b022239445e251cf4a9826e86aa96 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Tue, 27 Jun 2017 07:48:31 -0700
+Subject: [PATCH] Add format string to fprintf() call
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/vt.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/vt.c b/src/vt.c
+index 795d393..a533d3d 100644
+--- a/src/vt.c
++++ b/src/vt.c
+@@ -499,7 +499,7 @@ static int vt_cmd_dump_candidates(const struct vt_handle *vh,
+ }
+ llen += cmdlen;
+
+- ret = fprintf(vh->vh_stream, e->cmd);
++ ret = fprintf(vh->vh_stream, "%s", e->cmd);
+ if (ret < 0)
+ return ret;
+
+--
+2.13.2
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/umip/files/add-dependency-to-support-parallel-compilation.patch b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/umip/files/add-dependency-to-support-parallel-compilation.patch
new file mode 100644
index 000000000..dbf008264
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/umip/files/add-dependency-to-support-parallel-compilation.patch
@@ -0,0 +1,23 @@
+When "make -j10", the compilation will fail,
+because scan.c has included gram.h, but gram.h was produced
+after scan.c was compiled
+
+So add this dependency to ensure that gram.h is produced
+before scan.c is produced.
+
+Upstream-Status: Inappropriate [upstream is not active]
+
+Signed-off-by: Roy.Li <RongQing.Li@windriver.com>
+Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
+---
+ src/Makefile.am | 2 ++
+ 1 file changed, 2 insertions(+)
+
+--- a/src/Makefile.am
++++ b/src/Makefile.am
+@@ -81,3 +81,5 @@ CLEANFILES = gram.c gram.h \
+
+ DISTCLEANFILES = $(BUILT_SOURCES)
+ MAINTAINERCLEANFILES = Makefile.in
++
++scan.c: gram.h
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/umip/files/mip6d b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/umip/files/mip6d
new file mode 100755
index 000000000..ebd70a6cc
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/umip/files/mip6d
@@ -0,0 +1,112 @@
+#!/bin/sh
+#
+# mip6d Start script for the Mobile IPv6 daemon
+#
+# chkconfig: - 55 25
+# description: The mobile IPv6 daemon allows nodes to remain \
+# reachable while moving around in the IPv6 Internet.
+# processname: mip6d
+# config: /etc/mip6d.conf
+# config: /etc/sysconfig/mip6d
+#
+### BEGIN INIT INFO
+# Provides: mipv6-daemon
+# Required-Start: $local_fs $remote_fs $network $named
+# Required-Stop: $local_fs $remote_fs $network
+# Should-Start: $syslog
+# Should-Stop: $network $syslog
+# Default-Start:
+# Default-Stop: 0 1 6
+# Short-Description: Start and stop Mobile IPV6 daemon
+# Description: The mobile IPv6 daemon allows nodes to remain
+# reachable while moving around in the IPv6 Internet.
+### END INIT INFO
+
+# Source function library.
+. /etc/init.d/functions
+
+if [ -f /etc/sysconfig/mip6d ]; then
+ . /etc/sysconfig/mip6d
+fi
+
+mip6d=/usr/sbin/mip6d
+prog="mip6d"
+lockfile=/var/lock/subsys/$prog
+
+start() {
+ [ -x $mip6d ] || exit 5
+ echo -n $"Starting $prog: "
+ start-stop-daemon -S -x ${mip6d} && success || failure
+ retval=$?
+ echo
+ [ $retval -eq 0 ] && touch ${lockfile}
+ return $retval
+}
+
+stop() {
+ echo -n $"Stopping $prog: "
+ start-stop-daemon -K -x $mip6d
+ retval=$?
+ echo
+ [ $retval -eq 0 ] && rm -f ${lockfile}
+ return $retval
+}
+
+restart() {
+ stop
+ start
+}
+
+reload()
+{
+ echo -n $"Reloading $prog configuration: "
+ killproc $mip6d -HUP
+ retval=$?
+ echo
+ return $retval
+}
+
+force_reload() {
+ restart
+}
+
+rh_status() {
+ status $prog
+}
+
+rh_status_q() {
+ rh_status > /dev/null 2>&1
+}
+
+case "$1" in
+ start)
+ rh_status_q && exit 0
+ $1
+ ;;
+ stop)
+ rh_status_q || exit 0
+ $1
+ ;;
+ restart)
+ $1
+ ;;
+ reload)
+ rh_status_q || exit 7
+ $1
+ ;;
+ force-reload)
+ force_reload
+ ;;
+ status)
+ rh_status
+ ;;
+ condrestart|try-restart)
+ rh_status_q || exit 0
+ restart
+ ;;
+ *)
+ echo $"Usage: $prog {start|stop|status|restart|condrestart|try-restart|reload|force-reload}"
+ exit 2
+esac
+
+exit $?
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/umip/files/mip6d.service b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/umip/files/mip6d.service
new file mode 100644
index 000000000..2b5a5b9f1
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/umip/files/mip6d.service
@@ -0,0 +1,10 @@
+[Unit]
+Description=MIPL Mobile IPv6
+After=network.target
+
+[Service]
+EnvironmentFile=-@SYSCONFDIR@/sysconfig/mip6d
+ExecStart=@SBINDIR@/mip6d $ARGS
+
+[Install]
+WantedBy=multi-user.target
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/umip/umip_1.0.bb b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/umip/umip_1.0.bb
index e80c1b130..cbf306144 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/umip/umip_1.0.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/umip/umip_1.0.bb
@@ -9,12 +9,32 @@ LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=073dc31ccb2ebed70db54f1e8aeb4c33"
DEPENDS = "rpm indent-native"
-SRC_URI = "git://git.umip.org/umip.git"
+SRC_URI = "git://git.umip.org/umip.git \
+ file://add-dependency-to-support-parallel-compilation.patch \
+ file://mip6d \
+ file://mip6d.service \
+ file://0001-Add-format-string-to-fprintf-call.patch \
+ "
SRCREV = "428974c2d0d8e75a2750a3ab0488708c5dfdd8e3"
S = "${WORKDIR}/git"
-EXTRA_OE_CONF = "--enable-vt"
-inherit autotools-brokensep
+EXTRA_OECONF = "--enable-vt"
-PARALLEL_MAKE = ""
+inherit autotools-brokensep systemd update-rc.d
+
+INITSCRIPT_NAME = "mip6d"
+INITSCRIPT_PARAMS = "start 64 . stop 36 0 1 2 3 4 5 6 ."
+
+SYSTEMD_SERVICE_${PN} = "mip6d.service"
+SYSTEMD_AUTO_ENABLE = "disable"
+
+do_install_append() {
+ install -D -m 0755 ${WORKDIR}/mip6d ${D}${sysconfdir}/init.d/mip6d
+ install -D -m 0644 ${WORKDIR}/mip6d.service ${D}${systemd_system_unitdir}/mip6d.service
+ sed -i -e 's,@SYSCONFDIR@,${sysconfdir},g' \
+ -e 's,@SBINDIR@,${sbindir},g' \
+ ${D}${systemd_system_unitdir}/mip6d.service
+}
+
+RRECOMMENDS_${PN} = "kernel-module-mip6 kernel-module-ipv6"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/usbmuxd/usbmuxd_git.bb b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/usbmuxd/usbmuxd_git.bb
index 52bf811e3..4365aa4bc 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/usbmuxd/usbmuxd_git.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/usbmuxd/usbmuxd_git.bb
@@ -18,7 +18,7 @@ S = "${WORKDIR}/git"
FILES_${PN} += "${base_libdir}/udev/rules.d/"
# fix usbmuxd installing files to /usr/lib64 on 64bit hosts:
-EXTRA_OECMAKE = "-DLIB_SUFFIX=${@d.getVar('baselib', True).replace('lib', '')}"
+EXTRA_OECMAKE = "-DLIB_SUFFIX=${@d.getVar('baselib').replace('lib', '')}"
PACKAGECONFIG ??= ""
PACKAGECONFIG[plist] = "-DWANT_PLIST=1,-DWANT_PLIST=0,libplist"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/wvdial/wvdial_1.61.bb b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/wvdial/wvdial_1.61.bb
index 65617fa3b..3a71fb979 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/wvdial/wvdial_1.61.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/wvdial/wvdial_1.61.bb
@@ -4,6 +4,8 @@ DESCRIPTION = "WvDial is a program that makes it easy to connect your Linux work
LICENSE = "LGPLv2"
LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=55ca817ccb7d5b5b66355690e9abc605"
+inherit pkgconfig
+
DEPENDS = "wvstreams"
RDEPENDS_${PN} = "ppp"
@@ -28,5 +30,3 @@ do_configure() {
do_install() {
oe_runmake prefix=${D}/usr PPPDIR=${D}/etc/ppp/peers install
}
-
-PNBLACKLIST[wvdial] ?= "Depends on broken wvstreams"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/wvdial/wvstreams/0001-Check-for-limits.h-during-configure.patch b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/wvdial/wvstreams/0001-Check-for-limits.h-during-configure.patch
new file mode 100644
index 000000000..b092ba2fc
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/wvdial/wvstreams/0001-Check-for-limits.h-during-configure.patch
@@ -0,0 +1,26 @@
+From 7deaf836d1f1b9e4426818584b4267f8c4a095aa Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Thu, 20 Jul 2017 21:04:07 -0700
+Subject: [PATCH 1/5] Check for limits.h during configure
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ configure.ac | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/configure.ac b/configure.ac
+index fe0fa2b..188adfe 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -139,6 +139,8 @@ int main()
+ [Compiler warning on deprecated functions])])
+ CPPFLAGS="$CPPFLAGS_save"
+
++AC_CHECK_HEADERS(limits.h)
++
+ # argp
+ USE_WVSTREAMS_ARGP=0
+ AC_CHECK_HEADERS(argp.h)
+--
+2.13.3
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/wvdial/wvstreams/0001-build-fix-parallel-make.patch b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/wvdial/wvstreams/0001-build-fix-parallel-make.patch
new file mode 100644
index 000000000..6bc34331d
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/wvdial/wvstreams/0001-build-fix-parallel-make.patch
@@ -0,0 +1,76 @@
+From 90de630f21ac744a37b3adac1bd84654471744ff Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Thu, 24 Aug 2017 22:30:01 -0700
+Subject: [PATCH 1/2] build: fix parallel make
+
+Imported from Gentoo
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ Makefile | 15 +++++++++++++--
+ wvrules-posix.mk | 7 +++++--
+ 2 files changed, 18 insertions(+), 4 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index 72c8bef..5a4cfb2 100644
+--- a/Makefile
++++ b/Makefile
+@@ -131,12 +131,19 @@ utils/tests/%: PRELIBS+=$(LIBWVSTREAMS)
+ # libwvstreams: stream/event handling library
+ #
+ TARGETS += libwvstreams.so
+-TARGETS += crypto/tests/ssltest ipstreams/tests/unixtest
++TARGETS += crypto/tests/ssltest
++crypto/tests/ssltest: $(LIBWVSTREAMS)
++
++TARGETS += ipstreams/tests/unixtest
++ipstreams/tests/unixtest: $(LIBWVSTREAMS)
++
+ TARGETS += crypto/tests/printcert
++crypto/tests/printcert: $(LIBWVSTREAMS)
+
+ ifndef _MACOS
+ ifneq ("$(with_readline)", "no")
+ TARGETS += ipstreams/tests/wsd
++ ipstreams/tests/wsd: $(LIBWVSTREAMS)
+ ipstreams/tests/wsd-LIBS += -lreadline
+ else
+ TEST_SKIP_OBJS += ipstreams/tests/wsd
+@@ -179,7 +186,11 @@ uniconf/tests/%: PRELIBS+=$(LIBUNICONF)
+ #
+ ifneq ("$(with_dbus)", "no")
+ TARGETS += libwvdbus.so
+- TARGETS += dbus/tests/wvdbus dbus/tests/wvdbusd
++ TARGETS += dbus/tests/wvdbus
++ dbus/tests/wvdbus: $(LIBWVDBUS)
++
++ TARGETS += dbus/tests/wvdbusd
++ dbus/tests/wvdbusd: $(LIBWVDBUS)
+ TESTS += $(call tests_cc,dbus/tests)
+ libwvdbus_OBJS += $(call objects,dbus)
+ libwvdbus.so: $(libwvdbus_OBJS) $(LIBWVSTREAMS)
+diff --git a/wvrules-posix.mk b/wvrules-posix.mk
+index f94d2cd..2e99f36 100644
+--- a/wvrules-posix.mk
++++ b/wvrules-posix.mk
+@@ -80,12 +80,15 @@ define wvlink_ar
+ $(AR) s $1
+ endef
+
+-CC: FORCE
++CC:
+ @CC="$(CC)" CFLAGS="$(CFLAGS)" CPPFLAGS="$(CPPFLAGS)" \
+ $(WVSTREAMS)/gen-cc CC c
+
+-CXX: FORCE
++CXX:
+ @CC="$(CXX)" CFLAGS="$(CXXFLAGS)" CPPFLAGS="$(CPPFLAGS)" \
+ $(WVSTREAMS)/gen-cc CXX cc
+
++#All files must depend on the above two rules. This is a godawful hack.
++$(shell find -type f '(' -name '*.c' -o -name '*.cc' ')' ): CC CXX
++
+ wvlink=$(LINK_MSG)$(WVLINK_CC) $(LDFLAGS) $($1-LDFLAGS) -o $1 $(filter %.o %.a %.so, $2) $($1-LIBS) $(XX_LIBS) $(LDLIBS) $(PRELIBS) $(LIBS)
+--
+2.14.1
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/wvdial/wvstreams/0002-wvrules.mk-Use-_DEFAULT_SOURCE.patch b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/wvdial/wvstreams/0002-wvrules.mk-Use-_DEFAULT_SOURCE.patch
new file mode 100644
index 000000000..59f70e380
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/wvdial/wvstreams/0002-wvrules.mk-Use-_DEFAULT_SOURCE.patch
@@ -0,0 +1,29 @@
+From 4afff42714a15cb796d3589d87c6fac4558b2c95 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Thu, 24 Aug 2017 22:33:32 -0700
+Subject: [PATCH 2/2] wvrules.mk: Use _DEFAULT_SOURCE
+
+Fixes warnings with newer glibc
+warning: "_BSD_SOURCE and _SVID_SOURCE are deprecated, use _DEFAULT_SOURCE"
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ wvrules.mk | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/wvrules.mk b/wvrules.mk
+index 877f700..124bffd 100644
+--- a/wvrules.mk
++++ b/wvrules.mk
+@@ -83,7 +83,7 @@ runtests:
+
+ INCFLAGS=$(addprefix -I,$(WVSTREAMS_INC) $(XPATH))
+ CPPFLAGS+=$(INCFLAGS) \
+- -D_BSD_SOURCE -D_GNU_SOURCE $(OSDEFINE) \
++ -D_DEFAULT_SOURCE $(OSDEFINE) \
+ -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 \
+ -DUNSTABLE
+
+--
+2.14.1
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/wvdial/wvstreams/0002-wvtask-Dont-use-ucontext-on-non-glibc-systems.patch b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/wvdial/wvstreams/0002-wvtask-Dont-use-ucontext-on-non-glibc-systems.patch
new file mode 100644
index 000000000..232db9e63
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/wvdial/wvstreams/0002-wvtask-Dont-use-ucontext-on-non-glibc-systems.patch
@@ -0,0 +1,135 @@
+From 0e054339c1422168a7f4a9dcf090268053a33b1f Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Thu, 20 Jul 2017 21:05:37 -0700
+Subject: [PATCH 2/5] wvtask: Dont use ucontext on non-glibc systems
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ utils/wvtask.cc | 24 ++++++++++++++++++++++++
+ 1 file changed, 24 insertions(+)
+
+diff --git a/utils/wvtask.cc b/utils/wvtask.cc
+index cdcd544..c0bff7d 100644
+--- a/utils/wvtask.cc
++++ b/utils/wvtask.cc
+@@ -199,7 +199,9 @@ WvTaskMan::WvTaskMan()
+ stacktop = (char *)alloca(0);
+
+ context_return = 0;
++#ifdef __GLIBC__
+ assert(getcontext(&get_stack_return) == 0);
++#endif
+ if (context_return == 0)
+ {
+ // initial setup - start the stackmaster() task (never returns!)
+@@ -265,13 +267,17 @@ int WvTaskMan::run(WvTask &task, int val)
+ state = &old_task->mystate;
+
+ context_return = 0;
++#ifdef __GLIBC__
+ assert(getcontext(state) == 0);
++#endif
+ int newval = context_return;
+ if (newval == 0)
+ {
+ // saved the state, now run the task.
+ context_return = val;
++#ifdef __GLIBC__
+ setcontext(&task.mystate);
++#endif
+ return -1;
+ }
+ else
+@@ -319,13 +325,17 @@ int WvTaskMan::yield(int val)
+ #endif
+
+ context_return = 0;
++#ifdef __GLIBC__
+ assert(getcontext(&current_task->mystate) == 0);
++#endif
+ int newval = context_return;
+ if (newval == 0)
+ {
+ // saved the task state; now yield to the toplevel.
+ context_return = val;
++#ifdef __GLIBC__
+ setcontext(&toplevel);
++#endif
+ return -1;
+ }
+ else
+@@ -341,7 +351,9 @@ int WvTaskMan::yield(int val)
+ void WvTaskMan::get_stack(WvTask &task, size_t size)
+ {
+ context_return = 0;
++#ifdef __GLIBC__
+ assert(getcontext(&get_stack_return) == 0);
++#endif
+ if (context_return == 0)
+ {
+ assert(magic_number == -WVTASK_MAGIC);
+@@ -371,7 +383,9 @@ void WvTaskMan::get_stack(WvTask &task, size_t size)
+ // initial setup
+ stack_target = &task;
+ context_return = size/1024 + (size%1024 > 0);
++#ifdef __GLIBC__
+ setcontext(&stackmaster_task);
++#endif
+ }
+ else
+ {
+@@ -409,7 +423,9 @@ void WvTaskMan::_stackmaster()
+ assert(magic_number == -WVTASK_MAGIC);
+
+ context_return = 0;
++#ifdef __GLIBC__
+ assert(getcontext(&stackmaster_task) == 0);
++#endif
+ val = context_return;
+ if (val == 0)
+ {
+@@ -419,7 +435,9 @@ void WvTaskMan::_stackmaster()
+ // all current stack allocations) and go back to get_stack
+ // (or the constructor, if that's what called us)
+ context_return = 1;
++#ifdef __GLIBC__
+ setcontext(&get_stack_return);
++#endif
+ }
+ else
+ {
+@@ -474,7 +492,9 @@ void WvTaskMan::do_task()
+
+ // back here from longjmp; someone wants stack space.
+ context_return = 0;
++#ifdef __GLIBC__
+ assert(getcontext(&task->mystate) == 0);
++#endif
+ if (context_return == 0)
+ {
+ // done the setjmp; that means the target task now has
+@@ -510,7 +530,9 @@ void WvTaskMan::do_task()
+ }
+ else
+ {
++#ifdef __GLIBC__
+ assert(getcontext(&task->func_call) == 0);
++#endif
+ task->func_call.uc_stack.ss_size = task->stacksize;
+ task->func_call.uc_stack.ss_sp = task->stack;
+ task->func_call.uc_stack.ss_flags = 0;
+@@ -521,9 +543,11 @@ void WvTaskMan::do_task()
+ (void (*)(void))call_func, 1, task);
+
+ context_return = 0;
++#ifdef __GLIBC__
+ assert(getcontext(&task->func_return) == 0);
+ if (context_return == 0)
+ setcontext(&task->func_call);
++#endif
+ }
+
+ // the task's function terminated.
+--
+2.13.3
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/wvdial/wvstreams/0003-wvtask-Check-for-HAVE_LIBC_STACK_END-only-on-glibc-s.patch b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/wvdial/wvstreams/0003-wvtask-Check-for-HAVE_LIBC_STACK_END-only-on-glibc-s.patch
new file mode 100644
index 000000000..f9304197a
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/wvdial/wvstreams/0003-wvtask-Check-for-HAVE_LIBC_STACK_END-only-on-glibc-s.patch
@@ -0,0 +1,27 @@
+From f1fc9f4d523dd8b773a4535176547b0619ec05c6 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Thu, 20 Jul 2017 21:08:57 -0700
+Subject: [PATCH 3/5] wvtask: Check for HAVE_LIBC_STACK_END only on glibc
+ systems
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ utils/wvtask.cc | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/utils/wvtask.cc b/utils/wvtask.cc
+index c0bff7d..716344b 100644
+--- a/utils/wvtask.cc
++++ b/utils/wvtask.cc
+@@ -563,7 +563,7 @@ void WvTaskMan::do_task()
+
+ const void *WvTaskMan::current_top_of_stack()
+ {
+-#ifdef HAVE_LIBC_STACK_END
++#if defined(HAVE_LIBC_STACK_END) && defined(__GLIBC__)
+ extern const void *__libc_stack_end;
+ if (use_shared_stack() || current_task == NULL)
+ return __libc_stack_end;
+--
+2.13.3
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/wvdial/wvstreams/0004-wvcrash-Replace-use-of-basename-API.patch b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/wvdial/wvstreams/0004-wvcrash-Replace-use-of-basename-API.patch
new file mode 100644
index 000000000..6f3fbffbd
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/wvdial/wvstreams/0004-wvcrash-Replace-use-of-basename-API.patch
@@ -0,0 +1,28 @@
+From bfe68126693f9159f7ac66a69217e0b5f43e5781 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Thu, 20 Jul 2017 21:11:21 -0700
+Subject: [PATCH 4/5] wvcrash: Replace use of basename API
+
+musl does not have this API
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ utils/wvcrash.cc | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/utils/wvcrash.cc b/utils/wvcrash.cc
+index 0417759..3d160b7 100644
+--- a/utils/wvcrash.cc
++++ b/utils/wvcrash.cc
+@@ -404,7 +404,7 @@ extern void __wvcrash_init_buffers(const char *program_name);
+ void wvcrash_setup(const char *_argv0, const char *_desc)
+ {
+ if (_argv0)
+- argv0 = basename(_argv0);
++ argv0 = strrchr(_argv0, '/') ? strrchr(_argv0, '/')+1 : _argv0;
+ __wvcrash_init_buffers(argv0);
+ if (_desc)
+ {
+--
+2.13.3
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/wvdial/wvstreams/0005-check-for-libexecinfo-during-configure.patch b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/wvdial/wvstreams/0005-check-for-libexecinfo-during-configure.patch
new file mode 100644
index 000000000..25e9ee236
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/wvdial/wvstreams/0005-check-for-libexecinfo-during-configure.patch
@@ -0,0 +1,30 @@
+From fd9515f08dcdafea6ae03413fbe5a43a6438fe3e Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Thu, 20 Jul 2017 21:25:48 -0700
+Subject: [PATCH 5/5] check for libexecinfo during configure
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ configure.ac | 6 ++++++
+ 1 file changed, 6 insertions(+)
+
+diff --git a/configure.ac b/configure.ac
+index 188adfe..1ab4d3c 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -159,6 +159,12 @@ AC_SEARCH_LIBS([argp_parse], [argp c], [], [
+ USE_WVSTREAMS_ARGP=1
+ fi
+ ])
++
++USE_LIBEXECINFO=0
++AC_SEARCH_LIBS([backtrace], [execinfo], [], [
++USE_LIBEXECINFO=1
++])
++
+ # Function checks
+ AC_HEADER_DIRENT
+
+--
+2.13.3
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/wvdial/wvstreams/argp.patch b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/wvdial/wvstreams/argp.patch
new file mode 100644
index 000000000..e85721363
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/wvdial/wvstreams/argp.patch
@@ -0,0 +1,37 @@
+Check for argp_parse in libargp and then in libc before using internal version
+
+Index: wvstreams-4.6.1/configure.ac
+===================================================================
+--- wvstreams-4.6.1.orig/configure.ac
++++ wvstreams-4.6.1/configure.ac
+@@ -142,20 +142,21 @@ CPPFLAGS="$CPPFLAGS_save"
+ # argp
+ USE_WVSTREAMS_ARGP=0
+ AC_CHECK_HEADERS(argp.h)
+-AC_CHECK_FUNC(argp_parse)
+-if test "$ac_cv_func_argp_parse" != yes \
+- -o "$ac_cv_header_argp_h" != yes ; then
+- (
+- echo
++AC_SEARCH_LIBS([argp_parse], [argp c], [], [
++
++ if test "$ac_cv_func_argp_parse" != yes \
++ -o "$ac_cv_header_argp_h" != yes ; then
++ (
++ echo
+ echo 'configuring argp...'
+ cd argp
+ ./configure --host=$host_cpu-$host_os || exit $?
+ echo 'argp configured.'
+ echo
+- ) || exit $?
+- USE_WVSTREAMS_ARGP=1
+-fi
+-
++ ) || exit $?
++ USE_WVSTREAMS_ARGP=1
++ fi
++])
+ # Function checks
+ AC_HEADER_DIRENT
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/wvdial/wvstreams/gcc-6.patch b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/wvdial/wvstreams/gcc-6.patch
new file mode 100644
index 000000000..b084887ba
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/wvdial/wvstreams/gcc-6.patch
@@ -0,0 +1,42 @@
+Description: Fix compilation with gcc-6
+Author: Gert Wollny <gw.fossdev@gmail.com>
+Last-Updated: 2016-07-26
+Forwarded: No
+Bug-Debian: https://bugs.debian.org/811659
+Bug-Debian: https://bugs.debian.org/831146
+
+--- a/streams/wvstream.cc
++++ b/streams/wvstream.cc
+@@ -907,9 +907,9 @@
+
+ if (forceable)
+ {
+- si.wants.readable = readcb;
+- si.wants.writable = writecb;
+- si.wants.isexception = exceptcb;
++ si.wants.readable = static_cast<bool>(readcb);
++ si.wants.writable = static_cast<bool>(writecb);
++ si.wants.isexception = static_cast<bool>(exceptcb);
+ }
+ else
+ {
+@@ -1019,7 +1019,8 @@
+
+ IWvStream::SelectRequest WvStream::get_select_request()
+ {
+- return IWvStream::SelectRequest(readcb, writecb, exceptcb);
++ return IWvStream::SelectRequest(static_cast<bool>(readcb), static_cast<bool>(writecb),
++ static_cast<bool>(exceptcb));
+ }
+
+
+@@ -1107,7 +1108,8 @@
+ // inefficient, because if the alarm was expired then pre_select()
+ // returned true anyway and short-circuited the previous select().
+ TRACE("hello-%p\n", this);
+- return !alarm_was_ticking || select(0, readcb, writecb, exceptcb);
++ return !alarm_was_ticking || select(0, static_cast<bool>(readcb),
++ static_cast<bool>(writecb), static_cast<bool>(exceptcb));
+ }
+
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/wvdial/wvstreams_4.6.1.bb b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/wvdial/wvstreams_4.6.1.bb
index 8d864484a..e3d5e7d20 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/wvdial/wvstreams_4.6.1.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/wvdial/wvstreams_4.6.1.bb
@@ -5,21 +5,29 @@ LICENSE = "LGPLv2"
LIC_FILES_CHKSUM = "file://LICENSE;md5=55ca817ccb7d5b5b66355690e9abc605"
DEPENDS = "zlib openssl (>= 0.9.8) dbus readline"
+DEPENDS_append_libc-musl = " argp-standalone libexecinfo"
SRC_URI = "http://${BPN}.googlecode.com/files/${BP}.tar.gz \
file://04_signed_request.diff \
file://05_gcc.diff \
file://06_gcc-4.7.diff \
file://07_buildflags.diff \
- "
+ file://gcc-6.patch \
+ file://argp.patch \
+ file://0001-Check-for-limits.h-during-configure.patch \
+ file://0002-wvtask-Dont-use-ucontext-on-non-glibc-systems.patch \
+ file://0003-wvtask-Check-for-HAVE_LIBC_STACK_END-only-on-glibc-s.patch \
+ file://0004-wvcrash-Replace-use-of-basename-API.patch \
+ file://0005-check-for-libexecinfo-during-configure.patch \
+ file://0001-build-fix-parallel-make.patch \
+ file://0002-wvrules.mk-Use-_DEFAULT_SOURCE.patch \
+ "
SRC_URI[md5sum] = "2760dac31a43d452a19a3147bfde571c"
SRC_URI[sha256sum] = "8403f5fbf83aa9ac0c6ce15d97fd85607488152aa84e007b7d0621b8ebc07633"
inherit autotools-brokensep pkgconfig
-PARALLEL_MAKE = ""
-
TARGET_CFLAGS_append = " -fno-tree-dce -fno-optimize-sibling-calls"
LDFLAGS_append = " -Wl,-rpath-link,${CROSS_DIR}/${TARGET_SYS}/lib"
@@ -46,6 +54,3 @@ FILES_libwvstreams-extras-dbg = "${libdir}/.debug/libwvbase.so.* ${libdir}/.debu
FILES_${PN}-valgrind = "${libdir}/valgrind/wvstreams.supp"
RDEPENDS_${PN} += "perl"
-
-# http://errors.yoctoproject.org/Errors/Details/68614/
-PNBLACKLIST[wvstreams] ?= "BROKEN: fails to build with gcc-6"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/zabbix/zabbix_2.4.7.bb b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/zabbix/zabbix_3.0.8.bb
index 8b9c4b844..7e7d6def4 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/zabbix/zabbix_2.4.7.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/zabbix/zabbix_3.0.8.bb
@@ -28,8 +28,8 @@ SRC_URI = "http://jaist.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stab
file://zabbix-agent.service \
"
-SRC_URI[md5sum] = "9f8aeb11d8415585f41c3f2f22566b78"
-SRC_URI[sha256sum] = "d2c47b8f5b9b91f18010d54c45de55845d979014a8b3fe4bef64e0b08f8b00da"
+SRC_URI[md5sum] = "f7f41850397d2078ccae4b7389f9a005"
+SRC_URI[sha256sum] = "1df3e106427ed21547b8119049a161092f597d04507f9eb535951a9ee887a476"
inherit autotools-brokensep linux-kernel-base pkgconfig systemd useradd
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/zeroc-ice/zeroc-ice_3.5.1.bb b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/zeroc-ice/zeroc-ice_3.5.1.bb
index 2b6f56ed4..7c833b0eb 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/zeroc-ice/zeroc-ice_3.5.1.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/zeroc-ice/zeroc-ice_3.5.1.bb
@@ -18,7 +18,7 @@ SRC_URI[sha256sum] = "989e51194c6adadbd156da3288e37bad847b93b3b876502e83033b7049
#| /home/jenkins/oe/world/shr-core/tmp-eglibc/sysroots/x86_64-linux/usr/include/db_cxx.h:273:14: note: virtual int Db::set_bt_compare(int (*)(Db*, const Dbt*, const Dbt*, size_t*)) <near match>
#| /home/jenkins/oe/world/shr-core/tmp-eglibc/sysroots/x86_64-linux/usr/include/db_cxx.h:273:14: note: no known conversion for argument 1 from 'int (*)(DB*, const DBT*, const DBT*) {aka int (*)(__db*, const __db_dbt*, const __db_dbt*)}' to 'int (*)(Db*, const Dbt*, const Dbt*, size_t*) {aka int (*)(Db*, const Dbt*, const Dbt*, long unsigned int*)}'
#| make[3]: *** [MapDb.o] Error 1
-PNBLACKLIST[zeroc-ice] ?= "BROKEN: not compatible with default db version"
+PNBLACKLIST[zeroc-ice] ?= "BROKEN: not compatible with default db version - the recipe will be removed on 2017-09-01 unless the issue is fixed"
S = "${WORKDIR}/Ice-${PV}"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/zeromq/cppzmq_git.bb b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/zeromq/cppzmq_git.bb
index f41cd0a18..a64745c94 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/zeromq/cppzmq_git.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/zeromq/cppzmq_git.bb
@@ -3,7 +3,9 @@ HOMEPAGE = "http://www.zeromq.org"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENSE;md5=db174eaf7b55a34a7c89551197f66e94"
DEPENDS = "zeromq"
+
SRCREV = "68a7b09cfce01c4c279fba2cf91686fcfc566848"
+PV = "4.1.5+git${SRCPV}"
SRC_URI = "git://github.com/zeromq/cppzmq.git"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/zeromq/zeromq_4.1.5.bb b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/zeromq/zeromq_4.1.6.bb
index 8da86746b..e126f3239 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-connectivity/zeromq/zeromq_4.1.5.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-connectivity/zeromq/zeromq_4.1.6.bb
@@ -9,8 +9,8 @@ PACKAGECONFIG[libsodium] = "--with-libsodium, --without-libsodium, libsodium"
SRC_URI = "http://github.com/zeromq/zeromq4-1/releases/download/v${PV}/zeromq-${PV}.tar.gz \
file://run-ptest \
"
-SRC_URI[md5sum] = "e7adf4b7dbae09b28cfd10d26cd67fac"
-SRC_URI[sha256sum] = "04aac57f081ffa3a2ee5ed04887be9e205df3a7ddade0027460b8042432bdbcf"
+SRC_URI[md5sum] = "c89db4dbc0b90c34c9f4983cbff6d321"
+SRC_URI[sha256sum] = "02ebf60a43011e770799336365bcbce2eb85569e9b5f52aa0d8cc04672438a0a"
S = "${WORKDIR}/zeromq-${PV}"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-core/dbus/dbus-daemon-proxy_git.bb b/import-layers/meta-openembedded/meta-oe/recipes-core/dbus/dbus-daemon-proxy_git.bb
index 205e1d1a1..a953ebc28 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-core/dbus/dbus-daemon-proxy_git.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-core/dbus/dbus-daemon-proxy_git.bb
@@ -20,3 +20,5 @@ do_install() {
install -m 0755 dbus-daemon-proxy ${D}${bindir}
}
+
+PNBLACKLIST[dbus-daemon-proxy] ?= "Fails to build with RSS http://errors.yoctoproject.org/Errors/Details/130613/ - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-core/dbus/libdbus-c++-0.9.0/0001-pipe.c-Use-a-string-instead-of-char.patch b/import-layers/meta-openembedded/meta-oe/recipes-core/dbus/libdbus-c++-0.9.0/0001-pipe.c-Use-a-string-instead-of-char.patch
new file mode 100644
index 000000000..6883f9a0b
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-core/dbus/libdbus-c++-0.9.0/0001-pipe.c-Use-a-string-instead-of-char.patch
@@ -0,0 +1,27 @@
+From 6bcb58bd69c38b9200e8ec6c382247167571189d Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 1 Jul 2017 16:44:15 -0700
+Subject: [PATCH] pipe.c: Use a string instead of char
+
+Fixes
+error: invalid conversion from 'char' to 'const void*' [-fpermissive]
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/pipe.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/pipe.cpp b/src/pipe.cpp
+index 45c2ba6..1303c2d 100644
+--- a/src/pipe.cpp
++++ b/src/pipe.cpp
+@@ -83,5 +83,5 @@ ssize_t Pipe::read(void *buffer, unsigned int &nbytes)
+ void Pipe::signal()
+ {
+ // TODO: ignoring return of read/write generates warning; maybe relevant for eventloop work...
+- ::write(_fd_write, '\0', 1);
++ ::write(_fd_write, "", 1);
+ }
+--
+2.13.2
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-core/dbus/libdbus-c++-0.9.0/0001-src-eventloop.cpp-use-portable-method-for-initializi.patch b/import-layers/meta-openembedded/meta-oe/recipes-core/dbus/libdbus-c++-0.9.0/0001-src-eventloop.cpp-use-portable-method-for-initializi.patch
new file mode 100644
index 000000000..eed84e4a6
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-core/dbus/libdbus-c++-0.9.0/0001-src-eventloop.cpp-use-portable-method-for-initializi.patch
@@ -0,0 +1,36 @@
+From 93fd4868d71aa7a26cdfd382d1e4c85112f069f9 Mon Sep 17 00:00:00 2001
+From: Peter Williams <peter@newton.cx>
+Date: Sat, 19 Dec 2015 21:07:37 -0500
+Subject: [PATCH] src/eventloop.cpp: use portable method for initializing
+ recursive mutex
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+---
+Upstream-Status: Backport [https://github.com/andreas-volz/dbus-cplusplus/commit/cdaeaa825db191bd65aad3aaaeb3178738727f05]
+Signed-off-by: André Draszik <adraszik@tycoint.com>
+ src/eventloop.cpp | 7 +++++--
+ 1 file changed, 5 insertions(+), 2 deletions(-)
+
+diff --git a/src/eventloop.cpp b/src/eventloop.cpp
+index 7fb06a3..f622812 100644
+--- a/src/eventloop.cpp
++++ b/src/eventloop.cpp
+@@ -85,8 +85,11 @@ DefaultMutex::DefaultMutex(bool recursive)
+ {
+ if (recursive)
+ {
+- pthread_mutex_t recmutex = PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP;
+- _mutex = recmutex;
++ pthread_mutexattr_t attr;
++
++ pthread_mutexattr_init(&attr);
++ pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_RECURSIVE);
++ pthread_mutex_init(&_mutex, &attr);
+ }
+ else
+ {
+--
+2.10.2
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-core/dbus/libdbus-c++-0.9.0/0002-tools-generate_proxy.cpp-avoid-possibly-undefined-ui.patch b/import-layers/meta-openembedded/meta-oe/recipes-core/dbus/libdbus-c++-0.9.0/0002-tools-generate_proxy.cpp-avoid-possibly-undefined-ui.patch
new file mode 100644
index 000000000..65cd93976
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-core/dbus/libdbus-c++-0.9.0/0002-tools-generate_proxy.cpp-avoid-possibly-undefined-ui.patch
@@ -0,0 +1,58 @@
+From c673a76857cbe0ca82fa11aea9b70f94c3e5b041 Mon Sep 17 00:00:00 2001
+From: Peter Williams <peter@newton.cx>
+Date: Sat, 19 Dec 2015 21:08:46 -0500
+Subject: [PATCH] tools/generate_proxy.cpp: avoid possibly undefined 'uint'
+ type
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+---
+Upstream-Status: Backport [https://github.com/andreas-volz/dbus-cplusplus/commit/43f119a2b3fe951c0f1d88cc61170d4c81a88880]
+Signed-off-by: André Draszik <adraszik@tycoint.com>
+ tools/generate_proxy.cpp | 8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/tools/generate_proxy.cpp b/tools/generate_proxy.cpp
+index bf1094a..ebb75fa 100644
+--- a/tools/generate_proxy.cpp
++++ b/tools/generate_proxy.cpp
+@@ -352,7 +352,7 @@ void generate_proxy(Xml::Document &doc, const char *filename)
+ if (!arg_name.length())
+ {
+ arg_name = "argin";
+- arg_name += toString <uint> (i);
++ arg_name += toString <unsigned int> (i);
+ }
+
+ // generate extra code to wrap object
+@@ -445,7 +445,7 @@ void generate_proxy(Xml::Document &doc, const char *filename)
+
+ if (!arg_name.length())
+ {
+- arg_name = "argout" + toString <uint> (i);
++ arg_name = "argout" + toString <unsigned int> (i);
+ }
+
+ if (arg_object.length())
+@@ -569,7 +569,7 @@ void generate_proxy(Xml::Document &doc, const char *filename)
+ // use a default if no arg name given
+ if (!arg_name.length())
+ {
+- arg_name = "arg" + toString <uint> (i);
++ arg_name = "arg" + toString <unsigned int> (i);
+ }
+
+ body << arg_name << ";" << endl;
+@@ -605,7 +605,7 @@ void generate_proxy(Xml::Document &doc, const char *filename)
+
+ if (!arg_name.length())
+ {
+- arg_name = "arg" + toString <uint> (j);
++ arg_name = "arg" + toString <unsigned int> (j);
+ }
+
+ if (arg_object.length())
+--
+2.10.2
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-core/dbus/libdbus-c++-0.9.0/0003-Fixed-undefined-ssize_t-for-clang-3.8.0-on-FreeBSD.patch b/import-layers/meta-openembedded/meta-oe/recipes-core/dbus/libdbus-c++-0.9.0/0003-Fixed-undefined-ssize_t-for-clang-3.8.0-on-FreeBSD.patch
new file mode 100644
index 000000000..f69cefdb7
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-core/dbus/libdbus-c++-0.9.0/0003-Fixed-undefined-ssize_t-for-clang-3.8.0-on-FreeBSD.patch
@@ -0,0 +1,30 @@
+From 465d98dbcdcb72375c198010a50b80b953e7d5a6 Mon Sep 17 00:00:00 2001
+From: Yuri <yuri@tsoft.com>
+Date: Sat, 28 May 2016 13:20:10 -0700
+Subject: [PATCH] Fixed undefined ssize_t for clang-3.8.0 on FreeBSD.
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+---
+Upstream-Status: Backport [https://github.com/andreas-volz/dbus-cplusplus/commit/463f5a4400d494b831c3b3348c0a21f0faf14f39]
+Signed-off-by: André Draszik <adraszik@tycoint.com>
+ include/dbus-c++/pipe.h | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/include/dbus-c++/pipe.h b/include/dbus-c++/pipe.h
+index 999f042..682646c 100644
+--- a/include/dbus-c++/pipe.h
++++ b/include/dbus-c++/pipe.h
+@@ -30,6 +30,8 @@
+ /* STD */
+ #include <cstdlib>
+
++#include <sys/types.h>
++
+ namespace DBus
+ {
+
+--
+2.10.2
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-core/dbus/libdbus-c++-0.9.0/0004-use-POSIX-poll.h-instead-of-sys-poll.h.patch b/import-layers/meta-openembedded/meta-oe/recipes-core/dbus/libdbus-c++-0.9.0/0004-use-POSIX-poll.h-instead-of-sys-poll.h.patch
new file mode 100644
index 000000000..0c2c48746
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-core/dbus/libdbus-c++-0.9.0/0004-use-POSIX-poll.h-instead-of-sys-poll.h.patch
@@ -0,0 +1,77 @@
+From 12de53b0f24c478ea4ff6b4e2c55366dbd2f02b1 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Andr=C3=A9=20Draszik?= <git@andred.net>
+Date: Fri, 25 Nov 2016 09:33:20 +0000
+Subject: [PATCH] use POSIX poll.h instead of sys/poll.h
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+POSIX specifies that <poll.h> is the correct header to
+include for poll()
+ http://pubs.opengroup.org/onlinepubs/009695399/functions/poll.html
+whereas <sys/poll.h> is only needed for ancient glibc (<2.3),
+so let's follow POSIX instead.
+
+As a side-effect, this silences compilation warnings when
+compiling against the musl C-library such as:
+
+| In file included from ../../libdbus-c++-0.9.0/src/eventloop.cpp:31:0:
+| <sysroot>/usr/include/sys/poll.h:1:2: warning: #warning redirecting incorrect #include <sys/poll.h> to <poll.h> [-Wcpp]
+| #warning redirecting incorrect #include <sys/poll.h> to <poll.h>
+| ^~~~~~~
+| In file included from ../../libdbus-c++-0.9.0/src/eventloop-integration.cpp:39:0:
+| <sysroot>/usr/include/sys/poll.h:1:2: warning: #warning redirecting incorrect #include <sys/poll.h> to <poll.h> [-Wcpp]
+| #warning redirecting incorrect #include <sys/poll.h> to <poll.h>
+| ^~~~~~~
+
+Signed-off-by: André Draszik <git@andred.net>
+---
+Upstream-Status: Submitted [https://github.com/andreas-volz/dbus-cplusplus/pull/3]
+Signed-off-by: André Draszik <adraszik@tycoint.com>
+ src/eventloop-integration.cpp | 2 +-
+ src/eventloop.cpp | 2 +-
+ src/pipe.cpp | 2 +-
+ 3 files changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/src/eventloop-integration.cpp b/src/eventloop-integration.cpp
+index 5776971..271b503 100644
+--- a/src/eventloop-integration.cpp
++++ b/src/eventloop-integration.cpp
+@@ -36,7 +36,7 @@
+ /* STD */
+ #include <string.h>
+ #include <cassert>
+-#include <sys/poll.h>
++#include <poll.h>
+ #include <fcntl.h>
+ #include <unistd.h>
+
+diff --git a/src/eventloop.cpp b/src/eventloop.cpp
+index f622812..7790e1e 100644
+--- a/src/eventloop.cpp
++++ b/src/eventloop.cpp
+@@ -28,7 +28,7 @@
+ #include <dbus-c++/eventloop.h>
+ #include <dbus-c++/debug.h>
+
+-#include <sys/poll.h>
++#include <poll.h>
+ #include <sys/time.h>
+
+ #include <dbus/dbus.h>
+diff --git a/src/pipe.cpp b/src/pipe.cpp
+index 01211b3..45c2ba6 100644
+--- a/src/pipe.cpp
++++ b/src/pipe.cpp
+@@ -32,7 +32,7 @@
+
+ /* STD */
+ #include <unistd.h>
+-#include <sys/poll.h>
++#include <poll.h>
+ #include <fcntl.h>
+ #include <errno.h>
+ #include <cassert>
+--
+2.10.2
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-core/dbus/libdbus-c++-0.9.0/fix-missing-unistd.h-include.patch b/import-layers/meta-openembedded/meta-oe/recipes-core/dbus/libdbus-c++-0.9.0/fix-missing-unistd.h-include.patch
new file mode 100644
index 000000000..903a7209f
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-core/dbus/libdbus-c++-0.9.0/fix-missing-unistd.h-include.patch
@@ -0,0 +1,40 @@
+
+sniped from ChromiumOS
+
+https://bugs.gentoo.org/424707
+
+From 154f7861d19a2bd5c79c488f9989610971db451b Mon Sep 17 00:00:00 2001
+From: Han Shen <shenhan@google.com>
+Date: Thu, 31 May 2012 16:49:35 -0700
+Subject: [PATCH] Fixed dbus-c++ gcc 4.7 building problem.
+
+Just add "unistd.h" inclusion to eventloop-integration.h.
+
+BUG=None
+TEST=Manually built using gcc 4.7.
+
+Change-Id: I87bd1f90db6a4c974a5ed8134044e8be2034aff2
+Reviewed-on: https://gerrit.chromium.org/gerrit/24260
+Tested-by: Han Shen <shenhan@google.com>
+Reviewed-by: Yunlian Jiang <yunlian@chromium.org>
+Commit-Ready: Han Shen <shenhan@chromium.org>
+Upstream-Status: Inappropriate [ not author, no upstream ]
+Signed-off-by: Thilo Cestonaro <thilo.cestonaro@ts.fujitsu.com>
+---
+ include/dbus-c++/eventloop-integration.h | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/include/dbus-c++/eventloop-integration.h b/include/dbus-c++/eventloop-integration.h
+index 5108340..1b56ab5 100644
+--- a/include/dbus-c++/eventloop-integration.h
++++ b/include/dbus-c++/eventloop-integration.h
+@@ -27,6 +27,7 @@
+
+ #include <cstring>
+ #include <errno.h>
++#include <unistd.h>
+ #include "api.h"
+ #include "dispatcher.h"
+ #include "util.h"
+--
+1.7.9.7
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-core/dbus/libdbus-c++-0.9.0/remove-CXX_FOR_BUILD-stuff.patch b/import-layers/meta-openembedded/meta-oe/recipes-core/dbus/libdbus-c++-0.9.0/remove-CXX_FOR_BUILD-stuff.patch
new file mode 100644
index 000000000..fa29d3cde
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-core/dbus/libdbus-c++-0.9.0/remove-CXX_FOR_BUILD-stuff.patch
@@ -0,0 +1,33 @@
+From: Thilo Cestonaro <thilo.cestonaro@ts.fujitsu.com>
+Date: Fri, 18 Nov 2016 10:23:07 +0100
+Subject: Build libdbus-c++ tools for target platform rather than enforced for
+host platform.
+
+Upstream-Status: Inappropriate [no upstream]
+Signed-off-by: Thilo Cestonaro <thilo.cestonaro@ts.fujitsu.com>
+---
+
+diff -Naur libdbus-c++-0.9.0.ori/configure.ac libdbus-c++-0.9.0/configure.ac
+--- libdbus-c++-0.9.0.ori/configure.ac 2016-11-15 14:25:36.085882774 +0100
++++ libdbus-c++-0.9.0/configure.ac 2016-11-15 14:27:08.814568717 +0100
+@@ -64,9 +64,6 @@
+ AC_PROG_CC
+ AC_PROG_CXX
+
+-CXX_FOR_BUILD=${CXX_FOR_BUILD-${CXX}}
+-AC_SUBST(CXX_FOR_BUILD)
+-
+ AM_PROG_LIBTOOL
+
+ PKG_PROG_PKG_CONFIG
+diff -Naur libdbus-c++-0.9.0.ori/tools/Makefile.am libdbus-c++-0.9.0/tools/Makefile.am
+--- libdbus-c++-0.9.0.ori/tools/Makefile.am 2016-11-15 14:25:36.089882803 +0100
++++ libdbus-c++-0.9.0/tools/Makefile.am 2016-11-15 14:26:19.454203583 +0100
+@@ -1,7 +1,5 @@
+ # hacky, but ...
+
+-CXX = $(CXX_FOR_BUILD)
+-
+ AM_CPPFLAGS = \
+ $(dbus_CFLAGS) \
+ $(xml_CFLAGS) \
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-core/dbus/libdbus-c++_0.9.0.bb b/import-layers/meta-openembedded/meta-oe/recipes-core/dbus/libdbus-c++_0.9.0.bb
new file mode 100644
index 000000000..a6d8b86ee
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-core/dbus/libdbus-c++_0.9.0.bb
@@ -0,0 +1,30 @@
+SUMMARY = "DBus-C++ Library"
+DESCRIPTION = "DBus-c++ attempts to provide a C++ API for D-BUS. The library has a glib and an Ecore mainloop integration. It also offers an optional own main loop."
+HOMEPAGE = "http://dbus-cplusplus.sourceforge.net"
+SECTION = "base"
+LICENSE = "LGPLv2.1"
+LIC_FILES_CHKSUM = "file://COPYING;md5=fbc093901857fcd118f065f900982c24"
+DEPENDS = "dbus expat glib-2.0 libpcre"
+
+SRC_URI = "${SOURCEFORGE_MIRROR}/project/dbus-cplusplus/dbus-c++/${PV}/${BP}.tar.gz \
+ file://fix-missing-unistd.h-include.patch \
+ file://remove-CXX_FOR_BUILD-stuff.patch \
+ file://0001-src-eventloop.cpp-use-portable-method-for-initializi.patch \
+ file://0002-tools-generate_proxy.cpp-avoid-possibly-undefined-ui.patch \
+ file://0003-Fixed-undefined-ssize_t-for-clang-3.8.0-on-FreeBSD.patch \
+ file://0004-use-POSIX-poll.h-instead-of-sys-poll.h.patch \
+ file://0001-pipe.c-Use-a-string-instead-of-char.patch \
+ "
+SRC_URI[md5sum] = "e752116f523fa88ef041e63d3dee4de2"
+SRC_URI[sha256sum] = "bc11ac297b3cb010be904c72789695543ee3fdf3d75cdc8225fd371385af4e61"
+
+inherit autotools pkgconfig
+
+EXTRA_OECONF = "--disable-ecore --disable-examples --disable-tests"
+LDFLAGS += "-pthread"
+
+PACKAGE_BEFORE_PN = "${PN}-tools"
+
+FILES_${PN}-tools = "${bindir}"
+
+BBCLASSEXTEND = "native"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-core/fakeroot/fakeroot-native_1.18.4.bb b/import-layers/meta-openembedded/meta-oe/recipes-core/fakeroot/fakeroot-native_1.18.4.bb
index a27a60b48..9d50ea44a 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-core/fakeroot/fakeroot-native_1.18.4.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-core/fakeroot/fakeroot-native_1.18.4.bb
@@ -8,7 +8,7 @@ EXTRA_OECONF = "--program-prefix="
# Compatability for the rare systems not using or having SYSV
python () {
- if d.getVar('HOST_NONSYSV', True) and d.getVar('HOST_NONSYSV', True) != '0':
+ if d.getVar('HOST_NONSYSV') and d.getVar('HOST_NONSYSV') != '0':
d.setVar('EXTRA_OECONF', ' --with-ipc=tcp --program-prefix= ')
}
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-core/fakeroot/fakeroot_1.18.4.bb b/import-layers/meta-openembedded/meta-oe/recipes-core/fakeroot/fakeroot_1.18.4.bb
index 37b3c1870..0a787e3ea 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-core/fakeroot/fakeroot_1.18.4.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-core/fakeroot/fakeroot_1.18.4.bb
@@ -27,4 +27,4 @@ SRC_URI[md5sum] = "706171d8d520b1ca1576ac73f2ceb4f3"
SRC_URI[sha256sum] = "0a359efa3e9496c33234b3e9c89306a09bb4da9d33de43c261f1d8447e6ebea2"
# http://errors.yoctoproject.org/Errors/Details/35143/
-PNBLACKLIST[fakeroot] ?= "BROKEN: QA Issue: -dev package contains non-symlink .so"
+PNBLACKLIST[fakeroot] ?= "BROKEN: QA Issue: -dev package contains non-symlink .so - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-core/glib-2.0/glibmm_2.44.0.bb b/import-layers/meta-openembedded/meta-oe/recipes-core/glib-2.0/glibmm_2.50.1.bb
index d9cffff7b..401b3b2ec 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-core/glib-2.0/glibmm_2.44.0.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-core/glib-2.0/glibmm_2.50.1.bb
@@ -5,17 +5,17 @@ LICENSE = "LGPLv2.1 & GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=d8045f3b8f929c1cb29a1e3fd737b499 \
file://COPYING.tools;md5=751419260aa954499f7abaabaa882bbe"
-DEPENDS = "mm-common glib-2.0 libsigc++-2.0"
+DEPENDS = "mm-common glib-2.0 libsigc++-2.0 glib-2.0-native"
inherit autotools pkgconfig
-SHRT_VER = "${@d.getVar('PV',1).split('.')[0]}.${@d.getVar('PV',1).split('.')[1]}"
+SHRT_VER = "${@d.getVar('PV').split('.')[0]}.${@d.getVar('PV').split('.')[1]}"
SRC_URI = " \
ftp://ftp.gnome.org/pub/GNOME/sources/glibmm/${SHRT_VER}/glibmm-${PV}.tar.xz \
file://remove-examples.patch \
"
-SRC_URI[md5sum] = "32ee4150b436d097fe2506d0b0b13a75"
-SRC_URI[sha256sum] = "1b0ac0425d24895507c0e0e8088a464c7ae2d289c47afa1c11f63278fc672ea8"
+SRC_URI[md5sum] = "a5b915dc42fc62983fa78ca8486f4391"
+SRC_URI[sha256sum] = "1fd85051da9cb402cc8348cec72dfe4d79f9345df4a1dbf68703a4ded45846a4"
do_install_append() {
install -d ${D}${datadir}/glibmm-2.4
@@ -29,3 +29,4 @@ FILES_${PN} = "${libdir}/lib*.so.*"
FILES_${PN}-dev += "${datadir}/glibmm-* ${libdir}/glibmm-2.4/include/ ${libdir}/glibmm-2.4/proc/ ${libdir}/giomm-2.4/include/"
RDEPENDS_${PN}-dev = "perl"
+SECURITY_CFLAGS = "${SECURITY_NO_PIE_CFLAGS}"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-core/libsigc++-2.0/libsigc++-2.0_2.2.11.bb b/import-layers/meta-openembedded/meta-oe/recipes-core/libsigc++-2.0/libsigc++-2.0_2.10.0.bb
index 546305f27..53bd5de10 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-core/libsigc++-2.0/libsigc++-2.0_2.2.11.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-core/libsigc++-2.0/libsigc++-2.0_2.10.0.bb
@@ -5,9 +5,9 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=d8045f3b8f929c1cb29a1e3fd737b499"
DEPENDS = "mm-common"
-SRC_URI = "http://ftp.gnome.org/pub/GNOME/sources/libsigc++/2.2/libsigc++-${PV}.tar.xz"
-SRC_URI[md5sum] = "815d0c6d61601f51bbcaeef6826606b0"
-SRC_URI[sha256sum] = "9834045f74f56752c2c6b3cdc195c30ab8314ad22dc8e626d6f67f940f1e4957"
+SRC_URI = "http://ftp.gnome.org/pub/GNOME/sources/libsigc++/2.10/libsigc++-${PV}.tar.xz"
+SRC_URI[md5sum] = "70bcbde2c900e4925d6ef4bf50954195"
+SRC_URI[sha256sum] = "f843d6346260bfcb4426259e314512b99e296e8ca241d771d21ac64f28298d81"
S = "${WORKDIR}/libsigc++-${PV}"
@@ -19,3 +19,4 @@ FILES_${PN}-dev += "${libdir}/sigc++-*/"
FILES_${PN}-doc += "${datadir}/devhelp"
BBCLASSEXTEND = "native"
+SECURITY_CFLAGS = "${SECURITY_NO_PIE_CFLAGS}"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-core/libxml/libxml++/libxml++_ptest.patch b/import-layers/meta-openembedded/meta-oe/recipes-core/libxml/libxml++/libxml++_ptest.patch
index 82960f112..0d1a5186a 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-core/libxml/libxml++/libxml++_ptest.patch
+++ b/import-layers/meta-openembedded/meta-oe/recipes-core/libxml/libxml++/libxml++_ptest.patch
@@ -1,21 +1,21 @@
-diff --git a/Makefile.am b/Makefile.am
-index d4aadb1..0e36756 100644
---- a/Makefile.am
-+++ b/Makefile.am
-@@ -253,5 +253,8 @@ post-html: docs/index.html
- rsync $(rsync_args) -r docs/index.html $$USER,libxmlplusplus@web.sourceforge.net:$(web_path_project)
- rsync $(rsync_args) -r examples $$USER,libxmlplusplus@web.sourceforge.net:$(web_path_project)
+Index: libxml++-2.40.1/Makefile.am
+===================================================================
+--- libxml++-2.40.1.orig/Makefile.am
++++ libxml++-2.40.1/Makefile.am
+@@ -24,5 +24,8 @@ dist_noinst_SCRIPTS = autogen.sh
+
+ DISTCLEANFILES = MSVC_Net2010/libxml++/libxml++config.h
+install-ptest:
+ make -C examples install-ptest
+
# Optional: auto-generate the ChangeLog file from the git log on make dist
- include $(top_srcdir)/macros/dist-changelog.am
-diff --git a/examples/Makefile.am b/examples/Makefile.am
-index d9541ca..c27e088 100644
---- a/examples/Makefile.am
-+++ b/examples/Makefile.am
-@@ -19,6 +19,8 @@ AM_CPPFLAGS = -I$(top_builddir) -I$(top_srcdir) -I. $(LIBXMLXX_CFLAGS)
+ include $(top_srcdir)/build/dist-changelog.am
+Index: libxml++-2.40.1/examples/Makefile.am
+===================================================================
+--- libxml++-2.40.1.orig/examples/Makefile.am
++++ libxml++-2.40.1/examples/Makefile.am
+@@ -19,6 +19,8 @@ AM_CPPFLAGS = -I$(top_builddir) -I$(top_
AM_CXXFLAGS = $(LIBXMLXX_WXXFLAGS)
LDADD = $(top_builddir)/libxml++/libxml++-$(LIBXMLXX_API_VERSION).la $(LIBXMLXX_LIBS)
@@ -24,7 +24,7 @@ index d9541ca..c27e088 100644
check_PROGRAMS = \
dom_build/dom_build \
dom_parse_entities/dom_parse_entities \
-@@ -36,6 +38,23 @@ check_PROGRAMS = \
+@@ -37,6 +39,23 @@ check_PROGRAMS = \
schemavalidation/schemavalidation \
textreader/textreader
@@ -48,7 +48,7 @@ index d9541ca..c27e088 100644
# Shell scripts that call the example programs.
check_SCRIPTS = \
dom_build/make_check.sh \
-@@ -147,10 +166,10 @@ dist_noinst_DATA = \
+@@ -154,10 +173,10 @@ dist_noinst_DATA = \
# file are located in different directories.
dom_read_write/make_check.sh: Makefile
echo '# Generated and used by "make check"' >$@
@@ -61,7 +61,7 @@ index d9541ca..c27e088 100644
standard_scripts = $(filter-out dom_read_write/make_check.sh,$(check_SCRIPTS))
# All other script files are generated like so:
-@@ -162,3 +181,18 @@ $(standard_scripts): Makefile
+@@ -169,3 +188,18 @@ $(standard_scripts): Makefile
CLEANFILES = \
dom_read_write/example_output.xml \
$(check_SCRIPTS)
@@ -77,6 +77,6 @@ index d9541ca..c27e088 100644
+ cd $(srcdir) && cp --parents $(dist_noinst_DATA) $(DESTDIR)/examples
+ cp Makefile $(DESTDIR)/examples
+ $(MKDIR_P) $(DESTDIR)/macros
-+ cp $(srcdir)/../macros/test-driver $(DESTDIR)/macros
++ cp $(top_srcdir)/build/test-driver $(DESTDIR)/macros
+ sed -i -e 's|^Makefile:|_Makefile:|' $(DESTDIR)/examples/Makefile
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-core/libxml/libxml++_2.38.1.bb b/import-layers/meta-openembedded/meta-oe/recipes-core/libxml/libxml++_2.40.1.bb
index 70965f313..c001c184c 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-core/libxml/libxml++_2.38.1.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-core/libxml/libxml++_2.40.1.bb
@@ -6,13 +6,13 @@ SECTION = "libs"
LICENSE = "LGPL-2.1+"
LIC_FILES_CHKSUM = "file://COPYING;md5=7fbc338309ac38fefcd64b04bb903e34 "
-SHRT_VER = "${@d.getVar('PV',True).split('.')[0]}.${@d.getVar('PV',True).split('.')[1]}"
+SHRT_VER = "${@d.getVar('PV').split('.')[0]}.${@d.getVar('PV').split('.')[1]}"
SRC_URI = "${GNOME_MIRROR}/${BPN}/${SHRT_VER}/${BP}.tar.xz \
file://libxml++_ptest.patch \
file://run-ptest \
"
-SRC_URI[md5sum] = "6b16aac575725a9bc0e9d96489e9251f"
-SRC_URI[sha256sum] = "882529189b03db6c69925b3f579ab1941feb4f02b5fe2612504ee7e498a4a05f"
+SRC_URI[md5sum] = "377a87bea899f2b4ff62df2418c3d8a6"
+SRC_URI[sha256sum] = "4ad4abdd3258874f61c2e2a41d08e9930677976d303653cd1670d3e9f35463e9"
DEPENDS = "libxml2 glibmm"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-core/llvm/llvm.inc b/import-layers/meta-openembedded/meta-oe/recipes-core/llvm/llvm.inc
index fa971f38c..f27261fa9 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-core/llvm/llvm.inc
+++ b/import-layers/meta-openembedded/meta-oe/recipes-core/llvm/llvm.inc
@@ -153,7 +153,7 @@ python llvm_populate_packages() {
split_packages = do_split_packages(d, libdir, '^lib(.*)\.so$', 'libllvm${LLVM_RELEASE}-%s', 'Split package for %s', allow_dirs=True, allow_links=True, recursive=True)
split_staticdev_packages = do_split_packages(d, libllvm_libdir, '^lib(.*)\.a$', 'libllvm${LLVM_RELEASE}-%s-staticdev', 'Split staticdev package for %s', allow_dirs=True)
if split_packages:
- pn = d.getVar('PN', True)
+ pn = d.getVar('PN')
d.appendVar('RDEPENDS_' + pn, ' '+' '.join(split_packages))
d.appendVar('RDEPENDS_' + pn + '-dbg', ' '+' '.join(split_dbg_packages))
d.appendVar('RDEPENDS_' + pn + '-staticdev', ' '+' '.join(split_staticdev_packages))
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-core/meta/distro-feed-configs.bb b/import-layers/meta-openembedded/meta-oe/recipes-core/meta/distro-feed-configs.bb
index ea5ca3848..2a8de54d2 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-core/meta/distro-feed-configs.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-core/meta/distro-feed-configs.bb
@@ -22,8 +22,8 @@ PACKAGE_ARCH = "${MACHINE_ARCH}"
#def distro_feed_configs(d):
# import bb
-# parchs = d.getVar( "PACKAGE_EXTRA_ARCHS", 1 ).split()
-# march = d.getVar( "MACHINE_ARCH", 1 ).split()
+# parchs = d.getVar("PACKAGE_EXTRA_ARCHS").split()
+# march = d.getVar("MACHINE_ARCH").split()
# archs = [ "all" ] + parchs + march
# confs = [ ( "${sysconfdir}/opkg/%s-feed.conf" % feed ) for feed in archs ]
# return " ".join( confs )
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-core/mm-common/mm-common_0.9.8.bb b/import-layers/meta-openembedded/meta-oe/recipes-core/mm-common/mm-common_0.9.10.bb
index 943343b60..899eb8a9b 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-core/mm-common/mm-common_0.9.8.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-core/mm-common/mm-common_0.9.10.bb
@@ -2,8 +2,8 @@ inherit gnomebase
GNOME_COMPRESS_TYPE="xz"
-SRC_URI[archive.md5sum] = "00fd5c6850cd5fecc2e02b04d0dd1637"
-SRC_URI[archive.sha256sum] = "c9ab5fd3872fbe245fbc35347acf4a95063111f81d54c43df3af662dad0a03d5"
+SRC_URI[archive.md5sum] = "49dc47af8c89ce5b3c768306b9a0f922"
+SRC_URI[archive.sha256sum] = "16c0e2bc196b67fbc145edaecb5dbe5818386504fe5703de27002d77140fa217"
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-core/packagegroups/packagegroup-cli-tools.bb b/import-layers/meta-openembedded/meta-oe/recipes-core/packagegroups/packagegroup-cli-tools.bb
index 2a4b067ba..697f9bfa5 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-core/packagegroups/packagegroup-cli-tools.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-core/packagegroups/packagegroup-cli-tools.bb
@@ -43,3 +43,7 @@ RDEPENDS_${PN}-debug = "\
RRECOMMENDS_${PN}-debug = "\
ltrace \
"
+
+PNBLACKLIST[packagegroup-cli-tools] ?= "Runtime depends on blacklisted dbus-daemon-proxy - the recipe will be removed on 2017-09-01 unless the issue is fixed"
+
+PNBLACKLIST[packagegroup-cli-tools] ?= "Runtime depends on blacklisted packagegroup-cli-tools - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-core/plymouth/plymouth_0.9.2.bb b/import-layers/meta-openembedded/meta-oe/recipes-core/plymouth/plymouth_0.9.2.bb
index 1c1a02d0b..6163cff7c 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-core/plymouth/plymouth_0.9.2.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-core/plymouth/plymouth_0.9.2.bb
@@ -14,7 +14,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
DEPENDS = "libcap libpng cairo dbus udev"
PROVIDES = "virtual/psplash"
-RPROVIDES_${PN} = "virtual/psplash virtual/psplash-support"
+RPROVIDES_${PN} = "virtual-psplash virtual-psplash-support"
SRC_URI = "http://www.freedesktop.org/software/plymouth/releases/${BPN}-${PV}.tar.bz2"
SRC_URI[md5sum] = "ff420994deb7ea203df678df92e7ab7d"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-core/proxy-libintl/proxy-libintl-20100902/create-as-shared-lib.patch b/import-layers/meta-openembedded/meta-oe/recipes-core/proxy-libintl/proxy-libintl-20100902/create-as-shared-lib.patch
deleted file mode 100644
index 306e3b821..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-core/proxy-libintl/proxy-libintl-20100902/create-as-shared-lib.patch
+++ /dev/null
@@ -1,31 +0,0 @@
---- a/src/proxy-libintl/Makefile.org 2009-09-12 23:19:04.989421607 -0700
-+++ a/src/proxy-libintl/Makefile 2009-09-12 23:21:14.100640001 -0700
-@@ -4,20 +4,20 @@ ZIPFILE = proxy-libintl-$(TIMESTAMP).zip
- CC = gcc
- CFLAGS = -Wall -I ../../include
-
--all : ../../lib/libintl.a ../../lib/intl.lib
-+all : ../../lib/libintl.so ../../lib/intl.lib
-
--../../lib/libintl.a : libintl.o
-- ar rc $@ libintl.o
-+../../lib/libintl.so : libintl.o
-+ $(CC) -shared -o $@ libintl.o
-
--../../lib/intl.lib : ../../lib/libintl.a
-- cp ../../lib/libintl.a $@
-- strip --strip-unneeded $@
-+../../lib/intl.lib : ../../lib/libintl.so
-+ cp ../../lib/libintl.so $@
-+ $(STRIP) --strip-unneeded $@
-
- libintl.o : libintl.c
- $(CC) $(CFLAGS) -c libintl.c
-
- clean :
-- rm -f *.o ../../lib/libintl.a ../../$(ZIPFILE)
-+ rm -f *.o ../../lib/libintl.so ../../$(ZIPFILE)
-
- dist : clean all
-- cd ../..; zip $(ZIPFILE) include/libintl.h lib/{libintl.a,intl.lib} src/proxy-libintl/{README.txt,COPYING.LIB.txt,Makefile,libintl.[ch]}; manifestify $(ZIPFILE)
-+ cd ../..; zip $(ZIPFILE) include/libintl.h lib/{libintl.so,intl.lib} src/proxy-libintl/{README.txt,COPYING.LIB.txt,Makefile,libintl.[ch]}; manifestify $(ZIPFILE)
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-core/proxy-libintl/proxy-libintl-20100902/stub-only.patch b/import-layers/meta-openembedded/meta-oe/recipes-core/proxy-libintl/proxy-libintl-20100902/stub-only.patch
deleted file mode 100644
index 7186b13c0..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-core/proxy-libintl/proxy-libintl-20100902/stub-only.patch
+++ /dev/null
@@ -1,72 +0,0 @@
-Index: proxy-libintl/src/proxy-libintl/libintl.c
-===================================================================
---- proxy-libintl.orig/src/proxy-libintl/libintl.c
-+++ proxy-libintl/src/proxy-libintl/libintl.c
-@@ -18,9 +18,12 @@
- */
-
- #ifdef _WIN32
--#include <windows.h>
-+# include <windows.h>
- #else
--#include <dlfcn.h>
-+# include <stddef.h>
-+# if !STUB_ONLY
-+# include <dlfcn.h>
-+# endif
- typedef void* HMODULE;
- #endif
-
-@@ -65,11 +68,13 @@ static char * (*p_bind_textdomain_codese
- static int
- use_intl_dll (HMODULE dll)
- {
--#ifdef _WIN32
--#define LOOKUP(fn) p_##fn = (void *) GetProcAddress (dll, #fn); if (p_##fn == NULL) return 0
--#else
--#define LOOKUP(fn) p_##fn = (void *) dlsym (dll, #fn); if (p_##fn == NULL) return 0
--#endif
-+#if !STUB_ONLY
-+# ifdef _WIN32
-+# define LOOKUP(fn) p_##fn = (void *) GetProcAddress (dll, #fn); if (p_##fn == NULL) return 0
-+# else
-+# define LOOKUP(fn) p_##fn = (void *) dlsym (dll, #fn); if (p_##fn == NULL) return 0
-+# endif /* _WIN32 */
-+
-
- LOOKUP (gettext);
- LOOKUP (dgettext);
-@@ -82,7 +87,7 @@ use_intl_dll (HMODULE dll)
- LOOKUP (bind_textdomain_codeset);
-
- #undef LOOKUP
--
-+#endif /* !STUB_ONLY */
- return 1;
- }
-
-@@ -171,13 +176,17 @@ setup (void)
-
- if (!beenhere)
- {
--#ifdef _WIN32
-- HMODULE intl_dll = LoadLibrary ("intl.dll");
--#elif defined(__APPLE__) && defined(__MACH__)
-- HMODULE intl_dll = dlopen ("libintl.dylib", RTLD_LAZY);
--#else
-- HMODULE intl_dll = dlopen ("libintl.so", RTLD_LAZY);
--#endif
-+#if !STUB_ONLY
-+# ifdef _WIN32
-+ HMODULE intl_dll = LoadLibrary ("intl.dll");
-+# elif defined(__APPLE__) && defined(__MACH__)
-+ HMODULE intl_dll = dlopen ("libintl.dylib", RTLD_LAZY);
-+# else
-+ HMODULE intl_dll = dlopen ("libintl.so", RTLD_LAZY);
-+# endif
-+#else /* !STUB_ONLY */
-+ HMODULE intl_dll = NULL;
-+#endif /* STUB_ONLY */
-
- if (intl_dll != NULL &&
- use_intl_dll (intl_dll))
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-core/proxy-libintl/proxy-libintl_20100902.bb b/import-layers/meta-openembedded/meta-oe/recipes-core/proxy-libintl/proxy-libintl_20100902.bb
index a46a91c8b..f11ae7e4d 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-core/proxy-libintl/proxy-libintl_20100902.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-core/proxy-libintl/proxy-libintl_20100902.bb
@@ -18,7 +18,7 @@ PACKAGES = "${PN} ${PN}-dev"
FILES_${PN}-dev = "${includedir}/libintl.h ${libdir}/libintl.a"
INSANE_SKIP_${PN}-dev = "staticdev"
ALLOW_EMPTY_${PN} = "1"
-CFLAGS_append = " -fPIC -Wall -I ../../include ${@['-DSTUB_ONLY', ''][d.getVar('USE_NLS', 1) != 'no']}"
+CFLAGS_append = " -fPIC -Wall -I ../../include ${@['-DSTUB_ONLY', ''][d.getVar('USE_NLS') != 'no']}"
TARGET_CC_ARCH += "${LDFLAGS}"
do_compile() {
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-core/toybox/toybox/0001-Fix-TOYBOX_VERSION.patch b/import-layers/meta-openembedded/meta-oe/recipes-core/toybox/toybox/0001-Fix-TOYBOX_VERSION.patch
deleted file mode 100644
index 8af430511..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-core/toybox/toybox/0001-Fix-TOYBOX_VERSION.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From 209fad8ebd17bf46d0431dafbb547f429a3cffdf Mon Sep 17 00:00:00 2001
-From: Paul Barker <paul@paulbarker.me.uk>
-Date: Sat, 4 Jun 2016 15:05:49 +0100
-Subject: [PATCH 1/2] Fix TOYBOX_VERSION
-
-The latest tagged version is 0.7.1.
-
-Signed-off-by: Paul Barker <paul@paulbarker.me.uk>
-Upstream-status: Submitted
----
- main.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/main.c b/main.c
-index eeae2f3..bedb333 100644
---- a/main.c
-+++ b/main.c
-@@ -6,7 +6,7 @@
- #include "toys.h"
-
- #ifndef TOYBOX_VERSION
--#define TOYBOX_VERSION "0.7.0"
-+#define TOYBOX_VERSION "0.7.1"
- #endif
-
- // Populate toy_list[].
---
-2.1.4
-
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-core/toybox/toybox/0002-Fix-trimmed-printf-in-grep.patch b/import-layers/meta-openembedded/meta-oe/recipes-core/toybox/toybox/0002-Fix-trimmed-printf-in-grep.patch
deleted file mode 100644
index 37808d03b..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-core/toybox/toybox/0002-Fix-trimmed-printf-in-grep.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From 9c51a0d7690fb3b08871dae2486af4032d8442fb Mon Sep 17 00:00:00 2001
-From: Paul Barker <paul@paulbarker.me.uk>
-Date: Sat, 4 Jun 2016 15:42:48 +0100
-Subject: [PATCH 2/2] Fix trimmed printf in grep
-
-Using a default trim value of INT_MAX/2 when printing a line causes nothing to
-be printed on a system built using OpenEmbedded for the qemux86 target. This may
-also affect other systems.
-
-Signed-off-by: Paul Barker <paul@paulbarker.me.uk>
-Upstream-status: Submitted
----
- toys/posix/grep.c | 5 ++++-
- 1 file changed, 4 insertions(+), 1 deletion(-)
-
-diff --git a/toys/posix/grep.c b/toys/posix/grep.c
-index 2ca02d2..f38c538 100644
---- a/toys/posix/grep.c
-+++ b/toys/posix/grep.c
-@@ -74,7 +74,10 @@ static void outline(char *line, char dash, char *name, long lcount, long bcount,
- if (!line || (lcount && (toys.optflags&FLAG_n)))
- printf("%ld%c", lcount, line ? dash : TT.outdelim);
- if (bcount && (toys.optflags&FLAG_b)) printf("%ld%c", bcount-1, dash);
-- if (line) xprintf("%.*s%c", trim ? trim : INT_MAX/2, line, TT.outdelim);
-+ if (line) {
-+ if (trim) xprintf("%.*s%c", trim, line, TT.outdelim);
-+ else xprintf("%s%c", line, TT.outdelim);
-+ }
- }
-
- // Show matches in one file
---
-2.1.4
-
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-core/toybox/toybox_0.7.1.bb b/import-layers/meta-openembedded/meta-oe/recipes-core/toybox/toybox_0.7.3.bb
index defca7016..0cd44ff64 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-core/toybox/toybox_0.7.1.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-core/toybox/toybox_0.7.3.bb
@@ -4,12 +4,10 @@ DEPENDS = "attr"
SRC_URI = " \
http://www.landley.net/toybox/downloads/${BPN}-${PV}.tar.gz \
- file://0001-Fix-TOYBOX_VERSION.patch \
- file://0002-Fix-trimmed-printf-in-grep.patch \
"
-SRC_URI[md5sum] = "e959e5ff8c6806781eb06e56f302a393"
-SRC_URI[sha256sum] = "5bb3069f58faf12940d5cfde3209ac7f63210bebdd9023979b0c20cede126ea7"
+SRC_URI[md5sum] = "6fa2a001402cb067ba541e0d8948da50"
+SRC_URI[sha256sum] = "e6469b508224e0d2e4564dda05c4bb47aef5c28bf29d6c983bcdc6e3a0cd29d6"
LICENSE = "BSD-0-Clause"
LIC_FILES_CHKSUM = "file://LICENSE;md5=f0b8b3dd6431bcaa245da0a08bd0d511"
@@ -18,6 +16,8 @@ SECTION = "base"
TOYBOX_BIN = "generated/unstripped/toybox"
+EXTRA_OEMAKE = 'HOSTCC="${BUILD_CC} ${BUILD_CFLAGS} ${BUILD_LDFLAGS}"'
+
do_configure() {
oe_runmake defconfig
@@ -59,8 +59,8 @@ python do_package_prepend () {
# Read links from /etc/toybox.links and create appropriate
# update-alternatives variables
- dvar = d.getVar('D', True)
- pn = d.getVar('PN', True)
+ dvar = d.getVar('D')
+ pn = d.getVar('PN')
target = "/bin/toybox"
f = open('%s/etc/toybox.links' % (dvar), 'r')
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/android-tools/android-tools/fix-big-endian-build.patch b/import-layers/meta-openembedded/meta-oe/recipes-devtools/android-tools/android-tools/fix-big-endian-build.patch
new file mode 100644
index 000000000..8deaf3a3d
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/android-tools/android-tools/fix-big-endian-build.patch
@@ -0,0 +1,39 @@
+Fix build on big endian systems
+
+The usb_linux_client.c file defines cpu_to_le16/32 by using the C
+library htole16/32 function calls. However, cpu_to_le16/32 are used
+when initializing structures, i.e in a context where a function call
+is not allowed.
+
+It works fine on little endian systems because htole16/32 are defined
+by the C library as no-ops. But on big-endian systems, they are
+actually doing something, which might involve calling a function,
+causing build failures.
+
+To solve this, we simply open-code cpu_to_le16/32 in a way that allows
+them to be used when initializing structures.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/system/core/adb/usb_linux_client.c
+===================================================================
+--- a/system/core/adb/usb_linux_client.c
++++ b/system/core/adb/usb_linux_client.c
+@@ -34,8 +34,15 @@
+ #define MAX_PACKET_SIZE_FS 64
+ #define MAX_PACKET_SIZE_HS 512
+
+-#define cpu_to_le16(x) htole16(x)
+-#define cpu_to_le32(x) htole32(x)
++#if __BYTE_ORDER == __LITTLE_ENDIAN
++# define cpu_to_le16(x) (x)
++# define cpu_to_le32(x) (x)
++#else
++# define cpu_to_le16(x) ((((x) >> 8) & 0xffu) | (((x) & 0xffu) << 8))
++# define cpu_to_le32(x) \
++ ((((x) & 0xff000000u) >> 24) | (((x) & 0x00ff0000u) >> 8) | \
++ (((x) & 0x0000ff00u) << 8) | (((x) & 0x000000ffu) << 24))
++#endif
+
+ struct usb_handle
+ {
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/android-tools/android-tools_5.1.1.r37.bb b/import-layers/meta-openembedded/meta-oe/recipes-devtools/android-tools/android-tools_5.1.1.r37.bb
index a9e7d5d82..34fddcbda 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-devtools/android-tools/android-tools_5.1.1.r37.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/android-tools/android-tools_5.1.1.r37.bb
@@ -7,7 +7,7 @@ LIC_FILES_CHKSUM = " \
file://${COMMON_LICENSE_DIR}/BSD-2-Clause;md5=8bef8e6712b1be5aa76af1ebde9d6378 \
file://${COMMON_LICENSE_DIR}/BSD-3-Clause;md5=550794465ba0ec5312d6919e203a55f9 \
"
-DEPENDS = "libbsd libpcre openssl zlib"
+DEPENDS = "libbsd libpcre openssl zlib libcap"
ANDROID_TAG = "android-5.1.1_r37"
ANDROID_MIRROR = "android.googlesource.com"
@@ -23,14 +23,15 @@ SRC_URI = " \
git://${LIBHARDWARE_REPO};name=libhardware;protocol=https;nobranch=1;destsuffix=git/hardware/libhardware;tag=${ANDROID_TAG} \
git://${LIBSELINUX_REPO};name=libselinux;protocol=https;nobranch=1;destsuffix=git/external/libselinux;tag=${ANDROID_TAG} \
git://${BUILD_REPO};name=build;protocol=https;nobranch=1;destsuffix=git/build;tag=${ANDROID_TAG} \
- file://remove-selinux-android.patch;apply=yes \
- file://use-capability.patch;apply=yes \
- file://use-local-socket.patch;apply=yes \
- file://preserve-ownership.patch;apply=yes \
- file://mkbootimg-Add-dt-parameter-to-specify-DT-image.patch;apply=yes \
- file://remove-bionic-android.patch;apply=yes \
- file://define-shell-command.patch;apply=yes \
- file://implicit-declaration-function-strlcat-strlcopy.patch;apply=yes \
+ file://remove-selinux-android.patch \
+ file://use-capability.patch \
+ file://use-local-socket.patch \
+ file://preserve-ownership.patch \
+ file://mkbootimg-Add-dt-parameter-to-specify-DT-image.patch \
+ file://remove-bionic-android.patch \
+ file://define-shell-command.patch \
+ file://implicit-declaration-function-strlcat-strlcopy.patch \
+ file://fix-big-endian-build.patch \
file://android-tools-adbd.service \
file://.gitignore;subdir=git \
file://adb.mk;subdir=${BPN} \
@@ -43,6 +44,10 @@ SRC_URI = " \
S = "${WORKDIR}/git"
B = "${WORKDIR}/${BPN}"
+# http://errors.yoctoproject.org/Errors/Details/133881/
+ARM_INSTRUCTION_SET_armv4 = "arm"
+ARM_INSTRUCTION_SET_armv5 = "arm"
+
inherit systemd
SYSTEMD_SERVICE_${PN} = "android-tools-adbd.service"
@@ -160,4 +165,4 @@ FILES_${PN}-fstools = "\
${bindir}/mkuserimg \
"
-BBCLASSEXTEND += "native"
+BBCLASSEXTEND = "native"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/autoconf-archive/autoconf-archive.inc b/import-layers/meta-openembedded/meta-oe/recipes-devtools/autoconf-archive/autoconf-archive.inc
index 93993631e..9684d1f99 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-devtools/autoconf-archive/autoconf-archive.inc
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/autoconf-archive/autoconf-archive.inc
@@ -6,10 +6,10 @@ DEPENDS += "m4-native"
DEPENDS_class-native = "m4-native gnu-config-native"
DEPENDS_class-nativesdk = "m4-nativesdk gnu-config-nativesdk"
-RDEPENDS_${PN} = "m4 gnu-config"
+RDEPENDS_${PN} = "m4 gnu-config gnome-common"
RDEPENDS_${PN}_class-native = "m4-native gnu-config-native"
RDEPENDS_${PN}_class-nativesdk = "m4-nativesdk gnu-config-nativesdk"
-SRC_URI = "${GNU_MIRROR}/${BPN}/${BPN}-${PV}.tar.bz2"
+SRC_URI = "${GNU_MIRROR}/${BPN}/${BPN}-${PV}.tar.xz"
inherit autotools
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/autoconf-archive/autoconf-archive/delete-some-m4-files.patch b/import-layers/meta-openembedded/meta-oe/recipes-devtools/autoconf-archive/autoconf-archive/delete-some-m4-files.patch
new file mode 100644
index 000000000..2aa788bf9
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/autoconf-archive/autoconf-archive/delete-some-m4-files.patch
@@ -0,0 +1,23 @@
+Delete two m4files ax_code_coverage.m4 and ax_check_enable_debug.m4
+to avoid installing conflicts. These two files can be installed by
+gnome-common from oe-core, even if the files in gnmoe-common is
+copied from autoconf-archive(the reason is that the old version
+autoconf-archive don't provide the two files).
+After upgrading to the new version, we need to drop them in meta-oe
+and then set rdepends to gnome-common(oe-core)
+
+Signed-off-by: Zhixiong Chi <zhixiong.chi@windriver.com>
+
+Index: a/configure.ac
+===================================================================
+--- a/configure.ac 2016-09-16 06:00:00.000000000 +0800
++++ b/configure.ac 2017-04-18 17:43:05.946290554 +0800
+@@ -19,7 +19,7 @@
+
+ AC_PROG_SED
+
+-M4FILES="m4_esyscmd([echo -n m4/*.m4])"
++M4FILES="m4_esyscmd([echo -n m4/*.m4 | sed -e 's:m4/ax_code_coverage.m4 ::g'|sed -e 's:m4/ax_check_enable_debug.m4 ::g'])"
+ AC_SUBST([M4FILES])
+
+ TEXIFILES="m4_esyscmd([cd m4 && echo -n *.m4 | sed -e 's/\.m4/.texi/g'])"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/autoconf-archive/autoconf-archive_2012.04.07.bb b/import-layers/meta-openembedded/meta-oe/recipes-devtools/autoconf-archive/autoconf-archive_2016.09.16.bb
index 5baaecc34..561b57b4f 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-devtools/autoconf-archive/autoconf-archive_2012.04.07.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/autoconf-archive/autoconf-archive_2016.09.16.bb
@@ -6,8 +6,12 @@ PARALLEL_MAKE = ""
LICENSE = "GPLv2 & GPLv3"
LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
-SRC_URI[md5sum] = "e842c5b9fae021007bd70550362e5e80"
-SRC_URI[sha256sum] = "040b443bf68efd52fbfcb294b556bfbbbfe432db78445ca25e0cfe2e88f96a14"
+SRC_URI[md5sum] = "bf19d4cddce260b3c3e1d51d42509071"
+SRC_URI[sha256sum] = "e8f2efd235f842bad2f6938bf4a72240a5e5fcd248e8444335e63beb60fabd82"
+
+SRC_URI += "\
+ file://delete-some-m4-files.patch \
+"
EXTRA_OECONF += "ac_cv_path_M4=m4"
BBCLASSEXTEND = "native nativesdk"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad_svn.bb b/import-layers/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad_git.bb
index b573ea502..36c2b6349 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad_svn.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/breakpad/breakpad_git.bb
@@ -13,9 +13,27 @@ inherit autotools
BBCLASSEXTEND = "native"
-SRCREV = "r1435"
-SRC_URI = "svn://google-breakpad.googlecode.com/svn;module=trunk;protocol=http"
-S = "${WORKDIR}/trunk"
+PE = "1"
+
+PV = "1.0+git${SRCPV}"
+
+SRCREV_FORMAT = "breakpad_glog_gmock_gtest_protobuf_lss"
+
+SRCREV_breakpad = "2f6cb866d615d6240a18c7535c994c6bb93b1ba5"
+SRCREV_glog = "d8cb47f77d1c31779f3ff890e1a5748483778d6a"
+SRCREV_gmock = "f7d03d2734759ee12b57d2dbcb695607d89e8e05"
+SRCREV_gtest = "ec44c6c1675c25b9827aacd08c02433cccde7780"
+SRCREV_protobuf = "cb6dd4ef5f82e41e06179dcd57d3b1d9246ad6ac"
+SRCREV_lss = "1549d20f6d3e7d66bb4e687c0ab9da42c2bff2ac"
+
+SRC_URI = "git://github.com/google/breakpad;name=breakpad \
+ git://github.com/google/glog.git;destsuffix=git/src/third_party/glog;name=glog \
+ git://github.com/google/googlemock.git;destsuffix=git/src/testing;name=gmock \
+ git://github.com/google/googletest.git;destsuffix=git/src/testing/gtest;name=gtest \
+ git://github.com/google/protobuf.git;destsuffix=git/src/third_party/protobuf/protobuf;name=protobuf \
+ git://chromium.googlesource.com/linux-syscall-support;protocol=https;destsuffix=git/src/third_party/lss;name=lss \
+"
+S = "${WORKDIR}/git"
COMPATIBLE_MACHINE_powerpc = "(!.*ppc).*"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/cloud9/cloud9_0.6.bb b/import-layers/meta-openembedded/meta-oe/recipes-devtools/cloud9/cloud9_0.6.bb
index 6940d2da4..c6d78905d 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-devtools/cloud9/cloud9_0.6.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/cloud9/cloud9_0.6.bb
@@ -8,7 +8,7 @@ PR = "r5"
# Nodejs-native for node-waf, nodejs4-native for the headers
DEPENDS = "libxml2 nodejs-native nodejs4-native"
-PNBLACKLIST[cloud9] ?= "Not comatible with current nodejs 0.12, but upstream is working on it for v3"
+PNBLACKLIST[cloud9] ?= "Not comatible with current nodejs 0.12, but upstream is working on it for v3 - the recipe will be removed on 2017-09-01 unless the issue is fixed"
inherit systemd
SRC_URI = "git://github.com/ajaxorg/cloud9.git;name=cloud9ide \
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/cppunit/cppunit_1.13.1.bb b/import-layers/meta-openembedded/meta-oe/recipes-devtools/cppunit/cppunit_1.13.2.bb
index 942029438..65b08b068 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-devtools/cppunit/cppunit_1.13.1.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/cppunit/cppunit_1.13.2.bb
@@ -8,7 +8,7 @@ SRC_URI = " \
http://dev-www.libreoffice.org/src/cppunit-${PV}.tar.gz \
file://0001-doc-Makefile.am-do-not-preserve-file-flags-when-copy.patch \
"
-SRC_URI[md5sum] = "fa9aa839145cdf860bf596532bb8af97"
-SRC_URI[sha256sum] = "d5b9f3ffc9f1634d75b20b54f48c02e0817bca6afa1d5160b244889d6bff8e0f"
+SRC_URI[md5sum] = "d1c6bdd5a76c66d2c38331e2d287bc01"
+SRC_URI[sha256sum] = "3f47d246e3346f2ba4d7c9e882db3ad9ebd3fcbd2e8b732f946e0e3eeb9f429f"
inherit autotools
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/cxxtest/cxxtest_4.3.bb b/import-layers/meta-openembedded/meta-oe/recipes-devtools/cxxtest/cxxtest_4.3.bb
new file mode 100644
index 000000000..291501173
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/cxxtest/cxxtest_4.3.bb
@@ -0,0 +1,21 @@
+DESCRIPTION = "CxxTest is a unit testing framework for C++ that is similar in spirit to JUnit, CppUnit, and xUnit."
+HOMEPAGE = "http://cxxtest.com/"
+LICENSE = "LGPL-2.0"
+SECTION = "devel"
+
+SRC_URI = "http://downloads.sourceforge.net/project/cxxtest/cxxtest/${PV}/cxxtest-${PV}.tar.gz"
+SRC_URI[md5sum] = "b3a24b3e1aad9acf6adac37f4c3f83ec"
+SRC_URI[sha256sum] = "356d0f4810e8eb5c344147a0cca50fc0d84122c286e7644b61cb365c2ee22083"
+LIC_FILES_CHKSUM = "file://${WORKDIR}/cxxtest-${PV}/COPYING;md5=e6a600fd5e1d9cbde2d983680233ad02"
+S = "${WORKDIR}/cxxtest-${PV}/python"
+
+inherit distutils
+
+do_install_append() {
+ install -d ${D}${includedir}
+ cp -a ../cxxtest ${D}${includedir}
+ sed '1c\
+#!/usr/bin/env python' -i ${D}${bindir}/cxxtestgen
+}
+
+BBCLASSEXTEND = "native nativesdk"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/dmalloc/dmalloc/0001-undefined-strdup-macro.patch b/import-layers/meta-openembedded/meta-oe/recipes-devtools/dmalloc/dmalloc/0001-undefined-strdup-macro.patch
new file mode 100644
index 000000000..ea940e993
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/dmalloc/dmalloc/0001-undefined-strdup-macro.patch
@@ -0,0 +1,29 @@
+From 9c2438e85e4d7deb9422be257a25e8ab16093821 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 2 Dec 2016 14:02:02 -0800
+Subject: [PATCH] undefined strdup macro
+
+build fails due to strdup define in string2.h
+system header.
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ dmalloc.h.3 | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/dmalloc.h.3 b/dmalloc.h.3
+index 8bda997..b70c07e 100644
+--- a/dmalloc.h.3
++++ b/dmalloc.h.3
+@@ -1,5 +1,8 @@
+ /* NOTE: start of $Id: dmalloc.h.4,v 1.15 2007/05/14 17:23:37 gray Exp $ */
+
++#undef strndup
++#undef strdup
++
+ /* dmalloc version defines */
+ #define DMALLOC_VERSION_MAJOR 5 /* X.0.0 */
+ #define DMALLOC_VERSION_MINOR 5 /* 0.X.0 */
+--
+2.10.2
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/dmalloc/dmalloc/02-Makefile.in.patch b/import-layers/meta-openembedded/meta-oe/recipes-devtools/dmalloc/dmalloc/02-Makefile.in.patch
new file mode 100644
index 000000000..967643bad
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/dmalloc/dmalloc/02-Makefile.in.patch
@@ -0,0 +1,312 @@
+Description: Changes for building shared libraries
+ This patch includes changes for building shared libraries with PIC object
+ files and the correct soname and libname.
+Author: Daniel Rus Morales <danirus@tol-project.org>
+
+Index: dmalloc-5.5.2/Makefile.in
+===================================================================
+--- dmalloc-5.5.2.orig/Makefile.in
++++ dmalloc-5.5.2/Makefile.in
+@@ -41,7 +41,7 @@ LIBRARY = lib$(MODULE).a
+
+ # thread version of the library
+ LIB_TH = lib$(MODULE)th.a
+-LIB_TH_SL = lib$(MODULE)th.@shlibext@
++LIB_TH_SL = lib$(MODULE)th.@shlibext@.5.5.2
+ @TH_ON@BUILD_ALL_1 = threads
+ @TH_ON@INSTALL_LIB_1 = installth
+ @SL_ON@BUILD_THREADS_1 = $(LIB_TH_SL)
+@@ -50,8 +50,8 @@ LIB_TH_SL = lib$(MODULE)th.@shlibext@
+ @TH_ON@@SL_ON@INSTALL_LIB_2 = installthsl
+
+ # C++ version of the library
+-LIB_CXX = lib$(MODULE)xx.a
+-LIB_CXX_SL = lib$(MODULE)xx.@shlibext@
++LIB_CXX = lib$(MODULE)cxx.a
++LIB_CXX_SL = lib$(MODULE)cxx.@shlibext@.5.5.2
+ @CXX_ON@BUILD_ALL_3 = $(LIB_CXX)
+ @CXX_ON@INSTALL_LIB_3 = installcxx
+ @SL_ON@BUILD_CXX_3 = $(LIB_CXX_SL)
+@@ -61,7 +61,7 @@ LIB_CXX_SL = lib$(MODULE)xx.@shlibext@
+
+ # threads + C++
+ LIB_TH_CXX = lib$(MODULE)thcxx.a
+-LIB_TH_CXX_SL = lib$(MODULE)thcxx.@shlibext@
++LIB_TH_CXX_SL = lib$(MODULE)thcxx.@shlibext@.5.5.2
+ @TH_ON@@CXX_ON@BUILD_ALL_5 = $(LIB_TH_CXX)
+ @TH_ON@@CXX_ON@INSTALL_LIB_5 = installthcxx
+ @TH_ON@BUILD_CXX_5 = $(LIB_TH_CXX)
+@@ -76,7 +76,7 @@ LIB_TH_CXX_SL = lib$(MODULE)thcxx.@shlib
+ @CXX_ON@@SL_ON@INSTALL_THREADS_6 = installthcxxsl
+
+ # shared versions of the libraries
+-LIB_SL = lib$(MODULE).@shlibext@
++LIB_SL = lib$(MODULE).@shlibext@.5.5.2
+ @SL_ON@BUILD_ALL_7 = $(LIB_SL)
+ @SL_ON@INSTALL_LIB_7 = installsl
+ @SL_ON@BUILD_TH_CXX_7 = $(LIB_TH_CXX_SL)
+@@ -145,9 +145,13 @@ SHELL = /bin/sh
+
+ HFLS = dmalloc.h
+ OBJS = arg_check.o compat.o dmalloc_rand.o dmalloc_tab.o env.o heap.o
++OBJS_SL = arg_check_sl.o compat_sl.o dmalloc_rand_sl.o dmalloc_tab_sl.o env_sl.o heap_sl.o
+ NORMAL_OBJS = chunk.o error.o malloc.o
++NORMAL_OBJS_SL = chunk_sl.o error_sl.o malloc_sl.o
+ THREAD_OBJS = chunk_th.o error_th.o malloc_th.o
++THREAD_OBJS_SL = chunk_th_sl.o error_th_sl.o malloc_th_sl.o
+ CXX_OBJS = dmallocc.o
++CXX_OBJS_SL = dmallocc_sl.o
+
+ CFLAGS = $(CCFLAGS)
+ TEST = $(MODULE)_t
+@@ -160,9 +164,9 @@ all : $(BUILD_ALL)
+
+ clean :
+ rm -f $(A_OUT) core *.o *.t
+- rm -f $(LIBRARY) $(LIB_TH) $(LIB_CXX) $(LIB_TH_CXX) $(TEST) $(TEST_FC)
+- rm -f $(LIB_TH_SL) $(LIB_CXX_SL) $(LIB_TH_CXX_SL) $(LIB_SL)
++ rm -f $(TEST) $(TEST_FC)
+ rm -f $(UTIL) dmalloc.h
++ rm -f lib$(MODULE)*.*
+
+ realclean : clean
+
+@@ -181,43 +185,43 @@ installincs : $(HFLS)
+ $(INSTALL_DATA) $(HFLS) $(includedir)
+
+ installthsl : $(LIB_TH_SL)
+- $(srcdir)/mkinstalldirs $(libdir)
+- $(INSTALL_PROGRAM) $(LIB_TH_SL) $(libdir)
++ $(srcdir)/mkinstalldirs $(shlibdir)
++ $(INSTALL) $(LIB_TH_SL) $(shlibdir)
+
+ installth : $(INSTALL_THREADS)
+ $(srcdir)/mkinstalldirs $(libdir)
+- $(INSTALL_PROGRAM) $(LIB_TH) $(libdir)
++ $(INSTALL) $(LIB_TH) $(libdir)
+ @CXX_OFF@ @echo "Enter 'make installthcxx' to install the threaded C++ library"
+ @SL_OFF@ @echo "Enter 'make installthsl' to install the threaded shared-library"
+
+ installthcxxsl : $(LIB_TH_CXX_SL)
+ $(srcdir)/mkinstalldirs $(shlibdir)
+- $(INSTALL_PROGRAM) $(LIB_TH_CXX_SL) $(shlibdir)
++ $(INSTALL) $(LIB_TH_CXX_SL) $(shlibdir)
+
+ installthcxx : $(INSTALL_TH_CXX)
+ $(srcdir)/mkinstalldirs $(libdir)
+- $(INSTALL_PROGRAM) $(LIB_TH_CXX) $(libdir)
++ $(INSTALL) $(LIB_TH_CXX) $(libdir)
+ @SL_OFF@ @echo "Enter 'make installthcxxsl' to install the threaded C++ shared-library"
+
+ installcxxsl : $(LIB_CXX_SL)
+- $(srcdir)/mkinstalldirs $(libdir)
+- $(INSTALL_PROGRAM) $(LIB_CXX_SL) $(libdir)
++ $(srcdir)/mkinstalldirs $(shlibdir)
++ $(INSTALL) $(LIB_CXX_SL) $(shlibdir)
+
+ installcxx : $(INSTALL_CXX)
+ $(srcdir)/mkinstalldirs $(libdir)
+- $(INSTALL_PROGRAM) $(LIB_CXX) $(libdir)
++ $(INSTALL) $(LIB_CXX) $(libdir)
+ @TH_OFF@ @echo "Enter 'make installthcxx' to install the threaded C++ library"
+ @SL_OFF@ @echo "Enter 'make installcxxsl' to install the C++ shared-library"
+
+ installsl : $(LIB_SL)
+ $(srcdir)/mkinstalldirs $(shlibdir)
+- $(INSTALL_PROGRAM) $(LIB_SL) $(shlibdir)
++ $(INSTALL) $(LIB_SL) $(shlibdir)
+ @CXX_OFF@ @echo "Enter 'make installcxxsl' to install the C++ shared-library"
+ @TH_OFF@ @echo "Enter 'make installthsl' to install thread shared-library"
+
+ installlib : $(INSTALL_LIB)
+ $(srcdir)/mkinstalldirs $(libdir)
+- $(INSTALL_PROGRAM) $(LIBRARY) $(libdir)
++ $(INSTALL) $(LIBRARY) $(libdir)
+ @RANLIB@ $(libdir)/$(LIBRARY)
+ @SL_OFF@ @echo "Enter 'make installsl' to install $(LIB_SL) in $(shlibdir)"
+ @CXX_OFF@ @echo "Enter 'make installcxx' to install the C++ library"
+@@ -255,10 +259,8 @@ shlib : $(BUILD_SL)
+ # NOTE: you may have to edit the configure.ac script to get this to
+ # work on your operating system. Please send feedback to the author
+ # via: http://256.com/gray/email.html
+-$(LIB_SL) : $(LIBRARY)
+- rm -f $@ $@.t
+- @shlinkargs@ $(LIBRARY) $(OBJS) $(NORMAL_OBJS)
+- mv $@.t $@
++$(LIB_SL) : $(OBJS_SL) $(NORMAL_OBJS_SL)
++ $(CC) -shared -Wl,-soname,libdmalloc.so.5 -o $@ $(OBJS_SL) $(NORMAL_OBJS_SL)
+
+ $(LIBRARY) : $(OBJS) $(NORMAL_OBJS)
+ ar cr $@ $?
+@@ -268,32 +270,26 @@ $(LIB_TH) : $(OBJS) $(THREAD_OBJS)
+ ar cr $@ $?
+ @RANLIB@ $@
+
+-$(LIB_TH_SL) : $(LIB_TH)
+- rm -f $@ $@.t
+- @shlinkargs@ $(LIB_TH) $(OBJS) $(THREAD_OBJS)
+- mv $@.t $@
++$(LIB_TH_SL) : $(OBJS_SL) $(THREAD_OBJS_SL)
++ $(CC) -shared -Wl,-soname,libdmallocth.so.5 -o $@ $(OBJS_SL) $(THREAD_OBJS_SL)
+
+ $(LIB_CXX) : $(OBJS) $(NORMAL_OBJS) $(CXX_OBJS)
+ ar cr $@ $?
+ @RANLIB@ $@
+
+-$(LIB_CXX_SL) : $(LIB_CXX)
+- rm -f $@ $@.t
+- @shlinkargs@ $(LIB_CXX) $(OBJS) $(NORMAL_OBJS) $(CXX_OBJS)
+- mv $@.t $@
++$(LIB_CXX_SL) : $(OBJS_SL) $(NORMAL_OBJS_SL) $(CXX_OBJS_SL)
++ $(CC) -shared -Wl,-soname,libdmalloccxx.so.5 -o $@ $(OBJS_SL) $(NORMAL_OBJS_SL) $(CXX_OBJS_SL)
+
+ $(LIB_TH_CXX) : $(OBJS) $(THREAD_OBJS) $(CXX_OBJS)
+ ar cr $@ $?
+ @RANLIB@ $@
+
+-$(LIB_TH_CXX_SL) : $(LIB_TH_CXX)
+- rm -f $@ $@.t
+- @shlinkargs@ $(LIB_TH_CXX) $(OBJS) $(THREAD_OBJS) $(CXX_OBJS)
+- mv $@.t $@
++$(LIB_TH_CXX_SL) : $(OBJS_SL) $(THREAD_OBJS_SL) $(CXX_OBJS_SL)
++ $(CC) -shared -Wl,-soname,libdmallocthcxx.so.5 -o $@ $(OBJS_SL) $(THREAD_OBJS_SL) $(CXX_OBJS_SL)
+
+-threadssl : $(LIB_TH_SL)
++threadssl : $(LIB_TH_SL)$(ver)
+
+-threadscxxsl : $(LIB_TH_CXX_SL)
++threadscxxsl : $(LIB_TH_CXX_SL)$(ver)
+
+ threadscxx : $(BUILD_TH_CXX)
+ @SL_OFF@ @echo "Enter 'make threadscxxsl' to build the threaded C++ shared-library"
+@@ -302,7 +298,7 @@ threads : $(BUILD_THREADS)
+ @CXX_OFF@ @echo "Enter 'make threadscxx' to build the threaded C++ library"
+ @SL_OFF@ @echo "Enter 'make threadssl' to build the threaded shared library"
+
+-cxxsl : $(LIB_CXX_SL)
++cxxsl : $(LIB_CXX_SL)$(ver)
+
+ cxx : $(BUILD_CXX)
+ @SL_OFF@ @echo "Enter 'make cxxsl' to build the cxx shared library"
+@@ -371,6 +367,11 @@ dmallocc.o : $(srcdir)/dmallocc.cc
+ $(CXX) $(CFLAGS) $(CPPFLAGS) $(DEFS) $(INCS) -c $(srcdir)/dmallocc.cc \
+ -o ./$@
+
++dmallocc_sl.o : $(srcdir)/dmallocc.cc
++ rm -f $@
++ $(CXX) $(CFLAGS) -fPIC $(CPPFLAGS) $(DEFS) $(INCS) -c $(srcdir)/dmallocc.cc \
++ -o ./$@
++
+ #
+ # auto configure settings - uncomment if you are doing configure
+ # development on the library
+@@ -395,38 +396,109 @@ dmallocc.o : $(srcdir)/dmallocc.cc
+
+ arg_check.o: arg_check.c conf.h settings.h dmalloc.h chunk.h debug_tok.h \
+ dmalloc_loc.h error.h arg_check.h
++arg_check_sl.o: arg_check.c conf.h settings.h dmalloc.h chunk.h debug_tok.h \
++ dmalloc_loc.h error.h arg_check.h
++ rm -f $@
++ $(CC) $(CFLAGS) -fPIC $(CPPFLAGS) $(DEFS) $(INCS) -c $< -o ./$@
+ chunk.o: chunk.c conf.h settings.h dmalloc.h chunk.h chunk_loc.h \
+ dmalloc_loc.h compat.h debug_tok.h dmalloc_rand.h dmalloc_tab.h error.h \
+ error_val.h heap.h
++chunk_sl.o: chunk.c conf.h settings.h dmalloc.h chunk.h chunk_loc.h \
++ dmalloc_loc.h compat.h debug_tok.h dmalloc_rand.h dmalloc_tab.h error.h \
++ error_val.h heap.h
++ rm -f $@
++ $(CC) $(CFLAGS) -fPIC $(CPPFLAGS) $(DEFS) $(INCS) -c $< -o ./$@
+ compat.o: compat.c conf.h settings.h dmalloc.h compat.h dmalloc_loc.h
++compat_sl.o: compat.c conf.h settings.h dmalloc.h compat.h dmalloc_loc.h
++ rm -f $@
++ $(CC) $(CFLAGS) -fPIC $(CPPFLAGS) $(DEFS) $(INCS) -c $< -o ./$@
+ dmalloc.o: dmalloc.c conf.h settings.h dmalloc_argv.h dmalloc.h compat.h \
+ debug_tok.h dmalloc_loc.h env.h error_val.h version.h
++dmalloc_sl.o: dmalloc.c conf.h settings.h dmalloc_argv.h dmalloc.h compat.h \
++ debug_tok.h dmalloc_loc.h env.h error_val.h version.h
++ rm -f $@
++ $(CC) $(CFLAGS) -fPIC $(CPPFLAGS) $(DEFS) $(INCS) -c $< -o ./$@
+ dmalloc_argv.o: dmalloc_argv.c conf.h settings.h dmalloc_argv.h \
+ dmalloc_argv_loc.h compat.h
++dmalloc_argv_sl.o: dmalloc_argv.c conf.h settings.h dmalloc_argv.h \
++ dmalloc_argv_loc.h compat.h
++ rm -f $@
++ $(CC) $(CFLAGS) -fPIC $(CPPFLAGS) $(DEFS) $(INCS) -c $< -o ./$@
+ dmalloc_fc_t.o: dmalloc_fc_t.c conf.h settings.h dmalloc.h dmalloc_argv.h \
+ dmalloc_rand.h debug_tok.h dmalloc_loc.h error_val.h
++dmalloc_fc_t_sl.o: dmalloc_fc_t.c conf.h settings.h dmalloc.h dmalloc_argv.h \
++ dmalloc_rand.h debug_tok.h dmalloc_loc.h error_val.h
++ rm -f $@
++ $(CC) $(CFLAGS) -fPIC $(CPPFLAGS) $(DEFS) $(INCS) -c $< -o ./$@
+ dmalloc_rand.o: dmalloc_rand.c dmalloc_rand.h
++dmalloc_rand_sl.o: dmalloc_rand.c dmalloc_rand.h
++ rm -f $@
++ $(CC) $(CFLAGS) -fPIC $(CPPFLAGS) $(DEFS) $(INCS) -c $< -o ./$@
+ dmalloc_t.o: dmalloc_t.c conf.h settings.h compat.h dmalloc.h \
+ dmalloc_argv.h dmalloc_rand.h arg_check.h debug_tok.h dmalloc_loc.h \
+ error_val.h heap.h
++dmalloc_t_sl.o: dmalloc_t.c conf.h settings.h compat.h dmalloc.h \
++ dmalloc_argv.h dmalloc_rand.h arg_check.h debug_tok.h dmalloc_loc.h \
++ error_val.h heap.h
++ rm -f $@
++ $(CC) $(CFLAGS) -fPIC $(CPPFLAGS) $(DEFS) $(INCS) -c $< -o ./$@
+ dmalloc_tab.o: dmalloc_tab.c conf.h settings.h chunk.h compat.h dmalloc.h \
+ dmalloc_loc.h error.h error_val.h dmalloc_tab.h dmalloc_tab_loc.h
++dmalloc_tab_sl.o: dmalloc_tab.c conf.h settings.h chunk.h compat.h dmalloc.h \
++ dmalloc_loc.h error.h error_val.h dmalloc_tab.h dmalloc_tab_loc.h
++ rm -f $@
++ $(CC) $(CFLAGS) -fPIC $(CPPFLAGS) $(DEFS) $(INCS) -c $< -o ./$@
+ env.o: env.c conf.h settings.h dmalloc.h compat.h dmalloc_loc.h \
+ debug_tok.h env.h error.h
++env_sl.o: env.c conf.h settings.h dmalloc.h compat.h dmalloc_loc.h \
++ debug_tok.h env.h error.h
++ rm -f $@
++ $(CC) $(CFLAGS) -fPIC $(CPPFLAGS) $(DEFS) $(INCS) -c $< -o ./$@
+ error.o: error.c conf.h settings.h dmalloc.h chunk.h compat.h debug_tok.h \
+ dmalloc_loc.h env.h error.h error_val.h version.h
++error_sl.o: error.c conf.h settings.h dmalloc.h chunk.h compat.h debug_tok.h \
++ dmalloc_loc.h env.h error.h error_val.h version.h
++ rm -f $@
++ $(CC) $(CFLAGS) -fPIC $(CPPFLAGS) $(DEFS) $(INCS) -c $< -o ./$@
+ heap.o: heap.c conf.h settings.h dmalloc.h chunk.h compat.h debug_tok.h \
+ dmalloc_loc.h error.h error_val.h heap.h
++heap_sl.o: heap.c conf.h settings.h dmalloc.h chunk.h compat.h debug_tok.h \
++ dmalloc_loc.h error.h error_val.h heap.h
++ rm -f $@
++ $(CC) $(CFLAGS) -fPIC $(CPPFLAGS) $(DEFS) $(INCS) -c $< -o ./$@
+ malloc.o: malloc.c conf.h settings.h dmalloc.h chunk.h compat.h \
+ debug_tok.h dmalloc_loc.h env.h error.h error_val.h heap.h \
+ malloc_funcs.h return.h
++malloc_sl.o: malloc.c conf.h settings.h dmalloc.h chunk.h compat.h \
++ debug_tok.h dmalloc_loc.h env.h error.h error_val.h heap.h \
++ malloc_funcs.h return.h
++ rm -f $@
++ $(CC) $(CFLAGS) -fPIC $(CPPFLAGS) $(DEFS) $(INCS) -c $< -o ./$@
+ protect.o: protect.c conf.h settings.h dmalloc.h dmalloc_loc.h error.h \
+ heap.h protect.h
++protect_sl.o: protect.c conf.h settings.h dmalloc.h dmalloc_loc.h error.h \
++ heap.h protect.h
++ rm -f $@
++ $(CC) $(CFLAGS) -fPIC $(CPPFLAGS) $(DEFS) $(INCS) -c $< -o ./$@
+ chunk_th.o: chunk.c conf.h settings.h dmalloc.h chunk.h chunk_loc.h \
+ dmalloc_loc.h compat.h debug_tok.h dmalloc_rand.h dmalloc_tab.h error.h \
+ error_val.h heap.h
++chunk_th_sl.o: chunk.c conf.h settings.h dmalloc.h chunk.h chunk_loc.h \
++ dmalloc_loc.h compat.h debug_tok.h dmalloc_rand.h dmalloc_tab.h error.h \
++ error_val.h heap.h
++ rm -f $@
++ $(CC) $(CFLAGS) -fPIC $(CPPFLAGS) $(DEFS) $(INCS) -c $< -o ./$@
+ error_th.o: error.c conf.h settings.h dmalloc.h chunk.h compat.h debug_tok.h \
+ dmalloc_loc.h env.h error.h error_val.h version.h
++error_th_sl.o: error.c conf.h settings.h dmalloc.h chunk.h compat.h debug_tok.h \
++ dmalloc_loc.h env.h error.h error_val.h version.h
++ rm -f $@
++ $(CC) $(CFLAGS) -fPIC $(CPPFLAGS) $(DEFS) $(INCS) -c $< -o ./$@
+ malloc_th.o: malloc.c conf.h settings.h dmalloc.h chunk.h compat.h \
+ debug_tok.h dmalloc_loc.h env.h error.h error_val.h heap.h \
+ malloc_funcs.h return.h
++malloc_th_sl.o: malloc.c conf.h settings.h dmalloc.h chunk.h compat.h \
++ debug_tok.h dmalloc_loc.h env.h error.h error_val.h heap.h \
++ malloc_funcs.h return.h
++ rm -f $@
++ $(CC) $(CFLAGS) -fPIC $(CPPFLAGS) $(DEFS) $(INCS) -c $< -o ./$@
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/dmalloc/dmalloc/03-threads.patch b/import-layers/meta-openembedded/meta-oe/recipes-devtools/dmalloc/dmalloc/03-threads.patch
new file mode 100644
index 000000000..be0945257
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/dmalloc/dmalloc/03-threads.patch
@@ -0,0 +1,18 @@
+Description: Fix LOCK_THREADS in settings.dist
+ This patch takes into account that if --enable-threads is used, LOCK_THREADS
+ doesn't get updated
+Author: Markus Stenberg <markus.stenberg@conformiq.com>
+Author: Daniel Rus Morales <danirus@tol-project.org>
+Bug-Debian: http://bugs.debian.org/276457
+
+--- dmalloc-5.5.1.orig/settings.dist 2007-03-25 21:16:43.000000000 +0200
++++ dmalloc-5.5.1/settings.dist 2007-04-27 20:56:49.000000000 +0200
+@@ -409,7 +409,7 @@
+ */
+
+ #ifndef LOCK_THREADS
+-#define LOCK_THREADS 0
++#define LOCK_THREADS 1
+ #endif
+
+ #if LOCK_THREADS
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/dmalloc/dmalloc/100-use-xtools.patch b/import-layers/meta-openembedded/meta-oe/recipes-devtools/dmalloc/dmalloc/100-use-xtools.patch
new file mode 100644
index 000000000..e1db69059
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/dmalloc/dmalloc/100-use-xtools.patch
@@ -0,0 +1,109 @@
+This patch makes configure use the cross ld and ar rather than the native tools.
+
+It was build up by Yann E. MORIN <yann.morin.1998@anciens.enib.fr> from some
+bits gathered from buildroot, which is LGPL v2.1
+License for dmalloc is:
+ * Permission to use, copy, modify, and distribute this software for
+ * any purpose and without fee is hereby granted, provided that the
+ * above copyright notice and this permission notice appear in all
+ * copies, and that the name of Gray Watson not be used in advertising
+ * or publicity pertaining to distribution of the document or software
+ * without specific, written prior permission.
+ *
+ * Gray Watson makes no representations about the suitability of the
+ * software described herein for any purpose. It is provided "as is"
+ * without express or implied warranty.
+
+I personnaly believe that the resulting code should therefore be
+LGPL v2.1, but don't believe me, ask your lawyers!
+
+Index: dmalloc-5.5.2/configure.ac
+===================================================================
+--- dmalloc-5.5.2.orig/configure.ac
++++ dmalloc-5.5.2/configure.ac
+@@ -69,6 +69,15 @@ if test "$ac_cv_prog_cc_stdc" = "no" ; t
+ fi
+ AC_PROG_INSTALL
+ AC_PROG_RANLIB
++AN_MAKEVAR([AR], [AC_PROG_AR])
++AN_PROGRAM([ar], [AC_PROG_AR])
++AC_DEFUN([AC_PROG_AR], [AC_CHECK_TOOL(AR, ar, :)])
++AC_PROG_AR
++AN_MAKEVAR([LD], [AC_PROG_LD])
++AN_PROGRAM([ld], [AC_PROG_LD])
++AC_DEFUN([AC_PROG_LD], [AC_CHECK_TOOL(LD, ld, :)])
++AC_PROG_LD
++
+ AC_C_CONST
+
+ # we need this for various settings
+@@ -131,14 +140,14 @@ AC_SUBST(shlibdir)
+ AC_MSG_CHECKING([shared library link args])
+ AC_COMPILE_IFELSE([ int foo(int val) { return val + 1; } ],[
+ # so now we try to create an archive from the compiled .o file
+- (ar cr conftest.a conftest.o) 2>&5
++ (${ac_cv_prog_AR} cr conftest.a conftest.o) 2>&5
+ # see which shared-library ld commands work
+ #
+ # Darwin/Mac OS X - Terry Teague
+ # username terry_teague at domain users.sourceforge.net
+ ac_cv_shared_lib_link_objs=no
+ if test `uname` = "Darwin"; then
+- if (ld -dylib -o conftest.so.t -lc conftest.a) 2>&5; then
++ if (${ac_cv_prog_LD} -dylib -o conftest.so.t -lc conftest.a) 2>&5; then
+ # By convention on some platforms
+ # libLLL.so, libLLL.X.so are symlinks to libLLL.X.Y.Z.so
+ # where X.Y.Z is version # (major.minor.increment) of the library
+@@ -156,12 +165,12 @@ AC_COMPILE_IFELSE([ int foo(int val) { r
+ ac_cv_shared_link_args='# Could not configure shlib linking'
+ enable_shlib=no
+ fi
+- elif (ld -shared --whole-archive -soname conftest.so -o conftest.so.t conftest.a) 2>&5; then
+- ac_cv_shared_link_args='ld -shared --whole-archive -soname $@ -o $@.t'
+- elif (ld -shared -o conftest.so.t -all -soname conftest.so.t -none -lc -all conftest.a) 2>&5; then
+- ac_cv_shared_link_args='ld -shared -o $@.t -all -soname $@ -none -lc -all'
+- elif (ld -G -o conftest.so.t conftest.a) 2>&5; then
+- ac_cv_shared_link_args='ld -G -o $@.t'
++ elif (${ac_cv_prog_LD} -shared --whole-archive -soname conftest.so -o conftest.so.t conftest.a) 2>&5; then
++ ac_cv_shared_link_args='${CC} -Wl,-shared -Wl,--whole-archive -Wl,-soname,$@ -o $@.t -Wl,--no-whole-archive'
++ elif (${ac_cv_prog_LD} -shared -o conftest.so.t -all -soname conftest.so.t -none -lc -all conftest.a) 2>&5; then
++ ac_cv_shared_link_args='${CC} -Wl,-shared -o $@.t -Wl,-all -Wl,-soname,$@ -Wl,-none -lc -Wl,-all'
++ elif (${ac_cv_prog_LD} -G -o conftest.so.t conftest.a) 2>&5; then
++ ac_cv_shared_link_args='${CC} -Wl,-G -o $@.t'
+ else
+ # oh well, toss an error
+ ac_cv_shared_link_args='# Could not configure shlib linking'
+Index: dmalloc-5.5.2/Makefile.in
+===================================================================
+--- dmalloc-5.5.2.orig/Makefile.in
++++ dmalloc-5.5.2/Makefile.in
+@@ -263,25 +263,25 @@ $(LIB_SL) : $(OBJS_SL) $(NORMAL_OBJS_SL)
+ $(CC) $(LDFLAGS) -shared -Wl,-soname,libdmalloc.so.5 -o $@ $(OBJS_SL) $(NORMAL_OBJS_SL)
+
+ $(LIBRARY) : $(OBJS) $(NORMAL_OBJS)
+- ar cr $@ $?
++ @AR@ cr $@ $?
+ @RANLIB@ $@
+
+ $(LIB_TH) : $(OBJS) $(THREAD_OBJS)
+- ar cr $@ $?
++ @AR@ cr $@ $?
+ @RANLIB@ $@
+
+ $(LIB_TH_SL) : $(OBJS_SL) $(THREAD_OBJS_SL)
+ $(CC) $(LDFLAGS) -shared -Wl,-soname,libdmallocth.so.5 -o $@ $(OBJS_SL) $(THREAD_OBJS_SL)
+
+ $(LIB_CXX) : $(OBJS) $(NORMAL_OBJS) $(CXX_OBJS)
+- ar cr $@ $?
++ @AR@ cr $@ $?
+ @RANLIB@ $@
+
+ $(LIB_CXX_SL) : $(OBJS_SL) $(NORMAL_OBJS_SL) $(CXX_OBJS_SL)
+ $(CC) $(LDFLAGS) -shared -Wl,-soname,libdmalloccxx.so.5 -o $@ $(OBJS_SL) $(NORMAL_OBJS_SL) $(CXX_OBJS_SL)
+
+ $(LIB_TH_CXX) : $(OBJS) $(THREAD_OBJS) $(CXX_OBJS)
+- ar cr $@ $?
++ @AR@ cr $@ $?
+ @RANLIB@ $@
+
+ $(LIB_TH_CXX_SL) : $(OBJS_SL) $(THREAD_OBJS_SL) $(CXX_OBJS_SL)
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/dmalloc/dmalloc/13-fix-ldflags-in-makefile.patch b/import-layers/meta-openembedded/meta-oe/recipes-devtools/dmalloc/dmalloc/13-fix-ldflags-in-makefile.patch
new file mode 100644
index 000000000..2581e5488
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/dmalloc/dmalloc/13-fix-ldflags-in-makefile.patch
@@ -0,0 +1,38 @@
+Index: dmalloc-5.5.2/Makefile.in
+===================================================================
+--- dmalloc-5.5.2.orig/Makefile.in
++++ dmalloc-5.5.2/Makefile.in
+@@ -260,7 +260,7 @@ shlib : $(BUILD_SL)
+ # work on your operating system. Please send feedback to the author
+ # via: http://256.com/gray/email.html
+ $(LIB_SL) : $(OBJS_SL) $(NORMAL_OBJS_SL)
+- $(CC) -shared -Wl,-soname,libdmalloc.so.5 -o $@ $(OBJS_SL) $(NORMAL_OBJS_SL)
++ $(CC) $(LDFLAGS) -shared -Wl,-soname,libdmalloc.so.5 -o $@ $(OBJS_SL) $(NORMAL_OBJS_SL)
+
+ $(LIBRARY) : $(OBJS) $(NORMAL_OBJS)
+ ar cr $@ $?
+@@ -271,21 +271,21 @@ $(LIB_TH) : $(OBJS) $(THREAD_OBJS)
+ @RANLIB@ $@
+
+ $(LIB_TH_SL) : $(OBJS_SL) $(THREAD_OBJS_SL)
+- $(CC) -shared -Wl,-soname,libdmallocth.so.5 -o $@ $(OBJS_SL) $(THREAD_OBJS_SL)
++ $(CC) $(LDFLAGS) -shared -Wl,-soname,libdmallocth.so.5 -o $@ $(OBJS_SL) $(THREAD_OBJS_SL)
+
+ $(LIB_CXX) : $(OBJS) $(NORMAL_OBJS) $(CXX_OBJS)
+ ar cr $@ $?
+ @RANLIB@ $@
+
+ $(LIB_CXX_SL) : $(OBJS_SL) $(NORMAL_OBJS_SL) $(CXX_OBJS_SL)
+- $(CC) -shared -Wl,-soname,libdmalloccxx.so.5 -o $@ $(OBJS_SL) $(NORMAL_OBJS_SL) $(CXX_OBJS_SL)
++ $(CC) $(LDFLAGS) -shared -Wl,-soname,libdmalloccxx.so.5 -o $@ $(OBJS_SL) $(NORMAL_OBJS_SL) $(CXX_OBJS_SL)
+
+ $(LIB_TH_CXX) : $(OBJS) $(THREAD_OBJS) $(CXX_OBJS)
+ ar cr $@ $?
+ @RANLIB@ $@
+
+ $(LIB_TH_CXX_SL) : $(OBJS_SL) $(THREAD_OBJS_SL) $(CXX_OBJS_SL)
+- $(CC) -shared -Wl,-soname,libdmallocthcxx.so.5 -o $@ $(OBJS_SL) $(THREAD_OBJS_SL) $(CXX_OBJS_SL)
++ $(CC) $(LDFLAGS) -shared -Wl,-soname,libdmallocthcxx.so.5 -o $@ $(OBJS_SL) $(THREAD_OBJS_SL) $(CXX_OBJS_SL)
+
+ threadssl : $(LIB_TH_SL)$(ver)
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/dmalloc/dmalloc/130-mips.patch b/import-layers/meta-openembedded/meta-oe/recipes-devtools/dmalloc/dmalloc/130-mips.patch
new file mode 100644
index 000000000..935ac983a
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/dmalloc/dmalloc/130-mips.patch
@@ -0,0 +1,90 @@
+Patch to correctly handle the MIPS case.
+
+It was build up by Yann E. MORIN <yann.morin.1998@anciens.enib.fr> from some
+bits gathered from buildroot, which is LGPL v2.1
+License for dmalloc is:
+ * Permission to use, copy, modify, and distribute this software for
+ * any purpose and without fee is hereby granted, provided that the
+ * above copyright notice and this permission notice appear in all
+ * copies, and that the name of Gray Watson not be used in advertising
+ * or publicity pertaining to distribution of the document or software
+ * without specific, written prior permission.
+ *
+ * Gray Watson makes no representations about the suitability of the
+ * software described herein for any purpose. It is provided "as is"
+ * without express or implied warranty.
+
+I personnaly believe that the resulting code should therefore be
+LGPL v2.1, but don't believe me, ask your lawyers!
+
+Index: dmalloc-5.5.2/return.h
+===================================================================
+--- dmalloc-5.5.2.orig/return.h
++++ dmalloc-5.5.2/return.h
+@@ -106,26 +106,16 @@
+ /*************************************/
+
+ /*
+- * For DEC Mips machines running Ultrix
++ * For Mips machines running Linux
+ */
+ #if __mips
+
+ /*
+- * I have no idea how to get inline assembly with the default cc.
+- * Anyone know how?
+- */
+-
+-#if 0
+-
+-/*
+ * NOTE: we assume here that file is global.
+ *
+- * $31 is the frame pointer. $2 looks to be the return address but maybe
+- * not consistently.
++ * $31 is the return address.
+ */
+-#define GET_RET_ADDR(file) asm("sw $2, file")
+-
+-#endif
++#define GET_RET_ADDR(file) asm("sw $31, %0" : "=m" (file))
+
+ #endif /* __mips */
+
+Index: dmalloc-5.5.2/configure.ac
+===================================================================
+--- dmalloc-5.5.2.orig/configure.ac
++++ dmalloc-5.5.2/configure.ac
+@@ -585,31 +585,7 @@ int main() { return 1; }
+ # check if the return.h macros work
+ #
+ AC_MSG_CHECKING([return.h macros work])
+-AC_RUN_IFELSE([
+-
+-#define __CONF_H__
+-#define USE_RETURN_MACROS 1
+-#define RETURN_MACROS_WORK 1
+-
+-#include "return.h"
+-
+-static void foo (void)
+-{
+- char *ret_addr;
+- GET_RET_ADDR(ret_addr);
+-}
+-
+-main()
+-{
+- foo();
+- exit(0);
+-}
+-],
+-[ AC_DEFINE(RETURN_MACROS_WORK, 1) AC_MSG_RESULT([yes]) ],
+-[ AC_DEFINE(RETURN_MACROS_WORK, 0) AC_MSG_RESULT([no]) ],
+-[ AC_DEFINE(RETURN_MACROS_WORK, 0) AC_MSG_RESULT([no]) ]
+-)
+-
++AC_DEFINE(RETURN_MACROS_WORK, 1)
+ ##############################################################################
+
+ #
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/dmalloc/dmalloc/150-use_DESTDIR.patch b/import-layers/meta-openembedded/meta-oe/recipes-devtools/dmalloc/dmalloc/150-use_DESTDIR.patch
new file mode 100644
index 000000000..7edd46412
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/dmalloc/dmalloc/150-use_DESTDIR.patch
@@ -0,0 +1,104 @@
+Make install rules use DESTDIR.
+Split installation of the utilitity from the global install.
+
+Copyright 2007 Yann E. MORIN <yann.morin.1998@anciens.enib.fr>
+Licensed to you as dmalloc-5.5.2 is.
+
+Index: dmalloc-5.5.2/Makefile.in
+===================================================================
+--- dmalloc-5.5.2.orig/Makefile.in
++++ dmalloc-5.5.2/Makefile.in
+@@ -178,66 +178,66 @@ distclean : clean
+ # rm -f configure
+
+ installdirs :
+- $(srcdir)/mkinstalldirs $(includedir) $(libdir) $(bindir)
++ $(srcdir)/mkinstalldirs $(DESTDIR)/$(includedir) $(DESTDIR)/$(libdir) $(DESTDIR)/$(bindir)
+
+ installincs : $(HFLS)
+- $(srcdir)/mkinstalldirs $(includedir)
+- $(INSTALL_DATA) $(HFLS) $(includedir)
++ $(srcdir)/mkinstalldirs $(DESTDIR)/$(includedir)
++ $(INSTALL_DATA) $(HFLS) $(DESTDIR)/$(includedir)
+
+ installthsl : $(LIB_TH_SL)
+- $(srcdir)/mkinstalldirs $(shlibdir)
+- $(INSTALL) $(LIB_TH_SL) $(shlibdir)
++ $(srcdir)/mkinstalldirs $(DESTDIR)/$(shlibdir)
++ $(INSTALL) $(LIB_TH_SL) $(DESTDIR)/$(shlibdir)
+
+ installth : $(INSTALL_THREADS)
+- $(srcdir)/mkinstalldirs $(libdir)
+- $(INSTALL) $(LIB_TH) $(libdir)
++ $(srcdir)/mkinstalldirs $(DESTDIR)/$(libdir)
++ $(INSTALL) $(LIB_TH) $(DESTDIR)/$(libdir)
+ @CXX_OFF@ @echo "Enter 'make installthcxx' to install the threaded C++ library"
+ @SL_OFF@ @echo "Enter 'make installthsl' to install the threaded shared-library"
+
+ installthcxxsl : $(LIB_TH_CXX_SL)
+- $(srcdir)/mkinstalldirs $(shlibdir)
+- $(INSTALL) $(LIB_TH_CXX_SL) $(shlibdir)
++ $(srcdir)/mkinstalldirs $(DESTDIR)/$(shlibdir)
++ $(INSTALL) $(LIB_TH_CXX_SL) $(DESTDIR)/$(shlibdir)
+
+ installthcxx : $(INSTALL_TH_CXX)
+- $(srcdir)/mkinstalldirs $(libdir)
+- $(INSTALL) $(LIB_TH_CXX) $(libdir)
++ $(srcdir)/mkinstalldirs $(DESTDIR)/$(libdir)
++ $(INSTALL) $(LIB_TH_CXX) $(DESTDIR)/$(libdir)
+ @SL_OFF@ @echo "Enter 'make installthcxxsl' to install the threaded C++ shared-library"
+
+ installcxxsl : $(LIB_CXX_SL)
+- $(srcdir)/mkinstalldirs $(shlibdir)
+- $(INSTALL) $(LIB_CXX_SL) $(shlibdir)
++ $(srcdir)/mkinstalldirs $(DESTDIR)/$(shlibdir)
++ $(INSTALL) $(LIB_CXX_SL) $(DESTDIR)/$(shlibdir)
+
+ installcxx : $(INSTALL_CXX)
+- $(srcdir)/mkinstalldirs $(libdir)
+- $(INSTALL) $(LIB_CXX) $(libdir)
++ $(srcdir)/mkinstalldirs $(DESTDIR)/$(libdir)
++ $(INSTALL) $(LIB_CXX) $(DESTDIR)/$(libdir)
+ @TH_OFF@ @echo "Enter 'make installthcxx' to install the threaded C++ library"
+ @SL_OFF@ @echo "Enter 'make installcxxsl' to install the C++ shared-library"
+
+ installsl : $(LIB_SL)
+- $(srcdir)/mkinstalldirs $(shlibdir)
+- $(INSTALL) $(LIB_SL) $(shlibdir)
++ $(srcdir)/mkinstalldirs $(DESTDIR)/$(shlibdir)
++ $(INSTALL) $(LIB_SL) $(DESTDIR)/$(shlibdir)
+ @CXX_OFF@ @echo "Enter 'make installcxxsl' to install the C++ shared-library"
+ @TH_OFF@ @echo "Enter 'make installthsl' to install thread shared-library"
+
+ installlib : $(INSTALL_LIB)
+- $(srcdir)/mkinstalldirs $(libdir)
+- $(INSTALL) $(LIBRARY) $(libdir)
+- @RANLIB@ $(libdir)/$(LIBRARY)
++ $(srcdir)/mkinstalldirs $(DESTDIR)/$(libdir)
++ $(INSTALL) $(LIBRARY) $(DESTDIR)/$(libdir)
++ @RANLIB@ $(DESTDIR)/$(libdir)/$(LIBRARY)
+ @SL_OFF@ @echo "Enter 'make installsl' to install $(LIB_SL) in $(shlibdir)"
+ @CXX_OFF@ @echo "Enter 'make installcxx' to install the C++ library"
+ @TH_OFF@ @echo "Enter 'make installth' to install thread library"
+
+ installdocs : $(srcdir)/docs/$(HTMLFILE) $(srcdir)/docs/$(TEXIFILE) \
+ $(srcdir)/docs/$(PDFFILE)
+- $(srcdir)/mkinstalldirs $(docdir)
+- $(INSTALL_DATA) $(srcdir)/docs/$(HTMLFILE) $(docdir)
+- $(INSTALL_DATA) $(srcdir)/docs/$(TEXIFILE) $(docdir)
+- $(INSTALL_DATA) $(srcdir)/docs/$(PDFFILE) $(docdir)
++ $(srcdir)/mkinstalldirs $(DESTDIR)/$(docdir)
++ $(INSTALL_DATA) $(srcdir)/docs/$(HTMLFILE) $(DESTDIR)/$(docdir)
++ $(INSTALL_DATA) $(srcdir)/docs/$(TEXIFILE) $(DESTDIR)/$(docdir)
++ $(INSTALL_DATA) $(srcdir)/docs/$(PDFFILE) $(DESTDIR)/$(docdir)
+
+ install : installincs installlib $(UTIL)
+- $(srcdir)/mkinstalldirs $(bindir)
+- $(INSTALL_PROGRAM) $(UTIL) $(bindir)
+- @echo "Enter 'make installdocs' to install $(DOCFILES) in $(docdir)"
++ $(srcdir)/mkinstalldirs $(DESTDIR)/$(bindir)
++ $(INSTALL_PROGRAM) $(UTIL) $(DESTDIR)/$(bindir)
++ @echo "Enter 'make installdocs' to install $(DOCFILES) in $(DESTDIR)/$(docdir)"
+
+ dmalloc.h.2 : $(srcdir)/configure
+ $(SHELL) $(srcdir)/configure
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/dmalloc/dmalloc/configure-pagesize-HACK.patch b/import-layers/meta-openembedded/meta-oe/recipes-devtools/dmalloc/dmalloc/configure-pagesize-HACK.patch
new file mode 100644
index 000000000..a5bd73661
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/dmalloc/dmalloc/configure-pagesize-HACK.patch
@@ -0,0 +1,37 @@
+We cant run tests during cross compile therefore pin to 4k pages
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+Index: dmalloc-5.5.2/configure.ac
+===================================================================
+--- dmalloc-5.5.2.orig/configure.ac
++++ dmalloc-5.5.2/configure.ac
+@@ -348,26 +348,8 @@ AC_MSG_RESULT([$ac_cv_use_mmap])
+ #
+ AC_CHECK_FUNCS(getpagesize)
+ AC_MSG_CHECKING([basic-block size])
+-ac_cv_page_size=0
+-if test $ac_cv_page_size = 0; then
+- AC_RUN_IFELSE([main() { if (getpagesize()<=2048) exit(0); else exit(1); }],
+- [ ac_cv_page_size=11 ] )
+-fi
+-if test $ac_cv_page_size = 0; then
+- AC_RUN_IFELSE([main() { if (getpagesize()<=4096) exit(0); else exit(1); }],
+- [ ac_cv_page_size=12 ] )
+-fi
+-if test $ac_cv_page_size = 0; then
+- AC_RUN_IFELSE([main() { if (getpagesize()<=8192) exit(0); else exit(1); }],
+- [ ac_cv_page_size=13 ] )
+-fi
+-if test $ac_cv_page_size = 0; then
+- AC_RUN_IFELSE([main() { if (getpagesize()<=16384) exit(0); else exit(1); }],
+- [ ac_cv_page_size=14 ] )
+-fi
+-if test $ac_cv_page_size = 0; then
+- ac_cv_page_size=15
+-fi
++# fix to 4K for now
++ac_cv_page_size=12
+ AC_DEFINE_UNQUOTED([BASIC_BLOCK],[$ac_cv_page_size])
+ AC_MSG_RESULT([$ac_cv_page_size])
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/dmalloc/dmalloc_5.5.2.bb b/import-layers/meta-openembedded/meta-oe/recipes-devtools/dmalloc/dmalloc_5.5.2.bb
new file mode 100644
index 000000000..2f0d8a340
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/dmalloc/dmalloc_5.5.2.bb
@@ -0,0 +1,39 @@
+# Copyright (C) 2016 Khem Raj <raj.khem@gmail.com>
+# Released under the MIT license (see COPYING.MIT for the terms)
+
+SUMMARY = "Debug Malloc Library"
+
+DESCRIPTION = "The debug memory allocation or dmalloc library has been \
+designed as a drop in replacement for the system's malloc, realloc, \
+calloc, free and other memory management routines while providing \
+powerful debugging facilities configurable at runtime. These facilities \
+include such things as memory-leak tracking, fence-post write detection, \
+file/line number reporting, and general logging of statistics."
+
+HOMEPAGE = "http://dmalloc.com/"
+LICENSE = "CC-BY-SA-3.0"
+
+LIC_FILES_CHKSUM = "file://dmalloc.c;beginline=4;endline=17;md5=83d13664f87f1f1a3b6b2b6f6eba85aa"
+
+SECTION = "libs"
+
+SRC_URI = "http://dmalloc.com/releases/dmalloc-${PV}.tgz \
+ file://02-Makefile.in.patch \
+ file://03-threads.patch \
+ file://13-fix-ldflags-in-makefile.patch \
+ file://configure-pagesize-HACK.patch \
+ file://100-use-xtools.patch \
+ file://130-mips.patch \
+ file://150-use_DESTDIR.patch \
+ file://0001-undefined-strdup-macro.patch \
+"
+
+SRC_URI[md5sum] = "f92e5606c23a8092f3d5694e8d1c932e"
+SRC_URI[sha256sum] = "d3be5c6eec24950cb3bd67dbfbcdf036f1278fae5fd78655ef8cdf9e911e428a"
+
+ARM_INSTRUCTION_SET = "arm"
+
+inherit autotools
+
+EXTRA_AUTORECONF += "--include=acinclude --exclude=autoheader"
+EXTRA_OECONF += "--enable-threads --enable-cxx --enable-shlib"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/dt/dt_18.32.bb b/import-layers/meta-openembedded/meta-oe/recipes-devtools/dt/dt_18.32.bb
index 9688d02aa..0234f765a 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-devtools/dt/dt_18.32.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/dt/dt_18.32.bb
@@ -45,3 +45,5 @@ do_install() {
}
RDEPENDS_${PN} += "tcsh"
+
+PNBLACKLIST[dt] ?= "Rdepends on blacklisted tcsh - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/geany/geany-plugins_1.28.bb b/import-layers/meta-openembedded/meta-oe/recipes-devtools/geany/geany-plugins_1.30.bb
index 781287a90..f01dda8cd 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-devtools/geany/geany-plugins_1.28.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/geany/geany-plugins_1.30.bb
@@ -5,7 +5,7 @@ LICENSE_DEFAULT = "GPLv2"
LICENSE = "${LICENSE_DEFAULT} & BSD-2-Clause & GPLv3"
python () {
- for plugin in d.getVar('PLUGINS', True).split():
+ for plugin in d.getVar('PLUGINS').split():
if 'LICENSE_%s' % plugin not in d:
d.setVar('LICENSE_' + plugin, '${LICENSE_DEFAULT}')
}
@@ -25,8 +25,8 @@ DEPENDS = " \
inherit autotools pkgconfig gtk-icon-cache
SRC_URI = "http://plugins.geany.org/${PN}/${PN}-${PV}.tar.bz2"
-SRC_URI[md5sum] = "54ad042b6f91ff8e7a497c22faa2db4b"
-SRC_URI[sha256sum] = "b13471e0a4cb76d04a96bb21c965087b50c16390edee0c6b3bbd920d8ac17745"
+SRC_URI[md5sum] = "13f8e5d900b4911059385649b8dde887"
+SRC_URI[sha256sum] = "8adb90645d273d9549e1fa99b69ea87dc1fd612f7467eb18eee11a6b30c9ba5b"
do_configure_prepend() {
rm -f ${S}/build/cache/glib-gettext.m4
@@ -106,8 +106,8 @@ FILES_${PN}-geanylatex = "${libdir}/geany/geanylatex.so"
RDEPENDS_${PN}-geanylatex = "${PN}"
PLUGINS += "${PN}-geanylipsum"
-LIC_FILES_CHKSUM += "file://geanylipsum/COPYING;md5=4325afd396febcb659c36b49533135d4"
-FILES_${PN}-geanylipsum = "${libdir}/geany/geanylipsum.so"
+LIC_FILES_CHKSUM += "file://lipsum/COPYING;md5=4325afd396febcb659c36b49533135d4"
+FILES_${PN}-geanylipsum = "${libdir}/geany/lipsum.so"
RDEPENDS_${PN}-geanylipsum = "${PN}"
# no lua: max supported version is 5.2
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/geany/geany/0001-configure.ac-remove-additional-c-test.patch b/import-layers/meta-openembedded/meta-oe/recipes-devtools/geany/geany/0001-configure.ac-remove-additional-c-test.patch
deleted file mode 100644
index 5166fece0..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-devtools/geany/geany/0001-configure.ac-remove-additional-c-test.patch
+++ /dev/null
@@ -1,47 +0,0 @@
-From e62d5b59262ec7ffe07931790712c7e247377795 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
-Date: Thu, 21 Feb 2013 09:31:31 +0100
-Subject: [PATCH] configure.ac remove additional c++ test
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-For openembedded cross-builds CXX can contain something like:
-
-arm-oe-linux-gnueabi-g++ -march=armv5te -marm -mthumb-interwork --sysroot=/home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/sysroots/qemuarm
-
-This ends up in
-
-configure:5582: error: No C++ compiler found. Please install a C++ compiler.
-
-Anyway if [1] is still valid, the combination of AC_PROG_CC and AC_PROG_CXX
-should thow an error message.
-
-[1] http://lists.gnu.org/archive/html/bug-autoconf/2010-05/msg00001.html
-
-Upstream-Status: Inappropriate [configuration]
-
-Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
----
- configure.ac | 5 -----
- 1 files changed, 0 insertions(+), 5 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index c37312a..742bf35 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -26,11 +26,6 @@ AC_USE_SYSTEM_EXTENSIONS
- AC_PROG_CC
-
- AC_PROG_CXX
--# check for C++ compiler explicitly and fail if none is found, do this check
--# after AC_PROG_CXX has set the CXX environment variable
--if ! which $CXX >/dev/null 2>&1; then
-- AC_MSG_ERROR([No C++ compiler found. Please install a C++ compiler.])
--fi
-
- AC_PROG_INSTALL
- AC_PROG_LN_S
---
-1.7.6.5
-
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/geany/geany_1.28.bb b/import-layers/meta-openembedded/meta-oe/recipes-devtools/geany/geany_1.28.bb
deleted file mode 100644
index da97090a4..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-devtools/geany/geany_1.28.bb
+++ /dev/null
@@ -1,18 +0,0 @@
-SUMMARY = "A fast and lightweight IDE"
-HOMEPAGE = "http://www.geany.org/"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=bd7b2c994af21d318bd2cd3b3f80c2d5"
-DEPENDS = "gtk+ python3-docutils-native"
-
-inherit autotools pkgconfig perlnative pythonnative
-
-SRC_URI = " \
- http://download.geany.org/${BP}.tar.bz2 \
- file://0001-configure.ac-remove-additional-c-test.patch \
-"
-SRC_URI[md5sum] = "39a29deb598e9e3503ee7d9d5fb51a34"
-SRC_URI[sha256sum] = "f73a3708f1a26e9bf72da564d5037d6f7fedca2e0d6175db0681c2b672100a5a"
-
-FILES_${PN} += "${datadir}/icons"
-
-EXTRA_OECONF = "--disable-html-docs"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/geany/geany_1.30.1.bb b/import-layers/meta-openembedded/meta-oe/recipes-devtools/geany/geany_1.30.1.bb
new file mode 100644
index 000000000..e316ea7ab
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/geany/geany_1.30.1.bb
@@ -0,0 +1,16 @@
+SUMMARY = "A fast and lightweight IDE"
+HOMEPAGE = "http://www.geany.org/"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=bd7b2c994af21d318bd2cd3b3f80c2d5"
+
+DEPENDS = "gtk+ libxml-parser-perl-native python3-docutils-native intltool-native"
+
+inherit autotools pkgconfig perlnative pythonnative gettext
+
+SRC_URI = "http://download.geany.org/${BP}.tar.bz2"
+SRC_URI[md5sum] = "75081b600560c5c8366eda0e1b8cc531"
+SRC_URI[sha256sum] = "0ac360f1f3d6c28790a81d570252a7d40421f6e1d8e5a8d653756bd041d88491"
+
+FILES_${PN} += "${datadir}/icons"
+
+EXTRA_OECONF = "--disable-html-docs"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/glade/glade3/0001-Add-G_GNUC_PRINTF-on-functions-with-format-strings.patch b/import-layers/meta-openembedded/meta-oe/recipes-devtools/glade/glade3/0001-Add-G_GNUC_PRINTF-on-functions-with-format-strings.patch
new file mode 100644
index 000000000..03cb762ce
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/glade/glade3/0001-Add-G_GNUC_PRINTF-on-functions-with-format-strings.patch
@@ -0,0 +1,62 @@
+From fcf29abe59607b5791f9de18ddb86b9ae3c9b7cc Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 26 Aug 2017 23:50:05 -0700
+Subject: [PATCH] Add G_GNUC_PRINTF on functions with format strings
+
+This allows compilation with clang without errors, even when
+-Wformat-nonliteral is active (as long as there are no real cases of
+non literal formatting).
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ gladeui/glade-command.c | 4 ++--
+ gladeui/glade-utils.c | 4 ++--
+ 2 files changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/gladeui/glade-command.c b/gladeui/glade-command.c
+index 9819766..4ac40ee 100644
+--- a/gladeui/glade-command.c
++++ b/gladeui/glade-command.c
+@@ -266,7 +266,7 @@ glade_command_collapse (GladeCommand *command,
+ *
+ * Marks the begining of a group.
+ */
+-void
++G_GNUC_PRINTF(1, 2) void
+ glade_command_push_group (const gchar *fmt, ...)
+ {
+ va_list args;
+@@ -655,7 +655,7 @@ glade_command_set_properties_list (GladeProject *project, GList *props)
+
+ multiple = g_list_length (me->sdata) > 1;
+ if (multiple)
+- glade_command_push_group (cmd->description);
++ glade_command_push_group ("%s", cmd->description);
+
+
+ glade_command_check_group (GLADE_COMMAND (me));
+diff --git a/gladeui/glade-utils.c b/gladeui/glade-utils.c
+index ae52501..c51ae59 100644
+--- a/gladeui/glade-utils.c
++++ b/gladeui/glade-utils.c
+@@ -197,7 +197,7 @@ glade_utils_get_pspec_from_funcname (const gchar *funcname)
+ * selected "OK", True if the @type was GLADE_UI_YES_OR_NO and
+ * the user selected "YES"; False otherwise.
+ */
+-gint
++G_GNUC_PRINTF(4, 5) gint
+ glade_util_ui_message (GtkWidget *parent,
+ GladeUIMessageType type,
+ GtkWidget *widget,
+@@ -320,7 +320,7 @@ remove_message_timeout (FlashInfo * fi)
+ *
+ * Flash a temporary message on the statusbar.
+ */
+-void
++G_GNUC_PRINTF(3, 4) void
+ glade_util_flash_message (GtkWidget *statusbar, guint context_id, gchar *format, ...)
+ {
+ va_list args;
+--
+2.14.1
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/glade/glade3_3.8.5.bb b/import-layers/meta-openembedded/meta-oe/recipes-devtools/glade/glade3_3.8.5.bb
index fd655366f..c4f600095 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-devtools/glade/glade3_3.8.5.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/glade/glade3_3.8.5.bb
@@ -8,11 +8,11 @@ DEPENDS = "gtk+ gnome-doc-utils gnome-common libxml2 intltool-native"
inherit autotools pkgconfig pythonnative gtk-icon-cache
-SRC_URI = " \
- http://ftp.gnome.org/pub/GNOME/sources/glade3/3.8/glade3-${PV}.tar.xz \
- file://0001-gnome-doc-utils.make-sysrooted-pkg-config.patch \
- file://0002-fix-gcc-6-build.patch \
-"
+SRC_URI = "http://ftp.gnome.org/pub/GNOME/sources/glade3/3.8/glade3-${PV}.tar.xz \
+ file://0001-gnome-doc-utils.make-sysrooted-pkg-config.patch \
+ file://0002-fix-gcc-6-build.patch \
+ file://0001-Add-G_GNUC_PRINTF-on-functions-with-format-strings.patch \
+ "
SRC_URI[md5sum] = "4e4b4f5ee34a03e017e4cef97d796c1f"
SRC_URI[sha256sum] = "58a5f6e4df4028230ddecc74c564808b7ec4471b1925058e29304f778b6b2735"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/json-spirit/json-spirit/0001-Adjust-the-cmake-files.patch b/import-layers/meta-openembedded/meta-oe/recipes-devtools/json-spirit/json-spirit/0001-Adjust-the-cmake-files.patch
new file mode 100644
index 000000000..f7030c553
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/json-spirit/json-spirit/0001-Adjust-the-cmake-files.patch
@@ -0,0 +1,145 @@
+From d8986cb065e770017ee1622fb7324387ead60203 Mon Sep 17 00:00:00 2001
+From: Ming Liu <peter.x.liu@external.atlascopco.com>
+Date: Tue, 7 Mar 2017 11:46:52 +0100
+Subject: [PATCH] Adjust the cmake files
+
+- Remove json_test which can not build with boost 1.61.0.
+- Build shared library as well with the original static library.
+- Add FindLibJsonSpirit.cmake to be able to be found by the dependers.
+
+Upstream-Status: Inappropriate [configuration]
+
+Signed-off-by: Ming Liu <peter.x.liu@external.atlascopco.com>
+---
+ CMakeLists.txt | 8 +++---
+ FindLibJsonSpirit.cmake | 64 ++++++++++++++++++++++++++++++++++++++++++++++
+ json_spirit/CMakeLists.txt | 16 +++++++++++-
+ 3 files changed, 83 insertions(+), 5 deletions(-)
+ create mode 100644 FindLibJsonSpirit.cmake
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 4637a6c..b292f0f 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -1,7 +1,7 @@
+ CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
+
+ PROJECT(json_spirit)
+-SUBDIRS(json_spirit json_demo json_headers_only_demo json_map_demo json_test)
++SUBDIRS(json_spirit json_demo json_headers_only_demo json_map_demo)
+ INCLUDE_DIRECTORIES(json_spirit)
+
+ INSTALL(
+@@ -16,11 +16,11 @@ INSTALL(
+ ${CMAKE_SOURCE_DIR}/json_spirit/json_spirit_writer.h
+ ${CMAKE_SOURCE_DIR}/json_spirit/json_spirit_writer_template.h
+ ${CMAKE_SOURCE_DIR}/json_spirit/json_spirit_writer_options.h
+- DESTINATION include)
++ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
+
+ INSTALL(
+ FILES
+- ${CMAKE_BINARY_DIR}/json_spirit/libjson_spirit.a
+- DESTINATION lib)
++ ${CMAKE_SOURCE_DIR}/FindLibJsonSpirit.cmake
++ DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/cmake/Modules)
+
+ INCLUDE(CPack)
+diff --git a/FindLibJsonSpirit.cmake b/FindLibJsonSpirit.cmake
+new file mode 100644
+index 0000000..7ee7687
+--- /dev/null
++++ b/FindLibJsonSpirit.cmake
+@@ -0,0 +1,64 @@
++# FindLibJsonSpirit - Find libjson_spirit headers and libraries.
++#
++# Sample:
++#
++# SET( LibJsonSpirit_USE_STATIC_LIBS OFF )
++# FIND_PACKAGE( LibJsonSpirit REQUIRED )
++# IF( LibJsonSpirit_FOUND )
++# INCLUDE_DIRECTORIES( ${LibJsonSpirit_INCLUDE_DIRS} )
++# TARGET_LINK_LIBRARIES( ... ${LibJsonSpirit_LIBRARIES} )
++# ENDIF()
++#
++# Variables used by this module need to be set before calling find_package
++#
++# LibJsonSpirit_USE_STATIC_LIBS Can be set to ON to force the use of the static
++# libjson_spirit libraries. Defaults to OFF.
++#
++# Variables provided by this module:
++#
++# LibJsonSpirit_FOUND Include dir, libjson_spirit libraries.
++#
++# LibJsonSpirit_LIBRARIES Link to these to use all the libraries you specified.
++#
++# LibJsonSpirit_INCLUDE_DIRS Include directories.
++#
++# For each component you specify in find_package(), the following (UPPER-CASE)
++# variables are set to pick and choose components instead of just using
++# LibJsonSpirit_LIBRARIES:
++#
++# LIBJSONSPIRIT_FOUND TRUE if libjson_spirit was found
++# LIBJSONSPIRIT_LIBRARY libjson_spirit library
++#
++
++# Support preference of static libs by adjusting CMAKE_FIND_LIBRARY_SUFFIXES
++IF(LibJsonSpirit_USE_STATIC_LIBS)
++ SET( _ORIG_CMAKE_FIND_LIBRARY_SUFFIXES ${CMAKE_FIND_LIBRARY_SUFFIXES})
++ SET(CMAKE_FIND_LIBRARY_SUFFIXES .a )
++ENDIF()
++
++# Look for the header files
++UNSET(LibJsonSpirit_INCLUDE_DIRS CACHE)
++FIND_PATH(LibJsonSpirit_INCLUDE_DIRS NAMES json_spirit.h)
++
++# Look for the core library
++UNSET(LIBJSONSPIRIT_LIBRARY CACHE)
++FIND_LIBRARY(LIBJSONSPIRIT_LIBRARY NAMES json_spirit)
++FIND_PACKAGE_HANDLE_STANDARD_ARGS(LibJsonSpirit DEFAULT_MSG LIBJSONSPIRIT_LIBRARY LibJsonSpirit_INCLUDE_DIRS)
++MARK_AS_ADVANCED(
++ LIBJSONSPIRIT_FOUND
++ LIBJSONSPIRIT_LIBRARY
++)
++
++# Prepare return values and collectiong more components
++SET(LibJsonSpirit_FOUND ${LIBJSONSPIRIT_FOUND})
++SET(LibJsonSpirit_LIBRARIES ${LIBJSONSPIRIT_LIBRARY})
++MARK_AS_ADVANCED(
++ LibJsonSpirit_FOUND
++ LibJsonSpirit_LIBRARIES
++ LibJsonSpirit_INCLUDE_DIRS
++)
++
++# Restore CMAKE_FIND_LIBRARY_SUFFIXES
++IF(LibJsonSpirit_USE_STATIC_LIBS)
++ SET(CMAKE_FIND_LIBRARY_SUFFIXES ${_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES} )
++ENDIF()
+diff --git a/json_spirit/CMakeLists.txt b/json_spirit/CMakeLists.txt
+index fb52818..c1613b2 100644
+--- a/json_spirit/CMakeLists.txt
++++ b/json_spirit/CMakeLists.txt
+@@ -13,5 +13,19 @@ json_spirit_writer_template.h )
+ FIND_PACKAGE(Boost 1.34 REQUIRED)
+ INCLUDE_DIRECTORIES(${Boost_INCLUDE_DIR})
+
+-ADD_LIBRARY(json_spirit STATIC ${JSON_SPIRIT_SRCS})
++SET(JSONSPIRIT_SOVERSION_MAJOR "4")
++SET(JSONSPIRIT_SOVERSION_MINOR "0")
++SET(JSONSPIRIT_SOVERSION_PATCH "8")
+
++ADD_LIBRARY(json_spirit SHARED ${JSON_SPIRIT_SRCS})
++SET_TARGET_PROPERTIES(json_spirit PROPERTIES PROJECT_LABEL "Json Spirit Library")
++SET_TARGET_PROPERTIES(json_spirit PROPERTIES COMPILE_FLAGS ${CMAKE_SHARED_LIBRARY_C_FLAGS})
++SET_TARGET_PROPERTIES(json_spirit PROPERTIES VERSION ${JSONSPIRIT_SOVERSION_MAJOR}.${JSONSPIRIT_SOVERSION_MINOR}.${JSONSPIRIT_SOVERSION_PATCH})
++SET_TARGET_PROPERTIES(json_spirit PROPERTIES SOVERSION ${JSONSPIRIT_SOVERSION_MAJOR})
++INSTALL(TARGETS json_spirit DESTINATION ${CMAKE_INSTALL_LIBDIR})
++
++ADD_LIBRARY(json_spirit_static STATIC ${JSON_SPIRIT_SRCS})
++SET_TARGET_PROPERTIES(json_spirit_static PROPERTIES PROJECT_LABEL "Json Spirit Static Library")
++SET_TARGET_PROPERTIES(json_spirit_static PROPERTIES OUTPUT_NAME "json_spirit")
++SET_TARGET_PROPERTIES(json_spirit_static PROPERTIES SOVERSION ${JSONSPIRIT_SOVERSION_MAJOR})
++INSTALL(TARGETS json_spirit_static DESTINATION ${CMAKE_INSTALL_LIBDIR})
+--
+1.9.1
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/json-spirit/json-spirit/json_spirit_v4.08.zip b/import-layers/meta-openembedded/meta-oe/recipes-devtools/json-spirit/json-spirit/json_spirit_v4.08.zip
new file mode 100644
index 000000000..27d46b15a
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/json-spirit/json-spirit/json_spirit_v4.08.zip
Binary files differ
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/json-spirit/json-spirit_4.08.bb b/import-layers/meta-openembedded/meta-oe/recipes-devtools/json-spirit/json-spirit_4.08.bb
new file mode 100644
index 000000000..2f456bf64
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/json-spirit/json-spirit_4.08.bb
@@ -0,0 +1,26 @@
+SUMMARY = "A C++ JSON Parser/Generator Implemented with Boost Spirit."
+DESCRIPTION = "JSON Spirit, a C++ library that reads and writes JSON files or streams. \
+It is written using the Boost Spirit parser generator. If you are \
+already using Boost, you can use JSON Spirit without any additional \
+dependencies."
+HOMEPAGE = "https://www.codeproject.com/kb/recipes/json_spirit.aspx"
+SECTION = "libs"
+PRIORITY = "optional"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=278ef6183dec4aae1524fccc4b0113c9"
+
+SRC_URI = "file://json_spirit_v${PV}.zip \
+ file://0001-Adjust-the-cmake-files.patch \
+"
+
+S = "${WORKDIR}/json_spirit_v${PV}"
+
+DEPENDS = "boost"
+
+LDFLAGS += "-Wl,--as-needed -latomic -Wl,--no-as-needed"
+
+inherit cmake
+
+FILES_${PN}-dev += "${datadir}/cmake/Modules/FindLibJsonSpirit.cmake"
+
+BBCLASSEXTEND = "nativesdk"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/jsoncpp/jsoncpp_1.8.0.bb b/import-layers/meta-openembedded/meta-oe/recipes-devtools/jsoncpp/jsoncpp_1.8.0.bb
new file mode 100644
index 000000000..fe6ae240a
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/jsoncpp/jsoncpp_1.8.0.bb
@@ -0,0 +1,21 @@
+SUMMARY = "JSON C++ lib used to read and write json file."
+DESCRIPTION = "Jsoncpp is an implementation of a JSON (http://json.org) reader \
+ and writer in C++. JSON (JavaScript Object Notation) is a \
+ lightweight data-interchange format. It is easy for humans to \
+ read and write. It is easy for machines to parse and generate."
+
+HOMEPAGE = "https://github.com/open-source-parsers/jsoncpp"
+
+SECTION = "libs"
+
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=c56ee55c03a55f8105b969d8270632ce"
+
+SRCREV = "f700fe455940d4d325c088b9174a173e130e0fa8"
+SRC_URI = "git://github.com/open-source-parsers/jsoncpp"
+
+S = "${WORKDIR}/git"
+
+inherit cmake
+
+EXTRA_OECMAKE += "-DBUILD_SHARED_LIBS=ON -DJSONCPP_WITH_TESTS=OFF"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/jsonrpc/jsonrpc/0001-cmake-replace-hardcoded-lib-CMAKE_LIBRARY_PATH-with-.patch b/import-layers/meta-openembedded/meta-oe/recipes-devtools/jsonrpc/jsonrpc/0001-cmake-replace-hardcoded-lib-CMAKE_LIBRARY_PATH-with-.patch
new file mode 100644
index 000000000..748e4da1a
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/jsonrpc/jsonrpc/0001-cmake-replace-hardcoded-lib-CMAKE_LIBRARY_PATH-with-.patch
@@ -0,0 +1,77 @@
+From ac61124df17ab76527508bbb9a3115d4d6cc1af6 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Mon, 21 Nov 2016 11:26:26 -0800
+Subject: [PATCH] cmake: replace hardcoded lib/${CMAKE_LIBRARY_PATH} with
+ {CMAKE_INSTALL_LIBDIR}
+
+Fixes
+| CMake Error at src/jsonrpccpp/CMakeLists.txt:207 (install):
+| install TARGETS given unknown argument "/lib".
+
+and
+
+Wrong install paths during cross compile
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/jsonrpccpp/CMakeLists.txt | 8 ++++----
+ src/stubgenerator/CMakeLists.txt | 6 +++---
+ 2 files changed, 7 insertions(+), 7 deletions(-)
+
+diff --git a/src/jsonrpccpp/CMakeLists.txt b/src/jsonrpccpp/CMakeLists.txt
+index e4a1eb5..13f9056 100644
+--- a/src/jsonrpccpp/CMakeLists.txt
++++ b/src/jsonrpccpp/CMakeLists.txt
+@@ -205,15 +205,15 @@ if (WIN32)
+ endif()
+
+ install(TARGETS ${ALL_LIBS}
+- LIBRARY DESTINATION lib${LIB_SUFFIX}/${CMAKE_LIBRARY_PATH}
+- ARCHIVE DESTINATION lib${LIB_SUFFIX}/${CMAKE_LIBRARY_PATH}
++ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
++ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
+ RUNTIME DESTINATION bin
+ )
+
+ #set pkg-config
+ get_filename_component(FULL_PATH_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX} ABSOLUTE)
+ set(FULL_PATH_INCLUDEDIR "${FULL_PATH_INSTALL_PREFIX}/include")
+-set(FULL_PATH_LIBDIR "${FULL_PATH_INSTALL_PREFIX}/lib/${CMAKE_LIBRARY_PATH}")
++set(FULL_PATH_LIBDIR "${FULL_PATH_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}")
+
+ CONFIGURE_FILE(${PROJECT_SOURCE_DIR}/cmake/libjsonrpccpp-client.pc.cmake ${CMAKE_BINARY_DIR}/libjsonrpccpp-client.pc)
+ CONFIGURE_FILE(${PROJECT_SOURCE_DIR}/cmake/libjsonrpccpp-server.pc.cmake ${CMAKE_BINARY_DIR}/libjsonrpccpp-server.pc)
+@@ -223,6 +223,6 @@ INSTALL(FILES
+ "${CMAKE_BINARY_DIR}/libjsonrpccpp-server.pc"
+ "${CMAKE_BINARY_DIR}/libjsonrpccpp-client.pc"
+ "${CMAKE_BINARY_DIR}/libjsonrpccpp-common.pc"
+- DESTINATION "lib${LIB_SUFFIX}/${CMAKE_LIBRARY_PATH}/pkgconfig")
++ DESTINATION "${CMAKE_INSTALL_LIBDIR}/pkgconfig")
+
+
+diff --git a/src/stubgenerator/CMakeLists.txt b/src/stubgenerator/CMakeLists.txt
+index f9dbe4c..b57b0fe 100644
+--- a/src/stubgenerator/CMakeLists.txt
++++ b/src/stubgenerator/CMakeLists.txt
+@@ -58,15 +58,15 @@ CONFIGURE_FILE(${CMAKE_SOURCE_DIR}/cmake/libjsonrpccpp-stub.pc.cmake ${CMAKE_BIN
+
+ INSTALL(FILES
+ "${CMAKE_BINARY_DIR}/libjsonrpccpp-stub.pc"
+- DESTINATION "lib/${CMAKE_LIBRARY_PATH}/pkgconfig")
++ DESTINATION "${CMAKE_INSTALL_LIBDIR}/pkgconfig")
+
+ install(DIRECTORY ${CMAKE_SOURCE_DIR}/src/stubgenerator/
+ DESTINATION include/jsonrpccpp/stubgen
+ FILES_MATCHING PATTERN "*.h")
+
+ install(TARGETS ${ALL_LIBS} jsonrpcstub
+- LIBRARY DESTINATION lib${LIB_SUFFIX}/${CMAKE_LIBRARY_PATH}
+- ARCHIVE DESTINATION lib${LIB_SUFFIX}/${CMAKE_LIBRARY_PATH}
++ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
++ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
+ RUNTIME DESTINATION bin
+ )
+
+--
+2.10.2
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/jsonrpc/jsonrpc/0001-filedescriptorclient-Typecast-min-arguments-correctl.patch b/import-layers/meta-openembedded/meta-oe/recipes-devtools/jsonrpc/jsonrpc/0001-filedescriptorclient-Typecast-min-arguments-correctl.patch
new file mode 100644
index 000000000..d21e97950
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/jsonrpc/jsonrpc/0001-filedescriptorclient-Typecast-min-arguments-correctl.patch
@@ -0,0 +1,33 @@
+From 9500f12f5d827840634311d6ca972d9551211e4d Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Mon, 21 Nov 2016 01:00:51 -0800
+Subject: [PATCH] filedescriptorclient: Typecast min() arguments correctly
+
+Fixes
+
+| /mnt/a/build/tmp-glibc/work/cortexa7hf-neon-vfpv4-oe-linux-gnueabi/jsonrpc/0.7.0-r0/git/src/jsonrpccp
+p/client/connectors/filedescriptorclient.cpp:47:92: note: deduced conflicting types for parameter 'co
+nst _Tp' ('unsigned int' and 'long unsigned int')
+| ssize_t byteWritten = write(outputfd, toSend.c_str(), min(toSend.size(), MAX_WRITE_SIZE));
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/jsonrpccpp/client/connectors/filedescriptorclient.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/jsonrpccpp/client/connectors/filedescriptorclient.cpp b/src/jsonrpccpp/client/connectors/filedescriptorclient.cpp
+index 77aac7e..6325b5c 100644
+--- a/src/jsonrpccpp/client/connectors/filedescriptorclient.cpp
++++ b/src/jsonrpccpp/client/connectors/filedescriptorclient.cpp
+@@ -43,7 +43,7 @@ void FileDescriptorClient::SendRPCMessage(const std::string& message,
+ string toSend = message;
+ do
+ {
+- ssize_t byteWritten = write(outputfd, toSend.c_str(), min(toSend.size(), MAX_WRITE_SIZE));
++ ssize_t byteWritten = write(outputfd, toSend.c_str(), min((long unsigned int)toSend.size(), MAX_WRITE_SIZE));
+ if (byteWritten < 1)
+ throw JsonRpcException(Errors::ERROR_CLIENT_CONNECTOR,
+ "Unknown error occured while writing to the output file descriptor");
+--
+2.10.2
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/jsonrpc/jsonrpc/0001-filedescriptorserver-Include-sys-select.h-before-oth.patch b/import-layers/meta-openembedded/meta-oe/recipes-devtools/jsonrpc/jsonrpc/0001-filedescriptorserver-Include-sys-select.h-before-oth.patch
new file mode 100644
index 000000000..3b9068a7d
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/jsonrpc/jsonrpc/0001-filedescriptorserver-Include-sys-select.h-before-oth.patch
@@ -0,0 +1,34 @@
+From c7aad10628949e126f50e3264b5bc7eb417347c6 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Mon, 21 Nov 2016 01:25:10 -0800
+Subject: [PATCH] filedescriptorserver: Include sys/select.h before other
+ headers
+
+Fixes errors e.g.
+| /mnt/a/build/tmp-glibc/work/cortexa7hf-neon-vfpv4-oe-linux-gnueabi/jsonrpc/0.7.0-r0/git/src/jsonrpccp
+p/server/connectors/filedescriptorserver.h:63:7: error: unknown type name 'fd_set'
+| fd_set read_fds;
+| ^
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/jsonrpccpp/server/connectors/filedescriptorserver.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/jsonrpccpp/server/connectors/filedescriptorserver.cpp b/src/jsonrpccpp/server/connectors/filedescriptorserver.cpp
+index 9d74223..8e019ca 100644
+--- a/src/jsonrpccpp/server/connectors/filedescriptorserver.cpp
++++ b/src/jsonrpccpp/server/connectors/filedescriptorserver.cpp
+@@ -7,8 +7,8 @@
+ * @license See attached LICENSE.txt
+ ************************************************************************/
+
+-#include "filedescriptorserver.h"
+ #include <sys/select.h>
++#include "filedescriptorserver.h"
+ #include <sys/types.h>
+ #include <sys/stat.h>
+ #include <unistd.h>
+--
+2.10.2
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/jsonrpc/jsonrpc/0001-memset-and-family-needs-to-include-string.h.patch b/import-layers/meta-openembedded/meta-oe/recipes-devtools/jsonrpc/jsonrpc/0001-memset-and-family-needs-to-include-string.h.patch
new file mode 100644
index 000000000..21ef98bf5
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/jsonrpc/jsonrpc/0001-memset-and-family-needs-to-include-string.h.patch
@@ -0,0 +1,26 @@
+From f5416f1c2b2989f94163a2ae4b91c9b9fa13c620 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 31 Mar 2017 13:32:31 -0700
+Subject: [PATCH 1/2] memset() and family needs to include string.h
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/jsonrpccpp/server/connectors/unixdomainsocketserver.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/jsonrpccpp/server/connectors/unixdomainsocketserver.cpp b/src/jsonrpccpp/server/connectors/unixdomainsocketserver.cpp
+index 9fca57b..e63c49e 100644
+--- a/src/jsonrpccpp/server/connectors/unixdomainsocketserver.cpp
++++ b/src/jsonrpccpp/server/connectors/unixdomainsocketserver.cpp
+@@ -16,7 +16,7 @@
+ #include <cstdio>
+ #include <fcntl.h>
+ #include <unistd.h>
+-#include <string>
++#include <cstring>
+
+ using namespace jsonrpc;
+ using namespace std;
+--
+2.12.1
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/jsonrpc/jsonrpc/0002-Fix-build-problem-on-Mac.patch b/import-layers/meta-openembedded/meta-oe/recipes-devtools/jsonrpc/jsonrpc/0002-Fix-build-problem-on-Mac.patch
new file mode 100644
index 000000000..aece45b02
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/jsonrpc/jsonrpc/0002-Fix-build-problem-on-Mac.patch
@@ -0,0 +1,27 @@
+From 79050ef9607f242e0d509969b19e9390220c3411 Mon Sep 17 00:00:00 2001
+From: Yongwei Wu <wuyongwei@gmail.com>
+Date: Sat, 31 Dec 2016 11:57:11 +0800
+Subject: [PATCH 2/2] Fix build problem on Mac.
+
+__suseconds_t is not defined on Mac/BSD; use the POSIX-conformant
+suseconds_t.
+---
+ src/jsonrpccpp/server/connectors/filedescriptorserver.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/jsonrpccpp/server/connectors/filedescriptorserver.cpp b/src/jsonrpccpp/server/connectors/filedescriptorserver.cpp
+index 8e019ca..68107f2 100644
+--- a/src/jsonrpccpp/server/connectors/filedescriptorserver.cpp
++++ b/src/jsonrpccpp/server/connectors/filedescriptorserver.cpp
+@@ -122,7 +122,7 @@ int FileDescriptorServer::WaitForRead() {
+ FD_ZERO(&except_fds);
+ FD_SET(inputfd, &read_fds);
+ timeout.tv_sec = 0;
+- timeout.tv_usec = (__suseconds_t) (READ_TIMEOUT * 1000000);
++ timeout.tv_usec = (suseconds_t) (READ_TIMEOUT * 1000000);
+ // Wait for something to read
+ return select(inputfd + 1, &read_fds, &write_fds, &except_fds, &timeout);
+ }
+--
+2.12.1
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/jsonrpc/jsonrpc_0.7.0.bb b/import-layers/meta-openembedded/meta-oe/recipes-devtools/jsonrpc/jsonrpc_0.7.0.bb
new file mode 100644
index 000000000..eb1ff65b6
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/jsonrpc/jsonrpc_0.7.0.bb
@@ -0,0 +1,32 @@
+SUMMARY = "C++ framework for json-rpc 1.0 and 2.0"
+DESCRIPTION = "JsonRpc-Cpp is an OpenSource implementation of JSON-RPC \
+ protocol in C++. JSON-RPC is a lightweight remote procedure \
+ call protocol similar to XML-RPC."
+HOMEPAGE = "https://github.com/cinemast/libjson-rpc-cpp"
+
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=ee72d601854d5d2a065cf642883c489b"
+
+PV = "0.7.0+git${SRCPV}"
+
+SRC_URI = "git://github.com/cinemast/libjson-rpc-cpp \
+ file://0001-cmake-replace-hardcoded-lib-CMAKE_LIBRARY_PATH-with-.patch \
+ file://0001-filedescriptorclient-Typecast-min-arguments-correctl.patch \
+ file://0001-filedescriptorserver-Include-sys-select.h-before-oth.patch \
+ file://0001-memset-and-family-needs-to-include-string.h.patch \
+ file://0002-Fix-build-problem-on-Mac.patch \
+ "
+SRCREV = "ccbdb41388bdd929828941652da816bf52a0580e"
+
+SECTION = "libs"
+
+DEPENDS = "curl jsoncpp libmicrohttpd"
+
+S = "${WORKDIR}/git"
+
+inherit cmake
+
+EXTRA_OECMAKE += "-DCOMPILE_TESTS=NO -DCOMPILE_STUBGEN=NO -DCOMPILE_EXAMPLES=NO \
+ -DBUILD_SHARED_LIBS=YES -DBUILD_STATIC_LIBS=YES \
+ -DCMAKE_LIBRARY_PATH=${libdir} \
+"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/libedit/libedit/stdc-predef.patch b/import-layers/meta-openembedded/meta-oe/recipes-devtools/libedit/libedit/stdc-predef.patch
new file mode 100644
index 000000000..c95cdc9d2
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/libedit/libedit/stdc-predef.patch
@@ -0,0 +1,17 @@
+__STDC_ISO_10646__ is defined in stdc-predef.h
+therefore include it to see if its there on a platform
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+Index: libedit-20160903-3.1/src/chartype.h
+===================================================================
+--- libedit-20160903-3.1.orig/src/chartype.h
++++ libedit-20160903-3.1/src/chartype.h
+@@ -29,6 +29,7 @@
+ #ifndef _h_chartype_f
+ #define _h_chartype_f
+
++#include <stdc-predef.h>
+ /* Ideally we should also test the value of the define to see if it
+ * supports non-BMP code points without requiring UTF-16, but nothing
+ * seems to actually advertise this properly, despite Unicode 3.1 having
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/libedit/libedit_20160618-3.1.bb b/import-layers/meta-openembedded/meta-oe/recipes-devtools/libedit/libedit_20170329-3.1.bb
index bda421d81..fc2467112 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-devtools/libedit/libedit_20160618-3.1.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/libedit/libedit_20170329-3.1.bb
@@ -12,9 +12,10 @@ inherit autotools
# upstream site does not allow wget's User-Agent
FETCHCMD_wget += "-U bitbake"
-SRC_URI = "http://www.thrysoee.dk/editline/${BPN}-${PV}.tar.gz"
+SRC_URI = "http://www.thrysoee.dk/editline/${BPN}-${PV}.tar.gz \
+ file://stdc-predef.patch \
+ "
+SRC_URI[md5sum] = "c57a0690e62ef523c083598730272cfd"
+SRC_URI[sha256sum] = "91f2d90fbd2a048ff6dad7131d9a39e690fd8a8fd982a353f1333dd4017dd4be"
S = "${WORKDIR}/${BPN}-${PV}"
-
-SRC_URI[md5sum] = "b6e60f326a3fce91bea1a6fe4700af58"
-SRC_URI[sha256sum] = "b6b159c0c6ec8a7f349ea2a75d8b960efa346c462c1ac4921f1ac0de85a9f5d6"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/libfribidi/fribidi_0.19.7.bb b/import-layers/meta-openembedded/meta-oe/recipes-devtools/libfribidi/fribidi_0.19.7.bb
index e79de6643..423a9148a 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-devtools/libfribidi/fribidi_0.19.7.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/libfribidi/fribidi_0.19.7.bb
@@ -16,3 +16,5 @@ SRC_URI = "http://fribidi.org/download/fribidi-${PV}.tar.bz2"
SRC_URI[md5sum] = "6c7e7cfdd39c908f7ac619351c1c5c23"
SRC_URI[sha256sum] = "08222a6212bbc2276a2d55c3bf370109ae4a35b689acbc66571ad2a670595a8e"
+
+CVE_PRODUCT = "gnu_fribidi"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/libgee/libgee_0.18.0.bb b/import-layers/meta-openembedded/meta-oe/recipes-devtools/libgee/libgee_0.18.0.bb
index 3fa9d9fc2..6386f1ffb 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-devtools/libgee/libgee_0.18.0.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/libgee/libgee_0.18.0.bb
@@ -18,7 +18,7 @@ do_configure_prepend() {
done
}
-SHRT_VER = "${@d.getVar('PV',1).split('.')[0]}.${@d.getVar('PV',1).split('.')[1]}"
+SHRT_VER = "${@d.getVar('PV').split('.')[0]}.${@d.getVar('PV').split('.')[1]}"
SRC_URI = "http://ftp.gnome.org/pub/GNOME/sources/libgee/${SHRT_VER}/${BP}.tar.xz"
SRC_URI[md5sum] = "29ea6125e653d7e60b49a9a9544abc96"
SRC_URI[sha256sum] = "4ad99ef937d071b4883c061df40bfe233f7649d50c354cf81235f180b4244399"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/librcf/librcf/0001-Add-CMake-build-files.patch b/import-layers/meta-openembedded/meta-oe/recipes-devtools/librcf/librcf/0001-Add-CMake-build-files.patch
new file mode 100644
index 000000000..cd0d1433f
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/librcf/librcf/0001-Add-CMake-build-files.patch
@@ -0,0 +1,302 @@
+From 613297214d78ee10111e74e90e025166ebbcad9f Mon Sep 17 00:00:00 2001
+From: Peter Liu <peter.x.liu@external.atlascopco.com>
+Date: Sun, 5 Mar 2017 16:15:40 +0100
+Subject: [PATCH] Add CMake build files
+
+Upstream-Status: Pending
+
+Signed-off-by: Peter Liu <peter.x.liu@external.atlascopco.com>
+---
+ CMakeLists.txt | 147 +++++++++++++++++++++++++++++++++++++++++++++++++++++
+ FindLibRcf.cmake | 63 +++++++++++++++++++++++
+ VERSION.cmake | 21 ++++++++
+ src/CMakeLists.txt | 25 +++++++++
+ 4 files changed, 256 insertions(+)
+ create mode 100644 CMakeLists.txt
+ create mode 100644 FindLibRcf.cmake
+ create mode 100644 VERSION.cmake
+ create mode 100755 src/CMakeLists.txt
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+new file mode 100644
+index 0000000..f6e24be
+--- /dev/null
++++ b/CMakeLists.txt
+@@ -0,0 +1,147 @@
++PROJECT (librcf)
++
++CMAKE_MINIMUM_REQUIRED (VERSION 2.6)
++
++####################################################################
++# OPTION #
++####################################################################
++OPTION (LIBRCF_USE_OPENSSL "Build with OpenSSL support?" OFF)
++OPTION (LIBRCF_OPENSSL_STATIC "Enable static linking to OpenSSL?" OFF)
++OPTION (LIBRCF_USE_ZLIB "Build with zlib support?" OFF)
++OPTION (LIBRCF_ZLIB_STATIC "Enable static linking to zlib?" OFF)
++OPTION (LIBRCF_USE_SF_SERIALIZATION "Build with SF serialization support?" ON)
++OPTION (LIBRCF_USE_BOOST_SERIALIZATION "Build with Boost.Serialization support?" OFF)
++OPTION (LIBRCF_USE_BOOST_FILESYSTEM "Build with Boost.Filesystem support (required for file transfer support)?" OFF)
++OPTION (LIBRCF_USE_BOOST_ASIO "Build with Boost asio support?" ON)
++OPTION (LIBRCF_USE_PROTOBUF "Build with Protocol Buffer support?" OFF)
++OPTION (LIBRCF_USE_JSON "Build with JSON Spirit (required for JSON-RPC support)?" OFF)
++OPTION (LIBRCF_USE_IPV6 "Build with IPv6 support?" OFF)
++OPTION (LIBRCF_USE_CUSTOM_ALLOCATOR "Build with custom allocator support?" OFF)
++OPTION (LIBRCF_BUILD_DLL "Build a DLL exporting RCF?" OFF)
++OPTION (LIBRCF_AUTO_INIT_DEINIT "Enable automatic RCF initialization and deinitialization?" OFF)
++OPTION (LIBRCF_BUILD_STATIC_LIBS "Build the static library?" ON)
++OPTION (LIBRCF_BUILD_SHARED_LIBS "Build the shared library?" ON)
++OPTION (LIBRCF_BUILD_DEMOS "Build demo programs?" ON)
++
++####################################################################
++# CONFIGURATION #
++####################################################################
++INCLUDE (${CMAKE_SOURCE_DIR}/VERSION.cmake)
++
++SET (LIBRCF_LIBRARIES "-lpthread -ldl")
++INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR}/include)
++
++IF (LIBRCF_USE_OPENSSL)
++ IF (NOT OPENSSL_FOUND)
++ FIND_PACKAGE (OpenSSL REQUIRED)
++ ENDIF (NOT OPENSSL_FOUND)
++ INCLUDE_DIRECTORIES (${OPENSSL_INCLUDE_DIR})
++ ADD_DEFINITIONS (-DRCF_USE_OPENSSL)
++ENDIF (LIBRCF_USE_OPENSSL)
++
++IF (LIBRCF_OPENSSL_STATIC)
++ LIST (APPEND LIBRCF_LIBRARIES ${OPENSSL_LIBRARIES})
++ ADD_DEFINITIONS (-DRCF_OPENSSL_STATIC)
++ENDIF (LIBRCF_OPENSSL_STATIC)
++
++IF (LIBRCF_USE_ZLIB)
++ IF (NOT ZLIB_FOUND)
++ FIND_PACKAGE (ZLIB REQUIRED)
++ ENDIF (NOT ZLIB_FOUND)
++ INCLUDE_DIRECTORIES (${ZLIB_INCLUDE_DIR})
++ ADD_DEFINITIONS (-DRCF_USE_ZLIB)
++ENDIF (LIBRCF_USE_ZLIB)
++
++IF (LIBRCF_ZLIB_STATIC)
++ LIST (APPEND LIBRCF_LIBRARIES ${ZLIB_LIBRARIES})
++ ADD_DEFINITIONS (-DRCF_ZLIB_STATIC)
++ENDIF (LIBRCF_ZLIB_STATIC)
++
++IF (LIBRCF_USE_SF_SERIALIZATION)
++ IF (NOT Boost_SYSTEM_FOUND)
++ FIND_PACKAGE (Boost REQUIRED COMPONENTS system)
++ ENDIF (NOT Boost_SYSTEM_FOUND)
++ INCLUDE_DIRECTORIES (${Boost_INCLUDE_DIR})
++ LIST (APPEND LIBRCF_LIBRARIES ${Boost_SYSTEM_LIBRARY})
++ ADD_DEFINITIONS (-DRCF_USE_SF_SERIALIZATION)
++ENDIF (LIBRCF_USE_SF_SERIALIZATION)
++
++IF (LIBRCF_USE_BOOST_SERIALIZATION)
++ IF (NOT Boost_SERIALIZATION_FOUND)
++ FIND_PACKAGE (Boost REQUIRED COMPONENTS serialization)
++ ENDIF (NOT Boost_SERIALIZATION_FOUND)
++ INCLUDE_DIRECTORIES (${Boost_INCLUDE_DIR})
++ LIST (APPEND LIBRCF_LIBRARIES ${Boost_SERIALIZATION_LIBRARY})
++ ADD_DEFINITIONS (-DRCF_USE_BOOST_SERIALIZATION)
++ENDIF (LIBRCF_USE_BOOST_SERIALIZATION)
++
++IF (LIBRCF_USE_BOOST_FILESYSTEM)
++ IF (NOT Boost_FILESYSTEM_FOUND)
++ FIND_PACKAGE (Boost REQUIRED COMPONENTS filesystem system)
++ ENDIF (NOT Boost_FILESYSTEM_FOUND)
++ INCLUDE_DIRECTORIES (${Boost_INCLUDE_DIR})
++ LIST (APPEND LIBRCF_LIBRARIES ${Boost_FILESYSTEM_LIBRARY})
++ LIST (APPEND LIBRCF_LIBRARIES ${Boost_SYSTEM_LIBRARY})
++ ADD_DEFINITIONS (-DRCF_USE_BOOST_FILESYSTEM)
++ENDIF (LIBRCF_USE_BOOST_FILESYSTEM)
++
++IF (LIBRCF_USE_BOOST_ASIO)
++ IF (NOT Boost_FOUND)
++ FIND_PACKAGE (Boost REQUIRED)
++ ENDIF (NOT Boost_FOUND)
++ INCLUDE_DIRECTORIES (${Boost_INCLUDE_DIR})
++ ADD_DEFINITIONS (-DRCF_USE_BOOST_ASIO)
++ENDIF (LIBRCF_USE_BOOST_ASIO)
++
++IF (LIBRCF_USE_PROTOBUF)
++ IF(NOT Protobuf_FOUND)
++ FIND_PACKAGE (Protobuf REQUIRED)
++ ENDIF (NOT Protobuf_FOUND)
++ INCLUDE_DIRECTORIES (${Protobuf_INCLUDE_DIR})
++ LIST (APPEND LIBRCF_LIBRARIES ${Protobuf_LIBRARIES})
++ ADD_DEFINITIONS (-DRCF_USE_PROTOBUF)
++ENDIF (LIBRCF_USE_PROTOBUF)
++
++IF (LIBRCF_USE_JSON)
++ IF (NOT LibJsonSpirit_FOUND)
++ FIND_PACKAGE (LibJsonSpirit REQUIRED)
++ ENDIF (NOT LibJsonSpirit_FOUND)
++ INCLUDE_DIRECTORIES (${LibJsonSpirit_INCLUDE_DIR})
++ LIST (APPEND LIBRCF_LIBRARIES ${LibJsonSpirit_LIBRARIES})
++ ADD_DEFINITIONS (-DRCF_USE_JSON)
++ENDIF (LIBRCF_USE_JSON)
++
++IF (LIBRCF_USE_IPV6)
++ ADD_DEFINITIONS (-DRCF_USE_IPV6)
++ENDIF (LIBRCF_USE_IPV6)
++
++IF (LIBRCF_USE_CUSTOM_ALLOCATOR)
++ ADD_DEFINITIONS (-DRCF_USE_CUSTOM_ALLOCATOR)
++ENDIF (LIBRCF_USE_CUSTOM_ALLOCATOR)
++
++IF (LIBRCF_BUILD_DLL)
++ ADD_DEFINITIONS (-DRCF_BUILD_DLL)
++ENDIF (LIBRCF_BUILD_DLL)
++
++IF (LIBRCF_AUTO_INIT_DEINIT)
++ ADD_DEFINITIONS (-DRCF_AUTO_INIT_DEINIT)
++ENDIF (LIBRCF_AUTO_INIT_DEINIT)
++
++####################################################################
++# SUBDIRECTORY #
++####################################################################
++ADD_SUBDIRECTORY (src)
++
++IF (LIBRCF_BUILD_DEMOS)
++ # Server
++ ADD_EXECUTABLE (RcfServer demo/Server.cpp)
++ TARGET_LINK_LIBRARIES (RcfServer rcf ${LIBRCF_LIBRARIES})
++ INSTALL (TARGETS RcfServer DESTINATION ${CMAKE_INSTALL_BINDIR})
++
++ # Client
++ ADD_EXECUTABLE (RcfClient demo/Client.cpp)
++ TARGET_LINK_LIBRARIES (RcfClient rcf ${LIBRCF_LIBRARIES})
++ INSTALL (TARGETS RcfClient DESTINATION ${CMAKE_INSTALL_BINDIR})
++ENDIF (LIBRCF_BUILD_DEMOS)
++
++INSTALL (FILES ${CMAKE_SOURCE_DIR}/FindLibRcf.cmake DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/cmake/Modules)
+diff --git a/FindLibRcf.cmake b/FindLibRcf.cmake
+new file mode 100644
+index 0000000..9d7d8cd
+--- /dev/null
++++ b/FindLibRcf.cmake
+@@ -0,0 +1,63 @@
++# FindLibRcf - Find librcf headers and libraries.
++#
++# Sample:
++#
++# SET( LibRcf_USE_STATIC_LIBS OFF )
++# FIND_PACKAGE( LibRcf REQUIRED )
++# IF( LibRcf_FOUND )
++# INCLUDE_DIRECTORIES( ${LibRcf_INCLUDE_DIRS} )
++# TARGET_LINK_LIBRARIES( ... ${LibRcf_LIBRARIES} )
++# ENDIF()
++#
++# Variables used by this module need to be set before calling find_package
++#
++# LibRcf_USE_STATIC_LIBS Can be set to ON to force the use of the static
++# librcf libraries. Defaults to OFF.
++#
++# Variables provided by this module:
++#
++# LibRcf_FOUND Include dir, librcf libraries.
++#
++# LibRcf_LIBRARIES Link to these to use all the libraries you specified.
++#
++# LibRcf_INCLUDE_DIRS Include directories.
++#
++# For each component you specify in find_package(), the following (UPPER-CASE)
++# variables are set to pick and choose components instead of just using LibRcf_LIBRARIES:
++#
++# LIBRCF_FOUND TRUE if librcf was found
++# LIBRCF_LIBRARY librcf libraries
++#
++
++# Support preference of static libs by adjusting CMAKE_FIND_LIBRARY_SUFFIXES
++IF(LibRcf_USE_STATIC_LIBS)
++ SET( _ORIG_CMAKE_FIND_LIBRARY_SUFFIXES ${CMAKE_FIND_LIBRARY_SUFFIXES})
++ SET(CMAKE_FIND_LIBRARY_SUFFIXES .a )
++ENDIF()
++
++# Look for the header files
++UNSET(LibRcf_INCLUDE_DIRS CACHE)
++FIND_PATH(LibRcf_INCLUDE_DIRS NAMES RCF/RcfClient.hpp)
++
++# Look for the core library
++UNSET(LIBRCF_LIBRARY CACHE)
++FIND_LIBRARY(LIBRCF_LIBRARY NAMES rcf)
++FIND_PACKAGE_HANDLE_STANDARD_ARGS(LibRcf DEFAULT_MSG LIBRCF_LIBRARY LibRcf_INCLUDE_DIRS)
++MARK_AS_ADVANCED(
++ LIBRCF_FOUND
++ LIBRCF_LIBRARY
++)
++
++# Prepare return values and collectiong more components
++SET(LibRcf_FOUND ${LIBRCF_FOUND})
++SET(LibRcf_LIBRARIES ${LIBRCF_LIBRARY})
++MARK_AS_ADVANCED(
++ LibRcf_FOUND
++ LibRcf_LIBRARIES
++ LibRcf_INCLUDE_DIRS
++)
++
++# Restore CMAKE_FIND_LIBRARY_SUFFIXES
++IF(LibRcf_USE_STATIC_LIBS)
++ SET(CMAKE_FIND_LIBRARY_SUFFIXES ${_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES} )
++ENDIF()
+diff --git a/VERSION.cmake b/VERSION.cmake
+new file mode 100644
+index 0000000..8b4bcdc
+--- /dev/null
++++ b/VERSION.cmake
+@@ -0,0 +1,21 @@
++# ==================================================
++# Versioning
++# ==========
++#
++# MAJOR Major number for this branch.
++#
++# MINOR The most recent interface number this
++# library implements.
++#
++# COMPATMINOR The latest binary compatible minor number
++# this library implements.
++#
++# PATCH The implementation number of the current interface.
++#
++#
++# - The package VERSION will be MAJOR.MINOR.PATCH.
++#
++
++SET (LIBRCF_SOVERSION_MAJOR "2")
++SET (LIBRCF_SOVERSION_MINOR "2")
++SET (LIBRCF_SOVERSION_PATCH "0")
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+new file mode 100755
+index 0000000..c227901
+--- /dev/null
++++ b/src/CMakeLists.txt
+@@ -0,0 +1,25 @@
++IF (NOT LIBRCF_BUILD_SHARED_LIBS)
++ ADD_LIBRARY (rcf STATIC RCF/RCF.cpp)
++ELSE (NOT LIBRCF_BUILD_SHARED_LIBS)
++ ADD_LIBRARY (rcf SHARED RCF/RCF.cpp)
++ TARGET_LINK_LIBRARIES (rcf ${LIBRCF_LIBRARIES})
++ SET_TARGET_PROPERTIES (rcf PROPERTIES COMPILE_FLAGS ${CMAKE_SHARED_LIBRARY_C_FLAGS})
++ SET_TARGET_PROPERTIES (rcf PROPERTIES VERSION ${LIBRCF_SOVERSION_MAJOR}.${LIBRCF_SOVERSION_MINOR}.${LIBRCF_SOVERSION_PATCH})
++ENDIF (NOT LIBRCF_BUILD_SHARED_LIBS)
++
++SET_TARGET_PROPERTIES (rcf PROPERTIES PROJECT_LABEL "RCF Library")
++SET_TARGET_PROPERTIES (rcf PROPERTIES OUTPUT_NAME "rcf")
++SET_TARGET_PROPERTIES (rcf PROPERTIES SOVERSION ${LIBRCF_SOVERSION_MAJOR})
++SET_TARGET_PROPERTIES (rcf PROPERTIES INSTALL_NAME_DIR ${CMAKE_INSTALL_LIBDIR})
++
++INSTALL (DIRECTORY "${CMAKE_SOURCE_DIR}/include/RCF" DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
++INSTALL (DIRECTORY "${CMAKE_SOURCE_DIR}/include/SF" DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
++INSTALL (TARGETS rcf LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
++
++IF (LIBRCF_BUILD_STATIC_LIBS AND LIBRCF_BUILD_SHARED_LIBS)
++ ADD_LIBRARY (rcf_static STATIC RCF/RCF.cpp)
++ SET_TARGET_PROPERTIES (rcf_static PROPERTIES PROJECT_LABEL "RCF Static Library")
++ SET_TARGET_PROPERTIES (rcf_static PROPERTIES OUTPUT_NAME "rcf")
++ SET_TARGET_PROPERTIES (rcf_static PROPERTIES SOVERSION ${LIBRCF_SOVERSION_MAJOR})
++ INSTALL (TARGETS rcf_static LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
++ENDIF (LIBRCF_BUILD_STATIC_LIBS AND LIBRCF_BUILD_SHARED_LIBS)
+--
+1.9.1
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/librcf/librcf/aarch64-support.patch b/import-layers/meta-openembedded/meta-oe/recipes-devtools/librcf/librcf/aarch64-support.patch
new file mode 100644
index 000000000..28cd0fe60
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/librcf/librcf/aarch64-support.patch
@@ -0,0 +1,13 @@
+Index: RCF-2.2.0.0/src/RCF/ByteOrdering.cpp
+===================================================================
+--- RCF-2.2.0.0.orig/src/RCF/ByteOrdering.cpp
++++ RCF-2.2.0.0/src/RCF/ByteOrdering.cpp
+@@ -60,7 +60,7 @@ namespace RCF {
+
+ const ByteOrder MachineByteOrder = LittleEndian;
+
+-#elif defined(__arm__)
++#elif defined(__arm__) || defined(__aarch64__)
+
+ const ByteOrder MachineByteOrder = LittleEndian;
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/librcf/librcf_2.2.0.0.bb b/import-layers/meta-openembedded/meta-oe/recipes-devtools/librcf/librcf_2.2.0.0.bb
new file mode 100644
index 000000000..51ad7ec9c
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/librcf/librcf_2.2.0.0.bb
@@ -0,0 +1,49 @@
+SUMMARY = "RCF (Remote Call Framework) is a cross-platform interprocess communication framework for C++"
+DESCRIPTION = "Unlike other communication frameworks, RCF doesn't use a separate \
+IDL (Interface Definition Language). RCF interfaces are defined directly in C++, \
+and serialization for user-defined data types likewise is implemented in C++. \
+Instead of a separate IDL compiler tool, RCF uses the C++ compiler to generate \
+client and server stubs."
+HOMEPAGE = "http://www.deltavsoft.com/"
+SECTION = "libs"
+PRIORITY = "optional"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://license.txt;md5=137c2935b51c95068a8b1bbd434ffe2d"
+
+SRC_URI = "http://www.deltavsoft.com/downloads/RCF-${PV}.tar.gz \
+ file://0001-Add-CMake-build-files.patch \
+ file://aarch64-support.patch \
+ "
+
+SRC_URI[md5sum] = "7ecb3c73f7eb66dba8790b659374f690"
+SRC_URI[sha256sum] = "bbfcc88de502c39604878c395f516b03fff4eac63eb4f7f44c07d433839712dd"
+
+S = "${WORKDIR}/RCF-${PV}"
+
+inherit cmake
+
+PACKAGECONFIG ?= "zlib openssl sf-serialization boost-filesystem boost-asio protobuf json dll static shared demos"
+PACKAGECONFIG[zlib] = "-DLIBRCF_USE_ZLIB=ON,-DLIBRCF_USE_ZLIB=OFF,zlib,zlib"
+PACKAGECONFIG[zlib-static] = "-DLIBRCF_USE_ZLIB=ON -DLIBRCF_ZLIB_STATIC=ON,-DLIBRCF_ZLIB_STATIC=OFF,zlib,"
+PACKAGECONFIG[openssl] = "-DLIBRCF_USE_OPENSSL=ON,-DLIBRCF_USE_OPENSSL=OFF,openssl,libssl libcrypto"
+PACKAGECONFIG[openssl-static] = "-DLIBRCF_USE_OPENSSL=ON -DLIBRCF_OPENSSL_STATIC=ON,-DLIBRCF_OPENSSL_STATIC=OFF,openssl,"
+PACKAGECONFIG[sf-serialization] = "-DLIBRCF_USE_SF_SERIALIZATION=ON,-DLIBRCF_USE_SF_SERIALIZATION=OFF,boost,"
+PACKAGECONFIG[boost-serialization] = "-DLIBRCF_USE_BOOST_SERIALIZATION=ON,-DLIBRCF_USE_BOOST_SERIALIZATION=OFF,boost,"
+PACKAGECONFIG[boost-filesystem] = "-DLIBRCF_USE_BOOST_FILESYSTEM=ON,-DLIBRCF_USE_BOOST_FILESYSTEM=OFF,boost,"
+PACKAGECONFIG[boost-asio] = "-DLIBRCF_USE_BOOST_ASIO=ON,-DLIBRCF_USE_BOOST_ASIO=OFF,boost,"
+PACKAGECONFIG[protobuf] = "-DLIBRCF_USE_PROTOBUF=ON,-DLIBRCF_USE_PROTOBUF=OFF,protobuf,"
+PACKAGECONFIG[json] = "-DLIBRCF_USE_JSON=ON,-DLIBRCF_USE_JSON=OFF,json-spirit,"
+PACKAGECONFIG[ipv6] = "-DLIBRCF_USE_IPV6=ON,-DLIBRCF_USE_IPV6=OFF,"
+PACKAGECONFIG[custom-allocator] = "-DLIBRCF_USE_CUSTOM_ALLOCATOR=ON,-DLIBRCF_USE_CUSTOM_ALLOCATOR=OFF,"
+PACKAGECONFIG[dll] = "-DLIBRCF_BUILD_DLL=ON,-DLIBRCF_BUILD_DLL=OFF,"
+PACKAGECONFIG[auto-init-deinit] = "-DLIBRCF_AUTO_INIT_DEINIT=ON,-DLIBRCF_AUTO_INIT_DEINIT=OFF,"
+PACKAGECONFIG[static] = "-DLIBRCF_BUILD_STATIC_LIBS=ON,-DLIBRCF_BUILD_STATIC_LIBS=OFF,"
+PACKAGECONFIG[shared] = "-DLIBRCF_BUILD_SHARED_LIBS=ON,-DLIBRCF_BUILD_SHARED_LIBS=OFF,"
+PACKAGECONFIG[demos] = "-DLIBRCF_BUILD_DEMOS=ON,-DLIBRCF_BUILD_DEMOS=OFF,"
+
+PACKAGES =+ "${@bb.utils.contains('PACKAGECONFIG', 'demos', '${PN}-demos', '', d)}"
+
+FILES_${PN}-demos = "${bindir}/*"
+FILES_${PN}-dev += "${datadir}/cmake/Modules/FindLibRcf.cmake"
+
+BBCLASSEXTEND = "nativesdk"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/libubox/libubox_git.bb b/import-layers/meta-openembedded/meta-oe/recipes-devtools/libubox/libubox_git.bb
index 609281a85..f9f4e08b7 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-devtools/libubox/libubox_git.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/libubox/libubox_git.bb
@@ -19,6 +19,7 @@ SRC_URI = "\
"
SRCREV = "155bf39896f126b1ba121b816922a88dc34c31e3"
+PV = "1.0.1+git${SRCPV}"
S = "${WORKDIR}/git"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/log4cplus/log4cplus_1.2.0.bb b/import-layers/meta-openembedded/meta-oe/recipes-devtools/log4cplus/log4cplus_1.2.0.bb
index c2f5ec0dc..31ab9a69c 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-devtools/log4cplus/log4cplus_1.2.0.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/log4cplus/log4cplus_1.2.0.bb
@@ -12,4 +12,4 @@ SRC_URI[sha256sum] = "ad5ec3b62f2f0bdc7f06fa398bde61091fd2493e91059e17315b519742
inherit autotools pkgconfig
-BBCLASSEXTEND += "native"
+BBCLASSEXTEND = "native"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/ltp-ddt/ltp-ddt_1.0.0.bb b/import-layers/meta-openembedded/meta-oe/recipes-devtools/ltp-ddt/ltp-ddt_1.0.0.bb
index 62117b136..b13bd7bcc 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-devtools/ltp-ddt/ltp-ddt_1.0.0.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/ltp-ddt/ltp-ddt_1.0.0.bb
@@ -94,4 +94,4 @@ do_make_scripts[lockfiles] = "${TMPDIR}/kernel-scripts.lock"
do_make_scripts[deptask] = "do_populate_sysroot"
# http://errors.yoctoproject.org/Errors/Details/56327/
-PNBLACKLIST[ltp-ddt] ?= "BROKEN: fails since last autotools.bbclass changes"
+PNBLACKLIST[ltp-ddt] ?= "BROKEN: fails since last autotools.bbclass changes - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/ltrace/ltrace/0001-ARM-code-has-unreachable-code-after-switch-statement.patch b/import-layers/meta-openembedded/meta-oe/recipes-devtools/ltrace/ltrace/0001-ARM-code-has-unreachable-code-after-switch-statement.patch
new file mode 100644
index 000000000..4d0e0392f
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/ltrace/ltrace/0001-ARM-code-has-unreachable-code-after-switch-statement.patch
@@ -0,0 +1,40 @@
+From 95ff340a74af16cca89fd5c5ca99890821053209 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 22 Apr 2017 00:47:16 -0700
+Subject: [PATCH] ARM code has unreachable code after switch statement move
+ initialization
+
+Fixed
+sysdeps/linux-gnu/arm/trace.c:173:33: error: statement will never be executed [-Werror=switch-unreachable]
+ uint32_t operand1, operand2, result = 0;
+ ^~~~~~
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ sysdeps/linux-gnu/arm/trace.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/sysdeps/linux-gnu/arm/trace.c b/sysdeps/linux-gnu/arm/trace.c
+index 5e51e91..f974d1f 100644
+--- a/sysdeps/linux-gnu/arm/trace.c
++++ b/sysdeps/linux-gnu/arm/trace.c
+@@ -155,6 +155,8 @@ arm_get_next_pcs(struct process *proc,
+ const unsigned cond = BITS(this_instr, 28, 31);
+ const unsigned opcode = BITS(this_instr, 24, 27);
+
++ uint32_t operand1, operand2, result = 0;
++
+ if (cond == COND_NV)
+ switch (opcode) {
+ arch_addr_t addr;
+@@ -170,7 +172,6 @@ arm_get_next_pcs(struct process *proc,
+ }
+ else
+ switch (opcode) {
+- uint32_t operand1, operand2, result = 0;
+ case 0x0:
+ case 0x1: /* data processing */
+ case 0x2:
+--
+2.12.2
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/ltrace/ltrace/0001-Add-support-for-mips64-n32-n64.patch b/import-layers/meta-openembedded/meta-oe/recipes-devtools/ltrace/ltrace/0001-Add-support-for-mips64-n32-n64.patch
new file mode 100644
index 000000000..d0daf1466
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/ltrace/ltrace/0001-Add-support-for-mips64-n32-n64.patch
@@ -0,0 +1,1148 @@
+From 5f6dfafb80bdc2566fe91d5fde96769175fabf35 Mon Sep 17 00:00:00 2001
+From: Faraz Shahbazker <faraz.shahbazker@imgtec.com>
+Date: Sat, 1 Jul 2017 10:56:59 -0700
+Subject: [PATCH] Add support for mips64 n32/n64
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+Upstream-Status: Pending
+Source: http://lists.alioth.debian.org/pipermail/ltrace-devel/2015-May/001327.html
+
+ backend.h | 8 +
+ ltrace-elf.c | 12 ++
+ proc.h | 1 +
+ sysdeps/linux-gnu/mips/Makefile.am | 1 +
+ sysdeps/linux-gnu/mips/abi.c | 64 +++++++
+ sysdeps/linux-gnu/mips/arch.h | 24 ++-
+ sysdeps/linux-gnu/mips/plt.c | 68 ++++++--
+ sysdeps/linux-gnu/mips/signalent1.h | 52 ++++++
+ sysdeps/linux-gnu/mips/syscallent1.h | 328 +++++++++++++++++++++++++++++++++++
+ sysdeps/linux-gnu/mips/trace.c | 241 ++++++++++++++++++-------
+ sysdeps/linux-gnu/mksyscallent_mips | 9 +-
+ 11 files changed, 728 insertions(+), 80 deletions(-)
+ create mode 100644 sysdeps/linux-gnu/mips/abi.c
+ create mode 100644 sysdeps/linux-gnu/mips/signalent1.h
+ create mode 100644 sysdeps/linux-gnu/mips/syscallent1.h
+
+diff --git a/backend.h b/backend.h
+index e25daa0..0d6926a 100644
+--- a/backend.h
++++ b/backend.h
+@@ -314,6 +314,14 @@ int arch_process_exec(struct process *proc);
+ int arch_get_sym_info(struct ltelf *lte, const char *filename, size_t sym_index,
+ GElf_Rela *rela, GElf_Sym *sym);
+
++/* The following callback has to be implemented in backend if arch.h
++ * defines ARCH_HAVE_GET_ABI
++ *
++ * This is called from read_module just once, when reading the main module.
++ * The value returned is an architecture specific ID for the current ABI
++ * to be used later for ABI-specific operations. */
++char arch_get_abi(GElf_Ehdr ehdr);
++
+ enum plt_status {
+ PLT_FAIL,
+ PLT_OK,
+diff --git a/ltrace-elf.c b/ltrace-elf.c
+index f439cb0..a85edca 100644
+--- a/ltrace-elf.c
++++ b/ltrace-elf.c
+@@ -1131,6 +1131,14 @@ populate_symtab(struct process *proc, const char *filename,
+ only_exported_names);
+ }
+
++#ifndef ARCH_HAVE_GET_ABI
++char
++arch_get_abi(GElf_Ehdr ehdr)
++{
++ return 0;
++}
++#endif
++
+ static int
+ read_module(struct library *lib, struct process *proc,
+ const char *filename, GElf_Addr bias, int main)
+@@ -1151,6 +1159,10 @@ read_module(struct library *lib, struct process *proc,
+ * with 32-bit ltrace. It is desirable to preserve this. */
+ proc->e_machine = lte.ehdr.e_machine;
+ proc->e_class = lte.ehdr.e_ident[EI_CLASS];
++ /* Another candidate for the ABI module. We probably
++ * want to do all of the e_* stuff only once, for main */
++ if (main)
++ proc->e_abi = arch_get_abi(lte.ehdr);
+ get_arch_dep(proc);
+
+ /* Find out the base address. For PIE main binaries we look
+diff --git a/proc.h b/proc.h
+index a611456..00094e1 100644
+--- a/proc.h
++++ b/proc.h
+@@ -117,6 +117,7 @@ struct process {
+ * nauseam. */
+ short e_machine;
+ char e_class;
++ char e_abi;
+
+ #if defined(HAVE_LIBDW)
+ /* Unwind info for leader, NULL for non-leader procs. */
+diff --git a/sysdeps/linux-gnu/mips/Makefile.am b/sysdeps/linux-gnu/mips/Makefile.am
+index 1fd8c2a..571ee0d 100644
+--- a/sysdeps/linux-gnu/mips/Makefile.am
++++ b/sysdeps/linux-gnu/mips/Makefile.am
+@@ -20,6 +20,7 @@ noinst_LTLIBRARIES = \
+ ../libcpu.la
+
+ ___libcpu_la_SOURCES = \
++ abi.c \
+ plt.c \
+ regs.c \
+ trace.c
+diff --git a/sysdeps/linux-gnu/mips/abi.c b/sysdeps/linux-gnu/mips/abi.c
+new file mode 100644
+index 0000000..64e3c10
+--- /dev/null
++++ b/sysdeps/linux-gnu/mips/abi.c
+@@ -0,0 +1,64 @@
++/*
++ * This file is part of ltrace.
++ * Copyright (C) 2015 Imagination Technologies Limited
++ *
++ * 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 St, Fifth Floor, Boston, MA
++ * 02110-1301 USA
++ */
++
++#include <stdio.h>
++#include <gelf.h>
++#include "arch.h"
++
++/*
++ * There is no bit in the header-flags to mark N64 ABI, it must be
++ * determined by exclusion of other ABIs. The following values are
++ * from elfcpp/mips.h in binutils sources
++ */
++enum
++{
++ E_MIPS_ABI_MASK = 0x0000F000,
++ E_MIPS_ABI_N32 = 0x00000020,
++ E_MIPS_ABI_O32 = 0x00001000,
++ E_MIPS_ABI_O64 = 0x00002000,
++ E_MIPS_ABI_EABI32 = 0x00003000,
++ E_MIPS_ABI_EABI64 = 0x00004000,
++};
++
++char
++arch_get_abi(GElf_Ehdr ehdr)
++{
++ enum mips_abi_type abi;
++ switch (ehdr.e_flags & E_MIPS_ABI_MASK) {
++ case E_MIPS_ABI_O32:
++ abi = ABI_O32; break;
++ case E_MIPS_ABI_O64:
++ abi = ABI_O64; break;
++ case E_MIPS_ABI_EABI32:
++ case E_MIPS_ABI_EABI64:
++ fprintf(stderr, "%s: MIPS EABI is not supported\n", __func__);
++ abi = -1;
++ break;
++ default:
++ if (ehdr.e_flags & E_MIPS_ABI_N32)
++ abi = ABI_N32;
++ else
++ abi = ABI_N64;
++ }
++
++ return abi;
++}
++
++/**@}*/
+diff --git a/sysdeps/linux-gnu/mips/arch.h b/sysdeps/linux-gnu/mips/arch.h
+index 16273d2..8b75df2 100644
+--- a/sysdeps/linux-gnu/mips/arch.h
++++ b/sysdeps/linux-gnu/mips/arch.h
+@@ -1,5 +1,6 @@
+ /*
+ * This file is part of ltrace.
++ * Copyright (C) 2015 Imagination Technologies Limited
+ * Copyright (C) 2013,2014 Petr Machata, Red Hat Inc.
+ * Copyright (C) 2006 Eric Vaitl
+ *
+@@ -38,8 +39,12 @@
+ #define BREAKPOINT_LENGTH 4
+ #define DECR_PC_AFTER_BREAK 0
+
+-#define LT_ELFCLASS ELFCLASS32
++#ifdef __LP64__
++#define LT_ELFCLASS ELFCLASS64
+ #define LT_ELF_MACHINE EM_MIPS
++#endif /* __LP64__ */
++#define LT_ELFCLASS2 ELFCLASS32
++#define LT_ELF_MACHINE2 EM_MIPS
+
+ #define ARCH_HAVE_LTELF_DATA
+ struct arch_ltelf_data {
+@@ -53,8 +58,14 @@ struct arch_ltelf_data {
+ #define ARCH_HAVE_ADD_PLT_ENTRY
+ #define ARCH_HAVE_SW_SINGLESTEP
+ #define ARCH_HAVE_SYMBOL_RET
+-
++#define ARCH_HAVE_GET_ABI
+ #define ARCH_HAVE_LIBRARY_SYMBOL_DATA
++
++#ifdef __LP64__
++#define ARCH_HAVE_SIZEOF
++#define ARCH_HAVE_ALIGNOF
++#endif /* __LP64__ */
++
+ enum mips_plt_type
+ {
+ /* A symbol has associated PLT entry. */
+@@ -73,7 +84,14 @@ enum mips_plt_type
+ MIPS_PLT_NEED_UNRESOLVE,
+ };
+
+-struct mips_unresolve_data;
++enum mips_abi_type
++{
++ ABI_O32,
++ ABI_N32,
++ ABI_N64,
++ ABI_O64,
++};
++
+ struct arch_library_symbol_data {
+ enum mips_plt_type type;
+ union {
+diff --git a/sysdeps/linux-gnu/mips/plt.c b/sysdeps/linux-gnu/mips/plt.c
+index f3c12da..2d85ad9 100644
+--- a/sysdeps/linux-gnu/mips/plt.c
++++ b/sysdeps/linux-gnu/mips/plt.c
+@@ -1,5 +1,6 @@
+ /*
+ * This file is part of ltrace.
++ * Copyright (C) 2015 Imagination Technologies Limited
+ * Copyright (C) 2012,2013,2014 Petr Machata, Red Hat Inc.
+ * Copyright (C) 2012 Edgar E. Iglesias, Axis Communications
+ * Copyright (C) 2008,2009 Juan Cespedes
+@@ -182,6 +183,11 @@ arch_find_dl_debug(struct process *proc, arch_addr_t dyn_addr,
+ {
+ arch_addr_t rld_addr;
+ int r;
++#ifdef __LP64__
++ size_t addrsize = proc->mask_32bit ? 4 : (sizeof *ret);
++#else /* !__LP64__ */
++ size_t addrsize = sizeof *ret;
++#endif /* !__LP64__ */
+
+ /* MIPS puts the address of the r_debug structure into the
+ * DT_MIPS_RLD_MAP entry instead of into the DT_DEBUG entry. */
+@@ -189,7 +195,7 @@ arch_find_dl_debug(struct process *proc, arch_addr_t dyn_addr,
+ DT_MIPS_RLD_MAP, &rld_addr);
+ if (r == 0) {
+ if (umovebytes(proc, rld_addr,
+- ret, sizeof *ret) != sizeof *ret) {
++ ret, addrsize) != addrsize) {
+ r = -1;
+ }
+ }
+@@ -295,14 +301,25 @@ arch_elf_init(struct ltelf *lte, struct library *lib)
+
+ for (j = 0; j < data->d_size / 16; ++j) {
+ uint32_t insn;
++ int got_size = 4;
++ uint32_t load_inst = 0x24180000U; /* addui t8,0,xx */
++
++#ifdef __LP64__
++ if (arch_get_abi(lte->ehdr) == ABI_N64
++ || arch_get_abi(lte->ehdr) == ABI_O64) {
++ got_size = 8;
++ load_inst = 0x64180000U; /* daddui t8,0,xx */
++ }
++#endif /* __LP64__ */
++
+ if (elf_read_u32(data, j * 16 + 12, &insn) < 0)
+ goto fail_stubs;
+
+ if (insn == 0)
+ continue;
+
+- /* 0x2418XXXX encodes lbu 0,t8,XXXX or li t8,XXXX. */
+- if ((insn & 0xffff0000U) != 0x24180000U)
++ /* 0x[62]418XXXX encodes [d]addiu t8, 0, XXXX. */
++ if ((insn & 0xffff0000U) != load_inst)
+ goto fail_stubs;
+
+ unsigned idx = insn & 0xffff;
+@@ -323,8 +340,8 @@ arch_elf_init(struct ltelf *lte, struct library *lib)
+ + lte->arch.mips_local_gotno;
+ /* XXX Double cast. */
+ arch_addr_t got_entry_addr
+- = (arch_addr_t) (uintptr_t) lte->arch.pltgot_addr
+- + got_idx * 4;
++ = (arch_addr_t) (uintptr_t) (lte->arch.pltgot_addr
++ + got_idx * got_size);
+
+ GElf_Rela rela = {
+ /* XXX double cast. */
+@@ -336,7 +353,7 @@ arch_elf_init(struct ltelf *lte, struct library *lib)
+ if (VECT_PUSHBACK(&lte->plt_relocs, &rela) < 0)
+ goto fail_stubs;
+
+- fprintf(stderr,
++ debug(2,
+ "added stub entry for symbol %u at %#lx, GOT @%p\n",
+ idx, (unsigned long) rela.r_addend, got_entry_addr);
+ }
+@@ -362,8 +379,17 @@ read_got_entry(struct process *proc, GElf_Addr addr, GElf_Addr *valp)
+ {
+ /* XXX double cast. */
+ arch_addr_t a = (arch_addr_t) (uintptr_t) addr;
+- uint32_t l;
+- if (proc_read_32(proc, a, &l) < 0) {
++ uint64_t l = 0;
++ int result;
++
++#ifdef __LP64__
++ if (!proc->mask_32bit)
++ result = proc_read_64(proc, a, &l);
++ else
++#endif /* __LP64__ */
++ result = proc_read_32(proc, a, (uint32_t *) &l);
++
++ if (result < 0) {
+ fprintf(stderr, "ptrace read got entry @%#" PRIx64 ": %s\n",
+ addr, strerror(errno));
+ return -1;
+@@ -426,13 +452,13 @@ arch_elf_add_plt_entry(struct process *proc, struct ltelf *lte,
+ GElf_Addr stub_addr = rela->r_addend + lte->bias;
+
+ debug(2, "PLT-less arch_elf_add_plt_entry %s = %#llx\n",
+- a_name, stub_addr);
++ a_name, (unsigned long long) stub_addr);
+
+ struct library_symbol *libsym = NULL;
+ if (default_elf_add_plt_entry(proc, lte, a_name, rela, ndx,
+ &libsym) < 0) {
+- fprintf(stderr, "%s: failed %s(%#llx): %s\n", __func__,
+- a_name, stub_addr, strerror(errno));
++ fprintf(stderr, "%s: failed %s(%#lx): %s\n", __func__,
++ a_name, (unsigned long) stub_addr, strerror(errno));
+ goto fail;
+ }
+
+@@ -503,13 +529,27 @@ jump_to_entry_point(struct process *proc, struct breakpoint *bp)
+ static int
+ unresolve_got_entry(struct process *proc, GElf_Addr addr, GElf_Addr value)
+ {
+- uint32_t v32 = (uint32_t) value;
+- uint32_t a32 = (uint32_t) addr;
+- if (ptrace(PTRACE_POKETEXT, proc->pid, a32, v32) < 0) {
++ arch_addr_t a = (arch_addr_t) (uintptr_t) addr;
++#ifdef __LP64__
++ /* To write 32-bit value in 64-bit mode, we must read-modify-write
++ the 64-bit value with only the lower 32 bits modified. */
++ if (proc->mask_32bit) {
++ GElf_Addr orig = ptrace(PTRACE_PEEKTEXT, proc->pid, a, 0);
++ char *obytes = (char *) &orig;
++ char *nbytes = (char *) &value;
++ unsigned i;
++
++ for (i = 0; i < 4; i++)
++ obytes[i] = nbytes[i];
++ value = orig;
++ }
++#endif /* __LP64__ */
++ if (ptrace(PTRACE_POKETEXT, proc->pid, a, (unsigned long) value) < 0) {
+ fprintf(stderr, "failed to unresolve GOT entry: %s\n",
+ strerror(errno));
+ return -1;
+ }
++
+ return 0;
+ }
+
+diff --git a/sysdeps/linux-gnu/mips/signalent1.h b/sysdeps/linux-gnu/mips/signalent1.h
+new file mode 100644
+index 0000000..9e9d1f7
+--- /dev/null
++++ b/sysdeps/linux-gnu/mips/signalent1.h
+@@ -0,0 +1,52 @@
++/*
++ * This file is part of ltrace.
++ * Copyright (C) 2015 Imagination Technologies Limited
++ *
++ * 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 St, Fifth Floor, Boston, MA
++ * 02110-1301 USA
++ */
++
++ "SIG_0", /* 0 */
++ "SIGHUP", /* 1 */
++ "SIGINT", /* 2 */
++ "SIGQUIT", /* 3 */
++ "SIGILL", /* 4 */
++ "SIGTRAP", /* 5 */
++ "SIGIOT", /* 6 */
++ "SIGEMT", /* 7 */
++ "SIGFPE", /* 8 */
++ "SIGKILL", /* 9 */
++ "SIGBUS", /* 10 */
++ "SIGSEGV", /* 11 */
++ "SIGSYS", /* 12 */
++ "SIGPIPE", /* 13 */
++ "SIGALRM", /* 14 */
++ "SIGTERM", /* 15 */
++ "SIGUSR1", /* 16 */
++ "SIGUSR2", /* 17 */
++ "SIGCHLD", /* 18 */
++ "SIGPWR", /* 19 */
++ "SIGWINCH", /* 20 */
++ "SIGURG", /* 21 */
++ "SIGIO", /* 22 */
++ "SIGSTOP", /* 23 */
++ "SIGTSTP", /* 24 */
++ "SIGCONT", /* 25 */
++ "SIGTTIN", /* 26 */
++ "SIGTTOU", /* 27 */
++ "SIGVTALRM", /* 28 */
++ "SIGPROF", /* 29 */
++ "SIGXCPU", /* 30 */
++ "SIGXFSZ", /* 31 */
+diff --git a/sysdeps/linux-gnu/mips/syscallent1.h b/sysdeps/linux-gnu/mips/syscallent1.h
+new file mode 100644
+index 0000000..dfa4954
+--- /dev/null
++++ b/sysdeps/linux-gnu/mips/syscallent1.h
+@@ -0,0 +1,328 @@
++/*
++ * This file is part of ltrace.
++ * Copyright (C) 2015 Imagination Technologies Limited
++ *
++ * 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 St, Fifth Floor, Boston, MA
++ * 02110-1301 USA
++ */
++
++/* MIPS64 */
++
++ "read", /* 0 */
++ "write", /* 1 */
++ "open", /* 2 */
++ "close", /* 3 */
++ "stat", /* 4 */
++ "fstat", /* 5 */
++ "lstat", /* 6 */
++ "poll", /* 7 */
++ "lseek", /* 8 */
++ "mmap", /* 9 */
++ "mprotect", /* 10 */
++ "munmap", /* 11 */
++ "brk", /* 12 */
++ "rt_sigaction", /* 13 */
++ "rt_sigprocmask", /* 14 */
++ "ioctl", /* 15 */
++ "pread64", /* 16 */
++ "pwrite64", /* 17 */
++ "readv", /* 18 */
++ "writev", /* 19 */
++ "access", /* 20 */
++ "pipe", /* 21 */
++ "_newselect", /* 22 */
++ "sched_yield", /* 23 */
++ "mremap", /* 24 */
++ "msync", /* 25 */
++ "mincore", /* 26 */
++ "madvise", /* 27 */
++ "shmget", /* 28 */
++ "shmat", /* 29 */
++ "shmctl", /* 30 */
++ "dup", /* 31 */
++ "dup2", /* 32 */
++ "pause", /* 33 */
++ "nanosleep", /* 34 */
++ "getitimer", /* 35 */
++ "setitimer", /* 36 */
++ "alarm", /* 37 */
++ "getpid", /* 38 */
++ "sendfile", /* 39 */
++ "socket", /* 40 */
++ "connect", /* 41 */
++ "accept", /* 42 */
++ "sendto", /* 43 */
++ "recvfrom", /* 44 */
++ "sendmsg", /* 45 */
++ "recvmsg", /* 46 */
++ "shutdown", /* 47 */
++ "bind", /* 48 */
++ "listen", /* 49 */
++ "getsockname", /* 50 */
++ "getpeername", /* 51 */
++ "socketpair", /* 52 */
++ "setsockopt", /* 53 */
++ "getsockopt", /* 54 */
++ "clone", /* 55 */
++ "fork", /* 56 */
++ "execve", /* 57 */
++ "exit", /* 58 */
++ "wait4", /* 59 */
++ "kill", /* 60 */
++ "uname", /* 61 */
++ "semget", /* 62 */
++ "semop", /* 63 */
++ "semctl", /* 64 */
++ "shmdt", /* 65 */
++ "msgget", /* 66 */
++ "msgsnd", /* 67 */
++ "msgrcv", /* 68 */
++ "msgctl", /* 69 */
++ "fcntl", /* 70 */
++ "flock", /* 71 */
++ "fsync", /* 72 */
++ "fdatasync", /* 73 */
++ "truncate", /* 74 */
++ "ftruncate", /* 75 */
++ "getdents", /* 76 */
++ "getcwd", /* 77 */
++ "chdir", /* 78 */
++ "fchdir", /* 79 */
++ "rename", /* 80 */
++ "mkdir", /* 81 */
++ "rmdir", /* 82 */
++ "creat", /* 83 */
++ "link", /* 84 */
++ "unlink", /* 85 */
++ "symlink", /* 86 */
++ "readlink", /* 87 */
++ "chmod", /* 88 */
++ "fchmod", /* 89 */
++ "chown", /* 90 */
++ "fchown", /* 91 */
++ "lchown", /* 92 */
++ "umask", /* 93 */
++ "gettimeofday", /* 94 */
++ "getrlimit", /* 95 */
++ "getrusage", /* 96 */
++ "sysinfo", /* 97 */
++ "times", /* 98 */
++ "ptrace", /* 99 */
++ "getuid", /* 100 */
++ "syslog", /* 101 */
++ "getgid", /* 102 */
++ "setuid", /* 103 */
++ "setgid", /* 104 */
++ "geteuid", /* 105 */
++ "getegid", /* 106 */
++ "setpgid", /* 107 */
++ "getppid", /* 108 */
++ "getpgrp", /* 109 */
++ "setsid", /* 110 */
++ "setreuid", /* 111 */
++ "setregid", /* 112 */
++ "getgroups", /* 113 */
++ "setgroups", /* 114 */
++ "setresuid", /* 115 */
++ "getresuid", /* 116 */
++ "setresgid", /* 117 */
++ "getresgid", /* 118 */
++ "getpgid", /* 119 */
++ "setfsuid", /* 120 */
++ "setfsgid", /* 121 */
++ "getsid", /* 122 */
++ "capget", /* 123 */
++ "capset", /* 124 */
++ "rt_sigpending", /* 125 */
++ "rt_sigtimedwait", /* 126 */
++ "rt_sigqueueinfo", /* 127 */
++ "rt_sigsuspend", /* 128 */
++ "sigaltstack", /* 129 */
++ "utime", /* 130 */
++ "mknod", /* 131 */
++ "personality", /* 132 */
++ "ustat", /* 133 */
++ "statfs", /* 134 */
++ "fstatfs", /* 135 */
++ "sysfs", /* 136 */
++ "getpriority", /* 137 */
++ "setpriority", /* 138 */
++ "sched_setparam", /* 139 */
++ "sched_getparam", /* 140 */
++ "sched_setscheduler", /* 141 */
++ "sched_getscheduler", /* 142 */
++ "sched_get_priority_max", /* 143 */
++ "sched_get_priority_min", /* 144 */
++ "sched_rr_get_interval", /* 145 */
++ "mlock", /* 146 */
++ "munlock", /* 147 */
++ "mlockall", /* 148 */
++ "munlockall", /* 149 */
++ "vhangup", /* 150 */
++ "pivot_root", /* 151 */
++ "_sysctl", /* 152 */
++ "prctl", /* 153 */
++ "adjtimex", /* 154 */
++ "setrlimit", /* 155 */
++ "chroot", /* 156 */
++ "sync", /* 157 */
++ "acct", /* 158 */
++ "settimeofday", /* 159 */
++ "mount", /* 160 */
++ "umount2", /* 161 */
++ "swapon", /* 162 */
++ "swapoff", /* 163 */
++ "reboot", /* 164 */
++ "sethostname", /* 165 */
++ "setdomainname", /* 166 */
++ "create_module", /* 167 */
++ "init_module", /* 168 */
++ "delete_module", /* 169 */
++ "get_kernel_syms", /* 170 */
++ "query_module", /* 171 */
++ "quotactl", /* 172 */
++ "nfsservctl", /* 173 */
++ "getpmsg", /* 174 */
++ "putpmsg", /* 175 */
++ "afs_syscall", /* 176 */
++ "reserved177", /* 177 */
++ "gettid", /* 178 */
++ "readahead", /* 179 */
++ "setxattr", /* 180 */
++ "lsetxattr", /* 181 */
++ "fsetxattr", /* 182 */
++ "getxattr", /* 183 */
++ "lgetxattr", /* 184 */
++ "fgetxattr", /* 185 */
++ "listxattr", /* 186 */
++ "llistxattr", /* 187 */
++ "flistxattr", /* 188 */
++ "removexattr", /* 189 */
++ "lremovexattr", /* 190 */
++ "fremovexattr", /* 191 */
++ "tkill", /* 192 */
++ "reserved193", /* 193 */
++ "futex", /* 194 */
++ "sched_setaffinity", /* 195 */
++ "sched_getaffinity", /* 196 */
++ "cacheflush", /* 197 */
++ "cachectl", /* 198 */
++ "sysmips", /* 199 */
++ "io_setup", /* 200 */
++ "io_destroy", /* 201 */
++ "io_getevents", /* 202 */
++ "io_submit", /* 203 */
++ "io_cancel", /* 204 */
++ "exit_group", /* 205 */
++ "lookup_dcookie", /* 206 */
++ "epoll_create", /* 207 */
++ "epoll_ctl", /* 208 */
++ "epoll_wait", /* 209 */
++ "remap_file_pages", /* 210 */
++ "rt_sigreturn", /* 211 */
++ "set_tid_address", /* 212 */
++ "restart_syscall", /* 213 */
++ "semtimedop", /* 214 */
++ "fadvise64", /* 215 */
++ "timer_create", /* 216 */
++ "timer_settime", /* 217 */
++ "timer_gettime", /* 218 */
++ "timer_getoverrun", /* 219 */
++ "timer_delete", /* 220 */
++ "clock_settime", /* 221 */
++ "clock_gettime", /* 222 */
++ "clock_getres", /* 223 */
++ "clock_nanosleep", /* 224 */
++ "tgkill", /* 225 */
++ "utimes", /* 226 */
++ "mbind", /* 227 */
++ "get_mempolicy", /* 228 */
++ "set_mempolicy", /* 229 */
++ "mq_open", /* 230 */
++ "mq_unlink", /* 231 */
++ "mq_timedsend", /* 232 */
++ "mq_timedreceive", /* 233 */
++ "mq_notify", /* 234 */
++ "mq_getsetattr", /* 235 */
++ "vserver", /* 236 */
++ "waitid", /* 237 */
++ "238", /* 238 */
++ "add_key", /* 239 */
++ "request_key", /* 240 */
++ "keyctl", /* 241 */
++ "set_thread_area", /* 242 */
++ "inotify_init", /* 243 */
++ "inotify_add_watch", /* 244 */
++ "inotify_rm_watch", /* 245 */
++ "migrate_pages", /* 246 */
++ "openat", /* 247 */
++ "mkdirat", /* 248 */
++ "mknodat", /* 249 */
++ "fchownat", /* 250 */
++ "futimesat", /* 251 */
++ "newfstatat", /* 252 */
++ "unlinkat", /* 253 */
++ "renameat", /* 254 */
++ "linkat", /* 255 */
++ "symlinkat", /* 256 */
++ "readlinkat", /* 257 */
++ "fchmodat", /* 258 */
++ "faccessat", /* 259 */
++ "pselect6", /* 260 */
++ "ppoll", /* 261 */
++ "unshare", /* 262 */
++ "splice", /* 263 */
++ "sync_file_range", /* 264 */
++ "tee", /* 265 */
++ "vmsplice", /* 266 */
++ "move_pages", /* 267 */
++ "set_robust_list", /* 268 */
++ "get_robust_list", /* 269 */
++ "kexec_load", /* 270 */
++ "getcpu", /* 271 */
++ "epoll_pwait", /* 272 */
++ "ioprio_set", /* 273 */
++ "ioprio_get", /* 274 */
++ "utimensat", /* 275 */
++ "signalfd", /* 276 */
++ "timerfd", /* 277 */
++ "eventfd", /* 278 */
++ "fallocate", /* 279 */
++ "timerfd_create", /* 280 */
++ "timerfd_gettime", /* 281 */
++ "timerfd_settime", /* 282 */
++ "signalfd4", /* 283 */
++ "eventfd2", /* 284 */
++ "epoll_create1", /* 285 */
++ "dup3", /* 286 */
++ "pipe2", /* 287 */
++ "inotify_init1", /* 288 */
++ "preadv", /* 289 */
++ "pwritev", /* 290 */
++ "rt_tgsigqueueinfo", /* 291 */
++ "perf_event_open", /* 292 */
++ "accept4", /* 293 */
++ "recvmmsg", /* 294 */
++ "fanotify_init", /* 295 */
++ "fanotify_mark", /* 296 */
++ "prlimit64", /* 297 */
++ "name_to_handle_at", /* 298 */
++ "open_by_handle_at", /* 299 */
++ "clock_adjtime", /* 300 */
++ "syncfs", /* 301 */
++ "sendmmsg", /* 302 */
++ "setns", /* 303 */
++ "process_vm_readv", /* 304 */
++ "process_vm_writev", /* 305 */
+diff --git a/sysdeps/linux-gnu/mips/trace.c b/sysdeps/linux-gnu/mips/trace.c
+index e81b374..d54818e 100644
+--- a/sysdeps/linux-gnu/mips/trace.c
++++ b/sysdeps/linux-gnu/mips/trace.c
+@@ -1,5 +1,6 @@
+ /*
+ * This file is part of ltrace.
++ * Copyright (C) 2015 Imagination Technologies Limited
+ * Copyright (C) 2013 Petr Machata, Red Hat Inc.
+ * Copyright (C) 2012 Edgar E. Iglesias, Axis Communications
+ * Copyright (C) 2010 Arnaud Patard, Mandriva SA
+@@ -29,6 +30,7 @@
+ #include <signal.h>
+ #include <sys/ptrace.h>
+ #include <asm/ptrace.h>
++#include <asm/unistd.h>
+ #include <assert.h>
+ #include <asm/unistd.h>
+
+@@ -68,6 +70,44 @@
+ void
+ get_arch_dep(struct process *proc)
+ {
++#ifdef __LP64__
++ proc->mask_32bit = (proc->e_class == ELFCLASS32);
++#endif /* __LP64__ */
++ /* n32 personality is best approximated by n64,
++ at least for syscall numbers */
++ proc->personality = (proc->e_class == ELFCLASS64
++ || proc->e_abi == ABI_N32);
++}
++
++/**
++ \param abi ABI of current process, from mips_abi_type enum
++ \param list An array of 4 elements, each corresponding to an ABI, in
++ the order: o32, n32, n64, o64
++
++ return value from array corresponding to requested ABI
++ */
++static int
++abi_select(const int abi, const int list[])
++{
++ int retval;
++ switch (abi)
++ {
++ case ABI_N32:
++ retval = list[1];
++ break;
++ case ABI_N64:
++ retval = list[2];
++ break;
++ case ABI_O64:
++ retval = list[3];
++ break;
++ case ABI_O32:
++ default:
++ retval = list[0];
++ break;
++ }
++
++ return retval;
+ }
+
+ /**
+@@ -90,53 +130,94 @@ get_arch_dep(struct process *proc)
+ int
+ syscall_p(struct process *proc, int status, int *sysnum)
+ {
+- if (WIFSTOPPED(status)
+- && WSTOPSIG(status) == (SIGTRAP | proc->tracesysgood)) {
+- /* get the user's pc (plus 8) */
+- long pc = (long)get_instruction_pointer(proc);
+- /* fetch the SWI instruction */
+- int insn = ptrace(PTRACE_PEEKTEXT, proc->pid, pc - 4, 0);
+- int num = ptrace(PTRACE_PEEKTEXT, proc->pid, pc - 8, 0);
+-
+- /*
+- On a mips, syscall looks like:
+- 24040fa1 li v0, 0x0fa1 # 4001 --> _exit syscall
+- 0000000c syscall
+- */
+- if(insn!=0x0000000c){
+- /* sigreturn returns control to the point
+- where the signal was received; skip check
+- for preceeding syscall instruction */
+- int depth = proc->callstack_depth;
+- struct callstack_element *top = NULL;
+- if (depth > 0)
+- top = &proc->callstack[depth - 1];
+-
+- if (top != NULL && top->is_syscall &&
+- (top->c_un.syscall == (__NR_rt_sigreturn -
+- __NR_Linux) ||
+- top->c_un.syscall == (__NR_sigreturn -
+- __NR_Linux))) {
+- *sysnum = top->c_un.syscall;
+- return 2;
+- }
+- else
+- return 0;
+- }
+-
+- *sysnum = (num & 0xFFFF) - 4000;
+- /* if it is a syscall, return 1 or 2 */
+- if (proc->callstack_depth > 0 &&
+- proc->callstack[proc->callstack_depth - 1].is_syscall &&
+- proc->callstack[proc->callstack_depth - 1].c_un.syscall == *sysnum) {
++ unsigned long pc;
++ int insn, prev;
++ int min_syscall, max_syscall, sigreturn, rt_sigreturn;
++ struct callstack_element *top = NULL;
++ int depth = proc->callstack_depth;
++ const int syscallbase[] = {__NR_O32_Linux, __NR_N32_Linux,
++ __NR_64_Linux, __NR_O32_Linux};
++ const int syscallnum[] = {__NR_O32_Linux_syscalls,
++ __NR_N32_Linux_syscalls,
++ __NR_64_Linux_syscalls,
++ __NR_O32_Linux_syscalls};
++ const int rt_sigreturn_list[] = {193, 211, 211, 193};
++ const int sigreturn_list[] = {119, -1, -1, 119};
++
++ if (!WIFSTOPPED(status)
++ || WSTOPSIG(status) != (SIGTRAP | proc->tracesysgood))
++ return 0;
++
++ /* get the user's pc (plus 8) */
++ pc = (unsigned long)get_instruction_pointer(proc);
++ /* fetch the SWI instruction */
++ insn = ptrace(PTRACE_PEEKTEXT, proc->pid, pc - 4, 0);
++ prev = ptrace(PTRACE_PEEKTEXT, proc->pid, pc - 8, 0);
++
++ if (depth > 0)
++ top = &proc->callstack[depth - 1];
++
++ /* Range of syscall numbers varies with ABI; ref:asm/unistd.h */
++ min_syscall = abi_select(proc->e_abi, syscallbase);
++ max_syscall = min_syscall + abi_select(proc->e_abi, syscallnum);
++ sigreturn = min_syscall + abi_select(proc->e_abi, sigreturn_list);
++ rt_sigreturn = min_syscall + abi_select(proc->e_abi, rt_sigreturn_list);
++
++ /* not a syscall instruction */
++ if(insn!=0x0000000c){
++ /* sigreturn returns control to the point where the signal was
++ received; skip check for preceeding syscall instruction */
++ if (top != NULL && top->is_syscall
++ && (top->c_un.syscall == (rt_sigreturn - min_syscall)
++ || top->c_un.syscall == (sigreturn - min_syscall))) {
++ *sysnum = top->c_un.syscall;
+ return 2;
+ }
++ else
++ return 0;
++ }
+
+- if (*sysnum >= 0) {
+- return 1;
+- }
++ /*
++ On a mips, syscall looks like:
++ 24020fa1 li v0, 0x0fa1 # 4001 --> _exit syscall
++ 0000000c syscall
++ */
++ if ((prev & 0xFFFF0000) == 0x24020000) {
++ *sysnum = (prev & 0xFFFF) - min_syscall;
+ }
+- return 0;
++ /*
++ The above is not necessary in Linux kernel > v2.6.35. Recent
++ kernels have a fancy-pants method of restarting syscalls.
++ We must read v0 instead, to get the syscall number.
++
++ Unfortunately, v0 is not preserved till the point of return.
++ If already in syscall and v0 is invalid, assume this event
++ to be a return without attempting to match previous syscall.
++
++ Caveat: logic fails if v0 incidentally contains a valid
++ syscall number, distinct from the current syscall number,
++ at the point of return from a nested syscall.
++ */
++ else {
++ int v0 = ptrace(PTRACE_PEEKUSER, proc->pid, off_v0, 0);
++
++ if ((v0 >= min_syscall) && (v0 <= max_syscall))
++ *sysnum = v0 - min_syscall;
++ else if (depth > 0 && top->is_syscall)
++ *sysnum = top->c_un.syscall;
++ else /* syscall instruction without valid number - ignored */
++ return 0;
++ }
++
++ /* if it is a syscall, return 1 or 2 */
++ if (depth > 0 && top->is_syscall && top->c_un.syscall == *sysnum) {
++ return 2;
++ }
++
++ if (*sysnum >= 0)
++ return 1;
++ else
++ return 0;
+ }
+
+ /* Based on GDB code. */
+@@ -162,9 +243,11 @@ mips32_relative_offset (uint32_t inst)
+ return ((itype_immediate(inst) ^ 0x8000) - 0x8000) << 2;
+ }
+
+-int mips_next_pcs(struct process *proc, uint32_t pc, uint32_t *newpc)
++int mips_next_pcs(struct process *proc, unsigned long pc,
++ unsigned long *newpc)
+ {
+- uint32_t inst, rx;
++ uint32_t inst;
++ unsigned long rx;
+ int op;
+ int rn;
+ int nr = 0;
+@@ -277,8 +360,8 @@ int mips_next_pcs(struct process *proc, uint32_t pc, uint32_t *newpc)
+ return nr;
+
+ fail:
+- printf("nr=%d pc=%x\n", nr, pc);
+- printf("pc=%x %x\n", newpc[0], newpc[1]);
++ printf("nr=%d pc=%lx\n", nr, pc);
++ printf("pc=%lx %lx\n", newpc[0], newpc[1]);
+ return 0;
+ }
+
+@@ -304,17 +387,27 @@ fail:
+ * branches within the LL-SC sequence.
+ */
+ #define inrange(x,lo,hi) ((x)<=(hi) && (x)>=(lo))
++/* Instruction encodings for atomic operations */
++#ifdef __mips64
++#define op_SC_p(op) (op == 0x38 || op == 0x3c)
++#define op_LL_p(op) (op == 0x30 || op == 0x34)
++#else /* !__mips64 */
++#define op_SC_p(op) (op == 0x38)
++#define op_LL_p(op) (op == 0x30)
++#endif /* !__mips64 */
++
+ static int
+-mips_atomic_next_pcs(struct process *proc, uint32_t lladdr, uint32_t *newpcs)
++mips_atomic_next_pcs(struct process *proc, unsigned long lladdr,
++ unsigned long *newpcs)
+ {
+ int nr = 0;
+
+- uint32_t scaddr;
++ unsigned long scaddr;
+ for (scaddr = lladdr + 4; scaddr - lladdr <= 2048; scaddr += 4) {
+ /* Found SC, now stepover trailing branch */
+ uint32_t inst;
+ if (proc_read_32(proc, (arch_addr_t)scaddr, &inst) >= 0 &&
+- itype_op(inst) == 0x38) {
++ op_SC_p (itype_op(inst))) {
+ newpcs[nr++] = scaddr + 4;
+ break;
+ }
+@@ -327,16 +420,16 @@ mips_atomic_next_pcs(struct process *proc, uint32_t lladdr, uint32_t *newpcs)
+ }
+
+ /* Scan LL<->SC range for branches going outside that range */
+- uint32_t spc;
++ unsigned long spc;
+ for (spc = lladdr + 4; spc < scaddr; spc += 4) {
+- uint32_t scanpcs[2];
++ unsigned long scanpcs[2];
+ int snr = mips_next_pcs(proc, spc, scanpcs);
+
+ int i;
+ for (i = 0; i < snr; ++i) {
+ if (!inrange(scanpcs[i], lladdr, scaddr)) {
+- uint32_t *tmp = realloc(newpcs, (nr + 1) *
+- sizeof *newpcs);
++ unsigned long *tmp = realloc(newpcs, (nr + 1)
++ * sizeof *newpcs);
+ if (tmp == NULL) {
+ perror("malloc atomic next pcs");
+ return -1;
+@@ -357,8 +450,8 @@ arch_sw_singlestep(struct process *proc, struct breakpoint *bp,
+ int (*add_cb)(arch_addr_t, struct sw_singlestep_data *),
+ struct sw_singlestep_data *add_cb_data)
+ {
+- uint32_t pc = (uint32_t) get_instruction_pointer(proc);
+- uint32_t *newpcs;
++ unsigned long pc = (unsigned long) get_instruction_pointer(proc);
++ unsigned long *newpcs;
+ int nr;
+ uint32_t inst;
+
+@@ -369,7 +462,7 @@ arch_sw_singlestep(struct process *proc, struct breakpoint *bp,
+ return SWS_FAIL;
+
+ /* Starting an atomic read-modify-write sequence */
+- if (itype_op(inst) == 0x30)
++ if (op_LL_p(itype_op(inst)))
+ nr = mips_atomic_next_pcs(proc, pc, newpcs);
+ else
+ nr = mips_next_pcs(proc, pc, newpcs);
+@@ -462,7 +555,7 @@ gimme_arg(enum tof type, struct process *proc, int arg_num,
+ debug(2,"ret = %#lx",addr);
+ return addr;
+ }
+- ret = addr + 4*arg_num;
++ ret = addr + sizeof(long) * arg_num;
+ ret=ptrace(PTRACE_PEEKTEXT,proc->pid,addr,0);
+ debug(2,"ret = %#lx",ret);
+ return ret;
+@@ -474,7 +567,7 @@ gimme_arg(enum tof type, struct process *proc, int arg_num,
+ debug(2,"ret = %#lx",addr);
+ return addr;
+ }
+- ret = addr + 4*arg_num;
++ ret = addr + sizeof(long) * arg_num;
+ ret=ptrace(PTRACE_PEEKTEXT,proc->pid,addr,0);
+ debug(2,"ret = %#lx",ret);
+ return ret;
+@@ -483,4 +576,34 @@ gimme_arg(enum tof type, struct process *proc, int arg_num,
+ return 0;
+ }
+
++#ifdef __LP64__
++size_t
++arch_type_sizeof(struct process *proc, struct arg_type_info *info)
++{
++ if (proc == NULL)
++ return (size_t)-2;
++
++ switch (info->type) {
++ case ARGTYPE_LONG:
++ case ARGTYPE_ULONG:
++ return proc->mask_32bit ? 4 : sizeof (long);
++
++ case ARGTYPE_POINTER:
++ return proc->mask_32bit ? 4 : sizeof (void *);
++
++ default:
++ /* Use default value. */
++ return (size_t)-2;
++ }
++}
++
++size_t
++arch_type_alignof(struct process *proc, struct arg_type_info *info)
++{
++ if (proc == NULL)
++ return (size_t)-2;
++
++ return arch_type_sizeof(proc, info);
++}
++#endif /* __LP64__ */
+ /**@}*/
+diff --git a/sysdeps/linux-gnu/mksyscallent_mips b/sysdeps/linux-gnu/mksyscallent_mips
+index f3961b4..f8dcfe1 100755
+--- a/sysdeps/linux-gnu/mksyscallent_mips
++++ b/sysdeps/linux-gnu/mksyscallent_mips
+@@ -19,9 +19,7 @@
+
+ # hack expression to generate arch/syscallent.h from <asm/unistd.h>
+ # It reads from stdin and writes to stdout
+-# It should work OK on i386,m68k,arm,ia64
+-# It does NOT work in mips, s390
+-# It is untested in other architectures
++# Default is o32; arch=mips64 generates n64 syscalls
+
+ BEGIN {
+ max=0;
+@@ -31,7 +29,10 @@ BEGIN {
+ {
+ #debug
+ #printf("/%s/%s/%s/%s/\n", $1, $2, $3, $4);
+- if ($2 ~ /__NR_Linux/ && $3 ~ /4000/) {
++ min=4000
++ if (arch ~ "mips64") min=5000
++
++ if ($2 ~ /__NR_Linux/ && $3 ~ min) {
+ syscall=1;
+ }
+ if ($2 ~ /__NR_Linux_syscalls/) {
+--
+2.13.2
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/ltrace/ltrace/0001-Fix-tautological-compare-warning.patch b/import-layers/meta-openembedded/meta-oe/recipes-devtools/ltrace/ltrace/0001-Fix-tautological-compare-warning.patch
new file mode 100644
index 000000000..a599d0e19
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/ltrace/ltrace/0001-Fix-tautological-compare-warning.patch
@@ -0,0 +1,261 @@
+From 0af8ced6376f2256b9daac301c851e1c99c3b035 Mon Sep 17 00:00:00 2001
+From: Adam Trhon <adam.trhon@tbs-biometrics.com>
+Date: Fri, 12 May 2017 13:39:11 +0200
+Subject: [PATCH] Fix tautological compare warning
+
+By default, gcc ignores warning from code generated by macros
+(https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80369). When
+ltrace is compiled under icecream the warning *is generated*
+(https://github.com/icecc/icecream/issues/202)
+and the compilation fails (because of -Werror).
+
+Upstream-Status: Submitted [ltrace-devel@lists.alioth.debian.org]
+
+Signed-off-by: Adam Trhon <adam.trhon@tbs-biometrics.com>
+---
+ filter.c | 4 ++--
+ sysdeps/linux-gnu/arm/fetch.c | 2 +-
+ sysdeps/linux-gnu/arm/trace.c | 2 +-
+ sysdeps/linux-gnu/ia64/fetch.c | 2 +-
+ sysdeps/linux-gnu/metag/trace.c | 2 +-
+ sysdeps/linux-gnu/mips/plt.c | 2 +-
+ sysdeps/linux-gnu/ppc/fetch.c | 2 +-
+ sysdeps/linux-gnu/ppc/plt.c | 2 +-
+ sysdeps/linux-gnu/ppc/trace.c | 4 ++--
+ sysdeps/linux-gnu/s390/fetch.c | 2 +-
+ sysdeps/linux-gnu/s390/trace.c | 4 ++--
+ sysdeps/linux-gnu/x86/fetch.c | 2 +-
+ sysdeps/linux-gnu/x86/trace.c | 4 ++--
+ value.c | 4 ++--
+ 14 files changed, 19 insertions(+), 19 deletions(-)
+
+diff --git a/filter.c b/filter.c
+index ba50c40..a65856d 100644
+--- a/filter.c
++++ b/filter.c
+@@ -79,7 +79,7 @@ filter_lib_matcher_name_init(struct filter_lib_matcher *matcher,
+ {
+ switch (type) {
+ case FLM_MAIN:
+- assert(type != type);
++ assert(!"Unexpected value of type");
+ abort();
+
+ case FLM_SONAME:
+@@ -137,7 +137,7 @@ matcher_matches_library(struct filter_lib_matcher *matcher, struct library *lib)
+ case FLM_MAIN:
+ return lib->type == LT_LIBTYPE_MAIN;
+ }
+- assert(matcher->type != matcher->type);
++ assert(!"Unexpected value of matcher->type");
+ abort();
+ }
+
+diff --git a/sysdeps/linux-gnu/arm/fetch.c b/sysdeps/linux-gnu/arm/fetch.c
+index b500448..8f75fcf 100644
+--- a/sysdeps/linux-gnu/arm/fetch.c
++++ b/sysdeps/linux-gnu/arm/fetch.c
+@@ -317,7 +317,7 @@ arch_fetch_retval(struct fetch_context *ctx, enum tof type,
+ memmove(data, ctx->regs.uregs, sz);
+ return 0;
+ }
+- assert(info->type != info->type);
++ assert(!"Unexpected value of info->type");
+ abort();
+ }
+
+diff --git a/sysdeps/linux-gnu/arm/trace.c b/sysdeps/linux-gnu/arm/trace.c
+index 5e51e91..e76bf63 100644
+--- a/sysdeps/linux-gnu/arm/trace.c
++++ b/sysdeps/linux-gnu/arm/trace.c
+@@ -701,7 +701,7 @@ arch_type_sizeof(struct process *proc, struct arg_type_info *info)
+ return (size_t)-2;
+
+ default:
+- assert(info->type != info->type);
++ assert(!"Unexpected value of info->type");
+ abort();
+ }
+ }
+diff --git a/sysdeps/linux-gnu/ia64/fetch.c b/sysdeps/linux-gnu/ia64/fetch.c
+index 171c7a2..ee2fbc7 100644
+--- a/sysdeps/linux-gnu/ia64/fetch.c
++++ b/sysdeps/linux-gnu/ia64/fetch.c
+@@ -409,7 +409,7 @@ arch_fetch_arg_next(struct fetch_context *ctx, enum tof type,
+ case ARGTYPE_ARRAY:
+ /* Arrays decay into pointers. XXX Fortran? */
+ default:
+- assert(info->type != info->type);
++ assert(!"Unexpected value of info->type");
+ abort();
+ }
+ }
+diff --git a/sysdeps/linux-gnu/metag/trace.c b/sysdeps/linux-gnu/metag/trace.c
+index ad5fffe..7a843d6 100644
+--- a/sysdeps/linux-gnu/metag/trace.c
++++ b/sysdeps/linux-gnu/metag/trace.c
+@@ -142,7 +142,7 @@ get_regval_from_unit(enum metag_unitnum unit, unsigned int reg,
+ return regs->ax[reg][0];
+ /* We really shouldn't be here. */
+ default:
+- assert(unit != unit);
++ assert(!"Unexpected value of unit");
+ abort();
+ }
+ return 0;
+diff --git a/sysdeps/linux-gnu/mips/plt.c b/sysdeps/linux-gnu/mips/plt.c
+index c7c10ac..ca2307d 100644
+--- a/sysdeps/linux-gnu/mips/plt.c
++++ b/sysdeps/linux-gnu/mips/plt.c
+@@ -651,7 +651,7 @@ mips_stub_bp_continue(struct breakpoint *bp, struct process *proc)
+ break;
+ }
+
+- assert(bp->libsym->arch.type != bp->libsym->arch.type);
++ assert(!"Unexpected value of bp->libsym->arch.type");
+ abort();
+ }
+
+diff --git a/sysdeps/linux-gnu/ppc/fetch.c b/sysdeps/linux-gnu/ppc/fetch.c
+index c6cbd71..5db5675 100644
+--- a/sysdeps/linux-gnu/ppc/fetch.c
++++ b/sysdeps/linux-gnu/ppc/fetch.c
+@@ -502,7 +502,7 @@ allocate_argument(struct fetch_context *ctx, struct process *proc,
+ case ARGTYPE_ARRAY:
+ /* Arrays decay into pointers. XXX Fortran? */
+ default:
+- assert(info->type != info->type);
++ assert(!"Unexpected value of info->type");
+ abort();
+ }
+
+diff --git a/sysdeps/linux-gnu/ppc/plt.c b/sysdeps/linux-gnu/ppc/plt.c
+index 5f81889..781da03 100644
+--- a/sysdeps/linux-gnu/ppc/plt.c
++++ b/sysdeps/linux-gnu/ppc/plt.c
+@@ -1085,7 +1085,7 @@ ppc_plt_bp_continue(struct breakpoint *bp, struct process *proc)
+ break;
+ }
+
+- assert(bp->libsym->arch.type != bp->libsym->arch.type);
++ assert(!"Unexpected value of bp->libsym->arch.type");
+ abort();
+ }
+
+diff --git a/sysdeps/linux-gnu/ppc/trace.c b/sysdeps/linux-gnu/ppc/trace.c
+index 5aab538..caa6035 100644
+--- a/sysdeps/linux-gnu/ppc/trace.c
++++ b/sysdeps/linux-gnu/ppc/trace.c
+@@ -217,7 +217,7 @@ arch_type_sizeof(struct process *proc, struct arg_type_info *info)
+ return (size_t)-2;
+
+ default:
+- assert(info->type != info->type);
++ assert(!"Unexpected value of info->type");
+ abort();
+ break;
+ }
+@@ -231,7 +231,7 @@ arch_type_alignof(struct process *proc, struct arg_type_info *info)
+
+ switch (info->type) {
+ default:
+- assert(info->type != info->type);
++ assert(!"Unexpected value of info->type");
+ abort();
+ break;
+
+diff --git a/sysdeps/linux-gnu/s390/fetch.c b/sysdeps/linux-gnu/s390/fetch.c
+index 4ad5951..4721c30 100644
+--- a/sysdeps/linux-gnu/s390/fetch.c
++++ b/sysdeps/linux-gnu/s390/fetch.c
+@@ -266,7 +266,7 @@ arch_fetch_arg_next(struct fetch_context *ctx, enum tof type,
+ return allocate_gpr(ctx, proc, info, valuep, sz);
+
+ default:
+- assert(info->type != info->type);
++ assert(!"Unexpected value of info->type");
+ abort();
+ }
+ return -1;
+diff --git a/sysdeps/linux-gnu/s390/trace.c b/sysdeps/linux-gnu/s390/trace.c
+index 78b04c3..24f7801 100644
+--- a/sysdeps/linux-gnu/s390/trace.c
++++ b/sysdeps/linux-gnu/s390/trace.c
+@@ -213,7 +213,7 @@ arch_type_sizeof(struct process *proc, struct arg_type_info *info)
+ return (size_t)-2;
+
+ default:
+- assert(info->type != info->type);
++ assert(!"Unexpected value of info->type");
+ abort();
+ }
+ }
+@@ -226,7 +226,7 @@ arch_type_alignof(struct process *proc, struct arg_type_info *info)
+
+ switch (info->type) {
+ default:
+- assert(info->type != info->type);
++ assert(!"Unexpected value of info->type");
+ break;
+
+ case ARGTYPE_CHAR:
+diff --git a/sysdeps/linux-gnu/x86/fetch.c b/sysdeps/linux-gnu/x86/fetch.c
+index 6868101..ae2ed79 100644
+--- a/sysdeps/linux-gnu/x86/fetch.c
++++ b/sysdeps/linux-gnu/x86/fetch.c
+@@ -523,7 +523,7 @@ classify(struct process *proc, struct fetch_context *context,
+
+ default:
+ /* Unsupported type. */
+- assert(info->type != info->type);
++ assert(!"Unexpected value of info->type");
+ abort();
+ }
+ abort();
+diff --git a/sysdeps/linux-gnu/x86/trace.c b/sysdeps/linux-gnu/x86/trace.c
+index 6a1a6a5..d8d2115 100644
+--- a/sysdeps/linux-gnu/x86/trace.c
++++ b/sysdeps/linux-gnu/x86/trace.c
+@@ -145,7 +145,7 @@ arch_type_sizeof(struct process *proc, struct arg_type_info *info)
+ return (size_t)-2;
+
+ default:
+- assert(info->type != info->type);
++ assert(!"Unexpected value of info->type");
+ abort();
+ }
+ }
+@@ -158,7 +158,7 @@ arch_type_alignof(struct process *proc, struct arg_type_info *info)
+
+ switch (info->type) {
+ default:
+- assert(info->type != info->type);
++ assert(!"Unexpected value of info->type");
+ abort();
+ break;
+
+diff --git a/value.c b/value.c
+index 2125ba9..30edb4e 100644
+--- a/value.c
++++ b/value.c
+@@ -363,7 +363,7 @@ value_set_word(struct value *value, long word)
+ u.u64 = word;
+ break;
+ default:
+- assert(sz != sz);
++ assert(!"Unexpected value of sz");
+ abort();
+ }
+
+@@ -414,7 +414,7 @@ value_extract_word(struct value *value, long *retp,
+ *retp = (long)u.u64;
+ return 0;
+ default:
+- assert(sz != sz);
++ assert(!"Unexpected value of sz");
+ abort();
+ }
+ }
+--
+2.12.0
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/ltrace/ltrace/0001-Use-correct-enum-type.patch b/import-layers/meta-openembedded/meta-oe/recipes-devtools/ltrace/ltrace/0001-Use-correct-enum-type.patch
new file mode 100644
index 000000000..01a35842c
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/ltrace/ltrace/0001-Use-correct-enum-type.patch
@@ -0,0 +1,28 @@
+From df490528d1e81a98ba2991c700c92a8e6c969083 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Mon, 6 Mar 2017 21:32:22 -0800
+Subject: [PATCH 1/2] Use correct enum type
+
+Clang warns about wrong enum initializtion
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ sysdeps/linux-gnu/aarch64/fetch.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/sysdeps/linux-gnu/aarch64/fetch.c b/sysdeps/linux-gnu/aarch64/fetch.c
+index 2744df0..1dcf7cc 100644
+--- a/sysdeps/linux-gnu/aarch64/fetch.c
++++ b/sysdeps/linux-gnu/aarch64/fetch.c
+@@ -173,7 +173,7 @@ static struct fetch_script
+ pass_arg(struct fetch_context const *context,
+ struct process *proc, struct arg_type_info *info)
+ {
+- enum fetch_method cvt = CVT_NOP;
++ enum convert_method cvt = CVT_NOP;
+
+ size_t sz = type_sizeof(proc, info);
+ if (sz == (size_t) -1)
+--
+2.12.0
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/ltrace/ltrace/0001-configure-Recognise-linux-musl-as-a-host-OS.patch b/import-layers/meta-openembedded/meta-oe/recipes-devtools/ltrace/ltrace/0001-configure-Recognise-linux-musl-as-a-host-OS.patch
new file mode 100644
index 000000000..52264a17e
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/ltrace/ltrace/0001-configure-Recognise-linux-musl-as-a-host-OS.patch
@@ -0,0 +1,25 @@
+From c1d3aaf5ec810c2594938438c7b4ccd20943f255 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 7 Jul 2017 10:20:52 -0700
+Subject: [PATCH] configure: Recognise linux-musl as a host OS
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ configure.ac | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/configure.ac b/configure.ac
+index 3e8667f..95d6642 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -35,6 +35,7 @@ AC_CANONICAL_HOST
+ case "${host_os}" in
+ linux-gnu*) HOST_OS="linux-gnu" ;;
+ linux-uclibc*) HOST_OS="linux-gnu" ;;
++ linux-musl*) HOST_OS="linux-gnu" ;;
+ *) AC_MSG_ERROR([unkown host-os ${host_os}]) ;;
+ esac
+ AC_SUBST(HOST_OS)
+--
+2.13.2
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/ltrace/ltrace/0002-Fix-const-qualifier-error.patch b/import-layers/meta-openembedded/meta-oe/recipes-devtools/ltrace/ltrace/0002-Fix-const-qualifier-error.patch
new file mode 100644
index 000000000..c15277192
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/ltrace/ltrace/0002-Fix-const-qualifier-error.patch
@@ -0,0 +1,76 @@
+From 4d3ec1a514f9b1df8ce3a1b04c8a2823d977377f Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Mon, 6 Mar 2017 21:34:01 -0800
+Subject: [PATCH 2/2] Fix const qualifier error
+
+Fixes clang warning
+error: duplicate 'const' declaration specifier [-Werror,-Wduplicate-decl-specifier]
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ dict.h | 2 +-
+ library.c | 2 +-
+ vect.h | 2 +-
+ 3 files changed, 3 insertions(+), 3 deletions(-)
+
+Index: git/dict.h
+===================================================================
+--- git.orig/dict.h
++++ git/dict.h
+@@ -90,7 +90,7 @@ int dict_clone(struct dict *target, cons
+ assert(_source_d->values.elt_size == sizeof(VALUE_TYPE)); \
+ /* Check that callbacks are typed properly. */ \
+ void (*_key_dtor_cb)(KEY_TYPE *, void *) = DTOR_KEY; \
+- int (*_key_clone_cb)(KEY_TYPE *, const KEY_TYPE *, \
++ int (*_key_clone_cb)(KEY_TYPE *, KEY_TYPE *, \
+ void *) = CLONE_KEY; \
+ void (*_value_dtor_cb)(VALUE_TYPE *, void *) = DTOR_VALUE; \
+ int (*_value_clone_cb)(VALUE_TYPE *, const VALUE_TYPE *, \
+Index: git/library.c
+===================================================================
+--- git.orig/library.c
++++ git/library.c
+@@ -353,7 +353,7 @@ static void
+ library_exported_names_init(struct library_exported_names *names)
+ {
+ DICT_INIT(&names->names,
+- const char*, uint64_t,
++ char*, uint64_t,
+ dict_hash_string, dict_eq_string, NULL);
+ DICT_INIT(&names->addrs,
+ uint64_t, struct vect*,
+Index: git/vect.h
+===================================================================
+--- git.orig/vect.h
++++ git/vect.h
+@@ -66,7 +66,7 @@ int vect_clone(struct vect *target, cons
+ assert(_source_vec->elt_size == sizeof(ELT_TYPE)); \
+ /* Check that callbacks are typed properly. */ \
+ void (*_dtor_callback)(ELT_TYPE *, void *) = DTOR; \
+- int (*_clone_callback)(ELT_TYPE *, const ELT_TYPE *, \
++ int (*_clone_callback)(ELT_TYPE *, ELT_TYPE *, \
+ void *) = CLONE; \
+ vect_clone((TGT_VEC), _source_vec, \
+ (int (*)(void *, const void *, \
+Index: git/value_dict.c
+===================================================================
+--- git.orig/value_dict.c
++++ git/value_dict.c
+@@ -40,7 +40,7 @@ val_dict_init(struct value_dict *dict)
+ }
+
+ static int
+-value_clone_cb(struct value *tgt, const struct value *src, void *data)
++value_clone_cb(struct value *tgt, struct value *src, void *data)
+ {
+ return value_clone(tgt, src);
+ }
+@@ -53,7 +53,7 @@ value_dtor(struct value *val, void *data
+
+ static int
+ named_value_clone(struct named_value *tgt,
+- const struct named_value *src, void *data)
++ struct named_value *src, void *data)
+ {
+ tgt->name = strdup(src->name);
+ if (tgt->name == NULL)
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/ltrace/ltrace_git.bb b/import-layers/meta-openembedded/meta-oe/recipes-devtools/ltrace/ltrace_git.bb
index 8ae018503..01b3bbe1b 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-devtools/ltrace/ltrace_git.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/ltrace/ltrace_git.bb
@@ -10,20 +10,26 @@ LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=eb723b61539feef013de476e68b5c50a"
PE = "1"
-PV = "7.3+git${SRCPV}"
-SRCREV = "01b10e191e99d8cb147e5a2b7da8196e0ec6fb94"
+PV = "7.91+git${SRCPV}"
+SRCREV = "c22d359433b333937ee3d803450dc41998115685"
DEPENDS = "elfutils"
RDEPENDS_${PN} = "elfutils"
SRC_URI = "git://anonscm.debian.org/collab-maint/ltrace.git;branch=master \
file://configure-allow-to-disable-selinux-support.patch \
file://0001-replace-readdir_r-with-readdir.patch \
- "
+ file://0001-Use-correct-enum-type.patch \
+ file://0002-Fix-const-qualifier-error.patch \
+ file://0001-ARM-code-has-unreachable-code-after-switch-statement.patch \
+ file://0001-Fix-tautological-compare-warning.patch \
+ file://0001-Add-support-for-mips64-n32-n64.patch \
+ file://0001-configure-Recognise-linux-musl-as-a-host-OS.patch \
+ "
S = "${WORKDIR}/git"
inherit autotools
-PACKAGECONFIG ?= "${@bb.utils.contains('DISTRO_FEATURES', 'selinux', 'selinux', '', d)}"
+PACKAGECONFIG ?= "${@bb.utils.filter('DISTRO_FEATURES', 'selinux', d)}"
PACKAGECONFIG[unwind] = "--with-libunwind,--without-libunwind,libunwind"
PACKAGECONFIG[selinux] = "--enable-selinux,--disable-selinux,libselinux,libselinux"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/luajit/luajit_2.0.4.bb b/import-layers/meta-openembedded/meta-oe/recipes-devtools/luajit/luajit_2.0.4.bb
index 964dc1d59..cee9cc428 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-devtools/luajit/luajit_2.0.4.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/luajit/luajit_2.0.4.bb
@@ -11,7 +11,7 @@ SRC_URI[sha256sum] = "620fa4eb12375021bef6e4f237cbd2dd5d49e56beb414bee052c746bee
S = "${WORKDIR}/LuaJIT-${PV}"
-inherit pkgconfig binconfig
+inherit pkgconfig binconfig siteinfo
BBCLASSEXTEND = "native"
@@ -21,9 +21,7 @@ BBCLASSEXTEND = "native"
# you need to install the multilib development package (e.g.
# libc6-dev-i386 on Debian/Ubuntu) and build a 32 bit host part
# (HOST_CC="gcc -m32").
-BUILD_CC_ARCH_append_powerpc = ' -m32'
-BUILD_CC_ARCH_append_x86 = ' -m32'
-BUILD_CC_ARCH_append_arm = ' -m32'
+BUILD_CC_ARCH_append = " ${@['-m32',''][d.getVar('SITEINFO_BITS', True) != '32']}"
# The lua makefiles expect the TARGET_SYS to be from uname -s
# Values: Windows, Linux, Darwin, iOS, SunOS, PS3, GNU/kFreeBSD
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/mercurial/files/mercurial-CVE-2017-9462.patch b/import-layers/meta-openembedded/meta-oe/recipes-devtools/mercurial/files/mercurial-CVE-2017-9462.patch
new file mode 100644
index 000000000..3564661b4
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/mercurial/files/mercurial-CVE-2017-9462.patch
@@ -0,0 +1,135 @@
+# HG changeset patch
+# User Augie Fackler <augie@google.com>
+# Date 1492021435 25200
+# Wed Apr 12 11:23:55 2017 -0700
+# Branch stable
+# Node ID 77eaf9539499a1b8be259ffe7ada787d07857f80
+# Parent 68f263f52d2e3e2798b4f1e55cb665c6b043f93b
+dispatch: protect against malicious 'hg serve --stdio' invocations (sec)
+
+Some shared-ssh installations assume that 'hg serve --stdio' is a safe
+command to run for minimally trusted users. Unfortunately, the messy
+implementation of argument parsing here meant that trying to access a
+repo named '--debugger' would give the user a pdb prompt, thereby
+sidestepping any hoped-for sandboxing. Serving repositories over HTTP(S)
+is unaffected.
+
+We're not currently hardening any subcommands other than 'serve'. If
+your service exposes other commands to users with arbitrary repository
+names, it is imperative that you defend against repository names of
+'--debugger' and anything starting with '--config'.
+
+The read-only mode of hg-ssh stopped working because it provided its hook
+configuration to "hg serve --stdio" via --config parameter. This is banned for
+security reasons now. This patch switches it to directly call ui.setconfig().
+If your custom hosting infrastructure relies on passing --config to
+"hg serve --stdio", you'll need to find a different way to get that configuration
+into Mercurial, either by using ui.setconfig() as hg-ssh does in this patch,
+or by placing an hgrc file someplace where Mercurial will read it.
+
+mitrandir@fb.com provided some extra fixes for the dispatch code and
+for hg-ssh in places that I overlooked.
+
+CVE: CVE-2017-9462
+
+Upstream-Status: Backport
+
+diff --git a/contrib/hg-ssh b/contrib/hg-ssh
+--- a/contrib/hg-ssh
++++ b/contrib/hg-ssh
+@@ -32,7 +32,7 @@
+ # enable importing on demand to reduce startup time
+ from mercurial import demandimport; demandimport.enable()
+
+-from mercurial import dispatch
++from mercurial import dispatch, ui as uimod
+
+ import sys, os, shlex
+
+@@ -61,14 +61,15 @@
+ repo = os.path.normpath(os.path.join(cwd, os.path.expanduser(path)))
+ if repo in allowed_paths:
+ cmd = ['-R', repo, 'serve', '--stdio']
++ req = dispatch.request(cmd)
+ if readonly:
+- cmd += [
+- '--config',
+- 'hooks.pretxnopen.hg-ssh=python:__main__.rejectpush',
+- '--config',
+- 'hooks.prepushkey.hg-ssh=python:__main__.rejectpush'
+- ]
+- dispatch.dispatch(dispatch.request(cmd))
++ if not req.ui:
++ req.ui = uimod.ui.load()
++ req.ui.setconfig('hooks', 'pretxnopen.hg-ssh',
++ 'python:__main__.rejectpush', 'hg-ssh')
++ req.ui.setconfig('hooks', 'prepushkey.hg-ssh',
++ 'python:__main__.rejectpush', 'hg-ssh')
++ dispatch.dispatch(req)
+ else:
+ sys.stderr.write('Illegal repository "%s"\n' % repo)
+ sys.exit(255)
+diff --git a/mercurial/dispatch.py b/mercurial/dispatch.py
+--- a/mercurial/dispatch.py
++++ b/mercurial/dispatch.py
+@@ -155,6 +155,37 @@
+ pass # happens if called in a thread
+
+ def _runcatchfunc():
++ realcmd = None
++ try:
++ cmdargs = fancyopts.fancyopts(req.args[:], commands.globalopts, {})
++ cmd = cmdargs[0]
++ aliases, entry = cmdutil.findcmd(cmd, commands.table, False)
++ realcmd = aliases[0]
++ except (error.UnknownCommand, error.AmbiguousCommand,
++ IndexError, getopt.GetoptError):
++ # Don't handle this here. We know the command is
++ # invalid, but all we're worried about for now is that
++ # it's not a command that server operators expect to
++ # be safe to offer to users in a sandbox.
++ pass
++ if realcmd == 'serve' and '--stdio' in cmdargs:
++ # We want to constrain 'hg serve --stdio' instances pretty
++ # closely, as many shared-ssh access tools want to grant
++ # access to run *only* 'hg -R $repo serve --stdio'. We
++ # restrict to exactly that set of arguments, and prohibit
++ # any repo name that starts with '--' to prevent
++ # shenanigans wherein a user does something like pass
++ # --debugger or --config=ui.debugger=1 as a repo
++ # name. This used to actually run the debugger.
++ if (len(req.args) != 4 or
++ req.args[0] != '-R' or
++ req.args[1].startswith('--') or
++ req.args[2] != 'serve' or
++ req.args[3] != '--stdio'):
++ raise error.Abort(
++ _('potentially unsafe serve --stdio invocation: %r') %
++ (req.args,))
++
+ try:
+ debugger = 'pdb'
+ debugtrace = {
+diff --git a/tests/test-ssh.t b/tests/test-ssh.t
+--- a/tests/test-ssh.t
++++ b/tests/test-ssh.t
+@@ -357,6 +357,19 @@
+ abort: destination 'a repo' is not empty
+ [255]
+
++Make sure hg is really paranoid in serve --stdio mode. It used to be
++possible to get a debugger REPL by specifying a repo named --debugger.
++ $ hg -R --debugger serve --stdio
++ abort: potentially unsafe serve --stdio invocation: ['-R', '--debugger', 'serve', '--stdio']
++ [255]
++ $ hg -R --config=ui.debugger=yes serve --stdio
++ abort: potentially unsafe serve --stdio invocation: ['-R', '--config=ui.debugger=yes', 'serve', '--stdio']
++ [255]
++Abbreviations of 'serve' also don't work, to avoid shenanigans.
++ $ hg -R narf serv --stdio
++ abort: potentially unsafe serve --stdio invocation: ['-R', 'narf', 'serv', '--stdio']
++ [255]
++
+ Test hg-ssh using a helper script that will restore PYTHONPATH (which might
+ have been cleared by a hg.exe wrapper) and invoke hg-ssh with the right
+ parameters:
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/mercurial/mercurial-native_3.8.4.bb b/import-layers/meta-openembedded/meta-oe/recipes-devtools/mercurial/mercurial-native_4.0.1.bb
index 0526fc220..a08acd950 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-devtools/mercurial/mercurial-native_3.8.4.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/mercurial/mercurial-native_4.0.1.bb
@@ -5,9 +5,11 @@ LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
DEPENDS = "python-native"
-SRC_URI = "https://www.mercurial-scm.org/release/${BP}.tar.gz"
-SRC_URI[md5sum] = "cec2c3db688cb87142809089c6ae13e9"
-SRC_URI[sha256sum] = "4b2e3ef19d34fa1d781cb7425506a05d4b6b1172bab69d6ea78874175fdf3da6"
+SRC_URI = "https://www.mercurial-scm.org/release/${BP}.tar.gz \
+ file://mercurial-CVE-2017-9462.patch \
+"
+SRC_URI[md5sum] = "22a9b1d7c0c06a53f0ae5b386d536d08"
+SRC_URI[sha256sum] = "6aa4ade93c1b5e11937820880a466ebf1c824086d443cd799fc46e2617250d40"
S = "${WORKDIR}/mercurial-${PV}"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/meson/meson/native_bindir.patch b/import-layers/meta-openembedded/meta-oe/recipes-devtools/meson/meson/native_bindir.patch
new file mode 100644
index 000000000..53eeff7b6
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/meson/meson/native_bindir.patch
@@ -0,0 +1,52 @@
+diff --git a/mesonbuild/dependencies.py b/mesonbuild/dependencies.py
+index da73a57b7ecd..22100f69c580 100644
+--- a/mesonbuild/dependencies.py
++++ b/mesonbuild/dependencies.py
+@@ -65,7 +65,7 @@ class Dependency():
+ def need_threads(self):
+ return False
+
+- def get_pkgconfig_variable(self, variable_name):
++ def get_pkgconfig_variable(self, variable_name, use_native=False):
+ raise MesonException('Tried to get a pkg-config variable from a non-pkgconfig dependency.')
+
+ class InternalDependency(Dependency):
+@@ -177,8 +177,12 @@ class PkgConfigDependency(Dependency):
+ return s.format(self.__class__.__name__, self.name, self.is_found,
+ self.version_reqs)
+
+- def _call_pkgbin(self, args):
+- p, out = Popen_safe([self.pkgbin] + args, env=os.environ)[0:2]
++ def _call_pkgbin(self, args, use_native=False):
++ if use_native:
++ pkgbin = [self.pkgbin + "-native"]
++ else:
++ pkgbin = [self.pkgbin]
++ p, out = Popen_safe(pkgbin + args, env=os.environ)[0:2]
+ return (p.returncode, out.strip())
+
+ def _set_cargs(self):
+@@ -212,8 +216,8 @@ class PkgConfigDependency(Dependency):
+ self.is_libtool = True
+ self.libs.append(lib)
+
+- def get_pkgconfig_variable(self, variable_name):
+- ret, out = self._call_pkgbin(['--variable=' + variable_name, self.name])
++ def get_pkgconfig_variable(self, variable_name, use_native=False):
++ ret, out = self._call_pkgbin(['--variable=' + variable_name, self.name], use_native=use_native)
+ variable = ''
+ if ret != 0:
+ if self.required:
+@@ -933,10 +937,10 @@ class QtBaseDependency(Dependency):
+ corekwargs = {'required': 'false', 'silent': 'true'}
+ core = PkgConfigDependency(self.qtpkgname + 'Core', env, corekwargs)
+ # Used by self.compilers_detect()
+- self.bindir = core.get_pkgconfig_variable('host_bins')
++ self.bindir = core.get_pkgconfig_variable('host_bins', use_native=True)
+ if not self.bindir:
+ # If exec_prefix is not defined, the pkg-config file is broken
+- prefix = core.get_pkgconfig_variable('exec_prefix')
++ prefix = core.get_pkgconfig_variable('exec_prefix', use_native=True)
+ if prefix:
+ self.bindir = os.path.join(prefix, 'bin')
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/meson/meson_0.37.1.bb b/import-layers/meta-openembedded/meta-oe/recipes-devtools/meson/meson_0.37.1.bb
new file mode 100644
index 000000000..dbbea6447
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/meson/meson_0.37.1.bb
@@ -0,0 +1,20 @@
+HOMEPAGE = "http://mesonbuild.com"
+SUMMARY = "A high performance build system"
+
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://COPYING;md5=3b83ef96387f14655fc854ddc3c6bd57"
+
+SRC_URI = " \
+ git://github.com/mesonbuild/meson.git \
+ file://native_bindir.patch \
+"
+
+SRCREV = "3d4bfdcb22314ea7db45a5b075f8b2a9c1498aab"
+
+S = "${WORKDIR}/git"
+
+inherit setuptools3
+
+RDEPENDS_${PN}_class-target = "ninja python3-core python3-modules"
+
+BBCLASSEXTEND = "native"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/msgpack/msgpack-c/0001-Comment-intentional-fallthrough-in-case-statements.patch b/import-layers/meta-openembedded/meta-oe/recipes-devtools/msgpack/msgpack-c/0001-Comment-intentional-fallthrough-in-case-statements.patch
new file mode 100644
index 000000000..a388297a8
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/msgpack/msgpack-c/0001-Comment-intentional-fallthrough-in-case-statements.patch
@@ -0,0 +1,39 @@
+From 15d8bb6792c9639d85a9ffe2ac81431f1b986c21 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 22 Apr 2017 08:53:50 -0700
+Subject: [PATCH] Comment intentional fallthrough in case statements
+
+Fixes build with gcc7
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ include/msgpack/v1/adaptor/detail/cpp03_define_array.hpp | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/include/msgpack/v1/adaptor/detail/cpp03_define_array.hpp b/include/msgpack/v1/adaptor/detail/cpp03_define_array.hpp
+index b35c21a7..4c463a90 100644
+--- a/include/msgpack/v1/adaptor/detail/cpp03_define_array.hpp
++++ b/include/msgpack/v1/adaptor/detail/cpp03_define_array.hpp
+@@ -105,6 +105,7 @@ struct define_array<A0, A1> {
+ switch(size) {
+ default:
+ case 2: ptr[1].convert(a1);
++ //fallthrough
+ case 1: ptr[0].convert(a0);
+ }
+ }
+@@ -193,8 +194,11 @@ struct define_array<A0, A1, A2, A3> {
+ switch(size) {
+ default:
+ case 4: ptr[3].convert(a3);
++ //fallthrough
+ case 3: ptr[2].convert(a2);
++ //fallthrough
+ case 2: ptr[1].convert(a1);
++ //fallthrough
+ case 1: ptr[0].convert(a0);
+ }
+ }
+--
+2.12.2
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/msgpack/msgpack-c_2.1.1.bb b/import-layers/meta-openembedded/meta-oe/recipes-devtools/msgpack/msgpack-c_2.1.1.bb
new file mode 100644
index 000000000..7655d9469
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/msgpack/msgpack-c_2.1.1.bb
@@ -0,0 +1,22 @@
+SUMMARY = "MessagePack implementation for C and C++"
+DESCRIPTION = "MessagePack is an efficient binary serialization format. It's like JSON. but fast and small"
+HOMEPAGE = "http://msgpack.org/index.html"
+LICENSE = "BSL-1.0"
+LIC_FILES_CHKSUM = "file://NOTICE;md5=7a858c074723608e08614061dc044352 \
+ file://COPYING;md5=0639c4209b6f2abf1437c813b208f2d3 \
+ file://LICENSE_1_0.txt;md5=e4224ccaecb14d942c71d31bef20d78c \
+ "
+
+PV .= "+git${SRCPV}"
+
+SRCREV = "20ef1f925b007f170ab1c257e4aa61fdd0927773"
+
+SRC_URI = "git://github.com/msgpack/msgpack-c \
+ file://0001-Comment-intentional-fallthrough-in-case-statements.patch \
+ "
+
+inherit cmake pkgconfig
+
+S = "${WORKDIR}/git"
+
+FILES_${PN}-dev += "${libdir}/cmake/msgpack/*.cmake"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/ninja/ninja_1.7.1.bb b/import-layers/meta-openembedded/meta-oe/recipes-devtools/ninja/ninja_1.7.2.bb
index 2a4b82917..932e3a6ed 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-devtools/ninja/ninja_1.7.1.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/ninja/ninja_1.7.2.bb
@@ -5,7 +5,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=a81586a64ad4e476c791cda7e2f2c52e"
DEPENDS = "re2c-native ninja-native"
-SRCREV = "b49b0fc01bb052b6ac856b1e72be9391e962398e"
+SRCREV = "717b7b4a31db6027207588c0fb89c3ead384747b"
SRC_URI = "git://github.com/martine/ninja.git;branch=release"
@@ -27,4 +27,4 @@ do_install() {
install -m 0755 ${S}/ninja ${D}${bindir}/
}
-BBCLASSEXTEND = "native"
+BBCLASSEXTEND = "native nativesdk"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs_4.6.1.bb b/import-layers/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs_4.8.2.bb
index 03e981249..ae84ad308 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs_4.6.1.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs_4.8.2.bb
@@ -1,7 +1,7 @@
DESCRIPTION = "nodeJS Evented I/O for V8 JavaScript"
HOMEPAGE = "http://nodejs.org"
LICENSE = "MIT & BSD & Artistic-2.0"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=8e3c01094f0fcb889b13f0354e52f914"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=f45e9ffb97e64da46d14f462d34a039f"
DEPENDS = "openssl zlib"
@@ -12,8 +12,8 @@ COMPATIBLE_MACHINE_mips64 = "(!.*mips64).*"
SRC_URI = "http://nodejs.org/dist/v${PV}/node-v${PV}.tar.xz \
file://no-registry.patch \
"
-SRC_URI[md5sum] = "4f70295e3eebef1f998fa38456263eaf"
-SRC_URI[sha256sum] = "fe2a85df8758001878abb5bbaf17a6b6cdc12b3e465b1d3bace83b37fdf0345a"
+SRC_URI[md5sum] = "aea6139f952bb7e1d66f76afedee813c"
+SRC_URI[sha256sum] = "b961350b8490c791bdd3663925662ba0fbe01e004b43f1c2779baffcc816b930"
S = "${WORKDIR}/node-v${PV}"
@@ -44,7 +44,7 @@ do_configure () {
GYP_DEFINES="${GYP_DEFINES}" export GYP_DEFINES
# $TARGET_ARCH settings don't match --dest-cpu settings
./configure --prefix=${prefix} --without-snapshot --shared-openssl --shared-zlib \
- --dest-cpu="${@map_nodejs_arch(d.getVar('TARGET_ARCH', True), d)}" \
+ --dest-cpu="${@map_nodejs_arch(d.getVar('TARGET_ARCH'), d)}" \
--dest-os=linux \
${ARCHFLAGS}
}
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/packagekit/packagekit_0.5.6.bb b/import-layers/meta-openembedded/meta-oe/recipes-devtools/packagekit/packagekit_0.5.6.bb
index 3633f299d..1b60c470d 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-devtools/packagekit/packagekit_0.5.6.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/packagekit/packagekit_0.5.6.bb
@@ -62,4 +62,4 @@ FILES_${PN}-dev += "${libdir}/packagekit-backend/*.la ${libdir}/gtk-2.0/*/*.la"
FILES_${PN}-staticdev += "${libdir}/packagekit-backend/*.a ${libdir}/gtk-2.0/*/*.a"
# PackageKit-0.5.6/backends/opkg/pk-backend-opkg.c:31:26: fatal error: libopkg/opkg.h: No such file or directory
-PNBLACKLIST[packagekit] ?= "BROKEN: depends on old deprecated libopkg which is currently disabled and will be removed soon"
+PNBLACKLIST[packagekit] ?= "BROKEN: depends on old deprecated libopkg which is currently disabled and will be removed soon - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/php/php-5.6.26/0001-Add-lpthread-to-link.patch b/import-layers/meta-openembedded/meta-oe/recipes-devtools/php/php-5.6.26/0001-Add-lpthread-to-link.patch
new file mode 100644
index 000000000..f70e550ff
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/php/php-5.6.26/0001-Add-lpthread-to-link.patch
@@ -0,0 +1,38 @@
+From ed0a954983d50267c2fc0bc13aba929ea0cad971 Mon Sep 17 00:00:00 2001
+From: Dengke Du <dengke.du@windriver.com>
+Date: Tue, 2 May 2017 06:34:40 +0000
+Subject: [PATCH] Add -lpthread to link
+
+When building the php-5.6.26, the following errors occured:
+
+ ld: TSRM/.libs/TSRM.o: undefined reference to symbol
+ 'pthread_sigmask@@GLIBC_2.2.5'
+
+ error adding symbols: DSO missing from command line
+
+This is because no pthread to link, so we should add it.
+
+Upstream-Status: Pending
+
+Signed-off-by: Dengke Du <dengke.du@windriver.com>
+---
+ configure.in | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/configure.in b/configure.in
+index a467dff1..9afef652 100644
+--- a/configure.in
++++ b/configure.in
+@@ -1058,7 +1058,8 @@ case $php_sapi_module in
+ ;;
+ esac
+
+-EXTRA_LIBS="$EXTRA_LIBS $DLIBS $LIBS"
++PTHREAD_LIBS="-lpthread"
++EXTRA_LIBS="$EXTRA_LIBS $DLIBS $LIBS $PTHREAD_LIBS"
+
+ dnl this has to be here to prevent the openssl crypt() from
+ dnl overriding the system provided crypt().
+--
+2.11.0
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/php/php-7.1.7/0001-Specify-tag-with-libtool.patch b/import-layers/meta-openembedded/meta-oe/recipes-devtools/php/php-7.1.7/0001-Specify-tag-with-libtool.patch
new file mode 100644
index 000000000..18b4937db
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/php/php-7.1.7/0001-Specify-tag-with-libtool.patch
@@ -0,0 +1,62 @@
+From 5c84b039e97abd88f6a18da0e6d27383c00fea92 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Wed, 26 Jul 2017 23:06:56 -0700
+Subject: [PATCH] Specify --tag with libtool
+
+This helps in compiling with external toolchains
+with -fPIE appended to CC e.g. via hardening flags
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ acinclude.m4 | 8 ++++----
+ configure.in | 4 ++--
+ 2 files changed, 6 insertions(+), 6 deletions(-)
+
+diff --git a/acinclude.m4 b/acinclude.m4
+index a114a98..1cc7a26 100644
+--- a/acinclude.m4
++++ b/acinclude.m4
+@@ -806,10 +806,10 @@ dnl
+ dnl PHP_BUILD_PROGRAM
+ dnl
+ AC_DEFUN([PHP_BUILD_PROGRAM],[
+- php_c_pre='$(LIBTOOL) --mode=compile $(CC)'
++ php_c_pre='$(LIBTOOL) --tag=CC --mode=compile $(CC)'
+ php_c_meta='$(COMMON_FLAGS) $(CFLAGS_CLEAN) $(EXTRA_CFLAGS)'
+ php_c_post=
+- php_cxx_pre='$(LIBTOOL) --mode=compile $(CXX)'
++ php_cxx_pre='$(LIBTOOL) --tag=CXX --mode=compile $(CXX)'
+ php_cxx_meta='$(COMMON_FLAGS) $(CXXFLAGS_CLEAN) $(EXTRA_CXXFLAGS)'
+ php_cxx_post=
+ php_lo=lo
+@@ -819,10 +819,10 @@ AC_DEFUN([PHP_BUILD_PROGRAM],[
+ no) pic_setting='-prefer-non-pic';;
+ esac
+
+- shared_c_pre='$(LIBTOOL) --mode=compile $(CC)'
++ shared_c_pre='$(LIBTOOL) --tag=CC --mode=compile $(CC)'
+ shared_c_meta='$(COMMON_FLAGS) $(CFLAGS_CLEAN) $(EXTRA_CFLAGS) '$pic_setting
+ shared_c_post=
+- shared_cxx_pre='$(LIBTOOL) --mode=compile $(CXX)'
++ shared_cxx_pre='$(LIBTOOL) --tag=CXX --mode=compile $(CXX)'
+ shared_cxx_meta='$(COMMON_FLAGS) $(CXXFLAGS_CLEAN) $(EXTRA_CXXFLAGS) '$pic_setting
+ shared_cxx_post=
+ shared_lo=lo
+diff --git a/configure.in b/configure.in
+index 7d65b63..7221af9 100644
+--- a/configure.in
++++ b/configure.in
+@@ -1431,8 +1431,8 @@ PHP_SET_LIBTOOL_VARIABLE([--silent])
+ dnl libtool 1.4.3 needs this.
+ PHP_SET_LIBTOOL_VARIABLE([--preserve-dup-deps])
+
+-test -z "$PHP_COMPILE" && PHP_COMPILE='$(LIBTOOL) --mode=compile $(COMPILE) -c $<'
+-test -z "$CXX_PHP_COMPILE" && CXX_PHP_COMPILE='$(LIBTOOL) --mode=compile $(CXX_COMPILE) -c $<'
++test -z "$PHP_COMPILE" && PHP_COMPILE='$(LIBTOOL) --tag=CC --mode=compile $(COMPILE) -c $<'
++test -z "$CXX_PHP_COMPILE" && CXX_PHP_COMPILE='$(LIBTOOL) --tag=CXX --mode=compile $(CXX_COMPILE) -c $<'
+ SHARED_LIBTOOL='$(LIBTOOL)'
+
+ CC=$old_CC
+--
+2.13.3
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/php/php-7.1.7/change-AC_TRY_RUN-to-AC_TRY_LINK.patch b/import-layers/meta-openembedded/meta-oe/recipes-devtools/php/php-7.1.7/change-AC_TRY_RUN-to-AC_TRY_LINK.patch
new file mode 100644
index 000000000..39c334f39
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/php/php-7.1.7/change-AC_TRY_RUN-to-AC_TRY_LINK.patch
@@ -0,0 +1,56 @@
+[PATCH] config.m4: change AC_TRY_RUN to AC_TRY_LINK
+
+Upstream-Status: Pending
+
+AC_TRY_RUN is not suitable for cross-compile
+
+Signed-off-by: Roy Li <rongqing.li@windriver.com>
+---
+ ext/fileinfo/config.m4 | 31 ++++++-------------------------
+ 1 file changed, 6 insertions(+), 25 deletions(-)
+
+diff --git a/ext/fileinfo/config.m4 b/ext/fileinfo/config.m4
+index 7e98d62..8a8ea0e 100644
+--- a/ext/fileinfo/config.m4
++++ b/ext/fileinfo/config.m4
+@@ -14,31 +14,12 @@ if test "$PHP_FILEINFO" != "no"; then
+ libmagic/readcdf.c libmagic/softmagic.c"
+
+ AC_MSG_CHECKING([for strcasestr])
+- AC_TRY_RUN([
+-#include <string.h>
+-#include <strings.h>
+-#include <stdlib.h>
+-
+-int main(void)
+-{
+- char *s0, *s1, *ret;
+-
+- s0 = (char *) malloc(42);
+- s1 = (char *) malloc(8);
+-
+- memset(s0, 'X', 42);
+- s0[24] = 'Y';
+- s0[26] = 'Z';
+- s0[41] = '\0';
+- memset(s1, 'x', 8);
+- s1[0] = 'y';
+- s1[2] = 'Z';
+- s1[7] = '\0';
+-
+- ret = strcasestr(s0, s1);
+-
+- return !(NULL != ret);
+-}
++ AC_TRY_COMPILE([
++ #include <string.h>
++ #include <strings.h>
++ #include <stdlib.h>
++ ],[
++ strcasestr(NULL, NULL);
+ ],[
+ dnl using the platform implementation
+ AC_MSG_RESULT(yes)
+--
+1.9.1
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/php/php.inc b/import-layers/meta-openembedded/meta-oe/recipes-devtools/php/php.inc
index cd919403e..0e5502088 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-devtools/php/php.inc
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/php/php.inc
@@ -9,6 +9,8 @@ DEPENDS = "zlib bzip2 libxml2 virtual/libiconv php-native lemon-native \
openssl libmcrypt"
DEPENDS_class-native = "zlib-native libxml2-native"
+PHP_MAJOR_VERSION = "${@d.getVar('PV', True).split('.')[0]}"
+
SRC_URI = "http://php.net/distributions/php-${PV}.tar.bz2 \
file://acinclude-xml2-config.patch \
file://0001-php-don-t-use-broken-wrapper-for-mkdir.patch \
@@ -24,8 +26,7 @@ SRC_URI_append_class-target = " \
file://php-fpm.conf \
file://php-fpm-apache.conf \
file://configure.patch \
- file://pthread-check-threads-m4.patch \
- file://70_mod_php5.conf \
+ file://70_mod_php${PHP_MAJOR_VERSION}.conf \
file://php-fpm.service \
"
S = "${WORKDIR}/php-${PV}"
@@ -37,7 +38,7 @@ inherit autotools pkgconfig pythonnative gettext
SSTATE_SCAN_FILES += "phpize"
SSTATE_SCAN_FILES += "build-defs.h"
-PHP_LIBDIR = "${libdir}/php5"
+PHP_LIBDIR = "${libdir}/php${PHP_MAJOR_VERSION}"
# Common EXTRA_OECONF
COMMON_EXTRA_OECONF = "--enable-sockets \
@@ -58,7 +59,7 @@ EXTRA_OECONF = "--enable-mbstring \
--with-iconv=${STAGING_LIBDIR}/.. \
--with-mcrypt=${STAGING_DIR_TARGET}${exec_prefix} \
--with-bz2=${STAGING_DIR_TARGET}${exec_prefix} \
- --with-config-file-path=${sysconfdir}/php/apache2-php5 \
+ --with-config-file-path=${sysconfdir}/php/apache2-php${PHP_MAJOR_VERSION} \
${@base_conditional('SITEINFO_ENDIANNESS', 'le', 'ac_cv_c_bigendian_php=no', 'ac_cv_c_bigendian_php=yes', d)} \
${@bb.utils.contains('PACKAGECONFIG', 'pam', '', 'ac_cv_lib_pam_pam_start=no', d)} \
${COMMON_EXTRA_OECONF} \
@@ -70,8 +71,7 @@ EXTRA_OECONF_class-native = " \
"
PACKAGECONFIG ??= "mysql sqlite3 imap \
- ${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'pam', '', d)} \
- ${@bb.utils.contains('DISTRO_FEATURES', 'ipv6', 'ipv6', '', d)} \
+ ${@bb.utils.filter('DISTRO_FEATURES', 'ipv6 pam', d)} \
"
PACKAGECONFIG_class-native = ""
@@ -137,9 +137,9 @@ do_install_prepend_class-target() {
# fixme
do_install_append_class-target() {
- install -d ${D}/${sysconfdir}/
- if [ -d ${D}/${STAGING_DIR_NATIVE}/${sysconfdir} ];then
- mv ${D}/${STAGING_DIR_NATIVE}/${sysconfdir}/* ${D}/${sysconfdir}/
+ install -d ${D}${sysconfdir}/
+ if [ -d ${RECIPE_SYSROOT_NATIVE}${sysconfdir} ];then
+ install -m 0644 ${RECIPE_SYSROOT_NATIVE}${sysconfdir}/pear.conf ${D}${sysconfdir}/
fi
rm -rf ${D}/${TMPDIR}
rm -rf ${D}/.registry
@@ -147,7 +147,7 @@ do_install_append_class-target() {
rm -rf ${D}/.[a-z]*
rm -rf ${D}/var
rm -f ${D}/${sysconfdir}/php-fpm.conf.default
- sed -i 's:${STAGING_DIR_NATIVE}::g' ${D}/${sysconfdir}/pear.conf
+ sed -i 's:${STAGING_DIR_NATIVE}::g' ${D}${sysconfdir}/pear.conf
install -m 0644 ${WORKDIR}/php-fpm.conf ${D}/${sysconfdir}/php-fpm.conf
install -d ${D}/${sysconfdir}/apache2/conf.d
install -m 0644 ${WORKDIR}/php-fpm-apache.conf ${D}/${sysconfdir}/apache2/conf.d/php-fpm.conf
@@ -177,13 +177,13 @@ do_install_append_class-target() {
if ${@bb.utils.contains('PACKAGECONFIG', 'apache2', 'true', 'false', d)}; then
install -d ${D}${libdir}/apache2/modules
install -d ${D}${sysconfdir}/apache2/modules.d
- install -d ${D}${sysconfdir}/php/apache2-php5
- install -m 755 libs/libphp5.so ${D}${libdir}/apache2/modules
- install -m 644 ${WORKDIR}/70_mod_php5.conf ${D}${sysconfdir}/apache2/modules.d
- sed -i s,lib/,${libdir}/, ${D}${sysconfdir}/apache2/modules.d/70_mod_php5.conf
+ install -d ${D}${sysconfdir}/php/apache2-php${PHP_MAJOR_VERSION}
+ install -m 755 libs/libphp${PHP_MAJOR_VERSION}.so ${D}${libdir}/apache2/modules
+ install -m 644 ${WORKDIR}/70_mod_php${PHP_MAJOR_VERSION}.conf ${D}${sysconfdir}/apache2/modules.d
+ sed -i s,lib/,${libdir}/, ${D}${sysconfdir}/apache2/modules.d/70_mod_php${PHP_MAJOR_VERSION}.conf
cat ${S}/php.ini-production | \
sed -e 's,extension_dir = \"\./\",extension_dir = \"/usr/lib/extensions\",' \
- > ${D}${sysconfdir}/php/apache2-php5/php.ini
+ > ${D}${sysconfdir}/php/apache2-php${PHP_MAJOR_VERSION}/php.ini
rm -f ${D}${sysconfdir}/apache2/httpd.conf*
fi
}
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/php/php/70_mod_php7.conf b/import-layers/meta-openembedded/meta-oe/recipes-devtools/php/php/70_mod_php7.conf
new file mode 100644
index 000000000..d206265a2
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/php/php/70_mod_php7.conf
@@ -0,0 +1,9 @@
+LoadModule php7_module lib/apache2/modules/libphp7.so
+
+<FilesMatch "\.ph(p[2-7]?|tml)$">
+ SetHandler application/x-httpd-php
+</FilesMatch>
+
+<FilesMatch "\.phps$">
+ SetHandler application/x-httpd-php-source
+</FilesMatch>
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/php/php_5.5.38.bb b/import-layers/meta-openembedded/meta-oe/recipes-devtools/php/php_5.5.38.bb
deleted file mode 100644
index 26f35b1c1..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-devtools/php/php_5.5.38.bb
+++ /dev/null
@@ -1,6 +0,0 @@
-require php.inc
-
-LIC_FILES_CHKSUM = "file://LICENSE;md5=464ca70af214d2407f6b7d4458158afd"
-
-SRC_URI[md5sum] = "312244a0eecad602a1555ed2434e223f"
-SRC_URI[sha256sum] = "473c81ebb2e48ca468caee031762266651843d7227c18a824add9b07b9393e38"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/php/php_5.6.26.bb b/import-layers/meta-openembedded/meta-oe/recipes-devtools/php/php_5.6.26.bb
index cbd0615d6..dfce949f9 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-devtools/php/php_5.6.26.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/php/php_5.6.26.bb
@@ -2,6 +2,9 @@ require php.inc
LIC_FILES_CHKSUM = "file://LICENSE;md5=b602636d46a61c0ac0432bbf5c078fe4"
-SRC_URI += "file://change-AC_TRY_RUN-to-AC_TRY_LINK.patch"
+SRC_URI += "file://change-AC_TRY_RUN-to-AC_TRY_LINK.patch \
+ file://pthread-check-threads-m4.patch \
+ file://0001-Add-lpthread-to-link.patch \
+ "
SRC_URI[md5sum] = "cb424b705cfb715fc04f499f8a8cf52e"
SRC_URI[sha256sum] = "d47aab8083a4284b905777e1b45dd7735adc53be827b29f896684750ac8b6236"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/php/php_7.1.7.bb b/import-layers/meta-openembedded/meta-oe/recipes-devtools/php/php_7.1.7.bb
new file mode 100644
index 000000000..ebf923781
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/php/php_7.1.7.bb
@@ -0,0 +1,16 @@
+require php.inc
+
+LIC_FILES_CHKSUM = "file://LICENSE;md5=c0af599f66d0461c5837c695fcbc5c1e"
+
+SRC_URI += "file://change-AC_TRY_RUN-to-AC_TRY_LINK.patch \
+ file://0001-Specify-tag-with-libtool.patch \
+ "
+SRC_URI[md5sum] = "22e11a372f99afbbbf3f46a31e8a82ca"
+SRC_URI[sha256sum] = "079b6792987f38dc485f92258c04f9e02dedd593f9d260ebe725343f812d1ff8"
+
+PACKAGECONFIG[mysql] = "--with-mysqli=${STAGING_BINDIR_CROSS}/mysql_config \
+ --with-pdo-mysql=${STAGING_BINDIR_CROSS}/mysql_config \
+ ,--without-mysqli --without-pdo-mysql \
+ ,mysql5"
+
+FILES_${PN}-fpm += "${sysconfdir}/php-fpm.d/www.conf.default"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/protobuf/protobuf_2.6.1.bb b/import-layers/meta-openembedded/meta-oe/recipes-devtools/protobuf/protobuf_3.1.0.bb
index 2977c59c4..18210b1e5 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-devtools/protobuf/protobuf_2.6.1.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/protobuf/protobuf_3.1.0.bb
@@ -12,11 +12,11 @@ DEPENDS = "zlib"
RDEPENDS_${PN}-compiler = "${PN}"
RDEPENDS_${PN}-dev += "${PN}-compiler"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=af6809583bfde9a31595a58bb4a24514"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=35953c752efc9299b184f91bef540095"
-SRCREV = "bba83652e1be610bdb7ee1566ad18346d98b843c"
+SRCREV = "a428e42072765993ff674fda72863c9f1aa2d268"
-PV = "2.6.1+git${SRCPV}"
+PV = "3.1.0+git${SRCPV}"
SRC_URI = "git://github.com/google/protobuf.git"
@@ -28,4 +28,6 @@ S = "${WORKDIR}/git"
FILES_${PN}-compiler = "${bindir} ${libdir}/libprotoc${SOLIBS}"
+MIPS_INSTRUCTION_SET = "mips"
+
BBCLASSEXTEND = "native nativesdk"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/python/python-distutils-extra.bb b/import-layers/meta-openembedded/meta-oe/recipes-devtools/python/python-distutils-extra.bb
new file mode 100644
index 000000000..56dd33d7f
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/python/python-distutils-extra.bb
@@ -0,0 +1,9 @@
+require python-distutils-extra.inc
+
+inherit setuptools
+
+DISTUTILS_INSTALL_ARGS += "--install-lib=${libdir}/${PYTHON_DIR}/site-packages"
+
+RDEPENDS_${PN} = "\
+ python-distutils \
+"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/python/python-distutils-extra.inc b/import-layers/meta-openembedded/meta-oe/recipes-devtools/python/python-distutils-extra.inc
new file mode 100644
index 000000000..4d87d77cd
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/python/python-distutils-extra.inc
@@ -0,0 +1,13 @@
+SUMMARY = "python-distutils extension"
+DESCRITION = "python-distutils extension integrating gettext support, themed icons and scrollkeeper based documentation"
+HOMEPAGE = "https://launchpad.net/python-distutils-extra"
+SECTION = "devel/python"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=4325afd396febcb659c36b49533135d4"
+
+PV = "2.39"
+SRC_URI = "https://launchpad.net/python-distutils-extra/trunk/${PV}/+download/python-distutils-extra-${PV}.tar.gz"
+SRC_URI[md5sum] = "16e06db0ef73a35b4bff4b9eed5699b5"
+SRC_URI[sha256sum] = "723f24f4d65fc8d99b33a002fbbb3771d4cc9d664c97085bf37f3997ae8063af"
+
+BBCLASSEXTEND = "native"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/python/python-pygobject_3.20.1.bb b/import-layers/meta-openembedded/meta-oe/recipes-devtools/python/python-pygobject_3.22.0.bb
index 77416d45b..acc2f5b7a 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-devtools/python/python-pygobject_3.20.1.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/python/python-pygobject_3.22.0.bb
@@ -8,7 +8,7 @@ inherit autotools pkgconfig gnomebase distutils-base gobject-introspection
PYTHON_BASEVERSION = "2.7"
PYTHON_PN = "python"
-DEPENDS += "python glib-2.0"
+DEPENDS += "gnome-common-native python glib-2.0"
SRCNAME="pygobject"
SRC_URI = " \
@@ -16,8 +16,8 @@ SRC_URI = " \
file://0001-configure.ac-add-sysroot-path-to-GI_DATADIR-don-t-se.patch \
"
-SRC_URI[md5sum] = "4354c6283b135f859563b72457f6a321"
-SRC_URI[sha256sum] = "3d261005d6fed6a92ac4c25f283792552f7dad865d1b7e0c03c2b84c04dbd745"
+SRC_URI[md5sum] = "ed4117ed5d554d25fd7718807fbf819f"
+SRC_URI[sha256sum] = "08b29cfb08efc80f7a8630a2734dec65a99c1b59f1e5771c671d2e4ed8a5cbe7"
S = "${WORKDIR}/${SRCNAME}-${PV}"
@@ -26,9 +26,9 @@ BBCLASSEXTEND = "native"
EXTRA_OECONF = "--disable-cairo --with-python=${PYTHON}"
RDEPENDS_${PN} += "python-setuptools python-importlib"
+RDEPENDS_${PN}_class-native = ""
do_install_append() {
# Remove files that clash with python3-pygobject; their content is same
- rm ${D}${includedir}/pygobject-3.0/pygobject.h ${D}${libdir}/pkgconfig/pygobject-3.0.pc
+ rm -rf ${D}${includedir}/pygobject-3.0//pygobject.h ${D}${libdir}/pkgconfig
}
-
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/python/python-simplejson_3.8.2.bb b/import-layers/meta-openembedded/meta-oe/recipes-devtools/python/python-simplejson_3.8.2.bb
deleted file mode 100644
index 0c9112e44..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-devtools/python/python-simplejson_3.8.2.bb
+++ /dev/null
@@ -1,27 +0,0 @@
-SUMMARY = "Simple, fast, extensible JSON encoder/decoder for Python"
-HOMEPAGE = "http://cheeseshop.python.org/pypi/simplejson"
-SECTION = "devel/python"
-
-LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=c6338d7abd321c0b50a2a547e441c52e"
-PR = "r1"
-
-SRCNAME = "simplejson"
-
-SRC_URI = "http://cheeseshop.python.org/packages/source/s/simplejson/${SRCNAME}-${PV}.tar.gz"
-SRC_URI[md5sum] = "53b1371bbf883b129a12d594a97e9a18"
-SRC_URI[sha256sum] = "d58439c548433adcda98e695be53e526ba940a4b9c44fb9a05d92cd495cdd47f"
-
-S = "${WORKDIR}/${SRCNAME}-${PV}"
-
-inherit setuptools
-
-RDEPENDS_${PN} = "\
- python-core \
- python-re \
- python-io \
- python-netserver \
- python-numbers \
-"
-
-
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/python/python3-distutils-extra.bb b/import-layers/meta-openembedded/meta-oe/recipes-devtools/python/python3-distutils-extra.bb
new file mode 100644
index 000000000..af242b850
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/python/python3-distutils-extra.bb
@@ -0,0 +1,11 @@
+require python-distutils-extra.inc
+
+inherit setuptools3
+
+S = "${WORKDIR}/python-distutils-extra-${PV}"
+
+DISTUTILS_INSTALL_ARGS += "--install-lib=${libdir}/${PYTHON_DIR}/site-packages"
+
+RDEPENDS_${PN} = "\
+ python3-setuptools \
+"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/rapidjson/rapidjson/remove-march-native-from-CMAKE_CXX_FLAGS.patch b/import-layers/meta-openembedded/meta-oe/recipes-devtools/rapidjson/rapidjson/remove-march-native-from-CMAKE_CXX_FLAGS.patch
new file mode 100644
index 000000000..cf3e16ea5
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/rapidjson/rapidjson/remove-march-native-from-CMAKE_CXX_FLAGS.patch
@@ -0,0 +1,40 @@
+From 827155e5e659b2a5065b00d701bc59b57feab2bf Mon Sep 17 00:00:00 2001
+From: Andre McCurdy <armccurdy@gmail.com>
+Date: Mon, 19 Dec 2016 01:37:11 -0800
+Subject: [PATCH] remove -march=native from CMAKE_CXX_FLAGS
+
+Not appropriate when cross compiling.
+
+Upstream-Status: Inappropriate [configuration]
+
+Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
+---
+ CMakeLists.txt | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+Index: git/CMakeLists.txt
+===================================================================
+--- git.orig/CMakeLists.txt
++++ git/CMakeLists.txt
+@@ -51,10 +51,10 @@ endif(CCACHE_FOUND)
+
+ if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")
+ if(${CMAKE_SYSTEM_PROCESSOR} STREQUAL "powerpc" OR ${CMAKE_SYSTEM_PROCESSOR} STREQUAL "ppc64" OR ${CMAKE_SYSTEM_PROCESSOR} STREQUAL "ppc64le")
+- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -mcpu=native")
++ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
+ else()
+ #FIXME: x86 is -march=native, but doesn't mean every arch is this option. To keep original project's compatibility, I leave this except POWER.
+- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -march=native")
++ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
+ endif()
+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wextra -Werror")
+ set(EXTRA_CXX_FLAGS -Weffc++ -Wswitch-default -Wfloat-equal -Wconversion -Wsign-conversion)
+@@ -84,7 +84,7 @@ elseif (CMAKE_CXX_COMPILER_ID MATCHES "C
+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -mcpu=native")
+ else()
+ #FIXME: x86 is -march=native, but doesn't mean every arch is this option. To keep original project's compatibility, I leave this except POWER.
+- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -march=native")
++ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
+ endif()
+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wextra -Werror -Wno-missing-field-initializers")
+ set(EXTRA_CXX_FLAGS -Weffc++ -Wswitch-default -Wfloat-equal -Wconversion -Wimplicit-fallthrough -Weverything)
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/rapidjson/rapidjson_git.bb b/import-layers/meta-openembedded/meta-oe/recipes-devtools/rapidjson/rapidjson_git.bb
new file mode 100644
index 000000000..4cded0720
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/rapidjson/rapidjson_git.bb
@@ -0,0 +1,25 @@
+SUMMARY = "A fast JSON parser/generator for C++ with both SAX/DOM style API"
+HOMEPAGE = "http://rapidjson.org/"
+SECTION = "libs"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://license.txt;md5=ba04aa8f65de1396a7e59d1d746c2125"
+
+SRC_URI = "git://github.com/miloyip/rapidjson.git;nobranch=1 \
+ file://remove-march-native-from-CMAKE_CXX_FLAGS.patch \
+"
+
+SRCREV = "e5635fb27feab7f6e8d7b916aa20ad799045a641"
+
+PV = "1.1.0+git${SRCPV}"
+
+S = "${WORKDIR}/git"
+
+inherit cmake
+
+EXTRA_OECMAKE += "-DRAPIDJSON_BUILD_DOC=OFF -DRAPIDJSON_BUILD_TESTS=OFF -DRAPIDJSON_BUILD_EXAMPLES=OFF"
+
+# RapidJSON is a header-only C++ library, so the main package will be empty.
+
+FILES_${PN}-dev += "${libdir}/cmake"
+
+BBCLASSEXTEND = "native nativesdk"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/sip/sip_4.19.2.bb b/import-layers/meta-openembedded/meta-oe/recipes-devtools/sip/sip_4.19.2.bb
new file mode 100644
index 000000000..1d837c59f
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/sip/sip_4.19.2.bb
@@ -0,0 +1,42 @@
+SUMMARY = "SIP is a C++/Python Wrapper Generator"
+HOMEPAGE = "http://www.riverbankcomputing.co.uk/sip"
+SECTION = "devel"
+LICENSE = "GPLv2+"
+LIC_FILES_CHKSUM = "file://LICENSE-GPL2;md5=e91355d8a6f8bd8f7c699d62863c7303"
+
+inherit python-dir
+
+DEPENDS = "python"
+
+SRC_URI = "${SOURCEFORGE_MIRROR}/project/pyqt/sip/sip-${PV}/sip-${PV}.tar.gz"
+SRC_URI[md5sum] = "4f48e212890ebe584e8d804cfbcfc61e"
+SRC_URI[sha256sum] = "432b4aad25254e6997913e33b1ca3cf5fd21d5729a50a3ce2edccbea82c80533"
+
+BBCLASSEXTEND = "native"
+
+PACKAGES += "python-sip"
+
+do_configure_prepend_class-target() {
+ echo "py_platform = linux" > sip.cfg
+ echo "py_inc_dir = %(sysroot)/${includedir}/python%(py_major).%(py_minor)" >> 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%(py_major).%(py_minor)/site-packages" >> sip.cfg
+ echo "sip_sip_dir = ${D}/${datadir}/sip" >> sip.cfg
+ python configure.py --configuration sip.cfg --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%(py_major).%(py_minor)" >> 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%(py_major).%(py_minor)/site-packages" >> sip.cfg
+ echo "sip_sip_dir = ${D}/${datadir}/sip" >> sip.cfg
+ python configure.py --configuration sip.cfg --sysroot ${STAGING_DIR_NATIVE}
+}
+do_install() {
+ oe_runmake install
+}
+
+FILES_python-sip = "${libdir}/${PYTHON_DIR}/site-packages/"
+FILES_${PN}-dbg += "${libdir}/${PYTHON_DIR}/site-packages/.debug"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/tcltk/tk_8.6.6.bb b/import-layers/meta-openembedded/meta-oe/recipes-devtools/tcltk/tk_8.6.6.bb
index 59075bc6b..d3bf397b4 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-devtools/tcltk/tk_8.6.6.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/tcltk/tk_8.6.6.bb
@@ -32,7 +32,7 @@ SRC_URI[sha256sum] = "d62c371a71b4744ed830e3c21d27968c31dba74dd2c45f36b9b071e6d8
S = "${WORKDIR}/${BPN}${PV}/unix"
# Short version format: "8.6"
-VER = "${@os.path.splitext(d.getVar('PV', True))[0]}"
+VER = "${@os.path.splitext(d.getVar('PV'))[0]}"
LDFLAGS += "-Wl,-rpath,${libdir}/tcltk/${PV}/lib"
inherit autotools distro_features_check
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/uw-imap/uw-imap_2007f.bb b/import-layers/meta-openembedded/meta-oe/recipes-devtools/uw-imap/uw-imap_2007f.bb
index 402c42e41..0849e8856 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-devtools/uw-imap/uw-imap_2007f.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/uw-imap/uw-imap_2007f.bb
@@ -17,7 +17,7 @@ SRC_URI[sha256sum] = "53e15a2b5c1bc80161d42e9f69792a3fa18332b7b771910131004eb520
S = "${WORKDIR}/imap-${PV}"
-PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'pam', '', d)}"
+PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'pam', d)}"
PACKAGECONFIG[pam] = ",,libpam"
EXTRA_OEMAKE = "CC='${CC}' ARRC='${AR} -rc' RANLIB='${RANLIB}'"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/vala-dbus-binding-tool/vala-dbus-binding-tool.inc b/import-layers/meta-openembedded/meta-oe/recipes-devtools/vala-dbus-binding-tool/vala-dbus-binding-tool.inc
index 074513038..f7d480f17 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-devtools/vala-dbus-binding-tool/vala-dbus-binding-tool.inc
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/vala-dbus-binding-tool/vala-dbus-binding-tool.inc
@@ -1,6 +1,6 @@
DESCRIPTION = "Vala DBus Binding Tool"
SECTION = "devel"
-DEPENDS = "vala libgee libxml2 intltool-native"
+DEPENDS = "vala libgee libxml2"
HOMEPAGE = "http://wiki.freesmartphone.org/index.php/Implementations/vala-dbus-binding-tool"
LICENSE = "GPLv3"
LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/vala-dbus-binding-tool/vala-dbus-binding-tool_0.4.0.bb b/import-layers/meta-openembedded/meta-oe/recipes-devtools/vala-dbus-binding-tool/vala-dbus-binding-tool_0.4.0.bb
index 82fb73c3f..19e3dceca 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-devtools/vala-dbus-binding-tool/vala-dbus-binding-tool_0.4.0.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/vala-dbus-binding-tool/vala-dbus-binding-tool_0.4.0.bb
@@ -2,3 +2,5 @@ require vala-dbus-binding-tool.inc
SRC_URI[md5sum] = "59eab7abf38f35355d3786803bd2441f"
SRC_URI[sha256sum] = "1e37ab2e6238eaef9f573560ea7379e6955570f7c9503083e50c4c185c1956df"
+
+PNBLACKLIST[vala-dbus-binding-tool] ?= "Fails to build with RSS http://errors.yoctoproject.org/Errors/Details/131628/ - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/vala-dbus-binding-tool/vala-dbus-binding-tool_git.bb b/import-layers/meta-openembedded/meta-oe/recipes-devtools/vala-dbus-binding-tool/vala-dbus-binding-tool_git.bb
index 02a869f2a..32f34550d 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-devtools/vala-dbus-binding-tool/vala-dbus-binding-tool_git.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/vala-dbus-binding-tool/vala-dbus-binding-tool_git.bb
@@ -16,3 +16,5 @@ SRC_URI = "git://github.com/freesmartphone/vala-dbus-binding-tool.git;protocol=h
file://0001-configure.ac-don-t-use-dash-in-m4-macro-names.patch \
"
S = "${WORKDIR}/git"
+
+PNBLACKLIST[vala-dbus-binding-tool] ?= "Fails to build with RSS http://errors.yoctoproject.org/Errors/Details/130581/ - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/xerces-c/xerces-c_3.1.4.bb b/import-layers/meta-openembedded/meta-oe/recipes-devtools/xerces-c/xerces-c_3.1.4.bb
index b848b0693..64ac74723 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-devtools/xerces-c/xerces-c_3.1.4.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/xerces-c/xerces-c_3.1.4.bb
@@ -16,8 +16,8 @@ SRC_URI[sha256sum] = "9408f12c1628ecf80730bedbe8b2caad810edd01bb4c66f77b60c873e8
inherit autotools
PACKAGECONFIG ??= "curl icu"
-PACKAGECONFIG[curl] = "--with-curl=${STAGING_DIR},--with-curl=no,curl"
-PACKAGECONFIG[icu] = "--with-icu=${STAGING_DIR},--with-icu=no,icu"
+PACKAGECONFIG[curl] = "--with-curl=${STAGING_DIR_TARGET}${prefix},--with-curl=no,curl"
+PACKAGECONFIG[icu] = "--with-icu=${STAGING_DIR_TARGET}${prefix},--with-icu=no,icu"
do_install_prepend () {
sed -i -e 's:-L${STAGING_DIR}/lib:-L\$\{libdir\}:g' ${B}/xerces-c.pc
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/yajl/yajl_1.0.12.bb b/import-layers/meta-openembedded/meta-oe/recipes-devtools/yajl/yajl_1.0.12.bb
new file mode 100644
index 000000000..8ced7b84f
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/yajl/yajl_1.0.12.bb
@@ -0,0 +1,19 @@
+SUMMARY = "Yet Another JSON Library."
+
+DESCRIPTION = "YAJL is a small event-driven (SAX-style) JSON parser \
+written in ANSI C, and a small validating JSON generator."
+
+HOMEPAGE = "http://lloyd.github.com/yajl/"
+
+LICENSE = "BSD-3-Clause"
+LIC_FILES_CHKSUM = "file://COPYING;md5=da2e9aa80962d54e7c726f232a2bd1e8"
+
+# Use 1.0.12 tag
+SRCREV = "17b1790fb9c8abbb3c0f7e083864a6a014191d56"
+SRC_URI = "git://github.com/lloyd/yajl;nobranch=1"
+
+inherit cmake lib_package
+
+S = "${WORKDIR}/git"
+
+EXTRA_OECMAKE = "-DLIB_SUFFIX=${@d.getVar('baselib').replace('lib', '')}"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-devtools/yajl/yajl_2.1.0.bb b/import-layers/meta-openembedded/meta-oe/recipes-devtools/yajl/yajl_2.1.0.bb
index 1bf538955..d9a5821cb 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-devtools/yajl/yajl_2.1.0.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-devtools/yajl/yajl_2.1.0.bb
@@ -15,4 +15,4 @@ S = "${WORKDIR}/git"
inherit cmake lib_package
-EXTRA_OECMAKE = "-DLIB_SUFFIX=${@d.getVar('baselib', True).replace('lib', '')}"
+EXTRA_OECMAKE = "-DLIB_SUFFIX=${@d.getVar('baselib').replace('lib', '')}"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/acpica/acpica_20150515.bb b/import-layers/meta-openembedded/meta-oe/recipes-extended/acpica/acpica_20150515.bb
deleted file mode 100644
index de897e191..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/acpica/acpica_20150515.bb
+++ /dev/null
@@ -1,46 +0,0 @@
-SUMMARY = "ACPICA tools for the development and debug of ACPI tables"
-DESCRIPTION = "The ACPI Component Architecture (ACPICA) project provides an \
-OS-independent reference implementation of the Advanced Configuration and \
-Power Interface Specification (ACPI). ACPICA code contains those portions of \
-ACPI meant to be directly integrated into the host OS as a kernel-resident \
-subsystem, and a small set of tools to assist in developing and debugging \
-ACPI tables."
-
-HOMEPAGE = "http://www.acpica.org/"
-SECTION = "console/tools"
-
-LICENSE = "BSD | GPLv2"
-LIC_FILES_CHKSUM = "file://generate/unix/readme.txt;md5=204407e197c1a01154a48f6c6280c3aa"
-
-COMPATIBLE_HOST = "(i.86|x86_64|arm|aarch64).*-linux"
-
-DEPENDS = "bison flex"
-
-SRC_URI = "https://acpica.org/sites/acpica/files/acpica-unix2-${PV}.tar.gz \
- file://no-werror.patch \
- "
-SRC_URI[md5sum] = "2bc4a7ccc82de9df9fa964f784ecb29c"
-SRC_URI[sha256sum] = "61204ec56d71bc9bfa2ee2ade4c66f7e8541772ac72ef8ccc20b3f339cc96374"
-
-S = "${WORKDIR}/acpica-unix2-${PV}"
-
-EXTRA_OEMAKE = "CC='${CC}' 'OPT_CFLAGS=-Wall'"
-
-do_install() {
- install -D -p -m0755 generate/unix/bin*/iasl ${D}${bindir}/iasl
- install -D -p -m0755 generate/unix/bin*/acpibin ${D}${bindir}/acpibin
- install -D -p -m0755 generate/unix/bin*/acpiexec ${D}${bindir}/acpiexec
- install -D -p -m0755 generate/unix/bin*/acpihelp ${D}${bindir}/acpihelp
- install -D -p -m0755 generate/unix/bin*/acpinames ${D}${bindir}/acpinames
- install -D -p -m0755 generate/unix/bin*/acpisrc ${D}${bindir}/acpisrc
- install -D -p -m0755 generate/unix/bin*/acpixtract ${D}${bindir}/acpixtract
-}
-
-# iasl*.bb is a subset of this recipe, so RREPLACE it
-PROVIDES = "iasl"
-RPROVIDES_${PN} += "iasl"
-RREPLACES_${PN} += "iasl"
-RCONFLIGHTS_${PN} += "iasl"
-
-NATIVE_INSTALL_WORKS = "1"
-BBCLASSEXTEND = "native"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/acpica/acpitests/aapits-linux.patch b/import-layers/meta-openembedded/meta-oe/recipes-extended/acpica/acpitests/aapits-linux.patch
deleted file mode 100644
index 7c5d6b044..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/acpica/acpitests/aapits-linux.patch
+++ /dev/null
@@ -1,336 +0,0 @@
-From: Al Stone <ahs3@ahs3.net>
-Date: Mon, 7 Apr 2014 19:09:37 +0000
-Subject: [PATCH 1/2] Fixup aapits build
-
-From http://git.linaro.org/people/al.stone/acpica-tools.git
-Upstream-status: Unknown
-
-diff -urN acpica-unix2-20130626/tests/aapits/atexec.c acpica-unix2-20130626-aapits/tests/aapits/atexec.c
---- acpica-unix2-20130626/tests/aapits/atexec.c 2013-01-17 12:48:28.000000000 -0700
-+++ acpica-unix2-20130626-aapits/tests/aapits/atexec.c 2013-07-25 13:44:23.023894441 -0600
-@@ -639,6 +639,7 @@
- }
-
-
-+#if ACPI_MACHINE_WIDTH == 32
- /*******************************************************************************
- *
- * FUNCTION: AtBuildLocalRSDT
-@@ -757,8 +758,9 @@
- LocalRSDT->Header.Checksum = (UINT8)~LocalRSDT->Header.Checksum;
- }
- }
-+#endif
-
-
- /*******************************************************************************
- *
- * FUNCTION: AtBuildLocalXSDT
-@@ -1424,7 +1426,7 @@
- ACPI_WARNING ((AE_INFO,
- "Request on [%4.4s] is beyond region limit Req-%X+%X, Base=%X, Len-%X\n",
- (RegionObject->Region.Node)->Name.Ascii, (UINT32) Address,
-- ByteWidth, (UINT32) BufferAddress, Length));
-+ ByteWidth, (UINT32) BufferAddress, (UINT32) Length));
-
- return (AE_AML_REGION_LIMIT);
- }
-@@ -1792,7 +1796,9 @@
- Path, Obj.Integer.Value, Value);
- #else
- printf ("API Error: Value of %s is 0x%llx instead of expected 0x%llx\n",
-- Path, Obj.Integer.Value, Value);
-+ Path,
-+ (long long unsigned int) Obj.Integer.Value,
-+ (long long unsigned int) Value);
- #endif
- Status = AE_ERROR;
- }
-@@ -1871,7 +1877,7 @@
- {
- TestErrors++;
- printf ("Test Error: cannot allocate buffer of %d bytes\n",
-- Results.Length);
-+ (int) Results.Length);
- return (AE_NO_MEMORY);
- }
- Results.Pointer = Object;
-@@ -1952,7 +1956,8 @@
- {
- printf ("AtCheckBuffer: unexpected length %d of Buffer vs"
- " calculated %d bytes\n",
-- Results.Length, ACPI_ROUND_UP_TO_NATIVE_WORD(sizeof (ACPI_OBJECT) + Length));
-+ (int)Results.Length,
-+ (int)(ACPI_ROUND_UP_TO_NATIVE_WORD(sizeof (ACPI_OBJECT) + Length)));
- }
-
- /* Initialize the return buffer structure */
-@@ -1961,7 +1968,7 @@
- {
- TestErrors++;
- printf ("Test Error: cannot allocate buffer of %d bytes\n",
-- Results.Length);
-+ (int) Results.Length);
- return (AE_NO_MEMORY);
- }
- Results.Pointer = Object;
-diff -urN acpica-unix2-20130626/tests/aapits/atinit.c acpica-unix2-20130626-aapits/tests/aapits/atinit.c
---- acpica-unix2-20130626/tests/aapits/atinit.c 2013-01-17 12:48:28.000000000 -0700
-+++ acpica-unix2-20130626-aapits/tests/aapits/atinit.c 2013-07-25 13:20:19.706705960 -0600
-@@ -3024,7 +3024,7 @@
- AapiErrors++;
- printf ("API Error: AcpiGetSystemInfo() returned"
- " Length %d, expected %d\n",
-- OutBuffer.Length, sizeof (Info));
-+ (int) OutBuffer.Length, (int) sizeof (Info));
- return (AE_ERROR);
- }
-
-@@ -3046,7 +3046,7 @@
- AapiErrors++;
- printf ("API Error: AcpiGetSystemInfo() returned"
- " Length %d, expected %d\n",
-- OutBuffer.Length, sizeof (Info));
-+ (int) OutBuffer.Length, (int) sizeof (Info));
- return (AE_ERROR);
- }
-
-@@ -3066,7 +3066,7 @@
- AapiErrors++;
- printf ("API Error: AcpiGetSystemInfo() returned"
- " Length %d, expected %d\n",
-- OutBuffer.Length, sizeof (Info));
-+ (int) OutBuffer.Length, (int) sizeof (Info));
- return (AE_ERROR);
- }
- else if (OutBuffer.Pointer != &Info)
-@@ -3149,7 +3149,7 @@
- AapiErrors++;
- printf ("API Error: AcpiGetSystemInfo() returned"
- " Length %d, expected %d\n",
-- OutBuffer.Length, sizeof (Info));
-+ (int) OutBuffer.Length, (int) sizeof (Info));
- return (AE_ERROR);
- }
- else if (OutBuffer.Pointer != &Info)
-@@ -3214,7 +3214,7 @@
- AapiErrors++;
- printf ("API Error: AcpiGetSystemInfo() returned"
- " Length %d, expected %d\n",
-- OutBuffer.Length, sizeof (ACPI_SYSTEM_INFO));
-+ (int) OutBuffer.Length, (int) sizeof (ACPI_SYSTEM_INFO));
- return (AE_ERROR);
- }
- else
-diff -urN acpica-unix2-20130626/tests/aapits/atmain.c acpica-unix2-20130626-aapits/tests/aapits/atmain.c
---- acpica-unix2-20130626/tests/aapits/atmain.c 2013-01-17 12:48:28.000000000 -0700
-+++ acpica-unix2-20130626-aapits/tests/aapits/atmain.c 2013-07-25 13:18:22.083323948 -0600
-@@ -315,7 +315,7 @@
- {
- printf ("ACPICA API TS err: test num %ld of test case %ld"
- " is not implemented\n",
-- test_num, test_case);
-+ (long int) test_num, (long int) test_case);
- return (AtRetNotImpl);
- }
-
-@@ -430,7 +432,7 @@
- if (test_case < 1 || test_case > AT_TEST_CASE_NUM)
- {
- printf ("ACPICA API TS err: test case %ld is out of range 1 - %d\n",
-- test_case, AT_TEST_CASE_NUM);
-+ (long int) test_case, (int) AT_TEST_CASE_NUM);
- return (AtRetBadParam);
- }
-
-@@ -438,7 +440,7 @@
- if (test_num < 0 || test_num > AtTestCase[test_case].TestsNum)
- {
- printf ("ACPICA API TS err: test num %ld is out of range 0 - %d\n",
-- test_num, AtTestCase[test_case].TestsNum);
-+ (long int) test_num, AtTestCase[test_case].TestsNum);
- return (AtRetBadParam);
- }
-
-diff -urN acpica-unix2-20130626/tests/aapits/atnamespace.c acpica-unix2-20130626-aapits/tests/aapits/atnamespace.c
---- acpica-unix2-20130626/tests/aapits/atnamespace.c 2013-01-17 12:48:28.000000000 -0700
-+++ acpica-unix2-20130626-aapits/tests/aapits/atnamespace.c 2013-07-25 13:24:15.366466707 -0600
-@@ -2535,7 +2535,8 @@
- #else
- printf ("API Error: Address of %s (0x%llX) != (0x%llX)\n",
- PathNames[2 * i + 1],
-- Info->Address, ExpectedInfo[i].Address);
-+ (long long unsigned int) Info->Address,
-+ (long long unsigned int) ExpectedInfo[i].Address);
- #endif
- #else
- printf ("API Error: Address of %s (0x%X) != (0x%X)\n",
-@@ -2908,7 +2909,8 @@
- TestErrors++;
- printf ("AtGetNextObjectTypeCommon: different numbers of entities"
- "in TypesNames (%d) and LevelTypes0000 (%d)\n",
-- TypesCount, sizeof (LevelTypes0000) / sizeof (ACPI_OBJECT_TYPE));
-+ TypesCount,
-+ (int) (sizeof (LevelTypes0000) / sizeof (ACPI_OBJECT_TYPE)));
- return (AE_ERROR);
- }
-
-@@ -4192,7 +4194,9 @@
- Pathname, Obj.Integer.Value, Value);
- #else
- printf ("API Error: Value of %s is 0x%llx instead of expected 0x%llx\n",
-- Pathname, Obj.Integer.Value, Value);
-+ Pathname,
-+ (long long unsigned int) Obj.Integer.Value,
-+ (long long unsigned int) Value);
- #endif
- Status = AE_ERROR;
- }
-@@ -5199,7 +5203,7 @@
- {
- AapiErrors++;
- printf ("API Error: AcpiOsAllocate(%d) returned NULL\n",
-- OutName.Length);
-+ (int) OutName.Length);
- return (AE_ERROR);
- }
- }
-diff -urN acpica-unix2-20130626/tests/aapits/atosxfctrl.c acpica-unix2-20130626-aapits/tests/aapits/atosxfctrl.c
---- acpica-unix2-20130626/tests/aapits/atosxfctrl.c 2013-01-17 12:48:28.000000000 -0700
-+++ acpica-unix2-20130626-aapits/tests/aapits/atosxfctrl.c 2013-07-25 13:30:00.375492751 -0600
-@@ -737,13 +737,15 @@
- #if ACPI_MACHINE_WIDTH == 64
- #ifdef _MSC_VER
- printf("OsxfCtrlFingReg: unexpected Width %d of Reg 0x%I64x\n",
-+ Width, Address);
- #else
- printf("OsxfCtrlFingReg: unexpected Width %d of Reg 0x%llx\n",
-+ Width, (long long unsigned int) Address);
- #endif
- #else
- printf("OsxfCtrlFingReg: unexpected Width %d of Reg 0x%x\n",
--#endif
- Width, Address);
-+#endif
- return (NULL);
- }
-
-@@ -764,15 +766,19 @@
- #ifdef _MSC_VER
- printf("OsxfCtrlFingReg: intersection Regs (0x%I64x: 0x%x)"
- " and (0x%I64x: 0x%x)\n",
-+ Reg->Address, Reg->Width, Address, Width);
- #else
- printf("OsxfCtrlFingReg: intersection Regs (0x%llx: 0x%x)"
- " and (0x%llx: 0x%x)\n",
-+ (long long unsigned int) Reg->Address,
-+ Reg->Width,
-+ (long long unsigned int) Address, Width);
- #endif
- #else
- printf("OsxfCtrlFingReg: intersection Regs (0x%x: 0x%x)"
- " and (0x%x: 0x%x)\n",
--#endif
- Reg->Address, Reg->Width, Address, Width);
-+#endif
- return (NULL);
- }
- }
-@@ -786,13 +792,15 @@
- #if ACPI_MACHINE_WIDTH == 64
- #ifdef _MSC_VER
- printf("OsxfCtrlFingReg: no memory for Reg (0x%I64x: 0x%x)\n",
-+ Reg->Address, Reg->Width);
- #else
- printf("OsxfCtrlFingReg: no memory for Reg (0x%llx: 0x%x)\n",
-+ (long long unsigned int) Reg->Address, Reg->Width);
- #endif
- #else
- printf("OsxfCtrlFingReg: no memory for Reg (0x%x: 0x%x)\n",
--#endif
- Reg->Address, Reg->Width);
-+#endif
- return (NULL);
- }
- Reg->Type = Type;
-@@ -932,14 +940,19 @@
- #if ACPI_MACHINE_WIDTH == 64
- #ifdef _MSC_VER
- printf("%.2u (%s Address 0x%I64x: Width %.2u) r/w counts: %u/%u\n",
-+ i, (Reg->Type == EMUL_REG_SYS)? "SYS": "IO",
-+ Reg->Address, Reg->Width, Reg->ReadCount, Reg->WriteCount);
- #else
- printf("%.2u (%s Address 0x%llx: Width %.2u) r/w counts: %u/%u\n",
-+ i, (Reg->Type == EMUL_REG_SYS)? "SYS": "IO",
-+ (long long unsigned int) Reg->Address,
-+ Reg->Width, Reg->ReadCount, Reg->WriteCount);
- #endif
- #else
- printf("%.2u (%s Address 0x%.4x: Width %.2u) r/w counts: %u/%u\n",
--#endif
- i, (Reg->Type == EMUL_REG_SYS)? "SYS": "IO",
- Reg->Address, Reg->Width, Reg->ReadCount, Reg->WriteCount);
-+#endif
- Reg = Reg->Next;
- i++;
- }
-diff -urN acpica-unix2-20130626/tests/aapits/atresource.c acpica-unix2-20130626-aapits/tests/aapits/atresource.c
---- acpica-unix2-20130626/tests/aapits/atresource.c 2013-01-17 12:48:29.000000000 -0700
-+++ acpica-unix2-20130626-aapits/tests/aapits/atresource.c 2013-07-25 13:25:49.423565947 -0600
-@@ -174,7 +174,7 @@
- AapiErrors++;
- printf ("API Error: AcpiGetCurrentResources(%s) returned Length %d,"
- " expected %d\n",
-- Pathname, OutBuffer.Length, RT0000_DEV0_CRS_LEN);
-+ Pathname, (int) OutBuffer.Length, RT0000_DEV0_CRS_LEN);
- return (AE_ERROR);
- }
-
-@@ -490,7 +490,7 @@
- AapiErrors++;
- printf ("API Error: AcpiGetCurrentResources(%s) returned Length %d,"
- " expected %d\n",
-- Pathname, OutBuffer.Length, RT0000_DEV0_CRS_LEN);
-+ Pathname, (int) OutBuffer.Length, RT0000_DEV0_CRS_LEN);
- return (AE_ERROR);
- }
-
-@@ -689,7 +689,7 @@
- AapiErrors++;
- printf ("Api Error: Resource->Length (%d) != %d\n",
- CurrentResource->Length,
-- ACPI_ROUND_UP_TO_NATIVE_WORD (ACPI_RS_SIZE (ACPI_RESOURCE_IRQ)));
-+ (int) (ACPI_ROUND_UP_TO_NATIVE_WORD (ACPI_RS_SIZE (ACPI_RESOURCE_IRQ))));
- }
-
- if (CurrentResource->Data.Irq.Triggering != 0) /* Level-Triggered */
-@@ -981,7 +981,7 @@
- AapiErrors++;
- printf ("API Error: AcpiGetPossibleResources(%s) returned Length %d,"
- " expected %d\n",
-- Pathname, OutBuffer.Length, RT0000_DEV0_CRS_LEN);
-+ Pathname, (int) OutBuffer.Length, RT0000_DEV0_CRS_LEN);
- return (AE_ERROR);
- }
-
-@@ -1923,7 +1923,7 @@
- AapiErrors++;
- printf ("API Error: AcpiGetIrqRoutingTable(%s) returned Length %d,"
- " expected %d\n",
-- Pathname, OutBuffer.Length, 0xA48);
-+ Pathname, (int) OutBuffer.Length, 0xA48);
- return (AE_ERROR);
- }
-
-diff -urN acpica-unix2-20130626/tests/aapits/Makefile acpica-unix2-20130626-aapits/tests/aapits/Makefile
---- acpica-unix2-20130626/tests/aapits/Makefile 2013-01-17 12:48:29.000000000 -0700
-+++ acpica-unix2-20130626-aapits/tests/aapits/Makefile 2013-07-25 15:17:09.309236422 -0600
-@@ -194,7 +194,7 @@
- CFLAGS+= -Wall -g -D_LINUX -DNDEBUG -D_CONSOLE -DACPI_APITS -DACPI_EXEC_APP -D_MULTI_THREADED -Wstrict-prototypes -I../../source/include
-
-
--acpiexec : $(patsubst %.c,%.o, $(SRCS))
-+$(PROG) : $(patsubst %.c,%.o, $(SRCS))
- $(CC) $(LDFLAGS) $(patsubst %.c,%.o, $(SRCS)) -o $(PROG)
-
- CLEANFILES= $(PROG)
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/acpica/acpitests/aapits-makefile.patch b/import-layers/meta-openembedded/meta-oe/recipes-extended/acpica/acpitests/aapits-makefile.patch
deleted file mode 100644
index 4d9e9974d..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/acpica/acpitests/aapits-makefile.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From: Al Stone <ahs3@ahs3.net>
-Date: Mon, 7 Apr 2014 19:09:37 +0000
-Subject: [PATCH 1/2] Fixup aapits build
-
-From http://git.linaro.org/people/al.stone/acpica-tools.git
-Upstream-status: Unknown
-
-diff -urN acpica-unix2-20140325/tests/aapits/Makefile acpica-unix2-20140325/tests/aapits/Makefile
---- acpica-unix2-20140325/tests/aapits/Makefile 2014-04-05 14:23:14.683636794 -0600
-+++ acpica-unix2-20140325-aapits/tests/aapits/Makefile 2014-04-05 15:10:57.879184598 -0600
-@@ -16,6 +16,7 @@
- atosxfwrap.c \
- osunixxf.c \
- ../../source/common/ahids.c \
-+ ../../source/common/ahuuids.c \
- ../../source/common/cmfsize.c \
- ../../source/common/getopt.c \
- ../../source/components/hardware/hwtimer.c \
-@@ -174,6 +175,7 @@
- ../../source/components/utilities/utexcep.c \
- ../../source/components/utilities/utfileio.c \
- ../../source/components/utilities/utglobal.c \
-+ ../../source/components/utilities/uthex.c \
- ../../source/components/utilities/utids.c \
- ../../source/components/utilities/utinit.c \
- ../../source/components/utilities/utlock.c \
-@@ -189,6 +191,7 @@
- ../../source/components/utilities/utstate.c \
- ../../source/components/utilities/utstring.c \
- ../../source/components/utilities/uttrack.c \
-+ ../../source/components/utilities/utuuid.c \
- ../../source/components/utilities/utxface.c \
- ../../source/components/utilities/utxferror.c \
- ../../source/components/utilities/utxfinit.c \
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/acpica/acpitests_20140828.bb b/import-layers/meta-openembedded/meta-oe/recipes-extended/acpica/acpitests_20140828.bb
deleted file mode 100644
index 1f6f190c2..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/acpica/acpitests_20140828.bb
+++ /dev/null
@@ -1,35 +0,0 @@
-SUMMARY = "Test suite used to validate ACPICA"
-HOMEPAGE = "http://www.acpica.org/"
-
-LICENSE = "Intel"
-LIC_FILES_CHKSUM = "file://tests/aapits/atexec.c;beginline=1;endline=115;md5=e92bcdfcd01d117d1bda3e814bb2030a"
-
-DEPENDS = "bison flex"
-
-SRC_URI = "https://acpica.org/sites/acpica/files/acpitests-unix-${PV}.tar.gz;name=acpitests \
- https://acpica.org/sites/acpica/files/acpica-unix2-${PV}.tar.gz;name=acpica \
- file://aapits-linux.patch \
- file://aapits-makefile.patch \
-"
-SRC_URI[acpitests.md5sum] = "db9d6fdaa8e3eb101d700ee5ba4938ed"
-SRC_URI[acpitests.sha256sum] = "e576c74bf1bf1c9f7348bf9419e05c8acfece7105abcdc052e66670c7af2cf00"
-SRC_URI[acpica.md5sum] = "6f05f0d10166a1b1ff6107f3d1cdf1e5"
-SRC_URI[acpica.sha256sum] = "01d8867656c5ba41dec307c4383ce676196ad4281ac2c9dec9f5be5fac6d888e"
-
-S = "${WORKDIR}/acpitests-unix-${PV}"
-
-EXTRA_OEMAKE = "'CC=${TARGET_PREFIX}gcc ${HOST_CC_ARCH} ${TOOLCHAIN_OPTIONS}' 'OPT_CFLAGS=-Wall'"
-
-# The Makefiles expect a specific layout
-do_compile() {
- cp -af ${WORKDIR}/acpica-unix2-${PV}/source ${S}
- cd tests/aapits
- oe_runmake
-}
-
-do_install() {
- install -d ${D}${bindir}
- install -m0755 tests/aapits/bin/aapits ${D}${bindir}
-}
-
-COMPATIBLE_HOST = "(i.86|x86_64|arm|aarch64).*-linux"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/acpica/files/no-werror.patch b/import-layers/meta-openembedded/meta-oe/recipes-extended/acpica/files/no-werror.patch
deleted file mode 100644
index 5d28f474f..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/acpica/files/no-werror.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-Description: remove -Werror flag
-Forwarded: not-needed
-Author: Fathi Boudra <fathi.boudra@linaro.org>
-
----
- generate/unix/iasl/Makefile | 12 ++++++------
- 1 file changed, 6 insertions(+), 6 deletions(-)
-
---- a/generate/unix/iasl/Makefile
-+++ b/generate/unix/iasl/Makefile
-@@ -266,19 +266,19 @@ $(OBJDIR)/prparser.y.h: $(OBJDIR)/prpars
- # by the utilities above and they are not necessarily ANSI C, etc.
- #
- $(OBJDIR)/aslcompilerlex.o : $(OBJDIR)/aslcompilerlex.c
-- $(CC) -c $(CFLAGS) -Wall -Werror -o$@ $<
-+ $(CC) -c $(CFLAGS) -Wall -o$@ $<
-
- $(OBJDIR)/aslcompilerparse.o : $(OBJDIR)/aslcompilerparse.c
-- $(CC) -c $(CFLAGS) -Wall -Werror -o$@ $<
-+ $(CC) -c $(CFLAGS) -Wall -o$@ $<
-
- $(OBJDIR)/dtparserlex.o : $(OBJDIR)/dtparserlex.c
-- $(CC) -c $(CFLAGS) -Wall -Werror -o$@ $<
-+ $(CC) -c $(CFLAGS) -Wall -o$@ $<
-
- $(OBJDIR)/dtparserparse.o : $(OBJDIR)/dtparserparse.c
-- $(CC) -c $(CFLAGS) -Wall -Werror -o$@ $<
-+ $(CC) -c $(CFLAGS) -Wall -o$@ $<
-
- $(OBJDIR)/prparserlex.o : $(OBJDIR)/prparserlex.c
-- $(CC) -c $(CFLAGS) -Wall -Werror -o$@ $<
-+ $(CC) -c $(CFLAGS) -Wall -o$@ $<
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/boinc/boinc-client/boinc-AM_CONDITIONAL.patch b/import-layers/meta-openembedded/meta-oe/recipes-extended/boinc/boinc-client/boinc-AM_CONDITIONAL.patch
new file mode 100644
index 000000000..7becb94e6
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/boinc/boinc-client/boinc-AM_CONDITIONAL.patch
@@ -0,0 +1,24 @@
+Add configure check for gtk2+ and objc++
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+Upstream-Status: Pending
+
+--- A/configure.ac
++++ B/configure.ac
+@@ -39,6 +39,7 @@ AC_PROG_CC
+ AC_PROG_CXX
+ AC_PROG_F77
+ AC_PROG_CPP
++AC_PROG_OBJCXX
+ AC_PROG_MAKE_SET
+ SAH_LINKS
+ AC_LANG_PUSH(C)
+@@ -744,6 +745,8 @@ AM_CONDITIONAL(ENABLE_LIBRARIES, [test "
+ AM_CONDITIONAL(INSTALL_HEADERS, [test "${enable_install_headers}" = yes])
+ AM_CONDITIONAL(HAVE_CUDA_LIB, [test "${enable_client}" = yes -a -f ./coprocs/CUDA/posix/${boinc_platform}/libcudart.so])
+
++PKG_CHECK_MODULES([GTK2], [gtk+-2.0])
++
+ dnl ======================================================================
+ dnl some more vodoo required for building portable client-binary (client, clientgui)
+ dnl ======================================================================
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/boinc/boinc-client/cross-compile.patch b/import-layers/meta-openembedded/meta-oe/recipes-extended/boinc/boinc-client/cross-compile.patch
new file mode 100644
index 000000000..287391a52
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/boinc/boinc-client/cross-compile.patch
@@ -0,0 +1,98 @@
+Remove rpath, its bad for cross compiling to encode
+build time rpaths
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+Upstream-Status: Pending
+
+Index: boinc-client_release-7.6-7.6.33/api/Makefile.am
+===================================================================
+--- boinc-client_release-7.6-7.6.33.orig/api/Makefile.am
++++ boinc-client_release-7.6-7.6.33/api/Makefile.am
+@@ -43,18 +43,18 @@ endif
+
+ lib_LTLIBRARIES = libboinc_api.la
+ libboinc_api_la_SOURCES = $(api_files)
+-libboinc_api_la_LDFLAGS = -L$(libdir) -rpath $(libdir) -version-number $(LIBBOINC_VERSION)
++libboinc_api_la_LDFLAGS = -version-number $(LIBBOINC_VERSION)
+
+ if BUILD_GRAPHICS_API
+ lib_LTLIBRARIES += libboinc_graphics2.la
+ libboinc_graphics2_la_SOURCES = $(graphics2_files)
+ libboinc_graphics2_la_CPPFLAGS = -I$(top_srcdir) -I$(top_srcdir)/lib -I$(top_srcdir)/samples/image_libs
+-libboinc_graphics2_la_LDFLAGS = -L$(libdir) -rpath $(libdir) -version-number $(LIBBOINC_VERSION) -ljpeg
++libboinc_graphics2_la_LDFLAGS = -version-number $(LIBBOINC_VERSION) -ljpeg
+ endif #BUILD_GRAPHICS_API
+
+ lib_LTLIBRARIES += libboinc_opencl.la
+ libboinc_opencl_la_SOURCES = $(opencl_files)
+-libboinc_opencl_la_LDFLAGS = -L$(libdir) -rpath $(libdir) -version-number $(LIBBOINC_VERSION)
++libboinc_opencl_la_LDFLAGS = -version-number $(LIBBOINC_VERSION)
+
+ if INSTALL_HEADERS
+ ## install only headers that are meant for exporting the API !!
+Index: boinc-client_release-7.6-7.6.33/lib/Makefile.am
+===================================================================
+--- boinc-client_release-7.6-7.6.33.orig/lib/Makefile.am
++++ boinc-client_release-7.6-7.6.33/lib/Makefile.am
+@@ -173,7 +173,7 @@ lib_LTLIBRARIES = libboinc.la
+ libboinc_la_SOURCES = $(generic_sources) $(mac_sources) $(win_sources)
+ libboinc_la_CFLAGS = $(AM_CFLAGS) $(PICFLAGS) $(PTHREAD_CFLAGS)
+ libboinc_la_CXXFLAGS = $(AM_CXXFLAGS) $(PICFLAGS) $(PTHREAD_CFLAGS)
+-libboinc_la_LDFLAGS = -L$(libdir) -rpath $(libdir) -static -version-number $(LIBBOINC_VERSION)
++libboinc_la_LDFLAGS = -static -version-number $(LIBBOINC_VERSION)
+ libboinc_la_LIBADD =
+
+ if ENABLE_BOINCCRYPT
+@@ -181,7 +181,7 @@ lib_LTLIBRARIES += libboinc_crypt.la
+ libboinc_crypt_la_SOURCES = crypt.cpp
+ libboinc_crypt_la_CFLAGS = $(AM_CFLAGS) $(PICFLAGS) $(PTHREAD_CFLAGS) $(SSL_CFLAGS)
+ libboinc_crypt_la_CXXFLAGS = $(AM_CXXFLAGS) $(PICFLAGS) $(PTHREAD_CFLAGS) $(SSL_CXXFLAGS)
+-libboinc_crypt_la_LDFLAGS = -L$(libdir) -rpath $(libdir) -static -version-number $(LIBBOINC_VERSION)
++libboinc_crypt_la_LDFLAGS = -static -version-number $(LIBBOINC_VERSION)
+ libboinc_crypt_la_LIBADD =
+ endif
+
+@@ -190,7 +190,7 @@ lib_LTLIBRARIES += libboinc_fcgi.la
+ libboinc_fcgi_la_SOURCES = $(libfcgi_sources) $(mac_sources) $(win_sources)
+ libboinc_fcgi_la_CFLAGS = -D_USING_FCGI_ $(AM_CFLAGS) $(PICFLAGS) $(PTHREAD_CFLAGS)
+ libboinc_fcgi_la_CXXFLAGS = -D_USING_FCGI_ $(AM_CXXFLAGS) $(PICFLAGS) $(PTHREAD_CFLAGS)
+-libboinc_fcgi_la_LDFLAGS = -L$(libdir) -rpath $(libdir) -version-number $(LIBBOINC_VERSION)
++libboinc_fcgi_la_LDFLAGS = -version-number $(LIBBOINC_VERSION)
+ libboinc_fcgi_la_LIBADD =
+ endif
+ # end of "if ENABLE_FCGI"
+Index: boinc-client_release-7.6-7.6.33/sched/Makefile.am
+===================================================================
+--- boinc-client_release-7.6-7.6.33.orig/sched/Makefile.am
++++ boinc-client_release-7.6-7.6.33/sched/Makefile.am
+@@ -26,7 +26,7 @@ lib_LTLIBRARIES = libsched.la
+ libsched_la_SOURCES = $(libsched_sources)
+ libsched_la_CFLAGS = $(AM_CPPFLAGS)
+ libsched_la_CXXFLAGS = $(AM_CPPFLAGS)
+-libsched_la_LDFLAGS= -L$(libdir) -rpath $(libdir) -version-number $(LIBBOINC_VERSION)
++libsched_la_LDFLAGS= -version-number $(LIBBOINC_VERSION)
+ libsched_la_LIBADD= $(SSL_LIBS)
+
+ ## install only headers that are meant for exporting the API !!
+@@ -48,7 +48,7 @@ lib_LTLIBRARIES += libsched_fcgi.la
+ libsched_fcgi_la_SOURCES = $(libsched_sources)
+ libsched_fcgi_la_CFLAGS = -D_USING_FCGI_ $(AM_CPPFLAGS)
+ libsched_fcgi_la_CXXFLAGS = -D_USING_FCGI_ $(AM_CPPFLAGS)
+-libsched_fcgi_la_LDFLAGS= -L$(libdir) -rpath $(libdir) -version-number $(LIBBOINC_VERSION)
++libsched_fcgi_la_LDFLAGS= -version-number $(LIBBOINC_VERSION)
+ libsched_fcgi_la_LIBADD=
+
+ endif
+Index: boinc-client_release-7.6-7.6.33/zip/Makefile.am
+===================================================================
+--- boinc-client_release-7.6-7.6.33.orig/zip/Makefile.am
++++ boinc-client_release-7.6-7.6.33/zip/Makefile.am
+@@ -61,7 +61,7 @@ endif
+
+ lib_LTLIBRARIES = libboinc_zip.la
+ libboinc_zip_la_SOURCES = $(libboinc_zip_sources)
+-libboinc_zip_la_LDFLAGS = -L$(libdir) -rpath $(libdir) -version-number $(LIBBOINC_VERSION)
++libboinc_zip_la_LDFLAGS = -version-number $(LIBBOINC_VERSION)
+ libboinc_zip_la_LIBADD =
+
+ # Some OSs may not prefix libraries with lib.
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/boinc/boinc-client/gtk-configure.patch b/import-layers/meta-openembedded/meta-oe/recipes-extended/boinc/boinc-client/gtk-configure.patch
new file mode 100644
index 000000000..4ae8d580d
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/boinc/boinc-client/gtk-configure.patch
@@ -0,0 +1,29 @@
+Check for gtk2+ only when manager is enabled
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+Upstream-Status: Pending
+
+Index: boinc-client_release-7.6-7.6.33/configure.ac
+===================================================================
+--- boinc-client_release-7.6-7.6.33.orig/configure.ac
++++ boinc-client_release-7.6-7.6.33/configure.ac
+@@ -1033,6 +1033,11 @@ else
+ AM_CONDITIONAL([GUI_GTK], false)
+ fi
+
++dnl ---------- GTK+2.0-----------------------------------------------------
++if test "X${no_x}" != "Xyes"; then
++ PKG_CHECK_MODULES([GTK2], [gtk+-2.0])
++fi
++
+ dnl ---------- libNotify --------------------------------------------------
+ if test "${enable_manager}" = yes ; then
+ PKG_CHECK_MODULES(LIBNOTIFY, [libnotify])
+@@ -1082,7 +1087,6 @@ AM_CONDITIONAL(ENABLE_BOINCCRYPT, [test
+ AM_CONDITIONAL(INSTALL_HEADERS, [test "${enable_install_headers}" = yes])
+ AM_CONDITIONAL(HAVE_CUDA_LIB, [test "${enable_client}" = yes -a -f ./coprocs/CUDA/posix/${boinc_platform}/libcudart.so])
+
+-PKG_CHECK_MODULES([GTK2], [gtk+-2.0])
+
+ dnl ======================================================================
+ dnl some more vodoo required for building portable client-binary (client, clientgui)
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/boinc/boinc-client/opengl_m4_check.patch b/import-layers/meta-openembedded/meta-oe/recipes-extended/boinc/boinc-client/opengl_m4_check.patch
new file mode 100644
index 000000000..0b057eabc
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/boinc/boinc-client/opengl_m4_check.patch
@@ -0,0 +1,19 @@
+Do not add prefix/lib to library search path
+let sysroot take care of that
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+Upstream-Status: Inappropriate[Cross-compile specific]
+
+Index: boinc-client_release-7.6-7.6.33/m4/ax_check_gl.m4
+===================================================================
+--- boinc-client_release-7.6-7.6.33.orig/m4/ax_check_gl.m4
++++ boinc-client_release-7.6-7.6.33/m4/ax_check_gl.m4
+@@ -58,7 +58,7 @@ else
+ else
+ ax_try_lib="${ax_lib}"
+ fi
+- LIBS="-L${prefix}/lib ${ax_try_lib} ${GL_LIBS} ${ax_save_LIBS}"
++ LIBS="${ax_try_lib} ${GL_LIBS} ${ax_save_LIBS}"
+ AC_LINK_IFELSE(
+ [AC_LANG_PROGRAM([[
+ # if HAVE_WINDOWS_H && defined(_WIN32)
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/boinc/boinc-client_7.6.33.bb b/import-layers/meta-openembedded/meta-oe/recipes-extended/boinc/boinc-client_7.6.33.bb
new file mode 100644
index 000000000..ac5f7559b
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/boinc/boinc-client_7.6.33.bb
@@ -0,0 +1,77 @@
+# Copyright (C) 2016 Khem Raj <raj.khem@gmail.com>
+# Released under the MIT license (see COPYING.MIT for the terms)
+
+SUMMARY = "Open-source software for volunteer computing"
+DESCRIPTION = "The Berkeley Open Infrastructure for Network Computing (BOINC) is an open- \
+source software platform which supports distributed computing, primarily in \
+the form of volunteer computing and desktop Grid computing. It is well \
+suited for problems which are often described as trivially parallel. BOINC \
+is the underlying software used by projects such as SETI@home, Einstein@Home, \
+ClimatePrediciton.net, the World Community Grid, and many other distributed \
+computing projects. \
+This package installs the BOINC client software, which will allow your \
+computer to participate in one or more BOINC projects, using your spare \
+computer time to search for cures for diseases, model protein folding, study \
+global warming, discover sources of gravitational waves, and many other types \
+of scientific and mathematical research."
+
+HOMEPAGE = "http://boinc.berkeley.edu/"
+LICENSE = "LGPLv2+ & GPLv3"
+LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504 \
+ file://COPYING.LESSER;md5=6a6a8e020838b23406c81b19c1d46df6"
+SECTION = "applications"
+DEPENDS = "curl \
+ jpeg \
+ openssl \
+ sqlite3 \
+ virtual/libgl \
+ ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'libnotify', '', d)} \
+ ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'gtk+ libnotify xcb-util libxscrnsaver', '', d)} \
+ nettle \
+"
+
+SRC_URI = "https://github.com/BOINC/boinc/archive/client_release/7.6/${PV}.tar.gz \
+ file://boinc-AM_CONDITIONAL.patch \
+ file://opengl_m4_check.patch \
+ file://cross-compile.patch \
+ file://gtk-configure.patch \
+"
+SRC_URI[md5sum] = "437b4b98e384b4bda4ef7056e68166ac"
+SRC_URI[sha256sum] = "c4b1c29b9655013e0ac61dddf47ad7f30f38c46159f02a9d9dc8ab854e99aa6d"
+
+inherit gettext autotools-brokensep pkgconfig
+
+S = "${WORKDIR}/${BPN}_release-7.6-${PV}"
+
+EXTRA_OECONF += "\
+ --enable-libraries \
+ --enable-unicode \
+ --enable-shared \
+ --enable-dynamic-client-linkage \
+ --enable-client \
+ --disable-server \
+ --disable-static \
+ --disable-manager \
+ --with-ssl=${STAGING_EXECPREFIXDIR} \
+ --without-wxdir \
+ --without-x \
+ --with-boinc-platform=${TARGET_SYS} \
+"
+export PKG_CONFIG = "${STAGING_BINDIR_NATIVE}/pkg-config"
+
+do_configure_prepend () {
+ if "${@bb.utils.contains('DEPENDS', 'gtk+', '1', '0', d)}" = "0"
+ then
+ export GTK2_CFLAGS=""
+ export GTK2_LIBS=""
+ fi
+}
+
+do_compile_prepend () {
+ # Disable rpaths
+ sed -i -e 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' ${B}/${TARGET_SYS}-libtool
+ sed -i -e 's|^sys_lib_dlsearch_path_spec=.*|sys_lib_dlsearch_path_spec=""|g' ${B}/${TARGET_SYS}-libtool
+ sed -i -e 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' ${B}/${TARGET_SYS}-libtool
+}
+
+SECURITY_CFLAGS = "${SECURITY_NO_PIE_CFLAGS}"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/cfengine/cfengine_3.9.0.bb b/import-layers/meta-openembedded/meta-oe/recipes-extended/cfengine/cfengine_3.9.0.bb
index 68a15f897..4aa8dedc4 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/cfengine/cfengine_3.9.0.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/cfengine/cfengine_3.9.0.bb
@@ -31,8 +31,7 @@ SYSTEMD_SERVICE_${PN} = "cfengine3.service cfengine3-web.service"
SYSTEMD_AUTO_ENABLE_${PN} = "disable"
PACKAGECONFIG ??= "libpcre openssl \
- ${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'pam', '', d)} \
- ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd', '', d)} \
+ ${@bb.utils.filter('DISTRO_FEATURES', 'pam systemd', d)} \
"
PACKAGECONFIG[libxml2] = "--with-libxml2=yes,--with-libxml2=no,libxml2,"
PACKAGECONFIG[mysql] = "--with-mysql=yes,--with-mysql=no,mysql,"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/collectd/collectd/0001-collectd-replace-deprecated-readdir_r-with-readdir.patch b/import-layers/meta-openembedded/meta-oe/recipes-extended/collectd/collectd/0001-collectd-replace-deprecated-readdir_r-with-readdir.patch
deleted file mode 100644
index f3d53f26e..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/collectd/collectd/0001-collectd-replace-deprecated-readdir_r-with-readdir.patch
+++ /dev/null
@@ -1,66 +0,0 @@
-Subject: [PATCH] collectd: replace deprecated readdir_r() with readdir()
-
-* Replace the usage of readdir_r() with readdir()
- to address a compilation error under glibc 2.24
- due to the deprecation of readdir_r
-
-| ../../collectd-5.5.0/src/vserver.c: In function 'vserver_read':
-| ../../collectd-5.5.0/src/vserver.c:167:3: error: 'readdir_r' is deprecated [-Werror=deprecated-declarations]
-| status = readdir_r (proc, (struct dirent *) dirent_buffer, &dent);
-| ^~~~~~
-| In file included from /buildarea4/myu2/build/prj_test_20160722/bitbake_build/tmp/sysroots/qemux86/usr/include/features.h:368:0,
-| from /buildarea4/myu2/build/prj_test_20160722/bitbake_build/tmp/sysroots/qemux86/usr/include/stdio.h:27,
-| from ../../collectd-5.5.0/src/daemon/collectd.h:34,
-| from ../../collectd-5.5.0/src/vserver.c:29:
-| /buildarea4/myu2/build/prj_test_20160722/bitbake_build/tmp/sysroots/qemux86/usr/include/dirent.h:189:12: note: declared here
-| extern int __REDIRECT (readdir_r,
-| ^
-
- [1]https://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=7584a3f96de88d5eefe5d6c634515278cbfbf052;hp=8d9c92017d85f23ba6a2b3614b2f2bcf1820d6f0
-
-Upstream-Status: Pending
-
-Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
----
- src/vserver.c | 15 ++++-----------
- 1 file changed, 4 insertions(+), 11 deletions(-)
-
-diff --git a/src/vserver.c b/src/vserver.c
-index bd2e867..2e4e715 100644
---- a/src/vserver.c
-+++ b/src/vserver.c
-@@ -131,15 +131,8 @@ static derive_t vserver_get_sock_bytes(const char *s)
-
- static int vserver_read (void)
- {
--#if NAME_MAX < 1024
--# define DIRENT_BUFFER_SIZE (sizeof (struct dirent) + 1024 + 1)
--#else
--# define DIRENT_BUFFER_SIZE (sizeof (struct dirent) + NAME_MAX + 1)
--#endif
--
- DIR *proc;
-- struct dirent *dent; /* 42 */
-- char dirent_buffer[DIRENT_BUFFER_SIZE];
-+ struct dirent *dent = NULL; /* 42 */
-
- errno = 0;
- proc = opendir (PROCDIR);
-@@ -164,11 +157,11 @@ static int vserver_read (void)
-
- int status;
-
-- status = readdir_r (proc, (struct dirent *) dirent_buffer, &dent);
-- if (status != 0)
-+ dent = readdir (proc);
-+ if (dent == NULL && errno != 0)
- {
- char errbuf[4096];
-- ERROR ("vserver plugin: readdir_r failed: %s",
-+ ERROR ("vserver plugin: readdir failed: %s",
- sstrerror (errno, errbuf, sizeof (errbuf)));
- closedir (proc);
- return (-1);
---
-2.8.2
-
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/collectd/collectd/0001-conditionally-check-libvirt.patch b/import-layers/meta-openembedded/meta-oe/recipes-extended/collectd/collectd/0001-conditionally-check-libvirt.patch
index d0a58041f..1ceacd8c4 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/collectd/collectd/0001-conditionally-check-libvirt.patch
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/collectd/collectd/0001-conditionally-check-libvirt.patch
@@ -9,31 +9,28 @@ Signed-off-by: Roy Li <rongqing.li@windriver.com>
configure.ac | 14 ++++++++------
1 file changed, 8 insertions(+), 6 deletions(-)
-diff --git a/configure.ac b/configure.ac
-index 923498e..7206095 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -4778,12 +4778,14 @@ then
- with_libxml2="no (pkg-config doesn't know libxml-2.0)"
- fi
+Index: collectd-5.7.1/configure.ac
+===================================================================
+--- collectd-5.7.1.orig/configure.ac
++++ collectd-5.7.1/configure.ac
+@@ -5556,12 +5556,14 @@ else
+ with_libxml2="no (pkg-config doesn't know libxml-2.0)"
+ fi
-- $PKG_CONFIG --exists libvirt 2>/dev/null
-- if test "$?" = "0"
-- then
-- with_libvirt="yes"
-- else
-- with_libvirt="no (pkg-config doesn't know libvirt)"
-+ if test "x$enable_libvirt" = "xyes"; then
-+ $PKG_CONFIG --exists libvirt 2>/dev/null
-+ if test "$?" = "0"
-+ then
-+ with_libvirt="yes"
-+ else
-+ with_libvirt="no (pkg-config doesn't know libvirt)"
-+ fi
- fi
+-$PKG_CONFIG --exists libvirt 2>/dev/null
+-if test "$?" = "0"
+-then
+- with_libvirt="yes"
+-else
+- with_libvirt="no (pkg-config doesn't know libvirt)"
++if test "x$enable_libvirt" = "xyes"; then
++ $PKG_CONFIG --exists libvirt 2>/dev/null
++ if test "$?" = "0"
++ then
++ with_libvirt="yes"
++ else
++ with_libvirt="no (pkg-config doesn't know libvirt)"
++ fi
fi
if test "x$with_libxml2" = "xyes"
---
-1.9.1
-
+ then
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/collectd/collectd/0001-configure-Check-for-Wno-error-format-truncation-comp.patch b/import-layers/meta-openembedded/meta-oe/recipes-extended/collectd/collectd/0001-configure-Check-for-Wno-error-format-truncation-comp.patch
new file mode 100644
index 000000000..70b0983e4
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/collectd/collectd/0001-configure-Check-for-Wno-error-format-truncation-comp.patch
@@ -0,0 +1,121 @@
+From 14d469bc82c758116aef7d549abd49c131b4170f Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 22 Apr 2017 11:54:57 -0700
+Subject: [PATCH] configure: Check for -Wno-error=format-truncation compiler
+ option
+
+If this option is supported by compiler then disable it ( gcc7+)
+Fixes
+client.c:834:23: error: '%s' directive output may be truncated writing up to 1023 bytes into a region of size 1010 [-Werror=format-truncation=]
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ configure.ac | 3 +-
+ m4/ax_check_compile_flag.m4 | 74 +++++++++++++++++++++++++++++++++++++++++++++
+ 2 files changed, 76 insertions(+), 1 deletion(-)
+ create mode 100644 m4/ax_check_compile_flag.m4
+
+diff --git a/configure.ac b/configure.ac
+index 8854542..f3a6b57 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -4,7 +4,6 @@ AC_INIT([collectd],[m4_esyscmd(./version-gen.sh)])
+ AC_CONFIG_SRCDIR(src/target_set.c)
+ AC_CONFIG_HEADERS(src/config.h)
+ AC_CONFIG_AUX_DIR([libltdl/config])
+-
+ dnl older automake's default of ARFLAGS=cru is noisy on newer binutils;
+ dnl we don't really need the 'u' even in older toolchains. Then there is
+ dnl older libtool, which spelled it AR_FLAGS
+@@ -6688,6 +6687,8 @@ then
+ AM_CFLAGS="$AM_CFLAGS -Werror"
+ AM_CXXFLAGS="$AM_CXXFLAGS -Werror"
+ fi
++AX_CHECK_COMPILE_FLAG([-Werror=format-truncation],[AM_CFLAGS="$AM_CFLAGS -Wno-error=format-truncation" AM_CXXFLAGS="$AM_CXXFLAGS -Wno-error=format-truncation"])
++
+ AC_SUBST([AM_CFLAGS])
+ AC_SUBST([AM_CXXFLAGS])
+
+diff --git a/m4/ax_check_compile_flag.m4 b/m4/ax_check_compile_flag.m4
+new file mode 100644
+index 0000000..dcabb92
+--- /dev/null
++++ b/m4/ax_check_compile_flag.m4
+@@ -0,0 +1,74 @@
++# ===========================================================================
++# https://www.gnu.org/software/autoconf-archive/ax_check_compile_flag.html
++# ===========================================================================
++#
++# SYNOPSIS
++#
++# AX_CHECK_COMPILE_FLAG(FLAG, [ACTION-SUCCESS], [ACTION-FAILURE], [EXTRA-FLAGS], [INPUT])
++#
++# DESCRIPTION
++#
++# Check whether the given FLAG works with the current language's compiler
++# or gives an error. (Warnings, however, are ignored)
++#
++# ACTION-SUCCESS/ACTION-FAILURE are shell commands to execute on
++# success/failure.
++#
++# If EXTRA-FLAGS is defined, it is added to the current language's default
++# flags (e.g. CFLAGS) when the check is done. The check is thus made with
++# the flags: "CFLAGS EXTRA-FLAGS FLAG". This can for example be used to
++# force the compiler to issue an error when a bad flag is given.
++#
++# INPUT gives an alternative input source to AC_COMPILE_IFELSE.
++#
++# NOTE: Implementation based on AX_CFLAGS_GCC_OPTION. Please keep this
++# macro in sync with AX_CHECK_{PREPROC,LINK}_FLAG.
++#
++# LICENSE
++#
++# Copyright (c) 2008 Guido U. Draheim <guidod@gmx.de>
++# Copyright (c) 2011 Maarten Bosmans <mkbosmans@gmail.com>
++#
++# 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 3 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, see <https://www.gnu.org/licenses/>.
++#
++# As a special exception, the respective Autoconf Macro's copyright owner
++# gives unlimited permission to copy, distribute and modify the configure
++# scripts that are the output of Autoconf when processing the Macro. You
++# need not follow the terms of the GNU General Public License when using
++# or distributing such scripts, even though portions of the text of the
++# Macro appear in them. The GNU General Public License (GPL) does govern
++# all other use of the material that constitutes the Autoconf Macro.
++#
++# This special exception to the GPL applies to versions of the Autoconf
++# Macro released by the Autoconf Archive. When you make and distribute a
++# modified version of the Autoconf Macro, you may extend this special
++# exception to the GPL to apply to your modified version as well.
++
++#serial 5
++
++AC_DEFUN([AX_CHECK_COMPILE_FLAG],
++[AC_PREREQ(2.64)dnl for _AC_LANG_PREFIX and AS_VAR_IF
++AS_VAR_PUSHDEF([CACHEVAR],[ax_cv_check_[]_AC_LANG_ABBREV[]flags_$4_$1])dnl
++AC_CACHE_CHECK([whether _AC_LANG compiler accepts $1], CACHEVAR, [
++ ax_check_save_flags=$[]_AC_LANG_PREFIX[]FLAGS
++ _AC_LANG_PREFIX[]FLAGS="$[]_AC_LANG_PREFIX[]FLAGS $4 $1"
++ AC_COMPILE_IFELSE([m4_default([$5],[AC_LANG_PROGRAM()])],
++ [AS_VAR_SET(CACHEVAR,[yes])],
++ [AS_VAR_SET(CACHEVAR,[no])])
++ _AC_LANG_PREFIX[]FLAGS=$ax_check_save_flags])
++AS_VAR_IF(CACHEVAR,yes,
++ [m4_default([$2], :)],
++ [m4_default([$3], :)])
++AS_VAR_POPDEF([CACHEVAR])dnl
++])dnl AX_CHECK_COMPILE_FLAGS
+--
+2.12.2
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/collectd/collectd/0001-fix-to-build-with-glibc-2.25.patch b/import-layers/meta-openembedded/meta-oe/recipes-extended/collectd/collectd/0001-fix-to-build-with-glibc-2.25.patch
new file mode 100644
index 000000000..be942e5ef
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/collectd/collectd/0001-fix-to-build-with-glibc-2.25.patch
@@ -0,0 +1,24 @@
+Subject: fix to build with glibc 2.25
+
+Upstream-Status: Pending
+
+Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
+---
+ src/md.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/src/md.c b/src/md.c
+index 3725f9a..202225b 100644
+--- a/src/md.c
++++ b/src/md.c
+@@ -25,6 +25,7 @@
+ #include "utils_ignorelist.h"
+
+ #include <sys/ioctl.h>
++#include <sys/sysmacros.h>
+
+ #include <linux/major.h>
+ #include <linux/raid/md_u.h>
+--
+2.8.3
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/collectd/collectd/0001-redefine-the-dependence.patch b/import-layers/meta-openembedded/meta-oe/recipes-extended/collectd/collectd/0001-redefine-the-dependence.patch
deleted file mode 100644
index ef6afad9b..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/collectd/collectd/0001-redefine-the-dependence.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-[PATCH] define the collectd dependence
-
-Upstream-Status: Pending
-
-libavltree.la libcommon.la libheap.la are created dynamically, and in LDADD,
-but not in DEPENDENCIES
-
-Signed-off-by: Roy Li <rongqing.li@windriver.com>
----
- src/daemon/Makefile.am | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/daemon/Makefile.am b/src/daemon/Makefile.am
-index 10860ec..7f826e3 100644
---- a/src/daemon/Makefile.am
-+++ b/src/daemon/Makefile.am
-@@ -49,7 +49,7 @@ collectd_CPPFLAGS = $(AM_CPPFLAGS) $(LTDLINCL)
- collectd_CFLAGS = $(AM_CFLAGS)
- collectd_LDFLAGS = -export-dynamic
- collectd_LDADD = libavltree.la libcommon.la libheap.la -lm
--collectd_DEPENDENCIES =
-+collectd_DEPENDENCIES = libavltree.la libcommon.la libheap.la
-
- # Link to these libraries..
- if BUILD_WITH_LIBRT
---
-1.9.1
-
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/collectd/collectd/CVE-2016-6254.patch b/import-layers/meta-openembedded/meta-oe/recipes-extended/collectd/collectd/CVE-2016-6254.patch
deleted file mode 100644
index bc85b4c0e..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/collectd/collectd/CVE-2016-6254.patch
+++ /dev/null
@@ -1,55 +0,0 @@
-From dd8483a4beb6f61521d8b32c726523bbea21cd92 Mon Sep 17 00:00:00 2001
-From: Florian Forster <octo@collectd.org>
-Date: Tue, 19 Jul 2016 10:00:37 +0200
-Subject: [PATCH] network plugin: Fix heap overflow in parse_packet().
-
-Emilien Gaspar has identified a heap overflow in parse_packet(), the
-function used by the network plugin to parse incoming network packets.
-
-This is a vulnerability in collectd, though the scope is not clear at
-this point. At the very least specially crafted network packets can be
-used to crash the daemon. We can't rule out a potential remote code
-execution though.
-
-Fixes: CVE-2016-6254
-
-cherry picked from upstream commit b589096f
-
-Upstream Status: Backport
-
-Signed-off-by: Alexandru Moise <alexandru.moise@windriver.com>
----
- src/network.c | 3 +++
- 1 file changed, 3 insertions(+)
-
-diff --git a/src/network.c b/src/network.c
-index 551bd5c..cb979b2 100644
---- a/src/network.c
-+++ b/src/network.c
-@@ -1444,6 +1444,7 @@ static int parse_packet (sockent_t *se, /* {{{ */
- printed_ignore_warning = 1;
- }
- buffer = ((char *) buffer) + pkg_length;
-+ buffer_size -= (size_t) pkg_length;
- continue;
- }
- #endif /* HAVE_LIBGCRYPT */
-@@ -1471,6 +1472,7 @@ static int parse_packet (sockent_t *se, /* {{{ */
- printed_ignore_warning = 1;
- }
- buffer = ((char *) buffer) + pkg_length;
-+ buffer_size -= (size_t) pkg_length;
- continue;
- }
- #endif /* HAVE_LIBGCRYPT */
-@@ -1612,6 +1614,7 @@ static int parse_packet (sockent_t *se, /* {{{ */
- DEBUG ("network plugin: parse_packet: Unknown part"
- " type: 0x%04hx", pkg_type);
- buffer = ((char *) buffer) + pkg_length;
-+ buffer_size -= (size_t) pkg_length;
- }
- } /* while (buffer_size > sizeof (part_header_t)) */
-
---
-2.7.4
-
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/collectd/collectd/collectd-version.patch b/import-layers/meta-openembedded/meta-oe/recipes-extended/collectd/collectd/collectd-version.patch
deleted file mode 100644
index 86c3f65b7..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/collectd/collectd/collectd-version.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-Don't pick up version string from parent git repository
-
-If the collectd source is extracted from a tarball underneath a
-directory structure that includes another git repository, that
-repository will be picked up by "git describe" which is not
-desirable. Check whether collectd itself is a git repository and just
-use the default version if not.
-
-Upstream-Status: Pending
-
-Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
-
-diff --git a/version-gen.sh b/version-gen.sh
-index b09be8e..2671066 100755
---- a/version-gen.sh
-+++ b/version-gen.sh
-@@ -2,8 +2,10 @@
-
- DEFAULT_VERSION="5.5.0.git"
-
--VERSION="`git describe 2> /dev/null | grep collectd | sed -e 's/^collectd-//'`"
--
-+VERSION=""
-+if test -d .git ; then
-+ VERSION="`git describe 2> /dev/null | grep collectd | sed -e 's/^collectd-//'`"
-+fi
- if test -z "$VERSION"; then
- VERSION="$DEFAULT_VERSION"
- fi
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/collectd/collectd/no-gcrypt-badpath.patch b/import-layers/meta-openembedded/meta-oe/recipes-extended/collectd/collectd/no-gcrypt-badpath.patch
index 0e876ae85..1fde6a071 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/collectd/collectd/no-gcrypt-badpath.patch
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/collectd/collectd/no-gcrypt-badpath.patch
@@ -1,30 +1,43 @@
-Disable defaulting of GCRYPT_LDFLAGS to -L/usr/lib
-
-Prevents "unsafe for cross compilation" warnings that cause
-do_qa_configure to fail.
-
-Upstream-Status: Inappropriate [configuration]
-
-Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
-
-Index: collectd-5.4.1/configure.ac
+Index: collectd-5.7.1/configure.ac
===================================================================
---- collectd-5.4.1.orig/configure.ac 2014-09-03 01:20:22.062084244 -0700
-+++ collectd-5.4.1/configure.ac 2014-09-03 01:20:22.058084244 -0700
-@@ -1867,11 +1867,11 @@
- GCRYPT_CPPFLAGS=`"$with_libgcrypt_config" --cflags 2>/dev/null`
- fi
+--- collectd-5.7.1.orig/configure.ac
++++ collectd-5.7.1/configure.ac
+@@ -2305,7 +2305,7 @@ AC_ARG_WITH(libgcrypt, [AS_HELP_STRING([
+ with_libgcrypt="yes"
+ else if test -f "$withval/bin/gcrypt-config" && test -x "$withval/bin/gcrypt-config"
+ then
+- with_libgcrypt_config="$withval/bin/gcrypt-config"
++ with_libgcrypt_config="$withval/bin/pkg-config"
+ with_libgcrypt="yes"
+ else if test -d "$withval"
+ then
+@@ -2313,12 +2313,12 @@ AC_ARG_WITH(libgcrypt, [AS_HELP_STRING([
+ GCRYPT_LDFLAGS="$GCRYPT_LDFLAGS -L$withval/lib"
+ with_libgcrypt="yes"
+ else
+- with_libgcrypt_config="gcrypt-config"
++ with_libgcrypt_config="pkg-config"
+ with_libgcrypt="$withval"
+ fi; fi; fi
+ ],
+ [
+- with_libgcrypt_config="libgcrypt-config"
++ with_libgcrypt_config="pkg-config"
+ with_libgcrypt="yes"
+ ])
-- if test "x$GCRYPT_LDFLAGS" = "x"
-- then
-- gcrypt_exec_prefix=`"$with_libgcrypt_config" --exec-prefix 2>/dev/null`
-- GCRYPT_LDFLAGS="-L$gcrypt_exec_prefix/lib"
-- fi
-+# if test "x$GCRYPT_LDFLAGS" = "x"
-+# then
-+# gcrypt_exec_prefix=`"$with_libgcrypt_config" --exec-prefix 2>/dev/null`
-+# GCRYPT_LDFLAGS="-L$gcrypt_exec_prefix/lib"
-+# fi
+@@ -2326,12 +2326,12 @@ if test "x$with_libgcrypt" = "xyes" && t
+ then
+ if test "x$GCRYPT_CPPFLAGS" = "x"
+ then
+- GCRYPT_CPPFLAGS=`"$with_libgcrypt_config" --cflags 2>/dev/null`
++ GCRYPT_CPPFLAGS=`"$with_libgcrypt_config" --cflags libgcrypt 2>/dev/null`
+ fi
if test "x$GCRYPT_LIBS" = "x"
then
+- GCRYPT_LIBS=`"$with_libgcrypt_config" --libs 2>/dev/null`
++ GCRYPT_LIBS=`"$with_libgcrypt_config" --lib libgcrypt 2>/dev/null`
+ fi
+ fi
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/collectd/collectd_5.5.0.bb b/import-layers/meta-openembedded/meta-oe/recipes-extended/collectd/collectd_5.7.1.bb
index 34edecfba..b7789c7ca 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/collectd/collectd_5.5.0.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/collectd/collectd_5.7.1.bb
@@ -6,17 +6,15 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=1bd21f19f7f0c61a7be8ecacb0e28854"
DEPENDS = "rrdtool curl libpcap libxml2 yajl libgcrypt libtool lvm2"
SRC_URI = "http://collectd.org/files/collectd-${PV}.tar.bz2 \
- file://no-gcrypt-badpath.patch \
- file://collectd-version.patch \
- file://0001-redefine-the-dependence.patch \
file://collectd.init \
file://collectd.service \
+ file://no-gcrypt-badpath.patch \
file://0001-conditionally-check-libvirt.patch \
- file://0001-collectd-replace-deprecated-readdir_r-with-readdir.patch \
- file://CVE-2016-6254.patch \
+ file://0001-fix-to-build-with-glibc-2.25.patch \
+ file://0001-configure-Check-for-Wno-error-format-truncation-comp.patch \
"
-SRC_URI[md5sum] = "c39305ef5514b44238b0d31f77e29e6a"
-SRC_URI[sha256sum] = "847684cf5c10de1dc34145078af3fcf6e0d168ba98c14f1343b1062a4b569e88"
+SRC_URI[md5sum] = "dc36141ed3058c4919bbd54b87c07873"
+SRC_URI[sha256sum] = "7edd3643c0842215553b2421d5456f4e9a8a58b07e216b40a7e8e91026d8e501"
inherit autotools pythonnative update-rc.d pkgconfig systemd
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/corosync/corosync/0001-Include-fcntl.h-for-F_-and-O_-defines.patch b/import-layers/meta-openembedded/meta-oe/recipes-extended/corosync/corosync/0001-Include-fcntl.h-for-F_-and-O_-defines.patch
new file mode 100644
index 000000000..fe4b0793f
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/corosync/corosync/0001-Include-fcntl.h-for-F_-and-O_-defines.patch
@@ -0,0 +1,28 @@
+From 85ea47fedbc96ed9180e08b0d371d9966e3a88da Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Wed, 30 Aug 2017 17:28:55 -0700
+Subject: [PATCH] Include fcntl.h for F_* and O_* defines
+
+Fixes errors like
+utils.c:95:22: error: use of undeclared identifier 'O_WRONLY'
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ qdevices/utils.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/qdevices/utils.c b/qdevices/utils.c
+index 41850b8c..87090853 100644
+--- a/qdevices/utils.c
++++ b/qdevices/utils.c
+@@ -39,6 +39,7 @@
+
+ #include <err.h>
+ #include <errno.h>
++#include <fcntl.h>
+ #include <inttypes.h>
+ #include <libgen.h>
+ #include <stdio.h>
+--
+2.14.1
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/corosync/corosync_2.4.0.bb b/import-layers/meta-openembedded/meta-oe/recipes-extended/corosync/corosync_2.4.0.bb
deleted file mode 100644
index a213a2726..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/corosync/corosync_2.4.0.bb
+++ /dev/null
@@ -1,56 +0,0 @@
-SUMMARY = "The Corosync Cluster Engine and Application Programming Interfaces"
-DESCRIPTION = "This package contains the Corosync Cluster Engine Executive, several default \
-APIs and libraries, default configuration files, and an init script."
-HOMEPAGE = "http://corosync.github.io/corosync/"
-
-SECTION = "base"
-
-inherit autotools pkgconfig systemd
-
-SRC_URI = "http://build.clusterlabs.org/corosync/releases/${BP}.tar.gz"
-SRC_URI[md5sum] = "11bdd5ee2aed5eb2443dd6d6acd6a1ab"
-SRC_URI[sha256sum] = "6fe9523852a892701c4c28c1cd32e067e44cf0e696d5ecf3790afdef1fc309cb"
-
-LICENSE = "BSD"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=a85eb4ce24033adb6088dd1d6ffc5e5d"
-
-DEPENDS = "groff-native nss libqb"
-
-SYSTEMD_SERVICE_${PN} = "corosync.service corosync-notifyd.service"
-SYSTEMD_AUTO_ENABLE = "enable"
-
-INITSCRIPT_NAME = "corosync-daemon"
-
-PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd', '', d)}"
-
-PACKAGECONFIG[systemd] = "--enable-systemd --with-systemddir=${systemd_unitdir}/system/,--with-systemddir="
-
-EXTRA_OECONF = "--with-upstartdir=%{_sysconfdir}/init"
-
-do_configure_prepend() {
- ( cd ${S}
- ${S}/autogen.sh )
-}
-
-do_install_append() {
- install -d ${D}${sysconfdir}/sysconfig/
- install -d ${D}/${sysconfdir}/init.d
- install -m 0644 ${S}/init/corosync.sysconfig.example ${D}${sysconfdir}/sysconfig/corosync
- install -m 0644 ${S}/init/corosync-notifyd.conf.in ${D}${sysconfdir}/sysconfig/corosync-notifyd.conf
- install -m 0644 ${S}/init/corosync.conf.in ${D}${sysconfdir}/sysconfig/corosync.conf
- install -m 0644 ${S}/init/corosync.in ${D}${sysconfdir}/init.d/corosync
- install -m 0644 ${S}/init/corosync-notifyd.in ${D}${sysconfdir}/init.d/corosync-notifyd
-
- if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then
- install -d ${D}${systemd_unitdir}/system
- install -m 0644 ${S}/init/corosync.service.in ${D}${systemd_unitdir}/system/corosync.service
- install -m 0644 ${S}/init/corosync-notifyd.service.in ${D}${systemd_unitdir}/system/corosync-notifyd.service
- sed -i -e 's,@INITWRAPPERSDIR@,${sysconfdir}/init.d,g' ${D}${systemd_unitdir}/system/corosync.service
- sed -i -e 's,@SYSCONFDIR@,${sysconfdir},g' ${D}${systemd_unitdir}/system/corosync-notifyd.service
- sed -i -e 's,@SBINDIR@,${base_sbindir},g' ${D}${systemd_unitdir}/system/corosync-notifyd.service
- fi
-}
-
-RDEPENDS_${PN} += "bash"
-
-FILES_${PN}-dbg += "${libexecdir}/lcrso/.debug"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/corosync/corosync_2.4.2.bb b/import-layers/meta-openembedded/meta-oe/recipes-extended/corosync/corosync_2.4.2.bb
new file mode 100644
index 000000000..c4af00650
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/corosync/corosync_2.4.2.bb
@@ -0,0 +1,56 @@
+SUMMARY = "The Corosync Cluster Engine and Application Programming Interfaces"
+DESCRIPTION = "This package contains the Corosync Cluster Engine Executive, several default \
+APIs and libraries, default configuration files, and an init script."
+HOMEPAGE = "http://corosync.github.io/corosync/"
+
+SECTION = "base"
+
+inherit autotools pkgconfig systemd
+
+SRC_URI = "http://build.clusterlabs.org/corosync/releases/${BP}.tar.gz \
+ file://0001-Include-fcntl.h-for-F_-and-O_-defines.patch \
+ "
+SRC_URI[md5sum] = "547fa78704da53aa35912be58d31035f"
+SRC_URI[sha256sum] = "f26e3011309fe4bcce94b1dc20ea8c462f19483a73f3ca62f13b925d011a4ba9"
+
+LICENSE = "BSD"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=a85eb4ce24033adb6088dd1d6ffc5e5d"
+
+DEPENDS = "groff-native nss libqb"
+
+SYSTEMD_SERVICE_${PN} = "corosync.service corosync-notifyd.service"
+SYSTEMD_AUTO_ENABLE = "enable"
+
+INITSCRIPT_NAME = "corosync-daemon"
+
+PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)}"
+
+PACKAGECONFIG[systemd] = "--enable-systemd --with-systemddir=${systemd_system_unitdir},--disable-systemd --without-systemddir,systemd"
+
+EXTRA_OECONF = "ac_cv_path_BASHPATH=${base_bindir}/bash"
+EXTRA_OEMAKE = "tmpfilesdir_DATA="
+
+do_configure_prepend() {
+ ( cd ${S}
+ ${S}/autogen.sh )
+}
+
+do_install_append() {
+ install -d ${D}${sysconfdir}/sysconfig/
+ install -m 0644 ${S}/init/corosync.sysconfig.example ${D}${sysconfdir}/sysconfig/corosync
+ install -m 0644 ${S}/tools/corosync-notifyd.sysconfig.example ${D}${sysconfdir}/sysconfig/corosync-notifyd
+
+ rm -rf "${D}${localstatedir}/run"
+
+ install -d ${D}${sysconfdir}/default/volatiles
+ echo "d root root 0755 ${localstatedir}/log/cluster none" > ${D}${sysconfdir}/default/volatiles/05_corosync
+
+ if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then
+ install -d ${D}${sysconfdir}/tmpfiles.d
+ echo "d ${localstatedir}/log/cluster - - - -" > ${D}${sysconfdir}/tmpfiles.d/corosync.conf
+ fi
+}
+
+RDEPENDS_${PN} += "bash"
+
+FILES_${PN}-dbg += "${libexecdir}/lcrso/.debug"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/dash/dash/0001-Fix-printf-format-errors-with-clang.patch b/import-layers/meta-openembedded/meta-oe/recipes-extended/dash/dash/0001-Fix-printf-format-errors-with-clang.patch
new file mode 100644
index 000000000..b3991faa8
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/dash/dash/0001-Fix-printf-format-errors-with-clang.patch
@@ -0,0 +1,28 @@
+From 3ddf397febf47f8de9ca2805e92355ecb3ba0e9f Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 8 Apr 2017 12:37:54 -0700
+Subject: [PATCH] Fix printf format errors with clang
+
+error: format string is not a string literal (potentially insecure)
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/jobs.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/jobs.c b/src/jobs.c
+index c2c2332..dcb81c1 100644
+--- a/src/jobs.c
++++ b/src/jobs.c
+@@ -427,7 +427,7 @@ sprint_status(char *s, int status, int sigonly)
+ goto out;
+ #endif
+ }
+- col = fmtstr(s, 32, strsignal(st));
++ col = fmtstr(s, 32, "%s", strsignal(st));
+ #ifdef WCOREDUMP
+ if (WCOREDUMP(status)) {
+ col += fmtstr(s + col, 16, " (core dumped)");
+--
+2.12.2
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/dash/dash_0.5.8.bb b/import-layers/meta-openembedded/meta-oe/recipes-extended/dash/dash_0.5.8.bb
index 4961d7b83..78ca60d6f 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/dash/dash_0.5.8.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/dash/dash_0.5.8.bb
@@ -7,7 +7,9 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=b5262b4a1a1bff72b48e935531976d2e"
inherit autotools update-alternatives
-SRC_URI = "http://gondor.apana.org.au/~herbert/${BPN}/files/${BP}.tar.gz"
+SRC_URI = "http://gondor.apana.org.au/~herbert/${BPN}/files/${BP}.tar.gz \
+ file://0001-Fix-printf-format-errors-with-clang.patch \
+ "
SRC_URI[md5sum] = "5c152209680dab3c319e8923f6c51378"
SRC_URI[sha256sum] = "c6db3a237747b02d20382a761397563d813b306c020ae28ce25a1c3915fac60f"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/dialog/dialog_1.3-20160424.bb b/import-layers/meta-openembedded/meta-oe/recipes-extended/dialog/dialog_1.3-20160828.bb
index 2d8fbae5e..bff3d97d2 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/dialog/dialog_1.3-20160424.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/dialog/dialog_1.3-20160828.bb
@@ -8,11 +8,10 @@ DEPENDS = "ncurses"
LICENSE = "LGPL-2.1"
LIC_FILES_CHKSUM = "file://COPYING;md5=a6f89e2100d9b6cdffcea4f398e37343"
-SRC_URI[md5sum] = "582d804252205f73df2d892ebdc5212e"
-SRC_URI[sha256sum] = "47f5870876e778aa2902f2e91b4070418d4651b647e1a67a94127cb8aab5b5eb"
-
SRC_URI = "ftp://invisible-island.net/dialog/dialog-${PV}.tgz \
"
+SRC_URI[md5sum] = "a39ec183517bc1feaff017d067300b8c"
+SRC_URI[sha256sum] = "453095abaec288bfbc1ca9faced917e17742cff1ea45ec46210071ac153562f9"
# hardcoded here for use in dialog-static recipe
S = "${WORKDIR}/dialog-${PV}"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/dlm/dlm/respect-ldflags-also-from-bin_ldflags.patch b/import-layers/meta-openembedded/meta-oe/recipes-extended/dlm/dlm/respect-ldflags-also-from-bin_ldflags.patch
new file mode 100644
index 000000000..69b2f903c
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/dlm/dlm/respect-ldflags-also-from-bin_ldflags.patch
@@ -0,0 +1,36 @@
+diff -uNr dlm-4.0.2.orig/dlm_controld/Makefile dlm-4.0.2/dlm_controld/Makefile
+--- dlm-4.0.2.orig/dlm_controld/Makefile 2017-04-04 10:49:23.661320260 +0200
++++ dlm-4.0.2/dlm_controld/Makefile 2017-04-04 10:50:36.121326429 +0200
+@@ -55,7 +55,7 @@
+ BIN_CFLAGS += -fPIE -DPIE
+ BIN_CFLAGS += -I../include -I../libdlm
+
+-BIN_LDFLAGS += -Wl,-z,now -Wl,-z,relro -pie
++BIN_LDFLAGS += $(LDFLAGS) -Wl,-z,now -Wl,-z,relro -pie
+ BIN_LDFLAGS += -lpthread -lrt -lcpg -lcmap -lcfg -lquorum
+
+ LIB_CFLAGS += $(BIN_CFLAGS)
+diff -uNr dlm-4.0.2.orig/dlm_tool/Makefile dlm-4.0.2/dlm_tool/Makefile
+--- dlm-4.0.2.orig/dlm_tool/Makefile 2013-07-31 17:50:26.000000000 +0200
++++ dlm-4.0.2/dlm_tool/Makefile 2017-04-04 10:50:44.617327153 +0200
+@@ -32,7 +32,7 @@
+ BIN_CFLAGS += -fPIE -DPIE
+ BIN_CFLAGS += -I../include -I../libdlm -I../dlm_controld
+
+-BIN_LDFLAGS += -Wl,-z,now -Wl,-z,relro -pie
++BIN_LDFLAGS += $(LDFLAGS) -Wl,-z,now -Wl,-z,relro -pie
+ BIN_LDFLAGS += -L../libdlm -L../dlm_controld
+ BIN_LDFLAGS += -lpthread -ldlm -ldlmcontrol
+
+diff -uNr dlm-4.0.2.orig/dlm_controld/Makefile dlm-4.0.2/dlm_controld/Makefile
+--- dlm-4.0.2.orig/dlm_controld/Makefile 2017-04-04 11:02:58.578389641 +0200
++++ dlm-4.0.2/dlm_controld/Makefile 2017-04-04 11:07:55.672414935 +0200
+@@ -59,7 +59,7 @@
+ BIN_LDFLAGS += -lpthread -lrt -lcpg -lcmap -lcfg -lquorum
+
+ LIB_CFLAGS += $(BIN_CFLAGS)
+-LIB_LDFLAGS += -Wl,-z,relro -pie
++LIB_LDFLAGS += $(LDFLAGS) -Wl,-z,relro -pie
+
+ ifeq ($(USE_SD_NOTIFY),yes)
+ BIN_CFLAGS += $(shell pkg-config --cflags libsystemd-daemon) \
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/dlm/dlm_4.0.2.bb b/import-layers/meta-openembedded/meta-oe/recipes-extended/dlm/dlm_4.0.2.bb
index ff3730563..31e411e86 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/dlm/dlm_4.0.2.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/dlm/dlm_4.0.2.bb
@@ -5,7 +5,9 @@ HOMEPAGE = "https://fedorahosted.org/cluster/wiki/HomePage"
REQUIRED_DISTRO_FEATURES = "systemd"
-SRC_URI = "https://git.fedorahosted.org/cgit/dlm.git/snapshot/${BP}.tar.xz"
+SRC_URI = "https://git.fedorahosted.org/cgit/dlm.git/snapshot/${BP}.tar.xz \
+ file://respect-ldflags-also-from-bin_ldflags.patch \
+"
SRC_URI[md5sum] = "efc2ee6093aa6aa0a88aaad83e998a3f"
SRC_URI[sha256sum] = "b89bc557aaffbab0ac005398025f247718a5589cff6574d902eaffe2b20e683e"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/efibootmgr/efibootmgr/0001-Remove-extra-const-keywords-gcc-7-gripes-about.patch b/import-layers/meta-openembedded/meta-oe/recipes-extended/efibootmgr/efibootmgr/0001-Remove-extra-const-keywords-gcc-7-gripes-about.patch
new file mode 100644
index 000000000..b6211c28a
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/efibootmgr/efibootmgr/0001-Remove-extra-const-keywords-gcc-7-gripes-about.patch
@@ -0,0 +1,49 @@
+From a9f8d414972b0b7c963d7efe38b5cfdcb6413c46 Mon Sep 17 00:00:00 2001
+From: Peter Jones <pjones@redhat.com>
+Date: Mon, 6 Feb 2017 16:34:54 -0500
+Subject: [PATCH] Remove extra const keywords gcc 7 gripes about.
+
+Signed-off-by: Peter Jones <pjones@redhat.com>
+---
+ src/efibootdump.c | 2 +-
+ src/efibootmgr.c | 4 ++--
+ 2 files changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/src/efibootdump.c b/src/efibootdump.c
+index 3e448c2..5a9b681 100644
+--- a/src/efibootdump.c
++++ b/src/efibootdump.c
+@@ -36,7 +36,7 @@ print_boot_entry(efi_load_option *loadopt, size_t data_size)
+ uint8_t *optional_data = NULL;
+ size_t optional_data_len = 0;
+ uint16_t pathlen;
+- const unsigned char const *desc;
++ const unsigned char *desc;
+ char *raw;
+ size_t raw_len;
+
+diff --git a/src/efibootmgr.c b/src/efibootmgr.c
+index baefa68..683623b 100644
+--- a/src/efibootmgr.c
++++ b/src/efibootmgr.c
+@@ -214,7 +214,7 @@ warn_duplicate_name(list_t *boot_list)
+ list_t *pos;
+ var_entry_t *boot;
+ efi_load_option *load_option;
+- const unsigned char const *desc;
++ const unsigned char *desc;
+
+ list_for_each(pos, boot_list) {
+ boot = list_entry(pos, var_entry_t, list);
+@@ -821,7 +821,7 @@ show_boot_vars()
+ {
+ list_t *pos;
+ var_entry_t *boot;
+- const unsigned char const *description;
++ const unsigned char *description;
+ efi_load_option *load_option;
+ efidp dp = NULL;
+ unsigned char *optional_data = NULL;
+--
+2.12.2
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/efibootmgr/efibootmgr_0.12.bb b/import-layers/meta-openembedded/meta-oe/recipes-extended/efibootmgr/efibootmgr_0.12.bb
index 0dee582e3..193150bb9 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/efibootmgr/efibootmgr_0.12.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/efibootmgr/efibootmgr_0.12.bb
@@ -12,6 +12,7 @@ COMPATIBLE_HOST = "(i.86|x86_64|arm|aarch64).*-linux"
SRCREV = "75d25807ba81cb724964c989012611272c8f1f5d"
SRC_URI = "git://github.com/rhinstaller/efibootmgr.git;protocol=https \
+ file://0001-Remove-extra-const-keywords-gcc-7-gripes-about.patch \
"
S = "${WORKDIR}/git"
@@ -25,5 +26,3 @@ EXTRA_OEMAKE = "'CC=${CC}' 'CFLAGS=${CFLAGS} -I${S}/src/include `pkg-config --cf
do_install () {
install -D -p -m0755 src/efibootmgr ${D}/${sbindir}/efibootmgr
}
-
-
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/efivar/efivar/0001-Remove-some-extra-const-that-gcc-complains-about.patch b/import-layers/meta-openembedded/meta-oe/recipes-extended/efivar/efivar/0001-Remove-some-extra-const-that-gcc-complains-about.patch
new file mode 100644
index 000000000..4ae8cb90f
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/efivar/efivar/0001-Remove-some-extra-const-that-gcc-complains-about.patch
@@ -0,0 +1,44 @@
+From 29a2dea16113b5a8e51de46437c6a9f7426c5867 Mon Sep 17 00:00:00 2001
+From: Peter Jones <pjones@redhat.com>
+Date: Mon, 6 Feb 2017 14:28:19 -0500
+Subject: [PATCH 1/2] Remove some extra "const" that gcc complains about.
+
+One of these days I'll get these right.
+
+Signed-off-by: Peter Jones <pjones@redhat.com>
+---
+ src/include/efivar/efiboot-loadopt.h | 4 ++--
+ src/loadopt.c | 2 +-
+ 2 files changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/src/include/efivar/efiboot-loadopt.h b/src/include/efivar/efiboot-loadopt.h
+index 07db5c4..efc29c6 100644
+--- a/src/include/efivar/efiboot-loadopt.h
++++ b/src/include/efivar/efiboot-loadopt.h
+@@ -32,8 +32,8 @@ extern ssize_t efi_loadopt_create(uint8_t *buf, ssize_t size,
+
+ extern efidp efi_loadopt_path(efi_load_option *opt, ssize_t limit)
+ __attribute__((__nonnull__ (1)));
+-extern const unsigned char const * efi_loadopt_desc(efi_load_option *opt,
+- ssize_t limit)
++extern const unsigned char * efi_loadopt_desc(efi_load_option *opt,
++ ssize_t limit)
+ __attribute__((__visibility__ ("default")))
+ __attribute__((__nonnull__ (1)));
+ extern uint32_t efi_loadopt_attrs(efi_load_option *opt)
+diff --git a/src/loadopt.c b/src/loadopt.c
+index 64e333f..ec50722 100644
+--- a/src/loadopt.c
++++ b/src/loadopt.c
+@@ -336,7 +336,7 @@ teardown(void)
+
+ __attribute__((__nonnull__ (1)))
+ __attribute__((__visibility__ ("default")))
+-const unsigned char const *
++const unsigned char *
+ efi_loadopt_desc(efi_load_option *opt, ssize_t limit)
+ {
+ if (last_desc) {
+--
+2.12.2
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/efivar/efivar/0002-New-gcc-version-new-way-symbol-versioning-breaks.patch b/import-layers/meta-openembedded/meta-oe/recipes-extended/efivar/efivar/0002-New-gcc-version-new-way-symbol-versioning-breaks.patch
new file mode 100644
index 000000000..737b78b01
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/efivar/efivar/0002-New-gcc-version-new-way-symbol-versioning-breaks.patch
@@ -0,0 +1,66 @@
+From 31e655d2b5f66e772d9714422b7332bbaa60d2e6 Mon Sep 17 00:00:00 2001
+From: Peter Jones <pjones@redhat.com>
+Date: Mon, 6 Feb 2017 14:41:58 -0500
+Subject: [PATCH 2/2] New gcc version, new way symbol versioning breaks.
+
+Apparently I get to redo this every time there's a compiler release.
+Yaaaaaay.
+
+Anyway, the current method is to define the two compat things from the
+land before time as @libefivar.so.0 symbols and list them there in the
+link map. Then we have the real one defined with another name, and set
+as efi_set_variable@@LIBEFIVAR_0.24. Then to make there actually be a
+efi_set_variable symbol to link against, we create it as a weak alias.
+
+This is all completely absurd.
+
+Signed-off-by: Peter Jones <pjones@redhat.com>
+---
+ src/lib.c | 17 ++++++++++++-----
+ 1 file changed, 12 insertions(+), 5 deletions(-)
+
+diff --git a/src/lib.c b/src/lib.c
+index 6a9b392..afa7d94 100644
+--- a/src/lib.c
++++ b/src/lib.c
+@@ -49,7 +49,7 @@ _efi_set_variable(efi_guid_t guid, const char *name, uint8_t *data,
+ {
+ return ops->set_variable(guid, name, data, data_size, attributes, 0600);
+ }
+-__asm__(".symver _efi_set_variable,_efi_set_variable@");
++__asm__(".symver _efi_set_variable,_efi_set_variable@libefivar.so.0");
+
+ int
+ __attribute__((__nonnull__ (2, 3)))
+@@ -59,17 +59,24 @@ _efi_set_variable_variadic(efi_guid_t guid, const char *name, uint8_t *data,
+ {
+ return ops->set_variable(guid, name, data, data_size, attributes, 0600);
+ }
+-__asm__(".symver _efi_set_variable_variadic,efi_set_variable@");
++__asm__(".symver _efi_set_variable_variadic,efi_set_variable@libefivar.so.0");
+
+ int
+ __attribute__((__nonnull__ (2, 3)))
+ __attribute__((__visibility__ ("default")))
+-efi_set_variable(efi_guid_t guid, const char *name, uint8_t *data,
+- size_t data_size, uint32_t attributes, mode_t mode)
++_efi_set_variable_mode(efi_guid_t guid, const char *name, uint8_t *data,
++ size_t data_size, uint32_t attributes, mode_t mode)
+ {
+ return ops->set_variable(guid, name, data, data_size, attributes, mode);
+ }
+-__asm__(".symver efi_set_variable,efi_set_variable@@LIBEFIVAR_0.24");
++__asm__(".symver _efi_set_variable_mode,efi_set_variable@@LIBEFIVAR_0.24");
++
++int
++__attribute__((__nonnull__ (2, 3)))
++__attribute__((__visibility__ ("default")))
++efi_set_variable(efi_guid_t guid, const char *name, uint8_t *data,
++ size_t data_size, uint32_t attributes, mode_t mode)
++ __attribute((weak, alias ("_efi_set_variable_mode")));
+
+ int
+ __attribute__((__nonnull__ (2, 3)))
+--
+2.12.2
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/efivar/efivar_0.24.bb b/import-layers/meta-openembedded/meta-oe/recipes-extended/efivar/efivar_0.24.bb
index efffde593..877ca9045 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/efivar/efivar_0.24.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/efivar/efivar_0.24.bb
@@ -8,18 +8,22 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=6626bb1e20189cfa95f2c508ba286393"
DEPENDS = "popt"
DEPENDS_append_class-target = " efivar-native"
+inherit pkgconfig
+
COMPATIBLE_HOST = "(i.86|x86_64|arm|aarch64).*-linux"
SRCREV = "963cb2e5adc145fe00717f94e382f2973f80e753"
SRC_URI = "git://github.com/rhinstaller/efivar.git \
file://0002-disable-static-build.patch \
+ file://allow-multi-definitions-for-native.patch \
+ file://0001-Remove-some-extra-const-that-gcc-complains-about.patch \
+ file://0002-New-gcc-version-new-way-symbol-versioning-breaks.patch \
"
SRC_URI_append_class-target = " file://0001-efivar-fix-for-cross-compile.patch \
file://0003-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 \
- file://allow-multi-definitions-for-native.patch \
"
S = "${WORKDIR}/git"
@@ -40,4 +44,3 @@ do_install_append_class-native() {
}
BBCLASSEXTEND = "native"
-
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/fluentbit/fluentbit/0001-CMakeLists.txt-Add-AUTOCONF_HOST_OPT-to-help-cross-c.patch b/import-layers/meta-openembedded/meta-oe/recipes-extended/fluentbit/fluentbit/0001-CMakeLists.txt-Add-AUTOCONF_HOST_OPT-to-help-cross-c.patch
new file mode 100644
index 000000000..539a42a7d
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/fluentbit/fluentbit/0001-CMakeLists.txt-Add-AUTOCONF_HOST_OPT-to-help-cross-c.patch
@@ -0,0 +1,52 @@
+From ceb47f37582a055bb7f253f813c435ad55c5b6eb Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 22 Apr 2017 10:02:50 -0700
+Subject: [PATCH 1/2] CMakeLists.txt: Add AUTOCONF_HOST_OPT to help cross
+ compiling
+
+This helps in doing cross compiles for modules which are using
+GNU autoconf for build system
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ CMakeLists.txt | 10 ++++++++--
+ 1 file changed, 8 insertions(+), 2 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index b093f9a..ebf0cd7 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -290,6 +290,12 @@ else()
+ endif()
+ endif()
+
++if("${GNU_HOST}" STREQUAL "")
++ set(AUTOCONF_HOST_OPT "")
++else()
++ set(AUTOCONF_HOST_OPT "--host=${GNU_HOST}")
++endif()
++
+ # Memory Allocator
+ # ================
+ if(FLB_JEMALLOC AND ${CMAKE_SYSTEM_NAME} MATCHES "Linux")
+@@ -299,7 +305,7 @@ if(FLB_JEMALLOC AND ${CMAKE_SYSTEM_NAME} MATCHES "Linux")
+ # Link to Jemalloc as an external dependency
+ ExternalProject_Add(jemalloc
+ SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/lib/jemalloc
+- CONFIGURE_COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/lib/jemalloc/configure --with-lg-quantum=3 --enable-cc-silence --prefix=<INSTALL_DIR>
++ CONFIGURE_COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/lib/jemalloc/configure ${AUTOCONF_HOST_OPT} --with-lg-quantum=3 --enable-cc-silence --prefix=<INSTALL_DIR>
+ CFLAGS=-std=gnu99\ -Wall\ -pipe\ -g3\ -O3\ -funroll-loops
+ BUILD_COMMAND ${MAKE}
+ INSTALL_DIR ${CMAKE_CURRENT_BINARY_DIR}/
+@@ -317,7 +323,7 @@ endif()
+ if(FLB_REGEX)
+ ExternalProject_Add(onigmo
+ SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/lib/onigmo
+- CONFIGURE_COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/lib/onigmo/configure --with-pic --disable-shared --enable-static --prefix=<INSTALL_DIR>
++ CONFIGURE_COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/lib/onigmo/configure ${AUTOCONF_HOST_OPT} --with-pic --disable-shared --enable-static --prefix=<INSTALL_DIR>
+ CFLAGS=-std=gnu99\ -Wall\ -pipe\ -g3\ -O3\ -funroll-loops
+ BUILD_COMMAND ${MAKE}
+ INSTALL_DIR ${CMAKE_CURRENT_BINARY_DIR}/
+--
+2.12.2
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/fluentbit/fluentbit/0002-msgpack-Add-comment-for-intended-fallthrough.patch b/import-layers/meta-openembedded/meta-oe/recipes-extended/fluentbit/fluentbit/0002-msgpack-Add-comment-for-intended-fallthrough.patch
new file mode 100644
index 000000000..35cdb18ad
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/fluentbit/fluentbit/0002-msgpack-Add-comment-for-intended-fallthrough.patch
@@ -0,0 +1,28 @@
+From d95c2977da074be0d3913e94fb8fb5ed1c64404a Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 22 Apr 2017 10:04:03 -0700
+Subject: [PATCH 2/2] msgpack: Add comment for intended fallthrough
+
+Helps fixing build with gcc7
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ lib/msgpack-c-0b7cabd/include/msgpack/unpack_template.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/lib/msgpack-c-0b7cabd/include/msgpack/unpack_template.h b/lib/msgpack-c-0b7cabd/include/msgpack/unpack_template.h
+index a6dae6f..651e6c2 100644
+--- a/lib/msgpack-c-0b7cabd/include/msgpack/unpack_template.h
++++ b/lib/msgpack-c-0b7cabd/include/msgpack/unpack_template.h
+@@ -248,7 +248,7 @@ msgpack_unpack_func(int, _execute)(msgpack_unpack_struct(_context)* ctx, const c
+
+ _fixed_trail_again:
+ ++p;
+-
++ // fallthrough
+ default:
+ if((size_t)(pe - p) < trail) { goto _out; }
+ n = p; p += trail - 1;
+--
+2.12.2
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/fluentbit/fluentbit_0.11.3.bb b/import-layers/meta-openembedded/meta-oe/recipes-extended/fluentbit/fluentbit_0.11.3.bb
new file mode 100644
index 000000000..8d756e6a4
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/fluentbit/fluentbit_0.11.3.bb
@@ -0,0 +1,24 @@
+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.11/fluent-bit-${PV}.tar.gz \
+ file://0001-CMakeLists.txt-Add-AUTOCONF_HOST_OPT-to-help-cross-c.patch \
+ file://0002-msgpack-Add-comment-for-intended-fallthrough.patch \
+ "
+SRC_URI[md5sum] = "9383262339412782b80cc49e7ad15609"
+SRC_URI[sha256sum] = "eb8a85c656fa60682b0bf8dd1ad58d848cd251dab4f35a6777acd552c65b0511"
+
+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}"
+
+SYSTEMD_SERVICE_${PN} = "fluent-bit.service"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/fluentbit/fluentbit_0.7.2.bb b/import-layers/meta-openembedded/meta-oe/recipes-extended/fluentbit/fluentbit_0.7.2.bb
deleted file mode 100644
index c75f446e1..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/fluentbit/fluentbit_0.7.2.bb
+++ /dev/null
@@ -1,16 +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.7/fluent-bit-${PV}.tar.gz"
-SRC_URI[md5sum] = "6df9d676e1d2d782a243e655e144e8ae"
-SRC_URI[sha256sum] = "695b56ce378f56855c9554f88f5d8e4f7b11ba7691284903870f779912af4ebe"
-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
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/gnuplot/gnuplot.inc b/import-layers/meta-openembedded/meta-oe/recipes-extended/gnuplot/gnuplot.inc
index 69bc74b04..19ee874e2 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/gnuplot/gnuplot.inc
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/gnuplot/gnuplot.inc
@@ -15,9 +15,10 @@ acpaths = ""
PACKAGECONFIG ??= "cairo"
PACKAGECONFIG[cairo] = "--with-cairo,--without-cairo,cairo pango"
PACKAGECONFIG[lua] = "--with-lua,--without-lua,lua"
+# there's compilation failure if qt4 is enabled
+PACKAGECONFIG[qt4] = "--with-qt,--without-qt,qt4-x11-free"
EXTRA_OECONF = "--with-readline=${STAGING_LIBDIR}/.. \
- --without-lisp-files \
--without-tutorial \
--disable-wxwidgets"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/gnuplot/gnuplot-4.6.5/lua-loadlibs-configure-in-fix.patch b/import-layers/meta-openembedded/meta-oe/recipes-extended/gnuplot/gnuplot/lua-loadlibs-configure-in-fix.patch
index 23f2cd26a..23f2cd26a 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/gnuplot/gnuplot-4.6.5/lua-loadlibs-configure-in-fix.patch
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/gnuplot/gnuplot/lua-loadlibs-configure-in-fix.patch
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/gnuplot/gnuplot-4.6.5/subdirs.patch b/import-layers/meta-openembedded/meta-oe/recipes-extended/gnuplot/gnuplot/subdirs.patch
index 8c7d1f0d3..8c7d1f0d3 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/gnuplot/gnuplot-4.6.5/subdirs.patch
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/gnuplot/gnuplot/subdirs.patch
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/gnuplot/gnuplot_4.6.5.bb b/import-layers/meta-openembedded/meta-oe/recipes-extended/gnuplot/gnuplot_5.0.5.bb
index 3f694a054..42308ba0b 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/gnuplot/gnuplot_4.6.5.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/gnuplot/gnuplot_5.0.5.bb
@@ -8,7 +8,7 @@ SRC_URI = "${SOURCEFORGE_MIRROR}/gnuplot/${BP}.tar.gz;name=archive \
file://gnuplot.png \
"
-SRC_URI[archive.md5sum] = "9a476b21f74bd99c876f1509d731a0f9"
-SRC_URI[archive.sha256sum] = "e550f030c7d04570e89c3d4e3f6e82296816508419c86ab46c4dd73156519a2d"
+SRC_URI[archive.md5sum] = "c5e96fca73afbee4f57cbc1bfce6b3b8"
+SRC_URI[archive.sha256sum] = "25f3e0bf192e01115c580f278c3725d7a569eb848786e12b455a3fda70312053"
SRC_URI[qtplot.md5sum] = "0a481885a496092c77eb4017540b5cf6"
SRC_URI[qtplot.sha256sum] = "6df317183ff62cc82f3dcf88207a267cd6478cb5147f55d7530c94f1ad5f4132"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/konkretcmpi/konkretcmpi/0001-to-fix-lib64-can-not-be-shiped-in-64bit-target.patch b/import-layers/meta-openembedded/meta-oe/recipes-extended/konkretcmpi/konkretcmpi/0001-to-fix-lib64-can-not-be-shiped-in-64bit-target.patch
deleted file mode 100644
index 7da13ee3d..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/konkretcmpi/konkretcmpi/0001-to-fix-lib64-can-not-be-shiped-in-64bit-target.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From f3c39fd2a4b5f53338b5f821788c63858bf860cf Mon Sep 17 00:00:00 2001
-From: Lei Maohui <leimaohui@cn.fujitsu.com>
-Date: Sun, 2 Aug 2015 22:08:43 +0900
-Subject: [PATCH] to fix lib64 can not be shiped in 64bit target
-
-To fix the warning as following:
-WARNING: QA Issue: konkretcmpi: Files/directories were installed but not shipped in any package:
- /usr/lib64
- /usr/lib64/libkonkret.so
- /usr/lib64/libkonkret.so.0.0.1
- /usr/lib64/libkonkret.so.0
- /usr/lib64/libkonkretmof.so.0.0.1
- /usr/lib64/libkonkretmof.so
- ...
-
-Signed-off-by: Lei Maohui <leimaohui@cn.fujitsu.com>
----
- cmake/modules/FindKonkretCMPI.cmake | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/cmake/modules/FindKonkretCMPI.cmake b/cmake/modules/FindKonkretCMPI.cmake
-index b888cfd..097caed 100644
---- a/cmake/modules/FindKonkretCMPI.cmake
-+++ b/cmake/modules/FindKonkretCMPI.cmake
-@@ -9,7 +9,7 @@ find_path(KONKRETCMPI_INCLUDE_DIR
- find_library(KONKRETCMPI_LIBRARY
- NAMES konkret
- HINTS $ENV{KONKRETCMPI_LIB_DIR}
-- PATH_SUFFIXES lib64 lib
-+ PATH_SUFFIXES lib lib64
- PATHS /usr /usr/local
- )
-
---
-1.8.4.2
-
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/lcdproc/lcdproc/0001-include-asm-ioctl.h-explicitly.patch b/import-layers/meta-openembedded/meta-oe/recipes-extended/lcdproc/lcdproc/0001-include-asm-ioctl.h-explicitly.patch
new file mode 100644
index 000000000..abdedad5d
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/lcdproc/lcdproc/0001-include-asm-ioctl.h-explicitly.patch
@@ -0,0 +1,43 @@
+From b5ca64c7398d516e9845d849e8306df7ac024bc4 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Tue, 11 Apr 2017 13:59:34 -0700
+Subject: [PATCH] include asm/ioctl.h explicitly
+
+Needed for _IOC* defines
+
+helps compiling with musl where this file is
+not included indirectly
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ server/drivers/hd44780-pifacecad.c | 1 +
+ server/drivers/hd44780-spi.c | 1 +
+ 2 files changed, 2 insertions(+)
+
+diff --git a/server/drivers/hd44780-pifacecad.c b/server/drivers/hd44780-pifacecad.c
+index 43db19c..e2798ad 100644
+--- a/server/drivers/hd44780-pifacecad.c
++++ b/server/drivers/hd44780-pifacecad.c
+@@ -54,6 +54,7 @@
+ #include <unistd.h>
+ #include <fcntl.h>
+ #include <sys/ioctl.h>
++#include <asm/ioctl.h>
+ #include <stdint.h>
+ #include <linux/spi/spidev.h>
+
+diff --git a/server/drivers/hd44780-spi.c b/server/drivers/hd44780-spi.c
+index 5f94333..8a4015b 100644
+--- a/server/drivers/hd44780-spi.c
++++ b/server/drivers/hd44780-spi.c
+@@ -29,6 +29,7 @@
+ #include <unistd.h>
+ #include <fcntl.h>
+ #include <sys/ioctl.h>
++#include <asm/ioctl.h>
+ #include <stdint.h>
+ #include <linux/spi/spidev.h>
+
+--
+2.12.2
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/lcdproc/lcdproc_0.5.6.bb b/import-layers/meta-openembedded/meta-oe/recipes-extended/lcdproc/lcdproc_0.5.6.bb
deleted file mode 100644
index f57e9dfc6..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/lcdproc/lcdproc_0.5.6.bb
+++ /dev/null
@@ -1,23 +0,0 @@
-require lcdproc5.inc
-
-SRC_URI[md5sum] = "df4f5c2c7285eaf6979b9c7768b4877f"
-SRC_URI[sha256sum] = "bd2f43c30ff43b30f43110abe6b4a5bc8e0267cb9f57fa97cc5e5ef9488b984a"
-
-PACKAGECONFIG ?= ""
-PACKAGECONFIG[g15] = ",,libg15 g15daemon libg15render,"
-PACKAGECONFIG[hid] = "--enable-libhid,--disable-libhid,libhid"
-
-LCD_DRIVERS_append = "${@bb.utils.contains('PACKAGECONFIG', 'g15', '', ',!g15', d)}"
-
-do_install_append () {
- # binaries
- install -D -m 0755 clients/lcdvc/lcdvc ${D}${sbindir}/lcdvc
-
- # configuration files
- install -D -m 0644 ${S}/clients/lcdvc/lcdvc.conf ${D}${sysconfdir}/lcdvc.conf
-}
-
-PACKAGES =+ "lcdvc"
-CONFFILES_lcdvc = "${sysconfdir}/lcdvc.conf"
-FILES_lcdvc = "${sysconfdir}/lcdvc.conf ${sbindir}/lcdvc"
-
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/lcdproc/lcdproc5.inc b/import-layers/meta-openembedded/meta-oe/recipes-extended/lcdproc/lcdproc_git.bb
index 680f558fa..96bc826fd 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/lcdproc/lcdproc5.inc
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/lcdproc/lcdproc_git.bb
@@ -7,20 +7,32 @@ LICENSE = "GPLv2+"
DEPENDS = "ncurses lirc"
LIC_FILES_CHKSUM = "file://COPYING;md5=18810669f13b87348459e611d31ab760 \
- file://README;beginline=60;md5=637e042cdd3671ba00e78b58ede45d3b"
+ file://README.md;beginline=107;md5=5c927ce1742d6d5cddc45b7ad6230f75"
-SRC_URI = "${SOURCEFORGE_MIRROR}/lcdproc/${BP}.tar.gz"
+BASEPV = "0.5.8"
+PV = "${BASEPV}+git${SRCPV}"
+SRCREV = "f5156e2e41bb418f14761afea22eee8efb49fb85"
+SRC_URI = "git://github.com/lcdproc/lcdproc;branch=lcdproc-${BASEPV} \
+ file://0001-include-asm-ioctl.h-explicitly.patch \
+ "
-inherit autotools update-rc.d
+S = "${WORKDIR}/git"
-LCD_DRIVERS ?= "all"
+inherit autotools pkgconfig update-rc.d
+
+LCD_DRIVERS ?= "all,!irman,!svga"
LCD_DEFAULT_DRIVER ?= "curses"
PACKAGECONFIG ??= "usb"
PACKAGECONFIG[usb] = "--enable-libusb,--disable-libusb,virtual/libusb0"
PACKAGECONFIG[ftdi] = "--enable-libftdi,--disable-libftdi,libftdi"
+PACKAGECONFIG[g15] = ",,libg15 g15daemon libg15render,"
+PACKAGECONFIG[hid] = "--enable-libhid,--disable-libhid,libhid"
+PACKAGECONFIG[png] = "--enable-libpng,--disable-libpng,libpng"
+
+LCD_DRIVERS_append = "${@bb.utils.contains('PACKAGECONFIG', 'g15', '', ',!g15', d)}"
-EXTRA_OECONF = "--enable-drivers=${LCD_DRIVERS}"
+EXTRA_OECONF = "--enable-drivers='${LCD_DRIVERS}'"
do_install () {
# binaries
@@ -46,9 +58,14 @@ do_install () {
for i in server/drivers/*.so; do
install -m 0644 $i ${D}${libdir}/lcdproc/
done
+ # binaries
+ install -D -m 0755 clients/lcdvc/lcdvc ${D}${sbindir}/lcdvc
+
+ # configuration files
+ install -D -m 0644 ${S}/clients/lcdvc/lcdvc.conf ${D}${sysconfdir}/lcdvc.conf
}
-PACKAGES =+ "lcdd"
+PACKAGES =+ "lcdd lcdvc"
RRECOMMENDS_${PN} = "lcdd"
@@ -58,6 +75,8 @@ FILES_lcdd = "${sysconfdir}/LCDd.conf \
CONFFILES_lcdd = "${sysconfdir}/LCDd.conf"
CONFFILES_${PN} = "${sysconfdir}/lcdproc.conf"
+CONFFILES_lcdvc = "${sysconfdir}/lcdvc.conf"
+FILES_lcdvc = "${sysconfdir}/lcdvc.conf ${sbindir}/lcdvc"
# Driver packages
@@ -78,4 +97,3 @@ python populate_packages_prepend() {
}
PACKAGES_DYNAMIC += "^lcdd-driver-.*"
-
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/libcec/files/python-install-location.patch b/import-layers/meta-openembedded/meta-oe/recipes-extended/libcec/files/python-install-location.patch
new file mode 100644
index 000000000..b6be78dd4
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/libcec/files/python-install-location.patch
@@ -0,0 +1,28 @@
+From 330fa6777d51d41eefacff8e98e4250d210fde35 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Javi=20Mart=C3=ADnez?= <javi@flamingalah.net>
+Date: Tue, 13 Dec 2016 22:31:13 +0100
+Subject: [PATCH] Improve/fix installation of Python bindings
+
+Upstream-Status: Backport
+
+dist-packages is a Debian-specific directory for distribution packages (and used in derivatives such as Ubuntu). Therefore changed to site-packages.
+---
+ src/libcec/cmake/CheckPlatformSupport.cmake | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/src/libcec/cmake/CheckPlatformSupport.cmake b/src/libcec/cmake/CheckPlatformSupport.cmake
+index fcd0ef7..7661107 100644
+--- a/src/libcec/cmake/CheckPlatformSupport.cmake
++++ b/src/libcec/cmake/CheckPlatformSupport.cmake
+@@ -195,9 +195,9 @@ else()
+ RENAME __init__.py)
+ else()
+ install(TARGETS ${SWIG_MODULE_cec_REAL_NAME}
+- DESTINATION lib/python${PYTHON_VERSION}/dist-packages/cec)
++ DESTINATION lib/python${PYTHON_VERSION}/site-packages/cec)
+ install(FILES ${CMAKE_BINARY_DIR}/src/libcec/cec.py
+- DESTINATION lib/python${PYTHON_VERSION}/dist-packages/cec
++ DESTINATION lib/python${PYTHON_VERSION}/site-packages/cec
+ RENAME __init__.py)
+ endif()
+ endif()
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/libcec/libcec_git.bb b/import-layers/meta-openembedded/meta-oe/recipes-extended/libcec/libcec_git.bb
index 0f2a64eda..cb65caad8 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/libcec/libcec_git.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/libcec/libcec_git.bb
@@ -2,18 +2,26 @@ SUMMARY = "USB CEC Adaptor communication Library"
HOMEPAGE = "http://libcec.pulse-eight.com/"
LICENSE = "GPLv2+"
-LIC_FILES_CHKSUM = "file://COPYING;md5=5e8e16396992369f73f3d28875f846da"
+LIC_FILES_CHKSUM = "file://COPYING;md5=e61fd86f9c947b430126181da2c6c715"
-DEPENDS = "udev lockdev"
+DEPENDS = "p8platform udev lockdev ncurses swig-native python3"
-PV = "2.1.4"
+DEPENDS += "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'libx11 libxrandr', '', d)}"
+DEPENDS_append_rpi = "${@bb.utils.contains('MACHINE_FEATURES', 'vc4graphics', '', ' userland', d)}"
-SRCREV = "81e38211724bc6e8bd7a60f484433053ed682635"
-SRC_URI = "git://github.com/Pulse-Eight/libcec.git;branch=release"
+PV = "4.0.1+gitr${SRCPV}"
+
+SRCREV = "2fc92b5f02dca702da92ccc5ed7b805b240ef5df"
+SRC_URI = "git://github.com/Pulse-Eight/libcec.git \
+ file://python-install-location.patch"
S = "${WORKDIR}/git"
-inherit autotools pkgconfig
+inherit cmake pkgconfig
+
+# Create the wrapper for python3
+PACKAGES += "python3-${BPN}"
+FILES_python3-${BPN} = "${libdir}/python3*"
# cec-client and xbmc need the .so present to work :(
FILES_${PN} += "${libdir}/*.so"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/libexecinfo/libexecinfo/0001-makefile-Fix-build-on-linux.patch b/import-layers/meta-openembedded/meta-oe/recipes-extended/libexecinfo/libexecinfo/0001-makefile-Fix-build-on-linux.patch
new file mode 100644
index 000000000..f1863f14b
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/libexecinfo/libexecinfo/0001-makefile-Fix-build-on-linux.patch
@@ -0,0 +1,59 @@
+From 910bbc2cb6cc1cfa6deed9d170da02a639902c7c Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sun, 19 Mar 2017 16:14:54 -0700
+Subject: [PATCH 1/2] makefile: Fix build on linux
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ Makefile | 33 +++++++++++++++++----------------
+ 1 file changed, 17 insertions(+), 16 deletions(-)
+
+Index: libexecinfo-1.1/Makefile
+===================================================================
+--- libexecinfo-1.1.orig/Makefile
++++ libexecinfo-1.1/Makefile
+@@ -23,24 +23,25 @@
+ # SUCH DAMAGE.
+ #
+ # $Id: Makefile,v 1.3 2004/07/19 05:19:55 sobomax Exp $
++#
++# Linux Makefile by Matt Smith <mcs@darkregion.net>, 2011/01/04
+
+-LIB= execinfo
+-
+-SRCS= stacktraverse.c stacktraverse.h execinfo.c execinfo.h
+-
+-INCS= execinfo.h
+-
+-SHLIB_MAJOR= 1
+-SHLIB_MINOR= 0
+-
+-NOPROFILE= yes
+-
+-DPADD= ${LIBM}
+-LDADD= -lm
+-
+-#WARNS?= 4
+-
+-#stacktraverse.c: gen.py
+-# ./gen.py > stacktraverse.c
++CC?=cc
++AR?=ar
++EXECINFO_CFLAGS=$(CFLAGS) -O2 -pipe -fno-strict-aliasing -std=gnu99 -fstack-protector -c
++EXECINFO_LDFLAGS=$(LDFLAGS)
++
++all: static dynamic
++
++static:
++ $(CC) $(EXECINFO_CFLAGS) $(EXECINFO_LDFLAGS) stacktraverse.c
++ $(CC) $(EXECINFO_CFLAGS) $(EXECINFO_LDFLAGS) execinfo.c
++ $(AR) rcs libexecinfo.a stacktraverse.o execinfo.o
++
++dynamic:
++ $(CC) -fpic -DPIC $(EXECINFO_CFLAGS) $(EXECINFO_LDFLAGS) stacktraverse.c -o stacktraverse.So
++ $(CC) -fpic -DPIC $(EXECINFO_CFLAGS) $(EXECINFO_LDFLAGS) execinfo.c -o execinfo.So
++ $(CC) -shared -Wl,-soname,libexecinfo.so.1 -o libexecinfo.so.1 $(EXECINFO_LDFLAGS) stacktraverse.So execinfo.So
+
+-.include <bsd.lib.mk>
++clean:
++ rm -rf *.o *.So *.a *.so
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/libexecinfo/libexecinfo/0002-execinfo-Fix-compiler-errors-found-with-newer-gcc-cl.patch b/import-layers/meta-openembedded/meta-oe/recipes-extended/libexecinfo/libexecinfo/0002-execinfo-Fix-compiler-errors-found-with-newer-gcc-cl.patch
new file mode 100644
index 000000000..423b67082
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/libexecinfo/libexecinfo/0002-execinfo-Fix-compiler-errors-found-with-newer-gcc-cl.patch
@@ -0,0 +1,79 @@
+From 0810817773fb81d7383d2fa8464244c8f79845fb Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sun, 19 Mar 2017 16:16:18 -0700
+Subject: [PATCH 2/2] execinfo: Fix compiler errors found with newer gcc/clang
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ execinfo.c | 19 +++++++++++--------
+ 1 file changed, 11 insertions(+), 8 deletions(-)
+
+diff --git a/execinfo.c b/execinfo.c
+index 906fb14..9448b60 100644
+--- a/execinfo.c
++++ b/execinfo.c
+@@ -69,7 +69,8 @@ backtrace(void **buffer, int size)
+ char **
+ backtrace_symbols(void *const *buffer, int size)
+ {
+- int i, clen, alen, offset;
++ size_t clen, alen;
++ int i, offset;
+ char **rval;
+ char *cp;
+ Dl_info info;
+@@ -78,7 +79,6 @@ backtrace_symbols(void *const *buffer, int size)
+ rval = malloc(clen);
+ if (rval == NULL)
+ return NULL;
+- (char **)cp = &(rval[size]);
+ for (i = 0; i < size; i++) {
+ if (dladdr(buffer[i], &info) != 0) {
+ if (info.dli_sname == NULL)
+@@ -92,14 +92,14 @@ backtrace_symbols(void *const *buffer, int size)
+ 2 + /* " <" */
+ strlen(info.dli_sname) + /* "function" */
+ 1 + /* "+" */
+- D10(offset) + /* "offset */
++ 10 + /* "offset */
+ 5 + /* "> at " */
+ strlen(info.dli_fname) + /* "filename" */
+ 1; /* "\0" */
+ rval = realloc_safe(rval, clen + alen);
+ if (rval == NULL)
+ return NULL;
+- snprintf(cp, alen, "%p <%s+%d> at %s",
++ snprintf((char *) rval + clen, alen, "%p <%s+%d> at %s",
+ buffer[i], info.dli_sname, offset, info.dli_fname);
+ } else {
+ alen = 2 + /* "0x" */
+@@ -108,12 +108,15 @@ backtrace_symbols(void *const *buffer, int size)
+ rval = realloc_safe(rval, clen + alen);
+ if (rval == NULL)
+ return NULL;
+- snprintf(cp, alen, "%p", buffer[i]);
++ snprintf((char *) rval + clen, alen, "%p", buffer[i]);
+ }
+- rval[i] = cp;
+- cp += alen;
++ rval[i] = (char *) clen;
++ clen += alen;
+ }
+
++ for (i = 0; i < size; i++)
++ rval[i] += (long) rval;
++
+ return rval;
+ }
+
+@@ -155,6 +158,6 @@ backtrace_symbols_fd(void *const *buffer, int size, int fd)
+ return;
+ snprintf(buf, len, "%p\n", buffer[i]);
+ }
+- write(fd, buf, len - 1);
++ write(fd, buf, strlen(buf));
+ }
+ }
+--
+2.12.0
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/libexecinfo/libexecinfo_1.1.bb b/import-layers/meta-openembedded/meta-oe/recipes-extended/libexecinfo/libexecinfo_1.1.bb
new file mode 100644
index 000000000..13a38ab49
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/libexecinfo/libexecinfo_1.1.bb
@@ -0,0 +1,32 @@
+# Copyright (C) 2017 Khem Raj <raj.khem@gmail.com>
+# Released under the MIT license (see COPYING.MIT for the terms)
+
+DESCRIPTION = "A quick-n-dirty BSD licensed clone of the GNU libc backtrace facility."
+HOMEPAGE = "http://www.freshports.org/devel/libexecinfo"
+LIC_FILES_CHKSUM = "file://execinfo.c;endline=25;md5=85bd3fa4ea9acae5182e29db063fe2e5"
+LICENSE = "BSD-2-Clause"
+SECTION = "libs"
+DEPENDS = ""
+
+SRC_URI = "http://distcache.freebsd.org/local-distfiles/itetcu/${BP}.tar.bz2 \
+ file://0001-makefile-Fix-build-on-linux.patch \
+ file://0002-execinfo-Fix-compiler-errors-found-with-newer-gcc-cl.patch \
+ "
+SRC_URI[md5sum] = "8e9e81c554c1c5d735bc877448e92b91"
+SRC_URI[sha256sum] = "c9a21913e7fdac8ef6b33250b167aa1fc0a7b8a175145e26913a4c19d8a59b1f"
+
+CFLAGS += "-fno-omit-frame-pointer"
+CFLAGS += " -D_GNU_SOURCE"
+
+do_install() {
+ install -D -m 0744 ${S}/execinfo.h ${D}${includedir}/execinfo.h
+ install -D -m 0744 ${S}/stacktraverse.h ${D}${includedir}/stacktraverse.h
+ install -D -m 0744 ${B}/libexecinfo.a ${D}${libdir}/libexecinfo.a
+ install -D -m 0755 ${B}/libexecinfo.so.1 ${D}${libdir}/libexecinfo.so.1
+ ln -s libexecinfo.so.1 ${D}${libdir}/libexecinfo.so
+}
+#
+# We will skip parsing for non-musl systems
+#
+COMPATIBLE_HOST = ".*-musl.*"
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/libgxim/libgxim/0001-Use-AM_CPPFLAGS-instead-of-INCLUDES.patch b/import-layers/meta-openembedded/meta-oe/recipes-extended/libgxim/libgxim/0001-Use-AM_CPPFLAGS-instead-of-INCLUDES.patch
new file mode 100644
index 000000000..41e07f39f
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/libgxim/libgxim/0001-Use-AM_CPPFLAGS-instead-of-INCLUDES.patch
@@ -0,0 +1,53 @@
+From d2ccba90186e2affbb3d146ada341ea2ae6fab2c Mon Sep 17 00:00:00 2001
+From: Akira TAGOH <akira@tagoh.org>
+Date: Mon, 13 May 2013 16:05:32 +0900
+Subject: [PATCH 1/3] Use AM_CPPFLAGS instead of INCLUDES
+
+---
+ docs/reference/Makefile.am | 2 +-
+ libgxim/Makefile.am | 2 +-
+ tests/Makefile.am | 2 +-
+ 3 files changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/docs/reference/Makefile.am b/docs/reference/Makefile.am
+index 24986e1..f785735 100644
+--- a/docs/reference/Makefile.am
++++ b/docs/reference/Makefile.am
+@@ -84,7 +84,7 @@ expand_content_files=
+ # signals and properties.
+ # e.g. INCLUDES=-I$(top_srcdir) -I$(top_builddir) $(GTK_DEBUG_FLAGS)
+ # e.g. GTKDOC_LIBS=$(top_builddir)/gtk/$(gtktargetlib)
+-INCLUDES= \
++AM_CPPFLAGS= \
+ $(GXIM_CFLAGS) \
+ -I$(top_srcdir) \
+ $(NULL)
+diff --git a/libgxim/Makefile.am b/libgxim/Makefile.am
+index 572bdb5..ae1ba32 100644
+--- a/libgxim/Makefile.am
++++ b/libgxim/Makefile.am
+@@ -1,7 +1,7 @@
+ ##
+ # Global definitions
+ NULL =
+-INCLUDES = \
++AM_CPPFLAGS = \
+ $(GXIM_CFLAGS) \
+ -I$(top_srcdir) \
+ $(NULL)
+diff --git a/tests/Makefile.am b/tests/Makefile.am
+index 2926829..919ccc8 100644
+--- a/tests/Makefile.am
++++ b/tests/Makefile.am
+@@ -1,7 +1,7 @@
+ ##
+ # Global definitions
+ NULL =
+-INCLUDES = \
++AM_CPPFLAGS = \
+ -I$(top_srcdir)/libgxim \
+ -I$(top_srcdir) \
+ $(GXIM_CFLAGS) \
+--
+2.12.1
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/libgxim/libgxim/0002-Update-autotools-macro.patch b/import-layers/meta-openembedded/meta-oe/recipes-extended/libgxim/libgxim/0002-Update-autotools-macro.patch
new file mode 100644
index 000000000..808203b6e
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/libgxim/libgxim/0002-Update-autotools-macro.patch
@@ -0,0 +1,31 @@
+From 3215783732b147723e3613cc3c3f83cdcf2ae832 Mon Sep 17 00:00:00 2001
+From: Akira TAGOH <akira@tagoh.org>
+Date: Wed, 22 Jan 2014 18:59:32 +0900
+Subject: [PATCH 2/3] Update autotools macro
+
+---
+ configure.ac | 6 ++++--
+ 1 file changed, 4 insertions(+), 2 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index d559491..8b846a6 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -11,10 +11,12 @@ dnl V=0 to make.
+ m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
+
+ AM_MAINTAINER_MODE
+-AM_CONFIG_HEADER([config.h])
++AC_CONFIG_HEADERS([config.h])
+ AC_CONFIG_MACRO_DIR([m4macros])
+
+-AC_PROG_LIBTOOL
++LT_PREREQ([2.2])
++LT_INIT([disable-static])
++
+ AC_PROG_INTLTOOL
+
+ AC_PROG_CC
+--
+2.12.1
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/libgxim/libgxim/0003-Add-format-string-qualifier-to-fix-potential-securit.patch b/import-layers/meta-openembedded/meta-oe/recipes-extended/libgxim/libgxim/0003-Add-format-string-qualifier-to-fix-potential-securit.patch
new file mode 100644
index 000000000..cb21e1ef4
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/libgxim/libgxim/0003-Add-format-string-qualifier-to-fix-potential-securit.patch
@@ -0,0 +1,30 @@
+From d05d7fa24ee128f1f33a2e905fc3601955dd27d4 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Wed, 29 Mar 2017 18:06:02 -0700
+Subject: [PATCH 3/3] Add format string qualifier to fix potential security
+ risk
+
+Fixes
+libgxim/gximprotocol10.c:2076:66: error: format string is not a string literal (potentially insecure) [-Werror,-Wformat-security]
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ libgxim/gximprotocol10.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/libgxim/gximprotocol10.c b/libgxim/gximprotocol10.c
+index 04887a5..65bd4df 100644
+--- a/libgxim/gximprotocol10.c
++++ b/libgxim/gximprotocol10.c
+@@ -2073,7 +2073,7 @@ g_xim_protocol10_closure_real_parser_error(GXimProtocol *proto,
+ msg = g_strdup_printf("Unable to parse the protocol %s properly",
+ g_xim_protocol_name(major_opcode));
+
+- g_xim_messages_error(G_XIM_PROTOCOL_GET_IFACE (proto)->message, msg);
++ g_xim_messages_error(G_XIM_PROTOCOL_GET_IFACE (proto)->message, "%s", msg);
+ switch (major_opcode) {
+ case G_XIM_CONNECT:
+ case G_XIM_AUTH_REQUIRED:
+--
+2.12.1
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/libgxim/libgxim_0.5.0.bb b/import-layers/meta-openembedded/meta-oe/recipes-extended/libgxim/libgxim_0.5.0.bb
index 772babf5b..5bf7c6e33 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/libgxim/libgxim_0.5.0.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/libgxim/libgxim_0.5.0.bb
@@ -10,7 +10,11 @@ HOMEPAGE = "http://code.google.com/p/libgxim/"
SECTION = "System Environment/Libraries"
SRC_URI = "https://bitbucket.org/tagoh/libgxim/downloads/${BPN}-${PV}.tar.bz2 \
- file://multi-line-ACLOCAL_AMFLAGS-isnot-supported-by-autoreconf.patch"
+ file://multi-line-ACLOCAL_AMFLAGS-isnot-supported-by-autoreconf.patch \
+ file://0001-Use-AM_CPPFLAGS-instead-of-INCLUDES.patch \
+ file://0002-Update-autotools-macro.patch \
+ file://0003-Add-format-string-qualifier-to-fix-potential-securit.patch \
+ "
SRC_URI[md5sum] = "4bb1fa63d00eb224439d413591c29a6a"
SRC_URI[sha256sum] = "75e20d1744139644f9951b78ea3910b162d3380302315cb4b3d0640f23694c79"
@@ -19,7 +23,7 @@ LICENSE = "LGPLv2+"
LIC_FILES_CHKSUM = "\
file://COPYING;md5=2d5025d4aa3495befef8f17206a5b0a1"
-EXTRA_OECONF = " --disable-static --disable-rebuilds"
-DEPENDS += "gtk+ glib-2.0 ruby-native intltool-native"
+EXTRA_OECONF = " --disable-static --disable-rebuilds --enable-compile-warnings=minimum"
+DEPENDS += "gtk+ glib-2.0 glib-2.0-native ruby-native intltool-native gnome-common-native"
inherit autotools pkgconfig gettext
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/liblockfile/liblockfile-1.09/glibc-2.4.patch b/import-layers/meta-openembedded/meta-oe/recipes-extended/liblockfile/liblockfile-1.09/glibc-2.4.patch
deleted file mode 100644
index e3c4aaae5..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/liblockfile/liblockfile-1.09/glibc-2.4.patch
+++ /dev/null
@@ -1,70 +0,0 @@
-The local function eaccess conflicts with a glibc function of the same name.
-Rename the function so that this can be build under glibc 2.4, and older
-revisions, without any problems.
-
---- liblockfile-1.06/dotlockfile.c 2006/07/10 03:17:40 1.1
-+++ liblockfile-1.06/dotlockfile.c 2006/07/10 03:18:26
-@@ -42,7 +42,7 @@
- extern int optind;
- #endif
-
--extern int eaccess(char *, gid_t, struct stat *);
-+extern int xeaccess(char *, gid_t, struct stat *);
-
- /*
- * Sleep for an amout of time while regulary checking if
-@@ -252,14 +252,14 @@
- return L_ERROR;
- }
- gid = getgid();
-- if (eaccess(dir, gid, &st) < 0) {
-+ if (xeaccess(dir, gid, &st) < 0) {
- if (errno == ENOENT) {
- enoent:
- if (!quiet) fprintf(stderr,
- "dotlockfile: %s: no such directory\n", dir);
- return L_TMPLOCK;
- }
-- if ((r = eaccess(dir, getegid(), &st) < 0) && errno == ENOENT)
-+ if ((r = xeaccess(dir, getegid(), &st) < 0) && errno == ENOENT)
- goto enoent;
- if (r < 0 || !ismaillock(lockfile, pwd->pw_name)) {
- if (!quiet) fprintf(stderr,
-@@ -272,7 +272,7 @@
- /*
- * Now we should be able to chdir() to the lock directory.
- * When we stat("."), it should be the same as at the
-- * eaccess() check or someone played symlink() games on us.
-+ * xeaccess() check or someone played symlink() games on us.
- */
- if (chdir(dir) < 0 || stat(".", &st2) < 0) {
- if (!quiet) fprintf(stderr,
---- liblockfile-1.06/lockfile.c 2006/07/10 03:17:40 1.1
-+++ liblockfile-1.06/lockfile.c 2006/07/10 03:18:26
-@@ -54,7 +54,7 @@
- #ifdef LIB
- static
- #endif
--int eaccess(char *fn, gid_t gid, struct stat *st)
-+int xeaccess(char *fn, gid_t gid, struct stat *st)
- {
- struct stat tmp;
- uid_t uid = geteuid();
-@@ -96,7 +96,7 @@
- *p = 0;
- else
- strcpy(dir, ".");
-- if (eaccess(dir, egid, NULL) >= 0) {
-+ if (xeaccess(dir, egid, NULL) >= 0) {
- free(dir);
- return 0;
- }
-@@ -111,7 +111,7 @@
- return 0;
- mailgid = st.st_gid;
- }
-- ret = eaccess(dir, mailgid, NULL) >= 0;
-+ ret = xeaccess(dir, mailgid, NULL) >= 0;
- free (dir);
- return ret;
- }
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/liblogging/liblogging_1.0.5.bb b/import-layers/meta-openembedded/meta-oe/recipes-extended/liblogging/liblogging_1.0.5.bb
index 3488b19a3..64a258b01 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/liblogging/liblogging_1.0.5.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/liblogging/liblogging_1.0.5.bb
@@ -19,5 +19,5 @@ inherit autotools pkgconfig
EXTRA_OECONF = "--disable-man-pages"
-PACKAGECONFIG ??= "${@bb.utils.contains("DISTRO_FEATURES", "systemd", "systemd", "", d)}"
+PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)}"
PACKAGECONFIG[systemd] = "--enable-journal, --disable-journal, systemd"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/libqb/libqb/0001-Remove-runtime-check-for-CLOCK_MONOTONIC.patch b/import-layers/meta-openembedded/meta-oe/recipes-extended/libqb/libqb/0001-Remove-runtime-check-for-CLOCK_MONOTONIC.patch
new file mode 100644
index 000000000..28bc5c07d
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/libqb/libqb/0001-Remove-runtime-check-for-CLOCK_MONOTONIC.patch
@@ -0,0 +1,43 @@
+From e6fbad0c122ba8e87b67a9e2447505adcaafe204 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Wed, 29 Mar 2017 16:31:38 -0700
+Subject: [PATCH] Remove runtime check for CLOCK_MONOTONIC
+
+Does not work during cross compile
+
+use a compile-time check to detect whether the
+monotonic clock is available. This check can run just fine when we are
+cross-compiling.
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ configure.ac | 12 ++++++++++--
+ 1 file changed, 10 insertions(+), 2 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index fa13ae6..f4f0f46 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -175,9 +175,17 @@ AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
+ )
+
+ AC_MSG_CHECKING(for a working clock_getres(CLOCK_MONOTONIC, &ts))
+-AC_RUN_IFELSE([AC_LANG_PROGRAM(
++AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
+ [[#include <time.h>]],
+-[[struct timespec ts; if(clock_getres(CLOCK_MONOTONIC, &ts)) return -1;]])],
++[[
++#include <unistd.h>
++int main() {
++#if !(defined(_POSIX_MONOTONIC_CLOCK) && _POSIX_MONOTONIC_CLOCK >= 0 && defined(CLOCK_MONOTONIC))
++ #error No monotonic clock
++#endif
++ return 0;
++
++]])],
+ [
+ AC_MSG_RESULT([yes])
+ AC_DEFINE_UNQUOTED([HAVE_CLOCK_GETRES_MONOTONIC], 1, [Define to 1 if clock_getres(CLOCK_MONOTONIC, &ts) works])
+--
+2.12.1
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/libqb/libqb_0.17.2.bb b/import-layers/meta-openembedded/meta-oe/recipes-extended/libqb/libqb_1.0.1.bb
index 94030b2ea..e26bb7c19 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/libqb/libqb_0.17.2.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/libqb/libqb_1.0.1.bb
@@ -4,22 +4,20 @@ 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-brokensep pkgconfig
-
-PV = "0.17.2+git${SRCPV}"
+inherit autotools pkgconfig
-SRCREV = "bd2c587f6ccacd8a5644b275d99324d200c2b378"
-SRC_URI = "git://github.com/ClusterLabs/${BPN}.git"
+PV .= "+git${SRCPV}"
+SRCREV = "0a329683a76bc6aeb36f20f2bf6b43ba0440c4dc"
+SRC_URI = "git://github.com/ClusterLabs/${BPN}.git \
+ file://0001-Remove-runtime-check-for-CLOCK_MONOTONIC.patch \
+ "
S = "${WORKDIR}/git"
do_configure_prepend() {
( cd ${S}
${S}/autogen.sh )
}
-
-
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/libuio/libuio/0001-include-fcntl.h-for-O_RDWR-define.patch b/import-layers/meta-openembedded/meta-oe/recipes-extended/libuio/libuio/0001-include-fcntl.h-for-O_RDWR-define.patch
new file mode 100644
index 000000000..3cae5c992
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/libuio/libuio/0001-include-fcntl.h-for-O_RDWR-define.patch
@@ -0,0 +1,38 @@
+From d39c78d322585a32f9a55c67c25a99602ce08b12 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 1 Apr 2017 09:01:33 -0700
+Subject: [PATCH] include fcntl.h for O_RDWR define
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ tools/lsuio.c | 1 +
+ tools/rwuio.c | 1 +
+ 2 files changed, 2 insertions(+)
+
+diff --git a/tools/lsuio.c b/tools/lsuio.c
+index 58eb922..4769446 100644
+--- a/tools/lsuio.c
++++ b/tools/lsuio.c
+@@ -19,6 +19,7 @@
+ #include <stdio.h>
+ #include <sys/types.h>
+ #include <getopt.h>
++#include <fcntl.h>
+
+ #include "system.h"
+ #include "uio_helper.h"
+diff --git a/tools/rwuio.c b/tools/rwuio.c
+index aef9e90..ebc71e1 100644
+--- a/tools/rwuio.c
++++ b/tools/rwuio.c
+@@ -20,6 +20,7 @@
+ */
+ #include <stdio.h>
+ #include <stdlib.h>
++#include <fcntl.h>
+ #include <sys/types.h>
+ #include <getopt.h>
+
+--
+2.12.1
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/libuio/libuio_0.2.1.bb b/import-layers/meta-openembedded/meta-oe/recipes-extended/libuio/libuio_0.2.1.bb
index f4051977f..dd34c180a 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/libuio/libuio_0.2.1.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/libuio/libuio_0.2.1.bb
@@ -4,12 +4,16 @@ LICENSE = "GPL-2.0"
LIC_FILES_CHKSUM = "file://COPYING;md5=393a5ca445f6965873eca0259a17f833"
SRC_URI = "git://git.code.sf.net/p/libuio/code \
- file://replace_inline_with_static-inline.patch"
+ file://replace_inline_with_static-inline.patch \
+ file://0001-include-fcntl.h-for-O_RDWR-define.patch \
+ "
inherit autotools
SRCREV = "ed4f07ea147ac403c28105ab44d01bbf524d36f9"
+PV .= "+git${SRCPV}"
+
S = "${WORKDIR}/git"
PACKAGES += "${PN}-tools"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/lprng/lprng_3.8.C.bb b/import-layers/meta-openembedded/meta-oe/recipes-extended/lprng/lprng_3.8.C.bb
index 80b93d920..963c6320f 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/lprng/lprng_3.8.C.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/lprng/lprng_3.8.C.bb
@@ -12,6 +12,9 @@ inherit autotools gettext
EXTRA_OECONF = "--disable-ssl --disable-kerberos --enable-force_localhost"
FILES_${PN}-dbg += "${libdir}/lprng/filters/.debug"
+# configure: WARNING: Program 'clear' is not found. Set environment CLEAR=no if you do not want to use it
+export CLEAR = "no"
+
do_install_append() {
mv ${D}/etc/printcap.sample ${D}/etc/printcap
mv ${D}/etc/lpd/lpd.conf.sample ${D}/etc/lpd/lpd.conf
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/mml-widget/gtkmathview_0.8.0.bb b/import-layers/meta-openembedded/meta-oe/recipes-extended/mml-widget/gtkmathview_0.8.0.bb
index c693639ec..15935c870 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/mml-widget/gtkmathview_0.8.0.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/mml-widget/gtkmathview_0.8.0.bb
@@ -1,5 +1,5 @@
HOMEPAGE = "http://helm.cs.unibo.it/mml-widget/"
-DEPENDS = "t1lib gtk+ popt libxslt libxml2"
+DEPENDS = "t1lib gtk+ popt libxslt-native libxml2"
LICENSE = "LGPLv3"
LIC_FILES_CHKSUM = "file://COPYING;md5=6a6a8e020838b23406c81b19c1d46df6"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/mozjs/mozjs/0001-add-support-for-big-endian-32bit-ARM.patch b/import-layers/meta-openembedded/meta-oe/recipes-extended/mozjs/mozjs/0001-add-support-for-big-endian-32bit-ARM.patch
deleted file mode 100644
index 7b7038f6f..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/mozjs/mozjs/0001-add-support-for-big-endian-32bit-ARM.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From 07830cbc409f8e998fa839275470031fc83d6eb6 Mon Sep 17 00:00:00 2001
-From: Koen Kooi <koen.kooi@linaro.org>
-Date: Thu, 21 Apr 2016 14:10:54 +0200
-Subject: [PATCH] add support for big endian 32bit ARM
-
-Signed-off-by: Koen Kooi <koen.kooi@linaro.org>
----
- 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 fe26dab..78a19cb 100644
---- a/mfbt/double-conversion/utils.h
-+++ b/mfbt/double-conversion/utils.h
-@@ -58,7 +58,7 @@
- defined(__mips__) || defined(__powerpc__) || \
- defined(__sparc__) || defined(__sparc) || defined(__s390__) || \
- defined(__SH4__) || defined(__alpha__) || \
-- defined(__aarch64__) || \
-+ defined(__aarch64__) || defined(__ARMEB__) || \
- defined(_MIPS_ARCH_MIPS32R2)
- #define DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS 1
- #elif defined(_M_IX86) || defined(__i386__) || defined(__i386)
---
-2.4.3
-
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/mozjs/mozjs/0001-compare-the-first-character-of-string-to-be-null-or-.patch b/import-layers/meta-openembedded/meta-oe/recipes-extended/mozjs/mozjs/0001-compare-the-first-character-of-string-to-be-null-or-.patch
new file mode 100644
index 000000000..40d646c7d
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/mozjs/mozjs/0001-compare-the-first-character-of-string-to-be-null-or-.patch
@@ -0,0 +1,32 @@
+From f36c9476d2816e0d3e61c9e13c22ed73883cb54a Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Mon, 24 Apr 2017 12:13:43 -0700
+Subject: [PATCH] compare the first character of string to be null or not
+
+Fixes
+
+error: ISO C++ forbids comparison between pointer and integer [-fpermissive]
+| if (value[0] == '\0')
+| ^~~~
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ js/src/shell/jsoptparse.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/js/src/shell/jsoptparse.cpp b/js/src/shell/jsoptparse.cpp
+index b49d0a5..612aa00 100644
+--- a/js/src/shell/jsoptparse.cpp
++++ b/js/src/shell/jsoptparse.cpp
+@@ -243,7 +243,7 @@ OptionParser::extractValue(size_t argc, char **argv, size_t *i, char **value)
+ char *eq = strchr(argv[*i], '=');
+ if (eq) {
+ *value = eq + 1;
+- if (value[0] == '\0')
++ if (value[0][0] == '\0')
+ return error("A value is required for option %.*s", eq - argv[*i], argv[*i]);
+ return Okay;
+ }
+--
+2.12.2
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/mozjs/mozjs_17.0.0.bb b/import-layers/meta-openembedded/meta-oe/recipes-extended/mozjs/mozjs_17.0.0.bb
index 24631e4ea..b6744395f 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/mozjs/mozjs_17.0.0.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/mozjs/mozjs_17.0.0.bb
@@ -2,21 +2,20 @@ SUMMARY = "SpiderMonkey is Mozilla's JavaScript engine written in C/C++"
LICENSE = "MPL-2.0"
LIC_FILES_CHKSUM = "file://../../LICENSE;md5=815ca599c9df247a0c7f619bab123dad"
-SRC_URI = " \
- http://ftp.mozilla.org/pub/mozilla.org/js/${BPN}${PV}.tar.gz \
- file://0001-mozjs17.0.0-fix-the-compile-bug-of-powerpc.patch \
- file://0001-js.pc.in-do-not-include-RequiredDefines.h-for-depend.patch \
- file://0002-Move-JS_BYTES_PER_WORD-out-of-config.h.patch;patchdir=../../ \
- file://0003-Add-AArch64-support.patch;patchdir=../../ \
- file://0004-mozbug746112-no-decommit-on-large-pages.patch;patchdir=../../ \
- file://0005-aarch64-64k-page.patch;patchdir=../../ \
- file://0001-regenerate-configure.patch;patchdir=../../ \
- file://fix-the-compile-error-of-powerpc64.patch;patchdir=../../ \
- file://fix_milestone_compile_issue.patch \
- file://0010-fix-cross-compilation-on-i586-targets.patch;patchdir=../../ \
- file://0001-add-support-for-big-endian-32bit-ARM.patch;patchdir=../../ \
- file://Manually_mmap_heap_memory_esr17.patch;patchdir=../../ \
- "
+SRC_URI = "http://ftp.mozilla.org/pub/mozilla.org/js/${BPN}${PV}.tar.gz \
+ file://0001-mozjs17.0.0-fix-the-compile-bug-of-powerpc.patch \
+ file://0001-js.pc.in-do-not-include-RequiredDefines.h-for-depend.patch \
+ file://0002-Move-JS_BYTES_PER_WORD-out-of-config.h.patch;patchdir=../../ \
+ file://0003-Add-AArch64-support.patch;patchdir=../../ \
+ file://0004-mozbug746112-no-decommit-on-large-pages.patch;patchdir=../../ \
+ file://0005-aarch64-64k-page.patch;patchdir=../../ \
+ file://0001-regenerate-configure.patch;patchdir=../../ \
+ file://fix-the-compile-error-of-powerpc64.patch;patchdir=../../ \
+ file://fix_milestone_compile_issue.patch \
+ file://0010-fix-cross-compilation-on-i586-targets.patch;patchdir=../../ \
+ file://Manually_mmap_heap_memory_esr17.patch;patchdir=../../ \
+ file://0001-compare-the-first-character-of-string-to-be-null-or-.patch;patchdir=../../ \
+ "
SRC_URI[md5sum] = "20b6f8f1140ef6e47daa3b16965c9202"
SRC_URI[sha256sum] = "321e964fe9386785d3bf80870640f2fa1c683e32fe988eeb201b04471c172fba"
@@ -27,6 +26,11 @@ inherit autotools pkgconfig perlnative pythonnative
DEPENDS += "nspr zlib"
+# Host specific flags need to be defined, otherwise target flags will be passed to the host
+export HOST_CFLAGS = "${BUILD_CFLAGS}"
+export HOST_CXXFLAGS = "${BUILD_CXXFLAGS}"
+export HOST_LDFLAGS = "${BUILD_LDFLAGS}"
+
# nspr's package-config is ignored so set libs manually
EXTRA_OECONF = " \
--target=${TARGET_SYS} \
@@ -42,7 +46,7 @@ EXTRA_OECONF_append_armv4 = " \
--disable-methodjit \
"
-PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', '', d)}"
+PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}"
PACKAGECONFIG[x11] = "--with-x --x-includes=${STAGING_INCDIR} --x-libraries=${STAGING_LIBDIR},--without-x,virtual/libx11"
# mozjs requires autoreconf 2.13
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/openlmi/openlmi-networking_0.3.1.bb b/import-layers/meta-openembedded/meta-oe/recipes-extended/openlmi/openlmi-networking_0.3.1.bb
index 7cfcbe246..081bd3bc0 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/openlmi/openlmi-networking_0.3.1.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/openlmi/openlmi-networking_0.3.1.bb
@@ -28,3 +28,5 @@ do_configure_prepend() {
FILES_${PN} =+ "${libdir}/cmpi/libcmpiLMI_Networking.so ${prefix}/libexec*"
FILES_${PN}-dbg =+ "${libdir}/cmpi/.debug*"
+
+PNBLACKLIST[openlmi-networking] ?= "Depends on blacklisted openlmi-providers - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/openlmi/openlmi-providers_0.6.0.bb b/import-layers/meta-openembedded/meta-oe/recipes-extended/openlmi/openlmi-providers_0.6.0.bb
index 604888874..2eda65320 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/openlmi/openlmi-providers_0.6.0.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/openlmi/openlmi-providers_0.6.0.bb
@@ -52,3 +52,5 @@ FILES_${PN}-dev =+ "${datadir}/cmake*"
FILES_${PN}-dbg =+ "${libdir}/cmpi/.debug*"
RDEPENDS_${PN} = "python"
+
+PNBLACKLIST[openlmi-providers] ?= "Depends on blacklisted lmsensors - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/openlmi/openlmi-storage_0.8.1.bb b/import-layers/meta-openembedded/meta-oe/recipes-extended/openlmi/openlmi-storage_0.8.1.bb
index 015d80339..f99b77ca4 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/openlmi/openlmi-storage_0.8.1.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/openlmi/openlmi-storage_0.8.1.bb
@@ -30,3 +30,5 @@ do_install_append() {
}
FILES_${PN} =+ "${sysconfdir}/openlmi/storage/storage.conf ${datadir}/${BPN}/*"
+
+PNBLACKLIST[openlmi-storage] ?= "Depends on blacklisted pywbem - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/p7zip/p7zip_16.02.bb b/import-layers/meta-openembedded/meta-oe/recipes-extended/p7zip/p7zip_16.02.bb
index fdd51db21..67ffbc67c 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/p7zip/p7zip_16.02.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/p7zip/p7zip_16.02.bb
@@ -36,4 +36,4 @@ EOF
chmod 0755 ${D}${bindir}/7z
}
-BBCLASSEXTEND += "native"
+BBCLASSEXTEND = "native"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/p8platform/p8platform_git.bb b/import-layers/meta-openembedded/meta-oe/recipes-extended/p8platform/p8platform_git.bb
new file mode 100644
index 000000000..f6347c2a4
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/p8platform/p8platform_git.bb
@@ -0,0 +1,18 @@
+SUMMARY = "Platform support library used by libCEC and binary add-ons for Kodi"
+HOMEPAGE = "http://libcec.pulse-eight.com/"
+
+LICENSE = "GPLv2+"
+LIC_FILES_CHKSUM = "file://src/os.h;md5=752555fa94e82005d45fd201fee5bd33"
+
+PV = "2.1.0"
+
+SRC_URI = "git://github.com/Pulse-Eight/platform.git"
+SRCREV = "d7bceb64541cb046421cbcd4c98d91e9bf24822f"
+
+S = "${WORKDIR}/git"
+
+inherit cmake pkgconfig
+
+EXTRA_OECMAKE += "-DCMAKE_INSTALL_LIBDIR=${libdir} -DCMAKE_INSTALL_LIBDIR_NOARCH=${libdir}"
+
+FILES_${PN}-dev += "${libdir}/p8-platform"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/polkit/polkit-group-rule.inc b/import-layers/meta-openembedded/meta-oe/recipes-extended/polkit/polkit-group-rule.inc
index b727d007b..40e400542 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/polkit/polkit-group-rule.inc
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/polkit/polkit-group-rule.inc
@@ -1,4 +1,4 @@
-# polkit must prepare polkid group
+# polkit must prepare polkitd group
DEPENDS += "polkit"
inherit useradd
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/polkit/polkit_0.113.bb b/import-layers/meta-openembedded/meta-oe/recipes-extended/polkit/polkit_0.113.bb
index daafaf5c8..326c9340e 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/polkit/polkit_0.113.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/polkit/polkit_0.113.bb
@@ -9,8 +9,8 @@ DEPENDS = "expat glib-2.0 intltool-native mozjs"
inherit autotools gtk-doc pkgconfig useradd systemd gobject-introspection
-PACKAGECONFIG = "${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'pam', '', d)} \
- ${@bb.utils.contains('DISTRO_FEATURES','systemd','systemd','consolekit',d)}"
+PACKAGECONFIG = "${@bb.utils.filter('DISTRO_FEATURES', 'pam', d)} \
+ ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd', 'consolekit', d)}"
PACKAGECONFIG[pam] = "--with-authfw=pam,--with-authfw=shadow,libpam,libpam"
PACKAGECONFIG[systemd] = "--enable-libsystemd-login=yes --with-systemdsystemunitdir=${systemd_unitdir}/system/,--enable-libsystemd-login=no --with-systemdsystemunitdir=,systemd"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/pywbem/pywbem_0.8.0.bb b/import-layers/meta-openembedded/meta-oe/recipes-extended/pywbem/pywbem_0.8.0.bb
index 2f9a5bdca..7f1986e51 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/pywbem/pywbem_0.8.0.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/pywbem/pywbem_0.8.0.bb
@@ -16,7 +16,7 @@ HOMEPAGE = "http://pywbem.sf.net/"
LICENSE = "LGPLv2"
LIC_FILES_CHKSUM = "file://pywbem/LICENSE.txt;md5=fbc093901857fcd118f065f900982c24"
SECTION = "Development/Libraries"
-DEPENDS = "python-m2crypto-native"
+DEPENDS = "python-m2crypto-native python-typing-native"
SRC_URI = "http://jaist.dl.sourceforge.net/project/${BPN}/${BPN}/${BP}/${BP}-dev.r704.zip"
SRC_URI[md5sum] = "84072451dcdd1aa9ee82363848faf7ad"
SRC_URI[sha256sum] = "898035866d3cc741bbcd62c4ac26e633ad07b7c11d89db2472b9f923f3fd3ed8"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/rarpd/rarpd_ss981107.bb b/import-layers/meta-openembedded/meta-oe/recipes-extended/rarpd/rarpd_ss981107.bb
index a1121686c..4025b8087 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/rarpd/rarpd_ss981107.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/rarpd/rarpd_ss981107.bb
@@ -44,7 +44,7 @@ do_install() {
fi
}
-inherit ${@bb.utils.contains('VIRTUAL-RUNTIME_init_manager','systemd','systemd','',d)}
+inherit ${@bb.utils.filter('VIRTUAL-RUNTIME_init_manager', 'systemd', d)}
SYSTEMD_PACKAGES = "${PN}"
SYSTEMD_SERVICE_${PN} = "rarpd.service"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/redis/redis/redis.conf b/import-layers/meta-openembedded/meta-oe/recipes-extended/redis/redis/redis.conf
index 923b98e5c..ab024ad85 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/redis/redis/redis.conf
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/redis/redis/redis.conf
@@ -30,7 +30,7 @@ port 6379
# If you want you can bind a single interface, if the bind option is not
# specified all the interfaces will listen for incoming connections.
#
-# bind 127.0.0.1
+bind 127.0.0.1
# Specify the path for the unix socket that will be used to listen for
# incoming connections. There is no default, so Redis will not listen
@@ -53,14 +53,14 @@ loglevel notice
# Specify the log file name. Also 'stdout' can be used to force
# Redis to log on the standard output. Note that if you use standard
# output for logging but daemonize, logs will be sent to /dev/null
-logfile /var/log/redis.log
+# logfile /var/log/redis.log
# To enable logging to the system logger, just set 'syslog-enabled' to yes,
# and optionally update the other syslog parameters to suit your needs.
-# syslog-enabled no
+syslog-enabled yes
# Specify the syslog identity.
-# syslog-ident redis
+syslog-ident redis
# Specify the syslog facility. Must be USER or between LOCAL0-LOCAL7.
# syslog-facility local0
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/redis/redis/redis.service b/import-layers/meta-openembedded/meta-oe/recipes-extended/redis/redis/redis.service
new file mode 100644
index 000000000..36d29852d
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/redis/redis/redis.service
@@ -0,0 +1,15 @@
+[Unit]
+Description=Redis In-Memory Data Store
+After=network.target
+
+[Service]
+User=redis
+Group=redis
+ExecStart=/usr/bin/redis-server /etc/redis/redis.conf
+ExecStop=/usr/bin/redis-cli shutdown
+Restart=always
+LimitNOFILE=10032
+
+[Install]
+WantedBy=multi-user.target
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/redis/redis_3.0.2.bb b/import-layers/meta-openembedded/meta-oe/recipes-extended/redis/redis_3.0.2.bb
index 2e4b760cc..9395b33b0 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/redis/redis_3.0.2.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/redis/redis_3.0.2.bb
@@ -12,13 +12,21 @@ SRC_URI = "http://download.redis.io/releases/${BP}.tar.gz \
file://oe-use-libc-malloc.patch \
file://redis.conf \
file://init-redis-server \
+ file://redis.service \
file://hiredis-update-Makefile-to-add-symbols-to-staticlib.patch \
"
SRC_URI[md5sum] = "87be8867447f62524b584813e5a7bd14"
SRC_URI[sha256sum] = "93e422c0d584623601f89b956045be158889ebe594478a2c24e1bf218495633f"
-inherit autotools-brokensep update-rc.d
+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_install() {
export PREFIX=${D}/${prefix}
@@ -28,9 +36,20 @@ do_install() {
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/import-layers/meta-openembedded/meta-oe/recipes-extended/rrdtool/rrdtool_1.6.0.bb b/import-layers/meta-openembedded/meta-oe/recipes-extended/rrdtool/rrdtool_1.6.0.bb
index 09aac4dd1..a3aac45dd 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/rrdtool/rrdtool_1.6.0.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/rrdtool/rrdtool_1.6.0.bb
@@ -19,11 +19,12 @@ inherit cpan autotools-brokensep gettext pythonnative python-dir systemd
BBCLASSEXTEND = "native"
-SYSTEMD_SERVICE_${PN} = "rrdcached.socket rrdcached.service"
+SYSTEMD_PACKAGES = "rrdcached"
+SYSTEMD_SERVICE_rrdcached = "rrdcached.socket rrdcached.service"
EXTRA_AUTORECONF = "-I m4"
-PACKAGECONFIG ??= "python perl ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd', '', d)}"
+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 \
@@ -99,6 +100,14 @@ do_configure() {
}
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"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/rsyslog/rsyslog/0001-Include-sys-time-h.patch b/import-layers/meta-openembedded/meta-oe/recipes-extended/rsyslog/rsyslog/0001-Include-sys-time-h.patch
new file mode 100644
index 000000000..23c0f258f
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/rsyslog/rsyslog/0001-Include-sys-time-h.patch
@@ -0,0 +1,33 @@
+From 3c3c21f4735eb215206273bc714c57c969926d3d Mon Sep 17 00:00:00 2001
+From: Ming Liu <peter.x.liu@external.atlascopco.com>
+Date: Sun, 26 Feb 2017 14:10:21 +0100
+Subject: [PATCH] Include sys/time.h
+
+struct timeval is defined in sys/time.h with a musl libc.
+
+Upstream-Status: Inappropriate [musl libc specific]
+
+Signed-off-by: Ming Liu <peter.x.liu@external.atlascopco.com>
+---
+ tests/msleep.c | 4 ----
+ 1 file changed, 4 deletions(-)
+
+diff --git a/tests/msleep.c b/tests/msleep.c
+index 26a8206..ca818be 100644
+--- a/tests/msleep.c
++++ b/tests/msleep.c
+@@ -26,11 +26,7 @@
+ #include "config.h"
+ #include <stdio.h>
+ #include <stdlib.h>
+-#if defined(__FreeBSD__)
+ #include <sys/time.h>
+-#else
+-#include <time.h>
+-#endif
+
+ int main(int argc, char *argv[])
+ {
+--
+1.9.1
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/rsyslog/rsyslog/0001-Undefine-GLOB_BRACE.patch b/import-layers/meta-openembedded/meta-oe/recipes-extended/rsyslog/rsyslog/0001-Undefine-GLOB_BRACE.patch
new file mode 100644
index 000000000..7903bb1cc
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/rsyslog/rsyslog/0001-Undefine-GLOB_BRACE.patch
@@ -0,0 +1,35 @@
+From 6746e3a9615d1566bf228e9012d0841b15178810 Mon Sep 17 00:00:00 2001
+From: Ming Liu <liu.ming50@gmail.com>
+Date: Sun, 26 Feb 2017 13:50:33 +0100
+Subject: [PATCH] Undefine GLOB_BRACE
+
+GLOB_BRACE is not defined in posix and thus not implemented in musl libc.
+
+Fixed by defining it to 0 if it is undefined.
+
+Upstream-Status: Inappropriate [musl libc specific]
+
+Signed-off-by: Ming Liu <peter.x.liu@external.atlascopco.com>
+---
+ plugins/imfile/imfile.c | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+diff --git a/plugins/imfile/imfile.c b/plugins/imfile/imfile.c
+index d20471f..f9aff81 100644
+--- a/plugins/imfile/imfile.c
++++ b/plugins/imfile/imfile.c
+@@ -85,6 +85,11 @@ static int bLegacyCnfModGlobalsPermitted;/* are legacy module-global config para
+
+ #define ADD_METADATA_UNSPECIFIED -1
+
++/* fixes build with musl libc */
++#ifndef GLOB_BRACE
++#define GLOB_BRACE 0
++#endif
++
+ /* this structure is used in pure polling mode as well one of the support
+ * structures for inotify.
+ */
+--
+1.9.1
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/rsyslog/rsyslog_8.22.0.bb b/import-layers/meta-openembedded/meta-oe/recipes-extended/rsyslog/rsyslog_8.22.0.bb
index 724232339..d1d391bd2 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/rsyslog/rsyslog_8.22.0.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/rsyslog/rsyslog_8.22.0.bb
@@ -26,19 +26,23 @@ SRC_URI = "http://www.rsyslog.com/download/files/download/rsyslog/${BPN}-${PV}.t
file://rsyslog-fix-ptest-not-finish.patch \
"
+SRC_URI_append_libc-musl = " \
+ file://0001-Undefine-GLOB_BRACE.patch \
+ file://0001-Include-sys-time-h.patch \
+"
+
SRC_URI[md5sum] = "ad0f25f429aa2daa326732950a5eeb6c"
SRC_URI[sha256sum] = "06e2884181333dccecceaca82827ae24ca7a258b4fbf7b1e07a80d4caae640ca"
-inherit autotools pkgconfig systemd update-rc.d update-alternatives ptest
+inherit autotools pkgconfig systemd update-rc.d ptest
-EXTRA_OECONF += "--disable-generate-man-pages"
+EXTRA_OECONF += "--disable-generate-man-pages ap_cv_atomic_builtins=yes"
# first line is default yes in configure
PACKAGECONFIG ??= " \
rsyslogd rsyslogrt klog inet regexp uuid libgcrypt \
imdiag gnutls imfile \
- ${@bb.utils.contains('DISTRO_FEATURES', 'snmp', 'snmp', '', d)} \
- ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd', '', d)} \
+ ${@bb.utils.filter('DISTRO_FEATURES', 'snmp systemd', d)} \
${@bb.utils.contains('DISTRO_FEATURES', 'ptest', 'testbench relp ${VALGRIND}', '', d)} \
"
@@ -114,7 +118,7 @@ do_install_ptest() {
do_install_append() {
install -d "${D}${sysconfdir}/init.d"
- install -m 755 ${WORKDIR}/initscript ${D}${sysconfdir}/init.d/syslog.${BPN}
+ install -m 755 ${WORKDIR}/initscript ${D}${sysconfdir}/init.d/syslog
install -m 644 ${WORKDIR}/rsyslog.conf ${D}${sysconfdir}/rsyslog.conf
install -m 644 ${WORKDIR}/rsyslog.logrotate ${D}${sysconfdir}/logrotate.rsyslog
}
@@ -124,20 +128,10 @@ FILES_${PN} += "${bindir}"
INITSCRIPT_NAME = "syslog"
INITSCRIPT_PARAMS = "defaults"
-# higher than sysklogd's 100
-ALTERNATIVE_PRIORITY = "110"
-
-ALTERNATIVE_${PN} = "syslogd syslog-conf syslog-logrotate"
-
-ALTERNATIVE_LINK_NAME[syslogd] = "${base_sbindir}/syslogd"
-ALTERNATIVE_TARGET[syslogd] = "${sbindir}/rsyslogd"
-ALTERNATIVE_LINK_NAME[syslog-conf] = "${sysconfdir}/syslog.conf"
-ALTERNATIVE_TARGET[syslog-conf] = "${sysconfdir}/rsyslog.conf"
-ALTERNATIVE_LINK_NAME[syslog-logrotate] = "${sysconfdir}/logrotate.d/syslog"
-ALTERNATIVE_TARGET[syslog-logrotate] = "${sysconfdir}/logrotate.rsyslog"
-
CONFFILES_${PN} = "${sysconfdir}/rsyslog.conf"
+RCONFLICTS_${PN} = "busybox-syslog sysklogd syslog-ng"
+
RPROVIDES_${PN} += "${PN}-systemd"
RREPLACES_${PN} += "${PN}-systemd"
RCONFLICTS_${PN} += "${PN}-systemd"
@@ -154,19 +148,3 @@ VALGRIND_arm = ""
VALGRIND_aarch64 = ""
RDEPENDS_${PN}-ptest += "make diffutils gzip bash gawk coreutils procps"
RRECOMMENDS_${PN}-ptest += "${TCLIBC}-dbg ${VALGRIND}"
-
-# no syslog-init for systemd
-python () {
- if bb.utils.contains('DISTRO_FEATURES', 'sysvinit', True, False, d):
- pn = d.getVar('PN', True)
- sysconfdir = d.getVar('sysconfdir', True)
- d.appendVar('ALTERNATIVE_%s' % (pn), ' syslog-init')
- d.setVarFlag('ALTERNATIVE_LINK_NAME', 'syslog-init', '%s/init.d/syslog' % (sysconfdir))
- d.setVarFlag('ALTERNATIVE_TARGET', 'syslog-init', '%s/init.d/syslog.%s' % (d.getVar('sysconfdir', True), d.getVar('BPN', True)))
-
- if bb.utils.contains('DISTRO_FEATURES', 'systemd', True, False, d):
- pn = d.getVar('PN', True)
- d.appendVar('ALTERNATIVE_%s' % (pn), ' syslog-service')
- d.setVarFlag('ALTERNATIVE_LINK_NAME', 'syslog-service', '%s/systemd/system/syslog.service' % (d.getVar('sysconfdir', True)))
- d.setVarFlag('ALTERNATIVE_TARGET', 'syslog-service', '%s/system/rsyslog.service' % (d.getVar('systemd_unitdir', True)))
-}
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/sblim-sfcb/sblim-sfcb-1.4.9/0001-Replace-need-for-error.h-when-it-does-not-exist.patch b/import-layers/meta-openembedded/meta-oe/recipes-extended/sblim-sfcb/sblim-sfcb-1.4.9/0001-Replace-need-for-error.h-when-it-does-not-exist.patch
new file mode 100644
index 000000000..e72305023
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/sblim-sfcb/sblim-sfcb-1.4.9/0001-Replace-need-for-error.h-when-it-does-not-exist.patch
@@ -0,0 +1,124 @@
+From 394bf0f1ed07419d40f6024363cc1ffc7ef61bc6 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Thu, 31 Aug 2017 21:56:25 -0700
+Subject: [PATCH] Replace need for error.h when it does not exist
+
+helps fixing build on musl
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+Upstream-Status: Pending
+
+ brokerUpc.c | 5 ++++-
+ configure.ac | 2 +-
+ httpAdapter.c | 4 +++-
+ support.c | 14 +++++++++++++-
+ trace.c | 4 +++-
+ 5 files changed, 24 insertions(+), 5 deletions(-)
+
+diff --git a/brokerUpc.c b/brokerUpc.c
+index 17cbd9b..fe2b347 100644
+--- a/brokerUpc.c
++++ b/brokerUpc.c
+@@ -20,8 +20,11 @@
+
+ #include <stdio.h>
+ #include <stdlib.h>
++#ifdef HAVE_ERROR_H
+ #include <error.h>
+-
++#else
++#include <err.h>
++#endif
+ #include "support.h"
+ #include "native.h"
+ #include <sfcCommon/utilft.h>
+diff --git a/configure.ac b/configure.ac
+index ab2964e..d4915a1 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -517,7 +517,7 @@ fi
+ # Checks for header files.
+ AC_HEADER_STDC
+ AC_HEADER_SYS_WAIT
+-AC_CHECK_HEADERS([fcntl.h limits.h netdb.h netinet/in.h stdlib.h string.h sys/socket.h sys/time.h unistd.h zlib.h])
++AC_CHECK_HEADERS([error.h fcntl.h limits.h netdb.h netinet/in.h stdlib.h string.h sys/socket.h sys/time.h unistd.h zlib.h])
+ AC_CHECK_HEADERS([cmpi/cmpimacs.h cmpi/cmpift.h cmpi/cmpidt.h],[],[AC_MSG_ERROR([Could not find required CPMI header.])])
+
+ # Checks for typedefs, structures, and compiler characteristics.
+diff --git a/httpAdapter.c b/httpAdapter.c
+index 2719e6c..e768972 100644
+--- a/httpAdapter.c
++++ b/httpAdapter.c
+@@ -71,7 +71,9 @@
+ #ifdef HAVE_UDS
+ #include <grp.h>
+ #endif
+-
++#ifndef __SOCKADDR_ARG
++# define __SOCKADDR_ARG struct sockaddr *__restrict
++#endif
+ /* should probably go into cimRequest.h */
+ #define CIM_PROTOCOL_ANY 0
+ #define CIM_PROTOCOL_CIM_XML 1
+diff --git a/support.c b/support.c
+index c7bba8b..5b3eef1 100644
+--- a/support.c
++++ b/support.c
+@@ -32,7 +32,11 @@
+ #include "support.h"
+ #include <stdio.h>
+ #include <stdlib.h>
++#ifdef HAVE_ERROR_H
+ #include <error.h>
++#else
++#include <err.h>
++#endif
+ #include <errno.h>
+ #include "native.h"
+ #include "trace.h"
+@@ -331,17 +335,25 @@ loadQualifierDeclMI(const char *provider,
+ _SFCB_RETURN(NULL);
+ };
+
++
+ /****************************************************************************/
+
+ /** Exits the program with a memory allocation error message in case the given
+ * condition holds.
+ */
++#if HAVE_ERROR_H
+ #define __ALLOC_ERROR(cond) \
+ if ( cond ) { \
+ error_at_line ( -1, errno, __FILE__, __LINE__, \
+ "unable to allocate requested memory." ); \
+ }
+-
++#else
++#define __ALLOC_ERROR(cond) \
++ if ( cond ) { \
++ err(1, "%s:%d: %s", __FILE__, __LINE__, \
++ "unable to allocate requested memory." ); \
++ }
++#endif
+ /**
+ * flag to ensure MM is initialized only once
+ */
+diff --git a/trace.c b/trace.c
+index d7f30db..438af46 100644
+--- a/trace.c
++++ b/trace.c
+@@ -279,7 +279,9 @@ _sfcb_trap(int tn)
+ }
+ #endif
+ }
+-
++#ifndef SA_INTERRUPT
++# define SA_INTERRUPT 0x20000000 /* from GLIBC's <bits/sigaction.h> */
++#endif
+ sigHandler *
+ setSignal(int sn, sigHandler * sh, int flags)
+ {
+--
+2.14.1
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/sblim-sfcb/sblim-sfcb-1.4.9/0001-include-stdint.h-system-header-for-UINT16_MAX.patch b/import-layers/meta-openembedded/meta-oe/recipes-extended/sblim-sfcb/sblim-sfcb-1.4.9/0001-include-stdint.h-system-header-for-UINT16_MAX.patch
new file mode 100644
index 000000000..c2111a2c1
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/sblim-sfcb/sblim-sfcb-1.4.9/0001-include-stdint.h-system-header-for-UINT16_MAX.patch
@@ -0,0 +1,29 @@
+From 446fb15f79499f52ce01ca759dbdcfe635519a82 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Tue, 27 Jun 2017 07:09:33 -0700
+Subject: [PATCH] include stdint.h system header for UINT16_MAX
+
+Fixes build error
+
+error: 'UINT16_MAX' undeclared (first use in this function)
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ interopServerProvider.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/interopServerProvider.c b/interopServerProvider.c
+index 23ae182..532febe 100644
+--- a/interopServerProvider.c
++++ b/interopServerProvider.c
+@@ -33,6 +33,7 @@
+ #include <sfcCommon/utilft.h>
+ #include <stdio.h>
+ #include <stdlib.h>
++#include <stdint.h>
+ #include <ctype.h>
+ #include <string.h>
+ #include <sys/types.h>
+--
+2.13.2
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/sblim-sfcb/sblim-sfcb_1.4.9.bb b/import-layers/meta-openembedded/meta-oe/recipes-extended/sblim-sfcb/sblim-sfcb_1.4.9.bb
index 84e465d85..c6b9f1019 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/sblim-sfcb/sblim-sfcb_1.4.9.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/sblim-sfcb/sblim-sfcb_1.4.9.bb
@@ -12,6 +12,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=f300afd598546add034364cd0a533261"
DEPENDS = "curl libpam openssl sblim-sfc-common unzip-native"
SRC_URI = "http://downloads.sourceforge.net/sblim/${BP}.tar.bz2 \
+ file://sfcb.service \
file://sblim-sfcb-1.3.9-sfcbrepos-schema-location.patch \
file://sblim-sfcb-1.3.15-fix-provider-debugging.patch \
file://sblim-sfcb-1.3.16-maxMsgLen.patch \
@@ -19,13 +20,15 @@ SRC_URI = "http://downloads.sourceforge.net/sblim/${BP}.tar.bz2 \
file://sblim-sfcb-1.3.16-multilib-man-cfg.patch \
file://sblim-sfcb-1.4.8-default-ecdh-curve-name.patch \
file://sblim-sfcb-1.4.9-fix-ftbfs.patch \
- file://sfcb.service"
+ file://0001-include-stdint.h-system-header-for-UINT16_MAX.patch \
+ file://0001-Replace-need-for-error.h-when-it-does-not-exist.patch \
+"
SRC_URI[md5sum] = "28021cdabc73690a94f4f9d57254ce30"
SRC_URI[sha256sum] = "634a67b2f7ac3b386a79160eb44413d618e33e4e7fc74ae68b0240484af149dd"
inherit autotools
-inherit ${@bb.utils.contains('VIRTUAL-RUNTIME_init_manager','systemd','systemd','', d)}
+inherit ${@bb.utils.filter('VIRTUAL-RUNTIME_init_manager', 'systemd', d)}
SYSTEMD_PACKAGES = "${PN}"
SYSTEMD_SERVICE_${PN} = "sblim-sfcb.service"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/scsirastools/scsirastools_1.6.4.bb b/import-layers/meta-openembedded/meta-oe/recipes-extended/scsirastools/scsirastools_1.6.4.bb
index c64bd9269..d0c36e472 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/scsirastools/scsirastools_1.6.4.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/scsirastools/scsirastools_1.6.4.bb
@@ -8,6 +8,8 @@ HOMEPAGE = "http://scsirastools.sourceforge.net/"
LICENSE = "BSD"
LIC_FILES_CHKSUM = "file://COPYING;md5=687ea108478d26152ae46eb29d9d1545"
+DEPENDS += "groff-native"
+
SRC_URI = "http://prdownloads.sourceforge.net/scsirastools/scsirastools-${PV}.tar.gz"
SRC_URI[md5sum] = "2d775111b62e2dfc1960a722f5fda211"
SRC_URI[sha256sum] = "38d2c6c9b04a2c594e528927b950754f94c0522718d17c78e6589ba778339bf8"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/smartmontools/smartmontools_6.5.bb b/import-layers/meta-openembedded/meta-oe/recipes-extended/smartmontools/smartmontools_6.5.bb
index 55d366e2e..0970d2a30 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/smartmontools/smartmontools_6.5.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/smartmontools/smartmontools_6.5.bb
@@ -18,9 +18,7 @@ SRC_URI = "${SOURCEFORGE_MIRROR}/smartmontools/smartmontools-${PV}.tar.gz \
file://smartd.service \
"
-PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'libcap-ng', 'libcap-ng', '', d)} \
- ${@bb.utils.contains('DISTRO_FEATURES', 'selinux', 'selinux', '', d)} \
-"
+PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'libcap-ng selinux', d)}"
PACKAGECONFIG[libcap-ng] = "--with-libcap-ng=yes,--with-libcap-ng=no,libcap-ng"
PACKAGECONFIG[selinux] = "--with-selinux=yes,--with-selinux=no,libselinux"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/subsurface/subsurface_git.bb b/import-layers/meta-openembedded/meta-oe/recipes-extended/subsurface/subsurface_git.bb
index 22b9d2fd7..90adaf487 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/subsurface/subsurface_git.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/subsurface/subsurface_git.bb
@@ -4,7 +4,7 @@ LIC_FILES_CHKSUM = "file://gpl-2.0.txt;md5=b234ee4d69f5fce4486a80fdaf4a4263"
DEPENDS = "libdivecomputer gtk+ libxml2 glib-2.0 gconf"
-PNBLACKLIST[subsurface] ?= "Needs to be upgraded for compatibility with new libdivecomputer"
+PNBLACKLIST[subsurface] ?= "Needs to be upgraded for compatibility with new libdivecomputer - the recipe will be removed on 2017-09-01 unless the issue is fixed"
inherit gtk-icon-cache cmake
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/t1lib/t1lib-5.1.2/format_security.patch b/import-layers/meta-openembedded/meta-oe/recipes-extended/t1lib/t1lib-5.1.2/format_security.patch
new file mode 100644
index 000000000..8b4ce400f
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/t1lib/t1lib-5.1.2/format_security.patch
@@ -0,0 +1,41 @@
+Fix printf formats to use format qualifiers
+fixes
+
+error: format string is not a string literal (potentially insecure) [-Werror,-Wformat-security]
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+Upstream-Status: Pending
+
+--- a/lib/type1/objects.c
++++ b/lib/type1/objects.c
+@@ -957,7 +957,7 @@
+
+ sprintf(typemsg, "Wrong object type in %s; expected %s, found %s.\n",
+ name, TypeFmt(expect), TypeFmt(obj->type));
+- IfTrace0(TRUE,typemsg);
++ IfTrace1(TRUE, "%s", typemsg);
+
+ ObjectPostMortem(obj);
+
+--- a/lib/t1lib/t1subset.c
++++ b/lib/t1lib/t1subset.c
+@@ -759,7 +759,7 @@
+ tr_len);
+ T1_PrintLog( "T1_SubsetFont()", err_warn_msg_buf,
+ T1LOG_DEBUG);
+- l+=sprintf( &(trailerbuf[l]), linebuf); /* contains the PostScript trailer */
++ l+=sprintf( &(trailerbuf[l]), "%s", linebuf); /* contains the PostScript trailer */
+ }
+
+ /* compute size of output file */
+--- a/lib/type1/objects.h
++++ b/lib/type1/objects.h
+@@ -214,7 +214,7 @@
+ /*SHARED*/
+ /* NDW: personally, I want to see status and error messages! */
+ #define IfTrace0(condition,model) \
+- {if (condition) printf(model);}
++ {if (condition) fputs(model,stdout);}
+ #define IfTrace1(condition,model,arg0) \
+ {if (condition) printf(model,arg0);}
+ #define IfTrace2(condition,model,arg0,arg1) \
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/t1lib/t1lib_5.1.2.bb b/import-layers/meta-openembedded/meta-oe/recipes-extended/t1lib/t1lib_5.1.2.bb
index 1d670a7d7..826dbda85 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/t1lib/t1lib_5.1.2.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/t1lib/t1lib_5.1.2.bb
@@ -9,7 +9,8 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=8ca43cbc842c2336e835926c2166c28b \
SRC_URI = "${DEBIAN_MIRROR}/main/t/t1lib/t1lib_${PV}.orig.tar.gz \
file://configure.patch \
- file://libtool.patch"
+ file://libtool.patch \
+ file://format_security.patch"
SRC_URI[md5sum] = "a5629b56b93134377718009df1435f3c"
SRC_URI[sha256sum] = "821328b5054f7890a0d0cd2f52825270705df3641dbd476d58d17e56ed957b59"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/tcsh/files/01_build.1.patch b/import-layers/meta-openembedded/meta-oe/recipes-extended/tcsh/files/01_build.1.patch
deleted file mode 100644
index b9f41ade9..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/tcsh/files/01_build.1.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-Author: Franz Pletz <fpletz@franz-pletz.org>
-Description: Original comment: Fix build
-Not sure why we have this patch. Let's keep it for compatibility.
---- a/pathnames.h
-+++ b/pathnames.h
-@@ -92,6 +92,10 @@
- # define _PATH_TCSHELL "/local/bin/tcsh" /* use ram disk */
- #endif /* _MINIX && !_PATH_TCSHELL */
-
-+#ifndef _PATH_TCSHELL
-+# define _PATH_TCSHELL "/bin/tcsh" /* Debian */
-+#endif /* !_PATH_TCSHELL */
-+
- #if defined(__EMX__) && !defined(_PATH_DEVNULL)
- # define _PATH_DEVNULL "nul"
- #endif /* __EMX__ && !_PATH_DEVNULL */
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/tcsh/files/01_build.2.patch b/import-layers/meta-openembedded/meta-oe/recipes-extended/tcsh/files/01_build.2.patch
deleted file mode 100644
index ff2753154..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/tcsh/files/01_build.2.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-Author: Franz Pletz <fpletz@franz-pletz.org>
-Description: Update manpage.
---- a/tcsh.man
-+++ b/tcsh.man
-@@ -578,7 +578,7 @@ Repeating \fIdabbrev-expand\fR without a
- changes to the next previous word etc., skipping identical matches
- much like \fIhistory-search-backward\fR does.
- .TP 8
--.B delete-char \fR(not bound)
-+.B delete-char \fR(bound to `Del' if using the standard \fI/etc/csh.cshrc\fR)
- Deletes the character under the cursor.
- See also \fIdelete-char-or-list-or-eof\fR.
- .TP 8
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/tcsh/files/01_build.3.patch b/import-layers/meta-openembedded/meta-oe/recipes-extended/tcsh/files/01_build.3.patch
deleted file mode 100644
index d36c177af..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/tcsh/files/01_build.3.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-Author: Franz Pletz <fpletz@franz-pletz.org>
-Description: Enable NODOT
---- a/config_f.h
-+++ b/config_f.h
-@@ -98,7 +98,7 @@
- /*
- * NODOT Don't put "." in the default path, for security reasons
- */
--#undef NODOT
-+#define NODOT
-
- /*
- * AUTOLOGOUT tries to determine if it should set autologout depending
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/tcsh/files/12_unknown_lscolors.patch b/import-layers/meta-openembedded/meta-oe/recipes-extended/tcsh/files/12_unknown_lscolors.patch
deleted file mode 100644
index faa59cc80..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/tcsh/files/12_unknown_lscolors.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-Author: Franz Pletz <fpletz@franz-pletz.org>
-Description: Don't die on unknown LS_COLORS values
-Removing the patch causes a segfault when dircolors is set by coreutils' dircolors.
-Debian-Bug: #592089
-
---- a/tw.color.c
-+++ b/tw.color.c
-@@ -239,13 +239,10 @@ parseLS_COLORS(const Char *value)
- if ((Char)variables[i].variable[0] == (v[0] & CHAR) &&
- (Char)variables[i].variable[1] == (v[1] & CHAR))
- break;
-- if (i < nvariables) {
-- v += 3;
-+ v += 3;
-+ if (i < nvariables)
- getstring(&c, &v, &variables[i].color, ':');
-- continue;
-- }
-- else
-- stderror(ERR_BADCOLORVAR, v[0], v[1]);
-+ continue;
- }
- break;
- }
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/tcsh/files/15_no-strip.patch b/import-layers/meta-openembedded/meta-oe/recipes-extended/tcsh/files/15_no-strip.patch
deleted file mode 100644
index cbc9f65d0..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/tcsh/files/15_no-strip.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-Author: Lucas Nussbaum <lucas@debian.org>
-Description: do not strip binary
- Stripping should be handled by dh_strip instead, so DEB_BUILD_OPTIONS=nostrip works.
- Closes: #438109, #411607
---- a/Makefile.in
-+++ b/Makefile.in
-@@ -596,7 +596,6 @@ install: tcsh$(EXEEXT)
- -mkdir -p ${DESTBIN}
- -mv -f ${DESTBIN}/tcsh$(EXEEXT) ${DESTBIN}/tcsh.old
- cp tcsh$(EXEEXT) ${DESTBIN}/tcsh$(EXEEXT)
-- -strip ${DESTBIN}/tcsh$(EXEEXT)
- chmod 755 ${DESTBIN}/tcsh$(EXEEXT)
-
- install.man: tcsh.man
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/tcsh/files/disable-broken-test.patch b/import-layers/meta-openembedded/meta-oe/recipes-extended/tcsh/files/disable-broken-test.patch
deleted file mode 100644
index 0bda0ba10..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/tcsh/files/disable-broken-test.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-Author: Lucas Nussbaum <lucas@debian.org>
-Description: disable syntactically incorrect test
---- a/tests/lexical.at
-+++ b/tests/lexical.at
-@@ -172,9 +172,6 @@
- AT_DATA([nohist.csh],
- [echo ! space ! tab != "!(" newline !
- ])
--AT_CHECK([tcsh -f nohist.csh], ,
--[[! space ! tab != !( newline !
--]])
-
- AT_CLEANUP
-
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/tcsh/files/disable-lexical.at-31.patch b/import-layers/meta-openembedded/meta-oe/recipes-extended/tcsh/files/disable-lexical.at-31.patch
deleted file mode 100644
index 98a9b2e1d..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/tcsh/files/disable-lexical.at-31.patch
+++ /dev/null
@@ -1,30 +0,0 @@
---- a/tests/lexical.at
-+++ b/tests/lexical.at
-@@ -27,27 +27,6 @@ AT_CHECK([tcsh -f oneword.csh], ,
-
- AT_CLEANUP
-
--
--AT_SETUP([Comments])
--
--AT_CHECK([echo 'echo OK@%:@comment' | tcsh -f], , [OK
--])
--
--AT_CHECK([tcsh -f -c 'echo @%:@no comment'], ,
--[@%:@no comment
--])
--
--AT_DATA([comment2.csh],
--[[echo testing...@%:@\
--OK
--]])
--AT_CHECK([tcsh -f comment2.csh], ,
--[testing... OK
--])
--
--AT_CLEANUP
--
--
- AT_SETUP([Escaping special characters])
-
- AT_DATA([nosplit.csh],
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/tcsh/files/disable-test-nice.patch b/import-layers/meta-openembedded/meta-oe/recipes-extended/tcsh/files/disable-test-nice.patch
deleted file mode 100644
index 79f918c08..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/tcsh/files/disable-test-nice.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-Author: Lucas Nussbaum <lucas@debian.org>
-Description: disable test that fails on the buildd with
- "setpriority: Permission denied".
---- a/tests/commands.at
-+++ b/tests/commands.at
-@@ -888,17 +888,6 @@ TCSH_UNTESTED([migrate])
- TCSH_UNTESTED([newgrp])
-
-
--AT_SETUP([nice])
--
--# Nothing really tested
--AT_CHECK([tcsh -f -c 'nice set var=1; echo $?var'], ,
--[0
--])
--
--
--AT_CLEANUP
--
--
- AT_SETUP([nohup])
-
- AT_DATA([nohup.csh],
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/tcsh/files/disable-test-notty.patch b/import-layers/meta-openembedded/meta-oe/recipes-extended/tcsh/files/disable-test-notty.patch
deleted file mode 100644
index 69f0564e8..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/tcsh/files/disable-test-notty.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From: Lucas Nussbaum <lucas@debian.org>
-Description: Those tests fail when running the testsuite without a tty. Disabling them.
-
---- a/tests/commands.at
-+++ b/tests/commands.at
-@@ -1203,11 +1203,6 @@ AT_SETUP([source])
- AT_DATA([script.csh],
- [[set var=$1
- ]])
--AT_CHECK([[tcsh -f -c 'source -h script.csh foo; history' \
-- | sed 's/ [^ ]* / TIME /']], ,
--[ 1 TIME source -h script.csh foo ; history
-- 2 TIME set var=$1
--])
-
- AT_CHECK([tcsh -f -c 'source -h script.csh foo; echo $var'], 1, [],
- [var: Undefined variable.
---- a/tests/variables.at
-+++ b/tests/variables.at
-@@ -319,10 +319,6 @@ AT_CLEANUP
-
- AT_SETUP([$ edit])
-
--AT_CHECK([TERM=something tcsh -f -c 'echo $?edit'], ,
--[1
--])
--
- AT_CHECK([TERM=dumb tcsh -f -c 'echo $?edit'], ,
- [0
- ])
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/tcsh/files/fix-gcc6-wait-union.patch b/import-layers/meta-openembedded/meta-oe/recipes-extended/tcsh/files/fix-gcc6-wait-union.patch
deleted file mode 100644
index acc2ce93d..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/tcsh/files/fix-gcc6-wait-union.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- tcsh-6.18.01/sh.proc.c.orig 2016-06-08 16:11:02.902326725 +0000
-+++ tcsh-6.18.01/sh.proc.c 2016-06-08 16:38:22.150304901 +0000
-@@ -48,7 +48,7 @@
- #endif /* aiws */
-
- #if defined(_BSD) || (defined(IRIS4D) && __STDC__) || defined(__lucid) || defined(__linux__) || defined(__GNU__) || defined(__GLIBC__)
--# if !defined(__ANDROID__)
-+# if !defined(__ANDROID__) && !defined(__GLIBC__)
- # define BSDWAIT
- # endif
- #endif /* _BSD || (IRIS4D && __STDC__) || __lucid || glibc */
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/tcsh/files/tcsh-6.17.02-multibyte.patch b/import-layers/meta-openembedded/meta-oe/recipes-extended/tcsh/files/tcsh-6.17.02-multibyte.patch
deleted file mode 100644
index 3dd420a0e..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/tcsh/files/tcsh-6.17.02-multibyte.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-Author: Jean-Luc Leger <reiga@dspnet.fr.eu.org>
-Description: fix broken globbing expansion
-Debian-Bug: #603545
-Index: tcsh-6.18.01/tc.str.c
-===================================================================
---- tcsh-6.18.01.orig/tc.str.c 2012-01-10 13:34:31.000000000 -0800
-+++ tcsh-6.18.01/tc.str.c 2013-02-26 13:12:13.429153489 -0800
-@@ -122,8 +122,9 @@
- #else
- ret = mbtowc(&tmp, s, n);
- #endif
-- if (ret > 0) {
-+ if (ret >= 0)
- *pwc = tmp;
-+ if (ret >= 0) {
- #if defined(UTF16_STRINGS) && defined(HAVE_MBRTOWC)
- if (tmp >= 0xd800 && tmp <= 0xdbff) {
- /* UTF-16 surrogate pair. Fetch second half and compute
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/tcsh/tcsh/0001-Enable-system-malloc-on-all-linux.patch b/import-layers/meta-openembedded/meta-oe/recipes-extended/tcsh/tcsh/0001-Enable-system-malloc-on-all-linux.patch
new file mode 100644
index 000000000..ff2f6a3b6
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/tcsh/tcsh/0001-Enable-system-malloc-on-all-linux.patch
@@ -0,0 +1,30 @@
+From 0553455813a1f717ef50cc911e4db73da3d23c32 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Wed, 22 Mar 2017 18:47:40 -0700
+Subject: [PATCH 1/2] Enable system malloc on all linux
+
+Dont trigger on being just android or glibc
+internal malloc falls flat on musl based systems
+as well. So switch to using system malloc
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ config_f.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/config_f.h b/config_f.h
+index 6a632a5..0a66960 100644
+--- a/config_f.h
++++ b/config_f.h
+@@ -139,7 +139,7 @@
+ * This can be much slower and no memory statistics will be
+ * provided.
+ */
+-#if defined(__MACHTEN__) || defined(PURIFY) || defined(MALLOC_TRACE) || defined(_OSD_POSIX) || defined(__MVS__) || defined (__CYGWIN__) || defined(__GLIBC__) || defined(__OpenBSD__) || defined(__APPLE__) || defined (__ANDROID__)
++#if defined(__MACHTEN__) || defined(PURIFY) || defined(MALLOC_TRACE) || defined(_OSD_POSIX) || defined(__MVS__) || defined (__CYGWIN__) || defined(__linux__) || defined(__OpenBSD__) || defined(__APPLE__)
+ # define SYSMALLOC
+ #else
+ # undef SYSMALLOC
+--
+2.12.1
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/tcsh/tcsh/0002-Add-debian-csh-scripts.patch b/import-layers/meta-openembedded/meta-oe/recipes-extended/tcsh/tcsh/0002-Add-debian-csh-scripts.patch
new file mode 100644
index 000000000..e4de6f7fe
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/tcsh/tcsh/0002-Add-debian-csh-scripts.patch
@@ -0,0 +1,60 @@
+From 60271713025f6b17dda29721be012a8428e77185 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Wed, 22 Mar 2017 18:56:49 -0700
+Subject: [PATCH 2/2] Add debian csh scripts
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ csh.cshrc | 15 +++++++++++++++
+ csh.login | 8 ++++++++
+ csh.logout | 1 +
+ 3 files changed, 24 insertions(+)
+ create mode 100644 csh.cshrc
+ create mode 100644 csh.login
+ create mode 100644 csh.logout
+
+diff --git a/csh.cshrc b/csh.cshrc
+new file mode 100644
+index 0000000..29c934a
+--- /dev/null
++++ b/csh.cshrc
+@@ -0,0 +1,15 @@
++# /etc/csh.cshrc: system-wide .cshrc file for csh(1) and tcsh(1)
++
++if ($?tcsh && $?prompt) then
++
++ bindkey "\e[1~" beginning-of-line # Home
++ bindkey "\e[7~" beginning-of-line # Home rxvt
++ bindkey "\e[2~" overwrite-mode # Ins
++ bindkey "\e[3~" delete-char # Delete
++ bindkey "\e[4~" end-of-line # End
++ bindkey "\e[8~" end-of-line # End rxvt
++
++ set autoexpand
++ set autolist
++ set prompt = "%U%m%u:%B%~%b%# "
++endif
+diff --git a/csh.login b/csh.login
+new file mode 100644
+index 0000000..2455c3c
+--- /dev/null
++++ b/csh.login
+@@ -0,0 +1,8 @@
++# /etc/csh.login: system-wide .login file for csh(1) and tcsh(1)
++
++# allow for other packages/system admins to customize the shell environment
++if (-e /etc/csh/login.d && `/bin/ls /etc/csh/login.d` != "") then
++ foreach FILE (`/bin/ls /etc/csh/login.d/*`)
++ source $FILE;
++ end;
++endif
+diff --git a/csh.logout b/csh.logout
+new file mode 100644
+index 0000000..a207eba
+--- /dev/null
++++ b/csh.logout
+@@ -0,0 +1 @@
++# /etc/csh.logout: system-wide .logout file for csh(1) and tcsh(1)
+--
+2.12.1
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/tcsh/tcsh_6.18.01.bb b/import-layers/meta-openembedded/meta-oe/recipes-extended/tcsh/tcsh_6.18.01.bb
deleted file mode 100644
index d7a7fd4d4..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/tcsh/tcsh_6.18.01.bb
+++ /dev/null
@@ -1,53 +0,0 @@
-DESCRIPTION = "TENEX C Shell, an enhanced version of Berkeley csh \
- The TENEX C Shell is an enhanced version of the Berkeley Unix C shell. \
- It includes all features of 4.4BSD C shell, plus a command-line editor, \
- programmable word completion, spelling correction and more."
-
-HOMEPAGE = "http://www.tcsh.org/"
-LICENSE = "BSD"
-LIC_FILES_CHKSUM = "file://Copyright;md5=1cf29be62df2be1a3763118b25b4c780"
-SECTION = "base"
-DEPENDS = "ncurses gettext-native"
-SRC_URI = " \
- ${DEBIAN_MIRROR}/main/t/tcsh/tcsh_${PV}.orig.tar.gz;name=tarball \
- ${DEBIAN_MIRROR}/main/t/tcsh/tcsh_${PV}-2.diff.gz;name=diffs2 \
- ${DEBIAN_MIRROR}/main/t/tcsh/tcsh_${PV}-5.diff.gz;name=diffs5 \
- file://01_build.1.patch \
- file://01_build.2.patch \
- file://01_build.3.patch \
- file://15_no-strip.patch \
- file://disable-test-notty.patch \
- file://disable-test-nice.patch \
- file://disable-lexical.at-31.patch \
- file://12_unknown_lscolors.patch \
- file://tcsh-6.17.02-multibyte.patch \
- file://disable-broken-test.patch \
- file://fix-gcc6-wait-union.patch \
-"
-SRC_URI[tarball.md5sum] = "6eed09dbd4223ab5b6955378450d228a"
-SRC_URI[tarball.sha256sum] = "d81ca27851f3e8545666399b4bcf25433e602a195113b3f7c73886fef84c9fa8"
-SRC_URI[diffs2.md5sum] = "ea39b818b624aca49ebf2cd2708d6ff9"
-SRC_URI[diffs2.sha256sum] = "95b0c1a339b745c47c5d2f9d02c22a71597462e2e882b51614a9d1f75bd3d16c"
-SRC_URI[diffs5.md5sum] = "d536c12a02dc48c332cc472b86927319"
-SRC_URI[diffs5.sha256sum] = "7548d64bf996548bfbc13f3e0959fd2e8455f8375381a31da67d79554aabc7af"
-
-inherit autotools
-
-do_install_append () {
- oe_runmake install.man DESTDIR=${D}
-
- install -d ${D}${base_bindir}
- ln -s /usr/bin/tcsh ${D}${base_bindir}/tcsh
-
- install -d ${D}${sysconfdir}/csh/login.d
- install -m 0644 ${S}/debian/csh.cshrc ${S}/debian/csh.login ${S}/debian/csh.logout ${S}/complete.tcsh ${D}${sysconfdir}
- install -D -m 0644 ${S}/csh-mode.el ${D}${datadir}/emacs/site-lisp/csh-mode.el
-}
-
-FILES_${PN} += "${datadir}/emacs/site-lisp/csh-mode.el"
-
-
-pkg_postinst_${PN} () {
-#!/bin/sh -e
-echo /usr/bin/tcsh >> $D/etc/shells
-}
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/tcsh/tcsh_6.20.00.bb b/import-layers/meta-openembedded/meta-oe/recipes-extended/tcsh/tcsh_6.20.00.bb
new file mode 100644
index 000000000..b59d88f5d
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/tcsh/tcsh_6.20.00.bb
@@ -0,0 +1,44 @@
+DESCRIPTION = "TENEX C Shell, an enhanced version of Berkeley csh \
+ The TENEX C Shell is an enhanced version of the Berkeley Unix C shell. \
+ It includes all features of 4.4BSD C shell, plus a command-line editor, \
+ programmable word completion, spelling correction and more."
+
+HOMEPAGE = "http://www.tcsh.org/"
+LICENSE = "BSD-3-Clause"
+LIC_FILES_CHKSUM = "file://Copyright;md5=575cf2715c3bf894e1f79aec1d4eaaf5"
+SECTION = "base"
+DEPENDS = "ncurses gettext-native"
+SRC_URI = " \
+ http://ftp.funet.fi/pub/mirrors/ftp.astron.com/pub/tcsh/${BP}.tar.gz \
+ file://0001-Enable-system-malloc-on-all-linux.patch \
+ file://0002-Add-debian-csh-scripts.patch \
+"
+SRC_URI[md5sum] = "59d40ef40a68e790d95e182069431834"
+SRC_URI[sha256sum] = "b89de7064ab54dac454a266cfe5d8bf66940cb5ed048d0c30674ea62e7ecef9d"
+
+EXTRA_OEMAKE += "CC_FOR_GETHOST='${BUILD_CC}'"
+inherit autotools
+
+do_compile_prepend() {
+ oe_runmake CC_FOR_GETHOST='${BUILD_CC}' CFLAGS='${BUILD_CFLAGS}' gethost
+}
+
+do_install_append () {
+ oe_runmake install.man DESTDIR=${D}
+
+ install -d ${D}${base_bindir}
+ ln -s /usr/bin/tcsh ${D}${base_bindir}/tcsh
+ ln -s /usr/bin/tcsh ${D}${base_bindir}/csh
+ install -d ${D}${sysconfdir}/csh/login.d
+ install -m 0644 ${S}/csh.cshrc ${S}/csh.login ${S}/csh.logout ${S}/complete.tcsh ${D}${sysconfdir}
+ install -D -m 0644 ${S}/csh-mode.el ${D}${datadir}/emacs/site-lisp/csh-mode.el
+}
+
+FILES_${PN} += "${datadir}/emacs/site-lisp/csh-mode.el"
+
+
+pkg_postinst_${PN} () {
+#!/bin/sh -e
+echo /usr/bin/tcsh >> $D/etc/shells
+echo /usr/bin/csh >> $D/etc/shells
+}
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/tipcutils/tipcutils/0001-include-sys-select.h-for-FD_-definitions.patch b/import-layers/meta-openembedded/meta-oe/recipes-extended/tipcutils/tipcutils/0001-include-sys-select.h-for-FD_-definitions.patch
new file mode 100644
index 000000000..6c8ba9074
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/tipcutils/tipcutils/0001-include-sys-select.h-for-FD_-definitions.patch
@@ -0,0 +1,25 @@
+From e291d720a7d9576063717969dde82c33bac7eecf Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Tue, 11 Apr 2017 14:19:21 -0700
+Subject: [PATCH 1/2] include sys/select.h for FD_* definitions
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ demos/inventory_sim/inventory_sim.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/demos/inventory_sim/inventory_sim.c b/demos/inventory_sim/inventory_sim.c
+index fadf27b..22c33d1 100644
+--- a/demos/inventory_sim/inventory_sim.c
++++ b/demos/inventory_sim/inventory_sim.c
+@@ -132,6 +132,7 @@ Examples
+ #include <string.h>
+ #include <unistd.h>
+ #include <sys/socket.h>
++#include <sys/select.h>
+ #include <netinet/in.h>
+ #include <linux/tipc.h>
+
+--
+2.12.2
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/tipcutils/tipcutils/0002-replace-non-standard-uint-with-unsigned-int.patch b/import-layers/meta-openembedded/meta-oe/recipes-extended/tipcutils/tipcutils/0002-replace-non-standard-uint-with-unsigned-int.patch
new file mode 100644
index 000000000..03e711e9a
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/tipcutils/tipcutils/0002-replace-non-standard-uint-with-unsigned-int.patch
@@ -0,0 +1,211 @@
+From 3d091efa09478d0330be686184ae4793764504e7 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Tue, 11 Apr 2017 14:22:23 -0700
+Subject: [PATCH 2/2] replace non-standard uint with unsigned int
+
+make it portable on musl
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ demos/benchmark/client_tipc.c | 34 +++++++++++++++++-----------------
+ demos/benchmark/common_tipc.h | 2 +-
+ demos/benchmark/server_tipc.c | 10 +++++-----
+ demos/inventory_sim/inventory_sim.c | 12 ++++++------
+ 4 files changed, 29 insertions(+), 29 deletions(-)
+
+diff --git a/demos/benchmark/client_tipc.c b/demos/benchmark/client_tipc.c
+index 5d889ee..d913e42 100644
+--- a/demos/benchmark/client_tipc.c
++++ b/demos/benchmark/client_tipc.c
+@@ -65,7 +65,7 @@ static const struct sockaddr_tipc master_clnt_addr = {
+
+ static int master_clnt_sd;
+ static int master_srv_sd;
+-static uint client_id;
++static unsigned int client_id;
+ static unsigned char *buf = NULL;
+ static int non_blk = 0;
+ static int select_ip(struct srv_info *sinfo, char *name);
+@@ -79,7 +79,7 @@ struct master_client_cmd {
+ __u32 bounce;
+ };
+
+-static void master_to_client(uint cmd, uint msglen, uint msgcnt, uint bounce)
++static void master_to_client(unsigned int cmd, unsigned int msglen, unsigned int msgcnt, unsigned int bounce)
+ {
+ struct master_client_cmd c;
+
+@@ -93,7 +93,7 @@ static void master_to_client(uint cmd, uint msglen, uint msgcnt, uint bounce)
+ die("Unable to send cmd %u to clients\n", cmd);
+ }
+
+-static void client_from_master(uint *cmd, uint *msglen, uint *msgcnt, uint *bounce)
++static void client_from_master(unsigned int *cmd, unsigned int *msglen, unsigned int *msgcnt, unsigned int *bounce)
+ {
+ struct master_client_cmd c;
+
+@@ -114,7 +114,7 @@ struct client_master_cmd {
+ __u32 cmd;
+ };
+
+-static void client_to_master(uint cmd)
++static void client_to_master(unsigned int cmd)
+ {
+ struct client_master_cmd c;
+
+@@ -125,7 +125,7 @@ static void client_to_master(uint cmd)
+ die("Client: Unable to send msg to master\n");
+ }
+
+-static void master_from_client(uint *cmd)
++static void master_from_client(unsigned int *cmd)
+ {
+ struct client_master_cmd c;
+
+@@ -137,7 +137,7 @@ static void master_from_client(uint *cmd)
+ *cmd = ntohl(c.cmd);
+ }
+
+-static void master_to_srv(uint cmd, uint msglen, uint msgcnt, uint echo)
++static void master_to_srv(unsigned int cmd, unsigned int msglen, unsigned int msgcnt, unsigned int echo)
+ {
+ struct master_srv_cmd c;
+
+@@ -151,7 +151,7 @@ static void master_to_srv(uint cmd, uint msglen, uint msgcnt, uint echo)
+ die("Unable to send cmd %u to servers\n", cmd);
+ }
+
+-static void master_from_srv(uint *cmd, struct srv_info *sinfo, __u32 *tipc_addr)
++static void master_from_srv(unsigned int *cmd, struct srv_info *sinfo, __u32 *tipc_addr)
+ {
+ struct srv_to_master_cmd c;
+
+@@ -290,7 +290,7 @@ static void client_main(unsigned int clnt_id, ushort tcp_port, int tcp_addr)
+ {
+ int peer_sd, efd = 0;
+ int imp = clnt_id % 4;
+- uint cmd, msglen, msgcnt, echo;
++ unsigned int cmd, msglen, msgcnt, echo;
+ struct epoll_event event, revents;
+ struct sockaddr_in tcp_dest;
+ int rc;
+@@ -400,22 +400,22 @@ static void client_main(unsigned int clnt_id, ushort tcp_port, int tcp_addr)
+ int main(int argc, char *argv[], char *dummy[])
+ {
+ int c;
+- uint cmd;
+- uint latency_transf = DEFAULT_LAT_MSGS;
+- uint thruput_transf = DEFAULT_THRU_MSGS;
+- uint req_clients = DEFAULT_CLIENTS;
+- uint first_msglen = DEFAULT_MSGLEN;
+- uint last_msglen = TIPC_MAX_USER_MSG_SIZE;
++ unsigned int cmd;
++ unsigned int latency_transf = DEFAULT_LAT_MSGS;
++ unsigned int thruput_transf = DEFAULT_THRU_MSGS;
++ unsigned int req_clients = DEFAULT_CLIENTS;
++ unsigned int first_msglen = DEFAULT_MSGLEN;
++ unsigned int last_msglen = TIPC_MAX_USER_MSG_SIZE;
+ unsigned long long msglen;
+ unsigned long long num_clients;
+ struct timeval start_time;
+ unsigned long long elapsed;
+ unsigned long long msgcnt;
+ unsigned long long iter;
+- uint clnt_id;
+- uint conn_typ = TIPC_CONN;
++ unsigned int clnt_id;
++ unsigned int conn_typ = TIPC_CONN;
+ ushort tcp_port = 0;
+- uint tcp_addr = 0;
++ unsigned int tcp_addr = 0;
+ struct srv_info sinfo;
+ __u32 peer_tipc_addr;
+ char ifname[16] = {0,};
+diff --git a/demos/benchmark/common_tipc.h b/demos/benchmark/common_tipc.h
+index 1765ba1..47947e0 100644
+--- a/demos/benchmark/common_tipc.h
++++ b/demos/benchmark/common_tipc.h
+@@ -256,7 +256,7 @@ static void get_ip_list(struct srv_info *sinfo, char *ifname)
+ }
+ }
+
+-static uint own_node(void)
++static unsigned int own_node(void)
+ {
+ struct sockaddr_tipc addr;
+ socklen_t sz = sizeof(addr);
+diff --git a/demos/benchmark/server_tipc.c b/demos/benchmark/server_tipc.c
+index 9d0e2be..3cd82b7 100644
+--- a/demos/benchmark/server_tipc.c
++++ b/demos/benchmark/server_tipc.c
+@@ -45,7 +45,7 @@ static int wait_for_connection(int listener_sd);
+ static void echo_messages(int peer_sd, int master_sd, int srv_id);
+ static __u32 own_node_addr;
+
+-static void srv_to_master(uint cmd, struct srv_info *sinfo)
++static void srv_to_master(unsigned int cmd, struct srv_info *sinfo)
+ {
+ struct srv_to_master_cmd c;
+
+@@ -62,7 +62,7 @@ static void srv_to_master(uint cmd, struct srv_info *sinfo)
+ die("Server: unable to send info to master\n");
+ }
+
+-static void srv_from_master(uint *cmd, uint* msglen, uint *msgcnt, uint *echo)
++static void srv_from_master(unsigned int *cmd, unsigned int* msglen, unsigned int *msgcnt, unsigned int *echo)
+ {
+ struct master_srv_cmd c;
+
+@@ -84,8 +84,8 @@ int main(int argc, char *argv[], char *dummy[])
+ {
+ ushort tcp_port = 4711;
+ struct srv_info sinfo;
+- uint cmd;
+- uint max_msglen;
++ unsigned int cmd;
++ unsigned int max_msglen;
+ struct sockaddr_in srv_addr;
+ int lstn_sd, peer_sd;
+ int srv_id = 0, srv_cnt = 0;;
+@@ -221,7 +221,7 @@ static int wait_for_connection(int lstn_sd)
+
+ static void echo_messages(int peer_sd, int master_sd, int srv_id)
+ {
+- uint cmd, msglen, msgcnt, echo, rcvd = 0;
++ unsigned int cmd, msglen, msgcnt, echo, rcvd = 0;
+
+ do {
+ /* Get msg length and number to expect, and ack: */
+diff --git a/demos/inventory_sim/inventory_sim.c b/demos/inventory_sim/inventory_sim.c
+index 22c33d1..9bf5443 100644
+--- a/demos/inventory_sim/inventory_sim.c
++++ b/demos/inventory_sim/inventory_sim.c
+@@ -940,9 +940,9 @@ int simItem(int itemID, int lagTime, int speed)
+ char outMsg[MSG_SIZE_MAX];
+ char *marker;
+ int msgSize;
+- uint zone;
+- uint cluster;
+- uint node;
++ unsigned int zone;
++ unsigned int cluster;
++ unsigned int node;
+ char itemName[NAME_SIZE];
+ int haveItem;
+ int res;
+@@ -1134,9 +1134,9 @@ int simCust(int itemID, int lagTime, int waitTime, int speed, int taskID)
+ char msg[MSG_SIZE_MAX];
+ char *marker;
+ int msgSize;
+- uint zone;
+- uint cluster;
+- uint node;
++ unsigned int zone;
++ unsigned int cluster;
++ unsigned int node;
+ char custName[NAME_SIZE];
+ int transactionID;
+ int needItem;
+--
+2.12.2
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/tipcutils/tipcutils_2.2.0.bb b/import-layers/meta-openembedded/meta-oe/recipes-extended/tipcutils/tipcutils_git.bb
index 5c5b289d6..b7157b432 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-extended/tipcutils/tipcutils_2.2.0.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/tipcutils/tipcutils_git.bb
@@ -2,8 +2,12 @@ SUMMARY = "Transparent Inter-Process Communication protocol"
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://tipclog/tipc.h;endline=35;md5=985b6ea8735818511d276c1b466cce98"
-SRC_URI = "git://tipc.git.sourceforge.net/gitroot/tipc/tipcutils"
-SRCREV = "dc8c2d324cda2e80a6e07ee1998fca0839d4a721"
+SRC_URI = "git://git.code.sf.net/p/tipc/tipcutils \
+ file://0001-include-sys-select.h-for-FD_-definitions.patch \
+ file://0002-replace-non-standard-uint-with-unsigned-int.patch \
+ "
+SRCREV = "7ab2211b87414ba240b0b2e4af219c1057c9cf9a"
+PV = "2.2.0+git${SRCPV}"
DEPENDS="virtual/kernel"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-extended/zlog/zlog_git.bb b/import-layers/meta-openembedded/meta-oe/recipes-extended/zlog/zlog_git.bb
new file mode 100644
index 000000000..51c746fd3
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-extended/zlog/zlog_git.bb
@@ -0,0 +1,19 @@
+DESCRIPTION = "Zlog is a pure C logging library"
+HOMEPAGE = "https://github.com/HardySimpson/zlog"
+LICENSE = "LGPLv2.1"
+LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c"
+
+PV = "1.2.12+git${SRCPV}"
+
+SRCREV = "13904dab2878aa2654d0c20fb8600a3dc5f2dd68"
+SRC_URI = "git://github.com/HardySimpson/zlog"
+
+S = "${WORKDIR}/git"
+
+inherit pkgconfig
+
+EXTRA_OEMAKE = "CC='${CC}' LD='${LD}'"
+
+do_install() {
+ oe_runmake install PREFIX=${D}${exec_prefix} INSTALL=install
+}
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-gnome/atk/atkmm_2.22.7.bb b/import-layers/meta-openembedded/meta-oe/recipes-gnome/atk/atkmm_2.24.2.bb
index 6f51e3442..30ac90a70 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-gnome/atk/atkmm_2.22.7.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-gnome/atk/atkmm_2.24.2.bb
@@ -9,10 +9,8 @@ DEPENDS = "atk glibmm"
inherit gnome autotools pkgconfig
-GNOME_COMPRESS_TYPE = "xz"
-
-SRC_URI[archive.md5sum] = "fec7db3fc47ba2e0c95d130ec865a236"
-SRC_URI[archive.sha256sum] = "bfbf846b409b4c5eb3a52fa32a13d86936021969406b3dcafd4dd05abd70f91b"
+SRC_URI[archive.md5sum] = "d53b60b0f1be597e86070954a49cf0c3"
+SRC_URI[archive.sha256sum] = "ff95385759e2af23828d4056356f25376cfabc41e690ac1df055371537e458bd"
EXTRA_OECONF = " --disable-documentation "
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-gnome/gtk+/gtkmm_2.24.3.bb b/import-layers/meta-openembedded/meta-oe/recipes-gnome/gtk+/gtkmm_2.24.5.bb
index f4e086555..195bb2183 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-gnome/gtk+/gtkmm_2.24.3.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-gnome/gtk+/gtkmm_2.24.5.bb
@@ -14,8 +14,8 @@ REQUIRED_DISTRO_FEATURES = "x11"
GNOME_COMPRESS_TYPE = "xz"
-SRC_URI[archive.md5sum] = "42fc5a3feeb33ea59b7660200e2a5465"
-SRC_URI[archive.sha256sum] = "c564a438677174b97d69dd70467cb03c933481006398dc9377417aa6abe02a39"
+SRC_URI[archive.md5sum] = "6c59ae8bbff48fad9132f23af347acf1"
+SRC_URI[archive.sha256sum] = "0680a53b7bf90b4e4bf444d1d89e6df41c777e0bacc96e9c09fc4dd2f5fe6b72"
EXTRA_OECONF = " --disable-documentation "
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-gnome/gtkextra/gtkextra_3.0.5.bb b/import-layers/meta-openembedded/meta-oe/recipes-gnome/gtkextra/gtkextra_3.0.5.bb
index 926eff77d..34b7aa64a 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-gnome/gtkextra/gtkextra_3.0.5.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-gnome/gtkextra/gtkextra_3.0.5.bb
@@ -16,4 +16,4 @@ DEPENDS = "gtk+"
inherit autotools pkgconfig gobject-introspection
# | ./.libs/libgtkextra-x11-3.0.so: error: undefined reference to 'roundint'
-PNBLACKLIST[gtkextra] ?= "BROKEN: Fails to build with gcc-5"
+PNBLACKLIST[gtkextra] ?= "BROKEN: Fails to build with gcc-5 - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-gnome/gtkhtml2/gtkhtml2_svn.bb b/import-layers/meta-openembedded/meta-oe/recipes-gnome/gtkhtml2/gtkhtml2_svn.bb
index cd22576d1..021b077de 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-gnome/gtkhtml2/gtkhtml2_svn.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-gnome/gtkhtml2/gtkhtml2_svn.bb
@@ -37,3 +37,5 @@ S = "${WORKDIR}/trunk"
inherit pkgconfig autotools
EXTRA_OECONF = " --disable-accessibility"
+
+PNBLACKLIST[gtkhtml2] ?= "Fails to build with RSS http://errors.yoctoproject.org/Errors/Details/130633/ - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-gnome/libglade/libglade-2.6.4/0001-configure.in-remove-deprecated-GNOME_COMMON_INIT.patch b/import-layers/meta-openembedded/meta-oe/recipes-gnome/libglade/libglade-2.6.4/0001-configure.in-remove-deprecated-GNOME_COMMON_INIT.patch
new file mode 100644
index 000000000..473827448
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-gnome/libglade/libglade-2.6.4/0001-configure.in-remove-deprecated-GNOME_COMMON_INIT.patch
@@ -0,0 +1,30 @@
+From ceefcb19cebf8bc3d45ee502f8eabd3bc5bd0aac Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
+Date: Sat, 11 Feb 2017 16:42:12 +0100
+Subject: [PATCH] configure.in: remove deprecated GNOME_COMMON_INIT
+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.in | 1 -
+ 1 file changed, 1 deletion(-)
+
+diff --git a/configure.in b/configure.in
+index 8905f1c..3901398 100644
+--- a/configure.in
++++ b/configure.in
+@@ -15,7 +15,6 @@ AC_CONFIG_HEADERS([config.h])
+
+ AM_INIT_AUTOMAKE([1.9 no-dist-gzip dist-bzip2])
+
+-GNOME_COMMON_INIT
+
+ if test "$enable_debug" != "no"; then
+ AC_DEFINE([DEBUG],[1],[enable use of LIBGLADE_DEBUG environment variable])
+--
+2.9.3
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-gnome/libglade/libglade_2.6.4.bb b/import-layers/meta-openembedded/meta-oe/recipes-gnome/libglade/libglade_2.6.4.bb
index 8cd023a50..fdb9f8a3e 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-gnome/libglade/libglade_2.6.4.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-gnome/libglade/libglade_2.6.4.bb
@@ -15,17 +15,21 @@ inherit autotools pkgconfig gnomebase gtk-doc distro_features_check
ANY_OF_DISTRO_FEATURES = "${GTK2DISTROFEATURES}"
GNOME_COMPRESS_TYPE="bz2"
-SRC_URI += "file://glade-cruft.patch file://no-xml2.patch file://python_environment.patch"
+SRC_URI += " \
+ file://glade-cruft.patch \
+ file://no-xml2.patch \
+ file://python_environment.patch \
+ file://0001-configure.in-remove-deprecated-GNOME_COMMON_INIT.patch \
+"
SRC_URI[archive.md5sum] = "d1776b40f4e166b5e9c107f1c8fe4139"
SRC_URI[archive.sha256sum] = "64361e7647839d36ed8336d992fd210d3e8139882269bed47dc4674980165dec"
EXTRA_OECONF += "--without-libxml2 --disable-gtk-doc"
-CFLAGS += "-lz"
+CFLAGS += "-lz -lgmodule-2.0"
PACKAGES += " ${PN}-data"
FILES_${PN} = "${libdir}/lib*.so.*"
FILES_${PN}-data = "${datadir}/xml/libglade/glade-2.0.dtd"
FILES_${PN}-dev += "${bindir}/libglade-convert"
-#RDEPENDS_${PN} = "${PN}-data"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-gnome/libunique/libunique/0001-test-unique-Add-format-qualifier-s-for-string.patch b/import-layers/meta-openembedded/meta-oe/recipes-gnome/libunique/libunique/0001-test-unique-Add-format-qualifier-s-for-string.patch
new file mode 100644
index 000000000..7f9fdf397
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-gnome/libunique/libunique/0001-test-unique-Add-format-qualifier-s-for-string.patch
@@ -0,0 +1,32 @@
+From 37632aca00d48c53e91f08bc7435c721ba81b2cd Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Thu, 30 Mar 2017 14:32:55 -0700
+Subject: [PATCH] test-unique: Add format qualifier %s for string
+
+Fixes potential security issues that compiler flags
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ tests/test-unique.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/tests/test-unique.c b/tests/test-unique.c
+index b7cde45..82ee81b 100644
+--- a/tests/test-unique.c
++++ b/tests/test-unique.c
+@@ -82,10 +82,10 @@ app_message_cb (UniqueApp *app,
+ GTK_DIALOG_DESTROY_WITH_PARENT,
+ GTK_MESSAGE_INFO,
+ GTK_BUTTONS_CLOSE,
+- title);
++ "%s",title);
+ if (message)
+ gtk_message_dialog_format_secondary_text (GTK_MESSAGE_DIALOG (dialog),
+- message);
++ "%s",message);
+
+ gtk_window_set_urgency_hint (GTK_WINDOW (dialog), TRUE);
+
+--
+2.12.1
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-gnome/libunique/libunique_1.1.6.bb b/import-layers/meta-openembedded/meta-oe/recipes-gnome/libunique/libunique_1.1.6.bb
index 301839830..9133cccb1 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-gnome/libunique/libunique_1.1.6.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-gnome/libunique/libunique_1.1.6.bb
@@ -4,18 +4,19 @@ HOMEPAGE = "https://wiki.gnome.org/Attic/LibUnique"
BUGTRACKER = "https://bugzilla.gnome.org/enter_bug.cgi?product=libunique"
SRC_URI = "${GNOME_MIRROR}/libunique/1.1/libunique-${PV}.tar.bz2 \
- file://fix_for_compile_with_gcc-4.6.0.patch \
- file://noconst.patch \
- file://build.patch \
- file://0001-Makefile.am-use-LIBTOOL-instead-of-hardcoded-libtool.patch \
-"
+ file://fix_for_compile_with_gcc-4.6.0.patch \
+ file://noconst.patch \
+ file://build.patch \
+ file://0001-Makefile.am-use-LIBTOOL-instead-of-hardcoded-libtool.patch \
+ file://0001-test-unique-Add-format-qualifier-s-for-string.patch \
+ "
SRC_URI[md5sum] = "7955769ef31f1bc4f83446dbb3625e6d"
SRC_URI[sha256sum] = "e5c8041cef8e33c55732f06a292381cb345db946cf792a4ae18aa5c66cdd4fbb"
PR = "r7"
-DEPENDS = "glib-2.0 gtk+"
+DEPENDS = "dbus-glib-native glib-2.0 gtk+"
PACKAGECONFIG ??= "dbus"
PACKAGECONFIG[dbus] = "--enable-dbus,--disable-dbus,dbus dbus-glib"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-gnome/vte9/vte9.inc b/import-layers/meta-openembedded/meta-oe/recipes-gnome/vte9/vte9.inc
index 6a5c63cf9..206c430da 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-gnome/vte9/vte9.inc
+++ b/import-layers/meta-openembedded/meta-oe/recipes-gnome/vte9/vte9.inc
@@ -1,7 +1,7 @@
SUMMARY = "Virtual terminal emulator GTK+ widget library"
BUGTRACKER = "https://bugzilla.gnome.org/buglist.cgi?product=vte"
LICENSE = "LGPLv2.0"
-DEPENDS = " glib-2.0 gtk+ intltool-native ncurses"
+DEPENDS = " glib-2.0 gtk+ intltool-native gnome-common-native ncurses"
RDEPENDS_libvte = "vte-termcap"
# help gnomebase get the SRC_URI correct
@@ -16,4 +16,3 @@ EXTRA_OECONF = "--disable-python"
PACKAGES =+ "libvte9 vte9-termcap"
FILES_libvte9 = "${libdir}/*.so.* ${libexecdir}/gnome-pty-helper"
FILES_vte9-termcap = "${datadir}/vte/termcap-0.0"
-
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-graphics/assimp/assimp_3.1.1.bb b/import-layers/meta-openembedded/meta-oe/recipes-graphics/assimp/assimp_3.1.1.bb
index 5ffa5c2fa..4da3dc213 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-graphics/assimp/assimp_3.1.1.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-graphics/assimp/assimp_3.1.1.bb
@@ -5,7 +5,7 @@ SECTION = "devel"
LICENSE = "BSD"
LIC_FILES_CHKSUM = "file://LICENSE;md5=bc4231a2268da8fc55525ad119638a87"
-DEPENDS = "boost"
+DEPENDS = "boost virtual/libgl"
SRC_URI = "http://sourceforge.net/projects/${BPN}/files/${BPN}-3.1/${BPN}-${PV}_no_test_models.zip"
SRC_URI[md5sum] = "ccd4788204509da58a3a53c7aeda7a8b"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-graphics/cairo/cairomm_1.11.2.bb b/import-layers/meta-openembedded/meta-oe/recipes-graphics/cairo/cairomm_1.11.2.bb
deleted file mode 100644
index a33045872..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-graphics/cairo/cairomm_1.11.2.bb
+++ /dev/null
@@ -1,16 +0,0 @@
-SUMMARY = "C++ bindings for Cairo graphics library"
-
-LICENSE = "LGPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=c46bda00ffbb0ba1dac22f8d087f54d9"
-
-inherit autotools pkgconfig
-
-DEPENDS = "cairo libsigc++-2.0"
-
-SRC_URI = "http://cairographics.org/releases/cairomm-${PV}.tar.gz;name=archive"
-SRC_URI[archive.md5sum] = "732a3ff5b57401eb5dfeef795a2a0c52"
-SRC_URI[archive.sha256sum] = "ccf677098c1e08e189add0bd146f78498109f202575491a82f1815b6bc28008d"
-
-FILES_${PN}-doc += "${datadir}/devhelp"
-FILES_${PN}-dev += "${libdir}/cairomm-*/"
-
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-graphics/cairo/cairomm_1.12.0.bb b/import-layers/meta-openembedded/meta-oe/recipes-graphics/cairo/cairomm_1.12.0.bb
new file mode 100644
index 000000000..d49a509a0
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-graphics/cairo/cairomm_1.12.0.bb
@@ -0,0 +1,15 @@
+SUMMARY = "C++ bindings for Cairo graphics library"
+
+LICENSE = "LGPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=c46bda00ffbb0ba1dac22f8d087f54d9"
+
+inherit gnomebase
+
+DEPENDS = "cairo libsigc++-2.0"
+
+SRC_URI[archive.md5sum] = "c62b476b61bd0abf7e9851f417d73291"
+SRC_URI[archive.sha256sum] = "a54ada8394a86182525c0762e6f50db6b9212a2109280d13ec6a0b29bfd1afe6"
+
+FILES_${PN}-doc += "${datadir}/devhelp"
+FILES_${PN}-dev += "${libdir}/cairomm-*/"
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-graphics/clutter/clutter-box2d_git.bb b/import-layers/meta-openembedded/meta-oe/recipes-graphics/clutter/clutter-box2d_git.bb
index 194d1046f..d73e2f15e 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-graphics/clutter/clutter-box2d_git.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-graphics/clutter/clutter-box2d_git.bb
@@ -5,7 +5,7 @@ LIC_FILES_CHKSUM = "file://box2d/License.txt;md5=e5d39ad91f7dc4692dcdb1d85139ec6
# 0.12.1+gitAUTOINC+de5452e56b-r1/git/clutter-box2d/clutter-box2d.h:226:47:
# fatal error: clutter-box2d/clutter-box2d-child.h: No such file or directory
# | #include <clutter-box2d/clutter-box2d-child.h>
-PNBLACKLIST[clutter-box2d] ?= "BROKEN: doesn't build with B!=S"
+PNBLACKLIST[clutter-box2d] ?= "BROKEN: doesn't build with B!=S - the recipe will be removed on 2017-09-01 unless the issue is fixed"
SRCREV = "de5452e56b537a11fd7f9453d048ff4b4793b5a2"
PV = "0.12.1+git${SRCPV}"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-graphics/directfb/directfb.inc b/import-layers/meta-openembedded/meta-oe/recipes-graphics/directfb/directfb.inc
index fc272bd28..bfbd9c29e 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-graphics/directfb/directfb.inc
+++ b/import-layers/meta-openembedded/meta-oe/recipes-graphics/directfb/directfb.inc
@@ -51,6 +51,8 @@ EXTRA_OECONF = "\
--disable-sdl \
--disable-vnc \
--disable-x11 \
+ --disable-x11vdpau \
+ --disable-xine-vdpau \
"
#Once -fno-omit-frame-pointer option of gcc is added into TARGET_CLFAGS as default
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-graphics/fbgrab/fbgrab_1.2.bb b/import-layers/meta-openembedded/meta-oe/recipes-graphics/fbgrab/fbgrab_1.3.bb
index 1d87b86ec..e12bc094d 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-graphics/fbgrab/fbgrab_1.2.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-graphics/fbgrab/fbgrab_1.3.bb
@@ -8,10 +8,8 @@ SRC_URI = "http://fbgrab.monells.se/${BP}.tar.gz"
inherit autotools-brokensep
-S = "${WORKDIR}/${BPN}"
-
-SRC_URI[md5sum] = "15b432735d6efd0373722bb96577b945"
-SRC_URI[sha256sum] = "61e0772ad6ea744ee597ae478398ddd0ba6fceee2cf343859bebde2c15bafb91"
+SRC_URI[md5sum] = "7d8c24081c681dfbba21f2934c1ac656"
+SRC_URI[sha256sum] = "5fab478cbf8731fbacefaa76236a8f8b38ccff920c53b3a8253bc35509fba8ed"
do_configure_prepend() {
sed -i 's|$(DESTDIR)/usr/man/|$(DESTDIR)${mandir}/|g' ${S}/Makefile
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-graphics/fbida/fbida_2.10.bb b/import-layers/meta-openembedded/meta-oe/recipes-graphics/fbida/fbida_2.10.bb
index c14fc9b68..0bf48ace6 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-graphics/fbida/fbida_2.10.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-graphics/fbida/fbida_2.10.bb
@@ -10,12 +10,19 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=8ca43cbc842c2336e835926c2166c28b"
DEPENDS = "virtual/libiconv jpeg fontconfig freetype libexif"
-SRC_URI = "https://www.kraxel.org/releases/fbida/fbida-${PV}.tar.gz"
+SRC_URI = "https://www.kraxel.org/releases/fbida/fbida-${PV}.tar.gz \
+ file://0001-Avoid-using-host-path.patch \
+ file://fix-preprocessor.patch \
+ file://support-jpeg-turbo.patch \
+ file://use-jpeg-turbo.patch \
+ "
SRC_URI[md5sum] = "09460b964b58c2e39b665498eca29018"
SRC_URI[sha256sum] = "7a5a3aac61b40a6a2bbf716d270a46e2f8e8d5c97e314e927d41398a4d0b6cb6"
B = "${WORKDIR}/build"
+inherit pkgconfig
+
EXTRA_OEMAKE = "STRIP= 'srcdir=${S}' -f ${S}/GNUmakefile"
PACKAGECONFIG ??= "gif png curl"
@@ -30,29 +37,29 @@ PACKAGECONFIG[lirc] = ",,lirc"
do_compile() {
sed -i -e 's# fbgs# \$(srcdir)/fbgs#; s#-Ijpeg#-I\$(srcdir)/jpeg#; s# jpeg/# \$(srcdir)/jpeg/#' ${S}/GNUmakefile
sed -i -e 's:/sbin/ldconfig:echo x:' ${S}/mk/Autoconf.mk
- sed -i -e 's: cpp: ${TARGET_PREFIX}cpp -I${STAGING_INCDIR}:' ${S}/GNUmakefile
+ sed -i -e 's: cpp: ${CPP}:' ${S}/GNUmakefile
# Be sure to respect preferences (force to "no")
# Also avoid issues when ${BUILD_ARCH} == ${HOST_ARCH}
- if [ -z "${@bb.utils.contains('PACKAGECONFIG', 'curl', 'curl', '', d)}" ]; then
+ if [ -z "${@bb.utils.filter('PACKAGECONFIG', 'curl', d)}" ]; then
sed -i -e '/^HAVE_LIBCURL/s/:=.*$/:= no/' ${S}/GNUmakefile
fi
- if [ -z "${@bb.utils.contains('PACKAGECONFIG', 'gif', 'gif', '', d)}" ]; then
+ if [ -z "${@bb.utils.filter('PACKAGECONFIG', 'gif', d)}" ]; then
sed -i -e '/^HAVE_LIBGIF/s/:=.*$/:= no/' ${S}/GNUmakefile
fi
- if [ -z "${@bb.utils.contains('PACKAGECONFIG', 'png', 'png', '', d)}" ]; then
+ if [ -z "${@bb.utils.filter('PACKAGECONFIG', 'png', d)}" ]; then
sed -i -e '/^HAVE_LIBPNG/s/:=.*$/:= no/' ${S}/GNUmakefile
fi
- if [ -z "${@bb.utils.contains('PACKAGECONFIG', 'tiff', 'tiff', '', d)}" ]; then
+ if [ -z "${@bb.utils.filter('PACKAGECONFIG', 'tiff', d)}" ]; then
sed -i -e '/^HAVE_LIBTIFF/s/:=.*$/:= no/' ${S}/GNUmakefile
fi
- if [ -z "${@bb.utils.contains('PACKAGECONFIG', 'motif', 'motif', '', d)}" ]; then
+ if [ -z "${@bb.utils.filter('PACKAGECONFIG', 'motif', d)}" ]; then
sed -i -e '/^HAVE_MOTIF/s/:=.*$/:= no/' ${S}/GNUmakefile
fi
- if [ -z "${@bb.utils.contains('PACKAGECONFIG', 'webp', 'webp', '', d)}" ]; then
+ if [ -z "${@bb.utils.filter('PACKAGECONFIG', 'webp', d)}" ]; then
sed -i -e '/^HAVE_LIBWEBP/s/:=.*$/:= no/' ${S}/GNUmakefile
fi
- if [ -z "${@bb.utils.contains('PACKAGECONFIG', 'lirc', 'lirc', '', d)}" ]; then
+ if [ -z "${@bb.utils.filter('PACKAGECONFIG', 'lirc', d)}" ]; then
sed -i -e '/^HAVE_LIBLIRC/s/:=.*$/:= no/' ${S}/GNUmakefile
fi
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-graphics/fbida/files/0001-Avoid-using-host-path.patch b/import-layers/meta-openembedded/meta-oe/recipes-graphics/fbida/files/0001-Avoid-using-host-path.patch
new file mode 100644
index 000000000..cdf2c25d3
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-graphics/fbida/files/0001-Avoid-using-host-path.patch
@@ -0,0 +1,34 @@
+From 8d8fa9f22d9f6a95523bac63ac3af724faf5ff92 Mon Sep 17 00:00:00 2001
+From: Marek Vasut <marex@denx.de>
+Date: Fri, 7 Apr 2017 23:26:09 +0200
+Subject: [PATCH] Avoid using host-path
+
+Remove the explicit reference to /usr/local/* , this is completely
+bogus and causes trouble during cross-compilation.
+
+Signed-off-by: Marek Vasut <marex@denx.de>
+Upstream-Status: Inappropriate [upstream requires this]
+---
+ mk/Variables.mk | 6 ------
+ 1 file changed, 6 deletions(-)
+
+diff --git a/mk/Variables.mk b/mk/Variables.mk
+index 99f787c..3ffd87a 100644
+--- a/mk/Variables.mk
++++ b/mk/Variables.mk
+@@ -42,12 +42,6 @@ CFLAGS += -Wall -Wmissing-prototypes -Wstrict-prototypes \
+ -Wpointer-arith -Wunused
+ CXXFLAGS += -Wall -Wpointer-arith -Wunused
+
+-# add /usr/local to the search path if something is in there ...
+-ifneq ($(wildcard /usr/local/include/*.h),)
+- CFLAGS += -I/usr/local/include
+- LDFLAGS += -L/usr/local/$(LIB)
+-endif
+-
+ # fixup include path for $(srcdir) != "."
+ ifneq ($(srcdir),.)
+ CFLAGS += -I. -I$(srcdir)
+--
+2.11.0
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-graphics/fbida/files/fix-preprocessor.patch b/import-layers/meta-openembedded/meta-oe/recipes-graphics/fbida/files/fix-preprocessor.patch
new file mode 100644
index 000000000..909a0a6c0
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-graphics/fbida/files/fix-preprocessor.patch
@@ -0,0 +1,14 @@
+Index: fbida-2.13/GNUmakefile
+===================================================================
+--- fbida-2.13.orig/GNUmakefile
++++ fbida-2.13/GNUmakefile
+@@ -53,8 +53,7 @@ include $(srcdir)/mk/Autoconf.mk
+
+ ac_jpeg_ver = $(shell \
+ $(call ac_init,for libjpeg version);\
+- $(call ac_s_cmd,echo JPEG_LIB_VERSION \
+- | cpp -include jpeglib.h | tail -n 1);\
++ $(call ac_s_cmd,cpp -include jpeglib.h -dM -E -x c /dev/null | grep 'define JPEG_LIB_VERSION' | cut -f 3 -d' ');\
+ $(call ac_fini))
+
+ define make-config
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-graphics/fbida/files/support-jpeg-turbo.patch b/import-layers/meta-openembedded/meta-oe/recipes-graphics/fbida/files/support-jpeg-turbo.patch
new file mode 100644
index 000000000..05cd74da9
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-graphics/fbida/files/support-jpeg-turbo.patch
@@ -0,0 +1,1854 @@
+Add patch by Ondrej Sury to migrate to libjpeg-turbo (Closes: #763263)
+
+Index: fbida-2.10/jpeg/62/jpegcomp.h
+===================================================================
+--- /dev/null
++++ fbida-2.10/jpeg/62/jpegcomp.h
+@@ -0,0 +1,30 @@
++/*
++ * jpegcomp.h
++ *
++ * Copyright (C) 2010, D. R. Commander
++ * For conditions of distribution and use, see the accompanying README file.
++ *
++ * JPEG compatibility macros
++ * These declarations are considered internal to the JPEG library; most
++ * applications using the library shouldn't need to include this file.
++ */
++
++#if JPEG_LIB_VERSION >= 70
++#define _DCT_scaled_size DCT_h_scaled_size
++#define _DCT_h_scaled_size DCT_h_scaled_size
++#define _DCT_v_scaled_size DCT_v_scaled_size
++#define _min_DCT_scaled_size min_DCT_h_scaled_size
++#define _min_DCT_h_scaled_size min_DCT_h_scaled_size
++#define _min_DCT_v_scaled_size min_DCT_v_scaled_size
++#define _jpeg_width jpeg_width
++#define _jpeg_height jpeg_height
++#else
++#define _DCT_scaled_size DCT_scaled_size
++#define _DCT_h_scaled_size DCT_scaled_size
++#define _DCT_v_scaled_size DCT_scaled_size
++#define _min_DCT_scaled_size min_DCT_scaled_size
++#define _min_DCT_h_scaled_size min_DCT_scaled_size
++#define _min_DCT_v_scaled_size min_DCT_scaled_size
++#define _jpeg_width image_width
++#define _jpeg_height image_height
++#endif
+Index: fbida-2.10/jpeg/62/transupp.c
+===================================================================
+--- fbida-2.10.orig/jpeg/62/transupp.c
++++ fbida-2.10/jpeg/62/transupp.c
+@@ -1,8 +1,10 @@
+ /*
+ * transupp.c
+ *
+- * Copyright (C) 1997, Thomas G. Lane.
+- * This file is part of the Independent JPEG Group's software.
++ * This file was part of the Independent JPEG Group's software:
++ * Copyright (C) 1997-2011, Thomas G. Lane, Guido Vollbeding.
++ * libjpeg-turbo Modifications:
++ * Copyright (C) 2010, D. R. Commander.
+ * For conditions of distribution and use, see the accompanying README file.
+ *
+ * This file contains image transformation routines and other utility code
+@@ -20,6 +22,17 @@
+ #include "jinclude.h"
+ #include "jpeglib.h"
+ #include "transupp.h" /* My own external interface */
++#include "jpegcomp.h"
++#include <ctype.h> /* to declare isdigit() */
++
++
++#if JPEG_LIB_VERSION >= 70
++#define dstinfo_min_DCT_h_scaled_size dstinfo->min_DCT_h_scaled_size
++#define dstinfo_min_DCT_v_scaled_size dstinfo->min_DCT_v_scaled_size
++#else
++#define dstinfo_min_DCT_h_scaled_size DCTSIZE
++#define dstinfo_min_DCT_v_scaled_size DCTSIZE
++#endif
+
+
+ #if TRANSFORMS_SUPPORTED
+@@ -28,7 +41,8 @@
+ * Lossless image transformation routines. These routines work on DCT
+ * coefficient arrays and thus do not require any lossy decompression
+ * or recompression of the image.
+- * Thanks to Guido Vollbeding for the initial design and code of this feature.
++ * Thanks to Guido Vollbeding for the initial design and code of this feature,
++ * and to Ben Jackson for introducing the cropping feature.
+ *
+ * Horizontal flipping is done in-place, using a single top-to-bottom
+ * pass through the virtual source array. It will thus be much the
+@@ -42,6 +56,13 @@
+ * arrays for most of the transforms. That could result in much thrashing
+ * if the image is larger than main memory.
+ *
++ * If cropping or trimming is involved, the destination arrays may be smaller
++ * than the source arrays. Note it is not possible to do horizontal flip
++ * in-place when a nonzero Y crop offset is specified, since we'd have to move
++ * data from one block row to another but the virtual array manager doesn't
++ * guarantee we can touch more than one row at a time. So in that case,
++ * we have to use a separate destination array.
++ *
+ * Some notes about the operating environment of the individual transform
+ * routines:
+ * 1. Both the source and destination virtual arrays are allocated from the
+@@ -54,20 +75,65 @@
+ * and we may as well take that as the effective iMCU size.
+ * 4. When "trim" is in effect, the destination's dimensions will be the
+ * trimmed values but the source's will be untrimmed.
+- * 5. All the routines assume that the source and destination buffers are
++ * 5. When "crop" is in effect, the destination's dimensions will be the
++ * cropped values but the source's will be uncropped. Each transform
++ * routine is responsible for picking up source data starting at the
++ * correct X and Y offset for the crop region. (The X and Y offsets
++ * passed to the transform routines are measured in iMCU blocks of the
++ * destination.)
++ * 6. All the routines assume that the source and destination buffers are
+ * padded out to a full iMCU boundary. This is true, although for the
+ * source buffer it is an undocumented property of jdcoefct.c.
+- * Notes 2,3,4 boil down to this: generally we should use the destination's
+- * dimensions and ignore the source's.
+ */
+
+
+ LOCAL(void)
+-do_flip_h (j_decompress_ptr srcinfo, j_compress_ptr dstinfo,
+- jvirt_barray_ptr *src_coef_arrays)
+-/* Horizontal flip; done in-place, so no separate dest array is required */
++do_crop (j_decompress_ptr srcinfo, j_compress_ptr dstinfo,
++ JDIMENSION x_crop_offset, JDIMENSION y_crop_offset,
++ jvirt_barray_ptr *src_coef_arrays,
++ jvirt_barray_ptr *dst_coef_arrays)
++/* Crop. This is only used when no rotate/flip is requested with the crop. */
++{
++ JDIMENSION dst_blk_y, x_crop_blocks, y_crop_blocks;
++ int ci, offset_y;
++ JBLOCKARRAY src_buffer, dst_buffer;
++ jpeg_component_info *compptr;
++
++ /* We simply have to copy the right amount of data (the destination's
++ * image size) starting at the given X and Y offsets in the source.
++ */
++ for (ci = 0; ci < dstinfo->num_components; ci++) {
++ compptr = dstinfo->comp_info + ci;
++ x_crop_blocks = x_crop_offset * compptr->h_samp_factor;
++ y_crop_blocks = y_crop_offset * compptr->v_samp_factor;
++ for (dst_blk_y = 0; dst_blk_y < compptr->height_in_blocks;
++ dst_blk_y += compptr->v_samp_factor) {
++ dst_buffer = (*srcinfo->mem->access_virt_barray)
++ ((j_common_ptr) srcinfo, dst_coef_arrays[ci], dst_blk_y,
++ (JDIMENSION) compptr->v_samp_factor, TRUE);
++ src_buffer = (*srcinfo->mem->access_virt_barray)
++ ((j_common_ptr) srcinfo, src_coef_arrays[ci],
++ dst_blk_y + y_crop_blocks,
++ (JDIMENSION) compptr->v_samp_factor, FALSE);
++ for (offset_y = 0; offset_y < compptr->v_samp_factor; offset_y++) {
++ jcopy_block_row(src_buffer[offset_y] + x_crop_blocks,
++ dst_buffer[offset_y],
++ compptr->width_in_blocks);
++ }
++ }
++ }
++}
++
++
++LOCAL(void)
++do_flip_h_no_crop (j_decompress_ptr srcinfo, j_compress_ptr dstinfo,
++ JDIMENSION x_crop_offset,
++ jvirt_barray_ptr *src_coef_arrays)
++/* Horizontal flip; done in-place, so no separate dest array is required.
++ * NB: this only works when y_crop_offset is zero.
++ */
+ {
+- JDIMENSION MCU_cols, comp_width, blk_x, blk_y;
++ JDIMENSION MCU_cols, comp_width, blk_x, blk_y, x_crop_blocks;
+ int ci, k, offset_y;
+ JBLOCKARRAY buffer;
+ JCOEFPTR ptr1, ptr2;
+@@ -79,17 +145,20 @@ do_flip_h (j_decompress_ptr srcinfo, j_c
+ * mirroring by changing the signs of odd-numbered columns.
+ * Partial iMCUs at the right edge are left untouched.
+ */
+- MCU_cols = dstinfo->image_width / (dstinfo->max_h_samp_factor * DCTSIZE);
++ MCU_cols = srcinfo->output_width /
++ (dstinfo->max_h_samp_factor * dstinfo_min_DCT_h_scaled_size);
+
+ for (ci = 0; ci < dstinfo->num_components; ci++) {
+ compptr = dstinfo->comp_info + ci;
+ comp_width = MCU_cols * compptr->h_samp_factor;
++ x_crop_blocks = x_crop_offset * compptr->h_samp_factor;
+ for (blk_y = 0; blk_y < compptr->height_in_blocks;
+ blk_y += compptr->v_samp_factor) {
+ buffer = (*srcinfo->mem->access_virt_barray)
+ ((j_common_ptr) srcinfo, src_coef_arrays[ci], blk_y,
+ (JDIMENSION) compptr->v_samp_factor, TRUE);
+ for (offset_y = 0; offset_y < compptr->v_samp_factor; offset_y++) {
++ /* Do the mirroring */
+ for (blk_x = 0; blk_x * 2 < comp_width; blk_x++) {
+ ptr1 = buffer[offset_y][blk_x];
+ ptr2 = buffer[offset_y][comp_width - blk_x - 1];
+@@ -105,6 +174,80 @@ do_flip_h (j_decompress_ptr srcinfo, j_c
+ *ptr2++ = -temp1;
+ }
+ }
++ if (x_crop_blocks > 0) {
++ /* Now left-justify the portion of the data to be kept.
++ * We can't use a single jcopy_block_row() call because that routine
++ * depends on memcpy(), whose behavior is unspecified for overlapping
++ * source and destination areas. Sigh.
++ */
++ for (blk_x = 0; blk_x < compptr->width_in_blocks; blk_x++) {
++ jcopy_block_row(buffer[offset_y] + blk_x + x_crop_blocks,
++ buffer[offset_y] + blk_x,
++ (JDIMENSION) 1);
++ }
++ }
++ }
++ }
++ }
++}
++
++
++LOCAL(void)
++do_flip_h (j_decompress_ptr srcinfo, j_compress_ptr dstinfo,
++ JDIMENSION x_crop_offset, JDIMENSION y_crop_offset,
++ jvirt_barray_ptr *src_coef_arrays,
++ jvirt_barray_ptr *dst_coef_arrays)
++/* Horizontal flip in general cropping case */
++{
++ JDIMENSION MCU_cols, comp_width, dst_blk_x, dst_blk_y;
++ JDIMENSION x_crop_blocks, y_crop_blocks;
++ int ci, k, offset_y;
++ JBLOCKARRAY src_buffer, dst_buffer;
++ JBLOCKROW src_row_ptr, dst_row_ptr;
++ JCOEFPTR src_ptr, dst_ptr;
++ jpeg_component_info *compptr;
++
++ /* Here we must output into a separate array because we can't touch
++ * different rows of a single virtual array simultaneously. Otherwise,
++ * this is essentially the same as the routine above.
++ */
++ MCU_cols = srcinfo->output_width /
++ (dstinfo->max_h_samp_factor * dstinfo_min_DCT_h_scaled_size);
++
++ for (ci = 0; ci < dstinfo->num_components; ci++) {
++ compptr = dstinfo->comp_info + ci;
++ comp_width = MCU_cols * compptr->h_samp_factor;
++ x_crop_blocks = x_crop_offset * compptr->h_samp_factor;
++ y_crop_blocks = y_crop_offset * compptr->v_samp_factor;
++ for (dst_blk_y = 0; dst_blk_y < compptr->height_in_blocks;
++ dst_blk_y += compptr->v_samp_factor) {
++ dst_buffer = (*srcinfo->mem->access_virt_barray)
++ ((j_common_ptr) srcinfo, dst_coef_arrays[ci], dst_blk_y,
++ (JDIMENSION) compptr->v_samp_factor, TRUE);
++ src_buffer = (*srcinfo->mem->access_virt_barray)
++ ((j_common_ptr) srcinfo, src_coef_arrays[ci],
++ dst_blk_y + y_crop_blocks,
++ (JDIMENSION) compptr->v_samp_factor, FALSE);
++ for (offset_y = 0; offset_y < compptr->v_samp_factor; offset_y++) {
++ dst_row_ptr = dst_buffer[offset_y];
++ src_row_ptr = src_buffer[offset_y];
++ for (dst_blk_x = 0; dst_blk_x < compptr->width_in_blocks; dst_blk_x++) {
++ if (x_crop_blocks + dst_blk_x < comp_width) {
++ /* Do the mirrorable blocks */
++ dst_ptr = dst_row_ptr[dst_blk_x];
++ src_ptr = src_row_ptr[comp_width - x_crop_blocks - dst_blk_x - 1];
++ /* this unrolled loop doesn't need to know which row it's on... */
++ for (k = 0; k < DCTSIZE2; k += 2) {
++ *dst_ptr++ = *src_ptr++; /* copy even column */
++ *dst_ptr++ = - *src_ptr++; /* copy odd column with sign change */
++ }
++ } else {
++ /* Copy last partial block(s) verbatim */
++ jcopy_block_row(src_row_ptr + dst_blk_x + x_crop_blocks,
++ dst_row_ptr + dst_blk_x,
++ (JDIMENSION) 1);
++ }
++ }
+ }
+ }
+ }
+@@ -113,11 +256,13 @@ do_flip_h (j_decompress_ptr srcinfo, j_c
+
+ LOCAL(void)
+ do_flip_v (j_decompress_ptr srcinfo, j_compress_ptr dstinfo,
++ JDIMENSION x_crop_offset, JDIMENSION y_crop_offset,
+ jvirt_barray_ptr *src_coef_arrays,
+ jvirt_barray_ptr *dst_coef_arrays)
+ /* Vertical flip */
+ {
+ JDIMENSION MCU_rows, comp_height, dst_blk_x, dst_blk_y;
++ JDIMENSION x_crop_blocks, y_crop_blocks;
+ int ci, i, j, offset_y;
+ JBLOCKARRAY src_buffer, dst_buffer;
+ JBLOCKROW src_row_ptr, dst_row_ptr;
+@@ -131,33 +276,39 @@ do_flip_v (j_decompress_ptr srcinfo, j_c
+ * of odd-numbered rows.
+ * Partial iMCUs at the bottom edge are copied verbatim.
+ */
+- MCU_rows = dstinfo->image_height / (dstinfo->max_v_samp_factor * DCTSIZE);
++ MCU_rows = srcinfo->output_height /
++ (dstinfo->max_v_samp_factor * dstinfo_min_DCT_v_scaled_size);
+
+ for (ci = 0; ci < dstinfo->num_components; ci++) {
+ compptr = dstinfo->comp_info + ci;
+ comp_height = MCU_rows * compptr->v_samp_factor;
++ x_crop_blocks = x_crop_offset * compptr->h_samp_factor;
++ y_crop_blocks = y_crop_offset * compptr->v_samp_factor;
+ for (dst_blk_y = 0; dst_blk_y < compptr->height_in_blocks;
+ dst_blk_y += compptr->v_samp_factor) {
+ dst_buffer = (*srcinfo->mem->access_virt_barray)
+ ((j_common_ptr) srcinfo, dst_coef_arrays[ci], dst_blk_y,
+ (JDIMENSION) compptr->v_samp_factor, TRUE);
+- if (dst_blk_y < comp_height) {
++ if (y_crop_blocks + dst_blk_y < comp_height) {
+ /* Row is within the mirrorable area. */
+ src_buffer = (*srcinfo->mem->access_virt_barray)
+ ((j_common_ptr) srcinfo, src_coef_arrays[ci],
+- comp_height - dst_blk_y - (JDIMENSION) compptr->v_samp_factor,
++ comp_height - y_crop_blocks - dst_blk_y -
++ (JDIMENSION) compptr->v_samp_factor,
+ (JDIMENSION) compptr->v_samp_factor, FALSE);
+ } else {
+ /* Bottom-edge blocks will be copied verbatim. */
+ src_buffer = (*srcinfo->mem->access_virt_barray)
+- ((j_common_ptr) srcinfo, src_coef_arrays[ci], dst_blk_y,
++ ((j_common_ptr) srcinfo, src_coef_arrays[ci],
++ dst_blk_y + y_crop_blocks,
+ (JDIMENSION) compptr->v_samp_factor, FALSE);
+ }
+ for (offset_y = 0; offset_y < compptr->v_samp_factor; offset_y++) {
+- if (dst_blk_y < comp_height) {
++ if (y_crop_blocks + dst_blk_y < comp_height) {
+ /* Row is within the mirrorable area. */
+ dst_row_ptr = dst_buffer[offset_y];
+ src_row_ptr = src_buffer[compptr->v_samp_factor - offset_y - 1];
++ src_row_ptr += x_crop_blocks;
+ for (dst_blk_x = 0; dst_blk_x < compptr->width_in_blocks;
+ dst_blk_x++) {
+ dst_ptr = dst_row_ptr[dst_blk_x];
+@@ -173,7 +324,8 @@ do_flip_v (j_decompress_ptr srcinfo, j_c
+ }
+ } else {
+ /* Just copy row verbatim. */
+- jcopy_block_row(src_buffer[offset_y], dst_buffer[offset_y],
++ jcopy_block_row(src_buffer[offset_y] + x_crop_blocks,
++ dst_buffer[offset_y],
+ compptr->width_in_blocks);
+ }
+ }
+@@ -184,11 +336,12 @@ do_flip_v (j_decompress_ptr srcinfo, j_c
+
+ LOCAL(void)
+ do_transpose (j_decompress_ptr srcinfo, j_compress_ptr dstinfo,
++ JDIMENSION x_crop_offset, JDIMENSION y_crop_offset,
+ jvirt_barray_ptr *src_coef_arrays,
+ jvirt_barray_ptr *dst_coef_arrays)
+ /* Transpose source into destination */
+ {
+- JDIMENSION dst_blk_x, dst_blk_y;
++ JDIMENSION dst_blk_x, dst_blk_y, x_crop_blocks, y_crop_blocks;
+ int ci, i, j, offset_x, offset_y;
+ JBLOCKARRAY src_buffer, dst_buffer;
+ JCOEFPTR src_ptr, dst_ptr;
+@@ -201,6 +354,8 @@ do_transpose (j_decompress_ptr srcinfo,
+ */
+ for (ci = 0; ci < dstinfo->num_components; ci++) {
+ compptr = dstinfo->comp_info + ci;
++ x_crop_blocks = x_crop_offset * compptr->h_samp_factor;
++ y_crop_blocks = y_crop_offset * compptr->v_samp_factor;
+ for (dst_blk_y = 0; dst_blk_y < compptr->height_in_blocks;
+ dst_blk_y += compptr->v_samp_factor) {
+ dst_buffer = (*srcinfo->mem->access_virt_barray)
+@@ -210,11 +365,12 @@ do_transpose (j_decompress_ptr srcinfo,
+ for (dst_blk_x = 0; dst_blk_x < compptr->width_in_blocks;
+ dst_blk_x += compptr->h_samp_factor) {
+ src_buffer = (*srcinfo->mem->access_virt_barray)
+- ((j_common_ptr) srcinfo, src_coef_arrays[ci], dst_blk_x,
++ ((j_common_ptr) srcinfo, src_coef_arrays[ci],
++ dst_blk_x + x_crop_blocks,
+ (JDIMENSION) compptr->h_samp_factor, FALSE);
+ for (offset_x = 0; offset_x < compptr->h_samp_factor; offset_x++) {
+- src_ptr = src_buffer[offset_x][dst_blk_y + offset_y];
+ dst_ptr = dst_buffer[offset_y][dst_blk_x + offset_x];
++ src_ptr = src_buffer[offset_x][dst_blk_y + offset_y + y_crop_blocks];
+ for (i = 0; i < DCTSIZE; i++)
+ for (j = 0; j < DCTSIZE; j++)
+ dst_ptr[j*DCTSIZE+i] = src_ptr[i*DCTSIZE+j];
+@@ -228,6 +384,7 @@ do_transpose (j_decompress_ptr srcinfo,
+
+ LOCAL(void)
+ do_rot_90 (j_decompress_ptr srcinfo, j_compress_ptr dstinfo,
++ JDIMENSION x_crop_offset, JDIMENSION y_crop_offset,
+ jvirt_barray_ptr *src_coef_arrays,
+ jvirt_barray_ptr *dst_coef_arrays)
+ /* 90 degree rotation is equivalent to
+@@ -237,6 +394,7 @@ do_rot_90 (j_decompress_ptr srcinfo, j_c
+ */
+ {
+ JDIMENSION MCU_cols, comp_width, dst_blk_x, dst_blk_y;
++ JDIMENSION x_crop_blocks, y_crop_blocks;
+ int ci, i, j, offset_x, offset_y;
+ JBLOCKARRAY src_buffer, dst_buffer;
+ JCOEFPTR src_ptr, dst_ptr;
+@@ -246,11 +404,14 @@ do_rot_90 (j_decompress_ptr srcinfo, j_c
+ * at the (output) right edge properly. They just get transposed and
+ * not mirrored.
+ */
+- MCU_cols = dstinfo->image_width / (dstinfo->max_h_samp_factor * DCTSIZE);
++ MCU_cols = srcinfo->output_height /
++ (dstinfo->max_h_samp_factor * dstinfo_min_DCT_h_scaled_size);
+
+ for (ci = 0; ci < dstinfo->num_components; ci++) {
+ compptr = dstinfo->comp_info + ci;
+ comp_width = MCU_cols * compptr->h_samp_factor;
++ x_crop_blocks = x_crop_offset * compptr->h_samp_factor;
++ y_crop_blocks = y_crop_offset * compptr->v_samp_factor;
+ for (dst_blk_y = 0; dst_blk_y < compptr->height_in_blocks;
+ dst_blk_y += compptr->v_samp_factor) {
+ dst_buffer = (*srcinfo->mem->access_virt_barray)
+@@ -259,15 +420,26 @@ do_rot_90 (j_decompress_ptr srcinfo, j_c
+ for (offset_y = 0; offset_y < compptr->v_samp_factor; offset_y++) {
+ for (dst_blk_x = 0; dst_blk_x < compptr->width_in_blocks;
+ dst_blk_x += compptr->h_samp_factor) {
+- src_buffer = (*srcinfo->mem->access_virt_barray)
+- ((j_common_ptr) srcinfo, src_coef_arrays[ci], dst_blk_x,
+- (JDIMENSION) compptr->h_samp_factor, FALSE);
++ if (x_crop_blocks + dst_blk_x < comp_width) {
++ /* Block is within the mirrorable area. */
++ src_buffer = (*srcinfo->mem->access_virt_barray)
++ ((j_common_ptr) srcinfo, src_coef_arrays[ci],
++ comp_width - x_crop_blocks - dst_blk_x -
++ (JDIMENSION) compptr->h_samp_factor,
++ (JDIMENSION) compptr->h_samp_factor, FALSE);
++ } else {
++ /* Edge blocks are transposed but not mirrored. */
++ src_buffer = (*srcinfo->mem->access_virt_barray)
++ ((j_common_ptr) srcinfo, src_coef_arrays[ci],
++ dst_blk_x + x_crop_blocks,
++ (JDIMENSION) compptr->h_samp_factor, FALSE);
++ }
+ for (offset_x = 0; offset_x < compptr->h_samp_factor; offset_x++) {
+- src_ptr = src_buffer[offset_x][dst_blk_y + offset_y];
+- if (dst_blk_x < comp_width) {
++ dst_ptr = dst_buffer[offset_y][dst_blk_x + offset_x];
++ if (x_crop_blocks + dst_blk_x < comp_width) {
+ /* Block is within the mirrorable area. */
+- dst_ptr = dst_buffer[offset_y]
+- [comp_width - dst_blk_x - offset_x - 1];
++ src_ptr = src_buffer[compptr->h_samp_factor - offset_x - 1]
++ [dst_blk_y + offset_y + y_crop_blocks];
+ for (i = 0; i < DCTSIZE; i++) {
+ for (j = 0; j < DCTSIZE; j++)
+ dst_ptr[j*DCTSIZE+i] = src_ptr[i*DCTSIZE+j];
+@@ -277,7 +449,8 @@ do_rot_90 (j_decompress_ptr srcinfo, j_c
+ }
+ } else {
+ /* Edge blocks are transposed but not mirrored. */
+- dst_ptr = dst_buffer[offset_y][dst_blk_x + offset_x];
++ src_ptr = src_buffer[offset_x]
++ [dst_blk_y + offset_y + y_crop_blocks];
+ for (i = 0; i < DCTSIZE; i++)
+ for (j = 0; j < DCTSIZE; j++)
+ dst_ptr[j*DCTSIZE+i] = src_ptr[i*DCTSIZE+j];
+@@ -292,6 +465,7 @@ do_rot_90 (j_decompress_ptr srcinfo, j_c
+
+ LOCAL(void)
+ do_rot_270 (j_decompress_ptr srcinfo, j_compress_ptr dstinfo,
++ JDIMENSION x_crop_offset, JDIMENSION y_crop_offset,
+ jvirt_barray_ptr *src_coef_arrays,
+ jvirt_barray_ptr *dst_coef_arrays)
+ /* 270 degree rotation is equivalent to
+@@ -301,6 +475,7 @@ do_rot_270 (j_decompress_ptr srcinfo, j_
+ */
+ {
+ JDIMENSION MCU_rows, comp_height, dst_blk_x, dst_blk_y;
++ JDIMENSION x_crop_blocks, y_crop_blocks;
+ int ci, i, j, offset_x, offset_y;
+ JBLOCKARRAY src_buffer, dst_buffer;
+ JCOEFPTR src_ptr, dst_ptr;
+@@ -310,11 +485,14 @@ do_rot_270 (j_decompress_ptr srcinfo, j_
+ * at the (output) bottom edge properly. They just get transposed and
+ * not mirrored.
+ */
+- MCU_rows = dstinfo->image_height / (dstinfo->max_v_samp_factor * DCTSIZE);
++ MCU_rows = srcinfo->output_width /
++ (dstinfo->max_v_samp_factor * dstinfo_min_DCT_v_scaled_size);
+
+ for (ci = 0; ci < dstinfo->num_components; ci++) {
+ compptr = dstinfo->comp_info + ci;
+ comp_height = MCU_rows * compptr->v_samp_factor;
++ x_crop_blocks = x_crop_offset * compptr->h_samp_factor;
++ y_crop_blocks = y_crop_offset * compptr->v_samp_factor;
+ for (dst_blk_y = 0; dst_blk_y < compptr->height_in_blocks;
+ dst_blk_y += compptr->v_samp_factor) {
+ dst_buffer = (*srcinfo->mem->access_virt_barray)
+@@ -324,14 +502,15 @@ do_rot_270 (j_decompress_ptr srcinfo, j_
+ for (dst_blk_x = 0; dst_blk_x < compptr->width_in_blocks;
+ dst_blk_x += compptr->h_samp_factor) {
+ src_buffer = (*srcinfo->mem->access_virt_barray)
+- ((j_common_ptr) srcinfo, src_coef_arrays[ci], dst_blk_x,
++ ((j_common_ptr) srcinfo, src_coef_arrays[ci],
++ dst_blk_x + x_crop_blocks,
+ (JDIMENSION) compptr->h_samp_factor, FALSE);
+ for (offset_x = 0; offset_x < compptr->h_samp_factor; offset_x++) {
+ dst_ptr = dst_buffer[offset_y][dst_blk_x + offset_x];
+- if (dst_blk_y < comp_height) {
++ if (y_crop_blocks + dst_blk_y < comp_height) {
+ /* Block is within the mirrorable area. */
+ src_ptr = src_buffer[offset_x]
+- [comp_height - dst_blk_y - offset_y - 1];
++ [comp_height - y_crop_blocks - dst_blk_y - offset_y - 1];
+ for (i = 0; i < DCTSIZE; i++) {
+ for (j = 0; j < DCTSIZE; j++) {
+ dst_ptr[j*DCTSIZE+i] = src_ptr[i*DCTSIZE+j];
+@@ -341,7 +520,8 @@ do_rot_270 (j_decompress_ptr srcinfo, j_
+ }
+ } else {
+ /* Edge blocks are transposed but not mirrored. */
+- src_ptr = src_buffer[offset_x][dst_blk_y + offset_y];
++ src_ptr = src_buffer[offset_x]
++ [dst_blk_y + offset_y + y_crop_blocks];
+ for (i = 0; i < DCTSIZE; i++)
+ for (j = 0; j < DCTSIZE; j++)
+ dst_ptr[j*DCTSIZE+i] = src_ptr[i*DCTSIZE+j];
+@@ -356,6 +536,7 @@ do_rot_270 (j_decompress_ptr srcinfo, j_
+
+ LOCAL(void)
+ do_rot_180 (j_decompress_ptr srcinfo, j_compress_ptr dstinfo,
++ JDIMENSION x_crop_offset, JDIMENSION y_crop_offset,
+ jvirt_barray_ptr *src_coef_arrays,
+ jvirt_barray_ptr *dst_coef_arrays)
+ /* 180 degree rotation is equivalent to
+@@ -365,89 +546,95 @@ do_rot_180 (j_decompress_ptr srcinfo, j_
+ */
+ {
+ JDIMENSION MCU_cols, MCU_rows, comp_width, comp_height, dst_blk_x, dst_blk_y;
++ JDIMENSION x_crop_blocks, y_crop_blocks;
+ int ci, i, j, offset_y;
+ JBLOCKARRAY src_buffer, dst_buffer;
+ JBLOCKROW src_row_ptr, dst_row_ptr;
+ JCOEFPTR src_ptr, dst_ptr;
+ jpeg_component_info *compptr;
+
+- MCU_cols = dstinfo->image_width / (dstinfo->max_h_samp_factor * DCTSIZE);
+- MCU_rows = dstinfo->image_height / (dstinfo->max_v_samp_factor * DCTSIZE);
++ MCU_cols = srcinfo->output_width /
++ (dstinfo->max_h_samp_factor * dstinfo_min_DCT_h_scaled_size);
++ MCU_rows = srcinfo->output_height /
++ (dstinfo->max_v_samp_factor * dstinfo_min_DCT_v_scaled_size);
+
+ for (ci = 0; ci < dstinfo->num_components; ci++) {
+ compptr = dstinfo->comp_info + ci;
+ comp_width = MCU_cols * compptr->h_samp_factor;
+ comp_height = MCU_rows * compptr->v_samp_factor;
++ x_crop_blocks = x_crop_offset * compptr->h_samp_factor;
++ y_crop_blocks = y_crop_offset * compptr->v_samp_factor;
+ for (dst_blk_y = 0; dst_blk_y < compptr->height_in_blocks;
+ dst_blk_y += compptr->v_samp_factor) {
+ dst_buffer = (*srcinfo->mem->access_virt_barray)
+ ((j_common_ptr) srcinfo, dst_coef_arrays[ci], dst_blk_y,
+ (JDIMENSION) compptr->v_samp_factor, TRUE);
+- if (dst_blk_y < comp_height) {
++ if (y_crop_blocks + dst_blk_y < comp_height) {
+ /* Row is within the vertically mirrorable area. */
+ src_buffer = (*srcinfo->mem->access_virt_barray)
+ ((j_common_ptr) srcinfo, src_coef_arrays[ci],
+- comp_height - dst_blk_y - (JDIMENSION) compptr->v_samp_factor,
++ comp_height - y_crop_blocks - dst_blk_y -
++ (JDIMENSION) compptr->v_samp_factor,
+ (JDIMENSION) compptr->v_samp_factor, FALSE);
+ } else {
+ /* Bottom-edge rows are only mirrored horizontally. */
+ src_buffer = (*srcinfo->mem->access_virt_barray)
+- ((j_common_ptr) srcinfo, src_coef_arrays[ci], dst_blk_y,
++ ((j_common_ptr) srcinfo, src_coef_arrays[ci],
++ dst_blk_y + y_crop_blocks,
+ (JDIMENSION) compptr->v_samp_factor, FALSE);
+ }
+ for (offset_y = 0; offset_y < compptr->v_samp_factor; offset_y++) {
+- if (dst_blk_y < comp_height) {
++ dst_row_ptr = dst_buffer[offset_y];
++ if (y_crop_blocks + dst_blk_y < comp_height) {
+ /* Row is within the mirrorable area. */
+- dst_row_ptr = dst_buffer[offset_y];
+ src_row_ptr = src_buffer[compptr->v_samp_factor - offset_y - 1];
+- /* Process the blocks that can be mirrored both ways. */
+- for (dst_blk_x = 0; dst_blk_x < comp_width; dst_blk_x++) {
++ for (dst_blk_x = 0; dst_blk_x < compptr->width_in_blocks; dst_blk_x++) {
+ dst_ptr = dst_row_ptr[dst_blk_x];
+- src_ptr = src_row_ptr[comp_width - dst_blk_x - 1];
+- for (i = 0; i < DCTSIZE; i += 2) {
+- /* For even row, negate every odd column. */
+- for (j = 0; j < DCTSIZE; j += 2) {
+- *dst_ptr++ = *src_ptr++;
+- *dst_ptr++ = - *src_ptr++;
++ if (x_crop_blocks + dst_blk_x < comp_width) {
++ /* Process the blocks that can be mirrored both ways. */
++ src_ptr = src_row_ptr[comp_width - x_crop_blocks - dst_blk_x - 1];
++ for (i = 0; i < DCTSIZE; i += 2) {
++ /* For even row, negate every odd column. */
++ for (j = 0; j < DCTSIZE; j += 2) {
++ *dst_ptr++ = *src_ptr++;
++ *dst_ptr++ = - *src_ptr++;
++ }
++ /* For odd row, negate every even column. */
++ for (j = 0; j < DCTSIZE; j += 2) {
++ *dst_ptr++ = - *src_ptr++;
++ *dst_ptr++ = *src_ptr++;
++ }
+ }
+- /* For odd row, negate every even column. */
+- for (j = 0; j < DCTSIZE; j += 2) {
+- *dst_ptr++ = - *src_ptr++;
+- *dst_ptr++ = *src_ptr++;
++ } else {
++ /* Any remaining right-edge blocks are only mirrored vertically. */
++ src_ptr = src_row_ptr[x_crop_blocks + dst_blk_x];
++ for (i = 0; i < DCTSIZE; i += 2) {
++ for (j = 0; j < DCTSIZE; j++)
++ *dst_ptr++ = *src_ptr++;
++ for (j = 0; j < DCTSIZE; j++)
++ *dst_ptr++ = - *src_ptr++;
+ }
+ }
+ }
+- /* Any remaining right-edge blocks are only mirrored vertically. */
+- for (; dst_blk_x < compptr->width_in_blocks; dst_blk_x++) {
+- dst_ptr = dst_row_ptr[dst_blk_x];
+- src_ptr = src_row_ptr[dst_blk_x];
+- for (i = 0; i < DCTSIZE; i += 2) {
+- for (j = 0; j < DCTSIZE; j++)
+- *dst_ptr++ = *src_ptr++;
+- for (j = 0; j < DCTSIZE; j++)
+- *dst_ptr++ = - *src_ptr++;
+- }
+- }
+ } else {
+ /* Remaining rows are just mirrored horizontally. */
+- dst_row_ptr = dst_buffer[offset_y];
+ src_row_ptr = src_buffer[offset_y];
+- /* Process the blocks that can be mirrored. */
+- for (dst_blk_x = 0; dst_blk_x < comp_width; dst_blk_x++) {
+- dst_ptr = dst_row_ptr[dst_blk_x];
+- src_ptr = src_row_ptr[comp_width - dst_blk_x - 1];
+- for (i = 0; i < DCTSIZE2; i += 2) {
+- *dst_ptr++ = *src_ptr++;
+- *dst_ptr++ = - *src_ptr++;
++ for (dst_blk_x = 0; dst_blk_x < compptr->width_in_blocks; dst_blk_x++) {
++ if (x_crop_blocks + dst_blk_x < comp_width) {
++ /* Process the blocks that can be mirrored. */
++ dst_ptr = dst_row_ptr[dst_blk_x];
++ src_ptr = src_row_ptr[comp_width - x_crop_blocks - dst_blk_x - 1];
++ for (i = 0; i < DCTSIZE2; i += 2) {
++ *dst_ptr++ = *src_ptr++;
++ *dst_ptr++ = - *src_ptr++;
++ }
++ } else {
++ /* Any remaining right-edge blocks are only copied. */
++ jcopy_block_row(src_row_ptr + dst_blk_x + x_crop_blocks,
++ dst_row_ptr + dst_blk_x,
++ (JDIMENSION) 1);
+ }
+ }
+- /* Any remaining right-edge blocks are only copied. */
+- for (; dst_blk_x < compptr->width_in_blocks; dst_blk_x++) {
+- dst_ptr = dst_row_ptr[dst_blk_x];
+- src_ptr = src_row_ptr[dst_blk_x];
+- for (i = 0; i < DCTSIZE2; i++)
+- *dst_ptr++ = *src_ptr++;
+- }
+ }
+ }
+ }
+@@ -457,6 +644,7 @@ do_rot_180 (j_decompress_ptr srcinfo, j_
+
+ LOCAL(void)
+ do_transverse (j_decompress_ptr srcinfo, j_compress_ptr dstinfo,
++ JDIMENSION x_crop_offset, JDIMENSION y_crop_offset,
+ jvirt_barray_ptr *src_coef_arrays,
+ jvirt_barray_ptr *dst_coef_arrays)
+ /* Transverse transpose is equivalent to
+@@ -470,18 +658,23 @@ do_transverse (j_decompress_ptr srcinfo,
+ */
+ {
+ JDIMENSION MCU_cols, MCU_rows, comp_width, comp_height, dst_blk_x, dst_blk_y;
++ JDIMENSION x_crop_blocks, y_crop_blocks;
+ int ci, i, j, offset_x, offset_y;
+ JBLOCKARRAY src_buffer, dst_buffer;
+ JCOEFPTR src_ptr, dst_ptr;
+ jpeg_component_info *compptr;
+
+- MCU_cols = dstinfo->image_width / (dstinfo->max_h_samp_factor * DCTSIZE);
+- MCU_rows = dstinfo->image_height / (dstinfo->max_v_samp_factor * DCTSIZE);
++ MCU_cols = srcinfo->output_height /
++ (dstinfo->max_h_samp_factor * dstinfo_min_DCT_h_scaled_size);
++ MCU_rows = srcinfo->output_width /
++ (dstinfo->max_v_samp_factor * dstinfo_min_DCT_v_scaled_size);
+
+ for (ci = 0; ci < dstinfo->num_components; ci++) {
+ compptr = dstinfo->comp_info + ci;
+ comp_width = MCU_cols * compptr->h_samp_factor;
+ comp_height = MCU_rows * compptr->v_samp_factor;
++ x_crop_blocks = x_crop_offset * compptr->h_samp_factor;
++ y_crop_blocks = y_crop_offset * compptr->v_samp_factor;
+ for (dst_blk_y = 0; dst_blk_y < compptr->height_in_blocks;
+ dst_blk_y += compptr->v_samp_factor) {
+ dst_buffer = (*srcinfo->mem->access_virt_barray)
+@@ -490,17 +683,26 @@ do_transverse (j_decompress_ptr srcinfo,
+ for (offset_y = 0; offset_y < compptr->v_samp_factor; offset_y++) {
+ for (dst_blk_x = 0; dst_blk_x < compptr->width_in_blocks;
+ dst_blk_x += compptr->h_samp_factor) {
+- src_buffer = (*srcinfo->mem->access_virt_barray)
+- ((j_common_ptr) srcinfo, src_coef_arrays[ci], dst_blk_x,
+- (JDIMENSION) compptr->h_samp_factor, FALSE);
++ if (x_crop_blocks + dst_blk_x < comp_width) {
++ /* Block is within the mirrorable area. */
++ src_buffer = (*srcinfo->mem->access_virt_barray)
++ ((j_common_ptr) srcinfo, src_coef_arrays[ci],
++ comp_width - x_crop_blocks - dst_blk_x -
++ (JDIMENSION) compptr->h_samp_factor,
++ (JDIMENSION) compptr->h_samp_factor, FALSE);
++ } else {
++ src_buffer = (*srcinfo->mem->access_virt_barray)
++ ((j_common_ptr) srcinfo, src_coef_arrays[ci],
++ dst_blk_x + x_crop_blocks,
++ (JDIMENSION) compptr->h_samp_factor, FALSE);
++ }
+ for (offset_x = 0; offset_x < compptr->h_samp_factor; offset_x++) {
+- if (dst_blk_y < comp_height) {
+- src_ptr = src_buffer[offset_x]
+- [comp_height - dst_blk_y - offset_y - 1];
+- if (dst_blk_x < comp_width) {
++ dst_ptr = dst_buffer[offset_y][dst_blk_x + offset_x];
++ if (y_crop_blocks + dst_blk_y < comp_height) {
++ if (x_crop_blocks + dst_blk_x < comp_width) {
+ /* Block is within the mirrorable area. */
+- dst_ptr = dst_buffer[offset_y]
+- [comp_width - dst_blk_x - offset_x - 1];
++ src_ptr = src_buffer[compptr->h_samp_factor - offset_x - 1]
++ [comp_height - y_crop_blocks - dst_blk_y - offset_y - 1];
+ for (i = 0; i < DCTSIZE; i++) {
+ for (j = 0; j < DCTSIZE; j++) {
+ dst_ptr[j*DCTSIZE+i] = src_ptr[i*DCTSIZE+j];
+@@ -516,7 +718,8 @@ do_transverse (j_decompress_ptr srcinfo,
+ }
+ } else {
+ /* Right-edge blocks are mirrored in y only */
+- dst_ptr = dst_buffer[offset_y][dst_blk_x + offset_x];
++ src_ptr = src_buffer[offset_x]
++ [comp_height - y_crop_blocks - dst_blk_y - offset_y - 1];
+ for (i = 0; i < DCTSIZE; i++) {
+ for (j = 0; j < DCTSIZE; j++) {
+ dst_ptr[j*DCTSIZE+i] = src_ptr[i*DCTSIZE+j];
+@@ -526,11 +729,10 @@ do_transverse (j_decompress_ptr srcinfo,
+ }
+ }
+ } else {
+- src_ptr = src_buffer[offset_x][dst_blk_y + offset_y];
+- if (dst_blk_x < comp_width) {
++ if (x_crop_blocks + dst_blk_x < comp_width) {
+ /* Bottom-edge blocks are mirrored in x only */
+- dst_ptr = dst_buffer[offset_y]
+- [comp_width - dst_blk_x - offset_x - 1];
++ src_ptr = src_buffer[compptr->h_samp_factor - offset_x - 1]
++ [dst_blk_y + offset_y + y_crop_blocks];
+ for (i = 0; i < DCTSIZE; i++) {
+ for (j = 0; j < DCTSIZE; j++)
+ dst_ptr[j*DCTSIZE+i] = src_ptr[i*DCTSIZE+j];
+@@ -540,7 +742,8 @@ do_transverse (j_decompress_ptr srcinfo,
+ }
+ } else {
+ /* At lower right corner, just transpose, no mirroring */
+- dst_ptr = dst_buffer[offset_y][dst_blk_x + offset_x];
++ src_ptr = src_buffer[offset_x]
++ [dst_blk_y + offset_y + y_crop_blocks];
+ for (i = 0; i < DCTSIZE; i++)
+ for (j = 0; j < DCTSIZE; j++)
+ dst_ptr[j*DCTSIZE+i] = src_ptr[i*DCTSIZE+j];
+@@ -554,83 +757,372 @@ do_transverse (j_decompress_ptr srcinfo,
+ }
+
+
++/* Parse an unsigned integer: subroutine for jtransform_parse_crop_spec.
++ * Returns TRUE if valid integer found, FALSE if not.
++ * *strptr is advanced over the digit string, and *result is set to its value.
++ */
++
++LOCAL(boolean)
++jt_read_integer (const char ** strptr, JDIMENSION * result)
++{
++ const char * ptr = *strptr;
++ JDIMENSION val = 0;
++
++ for (; isdigit(*ptr); ptr++) {
++ val = val * 10 + (JDIMENSION) (*ptr - '0');
++ }
++ *result = val;
++ if (ptr == *strptr)
++ return FALSE; /* oops, no digits */
++ *strptr = ptr;
++ return TRUE;
++}
++
++
++/* Parse a crop specification (written in X11 geometry style).
++ * The routine returns TRUE if the spec string is valid, FALSE if not.
++ *
++ * The crop spec string should have the format
++ * <width>[f]x<height>[f]{+-}<xoffset>{+-}<yoffset>
++ * where width, height, xoffset, and yoffset are unsigned integers.
++ * Each of the elements can be omitted to indicate a default value.
++ * (A weakness of this style is that it is not possible to omit xoffset
++ * while specifying yoffset, since they look alike.)
++ *
++ * This code is loosely based on XParseGeometry from the X11 distribution.
++ */
++
++GLOBAL(boolean)
++jtransform_parse_crop_spec (jpeg_transform_info *info, const char *spec)
++{
++ info->crop = FALSE;
++ info->crop_width_set = JCROP_UNSET;
++ info->crop_height_set = JCROP_UNSET;
++ info->crop_xoffset_set = JCROP_UNSET;
++ info->crop_yoffset_set = JCROP_UNSET;
++
++ if (isdigit(*spec)) {
++ /* fetch width */
++ if (! jt_read_integer(&spec, &info->crop_width))
++ return FALSE;
++ if (*spec == 'f' || *spec == 'F') {
++ spec++;
++ info->crop_width_set = JCROP_FORCE;
++ } else
++ info->crop_width_set = JCROP_POS;
++ }
++ if (*spec == 'x' || *spec == 'X') {
++ /* fetch height */
++ spec++;
++ if (! jt_read_integer(&spec, &info->crop_height))
++ return FALSE;
++ if (*spec == 'f' || *spec == 'F') {
++ spec++;
++ info->crop_height_set = JCROP_FORCE;
++ } else
++ info->crop_height_set = JCROP_POS;
++ }
++ if (*spec == '+' || *spec == '-') {
++ /* fetch xoffset */
++ info->crop_xoffset_set = (*spec == '-') ? JCROP_NEG : JCROP_POS;
++ spec++;
++ if (! jt_read_integer(&spec, &info->crop_xoffset))
++ return FALSE;
++ }
++ if (*spec == '+' || *spec == '-') {
++ /* fetch yoffset */
++ info->crop_yoffset_set = (*spec == '-') ? JCROP_NEG : JCROP_POS;
++ spec++;
++ if (! jt_read_integer(&spec, &info->crop_yoffset))
++ return FALSE;
++ }
++ /* We had better have gotten to the end of the string. */
++ if (*spec != '\0')
++ return FALSE;
++ info->crop = TRUE;
++ return TRUE;
++}
++
++
++/* Trim off any partial iMCUs on the indicated destination edge */
++
++LOCAL(void)
++trim_right_edge (jpeg_transform_info *info, JDIMENSION full_width)
++{
++ JDIMENSION MCU_cols;
++
++ MCU_cols = info->output_width / info->iMCU_sample_width;
++ if (MCU_cols > 0 && info->x_crop_offset + MCU_cols ==
++ full_width / info->iMCU_sample_width)
++ info->output_width = MCU_cols * info->iMCU_sample_width;
++}
++
++LOCAL(void)
++trim_bottom_edge (jpeg_transform_info *info, JDIMENSION full_height)
++{
++ JDIMENSION MCU_rows;
++
++ MCU_rows = info->output_height / info->iMCU_sample_height;
++ if (MCU_rows > 0 && info->y_crop_offset + MCU_rows ==
++ full_height / info->iMCU_sample_height)
++ info->output_height = MCU_rows * info->iMCU_sample_height;
++}
++
++
+ /* Request any required workspace.
+ *
++ * This routine figures out the size that the output image will be
++ * (which implies that all the transform parameters must be set before
++ * it is called).
++ *
+ * We allocate the workspace virtual arrays from the source decompression
+ * object, so that all the arrays (both the original data and the workspace)
+ * will be taken into account while making memory management decisions.
+ * Hence, this routine must be called after jpeg_read_header (which reads
+ * the image dimensions) and before jpeg_read_coefficients (which realizes
+ * the source's virtual arrays).
++ *
++ * This function returns FALSE right away if -perfect is given
++ * and transformation is not perfect. Otherwise returns TRUE.
+ */
+
+-GLOBAL(void)
++GLOBAL(boolean)
+ jtransform_request_workspace (j_decompress_ptr srcinfo,
+ jpeg_transform_info *info)
+ {
+- jvirt_barray_ptr *coef_arrays = NULL;
++ jvirt_barray_ptr *coef_arrays;
++ boolean need_workspace, transpose_it;
+ jpeg_component_info *compptr;
+- int ci;
++ JDIMENSION xoffset, yoffset;
++ JDIMENSION width_in_iMCUs, height_in_iMCUs;
++ JDIMENSION width_in_blocks, height_in_blocks;
++ int ci, h_samp_factor, v_samp_factor;
+
++ /* Determine number of components in output image */
+ if (info->force_grayscale &&
+ srcinfo->jpeg_color_space == JCS_YCbCr &&
+- srcinfo->num_components == 3) {
++ srcinfo->num_components == 3)
+ /* We'll only process the first component */
+ info->num_components = 1;
+- } else {
++ else
+ /* Process all the components */
+ info->num_components = srcinfo->num_components;
++
++ /* Compute output image dimensions and related values. */
++#if JPEG_LIB_VERSION >= 80
++ jpeg_core_output_dimensions(srcinfo);
++#else
++ srcinfo->output_width = srcinfo->image_width;
++ srcinfo->output_height = srcinfo->image_height;
++#endif
++
++ /* Return right away if -perfect is given and transformation is not perfect.
++ */
++ if (info->perfect) {
++ if (info->num_components == 1) {
++ if (!jtransform_perfect_transform(srcinfo->output_width,
++ srcinfo->output_height,
++ srcinfo->_min_DCT_h_scaled_size,
++ srcinfo->_min_DCT_v_scaled_size,
++ info->transform))
++ return FALSE;
++ } else {
++ if (!jtransform_perfect_transform(srcinfo->output_width,
++ srcinfo->output_height,
++ srcinfo->max_h_samp_factor * srcinfo->_min_DCT_h_scaled_size,
++ srcinfo->max_v_samp_factor * srcinfo->_min_DCT_v_scaled_size,
++ info->transform))
++ return FALSE;
++ }
++ }
++
++ /* If there is only one output component, force the iMCU size to be 1;
++ * else use the source iMCU size. (This allows us to do the right thing
++ * when reducing color to grayscale, and also provides a handy way of
++ * cleaning up "funny" grayscale images whose sampling factors are not 1x1.)
++ */
++ switch (info->transform) {
++ case JXFORM_TRANSPOSE:
++ case JXFORM_TRANSVERSE:
++ case JXFORM_ROT_90:
++ case JXFORM_ROT_270:
++ info->output_width = srcinfo->output_height;
++ info->output_height = srcinfo->output_width;
++ if (info->num_components == 1) {
++ info->iMCU_sample_width = srcinfo->_min_DCT_v_scaled_size;
++ info->iMCU_sample_height = srcinfo->_min_DCT_h_scaled_size;
++ } else {
++ info->iMCU_sample_width =
++ srcinfo->max_v_samp_factor * srcinfo->_min_DCT_v_scaled_size;
++ info->iMCU_sample_height =
++ srcinfo->max_h_samp_factor * srcinfo->_min_DCT_h_scaled_size;
++ }
++ break;
++ default:
++ info->output_width = srcinfo->output_width;
++ info->output_height = srcinfo->output_height;
++ if (info->num_components == 1) {
++ info->iMCU_sample_width = srcinfo->_min_DCT_h_scaled_size;
++ info->iMCU_sample_height = srcinfo->_min_DCT_v_scaled_size;
++ } else {
++ info->iMCU_sample_width =
++ srcinfo->max_h_samp_factor * srcinfo->_min_DCT_h_scaled_size;
++ info->iMCU_sample_height =
++ srcinfo->max_v_samp_factor * srcinfo->_min_DCT_v_scaled_size;
++ }
++ break;
+ }
+
++ /* If cropping has been requested, compute the crop area's position and
++ * dimensions, ensuring that its upper left corner falls at an iMCU boundary.
++ */
++ if (info->crop) {
++ /* Insert default values for unset crop parameters */
++ if (info->crop_xoffset_set == JCROP_UNSET)
++ info->crop_xoffset = 0; /* default to +0 */
++ if (info->crop_yoffset_set == JCROP_UNSET)
++ info->crop_yoffset = 0; /* default to +0 */
++ if (info->crop_xoffset >= info->output_width ||
++ info->crop_yoffset >= info->output_height)
++ ERREXIT(srcinfo, JERR_BAD_CROP_SPEC);
++ if (info->crop_width_set == JCROP_UNSET)
++ info->crop_width = info->output_width - info->crop_xoffset;
++ if (info->crop_height_set == JCROP_UNSET)
++ info->crop_height = info->output_height - info->crop_yoffset;
++ /* Ensure parameters are valid */
++ if (info->crop_width <= 0 || info->crop_width > info->output_width ||
++ info->crop_height <= 0 || info->crop_height > info->output_height ||
++ info->crop_xoffset > info->output_width - info->crop_width ||
++ info->crop_yoffset > info->output_height - info->crop_height)
++ ERREXIT(srcinfo, JERR_BAD_CROP_SPEC);
++ /* Convert negative crop offsets into regular offsets */
++ if (info->crop_xoffset_set == JCROP_NEG)
++ xoffset = info->output_width - info->crop_width - info->crop_xoffset;
++ else
++ xoffset = info->crop_xoffset;
++ if (info->crop_yoffset_set == JCROP_NEG)
++ yoffset = info->output_height - info->crop_height - info->crop_yoffset;
++ else
++ yoffset = info->crop_yoffset;
++ /* Now adjust so that upper left corner falls at an iMCU boundary */
++ if (info->crop_width_set == JCROP_FORCE)
++ info->output_width = info->crop_width;
++ else
++ info->output_width =
++ info->crop_width + (xoffset % info->iMCU_sample_width);
++ if (info->crop_height_set == JCROP_FORCE)
++ info->output_height = info->crop_height;
++ else
++ info->output_height =
++ info->crop_height + (yoffset % info->iMCU_sample_height);
++ /* Save x/y offsets measured in iMCUs */
++ info->x_crop_offset = xoffset / info->iMCU_sample_width;
++ info->y_crop_offset = yoffset / info->iMCU_sample_height;
++ } else {
++ info->x_crop_offset = 0;
++ info->y_crop_offset = 0;
++ }
++
++ /* Figure out whether we need workspace arrays,
++ * and if so whether they are transposed relative to the source.
++ */
++ need_workspace = FALSE;
++ transpose_it = FALSE;
+ switch (info->transform) {
+ case JXFORM_NONE:
++ if (info->x_crop_offset != 0 || info->y_crop_offset != 0)
++ need_workspace = TRUE;
++ /* No workspace needed if neither cropping nor transforming */
++ break;
+ case JXFORM_FLIP_H:
+- /* Don't need a workspace array */
++ if (info->trim)
++ trim_right_edge(info, srcinfo->output_width);
++ if (info->y_crop_offset != 0 || info->slow_hflip)
++ need_workspace = TRUE;
++ /* do_flip_h_no_crop doesn't need a workspace array */
+ break;
+ case JXFORM_FLIP_V:
+- case JXFORM_ROT_180:
+- /* Need workspace arrays having same dimensions as source image.
+- * Note that we allocate arrays padded out to the next iMCU boundary,
+- * so that transform routines need not worry about missing edge blocks.
+- */
+- coef_arrays = (jvirt_barray_ptr *)
+- (*srcinfo->mem->alloc_small) ((j_common_ptr) srcinfo, JPOOL_IMAGE,
+- SIZEOF(jvirt_barray_ptr) * info->num_components);
+- for (ci = 0; ci < info->num_components; ci++) {
+- compptr = srcinfo->comp_info + ci;
+- coef_arrays[ci] = (*srcinfo->mem->request_virt_barray)
+- ((j_common_ptr) srcinfo, JPOOL_IMAGE, FALSE,
+- (JDIMENSION) jround_up((long) compptr->width_in_blocks,
+- (long) compptr->h_samp_factor),
+- (JDIMENSION) jround_up((long) compptr->height_in_blocks,
+- (long) compptr->v_samp_factor),
+- (JDIMENSION) compptr->v_samp_factor);
+- }
++ if (info->trim)
++ trim_bottom_edge(info, srcinfo->output_height);
++ /* Need workspace arrays having same dimensions as source image. */
++ need_workspace = TRUE;
+ break;
+ case JXFORM_TRANSPOSE:
++ /* transpose does NOT have to trim anything */
++ /* Need workspace arrays having transposed dimensions. */
++ need_workspace = TRUE;
++ transpose_it = TRUE;
++ break;
+ case JXFORM_TRANSVERSE:
++ if (info->trim) {
++ trim_right_edge(info, srcinfo->output_height);
++ trim_bottom_edge(info, srcinfo->output_width);
++ }
++ /* Need workspace arrays having transposed dimensions. */
++ need_workspace = TRUE;
++ transpose_it = TRUE;
++ break;
+ case JXFORM_ROT_90:
++ if (info->trim)
++ trim_right_edge(info, srcinfo->output_height);
++ /* Need workspace arrays having transposed dimensions. */
++ need_workspace = TRUE;
++ transpose_it = TRUE;
++ break;
++ case JXFORM_ROT_180:
++ if (info->trim) {
++ trim_right_edge(info, srcinfo->output_width);
++ trim_bottom_edge(info, srcinfo->output_height);
++ }
++ /* Need workspace arrays having same dimensions as source image. */
++ need_workspace = TRUE;
++ break;
+ case JXFORM_ROT_270:
+- /* Need workspace arrays having transposed dimensions.
+- * Note that we allocate arrays padded out to the next iMCU boundary,
+- * so that transform routines need not worry about missing edge blocks.
+- */
++ if (info->trim)
++ trim_bottom_edge(info, srcinfo->output_width);
++ /* Need workspace arrays having transposed dimensions. */
++ need_workspace = TRUE;
++ transpose_it = TRUE;
++ break;
++ }
++
++ /* Allocate workspace if needed.
++ * Note that we allocate arrays padded out to the next iMCU boundary,
++ * so that transform routines need not worry about missing edge blocks.
++ */
++ if (need_workspace) {
+ coef_arrays = (jvirt_barray_ptr *)
+ (*srcinfo->mem->alloc_small) ((j_common_ptr) srcinfo, JPOOL_IMAGE,
+- SIZEOF(jvirt_barray_ptr) * info->num_components);
++ SIZEOF(jvirt_barray_ptr) * info->num_components);
++ width_in_iMCUs = (JDIMENSION)
++ jdiv_round_up((long) info->output_width,
++ (long) info->iMCU_sample_width);
++ height_in_iMCUs = (JDIMENSION)
++ jdiv_round_up((long) info->output_height,
++ (long) info->iMCU_sample_height);
+ for (ci = 0; ci < info->num_components; ci++) {
+ compptr = srcinfo->comp_info + ci;
++ if (info->num_components == 1) {
++ /* we're going to force samp factors to 1x1 in this case */
++ h_samp_factor = v_samp_factor = 1;
++ } else if (transpose_it) {
++ h_samp_factor = compptr->v_samp_factor;
++ v_samp_factor = compptr->h_samp_factor;
++ } else {
++ h_samp_factor = compptr->h_samp_factor;
++ v_samp_factor = compptr->v_samp_factor;
++ }
++ width_in_blocks = width_in_iMCUs * h_samp_factor;
++ height_in_blocks = height_in_iMCUs * v_samp_factor;
+ coef_arrays[ci] = (*srcinfo->mem->request_virt_barray)
+ ((j_common_ptr) srcinfo, JPOOL_IMAGE, FALSE,
+- (JDIMENSION) jround_up((long) compptr->height_in_blocks,
+- (long) compptr->v_samp_factor),
+- (JDIMENSION) jround_up((long) compptr->width_in_blocks,
+- (long) compptr->h_samp_factor),
+- (JDIMENSION) compptr->h_samp_factor);
++ width_in_blocks, height_in_blocks, (JDIMENSION) v_samp_factor);
+ }
+- break;
+- }
+- info->workspace_coef_arrays = coef_arrays;
++ info->workspace_coef_arrays = coef_arrays;
++ } else
++ info->workspace_coef_arrays = NULL;
++
++ return TRUE;
+ }
+
+
+@@ -642,13 +1134,18 @@ transpose_critical_parameters (j_compres
+ int tblno, i, j, ci, itemp;
+ jpeg_component_info *compptr;
+ JQUANT_TBL *qtblptr;
+- JDIMENSION dtemp;
++ JDIMENSION jtemp;
+ UINT16 qtemp;
+
+- /* Transpose basic image dimensions */
+- dtemp = dstinfo->image_width;
++ /* Transpose image dimensions */
++ jtemp = dstinfo->image_width;
+ dstinfo->image_width = dstinfo->image_height;
+- dstinfo->image_height = dtemp;
++ dstinfo->image_height = jtemp;
++#if JPEG_LIB_VERSION >= 70
++ itemp = dstinfo->min_DCT_h_scaled_size;
++ dstinfo->min_DCT_h_scaled_size = dstinfo->min_DCT_v_scaled_size;
++ dstinfo->min_DCT_v_scaled_size = itemp;
++#endif
+
+ /* Transpose sampling factors */
+ for (ci = 0; ci < dstinfo->num_components; ci++) {
+@@ -674,47 +1171,162 @@ transpose_critical_parameters (j_compres
+ }
+
+
+-/* Trim off any partial iMCUs on the indicated destination edge */
++/* Adjust Exif image parameters.
++ *
++ * We try to adjust the Tags ExifImageWidth and ExifImageHeight if possible.
++ */
+
++#if JPEG_LIB_VERSION >= 70
+ LOCAL(void)
+-trim_right_edge (j_compress_ptr dstinfo)
++adjust_exif_parameters (JOCTET FAR * data, unsigned int length,
++ JDIMENSION new_width, JDIMENSION new_height)
+ {
+- int ci, max_h_samp_factor;
+- JDIMENSION MCU_cols;
++ boolean is_motorola; /* Flag for byte order */
++ unsigned int number_of_tags, tagnum;
++ unsigned int firstoffset, offset;
++ JDIMENSION new_value;
++
++ if (length < 12) return; /* Length of an IFD entry */
++
++ /* Discover byte order */
++ if (GETJOCTET(data[0]) == 0x49 && GETJOCTET(data[1]) == 0x49)
++ is_motorola = FALSE;
++ else if (GETJOCTET(data[0]) == 0x4D && GETJOCTET(data[1]) == 0x4D)
++ is_motorola = TRUE;
++ else
++ return;
++
++ /* Check Tag Mark */
++ if (is_motorola) {
++ if (GETJOCTET(data[2]) != 0) return;
++ if (GETJOCTET(data[3]) != 0x2A) return;
++ } else {
++ if (GETJOCTET(data[3]) != 0) return;
++ if (GETJOCTET(data[2]) != 0x2A) return;
++ }
+
+- /* We have to compute max_h_samp_factor ourselves,
+- * because it hasn't been set yet in the destination
+- * (and we don't want to use the source's value).
+- */
+- max_h_samp_factor = 1;
+- for (ci = 0; ci < dstinfo->num_components; ci++) {
+- int h_samp_factor = dstinfo->comp_info[ci].h_samp_factor;
+- max_h_samp_factor = MAX(max_h_samp_factor, h_samp_factor);
++ /* Get first IFD offset (offset to IFD0) */
++ if (is_motorola) {
++ if (GETJOCTET(data[4]) != 0) return;
++ if (GETJOCTET(data[5]) != 0) return;
++ firstoffset = GETJOCTET(data[6]);
++ firstoffset <<= 8;
++ firstoffset += GETJOCTET(data[7]);
++ } else {
++ if (GETJOCTET(data[7]) != 0) return;
++ if (GETJOCTET(data[6]) != 0) return;
++ firstoffset = GETJOCTET(data[5]);
++ firstoffset <<= 8;
++ firstoffset += GETJOCTET(data[4]);
+ }
+- MCU_cols = dstinfo->image_width / (max_h_samp_factor * DCTSIZE);
+- if (MCU_cols > 0) /* can't trim to 0 pixels */
+- dstinfo->image_width = MCU_cols * (max_h_samp_factor * DCTSIZE);
+-}
++ if (firstoffset > length - 2) return; /* check end of data segment */
+
+-LOCAL(void)
+-trim_bottom_edge (j_compress_ptr dstinfo)
+-{
+- int ci, max_v_samp_factor;
+- JDIMENSION MCU_rows;
++ /* Get the number of directory entries contained in this IFD */
++ if (is_motorola) {
++ number_of_tags = GETJOCTET(data[firstoffset]);
++ number_of_tags <<= 8;
++ number_of_tags += GETJOCTET(data[firstoffset+1]);
++ } else {
++ number_of_tags = GETJOCTET(data[firstoffset+1]);
++ number_of_tags <<= 8;
++ number_of_tags += GETJOCTET(data[firstoffset]);
++ }
++ if (number_of_tags == 0) return;
++ firstoffset += 2;
+
+- /* We have to compute max_v_samp_factor ourselves,
+- * because it hasn't been set yet in the destination
+- * (and we don't want to use the source's value).
+- */
+- max_v_samp_factor = 1;
+- for (ci = 0; ci < dstinfo->num_components; ci++) {
+- int v_samp_factor = dstinfo->comp_info[ci].v_samp_factor;
+- max_v_samp_factor = MAX(max_v_samp_factor, v_samp_factor);
++ /* Search for ExifSubIFD offset Tag in IFD0 */
++ for (;;) {
++ if (firstoffset > length - 12) return; /* check end of data segment */
++ /* Get Tag number */
++ if (is_motorola) {
++ tagnum = GETJOCTET(data[firstoffset]);
++ tagnum <<= 8;
++ tagnum += GETJOCTET(data[firstoffset+1]);
++ } else {
++ tagnum = GETJOCTET(data[firstoffset+1]);
++ tagnum <<= 8;
++ tagnum += GETJOCTET(data[firstoffset]);
++ }
++ if (tagnum == 0x8769) break; /* found ExifSubIFD offset Tag */
++ if (--number_of_tags == 0) return;
++ firstoffset += 12;
++ }
++
++ /* Get the ExifSubIFD offset */
++ if (is_motorola) {
++ if (GETJOCTET(data[firstoffset+8]) != 0) return;
++ if (GETJOCTET(data[firstoffset+9]) != 0) return;
++ offset = GETJOCTET(data[firstoffset+10]);
++ offset <<= 8;
++ offset += GETJOCTET(data[firstoffset+11]);
++ } else {
++ if (GETJOCTET(data[firstoffset+11]) != 0) return;
++ if (GETJOCTET(data[firstoffset+10]) != 0) return;
++ offset = GETJOCTET(data[firstoffset+9]);
++ offset <<= 8;
++ offset += GETJOCTET(data[firstoffset+8]);
++ }
++ if (offset > length - 2) return; /* check end of data segment */
++
++ /* Get the number of directory entries contained in this SubIFD */
++ if (is_motorola) {
++ number_of_tags = GETJOCTET(data[offset]);
++ number_of_tags <<= 8;
++ number_of_tags += GETJOCTET(data[offset+1]);
++ } else {
++ number_of_tags = GETJOCTET(data[offset+1]);
++ number_of_tags <<= 8;
++ number_of_tags += GETJOCTET(data[offset]);
+ }
+- MCU_rows = dstinfo->image_height / (max_v_samp_factor * DCTSIZE);
+- if (MCU_rows > 0) /* can't trim to 0 pixels */
+- dstinfo->image_height = MCU_rows * (max_v_samp_factor * DCTSIZE);
++ if (number_of_tags < 2) return;
++ offset += 2;
++
++ /* Search for ExifImageWidth and ExifImageHeight Tags in this SubIFD */
++ do {
++ if (offset > length - 12) return; /* check end of data segment */
++ /* Get Tag number */
++ if (is_motorola) {
++ tagnum = GETJOCTET(data[offset]);
++ tagnum <<= 8;
++ tagnum += GETJOCTET(data[offset+1]);
++ } else {
++ tagnum = GETJOCTET(data[offset+1]);
++ tagnum <<= 8;
++ tagnum += GETJOCTET(data[offset]);
++ }
++ if (tagnum == 0xA002 || tagnum == 0xA003) {
++ if (tagnum == 0xA002)
++ new_value = new_width; /* ExifImageWidth Tag */
++ else
++ new_value = new_height; /* ExifImageHeight Tag */
++ if (is_motorola) {
++ data[offset+2] = 0; /* Format = unsigned long (4 octets) */
++ data[offset+3] = 4;
++ data[offset+4] = 0; /* Number Of Components = 1 */
++ data[offset+5] = 0;
++ data[offset+6] = 0;
++ data[offset+7] = 1;
++ data[offset+8] = 0;
++ data[offset+9] = 0;
++ data[offset+10] = (JOCTET)((new_value >> 8) & 0xFF);
++ data[offset+11] = (JOCTET)(new_value & 0xFF);
++ } else {
++ data[offset+2] = 4; /* Format = unsigned long (4 octets) */
++ data[offset+3] = 0;
++ data[offset+4] = 1; /* Number Of Components = 1 */
++ data[offset+5] = 0;
++ data[offset+6] = 0;
++ data[offset+7] = 0;
++ data[offset+8] = (JOCTET)(new_value & 0xFF);
++ data[offset+9] = (JOCTET)((new_value >> 8) & 0xFF);
++ data[offset+10] = 0;
++ data[offset+11] = 0;
++ }
++ }
++ offset += 12;
++ } while (--number_of_tags);
+ }
++#endif
+
+
+ /* Adjust output image parameters as needed.
+@@ -736,18 +1348,22 @@ jtransform_adjust_parameters (j_decompre
+ {
+ /* If force-to-grayscale is requested, adjust destination parameters */
+ if (info->force_grayscale) {
+- /* We use jpeg_set_colorspace to make sure subsidiary settings get fixed
+- * properly. Among other things, the target h_samp_factor & v_samp_factor
+- * will get set to 1, which typically won't match the source.
+- * In fact we do this even if the source is already grayscale; that
+- * provides an easy way of coercing a grayscale JPEG with funny sampling
+- * factors to the customary 1,1. (Some decoders fail on other factors.)
++ /* First, ensure we have YCbCr or grayscale data, and that the source's
++ * Y channel is full resolution. (No reasonable person would make Y
++ * be less than full resolution, so actually coping with that case
++ * isn't worth extra code space. But we check it to avoid crashing.)
+ */
+- if ((dstinfo->jpeg_color_space == JCS_YCbCr &&
+- dstinfo->num_components == 3) ||
+- (dstinfo->jpeg_color_space == JCS_GRAYSCALE &&
+- dstinfo->num_components == 1)) {
+- /* We have to preserve the source's quantization table number. */
++ if (((dstinfo->jpeg_color_space == JCS_YCbCr &&
++ dstinfo->num_components == 3) ||
++ (dstinfo->jpeg_color_space == JCS_GRAYSCALE &&
++ dstinfo->num_components == 1)) &&
++ srcinfo->comp_info[0].h_samp_factor == srcinfo->max_h_samp_factor &&
++ srcinfo->comp_info[0].v_samp_factor == srcinfo->max_v_samp_factor) {
++ /* We use jpeg_set_colorspace to make sure subsidiary settings get fixed
++ * properly. Among other things, it sets the target h_samp_factor &
++ * v_samp_factor to 1, which typically won't match the source.
++ * We have to preserve the source's quantization table number, however.
++ */
+ int sv_quant_tbl_no = dstinfo->comp_info[0].quant_tbl_no;
+ jpeg_set_colorspace(dstinfo, JCS_GRAYSCALE);
+ dstinfo->comp_info[0].quant_tbl_no = sv_quant_tbl_no;
+@@ -755,50 +1371,66 @@ jtransform_adjust_parameters (j_decompre
+ /* Sorry, can't do it */
+ ERREXIT(dstinfo, JERR_CONVERSION_NOTIMPL);
+ }
++ } else if (info->num_components == 1) {
++ /* For a single-component source, we force the destination sampling factors
++ * to 1x1, with or without force_grayscale. This is useful because some
++ * decoders choke on grayscale images with other sampling factors.
++ */
++ dstinfo->comp_info[0].h_samp_factor = 1;
++ dstinfo->comp_info[0].v_samp_factor = 1;
+ }
+
+- /* Correct the destination's image dimensions etc if necessary */
++ /* Correct the destination's image dimensions as necessary
++ * for rotate/flip, resize, and crop operations.
++ */
++#if JPEG_LIB_VERSION >= 70
++ dstinfo->jpeg_width = info->output_width;
++ dstinfo->jpeg_height = info->output_height;
++#endif
++
++ /* Transpose destination image parameters */
+ switch (info->transform) {
+- case JXFORM_NONE:
+- /* Nothing to do */
+- break;
+- case JXFORM_FLIP_H:
+- if (info->trim)
+- trim_right_edge(dstinfo);
+- break;
+- case JXFORM_FLIP_V:
+- if (info->trim)
+- trim_bottom_edge(dstinfo);
+- break;
+ case JXFORM_TRANSPOSE:
+- transpose_critical_parameters(dstinfo);
+- /* transpose does NOT have to trim anything */
+- break;
+ case JXFORM_TRANSVERSE:
+- transpose_critical_parameters(dstinfo);
+- if (info->trim) {
+- trim_right_edge(dstinfo);
+- trim_bottom_edge(dstinfo);
+- }
+- break;
+ case JXFORM_ROT_90:
+- transpose_critical_parameters(dstinfo);
+- if (info->trim)
+- trim_right_edge(dstinfo);
+- break;
+- case JXFORM_ROT_180:
+- if (info->trim) {
+- trim_right_edge(dstinfo);
+- trim_bottom_edge(dstinfo);
+- }
+- break;
+ case JXFORM_ROT_270:
++#if JPEG_LIB_VERSION < 70
++ dstinfo->image_width = info->output_height;
++ dstinfo->image_height = info->output_width;
++#endif
+ transpose_critical_parameters(dstinfo);
+- if (info->trim)
+- trim_bottom_edge(dstinfo);
++ break;
++ default:
++#if JPEG_LIB_VERSION < 70
++ dstinfo->image_width = info->output_width;
++ dstinfo->image_height = info->output_height;
++#endif
+ break;
+ }
+
++ /* Adjust Exif properties */
++ if (srcinfo->marker_list != NULL &&
++ srcinfo->marker_list->marker == JPEG_APP0+1 &&
++ srcinfo->marker_list->data_length >= 6 &&
++ GETJOCTET(srcinfo->marker_list->data[0]) == 0x45 &&
++ GETJOCTET(srcinfo->marker_list->data[1]) == 0x78 &&
++ GETJOCTET(srcinfo->marker_list->data[2]) == 0x69 &&
++ GETJOCTET(srcinfo->marker_list->data[3]) == 0x66 &&
++ GETJOCTET(srcinfo->marker_list->data[4]) == 0 &&
++ GETJOCTET(srcinfo->marker_list->data[5]) == 0) {
++ /* Suppress output of JFIF marker */
++ dstinfo->write_JFIF_header = FALSE;
++#if JPEG_LIB_VERSION >= 70
++ /* Adjust Exif image parameters */
++ if (dstinfo->jpeg_width != srcinfo->image_width ||
++ dstinfo->jpeg_height != srcinfo->image_height)
++ /* Align data segment to start of TIFF structure for parsing */
++ adjust_exif_parameters(srcinfo->marker_list->data + 6,
++ srcinfo->marker_list->data_length - 6,
++ dstinfo->jpeg_width, dstinfo->jpeg_height);
++#endif
++ }
++
+ /* Return the appropriate output data set */
+ if (info->workspace_coef_arrays != NULL)
+ return info->workspace_coef_arrays;
+@@ -816,40 +1448,110 @@ jtransform_adjust_parameters (j_decompre
+ */
+
+ GLOBAL(void)
+-jtransform_execute_transformation (j_decompress_ptr srcinfo,
+- j_compress_ptr dstinfo,
+- jvirt_barray_ptr *src_coef_arrays,
+- jpeg_transform_info *info)
++jtransform_execute_transform (j_decompress_ptr srcinfo,
++ j_compress_ptr dstinfo,
++ jvirt_barray_ptr *src_coef_arrays,
++ jpeg_transform_info *info)
+ {
+ jvirt_barray_ptr *dst_coef_arrays = info->workspace_coef_arrays;
+
++ /* Note: conditions tested here should match those in switch statement
++ * in jtransform_request_workspace()
++ */
+ switch (info->transform) {
+ case JXFORM_NONE:
++ if (info->x_crop_offset != 0 || info->y_crop_offset != 0)
++ do_crop(srcinfo, dstinfo, info->x_crop_offset, info->y_crop_offset,
++ src_coef_arrays, dst_coef_arrays);
+ break;
+ case JXFORM_FLIP_H:
+- do_flip_h(srcinfo, dstinfo, src_coef_arrays);
++ if (info->y_crop_offset != 0 || info->slow_hflip)
++ do_flip_h(srcinfo, dstinfo, info->x_crop_offset, info->y_crop_offset,
++ src_coef_arrays, dst_coef_arrays);
++ else
++ do_flip_h_no_crop(srcinfo, dstinfo, info->x_crop_offset,
++ src_coef_arrays);
+ break;
+ case JXFORM_FLIP_V:
+- do_flip_v(srcinfo, dstinfo, src_coef_arrays, dst_coef_arrays);
++ do_flip_v(srcinfo, dstinfo, info->x_crop_offset, info->y_crop_offset,
++ src_coef_arrays, dst_coef_arrays);
+ break;
+ case JXFORM_TRANSPOSE:
+- do_transpose(srcinfo, dstinfo, src_coef_arrays, dst_coef_arrays);
++ do_transpose(srcinfo, dstinfo, info->x_crop_offset, info->y_crop_offset,
++ src_coef_arrays, dst_coef_arrays);
+ break;
+ case JXFORM_TRANSVERSE:
+- do_transverse(srcinfo, dstinfo, src_coef_arrays, dst_coef_arrays);
++ do_transverse(srcinfo, dstinfo, info->x_crop_offset, info->y_crop_offset,
++ src_coef_arrays, dst_coef_arrays);
+ break;
+ case JXFORM_ROT_90:
+- do_rot_90(srcinfo, dstinfo, src_coef_arrays, dst_coef_arrays);
++ do_rot_90(srcinfo, dstinfo, info->x_crop_offset, info->y_crop_offset,
++ src_coef_arrays, dst_coef_arrays);
+ break;
+ case JXFORM_ROT_180:
+- do_rot_180(srcinfo, dstinfo, src_coef_arrays, dst_coef_arrays);
++ do_rot_180(srcinfo, dstinfo, info->x_crop_offset, info->y_crop_offset,
++ src_coef_arrays, dst_coef_arrays);
+ break;
+ case JXFORM_ROT_270:
+- do_rot_270(srcinfo, dstinfo, src_coef_arrays, dst_coef_arrays);
++ do_rot_270(srcinfo, dstinfo, info->x_crop_offset, info->y_crop_offset,
++ src_coef_arrays, dst_coef_arrays);
+ break;
+ }
+ }
+
++/* jtransform_perfect_transform
++ *
++ * Determine whether lossless transformation is perfectly
++ * possible for a specified image and transformation.
++ *
++ * Inputs:
++ * image_width, image_height: source image dimensions.
++ * MCU_width, MCU_height: pixel dimensions of MCU.
++ * transform: transformation identifier.
++ * Parameter sources from initialized jpeg_struct
++ * (after reading source header):
++ * image_width = cinfo.image_width
++ * image_height = cinfo.image_height
++ * MCU_width = cinfo.max_h_samp_factor * cinfo.block_size
++ * MCU_height = cinfo.max_v_samp_factor * cinfo.block_size
++ * Result:
++ * TRUE = perfect transformation possible
++ * FALSE = perfect transformation not possible
++ * (may use custom action then)
++ */
++
++GLOBAL(boolean)
++jtransform_perfect_transform(JDIMENSION image_width, JDIMENSION image_height,
++ int MCU_width, int MCU_height,
++ JXFORM_CODE transform)
++{
++ boolean result = TRUE; /* initialize TRUE */
++
++ switch (transform) {
++ case JXFORM_FLIP_H:
++ case JXFORM_ROT_270:
++ if (image_width % (JDIMENSION) MCU_width)
++ result = FALSE;
++ break;
++ case JXFORM_FLIP_V:
++ case JXFORM_ROT_90:
++ if (image_height % (JDIMENSION) MCU_height)
++ result = FALSE;
++ break;
++ case JXFORM_TRANSVERSE:
++ case JXFORM_ROT_180:
++ if (image_width % (JDIMENSION) MCU_width)
++ result = FALSE;
++ if (image_height % (JDIMENSION) MCU_height)
++ result = FALSE;
++ break;
++ default:
++ break;
++ }
++
++ return result;
++}
++
+ #endif /* TRANSFORMS_SUPPORTED */
+
+
+Index: fbida-2.10/jpeg/62/transupp.h
+===================================================================
+--- fbida-2.10.orig/jpeg/62/transupp.h
++++ fbida-2.10/jpeg/62/transupp.h
+@@ -1,7 +1,7 @@
+ /*
+ * transupp.h
+ *
+- * Copyright (C) 1997, Thomas G. Lane.
++ * Copyright (C) 1997-2011, Thomas G. Lane, Guido Vollbeding.
+ * This file is part of the Independent JPEG Group's software.
+ * For conditions of distribution and use, see the accompanying README file.
+ *
+@@ -22,32 +22,6 @@
+ #define TRANSFORMS_SUPPORTED 1 /* 0 disables transform code */
+ #endif
+
+-/* Short forms of external names for systems with brain-damaged linkers. */
+-
+-#ifdef NEED_SHORT_EXTERNAL_NAMES
+-#define jtransform_request_workspace jTrRequest
+-#define jtransform_adjust_parameters jTrAdjust
+-#define jtransform_execute_transformation jTrExec
+-#define jcopy_markers_setup jCMrkSetup
+-#define jcopy_markers_execute jCMrkExec
+-#endif /* NEED_SHORT_EXTERNAL_NAMES */
+-
+-
+-/*
+- * Codes for supported types of image transformations.
+- */
+-
+-typedef enum {
+- JXFORM_NONE, /* no transformation */
+- JXFORM_FLIP_H, /* horizontal flip */
+- JXFORM_FLIP_V, /* vertical flip */
+- JXFORM_TRANSPOSE, /* transpose across UL-to-LR axis */
+- JXFORM_TRANSVERSE, /* transpose across UR-to-LL axis */
+- JXFORM_ROT_90, /* 90-degree clockwise rotation */
+- JXFORM_ROT_180, /* 180-degree rotation */
+- JXFORM_ROT_270 /* 270-degree clockwise (or 90 ccw) */
+-} JXFORM_CODE;
+-
+ /*
+ * Although rotating and flipping data expressed as DCT coefficients is not
+ * hard, there is an asymmetry in the JPEG format specification for images
+@@ -75,6 +49,25 @@ typedef enum {
+ * (For example, -rot 270 -trim trims only the bottom edge, but -rot 90 -trim
+ * followed by -rot 180 -trim trims both edges.)
+ *
++ * We also offer a lossless-crop option, which discards data outside a given
++ * image region but losslessly preserves what is inside. Like the rotate and
++ * flip transforms, lossless crop is restricted by the JPEG format: the upper
++ * left corner of the selected region must fall on an iMCU boundary. If this
++ * does not hold for the given crop parameters, we silently move the upper left
++ * corner up and/or left to make it so, simultaneously increasing the region
++ * dimensions to keep the lower right crop corner unchanged. (Thus, the
++ * output image covers at least the requested region, but may cover more.)
++ * The adjustment of the region dimensions may be optionally disabled.
++ *
++ * We also provide a lossless-resize option, which is kind of a lossless-crop
++ * operation in the DCT coefficient block domain - it discards higher-order
++ * coefficients and losslessly preserves lower-order coefficients of a
++ * sub-block.
++ *
++ * Rotate/flip transform, resize, and crop can be requested together in a
++ * single invocation. The crop is applied last --- that is, the crop region
++ * is specified in terms of the destination image after transform/resize.
++ *
+ * We also offer a "force to grayscale" option, which simply discards the
+ * chrominance channels of a YCbCr image. This is lossless in the sense that
+ * the luminance channel is preserved exactly. It's not the same kind of
+@@ -83,22 +76,100 @@ typedef enum {
+ * be aware of the option to know how many components to work on.
+ */
+
++
++/* Short forms of external names for systems with brain-damaged linkers. */
++
++#ifdef NEED_SHORT_EXTERNAL_NAMES
++#define jtransform_parse_crop_spec jTrParCrop
++#define jtransform_request_workspace jTrRequest
++#define jtransform_adjust_parameters jTrAdjust
++#define jtransform_execute_transform jTrExec
++#define jtransform_perfect_transform jTrPerfect
++#define jcopy_markers_setup jCMrkSetup
++#define jcopy_markers_execute jCMrkExec
++#endif /* NEED_SHORT_EXTERNAL_NAMES */
++
++
++/*
++ * Codes for supported types of image transformations.
++ */
++
++typedef enum {
++ JXFORM_NONE, /* no transformation */
++ JXFORM_FLIP_H, /* horizontal flip */
++ JXFORM_FLIP_V, /* vertical flip */
++ JXFORM_TRANSPOSE, /* transpose across UL-to-LR axis */
++ JXFORM_TRANSVERSE, /* transpose across UR-to-LL axis */
++ JXFORM_ROT_90, /* 90-degree clockwise rotation */
++ JXFORM_ROT_180, /* 180-degree rotation */
++ JXFORM_ROT_270 /* 270-degree clockwise (or 90 ccw) */
++} JXFORM_CODE;
++
++/*
++ * Codes for crop parameters, which can individually be unspecified,
++ * positive or negative for xoffset or yoffset,
++ * positive or forced for width or height.
++ */
++
++typedef enum {
++ JCROP_UNSET,
++ JCROP_POS,
++ JCROP_NEG,
++ JCROP_FORCE
++} JCROP_CODE;
++
++/*
++ * Transform parameters struct.
++ * NB: application must not change any elements of this struct after
++ * calling jtransform_request_workspace.
++ */
++
+ typedef struct {
+ /* Options: set by caller */
+ JXFORM_CODE transform; /* image transform operator */
++ boolean perfect; /* if TRUE, fail if partial MCUs are requested */
+ boolean trim; /* if TRUE, trim partial MCUs as needed */
+ boolean force_grayscale; /* if TRUE, convert color image to grayscale */
++ boolean crop; /* if TRUE, crop source image */
++ boolean slow_hflip; /* For best performance, the JXFORM_FLIP_H transform
++ normally modifies the source coefficients in place.
++ Setting this to TRUE will instead use a slower,
++ double-buffered algorithm, which leaves the source
++ coefficients in tact (necessary if other transformed
++ images must be generated from the same set of
++ coefficients. */
++
++ /* Crop parameters: application need not set these unless crop is TRUE.
++ * These can be filled in by jtransform_parse_crop_spec().
++ */
++ JDIMENSION crop_width; /* Width of selected region */
++ JCROP_CODE crop_width_set; /* (forced disables adjustment) */
++ JDIMENSION crop_height; /* Height of selected region */
++ JCROP_CODE crop_height_set; /* (forced disables adjustment) */
++ JDIMENSION crop_xoffset; /* X offset of selected region */
++ JCROP_CODE crop_xoffset_set; /* (negative measures from right edge) */
++ JDIMENSION crop_yoffset; /* Y offset of selected region */
++ JCROP_CODE crop_yoffset_set; /* (negative measures from bottom edge) */
+
+ /* Internal workspace: caller should not touch these */
+ int num_components; /* # of components in workspace */
+ jvirt_barray_ptr * workspace_coef_arrays; /* workspace for transformations */
++ JDIMENSION output_width; /* cropped destination dimensions */
++ JDIMENSION output_height;
++ JDIMENSION x_crop_offset; /* destination crop offsets measured in iMCUs */
++ JDIMENSION y_crop_offset;
++ int iMCU_sample_width; /* destination iMCU size */
++ int iMCU_sample_height;
+ } jpeg_transform_info;
+
+
+ #if TRANSFORMS_SUPPORTED
+
++/* Parse a crop specification (written in X11 geometry style) */
++EXTERN(boolean) jtransform_parse_crop_spec
++ JPP((jpeg_transform_info *info, const char *spec));
+ /* Request any required workspace */
+-EXTERN(void) jtransform_request_workspace
++EXTERN(boolean) jtransform_request_workspace
+ JPP((j_decompress_ptr srcinfo, jpeg_transform_info *info));
+ /* Adjust output image parameters */
+ EXTERN(jvirt_barray_ptr *) jtransform_adjust_parameters
+@@ -106,10 +177,24 @@ EXTERN(jvirt_barray_ptr *) jtransform_ad
+ jvirt_barray_ptr *src_coef_arrays,
+ jpeg_transform_info *info));
+ /* Execute the actual transformation, if any */
+-EXTERN(void) jtransform_execute_transformation
++EXTERN(void) jtransform_execute_transform
+ JPP((j_decompress_ptr srcinfo, j_compress_ptr dstinfo,
+ jvirt_barray_ptr *src_coef_arrays,
+ jpeg_transform_info *info));
++/* Determine whether lossless transformation is perfectly
++ * possible for a specified image and transformation.
++ */
++EXTERN(boolean) jtransform_perfect_transform
++ JPP((JDIMENSION image_width, JDIMENSION image_height,
++ int MCU_width, int MCU_height,
++ JXFORM_CODE transform));
++
++/* jtransform_execute_transform used to be called
++ * jtransform_execute_transformation, but some compilers complain about
++ * routine names that long. This macro is here to avoid breaking any
++ * old source code that uses the original name...
++ */
++#define jtransform_execute_transformation jtransform_execute_transform
+
+ #endif /* TRANSFORMS_SUPPORTED */
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-graphics/fbida/files/use-jpeg-turbo.patch b/import-layers/meta-openembedded/meta-oe/recipes-graphics/fbida/files/use-jpeg-turbo.patch
new file mode 100644
index 000000000..99639554c
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-graphics/fbida/files/use-jpeg-turbo.patch
@@ -0,0 +1,13 @@
+Index: fbida-2.10/GNUmakefile
+===================================================================
+--- fbida-2.10.orig/GNUmakefile
++++ fbida-2.10/GNUmakefile
+@@ -51,7 +51,7 @@ HAVE_LIBSANE := $(call ac_lib,sane_init,
+ HAVE_LIBCURL := $(call ac_lib,curl_easy_init,curl)
+ HAVE_LIBLIRC := $(call ac_lib,lirc_init,lirc_client)
+ HAVE_MOTIF := $(call ac_lib,XmStringGenerate,Xm,-L/usr/X11R6/$(LIB) -lXpm -lXt -lXext -lX11)
+-JPEG_VER := $(call ac_jpeg_ver)
++JPEG_VER := 62
+ endef
+
+ # transposing
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-graphics/fim/fim_0.4-rc1.bb b/import-layers/meta-openembedded/meta-oe/recipes-graphics/fim/fim_0.4-rc1.bb
index 90ac70216..7d1a3aaa8 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-graphics/fim/fim_0.4-rc1.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-graphics/fim/fim_0.4-rc1.bb
@@ -8,7 +8,7 @@ HOMEPAGE = "http://www.autistici.org/dezperado/fim/"
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=fa01bff138cc98a62b8840a157951c88"
-PNBLACKLIST[fim] ?= "BROKEN: doesn't build with B!=S (flex: can't open lex.lex)"
+PNBLACKLIST[fim] ?= "BROKEN: doesn't build with B!=S (flex: can't open lex.lex) - the recipe will be removed on 2017-09-01 unless the issue is fixed"
# flex with provide /usr/include/FlexLexer.h
DEPENDS = "flex-native bison-native flex"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-graphics/fontforge/fontforge_20150824.bb b/import-layers/meta-openembedded/meta-oe/recipes-graphics/fontforge/fontforge_20161012.bb
index 544149d18..1c3376d42 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-graphics/fontforge/fontforge_20150824.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-graphics/fontforge/fontforge_20161012.bb
@@ -9,13 +9,13 @@ LIC_FILES_CHKSUM = " \
DEPENDS = "glib-2.0 pango giflib tiff libxml2 jpeg python libtool uthash gnulib"
DEPENDS_append_class-target = " libxi"
-inherit autotools pkgconfig pythonnative distro_features_check
+inherit autotools pkgconfig pythonnative distro_features_check gettext
REQUIRED_DISTRO_FEATURES_append_class-target = " x11"
SRC_URI = "git://github.com/${BPN}/${BPN}.git"
-# tag 20150824
-SRCREV = "07d5ccff2704f8a56f1b3cc6695a4e31f85f88e6"
+# tag 20161012
+SRCREV = "072edb0235cd163d6c3391da9cc3754c3c66f47a"
S = "${WORKDIR}/git"
EXTRA_OECONF_append_class-native = " with_x=no"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-graphics/gegl/gegl_0.3.4.bb b/import-layers/meta-openembedded/meta-oe/recipes-graphics/gegl/gegl_0.3.4.bb
index 9de8489d5..90f02165c 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-graphics/gegl/gegl_0.3.4.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-graphics/gegl/gegl_0.3.4.bb
@@ -19,6 +19,8 @@ SRC_URI = "http://ftp.gimp.org/pub/${BPN}/0.3/${BP}.tar.bz2 \
SRC_URI[md5sum] = "c19478321594d715a4cb324a0decda6f"
SRC_URI[sha256sum] = "846290a790854d1e6b7c17a2d6f82ad7cb14c72e240bd3b81b98cc0ceddbc3ec"
+LDFLAGS += "-lm"
+
# There are a couple of non-symlink .so files installed into libdir, which need to go into main package
FILES_${PN}_append = " ${libdir}/gegl-0.3/*.so ${libdir}/gegl-0.3/*.json ${libdir}/libgegl-npd-0.3.so ${libdir}/libgegl-sc-0.3.so"
FILES_${PN}-dev_append = " ${libdir}/gegl-0.3/*.la ${libdir}/libgegl-0.3.so"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-graphics/gimp/gimp_2.8.18.bb b/import-layers/meta-openembedded/meta-oe/recipes-graphics/gimp/gimp_2.8.20.bb
index 1f835236b..9588ab016 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-graphics/gimp/gimp_2.8.18.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-graphics/gimp/gimp_2.8.20.bb
@@ -7,6 +7,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
DEPENDS = " \
gdk-pixbuf-native \
intltool-native \
+ libxslt-native \
gtk+ \
babl \
gegl \
@@ -20,6 +21,7 @@ DEPENDS = " \
jasper \
bzip2 \
libgudev \
+ libmng \
"
DEPENDS += "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'libxmu libxpm', '', d)}"
@@ -30,8 +32,8 @@ SRC_URI = " \
file://0001-configure-ac-do-not-check-for-freetype-config.patch \
file://bump_Babl-GEGL_versions.patch \
"
-SRC_URI[md5sum] = "5adaa11a68bc8a42bb2c778fee4d389c"
-SRC_URI[sha256sum] = "39dd2247c678deaf5cc664397d3c6bd4fb910d3472290fd54b52b441b5815441"
+SRC_URI[md5sum] = "d405640c426b234d6efc36fb4f5bae57"
+SRC_URI[sha256sum] = "939ca1df70be865c672ffd654f4e20f188121d01601c5c90237214101533c805"
EXTRA_OECONF = "--disable-python \
--without-webkit \
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-graphics/glcompbench/glcompbench/0001-waf-Disable-errors-due-to-Wdeprecated.patch b/import-layers/meta-openembedded/meta-oe/recipes-graphics/glcompbench/glcompbench/0001-waf-Disable-errors-due-to-Wdeprecated.patch
new file mode 100644
index 000000000..deb60161c
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-graphics/glcompbench/glcompbench/0001-waf-Disable-errors-due-to-Wdeprecated.patch
@@ -0,0 +1,31 @@
+From 49297e2fbe0420a255cbe67989d0ec539125412c Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sun, 23 Apr 2017 10:38:24 -0700
+Subject: [PATCH] waf: Disable errors due to -Wdeprecated
+
+throw() has been deprecated in c++11 and removed
+from c++17, gcc7 is more pedandic about this warning
+we therefore add a workaround to ignore this warning
+for now.
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ wscript | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/wscript b/wscript
+index 485a9fb..7f59761 100644
+--- a/wscript
++++ b/wscript
+@@ -79,7 +79,7 @@ def configure(ctx):
+ ctx.check_cfg(package = pkg, uselib_store = uselib, args = '--cflags --libs',
+ mandatory = True)
+
+- ctx.env.append_unique('CXXFLAGS', '-Wall -Werror -std=c++11 -Wextra'.split(' '))
++ ctx.env.append_unique('CXXFLAGS', '-Wall -Werror -std=c++11 -Wextra -Wno-error=deprecated'.split(' '))
+
+ # Prepend -O# and -g flags so that they can be overriden by the CFLAGS environment variable
+ if Options.options.opt:
+--
+2.12.2
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-graphics/glcompbench/glcompbench_2012.08.bb b/import-layers/meta-openembedded/meta-oe/recipes-graphics/glcompbench/glcompbench_2012.08.bb
index 7cf9692f6..e8465855d 100755
--- a/import-layers/meta-openembedded/meta-oe/recipes-graphics/glcompbench/glcompbench_2012.08.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-graphics/glcompbench/glcompbench_2012.08.bb
@@ -11,7 +11,8 @@ SRC_URI = "https://launchpad.net/glcompbench/trunk/${PV}/+download/${BPN}-${PV}.
file://Fix_space_issues.patch \
file://Fix_auto_ptr_deprecated.patch \
file://0001-build-Specify-std-c-11-on-cmdline.patch \
-"
+ file://0001-waf-Disable-errors-due-to-Wdeprecated.patch \
+ "
SRC_URI[md5sum] = "c939d9156fe940960098f38707fea827"
SRC_URI[sha256sum] = "b04b738cec06c6786ceafa86e4735fd8b971c078265754854ef356b0379542ee"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-graphics/glm/glm_0.9.8.4.bb b/import-layers/meta-openembedded/meta-oe/recipes-graphics/glm/glm_0.9.8.4.bb
new file mode 100644
index 000000000..2d2e9ade4
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-graphics/glm/glm_0.9.8.4.bb
@@ -0,0 +1,22 @@
+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://copying.txt;md5=4431606d144252143c9c3df384a74cad"
+
+SRC_URI = "git://github.com/g-truc/glm;protocol=https"
+
+SRCREV = "5dcc56489e1b66dfd5bca751fa9b8dc68059e008"
+
+S = "${WORKDIR}/git"
+
+inherit cmake
+
+FILES_${PN}-dev += "${libdir}/cmake"
+RDEPENDS_${PN}-dev = ""
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-graphics/gphoto2/libgphoto2-2.5.8/0001-scripts-remove-bashisms.patch b/import-layers/meta-openembedded/meta-oe/recipes-graphics/gphoto2/libgphoto2-2.5.8/0001-scripts-remove-bashisms.patch
new file mode 100644
index 000000000..0e0dc879b
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-graphics/gphoto2/libgphoto2-2.5.8/0001-scripts-remove-bashisms.patch
@@ -0,0 +1,149 @@
+From c00e63e97d8718836ba011d9172128732eecf001 Mon Sep 17 00:00:00 2001
+From: Ismo Puustinen <ismo.puustinen@intel.com>
+Date: Tue, 24 Jan 2017 22:24:05 +0200
+Subject: [PATCH] scripts: remove bashisms.
+
+Convert bash scripts to more generic shell scripts. This removes the
+strict bash dependency and the scripts should now run with any posix
+shell. Also fix the issues reported by shellcheck while at it.
+
+Upstream-status: Accepted [https://github.com/gphoto/libgphoto2/commit/39b4395532058c0edb9a56d0ff04e48a472e4743]
+
+---
+ packaging/generic/check-ptp-camera | 12 ++++++------
+ packaging/linux-hotplug/gphoto-set-procperm | 14 +++++++-------
+ packaging/linux-hotplug/usbcam.console | 4 ++--
+ packaging/linux-hotplug/usbcam.group | 2 +-
+ packaging/linux-hotplug/usbcam.user | 2 +-
+ packaging/linux-hotplug/usbcam.x11-app | 4 ++--
+ 6 files changed, 19 insertions(+), 19 deletions(-)
+
+diff --git a/packaging/generic/check-ptp-camera b/packaging/generic/check-ptp-camera
+index 1793fc8..bc3c6ac 100644
+--- a/packaging/generic/check-ptp-camera
++++ b/packaging/generic/check-ptp-camera
+@@ -1,4 +1,4 @@
+-#!/bin/bash
++#!/bin/sh
+ # This program 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
+@@ -20,13 +20,13 @@ INTERFACE="${1:-06/01/01}"
+
+ BASENAME=${DEVPATH##*/}
+ for d in /sys/${DEVPATH}/${BASENAME}:*; do
+- [[ -d ${d} ]] || continue
+- INTERFACEID="$(< ${d}/bInterfaceClass)"
+- INTERFACEID="${INTERFACEID}/$(< ${d}/bInterfaceSubClass)"
+- INTERFACEID="${INTERFACEID}/$(< ${d}/bInterfaceProtocol)"
++ [ -d "${d}" ] || continue
++ INTERFACEID="$(cat "${d}"/bInterfaceClass)"
++ INTERFACEID="${INTERFACEID}/$(cat "${d}"/bInterfaceSubClass)"
++ INTERFACEID="${INTERFACEID}/$(cat "${d}"/bInterfaceProtocol)"
+
+ #echo ${d}: ${INTERFACEID}
+- if [[ ${INTERFACE} == ${INTERFACEID} ]]; then
++ if [ "${INTERFACE}" = "${INTERFACEID}" ]; then
+ # Found interface
+ exit 0
+ fi
+diff --git a/packaging/linux-hotplug/gphoto-set-procperm b/packaging/linux-hotplug/gphoto-set-procperm
+index d72ee68..977cbf5 100644
+--- a/packaging/linux-hotplug/gphoto-set-procperm
++++ b/packaging/linux-hotplug/gphoto-set-procperm
+@@ -1,4 +1,4 @@
+-#!/bin/bash
++#!/bin/sh
+ # This program 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
+@@ -18,22 +18,22 @@
+ # This is taken from Fedora Core gphoto2 package.
+ # http://cvs.fedora.redhat.com/viewcvs/*checkout*/devel/gphoto2/gphoto-set-procperm
+
+-console_user=`cat /var/run/console/console.lock`
++console_user=$(cat /var/run/console/console.lock)
+
+ if [ -z "$console_user" ] ; then
+ exit 1
+ fi
+
+-if [ -z "$HAL_PROP_USB_BUS_NUMBER" -o -z "$HAL_PROP_USB_LINUX_DEVICE_NUMBER" ] ; then
++if [ -z "$HAL_PROP_USB_BUS_NUMBER" ] || [ -z "$HAL_PROP_USB_LINUX_DEVICE_NUMBER" ] ; then
+ exit 1
+ fi
+
+-if [ $HAL_PROP_USB_BUS_NUMBER -lt 0 -o $HAL_PROP_USB_LINUX_DEVICE_NUMBER -lt 0 ] ; then
++if [ "$HAL_PROP_USB_BUS_NUMBER" -lt 0 ] || [ "$HAL_PROP_USB_LINUX_DEVICE_NUMBER" -lt 0 ] ; then
+ exit 1
+ fi
+
+
+-bus_num=`printf %.3u $HAL_PROP_USB_BUS_NUMBER`
+-dev_num=`printf %.3u $HAL_PROP_USB_LINUX_DEVICE_NUMBER`
++bus_num=$(printf %.3u "$HAL_PROP_USB_BUS_NUMBER")
++dev_num=$(printf %.3u "$HAL_PROP_USB_LINUX_DEVICE_NUMBER")
+
+-chown $console_user /proc/bus/usb/$bus_num/$dev_num
++chown "$console_user" /proc/bus/usb/"$bus_num"/"$dev_num"
+diff --git a/packaging/linux-hotplug/usbcam.console b/packaging/linux-hotplug/usbcam.console
+index d72128f..7ac6dc5 100755
+--- a/packaging/linux-hotplug/usbcam.console
++++ b/packaging/linux-hotplug/usbcam.console
+@@ -1,4 +1,4 @@
+-#!/bin/bash
++#!/bin/sh
+ # This program 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
+@@ -50,7 +50,7 @@ then
+ /var/lock/console.lock
+ do
+ if [ -f "$conlock" ]; then
+- CONSOLEOWNER=`cat $conlock`
++ CONSOLEOWNER=$(cat $conlock)
+ fi
+ done
+ if [ -n "$CONSOLEOWNER" ]
+diff --git a/packaging/linux-hotplug/usbcam.group b/packaging/linux-hotplug/usbcam.group
+index f96c33d..8761fac 100755
+--- a/packaging/linux-hotplug/usbcam.group
++++ b/packaging/linux-hotplug/usbcam.group
+@@ -1,4 +1,4 @@
+-#!/bin/bash
++#!/bin/sh
+ # This program 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/packaging/linux-hotplug/usbcam.user b/packaging/linux-hotplug/usbcam.user
+index c46f155..a3ba71a 100644
+--- a/packaging/linux-hotplug/usbcam.user
++++ b/packaging/linux-hotplug/usbcam.user
+@@ -1,4 +1,4 @@
+-#!/bin/bash
++#!/bin/sh
+ # This program 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/packaging/linux-hotplug/usbcam.x11-app b/packaging/linux-hotplug/usbcam.x11-app
+index 023ae9b..618e7db 100644
+--- a/packaging/linux-hotplug/usbcam.x11-app
++++ b/packaging/linux-hotplug/usbcam.x11-app
+@@ -1,4 +1,4 @@
+-#!/bin/bash
++#!/bin/sh
+ # This program 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
+@@ -69,7 +69,7 @@ then
+ if [ "${USER}" != "root" ]
+ then
+ # we don't want to run this as root. definitely not.
+- cd "${DIRECTORY}"
++ cd "${DIRECTORY}" || exit 1
+ usrhome=~${USER}
+ "${SU}" "${USER}" -c "${ENV} DISPLAY=${DISPLAY} HOME=${usrhome} ${X11_APP}"
+ fi
+--
+2.9.3
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-graphics/gphoto2/libgphoto2_2.5.8.bb b/import-layers/meta-openembedded/meta-oe/recipes-graphics/gphoto2/libgphoto2_2.5.8.bb
index 098da79ad..5e798efb3 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-graphics/gphoto2/libgphoto2_2.5.8.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-graphics/gphoto2/libgphoto2_2.5.8.bb
@@ -16,6 +16,7 @@ SRC_URI = "${SOURCEFORGE_MIRROR}/gphoto/libgphoto2-${PV}.tar.bz2;name=libgphoto2
file://0001-configure.ac-remove-AM_PO_SUBDIRS.patch \
file://0002-correct-jpeg-memsrcdest-support.patch \
file://avoid_using_sprintf.patch \
+ file://0001-scripts-remove-bashisms.patch \
"
SRC_URI[libgphoto2.md5sum] = "873ab01aced49c6b92a98e515db5dcef"
@@ -23,7 +24,7 @@ SRC_URI[libgphoto2.sha256sum] = "031a262e342fae43f724afe66787947ce1fb483277dfe5a
inherit autotools pkgconfig gettext lib_package
-EXTRA_OECONF = " --with-drivers=all udevscriptdir=/lib/udev ac_cv_lib_ltdl_lt_dlcaller_register=yes"
+EXTRA_OECONF = " --with-drivers=all udevscriptdir=${nonarch_base_libdir}/udev ac_cv_lib_ltdl_lt_dlcaller_register=yes"
PACKAGECONFIG ??= ""
PACKAGECONFIG[gd] = ",--without-gdlib,gd"
@@ -47,7 +48,6 @@ do_install_append() {
PACKAGES =+ "libgphotoport libgphoto2-camlibs"
FILES_libgphoto2-camlibs = "${libdir}/libgphoto2*/*/*.so*"
RRECOMMENDS_${PN} = "libgphoto2-camlibs"
-RDEPENDS_${PN} = "bash"
FILES_libgphotoport = "${libdir}/libgphoto2_port.so.*"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-graphics/gtkperf/gtkperf/0001-Include-stdlib.h-for-exit-API.patch b/import-layers/meta-openembedded/meta-oe/recipes-graphics/gtkperf/gtkperf/0001-Include-stdlib.h-for-exit-API.patch
new file mode 100644
index 000000000..d529ddd23
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-graphics/gtkperf/gtkperf/0001-Include-stdlib.h-for-exit-API.patch
@@ -0,0 +1,34 @@
+From f8ac48abded02353918b02db38629988bd111c46 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Tue, 27 Jun 2017 08:19:44 -0700
+Subject: [PATCH 1/2] Include stdlib.h for exit() API
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Fixes
+main.c:81: warning: incompatible implicit declaration of built-in function ‘exit’
+
+Patch from Debian
+http://sources.debian.net/src/gtkperf/0.40%2Bds-2/debian/patches/01-include_stdlib.patch/
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/main.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/src/main.c b/src/main.c
+index 888eb36..c226799 100644
+--- a/src/main.c
++++ b/src/main.c
+@@ -11,6 +11,7 @@
+ #endif
+
+ #include <getopt.h>
++#include <stdlib.h>
+
+ #include "interface.h"
+ #include "support.h"
+--
+2.13.2
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-graphics/gtkperf/gtkperf/0002-timing.c-Fix-format-security-errors.patch b/import-layers/meta-openembedded/meta-oe/recipes-graphics/gtkperf/gtkperf/0002-timing.c-Fix-format-security-errors.patch
new file mode 100644
index 000000000..0548040af
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-graphics/gtkperf/gtkperf/0002-timing.c-Fix-format-security-errors.patch
@@ -0,0 +1,42 @@
+From 47974b8473c5b928f6742caee466f5c2d4d2e9eb Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Tue, 27 Jun 2017 08:22:26 -0700
+Subject: [PATCH 2/2] timing.c: Fix format-security errors
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/timing.c | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/src/timing.c b/src/timing.c
+index 0b8f0eb..c0668c9 100644
+--- a/src/timing.c
++++ b/src/timing.c
+@@ -97,7 +97,7 @@ add_test_info_time (AppData * appdata)
+ gtk_text_buffer_insert (appdata->textview_info_buffer, &iter,
+ timestring, -1);
+
+- g_printf (timestring);
++ g_printf ("%s", timestring);
+
+ }
+
+@@ -129,7 +129,7 @@ add_test_info_end (AppData * appdata)
+ gtk_statusbar_push (GTK_STATUSBAR (appdata->statusbar_main), 0,
+ " Test Finished");
+
+- g_printf (timestring);
++ g_printf ("%s", timestring);
+
+ }
+
+@@ -154,5 +154,5 @@ add_test_info_start (AppData * appdata)
+ gtk_statusbar_push (GTK_STATUSBAR (appdata->statusbar_main), 0,
+ " Running tests...");
+
+- g_printf (timestring);
++ g_printf ("%s", timestring);
+ }
+--
+2.13.2
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-graphics/gtkperf/gtkperf_0.40.bb b/import-layers/meta-openembedded/meta-oe/recipes-graphics/gtkperf/gtkperf_0.40.bb
index e404a7a51..2db91904f 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-graphics/gtkperf/gtkperf_0.40.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-graphics/gtkperf/gtkperf_0.40.bb
@@ -4,7 +4,10 @@ LICENSE = "LGPLv2.1"
LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
SRC_URI = "http://prdownloads.sourceforge.net/${BPN}/${BPN}_${PV}.tar.gz \
- file://Makevars"
+ file://Makevars \
+ file://0001-Include-stdlib.h-for-exit-API.patch \
+ file://0002-timing.c-Fix-format-security-errors.patch \
+ "
SRC_URI[md5sum] = "4331dde4bb83865e15482885fcb0cc53"
SRC_URI[sha256sum] = "9704344e732038eecbd007dd996a56293a6b027b5b76f3f036273a3fae1ab27b"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-graphics/libmng/libmng_2.0.3.bb b/import-layers/meta-openembedded/meta-oe/recipes-graphics/libmng/libmng_2.0.3.bb
new file mode 100644
index 000000000..ba928d281
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-graphics/libmng/libmng_2.0.3.bb
@@ -0,0 +1,23 @@
+# Copyright (C) 2016 Khem Raj <raj.khem@gmail.com>
+# Released under the MIT license (see COPYING.MIT for the terms)
+
+DESCRIPTION = "Development files for the Multiple-image Network Graphics library"
+HOMEPAGE = "http://www.libpng.org/pub/mng/"
+LICENSE = "Zlib"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=32becdb8930f90eab219a8021130ec09"
+SECTION = "devel"
+DEPENDS = "zlib"
+
+SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BP}.tar.gz"
+
+SRC_URI[md5sum] = "7e9a12ba2a99dff7e736902ea07383d4"
+SRC_URI[sha256sum] = "cf112a1fb02f5b1c0fce5cab11ea8243852c139e669c44014125874b14b7dfaa"
+
+inherit autotools-brokensep pkgconfig
+
+PACKAGECONFIG ??= "jpeg"
+
+PACKAGECONFIG[jpeg] = "--with-jpeg,--without-jpeg,jpeg"
+PACKAGECONFIG[lcms] = "--with-lcms2,--without-lcms2,lcms"
+
+BBCLASSEXTEND = "native"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-graphics/libsexy/libsexy_0.1.11.bb b/import-layers/meta-openembedded/meta-oe/recipes-graphics/libsexy/libsexy_0.1.11.bb
index 86b4958cf..2ba1ebbb7 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-graphics/libsexy/libsexy_0.1.11.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-graphics/libsexy/libsexy_0.1.11.bb
@@ -4,3 +4,5 @@ PR = "r2"
SRC_URI[md5sum] = "33c079a253270ec8bfb9508e4bb30754"
SRC_URI[sha256sum] = "8c4101a8cda5fccbba85ba1a15f46f2cf75deaa8b3c525ce5b135b9e1a8fe49e"
+
+PNBLACKLIST[libsexy] ?= "Fails to build with RSS http://errors.yoctoproject.org/Errors/Details/130607/ - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-graphics/libvncserver/libvncserver/0002-format_string.patch b/import-layers/meta-openembedded/meta-oe/recipes-graphics/libvncserver/libvncserver/0002-format_string.patch
new file mode 100644
index 000000000..566a2087c
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-graphics/libvncserver/libvncserver/0002-format_string.patch
@@ -0,0 +1,21 @@
+From: Luca Falavigna <dktrkranz@debian.org>
+Date: Tue, 27 Jan 2015 01:26:04 +0000
+Subject: format_string
+
+---
+ client_examples/gtkvncviewer.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/client_examples/gtkvncviewer.c b/client_examples/gtkvncviewer.c
+index 261b2da..861e4e3 100644
+--- a/client_examples/gtkvncviewer.c
++++ b/client_examples/gtkvncviewer.c
+@@ -588,7 +588,7 @@ static void GtkDefaultLog (const char *format, ...)
+
+ time (&log_clock);
+ strftime (buf, 255, "%d/%m/%Y %X ", localtime (&log_clock));
+- fprintf (stdout, buf);
++ fprintf (stdout, "%s", buf);
+
+ vfprintf (stdout, format, args);
+ fflush (stdout);
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-graphics/libvncserver/libvncserver_0.9.10.bb b/import-layers/meta-openembedded/meta-oe/recipes-graphics/libvncserver/libvncserver_0.9.10.bb
index 387202bee..0eba87c5b 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-graphics/libvncserver/libvncserver_0.9.10.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-graphics/libvncserver/libvncserver_0.9.10.bb
@@ -14,6 +14,7 @@ SRC_URI = "\
${DEBIAN_MIRROR}/main/libv/libvncserver/libvncserver_0.9.10+dfsg.orig.tar.xz \
file://0001-remove-webclients-build.patch \
file://0002-common-add-sha1.patch \
+ file://0002-format_string.patch \
"
SRC_URI[md5sum] = "e883b6c7bd339a5e1c48645051abe5c4"
@@ -21,4 +22,6 @@ SRC_URI[sha256sum] = "583f28869b82aec57768d7d18cd7ff81bf092ecbbc1209b587c2c2cd68
S = "${WORKDIR}/${BPN}-LibVNCServer-${PV}"
+EXTRA_OECONF += "--without-libva"
+
TARGET_LDFLAGS += "-lgcrypt"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-graphics/lxdm/lxdm/0001-check-for-libexecinfo-providing-backtrace-APIs.patch b/import-layers/meta-openembedded/meta-oe/recipes-graphics/lxdm/lxdm/0001-check-for-libexecinfo-providing-backtrace-APIs.patch
new file mode 100644
index 000000000..f9fd4970f
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-graphics/lxdm/lxdm/0001-check-for-libexecinfo-providing-backtrace-APIs.patch
@@ -0,0 +1,36 @@
+From 1d2425febf2020e38db70188df582acc9f37b136 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Thu, 30 Mar 2017 13:01:33 -0700
+Subject: [PATCH] check for libexecinfo providing backtrace() APIs
+
+on musl it depends on external library to provide backtrace APIs
+unlike glibc where it is bundled in
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ configure.ac | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/configure.ac b/configure.ac
+index aa3291c..b15f65d 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -15,6 +15,7 @@ AM_PROG_CC_C_O
+
+ # Checks for libraries.
+ AC_CHECK_LIB([crypt], [crypt])
++AC_CHECK_LIB([execinfo], [backtrace])
+
+ # Check for PAM support
+ AC_ARG_WITH(pam, AC_HELP_STRING([--with-pam],[Use PAM for authentication]),
+@@ -33,6 +34,7 @@ AM_CONDITIONAL(HAVE_PAM, [test -n "$USE_PAM" -a "x$USE_PAM" != xno ])
+ # Checks for header files.
+ AC_PATH_X
+ AC_CHECK_HEADERS([shadow.h stdlib.h string.h unistd.h utmpx.h])
++AC_CHECK_HEADERS([execinfo.h])
+
+ # Checks for typedefs, structures, and compiler characteristics.
+ AC_TYPE_PID_T
+--
+2.12.1
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-graphics/lxdm/lxdm_0.5.3.bb b/import-layers/meta-openembedded/meta-oe/recipes-graphics/lxdm/lxdm_0.5.3.bb
index 407129dde..c98c3a132 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-graphics/lxdm/lxdm_0.5.3.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-graphics/lxdm/lxdm_0.5.3.bb
@@ -2,13 +2,13 @@ SUMMARY = "LXDM is the lightweight display manager"
HOMEPAGE = "http://blog.lxde.org/?p=531"
LICENSE = "GPLv3"
LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
-SRC_URI = " \
- ${SOURCEFORGE_MIRROR}/project/${BPN}/${BPN}%20${PV}/${BPN}-${PV}.tar.xz \
- file://lxdm.conf \
- ${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'file://lxdm-pam file://lxdm-pam-debug', '', d)} \
- ${@bb.utils.contains("DISTRO_TYPE", "debug", "", "file://0001-lxdm.conf.in-blacklist-root-for-release-images.patch",d)} \
- file://0002-let-autotools-create-lxdm.conf.patch \
-"
+SRC_URI = "${SOURCEFORGE_MIRROR}/project/${BPN}/${BPN}%20${PV}/${BPN}-${PV}.tar.xz \
+ file://lxdm.conf \
+ ${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'file://lxdm-pam file://lxdm-pam-debug', '', d)} \
+ ${@bb.utils.contains("DISTRO_TYPE", "debug", "", "file://0001-lxdm.conf.in-blacklist-root-for-release-images.patch",d)} \
+ file://0002-let-autotools-create-lxdm.conf.patch \
+ file://0001-check-for-libexecinfo-providing-backtrace-APIs.patch \
+ "
SRC_URI[md5sum] = "061caae432634e6db38bbdc84bc6ffa0"
SRC_URI[sha256sum] = "4891efee81c72a400cc6703e40aa76f3f3853833d048b72ec805da0f93567f2f"
@@ -16,6 +16,7 @@ PE = "1"
DEPENDS = "virtual/libintl intltool-native cairo dbus gdk-pixbuf glib-2.0 gtk+ virtual/libx11 libxcb pango iso-codes"
DEPENDS += "${@bb.utils.contains("DISTRO_FEATURES", "systemd", "", "consolekit", d)}"
+DEPENDS_append_libc-musl = " libexecinfo"
# combine oe-core way with angstrom DISTRO_TYPE
DISTRO_TYPE ?= "${@bb.utils.contains("IMAGE_FEATURES", "debug-tweaks", "debug", "",d)}"
@@ -25,6 +26,7 @@ inherit autotools pkgconfig gettext systemd distro_features_check
REQUIRED_DISTRO_FEATURES = "x11"
CFLAGS_append = " -fno-builtin-fork -fno-builtin-memset -fno-builtin-strstr "
+LDFLAGS_append_libc-musl = " -lexecinfo"
EXTRA_OECONF += "--enable-gtk3=no --enable-password=yes --with-x -with-xconn=xcb \
${@bb.utils.contains('DISTRO_FEATURES', 'systemd', '--with-systemdsystemunitdir=${systemd_unitdir}/system/ --disable-consolekit', '--without-systemdsystemunitdir', d)} \
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-graphics/pango/pangomm_2.36.0.bb b/import-layers/meta-openembedded/meta-oe/recipes-graphics/pango/pangomm_2.40.1.bb
index f7381531b..02bb1cc93 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-graphics/pango/pangomm_2.36.0.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-graphics/pango/pangomm_2.40.1.bb
@@ -6,11 +6,11 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=d8045f3b8f929c1cb29a1e3fd737b499 \
DEPENDS = "mm-common cairomm glibmm pango"
-SHRT_VER = "${@d.getVar('PV',1).split('.')[0]}.${@d.getVar('PV',1).split('.')[1]}"
+SHRT_VER = "${@d.getVar('PV').split('.')[0]}.${@d.getVar('PV').split('.')[1]}"
SRC_URI = "http://ftp.gnome.org/pub/GNOME/sources/pangomm/${SHRT_VER}/pangomm-${PV}.tar.xz"
-SRC_URI[md5sum] = "62910723211d86ab825b666b479871c9"
-SRC_URI[sha256sum] = "a8d96952c708d7726bed260d693cece554f8f00e48b97cccfbf4f5690b6821f0"
+SRC_URI[md5sum] = "874eadd9434613dbacf0272c82c3ac23"
+SRC_URI[sha256sum] = "9762ee2a2d5781be6797448d4dd2383ce14907159b30bc12bf6b08e7227be3af"
inherit autotools pkgconfig
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-graphics/slim/slim_1.3.2.bb b/import-layers/meta-openembedded/meta-oe/recipes-graphics/slim/slim_1.3.2.bb
index 71359e012..2fbdcab46 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-graphics/slim/slim_1.3.2.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-graphics/slim/slim_1.3.2.bb
@@ -79,4 +79,4 @@ systemctl disable slim.service
sed -i /slim/d $D${sysconfdir}/X11/default-display-manager || true
}
-PNBLACKLIST[slim] ?= "does not build with distroless qemuarm as reported in 'State of bitbake world' thread, nobody volunteered to fix them"
+PNBLACKLIST[slim] ?= "does not build with distroless qemuarm as reported in 'State of bitbake world' thread, nobody volunteered to fix them - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-graphics/terminus-font/terminus-font_4.38.bb b/import-layers/meta-openembedded/meta-oe/recipes-graphics/terminus-font/terminus-font_4.38.bb
index e5bea97d9..4c8399d7d 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-graphics/terminus-font/terminus-font_4.38.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-graphics/terminus-font/terminus-font_4.38.bb
@@ -16,7 +16,7 @@ SRC_URI[sha256sum] = "f6f4876a4dabe6a37c270c20bb9e141e38fb50e0bba200e1b9d0470e5e
inherit allarch fontcache
-PACKAGECONFIG ?= "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', '', d)}"
+PACKAGECONFIG ?= "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}"
PACKAGECONFIG[x11] = ""
# Don't use font cache mecanism for console packages
@@ -43,3 +43,5 @@ PACKAGES += "${PN}-consolefonts ${PN}-consoletrans ${PN}-pcf"
FILES_${PN}-consolefonts = "${datadir}/consolefonts"
FILES_${PN}-consoletrans = "${datadir}/consoletrans"
FILES_${PN}-pcf = "${datadir}/fonts/terminus"
+
+PNBLACKLIST[terminus-font] ?= "Fails to build with RSS http://errors.yoctoproject.org/Errors/Details/130638/ - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-graphics/tesseract/tesseract-lang_git.bb b/import-layers/meta-openembedded/meta-oe/recipes-graphics/tesseract/tesseract-lang_git.bb
index 28ea33e88..ac36a91a3 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-graphics/tesseract/tesseract-lang_git.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-graphics/tesseract/tesseract-lang_git.bb
@@ -18,7 +18,7 @@ do_install() {
python populate_packages_prepend () {
tessdata_dir= d.expand('${datadir}/tessdata')
pkgs = do_split_packages(d, tessdata_dir, '^([a-z_]*)\.*', '${BPN}-%s', 'tesseract-ocr language files for %s', extra_depends='')
- pn = d.getVar('PN', True)
+ pn = d.getVar('PN')
d.appendVar('RDEPENDS_' + pn, ' '+' '.join(pkgs))
}
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-graphics/ttf-fonts/ttf-abyssinica_1.500.bb b/import-layers/meta-openembedded/meta-oe/recipes-graphics/ttf-fonts/ttf-abyssinica_1.500.bb
index cd96fbb41..ce003e922 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-graphics/ttf-fonts/ttf-abyssinica_1.500.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-graphics/ttf-fonts/ttf-abyssinica_1.500.bb
@@ -6,7 +6,7 @@ LICENSE = "OFL-1.1"
LIC_FILES_CHKSUM = "file://OFL.txt;md5=1694c7fc245cdc85c9971db707928159"
SRCNAME = "AbyssinicaSIL"
-SRC_URI = "http://software.sil.org/downloads/d/abyssinica/${SRCNAME}-${PV}.zip"
+SRC_URI = "http://software.sil.org/downloads/r/abyssinica/${SRCNAME}-${PV}.zip"
S = "${WORKDIR}/${SRCNAME}-${PV}"
SRC_URI[md5sum] = "a3d943d18e303197c8d3d92d2de54d1e"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-graphics/vdpau/libvdpau_git.bb b/import-layers/meta-openembedded/meta-oe/recipes-graphics/vdpau/libvdpau_git.bb
new file mode 100644
index 000000000..31f4df486
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-graphics/vdpau/libvdpau_git.bb
@@ -0,0 +1,23 @@
+SUMMARY = "Video Decode and Presentation API for UNIX"
+
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://COPYING;md5=83af8811a28727a13f04132cc33b7f58"
+
+DEPENDS = "virtual/libx11 libxext dri2proto"
+
+PV = "1.1.1+git${SRCPV}"
+
+SRCREV = "a21bf7aa438f5dd40d0a300a3167aa3d6f26dccc"
+SRC_URI = "git://anongit.freedesktop.org/vdpau/libvdpau"
+
+S = "${WORKDIR}/git"
+
+inherit autotools pkgconfig
+
+do_install_append() {
+ rm -f ${D}${libdir}/*/*.la
+}
+
+FILES_${PN}-dbg += "${libdir}/vdpau/.debug"
+FILES_${PN}-dev += "${libdir}/vdpau/lib*${SOLIBSDEV}"
+FILES_${PN} += "${libdir}/vdpau/lib*${SOLIBS}"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-graphics/wayland/wayland-fits_git.bb b/import-layers/meta-openembedded/meta-oe/recipes-graphics/wayland/wayland-fits_git.bb
index d060c4747..2af669770 100755
--- a/import-layers/meta-openembedded/meta-oe/recipes-graphics/wayland/wayland-fits_git.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-graphics/wayland/wayland-fits_git.bb
@@ -31,3 +31,5 @@ do_install_append() {
FILES_${PN} += "${bindir}/wfits ${libdir}/weston/*.so"
FILES_${PN}-dbg += "${bindir}/.debug ${libdir}/weston/.debug ${prefix}/src"
+
+PNBLACKLIST[wayland-fits] ?= "Fails to build with RSS http://errors.yoctoproject.org/Errors/Details/130632/ - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-graphics/xdotool/xdotool_1.20100416.2809.bb b/import-layers/meta-openembedded/meta-oe/recipes-graphics/xdotool/xdotool_1.20100416.2809.bb
index 474d2986f..b68e994ab 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-graphics/xdotool/xdotool_1.20100416.2809.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-graphics/xdotool/xdotool_1.20100416.2809.bb
@@ -7,7 +7,7 @@ DEPENDS = "virtual/libx11 libxtst"
PR = "r1"
-inherit distro_features_check
+inherit distro_features_check pkgconfig
# depends on virtual/libx11
REQUIRED_DISTRO_FEATURES = "x11"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xstdcmap_1.0.3.bb b/import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xstdcmap_1.0.3.bb
index 3f5511e75..99f70364b 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xstdcmap_1.0.3.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xstdcmap_1.0.3.bb
@@ -8,8 +8,9 @@ SECTION = "x11/app"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://COPYING;md5=2b08d9e2e718ac83e6fe2b974d4b5fd8"
-RDEPENDS_${PN} = "libxmu"
+DEPENDS += "libxmu"
BBCLASSEXTEND = "native"
SRC_URI[md5sum] = "eb5473acaef15a5db9b50df29c6a7f90"
SRC_URI[sha256sum] = "f648e2b0cf16aa29856de998e2c7204be39dc1f8daeda9464d32288e0b580fc1"
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-driver/xf86-input-mtev_git.bb b/import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-driver/xf86-input-mtev_git.bb
index 547ec86c1..5f2adec1a 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-driver/xf86-input-mtev_git.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-driver/xf86-input-mtev_git.bb
@@ -5,7 +5,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=8a71d0475d08eee76d8b6d0c6dbec543"
DEPENDS += "pixman"
-PNBLACKLIST[xf86-input-mtev] ?= "BROKEN: doesn't build with B!=S (Makefile without ${S} in sed call)"
+PNBLACKLIST[xf86-input-mtev] ?= "BROKEN: doesn't build with B!=S (Makefile without ${S} in sed call) - the recipe will be removed on 2017-09-01 unless the issue is fixed"
SRC_URI = "git://gitorious.org/xorg/xf86-input-mtev.git file://fix-it.patch"
SRCREV = "1eb469166ffc095c5801475f057f911f97a6e641"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-driver/xf86-input-tslib_0.0.6.bb b/import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-driver/xf86-input-tslib_0.0.6.bb
index 082c77113..6a3689a2e 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-driver/xf86-input-tslib_0.0.6.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-driver/xf86-input-tslib_0.0.6.bb
@@ -28,8 +28,8 @@ do_configure_prepend() {
do_install_append() {
install -d ${D}/${datadir}/hal/fdi/policy/20thirdparty
install -m 0644 ${WORKDIR}/10-x11-input-tslib.fdi ${D}/${datadir}/hal/fdi/policy/20thirdparty
- install -d ${D}/lib/udev/rules.d
- install -m 0644 ${WORKDIR}/99-xf86-input-tslib.rules ${D}/lib/udev/rules.d/
+ install -d ${D}${nonarch_base_libdir}/udev/rules.d
+ install -m 0644 ${WORKDIR}/99-xf86-input-tslib.rules ${D}${nonarch_base_libdir}/udev/rules.d/
}
-FILES_${PN} += "${datadir}/hal /lib/udev"
+FILES_${PN} += "${datadir}/hal ${nonarch_base_libdir}/udev"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-driver/xf86-video-ati_7.6.1.bb b/import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-driver/xf86-video-ati_7.8.0.bb
index bffa7b030..a1010087c 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-driver/xf86-video-ati_7.6.1.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-driver/xf86-video-ati_7.8.0.bb
@@ -11,8 +11,8 @@ DEPENDS += "virtual/libx11 libxvmc drm xf86driproto glproto \
COMPATIBLE_HOST = '(i.86|x86_64).*-linux'
-SRC_URI[md5sum] = "ede86cd3d1b1d8882f0aea61d9e924ed"
-SRC_URI[sha256sum] = "2516d9eeb8da8bcd3a01365ed1314919777910fa904ab268af342b5693e1d34c"
+SRC_URI[md5sum] = "f34d04a755e761e03b459155fa3ddcbb"
+SRC_URI[sha256sum] = "401f5de772928f3dc4ce43a885adb0a47a2f61aa4a9e45d2ab3d184136a9d6fa"
EXTRA_OECONF += "--disable-glamor"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-driver/xf86-video-geode_2.11.16.bb b/import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-driver/xf86-video-geode_2.11.16.bb
index d26759861..e543413ad 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-driver/xf86-video-geode_2.11.16.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-driver/xf86-video-geode_2.11.16.bb
@@ -13,4 +13,4 @@ COMPATIBLE_HOST = "i.86.*-linux"
RDEPENDS_${PN} += "xserver-xorg-module-exa"
# 2_2.11.16-r21.0/xf86-video-geode-2.11.16/src/gx_driver.c:376:20: error: implicit declaration of function 'xf86MapVidMem' [-Werror=implicit-function-declaration]
-PNBLACKLIST[xf86-video-geode] ?= "BROKEN, fails to build"
+PNBLACKLIST[xf86-video-geode] ?= "BROKEN, fails to build - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-driver/xf86-video-glamo_git.bb b/import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-driver/xf86-video-glamo_git.bb
index 74c066f58..5818d0cc9 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-driver/xf86-video-glamo_git.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-driver/xf86-video-glamo_git.bb
@@ -21,3 +21,5 @@ S = "${WORKDIR}/git"
SRCREV = "cb9ed17035a79e49dde26a1e7e2bc5f10fd8144b"
EXTRA_OECONF = " --disable-kms "
+
+PNBLACKLIST[xf86-video-glamo] ?= "Fails to build with RSS http://errors.yoctoproject.org/Errors/Details/130629/ - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-driver/xf86-video-nouveau_1.0.12.bb b/import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-driver/xf86-video-nouveau_1.0.12.bb
index 3a7507c23..444189a89 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-driver/xf86-video-nouveau_1.0.12.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-driver/xf86-video-nouveau_1.0.12.bb
@@ -15,3 +15,5 @@ COMPATIBLE_HOST = '(i.86|x86_64).*-linux'
SRC_URI[md5sum] = "dc79910c7b9e32321cefc7af250c7765"
SRC_URI[sha256sum] = "0ea057ad7fc31caba2d4e46c7e418fe2b3c762b04fb8d382f53383397fd8391e"
+
+PNBLACKLIST[xf86-video-nouveau] ?= "Fails to build with RSS http://errors.yoctoproject.org/Errors/Details/130657/ - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-font/font-adobe-100dpi_1.0.3.bb b/import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-font/font-adobe-100dpi_1.0.3.bb
index 85a44660e..29229bb51 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-font/font-adobe-100dpi_1.0.3.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-font/font-adobe-100dpi_1.0.3.bb
@@ -6,7 +6,7 @@ SECTION = "x11/font"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://COPYING;md5=5dfa0fdf45473b4ca0acf37d854df10e"
-DEPENDS = "util-macros-native font-util-native bdftopcf-native"
+DEPENDS = "util-macros-native font-util-native bdftopcf-native font-util"
RDEPENDS_${PN} = "encodings font-util"
RDEPENDS_${PN}_class-native = "font-util-native"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-font/font-adobe-utopia-100dpi_1.0.4.bb b/import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-font/font-adobe-utopia-100dpi_1.0.4.bb
index 16e3d2cec..898850bbc 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-font/font-adobe-utopia-100dpi_1.0.4.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-font/font-adobe-utopia-100dpi_1.0.4.bb
@@ -6,7 +6,7 @@ SECTION = "x11/font"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://COPYING;md5=fa13e704b7241f60ef9105cc041b9732"
-DEPENDS = "util-macros-native font-util-native bdftopcf-native"
+DEPENDS = "util-macros-native font-util-native bdftopcf-native font-util"
RDEPENDS_${PN} = "encodings font-util"
RDEPENDS_${PN}_class-native = "font-util-native"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-font/font-bh-100dpi_1.0.3.bb b/import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-font/font-bh-100dpi_1.0.3.bb
index 08ed6b616..4976e527f 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-font/font-bh-100dpi_1.0.3.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-font/font-bh-100dpi_1.0.3.bb
@@ -6,7 +6,7 @@ SECTION = "x11/font"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://COPYING;md5=cffd5e9c4b61b3d74166ca74b99e460e"
-DEPENDS = "util-macros-native font-util-native bdftopcf-native"
+DEPENDS += "util-macros-native font-util-native bdftopcf-native font-util"
RDEPENDS_${PN} = "encodings font-util"
RDEPENDS_${PN}_class-native = "font-util-native"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-font/font-bh-lucidatypewriter-100dpi_1.0.3.bb b/import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-font/font-bh-lucidatypewriter-100dpi_1.0.3.bb
index 5ded41aeb..6e0b33ca3 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-font/font-bh-lucidatypewriter-100dpi_1.0.3.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-font/font-bh-lucidatypewriter-100dpi_1.0.3.bb
@@ -6,7 +6,7 @@ SECTION = "x11/font"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://COPYING;md5=0d221a9cd144806cb469735cc4775939"
-DEPENDS = "util-macros-native font-util-native bdftopcf-native"
+DEPENDS = "util-macros-native font-util-native bdftopcf-native font-util"
RDEPENDS_${PN} = "encodings font-util"
RDEPENDS_${PN}_class-native = "font-util-native"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-font/font-misc-misc_1.1.2.bb b/import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-font/font-misc-misc_1.1.2.bb
index a7c284a2f..e4cd90a7a 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-font/font-misc-misc_1.1.2.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-font/font-misc-misc_1.1.2.bb
@@ -6,7 +6,7 @@ SECTION = "x11/font"
LICENSE = "PD"
LIC_FILES_CHKSUM = "file://COPYING;md5=200c507f595ee97008c7c5c3e94ab9a8"
-DEPENDS = "util-macros-native font-util-native bdftopcf-native"
+DEPENDS = "util-macros-native font-util-native bdftopcf-native font-util"
RDEPENDS_${PN} = "encodings font-util"
inherit distro_features_check
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-font/xorg-fonts-100dpi.bb b/import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-font/xorg-fonts-100dpi.bb
index 45e3f7b59..fcf68262c 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-font/xorg-fonts-100dpi.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-graphics/xorg-font/xorg-fonts-100dpi.bb
@@ -12,3 +12,13 @@ RDEPENDS_${PN} = "\
font-bh-lucidatypewriter-100dpi \
font-bitstream-100dpi \
"
+
+PNBLACKLIST[xorg-fonts-100dpi] ?= "Runtime depends on blacklisted font-adobe-100dpi - the recipe will be removed on 2017-09-01 unless the issue is fixed"
+
+PNBLACKLIST[xorg-fonts-100dpi] ?= "Runtime depends on blacklisted xorg-fonts-100dpi - the recipe will be removed on 2017-09-01 unless the issue is fixed"
+
+PNBLACKLIST[xorg-fonts-100dpi] ?= "Runtime depends on blacklisted font-bh-100dpi - the recipe will be removed on 2017-09-01 unless the issue is fixed"
+
+PNBLACKLIST[xorg-fonts-100dpi] ?= "Runtime depends on blacklisted font-adobe-utopia-100dpi - the recipe will be removed on 2017-09-01 unless the issue is fixed"
+
+PNBLACKLIST[xorg-fonts-100dpi] ?= "Runtime depends on blacklisted font-bh-lucidatypewriter-100dpi - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-graphics/xserver-common/xserver-common-1.34/0001-Don-t-install-Xsession-or-Xserver.patch b/import-layers/meta-openembedded/meta-oe/recipes-graphics/xserver-common/xserver-common-1.34/0001-Don-t-install-Xsession-or-Xserver.patch
new file mode 100644
index 000000000..26288d6d1
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-graphics/xserver-common/xserver-common-1.34/0001-Don-t-install-Xsession-or-Xserver.patch
@@ -0,0 +1,30 @@
+From c92ce6a4b3622874f820b5ec487a2b63f519826c Mon Sep 17 00:00:00 2001
+From: Jussi Kukkonen <jussi.kukkonen@intel.com>
+Date: Thu, 10 Nov 2016 14:33:05 +0200
+Subject: [PATCH] Don't install Xsession or Xserver
+
+The goal is to use Xsession and Xserver from xserver-nodm-init.
+Xsession scripts and xserver-common from this recipe will still
+be used as before.
+
+Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
+---
+ Makefile | 1 -
+ 1 file changed, 1 deletion(-)
+
+diff --git a/Makefile b/Makefile
+index caa5de1..7e36bbc 100644
+--- a/Makefile
++++ b/Makefile
+@@ -20,7 +20,5 @@ install-program:
+ install -m 755 run-calibrate.sh $(DESTDIR)$(PREFIX)/bin/run-calibrate.sh
+ install -m 644 X11/Xdefaults $(DESTDIR)/etc/X11/Xdefaults
+ install -m 755 X11/Xinit $(DESTDIR)/etc/X11/Xinit
+- install -m 755 X11/Xserver $(DESTDIR)/etc/X11/Xserver
+- install -m 755 X11/Xsession $(DESTDIR)/etc/X11/Xsession
+ install -m 755 X11/xserver-common $(DESTDIR)/etc/X11/xserver-common
+ install -m 755 X11/functions $(DESTDIR)/etc/X11/functions
+ install -d $(DESTDIR)/etc/X11/xmodmap
+--
+2.1.4
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-graphics/xserver-common/xserver-common-1.34/0003-add-89xdgautostart-Xsession.d-script.patch b/import-layers/meta-openembedded/meta-oe/recipes-graphics/xserver-common/xserver-common-1.34/0003-add-89xdgautostart-Xsession.d-script.patch
deleted file mode 100644
index bf806a991..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-graphics/xserver-common/xserver-common-1.34/0003-add-89xdgautostart-Xsession.d-script.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From a93a86c2ff1ca5eb35615f4e1568409ff342aa7f Mon Sep 17 00:00:00 2001
-From: Martin Jansa <Martin.Jansa@gmail.com>
-Date: Wed, 11 Apr 2012 14:29:41 +0200
-Subject: [PATCH 03/12] add 89xdgautostart Xsession.d script
-
-Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
----
- X11/Xsession.d/89xdgautostart | 9 +++++++++
- 1 files changed, 9 insertions(+), 0 deletions(-)
- create mode 100644 X11/Xsession.d/89xdgautostart
-
-diff --git a/X11/Xsession.d/89xdgautostart b/X11/Xsession.d/89xdgautostart
-new file mode 100644
-index 0000000..9886f9f
---- /dev/null
-+++ b/X11/Xsession.d/89xdgautostart
-@@ -0,0 +1,9 @@
-+#!/bin/sh
-+
-+XDGAUTOSTART=/etc/xdg/autostart
-+if [ -d $XDGAUTOSTART ] ; then
-+ for SCRIPT in $XDGAUTOSTART/*; do
-+ CMD=`grep ^Exec= $SCRIPT | cut -d '=' -f 2`
-+ $CMD &
-+ done
-+fi
---
-1.7.8.5
-
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-graphics/xserver-common/xserver-common-1.34/0005-add-XWindowManager-Xsession.d-script.patch b/import-layers/meta-openembedded/meta-oe/recipes-graphics/xserver-common/xserver-common-1.34/0005-add-XWindowManager-Xsession.d-script.patch
deleted file mode 100644
index 1782665b2..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-graphics/xserver-common/xserver-common-1.34/0005-add-XWindowManager-Xsession.d-script.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-From b01a532ebb525552e23d7169a2aeb55c42b3ec99 Mon Sep 17 00:00:00 2001
-From: Martin Jansa <Martin.Jansa@gmail.com>
-Date: Wed, 11 Apr 2012 14:32:13 +0200
-Subject: [PATCH 05/12] add XWindowManager Xsession.d script
-
-Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
----
- X11/Xsession.d/90xXWindowManager | 6 ++++++
- 1 files changed, 6 insertions(+), 0 deletions(-)
- create mode 100644 X11/Xsession.d/90xXWindowManager
-
-Index: xserver-common-1.34/X11/Xsession.d/90xXWindowManager
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ xserver-common-1.34/X11/Xsession.d/90xXWindowManager 2012-06-28 15:02:22.010521773 +0200
-@@ -0,0 +1,7 @@
-+if [ -x $HOME/.Xsession ]; then
-+ exec $HOME/.Xsession
-+elif [ -x /usr/bin/x-session-manager ]; then
-+ exec /usr/bin/x-session-manager
-+else
-+ exec /usr/bin/x-window-manager
-+fi
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-graphics/xserver-common/xserver-common-1.34/0014-Xserver-Start-Xsession-like-x11-common-does.patch b/import-layers/meta-openembedded/meta-oe/recipes-graphics/xserver-common/xserver-common-1.34/0014-Xserver-Start-Xsession-like-x11-common-does.patch
deleted file mode 100644
index 5a759640c..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-graphics/xserver-common/xserver-common-1.34/0014-Xserver-Start-Xsession-like-x11-common-does.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From 8171f89944969a081be1ac193b2a59016e39a345 Mon Sep 17 00:00:00 2001
-From: Martin Jansa <Martin.Jansa@gmail.com>
-Date: Tue, 29 Oct 2013 17:07:21 +0100
-Subject: [PATCH 14/14] Xserver: Start Xsession like x11-common does
-
-Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
----
- X11/Xserver | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/X11/Xserver b/X11/Xserver
-index 559f059..4b88637 100755
---- a/X11/Xserver
-+++ b/X11/Xserver
-@@ -4,6 +4,6 @@
- . /etc/X11/xserver-common
-
- echo "tslib: $TSLIB_TSDEVICE"
--echo "exec $XSERVER $ARGS -dpi $DPI $*"
--exec $XSERVER $ARGS -dpi $DPI $*
-+echo "exec xinit /etc/X11/Xsession -- $BINDIR/$XSERVER $ARGS -dpi $DPI $*"
-
-+exec xinit /etc/X11/Xsession -- $BINDIR/$XSERVER $ARGS -dpi $DPI $*
---
-1.8.4.2
-
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-graphics/xserver-common/xserver-common_1.34.bb b/import-layers/meta-openembedded/meta-oe/recipes-graphics/xserver-common/xserver-common_1.34.bb
index 0315ed7d6..cc3054184 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-graphics/xserver-common/xserver-common_1.34.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-graphics/xserver-common/xserver-common_1.34.bb
@@ -2,7 +2,7 @@ SUMMARY = "Common X11 scripts and support files"
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
-PR = "r8"
+PR = "r9"
# we are using a gpe-style Makefile
inherit gpe
@@ -13,8 +13,6 @@ SRC_URI[sha256sum] = "cd04c33418f776b1e13fcc7af3d6bd0c7cccd03fbabd7dbcd97f88166c
SRC_URI_append = " \
file://0001-COPYING-add-GPLv2-license-file.patch \
file://0002-add-setdpi-Xinit.d-script.patch \
- file://0003-add-89xdgautostart-Xsession.d-script.patch \
- file://0005-add-XWindowManager-Xsession.d-script.patch \
file://0006-add-support-for-etc-X11-xserver-system.patch \
file://0007-use-own-functions-file-instead-etc-init.d-functions.patch \
file://0008-xserver-common-add-dpi-and-nocursor-params-for-gta01.patch \
@@ -23,8 +21,8 @@ SRC_URI_append = " \
file://0011-xserver-common-add-support-for-nexus-one-alias-mahim.patch \
file://0012-xserver-common-add-support-for-gta04-alias-OpenPhoen.patch \
file://0013-xserver-common-add-support-for-tuna-alias-Galaxy-Nex.patch \
- file://0014-Xserver-Start-Xsession-like-x11-common-does.patch \
file://0015-xserver-common-disable-TCP-connections.patch \
+ file://0001-Don-t-install-Xsession-or-Xserver.patch \
"
do_install_append() {
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-graphics/xserver-nodm-init/xserver-nodm-init-2.0/gplv2-license.patch b/import-layers/meta-openembedded/meta-oe/recipes-graphics/xserver-nodm-init/xserver-nodm-init-2.0/gplv2-license.patch
deleted file mode 100644
index ec9325334..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-graphics/xserver-nodm-init/xserver-nodm-init-2.0/gplv2-license.patch
+++ /dev/null
@@ -1,353 +0,0 @@
-COPYING: add GPLv2 license file
-
-this is a local file recipe and the license file is missing.In order
-to pass the license checksum checking, the license file is needed. So
-this patch add the GPLv2 license file.
-
-Signed-off-by: Yu Ke <ke.yu@intel.com>
-
-diff --git a/COPYING b/COPYING
-new file mode 100644
-index 0000000..d511905
---- /dev/null
-+++ b/COPYING
-@@ -0,0 +1,339 @@
-+ 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/import-layers/meta-openembedded/meta-oe/recipes-graphics/xserver-nodm-init/xserver-nodm-init-2.0/xserver-nodm b/import-layers/meta-openembedded/meta-oe/recipes-graphics/xserver-nodm-init/xserver-nodm-init-2.0/xserver-nodm
deleted file mode 100755
index 5d7e8a2f3..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-graphics/xserver-nodm-init/xserver-nodm-init-2.0/xserver-nodm
+++ /dev/null
@@ -1,60 +0,0 @@
-#!/bin/sh
-#
-### BEGIN INIT INFO
-# Provides: xserver
-# Required-Start: $local_fs $remote_fs dbus
-# Required-Stop: $local_fs $remote_fs
-# Default-Start: 5
-# Default-Stop: 0 1 2 3 6
-### END INIT INFO
-
-
-. /etc/init.d/functions
-
-for x in $(cat /proc/cmdline); do
- case $x in
- x11=false)
- echo "X Server disabled"
- exit 0;
- ;;
- esac
-done
-
-case "$1" in
- start)
- # We don't want this script to block the rest of the boot process
- if [ "$2" != "background" ]; then
- $0 $1 background &
- else
- # work around from /etc/X11/Xinit
- export USER=root
- export HOME=/home/root
- if [ ! -d $HOME ] && [ -d /root ]; then
- HOME=/root
- fi
-
- . /etc/profile
-
- echo "Starting Xserver"
- . /etc/X11/xserver-common
- xinit /etc/X11/Xsession -- `which $XSERVER` $ARGS >/var/log/Xsession.log 2>&1
- fi
- ;;
-
- stop)
- echo "Stopping XServer"
- killproc xinit
- ;;
-
- restart)
- $0 stop
- sleep 1
- $0 start
- ;;
-
- *)
- echo "usage: $0 { start | stop | restart }"
- ;;
-esac
-
-exit 0
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-graphics/xserver-nodm-init/xserver-nodm-init-2.0/xserver-nodm.conf b/import-layers/meta-openembedded/meta-oe/recipes-graphics/xserver-nodm-init/xserver-nodm-init-2.0/xserver-nodm.conf
deleted file mode 100644
index 3c0582a87..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-graphics/xserver-nodm-init/xserver-nodm-init-2.0/xserver-nodm.conf
+++ /dev/null
@@ -1 +0,0 @@
-HOME=/home/root
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-graphics/xserver-nodm-init/xserver-nodm-init-2.0/xserver-nodm.service b/import-layers/meta-openembedded/meta-oe/recipes-graphics/xserver-nodm-init/xserver-nodm-init-2.0/xserver-nodm.service
deleted file mode 100644
index 94d221e78..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-graphics/xserver-nodm-init/xserver-nodm-init-2.0/xserver-nodm.service
+++ /dev/null
@@ -1,9 +0,0 @@
-[Unit]
-Description=Xserver startup with a display manager
-
-[Service]
-EnvironmentFile=/etc/default/xserver-nodm
-ExecStart=/etc/X11/Xserver
-
-[Install]
-Alias=display-manager.service
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-graphics/xserver-nodm-init/xserver-nodm-init_2.0.bb b/import-layers/meta-openembedded/meta-oe/recipes-graphics/xserver-nodm-init/xserver-nodm-init_2.0.bb
deleted file mode 100644
index 95a07d16c..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-graphics/xserver-nodm-init/xserver-nodm-init_2.0.bb
+++ /dev/null
@@ -1,41 +0,0 @@
-SUMMARY = "Simple Xserver Init Script (no dm)"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
-SECTION = "x11"
-
-PR = "r22"
-
-SRC_URI = "file://xserver-nodm \
- file://gplv2-license.patch \
- file://xserver-nodm.service \
- file://xserver-nodm.conf \
-"
-S = "${WORKDIR}"
-
-inherit update-rc.d systemd
-
-INITSCRIPT_NAME = "xserver-nodm"
-INITSCRIPT_PARAMS = "start 01 5 . stop 01 0 1 2 3 6 ."
-INITSCRIPT_PARAMS_shr = "start 90 5 . stop 90 0 1 2 3 6 ."
-
-do_install() {
- install -d ${D}${sysconfdir}/init.d
- install xserver-nodm ${D}${sysconfdir}/init.d
-
- install -d ${D}${sysconfdir}/default
-
- if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then
- install -d ${D}${systemd_unitdir}/system
- install xserver-nodm.conf ${D}${sysconfdir}/default/xserver-nodm
- install -m 0644 ${WORKDIR}/xserver-nodm.service ${D}${systemd_unitdir}/system
- fi
-}
-
-RDEPENDS_${PN} = "xserver-common (>= 1.30) xinit"
-
-RPROVIDES_${PN} += "${PN}-systemd"
-RREPLACES_${PN} += "${PN}-systemd"
-RCONFLICTS_${PN} += "${PN}-systemd"
-SYSTEMD_SERVICE_${PN} = "xserver-nodm.service"
-
-FILES_${PN} += "${sysconfdir}/default/xserver-nodm"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-kernel/crash/crash/0001-Fix-for-a-compilation-error-if-glibc-2.25-or-later-h.patch b/import-layers/meta-openembedded/meta-oe/recipes-kernel/crash/crash/0001-Fix-for-a-compilation-error-if-glibc-2.25-or-later-h.patch
new file mode 100644
index 000000000..9434815d8
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-kernel/crash/crash/0001-Fix-for-a-compilation-error-if-glibc-2.25-or-later-h.patch
@@ -0,0 +1,112 @@
+From b8c8fbe0a2481e97fc57dd596346827a692a5768 Mon Sep 17 00:00:00 2001
+From: Dave Anderson <anderson@redhat.com>
+Date: Tue, 28 Mar 2017 15:44:40 -0400
+Subject: [PATCH 1/3] Fix for a compilation error if glibc-2.25 or later has
+ been installed on the host build machine. Without the patch, the build fails
+ with the error message "amd64-linux-nat.c:496:1: error: conflicting types for
+ 'ps_get_thread_area'". (anderson@redhat.com)
+
+Upstream-Status: Backport
+
+Signed-off-by: Dengke Du <dengke.du@windriver.com>
+---
+ Makefile | 6 +++++
+ configure.c | 2 +-
+ gdb-7.6-proc_service.h.patch | 55 ++++++++++++++++++++++++++++++++++++++++++++
+ 3 files changed, 62 insertions(+), 1 deletion(-)
+ create mode 100644 gdb-7.6-proc_service.h.patch
+
+diff --git a/Makefile b/Makefile
+index 202ef8b..b6b7e80 100644
+--- a/Makefile
++++ b/Makefile
+@@ -264,6 +264,12 @@ gdb_patch:
+ if [ "${ARCH}" = "x86_64" ] && [ "${TARGET}" = "PPC64" ] && [ -f ${GDB}-ppc64le-support.patch ]; then \
+ patch -d ${GDB} -p1 -F0 < ${GDB}-ppc64le-support.patch ; \
+ fi
++ if [ -f /usr/include/proc_service.h ]; then \
++ grep 'extern ps_err_e ps_get_thread_area (struct' /usr/include/proc_service.h; \
++ if [ $$? -eq 0 ]; then \
++ patch -p0 < ${GDB}-proc_service.h.patch; \
++ fi; \
++ fi
+
+ library: make_build_data ${OBJECT_FILES}
+ ar -rs ${PROGRAM}lib.a ${OBJECT_FILES}
+diff --git a/configure.c b/configure.c
+index d63cdd7..776defe 100644
+--- a/configure.c
++++ b/configure.c
+@@ -240,7 +240,7 @@ struct supported_gdb_version {
+ "7.6",
+ "GDB_FILES=${GDB_7.6_FILES}",
+ "GDB_OFILES=${GDB_7.6_OFILES}",
+- "GDB_PATCH_FILES=gdb-7.6.patch gdb-7.6-ppc64le-support.patch",
++ "GDB_PATCH_FILES=gdb-7.6.patch gdb-7.6-ppc64le-support.patch gdb-7.6-proc_service.h.patch",
+ "GDB_FLAGS=-DGDB_7_6",
+ "GPLv3"
+ },
+diff --git a/gdb-7.6-proc_service.h.patch b/gdb-7.6-proc_service.h.patch
+new file mode 100644
+index 0000000..49d18bb
+--- /dev/null
++++ b/gdb-7.6-proc_service.h.patch
+@@ -0,0 +1,55 @@
++--- gdb-7.6/gdb/gdb_proc_service.h.orig
+++++ gdb-7.6/gdb/gdb_proc_service.h
++@@ -115,7 +115,7 @@ extern pid_t ps_getpid (struct ps_procha
++ /* Fetch the special per-thread address associated with the given LWP.
++ This call is only used on a few platforms (most use a normal register).
++ The meaning of the `int' parameter is machine-dependent. */
++-extern ps_err_e ps_get_thread_area (const struct ps_prochandle *,
+++extern ps_err_e ps_get_thread_area (struct ps_prochandle *,
++ lwpid_t, int, psaddr_t *);
++
++
++--- gdb-7.6/gdb/amd64-linux-nat.c.orig
+++++ gdb-7.6/gdb/amd64-linux-nat.c
++@@ -493,7 +493,7 @@ amd64_linux_new_fork (struct lwp_info *p
++ a request for a thread's local storage address. */
++
++ ps_err_e
++-ps_get_thread_area (const struct ps_prochandle *ph,
+++ps_get_thread_area (struct ps_prochandle *ph,
++ lwpid_t lwpid, int idx, void **base)
++ {
++ if (gdbarch_bfd_arch_info (target_gdbarch ())->bits_per_word == 32)
++--- gdb-7.6/gdb/aarch64-linux-nat.c.orig
+++++ gdb-7.6/gdb/aarch64-linux-nat.c
++@@ -750,7 +750,7 @@ aarch64_linux_new_fork (struct lwp_info
++ storage (or its descriptor). */
++
++ ps_err_e
++-ps_get_thread_area (const struct ps_prochandle *ph,
+++ps_get_thread_area (struct ps_prochandle *ph,
++ lwpid_t lwpid, int idx, void **base)
++ {
++ struct iovec iovec;
++--- gdb-7.6/gdb/arm-linux-nat.c.orig
+++++ gdb-7.6/gdb/arm-linux-nat.c
++@@ -613,7 +613,7 @@ supply_fpregset (struct regcache *regcac
++ /* Fetch the thread-local storage pointer for libthread_db. */
++
++ ps_err_e
++-ps_get_thread_area (const struct ps_prochandle *ph,
+++ps_get_thread_area (struct ps_prochandle *ph,
++ lwpid_t lwpid, int idx, void **base)
++ {
++ if (ptrace (PTRACE_GET_THREAD_AREA, lwpid, NULL, base) != 0)
++--- gdb-7.6/gdb/i386-linux-nat.c.orig
+++++ gdb-7.6/gdb/i386-linux-nat.c
++@@ -849,7 +849,7 @@ i386_linux_new_fork (struct lwp_info *pa
++ storage (or its descriptor). */
++
++ ps_err_e
++-ps_get_thread_area (const struct ps_prochandle *ph,
+++ps_get_thread_area (struct ps_prochandle *ph,
++ lwpid_t lwpid, int idx, void **base)
++ {
++ /* NOTE: cagney/2003-08-26: The definition of this buffer is found
+--
+2.8.1
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-kernel/crash/crash/0001-cross_add_configure_option.patch b/import-layers/meta-openembedded/meta-oe/recipes-kernel/crash/crash/0001-cross_add_configure_option.patch
index 39732a9ed..26a34e5c1 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-kernel/crash/crash/0001-cross_add_configure_option.patch
+++ b/import-layers/meta-openembedded/meta-oe/recipes-kernel/crash/crash/0001-cross_add_configure_option.patch
@@ -1,14 +1,15 @@
-From cbaaa42933bb27b1bcff4c7d71d54c913201ee88 Mon Sep 17 00:00:00 2001
+From 73269df4d8196abe81112acaa2613155b308a8b8 Mon Sep 17 00:00:00 2001
From: Lei Maohui <leimaohui@cn.fujitsu.com>
Date: Fri, 9 Jan 2015 11:51:18 +0900
-Subject: [PATCH] cross_add_configure_option
+Subject: [PATCH 1/9] cross_add_configure_option
+%% original patch: 0001-cross_add_configure_option.patch
---
Makefile | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/Makefile b/Makefile
-index 9c44633..39bebd0 100644
+index a2baec1..f1972c8 100644
--- a/Makefile
+++ b/Makefile
@@ -232,7 +232,7 @@ gdb_merge: force
@@ -20,15 +21,15 @@ index 9c44633..39bebd0 100644
--with-bugurl="" --with-expat=no --with-python=no --disable-sim; \
make --no-print-directory CRASH_TARGET=${TARGET}; echo ${TARGET} > crash.target) \
else make --no-print-directory rebuild; fi
-@@ -277,7 +277,7 @@ force:
+@@ -283,7 +283,7 @@ force:
make_configure: force
@rm -f configure
- @${CC} ${CONF_FLAGS} -o configure configure.c ${WARNING_ERROR} ${WARNING_OPTIONS}
-+ @cc ${CONF_FLAGS} -o configure configure.c ${WARNING_ERROR} ${WARNING_OPTIONS}
++ @${BUILD_CC} ${CONF_FLAGS} -o configure configure.c ${WARNING_ERROR} ${WARNING_OPTIONS}
clean: make_configure
@./configure ${CONF_TARGET_FLAG} -q -b
--
-1.8.4.2
+2.8.1
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-kernel/crash/crash/0002-crash-fix-build-error-unknown-type-name-gdb_fpregset.patch b/import-layers/meta-openembedded/meta-oe/recipes-kernel/crash/crash/0002-crash-fix-build-error-unknown-type-name-gdb_fpregset.patch
new file mode 100644
index 000000000..8355fe44e
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-kernel/crash/crash/0002-crash-fix-build-error-unknown-type-name-gdb_fpregset.patch
@@ -0,0 +1,36 @@
+From 52fc1a7c17768fd52c3577d21dad84e8babb94b5 Mon Sep 17 00:00:00 2001
+From: Dengke Du <dengke.du@windriver.com>
+Date: Thu, 6 Apr 2017 23:01:14 -0400
+Subject: [PATCH 2/3] crash: fix build error unknown type name 'gdb_fpregset_t'
+
+Upstream-Status: Pending
+
+Signed-off-by: Dengke Du <dengke.du@windriver.com>
+---
+ gdb-7.6/gdb/gdb_proc_service.h | 3 +--
+ 1 file changed, 1 insertion(+), 2 deletions(-)
+
+diff --git a/gdb-7.6/gdb/gdb_proc_service.h b/gdb-7.6/gdb/gdb_proc_service.h
+index 8bc6088..99c6496 100644
+--- a/gdb-7.6/gdb/gdb_proc_service.h
++++ b/gdb-7.6/gdb/gdb_proc_service.h
+@@ -20,6 +20,7 @@
+ #define GDB_PROC_SERVICE_H
+
+ #include <sys/types.h>
++#include "gregset.h"
+
+ #ifdef HAVE_PROC_SERVICE_H
+ #include <proc_service.h>
+@@ -53,8 +54,6 @@
+ #include <sys/procfs.h>
+ #endif
+
+-#include "gregset.h"
+-
+ /* Functions in this interface return one of these status codes. */
+ typedef enum
+ {
+--
+2.8.1
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-kernel/crash/crash/0003-crash-detect-the-sysroot-s-glibc-header-file.patch b/import-layers/meta-openembedded/meta-oe/recipes-kernel/crash/crash/0003-crash-detect-the-sysroot-s-glibc-header-file.patch
new file mode 100644
index 000000000..1f4bd01da
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-kernel/crash/crash/0003-crash-detect-the-sysroot-s-glibc-header-file.patch
@@ -0,0 +1,33 @@
+From c7950ef5228adc52a500b4fc67d7e48c3c09c1df Mon Sep 17 00:00:00 2001
+From: Dengke Du <dengke.du@windriver.com>
+Date: Thu, 6 Apr 2017 23:02:44 -0400
+Subject: [PATCH 3/3] crash: detect the sysroot's glibc header file
+
+This is cross compile, so let the Makefile detect the sysroot's glibc
+header file, not the host's glibc header file.
+
+Upstream-Status: Pending
+
+Signed-off-by: Dengke Du <dengke.du@windriver.com>
+---
+ Makefile | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index b6b7e80..94f21a5 100644
+--- a/Makefile
++++ b/Makefile
+@@ -264,8 +264,8 @@ gdb_patch:
+ if [ "${ARCH}" = "x86_64" ] && [ "${TARGET}" = "PPC64" ] && [ -f ${GDB}-ppc64le-support.patch ]; then \
+ patch -d ${GDB} -p1 -F0 < ${GDB}-ppc64le-support.patch ; \
+ fi
+- if [ -f /usr/include/proc_service.h ]; then \
+- grep 'extern ps_err_e ps_get_thread_area (struct' /usr/include/proc_service.h; \
++ if [ -f ${RECIPE_SYSROOT}/usr/include/proc_service.h ]; then \
++ grep 'extern ps_err_e ps_get_thread_area (struct' ${RECIPE_SYSROOT}/usr/include/proc_service.h; \
+ if [ $$? -eq 0 ]; then \
+ patch -p0 < ${GDB}-proc_service.h.patch; \
+ fi; \
+--
+2.8.1
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-kernel/crash/crash/0004-crash-fix-build-failure-with-mips.patch b/import-layers/meta-openembedded/meta-oe/recipes-kernel/crash/crash/0004-crash-fix-build-failure-with-mips.patch
new file mode 100644
index 000000000..1e7ce6b38
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-kernel/crash/crash/0004-crash-fix-build-failure-with-mips.patch
@@ -0,0 +1,87 @@
+From 423ebdce07aa9f398f32c0adf659353069d023c6 Mon Sep 17 00:00:00 2001
+From: Dengke Du <dengke.du@windriver.com>
+Date: Thu, 4 May 2017 07:14:13 +0000
+Subject: [PATCH] crash: fix build failure with mips
+
+When build crash with mips:
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+mips-linux-nat.c:157:1: error: conflicting types for 'ps_get_thread_area'
+ ps_get_thread_area (const struct ps_prochandle *ph,
+ ^~~~~~~~~~~~~~~~~~
+In file included from gdb_proc_service.h:26:0,
+ from mips-linux-nat.c:32:
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+This problem have been fixed on intel and arm plantform, we can use the
+similar approch to fix it on mips.
+
+Upstream-status: Submitted [https://github.com/crash-utility/crash/pull/11]
+
+Signed-off-by: Dengke Du <dengke.du@windriver.com>
+---
+ Makefile | 1 +
+ crash-fix-build-failure-with-mips.patch | 39 +++++++++++++++++++++++++++++++++
+ 2 files changed, 40 insertions(+)
+ create mode 100644 crash-fix-build-failure-with-mips.patch
+
+diff --git a/Makefile b/Makefile
+index 5496523..2ec3325 100644
+--- a/Makefile
++++ b/Makefile
+@@ -268,6 +268,7 @@ gdb_patch:
+ grep 'extern ps_err_e ps_get_thread_area (struct' ${RECIPE_SYSROOT}/usr/include/proc_service.h; \
+ if [ $$? -eq 0 ]; then \
+ patch -p0 < ${GDB}-proc_service.h.patch; \
++ patch -p1 < crash-fix-build-failure-with-mips.patch; \
+ fi; \
+ fi
+
+diff --git a/crash-fix-build-failure-with-mips.patch b/crash-fix-build-failure-with-mips.patch
+new file mode 100644
+index 0000000..0c70c5f
+--- /dev/null
++++ b/crash-fix-build-failure-with-mips.patch
+@@ -0,0 +1,39 @@
++From 615c802d9c73fad48723b6567042cd54f6795849 Mon Sep 17 00:00:00 2001
++From: Dengke Du <dengke.du@windriver.com>
++Date: Thu, 4 May 2017 06:14:47 +0000
++Subject: [PATCH] crash: fix build failure with mips
++
++When build crash with mips:
++
++~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
++mips-linux-nat.c:157:1: error: conflicting types for 'ps_get_thread_area'
++ ps_get_thread_area (const struct ps_prochandle *ph,
++ ^~~~~~~~~~~~~~~~~~
++In file included from gdb_proc_service.h:26:0,
++ from mips-linux-nat.c:32:
++~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
++
++This problem have been fixed on intel and arm plantform, we can use the
++similar approch to fix it on mips.
++
++Signed-off-by: Dengke Du <dengke.du@windriver.com>
++---
++ gdb-7.6/gdb/mips-linux-nat.c | 2 +-
++ 1 file changed, 1 insertion(+), 1 deletion(-)
++
++diff --git a/gdb-7.6/gdb/mips-linux-nat.c b/gdb-7.6/gdb/mips-linux-nat.c
++index 61e83c6..d517e37 100644
++--- a/gdb-7.6/gdb/mips-linux-nat.c
+++++ b/gdb-7.6/gdb/mips-linux-nat.c
++@@ -154,7 +154,7 @@ mips64_linux_register_addr (struct gdbarch *gdbarch, int regno, int store)
++ /* Fetch the thread-local storage pointer for libthread_db. */
++
++ ps_err_e
++-ps_get_thread_area (const struct ps_prochandle *ph,
+++ps_get_thread_area (struct ps_prochandle *ph,
++ lwpid_t lwpid, int idx, void **base)
++ {
++ if (ptrace (PTRACE_GET_THREAD_AREA, lwpid, NULL, base) != 0)
++--
++2.11.0
++
+--
+2.11.0
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-kernel/crash/crash_7.1.5.bb b/import-layers/meta-openembedded/meta-oe/recipes-kernel/crash/crash_7.1.8.bb
index 936438b89..9c31f5e1a 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-kernel/crash/crash_7.1.5.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-kernel/crash/crash_7.1.8.bb
@@ -22,10 +22,14 @@ SRC_URI = "https://github.com/crash-utility/${BPN}/archive/${PV}.tar.gz;download
file://donnot-extract-gdb-during-do-compile.patch \
file://gdb_build_jobs_and_not_write_crash_target.patch \
file://remove-unrecognized-gcc-option-m32-for-mips.patch \
+ file://0001-Fix-for-a-compilation-error-if-glibc-2.25-or-later-h.patch \
+ file://0002-crash-fix-build-error-unknown-type-name-gdb_fpregset.patch \
+ file://0003-crash-detect-the-sysroot-s-glibc-header-file.patch \
+ file://0004-crash-fix-build-failure-with-mips.patch \
"
-SRC_URI[md5sum] = "7bd06eaec6827d4fac636b2b592d3056"
-SRC_URI[sha256sum] = "c3954412c8557614a0d50092c007aa96b4e3e6e97453dfbb60241ab680caf7b2"
+SRC_URI[md5sum] = "31787074f267a3536eebff008a0652ec"
+SRC_URI[sha256sum] = "9965dee9199d7e39764fbee7f21c7c45b1f7b6d17c8e92ad62f468f062876478"
SRC_URI[gdb.md5sum] = "a9836707337e5f7bf76a009a8904f470"
SRC_URI[gdb.sha256sum] = "8070389a5dcc104eb0be483d582729f98ed4d761ad19cedd3f17b5d2502faa36"
@@ -33,6 +37,7 @@ SRC_URI[gdb.sha256sum] = "8070389a5dcc104eb0be483d582729f98ed4d761ad19cedd3f17b5
inherit gettext
BBCLASSEXTEND = "native cross"
+TARGET_CC_ARCH_append = " ${SELECTED_OPTIMIZATION}"
# crash 7.1.3 and before don't support mips64
COMPATIBLE_HOST = "^(?!mips64).*"
@@ -80,7 +85,7 @@ do_compile_prepend() {
}
do_compile() {
- oe_runmake ${EXTRA_OEMAKE}
+ oe_runmake ${EXTRA_OEMAKE} RECIPE_SYSROOT=${RECIPE_SYSROOT}
}
do_install_prepend () {
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-kernel/ktap/ktap-module_git.bb b/import-layers/meta-openembedded/meta-oe/recipes-kernel/ktap/ktap-module_git.bb
index cb913271f..1119d4c90 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-kernel/ktap/ktap-module_git.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-kernel/ktap/ktap-module_git.bb
@@ -7,7 +7,7 @@ SUMMARY = "KTAP is a scripting dynamic tracing tool for Linux"
inherit module
# See https://github.com/ktap/ktap/issues/80
-PNBLACKLIST[ktap-module] ?= "Not compatible with 3.19 kernel"
+PNBLACKLIST[ktap-module] ?= "Not compatible with 3.19 kernel - the recipe will be removed on 2017-09-01 unless the issue is fixed"
# Only build the module
MAKE_TARGETS = "mod"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-kernel/ktap/ktap_git.bb b/import-layers/meta-openembedded/meta-oe/recipes-kernel/ktap/ktap_git.bb
index 248e7bdd6..a947b7fcc 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-kernel/ktap/ktap_git.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-kernel/ktap/ktap_git.bb
@@ -5,7 +5,7 @@ require ktap.inc
SUMMARY = "KTAP is a scripting dynamic tracing tool for Linux"
DEPENDS = "ktap-module"
-PNBLACKLIST[ktap] ?= "Depends on blacklisted kernel-module-ktapvm"
+PNBLACKLIST[ktap] ?= "Depends on blacklisted kernel-module-ktapvm - the recipe will be removed on 2017-09-01 unless the issue is fixed"
# Only build the userspace app
EXTRA_OEMAKE += "ktap"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-kernel/makedumpfile/makedumpfile/0001-makedumpfile-Add-proper-format-string-to-print-a-str.patch b/import-layers/meta-openembedded/meta-oe/recipes-kernel/makedumpfile/makedumpfile/0001-makedumpfile-Add-proper-format-string-to-print-a-str.patch
new file mode 100644
index 000000000..056a0bade
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-kernel/makedumpfile/makedumpfile/0001-makedumpfile-Add-proper-format-string-to-print-a-str.patch
@@ -0,0 +1,35 @@
+From 0fff28f31aef9ad1d5a817216a3c98ba9d605106 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Mon, 19 Jun 2017 23:52:14 -0700
+Subject: [PATCH] makedumpfile: Add proper format string to print a string
+
+Fix
+makedumpfile.c: In function 'write_eraseinfo':
+makedumpfile.c:8273:4: error: format not a string literal and no format arguments [-Werror=format-security]
+ DEBUG_MSG(obuf);
+ ^~~~~~~~~
+makedumpfile.c:8273:4: error: format not a string literal and no format arguments [-Werror=format-security]
+
+Upstream-Status: Pending
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ makedumpfile.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/makedumpfile.c b/makedumpfile.c
+index e69b6df..8b8a6b0 100644
+--- a/makedumpfile.c
++++ b/makedumpfile.c
+@@ -8270,7 +8270,7 @@ write_eraseinfo(struct cache_data *cd_page, unsigned long *size_out)
+ }
+ sprintf(obuf, "erase %s %s", erase_info[i].symbol_expr,
+ size_str);
+- DEBUG_MSG(obuf);
++ DEBUG_MSG("%s", obuf);
+ if (!write_cache(cd_page, obuf, strlen(obuf)))
+ goto out;
+ size_eraseinfo += strlen(obuf);
+--
+2.13.1
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-kernel/makedumpfile/makedumpfile/0002-mem_section-Support-only-46-bit-for-MAX_PHYSMEM_BITS.patch b/import-layers/meta-openembedded/meta-oe/recipes-kernel/makedumpfile/makedumpfile/0002-mem_section-Support-only-46-bit-for-MAX_PHYSMEM_BITS.patch
new file mode 100644
index 000000000..e0c3d9af6
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-kernel/makedumpfile/makedumpfile/0002-mem_section-Support-only-46-bit-for-MAX_PHYSMEM_BITS.patch
@@ -0,0 +1,73 @@
+From 653fe8e724081d2f289c2245d1220d5f7170538d Mon Sep 17 00:00:00 2001
+From: Alexandru Moise <alexandru.moise@windriver.com>
+Date: Fri, 29 Apr 2016 07:40:46 +0000
+Subject: [PATCH] mem_section: Support only 46 bit for MAX_PHYSMEM_BITS on
+ PPC64
+
+Related to change:
+http://lists.infradead.org/pipermail/kexec/2013-January/007849.html
+
+Linux on PPC64 has supported only 46 bit MAX_PHYSMEM_BITS since commit:
+048ee0993ec8360abb0b51bdf8f8721e9ed62ec4
+
+Also remove set_ppc64_max_physmem_bits and set info->max_physmem_bits in
+get_machdep_info_ppc64 instead. set_ppc64_max_physmem_bits is broken
+for all kernels compiled with CONFIG_SPARSEMEM=n. makedumpfile is
+unable to get mem_section field from powerpc kernel since commit:
+fd59d231f81cb02870b9cf15f456a897f3669b4e
+
+Upstream-Status: Pending
+
+Signed-off-by: Alexandru Moise <alexandru.moise@windriver.com>
+Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
+---
+ arch/ppc64.c | 28 ++--------------------------
+ 1 file changed, 2 insertions(+), 26 deletions(-)
+
+diff --git a/arch/ppc64.c b/arch/ppc64.c
+index 89a7f05..6c928ab 100644
+--- a/arch/ppc64.c
++++ b/arch/ppc64.c
+@@ -302,37 +302,13 @@ ppc64_vtop_level4(unsigned long vaddr)
+ }
+
+ int
+-set_ppc64_max_physmem_bits(void)
+-{
+- long array_len = ARRAY_LENGTH(mem_section);
+- /*
+- * The older ppc64 kernels uses _MAX_PHYSMEM_BITS as 42 and the
+- * newer kernels 3.7 onwards uses 46 bits.
+- */
+-
+- info->max_physmem_bits = _MAX_PHYSMEM_BITS_ORIG ;
+- if ((array_len == (NR_MEM_SECTIONS() / _SECTIONS_PER_ROOT_EXTREME()))
+- || (array_len == (NR_MEM_SECTIONS() / _SECTIONS_PER_ROOT())))
+- return TRUE;
+-
+- info->max_physmem_bits = _MAX_PHYSMEM_BITS_3_7;
+- if ((array_len == (NR_MEM_SECTIONS() / _SECTIONS_PER_ROOT_EXTREME()))
+- || (array_len == (NR_MEM_SECTIONS() / _SECTIONS_PER_ROOT())))
+- return TRUE;
+-
+- return FALSE;
+-}
+-
+-int
+ get_machdep_info_ppc64(void)
+ {
+ unsigned long vmlist, vmap_area_list, vmalloc_start;
+
+ info->section_size_bits = _SECTION_SIZE_BITS;
+- if (!set_ppc64_max_physmem_bits()) {
+- ERRMSG("Can't detect max_physmem_bits.\n");
+- return FALSE;
+- }
++ info->max_physmem_bits = _MAX_PHYSMEM_BITS_3_7;
++
+ info->page_offset = __PAGE_OFFSET;
+
+ if (SYMBOL(_stext) == NOT_FOUND_SYMBOL) {
+--
+2.5.0
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-kernel/makedumpfile/makedumpfile_1.6.0.bb b/import-layers/meta-openembedded/meta-oe/recipes-kernel/makedumpfile/makedumpfile_1.6.1.bb
index 93a6f62c3..83bbf7f41 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-kernel/makedumpfile/makedumpfile_1.6.0.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-kernel/makedumpfile/makedumpfile_1.6.1.bb
@@ -7,6 +7,9 @@ DESCRIPTION = "\
"
HOMEPAGE = "http://makedumpfile.sourceforge.net"
+LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
+LICENSE = "GPLv2.0"
+
DEPENDS = "bzip2 zlib elfutils"
RDEPENDS_${PN}-tools = "perl ${PN}"
@@ -20,12 +23,11 @@ FILES_${PN}-tools = "${bindir}/*.pl"
SRC_URI = "\
${SOURCEFORGE_MIRROR}/makedumpfile/${BPN}-${PV}.tar.gz \
file://0001-makedumpfile-replace-hardcode-CFLAGS.patch \
+ file://0002-mem_section-Support-only-46-bit-for-MAX_PHYSMEM_BITS.patch \
+ file://0001-makedumpfile-Add-proper-format-string-to-print-a-str.patch \
"
-LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
-LICENSE = "GPLv2.0"
-
-SRC_URI[md5sum] = "041c5c6de2c3066600e4ca646c2397d6"
-SRC_URI[sha256sum] = "e3147abc52df2ceac1e9affef45bf37e2f2e1d9979bc94a761ee11e4044072ac"
+SRC_URI[md5sum] = "16c0ae9902ae57be4a603a6ab1e86c53"
+SRC_URI[sha256sum] = "0b6e73106998670407887de9e1a505b3a2dbb2fb517a4b968a665eda8fb097ce"
SECTION = "base"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-kernel/minicoredumper/minicoredumper_1.0.2.bb b/import-layers/meta-openembedded/meta-oe/recipes-kernel/minicoredumper/minicoredumper_2.0.0.bb
index babe54448..58cd45a53 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-kernel/minicoredumper/minicoredumper_1.0.2.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-kernel/minicoredumper/minicoredumper_2.0.0.bb
@@ -1,17 +1,24 @@
SUMMARY = "minicoredumper provides an alternate core dump facility for Linux \
to allow minimal and customized crash dumps"
-LICENSE = " LGPLv2.1 & BSD"
-LIC_FILES_CHKSUM = "file://COPYING;md5=45445387350de96a0e70410470ee5cab"
-DEPENDS = "elfutils dbus dbus-glib-native glib-2.0 dbus-glib util-linux"
+LICENSE = " LGPLv2.1 & BSD-2-Clause"
+LIC_FILES_CHKSUM = "file://COPYING;md5=709087c2ed0acda54a4d91497a889e42 \
+ file://COPYING.BSD;md5=b915ac80d5236d6aa659cb986daf00e5 \
+ file://COPYING.LGPLv2.1;md5=321bf41f280cf805086dd5a720b37785 \
+ "
+DEPENDS = "elfutils dbus dbus-glib-native glib-2.0 dbus-glib util-linux json-c"
inherit autotools pkgconfig systemd update-rc.d
-SRC_URI = "https://linutronix.de/${BPN}/files/${BPN}-${PV}.tar.gz \
+SRCREV = "248019446ccf6079926efb54f8b6dd7be769bbae"
+
+PR .= "+git${SRCPV}"
+
+SRC_URI = "git://github.com/Linutronix/minicoredumper-debian;branch=unstable \
file://minicoredumper.service \
file://minicoredumper.init \
"
-SRC_URI[md5sum] = "5ba9d116b52a8e2fb93456260644e753"
-SRC_URI[sha256sum] = "1b0eeb3d70dbd2ad6f2f673e4e3446e5dd784e132730e21d8f9dc0977e47dd9a"
+
+S = "${WORKDIR}/git"
SYSTEMD_SERVICE_${PN} = "minicoredumper.service"
SYSTEMD_AUTO_ENABLE = "enable"
@@ -21,6 +28,7 @@ INITSCRIPT_NAME_${PN} = "minicoredumper"
INITSCRIPT_PARAMS_${PN} = "defaults 89"
do_install_append() {
+ rmdir ${D}${localstatedir}/run
install -d ${D}/${sysconfdir}/minicoredumper
cp -rf ${S}/etc/* ${D}/${sysconfdir}/
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-multimedia/audiofile/audiofile_0.2.7.bb b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/audiofile/audiofile_0.2.7.bb
deleted file mode 100644
index 61886599a..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-multimedia/audiofile/audiofile_0.2.7.bb
+++ /dev/null
@@ -1,15 +0,0 @@
-DESCRIPTION = "The Audio File Library provides a uniform and elegant \
-API for accessing a variety of audio file formats, such as AIFF/AIFF-C, \
-WAVE, NeXT/Sun .snd/.au, Berkeley/IRCAM/CARL Sound File, Audio Visual \
-Research, Amiga IFF/8SVX, and NIST SPHERE."
-HOMEPAGE = "http://www.68k.org/~michael/audiofile/"
-SECTION = "libs"
-LICENSE = "LGPLv2 & GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=3bf50002aefd002f49e7bb854063f7e7 \
- file://COPYING.GPL;md5=0636e73ff0215e8d672dc4c32c317bb3"
-
-SRC_URI = "${GNOME_MIRROR}/audiofile/0.2/${BP}.tar.gz"
-SRC_URI[md5sum] = "a39be317a7b1971b408805dc5e371862"
-SRC_URI[sha256sum] = "a61c4036c2600a645843f16bec4be166093a9df5f15b02c85291213aa9cf15a2"
-
-inherit autotools lib_package binconfig
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-multimedia/audiofile/audiofile_0.3.6.bb b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/audiofile/audiofile_0.3.6.bb
new file mode 100644
index 000000000..f4e19e4ad
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/audiofile/audiofile_0.3.6.bb
@@ -0,0 +1,27 @@
+DESCRIPTION = "The Audio File Library provides a uniform and elegant \
+API for accessing a variety of audio file formats, such as AIFF/AIFF-C, \
+WAVE, NeXT/Sun .snd/.au, Berkeley/IRCAM/CARL Sound File, Audio Visual \
+Research, Amiga IFF/8SVX, and NIST SPHERE."
+HOMEPAGE = "http://www.68k.org/~michael/audiofile/"
+SECTION = "libs"
+LICENSE = "LGPLv2 & GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c \
+ file://COPYING.GPL;md5=b234ee4d69f5fce4486a80fdaf4a4263"
+
+SRC_URI = " \
+ ${GNOME_MIRROR}/audiofile/0.3/${BP}.tar.xz \
+ file://0001-fix-negative-shift-constants.patch \
+ file://0002-fix-build-on-gcc6.patch \
+ file://0003-fix-CVE-2015-7747.patch \
+"
+SRC_URI[md5sum] = "235dde14742317328f0109e9866a8008"
+SRC_URI[sha256sum] = "ea2449ad3f201ec590d811db9da6d02ffc5e87a677d06b92ab15363d8cb59782"
+
+inherit autotools lib_package pkgconfig
+
+DEPENDS = " \
+ asciidoc-native \
+ alsa-lib \
+ libogg \
+ flac \
+"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-multimedia/audiofile/files/0001-fix-negative-shift-constants.patch b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/audiofile/files/0001-fix-negative-shift-constants.patch
new file mode 100644
index 000000000..ecb310805
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/audiofile/files/0001-fix-negative-shift-constants.patch
@@ -0,0 +1,77 @@
+From 99127676dba8f5d607757428bc14a6b7ab52d5ed Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
+Date: Fri, 16 Dec 2016 12:42:06 +0100
+Subject: [PATCH 1/3] fix negative shift constants
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Stolen from [1]
+
+[1] http://pkgs.fedoraproject.org/cgit/rpms/audiofile.git/tree/audiofile-0.3.6-left-shift-neg.patch
+
+Upstrem-Status: Pending
+
+Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
+---
+ libaudiofile/modules/SimpleModule.h | 2 +-
+ test/FloatToInt.cpp | 2 +-
+ test/IntToFloat.cpp | 2 +-
+ test/Sign.cpp | 2 +-
+ 4 files changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/libaudiofile/modules/SimpleModule.h b/libaudiofile/modules/SimpleModule.h
+index 03c6c69..e4cc138 100644
+--- a/libaudiofile/modules/SimpleModule.h
++++ b/libaudiofile/modules/SimpleModule.h
+@@ -123,7 +123,7 @@ struct signConverter
+ typedef typename IntTypes<Format>::UnsignedType UnsignedType;
+
+ static const int kScaleBits = (Format + 1) * CHAR_BIT - 1;
+- static const int kMinSignedValue = -1 << kScaleBits;
++ static const int kMinSignedValue = 0-(1U<<kScaleBits);
+
+ struct signedToUnsigned : public std::unary_function<SignedType, UnsignedType>
+ {
+diff --git a/test/FloatToInt.cpp b/test/FloatToInt.cpp
+index 0d179a8..bf491b2 100644
+--- a/test/FloatToInt.cpp
++++ b/test/FloatToInt.cpp
+@@ -115,7 +115,7 @@ TEST_F(FloatToIntTest, Int16)
+ EXPECT_EQ(readData[i], expectedData[i]);
+ }
+
+-static const int32_t kMinInt24 = -1<<23;
++static const int32_t kMinInt24 = 0-(1U<<23);
+ static const int32_t kMaxInt24 = (1<<23) - 1;
+
+ TEST_F(FloatToIntTest, Int24)
+diff --git a/test/IntToFloat.cpp b/test/IntToFloat.cpp
+index b716635..1d91b58 100644
+--- a/test/IntToFloat.cpp
++++ b/test/IntToFloat.cpp
+@@ -117,7 +117,7 @@ TEST_F(IntToFloatTest, Int16)
+ EXPECT_EQ(readData[i], expectedData[i]);
+ }
+
+-static const int32_t kMinInt24 = -1<<23;
++static const int32_t kMinInt24 = 0-(1U<<23);
+ static const int32_t kMaxInt24 = (1<<23) - 1;
+
+ TEST_F(IntToFloatTest, Int24)
+diff --git a/test/Sign.cpp b/test/Sign.cpp
+index 7275399..c339514 100644
+--- a/test/Sign.cpp
++++ b/test/Sign.cpp
+@@ -116,7 +116,7 @@ TEST_F(SignConversionTest, Int16)
+ EXPECT_EQ(readData[i], expectedData[i]);
+ }
+
+-static const int32_t kMinInt24 = -1<<23;
++static const int32_t kMinInt24 = 0-(1U<<23);
+ static const int32_t kMaxInt24 = (1<<23) - 1;
+ static const uint32_t kMaxUInt24 = (1<<24) - 1;
+
+--
+2.7.4
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-multimedia/audiofile/files/0002-fix-build-on-gcc6.patch b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/audiofile/files/0002-fix-build-on-gcc6.patch
new file mode 100644
index 000000000..2c66cf4d0
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/audiofile/files/0002-fix-build-on-gcc6.patch
@@ -0,0 +1,75 @@
+From a74c1e9c583375b9e55c29a36442485089e4b7f9 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
+Date: Fri, 16 Dec 2016 12:42:06 +0100
+Subject: [PATCH 2/3] fix build on gcc6
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Stolen from [1]
+
+[1] http://pkgs.fedoraproject.org/cgit/rpms/audiofile.git/tree/audiofile-0.3.6-narrowing.patch
+
+Upstrem-Status: Pending
+
+Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
+---
+ test/NeXT.cpp | 14 +++++++-------
+ 1 file changed, 7 insertions(+), 7 deletions(-)
+
+diff --git a/test/NeXT.cpp b/test/NeXT.cpp
+index 7e39850..a37cea1 100644
+--- a/test/NeXT.cpp
++++ b/test/NeXT.cpp
+@@ -37,13 +37,13 @@
+
+ #include "TestUtilities.h"
+
+-const char kDataUnspecifiedLength[] =
++const signed char kDataUnspecifiedLength[] =
+ {
+ '.', 's', 'n', 'd',
+ 0, 0, 0, 24, // offset of 24 bytes
+- 0xff, 0xff, 0xff, 0xff, // unspecified length
++ -1, -1, -1, -1, // unspecified length
+ 0, 0, 0, 3, // 16-bit linear
+- 0, 0, 172, 68, // 44100 Hz
++ 0, 0, -84, 68, // 44100 Hz (0xAC44)
+ 0, 0, 0, 1, // 1 channel
+ 0, 1,
+ 0, 1,
+@@ -57,13 +57,13 @@ const char kDataUnspecifiedLength[] =
+ 0, 55
+ };
+
+-const char kDataTruncated[] =
++const signed char kDataTruncated[] =
+ {
+ '.', 's', 'n', 'd',
+ 0, 0, 0, 24, // offset of 24 bytes
+ 0, 0, 0, 20, // length of 20 bytes
+ 0, 0, 0, 3, // 16-bit linear
+- 0, 0, 172, 68, // 44100 Hz
++ 0, 0, -84, 68, // 44100 Hz (0xAC44)
+ 0, 0, 0, 1, // 1 channel
+ 0, 1,
+ 0, 1,
+@@ -152,13 +152,13 @@ TEST(NeXT, Truncated)
+ ASSERT_EQ(::unlink(testFileName.c_str()), 0);
+ }
+
+-const char kDataZeroChannels[] =
++const signed char kDataZeroChannels[] =
+ {
+ '.', 's', 'n', 'd',
+ 0, 0, 0, 24, // offset of 24 bytes
+ 0, 0, 0, 2, // 2 bytes
+ 0, 0, 0, 3, // 16-bit linear
+- 0, 0, 172, 68, // 44100 Hz
++ 0, 0, -84, 68, // 44100 Hz (0xAC44)
+ 0, 0, 0, 0, // 0 channels
+ 0, 1
+ };
+--
+2.7.4
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-multimedia/audiofile/files/0003-fix-CVE-2015-7747.patch b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/audiofile/files/0003-fix-CVE-2015-7747.patch
new file mode 100644
index 000000000..895e320ba
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/audiofile/files/0003-fix-CVE-2015-7747.patch
@@ -0,0 +1,35 @@
+From 746c38105ce4fa1b609995d3386ea6b8b1f2f7bd Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
+Date: Fri, 16 Dec 2016 12:50:51 +0100
+Subject: [PATCH 3/3] fix CVE-2015-7747
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Stolen from [1]
+
+[1] http://pkgs.fedoraproject.org/cgit/rpms/audiofile.git/tree/audiofile-0.3.6-CVE-2015-7747.patch
+
+Upstream-Status: Pending
+
+Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
+---
+ libaudiofile/modules/ModuleState.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/libaudiofile/modules/ModuleState.cpp b/libaudiofile/modules/ModuleState.cpp
+index f76c495..0c29d7a 100644
+--- a/libaudiofile/modules/ModuleState.cpp
++++ b/libaudiofile/modules/ModuleState.cpp
+@@ -402,7 +402,7 @@ status ModuleState::arrange(AFfilehandle file, Track *track)
+ addModule(new Transform(outfc, in.pcm, out.pcm));
+
+ if (in.channelCount != out.channelCount)
+- addModule(new ApplyChannelMatrix(infc, isReading,
++ addModule(new ApplyChannelMatrix(outfc, isReading,
+ in.channelCount, out.channelCount,
+ in.pcm.minClip, in.pcm.maxClip,
+ track->channelMatrix));
+--
+2.7.4
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-multimedia/cdrkit/cdrkit_1.1.11.bb b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/cdrkit/cdrkit_1.1.11.bb
index 554b89ffa..f0efc51e1 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-multimedia/cdrkit/cdrkit_1.1.11.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/cdrkit/cdrkit_1.1.11.bb
@@ -5,10 +5,10 @@ LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=b30d3b2750b668133fc17b401e1b98f8"
# While writing download from cdrkit.org was broken so get sources from debian
-SRC_URI = " \
- ${DEBIAN_MIRROR}/main/c/${BPN}/${BPN}_${PV}.orig.tar.gz \
- file://0001-do-not-create-a-run-test-to-determine-order-of-bitfi.patch \
-"
+SRC_URI = "${DEBIAN_MIRROR}/main/c/${BPN}/${BPN}_${PV}.orig.tar.gz \
+ file://0001-do-not-create-a-run-test-to-determine-order-of-bitfi.patch \
+ file://0001-genisoimage-Fix-fprintf-format-errors.patch \
+ "
SRC_URI[md5sum] = "efe08e2f3ca478486037b053acd512e9"
SRC_URI[sha256sum] = "d1c030756ecc182defee9fe885638c1785d35a2c2a297b4604c0e0dcc78e47da"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-multimedia/cdrkit/files/0001-genisoimage-Fix-fprintf-format-errors.patch b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/cdrkit/files/0001-genisoimage-Fix-fprintf-format-errors.patch
new file mode 100644
index 000000000..f52f71b63
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/cdrkit/files/0001-genisoimage-Fix-fprintf-format-errors.patch
@@ -0,0 +1,49 @@
+From 8547f23c4416ed98f585c53c62e7d8afd8edab36 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Tue, 27 Jun 2017 21:05:31 -0700
+Subject: [PATCH] genisoimage: Fix fprintf format errors
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ genisoimage/genisoimage.c | 4 ++--
+ genisoimage/tree.c | 2 +-
+ 2 files changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/genisoimage/genisoimage.c b/genisoimage/genisoimage.c
+index 46f0cb7..9089081 100644
+--- a/genisoimage/genisoimage.c
++++ b/genisoimage/genisoimage.c
+@@ -3406,7 +3406,7 @@ if (check_session == 0)
+ if (goof) {
+ fprintf(stderr, "ISO9660/Rock Ridge tree sort failed.\n");
+ if(merge_warn_msg)
+- fprintf(stderr, merge_warn_msg);
++ fprintf(stderr, "%s", merge_warn_msg);
+ exit(1);
+ }
+ #ifdef UDF
+@@ -3419,7 +3419,7 @@ if (check_session == 0)
+ if (goof) {
+ fprintf(stderr, "Joliet tree sort failed. The -joliet-long switch may help you.\n");
+ if(merge_warn_msg)
+- fprintf(stderr, merge_warn_msg);
++ fprintf(stderr, "%s", merge_warn_msg);
+ exit(1);
+ }
+ /*
+diff --git a/genisoimage/tree.c b/genisoimage/tree.c
+index 7805888..8412cc3 100644
+--- a/genisoimage/tree.c
++++ b/genisoimage/tree.c
+@@ -647,7 +647,7 @@ got_valid_name:
+ fprintf(stderr, "Unable to sort directory %s\n",
+ this_dir->whole_name);
+ if(merge_warn_msg)
+- fprintf(stderr, merge_warn_msg);
++ fprintf(stderr, "%s", merge_warn_msg);
+ exit(1);
+ }
+ /*
+--
+2.13.2
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-multimedia/esound/esound/0001-replace-missing-AM_PATH_AUDIOFILE-by-PKG_CHECK_MODUL.patch b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/esound/esound/0001-replace-missing-AM_PATH_AUDIOFILE-by-PKG_CHECK_MODUL.patch
new file mode 100644
index 000000000..89c97a4fc
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/esound/esound/0001-replace-missing-AM_PATH_AUDIOFILE-by-PKG_CHECK_MODUL.patch
@@ -0,0 +1,31 @@
+From 218e0702d6ce4d2cb20d5d108daa16afca2b7c41 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
+Date: Fri, 16 Dec 2016 13:22:51 +0100
+Subject: [PATCH] replace missing AM_PATH_AUDIOFILE by PKG_CHECK_MODULES(
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Upstrem-Status: Pending
+
+Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
+---
+ configure.ac | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/configure.ac b/configure.ac
+index 486c492..dccfd1b 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -353,7 +353,7 @@ echo "---------------------------------------------------------------------"
+ echo "--- Checking for the audiofile library. NOTE: This library is now"
+ echo "--- REQUIRED from proper compilation of the esound package."
+
+-AM_PATH_AUDIOFILE(0.1.5, [
++PKG_CHECK_MODULES(AUDIOFILE, audiofile, [
+
+ build_esdplay=true
+ echo "--- libaudiofile found. Building esound with audiofile support"
+--
+2.7.4
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-multimedia/esound/esound_0.2.36.bb b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/esound/esound_0.2.36.bb
index 035358d54..d19ba8223 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-multimedia/esound/esound_0.2.36.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/esound/esound_0.2.36.bb
@@ -8,10 +8,13 @@ inherit gnome binconfig
PR = "r1"
-SRC_URI = "ftp://ftp.gnome.org/pub/GNOME/sources/esound/0.2/esound-0.2.36.tar.bz2;name=archive \
- file://esound_0.2.36-1ubuntu5.diff.gz \
- file://no-docs.patch \
- file://configure-fix.patch"
+SRC_URI = " \
+ ftp://ftp.gnome.org/pub/GNOME/sources/esound/0.2/esound-0.2.36.tar.bz2;name=archive \
+ file://esound_0.2.36-1ubuntu5.diff.gz \
+ file://no-docs.patch \
+ file://configure-fix.patch \
+ file://0001-replace-missing-AM_PATH_AUDIOFILE-by-PKG_CHECK_MODUL.patch \
+"
SRC_URI[archive.md5sum] = "3facb5aa0115cc1c31771b9ad454ae76"
SRC_URI[archive.sha256sum] = "68bf399fcbd45c5e9ba99cd13a3a479e4ef2bc5dc52e540ffa00aef1e1b19a76"
@@ -21,6 +24,9 @@ EXTRA_OECONF = " \
--disable-arts \
--disable-artstest \
"
+
+CFLAGS += "-lm"
+
do_configure_prepend() {
sed -i -e 's:/usr/include/mme:${STAGING_INCDIR}/mme:g' ${S}/configure.ac
}
@@ -30,4 +36,3 @@ PACKAGES =+ "esddsp esd esd-utils"
FILES_esddsp = "${bindir}/esddsp ${libdir}/libesddsp.so.*"
FILES_esd = "${bindir}/esd"
FILES_esd-utils = "${bindir}/*"
-
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-multimedia/jack/a2jmidid/0002-aarch64.patch b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/jack/a2jmidid/0002-aarch64.patch
new file mode 100644
index 000000000..b344f5427
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/jack/a2jmidid/0002-aarch64.patch
@@ -0,0 +1,31 @@
+Consider compiler define for aarch64
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+Upstream-Status:Pending
+
+Index: a2jmidid-8/sigsegv.c
+===================================================================
+--- a2jmidid-8.orig/sigsegv.c
++++ a2jmidid-8/sigsegv.c
+@@ -91,18 +91,18 @@ static void signal_segv(int signum, sigi
+ a2j_error("info.si_errno = %d", info->si_errno);
+ a2j_error("info.si_code = %d (%s)", info->si_code, si_codes[info->si_code]);
+ a2j_error("info.si_addr = %p", info->si_addr);
+-#if !defined(__alpha__) && !defined(__ia64__) && !defined(__FreeBSD_kernel__) && !defined(__arm__) && !defined(__hppa__) && !defined(__sh__)
++#if !defined(__alpha__) && !defined(__ia64__) && !defined(__FreeBSD_kernel__) && !defined(__arm__) && !defined(__hppa__) && !defined(__sh__) && !defined(__aarch64__)
+ for(i = 0; i < NGREG; i++)
+ a2j_error("reg[%02d] = 0x" REGFORMAT, i,
+ #if defined(__powerpc__)
+ ucontext->uc_mcontext.uc_regs[i]
+-#elif defined(__sparc__) && defined(__arch64__)
++#elif defined(__sparc__) || defined(__arch64__)
+ ucontext->uc_mcontext.mc_gregs[i]
+ #else
+ ucontext->uc_mcontext.gregs[i]
+ #endif
+ );
+-#endif /* alpha, ia64, kFreeBSD, arm, hppa */
++#endif /* alpha, ia64, kFreeBSD, arm, hppa aarch64 */
+
+ #if defined(SIGSEGV_STACK_X86) || defined(SIGSEGV_STACK_IA64)
+ # if defined(SIGSEGV_STACK_IA64)
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-multimedia/jack/a2jmidid_8.bb b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/jack/a2jmidid_8.bb
index d7e93b64a..59b73f8e8 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-multimedia/jack/a2jmidid_8.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/jack/a2jmidid_8.bb
@@ -7,15 +7,19 @@ LIC_FILES_CHKSUM = " \
"
DEPENDS = "alsa-lib jack dbus"
+DEPENDS_append_libc-musl = " libexecinfo"
SRC_URI = " \
http://download.gna.org/${BPN}/${BPN}-${PV}.tar.bz2 \
file://0001-wscript-add-pthread-library-dependency-to-fix-linkin.patch \
+ file://0002-aarch64.patch \
"
SRC_URI[md5sum] = "9cf4edbc3ad2ddeeaf6c8c1791ff3ddd"
SRC_URI[sha256sum] = "2a9635f62aabc59edb54ada07048dd47e896b90caff94bcee710d3582606f55f"
-inherit waf
+inherit waf pkgconfig
+
+LDFLAGS_append_libc-musl = " -lexecinfo"
export LINKFLAGS="${LDFLAGS}"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-multimedia/jack/jack/0001-typecast-input-parameter-to-int-for-abs.patch b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/jack/jack/0001-typecast-input-parameter-to-int-for-abs.patch
new file mode 100644
index 000000000..c119f1981
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/jack/jack/0001-typecast-input-parameter-to-int-for-abs.patch
@@ -0,0 +1,32 @@
+From 8ec6f75bf7a318a3a1e352df7c97630cfaba537a Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 21 Apr 2017 16:18:39 -0700
+Subject: [PATCH] typecast input parameter to int for abs()
+
+Fixes
+../tests/test.cpp:482:73: error: call of overloaded 'abs(jack_nframes_t)' is ambiguous
+
+because the signature is int abs(int) and its passing
+unsigned int to it.
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ tests/test.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/tests/test.cpp b/tests/test.cpp
+index 8a8a8117..9655742e 100644
+--- a/tests/test.cpp
++++ b/tests/test.cpp
+@@ -479,7 +479,7 @@ int process4(jack_nframes_t nframes, void *arg)
+ jack_nframes_t delta_time = cur_time - last_time;
+
+ Log("calling process4 callback : jack_frame_time = %ld delta_time = %ld\n", cur_time, delta_time);
+- if (delta_time > 0 && (jack_nframes_t)abs(delta_time - cur_buffer_size) > tolerance) {
++ if (delta_time > 0 && (jack_nframes_t)abs(int(delta_time - cur_buffer_size)) > tolerance) {
+ printf("!!! ERROR !!! jack_frame_time seems to return incorrect values cur_buffer_size = %d, delta_time = %d tolerance %d\n", cur_buffer_size, delta_time, tolerance);
+ }
+
+--
+2.12.2
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-multimedia/jack/jack_git.bb b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/jack/jack_git.bb
index 66cec0a7d..b85ba8a02 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-multimedia/jack/jack_git.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/jack/jack_git.bb
@@ -12,23 +12,28 @@ LIC_FILES_CHKSUM = " \
file://common/jack/jack.h;beginline=1;endline=19;md5=6b736ed6b810592b135480a5e853392e \
"
-DEPENDS = "libsamplerate0 libsndfile1 libopus readline"
+DEPENDS = "libsamplerate0 libsndfile1 readline"
-SRC_URI = "git://github.com/jackaudio/jack2.git"
-SRCREV = "364159f8212393442670b9c3b68b75aa39d98975"
+SRC_URI = "git://github.com/jackaudio/jack2.git \
+ file://0001-typecast-input-parameter-to-int-for-abs.patch \
+ "
+SRCREV = "2d1d323505585d406a7e64fb932953baefc5945e"
PV = "1.9.10+git${SRCPV}"
S = "${WORKDIR}/git"
inherit waf pkgconfig
PACKAGECONFIG ??= "alsa"
-PACKAGECONFIG[alsa] = "--alsa=yes,alsa=no,alsa-lib"
+PACKAGECONFIG[alsa] = "--alsa=yes,--alsa=no,alsa-lib"
+PACKAGECONFIG[opus] = "--opus=yes,--opus=no,libopus"
# portaudio is for windows builds only
EXTRA_OECONF = "--portaudio=no"
PACKAGES =+ "libjack jack-server jack-utils"
+RDEPENDS_jack-dev_remove = "${PN} (= ${EXTENDPKGV})"
+
FILES_libjack = "${libdir}/*.so.* ${libdir}/jack/*.so"
FILES_jack-server = "${bindir}/jackd"
FILES_jack-utils = "${bindir}/*"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-multimedia/libass/libass.inc b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/libass/libass.inc
index 85ac87320..4bc3db062 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-multimedia/libass/libass.inc
+++ b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/libass/libass.inc
@@ -3,7 +3,7 @@ HOMEPAGE = "https://github.com/libass/libass"
SECTION = "libs/multimedia"
LICENSE = "ISC"
-LIC_FILES_CHKSUM = "file://COPYING;md5=8ae98663bac55afe5d989919d296f28a"
+LIC_FILES_CHKSUM = "file://COPYING;md5=a42532a0684420bdb15556c3cdd49a75"
DEPENDS = "enca fontconfig freetype libpng fribidi"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-multimedia/libass/libass_0.13.2.bb b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/libass/libass_0.13.2.bb
deleted file mode 100644
index 8cf2bd899..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-multimedia/libass/libass_0.13.2.bb
+++ /dev/null
@@ -1,4 +0,0 @@
-require recipes-multimedia/${BPN}/${BPN}.inc
-
-SRC_URI[md5sum] = "1c8cbd5751aeb192bda04a65d0464fd9"
-SRC_URI[sha256sum] = "d698d0a6adca7c36c5a86b540d67b05bfd36cebc3c351ab7646497c43fe1face"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-multimedia/libass/libass_0.13.6.bb b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/libass/libass_0.13.6.bb
new file mode 100644
index 000000000..40ac0f811
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/libass/libass_0.13.6.bb
@@ -0,0 +1,4 @@
+require recipes-multimedia/${BPN}/${BPN}.inc
+
+SRC_URI[md5sum] = "daa6cfca437c0776af5f79750cdd9b4e"
+SRC_URI[sha256sum] = "f8a874d104e3e72e2cc057e5a1710c650b10367486845a26e5ff28ed7a912c2d"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-multimedia/libcdio/libcdio-paranoia_10.2+0.93+1.bb b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/libcdio/libcdio-paranoia_10.2+0.93+1.bb
new file mode 100644
index 000000000..82a16cc94
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/libcdio/libcdio-paranoia_10.2+0.93+1.bb
@@ -0,0 +1,24 @@
+SUMMARY = "library to read digital audio CDs with error correction"
+HOMEPAGE = "http://www.gnu.org/software/libcdio/"
+SECTION = "libs"
+LICENSE = "GPLv3+"
+LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
+DEPENDS = "libcdio"
+
+SRC_URI = "${GNU_MIRROR}/libcdio/${BP}.tar.bz2"
+SRC_URI[md5sum] = "0255aa50e660db7f2c39658b9c565814"
+SRC_URI[sha256sum] = "ec1d9b1d5a28cc042f2cb33a7cc0a2b5ce5525f102bc4c15db1fac322559a493"
+
+inherit autotools pkgconfig
+
+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/import-layers/meta-openembedded/meta-oe/recipes-multimedia/libcdio/libcdio_0.93.bb b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/libcdio/libcdio_0.93.bb
index f21f91446..99e6a84bc 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-multimedia/libcdio/libcdio_0.93.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/libcdio/libcdio_0.93.bb
@@ -1,25 +1,28 @@
-ESCRIPTION = "The GNU Compact Disc Input and Control library (libcdio) contains a library for CD-ROM and CD image access."
+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"
-DEPENDS = "ncurses"
-
SRC_URI = "${GNU_MIRROR}/${BPN}/${BP}.tar.gz"
SRC_URI[md5sum] = "d154476feaac5a7b5f180e83eaf3d689"
SRC_URI[sha256sum] = "4972cd22fd8d0e8bff922d35c7a645be0db0ab0e7b3dfaecc9cd8272429d6975"
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}/${PN}${SOLIB}"
+FILES_${PN} = "${libdir}/${BPN}${SOLIB}"
FILES_${PN}-utils = "${bindir}/*"
-python populate_packages_prepend () {
- glibdir = d.expand('${libdir}')
- do_split_packages(d, glibdir, '^lib(.*)\.so\..*', 'lib%s', 'gstreamer %s library', extra_depends='', allow_links=True)
+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/import-layers/meta-openembedded/meta-oe/recipes-multimedia/libopus/libopus_1.1.2.bb b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/libopus/libopus_1.1.3.bb
index 9d9a6342e..a24f5e30b 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-multimedia/libopus/libopus_1.1.2.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/libopus/libopus_1.1.3.bb
@@ -9,8 +9,8 @@ LICENSE = "BSD"
LIC_FILES_CHKSUM = "file://COPYING;md5=e304cdf74c2a1b0a33a5084c128a23a3"
SRC_URI = "http://downloads.xiph.org/releases/opus/opus-${PV}.tar.gz"
-SRC_URI[md5sum] = "1f08a661bc72930187893a07f3741a91"
-SRC_URI[sha256sum] = "0e290078e31211baa7b5886bcc8ab6bc048b9fc83882532da4a1a45e58e907fd"
+SRC_URI[md5sum] = "32bbb6b557fe1b6066adc0ae1f08b629"
+SRC_URI[sha256sum] = "58b6fe802e7e30182e95d0cde890c0ace40b6f125cffc50635f0ad2eef69b633"
S = "${WORKDIR}/opus-${PV}"
@@ -20,18 +20,20 @@ PACKAGECONFIG ??= ""
PACKAGECONFIG[fixed-point] = "--enable-fixed-point,,"
PACKAGECONFIG[float-approx] = "--enable-float-approx,,"
-EXTRA_OECONF = "--with-NE10-includes=${STAGING_DIR_TARGET}${includedir} \
- --with-NE10-libraries=${STAGING_DIR_TARGET}${libdir} \
- --enable-asm \
- --enable-intrinsics \
- "
+EXTRA_OECONF = " \
+ --with-NE10-includes=${STAGING_DIR_TARGET}${includedir} \
+ --with-NE10-libraries=${STAGING_DIR_TARGET}${libdir} \
+ --enable-asm \
+ --enable-intrinsics \
+ --enable-custom-modes \
+"
python () {
- if d.getVar('TARGET_FPU', True) in [ 'soft' ]:
+ 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', True).split()):
+ if any((t.startswith('armv7') or t.startswith('aarch64')) for t in d.getVar('TUNE_FEATURES').split()):
d.appendVar('DEPENDS', ' ne10')
}
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-multimedia/libsdl-mixer/libsdl-mixer_1.2.12.bb b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/libsdl-mixer/libsdl-mixer_1.2.12.bb
index f1a01b9d5..c83fcc8da 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-multimedia/libsdl-mixer/libsdl-mixer_1.2.12.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/libsdl-mixer/libsdl-mixer_1.2.12.bb
@@ -13,7 +13,7 @@ SRC_URI[sha256sum] = "1644308279a975799049e4826af2cfc787cad2abb11aa14562e402521f
S = "${WORKDIR}/SDL_mixer-${PV}"
-inherit autotools-brokensep
+inherit autotools-brokensep pkgconfig
EXTRA_AUTORECONF += "--include=acinclude"
EXTRA_OECONF = "--disable-music-mp3 --enable-music-ogg --enable-music-ogg-tremor LIBS=-L${STAGING_LIBDIR}"
@@ -37,4 +37,3 @@ do_configure () {
sed -i -e 's:-L/usr/lib:-L${STAGING_LIBDIR}:g' $i
done
}
-
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-multimedia/libsdl-mixer/libsdl2-mixer_2.0.1.bb b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/libsdl-mixer/libsdl2-mixer_2.0.1.bb
index 2dc48e476..8276b446d 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-multimedia/libsdl-mixer/libsdl2-mixer_2.0.1.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/libsdl-mixer/libsdl2-mixer_2.0.1.bb
@@ -11,7 +11,7 @@ SRC_URI[sha256sum] = "5a24f62a610249d744cbd8d28ee399d8905db7222bf3bdbc8a8b4a76e5
S = "${WORKDIR}/SDL2_mixer-${PV}"
-inherit autotools-brokensep
+inherit autotools-brokensep pkgconfig
EXTRA_AUTORECONF += "--include=acinclude"
EXTRA_OECONF = "--disable-music-mp3 --enable-music-ogg --enable-music-ogg-tremor LIBS=-L${STAGING_LIBDIR}"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-multimedia/live555/live555.inc b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/live555/live555.inc
index 0d11de904..daae8d786 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-multimedia/live555/live555.inc
+++ b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/live555/live555.inc
@@ -7,9 +7,7 @@ HOMEPAGE = "http://live.com/"
LICENSE = "LGPLv3"
SECTION = "devel"
-INC_PR = "r1"
-
-URLV = "${@d.getVar('PV',1)[0:4]}.${@d.getVar('PV',1)[4:6]}.${@d.getVar('PV',1)[6:8]}"
+URLV = "${@d.getVar('PV')[0:4]}.${@d.getVar('PV')[4:6]}.${@d.getVar('PV')[6:8]}"
SRC_URI = "http://www.live555.com/liveMedia/public/live.${URLV}.tar.gz \
file://config.linux-cross"
# only latest live version stays on http://www.live555.com/liveMedia/public/, add mirror for older
@@ -18,14 +16,17 @@ MIRRORS += "http://www.live555.com/liveMedia/public/ http://distcache.FreeBSD.or
S = "${WORKDIR}/live"
TARGET_CC_ARCH += "${LDFLAGS}"
+XLOCALE_libc-musl = " -DXLOCALE_NOT_USED"
+XLOCALE ?= ""
+
do_configure() {
cp ${WORKDIR}/config.linux-cross .
- echo "COMPILE_OPTS+=" -fPIC "" >> config.linux-cross
+ echo "COMPILE_OPTS+=" -fPIC ${XLOCALE}"" >> config.linux-cross
./genMakefiles linux-cross
}
do_compile() {
- make
+ oe_runmake
}
do_install() {
@@ -45,14 +46,14 @@ do_install() {
done
cp ${S}/*/*.a ${D}${libdir}
install -d ${D}${bindir}
- for i in MPEG2TransportStreamIndexer openRTSP playSIP sapWatch testMPEG1or2AudioVideoToDarwin testMPEG1or2ProgramToTransportStream testMPEG1or2Splitter testMPEG1or2VideoReceiver testMPEG2TransportStreamTrickPlay testMPEG4VideoToDarwin testOnDemandRTSPServer testRelay testAMRAudioStreamer testDVVideoStreamer testMP3Receiver testMP3Streamer testMPEG1or2AudioVideoStreamer testMPEG1or2VideoStreamer testMPEG2TransportStreamer testMPEG4VideoStreamer testWAVAudioStreamer vobStreamer; do
+ for i in MPEG2TransportStreamIndexer openRTSP playSIP sapWatch testMPEG1or2ProgramToTransportStream testMPEG1or2Splitter testMPEG1or2VideoReceiver testMPEG2TransportStreamTrickPlay testOnDemandRTSPServer testRelay testAMRAudioStreamer testDVVideoStreamer testMP3Receiver testMP3Streamer testMPEG1or2AudioVideoStreamer testMPEG1or2VideoStreamer testMPEG2TransportStreamer testMPEG4VideoStreamer testWAVAudioStreamer vobStreamer; do
install -m 0755 ${S}/testProgs/${i} ${D}${bindir}/
done
install -m 0755 ${S}/mediaServer/live555MediaServer ${D}${bindir}/
}
PACKAGES =+ " live555-openrtsp live555-playsip live555-mediaserver"
-FILES_${PN} = "${bindir}/sapWatch ${bindir}/testMPEG1or2AudioVideoToDarwin ${bindir}/testMPEG1or2ProgramToTransportStream ${bindir}/testMPEG1or2Splitter ${bindir}/testMPEG1or2VideoReceiver ${bindir}/testMPEG2TransportStreamTrickPlay ${bindir}/testMPEG4VideoToDarwin ${bindir}/testOnDemandRTSPServer ${bindir}/testRelay ${bindir}/testAMRAudioStreamer ${bindir}/testDVVideoStreamer ${bindir}/testMP3Receiver ${bindir}/testMP3Streamer ${bindir}/testMPEG1or2AudioVideoStreamer ${bindir}/testMPEG1or2VideoStreamer ${bindir}/testMPEG2TransportStreamer ${bindir}/testMPEG4VideoStreamer ${bindir}/testWAVAudioStreamer ${bindir}/vobStreamer ${bindir}/MPEG2TransportStreamIndexer"
+FILES_${PN} = "${bindir}/sapWatch ${bindir}/testMPEG1or2ProgramToTransportStream ${bindir}/testMPEG1or2Splitter ${bindir}/testMPEG1or2VideoReceiver ${bindir}/testMPEG2TransportStreamTrickPlay ${bindir}/testOnDemandRTSPServer ${bindir}/testRelay ${bindir}/testAMRAudioStreamer ${bindir}/testDVVideoStreamer ${bindir}/testMP3Receiver ${bindir}/testMP3Streamer ${bindir}/testMPEG1or2AudioVideoStreamer ${bindir}/testMPEG1or2VideoStreamer ${bindir}/testMPEG2TransportStreamer ${bindir}/testMPEG4VideoStreamer ${bindir}/testWAVAudioStreamer ${bindir}/vobStreamer ${bindir}/MPEG2TransportStreamIndexer"
FILES_live555-openrtsp = "${bindir}/openRTSP"
FILES_live555-playsip = "${bindir}/playSIP"
FILES_live555-mediaserver = "${bindir}/live555MediaServer"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-multimedia/live555/live555_20130430.bb b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/live555/live555_20130430.bb
deleted file mode 100644
index f83285cff..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-multimedia/live555/live555_20130430.bb
+++ /dev/null
@@ -1,7 +0,0 @@
-require live555.inc
-
-LIC_FILES_CHKSUM = "file://COPYING;md5=68ad62c64cc6c620126241fd429e68fe"
-
-SRC_URI[md5sum] = "95533d91bd196e42fd748076dc244b09"
-SRC_URI[sha256sum] = "e549af608c9961d85cb647bc3b99804fec0fbaf5338c1b72d057558ae5cd2aea"
-
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-multimedia/live555/live555_20170410.bb b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/live555/live555_20170410.bb
new file mode 100644
index 000000000..27fc42987
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/live555/live555_20170410.bb
@@ -0,0 +1,9 @@
+require live555.inc
+
+LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504 \
+ file://COPYING.LESSER;md5=e6a600fd5e1d9cbde2d983680233ad02 \
+ "
+
+SRC_URI[md5sum] = "b7084a72aeb09549c8b248f8cc308841"
+SRC_URI[sha256sum] = "4c37d9c828f9028403997272e49968c260385dbbaef62e28ba24faef0dda868b"
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-multimedia/mikmod/libmikmod_3.3.6.bb b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/mikmod/libmikmod_3.3.6.bb
index 2e1b9bf05..d53dff6a0 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-multimedia/mikmod/libmikmod_3.3.6.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/mikmod/libmikmod_3.3.6.bb
@@ -3,7 +3,7 @@ SECTION = "libs"
LICENSE = "LGPLv2.1"
LIC_FILES_CHKSUM = "file://COPYING.LESSER;md5=4fbd65380cdd255951079008b364516c"
-DEPENDS = "alsa-lib texinfo pulseaudio"
+DEPENDS = "alsa-lib texinfo"
SRC_URI = "\
${SOURCEFORGE_MIRROR}/project/mikmod/${BPN}/${PV}/${BPN}-${PV}.tar.gz \
@@ -24,3 +24,5 @@ EXTRA_OECONF = "\
--enable-threads \
"
+PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'pulseaudio', d)}"
+PACKAGECONFIG[pulseaudio] = "--enable-pulseaudio,--disable-pulseaudio,pulseaudio"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-multimedia/minidlna/minidlna_1.1.5.bb b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/minidlna/minidlna_1.1.5.bb
index 7c6db62c1..81d700a7b 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-multimedia/minidlna/minidlna_1.1.5.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/minidlna/minidlna_1.1.5.bb
@@ -2,3 +2,5 @@ require ${BPN}.inc
SRCREV = "v1_1_5"
LIC_FILES_CHKSUM = "file://LICENCE.miniupnpd;md5=b0dabf9d8e0f871554e309d62ead8d2b"
+
+PNBLACKLIST[minidlna] ?= "Fails to build with RSS http://errors.yoctoproject.org/Errors/Details/130630/ - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-multimedia/mplayer/mplayer2_git.bb b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/mplayer/mplayer2_git.bb
index 330dfd3e7..1a4ae27e6 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-multimedia/mplayer/mplayer2_git.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/mplayer/mplayer2_git.bb
@@ -156,4 +156,4 @@ do_install() {
}
# http://errors.yoctoproject.org/Errors/Details/40734/
-PNBLACKLIST[mplayer2] ?= "Not compatible with currently used ffmpeg 3"
+PNBLACKLIST[mplayer2] ?= "Not compatible with currently used ffmpeg 3 - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-multimedia/mplayer/mpv/0001-Fix-build-with-HAVE_GL-0.patch b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/mplayer/mpv/0001-Fix-build-with-HAVE_GL-0.patch
new file mode 100644
index 000000000..ab2b5347f
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/mplayer/mpv/0001-Fix-build-with-HAVE_GL-0.patch
@@ -0,0 +1,39 @@
+From 212f6c8206bd4dcc7d8970c5f1632823ae4e783a Mon Sep 17 00:00:00 2001
+From: Michael Forney <mforney@mforney.org>
+Date: Sun, 12 Feb 2017 23:01:21 -0800
+Subject: [PATCH] Fix build with HAVE_GL==0
+
+video/out/opengl/hwdec.h includes video/out/opengl/common.h, which tries
+to include opengl headers.
+
+Upstream-Status: Backport
+---
+ options/options.c | 5 ++++-
+ 1 file changed, 4 insertions(+), 1 deletion(-)
+
+diff --git a/options/options.c b/options/options.c
+index b711156..0bb36ad 100644
+--- a/options/options.c
++++ b/options/options.c
+@@ -40,7 +40,6 @@
+ #include "stream/stream.h"
+ #include "video/csputils.h"
+ #include "video/hwdec.h"
+-#include "video/out/opengl/hwdec.h"
+ #include "video/image_writer.h"
+ #include "sub/osd.h"
+ #include "audio/filter/af.h"
+@@ -53,6 +52,10 @@
+ #include "video/out/drm_common.h"
+ #endif
+
++#if HAVE_GL
++#include "video/out/opengl/hwdec.h"
++#endif
++
+ extern const char mp_help_text[];
+
+ static void print_version(struct mp_log *log)
+--
+2.9.3
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-multimedia/mplayer/mpv_0.15.0.bb b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/mplayer/mpv_0.24.0.bb
index f51df778a..b1da2175d 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-multimedia/mplayer/mpv_0.15.0.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/mplayer/mpv_0.24.0.bb
@@ -3,7 +3,7 @@ DESCRIPTION = "mpv is a fork of mplayer2 and MPlayer. It shares some features wi
SECTION = "multimedia"
HOMEPAGE = "http://www.mpv.io/"
DEPENDS = "zlib ffmpeg jpeg virtual/libx11 xsp libxv \
- libxscrnsaver libv4l libxinerama libvdpau \
+ libxscrnsaver libv4l libxinerama \
"
REQUIRED_DISTRO_FEATURES = "x11"
@@ -11,25 +11,36 @@ REQUIRED_DISTRO_FEATURES = "x11"
LICENSE = "GPLv2+"
LIC_FILES_CHKSUM = "file://LICENSE;md5=91f1cb870c1cc2d31351a4d2595441cb"
-SRC_URI = "https://github.com/mpv-player/mpv/archive/v${PV}.tar.gz;name=mpv \
- http://www.freehackers.org/~tnagy/release/waf-1.8.12;name=waf;subdir=${BPN}-${PV} \
+SRC_URI = " \
+ https://github.com/mpv-player/mpv/archive/v${PV}.tar.gz;name=mpv \
+ http://www.freehackers.org/~tnagy/release/waf-1.8.12;name=waf;subdir=${BPN}-${PV} \
+ file://0001-Fix-build-with-HAVE_GL-0.patch \
"
-SRC_URI[mpv.md5sum] = "9042bd3fbff2bc8ba0b7fadaa4a22101"
-SRC_URI[mpv.sha256sum] = "7d31217ba8572f364fcea2955733f821374ae6d8c6d8f22f8bc63c44c0400bdc"
+SRC_URI[mpv.md5sum] = "5c85d1163911e49315a5bf1ca1fae13d"
+SRC_URI[mpv.sha256sum] = "a41854fa0ac35b9c309ad692aaee67c8d4495c3546f11cb4cdd0a124195d3f15"
SRC_URI[waf.md5sum] = "cef4ee82206b1843db082d0b0506bf71"
SRC_URI[waf.sha256sum] = "01bf2beab2106d1558800c8709bc2c8e496d3da4a2ca343fe091f22fca60c98b"
inherit waf pkgconfig pythonnative distro_features_check
# Note: both lua and libass are required to get on-screen-display (controls)
-PACKAGECONFIG ??= "lua libass"
+PACKAGECONFIG ??= " \
+ lua \
+ libass \
+ ${@bb.utils.filter('DISTRO_FEATURES', 'wayland', d)} \
+"
+PACKAGECONFIG[drm] = "--enable-drm,--disable-drm,libdrm"
+PACKAGECONFIG[gbm] = "--enable-gbm,--disable-gbm,virtual/mesa"
PACKAGECONFIG[lua] = "--enable-lua,--disable-lua,lua luajit"
PACKAGECONFIG[libass] = "--enable-libass,--disable-libass,libass"
PACKAGECONFIG[libarchive] = "--enable-libarchive,--disable-libarchive,libarchive"
PACKAGECONFIG[jack] = "--enable-jack, --disable-jack, jack"
PACKAGECONFIG[vaapi] = "--enable-vaapi, --disable-vaapi,libva"
+PACKAGECONFIG[vdpau] = "--enable-vdpau, --disable-vdpau,libvdpau"
+PACKAGECONFIG[wayland] = "--enable-wayland, --disable-wayland,wayland libxkbcommon"
SIMPLE_TARGET_SYS = "${@'${TARGET_SYS}'.replace('${TARGET_VENDOR}', '')}"
+
EXTRA_OECONF = " \
--prefix=${prefix} \
--target=${SIMPLE_TARGET_SYS} \
@@ -43,8 +54,6 @@ EXTRA_OECONF = " \
--disable-dvdread \
--disable-dvdnav \
--disable-cdda \
- --disable-enca \
- --disable-libguess \
--disable-uchardet \
--disable-rubberband \
--disable-lcms2 \
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-multimedia/pulseaudio/pavucontrol/0001-build-sys-Use-C-11-for-building.patch b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/pulseaudio/pavucontrol/0001-build-sys-Use-C-11-for-building.patch
new file mode 100644
index 000000000..b59569f2c
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/pulseaudio/pavucontrol/0001-build-sys-Use-C-11-for-building.patch
@@ -0,0 +1,27 @@
+From 1f92aa5c8d910519e3a74b2e3a9199aa9026a16c Mon Sep 17 00:00:00 2001
+From: Arun Raghavan <git@arunraghavan.net>
+Date: Mon, 25 Jan 2016 08:41:42 +0530
+Subject: [PATCH 1/2] build-sys: Use C++11 for building
+
+This requirement was added by gtkmm at some point:
+
+http://www.murrayc.com/permalink/2015/07/31/gtkmm-now-uses-c11/
+---
+ configure.ac | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/configure.ac b/configure.ac
+index 5b50e2d..8f28782 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -39,6 +39,7 @@ AC_PROG_CC
+ AC_PROG_LN_S
+ AC_TYPE_SIGNAL
+ AC_HEADER_STDC
++AX_CXX_COMPILE_STDCXX_11
+
+ AC_ARG_ENABLE(gtk3,
+ [AS_HELP_STRING([--disable-gtk3],
+--
+2.12.1
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-multimedia/pulseaudio/pavucontrol/0002-build-sys-Add-m4-file-for-AX_CXX_COMPILE_STDCXX_11.patch b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/pulseaudio/pavucontrol/0002-build-sys-Add-m4-file-for-AX_CXX_COMPILE_STDCXX_11.patch
new file mode 100644
index 000000000..97ec37d4c
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/pulseaudio/pavucontrol/0002-build-sys-Add-m4-file-for-AX_CXX_COMPILE_STDCXX_11.patch
@@ -0,0 +1,624 @@
+From ccb3eb7b4ff65414a56e2294080885b8966da52b Mon Sep 17 00:00:00 2001
+From: Arun Raghavan <git@arunraghavan.net>
+Date: Tue, 2 Feb 2016 17:01:47 +0530
+Subject: [PATCH 2/2] build-sys: Add m4 file for AX_CXX_COMPILE_STDCXX_11
+
+---
+ m4/ax_cxx_compile_stdcxx.m4 | 558 +++++++++++++++++++++++++++++++++++++++++
+ m4/ax_cxx_compile_stdcxx_11.m4 | 39 +++
+ 2 files changed, 597 insertions(+)
+ create mode 100644 m4/ax_cxx_compile_stdcxx.m4
+ create mode 100644 m4/ax_cxx_compile_stdcxx_11.m4
+
+diff --git a/m4/ax_cxx_compile_stdcxx.m4 b/m4/ax_cxx_compile_stdcxx.m4
+new file mode 100644
+index 0000000..079e17d
+--- /dev/null
++++ b/m4/ax_cxx_compile_stdcxx.m4
+@@ -0,0 +1,558 @@
++# ===========================================================================
++# http://www.gnu.org/software/autoconf-archive/ax_cxx_compile_stdcxx.html
++# ===========================================================================
++#
++# SYNOPSIS
++#
++# AX_CXX_COMPILE_STDCXX(VERSION, [ext|noext], [mandatory|optional])
++#
++# DESCRIPTION
++#
++# Check for baseline language coverage in the compiler for the specified
++# version of the C++ standard. If necessary, add switches to CXXFLAGS to
++# enable support. VERSION may be '11' (for the C++11 standard) or '14'
++# (for the C++14 standard).
++#
++# The second argument, if specified, indicates whether you insist on an
++# extended mode (e.g. -std=gnu++11) or a strict conformance mode (e.g.
++# -std=c++11). If neither is specified, you get whatever works, with
++# preference for an extended mode.
++#
++# The third argument, if specified 'mandatory' or if left unspecified,
++# indicates that baseline support for the specified C++ standard is
++# required and that the macro should error out if no mode with that
++# support is found. If specified 'optional', then configuration proceeds
++# regardless, after defining HAVE_CXX${VERSION} if and only if a
++# supporting mode is found.
++#
++# LICENSE
++#
++# Copyright (c) 2008 Benjamin Kosnik <bkoz@redhat.com>
++# Copyright (c) 2012 Zack Weinberg <zackw@panix.com>
++# Copyright (c) 2013 Roy Stogner <roystgnr@ices.utexas.edu>
++# Copyright (c) 2014, 2015 Google Inc.; contributed by Alexey Sokolov <sokolov@google.com>
++# Copyright (c) 2015 Paul Norman <penorman@mac.com>
++# Copyright (c) 2015 Moritz Klammler <moritz@klammler.eu>
++#
++# Copying and distribution of this file, with or without modification, are
++# permitted in any medium without royalty provided the copyright notice
++# and this notice are preserved. This file is offered as-is, without any
++# warranty.
++
++#serial 1
++
++dnl This macro is based on the code from the AX_CXX_COMPILE_STDCXX_11 macro
++dnl (serial version number 13).
++
++AC_DEFUN([AX_CXX_COMPILE_STDCXX], [dnl
++ m4_if([$1], [11], [],
++ [$1], [14], [],
++ [$1], [17], [m4_fatal([support for C++17 not yet implemented in AX_CXX_COMPILE_STDCXX])],
++ [m4_fatal([invalid first argument `$1' to AX_CXX_COMPILE_STDCXX])])dnl
++ m4_if([$2], [], [],
++ [$2], [ext], [],
++ [$2], [noext], [],
++ [m4_fatal([invalid second argument `$2' to AX_CXX_COMPILE_STDCXX])])dnl
++ m4_if([$3], [], [ax_cxx_compile_cxx$1_required=true],
++ [$3], [mandatory], [ax_cxx_compile_cxx$1_required=true],
++ [$3], [optional], [ax_cxx_compile_cxx$1_required=false],
++ [m4_fatal([invalid third argument `$3' to AX_CXX_COMPILE_STDCXX])])
++ AC_LANG_PUSH([C++])dnl
++ ac_success=no
++ AC_CACHE_CHECK(whether $CXX supports C++$1 features by default,
++ ax_cv_cxx_compile_cxx$1,
++ [AC_COMPILE_IFELSE([AC_LANG_SOURCE([_AX_CXX_COMPILE_STDCXX_testbody_$1])],
++ [ax_cv_cxx_compile_cxx$1=yes],
++ [ax_cv_cxx_compile_cxx$1=no])])
++ if test x$ax_cv_cxx_compile_cxx$1 = xyes; then
++ ac_success=yes
++ fi
++
++ m4_if([$2], [noext], [], [dnl
++ if test x$ac_success = xno; then
++ for switch in -std=gnu++$1 -std=gnu++0x; do
++ cachevar=AS_TR_SH([ax_cv_cxx_compile_cxx$1_$switch])
++ AC_CACHE_CHECK(whether $CXX supports C++$1 features with $switch,
++ $cachevar,
++ [ac_save_CXXFLAGS="$CXXFLAGS"
++ CXXFLAGS="$CXXFLAGS $switch"
++ AC_COMPILE_IFELSE([AC_LANG_SOURCE([_AX_CXX_COMPILE_STDCXX_testbody_$1])],
++ [eval $cachevar=yes],
++ [eval $cachevar=no])
++ CXXFLAGS="$ac_save_CXXFLAGS"])
++ if eval test x\$$cachevar = xyes; then
++ CXXFLAGS="$CXXFLAGS $switch"
++ ac_success=yes
++ break
++ fi
++ done
++ fi])
++
++ m4_if([$2], [ext], [], [dnl
++ if test x$ac_success = xno; then
++ dnl HP's aCC needs +std=c++11 according to:
++ dnl http://h21007.www2.hp.com/portal/download/files/unprot/aCxx/PDF_Release_Notes/769149-001.pdf
++ dnl Cray's crayCC needs "-h std=c++11"
++ for switch in -std=c++$1 -std=c++0x +std=c++$1 "-h std=c++$1"; do
++ cachevar=AS_TR_SH([ax_cv_cxx_compile_cxx$1_$switch])
++ AC_CACHE_CHECK(whether $CXX supports C++$1 features with $switch,
++ $cachevar,
++ [ac_save_CXXFLAGS="$CXXFLAGS"
++ CXXFLAGS="$CXXFLAGS $switch"
++ AC_COMPILE_IFELSE([AC_LANG_SOURCE([_AX_CXX_COMPILE_STDCXX_testbody_$1])],
++ [eval $cachevar=yes],
++ [eval $cachevar=no])
++ CXXFLAGS="$ac_save_CXXFLAGS"])
++ if eval test x\$$cachevar = xyes; then
++ CXXFLAGS="$CXXFLAGS $switch"
++ ac_success=yes
++ break
++ fi
++ done
++ fi])
++ AC_LANG_POP([C++])
++ if test x$ax_cxx_compile_cxx$1_required = xtrue; then
++ if test x$ac_success = xno; then
++ AC_MSG_ERROR([*** A compiler with support for C++$1 language features is required.])
++ fi
++ else
++ if test x$ac_success = xno; then
++ HAVE_CXX$1=0
++ AC_MSG_NOTICE([No compiler with C++$1 support was found])
++ else
++ HAVE_CXX$1=1
++ AC_DEFINE(HAVE_CXX$1,1,
++ [define if the compiler supports basic C++$1 syntax])
++ fi
++
++ AC_SUBST(HAVE_CXX$1)
++ fi
++])
++
++
++dnl Test body for checking C++11 support
++
++m4_define([_AX_CXX_COMPILE_STDCXX_testbody_11],
++ _AX_CXX_COMPILE_STDCXX_testbody_new_in_11
++)
++
++
++dnl Test body for checking C++14 support
++
++m4_define([_AX_CXX_COMPILE_STDCXX_testbody_14],
++ _AX_CXX_COMPILE_STDCXX_testbody_new_in_11
++ _AX_CXX_COMPILE_STDCXX_testbody_new_in_14
++)
++
++
++dnl Tests for new features in C++11
++
++m4_define([_AX_CXX_COMPILE_STDCXX_testbody_new_in_11], [[
++
++// If the compiler admits that it is not ready for C++11, why torture it?
++// Hopefully, this will speed up the test.
++
++#ifndef __cplusplus
++
++#error "This is not a C++ compiler"
++
++#elif __cplusplus < 201103L
++
++#error "This is not a C++11 compiler"
++
++#else
++
++namespace cxx11
++{
++
++ namespace test_static_assert
++ {
++
++ template <typename T>
++ struct check
++ {
++ static_assert(sizeof(int) <= sizeof(T), "not big enough");
++ };
++
++ }
++
++ namespace test_final_override
++ {
++
++ struct Base
++ {
++ virtual void f() {}
++ };
++
++ struct Derived : public Base
++ {
++ virtual void f() override {}
++ };
++
++ }
++
++ namespace test_double_right_angle_brackets
++ {
++
++ template < typename T >
++ struct check {};
++
++ typedef check<void> single_type;
++ typedef check<check<void>> double_type;
++ typedef check<check<check<void>>> triple_type;
++ typedef check<check<check<check<void>>>> quadruple_type;
++
++ }
++
++ namespace test_decltype
++ {
++
++ int
++ f()
++ {
++ int a = 1;
++ decltype(a) b = 2;
++ return a + b;
++ }
++
++ }
++
++ namespace test_type_deduction
++ {
++
++ template < typename T1, typename T2 >
++ struct is_same
++ {
++ static const bool value = false;
++ };
++
++ template < typename T >
++ struct is_same<T, T>
++ {
++ static const bool value = true;
++ };
++
++ template < typename T1, typename T2 >
++ auto
++ add(T1 a1, T2 a2) -> decltype(a1 + a2)
++ {
++ return a1 + a2;
++ }
++
++ int
++ test(const int c, volatile int v)
++ {
++ static_assert(is_same<int, decltype(0)>::value == true, "");
++ static_assert(is_same<int, decltype(c)>::value == false, "");
++ static_assert(is_same<int, decltype(v)>::value == false, "");
++ auto ac = c;
++ auto av = v;
++ auto sumi = ac + av + 'x';
++ auto sumf = ac + av + 1.0;
++ static_assert(is_same<int, decltype(ac)>::value == true, "");
++ static_assert(is_same<int, decltype(av)>::value == true, "");
++ static_assert(is_same<int, decltype(sumi)>::value == true, "");
++ static_assert(is_same<int, decltype(sumf)>::value == false, "");
++ static_assert(is_same<int, decltype(add(c, v))>::value == true, "");
++ return (sumf > 0.0) ? sumi : add(c, v);
++ }
++
++ }
++
++ namespace test_noexcept
++ {
++
++ int f() { return 0; }
++ int g() noexcept { return 0; }
++
++ static_assert(noexcept(f()) == false, "");
++ static_assert(noexcept(g()) == true, "");
++
++ }
++
++ namespace test_constexpr
++ {
++
++ template < typename CharT >
++ unsigned long constexpr
++ strlen_c_r(const CharT *const s, const unsigned long acc) noexcept
++ {
++ return *s ? strlen_c_r(s + 1, acc + 1) : acc;
++ }
++
++ template < typename CharT >
++ unsigned long constexpr
++ strlen_c(const CharT *const s) noexcept
++ {
++ return strlen_c_r(s, 0UL);
++ }
++
++ static_assert(strlen_c("") == 0UL, "");
++ static_assert(strlen_c("1") == 1UL, "");
++ static_assert(strlen_c("example") == 7UL, "");
++ static_assert(strlen_c("another\0example") == 7UL, "");
++
++ }
++
++ namespace test_rvalue_references
++ {
++
++ template < int N >
++ struct answer
++ {
++ static constexpr int value = N;
++ };
++
++ answer<1> f(int&) { return answer<1>(); }
++ answer<2> f(const int&) { return answer<2>(); }
++ answer<3> f(int&&) { return answer<3>(); }
++
++ void
++ test()
++ {
++ int i = 0;
++ const int c = 0;
++ static_assert(decltype(f(i))::value == 1, "");
++ static_assert(decltype(f(c))::value == 2, "");
++ static_assert(decltype(f(0))::value == 3, "");
++ }
++
++ }
++
++ namespace test_uniform_initialization
++ {
++
++ struct test
++ {
++ static const int zero {};
++ static const int one {1};
++ };
++
++ static_assert(test::zero == 0, "");
++ static_assert(test::one == 1, "");
++
++ }
++
++ namespace test_lambdas
++ {
++
++ void
++ test1()
++ {
++ auto lambda1 = [](){};
++ auto lambda2 = lambda1;
++ lambda1();
++ lambda2();
++ }
++
++ int
++ test2()
++ {
++ auto a = [](int i, int j){ return i + j; }(1, 2);
++ auto b = []() -> int { return '0'; }();
++ auto c = [=](){ return a + b; }();
++ auto d = [&](){ return c; }();
++ auto e = [a, &b](int x) mutable {
++ const auto identity = [](int y){ return y; };
++ for (auto i = 0; i < a; ++i)
++ a += b--;
++ return x + identity(a + b);
++ }(0);
++ return a + b + c + d + e;
++ }
++
++ int
++ test3()
++ {
++ const auto nullary = [](){ return 0; };
++ const auto unary = [](int x){ return x; };
++ using nullary_t = decltype(nullary);
++ using unary_t = decltype(unary);
++ const auto higher1st = [](nullary_t f){ return f(); };
++ const auto higher2nd = [unary](nullary_t f1){
++ return [unary, f1](unary_t f2){ return f2(unary(f1())); };
++ };
++ return higher1st(nullary) + higher2nd(nullary)(unary);
++ }
++
++ }
++
++ namespace test_variadic_templates
++ {
++
++ template <int...>
++ struct sum;
++
++ template <int N0, int... N1toN>
++ struct sum<N0, N1toN...>
++ {
++ static constexpr auto value = N0 + sum<N1toN...>::value;
++ };
++
++ template <>
++ struct sum<>
++ {
++ static constexpr auto value = 0;
++ };
++
++ static_assert(sum<>::value == 0, "");
++ static_assert(sum<1>::value == 1, "");
++ static_assert(sum<23>::value == 23, "");
++ static_assert(sum<1, 2>::value == 3, "");
++ static_assert(sum<5, 5, 11>::value == 21, "");
++ static_assert(sum<2, 3, 5, 7, 11, 13>::value == 41, "");
++
++ }
++
++ // http://stackoverflow.com/questions/13728184/template-aliases-and-sfinae
++ // Clang 3.1 fails with headers of libstd++ 4.8.3 when using std::function
++ // because of this.
++ namespace test_template_alias_sfinae
++ {
++
++ struct foo {};
++
++ template<typename T>
++ using member = typename T::member_type;
++
++ template<typename T>
++ void func(...) {}
++
++ template<typename T>
++ void func(member<T>*) {}
++
++ void test();
++
++ void test() { func<foo>(0); }
++
++ }
++
++} // namespace cxx11
++
++#endif // __cplusplus >= 201103L
++
++]])
++
++
++dnl Tests for new features in C++14
++
++m4_define([_AX_CXX_COMPILE_STDCXX_testbody_new_in_14], [[
++
++// If the compiler admits that it is not ready for C++14, why torture it?
++// Hopefully, this will speed up the test.
++
++#ifndef __cplusplus
++
++#error "This is not a C++ compiler"
++
++#elif __cplusplus < 201402L
++
++#error "This is not a C++14 compiler"
++
++#else
++
++namespace cxx14
++{
++
++ namespace test_polymorphic_lambdas
++ {
++
++ int
++ test()
++ {
++ const auto lambda = [](auto&&... args){
++ const auto istiny = [](auto x){
++ return (sizeof(x) == 1UL) ? 1 : 0;
++ };
++ const int aretiny[] = { istiny(args)... };
++ return aretiny[0];
++ };
++ return lambda(1, 1L, 1.0f, '1');
++ }
++
++ }
++
++ namespace test_binary_literals
++ {
++
++ constexpr auto ivii = 0b0000000000101010;
++ static_assert(ivii == 42, "wrong value");
++
++ }
++
++ namespace test_generalized_constexpr
++ {
++
++ template < typename CharT >
++ constexpr unsigned long
++ strlen_c(const CharT *const s) noexcept
++ {
++ auto length = 0UL;
++ for (auto p = s; *p; ++p)
++ ++length;
++ return length;
++ }
++
++ static_assert(strlen_c("") == 0UL, "");
++ static_assert(strlen_c("x") == 1UL, "");
++ static_assert(strlen_c("test") == 4UL, "");
++ static_assert(strlen_c("another\0test") == 7UL, "");
++
++ }
++
++ namespace test_lambda_init_capture
++ {
++
++ int
++ test()
++ {
++ auto x = 0;
++ const auto lambda1 = [a = x](int b){ return a + b; };
++ const auto lambda2 = [a = lambda1(x)](){ return a; };
++ return lambda2();
++ }
++
++ }
++
++ namespace test_digit_seperators
++ {
++
++ constexpr auto ten_million = 100'000'000;
++ static_assert(ten_million == 100000000, "");
++
++ }
++
++ namespace test_return_type_deduction
++ {
++
++ auto f(int& x) { return x; }
++ decltype(auto) g(int& x) { return x; }
++
++ template < typename T1, typename T2 >
++ struct is_same
++ {
++ static constexpr auto value = false;
++ };
++
++ template < typename T >
++ struct is_same<T, T>
++ {
++ static constexpr auto value = true;
++ };
++
++ int
++ test()
++ {
++ auto x = 0;
++ static_assert(is_same<int, decltype(f(x))>::value, "");
++ static_assert(is_same<int&, decltype(g(x))>::value, "");
++ return x;
++ }
++
++ }
++
++} // namespace cxx14
++
++#endif // __cplusplus >= 201402L
++
++]])
+diff --git a/m4/ax_cxx_compile_stdcxx_11.m4 b/m4/ax_cxx_compile_stdcxx_11.m4
+new file mode 100644
+index 0000000..09db383
+--- /dev/null
++++ b/m4/ax_cxx_compile_stdcxx_11.m4
+@@ -0,0 +1,39 @@
++# ============================================================================
++# http://www.gnu.org/software/autoconf-archive/ax_cxx_compile_stdcxx_11.html
++# ============================================================================
++#
++# SYNOPSIS
++#
++# AX_CXX_COMPILE_STDCXX_11([ext|noext], [mandatory|optional])
++#
++# DESCRIPTION
++#
++# Check for baseline language coverage in the compiler for the C++11
++# standard; if necessary, add switches to CXXFLAGS to enable support.
++#
++# This macro is a convenience alias for calling the AX_CXX_COMPILE_STDCXX
++# macro with the version set to C++11. The two optional arguments are
++# forwarded literally as the second and third argument respectively.
++# Please see the documentation for the AX_CXX_COMPILE_STDCXX macro for
++# more information. If you want to use this macro, you also need to
++# download the ax_cxx_compile_stdcxx.m4 file.
++#
++# LICENSE
++#
++# Copyright (c) 2008 Benjamin Kosnik <bkoz@redhat.com>
++# Copyright (c) 2012 Zack Weinberg <zackw@panix.com>
++# Copyright (c) 2013 Roy Stogner <roystgnr@ices.utexas.edu>
++# Copyright (c) 2014, 2015 Google Inc.; contributed by Alexey Sokolov <sokolov@google.com>
++# Copyright (c) 2015 Paul Norman <penorman@mac.com>
++# Copyright (c) 2015 Moritz Klammler <moritz@klammler.eu>
++#
++# Copying and distribution of this file, with or without modification, are
++# permitted in any medium without royalty provided the copyright notice
++# and this notice are preserved. This file is offered as-is, without any
++# warranty.
++
++#serial 14
++
++include([ax_cxx_compile_stdcxx.m4])
++
++AC_DEFUN([AX_CXX_COMPILE_STDCXX_11], [AX_CXX_COMPILE_STDCXX([11], [$1], [$2])])
+--
+2.12.1
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-multimedia/pulseaudio/pavucontrol_3.0.bb b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/pulseaudio/pavucontrol_3.0.bb
index 51e24c403..959068dd3 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-multimedia/pulseaudio/pavucontrol_3.0.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/pulseaudio/pavucontrol_3.0.bb
@@ -8,8 +8,13 @@ inherit gnome distro_features_check
REQUIRED_DISTRO_FEATURES = "x11"
-SRC_URI = "http://freedesktop.org/software/pulseaudio/${BPN}/${BP}.tar.xz"
+SRC_URI = "http://freedesktop.org/software/pulseaudio/${BPN}/${BP}.tar.xz \
+ file://0001-build-sys-Use-C-11-for-building.patch \
+ file://0002-build-sys-Add-m4-file-for-AX_CXX_COMPILE_STDCXX_11.patch \
+ "
SRC_URI[md5sum] = "176308d2c03f8f3a7b2bd4f4d284fe71"
SRC_URI[sha256sum] = "b3d2ea5a25fc88dcee80c396014f72df1b4742f8cfbbc5349c39d64a0d338890"
EXTRA_OECONF = " --disable-gtk3 --disable-lynx "
+
+RDEPENDS_${PN} += "pulseaudio-server"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-multimedia/v4l2apps/v4l-utils/0001-Revert-media-ctl-Don-t-install-libmediactl-and-libv4.patch b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/v4l2apps/v4l-utils/0001-Revert-media-ctl-Don-t-install-libmediactl-and-libv4.patch
index 4b3de3ccb..74130949f 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-multimedia/v4l2apps/v4l-utils/0001-Revert-media-ctl-Don-t-install-libmediactl-and-libv4.patch
+++ b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/v4l2apps/v4l-utils/0001-Revert-media-ctl-Don-t-install-libmediactl-and-libv4.patch
@@ -1,4 +1,4 @@
-From 4ee15a8a69b84526ece1180a288a37db077bcd9b Mon Sep 17 00:00:00 2001
+From 2d6bfa75b2e16b4d764f1bf00bb902fb4b5e507b Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Fri, 27 Feb 2015 21:55:36 +0000
Subject: [PATCH] Revert "media-ctl: Don't install libmediactl and
@@ -11,23 +11,27 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
Conflicts:
utils/media-ctl/Makefile.am
---
- utils/media-ctl/Makefile.am | 11 +++--------
- 1 file changed, 3 insertions(+), 8 deletions(-)
+ utils/media-ctl/Makefile.am | 10 +++-------
+ 1 file changed, 3 insertions(+), 7 deletions(-)
diff --git a/utils/media-ctl/Makefile.am b/utils/media-ctl/Makefile.am
-index a3931fb..fe1fea5 100644
+index ee7dcc9..d11fa2e 100644
--- a/utils/media-ctl/Makefile.am
+++ b/utils/media-ctl/Makefile.am
-@@ -1,14 +1,9 @@
+@@ -1,8 +1,7 @@
-noinst_LTLIBRARIES = libmediactl.la libv4l2subdev.la
-
+lib_LTLIBRARIES = libmediactl.la libv4l2subdev.la
libmediactl_la_SOURCES = libmediactl.c mediactl-priv.h
-libmediactl_la_CFLAGS = -static $(LIBUDEV_CFLAGS)
-libmediactl_la_LDFLAGS = -static $(LIBUDEV_LIBS)
--
+libmediactl_la_CFLAGS = $(LIBUDEV_CFLAGS)
+libmediactl_la_LDFLAGS = $(LIBUDEV_LIBS)
+
+ media-bus-format-names.h: ../../include/linux/media-bus-format.h
+ sed -e '/#define MEDIA_BUS_FMT/ ! d; s/.*FMT_//; /FIXED/ d; s/\t.*//; s/.*/{ \"&\", MEDIA_BUS_FMT_& },/;' \
+@@ -18,9 +17,6 @@ CLEANFILES = $(BUILT_SOURCES)
+ nodist_libv4l2subdev_la_SOURCES = $(BUILT_SOURCES)
libv4l2subdev_la_SOURCES = libv4l2subdev.c
libv4l2subdev_la_LIBADD = libmediactl.la
-libv4l2subdev_la_CFLAGS = -static
@@ -37,5 +41,5 @@ index a3931fb..fe1fea5 100644
noinst_HEADERS = mediactl.h v4l2subdev.h
--
-2.1.4
+2.9.3
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-multimedia/v4l2apps/v4l-utils/0001-buildsystem-do-not-assume-building-in-source-tree.patch b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/v4l2apps/v4l-utils/0001-buildsystem-do-not-assume-building-in-source-tree.patch
new file mode 100644
index 000000000..54161f90f
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/v4l2apps/v4l-utils/0001-buildsystem-do-not-assume-building-in-source-tree.patch
@@ -0,0 +1,110 @@
+From 806822f5acb756d5acda0f9063c84b28b38b3ffb Mon Sep 17 00:00:00 2001
+From: Ismo Puustinen <ismo.puustinen@intel.com>
+Date: Mon, 3 Apr 2017 13:23:38 +0300
+Subject: [PATCH v4l-utils] buildsystem: do not assume building in source tree.
+
+Use $(top_srcdir) as reference for include paths and buildtime scripts.
+Otherwise compilation outside of project root directory will fail
+because header and script paths are wrong.
+
+To reproduce: mkdir b; cd b; ../configure; make
+
+Upstream-status: Accepted [https://git.linuxtv.org//v4l-utils.git/commit/?id=bd98c9a99bffc8d44c54859345e4dfee0ada4275]
+
+Signed-off-by: Ismo Puustinen <ismo.puustinen@intel.com>
+---
+ utils/cec-compliance/Makefile.am | 2 +-
+ utils/cec-ctl/Makefile.am | 2 +-
+ utils/cec-follower/Makefile.am | 4 ++--
+ utils/qv4l2/Makefile.am | 2 +-
+ utils/v4l2-compliance/Makefile.am | 2 +-
+ utils/v4l2-ctl/Makefile.am | 2 +-
+ 6 files changed, 7 insertions(+), 7 deletions(-)
+
+diff --git a/utils/cec-compliance/Makefile.am b/utils/cec-compliance/Makefile.am
+index ec5de51..8331aa0 100644
+--- a/utils/cec-compliance/Makefile.am
++++ b/utils/cec-compliance/Makefile.am
+@@ -7,7 +7,7 @@ cec_compliance_LDFLAGS = -lrt
+ cec-compliance.cpp: cec-table.h
+
+ cec-table.h: ../cec-ctl/msg2ctl.pl ../../include/linux/cec.h ../../include/linux/cec-funcs.h
+- ../cec-ctl/msg2ctl.pl 2 ../../include/linux/cec.h ../../include/linux/cec-funcs.h >$@
++ $(top_srcdir)/utils/cec-ctl/msg2ctl.pl 2 $(top_srcdir)/include/linux/cec.h $(top_srcdir)/include/linux/cec-funcs.h >$@
+
+ cec-compliance.cpp: version.h
+
+diff --git a/utils/cec-ctl/Makefile.am b/utils/cec-ctl/Makefile.am
+index 0a7ef22..6afb6c9 100644
+--- a/utils/cec-ctl/Makefile.am
++++ b/utils/cec-ctl/Makefile.am
+@@ -7,7 +7,7 @@ cec_ctl_LDFLAGS = -lrt
+ cec-ctl.cpp: cec-ctl-gen.h
+
+ cec-ctl-gen.h: msg2ctl.pl ../../include/linux/cec.h ../../include/linux/cec-funcs.h
+- ./msg2ctl.pl 0 ../../include/linux/cec.h ../../include/linux/cec-funcs.h >$@
++ $(top_srcdir)/utils/cec-ctl/msg2ctl.pl 0 $(top_srcdir)/include/linux/cec.h $(top_srcdir)/include/linux/cec-funcs.h >$@
+
+ clean-local:
+ -rm -vf cec-ctl-gen.h
+diff --git a/utils/cec-follower/Makefile.am b/utils/cec-follower/Makefile.am
+index 538edb2..fdbf3d9 100644
+--- a/utils/cec-follower/Makefile.am
++++ b/utils/cec-follower/Makefile.am
+@@ -7,12 +7,12 @@ cec_follower_LDFLAGS = -lrt
+ cec-log.cpp: cec-log.h
+
+ cec-log.h: ../cec-ctl/msg2ctl.pl ../../include/linux/cec.h ../../include/linux/cec-funcs.h
+- ../cec-ctl/msg2ctl.pl 1 ../../include/linux/cec.h ../../include/linux/cec-funcs.h >$@
++ $(top_srcdir)/utils/cec-ctl/msg2ctl.pl 1 $(top_srcdir)/include/linux/cec.h $(top_srcdir)/include/linux/cec-funcs.h >$@
+
+ cec-follower.cpp: cec-table.h version.h
+
+ cec-table.h: ../cec-ctl/msg2ctl.pl ../../include/linux/cec.h ../../include/linux/cec-funcs.h
+- ../cec-ctl/msg2ctl.pl 2 ../../include/linux/cec.h ../../include/linux/cec-funcs.h >$@
++ $(top_srcdir)/utils/cec-ctl/msg2ctl.pl 2 $(top_srcdir)/include/linux/cec.h $(top_srcdir)/include/linux/cec-funcs.h >$@
+
+ version.h:
+ @if git rev-parse HEAD >/dev/null 2>&1; then \
+diff --git a/utils/qv4l2/Makefile.am b/utils/qv4l2/Makefile.am
+index fd58486..ccd1a2a 100644
+--- a/utils/qv4l2/Makefile.am
++++ b/utils/qv4l2/Makefile.am
+@@ -8,7 +8,7 @@ qv4l2_SOURCES = qv4l2.cpp general-tab.cpp ctrl-tab.cpp vbi-tab.cpp capture-win.c
+ nodist_qv4l2_SOURCES = moc_qv4l2.cpp moc_general-tab.cpp moc_capture-win.cpp moc_vbi-tab.cpp qrc_qv4l2.cpp
+ qv4l2_LDADD = ../../lib/libv4l2/libv4l2.la ../../lib/libv4lconvert/libv4lconvert.la \
+ ../libv4l2util/libv4l2util.la ../libmedia_dev/libmedia_dev.la
+-qv4l2_CPPFLAGS = -I../common
++qv4l2_CPPFLAGS = -I$(top_srcdir)/utils/common
+
+ if WITH_QTGL
+ qv4l2_CPPFLAGS += $(QTGL_CFLAGS)
+diff --git a/utils/v4l2-compliance/Makefile.am b/utils/v4l2-compliance/Makefile.am
+index 03db8df..18b9892 100644
+--- a/utils/v4l2-compliance/Makefile.am
++++ b/utils/v4l2-compliance/Makefile.am
+@@ -5,7 +5,7 @@ DEFS :=
+ v4l2_compliance_SOURCES = v4l2-compliance.cpp v4l2-test-debug.cpp v4l2-test-input-output.cpp \
+ v4l2-test-controls.cpp v4l2-test-io-config.cpp v4l2-test-formats.cpp v4l2-test-buffers.cpp \
+ v4l2-test-codecs.cpp v4l2-test-colors.cpp v4l2-compliance.h
+-v4l2_compliance_CPPFLAGS = -I../common
++v4l2_compliance_CPPFLAGS = -I$(top_srcdir)/utils/common
+
+ if WITH_V4L2_COMPLIANCE_LIBV4L
+ v4l2_compliance_LDADD = ../../lib/libv4l2/libv4l2.la ../../lib/libv4lconvert/libv4lconvert.la -lrt -lpthread
+diff --git a/utils/v4l2-ctl/Makefile.am b/utils/v4l2-ctl/Makefile.am
+index 955647d..825e53f 100644
+--- a/utils/v4l2-ctl/Makefile.am
++++ b/utils/v4l2-ctl/Makefile.am
+@@ -7,7 +7,7 @@ v4l2_ctl_SOURCES = v4l2-ctl.cpp v4l2-ctl.h v4l2-ctl-common.cpp v4l2-ctl-tuner.cp
+ v4l2-ctl-overlay.cpp v4l2-ctl-vbi.cpp v4l2-ctl-selection.cpp v4l2-ctl-misc.cpp \
+ v4l2-ctl-streaming.cpp v4l2-ctl-sdr.cpp v4l2-ctl-edid.cpp v4l2-ctl-modes.cpp \
+ v4l2-tpg-colors.c v4l2-tpg-core.c v4l-stream.c
+-v4l2_ctl_CPPFLAGS = -I../common
++v4l2_ctl_CPPFLAGS = -I$(top_srcdir)/utils/common
+
+ if WITH_V4L2_CTL_LIBV4L
+ v4l2_ctl_LDADD = ../../lib/libv4l2/libv4l2.la ../../lib/libv4lconvert/libv4lconvert.la -lrt -lpthread
+--
+2.9.3
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-multimedia/v4l2apps/v4l-utils/0001-ir-ctl-Define-TEMP_FAILURE_RETRY-if-undefined.patch b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/v4l2apps/v4l-utils/0001-ir-ctl-Define-TEMP_FAILURE_RETRY-if-undefined.patch
new file mode 100644
index 000000000..f1e11da3f
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/v4l2apps/v4l-utils/0001-ir-ctl-Define-TEMP_FAILURE_RETRY-if-undefined.patch
@@ -0,0 +1,55 @@
+From e60aea50e41ae8a17672beb5859beecb66e7a305 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 14 Jul 2017 13:11:25 -0700
+Subject: [PATCH 1/3] ir-ctl: Define TEMP_FAILURE_RETRY if undefined
+
+use strndup() instead of strndupa() which is not
+universally available in C libraries
+
+Taken from AlpineLinux
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ utils/ir-ctl/ir-ctl.c | 14 +++++++++++++-
+ 1 file changed, 13 insertions(+), 1 deletion(-)
+
+diff --git a/utils/ir-ctl/ir-ctl.c b/utils/ir-ctl/ir-ctl.c
+index bc58cee..1a44011 100644
+--- a/utils/ir-ctl/ir-ctl.c
++++ b/utils/ir-ctl/ir-ctl.c
+@@ -42,6 +42,16 @@
+ # define _(string) string
+ #endif
+
++/* taken from glibc unistd.h */
++#ifndef TEMP_FAILURE_RETRY
++#define TEMP_FAILURE_RETRY(expression) \
++ (__extension__ \
++ ({ long int __result; \
++ do __result = (long int) (expression); \
++ while (__result == -1L && errno == EINTR); \
++ __result; }))
++#endif
++
+ # define N_(string) string
+
+
+@@ -344,12 +354,14 @@ static struct file *read_scancode(const char *name)
+ return NULL;
+ }
+
+- pstr = strndupa(name, p - name);
++ pstr = strndup(name, p - name);
+
+ if (!protocol_match(pstr, &proto)) {
+ fprintf(stderr, _("error: protocol '%s' not found\n"), pstr);
++ free(pstr);
+ return NULL;
+ }
++ free(pstr);
+
+ if (!strtoscancode(p + 1, &scancode)) {
+ fprintf(stderr, _("error: invalid scancode '%s'\n"), p + 1);
+--
+2.13.3
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-multimedia/v4l2apps/v4l-utils/0002-contrib-test-Link-mc_nextgen_test-with-libargp-if-ne.patch b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/v4l2apps/v4l-utils/0002-contrib-test-Link-mc_nextgen_test-with-libargp-if-ne.patch
new file mode 100644
index 000000000..2fb4057ec
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/v4l2apps/v4l-utils/0002-contrib-test-Link-mc_nextgen_test-with-libargp-if-ne.patch
@@ -0,0 +1,28 @@
+From b3acc4c6407f9553f32582a9aee6a11b5fcd1d8a Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 14 Jul 2017 13:17:19 -0700
+Subject: [PATCH 2/3] contrib/test: Link mc_nextgen_test with libargp if needed
+
+musl depends on external argp implementation e.g.
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ contrib/test/Makefile.am | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/contrib/test/Makefile.am b/contrib/test/Makefile.am
+index 4641e21..e47b948 100644
+--- a/contrib/test/Makefile.am
++++ b/contrib/test/Makefile.am
+@@ -32,7 +32,7 @@ v4l2gl_LDFLAGS = $(X11_LIBS) $(GL_LIBS) $(GLU_LIBS) $(ARGP_LIBS)
+ v4l2gl_LDADD = ../../lib/libv4l2/libv4l2.la ../../lib/libv4lconvert/libv4lconvert.la
+
+ mc_nextgen_test_CFLAGS = $(LIBUDEV_CFLAGS)
+-mc_nextgen_test_LDFLAGS = $(LIBUDEV_LIBS)
++mc_nextgen_test_LDFLAGS = $(ARGP_LIBS) $(LIBUDEV_LIBS)
+
+
+ ioctl_test_SOURCES = ioctl-test.c ioctl-test.h ioctl_32.h ioctl_64.h
+--
+2.13.3
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-multimedia/v4l2apps/v4l-utils/0003-v4l2-ctl-Do-not-use-getsubopt.patch b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/v4l2apps/v4l-utils/0003-v4l2-ctl-Do-not-use-getsubopt.patch
new file mode 100644
index 000000000..0a986ae5d
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/v4l2apps/v4l-utils/0003-v4l2-ctl-Do-not-use-getsubopt.patch
@@ -0,0 +1,49 @@
+From d04aa6866cbea57c4a81b033cd60586a9436ac6b Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 14 Jul 2017 13:20:05 -0700
+Subject: [PATCH 3/3] v4l2-ctl: Do not use getsubopt
+
+POSIX says that behavior when subopts list is empty is undefined.
+musl libs will set value to NULL which leads to crash.
+
+Taken from AlpineLinux
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ utils/v4l2-ctl/v4l2-ctl-common.cpp | 19 ++++++++++---------
+ 1 file changed, 10 insertions(+), 9 deletions(-)
+
+diff --git a/utils/v4l2-ctl/v4l2-ctl-common.cpp b/utils/v4l2-ctl/v4l2-ctl-common.cpp
+index 3ea6cd3..291fb3e 100644
+--- a/utils/v4l2-ctl/v4l2-ctl-common.cpp
++++ b/utils/v4l2-ctl/v4l2-ctl-common.cpp
+@@ -692,16 +692,17 @@ static bool parse_subset(char *optarg)
+
+ static bool parse_next_subopt(char **subs, char **value)
+ {
+- static char *const subopts[] = {
+- NULL
+- };
+- int opt = getsubopt(subs, subopts, value);
++ char *p = *subs;
++ *value = *subs;
+
+- if (opt < 0 || *value)
+- return false;
+- fprintf(stderr, "No value given to suboption <%s>\n",
+- subopts[opt]);
+- return true;
++ while (*p && *p != ',')
++ p++;
++
++ if (*p)
++ *p++ = '\0';
++
++ *subs = p;
++ return false;
+ }
+
+ void common_cmd(int ch, char *optarg)
+--
+2.13.3
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-multimedia/v4l2apps/v4l-utils_1.10.1.bb b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/v4l2apps/v4l-utils_1.12.3.bb
index b9732fedc..b408bb0a9 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-multimedia/v4l2apps/v4l-utils_1.10.1.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-multimedia/v4l2apps/v4l-utils_1.12.3.bb
@@ -6,6 +6,7 @@ PROVIDES = "libv4l media-ctl"
DEPENDS = "jpeg \
${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'virtual/libx11', '', d)}"
+DEPENDS_append_libc-musl = " argp-standalone"
inherit autotools gettext pkgconfig
@@ -14,11 +15,15 @@ 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://0001-buildsystem-do-not-assume-building-in-source-tree.patch \
file://mediactl-pkgconfig.patch \
file://export-mediactl-headers.patch \
- "
-SRC_URI[md5sum] = "936c9c58343840e91294e4dcec7dc05f"
-SRC_URI[sha256sum] = "6147ccc29fe7dd3c5c3994d613c4f2a099bac8b44694a96e5cf4d7caca8336c0"
+ file://0001-ir-ctl-Define-TEMP_FAILURE_RETRY-if-undefined.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] = "89e1ed6c69c94e0489dc0a638c7841aa"
+SRC_URI[sha256sum] = "5a47dd6f0e7dfe902d94605c01d385a4a4e87583ff5856d6f181900ea81cf46e"
EXTRA_OECONF = "--disable-qv4l2 --enable-shared --with-udevdir=${base_libdir}/udev"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-navigation/gdal/gdal_1.11.1.bb b/import-layers/meta-openembedded/meta-oe/recipes-navigation/gdal/gdal_1.11.1.bb
index 012806a69..4e821be5a 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-navigation/gdal/gdal_1.11.1.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-navigation/gdal/gdal_1.11.1.bb
@@ -111,4 +111,4 @@ FILES_${PN} += "${libdir}/gdalplugins"
# | gdalserver.c:124:21: error: storage size of 'sHints' isn't known
# | struct addrinfo sHints;
# | ^
-PNBLACKLIST[gdal] ?= "BROKEN: fails to build with gcc-5"
+PNBLACKLIST[gdal] ?= "BROKEN: fails to build with gcc-5 - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-navigation/geoclue/geoclue_2.4.4.bb b/import-layers/meta-openembedded/meta-oe/recipes-navigation/geoclue/geoclue_2.4.4.bb
index 3170d44ef..1d531aec7 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-navigation/geoclue/geoclue_2.4.4.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-navigation/geoclue/geoclue_2.4.4.bb
@@ -8,7 +8,7 @@ SECTION = "console/network"
LIC_FILES_CHKSUM = "file://COPYING;md5=8114b83a0435d8136b47bd70111ce5cd"
-DEPENDS = "glib-2.0 dbus json-glib libsoup-2.4 intltool-native"
+DEPENDS = "glib-2.0 dbus json-glib libsoup-2.4 intltool-native gobject-introspection-native"
inherit autotools pkgconfig gtk-doc
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-navigation/gpsd/gpsd_3.14.bb b/import-layers/meta-openembedded/meta-oe/recipes-navigation/gpsd/gpsd_3.14.bb
index 4d00fea6d..fb02f9598 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-navigation/gpsd/gpsd_3.14.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-navigation/gpsd/gpsd_3.14.bb
@@ -36,6 +36,8 @@ SYSTEMD_OESCONS = "${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'f
export STAGING_INCDIR
export STAGING_LIBDIR
+LDFLAGS_append = "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-gold', ' -fuse-ld=bfd ', '', d)}"
+
PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'bluetooth', 'bluez', '', d)}"
PACKAGECONFIG[bluez] = "bluez='true',bluez='false',${BLUEZ}"
PACKAGECONFIG[qt] = "qt='yes',qt='no',qt4-x11-free"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-navigation/navit/navit-fpu.inc b/import-layers/meta-openembedded/meta-oe/recipes-navigation/navit/navit-fpu.inc
index d9637022f..54b7a9779 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-navigation/navit/navit-fpu.inc
+++ b/import-layers/meta-openembedded/meta-oe/recipes-navigation/navit/navit-fpu.inc
@@ -1,6 +1,6 @@
def get_navit_fpu_setting(bb, d):
- if d.getVar('TARGET_FPU', 1) in [ 'soft' ]:
+ if d.getVar('TARGET_FPU') in [ 'soft' ]:
return "--enable-avoid-float"
return ""
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-navigation/orrery/orrery/0001-orrery-Fix-sprintf-format.patch b/import-layers/meta-openembedded/meta-oe/recipes-navigation/orrery/orrery/0001-orrery-Fix-sprintf-format.patch
new file mode 100644
index 000000000..eb6241fdd
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-navigation/orrery/orrery/0001-orrery-Fix-sprintf-format.patch
@@ -0,0 +1,26 @@
+From e600d3c09d2f97a197f86e6987d44d142e7b7cdf Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Tue, 27 Jun 2017 21:12:17 -0700
+Subject: [PATCH] orrery: Fix sprintf format
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ orrery.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/orrery.c b/orrery.c
+index e3a1f6d..1b31a9f 100644
+--- a/orrery.c
++++ b/orrery.c
+@@ -3767,7 +3767,7 @@ static void drawOptsScreens(void)
+ displayWidth/2 - gdk_string_width(smallFont, scratchString)/2,
+ 12, scratchString);
+ for (day = 0; day < 7; day++) {
+- sprintf(scratchString, dayName[day]);
++ sprintf(scratchString, "%s", dayName[day]);
+ gdk_draw_string(pixmap, smallFont, blueGC,
+ CAL_DAY_WIDTH/2 + day*CAL_DAY_WIDTH + CAL_LEFT_OFFSET -
+ gdk_string_width(smallFont, scratchString)/2,
+--
+2.13.2
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-navigation/orrery/orrery_2.7.bb b/import-layers/meta-openembedded/meta-oe/recipes-navigation/orrery/orrery_2.7.bb
index 40a6df3c9..1a00b0808 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-navigation/orrery/orrery_2.7.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-navigation/orrery/orrery_2.7.bb
@@ -10,7 +10,8 @@ inherit autotools-brokensep pkgconfig
SRC_URI = "http://projects.openmoko.org/frs/download.php/923/orrery_2.7_clean.tar.gz \
file://orrery.png \
file://use.GdkPixbuf.patch \
-"
+ file://0001-orrery-Fix-sprintf-format.patch \
+ "
SRC_URI[md5sum] = "bd62a33e7554ee1030313dfcdefcda8b"
SRC_URI[sha256sum] = "645166a5e05b2064ab630534a514697fc47b681951e7fe1d635c259cbdf7a5e6"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-sato/claws-mail/claws-mail_3.9.0.bb b/import-layers/meta-openembedded/meta-oe/recipes-sato/claws-mail/claws-mail_3.9.0.bb
index 938af2ef7..534ba3b14 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-sato/claws-mail/claws-mail_3.9.0.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-sato/claws-mail/claws-mail_3.9.0.bb
@@ -4,7 +4,7 @@ DEPENDS = "gtk+ libetpan openssl aspell curl libgcrypt"
LICENSE = "GPLv3"
LIC_FILES_CHKSUM = "file://COPYING;md5=e059bde2972c1790af786f3e86bac22e"
-PNBLACKLIST[claws-mail] ?= "depends on blacklisted libetpan"
+PNBLACKLIST[claws-mail] ?= "depends on blacklisted libetpan - the recipe will be removed on 2017-09-01 unless the issue is fixed"
inherit autotools pkgconfig gettext
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-sato/claws-mail/claws-plugin-gtkhtml2-viewer_0.31.bb b/import-layers/meta-openembedded/meta-oe/recipes-sato/claws-mail/claws-plugin-gtkhtml2-viewer_0.31.bb
index c25257344..29b41be93 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-sato/claws-mail/claws-plugin-gtkhtml2-viewer_0.31.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-sato/claws-mail/claws-plugin-gtkhtml2-viewer_0.31.bb
@@ -4,7 +4,7 @@ DEPENDS = "claws-mail gtkhtml2 curl"
LICENSE = "GPLv3"
LIC_FILES_CHKSUM = "file://COPYING;md5=977f04a8048c04684e521c06e2844a94"
-PNBLACKLIST[claws-plugin-gtkhtml2-viewer] ?= "depends on blacklisted claws-mail"
+PNBLACKLIST[claws-plugin-gtkhtml2-viewer] ?= "depends on blacklisted claws-mail - the recipe will be removed on 2017-09-01 unless the issue is fixed"
PR = "r1"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-sato/claws-mail/claws-plugin-mailmbox_1.15.bb b/import-layers/meta-openembedded/meta-oe/recipes-sato/claws-mail/claws-plugin-mailmbox_1.15.bb
index b1321775a..986b5d40d 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-sato/claws-mail/claws-plugin-mailmbox_1.15.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-sato/claws-mail/claws-plugin-mailmbox_1.15.bb
@@ -4,7 +4,7 @@ DEPENDS = "claws-mail"
LICENSE = "GPLv3"
LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
-PNBLACKLIST[claws-plugin-mailmbox] ?= "depends on blacklisted claws-mail"
+PNBLACKLIST[claws-plugin-mailmbox] ?= "depends on blacklisted claws-mail - the recipe will be removed on 2017-09-01 unless the issue is fixed"
SRC_URI = "http://www.claws-mail.org/downloads/plugins_obsolete/mailmbox-${PV}.tar.gz"
SRC_URI[md5sum] = "7f72c68e6e1a8768f1247f455fd20b62"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-sato/claws-mail/claws-plugin-rssyl_0.34.bb b/import-layers/meta-openembedded/meta-oe/recipes-sato/claws-mail/claws-plugin-rssyl_0.34.bb
index 7da460c4d..eec9a2d70 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-sato/claws-mail/claws-plugin-rssyl_0.34.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-sato/claws-mail/claws-plugin-rssyl_0.34.bb
@@ -4,7 +4,7 @@ DEPENDS = "claws-mail libxml2 curl glib-2.0 gtk+"
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=0c2348e0a084e573f0220f5e45d8097e"
-PNBLACKLIST[claws-plugin-rssyl] ?= "depends on blacklisted claws-mail"
+PNBLACKLIST[claws-plugin-rssyl] ?= "depends on blacklisted claws-mail - the recipe will be removed on 2017-09-01 unless the issue is fixed"
SRC_URI = "http://www.claws-mail.org/downloads/plugins_obsolete/rssyl-${PV}.tar.gz \
file://configure.patch"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-sato/claws-mail/sylpheed_2.7.1.bb b/import-layers/meta-openembedded/meta-oe/recipes-sato/claws-mail/sylpheed_2.7.1.bb
index 304b654fb..978d777ea 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-sato/claws-mail/sylpheed_2.7.1.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-sato/claws-mail/sylpheed_2.7.1.bb
@@ -29,3 +29,5 @@ do_configure_prepend() {
inherit autotools pkgconfig
+
+PNBLACKLIST[sylpheed] ?= "Fails to build with RSS http://errors.yoctoproject.org/Errors/Details/130651/ - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/apcupsd/apcupsd_3.14.10.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/apcupsd/apcupsd_3.14.10.bb
index 3ef179295..c8c54a413 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/apcupsd/apcupsd_3.14.10.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/apcupsd/apcupsd_3.14.10.bb
@@ -7,7 +7,7 @@ SRC_URI = "http://garr.dl.sourceforge.net/project/apcupsd/apcupsd%20-%20Stable/3
SRC_URI[md5sum] = "5928822d855c5cf7ac29655e3e0b8c23"
SRC_URI[sha256sum] = "0707b5ec9916fbde9e44eb8d18037c8d8f75dfd6aeef51aba5487e189eef2032"
-PNBLACKLIST[apcupsd] ?= "BROKEN: doesn't build with B!=S"
+PNBLACKLIST[apcupsd] ?= "BROKEN: doesn't build with B!=S - the recipe will be removed on 2017-09-01 unless the issue is fixed"
inherit autotools
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/atop/atop/0001-include-missing-header-files.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/atop/atop/0001-include-missing-header-files.patch
new file mode 100644
index 000000000..3708f60ba
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/atop/atop/0001-include-missing-header-files.patch
@@ -0,0 +1,97 @@
+From 7b651793269b6b86f12c43c30b751b86def27222 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 18 Mar 2017 17:56:40 -0700
+Subject: [PATCH] include missing header files
+
+fixes build with musl
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ deviate.c | 1 +
+ procdbase.c | 2 +-
+ showgeneric.c | 2 +-
+ showlinux.c | 2 +-
+ showprocs.c | 2 +-
+ showsys.c | 2 +-
+ 6 files changed, 6 insertions(+), 5 deletions(-)
+
+diff --git a/deviate.c b/deviate.c
+index 7cf1b49..8e615af 100644
+--- a/deviate.c
++++ b/deviate.c
+@@ -178,6 +178,7 @@ static const char rcsid[] = "$Id: deviate.c,v 1.45 2010/10/23 14:02:03 gerlof Ex
+ #include <stdio.h>
+ #include <errno.h>
+ #include <fcntl.h>
++#include <stdlib.h>
+ #include <unistd.h>
+ #include <limits.h>
+ #include <memory.h>
+diff --git a/procdbase.c b/procdbase.c
+index 9cab347..0487d26 100644
+--- a/procdbase.c
++++ b/procdbase.c
+@@ -67,7 +67,7 @@ static const char rcsid[] = "$Id: procdbase.c,v 1.8 2010/04/23 12:19:35 gerlof E
+ #include <fcntl.h>
+ #include <unistd.h>
+ #include <string.h>
+-#include <malloc.h>
++#include <stdlib.h>
+
+ #include "atop.h"
+ #include "photoproc.h"
+diff --git a/showgeneric.c b/showgeneric.c
+index 775afa8..3d5be0e 100644
+--- a/showgeneric.c
++++ b/showgeneric.c
+@@ -268,7 +268,7 @@ static const char rcsid[] = "$Id: showgeneric.c,v 1.71 2010/10/25 19:08:32 gerlo
+ #include <errno.h>
+ #include <fcntl.h>
+ #include <string.h>
+-#include <termio.h>
++#include <termios.h>
+ #include <unistd.h>
+ #include <stdarg.h>
+ #include <curses.h>
+diff --git a/showlinux.c b/showlinux.c
+index 6e60754..aba2ee6 100644
+--- a/showlinux.c
++++ b/showlinux.c
+@@ -274,7 +274,7 @@ static const char rcsid[] = "$Id: showlinux.c,v 1.70 2010/10/23 14:04:12 gerlof
+ #include <string.h>
+ #include <errno.h>
+ #include <fcntl.h>
+-#include <termio.h>
++#include <termios.h>
+ #include <unistd.h>
+ #include <stdarg.h>
+ #include <curses.h>
+diff --git a/showprocs.c b/showprocs.c
+index 5194524..f0169ad 100644
+--- a/showprocs.c
++++ b/showprocs.c
+@@ -94,7 +94,7 @@ static const char rcsid[] = "$Id: showprocs.c,v 1.15 2011/09/05 11:44:16 gerlof
+ #include <string.h>
+ #include <errno.h>
+ #include <fcntl.h>
+-#include <termio.h>
++#include <termios.h>
+ #include <unistd.h>
+ #include <stdarg.h>
+ #include <curses.h>
+diff --git a/showsys.c b/showsys.c
+index 26331be..5a05fe5 100644
+--- a/showsys.c
++++ b/showsys.c
+@@ -80,7 +80,7 @@ static const char rcsid[] = "XXXXXX";
+ #include <string.h>
+ #include <errno.h>
+ #include <fcntl.h>
+-#include <termio.h>
++#include <termios.h>
+ #include <unistd.h>
+ #include <stdarg.h>
+ #include <curses.h>
+--
+2.12.0
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/atop/atop_2.2.3.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/atop/atop_2.2.3.bb
index 21311e354..1ab9e7cf9 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/atop/atop_2.2.3.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/atop/atop_2.2.3.bb
@@ -15,11 +15,12 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=393a5ca445f6965873eca0259a17f833"
DEPENDS = "ncurses zlib"
-ATOP_VER = "${@'-'.join(d.getVar('PV', True).rsplit('.', 1))}"
+ATOP_VER = "${@'-'.join(d.getVar('PV').rsplit('.', 1))}"
SRC_URI = " \
http://www.atoptool.nl/download/${BPN}-${ATOP_VER}.tar.gz \
${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'file://volatiles.atop.conf', 'file://volatiles.99_atop', d)} \
+ file://0001-include-missing-header-files.patch \
file://remove-bashisms.patch \
file://fix-permissions.patch \
file://sysvinit-implement-status.patch \
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/avro/avro-c/0001-avro-c-Fix-build-with-clang-compiler.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/avro/avro-c/0001-avro-c-Fix-build-with-clang-compiler.patch
new file mode 100644
index 000000000..01235d8ef
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/avro/avro-c/0001-avro-c-Fix-build-with-clang-compiler.patch
@@ -0,0 +1,37 @@
+From 518bb8ccfb3f3fc143fbd571782f3e40573d01b5 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Mon, 10 Apr 2017 09:15:04 -0700
+Subject: [PATCH] avro-c: Fix build with clang compiler
+
+Clang advertizes itself to be compatible with gcc 4.2.1
+while that was true several years ago, it now supports
+a lot more newer features, the test to just check gcc
+version should be supplanted with clang check as well
+so atomic support in clang can be asserted as well
+
+Fixes
+
+lang/c/src/avro/refcount.h:301:2: error: "No atomic implementation!"
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ lang/c/src/avro/refcount.h | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/lang/c/src/avro/refcount.h b/lang/c/src/avro/refcount.h
+index 69afa4fc..d76ba057 100644
+--- a/lang/c/src/avro/refcount.h
++++ b/lang/c/src/avro/refcount.h
+@@ -118,7 +118,8 @@ avro_refcount_dec(volatile int *refcount)
+ * GCC intrinsics
+ */
+
+-#elif (__GNUC__ * 10000 + __GNUC_MINOR__ * 100 + __GNUC_PATCHLEVEL__) > 40500
++#elif (__GNUC__ * 10000 + __GNUC_MINOR__ * 100 + __GNUC_PATCHLEVEL__) > 40500 \
++|| defined(__clang__)
+
+ static inline void
+ avro_refcount_set(volatile int *refcount, int value)
+--
+2.12.2
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/avro/avro-c_1.8.1.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/avro/avro-c_1.8.1.bb
new file mode 100644
index 000000000..276fe2b5a
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/avro/avro-c_1.8.1.bb
@@ -0,0 +1,20 @@
+SUMMARY = "Apache Avro data serialization system."
+HOMEPAGE = "http://apr.apache.org/"
+SECTION = "libs"
+
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=73bdf70f268f0b3b9c5a83dd7a6f3324"
+
+DEPENDS = "jansson zlib xz"
+PV .= "+git${SRCPV}"
+
+SRCREV = "4b3677c32b879e0e7f717eb95f9135ac654da760"
+SRC_URI = "git://github.com/apache/avro \
+ file://0001-avro-c-Fix-build-with-clang-compiler.patch;patchdir=../../ \
+"
+
+S = "${WORKDIR}/git/lang/c"
+
+LDFLAGS_append_libc-uclibc = " -lm"
+
+inherit cmake
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/canonical-multitouch/frame_2.5.0.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/canonical-multitouch/frame_2.5.0.bb
index 0ad10a4ca..da1a2a36f 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/canonical-multitouch/frame_2.5.0.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/canonical-multitouch/frame_2.5.0.bb
@@ -15,8 +15,10 @@ SRC_URI = "https://launchpad.net/${BPN}/trunk/v${PV}/+download/${BPN}-${PV}.tar.
SRC_URI[md5sum] = "02baa941091c5d198cd1623b3ad36e68"
SRC_URI[sha256sum] = "cfb9ab52cdccd926f1822a457264d0014c7eb9f4600a72626063dd073b26256f"
-PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', '', d)}"
+PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}"
PACKAGECONFIG[x11] = "--enable-x11, --disable-x11, libxi xext virtual/xserver"
PACKAGE_BEFORE_PN += "${PN}-test"
FILES_${PN}-test = "${bindir}/frame-test*"
+
+SECURITY_CFLAGS = "${SECURITY_NO_PIE_CFLAGS}"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/canonical-multitouch/geis/0001-libgeis-Compare-the-first-character-of-string-to-nul.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/canonical-multitouch/geis/0001-libgeis-Compare-the-first-character-of-string-to-nul.patch
new file mode 100644
index 000000000..3b3acab24
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/canonical-multitouch/geis/0001-libgeis-Compare-the-first-character-of-string-to-nul.patch
@@ -0,0 +1,43 @@
+From 1e48821ba109b00e9c2931f12aa206c4ef54fd71 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Mon, 24 Apr 2017 12:34:55 -0700
+Subject: [PATCH] libgeis: Compare the first character of string to null
+
+gcc7 wants to be specific when it comes to comparing characters
+and strings
+
+fixes
+
+| ../../../../../../../workspace/sources/geis/libgeis/geis_v1.c: In function '_v1_subscribe_device':
+| ../../../../../../../workspace/sources/geis/libgeis/geis_v1.c:613:20: error: comparison between pointer and zero character constant [-Werror=pointer-compare]
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ libgeis/geis_v1.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/libgeis/geis_v1.c b/libgeis/geis_v1.c
+index 67045ee..07c0851 100644
+--- a/libgeis/geis_v1.c
++++ b/libgeis/geis_v1.c
+@@ -610,7 +610,7 @@ _v1_subscribe_device(GeisInstance instance,
+ const char **gesture_list)
+ {
+ GeisStatus result = GEIS_UNKNOWN_ERROR;
+- if (gesture_list == GEIS_ALL_GESTURES)
++ if (gesture_list[0][0] == GEIS_ALL_GESTURES)
+ {
+ geis_debug("subscribing device %d for all gestures", device_id);
+ }
+@@ -757,7 +757,7 @@ geis_unsubscribe(GeisInstance instance,
+ GeisGestureType *gesture_list)
+ {
+ GeisStatus status = GEIS_STATUS_NOT_SUPPORTED;
+- if (gesture_list == GEIS_ALL_GESTURES)
++ if (gesture_list[0] == GEIS_ALL_GESTURES)
+ {
+ status = geis_subscription_deactivate(instance->subscription);
+ }
+--
+2.12.2
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/canonical-multitouch/geis_2.2.17.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/canonical-multitouch/geis_2.2.17.bb
index 281dc3d42..976aafb4f 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/canonical-multitouch/geis_2.2.17.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/canonical-multitouch/geis_2.2.17.bb
@@ -19,9 +19,10 @@ REQUIRED_DISTRO_FEATURES = "x11"
DEPENDS += "grail dbus-glib python3 virtual/libx11 libxext libxi libxcb dbus frame"
-SRC_URI = "https://launchpad.net/${BPN}/trunk/${PV}/+download/${BPN}-${PV}.tar.xz\
+SRC_URI = "https://launchpad.net/${BPN}/trunk/${PV}/+download/${BPN}-${PV}.tar.xz \
file://fix-indentation-for-gcc6.patch \
-"
+ file://0001-libgeis-Compare-the-first-character-of-string-to-nul.patch \
+ "
SRC_URI[md5sum] = "2ff9d76a3ea5794516bb02c9d1924faf"
SRC_URI[sha256sum] = "8a60f5683852094038904e690d23cc5a90a980fc52da67f0f28890baa25c70eb"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/canonical-multitouch/grail_3.1.1.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/canonical-multitouch/grail_3.1.1.bb
index 3026744a0..22fd0f48e 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/canonical-multitouch/grail_3.1.1.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/canonical-multitouch/grail_3.1.1.bb
@@ -11,13 +11,14 @@ LIC_FILES_CHKSUM = " \
inherit autotools pkgconfig
DEPENDS = "frame"
-
+CXXFLAGS_append_toolchain-clang = " -Wno-pessimizing-move"
SRC_URI = "https://launchpad.net/${BPN}/trunk/${PV}/+download/${BPN}-${PV}.tar.bz2"
SRC_URI[md5sum] = "0df1b3ec6167920f310e2effe6e2ad44"
SRC_URI[sha256sum] = "5eed1f650f042481daa3a2de5e7d43261fe343b2a1b1e240f3b7fc26572c9df3"
-PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', '', d)}"
+PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}"
PACKAGECONFIG[x11] = "--with-x11, --without-x11, libxi"
PACKAGE_BEFORE_PN += "${PN}-test"
FILES_${PN}-test = "${bindir}/grail-test*"
+SECURITY_CFLAGS = "${SECURITY_NO_PIE_CFLAGS}"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/ckermit/ckermit_302.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/ckermit/ckermit_302.bb
index 187a57e6f..61c08ee27 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/ckermit/ckermit_302.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/ckermit/ckermit_302.bb
@@ -24,6 +24,7 @@ EXTRA_OEMAKE = "-e MAKEFLAGS="
# trying to look inside the stdio headers.
CKERMIT_ADDITIONAL = ""
CKERMIT_ADDITIONAL_libc-uclibc = "-DNOARROWKEYS"
+CKERMIT_ADDITIONAL_libc-musl = "-DNOARROWKEYS"
TARGET_CC_ARCH += "${LDFLAGS}"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/cryptsetup/cryptsetup_1.7.2.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/cryptsetup/cryptsetup_1.7.4.bb
index d160a0932..c13b764f7 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/cryptsetup/cryptsetup_1.7.2.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/cryptsetup/cryptsetup_1.7.4.bb
@@ -9,11 +9,11 @@ SECTION = "console"
LICENSE = "GPL-2.0-with-OpenSSL-exception"
LIC_FILES_CHKSUM = "file://COPYING;md5=32107dd283b1dfeb66c9b3e6be312326"
-DEPENDS = "util-linux lvm2 popt libgcrypt"
+DEPENDS = "util-linux libdevmapper popt libgcrypt"
SRC_URI = "${KERNELORG_MIRROR}/linux/utils/${BPN}/v1.7/${BP}.tar.xz"
-SRC_URI[md5sum] = "a11a140cea496961222170944db01fc1"
-SRC_URI[sha256sum] = "dbb35dbf5f0c1749168c86c913fe98e872247bfc8425314b494c2423e7e43342"
+SRC_URI[md5sum] = "058ed35c5b776032c2a036838f9e22a7"
+SRC_URI[sha256sum] = "7ccf893ef79a38fb92d61f03c17b964982119f5319cdaa85a1335b8558cca016"
inherit autotools gettext pkgconfig
@@ -28,6 +28,9 @@ RRECOMMENDS_${PN} = "kernel-module-aes-generic \
kernel-module-md5 \
kernel-module-cbc \
kernel-module-sha256-generic \
+ kernel-module-xts \
"
EXTRA_OECONF = "--enable-static"
+
+BBCLASSEXTEND = "native nativesdk"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/digitemp/digitemp/makefile-fix.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/digitemp/digitemp/makefile-fix.patch
deleted file mode 100644
index c0d552d54..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/digitemp/digitemp/makefile-fix.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-digitemp: allow override of CC and CFLAGS vars
-
-Upstream-Status: Inappropriate [embedded specific]
-
-Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
-
---- a/Makefile 2008-08-28 21:37:00.000000000 +0000
-+++ b/Makefile 2011-11-24 22:22:39.882511272 +0000
-@@ -11,8 +11,9 @@
-
- VERSION = 3.6.0
-
--CC = gcc
--CFLAGS = -I./src -I./userial -O2 -Wall # -g
-+CC ?= gcc
-+CFLAGS ?= -O2 -Wall # -g
-+CFLAGS += -I./src -I./userial
-
- OBJS = src/digitemp.o src/device_name.o src/ds2438.o
- HDRS = src/digitemp.h src/device_name.h
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/digitemp/digitemp_3.6.0.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/digitemp/digitemp_3.6.0.bb
deleted file mode 100644
index 2582820e6..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/digitemp/digitemp_3.6.0.bb
+++ /dev/null
@@ -1,27 +0,0 @@
-SUMMARY = "read temperature sensors in a 1-Wire net"
-SECTION = "util"
-DEPENDS = "libusb1"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=44fee82a1d2ed0676cf35478283e0aa0"
-
-PR = "r2"
-
-SRC_URI = "http://www.digitemp.com/software/linux/digitemp-${PV}.tar.gz \
- file://makefile-fix.patch"
-SRC_URI[md5sum] = "9be2e48db37920f21925ae6e88f83b84"
-SRC_URI[sha256sum] = "14cfc584cd3714fe8c9a2cdc8388be49e08b5e395d95e6bcd11d4410e2505ca2"
-
-EXTRA_OEMAKE = "ds9097 ds9097u \
- SYSTYPE='Linux' \
-"
-# Fix GNU_HASH QA errors
-TARGET_CC_ARCH += "${CFLAGS} ${LDFLAGS}"
-
-do_configure() {
- rm -f digitemp_*
-}
-
-do_install() {
- install -d ${D}${sbindir}
- install digitemp_* ${D}${sbindir}
-}
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/digitemp/digitemp_git.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/digitemp/digitemp_git.bb
new file mode 100644
index 000000000..460aa1438
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/digitemp/digitemp_git.bb
@@ -0,0 +1,25 @@
+SUMMARY = "read temperature sensors in a 1-Wire net"
+SECTION = "util"
+DEPENDS = "libusb1"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=44fee82a1d2ed0676cf35478283e0aa0"
+
+PV = "3.7.1+git${SRCPV}"
+
+SRC_URI = "git://github.com/bcl/digitemp"
+
+SRCREV = "389f67655efa1674f595106c3a47b5ad082609a7"
+
+S = "${WORKDIR}/git"
+
+EXTRA_OEMAKE = "ds9097 ds9097u \
+ SYSTYPE='Linux' \
+"
+do_configure() {
+ rm -f digitemp_*
+}
+
+do_install() {
+ install -d ${D}${sbindir}
+ install -m 0755 digitemp_* ${D}${sbindir}
+}
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/dstat/dstat_0.7.3.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/dstat/dstat_0.7.3.bb
index 1673b910a..18af738fa 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/dstat/dstat_0.7.3.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/dstat/dstat_0.7.3.bb
@@ -7,7 +7,7 @@ HOMEPAGE = "http://dag.wiee.rs/home-made/dstat"
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
-DEPENDS += "asciidoc-native"
+DEPENDS += "asciidoc-native xmlto-native"
SRC_URI = "git://github.com/dagwieers/dstat.git"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/eject/eject_2.1.5.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/eject/eject_2.1.5.bb
index 0440f0c37..49a3d74f6 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/eject/eject_2.1.5.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/eject/eject_2.1.5.bb
@@ -33,3 +33,5 @@ ALTERNATIVE_LINK_NAME[eject] = "${bindir}/eject"
ALTERNATIVE_PRIORITY[volname] = "100"
ALTERNATIVE_PRIORITY[eject] = "100"
+ALTERNATIVE_${PN}-doc = "eject.1"
+ALTERNATIVE_LINK_NAME[eject.1] = "${mandir}/man1/eject.1"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/emacs/emacs.inc b/import-layers/meta-openembedded/meta-oe/recipes-support/emacs/emacs.inc
index 012895e85..5b905f93f 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/emacs/emacs.inc
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/emacs/emacs.inc
@@ -18,7 +18,7 @@ X11DEPENDS = " \
EXTRA_OECONF = "--without-sound --with-crt-dir=${STAGING_LIBDIR} "
-PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', '', d)}"
+PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}"
PACKAGECONFIG[x11] = "--with-x-toolkit=gtk,--without-x --without-dbus,${X11DEPENDS}"
@@ -86,7 +86,7 @@ do_compile_prepend() {
${STAGING_DIR_TARGET}/${base_libdir}/libgcc_s.so.* \
${STAGING_DIR_TARGET}/${base_libdir}/libpthread* $treedir/${base_libdir}/
- if [ ! -z "${@bb.utils.contains('PACKAGECONFIG', 'x11', 'x11', '', d)}" ] ; then
+ if [ ! -z "${@bb.utils.filter('PACKAGECONFIG', 'x11', d)}" ]; then
echo "X11 build enabled"
# copy only as much stuff as we need
# before: 5.5G ../../qemu-treedir/
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/emacs/emacs_23.4.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/emacs/emacs_23.4.bb
index a32482883..3388ff01e 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/emacs/emacs_23.4.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/emacs/emacs_23.4.bb
@@ -2,7 +2,7 @@ require emacs.inc
PR = "r4"
-PNBLACKLIST[emacs] ?= "qemu: uncaught target signal 11 (Segmentation fault) - core dumped"
+PNBLACKLIST[emacs] ?= "qemu: uncaught target signal 11 (Segmentation fault) - core dumped - the recipe will be removed on 2017-09-01 unless the issue is fixed"
SRC_URI = "${GNU_MIRROR}/emacs/emacs-${PV}.tar.gz;name=tarball \
file://use-qemu.patch \
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/farsight/farsight2_0.0.22.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/farsight/farsight2_0.0.22.bb
index 2989850e9..14ce57aaf 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/farsight/farsight2_0.0.22.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/farsight/farsight2_0.0.22.bb
@@ -9,7 +9,7 @@ PR = "r3"
DEPENDS = "libnice glib-2.0 libxml2 zlib dbus gstreamer gst-plugins-base"
-inherit autotools
+inherit autotools pkgconfig
PACKAGECONFIG ??= ""
PACKAGECONFIG[gupnp] = "--enable-gupnp,--disable-gupnp,gupnp-igd"
@@ -28,3 +28,7 @@ FILES_${PN}-dbg += "${libdir}/*/.debug"
SRC_URI[md5sum] = "e1f540cf3ebab06c3d7db1f46b44ac88"
SRC_URI[sha256sum] = "3ae59aa61a8071c9fad111e5fd606aabc27961eb4192f8729987a27dae6b3974"
+
+PNBLACKLIST[farsight2] ?= "Depends on blacklisted gstreamer - the recipe will be removed on 2017-09-01 unless the issue is fixed"
+PNBLACKLIST[farsight2] ?= "Depends on blacklisted libnice - the recipe will be removed on 2017-09-01 unless the issue is fixed"
+PNBLACKLIST[farsight2] ?= "Depends on blacklisted gst-plugins-base - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/farsight/libnice_0.0.13.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/farsight/libnice_0.1.13.bb
index 3c2a054ef..48c8221a3 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/farsight/libnice_0.0.13.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/farsight/libnice_0.1.13.bb
@@ -2,6 +2,8 @@ SUMMARY = "Interactive Connectivity Establishment library"
DESCRIPTION = "Libnice is an implementation of the IETF's draft Interactive Connectivity Establishment standard (ICE)."
HOMEPAGE = "http://nice.freedesktop.org/wiki/"
SRC_URI = "http://nice.freedesktop.org/releases/libnice-${PV}.tar.gz"
+SRC_URI[md5sum] = "3226faeaf48a9150ada00da2e2865959"
+SRC_URI[sha256sum] = "61112d9f3be933a827c8365f20551563953af6718057928f51f487bfe88419e1"
LICENSE = "LGPLv2.1 & MPLv1.1"
LIC_FILES_CHKSUM = "file://COPYING;md5=9c42325015702feda4f4d2f19a55b767 \
@@ -9,21 +11,17 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=9c42325015702feda4f4d2f19a55b767 \
file://COPYING.MPL;md5=3c617710e51cdbe0fc00716f056dfb1a \
"
-PR = "r4"
-
-DEPENDS = "glib-2.0 gstreamer"
+DEPENDS = "glib-2.0 gstreamer1.0 gstreamer1.0-plugins-base"
PACKAGECONFIG ??= ""
PACKAGECONFIG[gupnp] = "--enable-gupnp,--disable-gupnp,gupnp-igd"
-inherit autotools pkgconfig gtk-doc
-
-EXTRA_OECONF = "--disable-gtk-doc"
+inherit autotools pkgconfig gtk-doc gobject-introspection
-FILES_${PN} += "${libdir}/gstreamer-0.10/*.so"
-FILES_${PN}-dev += "${libdir}/gstreamer-0.10/*.la"
-FILES_${PN}-staticdev += "${libdir}/gstreamer-0.10/*.a"
-FILES_${PN}-dbg += "${libdir}/gstreamer-0.10/.debug"
+FILES_${PN} += "${libdir}/gstreamer-1.0/*.so"
+FILES_${PN}-dev += "${libdir}/gstreamer-1.0/*.la"
+FILES_${PN}-staticdev += "${libdir}/gstreamer-1.0/*.a"
+FILES_${PN}-dbg += "${libdir}/gstreamer-1.0/.debug"
do_configure_prepend() {
mkdir ${S}/m4 || true
@@ -36,7 +34,3 @@ do_compile_append() {
$i
done
}
-
-
-SRC_URI[md5sum] = "e5b9f799a57cb939ea2658ec35253ab9"
-SRC_URI[sha256sum] = "d8dd260c486a470a6052a5323920878a084e44a19df09b15728b85c9e3d6edf0"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/fftw/benchfft_3.1.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/fftw/benchfft_3.1.bb
index 3e06a5a4b..49cc270fe 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/fftw/benchfft_3.1.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/fftw/benchfft_3.1.bb
@@ -18,4 +18,4 @@ do_compile_prepend() {
SRC_URI[md5sum] = "9356e5e9dcb3f1481977009720a2ccf8"
SRC_URI[sha256sum] = "1b4a5b5e48ad5e61a21586b7b59d5c0a88691a981e73e2c6dc5868197461791b"
-PNBLACKLIST[benchfft] ?= "does not build with distroless qemuarm as reported in 'State of bitbake world' thread, nobody volunteered to fix them"
+PNBLACKLIST[benchfft] ?= "does not build with distroless qemuarm as reported in 'State of bitbake world' thread, nobody volunteered to fix them - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/fftw/fftw/0001-NEON-autodetection-segfaults-assume-neon-present.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/fftw/fftw/0001-NEON-autodetection-segfaults-assume-neon-present.patch
new file mode 100644
index 000000000..6340f42f4
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/fftw/fftw/0001-NEON-autodetection-segfaults-assume-neon-present.patch
@@ -0,0 +1,80 @@
+From 97af5a2efbe30726ce4d7c921efed6afc32a314f Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
+Date: Sun, 25 Dec 2016 13:41:19 +0100
+Subject: [PATCH] NEON autodetection segfaults: assume neon present
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+If TUNE_FEATURES contain 'neon' we can assume our machine supports it
+
+Upstream-Status: Inappropriate [embedded specific]
+
+Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
+---
+ simd-support/neon.c | 46 +---------------------------------------------
+ 1 file changed, 1 insertion(+), 45 deletions(-)
+
+diff --git a/simd-support/neon.c b/simd-support/neon.c
+index 86b2cb6..8d6537e 100644
+--- a/simd-support/neon.c
++++ b/simd-support/neon.c
+@@ -23,54 +23,10 @@
+
+ #if HAVE_NEON
+
+-/* check for an environment where signals are known to work */
+-#if defined(unix) || defined(linux)
+- # include <signal.h>
+- # include <setjmp.h>
+-
+- static jmp_buf jb;
+-
+- static void sighandler(int x)
+- {
+- UNUSED(x);
+- longjmp(jb, 1);
+- }
+-
+- static int really_have_neon(void)
+- {
+- void (*oldsig)(int);
+- oldsig = signal(SIGILL, sighandler);
+- if (setjmp(jb)) {
+- signal(SIGILL, oldsig);
+- return 0;
+- } else {
+- /* paranoia: encode the instruction in binary because the
+- assembler may not recognize it without -mfpu=neon */
+- /*asm volatile ("vand q0, q0, q0");*/
+- asm volatile (".long 0xf2000150");
+- signal(SIGILL, oldsig);
+- return 1;
+- }
+- }
+-
+- int X(have_simd_neon)(void)
+- {
+- static int init = 0, res;
+-
+- if (!init) {
+- res = really_have_neon();
+- init = 1;
+- }
+- return res;
+- }
+-
+-
+-#else
+-/* don't know how to autodetect NEON; assume it is present */
++/* autodetect NEON broken; assume it is present */
+ int X(have_simd_neon)(void)
+ {
+ return 1;
+ }
+-#endif
+
+ #endif
+--
+2.5.5
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/fftw/fftw_3.3.4.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/fftw/fftw_3.3.6.bb
index e75374303..ed14e1658 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/fftw/fftw_3.3.4.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/fftw/fftw_3.3.6.bb
@@ -3,9 +3,14 @@ SECTION = "libs"
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
-SRC_URI = "http://www.fftw.org/fftw-${PV}.tar.gz"
-SRC_URI[md5sum] = "2edab8c06b24feeb3b82bbb3ebf3e7b3"
-SRC_URI[sha256sum] = "8f0cde90929bc05587c3368d2f15cd0530a60b8a9912a8e2979a72dbe5af0982"
+SRC_URI = " \
+ http://www.fftw.org/fftw-${PV}-pl1.tar.gz \
+ file://0001-NEON-autodetection-segfaults-assume-neon-present.patch \
+"
+SRC_URI[md5sum] = "682a0e78d6966ca37c7446d4ab4cc2a1"
+SRC_URI[sha256sum] = "1ef4aa8427d9785839bc767f3eb6a84fcb5e9a37c31ed77a04e7e047519a183d"
+
+S = "${WORKDIR}/fftw-${PV}-pl1"
inherit autotools pkgconfig
@@ -14,6 +19,8 @@ PROVIDES = "fftwl fftwf"
EXTRA_OECONF = "--disable-fortran --enable-shared --enable-threads"
+CFLAGS += "-D_GNU_SOURCE"
+
FFTW_NEON = "${@bb.utils.contains('TUNE_FEATURES', 'neon', '--enable-neon', '', d)}"
FFTW_NEON_class-native = ""
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/flite/flite-alsa_1.3.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/flite/flite-alsa_1.3.bb
index 51012e673..0883c1ad4 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/flite/flite-alsa_1.3.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/flite/flite-alsa_1.3.bb
@@ -10,3 +10,12 @@ SRC_URI = "http://www.speech.cs.cmu.edu/flite/packed/flite-${PV}/flite-${PV}-rel
SRC_URI[md5sum] = "ae0aca1cb7b4801f4372f3a75a9e52b5"
SRC_URI[sha256sum] = "922225f7001e57a0fbace8833b0a48790a68f6c7b491f2d47c78ad537ab78a8b"
+
+# Looks like caused by flite-1.3-alsa_support-1.2.diff
+# flite-alsa-1.3: No GNU_HASH in the elf binary: '/tmp/work/armv5te-oe-linux-gnueabi/flite-alsa/1.3-r1/packages-split/libflite-alsa-vox16/usr/lib/libflite_cmu_us_kal16.so.1.3' [ldflags]
+# flite-alsa-1.3: No GNU_HASH in the elf binary: '/tmp/work/armv5te-oe-linux-gnueabi/flite-alsa/1.3-r1/packages-split/libflite-alsa-vox8/usr/lib/libflite_cmu_us_kal.so.1.3' [ldflags]
+# flite-alsa-1.3: No GNU_HASH in the elf binary: '/tmp/work/core2-64-oe-linux/flite-alsa/1.3-r1/packages-split/libflite-alsa-vox16/usr/lib/libflite_cmu_us_kal16.so.1.3' [ldflags]
+# flite-alsa-1.3: No GNU_HASH in the elf binary: '/tmp/work/core2-64-oe-linux/flite-alsa/1.3-r1/packages-split/libflite-alsa-vox8/usr/lib/libflite_cmu_us_kal.so.1.3' [ldflags]
+# flite-alsa-1.3: No GNU_HASH in the elf binary: '/tmp/work/i586-oe-linux/flite-alsa/1.3-r1/packages-split/libflite-alsa-vox16/usr/lib/libflite_cmu_us_kal16.so.1.3' [ldflags]
+# flite-alsa-1.3: No GNU_HASH in the elf binary: '/tmp/work/i586-oe-linux/flite-alsa/1.3-r1/packages-split/libflite-alsa-vox8/usr/lib/libflite_cmu_us_kal.so.1.3' [ldflags]
+PNBLACKLIST[flite-alsa] ?= "OLD: wasn't updated in over 6 years, only navit was RSUGGESTing it and doesn't respect LDFLAGS - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk-native.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk-native.bb
new file mode 100644
index 000000000..353987e0f
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk-native.bb
@@ -0,0 +1,16 @@
+require ${BPN}.inc
+
+DEPENDS = "zlib-native jpeg-native libpng-native libxext-native libxft-native"
+
+inherit native
+
+EXTRA_OECMAKE += " \
+ -DOPTION_BUILD_SHARED_LIBS=OFF \
+ -DOPTION_USE_THREADS=OFF \
+ -DOPTION_USE_XDBE=OFF \
+ -DOPTION_USE_XFT=OFF \
+ -DOPTION_BUILD_EXAMPLES=OFF \
+ -DOPTION_USE_XINERAMA=OFF \
+ -DOPTION_USE_XFIXES=OFF \
+ -DOPTION_USE_XCURSOR=OFF \
+"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk.bb
new file mode 100644
index 000000000..542fd661e
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk.bb
@@ -0,0 +1,34 @@
+require ${BPN}.inc
+
+DEPENDS = "alsa-lib zlib jpeg libpng libxext libxft ${BPN}-native"
+
+inherit binconfig lib_package gtk-icon-cache mime
+
+EXTRA_OECMAKE = " \
+ -DOPTION_BUILD_SHARED_LIBS=ON \
+ -DOPTION_USE_THREADS=ON \
+ -DOPTION_USE_XDBE=ON \
+ -DOPTION_USE_XFT=ON \
+ -DFLTK_CONFIG_PATH=${libdir}/cmake \
+"
+
+PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'opengl', d)}"
+
+PACKAGECONFIG[examples] = "-DOPTION_BUILD_EXAMPLES=ON,-DOPTION_BUILD_EXAMPLES=OFF,"
+PACKAGECONFIG[opengl] = "-DOPTION_USE_GL=ON,-DOPTION_USE_GL=OFF,virtual/libgl"
+PACKAGECONFIG[xinerama] = "-DOPTION_USE_XINERAMA=ON,-DOPTION_USE_XINERAMA=OFF,libxinerama"
+PACKAGECONFIG[xfixes] = "-DOPTION_USE_XFIXES=ON,-DOPTION_USE_XFIXES=OFF,libxfixes"
+PACKAGECONFIG[xcursor] = "-DOPTION_USE_XCURSOR=ON,-DOPTION_USE_XCURSOR=OFF,libxcursor"
+
+do_install_append() {
+ sed -i -e 's,${STAGING_DIR_HOST},,g' ${D}${bindir}/fltk-config
+}
+
+python populate_packages_prepend () {
+ if (d.getVar('DEBIAN_NAMES')):
+ d.setVar('PKG_${BPN}', 'libfltk${PV}')
+}
+
+LEAD_SONAME = "libfltk.so"
+
+FILES_${PN} += "${datadir}/mime"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk.inc b/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk.inc
new file mode 100644
index 000000000..dbe700af0
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk.inc
@@ -0,0 +1,21 @@
+SUMMARY = "FLTK is a cross-platform C++ GUI toolkit"
+HOMEPAGE = "http://www.fltk.org"
+SECTION = "libs"
+LICENSE = "LGPLv2 & FLTK"
+LIC_FILES_CHKSUM = "file://COPYING;md5=f6b26344a24a941a01a5b0826e80b5ca"
+
+SRC_URI = " \
+ http://fltk.org/pub/fltk/1.3.4/${BP}-source.tar.gz \
+ 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-1"
+SRC_URI[md5sum] = "d7fcd27ab928648e1a1366dd2e273970"
+SRC_URI[sha256sum] = "7fb2c8882433ce694e6900c94fda505e8f4ed3fa9c7e597007098a33b85c53f4"
+
+inherit cmake pkgconfig
+
+TARGET_CC_ARCH += "${LDFLAGS} -DXFT_MAJOR=2"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk/0001-Fl_Preferences.cxx-do-not-use-dlopen-in-case-glibc-s.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk/0001-Fl_Preferences.cxx-do-not-use-dlopen-in-case-glibc-s.patch
new file mode 100644
index 000000000..e6e68a0cb
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk/0001-Fl_Preferences.cxx-do-not-use-dlopen-in-case-glibc-s.patch
@@ -0,0 +1,39 @@
+From e76a062338063615c069fedc5a143cc38c34d9b2 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
+Date: Tue, 28 Feb 2017 01:00:21 +0100
+Subject: [PATCH] Fl_Preferences.cxx: do not use dlopen in case glibc's headers
+ are missing
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+| /home/work/x86_64-linux/fltk-native/1.3.4-1-r0/fltk-1.3.4-1/src/Fl_Preferences.cxx: In static member function ‘static int Fl_Plugin_Manager::load(const char*)’:
+| /home/work/x86_64-linux/fltk-native/1.3.4-1-r0/fltk-1.3.4-1/src/Fl_Preferences.cxx:1741:27: error: ‘RTLD_LAZY’ was not declared in this scope
+| dl = dlopen(filename, RTLD_LAZY);
+| ^~~~~~~~~
+| /home/work/x86_64-linux/fltk-native/1.3.4-1-r0/fltk-1.3.4-1/src/Fl_Preferences.cxx:1741:36: error: ‘dlopen’ was not declared in this scope
+| dl = dlopen(filename, RTLD_LAZY);
+| ^
+| src/CMakeFiles/fltk.dir/build.make:1217: recipe for target 'src/CMakeFiles/fltk.dir/Fl_Preferences.cxx.o' failed
+
+Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
+---
+ src/Fl_Preferences.cxx | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/Fl_Preferences.cxx b/src/Fl_Preferences.cxx
+index 1233bb1..7857b9b 100644
+--- a/src/Fl_Preferences.cxx
++++ b/src/Fl_Preferences.cxx
+@@ -1737,7 +1737,7 @@ int Fl_Plugin_Manager::load(const char *filename) {
+ HMODULE dl = LoadLibrary(filename);
+ #else
+ void * dl = NULL;
+-# if HAVE_DLSYM
++# if HAVE_DLSYM && HAVE_DLFCN_H
+ dl = dlopen(filename, RTLD_LAZY);
+ # endif
+ #endif
+--
+2.9.3
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk/0002-always-build-fluid-and-export-pointers.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk/0002-always-build-fluid-and-export-pointers.patch
new file mode 100644
index 000000000..cca977c66
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk/0002-always-build-fluid-and-export-pointers.patch
@@ -0,0 +1,31 @@
+From 16010cb1a69ea2326d8102b7f1e34b65aca4b278 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
+Date: Tue, 28 Feb 2017 01:20:42 +0100
+Subject: [PATCH] always build fluid and export pointers
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Upstream-Status: Inappropriate [embedded specific]
+
+Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
+---
+ CMake/export.cmake | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/CMake/export.cmake b/CMake/export.cmake
+index 968186a..95e04eb 100644
+--- a/CMake/export.cmake
++++ b/CMake/export.cmake
+@@ -21,7 +21,7 @@
+ # final config and export
+ #######################################################################
+ # Set the fluid executable path
+-if(CMAKE_CROSSCOMPILING)
++if(FALSE)
+ find_file(FLUID_PATH
+ NAMES fluid fluid.exe
+ PATHS ENV PATH
+--
+2.9.3
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk/fix-boolean-issue-with-jpeg9.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk/fix-boolean-issue-with-jpeg9.patch
deleted file mode 100644
index 014184d53..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk/fix-boolean-issue-with-jpeg9.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-From 14c22398f8370e33a798360ed0dad513af8f1470 Mon Sep 17 00:00:00 2001
-From: AlbrechtS <AlbrechtS@ea41ed52-d2ee-0310-a9c1-e6b18d33e121>
-Date: Sun, 15 Mar 2015 19:32:33 +0000
-Subject: [PATCH] Fix 'boolean' issue with jpeg-9 library compatibility (STR
- #2920).
-
-According to comments in STR #2920 and my own tests this is also
-compatible with older jpeg libraries (at least jpeg-8).
-
-Upstream-Status: Backport
-
----
- src/Fl_JPEG_Image.cxx | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/src/Fl_JPEG_Image.cxx b/src/Fl_JPEG_Image.cxx
-index 47120a7..6cebe88 100644
---- a/src/Fl_JPEG_Image.cxx
-+++ b/src/Fl_JPEG_Image.cxx
-@@ -155,7 +155,7 @@ Fl_JPEG_Image::Fl_JPEG_Image(const char *filename) // I - File to load
-
- jpeg_create_decompress(&dinfo);
- jpeg_stdio_src(&dinfo, fp);
-- jpeg_read_header(&dinfo, 1);
-+ jpeg_read_header(&dinfo, TRUE);
-
- dinfo.quantize_colors = (boolean)FALSE;
- dinfo.out_color_space = JCS_RGB;
-@@ -337,7 +337,7 @@ Fl_JPEG_Image::Fl_JPEG_Image(const char *name, const unsigned char *data)
-
- jpeg_create_decompress(&dinfo);
- jpeg_mem_src(&dinfo, data);
-- jpeg_read_header(&dinfo, 1);
-+ jpeg_read_header(&dinfo, TRUE);
-
- dinfo.quantize_colors = (boolean)FALSE;
- dinfo.out_color_space = JCS_RGB;
---
-1.7.9.5
-
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk/fltk-no-freetype-config.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk/fltk-no-freetype-config.patch
index 4d13ffc5d..2a9915bea 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk/fltk-no-freetype-config.patch
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk/fltk-no-freetype-config.patch
@@ -1,20 +1,40 @@
---- a/configure.in.orig 2015-11-26 14:30:17.893426966 +0800
-+++ b/configure.in 2015-11-26 14:33:00.285424099 +0800
-@@ -969,12 +969,12 @@ case $host_os_gui in
- AC_ARG_ENABLE(xft, [ --enable-xft turn on Xft support [[default=yes]]])
+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)
+- 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"
+- 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_LIB(fontconfig, FcPatternCreate)
AC_CHECK_HEADER(X11/Xft/Xft.h,
+--
+2.7.4
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk_1.3.3.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk_1.3.3.bb
deleted file mode 100644
index 117ecc366..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/fltk/fltk_1.3.3.bb
+++ /dev/null
@@ -1,49 +0,0 @@
-SUMMARY = "FLTK is a cross-platform C++ GUI toolkit"
-HOMEPAGE = "http://www.fltk.org"
-SECTION = "libs"
-LICENSE = "LGPLv2 & FLTK"
-LIC_FILES_CHKSUM = "file://COPYING;md5=f6b26344a24a941a01a5b0826e80b5ca"
-
-DEPENDS = "alsa-lib zlib jpeg libpng libxext libxft"
-
-SRC_URI = "http://fltk.org/pub/fltk/${PV}/${BP}-source.tar.gz \
- file://disable_test.patch \
- file://fltk-no-freetype-config.patch \
- file://fix-boolean-issue-with-jpeg9.patch \
-"
-
-SRC_URI[md5sum] = "9ccdb0d19dc104b87179bd9fd10822e3"
-SRC_URI[sha256sum] = "f8398d98d7221d40e77bc7b19e761adaf2f1ef8bb0c30eceb7beb4f2273d0d97"
-
-inherit autotools-brokensep binconfig pkgconfig lib_package
-
-TARGET_CC_ARCH += "${LDFLAGS} -DXFT_MAJOR=2"
-
-EXTRA_OECONF = "--enable-shared \
- --enable-threads \
- --enable-xdbe \
- --enable-xft \
-"
-
-PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'opengl', '', d)}"
-
-PACKAGECONFIG[opengl] = "--enable-gl,--disable-gl,virtual/libgl"
-PACKAGECONFIG[xinerama] = "--enable-xinerama,--disable-xinerama,libxinerama"
-PACKAGECONFIG[xfixes] = "--enable-xfixes,--disable-xfixes,libxfixes"
-PACKAGECONFIG[xcursor] = "--enable-xcursor,--disable-xcursor,libxcursor"
-
-do_configure() {
- oe_runconf
-}
-
-do_install_append_class-target() {
- sed -i -e 's,${STAGING_DIR_HOST},,g' ${D}${bindir}/fltk-config
-}
-
-python populate_packages_prepend () {
- if (d.getVar('DEBIAN_NAMES', 1)):
- d.setVar('PKG_${BPN}', 'libfltk${PV}')
-}
-
-LEAD_SONAME = "libfltk.so"
-
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/freerdp/freerdp/0003-add-missing-define.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/freerdp/freerdp/0003-add-missing-define.patch
new file mode 100644
index 000000000..220edef30
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/freerdp/freerdp/0003-add-missing-define.patch
@@ -0,0 +1,45 @@
+libwinpr/comm_seria: fix missing define
+
+FreeRDP uses CMSPAR, which is defined by glibc in bits/termios.h .
+
+glibc has two flavours of bits/termios.h: a genmeric one and an
+architecture-specific one. When installing, glibc will install the
+architecture-specific file if it exists, otherwise it installs the
+generic file. Only Alpha, MIPS, PPC and Sparc have their own
+bits/termios.h.
+
+The generic bits/termios.h, as well as the Alpha, PPC and Sparc flavours
+do define CMSPAR. However, the MIPS flavour does not define it.
+
+Define CMSPAR to the value from the generic value, which is also the
+value known to the Linux kernel for MIPS.
+
+Fixes:
+ http://autobuild.buildroot.org/results/0b4/0b4793f0bf9f4c57933897f3480054a4e06528ad/
+ http://autobuild.buildroot.org/results/7a2/7a2284d0a2987158fa2e78f789b07c8c6fcdb974/
+ http://autobuild.buildroot.org/results/387/3874088c3ccd4bbf76ea0c911ca1ef64c7dc9d1c/
+ ...
+
+Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
+Cc: Peter Korsgaard <jacmet@uclibc.org>
+Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+diff -durN freerdp-17834af7bb378f85a3b3cc4dcadaa5125a337e16.orig/winpr/libwinpr/comm/comm_serial_sys.c freerdp-17834af7bb378f85a3b3cc4dcadaa5125a337e16/winpr/libwinpr/comm/comm_serial_sys.c
+--- freerdp-17834af7bb378f85a3b3cc4dcadaa5125a337e16.orig/winpr/libwinpr/comm/comm_serial_sys.c 2015-09-04 16:20:17.000000000 +0100
++++ freerdp-17834af7bb378f85a3b3cc4dcadaa5125a337e16/winpr/libwinpr/comm/comm_serial_sys.c 2015-10-04 11:07:41.868513726 +0100
+@@ -27,6 +27,14 @@
+ #include <fcntl.h>
+ #include <sys/ioctl.h>
+ #include <termios.h>
++
++/* glibc for MIPS has its own bits/termios.h which does not define
++ * CMSPAR, so we vampirise the value from the generic bits/termios.h
++ */
++#ifndef CMSPAR
++#define CMSPAR 010000000000
++#endif
++
+ #include <unistd.h>
+
+ #include "comm_serial_sys.h"
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/freerdp/freerdp_git.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/freerdp/freerdp_git.bb
index 339a053ca..f0aa1b6ef 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/freerdp/freerdp_git.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/freerdp/freerdp_git.bb
@@ -17,6 +17,7 @@ SRCREV = "62da9d28c674814c81c245c1c7882eb0da7be76b"
SRC_URI = "git://github.com/FreeRDP/FreeRDP.git \
file://winpr-makecert-Build-with-install-RPATH.patch \
file://0001-FindGStreamer_1_0-fix-build-failure-for-new-gstreame.patch \
+ file://0003-add-missing-define.patch \
"
S = "${WORKDIR}/git"
@@ -32,14 +33,10 @@ EXTRA_OECMAKE += " \
-DWITH_MANPAGES=OFF \
"
-PACKAGECONFIG ??= " \
- ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', '', d)}\
- ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland', '', d)}\
- ${@bb.utils.contains('DISTRO_FEATURES', 'directfb', 'directfb', '', d)}\
- ${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'pam', '', d)}\
- ${@bb.utils.contains('DISTRO_FEATURES', 'pulseaudio', 'pulseaudio', '', d)}\
- gstreamer cups \
- "
+PACKAGECONFIG ??= " \
+ ${@bb.utils.filter('DISTRO_FEATURES', 'directfb pam pulseaudio wayland x11', d)}\
+ gstreamer cups \
+"
X11_DEPS = "virtual/libx11 libxinerama libxext libxcursor libxv libxi libxrender libxfixes libxdamage libxrandr libxkbfile"
PACKAGECONFIG[x11] = "-DWITH_X11=ON -DWITH_XINERAMA=ON -DWITH_XEXT=ON -DWITH_XCURSOR=ON -DWITH_XV=ON -DWITH_XI=ON -DWITH_XRENDER=ON -DWITH_XFIXES=ON -DWITH_XDAMAGE=ON -DWITH_XRANDR=ON -DWITH_XKBFILE=ON,-DWITH_X11=OFF,${X11_DEPS}"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/gd/gd/.gitignore-the-new-test-case.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/gd/gd/.gitignore-the-new-test-case.patch
new file mode 100644
index 000000000..eab4975cb
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/gd/gd/.gitignore-the-new-test-case.patch
@@ -0,0 +1,24 @@
+From 8520274759cb8f95e483b02a445aff225e13467b Mon Sep 17 00:00:00 2001
+From: "Christoph M. Becker" <cmbecker69@gmx.de>
+Date: Tue, 16 Aug 2016 16:00:27 +0200
+Subject: [PATCH] .gitignore the new test case
+
+Upstream-Status: Backport
+
+Signed-off-by: Catalin Enache <catalin.enache@windriver.com>
+---
+ tests/tga/.gitignore | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/tests/tga/.gitignore b/tests/tga/.gitignore
+index e88e124..7a659b1 100644
+--- a/tests/tga/.gitignore
++++ b/tests/tga/.gitignore
+@@ -4,3 +4,4 @@
+ /bug00248
+ /bug00248a
+ /tga_null
++/tga_read
+--
+2.10.2
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/gd/gd/CVE-2016-10166.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/gd/gd/CVE-2016-10166.patch
new file mode 100644
index 000000000..7ccfbeabc
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/gd/gd/CVE-2016-10166.patch
@@ -0,0 +1,60 @@
+From c92240c1670c20c2f854761d3a89ab61dd158c91 Mon Sep 17 00:00:00 2001
+From: "Christoph M. Becker" <cmbecker69@gmx.de>
+Date: Sat, 6 Aug 2016 10:08:53 +0200
+Subject: [PATCH] Fix potential unsigned underflow
+
+No need to decrease `u`, so we don't do it. While we're at it, we also factor
+out the overflow check of the loop, what improves performance and readability.
+
+This issue has been reported by Stefan Esser to security@libgd.org.
+
+Upstream-Status: Backport
+CVE: CVE-2016-10166
+
+Signed-off-by: Catalin Enache <catalin.enache@windriver.com>
+---
+ src/gd_interpolation.c | 19 ++++++++++---------
+ 1 file changed, 10 insertions(+), 9 deletions(-)
+
+diff --git a/src/gd_interpolation.c b/src/gd_interpolation.c
+index 7e7943d..9944349 100644
+--- a/src/gd_interpolation.c
++++ b/src/gd_interpolation.c
+@@ -829,8 +829,13 @@ static inline LineContribType * _gdContributionsAlloc(unsigned int line_length,
+ {
+ unsigned int u = 0;
+ LineContribType *res;
+- int overflow_error = 0;
++ size_t weights_size;
+
++ if (overflow2(windows_size, sizeof(double))) {
++ return NULL;
++ } else {
++ weights_size = windows_size * sizeof(double);
++ }
+ res = (LineContribType *) gdMalloc(sizeof(LineContribType));
+ if (!res) {
+ return NULL;
+@@ -847,15 +852,11 @@ static inline LineContribType * _gdContributionsAlloc(unsigned int line_length,
+ return NULL;
+ }
+ for (u = 0 ; u < line_length ; u++) {
+- if (overflow2(windows_size, sizeof(double))) {
+- overflow_error = 1;
+- } else {
+- res->ContribRow[u].Weights = (double *) gdMalloc(windows_size * sizeof(double));
+- }
+- if (overflow_error == 1 || res->ContribRow[u].Weights == NULL) {
++ res->ContribRow[u].Weights = (double *) gdMalloc(weights_size);
++ if (res->ContribRow[u].Weights == NULL) {
+ unsigned int i;
+- u--;
+- for (i=0;i<=u;i++) {
++
++ for (i=0;i<u;i++) {
+ gdFree(res->ContribRow[i].Weights);
+ }
+ gdFree(res->ContribRow);
+--
+2.10.2
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/gd/gd/CVE-2016-10167.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/gd/gd/CVE-2016-10167.patch
new file mode 100644
index 000000000..54ef22cb6
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/gd/gd/CVE-2016-10167.patch
@@ -0,0 +1,48 @@
+From 6ab531ef0d82efb9e00236ee5ea23928335d221f Mon Sep 17 00:00:00 2001
+From: Catalin Enache <catalin.enache@windriver.com>
+Date: Fri, 7 Apr 2017 12:30:22 +0300
+Subject: [PATCH] Fix DOS vulnerability in gdImageCreateFromGd2Ctx()
+
+We must not pretend that there are image data if there are none. Instead
+we fail reading the image file gracefully.
+
+Upstream-Status: Backport
+CVE: CVE-2016-10167
+
+Signed-off-by: Catalin Enache <catalin.enache@windriver.com>
+---
+ src/gd_gd2.c | 14 ++++++--------
+ 1 file changed, 6 insertions(+), 8 deletions(-)
+
+diff --git a/src/gd_gd2.c b/src/gd_gd2.c
+index 8df93c1..bae65ea 100644
+--- a/src/gd_gd2.c
++++ b/src/gd_gd2.c
+@@ -445,18 +445,16 @@ BGD_DECLARE(gdImagePtr) gdImageCreateFromGd2Ctx (gdIOCtxPtr in)
+
+ if (im->trueColor) {
+ if (!gdGetInt (&im->tpixels[y][x], in)) {
+- /*printf("EOF while reading\n"); */
+- /*gdImageDestroy(im); */
+- /*return 0; */
+- im->tpixels[y][x] = 0;
++ gd_error("gd2: EOF while reading\n");
++ gdImageDestroy(im);
++ return NULL;
+ }
+ } else {
+ int ch;
+ if (!gdGetByte (&ch, in)) {
+- /*printf("EOF while reading\n"); */
+- /*gdImageDestroy(im); */
+- /*return 0; */
+- ch = 0;
++ gd_error("gd2: EOF while reading\n");
++ gdImageDestroy(im);
++ return NULL;
+ }
+ im->pixels[y][x] = ch;
+ }
+--
+2.10.2
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/gd/gd/CVE-2016-10168.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/gd/gd/CVE-2016-10168.patch
new file mode 100644
index 000000000..aef1060c4
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/gd/gd/CVE-2016-10168.patch
@@ -0,0 +1,38 @@
+From 2d37bdc03a6e2b820fe380016f22592a7733e0be Mon Sep 17 00:00:00 2001
+From: Catalin Enache <catalin.enache@windriver.com>
+Date: Fri, 7 Apr 2017 12:32:49 +0300
+Subject: [PATCH] Fix #354: Signed Integer Overflow gd_io.c
+
+GD2 stores the number of horizontal and vertical chunks as words (i.e. 2
+byte unsigned). These values are multiplied and assigned to an int when
+reading the image, what can cause integer overflows. We have to avoid
+that, and also make sure that either chunk count is actually greater
+than zero. If illegal chunk counts are detected, we bail out from
+reading the image.
+
+Upstream-Status: Backport
+CVE: CVE-2016-10168
+
+Signed-off-by: Catalin Enache <catalin.enache@windriver.com>
+---
+ src/gd_gd2.c | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/src/gd_gd2.c b/src/gd_gd2.c
+index bae65ea..9006bd2 100644
+--- a/src/gd_gd2.c
++++ b/src/gd_gd2.c
+@@ -151,6 +151,10 @@ _gd2GetHeader (gdIOCtxPtr in, int *sx, int *sy,
+ GD2_DBG (printf ("%d Chunks vertically\n", *ncy));
+
+ if (gd2_compressed (*fmt)) {
++ if (*ncx <= 0 || *ncy <= 0 || *ncx > INT_MAX / *ncy) {
++ GD2_DBG(printf ("Illegal chunk counts: %d * %d\n", *ncx, *ncy));
++ goto fail1;
++ }
+ nc = (*ncx) * (*ncy);
+
+ GD2_DBG (printf ("Reading %d chunk index entries\n", nc));
+--
+2.10.2
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/gd/gd/CVE-2016-6906-1.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/gd/gd/CVE-2016-6906-1.patch
new file mode 100644
index 000000000..97b7f7249
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/gd/gd/CVE-2016-6906-1.patch
@@ -0,0 +1,167 @@
+From fb0e0cce0b9f25389ab56604c3547351617e1415 Mon Sep 17 00:00:00 2001
+From: "Christoph M. Becker" <cmbecker69@gmx.de>
+Date: Tue, 16 Aug 2016 16:26:19 +0200
+Subject: [PATCH] Fix OOB reads of the TGA decompression buffer
+
+It is possible to craft TGA files which will overflow the decompression
+buffer, but not the image's bitmap. Therefore we augment the check for the
+bitmap's overflow with a check for the buffer's overflow.
+
+This issue had been reported by Ibrahim El-Sayed to security@libgd.org.
+
+CVE-2016-6906
+
+Upstream-Status: Backport
+CVE: CVE-2016-6906
+
+Signed-off-by: Catalin Enache <catalin.enache@windriver.com>
+---
+ src/gd_tga.c | 6 ++++--
+ tests/tga/.gitignore | 1 +
+ tests/tga/CMakeLists.txt | 1 +
+ tests/tga/Makemodule.am | 2 ++
+ tests/tga/heap_overflow.c | 51 ++++++++++++++++++++++++++++++++++++++++++++
+ tests/tga/heap_overflow.tga | Bin 0 -> 605 bytes
+ 6 files changed, 59 insertions(+), 2 deletions(-)
+ create mode 100644 tests/tga/heap_overflow.c
+ create mode 100644 tests/tga/heap_overflow.tga
+
+diff --git a/src/gd_tga.c b/src/gd_tga.c
+index 8737b04..68e4b17 100644
+--- a/src/gd_tga.c
++++ b/src/gd_tga.c
+@@ -300,7 +300,8 @@ int read_image_tga( gdIOCtx *ctx, oTga *tga )
+ encoded_pixels = ( ( decompression_buffer[ buffer_caret ] & ~TGA_RLE_FLAG ) + 1 );
+ buffer_caret++;
+
+- if ((bitmap_caret + (encoded_pixels * pixel_block_size)) > image_block_size) {
++ if ((bitmap_caret + (encoded_pixels * pixel_block_size)) > image_block_size
++ || buffer_caret + pixel_block_size > rle_size) {
+ gdFree( decompression_buffer );
+ gdFree( conversion_buffer );
+ return -1;
+@@ -316,7 +317,8 @@ int read_image_tga( gdIOCtx *ctx, oTga *tga )
+ encoded_pixels = decompression_buffer[ buffer_caret ] + 1;
+ buffer_caret++;
+
+- if ((bitmap_caret + (encoded_pixels * pixel_block_size)) > image_block_size) {
++ if ((bitmap_caret + (encoded_pixels * pixel_block_size)) > image_block_size
++ || buffer_caret + (encoded_pixels * pixel_block_size) > rle_size) {
+ gdFree( decompression_buffer );
+ gdFree( conversion_buffer );
+ return -1;
+diff --git a/tests/tga/.gitignore b/tests/tga/.gitignore
+index 7a659b1..cf0556b 100644
+--- a/tests/tga/.gitignore
++++ b/tests/tga/.gitignore
+@@ -3,5 +3,6 @@
+ /bug00247a
+ /bug00248
+ /bug00248a
++/heap_overflow
+ /tga_null
+ /tga_read
+diff --git a/tests/tga/CMakeLists.txt b/tests/tga/CMakeLists.txt
+index 789fb14..11542a0 100644
+--- a/tests/tga/CMakeLists.txt
++++ b/tests/tga/CMakeLists.txt
+@@ -5,6 +5,7 @@ LIST(APPEND TESTS_FILES
+ bug00247a
+ bug00248
+ bug00248a
++ heap_overflow
+ tga_read
+ )
+
+diff --git a/tests/tga/Makemodule.am b/tests/tga/Makemodule.am
+index a1e6af6..916d707 100644
+--- a/tests/tga/Makemodule.am
++++ b/tests/tga/Makemodule.am
+@@ -4,6 +4,7 @@ libgd_test_programs += \
+ tga/bug00247a \
+ tga/bug00248 \
+ tga/bug00248a \
++ tga/heap_overflow \
+ tga/tga_null \
+ tga/tga_read
+
+@@ -14,6 +15,7 @@ EXTRA_DIST += \
+ tga/bug00247a.tga \
+ tga/bug00248.tga \
+ tga/bug00248a.tga \
++ tga/heap_overflow.tga \
+ tga/tga_read_rgb.png \
+ tga/tga_read_rgb.tga \
+ tga/tga_read_rgb_rle.tga
+diff --git a/tests/tga/heap_overflow.c b/tests/tga/heap_overflow.c
+new file mode 100644
+index 0000000..0e9a2d0
+--- /dev/null
++++ b/tests/tga/heap_overflow.c
+@@ -0,0 +1,51 @@
++/**
++ * Test that the crafted TGA file doesn't trigger OOB reads.
++ */
++
++
++#include "gd.h"
++#include "gdtest.h"
++
++
++static size_t read_test_file(char **buffer, char *basename);
++
++
++int main()
++{
++ gdImagePtr im;
++ char *buffer;
++ size_t size;
++
++ size = read_test_file(&buffer, "heap_overflow.tga");
++ im = gdImageCreateFromTgaPtr(size, (void *) buffer);
++ gdTestAssert(im == NULL);
++ free(buffer);
++
++ return gdNumFailures();
++}
++
++
++static size_t read_test_file(char **buffer, char *basename)
++{
++ char *filename;
++ FILE *fp;
++ size_t exp_size, act_size;
++
++ filename = gdTestFilePath2("tga", basename);
++ fp = fopen(filename, "rb");
++ gdTestAssert(fp != NULL);
++
++ fseek(fp, 0, SEEK_END);
++ exp_size = ftell(fp);
++ fseek(fp, 0, SEEK_SET);
++
++ *buffer = malloc(exp_size);
++ gdTestAssert(*buffer != NULL);
++ act_size = fread(*buffer, sizeof(**buffer), exp_size, fp);
++ gdTestAssert(act_size == exp_size);
++
++ fclose(fp);
++ free(filename);
++
++ return act_size;
++}
+diff --git a/tests/tga/heap_overflow.tga b/tests/tga/heap_overflow.tga
+new file mode 100644
+index 0000000000000000000000000000000000000000..e9bc0ecb2a847ac6edba92dd0ff61167b49002cd
+GIT binary patch
+literal 605
+zcmZQz;9`IQ9tIu;g&7<$F3o7Yg1qzyh6tefy9wZAs2d<Uh*yuz=?XwW4Qvuv#g2nS
+zp93+mT0rVR>T&8(2TGy=f_l)@gSap~$FayUFu(!|SyJIFga^{8fGj~vwq8kkVgvv>
+Cavop+
+
+literal 0
+HcmV?d00001
+
+--
+2.10.2
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/gd/gd/CVE-2016-6906-2.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/gd/gd/CVE-2016-6906-2.patch
new file mode 100644
index 000000000..8b6de9711
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/gd/gd/CVE-2016-6906-2.patch
@@ -0,0 +1,135 @@
+From 58b6dde319c301b0eae27d12e2a659e067d80558 Mon Sep 17 00:00:00 2001
+From: "Christoph M. Becker" <cmbecker69@gmx.de>
+Date: Tue, 16 Aug 2016 16:26:19 +0200
+Subject: [PATCH] Fix OOB reads of the TGA decompression buffer
+
+It is possible to craft TGA files which will overflow the decompression
+buffer, but not the image's bitmap. Therefore we also have to check for
+potential decompression buffer overflows.
+
+This issue had been reported by Ibrahim El-Sayed to security@libgd.org;
+a modified case exposing an off-by-one error of the first patch had been
+provided by Konrad Beckmann.
+
+This commit is an amendment to commit fb0e0cce, so we use CVE-2016-6906
+as well.
+
+Upstream-Status: Backport
+CVE: CVE-2016-6906
+
+Signed-off-by: Catalin Enache <catalin.enache@windriver.com>
+---
+ src/gd_tga.c | 8 +++++++-
+ tests/tga/Makemodule.am | 3 ++-
+ tests/tga/heap_overflow.c | 16 ++++++++++++----
+ tests/tga/heap_overflow_1.tga | Bin 0 -> 605 bytes
+ tests/tga/heap_overflow_2.tga | Bin 0 -> 8746 bytes
+ 5 files changed, 21 insertions(+), 6 deletions(-)
+ create mode 100644 tests/tga/heap_overflow_1.tga
+ create mode 100644 tests/tga/heap_overflow_2.tga
+
+diff --git a/src/gd_tga.c b/src/gd_tga.c
+index 68e4b17..f80f0b1 100644
+--- a/src/gd_tga.c
++++ b/src/gd_tga.c
+@@ -295,7 +295,13 @@ int read_image_tga( gdIOCtx *ctx, oTga *tga )
+ buffer_caret = 0;
+
+ while( bitmap_caret < image_block_size ) {
+-
++
++ if (buffer_caret + pixel_block_size > rle_size) {
++ gdFree( decompression_buffer );
++ gdFree( conversion_buffer );
++ return -1;
++ }
++
+ if ((decompression_buffer[buffer_caret] & TGA_RLE_FLAG) == TGA_RLE_FLAG) {
+ encoded_pixels = ( ( decompression_buffer[ buffer_caret ] & ~TGA_RLE_FLAG ) + 1 );
+ buffer_caret++;
+diff --git a/tests/tga/Makemodule.am b/tests/tga/Makemodule.am
+index 916d707..ab08dbf 100644
+--- a/tests/tga/Makemodule.am
++++ b/tests/tga/Makemodule.am
+@@ -15,7 +15,8 @@ EXTRA_DIST += \
+ tga/bug00247a.tga \
+ tga/bug00248.tga \
+ tga/bug00248a.tga \
+- tga/heap_overflow.tga \
++ tga/heap_overflow_1.tga \
++ tga/heap_overflow_2.tga \
+ tga/tga_read_rgb.png \
+ tga/tga_read_rgb.tga \
+ tga/tga_read_rgb_rle.tga
+diff --git a/tests/tga/heap_overflow.c b/tests/tga/heap_overflow.c
+index 0e9a2d0..ddd4b63 100644
+--- a/tests/tga/heap_overflow.c
++++ b/tests/tga/heap_overflow.c
+@@ -1,5 +1,5 @@
+ /**
+- * Test that the crafted TGA file doesn't trigger OOB reads.
++ * Test that crafted TGA files don't trigger OOB reads.
+ */
+
+
+@@ -7,21 +7,29 @@
+ #include "gdtest.h"
+
+
++static void check_file(char *basename);
+ static size_t read_test_file(char **buffer, char *basename);
+
+
+ int main()
+ {
++ check_file("heap_overflow_1.tga");
++ check_file("heap_overflow_2.tga");
++
++ return gdNumFailures();
++}
++
++
++static void check_file(char *basename)
++{
+ gdImagePtr im;
+ char *buffer;
+ size_t size;
+
+- size = read_test_file(&buffer, "heap_overflow.tga");
++ size = read_test_file(&buffer, basename);
+ im = gdImageCreateFromTgaPtr(size, (void *) buffer);
+ gdTestAssert(im == NULL);
+ free(buffer);
+-
+- return gdNumFailures();
+ }
+
+
+diff --git a/tests/tga/heap_overflow_1.tga b/tests/tga/heap_overflow_1.tga
+new file mode 100644
+index 0000000000000000000000000000000000000000..e9bc0ecb2a847ac6edba92dd0ff61167b49002cd
+GIT binary patch
+literal 605
+zcmZQz;9`IQ9tIu;g&7<$F3o7Yg1qzyh6tefy9wZAs2d<Uh*yuz=?XwW4Qvuv#g2nS
+zp93+mT0rVR>T&8(2TGy=f_l)@gSap~$FayUFu(!|SyJIFga^{8fGj~vwq8kkVgvv>
+Cavop+
+
+literal 0
+HcmV?d00001
+
+diff --git a/tests/tga/heap_overflow_2.tga b/tests/tga/heap_overflow_2.tga
+new file mode 100644
+index 0000000000000000000000000000000000000000..2b681f2df8941d6823aa761be0a7fa3c02c92cbf
+GIT binary patch
+literal 8746
+zcmeIxF$#b%6a>*<djij4?cuz+Vi5?!RIY)@*eDAQ@`zPSwQE1NTI<YQEqdQG#s5@h
+zwDFtAoIjm)CIQa|$z*q(vz}DbnPjrN&RI{Y=}a=&UFWPP)joCZ<31}ey8!(}FZZ71
+zWop>#e)AY=opmMw&j!h4cb&7IRMVMcvb)Y%PpaumGTB|{tS8lUCYkK6bJmk;IzMDC
+D4PYIN
+
+literal 0
+HcmV?d00001
+
+--
+2.10.2
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/gd/gd/Fix-290-TGA-RLE-decoding-is-broken.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/gd/gd/Fix-290-TGA-RLE-decoding-is-broken.patch
new file mode 100644
index 000000000..64f5c6296
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/gd/gd/Fix-290-TGA-RLE-decoding-is-broken.patch
@@ -0,0 +1,359 @@
+From 4f8e26f2a40ffaa3a5b77be6a49989a1a42e2b83 Mon Sep 17 00:00:00 2001
+From: "Christoph M. Becker" <cmbecker69@gmx.de>
+Date: Tue, 16 Aug 2016 14:27:23 +0200
+Subject: [PATCH] Fix #290: TGA RLE decoding is broken
+
+We make it work only, for now. Actually, it doesn't make sense that
+`oTga::bitmap` is an `int *` as we're storing only bytes there. If this
+will be changed, we can even get rid of the `conversion_buffer` in
+`read_image_tga` altogether, and read the image data into the
+`decompression_buffer` (if RLE'd) or the `tga->bitmap` (if uncompressed)
+directly.
+
+Upstream-Status: Backport
+
+Signed-off-by: Catalin Enache <catalin.enache@windriver.com>
+---
+ src/gd_tga.c | 18 ++++++++++--------
+ tests/tga/CMakeLists.txt | 1 +
+ tests/tga/Makemodule.am | 8 ++++++--
+ tests/tga/tga_read.c | 40 ++++++++++++++++++++++++++++++++++++++++
+ tests/tga/tga_read_rgb.png | Bin 0 -> 2349 bytes
+ tests/tga/tga_read_rgb.tga | Bin 0 -> 90444 bytes
+ tests/tga/tga_read_rgb_rle.tga | Bin 0 -> 9987 bytes
+ 7 files changed, 57 insertions(+), 10 deletions(-)
+ create mode 100644 tests/tga/tga_read.c
+ create mode 100644 tests/tga/tga_read_rgb.png
+ create mode 100644 tests/tga/tga_read_rgb.tga
+ create mode 100644 tests/tga/tga_read_rgb_rle.tga
+
+diff --git a/src/gd_tga.c b/src/gd_tga.c
+index ec6781f..8737b04 100644
+--- a/src/gd_tga.c
++++ b/src/gd_tga.c
+@@ -207,12 +207,13 @@ int read_image_tga( gdIOCtx *ctx, oTga *tga )
+ {
+ int pixel_block_size = (tga->bits / 8);
+ int image_block_size = (tga->width * tga->height) * pixel_block_size;
+- uint8_t* decompression_buffer = NULL;
++ int* decompression_buffer = NULL;
+ unsigned char* conversion_buffer = NULL;
+ int buffer_caret = 0;
+ int bitmap_caret = 0;
+ int i = 0;
+ int encoded_pixels;
++ int rle_size;
+
+ if(overflow2(tga->width, tga->height)) {
+ return -1;
+@@ -266,7 +267,7 @@ int read_image_tga( gdIOCtx *ctx, oTga *tga )
+ /*! \brief Read in RLE compressed RGB TGA
+ * Chunk load the pixel data from an RLE compressed RGB type TGA.
+ */
+- decompression_buffer = (uint8_t*) gdMalloc(image_block_size * sizeof(uint8_t));
++ decompression_buffer = (int*) gdMalloc(image_block_size * sizeof(int));
+ if (decompression_buffer == NULL) {
+ return -1;
+ }
+@@ -277,7 +278,8 @@ int read_image_tga( gdIOCtx *ctx, oTga *tga )
+ return -1;
+ }
+
+- if (gdGetBuf(conversion_buffer, image_block_size, ctx) != image_block_size) {
++ rle_size = gdGetBuf(conversion_buffer, image_block_size, ctx);
++ if (rle_size <= 0) {
+ gdFree(conversion_buffer);
+ gdFree(decompression_buffer);
+ return -1;
+@@ -285,7 +287,7 @@ int read_image_tga( gdIOCtx *ctx, oTga *tga )
+
+ buffer_caret = 0;
+
+- while( buffer_caret < image_block_size) {
++ while( buffer_caret < rle_size) {
+ decompression_buffer[buffer_caret] = (int)conversion_buffer[buffer_caret];
+ buffer_caret++;
+ }
+@@ -298,14 +300,14 @@ int read_image_tga( gdIOCtx *ctx, oTga *tga )
+ encoded_pixels = ( ( decompression_buffer[ buffer_caret ] & ~TGA_RLE_FLAG ) + 1 );
+ buffer_caret++;
+
+- if ((bitmap_caret + (encoded_pixels * pixel_block_size)) >= image_block_size) {
++ if ((bitmap_caret + (encoded_pixels * pixel_block_size)) > image_block_size) {
+ gdFree( decompression_buffer );
+ gdFree( conversion_buffer );
+ return -1;
+ }
+
+ for (i = 0; i < encoded_pixels; i++) {
+- memcpy(tga->bitmap + bitmap_caret, decompression_buffer + buffer_caret, pixel_block_size);
++ memcpy(tga->bitmap + bitmap_caret, decompression_buffer + buffer_caret, pixel_block_size * sizeof(int));
+ bitmap_caret += pixel_block_size;
+ }
+ buffer_caret += pixel_block_size;
+@@ -314,13 +316,13 @@ int read_image_tga( gdIOCtx *ctx, oTga *tga )
+ encoded_pixels = decompression_buffer[ buffer_caret ] + 1;
+ buffer_caret++;
+
+- if ((bitmap_caret + (encoded_pixels * pixel_block_size)) >= image_block_size) {
++ if ((bitmap_caret + (encoded_pixels * pixel_block_size)) > image_block_size) {
+ gdFree( decompression_buffer );
+ gdFree( conversion_buffer );
+ return -1;
+ }
+
+- memcpy(tga->bitmap + bitmap_caret, decompression_buffer + buffer_caret, encoded_pixels * pixel_block_size);
++ memcpy(tga->bitmap + bitmap_caret, decompression_buffer + buffer_caret, encoded_pixels * pixel_block_size * sizeof(int));
+ bitmap_caret += (encoded_pixels * pixel_block_size);
+ buffer_caret += (encoded_pixels * pixel_block_size);
+ }
+diff --git a/tests/tga/CMakeLists.txt b/tests/tga/CMakeLists.txt
+index c3a589c..789fb14 100644
+--- a/tests/tga/CMakeLists.txt
++++ b/tests/tga/CMakeLists.txt
+@@ -5,6 +5,7 @@ LIST(APPEND TESTS_FILES
+ bug00247a
+ bug00248
+ bug00248a
++ tga_read
+ )
+
+ ADD_GD_TESTS()
+diff --git a/tests/tga/Makemodule.am b/tests/tga/Makemodule.am
+index dff828f..a1e6af6 100644
+--- a/tests/tga/Makemodule.am
++++ b/tests/tga/Makemodule.am
+@@ -4,7 +4,8 @@ libgd_test_programs += \
+ tga/bug00247a \
+ tga/bug00248 \
+ tga/bug00248a \
+- tga/tga_null
++ tga/tga_null \
++ tga/tga_read
+
+ EXTRA_DIST += \
+ tga/CMakeLists.txt \
+@@ -12,4 +13,7 @@ EXTRA_DIST += \
+ tga/bug00247.tga \
+ tga/bug00247a.tga \
+ tga/bug00248.tga \
+- tga/bug00248a.tga
++ tga/bug00248a.tga \
++ tga/tga_read_rgb.png \
++ tga/tga_read_rgb.tga \
++ tga/tga_read_rgb_rle.tga
+diff --git a/tests/tga/tga_read.c b/tests/tga/tga_read.c
+new file mode 100644
+index 0000000..310b72f
+--- /dev/null
++++ b/tests/tga/tga_read.c
+@@ -0,0 +1,40 @@
++/**
++ * Basic test case for reading TGA files.
++ */
++
++
++#include "gd.h"
++#include "gdtest.h"
++
++
++static void assert_equals(char *exp, char *orig);
++
++
++int main()
++{
++ assert_equals("tga_read_rgb.png", "tga_read_rgb.tga");
++ assert_equals("tga_read_rgb.png", "tga_read_rgb_rle.tga");
++
++ return gdNumFailures();
++}
++
++
++static void assert_equals(char *exp, char *orig)
++{
++ gdImagePtr im;
++ FILE *fp;
++ char *filename;
++
++ fp = gdTestFileOpen2("tga", orig);
++ gdTestAssertMsg(fp != NULL, "can't open %s", orig);
++
++ im = gdImageCreateFromTga(fp);
++ gdTestAssertMsg(im != NULL, "can't read %s", orig);
++ fclose(fp);
++
++ filename = gdTestFilePath2("tga", exp);
++ gdAssertImageEqualsToFile(filename, im);
++ gdFree(filename);
++
++ gdImageDestroy(im);
++}
+diff --git a/tests/tga/tga_read_rgb.png b/tests/tga/tga_read_rgb.png
+new file mode 100644
+index 0000000000000000000000000000000000000000..bc468e3d927eaeb77d2f5c3bc35b970457f60f18
+GIT binary patch
+literal 2349
+zcmZ`*c{tSX7XOaO7-6K6b&RD_MnXy$nHe#bsVG~TvfZ*vO?Jle8%ar+AySDfStFGh
+zG#*)pL0RUPJ(FedBaE?x-*o@D_deZwpZ7WMdCuo~-t)faoX_)~lW+lNCI*p(001C{
+zHOJWSbt_+Pfp_!w<m@>WzS`|-X@&uIeytaE1*v>QB*5J9HUNl9{Spw6`Sc(k6uyJC
+zHWeNNLm|3~tCo{U002|57?VrEU+1$sy;a&|;-kbZl`6E_C%>gqbDtC=57F3fUD$)k
+zSG5DTL6#NnU=7wGcCw|<f|{rZi)5q<cVW*NQPQCY0xPU0_nGG#D?wR37BO^o^261%
+z+}quQI_1ZP=gTNp-n|;#)z~^;78o=e@tRYrS#8Jc>M{W*OdYEgjJp6u9Rb7l#X%t`
+zun;^h28uEP=P3Px?|rNGF#17D%A(CJ_ar|?n^0nq!~w+Wg23867ryn!Zlb|~&7A~z
+zqkP=IPyLrOM?58>2rEq=&{*9OMU!HNWJkg`(`y(=2{WLg392OTDyiM2$iCLcv5LCG
+zjWwRq46Da$pV|V^4Gvs36k1dWF^V4c8j%3~jN{*0*$phpF|-#zi@;k@t-s?cqW&sd
+zPh{x~@zm`!5V23*L&Qb=_elN~nEEqQhrhNZiRU#|qjK>6ptaYgj*sAcuS+t-7X5aB
+zUI5f*aL0Dut+y0vde?tg7QMa^0`(plvuD^Q>)J(abQY>@6P_*YY;XJ54VC^_f7F2x
+z21ee^35}!<L@bW?<-JgJ-%sahFv68xPXghCl|CsCc-P-A{`kl_3By}Mq}YnYYmSt4
+z8h8mx?<zBgq9CzV4*#zR8t}x5Or8!9Rn6LgajJ!B)ebxEtrwC@*p4M@D51#?OEY}<
+zqJHu+sCRU2YXNxiq(DP@*(Ui?Jz;IQ@O$Lbf}e8Nwij*L&iUd$N4-Ykfp$vDx#uv?
+z#_eULpAbPvN<tVA>Ek##rQDAOW+@)2?%}XiiSi^ted1PQu{v0&?bA^r%z?7*An3_H
+zvYFv8{p8fsCguNR$#3=6O{^H&8kT9N92CeaRAj3Y_cNl-znY8JZ{MpO#OK}A<_w9J
+zWMI2Kl?xv|S-FTV(aUG_`UWTZOFJGgv2)>JR#*H2Uad(wyqbIZt?w|Dw|k<eY&&9F
+zcr!zDg7=#H^=^MC+W02GN{78K=4Kuq90c@$7f$7+h)^YFm}-?3cEdU+Ivh5RC<+Yy
+zOz(7r<tT|Z34S@glz^9lpp@OstDBGA(iwk<LQ#r@i_)^MV*Re3^qB#j7N}4etZfK>
+zt6<wtj&M2(TLgTh3AH(}4;f4j=<Iu^axvT0!8B)K0O!7g?WnhIyGH5@EtT77&?E{6
+zB5<#{PWJOxQkF}LskzI@;(qVCjE%v-h|S8;`k#h^W5wR-cadW2H2Mk+7QZhqSRd!M
+zcQ8fpx~O^(^O#2gXiWDX&u@lZT#qjPG~Xh0UobVq#~Lumf!%S9`Jhf%MH?4Re5-17
+z7BP>D>=sy59jEGoeEx_W13BnmhAs?*j6#bG1a@#16O~1>q+P2@%QN~``Ws7=WX;F9
+z`=p5I$1ig*G|iW8vslr2^8hj+A0HWDoT-@fn5I53ZWWp!r8fMghmpjdqC%E#%2HFI
+zY&A(g!Li3+$<B^y8^Hw5!sXd&k%Ev!a;~aB#joj1?2ntu9|!GAFUwyc0oe_~y<}?E
+zUh@HUbCI(x2W1rmg7ckzRL2Ew#cdujut+*-t0g)81Tu+3ZH4uP`r1d1kSooU@5ybL
+zR5_J%A5sbak)KrSf>(r|V*&yCb;Ha(&ACi9w;?kQ7q1$hwjli^);+KIJAh|K&YL#E
+z+b(`PZN>V_5?v`hu-U429K9fO%8*k8pE=jDkn5ZJK|Vgl*@&QE^;mwlCxWbq4(hyi
+zUuz)bk@5^HOk@gB`SaWZfX07Eom07js%np8Xot&?YP8R+3|jrR4c#zO{LO<?^G84O
+zoP}G`MK)LZDo_$#nWR09X>NY_mL~1^BUG})*4b;Z_zq+`Q@kzUHC&`trCiQYum;1?
+zBic+0Bl>LLYU?>!B3k!Ils}uXR*`OEr3`f<P@HZFk`0fP5`^X=BOtC?@!vUq7B4OF
+zZEw6+3eoFRE@xEw(%DfIybhJuo03Du2ldm$20Sn3hj15Lu&gPQp=N%r%hME$*j{^@
+zRTffQhH7JLB-70qVkSm$9Zt`mahHLT7O^JnNqAAJs0C^n+1uj_E-}S^?&_U=H?;D_
+z1U9UJAz|+7z|Yq(6${A~5fhc}hH5twnKukf#Dn_JnQ$J4-Z$d}*Trq>?aKr2p19c6
+zYJ}r+^s>6aD~mrp;oIUhlig4sM)Jg3=J{K;dp#BCzRu1sU3D1wJl{jA^Y#ShVT+|^
+zUyjiM&wD~v3zy}K!zWm%3cpu#(*)cmxw1+n+C7V|hcZ6h8CZLubXt&J)h$6yflV6>
+zOVv_gDb*glO9FLL8x6bqM6(F#pGhGy+jjOyt9-daMWGrJKF{XvnT#^TeYaq2MG)qw
+zJ=RV;Mwg*goOa?(wM=EH<#AS$egRj*wnm+Bu4Pb{$-O}GZSiuT1UdBDwv2Rz)b3+L
+zRA=nkaWHB7I$T~B%;KynnS0b@3YpKqt$2;qzwLf>DZ4RFCQB!=QQ`Ft&y_PThuDsA
+zckawmbFnA9Tl7+Ez%a)>>T+Nh@8UxzrZP`<pHEXVd#|2v=f_b#A@|oAzbk6Q_>|O)
+zgw?Xli!)-)xrF2z=thH-TI;|>UVYK64@asT%484CF-pjk+~~wA+Z%fZYua+sDJ<Nf
+zfO`bfl}ig_0&C7BCuBa)xZ?-mQO=bQ2N5;>Sw}~|(tM}hK+z>+^8QQhOsTxl+2AJ+
+zX8WjlS|;0WRv7s_Bk=@u$v3GL@qC?&jcNEv<o68kaz!pHOs@;#CSh|{!j&zrsfn8j
+z6|o#^6C2NO9!G&u;Q0U5hkpCs|2Z3I$nNY~x}Tl<rOB|1KiB|RQyiuYbv@>9Cook&
+
+literal 0
+HcmV?d00001
+
+diff --git a/tests/tga/tga_read_rgb.tga b/tests/tga/tga_read_rgb.tga
+new file mode 100644
+index 0000000000000000000000000000000000000000..5f11f5a080f3424dff6ff368db6af140a5777e23
+GIT binary patch
+literal 90444
+zcmeI4Kab?b5yc6Af(;c(13`fU*%&xb;tQC_*aPhI`Y#kR+DO4FyO7x>23DD|fPu*!
+zc$3RVz$FeASlIpmlR7c>{0XS{cwI!Xhn!*0&G0z9w?L_y)m6=&?%yLhCt|YfC)vBd
+z@3Mbp-(`!RR#lbBv<6~842S_SAO^&M7!U(uKn#chF(3xSfEW-1Vn7Ut0Wly3#DEwO
+z17bi7hygJm2E>3E5CdYM&A?}$ex4m_TFdrYYCYz+9zh#Fz&|9|x2zKn^W#B#+TPQk
+zkGJqug1wSH+UqE;=D8ly$2|8{dOgm*N*~8rNAWn%b(B8lxv$dearRaEIL<nX$9b-!
+z^fAwUm0pjtuhPeH)=@mpa~-9RdG4$9dYpZgK8~}F;&GnqD1FRxU!~XM?5p%~oOKkB
+z^IXTEkMH5{66|-Z6BF}fVs88T*I)i3JJhoOSJ|O9w{_I#nWx?l)duSh)duUtlh$At
+z17Cjm-|T(t=^t5ksQGyXeY}RR66}rB$6N4TCD<$JL)!2RcC~{xmhcaW#u{p)fITEy
+zttmer=|ik~9;VU``gjIkB^qnU`Ab-pXwrv%OZ+UJZKV%gx2JNgp5i>D59woyTux<9
+z(uedh6&9yB59vetm?D=`nUnM(eN2VLDb7RskUpl!<y7V*eMlcuVR4G{kUpf3DRMcL
+zIY}SV$5dFH;yfm%k4wB~a-Co=-1}Dr-lw`wu&?y~m97o@G#T{q3H)`Uv4-!7EMeD)
+zw)K9=Z~mTThuUAV|7C~TzV%W6$E~45nY6k?xn!MZFO2s+{6m8MjdfuTKfpgE*thW<
+z{Cw2@xOHLsAGrJk{yNcELpGPN>qM)WwmHy;dAx?N66{Tw1IK#{s}k%La$6ep^HE#+
+za9lo1VAA+y4Y_=oz@+gjedzt&v$!^qahUWWUeAKpvG42Bhn^$GX6~HMCw)jC=fvyS
+zbCo`%kFl9Mr}If4(#JXRI`&+p59woU=FaJS(ueeMPP~piSLs9g7@N6sI-m3*eVh}o
+zW6yPB`q2AV`u~)Z`u~(cA78-VB^qn^p2#KaF44B$FA47vAM{(Ncz3vdANUYI_Vq~T
+zJFok7_+8Hr{@dw6AD4;m*uMzx*i#=x;yd<VQBUIaym%dZzk)u#fWJ#L*6_E}FJX6y
+zR{!R@|ExhDui;aE=k$%!$6N58@;j%mqz`GsGuYJ*`gjJP^1JEGWequh2}}9ibmmGQ
+z`krwX_ipJ!*U+x(reg27kUpdjX`!D1>7##b#EsTQ`Va%U4)il1ee|!5xY623A7Vh)
+zfqn+0kN&k0H(DF%Lk#FT(9eMM(Z4q0Mr$K|hyh&(`Wcv*KJ@;s-aDDpdnZ93Q+a<^
+z`j9>*rH}Wyw|@5N=h^$%`<z>~{m%qin`x{~&_)6OkZ858w2#x+NA1ID_95uwC47}=
+zz52*T_`_V+ZoXxF%76dsKew<oecZR}82QUk$J(XkqFq?rVsrM=+dI91F>*dfeUR^p
+zOs8;+{5;gLHn&=|ON(1<&R+VEKDzjZ2Kw$F(#J>m?+&_ubg5)Jru)Zfp6{oApOQYd
+zwa^ujKBNz5CFMK%pzr4xvxIHj*iUG$U^$H6v1y&(p%Guen9G_f*dx5vTC9wj2G56n
+z|5yYq@Of%s<Hq`6AI$y@fakh_U0A;Ni03elS1=yhthu+C<>UB*F_<5lxjeqIJnut3
+z$IoG`U%^;I&v~(rw(xbnjlQMNoBDNqtoebp40e+5=NOml8^f{p%x`^%M%@zTb9U92
+zey`caUXzcCKJMFfjC?Z2I$CbIXp=9ClcgtjY;nf67)H!$*JzV-%cp;I=eWXg*SM{G
+z<g|2%V~)!lp64;Nt>)excV35he&noN-o;q_P5nGz@Fe=cxFsxRdfmf(i(%wkbmVOi
+z<GmvulgFhoW*&QO%(TX~{yvYo+;Ngy9%9Bgxif~z9^;-Z_AjlDKIHhib%?RP2szXo
+zb1ZKaayY(coc$}-*dLD9FsrNkam>0$*aBw#8>@*ua-LwUy=ULlxgBeMVC(4mz?d=L
+z_l$AfL*EMCbKYVYeX+I**76U1IV`@fly#^3k7J@WwoB=3qAm}dkd@q$&?aw;nHAPY
+zkGSW%b<U`^)n{WM$234rTl(r4|H<k?-x@VGuhRF0{=)U=9sRs-S^X9J$Kr45=K*VE
+z?x@dK7_WdC|75w=hTj*&HZG^d4C4MiQTjTz(eKCSdA4$}-^NU9?0BsB7<EJRv5M<>
+zjM~z1wy>NiUh`*t=0grOa$~XBqwf(`bL{&Nv(L)Dt+i$hM%}T0Ywn2gyzFaqH+62u
+znjhFYg+6XEuIZ!mnU_qvoEF0_&M_9A1#2Vj?;)kd&10{Pnbz3W-{(;`L?3xqJ!<_u
+zq|pK5ox157qc4Ur$oM{eY<ASIP~Xx3bHlid(;DrJ#oyG=1J0<AOW0kav99wzjQAR6
+z`Y5~h4E?#wX&8>;RaY%z$lG}i?DabAc{6t3SU!%Lz54L^aXXxotd-Wsw#6;B%OjUM
+zD?;50zR?BR9J{qHINtkNk>fv?*DlXfkI5XH*VMTkYkuIY=KN6KHP49M!q(h-<VYWW
+zLC^-DH?WQ4)wtdAz7+ZEP_y$|;Kr`MgL4d5yYXXo?W<x{=lvjcT_Syye%-B&oGX~!
+zW14-9bW>S=?Dw6+?RztJJVw_s>il&!w;aSvSk0-$y1eBu-};Bt`kXMv2A<sC!l)bG
+zQ%nb~b#d{XpA~t{XF&S`wt&^23BL6loVw@AAFds+>%V`jj1%vpoYuag&vZk-^mW!o
+z{6l{K=$sQ6J4jooBdbp^vdU+vg?&!%Lto8v6gS<p*3sv%&2eF-hXQTt&W>B3NxTo|
+zJ$0?XuD>^IF^>ND-+x>CivCBKX=F=Z==0BJ%qu%s7{p9R-CoAQ)Ykbp4&p1v+l7tI
+ze2ZJmd-QdlGs;=m81zx!;LnQM`!EhYwMczD`tjIK-E-v+*Av$l%x)axyw+1Q)CIlg
+zpM1yqC=fG!(BE)O{-I56_<INY%evG32YWu48COQeJ6T1%gpnoM6RdT;#c>h(*uRR#
+zY-)Yn+8oQ(mKHZ3`i<p!4%SDH{&lEtt)tJeHuC&D>#-1P*4OgH`*7Y<*NSTlW~l?u
+z_^$TWzM?kP5H+#s8MCx~HSd@q%j9RD)x0AwhZ#4y8?Rv;{hN@pf@l0b9J7w+TUZ@E
+zj+<H^_ig0Zm>gprYP!Z|KdsSc$gk`Cn0;;JbB;C+{UXjy-E-v+*ORR^SdQ-lUL&6M
+zE`2O_=z-(-dq`>LH1C-49PDc6tVLb!*r{V7-Y|}SUhiYZIQE8p%=dqYHMKtO+pL3i
+zjmdEt=NMNo`wWHEBeo9lt#z~<?~%K5<8;=D_u;&!u9e>laJ+!s!q&m=;i;P(W_sz|
+zBlPomtc10+gk#qFF$;fAwz2;Oj7$x+MW|c2nmQKZxy4=HEn;Mob_2U$U;Kx7t2XYp
+zW90GN9LL7I568{8;kbmqa&-lc87nNd%d-|%1?#Ly-E-v+*Av(!|E7m#AN`)8pWK^1
+zntzY?IclF~1)z(S(?_E{e>U+xocGkVirDA1zqJQA=ChN3KDzOHqxR`m0J^w<*>l{g
+z?@XzCuKeM83jEu>fu366a~1CyYgpX3=-Vg7kFx^M1fQvL7@yhf*{XNl#rtsHQ`d?+
+z3Jt6x9e7RncENo8opuGF3A<;QHd_C`JU)Bso-2R2o@}k54}K5X^yq~5lcnX#pLPYH
+z5BttRos|2|Cf<khp1M}?+Cv8mSnjO#eI(A;@rPf5)IC@J>GY(v)!K>yF(3xSfEW-1
+zVn7Ut0Wly3#DEwO17bi7hygJm2E>3E5CdXB42S_SAO^&M7!U(uKn#chF(3xSfEW-1
+pVn7Ut0Wly3rpJK2`Txh?|LN;LKmWt?-@f?SH@|xR>#u*F{Rp+*(8>S+
+
+literal 0
+HcmV?d00001
+
+diff --git a/tests/tga/tga_read_rgb_rle.tga b/tests/tga/tga_read_rgb_rle.tga
+new file mode 100644
+index 0000000000000000000000000000000000000000..ce845ad0c3da65205af25854d64568b1cf0921e3
+GIT binary patch
+literal 9987
+zcmeI2J!~9R5Xbk<L5NgWrh*l6K@rf2A`LFK334O|$EPT_a+TuJx!kjzIGiJ2I<P>x
+ziiRRbk%9(oq!dtCIspYA&6UugGcC>X|IOQdZ+$+;#>5ek&eFVnJ3DVa{%>aX?a5Je
+zF>-%5qwk}eQT$4wzvw%Lr!o5$L%T1%_;U0&GrMhYD|*=1u+QBMI7bBz5GWAXUI?5o
+z4)=h152)YuP~W$``}B?1quuDQ!tKvI-d*GdmoNVj?N0AU(FV5-mWdwpH55x49>GD6
+z=%BBmXlU4mV>@qJ8fX!<cQoubnZc3TbVtK}?@1Y0!9an5mD0dE28xA&sM>=CL?@={
+z0-|RLqE&j)8olUxtrw;AqBVNamHEBs60Ks5R&l9p6>VC@T4)u!Z+{g<yLY2MYn^Q1
+zd9ELFE4tU$u)n0?3plJ1J?v}PZ)msyr`8V<5?$KSu-0S-M?&o#4QoBb4;grXfdT`M
+zN=c*-Fi>D%n-xb5tYDzPz)HDn9RtO}K-2&bfLTDa$ReF=%5-@43+;@(Xqh_Lqg5;e
+zg}THltzs{<ie37oodrXq8PIa=9O>E>BBIs4hP5RP*Wqxy6Qz9`Y(v8pI6+HwtX$ra
+zy1k}`<+7Ep?x=h3^=RRT3_QR<fq_Rg0|yu=Ft9z}zzPNm46Kv})-g~l4EUq{0-{A0
+z@uf#ui57)+Y^yj$Kb#Ty+&-!K64#`N?AC_rx07^75BGbIkyuBfFo`X6d}cobiI>AG
+z_yH!{gxCD>ho1(boNM2tG;8-@MK-H=sqwzy_Dk<p<<Y;ghphqw-d=+40((iXvX>d}
+zeC*AO?;PyiJI7egrh5aA*tASEv0P|sHWdv;37nkl7;GWQvslElsh1w>E)mVkrK5Wr
+zvyT~j8_(=*6BF=71Iw<4W?fOstUs?=BFaQ*Da#xiBX|}K8QkJdG}zFPqlKLAcr83*
+zWg<d$C_)R@Zt(9GMk4VnKb+4e=emmuJZ@>Q+HzQdV{TOj;%(7%jzp+KJSs$|sS9Fk
+zi>8|_;%+MHn6)L%h}LxJYN%Lsjm=l2JEG}rgt!}vT81WTD?iXN22oo(>Q%FW$7$$!
+zt&?$T0IopDHZ|A}nmLfzok8W3vju;nlA35T-r~-!Mh%-@xp^A6E=V4LfMg^hw4o2J
+zZI)js`N&kV*g%#wDTZ~m<nWLi1ePizuWxAjE=soYvC=mb&tTOxu05X^q<~*Zj<9wL
+zP=$-ZWz~5>cOy6~E}sky$N;c`=y|Ej2+1ZQ2f9i4w?h@e2{8NMT~!94nB@itGuLH}
+zXVpo_fLn+Ny=`_6ub%qVxz9IOHOQr&m-w|E<2CfOb2=CaIW-6=RoY?8DbvigNhHcJ
+zG#i_20Ls>TP|sG<1T!>Hm<6C_+a^z4YoiJ>5de05QI0M6IheVSK%5>}CEC#MwBHBI
+ziIa1Wpa&iZ_r@?tJkJ5<afw}YS{54Q*|ADIR<0rq7ju0Ezq{lB$w1gObbznQZdZVC
+zC{fEsk6_CHMd|PuWL7zD?Gbil$1PB(y&Zkn_I|ZCmODo!ml!;5_YN=f8&f%XLJ69i
+zw+YreoXy~Iho>|{-W{nZBP!8&Q$t}P*I~(hRwZ6%$Lp+>-V88<W1vX?KTsG@4Mp7*
+zP43JO--G~U!gJBc0<A+dG0?19zUEwf+}?LWRX6~j_TKxg%r*$-xiTt}Yajv!vcmP)
+zqnTh(gvtWBmMHdlF_;5HXb)v)Q_z7o(;nJBIi5s&D7DGOkh+Oa-OSuJgOmf2R1I-V
+zRL&L6j_DV<hr<B?9Mn_S!{H7Uhx4N2TcLZ}5FFv{ZJA>rG8_ARaUB|->lMt--ZnEI
+zTJ7{U4;S{j2Ay9PTlySLkZpPkSyjD9xB@11Gqz?H&}bm6INZyXa|<usjtD%sjy+Z`
+zO^{AKuWKHIUn2Ss=N8*9c5f<jyF%cp-^Zcb5%Fp{gGhMmxXnNb1>}y*$KYeSt=BT^
+z9)n8f69who6DC3I4i6#*smWsw#8aACPLFDXvaYploY`rTzv^v6%`=fZ=~tM<Gx7U2
+zGVu^u%W!94&zt&L+f3G5W^S(`9GhA$F^gxQaDFP%)PFP84q_$@7HzQb60>~+#d%*t
+zf%)V_G>Dlk3}01X6V9YA0}KH#x+MuyPXYm7$4BlC*YhI}#g|)Uh0-v*i7ggcv&@^C
+zjYO%ac80KpJfmhZkwXX$pH_*;t&cQIT_(xF6ht!Iic3UdT(%7ihfT|wtXWA&V1Sf;
+zU3WEU`G(*m{rfc5Lu-SUf;0gW_gTQ5!wKEEk(Qj)=S2;}8FVa^9uYEg=U`?TJS&;e
+zZ|IGrGhpnT4H$<N0L>R>%fn7eg+%K9in1ezX3K%Y`r6i<mRK!fyE0L3T&%#2e?}WI
+zcSMQE6&v2hGddfHYR&MD28%5H1s1ZQZU%;X@Wf!oTq<&1f;-%4`%tL#0yUz{`gTy@
+x8%~Vp2_Ce5$E=Cyg!2^tf$X%_aF4$a-uv+CN7vrJ_RjTJKYsJtTUTF;{sH~|7$pDz
+
+literal 0
+HcmV?d00001
+
+--
+2.10.2
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/gd/gd_2.2.3.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/gd/gd_2.2.3.bb
index c5aff6616..562170694 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/gd/gd_2.2.3.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/gd/gd_2.2.3.bb
@@ -13,7 +13,14 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=c97638cafd3581eb87abd37332137669"
DEPENDS = "freetype libpng jpeg zlib tiff"
SRC_URI = "git://github.com/libgd/libgd.git;branch=GD-2.2 \
- file://fix-gcc-unused-functions.patch"
+ file://fix-gcc-unused-functions.patch \
+ file://CVE-2016-10166.patch \
+ file://CVE-2016-10167.patch \
+ file://CVE-2016-10168.patch \
+ file://.gitignore-the-new-test-case.patch \
+ file://Fix-290-TGA-RLE-decoding-is-broken.patch;apply=no \
+ file://CVE-2016-6906-1.patch;apply=no \
+ file://CVE-2016-6906-2.patch;apply=no"
SRCREV = "46ceef5970bf3a847ff61d1bdde7501d66c11d0c"
@@ -32,6 +39,19 @@ EXTRA_OECONF += " --disable-rpath \
EXTRA_OEMAKE = 'LDFLAGS="${LDFLAGS}"'
+do_git_apply () {
+ cd ${S}
+ if [ ! -f tests/tga/tga_read_rgb.png ]; then
+ git apply ${S}/../Fix-290-TGA-RLE-decoding-is-broken.patch
+ git apply ${S}/../CVE-2016-6906-1.patch
+ git apply ${S}/../CVE-2016-6906-2.patch
+ fi
+}
+
+do_patch_append() {
+ bb.build.exec_func('do_git_apply', d)
+}
+
do_install_append() {
# cleanup buildpaths from gdlib.pc
sed -i -e 's#${STAGING_DIR_HOST}##g' ${D}${libdir}/pkgconfig/gdlib.pc
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/gflags/gflags_2.1.2.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/gflags/gflags_2.2.0.bb
index da82599c7..0e85b3f11 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/gflags/gflags_2.1.2.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/gflags/gflags_2.2.0.bb
@@ -5,17 +5,17 @@ HOMEPAGE = "https://github.com/gflags/gflags"
LICENSE = "BSD-3-Clause"
LIC_FILES_CHKSUM = "file://COPYING.txt;md5=c80d1a3b623f72bb85a4c75b556551df"
-SRC_URI = "https://github.com/gflags/gflags/archive/v${PV}.tar.gz"
-SRC_URI[md5sum] = "ac432de923f9de1e9780b5254884599f"
-SRC_URI[sha256sum] = "d8331bd0f7367c8afd5fcb5f5e85e96868a00fd24b7276fa5fcee1e5575c2662"
-S = "${WORKDIR}/${PN}-${PV}/"
+SRC_URI = "git://github.com/gflags/gflags.git"
+SRCREV = "f8a0efe03aa69b3336d8e228b37d4ccb17324b88"
+
+S = "${WORKDIR}/git"
FILES_${PN}-dev += "${libdir}/cmake"
inherit cmake
-EXTRA_OECMAKE="-DBUILD_SHARED_LIBS=ON"
+EXTRA_OECMAKE="-DBUILD_SHARED_LIBS=ON -DREGISTER_INSTALL_PREFIX=OFF -DLIB_INSTALL_DIR=${baselib}"
PACKAGES =+ "${PN}-bash-completion"
FILES_${PN}-bash-completion += "${bindir}/gflags_completions.sh"
-RDEPENDS_${PN}-bash-completion = "bash-completion"
+RDEPENDS_${PN}-bash-completion = "bash bash-completion"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/gnulib/gnulib_git.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/gnulib/gnulib_git.bb
index 5b2ed49ea..c7c7ae850 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/gnulib/gnulib_git.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/gnulib/gnulib_git.bb
@@ -12,8 +12,11 @@ LICENSE = "LGPLv2+"
LIC_FILES_CHKSUM = "file://COPYING;md5=e4cf3810f33a067ea7ccd2cd889fed21"
SRCREV = "b6b3ed1fa4c6de12908a9f01d1689f156c3cd441"
+PV = "0.1.496+git${SRCPV}"
+
SRC_URI = "git://git.sv.gnu.org/gnulib;protocol=git \
"
+
S = "${WORKDIR}/git"
do_install () {
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools/0001-Fix-build-failure-for-ppc.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools/0001-Fix-build-failure-for-ppc.patch
new file mode 100644
index 000000000..27f855d1e
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools/0001-Fix-build-failure-for-ppc.patch
@@ -0,0 +1,28 @@
+Subject: Fix build failure for ppc
+
+Upstream-Status: Pending
+
+Fix the following build failure.
+
+ error: 'siginfo_t' does not name a type
+
+Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
+---
+ src/stacktrace_powerpc-linux-inl.h | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/src/stacktrace_powerpc-linux-inl.h b/src/stacktrace_powerpc-linux-inl.h
+index 5d16fa1..a9bf775 100644
+--- a/src/stacktrace_powerpc-linux-inl.h
++++ b/src/stacktrace_powerpc-linux-inl.h
+@@ -44,6 +44,7 @@
+
+ #include <stdint.h> // for uintptr_t
+ #include <stdlib.h> // for NULL
++#include <signal.h> // for siginfo_t
+ #include <gperftools/stacktrace.h>
+ #include <base/vdso_support.h>
+
+--
+2.8.3
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools/0001-Support-Atomic-ops-on-clang.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools/0001-Support-Atomic-ops-on-clang.patch
new file mode 100644
index 000000000..e582c0da6
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools/0001-Support-Atomic-ops-on-clang.patch
@@ -0,0 +1,33 @@
+From ea9f64eb2cdf3be6c4dc65fa1472d854616e43ca Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Mon, 6 Mar 2017 13:38:46 -0800
+Subject: [PATCH] Support Atomic ops on clang
+
+clang pretends to be gcc 4.2 which is a lie
+it actually supports a lot more features then
+gcc 4.2, here it depends on gcc 4.7 to enable
+the atomics and fails for clang
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+Upstream-Status: Pending
+
+ src/base/atomicops.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/base/atomicops.h b/src/base/atomicops.h
+index be038f3..f1a21ff 100644
+--- a/src/base/atomicops.h
++++ b/src/base/atomicops.h
+@@ -118,7 +118,7 @@
+ #include "base/atomicops-internals-linuxppc.h"
+ #elif defined(__GNUC__) && defined(__mips__)
+ #include "base/atomicops-internals-mips.h"
+-#elif defined(__GNUC__) && GCC_VERSION >= 40700
++#elif defined(__GNUC__) && GCC_VERSION >= 40700 || defined(__clang__)
+ #include "base/atomicops-internals-gcc.h"
+ #else
+ #error You need to implement atomic operations for this architecture
+--
+2.12.0
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools/0001-Use-ucontext_t-instead-of-struct-ucontext.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools/0001-Use-ucontext_t-instead-of-struct-ucontext.patch
new file mode 100644
index 000000000..5bd0b6fa4
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools/0001-Use-ucontext_t-instead-of-struct-ucontext.patch
@@ -0,0 +1,36 @@
+From 12ac0dc6742e1bcdfaf1842186c9002f0820a5e8 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 1 Jul 2017 13:21:21 -0700
+Subject: [PATCH] Use ucontext_t instead of struct ucontext
+
+Newer glibc has dropped the ucontext tag from exposing
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/stacktrace_powerpc-linux-inl.h | 3 +--
+ 1 file changed, 1 insertion(+), 2 deletions(-)
+
+diff --git a/src/stacktrace_powerpc-linux-inl.h b/src/stacktrace_powerpc-linux-inl.h
+index a9bf775..47ff2d7 100644
+--- a/src/stacktrace_powerpc-linux-inl.h
++++ b/src/stacktrace_powerpc-linux-inl.h
+@@ -53,7 +53,6 @@
+ #elif defined(HAVE_UCONTEXT_H)
+ #include <ucontext.h> // for ucontext_t
+ #endif
+-typedef ucontext ucontext_t;
+
+ // PowerPC64 Little Endian follows BE wrt. backchain, condition register,
+ // and LR save area, so no need to adjust the reading struct.
+@@ -202,7 +201,7 @@ static int GET_STACK_TRACE_OR_FRAMES {
+ struct rt_signal_frame_32 {
+ char dummy[64 + 16];
+ siginfo_t info;
+- struct ucontext uc;
++ ucontext_t uc;
+ // We don't care about the rest, since IP value is at 'uc' field.A
+ } *sigframe = reinterpret_cast<rt_signal_frame_32*>(current);
+ result[n] = (void*) sigframe->uc.uc_mcontext.uc_regs->gregs[PT_NIP];
+--
+2.13.2
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools_2.5.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools_2.5.bb
index 2e4479c9d..43780a5ee 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools_2.5.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/gperftools/gperftools_2.5.bb
@@ -4,7 +4,11 @@ LICENSE = "BSD"
LIC_FILES_CHKSUM = "file://COPYING;md5=762732742c73dc6c7fbe8632f06c059a"
DEPENDS = "libunwind"
-SRC_URI = "http://pkgs.fedoraproject.org/repo/pkgs/gperftools/gperftools-2.5.tar.gz/aa1eaf95dbe2c9828d0bd3a00f770f50/gperftools-2.5.tar.gz"
+SRC_URI = "http://pkgs.fedoraproject.org/repo/pkgs/gperftools/gperftools-2.5.tar.gz/aa1eaf95dbe2c9828d0bd3a00f770f50/gperftools-2.5.tar.gz \
+ file://0001-Support-Atomic-ops-on-clang.patch \
+ file://0001-Fix-build-failure-for-ppc.patch \
+ file://0001-Use-ucontext_t-instead-of-struct-ucontext.patch \
+ "
SRC_URI[md5sum] = "aa1eaf95dbe2c9828d0bd3a00f770f50"
SRC_URI[sha256sum] = "6fa2748f1acdf44d750253e160cf6e2e72571329b42e563b455bde09e9e85173"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/gpm/gpm-1.99.7/eglibc-2.17.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/gpm/gpm-1.99.7/eglibc-2.17.patch
deleted file mode 100644
index e43bdcb22..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/gpm/gpm-1.99.7/eglibc-2.17.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-Upstream-Status: pending
-
---- gpm-1.99.7.orig/src/daemon/open_console.c 2008-07-24 12:33:05.000000000 +0200
-+++ gpm-1.99.7/src/daemon/open_console.c 2013-01-10 12:39:47.975461947 +0100
-@@ -23,6 +23,7 @@
- #include <fcntl.h> /* open and co. */
- #include <sys/stat.h> /* stat() */
- #include <sys/ioctl.h> /* ioctl() */
-+#include <sys/types.h> /* major() */
-
- /* Linux specific (to be outsourced in gpm2 */
- #include <linux/serial.h> /* for serial console check */
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/gpm/gpm-1.99.7/remove_nested_functions.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/gpm/gpm-1.99.7/remove_nested_functions.patch
deleted file mode 100644
index d2d6cb8a8..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/gpm/gpm-1.99.7/remove_nested_functions.patch
+++ /dev/null
@@ -1,326 +0,0 @@
-Remove nested functions, they are not available in all compilers
-e.g. clang will not support them.
-
-Upstream-Status: Pending
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-
-Index: gpm-1.99.7/src/drivers/summa/i.c
-===================================================================
---- gpm-1.99.7.orig/src/drivers/summa/i.c
-+++ gpm-1.99.7/src/drivers/summa/i.c
-@@ -36,6 +36,28 @@ extern int summamaxy;
-
- extern signed char summaid;
-
-+static void resetsumma(int fd)
-+{
-+ write(fd, 0, 1); /* Reset */
-+ usleep(400000); /* wait */
-+}
-+
-+static int waitsumma(int fd)
-+{
-+ struct timeval timeout;
-+
-+ fd_set readfds;
-+
-+ int err;
-+
-+ FD_ZERO(&readfds);
-+ FD_SET(fd, &readfds);
-+ timeout.tv_sec = 0;
-+ timeout.tv_usec = 200000;
-+ err = select(FD_SETSIZE, &readfds, NULL, NULL, &timeout);
-+ return (err);
-+}
-+
- Gpm_Type *I_summa(int fd, unsigned short flags, struct Gpm_Type *type, int argc,
- char **argv)
- {
-@@ -43,24 +65,6 @@ Gpm_Type *I_summa(int fd, unsigned short
- flags = argc = 0; /* FIXME: 1.99.13 */
- argv = NULL;
-
-- void resetsumma() {
-- write(fd, 0, 1); /* Reset */
-- usleep(400000); /* wait */
-- }
-- int waitsumma() {
-- struct timeval timeout;
--
-- fd_set readfds;
--
-- int err;
--
-- FD_ZERO(&readfds);
-- FD_SET(fd, &readfds);
-- timeout.tv_sec = 0;
-- timeout.tv_usec = 200000;
-- err = select(FD_SETSIZE, &readfds, NULL, NULL, &timeout);
-- return (err);
-- }
- int err;
-
- char buffer[255];
-@@ -91,7 +95,7 @@ Gpm_Type *I_summa(int fd, unsigned short
- */
- setspeed(fd, 1200, 9600, 1,
- B9600 | CS8 | CREAD | CLOCAL | HUPCL | PARENB | PARODD);
-- resetsumma();
-+ resetsumma(fd);
-
- write(fd, SS_PROMPT_MODE, strlen(SS_PROMPT_MODE));
-
-@@ -103,7 +107,7 @@ Gpm_Type *I_summa(int fd, unsigned short
- * read the Summa Firm-ID
- */
- write(fd, SS_FIRMID, strlen(SS_FIRMID));
-- err = waitsumma();
-+ err = waitsumma(fd);
- if(!((err == -1) || (!err))) {
- summaid = 10; /* Original Summagraphics */
- read(fd, buffer, 255); /* Read Firm-ID */
-@@ -111,14 +115,14 @@ Gpm_Type *I_summa(int fd, unsigned short
- }
-
- if(summaid < 0) { /* Genius-test */
-- resetsumma();
-+ resetsumma(fd);
- write(fd, GEN_MMSERIES, 1);
- write(fd, &GEN_MODELL, 1); /* Read modell */
-- err = waitsumma();
-+ err = waitsumma(fd);
- if(!((err == -1) || (!err))) { /* read Genius-ID */
-- err = waitsumma();
-+ err = waitsumma(fd);
- if(!((err == -1) || (!err))) {
-- err = waitsumma();
-+ err = waitsumma(fd);
- if(!((err == -1) || (!err))) {
- read(fd, &config, 1);
- summaid = (config[0] & 224) >> 5; /* genius tablet-id
-@@ -135,14 +139,14 @@ Gpm_Type *I_summa(int fd, unsigned short
- * unknown tablet ?
- */
- if((summaid < 0) || (summaid == 11)) {
-- resetsumma();
-+ resetsumma(fd);
- write(fd, SS_BINARY_FMT SS_PROMPT_MODE, 3);
- }
-
- /*
- * read tablet size
- */
-- err = waitsumma();
-+ err = waitsumma(fd);
- if(!((err == -1) || (!err)))
- read(fd, buffer, sizeof(buffer));
- write(fd, SS_READCONFIG, 1);
-Index: gpm-1.99.7/src/drivers/wacom/i.c
-===================================================================
---- gpm-1.99.7.orig/src/drivers/wacom/i.c
-+++ gpm-1.99.7/src/drivers/wacom/i.c
-@@ -30,10 +30,6 @@
- #include "message.h" /* gpm_report */
- #include "wacom.h" /* wacom */
-
--Gpm_Type *I_wacom(int fd, unsigned short flags, struct Gpm_Type *type, int argc,
-- char **argv)
--{
--
- /* wacom graphire tablet */
- #define UD_RESETBAUD "\r$" /* reset baud rate to default (wacom V) */
- /*
-@@ -45,83 +41,91 @@ Gpm_Type *I_wacom(int fd, unsigned short
- #define UD_COORD "~C\r" /* Request max coordinates */
- #define UD_STOP "\nSP\r" /* stop sending coordinates */
-
-- flags = 0; /* FIXME: 1.99.13 */
-
-- void reset_wacom() {
-- /*
-- * Init Wacom communication; this is modified from xf86Wacom.so module
-- */
-- /*
-- * Set speed to 19200
-- */
-- setspeed(fd, 1200, 19200, 0, B19200 | CS8 | CREAD | CLOCAL | HUPCL);
-- /*
-- * Send Reset Baudrate Command
-- */
-- write(fd, UD_RESETBAUD, strlen(UD_RESETBAUD));
-- usleep(250000);
-- /*
-- * Send Reset Command
-- */
-- write(fd, UD_RESET, strlen(UD_RESET));
-- usleep(75000);
-- /*
-- * Set speed to 9600bps
-- */
-- setspeed(fd, 1200, 9600, 0, B9600 | CS8 | CREAD | CLOCAL | HUPCL);
-- /*
-- * Send Reset Command
-- */
-- write(fd, UD_RESET, strlen(UD_RESET));
-- usleep(250000);
-- write(fd, UD_STOP, strlen(UD_STOP));
-- usleep(100000);
-- }
-+static void reset_wacom(int fd)
-+{
-+ /*
-+ * Init Wacom communication; this is modified from xf86Wacom.so module
-+ */
-+ /*
-+ * Set speed to 19200
-+ */
-+ setspeed(fd, 1200, 19200, 0, B19200 | CS8 | CREAD | CLOCAL | HUPCL);
-+ /*
-+ * Send Reset Baudrate Command
-+ */
-+ write(fd, UD_RESETBAUD, strlen(UD_RESETBAUD));
-+ usleep(250000);
-+ /*
-+ * Send Reset Command
-+ */
-+ write(fd, UD_RESET, strlen(UD_RESET));
-+ usleep(75000);
-+ /*
-+ * Set speed to 9600bps
-+ */
-+ setspeed(fd, 1200, 9600, 0, B9600 | CS8 | CREAD | CLOCAL | HUPCL);
-+ /*
-+ * Send Reset Command
-+ */
-+ write(fd, UD_RESET, strlen(UD_RESET));
-+ usleep(250000);
-+ write(fd, UD_STOP, strlen(UD_STOP));
-+ usleep(100000);
-+}
-
-- int wait_wacom() {
-- /*
-- * Wait up to 200 ms for Data from Tablet.
-- * Do not read that data.
-- * Give back 0 on timeout condition, -1 on error and 1 for DataPresent
-- */
-- struct timeval timeout;
--
-- fd_set readfds;
--
-- int err;
--
-- FD_ZERO(&readfds);
-- FD_SET(fd, &readfds);
-- timeout.tv_sec = 0;
-- timeout.tv_usec = 200000;
-- err = select(FD_SETSIZE, &readfds, NULL, NULL, &timeout);
-- return ((err > 0) ? 1 : err);
-- }
-+static int wait_wacom(int fd)
-+{
-+ /*
-+ * Wait up to 200 ms for Data from Tablet.
-+ * Do not read that data.
-+ * Give back 0 on timeout condition, -1 on error and 1 for DataPresent
-+ */
-+ struct timeval timeout;
-
-- char buffer[50], *p;
-+ fd_set readfds;
-
-- int RequestData(char *cmd) {
-- int err;
-+ int err;
-
-- /*
-- * Send cmd if not null, and get back answer from tablet.
-- * Get Data to buffer until full or timeout.
-- * Give back 0 for timeout and !0 for buffer full
-- */
-- if(cmd)
-- write(fd, cmd, strlen(cmd));
-- memset(buffer, 0, sizeof(buffer));
-- p = buffer;
-- err = wait_wacom();
-- while(err != -1 && err && (p - buffer) < (int) (sizeof(buffer) - 1)) {
-- p += read(fd, p, (sizeof(buffer) - 1) - (p - buffer));
-- err = wait_wacom();
-- }
-- /*
-- * return 1 for buffer full
-- */
-- return ((strlen(buffer) >= (sizeof(buffer) - 1)) ? !0 : 0);
-+ FD_ZERO(&readfds);
-+ FD_SET(fd, &readfds);
-+ timeout.tv_sec = 0;
-+ timeout.tv_usec = 200000;
-+ err = select(FD_SETSIZE, &readfds, NULL, NULL, &timeout);
-+ return ((err > 0) ? 1 : err);
-+}
-+
-+static int RequestData(int fd, char *cmd, char *buffer)
-+{
-+ int err;
-+ char *p;
-+ /*
-+ * Send cmd if not null, and get back answer from tablet.
-+ * Get Data to buffer until full or timeout.
-+ * Give back 0 for timeout and !0 for buffer full
-+ */
-+ if(cmd)
-+ write(fd, cmd, strlen(cmd));
-+ memset(buffer, 0, sizeof(buffer));
-+ p = buffer;
-+ err = wait_wacom(fd);
-+ while(err != -1 && err && (p - buffer) < (int) (sizeof(buffer) - 1)) {
-+ p += read(fd, p, (sizeof(buffer) - 1) - (p - buffer));
-+ err = wait_wacom(fd);
- }
-+ /*
-+ * return 1 for buffer full
-+ */
-+ return ((strlen(buffer) >= (sizeof(buffer) - 1)) ? !0 : 0);
-+}
-+
-+Gpm_Type *I_wacom(int fd, unsigned short flags, struct Gpm_Type *type, int argc,
-+ char **argv)
-+{
-+
-+ flags = 0; /* FIXME: 1.99.13 */
-+
-+ char buffer[50];
-
- /*
- * We do both modes, relative and absolute, with the same function.
-@@ -143,17 +147,17 @@ Gpm_Type *I_wacom(int fd, unsigned short
- };
- parse_argv(optioninfo, argc, argv);
- type->absolute = WacomAbsoluteWanted;
-- reset_wacom();
-+ reset_wacom(fd);
-
- /*
- * "Flush" input queque
- */
-- while(RequestData(NULL)) ;
-+ while(RequestData(fd, NULL, buffer)) ;
-
- /*
- * read WACOM-ID
- */
-- RequestData(UD_FIRMID);
-+ RequestData(fd, UD_FIRMID, buffer);
-
- /*
- * Search for matching modell
-@@ -180,7 +184,7 @@ Gpm_Type *I_wacom(int fd, unsigned short
- * read Wacom max size
- */
- if(WacomModell != (-1) && (!wcmodell[WacomModell].maxX)) {
-- RequestData(UD_COORD);
-+ RequestData(fd, UD_COORD, buffer);
- sscanf(buffer + 2, "%d,%d", &wmaxx, &wmaxy);
- wmaxx = (wmaxx - wcmodell[WacomModell].border);
- wmaxy = (wmaxy - wcmodell[WacomModell].border);
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/gpm/gpm/gpm.service.in b/import-layers/meta-openembedded/meta-oe/recipes-support/gpm/gpm/gpm.service.in
new file mode 100644
index 000000000..ee6c040fa
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/gpm/gpm/gpm.service.in
@@ -0,0 +1,9 @@
+[Unit]
+Description=Virtual console mouse server
+
+[Service]
+Type=forking
+ExecStart=@bindir@/gpm -m /dev/input/mice -t imps2
+
+[Install]
+WantedBy=multi-user.target
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/gpm/gpm-1.99.7/init b/import-layers/meta-openembedded/meta-oe/recipes-support/gpm/gpm/init
index 2dcf9ab04..2dcf9ab04 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/gpm/gpm-1.99.7/init
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/gpm/gpm/init
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/gpm/gpm-1.99.7/no-docs.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/gpm/gpm/no-docs.patch
index f10217a94..3faef84ee 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/gpm/gpm-1.99.7/no-docs.patch
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/gpm/gpm/no-docs.patch
@@ -11,7 +11,7 @@ Index: gpm-1.99.7/Makefile.in
# user-overridable flags, but it's also all the implicit rule looks at.
# missing ?
--SUBDIRS = src doc contrib gpm2
+-SUBDIRS = src doc contrib
+SUBDIRS = src
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/gpm/gpm-1.99.7/processcreds.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/gpm/gpm/processcreds.patch
index d647eca0a..d647eca0a 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/gpm/gpm-1.99.7/processcreds.patch
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/gpm/gpm/processcreds.patch
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/gpm/gpm_1.99.7.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/gpm/gpm_1.99.7.bb
deleted file mode 100644
index bbb8c28ac..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/gpm/gpm_1.99.7.bb
+++ /dev/null
@@ -1,53 +0,0 @@
-DESCRIPTION = "GPM (General Purpose Mouse) is a mouse server \
-for the console and xterm, with sample clients included \
-(emacs, etc)."
-SECTION = "console/utils"
-LICENSE = "GPLv2+"
-LIC_FILES_CHKSUM = "file://gpm2/core/main.c;endline=19;md5=66d3c205c4e7ee5704b2ee351dfed72f"
-
-PR = "r2"
-
-DEPENDS = "ncurses"
-
-SRC_URI = "ftp://arcana.linux.it/pub/gpm/gpm-${PV}.tar.bz2 \
- file://no-docs.patch \
- file://processcreds.patch \
- file://eglibc-2.17.patch \
- file://remove_nested_functions.patch \
- file://init"
-
-inherit autotools-brokensep update-rc.d
-
-INITSCRIPT_NAME = "gpm"
-INITSCRIPT_PARAMS = "defaults"
-
-#export LIBS = "-lm"
-
-# all fields are /* FIXME: gpm 1.99.13 */
-# gpm-1.99.7/src/lib/libhigh.c:171:43: error: parameter 'clientdata' set but not used [-Werror=unused-but-set-parameter]
-# gpm-1.99.7/src/lib/report-lib.c:28:21: error: parameter 'line' set but not used [-Werror=unused-but-set-parameter]
-# gpm-1.99.7/src/lib/report-lib.c:28:33: error: parameter 'file' set but not used [-Werror=unused-but-set-parameter]
-# gpm-1.99.7/src/drivers/empty/i.c:26:23: error: parameter 'fd' set but not used [-Werror=unused-but-set-parameter]
-# gpm-1.99.7/src/drivers/empty/i.c:26:42: error: parameter 'flags' set but not used [-Werror=unused-but-set-parameter]
-# gpm-1.99.7/src/drivers/etouch/i.c:34:43: error: parameter 'flags' set but not used [-Werror=unused-but-set-parameter]
-# gpm-1.99.7/src/drivers/msc/r.c:32:12: error: variable 'dy' set but not used [-Werror=unused-but-set-variable]
-# gpm-1.99.7/src/drivers/msc/r.c:32:8: error: variable 'dx' set but not used [-Werror=unused-but-set-variable]
-# cc1: all warnings being treated as errors
-CFLAGS += "-Wno-extra -Wno-error=unused-but-set-parameter -Wno-error=unused-but-set-variable"
-
-# twiddler is WIP in 1.99.7 and probably not worth fixing (a lot of changes in gpm-2-dev after 1.99.7
-# gpm-1.99.7/src/drivers/twid/twiddler.c:503:14: error: cast to pointer from integer of different size [-Werror=int-to-pointer-cast]
-# /gpm-1.99.7/src/mice.c:221:5: error: (near initialization for 'mice[32].init') [-Werror]
-CFLAGS += "-Wno-error=int-to-pointer-cast -Wno-error"
-
-do_install () {
- oe_runmake 'DESTDIR=${D}' install
- install -m 0644 src/headers/gpm.h ${D}${includedir}
- install -d ${D}/${sysconfdir}/init.d
- install -m 0755 ${WORKDIR}/init ${D}/${sysconfdir}/init.d/gpm
- cd ${D}${libdir} && ln -sf libgpm.so.1.19.0 libgpm.so.1
-}
-SRC_URI[md5sum] = "9fdddf5f53cb11d40bb2bb671d3ac544"
-SRC_URI[sha256sum] = "6071378b24494e36ca3ef6377606e7e565040413c86704753a162d2180af32ee"
-
-FILES_${PN} += "${datadir}/emacs"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/gpm/gpm_git.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/gpm/gpm_git.bb
new file mode 100644
index 000000000..69f12d9b8
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/gpm/gpm_git.bb
@@ -0,0 +1,45 @@
+DESCRIPTION = "GPM (General Purpose Mouse) is a mouse server \
+for the console and xterm, with sample clients included \
+(emacs, etc)."
+SECTION = "console/utils"
+LICENSE = "GPLv2+"
+LIC_FILES_CHKSUM = "file://COPYING;md5=18810669f13b87348459e611d31ab760"
+
+PV = "1.99.7+git${SRCREV}"
+PR = "r2"
+SRCREV = "1fd19417b8a4dd9945347e98dfa97e4cfd798d77"
+
+DEPENDS = "ncurses"
+
+SRC_URI = "git://github.com/telmich/gpm;protocol=git \
+ file://no-docs.patch \
+ file://processcreds.patch \
+ file://gpm.service.in \
+ file://init"
+
+S = "${WORKDIR}/git"
+
+inherit autotools-brokensep update-rc.d systemd
+
+INITSCRIPT_NAME = "gpm"
+INITSCRIPT_PARAMS = "defaults"
+
+do_configure_prepend() {
+ (cd ${S};./autogen.sh;cd -)
+}
+
+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
+ ln -s libgpm.so.2 ${D}${libdir}/libgpm.so
+}
+
+SYSTEMD_SERVICE_${PN} = "gpm.service"
+
+FILES_${PN} += "${datadir}/emacs"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/hunspell/hunspell_1.3.3.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/hunspell/hunspell_1.3.3.bb
deleted file mode 100644
index 9e6f774e6..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/hunspell/hunspell_1.3.3.bb
+++ /dev/null
@@ -1,18 +0,0 @@
-SUMMARY = "A spell checker and morphological analyzer library"
-HOMEPAGE = "http://hunspell.sourceforge.net/"
-LICENSE = "LGPLv2.1 | GPLv2 | MPLv1.1"
-LIC_FILES_CHKSUM = " \
- file://COPYING;md5=ed3a37b3ba6d6be3e08ab45987cf1b88 \
- file://COPYING.LGPL;md5=d8045f3b8f929c1cb29a1e3fd737b499 \
- file://COPYING.MPL;md5=bfe1f75d606912a4111c90743d6c7325 \
-"
-
-SRC_URI = "${SOURCEFORGE_MIRROR}/project/${BPN}/Hunspell/${PV}/${BPN}-${PV}.tar.gz"
-SRC_URI[md5sum] = "4967da60b23413604c9e563beacc63b4"
-SRC_URI[sha256sum] = "a7b2c0de0e2ce17426821dc1ac8eb115029959b3ada9d80a81739fa19373246c"
-
-inherit autotools pkgconfig gettext
-
-RDEPENDS_${PN} = "perl"
-
-BBCLASSEXTEND = "native"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/hunspell/hunspell_1.6.1.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/hunspell/hunspell_1.6.1.bb
new file mode 100644
index 000000000..125729f2d
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/hunspell/hunspell_1.6.1.bb
@@ -0,0 +1,17 @@
+SUMMARY = "A spell checker and morphological analyzer library"
+HOMEPAGE = "http://hunspell.github.io/"
+LICENSE = "GPLv3 | LGPLv3"
+LIC_FILES_CHKSUM = " \
+ file://COPYING;md5=d32239bcb673463ab874e80d47fae504 \
+ file://COPYING.LESSER;md5=e6a600fd5e1d9cbde2d983680233ad02 \
+"
+
+SRC_URI = "https://github.com/${BPN}/${BPN}/archive/v${PV}.tar.gz"
+SRC_URI[md5sum] = "0df1c18c1284f8625af5ae5a8d5c4cef"
+SRC_URI[sha256sum] = "30f593733c50b794016bb03d31fd2a2071e4610c6fa4708e33edad2335102c49"
+
+inherit autotools pkgconfig gettext
+
+RDEPENDS_${PN} = "perl"
+
+BBCLASSEXTEND = "native"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/iksemel/iksemel_1.4.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/iksemel/iksemel_1.4.bb
index f1276f936..3dc22c590 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/iksemel/iksemel_1.4.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/iksemel/iksemel_1.4.bb
@@ -9,7 +9,7 @@ DEPENDS = "gnutls"
PR = "r1"
# http://errors.yoctoproject.org/Errors/Details/25825/
-PNBLACKLIST[iksemel] ?= "Not compatible with gnutls version 3.4 currently in oe-core"
+PNBLACKLIST[iksemel] ?= "Not compatible with gnutls version 3.4 currently in oe-core - the recipe will be removed on 2017-09-01 unless the issue is fixed"
SRC_URI = "http://iksemel.googlecode.com/files/${BP}.tar.gz;name=archive \
file://r25.diff"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/imagemagick/imagemagick_7.0.2.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/imagemagick/imagemagick_7.0.2.bb
index cfaa7c3c6..960cb00ef 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/imagemagick/imagemagick_7.0.2.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/imagemagick/imagemagick_7.0.2.bb
@@ -23,7 +23,7 @@ inherit autotools pkgconfig update-alternatives
EXTRA_OECONF = "--program-prefix= --program-suffix=.im7 --without-perl --disable-openmp --without-xml --disable-opencl"
CACHED_CONFIGUREVARS = "ac_cv_sys_file_offset_bits=yes"
-PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', '', d)}"
+PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}"
PACKAGECONFIG[graphviz] = "--with-gvc,--without-gvc,graphviz"
PACKAGECONFIG[jp2] = "--with-jp2,,jasper"
PACKAGECONFIG[lzma] = "--with-lzma,--without-lzma,xz"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/ipmitool/ipmitool_1.8.18.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/ipmitool/ipmitool_1.8.18.bb
new file mode 100644
index 000000000..9f73d2799
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/ipmitool/ipmitool_1.8.18.bb
@@ -0,0 +1,36 @@
+SUMMARY = "Utility for IPMI control"
+DESCRIPTION = "This package contains a utility for interfacing with devices that support \
+the Intelligent Platform Management Interface specification. IPMI is \
+an open standard for machine health, inventory, and remote power control. \
+\
+This utility can communicate with IPMI-enabled devices through either a \
+kernel driver such as OpenIPMI or over the RMCP LAN protocol defined in \
+the IPMI specification. IPMIv2 adds support for encrypted LAN \
+communications and remote Serial-over-LAN functionality. \
+\
+It provides commands for reading the Sensor Data Repository (SDR) and \
+displaying sensor values, displaying the contents of the System Event \
+Log (SEL), printing Field Replaceable Unit (FRU) information, reading and \
+setting LAN configuration, and chassis power control. \
+"
+
+HOMEPAGE = "http://ipmitool.sourceforge.net/"
+SECTION = "kernel/userland"
+
+LICENSE = "BSD-3-Clause"
+LIC_FILES_CHKSUM = "file://COPYING;md5=9aa91e13d644326bf281924212862184"
+
+DEPENDS = "openssl readline ncurses"
+
+SRC_URI = "${SOURCEFORGE_MIRROR}/ipmitool/ipmitool-${PV}.tar.bz2"
+SRC_URI[md5sum] = "bab7ea104c7b85529c3ef65c54427aa3"
+SRC_URI[sha256sum] = "0c1ba3b1555edefb7c32ae8cd6a3e04322056bc087918f07189eeedfc8b81e01"
+
+inherit autotools
+
+# --disable-dependency-tracking speeds up the build
+# --enable-file-security adds some security checks
+# --disable-intf-free disables FreeIPMI support - we don't want to depend on
+# FreeIPMI libraries, FreeIPMI has its own ipmitoool-like utility.
+#
+EXTRA_OECONF = "--disable-dependency-tracking --enable-file-security --disable-intf-free"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/ipmiutil/ipmiutil_2.9.6.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/ipmiutil/ipmiutil_2.9.6.bb
index bdb3d47d1..ee0766ea7 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/ipmiutil/ipmiutil_2.9.6.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/ipmiutil/ipmiutil_2.9.6.bb
@@ -15,6 +15,8 @@ HOMEPAGE = "http://ipmiutil.sourceforge.net"
LICENSE = "BSD-2-Clause"
LIC_FILES_CHKSUM = "file://COPYING;md5=5f9372493401f309e6149dd2ce0a044b"
+DEPENDS += "openssl"
+
PARALLEL_MAKE = ""
SRC_URI = "${SOURCEFORGE_MIRROR}/ipmiutil/ipmiutil-${PV}.tar.gz \
@@ -26,7 +28,7 @@ SRC_URI[sha256sum] = "884c1f3d8bfb0b33c303973d286c3166f5a537976451a0312e3524af54
inherit autotools-brokensep pkgconfig systemd
PACKAGECONFIG ?= "lanplus gpl"
-PACKAGECONFIG += "${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd', '', d)}"
+PACKAGECONFIG += "${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)}"
PACKAGECONFIG[systemd] = "--enable-systemd=${datadir}/${BPN}, --enable-systemd=no"
PACKAGECONFIG[sha256] = "--enable-sha256, --enable-sha256=no, openssl-native, openssl"
PACKAGECONFIG[lanplus] = "--enable-lanplus, --enable-lanplus=no, openssl-native, openssl"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/lcov/lcov_1.11.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/lcov/lcov_1.11.bb
index 114bd84cd..2f9ac336e 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/lcov/lcov_1.11.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/lcov/lcov_1.11.bb
@@ -23,6 +23,5 @@ SRC_URI[sha256sum] = "c282de8d678ecbfda32ce4b5c85fc02f77c2a39a062f068bd8e774d29d
do_install() {
oe_runmake install PREFIX=${D}
- sed -i -e '1s,#!.*perl,#! ${USRBINPATH}/env perl,' ${D}${bindir}/*
}
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/libatasmart/files/0001-Makefile.am-add-CFLAGS-and-LDFLAGS-definiton.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/libatasmart/files/0001-Makefile.am-add-CFLAGS-and-LDFLAGS-definiton.patch
new file mode 100644
index 000000000..8c867acca
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/libatasmart/files/0001-Makefile.am-add-CFLAGS-and-LDFLAGS-definiton.patch
@@ -0,0 +1,41 @@
+From 75c1d3b8667328d874590a5321eb244256b7d932 Mon Sep 17 00:00:00 2001
+From: Mingli Yu <Mingli.Yu@windriver.com>
+Date: Wed, 18 Jan 2017 07:35:58 +0000
+Subject: [PATCH] Makefile.am: add CFLAGS and LDFLAGS definiton
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+* When build libatasmart, we need first build strpool in host
+ env. To build strpool, the compiler is host compiler, but
+ the CFLAGS and LDFLAGS are for cross-compiler, so unify them
+ to fix below error.
+ | make -C strpool strpool
+ | make[1]: Entering directory '../libatasmart/0.19-r0/build/strpool'
+ | gcc -DHAVE_CONFIG_H -I. -I../../git/strpool -I.. -isystem../build/tmp/sysroots/x86_64-linux/usr/include -O2 -pipe -O2 -pipe -g -fstack-protector-strong -pie -fpie -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security -Werror=format-security -c -o strpool.o `test -f '../strpool.c' || echo '../../git/strpool/'`../strpool.c
+ | gcc: error: unrecognized command line option ‘-fstack-protector-strong’
+ | make[1]: *** [Makefile:404: strpool.o] Error 1
+
+Upstream-Status: Pending
+
+Signed-off-by: Mingli Yu <Mingli.Yu@windriver.com>
+---
+ strpool/Makefile.am | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/strpool/Makefile.am b/strpool/Makefile.am
+index b041cea..013fcd3 100644
+--- a/strpool/Makefile.am
++++ b/strpool/Makefile.am
+@@ -17,6 +17,8 @@
+ # <http://www.gnu.org/licenses/>.
+
+ CC = @CC_FOR_BUILD@
++CFLAGS = @BUILD_CFLAGS@
++LDFLAGS = @BUILD_LDFLAGS@
+ AM_CFLAGS = @BUILD_CFLAGS@
+ AM_LDFLAGS = @BUILD_LDFLAGS@
+
+--
+2.11.0
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/libatasmart/libatasmart_0.19.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/libatasmart/libatasmart_0.19.bb
index 16657b4b1..4cfb73293 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/libatasmart/libatasmart_0.19.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/libatasmart/libatasmart_0.19.bb
@@ -5,7 +5,9 @@ LIC_FILES_CHKSUM = "file://LGPL;md5=2d5025d4aa3495befef8f17206a5b0a1"
DEPENDS = "udev"
SRCREV = "de6258940960443038b4c1651dfda3620075e870"
-SRC_URI = "git://git.0pointer.de/libatasmart.git"
+SRC_URI = "git://git.0pointer.de/libatasmart.git \
+ file://0001-Makefile.am-add-CFLAGS-and-LDFLAGS-definiton.patch \
+"
S = "${WORKDIR}/git"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/libcanberra/libcanberra_0.30.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/libcanberra/libcanberra_0.30.bb
index f47377500..72c93abe1 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/libcanberra/libcanberra_0.30.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/libcanberra/libcanberra_0.30.bb
@@ -22,9 +22,8 @@ EXTRA_OECONF = "\
--disable-lynx \
"
-PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES','alsa','alsa','',d)} \
- ${@bb.utils.contains('DISTRO_FEATURES','pulseaudio','pulseaudio','',d)} \
- ${@bb.utils.contains('DISTRO_FEATURES','x11','gtk gtk3','',d)} \
+PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'alsa pulseaudio', d)} \
+ ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'gtk gtk3', '', d)} \
"
PACKAGECONFIG[alsa] = "--enable-alsa, --disable-alsa, alsa-lib"
PACKAGECONFIG[pulseaudio] = "--enable-pulse, --disable-pulse, pulseaudio"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/libdbi/libdbi-drivers_0.8.3-1.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/libdbi/libdbi-drivers_0.8.3-1.bb
index ec869c414..8d2c5054a 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/libdbi/libdbi-drivers_0.8.3-1.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/libdbi/libdbi-drivers_0.8.3-1.bb
@@ -5,4 +5,4 @@ SRC_URI[md5sum] = "4de79b323162a5a7652b65b608eca6cd"
SRC_URI[sha256sum] = "4ab9944398ce769c0deeb64d2f73555c67bc25ccd2ade1ccf552226c7b2acf72"
# libdbi-drivers-0.8.3-1/drivers/mysql/dbd_mysql.c:232:5: error: conflicting types for 'dbd_goto_row'
-PNBLACKLIST[libdbi-drivers] ?= "BROKEN: fails to build with gcc-5"
+PNBLACKLIST[libdbi-drivers] ?= "BROKEN: fails to build with gcc-5 - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/libetpan/libetpan_0.57.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/libetpan/libetpan_0.57.bb
index 1091bb079..5cadf16ce 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/libetpan/libetpan_0.57.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/libetpan/libetpan_0.57.bb
@@ -9,7 +9,7 @@ LIC_FILES_CHKSUM = "file://COPYRIGHT;md5=f18ebe7e452708c26f83954f81062ba7"
PR = "r1"
# http://errors.yoctoproject.org/Errors/Details/25823/
-PNBLACKLIST[libetpan] ?= "Not compatible with gnutls version 3.4 currently in oe-core"
+PNBLACKLIST[libetpan] ?= "Not compatible with gnutls version 3.4 currently in oe-core - the recipe will be removed on 2017-09-01 unless the issue is fixed"
SRC_URI = "${SOURCEFORGE_MIRROR}/libetpan/libetpan-${PV}.tar.gz \
file://libetpan-autoreconf.patch \
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/libftdi/libftdi_1.3.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/libftdi/libftdi_1.3.bb
index 5eee0dbf3..199e5a8f6 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/libftdi/libftdi_1.3.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/libftdi/libftdi_1.3.bb
@@ -24,7 +24,7 @@ PACKAGECONFIG[cpp-wrapper] = "-DFTDI_BUILD_CPP=on -DFTDIPP=on,-DFTDI_BUILD_CPP=o
inherit cmake binconfig pkgconfig
-EXTRA_OECMAKE = "-DLIB_SUFFIX=${@d.getVar('baselib', True).replace('lib', '')}"
+EXTRA_OECMAKE = "-DLIB_SUFFIX=${@d.getVar('baselib').replace('lib', '')}"
FILES_${PN}-dev += "${libdir}/cmake"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/libgit2/libgit2_0.24.1.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/libgit2/libgit2_0.24.3.bb
index 092a6740d..8f580f9ff 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/libgit2/libgit2_0.24.1.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/libgit2/libgit2_0.24.3.bb
@@ -6,7 +6,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=34197a479f637beb9e09e56893f48bc2"
DEPENDS = "curl openssl zlib libssh2"
SRC_URI = "git://github.com/libgit2/libgit2.git;branch=maint/v0.24"
-SRCREV = "211e117a0590583a720c53172406f34186c543bd"
+SRCREV = "4cf1ec7cff28da8838a2f0a9fb330e312ea3f963"
S = "${WORKDIR}/git"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/libiio/libiio_git.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/libiio/libiio_git.bb
new file mode 100644
index 000000000..d66ac58d5
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/libiio/libiio_git.bb
@@ -0,0 +1,24 @@
+SUMMARY = "Library for interfacing with IIO devices"
+HOMEPAGE = "https://wiki.analog.com/resources/tools-software/linux-software/libiio"
+SECTION = "libs"
+LICENSE = "LGPLv2.1+"
+LIC_FILES_CHKSUM = "file://COPYING.txt;md5=7c13b3376cea0ce68d2d2da0a1b3a72c"
+
+SRCREV = "08f947d5e40600259bb698c3b95538e9f2bfecc2"
+PV = "0.8+git${SRCPV}"
+
+SRC_URI = "git://github.com/analogdevicesinc/libiio.git"
+
+S = "${WORKDIR}/git"
+
+DEPENDS = "flex-native bison-native avahi libaio libusb1 libxml2"
+
+inherit cmake pythonnative
+
+PACKAGES =+ "${PN}-iiod ${PN}-tests ${PN}-python"
+
+RDEPENDS_${PN}-python = "${PN} python-ctypes python-stringold"
+
+FILES_${PN}-iiod = "${sbindir}/iiod"
+FILES_${PN}-tests = "${bindir}"
+FILES_${PN}-python = "${PYTHON_SITEPACKAGES_DIR}"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/libmicrohttpd/libmicrohttpd/Check-response-existence-on-upgrade.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/libmicrohttpd/libmicrohttpd/Check-response-existence-on-upgrade.patch
new file mode 100644
index 000000000..a02bbd4d0
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/libmicrohttpd/libmicrohttpd/Check-response-existence-on-upgrade.patch
@@ -0,0 +1,49 @@
+From: jose.bollo@iot.bzh
+Date: Thu, 4 May 2017 21:47:38 +0200
+Subject: [PATCH] Check response existence on upgrade
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+When a connection upgrade is requested and when the
+request sent an error reply, the response is most of
+the time already sent when the test on
+connection->response->upgrade_handler is made, leading
+to dereferencing NULL.
+
+Two possibilities exist:
+
+ NULL == connection->response || NULL == connection->response->upgrade_handler
+
+or
+
+ NULL != connection->response && NULL == connection->response->upgrade_handler
+
+The first is prefered because it is probably safer to close the connection
+in that case.
+
+Upstream-Status: Accepted [https://gnunet.org/git/libmicrohttpd.git/commit/?id=b4216c60fdb5b48f6cfec416301fc63a1167e6cd]
+
+Change-Id: Ie6e7fc165f7fe3635ade0952bb34a0b937d38716
+Signed-off-by: José Bollo <jobol@nonadev.net>
+Signed-off-by: José Bollo <jose.bollo@iot.bzh>
+---
+ src/microhttpd/connection.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/microhttpd/connection.c b/src/microhttpd/connection.c
+index a495524..d39c110 100644
+--- a/src/microhttpd/connection.c
++++ b/src/microhttpd/connection.c
+@@ -882,7 +882,7 @@ keepalive_possible (struct MHD_Connection *connection)
+ #ifdef UPGRADE_SUPPORT
+ if ( (MHD_str_equal_caseless_ (end,
+ "upgrade")) &&
+- (NULL == connection->response->upgrade_handler) )
++ (NULL == connection->response || NULL == connection->response->upgrade_handler) )
+ return MHD_NO;
+ #endif /* UPGRADE_SUPPORT */
+
+--
+2.9.3
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/libmicrohttpd/libmicrohttpd_0.9.50.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/libmicrohttpd/libmicrohttpd_0.9.53.bb
index 421b78ef6..45f2460d0 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/libmicrohttpd/libmicrohttpd_0.9.50.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/libmicrohttpd/libmicrohttpd_0.9.53.bb
@@ -6,16 +6,19 @@ SECTION = "net"
DEPENDS = "libgcrypt gnutls file"
SRC_URI = "http://ftp.gnu.org/gnu/libmicrohttpd/${BPN}-${PV}.tar.gz"
-SRC_URI[md5sum] = "4a3f793d59f663a2b0fc62d44668fb66"
-SRC_URI[sha256sum] = "d1b6385068abded29b6470e383287aa7705de05ae3c08ad0bf5747ac4dc6ebd7"
+SRC_URI[md5sum] = "5a425e993a0f5295aecb5d6607a1c242"
+SRC_URI[sha256sum] = "9b15ec2d381f44936323adfd4f989fa35add517cccbbfa581896b02a393c2cc4"
-inherit autotools lib_package pkgconfig
+FILESEXTRAPATHS_append := ":${THISDIR}/${PN}"
+SRC_URI += " file://Check-response-existence-on-upgrade.patch"
+
+inherit autotools lib_package pkgconfig gettext
EXTRA_OECONF += "--disable-static --with-gnutls=${STAGING_LIBDIR}/../"
PACKAGECONFIG ?= "curl"
PACKAGECONFIG_append_class-target = "\
- ${@bb.utils.contains('DISTRO_FEATURES', 'largefile', 'largefile', '', d)} \
+ ${@bb.utils.filter('DISTRO_FEATURES', 'largefile', d)} \
"
PACKAGECONFIG[largefile] = "--enable-largefile,--disable-largefile,,"
PACKAGECONFIG[curl] = "--enable-curl,--disable-curl,curl,"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/libnih/libnih-1.0.3/0001-signal.c-SIGCLD-and-SIGCHILD-are-same-on-sytem-V-sys.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/libnih/libnih-1.0.3/0001-signal.c-SIGCLD-and-SIGCHILD-are-same-on-sytem-V-sys.patch
new file mode 100644
index 000000000..a43b4b176
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/libnih/libnih-1.0.3/0001-signal.c-SIGCLD-and-SIGCHILD-are-same-on-sytem-V-sys.patch
@@ -0,0 +1,28 @@
+From f1b9992caf9910f9f7afae401045e42572cc84ff Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 1 Apr 2017 08:50:35 -0700
+Subject: [PATCH] signal.c: SIGCLD and SIGCHILD are same on sytem V systems
+
+Musl drops the SIGCLD legacy
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ nih/signal.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/nih/signal.c b/nih/signal.c
+index a241df9..691c8e6 100644
+--- a/nih/signal.c
++++ b/nih/signal.c
+@@ -87,7 +87,7 @@ static const SignalName signal_names[] = {
+ { SIGSTKFLT, "STKFLT" },
+ #endif
+ { SIGCHLD, "CHLD" },
+- { SIGCLD, "CLD" },
++ { SIGCHLD, "CLD" },
+ { SIGCONT, "CONT" },
+ { SIGSTOP, "STOP" },
+ { SIGTSTP, "TSTP" },
+--
+2.12.1
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/libnih/libnih_1.0.3.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/libnih/libnih_1.0.3.bb
index 40aa8964e..02fe805fc 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/libnih/libnih_1.0.3.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/libnih/libnih_1.0.3.bb
@@ -23,8 +23,9 @@ DEPENDS = "dbus libnih-native"
DEPENDS_class-native = "dbus-native"
SRC_URI = "https://launchpad.net/${BPN}/1.0/${PV}/+download/${BP}.tar.gz \
- file://libnih_1.0.3-4ubuntu16.patch \
-"
+ file://libnih_1.0.3-4ubuntu16.patch \
+ file://0001-signal.c-SIGCLD-and-SIGCHILD-are-same-on-sytem-V-sys.patch \
+ "
SRC_URI[md5sum] = "db7990ce55e01daffe19006524a1ccb0"
SRC_URI[sha256sum] = "897572df7565c0a90a81532671e23c63f99b4efde2eecbbf11e7857fbc61f405"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/liboop/liboop/explicit_linking.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/liboop/liboop/explicit_linking.patch
new file mode 100644
index 000000000..05d3bf6f4
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/liboop/liboop/explicit_linking.patch
@@ -0,0 +1,20 @@
+--- 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/import-layers/meta-openembedded/meta-oe/recipes-support/liboop/liboop/new-readline-typedef.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/liboop/liboop/new-readline-typedef.patch
new file mode 100644
index 000000000..0a0242032
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/liboop/liboop/new-readline-typedef.patch
@@ -0,0 +1,11 @@
+--- 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/import-layers/meta-openembedded/meta-oe/recipes-support/liboop/liboop/read_bugfixes.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/liboop/liboop/read_bugfixes.patch
new file mode 100644
index 000000000..1880a241a
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/liboop/liboop/read_bugfixes.patch
@@ -0,0 +1,40 @@
+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/import-layers/meta-openembedded/meta-oe/recipes-support/liboop/liboop/tcl_dev.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/liboop/liboop/tcl_dev.patch
new file mode 100644
index 000000000..e738be54c
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/liboop/liboop/tcl_dev.patch
@@ -0,0 +1,22 @@
+--- 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 @@
+ 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"
+ AC_CHECK_LIB(tcl$version,Tcl_Main,[
+ AC_CHECK_HEADER(tcl.h,[
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/liboop/liboop_1.0.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/liboop/liboop_1.0.bb
new file mode 100644
index 000000000..82818c242
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/liboop/liboop_1.0.bb
@@ -0,0 +1,23 @@
+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/import-layers/meta-openembedded/meta-oe/recipes-support/libraw1394/libraw1394_2.1.0.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/libraw1394/libraw1394_2.1.2.bb
index 811829ebc..337780789 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/libraw1394/libraw1394_2.1.0.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/libraw1394/libraw1394_2.1.2.bb
@@ -5,7 +5,7 @@ LICENSE = "LGPL-2.1"
LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=d8045f3b8f929c1cb29a1e3fd737b499"
SRC_URI = "https://www.kernel.org/pub/linux/libs/ieee1394/${BPN}-${PV}.tar.gz"
-SRC_URI[md5sum] = "d06cccb776b240b6ab5efdee33b87af2"
-SRC_URI[sha256sum] = "a83cff16fb8885831bc29d7d17f3c570dc39251d89e20795c08e87720de0ba70"
+SRC_URI[md5sum] = "45031ab15ca93e50c19886a38bc1814a"
+SRC_URI[sha256sum] = "ddc4e32721cdfe680d964aaede68ac606a20cd17dd2ba70e2d7e0692086ab57c"
inherit autotools
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/libsdl-ttf/files/automake_foreign.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/libsdl-ttf/files/automake_foreign.patch
new file mode 100644
index 000000000..2d5bd6d91
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/libsdl-ttf/files/automake_foreign.patch
@@ -0,0 +1,13 @@
+Index: SDL2_ttf-2.0.14/Makefile.am
+===================================================================
+--- SDL2_ttf-2.0.14.orig/Makefile.am
++++ SDL2_ttf-2.0.14/Makefile.am
+@@ -1,6 +1,8 @@
+ # Makefile.am for the SDL truetype font loading library and viewer
+ lib_LTLIBRARIES = libSDL2_ttf.la
+
++AUTOMAKE_OPTIONS = foreign
++
+ libSDL2_ttfincludedir = $(includedir)/SDL2
+ libSDL2_ttfinclude_HEADERS = \
+ SDL_ttf.h
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/libsdl-ttf/libsdl-ttf_2.0.11.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/libsdl-ttf/libsdl-ttf_2.0.11.bb
index 0249abe24..d8b378f2c 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/libsdl-ttf/libsdl-ttf_2.0.11.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/libsdl-ttf/libsdl-ttf_2.0.11.bb
@@ -12,7 +12,9 @@ SRC_URI[sha256sum] = "724cd895ecf4da319a3ef164892b72078bd92632a5d812111261cde248
S = "${WORKDIR}/SDL_ttf-${PV}"
-inherit autotools
+inherit autotools pkgconfig
+
+LDFLAGS += "-lm"
do_configure_prepend() {
# make autoreconf happy
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/libsdl-ttf/libsdl2-ttf_2.0.14.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/libsdl-ttf/libsdl2-ttf_2.0.14.bb
index af5a55c17..4601593ad 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/libsdl-ttf/libsdl2-ttf_2.0.14.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/libsdl-ttf/libsdl2-ttf_2.0.14.bb
@@ -1,23 +1,25 @@
SUMMARY = "Simple DirectMedia Layer truetype font library"
SECTION = "libs"
-DEPENDS = "virtual/libsdl2 freetype"
+DEPENDS = "virtual/libsdl2 freetype virtual/libgl"
LICENSE = "Zlib"
LIC_FILES_CHKSUM = "file://COPYING.txt;md5=cb33e7c4df9fbde389f149ad6bc93ce5"
SRC_URI = " \
http://www.libsdl.org/projects/SDL_ttf/release/SDL2_ttf-${PV}.tar.gz \
file://use.pkg-config.for.freetype2.patch \
+ file://automake_foreign.patch \
"
SRC_URI[md5sum] = "e53c05e1e7f1382c316afd6c763388b1"
SRC_URI[sha256sum] = "34db5e20bcf64e7071fe9ae25acaa7d72bdc4f11ab3ce59acc768ab62fe39276"
S = "${WORKDIR}/SDL2_ttf-${PV}"
-inherit autotools
+inherit autotools pkgconfig distro_features_check
-do_configure_prepend() {
- touch ${S}/NEWS ${S}/README ${S}/AUTHORS ${S}/ChangeLog
+# links to libGL.so
+REQUIRED_DISTRO_FEATURES += "x11 opengl"
+do_configure_prepend() {
# Removing these files fixes a libtool version mismatch.
MACROS="libtool.m4 lt~obsolete.m4 ltoptions.m4 ltsugar.m4 ltversion.m4"
@@ -25,3 +27,4 @@ do_configure_prepend() {
rm -f ${S}/acinclude/$i
done
}
+ASNEEDED = ""
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/libsodium/libsodium_1.0.11.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/libsodium/libsodium_1.0.11.bb
index 22d315504..cbcbe96cd 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/libsodium/libsodium_1.0.11.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/libsodium/libsodium_1.0.11.bb
@@ -8,3 +8,5 @@ SRC_URI[md5sum] = "b58928d035064b2a46fb564937b83540"
SRC_URI[sha256sum] = "a14549db3c49f6ae2170cbbf4664bd48ace50681045e8dbea7c8d9fb96f9c765"
inherit autotools
+
+BBCLASSEXTEND = "native nativesdk"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/libssh/libssh_0.7.3.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/libssh/libssh_0.7.3.bb
index c0b8913e1..79e7dc599 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/libssh/libssh_0.7.3.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/libssh/libssh_0.7.3.bb
@@ -16,7 +16,7 @@ EXTRA_OECMAKE = " \
-DWITH_PCAP=1 \
-DWITH_SFTP=1 \
-DWITH_ZLIB=1 \
- -DLIB_SUFFIX=${@d.getVar('baselib', True).replace('lib', '')} \
+ -DLIB_SUFFIX=${@d.getVar('baselib').replace('lib', '')} \
"
PACKAGECONFIG ??=""
@@ -31,3 +31,4 @@ do_configure_prepend () {
}
FILES_${PN}-dev += "${libdir}/cmake"
+TOOLCHAIN = "gcc"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/libssh2/libssh2_1.7.0.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/libssh2/libssh2_1.7.0.bb
index 155d3d484..c62dab133 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/libssh2/libssh2_1.7.0.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/libssh2/libssh2_1.7.0.bb
@@ -23,4 +23,4 @@ PACKAGECONFIG ??= "openssl"
PACKAGECONFIG[openssl] = "--with-openssl --with-libssl-prefix=${STAGING_LIBDIR},--without-openssl,openssl"
PACKAGECONFIG[gcrypt] = "--with-libgcrypt --with-libgcrypt-prefix=${STAGING_EXECPREFIXDIR},--without-libgcrypt,libgcrypt"
-BBCLASSEXTEND += "native"
+BBCLASSEXTEND = "native"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/libtinyxml/libtinyxml_2.6.2.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/libtinyxml/libtinyxml_2.6.2.bb
index 4460be207..138df9f30 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/libtinyxml/libtinyxml_2.6.2.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/libtinyxml/libtinyxml_2.6.2.bb
@@ -42,4 +42,4 @@ do_install() {
install -m 0644 ${S}/tinyxml.h ${D}${includedir}
}
-BBCLASSEXTEND += "native"
+BBCLASSEXTEND = "native"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/libtinyxml2/libtinyxml2_3.0.0.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/libtinyxml2/libtinyxml2_4.0.1.bb
index af0b785a6..3a6659815 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/libtinyxml2/libtinyxml2_3.0.0.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/libtinyxml2/libtinyxml2_4.0.1.bb
@@ -6,7 +6,7 @@ LIC_FILES_CHKSUM = "file://tinyxml2.cpp;endline=22;md5=c19221dbd8a66ad3090462af4
SRC_URI = "git://github.com/leethomason/tinyxml2.git"
-SRCREV = "1977a7258cc66fd4da7f1e9da05a4933646a7803"
+SRCREV = "74d44acb176f8510abf28ee0a70961eb26631988"
S = "${WORKDIR}/git"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/libutempter/libutempter.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/libutempter/libutempter.bb
index 0282ba500..8c84cb376 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/libutempter/libutempter.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/libutempter/libutempter.bb
@@ -11,7 +11,9 @@ SRCREV = "3ef74fff310f09e2601e241b9f042cd39d591018"
PV = "1.1.6-alt2+git${SRCPV}"
SRC_URI = "git://git.altlinux.org/people/ldv/packages/libutempter.git \
- file://0001-Fix-macro-error.patch"
+ file://0001-Fix-macro-error.patch \
+ file://libutempter-remove-glibc-assumption.patch \
+ "
S = "${WORKDIR}/git/${BPN}"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/libutempter/libutempter/libutempter-remove-glibc-assumption.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/libutempter/libutempter/libutempter-remove-glibc-assumption.patch
new file mode 100644
index 000000000..6ed93355b
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/libutempter/libutempter/libutempter-remove-glibc-assumption.patch
@@ -0,0 +1,81 @@
+diff -Naur libutempter-1.1.6.orig/utempter.c libutempter-1.1.6/utempter.c
+--- libutempter-1.1.6.orig/utempter.c 2010-11-04 13:14:53.000000000 -0400
++++ libutempter-1.1.6/utempter.c 2014-06-20 16:37:09.762403323 -0400
+@@ -34,13 +34,7 @@
+ #include <sys/stat.h>
+ #include <utmp.h>
+
+-#ifdef __GLIBC__
+ # include <pty.h>
+-#elif defined(__FreeBSD__)
+-# include <libutil.h>
+-#else
+-# error Unsupported platform
+-#endif /* __GLIBC__ || __FreeBSD__ */
+
+ #define DEV_PREFIX "/dev/"
+ #define DEV_PREFIX_LEN (sizeof(DEV_PREFIX)-1)
+@@ -106,17 +100,12 @@
+
+ static int
+ write_uwtmp_record(const char *user, const char *term, const char *host,
+-#ifdef __GLIBC__
+ pid_t pid,
+-#endif
+ int add)
+ {
+ struct utmp ut;
+ struct timeval tv;
+-
+-#ifdef __GLIBC__
+ size_t offset;
+-#endif
+
+ memset(&ut, 0, sizeof(ut));
+
+@@ -128,8 +117,6 @@
+ if (host)
+ strncpy(ut.ut_host, host, sizeof(ut.ut_host));
+
+-#ifdef __GLIBC__
+-
+ offset = (strlen(term) <= sizeof(ut.ut_id)) ? 0 :
+ strlen(term) - sizeof(ut.ut_id);
+ strncpy(ut.ut_id, term + offset, sizeof(ut.ut_id));
+@@ -156,27 +143,6 @@
+
+ (void) updwtmp(_PATH_WTMP, &ut);
+
+-#elif defined(__FreeBSD__)
+-
+- ut.ut_time = tv.tv_sec;
+-
+- if (add)
+- {
+- login(&ut);
+- } else
+- {
+- if (logout(term) != 1)
+- {
+-#ifdef UTEMPTER_DEBUG
+- fprintf(stderr, "utempter: logout: %s\n",
+- strerror(errno));
+-#endif
+- exit(EXIT_FAILURE);
+- }
+- }
+-
+-#endif /* __GLIBC__ || __FreeBSD__ */
+-
+ #ifdef UTEMPTER_DEBUG
+ fprintf(stderr,
+ "utempter: DEBUG: utmp/wtmp record %s for terminal '%s'\n",
+@@ -255,8 +221,6 @@
+ validate_device(device);
+
+ return write_uwtmp_record(pw->pw_name, device + DEV_PREFIX_LEN, host,
+-#ifdef __GLIBC__
+ pid,
+-#endif
+ add);
+ }
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/log4c/log4c/0001-Use-the-API-properly-in-the-example-format-security-.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/log4c/log4c/0001-Use-the-API-properly-in-the-example-format-security-.patch
new file mode 100644
index 000000000..9ff9d7002
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/log4c/log4c/0001-Use-the-API-properly-in-the-example-format-security-.patch
@@ -0,0 +1,26 @@
+From 97f0b7b25474fab25f5757f7c50a77e20be5d05b Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Franti=C5=A1ek=20Dvo=C5=99=C3=A1k?= <valtri@civ.zcu.cz>
+Date: Mon, 7 Sep 2015 15:00:48 +0200
+Subject: [PATCH] Use the API properly in the example (format security error
+ fixed).
+
+---
+ examples/helloworld1/mylog.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/examples/helloworld1/mylog.h b/examples/helloworld1/mylog.h
+index 280f3dc..57e5369 100644
+--- a/examples/helloworld1/mylog.h
++++ b/examples/helloworld1/mylog.h
+@@ -39,7 +39,7 @@ static LOG4C_INLINE int mylog_fini(){
+
+ static LOG4C_INLINE void mylog_msg(char *catName,int a_priority, char *msg){
+ #ifndef WITHOUT_LOG4C
+- log4c_category_log(log4c_category_get(catName), a_priority, msg);
++ log4c_category_log(log4c_category_get(catName), a_priority, "%s", msg);
+ #else
+ printf(msg);
+ #endif
+--
+2.12.0
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/log4c/log4c_1.2.4.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/log4c/log4c_1.2.4.bb
index 3286b08ee..ef7ad847a 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/log4c/log4c_1.2.4.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/log4c/log4c_1.2.4.bb
@@ -4,7 +4,9 @@ LICENSE = "LGPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c"
SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BP}.tar.gz \
- file://fix_configure_with-expat.patch"
+ file://fix_configure_with-expat.patch \
+ file://0001-Use-the-API-properly-in-the-example-format-security-.patch \
+ "
SRC_URI[md5sum] = "0d94919136e1d16b68427562e74cb3dd"
SRC_URI[sha256sum] = "5991020192f52cc40fa852fbf6bbf5bd5db5d5d00aa9905c67f6f0eadeed48ea"
@@ -15,3 +17,5 @@ PACKAGECONFIG[expat] = "--with-expat,--without-expat,expat"
BINCONFIG = "${bindir}/log4c-config"
inherit autotools binconfig-disabled
+
+BBCLASSEXTEND = "native"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/log4cpp/log4cpp_1.1.1.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/log4cpp/log4cpp_1.1.2.bb
index c7bf288fa..dc52c9ff4 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/log4cpp/log4cpp_1.1.1.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/log4cpp/log4cpp_1.1.2.bb
@@ -3,12 +3,12 @@ HOMEPAGE = "http://sourceforge.net/projects/log4cpp/"
LICENSE = "LGPLv2.1"
LIC_FILES_CHKSUM = "file://COPYING;md5=7fbc338309ac38fefcd64b04bb903e34"
-SRC_URI[md5sum] = "1e173df8ee97205f412ff84aa93b8fbe"
-SRC_URI[sha256sum] = "35abf332630a6809c969276b1d60b90c81a95daf24c86cfd7866ffef72f9bed0"
-
-SRC_URI = "http://downloads.sourceforge.net/${BPN}/${BP}.tar.gz \
+RC = "rc5"
+SRC_URI = "http://downloads.sourceforge.net/${BPN}/${BP}${RC}.tar.gz \
file://fix-pc.patch;striplevel=2 \
"
+SRC_URI[md5sum] = "58b4591a2f3e7ef3d5e3e7cfb3a81a62"
+SRC_URI[sha256sum] = "a611d99a20af6676c60219762771c0bfac90f4879bbde70038ece75338b588ec"
S = "${WORKDIR}/${BPN}"
@@ -19,5 +19,4 @@ EXTRA_OECONF = "\
--enable-dot=no \
--enable-html-docs=no \
--enable-latex-docs=no \
- LDFLAGS=-pthread \
"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/lvm2/files/0001-Avoid-bashisms-in-init-scripts.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/lvm2/files/0001-Avoid-bashisms-in-init-scripts.patch
new file mode 100644
index 000000000..e86ab25e6
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/lvm2/files/0001-Avoid-bashisms-in-init-scripts.patch
@@ -0,0 +1,182 @@
+From 916ea0c70fd063ab7b81f16fd917a75dc02edf4f Mon Sep 17 00:00:00 2001
+From: Peter Kjellerstedt <pkj@axis.com>
+Date: Fri, 17 Mar 2017 03:18:28 +0100
+Subject: [PATCH] Avoid bashisms in init scripts
+
+Upstream-Status: Inappropriate
+
+Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
+---
+ scripts/blk_availability_init_red_hat.in | 4 ++--
+ scripts/clvmd_init_red_hat.in | 6 +++---
+ scripts/cmirrord_init_red_hat.in | 4 ++--
+ scripts/lvm2_cluster_activation_red_hat.sh.in | 4 ++--
+ scripts/lvm2_lvmetad_init_red_hat.in | 4 ++--
+ scripts/lvm2_lvmpolld_init_red_hat.in | 4 ++--
+ scripts/lvm2_monitoring_init_red_hat.in | 4 ++--
+ scripts/lvm2_monitoring_init_rhel4 | 4 ++--
+ 8 files changed, 17 insertions(+), 17 deletions(-)
+
+diff --git a/scripts/blk_availability_init_red_hat.in b/scripts/blk_availability_init_red_hat.in
+index a84ffe7..6b855b7 100644
+--- a/scripts/blk_availability_init_red_hat.in
++++ b/scripts/blk_availability_init_red_hat.in
+@@ -1,4 +1,4 @@
+-#!/bin/bash
++#!/bin/sh
+ #
+ # Copyright (C) 2012 Red Hat, Inc. All rights reserved.
+ #
+@@ -53,6 +53,6 @@ case "$1" in
+ status)
+ ;;
+ *)
+- echo $"Usage: $0 {start|stop|status}"
++ echo "Usage: $0 {start|stop|status}"
+ ;;
+ esac
+diff --git a/scripts/clvmd_init_red_hat.in b/scripts/clvmd_init_red_hat.in
+index d7f3392..abc8011 100644
+--- a/scripts/clvmd_init_red_hat.in
++++ b/scripts/clvmd_init_red_hat.in
+@@ -1,4 +1,4 @@
+-#!/bin/bash
++#!/bin/sh
+ #
+ # clvmd - Clustered LVM Daemon init script
+ #
+@@ -161,7 +161,7 @@ restart() {
+ fi
+ }
+
+-[ "$EUID" != "0" ] && {
++[ "$(id -u)" != "0" ] && {
+ echo "clvmd init script can only be executed as root user"
+ exit 4
+ }
+@@ -206,7 +206,7 @@ case "$1" in
+ ;;
+
+ *)
+- echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload}"
++ echo "Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload}"
+ rtrn=2
+ ;;
+ esac
+diff --git a/scripts/cmirrord_init_red_hat.in b/scripts/cmirrord_init_red_hat.in
+index d4b7e37..d442cbc 100755
+--- a/scripts/cmirrord_init_red_hat.in
++++ b/scripts/cmirrord_init_red_hat.in
+@@ -1,4 +1,4 @@
+-#!/bin/bash
++#!/bin/sh
+ #
+ # chkconfig: - 22 78
+ # description: Starts and stops cmirrord
+@@ -101,7 +101,7 @@ case "$1" in
+ ;;
+
+ *)
+- echo $"Usage: $0 {start|stop|restart|status}"
++ echo "Usage: $0 {start|stop|restart|status}"
+ ;;
+ esac
+
+diff --git a/scripts/lvm2_cluster_activation_red_hat.sh.in b/scripts/lvm2_cluster_activation_red_hat.sh.in
+index abea026..d8cba2e 100644
+--- a/scripts/lvm2_cluster_activation_red_hat.sh.in
++++ b/scripts/lvm2_cluster_activation_red_hat.sh.in
+@@ -1,4 +1,4 @@
+-#!/bin/bash
++#!/bin/sh
+
+ sbindir=@sbindir@
+
+@@ -54,7 +54,7 @@ case "$1" in
+ rtrn=$?
+ ;;
+ *)
+- echo $"Usage: $0 {activate|deactivate}"
++ echo "Usage: $0 {activate|deactivate}"
+ rtrn=3
+ ;;
+ esac
+diff --git a/scripts/lvm2_lvmetad_init_red_hat.in b/scripts/lvm2_lvmetad_init_red_hat.in
+index b2f5d50..96269a9 100644
+--- a/scripts/lvm2_lvmetad_init_red_hat.in
++++ b/scripts/lvm2_lvmetad_init_red_hat.in
+@@ -1,4 +1,4 @@
+-#!/bin/bash
++#!/bin/sh
+ #
+ # Copyright (C) 2012 Red Hat, Inc. All rights reserved.
+ #
+@@ -105,7 +105,7 @@ case "$1" in
+ ;;
+
+ *)
+- echo $"Usage: $0 {start|stop|force-stop|restart|condrestart|try-restart|status}"
++ echo "Usage: $0 {start|stop|force-stop|restart|condrestart|try-restart|status}"
+ ;;
+ esac
+
+diff --git a/scripts/lvm2_lvmpolld_init_red_hat.in b/scripts/lvm2_lvmpolld_init_red_hat.in
+index c521955..cdbaece 100644
+--- a/scripts/lvm2_lvmpolld_init_red_hat.in
++++ b/scripts/lvm2_lvmpolld_init_red_hat.in
+@@ -1,4 +1,4 @@
+-#!/bin/bash
++#!/bin/sh
+ #
+ # Copyright (C) 2015 Red Hat, Inc. All rights reserved.
+ #
+@@ -107,7 +107,7 @@ case "$1" in
+ ;;
+
+ *)
+- echo $"Usage: $0 {start|stop|force-stop|restart|condrestart|try-restart|status}"
++ echo "Usage: $0 {start|stop|force-stop|restart|condrestart|try-restart|status}"
+ ;;
+ esac
+
+diff --git a/scripts/lvm2_monitoring_init_red_hat.in b/scripts/lvm2_monitoring_init_red_hat.in
+index de7ff0d..9ff6bb7 100644
+--- a/scripts/lvm2_monitoring_init_red_hat.in
++++ b/scripts/lvm2_monitoring_init_red_hat.in
+@@ -1,4 +1,4 @@
+-#!/bin/bash
++#!/bin/sh
+ #
+ # Copyright (C) 2007-2009 Red Hat, Inc. All rights reserved.
+ #
+@@ -128,7 +128,7 @@ case "$1" in
+ ;;
+
+ *)
+- echo $"Usage: $0 {start|stop|restart|status|force-stop}"
++ echo "Usage: $0 {start|stop|restart|status|force-stop}"
+ ;;
+ esac
+
+diff --git a/scripts/lvm2_monitoring_init_rhel4 b/scripts/lvm2_monitoring_init_rhel4
+index 8eb06c5..2e8d0f7 100644
+--- a/scripts/lvm2_monitoring_init_rhel4
++++ b/scripts/lvm2_monitoring_init_rhel4
+@@ -1,4 +1,4 @@
+-#!/bin/bash
++#!/bin/sh
+ #
+ # Copyright (C) 2007 Red Hat, Inc. All rights reserved.
+ #
+@@ -93,7 +93,7 @@ case "$1" in
+ ;;
+
+ *)
+- echo $"Usage: $0 {start|stop|restart|status|force-stop}"
++ echo "Usage: $0 {start|stop|restart|status|force-stop}"
+ ;;
+ esac
+
+--
+2.12.0
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/lvm2/files/0001-implement-libc-specific-reopen_stream.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/lvm2/files/0001-implement-libc-specific-reopen_stream.patch
new file mode 100644
index 000000000..5d72402bd
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/lvm2/files/0001-implement-libc-specific-reopen_stream.patch
@@ -0,0 +1,79 @@
+From e3103459416616d3b8508e7176e897b0ae6c90f2 Mon Sep 17 00:00:00 2001
+From: Dengke Du <dengke.du@windriver.com>
+Date: Tue, 25 Oct 2016 11:49:40 +0000
+Subject: [PATCH] implement libc specific reopen_stream
+
+musl defines stdin/stdio/stderr as constant types which means
+we can not assign to them as we are doing here but works ok with glibc
+therefore abstract out the _reopen_stream definition depending upon if
+we are using glibc or otherwise
+
+Origin:
+http://git.alpinelinux.org/cgit/aports/tree/main/lvm2/fix-stdio-usage.patch
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+Signed-off-by: Dengke Du <dengke.du@windriver.com>
+
+---
+ lib/log/log.c | 6 ++++++
+ tools/lvmcmdline.c | 6 +++---
+ 2 files changed, 9 insertions(+), 3 deletions(-)
+
+diff --git a/lib/log/log.c b/lib/log/log.c
+index c933154..3581084 100644
+--- a/lib/log/log.c
++++ b/lib/log/log.c
+@@ -161,6 +161,7 @@ static void _check_and_replace_standard_log_streams(FILE *old_stream, FILE *new_
+ * Close and reopen standard stream on file descriptor fd.
+ */
+ int reopen_standard_stream(FILE **stream, const char *mode)
++#ifdef __GLIBC__
+ {
+ int fd, fd_copy, new_fd;
+ const char *name;
+@@ -207,6 +208,11 @@ int reopen_standard_stream(FILE **stream, const char *mode)
+ *stream = new_stream;
+ return 1;
+ }
++#else
++{
++ return (freopen(NULL, mode, *stream) != NULL);
++}
++#endif
+
+ void init_log_fn(lvm2_log_fn_t log_fn)
+ {
+diff --git a/tools/lvmcmdline.c b/tools/lvmcmdline.c
+index 9a4deb7..f1f18e6 100644
+--- a/tools/lvmcmdline.c
++++ b/tools/lvmcmdline.c
+@@ -1818,7 +1818,7 @@ static int _check_standard_fds(void)
+ int err = is_valid_fd(STDERR_FILENO);
+
+ if (!is_valid_fd(STDIN_FILENO) &&
+- !(stdin = fopen(_PATH_DEVNULL, "r"))) {
++ !freopen(_PATH_DEVNULL, "r", stdin)) {
+ if (err)
+ perror("stdin stream open");
+ else
+@@ -1828,7 +1828,7 @@ static int _check_standard_fds(void)
+ }
+
+ if (!is_valid_fd(STDOUT_FILENO) &&
+- !(stdout = fopen(_PATH_DEVNULL, "w"))) {
++ !freopen(_PATH_DEVNULL, "w", stdout)) {
+ if (err)
+ perror("stdout stream open");
+ /* else no stdout */
+@@ -1836,7 +1836,7 @@ static int _check_standard_fds(void)
+ }
+
+ if (!is_valid_fd(STDERR_FILENO) &&
+- !(stderr = fopen(_PATH_DEVNULL, "w"))) {
++ !freopen(_PATH_DEVNULL, "w", stderr)) {
+ printf("stderr stream open: %s\n",
+ strerror(errno));
+ return 0;
+--
+2.12.0
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/lvm2/lvm2/0003-Guard-use-of-mallinfo-with-__GLIBC__.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/lvm2/files/0002-Guard-use-of-mallinfo-with-__GLIBC__.patch
index 3d7176729..95dcede33 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/lvm2/lvm2/0003-Guard-use-of-mallinfo-with-__GLIBC__.patch
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/lvm2/files/0002-Guard-use-of-mallinfo-with-__GLIBC__.patch
@@ -1,22 +1,22 @@
-From e018d055603389b22cbc3bd68b1525f3048ebee7 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Wed, 20 Jan 2016 04:50:26 +0000
-Subject: [PATCH 3/4] Guard use of mallinfo() with __GLIBC__
+From 3ae9c0b607ec33fb07f32a41e9d28cc9068dd39a Mon Sep 17 00:00:00 2001
+From: Dengke Du <dengke.du@windriver.com>
+Date: Tue, 25 Oct 2016 11:52:44 +0000
+Subject: [PATCH] Guard use of mallinfo() with __GLIBC__
This API is glibc-only
Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
-Upstream-Status: Pending
+Signed-off-by: Dengke Du <dengke.du@windriver.com>
+---
lib/mm/memlock.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/lib/mm/memlock.c b/lib/mm/memlock.c
-index 969f1d7..405a7c0 100644
+index da90144..f34f890 100644
--- a/lib/mm/memlock.c
+++ b/lib/mm/memlock.c
-@@ -145,7 +145,7 @@ static void _touch_memory(void *mem, size_t size)
+@@ -150,7 +150,7 @@ static void _touch_memory(void *mem, size_t size)
static void _allocate_memory(void)
{
@@ -26,5 +26,5 @@ index 969f1d7..405a7c0 100644
struct rlimit limit;
int i, area = 0, missing = _size_malloc_tmp, max_areas = 32, hblks;
--
-2.7.0
+2.12.0
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/lvm2/lvm2/0004-include-fcntl.h-for-O_-defines-and-fcntl-signature.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/lvm2/files/0003-include-fcntl.h-for-O_-defines-and-fcntl-signature.patch
index 2a3b84364..9ab1c06d2 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/lvm2/lvm2/0004-include-fcntl.h-for-O_-defines-and-fcntl-signature.patch
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/lvm2/files/0003-include-fcntl.h-for-O_-defines-and-fcntl-signature.patch
@@ -1,19 +1,20 @@
-From 9b793d5b4adc5d8b3684e7f66943e236eae7c2db Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Wed, 20 Jan 2016 04:52:59 +0000
-Subject: [PATCH 4/4] include fcntl.h for O_* defines and fcntl() signature
+From b1ad91a059d99afd1ce25823b7c0a8d3ac63d2fd Mon Sep 17 00:00:00 2001
+From: Dengke Du <dengke.du@windriver.com>
+Date: Tue, 25 Oct 2016 11:55:49 +0000
+Subject: [PATCH 3/4] include fcntl.h for O_* defines and fcntl() signature
On glibc _somehow_ this header gets pulled in indirectly
Signed-off-by: Khem Raj <raj.khem@gmail.com>
+Signed-off-by: Dengke Du <dengke.du@windriver.com>
---
Upstream-Status: Pending
-
+---
libdaemon/server/daemon-server.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/libdaemon/server/daemon-server.c b/libdaemon/server/daemon-server.c
-index d9d60d1..433d100 100644
+index 6af6de9..a9590e7 100644
--- a/libdaemon/server/daemon-server.c
+++ b/libdaemon/server/daemon-server.c
@@ -18,6 +18,7 @@
@@ -25,5 +26,5 @@ index d9d60d1..433d100 100644
#include <errno.h>
#include <pthread.h>
--
-2.7.0
+2.9.3
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/lvm2/lvm2/0005-tweak-MODPROBE_CMD-for-cross-compile.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/lvm2/files/0004-tweak-MODPROBE_CMD-for-cross-compile.patch
index 8db320d5e..aaeaa725d 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/lvm2/lvm2/0005-tweak-MODPROBE_CMD-for-cross-compile.patch
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/lvm2/files/0004-tweak-MODPROBE_CMD-for-cross-compile.patch
@@ -1,7 +1,7 @@
-From 72866782f83c8cf85b10017df461128af90cae6e Mon Sep 17 00:00:00 2001
-From: Hongxu Jia <hongxu.jia@windriver.com>
-Date: Tue, 30 Aug 2016 22:33:47 -0400
-Subject: [PATCH] tweak MODPROBE_CMD for cross compile
+From 0012ea63f6070a5d41fa380970f9c30b953237d2 Mon Sep 17 00:00:00 2001
+From: Dengke Du <dengke.du@windriver.com>
+Date: Tue, 25 Oct 2016 11:59:40 +0000
+Subject: [PATCH 4/4] tweak MODPROBE_CMD for cross compile
Lvm uses variable MODPROBE_CMD at runtime, so build time detection of modprobe
is incorrect.
@@ -16,23 +16,23 @@ filter=["r|/loop1$|","r|/loop2$|","r|/loop3$|","r|/loop4$|","r|/loop5$|","r|/loo
Upstream-Status: Inappropriate [oe specific]
Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
+Signed-off-by: Dengke Du <dengke.du@windriver.com>
---
- configure.in | 2 --
- 1 file changed, 2 deletions(-)
+ configure.in | 1 -
+ 1 file changed, 1 deletion(-)
diff --git a/configure.in b/configure.in
-index 8e04782..77681b0 100644
+index cc77aab..a3579f2 100644
--- a/configure.in
+++ b/configure.in
-@@ -1779,8 +1779,6 @@ if test "$UDEV_SYNC" = yes; then
+@@ -1853,7 +1853,6 @@ if test "$UDEV_SYNC" = yes; then
fi
################################################################################
-AC_PATH_TOOL(MODPROBE_CMD, modprobe)
--
+
if test -n "$MODPROBE_CMD"; then
AC_DEFINE_UNQUOTED([MODPROBE_CMD], ["$MODPROBE_CMD"], [The path to 'modprobe', if available.])
- fi
--
-2.8.1
+2.9.3
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/lvm2/lvm2/lvm.conf b/import-layers/meta-openembedded/meta-oe/recipes-support/lvm2/files/lvm.conf
index 9e3b5fe29..9e3b5fe29 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/lvm2/lvm2/lvm.conf
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/lvm2/files/lvm.conf
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/lvm2/libdevmapper_2.02.166.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/lvm2/libdevmapper_2.02.166.bb
new file mode 100644
index 000000000..462e8fb01
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/lvm2/libdevmapper_2.02.166.bb
@@ -0,0 +1,31 @@
+require lvm2.inc
+
+SRC_URI[md5sum] = "c5a54ee0b86703daaad6e856439e115a"
+SRC_URI[sha256sum] = "e120b066b85b224552efda40204488c5123de068725676fd6e5c8bc655051b94"
+
+DEPENDS += "autoconf-archive-native"
+
+PACKAGECONFIG = ""
+
+# Unset user/group to unbreak install.
+EXTRA_OECONF = "--with-user= \
+ --with-group= \
+ --enable-pkgconfig \
+ --with-usrlibdir=${libdir} \
+"
+
+TARGET_CC_ARCH += "${LDFLAGS}"
+
+do_install_append() {
+ # Remove things unrelated to libdevmapper
+ rm -rf ${D}${sysconfdir}
+ for i in `ls ${D}${sbindir}/*`; do
+ if [ $i != ${D}${sbindir}/dmsetup ]; then
+ rm $i
+ fi
+ done
+ # Remove docs
+ rm -rf ${D}${datadir}
+}
+
+RRECOMMENDS_${PN} += "lvm2-udevrules"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/lvm2/lvm2.inc b/import-layers/meta-openembedded/meta-oe/recipes-support/lvm2/lvm2.inc
index 74b72118f..cb5a9e042 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/lvm2/lvm2.inc
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/lvm2/lvm2.inc
@@ -1,80 +1,33 @@
SECTION = "utils"
DESCRIPTION = "LVM2 is a set of utilities to manage logical volumes in Linux."
-DEPENDS = "udev"
LICENSE = "GPLv2 & LGPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \
+LIC_FILES_CHKSUM = "file://COPYING;md5=12713b4d9386533feeb07d6e4831765a \
file://COPYING.LIB;md5=fbc093901857fcd118f065f900982c24"
+DEPENDS += "util-linux"
+
SRC_URI = "ftp://sources.redhat.com/pub/lvm2/old/LVM2.${PV}.tgz \
file://lvm.conf \
- file://0001-implement-libc-specific-_reopen_stream.patch \
- file://0002-use-PTHREAD_MUTEX_RECURSIVE-instead-of-PTHREAD_MUTEX.patch \
- file://0003-Guard-use-of-mallinfo-with-__GLIBC__.patch \
- file://0004-include-fcntl.h-for-O_-defines-and-fcntl-signature.patch \
- file://0005-tweak-MODPROBE_CMD-for-cross-compile.patch \
+ file://0001-implement-libc-specific-reopen_stream.patch \
+ file://0002-Guard-use-of-mallinfo-with-__GLIBC__.patch \
+ file://0003-include-fcntl.h-for-O_-defines-and-fcntl-signature.patch \
+ file://0004-tweak-MODPROBE_CMD-for-cross-compile.patch \
+ file://0001-Avoid-bashisms-in-init-scripts.patch \
"
-
S = "${WORKDIR}/LVM2.${PV}"
inherit autotools-brokensep pkgconfig systemd
-PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'selinux', 'selinux', '', d)} \
- thin-provisioning-tools \
- odirect \
-"
+# odirect is always enabled because there currently is a bug in
+# lib/device/dev-io.c which prevents compiling without it. It is
+# better to stick to configurations that were actually tested by
+# upstream...
+PACKAGECONFIG_append = " odirect"
+PACKAGECONFIG[dmeventd] = "--enable-dmeventd,--disable-dmeventd"
+PACKAGECONFIG[lvmetad] = "--enable-lvmetad,--disable-lvmetad"
+PACKAGECONFIG[odirect] = "--enable-o_direct,--disable-o_direct"
PACKAGECONFIG[readline] = "--enable-readline,--disable-readline,readline"
PACKAGECONFIG[selinux] = "--enable-selinux,--disable-selinux,libselinux"
PACKAGECONFIG[thin-provisioning-tools] = "--with-thin=internal,--with-thin=none,,thin-provisioning-tools"
-PACKAGECONFIG[odirect] = "--enable-o_direct,--disable-o_direct"
-
-# Unset user/group to unbreak install.
-EXTRA_OECONF = "--with-user= \
- --with-group= \
- --enable-realtime \
- --enable-applib \
- --enable-cmdlib \
- --enable-udev_sync \
- --enable-udev_rules \
- --enable-pkgconfig \
- --enable-dmeventd \
- --enable-lvmetad \
- --with-udev-prefix= \
- --with-usrlibdir=${libdir} \
- --with-systemdsystemunitdir=${systemd_system_unitdir} \
- --disable-thin_check_needs_check \
- --with-thin-check=${sbindir}/thin_check \
- --with-thin-dump=${sbindir}/thin_dump \
- --with-thin-repair=${sbindir}/thin_repair \
- --with-thin-restore=${sbindir}/thin_restore \
-"
-
-CACHED_CONFIGUREVARS += "MODPROBE_CMD=${base_sbindir}/modprobe"
-
-do_install_append() {
- # Install machine specific configuration file
- install -m 0644 ${WORKDIR}/lvm.conf ${D}${sysconfdir}/lvm/lvm.conf
- sed -i -e 's:@libdir@:${libdir}:g' ${D}${sysconfdir}/lvm/lvm.conf
- if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then
- oe_runmake 'DESTDIR=${D}' install install_systemd_units
- sed -i -e 's:/usr/bin/true:${base_bindir}/true:g' ${D}${systemd_system_unitdir}/blk-availability.service
- else
- oe_runmake 'DESTDIR=${D}' install install_initscripts
- mv ${D}${sysconfdir}/rc.d/init.d ${D}${sysconfdir}/init.d
- rm -rf ${D}${sysconfdir}/rc.d
- fi
-}
-
-SYSTEMD_PACKAGES = "${PN}"
-SYSTEMD_SERVICE_${PN} = "lvm2-monitor.service dm-event.socket dm-event.service lvm2-lvmetad.socket \
- lvm2-pvscan@.service blk-availability.service"
-SYSTEMD_AUTO_ENABLE = "disable"
-
-TARGET_CC_ARCH += "${LDFLAGS}"
-
-FILES_${PN} += "${libdir}/device-mapper/*.so ${base_libdir}/udev"
-FILES_${PN}-dbg += "${libdir}/device-mapper/.debug"
-
-RDEPENDS_${PN} = "bash"
-
-CONFFILES_${PN} += "${sysconfdir}/lvm/lvm.conf"
+PACKAGECONFIG[udev] = "--enable-udev_sync --enable-udev_rules --with-udevdir=${nonarch_base_libdir}/udev/rules.d,--disable-udev_sync --disable-udev_rules,udev"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/lvm2/lvm2/0001-implement-libc-specific-_reopen_stream.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/lvm2/lvm2/0001-implement-libc-specific-_reopen_stream.patch
deleted file mode 100644
index f0b4e71da..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/lvm2/lvm2/0001-implement-libc-specific-_reopen_stream.patch
+++ /dev/null
@@ -1,139 +0,0 @@
-From 089c9c701a1b68b721f479dfc0c58c35b9dd4175 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Wed, 20 Jan 2016 04:39:53 +0000
-Subject: [PATCH 1/4] implement libc specific _reopen_stream
-
-musl defines stdin/stdio/stderr as constant types which means
-we can not assign to them as we are doing here but works ok with glibc
-therefore abstract out the _reopen_stream definition depending upon if
-we are using glibc or otherwise
-
-Origin:
-http://git.alpinelinux.org/cgit/aports/tree/main/lvm2/fix-stdio-usage.patch
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
-Upstream-Status: Pending
-
- lib/commands/toolcontext.c | 22 +++++++++++-----------
- tools/lvmcmdline.c | 6 +++---
- 2 files changed, 14 insertions(+), 14 deletions(-)
-
-diff --git a/lib/commands/toolcontext.c b/lib/commands/toolcontext.c
-index a2f21b8..7f796e4 100644
---- a/lib/commands/toolcontext.c
-+++ b/lib/commands/toolcontext.c
-@@ -1637,7 +1637,10 @@ static void _init_globals(struct cmd_context *cmd)
- /*
- * Close and reopen stream on file descriptor fd.
- */
--static int _reopen_stream(FILE *stream, int fd, const char *mode, const char *name, FILE **new_stream)
-+#ifdef __GLIBC__
-+#define _reopen_stream(stream, fd, mode, name) __reopen_stream(stream, fd, mode, name, &stream)
-+
-+static int __reopen_stream(FILE *stream, int fd, const char *mode, const char *name, FILE **new_stream)
- {
- int fd_copy, new_fd;
-
-@@ -1664,6 +1667,9 @@ static int _reopen_stream(FILE *stream, int fd, const char *mode, const char *na
-
- return 1;
- }
-+#else
-+#define _reopen_stream(stream, fd, mode, name) (freopen(NULL, mode, stream) != NULL)
-+#endif
-
- static int _init_lvmetad(struct cmd_context *cmd)
- {
-@@ -1741,7 +1747,6 @@ struct cmd_context *create_toolcontext(unsigned is_long_lived,
- unsigned set_filters)
- {
- struct cmd_context *cmd;
-- FILE *new_stream;
- int flags;
-
- #ifdef M_MMAP_MAX
-@@ -1791,9 +1796,8 @@ struct cmd_context *create_toolcontext(unsigned is_long_lived,
- if (is_valid_fd(STDIN_FILENO) &&
- ((flags = fcntl(STDIN_FILENO, F_GETFL)) > 0) &&
- (flags & O_ACCMODE) != O_WRONLY) {
-- if (!_reopen_stream(stdin, STDIN_FILENO, "r", "stdin", &new_stream))
-+ if (!_reopen_stream(stdin, STDIN_FILENO, "r", "stdin"))
- goto_out;
-- stdin = new_stream;
- if (setvbuf(stdin, cmd->linebuffer, _IOLBF, linebuffer_size)) {
- log_sys_error("setvbuf", "");
- goto out;
-@@ -1803,9 +1807,8 @@ struct cmd_context *create_toolcontext(unsigned is_long_lived,
- if (is_valid_fd(STDOUT_FILENO) &&
- ((flags = fcntl(STDOUT_FILENO, F_GETFL)) > 0) &&
- (flags & O_ACCMODE) != O_RDONLY) {
-- if (!_reopen_stream(stdout, STDOUT_FILENO, "w", "stdout", &new_stream))
-+ if (!_reopen_stream(stdout, STDOUT_FILENO, "w", "stdout"))
- goto_out;
-- stdout = new_stream;
- if (setvbuf(stdout, cmd->linebuffer + linebuffer_size,
- _IOLBF, linebuffer_size)) {
- log_sys_error("setvbuf", "");
-@@ -2131,7 +2134,6 @@ int refresh_toolcontext(struct cmd_context *cmd)
- void destroy_toolcontext(struct cmd_context *cmd)
- {
- struct dm_config_tree *cft_cmdline;
-- FILE *new_stream;
- int flags;
-
- if (cmd->dump_filter && cmd->filter && cmd->filter->dump &&
-@@ -2167,8 +2169,7 @@ void destroy_toolcontext(struct cmd_context *cmd)
- if (is_valid_fd(STDIN_FILENO) &&
- ((flags = fcntl(STDIN_FILENO, F_GETFL)) > 0) &&
- (flags & O_ACCMODE) != O_WRONLY) {
-- if (_reopen_stream(stdin, STDIN_FILENO, "r", "stdin", &new_stream)) {
-- stdin = new_stream;
-+ if (_reopen_stream(stdin, STDIN_FILENO, "r", "stdin")) {
- setlinebuf(stdin);
- } else
- cmd->linebuffer = NULL; /* Leave buffer in place (deliberate leak) */
-@@ -2177,8 +2178,7 @@ void destroy_toolcontext(struct cmd_context *cmd)
- if (is_valid_fd(STDOUT_FILENO) &&
- ((flags = fcntl(STDOUT_FILENO, F_GETFL)) > 0) &&
- (flags & O_ACCMODE) != O_RDONLY) {
-- if (_reopen_stream(stdout, STDOUT_FILENO, "w", "stdout", &new_stream)) {
-- stdout = new_stream;
-+ if (_reopen_stream(stdout, STDOUT_FILENO, "w", "stdout")) {
- setlinebuf(stdout);
- } else
- cmd->linebuffer = NULL; /* Leave buffer in place (deliberate leak) */
-diff --git a/tools/lvmcmdline.c b/tools/lvmcmdline.c
-index 6577977..a33258a 100644
---- a/tools/lvmcmdline.c
-+++ b/tools/lvmcmdline.c
-@@ -1744,7 +1744,7 @@ static int _check_standard_fds(void)
- int err = is_valid_fd(STDERR_FILENO);
-
- if (!is_valid_fd(STDIN_FILENO) &&
-- !(stdin = fopen(_PATH_DEVNULL, "r"))) {
-+ !freopen(_PATH_DEVNULL, "r", stdin)) {
- if (err)
- perror("stdin stream open");
- else
-@@ -1754,7 +1754,7 @@ static int _check_standard_fds(void)
- }
-
- if (!is_valid_fd(STDOUT_FILENO) &&
-- !(stdout = fopen(_PATH_DEVNULL, "w"))) {
-+ !freopen(_PATH_DEVNULL, "w", stdout)) {
- if (err)
- perror("stdout stream open");
- /* else no stdout */
-@@ -1762,7 +1762,7 @@ static int _check_standard_fds(void)
- }
-
- if (!is_valid_fd(STDERR_FILENO) &&
-- !(stderr = fopen(_PATH_DEVNULL, "w"))) {
-+ !freopen(_PATH_DEVNULL, "w", stderr)) {
- printf("stderr stream open: %s\n",
- strerror(errno));
- return 0;
---
-2.7.0
-
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/lvm2/lvm2/0002-use-PTHREAD_MUTEX_RECURSIVE-instead-of-PTHREAD_MUTEX.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/lvm2/lvm2/0002-use-PTHREAD_MUTEX_RECURSIVE-instead-of-PTHREAD_MUTEX.patch
deleted file mode 100644
index 969a15287..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/lvm2/lvm2/0002-use-PTHREAD_MUTEX_RECURSIVE-instead-of-PTHREAD_MUTEX.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-From c8a1b669cbff3eee367fd4db3389e337bc4c98ba Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Wed, 20 Jan 2016 04:46:26 +0000
-Subject: [PATCH 2/4] use PTHREAD_MUTEX_RECURSIVE instead of
- PTHREAD_MUTEX_RECURSIVE_NP
-
-PTHREAD_MUTEX_RECURSIVE_NP was used for compatibility with old glibc.
-Although due to the_GNU_SOURCES define the portable,
-PTHREAD_MUTEX_RECURSIVE will be available for Linuxes since at least
-1998. Simplify things giving us compatibility with musl which
-apparently does not provide the non-portable define.
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
-Upstream-Status: Pending
-
- daemons/lvmetad/lvmetad-core.c | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/daemons/lvmetad/lvmetad-core.c b/daemons/lvmetad/lvmetad-core.c
-index 7af9bde..63707c2 100644
---- a/daemons/lvmetad/lvmetad-core.c
-+++ b/daemons/lvmetad/lvmetad-core.c
-@@ -300,7 +300,7 @@ static struct dm_config_tree *lock_vg(lvmetad_state *s, const char *id) {
- if (!(vg = dm_hash_lookup(s->lock.vg, id))) {
- if (!(vg = malloc(sizeof(pthread_mutex_t))) ||
- pthread_mutexattr_init(&rec) ||
-- pthread_mutexattr_settype(&rec, PTHREAD_MUTEX_RECURSIVE_NP) ||
-+ pthread_mutexattr_settype(&rec, PTHREAD_MUTEX_RECURSIVE) ||
- pthread_mutex_init(vg, &rec))
- goto bad;
- if (!dm_hash_insert(s->lock.vg, id, vg)) {
-@@ -2890,7 +2890,7 @@ static int init(daemon_state *s)
- ls->log = s->log;
-
- pthread_mutexattr_init(&rec);
-- pthread_mutexattr_settype(&rec, PTHREAD_MUTEX_RECURSIVE_NP);
-+ pthread_mutexattr_settype(&rec, PTHREAD_MUTEX_RECURSIVE);
- pthread_mutex_init(&ls->lock.pvid_to_pvmeta, &rec);
- pthread_mutex_init(&ls->lock.vgid_to_metadata, &rec);
- pthread_mutex_init(&ls->lock.pvid_to_vgid, NULL);
---
-2.7.0
-
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/lvm2/lvm2_2.02.138.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/lvm2/lvm2_2.02.138.bb
deleted file mode 100644
index 13a866ea0..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/lvm2/lvm2_2.02.138.bb
+++ /dev/null
@@ -1,4 +0,0 @@
-require lvm2.inc
-
-SRC_URI[md5sum] = "c660e02ad4586a1d297b6befbe85556d"
-SRC_URI[sha256sum] = "93878a4ba4f70d9f2d0d919eb85bc51652a58776b5428ec8e7e32769d332f596"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/lvm2/lvm2_2.02.166.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/lvm2/lvm2_2.02.166.bb
new file mode 100644
index 000000000..7939f0552
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/lvm2/lvm2_2.02.166.bb
@@ -0,0 +1,81 @@
+require lvm2.inc
+
+SRC_URI[md5sum] = "c5a54ee0b86703daaad6e856439e115a"
+SRC_URI[sha256sum] = "e120b066b85b224552efda40204488c5123de068725676fd6e5c8bc655051b94"
+
+DEPENDS += "autoconf-archive-native"
+
+LVM2_PACKAGECONFIG = "dmeventd lvmetad"
+LVM2_PACKAGECONFIG_append_class-target = " \
+ ${@bb.utils.filter('DISTRO_FEATURES', 'selinux', d)} \
+ thin-provisioning-tools \
+ udev \
+"
+
+PACKAGECONFIG ??= "${LVM2_PACKAGECONFIG}"
+
+# Unset user/group to unbreak install.
+EXTRA_OECONF = "--with-user= \
+ --with-group= \
+ --enable-realtime \
+ --enable-applib \
+ --enable-cmdlib \
+ --enable-pkgconfig \
+ --with-usrlibdir=${libdir} \
+ --with-systemdsystemunitdir=${systemd_system_unitdir} \
+ --disable-thin_check_needs_check \
+ --with-thin-check=${sbindir}/thin_check \
+ --with-thin-dump=${sbindir}/thin_dump \
+ --with-thin-repair=${sbindir}/thin_repair \
+ --with-thin-restore=${sbindir}/thin_restore \
+"
+
+CACHED_CONFIGUREVARS += "MODPROBE_CMD=${base_sbindir}/modprobe"
+
+do_install_append() {
+ # Install machine specific configuration file
+ install -d ${D}${sysconfdir}/lvm
+ install -m 0644 ${WORKDIR}/lvm.conf ${D}${sysconfdir}/lvm/lvm.conf
+ sed -i -e 's:@libdir@:${libdir}:g' ${D}${sysconfdir}/lvm/lvm.conf
+ if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then
+ oe_runmake 'DESTDIR=${D}' install install_systemd_units
+ sed -i -e 's:/usr/bin/true:${base_bindir}/true:g' ${D}${systemd_system_unitdir}/blk-availability.service
+ else
+ oe_runmake 'DESTDIR=${D}' install install_initscripts
+ mv ${D}${sysconfdir}/rc.d/init.d ${D}${sysconfdir}/init.d
+ rm -rf ${D}${sysconfdir}/rc.d
+ fi
+ # Remove things related to libdevmapper
+ rm -f ${D}${sbindir}/dmsetup
+ rm -f ${D}${libdir}/libdevmapper.so.*
+ rm -f ${D}${libdir}/libdevmapper.so ${D}${libdir}/pkgconfig/devmapper.pc ${D}${includedir}/libdevmapper.h
+}
+
+PACKAGE_BEFORE_PN = "${PN}-scripts ${PN}-udevrules"
+
+SYSTEMD_PACKAGES = "${PN}"
+SYSTEMD_SERVICE_${PN} = "${@bb.utils.contains('PACKAGECONFIG', 'dmeventd', 'lvm2-monitor.service dm-event.socket dm-event.service', '', d)} \
+ ${@bb.utils.contains('PACKAGECONFIG', 'lvmetad', 'lvm2-lvmetad.socket lvm2-pvscan@.service', '', d)} \
+ blk-availability.service"
+SYSTEMD_AUTO_ENABLE = "disable"
+
+TARGET_CC_ARCH += "${LDFLAGS}"
+
+FILES_${PN} += "${libdir}/device-mapper/*.so"
+FILES_${PN}-scripts = " \
+ ${sbindir}/blkdeactivate \
+ ${sbindir}/fsadm \
+ ${sbindir}/lvmconf \
+ ${sbindir}/lvmdump \
+"
+# Specified explicitly for the udev rules, just in case that it does not get picked
+# up automatically:
+FILES_${PN}-udevrules = "${nonarch_base_libdir}/udev/rules.d"
+RDEPENDS_${PN}_append_class-target = " libdevmapper"
+
+RDEPENDS_${PN}-scripts = "${PN} (= ${EXTENDPKGV}) bash"
+RRECOMMENDS_${PN}_class-target = "${PN}-scripts (= ${EXTENDPKGV})"
+
+CONFFILES_${PN} += "${sysconfdir}/lvm/lvm.conf"
+
+BBCLASSEXTEND = "native nativesdk"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/lzip/lzip_1.16.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/lzip/lzip_1.16.bb
index af0b6ae8e..a5d99625a 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/lzip/lzip_1.16.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/lzip/lzip_1.16.bb
@@ -38,4 +38,4 @@ do_install () {
fi
}
-BBCLASSEXTEND += "native nativesdk"
+BBCLASSEXTEND = "native nativesdk"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/mcelog/mcelog/mcelog-debash.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/mcelog/mcelog/mcelog-debash.patch
deleted file mode 100644
index bea2f6293..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/mcelog/mcelog/mcelog-debash.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From 8f57d35747a3b3fabc33466563077373090f869c Mon Sep 17 00:00:00 2001
-From: Robert Yang <liezhi.yang@windriver.com>
-Date: Tue, 2 Sep 2014 07:05:15 -0700
-Subject: [PATCH] cache-error-trigger: remove bashism
-
-Use "$(cat $F)" to instead of "$(< $F)" to debash.
-
-Upstream-Status: Pending
-
-Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
----
- triggers/cache-error-trigger | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/triggers/cache-error-trigger b/triggers/cache-error-trigger
-index e32bfd6..785526f 100755
---- a/triggers/cache-error-trigger
-+++ b/triggers/cache-error-trigger
-@@ -1,4 +1,4 @@
--#!/bin/bash
-+#!/bin/sh
- # cache error trigger. This shell script is executed by mcelog in daemon mode
- # when a CPU reports excessive corrected cache errors. This could be a indication
- # for future uncorrected errors.
-@@ -28,7 +28,7 @@ for i in $AFFECTED_CPUS ; do
- logger -s -p daemon.crit -t mcelog "Offlining CPU $i due to cache error threshold"
- F=$(printf "/sys/devices/system/cpu/cpu%d/online" $i)
- echo 0 > $F
-- if [ "$(< $F)" != "0" ] ; then
-+ if [ "$(cat $F)" != "0" ] ; then
- logger -s -p daemon.warn -t mcelog "Offlining CPU $i failed"
- EXIT=1
- fi
---
-1.7.9.5
-
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/mcelog/mcelog_1.40.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/mcelog/mcelog_1.49.bb
index 9aebbd571..84633a76c 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/mcelog/mcelog_1.40.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/mcelog/mcelog_1.49.bb
@@ -6,14 +6,13 @@ HOMEPAGE = "http://mcelog.org/"
SECTION = "System Environment/Base"
SRC_URI = "git://git.kernel.org/pub/scm/utils/cpu/mce/mcelog.git;protocol=http; \
- file://mcelog-debash.patch \
file://run-ptest \
"
-SRCREV = "008c73e6de3a4bf969d1627e695d4efc807aed92"
+SRCREV = "2cfdf29b2ef98ccd5ed42cdde8bbe437e0d6412f"
LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://README;md5=3d12dd2a10bdd22379cc4c0fc6949a88"
+LIC_FILES_CHKSUM = "file://README.md;md5=279840fabb191e6cd9150492d31b0e20"
S = "${WORKDIR}/git"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/mg/files/remove_ncurses_check.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/mg/files/remove_ncurses_check.patch
deleted file mode 100644
index 16137da2b..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/mg/files/remove_ncurses_check.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-diff -uwr mg-20110905/configure mg-20110905-changed/configure
---- mg-20110905/configure 2011-09-05 13:36:16.000000000 -0500
-+++ mg-20110905-changed/configure 2014-08-14 10:46:14.168715425 -0500
-@@ -163,32 +163,6 @@
- echo 'Fails.'
- fi
-
--
--if [ ! -r /usr/include/term.h ]; then
-- note 'term.h'
-- if [ -r /usr/include/ncurses/term.h ]; then
-- echo "Found in /usr/include/ncurses"
-- extraflags="$extraflags -I/usr/include/ncurses"
-- else
-- for i in pkg local; do
-- if [ -r /usr/$i/include/term.h ]; then
-- echo "Found in /usr/$i/include"
-- extralibs="$extralibs -L/usr/$i/lib"
-- extraflags="$extraflags -I/usr/$i/include"
-- break
-- else
-- false
-- fi
-- done ||
-- {
-- echo 'Not found!' >&2
-- echo 'Do you have the ncurses devel package installed?' >&2
-- echo 'If you know where term.h is, please email the author!' >&2
-- exit 1
-- }
-- fi
--fi
--
- note 'base and dirname'
- if gcc_defines "__GLIBC__" || gcc_defines "__CYGWIN__" ; then
- echo 'Not present, adding.'
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/mg/mg/0001-Undefine-REGEX-for-musl-based-systems.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/mg/mg/0001-Undefine-REGEX-for-musl-based-systems.patch
new file mode 100644
index 000000000..130267931
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/mg/mg/0001-Undefine-REGEX-for-musl-based-systems.patch
@@ -0,0 +1,39 @@
+From a370ccd9447752c555aeca04f64021efedde4db3 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 7 Apr 2017 17:16:19 -0700
+Subject: [PATCH] Undefine REGEX for musl based systems
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ GNUmakefile | 1 -
+ Makefile | 2 +-
+ 2 files changed, 1 insertion(+), 2 deletions(-)
+
+diff --git a/GNUmakefile b/GNUmakefile
+index 7bf7dca..0e10030 100644
+--- a/GNUmakefile
++++ b/GNUmakefile
+@@ -41,7 +41,6 @@ endif
+ CC?= gcc
+ CFLAGS?= -O2 -pipe
+ CFLAGS+= -g -Wall
+-CPPFLAGS= -DREGEX
+ CPPFLAGS+= -D_GNU_SOURCE
+ CPPFLAGS+= $(BSD_CPPFLAGS) -D__dead=__dead2
+ LIBS= $(CURSES_LIBS) $(BSD_LIBS)
+diff --git a/Makefile b/Makefile
+index 94ce340..d516bbc 100644
+--- a/Makefile
++++ b/Makefile
+@@ -10,7 +10,7 @@ DPADD+= ${LIBCURSES} ${LIBUTIL}
+ # REGEX -- create regular expression functions.
+ # STARTUPFILE -- look for and handle initialization file.
+ #
+-CFLAGS+=-Wall -DREGEX
++CFLAGS+=-Wall
+
+ SRCS= autoexec.c basic.c bell.c buffer.c cinfo.c dir.c display.c \
+ echo.c extend.c file.c fileio.c funmap.c help.c kbd.c keymap.c \
+--
+2.12.2
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/mg/mg/0001-fileio-Include-sys-param.h-for-MAXNAMLEN.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/mg/mg/0001-fileio-Include-sys-param.h-for-MAXNAMLEN.patch
new file mode 100644
index 000000000..551f1df16
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/mg/mg/0001-fileio-Include-sys-param.h-for-MAXNAMLEN.patch
@@ -0,0 +1,25 @@
+From 51539bcd2ee9f765595c0be16eebc1daee112b27 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 7 Apr 2017 16:52:59 -0700
+Subject: [PATCH 1/2] fileio: Include sys/param.h for MAXNAMLEN
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ fileio.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/fileio.c b/fileio.c
+index 48a67a2..9b69665 100644
+--- a/fileio.c
++++ b/fileio.c
+@@ -12,6 +12,7 @@
+ #include <sys/time.h>
+ #include <sys/types.h>
+ #include <sys/wait.h>
++#include <sys/param.h>
+ #include <dirent.h>
+ #include <errno.h>
+ #include <fcntl.h>
+--
+2.12.2
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/mg/mg/0002-fileio-Define-DEFFILEMODE-if-platform-is-missing.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/mg/mg/0002-fileio-Define-DEFFILEMODE-if-platform-is-missing.patch
new file mode 100644
index 000000000..907d67064
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/mg/mg/0002-fileio-Define-DEFFILEMODE-if-platform-is-missing.patch
@@ -0,0 +1,28 @@
+From ce24a29cabb8f1774d262e120e5764a2afeb3825 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 7 Apr 2017 16:53:49 -0700
+Subject: [PATCH 2/2] fileio: Define DEFFILEMODE if platform is missing
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ fileio.c | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/fileio.c b/fileio.c
+index 9b69665..a852fd2 100644
+--- a/fileio.c
++++ b/fileio.c
+@@ -28,6 +28,10 @@
+ #include "kbd.h"
+ #include "pathnames.h"
+
++#if !defined(DEFFILEMODE)
++# define DEFFILEMODE (S_IRUSR|S_IWUSR|S_IRGRP|S_IWGRP|S_IROTH|S_IWOTH)/* 0666*/
++#endif
++
+ static char *bkuplocation(const char *);
+ static int bkupleavetmp(const char *);
+
+--
+2.12.2
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/mg/mg_20161005.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/mg/mg_20170401.bb
index f9ceb4665..dad1d008b 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/mg/mg_20161005.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/mg/mg_20170401.bb
@@ -5,9 +5,15 @@ LIC_FILES_CHKSUM = "file://version.c;md5=1895eb37bf6bd79cdc5c89d8166fabfb"
DEPENDS = "ncurses libbsd"
SECTION = "console/editors"
-SRC_URI = "http://homepage.boetes.org/software/mg/mg-${PV}.tar.gz"
-SRC_URI[md5sum] = "fc6faeeee7308bb46f3512b75867ed51"
-SRC_URI[sha256sum] = "b7fcb5136a6783ca24c8463ab0852fc1f26bdb2bb1c24759b2c51ccfc46c5e61"
+SRC_URI = "http://homepage.boetes.org/software/mg/mg-${PV}.tar.gz \
+ file://0001-fileio-Include-sys-param.h-for-MAXNAMLEN.patch \
+ file://0002-fileio-Define-DEFFILEMODE-if-platform-is-missing.patch \
+ "
+SRC_URI_append_libc-musl = "\
+ file://0001-Undefine-REGEX-for-musl-based-systems.patch \
+ "
+SRC_URI[md5sum] = "884388589fb38c2109ad9fed328be20a"
+SRC_URI[sha256sum] = "0a3608b17c153960cb1d954ca3b62445a77c0c1a18aa5c8c58aba9f6b8d62aab"
# CFLAGS isn't in EXTRA_OEMAKE, as the makefile picks it up via ?=
EXTRA_OEMAKE = "\
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/multipath-tools/files/0001-multipathd.service-Error-fix.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/multipath-tools/files/0001-multipathd.service-Error-fix.patch
index 1e48e1c5f..60c3c0aec 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/multipath-tools/files/0001-multipathd.service-Error-fix.patch
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/multipath-tools/files/0001-multipathd.service-Error-fix.patch
@@ -1,4 +1,4 @@
-From 74ff5e1cf8ef83dabcf6e6b92f87d6761f7f4d51 Mon Sep 17 00:00:00 2001
+From 630483b9738349c8b3e637a00879b96834a33cdb Mon Sep 17 00:00:00 2001
From: Li xin <lixin.fnst@cn.fujitsu.com>
Date: Tue, 7 Jul 2015 11:34:36 +0900
Subject: [PATCH] multipathd.service: Error fix
@@ -13,10 +13,10 @@ Signed-off-by: Li Xin <lixin.fnst@cn.fujitsu.com>
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/multipathd/multipathd.service b/multipathd/multipathd.service
-index be3ba3f..b8d3ecd 100644
+index e3d6f91..a7e00b2 100644
--- a/multipathd/multipathd.service
+++ b/multipathd/multipathd.service
-@@ -6,11 +6,12 @@ DefaultDependencies=no
+@@ -8,11 +8,12 @@ Wants=local-fs-pre.target multipathd.socket blk-availability.service
Conflicts=shutdown.target
[Service]
@@ -25,12 +25,12 @@ index be3ba3f..b8d3ecd 100644
NotifyAccess=main
LimitCORE=infinity
+PIDFile=/var/run/multipathd.pid
- ExecStartPre=/sbin/modprobe dm-multipath
+ ExecStartPre=/sbin/modprobe -a scsi_dh_alua scsi_dh_emc scsi_dh_rdac dm-multipath
-ExecStart=/sbin/multipathd -d -s
+ExecStart=/sbin/multipathd
ExecReload=/sbin/multipathd reconfigure
[Install]
--
-1.8.4.2
+2.11.0
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/multipath-tools/files/always-use-libdevmapper-kpartx.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/multipath-tools/files/always-use-libdevmapper-kpartx.patch
index a16a85405..803e52c10 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/multipath-tools/files/always-use-libdevmapper-kpartx.patch
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/multipath-tools/files/always-use-libdevmapper-kpartx.patch
@@ -1,4 +1,7 @@
-Always use devmapper for kpartx
+From 7267cf235fc052eaa1ca36e437096576edacb131 Mon Sep 17 00:00:00 2001
+From: Aws Ismail <aws.ismail@windriver.com>
+Date: Mon, 22 Sep 2014 17:22:32 -0700
+Subject: [PATCH] Always use devmapper for kpartx
Do not try to compute the LIBDM_API_COOKIE make variable
from host information when cross-compiling.
@@ -7,23 +10,27 @@ Upstream-Status: Inappropriate [embedded specific]
Signed-off-by: Aws Ismail <aws.ismail@windriver.com>
Signed-off-by: Joe Slater <joe.slater@windriver.com>
+---
+ kpartx/Makefile | 6 +-----
+ 1 file changed, 1 insertion(+), 5 deletions(-)
diff --git a/kpartx/Makefile b/kpartx/Makefile
-index 2a07334..24bdabc 100644
+index e8a59f2..e694a65 100644
--- a/kpartx/Makefile
+++ b/kpartx/Makefile
-@@ -4,13 +4,7 @@
- #
- include ../Makefile.inc
+@@ -7,11 +7,7 @@ CFLAGS += -I. -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64
+
+ LIBDEPS += -ldevmapper
--CFLAGS += -I. -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64
--
-LIBDM_API_COOKIE = $(shell grep -Ecs '^[a-z]*[[:space:]]+dm_task_set_cookie' /usr/include/libdevmapper.h)
-
-ifneq ($(strip $(LIBDM_API_COOKIE)),0)
- CFLAGS += -DLIBDM_API_COOKIE
-endif
-+CFLAGS += -I. -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -DLIBDM_API_COOKIE
++CFLAGS += -DLIBDM_API_COOKIE
- LDFLAGS = -ldevmapper
OBJS = bsd.o dos.o kpartx.o solaris.o unixware.o dasd.o sun.o \
+ gpt.o mac.o ps3.o crc32.o lopart.o xstrncpy.o devmapper.o
+--
+2.11.0
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/multipath-tools/files/always-use-libdevmapper.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/multipath-tools/files/always-use-libdevmapper.patch
index 89d2352da..33834f6b8 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/multipath-tools/files/always-use-libdevmapper.patch
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/multipath-tools/files/always-use-libdevmapper.patch
@@ -1,4 +1,7 @@
-Always use devmapper
+From c4f0dba4e86bfa20252fcc8218398e7468ca9149 Mon Sep 17 00:00:00 2001
+From: Aws Ismail <aws.ismail@windriver.com>
+Date: Mon, 22 Sep 2014 17:22:32 -0700
+Subject: [PATCH] Always use devmapper
Do not try to compute several _API_ make variables
from host information when cross-compiling.
@@ -7,38 +10,48 @@ Upstream-Status: Inappropriate [embedded specific]
Signed-off-by: Aws Ismail <aws.ismail@windriver.com>
Signed-off-by: Joe Slater <joe.slater@windriver.com>
+---
+ libmultipath/Makefile | 27 ++++-----------------------
+ 1 file changed, 4 insertions(+), 23 deletions(-)
diff --git a/libmultipath/Makefile b/libmultipath/Makefile
-index e5b06b3..efd6cf6 100644
+index 495cebe..9626e69 100644
--- a/libmultipath/Makefile
+++ b/libmultipath/Makefile
-@@ -17,23 +17,18 @@ OBJS = memory.o parser.o vector.o devmapper.o \
- log.o configure.o structs_vec.o sysfs.o prio.o checkers.o \
- lock.o waiter.o file.o wwids.o
+@@ -20,29 +20,10 @@ ifdef SYSTEMD
+ endif
+ endif
-LIBDM_API_FLUSH = $(shell grep -Ecs '^[a-z]*[[:space:]]+dm_task_no_flush' /usr/include/libdevmapper.h)
-
+-
-ifneq ($(strip $(LIBDM_API_FLUSH)),0)
-+#ifneq ($(strip $(LIBDM_API_FLUSH)),0)
- CFLAGS += -DLIBDM_API_FLUSH -D_GNU_SOURCE
+- CFLAGS += -DLIBDM_API_FLUSH -D_GNU_SOURCE
-endif
-+#endif
-
+-
-LIBDM_API_COOKIE = $(shell grep -Ecs '^[a-z]*[[:space:]]+dm_task_set_cookie' /usr/include/libdevmapper.h)
-
-ifneq ($(strip $(LIBDM_API_COOKIE)),0)
-+#ifneq ($(strip $(LIBDM_API_COOKIE)),0)
- CFLAGS += -DLIBDM_API_COOKIE
+- CFLAGS += -DLIBDM_API_COOKIE
-endif
-
--LIBUDEV_API_RECVBUF = $(shell grep -Ecs '^[a-z]*[[:space:]]+udev_monitor_set_resolve_buffer_size' /usr/include/libudev.h)
-+#endif
-
+-LIBUDEV_API_RECVBUF = $(shell grep -Ecs '^[a-z]*[[:space:]]+udev_monitor_set_receive_buffer_size' /usr/include/libudev.h)
+-
-ifneq ($(strip $(LIBUDEV_API_RECVBUF)),0)
-+#ifneq ($(strip $(LIBUDEV_API_RECVBUF)),0)
- CFLAGS += -DLIBUDEV_API_RECVBUF
+- CFLAGS += -DLIBUDEV_API_RECVBUF
-endif
-+#endif
-
+-
+-LIBDM_API_DEFERRED = $(shell grep -Ecs '^[a-z]*[[:space:]]+dm_task_deferred_remove' /usr/include/libdevmapper.h)
+-
+-ifneq ($(strip $(LIBDM_API_DEFERRED)),0)
+- CFLAGS += -DLIBDM_API_DEFERRED
+-endif
++CFLAGS += -DLIBDM_API_FLUSH -D_GNU_SOURCE
++CFLAGS += -DLIBDM_API_COOKIE
++CFLAGS += -DLIBUDEV_API_RECVBUF
++CFLAGS += -DLIBDM_API_DEFERRED
- all: $(LIBS)
+ OBJS = memory.o parser.o vector.o devmapper.o callout.o \
+ hwtable.o blacklist.o util.o dmparser.o config.o \
+--
+2.11.0
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/multipath-tools/files/checkers-disable-libcheckrbd.so.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/multipath-tools/files/checkers-disable-libcheckrbd.so.patch
new file mode 100644
index 000000000..908a5162e
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/multipath-tools/files/checkers-disable-libcheckrbd.so.patch
@@ -0,0 +1,31 @@
+From 148b848f45957e5e1c0466e8c79c84ba4a0bf241 Mon Sep 17 00:00:00 2001
+From: Patrick Ohly <patrick.ohly@intel.com>
+Date: Fri, 27 Jan 2017 10:35:54 +0100
+Subject: [PATCH] checkers: disable libcheckrbd.so
+
+libcheckrbd.so depends on librados, which is not currently available
+as a recipe. These checkers seem to be optional, so for now we merely
+disable compilation of libcheckrbd.so.
+
+Upstream-Status: Inappropriate [configuration]
+
+Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
+---
+ libmultipath/checkers/Makefile | 1 -
+ 1 file changed, 1 deletion(-)
+
+diff --git a/libmultipath/checkers/Makefile b/libmultipath/checkers/Makefile
+index 11ab76f..c848d50 100644
+--- a/libmultipath/checkers/Makefile
++++ b/libmultipath/checkers/Makefile
+@@ -14,7 +14,6 @@ LIBS= \
+ libcheckemc_clariion.so \
+ libcheckhp_sw.so \
+ libcheckrdac.so \
+- libcheckrbd.so
+
+ all: $(LIBS)
+
+--
+2.11.0
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/multipath-tools/files/do-not-link-libmpathpersist-to-TMPDIR.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/multipath-tools/files/do-not-link-libmpathpersist-to-TMPDIR.patch
deleted file mode 100644
index 86d5e0e9c..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/multipath-tools/files/do-not-link-libmpathpersist-to-TMPDIR.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From fe65ac8face3c88d9d4e12811f44e63ad72c59ae Mon Sep 17 00:00:00 2001
-From: Bian Naimeng <biannm@cn.fujitsu.com>
-Date: Thu, 18 Jun 2015 12:25:25 +0900
-Subject: [PATCH] fix build warning
-
- NOTE: Executing RunQueue Tasks
- WARNING: QA Issue: Symlink /lib/libmpathpersist.so in multipath-tools-dev points to TMPDIR [symlink-to-sysroot]
- NOTE: Tasks Summary: Attempted 1604 tasks of which 1591 didn't need to be rerun and all succeeded.
-
-Signed-off-by: Bian Naimeng <biannm@cn.fujitsu.com>
----
- libmpathpersist/Makefile | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/libmpathpersist/Makefile b/libmpathpersist/Makefile
-index c4ec1c5..62022eb 100644
---- a/libmpathpersist/Makefile
-+++ b/libmpathpersist/Makefile
-@@ -32,7 +32,7 @@ install: $(LIBS)
- $(INSTALL_PROGRAM) -m 755 -d $(DESTDIR)$(man3dir)
- $(INSTALL_PROGRAM) -m 755 -d $(DESTDIR)/usr/include/
- $(INSTALL_PROGRAM) -m 755 -d $(DESTDIR)/usr/share/doc/mpathpersist/
-- ln -sf $(DESTDIR)$(syslibdir)/$(LIBS) $(DESTDIR)$(syslibdir)/$(DEVLIB)
-+ ln -sf $(syslibdir)/$(LIBS) $(DESTDIR)$(syslibdir)/$(DEVLIB)
- install -m 644 mpath_persistent_reserve_in.3.gz $(DESTDIR)$(man3dir)
- install -m 644 mpath_persistent_reserve_out.3.gz $(DESTDIR)$(man3dir)
- install -m 644 mpath_persist.h $(DESTDIR)/usr/include/
---
-1.8.4.2
-
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/multipath-tools/files/makefile_inc.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/multipath-tools/files/makefile_inc.patch
index 71963e0c4..5b7b6966a 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/multipath-tools/files/makefile_inc.patch
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/multipath-tools/files/makefile_inc.patch
@@ -1,4 +1,8 @@
-multipath-tools: modify Makefile.inc for cross-compilation
+From 9f5768eca165502b0f17d271aa6f7cf530ec60b2 Mon Sep 17 00:00:00 2001
+From: Joe Slater <joe.slater@windriver.com>
+Date: Mon, 22 Sep 2014 17:22:32 -0700
+Subject: [PATCH] multipath-tools: modify Makefile.inc for
+ cross-compilation
Do not look for systemd info on the host, and allow us to pass in CFLAGS
using the OPTFLAGS variable.
@@ -10,10 +14,15 @@ Signed-off-by: Joe Slater <joe.slater@windriver.com>
Update for version 0.5.0-144-g770e6d0
Signed-off-by: Kai Kang <kai.kang@windriver.com>
+---
+ Makefile.inc | 17 +++++------------
+ 1 file changed, 5 insertions(+), 12 deletions(-)
+diff --git a/Makefile.inc b/Makefile.inc
+index 1cc8f44..15f8b91 100644
--- a/Makefile.inc
+++ b/Makefile.inc
-@@ -21,12 +21,6 @@ ifndef LIB
+@@ -29,12 +29,6 @@ ifndef RUN
endif
endif
@@ -26,14 +35,25 @@ Signed-off-by: Kai Kang <kai.kang@windriver.com>
ifndef SYSTEMDPATH
SYSTEMDPATH=usr/lib
endif
-@@ -53,7 +47,10 @@ ifndef RPM_OPT_FLAGS
- RPM_OPT_FLAGS = -O2 -g -pipe -Wformat-security -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4
- endif
+@@ -61,13 +55,12 @@ RM = rm -f
+ LN = ln -sf
+ INSTALL_PROGRAM = install
+-OPTFLAGS = -O2 -g -pipe -Wall -Wextra -Wformat=2 \
+- -Wno-sign-compare -Wno-unused-parameter -Wno-clobbered \
+- -Wp,-D_FORTIFY_SOURCE=2 -fstack-protector \
+- --param=ssp-buffer-size=4
+ifndef OPTFLAGS
- OPTFLAGS = $(RPM_OPT_FLAGS) -Wunused -Wstrict-prototypes
++OPTFLAGS = $(RPM_OPT_FLAGS) -Wunused -Wstrict-prototypes
+endif
-+
- CFLAGS = $(OPTFLAGS) -fPIC -DLIB_STRING=\"${LIB}\"
- SHARED_FLAGS = -shared
+-CFLAGS = $(OPTFLAGS) -fPIC -DLIB_STRING=\"${LIB}\" -DRUN_DIR=\"${RUN}\"
+-SHARED_FLAGS = -shared
++CFLAGS = $(OPTFLAGS) -fPIC -DLIB_STRING=\"${LIB}\" -DRUN_DIR=\"${RUN}\"
++SHARED_FLAGS = -shared
+
+ %.o: %.c
+ $(CC) $(CFLAGS) -c -o $@ $<
+--
+2.11.0
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/multipath-tools/files/shared-libs-avoid-linking-.so-as-executable.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/multipath-tools/files/shared-libs-avoid-linking-.so-as-executable.patch
new file mode 100644
index 000000000..88579e6aa
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/multipath-tools/files/shared-libs-avoid-linking-.so-as-executable.patch
@@ -0,0 +1,55 @@
+From 4311856200480288494df8df737f71ea316592d0 Mon Sep 17 00:00:00 2001
+From: Patrick Ohly <patrick.ohly@intel.com>
+Date: Thu, 26 Jan 2017 15:28:34 +0100
+Subject: [PATCH] shared libs: avoid linking .so as executable
+
+When the OE build systems sets CFLAGS including -pie, gcc overrides
+the earlier -shared parameter and tries to link a binary, leading to
+errors about missing functions like main().
+
+Reordering the parameters so that -shared comes after CFLAGS
+fixes this.
+
+Upstream-Status: Inappropriate [OE specific, -pie shouldn't be in CFLAGS?!]
+
+Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
+---
+diff --git a/libmpathcmd/Makefile b/libmpathcmd/Makefile
+index 457c4ca..f68c82c 100644
+--- a/libmpathcmd/Makefile
++++ b/libmpathcmd/Makefile
+@@ -9,7 +9,7 @@ OBJS = mpath_cmd.o
+ all: $(LIBS)
+
+ $(LIBS): $(OBJS)
+- $(CC) $(LDFLAGS) $(SHARED_FLAGS) -Wl,-soname=$@ $(CFLAGS) -o $@ $(OBJS) $(LIBDEPS)
++ $(CC) $(LDFLAGS) $(CFLAGS) $(SHARED_FLAGS) -Wl,-soname=$@ -o $@ $(OBJS) $(LIBDEPS)
+ $(LN) $@ $(DEVLIB)
+
+ install: $(LIBS)
+diff --git a/libmpathpersist/Makefile b/libmpathpersist/Makefile
+index 6e43427..2486302 100644
+--- a/libmpathpersist/Makefile
++++ b/libmpathpersist/Makefile
+@@ -15,7 +15,7 @@ all: $(LIBS)
+
+ $(LIBS):
+ $(CC) -c $(CFLAGS) *.c
+- $(CC) $(LDFLAGS) $(SHARED_FLAGS) $(LIBDEPS) -Wl,-soname=$@ $(CFLAGS) -o $@ $(OBJS)
++ $(CC) $(LDFLAGS) $(CFLAGS) $(SHARED_FLAGS) $(LIBDEPS) -Wl,-soname=$@ -o $@ $(OBJS)
+ $(LN) $(LIBS) $(DEVLIB)
+ $(GZIP) mpath_persistent_reserve_in.3 > mpath_persistent_reserve_in.3.gz
+ $(GZIP) mpath_persistent_reserve_out.3 > mpath_persistent_reserve_out.3.gz
+diff --git a/libmultipath/Makefile b/libmultipath/Makefile
+index 495cebe..752bcc0 100644
+--- a/libmultipath/Makefile
++++ b/libmultipath/Makefile
+@@ -55,7 +55,7 @@ OBJS = memory.o parser.o vector.o devmapper.o callout.o \
+ all: $(LIBS)
+
+ $(LIBS): $(OBJS)
+- $(CC) $(LDFLAGS) $(SHARED_FLAGS) -Wl,-soname=$@ $(CFLAGS) -o $@ $(OBJS) $(LIBDEPS)
++ $(CC) $(LDFLAGS) $(CFLAGS) $(SHARED_FLAGS) -Wl,-soname=$@ -o $@ $(OBJS) $(LIBDEPS)
+ $(LN) $@ $(DEVLIB)
+
+ install:
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/multipath-tools/multipath-tools_git.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/multipath-tools/multipath-tools_git.bb
index 6bd611895..5f8c42257 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/multipath-tools/multipath-tools_git.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/multipath-tools/multipath-tools_git.bb
@@ -1,6 +1,6 @@
SUMMARY = "The upstream project used to drive the Device Mapper multipathing driver"
-DEPENDS = "lvm2 libaio readline udev"
+DEPENDS = "libdevmapper libaio liburcu readline udev"
LICENSE = "LGPLv2"
@@ -9,56 +9,48 @@ SRC_URI = "git://git.opensvc.com/multipath-tools/.git;protocol=http \
file://makefile_inc.patch \
file://always-use-libdevmapper.patch \
file://always-use-libdevmapper-kpartx.patch \
- file://do-not-link-libmpathpersist-to-TMPDIR.patch \
file://0001-multipathd.service-Error-fix.patch \
+ file://shared-libs-avoid-linking-.so-as-executable.patch \
+ file://checkers-disable-libcheckrbd.so.patch \
"
-# 0.5.0
-#
-#SRCREV = "82f391e787dc02e9d9294aa391137ab424bb83c4"
-#LIC_FILES_CHKSUM = "file://COPYING;md5=7be2873b6270e45abacc503abbe2aa3d"
-
-# 0.5.0 + commits thru 7/18/2014
-#
-#SRCREV = "0d72f46c12207a6b7b89f5ef4f5ab5f87ed8bc90"
-#LIC_FILES_CHKSUM = "file://COPYING;md5=b06690e7a95c166eefe0199b39118eb1"
+LIC_FILES_CHKSUM = "file://COPYING;md5=5f30f0716dfdd0d91eb439ebec522ec2"
-# 0.5.0 + commits thru 9/12/2014
-#
-# includes important systemd related structure size fix
-#
-#SRCREV = "aec68ab217fd2956443b27ceeb97dd6475267789"
-LIC_FILES_CHKSUM = "file://COPYING;md5=b06690e7a95c166eefe0199b39118eb1"
-
-# 0.5.0 + commits thru 2/16/2015
-SRCREV = "770e6d0da035deaced82885939161c2b69225e10"
+# 0.6.4
+SRCREV = "922421cf795d53d339862bb2d99f1a85c96ad9a3"
inherit systemd
S = "${WORKDIR}/git"
-PV = "0.5.0+git${@'${SRCPV}'.split('+')[-1]}"
+PV = "0.6.4+git${@'${SRCPV}'.split('+')[-1]}"
TARGET_CC_ARCH += "${LDFLAGS}"
+# multipath-tools includes a copy of the valgrind.h header
+# file and uses the macros to suppress some false positives. However,
+# that only works on ARM when thumb is disabled. Otherwise one gets:
+# Error: shifts in CMP/MOV instructions are only supported in unified syntax -- `mov r12,r12,ror#3'
+# ../Makefile.inc:66: recipe for target 'debug.o' failed
+ARM_INSTRUCTION_SET_armv4 = "arm"
+ARM_INSTRUCTION_SET_armv5 = "arm"
+
# The exact version of SYSTEMD does not matter but should be greater than 209.
#
EXTRA_OEMAKE = 'MULTIPATH_VERSION=${PV} DESTDIR=${D} syslibdir=${base_libdir} \
OPTFLAGS="${CFLAGS}" \
+ bindir=${base_sbindir} \
LIB=${base_libdir} libdir=${base_libdir}/multipath \
- unitdir=/lib/systemd/system \
+ unitdir=${systemd_system_unitdir} \
${@bb.utils.contains("DISTRO_FEATURES", "systemd", "SYSTEMD=216", "", d)} \
'
do_install() {
oe_runmake install
- # Copy a sample conf file, but do not rename it multipath.conf.
- #
- cp multipath.conf.defaults ${D}${sysconfdir}
-
# We copy an initscript, but do not start multipathd at init time.
#
+ install -d ${D}${sysconfdir}/init.d
cp ${WORKDIR}/multipathd.oe ${D}${sysconfdir}/init.d/multipathd
}
@@ -68,11 +60,12 @@ FILES_${PN}-dbg += "${base_libdir}/multipath/.debug"
# systemd and udev stuff always goes under /lib!
#
FILES_${PN} += "${base_libdir}/multipath \
- /lib/systemd"
+ ${systemd_system_unitdir} \
+ "
PACKAGES =+ "kpartx"
FILES_kpartx = "${base_sbindir}/kpartx \
- /usr/lib/udev/kpartx_id \
+ ${nonarch_libdir}/udev/kpartx_id \
"
RDEPENDS_${PN} += "kpartx"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/mysql/mariadb-native_5.5.52.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/mysql/mariadb-native_5.5.55.bb
index 4ce960d7d..4ce960d7d 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/mysql/mariadb-native_5.5.52.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/mysql/mariadb-native_5.5.55.bb
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/mysql/mariadb.inc b/import-layers/meta-openembedded/meta-oe/recipes-support/mysql/mariadb.inc
index 689b8abf3..fd9dcbd1a 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/mysql/mariadb.inc
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/mysql/mariadb.inc
@@ -16,9 +16,11 @@ SRC_URI = "http://downloads.mariadb.com/MariaDB/mariadb-${PV}/source/mariadb-${P
file://configure.cmake-fix-valgrind.patch \
file://fix-a-building-failure.patch \
file://change-cc-to-cc-version.patch \
+ file://0001-disable-ucontext-on-musl.patch \
+ file://gcc7.patch \
"
-SRC_URI[md5sum] = "fca86f1eaed2163b4bdce4f98f472324"
-SRC_URI[sha256sum] = "e142f9459507b97c5848042863b313ce70750118446bb4e35e5c07fe66007293"
+SRC_URI[md5sum] = "54a0bbbc9b67308e7c076622d02f0fcd"
+SRC_URI[sha256sum] = "cb94e315d0fc90c62db5a6c7829c9966f674285d99b3ba3ffa575fb4a26edc86"
S = "${WORKDIR}/mariadb-${PV}"
@@ -48,7 +50,7 @@ FILES_${PN}-setupdb = "${sysconfdir}/init.d/install_db"
EXTRA_OEMAKE = "'GEN_LEX_HASH=${STAGING_BINDIR_NATIVE}/gen_lex_hash'"
-PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'pam', '', d)} setupdb"
+PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'pam', d)} setupdb"
PACKAGECONFIG_class-native = ""
PACKAGECONFIG[pam] = ",-DWITHOUT_AUTH_PAM=TRUE,libpam"
PACKAGECONFIG[valgrind] = "-DWITH_VALGRIND=TRUE,-DWITH_VALGRIND=FALSE,valgrind"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/mysql/mariadb/0001-disable-ucontext-on-musl.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/mysql/mariadb/0001-disable-ucontext-on-musl.patch
new file mode 100644
index 000000000..60e9199f9
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/mysql/mariadb/0001-disable-ucontext-on-musl.patch
@@ -0,0 +1,28 @@
+From 5bc3e7ef9700d12054e0125a126f1bb093f01ef9 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sun, 26 Mar 2017 14:30:33 -0700
+Subject: [PATCH] disable ucontext on musl
+
+musl does not have *contex() APIs even though it has ucontext.h header
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ include/my_context.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/include/my_context.h b/include/my_context.h
+index dd44103..9b28c17 100644
+--- a/include/my_context.h
++++ b/include/my_context.h
+@@ -31,7 +31,7 @@
+ #define MY_CONTEXT_USE_X86_64_GCC_ASM
+ #elif defined(__GNUC__) && __GNUC__ >= 3 && defined(__i386__)
+ #define MY_CONTEXT_USE_I386_GCC_ASM
+-#elif defined(HAVE_UCONTEXT_H)
++#elif defined(__GLIBC__) && defined(HAVE_UCONTEXT_H)
+ #define MY_CONTEXT_USE_UCONTEXT
+ #else
+ #define MY_CONTEXT_DISABLE
+--
+2.12.1
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/mysql/mariadb/gcc7.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/mysql/mariadb/gcc7.patch
new file mode 100644
index 000000000..3e75b26c7
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/mysql/mariadb/gcc7.patch
@@ -0,0 +1,13 @@
+Index: mariadb-5.5.55/client/mysql.cc
+===================================================================
+--- mariadb-5.5.55.orig/client/mysql.cc
++++ mariadb-5.5.55/client/mysql.cc
+@@ -2850,7 +2850,7 @@ You can turn off this feature to get a q
+ mysql_free_result(fields);
+ break;
+ }
+- field_names[i][num_fields*2]= '\0';
++ field_names[i][num_fields*2][0]= '\0';
+ j=0;
+ while ((sql_field=mysql_fetch_field(fields)))
+ {
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/mysql/mariadb_5.5.52.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/mysql/mariadb_5.5.55.bb
index d7895732a..d7895732a 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/mysql/mariadb_5.5.52.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/mysql/mariadb_5.5.55.bb
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/nano/nano-2.2.5/ncursesw.includedir.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/nano/nano-2.2.5/ncursesw.includedir.patch
deleted file mode 100644
index 0f224be39..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/nano/nano-2.2.5/ncursesw.includedir.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -uNr nano-2.2.5.orig//configure.ac nano-2.2.5/configure.ac
---- nano-2.2.5.orig//configure.ac 2010-08-06 03:00:51.000000000 +0200
-+++ nano-2.2.5/configure.ac 2010-08-10 14:11:52.000000000 +0200
-@@ -442,7 +442,7 @@
- AC_CHECK_HEADERS(ncurses.h)
-
- if test x$enable_utf8 != xno; then
-- AC_CHECK_LIB(ncursesw, get_wch, [CURSES_LIB="-lncursesw" CPPFLAGS="-I/usr/include/ncursesw $CPPFLAGS" CURSES_LIB_NAME=ncursesw CURSES_LIB_WIDE=yes])
-+ AC_CHECK_LIB(ncursesw, get_wch, [CURSES_LIB="-lncursesw" CURSES_LIB_NAME=ncursesw CURSES_LIB_WIDE=yes])
- fi
-
- if eval "test x$CURSES_LIB_NAME = x"; then
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/nano/nano.inc b/import-layers/meta-openembedded/meta-oe/recipes-support/nano/nano.inc
index 3fad02984..22f0fb2a0 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/nano/nano.inc
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/nano/nano.inc
@@ -5,15 +5,13 @@ HOMEPAGE = "http://www.nano-editor.org/"
LICENSE = "GPLv3"
LIC_FILES_CHKSUM = "file://COPYING;md5=f27defe1e96c2e1ecd4e0c9be8967949"
SECTION = "console/utils"
-DEPENDS = "ncurses"
+DEPENDS = "ncurses file"
RDEPENDS_${PN} = "ncurses-terminfo"
-INC_PR = "r3"
+PV_MAJOR = "${@d.getVar('PV').split('.')[0]}.${@d.getVar('PV').split('.')[1]}"
-PV_MAJOR = "${@d.getVar('PV',1).split('.')[0]}.${@d.getVar('PV',1).split('.')[1]}"
+SRC_URI = "https://nano-editor.org/dist/v${PV_MAJOR}/nano-${PV}.tar.xz"
-SRC_URI = "ftp://nano-editor.org/pub/nano/v${PV_MAJOR}/nano-${PV}.tar.gz"
+inherit autotools gettext pkgconfig
-inherit autotools gettext
-
-PACKAGECONFIG[tiny] = "--enable-tiny,--enable-all,"
+PACKAGECONFIG[tiny] = "--enable-tiny,"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/nano/nano_2.2.5.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/nano/nano_2.2.5.bb
deleted file mode 100644
index e656f46df..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/nano/nano_2.2.5.bb
+++ /dev/null
@@ -1,8 +0,0 @@
-include nano.inc
-
-PR = "${INC_PR}.0"
-
-SRC_URI += "file://ncursesw.includedir.patch"
-
-SRC_URI[md5sum] = "77a10a49589f975ce98350a4527a2ebf"
-SRC_URI[sha256sum] = "9015945d1badabbada203b37c4779d3dd1066234235c714deb439989c5cd7d9e"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/nano/nano_2.7.4.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/nano/nano_2.7.4.bb
new file mode 100644
index 000000000..eaf393e18
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/nano/nano_2.7.4.bb
@@ -0,0 +1,4 @@
+include nano.inc
+
+SRC_URI[md5sum] = "c011c7f9e47cb1da27d4e7cc8b56ec6a"
+SRC_URI[sha256sum] = "752170643039e2c95a433de357f0c70a8c4c4c561a90a7e7259a63e225b659b9"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/ne10/ne10/0001-CMakeLists.txt-Remove-mthumb-interwork.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/ne10/ne10/0001-CMakeLists.txt-Remove-mthumb-interwork.patch
new file mode 100644
index 000000000..9f2faaa52
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/ne10/ne10/0001-CMakeLists.txt-Remove-mthumb-interwork.patch
@@ -0,0 +1,44 @@
+From 8a0d1cbfcc0649b2696c9cf20f877366de259ce3 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 12 Nov 2016 18:15:26 +0000
+Subject: [PATCH] CMakeLists.txt: Remove -mthumb-interwork
+
+This option is meaningless with aapcs ABI
+which is the default for Linux and android
+for armv7+ architectures
+
+As an aside it helps in compiling with clang
+where this option is absent
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ CMakeLists.txt | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 784a5a8..68da920 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -117,7 +117,7 @@ if(ANDROID_PLATFORM)
+
+ # Adding cflags for armv7. Aarch64 does not need such flags.
+ if(${NE10_TARGET_ARCH} STREQUAL "armv7")
+- set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -mthumb-interwork -mthumb -march=armv7-a -mfloat-abi=${FLOAT_ABI} -mfpu=vfp3")
++ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -mthumb -march=armv7-a -mfloat-abi=${FLOAT_ABI} -mfpu=vfp3")
+ if(NE10_ARM_HARD_FLOAT)
+ # "--no-warn-mismatch" is needed for linker to suppress linker error about not all functions use VFP register to pass argument, eg.
+ # .../arm-linux-androideabi/bin/ld: error: ..../test-float.o
+@@ -138,8 +138,8 @@ if(ANDROID_PLATFORM)
+ ${CMAKE_C_FLAGS}")
+ elseif(GNULINUX_PLATFORM)
+ if("${NE10_TARGET_ARCH}" STREQUAL "armv7")
+- set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -mthumb-interwork -mthumb -march=armv7-a -mfpu=vfp3 -funsafe-math-optimizations")
+- set(CMAKE_ASM_FLAGS "${CMAKE_C_FLAGS} -mthumb-interwork -mthumb -march=armv7-a -mfpu=neon")
++ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -mthumb -march=armv7-a -mfpu=vfp3 -funsafe-math-optimizations")
++ set(CMAKE_ASM_FLAGS "${CMAKE_C_FLAGS} -mthumb -march=armv7-a -mfpu=neon")
+ # Turn on asm optimization for Linux on ARM v7.
+ set(NE10_ASM_OPTIMIZATION on)
+ endif()
+--
+1.8.3.1
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/ne10/ne10/0001-Dont-specify-march-explicitly.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/ne10/ne10/0001-Dont-specify-march-explicitly.patch
new file mode 100644
index 000000000..a8fea82dc
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/ne10/ne10/0001-Dont-specify-march-explicitly.patch
@@ -0,0 +1,38 @@
+From 66d332e4b631eef800c6f62cd347b164ee3b59d4 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Wed, 19 Apr 2017 10:11:21 -0700
+Subject: [PATCH] Dont specify -march explicitly
+
+it assumes armv7-a for all armv7 based machines but that may
+not be true e.g. machines based on armv7ve and cortexa-7
+it causes conflicts in OE builds because it specifies -march
+in recipes anyway so this is redundant in CMakeLists.txt
+
+Fixes
+
+| cc1: warning: switch -mcpu=cortex-a7 conflicts with -march=armv7-a switch
+| cc1: warning: switch -mcpu=cortex-a7 conflicts with -march=armv7-a switch
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ CMakeLists.txt | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 68da920..a4b94b9 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -138,8 +138,8 @@ if(ANDROID_PLATFORM)
+ ${CMAKE_C_FLAGS}")
+ elseif(GNULINUX_PLATFORM)
+ if("${NE10_TARGET_ARCH}" STREQUAL "armv7")
+- set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -mthumb -march=armv7-a -mfpu=vfp3 -funsafe-math-optimizations")
+- set(CMAKE_ASM_FLAGS "${CMAKE_C_FLAGS} -mthumb -march=armv7-a -mfpu=neon")
++ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -mthumb -mfpu=vfp3 -funsafe-math-optimizations")
++ set(CMAKE_ASM_FLAGS "${CMAKE_C_FLAGS} -mthumb -mfpu=neon")
+ # Turn on asm optimization for Linux on ARM v7.
+ set(NE10_ASM_OPTIMIZATION on)
+ endif()
+--
+2.12.2
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/ne10/ne10_1.2.1.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/ne10/ne10_1.2.1.bb
index de979821c..e5b50ce75 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/ne10/ne10_1.2.1.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/ne10/ne10_1.2.1.bb
@@ -1,13 +1,17 @@
DESCRIPTION = "Library containing NEON-optimized implementations for a common set of functions"
HOMEPAGE = "http://projectne10.github.io/Ne10/"
LICENSE = "BSD-3-Clause"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=463ac0a7d64edc2b787c4206635ca2b1"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=e7fe20c9be97be5579e3ab5d92d3a218"
SECTION = "libs"
-SRC_URI = "git://github.com/projectNe10/Ne10.git"
-SRCREV = "a08b29d88e3c94d32b5b8f827e7fcf0bc2b34ac2"
+SRC_URI = "git://github.com/projectNe10/Ne10.git \
+ file://0001-CMakeLists.txt-Remove-mthumb-interwork.patch \
+ file://0001-Dont-specify-march-explicitly.patch \
+ "
+SRCREV = "18c4c982a595dad069cd8df4932aefb1d257591f"
S = "${WORKDIR}/git"
+PV .= "gitr+${SRCPV}"
inherit cmake
@@ -18,10 +22,10 @@ COMPATIBLE_MACHINE_aarch64 = "(.*)"
COMPATIBLE_MACHINE_armv7a = "(.*)"
python () {
- if any(t.startswith('armv7') for t in d.getVar('TUNE_FEATURES', True).split()):
+ 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', True).split()):
+ 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:
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/ode/ode_0.13.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/ode/ode_0.13.bb
index 2dc82a8e1..c90c81954 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/ode/ode_0.13.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/ode/ode_0.13.bb
@@ -26,3 +26,6 @@ PACKAGECONFIG ?= ""
# if it isn't explicitly selected and "$build_os" == "$target_os", then configure will run
# series of AC_TRY_RUN which won't work for cross-compilation and configure fails
PACKAGECONFIG[double-precision] = "--enable-double-precision,--disable-double-precision"
+
+PNBLACKLIST[ode] ?= "Fails to build with RSS http://errors.yoctoproject.org/Errors/Details/130599/ - the recipe will be removed on 2017-09-01 unless the issue is fixed"
+PNBLACKLIST[ode] ?= "Fails to build with RSS http://errors.yoctoproject.org/Errors/Details/130620/ - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/open-vcdiff/open-vcdiff_0.8.4.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/open-vcdiff/open-vcdiff_0.8.4.bb
index c32668b31..d3f2e789b 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/open-vcdiff/open-vcdiff_0.8.4.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/open-vcdiff/open-vcdiff_0.8.4.bb
@@ -18,4 +18,4 @@ SRC_URI[sha256sum] = "2b142b1027fb0a62c41347600e01a53fa274dad15445a7da48083c830c
inherit autotools
# http://errors.yoctoproject.org/Errors/Details/68667/
-PNBLACKLIST[open-vcdiff] ?= "BROKEN: fails to build with gcc-6"
+PNBLACKLIST[open-vcdiff] ?= "BROKEN: fails to build with gcc-6 - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/openct/openct_0.6.20.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/openct/openct_0.6.20.bb
index d4ad9c1c4..0f5568c31 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/openct/openct_0.6.20.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/openct/openct_0.6.20.bb
@@ -24,7 +24,7 @@ SRC_URI[sha256sum] = "6cd3e2933d29eb1f875c838ee58b8071fd61f0ec8ed5922a86c01c805d
LICENSE = "LGPLv2+"
LIC_FILES_CHKSUM = "file://LGPL-2.1;md5=2d5025d4aa3495befef8f17206a5b0a1"
-inherit ${@bb.utils.contains('VIRTUAL-RUNTIME_init_manager','systemd','systemd','', d)}
+inherit ${@bb.utils.filter('VIRTUAL-RUNTIME_init_manager', 'systemd', d)}
SYSTEMD_SERVICE_${PN} += "openct.service "
SYSTEMD_AUTO_ENABLE = "enable"
@@ -34,7 +34,7 @@ EXTRA_OECONF=" \
--enable-pcsc \
--enable-doc \
--enable-api-doc \
- --with-udev=/lib/udev \
+ --with-udev=${nonarch_base_libdir}/udev \
--with-bundle=${libdir}/pcsc/drivers \
"
@@ -42,7 +42,7 @@ inherit autotools pkgconfig
FILES_${PN} += " \
${libdir}/ctapi \
- /lib/udev \
+ ${nonarch_base_libdir}/udev \
${libdir}/openct-ifd.so \
${libdir}/pcsc \
/run/openct/status \
@@ -62,7 +62,7 @@ do_install_append() {
do_install () {
rm -rf ${D}
install -d ${D}/etc
- install -dm 755 ${D}/lib/udev
+ install -dm 755 ${D}${nonarch_base_libdir}/udev
# fix up hardcoded paths
sed -i -e 's,/etc/,${sysconfdir}/,' -e 's,/usr/sbin/,${sbindir}/,' \
${WORKDIR}/openct.service ${WORKDIR}/openct.init
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/opencv/opencv-samples_2.4.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/opencv/opencv-samples_2.4.bb
index b8e3a2d20..107184be4 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/opencv/opencv-samples_2.4.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/opencv/opencv-samples_2.4.bb
@@ -38,4 +38,4 @@ do_install() {
FILES_${PN}-dev += "${datadir}/opencv/samples/*.c* ${datadir}/opencv/samples/*.vcp* ${datadir}/opencv/samples/build*"
FILES_${PN} += "${bindir} ${datadir}/opencv"
-PNBLACKLIST[opencv-samples] ?= "Depends on blacklisted opencv"
+PNBLACKLIST[opencv-samples] ?= "Depends on blacklisted opencv - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/opencv/opencv/0001-3rdparty-ippicv-Use-pre-downloaded-ipp.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/opencv/opencv/0001-3rdparty-ippicv-Use-pre-downloaded-ipp.patch
index d568018b8..1077d05be 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/opencv/opencv/0001-3rdparty-ippicv-Use-pre-downloaded-ipp.patch
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/opencv/opencv/0001-3rdparty-ippicv-Use-pre-downloaded-ipp.patch
@@ -17,7 +17,7 @@ index a6016dbe10bc..af4062c8e95e 100644
endif()
+ if(NOT DEFINED OPENCV_ICV_PATH)
- set(OPENCV_ICV_UNPACK_PATH "${CMAKE_CURRENT_LIST_DIR}/unpack")
+ set(OPENCV_ICV_UNPACK_PATH "${CMAKE_BINARY_DIR}/3rdparty/ippicv")
set(OPENCV_ICV_PATH "${OPENCV_ICV_UNPACK_PATH}${OPENCV_ICV_PACKAGE_SUBDIR}")
+ endif()
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/opencv/opencv/0001-Make-opencv-ts-create-share-library-intead-of-static.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/opencv/opencv/0001-Make-opencv-ts-create-share-library-intead-of-static.patch
new file mode 100644
index 000000000..05ec41fd8
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/opencv/opencv/0001-Make-opencv-ts-create-share-library-intead-of-static.patch
@@ -0,0 +1,26 @@
+From 49d1f7c40a5d097f23671318045ac54bc07846cf Mon Sep 17 00:00:00 2001
+From: Bian Naimeng <biannm@cn.fujitsu.com>
+Date: Wed, 19 Apr 2017 03:11:37 +0900
+Subject: [PATCH] Make opencv-ts create share library intead of static.
+
+Signed-off-by: Lei Maohui <leimaohui@cn.fujitsu.com>
+---
+ modules/ts/CMakeLists.txt | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/modules/ts/CMakeLists.txt b/modules/ts/CMakeLists.txt
+index bb56da2..7bb4ce9 100644
+--- a/modules/ts/CMakeLists.txt
++++ b/modules/ts/CMakeLists.txt
+@@ -4,7 +4,7 @@ if(IOS)
+ ocv_module_disable(ts)
+ endif()
+
+-set(OPENCV_MODULE_TYPE STATIC)
++#set(OPENCV_MODULE_TYPE STATIC)
+ set(OPENCV_MODULE_IS_PART_OF_WORLD FALSE)
+
+ ocv_warnings_disable(CMAKE_CXX_FLAGS -Wundef)
+--
+1.8.4.2
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/opencv/opencv/0001-Revert-cuda-fix-fp16-compilation.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/opencv/opencv/0001-Revert-cuda-fix-fp16-compilation.patch
new file mode 100644
index 000000000..507d7968a
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/opencv/opencv/0001-Revert-cuda-fix-fp16-compilation.patch
@@ -0,0 +1,27 @@
+From 69f9707678190f6a0948a547dce948251f972676 Mon Sep 17 00:00:00 2001
+From: Randy MacLeod <Randy.MacLeod@windriver.com>
+Date: Wed, 26 Apr 2017 14:57:30 -0400
+Subject: [PATCH 1/2] Revert "cuda: fix fp16 compilation"
+
+This reverts commit 12e00827be40576b686ea4438a6e6ef85208743d.
+---
+ modules/core/include/opencv2/core/cvdef.h | 3 +--
+ 1 file changed, 1 insertion(+), 2 deletions(-)
+
+diff --git a/modules/core/include/opencv2/core/cvdef.h b/modules/core/include/opencv2/core/cvdef.h
+index 699b166..efc24ca 100644
+--- a/modules/core/include/opencv2/core/cvdef.h
++++ b/modules/core/include/opencv2/core/cvdef.h
+@@ -303,8 +303,7 @@ enum CpuFeatures {
+ #define CV_2PI 6.283185307179586476925286766559
+ #define CV_LOG2 0.69314718055994530941723212145818
+
+-#if defined __ARM_FP16_FORMAT_IEEE \
+- && !defined __CUDACC__
++#if defined (__ARM_FP16_FORMAT_IEEE)
+ # define CV_FP16_TYPE 1
+ #else
+ # define CV_FP16_TYPE 0
+--
+2.9.3
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/opencv/opencv/0001-To-fix-errors-as-following.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/opencv/opencv/0001-To-fix-errors-as-following.patch
new file mode 100644
index 000000000..820ab81f6
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/opencv/opencv/0001-To-fix-errors-as-following.patch
@@ -0,0 +1,53 @@
+From db1d9cc82b68f6593360d66ef40cb6b0fc377e6e Mon Sep 17 00:00:00 2001
+From: Huang Qiyu <huangqy.fnst@cn.fujitsu.com>
+Date: Fri, 19 May 2017 04:27:50 +0900
+Subject: [PATCH] To fix errors as following:
+
+"test_main.cpp:45: undefined reference to `parseCustomOptions(int, char**)'"
+"perf_abs.cpp:13: undefined reference to `cvtest::param_seed'"
+"test_superres.cpp:270: undefined reference to `checkIppStatus()'"
+
+Signed-off-by: Huang Qiyu <huangqy.fnst@cn.fujitsu.com>
+---
+ modules/ts/include/opencv2/ts.hpp | 4 ++--
+ modules/ts/include/opencv2/ts/ts_ext.hpp | 2 +-
+ 2 files changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/modules/ts/include/opencv2/ts.hpp b/modules/ts/include/opencv2/ts.hpp
+index c573905..7ff6cc1 100644
+--- a/modules/ts/include/opencv2/ts.hpp
++++ b/modules/ts/include/opencv2/ts.hpp
+@@ -539,7 +539,7 @@ protected:
+ }
+ };
+
+-extern uint64 param_seed;
++CV_EXPORTS extern uint64 param_seed;
+
+ struct CV_EXPORTS DefaultRngAuto
+ {
+@@ -602,7 +602,7 @@ void dumpOpenCLDevice();
+ #define TEST_DUMP_OCL_INFO
+ #endif
+
+-void parseCustomOptions(int argc, char **argv);
++CV_EXPORTS void parseCustomOptions(int argc, char **argv);
+
+ #define CV_TEST_MAIN(resourcesubdir, ...) \
+ int main(int argc, char **argv) \
+diff --git a/modules/ts/include/opencv2/ts/ts_ext.hpp b/modules/ts/include/opencv2/ts/ts_ext.hpp
+index 05ccc63..8075065 100644
+--- a/modules/ts/include/opencv2/ts/ts_ext.hpp
++++ b/modules/ts/include/opencv2/ts/ts_ext.hpp
+@@ -9,7 +9,7 @@
+ #define OPENCV_TS_EXT_HPP
+
+ namespace cvtest {
+-void checkIppStatus();
++CV_EXPORTS void checkIppStatus();
+ }
+
+ #define CV_TEST_INIT \
+--
+2.7.4
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/opencv/opencv/0001-tracking-make-opencv_dnn-dependancy-optional.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/opencv/opencv/0001-tracking-make-opencv_dnn-dependancy-optional.patch
new file mode 100644
index 000000000..fba43eba7
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/opencv/opencv/0001-tracking-make-opencv_dnn-dependancy-optional.patch
@@ -0,0 +1,243 @@
+From 69f86025978b9bbbefa54a7248316a859773aeaf Mon Sep 17 00:00:00 2001
+From: berak <px1704@web.de>
+Date: Sat, 4 Mar 2017 12:38:50 +0100
+Subject: [PATCH] tracking: make opencv_dnn dependancy optional
+
+Upstream-status: Backport [https://github.com/opencv/opencv_contrib/commit/43925b60d392fbd01d6b0449713f010f9babe448]
+Signed-off-by: Ismo Puustinen <ismo.puustinen@intel.com>
+
+---
+ modules/tracking/CMakeLists.txt | 3 +--
+ modules/tracking/samples/goturnTracker.cpp | 22 +++++++++++++++++++---
+ modules/tracking/samples/multiTracker_dataset.cpp | 1 +
+ modules/tracking/samples/tracker_dataset.cpp | 1 +
+ modules/tracking/src/gtrTracker.cpp | 11 ++++++++++-
+ modules/tracking/src/gtrTracker.hpp | 12 ++++++++----
+ modules/tracking/src/gtrUtils.cpp | 6 +++---
+ modules/tracking/src/gtrUtils.hpp | 5 ++---
+ modules/tracking/src/tracker.cpp | 1 +
+ 9 files changed, 46 insertions(+), 16 deletions(-)
+
+diff --git a/modules/tracking/CMakeLists.txt b/modules/tracking/CMakeLists.txt
+index a8b3183..d27f999 100644
+--- a/modules/tracking/CMakeLists.txt
++++ b/modules/tracking/CMakeLists.txt
+@@ -1,2 +1 @@
+-set(the_description "Tracking API")
+-ocv_define_module(tracking opencv_imgproc opencv_core opencv_video opencv_highgui opencv_dnn opencv_plot OPTIONAL opencv_datasets WRAP python)
+\ No newline at end of file
++ocv_define_module(tracking opencv_imgproc opencv_core opencv_video opencv_highgui opencv_plot OPTIONAL opencv_dnn opencv_datasets WRAP python)
+diff --git a/modules/tracking/samples/goturnTracker.cpp b/modules/tracking/samples/goturnTracker.cpp
+index 389771e..1e6632d 100644
+--- a/modules/tracking/samples/goturnTracker.cpp
++++ b/modules/tracking/samples/goturnTracker.cpp
+@@ -45,6 +45,9 @@
+ //1 - Train you own GOTURN model using <https://github.com/Auron-X/GOTURN_Training_Toolkit>
+ //2 - Download pretrained caffemodel from <https://github.com/opencv/opencv_extra>
+
++#include "opencv2/opencv_modules.hpp"
++#if defined(HAVE_OPENCV_DNN) && defined(HAVE_OPENCV_DATASETS)
++
+ #include "opencv2/datasets/track_alov.hpp"
+ #include <opencv2/core/utility.hpp>
+ #include <opencv2/tracking.hpp>
+@@ -65,8 +68,8 @@ static bool startSelection = false;
+ Rect2d boundingBox;
+
+ static const char* keys =
+-{ "{@dataset_path |true| Dataset path }"
+-"{@dataset_id |1| Dataset ID }"
++{ "{@dataset_path || Dataset path }"
++ "{@dataset_id |1| Dataset ID }"
+ };
+
+ static void onMouse(int event, int x, int y, int, void*)
+@@ -144,9 +147,14 @@ int main(int argc, char *argv[])
+ Ptr<cv::datasets::TRACK_alov> dataset = TRACK_alov::create();
+ dataset->load(datasetRootPath);
+ dataset->initDataset(datasetID);
+-
+ //Read first frame
+ dataset->getNextFrame(frame);
++ if (frame.empty())
++ {
++ cout << "invalid dataset: " << datasetRootPath << endl;
++ return -2;
++ }
++
+ frame.copyTo(image);
+ rectangle(image, boundingBox, Scalar(255, 0, 0), 2, 1);
+ imshow("GOTURN Tracking", image);
+@@ -215,3 +223,11 @@ int main(int argc, char *argv[])
+
+ return 0;
+ }
++
++#else // ! HAVE_OPENCV_DNN && HAVE_OPENCV_DATASETS
++#include <opencv2/core.hpp>
++int main() {
++ CV_Error(cv::Error::StsNotImplemented , "this sample needs to be built with opencv_datasets and opencv_dnn !");
++ return -1;
++}
++#endif
+diff --git a/modules/tracking/samples/multiTracker_dataset.cpp b/modules/tracking/samples/multiTracker_dataset.cpp
+index 2826b19..b5c27da 100644
+--- a/modules/tracking/samples/multiTracker_dataset.cpp
++++ b/modules/tracking/samples/multiTracker_dataset.cpp
+@@ -234,6 +234,7 @@ int main(int argc, char *argv[])
+ }
+
+ #else // ! HAVE_OPENCV_DATASETS
++#include <opencv2/core.hpp>
+ int main() {
+ CV_Error(cv::Error::StsNotImplemented , "this sample needs to be built with opencv_datasets !");
+ return -1;
+diff --git a/modules/tracking/samples/tracker_dataset.cpp b/modules/tracking/samples/tracker_dataset.cpp
+index 8b7832a..6178105 100644
+--- a/modules/tracking/samples/tracker_dataset.cpp
++++ b/modules/tracking/samples/tracker_dataset.cpp
+@@ -234,6 +234,7 @@ int main(int argc, char *argv[])
+
+
+ #else // ! HAVE_OPENCV_DATASETS
++#include <opencv2/core.hpp>
+ int main() {
+ CV_Error(cv::Error::StsNotImplemented , "this sample needs to be built with opencv_datasets !");
+ return -1;
+diff --git a/modules/tracking/src/gtrTracker.cpp b/modules/tracking/src/gtrTracker.cpp
+index 58debfd..4904f47 100644
+--- a/modules/tracking/src/gtrTracker.cpp
++++ b/modules/tracking/src/gtrTracker.cpp
+@@ -38,7 +38,7 @@
+ // the use of this software, even if advised of the possibility of such damage.
+ //
+ //M*/
+-
++#include "opencv2/opencv_modules.hpp"
+ #include "gtrTracker.hpp"
+
+
+@@ -54,9 +54,16 @@ void TrackerGOTURN::Params::write(cv::FileStorage& /*fs*/) const {}
+
+ Ptr<TrackerGOTURN> TrackerGOTURN::createTracker(const TrackerGOTURN::Params &parameters)
+ {
++#ifdef HAVE_OPENCV_DNN
+ return Ptr<gtr::TrackerGOTURNImpl>(new gtr::TrackerGOTURNImpl(parameters));
++#else
++ (void)(parameters);
++ CV_ErrorNoReturn(cv::Error::StsNotImplemented , "to use GOTURN, the tracking module needs to be built with opencv_dnn !");
++#endif
+ }
+
++
++#ifdef HAVE_OPENCV_DNN
+ namespace gtr
+ {
+
+@@ -183,9 +190,11 @@ bool TrackerGOTURNImpl::updateImpl(const Mat& image, Rect2d& boundingBox)
+ //Set new model image and BB from current frame
+ ((TrackerGOTURNModel*)static_cast<TrackerModel*>(model))->setImage(curFrame);
+ ((TrackerGOTURNModel*)static_cast<TrackerModel*>(model))->setBoudingBox(curBB);
++
+ return true;
+ }
+
+ }
++#endif // OPENCV_HAVE_DNN
+
+ }
+diff --git a/modules/tracking/src/gtrTracker.hpp b/modules/tracking/src/gtrTracker.hpp
+index 34f2c48..21ae3d9 100644
+--- a/modules/tracking/src/gtrTracker.hpp
++++ b/modules/tracking/src/gtrTracker.hpp
+@@ -45,11 +45,15 @@
+
+ #include "precomp.hpp"
+ #include "opencv2/video/tracking.hpp"
+-#include "opencv2/dnn.hpp"
+ #include "gtrUtils.hpp"
+ #include "opencv2/imgproc.hpp"
+-#include<algorithm>
+-#include<limits.h>
++
++#include <algorithm>
++#include <limits.h>
++
++#include "opencv2/opencv_modules.hpp"
++#ifdef HAVE_OPENCV_DNN
++#include "opencv2/dnn.hpp"
+
+ namespace cv
+ {
+@@ -72,5 +76,5 @@ public:
+
+ }
+ }
+-
++#endif
+ #endif
+diff --git a/modules/tracking/src/gtrUtils.cpp b/modules/tracking/src/gtrUtils.cpp
+index 0df1197..e80dda1 100644
+--- a/modules/tracking/src/gtrUtils.cpp
++++ b/modules/tracking/src/gtrUtils.cpp
+@@ -58,7 +58,7 @@ double generateRandomLaplacian(double b, double m)
+ return m - b*log(n);
+ }
+
+-Rect2f anno2rect(vector<Point2f> annoBB)
++Rect2f anno2rect(std::vector<Point2f> annoBB)
+ {
+ Rect2f rectBB;
+ rectBB.x = min(annoBB[0].x, annoBB[1].x);
+@@ -69,9 +69,9 @@ Rect2f anno2rect(vector<Point2f> annoBB)
+ return rectBB;
+ }
+
+-vector <TrainingSample> gatherFrameSamples(Mat prevFrame, Mat currFrame, Rect2f prevBB, Rect2f currBB)
++std::vector <TrainingSample> gatherFrameSamples(Mat prevFrame, Mat currFrame, Rect2f prevBB, Rect2f currBB)
+ {
+- vector <TrainingSample> trainingSamples;
++ std::vector <TrainingSample> trainingSamples;
+ Point2f currCenter, prevCenter;
+ Rect2f targetPatchRect, searchPatchRect;
+ Mat targetPatch, searchPatch;
+diff --git a/modules/tracking/src/gtrUtils.hpp b/modules/tracking/src/gtrUtils.hpp
+index 8f388be..41aad21 100644
+--- a/modules/tracking/src/gtrUtils.hpp
++++ b/modules/tracking/src/gtrUtils.hpp
+@@ -4,7 +4,6 @@
+ #include "precomp.hpp"
+ #include <vector>
+ #include "opencv2/highgui.hpp"
+-#include <opencv2/datasets/track_alov.hpp>
+
+ namespace cv
+ {
+@@ -50,10 +49,10 @@ struct TrainingSample
+ double generateRandomLaplacian(double b, double m);
+
+ //Convert ALOV300++ anno coordinates to Rectangle BB
+-Rect2f anno2rect(vector<Point2f> annoBB);
++Rect2f anno2rect(std::vector<Point2f> annoBB);
+
+ //Gather samples from random video frame
+-vector <TrainingSample> gatherFrameSamples(Mat prevFrame, Mat currFrame, Rect2f prevBB, Rect2f currBB);
++std::vector <TrainingSample> gatherFrameSamples(Mat prevFrame, Mat currFrame, Rect2f prevBB, Rect2f currBB);
+
+ }
+ }
+diff --git a/modules/tracking/src/tracker.cpp b/modules/tracking/src/tracker.cpp
+index 8127f2a..b96aca8 100644
+--- a/modules/tracking/src/tracker.cpp
++++ b/modules/tracking/src/tracker.cpp
+@@ -112,6 +112,7 @@ Ptr<Tracker> Tracker::create( const String& trackerType )
+ BOILERPLATE_CODE("TLD",TrackerTLD);
+ BOILERPLATE_CODE("KCF",TrackerKCF);
+ BOILERPLATE_CODE("GOTURN", TrackerGOTURN);
++
+ return Ptr<Tracker>();
+ }
+
+--
+2.9.4
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/opencv/opencv/0002-Revert-check-FP16-build-condition-correctly.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/opencv/opencv/0002-Revert-check-FP16-build-condition-correctly.patch
new file mode 100644
index 000000000..d1950a936
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/opencv/opencv/0002-Revert-check-FP16-build-condition-correctly.patch
@@ -0,0 +1,245 @@
+From 9108e39e5584ef9b41f80751639b4ec72b3e9538 Mon Sep 17 00:00:00 2001
+From: Randy MacLeod <Randy.MacLeod@windriver.com>
+Date: Wed, 26 Apr 2017 15:00:32 -0400
+Subject: [PATCH 2/2] Revert "check FP16 build condition correctly"
+
+This reverts commit c7cb116dc08441fe56cf82d5b21f929e5b674c13.
+
+Fix up revert conflicts to take previous behaviour.
+---
+ cmake/OpenCVCompilerOptions.cmake | 45 +++++++++--------------
+ modules/core/include/opencv2/core/cvdef.h | 2 +-
+ modules/core/src/convert.cpp | 11 +++---
+ modules/core/test/test_intrin.cpp | 60 ++++++++++++++-----------------
+ 4 files changed, 48 insertions(+), 70 deletions(-)
+
+diff --git a/cmake/OpenCVCompilerOptions.cmake b/cmake/OpenCVCompilerOptions.cmake
+index 5bb0479..4b19fdb 100644
+--- a/cmake/OpenCVCompilerOptions.cmake
++++ b/cmake/OpenCVCompilerOptions.cmake
+@@ -185,7 +185,7 @@ if(CMAKE_COMPILER_IS_GNUCXX)
+ add_extra_compiler_option("-mfp16-format=ieee")
+ endif(ARM)
+ if(ENABLE_NEON)
+- add_extra_compiler_option("-mfpu=neon")
++ add_extra_compiler_option("-mfpu=neon-fp16")
+ endif()
+ if(ENABLE_VFPV3 AND NOT ENABLE_NEON)
+ add_extra_compiler_option("-mfpu=vfpv3")
+@@ -370,34 +370,6 @@ if(CMAKE_COMPILER_IS_GNUCXX AND CMAKE_OPENCV_GCC_VERSION_NUM GREATER 399)
+ add_extra_compiler_option(-fvisibility-inlines-hidden)
+ endif()
+
+-if(NOT OPENCV_FP16_DISABLE AND NOT IOS)
+- if(ARM AND ENABLE_NEON)
+- set(FP16_OPTION "-mfpu=neon-fp16")
+- elseif((X86 OR X86_64) AND NOT MSVC AND ENABLE_AVX)
+- set(FP16_OPTION "-mf16c")
+- endif()
+- try_compile(__VALID_FP16
+- "${OpenCV_BINARY_DIR}"
+- "${OpenCV_SOURCE_DIR}/cmake/checks/fp16.cpp"
+- COMPILE_DEFINITIONS "-DCHECK_FP16" "${FP16_OPTION}"
+- OUTPUT_VARIABLE TRY_OUT
+- )
+- if(NOT __VALID_FP16)
+- if((X86 OR X86_64) AND NOT MSVC AND NOT ENABLE_AVX)
+- # GCC enables AVX when mf16c is passed
+- message(STATUS "FP16: Feature disabled")
+- else()
+- message(STATUS "FP16: Compiler support is not available")
+- endif()
+- else()
+- message(STATUS "FP16: Compiler support is available")
+- set(HAVE_FP16 1)
+- if(NOT ${FP16_OPTION} STREQUAL "")
+- add_extra_compiler_option(${FP16_OPTION})
+- endif()
+- endif()
+-endif()
+-
+ #combine all "extra" options
+ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${OPENCV_EXTRA_FLAGS} ${OPENCV_EXTRA_C_FLAGS}")
+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${OPENCV_EXTRA_FLAGS} ${OPENCV_EXTRA_CXX_FLAGS}")
+@@ -450,6 +422,21 @@ if(MSVC)
+ endif()
+ endif()
+
++if(NOT OPENCV_FP16_DISABLE)
++ try_compile(__VALID_FP16
++ "${OpenCV_BINARY_DIR}"
++ "${OpenCV_SOURCE_DIR}/cmake/checks/fp16.cpp"
++ COMPILE_DEFINITIONS "-DCHECK_FP16"
++ OUTPUT_VARIABLE TRY_OUT
++ )
++ if(NOT __VALID_FP16)
++ message(STATUS "FP16: Compiler support is not available")
++ else()
++ message(STATUS "FP16: Compiler support is available")
++ set(HAVE_FP16 1)
++ endif()
++endif()
++
+ if(APPLE AND NOT CMAKE_CROSSCOMPILING AND NOT DEFINED ENV{LDFLAGS} AND EXISTS "/usr/local/lib")
+ link_directories("/usr/local/lib")
+ endif()
+diff --git a/modules/core/include/opencv2/core/cvdef.h b/modules/core/include/opencv2/core/cvdef.h
+index efc24ca..a10936b 100644
+--- a/modules/core/include/opencv2/core/cvdef.h
++++ b/modules/core/include/opencv2/core/cvdef.h
+@@ -312,7 +312,7 @@ enum CpuFeatures {
+ typedef union Cv16suf
+ {
+ short i;
+-#if CV_FP16_TYPE
++#if ( defined (__arm__) || defined (__aarch64__) ) && !defined (__CUDACC__) && ( defined (__GNUC__) && ( ( ( 4 <= __GNUC__ ) && ( 7 <= __GNUC__ ) ) || ( 5 <= __GNUC__ ) ) )
+ __fp16 h;
+ #endif
+ struct _fp16Format
+diff --git a/modules/core/src/convert.cpp b/modules/core/src/convert.cpp
+index e04d89e..46db26f 100644
+--- a/modules/core/src/convert.cpp
++++ b/modules/core/src/convert.cpp
+@@ -44,7 +44,6 @@
+ #include "precomp.hpp"
+
+ #include "opencl_kernels_core.hpp"
+-#include "opencv2/core/hal/intrin.hpp"
+
+ #include "opencv2/core/openvx/ovx_defs.hpp"
+
+@@ -4382,7 +4381,7 @@ struct Cvt_SIMD<float, int>
+
+ #endif
+
+-#if !CV_FP16_TYPE
++#if !( ( defined (__arm__) || defined (__aarch64__) ) && ( defined (__GNUC__) && ( ( ( 4 <= __GNUC__ ) && ( 7 <= __GNUC__ ) ) || ( 5 <= __GNUC__ ) ) ) )
+ // const numbers for floating points format
+ const unsigned int kShiftSignificand = 13;
+ const unsigned int kMaskFp16Significand = 0x3ff;
+@@ -4390,7 +4389,7 @@ const unsigned int kBiasFp16Exponent = 15;
+ const unsigned int kBiasFp32Exponent = 127;
+ #endif
+
+-#if CV_FP16_TYPE
++#if ( defined (__arm__) || defined (__aarch64__) ) && ( defined (__GNUC__) && ( ( ( 4 <= __GNUC__ ) && ( 7 <= __GNUC__ ) ) || ( 5 <= __GNUC__ ) ) )
+ static float convertFp16SW(short fp16)
+ {
+ // Fp16 -> Fp32
+@@ -4452,7 +4451,7 @@ static float convertFp16SW(short fp16)
+ }
+ #endif
+
+-#if CV_FP16_TYPE
++#if ( defined (__arm__) || defined (__aarch64__) ) && ( defined (__GNUC__) && ( ( ( 4 <= __GNUC__ ) && ( 7 <= __GNUC__ ) ) || ( 5 <= __GNUC__ ) ) )
+ static short convertFp16SW(float fp32)
+ {
+ // Fp32 -> Fp16
+@@ -4560,7 +4559,7 @@ cvtScaleHalf_<float, short>( const float* src, size_t sstep, short* dst, size_t
+ if ( ( (intptr_t)dst & 0xf ) == 0 )
+ #endif
+ {
+-#if CV_FP16 && CV_SIMD128
++#if CV_FP16
+ for ( ; x <= size.width - 4; x += 4)
+ {
+ v_float32x4 v_src = v_load(src + x);
+@@ -4606,7 +4605,7 @@ cvtScaleHalf_<short, float>( const short* src, size_t sstep, float* dst, size_t
+ if ( ( (intptr_t)src & 0xf ) == 0 )
+ #endif
+ {
+-#if CV_FP16 && CV_SIMD128
++#if CV_FP16
+ for ( ; x <= size.width - 4; x += 4)
+ {
+ v_float16x4 v_src = v_load_f16(src + x);
+diff --git a/modules/core/test/test_intrin.cpp b/modules/core/test/test_intrin.cpp
+index 66b2083..7349d48 100644
+--- a/modules/core/test/test_intrin.cpp
++++ b/modules/core/test/test_intrin.cpp
+@@ -729,56 +729,48 @@ template<typename R> struct TheTest
+ return *this;
+ }
+
++#if CV_FP16
+ TheTest & test_loadstore_fp16()
+ {
+-#if CV_FP16
+ AlignedData<R> data;
+ AlignedData<R> out;
+
+- if(checkHardwareSupport(CV_CPU_FP16))
+- {
+- // check if addresses are aligned and unaligned respectively
+- EXPECT_EQ((size_t)0, (size_t)&data.a.d % 16);
+- EXPECT_NE((size_t)0, (size_t)&data.u.d % 16);
+- EXPECT_EQ((size_t)0, (size_t)&out.a.d % 16);
+- EXPECT_NE((size_t)0, (size_t)&out.u.d % 16);
+-
+- // check some initialization methods
+- R r1 = data.u;
+- R r2 = v_load_f16(data.a.d);
+- R r3(r2);
+- EXPECT_EQ(data.u[0], r1.get0());
+- EXPECT_EQ(data.a[0], r2.get0());
+- EXPECT_EQ(data.a[0], r3.get0());
+-
+- // check some store methods
+- out.a.clear();
+- v_store_f16(out.a.d, r1);
+- EXPECT_EQ(data.a, out.a);
+- }
++ // check if addresses are aligned and unaligned respectively
++ EXPECT_EQ((size_t)0, (size_t)&data.a.d % 16);
++ EXPECT_NE((size_t)0, (size_t)&data.u.d % 16);
++ EXPECT_EQ((size_t)0, (size_t)&out.a.d % 16);
++ EXPECT_NE((size_t)0, (size_t)&out.u.d % 16);
++
++ // check some initialization methods
++ R r1 = data.u;
++ R r2 = v_load_f16(data.a.d);
++ R r3(r2);
++ EXPECT_EQ(data.u[0], r1.get0());
++ EXPECT_EQ(data.a[0], r2.get0());
++ EXPECT_EQ(data.a[0], r3.get0());
++
++ // check some store methods
++ out.a.clear();
++ v_store_f16(out.a.d, r1);
++ EXPECT_EQ(data.a, out.a);
+
+ return *this;
+-#endif
+ }
+
+ TheTest & test_float_cvt_fp16()
+ {
+-#if CV_FP16
+ AlignedData<v_float32x4> data;
+
+- if(checkHardwareSupport(CV_CPU_FP16))
+- {
+- // check conversion
+- v_float32x4 r1 = v_load(data.a.d);
+- v_float16x4 r2 = v_cvt_f16(r1);
+- v_float32x4 r3 = v_cvt_f32(r2);
+- EXPECT_EQ(0x3c00, r2.get0());
+- EXPECT_EQ(r3.get0(), r1.get0());
+- }
++ // check conversion
++ v_float32x4 r1 = v_load(data.a.d);
++ v_float16x4 r2 = v_cvt_f16(r1);
++ v_float32x4 r3 = v_cvt_f32(r2);
++ EXPECT_EQ(0x3c00, r2.get0());
++ EXPECT_EQ(r3.get0(), r1.get0());
+
+ return *this;
+-#endif
+ }
++#endif
+
+ };
+
+--
+2.9.3
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/opencv/opencv/fixgcc60.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/opencv/opencv/fixgcc60.patch
deleted file mode 100644
index 5d0bf97ca..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/opencv/opencv/fixgcc60.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-diff --git a/cmake/OpenCVPCHSupport.cmake b/cmake/OpenCVPCHSupport.cmake
-index 28ccc1c6be4f..b0e1cbf77287 100644
---- a/cmake/OpenCVPCHSupport.cmake
-+++ b/cmake/OpenCVPCHSupport.cmake
-@@ -19,7 +19,7 @@ IF(CMAKE_COMPILER_IS_GNUCXX)
- ARGS ${CMAKE_CXX_COMPILER_ARG1} -dumpversion
- OUTPUT_VARIABLE gcc_compiler_version)
- #MESSAGE("GCC Version: ${gcc_compiler_version}")
-- IF(gcc_compiler_version VERSION_GREATER "4.2.-1")
-+ IF(gcc_compiler_version VERSION_GREATER "4.2.-1" AND gcc_compiler_version VERSION_LESS "6.0.0")
- SET(PCHSupport_FOUND TRUE)
- ENDIF()
-
-diff --git a/cmake/OpenCVUtils.cmake b/cmake/OpenCVUtils.cmake
-index 3a23cd73633d..1fea1578b1d9 100644
---- a/cmake/OpenCVUtils.cmake
-+++ b/cmake/OpenCVUtils.cmake
-@@ -76,7 +76,11 @@ function(ocv_include_directories)
- if("${__abs_dir}" MATCHES "^${OpenCV_SOURCE_DIR}" OR "${__abs_dir}" MATCHES "^${OpenCV_BINARY_DIR}")
- list(APPEND __add_before "${dir}")
- else()
-- include_directories(AFTER SYSTEM "${dir}")
-+ if (gcc_compiler_version VERSION_LESS "6.0.0")
-+ include_directories(AFTER SYSTEM "${dir}")
-+ else()
-+ include_directories(AFTER "${dir}")
-+ endif()
- endif()
- endforeach()
- include_directories(BEFORE ${__add_before})
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/opencv/opencv/uselocalxfeatures.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/opencv/opencv/uselocalxfeatures.patch
new file mode 100644
index 000000000..a2db48d7c
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/opencv/opencv/uselocalxfeatures.patch
@@ -0,0 +1,12 @@
+diff --git a/modules/xfeatures2d/CMakeLists.txt b/modules/xfeatures2d/CMakeLists.txt
+index f295bddaed66..6086e75ec37b 100644
+--- a/modules/xfeatures2d/CMakeLists.txt
++++ b/modules/xfeatures2d/CMakeLists.txt
+@@ -1,5 +1,5 @@
+ set(the_description "Contributed/Experimental Algorithms for Salient 2D Features Detection")
+ ocv_define_module(xfeatures2d opencv_core opencv_imgproc opencv_features2d opencv_calib3d opencv_shape opencv_highgui opencv_videoio opencv_ml
+ OPTIONAL opencv_cudaarithm WRAP python java)
+-include(cmake/download_vgg.cmake)
+-include(cmake/download_boostdesc.cmake)
++#include(cmake/download_vgg.cmake)
++#include(cmake/download_boostdesc.cmake)
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/opencv/opencv/useoeprotobuf.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/opencv/opencv/useoeprotobuf.patch
new file mode 100644
index 000000000..3068bd44d
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/opencv/opencv/useoeprotobuf.patch
@@ -0,0 +1,13 @@
+diff --git a/modules/dnn/cmake/OpenCVFindLibProtobuf.cmake b/modules/dnn/cmake/OpenCVFindLibProtobuf.cmake
+index eb2a729cc2eb..8717736484de 100644
+--- a/modules/dnn/cmake/OpenCVFindLibProtobuf.cmake
++++ b/modules/dnn/cmake/OpenCVFindLibProtobuf.cmake
+@@ -24,7 +24,7 @@ if(NOT BUILD_PROTOBUF AND NOT (DEFINED PROTOBUF_INCLUDE_DIR AND DEFINED PROTOBUF
+ find_package(Protobuf QUIET)
+ endif()
+
+-if(PROTOBUF_FOUND)
++if(PROTOBUF_FOUND OR (DEFINED PROTOBUF_INCLUDE_DIR AND DEFINED PROTOBUF_LIBRARIES))
+ # nothing
+ else()
+ include(${CMAKE_CURRENT_LIST_DIR}/download_protobuf.cmake)
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/opencv/opencv_2.4.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/opencv/opencv_2.4.bb
index ced066f56..d17c640ac 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/opencv/opencv_2.4.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/opencv/opencv_2.4.bb
@@ -65,12 +65,12 @@ python populate_packages_prepend () {
do_split_packages(d, cv_libdir, '^lib(.*)\.a$', 'lib%s-dev', 'OpenCV %s development package', extra_depends='${PN}-dev')
do_split_packages(d, cv_libdir, '^lib(.*)\.so\.*', 'lib%s', 'OpenCV %s library', extra_depends='', allow_links=True)
- pn = d.getVar('PN', 1)
+ pn = d.getVar('PN')
metapkg = pn + '-dev'
d.setVar('ALLOW_EMPTY_' + metapkg, "1")
blacklist = [ metapkg ]
metapkg_rdepends = [ ]
- packages = d.getVar('PACKAGES', 1).split()
+ packages = d.getVar('PACKAGES').split()
for pkg in packages[1:]:
if not pkg in blacklist and not pkg in metapkg_rdepends and pkg.endswith('-dev'):
metapkg_rdepends.append(pkg)
@@ -103,4 +103,4 @@ do_install_append() {
}
# http://errors.yoctoproject.org/Errors/Details/40660/
-PNBLACKLIST[opencv] ?= "Not compatible with currently used ffmpeg 3"
+PNBLACKLIST[opencv] ?= "Not compatible with currently used ffmpeg 3 - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/opencv/opencv_3.1.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/opencv/opencv_3.2.bb
index 1bbb965c8..535c761fa 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/opencv/opencv_3.1.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/opencv/opencv_3.2.bb
@@ -3,40 +3,49 @@ HOMEPAGE = "http://opencv.org/"
SECTION = "libs"
LICENSE = "BSD-3-Clause"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=0ea90d28b4de883d7af5e6711f14f7bf"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=2b2f8752cc5edf504d283107d033f544"
ARM_INSTRUCTION_SET_armv4 = "arm"
ARM_INSTRUCTION_SET_armv5 = "arm"
-DEFAULT_PREFERENCE = "-1"
+DEPENDS = "libtool swig-native bzip2 zlib glib-2.0 libwebp"
-DEPENDS = "python-numpy libtool swig swig-native python bzip2 zlib glib-2.0 libwebp protobuf protobuf-native"
-
-SRCREV_opencv = "92387b1ef8fad15196dd5f7fb4931444a68bc93a"
-SRCREV_contrib = "5409d5ad560523c85c6796cc5a009347072d883c"
-SRCREV_party3 = "81a676001ca8075ada498583e4166079e5744668"
+SRCREV_opencv = "70bbf17b133496bd7d54d034b0f94bd869e0e810"
+SRCREV_contrib = "86342522b0eb2b16fa851c020cc4e0fef4e010b7"
+SRCREV_ipp = "81a676001ca8075ada498583e4166079e5744668"
+SRCREV_bootdesc = "34e4206aef44d50e6bbcd0ab06354b52e7466d26"
+SRCREV_vgg = "fccf7cd6a4b12079f73bbfb21745f9babcd4eb1d"
IPP_MD5 = "808b791a6eac9ed78d32a7666804320e"
SRCREV_FORMAT = "opencv"
-SRC_URI = "git://github.com/Itseez/opencv.git;name=opencv \
- git://github.com/Itseez/opencv_contrib.git;destsuffix=contrib;name=contrib \
- git://github.com/Itseez/opencv_3rdparty.git;branch=ippicv/master_20151201;destsuffix=party3;name=party3 \
+SRC_URI = "git://github.com/opencv/opencv.git;name=opencv \
+ git://github.com/opencv/opencv_contrib.git;destsuffix=contrib;name=contrib \
+ git://github.com/opencv/opencv_3rdparty.git;branch=ippicv/master_20151201;destsuffix=ipp;name=ipp \
+ git://github.com/opencv/opencv_3rdparty.git;branch=contrib_xfeatures2d_boostdesc_20161012;destsuffix=bootdesc;name=bootdesc \
+ git://github.com/opencv/opencv_3rdparty.git;branch=contrib_xfeatures2d_vgg_20160317;destsuffix=vgg;name=vgg \
file://0001-3rdparty-ippicv-Use-pre-downloaded-ipp.patch \
- file://fixgcc60.patch \
file://fixpkgconfig.patch \
+ file://uselocalxfeatures.patch;patchdir=../contrib/ \
+ file://useoeprotobuf.patch;patchdir=../contrib/ \
+ file://0001-Revert-cuda-fix-fp16-compilation.patch \
+ file://0002-Revert-check-FP16-build-condition-correctly.patch \
+ file://0001-Make-opencv-ts-create-share-library-intead-of-static.patch \
+ file://0001-To-fix-errors-as-following.patch \
+ file://0001-tracking-make-opencv_dnn-dependancy-optional.patch;patchdir=../contrib/ \
"
-PV = "3.1+git${SRCPV}"
+PV = "3.2+git${SRCPV}"
S = "${WORKDIR}/git"
do_unpack_extra() {
- tar xzf ${WORKDIR}/party3/ippicv/ippicv_linux_20151201.tgz -C ${WORKDIR}
+ tar xzf ${WORKDIR}/ipp/ippicv/ippicv_linux_20151201.tgz -C ${WORKDIR}
+ cp ${WORKDIR}/vgg/*.i ${WORKDIR}/contrib/modules/xfeatures2d/src
+ cp ${WORKDIR}/bootdesc/*.i ${WORKDIR}/contrib/modules/xfeatures2d/src
}
addtask unpack_extra after do_unpack before do_patch
-EXTRA_OECMAKE = "-DPYTHON2_NUMPY_INCLUDE_DIRS:PATH=${STAGING_LIBDIR}/${PYTHON_DIR}/site-packages/numpy/core/include \
- -DOPENCV_EXTRA_MODULES_PATH=${WORKDIR}/contrib/modules \
+EXTRA_OECMAKE = "-DOPENCV_EXTRA_MODULES_PATH=${WORKDIR}/contrib/modules \
-DWITH_1394=OFF \
-DCMAKE_SKIP_RPATH=ON \
-DOPENCV_ICV_PACKAGE_DOWNLOADED=${IPP_MD5} \
@@ -49,83 +58,95 @@ EXTRA_OECMAKE = "-DPYTHON2_NUMPY_INCLUDE_DIRS:PATH=${STAGING_LIBDIR}/${PYTHON_DI
"
EXTRA_OECMAKE_append_x86 = " -DX86=ON"
-PACKAGECONFIG ??= "eigen jpeg png tiff v4l libv4l gstreamer samples tbb gphoto2 \
+PACKAGECONFIG ??= "python3 eigen jpeg png tiff v4l libv4l gstreamer samples tbb gphoto2 \
${@bb.utils.contains("DISTRO_FEATURES", "x11", "gtk", "", d)} \
${@bb.utils.contains("LICENSE_FLAGS_WHITELIST", "commercial", "libav", "", d)}"
PACKAGECONFIG[amdblas] = "-DWITH_OPENCLAMDBLAS=ON,-DWITH_OPENCLAMDBLAS=OFF,libclamdblas,"
PACKAGECONFIG[amdfft] = "-DWITH_OPENCLAMDFFT=ON,-DWITH_OPENCLAMDFFT=OFF,libclamdfft,"
-PACKAGECONFIG[eigen] = "-DWITH_EIGEN=ON,-DWITH_EIGEN=OFF,libeigen,"
+PACKAGECONFIG[dnn] = "-DBUILD_opencv_dnn=ON -DUPDATE_PROTO_FILES=ON -DBUILD_PROTOBUF=OFF,-DBUILD_opencv_dnn=OFF,protobuf protobuf-native,"
+PACKAGECONFIG[eigen] = "-DWITH_EIGEN=ON,-DWITH_EIGEN=OFF,libeigen gflags glog,"
+PACKAGECONFIG[freetype] = "-DBUILD_opencv_freetype=ON,-DBUILD_opencv_freetype=OFF,freetype,"
PACKAGECONFIG[gphoto2] = "-DWITH_GPHOTO2=ON,-DWITH_GPHOTO2=OFF,libgphoto2,"
PACKAGECONFIG[gstreamer] = "-DWITH_GSTREAMER=ON,-DWITH_GSTREAMER=OFF,gstreamer1.0 gstreamer1.0-plugins-base,"
PACKAGECONFIG[gtk] = "-DWITH_GTK=ON,-DWITH_GTK=OFF,gtk+3,"
PACKAGECONFIG[jasper] = "-DWITH_JASPER=ON,-DWITH_JASPER=OFF,jasper,"
+PACKAGECONFIG[java] = "-DJAVA_INCLUDE_PATH=${JAVA_HOME}/include -DJAVA_INCLUDE_PATH2=${JAVA_HOME}/include/linux -DJAVA_AWT_INCLUDE_PATH=${JAVA_HOME}/include -DJAVA_AWT_LIBRARY=${JAVA_HOME}/lib/amd64/libjawt.so -DJAVA_JVM_LIBRARY=${JAVA_HOME}/lib/amd64/server/libjvm.so,,ant-native fastjar-native openjdk-8-native,"
PACKAGECONFIG[jpeg] = "-DWITH_JPEG=ON,-DWITH_JPEG=OFF,jpeg,"
PACKAGECONFIG[libav] = "-DWITH_FFMPEG=ON,-DWITH_FFMPEG=OFF,libav,"
PACKAGECONFIG[libv4l] = "-DWITH_LIBV4L=ON,-DWITH_LIBV4L=OFF,v4l-utils,"
-PACKAGECONFIG[opencl] = "-DWITH_OPENCL=ON,-DWITH_OPENCL=OFF,opencl-headers,"
-PACKAGECONFIG[oracle-java] = "-DJAVA_INCLUDE_PATH=${JAVA_HOME}/include -DJAVA_INCLUDE_PATH2=${JAVA_HOME}/include/linux -DJAVA_AWT_INCLUDE_PATH=${JAVA_HOME}/include -DJAVA_AWT_LIBRARY=${JAVA_HOME}/lib/amd64/libjawt.so -DJAVA_JVM_LIBRARY=${JAVA_HOME}/lib/amd64/server/libjvm.so,,ant-native oracle-jse-jdk oracle-jse-jdk-native,"
+PACKAGECONFIG[opencl] = "-DWITH_OPENCL=ON,-DWITH_OPENCL=OFF,opencl-headers virtual/opencl-icd,"
+PACKAGECONFIG[oracle-java] = "-DJAVA_INCLUDE_PATH=${ORACLE_JAVA_HOME}/include -DJAVA_INCLUDE_PATH2=${ORACLE_JAVA_HOME}/include/linux -DJAVA_AWT_INCLUDE_PATH=${ORACLE_JAVA_HOME}/include -DJAVA_AWT_LIBRARY=${ORACLE_JAVA_HOME}/lib/amd64/libjawt.so -DJAVA_JVM_LIBRARY=${ORACLE_JAVA_HOME}/lib/amd64/server/libjvm.so,,ant-native oracle-jse-jdk oracle-jse-jdk-native,"
PACKAGECONFIG[png] = "-DWITH_PNG=ON,-DWITH_PNG=OFF,libpng,"
+PACKAGECONFIG[python2] = "-DPYTHON2_NUMPY_INCLUDE_DIRS:PATH=${STAGING_LIBDIR}/${PYTHON_DIR}/site-packages/numpy/core/include,,python-numpy,"
+PACKAGECONFIG[python3] = "-DPYTHON3_NUMPY_INCLUDE_DIRS:PATH=${STAGING_LIBDIR}/${PYTHON_DIR}/site-packages/numpy/core/include,,python3-numpy,"
PACKAGECONFIG[samples] = "-DBUILD_EXAMPLES=ON -DINSTALL_PYTHON_EXAMPLES=ON,-DBUILD_EXAMPLES=OFF,,"
PACKAGECONFIG[tbb] = "-DWITH_TBB=ON,-DWITH_TBB=OFF,tbb,"
+PACKAGECONFIG[text] = "-DBUILD_opencv_text=ON,-DBUILD_opencv_text=OFF,tesseract,"
PACKAGECONFIG[tiff] = "-DWITH_TIFF=ON,-DWITH_TIFF=OFF,tiff,"
PACKAGECONFIG[v4l] = "-DWITH_V4L=ON,-DWITH_V4L=OFF,v4l-utils,"
-inherit distutils-base pkgconfig cmake
+inherit pkgconfig cmake
+
+inherit ${@bb.utils.contains('PACKAGECONFIG', 'python3', 'distutils3-base', '', d)}
+inherit ${@bb.utils.contains('PACKAGECONFIG', 'python2', 'distutils-base', '', d)}
export PYTHON_CSPEC="-I${STAGING_INCDIR}/${PYTHON_DIR}"
-export PYTHON="${STAGING_BINDIR_NATIVE}/python"
-export JAVA_HOME="${STAGING_DIR_NATIVE}/usr/bin/java"
+export PYTHON="${STAGING_BINDIR_NATIVE}/${@bb.utils.contains('PACKAGECONFIG', 'python3', 'python3', 'python', d)}"
+export ORACLE_JAVA_HOME="${STAGING_DIR_NATIVE}/usr/bin/java"
+export JAVA_HOME="${STAGING_DIR_NATIVE}/usr/lib/jvm/openjdk-8-native"
export ANT_DIR="${STAGING_DIR_NATIVE}/usr/share/ant/"
TARGET_CC_ARCH += "-I${S}/include "
-PACKAGES += "${@bb.utils.contains('PACKAGECONFIG', 'oracle-java', '${PN}-java-dbg ${PN}-java', '', d)} \
- ${PN}-samples-dbg ${PN}-samples ${PN}-apps python-opencv"
+PACKAGES += "${@bb.utils.contains('PACKAGECONFIG', 'samples', '${PN}-samples', '', d)} \
+ ${@bb.utils.contains('PACKAGECONFIG', 'oracle-java', '${PN}-java', '', d)} \
+ ${@bb.utils.contains('PACKAGECONFIG', 'java', '${PN}-java', '', d)} \
+ ${@bb.utils.contains('PACKAGECONFIG', 'python2', 'python-${BPN}', '', d)} \
+ ${@bb.utils.contains('PACKAGECONFIG', 'python3', 'python3-${BPN}', '', d)} \
+ ${PN}-apps"
python populate_packages_prepend () {
cv_libdir = d.expand('${libdir}')
- cv_libdir_dbg = d.expand('${libdir}/.debug')
do_split_packages(d, cv_libdir, '^lib(.*)\.so$', 'lib%s-dev', 'OpenCV %s development package', extra_depends='${PN}-dev', allow_links=True)
do_split_packages(d, cv_libdir, '^lib(.*)\.la$', 'lib%s-dev', 'OpenCV %s development package', extra_depends='${PN}-dev')
do_split_packages(d, cv_libdir, '^lib(.*)\.a$', 'lib%s-dev', 'OpenCV %s development package', extra_depends='${PN}-dev')
do_split_packages(d, cv_libdir, '^lib(.*)\.so\.*', 'lib%s', 'OpenCV %s library', extra_depends='', allow_links=True)
- pn = d.getVar('PN', 1)
+ pn = d.getVar('PN')
metapkg = pn + '-dev'
d.setVar('ALLOW_EMPTY_' + metapkg, "1")
blacklist = [ metapkg ]
metapkg_rdepends = [ ]
- packages = d.getVar('PACKAGES', 1).split()
+ packages = d.getVar('PACKAGES').split()
for pkg in packages[1:]:
if not pkg in blacklist and not pkg in metapkg_rdepends and pkg.endswith('-dev'):
metapkg_rdepends.append(pkg)
d.setVar('RRECOMMENDS_' + metapkg, ' '.join(metapkg_rdepends))
metapkg = pn
+ d.setVar('ALLOW_EMPTY_' + metapkg, "1")
blacklist = [ metapkg ]
metapkg_rdepends = [ ]
for pkg in packages[1:]:
- if not pkg in blacklist and not pkg in metapkg_rdepends and not pkg.endswith('-dev') and not pkg.endswith('-dbg') and not pkg.endswith('-doc') and not pkg.endswith('-locale'):
+ if not pkg in blacklist and not pkg in metapkg_rdepends and not pkg.endswith('-dev') and not pkg.endswith('-dbg') and not pkg.endswith('-doc') and not pkg.endswith('-locale') and not pkg.endswith('-staticdev'):
metapkg_rdepends.append(pkg)
- bb.data.setVar('RDEPENDS_' + metapkg, ' '.join(metapkg_rdepends), d)
+ d.setVar('RDEPENDS_' + metapkg, ' '.join(metapkg_rdepends))
}
PACKAGES_DYNAMIC += "^libopencv-.*"
FILES_${PN} = ""
+FILES_${PN}-dbg += "${datadir}/OpenCV/java/.debug/* ${datadir}/OpenCV/samples/bin/.debug/*"
+FILES_${PN}-dev = "${includedir} ${libdir}/pkgconfig ${datadir}/OpenCV/*.cmake"
+FILES_${PN}-staticdev += "${datadir}/OpenCV/3rdparty/lib/*.a"
FILES_${PN}-apps = "${bindir}/* ${datadir}/OpenCV"
-FILES_${PN}-dev = "${includedir} ${libdir}/pkgconfig ${datadir}/OpenCV/*.cmake ${datadir}/OpenCV/3rdparty/${baselib}/*.a"
-FILES_${PN}-doc = "${datadir}/OpenCV/doc"
FILES_${PN}-java = "${datadir}/OpenCV/java"
-FILES_${PN}-java-dbg = "${datadir}/OpenCV/java/.debug/"
FILES_${PN}-samples = "${datadir}/OpenCV/samples/"
-FILES_${PN}-samples-dbg = "${datadir}/OpenCV/samples/bin/.debug"
-INSANE_SKIP_${PN}-dev = "staticdev"
INSANE_SKIP_${PN}-java = "libdir"
-INSANE_SKIP_${PN}-java-dbg = "libdir"
+INSANE_SKIP_${PN}-dbg = "libdir"
ALLOW_EMPTY_${PN} = "1"
@@ -133,6 +154,10 @@ SUMMARY_python-opencv = "Python bindings to opencv"
FILES_python-opencv = "${PYTHON_SITEPACKAGES_DIR}/*"
RDEPENDS_python-opencv = "python-core python-numpy"
+SUMMARY_python3-opencv = "Python bindings to opencv"
+FILES_python3-opencv = "${PYTHON_SITEPACKAGES_DIR}/*"
+RDEPENDS_python3-opencv = "python3-core python3-numpy"
+
do_install_append() {
cp ${S}/include/opencv/*.h ${D}${includedir}/opencv/
sed -i '/blobtrack/d' ${D}${includedir}/opencv/cvaux.h
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/openipmi/files/do-not-install-pyc-and-pyo.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/openipmi/files/do-not-install-pyc-and-pyo.patch
new file mode 100644
index 000000000..d4e02be45
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/openipmi/files/do-not-install-pyc-and-pyo.patch
@@ -0,0 +1,25 @@
+Do not install pyc and pyo for python module
+
+Upstream-Status: Inappropriate [embedded specific]
+
+Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
+---
+ swig/python/Makefile.am | 2 --
+ 1 file changed, 2 deletions(-)
+
+diff --git a/swig/python/Makefile.am b/swig/python/Makefile.am
+index da95a81..97a62bf 100644
+--- a/swig/python/Makefile.am
++++ b/swig/python/Makefile.am
+@@ -33,8 +33,6 @@ CLEANFILES = OpenIPMI_wrap.c OpenIPMI.py OpenIPMI.pyo OpenIPMI.pyc
+ install-exec-local: _OpenIPMI.la OpenIPMI.py OpenIPMI.pyc OpenIPMI.pyo
+ $(INSTALL) -d $(DESTDIR)$(PYTHON_INSTALL_DIR)
+ $(INSTALL_DATA) OpenIPMI.py "$(DESTDIR)$(PYTHON_INSTALL_DIR)"
+- $(INSTALL_DATA) OpenIPMI.pyc "$(DESTDIR)$(PYTHON_INSTALL_DIR)"
+- $(INSTALL_DATA) OpenIPMI.pyo "$(DESTDIR)$(PYTHON_INSTALL_DIR)"
+ if test "x$(PYTHON_GUI_DIR)" = "xopenipmigui"; then \
+ $(INSTALL) -d $(DESTDIR)$(bindir); \
+ $(INSTALL_SCRIPT) $(srcdir)/openipmigui.py "$(DESTDIR)$(bindir)/openipmigui";\
+--
+1.9.1
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/openipmi/files/fix-symlink-install-error-in-cmdlang.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/openipmi/files/fix-symlink-install-error-in-cmdlang.patch
new file mode 100644
index 000000000..9a568b2b2
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/openipmi/files/fix-symlink-install-error-in-cmdlang.patch
@@ -0,0 +1,22 @@
+Author: Aws Ismail <aws.ismail@windriver.com>
+Date: Thu Jun 7 16:00:13 2012 -0400
+
+ This patch fixes the error during the install stage when
+ creating a symbolic link for opeipmish in openipmi/cmdlang
+
+ Upstream-Status: Pending
+
+ Signed-off-by: Aws Ismail <aws.ismail@windriver.com>
+
+diff --git a/cmdlang/Makefile.am b/cmdlang/Makefile.am
+index 92d6e83..f6039f9 100644
+--- a/cmdlang/Makefile.am
++++ b/cmdlang/Makefile.am
+@@ -36,6 +36,7 @@ CLEANFILES = libOpenIPMIcmdlang.map
+ # compatability.
+ install-data-local:
+ rm -f $(DESTDIR)$(bindir)/ipmish
++ mkdir -p $(DESTDIR)$(bindir)/
+ $(LN_S) openipmish $(DESTDIR)$(bindir)/ipmish
+
+ uninstall-local:
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/openipmi/files/include_sys_types.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/openipmi/files/include_sys_types.patch
new file mode 100644
index 000000000..58ec5d883
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/openipmi/files/include_sys_types.patch
@@ -0,0 +1,17 @@
+include sys/types.h for u_int32_t
+
+ui.c:340:5: error: unknown type name 'u_int32_t'; did you mean 'uint32_t'?
+ u_int32_t addr;
+ ^~~~~~~~~
+Index: OpenIPMI-2.0.22/ui/ui.c
+===================================================================
+--- OpenIPMI-2.0.22.orig/ui/ui.c
++++ OpenIPMI-2.0.22/ui/ui.c
+@@ -42,6 +42,7 @@
+ #include <fcntl.h>
+ #include <time.h>
+ #include <sys/time.h>
++#include <sys/types.h>
+ #include <ctype.h>
+
+ #include <OpenIPMI/selector.h>
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/openipmi/files/ipmi-init-fix-the-arguments.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/openipmi/files/ipmi-init-fix-the-arguments.patch
new file mode 100644
index 000000000..51a398ba5
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/openipmi/files/ipmi-init-fix-the-arguments.patch
@@ -0,0 +1,41 @@
+Subject: [PATCH] ipmi-init: fix the arguments
+
+The functions success/failure/warning defined in /etc/init.d/functions
+(provided by initscripts) only accepts numeric argument as return code,
+not a string.
+
+Upstream-Status: Inappropriate [OE specific]
+
+Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
+---
+ ipmi.init | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/ipmi.init b/ipmi.init
+index 2ebcd94..d8161c5 100644
+--- a/ipmi.init
++++ b/ipmi.init
+@@ -45,17 +45,17 @@ elif [ -r /etc/init.d/functions ]; then
+ case "$ACTION" in
+ success)
+ echo -n $*
+- success "$*"
++ success 0
+ echo
+ ;;
+ failure)
+ echo -n $*
+- failure "$*"
++ failure 1
+ echo
+ ;;
+ warning)
+ echo -n $*
+- warning "$*"
++ warning 0
+ echo
+ ;;
+ *)
+--
+1.9.1
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/openipmi/files/ipmi.service b/import-layers/meta-openembedded/meta-oe/recipes-support/openipmi/files/ipmi.service
new file mode 100644
index 000000000..6fe137819
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/openipmi/files/ipmi.service
@@ -0,0 +1,12 @@
+[Unit]
+Description=IPMI Driver
+After=network.target
+
+[Service]
+Type=oneshot
+RemainAfterExit=yes
+ExecStart=@LIBEXECDIR@/openipmi-helper start
+ExecStop=@LIBEXECDIR@/openipmi-helper stop-all
+
+[Install]
+WantedBy=multi-user.target
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/openipmi/files/makefile-add-ldflags.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/openipmi/files/makefile-add-ldflags.patch
new file mode 100644
index 000000000..271c5323f
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/openipmi/files/makefile-add-ldflags.patch
@@ -0,0 +1,19 @@
+Add LDFLAGS variable to Makefile.am, make sure the extra linker flags can be passed.
+
+Upstream-Status: Pending
+
+Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
+
+diff --git a/swig/perl/Makefile.am b/swig/perl/Makefile.am
+index 2f9ee4c..3a18892 100644
+--- a/swig/perl/Makefile.am
++++ b/swig/perl/Makefile.am
+@@ -20,7 +20,7 @@ OpenIPMI_SRC = OpenIPMI_perl.c
+ OpenIPMI_OBJ = OpenIPMI_wrap.lo OpenIPMI_perl.lo
+
+ OpenIPMI.so: $(OpenIPMI_OBJ)
+- $(LIBTOOL) --mode=link $(CC) -shared -module -avoid-version -o $(@:.so=.la) $^ $(OPENIPMI_SWIG_LIBS) $(PERL_POSIX_LIB) -rpath $(PERL_INSTALL_DIR)/auto/OpenIPMI
++ $(LIBTOOL) --mode=link $(CC) -shared -module -avoid-version $(LDFLAGS) -o $(@:.so=.la) $^ $(OPENIPMI_SWIG_LIBS) $(PERL_POSIX_LIB) -rpath $(PERL_INSTALL_DIR)/auto/OpenIPMI
+ rm -f OpenIPMI.so
+ mv .libs/OpenIPMI.so .
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/openipmi/files/openipmi-don-t-rm-.libs.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/openipmi/files/openipmi-don-t-rm-.libs.patch
new file mode 100644
index 000000000..ee3c66043
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/openipmi/files/openipmi-don-t-rm-.libs.patch
@@ -0,0 +1,32 @@
+From bbd51cf010c80322034f7094e2c6a656aa1f17a7 Mon Sep 17 00:00:00 2001
+From: Wenzong Fan <wenzong.fan@windriver.com>
+Date: Fri, 13 Feb 2015 06:55:33 +0000
+Subject: [PATCH] openipmi: don't rm .libs
+
+Don't remove .libs after OpenIPMI.so generated, this may cause
+dummystuff.so fails to link from the second build with error:
+
+* error: .libs/dummystuff.o: No such file or directory
+
+Upstream-Status: Pending
+
+Signed-off-by: Wenzong Fan <wenzong.fan@windriver.com>
+---
+ swig/perl/Makefile.am | 1 -
+ 1 file changed, 1 deletion(-)
+
+diff --git a/swig/perl/Makefile.am b/swig/perl/Makefile.am
+index 12a282c..2f9ee4c 100644
+--- a/swig/perl/Makefile.am
++++ b/swig/perl/Makefile.am
+@@ -23,7 +23,6 @@ OpenIPMI.so: $(OpenIPMI_OBJ)
+ $(LIBTOOL) --mode=link $(CC) -shared -module -avoid-version -o $(@:.so=.la) $^ $(OPENIPMI_SWIG_LIBS) $(PERL_POSIX_LIB) -rpath $(PERL_INSTALL_DIR)/auto/OpenIPMI
+ rm -f OpenIPMI.so
+ mv .libs/OpenIPMI.so .
+- rm -rf .libs
+
+ dummystuff.lo: dummystuff.c
+ $(LIBTOOL) --mode=compile $(COMPILE) -c $<
+--
+1.9.1
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/openipmi/files/openipmi-helper b/import-layers/meta-openembedded/meta-oe/recipes-support/openipmi/files/openipmi-helper
new file mode 100755
index 000000000..4cebfb9c6
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/openipmi/files/openipmi-helper
@@ -0,0 +1,512 @@
+#!/bin/sh
+#############################################################################
+#
+# ipmi: OpenIPMI Driver helper script
+#
+# Authors: Jan Safranek <jsafrane@redhat.com>
+#
+# Based on IPMI init script by:
+# Matt Domsch <Matt_Domsch@dell.com>
+# Chris Poblete <Chris_Poblete@dell.com>
+#
+# Status return code bits
+# no bits set = no errors
+# bit 0 set = minimum modules aren't loaded
+# bit 1 set = requested feature module isn't loaded
+# bit 2 set = /dev/ipmi0 (or /dev/imb if using that instead) doesn't exist
+# bit 3 set = /dev/watchdog doesn't exist
+# bit 4 set = lockfile doesn't exist
+# bit 5 set = modules are loaded even when asked to be unloaded
+
+CONFIGFILE=/etc/sysconfig/ipmi
+# source config info
+[ -r ${CONFIGFILE} ] && . ${CONFIGFILE}
+
+#############################################################################
+# GLOBALS
+#############################################################################
+MODULE_NAME="ipmi"
+INTF_NUM=0
+
+IPMI_SMB_MODULE_NAME="ipmi_smb"
+IPMI_SI_MODULE_NAME="ipmi_si"
+kernel=`uname -r | cut -d. -f1-2`
+if [ "${kernel}" == "2.4" ]; then
+ IPMI_SMB_MODULE_NAME="ipmi_smb_intf"
+ IPMI_SI_MODULE_NAME="ipmi_si_drv"
+fi
+
+MODULES_INTERFACES=""
+[ "${DEV_IPMI}" = "yes" ] && MODULES_INTERFACES="${MODULES_INTERFACES} ipmi_devintf"
+[ "${IPMI_IMB}" = "yes" ] && MODULES_INTERFACES="${MODULES_INTERFACES} ipmi_imb"
+
+MODULES_FEATURES=""
+[ "${IPMI_WATCHDOG}" = "yes" ] && MODULES_FEATURES="${MODULES_FEATURES} ipmi_watchdog"
+[ "${IPMI_POWEROFF}" = "yes" ] && MODULES_FEATURES="${MODULES_FEATURES} ipmi_poweroff"
+
+MODULES_HW=""
+[ "${IPMI_SI}" = "yes" ] && MODULES_HW="${MODULES_HW} ${IPMI_SI_MODULE_NAME}"
+[ "${IPMI_SMB}" = "yes" ] && MODULES_HW="${MODULES_HW} ${IPMI_SMB_MODULE_NAME}"
+
+MODULES_BASE="ipmi_msghandler"
+MODULES="${MODULES_INTERFACES} ${MODULES_FEATURES} ${MODULES_HW} ${MODULES_BASE}"
+
+RETVAL=0
+LOCKFILE=/var/lock/subsys/ipmi
+DEV_IPMI_TIMEOUT=150
+
+UDEV_EXISTS=0
+if [ -e /sbin/udev -o -e /sbin/udevd ]; then
+ UDEV_EXISTS=1
+fi
+
+#############################################################################
+# NOTES:
+# * /dev/ipmi0 is unconditionally deleted here on ipmi_devintf unload,
+# because SLES9 and RHEL4 kernels don't send a message for udev to delete
+# it for us.
+#
+#############################################################################
+
+modules_loaded_verbose()
+{
+ OnePlusLoaded=0
+ OnePlusUnloaded=0
+ for m in $@; do
+ if /sbin/lsmod | grep $m >/dev/null 2>&1 ; then
+ echo "$m module loaded."
+ OnePlusLoaded=1
+ else
+ echo "$m module not loaded."
+ OnePlusUnloaded=1
+ fi
+ done
+}
+
+modules_loaded()
+{
+ OnePlusLoaded=0
+ OnePlusUnloaded=0
+ for m in $@; do
+ if /sbin/lsmod | grep $m >/dev/null 2>&1 ; then
+ OnePlusLoaded=1
+ else
+ OnePlusUnloaded=1
+ fi
+ done
+}
+
+device_node_exists ()
+{
+ if [ -e "$1" ]; then
+ echo "$1 exists."
+ return 1
+ fi
+ echo "$1 does not exist."
+ return 0
+}
+
+minimum_modules_loaded()
+{
+ rc_base=1
+ rc_hw=1
+ modules_loaded_verbose "${MODULES_BASE}"
+ [ ${OnePlusLoaded} -eq 0 ] && rc_base=0
+
+ modules_loaded_verbose "${MODULES_HW}"
+ [ ${OnePlusLoaded} -eq 0 ] && rc_hw=0
+
+ return $((rc_base && rc_hw))
+}
+
+#############################################################################
+
+load_si()
+{
+ if [ "${IPMI_SI}" = "yes" ]; then
+ modprobe ${IPMI_SI_MODULE_NAME} > /dev/null 2>&1
+ modules_loaded ${IPMI_SI_MODULE_NAME}
+ [ ${OnePlusLoaded} -ne 1 ] && RETVAL=$((RETVAL | 1))
+ fi
+}
+
+load_smb()
+{
+ if [ "${IPMI_SMB}" = "yes" ]; then
+ modprobe ${IPMI_SMB_MODULE_NAME} > /dev/null 2>&1
+ modules_loaded ${IPMI_SMB_MODULE_NAME}
+ [ ${OnePlusLoaded} -ne 1 ] && RETVAL=$((RETVAL | 1))
+ fi
+}
+
+load_hw_modules()
+{
+ load_si
+ load_smb
+}
+
+start_watchdog_common()
+{
+ load_hw_modules
+ modprobe ipmi_watchdog ${IPMI_WATCHDOG_OPTIONS} > /dev/null 2>&1
+ modules_loaded ipmi_watchdog
+ [ ${OnePlusUnloaded} -ne 0 ] &&
+ RETVAL=$((RETVAL | 2)) &&
+ echo "Watchdog startup failed: cannot load ipmi_watchdog module" &&
+ return
+ if [ ${UDEV_EXISTS} -eq 0 -a ! -e /dev/watchdog ]; then
+ mknod -m 0600 /dev/watchdog c 10 130
+ [ $? -ne 0 ] &&
+ RETVAL=$((RETVAL | 8)) &&
+ echo "Watchdog startup failed: cannot create /dev/watchdog" &&
+ return
+ fi
+}
+
+start_watchdog_quiet()
+{
+ [ "${IPMI_WATCHDOG}" != "yes" ] &&
+ return
+ start_watchdog_common
+}
+
+start_watchdog()
+{
+ [ "${IPMI_WATCHDOG}" != "yes" ] &&
+ RETVAL=$((RETVAL | 2)) &&
+ echo "Watchdog not configured" &&
+ return
+ start_watchdog_common
+}
+
+stop_watchdog()
+{
+ modprobe -q -r ipmi_watchdog > /dev/null 2>&1
+ modules_loaded ipmi_watchdog
+ if [ ${OnePlusLoaded} -ne 0 ]; then
+ RETVAL=$((RETVAL | 32))
+ echo "Watchog shutdown failed: cannot unload ipmi_watchdog module"
+ else
+ if [ "${IPMI_WATCHDOG}" = "yes" ]; then
+ [ ${UDEV_EXISTS} -eq 0 ] && rm -f /dev/watchdog
+ fi
+ fi
+}
+
+stop_watchdog_quiet()
+{
+ modprobe -q -r ipmi_watchdog > /dev/null 2>&1
+ modules_loaded ipmi_watchdog
+ if [ ${OnePlusLoaded} -ne 0 ]; then
+ RETVAL=$((RETVAL | 32))
+ else
+ if [ "${IPMI_WATCHDOG}" = "yes" ]; then
+ [ ${UDEV_EXISTS} -eq 0 ] && rm -f /dev/watchdog
+ fi
+ fi
+}
+
+start_powercontrol_common()
+{
+ local poweroff_opts=""
+ load_hw_modules
+ if [ "${IPMI_POWERCYCLE}" == "yes" ]; then
+ modinfo ipmi_poweroff 2>/dev/null | grep poweroff_control > /dev/null 2>&1 && \
+ poweroff_opts="poweroff_control=2"
+ modinfo ipmi_poweroff 2>/dev/null | grep poweroff_powercycle > /dev/null 2>&1 && \
+ poweroff_opts="poweroff_powercycle=1"
+ fi
+ modprobe ipmi_poweroff "${poweroff_opts}" > /dev/null 2>&1
+ modules_loaded ipmi_poweroff
+ [ ${OnePlusUnloaded} -ne 0 ] &&
+ RETVAL=$((RETVAL | 2)) &&
+ echo "Powercontroll startup failed: cannot load ipmi_poweroff module" &&
+ return
+}
+
+start_powercontrol_quiet()
+{
+ [ "${IPMI_POWEROFF}" != "yes" ] &&
+ return
+ start_powercontrol_common
+}
+
+start_powercontrol()
+{
+ [ "${IPMI_POWEROFF}" != "yes" ] &&
+ RETVAL=$((RETVAL | 2)) &&
+ echo "Powercontroll not configured" &&
+ return
+ start_powercontrol_common
+}
+
+stop_powercontrol()
+{
+ modprobe -q -r ipmi_poweroff > /dev/null 2>&1
+ modules_loaded ipmi_poweroff
+ if [ ${OnePlusLoaded} -ne 0 ]; then
+ RETVAL=$((RETVAL | 32))
+ echo "Powercontroll shutdown failed: cannot unload ipmi_poweroff module"
+ fi
+}
+
+stop_powercontrol_quiet()
+{
+ modprobe -q -r ipmi_poweroff > /dev/null 2>&1
+ modules_loaded ipmi_poweroff
+ [ ${OnePlusLoaded} -ne 0 ] && RETVAL=$((RETVAL | 32))
+}
+
+#############################################################################
+unload_all_ipmi_modules()
+{
+ stop_watchdog_quiet
+ stop_powercontrol_quiet
+ for m in ${MODULES}; do
+ modprobe -q -r ${m} > /dev/null 2>&1
+ done
+ # delete interface node ONLY if ipmi_devintf is unloaded
+ [ `lsmod | grep -c "ipmi_devintf"` -eq 0 ] &&
+ rm -f "/dev/ipmi${INTF_NUM}"
+}
+
+unload_ipmi_modules_leave_features()
+{
+ for m in ${MODULES_INTERFACES}; do
+ modprobe -q -r ${m} > /dev/null 2>&1
+ done
+ # delete interface node ONLY if ipmi_devintf is unloaded
+ [ `lsmod | grep -c "ipmi_devintf"` -eq 0 ] &&
+ rm -f "/dev/ipmi${INTF_NUM}"
+ lsmod | egrep -q "ipmi_(poweroff|watchdog)" > /dev/null 2>&1
+ if [ "$?" -ne "0" ]; then
+ stop_watchdog_quiet
+ stop_powercontrol_quiet
+ for m in ${MODULES}; do
+ modprobe -q -r ${m} > /dev/null 2>&1
+ done
+ fi
+}
+
+#############################################################################
+load_ipmi_modules ()
+{
+ local locdelay
+ modprobe ipmi_msghandler > /dev/null 2>&1
+ modules_loaded ipmi_msghandler
+ [ ${OnePlusLoaded} -ne 1 ] && unload_all_ipmi_modules && RETVAL=$((RETVAL | 1)) && return
+ load_hw_modules
+ [ $((RETVAL & 1)) -eq 1 ] && unload_all_ipmi_modules && RETVAL=$((RETVAL | 1)) && return
+
+ if [ "${DEV_IPMI}" = "yes" ]; then
+ modprobe ipmi_devintf > /dev/null 2>&1
+ modules_loaded ipmi_devintf
+ RETVAL=$((RETVAL & ~2))
+ [ ${OnePlusLoaded} -eq 0 ] && RETVAL=$((RETVAL | 2))
+ if [ ${OnePlusLoaded} -eq 1 ]; then
+ if [ ${UDEV_EXISTS} -eq 0 ]; then
+ DEVMAJOR=`cat /proc/devices | awk '/ipmidev/{print $1}'`
+ rm -f /dev/ipmi${INTF_NUM}
+ mknod -m 0600 /dev/ipmi${INTF_NUM} c ${DEVMAJOR} 0 || RETVAL=$((RETVAL | 4))
+ fi
+
+ # udev can take several seconds to create /dev/ipmi0,
+ # but it happens asynchronously, so delay here
+ locdelay=${DEV_IPMI_TIMEOUT}
+ while [ ! -e /dev/ipmi${INTF_NUM} -a ${locdelay} -gt 0 ]; do
+ locdelay=$((locdelay - 1))
+ sleep 0.1
+ done
+ fi
+ fi
+
+ if [ "${IPMI_IMB}" = "yes" ]; then
+ modprobe ipmi_imb > /dev/null 2>&1
+ modules_loaded ipmi_imb
+ RETVAL=$((RETVAL & ~2))
+ [ ${OnePlusLoaded} -eq 0 ] && RETVAL=$((RETVAL | 2))
+ if [ ${OnePlusLoaded} -eq 1 ]; then
+ DEVMAJOR=`cat /proc/devices | awk '/imb/{print $1}'`
+ rm -f /dev/imb
+ mknod -m 0600 /dev/imb c ${DEVMAJOR} 0 || RETVAL=$((RETVAL | 4))
+ fi
+ fi
+
+ # Per Corey Minyard, essentially no one uses ipmi_radisys
+ # and we don't want to encourage its further use
+ # so it won't be handled here.
+ return
+}
+
+#############################################################################
+start()
+{
+ load_ipmi_modules
+ if [ ${RETVAL} -eq 0 ]; then
+ touch ${LOCKFILE}
+ else
+ if [ $((RETVAL & 1)) -eq 1 ]; then
+ echo "Startup failed."
+ else
+ touch ${LOCKFILE} && echo "Warning!?"
+ fi
+ fi
+ start_watchdog_quiet
+ start_powercontrol_quiet
+}
+
+#############################################################################
+stop()
+{
+ unload_ipmi_modules_leave_features
+ modules_loaded ${MODULES_INTERFACES}
+ if [ ${OnePlusLoaded} -ne 0 ]; then
+ RETVAL=$((RETVAL | 32))
+ echo "Shutdown failed, something may be in use"
+ else
+ rm -f ${LOCKFILE}
+ fi
+}
+
+stop_all()
+{
+ unload_all_ipmi_modules
+ modules_loaded ${MODULES}
+ if [ ${OnePlusLoaded} -ne 0 ]; then
+ RETVAL=$((RETVAL | 32))
+ echo "Shutdown failed, something may be in use"
+ else
+ rm -f ${LOCKFILE}
+ fi
+}
+
+#############################################################################
+restart()
+{
+ stop_all
+ RETVAL=0
+ start
+}
+
+#############################################################################
+
+reload()
+{
+ stop_all
+ RETVAL=0
+ start
+}
+
+#############################################################################
+
+status_all()
+{
+ minimum_modules_loaded
+ [ $? -eq 0 ] && RETVAL=$((RETVAL | 1))
+
+ modules_loaded_verbose ${MODULES_FEATURES} ${MODULES_INTERFACES}
+ [ ${OnePlusUnloaded} -ne 0 ] && RETVAL=$((RETVAL | 2))
+
+ if [ "${DEV_IPMI}" = "yes" ]; then
+ device_node_exists /dev/ipmi${INTF_NUM}
+ [ $? -eq 0 ] && RETVAL=$((RETVAL | 4))
+ fi
+
+ if [ "${IPMI_IMB}" = "yes" ]; then
+ device_node_exists /dev/imb
+ [ $? -eq 0 ] && RETVAL=$((RETVAL | 4))
+ fi
+
+ if [ "${IPMI_WATCHDOG}" = "yes" ]; then
+ device_node_exists /dev/watchdog
+ [ $? -eq 0 ] && RETVAL=$((RETVAL | 8))
+ fi
+
+ [ ! -e ${LOCKFILE} ] && RETVAL=$((RETVAL | 16))
+}
+
+status()
+{
+ minimum_modules_loaded
+ [ $? -eq 0 ] && RETVAL=$((RETVAL | 1))
+
+ if [ "${DEV_IPMI}" = "yes" ]; then
+ modules_loaded_verbose ipmi_devintf
+ [ ${OnePlusLoaded} -eq 0 ] && RETVAL=$((RETVAL | 2))
+
+ device_node_exists /dev/ipmi${INTF_NUM}
+ [ $? -eq 0 ] && RETVAL=$((RETVAL | 4))
+ fi
+
+ if [ "${IPMI_IMB}" = "yes" ]; then
+ device_node_exists /dev/imb
+ [ $? -eq 0 ] && RETVAL=$((RETVAL | 4))
+ fi
+}
+
+status_watchdog()
+{
+ minimum_modules_loaded
+ [ $? -eq 0 ] && RETVAL=$((RETVAL | 1))
+
+ modules_loaded_verbose ipmi_watchdog
+ [ ${OnePlusLoaded} -eq 0 ] && RETVAL=$((RETVAL | 2))
+
+ device_node_exists /dev/watchdog
+ [ $? -eq 0 ] && RETVAL=$((RETVAL | 8))
+}
+
+status_powercontrol()
+{
+ minimum_modules_loaded
+ [ $? -eq 0 ] && RETVAL=$((RETVAL | 1))
+
+ modules_loaded_verbose ipmi_powercontrol
+ [ ${OnePlusLoaded} -eq 0 ] && RETVAL=$((RETVAL | 2))
+}
+
+#############################################################################
+usage ()
+{
+ echo $"Usage: $0 {start|stop|status" 1>&2
+ echo $" restart|condrestart|try-restart|reload|force-reload" 1>&2
+ echo $" start-watchdog|stop-watchdog|status-watchdog" 1>&2
+ echo $" start-powercontrol|stop-powercontrol|status-powercontrol" 1>&2
+ echo $" stop-all|status-all}" 1>&2
+ RETVAL=2
+}
+
+condrestart ()
+{
+ [ -e ${LOCKFILE} ] && restart
+}
+
+#############################################################################
+# MAIN
+#############################################################################
+case "$1" in
+ start) start ;;
+ stop) stop ;;
+ restart) restart ;;
+ force-reload) reload ;;
+ reload) reload ;;
+ status) status ;;
+ status-all) status_all ;;
+ condrestart) condrestart ;;
+ try-restart) condrestart ;;
+ start-watchdog) start_watchdog ;;
+ stop-watchdog) stop_watchdog ;;
+ status-watchdog) status_watchdog ;;
+ start-powercontrol) start_powercontrol ;;
+ stop-powercontrol) stop_powercontrol ;;
+ status-powercontrol) status_powercontrol ;;
+ stop-all) stop_all ;;
+ *) usage ;;
+esac
+
+exit ${RETVAL}
+
+#############################################################################
+# end of file
+#############################################################################
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/openipmi/files/openipmi-no-openipmigui-man.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/openipmi/files/openipmi-no-openipmigui-man.patch
new file mode 100644
index 000000000..1fa68f9ba
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/openipmi/files/openipmi-no-openipmigui-man.patch
@@ -0,0 +1,26 @@
+Author: Aws Ismail <aws.ismail@windriver.com>
+Date: Thu Jun 7 12:28:34 2012 -0400
+
+ This patch was carried over from WRL4.3 (openipmi v2.0.16)
+
+ It was updated for openipmi v2.0.19
+
+ Disable making openipmigui man page since we don't need it
+
+ Upstream-Status: Pending
+
+ Signed-off-by: Aws Ismail <aws.ismail@windriver.com>
+ Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
+
+diff --git a/man/Makefile.am b/man/Makefile.am
+index 632f55b..5ce79f5 100644
+--- a/man/Makefile.am
++++ b/man/Makefile.am
+@@ -1,6 +1,6 @@
+
+ man_MANS = ipmi_ui.1 openipmicmd.1 openipmish.1 ipmi_cmdlang.7 \
+- openipmigui.1 openipmi_conparms.7 solterm.1 rmcp_ping.1 \
++ openipmi_conparms.7 solterm.1 rmcp_ping.1 \
+ openipmi_eventd.1
+
+ EXTRA_DIST = $(man_MANS)
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/openipmi/files/openipmi-remove-host-path-from-la_LDFLAGS.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/openipmi/files/openipmi-remove-host-path-from-la_LDFLAGS.patch
new file mode 100644
index 000000000..6f16234bc
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/openipmi/files/openipmi-remove-host-path-from-la_LDFLAGS.patch
@@ -0,0 +1,85 @@
+From aa0dc0783a6ff5fb56c914b640836223e3c192bb Mon Sep 17 00:00:00 2001
+From: Jackie Huang <jackie.huang@windriver.com>
+Date: Mon, 29 Dec 2014 18:16:04 +0800
+Subject: [PATCH] remove host path from la_LDFLAGS
+
+Upstream-Status: Inappropriate [ cross compile specific ]
+
+Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
+---
+ cmdlang/Makefile.am | 2 +-
+ glib/Makefile.am | 4 ++--
+ tcl/Makefile.am | 2 +-
+ unix/Makefile.am | 4 ++--
+ 4 files changed, 6 insertions(+), 6 deletions(-)
+
+diff --git a/cmdlang/Makefile.am b/cmdlang/Makefile.am
+index 00c3d2b..0fa85d7 100644
+--- a/cmdlang/Makefile.am
++++ b/cmdlang/Makefile.am
+@@ -16,7 +16,7 @@ libOpenIPMIcmdlang_la_LIBADD = -lm \
+ $(top_builddir)/utils/libOpenIPMIutils.la \
+ $(top_builddir)/lib/libOpenIPMI.la
+ libOpenIPMIcmdlang_la_LDFLAGS = -rdynamic -version-info $(LD_VERSION) \
+- -Wl,-Map -Wl,libOpenIPMIcmdlang.map -L$(libdir)
++ -Wl,-Map -Wl,libOpenIPMIcmdlang.map
+
+ bin_PROGRAMS = openipmish
+
+diff --git a/glib/Makefile.am b/glib/Makefile.am
+index 671cae2..eff55f3 100644
+--- a/glib/Makefile.am
++++ b/glib/Makefile.am
+@@ -11,14 +11,14 @@ libOpenIPMIglib_la_SOURCES = glib_os_hnd.c
+ libOpenIPMIglib_la_CFLAGS = $(GLIB_CFLAGS) $(AM_CFLAGS)
+ libOpenIPMIglib_la_LIBADD = $(GDBM_LIB)
+ libOpenIPMIglib_la_LDFLAGS = -rdynamic -version-info $(LD_VERSION) \
+- -Wl,-Map -Wl,libOpenIPMIglib.map $(GLIB_LIBS) -L$(libdir) \
++ -Wl,-Map -Wl,libOpenIPMIglib.map $(GLIB_LIBS) \
+ -rpath $(libdir)
+
+ libOpenIPMIglib12_la_SOURCES = glib_os_hnd.c
+ libOpenIPMIglib12_la_CFLAGS = $(GLIB12_CFLAGS) $(AM_CFLAGS)
+ libOpenIPMIglib12_la_LIBADD = $(GDBM_LIB)
+ libOpenIPMIglib12_la_LDFLAGS = -rdynamic -version-info $(LD_VERSION) \
+- -Wl,-Map -Wl,libOpenIPMIglib12.map $(GLIB12_LIBS) -L$(libdir) \
++ -Wl,-Map -Wl,libOpenIPMIglib12.map $(GLIB12_LIBS) \
+ -rpath $(libdir)
+
+ CLEANFILES = libOpenIPMIglib.map libOpenIPMIglib12.map
+diff --git a/tcl/Makefile.am b/tcl/Makefile.am
+index b702819..282619c 100644
+--- a/tcl/Makefile.am
++++ b/tcl/Makefile.am
+@@ -11,7 +11,7 @@ libOpenIPMItcl_la_SOURCES = tcl_os_hnd.c
+ libOpenIPMItcl_la_CFLAGS = $(TCL_CFLAGS) $(AM_CFLAGS)
+ libOpenIPMItcl_la_LIBADD = $(GDBM_LIB)
+ libOpenIPMItcl_la_LDFLAGS = -rdynamic -version-info $(LD_VERSION) \
+- -Wl,-Map -Wl,libOpenIPMItcl.map $(TCL_LIBS) -L$(libdir) \
++ -Wl,-Map -Wl,libOpenIPMItcl.map $(TCL_LIBS) \
+ -rpath $(libdir)
+
+ noinst_PROGRAMS = test_handlers
+diff --git a/unix/Makefile.am b/unix/Makefile.am
+index a792147..a108bc6 100644
+--- a/unix/Makefile.am
++++ b/unix/Makefile.am
+@@ -11,13 +11,13 @@ libOpenIPMIpthread_la_SOURCES = posix_thread_os_hnd.c selector.c
+ libOpenIPMIpthread_la_LIBADD = -lpthread $(GDBM_LIB) \
+ $(top_builddir)/utils/libOpenIPMIutils.la
+ libOpenIPMIpthread_la_LDFLAGS = -rdynamic -version-info $(LD_VERSION) \
+- -Wl,-Map -Wl,libOpenIPMIpthread.map -L$(libdir)
++ -Wl,-Map -Wl,libOpenIPMIpthread.map
+
+ libOpenIPMIposix_la_SOURCES = posix_os_hnd.c selector.c
+ libOpenIPMIposix_la_LIBADD = $(top_builddir)/utils/libOpenIPMIutils.la \
+ $(GDBM_LIB)
+ libOpenIPMIposix_la_LDFLAGS = -rdynamic -version-info $(LD_VERSION) \
+- -Wl,-Map -Wl,libOpenIPMIposix.map -L$(libdir)
++ -Wl,-Map -Wl,libOpenIPMIposix.map
+
+ noinst_HEADERS = heap.h
+
+--
+1.7.1
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/openipmi/openipmi_2.0.22.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/openipmi/openipmi_2.0.22.bb
new file mode 100644
index 000000000..9f4b0ff26
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/openipmi/openipmi_2.0.22.bb
@@ -0,0 +1,112 @@
+SUMMARY = "IPMI (Intelligent Platform Management Interface) library and tools"
+DESCRIPTION = "OpenIPMI is an effort to create a full-function IPMI system, \
+to allow full access to all IPMI information on a server \
+and to abstract it to a level that will make it easy to use"
+
+HOMEPAGE = "http://openipmi.sourceforge.net"
+
+DEPENDS = " \
+ glib-2.0 \
+ ncurses \
+ net-snmp \
+ openssl \
+ popt \
+ python \
+ swig-native \
+ "
+
+LICENSE = "GPLv2 & LGPLv2.1 & BSD"
+
+LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \
+ file://COPYING.LIB;md5=d8045f3b8f929c1cb29a1e3fd737b499 \
+ file://COPYING.BSD;md5=4b318d4160eb69c8ee53452feb1b4cdf \
+ "
+
+SRC_URI = "${SOURCEFORGE_MIRROR}/openipmi/OpenIPMI-${PV}.tar.gz \
+ file://fix-symlink-install-error-in-cmdlang.patch \
+ file://openipmi-no-openipmigui-man.patch \
+ file://openipmi-remove-host-path-from-la_LDFLAGS.patch \
+ file://openipmi-don-t-rm-.libs.patch \
+ file://ipmi-init-fix-the-arguments.patch \
+ file://makefile-add-ldflags.patch \
+ file://do-not-install-pyc-and-pyo.patch \
+ file://include_sys_types.patch \
+ file://openipmi-helper \
+ file://ipmi.service \
+ "
+
+SRC_URI[md5sum] = "9a4e1f6bb073379c494839201ea10aee"
+SRC_URI[sha256sum] = "4988900043c35fcfa9b2bf275d6593904f6429221befb770ba6ecb5502108e55"
+
+S = "${WORKDIR}/OpenIPMI-${PV}"
+
+inherit autotools-brokensep pkgconfig pythonnative perlnative update-rc.d systemd
+
+EXTRA_OECONF = "--disable-static \
+ --with-perl='${STAGING_BINDIR_NATIVE}/perl-native/perl' \
+ --with-python='${STAGING_BINDIR_NATIVE}/python-native/python' \
+ --with-pythoninstall='${PYTHON_SITEPACKAGES_DIR}' \
+ --with-glibver=2.0 --with-glib12=no"
+
+PACKAGECONFIG ??= "gdbm"
+PACKAGECONFIG[gdbm] = "ac_cv_header_gdbm_h=yes,ac_cv_header_gdbm_h=no,gdbm,"
+
+PACKAGES += "${PN}-perl ${PN}-python"
+
+FILES_${PN}-perl = " \
+ ${libdir}/perl/vendor_perl/*/OpenIPMI.pm \
+ ${libdir}/perl/vendor_perl/*/auto/OpenIPMI/OpenIPMI.so \
+ "
+
+FILES_${PN}-python = "${PYTHON_SITEPACKAGES_DIR}"
+
+FILES_${PN}-dbg += " \
+ ${libdir}/perl/vendor_perl/*/auto/OpenIPMI/.debug \
+ ${PYTHON_SITEPACKAGES_DIR}/.debug \
+ "
+
+do_configure () {
+
+ # Let's perform regular configuration first then handle perl issues.
+ autotools_do_configure
+
+ perl_ver=`perl -V:version | cut -d\' -f 2`
+
+ # Force openipmi perl bindings to be compiled using perl-native instead of
+ # the host's perl. Set the proper install directory for the resulting
+ # openipmi.pm and openipmi.so
+ for i in ${S}/swig/Makefile ${S}/swig/perl/Makefile; do
+ echo "SAL: i = $i"
+ echo "SAL: STAGING_INCDIR_NATIVE = $STAGING_INCDIR_NATIVE"
+ echo "SAL: libdir = $libdir"
+ sed -i -e "/^PERL_CFLAGS/s:-I/usr/local/include:-I${STAGING_INCDIR_NATIVE}:g" $i
+ sed -i -e "/^PERL_INSTALL_DIR/s:^PERL_INSTALL_DIR = .*:PERL_INSTALL_DIR = ${libdir}/perl/vendor_perl/$perl_ver:g" $i
+ done
+}
+
+do_install_append () {
+ echo "SAL: D = $D"
+ echo "SAL: libdir = $libdir"
+ install -m 0755 -d ${D}${sysconfdir}/sysconfig ${D}${sysconfdir}/init.d
+ install -m 0755 ${S}/ipmi.init ${D}${sysconfdir}/init.d/ipmi
+ install -m 0644 ${S}/ipmi.sysconf ${D}${sysconfdir}/sysconfig/ipmi
+ # SAL: mv: cannot stat `/localdisk/loadbuild/slittle1/workspace/cgts_test_build/bitbake_build/tmp/work/x86_64-wrs-linux/openipmi-2.0.19-r4/image/usr/lib64/perl5': No such file or directory
+ # SAL: real path to perl is /localdisk/loadbuild/slittle1/workspace/cgts_test_build/bitbake_build/tmp/work/x86_64-wrs-linux/perl-5.14.2-r8.3/package/usr/lib64/perl5 and it is a symlink to perl so no need to mv.
+ if [ -d ${D}${libdir}/perl5 ]
+ then
+ mv ${D}${libdir}/perl5 ${D}${libdir}/perl
+ fi
+
+ # for systemd
+ install -d ${D}${systemd_unitdir}/system
+ install -m 0664 ${WORKDIR}/ipmi.service ${D}${systemd_unitdir}/system
+ sed -i -e "s,@LIBEXECDIR@,${libexecdir},g" ${D}${systemd_unitdir}/system/ipmi.service
+ install -d ${D}${libexecdir}
+ install -m 0755 ${WORKDIR}/openipmi-helper ${D}${libexecdir}
+}
+
+INITSCRIPT_NAME = "ipmi"
+INITSCRIPT_PARAMS = "start 30 . stop 70 0 1 2 3 4 5 6 ."
+
+SYSTEMD_SERVICE_${PN} = "ipmi.service"
+SYSTEMD_AUTO_ENABLE = "disable"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/openldap/openldap_2.4.44.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/openldap/openldap_2.4.44.bb
index 05ffc5ce3..f5c233f2d 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/openldap/openldap_2.4.44.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/openldap/openldap_2.4.44.bb
@@ -14,7 +14,7 @@ LIC_FILES_CHKSUM = "file://COPYRIGHT;md5=c933fba6d89fda89f58df1e086e3f2e7 \
"
SECTION = "libs"
-LDAP_VER = "${@'.'.join(d.getVar('PV',1).split('.')[0:2])}"
+LDAP_VER = "${@'.'.join(d.getVar('PV').split('.')[0:2])}"
SRC_URI = "ftp://ftp.openldap.org/pub/OpenLDAP/openldap-release/${BP}.tgz \
file://openldap-m4-pthread.patch \
@@ -54,7 +54,7 @@ EXTRA_OECONF += "--enable-dynamic"
PACKAGECONFIG ??= "gnutls modules \
mdb ldap meta monitor null passwd shell proxycache dnssrv \
- ${@bb.utils.contains('DISTRO_FEATURES', 'ipv6', 'ipv6', '', d)} \
+ ${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)} \
"
#--with-tls with TLS/SSL support auto|openssl|gnutls [auto]
PACKAGECONFIG[gnutls] = "--with-tls=gnutls,,gnutls libgcrypt"
@@ -150,7 +150,7 @@ PACKAGES += "${PN}-overlay-proxycache"
# it was disabled for cross-compiling.
CPPFLAGS_append = " -D_GNU_SOURCE -DURANDOM_DEVICE=\'/dev/urandom\' -fPIC"
-LDFLAGS += "-pthread"
+LDFLAGS_append = " -pthread"
do_configure() {
cp ${STAGING_DATADIR_NATIVE}/libtool/build-aux/ltmain.sh ${S}/build
@@ -242,7 +242,7 @@ python populate_packages_prepend () {
d.setVar('ALLOW_EMPTY_' + metapkg, "1")
d.setVar('FILES_' + metapkg, "")
metapkg_rdepends = []
- packages = d.getVar('PACKAGES', 1).split()
+ packages = d.getVar('PACKAGES').split()
for pkg in packages[1:]:
if pkg.count("openldap-backend-") and not pkg in metapkg_rdepends and not pkg.count("-dev") and not pkg.count("-dbg") and not pkg.count("static") and not pkg.count("locale"):
metapkg_rdepends.append(pkg)
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/openmotif/openmotif_2.3.3.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/openmotif/openmotif_2.3.3.bb
index 2baeda025..35c39cbe8 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/openmotif/openmotif_2.3.3.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/openmotif/openmotif_2.3.3.bb
@@ -7,7 +7,7 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=14f692c82491db3d52419929d2f3b343"
PR = "r3"
-PNBLACKLIST[openmotif] ?= "BROKEN: doesn't build with B!=S"
+PNBLACKLIST[openmotif] ?= "BROKEN: doesn't build with B!=S - the recipe will be removed on 2017-09-01 unless the issue is fixed"
SRC_URI = "http://motif.ics.com/sites/default/files/openmotif-2.3.3.tar.gz \
file://configure.patch;patch=1"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/opensync/wbxml2_0.10.8.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/opensync/wbxml2_0.10.8.bb
index bd15bba71..8c948c565 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/opensync/wbxml2_0.10.8.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/opensync/wbxml2_0.10.8.bb
@@ -15,7 +15,7 @@ S = "${WORKDIR}/libwbxml-${PV}"
inherit cmake pkgconfig
-EXTRA_OECMAKE = "-DLIB_SUFFIX=${@d.getVar('baselib', True).replace('lib', '')}"
+EXTRA_OECMAKE = "-DLIB_SUFFIX=${@d.getVar('baselib').replace('lib', '')}"
PACKAGES += "${PN}-tools"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/openwbem/openwbem_3.2.3.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/openwbem/openwbem_3.2.3.bb
index f5896e6e1..e9142385b 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/openwbem/openwbem_3.2.3.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/openwbem/openwbem_3.2.3.bb
@@ -93,7 +93,7 @@ do_install() {
touch ${D}/var/lib/openwbem/{classassociation,instances,instassociation,namespaces,schema}.{dat,ndx,lock}
}
-inherit ${@bb.utils.contains('VIRTUAL-RUNTIME_init_manager','systemd','systemd','', d)}
+inherit ${@bb.utils.filter('VIRTUAL-RUNTIME_init_manager', 'systemd', d)}
SYSTEMD_SERVICE_${PN} = "owcimomd.service"
SYSTEMD_AUTO_ENABLE = "disable"
FILES_${PN} += " \
@@ -112,4 +112,4 @@ FILES_${PN}-dev = " \
"
# http://errors.yoctoproject.org/Errors/Details/68630/
-PNBLACKLIST[openwbem] ?= "BROKEN: fails to build with gcc-6"
+PNBLACKLIST[openwbem] ?= "BROKEN: fails to build with gcc-6 - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/picocom/picocom_1.7.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/picocom/picocom_1.7.bb
deleted file mode 100644
index d2a76c0a9..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/picocom/picocom_1.7.bb
+++ /dev/null
@@ -1,19 +0,0 @@
-SUMMARY = "Lightweight and minimal (~20K) dumb-terminal emulation program"
-SECTION = "console/utils"
-LICENSE = "GPLv2+"
-HOMEPAGE = "http://code.google.com/p/picocom/"
-LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=393a5ca445f6965873eca0259a17f833"
-
-SRC_URI = "http://picocom.googlecode.com/files/picocom-${PV}.tar.gz"
-
-SRC_URI[md5sum] = "8eaba1d31407e8408674d6e57af447ef"
-SRC_URI[sha256sum] = "d0f31c8f7a215a76922d30c81a52b9a2348c89e02a84935517002b3bc2c1129e"
-
-EXTRA_OEMAKE = "'CC=${CC}' 'LD=${LD}' 'VERSION=${PV}' \
- 'CFLAGS=${CFLAGS}' 'LDFLAGS=${LDFLAGS}' "
-
-do_install () {
- install -d ${D}${bindir}
- install -m 0755 ${BPN} pcasc pcxm pcym pczm ${D}${bindir}/
-}
-
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/picocom/picocom_git.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/picocom/picocom_git.bb
new file mode 100644
index 000000000..e091094cf
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/picocom/picocom_git.bb
@@ -0,0 +1,23 @@
+SUMMARY = "Lightweight and minimal (~20K) dumb-terminal emulation program"
+SECTION = "console/utils"
+LICENSE = "GPLv2+"
+HOMEPAGE = "http://code.google.com/p/picocom/"
+LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=3000e4830620e310fe65c0eb69df9e8a"
+
+BASEPV = "2.2"
+PV = "${BASEPV}+git${SRCPV}"
+
+SRCREV = "deffd18c24145bd6f965f44e735a50b65810ccdc"
+
+SRC_URI = "git://github.com/npat-efault/picocom"
+
+S = "${WORKDIR}/git"
+
+EXTRA_OEMAKE = "'CC=${CC}' 'LD=${CC}' 'VERSION=${BASEPV}' \
+ 'CFLAGS=${CFLAGS}' 'LDFLAGS=${LDFLAGS}' "
+
+do_install () {
+ install -d ${D}${bindir}
+ install -m 0755 ${BPN} pcasc pcxm pcym pczm ${D}${bindir}/
+}
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/pidgin/pidgin-otr_4.0.0.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/pidgin/pidgin-otr_4.0.0.bb
index b884b5a0d..47cdc7242 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/pidgin/pidgin-otr_4.0.0.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/pidgin/pidgin-otr_4.0.0.bb
@@ -4,7 +4,7 @@ LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=92fe174bad6da3763f6e9e9eaff6df24"
DEPENDS = "libgcrypt libotr pidgin intltool-native"
-PNBLACKLIST[pidgin-otr] ?= "depends on blacklisted pidgin"
+PNBLACKLIST[pidgin-otr] ?= "depends on blacklisted pidgin - the recipe will be removed on 2017-09-01 unless the issue is fixed"
SRC_URI = "http://www.cypherpunks.ca/otr/${BP}.tar.gz \
file://ignore_extra-portability_warnings.patch \
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/pidgin/pidgin_2.11.0.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/pidgin/pidgin_2.11.0.bb
index e9971467f..462e21c92 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/pidgin/pidgin_2.11.0.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/pidgin/pidgin_2.11.0.bb
@@ -2,7 +2,7 @@ SUMMARY = "multi-protocol instant messaging client"
SECTION = "x11/network"
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
-DEPENDS = "python virtual/libintl intltool-native libxml2 gconf"
+DEPENDS = "python virtual/libintl intltool-native libxml2 gconf glib-2.0-native"
inherit autotools gettext pkgconfig gconf perlnative
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/pngcheck/pngcheck/0001-make-Respect-variables-from-environement.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/pngcheck/pngcheck/0001-make-Respect-variables-from-environement.patch
new file mode 100644
index 000000000..2d0ea0252
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/pngcheck/pngcheck/0001-make-Respect-variables-from-environement.patch
@@ -0,0 +1,60 @@
+From 6245f18091cad11520c159248c1cf7a84f12857c Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Wed, 5 Apr 2017 13:15:43 -0700
+Subject: [PATCH] make: Respect variables from environement
+
+link with shared zlib
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ Makefile.unx | 18 ++++++++----------
+ 1 file changed, 8 insertions(+), 10 deletions(-)
+
+diff --git a/Makefile.unx b/Makefile.unx
+index 772da46..4ae7061 100644
+--- a/Makefile.unx
++++ b/Makefile.unx
+@@ -24,18 +24,16 @@ ZINC = -I$(ZPATH)
+ ZLIB = $(ZPATH)/libz.a
+
+ INCS = $(ZINC)
+-LIBS = $(ZLIB)
++LIBS = -lz
+
+-CC = gcc
+-LD = gcc
+-RM = rm
+-CFLAGS = -O -Wall $(INCS) -DUSE_ZLIB
++CC ?= gcc
++LD ?= gcc
++RM ?= rm
++CFLAGS += -O -Wall $(INCS) -DUSE_ZLIB
+ # [note that -Wall is a gcc-specific compilation flag ("all warnings on")]
+ O = .o
+ E =
+
+-LDFLAGS =
+-
+ PROG = pngcheck
+ PROG2 = pngsplit
+ PROG3 = png-fix-IDAT-windowsize
+@@ -57,13 +55,13 @@ EXES = $(PROG)$(E) $(PROG2)$(E) $(PROG3)$(E)
+ all: $(EXES)
+
+ $(PROG)$(E): $(PROG).c
+- $(CC) $(CFLAGS) -o $@ $(PROG).c $(LIBS)
++ $(CC) $(CFLAGS) -o $@ $(PROG).c $(LDFLAGS) $(LIBS)
+
+ $(PROG2)$(E): gpl/$(PROG2).c
+- $(CC) $(CFLAGS) -o $@ gpl/$(PROG2).c $(LIBS)
++ $(CC) $(CFLAGS) -o $@ gpl/$(PROG2).c $(LDFLAGS) $(LIBS)
+
+ $(PROG3)$(E): gpl/$(PROG3).c
+- $(CC) $(CFLAGS) -o $@ gpl/$(PROG3).c $(LIBS)
++ $(CC) $(CFLAGS) -o $@ gpl/$(PROG3).c $(LDFLAGS) $(LIBS)
+
+
+ # maintenance ---------------------------------------------------------------
+--
+2.12.2
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/pngcheck/pngcheck/0001-png-fix-IDAT-windowsize-Fix-format-string-errors-in-.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/pngcheck/pngcheck/0001-png-fix-IDAT-windowsize-Fix-format-string-errors-in-.patch
new file mode 100644
index 000000000..6d4465fbe
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/pngcheck/pngcheck/0001-png-fix-IDAT-windowsize-Fix-format-string-errors-in-.patch
@@ -0,0 +1,36 @@
+From d4d8257953bd1e7be167aed24c0578362cc5f675 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Wed, 5 Apr 2017 13:12:30 -0700
+Subject: [PATCH 1/2] png-fix-IDAT-windowsize: Fix format string errors in
+ fprintf
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ gpl/png-fix-IDAT-windowsize.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/gpl/png-fix-IDAT-windowsize.c b/gpl/png-fix-IDAT-windowsize.c
+index 6d4ef9c..d212017 100644
+--- a/gpl/png-fix-IDAT-windowsize.c
++++ b/gpl/png-fix-IDAT-windowsize.c
+@@ -127,7 +127,7 @@ int main(int argc, char *argv[])
+ fprintf(stderr, " Compiled with zlib %s; using zlib %s.\n",
+ ZLIB_VERSION, zlib_version);
+ fprintf(stderr, "\n");
+- fprintf(stderr, png_fix_IDAT_windowsize_usage);
++ fprintf(stderr, "%s", png_fix_IDAT_windowsize_usage);
+ fflush(stderr);
+ return 1;
+ }
+@@ -143,7 +143,7 @@ int main(int argc, char *argv[])
+ fflush(stdout);
+
+ if ( argn == argc ) {
+- fprintf(stderr, png_fix_IDAT_windowsize_usage);
++ fprintf(stderr, "%s", png_fix_IDAT_windowsize_usage);
+ fflush(stderr);
+ return 5;
+ } else {
+--
+2.12.2
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/pngcheck/pngcheck/10-pngsplit-format-strings.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/pngcheck/pngcheck/10-pngsplit-format-strings.patch
new file mode 100644
index 000000000..f2c86689e
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/pngcheck/pngcheck/10-pngsplit-format-strings.patch
@@ -0,0 +1,40 @@
+From: Jari Aalto <jari.aalto@cante.net>
+Subject: Correct fomat strings fro hardened build flags
+
+---
+ gpl/pngsplit.c | 10 +++++-----
+ 1 file changed, 5 insertions(+), 5 deletions(-)
+
+--- a/gpl/pngsplit.c
++++ b/gpl/pngsplit.c
+@@ -141,8 +141,8 @@
+ 0 == strncmp( argv[argn], "-quiet", 2 ) )
+ verbose = 0;
+ else {
+- fprintf(stderr, pngsplit_hdr);
+- fprintf(stderr, pngsplit_usage);
++ fprintf(stderr, "%s", pngsplit_hdr);
++ fprintf(stderr, "%s", pngsplit_usage);
+ fflush(stderr);
+ return 1;
+ }
+@@ -150,8 +150,8 @@
+ }
+
+ if ( argn == argc ) {
+- fprintf(stderr, pngsplit_hdr);
+- fprintf(stderr, pngsplit_usage);
++ fprintf(stderr, "%s", pngsplit_hdr);
++ fprintf(stderr, "%s", pngsplit_usage);
+ fflush(stderr);
+ return 5;
+ } else {
+@@ -162,7 +162,7 @@
+
+ /*============================= MAIN LOOP =============================*/
+
+- fprintf(stdout, pngsplit_hdr);
++ fprintf(stdout, "%s", pngsplit_hdr);
+ fflush(stdout);
+
+ while (argn <= argc) {
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/pngcheck/pngcheck_2.3.0.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/pngcheck/pngcheck_2.3.0.bb
index 6d0dfff93..9f617ecda 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/pngcheck/pngcheck_2.3.0.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/pngcheck/pngcheck_2.3.0.bb
@@ -4,15 +4,21 @@ LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://gpl/COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
DEPENDS = "zlib libpng"
-SRC_URI = "${SOURCEFORGE_MIRROR}/project/png-mng/${BPN}/${PV}/${BPN}-${PV}.tar.gz"
+SRC_URI = "${SOURCEFORGE_MIRROR}/project/png-mng/${BPN}/${PV}/${BPN}-${PV}.tar.gz \
+ file://10-pngsplit-format-strings.patch \
+ file://0001-png-fix-IDAT-windowsize-Fix-format-string-errors-in-.patch \
+ file://0001-make-Respect-variables-from-environement.patch \
+ "
SRC_URI[md5sum] = "980bd6d9a3830fdce746d7fe3c9166ee"
SRC_URI[sha256sum] = "77f0a039ac64df55fbd06af6f872fdbad4f639d009bbb5cd5cbe4db25690f35f"
-EXTRA_OEMAKE = "-e MAKEFLAGS="
+CFLAGS += "-DUSE_ZLIB"
+
+EXTRA_OEMAKE = "-f ${S}/Makefile.unx"
do_compile() {
- oe_runmake -f Makefile.unx INCS=-I${STAGING_DIR_HOST}${incdir} LIBS='${STAGING_DIR_HOST}${libdir}/libz.a ${LDFLAGS}'
+ oe_runmake
}
do_install() {
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/poco/poco_1.7.5.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/poco/poco_1.7.8.bb
index 0fc50e154..1b837354e 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/poco/poco_1.7.5.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/poco/poco_1.7.8.bb
@@ -12,15 +12,16 @@ inherit cmake ptest
BBCLASSEXTEND = "native"
-SRCREV = "7dfdcfb70d75ccdaaf2b43fa0b23f82599aebec3"
+SRCREV = "aae9c2e0f64caf019d31ba8f97635d5656b25ba5"
SRC_URI = " \
- git://github.com/pocoproject/poco.git \
+ git://github.com/pocoproject/poco.git;branch=poco-${PV} \
file://run-ptest \
"
S = "${WORKDIR}/git"
EXTRA_OECMAKE = "-DCMAKE_BUILD_TYPE=RelWithDebInfo -DPOCO_UNBUNDLED=ON \
+ -DZLIB_LIBRARY_RELEASE:STRING=z -DPCRE_LIBRARY:STRING=pcre \
${@bb.utils.contains('PTEST_ENABLED', '1', '-DENABLE_TESTS=ON ', '', d)}"
# For the native build we want to use the bundled version
@@ -34,16 +35,16 @@ EXTRA_OECMAKE_append = " -DCMAKE_SKIP_RPATH=ON"
# these don't have dependencies outside oe-core
PACKAGECONFIG ??= "XML JSON MongoDB PDF Util Net NetSSL Crypto Data DataSQLite Zip"
-PACKAGECONFIG[XML] = "-DENABLE_XML=ON,-DENABLE_XML=OFF,expat"
+PACKAGECONFIG[XML] = "-DENABLE_XML=ON -DEXPAT_LIBRARY:STRING=expat,-DENABLE_XML=OFF,expat"
PACKAGECONFIG[JSON] = "-DENABLE_JSON=ON,-DENABLE_JSON=OFF"
PACKAGECONFIG[MongoDB] = "-DENABLE_MONGODB=ON,-DENABLE_MONGODB=OFF"
PACKAGECONFIG[PDF] = "-DENABLE_PDF=ON,-DENABLE_PDF=OFF,zlib"
PACKAGECONFIG[Util] = "-DENABLE_UTIL=ON,-DENABLE_UTIL=OFF"
PACKAGECONFIG[Net] = "-DENABLE_NET=ON,-DENABLE_NET=OFF"
-PACKAGECONFIG[NetSSL] = "-DENABLE_NETSSL=ON,-DENABLE_NETSSL=OFF,openssl"
-PACKAGECONFIG[Crypto] = "-DENABLE_CRYPTO=ON,-DENABLE_CRYPTO=OFF,openssl"
+PACKAGECONFIG[NetSSL] = "-DENABLE_NETSSL=ON -DOPENSSL_SSL_LIBRARY:STRING=ssl -DOPENSSL_CRYPTO_LIBRARY:STRING=crypto,-DENABLE_NETSSL=OFF,openssl"
+PACKAGECONFIG[Crypto] = "-DENABLE_CRYPTO=ON -DOPENSSL_SSL_LIBRARY:STRING=ssl -DOPENSSL_CRYPTO_LIBRARY:STRING=crypto,-DENABLE_CRYPTO=OFF,openssl"
PACKAGECONFIG[Data] = "-DENABLE_DATA=ON,-DENABLE_DATA=OFF"
-PACKAGECONFIG[DataSQLite] = "-DENABLE_DATA_SQLITE=ON,-DENABLE_DATA_SQLITE=OFF,sqlite3"
+PACKAGECONFIG[DataSQLite] = "-DENABLE_DATA_SQLITE=ON -DSQLITE3_LIBRARY:STRING=sqlite3,-DENABLE_DATA_SQLITE=OFF,sqlite3"
PACKAGECONFIG[Zip] = "-DENABLE_ZIP=ON,-DENABLE_ZIP=OFF"
# Additional components not build by default,
@@ -51,7 +52,7 @@ PACKAGECONFIG[Zip] = "-DENABLE_ZIP=ON,-DENABLE_ZIP=OFF"
# or they don't work on all architectures
PACKAGECONFIG[mod_poco] = "-DENABLE_APACHECONNECTOR=ON,-DENABLE_APACHECONNECTOR=OFF,apr apache2"
PACKAGECONFIG[CppParser] = "-DENABLE_CPPPARSER=ON,-DENABLE_CPPPARSER=OFF"
-PACKAGECONFIG[DataMySQL] = "-DENABLE_DATA_MYSQL=ON,-DENABLE_DATA_MYSQL=OFF,mariadb"
+PACKAGECONFIG[DataMySQL] = "-DENABLE_DATA_MYSQL=ON -DMYSQL_LIB:STRING=mysqlclient_r,-DENABLE_DATA_MYSQL=OFF,mariadb"
PACKAGECONFIG[DataODBC] = "-DENABLE_DATA_ODBC=ON,-DENABLE_DATA_ODBC=OFF,libiodbc"
PACKAGECONFIG[PageCompiler] = "-DENABLE_PAGECOMPILER=ON,-DENABLE_PAGECOMPILER=OFF"
PACKAGECONFIG[PageCompilerFile2Page] = "-DENABLE_PAGECOMPILER_FILE2PAGE=ON,-DENABLE_PAGECOMPILER_FILE2PAGE=OFF"
@@ -62,12 +63,12 @@ PACKAGES = "${PN}-dbg ${POCO_PACKAGES}"
python __anonymous () {
packages = []
testrunners = []
- components = d.getVar("PACKAGECONFIG", True).split()
+ components = d.getVar("PACKAGECONFIG").split()
components.append("Foundation")
for lib in components:
pkg = ("poco-%s" % lib.lower()).replace("_","")
packages.append(pkg)
- if not d.getVar("FILES_%s" % pkg, True):
+ if not d.getVar("FILES_%s" % pkg):
d.setVar("FILES_%s" % pkg, "${libdir}/libPoco%s.so.*" % lib)
testrunners.append("%s" % lib)
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/poppler/poppler_0.47.0.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/poppler/poppler_0.53.0.bb
index 071cfb26e..c1bfb31e7 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/poppler/poppler_0.47.0.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/poppler/poppler_0.53.0.bb
@@ -7,8 +7,8 @@ SRC_URI = " \
file://0001-add-manadatory-options-to-find-qt4-qt5-moc.patch \
file://0002-fix-gcc-6-math-ambiguous-errors.patch \
"
-SRC_URI[md5sum] = "669b195ff24173d35cacf1d20b6fe4fa"
-SRC_URI[sha256sum] = "b872e7228fc34a71ce4b47a5aea2a57ae67528818fa846e1e0eda089319bd242"
+SRC_URI[md5sum] = "943679f1030b9bc19a989f24121a282a"
+SRC_URI[sha256sum] = "592bf72960c6b5948b67657594b05e72d9a278daf7613c9f3cdff9a5b73096a8"
DEPENDS = "fontconfig zlib cairo lcms"
@@ -20,12 +20,11 @@ PACKAGECONFIG[png] = "--enable-libpng,--disable-libpng,libpng"
PACKAGECONFIG[tiff] = "--enable-libtiff,--disable-libtiff,tiff"
PACKAGECONFIG[curl] = "--enable-libcurl,--disable-libcurl,curl"
PACKAGECONFIG[openjpeg] = "--enable-libopenjpeg=openjpeg2,--disable-libopenjpeg,openjpeg"
-PACKAGECONFIG[qt5] = "--enable-poppler-qt5 --with-moc-qt5=${STAGING_BINDIR_NATIVE}/qt5/moc,--disable-poppler-qt5,qtbase"
+PACKAGECONFIG[qt5] = "--enable-poppler-qt5 --with-moc-qt5=${STAGING_BINDIR_NATIVE}/qt5/moc,--disable-poppler-qt5,qtbase qttools-native"
PACKAGECONFIG[qt4e] = "--enable-poppler-qt4 --with-moc-qt4=${STAGING_BINDIR_NATIVE}/moc4,--disable-poppler-qt4,qt4-embedded"
PACKAGECONFIG[nss] = "--enable-libnss,--disable-libnss,nss"
-# Needed for qt5
-CXXFLAGS += "--std=c++11"
+SECURITY_CFLAGS = "${SECURITY_NO_PIE_CFLAGS}"
EXTRA_OECONF = "\
--enable-xpdf-headers \
@@ -34,7 +33,7 @@ EXTRA_OECONF = "\
"
do_compile_prepend() {
- export GIR_EXTRA_LIBS_PATH="${B}/poppler/.libs"
+ export GIR_EXTRA_LIBS_PATH="${B}/poppler/.libs"
}
# Adjust library names when building for QT4e
@@ -43,7 +42,7 @@ SRC_URI_append = "${QT4E_PATCHES}"
# check for TARGET_FPU=soft and inform configure of the result so it can disable some floating points
def get_poppler_fpu_setting(bb, d):
- if d.getVar('TARGET_FPU', 1) in [ 'soft' ]:
+ if d.getVar('TARGET_FPU') in [ 'soft' ]:
return "--enable-fixedpoint"
return ""
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/portaudio/portaudio-v19_20140130.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/portaudio/portaudio-v19_20161030.bb
index 8f2b0dbe4..489f8ad9e 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/portaudio/portaudio-v19_20140130.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/portaudio/portaudio-v19_20161030.bb
@@ -3,12 +3,12 @@ SECTION = "libs/multimedia"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=26107732c2ab637c5710446fcfaf02df"
-PV = "v19+svnr1919"
+PV = "v190600"
-SRC_URI = "http://www.portaudio.com/archives/pa_stable_v19_20140130.tgz \
+SRC_URI = "http://www.portaudio.com/archives/pa_stable_v190600_20161030.tgz \
file://ldflags.patch"
-SRC_URI[md5sum] = "7f220406902af9dca009668e198cbd23"
-SRC_URI[sha256sum] = "8fe024a5f0681e112c6979808f684c3516061cc51d3acc0b726af98fc96c8d57"
+SRC_URI[md5sum] = "4df8224e047529ca9ad42f0521bf81a8"
+SRC_URI[sha256sum] = "f5a21d7dcd6ee84397446fa1fa1a0675bb2e8a4a6dceb4305a8404698d8d1513"
S = "${WORKDIR}/portaudio"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/postgresql/postgresql.inc b/import-layers/meta-openembedded/meta-oe/recipes-support/postgresql/postgresql.inc
index 454624caa..812c2aed4 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/postgresql/postgresql.inc
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/postgresql/postgresql.inc
@@ -20,7 +20,6 @@ DESCRIPTION = "\
HOMEPAGE = "http://www.postgresql.com"
LICENSE = "BSD"
DEPENDS = "zlib readline tzcode-native"
-INC_PR = "r0"
ARM_INSTRUCTION_SET = "arm"
@@ -38,9 +37,9 @@ LEAD_SONAME = "libpq.so"
# LDFLAGS for shared libraries
export LDFLAGS_SL = "${LDFLAGS}"
-inherit autotools pkgconfig perlnative pythonnative useradd update-rc.d systemd
+inherit autotools pkgconfig perlnative pythonnative useradd update-rc.d systemd gettext
-CFLAGS += "-I${STAGING_INCDIR}/${PYTHON_DIR}"
+CFLAGS += "-I${STAGING_INCDIR}/${PYTHON_DIR} -I${STAGING_INCDIR}/tcl8.6"
SYSTEMD_SERVICE_${PN} = "postgresql.service"
SYSTEMD_AUTO_ENABLE_${PN} = "disable"
@@ -55,14 +54,13 @@ pkg_postinst_${PN} () {
fi
}
-enable_pam = "${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'pam', '', d)}"
+enable_pam = "${@bb.utils.filter('DISTRO_FEATURES', 'pam', d)}"
PACKAGECONFIG ??= "${enable_pam} openssl python uuid libxml tcl nls libxml perl"
PACKAGECONFIG[pam] = "--with-pam,--without-pam,libpam,"
PACKAGECONFIG[openssl] = "--with-openssl,--without-openssl,openssl,"
PACKAGECONFIG[python] = "--with-python,--without-python,python,python"
PACKAGECONFIG[uuid] = "--with-ossp-uuid,--without-ossp-uuid,ossp-uuid,"
-# when tcl native package is fixed change WORKDIR to STAGING_BINDIR_CROSS
-PACKAGECONFIG[tcl] = "--with-tcl --with-tclconfig=${STAGING_BINDIR_CROSS},--without-tcl,tcl,"
+PACKAGECONFIG[tcl] = "--with-tcl --with-tclconfig=${STAGING_BINDIR_CROSS},--without-tcl,tcl tcl-native,"
PACKAGECONFIG[nls] = "--enable-nls,--disable-nls,,"
PACKAGECONFIG[libxml] = "--with-libxml,--without-libxml,libxml2,libxml2"
PACKAGECONFIG[perl] = "--with-perl,--without-perl,perl,perl"
@@ -91,7 +89,7 @@ python populate_packages_prepend() {
fpack="${PN}-" + name + "-dbg" + " " + fpack
d.setVar('PACKAGES', fpack)
- conf=(d.getVar('PACKAGECONFIG', True) or "").split()
+ conf=(d.getVar('PACKAGECONFIG') or "").split()
pack=d.getVar('PACKAGES', False) or ""
bb.debug(1, "PACKAGECONFIG=%s" % conf)
bb.debug(1, "PACKAGES1=%s" % pack )
@@ -105,7 +103,7 @@ python populate_packages_prepend() {
if "python" in conf:
fill_more("plpython")
- pack=d.getVar('PACKAGES', True) or ""
+ pack=d.getVar('PACKAGES') or ""
bb.debug(1, "PACKAGES2=%s" % pack)
}
@@ -191,7 +189,7 @@ do_install_append() {
# multiple server config directory
install -d -m 700 ${D}${sysconfdir}/default/${BPN}
- if [ "${@d.getVar('enable_pam', True)}" = "pam" ]; then
+ if [ "${@d.getVar('enable_pam')}" = "pam" ]; then
install -d ${D}${sysconfdir}/pam.d
install -m 644 ${WORKDIR}/postgresql.pam ${D}${sysconfdir}/pam.d/postgresql
fi
@@ -221,7 +219,7 @@ FILES_${PN} += "${sysconfdir}/init.d/${BPN}-server \
${libdir}/${BPN}/libpqwalreceiver.so \
${libdir}/${BPN}/*_and_*.so \
${@'${sysconfdir}/pam.d/postgresql' \
- if 'pam' == d.getVar('enable_pam', True) \
+ if 'pam' == d.getVar('enable_pam') \
else ''} \
"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/postgresql/postgresql_9.4.11.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/postgresql/postgresql_9.4.11.bb
new file mode 100644
index 000000000..e4d2edad0
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/postgresql/postgresql_9.4.11.bb
@@ -0,0 +1,11 @@
+require postgresql.inc
+
+LIC_FILES_CHKSUM = "file://COPYRIGHT;md5=81b69ddb31a8be66baafd14a90146ee2"
+
+SRC_URI += "\
+ file://remove.autoconf.version.check.patch \
+ file://not-check-libperl.patch \
+"
+
+SRC_URI[md5sum] = "2fee03f2034034dbfcb3321a0bb0f829"
+SRC_URI[sha256sum] = "e3eb51d045c180b03d2de1f0c3af9356e10be49448e966ca01dfc2c6d1cc9d23"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/postgresql/postgresql_9.4.8.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/postgresql/postgresql_9.4.8.bb
deleted file mode 100644
index 7dba92cbf..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/postgresql/postgresql_9.4.8.bb
+++ /dev/null
@@ -1,14 +0,0 @@
-require postgresql.inc
-
-LIC_FILES_CHKSUM = "file://COPYRIGHT;md5=3a9c1120056a102a8c8c4013cd828dce"
-
-PR = "${INC_PR}.0"
-
-SRC_URI += "\
- file://remove.autoconf.version.check.patch \
- file://not-check-libperl.patch \
-"
-
-SRC_URI[md5sum] = "a1a2e8014b2b4c49fc58fe2e2fe83681"
-SRC_URI[sha256sum] = "4a10640e180e0d9adb587bc25a82dcce6bf507b033637e7fb9d4eeffa33a6b4c"
-
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/procmail/procmail_3.22.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/procmail/procmail_3.22.bb
index 56656c42a..aa474ceb1 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/procmail/procmail_3.22.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/procmail/procmail_3.22.bb
@@ -38,7 +38,8 @@ do_compile() {
do_install() {
install -d ${D}${bindir}
- install -d ${D}${mandir}/man{1,5}
+ install -d ${D}${mandir}/man1
+ install -d ${D}${mandir}/man5
oe_runmake -i BASENAME=${D}/usr MANDIR=${D}${mandir} install
install -m 0644 debian/mailstat.1 ${D}${mandir}/man1
}
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/psqlodbc/psqlodbc_09.05.0300.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/psqlodbc/psqlodbc_09.05.0300.bb
index 6e1c8ab4a..97326a20e 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/psqlodbc/psqlodbc_09.05.0300.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/psqlodbc/psqlodbc_09.05.0300.bb
@@ -12,3 +12,5 @@ SRC_URI = "http://ftp.postgresql.org/pub/odbc/versions/src/${BPN}-${PV}.tar.gz \
SRC_URI[md5sum] = "4c6e0b22187d7bb1c998ffac89e50f6b"
SRC_URI[sha256sum] = "9521f328bf28aaaf5c8488dc89792b614f9d6271742c0baf9bb41c97537764a8"
+
+PNBLACKLIST[psqlodbc] ?= "Depends on blacklisted postgresql - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/raptor2/files/0001-configure.ac-do-additional-checks-on-libxml2-also-wh.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/raptor2/files/0001-configure.ac-do-additional-checks-on-libxml2-also-wh.patch
new file mode 100644
index 000000000..7faeb130a
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/raptor2/files/0001-configure.ac-do-additional-checks-on-libxml2-also-wh.patch
@@ -0,0 +1,34 @@
+From 3f97aac5a1f43ef57b02fb9ccdcadd41a6b69fa9 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
+Date: Tue, 27 Oct 2015 10:21:24 +0100
+Subject: [PATCH] configure.ac: do additional checks on libxml2 also when
+ detected by pkg-config
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Upstream-Status: Applied [1]
+
+[1] https://github.com/dajobe/raptor/pull/33
+
+Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
+---
+ configure.ac | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/configure.ac b/configure.ac
+index 10ff870..35fa08e 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -601,7 +601,7 @@ have_libxml=0
+ need_libxml=0
+
+ oCPPFLAGS="$CPPFLAGS"
+-if test "X$XML_CONFIG" != X; then
++if test "X$libxml_source" != X; then
+ CPPFLAGS="$LIBXML_CFLAGS $CPPFLAGS"
+ LIBS="$LIBS $LIBXML_LIBS"
+ AC_CHECK_FUNC(xmlCreatePushParserCtxt, have_xmlCreatePushParserCtxt=yes, have_xmlCreatePushParserCtxt=no)
+--
+2.1.0
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/raptor2/raptor2_2.0.15.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/raptor2/raptor2_2.0.15.bb
new file mode 100644
index 000000000..dd00c14f7
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/raptor2/raptor2_2.0.15.bb
@@ -0,0 +1,25 @@
+SUMMARY = "Library for parsing and serializing RDF syntaxes"
+LICENSE = "GPLv2 | LGPLv2.1 | Apache-2.0"
+LIC_FILES_CHKSUM = " \
+ file://LICENSE.txt;md5=b840e5ae3aeb897f45b473341348cd9c \
+ file://COPYING;md5=751419260aa954499f7abaabaa882bbe \
+ file://COPYING.LIB;md5=2d5025d4aa3495befef8f17206a5b0a1 \
+ file://LICENSE-2.0.txt;md5=3b83ef96387f14655fc854ddc3c6bd57 \
+"
+
+DEPENDS = "libxml2 libxslt curl yajl"
+
+SRC_URI = " \
+ http://download.librdf.org/source/${BPN}-${PV}.tar.gz \
+ file://0001-configure.ac-do-additional-checks-on-libxml2-also-wh.patch \
+"
+SRC_URI[md5sum] = "a39f6c07ddb20d7dd2ff1f95fa21e2cd"
+SRC_URI[sha256sum] = "ada7f0ba54787b33485d090d3d2680533520cd4426d2f7fb4782dd4a6a1480ed"
+
+inherit autotools pkgconfig
+
+EXTRA_OECONF = " \
+ --without-xml2-config \
+ --without-curl-config \
+ --without-xslt-config \
+"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/samsung-soc-utils/s3c24xx-gpio_svn.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/samsung-soc-utils/s3c24xx-gpio_svn.bb
index 082dc005f..255754d5d 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/samsung-soc-utils/s3c24xx-gpio_svn.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/samsung-soc-utils/s3c24xx-gpio_svn.bb
@@ -13,7 +13,7 @@ S = "${WORKDIR}/gpio"
CLEANBROKEN = "1"
do_compile() {
- ${CC} ${CFLAGS} ${LDFLAGS} -static -o ${PN} gpio.c
+ ${CC} ${CFLAGS} ${LDFLAGS} -o ${PN} gpio.c
}
do_install() {
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/samsung-soc-utils/s3c64xx-gpio_svn.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/samsung-soc-utils/s3c64xx-gpio_svn.bb
index bed0555c2..976a4f15e 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/samsung-soc-utils/s3c64xx-gpio_svn.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/samsung-soc-utils/s3c64xx-gpio_svn.bb
@@ -12,7 +12,7 @@ S = "${WORKDIR}/gpio"
CLEANBROKEN = "1"
do_compile() {
- ${CC} ${CFLAGS} ${LDFLAGS} -static -o ${PN} gpio-s3c6410.c
+ ${CC} ${CFLAGS} ${LDFLAGS} -o ${PN} gpio-s3c6410.c
}
do_install() {
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/sdparm/files/make-sysroot-work.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/sdparm/files/make-sysroot-work.patch
index 5405ed802..3fd85d9e2 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/sdparm/files/make-sysroot-work.patch
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/sdparm/files/make-sysroot-work.patch
@@ -1,27 +1,31 @@
-[PATCH] make sysroot work
+From 15f0722bc5481cca5ba92adceab8c769112e4ea6 Mon Sep 17 00:00:00 2001
+From: Dengke Du <dengke.du@windriver.com>
+Date: Mon, 24 Oct 2016 07:28:13 +0000
+Subject: [PATCH] sdparm: make sysroot work
Upstream-Status: Pending
Add = before the included dir to make sysroot work
Signed-off-by: Roy.Li <rongqing.li@windriver.com>
+Signed-off-by: Dengke Du <dengke.du@windriver.com>
---
src/Makefile.am | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/Makefile.am b/src/Makefile.am
-index c83788c..9f62115 100644
+index 61dd9f8..42c911f 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
-@@ -32,7 +32,7 @@ sglib_SOURCES = ../lib/sg_lib.c \
+@@ -41,7 +41,7 @@ sglib_SOURCES = ../lib/sg_lib.c \
../lib/sg_pt_common.c
if HAVE_SGUTILS
--INCLUDES = -I/usr/include/scsi
+-INCLUDES = -I/scsi
+INCLUDES = -I=@includedir@/scsi
sdparm_LDADD = @GETOPT_O_FILES@ @os_libs@ @SGUTILS_LIBS@
sdparm_DEPENDENCIES = @GETOPT_O_FILES@
else
--
-1.9.1
+2.7.4
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/sdparm/sdparm_1.09.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/sdparm/sdparm_1.10.bb
index ca11ca4ec..8ab2819d3 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/sdparm/sdparm_1.09.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/sdparm/sdparm_1.10.bb
@@ -14,8 +14,8 @@ SRC_URI = "http://sg.danny.cz/sg/p/${BPN}-${PV}.tgz \
PACKAGES =+ "${PN}-scripts"
RDEPENDS_${PN}-scripts += "bash ${PN}"
-SRC_URI[md5sum] = "e51b1fd41c3e4c9d1274a2e4f046eebf"
-SRC_URI[sha256sum] = "7294f44173ac0946f1de8af02b1bdb0bd648079245396589397a2b0d3abc42d3"
+SRC_URI[md5sum] = "bdae64375376ce8fe4bf9521c1db858f"
+SRC_URI[sha256sum] = "1ea1ed1bb1ee2aef62392618fa42da9ed027d5e655f174525c39235778292ab3"
inherit autotools
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/sharutils/sharutils-4.14/fix-for-cross-compiling.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/sharutils/sharutils-4.14/fix-for-cross-compiling.patch
deleted file mode 100644
index 86a7da63c..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/sharutils/sharutils-4.14/fix-for-cross-compiling.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From 990234af84a5399017d1c4fe03c5c756a8e51e23 Mon Sep 17 00:00:00 2001
-From: Hongjun Yang <Hongjun.Yang@windriver.com>
-Date: Tue, 20 Aug 2013 09:41:43 +0800
-Subject: [PATCH] fix cross compiling issue
-
-Upstream-Status: Pending
-
-Signed-off-by: Hongjun.Yang <hongjun.yang@windriver.com>
-
----
- configure | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/configure b/configure
-index 6ee98e0..8067f54 100755
---- a/configure
-+++ b/configure
-@@ -26965,7 +26965,7 @@ fi
- if test "$cross_compiling" = yes; then :
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
- $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
--as_fn_error $? "cannot run test program while cross compiling
-+$as_echo "cannot run test program while cross compiling
- See \`config.log' for more details" "$LINENO" 5; }
- else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
---
-1.8.1.4
-
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/sharutils/sharutils/0001-Fix-build-with-clang.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/sharutils/sharutils/0001-Fix-build-with-clang.patch
new file mode 100644
index 000000000..7b627c16d
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/sharutils/sharutils/0001-Fix-build-with-clang.patch
@@ -0,0 +1,29 @@
+From fa8371d348f6a8b0799b2e6c38247dd1399d85e3 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 8 Apr 2017 08:49:48 -0700
+Subject: [PATCH] Fix build with clang
+
+ATTRIBUTE_FORMAT_ARG macro gets computed to be empty with clang
+whereas it does support format attribute, we hard code it
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/shar-opts.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/shar-opts.h b/src/shar-opts.h
+index a287046..172676f 100644
+--- a/src/shar-opts.h
++++ b/src/shar-opts.h
+@@ -377,7 +377,7 @@ extern tOptions sharOptions;
+ # define ATTRIBUTE_FORMAT_ARG(_a)
+ # endif
+
+-static inline char* aoGetsText(char const* pz) ATTRIBUTE_FORMAT_ARG(1);
++static inline char* aoGetsText(char const* pz) __attribute__ ((format_arg(1)));
+ static inline char* aoGetsText(char const* pz) {
+ if (pz == NULL) return NULL;
+ return (char*)gettext(pz);
+--
+2.12.2
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/sharutils/sharutils_4.14.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/sharutils/sharutils_4.14.bb
deleted file mode 100644
index d69e6ecbd..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/sharutils/sharutils_4.14.bb
+++ /dev/null
@@ -1,18 +0,0 @@
-SUMMARY = "This is the set of GNU shar utilities."
-HOMEPAGE = "http://www.gnu.org/software/sharutils/"
-SECTION = "console/utils"
-LICENSE="GPLv3+"
-LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
-
-inherit gettext autotools-brokensep
-
-SRC_URI = "ftp://ftp.gnu.org/gnu/sharutils/sharutils-4.14.tar.gz \
- file://fix-for-cross-compiling.patch \
-"
-
-SRC_URI[md5sum] = "5686c11131b4c4c0841f8f3ef34d136a"
-SRC_URI[sha256sum] = "90f5107c167cfd1b299bb211828d2586471087863dbed698f53109cd5f717208"
-
-do_configure () {
- oe_runconf
-}
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/sharutils/sharutils_4.15.2.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/sharutils/sharutils_4.15.2.bb
new file mode 100644
index 000000000..812fee955
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/sharutils/sharutils_4.15.2.bb
@@ -0,0 +1,21 @@
+SUMMARY = "This is the set of GNU shar utilities."
+HOMEPAGE = "http://www.gnu.org/software/sharutils/"
+SECTION = "console/utils"
+LICENSE="GPLv3+"
+LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
+
+inherit gettext autotools
+
+SRC_URI = "ftp://ftp.gnu.org/gnu/${BPN}/${BP}.tar.gz \
+ file://0001-Fix-build-with-clang.patch \
+"
+SRC_URI[md5sum] = "32a51b23e25ad5e6af4b89f228be1800"
+SRC_URI[sha256sum] = "ee336e68549664e7a19b117adf02edfdeac6307f22e5ba78baca457116914637"
+
+do_install_append() {
+ if [ -e ${D}${libdir}/charset.alias ]
+ then
+ rm -rf ${D}${libdir}/charset.alias
+ rmdir --ignore-fail-on-non-empty ${D}${libdir}
+ fi
+}
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/sqlite/sqlite-2.8.17/0001-shell.c-Fix-format-not-a-string-literal-warning.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/sqlite/sqlite-2.8.17/0001-shell.c-Fix-format-not-a-string-literal-warning.patch
new file mode 100644
index 000000000..c5d7c0c81
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/sqlite/sqlite-2.8.17/0001-shell.c-Fix-format-not-a-string-literal-warning.patch
@@ -0,0 +1,32 @@
+From 443980ddc82fb40e2e1f9544f2be169bd23dd246 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 17 Jun 2017 16:49:24 -0700
+Subject: [PATCH] shell.c: Fix format not a string literal warning
+
+src/shell.c:695:20: error: format not a string literal and no format arguments [-Werror=format-security]
+| fprintf(stderr,zHelp);
+| ^~~~~
+
+Upstream-Status: Pending
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/shell.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/shell.c b/src/shell.c
+index bb46c49..3c6fe0f 100644
+--- a/src/shell.c
++++ b/src/shell.c
+@@ -692,7 +692,7 @@ static int do_meta_command(char *zLine, struct callback_data *p){
+ }else
+
+ if( c=='h' && strncmp(azArg[0], "help", n)==0 ){
+- fprintf(stderr,zHelp);
++ fprintf(stderr, "%s", zHelp);
+ }else
+
+ if( c=='i' && strncmp(azArg[0], "indices", n)==0 && nArg>1 ){
+--
+2.13.1
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/sqlite/sqlite_2.8.17.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/sqlite/sqlite_2.8.17.bb
index e6e14c2ad..501c0e3e7 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/sqlite/sqlite_2.8.17.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/sqlite/sqlite_2.8.17.bb
@@ -8,9 +8,11 @@ LIC_FILES_CHKSUM = "file://src/main.c;beginline=1;endline=10;md5=e98469a8efa024a
PR = "r7"
SRC_URI = "http://www.hwaci.com/sw/sqlite/sqlite-${PV}.tar.gz \
- file://mainmk_build_dynamic.patch \
- file://mainmk_no_tcl.patch \
- file://sqlite.pc"
+ file://mainmk_build_dynamic.patch \
+ file://mainmk_no_tcl.patch \
+ file://sqlite.pc \
+ file://0001-shell.c-Fix-format-not-a-string-literal-warning.patch \
+ "
SOURCES = "attach.o auth.o btree.o btree_rb.o build.o copy.o date.o delete.o \
expr.o func.o hash.o insert.o main.o opcodes.o os.o pager.o \
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/srecord/files/add-option-to-remove-docs.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/srecord/files/add-option-to-remove-docs.patch
new file mode 100644
index 000000000..9b2bd9979
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/srecord/files/add-option-to-remove-docs.patch
@@ -0,0 +1,57 @@
+Add option to build this utility without a documentation.
+
+For full documentation building are necessary utilities like
+groff and ps2pdf. Full documentation can takes a lot of space.
+So it can be disabled by overloading makefile variable WITHOUT_DOC.
+
+Upstream-Status: Inappropriate [Other]
+Workaround specific to our build system.
+
+Signed-off-by: Andrej Valek <andrej.valek@siemens.com>
+
+diff --git a/Makefile.in b/Makefile.in
+index 9bdd8f1..a2b5494 100644
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -141,6 +141,14 @@ GROFF = @GROFF@
+ #
+ SOELIM = @SOELIM@
+
++# Option to build this utility without building and installing the documentation.
++WITHOUT_DOC ?= 0
++ifeq ($(WITHOUT_DOC),0)
++ BUILD_DOC = all-doc
++ INST_DOC = install-doc
++ CLR_DOC = clean-doc
++endif
++
+ # ---------------------------------------------------------
+ # You should not need to change anything below this line.
+
+@@ -4090,7 +4098,7 @@ bin/test_url_decode: $(test_url_decode_obj) .bin srecord/libsrecord.la
+ $(LIBTOOL) --mode=link --tag=CXX $(CXX) $(CPPFLAGS) $(CXXFLAGS) -o $@ \
+ $(test_url_decode_obj) srecord/libsrecord.la $(LDFLAGS) $(LIBS)
+
+-all: all-bin all-doc
++all: all-bin $(BUILD_DOC)
+
+ all-bin: bin/srec_cat bin/srec_cmp bin/srec_info bin/test_arglex_ambiguous \
+ bin/test_crc16 bin/test_fletcher16 bin/test_gecos \
+@@ -4156,7 +4164,7 @@ test_files = t0001a t0002a t0003a t0004a t0005a t0006a t0007a t0008a t0009a \
+ sure: $(test_files)
+ @echo Passed All Tests
+
+-clean: clean-bin clean-doc clean-misc clean-obj
++clean: clean-bin $(CLR_DOC) clean-misc clean-obj
+
+ clean-bin:
+ rm -f bin/srec_cat bin/srec_cmp bin/srec_info bin/test_arglex_ambiguous
+@@ -4443,7 +4451,7 @@ distclean-directories:
+ rm -rf test/fletcher16/.libs test/gecos/.libs test/hyphen/.libs
+ rm -rf test/url_decode/.libs
+
+-install: install-bin install-doc install-include install-libdir install-man
++install: install-bin $(INST_DOC) install-include install-libdir install-man
+
+ install-bin: $(bindir)/srec_cat $(bindir)/srec_cmp $(bindir)/srec_info
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/srecord/srecord_1.64.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/srecord/srecord_1.64.bb
new file mode 100644
index 000000000..fe1af476f
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/srecord/srecord_1.64.bb
@@ -0,0 +1,23 @@
+SUMMARY = "A collection of powerful tools for manipulating EPROM load files."
+SECTION = "devel"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=8dfcbf2f0a144b97f0931b6394debea7"
+
+SRC_URI = " \
+ http://srecord.sourceforge.net/srecord-${PV}.tar.gz \
+ file://add-option-to-remove-docs.patch \
+"
+
+SRC_URI[md5sum] = "4de4a7497472d7972645c2af91313769"
+SRC_URI[sha256sum] = "49a4418733c508c03ad79a29e95acec9a2fbc4c7306131d2a8f5ef32012e67e2"
+
+DEPENDS = "libtool-native boost groff-native"
+
+inherit autotools-brokensep
+
+EXTRA_OECONF = "--without-gcrypt LIBTOOL=${STAGING_BINDIR_CROSS}/${HOST_SYS}-libtool"
+
+# Set variable WITHOUT_DOC=0 to enable documentation generation
+EXTRA_OEMAKE = "WITHOUT_DOC=1"
+
+BBCLASSEXTEND = "native"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/synergy/synergy_git.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/synergy/synergy_git.bb
index e6057f449..f2063e464 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/synergy/synergy_git.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/synergy/synergy_git.bb
@@ -4,12 +4,13 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=0f366945b209c5523e39889f636af00a"
LICENSE = "GPL-2.0"
SECTION = "x11/utils"
-DEPENDS = "virtual/libx11 libxtst libxinerama unzip-native curl openssl"
+DEPENDS = "virtual/libx11 libxtst libxinerama curl openssl"
+do_unpack_extra[depends] = "unzip-native:do_populate_sysroot"
# depends on virtual/libx11
REQUIRED_DISTRO_FEATURES = "x11"
-SRC_URI = "git://github.com/synergy/synergy.git;protocol=http"
+SRC_URI = "git://github.com/symless/synergy-core.git;protocol=https"
# Version 1.7.4-rc8
SRCREV ?= "588fb4b805dd452556d05dbc03fe29ea5b4e43c0"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/syslog-ng/files/Fix-the-memory-leak-problem-for-mutex.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/syslog-ng/files/Fix-the-memory-leak-problem-for-mutex.patch
deleted file mode 100644
index 89022aaf0..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/syslog-ng/files/Fix-the-memory-leak-problem-for-mutex.patch
+++ /dev/null
@@ -1,58 +0,0 @@
-Fix the memory leak problem for mutex
-
-Upstream-Status: Pending
-
-Signed-off-by: Xufeng Zhang <xufeng.zhang@windriver.com>
----
- lib/logqueue.c | 1 +
- modules/affile/affile-dest.c | 2 ++
- modules/dbparser/dbparser.c | 1 +
- 3 files changed, 4 insertions(+), 0 deletions(-)
-
-diff --git a/lib/logqueue.c b/lib/logqueue.c
-index 337a3c1..10edcf0 100644
---- a/lib/logqueue.c
-+++ b/lib/logqueue.c
-@@ -188,6 +188,7 @@ log_queue_init_instance(LogQueue *self, const gchar *persist_name)
- void
- log_queue_free_method(LogQueue *self)
- {
-+ g_static_mutex_free(&self->lock);
- g_free(self->persist_name);
- g_free(self);
- }
-diff --git a/modules/affile/affile-dest.c b/modules/affile/affile-dest.c
-index a2bcdad..ce79f6f 100644
---- a/modules/affile/affile-dest.c
-+++ b/modules/affile/affile-dest.c
-@@ -305,6 +305,7 @@ affile_dw_free(LogPipe *s)
- {
- AFFileDestWriter *self = (AFFileDestWriter *) s;
-
-+ g_static_mutex_free(&self->lock);
- log_pipe_unref((LogPipe *) self->writer);
- self->writer = NULL;
- g_free(self->filename);
-@@ -687,6 +688,7 @@ affile_dd_free(LogPipe *s)
- /* NOTE: this must be NULL as deinit has freed it, otherwise we'd have circular references */
- g_assert(self->single_writer == NULL && self->writer_hash == NULL);
-
-+ g_static_mutex_free(&self->lock);
- log_template_unref(self->filename_template);
- log_writer_options_destroy(&self->writer_options);
- log_dest_driver_free(s);
-diff --git a/modules/dbparser/dbparser.c b/modules/dbparser/dbparser.c
-index f1248b5..9775701 100644
---- a/modules/dbparser/dbparser.c
-+++ b/modules/dbparser/dbparser.c
-@@ -284,6 +284,7 @@ log_db_parser_free(LogPipe *s)
- {
- LogDBParser *self = (LogDBParser *) s;
-
-+ g_static_mutex_free(&self->lock);
- if (self->db)
- pattern_db_free(self->db);
-
---
-1.7.1
-
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/syslog-ng/files/configure.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/syslog-ng/files/configure.patch
deleted file mode 100644
index 109f58cf7..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/syslog-ng/files/configure.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-Index: syslog-ng-3.5.4.1/configure.ac
-===================================================================
---- syslog-ng-3.5.4.1.orig/configure.ac 2014-07-18 13:49:36.794141441 +0000
-+++ syslog-ng-3.5.4.1/configure.ac 2014-07-18 14:23:57.738197606 +0000
-@@ -8,7 +8,8 @@ dnl SNAPSHOT_VERSION - snapshot version to add to version number
- dnl BINARY_BRANCH - the value is added to all source/binary packages
- dnl SOURCE_REVISION - Revision of the source-tree, will added to the version string
- dnl
--AC_INIT(syslog-ng/main.c)
-+AC_INIT(syslog-ng, 3.5.4.1)
-+AC_CONFIG_SRCDIR(syslog-ng/main.c)
- AC_CONFIG_MACRO_DIR([m4])
- m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
-
-@@ -53,7 +54,7 @@ else
- CURRDATE=`date +"%a, %d %b %Y %H:%M:%S %Z"`
- fi
-
--AM_INIT_AUTOMAKE($PACKAGE, $VERSION, [foreign no-define subdir-objects])
-+AM_INIT_AUTOMAKE([foreign no-define subdir-objects])
- _AM_PROG_TAR([ustar])
- if test -n "$SNAPSHOT_VERSION"; then
- VERSION=$VERSION+$SNAPSHOT_VERSION
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/syslog-ng/files/dbifix.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/syslog-ng/files/dbifix.patch
deleted file mode 100644
index 15dfb6885..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/syslog-ng/files/dbifix.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-Index: syslog-ng-3.5.4.1/configure.ac
-===================================================================
---- syslog-ng-3.5.4.1.orig/configure.ac 2014-07-18 14:35:03.134215740 +0000
-+++ syslog-ng-3.5.4.1/configure.ac 2014-07-18 15:31:52.510308653 +0000
-@@ -576,13 +576,14 @@
- dnl ***************************************************************************
-
- AC_CHECK_LIB(dl, dlsym, DL_LIBS="-ldl")
-+if test "x$enable_sql" != "xno"; then
- PKG_CHECK_MODULES(LIBDBI, dbi >= $LIBDBI_MIN_VERSION, libdbi_pkgconfig_not_found="0", libdbi_pkgconfig_not_found="1")
-
- if test "$libdbi_pkgconfig_not_found" -eq 1; then
- dnl if libdbi has no .pc file, try it without one
- AC_CHECK_LIB(dbi, dbi_initialize, LIBDBI_LIBS="-ldbi"; LIBDBI_CFLAGS="-I/usr/include")
- fi
--
-+fi
- if test "x$enable_sql" = "xauto"; then
- AC_MSG_CHECKING(whether to enable SQL support)
- if test "x$LIBDBI_LIBS" != "x"; then
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/syslog-ng/files/fix-a-memory-leak-in-log_driver_free.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/syslog-ng/files/fix-a-memory-leak-in-log_driver_free.patch
deleted file mode 100644
index 260347413..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/syslog-ng/files/fix-a-memory-leak-in-log_driver_free.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From a269669ba3cb6d1c06a3322b4a6a035cb787d085 Mon Sep 17 00:00:00 2001
-From: Gergely Nagy <algernon@balabit.hu>
-Date: Tue, 14 Jan 2014 13:58:05 +0100
-Subject: [PATCH] driver: Fix a memory leak in log_driver_free()
-
-Upstream-Status: Backport
-
-After freeing up the members of self->plugins, free self->plugins itself
-too.
-
-Signed-off-by: Gergely Nagy <algernon@balabit.hu>
----
- lib/driver.c | 4 ++++
- 1 file changed, 4 insertions(+)
-
-diff --git a/lib/driver.c b/lib/driver.c
-index d77fe57..a6867b9 100644
---- a/lib/driver.c
-+++ b/lib/driver.c
-@@ -91,6 +91,10 @@ log_driver_free(LogPipe *s)
- {
- log_driver_plugin_free((LogDriverPlugin *) l->data);
- }
-+ if (self->plugins)
-+ {
-+ g_list_free(self->plugins);
-+ }
- if (self->group)
- g_free(self->group);
- if (self->id)
---
-1.8.4.1
-
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/syslog-ng/files/syslog-ng.conf b/import-layers/meta-openembedded/meta-oe/recipes-support/syslog-ng/files/syslog-ng.conf
index f0da2b703..0c6f54355 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/syslog-ng/files/syslog-ng.conf
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/syslog-ng/files/syslog-ng.conf
@@ -1,4 +1,4 @@
-@version: 3.5
+@version: 3.8
#
# Syslog-ng configuration file, compatible with default Debian syslogd
# installation. Originally written by anonymous (I can't find his name)
@@ -52,7 +52,7 @@ destination d_newscrit { file("/var/log/news/news.crit"); };
destination d_newserr { file("/var/log/news/news.err"); };
destination d_newsnotice { file("/var/log/news/news.notice"); };
-# Some `catch-all' logfiles.
+# Some 'catch-all' logfiles.
#
destination d_debug { file("/var/log/debug"); };
destination d_error { file("/var/log/error"); };
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/syslog-ng/files/syslog-ng.service-the-syslog-ng-service.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/syslog-ng/files/syslog-ng.service-the-syslog-ng-service.patch
index f53c607b4..6b30c20c1 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/syslog-ng/files/syslog-ng.service-the-syslog-ng-service.patch
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/syslog-ng/files/syslog-ng.service-the-syslog-ng-service.patch
@@ -15,18 +15,17 @@ diff --git a/contrib/systemd/syslog-ng.service b/contrib/systemd/syslog-ng.servi
index fc16f8d..8e09deb 100644
--- a/contrib/systemd/syslog-ng.service
+++ b/contrib/systemd/syslog-ng.service
-@@ -3,9 +3,8 @@ Description=System Logger Daemon
- Documentation=man:syslog-ng(8)
+@@ -4,8 +4,8 @@ Description=System Logger Daemon
[Service]
--Type=notify
--ExecStart=/usr/sbin/syslog-ng -F
+ Type=notify
+-ExecStart=/usr/sbin/syslog-ng -F $SYSLOGNG_OPTS
-ExecReload=/bin/kill -HUP $MAINPID
-+ExecStart=@SBINDIR@/syslog-ng -F -p @LOCALSTATEDIR@/run/syslogd.pid
++ExecStart=@SBINDIR@/syslog-ng -F $SYSLOGNG_OPTS -p @LOCALSTATEDIR@/run/syslogd.pid
+ExecReload=@BASEBINDIR@/kill -HUP $MAINPID
+ EnvironmentFile=-/etc/default/syslog-ng
+ EnvironmentFile=-/etc/sysconfig/syslog-ng
StandardOutput=journal
- StandardError=journal
- Restart=on-failure
--
1.8.4.2
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/syslog-ng/syslog-ng.inc b/import-layers/meta-openembedded/meta-oe/recipes-support/syslog-ng/syslog-ng.inc
index 898e9c2a3..0977f7e86 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/syslog-ng/syslog-ng.inc
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/syslog-ng/syslog-ng.inc
@@ -10,19 +10,19 @@ ideal for firewalled environments. \
HOMEPAGE = "http://www.balabit.com/network-security/syslog-ng/opensource-logging-system"
LICENSE = "GPLv2 & LGPLv2.1"
-LIC_FILES_CHKSUM = "file://COPYING;md5=e0e8658d9be248f01b7933df24dc1408"
+LIC_FILES_CHKSUM = "file://COPYING;md5=24c0c5cb2c83d9f2ab725481e4df5240"
# util-linux added to get libuuid
-DEPENDS = "libpcre flex eventlog glib-2.0 util-linux"
+DEPENDS = "libpcre flex eventlog glib-2.0 openssl util-linux"
-SRC_URI = "http://www.balabit.com/downloads/files/syslog-ng/sources/${PV}/source/${BPN}_${PV}.tar.gz \
+SRC_URI = "https://github.com/balabit/syslog-ng/releases/download/${BP}/${BP}.tar.gz \
file://syslog-ng.conf \
file://initscript \
file://volatiles.03_syslog-ng \
file://configure.ac-add-option-enable-thread-tls-to-manage-.patch \
"
-inherit autotools systemd pkgconfig update-alternatives update-rc.d
+inherit autotools gettext systemd pkgconfig update-rc.d
EXTRA_OECONF = " \
--enable-dynamic-linking \
@@ -32,32 +32,38 @@ EXTRA_OECONF = " \
--sysconfdir=${sysconfdir}/${BPN} \
--with-module-dir=${libdir}/${BPN} \
--with-sysroot=${STAGING_DIR_HOST} \
- --with-libmongo-client=no --disable-mongodb \
+ --without-mongoc --disable-mongodb \
--with-librabbitmq-client=no \
+ --disable-python \
+ --disable-java --disable-java-modules \
${CONFIG_TLS} \
"
CONFIG_TLS = "--enable-thread-tls"
CONFIG_TLS_arm = "${@base_conditional( "DEBUG_BUILD", "1", " --disable-thread-tls", " --enable-thread-tls", d )}"
-PACKAGECONFIG ??= "openssl \
- ${@bb.utils.contains('DISTRO_FEATURES', 'ipv6', 'ipv6', '', d)} \
- ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd', '', d)} \
+PACKAGECONFIG ??= " \
+ ${@bb.utils.filter('DISTRO_FEATURES', 'ipv6 systemd', d)} \
"
-PACKAGECONFIG[openssl] = "--enable-ssl,--disable-ssl,openssl,"
PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6,,"
PACKAGECONFIG[systemd] = "--enable-systemd --with-systemdsystemunitdir=${systemd_unitdir}/system/,--disable-systemd --without-systemdsystemunitdir,systemd,"
PACKAGECONFIG[linux-caps] = "--enable-linux-caps,--disable-linux-caps,libcap,"
-PACKAGECONFIG[pcre] = "--enable-pcre,--disable-pcre,libpcre,"
PACKAGECONFIG[dbi] = "--enable-sql,--disable-sql,libdbi,"
PACKAGECONFIG[libnet] = "--enable-libnet --with-libnet=${STAGING_BINDIR_CROSS},--disable-libnet,libnet,"
+PACKAGECONFIG[http] = "--enable-http,--disable-http,curl,"
PACKAGECONFIG[smtp] = "--enable-smtp --with-libesmtp=${STAGING_LIBDIR},--disable-smtp,libesmtp,"
PACKAGECONFIG[json] = "--enable-json,--disable-json,json-c,"
PACKAGECONFIG[tcp-wrapper] = "--enable-tcp-wrapper,--disable-tcp-wrapper,tcp-wrappers,"
PACKAGECONFIG[geoip] = "--enable-geoip,--disable-geoip,geoip,"
+PACKAGECONFIG[native] = "--enable-native,--disable-native,,"
do_configure_prepend() {
- eval "${@bb.utils.contains('DISTRO_FEATURES', 'largefile', '', 'sed -i -e "s/-D_LARGEFILE_SOURCE//" -e "s/-D_FILE_OFFSET_BITS=64//" ${S}/configure.in', d)}"
+ olddir=$(pwd)
+ cd ${AUTOTOOLS_SCRIPT_PATH}
+
+ ACLOCAL="$ACLOCAL" autoreconf -Wcross --verbose --install --force ${EXTRA_AUTORECONF} -I ${S}/m4 ${ACLOCALEXTRAPATH} || die "extra autoreconf execution failed."
+
+ cd $olddir
}
do_install_prepend() {
@@ -70,7 +76,7 @@ do_install_append() {
install -d ${D}/${sysconfdir}/${BPN}
install ${WORKDIR}/syslog-ng.conf ${D}${sysconfdir}/${BPN}/${BPN}.conf
install -d ${D}/${sysconfdir}/init.d
- install -m 755 ${WORKDIR}/initscript ${D}/${sysconfdir}/init.d/syslog.${BPN}
+ install -m 755 ${WORKDIR}/initscript ${D}/${sysconfdir}/init.d/syslog
install -d ${D}/${sysconfdir}/default/volatiles/
install -m 755 ${WORKDIR}/volatiles.03_syslog-ng ${D}/${sysconfdir}/default/volatiles/03_syslog-ng
install -d ${D}/${localstatedir}/lib/${BPN}
@@ -86,7 +92,7 @@ PACKAGES =+ "${PN}-libs ${PN}-libs-dev ${PN}-libs-dbg"
FILES_${PN}-libs = "${libdir}/${BPN}/*.so ${libdir}/libsyslog-ng-*.so*"
FILES_${PN}-libs-dev = "${libdir}/${BPN}/lib*.la"
FILES_${PN}-libs-dbg = "${libdir}/${BPN}/.debug"
-FILES_${PN}-staticdev = "${libdir}/${BPN}/libtest/*.a"
+FILES_${PN}-staticdev += "${libdir}/${BPN}/libtest/*.a"
INSANE_SKIP_${PN}-libs = "dev-so"
RDEPENDS_${PN} += "${PN}-libs"
@@ -96,26 +102,12 @@ CONFFILES_${PN} = "${sysconfdir}/${BPN}.conf ${sysconfdir}/scl.conf"
# update-rc.d and update-alternatives is important
RDEPENDS_${PN} += " ${@base_conditional("ONLINE_PACKAGE_MANAGEMENT", "none", "", "update-rc.d", d)}"
+RCONFLICTS_${PN} = "busybox-syslog sysklogd rsyslog"
+
RPROVIDES_${PN} += "${PN}-systemd"
RREPLACES_${PN} += "${PN}-systemd"
RCONFLICTS_${PN} += "${PN}-systemd"
SYSTEMD_SERVICE_${PN} = "${BPN}.service"
-# no syslog-init for systemd
-python () {
- if bb.utils.contains('DISTRO_FEATURES', 'sysvinit', True, False, d):
- pn = d.getVar('PN', True)
- sysconfdir = d.getVar('sysconfdir', True)
- d.appendVar('ALTERNATIVE_%s' % (pn), ' syslog-init')
- d.setVarFlag('ALTERNATIVE_PRIORITY', 'syslog-init', '200')
- d.setVarFlag('ALTERNATIVE_LINK_NAME', 'syslog-init', '%s/init.d/syslog' % (sysconfdir))
-
- if bb.utils.contains('DISTRO_FEATURES', 'systemd', True, False, d):
- pn = d.getVar('PN', True)
- d.appendVar('ALTERNATIVE_%s' % (pn), ' syslog-service')
- d.setVarFlag('ALTERNATIVE_LINK_NAME', 'syslog-service', '%s/systemd/system/syslog.service' % (d.getVar('sysconfdir', True)))
- d.setVarFlag('ALTERNATIVE_TARGET', 'syslog-service', '%s/system/${BPN}.service' % (d.getVar('systemd_unitdir', True)))
-}
-
INITSCRIPT_NAME = "syslog"
INITSCRIPT_PARAMS = "start 20 2 3 4 5 . stop 90 0 1 6 ."
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/syslog-ng/syslog-ng_3.6.4.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/syslog-ng/syslog-ng_3.6.4.bb
deleted file mode 100644
index 73609af10..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/syslog-ng/syslog-ng_3.6.4.bb
+++ /dev/null
@@ -1,15 +0,0 @@
-require syslog-ng.inc
-
-SRC_URI += " \
- file://fix-a-memory-leak-in-log_driver_free.patch \
- file://fix-config-libnet.patch \
- file://fix-invalid-ownership.patch \
- file://Fix-the-memory-leak-problem-for-mutex.patch \
- file://Fix-the-memory-leak-problem-when-HAVE_ENVIRON-defined.patch \
- file://configure.patch \
- file://dbifix.patch \
- file://syslog-ng.service-the-syslog-ng-service.patch \
-"
-
-SRC_URI[md5sum] = "e9f401615e92e5eb27396c995c1446ba"
-SRC_URI[sha256sum] = "7be11df31ac7d716f1f952e22b5ae8e2049edd633a41b223776a853d9106f4e7"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/syslog-ng/syslog-ng_3.8.1.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/syslog-ng/syslog-ng_3.8.1.bb
new file mode 100644
index 000000000..91a0e4699
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/syslog-ng/syslog-ng_3.8.1.bb
@@ -0,0 +1,11 @@
+require syslog-ng.inc
+
+SRC_URI += " \
+ file://fix-config-libnet.patch \
+ file://fix-invalid-ownership.patch \
+ file://Fix-the-memory-leak-problem-when-HAVE_ENVIRON-defined.patch \
+ file://syslog-ng.service-the-syslog-ng-service.patch \
+"
+
+SRC_URI[md5sum] = "acf14563cf5ce435db8db35486ce66af"
+SRC_URI[sha256sum] = "84b081f6e5f98cbc52052e342bcfdc5de5fe0ebe9f5ec32fe9eaec5759224cc5"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/system-config-keyboard/system-config-keyboard_1.4.0.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/system-config-keyboard/system-config-keyboard_1.4.0.bb
index 078fcea5b..26b4412f5 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/system-config-keyboard/system-config-keyboard_1.4.0.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/system-config-keyboard/system-config-keyboard_1.4.0.bb
@@ -5,10 +5,9 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
SRC_URI = "https://fedorahosted.org/releases/s/y/${BPN}/${BP}.tar.bz2"
SRC_URI[md5sum] = "c267db0ee7a2131ba418399dc17f9e72"
SRC_URI[sha256sum] = "218c883e4e2bfcc82bfe07e785707b5c2ece28df772f2155fd044b9bb1614284"
-inherit python-dir
inherit python-dir gettext
-DEPENDS = "intltool-native"
+DEPENDS += "intltool-native gettext-native"
EXTRA_OEMAKE = " \
PYTHON='${STAGING_BINDIR_NATIVE}'/python-native/python \
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/system-setup-keyboard/system-setup-keyboard_0.8.8.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/system-setup-keyboard/system-setup-keyboard_0.8.8.bb
index fbbfa3dd8..0bd7af734 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/system-setup-keyboard/system-setup-keyboard_0.8.8.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/system-setup-keyboard/system-setup-keyboard_0.8.8.bb
@@ -29,3 +29,5 @@ do_install() {
}
FILES_${PN} += "${systemd_unitdir}/system/${BPN}.service"
+
+PNBLACKLIST[system-setup-keyboard] ?= "Depends on blacklisted system-config-keyboard-native - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/tbb/tbb_4.1.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/tbb/tbb.bb
index 09ed6ec52..35840fd0a 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/tbb/tbb_4.1.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/tbb/tbb.bb
@@ -4,23 +4,22 @@ DESCRIPTION = "Parallelism library for C++ - runtime files \
higher-level, task-based parallelism that abstracts platform details \
and threading mechanism for performance and scalability."
HOMEPAGE = "http://threadingbuildingblocks.org/"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=2c7f2caf277a3933e3acdf7f89d54cc1"
-PRDATE = "20130314"
-PR = "r${PRDATE}"
-
-SRC_URI = "http://threadingbuildingblocks.org/sites/default/files/software_releases/source/tbb41_${PRDATE}oss_src.tgz \
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=86d3f3a95c324c9479bd8986968f4327"
+PRDATE = "20170118"
+PV = "${PRDATE}"
+SRC_URI = "https://www.threadingbuildingblocks.org/sites/default/files/software_releases/source/tbb2017_${PRDATE}oss_src.tgz \
file://cross-compile.patch \
- file://allow-to-build-for-older-arm-cores.patch \
file://tbb.pc"
+SRC_URI[md5sum] = "26baa6fbcc8f03ee45c0641b91d9588a"
+SRC_URI[sha256sum] = "48bb526287fa8b4e7d1e1b2ba9e5fb9c3e372b497772c06ef9ccd7f93f344e74"
-S = "${WORKDIR}/tbb41_${PRDATE}oss/"
-
-SRC_URI[md5sum] = "ed4af7ccfa122f16cf9920b241633a3a"
-SRC_URI[sha256sum] = "32fd5979971b772caa96d40646cee585ed0070516ba2dbbcb1f9b6033d08a92d"
+S = "${WORKDIR}/tbb2017_${PRDATE}oss/"
+COMPILER ?= "gcc"
+COMPILER_toolchain-clang = "clang"
do_compile() {
- oe_runmake compiler=gcc arch=${HOST_ARCH} runtime=cc4
+ oe_runmake compiler=${COMPILER} arch=${HOST_ARCH} runtime=cc4
}
do_install() {
@@ -38,3 +37,4 @@ do_install() {
# ...
# | make[1]: *** [concurrent_queue.o] Error 1
ARM_INSTRUCTION_SET = "arm"
+SECURITY_CFLAGS_append = " -fPIC"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/tbb/tbb/allow-to-build-for-older-arm-cores.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/tbb/tbb/allow-to-build-for-older-arm-cores.patch
deleted file mode 100644
index cd2ec9499..000000000
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/tbb/tbb/allow-to-build-for-older-arm-cores.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From: Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>
-Description: Allow to build TBB for ARM cores older than ARMv7a
-
-| ../../include/tbb/machine/gcc_armv7.h:39:2: error: #error Threading
-Building Blocks ARM port requires an ARMv7-a architecture.
-| make[1]: *** [concurrent_hash_map.o] Error 1
-
-https://bugs.launchpad.net/linaro-oe/+bug/1167144
-
-Upstream-status: pending
-
----
- include/tbb/tbb_machine.h | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
---- tbb41_20130314oss.orig/include/tbb/tbb_machine.h
-+++ tbb41_20130314oss/include/tbb/tbb_machine.h
-@@ -237,11 +237,11 @@ template<> struct atomic_selector<8> {
- #include "machine/linux_intel64.h"
- #elif __ia64__
- #include "machine/linux_ia64.h"
- #elif __powerpc__
- #include "machine/mac_ppc.h"
-- #elif __arm__
-+ #elif __ARM_ARCH_7A__
- #include "machine/gcc_armv7.h"
- #elif __TBB_GCC_BUILTIN_ATOMICS_PRESENT
- #include "machine/gcc_generic.h"
- #endif
- #include "machine/linux_common.h"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/tbb/tbb/cross-compile.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/tbb/tbb/cross-compile.patch
index b970a374e..d54b307ee 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/tbb/tbb/cross-compile.patch
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/tbb/tbb/cross-compile.patch
@@ -5,14 +5,14 @@ Upstream-Status: unsuitable
build/linux.gcc.inc | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
---- tbb41_20121003oss.orig/build/linux.gcc.inc
-+++ tbb41_20121003oss/build/linux.gcc.inc
-@@ -40,12 +40,13 @@ DYLIB_KEY = -shared
+Index: tbb2017_20170118oss/build/linux.gcc.inc
+===================================================================
+--- tbb2017_20170118oss.orig/build/linux.gcc.inc
++++ tbb2017_20170118oss/build/linux.gcc.inc
+@@ -32,8 +32,9 @@ DYLIB_KEY = -shared
EXPORT_KEY = -Wl,--version-script,
LIBDL = -ldl
- TBB_NOSTRICT = 1
-
-CPLUS = g++
-CONLY = gcc
+CPLUS = $(CXX)
@@ -20,6 +20,20 @@ Upstream-Status: unsuitable
+CPLUS_FLAGS = $(CXXFLAGS)
LIB_LINK_FLAGS = $(DYLIB_KEY) -Wl,-soname=$(BUILDING_LIBRARY)
LIBS += -lpthread -lrt
- LINK_FLAGS = -Wl,-rpath-link=.
- C_FLAGS = $(CPLUS_FLAGS)
- # gcc 4.4 and higher support -std=c++0x
+ LINK_FLAGS = -Wl,-rpath-link=. -rdynamic
+Index: tbb2017_20170118oss/build/linux.clang.inc
+===================================================================
+--- tbb2017_20170118oss.orig/build/linux.clang.inc
++++ tbb2017_20170118oss/build/linux.clang.inc
+@@ -31,8 +31,9 @@ DYLIB_KEY = -shared
+ EXPORT_KEY = -Wl,--version-script,
+ LIBDL = -ldl
+
+-CPLUS = clang++
+-CONLY = clang
++CPLUS = $(CXX)
++CONLY = $(CC)
++CPLUS_FLAGS = $(CXXFLAGS)
+ LIB_LINK_FLAGS = $(DYLIB_KEY) -Wl,-soname=$(BUILDING_LIBRARY)
+ LIBS += -lpthread -lrt
+ LINK_FLAGS = -Wl,-rpath-link=. -rdynamic
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/udisks/udisks/0001-Make-udev-rules-directory-configurable.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/udisks/udisks/0001-Make-udev-rules-directory-configurable.patch
new file mode 100644
index 000000000..3cc040075
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/udisks/udisks/0001-Make-udev-rules-directory-configurable.patch
@@ -0,0 +1,91 @@
+From 32278297170ffb49116b5789e4a0588b99d02bd0 Mon Sep 17 00:00:00 2001
+From: Amarnath Valluri <amarnath.valluri@intel.com>
+Date: Thu, 9 Feb 2017 11:02:53 +0200
+Subject: [PATCH] Make udev rules directory configurable.
+
+udev rules directory can be configurable via undevrulesdir variable. And use
+libdir, sbindir for installing librares and binaries.
+
+Upstream-Status: Inappropriate[Embedded specific]
+
+Signed-off-by: Amarnath Valluri <amarnath.valluri@intel.com>
+---
+ configure.ac | 14 +++-----------
+ data/Makefile.am | 1 -
+ src/probers/Makefile.am | 2 +-
+ tools/Makefile.am | 2 +-
+ 4 files changed, 5 insertions(+), 14 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 8c4e4c2..a143397 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -227,15 +227,8 @@ if test "x$GCC" = "xyes"; then
+ LDFLAGS="-Wl,--as-needed $LDFLAGS"
+ fi
+
+-if test "$prefix" = "/usr" -o "$prefix" = "/usr/local" ; then
+- slashlibdir=/lib
+- slashsbindir=/sbin
+-else
+- slashlibdir=$prefix/lib
+- slashsbindir=$prefix/sbin
+-fi
+-AC_SUBST(slashlibdir)
+-AC_SUBST(slashsbindir)
++udevrulesdir=/lib/udev/udev.d
++AC_SUBST(udevrulesdir)
+
+ # *************
+ # Remote Access
+@@ -299,8 +292,7 @@ echo "
+ sysconfdir: ${sysconfdir}
+ localstatedir: ${localstatedir}
+ docdir: ${docdir}
+- slashlibdir: ${slashlibdir}
+- slashsbindir: ${slashsbindir}
++ udevrulesdir: ${udevrulesdir}
+ systemdsystemunitdir: ${systemdsystemunitdir}
+
+ compiler: ${CC}
+diff --git a/data/Makefile.am b/data/Makefile.am
+index 411ea0f..4834960 100644
+--- a/data/Makefile.am
++++ b/data/Makefile.am
+@@ -34,7 +34,6 @@ $(systemdservice_DATA): $(systemdservice_in_files) Makefile
+ @sed -e "s|\@libexecdir\@|$(prefix)/lib/udisks|" $< > $@
+ endif
+
+-udevrulesdir = $(slashlibdir)/udev/rules.d
+ udevrules_DATA = 80-udisks.rules
+
+ pkgconfigdir = $(datadir)/pkgconfig
+diff --git a/src/probers/Makefile.am b/src/probers/Makefile.am
+index 01c693b..6a0361a 100644
+--- a/src/probers/Makefile.am
++++ b/src/probers/Makefile.am
+@@ -20,7 +20,7 @@ INCLUDES = \
+ # TODO: ideally move most of this to udev and/or util-linux
+ #
+
+-udevhelperdir = $(slashlibdir)/udev
++udevhelperdir = $(libdir)/udev
+ udevhelper_PROGRAMS = udisks-part-id \
+ udisks-probe-sas-expander \
+ $(NULL)
+diff --git a/tools/Makefile.am b/tools/Makefile.am
+index 18325f7..0aaec11 100644
+--- a/tools/Makefile.am
++++ b/tools/Makefile.am
+@@ -54,7 +54,7 @@ udisks_LDADD = \
+ $(DBUS_GLIB_LIBS) \
+ $(POLKIT_DBUS_LIBS)
+
+-slashsbin_PROGRAMS = umount.udisks
++sbin_PROGRAMS = umount.udisks
+
+ umount_udisks_SOURCES = umount-udisks.c
+ umount_udisks_LDADD = $(DBUS_GLIB_LIBS) $(POLKIT_DBUS_LIBS)
+--
+2.7.4
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/udisks/udisks2_2.1.7.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/udisks/udisks2_2.1.7.bb
index fbf6701ac..c784fd279 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/udisks/udisks2_2.1.7.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/udisks/udisks2_2.1.7.bb
@@ -2,8 +2,8 @@ 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 intltool-native gnome-common-native"
-DEPENDS += "${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd', '', d)}"
+DEPENDS = "acl libatasmart polkit libgudev dbus-glib glib-2.0 intltool-native gnome-common-native libxslt-native"
+DEPENDS += "${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)}"
RDEPENDS_${PN} = "acl"
@@ -13,6 +13,8 @@ SRC_URI = "http://udisks.freedesktop.org/releases/udisks-${PV}.tar.bz2 \
SRC_URI[md5sum] = "8bccd36573b75286538bd5bd2c424f45"
SRC_URI[sha256sum] = "abae2bb3bdc691ca13c1e4c244630b8c881c4f3b35c207299f1b39b7bec83785"
+CVE_PRODUCT = "udisks"
+
inherit autotools systemd gtk-doc gobject-introspection
S = "${WORKDIR}/udisks-${PV}"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/udisks/udisks_1.0.5.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/udisks/udisks_1.0.5.bb
index eec69333d..ffe2c2674 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/udisks/udisks_1.0.5.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/udisks/udisks_1.0.5.bb
@@ -2,16 +2,21 @@ DESCRIPTION = "A storage daemon that implements well-defined D-Bus interfaces th
LICENSE = "GPLv2+"
LIC_FILES_CHKSUM = "file://COPYING;md5=73d83aebe7e4b62346afde80e0e94273"
-DEPENDS = "libatasmart sg3-utils polkit libgudev dbus-glib glib-2.0 intltool-native lvm2"
+DEPENDS = "libatasmart sg3-utils polkit libgudev dbus-glib glib-2.0 intltool-native lvm2 \
+ dbus-glib-native \
+"
# optional dependencies: device-mapper parted
-DEPENDS += "${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd', '', d)}"
+DEPENDS += "${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)} \
+ dbus-glib-native \
+"
SRC_URI = " \
http://hal.freedesktop.org/releases/${BPN}-${PV}.tar.gz;name=${BPN} \
file://optional-depends.patch \
file://0001-fix-build-with-newer-glibc-versions.patch \
file://udisks-1.0.5-fix-service-file.patch \
+ file://0001-Make-udev-rules-directory-configurable.patch \
"
SRC_URI[udisks.md5sum] = "70d48dcfe523a74cd7c7fbbc2847fcdd"
@@ -22,7 +27,8 @@ inherit autotools-brokensep systemd gtk-doc
PACKAGECONFIG ??= ""
PACKAGECONFIG[parted] = "--enable-parted,--disable-parted,parted"
-EXTRA_OECONF = "--disable-man-pages"
+EXTRA_OECONF = "--disable-man-pages --libdir=${base_libdir} --sbindir=${base_sbindir}"
+EXTRA_OEMAKE = "udevrulesdir=${nonarch_base_libdir}/udev/rules.d/"
FILES_${PN} += "${libdir}/polkit-1/extensions/*.so \
${datadir}/dbus-1/ \
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/uim/uim/0001-Add-support-for-aarch64.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/uim/uim/0001-Add-support-for-aarch64.patch
new file mode 100644
index 000000000..4b1249436
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/uim/uim/0001-Add-support-for-aarch64.patch
@@ -0,0 +1,82 @@
+From 24fd52cc45f7b5ff45afe072f5fbe66485df8c8e Mon Sep 17 00:00:00 2001
+From: Andreas Schwab <schwab@suse.de>
+Date: Wed, 29 Oct 2014 14:18:28 +0100
+Subject: [PATCH] Add support for aarch64
+
+* include/private/gcconfig.h: Add support for aarch64.
+---
+ sigscheme/libgcroots/include/private/gcconfig.h | 37 +++++++++++++++++++++++++
+ 1 file changed, 37 insertions(+)
+
+diff --git a/sigscheme/libgcroots/include/private/gcconfig.h b/sigscheme/libgcroots/include/private/gcconfig.h
+index 4d42b03..0f13db6 100644
+--- a/sigscheme/libgcroots/include/private/gcconfig.h
++++ b/sigscheme/libgcroots/include/private/gcconfig.h
+@@ -62,6 +62,13 @@
+ # endif
+
+ /* Determine the machine type: */
++# if defined(__aarch64__)
++# define AARCH64
++# if !defined(LINUX)
++# define NOSYS
++# define mach_type_known
++# endif
++# endif
+ # if defined(__arm__) || defined(__thumb__)
+ # define ARM32
+ # if !defined(LINUX) && !defined(NETBSD)
+@@ -231,6 +238,10 @@
+ # define IA64
+ # define mach_type_known
+ # endif
++# if defined(LINUX) && defined(__aarch64__)
++# define AARCH64
++# define mach_type_known
++# endif
+ # if defined(LINUX) && defined(__arm__)
+ # define ARM32
+ # define mach_type_known
+@@ -504,6 +515,7 @@
+ /* running Amdahl UTS4 */
+ /* S390 ==> 390-like machine */
+ /* running LINUX */
++ /* AARCH64 ==> ARM AArch64 */
+ /* ARM32 ==> Intel StrongARM */
+ /* IA64 ==> Intel IPF */
+ /* (e.g. Itanium) */
+@@ -1724,6 +1736,31 @@
+ # endif
+ # endif
+
++# ifdef AARCH64
++# define CPP_WORDSZ 64
++# define MACH_TYPE "AARCH64"
++# define ALIGNMENT 8
++# ifndef HBLKSIZE
++# define HBLKSIZE 4096
++# endif
++# ifdef LINUX
++# define OS_TYPE "LINUX"
++# define LINUX_STACKBOTTOM
++# define DYNAMIC_LOADING
++ extern int __data_start[];
++# define DATASTART ((ptr_t)__data_start)
++ extern char _end[];
++# define DATAEND ((ptr_t)(&_end))
++# endif
++# ifdef NOSYS
++ /* __data_start is usually defined in the target linker script. */
++ extern int __data_start[];
++# define DATASTART ((ptr_t)__data_start)
++ extern void *__stack_base__;
++# define STACKBOTTOM ((ptr_t)__stack_base__)
++# endif
++# endif
++
+ # ifdef ARM32
+ # define CPP_WORDSZ 32
+ # define MACH_TYPE "ARM32"
+--
+2.13.2
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/uim/uim_1.8.6.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/uim/uim_1.8.6.bb
index 76a41252d..909756ad7 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/uim/uim_1.8.6.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/uim/uim_1.8.6.bb
@@ -8,6 +8,7 @@ SRC_URI = "http://uim.googlecode.com/files/uim-${PV}.tar.bz2"
SRC_URI_append_class-target = " file://uim-module-manager.patch \
file://0001-fix-bug-for-cross-compile.patch \
+ file://0001-Add-support-for-aarch64.patch \
"
SRC_URI[md5sum] = "ecea4c597bab1fd4ba98ea84edcece59"
SRC_URI[sha256sum] = "7b1ea803c73f3478917166f04f67cce6e45ad7ea5ab6df99b948c17eb1cb235f"
@@ -42,7 +43,7 @@ do_install_append() {
rm -rf ${D}/${datadir}/applications
}
-PACKAGES += "uim-xim uim-utils uim-skk uim-gtk2.0 uim-gtk3 uim-fep uim-common uim-anthy libuim0 libuim-dev"
+PACKAGES =+ "uim-xim uim-utils uim-skk uim-gtk2.0 uim-gtk3 uim-fep uim-anthy uim-common libuim0 libuim-dev"
FILES_${PN} = "${bindir}/uim-help \
${libdir}/uim/plugin/libuim-* \
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/upower/upower_0.99.4.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/upower/upower_0.99.4.bb
index 44a04deaa..3651e1885 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/upower/upower_0.99.4.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/upower/upower_0.99.4.bb
@@ -10,7 +10,7 @@ SRC_URI[sha256sum] = "9ca325a6ccef505529b268ebbbd9becd0ce65a65f6ac7ee31e2e5b1764
inherit autotools pkgconfig gettext gobject-introspection systemd
-PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd', '', d)}"
+PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)}"
PACKAGECONFIG[idevice] = "--with-idevice,--without-idevice,libimobiledevice libplist"
PACKAGECONFIG[systemd] = "--with-systemdutildir=${systemd_unitdir} --with-systemdsystemunitdir=${systemd_system_unitdir}, \
--without-systemdutildir --without-systemdsystemunitdir,systemd"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/usb-modeswitch/usb-modeswitch-data_20140529.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/usb-modeswitch/usb-modeswitch-data_20170205.bb
index a265411c1..eeed5e275 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/usb-modeswitch/usb-modeswitch-data_20140529.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/usb-modeswitch/usb-modeswitch-data_20170205.bb
@@ -4,14 +4,16 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
inherit allarch
+DEPENDS += "tcl-native"
+
SRC_URI = "http://www.draisberghof.de/usb_modeswitch/${BP}.tar.bz2"
-SRC_URI[md5sum] = "dff94177781298aaf0b3c2a3c3dea6b2"
-SRC_URI[sha256sum] = "53889157937109e04dafe897c098ec94f3f44f9c0c83fc6ec8417aa9a587e536"
+SRC_URI[md5sum] = "0cc107cd0c4c83df0d9400c999e21dfd"
+SRC_URI[sha256sum] = "e2dcfd9d28928d8d8f03381571a23442b3c50d48d343bc40a1a07d01662738d1"
do_install() {
oe_runmake install DESTDIR=${D}
}
-RDEPENDS_${PN} = "usb-modeswitch (>= 2.2.0)"
+RDEPENDS_${PN} = "usb-modeswitch (>= 2.4.0)"
FILES_${PN} += "${base_libdir}/udev/rules.d/ \
${datadir}/usb_modeswitch"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/usb-modeswitch/usb-modeswitch_2.2.0.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/usb-modeswitch/usb-modeswitch_2.5.0.bb
index 425f66b91..ff439f321 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/usb-modeswitch/usb-modeswitch_2.2.0.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/usb-modeswitch/usb-modeswitch_2.5.0.bb
@@ -5,8 +5,10 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
DEPENDS = "libusb1"
SRC_URI = "http://www.draisberghof.de/usb_modeswitch/${BP}.tar.bz2"
-SRC_URI[md5sum] = "f323fe700edd6ea404c40934ddf32b22"
-SRC_URI[sha256sum] = "2752103de171ed5f6c8d6a6e3e73e16c9ee3e8e394dd39c5991f7680eb908a3a"
+SRC_URI[md5sum] = "38ad5c9d70e06227a00361bdc2b1e568"
+SRC_URI[sha256sum] = "31c0be280d49a99ec3dc0be3325bef320d9c04b50714ef0ce1e36a614d687633"
+
+inherit pkgconfig
EXTRA_OEMAKE = "TCL=${bindir}/tclsh"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/utouch/files/0001-include-sys-stat.h-for-fixing-build-issue-on-musl.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/utouch/files/0001-include-sys-stat.h-for-fixing-build-issue-on-musl.patch
new file mode 100644
index 000000000..f3c8eeb41
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/utouch/files/0001-include-sys-stat.h-for-fixing-build-issue-on-musl.patch
@@ -0,0 +1,29 @@
+From 08b17ec505e09e8f5a4d73ffc3aa61561ec2e0da Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Thu, 30 Mar 2017 00:27:54 -0700
+Subject: [PATCH] include sys/stat.h for fixing build issue on musl
+
+error: field has incomplete
+ type 'struct stat'
+ struct stat fs;
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ tools/utouch-frame-test-mtdev.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/tools/utouch-frame-test-mtdev.c b/tools/utouch-frame-test-mtdev.c
+index 5253320..2032af4 100644
+--- a/tools/utouch-frame-test-mtdev.c
++++ b/tools/utouch-frame-test-mtdev.c
+@@ -30,6 +30,7 @@
+ #include <stdio.h>
+ #include <unistd.h>
+ #include <fcntl.h>
++#include <sys/stat.h>
+ #include "common-defs.h"
+
+ struct frame_test {
+--
+2.12.1
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/utouch/utouch-frame_git.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/utouch/utouch-frame_git.bb
index 6ec566ddb..39d46af8e 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/utouch/utouch-frame_git.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/utouch/utouch-frame_git.bb
@@ -10,7 +10,9 @@ DEPENDS += "mtdev utouch-evemu"
inherit autotools pkgconfig
SRC_URI = "git://bitmath.org/git/frame.git;protocol=http \
- file://remove-man-page-creation.patch"
+ file://remove-man-page-creation.patch \
+ file://0001-include-sys-stat.h-for-fixing-build-issue-on-musl.patch \
+ "
SRCREV = "95363d5a1f7394d71144bf3b408ef4e6db4350fc"
PV = "1.1.2+git${SRCPV}"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/vala-terminal/vala-terminal_git.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/vala-terminal/vala-terminal_git.bb
index ef0cfaf00..1219cb8ed 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/vala-terminal/vala-terminal_git.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/vala-terminal/vala-terminal_git.bb
@@ -8,7 +8,7 @@ PV = "1.3+gitr${SRCPV}"
PE = "1"
PR = "r1"
-PNBLACKLIST[vala-terminal] ?= "BROKEN: Doesn't work with B!=S, touch: cannot touch `src/.stamp': No such file or directory"
+PNBLACKLIST[vala-terminal] ?= "BROKEN: Doesn't work with B!=S, touch: cannot touch `src/.stamp': No such file or directory - the recipe will be removed on 2017-09-01 unless the issue is fixed"
inherit autotools perlnative vala
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_4.3.36.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_4.3.36.bb
index f8a24a508..c7bae1c08 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_4.3.36.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_4.3.36.bb
@@ -41,6 +41,10 @@ do_export_sources() {
# compile and install mount utility
do_compile_append() {
oe_runmake 'LD=${CC}' 'LDFLAGS=${LDFLAGS}' -C ${S}/utils
+ if ! [ -e vboxguest.ko -a -e vboxsf.ko -a -e vboxvideo.ko ] ; then
+ echo "ERROR: One of vbox*.ko modules wasn't built"
+ exit 1
+ fi
}
module_do_install() {
@@ -65,4 +69,4 @@ FILES_${PN} = "${base_sbindir}"
KERNEL_MODULE_AUTOLOAD += "vboxguest vboxsf vboxvideo"
# http://errors.yoctoproject.org/Errors/Details/83333/
-PNBLACKLIST[vboxguestdrivers] ?= "BROKEN: not compatible with default kernel version 4.8"
+PNBLACKLIST[vboxguestdrivers] ?= "BROKEN: not compatible with default kernel version 4.8 - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_5.1.6.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_5.1.18.bb
index 866526717..4085b9fc7 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_5.1.6.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_5.1.18.bb
@@ -14,8 +14,8 @@ VBOX_NAME = "VirtualBox-${PV}"
SRC_URI = "http://download.virtualbox.org/virtualbox/${PV}/${VBOX_NAME}.tar.bz2 \
file://Makefile.utils \
"
-SRC_URI[md5sum] = "8c2331a718cfc038963c1214c2ba9811"
-SRC_URI[sha256sum] = "2e0112b0d85841587b8f212e6ba8f6c35b31e1cce6b6999497dc917cd37e6911"
+SRC_URI[md5sum] = "1a7db64cd69ba6d39574fb333e031251"
+SRC_URI[sha256sum] = "7ed0959bbbd02826b86b3d5dc8348931ddfab267c31f8ed36ee53c12f5522cd9"
S = "${WORKDIR}/vbox_module"
@@ -41,6 +41,10 @@ do_export_sources() {
# compile and install mount utility
do_compile_append() {
oe_runmake 'LD=${CC}' 'LDFLAGS=${LDFLAGS}' -C ${S}/utils
+ if ! [ -e vboxguest.ko -a -e vboxsf.ko -a -e vboxvideo.ko ] ; then
+ echo "ERROR: One of vbox*.ko modules wasn't built"
+ exit 1
+ fi
}
module_do_install() {
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/vim/files/disable_acl_header_check.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/vim/files/disable_acl_header_check.patch
index 8f824e78b..65e5f58c6 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/vim/files/disable_acl_header_check.patch
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/vim/files/disable_acl_header_check.patch
@@ -4,10 +4,10 @@ Don't check 'sys/acl.h' if acl support disabled for vim/vim-tiny.
Signed-off-by: Wenzong Fan <wenzong.fan@windriver.com>
================================================
-diff --git a/src/configure.in b/src/configure.in
+diff --git a/src/configure.ac b/src/configure.ac
index fb965e5..d734064 100644
---- a/src/configure.in
-+++ b/src/configure.in
+--- a/src/configure.ac
++++ b/src/configure.ac
@@ -2511,7 +2511,7 @@ AC_CHECK_HEADERS(stdarg.h stdint.h stdlib.h string.h \
sys/systeminfo.h locale.h sys/stream.h termios.h \
libc.h sys/statfs.h poll.h sys/poll.h pwd.h \
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/vim/files/vim-add-knob-whether-elf.h-are-checked.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/vim/files/vim-add-knob-whether-elf.h-are-checked.patch
index 693d130e4..6c620f9f2 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/vim/files/vim-add-knob-whether-elf.h-are-checked.patch
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/vim/files/vim-add-knob-whether-elf.h-are-checked.patch
@@ -7,13 +7,13 @@ Upstream-status: Pending
Signed-off-by: Chong Lu <Chong.Lu@windriver.com>
---
- src/configure.in | 7 +++++++
+ src/configure.ac | 7 +++++++
1 file changed, 7 insertions(+)
-diff --git a/src/configure.in b/src/configure.in
+diff --git a/src/configure.ac b/src/configure.ac
index d734064..f504fa6 100644
---- a/src/configure.in
-+++ b/src/configure.in
+--- a/src/configure.ac
++++ b/src/configure.ac
@@ -2483,11 +2483,18 @@ AC_TRY_COMPILE([#include <stdio.h>], [int x __attribute__((unused));],
AC_MSG_RESULT(no))
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/vim/vim-tiny_8.0.0022.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/vim/vim-tiny_8.0.0427.bb
index bb8f2b7ea..bb8f2b7ea 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/vim/vim-tiny_8.0.0022.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/vim/vim-tiny_8.0.0427.bb
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/vim/vim_8.0.0022.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/vim/vim_8.0.0427.bb
index 112ae80a2..1f86fcd2f 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/vim/vim_8.0.0022.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/vim/vim_8.0.0427.bb
@@ -10,11 +10,11 @@ SRC_URI = "git://github.com/vim/vim.git \
file://disable_acl_header_check.patch;patchdir=.. \
file://vim-add-knob-whether-elf.h-are-checked.patch;patchdir=.. \
"
-SRCREV = "ec68a99464055029c01082762517e97245ddae0c"
+SRCREV = "ad4187e6fc9c8e1083a172852d958a70a689a75c"
S = "${WORKDIR}/git/src"
-VIMDIR = "vim${@d.getVar('PV',1).split('.')[0]}${@d.getVar('PV',1).split('.')[1]}"
+VIMDIR = "vim${@d.getVar('PV').split('.')[0]}${@d.getVar('PV').split('.')[1]}"
inherit autotools update-alternatives
inherit autotools-brokensep
@@ -32,8 +32,7 @@ do_configure () {
#Available PACKAGECONFIG options are gtkgui, acl, x11, tiny
PACKAGECONFIG ??= ""
-PACKAGECONFIG += "${@bb.utils.contains('DISTRO_FEATURES', 'acl', 'acl', '', d)}"
-PACKAGECONFIG += "${@bb.utils.contains('DISTRO_FEATURES', 'selinux', 'selinux', '', d)}"
+PACKAGECONFIG += "${@bb.utils.filter('DISTRO_FEATURES', 'acl selinux', d)}"
PACKAGECONFIG[gtkgui] = "--enable-gtk2-test --enable-gui=gtk2,--enable-gui=no,gtk+,"
PACKAGECONFIG[acl] = "--enable-acl,--disable-acl,acl,"
@@ -100,12 +99,14 @@ FILES_${PN}-common = " \
${datadir}/icons \
"
-RDEPENDS_${PN} = "ncurses-terminfo-base"
+RDEPENDS_${BPN} = "ncurses-terminfo-base"
# Recommend that runtime data is installed along with vim
-RRECOMMENDS_${PN} = "${PN}-syntax ${PN}-help ${PN}-tutor ${PN}-vimrc ${PN}-common"
+RRECOMMENDS_${BPN} = "${PN}-syntax ${PN}-help ${PN}-tutor ${PN}-vimrc ${PN}-common"
ALTERNATIVE_${PN} = "vi vim"
ALTERNATIVE_TARGET = "${bindir}/${BPN}.${BPN}"
ALTERNATIVE_LINK_NAME[vi] = "${base_bindir}/vi"
ALTERNATIVE_LINK_NAME[vim] = "${bindir}/vim"
ALTERNATIVE_PRIORITY = "100"
+
+BBCLASSEXTEND = "native"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/wmiconfig/wmiconfig/0001-makefile-Pass-CFLAGS-to-compile.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/wmiconfig/wmiconfig/0001-makefile-Pass-CFLAGS-to-compile.patch
new file mode 100644
index 000000000..90eff5bb0
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/wmiconfig/wmiconfig/0001-makefile-Pass-CFLAGS-to-compile.patch
@@ -0,0 +1,26 @@
+From 0378cbb323c662a565f7f3de2dee3d8a646e7bd1 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Tue, 27 Jun 2017 09:32:42 -0700
+Subject: [PATCH 1/2] makefile: Pass CFLAGS to compile
+
+Set CC if not already set
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ host/tools/wmiconfig/Makefile | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/host/tools/wmiconfig/Makefile b/host/tools/wmiconfig/Makefile
+index c6738c5..3253a7e 100644
+--- a/Makefile
++++ b/Makefile
+@@ -1,4 +1,4 @@
+-CC :=$(ATH_CROSS_COMPILE_TYPE)gcc
++CC ?= $(ATH_CROSS_COMPILE_TYPE)gcc
+
+ all:
+- $(CC) -Wall -DUSER_KEYS -g $(LDFLAGS) -I../../include -I../../../include -I../../wlan/include -I../../os/linux/include wmiconfig.c -o wmiconfig
++ $(CC) -Wall -DUSER_KEYS -g $(CFLAGS) $(LDFLAGS) -I../../include -I../../../include -I../../wlan/include -I../../os/linux/include wmiconfig.c -o wmiconfig
+--
+2.13.2
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/wmiconfig/wmiconfig/0002-fix-err-API-to-have-format-string.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/wmiconfig/wmiconfig/0002-fix-err-API-to-have-format-string.patch
new file mode 100644
index 000000000..f67f784c1
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/wmiconfig/wmiconfig/0002-fix-err-API-to-have-format-string.patch
@@ -0,0 +1,656 @@
+From 909ebdde4ee2233d65de8fa01fde8e9a3bec12b7 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Tue, 27 Jun 2017 09:33:26 -0700
+Subject: [PATCH 2/2] fix err() API to have format string
+
+Fixes errors with hardening flags
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ host/tools/wmiconfig/wmiconfig.c | 148 +++++++++++++++++++--------------------
+ 1 file changed, 74 insertions(+), 74 deletions(-)
+
+diff --git a/host/tools/wmiconfig/wmiconfig.c b/host/tools/wmiconfig/wmiconfig.c
+index 21c9dcd..a6ec481 100644
+--- a/wmiconfig.c
++++ b/wmiconfig.c
+@@ -483,7 +483,7 @@ main (int argc, char **argv)
+ strcpy(ifname, ethIf);
+ s = socket(AF_INET, SOCK_DGRAM, 0);
+ if (s < 0) {
+- err(1, "socket");
++ err(1, "%s", "socket");
+ }
+
+ while (1) {
+@@ -1506,28 +1506,28 @@ main (int argc, char **argv)
+ ifr.ifr_data = (void *)filterCmd;
+ if (ioctl(s, AR6000_IOCTL_WMI_SETBSSFILTER, &ifr) < 0)
+ {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ break;
+ case WMI_SET_POWER_MODE:
+ ifr.ifr_data = (void *)pwrCmd;
+ if (ioctl(s, AR6000_IOCTL_WMI_SETPWR, &ifr) < 0)
+ {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ break;
+ case WMI_SET_PM_PARAMS:
+ ifr.ifr_data = (void *)pmParamCmd;
+ if (ioctl(s, AR6000_IOCTL_WMI_SET_PMPARAMS, &ifr) < 0)
+ {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ break;
+ case WMI_SET_IBSS_PM_CAPS:
+ ifr.ifr_data = (void *)adhocPmCmd;
+ if (ioctl(s, AR6000_IOCTL_WMI_SET_IBSS_PM_CAPS, &ifr) < 0)
+ {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ break;
+ case WMI_SET_ERROR_DETECTION:
+@@ -1535,7 +1535,7 @@ main (int argc, char **argv)
+ ifr.ifr_data = buf;
+ if (ioctl(s, AR6000_IOCTL_EXTENDED, &ifr) < 0)
+ {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ break;
+ case WMI_GET_HB_CHALLENGE_RESP:
+@@ -1543,7 +1543,7 @@ main (int argc, char **argv)
+ ifr.ifr_data = buf;
+ if (ioctl(s, AR6000_IOCTL_EXTENDED, &ifr) < 0)
+ {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ break;
+ #ifdef USER_KEYS
+@@ -1554,7 +1554,7 @@ main (int argc, char **argv)
+
+ if (ioctl(s, AR6000_IOCTL_EXTENDED, &ifr) < 0)
+ {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+
+ break;
+@@ -1575,7 +1575,7 @@ main (int argc, char **argv)
+ ifr.ifr_data = (void *)sParamCmd;
+ if (ioctl(s, AR6000_IOCTL_WMI_SETSCAN, &ifr) < 0)
+ {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ break;
+ case WMI_GET_VERSION:
+@@ -1586,7 +1586,7 @@ main (int argc, char **argv)
+ ifr.ifr_data = (void *)revinfo;
+ if (ioctl(s, AR6000_IOCTL_WMI_GETREV, &ifr) < 0)
+ {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ printf("Host Rev = 0x%x(%u.%u.%u.%u), Target Rev = 0x%x(%u.%u.%u.%u)\n",
+ revinfo->host_ver,
+@@ -1606,14 +1606,14 @@ main (int argc, char **argv)
+ ifr.ifr_data = (void *)listenCmd;
+ if (ioctl(s, AR6000_IOCTL_WMI_SETLISTENINT, &ifr) < 0)
+ {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ break;
+ case WMI_SET_BMISS_TIME:
+ ifr.ifr_data = (void *)bmissCmd;
+ if (ioctl(s, AR6000_IOCTL_WMI_SET_BMISS_TIME, &ifr) < 0)
+ {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ break;
+ case WMI_SET_RSSI_THRESHOLDS:
+@@ -1621,14 +1621,14 @@ main (int argc, char **argv)
+ ifr.ifr_data = buf;
+ if (ioctl(s, AR6000_IOCTL_EXTENDED, &ifr) < 0)
+ {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ break;
+ case WMI_SET_SNR_THRESHOLDS:
+ ifr.ifr_data = (void *)snrThresholdParam;
+ if (ioctl(s, AR6000_IOCTL_WMI_SET_SNRTHRESHOLD, &ifr) < 0)
+ {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ break;
+ case WMI_CLR_RSSISNR:
+@@ -1636,7 +1636,7 @@ main (int argc, char **argv)
+ ifr.ifr_data = buf;
+ if (ioctl(s, AR6000_IOCTL_EXTENDED, &ifr) < 0)
+ {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ break;
+ case WMI_SET_LQ_THRESHOLDS:
+@@ -1644,7 +1644,7 @@ main (int argc, char **argv)
+ ifr.ifr_data = buf;
+ if (ioctl(s, AR6000_IOCTL_EXTENDED, &ifr) < 0)
+ {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ break;
+ case WMI_SET_CHANNEL:
+@@ -1693,18 +1693,18 @@ main (int argc, char **argv)
+
+ if (ioctl(s, AR6000_IOCTL_WMI_SET_CHANNELPARAMS, &ifr) < 0)
+ {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ break;
+ case WMI_SET_SSID:
+ if (index > MAX_PROBED_SSID_INDEX) {
+ printf("num option for ssid command too large\n");
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ break;
+ }
+ if (strlen((char *)ssid) > sizeof (ssidCmd->ssid)) {
+ printf("ssid name too large\n");
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ break;
+ }
+ ssidCmd->entryIndex = index;
+@@ -1722,7 +1722,7 @@ main (int argc, char **argv)
+ ifr.ifr_data = (void *)ssidCmd;
+ if (ioctl(s, AR6000_IOCTL_WMI_SET_PROBEDSSID, &ifr) < 0)
+ {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ break;
+ case WMI_SET_BADAP:
+@@ -1735,7 +1735,7 @@ main (int argc, char **argv)
+ ifr.ifr_data = (void *)badApCmd;
+ if (ioctl(s, AR6000_IOCTL_WMI_SET_BADAP, &ifr) < 0)
+ {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ break;
+ case WMI_CREATE_QOS:
+@@ -1794,7 +1794,7 @@ main (int argc, char **argv)
+ ifr.ifr_data = (void *)crePStreamCmd;
+ if (ioctl(s, AR6000_IOCTL_WMI_CREATE_QOS, &ifr) < 0)
+ {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ break;
+ case WMI_GET_TARGET_STATS:
+@@ -1807,7 +1807,7 @@ main (int argc, char **argv)
+ ifr.ifr_data = (void *)&tgtStatsCmd;
+ if (ioctl(s, AR6000_IOCTL_WMI_GET_TARGET_STATS, &ifr) < 0)
+ {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ printTargetStats(&(tgtStatsCmd.targetStats));
+ break;
+@@ -1815,7 +1815,7 @@ main (int argc, char **argv)
+ ifr.ifr_data = (void *)pBitMask;
+ if (ioctl(s, AR6000_IOCTL_WMI_SET_ERROR_REPORT_BITMASK, &ifr) < 0)
+ {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ break;
+ case WMI_DELETE_QOS:
+@@ -1824,7 +1824,7 @@ main (int argc, char **argv)
+ ifr.ifr_data = (void *)delPStreamCmd;
+ if (ioctl(s, AR6000_IOCTL_WMI_DELETE_QOS, &ifr) < 0)
+ {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ break;
+ case WMI_GET_QOS_QUEUE:
+@@ -1840,7 +1840,7 @@ main (int argc, char **argv)
+ ifr.ifr_data = (void *)getQosQueueCmd;
+ if (ioctl(s, AR6000_IOCTL_WMI_GET_QOS_QUEUE, &ifr) < 0)
+ {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+
+ printf("Active TSIDs \n");
+@@ -1855,7 +1855,7 @@ main (int argc, char **argv)
+ ifr.ifr_data = (void *)ieInfo;
+ if (ioctl(s, AR6000_IOCTL_WMI_SET_ASSOC_INFO, &ifr) < 0)
+ {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ break;
+ case WMI_SET_AC_PARAMS:
+@@ -1871,14 +1871,14 @@ main (int argc, char **argv)
+ ifr.ifr_data = (void *)acParamsCmd;
+ if (ioctl(s, AR6000_IOCTL_WMI_SET_ACCESS_PARAMS, &ifr) < 0)
+ {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ break;
+ case WMI_SET_DISC_TIMEOUT:
+ ifr.ifr_data = (void *)discCmd;
+ if (ioctl(s, AR6000_IOCTL_WMI_SET_DISC_TIMEOUT, &ifr) < 0)
+ {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ break;
+ case WMI_SET_ADHOC_BSSID:
+@@ -1887,7 +1887,7 @@ main (int argc, char **argv)
+ if (ioctl(s, AR6000_IOCTL_EXTENDED, &ifr) < 0)
+ {
+ printf("fail to set adhoc bssid \n");
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ break;
+ case WMI_SET_OPT_MODE:
+@@ -1895,7 +1895,7 @@ main (int argc, char **argv)
+ ifr.ifr_data = buf;
+ if (ioctl(s, AR6000_IOCTL_EXTENDED, &ifr) < 0)
+ {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ break;
+ case WMI_OPT_SEND_FRAME:
+@@ -1903,7 +1903,7 @@ main (int argc, char **argv)
+ ifr.ifr_data = buf;
+ if (ioctl(s, AR6000_IOCTL_EXTENDED, &ifr) < 0)
+ {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ break;
+ case WMI_SET_BEACON_INT:
+@@ -1911,7 +1911,7 @@ main (int argc, char **argv)
+ ifr.ifr_data = buf;
+ if (ioctl(s, AR6000_IOCTL_EXTENDED, &ifr) < 0)
+ {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ break;
+ case WMI_SET_VOICE_PKT_SIZE:
+@@ -1919,7 +1919,7 @@ main (int argc, char **argv)
+ ifr.ifr_data = buf;
+ if (ioctl(s, AR6000_IOCTL_EXTENDED, &ifr) < 0)
+ {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ break;
+ case WMI_SET_MAX_SP:
+@@ -1927,7 +1927,7 @@ main (int argc, char **argv)
+ ifr.ifr_data = buf;
+ if (ioctl(s, AR6000_IOCTL_EXTENDED, &ifr) < 0)
+ {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ break;
+ case WMI_GET_ROAM_TBL:
+@@ -1935,7 +1935,7 @@ main (int argc, char **argv)
+ ifr.ifr_data = buf;
+ if (ioctl(s, AR6000_IOCTL_EXTENDED, &ifr) < 0)
+ {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ break;
+ case WMI_SET_ROAM_CTRL:
+@@ -1943,7 +1943,7 @@ main (int argc, char **argv)
+ ifr.ifr_data = buf;
+ if (ioctl(s, AR6000_IOCTL_EXTENDED, &ifr) < 0)
+ {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ break;
+ case WMI_SET_POWERSAVE_TIMERS:
+@@ -1951,7 +1951,7 @@ main (int argc, char **argv)
+ ifr.ifr_data = buf;
+ if (ioctl(s, AR6000_IOCTL_EXTENDED, &ifr) < 0)
+ {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ break;
+ case WMI_GET_POWER_MODE:
+@@ -1959,7 +1959,7 @@ main (int argc, char **argv)
+ ifr.ifr_data = buf;
+ if (ioctl(s, AR6000_IOCTL_EXTENDED, &ifr) < 0)
+ {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ printf("Power mode is %s\n",
+ (getPowerMode->powerMode == MAX_PERF_POWER) ? "maxperf" : "rec");
+@@ -1969,7 +1969,7 @@ main (int argc, char **argv)
+ ifr.ifr_data = buf;
+ if (ioctl(s, AR6000_IOCTL_EXTENDED, &ifr) < 0)
+ {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ break;
+ case WMI_GET_ROAM_DATA:
+@@ -1977,7 +1977,7 @@ main (int argc, char **argv)
+ ifr.ifr_data = buf;
+ if (ioctl(s, AR6000_IOCTL_EXTENDED, &ifr) < 0)
+ {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ break;
+ case WMI_SET_BT_STATUS:
+@@ -1985,7 +1985,7 @@ main (int argc, char **argv)
+ ifr.ifr_data = buf;
+ if (ioctl(s, AR6000_IOCTL_EXTENDED, &ifr) < 0)
+ {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ break;
+ case WMI_SET_BT_PARAMS:
+@@ -1993,7 +1993,7 @@ main (int argc, char **argv)
+ ifr.ifr_data = buf;
+ if (ioctl(s, AR6000_IOCTL_EXTENDED, &ifr) < 0)
+ {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ break;
+ case WMI_SET_RETRYLIMITS:
+@@ -2001,14 +2001,14 @@ main (int argc, char **argv)
+ ifr.ifr_data = buf;
+ if (ioctl(s, AR6000_IOCTL_EXTENDED, &ifr) < 0)
+ {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ break;
+ case WMI_START_SCAN:
+ ((int *)buf)[0] = AR6000_XIOCTL_WMI_STARTSCAN;
+ ifr.ifr_data = buf;
+ if (ioctl(s, AR6000_IOCTL_EXTENDED, &ifr) < 0) {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ break;
+ case WMI_SET_FIX_RATES:
+@@ -2031,14 +2031,14 @@ main (int argc, char **argv)
+ ifr.ifr_data = buf;
+ if (ioctl(s, AR6000_IOCTL_EXTENDED, &ifr) < 0)
+ {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ break;
+ case WMI_GET_FIX_RATES:
+ ((int *)buf)[0] = AR6000_XIOCTL_WMI_GETFIXRATES;
+ ifr.ifr_data = buf;
+ if (ioctl(s, AR6000_IOCTL_EXTENDED, &ifr) < 0) {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ } else {
+ int i;
+ printf("Fix rate set index:");
+@@ -2057,7 +2057,7 @@ main (int argc, char **argv)
+ index--;
+ setAuthMode->mode = atoi(argv[index]);
+ if (ioctl(s, AR6000_IOCTL_EXTENDED, &ifr) < 0) {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ break;
+ case WMI_SET_REASSOC_MODE:
+@@ -2067,42 +2067,42 @@ main (int argc, char **argv)
+ index--;
+ setReassocMode->mode = atoi(argv[index]);
+ if (ioctl(s, AR6000_IOCTL_EXTENDED, &ifr) < 0) {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ break;
+ case WMI_SET_LPREAMBLE:
+ ((int *)buf)[0] = AR6000_XIOCTL_WMI_SET_LPREAMBLE;
+ ifr.ifr_data = buf;
+ if (ioctl(s, AR6000_IOCTL_EXTENDED, &ifr) < 0) {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ break;
+ case WMI_SET_RTS:
+ ((int *)buf)[0] = AR6000_XIOCTL_WMI_SET_RTS;
+ ifr.ifr_data = buf;
+ if (ioctl(s, AR6000_IOCTL_EXTENDED, &ifr) < 0) {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ break;
+ case WMI_SET_WMM:
+ ((int *)buf)[0] = AR6000_XIOCTL_WMI_SET_WMM;
+ ifr.ifr_data = buf;
+ if (ioctl(s, AR6000_IOCTL_EXTENDED, &ifr) < 0) {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ break;
+ case WMI_SET_TXOP:
+ ((int *)buf)[0] = AR6000_XIOCTL_WMI_SET_TXOP;
+ ifr.ifr_data = buf;
+ if (ioctl(s, AR6000_IOCTL_EXTENDED, &ifr) < 0) {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ break;
+ case DIAG_READ:
+ ((int *)buf)[0] = AR6000_XIOCTL_DIAG_READ;
+ ifr.ifr_data = buf;
+ if (ioctl(s, AR6000_IOCTL_EXTENDED, &ifr) < 0) {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ printf("diagdata: 0x%x\n", *diagdata);
+ break;
+@@ -2110,7 +2110,7 @@ main (int argc, char **argv)
+ ((int *)buf)[0] = AR6000_XIOCTL_DIAG_WRITE;
+ ifr.ifr_data = buf;
+ if (ioctl(s, AR6000_IOCTL_EXTENDED, &ifr) < 0) {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ break;
+ case WMI_GET_RD:
+@@ -2118,7 +2118,7 @@ main (int argc, char **argv)
+ ifr.ifr_data = buf;
+ if (ioctl(s, AR6000_IOCTL_EXTENDED, &ifr) < 0)
+ {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ else
+ {
+@@ -2139,14 +2139,14 @@ main (int argc, char **argv)
+ index--;
+ setKeepAlive->keepaliveInterval = atoi(argv[index]);
+ if (ioctl(s, AR6000_IOCTL_EXTENDED, &ifr) < 0) {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ break;
+ case WMI_GET_KEEPALIVE:
+ ((int *)buf)[0] = AR6000_XIOCTL_WMI_GET_KEEPALIVE;
+ ifr.ifr_data = buf;
+ if (ioctl(s, AR6000_IOCTL_EXTENDED, &ifr) < 0) {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ printf("Keepalive interval is %d secs and AP is %s\n",
+ getKeepAlive->keepaliveInterval, (getKeepAlive->configured ?
+@@ -2156,63 +2156,63 @@ main (int argc, char **argv)
+ ((int *)buf)[0] = AR6000_XIOCTL_WMI_SET_APPIE;
+ ifr.ifr_data = buf;
+ if (ioctl(s, AR6000_IOCTL_EXTENDED, &ifr) < 0) {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ break;
+ case WMI_SET_MGMT_FRM_RX_FILTER:
+ ((int *)buf)[0] = AR6000_XIOCTL_WMI_SET_MGMT_FRM_RX_FILTER;
+ ifr.ifr_data = buf;
+ if (ioctl(s, AR6000_IOCTL_EXTENDED, &ifr) < 0) {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ break;
+ case WMI_DBGLOG_CFG_MODULE:
+ ((int *)buf)[0] = AR6000_XIOCTL_DBGLOG_CFG_MODULE;
+ ifr.ifr_data = buf;
+ if (ioctl(s, AR6000_IOCTL_EXTENDED, &ifr) < 0) {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ break;
+ case WMI_DBGLOG_GET_DEBUG_LOGS:
+ ((int *)buf)[0] = AR6000_XIOCTL_DBGLOG_GET_DEBUG_LOGS;
+ ifr.ifr_data = buf;
+ if (ioctl(s, AR6000_IOCTL_EXTENDED, &ifr) < 0) {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ break;
+ case WMI_SET_HOST_SLEEP_MODE:
+ ((int *)buf)[0] = AR6000_XIOCTL_WMI_SET_HOST_SLEEP_MODE;
+ ifr.ifr_data = buf;
+ if (ioctl(s, AR6000_IOCTL_EXTENDED, &ifr) < 0) {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ break;
+ case WMI_SET_WOW_MODE:
+ ((int *)buf)[0] = AR6000_XIOCTL_WMI_SET_WOW_MODE;
+ ifr.ifr_data = buf;
+ if (ioctl(s, AR6000_IOCTL_EXTENDED, &ifr) < 0) {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ break;
+ case WMI_ADD_WOW_PATTERN:
+ ((int *)buf)[0] = AR6000_XIOCTL_WMI_ADD_WOW_PATTERN;
+ ifr.ifr_data = buf;
+ if (ioctl(s, AR6000_IOCTL_EXTENDED, &ifr) < 0) {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ break;
+ case WMI_DEL_WOW_PATTERN:
+ ((int *)buf)[0] = AR6000_XIOCTL_WMI_DEL_WOW_PATTERN;
+ ifr.ifr_data = buf;
+ if (ioctl(s, AR6000_IOCTL_EXTENDED, &ifr) < 0) {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ break;
+ case WMI_GET_WOW_LIST:
+ ((int *)buf)[0] = AR6000_XIOCTL_WMI_GET_WOW_LIST;
+ ifr.ifr_data = buf;
+ if (ioctl(s, AR6000_IOCTL_EXTENDED, &ifr) < 0) {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ break;
+ case DIAG_DUMP_CHIP_MEM:
+@@ -2225,7 +2225,7 @@ main (int argc, char **argv)
+ ((int *)buf)[0] = AR6000_XIOCTL_DIAG_READ;
+ ifr.ifr_data = buf;
+ if (ioctl(s, AR6000_IOCTL_EXTENDED, &ifr) < 0) {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ printf("0x%04x:0x%04x\n", *diagaddr, *diagdata);
+ }
+@@ -2237,21 +2237,21 @@ main (int argc, char **argv)
+ index = optind - 1;
+ *connectCtrlFlags = strtoul(argv[index], NULL, 0);
+ if (ioctl(s, AR6000_IOCTL_EXTENDED, &ifr) < 0) {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ break;
+ case DUMP_HTC_CREDITS:
+ ((int *)buf)[0] = AR6000_XIOCTL_DUMP_HTC_CREDIT_STATE;
+ ifr.ifr_data = buf;
+ if (ioctl(s, AR6000_IOCTL_EXTENDED, &ifr) < 0) {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ break;
+ case WMI_SET_AKMP_INFO:
+ ((int *)buf)[0] = AR6000_XIOCTL_WMI_SET_AKMP_PARAMS;
+ ifr.ifr_data = buf;
+ if (ioctl(s, AR6000_IOCTL_EXTENDED, &ifr) < 0) {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ break;
+ case WMI_SET_PMKID_LIST:
+@@ -2259,7 +2259,7 @@ main (int argc, char **argv)
+ ((int *)buf)[0] = AR6000_XIOCTL_WMI_SET_PMKID_LIST;
+ ifr.ifr_data = buf;
+ if (ioctl(s, AR6000_IOCTL_EXTENDED, &ifr) < 0) {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ } else {
+ printf("No PMKIDs entered\n");
+@@ -2269,7 +2269,7 @@ main (int argc, char **argv)
+ ((int *)buf)[0] = AR6000_XIOCTL_WMI_GET_PMKID_LIST;
+ ifr.ifr_data = buf;
+ if (ioctl(s, AR6000_IOCTL_EXTENDED, &ifr) < 0) {
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ break;
+ case WMI_SET_BSS_PMKID_INFO:
+@@ -2277,7 +2277,7 @@ main (int argc, char **argv)
+ iwr.u.data.length = sizeof(*pi_cmd);
+ if (ioctl(s, IEEE80211_IOCTL_ADDPMKID, &iwr) < 0) {
+ printf("ADDPMKID IOCTL Error\n");
+- err(1, ifr.ifr_name);
++ err(1, "%s", ifr.ifr_name);
+ }
+ break;
+ default:
+--
+2.13.2
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/wmiconfig/wmiconfig_svn.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/wmiconfig/wmiconfig_svn.bb
index 596a4e67e..c66572b1c 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/wmiconfig/wmiconfig_svn.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/wmiconfig/wmiconfig_svn.bb
@@ -6,7 +6,10 @@ SRCREV = "5394"
PV = "0.0.0+svnr${SRCPV}"
PR = "r2"
-SRC_URI = "svn://svn.openmoko.org/trunk/src/target;module=AR6kSDK.build_sw.18;protocol=http"
+SRC_URI = "svn://svn.openmoko.org/trunk/src/target;module=AR6kSDK.build_sw.18;protocol=http \
+ file://0001-makefile-Pass-CFLAGS-to-compile.patch \
+ file://0002-fix-err-API-to-have-format-string.patch \
+ "
S = "${WORKDIR}/AR6kSDK.build_sw.18/host/tools/wmiconfig"
CLEANBROKEN = "1"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/xchat/xchat_2.8.8.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/xchat/xchat_2.8.8.bb
index 6da11cd94..408c700bb 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/xchat/xchat_2.8.8.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/xchat/xchat_2.8.8.bb
@@ -35,3 +35,5 @@ FILES_${PN}-dbg += "${libdir}/xchat/plugins/.debug"
SRC_URI[md5sum] = "6775c44f38e84d06c06c336b32c4a452"
SRC_URI[sha256sum] = "0d6d69437b5e1e45f3e66270fe369344943de8a1190e498fafa5296315a27db0"
+
+PNBLACKLIST[xchat] ?= "Depends on blacklisted libsexy - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/xdg-user-dirs/files/0001-explicitly-disable-man-generation-disable-documentat.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/xdg-user-dirs/files/0001-explicitly-disable-man-generation-disable-documentat.patch
new file mode 100644
index 000000000..b2b0e4998
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/xdg-user-dirs/files/0001-explicitly-disable-man-generation-disable-documentat.patch
@@ -0,0 +1,31 @@
+From 41093d9634bfeddcaec866745d8d4022f4c6f8c1 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
+Date: Sun, 19 Feb 2017 21:01:39 +0100
+Subject: [PATCH] explicitly disable man generation --disable-documentation is
+ not enough
+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>
+---
+ Makefile.am | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/Makefile.am b/Makefile.am
+index c01c54f..dcdf7a2 100644
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -1,6 +1,6 @@
+ NULL =
+
+-SUBDIRS=po man
++SUBDIRS=po
+
+ INCLUDES = \
+ -I$(top_srcdir) \
+--
+2.9.3
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/xdg-user-dirs/xdg-user-dirs_0.15.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/xdg-user-dirs/xdg-user-dirs_0.15.bb
index b94e0ccd6..c05675976 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/xdg-user-dirs/xdg-user-dirs_0.15.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/xdg-user-dirs/xdg-user-dirs_0.15.bb
@@ -4,6 +4,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
SRC_URI = " \
http://user-dirs.freedesktop.org/releases/${BPN}-${PV}.tar.gz \
+ file://0001-explicitly-disable-man-generation-disable-documentat.patch \
file://xdg-user-dirs.desktop \
"
SRC_URI[md5sum] = "f5aaf5686ad7d8809a664bfb4566a54d"
@@ -11,6 +12,8 @@ SRC_URI[sha256sum] = "20b4a751f41d0554bce3e0ce5e8d934be98cc62d48f0b90a894c3e1916
inherit autotools gettext
+EXTRA_OECONF = "--disable-documentation"
+
do_install_append () {
install -d ${D}${sysconfdir}/xdg/autostart
install -m 644 ${WORKDIR}/xdg-user-dirs.desktop ${D}${sysconfdir}/xdg/autostart
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/zbar/zbar/0001-make-relies-GNU-extentions.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/zbar/zbar/0001-make-relies-GNU-extentions.patch
new file mode 100644
index 000000000..04239bacd
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/zbar/zbar/0001-make-relies-GNU-extentions.patch
@@ -0,0 +1,32 @@
+From 224507bc4b6e58f7a6e445bfebfb59d6b8d78bd6 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 2 Dec 2016 17:38:51 -0800
+Subject: [PATCH] make relies GNU extentions
+
+We get errors like
+`%'-style pattern rules are a GNU make extension
+
+Disable this warning, since we use gmake with OE
+anyway
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ configure.ac | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/configure.ac b/configure.ac
+index 56d3dd0..9f85fd7 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -3,7 +3,7 @@ AC_PREREQ([2.61])
+ AC_INIT([zbar], [0.10], [spadix@users.sourceforge.net])
+ AC_CONFIG_AUX_DIR(config)
+ AC_CONFIG_MACRO_DIR(config)
+-AM_INIT_AUTOMAKE([1.10 -Wall -Werror foreign subdir-objects std-options dist-bzip2])
++AM_INIT_AUTOMAKE([1.10 -Wall -Werror -Wno-portability foreign subdir-objects std-options dist-bzip2])
+ AC_CONFIG_HEADERS([include/config.h])
+ AC_CONFIG_SRCDIR(zbar/scanner.c)
+ LT_PREREQ([2.2])
+--
+2.10.2
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/zbar/zbar/0001-undefine-__va_arg_pack.patch b/import-layers/meta-openembedded/meta-oe/recipes-support/zbar/zbar/0001-undefine-__va_arg_pack.patch
new file mode 100644
index 000000000..f7d8ba1e9
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/zbar/zbar/0001-undefine-__va_arg_pack.patch
@@ -0,0 +1,51 @@
+From f842872244219d9881fbec77054702412b1e16f8 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 2 Dec 2016 16:41:27 -0800
+Subject: [PATCH] undefine __va_arg_pack
+
+dprintf() is also a libc function. This fixes
+the compile errors
+
+/usr/include/bits/stdio2.h:140:1: error: expected identifier or '(' before '{' token
+| {
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ zbar/debug.h | 10 +++++-----
+ 1 file changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/zbar/debug.h b/zbar/debug.h
+index 482ca8d..68948f6 100644
+--- a/zbar/debug.h
++++ b/zbar/debug.h
+@@ -23,6 +23,7 @@
+
+ /* varargs variations on compile time debug spew */
+
++#undef __va_arg_pack
+ #ifndef DEBUG_LEVEL
+
+ # ifdef __GNUC__
+@@ -36,15 +37,14 @@
+ #else
+
+ # include <stdio.h>
+-
+ # ifdef __GNUC__
+-# define dprintf(level, args...) \
++# define dprintf(level, format, args...) \
+ if((level) <= DEBUG_LEVEL) \
+- fprintf(stderr, args)
++ fprintf(stderr, format, args)
+ # else
+-# define dprintf(level, ...) \
++# define dprintf(level, format, ...) \
+ if((level) <= DEBUG_LEVEL) \
+- fprintf(stderr, __VA_ARGS__)
++ fprintf(stderr, format, __VA_ARGS__)
+ # endif
+
+ #endif /* DEBUG_LEVEL */
+--
+2.10.2
+
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/zbar/zbar_0.10.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/zbar/zbar_0.10.bb
new file mode 100644
index 000000000..6b6e50111
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/zbar/zbar_0.10.bb
@@ -0,0 +1,28 @@
+DESRIPTION = "2D barcode scanner toolkit."
+SECTION = "graphics"
+LICENSE = "LGPL-2.1"
+
+DEPENDS = "pkgconfig intltool-native libpng jpeg"
+
+LIC_FILES_CHKSUM = "file://COPYING;md5=42bafded1b380c6fefbeb6c5cd5448d9"
+
+SRC_URI = "${SOURCEFORGE_MIRROR}/${PN}/${P}.tar.bz2 \
+ file://0001-undefine-__va_arg_pack.patch \
+ file://0001-make-relies-GNU-extentions.patch \
+"
+
+SRC_URI[md5sum] = "0fd61eb590ac1bab62a77913c8b086a5"
+SRC_URI[sha256sum] = "234efb39dbbe5cef4189cc76f37afbe3cfcfb45ae52493bfe8e191318bdbadc6"
+
+inherit autotools pkgconfig
+
+PACKAGECONFIG = "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}"
+
+PACKAGECONFIG[x11] = "--with-x,-without-x,libxcb libx11 libsm libxau libxext libxv libice libxdmcp"
+
+EXTRA_OECONF = " --without-imagemagick --without-qt --without-python --disable-video --without-gtk"
+
+do_install_append() {
+ #remove usr/bin if empty
+ rmdir ${D}${bindir}
+}
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-support/zile/zile_2.4.11.bb b/import-layers/meta-openembedded/meta-oe/recipes-support/zile/zile_2.4.11.bb
index 49fbaead6..d663f44b9 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-support/zile/zile_2.4.11.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-support/zile/zile_2.4.11.bb
@@ -20,6 +20,6 @@ do_install_append() {
}
PACKAGECONFIG ??= ""
-PACKAGECONFIG += "${@bb.utils.contains('DISTRO_FEATURES', 'acl', 'acl', '', d)}"
+PACKAGECONFIG += "${@bb.utils.filter('DISTRO_FEATURES', 'acl', d)}"
PACKAGECONFIG[acl] = "--enable-acl,--disable-acl,acl,"
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-test/fwts/fwts/0001-ignore-constant-logical-operand-warning-with-clang.patch b/import-layers/meta-openembedded/meta-oe/recipes-test/fwts/fwts/0001-ignore-constant-logical-operand-warning-with-clang.patch
new file mode 100644
index 000000000..a3cc1ff8e
--- /dev/null
+++ b/import-layers/meta-openembedded/meta-oe/recipes-test/fwts/fwts/0001-ignore-constant-logical-operand-warning-with-clang.patch
@@ -0,0 +1,83 @@
+From 953cff93c85d3cfd5cbcac56e14443dc5f6e5fbd Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Wed, 19 Oct 2016 01:57:16 +0000
+Subject: [PATCH] ignore constant-logical-operand warning with clang
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/dmi/dmicheck/dmicheck.c | 3 +++
+ src/lib/src/fwts_acpi_tables.c | 5 +++++
+ src/uefi/uefirtauthvar/uefirtauthvar.c | 5 +++++
+ 3 files changed, 13 insertions(+)
+
+diff --git a/src/dmi/dmicheck/dmicheck.c b/src/dmi/dmicheck/dmicheck.c
+index ecd98223..7fca4a64 100644
+--- a/src/dmi/dmicheck/dmicheck.c
++++ b/src/dmi/dmicheck/dmicheck.c
+@@ -209,6 +209,8 @@ static const char *uuid_patterns[] = {
+ "0A0A0A0A-0A0A-0A0A-0A0A-0A0A0A0A0A0A",
+ NULL,
+ };
++#pragma clang diagnostic push
++#pragma clang diagnostic ignored "-Wunneeded-internal-declaration"
+
+ static const fwts_chassis_type_map fwts_dmi_chassis_type[] = {
+ { "Invalid", FWTS_SMBIOS_CHASSIS_INVALID },
+@@ -245,6 +247,7 @@ static const fwts_chassis_type_map fwts_dmi_chassis_type[] = {
+ { "Convertible", FWTS_SMBIOS_CHASSIS_CONVERTIBLE },
+ { "Detachable", FWTS_SMBIOS_CHASSIS_DETACHABLE },
+ };
++#pragma clang diagnostic pop
+
+ /* Remapping table from buggy version numbers to correct values */
+ static const fwts_dmi_version dmi_versions[] = {
+diff --git a/src/lib/src/fwts_acpi_tables.c b/src/lib/src/fwts_acpi_tables.c
+index 30b4060e..d5339bf7 100644
+--- a/src/lib/src/fwts_acpi_tables.c
++++ b/src/lib/src/fwts_acpi_tables.c
+@@ -394,10 +394,14 @@ static int fwts_acpi_handle_fadt(
+ /* Determine FACS addr and load it.
+ * Will ignore the missing FACS in the hardware-reduced mode.
+ */
++#pragma clang diagnostic push
++#pragma clang diagnostic ignored "-Waddress-of-packed-member"
++
+ result = fwts_acpi_handle_fadt_tables(fw, fadt,
+ "FACS", "FIRMWARE_CTRL", "X_FIRMWARE_CTRL",
+ &fadt->firmware_control, &fadt->x_firmware_ctrl,
+ provenance);
++
+ if (result != FWTS_OK) {
+ if ((result == FWTS_NULL_POINTER) &&
+ fwts_acpi_is_reduced_hardware(fadt)) {
+@@ -416,6 +420,7 @@ static int fwts_acpi_handle_fadt(
+ return FWTS_ERROR;
+ }
+ return FWTS_OK;
++#pragma clang diagnostic pop
+ }
+
+ /*
+diff --git a/src/uefi/uefirtauthvar/uefirtauthvar.c b/src/uefi/uefirtauthvar/uefirtauthvar.c
+index cdfd7aa3..001e8cc8 100644
+--- a/src/uefi/uefirtauthvar/uefirtauthvar.c
++++ b/src/uefi/uefirtauthvar/uefirtauthvar.c
+@@ -142,6 +142,9 @@ static int uefirtauthvar_deinit(fwts_framework *fw)
+ return FWTS_OK;
+ }
+
++#pragma clang diagnostic push
++#pragma clang diagnostic ignored "-Wconstant-logical-operand"
++
+ static int check_fw_support(fwts_framework *fw, uint64_t status)
+ {
+ if ((status == EFI_INVALID_PARAMETER) &&
+@@ -172,6 +175,8 @@ static int check_fw_support(fwts_framework *fw, uint64_t status)
+ return FWTS_OK;
+ }
+
++#pragma clang diagnostic pop
++
+ /*
+ * Set the created authenticated variable, AuthVarCreate,
+ * and checking the data size and data.
diff --git a/import-layers/meta-openembedded/meta-oe/recipes-test/fwts/fwts_git.bb b/import-layers/meta-openembedded/meta-oe/recipes-test/fwts/fwts_git.bb
index 197fe2034..4c4ae66d6 100644
--- a/import-layers/meta-openembedded/meta-oe/recipes-test/fwts/fwts_git.bb
+++ b/import-layers/meta-openembedded/meta-oe/recipes-test/fwts/fwts_git.bb
@@ -3,22 +3,29 @@ DESCRIPTION = "The tool fwts comprises of over fifty tests that are designed to
HOMEPAGE = "https://wiki.ubuntu.com/Kernel/Reference/fwts"
LICENSE = "GPLv2+"
-LIC_FILES_CHKSUM = "file://src/main.c;beginline=1;endline=16;md5=deb8af5388e838d133eaa036f4d1496f"
+LIC_FILES_CHKSUM = "file://src/main.c;beginline=1;endline=16;md5=31da590f3e9f3bd34dcdb9e4db568519"
-PV = "14.12.00"
+PV = "17.03.00"
-SRCREV = "efc18d16294f492b7f72bba64344b2eed50e6a69"
-SRC_URI = "git://kernel.ubuntu.com/hwe/fwts.git"
+SRCREV = "e3e9d1442b4cc70f5b30199f584cec8e25aeaad4"
+SRC_URI = "git://kernel.ubuntu.com/hwe/fwts.git \
+ file://0001-ignore-constant-logical-operand-warning-with-clang.patch \
+ "
S = "${WORKDIR}/git"
-DEPENDS = "libpcre json-c glib-2.0"
+COMPATIBLE_HOST = "(i.86|x86_64|aarch64|powerpc64).*-linux"
-inherit autotools-brokensep
+DEPENDS = "libpcre json-c glib-2.0 dtc"
-CFLAGS += "-I${STAGING_INCDIR}/json-c -Wno-error=misleading-indentation"
+inherit autotools pkgconfig
+
+CFLAGS += "-I${STAGING_INCDIR}/json-c -Wno-error=unknown-pragmas"
FILES_${PN} += "${libdir}/fwts/lib*${SOLIBS}"
FILES_${PN}-dev += "${libdir}/fwts/lib*${SOLIBSDEV} ${libdir}/fwts/lib*.la"
FILES_${PN}-staticdev += "${libdir}/fwts/lib*a"
FILES_${PN}-dbg += "${libdir}/fwts/.debug"
+
+TOOLCHAIN = "gcc"
+