summaryrefslogtreecommitdiff
path: root/poky/meta/recipes-devtools
diff options
context:
space:
mode:
Diffstat (limited to 'poky/meta/recipes-devtools')
-rw-r--r--poky/meta/recipes-devtools/autoconf/autoconf.inc31
-rw-r--r--poky/meta/recipes-devtools/automake/automake/0001-automake-Add-default-libtool_tag-to-cppasm.patch18
-rw-r--r--poky/meta/recipes-devtools/automake/automake/0001-build-fix-race-in-parallel-builds.patch65
-rw-r--r--poky/meta/recipes-devtools/automake/automake/automake-replace-w-option-in-shebangs-with-modern-use-warnings.patch68
-rw-r--r--poky/meta/recipes-devtools/automake/automake/buildtest.patch20
-rw-r--r--poky/meta/recipes-devtools/automake/automake/new_rt_path_for_test-driver.patch22
-rw-r--r--poky/meta/recipes-devtools/automake/automake/performance.patch19
-rw-r--r--poky/meta/recipes-devtools/automake/automake/python-libdir.patch19
-rw-r--r--poky/meta/recipes-devtools/automake/automake_1.16.1.bb (renamed from poky/meta/recipes-devtools/automake/automake_1.15.1.bb)5
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils-2.31.inc (renamed from poky/meta/recipes-devtools/binutils/binutils-2.30.inc)27
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils-cross-canadian_2.31.bb (renamed from poky/meta/recipes-devtools/binutils/binutils-cross-canadian_2.30.bb)0
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils-cross_2.31.bb (renamed from poky/meta/recipes-devtools/binutils/binutils-cross_2.30.bb)0
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils-crosssdk_2.31.bb (renamed from poky/meta/recipes-devtools/binutils/binutils-crosssdk_2.30.bb)0
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils.inc11
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils/0001-Change-the-ARM-assembler-s-ADR-and-ADRl-pseudo-ops-s.patch176
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils/0001-binutils-crosssdk-Generate-relocatable-SDKs.patch12
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils/0002-binutils-cross-Do-not-generate-linker-script-directo.patch22
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils/0003-configure-widen-the-regexp-for-SH-architectures.patch12
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils/0004-Point-scripts-location-to-libdir.patch10
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils/0005-Only-generate-an-RPATH-entry-if-LD_RUN_PATH-is-not-e.patch10
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils/0006-Use-libtool-2.4.patch2278
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils/0007-Add-the-armv5e-architecture-to-binutils.patch8
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils/0008-don-t-let-the-distro-compiler-point-to-the-wrong-ins.patch4
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils/0009-warn-for-uses-of-system-directories-when-cross-linki.patch50
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils/0010-Fix-rpath-in-libtool-when-sysroot-is-enabled.patch4
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils/0011-Change-default-emulation-for-mips64-linux.patch12
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils/0012-Add-support-for-Netlogic-XLP.patch80
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils/0013-fix-the-incorrect-assembling-for-ppc-wait-mnemonic.patch10
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils/0014-Detect-64-bit-MIPS-targets.patch4
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils/0015-sync-with-OE-libtool-changes.patch4
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils/0016-add-i386pep-emulation-for-x86_64.patch41
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils/0017-improve-check-for-input-file-matching-output-file.patch59
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils/0018-Refactored-location-where-GOT-information-is-collect.patch201
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils/0019-Improved-robustness.-Return-FALSE-in-case-of-NULL-po.patch38
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils/0020-Make-sure-global-symbol-is-not-an-indirect-or-warnin.patch46
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils/0021-PLT-information-was-still-being-generated-when-symbo.patch40
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils/CVE-2018-10372.patch58
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils/CVE-2018-10373.patch45
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils/CVE-2018-10534.patch3429
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils/CVE-2018-10535.patch61
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils/CVE-2018-17358.patch144
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils/CVE-2018-17360.patch65
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils/CVE-2018-18309.patch308
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils/CVE-2018-18605.patch47
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils/CVE-2018-18606.patch70
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils/CVE-2018-18607.patch77
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils/CVE-2018-6759.patch108
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils/CVE-2018-6872.patch50
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils/CVE-2018-7208.patch47
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils/CVE-2018-7568.patch85
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils/CVE-2018-7569.patch119
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils/CVE-2018-7642.patch51
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils/CVE-2018-7643.patch102
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils/CVE-2018-8945.patch70
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils_2.31.bb (renamed from poky/meta/recipes-devtools/binutils/binutils_2.30.bb)0
-rw-r--r--poky/meta/recipes-devtools/bison/bison_3.0.4.bb4
-rw-r--r--poky/meta/recipes-devtools/bootchart2/bootchart2/0001-Fixed-Missing-default-value-for-BOOTLOG_DEST.patch30
-rw-r--r--poky/meta/recipes-devtools/bootchart2/bootchart2_0.14.8.bb4
-rw-r--r--poky/meta/recipes-devtools/btrfs-tools/btrfs-tools/0001-Add-LDFLAGS-when-building-libbtrfsutil.so.patch35
-rw-r--r--poky/meta/recipes-devtools/btrfs-tools/btrfs-tools/0001-Add-a-possibility-to-specify-where-python-modules-ar.patch25
-rw-r--r--poky/meta/recipes-devtools/btrfs-tools/btrfs-tools/0001-Fix-build-with-musl-missing-header-include-for-dev_t.patch26
-rw-r--r--poky/meta/recipes-devtools/btrfs-tools/btrfs-tools_4.17.1.bb (renamed from poky/meta/recipes-devtools/btrfs-tools/btrfs-tools_4.13.3.bb)15
-rw-r--r--poky/meta/recipes-devtools/ccache/ccache_3.3.5.bb12
-rw-r--r--poky/meta/recipes-devtools/ccache/ccache_3.4.2.bb11
-rw-r--r--poky/meta/recipes-devtools/ccache/files/0002-dev.mk.in-fix-file-name-too-long.patch15
-rw-r--r--poky/meta/recipes-devtools/ccache/files/Revert-Create-man-page-in-the-make-install-from-git-.patch33
-rw-r--r--poky/meta/recipes-devtools/cmake/cmake-native_3.12.2.bb (renamed from poky/meta/recipes-devtools/cmake/cmake-native_3.10.3.bb)18
-rw-r--r--poky/meta/recipes-devtools/cmake/cmake.inc18
-rw-r--r--poky/meta/recipes-devtools/cmake/cmake/0001-CMakeDetermineSystem-use-oe-environment-vars-to-load.patch47
-rw-r--r--poky/meta/recipes-devtools/cmake/cmake/0001-FindBoost-Boost-1.66.0-dependency-and-release-update.patch52
-rw-r--r--poky/meta/recipes-devtools/cmake/cmake/0001-FindBoost-Fix-incorrect-alphabetisation-of-headers-l.patch29
-rw-r--r--poky/meta/recipes-devtools/cmake/cmake/0002-FindBoost-Implement-Architecture-and-Address-Model-t.patch132
-rw-r--r--poky/meta/recipes-devtools/cmake/cmake/0002-cmake-Prevent-the-detection-of-Qt5.patch122
-rw-r--r--poky/meta/recipes-devtools/cmake/cmake/0003-FindBoost-Search-for-upstream-packaged-libs-next-to-.patch31
-rw-r--r--poky/meta/recipes-devtools/cmake/cmake/0003-cmake-support-OpenEmbedded-Qt4-tool-binary-names.patch (renamed from poky/meta/recipes-devtools/cmake/cmake/support-oe-qt4-tools-names.patch)15
-rw-r--r--poky/meta/recipes-devtools/cmake/cmake/0004-Fail-silently-if-system-Qt-installation-is-broken.patch (renamed from poky/meta/recipes-devtools/cmake/cmake/qt4-fail-silent.patch)13
-rw-r--r--poky/meta/recipes-devtools/cmake/cmake/0005-Disable-use-of-ext2fs-ext2_fs.h-by-cmake-s-internal-.patch (renamed from poky/meta/recipes-devtools/cmake/cmake/cmlibarchive-disable-ext2fs.patch)18
-rw-r--r--poky/meta/recipes-devtools/cmake/cmake/OEToolchainConfig.cmake3
-rw-r--r--poky/meta/recipes-devtools/cmake/cmake/cmake-Prevent-the-detection-of-Qt5.patch215
-rw-r--r--poky/meta/recipes-devtools/cmake/cmake/environment.d-cmake.sh3
-rw-r--r--poky/meta/recipes-devtools/cmake/cmake_3.12.2.bb (renamed from poky/meta/recipes-devtools/cmake/cmake_3.10.3.bb)4
-rw-r--r--poky/meta/recipes-devtools/createrepo-c/createrepo-c_git.bb11
-rw-r--r--poky/meta/recipes-devtools/desktop-file-utils/desktop-file-utils_0.23.bb (renamed from poky/meta/recipes-devtools/desktop-file-utils/desktop-file-utils-native_0.23.bb)15
-rw-r--r--poky/meta/recipes-devtools/diffstat/diffstat/avoid-check-user-break-cc.patch32
-rw-r--r--poky/meta/recipes-devtools/diffstat/diffstat_1.62.bb (renamed from poky/meta/recipes-devtools/diffstat/diffstat_1.61.bb)5
-rw-r--r--poky/meta/recipes-devtools/distcc/distcc_3.3.2.bb (renamed from poky/meta/recipes-devtools/distcc/distcc_3.2.bb)10
-rw-r--r--poky/meta/recipes-devtools/distcc/files/0001-zeroconf-Include-fcntl.h.patch29
-rw-r--r--poky/meta/recipes-devtools/distcc/files/default4
-rw-r--r--poky/meta/recipes-devtools/dmidecode/dmidecode_3.1.bb4
-rw-r--r--poky/meta/recipes-devtools/dnf/dnf_2.7.5.bb1
-rw-r--r--poky/meta/recipes-devtools/dwarfsrcfiles/dwarfsrcfiles.bb2
-rw-r--r--poky/meta/recipes-devtools/e2fsprogs/e2fsprogs.inc2
-rw-r--r--poky/meta/recipes-devtools/e2fsprogs/e2fsprogs/0001-libext2fs-fix-build-failure-in-swapfs.c-on-big-endia.patch40
-rw-r--r--poky/meta/recipes-devtools/e2fsprogs/e2fsprogs/Revert-mke2fs-enable-the-metadata_csum-and-64bit-fea.patch12
-rw-r--r--poky/meta/recipes-devtools/e2fsprogs/e2fsprogs/ptest.patch58
-rw-r--r--poky/meta/recipes-devtools/e2fsprogs/e2fsprogs_1.44.3.bb (renamed from poky/meta/recipes-devtools/e2fsprogs/e2fsprogs_1.43.8.bb)25
-rw-r--r--poky/meta/recipes-devtools/elfutils/elfutils_0.174.bb (renamed from poky/meta/recipes-devtools/elfutils/elfutils_0.170.bb)25
-rw-r--r--poky/meta/recipes-devtools/elfutils/files/0001-Ensure-that-packed-structs-follow-the-gcc-memory-lay.patch34
-rw-r--r--poky/meta/recipes-devtools/elfutils/files/0001-Use-fallthrough-attribute.patch791
-rw-r--r--poky/meta/recipes-devtools/elfutils/files/0001-arlib-Check-that-sh_entsize-isn-t-zero.patch36
-rw-r--r--poky/meta/recipes-devtools/elfutils/files/0001-dso-link-change.patch8
-rw-r--r--poky/meta/recipes-devtools/elfutils/files/0001-libasm-may-link-with-libbz2-if-found.patch13
-rw-r--r--poky/meta/recipes-devtools/elfutils/files/0001-libdwfl-Sanity-check-partial-core-file-data-reads.patch60
-rw-r--r--poky/meta/recipes-devtools/elfutils/files/0001-libelf-elf_end.c-check-data_list.data.d.d_buf-before.patch46
-rw-r--r--poky/meta/recipes-devtools/elfutils/files/0001-size-Handle-recursive-ELF-ar-files.patch40
-rw-r--r--poky/meta/recipes-devtools/elfutils/files/0002-Fix-elf_cvt_gunhash-if-dest-and-src-are-same.patch4
-rw-r--r--poky/meta/recipes-devtools/elfutils/files/0003-fixheadercheck.patch6
-rw-r--r--poky/meta/recipes-devtools/elfutils/files/0004-Disable-the-test-to-convert-euc-jp.patch4
-rw-r--r--poky/meta/recipes-devtools/elfutils/files/0005-fix-a-stack-usage-warning.patch8
-rw-r--r--poky/meta/recipes-devtools/elfutils/files/0006-Fix-build-on-aarch64-musl.patch4
-rw-r--r--poky/meta/recipes-devtools/elfutils/files/0007-Fix-control-path-where-we-have-str-as-uninitialized-.patch12
-rw-r--r--poky/meta/recipes-devtools/elfutils/files/0008-build-Provide-alternatives-for-glibc-assumptions-hel.patch873
-rw-r--r--poky/meta/recipes-devtools/elfutils/files/debian/0001-Ignore-differences-between-mips-machine-identifiers.patch7
-rw-r--r--poky/meta/recipes-devtools/elfutils/files/debian/0001-arm_backend.patch (renamed from poky/meta/recipes-devtools/elfutils/files/debian/arm_backend.diff)322
-rw-r--r--poky/meta/recipes-devtools/elfutils/files/debian/0001-disable_werror.patch35
-rw-r--r--poky/meta/recipes-devtools/elfutils/files/debian/0001-fix-gcc7-ftbfs.patch57
-rw-r--r--poky/meta/recipes-devtools/elfutils/files/debian/0001-hppa_backend.patch (renamed from poky/meta/recipes-devtools/elfutils/files/debian/hppa_backend.diff)170
-rw-r--r--poky/meta/recipes-devtools/elfutils/files/debian/0001-mips_backend.patch (renamed from poky/meta/recipes-devtools/elfutils/files/debian/mips_backend.patch)31
-rw-r--r--poky/meta/recipes-devtools/elfutils/files/debian/0001-mips_readelf_w.patch39
-rw-r--r--poky/meta/recipes-devtools/elfutils/files/debian/0001-testsuite-ignore-elflint.patch57
-rw-r--r--poky/meta/recipes-devtools/elfutils/files/debian/0002-Add-support-for-mips64-abis-in-mips_retval.c.patch6
-rw-r--r--poky/meta/recipes-devtools/elfutils/files/debian/0003-Add-mips-n64-relocation-format-hack.patch8
-rw-r--r--poky/meta/recipes-devtools/elfutils/files/debian/ignore_strmerge.diff14
-rw-r--r--poky/meta/recipes-devtools/elfutils/files/debian/mips_readelf_w.patch25
-rw-r--r--poky/meta/recipes-devtools/fdisk/gptfdisk_1.0.4.bb (renamed from poky/meta/recipes-devtools/fdisk/gptfdisk_1.0.3.bb)19
-rw-r--r--poky/meta/recipes-devtools/file/file/0001-Add-P-prompt-into-Usage-info.patch39
-rw-r--r--poky/meta/recipes-devtools/file/file_5.34.bb (renamed from poky/meta/recipes-devtools/file/file_5.32.bb)8
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-7.3.inc9
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-7.3/0008-c99-snprintf.patch28
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-7.3/0049-gcc-override-TARGET_LIBC_PROVIDES_SSP.patch204
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-8.2.inc127
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-8.2/0001-gcc-4.3.1-ARCH_FLAGS_FOR_TARGET.patch42
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-8.2/0003-gcc-poison-system-directories.patch194
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-8.2/0005-gcc-4.3.3-SYSROOT_CFLAGS_FOR_TARGET.patch73
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-8.2/0006-64-bit-multilib-hack.patch85
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-8.2/0007-optional-libstdc.patch125
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-8.2/0008-gcc-disable-MASK_RELAX_PIC_CALLS-bit.patch59
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-8.2/0009-COLLECT_GCC_OPTIONS.patch38
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-8.2/0010-Use-the-defaults.h-in-B-instead-of-S-and-t-oe-in-B.patch96
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-8.2/0011-fortran-cross-compile-hack.patch46
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-8.2/0012-cpp-honor-sysroot.patch54
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-8.2/0013-MIPS64-Default-to-N64-ABI.patch57
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-8.2/0014-Define-GLIBC_DYNAMIC_LINKER-and-UCLIBC_DYNAMIC_LINKE.patch248
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-8.2/0015-gcc-Fix-argument-list-too-long-error.patch40
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-8.2/0016-Disable-sdt.patch113
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-8.2/0017-libtool.patch42
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-8.2/0018-gcc-armv4-pass-fix-v4bx-to-linker-to-support-EABI.patch43
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-8.2/0019-Use-the-multilib-config-files-from-B-instead-of-usin.patch102
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-8.2/0020-Avoid-using-libdir-from-.la-which-usually-points-to-.patch31
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-8.2/0021-export-CPP.patch53
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-8.2/0022-Disable-the-MULTILIB_OSDIRNAMES-and-other-multilib-o.patch42
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-8.2/0023-Ensure-target-gcc-headers-can-be-included.patch98
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-8.2/0024-gcc-4.8-won-t-build-with-disable-dependency-tracking.patch54
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-8.2/0025-Don-t-search-host-directory-during-relink-if-inst_pr.patch38
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-8.2/0026-Use-SYSTEMLIBS_DIR-replacement-instead-of-hardcoding.patch29
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-8.2/0027-aarch64-Add-support-for-musl-ldso.patch28
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-8.2/0028-libcc1-fix-libcc1-s-install-path-and-rpath.patch54
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-8.2/0029-handle-sysroot-support-for-nativesdk-gcc.patch213
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-8.2/0030-Search-target-sysroot-gcc-version-specific-dirs-with.patch102
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-8.2/0031-Fix-various-_FOR_BUILD-and-related-variables.patch137
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-8.2/0032-nios2-Define-MUSL_DYNAMIC_LINKER.patch28
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-8.2/0033-Add-ssp_nonshared-to-link-commandline-for-musl-targe.patch87
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-8.2/0034-libgcc-Add-knob-to-use-ldbl-128-on-ppc.patch125
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-8.2/0035-Link-libgcc-using-LDFLAGS-not-just-SHLIB_LDFLAGS.patch29
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-8.2/0036-libgcc_s-Use-alias-for-__cpu_indicator_init-instead-.patch86
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-8.2/0037-sync-gcc-stddef.h-with-musl.patch91
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-8.2/0038-fix-segmentation-fault-in-precompiled-header-generat.patch60
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-8.2/0039-Fix-for-testsuite-failure.patch258
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-8.2/0040-Re-introduce-spe-commandline-options.patch41
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-8.2/0041-ARC-fix-spec-gen.patch44
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-common.inc2
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-cross-canadian.inc5
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-cross-canadian_8.2.bb5
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-cross-initial_8.2.bb2
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-cross.inc2
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-cross_8.2.bb3
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-crosssdk-initial_8.2.bb3
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-crosssdk_8.2.bb2
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-runtime.inc5
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-runtime_8.2.bb12
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-sanitizers.inc1
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-sanitizers_8.2.bb7
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-source_8.2.bb4
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-target.inc18
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc_8.2.bb14
-rw-r--r--poky/meta/recipes-devtools/gcc/libgcc-common.inc5
-rw-r--r--poky/meta/recipes-devtools/gcc/libgcc-initial_8.2.bb5
-rw-r--r--poky/meta/recipes-devtools/gcc/libgcc_8.2.bb5
-rw-r--r--poky/meta/recipes-devtools/gcc/libgfortran_8.2.bb3
-rw-r--r--poky/meta/recipes-devtools/gdb/gdb-8.2.inc (renamed from poky/meta/recipes-devtools/gdb/gdb-8.0.1.inc)9
-rw-r--r--poky/meta/recipes-devtools/gdb/gdb-common.inc6
-rw-r--r--poky/meta/recipes-devtools/gdb/gdb-cross-canadian_8.2.bb (renamed from poky/meta/recipes-devtools/gdb/gdb-cross-canadian_8.0.1.bb)0
-rw-r--r--poky/meta/recipes-devtools/gdb/gdb-cross_8.2.bb (renamed from poky/meta/recipes-devtools/gdb/gdb-cross_8.0.1.bb)0
-rw-r--r--poky/meta/recipes-devtools/gdb/gdb/0001-include-sys-types.h-for-mode_t.patch15
-rw-r--r--poky/meta/recipes-devtools/gdb/gdb/0002-make-man-install-relative-to-DESTDIR.patch8
-rw-r--r--poky/meta/recipes-devtools/gdb/gdb/0003-mips-linux-nat-Define-_ABIO32-if-not-defined.patch26
-rw-r--r--poky/meta/recipes-devtools/gdb/gdb/0004-ppc-ptrace-Define-pt_regs-uapi_pt_regs-on-GLIBC-syst.patch14
-rw-r--r--poky/meta/recipes-devtools/gdb/gdb/0005-Add-support-for-Renesas-SH-sh4-architecture.patch64
-rw-r--r--poky/meta/recipes-devtools/gdb/gdb/0006-Dont-disable-libreadline.a-when-using-disable-static.patch10
-rw-r--r--poky/meta/recipes-devtools/gdb/gdb/0007-use-asm-sgidefs.h.patch8
-rw-r--r--poky/meta/recipes-devtools/gdb/gdb/0008-Use-exorted-definitions-of-SIGRTMIN.patch12
-rw-r--r--poky/meta/recipes-devtools/gdb/gdb/0009-Change-order-of-CFLAGS.patch10
-rw-r--r--poky/meta/recipes-devtools/gdb/gdb/0010-resolve-restrict-keyword-conflict.patch8
-rw-r--r--poky/meta/recipes-devtools/gdb/gdb/0011-Fix-invalid-sigprocmask-call.patch (renamed from poky/meta/recipes-devtools/gdb/gdb/package_devel_gdb_patches_120-sigprocmask-invalid-call.patch)20
-rw-r--r--poky/meta/recipes-devtools/gdb/gdb/0012-Unbreak-GDBserver-build-for-x32.patch101
-rw-r--r--poky/meta/recipes-devtools/gdb/gdb/gdb-Fix-ia64-defining-TRAP_HWBKPT-before-including-g.patch56
-rw-r--r--poky/meta/recipes-devtools/gdb/gdb/gdbserver-ctrl-c-handling.patch26
-rw-r--r--poky/meta/recipes-devtools/gdb/gdb_8.2.bb (renamed from poky/meta/recipes-devtools/gdb/gdb_8.0.1.bb)4
-rw-r--r--poky/meta/recipes-devtools/git/files/CVE-2018-11233.patch44
-rw-r--r--poky/meta/recipes-devtools/git/files/CVE-2018-11235.patch288
-rw-r--r--poky/meta/recipes-devtools/git/git.inc16
-rw-r--r--poky/meta/recipes-devtools/git/git_2.16.1.bb11
-rw-r--r--poky/meta/recipes-devtools/git/git_2.18.1.bb11
-rw-r--r--poky/meta/recipes-devtools/glide/glide_0.13.1.bb15
-rw-r--r--poky/meta/recipes-devtools/glide/glide_0.13.2.bb35
-rw-r--r--poky/meta/recipes-devtools/gnu-config/gnu-config/musl-support.patch25
-rw-r--r--poky/meta/recipes-devtools/gnu-config/gnu-config_20120814.bb40
-rw-r--r--poky/meta/recipes-devtools/gnu-config/gnu-config_git.bb6
-rw-r--r--poky/meta/recipes-devtools/go/go-1.10/0003-allow-GOTOOLDIR-to-be-overridden-in-the-environment.patch64
-rw-r--r--poky/meta/recipes-devtools/go/go-1.10/0008-cmd-internal-obj-arm64-fix-branch-too-far-with-TBZ-l.patch58
-rw-r--r--poky/meta/recipes-devtools/go/go-1.11.inc (renamed from poky/meta/recipes-devtools/go/go-1.10.inc)9
-rw-r--r--poky/meta/recipes-devtools/go/go-1.11/0001-allow-CC-and-CXX-to-have-multiple-words.patch (renamed from poky/meta/recipes-devtools/go/go-1.10/0001-allow-CC-and-CXX-to-have-multiple-words.patch)12
-rw-r--r--poky/meta/recipes-devtools/go/go-1.11/0002-cmd-go-make-content-based-hash-generation-less-pedan.patch (renamed from poky/meta/recipes-devtools/go/go-1.10/0002-cmd-go-make-content-based-hash-generation-less-pedan.patch)46
-rw-r--r--poky/meta/recipes-devtools/go/go-1.11/0003-allow-GOTOOLDIR-to-be-overridden-in-the-environment.patch48
-rw-r--r--poky/meta/recipes-devtools/go/go-1.11/0004-ld-add-soname-to-shareable-objects.patch (renamed from poky/meta/recipes-devtools/go/go-1.10/0004-ld-add-soname-to-shareable-objects.patch)16
-rw-r--r--poky/meta/recipes-devtools/go/go-1.11/0005-make.bash-override-CC-when-building-dist-and-go_boot.patch (renamed from poky/meta/recipes-devtools/go/go-1.10/0005-make.bash-override-CC-when-building-dist-and-go_boot.patch)15
-rw-r--r--poky/meta/recipes-devtools/go/go-1.11/0006-cmd-dist-separate-host-and-target-builds.patch (renamed from poky/meta/recipes-devtools/go/go-1.10/0006-cmd-dist-separate-host-and-target-builds.patch)67
-rw-r--r--poky/meta/recipes-devtools/go/go-1.11/0007-cmd-go-make-GOROOT-precious-by-default.patch (renamed from poky/meta/recipes-devtools/go/go-1.10/0007-cmd-go-make-GOROOT-precious-by-default.patch)50
-rw-r--r--poky/meta/recipes-devtools/go/go-1.11/0009-ld-replace-glibc-dynamic-linker-with-musl.patch (renamed from poky/meta/recipes-devtools/go/go-1.10/0009-ld-replace-glibc-dynamic-linker-with-musl.patch)24
-rw-r--r--poky/meta/recipes-devtools/go/go-cross-canadian_1.11.bb (renamed from poky/meta/recipes-devtools/go/go-cross-canadian_1.10.bb)0
-rw-r--r--poky/meta/recipes-devtools/go/go-cross.inc4
-rw-r--r--poky/meta/recipes-devtools/go/go-cross_1.11.bb (renamed from poky/meta/recipes-devtools/go/go-cross_1.10.bb)0
-rw-r--r--poky/meta/recipes-devtools/go/go-crosssdk_1.11.bb (renamed from poky/meta/recipes-devtools/go/go-crosssdk_1.10.bb)0
-rw-r--r--poky/meta/recipes-devtools/go/go-dep_0.4.1.bb20
-rw-r--r--poky/meta/recipes-devtools/go/go-dep_0.5.0.bb35
-rw-r--r--poky/meta/recipes-devtools/go/go-native.inc6
-rw-r--r--poky/meta/recipes-devtools/go/go-native_1.11.bb (renamed from poky/meta/recipes-devtools/go/go-native_1.10.bb)0
-rw-r--r--poky/meta/recipes-devtools/go/go-runtime.inc2
-rw-r--r--poky/meta/recipes-devtools/go/go-runtime_1.11.bb (renamed from poky/meta/recipes-devtools/go/go-runtime_1.10.bb)0
-rw-r--r--poky/meta/recipes-devtools/go/go-target.inc2
-rw-r--r--poky/meta/recipes-devtools/go/go_1.11.bb (renamed from poky/meta/recipes-devtools/go/go_1.10.bb)0
-rw-r--r--poky/meta/recipes-devtools/go/go_1.9.bb7
-rw-r--r--poky/meta/recipes-devtools/help2man/help2man-native_1.47.6.bb (renamed from poky/meta/recipes-devtools/help2man/help2man-native_1.47.5.bb)4
-rw-r--r--poky/meta/recipes-devtools/i2c-tools/i2c-tools_4.0.bb9
-rw-r--r--poky/meta/recipes-devtools/icecc-toolchain/icecc-toolchain/icecc-setup.sh5
-rw-r--r--poky/meta/recipes-devtools/icon-naming-utils/icon-naming-utils_0.8.90.bb30
-rw-r--r--poky/meta/recipes-devtools/json-c/json-c_0.13.1.bb (renamed from poky/meta/recipes-devtools/json-c/json-c_0.13.bb)13
-rw-r--r--poky/meta/recipes-devtools/libtool/libtool-cross_2.4.6.bb8
-rw-r--r--poky/meta/recipes-devtools/libtool/libtool/multilib.patch23
-rw-r--r--poky/meta/recipes-devtools/libtool/libtool_2.4.6.bb6
-rw-r--r--poky/meta/recipes-devtools/llvm/llvm/0001-Disable-generating-a-native-llvm-config.patch41
-rw-r--r--poky/meta/recipes-devtools/llvm/llvm/0002-llvm-allow-env-override-of-exe-path.patch47
-rw-r--r--poky/meta/recipes-devtools/llvm/llvm_git.bb18
-rw-r--r--poky/meta/recipes-devtools/meson/meson.inc (renamed from poky/meta/recipes-devtools/meson/meson_0.44.1.bb)15
-rw-r--r--poky/meta/recipes-devtools/meson/meson/0001-Support-building-allarch-recipes-again.patch28
-rw-r--r--poky/meta/recipes-devtools/meson/meson/0001-gtkdoc-fix-issues-that-arise-when-cross-compiling.patch56
-rw-r--r--poky/meta/recipes-devtools/meson/meson/0002-Make-CPU-family-warnings-fatal.patch36
-rw-r--r--poky/meta/recipes-devtools/meson/meson/0002-gobject-introspection-determine-g-ir-scanner-and-g-i.patch17
-rw-r--r--poky/meta/recipes-devtools/meson/meson/0003-native_bindir.patch69
-rw-r--r--poky/meta/recipes-devtools/meson/meson/gi-flags.patch35
-rw-r--r--poky/meta/recipes-devtools/meson/meson/gtkdoc-flags.patch44
-rwxr-xr-xpoky/meta/recipes-devtools/meson/meson/meson-setup.py62
-rwxr-xr-xpoky/meta/recipes-devtools/meson/meson/meson-wrapper14
-rw-r--r--poky/meta/recipes-devtools/meson/meson_0.47.2.bb3
-rw-r--r--poky/meta/recipes-devtools/meson/nativesdk-meson_0.47.2.bb74
-rw-r--r--poky/meta/recipes-devtools/mtd/mtd-utils_git.bb4
-rw-r--r--poky/meta/recipes-devtools/mtools/mtools/0001-remove-LOCK_NB-to-use-blocking-request.patch44
-rw-r--r--poky/meta/recipes-devtools/mtools/mtools/clang_UNUSED.patch17
-rw-r--r--poky/meta/recipes-devtools/mtools/mtools_4.0.18.bb2
-rw-r--r--poky/meta/recipes-devtools/opkg-utils/opkg-utils/pigz.patch51
-rw-r--r--poky/meta/recipes-devtools/opkg-utils/opkg-utils_0.3.6.bb1
-rw-r--r--poky/meta/recipes-devtools/opkg/opkg-keyrings_1.0.bb12
-rw-r--r--poky/meta/recipes-devtools/opkg/opkg/0001-remove_maintainer_scripts-use-strict-matching.patch56
-rw-r--r--poky/meta/recipes-devtools/opkg/opkg/opkg-configure.service17
-rw-r--r--poky/meta/recipes-devtools/opkg/opkg_0.3.6.bb15
-rw-r--r--poky/meta/recipes-devtools/ossp-uuid/ossp-uuid/0001-Change-library-name.patch119
-rw-r--r--poky/meta/recipes-devtools/ossp-uuid/ossp-uuid/0002-uuid-preserve-m-option-status-in-v-option-handling.patch62
-rw-r--r--poky/meta/recipes-devtools/ossp-uuid/ossp-uuid/0003-Fix-whatis-entries.patch58
-rw-r--r--poky/meta/recipes-devtools/ossp-uuid/ossp-uuid/0004-fix-data-uuid-from-string.patch43
-rw-r--r--poky/meta/recipes-devtools/ossp-uuid/ossp-uuid/install-pc.patch19
-rw-r--r--poky/meta/recipes-devtools/ossp-uuid/ossp-uuid/ldflags.patch26
-rw-r--r--poky/meta/recipes-devtools/ossp-uuid/ossp-uuid/libtool-tag.patch21
-rw-r--r--poky/meta/recipes-devtools/ossp-uuid/ossp-uuid/uuid-libtool.patch27
-rw-r--r--poky/meta/recipes-devtools/ossp-uuid/ossp-uuid/uuid-nostrip.patch19
-rw-r--r--poky/meta/recipes-devtools/ossp-uuid/ossp-uuid_1.6.2.bb66
-rw-r--r--poky/meta/recipes-devtools/pax-utils/pax-utils_1.2.2.bb36
-rw-r--r--poky/meta/recipes-devtools/perl/liberror-perl_0.17026.bb (renamed from poky/meta/recipes-devtools/perl/liberror-perl_0.17025.bb)4
-rw-r--r--poky/meta/recipes-devtools/perl/liburi-perl_1.74.bb (renamed from poky/meta/recipes-devtools/perl/liburi-perl_1.73.bb)4
-rw-r--r--poky/meta/recipes-devtools/perl/libxml-parser-perl_2.44.bb9
-rw-r--r--poky/meta/recipes-devtools/perl/libxml-simple-perl_2.25.bb (renamed from poky/meta/recipes-devtools/perl/libxml-simple-perl_2.24.bb)17
-rw-r--r--poky/meta/recipes-devtools/perl/perl-native_5.24.4.bb (renamed from poky/meta/recipes-devtools/perl/perl-native_5.24.1.bb)7
-rw-r--r--poky/meta/recipes-devtools/perl/perl-ptest.inc2
-rw-r--r--poky/meta/recipes-devtools/perl/perl-rdepends_5.24.4.inc (renamed from poky/meta/recipes-devtools/perl/perl-rdepends_5.24.1.inc)0
-rw-r--r--poky/meta/recipes-devtools/perl/perl/0001-ExtUtils-MM_Unix.pm-fix-race-issues.patch52
-rw-r--r--poky/meta/recipes-devtools/perl/perl/CVE-2017-12837.patch32
-rw-r--r--poky/meta/recipes-devtools/perl/perl/CVE-2017-12883.patch44
-rw-r--r--poky/meta/recipes-devtools/perl/perl/CVE-2018-6797.patch45
-rw-r--r--poky/meta/recipes-devtools/perl/perl/CVE-2018-6798-1.patch130
-rw-r--r--poky/meta/recipes-devtools/perl/perl/CVE-2018-6798-2.patch37
-rw-r--r--poky/meta/recipes-devtools/perl/perl/CVE-2018-6913.patch153
-rw-r--r--poky/meta/recipes-devtools/perl/perl/Makefile.SH.patch12
-rw-r--r--poky/meta/recipes-devtools/perl/perl/config.sh60
-rw-r--r--poky/meta/recipes-devtools/perl/perl_5.24.4.bb (renamed from poky/meta/recipes-devtools/perl/perl_5.24.1.bb)15
-rw-r--r--poky/meta/recipes-devtools/pkgconf/pkgconf_1.5.3.bb (renamed from poky/meta/recipes-devtools/pkgconf/pkgconf_1.4.2.bb)8
-rw-r--r--poky/meta/recipes-devtools/prelink/prelink/0001-src-arch-mips.c-check-info-resolvetls-before-use-its.patch51
-rw-r--r--poky/meta/recipes-devtools/prelink/prelink_git.bb8
-rw-r--r--poky/meta/recipes-devtools/pseudo/pseudo_git.bb2
-rw-r--r--poky/meta/recipes-devtools/python-numpy/python-numpy.inc6
-rw-r--r--poky/meta/recipes-devtools/python-numpy/python-numpy_1.14.5.bb (renamed from poky/meta/recipes-devtools/python-numpy/python-numpy_1.14.2.bb)0
-rw-r--r--poky/meta/recipes-devtools/python-numpy/python3-numpy_1.14.5.bb (renamed from poky/meta/recipes-devtools/python-numpy/python3-numpy_1.14.2.bb)0
-rw-r--r--poky/meta/recipes-devtools/python/files/0001-conditionally-do-not-fetch-code-by-easy_install.patch34
-rw-r--r--poky/meta/recipes-devtools/python/python-extras.inc12
-rw-r--r--poky/meta/recipes-devtools/python/python-git.inc4
-rw-r--r--poky/meta/recipes-devtools/python/python-gitdb.inc4
-rw-r--r--poky/meta/recipes-devtools/python/python-pbr.inc15
-rw-r--r--poky/meta/recipes-devtools/python/python-setuptools.inc17
-rw-r--r--poky/meta/recipes-devtools/python/python-setuptools_40.0.0.bb (renamed from poky/meta/recipes-devtools/python/python-setuptools_39.0.0.bb)0
-rw-r--r--poky/meta/recipes-devtools/python/python-subunit.inc14
-rw-r--r--poky/meta/recipes-devtools/python/python-testtools.inc27
-rw-r--r--poky/meta/recipes-devtools/python/python.inc14
-rw-r--r--poky/meta/recipes-devtools/python/python/0001-2.7-bpo-34623-Use-XML_SetHashSalt-in-_elementtree-GH.patch4
-rw-r--r--poky/meta/recipes-devtools/python/python/0001-bpo-33354-Fix-test_ssl-when-a-filename-cannot-be-enc.patch55
-rw-r--r--poky/meta/recipes-devtools/python/python/0001-bpo-33570-TLS-1.3-ciphers-for-OpenSSL-1.1.1-GH-6976-.patch120
-rw-r--r--poky/meta/recipes-devtools/python/python/0001-closes-bpo-34540-Convert-shutil._call_external_zip-t.patch4
-rw-r--r--poky/meta/recipes-devtools/python/python/0002-bpo-34818-Add-missing-closing-wrapper-in-test_tls1_3.patch37
-rw-r--r--poky/meta/recipes-devtools/python/python/0003-bpo-34834-Fix-test_ssl.test_options-to-account-for-O.patch37
-rw-r--r--poky/meta/recipes-devtools/python/python/0004-bpo-34836-fix-test_default_ecdh_curve-needs-no-tlsv1.patch34
-rw-r--r--poky/meta/recipes-devtools/python/python/create_manifest2.py2
-rw-r--r--poky/meta/recipes-devtools/python/python/multilib.patch2
-rw-r--r--poky/meta/recipes-devtools/python/python/python2-manifest.json24
-rw-r--r--poky/meta/recipes-devtools/python/python3-dbus_1.2.8.bb (renamed from poky/meta/recipes-devtools/python/python3-dbus_1.2.6.bb)11
-rw-r--r--poky/meta/recipes-devtools/python/python3-extras_1.0.0.bb2
-rw-r--r--poky/meta/recipes-devtools/python/python3-git_2.1.11.bb (renamed from poky/meta/recipes-devtools/python/python3-git_2.1.8.bb)0
-rw-r--r--poky/meta/recipes-devtools/python/python3-gitdb_2.0.4.bb (renamed from poky/meta/recipes-devtools/python/python3-gitdb_2.0.3.bb)0
-rw-r--r--poky/meta/recipes-devtools/python/python3-native_3.5.6.bb (renamed from poky/meta/recipes-devtools/python/python3-native_3.5.5.bb)24
-rw-r--r--poky/meta/recipes-devtools/python/python3-pbr_4.2.0.bb2
-rw-r--r--poky/meta/recipes-devtools/python/python3-pip_18.0.bb30
-rw-r--r--poky/meta/recipes-devtools/python/python3-pip_9.0.2.bb48
-rw-r--r--poky/meta/recipes-devtools/python/python3-pygobject_3.28.3.bb (renamed from poky/meta/recipes-devtools/python/python3-pygobject_3.28.1.bb)4
-rw-r--r--poky/meta/recipes-devtools/python/python3-setuptools_40.0.0.bb (renamed from poky/meta/recipes-devtools/python/python3-setuptools_39.0.0.bb)0
-rw-r--r--poky/meta/recipes-devtools/python/python3-subunit_1.3.0.bb2
-rw-r--r--poky/meta/recipes-devtools/python/python3-testtools_2.3.0.bb2
-rw-r--r--poky/meta/recipes-devtools/python/python3.inc43
-rw-r--r--poky/meta/recipes-devtools/python/python3/0001-Issue-28043-SSLContext-has-improved-default-settings.patch272
-rw-r--r--poky/meta/recipes-devtools/python/python3/0001-cross-compile-support.patch96
-rw-r--r--poky/meta/recipes-devtools/python/python3/0002-Makefile-add-target-to-split-profile-generation.patch40
-rw-r--r--poky/meta/recipes-devtools/python/python3/0002-bpo-29136-Add-TLS-1.3-cipher-suites-and-OP_NO_TLSv1_.patch227
-rw-r--r--poky/meta/recipes-devtools/python/python3/0003-bpo-32947-Fixes-for-TLS-1.3-and-OpenSSL-1.1.1-GH-876.patch173
-rw-r--r--poky/meta/recipes-devtools/python/python3/0004-bpo-33570-TLS-1.3-ciphers-for-OpenSSL-1.1.1-GH-6976.patch110
-rw-r--r--poky/meta/recipes-devtools/python/python3/0005-bpo-30714-ALPN-changes-for-OpenSSL-1.1.0f-2305.patch68
-rw-r--r--poky/meta/recipes-devtools/python/python3/CVE-2018-1061.patch165
-rw-r--r--poky/meta/recipes-devtools/python/python3/Use-correct-CFLAGS-for-extensions-when-cross-compili.patch56
-rw-r--r--poky/meta/recipes-devtools/python/python3/create_manifest3.py469
-rw-r--r--poky/meta/recipes-devtools/python/python3/float-endian.patch212
-rw-r--r--poky/meta/recipes-devtools/python/python3/ftplib.patch60
-rw-r--r--poky/meta/recipes-devtools/python/python3/python3-manifest.json1338
-rw-r--r--poky/meta/recipes-devtools/python/python3/run-ptest3
-rw-r--r--poky/meta/recipes-devtools/python/python3/shutil-follow-symlink-fix.patch17
-rw-r--r--poky/meta/recipes-devtools/python/python3/signal.patch56
-rw-r--r--poky/meta/recipes-devtools/python/python3_3.5.6.bb (renamed from poky/meta/recipes-devtools/python/python3_3.5.5.bb)167
-rw-r--r--poky/meta/recipes-devtools/python/python_2.7.15.bb9
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu-targets.inc2
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu.inc31
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0001-CVE-2018-11806-QEMU-slirp-heap-buffer-overflow.patch69
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0001-sdl.c-allow-user-to-disable-pointer-grabs.patch23
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0002-qemu-Add-missing-wacom-HID-descriptor.patch6
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0003-Add-subpackage-ptest-which-runs-all-unit-test-cases-.patch6
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0004-qemu-Add-addition-environment-space-to-boot-loader-q.patch6
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0005-qemu-disable-Valgrind.patch6
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0006-qemu-Limit-paths-searched-during-user-mode-emulation.patch4
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0007-qemu-native-set-ld.bfd-fix-cflags-and-set-some-envir.patch8
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0008-chardev-connect-socket-to-a-spawned-command.patch60
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0009-apic-fixup-fallthrough-to-PIC.patch6
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0010-linux-user-Fix-webkitgtk-hangs-on-32-bit-x86-target.patch6
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0011-Revert-linux-user-fix-mmap-munmap-mprotect-mremap-sh.patch141
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0011-memfd-fix-configure-test.patch54
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0012-arm-translate-a64-treat-DISAS_UPDATE-as-variant-of-D.patch64
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0012-fix-libcap-header-issue-on-some-distro.patch (renamed from poky/meta/recipes-devtools/qemu/qemu/0014-fix-libcap-header-issue-on-some-distro.patch)4
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0013-cpus.c-Add-error-messages-when-qemi_cpu_kick_thread-.patch (renamed from poky/meta/recipes-devtools/qemu/qemu/0015-cpus.c-Add-error-messages-when-qemi_cpu_kick_thread-.patch)10
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0013-ps2-check-PS2Queue-pointers-in-post_load-routine.patch60
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/CVE-2018-10839.patch52
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/CVE-2018-12617.patch53
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/CVE-2018-15746.patch64
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/CVE-2018-17958.patch52
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/CVE-2018-17962.patch70
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/CVE-2018-17963.patch51
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/CVE-2018-7550.patch62
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu_3.0.0.bb (renamed from poky/meta/recipes-devtools/qemu/qemu_2.11.1.bb)23
-rw-r--r--poky/meta/recipes-devtools/qemu/qemuwrapper-cross_1.0.bb40
-rw-r--r--poky/meta/recipes-devtools/quilt/quilt.inc29
-rw-r--r--poky/meta/recipes-devtools/rpm/files/0001-Do-not-hardcode-lib-rpm-as-the-installation-path-for.patch19
-rw-r--r--poky/meta/recipes-devtools/rpm/files/0001-Do-not-reset-the-PATH-environment-variable-before-ru.patch22
-rw-r--r--poky/meta/recipes-devtools/rpm/files/0001-Factor-out-and-unify-setting-CLOEXEC.patch148
-rw-r--r--poky/meta/recipes-devtools/rpm/files/0001-configure.ac-add-option-for-dbus.patch42
-rw-r--r--poky/meta/recipes-devtools/rpm/files/0001-rpm-rpmio.c-restrict-virtual-memory-usage-if-limit-s.patch65
-rw-r--r--poky/meta/recipes-devtools/rpm/files/0002-Optimize-rpmSetCloseOnExec.patch100
-rw-r--r--poky/meta/recipes-devtools/rpm/files/0003-rpmSetCloseOnExec-use-getrlimit.patch53
-rw-r--r--poky/meta/recipes-devtools/rpm/files/0004-build-pack.c-remove-static-local-variables-from-buil.patch17
-rw-r--r--poky/meta/recipes-devtools/rpm/rpm_4.14.2.bb (renamed from poky/meta/recipes-devtools/rpm/rpm_4.14.1.bb)13
-rw-r--r--poky/meta/recipes-devtools/rsync/rsync.inc20
-rw-r--r--poky/meta/recipes-devtools/rsync/rsync_3.1.3.bb28
-rw-r--r--poky/meta/recipes-devtools/ruby/ruby.inc2
-rw-r--r--poky/meta/recipes-devtools/ruby/ruby/CVE-2018-1000073.patch34
-rw-r--r--poky/meta/recipes-devtools/ruby/ruby_2.5.1.bb (renamed from poky/meta/recipes-devtools/ruby/ruby_2.5.0.bb)25
-rwxr-xr-xpoky/meta/recipes-devtools/run-postinsts/run-postinsts/run-postinsts21
-rw-r--r--poky/meta/recipes-devtools/run-postinsts/run-postinsts/run-postinsts.service1
-rw-r--r--poky/meta/recipes-devtools/squashfs-tools/squashfs-tools_git.bb4
-rw-r--r--poky/meta/recipes-devtools/strace/strace/Makefile-ptest.patch35
-rw-r--r--poky/meta/recipes-devtools/strace/strace/disable-git-version-gen.patch27
-rw-r--r--poky/meta/recipes-devtools/strace/strace/more-robust-test-for-m32-mx32-compile-support.patch22
-rwxr-xr-xpoky/meta/recipes-devtools/strace/strace/run-ptest2
-rw-r--r--poky/meta/recipes-devtools/strace/strace_4.24.bb (renamed from poky/meta/recipes-devtools/strace/strace_4.20.bb)17
-rw-r--r--poky/meta/recipes-devtools/subversion/subversion_1.10.0.bb (renamed from poky/meta/recipes-devtools/subversion/subversion_1.9.7.bb)45
-rw-r--r--poky/meta/recipes-devtools/swig/swig/Python-Fix-new-GCC8-warnings-in-generated-code.patch191
-rw-r--r--poky/meta/recipes-devtools/swig/swig/swig-3.0.12-Coverity-fix-issue-reported-for-SWIG_Python_FixMetho.patch36
-rw-r--r--poky/meta/recipes-devtools/swig/swig_3.0.12.bb2
-rw-r--r--poky/meta/recipes-devtools/tcf-agent/tcf-agent/0001-canonicalize_file_name-is-specific-to-glibc.patch46
-rw-r--r--poky/meta/recipes-devtools/tcf-agent/tcf-agent/fix_ranlib.patch23
-rw-r--r--poky/meta/recipes-devtools/tcf-agent/tcf-agent_git.bb8
-rw-r--r--poky/meta/recipes-devtools/unfs3/unfs3/0001-attr-fix-utime-for-symlink.patch85
-rw-r--r--poky/meta/recipes-devtools/unfs3/unfs3_0.9.22.r497.bb3
-rw-r--r--poky/meta/recipes-devtools/vala/vala.inc7
-rw-r--r--poky/meta/recipes-devtools/vala/vala/disable-graphviz.patch35
-rw-r--r--poky/meta/recipes-devtools/vala/vala_0.42.0.bb (renamed from poky/meta/recipes-devtools/vala/vala_0.38.8.bb)4
-rw-r--r--poky/meta/recipes-devtools/valgrind/valgrind/0001-Guard-against-__GLIBC_PREREQ-for-musl-libc.patch36
-rw-r--r--poky/meta/recipes-devtools/valgrind/valgrind/0001-Make-local-functions-static-to-avoid-assembler-error.patch182
-rw-r--r--poky/meta/recipes-devtools/valgrind/valgrind/0001-memcheck-tests-Use-ucontext_t-instead-of-struct-ucon.patch30
-rw-r--r--poky/meta/recipes-devtools/valgrind/valgrind/0002-context-APIs-are-not-available-on-musl.patch17
-rw-r--r--poky/meta/recipes-devtools/valgrind/valgrind/0002-fix-broken-inline-asm-in-tests-on-mips32-linux.patch47
-rw-r--r--poky/meta/recipes-devtools/valgrind/valgrind/0004-Fix-out-of-tree-builds.patch49
-rw-r--r--poky/meta/recipes-devtools/valgrind/valgrind/link-gz-tests.patch27
-rw-r--r--poky/meta/recipes-devtools/valgrind/valgrind/mask-CPUID-support-in-HWCAP-on-aarch64.patch36
-rw-r--r--poky/meta/recipes-devtools/valgrind/valgrind/ppc-headers.patch165
-rw-r--r--poky/meta/recipes-devtools/valgrind/valgrind_3.14.0.bb (renamed from poky/meta/recipes-devtools/valgrind/valgrind_3.13.0.bb)14
-rw-r--r--poky/meta/recipes-devtools/yasm/yasm_1.3.0.bb16
435 files changed, 12994 insertions, 13497 deletions
diff --git a/poky/meta/recipes-devtools/autoconf/autoconf.inc b/poky/meta/recipes-devtools/autoconf/autoconf.inc
index df81bc610..b82af5a5f 100644
--- a/poky/meta/recipes-devtools/autoconf/autoconf.inc
+++ b/poky/meta/recipes-devtools/autoconf/autoconf.inc
@@ -10,24 +10,49 @@ DEPENDS_class-native = "m4-native gnu-config-native"
DEPENDS_class-nativesdk = "nativesdk-m4 nativesdk-gnu-config"
RDEPENDS_${PN} = "m4 gnu-config \
perl \
+ perl-module-bytes \
perl-module-carp \
perl-module-constant \
+ perl-module-data-dumper \
perl-module-errno \
perl-module-exporter \
perl-module-file-basename \
perl-module-file-compare \
perl-module-file-copy \
+ perl-module-file-find \
perl-module-file-glob \
perl-module-file-path \
perl-module-file-stat \
- perl-module-file-find \
perl-module-getopt-long \
perl-module-io-file \
perl-module-posix \
- perl-module-data-dumper \
+ perl-module-thread-queue \
+ perl-module-threads \
"
RDEPENDS_${PN}_class-native = "m4-native gnu-config-native"
-RDEPENDS_${PN}_class-nativesdk = "nativesdk-m4 nativesdk-gnu-config"
+RDEPENDS_${PN}_class-nativesdk = "\
+ nativesdk-gnu-config \
+ nativesdk-m4 \
+ nativesdk-perl \
+ nativesdk-perl-module-bytes \
+ nativesdk-perl-module-carp \
+ nativesdk-perl-module-constant \
+ nativesdk-perl-module-data-dumper \
+ nativesdk-perl-module-errno \
+ nativesdk-perl-module-exporter \
+ nativesdk-perl-module-file-basename \
+ nativesdk-perl-module-file-compare \
+ nativesdk-perl-module-file-copy \
+ nativesdk-perl-module-file-find \
+ nativesdk-perl-module-file-glob \
+ nativesdk-perl-module-file-path \
+ nativesdk-perl-module-file-stat \
+ nativesdk-perl-module-getopt-long \
+ nativesdk-perl-module-io-file \
+ nativesdk-perl-module-posix \
+ nativesdk-perl-module-thread-queue \
+ nativesdk-perl-module-threads \
+ "
SRC_URI = "${GNU_MIRROR}/autoconf/autoconf-${PV}.tar.gz \
file://program_prefix.patch"
diff --git a/poky/meta/recipes-devtools/automake/automake/0001-automake-Add-default-libtool_tag-to-cppasm.patch b/poky/meta/recipes-devtools/automake/automake/0001-automake-Add-default-libtool_tag-to-cppasm.patch
index 1221f1306..deb1d0350 100644
--- a/poky/meta/recipes-devtools/automake/automake/0001-automake-Add-default-libtool_tag-to-cppasm.patch
+++ b/poky/meta/recipes-devtools/automake/automake/0001-automake-Add-default-libtool_tag-to-cppasm.patch
@@ -1,4 +1,4 @@
-From 25a8ac30486798d23f516722d73eb622e6264f28 Mon Sep 17 00:00:00 2001
+From b3c6e1971786cd93a2e3017c92bfbfe96baaf2f7 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Wed, 26 Jul 2017 11:19:56 -0700
Subject: [PATCH] automake: Add default libtool_tag to cppasm.
@@ -6,19 +6,19 @@ Subject: [PATCH] automake: Add default libtool_tag to cppasm.
* bin/automake.in (register_language): Define default libtool tag to be CC
since CPPASCOMPILE is using CC to call assembler
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
Upstream-Status: Submitted
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
bin/automake.in | 1 +
1 file changed, 1 insertion(+)
-Index: automake-1.15.1/bin/automake.in
-===================================================================
---- automake-1.15.1.orig/bin/automake.in
-+++ automake-1.15.1/bin/automake.in
-@@ -831,6 +831,7 @@ register_language ('name' => 'cppasm',
- 'compiler' => 'CPPASCOMPILE',
+diff --git a/bin/automake.in b/bin/automake.in
+index 3a66965..08ba09a 100644
+--- a/bin/automake.in
++++ b/bin/automake.in
+@@ -898,6 +898,7 @@ register_language ('name' => 'cppasm',
+ 'libtool_tag' => 'CC',
'compile_flag' => '-c',
'output_flag' => '-o',
+ 'libtool_tag' => 'CC',
diff --git a/poky/meta/recipes-devtools/automake/automake/0001-build-fix-race-in-parallel-builds.patch b/poky/meta/recipes-devtools/automake/automake/0001-build-fix-race-in-parallel-builds.patch
new file mode 100644
index 000000000..591fce1bf
--- /dev/null
+++ b/poky/meta/recipes-devtools/automake/automake/0001-build-fix-race-in-parallel-builds.patch
@@ -0,0 +1,65 @@
+From 592eb55b248a765abfc796fccb68baa3d53745ac Mon Sep 17 00:00:00 2001
+From: Hongxu Jia <hongxu.jia@windriver.com>
+Date: Thu, 26 Jul 2018 00:58:12 -0700
+Subject: [PATCH] build: fix race in parallel builds
+
+The automake-$(APIVERSION) is a hardlink of automake, if it is
+created later than update_mans executing, there is a failure
+[snip]
+|: && mkdir -p doc && ./pre-inst-env /usr/bin/env perl
+../automake-1.16.1/doc/help2man --output=doc/aclocal-1.16.1
+aclocal-1.16
+|help2man: can't get `--help' info from aclocal-1.16
+|Try `--no-discard-stderr' if option outputs to stderr
+Makefile:3693: recipe for target 'doc/aclocal-1.16.1' failed
+[snip]
+
+The automake_script is required by update_mans and update_mans
+invokes automake-$(APIVERSION) rather than automake to generate
+doc, so we should assign `automake-$(APIVERSION)' to automake_script.
+
+The same reason to tweak aclocal_script.
+
+* bin/local.mk: correct automake_script/aclocal_script
+
+Upstream-Status: Submitted [automake-patches@gnu.org]
+
+Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
+---
+ Makefile.in | 4 ++--
+ bin/local.mk | 4 ++--
+ 2 files changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/Makefile.in b/Makefile.in
+index c3e934c..7cddb8d 100644
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -691,8 +691,8 @@ bin_SCRIPTS = bin/automake bin/aclocal
+ # Used by maintainer checks and such.
+ automake_in = $(srcdir)/bin/automake.in
+ aclocal_in = $(srcdir)/bin/aclocal.in
+-automake_script = bin/automake
+-aclocal_script = bin/aclocal
++automake_script = bin/automake-$(APIVERSION)
++aclocal_script = bin/aclocal-$(APIVERSION)
+ AUTOMAKESOURCES = $(automake_in) $(aclocal_in)
+ info_TEXINFOS = doc/automake.texi doc/automake-history.texi
+ doc_automake_TEXINFOS = doc/fdl.texi
+diff --git a/bin/local.mk b/bin/local.mk
+index 97b38db..058ca99 100644
+--- a/bin/local.mk
++++ b/bin/local.mk
+@@ -31,8 +31,8 @@ CLEANFILES += \
+ # Used by maintainer checks and such.
+ automake_in = $(srcdir)/%D%/automake.in
+ aclocal_in = $(srcdir)/%D%/aclocal.in
+-automake_script = %D%/automake
+-aclocal_script = %D%/aclocal
++automake_script = %D%/automake-$(APIVERSION)
++aclocal_script = %D%/aclocal-$(APIVERSION)
+
+ AUTOMAKESOURCES = $(automake_in) $(aclocal_in)
+ TAGS_FILES += $(AUTOMAKESOURCES)
+--
+2.7.4
+
diff --git a/poky/meta/recipes-devtools/automake/automake/automake-replace-w-option-in-shebangs-with-modern-use-warnings.patch b/poky/meta/recipes-devtools/automake/automake/automake-replace-w-option-in-shebangs-with-modern-use-warnings.patch
index 96b5a3d6b..1592c02cb 100644
--- a/poky/meta/recipes-devtools/automake/automake/automake-replace-w-option-in-shebangs-with-modern-use-warnings.patch
+++ b/poky/meta/recipes-devtools/automake/automake/automake-replace-w-option-in-shebangs-with-modern-use-warnings.patch
@@ -1,4 +1,4 @@
-From 41e06b7a354774913dcd2e32a35440e407843357 Mon Sep 17 00:00:00 2001
+From 081385f4d4bba367afad3bff1fa034f5263305e6 Mon Sep 17 00:00:00 2001
From: Serhii Popovych <spopovyc@cisco.com>
Date: Wed, 10 Feb 2016 17:07:32 +0000
Subject: [PATCH] perl: Replace -w option in shebangs with modern "use
@@ -15,24 +15,24 @@ line and add "use warnings" statement.
Upstream-Status: Pending
Signed-off-by: Serhii Popovych <spopovyc@cisco.com>
+Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
+
---
- bin/aclocal.in | 3 ++-
- bin/automake.in | 3 ++-
- t/wrap/aclocal.in | 3 ++-
- t/wrap/automake.in | 3 ++-
- 4 files changed, 8 insertions(+), 4 deletions(-)
+ bin/aclocal.in | 3 ++-
+ bin/automake.in | 3 ++-
+ 2 files changed, 4 insertions(+), 2 deletions(-)
-Index: automake-1.15.1/bin/aclocal.in
-===================================================================
---- automake-1.15.1.orig/bin/aclocal.in
-+++ automake-1.15.1/bin/aclocal.in
+diff --git a/bin/aclocal.in b/bin/aclocal.in
+index b3715d9..461d453 100644
+--- a/bin/aclocal.in
++++ b/bin/aclocal.in
@@ -1,4 +1,4 @@
-#!@PERL@ -w
+#!@PERL@
# -*- perl -*-
# @configure_input@
-@@ -33,6 +33,7 @@ BEGIN
+@@ -32,6 +32,7 @@ BEGIN
}
use strict;
@@ -40,17 +40,17 @@ Index: automake-1.15.1/bin/aclocal.in
use Automake::Config;
use Automake::General;
-Index: automake-1.15.1/bin/automake.in
-===================================================================
---- automake-1.15.1.orig/bin/automake.in
-+++ automake-1.15.1/bin/automake.in
+diff --git a/bin/automake.in b/bin/automake.in
+index 8377d20..3a66965 100644
+--- a/bin/automake.in
++++ b/bin/automake.in
@@ -1,4 +1,4 @@
-#!@PERL@ -w
+#!@PERL@
# -*- perl -*-
# @configure_input@
-@@ -28,6 +28,7 @@ eval 'case $# in 0) exec @PERL@ -S "$0";
+@@ -28,6 +28,7 @@ eval 'case $# in 0) exec @PERL@ -S "$0";; *) exec @PERL@ -S "$0" "$@";; esac'
package Automake;
use strict;
@@ -58,39 +58,3 @@ Index: automake-1.15.1/bin/automake.in
BEGIN
{
-Index: automake-1.15.1/t/wrap/aclocal.in
-===================================================================
---- automake-1.15.1.orig/t/wrap/aclocal.in
-+++ automake-1.15.1/t/wrap/aclocal.in
-@@ -1,4 +1,4 @@
--#!@PERL@ -w
-+#!@PERL@
- # @configure_input@
-
- # Copyright (C) 2012-2017 Free Software Foundation, Inc.
-@@ -19,6 +19,7 @@
- BEGIN
- {
- use strict;
-+ use warnings;
- @Aclocal::perl_libdirs = ('@abs_top_srcdir@/lib');
- unshift @Aclocal::perl_libdirs, '@abs_top_builddir@/lib'
- if '@srcdir@' ne '.';
-Index: automake-1.15.1/t/wrap/automake.in
-===================================================================
---- automake-1.15.1.orig/t/wrap/automake.in
-+++ automake-1.15.1/t/wrap/automake.in
-@@ -1,4 +1,4 @@
--#!@PERL@ -w
-+#!@PERL@
- # @configure_input@
-
- # Copyright (C) 2012-2017 Free Software Foundation, Inc.
-@@ -19,6 +19,7 @@
- BEGIN
- {
- use strict;
-+ use warnings;
- @Automake::perl_libdirs = ('@abs_top_srcdir@/lib');
- unshift @Automake::perl_libdirs, '@abs_top_builddir@/lib'
- if '@srcdir@' ne '.';
diff --git a/poky/meta/recipes-devtools/automake/automake/buildtest.patch b/poky/meta/recipes-devtools/automake/automake/buildtest.patch
index c32cd1fb1..b88b9e869 100644
--- a/poky/meta/recipes-devtools/automake/automake/buildtest.patch
+++ b/poky/meta/recipes-devtools/automake/automake/buildtest.patch
@@ -1,13 +1,25 @@
+From a860b28069785aa5bf2fa9b671287de9af5004ff Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Bj=C3=B6rn=20Stenberg?= <bjst@enea.com>
+Date: Wed, 19 Dec 2012 17:18:27 +0100
+Subject: [PATCH] Add a new distro feature "ptest".
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
Split "check-TESTS" into a buildtest and runtest target, so that they can
be run separately.
Signed-off-by: Björn Stenberg <bjst@enea.com>
Upstream-Status: Pending
-Index: automake-1.15.1/lib/am/check.am
-===================================================================
---- automake-1.15.1.orig/lib/am/check.am
-+++ automake-1.15.1/lib/am/check.am
+---
+ lib/am/check.am | 11 +++++++++--
+ 1 file changed, 9 insertions(+), 2 deletions(-)
+
+diff --git a/lib/am/check.am b/lib/am/check.am
+index e0db651..de137fa 100644
+--- a/lib/am/check.am
++++ b/lib/am/check.am
@@ -41,7 +41,7 @@ am__tty_colors = { \
fi; \
}
diff --git a/poky/meta/recipes-devtools/automake/automake/new_rt_path_for_test-driver.patch b/poky/meta/recipes-devtools/automake/automake/new_rt_path_for_test-driver.patch
index 2c6594f52..1f7172233 100644
--- a/poky/meta/recipes-devtools/automake/automake/new_rt_path_for_test-driver.patch
+++ b/poky/meta/recipes-devtools/automake/automake/new_rt_path_for_test-driver.patch
@@ -1,22 +1,32 @@
-Set relative to top_builddir path in Makefile to access test-driver
+From f78dfa39139d528c94d72f27994f337f2fd3b6bd Mon Sep 17 00:00:00 2001
+From: Adrian Calianu <adrian.calianu@enea.com>
+Date: Thu, 25 Feb 2016 16:08:04 +0100
+Subject: [PATCH] Set relative to top_builddir path in Makefile to access
+ test-driver
Signed-off-by: Adrian Calianu <adrian.calianu@enea.com>
Upstream-Status: Pending
Bug-Report: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=19042
+---
+ bin/automake.in | 9 ++++++++-
+ 1 file changed, 8 insertions(+), 1 deletion(-)
+
+diff --git a/bin/automake.in b/bin/automake.in
+index a52a489..8377d20 100644
--- a/bin/automake.in
+++ b/bin/automake.in
-@@ -272,6 +272,9 @@
+@@ -324,6 +324,9 @@ my $config_aux_dir_set_in_configure_ac = 0;
# $AM_CONFIG_AUX_DIR is prefixed with $(top_srcdir), so it can be used
# in Makefiles.
my $am_config_aux_dir = '';
+# Directory used at runtime like running test-driver that should not
+# depend on $(top_srcdir)
+my $am_config_rt_aux_dir = '';
-
+
# Directory to search for AC_LIBSOURCE files, as set by AC_CONFIG_LIBOBJ_DIR
# in configure.ac.
-@@ -4700,7 +4703,7 @@
+@@ -4854,7 +4857,7 @@ sub handle_per_suffix_test
{
require_conf_file ("parallel-tests", FOREIGN, 'test-driver');
define_variable ("${pfx}LOG_DRIVER",
@@ -25,7 +35,7 @@ Bug-Report: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=19042
INTERNAL);
}
my $driver = '$(' . $pfx . 'LOG_DRIVER)';
-@@ -7284,6 +7287,10 @@
+@@ -7440,6 +7443,10 @@ sub locate_aux_dir ()
$am_config_aux_dir =
'$(top_srcdir)' . ($config_aux_dir eq '.' ? "" : "/$config_aux_dir");
$am_config_aux_dir =~ s,/*$,,;
@@ -34,3 +44,5 @@ Bug-Report: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=19042
+ '$(top_builddir)' . ($config_aux_dir eq '.' ? "" : "/$config_aux_dir");
+ $am_config_rt_aux_dir =~ s,/*$,,;
}
+
+
diff --git a/poky/meta/recipes-devtools/automake/automake/performance.patch b/poky/meta/recipes-devtools/automake/automake/performance.patch
index 3e6d5694d..a8ba6592f 100644
--- a/poky/meta/recipes-devtools/automake/automake/performance.patch
+++ b/poky/meta/recipes-devtools/automake/automake/performance.patch
@@ -1,15 +1,24 @@
+From cd47c328cb53546891bb3dc7c9b2c54ed01cc6d1 Mon Sep 17 00:00:00 2001
+From: Richard Purdie <richard.purdie@linuxfoundation.org>
+Date: Mon, 7 Dec 2015 18:28:05 +0000
+Subject: [PATCH] automake: Remove delays in configure scripts using automake
+
By default automake puts "sleep 1" into the start of configure scripts
-which adds pointless delays to them. Rather than do this, lets just assume
+which adds pointless delays to them. Rather than do this, lets just assume
our systems are sane.
RP
2015/12/7
Upstream-Status: Inappropriate
-Index: automake-1.15/m4/sanity.m4
-===================================================================
---- automake-1.15.orig/m4/sanity.m4
-+++ automake-1.15/m4/sanity.m4
+---
+ m4/sanity.m4 | 55 -------------------------------------------------------
+ 1 file changed, 55 deletions(-)
+
+diff --git a/m4/sanity.m4 b/m4/sanity.m4
+index eaac218..bfdfe88 100644
+--- a/m4/sanity.m4
++++ b/m4/sanity.m4
@@ -23,60 +23,5 @@ case $srcdir in
AC_MSG_ERROR([unsafe srcdir value: '$srcdir']);;
esac
diff --git a/poky/meta/recipes-devtools/automake/automake/python-libdir.patch b/poky/meta/recipes-devtools/automake/automake/python-libdir.patch
index 2a48b133e..ee1f725f7 100644
--- a/poky/meta/recipes-devtools/automake/automake/python-libdir.patch
+++ b/poky/meta/recipes-devtools/automake/automake/python-libdir.patch
@@ -1,7 +1,7 @@
-From 472a3d36c97ef7535f05d6c185edcbc22b0074c4 Mon Sep 17 00:00:00 2001
+From a80dacd5124d0713cf2c986b28d736e78dc6b0ca Mon Sep 17 00:00:00 2001
From: Kumar Gala <galak@kernel.crashing.org>
Date: Thu, 11 Aug 2011 01:26:33 -0500
-Subject: [PATCH 1/4] automake: Update for python.m4 to respect libdir
+Subject: [PATCH] automake: Update for python.m4 to respect libdir
Upstream-Status: Inappropriate [embedded specific]
@@ -17,10 +17,10 @@ Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
1 file changed, 7 insertions(+), 20 deletions(-)
diff --git a/m4/python.m4 b/m4/python.m4
-index 5b2c695..ed19261 100644
+index 63c0a0e..7bbd2d2 100644
--- a/m4/python.m4
+++ b/m4/python.m4
-@@ -91,12 +91,13 @@ AC_DEFUN([AM_PATH_PYTHON],
+@@ -94,12 +94,13 @@ AC_DEFUN([AM_PATH_PYTHON],
[am_cv_python_version=`$PYTHON -c "import sys; sys.stdout.write(sys.version[[:3]])"`])
AC_SUBST([PYTHON_VERSION], [$am_cv_python_version])
@@ -36,7 +36,7 @@ index 5b2c695..ed19261 100644
AC_SUBST([PYTHON_EXEC_PREFIX], ['${exec_prefix}'])
dnl At times (like when building shared libraries) you may want
-@@ -141,14 +142,7 @@ except ImportError:
+@@ -144,14 +145,7 @@ except ImportError:
else
am_py_prefix=$prefix
fi
@@ -52,7 +52,7 @@ index 5b2c695..ed19261 100644
case $am_cv_python_pythondir in
$am_py_prefix*)
am__strip_prefix=`echo "$am_py_prefix" | sed 's|.|.|g'`
-@@ -158,7 +152,7 @@ sys.stdout.write(sitedir)"`
+@@ -161,7 +155,7 @@ sys.stdout.write(sitedir)"`
case $am_py_prefix in
/usr|/System*) ;;
*)
@@ -61,7 +61,7 @@ index 5b2c695..ed19261 100644
;;
esac
;;
-@@ -183,14 +177,7 @@ sys.stdout.write(sitedir)"`
+@@ -186,14 +180,7 @@ sys.stdout.write(sitedir)"`
else
am_py_exec_prefix=$exec_prefix
fi
@@ -77,7 +77,7 @@ index 5b2c695..ed19261 100644
case $am_cv_python_pyexecdir in
$am_py_exec_prefix*)
am__strip_prefix=`echo "$am_py_exec_prefix" | sed 's|.|.|g'`
-@@ -200,7 +187,7 @@ sys.stdout.write(sitedir)"`
+@@ -203,7 +190,7 @@ sys.stdout.write(sitedir)"`
case $am_py_exec_prefix in
/usr|/System*) ;;
*)
@@ -86,6 +86,3 @@ index 5b2c695..ed19261 100644
;;
esac
;;
---
-2.8.1
-
diff --git a/poky/meta/recipes-devtools/automake/automake_1.15.1.bb b/poky/meta/recipes-devtools/automake/automake_1.16.1.bb
index 4f9b616b6..d82eed3c6 100644
--- a/poky/meta/recipes-devtools/automake/automake_1.15.1.bb
+++ b/poky/meta/recipes-devtools/automake/automake_1.16.1.bb
@@ -25,10 +25,11 @@ SRC_URI += "file://python-libdir.patch \
file://new_rt_path_for_test-driver.patch \
file://automake-replace-w-option-in-shebangs-with-modern-use-warnings.patch \
file://0001-automake-Add-default-libtool_tag-to-cppasm.patch \
+ file://0001-build-fix-race-in-parallel-builds.patch \
"
-SRC_URI[md5sum] = "95df3f2d6eb8f81e70b8cb63a93c8853"
-SRC_URI[sha256sum] = "988e32527abe052307d21c8ca000aa238b914df363a617e38f4fb89f5abf6260"
+SRC_URI[md5sum] = "83cc2463a4080efd46a72ba2c9f6b8f5"
+SRC_URI[sha256sum] = "608a97523f97db32f1f5d5615c98ca69326ced2054c9f82e65bade7fc4c9dea8"
PERL = "${USRBINPATH}/perl"
PERL_class-native = "${USRBINPATH}/env perl"
diff --git a/poky/meta/recipes-devtools/binutils/binutils-2.30.inc b/poky/meta/recipes-devtools/binutils/binutils-2.31.inc
index 35d7d9b93..0c9d4cef2 100644
--- a/poky/meta/recipes-devtools/binutils/binutils-2.30.inc
+++ b/poky/meta/recipes-devtools/binutils/binutils-2.31.inc
@@ -18,7 +18,7 @@ BINUPV = "${@binutils_branch_version(d)}"
UPSTREAM_CHECK_GITTAGREGEX = "binutils-(?P<pver>\d+_(\d_?)*)"
-SRCREV ?= "caa839fba66600a6c36d3639906ed9110b79c307"
+SRCREV ?= "4568e49ff799192fea4f66063fe13e2b871ec75a"
BINUTILS_GIT_URI ?= "git://sourceware.org/git/binutils-gdb.git;branch=binutils-${BINUPV}-branch;protocol=git"
SRC_URI = "\
${BINUTILS_GIT_URI} \
@@ -35,19 +35,18 @@ SRC_URI = "\
file://0013-fix-the-incorrect-assembling-for-ppc-wait-mnemonic.patch \
file://0014-Detect-64-bit-MIPS-targets.patch \
file://0015-sync-with-OE-libtool-changes.patch \
- file://CVE-2018-8945.patch \
- file://CVE-2018-7643.patch \
- file://CVE-2018-6872.patch \
- file://CVE-2018-6759.patch \
- file://CVE-2018-7642.patch \
- file://CVE-2018-7208.patch \
- file://CVE-2018-7569.patch \
- file://CVE-2018-7568.patch \
- file://CVE-2018-10373.patch \
- file://CVE-2018-10372.patch \
- file://CVE-2018-10535.patch \
- file://CVE-2018-10534.patch \
- file://0001-Change-the-ARM-assembler-s-ADR-and-ADRl-pseudo-ops-s.patch \
+ file://0016-add-i386pep-emulation-for-x86_64.patch \
+ file://0017-improve-check-for-input-file-matching-output-file.patch \
+ file://0018-Refactored-location-where-GOT-information-is-collect.patch \
+ file://0019-Improved-robustness.-Return-FALSE-in-case-of-NULL-po.patch \
+ file://0020-Make-sure-global-symbol-is-not-an-indirect-or-warnin.patch \
+ file://0021-PLT-information-was-still-being-generated-when-symbo.patch \
+ file://CVE-2018-17358.patch \
+ file://CVE-2018-17360.patch \
+ file://CVE-2018-18309.patch \
+ file://CVE-2018-18605.patch \
+ file://CVE-2018-18606.patch \
+ file://CVE-2018-18607.patch \
"
S = "${WORKDIR}/git"
diff --git a/poky/meta/recipes-devtools/binutils/binutils-cross-canadian_2.30.bb b/poky/meta/recipes-devtools/binutils/binutils-cross-canadian_2.31.bb
index 5dbaa0301..5dbaa0301 100644
--- a/poky/meta/recipes-devtools/binutils/binutils-cross-canadian_2.30.bb
+++ b/poky/meta/recipes-devtools/binutils/binutils-cross-canadian_2.31.bb
diff --git a/poky/meta/recipes-devtools/binutils/binutils-cross_2.30.bb b/poky/meta/recipes-devtools/binutils/binutils-cross_2.31.bb
index fbd1f7d25..fbd1f7d25 100644
--- a/poky/meta/recipes-devtools/binutils/binutils-cross_2.30.bb
+++ b/poky/meta/recipes-devtools/binutils/binutils-cross_2.31.bb
diff --git a/poky/meta/recipes-devtools/binutils/binutils-crosssdk_2.30.bb b/poky/meta/recipes-devtools/binutils/binutils-crosssdk_2.31.bb
index 37f4d6d2e..37f4d6d2e 100644
--- a/poky/meta/recipes-devtools/binutils/binutils-crosssdk_2.30.bb
+++ b/poky/meta/recipes-devtools/binutils/binutils-crosssdk_2.31.bb
diff --git a/poky/meta/recipes-devtools/binutils/binutils.inc b/poky/meta/recipes-devtools/binutils/binutils.inc
index 37813dd86..0fb6cae40 100644
--- a/poky/meta/recipes-devtools/binutils/binutils.inc
+++ b/poky/meta/recipes-devtools/binutils/binutils.inc
@@ -38,6 +38,9 @@ FILES_${PN}-dev = " \
# Rather than duplicating multiple entries for these, make one
# list and reuse it.
+LDGOLD_ALTS ?= "ld.gold dwp"
+LDGOLD_ALTS_riscv64 = ""
+
USE_ALTERNATIVES_FOR = " \
addr2line \
ar \
@@ -47,7 +50,7 @@ USE_ALTERNATIVES_FOR = " \
gprof \
ld \
ld.bfd \
- ld.gold dwp \
+ ${LDGOLD_ALTS} \
nm \
objcopy \
objdump \
@@ -128,12 +131,12 @@ do_install () {
# We don't really need these, so we'll remove them...
rm -rf ${D}${libdir}/ldscripts
+ bindir_rel=${@os.path.relpath('${bindir}', '${prefix}/${TARGET_SYS}/bin')}
+
# Fix the /usr/${TARGET_SYS}/bin/* links
for l in ${D}${prefix}/${TARGET_SYS}/bin/*; do
rm -f $l
- ln -sf `echo ${prefix}/${TARGET_SYS}/bin \
- | tr -s / \
- | sed -e 's,^/,,' -e 's,[^/]*,..,g'`${bindir}/${TARGET_PREFIX}`basename $l` $l
+ ln -sf $bindir_rel/${TARGET_PREFIX}`basename $l` $l
done
# Install the libiberty header
diff --git a/poky/meta/recipes-devtools/binutils/binutils/0001-Change-the-ARM-assembler-s-ADR-and-ADRl-pseudo-ops-s.patch b/poky/meta/recipes-devtools/binutils/binutils/0001-Change-the-ARM-assembler-s-ADR-and-ADRl-pseudo-ops-s.patch
deleted file mode 100644
index 8604e678d..000000000
--- a/poky/meta/recipes-devtools/binutils/binutils/0001-Change-the-ARM-assembler-s-ADR-and-ADRl-pseudo-ops-s.patch
+++ /dev/null
@@ -1,176 +0,0 @@
-From fc6141f097056f830a412afebed8d81a9d72b696 Mon Sep 17 00:00:00 2001
-From: Nick Clifton <nickc@redhat.com>
-Date: Wed, 20 Jun 2018 12:38:10 +0100
-Subject: [PATCH] Change the ARM assembler's ADR and ADRl pseudo-ops so that
- they will only set the bottom bit of imported thumb function symbols if the
- -mthumb-interwork option is active.
-
-For more information see the email thread starting here:
-https://www.sourceware.org/ml/binutils/2018-05/msg00348.html
-
- PR 21458
- * tc-arm.c (do_adr): Only set the bottom bit of an imported thumb
- function symbol address if -mthumb-interwork is active.
- (do_adrl): Likewise.
- * doc/c-arm.texi: Update descriptions of the -mthumb-interwork
- option and the ADR and ADRL pseudo-ops.
- * NEWS: Mention the new behaviour of the ADR and ADRL pseudo-ops.
- * testsuite/gas/arm/pr21458.d: Add -mthumb-interwork option to
- assembler command line.
- * testsuite/gas/arm/adr.d: Likewise.
- * testsuite/gas/arm/adrl.d: Likewise.
----
- gas/ChangeLog | 14 ++++++++++++++
- gas/NEWS | 4 ++++
- gas/config/tc-arm.c | 10 ++++++----
- gas/doc/c-arm.texi | 17 ++++++++++++++++-
- gas/testsuite/gas/arm/adr.d | 1 +
- gas/testsuite/gas/arm/adrl.d | 1 +
- gas/testsuite/gas/arm/pr21458.d | 3 ++-
- 7 files changed, 44 insertions(+), 6 deletions(-)
-
-Index: git/gas/config/tc-arm.c
-===================================================================
---- git.orig/gas/config/tc-arm.c
-+++ git/gas/config/tc-arm.c
-@@ -8410,11 +8410,12 @@ do_adr (void)
- inst.reloc.pc_rel = 1;
- inst.reloc.exp.X_add_number -= 8;
-
-- if (inst.reloc.exp.X_op == O_symbol
-+ if (support_interwork
-+ && inst.reloc.exp.X_op == O_symbol
- && inst.reloc.exp.X_add_symbol != NULL
- && S_IS_DEFINED (inst.reloc.exp.X_add_symbol)
- && THUMB_IS_FUNC (inst.reloc.exp.X_add_symbol))
-- inst.reloc.exp.X_add_number += 1;
-+ inst.reloc.exp.X_add_number |= 1;
- }
-
- /* This is a pseudo-op of the form "adrl rd, label" to be converted
-@@ -8434,11 +8435,12 @@ do_adrl (void)
- inst.size = INSN_SIZE * 2;
- inst.reloc.exp.X_add_number -= 8;
-
-- if (inst.reloc.exp.X_op == O_symbol
-+ if (support_interwork
-+ && inst.reloc.exp.X_op == O_symbol
- && inst.reloc.exp.X_add_symbol != NULL
- && S_IS_DEFINED (inst.reloc.exp.X_add_symbol)
- && THUMB_IS_FUNC (inst.reloc.exp.X_add_symbol))
-- inst.reloc.exp.X_add_number += 1;
-+ inst.reloc.exp.X_add_number |= 1;
- }
-
- static void
-Index: git/gas/doc/c-arm.texi
-===================================================================
---- git.orig/gas/doc/c-arm.texi
-+++ git/gas/doc/c-arm.texi
-@@ -317,7 +317,8 @@ instructions; that is, it should behave
- @cindex @code{-mthumb-interwork} command line option, ARM
- @item -mthumb-interwork
- This option specifies that the output generated by the assembler should
--be marked as supporting interworking.
-+be marked as supporting interworking. It also affects the behaviour
-+of the @code{ADR} and @code{ADRL} pseudo opcodes.
-
- @cindex @code{-mimplicit-it} command line option, ARM
- @item -mimplicit-it=never
-@@ -1060,6 +1061,16 @@ out of range, or if it is not defined in
- the ADR instruction, then an error will be generated. This instruction
- will not make use of the literal pool.
-
-+If @var{label} is a thumb function symbol, and thumb interworking has
-+been enabled via the @option{-mthumb-interwork} option then the bottom
-+bit of the value stored into @var{register} will be set. This allows
-+the following sequence to work as expected:
-+
-+@smallexample
-+ adr r0, thumb_function
-+ blx r0
-+@end smallexample
-+
- @cindex @code{ADRL reg,<label>} pseudo op, ARM
- @item ADRL
- @smallexample
-@@ -1076,6 +1087,10 @@ If the label is out of range, or if it i
- (and section) as the ADRL instruction, then an error will be generated.
- This instruction will not make use of the literal pool.
-
-+If @var{label} is a thumb function symbol, and thumb interworking has
-+been enabled via the @option{-mthumb-interwork} option then the bottom
-+bit of the value stored into @var{register} will be set.
-+
- @end table
-
- For information on the ARM or Thumb instruction sets, see @cite{ARM
-Index: git/gas/testsuite/gas/arm/adr.d
-===================================================================
---- git.orig/gas/testsuite/gas/arm/adr.d
-+++ git/gas/testsuite/gas/arm/adr.d
-@@ -1,3 +1,4 @@
-+#as: -mthumb-interwork
- #objdump: -dr --prefix-addresses --show-raw-insn
- #name: ADR
-
-Index: git/gas/testsuite/gas/arm/adrl.d
-===================================================================
---- git.orig/gas/testsuite/gas/arm/adrl.d
-+++ git/gas/testsuite/gas/arm/adrl.d
-@@ -1,3 +1,4 @@
-+#as: -mthumb-interwork
- #objdump: -dr --prefix-addresses --show-raw-insn
- #name: ADRL
-
-Index: git/gas/ChangeLog
-===================================================================
---- git.orig/gas/ChangeLog
-+++ git/gas/ChangeLog
-@@ -1,3 +1,17 @@
-+2018-06-20 Nick Clifton <nickc@redhat.com>
-+
-+ PR 21458
-+ * tc-arm.c (do_adr): Only set the bottom bit of an imported thumb
-+ function symbol address if -mthumb-interwork is active.
-+ (do_adrl): Likewise.
-+ * doc/c-arm.texi: Update descriptions of the -mthumb-interwork
-+ option and the ADR and ADRL pseudo-ops.
-+ * NEWS: Mention the new behaviour of the ADR and ADRL pseudo-ops.
-+ * testsuite/gas/arm/pr21458.d: Add -mthumb-interwork option to
-+ assembler command line.
-+ * testsuite/gas/arm/adr.d: Likewise.
-+ * testsuite/gas/arm/adrl.d: Likewise.
-+
- 2018-02-05 Nick Clifton <nickc@redhat.com>
-
- * po/ru.po: Updated Russian translation.
-Index: git/gas/NEWS
-===================================================================
---- git.orig/gas/NEWS
-+++ git/gas/NEWS
-@@ -1,5 +1,9 @@
- -*- text -*-
-
-+* The ADR and ADRL pseudo-instructions supported by the ARM assembler
-+ now only set the bottom bit of the address of thumb function symbols
-+ if the -mthumb-interwork command line option is active.
-+
- Changes in 2.30:
-
- * Add support for loaction views in DWARF debug line information.
-Index: git/gas/testsuite/gas/arm/pr21458.d
-===================================================================
---- git.orig/gas/testsuite/gas/arm/pr21458.d
-+++ git/gas/testsuite/gas/arm/pr21458.d
-@@ -1,8 +1,9 @@
-+#as: -mthumb-interwork
- #objdump: -d --prefix-addresses --show-raw-insn
- #name: ADR(L) for Thumb functions
- #skip: *-*-pe *-wince-* *-*-coff *-*-vxworks
-
--# Test that using ADR(L) on thumb function symbols sets the T bit.
-+# Test that using ADR(L) on thumb function symbols sets the T bit when -mthumb-interwork is active.
-
- .*: +file format .*arm.*
-
diff --git a/poky/meta/recipes-devtools/binutils/binutils/0001-binutils-crosssdk-Generate-relocatable-SDKs.patch b/poky/meta/recipes-devtools/binutils/binutils/0001-binutils-crosssdk-Generate-relocatable-SDKs.patch
index 2df836057..6bdb407b1 100644
--- a/poky/meta/recipes-devtools/binutils/binutils/0001-binutils-crosssdk-Generate-relocatable-SDKs.patch
+++ b/poky/meta/recipes-devtools/binutils/binutils/0001-binutils-crosssdk-Generate-relocatable-SDKs.patch
@@ -1,4 +1,4 @@
-From 2e1b5e24a6759de7f73aa6060a574848d9131b5a Mon Sep 17 00:00:00 2001
+From 4a99f058030c86794bb96b582a7dbd631f963b06 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Mon, 2 Mar 2015 01:58:54 +0000
Subject: [PATCH 01/15] binutils-crosssdk: Generate relocatable SDKs
@@ -18,10 +18,10 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
2 files changed, 5 insertions(+), 2 deletions(-)
diff --git a/ld/genscripts.sh b/ld/genscripts.sh
-index 8732422b3a..1f257e99ca 100755
+index 370b22269d..a5c367aa8f 100755
--- a/ld/genscripts.sh
+++ b/ld/genscripts.sh
-@@ -277,6 +277,7 @@ DATA_ALIGNMENT_u="${DATA_ALIGNMENT_u-${DATA_ALIGNMENT_r}}"
+@@ -279,6 +279,7 @@ DATA_ALIGNMENT_u="${DATA_ALIGNMENT_u-${DATA_ALIGNMENT_r}}"
LD_FLAG=r
DATA_ALIGNMENT=${DATA_ALIGNMENT_r}
DEFAULT_DATA_ALIGNMENT="ALIGN(${SEGMENT_SIZE})"
@@ -29,7 +29,7 @@ index 8732422b3a..1f257e99ca 100755
( echo "/* Script for ld -r: link without relocation */"
. ${CUSTOMIZER_SCRIPT}
. ${srcdir}/scripttempl/${SCRIPT_NAME}.sc
-@@ -285,10 +286,12 @@ DEFAULT_DATA_ALIGNMENT="ALIGN(${SEGMENT_SIZE})"
+@@ -287,10 +288,12 @@ DEFAULT_DATA_ALIGNMENT="ALIGN(${SEGMENT_SIZE})"
LD_FLAG=u
DATA_ALIGNMENT=${DATA_ALIGNMENT_u}
CONSTRUCTING=" "
@@ -43,7 +43,7 @@ index 8732422b3a..1f257e99ca 100755
DATA_ALIGNMENT=${DATA_ALIGNMENT_}
RELOCATING=" "
diff --git a/ld/scripttempl/elf.sc b/ld/scripttempl/elf.sc
-index 9787ab5dac..0c8a93c2c8 100644
+index 444aef2942..afa99f736d 100644
--- a/ld/scripttempl/elf.sc
+++ b/ld/scripttempl/elf.sc
@@ -139,8 +139,8 @@ if test -z "$DATA_SEGMENT_ALIGN"; then
@@ -58,5 +58,5 @@ index 9787ab5dac..0c8a93c2c8 100644
if test -z "$PLT"; then
IPLT=".iplt ${RELOCATING-0} : { *(.iplt) }"
--
-2.16.1
+2.18.0
diff --git a/poky/meta/recipes-devtools/binutils/binutils/0002-binutils-cross-Do-not-generate-linker-script-directo.patch b/poky/meta/recipes-devtools/binutils/binutils/0002-binutils-cross-Do-not-generate-linker-script-directo.patch
index bac7fb2d1..020821383 100644
--- a/poky/meta/recipes-devtools/binutils/binutils/0002-binutils-cross-Do-not-generate-linker-script-directo.patch
+++ b/poky/meta/recipes-devtools/binutils/binutils/0002-binutils-cross-Do-not-generate-linker-script-directo.patch
@@ -1,4 +1,4 @@
-From 58ddf38fa53abb48b69dd76e398c73451ad1a5eb Mon Sep 17 00:00:00 2001
+From 6e78b1c88c040a742b7af82542ac7eb92eddda3d Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Mon, 6 Mar 2017 23:37:05 -0800
Subject: [PATCH 02/15] binutils-cross: Do not generate linker script
@@ -19,14 +19,14 @@ RP 2017/01/30
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
- ld/genscripts.sh | 23 -----------------------
- 1 file changed, 23 deletions(-)
+ ld/genscripts.sh | 25 -------------------------
+ 1 file changed, 25 deletions(-)
diff --git a/ld/genscripts.sh b/ld/genscripts.sh
-index 1f257e99ca..1583b73a2b 100755
+index a5c367aa8f..6cc9eed976 100755
--- a/ld/genscripts.sh
+++ b/ld/genscripts.sh
-@@ -189,29 +189,6 @@ append_to_lib_path()
+@@ -189,31 +189,6 @@ append_to_lib_path()
fi
}
@@ -44,10 +44,12 @@ index 1f257e99ca..1583b73a2b 100755
- # because 64bit libraries may be in both places, depending on
- # cross-development setup method (e.g.: /usr/s390x-linux/lib64
- # vs. /usr/s390-linux/lib64)
-- case "${NATIVE}:${LIBPATH_SUFFIX}:${TOOL_LIB}" in
-- :* | *::* | *:*:*${LIBPATH_SUFFIX}) ;;
-- *) libs="${exec_prefix}/${target_alias}/lib${LIBPATH_SUFFIX}" ;;
-- esac
+- for libpath_suffix in ${LIBPATH_SUFFIX}; do
+- case "${NATIVE}:${libpath_suffix}:${TOOL_LIB}" in
+- :* | *::* | *:*:*${libpath_suffix}) ;;
+- *) libs="${exec_prefix}/${target_alias}/lib${libpath_suffix}" ;;
+- esac
+- done
- libs="${exec_prefix}/${TOOL_LIB}/lib ${libs}"
- fi
- append_to_lib_path ${libs}
@@ -57,5 +59,5 @@ index 1f257e99ca..1583b73a2b 100755
libs=${NATIVE_LIB_DIRS}
if [ "x${NATIVE}" = "xyes" ] ; then
--
-2.16.1
+2.18.0
diff --git a/poky/meta/recipes-devtools/binutils/binutils/0003-configure-widen-the-regexp-for-SH-architectures.patch b/poky/meta/recipes-devtools/binutils/binutils/0003-configure-widen-the-regexp-for-SH-architectures.patch
index 306afe701..15193c10a 100644
--- a/poky/meta/recipes-devtools/binutils/binutils/0003-configure-widen-the-regexp-for-SH-architectures.patch
+++ b/poky/meta/recipes-devtools/binutils/binutils/0003-configure-widen-the-regexp-for-SH-architectures.patch
@@ -1,4 +1,4 @@
-From 5089be88f670bcadf7db0e778894f900b2c05d7b Mon Sep 17 00:00:00 2001
+From 4c6fd8f5eb9bc7c0d02f1a98ad86e395d4d2ab3b Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Mon, 2 Mar 2015 01:07:33 +0000
Subject: [PATCH 03/15] configure: widen the regexp for SH architectures
@@ -14,10 +14,10 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
2 files changed, 6 insertions(+), 1 deletion(-)
diff --git a/configure b/configure
-index 2d615a9996..c4ad45c06c 100755
+index 08dd35c3ea..815e74ddb7 100755
--- a/configure
+++ b/configure
-@@ -3835,7 +3835,7 @@ case "${target}" in
+@@ -3855,7 +3855,7 @@ case "${target}" in
nvptx*-*-*)
noconfigdirs="$noconfigdirs target-libssp target-libstdc++-v3 target-libobjc"
;;
@@ -27,10 +27,10 @@ index 2d615a9996..c4ad45c06c 100755
sh*-*-elf)
;;
diff --git a/gprof/configure b/gprof/configure
-index 1e25102976..6b43bf2b18 100755
+index 447cea7884..a730e20509 100755
--- a/gprof/configure
+++ b/gprof/configure
-@@ -5874,6 +5874,11 @@ linux* | k*bsd*-gnu | kopensolaris*-gnu)
+@@ -6162,6 +6162,11 @@ linux* | k*bsd*-gnu | kopensolaris*-gnu)
lt_cv_deplibs_check_method=pass_all
;;
@@ -43,5 +43,5 @@ index 1e25102976..6b43bf2b18 100755
if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|_pic\.a)$'
--
-2.16.1
+2.18.0
diff --git a/poky/meta/recipes-devtools/binutils/binutils/0004-Point-scripts-location-to-libdir.patch b/poky/meta/recipes-devtools/binutils/binutils/0004-Point-scripts-location-to-libdir.patch
index 3e29c5815..bf1c1be27 100644
--- a/poky/meta/recipes-devtools/binutils/binutils/0004-Point-scripts-location-to-libdir.patch
+++ b/poky/meta/recipes-devtools/binutils/binutils/0004-Point-scripts-location-to-libdir.patch
@@ -1,4 +1,4 @@
-From a0e893ea094c48fa803046ffa89e31907aee0597 Mon Sep 17 00:00:00 2001
+From 48ad5292b10408d4e5d5739022753a7183a1cbb3 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Mon, 2 Mar 2015 01:09:58 +0000
Subject: [PATCH 04/15] Point scripts location to libdir
@@ -12,7 +12,7 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/ld/Makefile.am b/ld/Makefile.am
-index 6243c12528..3c5d6c8202 100644
+index d86ad0940c..c95b0ef025 100644
--- a/ld/Makefile.am
+++ b/ld/Makefile.am
@@ -57,7 +57,7 @@ endif
@@ -25,10 +25,10 @@ index 6243c12528..3c5d6c8202 100644
EMUL = @EMUL@
EMULATION_OFILES = @EMULATION_OFILES@
diff --git a/ld/Makefile.in b/ld/Makefile.in
-index 760c037f9d..6dea692869 100644
+index 4792b2b013..789df2d01b 100644
--- a/ld/Makefile.in
+++ b/ld/Makefile.in
-@@ -446,7 +446,7 @@ AM_CFLAGS = $(WARN_CFLAGS) $(ELF_CLFAGS)
+@@ -563,7 +563,7 @@ AM_CFLAGS = $(WARN_CFLAGS) $(ELF_CLFAGS)
# We put the scripts in the directory $(scriptdir)/ldscripts.
# We can't put the scripts in $(datadir) because the SEARCH_DIR
# directives need to be different for native and cross linkers.
@@ -38,5 +38,5 @@ index 760c037f9d..6dea692869 100644
BFDDIR = $(BASEDIR)/bfd
INCDIR = $(BASEDIR)/include
--
-2.16.1
+2.18.0
diff --git a/poky/meta/recipes-devtools/binutils/binutils/0005-Only-generate-an-RPATH-entry-if-LD_RUN_PATH-is-not-e.patch b/poky/meta/recipes-devtools/binutils/binutils/0005-Only-generate-an-RPATH-entry-if-LD_RUN_PATH-is-not-e.patch
index 2f4996937..1f589718e 100644
--- a/poky/meta/recipes-devtools/binutils/binutils/0005-Only-generate-an-RPATH-entry-if-LD_RUN_PATH-is-not-e.patch
+++ b/poky/meta/recipes-devtools/binutils/binutils/0005-Only-generate-an-RPATH-entry-if-LD_RUN_PATH-is-not-e.patch
@@ -1,4 +1,4 @@
-From 518abb195d0eb47d8eef581d7fd0a5fd9fa73f7d Mon Sep 17 00:00:00 2001
+From 79e53510b1f9e16a21db312698fb1c1c442481e7 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Mon, 2 Mar 2015 01:27:17 +0000
Subject: [PATCH 05/15] Only generate an RPATH entry if LD_RUN_PATH is not
@@ -15,10 +15,10 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
1 file changed, 4 insertions(+)
diff --git a/ld/emultempl/elf32.em b/ld/emultempl/elf32.em
-index c0925fc9b9..7d7670a89f 100644
+index 1ad9d6b6fa..6a025a45b4 100644
--- a/ld/emultempl/elf32.em
+++ b/ld/emultempl/elf32.em
-@@ -1470,6 +1470,8 @@ fragment <<EOF
+@@ -1471,6 +1471,8 @@ fragment <<EOF
&& command_line.rpath == NULL)
{
path = (const char *) getenv ("LD_RUN_PATH");
@@ -27,7 +27,7 @@ index c0925fc9b9..7d7670a89f 100644
if (path
&& gld${EMULATION_NAME}_search_needed (path, &n, force))
break;
-@@ -1750,6 +1752,8 @@ gld${EMULATION_NAME}_before_allocation (void)
+@@ -1751,6 +1753,8 @@ gld${EMULATION_NAME}_before_allocation (void)
rpath = command_line.rpath;
if (rpath == NULL)
rpath = (const char *) getenv ("LD_RUN_PATH");
@@ -37,5 +37,5 @@ index c0925fc9b9..7d7670a89f 100644
for (abfd = link_info.input_bfds; abfd; abfd = abfd->link.next)
if (bfd_get_flavour (abfd) == bfd_target_elf_flavour)
--
-2.16.1
+2.18.0
diff --git a/poky/meta/recipes-devtools/binutils/binutils/0006-Use-libtool-2.4.patch b/poky/meta/recipes-devtools/binutils/binutils/0006-Use-libtool-2.4.patch
index 333e2ee17..8550df0cb 100644
--- a/poky/meta/recipes-devtools/binutils/binutils/0006-Use-libtool-2.4.patch
+++ b/poky/meta/recipes-devtools/binutils/binutils/0006-Use-libtool-2.4.patch
@@ -1,4 +1,4 @@
-From fad053cc59baa6277182b0fc90415a214060ba99 Mon Sep 17 00:00:00 2001
+From 11f6d2889725ad592ab789534ca9b858073df4d1 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Sun, 14 Feb 2016 17:04:07 +0000
Subject: [PATCH 06/15] Use libtool 2.4
@@ -9,27 +9,27 @@ Upstream-Status: Pending
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
- bfd/configure | 1318 +++++++++++++++++------
+ bfd/configure | 1322 ++++++++++++++-----
bfd/configure.ac | 2 +-
- binutils/configure | 1316 +++++++++++++++++------
- gas/configure | 1314 +++++++++++++++++------
- gprof/configure | 1321 +++++++++++++++++------
- ld/configure | 1691 +++++++++++++++++++++--------
- libtool.m4 | 1080 +++++++++++++------
- ltmain.sh | 2925 +++++++++++++++++++++++++++++++++-----------------
+ binutils/configure | 1320 ++++++++++++++-----
+ gas/configure | 1320 ++++++++++++++-----
+ gprof/configure | 1327 ++++++++++++++-----
+ ld/configure | 1695 ++++++++++++++++++------
+ libtool.m4 | 1080 +++++++++++-----
+ ltmain.sh | 2925 ++++++++++++++++++++++++++++--------------
ltoptions.m4 | 2 +-
ltversion.m4 | 12 +-
lt~obsolete.m4 | 2 +-
- opcodes/configure | 1318 +++++++++++++++++------
+ opcodes/configure | 1322 ++++++++++++++-----
opcodes/configure.ac | 2 +-
- zlib/configure | 1316 +++++++++++++++++------
- 14 files changed, 9926 insertions(+), 3693 deletions(-)
+ zlib/configure | 1320 ++++++++++++++-----
+ 14 files changed, 9948 insertions(+), 3703 deletions(-)
-diff --git a/bfd/configure b/bfd/configure
-index 6c2b24ebe3..5fdd723b7f 100755
---- a/bfd/configure
-+++ b/bfd/configure
-@@ -672,6 +672,9 @@ OTOOL
+Index: git/bfd/configure
+===================================================================
+--- git.orig/bfd/configure
++++ git/bfd/configure
+@@ -704,6 +704,9 @@ OTOOL
LIPO
NMEDIT
DSYMUTIL
@@ -39,7 +39,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
OBJDUMP
LN_S
NM
-@@ -785,6 +788,7 @@ enable_static
+@@ -822,6 +825,7 @@ enable_static
with_pic
enable_fast_install
with_gnu_ld
@@ -47,7 +47,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
enable_libtool_lock
enable_plugins
enable_largefile
-@@ -1461,6 +1465,8 @@ Optional Packages:
+@@ -1504,6 +1508,8 @@ Optional Packages:
--with-pic try to use only PIC/non-PIC objects [default=use
both]
--with-gnu-ld assume the C compiler uses GNU ld [default=no]
@@ -56,7 +56,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
--with-mmap try using mmap for BFD input files if available
--with-separate-debug-dir=DIR
Look for global separate debug info in DIR
-@@ -5393,8 +5399,8 @@ esac
+@@ -5693,8 +5699,8 @@ esac
@@ -67,7 +67,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
-@@ -5434,7 +5440,7 @@ ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
+@@ -5734,7 +5740,7 @@ ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to print strings" >&5
$as_echo_n "checking how to print strings... " >&6; }
# Test print first, because it will be a builtin if present.
@@ -76,7 +76,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then
ECHO='print -r --'
elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then
-@@ -6120,8 +6126,8 @@ $as_echo_n "checking whether the shell understands some XSI constructs... " >&6;
+@@ -6420,8 +6426,8 @@ $as_echo_n "checking whether the shell u
# Try some XSI features
xsi_shell=no
( _lt_dummy="a/b/c"
@@ -87,13 +87,13 @@ index 6c2b24ebe3..5fdd723b7f 100755
&& eval 'test $(( 1 + 1 )) -eq 2 \
&& test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \
&& xsi_shell=yes
-@@ -6170,6 +6176,80 @@ esac
+@@ -6470,6 +6476,80 @@ esac
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to $host format" >&5
+$as_echo_n "checking how to convert $build file names to $host format... " >&6; }
-+if test "${lt_cv_to_host_file_cmd+set}" = set; then :
++if ${lt_cv_to_host_file_cmd+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ case $host in
@@ -140,7 +140,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to toolchain format" >&5
+$as_echo_n "checking how to convert $build file names to toolchain format... " >&6; }
-+if test "${lt_cv_to_tool_file_cmd+set}" = set; then :
++if ${lt_cv_to_tool_file_cmd+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ #assume ordinary cross tools, or native build.
@@ -167,8 +167,8 @@ index 6c2b24ebe3..5fdd723b7f 100755
+
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $LD option to reload object files" >&5
$as_echo_n "checking for $LD option to reload object files... " >&6; }
- if test "${lt_cv_ld_reload_flag+set}" = set; then :
-@@ -6186,6 +6266,11 @@ case $reload_flag in
+ if ${lt_cv_ld_reload_flag+:} false; then :
+@@ -6486,6 +6566,11 @@ case $reload_flag in
esac
reload_cmds='$LD$reload_flag -o $output$reload_objs'
case $host_os in
@@ -180,7 +180,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
darwin*)
if test "$GCC" = yes; then
reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs'
-@@ -6354,7 +6439,8 @@ mingw* | pw32*)
+@@ -6654,7 +6739,8 @@ mingw* | pw32*)
lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
lt_cv_file_magic_cmd='func_win32_libid'
else
@@ -190,7 +190,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
lt_cv_file_magic_cmd='$OBJDUMP -f'
fi
;;
-@@ -6508,6 +6594,21 @@ esac
+@@ -6808,6 +6894,21 @@ esac
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_deplibs_check_method" >&5
$as_echo "$lt_cv_deplibs_check_method" >&6; }
@@ -212,7 +212,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
file_magic_cmd=$lt_cv_file_magic_cmd
deplibs_check_method=$lt_cv_deplibs_check_method
test -z "$deplibs_check_method" && deplibs_check_method=unknown
-@@ -6521,11 +6622,164 @@ test -z "$deplibs_check_method" && deplibs_check_method=unknown
+@@ -6823,9 +6924,162 @@ test -z "$deplibs_check_method" && depli
@@ -226,8 +226,6 @@ index 6c2b24ebe3..5fdd723b7f 100755
+
+
+
-
-
if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args.
-set dummy ${ac_tool_prefix}ar; ac_word=$2
@@ -235,7 +233,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
+set dummy ${ac_tool_prefix}dlltool; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
-+if test "${ac_cv_prog_DLLTOOL+set}" = set; then :
++if ${ac_cv_prog_DLLTOOL+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$DLLTOOL"; then
@@ -247,7 +245,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
-+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
++ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_prog_DLLTOOL="${ac_tool_prefix}dlltool"
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
@@ -275,7 +273,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
+set dummy dlltool; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
-+if test "${ac_cv_prog_ac_ct_DLLTOOL+set}" = set; then :
++if ${ac_cv_prog_ac_ct_DLLTOOL+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$ac_ct_DLLTOOL"; then
@@ -287,7 +285,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
-+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
++ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_prog_ac_ct_DLLTOOL="dlltool"
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
@@ -335,7 +333,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to associate runtime and link libraries" >&5
+$as_echo_n "checking how to associate runtime and link libraries... " >&6; }
-+if test "${lt_cv_sharedlib_from_linklib_cmd+set}" = set; then :
++if ${lt_cv_sharedlib_from_linklib_cmd+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ lt_cv_sharedlib_from_linklib_cmd='unknown'
@@ -378,17 +376,17 @@ index 6c2b24ebe3..5fdd723b7f 100755
+set dummy $ac_tool_prefix$ac_prog; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
- if test "${ac_cv_prog_AR+set}" = set; then :
-@@ -6541,7 +6795,7 @@ do
+ if ${ac_cv_prog_AR+:} false; then :
+@@ -6841,7 +7095,7 @@ do
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_AR="${ac_tool_prefix}ar"
+ ac_cv_prog_AR="$ac_tool_prefix$ac_prog"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
-@@ -6561,11 +6815,15 @@ $as_echo "no" >&6; }
+@@ -6861,11 +7115,15 @@ $as_echo "no" >&6; }
fi
@@ -406,17 +404,17 @@ index 6c2b24ebe3..5fdd723b7f 100755
+set dummy $ac_prog; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
- if test "${ac_cv_prog_ac_ct_AR+set}" = set; then :
-@@ -6581,7 +6839,7 @@ do
+ if ${ac_cv_prog_ac_ct_AR+:} false; then :
+@@ -6881,7 +7139,7 @@ do
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_ac_ct_AR="ar"
+ ac_cv_prog_ac_ct_AR="$ac_prog"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
-@@ -6600,6 +6858,10 @@ else
+@@ -6900,6 +7158,10 @@ else
$as_echo "no" >&6; }
fi
@@ -427,7 +425,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
if test "x$ac_ct_AR" = x; then
AR="false"
else
-@@ -6611,16 +6873,72 @@ ac_tool_warned=yes ;;
+@@ -6911,16 +7173,72 @@ ac_tool_warned=yes ;;
esac
AR=$ac_ct_AR
fi
@@ -449,16 +447,16 @@ index 6c2b24ebe3..5fdd723b7f 100755
+
+
+
-+
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for archiver @FILE support" >&5
+$as_echo_n "checking for archiver @FILE support... " >&6; }
-+if test "${lt_cv_ar_at_file+set}" = set; then :
++if ${lt_cv_ar_at_file+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ lt_cv_ar_at_file=no
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
-+
+
+int
+main ()
+{
@@ -491,11 +489,11 @@ index 6c2b24ebe3..5fdd723b7f 100755
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
++
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ar_at_file" >&5
+$as_echo "$lt_cv_ar_at_file" >&6; }
-
++
+if test "x$lt_cv_ar_at_file" = xno; then
+ archiver_list_spec=
+else
@@ -504,7 +502,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
-@@ -6962,8 +7280,8 @@ esac
+@@ -7262,8 +7580,8 @@ esac
lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
# Transform an extracted symbol line into symbol name and symbol address
@@ -515,7 +513,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
# Handle CRLF in mingw tool chain
opt_cr=
-@@ -6999,6 +7317,7 @@ for ac_symprfx in "" "_"; do
+@@ -7299,6 +7617,7 @@ for ac_symprfx in "" "_"; do
else
lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[ ]\($symcode$symcode*\)[ ][ ]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
fi
@@ -523,7 +521,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
# Check to see that the pipe works correctly.
pipe_works=no
-@@ -7040,6 +7359,18 @@ _LT_EOF
+@@ -7340,6 +7659,18 @@ _LT_EOF
if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
cat <<_LT_EOF > conftest.$ac_ext
@@ -542,7 +540,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
#ifdef __cplusplus
extern "C" {
#endif
-@@ -7051,7 +7382,7 @@ _LT_EOF
+@@ -7351,7 +7682,7 @@ _LT_EOF
cat <<_LT_EOF >> conftest.$ac_ext
/* The mapping between symbol names and symbols. */
@@ -551,7 +549,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
const char *name;
void *address;
}
-@@ -7077,8 +7408,8 @@ static const void *lt_preloaded_setup() {
+@@ -7377,8 +7708,8 @@ static const void *lt_preloaded_setup()
_LT_EOF
# Now try linking the two files.
mv conftest.$ac_objext conftstm.$ac_objext
@@ -562,7 +560,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
LIBS="conftstm.$ac_objext"
CFLAGS="$CFLAGS$lt_prog_compiler_no_builtin_flag"
if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5
-@@ -7088,8 +7419,8 @@ _LT_EOF
+@@ -7388,8 +7719,8 @@ _LT_EOF
test $ac_status = 0; } && test -s conftest${ac_exeext}; then
pipe_works=yes
fi
@@ -573,7 +571,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
else
echo "cannot find nm_test_func in $nlist" >&5
fi
-@@ -7126,6 +7457,16 @@ else
+@@ -7426,6 +7757,20 @@ else
$as_echo "ok" >&6; }
fi
@@ -587,20 +585,17 @@ index 6c2b24ebe3..5fdd723b7f 100755
+
+
+
++
++
++
++
-@@ -7142,6 +7483,45 @@ fi
+@@ -7445,6 +7790,41 @@ fi
-+
-+
-+
-+
-+
-+
-+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sysroot" >&5
+$as_echo_n "checking for sysroot... " >&6; }
+
@@ -627,16 +622,19 @@ index 6c2b24ebe3..5fdd723b7f 100755
+ *)
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${with_libtool_sysroot}" >&5
+$as_echo "${with_libtool_sysroot}" >&6; }
-+ as_fn_error "The sysroot must be an absolute path." "$LINENO" 5
++ as_fn_error $? "The sysroot must be an absolute path." "$LINENO" 5
+ ;;
+esac
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${lt_sysroot:-no}" >&5
+$as_echo "${lt_sysroot:-no}" >&6; }
++
++
++
-
-@@ -7353,6 +7733,123 @@ esac
+ # Check whether --enable-libtool-lock was given.
+@@ -7653,6 +8033,123 @@ esac
need_locks="$enable_libtool_lock"
@@ -645,7 +643,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
+set dummy ${ac_tool_prefix}mt; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
-+if test "${ac_cv_prog_MANIFEST_TOOL+set}" = set; then :
++if ${ac_cv_prog_MANIFEST_TOOL+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$MANIFEST_TOOL"; then
@@ -657,7 +655,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
-+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
++ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_prog_MANIFEST_TOOL="${ac_tool_prefix}mt"
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
@@ -685,7 +683,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
+set dummy mt; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
-+if test "${ac_cv_prog_ac_ct_MANIFEST_TOOL+set}" = set; then :
++if ${ac_cv_prog_ac_ct_MANIFEST_TOOL+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$ac_ct_MANIFEST_TOOL"; then
@@ -697,7 +695,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
-+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
++ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_prog_ac_ct_MANIFEST_TOOL="mt"
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
@@ -735,7 +733,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
+test -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $MANIFEST_TOOL is a manifest tool" >&5
+$as_echo_n "checking if $MANIFEST_TOOL is a manifest tool... " >&6; }
-+if test "${lt_cv_path_mainfest_tool+set}" = set; then :
++if ${lt_cv_path_mainfest_tool+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ lt_cv_path_mainfest_tool=no
@@ -760,7 +758,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
case $host_os in
rhapsody* | darwin*)
-@@ -7916,6 +8413,8 @@ _LT_EOF
+@@ -8216,6 +8713,8 @@ _LT_EOF
$LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&5
echo "$AR cru libconftest.a conftest.o" >&5
$AR cru libconftest.a conftest.o 2>&5
@@ -769,7 +767,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
cat > conftest.c << _LT_EOF
int main() { return 0;}
_LT_EOF
-@@ -8080,7 +8579,8 @@ fi
+@@ -8380,7 +8879,8 @@ fi
LIBTOOL_DEPS="$ltmain"
# Always use our own libtool.
@@ -779,7 +777,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
-@@ -8169,7 +8669,7 @@ aix3*)
+@@ -8469,7 +8969,7 @@ aix3*)
esac
# Global variables:
@@ -788,7 +786,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
can_build_shared=yes
# All known linkers require a `.a' archive for static linking (except MSVC,
-@@ -8467,8 +8967,6 @@ fi
+@@ -8767,8 +9267,6 @@ fi
lt_prog_compiler_pic=
lt_prog_compiler_static=
@@ -797,7 +795,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
if test "$GCC" = yes; then
lt_prog_compiler_wl='-Wl,'
-@@ -8634,6 +9132,12 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
+@@ -8934,6 +9432,12 @@ $as_echo_n "checking for $compiler optio
lt_prog_compiler_pic='--shared'
lt_prog_compiler_static='--static'
;;
@@ -810,7 +808,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*)
# Portland Group compilers (*not* the Pentium gcc compiler,
# which looks to be a dead project)
-@@ -8696,7 +9200,7 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
+@@ -8996,7 +9500,7 @@ $as_echo_n "checking for $compiler optio
lt_prog_compiler_pic='-KPIC'
lt_prog_compiler_static='-Bstatic'
case $cc_basename in
@@ -819,7 +817,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
lt_prog_compiler_wl='-Qoption ld ';;
*)
lt_prog_compiler_wl='-Wl,';;
-@@ -8753,13 +9257,17 @@ case $host_os in
+@@ -9053,13 +9557,17 @@ case $host_os in
lt_prog_compiler_pic="$lt_prog_compiler_pic -DPIC"
;;
esac
@@ -832,7 +830,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5
+$as_echo_n "checking for $compiler option to produce PIC... " >&6; }
-+if test "${lt_cv_prog_compiler_pic+set}" = set; then :
++if ${lt_cv_prog_compiler_pic+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ lt_cv_prog_compiler_pic=$lt_prog_compiler_pic
@@ -843,7 +841,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
#
# Check to make sure the PIC flag actually works.
-@@ -8820,6 +9328,11 @@ fi
+@@ -9120,6 +9628,11 @@ fi
@@ -855,7 +853,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
#
# Check to make sure the static flag actually works.
#
-@@ -9170,7 +9683,8 @@ _LT_EOF
+@@ -9470,7 +9983,8 @@ _LT_EOF
allow_undefined_flag=unsupported
always_export_symbols=no
enable_shared_with_static_runtimes=yes
@@ -865,7 +863,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
-@@ -9269,12 +9783,12 @@ _LT_EOF
+@@ -9569,12 +10083,12 @@ _LT_EOF
whole_archive_flag_spec='--whole-archive$convenience --no-whole-archive'
hardcode_libdir_flag_spec=
hardcode_libdir_flag_spec_ld='-rpath $libdir'
@@ -880,7 +878,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
fi
;;
esac
-@@ -9288,8 +9802,8 @@ _LT_EOF
+@@ -9588,8 +10102,8 @@ _LT_EOF
archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
wlarc=
else
@@ -891,7 +889,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
fi
;;
-@@ -9307,8 +9821,8 @@ _LT_EOF
+@@ -9607,8 +10121,8 @@ _LT_EOF
_LT_EOF
elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
@@ -902,7 +900,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
else
ld_shlibs=no
fi
-@@ -9354,8 +9868,8 @@ _LT_EOF
+@@ -9654,8 +10168,8 @@ _LT_EOF
*)
if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
@@ -913,7 +911,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
else
ld_shlibs=no
fi
-@@ -9485,7 +9999,13 @@ _LT_EOF
+@@ -9785,7 +10299,13 @@ _LT_EOF
allow_undefined_flag='-berok'
# Determine the default libpath from the value encoded in an
# empty executable.
@@ -921,14 +919,14 @@ index 6c2b24ebe3..5fdd723b7f 100755
+ if test "${lt_cv_aix_libpath+set}" = set; then
+ aix_libpath=$lt_cv_aix_libpath
+else
-+ if test "${lt_cv_aix_libpath_+set}" = set; then :
++ if ${lt_cv_aix_libpath_+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
-@@ -9498,22 +10018,29 @@ main ()
+@@ -9798,22 +10318,29 @@ main ()
_ACEOF
if ac_fn_c_try_link "$LINENO"; then :
@@ -971,7 +969,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
archive_expsym_cmds='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
-@@ -9525,7 +10052,13 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9825,7 +10352,13 @@ if test -z "$aix_libpath"; then aix_libp
else
# Determine the default libpath from the value encoded in an
# empty executable.
@@ -979,14 +977,14 @@ index 6c2b24ebe3..5fdd723b7f 100755
+ if test "${lt_cv_aix_libpath+set}" = set; then
+ aix_libpath=$lt_cv_aix_libpath
+else
-+ if test "${lt_cv_aix_libpath_+set}" = set; then :
++ if ${lt_cv_aix_libpath_+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
-@@ -9538,22 +10071,29 @@ main ()
+@@ -9838,22 +10371,29 @@ main ()
_ACEOF
if ac_fn_c_try_link "$LINENO"; then :
@@ -1029,7 +1027,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
# Warning - without using the other run time loading flags,
-@@ -9598,20 +10138,63 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9898,20 +10438,63 @@ if test -z "$aix_libpath"; then aix_libp
# Microsoft Visual C++.
# hardcode_libdir_flag_spec is actually meaningless, as there is
# no search path for DLLs.
@@ -1107,7 +1105,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
;;
darwin* | rhapsody*)
-@@ -9672,7 +10255,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9972,7 +10555,7 @@ if test -z "$aix_libpath"; then aix_libp
# FreeBSD 3 and greater uses gcc -shared to do shared libraries.
freebsd* | dragonfly*)
@@ -1116,7 +1114,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
hardcode_libdir_flag_spec='-R$libdir'
hardcode_direct=yes
hardcode_shlibpath_var=no
-@@ -9680,7 +10263,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9980,7 +10563,7 @@ if test -z "$aix_libpath"; then aix_libp
hpux9*)
if test "$GCC" = yes; then
@@ -1125,7 +1123,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
else
archive_cmds='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
fi
-@@ -9696,7 +10279,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9996,7 +10579,7 @@ if test -z "$aix_libpath"; then aix_libp
hpux10*)
if test "$GCC" = yes && test "$with_gnu_ld" = no; then
@@ -1134,7 +1132,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
else
archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
fi
-@@ -9720,10 +10303,10 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -10020,10 +10603,10 @@ if test -z "$aix_libpath"; then aix_libp
archive_cmds='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
;;
ia64*)
@@ -1147,7 +1145,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
;;
esac
else
-@@ -9802,23 +10385,36 @@ fi
+@@ -10102,23 +10685,36 @@ fi
irix5* | irix6* | nonstopux*)
if test "$GCC" = yes; then
@@ -1162,7 +1160,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
+ # This should be the same for all languages, so no per-tag cache variable.
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $host_os linker accepts -exported_symbol" >&5
+$as_echo_n "checking whether the $host_os linker accepts -exported_symbol... " >&6; }
-+if test "${lt_cv_irix_exported_symbol+set}" = set; then :
++if ${lt_cv_irix_exported_symbol+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ save_LDFLAGS="$LDFLAGS"
@@ -1192,7 +1190,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
else
archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -exports_file $export_symbols -o $lib'
-@@ -9903,7 +10499,7 @@ rm -f core conftest.err conftest.$ac_objext \
+@@ -10203,7 +10799,7 @@ rm -f core conftest.err conftest.$ac_obj
osf4* | osf5*) # as osf3* with the addition of -msym flag
if test "$GCC" = yes; then
allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
@@ -1201,7 +1199,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
else
allow_undefined_flag=' -expect_unresolved \*'
-@@ -9922,9 +10518,9 @@ rm -f core conftest.err conftest.$ac_objext \
+@@ -10222,9 +10818,9 @@ rm -f core conftest.err conftest.$ac_obj
no_undefined_flag=' -z defs'
if test "$GCC" = yes; then
wlarc='${wl}'
@@ -1213,7 +1211,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
else
case `$CC -V 2>&1` in
*"Compilers 5.0"*)
-@@ -10500,8 +11096,9 @@ cygwin* | mingw* | pw32* | cegcc*)
+@@ -10800,8 +11396,9 @@ cygwin* | mingw* | pw32* | cegcc*)
need_version=no
need_lib_prefix=no
@@ -1225,7 +1223,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
library_names_spec='$libname.dll.a'
# DLL is installed to $(libdir)/../bin by postinstall_cmds
postinstall_cmds='base_file=`basename \${file}`~
-@@ -10534,13 +11131,71 @@ cygwin* | mingw* | pw32* | cegcc*)
+@@ -10834,13 +11431,71 @@ cygwin* | mingw* | pw32* | cegcc*)
library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
;;
esac
@@ -1298,7 +1296,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
# FIXME: first we should search . and the directory the executable is in
shlibpath_var=PATH
;;
-@@ -10632,7 +11287,7 @@ haiku*)
+@@ -10932,7 +11587,7 @@ haiku*)
soname_spec='${libname}${release}${shared_ext}$major'
shlibpath_var=LIBRARY_PATH
shlibpath_overrides_runpath=yes
@@ -1307,7 +1305,16 @@ index 6c2b24ebe3..5fdd723b7f 100755
hardcode_into_libs=yes
;;
-@@ -11472,10 +12127,10 @@ else
+@@ -11728,7 +12383,7 @@ else
+ lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
+ lt_status=$lt_dlunknown
+ cat > conftest.$ac_ext <<_LT_EOF
+-#line 11731 "configure"
++#line $LINENO "configure"
+ #include "confdefs.h"
+
+ #if HAVE_DLFCN_H
+@@ -11772,10 +12427,10 @@ else
/* When -fvisbility=hidden is used, assume the code has been annotated
correspondingly for the symbols needed. */
#if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
@@ -1320,7 +1327,16 @@ index 6c2b24ebe3..5fdd723b7f 100755
int main ()
{
void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
-@@ -11578,10 +12233,10 @@ else
+@@ -11834,7 +12489,7 @@ else
+ lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
+ lt_status=$lt_dlunknown
+ cat > conftest.$ac_ext <<_LT_EOF
+-#line 11837 "configure"
++#line $LINENO "configure"
+ #include "confdefs.h"
+
+ #if HAVE_DLFCN_H
+@@ -11878,10 +12533,10 @@ else
/* When -fvisbility=hidden is used, assume the code has been annotated
correspondingly for the symbols needed. */
#if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
@@ -1333,7 +1349,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
int main ()
{
void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
-@@ -14172,7 +14827,7 @@ SHARED_LDFLAGS=
+@@ -14525,7 +15180,7 @@ SHARED_LDFLAGS=
if test "$enable_shared" = "yes"; then
x=`sed -n -e 's/^[ ]*PICFLAG[ ]*=[ ]*//p' < ../libiberty/Makefile | sed -n '$p'`
if test -n "$x"; then
@@ -1342,7 +1358,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
fi
# More hacks to build DLLs on Windows.
-@@ -16879,13 +17534,20 @@ exeext='`$ECHO "$exeext" | $SED "$delay_single_quote_subst"`'
+@@ -17139,13 +17794,20 @@ exeext='`$ECHO "$exeext" | $SED "$delay_
lt_unset='`$ECHO "$lt_unset" | $SED "$delay_single_quote_subst"`'
lt_SP2NL='`$ECHO "$lt_SP2NL" | $SED "$delay_single_quote_subst"`'
lt_NL2SP='`$ECHO "$lt_NL2SP" | $SED "$delay_single_quote_subst"`'
@@ -1363,7 +1379,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
STRIP='`$ECHO "$STRIP" | $SED "$delay_single_quote_subst"`'
RANLIB='`$ECHO "$RANLIB" | $SED "$delay_single_quote_subst"`'
old_postinstall_cmds='`$ECHO "$old_postinstall_cmds" | $SED "$delay_single_quote_subst"`'
-@@ -16900,14 +17562,17 @@ lt_cv_sys_global_symbol_pipe='`$ECHO "$lt_cv_sys_global_symbol_pipe" | $SED "$de
+@@ -17160,14 +17822,17 @@ lt_cv_sys_global_symbol_pipe='`$ECHO "$l
lt_cv_sys_global_symbol_to_cdecl='`$ECHO "$lt_cv_sys_global_symbol_to_cdecl" | $SED "$delay_single_quote_subst"`'
lt_cv_sys_global_symbol_to_c_name_address='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address" | $SED "$delay_single_quote_subst"`'
lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address_lib_prefix" | $SED "$delay_single_quote_subst"`'
@@ -1382,7 +1398,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
DSYMUTIL='`$ECHO "$DSYMUTIL" | $SED "$delay_single_quote_subst"`'
NMEDIT='`$ECHO "$NMEDIT" | $SED "$delay_single_quote_subst"`'
LIPO='`$ECHO "$LIPO" | $SED "$delay_single_quote_subst"`'
-@@ -16940,12 +17605,12 @@ hardcode_shlibpath_var='`$ECHO "$hardcode_shlibpath_var" | $SED "$delay_single_q
+@@ -17200,12 +17865,12 @@ hardcode_shlibpath_var='`$ECHO "$hardcod
hardcode_automatic='`$ECHO "$hardcode_automatic" | $SED "$delay_single_quote_subst"`'
inherit_rpath='`$ECHO "$inherit_rpath" | $SED "$delay_single_quote_subst"`'
link_all_deplibs='`$ECHO "$link_all_deplibs" | $SED "$delay_single_quote_subst"`'
@@ -1396,7 +1412,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
file_list_spec='`$ECHO "$file_list_spec" | $SED "$delay_single_quote_subst"`'
variables_saved_for_relink='`$ECHO "$variables_saved_for_relink" | $SED "$delay_single_quote_subst"`'
need_lib_prefix='`$ECHO "$need_lib_prefix" | $SED "$delay_single_quote_subst"`'
-@@ -17000,8 +17665,13 @@ reload_flag \
+@@ -17260,8 +17925,13 @@ reload_flag \
OBJDUMP \
deplibs_check_method \
file_magic_cmd \
@@ -1410,7 +1426,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
STRIP \
RANLIB \
CC \
-@@ -17011,12 +17681,14 @@ lt_cv_sys_global_symbol_pipe \
+@@ -17271,12 +17941,14 @@ lt_cv_sys_global_symbol_pipe \
lt_cv_sys_global_symbol_to_cdecl \
lt_cv_sys_global_symbol_to_c_name_address \
lt_cv_sys_global_symbol_to_c_name_address_lib_prefix \
@@ -1426,7 +1442,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
DSYMUTIL \
NMEDIT \
LIPO \
-@@ -17032,7 +17704,6 @@ no_undefined_flag \
+@@ -17292,7 +17964,6 @@ no_undefined_flag \
hardcode_libdir_flag_spec \
hardcode_libdir_flag_spec_ld \
hardcode_libdir_separator \
@@ -1434,7 +1450,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
exclude_expsyms \
include_expsyms \
file_list_spec \
-@@ -17068,6 +17739,7 @@ module_cmds \
+@@ -17328,6 +17999,7 @@ module_cmds \
module_expsym_cmds \
export_symbols_cmds \
prelink_cmds \
@@ -1442,7 +1458,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
postinstall_cmds \
postuninstall_cmds \
finish_cmds \
-@@ -17847,7 +18519,8 @@ $as_echo X"$file" |
+@@ -18116,7 +18788,8 @@ $as_echo X"$file" |
# NOTE: Changes made to this file will be lost: look at ltmain.sh.
#
# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
@@ -1452,7 +1468,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
# Written by Gordon Matzigkeit, 1996
#
# This file is part of GNU Libtool.
-@@ -17950,19 +18623,42 @@ SP2NL=$lt_lt_SP2NL
+@@ -18219,19 +18892,42 @@ SP2NL=$lt_lt_SP2NL
# turn newlines into spaces.
NL2SP=$lt_lt_NL2SP
@@ -1496,7 +1512,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
# A symbol stripping program.
STRIP=$lt_STRIP
-@@ -17992,6 +18688,12 @@ global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address
+@@ -18261,6 +18957,12 @@ global_symbol_to_c_name_address=$lt_lt_c
# Transform the output of nm in a C name address pair when lib prefix is needed.
global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix
@@ -1509,7 +1525,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
# The name of the directory that contains temporary libtool files.
objdir=$objdir
-@@ -18001,6 +18703,9 @@ MAGIC_CMD=$MAGIC_CMD
+@@ -18270,6 +18972,9 @@ MAGIC_CMD=$MAGIC_CMD
# Must we lock files when doing compilation?
need_locks=$lt_need_locks
@@ -1519,7 +1535,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
# Tool to manipulate archived DWARF debug symbol files on Mac OS X.
DSYMUTIL=$lt_DSYMUTIL
-@@ -18115,12 +18820,12 @@ with_gcc=$GCC
+@@ -18384,12 +19089,12 @@ with_gcc=$GCC
# Compiler flag to turn off builtin functions.
no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag
@@ -1535,7 +1551,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
# Compiler flag to prevent dynamic linking.
link_static_flag=$lt_lt_prog_compiler_static
-@@ -18207,9 +18912,6 @@ inherit_rpath=$inherit_rpath
+@@ -18476,9 +19181,6 @@ inherit_rpath=$inherit_rpath
# Whether libtool must link a program against all its dependency libraries.
link_all_deplibs=$link_all_deplibs
@@ -1545,7 +1561,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
# Set to "yes" if exported symbols are required.
always_export_symbols=$always_export_symbols
-@@ -18225,6 +18927,9 @@ include_expsyms=$lt_include_expsyms
+@@ -18494,6 +19196,9 @@ include_expsyms=$lt_include_expsyms
# Commands necessary for linking programs (against libraries) with templates.
prelink_cmds=$lt_prelink_cmds
@@ -1555,7 +1571,7 @@ index 6c2b24ebe3..5fdd723b7f 100755
# Specify filename containing input files.
file_list_spec=$lt_file_list_spec
-@@ -18257,210 +18962,169 @@ ltmain="$ac_aux_dir/ltmain.sh"
+@@ -18526,210 +19231,169 @@ ltmain="$ac_aux_dir/ltmain.sh"
# if finds mixed CR/LF and LF-only lines. Since sed operates in
# text mode, it properly converts lines to CR/LF. This bash problem
# is reportedly fixed, but why not run on old versions too?
@@ -1757,15 +1773,9 @@ index 6c2b24ebe3..5fdd723b7f 100755
-_LT_EOF
- ;;
- esac
--
--
-- sed -n '/^# Generated shell functions inserted here/,$p' "$ltmain" >> "$cfgfile" \
-- || (rm -f "$cfgfile"; exit 1)
--
-- mv -f "$cfgfile" "$ofile" ||
+ sed '$q' "$ltmain" >> "$cfgfile" \
+ || (rm -f "$cfgfile"; exit 1)
-+
+
+ if test x"$xsi_shell" = xyes; then
+ sed -e '/^func_dirname ()$/,/^} # func_dirname /c\
+func_dirname ()\
@@ -1923,17 +1933,20 @@ index 6c2b24ebe3..5fdd723b7f 100755
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Unable to substitute extended shell functions in $ofile" >&5
+$as_echo "$as_me: WARNING: Unable to substitute extended shell functions in $ofile" >&2;}
+fi
-+
-+
+
+- sed -n '/^# Generated shell functions inserted here/,$p' "$ltmain" >> "$cfgfile" \
+- || (rm -f "$cfgfile"; exit 1)
+
+- mv -f "$cfgfile" "$ofile" ||
+ mv -f "$cfgfile" "$ofile" ||
(rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
chmod +x "$ofile"
-diff --git a/bfd/configure.ac b/bfd/configure.ac
-index 2342f3faea..a6451fccda 100644
---- a/bfd/configure.ac
-+++ b/bfd/configure.ac
-@@ -254,7 +254,7 @@ changequote(,)dnl
+Index: git/bfd/configure.ac
+===================================================================
+--- git.orig/bfd/configure.ac
++++ git/bfd/configure.ac
+@@ -293,7 +293,7 @@ changequote(,)dnl
x=`sed -n -e 's/^[ ]*PICFLAG[ ]*=[ ]*//p' < ../libiberty/Makefile | sed -n '$p'`
changequote([,])dnl
if test -n "$x"; then
@@ -1942,11 +1955,11 @@ index 2342f3faea..a6451fccda 100644
fi
# More hacks to build DLLs on Windows.
-diff --git a/binutils/configure b/binutils/configure
-index 5d9c9105a7..a65b2b4518 100755
---- a/binutils/configure
-+++ b/binutils/configure
-@@ -659,8 +659,11 @@ OTOOL
+Index: git/binutils/configure
+===================================================================
+--- git.orig/binutils/configure
++++ git/binutils/configure
+@@ -688,8 +688,11 @@ OTOOL
LIPO
NMEDIT
DSYMUTIL
@@ -1958,7 +1971,7 @@ index 5d9c9105a7..a65b2b4518 100755
OBJDUMP
LN_S
NM
-@@ -772,6 +775,7 @@ enable_static
+@@ -806,6 +809,7 @@ enable_static
with_pic
enable_fast_install
with_gnu_ld
@@ -1966,7 +1979,7 @@ index 5d9c9105a7..a65b2b4518 100755
enable_libtool_lock
enable_plugins
enable_largefile
-@@ -1444,6 +1448,8 @@ Optional Packages:
+@@ -1482,6 +1486,8 @@ Optional Packages:
--with-pic try to use only PIC/non-PIC objects [default=use
both]
--with-gnu-ld assume the C compiler uses GNU ld [default=no]
@@ -1975,7 +1988,7 @@ index 5d9c9105a7..a65b2b4518 100755
--with-system-zlib use installed libz
--with-gnu-ld assume the C compiler uses GNU ld default=no
--with-libiconv-prefix[=DIR] search for libiconv in DIR/include and DIR/lib
-@@ -5160,8 +5166,8 @@ esac
+@@ -5453,8 +5459,8 @@ esac
@@ -1986,7 +1999,7 @@ index 5d9c9105a7..a65b2b4518 100755
-@@ -5201,7 +5207,7 @@ ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
+@@ -5494,7 +5500,7 @@ ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to print strings" >&5
$as_echo_n "checking how to print strings... " >&6; }
# Test print first, because it will be a builtin if present.
@@ -1995,7 +2008,7 @@ index 5d9c9105a7..a65b2b4518 100755
test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then
ECHO='print -r --'
elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then
-@@ -5887,8 +5893,8 @@ $as_echo_n "checking whether the shell understands some XSI constructs... " >&6;
+@@ -6180,8 +6186,8 @@ $as_echo_n "checking whether the shell u
# Try some XSI features
xsi_shell=no
( _lt_dummy="a/b/c"
@@ -2006,13 +2019,13 @@ index 5d9c9105a7..a65b2b4518 100755
&& eval 'test $(( 1 + 1 )) -eq 2 \
&& test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \
&& xsi_shell=yes
-@@ -5937,6 +5943,80 @@ esac
+@@ -6230,6 +6236,80 @@ esac
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to $host format" >&5
+$as_echo_n "checking how to convert $build file names to $host format... " >&6; }
-+if test "${lt_cv_to_host_file_cmd+set}" = set; then :
++if ${lt_cv_to_host_file_cmd+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ case $host in
@@ -2059,7 +2072,7 @@ index 5d9c9105a7..a65b2b4518 100755
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to toolchain format" >&5
+$as_echo_n "checking how to convert $build file names to toolchain format... " >&6; }
-+if test "${lt_cv_to_tool_file_cmd+set}" = set; then :
++if ${lt_cv_to_tool_file_cmd+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ #assume ordinary cross tools, or native build.
@@ -2086,8 +2099,8 @@ index 5d9c9105a7..a65b2b4518 100755
+
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $LD option to reload object files" >&5
$as_echo_n "checking for $LD option to reload object files... " >&6; }
- if test "${lt_cv_ld_reload_flag+set}" = set; then :
-@@ -5953,6 +6033,11 @@ case $reload_flag in
+ if ${lt_cv_ld_reload_flag+:} false; then :
+@@ -6246,6 +6326,11 @@ case $reload_flag in
esac
reload_cmds='$LD$reload_flag -o $output$reload_objs'
case $host_os in
@@ -2099,7 +2112,7 @@ index 5d9c9105a7..a65b2b4518 100755
darwin*)
if test "$GCC" = yes; then
reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs'
-@@ -6121,7 +6206,8 @@ mingw* | pw32*)
+@@ -6414,7 +6499,8 @@ mingw* | pw32*)
lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
lt_cv_file_magic_cmd='func_win32_libid'
else
@@ -2109,7 +2122,7 @@ index 5d9c9105a7..a65b2b4518 100755
lt_cv_file_magic_cmd='$OBJDUMP -f'
fi
;;
-@@ -6275,6 +6361,21 @@ esac
+@@ -6568,6 +6654,21 @@ esac
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_deplibs_check_method" >&5
$as_echo "$lt_cv_deplibs_check_method" >&6; }
@@ -2131,7 +2144,7 @@ index 5d9c9105a7..a65b2b4518 100755
file_magic_cmd=$lt_cv_file_magic_cmd
deplibs_check_method=$lt_cv_deplibs_check_method
test -z "$deplibs_check_method" && deplibs_check_method=unknown
-@@ -6290,9 +6391,162 @@ test -z "$deplibs_check_method" && deplibs_check_method=unknown
+@@ -6583,9 +6684,162 @@ test -z "$deplibs_check_method" && depli
@@ -2150,7 +2163,7 @@ index 5d9c9105a7..a65b2b4518 100755
+set dummy ${ac_tool_prefix}dlltool; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
-+if test "${ac_cv_prog_DLLTOOL+set}" = set; then :
++if ${ac_cv_prog_DLLTOOL+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$DLLTOOL"; then
@@ -2162,7 +2175,7 @@ index 5d9c9105a7..a65b2b4518 100755
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
-+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
++ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_prog_DLLTOOL="${ac_tool_prefix}dlltool"
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
@@ -2190,7 +2203,7 @@ index 5d9c9105a7..a65b2b4518 100755
+set dummy dlltool; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
-+if test "${ac_cv_prog_ac_ct_DLLTOOL+set}" = set; then :
++if ${ac_cv_prog_ac_ct_DLLTOOL+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$ac_ct_DLLTOOL"; then
@@ -2202,7 +2215,7 @@ index 5d9c9105a7..a65b2b4518 100755
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
-+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
++ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_prog_ac_ct_DLLTOOL="dlltool"
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
@@ -2250,7 +2263,7 @@ index 5d9c9105a7..a65b2b4518 100755
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to associate runtime and link libraries" >&5
+$as_echo_n "checking how to associate runtime and link libraries... " >&6; }
-+if test "${lt_cv_sharedlib_from_linklib_cmd+set}" = set; then :
++if ${lt_cv_sharedlib_from_linklib_cmd+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ lt_cv_sharedlib_from_linklib_cmd='unknown'
@@ -2295,17 +2308,17 @@ index 5d9c9105a7..a65b2b4518 100755
+set dummy $ac_tool_prefix$ac_prog; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
- if test "${ac_cv_prog_AR+set}" = set; then :
-@@ -6308,7 +6562,7 @@ do
+ if ${ac_cv_prog_AR+:} false; then :
+@@ -6601,7 +6855,7 @@ do
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_AR="${ac_tool_prefix}ar"
+ ac_cv_prog_AR="$ac_tool_prefix$ac_prog"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
-@@ -6328,11 +6582,15 @@ $as_echo "no" >&6; }
+@@ -6621,11 +6875,15 @@ $as_echo "no" >&6; }
fi
@@ -2323,17 +2336,17 @@ index 5d9c9105a7..a65b2b4518 100755
+set dummy $ac_prog; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
- if test "${ac_cv_prog_ac_ct_AR+set}" = set; then :
-@@ -6348,7 +6606,7 @@ do
+ if ${ac_cv_prog_ac_ct_AR+:} false; then :
+@@ -6641,7 +6899,7 @@ do
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_ac_ct_AR="ar"
+ ac_cv_prog_ac_ct_AR="$ac_prog"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
-@@ -6367,6 +6625,10 @@ else
+@@ -6660,6 +6918,10 @@ else
$as_echo "no" >&6; }
fi
@@ -2344,7 +2357,7 @@ index 5d9c9105a7..a65b2b4518 100755
if test "x$ac_ct_AR" = x; then
AR="false"
else
-@@ -6378,12 +6640,10 @@ ac_tool_warned=yes ;;
+@@ -6671,12 +6933,10 @@ ac_tool_warned=yes ;;
esac
AR=$ac_ct_AR
fi
@@ -2359,13 +2372,13 @@ index 5d9c9105a7..a65b2b4518 100755
-@@ -6395,6 +6655,64 @@ test -z "$AR_FLAGS" && AR_FLAGS=cru
+@@ -6688,6 +6948,64 @@ test -z "$AR_FLAGS" && AR_FLAGS=cru
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for archiver @FILE support" >&5
+$as_echo_n "checking for archiver @FILE support... " >&6; }
-+if test "${lt_cv_ar_at_file+set}" = set; then :
++if ${lt_cv_ar_at_file+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ lt_cv_ar_at_file=no
@@ -2424,7 +2437,7 @@ index 5d9c9105a7..a65b2b4518 100755
if test -n "$ac_tool_prefix"; then
# Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
set dummy ${ac_tool_prefix}strip; ac_word=$2
-@@ -6729,8 +7047,8 @@ esac
+@@ -7022,8 +7340,8 @@ esac
lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
# Transform an extracted symbol line into symbol name and symbol address
@@ -2435,7 +2448,7 @@ index 5d9c9105a7..a65b2b4518 100755
# Handle CRLF in mingw tool chain
opt_cr=
-@@ -6766,6 +7084,7 @@ for ac_symprfx in "" "_"; do
+@@ -7059,6 +7377,7 @@ for ac_symprfx in "" "_"; do
else
lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[ ]\($symcode$symcode*\)[ ][ ]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
fi
@@ -2443,7 +2456,7 @@ index 5d9c9105a7..a65b2b4518 100755
# Check to see that the pipe works correctly.
pipe_works=no
-@@ -6807,6 +7126,18 @@ _LT_EOF
+@@ -7100,6 +7419,18 @@ _LT_EOF
if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
cat <<_LT_EOF > conftest.$ac_ext
@@ -2462,7 +2475,7 @@ index 5d9c9105a7..a65b2b4518 100755
#ifdef __cplusplus
extern "C" {
#endif
-@@ -6818,7 +7149,7 @@ _LT_EOF
+@@ -7111,7 +7442,7 @@ _LT_EOF
cat <<_LT_EOF >> conftest.$ac_ext
/* The mapping between symbol names and symbols. */
@@ -2471,7 +2484,7 @@ index 5d9c9105a7..a65b2b4518 100755
const char *name;
void *address;
}
-@@ -6844,8 +7175,8 @@ static const void *lt_preloaded_setup() {
+@@ -7137,8 +7468,8 @@ static const void *lt_preloaded_setup()
_LT_EOF
# Now try linking the two files.
mv conftest.$ac_objext conftstm.$ac_objext
@@ -2482,7 +2495,7 @@ index 5d9c9105a7..a65b2b4518 100755
LIBS="conftstm.$ac_objext"
CFLAGS="$CFLAGS$lt_prog_compiler_no_builtin_flag"
if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5
-@@ -6855,8 +7186,8 @@ _LT_EOF
+@@ -7148,8 +7479,8 @@ _LT_EOF
test $ac_status = 0; } && test -s conftest${ac_exeext}; then
pipe_works=yes
fi
@@ -2493,7 +2506,7 @@ index 5d9c9105a7..a65b2b4518 100755
else
echo "cannot find nm_test_func in $nlist" >&5
fi
-@@ -6893,6 +7224,21 @@ else
+@@ -7186,6 +7517,18 @@ else
$as_echo "ok" >&6; }
fi
@@ -2509,18 +2522,13 @@ index 5d9c9105a7..a65b2b4518 100755
+
+
+
-+
-+
-+
-@@ -6908,6 +7254,40 @@ fi
+@@ -7207,6 +7550,43 @@ fi
-+
-+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sysroot" >&5
+$as_echo_n "checking for sysroot... " >&6; }
+
@@ -2547,16 +2555,21 @@ index 5d9c9105a7..a65b2b4518 100755
+ *)
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${with_libtool_sysroot}" >&5
+$as_echo "${with_libtool_sysroot}" >&6; }
-+ as_fn_error "The sysroot must be an absolute path." "$LINENO" 5
++ as_fn_error $? "The sysroot must be an absolute path." "$LINENO" 5
+ ;;
+esac
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${lt_sysroot:-no}" >&5
+$as_echo "${lt_sysroot:-no}" >&6; }
-
-
-
-@@ -7120,6 +7500,123 @@ esac
++
++
++
++
++
+ # Check whether --enable-libtool-lock was given.
+ if test "${enable_libtool_lock+set}" = set; then :
+ enableval=$enable_libtool_lock;
+@@ -7413,6 +7793,123 @@ esac
need_locks="$enable_libtool_lock"
@@ -2565,7 +2578,7 @@ index 5d9c9105a7..a65b2b4518 100755
+set dummy ${ac_tool_prefix}mt; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
-+if test "${ac_cv_prog_MANIFEST_TOOL+set}" = set; then :
++if ${ac_cv_prog_MANIFEST_TOOL+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$MANIFEST_TOOL"; then
@@ -2577,7 +2590,7 @@ index 5d9c9105a7..a65b2b4518 100755
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
-+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
++ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_prog_MANIFEST_TOOL="${ac_tool_prefix}mt"
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
@@ -2605,7 +2618,7 @@ index 5d9c9105a7..a65b2b4518 100755
+set dummy mt; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
-+if test "${ac_cv_prog_ac_ct_MANIFEST_TOOL+set}" = set; then :
++if ${ac_cv_prog_ac_ct_MANIFEST_TOOL+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$ac_ct_MANIFEST_TOOL"; then
@@ -2617,7 +2630,7 @@ index 5d9c9105a7..a65b2b4518 100755
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
-+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
++ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_prog_ac_ct_MANIFEST_TOOL="mt"
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
@@ -2655,7 +2668,7 @@ index 5d9c9105a7..a65b2b4518 100755
+test -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $MANIFEST_TOOL is a manifest tool" >&5
+$as_echo_n "checking if $MANIFEST_TOOL is a manifest tool... " >&6; }
-+if test "${lt_cv_path_mainfest_tool+set}" = set; then :
++if ${lt_cv_path_mainfest_tool+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ lt_cv_path_mainfest_tool=no
@@ -2680,7 +2693,7 @@ index 5d9c9105a7..a65b2b4518 100755
case $host_os in
rhapsody* | darwin*)
-@@ -7683,6 +8180,8 @@ _LT_EOF
+@@ -7976,6 +8473,8 @@ _LT_EOF
$LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&5
echo "$AR cru libconftest.a conftest.o" >&5
$AR cru libconftest.a conftest.o 2>&5
@@ -2689,7 +2702,7 @@ index 5d9c9105a7..a65b2b4518 100755
cat > conftest.c << _LT_EOF
int main() { return 0;}
_LT_EOF
-@@ -7878,7 +8377,8 @@ fi
+@@ -8171,7 +8670,8 @@ fi
LIBTOOL_DEPS="$ltmain"
# Always use our own libtool.
@@ -2699,7 +2712,7 @@ index 5d9c9105a7..a65b2b4518 100755
-@@ -7967,7 +8467,7 @@ aix3*)
+@@ -8260,7 +8760,7 @@ aix3*)
esac
# Global variables:
@@ -2708,7 +2721,7 @@ index 5d9c9105a7..a65b2b4518 100755
can_build_shared=yes
# All known linkers require a `.a' archive for static linking (except MSVC,
-@@ -8265,8 +8765,6 @@ fi
+@@ -8558,8 +9058,6 @@ fi
lt_prog_compiler_pic=
lt_prog_compiler_static=
@@ -2717,7 +2730,7 @@ index 5d9c9105a7..a65b2b4518 100755
if test "$GCC" = yes; then
lt_prog_compiler_wl='-Wl,'
-@@ -8432,6 +8930,12 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
+@@ -8725,6 +9223,12 @@ $as_echo_n "checking for $compiler optio
lt_prog_compiler_pic='--shared'
lt_prog_compiler_static='--static'
;;
@@ -2730,7 +2743,7 @@ index 5d9c9105a7..a65b2b4518 100755
pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*)
# Portland Group compilers (*not* the Pentium gcc compiler,
# which looks to be a dead project)
-@@ -8494,7 +8998,7 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
+@@ -8787,7 +9291,7 @@ $as_echo_n "checking for $compiler optio
lt_prog_compiler_pic='-KPIC'
lt_prog_compiler_static='-Bstatic'
case $cc_basename in
@@ -2739,7 +2752,7 @@ index 5d9c9105a7..a65b2b4518 100755
lt_prog_compiler_wl='-Qoption ld ';;
*)
lt_prog_compiler_wl='-Wl,';;
-@@ -8551,13 +9055,17 @@ case $host_os in
+@@ -8844,13 +9348,17 @@ case $host_os in
lt_prog_compiler_pic="$lt_prog_compiler_pic -DPIC"
;;
esac
@@ -2752,7 +2765,7 @@ index 5d9c9105a7..a65b2b4518 100755
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5
+$as_echo_n "checking for $compiler option to produce PIC... " >&6; }
-+if test "${lt_cv_prog_compiler_pic+set}" = set; then :
++if ${lt_cv_prog_compiler_pic+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ lt_cv_prog_compiler_pic=$lt_prog_compiler_pic
@@ -2763,7 +2776,7 @@ index 5d9c9105a7..a65b2b4518 100755
#
# Check to make sure the PIC flag actually works.
-@@ -8618,6 +9126,11 @@ fi
+@@ -8911,6 +9419,11 @@ fi
@@ -2775,7 +2788,7 @@ index 5d9c9105a7..a65b2b4518 100755
#
# Check to make sure the static flag actually works.
#
-@@ -8968,7 +9481,8 @@ _LT_EOF
+@@ -9261,7 +9774,8 @@ _LT_EOF
allow_undefined_flag=unsupported
always_export_symbols=no
enable_shared_with_static_runtimes=yes
@@ -2785,7 +2798,7 @@ index 5d9c9105a7..a65b2b4518 100755
if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
-@@ -9067,12 +9581,12 @@ _LT_EOF
+@@ -9360,12 +9874,12 @@ _LT_EOF
whole_archive_flag_spec='--whole-archive$convenience --no-whole-archive'
hardcode_libdir_flag_spec=
hardcode_libdir_flag_spec_ld='-rpath $libdir'
@@ -2800,7 +2813,7 @@ index 5d9c9105a7..a65b2b4518 100755
fi
;;
esac
-@@ -9086,8 +9600,8 @@ _LT_EOF
+@@ -9379,8 +9893,8 @@ _LT_EOF
archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
wlarc=
else
@@ -2811,7 +2824,7 @@ index 5d9c9105a7..a65b2b4518 100755
fi
;;
-@@ -9105,8 +9619,8 @@ _LT_EOF
+@@ -9398,8 +9912,8 @@ _LT_EOF
_LT_EOF
elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
@@ -2822,7 +2835,7 @@ index 5d9c9105a7..a65b2b4518 100755
else
ld_shlibs=no
fi
-@@ -9152,8 +9666,8 @@ _LT_EOF
+@@ -9445,8 +9959,8 @@ _LT_EOF
*)
if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
@@ -2833,7 +2846,7 @@ index 5d9c9105a7..a65b2b4518 100755
else
ld_shlibs=no
fi
-@@ -9283,7 +9797,13 @@ _LT_EOF
+@@ -9576,7 +10090,13 @@ _LT_EOF
allow_undefined_flag='-berok'
# Determine the default libpath from the value encoded in an
# empty executable.
@@ -2841,14 +2854,14 @@ index 5d9c9105a7..a65b2b4518 100755
+ if test "${lt_cv_aix_libpath+set}" = set; then
+ aix_libpath=$lt_cv_aix_libpath
+else
-+ if test "${lt_cv_aix_libpath_+set}" = set; then :
++ if ${lt_cv_aix_libpath_+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
-@@ -9296,22 +9816,29 @@ main ()
+@@ -9589,22 +10109,29 @@ main ()
_ACEOF
if ac_fn_c_try_link "$LINENO"; then :
@@ -2891,7 +2904,7 @@ index 5d9c9105a7..a65b2b4518 100755
hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
archive_expsym_cmds='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
-@@ -9323,7 +9850,13 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9616,7 +10143,13 @@ if test -z "$aix_libpath"; then aix_libp
else
# Determine the default libpath from the value encoded in an
# empty executable.
@@ -2899,14 +2912,14 @@ index 5d9c9105a7..a65b2b4518 100755
+ if test "${lt_cv_aix_libpath+set}" = set; then
+ aix_libpath=$lt_cv_aix_libpath
+else
-+ if test "${lt_cv_aix_libpath_+set}" = set; then :
++ if ${lt_cv_aix_libpath_+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
-@@ -9336,22 +9869,29 @@ main ()
+@@ -9629,22 +10162,29 @@ main ()
_ACEOF
if ac_fn_c_try_link "$LINENO"; then :
@@ -2949,7 +2962,7 @@ index 5d9c9105a7..a65b2b4518 100755
hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
# Warning - without using the other run time loading flags,
-@@ -9396,20 +9936,63 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9689,20 +10229,63 @@ if test -z "$aix_libpath"; then aix_libp
# Microsoft Visual C++.
# hardcode_libdir_flag_spec is actually meaningless, as there is
# no search path for DLLs.
@@ -3027,7 +3040,7 @@ index 5d9c9105a7..a65b2b4518 100755
;;
darwin* | rhapsody*)
-@@ -9470,7 +10053,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9763,7 +10346,7 @@ if test -z "$aix_libpath"; then aix_libp
# FreeBSD 3 and greater uses gcc -shared to do shared libraries.
freebsd* | dragonfly*)
@@ -3036,7 +3049,7 @@ index 5d9c9105a7..a65b2b4518 100755
hardcode_libdir_flag_spec='-R$libdir'
hardcode_direct=yes
hardcode_shlibpath_var=no
-@@ -9478,7 +10061,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9771,7 +10354,7 @@ if test -z "$aix_libpath"; then aix_libp
hpux9*)
if test "$GCC" = yes; then
@@ -3045,7 +3058,7 @@ index 5d9c9105a7..a65b2b4518 100755
else
archive_cmds='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
fi
-@@ -9494,7 +10077,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9787,7 +10370,7 @@ if test -z "$aix_libpath"; then aix_libp
hpux10*)
if test "$GCC" = yes && test "$with_gnu_ld" = no; then
@@ -3054,7 +3067,7 @@ index 5d9c9105a7..a65b2b4518 100755
else
archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
fi
-@@ -9518,10 +10101,10 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9811,10 +10394,10 @@ if test -z "$aix_libpath"; then aix_libp
archive_cmds='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
;;
ia64*)
@@ -3067,7 +3080,7 @@ index 5d9c9105a7..a65b2b4518 100755
;;
esac
else
-@@ -9600,23 +10183,36 @@ fi
+@@ -9893,23 +10476,36 @@ fi
irix5* | irix6* | nonstopux*)
if test "$GCC" = yes; then
@@ -3082,7 +3095,7 @@ index 5d9c9105a7..a65b2b4518 100755
+ # This should be the same for all languages, so no per-tag cache variable.
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $host_os linker accepts -exported_symbol" >&5
+$as_echo_n "checking whether the $host_os linker accepts -exported_symbol... " >&6; }
-+if test "${lt_cv_irix_exported_symbol+set}" = set; then :
++if ${lt_cv_irix_exported_symbol+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ save_LDFLAGS="$LDFLAGS"
@@ -3112,7 +3125,7 @@ index 5d9c9105a7..a65b2b4518 100755
else
archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -exports_file $export_symbols -o $lib'
-@@ -9701,7 +10297,7 @@ rm -f core conftest.err conftest.$ac_objext \
+@@ -9994,7 +10590,7 @@ rm -f core conftest.err conftest.$ac_obj
osf4* | osf5*) # as osf3* with the addition of -msym flag
if test "$GCC" = yes; then
allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
@@ -3121,7 +3134,7 @@ index 5d9c9105a7..a65b2b4518 100755
hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
else
allow_undefined_flag=' -expect_unresolved \*'
-@@ -9720,9 +10316,9 @@ rm -f core conftest.err conftest.$ac_objext \
+@@ -10013,9 +10609,9 @@ rm -f core conftest.err conftest.$ac_obj
no_undefined_flag=' -z defs'
if test "$GCC" = yes; then
wlarc='${wl}'
@@ -3133,7 +3146,7 @@ index 5d9c9105a7..a65b2b4518 100755
else
case `$CC -V 2>&1` in
*"Compilers 5.0"*)
-@@ -10298,8 +10894,9 @@ cygwin* | mingw* | pw32* | cegcc*)
+@@ -10591,8 +11187,9 @@ cygwin* | mingw* | pw32* | cegcc*)
need_version=no
need_lib_prefix=no
@@ -3145,7 +3158,7 @@ index 5d9c9105a7..a65b2b4518 100755
library_names_spec='$libname.dll.a'
# DLL is installed to $(libdir)/../bin by postinstall_cmds
postinstall_cmds='base_file=`basename \${file}`~
-@@ -10332,13 +10929,71 @@ cygwin* | mingw* | pw32* | cegcc*)
+@@ -10625,13 +11222,71 @@ cygwin* | mingw* | pw32* | cegcc*)
library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
;;
esac
@@ -3218,7 +3231,7 @@ index 5d9c9105a7..a65b2b4518 100755
# FIXME: first we should search . and the directory the executable is in
shlibpath_var=PATH
;;
-@@ -10430,7 +11085,7 @@ haiku*)
+@@ -10723,7 +11378,7 @@ haiku*)
soname_spec='${libname}${release}${shared_ext}$major'
shlibpath_var=LIBRARY_PATH
shlibpath_overrides_runpath=yes
@@ -3227,7 +3240,16 @@ index 5d9c9105a7..a65b2b4518 100755
hardcode_into_libs=yes
;;
-@@ -11270,10 +11925,10 @@ else
+@@ -11519,7 +12174,7 @@ else
+ lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
+ lt_status=$lt_dlunknown
+ cat > conftest.$ac_ext <<_LT_EOF
+-#line 11522 "configure"
++#line $LINENO "configure"
+ #include "confdefs.h"
+
+ #if HAVE_DLFCN_H
+@@ -11563,10 +12218,10 @@ else
/* When -fvisbility=hidden is used, assume the code has been annotated
correspondingly for the symbols needed. */
#if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
@@ -3240,7 +3262,16 @@ index 5d9c9105a7..a65b2b4518 100755
int main ()
{
void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
-@@ -11376,10 +12031,10 @@ else
+@@ -11625,7 +12280,7 @@ else
+ lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
+ lt_status=$lt_dlunknown
+ cat > conftest.$ac_ext <<_LT_EOF
+-#line 11628 "configure"
++#line $LINENO "configure"
+ #include "confdefs.h"
+
+ #if HAVE_DLFCN_H
+@@ -11669,10 +12324,10 @@ else
/* When -fvisbility=hidden is used, assume the code has been annotated
correspondingly for the symbols needed. */
#if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
@@ -3253,7 +3284,7 @@ index 5d9c9105a7..a65b2b4518 100755
int main ()
{
void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
-@@ -15446,13 +16101,20 @@ exeext='`$ECHO "$exeext" | $SED "$delay_single_quote_subst"`'
+@@ -15731,13 +16386,20 @@ exeext='`$ECHO "$exeext" | $SED "$delay_
lt_unset='`$ECHO "$lt_unset" | $SED "$delay_single_quote_subst"`'
lt_SP2NL='`$ECHO "$lt_SP2NL" | $SED "$delay_single_quote_subst"`'
lt_NL2SP='`$ECHO "$lt_NL2SP" | $SED "$delay_single_quote_subst"`'
@@ -3274,7 +3305,7 @@ index 5d9c9105a7..a65b2b4518 100755
STRIP='`$ECHO "$STRIP" | $SED "$delay_single_quote_subst"`'
RANLIB='`$ECHO "$RANLIB" | $SED "$delay_single_quote_subst"`'
old_postinstall_cmds='`$ECHO "$old_postinstall_cmds" | $SED "$delay_single_quote_subst"`'
-@@ -15467,14 +16129,17 @@ lt_cv_sys_global_symbol_pipe='`$ECHO "$lt_cv_sys_global_symbol_pipe" | $SED "$de
+@@ -15752,14 +16414,17 @@ lt_cv_sys_global_symbol_pipe='`$ECHO "$l
lt_cv_sys_global_symbol_to_cdecl='`$ECHO "$lt_cv_sys_global_symbol_to_cdecl" | $SED "$delay_single_quote_subst"`'
lt_cv_sys_global_symbol_to_c_name_address='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address" | $SED "$delay_single_quote_subst"`'
lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address_lib_prefix" | $SED "$delay_single_quote_subst"`'
@@ -3293,7 +3324,7 @@ index 5d9c9105a7..a65b2b4518 100755
DSYMUTIL='`$ECHO "$DSYMUTIL" | $SED "$delay_single_quote_subst"`'
NMEDIT='`$ECHO "$NMEDIT" | $SED "$delay_single_quote_subst"`'
LIPO='`$ECHO "$LIPO" | $SED "$delay_single_quote_subst"`'
-@@ -15507,12 +16172,12 @@ hardcode_shlibpath_var='`$ECHO "$hardcode_shlibpath_var" | $SED "$delay_single_q
+@@ -15792,12 +16457,12 @@ hardcode_shlibpath_var='`$ECHO "$hardcod
hardcode_automatic='`$ECHO "$hardcode_automatic" | $SED "$delay_single_quote_subst"`'
inherit_rpath='`$ECHO "$inherit_rpath" | $SED "$delay_single_quote_subst"`'
link_all_deplibs='`$ECHO "$link_all_deplibs" | $SED "$delay_single_quote_subst"`'
@@ -3307,7 +3338,7 @@ index 5d9c9105a7..a65b2b4518 100755
file_list_spec='`$ECHO "$file_list_spec" | $SED "$delay_single_quote_subst"`'
variables_saved_for_relink='`$ECHO "$variables_saved_for_relink" | $SED "$delay_single_quote_subst"`'
need_lib_prefix='`$ECHO "$need_lib_prefix" | $SED "$delay_single_quote_subst"`'
-@@ -15567,8 +16232,13 @@ reload_flag \
+@@ -15852,8 +16517,13 @@ reload_flag \
OBJDUMP \
deplibs_check_method \
file_magic_cmd \
@@ -3321,7 +3352,7 @@ index 5d9c9105a7..a65b2b4518 100755
STRIP \
RANLIB \
CC \
-@@ -15578,12 +16248,14 @@ lt_cv_sys_global_symbol_pipe \
+@@ -15863,12 +16533,14 @@ lt_cv_sys_global_symbol_pipe \
lt_cv_sys_global_symbol_to_cdecl \
lt_cv_sys_global_symbol_to_c_name_address \
lt_cv_sys_global_symbol_to_c_name_address_lib_prefix \
@@ -3337,7 +3368,7 @@ index 5d9c9105a7..a65b2b4518 100755
DSYMUTIL \
NMEDIT \
LIPO \
-@@ -15599,7 +16271,6 @@ no_undefined_flag \
+@@ -15884,7 +16556,6 @@ no_undefined_flag \
hardcode_libdir_flag_spec \
hardcode_libdir_flag_spec_ld \
hardcode_libdir_separator \
@@ -3345,7 +3376,7 @@ index 5d9c9105a7..a65b2b4518 100755
exclude_expsyms \
include_expsyms \
file_list_spec \
-@@ -15635,6 +16306,7 @@ module_cmds \
+@@ -15920,6 +16591,7 @@ module_cmds \
module_expsym_cmds \
export_symbols_cmds \
prelink_cmds \
@@ -3353,7 +3384,7 @@ index 5d9c9105a7..a65b2b4518 100755
postinstall_cmds \
postuninstall_cmds \
finish_cmds \
-@@ -16392,7 +17064,8 @@ $as_echo X"$file" |
+@@ -16686,7 +17358,8 @@ $as_echo X"$file" |
# NOTE: Changes made to this file will be lost: look at ltmain.sh.
#
# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
@@ -3363,7 +3394,7 @@ index 5d9c9105a7..a65b2b4518 100755
# Written by Gordon Matzigkeit, 1996
#
# This file is part of GNU Libtool.
-@@ -16495,19 +17168,42 @@ SP2NL=$lt_lt_SP2NL
+@@ -16789,19 +17462,42 @@ SP2NL=$lt_lt_SP2NL
# turn newlines into spaces.
NL2SP=$lt_lt_NL2SP
@@ -3407,7 +3438,7 @@ index 5d9c9105a7..a65b2b4518 100755
# A symbol stripping program.
STRIP=$lt_STRIP
-@@ -16537,6 +17233,12 @@ global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address
+@@ -16831,6 +17527,12 @@ global_symbol_to_c_name_address=$lt_lt_c
# Transform the output of nm in a C name address pair when lib prefix is needed.
global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix
@@ -3420,7 +3451,7 @@ index 5d9c9105a7..a65b2b4518 100755
# The name of the directory that contains temporary libtool files.
objdir=$objdir
-@@ -16546,6 +17248,9 @@ MAGIC_CMD=$MAGIC_CMD
+@@ -16840,6 +17542,9 @@ MAGIC_CMD=$MAGIC_CMD
# Must we lock files when doing compilation?
need_locks=$lt_need_locks
@@ -3430,7 +3461,7 @@ index 5d9c9105a7..a65b2b4518 100755
# Tool to manipulate archived DWARF debug symbol files on Mac OS X.
DSYMUTIL=$lt_DSYMUTIL
-@@ -16660,12 +17365,12 @@ with_gcc=$GCC
+@@ -16954,12 +17659,12 @@ with_gcc=$GCC
# Compiler flag to turn off builtin functions.
no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag
@@ -3446,7 +3477,7 @@ index 5d9c9105a7..a65b2b4518 100755
# Compiler flag to prevent dynamic linking.
link_static_flag=$lt_lt_prog_compiler_static
-@@ -16752,9 +17457,6 @@ inherit_rpath=$inherit_rpath
+@@ -17046,9 +17751,6 @@ inherit_rpath=$inherit_rpath
# Whether libtool must link a program against all its dependency libraries.
link_all_deplibs=$link_all_deplibs
@@ -3456,7 +3487,7 @@ index 5d9c9105a7..a65b2b4518 100755
# Set to "yes" if exported symbols are required.
always_export_symbols=$always_export_symbols
-@@ -16770,6 +17472,9 @@ include_expsyms=$lt_include_expsyms
+@@ -17064,6 +17766,9 @@ include_expsyms=$lt_include_expsyms
# Commands necessary for linking programs (against libraries) with templates.
prelink_cmds=$lt_prelink_cmds
@@ -3466,7 +3497,7 @@ index 5d9c9105a7..a65b2b4518 100755
# Specify filename containing input files.
file_list_spec=$lt_file_list_spec
-@@ -16802,210 +17507,169 @@ ltmain="$ac_aux_dir/ltmain.sh"
+@@ -17096,210 +17801,169 @@ ltmain="$ac_aux_dir/ltmain.sh"
# if finds mixed CR/LF and LF-only lines. Since sed operates in
# text mode, it properly converts lines to CR/LF. This bash problem
# is reportedly fixed, but why not run on old versions too?
@@ -3668,15 +3699,9 @@ index 5d9c9105a7..a65b2b4518 100755
-_LT_EOF
- ;;
- esac
--
--
-- sed -n '/^# Generated shell functions inserted here/,$p' "$ltmain" >> "$cfgfile" \
-- || (rm -f "$cfgfile"; exit 1)
--
-- mv -f "$cfgfile" "$ofile" ||
+ sed '$q' "$ltmain" >> "$cfgfile" \
+ || (rm -f "$cfgfile"; exit 1)
-+
+
+ if test x"$xsi_shell" = xyes; then
+ sed -e '/^func_dirname ()$/,/^} # func_dirname /c\
+func_dirname ()\
@@ -3834,17 +3859,20 @@ index 5d9c9105a7..a65b2b4518 100755
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Unable to substitute extended shell functions in $ofile" >&5
+$as_echo "$as_me: WARNING: Unable to substitute extended shell functions in $ofile" >&2;}
+fi
-+
-+
+
+- sed -n '/^# Generated shell functions inserted here/,$p' "$ltmain" >> "$cfgfile" \
+- || (rm -f "$cfgfile"; exit 1)
+
+- mv -f "$cfgfile" "$ofile" ||
+ mv -f "$cfgfile" "$ofile" ||
(rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
chmod +x "$ofile"
-diff --git a/gas/configure b/gas/configure
-index fbac8f44d5..a40ac2144f 100755
---- a/gas/configure
-+++ b/gas/configure
-@@ -650,8 +650,11 @@ OTOOL
+Index: git/gas/configure
+===================================================================
+--- git.orig/gas/configure
++++ git/gas/configure
+@@ -681,8 +681,11 @@ OTOOL
LIPO
NMEDIT
DSYMUTIL
@@ -3856,7 +3884,7 @@ index fbac8f44d5..a40ac2144f 100755
OBJDUMP
LN_S
NM
-@@ -763,6 +766,7 @@ enable_static
+@@ -799,6 +802,7 @@ enable_static
with_pic
enable_fast_install
with_gnu_ld
@@ -3864,7 +3892,16 @@ index fbac8f44d5..a40ac2144f 100755
enable_libtool_lock
enable_plugins
enable_largefile
-@@ -4921,8 +4925,8 @@ esac
+@@ -1482,6 +1486,8 @@ Optional Packages:
+ --with-pic try to use only PIC/non-PIC objects [default=use
+ both]
+ --with-gnu-ld assume the C compiler uses GNU ld [default=no]
++ --with-libtool-sysroot=DIR Search for dependent libraries within DIR
++ (or the compiler's sysroot if not specified).
+ --with-cpu=CPU default cpu variant is CPU (currently only supported
+ on ARC)
+ --with-system-zlib use installed libz
+@@ -5269,8 +5275,8 @@ esac
@@ -3875,7 +3912,7 @@ index fbac8f44d5..a40ac2144f 100755
-@@ -4962,7 +4966,7 @@ ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
+@@ -5310,7 +5316,7 @@ ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to print strings" >&5
$as_echo_n "checking how to print strings... " >&6; }
# Test print first, because it will be a builtin if present.
@@ -3884,7 +3921,7 @@ index fbac8f44d5..a40ac2144f 100755
test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then
ECHO='print -r --'
elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then
-@@ -5648,8 +5652,8 @@ $as_echo_n "checking whether the shell understands some XSI constructs... " >&6;
+@@ -5996,8 +6002,8 @@ $as_echo_n "checking whether the shell u
# Try some XSI features
xsi_shell=no
( _lt_dummy="a/b/c"
@@ -3895,13 +3932,13 @@ index fbac8f44d5..a40ac2144f 100755
&& eval 'test $(( 1 + 1 )) -eq 2 \
&& test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \
&& xsi_shell=yes
-@@ -5698,6 +5702,80 @@ esac
+@@ -6046,6 +6052,80 @@ esac
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to $host format" >&5
+$as_echo_n "checking how to convert $build file names to $host format... " >&6; }
-+if test "${lt_cv_to_host_file_cmd+set}" = set; then :
++if ${lt_cv_to_host_file_cmd+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ case $host in
@@ -3948,7 +3985,7 @@ index fbac8f44d5..a40ac2144f 100755
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to toolchain format" >&5
+$as_echo_n "checking how to convert $build file names to toolchain format... " >&6; }
-+if test "${lt_cv_to_tool_file_cmd+set}" = set; then :
++if ${lt_cv_to_tool_file_cmd+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ #assume ordinary cross tools, or native build.
@@ -3975,8 +4012,8 @@ index fbac8f44d5..a40ac2144f 100755
+
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $LD option to reload object files" >&5
$as_echo_n "checking for $LD option to reload object files... " >&6; }
- if test "${lt_cv_ld_reload_flag+set}" = set; then :
-@@ -5714,6 +5792,11 @@ case $reload_flag in
+ if ${lt_cv_ld_reload_flag+:} false; then :
+@@ -6062,6 +6142,11 @@ case $reload_flag in
esac
reload_cmds='$LD$reload_flag -o $output$reload_objs'
case $host_os in
@@ -3988,7 +4025,7 @@ index fbac8f44d5..a40ac2144f 100755
darwin*)
if test "$GCC" = yes; then
reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs'
-@@ -5882,7 +5965,8 @@ mingw* | pw32*)
+@@ -6230,7 +6315,8 @@ mingw* | pw32*)
lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
lt_cv_file_magic_cmd='func_win32_libid'
else
@@ -3998,7 +4035,7 @@ index fbac8f44d5..a40ac2144f 100755
lt_cv_file_magic_cmd='$OBJDUMP -f'
fi
;;
-@@ -6036,6 +6120,21 @@ esac
+@@ -6384,6 +6470,21 @@ esac
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_deplibs_check_method" >&5
$as_echo "$lt_cv_deplibs_check_method" >&6; }
@@ -4020,7 +4057,7 @@ index fbac8f44d5..a40ac2144f 100755
file_magic_cmd=$lt_cv_file_magic_cmd
deplibs_check_method=$lt_cv_deplibs_check_method
test -z "$deplibs_check_method" && deplibs_check_method=unknown
-@@ -6051,9 +6150,162 @@ test -z "$deplibs_check_method" && deplibs_check_method=unknown
+@@ -6399,9 +6500,162 @@ test -z "$deplibs_check_method" && depli
@@ -4034,12 +4071,14 @@ index fbac8f44d5..a40ac2144f 100755
+
+
+
-+if test -n "$ac_tool_prefix"; then
+ if test -n "$ac_tool_prefix"; then
+- # Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args.
+-set dummy ${ac_tool_prefix}ar; ac_word=$2
+ # Extract the first word of "${ac_tool_prefix}dlltool", so it can be a program name with args.
+set dummy ${ac_tool_prefix}dlltool; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
-+if test "${ac_cv_prog_DLLTOOL+set}" = set; then :
++if ${ac_cv_prog_DLLTOOL+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$DLLTOOL"; then
@@ -4051,7 +4090,7 @@ index fbac8f44d5..a40ac2144f 100755
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
-+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
++ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_prog_DLLTOOL="${ac_tool_prefix}dlltool"
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
@@ -4079,7 +4118,7 @@ index fbac8f44d5..a40ac2144f 100755
+set dummy dlltool; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
-+if test "${ac_cv_prog_ac_ct_DLLTOOL+set}" = set; then :
++if ${ac_cv_prog_ac_ct_DLLTOOL+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$ac_ct_DLLTOOL"; then
@@ -4091,7 +4130,7 @@ index fbac8f44d5..a40ac2144f 100755
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
-+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
++ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_prog_ac_ct_DLLTOOL="dlltool"
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
@@ -4139,7 +4178,7 @@ index fbac8f44d5..a40ac2144f 100755
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to associate runtime and link libraries" >&5
+$as_echo_n "checking how to associate runtime and link libraries... " >&6; }
-+if test "${lt_cv_sharedlib_from_linklib_cmd+set}" = set; then :
++if ${lt_cv_sharedlib_from_linklib_cmd+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ lt_cv_sharedlib_from_linklib_cmd='unknown'
@@ -4175,26 +4214,24 @@ index fbac8f44d5..a40ac2144f 100755
+
+
+
- if test -n "$ac_tool_prefix"; then
-- # Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args.
--set dummy ${ac_tool_prefix}ar; ac_word=$2
++if test -n "$ac_tool_prefix"; then
+ for ac_prog in ar
+ do
+ # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
+set dummy $ac_tool_prefix$ac_prog; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
- if test "${ac_cv_prog_AR+set}" = set; then :
-@@ -6069,7 +6321,7 @@ do
+ if ${ac_cv_prog_AR+:} false; then :
+@@ -6417,7 +6671,7 @@ do
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_AR="${ac_tool_prefix}ar"
+ ac_cv_prog_AR="$ac_tool_prefix$ac_prog"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
-@@ -6089,11 +6341,15 @@ $as_echo "no" >&6; }
+@@ -6437,11 +6691,15 @@ $as_echo "no" >&6; }
fi
@@ -4212,17 +4249,17 @@ index fbac8f44d5..a40ac2144f 100755
+set dummy $ac_prog; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
- if test "${ac_cv_prog_ac_ct_AR+set}" = set; then :
-@@ -6109,7 +6365,7 @@ do
+ if ${ac_cv_prog_ac_ct_AR+:} false; then :
+@@ -6457,7 +6715,7 @@ do
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_ac_ct_AR="ar"
+ ac_cv_prog_ac_ct_AR="$ac_prog"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
-@@ -6128,6 +6384,10 @@ else
+@@ -6476,6 +6734,10 @@ else
$as_echo "no" >&6; }
fi
@@ -4233,7 +4270,7 @@ index fbac8f44d5..a40ac2144f 100755
if test "x$ac_ct_AR" = x; then
AR="false"
else
-@@ -6139,12 +6399,10 @@ ac_tool_warned=yes ;;
+@@ -6487,12 +6749,10 @@ ac_tool_warned=yes ;;
esac
AR=$ac_ct_AR
fi
@@ -4248,13 +4285,13 @@ index fbac8f44d5..a40ac2144f 100755
-@@ -6156,6 +6414,64 @@ test -z "$AR_FLAGS" && AR_FLAGS=cru
+@@ -6504,6 +6764,64 @@ test -z "$AR_FLAGS" && AR_FLAGS=cru
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for archiver @FILE support" >&5
+$as_echo_n "checking for archiver @FILE support... " >&6; }
-+if test "${lt_cv_ar_at_file+set}" = set; then :
++if ${lt_cv_ar_at_file+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ lt_cv_ar_at_file=no
@@ -4313,7 +4350,7 @@ index fbac8f44d5..a40ac2144f 100755
if test -n "$ac_tool_prefix"; then
# Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
set dummy ${ac_tool_prefix}strip; ac_word=$2
-@@ -6490,8 +6806,8 @@ esac
+@@ -6838,8 +7156,8 @@ esac
lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
# Transform an extracted symbol line into symbol name and symbol address
@@ -4324,7 +4361,7 @@ index fbac8f44d5..a40ac2144f 100755
# Handle CRLF in mingw tool chain
opt_cr=
-@@ -6527,6 +6843,7 @@ for ac_symprfx in "" "_"; do
+@@ -6875,6 +7193,7 @@ for ac_symprfx in "" "_"; do
else
lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[ ]\($symcode$symcode*\)[ ][ ]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
fi
@@ -4332,7 +4369,7 @@ index fbac8f44d5..a40ac2144f 100755
# Check to see that the pipe works correctly.
pipe_works=no
-@@ -6568,6 +6885,18 @@ _LT_EOF
+@@ -6916,6 +7235,18 @@ _LT_EOF
if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
cat <<_LT_EOF > conftest.$ac_ext
@@ -4351,7 +4388,7 @@ index fbac8f44d5..a40ac2144f 100755
#ifdef __cplusplus
extern "C" {
#endif
-@@ -6579,7 +6908,7 @@ _LT_EOF
+@@ -6927,7 +7258,7 @@ _LT_EOF
cat <<_LT_EOF >> conftest.$ac_ext
/* The mapping between symbol names and symbols. */
@@ -4360,7 +4397,7 @@ index fbac8f44d5..a40ac2144f 100755
const char *name;
void *address;
}
-@@ -6605,8 +6934,8 @@ static const void *lt_preloaded_setup() {
+@@ -6953,8 +7284,8 @@ static const void *lt_preloaded_setup()
_LT_EOF
# Now try linking the two files.
mv conftest.$ac_objext conftstm.$ac_objext
@@ -4371,7 +4408,7 @@ index fbac8f44d5..a40ac2144f 100755
LIBS="conftstm.$ac_objext"
CFLAGS="$CFLAGS$lt_prog_compiler_no_builtin_flag"
if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5
-@@ -6616,8 +6945,8 @@ _LT_EOF
+@@ -6964,8 +7295,8 @@ _LT_EOF
test $ac_status = 0; } && test -s conftest${ac_exeext}; then
pipe_works=yes
fi
@@ -4382,7 +4419,7 @@ index fbac8f44d5..a40ac2144f 100755
else
echo "cannot find nm_test_func in $nlist" >&5
fi
-@@ -6654,6 +6983,21 @@ else
+@@ -7002,6 +7333,19 @@ else
$as_echo "ok" >&6; }
fi
@@ -4399,17 +4436,13 @@ index fbac8f44d5..a40ac2144f 100755
+
+
+
-+
-+
-@@ -6669,6 +7013,40 @@ fi
+@@ -7022,6 +7366,42 @@ fi
-+
-+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sysroot" >&5
+$as_echo_n "checking for sysroot... " >&6; }
+
@@ -4436,16 +4469,20 @@ index fbac8f44d5..a40ac2144f 100755
+ *)
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${with_libtool_sysroot}" >&5
+$as_echo "${with_libtool_sysroot}" >&6; }
-+ as_fn_error "The sysroot must be an absolute path." "$LINENO" 5
++ as_fn_error $? "The sysroot must be an absolute path." "$LINENO" 5
+ ;;
+esac
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${lt_sysroot:-no}" >&5
+$as_echo "${lt_sysroot:-no}" >&6; }
++
++
++
++
-
-
-@@ -6881,6 +7259,123 @@ esac
+ # Check whether --enable-libtool-lock was given.
+ if test "${enable_libtool_lock+set}" = set; then :
+@@ -7229,6 +7609,123 @@ esac
need_locks="$enable_libtool_lock"
@@ -4454,7 +4491,7 @@ index fbac8f44d5..a40ac2144f 100755
+set dummy ${ac_tool_prefix}mt; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
-+if test "${ac_cv_prog_MANIFEST_TOOL+set}" = set; then :
++if ${ac_cv_prog_MANIFEST_TOOL+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$MANIFEST_TOOL"; then
@@ -4466,7 +4503,7 @@ index fbac8f44d5..a40ac2144f 100755
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
-+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
++ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_prog_MANIFEST_TOOL="${ac_tool_prefix}mt"
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
@@ -4494,7 +4531,7 @@ index fbac8f44d5..a40ac2144f 100755
+set dummy mt; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
-+if test "${ac_cv_prog_ac_ct_MANIFEST_TOOL+set}" = set; then :
++if ${ac_cv_prog_ac_ct_MANIFEST_TOOL+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$ac_ct_MANIFEST_TOOL"; then
@@ -4506,7 +4543,7 @@ index fbac8f44d5..a40ac2144f 100755
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
-+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
++ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_prog_ac_ct_MANIFEST_TOOL="mt"
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
@@ -4544,7 +4581,7 @@ index fbac8f44d5..a40ac2144f 100755
+test -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $MANIFEST_TOOL is a manifest tool" >&5
+$as_echo_n "checking if $MANIFEST_TOOL is a manifest tool... " >&6; }
-+if test "${lt_cv_path_mainfest_tool+set}" = set; then :
++if ${lt_cv_path_mainfest_tool+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ lt_cv_path_mainfest_tool=no
@@ -4569,7 +4606,7 @@ index fbac8f44d5..a40ac2144f 100755
case $host_os in
rhapsody* | darwin*)
-@@ -7444,6 +7939,8 @@ _LT_EOF
+@@ -7792,6 +8289,8 @@ _LT_EOF
$LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&5
echo "$AR cru libconftest.a conftest.o" >&5
$AR cru libconftest.a conftest.o 2>&5
@@ -4578,7 +4615,7 @@ index fbac8f44d5..a40ac2144f 100755
cat > conftest.c << _LT_EOF
int main() { return 0;}
_LT_EOF
-@@ -7639,7 +8136,8 @@ fi
+@@ -7987,7 +8486,8 @@ fi
LIBTOOL_DEPS="$ltmain"
# Always use our own libtool.
@@ -4588,7 +4625,7 @@ index fbac8f44d5..a40ac2144f 100755
-@@ -7728,7 +8226,7 @@ aix3*)
+@@ -8076,7 +8576,7 @@ aix3*)
esac
# Global variables:
@@ -4597,7 +4634,7 @@ index fbac8f44d5..a40ac2144f 100755
can_build_shared=yes
# All known linkers require a `.a' archive for static linking (except MSVC,
-@@ -8026,8 +8524,6 @@ fi
+@@ -8374,8 +8874,6 @@ fi
lt_prog_compiler_pic=
lt_prog_compiler_static=
@@ -4606,7 +4643,7 @@ index fbac8f44d5..a40ac2144f 100755
if test "$GCC" = yes; then
lt_prog_compiler_wl='-Wl,'
-@@ -8193,6 +8689,12 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
+@@ -8541,6 +9039,12 @@ $as_echo_n "checking for $compiler optio
lt_prog_compiler_pic='--shared'
lt_prog_compiler_static='--static'
;;
@@ -4619,7 +4656,7 @@ index fbac8f44d5..a40ac2144f 100755
pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*)
# Portland Group compilers (*not* the Pentium gcc compiler,
# which looks to be a dead project)
-@@ -8255,7 +8757,7 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
+@@ -8603,7 +9107,7 @@ $as_echo_n "checking for $compiler optio
lt_prog_compiler_pic='-KPIC'
lt_prog_compiler_static='-Bstatic'
case $cc_basename in
@@ -4628,7 +4665,7 @@ index fbac8f44d5..a40ac2144f 100755
lt_prog_compiler_wl='-Qoption ld ';;
*)
lt_prog_compiler_wl='-Wl,';;
-@@ -8312,13 +8814,17 @@ case $host_os in
+@@ -8660,13 +9164,17 @@ case $host_os in
lt_prog_compiler_pic="$lt_prog_compiler_pic -DPIC"
;;
esac
@@ -4641,7 +4678,7 @@ index fbac8f44d5..a40ac2144f 100755
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5
+$as_echo_n "checking for $compiler option to produce PIC... " >&6; }
-+if test "${lt_cv_prog_compiler_pic+set}" = set; then :
++if ${lt_cv_prog_compiler_pic+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ lt_cv_prog_compiler_pic=$lt_prog_compiler_pic
@@ -4652,7 +4689,7 @@ index fbac8f44d5..a40ac2144f 100755
#
# Check to make sure the PIC flag actually works.
-@@ -8379,6 +8885,11 @@ fi
+@@ -8727,6 +9235,11 @@ fi
@@ -4664,7 +4701,7 @@ index fbac8f44d5..a40ac2144f 100755
#
# Check to make sure the static flag actually works.
#
-@@ -8729,7 +9240,8 @@ _LT_EOF
+@@ -9077,7 +9590,8 @@ _LT_EOF
allow_undefined_flag=unsupported
always_export_symbols=no
enable_shared_with_static_runtimes=yes
@@ -4674,7 +4711,7 @@ index fbac8f44d5..a40ac2144f 100755
if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
-@@ -8828,12 +9340,12 @@ _LT_EOF
+@@ -9176,12 +9690,12 @@ _LT_EOF
whole_archive_flag_spec='--whole-archive$convenience --no-whole-archive'
hardcode_libdir_flag_spec=
hardcode_libdir_flag_spec_ld='-rpath $libdir'
@@ -4689,7 +4726,7 @@ index fbac8f44d5..a40ac2144f 100755
fi
;;
esac
-@@ -8847,8 +9359,8 @@ _LT_EOF
+@@ -9195,8 +9709,8 @@ _LT_EOF
archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
wlarc=
else
@@ -4700,7 +4737,7 @@ index fbac8f44d5..a40ac2144f 100755
fi
;;
-@@ -8866,8 +9378,8 @@ _LT_EOF
+@@ -9214,8 +9728,8 @@ _LT_EOF
_LT_EOF
elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
@@ -4711,7 +4748,7 @@ index fbac8f44d5..a40ac2144f 100755
else
ld_shlibs=no
fi
-@@ -8913,8 +9425,8 @@ _LT_EOF
+@@ -9261,8 +9775,8 @@ _LT_EOF
*)
if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
@@ -4722,7 +4759,7 @@ index fbac8f44d5..a40ac2144f 100755
else
ld_shlibs=no
fi
-@@ -9044,7 +9556,13 @@ _LT_EOF
+@@ -9392,7 +9906,13 @@ _LT_EOF
allow_undefined_flag='-berok'
# Determine the default libpath from the value encoded in an
# empty executable.
@@ -4730,14 +4767,14 @@ index fbac8f44d5..a40ac2144f 100755
+ if test "${lt_cv_aix_libpath+set}" = set; then
+ aix_libpath=$lt_cv_aix_libpath
+else
-+ if test "${lt_cv_aix_libpath_+set}" = set; then :
++ if ${lt_cv_aix_libpath_+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
-@@ -9057,22 +9575,29 @@ main ()
+@@ -9405,22 +9925,29 @@ main ()
_ACEOF
if ac_fn_c_try_link "$LINENO"; then :
@@ -4780,7 +4817,7 @@ index fbac8f44d5..a40ac2144f 100755
hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
archive_expsym_cmds='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
-@@ -9084,7 +9609,13 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9432,7 +9959,13 @@ if test -z "$aix_libpath"; then aix_libp
else
# Determine the default libpath from the value encoded in an
# empty executable.
@@ -4788,14 +4825,14 @@ index fbac8f44d5..a40ac2144f 100755
+ if test "${lt_cv_aix_libpath+set}" = set; then
+ aix_libpath=$lt_cv_aix_libpath
+else
-+ if test "${lt_cv_aix_libpath_+set}" = set; then :
++ if ${lt_cv_aix_libpath_+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
-@@ -9097,22 +9628,29 @@ main ()
+@@ -9445,22 +9978,29 @@ main ()
_ACEOF
if ac_fn_c_try_link "$LINENO"; then :
@@ -4838,7 +4875,7 @@ index fbac8f44d5..a40ac2144f 100755
hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
# Warning - without using the other run time loading flags,
-@@ -9157,20 +9695,63 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9505,20 +10045,63 @@ if test -z "$aix_libpath"; then aix_libp
# Microsoft Visual C++.
# hardcode_libdir_flag_spec is actually meaningless, as there is
# no search path for DLLs.
@@ -4916,7 +4953,7 @@ index fbac8f44d5..a40ac2144f 100755
;;
darwin* | rhapsody*)
-@@ -9231,7 +9812,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9579,7 +10162,7 @@ if test -z "$aix_libpath"; then aix_libp
# FreeBSD 3 and greater uses gcc -shared to do shared libraries.
freebsd* | dragonfly*)
@@ -4925,7 +4962,7 @@ index fbac8f44d5..a40ac2144f 100755
hardcode_libdir_flag_spec='-R$libdir'
hardcode_direct=yes
hardcode_shlibpath_var=no
-@@ -9239,7 +9820,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9587,7 +10170,7 @@ if test -z "$aix_libpath"; then aix_libp
hpux9*)
if test "$GCC" = yes; then
@@ -4934,7 +4971,7 @@ index fbac8f44d5..a40ac2144f 100755
else
archive_cmds='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
fi
-@@ -9255,7 +9836,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9603,7 +10186,7 @@ if test -z "$aix_libpath"; then aix_libp
hpux10*)
if test "$GCC" = yes && test "$with_gnu_ld" = no; then
@@ -4943,7 +4980,7 @@ index fbac8f44d5..a40ac2144f 100755
else
archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
fi
-@@ -9279,10 +9860,10 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9627,10 +10210,10 @@ if test -z "$aix_libpath"; then aix_libp
archive_cmds='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
;;
ia64*)
@@ -4956,7 +4993,7 @@ index fbac8f44d5..a40ac2144f 100755
;;
esac
else
-@@ -9361,23 +9942,36 @@ fi
+@@ -9709,23 +10292,36 @@ fi
irix5* | irix6* | nonstopux*)
if test "$GCC" = yes; then
@@ -4971,7 +5008,7 @@ index fbac8f44d5..a40ac2144f 100755
+ # This should be the same for all languages, so no per-tag cache variable.
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $host_os linker accepts -exported_symbol" >&5
+$as_echo_n "checking whether the $host_os linker accepts -exported_symbol... " >&6; }
-+if test "${lt_cv_irix_exported_symbol+set}" = set; then :
++if ${lt_cv_irix_exported_symbol+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ save_LDFLAGS="$LDFLAGS"
@@ -5001,7 +5038,7 @@ index fbac8f44d5..a40ac2144f 100755
else
archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -exports_file $export_symbols -o $lib'
-@@ -9462,7 +10056,7 @@ rm -f core conftest.err conftest.$ac_objext \
+@@ -9810,7 +10406,7 @@ rm -f core conftest.err conftest.$ac_obj
osf4* | osf5*) # as osf3* with the addition of -msym flag
if test "$GCC" = yes; then
allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
@@ -5010,7 +5047,7 @@ index fbac8f44d5..a40ac2144f 100755
hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
else
allow_undefined_flag=' -expect_unresolved \*'
-@@ -9481,9 +10075,9 @@ rm -f core conftest.err conftest.$ac_objext \
+@@ -9829,9 +10425,9 @@ rm -f core conftest.err conftest.$ac_obj
no_undefined_flag=' -z defs'
if test "$GCC" = yes; then
wlarc='${wl}'
@@ -5022,7 +5059,7 @@ index fbac8f44d5..a40ac2144f 100755
else
case `$CC -V 2>&1` in
*"Compilers 5.0"*)
-@@ -10059,8 +10653,9 @@ cygwin* | mingw* | pw32* | cegcc*)
+@@ -10407,8 +11003,9 @@ cygwin* | mingw* | pw32* | cegcc*)
need_version=no
need_lib_prefix=no
@@ -5034,7 +5071,7 @@ index fbac8f44d5..a40ac2144f 100755
library_names_spec='$libname.dll.a'
# DLL is installed to $(libdir)/../bin by postinstall_cmds
postinstall_cmds='base_file=`basename \${file}`~
-@@ -10093,13 +10688,71 @@ cygwin* | mingw* | pw32* | cegcc*)
+@@ -10441,13 +11038,71 @@ cygwin* | mingw* | pw32* | cegcc*)
library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
;;
esac
@@ -5107,7 +5144,7 @@ index fbac8f44d5..a40ac2144f 100755
# FIXME: first we should search . and the directory the executable is in
shlibpath_var=PATH
;;
-@@ -10191,7 +10844,7 @@ haiku*)
+@@ -10539,7 +11194,7 @@ haiku*)
soname_spec='${libname}${release}${shared_ext}$major'
shlibpath_var=LIBRARY_PATH
shlibpath_overrides_runpath=yes
@@ -5116,7 +5153,16 @@ index fbac8f44d5..a40ac2144f 100755
hardcode_into_libs=yes
;;
-@@ -11031,10 +11684,10 @@ else
+@@ -11335,7 +11990,7 @@ else
+ lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
+ lt_status=$lt_dlunknown
+ cat > conftest.$ac_ext <<_LT_EOF
+-#line 11338 "configure"
++#line $LINENO "configure"
+ #include "confdefs.h"
+
+ #if HAVE_DLFCN_H
+@@ -11379,10 +12034,10 @@ else
/* When -fvisbility=hidden is used, assume the code has been annotated
correspondingly for the symbols needed. */
#if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
@@ -5129,7 +5175,16 @@ index fbac8f44d5..a40ac2144f 100755
int main ()
{
void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
-@@ -11137,10 +11790,10 @@ else
+@@ -11441,7 +12096,7 @@ else
+ lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
+ lt_status=$lt_dlunknown
+ cat > conftest.$ac_ext <<_LT_EOF
+-#line 11444 "configure"
++#line $LINENO "configure"
+ #include "confdefs.h"
+
+ #if HAVE_DLFCN_H
+@@ -11485,10 +12140,10 @@ else
/* When -fvisbility=hidden is used, assume the code has been annotated
correspondingly for the symbols needed. */
#if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
@@ -5142,7 +5197,7 @@ index fbac8f44d5..a40ac2144f 100755
int main ()
{
void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
-@@ -15437,13 +16090,20 @@ exeext='`$ECHO "$exeext" | $SED "$delay_single_quote_subst"`'
+@@ -15803,13 +16458,20 @@ exeext='`$ECHO "$exeext" | $SED "$delay_
lt_unset='`$ECHO "$lt_unset" | $SED "$delay_single_quote_subst"`'
lt_SP2NL='`$ECHO "$lt_SP2NL" | $SED "$delay_single_quote_subst"`'
lt_NL2SP='`$ECHO "$lt_NL2SP" | $SED "$delay_single_quote_subst"`'
@@ -5163,7 +5218,7 @@ index fbac8f44d5..a40ac2144f 100755
STRIP='`$ECHO "$STRIP" | $SED "$delay_single_quote_subst"`'
RANLIB='`$ECHO "$RANLIB" | $SED "$delay_single_quote_subst"`'
old_postinstall_cmds='`$ECHO "$old_postinstall_cmds" | $SED "$delay_single_quote_subst"`'
-@@ -15458,14 +16118,17 @@ lt_cv_sys_global_symbol_pipe='`$ECHO "$lt_cv_sys_global_symbol_pipe" | $SED "$de
+@@ -15824,14 +16486,17 @@ lt_cv_sys_global_symbol_pipe='`$ECHO "$l
lt_cv_sys_global_symbol_to_cdecl='`$ECHO "$lt_cv_sys_global_symbol_to_cdecl" | $SED "$delay_single_quote_subst"`'
lt_cv_sys_global_symbol_to_c_name_address='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address" | $SED "$delay_single_quote_subst"`'
lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address_lib_prefix" | $SED "$delay_single_quote_subst"`'
@@ -5182,7 +5237,7 @@ index fbac8f44d5..a40ac2144f 100755
DSYMUTIL='`$ECHO "$DSYMUTIL" | $SED "$delay_single_quote_subst"`'
NMEDIT='`$ECHO "$NMEDIT" | $SED "$delay_single_quote_subst"`'
LIPO='`$ECHO "$LIPO" | $SED "$delay_single_quote_subst"`'
-@@ -15498,12 +16161,12 @@ hardcode_shlibpath_var='`$ECHO "$hardcode_shlibpath_var" | $SED "$delay_single_q
+@@ -15864,12 +16529,12 @@ hardcode_shlibpath_var='`$ECHO "$hardcod
hardcode_automatic='`$ECHO "$hardcode_automatic" | $SED "$delay_single_quote_subst"`'
inherit_rpath='`$ECHO "$inherit_rpath" | $SED "$delay_single_quote_subst"`'
link_all_deplibs='`$ECHO "$link_all_deplibs" | $SED "$delay_single_quote_subst"`'
@@ -5196,7 +5251,7 @@ index fbac8f44d5..a40ac2144f 100755
file_list_spec='`$ECHO "$file_list_spec" | $SED "$delay_single_quote_subst"`'
variables_saved_for_relink='`$ECHO "$variables_saved_for_relink" | $SED "$delay_single_quote_subst"`'
need_lib_prefix='`$ECHO "$need_lib_prefix" | $SED "$delay_single_quote_subst"`'
-@@ -15558,8 +16221,13 @@ reload_flag \
+@@ -15924,8 +16589,13 @@ reload_flag \
OBJDUMP \
deplibs_check_method \
file_magic_cmd \
@@ -5210,7 +5265,7 @@ index fbac8f44d5..a40ac2144f 100755
STRIP \
RANLIB \
CC \
-@@ -15569,12 +16237,14 @@ lt_cv_sys_global_symbol_pipe \
+@@ -15935,12 +16605,14 @@ lt_cv_sys_global_symbol_pipe \
lt_cv_sys_global_symbol_to_cdecl \
lt_cv_sys_global_symbol_to_c_name_address \
lt_cv_sys_global_symbol_to_c_name_address_lib_prefix \
@@ -5226,7 +5281,7 @@ index fbac8f44d5..a40ac2144f 100755
DSYMUTIL \
NMEDIT \
LIPO \
-@@ -15590,7 +16260,6 @@ no_undefined_flag \
+@@ -15956,7 +16628,6 @@ no_undefined_flag \
hardcode_libdir_flag_spec \
hardcode_libdir_flag_spec_ld \
hardcode_libdir_separator \
@@ -5234,7 +5289,7 @@ index fbac8f44d5..a40ac2144f 100755
exclude_expsyms \
include_expsyms \
file_list_spec \
-@@ -15626,6 +16295,7 @@ module_cmds \
+@@ -15992,6 +16663,7 @@ module_cmds \
module_expsym_cmds \
export_symbols_cmds \
prelink_cmds \
@@ -5242,7 +5297,7 @@ index fbac8f44d5..a40ac2144f 100755
postinstall_cmds \
postuninstall_cmds \
finish_cmds \
-@@ -16390,7 +17060,8 @@ $as_echo X"$file" |
+@@ -16765,7 +17437,8 @@ $as_echo X"$file" |
# NOTE: Changes made to this file will be lost: look at ltmain.sh.
#
# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
@@ -5252,7 +5307,7 @@ index fbac8f44d5..a40ac2144f 100755
# Written by Gordon Matzigkeit, 1996
#
# This file is part of GNU Libtool.
-@@ -16493,19 +17164,42 @@ SP2NL=$lt_lt_SP2NL
+@@ -16868,19 +17541,42 @@ SP2NL=$lt_lt_SP2NL
# turn newlines into spaces.
NL2SP=$lt_lt_NL2SP
@@ -5296,7 +5351,7 @@ index fbac8f44d5..a40ac2144f 100755
# A symbol stripping program.
STRIP=$lt_STRIP
-@@ -16535,6 +17229,12 @@ global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address
+@@ -16910,6 +17606,12 @@ global_symbol_to_c_name_address=$lt_lt_c
# Transform the output of nm in a C name address pair when lib prefix is needed.
global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix
@@ -5309,7 +5364,7 @@ index fbac8f44d5..a40ac2144f 100755
# The name of the directory that contains temporary libtool files.
objdir=$objdir
-@@ -16544,6 +17244,9 @@ MAGIC_CMD=$MAGIC_CMD
+@@ -16919,6 +17621,9 @@ MAGIC_CMD=$MAGIC_CMD
# Must we lock files when doing compilation?
need_locks=$lt_need_locks
@@ -5319,7 +5374,7 @@ index fbac8f44d5..a40ac2144f 100755
# Tool to manipulate archived DWARF debug symbol files on Mac OS X.
DSYMUTIL=$lt_DSYMUTIL
-@@ -16658,12 +17361,12 @@ with_gcc=$GCC
+@@ -17033,12 +17738,12 @@ with_gcc=$GCC
# Compiler flag to turn off builtin functions.
no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag
@@ -5335,7 +5390,7 @@ index fbac8f44d5..a40ac2144f 100755
# Compiler flag to prevent dynamic linking.
link_static_flag=$lt_lt_prog_compiler_static
-@@ -16750,9 +17453,6 @@ inherit_rpath=$inherit_rpath
+@@ -17125,9 +17830,6 @@ inherit_rpath=$inherit_rpath
# Whether libtool must link a program against all its dependency libraries.
link_all_deplibs=$link_all_deplibs
@@ -5345,7 +5400,7 @@ index fbac8f44d5..a40ac2144f 100755
# Set to "yes" if exported symbols are required.
always_export_symbols=$always_export_symbols
-@@ -16768,6 +17468,9 @@ include_expsyms=$lt_include_expsyms
+@@ -17143,6 +17845,9 @@ include_expsyms=$lt_include_expsyms
# Commands necessary for linking programs (against libraries) with templates.
prelink_cmds=$lt_prelink_cmds
@@ -5355,7 +5410,7 @@ index fbac8f44d5..a40ac2144f 100755
# Specify filename containing input files.
file_list_spec=$lt_file_list_spec
-@@ -16800,210 +17503,169 @@ ltmain="$ac_aux_dir/ltmain.sh"
+@@ -17175,210 +17880,169 @@ ltmain="$ac_aux_dir/ltmain.sh"
# if finds mixed CR/LF and LF-only lines. Since sed operates in
# text mode, it properly converts lines to CR/LF. This bash problem
# is reportedly fixed, but why not run on old versions too?
@@ -5557,15 +5612,9 @@ index fbac8f44d5..a40ac2144f 100755
-_LT_EOF
- ;;
- esac
--
--
-- sed -n '/^# Generated shell functions inserted here/,$p' "$ltmain" >> "$cfgfile" \
-- || (rm -f "$cfgfile"; exit 1)
--
-- mv -f "$cfgfile" "$ofile" ||
+ sed '$q' "$ltmain" >> "$cfgfile" \
+ || (rm -f "$cfgfile"; exit 1)
-+
+
+ if test x"$xsi_shell" = xyes; then
+ sed -e '/^func_dirname ()$/,/^} # func_dirname /c\
+func_dirname ()\
@@ -5723,17 +5772,20 @@ index fbac8f44d5..a40ac2144f 100755
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Unable to substitute extended shell functions in $ofile" >&5
+$as_echo "$as_me: WARNING: Unable to substitute extended shell functions in $ofile" >&2;}
+fi
-+
-+
+
+- sed -n '/^# Generated shell functions inserted here/,$p' "$ltmain" >> "$cfgfile" \
+- || (rm -f "$cfgfile"; exit 1)
+
+- mv -f "$cfgfile" "$ofile" ||
+ mv -f "$cfgfile" "$ofile" ||
(rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
chmod +x "$ofile"
-diff --git a/gprof/configure b/gprof/configure
-index 6b43bf2b18..245ee48bc3 100755
---- a/gprof/configure
-+++ b/gprof/configure
-@@ -631,8 +631,11 @@ OTOOL
+Index: git/gprof/configure
+===================================================================
+--- git.orig/gprof/configure
++++ git/gprof/configure
+@@ -662,8 +662,11 @@ OTOOL
LIPO
NMEDIT
DSYMUTIL
@@ -5745,7 +5797,7 @@ index 6b43bf2b18..245ee48bc3 100755
OBJDUMP
LN_S
NM
-@@ -744,6 +747,7 @@ enable_static
+@@ -780,6 +783,7 @@ enable_static
with_pic
enable_fast_install
with_gnu_ld
@@ -5753,7 +5805,7 @@ index 6b43bf2b18..245ee48bc3 100755
enable_libtool_lock
enable_plugins
enable_largefile
-@@ -1402,6 +1406,8 @@ Optional Packages:
+@@ -1442,6 +1446,8 @@ Optional Packages:
--with-pic try to use only PIC/non-PIC objects [default=use
both]
--with-gnu-ld assume the C compiler uses GNU ld [default=no]
@@ -5762,7 +5814,7 @@ index 6b43bf2b18..245ee48bc3 100755
Some influential environment variables:
CC C compiler command
-@@ -4836,8 +4842,8 @@ esac
+@@ -5124,8 +5130,8 @@ esac
@@ -5773,7 +5825,7 @@ index 6b43bf2b18..245ee48bc3 100755
-@@ -4877,7 +4883,7 @@ ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
+@@ -5165,7 +5171,7 @@ ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to print strings" >&5
$as_echo_n "checking how to print strings... " >&6; }
# Test print first, because it will be a builtin if present.
@@ -5782,7 +5834,7 @@ index 6b43bf2b18..245ee48bc3 100755
test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then
ECHO='print -r --'
elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then
-@@ -5563,8 +5569,8 @@ $as_echo_n "checking whether the shell understands some XSI constructs... " >&6;
+@@ -5851,8 +5857,8 @@ $as_echo_n "checking whether the shell u
# Try some XSI features
xsi_shell=no
( _lt_dummy="a/b/c"
@@ -5793,13 +5845,13 @@ index 6b43bf2b18..245ee48bc3 100755
&& eval 'test $(( 1 + 1 )) -eq 2 \
&& test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \
&& xsi_shell=yes
-@@ -5613,6 +5619,80 @@ esac
+@@ -5901,6 +5907,80 @@ esac
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to $host format" >&5
+$as_echo_n "checking how to convert $build file names to $host format... " >&6; }
-+if test "${lt_cv_to_host_file_cmd+set}" = set; then :
++if ${lt_cv_to_host_file_cmd+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ case $host in
@@ -5846,7 +5898,7 @@ index 6b43bf2b18..245ee48bc3 100755
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to toolchain format" >&5
+$as_echo_n "checking how to convert $build file names to toolchain format... " >&6; }
-+if test "${lt_cv_to_tool_file_cmd+set}" = set; then :
++if ${lt_cv_to_tool_file_cmd+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ #assume ordinary cross tools, or native build.
@@ -5873,8 +5925,8 @@ index 6b43bf2b18..245ee48bc3 100755
+
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $LD option to reload object files" >&5
$as_echo_n "checking for $LD option to reload object files... " >&6; }
- if test "${lt_cv_ld_reload_flag+set}" = set; then :
-@@ -5629,6 +5709,11 @@ case $reload_flag in
+ if ${lt_cv_ld_reload_flag+:} false; then :
+@@ -5917,6 +5997,11 @@ case $reload_flag in
esac
reload_cmds='$LD$reload_flag -o $output$reload_objs'
case $host_os in
@@ -5886,7 +5938,7 @@ index 6b43bf2b18..245ee48bc3 100755
darwin*)
if test "$GCC" = yes; then
reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs'
-@@ -5797,7 +5882,8 @@ mingw* | pw32*)
+@@ -6085,7 +6170,8 @@ mingw* | pw32*)
lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
lt_cv_file_magic_cmd='func_win32_libid'
else
@@ -5896,7 +5948,7 @@ index 6b43bf2b18..245ee48bc3 100755
lt_cv_file_magic_cmd='$OBJDUMP -f'
fi
;;
-@@ -5874,11 +5960,6 @@ linux* | k*bsd*-gnu | kopensolaris*-gnu)
+@@ -6162,11 +6248,6 @@ linux* | k*bsd*-gnu | kopensolaris*-gnu)
lt_cv_deplibs_check_method=pass_all
;;
@@ -5908,7 +5960,7 @@ index 6b43bf2b18..245ee48bc3 100755
netbsd*)
if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|_pic\.a)$'
-@@ -5956,6 +6037,21 @@ esac
+@@ -6244,6 +6325,21 @@ esac
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_deplibs_check_method" >&5
$as_echo "$lt_cv_deplibs_check_method" >&6; }
@@ -5930,7 +5982,7 @@ index 6b43bf2b18..245ee48bc3 100755
file_magic_cmd=$lt_cv_file_magic_cmd
deplibs_check_method=$lt_cv_deplibs_check_method
test -z "$deplibs_check_method" && deplibs_check_method=unknown
-@@ -5971,9 +6067,162 @@ test -z "$deplibs_check_method" && deplibs_check_method=unknown
+@@ -6259,9 +6355,162 @@ test -z "$deplibs_check_method" && depli
@@ -5944,12 +5996,14 @@ index 6b43bf2b18..245ee48bc3 100755
+
+
+
-+if test -n "$ac_tool_prefix"; then
+ if test -n "$ac_tool_prefix"; then
+- # Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args.
+-set dummy ${ac_tool_prefix}ar; ac_word=$2
+ # Extract the first word of "${ac_tool_prefix}dlltool", so it can be a program name with args.
+set dummy ${ac_tool_prefix}dlltool; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
-+if test "${ac_cv_prog_DLLTOOL+set}" = set; then :
++if ${ac_cv_prog_DLLTOOL+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$DLLTOOL"; then
@@ -5961,7 +6015,7 @@ index 6b43bf2b18..245ee48bc3 100755
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
-+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
++ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_prog_DLLTOOL="${ac_tool_prefix}dlltool"
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
@@ -5989,7 +6043,7 @@ index 6b43bf2b18..245ee48bc3 100755
+set dummy dlltool; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
-+if test "${ac_cv_prog_ac_ct_DLLTOOL+set}" = set; then :
++if ${ac_cv_prog_ac_ct_DLLTOOL+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$ac_ct_DLLTOOL"; then
@@ -6001,7 +6055,7 @@ index 6b43bf2b18..245ee48bc3 100755
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
-+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
++ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_prog_ac_ct_DLLTOOL="dlltool"
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
@@ -6049,7 +6103,7 @@ index 6b43bf2b18..245ee48bc3 100755
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to associate runtime and link libraries" >&5
+$as_echo_n "checking how to associate runtime and link libraries... " >&6; }
-+if test "${lt_cv_sharedlib_from_linklib_cmd+set}" = set; then :
++if ${lt_cv_sharedlib_from_linklib_cmd+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ lt_cv_sharedlib_from_linklib_cmd='unknown'
@@ -6085,26 +6139,24 @@ index 6b43bf2b18..245ee48bc3 100755
+
+
+
- if test -n "$ac_tool_prefix"; then
-- # Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args.
--set dummy ${ac_tool_prefix}ar; ac_word=$2
++if test -n "$ac_tool_prefix"; then
+ for ac_prog in ar
+ do
+ # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
+set dummy $ac_tool_prefix$ac_prog; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
- if test "${ac_cv_prog_AR+set}" = set; then :
-@@ -5989,7 +6238,7 @@ do
+ if ${ac_cv_prog_AR+:} false; then :
+@@ -6277,7 +6526,7 @@ do
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_AR="${ac_tool_prefix}ar"
+ ac_cv_prog_AR="$ac_tool_prefix$ac_prog"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
-@@ -6009,11 +6258,15 @@ $as_echo "no" >&6; }
+@@ -6297,11 +6546,15 @@ $as_echo "no" >&6; }
fi
@@ -6122,17 +6174,17 @@ index 6b43bf2b18..245ee48bc3 100755
+set dummy $ac_prog; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
- if test "${ac_cv_prog_ac_ct_AR+set}" = set; then :
-@@ -6029,7 +6282,7 @@ do
+ if ${ac_cv_prog_ac_ct_AR+:} false; then :
+@@ -6317,7 +6570,7 @@ do
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_ac_ct_AR="ar"
+ ac_cv_prog_ac_ct_AR="$ac_prog"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
-@@ -6048,6 +6301,10 @@ else
+@@ -6336,6 +6589,10 @@ else
$as_echo "no" >&6; }
fi
@@ -6143,7 +6195,7 @@ index 6b43bf2b18..245ee48bc3 100755
if test "x$ac_ct_AR" = x; then
AR="false"
else
-@@ -6059,12 +6316,10 @@ ac_tool_warned=yes ;;
+@@ -6347,16 +6604,72 @@ ac_tool_warned=yes ;;
esac
AR=$ac_ct_AR
fi
@@ -6155,16 +6207,20 @@ index 6b43bf2b18..245ee48bc3 100755
-test -z "$AR_FLAGS" && AR_FLAGS=cru
+: ${AR=ar}
+: ${AR_FLAGS=cru}
-
-
-
-@@ -6076,6 +6331,64 @@ test -z "$AR_FLAGS" && AR_FLAGS=cru
-
-
-
++
++
++
++
++
++
++
++
++
++
++
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for archiver @FILE support" >&5
+$as_echo_n "checking for archiver @FILE support... " >&6; }
-+if test "${lt_cv_ar_at_file+set}" = set; then :
++if ${lt_cv_ar_at_file+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ lt_cv_ar_at_file=no
@@ -6174,7 +6230,7 @@ index 6b43bf2b18..245ee48bc3 100755
+int
+main ()
+{
-+
+
+ ;
+ return 0;
+}
@@ -6200,30 +6256,23 @@ index 6b43bf2b18..245ee48bc3 100755
+ fi
+ fi
+ rm -f conftest.* libconftest.a
-+
+
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-+
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ar_at_file" >&5
+$as_echo "$lt_cv_ar_at_file" >&6; }
-+
+
+if test "x$lt_cv_ar_at_file" = xno; then
+ archiver_list_spec=
+else
+ archiver_list_spec=$lt_cv_ar_at_file
+fi
-+
-+
-+
-+
-+
-+
-+
- if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
- set dummy ${ac_tool_prefix}strip; ac_word=$2
-@@ -6410,8 +6723,8 @@ esac
+
+
+
+@@ -6698,8 +7011,8 @@ esac
lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
# Transform an extracted symbol line into symbol name and symbol address
@@ -6234,7 +6283,7 @@ index 6b43bf2b18..245ee48bc3 100755
# Handle CRLF in mingw tool chain
opt_cr=
-@@ -6447,6 +6760,7 @@ for ac_symprfx in "" "_"; do
+@@ -6735,6 +7048,7 @@ for ac_symprfx in "" "_"; do
else
lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[ ]\($symcode$symcode*\)[ ][ ]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
fi
@@ -6242,7 +6291,7 @@ index 6b43bf2b18..245ee48bc3 100755
# Check to see that the pipe works correctly.
pipe_works=no
-@@ -6488,6 +6802,18 @@ _LT_EOF
+@@ -6776,6 +7090,18 @@ _LT_EOF
if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
cat <<_LT_EOF > conftest.$ac_ext
@@ -6261,7 +6310,7 @@ index 6b43bf2b18..245ee48bc3 100755
#ifdef __cplusplus
extern "C" {
#endif
-@@ -6499,7 +6825,7 @@ _LT_EOF
+@@ -6787,7 +7113,7 @@ _LT_EOF
cat <<_LT_EOF >> conftest.$ac_ext
/* The mapping between symbol names and symbols. */
@@ -6270,7 +6319,7 @@ index 6b43bf2b18..245ee48bc3 100755
const char *name;
void *address;
}
-@@ -6525,8 +6851,8 @@ static const void *lt_preloaded_setup() {
+@@ -6813,8 +7139,8 @@ static const void *lt_preloaded_setup()
_LT_EOF
# Now try linking the two files.
mv conftest.$ac_objext conftstm.$ac_objext
@@ -6281,7 +6330,7 @@ index 6b43bf2b18..245ee48bc3 100755
LIBS="conftstm.$ac_objext"
CFLAGS="$CFLAGS$lt_prog_compiler_no_builtin_flag"
if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5
-@@ -6536,8 +6862,8 @@ _LT_EOF
+@@ -6824,8 +7150,8 @@ _LT_EOF
test $ac_status = 0; } && test -s conftest${ac_exeext}; then
pipe_works=yes
fi
@@ -6292,7 +6341,7 @@ index 6b43bf2b18..245ee48bc3 100755
else
echo "cannot find nm_test_func in $nlist" >&5
fi
-@@ -6574,6 +6900,18 @@ else
+@@ -6862,6 +7188,17 @@ else
$as_echo "ok" >&6; }
fi
@@ -6307,19 +6356,14 @@ index 6b43bf2b18..245ee48bc3 100755
+
+
+
-+
-@@ -6590,6 +6928,43 @@ fi
+@@ -6883,6 +7220,44 @@ fi
+
-+
-+
-+
-+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sysroot" >&5
+$as_echo_n "checking for sysroot... " >&6; }
+
@@ -6346,16 +6390,21 @@ index 6b43bf2b18..245ee48bc3 100755
+ *)
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${with_libtool_sysroot}" >&5
+$as_echo "${with_libtool_sysroot}" >&6; }
-+ as_fn_error "The sysroot must be an absolute path." "$LINENO" 5
++ as_fn_error $? "The sysroot must be an absolute path." "$LINENO" 5
+ ;;
+esac
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${lt_sysroot:-no}" >&5
+$as_echo "${lt_sysroot:-no}" >&6; }
-
-
-
-@@ -6801,6 +7176,123 @@ esac
++
++
++
++
++
+ # Check whether --enable-libtool-lock was given.
+ if test "${enable_libtool_lock+set}" = set; then :
+ enableval=$enable_libtool_lock;
+@@ -7089,6 +7464,123 @@ esac
need_locks="$enable_libtool_lock"
@@ -6364,7 +6413,7 @@ index 6b43bf2b18..245ee48bc3 100755
+set dummy ${ac_tool_prefix}mt; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
-+if test "${ac_cv_prog_MANIFEST_TOOL+set}" = set; then :
++if ${ac_cv_prog_MANIFEST_TOOL+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$MANIFEST_TOOL"; then
@@ -6376,7 +6425,7 @@ index 6b43bf2b18..245ee48bc3 100755
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
-+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
++ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_prog_MANIFEST_TOOL="${ac_tool_prefix}mt"
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
@@ -6404,7 +6453,7 @@ index 6b43bf2b18..245ee48bc3 100755
+set dummy mt; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
-+if test "${ac_cv_prog_ac_ct_MANIFEST_TOOL+set}" = set; then :
++if ${ac_cv_prog_ac_ct_MANIFEST_TOOL+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$ac_ct_MANIFEST_TOOL"; then
@@ -6416,7 +6465,7 @@ index 6b43bf2b18..245ee48bc3 100755
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
-+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
++ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_prog_ac_ct_MANIFEST_TOOL="mt"
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
@@ -6454,7 +6503,7 @@ index 6b43bf2b18..245ee48bc3 100755
+test -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $MANIFEST_TOOL is a manifest tool" >&5
+$as_echo_n "checking if $MANIFEST_TOOL is a manifest tool... " >&6; }
-+if test "${lt_cv_path_mainfest_tool+set}" = set; then :
++if ${lt_cv_path_mainfest_tool+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ lt_cv_path_mainfest_tool=no
@@ -6479,7 +6528,7 @@ index 6b43bf2b18..245ee48bc3 100755
case $host_os in
rhapsody* | darwin*)
-@@ -7364,6 +7856,8 @@ _LT_EOF
+@@ -7652,6 +8144,8 @@ _LT_EOF
$LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&5
echo "$AR cru libconftest.a conftest.o" >&5
$AR cru libconftest.a conftest.o 2>&5
@@ -6488,7 +6537,7 @@ index 6b43bf2b18..245ee48bc3 100755
cat > conftest.c << _LT_EOF
int main() { return 0;}
_LT_EOF
-@@ -7559,7 +8053,8 @@ fi
+@@ -7847,7 +8341,8 @@ fi
LIBTOOL_DEPS="$ltmain"
# Always use our own libtool.
@@ -6498,7 +6547,7 @@ index 6b43bf2b18..245ee48bc3 100755
-@@ -7648,7 +8143,7 @@ aix3*)
+@@ -7936,7 +8431,7 @@ aix3*)
esac
# Global variables:
@@ -6507,7 +6556,7 @@ index 6b43bf2b18..245ee48bc3 100755
can_build_shared=yes
# All known linkers require a `.a' archive for static linking (except MSVC,
-@@ -7946,8 +8441,6 @@ fi
+@@ -8234,8 +8729,6 @@ fi
lt_prog_compiler_pic=
lt_prog_compiler_static=
@@ -6516,7 +6565,7 @@ index 6b43bf2b18..245ee48bc3 100755
if test "$GCC" = yes; then
lt_prog_compiler_wl='-Wl,'
-@@ -8113,6 +8606,12 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
+@@ -8401,6 +8894,12 @@ $as_echo_n "checking for $compiler optio
lt_prog_compiler_pic='--shared'
lt_prog_compiler_static='--static'
;;
@@ -6529,7 +6578,7 @@ index 6b43bf2b18..245ee48bc3 100755
pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*)
# Portland Group compilers (*not* the Pentium gcc compiler,
# which looks to be a dead project)
-@@ -8175,7 +8674,7 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
+@@ -8463,7 +8962,7 @@ $as_echo_n "checking for $compiler optio
lt_prog_compiler_pic='-KPIC'
lt_prog_compiler_static='-Bstatic'
case $cc_basename in
@@ -6538,7 +6587,7 @@ index 6b43bf2b18..245ee48bc3 100755
lt_prog_compiler_wl='-Qoption ld ';;
*)
lt_prog_compiler_wl='-Wl,';;
-@@ -8232,13 +8731,17 @@ case $host_os in
+@@ -8520,13 +9019,17 @@ case $host_os in
lt_prog_compiler_pic="$lt_prog_compiler_pic -DPIC"
;;
esac
@@ -6551,7 +6600,7 @@ index 6b43bf2b18..245ee48bc3 100755
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5
+$as_echo_n "checking for $compiler option to produce PIC... " >&6; }
-+if test "${lt_cv_prog_compiler_pic+set}" = set; then :
++if ${lt_cv_prog_compiler_pic+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ lt_cv_prog_compiler_pic=$lt_prog_compiler_pic
@@ -6562,7 +6611,7 @@ index 6b43bf2b18..245ee48bc3 100755
#
# Check to make sure the PIC flag actually works.
-@@ -8299,6 +8802,11 @@ fi
+@@ -8587,6 +9090,11 @@ fi
@@ -6574,7 +6623,7 @@ index 6b43bf2b18..245ee48bc3 100755
#
# Check to make sure the static flag actually works.
#
-@@ -8649,7 +9157,8 @@ _LT_EOF
+@@ -8937,7 +9445,8 @@ _LT_EOF
allow_undefined_flag=unsupported
always_export_symbols=no
enable_shared_with_static_runtimes=yes
@@ -6584,7 +6633,7 @@ index 6b43bf2b18..245ee48bc3 100755
if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
-@@ -8748,12 +9257,12 @@ _LT_EOF
+@@ -9036,12 +9545,12 @@ _LT_EOF
whole_archive_flag_spec='--whole-archive$convenience --no-whole-archive'
hardcode_libdir_flag_spec=
hardcode_libdir_flag_spec_ld='-rpath $libdir'
@@ -6599,7 +6648,7 @@ index 6b43bf2b18..245ee48bc3 100755
fi
;;
esac
-@@ -8767,8 +9276,8 @@ _LT_EOF
+@@ -9055,8 +9564,8 @@ _LT_EOF
archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
wlarc=
else
@@ -6610,7 +6659,7 @@ index 6b43bf2b18..245ee48bc3 100755
fi
;;
-@@ -8786,8 +9295,8 @@ _LT_EOF
+@@ -9074,8 +9583,8 @@ _LT_EOF
_LT_EOF
elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
@@ -6621,7 +6670,7 @@ index 6b43bf2b18..245ee48bc3 100755
else
ld_shlibs=no
fi
-@@ -8833,8 +9342,8 @@ _LT_EOF
+@@ -9121,8 +9630,8 @@ _LT_EOF
*)
if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
@@ -6632,7 +6681,7 @@ index 6b43bf2b18..245ee48bc3 100755
else
ld_shlibs=no
fi
-@@ -8964,7 +9473,13 @@ _LT_EOF
+@@ -9252,7 +9761,13 @@ _LT_EOF
allow_undefined_flag='-berok'
# Determine the default libpath from the value encoded in an
# empty executable.
@@ -6640,14 +6689,14 @@ index 6b43bf2b18..245ee48bc3 100755
+ if test "${lt_cv_aix_libpath+set}" = set; then
+ aix_libpath=$lt_cv_aix_libpath
+else
-+ if test "${lt_cv_aix_libpath_+set}" = set; then :
++ if ${lt_cv_aix_libpath_+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
-@@ -8977,22 +9492,29 @@ main ()
+@@ -9265,22 +9780,29 @@ main ()
_ACEOF
if ac_fn_c_try_link "$LINENO"; then :
@@ -6690,7 +6739,7 @@ index 6b43bf2b18..245ee48bc3 100755
hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
archive_expsym_cmds='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
-@@ -9004,7 +9526,13 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9292,7 +9814,13 @@ if test -z "$aix_libpath"; then aix_libp
else
# Determine the default libpath from the value encoded in an
# empty executable.
@@ -6698,14 +6747,14 @@ index 6b43bf2b18..245ee48bc3 100755
+ if test "${lt_cv_aix_libpath+set}" = set; then
+ aix_libpath=$lt_cv_aix_libpath
+else
-+ if test "${lt_cv_aix_libpath_+set}" = set; then :
++ if ${lt_cv_aix_libpath_+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
-@@ -9017,22 +9545,29 @@ main ()
+@@ -9305,22 +9833,29 @@ main ()
_ACEOF
if ac_fn_c_try_link "$LINENO"; then :
@@ -6748,7 +6797,7 @@ index 6b43bf2b18..245ee48bc3 100755
hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
# Warning - without using the other run time loading flags,
-@@ -9077,20 +9612,63 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9365,20 +9900,63 @@ if test -z "$aix_libpath"; then aix_libp
# Microsoft Visual C++.
# hardcode_libdir_flag_spec is actually meaningless, as there is
# no search path for DLLs.
@@ -6826,7 +6875,7 @@ index 6b43bf2b18..245ee48bc3 100755
;;
darwin* | rhapsody*)
-@@ -9151,7 +9729,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9439,7 +10017,7 @@ if test -z "$aix_libpath"; then aix_libp
# FreeBSD 3 and greater uses gcc -shared to do shared libraries.
freebsd* | dragonfly*)
@@ -6835,7 +6884,7 @@ index 6b43bf2b18..245ee48bc3 100755
hardcode_libdir_flag_spec='-R$libdir'
hardcode_direct=yes
hardcode_shlibpath_var=no
-@@ -9159,7 +9737,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9447,7 +10025,7 @@ if test -z "$aix_libpath"; then aix_libp
hpux9*)
if test "$GCC" = yes; then
@@ -6844,7 +6893,7 @@ index 6b43bf2b18..245ee48bc3 100755
else
archive_cmds='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
fi
-@@ -9175,7 +9753,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9463,7 +10041,7 @@ if test -z "$aix_libpath"; then aix_libp
hpux10*)
if test "$GCC" = yes && test "$with_gnu_ld" = no; then
@@ -6853,7 +6902,7 @@ index 6b43bf2b18..245ee48bc3 100755
else
archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
fi
-@@ -9199,10 +9777,10 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9487,10 +10065,10 @@ if test -z "$aix_libpath"; then aix_libp
archive_cmds='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
;;
ia64*)
@@ -6866,7 +6915,7 @@ index 6b43bf2b18..245ee48bc3 100755
;;
esac
else
-@@ -9281,23 +9859,36 @@ fi
+@@ -9569,23 +10147,36 @@ fi
irix5* | irix6* | nonstopux*)
if test "$GCC" = yes; then
@@ -6881,7 +6930,7 @@ index 6b43bf2b18..245ee48bc3 100755
+ # This should be the same for all languages, so no per-tag cache variable.
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $host_os linker accepts -exported_symbol" >&5
+$as_echo_n "checking whether the $host_os linker accepts -exported_symbol... " >&6; }
-+if test "${lt_cv_irix_exported_symbol+set}" = set; then :
++if ${lt_cv_irix_exported_symbol+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ save_LDFLAGS="$LDFLAGS"
@@ -6911,7 +6960,7 @@ index 6b43bf2b18..245ee48bc3 100755
else
archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -exports_file $export_symbols -o $lib'
-@@ -9382,7 +9973,7 @@ rm -f core conftest.err conftest.$ac_objext \
+@@ -9670,7 +10261,7 @@ rm -f core conftest.err conftest.$ac_obj
osf4* | osf5*) # as osf3* with the addition of -msym flag
if test "$GCC" = yes; then
allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
@@ -6920,7 +6969,7 @@ index 6b43bf2b18..245ee48bc3 100755
hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
else
allow_undefined_flag=' -expect_unresolved \*'
-@@ -9401,9 +9992,9 @@ rm -f core conftest.err conftest.$ac_objext \
+@@ -9689,9 +10280,9 @@ rm -f core conftest.err conftest.$ac_obj
no_undefined_flag=' -z defs'
if test "$GCC" = yes; then
wlarc='${wl}'
@@ -6932,7 +6981,7 @@ index 6b43bf2b18..245ee48bc3 100755
else
case `$CC -V 2>&1` in
*"Compilers 5.0"*)
-@@ -9979,8 +10570,9 @@ cygwin* | mingw* | pw32* | cegcc*)
+@@ -10267,8 +10858,9 @@ cygwin* | mingw* | pw32* | cegcc*)
need_version=no
need_lib_prefix=no
@@ -6944,7 +6993,7 @@ index 6b43bf2b18..245ee48bc3 100755
library_names_spec='$libname.dll.a'
# DLL is installed to $(libdir)/../bin by postinstall_cmds
postinstall_cmds='base_file=`basename \${file}`~
-@@ -10013,13 +10605,71 @@ cygwin* | mingw* | pw32* | cegcc*)
+@@ -10301,13 +10893,71 @@ cygwin* | mingw* | pw32* | cegcc*)
library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
;;
esac
@@ -7017,7 +7066,7 @@ index 6b43bf2b18..245ee48bc3 100755
# FIXME: first we should search . and the directory the executable is in
shlibpath_var=PATH
;;
-@@ -10111,7 +10761,7 @@ haiku*)
+@@ -10399,7 +11049,7 @@ haiku*)
soname_spec='${libname}${release}${shared_ext}$major'
shlibpath_var=LIBRARY_PATH
shlibpath_overrides_runpath=yes
@@ -7026,7 +7075,16 @@ index 6b43bf2b18..245ee48bc3 100755
hardcode_into_libs=yes
;;
-@@ -10951,10 +11601,10 @@ else
+@@ -11195,7 +11845,7 @@ else
+ lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
+ lt_status=$lt_dlunknown
+ cat > conftest.$ac_ext <<_LT_EOF
+-#line 11193 "configure"
++#line $LINENO "configure"
+ #include "confdefs.h"
+
+ #if HAVE_DLFCN_H
+@@ -11239,10 +11889,10 @@ else
/* When -fvisbility=hidden is used, assume the code has been annotated
correspondingly for the symbols needed. */
#if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
@@ -7039,7 +7097,16 @@ index 6b43bf2b18..245ee48bc3 100755
int main ()
{
void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
-@@ -11057,10 +11707,10 @@ else
+@@ -11301,7 +11951,7 @@ else
+ lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
+ lt_status=$lt_dlunknown
+ cat > conftest.$ac_ext <<_LT_EOF
+-#line 11299 "configure"
++#line $LINENO "configure"
+ #include "confdefs.h"
+
+ #if HAVE_DLFCN_H
+@@ -11345,10 +11995,10 @@ else
/* When -fvisbility=hidden is used, assume the code has been annotated
correspondingly for the symbols needed. */
#if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
@@ -7052,7 +7119,7 @@ index 6b43bf2b18..245ee48bc3 100755
int main ()
{
void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
-@@ -13005,13 +13655,20 @@ exeext='`$ECHO "$exeext" | $SED "$delay_single_quote_subst"`'
+@@ -13314,13 +13964,20 @@ exeext='`$ECHO "$exeext" | $SED "$delay_
lt_unset='`$ECHO "$lt_unset" | $SED "$delay_single_quote_subst"`'
lt_SP2NL='`$ECHO "$lt_SP2NL" | $SED "$delay_single_quote_subst"`'
lt_NL2SP='`$ECHO "$lt_NL2SP" | $SED "$delay_single_quote_subst"`'
@@ -7073,7 +7140,7 @@ index 6b43bf2b18..245ee48bc3 100755
STRIP='`$ECHO "$STRIP" | $SED "$delay_single_quote_subst"`'
RANLIB='`$ECHO "$RANLIB" | $SED "$delay_single_quote_subst"`'
old_postinstall_cmds='`$ECHO "$old_postinstall_cmds" | $SED "$delay_single_quote_subst"`'
-@@ -13026,14 +13683,17 @@ lt_cv_sys_global_symbol_pipe='`$ECHO "$lt_cv_sys_global_symbol_pipe" | $SED "$de
+@@ -13335,14 +13992,17 @@ lt_cv_sys_global_symbol_pipe='`$ECHO "$l
lt_cv_sys_global_symbol_to_cdecl='`$ECHO "$lt_cv_sys_global_symbol_to_cdecl" | $SED "$delay_single_quote_subst"`'
lt_cv_sys_global_symbol_to_c_name_address='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address" | $SED "$delay_single_quote_subst"`'
lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address_lib_prefix" | $SED "$delay_single_quote_subst"`'
@@ -7092,7 +7159,7 @@ index 6b43bf2b18..245ee48bc3 100755
DSYMUTIL='`$ECHO "$DSYMUTIL" | $SED "$delay_single_quote_subst"`'
NMEDIT='`$ECHO "$NMEDIT" | $SED "$delay_single_quote_subst"`'
LIPO='`$ECHO "$LIPO" | $SED "$delay_single_quote_subst"`'
-@@ -13066,12 +13726,12 @@ hardcode_shlibpath_var='`$ECHO "$hardcode_shlibpath_var" | $SED "$delay_single_q
+@@ -13375,12 +14035,12 @@ hardcode_shlibpath_var='`$ECHO "$hardcod
hardcode_automatic='`$ECHO "$hardcode_automatic" | $SED "$delay_single_quote_subst"`'
inherit_rpath='`$ECHO "$inherit_rpath" | $SED "$delay_single_quote_subst"`'
link_all_deplibs='`$ECHO "$link_all_deplibs" | $SED "$delay_single_quote_subst"`'
@@ -7106,7 +7173,7 @@ index 6b43bf2b18..245ee48bc3 100755
file_list_spec='`$ECHO "$file_list_spec" | $SED "$delay_single_quote_subst"`'
variables_saved_for_relink='`$ECHO "$variables_saved_for_relink" | $SED "$delay_single_quote_subst"`'
need_lib_prefix='`$ECHO "$need_lib_prefix" | $SED "$delay_single_quote_subst"`'
-@@ -13126,8 +13786,13 @@ reload_flag \
+@@ -13435,8 +14095,13 @@ reload_flag \
OBJDUMP \
deplibs_check_method \
file_magic_cmd \
@@ -7120,7 +7187,7 @@ index 6b43bf2b18..245ee48bc3 100755
STRIP \
RANLIB \
CC \
-@@ -13137,12 +13802,14 @@ lt_cv_sys_global_symbol_pipe \
+@@ -13446,12 +14111,14 @@ lt_cv_sys_global_symbol_pipe \
lt_cv_sys_global_symbol_to_cdecl \
lt_cv_sys_global_symbol_to_c_name_address \
lt_cv_sys_global_symbol_to_c_name_address_lib_prefix \
@@ -7136,7 +7203,7 @@ index 6b43bf2b18..245ee48bc3 100755
DSYMUTIL \
NMEDIT \
LIPO \
-@@ -13158,7 +13825,6 @@ no_undefined_flag \
+@@ -13467,7 +14134,6 @@ no_undefined_flag \
hardcode_libdir_flag_spec \
hardcode_libdir_flag_spec_ld \
hardcode_libdir_separator \
@@ -7144,7 +7211,7 @@ index 6b43bf2b18..245ee48bc3 100755
exclude_expsyms \
include_expsyms \
file_list_spec \
-@@ -13194,6 +13860,7 @@ module_cmds \
+@@ -13503,6 +14169,7 @@ module_cmds \
module_expsym_cmds \
export_symbols_cmds \
prelink_cmds \
@@ -7152,7 +7219,7 @@ index 6b43bf2b18..245ee48bc3 100755
postinstall_cmds \
postuninstall_cmds \
finish_cmds \
-@@ -13950,7 +14617,8 @@ $as_echo X"$file" |
+@@ -14268,7 +14935,8 @@ $as_echo X"$file" |
# NOTE: Changes made to this file will be lost: look at ltmain.sh.
#
# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
@@ -7162,7 +7229,7 @@ index 6b43bf2b18..245ee48bc3 100755
# Written by Gordon Matzigkeit, 1996
#
# This file is part of GNU Libtool.
-@@ -14053,19 +14721,42 @@ SP2NL=$lt_lt_SP2NL
+@@ -14371,19 +15039,42 @@ SP2NL=$lt_lt_SP2NL
# turn newlines into spaces.
NL2SP=$lt_lt_NL2SP
@@ -7206,7 +7273,7 @@ index 6b43bf2b18..245ee48bc3 100755
# A symbol stripping program.
STRIP=$lt_STRIP
-@@ -14095,6 +14786,12 @@ global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address
+@@ -14413,6 +15104,12 @@ global_symbol_to_c_name_address=$lt_lt_c
# Transform the output of nm in a C name address pair when lib prefix is needed.
global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix
@@ -7219,7 +7286,7 @@ index 6b43bf2b18..245ee48bc3 100755
# The name of the directory that contains temporary libtool files.
objdir=$objdir
-@@ -14104,6 +14801,9 @@ MAGIC_CMD=$MAGIC_CMD
+@@ -14422,6 +15119,9 @@ MAGIC_CMD=$MAGIC_CMD
# Must we lock files when doing compilation?
need_locks=$lt_need_locks
@@ -7229,7 +7296,7 @@ index 6b43bf2b18..245ee48bc3 100755
# Tool to manipulate archived DWARF debug symbol files on Mac OS X.
DSYMUTIL=$lt_DSYMUTIL
-@@ -14218,12 +14918,12 @@ with_gcc=$GCC
+@@ -14536,12 +15236,12 @@ with_gcc=$GCC
# Compiler flag to turn off builtin functions.
no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag
@@ -7245,7 +7312,7 @@ index 6b43bf2b18..245ee48bc3 100755
# Compiler flag to prevent dynamic linking.
link_static_flag=$lt_lt_prog_compiler_static
-@@ -14310,9 +15010,6 @@ inherit_rpath=$inherit_rpath
+@@ -14628,9 +15328,6 @@ inherit_rpath=$inherit_rpath
# Whether libtool must link a program against all its dependency libraries.
link_all_deplibs=$link_all_deplibs
@@ -7255,7 +7322,7 @@ index 6b43bf2b18..245ee48bc3 100755
# Set to "yes" if exported symbols are required.
always_export_symbols=$always_export_symbols
-@@ -14328,6 +15025,9 @@ include_expsyms=$lt_include_expsyms
+@@ -14646,6 +15343,9 @@ include_expsyms=$lt_include_expsyms
# Commands necessary for linking programs (against libraries) with templates.
prelink_cmds=$lt_prelink_cmds
@@ -7265,7 +7332,7 @@ index 6b43bf2b18..245ee48bc3 100755
# Specify filename containing input files.
file_list_spec=$lt_file_list_spec
-@@ -14360,210 +15060,169 @@ ltmain="$ac_aux_dir/ltmain.sh"
+@@ -14678,210 +15378,169 @@ ltmain="$ac_aux_dir/ltmain.sh"
# if finds mixed CR/LF and LF-only lines. Since sed operates in
# text mode, it properly converts lines to CR/LF. This bash problem
# is reportedly fixed, but why not run on old versions too?
@@ -7467,15 +7534,9 @@ index 6b43bf2b18..245ee48bc3 100755
-_LT_EOF
- ;;
- esac
--
--
-- sed -n '/^# Generated shell functions inserted here/,$p' "$ltmain" >> "$cfgfile" \
-- || (rm -f "$cfgfile"; exit 1)
--
-- mv -f "$cfgfile" "$ofile" ||
+ sed '$q' "$ltmain" >> "$cfgfile" \
+ || (rm -f "$cfgfile"; exit 1)
-+
+
+ if test x"$xsi_shell" = xyes; then
+ sed -e '/^func_dirname ()$/,/^} # func_dirname /c\
+func_dirname ()\
@@ -7633,17 +7694,20 @@ index 6b43bf2b18..245ee48bc3 100755
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Unable to substitute extended shell functions in $ofile" >&5
+$as_echo "$as_me: WARNING: Unable to substitute extended shell functions in $ofile" >&2;}
+fi
-+
-+
+
+- sed -n '/^# Generated shell functions inserted here/,$p' "$ltmain" >> "$cfgfile" \
+- || (rm -f "$cfgfile"; exit 1)
+
+- mv -f "$cfgfile" "$ofile" ||
+ mv -f "$cfgfile" "$ofile" ||
(rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
chmod +x "$ofile"
-diff --git a/ld/configure b/ld/configure
-index 0cc6e8a50f..db8b998722 100755
---- a/ld/configure
-+++ b/ld/configure
-@@ -655,8 +655,11 @@ OTOOL
+Index: git/ld/configure
+===================================================================
+--- git.orig/ld/configure
++++ git/ld/configure
+@@ -687,8 +687,11 @@ OTOOL
LIPO
NMEDIT
DSYMUTIL
@@ -7655,7 +7719,7 @@ index 0cc6e8a50f..db8b998722 100755
OBJDUMP
LN_S
NM
-@@ -778,6 +781,7 @@ enable_static
+@@ -815,6 +818,7 @@ enable_static
with_pic
enable_fast_install
with_gnu_ld
@@ -7663,7 +7727,7 @@ index 0cc6e8a50f..db8b998722 100755
enable_libtool_lock
enable_plugins
enable_largefile
-@@ -1464,6 +1468,8 @@ Optional Packages:
+@@ -1507,6 +1511,8 @@ Optional Packages:
--with-pic try to use only PIC/non-PIC objects [default=use
both]
--with-gnu-ld assume the C compiler uses GNU ld [default=no]
@@ -7672,7 +7736,7 @@ index 0cc6e8a50f..db8b998722 100755
--with-lib-path=dir1:dir2... set default LIB_PATH
--with-sysroot=DIR Search for usr/lib et al within DIR.
-@@ -5658,8 +5664,8 @@ esac
+@@ -5959,8 +5965,8 @@ esac
@@ -7683,7 +7747,7 @@ index 0cc6e8a50f..db8b998722 100755
-@@ -5699,7 +5705,7 @@ ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
+@@ -6000,7 +6006,7 @@ ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to print strings" >&5
$as_echo_n "checking how to print strings... " >&6; }
# Test print first, because it will be a builtin if present.
@@ -7692,7 +7756,7 @@ index 0cc6e8a50f..db8b998722 100755
test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then
ECHO='print -r --'
elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then
-@@ -6385,8 +6391,8 @@ $as_echo_n "checking whether the shell understands some XSI constructs... " >&6;
+@@ -6686,8 +6692,8 @@ $as_echo_n "checking whether the shell u
# Try some XSI features
xsi_shell=no
( _lt_dummy="a/b/c"
@@ -7703,13 +7767,13 @@ index 0cc6e8a50f..db8b998722 100755
&& eval 'test $(( 1 + 1 )) -eq 2 \
&& test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \
&& xsi_shell=yes
-@@ -6435,6 +6441,80 @@ esac
+@@ -6736,6 +6742,80 @@ esac
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to $host format" >&5
+$as_echo_n "checking how to convert $build file names to $host format... " >&6; }
-+if test "${lt_cv_to_host_file_cmd+set}" = set; then :
++if ${lt_cv_to_host_file_cmd+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ case $host in
@@ -7756,7 +7820,7 @@ index 0cc6e8a50f..db8b998722 100755
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to toolchain format" >&5
+$as_echo_n "checking how to convert $build file names to toolchain format... " >&6; }
-+if test "${lt_cv_to_tool_file_cmd+set}" = set; then :
++if ${lt_cv_to_tool_file_cmd+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ #assume ordinary cross tools, or native build.
@@ -7783,8 +7847,8 @@ index 0cc6e8a50f..db8b998722 100755
+
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $LD option to reload object files" >&5
$as_echo_n "checking for $LD option to reload object files... " >&6; }
- if test "${lt_cv_ld_reload_flag+set}" = set; then :
-@@ -6451,6 +6531,11 @@ case $reload_flag in
+ if ${lt_cv_ld_reload_flag+:} false; then :
+@@ -6752,6 +6832,11 @@ case $reload_flag in
esac
reload_cmds='$LD$reload_flag -o $output$reload_objs'
case $host_os in
@@ -7796,7 +7860,7 @@ index 0cc6e8a50f..db8b998722 100755
darwin*)
if test "$GCC" = yes; then
reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs'
-@@ -6619,7 +6704,8 @@ mingw* | pw32*)
+@@ -6920,7 +7005,8 @@ mingw* | pw32*)
lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
lt_cv_file_magic_cmd='func_win32_libid'
else
@@ -7806,7 +7870,7 @@ index 0cc6e8a50f..db8b998722 100755
lt_cv_file_magic_cmd='$OBJDUMP -f'
fi
;;
-@@ -6773,6 +6859,21 @@ esac
+@@ -7074,6 +7160,21 @@ esac
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_deplibs_check_method" >&5
$as_echo "$lt_cv_deplibs_check_method" >&6; }
@@ -7828,7 +7892,7 @@ index 0cc6e8a50f..db8b998722 100755
file_magic_cmd=$lt_cv_file_magic_cmd
deplibs_check_method=$lt_cv_deplibs_check_method
test -z "$deplibs_check_method" && deplibs_check_method=unknown
-@@ -6788,9 +6889,162 @@ test -z "$deplibs_check_method" && deplibs_check_method=unknown
+@@ -7089,9 +7190,162 @@ test -z "$deplibs_check_method" && depli
@@ -7847,7 +7911,7 @@ index 0cc6e8a50f..db8b998722 100755
+set dummy ${ac_tool_prefix}dlltool; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
-+if test "${ac_cv_prog_DLLTOOL+set}" = set; then :
++if ${ac_cv_prog_DLLTOOL+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$DLLTOOL"; then
@@ -7859,7 +7923,7 @@ index 0cc6e8a50f..db8b998722 100755
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
-+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
++ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_prog_DLLTOOL="${ac_tool_prefix}dlltool"
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
@@ -7887,7 +7951,7 @@ index 0cc6e8a50f..db8b998722 100755
+set dummy dlltool; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
-+if test "${ac_cv_prog_ac_ct_DLLTOOL+set}" = set; then :
++if ${ac_cv_prog_ac_ct_DLLTOOL+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$ac_ct_DLLTOOL"; then
@@ -7899,7 +7963,7 @@ index 0cc6e8a50f..db8b998722 100755
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
-+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
++ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_prog_ac_ct_DLLTOOL="dlltool"
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
@@ -7947,7 +8011,7 @@ index 0cc6e8a50f..db8b998722 100755
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to associate runtime and link libraries" >&5
+$as_echo_n "checking how to associate runtime and link libraries... " >&6; }
-+if test "${lt_cv_sharedlib_from_linklib_cmd+set}" = set; then :
++if ${lt_cv_sharedlib_from_linklib_cmd+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ lt_cv_sharedlib_from_linklib_cmd='unknown'
@@ -7992,17 +8056,17 @@ index 0cc6e8a50f..db8b998722 100755
+set dummy $ac_tool_prefix$ac_prog; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
- if test "${ac_cv_prog_AR+set}" = set; then :
-@@ -6806,7 +7060,7 @@ do
+ if ${ac_cv_prog_AR+:} false; then :
+@@ -7107,7 +7361,7 @@ do
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_AR="${ac_tool_prefix}ar"
+ ac_cv_prog_AR="$ac_tool_prefix$ac_prog"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
-@@ -6826,11 +7080,15 @@ $as_echo "no" >&6; }
+@@ -7127,11 +7381,15 @@ $as_echo "no" >&6; }
fi
@@ -8020,17 +8084,17 @@ index 0cc6e8a50f..db8b998722 100755
+set dummy $ac_prog; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
- if test "${ac_cv_prog_ac_ct_AR+set}" = set; then :
-@@ -6846,7 +7104,7 @@ do
+ if ${ac_cv_prog_ac_ct_AR+:} false; then :
+@@ -7147,7 +7405,7 @@ do
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_ac_ct_AR="ar"
+ ac_cv_prog_ac_ct_AR="$ac_prog"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
-@@ -6865,6 +7123,10 @@ else
+@@ -7166,6 +7424,10 @@ else
$as_echo "no" >&6; }
fi
@@ -8041,7 +8105,7 @@ index 0cc6e8a50f..db8b998722 100755
if test "x$ac_ct_AR" = x; then
AR="false"
else
-@@ -6876,12 +7138,12 @@ ac_tool_warned=yes ;;
+@@ -7177,12 +7439,11 @@ ac_tool_warned=yes ;;
esac
AR=$ac_ct_AR
fi
@@ -8054,17 +8118,16 @@ index 0cc6e8a50f..db8b998722 100755
+: ${AR=ar}
+: ${AR_FLAGS=cru}
+
-+
-@@ -6891,6 +7153,62 @@ test -z "$AR_FLAGS" && AR_FLAGS=cru
+@@ -7193,6 +7454,63 @@ test -z "$AR_FLAGS" && AR_FLAGS=cru
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for archiver @FILE support" >&5
+$as_echo_n "checking for archiver @FILE support... " >&6; }
-+if test "${lt_cv_ar_at_file+set}" = set; then :
++if ${lt_cv_ar_at_file+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ lt_cv_ar_at_file=no
@@ -8118,10 +8181,11 @@ index 0cc6e8a50f..db8b998722 100755
+
+
+
-
++
if test -n "$ac_tool_prefix"; then
-@@ -7227,8 +7545,8 @@ esac
+ # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
+@@ -7528,8 +7846,8 @@ esac
lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
# Transform an extracted symbol line into symbol name and symbol address
@@ -8132,7 +8196,7 @@ index 0cc6e8a50f..db8b998722 100755
# Handle CRLF in mingw tool chain
opt_cr=
-@@ -7264,6 +7582,7 @@ for ac_symprfx in "" "_"; do
+@@ -7565,6 +7883,7 @@ for ac_symprfx in "" "_"; do
else
lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[ ]\($symcode$symcode*\)[ ][ ]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
fi
@@ -8140,7 +8204,7 @@ index 0cc6e8a50f..db8b998722 100755
# Check to see that the pipe works correctly.
pipe_works=no
-@@ -7305,6 +7624,18 @@ _LT_EOF
+@@ -7606,6 +7925,18 @@ _LT_EOF
if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
cat <<_LT_EOF > conftest.$ac_ext
@@ -8159,7 +8223,7 @@ index 0cc6e8a50f..db8b998722 100755
#ifdef __cplusplus
extern "C" {
#endif
-@@ -7316,7 +7647,7 @@ _LT_EOF
+@@ -7617,7 +7948,7 @@ _LT_EOF
cat <<_LT_EOF >> conftest.$ac_ext
/* The mapping between symbol names and symbols. */
@@ -8168,7 +8232,7 @@ index 0cc6e8a50f..db8b998722 100755
const char *name;
void *address;
}
-@@ -7342,8 +7673,8 @@ static const void *lt_preloaded_setup() {
+@@ -7643,8 +7974,8 @@ static const void *lt_preloaded_setup()
_LT_EOF
# Now try linking the two files.
mv conftest.$ac_objext conftstm.$ac_objext
@@ -8179,7 +8243,7 @@ index 0cc6e8a50f..db8b998722 100755
LIBS="conftstm.$ac_objext"
CFLAGS="$CFLAGS$lt_prog_compiler_no_builtin_flag"
if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5
-@@ -7353,8 +7684,8 @@ _LT_EOF
+@@ -7654,8 +7985,8 @@ _LT_EOF
test $ac_status = 0; } && test -s conftest${ac_exeext}; then
pipe_works=yes
fi
@@ -8190,7 +8254,7 @@ index 0cc6e8a50f..db8b998722 100755
else
echo "cannot find nm_test_func in $nlist" >&5
fi
-@@ -7391,6 +7722,19 @@ else
+@@ -7692,6 +8023,13 @@ else
$as_echo "ok" >&6; }
fi
@@ -8201,16 +8265,10 @@ index 0cc6e8a50f..db8b998722 100755
+ nm_file_list_spec='@'
+fi
+
-+
-+
-+
-+
-+
-+
-@@ -7404,6 +7748,42 @@ fi
+@@ -7713,6 +8051,48 @@ fi
@@ -8218,6 +8276,7 @@ index 0cc6e8a50f..db8b998722 100755
+
+
+
++
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sysroot" >&5
+$as_echo_n "checking for sysroot... " >&6; }
+
@@ -8244,16 +8303,21 @@ index 0cc6e8a50f..db8b998722 100755
+ *)
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${with_libtool_sysroot}" >&5
+$as_echo "${with_libtool_sysroot}" >&6; }
-+ as_fn_error "The sysroot must be an absolute path." "$LINENO" 5
++ as_fn_error $? "The sysroot must be an absolute path." "$LINENO" 5
+ ;;
+esac
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${lt_sysroot:-no}" >&5
+$as_echo "${lt_sysroot:-no}" >&6; }
-
-
-
-@@ -7618,6 +7998,123 @@ esac
++
++
++
++
++
+ # Check whether --enable-libtool-lock was given.
+ if test "${enable_libtool_lock+set}" = set; then :
+ enableval=$enable_libtool_lock;
+@@ -7919,6 +8299,123 @@ esac
need_locks="$enable_libtool_lock"
@@ -8262,7 +8326,7 @@ index 0cc6e8a50f..db8b998722 100755
+set dummy ${ac_tool_prefix}mt; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
-+if test "${ac_cv_prog_MANIFEST_TOOL+set}" = set; then :
++if ${ac_cv_prog_MANIFEST_TOOL+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$MANIFEST_TOOL"; then
@@ -8274,7 +8338,7 @@ index 0cc6e8a50f..db8b998722 100755
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
-+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
++ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_prog_MANIFEST_TOOL="${ac_tool_prefix}mt"
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
@@ -8302,7 +8366,7 @@ index 0cc6e8a50f..db8b998722 100755
+set dummy mt; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
-+if test "${ac_cv_prog_ac_ct_MANIFEST_TOOL+set}" = set; then :
++if ${ac_cv_prog_ac_ct_MANIFEST_TOOL+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$ac_ct_MANIFEST_TOOL"; then
@@ -8314,7 +8378,7 @@ index 0cc6e8a50f..db8b998722 100755
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
-+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
++ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_prog_ac_ct_MANIFEST_TOOL="mt"
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
@@ -8352,7 +8416,7 @@ index 0cc6e8a50f..db8b998722 100755
+test -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $MANIFEST_TOOL is a manifest tool" >&5
+$as_echo_n "checking if $MANIFEST_TOOL is a manifest tool... " >&6; }
-+if test "${lt_cv_path_mainfest_tool+set}" = set; then :
++if ${lt_cv_path_mainfest_tool+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ lt_cv_path_mainfest_tool=no
@@ -8377,7 +8441,7 @@ index 0cc6e8a50f..db8b998722 100755
case $host_os in
rhapsody* | darwin*)
-@@ -8181,6 +8678,8 @@ _LT_EOF
+@@ -8482,6 +8979,8 @@ _LT_EOF
$LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&5
echo "$AR cru libconftest.a conftest.o" >&5
$AR cru libconftest.a conftest.o 2>&5
@@ -8386,7 +8450,7 @@ index 0cc6e8a50f..db8b998722 100755
cat > conftest.c << _LT_EOF
int main() { return 0;}
_LT_EOF
-@@ -8249,6 +8748,16 @@ done
+@@ -8550,6 +9049,16 @@ done
@@ -8403,7 +8467,7 @@ index 0cc6e8a50f..db8b998722 100755
# Set options
-@@ -8377,7 +8886,8 @@ fi
+@@ -8678,7 +9187,8 @@ fi
LIBTOOL_DEPS="$ltmain"
# Always use our own libtool.
@@ -8413,7 +8477,7 @@ index 0cc6e8a50f..db8b998722 100755
-@@ -8466,7 +8976,7 @@ aix3*)
+@@ -8767,7 +9277,7 @@ aix3*)
esac
# Global variables:
@@ -8422,7 +8486,7 @@ index 0cc6e8a50f..db8b998722 100755
can_build_shared=yes
# All known linkers require a `.a' archive for static linking (except MSVC,
-@@ -8764,8 +9274,6 @@ fi
+@@ -9065,8 +9575,6 @@ fi
lt_prog_compiler_pic=
lt_prog_compiler_static=
@@ -8431,7 +8495,7 @@ index 0cc6e8a50f..db8b998722 100755
if test "$GCC" = yes; then
lt_prog_compiler_wl='-Wl,'
-@@ -8931,6 +9439,12 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
+@@ -9232,6 +9740,12 @@ $as_echo_n "checking for $compiler optio
lt_prog_compiler_pic='--shared'
lt_prog_compiler_static='--static'
;;
@@ -8444,7 +8508,7 @@ index 0cc6e8a50f..db8b998722 100755
pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*)
# Portland Group compilers (*not* the Pentium gcc compiler,
# which looks to be a dead project)
-@@ -8993,7 +9507,7 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
+@@ -9294,7 +9808,7 @@ $as_echo_n "checking for $compiler optio
lt_prog_compiler_pic='-KPIC'
lt_prog_compiler_static='-Bstatic'
case $cc_basename in
@@ -8453,7 +8517,7 @@ index 0cc6e8a50f..db8b998722 100755
lt_prog_compiler_wl='-Qoption ld ';;
*)
lt_prog_compiler_wl='-Wl,';;
-@@ -9050,13 +9564,17 @@ case $host_os in
+@@ -9351,13 +9865,17 @@ case $host_os in
lt_prog_compiler_pic="$lt_prog_compiler_pic -DPIC"
;;
esac
@@ -8466,7 +8530,7 @@ index 0cc6e8a50f..db8b998722 100755
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5
+$as_echo_n "checking for $compiler option to produce PIC... " >&6; }
-+if test "${lt_cv_prog_compiler_pic+set}" = set; then :
++if ${lt_cv_prog_compiler_pic+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ lt_cv_prog_compiler_pic=$lt_prog_compiler_pic
@@ -8477,7 +8541,7 @@ index 0cc6e8a50f..db8b998722 100755
#
# Check to make sure the PIC flag actually works.
-@@ -9117,6 +9635,11 @@ fi
+@@ -9418,6 +9936,11 @@ fi
@@ -8489,7 +8553,7 @@ index 0cc6e8a50f..db8b998722 100755
#
# Check to make sure the static flag actually works.
#
-@@ -9467,7 +9990,8 @@ _LT_EOF
+@@ -9768,7 +10291,8 @@ _LT_EOF
allow_undefined_flag=unsupported
always_export_symbols=no
enable_shared_with_static_runtimes=yes
@@ -8499,7 +8563,7 @@ index 0cc6e8a50f..db8b998722 100755
if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
-@@ -9566,12 +10090,12 @@ _LT_EOF
+@@ -9867,12 +10391,12 @@ _LT_EOF
whole_archive_flag_spec='--whole-archive$convenience --no-whole-archive'
hardcode_libdir_flag_spec=
hardcode_libdir_flag_spec_ld='-rpath $libdir'
@@ -8514,7 +8578,7 @@ index 0cc6e8a50f..db8b998722 100755
fi
;;
esac
-@@ -9585,8 +10109,8 @@ _LT_EOF
+@@ -9886,8 +10410,8 @@ _LT_EOF
archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
wlarc=
else
@@ -8525,7 +8589,7 @@ index 0cc6e8a50f..db8b998722 100755
fi
;;
-@@ -9604,8 +10128,8 @@ _LT_EOF
+@@ -9905,8 +10429,8 @@ _LT_EOF
_LT_EOF
elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
@@ -8536,7 +8600,7 @@ index 0cc6e8a50f..db8b998722 100755
else
ld_shlibs=no
fi
-@@ -9651,8 +10175,8 @@ _LT_EOF
+@@ -9952,8 +10476,8 @@ _LT_EOF
*)
if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
@@ -8547,7 +8611,7 @@ index 0cc6e8a50f..db8b998722 100755
else
ld_shlibs=no
fi
-@@ -9782,7 +10306,13 @@ _LT_EOF
+@@ -10083,7 +10607,13 @@ _LT_EOF
allow_undefined_flag='-berok'
# Determine the default libpath from the value encoded in an
# empty executable.
@@ -8555,14 +8619,14 @@ index 0cc6e8a50f..db8b998722 100755
+ if test "${lt_cv_aix_libpath+set}" = set; then
+ aix_libpath=$lt_cv_aix_libpath
+else
-+ if test "${lt_cv_aix_libpath_+set}" = set; then :
++ if ${lt_cv_aix_libpath_+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
-@@ -9795,22 +10325,29 @@ main ()
+@@ -10096,22 +10626,29 @@ main ()
_ACEOF
if ac_fn_c_try_link "$LINENO"; then :
@@ -8605,7 +8669,7 @@ index 0cc6e8a50f..db8b998722 100755
hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
archive_expsym_cmds='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
-@@ -9822,7 +10359,13 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -10123,7 +10660,13 @@ if test -z "$aix_libpath"; then aix_libp
else
# Determine the default libpath from the value encoded in an
# empty executable.
@@ -8613,14 +8677,14 @@ index 0cc6e8a50f..db8b998722 100755
+ if test "${lt_cv_aix_libpath+set}" = set; then
+ aix_libpath=$lt_cv_aix_libpath
+else
-+ if test "${lt_cv_aix_libpath_+set}" = set; then :
++ if ${lt_cv_aix_libpath_+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
-@@ -9835,22 +10378,29 @@ main ()
+@@ -10136,22 +10679,29 @@ main ()
_ACEOF
if ac_fn_c_try_link "$LINENO"; then :
@@ -8663,11 +8727,10 @@ index 0cc6e8a50f..db8b998722 100755
hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
# Warning - without using the other run time loading flags,
-@@ -9894,21 +10444,64 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
- # When not using gcc, we currently assume that we are using
+@@ -10196,20 +10746,63 @@ if test -z "$aix_libpath"; then aix_libp
# Microsoft Visual C++.
# hardcode_libdir_flag_spec is actually meaningless, as there is
-- # no search path for DLLs.
+ # no search path for DLLs.
- hardcode_libdir_flag_spec=' '
- allow_undefined_flag=unsupported
- # Tell ltmain to make .lib files, not .a files.
@@ -8682,7 +8745,6 @@ index 0cc6e8a50f..db8b998722 100755
- old_archive_cmds='lib -OUT:$oldlib$oldobjs$old_deplibs'
- fix_srcfile_path='`cygpath -w "$srcfile"`'
- enable_shared_with_static_runtimes=yes
-+ # no search path for DLLs.
+ case $cc_basename in
+ cl*)
+ # Native MSVC
@@ -8743,7 +8805,7 @@ index 0cc6e8a50f..db8b998722 100755
;;
darwin* | rhapsody*)
-@@ -9969,7 +10562,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -10270,7 +10863,7 @@ if test -z "$aix_libpath"; then aix_libp
# FreeBSD 3 and greater uses gcc -shared to do shared libraries.
freebsd* | dragonfly*)
@@ -8752,7 +8814,7 @@ index 0cc6e8a50f..db8b998722 100755
hardcode_libdir_flag_spec='-R$libdir'
hardcode_direct=yes
hardcode_shlibpath_var=no
-@@ -9977,7 +10570,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -10278,7 +10871,7 @@ if test -z "$aix_libpath"; then aix_libp
hpux9*)
if test "$GCC" = yes; then
@@ -8761,7 +8823,7 @@ index 0cc6e8a50f..db8b998722 100755
else
archive_cmds='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
fi
-@@ -9993,7 +10586,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -10294,7 +10887,7 @@ if test -z "$aix_libpath"; then aix_libp
hpux10*)
if test "$GCC" = yes && test "$with_gnu_ld" = no; then
@@ -8770,7 +8832,7 @@ index 0cc6e8a50f..db8b998722 100755
else
archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
fi
-@@ -10017,10 +10610,10 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -10318,10 +10911,10 @@ if test -z "$aix_libpath"; then aix_libp
archive_cmds='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
;;
ia64*)
@@ -8783,7 +8845,7 @@ index 0cc6e8a50f..db8b998722 100755
;;
esac
else
-@@ -10099,23 +10692,36 @@ fi
+@@ -10400,23 +10993,36 @@ fi
irix5* | irix6* | nonstopux*)
if test "$GCC" = yes; then
@@ -8798,7 +8860,7 @@ index 0cc6e8a50f..db8b998722 100755
+ # This should be the same for all languages, so no per-tag cache variable.
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $host_os linker accepts -exported_symbol" >&5
+$as_echo_n "checking whether the $host_os linker accepts -exported_symbol... " >&6; }
-+if test "${lt_cv_irix_exported_symbol+set}" = set; then :
++if ${lt_cv_irix_exported_symbol+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ save_LDFLAGS="$LDFLAGS"
@@ -8828,7 +8890,7 @@ index 0cc6e8a50f..db8b998722 100755
else
archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -exports_file $export_symbols -o $lib'
-@@ -10200,7 +10806,7 @@ rm -f core conftest.err conftest.$ac_objext \
+@@ -10501,7 +11107,7 @@ rm -f core conftest.err conftest.$ac_obj
osf4* | osf5*) # as osf3* with the addition of -msym flag
if test "$GCC" = yes; then
allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
@@ -8837,7 +8899,7 @@ index 0cc6e8a50f..db8b998722 100755
hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
else
allow_undefined_flag=' -expect_unresolved \*'
-@@ -10219,9 +10825,9 @@ rm -f core conftest.err conftest.$ac_objext \
+@@ -10520,9 +11126,9 @@ rm -f core conftest.err conftest.$ac_obj
no_undefined_flag=' -z defs'
if test "$GCC" = yes; then
wlarc='${wl}'
@@ -8849,7 +8911,7 @@ index 0cc6e8a50f..db8b998722 100755
else
case `$CC -V 2>&1` in
*"Compilers 5.0"*)
-@@ -10797,8 +11403,9 @@ cygwin* | mingw* | pw32* | cegcc*)
+@@ -11098,8 +11704,9 @@ cygwin* | mingw* | pw32* | cegcc*)
need_version=no
need_lib_prefix=no
@@ -8861,7 +8923,7 @@ index 0cc6e8a50f..db8b998722 100755
library_names_spec='$libname.dll.a'
# DLL is installed to $(libdir)/../bin by postinstall_cmds
postinstall_cmds='base_file=`basename \${file}`~
-@@ -10831,13 +11438,71 @@ cygwin* | mingw* | pw32* | cegcc*)
+@@ -11132,13 +11739,71 @@ cygwin* | mingw* | pw32* | cegcc*)
library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
;;
esac
@@ -8934,7 +8996,7 @@ index 0cc6e8a50f..db8b998722 100755
# FIXME: first we should search . and the directory the executable is in
shlibpath_var=PATH
;;
-@@ -10929,7 +11594,7 @@ haiku*)
+@@ -11230,7 +11895,7 @@ haiku*)
soname_spec='${libname}${release}${shared_ext}$major'
shlibpath_var=LIBRARY_PATH
shlibpath_overrides_runpath=yes
@@ -8943,7 +9005,16 @@ index 0cc6e8a50f..db8b998722 100755
hardcode_into_libs=yes
;;
-@@ -11769,10 +12434,10 @@ else
+@@ -12026,7 +12691,7 @@ else
+ lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
+ lt_status=$lt_dlunknown
+ cat > conftest.$ac_ext <<_LT_EOF
+-#line 12029 "configure"
++#line $LINENO "configure"
+ #include "confdefs.h"
+
+ #if HAVE_DLFCN_H
+@@ -12070,10 +12735,10 @@ else
/* When -fvisbility=hidden is used, assume the code has been annotated
correspondingly for the symbols needed. */
#if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
@@ -8956,7 +9027,16 @@ index 0cc6e8a50f..db8b998722 100755
int main ()
{
void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
-@@ -11875,10 +12540,10 @@ else
+@@ -12132,7 +12797,7 @@ else
+ lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
+ lt_status=$lt_dlunknown
+ cat > conftest.$ac_ext <<_LT_EOF
+-#line 12135 "configure"
++#line $LINENO "configure"
+ #include "confdefs.h"
+
+ #if HAVE_DLFCN_H
+@@ -12176,10 +12841,10 @@ else
/* When -fvisbility=hidden is used, assume the code has been annotated
correspondingly for the symbols needed. */
#if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
@@ -8969,7 +9049,7 @@ index 0cc6e8a50f..db8b998722 100755
int main ()
{
void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
-@@ -12270,6 +12935,7 @@ $RM -r conftest*
+@@ -12571,6 +13236,7 @@ $RM -r conftest*
# Allow CC to be a program name with arguments.
lt_save_CC=$CC
@@ -8977,7 +9057,7 @@ index 0cc6e8a50f..db8b998722 100755
lt_save_LD=$LD
lt_save_GCC=$GCC
GCC=$GXX
-@@ -12287,6 +12953,7 @@ $RM -r conftest*
+@@ -12588,6 +13254,7 @@ $RM -r conftest*
fi
test -z "${LDCXX+set}" || LD=$LDCXX
CC=${CXX-"c++"}
@@ -8985,7 +9065,7 @@ index 0cc6e8a50f..db8b998722 100755
compiler=$CC
compiler_CXX=$CC
for cc_temp in $compiler""; do
-@@ -12569,7 +13236,13 @@ $as_echo_n "checking whether the $compiler linker ($LD) supports shared librarie
+@@ -12870,7 +13537,13 @@ $as_echo_n "checking whether the $compil
allow_undefined_flag_CXX='-berok'
# Determine the default libpath from the value encoded in an empty
# executable.
@@ -8993,14 +9073,14 @@ index 0cc6e8a50f..db8b998722 100755
+ if test "${lt_cv_aix_libpath+set}" = set; then
+ aix_libpath=$lt_cv_aix_libpath
+else
-+ if test "${lt_cv_aix_libpath__CXX+set}" = set; then :
++ if ${lt_cv_aix_libpath__CXX+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
-@@ -12582,22 +13255,29 @@ main ()
+@@ -12883,22 +13556,29 @@ main ()
_ACEOF
if ac_fn_cxx_try_link "$LINENO"; then :
@@ -9043,7 +9123,7 @@ index 0cc6e8a50f..db8b998722 100755
hardcode_libdir_flag_spec_CXX='${wl}-blibpath:$libdir:'"$aix_libpath"
-@@ -12610,7 +13290,13 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -12911,7 +13591,13 @@ if test -z "$aix_libpath"; then aix_libp
else
# Determine the default libpath from the value encoded in an
# empty executable.
@@ -9051,14 +9131,14 @@ index 0cc6e8a50f..db8b998722 100755
+ if test "${lt_cv_aix_libpath+set}" = set; then
+ aix_libpath=$lt_cv_aix_libpath
+else
-+ if test "${lt_cv_aix_libpath__CXX+set}" = set; then :
++ if ${lt_cv_aix_libpath__CXX+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
-@@ -12623,22 +13309,29 @@ main ()
+@@ -12924,22 +13610,29 @@ main ()
_ACEOF
if ac_fn_cxx_try_link "$LINENO"; then :
@@ -9101,7 +9181,7 @@ index 0cc6e8a50f..db8b998722 100755
hardcode_libdir_flag_spec_CXX='${wl}-blibpath:$libdir:'"$aix_libpath"
# Warning - without using the other run time loading flags,
-@@ -12681,29 +13374,75 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -12982,29 +13675,75 @@ if test -z "$aix_libpath"; then aix_libp
;;
cygwin* | mingw* | pw32* | cegcc*)
@@ -9200,7 +9280,7 @@ index 0cc6e8a50f..db8b998722 100755
darwin* | rhapsody*)
-@@ -12809,7 +13548,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -13110,7 +13849,7 @@ if test -z "$aix_libpath"; then aix_libp
;;
*)
if test "$GXX" = yes; then
@@ -9209,7 +9289,7 @@ index 0cc6e8a50f..db8b998722 100755
else
# FIXME: insert proper C++ library support
ld_shlibs_CXX=no
-@@ -12880,10 +13619,10 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -13181,10 +13920,10 @@ if test -z "$aix_libpath"; then aix_libp
archive_cmds_CXX='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
;;
ia64*)
@@ -9222,7 +9302,7 @@ index 0cc6e8a50f..db8b998722 100755
;;
esac
fi
-@@ -12924,9 +13663,9 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -13225,9 +13964,9 @@ if test -z "$aix_libpath"; then aix_libp
*)
if test "$GXX" = yes; then
if test "$with_gnu_ld" = no; then
@@ -9234,7 +9314,7 @@ index 0cc6e8a50f..db8b998722 100755
fi
fi
link_all_deplibs_CXX=yes
-@@ -12996,20 +13735,20 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -13297,20 +14036,20 @@ if test -z "$aix_libpath"; then aix_libp
prelink_cmds_CXX='tpldir=Template.dir~
rm -rf $tpldir~
$CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~
@@ -9259,7 +9339,7 @@ index 0cc6e8a50f..db8b998722 100755
;;
*) # Version 6 and above use weak symbols
archive_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
-@@ -13204,7 +13943,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -13505,7 +14244,7 @@ if test -z "$aix_libpath"; then aix_libp
archive_cmds_CXX='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
;;
*)
@@ -9268,7 +9348,7 @@ index 0cc6e8a50f..db8b998722 100755
;;
esac
-@@ -13250,7 +13989,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -13551,7 +14290,7 @@ if test -z "$aix_libpath"; then aix_libp
solaris*)
case $cc_basename in
@@ -9277,7 +9357,7 @@ index 0cc6e8a50f..db8b998722 100755
# Sun C++ 4.2, 5.x and Centerline C++
archive_cmds_need_lc_CXX=yes
no_undefined_flag_CXX=' -zdefs'
-@@ -13291,9 +14030,9 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -13592,9 +14331,9 @@ if test -z "$aix_libpath"; then aix_libp
if test "$GXX" = yes && test "$with_gnu_ld" = no; then
no_undefined_flag_CXX=' ${wl}-z ${wl}defs'
if $CC --version | $GREP -v '^2\.7' > /dev/null; then
@@ -9289,7 +9369,7 @@ index 0cc6e8a50f..db8b998722 100755
# Commands to make compiler produce verbose output that lists
# what "hidden" libraries, object files and flags are used when
-@@ -13428,6 +14167,13 @@ private:
+@@ -13729,6 +14468,13 @@ private:
};
_LT_EOF
@@ -9303,7 +9383,7 @@ index 0cc6e8a50f..db8b998722 100755
if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
(eval $ac_compile) 2>&5
ac_status=$?
-@@ -13441,7 +14187,7 @@ if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
+@@ -13742,7 +14488,7 @@ if { { eval echo "\"\$as_me\":${as_linen
pre_test_object_deps_done=no
for p in `eval "$output_verbose_link_cmd"`; do
@@ -9312,7 +9392,7 @@ index 0cc6e8a50f..db8b998722 100755
-L* | -R* | -l*)
# Some compilers place space between "-{L,R}" and the path.
-@@ -13450,13 +14196,22 @@ if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
+@@ -13751,13 +14497,22 @@ if { { eval echo "\"\$as_me\":${as_linen
test $p = "-R"; then
prev=$p
continue
@@ -9339,7 +9419,7 @@ index 0cc6e8a50f..db8b998722 100755
# Internal compiler library paths should come after those
# provided the user. The postdeps already come after the
# user supplied libs so there is no need to process them.
-@@ -13476,8 +14231,10 @@ if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
+@@ -13777,8 +14532,10 @@ if { { eval echo "\"\$as_me\":${as_linen
postdeps_CXX="${postdeps_CXX} ${prev}${p}"
fi
fi
@@ -9350,7 +9430,7 @@ index 0cc6e8a50f..db8b998722 100755
*.$objext)
# This assumes that the test object file only shows up
# once in the compiler output.
-@@ -13513,6 +14270,7 @@ else
+@@ -13814,6 +14571,7 @@ else
fi
$RM -f confest.$objext
@@ -9358,7 +9438,7 @@ index 0cc6e8a50f..db8b998722 100755
# PORTME: override above test on systems where it is broken
case $host_os in
-@@ -13548,7 +14306,7 @@ linux*)
+@@ -13849,7 +14607,7 @@ linux*)
solaris*)
case $cc_basename in
@@ -9367,7 +9447,7 @@ index 0cc6e8a50f..db8b998722 100755
# The more standards-conforming stlport4 library is
# incompatible with the Cstd library. Avoid specifying
# it if it's in CXXFLAGS. Ignore libCrun as
-@@ -13613,8 +14371,6 @@ fi
+@@ -13914,8 +14672,6 @@ fi
lt_prog_compiler_pic_CXX=
lt_prog_compiler_static_CXX=
@@ -9376,7 +9456,7 @@ index 0cc6e8a50f..db8b998722 100755
# C++ specific cases for pic, static, wl, etc.
if test "$GXX" = yes; then
-@@ -13719,6 +14475,11 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
+@@ -14020,6 +14776,11 @@ $as_echo_n "checking for $compiler optio
;;
esac
;;
@@ -9388,7 +9468,7 @@ index 0cc6e8a50f..db8b998722 100755
dgux*)
case $cc_basename in
ec++*)
-@@ -13871,7 +14632,7 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
+@@ -14172,7 +14933,7 @@ $as_echo_n "checking for $compiler optio
;;
solaris*)
case $cc_basename in
@@ -9397,7 +9477,7 @@ index 0cc6e8a50f..db8b998722 100755
# Sun C++ 4.2, 5.x and Centerline C++
lt_prog_compiler_pic_CXX='-KPIC'
lt_prog_compiler_static_CXX='-Bstatic'
-@@ -13936,10 +14697,17 @@ case $host_os in
+@@ -14237,10 +14998,17 @@ case $host_os in
lt_prog_compiler_pic_CXX="$lt_prog_compiler_pic_CXX -DPIC"
;;
esac
@@ -9407,7 +9487,7 @@ index 0cc6e8a50f..db8b998722 100755
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5
+$as_echo_n "checking for $compiler option to produce PIC... " >&6; }
-+if test "${lt_cv_prog_compiler_pic_CXX+set}" = set; then :
++if ${lt_cv_prog_compiler_pic_CXX+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ lt_cv_prog_compiler_pic_CXX=$lt_prog_compiler_pic_CXX
@@ -9418,7 +9498,7 @@ index 0cc6e8a50f..db8b998722 100755
#
# Check to make sure the PIC flag actually works.
-@@ -13997,6 +14765,8 @@ fi
+@@ -14298,6 +15066,8 @@ fi
@@ -9427,7 +9507,7 @@ index 0cc6e8a50f..db8b998722 100755
#
# Check to make sure the static flag actually works.
#
-@@ -14174,6 +14944,7 @@ fi
+@@ -14475,6 +15245,7 @@ fi
$as_echo_n "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; }
export_symbols_cmds_CXX='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
@@ -9435,7 +9515,7 @@ index 0cc6e8a50f..db8b998722 100755
case $host_os in
aix[4-9]*)
# If we're using GNU nm, then we don't want the "-C" option.
-@@ -14188,15 +14959,20 @@ $as_echo_n "checking whether the $compiler linker ($LD) supports shared librarie
+@@ -14489,15 +15260,20 @@ $as_echo_n "checking whether the $compil
;;
pw32*)
export_symbols_cmds_CXX="$ltdll_cmds"
@@ -9461,7 +9541,7 @@ index 0cc6e8a50f..db8b998722 100755
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs_CXX" >&5
$as_echo "$ld_shlibs_CXX" >&6; }
-@@ -14459,8 +15235,9 @@ cygwin* | mingw* | pw32* | cegcc*)
+@@ -14760,8 +15536,9 @@ cygwin* | mingw* | pw32* | cegcc*)
need_version=no
need_lib_prefix=no
@@ -9473,7 +9553,7 @@ index 0cc6e8a50f..db8b998722 100755
library_names_spec='$libname.dll.a'
# DLL is installed to $(libdir)/../bin by postinstall_cmds
postinstall_cmds='base_file=`basename \${file}`~
-@@ -14492,13 +15269,71 @@ cygwin* | mingw* | pw32* | cegcc*)
+@@ -14793,13 +15570,71 @@ cygwin* | mingw* | pw32* | cegcc*)
library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
;;
esac
@@ -9546,7 +9626,7 @@ index 0cc6e8a50f..db8b998722 100755
# FIXME: first we should search . and the directory the executable is in
shlibpath_var=PATH
;;
-@@ -14589,7 +15424,7 @@ haiku*)
+@@ -14890,7 +15725,7 @@ haiku*)
soname_spec='${libname}${release}${shared_ext}$major'
shlibpath_var=LIBRARY_PATH
shlibpath_overrides_runpath=yes
@@ -9555,7 +9635,7 @@ index 0cc6e8a50f..db8b998722 100755
hardcode_into_libs=yes
;;
-@@ -15048,6 +15883,7 @@ fi
+@@ -15349,6 +16184,7 @@ fi
fi # test -n "$compiler"
CC=$lt_save_CC
@@ -9563,7 +9643,7 @@ index 0cc6e8a50f..db8b998722 100755
LDCXX=$LD
LD=$lt_save_LD
GCC=$lt_save_GCC
-@@ -18083,13 +18919,20 @@ exeext='`$ECHO "$exeext" | $SED "$delay_single_quote_subst"`'
+@@ -18444,13 +19280,20 @@ exeext='`$ECHO "$exeext" | $SED "$delay_
lt_unset='`$ECHO "$lt_unset" | $SED "$delay_single_quote_subst"`'
lt_SP2NL='`$ECHO "$lt_SP2NL" | $SED "$delay_single_quote_subst"`'
lt_NL2SP='`$ECHO "$lt_NL2SP" | $SED "$delay_single_quote_subst"`'
@@ -9584,7 +9664,7 @@ index 0cc6e8a50f..db8b998722 100755
STRIP='`$ECHO "$STRIP" | $SED "$delay_single_quote_subst"`'
RANLIB='`$ECHO "$RANLIB" | $SED "$delay_single_quote_subst"`'
old_postinstall_cmds='`$ECHO "$old_postinstall_cmds" | $SED "$delay_single_quote_subst"`'
-@@ -18104,14 +18947,17 @@ lt_cv_sys_global_symbol_pipe='`$ECHO "$lt_cv_sys_global_symbol_pipe" | $SED "$de
+@@ -18465,14 +19308,17 @@ lt_cv_sys_global_symbol_pipe='`$ECHO "$l
lt_cv_sys_global_symbol_to_cdecl='`$ECHO "$lt_cv_sys_global_symbol_to_cdecl" | $SED "$delay_single_quote_subst"`'
lt_cv_sys_global_symbol_to_c_name_address='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address" | $SED "$delay_single_quote_subst"`'
lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address_lib_prefix" | $SED "$delay_single_quote_subst"`'
@@ -9603,7 +9683,7 @@ index 0cc6e8a50f..db8b998722 100755
DSYMUTIL='`$ECHO "$DSYMUTIL" | $SED "$delay_single_quote_subst"`'
NMEDIT='`$ECHO "$NMEDIT" | $SED "$delay_single_quote_subst"`'
LIPO='`$ECHO "$LIPO" | $SED "$delay_single_quote_subst"`'
-@@ -18144,12 +18990,12 @@ hardcode_shlibpath_var='`$ECHO "$hardcode_shlibpath_var" | $SED "$delay_single_q
+@@ -18505,12 +19351,12 @@ hardcode_shlibpath_var='`$ECHO "$hardcod
hardcode_automatic='`$ECHO "$hardcode_automatic" | $SED "$delay_single_quote_subst"`'
inherit_rpath='`$ECHO "$inherit_rpath" | $SED "$delay_single_quote_subst"`'
link_all_deplibs='`$ECHO "$link_all_deplibs" | $SED "$delay_single_quote_subst"`'
@@ -9617,7 +9697,7 @@ index 0cc6e8a50f..db8b998722 100755
file_list_spec='`$ECHO "$file_list_spec" | $SED "$delay_single_quote_subst"`'
variables_saved_for_relink='`$ECHO "$variables_saved_for_relink" | $SED "$delay_single_quote_subst"`'
need_lib_prefix='`$ECHO "$need_lib_prefix" | $SED "$delay_single_quote_subst"`'
-@@ -18188,8 +19034,8 @@ old_archive_cmds_CXX='`$ECHO "$old_archive_cmds_CXX" | $SED "$delay_single_quote
+@@ -18549,8 +19395,8 @@ old_archive_cmds_CXX='`$ECHO "$old_archi
compiler_CXX='`$ECHO "$compiler_CXX" | $SED "$delay_single_quote_subst"`'
GCC_CXX='`$ECHO "$GCC_CXX" | $SED "$delay_single_quote_subst"`'
lt_prog_compiler_no_builtin_flag_CXX='`$ECHO "$lt_prog_compiler_no_builtin_flag_CXX" | $SED "$delay_single_quote_subst"`'
@@ -9627,7 +9707,7 @@ index 0cc6e8a50f..db8b998722 100755
lt_prog_compiler_static_CXX='`$ECHO "$lt_prog_compiler_static_CXX" | $SED "$delay_single_quote_subst"`'
lt_cv_prog_compiler_c_o_CXX='`$ECHO "$lt_cv_prog_compiler_c_o_CXX" | $SED "$delay_single_quote_subst"`'
archive_cmds_need_lc_CXX='`$ECHO "$archive_cmds_need_lc_CXX" | $SED "$delay_single_quote_subst"`'
-@@ -18216,12 +19062,12 @@ hardcode_shlibpath_var_CXX='`$ECHO "$hardcode_shlibpath_var_CXX" | $SED "$delay_
+@@ -18577,12 +19423,12 @@ hardcode_shlibpath_var_CXX='`$ECHO "$har
hardcode_automatic_CXX='`$ECHO "$hardcode_automatic_CXX" | $SED "$delay_single_quote_subst"`'
inherit_rpath_CXX='`$ECHO "$inherit_rpath_CXX" | $SED "$delay_single_quote_subst"`'
link_all_deplibs_CXX='`$ECHO "$link_all_deplibs_CXX" | $SED "$delay_single_quote_subst"`'
@@ -9641,7 +9721,7 @@ index 0cc6e8a50f..db8b998722 100755
file_list_spec_CXX='`$ECHO "$file_list_spec_CXX" | $SED "$delay_single_quote_subst"`'
hardcode_action_CXX='`$ECHO "$hardcode_action_CXX" | $SED "$delay_single_quote_subst"`'
compiler_lib_search_dirs_CXX='`$ECHO "$compiler_lib_search_dirs_CXX" | $SED "$delay_single_quote_subst"`'
-@@ -18259,8 +19105,13 @@ reload_flag \
+@@ -18620,8 +19466,13 @@ reload_flag \
OBJDUMP \
deplibs_check_method \
file_magic_cmd \
@@ -9655,7 +9735,7 @@ index 0cc6e8a50f..db8b998722 100755
STRIP \
RANLIB \
CC \
-@@ -18270,12 +19121,14 @@ lt_cv_sys_global_symbol_pipe \
+@@ -18631,12 +19482,14 @@ lt_cv_sys_global_symbol_pipe \
lt_cv_sys_global_symbol_to_cdecl \
lt_cv_sys_global_symbol_to_c_name_address \
lt_cv_sys_global_symbol_to_c_name_address_lib_prefix \
@@ -9671,7 +9751,7 @@ index 0cc6e8a50f..db8b998722 100755
DSYMUTIL \
NMEDIT \
LIPO \
-@@ -18291,7 +19144,6 @@ no_undefined_flag \
+@@ -18652,7 +19505,6 @@ no_undefined_flag \
hardcode_libdir_flag_spec \
hardcode_libdir_flag_spec_ld \
hardcode_libdir_separator \
@@ -9679,7 +9759,7 @@ index 0cc6e8a50f..db8b998722 100755
exclude_expsyms \
include_expsyms \
file_list_spec \
-@@ -18313,8 +19165,8 @@ LD_CXX \
+@@ -18674,8 +19526,8 @@ LD_CXX \
reload_flag_CXX \
compiler_CXX \
lt_prog_compiler_no_builtin_flag_CXX \
@@ -9689,7 +9769,7 @@ index 0cc6e8a50f..db8b998722 100755
lt_prog_compiler_static_CXX \
lt_cv_prog_compiler_c_o_CXX \
export_dynamic_flag_spec_CXX \
-@@ -18326,7 +19178,6 @@ no_undefined_flag_CXX \
+@@ -18687,7 +19539,6 @@ no_undefined_flag_CXX \
hardcode_libdir_flag_spec_CXX \
hardcode_libdir_flag_spec_ld_CXX \
hardcode_libdir_separator_CXX \
@@ -9697,7 +9777,7 @@ index 0cc6e8a50f..db8b998722 100755
exclude_expsyms_CXX \
include_expsyms_CXX \
file_list_spec_CXX \
-@@ -18360,6 +19211,7 @@ module_cmds \
+@@ -18721,6 +19572,7 @@ module_cmds \
module_expsym_cmds \
export_symbols_cmds \
prelink_cmds \
@@ -9705,7 +9785,7 @@ index 0cc6e8a50f..db8b998722 100755
postinstall_cmds \
postuninstall_cmds \
finish_cmds \
-@@ -18374,7 +19226,8 @@ archive_expsym_cmds_CXX \
+@@ -18735,7 +19587,8 @@ archive_expsym_cmds_CXX \
module_cmds_CXX \
module_expsym_cmds_CXX \
export_symbols_cmds_CXX \
@@ -9715,7 +9795,7 @@ index 0cc6e8a50f..db8b998722 100755
case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
*[\\\\\\\`\\"\\\$]*)
eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\""
-@@ -19167,7 +20020,8 @@ $as_echo X"$file" |
+@@ -19539,7 +20392,8 @@ $as_echo X"$file" |
# NOTE: Changes made to this file will be lost: look at ltmain.sh.
#
# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
@@ -9725,7 +9805,7 @@ index 0cc6e8a50f..db8b998722 100755
# Written by Gordon Matzigkeit, 1996
#
# This file is part of GNU Libtool.
-@@ -19270,19 +20124,42 @@ SP2NL=$lt_lt_SP2NL
+@@ -19642,19 +20496,42 @@ SP2NL=$lt_lt_SP2NL
# turn newlines into spaces.
NL2SP=$lt_lt_NL2SP
@@ -9769,7 +9849,7 @@ index 0cc6e8a50f..db8b998722 100755
# A symbol stripping program.
STRIP=$lt_STRIP
-@@ -19312,6 +20189,12 @@ global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address
+@@ -19684,6 +20561,12 @@ global_symbol_to_c_name_address=$lt_lt_c
# Transform the output of nm in a C name address pair when lib prefix is needed.
global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix
@@ -9782,7 +9862,7 @@ index 0cc6e8a50f..db8b998722 100755
# The name of the directory that contains temporary libtool files.
objdir=$objdir
-@@ -19321,6 +20204,9 @@ MAGIC_CMD=$MAGIC_CMD
+@@ -19693,6 +20576,9 @@ MAGIC_CMD=$MAGIC_CMD
# Must we lock files when doing compilation?
need_locks=$lt_need_locks
@@ -9792,7 +9872,7 @@ index 0cc6e8a50f..db8b998722 100755
# Tool to manipulate archived DWARF debug symbol files on Mac OS X.
DSYMUTIL=$lt_DSYMUTIL
-@@ -19435,12 +20321,12 @@ with_gcc=$GCC
+@@ -19807,12 +20693,12 @@ with_gcc=$GCC
# Compiler flag to turn off builtin functions.
no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag
@@ -9808,7 +9888,7 @@ index 0cc6e8a50f..db8b998722 100755
# Compiler flag to prevent dynamic linking.
link_static_flag=$lt_lt_prog_compiler_static
-@@ -19527,9 +20413,6 @@ inherit_rpath=$inherit_rpath
+@@ -19899,9 +20785,6 @@ inherit_rpath=$inherit_rpath
# Whether libtool must link a program against all its dependency libraries.
link_all_deplibs=$link_all_deplibs
@@ -9818,7 +9898,7 @@ index 0cc6e8a50f..db8b998722 100755
# Set to "yes" if exported symbols are required.
always_export_symbols=$always_export_symbols
-@@ -19545,6 +20428,9 @@ include_expsyms=$lt_include_expsyms
+@@ -19917,6 +20800,9 @@ include_expsyms=$lt_include_expsyms
# Commands necessary for linking programs (against libraries) with templates.
prelink_cmds=$lt_prelink_cmds
@@ -9828,7 +9908,7 @@ index 0cc6e8a50f..db8b998722 100755
# Specify filename containing input files.
file_list_spec=$lt_file_list_spec
-@@ -19591,210 +20477,169 @@ ltmain="$ac_aux_dir/ltmain.sh"
+@@ -19963,210 +20849,169 @@ ltmain="$ac_aux_dir/ltmain.sh"
# if finds mixed CR/LF and LF-only lines. Since sed operates in
# text mode, it properly converts lines to CR/LF. This bash problem
# is reportedly fixed, but why not run on old versions too?
@@ -10030,15 +10110,9 @@ index 0cc6e8a50f..db8b998722 100755
-_LT_EOF
- ;;
- esac
--
--
-- sed -n '/^# Generated shell functions inserted here/,$p' "$ltmain" >> "$cfgfile" \
-- || (rm -f "$cfgfile"; exit 1)
--
-- mv -f "$cfgfile" "$ofile" ||
+ sed '$q' "$ltmain" >> "$cfgfile" \
+ || (rm -f "$cfgfile"; exit 1)
-+
+
+ if test x"$xsi_shell" = xyes; then
+ sed -e '/^func_dirname ()$/,/^} # func_dirname /c\
+func_dirname ()\
@@ -10196,13 +10270,16 @@ index 0cc6e8a50f..db8b998722 100755
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Unable to substitute extended shell functions in $ofile" >&5
+$as_echo "$as_me: WARNING: Unable to substitute extended shell functions in $ofile" >&2;}
+fi
-+
-+
+
+- sed -n '/^# Generated shell functions inserted here/,$p' "$ltmain" >> "$cfgfile" \
+- || (rm -f "$cfgfile"; exit 1)
+
+- mv -f "$cfgfile" "$ofile" ||
+ mv -f "$cfgfile" "$ofile" ||
(rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
chmod +x "$ofile"
-@@ -19822,12 +20667,12 @@ with_gcc=$GCC_CXX
+@@ -20194,12 +21039,12 @@ with_gcc=$GCC_CXX
# Compiler flag to turn off builtin functions.
no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag_CXX
@@ -10218,7 +10295,7 @@ index 0cc6e8a50f..db8b998722 100755
# Compiler flag to prevent dynamic linking.
link_static_flag=$lt_lt_prog_compiler_static_CXX
-@@ -19914,9 +20759,6 @@ inherit_rpath=$inherit_rpath_CXX
+@@ -20286,9 +21131,6 @@ inherit_rpath=$inherit_rpath_CXX
# Whether libtool must link a program against all its dependency libraries.
link_all_deplibs=$link_all_deplibs_CXX
@@ -10228,7 +10305,7 @@ index 0cc6e8a50f..db8b998722 100755
# Set to "yes" if exported symbols are required.
always_export_symbols=$always_export_symbols_CXX
-@@ -19932,6 +20774,9 @@ include_expsyms=$lt_include_expsyms_CXX
+@@ -20304,6 +21146,9 @@ include_expsyms=$lt_include_expsyms_CXX
# Commands necessary for linking programs (against libraries) with templates.
prelink_cmds=$lt_prelink_cmds_CXX
@@ -10238,10 +10315,10 @@ index 0cc6e8a50f..db8b998722 100755
# Specify filename containing input files.
file_list_spec=$lt_file_list_spec_CXX
-diff --git a/libtool.m4 b/libtool.m4
-index 24d13f3440..e45fdc6998 100644
---- a/libtool.m4
-+++ b/libtool.m4
+Index: git/libtool.m4
+===================================================================
+--- git.orig/libtool.m4
++++ git/libtool.m4
@@ -1,7 +1,8 @@
# libtool.m4 - Configure libtool for the host system. -*-Autoconf-*-
#
@@ -10281,7 +10358,7 @@ index 24d13f3440..e45fdc6998 100644
AC_SUBST(LIBTOOL)dnl
_LT_SETUP
-@@ -166,10 +169,13 @@ _LT_DECL([], [exeext], [0], [Executable file suffix (normally "")])dnl
+@@ -166,10 +169,13 @@ _LT_DECL([], [exeext], [0], [Executable
dnl
m4_require([_LT_FILEUTILS_DEFAULTS])dnl
m4_require([_LT_CHECK_SHELL_FEATURES])dnl
@@ -10304,7 +10381,7 @@ index 24d13f3440..e45fdc6998 100644
can_build_shared=yes
# All known linkers require a `.a' archive for static linking (except MSVC,
-@@ -632,7 +638,7 @@ m4_ifset([AC_PACKAGE_NAME], [AC_PACKAGE_NAME ])config.lt[]dnl
+@@ -632,7 +638,7 @@ m4_ifset([AC_PACKAGE_NAME], [AC_PACKAGE_
m4_ifset([AC_PACKAGE_VERSION], [ AC_PACKAGE_VERSION])
configured by $[0], generated by m4_PACKAGE_STRING.
@@ -10360,7 +10437,7 @@ index 24d13f3440..e45fdc6998 100644
+# Allow to override them for all tags through lt_cv_aix_libpath.
m4_defun([_LT_SYS_MODULE_PATH_AIX],
[m4_require([_LT_DECL_SED])dnl
--AC_LINK_IFELSE(AC_LANG_PROGRAM,[
+-AC_LINK_IFELSE([AC_LANG_SOURCE([AC_LANG_PROGRAM])],[
-lt_aix_libpath_sed='
- /Import File Strings/,/^$/ {
- /^0/ {
@@ -10409,7 +10486,7 @@ index 24d13f3440..e45fdc6998 100644
test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then
ECHO='print -r --'
elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then
-@@ -1161,6 +1177,39 @@ _LT_DECL([], [ECHO], [1], [An echo program that protects backslashes])
+@@ -1161,6 +1177,39 @@ _LT_DECL([], [ECHO], [1], [An echo progr
])# _LT_PROG_ECHO_BACKSLASH
@@ -10662,7 +10739,7 @@ index 24d13f3440..e45fdc6998 100644
file_magic_cmd=$lt_cv_file_magic_cmd
deplibs_check_method=$lt_cv_deplibs_check_method
test -z "$deplibs_check_method" && deplibs_check_method=unknown
-@@ -3174,7 +3336,11 @@ test -z "$deplibs_check_method" && deplibs_check_method=unknown
+@@ -3174,7 +3336,11 @@ test -z "$deplibs_check_method" && depli
_LT_DECL([], [deplibs_check_method], [1],
[Method to check whether dependent libraries are shared objects])
_LT_DECL([], [file_magic_cmd], [1],
@@ -10790,7 +10867,7 @@ index 24d13f3440..e45fdc6998 100644
const char *name;
void *address;
}
-@@ -3510,15 +3750,15 @@ static const void *lt_preloaded_setup() {
+@@ -3510,15 +3750,15 @@ static const void *lt_preloaded_setup()
_LT_EOF
# Now try linking the two files.
mv conftest.$ac_objext conftstm.$ac_objext
@@ -10824,7 +10901,7 @@ index 24d13f3440..e45fdc6998 100644
_LT_DECL([global_symbol_pipe], [lt_cv_sys_global_symbol_pipe], [1],
[Take the output of nm and produce a listing of raw symbols and C names])
_LT_DECL([global_symbol_to_cdecl], [lt_cv_sys_global_symbol_to_cdecl], [1],
-@@ -3561,6 +3808,8 @@ _LT_DECL([global_symbol_to_c_name_address],
+@@ -3561,6 +3808,8 @@ _LT_DECL([global_symbol_to_c_name_addres
_LT_DECL([global_symbol_to_c_name_address_lib_prefix],
[lt_cv_sys_global_symbol_to_c_name_address_lib_prefix], [1],
[Transform the output of nm in a C name address pair when lib prefix is needed])
@@ -10909,7 +10986,7 @@ index 24d13f3440..e45fdc6998 100644
#
# Check to make sure the static flag actually works.
#
-@@ -4213,6 +4477,7 @@ _LT_TAGDECL([link_static_flag], [lt_prog_compiler_static], [1],
+@@ -4213,6 +4477,7 @@ _LT_TAGDECL([link_static_flag], [lt_prog
m4_defun([_LT_LINKER_SHLIBS],
[AC_REQUIRE([LT_PATH_LD])dnl
AC_REQUIRE([LT_PATH_NM])dnl
@@ -11156,7 +11233,7 @@ index 24d13f3440..e45fdc6998 100644
# implicitly export all symbols.
- save_LDFLAGS="$LDFLAGS"
- LDFLAGS="$LDFLAGS -shared ${wl}-exported_symbol ${wl}foo ${wl}-update_registry ${wl}/dev/null"
-- AC_LINK_IFELSE(int foo(void) {},
+- AC_LINK_IFELSE([AC_LANG_SOURCE([int foo(void) {}])],
- _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations ${wl}-exports_file ${wl}$export_symbols -o $lib'
- )
- LDFLAGS="$save_LDFLAGS"
@@ -11231,7 +11308,7 @@ index 24d13f3440..e45fdc6998 100644
if test -n "$CXX" && ( test "X$CXX" != "Xno" &&
( (test "X$CXX" = "Xg++" && `g++ -v >/dev/null 2>&1` ) ||
(test "X$CXX" != "Xg++"))) ; then
-@@ -5487,6 +5818,7 @@ if test "$_lt_caught_CXX_error" != yes; then
+@@ -5487,6 +5818,7 @@ if test "$_lt_caught_CXX_error" != yes;
# Allow CC to be a program name with arguments.
lt_save_CC=$CC
@@ -11239,7 +11316,7 @@ index 24d13f3440..e45fdc6998 100644
lt_save_LD=$LD
lt_save_GCC=$GCC
GCC=$GXX
-@@ -5504,6 +5836,7 @@ if test "$_lt_caught_CXX_error" != yes; then
+@@ -5504,6 +5836,7 @@ if test "$_lt_caught_CXX_error" != yes;
fi
test -z "${LDCXX+set}" || LD=$LDCXX
CC=${CXX-"c++"}
@@ -11247,7 +11324,7 @@ index 24d13f3440..e45fdc6998 100644
compiler=$CC
_LT_TAGVAR(compiler, $1)=$CC
_LT_CC_BASENAME([$compiler])
-@@ -5667,7 +6000,7 @@ if test "$_lt_caught_CXX_error" != yes; then
+@@ -5667,7 +6000,7 @@ if test "$_lt_caught_CXX_error" != yes;
_LT_TAGVAR(allow_undefined_flag, $1)='-berok'
# Determine the default libpath from the value encoded in an empty
# executable.
@@ -11256,7 +11333,7 @@ index 24d13f3440..e45fdc6998 100644
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
-@@ -5679,7 +6012,7 @@ if test "$_lt_caught_CXX_error" != yes; then
+@@ -5679,7 +6012,7 @@ if test "$_lt_caught_CXX_error" != yes;
else
# Determine the default libpath from the value encoded in an
# empty executable.
@@ -11265,7 +11342,7 @@ index 24d13f3440..e45fdc6998 100644
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
# Warning - without using the other run time loading flags,
# -berok will link without error, but may produce a broken library.
-@@ -5721,29 +6054,75 @@ if test "$_lt_caught_CXX_error" != yes; then
+@@ -5721,29 +6054,75 @@ if test "$_lt_caught_CXX_error" != yes;
;;
cygwin* | mingw* | pw32* | cegcc*)
@@ -11364,7 +11441,7 @@ index 24d13f3440..e45fdc6998 100644
darwin* | rhapsody*)
_LT_DARWIN_LINKER_FEATURES($1)
;;
-@@ -5818,7 +6197,7 @@ if test "$_lt_caught_CXX_error" != yes; then
+@@ -5818,7 +6197,7 @@ if test "$_lt_caught_CXX_error" != yes;
;;
*)
if test "$GXX" = yes; then
@@ -11373,7 +11450,7 @@ index 24d13f3440..e45fdc6998 100644
else
# FIXME: insert proper C++ library support
_LT_TAGVAR(ld_shlibs, $1)=no
-@@ -5889,10 +6268,10 @@ if test "$_lt_caught_CXX_error" != yes; then
+@@ -5889,10 +6268,10 @@ if test "$_lt_caught_CXX_error" != yes;
_LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
;;
ia64*)
@@ -11386,7 +11463,7 @@ index 24d13f3440..e45fdc6998 100644
;;
esac
fi
-@@ -5933,9 +6312,9 @@ if test "$_lt_caught_CXX_error" != yes; then
+@@ -5933,9 +6312,9 @@ if test "$_lt_caught_CXX_error" != yes;
*)
if test "$GXX" = yes; then
if test "$with_gnu_ld" = no; then
@@ -11398,7 +11475,7 @@ index 24d13f3440..e45fdc6998 100644
fi
fi
_LT_TAGVAR(link_all_deplibs, $1)=yes
-@@ -6005,20 +6384,20 @@ if test "$_lt_caught_CXX_error" != yes; then
+@@ -6005,20 +6384,20 @@ if test "$_lt_caught_CXX_error" != yes;
_LT_TAGVAR(prelink_cmds, $1)='tpldir=Template.dir~
rm -rf $tpldir~
$CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~
@@ -11423,7 +11500,7 @@ index 24d13f3440..e45fdc6998 100644
;;
*) # Version 6 and above use weak symbols
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
-@@ -6213,7 +6592,7 @@ if test "$_lt_caught_CXX_error" != yes; then
+@@ -6213,7 +6592,7 @@ if test "$_lt_caught_CXX_error" != yes;
_LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
;;
*)
@@ -11432,7 +11509,7 @@ index 24d13f3440..e45fdc6998 100644
;;
esac
-@@ -6259,7 +6638,7 @@ if test "$_lt_caught_CXX_error" != yes; then
+@@ -6259,7 +6638,7 @@ if test "$_lt_caught_CXX_error" != yes;
solaris*)
case $cc_basename in
@@ -11441,7 +11518,7 @@ index 24d13f3440..e45fdc6998 100644
# Sun C++ 4.2, 5.x and Centerline C++
_LT_TAGVAR(archive_cmds_need_lc,$1)=yes
_LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
-@@ -6300,9 +6679,9 @@ if test "$_lt_caught_CXX_error" != yes; then
+@@ -6300,9 +6679,9 @@ if test "$_lt_caught_CXX_error" != yes;
if test "$GXX" = yes && test "$with_gnu_ld" = no; then
_LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-z ${wl}defs'
if $CC --version | $GREP -v '^2\.7' > /dev/null; then
@@ -11453,7 +11530,7 @@ index 24d13f3440..e45fdc6998 100644
# Commands to make compiler produce verbose output that lists
# what "hidden" libraries, object files and flags are used when
-@@ -6431,6 +6810,7 @@ if test "$_lt_caught_CXX_error" != yes; then
+@@ -6431,6 +6810,7 @@ if test "$_lt_caught_CXX_error" != yes;
fi # test -n "$compiler"
CC=$lt_save_CC
@@ -11661,7 +11738,7 @@ index 24d13f3440..e45fdc6998 100644
])# _LT_LANG_RC_CONFIG
-@@ -7101,6 +7536,15 @@ _LT_DECL([], [OBJDUMP], [1], [An object symbol dumper])
+@@ -7101,6 +7536,15 @@ _LT_DECL([], [OBJDUMP], [1], [An object
AC_SUBST([OBJDUMP])
])
@@ -11688,7 +11765,7 @@ index 24d13f3440..e45fdc6998 100644
&& eval 'test $(( 1 + 1 )) -eq 2 \
&& test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \
&& xsi_shell=yes
-@@ -7234,206 +7678,162 @@ _LT_DECL([NL2SP], [lt_NL2SP], [1], [turn newlines into spaces])dnl
+@@ -7234,206 +7678,162 @@ _LT_DECL([NL2SP], [lt_NL2SP], [1], [turn
])# _LT_CHECK_SHELL_FEATURES
@@ -11786,6 +11863,31 @@ index 24d13f3440..e45fdc6998 100644
-{
- func_len_result=${#1}
-}
+-
+-_LT_EOF
+- ;;
+- *) # Bourne compatible functions.
+- cat << \_LT_EOF >> "$cfgfile"
+-
+-# func_dirname file append nondir_replacement
+-# Compute the dirname of FILE. If nonempty, add APPEND to the result,
+-# otherwise set result to NONDIR_REPLACEMENT.
+-func_dirname ()
+-{
+- # Extract subdirectory from the argument.
+- func_dirname_result=`$ECHO "${1}" | $SED "$dirname"`
+- if test "X$func_dirname_result" = "X${1}"; then
+- func_dirname_result="${3}"
+- else
+- func_dirname_result="$func_dirname_result${2}"
+- fi
+-}
+-
+-# func_basename file
+-func_basename ()
+-{
+- func_basename_result=`$ECHO "${1}" | $SED "$basename"`
+-}
+# _LT_PROG_FUNCTION_REPLACE (FUNCNAME, REPLACEMENT-BODY)
+# ------------------------------------------------------
+# In `$cfgfile', look for function FUNCNAME delimited by `^FUNCNAME ()$' and
@@ -11802,23 +11904,22 @@ index 24d13f3440..e45fdc6998 100644
+test 0 -eq $? || _lt_function_replace_fail=:
+])
--_LT_EOF
-- ;;
-- *) # Bourne compatible functions.
-- cat << \_LT_EOF >> "$cfgfile"
+-dnl func_dirname_and_basename
+-dnl A portable version of this function is already defined in general.m4sh
+-dnl so there is no need for it here.
--# func_dirname file append nondir_replacement
--# Compute the dirname of FILE. If nonempty, add APPEND to the result,
--# otherwise set result to NONDIR_REPLACEMENT.
--func_dirname ()
+-# func_stripname prefix suffix name
+-# strip PREFIX and SUFFIX off of NAME.
+-# PREFIX and SUFFIX must not contain globbing or regex special
+-# characters, hashes, percent signs, but SUFFIX may contain a leading
+-# dot (in which case that matches only a dot).
+-# func_strip_suffix prefix name
+-func_stripname ()
-{
-- # Extract subdirectory from the argument.
-- func_dirname_result=`$ECHO "${1}" | $SED "$dirname"`
-- if test "X$func_dirname_result" = "X${1}"; then
-- func_dirname_result="${3}"
-- else
-- func_dirname_result="$func_dirname_result${2}"
-- fi
+- case ${2} in
+- .*) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%\\\\${2}\$%%"`;;
+- *) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%${2}\$%%"`;;
+- esac
-}
+# _LT_PROG_REPLACE_SHELLFNS
+# -------------------------
@@ -11842,45 +11943,24 @@ index 24d13f3440..e45fdc6998 100644
+ esac
+ func_basename_result="${1##*/}"])
--# func_basename file
--func_basename ()
--{
-- func_basename_result=`$ECHO "${1}" | $SED "$basename"`
--}
+-# sed scripts:
+-my_sed_long_opt='1s/^\(-[[^=]]*\)=.*/\1/;q'
+-my_sed_long_arg='1s/^-[[^=]]*=//'
+ _LT_PROG_FUNCTION_REPLACE([func_stripname], [dnl
+ # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are
+ # positional parameters, so assign one to ordinary parameter first.
+ func_stripname_result=${3}
+ func_stripname_result=${func_stripname_result#"${1}"}
+ func_stripname_result=${func_stripname_result%"${2}"}])
-
--dnl func_dirname_and_basename
--dnl A portable version of this function is already defined in general.m4sh
--dnl so there is no need for it here.
++
+ _LT_PROG_FUNCTION_REPLACE([func_split_long_opt], [dnl
+ func_split_long_opt_name=${1%%=*}
+ func_split_long_opt_arg=${1#*=}])
-
--# func_stripname prefix suffix name
--# strip PREFIX and SUFFIX off of NAME.
--# PREFIX and SUFFIX must not contain globbing or regex special
--# characters, hashes, percent signs, but SUFFIX may contain a leading
--# dot (in which case that matches only a dot).
--# func_strip_suffix prefix name
--func_stripname ()
--{
-- case ${2} in
-- .*) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%\\\\${2}\$%%"`;;
-- *) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%${2}\$%%"`;;
-- esac
--}
++
+ _LT_PROG_FUNCTION_REPLACE([func_split_short_opt], [dnl
+ func_split_short_opt_arg=${1#??}
+ func_split_short_opt_name=${1%"$func_split_short_opt_arg"}])
-
--# sed scripts:
--my_sed_long_opt='1s/^\(-[[^=]]*\)=.*/\1/;q'
--my_sed_long_arg='1s/^-[[^=]]*=//'
++
+ _LT_PROG_FUNCTION_REPLACE([func_lo2o], [dnl
+ case ${1} in
+ *.lo) func_lo2o_result=${1%.lo}.${objext} ;;
@@ -11928,9 +12008,7 @@ index 24d13f3440..e45fdc6998 100644
+ func_quote_for_eval "${2}"
+dnl m4 expansion turns \\\\ into \\, and then the shell eval turns that into \
+ eval "${1}+=\\\\ \\$func_quote_for_eval_result"])
-
--_LT_EOF
--esac
++
+ # Save a `func_append' function call where possible by direct use of '+='
+ sed -e 's%func_append \([[a-zA-Z_]]\{1,\}\) "%\1+="%g' $cfgfile > $cfgfile.tmp \
+ && mv -f "$cfgfile.tmp" "$cfgfile" \
@@ -11944,14 +12022,17 @@ index 24d13f3440..e45fdc6998 100644
+ test 0 -eq $? || _lt_function_replace_fail=:
+fi
--case $lt_shell_append in
-- yes)
-- cat << \_LT_EOF >> "$cfgfile"
+-_LT_EOF
+-esac
+if test x"$_lt_function_replace_fail" = x":"; then
+ AC_MSG_WARN([Unable to substitute extended shell functions in $ofile])
+fi
+])
+-case $lt_shell_append in
+- yes)
+- cat << \_LT_EOF >> "$cfgfile"
+-
-# func_append var value
-# Append VALUE to the end of shell variable VAR.
-func_append ()
@@ -12037,10 +12118,10 @@ index 24d13f3440..e45fdc6998 100644
+_LT_DECL([to_tool_file_cmd], [lt_cv_to_tool_file_cmd],
+ [0], [convert $build files to toolchain format])dnl
+])# _LT_PATH_CONVERSION_FUNCTIONS
-diff --git a/ltmain.sh b/ltmain.sh
-index 9503ec85d7..70e856e065 100644
---- a/ltmain.sh
-+++ b/ltmain.sh
+Index: git/ltmain.sh
+===================================================================
+--- git.orig/ltmain.sh
++++ git/ltmain.sh
@@ -1,10 +1,9 @@
-# Generated from ltmain.m4sh.
@@ -12470,31 +12551,7 @@ index 9503ec85d7..70e856e065 100644
+$progname: of $PACKAGE $VERSION and run autoconf again.
+_LT_EOF
+ fi
-
-- # Shorthand for --mode=foo, only valid as the first argument
-- case $1 in
-- clean|clea|cle|cl)
-- shift; set dummy --mode clean ${1+"$@"}; shift
-- ;;
-- compile|compil|compi|comp|com|co|c)
-- shift; set dummy --mode compile ${1+"$@"}; shift
-- ;;
-- execute|execut|execu|exec|exe|ex|e)
-- shift; set dummy --mode execute ${1+"$@"}; shift
-- ;;
-- finish|finis|fini|fin|fi|f)
-- shift; set dummy --mode finish ${1+"$@"}; shift
-- ;;
-- install|instal|insta|inst|ins|in|i)
-- shift; set dummy --mode install ${1+"$@"}; shift
-- ;;
-- link|lin|li|l)
-- shift; set dummy --mode link ${1+"$@"}; shift
-- ;;
-- uninstall|uninstal|uninsta|uninst|unins|unin|uni|un|u)
-- shift; set dummy --mode uninstall ${1+"$@"}; shift
-- ;;
-- esac
++
+ exit $EXIT_MISMATCH
+ fi
+}
@@ -12524,9 +12581,7 @@ index 9503ec85d7..70e856e065 100644
+ shift; set dummy --mode uninstall ${1+"$@"}; shift
+ ;;
+esac
-
-- # Parse non-mode specific arguments:
-- while test "$#" -gt 0; do
++
+
+
+# Option defaults:
@@ -12542,8 +12597,34 @@ index 9503ec85d7..70e856e065 100644
+opt_verbose=:
+opt_silent=false
+opt_verbose=false
-+
-+
+
+- # Shorthand for --mode=foo, only valid as the first argument
+- case $1 in
+- clean|clea|cle|cl)
+- shift; set dummy --mode clean ${1+"$@"}; shift
+- ;;
+- compile|compil|compi|comp|com|co|c)
+- shift; set dummy --mode compile ${1+"$@"}; shift
+- ;;
+- execute|execut|execu|exec|exe|ex|e)
+- shift; set dummy --mode execute ${1+"$@"}; shift
+- ;;
+- finish|finis|fini|fin|fi|f)
+- shift; set dummy --mode finish ${1+"$@"}; shift
+- ;;
+- install|instal|insta|inst|ins|in|i)
+- shift; set dummy --mode install ${1+"$@"}; shift
+- ;;
+- link|lin|li|l)
+- shift; set dummy --mode link ${1+"$@"}; shift
+- ;;
+- uninstall|uninstal|uninsta|uninst|unins|unin|uni|un|u)
+- shift; set dummy --mode uninstall ${1+"$@"}; shift
+- ;;
+- esac
+
+- # Parse non-mode specific arguments:
+- while test "$#" -gt 0; do
+# Parse options once, thoroughly. This comes as soon as possible in the
+# script to make things like `--version' happen as quickly as we can.
+{
@@ -12787,13 +12868,13 @@ index 9503ec85d7..70e856e065 100644
- fi
-}
-
-+ # Darwin sucks
-+ eval std_shrext=\"$shrext_cmds\"
-
+-
-## ----------- ##
-## Main. ##
-## ----------- ##
--
++ # Darwin sucks
++ eval std_shrext=\"$shrext_cmds\"
+
-$opt_help || {
- # Sanity checks first:
- func_check_version_match
@@ -13514,7 +13595,7 @@ index 9503ec85d7..70e856e065 100644
"")
# Generic help is extracted from the usage comments
# at the start of this file.
-@@ -1659,8 +2327,8 @@ This mode accepts the following additional options:
+@@ -1659,8 +2327,8 @@ This mode accepts the following addition
-o OUTPUT-FILE set the output file name to OUTPUT-FILE
-no-suppress do not suppress compiler output for multiple passes
@@ -13525,7 +13606,7 @@ index 9503ec85d7..70e856e065 100644
-shared do not build a \`.o' file suitable for static linking
-static only build a \`.o' file suitable for static linking
-Wc,FLAG pass FLAG directly to the compiler
-@@ -1804,7 +2472,7 @@ Otherwise, only FILE itself is deleted using RM."
+@@ -1804,7 +2472,7 @@ Otherwise, only FILE itself is deleted u
;;
*)
@@ -13627,7 +13708,7 @@ index 9503ec85d7..70e856e065 100644
+ do
+ if test -d "$opt"; then
+ func_append libdirs " $opt"
-
++
+ elif test -f "$opt"; then
+ if func_lalib_unsafe_p "$opt"; then
+ func_append libs " $opt"
@@ -13647,7 +13728,7 @@ index 9503ec85d7..70e856e065 100644
+ else
+ sysroot_cmd=
+ fi
-+
+
+ # Remove sysroot references
+ if $opt_dry_run; then
+ for lib in $libs; do
@@ -14059,7 +14140,7 @@ index 9503ec85d7..70e856e065 100644
lt_${my_prefix}_LTX_preloaded_symbols[] =
{\
{ \"$my_originator\", (void *) 0 },"
-@@ -2736,7 +3493,7 @@ static const void *lt_preloaded_setup() {
+@@ -2736,7 +3493,7 @@ static const void *lt_preloaded_setup()
for arg in $LTCFLAGS; do
case $arg in
-pie | -fpie | -fPIE) ;;
@@ -14588,7 +14669,7 @@ index 9503ec85d7..70e856e065 100644
*/
EOF
cat <<"EOF"
-@@ -3462,22 +4272,13 @@ int setenv (const char *, const char *, int);
+@@ -3462,22 +4272,13 @@ int setenv (const char *, const char *,
if (stale) { free ((void *) stale); stale = 0; } \
} while (0)
@@ -14615,7 +14696,7 @@ index 9503ec85d7..70e856e065 100644
void *xmalloc (size_t num);
char *xstrdup (const char *string);
-@@ -3487,7 +4288,10 @@ char *chase_symlinks (const char *pathspec);
+@@ -3487,7 +4288,10 @@ char *chase_symlinks (const char *pathsp
int make_executable (const char *path);
int check_executable (const char *path);
char *strendzap (char *str, const char *pat);
@@ -14943,7 +15024,7 @@ index 9503ec85d7..70e856e065 100644
vfprintf (stderr, message, ap);
fprintf (stderr, ".\n");
-@@ -3988,20 +4832,32 @@ lt_error_core (int exit_status, const char *mode,
+@@ -3988,20 +4832,32 @@ lt_error_core (int exit_status, const ch
}
void
@@ -14981,7 +15062,7 @@ index 9503ec85d7..70e856e065 100644
{
#ifdef HAVE_SETENV
/* always make a copy, for consistency with !HAVE_SETENV */
-@@ -4049,9 +4905,9 @@ lt_extend_str (const char *orig_value, const char *add, int to_end)
+@@ -4049,9 +4905,9 @@ lt_extend_str (const char *orig_value, c
void
lt_update_exe_path (const char *name, const char *value)
{
@@ -14994,7 +15075,7 @@ index 9503ec85d7..70e856e065 100644
if (name && *name && value && *value)
{
-@@ -4070,9 +4926,9 @@ lt_update_exe_path (const char *name, const char *value)
+@@ -4070,9 +4926,9 @@ lt_update_exe_path (const char *name, co
void
lt_update_lib_path (const char *name, const char *value)
{
@@ -17267,10 +17348,10 @@ index 9503ec85d7..70e856e065 100644
if test -n "$exec_cmd"; then
eval exec "$exec_cmd"
-diff --git a/ltoptions.m4 b/ltoptions.m4
-index 5ef12ced2a..17cfd51c0b 100644
---- a/ltoptions.m4
-+++ b/ltoptions.m4
+Index: git/ltoptions.m4
+===================================================================
+--- git.orig/ltoptions.m4
++++ git/ltoptions.m4
@@ -8,7 +8,7 @@
# unlimited permission to copy and/or distribute it, with or without
# modifications, as long as this notice is preserved.
@@ -17280,10 +17361,10 @@ index 5ef12ced2a..17cfd51c0b 100644
# This is to help aclocal find these macros, as it can't see m4_define.
AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])])
-diff --git a/ltversion.m4 b/ltversion.m4
-index bf87f77132..9c7b5d4118 100644
---- a/ltversion.m4
-+++ b/ltversion.m4
+Index: git/ltversion.m4
+===================================================================
+--- git.orig/ltversion.m4
++++ git/ltversion.m4
@@ -7,17 +7,17 @@
# unlimited permission to copy and/or distribute it, with or without
# modifications, as long as this notice is preserved.
@@ -17308,10 +17389,10 @@ index bf87f77132..9c7b5d4118 100644
_LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?])
_LT_DECL(, macro_revision, 0)
])
-diff --git a/lt~obsolete.m4 b/lt~obsolete.m4
-index bf92b5e079..c573da90c5 100644
---- a/lt~obsolete.m4
-+++ b/lt~obsolete.m4
+Index: git/lt~obsolete.m4
+===================================================================
+--- git.orig/lt~obsolete.m4
++++ git/lt~obsolete.m4
@@ -7,7 +7,7 @@
# unlimited permission to copy and/or distribute it, with or without
# modifications, as long as this notice is preserved.
@@ -17321,11 +17402,11 @@ index bf92b5e079..c573da90c5 100644
# These exist entirely to fool aclocal when bootstrapping libtool.
#
-diff --git a/opcodes/configure b/opcodes/configure
-index 4f29887098..2127d39288 100755
---- a/opcodes/configure
-+++ b/opcodes/configure
-@@ -650,6 +650,9 @@ OTOOL
+Index: git/opcodes/configure
+===================================================================
+--- git.orig/opcodes/configure
++++ git/opcodes/configure
+@@ -681,6 +681,9 @@ OTOOL
LIPO
NMEDIT
DSYMUTIL
@@ -17335,7 +17416,7 @@ index 4f29887098..2127d39288 100755
OBJDUMP
LN_S
NM
-@@ -763,6 +766,7 @@ enable_static
+@@ -799,6 +802,7 @@ enable_static
with_pic
enable_fast_install
with_gnu_ld
@@ -17343,7 +17424,7 @@ index 4f29887098..2127d39288 100755
enable_libtool_lock
enable_targets
enable_werror
-@@ -1423,6 +1427,8 @@ Optional Packages:
+@@ -1463,6 +1467,8 @@ Optional Packages:
--with-pic try to use only PIC/non-PIC objects [default=use
both]
--with-gnu-ld assume the C compiler uses GNU ld [default=no]
@@ -17352,7 +17433,7 @@ index 4f29887098..2127d39288 100755
Some influential environment variables:
CC C compiler command
-@@ -5115,8 +5121,8 @@ esac
+@@ -5404,8 +5410,8 @@ esac
@@ -17363,7 +17444,7 @@ index 4f29887098..2127d39288 100755
-@@ -5156,7 +5162,7 @@ ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
+@@ -5445,7 +5451,7 @@ ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to print strings" >&5
$as_echo_n "checking how to print strings... " >&6; }
# Test print first, because it will be a builtin if present.
@@ -17372,7 +17453,7 @@ index 4f29887098..2127d39288 100755
test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then
ECHO='print -r --'
elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then
-@@ -5842,8 +5848,8 @@ $as_echo_n "checking whether the shell understands some XSI constructs... " >&6;
+@@ -6131,8 +6137,8 @@ $as_echo_n "checking whether the shell u
# Try some XSI features
xsi_shell=no
( _lt_dummy="a/b/c"
@@ -17383,13 +17464,13 @@ index 4f29887098..2127d39288 100755
&& eval 'test $(( 1 + 1 )) -eq 2 \
&& test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \
&& xsi_shell=yes
-@@ -5892,6 +5898,80 @@ esac
+@@ -6181,6 +6187,80 @@ esac
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to $host format" >&5
+$as_echo_n "checking how to convert $build file names to $host format... " >&6; }
-+if test "${lt_cv_to_host_file_cmd+set}" = set; then :
++if ${lt_cv_to_host_file_cmd+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ case $host in
@@ -17436,7 +17517,7 @@ index 4f29887098..2127d39288 100755
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to toolchain format" >&5
+$as_echo_n "checking how to convert $build file names to toolchain format... " >&6; }
-+if test "${lt_cv_to_tool_file_cmd+set}" = set; then :
++if ${lt_cv_to_tool_file_cmd+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ #assume ordinary cross tools, or native build.
@@ -17463,8 +17544,8 @@ index 4f29887098..2127d39288 100755
+
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $LD option to reload object files" >&5
$as_echo_n "checking for $LD option to reload object files... " >&6; }
- if test "${lt_cv_ld_reload_flag+set}" = set; then :
-@@ -5908,6 +5988,11 @@ case $reload_flag in
+ if ${lt_cv_ld_reload_flag+:} false; then :
+@@ -6197,6 +6277,11 @@ case $reload_flag in
esac
reload_cmds='$LD$reload_flag -o $output$reload_objs'
case $host_os in
@@ -17476,7 +17557,7 @@ index 4f29887098..2127d39288 100755
darwin*)
if test "$GCC" = yes; then
reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs'
-@@ -6076,7 +6161,8 @@ mingw* | pw32*)
+@@ -6365,7 +6450,8 @@ mingw* | pw32*)
lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
lt_cv_file_magic_cmd='func_win32_libid'
else
@@ -17486,7 +17567,7 @@ index 4f29887098..2127d39288 100755
lt_cv_file_magic_cmd='$OBJDUMP -f'
fi
;;
-@@ -6230,6 +6316,21 @@ esac
+@@ -6519,6 +6605,21 @@ esac
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_deplibs_check_method" >&5
$as_echo "$lt_cv_deplibs_check_method" >&6; }
@@ -17508,7 +17589,7 @@ index 4f29887098..2127d39288 100755
file_magic_cmd=$lt_cv_file_magic_cmd
deplibs_check_method=$lt_cv_deplibs_check_method
test -z "$deplibs_check_method" && deplibs_check_method=unknown
-@@ -6243,11 +6344,164 @@ test -z "$deplibs_check_method" && deplibs_check_method=unknown
+@@ -6534,9 +6635,162 @@ test -z "$deplibs_check_method" && depli
@@ -17522,8 +17603,6 @@ index 4f29887098..2127d39288 100755
+
+
+
-
-
if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args.
-set dummy ${ac_tool_prefix}ar; ac_word=$2
@@ -17531,7 +17610,7 @@ index 4f29887098..2127d39288 100755
+set dummy ${ac_tool_prefix}dlltool; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
-+if test "${ac_cv_prog_DLLTOOL+set}" = set; then :
++if ${ac_cv_prog_DLLTOOL+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$DLLTOOL"; then
@@ -17543,7 +17622,7 @@ index 4f29887098..2127d39288 100755
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
-+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
++ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_prog_DLLTOOL="${ac_tool_prefix}dlltool"
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
@@ -17571,7 +17650,7 @@ index 4f29887098..2127d39288 100755
+set dummy dlltool; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
-+if test "${ac_cv_prog_ac_ct_DLLTOOL+set}" = set; then :
++if ${ac_cv_prog_ac_ct_DLLTOOL+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$ac_ct_DLLTOOL"; then
@@ -17583,7 +17662,7 @@ index 4f29887098..2127d39288 100755
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
-+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
++ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_prog_ac_ct_DLLTOOL="dlltool"
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
@@ -17631,7 +17710,7 @@ index 4f29887098..2127d39288 100755
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to associate runtime and link libraries" >&5
+$as_echo_n "checking how to associate runtime and link libraries... " >&6; }
-+if test "${lt_cv_sharedlib_from_linklib_cmd+set}" = set; then :
++if ${lt_cv_sharedlib_from_linklib_cmd+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ lt_cv_sharedlib_from_linklib_cmd='unknown'
@@ -17674,17 +17753,17 @@ index 4f29887098..2127d39288 100755
+set dummy $ac_tool_prefix$ac_prog; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
- if test "${ac_cv_prog_AR+set}" = set; then :
-@@ -6263,7 +6517,7 @@ do
+ if ${ac_cv_prog_AR+:} false; then :
+@@ -6552,7 +6806,7 @@ do
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_AR="${ac_tool_prefix}ar"
+ ac_cv_prog_AR="$ac_tool_prefix$ac_prog"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
-@@ -6283,11 +6537,15 @@ $as_echo "no" >&6; }
+@@ -6572,11 +6826,15 @@ $as_echo "no" >&6; }
fi
@@ -17702,17 +17781,17 @@ index 4f29887098..2127d39288 100755
+set dummy $ac_prog; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
- if test "${ac_cv_prog_ac_ct_AR+set}" = set; then :
-@@ -6303,7 +6561,7 @@ do
+ if ${ac_cv_prog_ac_ct_AR+:} false; then :
+@@ -6592,7 +6850,7 @@ do
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_ac_ct_AR="ar"
+ ac_cv_prog_ac_ct_AR="$ac_prog"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
-@@ -6322,6 +6580,10 @@ else
+@@ -6611,6 +6869,10 @@ else
$as_echo "no" >&6; }
fi
@@ -17723,7 +17802,7 @@ index 4f29887098..2127d39288 100755
if test "x$ac_ct_AR" = x; then
AR="false"
else
-@@ -6333,16 +6595,72 @@ ac_tool_warned=yes ;;
+@@ -6622,12 +6884,11 @@ ac_tool_warned=yes ;;
esac
AR=$ac_ct_AR
fi
@@ -17736,19 +17815,16 @@ index 4f29887098..2127d39288 100755
+: ${AR=ar}
+: ${AR_FLAGS=cru}
+
-+
-+
-+
-+
-+
-+
-+
-+
-+
-+
+
+
+
+@@ -6638,6 +6899,63 @@ test -z "$AR_FLAGS" && AR_FLAGS=cru
+
+
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for archiver @FILE support" >&5
+$as_echo_n "checking for archiver @FILE support... " >&6; }
-+if test "${lt_cv_ar_at_file+set}" = set; then :
++if ${lt_cv_ar_at_file+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ lt_cv_ar_at_file=no
@@ -17758,7 +17834,7 @@ index 4f29887098..2127d39288 100755
+int
+main ()
+{
-
++
+ ;
+ return 0;
+}
@@ -17784,23 +17860,29 @@ index 4f29887098..2127d39288 100755
+ fi
+ fi
+ rm -f conftest.* libconftest.a
-
++
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
++
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ar_at_file" >&5
+$as_echo "$lt_cv_ar_at_file" >&6; }
-
++
+if test "x$lt_cv_ar_at_file" = xno; then
+ archiver_list_spec=
+else
+ archiver_list_spec=$lt_cv_ar_at_file
+fi
++
++
++
++
++
++
-
-
-@@ -6684,8 +7002,8 @@ esac
+ if test -n "$ac_tool_prefix"; then
+ # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
+@@ -6973,8 +7291,8 @@ esac
lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
# Transform an extracted symbol line into symbol name and symbol address
@@ -17811,7 +17893,7 @@ index 4f29887098..2127d39288 100755
# Handle CRLF in mingw tool chain
opt_cr=
-@@ -6721,6 +7039,7 @@ for ac_symprfx in "" "_"; do
+@@ -7010,6 +7328,7 @@ for ac_symprfx in "" "_"; do
else
lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[ ]\($symcode$symcode*\)[ ][ ]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
fi
@@ -17819,7 +17901,7 @@ index 4f29887098..2127d39288 100755
# Check to see that the pipe works correctly.
pipe_works=no
-@@ -6762,6 +7081,18 @@ _LT_EOF
+@@ -7051,6 +7370,18 @@ _LT_EOF
if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
cat <<_LT_EOF > conftest.$ac_ext
@@ -17838,7 +17920,7 @@ index 4f29887098..2127d39288 100755
#ifdef __cplusplus
extern "C" {
#endif
-@@ -6773,7 +7104,7 @@ _LT_EOF
+@@ -7062,7 +7393,7 @@ _LT_EOF
cat <<_LT_EOF >> conftest.$ac_ext
/* The mapping between symbol names and symbols. */
@@ -17847,7 +17929,7 @@ index 4f29887098..2127d39288 100755
const char *name;
void *address;
}
-@@ -6799,8 +7130,8 @@ static const void *lt_preloaded_setup() {
+@@ -7088,8 +7419,8 @@ static const void *lt_preloaded_setup()
_LT_EOF
# Now try linking the two files.
mv conftest.$ac_objext conftstm.$ac_objext
@@ -17858,7 +17940,7 @@ index 4f29887098..2127d39288 100755
LIBS="conftstm.$ac_objext"
CFLAGS="$CFLAGS$lt_prog_compiler_no_builtin_flag"
if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5
-@@ -6810,8 +7141,8 @@ _LT_EOF
+@@ -7099,8 +7430,8 @@ _LT_EOF
test $ac_status = 0; } && test -s conftest${ac_exeext}; then
pipe_works=yes
fi
@@ -17869,7 +17951,7 @@ index 4f29887098..2127d39288 100755
else
echo "cannot find nm_test_func in $nlist" >&5
fi
-@@ -6848,6 +7179,16 @@ else
+@@ -7137,6 +7468,14 @@ else
$as_echo "ok" >&6; }
fi
@@ -17881,12 +17963,10 @@ index 4f29887098..2127d39288 100755
+fi
+
+
-+
-+
-@@ -6864,6 +7205,45 @@ fi
+@@ -7158,6 +7497,47 @@ fi
@@ -17894,9 +17974,6 @@ index 4f29887098..2127d39288 100755
+
+
+
-+
-+
-+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sysroot" >&5
+$as_echo_n "checking for sysroot... " >&6; }
+
@@ -17923,16 +18000,21 @@ index 4f29887098..2127d39288 100755
+ *)
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${with_libtool_sysroot}" >&5
+$as_echo "${with_libtool_sysroot}" >&6; }
-+ as_fn_error "The sysroot must be an absolute path." "$LINENO" 5
++ as_fn_error $? "The sysroot must be an absolute path." "$LINENO" 5
+ ;;
+esac
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${lt_sysroot:-no}" >&5
+$as_echo "${lt_sysroot:-no}" >&6; }
-
-
-
-@@ -7075,6 +7455,123 @@ esac
++
++
++
++
++
+ # Check whether --enable-libtool-lock was given.
+ if test "${enable_libtool_lock+set}" = set; then :
+ enableval=$enable_libtool_lock;
+@@ -7364,6 +7744,123 @@ esac
need_locks="$enable_libtool_lock"
@@ -17941,7 +18023,7 @@ index 4f29887098..2127d39288 100755
+set dummy ${ac_tool_prefix}mt; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
-+if test "${ac_cv_prog_MANIFEST_TOOL+set}" = set; then :
++if ${ac_cv_prog_MANIFEST_TOOL+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$MANIFEST_TOOL"; then
@@ -17953,7 +18035,7 @@ index 4f29887098..2127d39288 100755
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
-+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
++ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_prog_MANIFEST_TOOL="${ac_tool_prefix}mt"
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
@@ -17981,7 +18063,7 @@ index 4f29887098..2127d39288 100755
+set dummy mt; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
-+if test "${ac_cv_prog_ac_ct_MANIFEST_TOOL+set}" = set; then :
++if ${ac_cv_prog_ac_ct_MANIFEST_TOOL+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$ac_ct_MANIFEST_TOOL"; then
@@ -17993,7 +18075,7 @@ index 4f29887098..2127d39288 100755
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
-+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
++ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_prog_ac_ct_MANIFEST_TOOL="mt"
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
@@ -18031,7 +18113,7 @@ index 4f29887098..2127d39288 100755
+test -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $MANIFEST_TOOL is a manifest tool" >&5
+$as_echo_n "checking if $MANIFEST_TOOL is a manifest tool... " >&6; }
-+if test "${lt_cv_path_mainfest_tool+set}" = set; then :
++if ${lt_cv_path_mainfest_tool+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ lt_cv_path_mainfest_tool=no
@@ -18056,7 +18138,7 @@ index 4f29887098..2127d39288 100755
case $host_os in
rhapsody* | darwin*)
-@@ -7638,6 +8135,8 @@ _LT_EOF
+@@ -7927,6 +8424,8 @@ _LT_EOF
$LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&5
echo "$AR cru libconftest.a conftest.o" >&5
$AR cru libconftest.a conftest.o 2>&5
@@ -18065,7 +18147,7 @@ index 4f29887098..2127d39288 100755
cat > conftest.c << _LT_EOF
int main() { return 0;}
_LT_EOF
-@@ -7803,7 +8302,8 @@ fi
+@@ -8092,7 +8591,8 @@ fi
LIBTOOL_DEPS="$ltmain"
# Always use our own libtool.
@@ -18075,7 +18157,7 @@ index 4f29887098..2127d39288 100755
-@@ -7892,7 +8392,7 @@ aix3*)
+@@ -8181,7 +8681,7 @@ aix3*)
esac
# Global variables:
@@ -18084,7 +18166,7 @@ index 4f29887098..2127d39288 100755
can_build_shared=yes
# All known linkers require a `.a' archive for static linking (except MSVC,
-@@ -8190,8 +8690,6 @@ fi
+@@ -8479,8 +8979,6 @@ fi
lt_prog_compiler_pic=
lt_prog_compiler_static=
@@ -18093,7 +18175,7 @@ index 4f29887098..2127d39288 100755
if test "$GCC" = yes; then
lt_prog_compiler_wl='-Wl,'
-@@ -8357,6 +8855,12 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
+@@ -8646,6 +9144,12 @@ $as_echo_n "checking for $compiler optio
lt_prog_compiler_pic='--shared'
lt_prog_compiler_static='--static'
;;
@@ -18106,7 +18188,7 @@ index 4f29887098..2127d39288 100755
pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*)
# Portland Group compilers (*not* the Pentium gcc compiler,
# which looks to be a dead project)
-@@ -8419,7 +8923,7 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
+@@ -8708,7 +9212,7 @@ $as_echo_n "checking for $compiler optio
lt_prog_compiler_pic='-KPIC'
lt_prog_compiler_static='-Bstatic'
case $cc_basename in
@@ -18115,7 +18197,7 @@ index 4f29887098..2127d39288 100755
lt_prog_compiler_wl='-Qoption ld ';;
*)
lt_prog_compiler_wl='-Wl,';;
-@@ -8476,13 +8980,17 @@ case $host_os in
+@@ -8765,13 +9269,17 @@ case $host_os in
lt_prog_compiler_pic="$lt_prog_compiler_pic -DPIC"
;;
esac
@@ -18128,7 +18210,7 @@ index 4f29887098..2127d39288 100755
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5
+$as_echo_n "checking for $compiler option to produce PIC... " >&6; }
-+if test "${lt_cv_prog_compiler_pic+set}" = set; then :
++if ${lt_cv_prog_compiler_pic+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ lt_cv_prog_compiler_pic=$lt_prog_compiler_pic
@@ -18139,7 +18221,7 @@ index 4f29887098..2127d39288 100755
#
# Check to make sure the PIC flag actually works.
-@@ -8543,6 +9051,11 @@ fi
+@@ -8832,6 +9340,11 @@ fi
@@ -18151,7 +18233,7 @@ index 4f29887098..2127d39288 100755
#
# Check to make sure the static flag actually works.
#
-@@ -8893,7 +9406,8 @@ _LT_EOF
+@@ -9182,7 +9695,8 @@ _LT_EOF
allow_undefined_flag=unsupported
always_export_symbols=no
enable_shared_with_static_runtimes=yes
@@ -18161,7 +18243,7 @@ index 4f29887098..2127d39288 100755
if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
-@@ -8992,12 +9506,12 @@ _LT_EOF
+@@ -9281,12 +9795,12 @@ _LT_EOF
whole_archive_flag_spec='--whole-archive$convenience --no-whole-archive'
hardcode_libdir_flag_spec=
hardcode_libdir_flag_spec_ld='-rpath $libdir'
@@ -18176,7 +18258,7 @@ index 4f29887098..2127d39288 100755
fi
;;
esac
-@@ -9011,8 +9525,8 @@ _LT_EOF
+@@ -9300,8 +9814,8 @@ _LT_EOF
archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
wlarc=
else
@@ -18187,7 +18269,7 @@ index 4f29887098..2127d39288 100755
fi
;;
-@@ -9030,8 +9544,8 @@ _LT_EOF
+@@ -9319,8 +9833,8 @@ _LT_EOF
_LT_EOF
elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
@@ -18198,7 +18280,7 @@ index 4f29887098..2127d39288 100755
else
ld_shlibs=no
fi
-@@ -9077,8 +9591,8 @@ _LT_EOF
+@@ -9366,8 +9880,8 @@ _LT_EOF
*)
if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
@@ -18209,7 +18291,7 @@ index 4f29887098..2127d39288 100755
else
ld_shlibs=no
fi
-@@ -9208,7 +9722,13 @@ _LT_EOF
+@@ -9497,7 +10011,13 @@ _LT_EOF
allow_undefined_flag='-berok'
# Determine the default libpath from the value encoded in an
# empty executable.
@@ -18217,14 +18299,14 @@ index 4f29887098..2127d39288 100755
+ if test "${lt_cv_aix_libpath+set}" = set; then
+ aix_libpath=$lt_cv_aix_libpath
+else
-+ if test "${lt_cv_aix_libpath_+set}" = set; then :
++ if ${lt_cv_aix_libpath_+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
-@@ -9221,22 +9741,29 @@ main ()
+@@ -9510,22 +10030,29 @@ main ()
_ACEOF
if ac_fn_c_try_link "$LINENO"; then :
@@ -18267,7 +18349,7 @@ index 4f29887098..2127d39288 100755
hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
archive_expsym_cmds='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
-@@ -9248,7 +9775,13 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9537,7 +10064,13 @@ if test -z "$aix_libpath"; then aix_libp
else
# Determine the default libpath from the value encoded in an
# empty executable.
@@ -18275,14 +18357,14 @@ index 4f29887098..2127d39288 100755
+ if test "${lt_cv_aix_libpath+set}" = set; then
+ aix_libpath=$lt_cv_aix_libpath
+else
-+ if test "${lt_cv_aix_libpath_+set}" = set; then :
++ if ${lt_cv_aix_libpath_+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
-@@ -9261,22 +9794,29 @@ main ()
+@@ -9550,22 +10083,29 @@ main ()
_ACEOF
if ac_fn_c_try_link "$LINENO"; then :
@@ -18325,7 +18407,7 @@ index 4f29887098..2127d39288 100755
hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
# Warning - without using the other run time loading flags,
-@@ -9321,20 +9861,63 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9610,20 +10150,63 @@ if test -z "$aix_libpath"; then aix_libp
# Microsoft Visual C++.
# hardcode_libdir_flag_spec is actually meaningless, as there is
# no search path for DLLs.
@@ -18403,7 +18485,7 @@ index 4f29887098..2127d39288 100755
;;
darwin* | rhapsody*)
-@@ -9395,7 +9978,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9684,7 +10267,7 @@ if test -z "$aix_libpath"; then aix_libp
# FreeBSD 3 and greater uses gcc -shared to do shared libraries.
freebsd* | dragonfly*)
@@ -18412,7 +18494,7 @@ index 4f29887098..2127d39288 100755
hardcode_libdir_flag_spec='-R$libdir'
hardcode_direct=yes
hardcode_shlibpath_var=no
-@@ -9403,7 +9986,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9692,7 +10275,7 @@ if test -z "$aix_libpath"; then aix_libp
hpux9*)
if test "$GCC" = yes; then
@@ -18421,7 +18503,7 @@ index 4f29887098..2127d39288 100755
else
archive_cmds='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
fi
-@@ -9419,7 +10002,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9708,7 +10291,7 @@ if test -z "$aix_libpath"; then aix_libp
hpux10*)
if test "$GCC" = yes && test "$with_gnu_ld" = no; then
@@ -18430,7 +18512,7 @@ index 4f29887098..2127d39288 100755
else
archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
fi
-@@ -9443,10 +10026,10 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9732,10 +10315,10 @@ if test -z "$aix_libpath"; then aix_libp
archive_cmds='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
;;
ia64*)
@@ -18443,7 +18525,7 @@ index 4f29887098..2127d39288 100755
;;
esac
else
-@@ -9525,23 +10108,36 @@ fi
+@@ -9814,23 +10397,36 @@ fi
irix5* | irix6* | nonstopux*)
if test "$GCC" = yes; then
@@ -18458,7 +18540,7 @@ index 4f29887098..2127d39288 100755
+ # This should be the same for all languages, so no per-tag cache variable.
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $host_os linker accepts -exported_symbol" >&5
+$as_echo_n "checking whether the $host_os linker accepts -exported_symbol... " >&6; }
-+if test "${lt_cv_irix_exported_symbol+set}" = set; then :
++if ${lt_cv_irix_exported_symbol+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ save_LDFLAGS="$LDFLAGS"
@@ -18488,7 +18570,7 @@ index 4f29887098..2127d39288 100755
else
archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -exports_file $export_symbols -o $lib'
-@@ -9626,7 +10222,7 @@ rm -f core conftest.err conftest.$ac_objext \
+@@ -9915,7 +10511,7 @@ rm -f core conftest.err conftest.$ac_obj
osf4* | osf5*) # as osf3* with the addition of -msym flag
if test "$GCC" = yes; then
allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
@@ -18497,7 +18579,7 @@ index 4f29887098..2127d39288 100755
hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
else
allow_undefined_flag=' -expect_unresolved \*'
-@@ -9645,9 +10241,9 @@ rm -f core conftest.err conftest.$ac_objext \
+@@ -9934,9 +10530,9 @@ rm -f core conftest.err conftest.$ac_obj
no_undefined_flag=' -z defs'
if test "$GCC" = yes; then
wlarc='${wl}'
@@ -18509,7 +18591,7 @@ index 4f29887098..2127d39288 100755
else
case `$CC -V 2>&1` in
*"Compilers 5.0"*)
-@@ -10223,8 +10819,9 @@ cygwin* | mingw* | pw32* | cegcc*)
+@@ -10512,8 +11108,9 @@ cygwin* | mingw* | pw32* | cegcc*)
need_version=no
need_lib_prefix=no
@@ -18521,7 +18603,7 @@ index 4f29887098..2127d39288 100755
library_names_spec='$libname.dll.a'
# DLL is installed to $(libdir)/../bin by postinstall_cmds
postinstall_cmds='base_file=`basename \${file}`~
-@@ -10257,13 +10854,71 @@ cygwin* | mingw* | pw32* | cegcc*)
+@@ -10546,13 +11143,71 @@ cygwin* | mingw* | pw32* | cegcc*)
library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
;;
esac
@@ -18594,7 +18676,7 @@ index 4f29887098..2127d39288 100755
# FIXME: first we should search . and the directory the executable is in
shlibpath_var=PATH
;;
-@@ -10355,7 +11010,7 @@ haiku*)
+@@ -10644,7 +11299,7 @@ haiku*)
soname_spec='${libname}${release}${shared_ext}$major'
shlibpath_var=LIBRARY_PATH
shlibpath_overrides_runpath=yes
@@ -18603,7 +18685,16 @@ index 4f29887098..2127d39288 100755
hardcode_into_libs=yes
;;
-@@ -11195,10 +11850,10 @@ else
+@@ -11440,7 +12095,7 @@ else
+ lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
+ lt_status=$lt_dlunknown
+ cat > conftest.$ac_ext <<_LT_EOF
+-#line 11443 "configure"
++#line $LINENO "configure"
+ #include "confdefs.h"
+
+ #if HAVE_DLFCN_H
+@@ -11484,10 +12139,10 @@ else
/* When -fvisbility=hidden is used, assume the code has been annotated
correspondingly for the symbols needed. */
#if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
@@ -18616,7 +18707,16 @@ index 4f29887098..2127d39288 100755
int main ()
{
void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
-@@ -11301,10 +11956,10 @@ else
+@@ -11546,7 +12201,7 @@ else
+ lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
+ lt_status=$lt_dlunknown
+ cat > conftest.$ac_ext <<_LT_EOF
+-#line 11549 "configure"
++#line $LINENO "configure"
+ #include "confdefs.h"
+
+ #if HAVE_DLFCN_H
+@@ -11590,10 +12245,10 @@ else
/* When -fvisbility=hidden is used, assume the code has been annotated
correspondingly for the symbols needed. */
#if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
@@ -18629,7 +18729,7 @@ index 4f29887098..2127d39288 100755
int main ()
{
void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
-@@ -12543,7 +13198,7 @@ if test "$enable_shared" = "yes"; then
+@@ -12831,7 +13486,7 @@ if test "$enable_shared" = "yes"; then
# since libbfd may not pull in the entirety of libiberty.
x=`sed -n -e 's/^[ ]*PICFLAG[ ]*=[ ]*//p' < ../libiberty/Makefile | sed -n '$p'`
if test -n "$x"; then
@@ -18638,7 +18738,7 @@ index 4f29887098..2127d39288 100755
fi
case "${host}" in
-@@ -13520,13 +14175,20 @@ exeext='`$ECHO "$exeext" | $SED "$delay_single_quote_subst"`'
+@@ -13807,13 +14462,20 @@ exeext='`$ECHO "$exeext" | $SED "$delay_
lt_unset='`$ECHO "$lt_unset" | $SED "$delay_single_quote_subst"`'
lt_SP2NL='`$ECHO "$lt_SP2NL" | $SED "$delay_single_quote_subst"`'
lt_NL2SP='`$ECHO "$lt_NL2SP" | $SED "$delay_single_quote_subst"`'
@@ -18659,7 +18759,7 @@ index 4f29887098..2127d39288 100755
STRIP='`$ECHO "$STRIP" | $SED "$delay_single_quote_subst"`'
RANLIB='`$ECHO "$RANLIB" | $SED "$delay_single_quote_subst"`'
old_postinstall_cmds='`$ECHO "$old_postinstall_cmds" | $SED "$delay_single_quote_subst"`'
-@@ -13541,14 +14203,17 @@ lt_cv_sys_global_symbol_pipe='`$ECHO "$lt_cv_sys_global_symbol_pipe" | $SED "$de
+@@ -13828,14 +14490,17 @@ lt_cv_sys_global_symbol_pipe='`$ECHO "$l
lt_cv_sys_global_symbol_to_cdecl='`$ECHO "$lt_cv_sys_global_symbol_to_cdecl" | $SED "$delay_single_quote_subst"`'
lt_cv_sys_global_symbol_to_c_name_address='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address" | $SED "$delay_single_quote_subst"`'
lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address_lib_prefix" | $SED "$delay_single_quote_subst"`'
@@ -18678,7 +18778,7 @@ index 4f29887098..2127d39288 100755
DSYMUTIL='`$ECHO "$DSYMUTIL" | $SED "$delay_single_quote_subst"`'
NMEDIT='`$ECHO "$NMEDIT" | $SED "$delay_single_quote_subst"`'
LIPO='`$ECHO "$LIPO" | $SED "$delay_single_quote_subst"`'
-@@ -13581,12 +14246,12 @@ hardcode_shlibpath_var='`$ECHO "$hardcode_shlibpath_var" | $SED "$delay_single_q
+@@ -13868,12 +14533,12 @@ hardcode_shlibpath_var='`$ECHO "$hardcod
hardcode_automatic='`$ECHO "$hardcode_automatic" | $SED "$delay_single_quote_subst"`'
inherit_rpath='`$ECHO "$inherit_rpath" | $SED "$delay_single_quote_subst"`'
link_all_deplibs='`$ECHO "$link_all_deplibs" | $SED "$delay_single_quote_subst"`'
@@ -18692,7 +18792,7 @@ index 4f29887098..2127d39288 100755
file_list_spec='`$ECHO "$file_list_spec" | $SED "$delay_single_quote_subst"`'
variables_saved_for_relink='`$ECHO "$variables_saved_for_relink" | $SED "$delay_single_quote_subst"`'
need_lib_prefix='`$ECHO "$need_lib_prefix" | $SED "$delay_single_quote_subst"`'
-@@ -13641,8 +14306,13 @@ reload_flag \
+@@ -13928,8 +14593,13 @@ reload_flag \
OBJDUMP \
deplibs_check_method \
file_magic_cmd \
@@ -18706,7 +18806,7 @@ index 4f29887098..2127d39288 100755
STRIP \
RANLIB \
CC \
-@@ -13652,12 +14322,14 @@ lt_cv_sys_global_symbol_pipe \
+@@ -13939,12 +14609,14 @@ lt_cv_sys_global_symbol_pipe \
lt_cv_sys_global_symbol_to_cdecl \
lt_cv_sys_global_symbol_to_c_name_address \
lt_cv_sys_global_symbol_to_c_name_address_lib_prefix \
@@ -18722,7 +18822,7 @@ index 4f29887098..2127d39288 100755
DSYMUTIL \
NMEDIT \
LIPO \
-@@ -13673,7 +14345,6 @@ no_undefined_flag \
+@@ -13960,7 +14632,6 @@ no_undefined_flag \
hardcode_libdir_flag_spec \
hardcode_libdir_flag_spec_ld \
hardcode_libdir_separator \
@@ -18730,7 +18830,7 @@ index 4f29887098..2127d39288 100755
exclude_expsyms \
include_expsyms \
file_list_spec \
-@@ -13709,6 +14380,7 @@ module_cmds \
+@@ -13996,6 +14667,7 @@ module_cmds \
module_expsym_cmds \
export_symbols_cmds \
prelink_cmds \
@@ -18738,7 +18838,7 @@ index 4f29887098..2127d39288 100755
postinstall_cmds \
postuninstall_cmds \
finish_cmds \
-@@ -14465,7 +15137,8 @@ $as_echo X"$file" |
+@@ -14761,7 +15433,8 @@ $as_echo X"$file" |
# NOTE: Changes made to this file will be lost: look at ltmain.sh.
#
# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
@@ -18748,7 +18848,7 @@ index 4f29887098..2127d39288 100755
# Written by Gordon Matzigkeit, 1996
#
# This file is part of GNU Libtool.
-@@ -14568,19 +15241,42 @@ SP2NL=$lt_lt_SP2NL
+@@ -14864,19 +15537,42 @@ SP2NL=$lt_lt_SP2NL
# turn newlines into spaces.
NL2SP=$lt_lt_NL2SP
@@ -18792,7 +18892,7 @@ index 4f29887098..2127d39288 100755
# A symbol stripping program.
STRIP=$lt_STRIP
-@@ -14610,6 +15306,12 @@ global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address
+@@ -14906,6 +15602,12 @@ global_symbol_to_c_name_address=$lt_lt_c
# Transform the output of nm in a C name address pair when lib prefix is needed.
global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix
@@ -18805,7 +18905,7 @@ index 4f29887098..2127d39288 100755
# The name of the directory that contains temporary libtool files.
objdir=$objdir
-@@ -14619,6 +15321,9 @@ MAGIC_CMD=$MAGIC_CMD
+@@ -14915,6 +15617,9 @@ MAGIC_CMD=$MAGIC_CMD
# Must we lock files when doing compilation?
need_locks=$lt_need_locks
@@ -18815,7 +18915,7 @@ index 4f29887098..2127d39288 100755
# Tool to manipulate archived DWARF debug symbol files on Mac OS X.
DSYMUTIL=$lt_DSYMUTIL
-@@ -14733,12 +15438,12 @@ with_gcc=$GCC
+@@ -15029,12 +15734,12 @@ with_gcc=$GCC
# Compiler flag to turn off builtin functions.
no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag
@@ -18831,7 +18931,7 @@ index 4f29887098..2127d39288 100755
# Compiler flag to prevent dynamic linking.
link_static_flag=$lt_lt_prog_compiler_static
-@@ -14825,9 +15530,6 @@ inherit_rpath=$inherit_rpath
+@@ -15121,9 +15826,6 @@ inherit_rpath=$inherit_rpath
# Whether libtool must link a program against all its dependency libraries.
link_all_deplibs=$link_all_deplibs
@@ -18841,7 +18941,7 @@ index 4f29887098..2127d39288 100755
# Set to "yes" if exported symbols are required.
always_export_symbols=$always_export_symbols
-@@ -14843,6 +15545,9 @@ include_expsyms=$lt_include_expsyms
+@@ -15139,6 +15841,9 @@ include_expsyms=$lt_include_expsyms
# Commands necessary for linking programs (against libraries) with templates.
prelink_cmds=$lt_prelink_cmds
@@ -18851,7 +18951,7 @@ index 4f29887098..2127d39288 100755
# Specify filename containing input files.
file_list_spec=$lt_file_list_spec
-@@ -14875,210 +15580,169 @@ ltmain="$ac_aux_dir/ltmain.sh"
+@@ -15171,210 +15876,169 @@ ltmain="$ac_aux_dir/ltmain.sh"
# if finds mixed CR/LF and LF-only lines. Since sed operates in
# text mode, it properly converts lines to CR/LF. This bash problem
# is reportedly fixed, but why not run on old versions too?
@@ -19053,15 +19153,9 @@ index 4f29887098..2127d39288 100755
-_LT_EOF
- ;;
- esac
--
--
-- sed -n '/^# Generated shell functions inserted here/,$p' "$ltmain" >> "$cfgfile" \
-- || (rm -f "$cfgfile"; exit 1)
--
-- mv -f "$cfgfile" "$ofile" ||
+ sed '$q' "$ltmain" >> "$cfgfile" \
+ || (rm -f "$cfgfile"; exit 1)
-+
+
+ if test x"$xsi_shell" = xyes; then
+ sed -e '/^func_dirname ()$/,/^} # func_dirname /c\
+func_dirname ()\
@@ -19219,17 +19313,20 @@ index 4f29887098..2127d39288 100755
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Unable to substitute extended shell functions in $ofile" >&5
+$as_echo "$as_me: WARNING: Unable to substitute extended shell functions in $ofile" >&2;}
+fi
-+
-+
+
+- sed -n '/^# Generated shell functions inserted here/,$p' "$ltmain" >> "$cfgfile" \
+- || (rm -f "$cfgfile"; exit 1)
+
+- mv -f "$cfgfile" "$ofile" ||
+ mv -f "$cfgfile" "$ofile" ||
(rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
chmod +x "$ofile"
-diff --git a/opcodes/configure.ac b/opcodes/configure.ac
-index b07f3f3629..5a32d9b1fc 100644
---- a/opcodes/configure.ac
-+++ b/opcodes/configure.ac
-@@ -167,7 +167,7 @@ changequote(,)dnl
+Index: git/opcodes/configure.ac
+===================================================================
+--- git.orig/opcodes/configure.ac
++++ git/opcodes/configure.ac
+@@ -166,7 +166,7 @@ changequote(,)dnl
x=`sed -n -e 's/^[ ]*PICFLAG[ ]*=[ ]*//p' < ../libiberty/Makefile | sed -n '$p'`
changequote([,])dnl
if test -n "$x"; then
@@ -19238,11 +19335,11 @@ index b07f3f3629..5a32d9b1fc 100644
fi
case "${host}" in
-diff --git a/zlib/configure b/zlib/configure
-index dc2d9ed383..ed9a492f5c 100755
---- a/zlib/configure
-+++ b/zlib/configure
-@@ -614,8 +614,11 @@ OTOOL
+Index: git/zlib/configure
+===================================================================
+--- git.orig/zlib/configure
++++ git/zlib/configure
+@@ -646,8 +646,11 @@ OTOOL
LIPO
NMEDIT
DSYMUTIL
@@ -19254,7 +19351,7 @@ index dc2d9ed383..ed9a492f5c 100755
OBJDUMP
LN_S
NM
-@@ -737,6 +740,7 @@ enable_static
+@@ -774,6 +777,7 @@ enable_static
with_pic
enable_fast_install
with_gnu_ld
@@ -19262,7 +19359,7 @@ index dc2d9ed383..ed9a492f5c 100755
enable_libtool_lock
enable_host_shared
'
-@@ -1385,6 +1389,8 @@ Optional Packages:
+@@ -1428,6 +1432,8 @@ Optional Packages:
--with-pic try to use only PIC/non-PIC objects [default=use
both]
--with-gnu-ld assume the C compiler uses GNU ld [default=no]
@@ -19271,7 +19368,7 @@ index dc2d9ed383..ed9a492f5c 100755
Some influential environment variables:
CC C compiler command
-@@ -3910,8 +3916,8 @@ esac
+@@ -4147,8 +4153,8 @@ esac
@@ -19282,7 +19379,7 @@ index dc2d9ed383..ed9a492f5c 100755
-@@ -3951,7 +3957,7 @@ ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
+@@ -4188,7 +4194,7 @@ ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to print strings" >&5
$as_echo_n "checking how to print strings... " >&6; }
# Test print first, because it will be a builtin if present.
@@ -19291,7 +19388,7 @@ index dc2d9ed383..ed9a492f5c 100755
test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then
ECHO='print -r --'
elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then
-@@ -4767,8 +4773,8 @@ $as_echo_n "checking whether the shell understands some XSI constructs... " >&6;
+@@ -5004,8 +5010,8 @@ $as_echo_n "checking whether the shell u
# Try some XSI features
xsi_shell=no
( _lt_dummy="a/b/c"
@@ -19302,13 +19399,13 @@ index dc2d9ed383..ed9a492f5c 100755
&& eval 'test $(( 1 + 1 )) -eq 2 \
&& test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \
&& xsi_shell=yes
-@@ -4817,6 +4823,80 @@ esac
+@@ -5054,6 +5060,80 @@ esac
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to $host format" >&5
+$as_echo_n "checking how to convert $build file names to $host format... " >&6; }
-+if test "${lt_cv_to_host_file_cmd+set}" = set; then :
++if ${lt_cv_to_host_file_cmd+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ case $host in
@@ -19355,7 +19452,7 @@ index dc2d9ed383..ed9a492f5c 100755
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to toolchain format" >&5
+$as_echo_n "checking how to convert $build file names to toolchain format... " >&6; }
-+if test "${lt_cv_to_tool_file_cmd+set}" = set; then :
++if ${lt_cv_to_tool_file_cmd+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ #assume ordinary cross tools, or native build.
@@ -19382,8 +19479,8 @@ index dc2d9ed383..ed9a492f5c 100755
+
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $LD option to reload object files" >&5
$as_echo_n "checking for $LD option to reload object files... " >&6; }
- if test "${lt_cv_ld_reload_flag+set}" = set; then :
-@@ -4833,6 +4913,11 @@ case $reload_flag in
+ if ${lt_cv_ld_reload_flag+:} false; then :
+@@ -5070,6 +5150,11 @@ case $reload_flag in
esac
reload_cmds='$LD$reload_flag -o $output$reload_objs'
case $host_os in
@@ -19395,7 +19492,7 @@ index dc2d9ed383..ed9a492f5c 100755
darwin*)
if test "$GCC" = yes; then
reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs'
-@@ -5001,7 +5086,8 @@ mingw* | pw32*)
+@@ -5238,7 +5323,8 @@ mingw* | pw32*)
lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
lt_cv_file_magic_cmd='func_win32_libid'
else
@@ -19405,7 +19502,7 @@ index dc2d9ed383..ed9a492f5c 100755
lt_cv_file_magic_cmd='$OBJDUMP -f'
fi
;;
-@@ -5155,6 +5241,21 @@ esac
+@@ -5392,6 +5478,21 @@ esac
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_deplibs_check_method" >&5
$as_echo "$lt_cv_deplibs_check_method" >&6; }
@@ -19427,7 +19524,7 @@ index dc2d9ed383..ed9a492f5c 100755
file_magic_cmd=$lt_cv_file_magic_cmd
deplibs_check_method=$lt_cv_deplibs_check_method
test -z "$deplibs_check_method" && deplibs_check_method=unknown
-@@ -5168,11 +5269,165 @@ test -z "$deplibs_check_method" && deplibs_check_method=unknown
+@@ -5407,9 +5508,163 @@ test -z "$deplibs_check_method" && depli
@@ -19441,8 +19538,6 @@ index dc2d9ed383..ed9a492f5c 100755
+
+
+
-
-
if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args.
-set dummy ${ac_tool_prefix}ar; ac_word=$2
@@ -19450,7 +19545,7 @@ index dc2d9ed383..ed9a492f5c 100755
+set dummy ${ac_tool_prefix}dlltool; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
-+if test "${ac_cv_prog_DLLTOOL+set}" = set; then :
++if ${ac_cv_prog_DLLTOOL+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$DLLTOOL"; then
@@ -19462,7 +19557,7 @@ index dc2d9ed383..ed9a492f5c 100755
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
-+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
++ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_prog_DLLTOOL="${ac_tool_prefix}dlltool"
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
@@ -19490,7 +19585,7 @@ index dc2d9ed383..ed9a492f5c 100755
+set dummy dlltool; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
-+if test "${ac_cv_prog_ac_ct_DLLTOOL+set}" = set; then :
++if ${ac_cv_prog_ac_ct_DLLTOOL+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$ac_ct_DLLTOOL"; then
@@ -19502,7 +19597,7 @@ index dc2d9ed383..ed9a492f5c 100755
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
-+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
++ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_prog_ac_ct_DLLTOOL="dlltool"
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
@@ -19550,7 +19645,7 @@ index dc2d9ed383..ed9a492f5c 100755
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to associate runtime and link libraries" >&5
+$as_echo_n "checking how to associate runtime and link libraries... " >&6; }
-+if test "${lt_cv_sharedlib_from_linklib_cmd+set}" = set; then :
++if ${lt_cv_sharedlib_from_linklib_cmd+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ lt_cv_sharedlib_from_linklib_cmd='unknown'
@@ -19594,17 +19689,17 @@ index dc2d9ed383..ed9a492f5c 100755
+set dummy $ac_tool_prefix$ac_prog; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
- if test "${ac_cv_prog_AR+set}" = set; then :
-@@ -5188,7 +5443,7 @@ do
+ if ${ac_cv_prog_AR+:} false; then :
+@@ -5425,7 +5680,7 @@ do
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_AR="${ac_tool_prefix}ar"
+ ac_cv_prog_AR="$ac_tool_prefix$ac_prog"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
-@@ -5208,11 +5463,15 @@ $as_echo "no" >&6; }
+@@ -5445,11 +5700,15 @@ $as_echo "no" >&6; }
fi
@@ -19622,17 +19717,17 @@ index dc2d9ed383..ed9a492f5c 100755
+set dummy $ac_prog; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
- if test "${ac_cv_prog_ac_ct_AR+set}" = set; then :
-@@ -5228,7 +5487,7 @@ do
+ if ${ac_cv_prog_ac_ct_AR+:} false; then :
+@@ -5465,7 +5724,7 @@ do
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_ac_ct_AR="ar"
+ ac_cv_prog_ac_ct_AR="$ac_prog"
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
-@@ -5247,6 +5506,10 @@ else
+@@ -5484,6 +5743,10 @@ else
$as_echo "no" >&6; }
fi
@@ -19643,7 +19738,7 @@ index dc2d9ed383..ed9a492f5c 100755
if test "x$ac_ct_AR" = x; then
AR="false"
else
-@@ -5258,16 +5521,72 @@ ac_tool_warned=yes ;;
+@@ -5495,12 +5758,10 @@ ac_tool_warned=yes ;;
esac
AR=$ac_ct_AR
fi
@@ -19655,20 +19750,16 @@ index dc2d9ed383..ed9a492f5c 100755
-test -z "$AR_FLAGS" && AR_FLAGS=cru
+: ${AR=ar}
+: ${AR_FLAGS=cru}
-+
-+
-+
-+
-+
-+
-+
-+
-+
-+
-+
+
+
+
+@@ -5512,6 +5773,64 @@ test -z "$AR_FLAGS" && AR_FLAGS=cru
+
+
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for archiver @FILE support" >&5
+$as_echo_n "checking for archiver @FILE support... " >&6; }
-+if test "${lt_cv_ar_at_file+set}" = set; then :
++if ${lt_cv_ar_at_file+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ lt_cv_ar_at_file=no
@@ -19678,7 +19769,7 @@ index dc2d9ed383..ed9a492f5c 100755
+int
+main ()
+{
-
++
+ ;
+ return 0;
+}
@@ -19704,23 +19795,30 @@ index dc2d9ed383..ed9a492f5c 100755
+ fi
+ fi
+ rm -f conftest.* libconftest.a
-
++
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
++
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ar_at_file" >&5
+$as_echo "$lt_cv_ar_at_file" >&6; }
-
++
+if test "x$lt_cv_ar_at_file" = xno; then
+ archiver_list_spec=
+else
+ archiver_list_spec=$lt_cv_ar_at_file
+fi
-
-
-
-@@ -5609,8 +5928,8 @@ esac
++
++
++
++
++
++
++
+ if test -n "$ac_tool_prefix"; then
+ # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
+ set dummy ${ac_tool_prefix}strip; ac_word=$2
+@@ -5846,8 +6165,8 @@ esac
lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
# Transform an extracted symbol line into symbol name and symbol address
@@ -19731,7 +19829,7 @@ index dc2d9ed383..ed9a492f5c 100755
# Handle CRLF in mingw tool chain
opt_cr=
-@@ -5646,6 +5965,7 @@ for ac_symprfx in "" "_"; do
+@@ -5883,6 +6202,7 @@ for ac_symprfx in "" "_"; do
else
lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[ ]\($symcode$symcode*\)[ ][ ]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
fi
@@ -19739,7 +19837,7 @@ index dc2d9ed383..ed9a492f5c 100755
# Check to see that the pipe works correctly.
pipe_works=no
-@@ -5687,6 +6007,18 @@ _LT_EOF
+@@ -5924,6 +6244,18 @@ _LT_EOF
if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
cat <<_LT_EOF > conftest.$ac_ext
@@ -19758,7 +19856,7 @@ index dc2d9ed383..ed9a492f5c 100755
#ifdef __cplusplus
extern "C" {
#endif
-@@ -5698,7 +6030,7 @@ _LT_EOF
+@@ -5935,7 +6267,7 @@ _LT_EOF
cat <<_LT_EOF >> conftest.$ac_ext
/* The mapping between symbol names and symbols. */
@@ -19767,7 +19865,7 @@ index dc2d9ed383..ed9a492f5c 100755
const char *name;
void *address;
}
-@@ -5724,8 +6056,8 @@ static const void *lt_preloaded_setup() {
+@@ -5961,8 +6293,8 @@ static const void *lt_preloaded_setup()
_LT_EOF
# Now try linking the two files.
mv conftest.$ac_objext conftstm.$ac_objext
@@ -19778,7 +19876,7 @@ index dc2d9ed383..ed9a492f5c 100755
LIBS="conftstm.$ac_objext"
CFLAGS="$CFLAGS$lt_prog_compiler_no_builtin_flag"
if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5
-@@ -5735,8 +6067,8 @@ _LT_EOF
+@@ -5972,8 +6304,8 @@ _LT_EOF
test $ac_status = 0; } && test -s conftest${ac_exeext}; then
pipe_works=yes
fi
@@ -19789,7 +19887,7 @@ index dc2d9ed383..ed9a492f5c 100755
else
echo "cannot find nm_test_func in $nlist" >&5
fi
-@@ -5773,6 +6105,19 @@ else
+@@ -6010,6 +6342,18 @@ else
$as_echo "ok" >&6; }
fi
@@ -19805,17 +19903,13 @@ index dc2d9ed383..ed9a492f5c 100755
+
+
+
-+
-@@ -5790,6 +6135,41 @@ fi
+@@ -6031,6 +6375,42 @@ fi
-+
-+
-+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sysroot" >&5
+$as_echo_n "checking for sysroot... " >&6; }
+
@@ -19842,16 +19936,20 @@ index dc2d9ed383..ed9a492f5c 100755
+ *)
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${with_libtool_sysroot}" >&5
+$as_echo "${with_libtool_sysroot}" >&6; }
-+ as_fn_error "The sysroot must be an absolute path." "$LINENO" 5
++ as_fn_error $? "The sysroot must be an absolute path." "$LINENO" 5
+ ;;
+esac
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${lt_sysroot:-no}" >&5
+$as_echo "${lt_sysroot:-no}" >&6; }
++
++
++
++
-
-
-@@ -6004,6 +6384,123 @@ esac
+ # Check whether --enable-libtool-lock was given.
+ if test "${enable_libtool_lock+set}" = set; then :
+@@ -6241,6 +6621,123 @@ esac
need_locks="$enable_libtool_lock"
@@ -19860,7 +19958,7 @@ index dc2d9ed383..ed9a492f5c 100755
+set dummy ${ac_tool_prefix}mt; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
-+if test "${ac_cv_prog_MANIFEST_TOOL+set}" = set; then :
++if ${ac_cv_prog_MANIFEST_TOOL+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$MANIFEST_TOOL"; then
@@ -19872,7 +19970,7 @@ index dc2d9ed383..ed9a492f5c 100755
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
-+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
++ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_prog_MANIFEST_TOOL="${ac_tool_prefix}mt"
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
@@ -19900,7 +19998,7 @@ index dc2d9ed383..ed9a492f5c 100755
+set dummy mt; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
-+if test "${ac_cv_prog_ac_ct_MANIFEST_TOOL+set}" = set; then :
++if ${ac_cv_prog_ac_ct_MANIFEST_TOOL+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$ac_ct_MANIFEST_TOOL"; then
@@ -19912,7 +20010,7 @@ index dc2d9ed383..ed9a492f5c 100755
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
-+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
++ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_prog_ac_ct_MANIFEST_TOOL="mt"
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
@@ -19950,7 +20048,7 @@ index dc2d9ed383..ed9a492f5c 100755
+test -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $MANIFEST_TOOL is a manifest tool" >&5
+$as_echo_n "checking if $MANIFEST_TOOL is a manifest tool... " >&6; }
-+if test "${lt_cv_path_mainfest_tool+set}" = set; then :
++if ${lt_cv_path_mainfest_tool+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ lt_cv_path_mainfest_tool=no
@@ -19975,7 +20073,7 @@ index dc2d9ed383..ed9a492f5c 100755
case $host_os in
rhapsody* | darwin*)
-@@ -6570,6 +7067,8 @@ _LT_EOF
+@@ -6807,6 +7304,8 @@ _LT_EOF
$LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&5
echo "$AR cru libconftest.a conftest.o" >&5
$AR cru libconftest.a conftest.o 2>&5
@@ -19984,7 +20082,7 @@ index dc2d9ed383..ed9a492f5c 100755
cat > conftest.c << _LT_EOF
int main() { return 0;}
_LT_EOF
-@@ -7033,7 +7532,8 @@ fi
+@@ -7269,7 +7768,8 @@ fi
LIBTOOL_DEPS="$ltmain"
# Always use our own libtool.
@@ -19994,7 +20092,7 @@ index dc2d9ed383..ed9a492f5c 100755
-@@ -7122,7 +7622,7 @@ aix3*)
+@@ -7358,7 +7858,7 @@ aix3*)
esac
# Global variables:
@@ -20003,7 +20101,7 @@ index dc2d9ed383..ed9a492f5c 100755
can_build_shared=yes
# All known linkers require a `.a' archive for static linking (except MSVC,
-@@ -7420,8 +7920,6 @@ fi
+@@ -7656,8 +8156,6 @@ fi
lt_prog_compiler_pic=
lt_prog_compiler_static=
@@ -20012,7 +20110,7 @@ index dc2d9ed383..ed9a492f5c 100755
if test "$GCC" = yes; then
lt_prog_compiler_wl='-Wl,'
-@@ -7587,6 +8085,12 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
+@@ -7823,6 +8321,12 @@ $as_echo_n "checking for $compiler optio
lt_prog_compiler_pic='--shared'
lt_prog_compiler_static='--static'
;;
@@ -20025,7 +20123,7 @@ index dc2d9ed383..ed9a492f5c 100755
pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*)
# Portland Group compilers (*not* the Pentium gcc compiler,
# which looks to be a dead project)
-@@ -7649,7 +8153,7 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
+@@ -7885,7 +8389,7 @@ $as_echo_n "checking for $compiler optio
lt_prog_compiler_pic='-KPIC'
lt_prog_compiler_static='-Bstatic'
case $cc_basename in
@@ -20034,7 +20132,7 @@ index dc2d9ed383..ed9a492f5c 100755
lt_prog_compiler_wl='-Qoption ld ';;
*)
lt_prog_compiler_wl='-Wl,';;
-@@ -7706,13 +8210,17 @@ case $host_os in
+@@ -7942,13 +8446,17 @@ case $host_os in
lt_prog_compiler_pic="$lt_prog_compiler_pic -DPIC"
;;
esac
@@ -20047,7 +20145,7 @@ index dc2d9ed383..ed9a492f5c 100755
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5
+$as_echo_n "checking for $compiler option to produce PIC... " >&6; }
-+if test "${lt_cv_prog_compiler_pic+set}" = set; then :
++if ${lt_cv_prog_compiler_pic+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ lt_cv_prog_compiler_pic=$lt_prog_compiler_pic
@@ -20058,7 +20156,7 @@ index dc2d9ed383..ed9a492f5c 100755
#
# Check to make sure the PIC flag actually works.
-@@ -7773,6 +8281,11 @@ fi
+@@ -8009,6 +8517,11 @@ fi
@@ -20070,7 +20168,7 @@ index dc2d9ed383..ed9a492f5c 100755
#
# Check to make sure the static flag actually works.
#
-@@ -8123,7 +8636,8 @@ _LT_EOF
+@@ -8359,7 +8872,8 @@ _LT_EOF
allow_undefined_flag=unsupported
always_export_symbols=no
enable_shared_with_static_runtimes=yes
@@ -20080,7 +20178,7 @@ index dc2d9ed383..ed9a492f5c 100755
if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
-@@ -8222,12 +8736,12 @@ _LT_EOF
+@@ -8458,12 +8972,12 @@ _LT_EOF
whole_archive_flag_spec='--whole-archive$convenience --no-whole-archive'
hardcode_libdir_flag_spec=
hardcode_libdir_flag_spec_ld='-rpath $libdir'
@@ -20095,7 +20193,7 @@ index dc2d9ed383..ed9a492f5c 100755
fi
;;
esac
-@@ -8241,8 +8755,8 @@ _LT_EOF
+@@ -8477,8 +8991,8 @@ _LT_EOF
archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
wlarc=
else
@@ -20106,7 +20204,7 @@ index dc2d9ed383..ed9a492f5c 100755
fi
;;
-@@ -8260,8 +8774,8 @@ _LT_EOF
+@@ -8496,8 +9010,8 @@ _LT_EOF
_LT_EOF
elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
@@ -20117,7 +20215,7 @@ index dc2d9ed383..ed9a492f5c 100755
else
ld_shlibs=no
fi
-@@ -8307,8 +8821,8 @@ _LT_EOF
+@@ -8543,8 +9057,8 @@ _LT_EOF
*)
if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
@@ -20128,7 +20226,7 @@ index dc2d9ed383..ed9a492f5c 100755
else
ld_shlibs=no
fi
-@@ -8438,7 +8952,13 @@ _LT_EOF
+@@ -8674,7 +9188,13 @@ _LT_EOF
allow_undefined_flag='-berok'
# Determine the default libpath from the value encoded in an
# empty executable.
@@ -20136,14 +20234,14 @@ index dc2d9ed383..ed9a492f5c 100755
+ if test "${lt_cv_aix_libpath+set}" = set; then
+ aix_libpath=$lt_cv_aix_libpath
+else
-+ if test "${lt_cv_aix_libpath_+set}" = set; then :
++ if ${lt_cv_aix_libpath_+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test x$gcc_no_link = xyes; then
- as_fn_error "Link tests are not allowed after GCC_NO_EXECUTABLES." "$LINENO" 5
+ as_fn_error $? "Link tests are not allowed after GCC_NO_EXECUTABLES." "$LINENO" 5
fi
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-@@ -8454,22 +8974,29 @@ main ()
+@@ -8690,22 +9210,29 @@ main ()
_ACEOF
if ac_fn_c_try_link "$LINENO"; then :
@@ -20186,7 +20284,7 @@ index dc2d9ed383..ed9a492f5c 100755
hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
archive_expsym_cmds='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
-@@ -8481,7 +9008,13 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -8717,7 +9244,13 @@ if test -z "$aix_libpath"; then aix_libp
else
# Determine the default libpath from the value encoded in an
# empty executable.
@@ -20194,14 +20292,14 @@ index dc2d9ed383..ed9a492f5c 100755
+ if test "${lt_cv_aix_libpath+set}" = set; then
+ aix_libpath=$lt_cv_aix_libpath
+else
-+ if test "${lt_cv_aix_libpath_+set}" = set; then :
++ if ${lt_cv_aix_libpath_+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test x$gcc_no_link = xyes; then
- as_fn_error "Link tests are not allowed after GCC_NO_EXECUTABLES." "$LINENO" 5
+ as_fn_error $? "Link tests are not allowed after GCC_NO_EXECUTABLES." "$LINENO" 5
fi
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-@@ -8497,22 +9030,29 @@ main ()
+@@ -8733,22 +9266,29 @@ main ()
_ACEOF
if ac_fn_c_try_link "$LINENO"; then :
@@ -20244,7 +20342,7 @@ index dc2d9ed383..ed9a492f5c 100755
hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
# Warning - without using the other run time loading flags,
-@@ -8557,20 +9097,63 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -8793,20 +9333,63 @@ if test -z "$aix_libpath"; then aix_libp
# Microsoft Visual C++.
# hardcode_libdir_flag_spec is actually meaningless, as there is
# no search path for DLLs.
@@ -20322,7 +20420,7 @@ index dc2d9ed383..ed9a492f5c 100755
;;
darwin* | rhapsody*)
-@@ -8631,7 +9214,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -8867,7 +9450,7 @@ if test -z "$aix_libpath"; then aix_libp
# FreeBSD 3 and greater uses gcc -shared to do shared libraries.
freebsd* | dragonfly*)
@@ -20331,7 +20429,7 @@ index dc2d9ed383..ed9a492f5c 100755
hardcode_libdir_flag_spec='-R$libdir'
hardcode_direct=yes
hardcode_shlibpath_var=no
-@@ -8639,7 +9222,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -8875,7 +9458,7 @@ if test -z "$aix_libpath"; then aix_libp
hpux9*)
if test "$GCC" = yes; then
@@ -20340,7 +20438,7 @@ index dc2d9ed383..ed9a492f5c 100755
else
archive_cmds='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
fi
-@@ -8655,7 +9238,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -8891,7 +9474,7 @@ if test -z "$aix_libpath"; then aix_libp
hpux10*)
if test "$GCC" = yes && test "$with_gnu_ld" = no; then
@@ -20349,7 +20447,7 @@ index dc2d9ed383..ed9a492f5c 100755
else
archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
fi
-@@ -8679,10 +9262,10 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -8915,10 +9498,10 @@ if test -z "$aix_libpath"; then aix_libp
archive_cmds='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
;;
ia64*)
@@ -20362,7 +20460,7 @@ index dc2d9ed383..ed9a492f5c 100755
;;
esac
else
-@@ -8761,26 +9344,39 @@ fi
+@@ -8997,26 +9580,39 @@ fi
irix5* | irix6* | nonstopux*)
if test "$GCC" = yes; then
@@ -20377,13 +20475,13 @@ index dc2d9ed383..ed9a492f5c 100755
+ # This should be the same for all languages, so no per-tag cache variable.
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $host_os linker accepts -exported_symbol" >&5
+$as_echo_n "checking whether the $host_os linker accepts -exported_symbol... " >&6; }
-+if test "${lt_cv_irix_exported_symbol+set}" = set; then :
++if ${lt_cv_irix_exported_symbol+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ save_LDFLAGS="$LDFLAGS"
+ LDFLAGS="$LDFLAGS -shared ${wl}-exported_symbol ${wl}foo ${wl}-update_registry ${wl}/dev/null"
+ if test x$gcc_no_link = xyes; then
- as_fn_error "Link tests are not allowed after GCC_NO_EXECUTABLES." "$LINENO" 5
+ as_fn_error $? "Link tests are not allowed after GCC_NO_EXECUTABLES." "$LINENO" 5
fi
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
@@ -20410,7 +20508,7 @@ index dc2d9ed383..ed9a492f5c 100755
else
archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -exports_file $export_symbols -o $lib'
-@@ -8865,7 +9461,7 @@ rm -f core conftest.err conftest.$ac_objext \
+@@ -9101,7 +9697,7 @@ rm -f core conftest.err conftest.$ac_obj
osf4* | osf5*) # as osf3* with the addition of -msym flag
if test "$GCC" = yes; then
allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
@@ -20419,7 +20517,7 @@ index dc2d9ed383..ed9a492f5c 100755
hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
else
allow_undefined_flag=' -expect_unresolved \*'
-@@ -8884,9 +9480,9 @@ rm -f core conftest.err conftest.$ac_objext \
+@@ -9120,9 +9716,9 @@ rm -f core conftest.err conftest.$ac_obj
no_undefined_flag=' -z defs'
if test "$GCC" = yes; then
wlarc='${wl}'
@@ -20431,7 +20529,7 @@ index dc2d9ed383..ed9a492f5c 100755
else
case `$CC -V 2>&1` in
*"Compilers 5.0"*)
-@@ -9462,8 +10058,9 @@ cygwin* | mingw* | pw32* | cegcc*)
+@@ -9698,8 +10294,9 @@ cygwin* | mingw* | pw32* | cegcc*)
need_version=no
need_lib_prefix=no
@@ -20443,7 +20541,7 @@ index dc2d9ed383..ed9a492f5c 100755
library_names_spec='$libname.dll.a'
# DLL is installed to $(libdir)/../bin by postinstall_cmds
postinstall_cmds='base_file=`basename \${file}`~
-@@ -9496,13 +10093,71 @@ cygwin* | mingw* | pw32* | cegcc*)
+@@ -9732,13 +10329,71 @@ cygwin* | mingw* | pw32* | cegcc*)
library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
;;
esac
@@ -20516,7 +20614,7 @@ index dc2d9ed383..ed9a492f5c 100755
# FIXME: first we should search . and the directory the executable is in
shlibpath_var=PATH
;;
-@@ -9594,7 +10249,7 @@ haiku*)
+@@ -9830,7 +10485,7 @@ haiku*)
soname_spec='${libname}${release}${shared_ext}$major'
shlibpath_var=LIBRARY_PATH
shlibpath_overrides_runpath=yes
@@ -20525,7 +20623,16 @@ index dc2d9ed383..ed9a492f5c 100755
hardcode_into_libs=yes
;;
-@@ -10452,10 +11107,10 @@ else
+@@ -10644,7 +11299,7 @@ else
+ lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
+ lt_status=$lt_dlunknown
+ cat > conftest.$ac_ext <<_LT_EOF
+-#line 10647 "configure"
++#line $LINENO "configure"
+ #include "confdefs.h"
+
+ #if HAVE_DLFCN_H
+@@ -10688,10 +11343,10 @@ else
/* When -fvisbility=hidden is used, assume the code has been annotated
correspondingly for the symbols needed. */
#if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
@@ -20538,7 +20645,16 @@ index dc2d9ed383..ed9a492f5c 100755
int main ()
{
void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
-@@ -10558,10 +11213,10 @@ else
+@@ -10750,7 +11405,7 @@ else
+ lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
+ lt_status=$lt_dlunknown
+ cat > conftest.$ac_ext <<_LT_EOF
+-#line 10753 "configure"
++#line $LINENO "configure"
+ #include "confdefs.h"
+
+ #if HAVE_DLFCN_H
+@@ -10794,10 +11449,10 @@ else
/* When -fvisbility=hidden is used, assume the code has been annotated
correspondingly for the symbols needed. */
#if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
@@ -20551,7 +20667,7 @@ index dc2d9ed383..ed9a492f5c 100755
int main ()
{
void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
-@@ -11992,13 +12647,20 @@ exeext='`$ECHO "$exeext" | $SED "$delay_single_quote_subst"`'
+@@ -12266,13 +12921,20 @@ exeext='`$ECHO "$exeext" | $SED "$delay_
lt_unset='`$ECHO "$lt_unset" | $SED "$delay_single_quote_subst"`'
lt_SP2NL='`$ECHO "$lt_SP2NL" | $SED "$delay_single_quote_subst"`'
lt_NL2SP='`$ECHO "$lt_NL2SP" | $SED "$delay_single_quote_subst"`'
@@ -20572,7 +20688,7 @@ index dc2d9ed383..ed9a492f5c 100755
STRIP='`$ECHO "$STRIP" | $SED "$delay_single_quote_subst"`'
RANLIB='`$ECHO "$RANLIB" | $SED "$delay_single_quote_subst"`'
old_postinstall_cmds='`$ECHO "$old_postinstall_cmds" | $SED "$delay_single_quote_subst"`'
-@@ -12013,14 +12675,17 @@ lt_cv_sys_global_symbol_pipe='`$ECHO "$lt_cv_sys_global_symbol_pipe" | $SED "$de
+@@ -12287,14 +12949,17 @@ lt_cv_sys_global_symbol_pipe='`$ECHO "$l
lt_cv_sys_global_symbol_to_cdecl='`$ECHO "$lt_cv_sys_global_symbol_to_cdecl" | $SED "$delay_single_quote_subst"`'
lt_cv_sys_global_symbol_to_c_name_address='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address" | $SED "$delay_single_quote_subst"`'
lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address_lib_prefix" | $SED "$delay_single_quote_subst"`'
@@ -20591,7 +20707,7 @@ index dc2d9ed383..ed9a492f5c 100755
DSYMUTIL='`$ECHO "$DSYMUTIL" | $SED "$delay_single_quote_subst"`'
NMEDIT='`$ECHO "$NMEDIT" | $SED "$delay_single_quote_subst"`'
LIPO='`$ECHO "$LIPO" | $SED "$delay_single_quote_subst"`'
-@@ -12053,12 +12718,12 @@ hardcode_shlibpath_var='`$ECHO "$hardcode_shlibpath_var" | $SED "$delay_single_q
+@@ -12327,12 +12992,12 @@ hardcode_shlibpath_var='`$ECHO "$hardcod
hardcode_automatic='`$ECHO "$hardcode_automatic" | $SED "$delay_single_quote_subst"`'
inherit_rpath='`$ECHO "$inherit_rpath" | $SED "$delay_single_quote_subst"`'
link_all_deplibs='`$ECHO "$link_all_deplibs" | $SED "$delay_single_quote_subst"`'
@@ -20605,7 +20721,7 @@ index dc2d9ed383..ed9a492f5c 100755
file_list_spec='`$ECHO "$file_list_spec" | $SED "$delay_single_quote_subst"`'
variables_saved_for_relink='`$ECHO "$variables_saved_for_relink" | $SED "$delay_single_quote_subst"`'
need_lib_prefix='`$ECHO "$need_lib_prefix" | $SED "$delay_single_quote_subst"`'
-@@ -12113,8 +12778,13 @@ reload_flag \
+@@ -12387,8 +13052,13 @@ reload_flag \
OBJDUMP \
deplibs_check_method \
file_magic_cmd \
@@ -20619,7 +20735,7 @@ index dc2d9ed383..ed9a492f5c 100755
STRIP \
RANLIB \
CC \
-@@ -12124,12 +12794,14 @@ lt_cv_sys_global_symbol_pipe \
+@@ -12398,12 +13068,14 @@ lt_cv_sys_global_symbol_pipe \
lt_cv_sys_global_symbol_to_cdecl \
lt_cv_sys_global_symbol_to_c_name_address \
lt_cv_sys_global_symbol_to_c_name_address_lib_prefix \
@@ -20635,7 +20751,7 @@ index dc2d9ed383..ed9a492f5c 100755
DSYMUTIL \
NMEDIT \
LIPO \
-@@ -12145,7 +12817,6 @@ no_undefined_flag \
+@@ -12419,7 +13091,6 @@ no_undefined_flag \
hardcode_libdir_flag_spec \
hardcode_libdir_flag_spec_ld \
hardcode_libdir_separator \
@@ -20643,7 +20759,7 @@ index dc2d9ed383..ed9a492f5c 100755
exclude_expsyms \
include_expsyms \
file_list_spec \
-@@ -12181,6 +12852,7 @@ module_cmds \
+@@ -12455,6 +13126,7 @@ module_cmds \
module_expsym_cmds \
export_symbols_cmds \
prelink_cmds \
@@ -20651,7 +20767,7 @@ index dc2d9ed383..ed9a492f5c 100755
postinstall_cmds \
postuninstall_cmds \
finish_cmds \
-@@ -12770,7 +13442,8 @@ $as_echo X"$file" |
+@@ -13053,7 +13725,8 @@ $as_echo X"$file" |
# NOTE: Changes made to this file will be lost: look at ltmain.sh.
#
# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
@@ -20661,7 +20777,7 @@ index dc2d9ed383..ed9a492f5c 100755
# Written by Gordon Matzigkeit, 1996
#
# This file is part of GNU Libtool.
-@@ -12873,19 +13546,42 @@ SP2NL=$lt_lt_SP2NL
+@@ -13156,19 +13829,42 @@ SP2NL=$lt_lt_SP2NL
# turn newlines into spaces.
NL2SP=$lt_lt_NL2SP
@@ -20705,7 +20821,7 @@ index dc2d9ed383..ed9a492f5c 100755
# A symbol stripping program.
STRIP=$lt_STRIP
-@@ -12915,6 +13611,12 @@ global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address
+@@ -13198,6 +13894,12 @@ global_symbol_to_c_name_address=$lt_lt_c
# Transform the output of nm in a C name address pair when lib prefix is needed.
global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix
@@ -20718,7 +20834,7 @@ index dc2d9ed383..ed9a492f5c 100755
# The name of the directory that contains temporary libtool files.
objdir=$objdir
-@@ -12924,6 +13626,9 @@ MAGIC_CMD=$MAGIC_CMD
+@@ -13207,6 +13909,9 @@ MAGIC_CMD=$MAGIC_CMD
# Must we lock files when doing compilation?
need_locks=$lt_need_locks
@@ -20728,7 +20844,7 @@ index dc2d9ed383..ed9a492f5c 100755
# Tool to manipulate archived DWARF debug symbol files on Mac OS X.
DSYMUTIL=$lt_DSYMUTIL
-@@ -13038,12 +13743,12 @@ with_gcc=$GCC
+@@ -13321,12 +14026,12 @@ with_gcc=$GCC
# Compiler flag to turn off builtin functions.
no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag
@@ -20744,7 +20860,7 @@ index dc2d9ed383..ed9a492f5c 100755
# Compiler flag to prevent dynamic linking.
link_static_flag=$lt_lt_prog_compiler_static
-@@ -13130,9 +13835,6 @@ inherit_rpath=$inherit_rpath
+@@ -13413,9 +14118,6 @@ inherit_rpath=$inherit_rpath
# Whether libtool must link a program against all its dependency libraries.
link_all_deplibs=$link_all_deplibs
@@ -20754,7 +20870,7 @@ index dc2d9ed383..ed9a492f5c 100755
# Set to "yes" if exported symbols are required.
always_export_symbols=$always_export_symbols
-@@ -13148,6 +13850,9 @@ include_expsyms=$lt_include_expsyms
+@@ -13431,6 +14133,9 @@ include_expsyms=$lt_include_expsyms
# Commands necessary for linking programs (against libraries) with templates.
prelink_cmds=$lt_prelink_cmds
@@ -20764,7 +20880,7 @@ index dc2d9ed383..ed9a492f5c 100755
# Specify filename containing input files.
file_list_spec=$lt_file_list_spec
-@@ -13180,210 +13885,169 @@ ltmain="$ac_aux_dir/ltmain.sh"
+@@ -13463,210 +14168,169 @@ ltmain="$ac_aux_dir/ltmain.sh"
# if finds mixed CR/LF and LF-only lines. Since sed operates in
# text mode, it properly converts lines to CR/LF. This bash problem
# is reportedly fixed, but why not run on old versions too?
@@ -20966,15 +21082,9 @@ index dc2d9ed383..ed9a492f5c 100755
-_LT_EOF
- ;;
- esac
--
--
-- sed -n '/^# Generated shell functions inserted here/,$p' "$ltmain" >> "$cfgfile" \
-- || (rm -f "$cfgfile"; exit 1)
--
-- mv -f "$cfgfile" "$ofile" ||
+ sed '$q' "$ltmain" >> "$cfgfile" \
+ || (rm -f "$cfgfile"; exit 1)
-+
+
+ if test x"$xsi_shell" = xyes; then
+ sed -e '/^func_dirname ()$/,/^} # func_dirname /c\
+func_dirname ()\
@@ -21132,12 +21242,12 @@ index dc2d9ed383..ed9a492f5c 100755
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Unable to substitute extended shell functions in $ofile" >&5
+$as_echo "$as_me: WARNING: Unable to substitute extended shell functions in $ofile" >&2;}
+fi
-+
-+
+
+- sed -n '/^# Generated shell functions inserted here/,$p' "$ltmain" >> "$cfgfile" \
+- || (rm -f "$cfgfile"; exit 1)
+
+- mv -f "$cfgfile" "$ofile" ||
+ mv -f "$cfgfile" "$ofile" ||
(rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
chmod +x "$ofile"
---
-2.16.1
-
diff --git a/poky/meta/recipes-devtools/binutils/binutils/0007-Add-the-armv5e-architecture-to-binutils.patch b/poky/meta/recipes-devtools/binutils/binutils/0007-Add-the-armv5e-architecture-to-binutils.patch
index 4a5127380..18ef6bb7f 100644
--- a/poky/meta/recipes-devtools/binutils/binutils/0007-Add-the-armv5e-architecture-to-binutils.patch
+++ b/poky/meta/recipes-devtools/binutils/binutils/0007-Add-the-armv5e-architecture-to-binutils.patch
@@ -1,4 +1,4 @@
-From 697903256e09533778baa8af66402c44d70219d9 Mon Sep 17 00:00:00 2001
+From ef50d848d983f81e4a86dd3eef4933e3579336f1 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Mon, 2 Mar 2015 01:37:10 +0000
Subject: [PATCH 07/15] Add the armv5e architecture to binutils
@@ -19,10 +19,10 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
1 file changed, 1 insertion(+)
diff --git a/gas/config/tc-arm.c b/gas/config/tc-arm.c
-index ec50420518..a25d1721af 100644
+index 3f5384e1c7..8d5bc145af 100644
--- a/gas/config/tc-arm.c
+++ b/gas/config/tc-arm.c
-@@ -26195,6 +26195,7 @@ static const struct arm_arch_option_table arm_archs[] =
+@@ -26294,6 +26294,7 @@ static const struct arm_arch_option_table arm_archs[] =
ARM_ARCH_OPT ("armv4t", ARM_ARCH_V4T, FPU_ARCH_FPA),
ARM_ARCH_OPT ("armv4txm", ARM_ARCH_V4TxM, FPU_ARCH_FPA),
ARM_ARCH_OPT ("armv5", ARM_ARCH_V5, FPU_ARCH_VFP),
@@ -31,5 +31,5 @@ index ec50420518..a25d1721af 100644
ARM_ARCH_OPT ("armv5txm", ARM_ARCH_V5TxM, FPU_ARCH_VFP),
ARM_ARCH_OPT ("armv5te", ARM_ARCH_V5TE, FPU_ARCH_VFP),
--
-2.16.1
+2.18.0
diff --git a/poky/meta/recipes-devtools/binutils/binutils/0008-don-t-let-the-distro-compiler-point-to-the-wrong-ins.patch b/poky/meta/recipes-devtools/binutils/binutils/0008-don-t-let-the-distro-compiler-point-to-the-wrong-ins.patch
index 939be67b5..6999ed9c9 100644
--- a/poky/meta/recipes-devtools/binutils/binutils/0008-don-t-let-the-distro-compiler-point-to-the-wrong-ins.patch
+++ b/poky/meta/recipes-devtools/binutils/binutils/0008-don-t-let-the-distro-compiler-point-to-the-wrong-ins.patch
@@ -1,4 +1,4 @@
-From 622d66634eb2e509d4126f5bdcab26de367241a1 Mon Sep 17 00:00:00 2001
+From ca25d55cef8398bad508c2b2be29aea5aa3c4d26 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Mon, 2 Mar 2015 01:39:01 +0000
Subject: [PATCH 08/15] don't let the distro compiler point to the wrong
@@ -31,5 +31,5 @@ index ed1b334c36..d4ffd8b57b 100644
if test -n "${target_header_dir}"; then \
${mkinstalldirs} $(DESTDIR)$(libdir)/$(MULTIOSDIR); \
--
-2.16.1
+2.18.0
diff --git a/poky/meta/recipes-devtools/binutils/binutils/0009-warn-for-uses-of-system-directories-when-cross-linki.patch b/poky/meta/recipes-devtools/binutils/binutils/0009-warn-for-uses-of-system-directories-when-cross-linki.patch
index e75104722..9a9e31962 100644
--- a/poky/meta/recipes-devtools/binutils/binutils/0009-warn-for-uses-of-system-directories-when-cross-linki.patch
+++ b/poky/meta/recipes-devtools/binutils/binutils/0009-warn-for-uses-of-system-directories-when-cross-linki.patch
@@ -1,4 +1,4 @@
-From 27e38ee92c24fca86b1c3f6ef156a1892dd06bfd Mon Sep 17 00:00:00 2001
+From a3667059fc0d52d890b505bed0e5050ea3d7002e Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Fri, 15 Jan 2016 06:31:09 +0000
Subject: [PATCH 09/15] warn for uses of system directories when cross linking
@@ -55,7 +55,7 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
ld/configure | 16 ++++++++++++++++
ld/configure.ac | 10 ++++++++++
ld/ld.h | 8 ++++++++
- ld/ld.texinfo | 12 ++++++++++++
+ ld/ld.texi | 12 ++++++++++++
ld/ldfile.c | 17 +++++++++++++++++
ld/ldlex.h | 2 ++
ld/ldmain.c | 2 ++
@@ -63,10 +63,10 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
9 files changed, 86 insertions(+)
diff --git a/ld/config.in b/ld/config.in
-index a846743da6..df3cd5fb60 100644
+index d93c9b0830..5da2742bea 100644
--- a/ld/config.in
+++ b/ld/config.in
-@@ -27,6 +27,9 @@
+@@ -31,6 +31,9 @@
language is requested. */
#undef ENABLE_NLS
@@ -77,10 +77,10 @@ index a846743da6..df3cd5fb60 100644
#undef EXTRA_SHLIB_EXTENSION
diff --git a/ld/configure b/ld/configure
-index db8b998722..489ead5c13 100755
+index 2b291f0da8..facc386563 100755
--- a/ld/configure
+++ b/ld/configure
-@@ -789,6 +789,7 @@ with_lib_path
+@@ -826,6 +826,7 @@ with_lib_path
enable_targets
enable_64_bit_bfd
with_sysroot
@@ -88,7 +88,7 @@ index db8b998722..489ead5c13 100755
enable_gold
enable_got
enable_compressed_debug_sections
-@@ -1448,6 +1449,8 @@ Optional Features:
+@@ -1490,6 +1491,8 @@ Optional Features:
--disable-largefile omit support for large files
--enable-targets alternative target configurations
--enable-64-bit-bfd 64-bit support (on hosts with narrower word sizes)
@@ -97,7 +97,7 @@ index db8b998722..489ead5c13 100755
--enable-gold[=ARG] build gold [ARG={default,yes,no}]
--enable-got=<type> GOT handling scheme (target, single, negative,
multigot)
-@@ -16315,6 +16318,19 @@ fi
+@@ -16618,6 +16621,19 @@ fi
@@ -118,10 +118,10 @@ index db8b998722..489ead5c13 100755
if test "${enable_gold+set}" = set; then :
enableval=$enable_gold; case "${enableval}" in
diff --git a/ld/configure.ac b/ld/configure.ac
-index bada1b50b0..d074a3820b 100644
+index d10c553650..9f1b57b120 100644
--- a/ld/configure.ac
+++ b/ld/configure.ac
-@@ -95,6 +95,16 @@ AC_SUBST(use_sysroot)
+@@ -94,6 +94,16 @@ AC_SUBST(use_sysroot)
AC_SUBST(TARGET_SYSTEM_ROOT)
AC_SUBST(TARGET_SYSTEM_ROOT_DEFINE)
@@ -157,11 +157,11 @@ index ba914b921e..9df17dab6c 100644
/* Big or little endian as set on command line. */
enum endian_enum endian;
-diff --git a/ld/ld.texinfo b/ld/ld.texinfo
-index c89915f1aa..df430837e2 100644
---- a/ld/ld.texinfo
-+++ b/ld/ld.texinfo
-@@ -2498,6 +2498,18 @@ string identifying the original linked file does not change.
+diff --git a/ld/ld.texi b/ld/ld.texi
+index b9fe2324da..43486605e0 100644
+--- a/ld/ld.texi
++++ b/ld/ld.texi
+@@ -2479,6 +2479,18 @@ string identifying the original linked file does not change.
Passing @code{none} for @var{style} disables the setting from any
@code{--build-id} options earlier on the command line.
@@ -181,7 +181,7 @@ index c89915f1aa..df430837e2 100644
@c man end
diff --git a/ld/ldfile.c b/ld/ldfile.c
-index 6532a57d96..f943f0b2e5 100644
+index a72ff13526..dc5148f748 100644
--- a/ld/ldfile.c
+++ b/ld/ldfile.c
@@ -116,6 +116,23 @@ ldfile_add_library_path (const char *name, bfd_boolean cmdline)
@@ -209,10 +209,10 @@ index 6532a57d96..f943f0b2e5 100644
/* Try to open a BFD for a lang_input_statement. */
diff --git a/ld/ldlex.h b/ld/ldlex.h
-index 140ed1d9da..9965cbc04f 100644
+index 04d6fd5f96..d7df005bb2 100644
--- a/ld/ldlex.h
+++ b/ld/ldlex.h
-@@ -147,6 +147,8 @@ enum option_values
+@@ -148,6 +148,8 @@ enum option_values
OPTION_REQUIRE_DEFINED_SYMBOL,
OPTION_ORPHAN_HANDLING,
OPTION_FORCE_GROUP_ALLOCATION,
@@ -222,10 +222,10 @@ index 140ed1d9da..9965cbc04f 100644
/* The initial parser states. */
diff --git a/ld/ldmain.c b/ld/ldmain.c
-index c473ed24c3..adae0b4610 100644
+index f31eeb29c3..25f8497888 100644
--- a/ld/ldmain.c
+++ b/ld/ldmain.c
-@@ -261,6 +261,8 @@ main (int argc, char **argv)
+@@ -268,6 +268,8 @@ main (int argc, char **argv)
command_line.warn_mismatch = TRUE;
command_line.warn_search_mismatch = TRUE;
command_line.check_section_addresses = -1;
@@ -235,10 +235,10 @@ index c473ed24c3..adae0b4610 100644
/* We initialize DEMANGLING based on the environment variable
COLLECT_NO_DEMANGLE. The gcc collect2 program will demangle the
diff --git a/ld/lexsup.c b/ld/lexsup.c
-index f2191602d4..bccb3bdeef 100644
+index 86a033a383..4a40d48020 100644
--- a/ld/lexsup.c
+++ b/ld/lexsup.c
-@@ -538,6 +538,14 @@ static const struct ld_option ld_options[] =
+@@ -543,6 +543,14 @@ static const struct ld_option ld_options[] =
{ {"orphan-handling", required_argument, NULL, OPTION_ORPHAN_HANDLING},
'\0', N_("=MODE"), N_("Control how orphan sections are handled."),
TWO_DASHES },
@@ -253,8 +253,8 @@ index f2191602d4..bccb3bdeef 100644
};
#define OPTION_COUNT ARRAY_SIZE (ld_options)
-@@ -1568,6 +1576,14 @@ parse_args (unsigned argc, char **argv)
- einfo (_("%P%F: invalid argument to option"
+@@ -1577,6 +1585,14 @@ parse_args (unsigned argc, char **argv)
+ einfo (_("%F%P: invalid argument to option"
" \"--orphan-handling\"\n"));
break;
+
@@ -269,5 +269,5 @@ index f2191602d4..bccb3bdeef 100644
}
--
-2.16.1
+2.18.0
diff --git a/poky/meta/recipes-devtools/binutils/binutils/0010-Fix-rpath-in-libtool-when-sysroot-is-enabled.patch b/poky/meta/recipes-devtools/binutils/binutils/0010-Fix-rpath-in-libtool-when-sysroot-is-enabled.patch
index 33dfff9bd..8fc00ff45 100644
--- a/poky/meta/recipes-devtools/binutils/binutils/0010-Fix-rpath-in-libtool-when-sysroot-is-enabled.patch
+++ b/poky/meta/recipes-devtools/binutils/binutils/0010-Fix-rpath-in-libtool-when-sysroot-is-enabled.patch
@@ -1,4 +1,4 @@
-From e205ae05c41a8cc8d47708f0a3b6f740e2bf2526 Mon Sep 17 00:00:00 2001
+From 9e1d8f9a657a8bd48048c2ea6407cf60b723bd68 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Mon, 2 Mar 2015 01:42:38 +0000
Subject: [PATCH 10/15] Fix rpath in libtool when sysroot is enabled
@@ -48,5 +48,5 @@ index 70e856e065..11ee684ccc 100644
if test -z "$hardcode_libdirs"; then
hardcode_libdirs="$libdir"
--
-2.16.1
+2.18.0
diff --git a/poky/meta/recipes-devtools/binutils/binutils/0011-Change-default-emulation-for-mips64-linux.patch b/poky/meta/recipes-devtools/binutils/binutils/0011-Change-default-emulation-for-mips64-linux.patch
index 80fcbc119..2e93b129d 100644
--- a/poky/meta/recipes-devtools/binutils/binutils/0011-Change-default-emulation-for-mips64-linux.patch
+++ b/poky/meta/recipes-devtools/binutils/binutils/0011-Change-default-emulation-for-mips64-linux.patch
@@ -1,4 +1,4 @@
-From 7978c1299021033c35c29c94e0997235f7ede248 Mon Sep 17 00:00:00 2001
+From 2d2e2fcdd9646849716ee99d8d3e5d72ae8889bc Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Mon, 2 Mar 2015 01:44:14 +0000
Subject: [PATCH 11/15] Change default emulation for mips64*-*-linux
@@ -14,10 +14,10 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
2 files changed, 8 insertions(+), 8 deletions(-)
diff --git a/bfd/config.bfd b/bfd/config.bfd
-index f04a993f06..8777f96bd2 100644
+index 6391f35684..8a11c0680a 100644
--- a/bfd/config.bfd
+++ b/bfd/config.bfd
-@@ -1189,12 +1189,12 @@ case "${targ}" in
+@@ -913,12 +913,12 @@ case "${targ}" in
targ_selvecs="mips_elf32_le_vec mips_elf64_be_vec mips_elf64_le_vec mips_ecoff_be_vec mips_ecoff_le_vec"
;;
mips64*el-*-linux*)
@@ -35,10 +35,10 @@ index f04a993f06..8777f96bd2 100644
mips*el-*-linux*)
targ_defvec=mips_elf32_trad_le_vec
diff --git a/ld/configure.tgt b/ld/configure.tgt
-index 6183a85b3d..1d78465590 100644
+index fad8b2e5c8..7fb2168503 100644
--- a/ld/configure.tgt
+++ b/ld/configure.tgt
-@@ -535,11 +535,11 @@ mips*el-*-vxworks*) targ_emul=elf32elmipvxworks
+@@ -464,11 +464,11 @@ mips*el-*-vxworks*) targ_emul=elf32elmipvxworks
mips*-*-vxworks*) targ_emul=elf32ebmipvxworks
targ_extra_emuls="elf32elmipvxworks" ;;
mips*-*-windiss) targ_emul=elf32mipswindiss ;;
@@ -55,5 +55,5 @@ index 6183a85b3d..1d78465590 100644
mips*el-*-linux-*) targ_emul=elf32ltsmip
targ_extra_emuls="elf32btsmip elf32ltsmipn32 elf64ltsmip elf32btsmipn32 elf64btsmip"
--
-2.16.1
+2.18.0
diff --git a/poky/meta/recipes-devtools/binutils/binutils/0012-Add-support-for-Netlogic-XLP.patch b/poky/meta/recipes-devtools/binutils/binutils/0012-Add-support-for-Netlogic-XLP.patch
index 1fefb680f..4d64bd53f 100644
--- a/poky/meta/recipes-devtools/binutils/binutils/0012-Add-support-for-Netlogic-XLP.patch
+++ b/poky/meta/recipes-devtools/binutils/binutils/0012-Add-support-for-Netlogic-XLP.patch
@@ -1,4 +1,4 @@
-From 3b40bf584615f794b85fd50d4d0a5c0a1d2ee7bf Mon Sep 17 00:00:00 2001
+From 96ff7570c29f792c466a933529fefda9b8e97994 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Sun, 14 Feb 2016 17:06:19 +0000
Subject: [PATCH 12/15] Add support for Netlogic XLP
@@ -34,10 +34,10 @@ Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
14 files changed, 61 insertions(+), 21 deletions(-)
diff --git a/bfd/aoutx.h b/bfd/aoutx.h
-index eec9c4ad2a..3bf0a71e63 100644
+index 023843b0be..46246fec2d 100644
--- a/bfd/aoutx.h
+++ b/bfd/aoutx.h
-@@ -814,6 +814,7 @@ NAME (aout, machine_type) (enum bfd_architecture arch,
+@@ -798,6 +798,7 @@ NAME (aout, machine_type) (enum bfd_architecture arch,
case bfd_mach_mipsisa64r6:
case bfd_mach_mips_sb1:
case bfd_mach_mips_xlr:
@@ -46,10 +46,10 @@ index eec9c4ad2a..3bf0a71e63 100644
arch_flags = M_MIPS2;
break;
diff --git a/bfd/archures.c b/bfd/archures.c
-index e83c57a2f3..3016ea1bae 100644
+index 282e983086..b38b05d132 100644
--- a/bfd/archures.c
+++ b/bfd/archures.c
-@@ -201,6 +201,7 @@ DESCRIPTION
+@@ -183,6 +183,7 @@ DESCRIPTION
.#define bfd_mach_mips_octeon3 6503
.#define bfd_mach_mips_xlr 887682 {* decimal 'XLR'. *}
.#define bfd_mach_mips_interaptiv_mr2 736550 {* decimal 'IA2'. *}
@@ -58,10 +58,10 @@ index e83c57a2f3..3016ea1bae 100644
.#define bfd_mach_mipsisa32r2 33
.#define bfd_mach_mipsisa32r3 34
diff --git a/bfd/bfd-in2.h b/bfd/bfd-in2.h
-index 42991e7848..27abc5d5a8 100644
+index 93745bd3fd..326e9e49ed 100644
--- a/bfd/bfd-in2.h
+++ b/bfd/bfd-in2.h
-@@ -2062,6 +2062,7 @@ enum bfd_architecture
+@@ -2054,6 +2054,7 @@ enum bfd_architecture
#define bfd_mach_mips_octeon3 6503
#define bfd_mach_mips_xlr 887682 /* decimal 'XLR'. */
#define bfd_mach_mips_interaptiv_mr2 736550 /* decimal 'IA2'. */
@@ -70,10 +70,10 @@ index 42991e7848..27abc5d5a8 100644
#define bfd_mach_mipsisa32r2 33
#define bfd_mach_mipsisa32r3 34
diff --git a/bfd/config.bfd b/bfd/config.bfd
-index 8777f96bd2..7b80bda8c9 100644
+index 8a11c0680a..c882421343 100644
--- a/bfd/config.bfd
+++ b/bfd/config.bfd
-@@ -1172,6 +1172,11 @@ case "${targ}" in
+@@ -896,6 +896,11 @@ case "${targ}" in
targ_defvec=mips_elf32_le_vec
targ_selvecs="mips_elf32_be_vec mips_elf64_be_vec mips_elf64_le_vec"
;;
@@ -110,10 +110,10 @@ index cb50c64371..2b9d1d6ecf 100644
/* The default architecture is mips:3000, but with a machine number of
diff --git a/bfd/elfxx-mips.c b/bfd/elfxx-mips.c
-index 285401367d..14ebb5f175 100644
+index d91942301c..5d1bd3f0b1 100644
--- a/bfd/elfxx-mips.c
+++ b/bfd/elfxx-mips.c
-@@ -6806,6 +6806,9 @@ _bfd_elf_mips_mach (flagword flags)
+@@ -6805,6 +6805,9 @@ _bfd_elf_mips_mach (flagword flags)
case E_MIPS_MACH_IAMR2:
return bfd_mach_mips_interaptiv_mr2;
@@ -123,7 +123,7 @@ index 285401367d..14ebb5f175 100644
default:
switch (flags & EF_MIPS_ARCH)
{
-@@ -11963,6 +11966,10 @@ mips_set_isa_flags (bfd *abfd)
+@@ -12003,6 +12006,10 @@ mips_set_isa_flags (bfd *abfd)
val = E_MIPS_ARCH_64R2 | E_MIPS_MACH_OCTEON2;
break;
@@ -134,7 +134,7 @@ index 285401367d..14ebb5f175 100644
case bfd_mach_mipsisa32:
val = E_MIPS_ARCH_32;
break;
-@@ -13936,6 +13943,7 @@ static const struct mips_mach_extension mips_mach_extensions[] =
+@@ -13992,6 +13999,7 @@ static const struct mips_mach_extension mips_mach_extensions[] =
{ bfd_mach_mips_octeonp, bfd_mach_mips_octeon },
{ bfd_mach_mips_octeon, bfd_mach_mipsisa64r2 },
{ bfd_mach_mips_loongson_3a, bfd_mach_mipsisa64r2 },
@@ -143,10 +143,10 @@ index 285401367d..14ebb5f175 100644
/* MIPS64 extensions. */
{ bfd_mach_mipsisa64r2, bfd_mach_mipsisa64 },
diff --git a/binutils/readelf.c b/binutils/readelf.c
-index ae1cda9a7b..fed0387a94 100644
+index 2b78db219b..7a7178925f 100644
--- a/binutils/readelf.c
+++ b/binutils/readelf.c
-@@ -3370,6 +3370,7 @@ get_machine_flags (Filedata * filedata, unsigned e_flags, unsigned e_machine)
+@@ -3403,6 +3403,7 @@ get_machine_flags (Filedata * filedata, unsigned e_flags, unsigned e_machine)
case E_MIPS_MACH_OCTEON3: strcat (buf, ", octeon3"); break;
case E_MIPS_MACH_XLR: strcat (buf, ", xlr"); break;
case E_MIPS_MACH_IAMR2: strcat (buf, ", interaptiv-mr2"); break;
@@ -155,7 +155,7 @@ index ae1cda9a7b..fed0387a94 100644
/* We simply ignore the field in this case to avoid confusion:
MIPS ELF does not specify EF_MIPS_MACH, it is a GNU
diff --git a/gas/config/tc-mips.c b/gas/config/tc-mips.c
-index c135131b59..d8fbda8e31 100644
+index 59df787155..48537226c0 100644
--- a/gas/config/tc-mips.c
+++ b/gas/config/tc-mips.c
@@ -552,6 +552,7 @@ static int mips_32bitmode = 0;
@@ -174,7 +174,7 @@ index c135131b59..d8fbda8e31 100644
)
/* Whether the processor uses hardware interlocks to protect reads
-@@ -19737,7 +19739,7 @@ static const struct mips_cpu_info mips_cpu_info_table[] =
+@@ -19778,7 +19780,7 @@ static const struct mips_cpu_info mips_cpu_info_table[] =
/* Broadcom XLP.
XLP is mostly like XLR, with the prominent exception that it is
MIPS64R2 rather than MIPS64. */
@@ -184,10 +184,10 @@ index c135131b59..d8fbda8e31 100644
/* MIPS 64 Release 6 */
{ "i6400", 0, ASE_MSA, ISA_MIPS64R6, CPU_MIPS64R6},
diff --git a/gas/configure b/gas/configure
-index a40ac2144f..65a6995243 100755
+index 134278fa25..2fdca147a1 100755
--- a/gas/configure
+++ b/gas/configure
-@@ -12989,6 +12989,9 @@ _ACEOF
+@@ -13336,6 +13336,9 @@ _ACEOF
mipsisa64r6 | mipsisa64r6el)
mips_cpu=mips64r6
;;
@@ -198,7 +198,7 @@ index a40ac2144f..65a6995243 100755
mips_cpu=r3900
;;
diff --git a/include/elf/mips.h b/include/elf/mips.h
-index 9de0b4e175..74fc4f7e55 100644
+index 4e2cde3279..c329f38929 100644
--- a/include/elf/mips.h
+++ b/include/elf/mips.h
@@ -290,6 +290,7 @@ END_RELOC_NUMBERS (R_MIPS_maxext)
@@ -210,10 +210,10 @@ index 9de0b4e175..74fc4f7e55 100644
#define E_MIPS_MACH_OCTEON3 0x008e0000
#define E_MIPS_MACH_5400 0x00910000
diff --git a/include/opcode/mips.h b/include/opcode/mips.h
-index 5eea72f139..90f6d57e15 100644
+index 1ab1780567..74f457b579 100644
--- a/include/opcode/mips.h
+++ b/include/opcode/mips.h
-@@ -1259,6 +1259,8 @@ static const unsigned int mips_isa_table[] = {
+@@ -1262,6 +1262,8 @@ static const unsigned int mips_isa_table[] = {
#define INSN_XLR 0x00000020
/* Imagination interAptiv MR2. */
#define INSN_INTERAPTIV_MR2 0x04000000
@@ -222,7 +222,7 @@ index 5eea72f139..90f6d57e15 100644
/* DSP ASE */
#define ASE_DSP 0x00000001
-@@ -1365,6 +1367,7 @@ static const unsigned int mips_isa_table[] = {
+@@ -1373,6 +1375,7 @@ static const unsigned int mips_isa_table[] = {
#define CPU_OCTEON3 6503
#define CPU_XLR 887682 /* decimal 'XLR' */
#define CPU_INTERAPTIV_MR2 736550 /* decimal 'IA2' */
@@ -230,7 +230,7 @@ index 5eea72f139..90f6d57e15 100644
/* Return true if the given CPU is included in INSN_* mask MASK. */
-@@ -1445,6 +1448,9 @@ cpu_is_member (int cpu, unsigned int mask)
+@@ -1453,6 +1456,9 @@ cpu_is_member (int cpu, unsigned int mask)
return ((mask & INSN_ISA_MASK) == INSN_ISA32R6)
|| ((mask & INSN_ISA_MASK) == INSN_ISA64R6);
@@ -241,10 +241,10 @@ index 5eea72f139..90f6d57e15 100644
return FALSE;
}
diff --git a/ld/configure.tgt b/ld/configure.tgt
-index 1d78465590..307e787b64 100644
+index 7fb2168503..a1db7adfe2 100644
--- a/ld/configure.tgt
+++ b/ld/configure.tgt
-@@ -521,6 +521,8 @@ mips*el-sde-elf* | mips*el-mti-elf* | mips*el-img-elf*)
+@@ -450,6 +450,8 @@ mips*el-sde-elf* | mips*el-mti-elf* | mips*el-img-elf*)
mips*-sde-elf* | mips*-mti-elf* | mips*-img-elf*)
targ_emul=elf32btsmip
targ_extra_emuls="elf32ltsmip elf32btsmipn32 elf64btsmip elf32ltsmipn32 elf64ltsmip" ;;
@@ -254,10 +254,10 @@ index 1d78465590..307e787b64 100644
targ_extra_emuls="elf32lr5900"
targ_extra_libpath=$targ_extra_emuls ;;
diff --git a/opcodes/mips-dis.c b/opcodes/mips-dis.c
-index 984fcbb802..95b107d216 100644
+index bbf21328e8..38e487c16f 100644
--- a/opcodes/mips-dis.c
+++ b/opcodes/mips-dis.c
-@@ -655,13 +655,11 @@ const struct mips_arch_choice mips_arch_choices[] =
+@@ -656,13 +656,11 @@ const struct mips_arch_choice mips_arch_choices[] =
mips_cp0sel_names_xlr, ARRAY_SIZE (mips_cp0sel_names_xlr),
mips_cp1_names_mips3264, mips_hwr_names_numeric },
@@ -277,10 +277,10 @@ index 984fcbb802..95b107d216 100644
/* This entry, mips16, is here only for ISA/processor selection; do
not print its name. */
diff --git a/opcodes/mips-opc.c b/opcodes/mips-opc.c
-index 180d613c93..65b7b8cc23 100644
+index 1cbcbc6abc..e1fbdc89de 100644
--- a/opcodes/mips-opc.c
+++ b/opcodes/mips-opc.c
-@@ -328,6 +328,7 @@ decode_mips_operand (const char *p)
+@@ -329,6 +329,7 @@ decode_mips_operand (const char *p)
#define IOCT3 INSN_OCTEON3
#define XLR INSN_XLR
#define IAMR2 INSN_INTERAPTIV_MR2
@@ -288,7 +288,7 @@ index 180d613c93..65b7b8cc23 100644
#define IVIRT ASE_VIRT
#define IVIRT64 ASE_VIRT64
-@@ -966,6 +967,7 @@ const struct mips_opcode mips_builtin_opcodes[] =
+@@ -974,6 +975,7 @@ const struct mips_opcode mips_builtin_opcodes[] =
{"clo", "U,s", 0x70000021, 0xfc0007ff, WR_1|RD_2, 0, I32|N55, 0, I37 },
{"clz", "d,s", 0x00000050, 0xfc1f07ff, WR_1|RD_2, 0, I37, 0, 0 },
{"clz", "U,s", 0x70000020, 0xfc0007ff, WR_1|RD_2, 0, I32|N55, 0, I37 },
@@ -296,7 +296,7 @@ index 180d613c93..65b7b8cc23 100644
/* ctc0 is at the bottom of the table. */
{"ctc1", "t,G", 0x44c00000, 0xffe007ff, RD_1|WR_CC|CM, 0, I1, 0, 0 },
{"ctc1", "t,S", 0x44c00000, 0xffe007ff, RD_1|WR_CC|CM, 0, I1, 0, 0 },
-@@ -998,12 +1000,13 @@ const struct mips_opcode mips_builtin_opcodes[] =
+@@ -1006,12 +1008,13 @@ const struct mips_opcode mips_builtin_opcodes[] =
{"daddiu", "t,r,j", 0x64000000, 0xfc000000, WR_1|RD_2, 0, I3, 0, 0 },
{"daddu", "d,v,t", 0x0000002d, 0xfc0007ff, WR_1|RD_2|RD_3, 0, I3, 0, 0 },
{"daddu", "t,r,I", 0, (int) M_DADDU_I, INSN_MACRO, 0, I3, 0, 0 },
@@ -311,7 +311,7 @@ index 180d613c93..65b7b8cc23 100644
/* dctr and dctw are used on the r5000. */
{"dctr", "o(b)", 0xbc050000, 0xfc1f0000, RD_2, 0, I3, 0, 0 },
{"dctw", "o(b)", 0xbc090000, 0xfc1f0000, RD_2, 0, I3, 0, 0 },
-@@ -1075,6 +1078,7 @@ const struct mips_opcode mips_builtin_opcodes[] =
+@@ -1083,6 +1086,7 @@ const struct mips_opcode mips_builtin_opcodes[] =
{"dmfc0", "t,G,H", 0x40200000, 0xffe007f8, WR_1|RD_C0|LC, 0, I64, 0, 0 },
{"dmfgc0", "t,G", 0x40600100, 0xffe007ff, WR_1|RD_C0|LC, 0, 0, IVIRT64, 0 },
{"dmfgc0", "t,G,H", 0x40600100, 0xffe007f8, WR_1|RD_C0|LC, 0, 0, IVIRT64, 0 },
@@ -319,7 +319,7 @@ index 180d613c93..65b7b8cc23 100644
{"dmt", "", 0x41600bc1, 0xffffffff, TRAP, 0, 0, MT32, 0 },
{"dmt", "t", 0x41600bc1, 0xffe0ffff, WR_1|TRAP, 0, 0, MT32, 0 },
{"dmtc0", "t,G", 0x40a00000, 0xffe007ff, RD_1|WR_C0|WR_CC|CM, 0, I3, 0, EE },
-@@ -1090,6 +1094,8 @@ const struct mips_opcode mips_builtin_opcodes[] =
+@@ -1098,6 +1102,8 @@ const struct mips_opcode mips_builtin_opcodes[] =
/* dmfc3 is at the bottom of the table. */
/* dmtc3 is at the bottom of the table. */
{"dmuh", "d,s,t", 0x000000dc, 0xfc0007ff, WR_1|RD_2|RD_3, 0, I69, 0, 0 },
@@ -328,7 +328,7 @@ index 180d613c93..65b7b8cc23 100644
{"dmul", "d,s,t", 0x0000009c, 0xfc0007ff, WR_1|RD_2|RD_3, 0, I69, 0, 0 },
{"dmul", "d,v,t", 0x70000003, 0xfc0007ff, WR_1|RD_2|RD_3|WR_HILO, 0, IOCT, 0, 0 },
{"dmul", "d,v,t", 0, (int) M_DMUL, INSN_MACRO, 0, I3, 0, M32|I69 },
-@@ -1243,9 +1249,9 @@ const struct mips_opcode mips_builtin_opcodes[] =
+@@ -1251,9 +1257,9 @@ const struct mips_opcode mips_builtin_opcodes[] =
{"ld", "s,-b(+R)", 0xec180000, 0xfc1c0000, WR_1, RD_pc, I69, 0, 0 },
{"ld", "t,A(b)", 0, (int) M_LD_AB, INSN_MACRO, 0, I1, 0, 0 },
{"ld", "t,o(b)", 0xdc000000, 0xfc000000, WR_1|RD_3|LM, 0, I3, 0, 0 },
@@ -341,7 +341,7 @@ index 180d613c93..65b7b8cc23 100644
{"ldc1", "T,o(b)", 0xd4000000, 0xfc000000, WR_1|RD_3|CLD|FP_D, 0, I2, 0, SF },
{"ldc1", "E,o(b)", 0xd4000000, 0xfc000000, WR_1|RD_3|CLD|FP_D, 0, I2, 0, SF },
{"ldc1", "T,A(b)", 0, (int) M_LDC1_AB, INSN_MACRO, INSN2_M_FP_D, I2, 0, SF },
-@@ -1410,7 +1416,7 @@ const struct mips_opcode mips_builtin_opcodes[] =
+@@ -1418,7 +1424,7 @@ const struct mips_opcode mips_builtin_opcodes[] =
{"mflo", "d,9", 0x00000012, 0xff9f07ff, WR_1|RD_LO, 0, 0, D32, 0 },
{"mflo1", "d", 0x70000012, 0xffff07ff, WR_1|RD_LO, 0, EE, 0, 0 },
{"mflhxu", "d", 0x00000052, 0xffff07ff, WR_1|MOD_HILO, 0, 0, SMT, 0 },
@@ -350,7 +350,7 @@ index 180d613c93..65b7b8cc23 100644
{"mfsa", "d", 0x00000028, 0xffff07ff, WR_1, 0, EE, 0, 0 },
{"min.ob", "X,Y,Q", 0x78000006, 0xfc20003f, WR_1|RD_2|RD_3|FP_D, 0, SB1, MX, 0 },
{"min.ob", "D,S,Q", 0x48000006, 0xfc20003f, WR_1|RD_2|RD_3|FP_D, 0, N54, 0, 0 },
-@@ -1455,10 +1461,13 @@ const struct mips_opcode mips_builtin_opcodes[] =
+@@ -1463,10 +1469,13 @@ const struct mips_opcode mips_builtin_opcodes[] =
/* move is at the top of the table. */
{"msgn.qh", "X,Y,Q", 0x78200000, 0xfc20003f, WR_1|RD_2|RD_3|FP_D, 0, 0, MX, 0 },
{"msgsnd", "t", 0, (int) M_MSGSND, INSN_MACRO, 0, XLR, 0, 0 },
@@ -366,7 +366,7 @@ index 180d613c93..65b7b8cc23 100644
{"msub.d", "D,R,S,T", 0x4c000029, 0xfc00003f, WR_1|RD_2|RD_3|RD_4|FP_D, 0, I4_33, 0, I37 },
{"msub.d", "D,S,T", 0x46200019, 0xffe0003f, WR_1|RD_2|RD_3|FP_D, 0, IL2E, 0, 0 },
{"msub.d", "D,S,T", 0x72200019, 0xffe0003f, WR_1|RD_2|RD_3|FP_D, 0, IL2F, 0, 0 },
-@@ -1508,7 +1517,7 @@ const struct mips_opcode mips_builtin_opcodes[] =
+@@ -1516,7 +1525,7 @@ const struct mips_opcode mips_builtin_opcodes[] =
{"mtlo", "s,7", 0x00000013, 0xfc1fe7ff, RD_1|WR_LO, 0, 0, D32, 0 },
{"mtlo1", "s", 0x70000013, 0xfc1fffff, RD_1|WR_LO, 0, EE, 0, 0 },
{"mtlhx", "s", 0x00000053, 0xfc1fffff, RD_1|MOD_HILO, 0, 0, SMT, 0 },
@@ -375,7 +375,7 @@ index 180d613c93..65b7b8cc23 100644
{"mtm0", "s", 0x70000008, 0xfc1fffff, RD_1, 0, IOCT, 0, 0 },
{"mtm0", "s,t", 0x70000008, 0xfc00ffff, RD_1|RD_2, 0, IOCT3, 0, 0 },
{"mtm1", "s", 0x7000000c, 0xfc1fffff, RD_1, 0, IOCT, 0, 0 },
-@@ -1945,9 +1954,9 @@ const struct mips_opcode mips_builtin_opcodes[] =
+@@ -1953,9 +1962,9 @@ const struct mips_opcode mips_builtin_opcodes[] =
{"suxc1", "S,t(b)", 0x4c00000d, 0xfc0007ff, RD_1|RD_2|RD_3|SM|FP_D, 0, I5_33|N55, 0, I37},
{"sw", "t,o(b)", 0xac000000, 0xfc000000, RD_1|RD_3|SM, 0, I1, 0, 0 },
{"sw", "t,A(b)", 0, (int) M_SW_AB, INSN_MACRO, 0, I1, 0, 0 },
@@ -389,5 +389,5 @@ index 180d613c93..65b7b8cc23 100644
{"swc0", "E,A(b)", 0, (int) M_SWC0_AB, INSN_MACRO, 0, I1, 0, IOCT|IOCTP|IOCT2|I37 },
{"swc1", "T,o(b)", 0xe4000000, 0xfc000000, RD_1|RD_3|SM|FP_S, 0, I1, 0, 0 },
--
-2.16.1
+2.18.0
diff --git a/poky/meta/recipes-devtools/binutils/binutils/0013-fix-the-incorrect-assembling-for-ppc-wait-mnemonic.patch b/poky/meta/recipes-devtools/binutils/binutils/0013-fix-the-incorrect-assembling-for-ppc-wait-mnemonic.patch
index c3e1b1384..c9ffdada9 100644
--- a/poky/meta/recipes-devtools/binutils/binutils/0013-fix-the-incorrect-assembling-for-ppc-wait-mnemonic.patch
+++ b/poky/meta/recipes-devtools/binutils/binutils/0013-fix-the-incorrect-assembling-for-ppc-wait-mnemonic.patch
@@ -1,4 +1,4 @@
-From 27ec22ca3cd56cfdf060d2e1f414bedce269b322 Mon Sep 17 00:00:00 2001
+From d45455db35db5693c5efe0e1b384295e4c0db998 Mon Sep 17 00:00:00 2001
From: Zhenhua Luo <zhenhua.luo@nxp.com>
Date: Sat, 11 Jun 2016 22:08:29 -0500
Subject: [PATCH 13/15] fix the incorrect assembling for ppc wait mnemonic
@@ -11,10 +11,10 @@ Upstream-Status: Pending
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/opcodes/ppc-opc.c b/opcodes/ppc-opc.c
-index bb17f26c2e..dbdd762b4e 100644
+index 4a0fca5f0a..49f72fc35c 100644
--- a/opcodes/ppc-opc.c
+++ b/opcodes/ppc-opc.c
-@@ -5338,7 +5338,6 @@ const struct powerpc_opcode powerpc_opcodes[] = {
+@@ -5351,7 +5351,6 @@ const struct powerpc_opcode powerpc_opcodes[] = {
{"ldepx", X(31,29), X_MASK, E500MC|PPCA2, 0, {RT, RA0, RB}},
{"waitasec", X(31,30), XRTRARB_MASK, POWER8, POWER9, {0}},
@@ -22,7 +22,7 @@ index bb17f26c2e..dbdd762b4e 100644
{"lwepx", X(31,31), X_MASK, E500MC|PPCA2, 0, {RT, RA0, RB}},
-@@ -5392,7 +5391,7 @@ const struct powerpc_opcode powerpc_opcodes[] = {
+@@ -5405,7 +5404,7 @@ const struct powerpc_opcode powerpc_opcodes[] = {
{"waitrsv", X(31,62)|(1<<21), 0xffffffff, E500MC|PPCA2, 0, {0}},
{"waitimpl", X(31,62)|(2<<21), 0xffffffff, E500MC|PPCA2, 0, {0}},
@@ -32,5 +32,5 @@ index bb17f26c2e..dbdd762b4e 100644
{"dcbstep", XRT(31,63,0), XRT_MASK, E500MC|PPCA2, 0, {RA0, RB}},
--
-2.16.1
+2.18.0
diff --git a/poky/meta/recipes-devtools/binutils/binutils/0014-Detect-64-bit-MIPS-targets.patch b/poky/meta/recipes-devtools/binutils/binutils/0014-Detect-64-bit-MIPS-targets.patch
index cf3690f25..6197df6d5 100644
--- a/poky/meta/recipes-devtools/binutils/binutils/0014-Detect-64-bit-MIPS-targets.patch
+++ b/poky/meta/recipes-devtools/binutils/binutils/0014-Detect-64-bit-MIPS-targets.patch
@@ -1,4 +1,4 @@
-From 7dfbd6889d868a09d695dd2736104848c1a9c9c3 Mon Sep 17 00:00:00 2001
+From 9af90cfc35ff1fe78755578861473039836c467a Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Fri, 31 Mar 2017 11:42:03 -0700
Subject: [PATCH 14/15] Detect 64-bit MIPS targets
@@ -46,5 +46,5 @@ index 8aef22a318..7030026ffa 100644
targ_obj=mips
targ_machine=EM_MIPS
--
-2.16.1
+2.18.0
diff --git a/poky/meta/recipes-devtools/binutils/binutils/0015-sync-with-OE-libtool-changes.patch b/poky/meta/recipes-devtools/binutils/binutils/0015-sync-with-OE-libtool-changes.patch
index 8c9fd237e..7dc8ba8c3 100644
--- a/poky/meta/recipes-devtools/binutils/binutils/0015-sync-with-OE-libtool-changes.patch
+++ b/poky/meta/recipes-devtools/binutils/binutils/0015-sync-with-OE-libtool-changes.patch
@@ -1,4 +1,4 @@
-From 298804f430939d6cc94b09732ee93e64c5e6be18 Mon Sep 17 00:00:00 2001
+From f9e26bd29b5f017ea1307b51b5036063bff78600 Mon Sep 17 00:00:00 2001
From: Ross Burton <ross.burton@intel.com>
Date: Mon, 6 Mar 2017 23:33:27 -0800
Subject: [PATCH 15/15] sync with OE libtool changes
@@ -85,5 +85,5 @@ index 11ee684ccc..3b19ac1532 100644
elif test -n "$runpath_var"; then
case "$finalize_perm_rpath " in
--
-2.16.1
+2.18.0
diff --git a/poky/meta/recipes-devtools/binutils/binutils/0016-add-i386pep-emulation-for-x86_64.patch b/poky/meta/recipes-devtools/binutils/binutils/0016-add-i386pep-emulation-for-x86_64.patch
new file mode 100644
index 000000000..9f20784eb
--- /dev/null
+++ b/poky/meta/recipes-devtools/binutils/binutils/0016-add-i386pep-emulation-for-x86_64.patch
@@ -0,0 +1,41 @@
+binutils : enable x86_64-pep for producing EFI binaries on x86-64
+
+Add x86_64-pep emulation support to the set enabled for x86_64 targets
+to enable the linker to produce Portable Executables for EFI binaries.
+
+Enables building the x86-64 EFI variant of the Xen hypervisor for
+the OpenXT Project.
+
+Signed-off-by: Christopher Clark <christopher.clark6@baesystems.com>
+
+Upstream-Status: Inappropriate [OE configuration specific]
+---
+diff --git a/bfd/config.bfd b/bfd/config.bfd
+index c882421..dc705b6 100644
+--- a/bfd/config.bfd
++++ b/bfd/config.bfd
+@@ -688,7 +688,7 @@ case "${targ}" in
+ ;;
+ x86_64-*-linux-*)
+ targ_defvec=x86_64_elf64_vec
+- targ_selvecs="i386_elf32_vec iamcu_elf32_vec x86_64_elf32_vec i386_pei_vec x86_64_pei_vec l1om_elf64_vec k1om_elf64_vec"
++ targ_selvecs="i386_elf32_vec iamcu_elf32_vec x86_64_elf32_vec i386_pei_vec x86_64_pei_vec l1om_elf64_vec k1om_elf64_vec x86_64_pe_vec x86_64_pe_be_vec i386_pe_vec"
+ want64=true
+ ;;
+ x86_64-*-nacl*)
+diff --git a/ld/configure.tgt b/ld/configure.tgt
+index a1db7ad..65a984a 100644
+--- a/ld/configure.tgt
++++ b/ld/configure.tgt
+@@ -253,8 +253,9 @@ x86_64-*-linux-gnux32) targ_emul=elf32_x86_64
+ tdir_elf_iamcu=`echo ${targ_alias} | sed -e 's/x86_64/i386/' -e 's/-linux-gnux32/-linux-gnu/'`
+ tdir_elf_i386=`echo ${targ_alias} | sed -e 's/x86_64/i386/' -e 's/-linux-gnux32/-linux-gnu/'` ;;
+ x86_64-*-linux-*) targ_emul=elf_x86_64
+- targ_extra_emuls="elf32_x86_64 elf_i386 elf_iamcu elf_l1om elf_k1om"
+- targ_extra_libpath="elf_i386 elf32_x86_64 elf_l1om elf_k1om"
++ targ_extra_emuls="elf32_x86_64 elf_i386 elf_iamcu elf_l1om elf_k1om i386pe i386pep"
++ targ_extra_libpath="elf_i386 elf32_x86_64 elf_l1om elf_k1om i386pep"
++ targ_extra_ofiles="deffilep.o pep-dll.o pe-dll.o"
+ tdir_elf_i386=`echo ${targ_alias} | sed -e 's/x86_64/i386/'` ;;
+ i[3-7]86-*-redox*) targ_emul=elf_i386
+ targ_extra_emuls=elf_x86_64 ;;
diff --git a/poky/meta/recipes-devtools/binutils/binutils/0017-improve-check-for-input-file-matching-output-file.patch b/poky/meta/recipes-devtools/binutils/binutils/0017-improve-check-for-input-file-matching-output-file.patch
new file mode 100644
index 000000000..265e52633
--- /dev/null
+++ b/poky/meta/recipes-devtools/binutils/binutils/0017-improve-check-for-input-file-matching-output-file.patch
@@ -0,0 +1,59 @@
+From 2a50366ded329bfb39d387253450c9d5302c3503 Mon Sep 17 00:00:00 2001
+From: Robert Yang <liezhi.yang@windriver.com>
+Date: Tue, 14 Aug 2018 12:22:35 +0100
+Subject: [PATCH] as.c: Improve check for input file matching output file.
+
+When the assembler reports that the input and output are the same, report the
+file names involved, in order to help debugging. Also do not equate two files
+are the same if the have the same inode value but reside on different file
+systems.
+
+Upstream-Status: Backport
+
+Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
+---
+ gas/as.c | 27 ++++++++++++++++++++-------
+ 2 files changed, 20 insertions(+), 7 deletions(-)
+
+diff --git a/gas/as.c b/gas/as.c
+index b2a908a..3105d06 100644
+--- a/gas/as.c
++++ b/gas/as.c
+@@ -1259,14 +1259,27 @@ main (int argc, char ** argv)
+ {
+ struct stat sib;
+
+- if (stat (argv[i], &sib) == 0)
++ /* Check that the input file and output file are different. */
++ if (stat (argv[i], &sib) == 0
++ && sib.st_ino == sob.st_ino
++ /* POSIX emulating systems may support stat() but if the
++ underlying file system does not support a file serial number
++ of some kind then they will return 0 for the inode. So
++ two files with an inode of 0 may not actually be the same.
++ On real POSIX systems no ordinary file will ever have an
++ inode of 0. */
++ && sib.st_ino != 0
++ /* Different files may have the same inode number if they
++ reside on different devices, so check the st_dev field as
++ well. */
++ && sib.st_dev == sob.st_dev)
+ {
+- if (sib.st_ino == sob.st_ino && sib.st_ino != 0)
+- {
+- /* Don't let as_fatal remove the output file! */
+- out_file_name = NULL;
+- as_fatal (_("The input and output files must be distinct"));
+- }
++ const char *saved_out_file_name = out_file_name;
++
++ /* Don't let as_fatal remove the output file! */
++ out_file_name = NULL;
++ as_fatal (_("The input '%s' and output '%s' files are the same"),
++ argv[i], saved_out_file_name);
+ }
+ }
+ }
+--
+2.7.4
+
diff --git a/poky/meta/recipes-devtools/binutils/binutils/0018-Refactored-location-where-GOT-information-is-collect.patch b/poky/meta/recipes-devtools/binutils/binutils/0018-Refactored-location-where-GOT-information-is-collect.patch
new file mode 100644
index 000000000..d41339a9a
--- /dev/null
+++ b/poky/meta/recipes-devtools/binutils/binutils/0018-Refactored-location-where-GOT-information-is-collect.patch
@@ -0,0 +1,201 @@
+From d930affa2d475d1cc6792f1e6d56bef3d6c617db Mon Sep 17 00:00:00 2001
+From: Cupertino Miranda <cmiranda@synopsys.com>
+Date: Fri, 2 Mar 2018 17:16:21 +0100
+Subject: [PATCH] Refactored location where GOT information is collected.
+
+Change location where GOT information is collected for ARC target, avoiding
+posible use conflicts of the previous .got field in the symbols hash_entry.
+
+bfd/
+2018-03-01 Cupertino Miranda <cmiranda@synopsys.com>
+
+ * arc-got.h (get_got_entry_list_for_symbol): Changed.
+ * ef32-arc.c (struct elf_arc_link_hash_entry): Moved and changed.
+ (elf_arc_link_hash_newfunc): Changed.
+ (arc_elf_link_hash_table_create): Removed old initializations.
+ (elf_arc_relocate_section, elf_arc_finish_dynamic_symbol): Changed.
+
+Signed-off-by: Cupertino Miranda <cmiranda@synopsys.com>
+Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
+[Romain: rebase on top of 2.31]
+Signed-off-by: Romain Naour <romain.naour@gmail.com>
+
+Upstream-Status: Pending
+---
+ bfd/arc-got.h | 6 +++--
+ bfd/elf32-arc.c | 77 +++++++++++++++++++++++++++++++--------------------------
+ 2 files changed, 46 insertions(+), 37 deletions(-)
+
+diff --git a/bfd/arc-got.h b/bfd/arc-got.h
+index a86061bcb38..81ce88fe21a 100644
+--- a/bfd/arc-got.h
++++ b/bfd/arc-got.h
+@@ -156,9 +156,11 @@ get_got_entry_list_for_symbol (bfd *abfd,
+ unsigned long r_symndx,
+ struct elf_link_hash_entry *h)
+ {
+- if (h != NULL)
++ struct elf_arc_link_hash_entry *h1 =
++ ((struct elf_arc_link_hash_entry *) h);
++ if (h1 != NULL)
+ {
+- return &h->got.glist;
++ return &h1->got_ents;
+ }
+ else
+ {
+diff --git a/bfd/elf32-arc.c b/bfd/elf32-arc.c
+index a48ef0ca15f..ab84de43815 100644
+--- a/bfd/elf32-arc.c
++++ b/bfd/elf32-arc.c
+@@ -160,6 +160,18 @@ struct arc_relocation_data
+ const char * symbol_name;
+ };
+
++/* ARC ELF linker hash entry. */
++struct elf_arc_link_hash_entry
++{
++ struct elf_link_hash_entry root;
++
++ /* Track dynamic relocs copied for this symbol. */
++ struct elf_dyn_relocs *dyn_relocs;
++
++ struct got_entry *got_ents;
++};
++
++
+ /* Should be included at this location due to static declarations
+ defined before this point. */
+ #include "arc-got.h"
+@@ -281,15 +293,6 @@ struct arc_reloc_map
+ unsigned char elf_reloc_val;
+ };
+
+-/* ARC ELF linker hash entry. */
+-struct elf_arc_link_hash_entry
+-{
+- struct elf_link_hash_entry root;
+-
+- /* Track dynamic relocs copied for this symbol. */
+- struct elf_dyn_relocs *dyn_relocs;
+-};
+-
+ /* ARC ELF linker hash table. */
+ struct elf_arc_link_hash_table
+ {
+@@ -301,28 +304,28 @@ elf_arc_link_hash_newfunc (struct bfd_hash_entry *entry,
+ struct bfd_hash_table *table,
+ const char *string)
+ {
++ struct elf_arc_link_hash_entry * ret =
++ (struct elf_arc_link_hash_entry *) entry;
++
+ /* Allocate the structure if it has not already been allocated by a
+ subclass. */
+- if (entry == NULL)
+- {
+- entry = (struct bfd_hash_entry *)
+- bfd_hash_allocate (table,
+- sizeof (struct elf_arc_link_hash_entry));
+- if (entry == NULL)
+- return entry;
+- }
++ if (ret == NULL)
++ ret = (struct elf_arc_link_hash_entry *)
++ bfd_hash_allocate (table, sizeof (struct elf_arc_link_hash_entry));
++ if (ret == NULL)
++ return (struct bfd_hash_entry *) ret;
+
+ /* Call the allocation method of the superclass. */
+- entry = _bfd_elf_link_hash_newfunc (entry, table, string);
+- if (entry != NULL)
++ ret = ((struct elf_arc_link_hash_entry *)
++ _bfd_elf_link_hash_newfunc ((struct bfd_hash_entry *) ret,
++ table, string));
++ if (ret != NULL)
+ {
+- struct elf_arc_link_hash_entry *eh;
+-
+- eh = (struct elf_arc_link_hash_entry *) entry;
+- eh->dyn_relocs = NULL;
++ ret->dyn_relocs = NULL;
++ ret->got_ents = NULL;
+ }
+
+- return entry;
++ return (struct bfd_hash_entry *) ret;
+ }
+
+ /* Destroy an ARC ELF linker hash table. */
+@@ -352,11 +355,6 @@ arc_elf_link_hash_table_create (bfd *abfd)
+ return NULL;
+ }
+
+- ret->elf.init_got_refcount.refcount = 0;
+- ret->elf.init_got_refcount.glist = NULL;
+- ret->elf.init_got_offset.offset = 0;
+- ret->elf.init_got_offset.glist = NULL;
+-
+ ret->elf.root.hash_table_free = elf_arc_link_hash_table_free;
+
+ return &ret->elf.root;
+@@ -1615,10 +1613,14 @@ elf_arc_relocate_section (bfd * output_bfd,
+ while (h->root.type == bfd_link_hash_indirect
+ || h->root.type == bfd_link_hash_warning)
+ {
+- struct elf_link_hash_entry *h_old = h;
++ struct elf_arc_link_hash_entry *ah_old =
++ (struct elf_arc_link_hash_entry *) h;
+ h = (struct elf_link_hash_entry *) h->root.u.i.link;
+- if (h->got.glist == 0 && h_old->got.glist != h->got.glist)
+- h->got.glist = h_old->got.glist;
++ struct elf_arc_link_hash_entry *ah =
++ (struct elf_arc_link_hash_entry *) h;
++
++ if (ah->got_ents == 0 && ah_old->got_ents != ah->got_ents)
++ ah->got_ents = ah_old->got_ents;
+ }
+
+ /* TODO: Need to validate what was the intention. */
+@@ -1636,6 +1638,8 @@ elf_arc_relocate_section (bfd * output_bfd,
+
+ if (is_reloc_for_GOT (howto) && !bfd_link_pic (info))
+ {
++ struct elf_arc_link_hash_entry *ah =
++ (struct elf_arc_link_hash_entry *) h;
+ /* TODO: Change it to use arc_do_relocation with
+ ARC_32 reloc. Try to use ADD_RELA macro. */
+ bfd_vma relocation =
+@@ -1645,8 +1649,8 @@ elf_arc_relocate_section (bfd * output_bfd,
+ + reloc_data.sym_section->output_section->vma)
+ : 0);
+
+- BFD_ASSERT (h->got.glist);
+- bfd_vma got_offset = h->got.glist->offset;
++ BFD_ASSERT (ah->got_ents);
++ bfd_vma got_offset = ah->got_ents->offset;
+ bfd_put_32 (output_bfd, relocation,
+ htab->sgot->contents + got_offset);
+ }
+@@ -1958,6 +1962,7 @@ elf_arc_check_relocs (bfd * abfd,
+ else /* Global one. */
+ h = sym_hashes[r_symndx - symtab_hdr->sh_info];
+
++
+ switch (r_type)
+ {
+ case R_ARC_32:
+@@ -2404,7 +2409,9 @@ elf_arc_finish_dynamic_symbol (bfd * output_bfd,
+ create respective dynamic relocs. */
+ /* TODO: Make function to get list and not access the list directly. */
+ /* TODO: Move function to relocate_section create this relocs eagerly. */
+- create_got_dynrelocs_for_got_info (&h->got.glist,
++ struct elf_arc_link_hash_entry *ah =
++ (struct elf_arc_link_hash_entry *) h;
++ create_got_dynrelocs_for_got_info (&ah->got_ents,
+ output_bfd,
+ info,
+ h);
+--
+2.14.4
+
diff --git a/poky/meta/recipes-devtools/binutils/binutils/0019-Improved-robustness.-Return-FALSE-in-case-of-NULL-po.patch b/poky/meta/recipes-devtools/binutils/binutils/0019-Improved-robustness.-Return-FALSE-in-case-of-NULL-po.patch
new file mode 100644
index 000000000..6a58ee06a
--- /dev/null
+++ b/poky/meta/recipes-devtools/binutils/binutils/0019-Improved-robustness.-Return-FALSE-in-case-of-NULL-po.patch
@@ -0,0 +1,38 @@
+From 955176bd999fe80c5b937ab8786665079e35c387 Mon Sep 17 00:00:00 2001
+From: Cupertino Miranda <cmiranda@synopsys.com>
+Date: Fri, 2 Mar 2018 17:33:48 +0100
+Subject: [PATCH] Improved robustness. Return FALSE in case of NULL pointer.
+
+bfd/
+2018-03-01 Cupertino Miranda <cmiranda@synopsys.com>
+
+ * elf32-arc.c (elf_arc_finish_dynamic_symbol) Return FALSE in case
+ arc_htab is NULL.
+
+Signed-off-by: Cupertino Miranda <cmiranda@synopsys.com>
+Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
+[Romain: rebase on top of 2.31]
+Signed-off-by: Romain Naour <romain.naour@gmail.com>
+
+Upstream-Status: Pending
+---
+ bfd/elf32-arc.c | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/bfd/elf32-arc.c b/bfd/elf32-arc.c
+index ab84de43815..33fc72cff6e 100644
+--- a/bfd/elf32-arc.c
++++ b/bfd/elf32-arc.c
+@@ -2420,6 +2420,9 @@ elf_arc_finish_dynamic_symbol (bfd * output_bfd,
+ {
+ struct elf_arc_link_hash_table *arc_htab = elf_arc_hash_table (info);
+
++ if(arc_htab == NULL)
++ return FALSE;
++
+ if (h->dynindx == -1
+ || (h->root.type != bfd_link_hash_defined
+ && h->root.type != bfd_link_hash_defweak)
+--
+2.14.4
+
diff --git a/poky/meta/recipes-devtools/binutils/binutils/0020-Make-sure-global-symbol-is-not-an-indirect-or-warnin.patch b/poky/meta/recipes-devtools/binutils/binutils/0020-Make-sure-global-symbol-is-not-an-indirect-or-warnin.patch
new file mode 100644
index 000000000..01e42c03b
--- /dev/null
+++ b/poky/meta/recipes-devtools/binutils/binutils/0020-Make-sure-global-symbol-is-not-an-indirect-or-warnin.patch
@@ -0,0 +1,46 @@
+From 9d09ce14b4eef2b56f24660fd69a44acd45128b2 Mon Sep 17 00:00:00 2001
+From: Cupertino Miranda <cmiranda@synopsys.com>
+Date: Fri, 2 Mar 2018 17:38:14 +0100
+Subject: [PATCH] Make sure global symbol is not an indirect or warning.
+
+Problem identified in the context of glibc with latest upstream binutils.
+Dynamic symbol space was being reserved but, no actual information for the
+symbol was being set. Data for the symbol was kept initialized with -1.
+No easy test case was possible to be created.
+
+bfd/
+2018-03-01 Cupertino Miranda <cmiranda@synopsys.com>
+
+ * elf32-arc.c (elf_arc_check_relocs): Changed.
+
+Signed-off-by: Cupertino Miranda <cmiranda@synopsys.com>
+Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
+[Romain: rebase on top of 2.31]
+Signed-off-by: Romain Naour <romain.naour@gmail.com>
+
+Upstream-Status: Pending
+---
+ bfd/elf32-arc.c | 7 ++++++-
+ 1 file changed, 6 insertions(+), 1 deletion(-)
+
+diff --git a/bfd/elf32-arc.c b/bfd/elf32-arc.c
+index 33fc72cff6e..9b72c5b4f4f 100644
+--- a/bfd/elf32-arc.c
++++ b/bfd/elf32-arc.c
+@@ -1960,7 +1960,12 @@ elf_arc_check_relocs (bfd * abfd,
+ if (r_symndx < symtab_hdr->sh_info) /* Is a local symbol. */
+ h = NULL;
+ else /* Global one. */
+- h = sym_hashes[r_symndx - symtab_hdr->sh_info];
++ {
++ h = sym_hashes[r_symndx - symtab_hdr->sh_info];
++ while (h->root.type == bfd_link_hash_indirect
++ || h->root.type == bfd_link_hash_warning)
++ h = (struct elf_link_hash_entry *) h->root.u.i.link;
++ }
+
+
+ switch (r_type)
+--
+2.14.4
+
diff --git a/poky/meta/recipes-devtools/binutils/binutils/0021-PLT-information-was-still-being-generated-when-symbo.patch b/poky/meta/recipes-devtools/binutils/binutils/0021-PLT-information-was-still-being-generated-when-symbo.patch
new file mode 100644
index 000000000..9e942399c
--- /dev/null
+++ b/poky/meta/recipes-devtools/binutils/binutils/0021-PLT-information-was-still-being-generated-when-symbo.patch
@@ -0,0 +1,40 @@
+From e4861c68067cb2166b4c2bb9c052abeb6ad9aaa1 Mon Sep 17 00:00:00 2001
+From: Cupertino Miranda <cmiranda@synopsys.com>
+Date: Fri, 2 Mar 2018 17:44:29 +0100
+Subject: [PATCH] PLT information was still being generated when symbol was
+ forced_local.
+
+A change upstream reveiled this issue, triggering an assert when linking glibc.
+
+bfd/
+2018-03-01 Cupertino Miranda <cmiranda@synopsys.com>
+
+ * elf32-arc.c (elf_arc_check_relocs): Changed.
+
+Signed-off-by: Cupertino Miranda <cmiranda@synopsys.com>
+Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
+[Romain: rebase on top of 2.31]
+Signed-off-by: Romain Naour <romain.naour@gmail.com>
+
+Upstream-Status: Pending
+---
+ bfd/elf32-arc.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/bfd/elf32-arc.c b/bfd/elf32-arc.c
+index 9b72c5b4f4f..b40b463d34d 100644
+--- a/bfd/elf32-arc.c
++++ b/bfd/elf32-arc.c
+@@ -2041,7 +2041,8 @@ elf_arc_check_relocs (bfd * abfd,
+ if (h == NULL)
+ continue;
+ else
+- h->needs_plt = 1;
++ if(h->forced_local == 0)
++ h->needs_plt = 1;
+ }
+
+ /* Add info to the symbol got_entry_list. */
+--
+2.14.4
+
diff --git a/poky/meta/recipes-devtools/binutils/binutils/CVE-2018-10372.patch b/poky/meta/recipes-devtools/binutils/binutils/CVE-2018-10372.patch
deleted file mode 100644
index 053e9d8d6..000000000
--- a/poky/meta/recipes-devtools/binutils/binutils/CVE-2018-10372.patch
+++ /dev/null
@@ -1,58 +0,0 @@
-From 6aea08d9f3e3d6475a65454da488a0c51f5dc97d Mon Sep 17 00:00:00 2001
-From: Nick Clifton <nickc@redhat.com>
-Date: Tue, 17 Apr 2018 12:35:55 +0100
-Subject: [PATCH] Fix illegal memory access when parsing corrupt DWARF
- information.
-
- PR 23064
- * dwarf.c (process_cu_tu_index): Test for a potential buffer
- overrun before copying signature pointer.
-
-Upstream-Status: Backport
-Affects: Binutils <= 2.30
-CVE: CVE-2018-10372
-Signed-off-by: Armin Kuster <akuster@mvista.com>
-
----
- binutils/ChangeLog | 6 ++++++
- binutils/dwarf.c | 13 ++++++++++++-
- 2 files changed, 18 insertions(+), 1 deletion(-)
-
-Index: git/binutils/dwarf.c
-===================================================================
---- git.orig/binutils/dwarf.c
-+++ git/binutils/dwarf.c
-@@ -9252,7 +9252,18 @@ process_cu_tu_index (struct dwarf_sectio
- }
-
- if (!do_display)
-- memcpy (&this_set[row - 1].signature, ph, sizeof (uint64_t));
-+ {
-+ size_t num_copy = sizeof (uint64_t);
-+
-+ /* PR 23064: Beware of buffer overflow. */
-+ if (ph + num_copy < limit)
-+ memcpy (&this_set[row - 1].signature, ph, num_copy);
-+ else
-+ {
-+ warn (_("Signature (%p) extends beyond end of space in section\n"), ph);
-+ return 0;
-+ }
-+ }
-
- prow = poffsets + (row - 1) * ncols * 4;
- /* PR 17531: file: b8ce60a8. */
-Index: git/binutils/ChangeLog
-===================================================================
---- git.orig/binutils/ChangeLog
-+++ git/binutils/ChangeLog
-@@ -1,3 +1,9 @@
-+2018-04-17 Nick Clifton <nickc@redhat.com>
-+
-+ PR 23064
-+ * dwarf.c (process_cu_tu_index): Test for a potential buffer
-+ overrun before copying signature pointer.
-+
- 2018-01-27 Nick Clifton <nickc@redhat.com>
-
- Back to development.
diff --git a/poky/meta/recipes-devtools/binutils/binutils/CVE-2018-10373.patch b/poky/meta/recipes-devtools/binutils/binutils/CVE-2018-10373.patch
deleted file mode 100644
index d547cf115..000000000
--- a/poky/meta/recipes-devtools/binutils/binutils/CVE-2018-10373.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-From 6327533b1fd29fa86f6bf34e61c332c010e3c689 Mon Sep 17 00:00:00 2001
-From: Nick Clifton <nickc@redhat.com>
-Date: Tue, 17 Apr 2018 14:30:07 +0100
-Subject: [PATCH] Add a check for a NULL table pointer before attempting to
- compute a DWARF filename.
-
- PR 23065
- * dwarf2.c (concat_filename): Check for a NULL table pointer.
-
-Upstream-Status: Backport
-Affects: Binutils <= 2.30
-CVE: CVE-2018-10373
-Signed-off-by: Armin Kuster <akuster@mvista.com>
-
----
- bfd/ChangeLog | 5 +++++
- bfd/dwarf2.c | 2 +-
- 2 files changed, 6 insertions(+), 1 deletion(-)
-
-Index: git/bfd/dwarf2.c
-===================================================================
---- git.orig/bfd/dwarf2.c
-+++ git/bfd/dwarf2.c
-@@ -1565,7 +1565,7 @@ concat_filename (struct line_info_table
- {
- char *filename;
-
-- if (file - 1 >= table->num_files)
-+ if (table == NULL || file - 1 >= table->num_files)
- {
- /* FILE == 0 means unknown. */
- if (file)
-Index: git/bfd/ChangeLog
-===================================================================
---- git.orig/bfd/ChangeLog
-+++ git/bfd/ChangeLog
-@@ -1,3 +1,8 @@
-+2018-04-17 Nick Clifton <nickc@redhat.com>
-+
-+ PR 23065
-+ * dwarf2.c (concat_filename): Check for a NULL table pointer.
-+
- 2018-01-29 Alan Modra <amodra@gmail.com>
-
- PR 22741
diff --git a/poky/meta/recipes-devtools/binutils/binutils/CVE-2018-10534.patch b/poky/meta/recipes-devtools/binutils/binutils/CVE-2018-10534.patch
deleted file mode 100644
index 6847020a9..000000000
--- a/poky/meta/recipes-devtools/binutils/binutils/CVE-2018-10534.patch
+++ /dev/null
@@ -1,3429 +0,0 @@
-From aa4a8c2a2a67545e90c877162c53cc9de42dc8b4 Mon Sep 17 00:00:00 2001
-From: Nick Clifton <nickc@redhat.com>
-Date: Tue, 24 Apr 2018 16:31:27 +0100
-Subject: [PATCH] Fix an illegal memory access when copying a PE format file
- with corrupt debug information.
-
- PR 23110
- * peXXigen.c (_bfd_XX_bfd_copy_private_bfd_data_common): Check for
- a negative PE_DEBUG_DATA size before iterating over the debug data.
-
-Upstream-Status: Backport
-Affects: Binutils <= 2.30
-CVE: CVE-2018-10534
-Signed-off-by: Armin Kuster <akuster@mvista.com>
-
----
- bfd/ChangeLog | 6 +
- bfd/peXXigen.c | 9 +
- bfd/po/bfd.pot | 5631 ++++++++++++++++++++++++++------------------------------
- 3 files changed, 2662 insertions(+), 2984 deletions(-)
-
-Index: git/bfd/peXXigen.c
-===================================================================
---- git.orig/bfd/peXXigen.c
-+++ git/bfd/peXXigen.c
-@@ -2991,6 +2991,15 @@ _bfd_XX_bfd_copy_private_bfd_data_common
- bfd_get_section_size (section) - (addr - section->vma));
- return FALSE;
- }
-+ /* PR 23110. */
-+ else if (ope->pe_opthdr.DataDirectory[PE_DEBUG_DATA].Size < 0)
-+ {
-+ /* xgettext:c-format */
-+ _bfd_error_handler
-+ (_("%pB: Data Directory size (%#lx) is negative"),
-+ obfd, ope->pe_opthdr.DataDirectory[PE_DEBUG_DATA].Size);
-+ return FALSE;
-+ }
-
- for (i = 0; i < ope->pe_opthdr.DataDirectory[PE_DEBUG_DATA].Size
- / sizeof (struct external_IMAGE_DEBUG_DIRECTORY); i++)
-Index: git/bfd/po/bfd.pot
-===================================================================
---- git.orig/bfd/po/bfd.pot
-+++ git/bfd/po/bfd.pot
-@@ -18,175 +18,214 @@ msgstr ""
- "Content-Transfer-Encoding: 8bit\n"
- "Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
-
--#: aout-adobe.c:126
--#, c-format
--msgid "%B: Unknown section type in a.out.adobe file: %x\n"
--msgstr ""
--
- #: aout-cris.c:200
- #, c-format
--msgid "%B: Invalid relocation type exported: %d"
-+msgid "%pB: unsupported relocation type exported: %#x"
- msgstr ""
-
- #: aout-cris.c:244
- #, c-format
--msgid "%B: Invalid relocation type imported: %d"
-+msgid "%pB: unsupported relocation type imported: %#x"
- msgstr ""
-
- #: aout-cris.c:256
- #, c-format
--msgid "%B: Bad relocation record imported: %d"
-+msgid "%pB: bad relocation record imported: %d"
- msgstr ""
-
--#: aoutx.h:1284 aoutx.h:1636 pdp11.c:1152 pdp11.c:1413
-+#: aoutx.h:1264 aoutx.h:1617 pdp11.c:1138 pdp11.c:1399
- #, c-format
--msgid "%B: can not represent section `%A' in a.out object file format"
-+msgid "%pB: can not represent section `%pA' in a.out object file format"
- msgstr ""
-
--#: aoutx.h:1600 pdp11.c:1385
-+#: aoutx.h:1581 pdp11.c:1371
- #, c-format
- msgid ""
--"%B: can not represent section for symbol `%s' in a.out object file format"
-+"%pB: can not represent section for symbol `%s' in a.out object file format"
- msgstr ""
-
--#: aoutx.h:1603 vms-alpha.c:7853
-+#: aoutx.h:1584 vms-alpha.c:7854
- msgid "*unknown*"
- msgstr ""
-
--#: aoutx.h:2422 aoutx.h:2440
--msgid "%B: attempt to write out unknown reloc type"
-+#: aoutx.h:1720
-+#, c-format
-+msgid "%pB: invalid string offset %<PRIu64> >= %<PRIu64>"
- msgstr ""
-
--#: aoutx.h:4093 aoutx.h:4414
--msgid "%P: %B: unexpected relocation type\n"
-+#: aoutx.h:2411 aoutx.h:2429
-+#, c-format
-+msgid "%pB: attempt to write out unknown reloc type"
- msgstr ""
-
--#: aoutx.h:5440 pdp11.c:3708
-+#: aoutx.h:4084
- #, c-format
--msgid "%B: relocatable link from %s to %s not supported"
-+msgid "%pB: unsupported relocation type"
- msgstr ""
-
--#: archive.c:2305
--msgid "Warning: writing archive was slow: rewriting timestamp\n"
-+#. Unknown relocation.
-+#: aoutx.h:4405 coff-alpha.c:601 coff-alpha.c:1514 coff-rs6000.c:2773
-+#: coff-sh.c:504 coff-tic4x.c:184 coff-tic54x.c:279 elf-hppa.h:1040
-+#: elf-hppa.h:1068 elf-m10200.c:226 elf-m10300.c:812 elf32-arc.c:519
-+#: elf32-arm.c:1852 elf32-avr.c:959 elf32-bfin.c:1061 elf32-bfin.c:4698
-+#: elf32-cr16.c:653 elf32-cr16.c:683 elf32-cr16c.c:186 elf32-cris.c:467
-+#: elf32-crx.c:429 elf32-d10v.c:234 elf32-d30v.c:522 elf32-d30v.c:544
-+#: elf32-dlx.c:548 elf32-epiphany.c:376 elf32-fr30.c:381 elf32-frv.c:2558
-+#: elf32-frv.c:6262 elf32-ft32.c:306 elf32-h8300.c:302 elf32-i386.c:401
-+#: elf32-ip2k.c:1245 elf32-iq2000.c:442 elf32-lm32.c:539 elf32-m32c.c:305
-+#: elf32-m32r.c:1286 elf32-m32r.c:1311 elf32-m32r.c:2417 elf32-m68hc11.c:390
-+#: elf32-m68hc12.c:510 elf32-m68k.c:352 elf32-mcore.c:354 elf32-mcore.c:440
-+#: elf32-mep.c:389 elf32-metag.c:878 elf32-microblaze.c:692
-+#: elf32-microblaze.c:969 elf32-mips.c:2229 elf32-moxie.c:137
-+#: elf32-msp430.c:648 elf32-msp430.c:658 elf32-mt.c:241 elf32-nds32.c:2880
-+#: elf32-nds32.c:2904 elf32-nds32.c:4423 elf32-nios2.c:3015 elf32-or1k.c:715
-+#: elf32-pj.c:325 elf32-ppc.c:2061 elf32-ppc.c:2074 elf32-pru.c:420
-+#: elf32-rl78.c:292 elf32-rx.c:314 elf32-rx.c:323 elf32-s390.c:347
-+#: elf32-sh.c:438 elf32-spu.c:160 elf32-tic6x.c:1508 elf32-tic6x.c:1518
-+#: elf32-tic6x.c:1537 elf32-tic6x.c:1547 elf32-tic6x.c:2642 elf32-tilepro.c:803
-+#: elf32-v850.c:1899 elf32-v850.c:1921 elf32-v850.c:4270 elf32-vax.c:290
-+#: elf32-visium.c:482 elf32-wasm32.c:106 elf32-xc16x.c:241 elf32-xgate.c:428
-+#: elf32-xstormy16.c:395 elf32-xtensa.c:454 elf32-xtensa.c:488
-+#: elf64-alpha.c:1112 elf64-alpha.c:4101 elf64-alpha.c:4249
-+#: elf64-ia64-vms.c:254 elf64-ia64-vms.c:3440 elf64-mips.c:3623
-+#: elf64-mips.c:3639 elf64-mmix.c:1264 elf64-ppc.c:2281 elf64-ppc.c:2555
-+#: elf64-ppc.c:2564 elf64-s390.c:328 elf64-s390.c:378 elf64-x86-64.c:285
-+#: elfn32-mips.c:3451 elfxx-ia64.c:325 elfxx-riscv.c:955 elfxx-sparc.c:589
-+#: elfxx-sparc.c:639 elfxx-sparc.c:661 elfxx-tilegx.c:912 elfxx-tilegx.c:952
-+#: /work/sources/binutils/current/bfd/elfnn-aarch64.c:2126
-+#: /work/sources/binutils/current/bfd/elfnn-aarch64.c:2224 elf32-ia64.c:211
-+#: elf32-ia64.c:3863 elf64-ia64.c:211 elf64-ia64.c:3863
-+#, c-format
-+msgid "%pB: unsupported relocation type %#x"
-+msgstr ""
-+
-+#: aoutx.h:5432 pdp11.c:3694
-+#, c-format
-+msgid "%pB: relocatable link from %s to %s not supported"
-+msgstr ""
-+
-+#: archive.c:2216
-+msgid "warning: writing archive was slow: rewriting timestamp"
- msgstr ""
-
--#: archive.c:2421 linker.c:1410
--msgid "%B: plugin needed to handle lto object"
-+#: archive.c:2332 linker.c:1416
-+#, c-format
-+msgid "%pB: plugin needed to handle lto object"
- msgstr ""
-
--#: archive.c:2650
-+#: archive.c:2561
- msgid "Reading archive file mod timestamp"
- msgstr ""
-
--#: archive.c:2674
-+#: archive.c:2585
- msgid "Writing updated armap timestamp"
- msgstr ""
-
-+#: bfd.c:448
-+msgid "no error"
-+msgstr ""
-+
-+#: bfd.c:449
-+msgid "system call error"
-+msgstr ""
-+
-+#: bfd.c:450
-+msgid "invalid bfd target"
-+msgstr ""
-+
-+#: bfd.c:451
-+msgid "file in wrong format"
-+msgstr ""
-+
-+#: bfd.c:452
-+msgid "archive object file in wrong format"
-+msgstr ""
-+
-+#: bfd.c:453
-+msgid "invalid operation"
-+msgstr ""
-+
- #: bfd.c:454
--msgid "No error"
-+msgid "memory exhausted"
- msgstr ""
-
- #: bfd.c:455
--msgid "System call error"
-+msgid "no symbols"
- msgstr ""
-
- #: bfd.c:456
--msgid "Invalid bfd target"
-+msgid "archive has no index; run ranlib to add one"
- msgstr ""
-
- #: bfd.c:457
--msgid "File in wrong format"
-+msgid "no more archived files"
- msgstr ""
-
- #: bfd.c:458
--msgid "Archive object file in wrong format"
-+msgid "malformed archive"
- msgstr ""
-
- #: bfd.c:459
--msgid "Invalid operation"
-+msgid "DSO missing from command line"
- msgstr ""
-
- #: bfd.c:460
--msgid "Memory exhausted"
-+msgid "file format not recognized"
- msgstr ""
-
- #: bfd.c:461
--msgid "No symbols"
-+msgid "file format is ambiguous"
- msgstr ""
-
- #: bfd.c:462
--msgid "Archive has no index; run ranlib to add one"
-+msgid "section has no contents"
- msgstr ""
-
- #: bfd.c:463
--msgid "No more archived files"
-+msgid "nonrepresentable section on output"
- msgstr ""
-
- #: bfd.c:464
--msgid "Malformed archive"
-+msgid "symbol needs debug section which does not exist"
- msgstr ""
-
- #: bfd.c:465
--msgid "DSO missing from command line"
-+msgid "bad value"
- msgstr ""
-
- #: bfd.c:466
--msgid "File format not recognized"
-+msgid "file truncated"
- msgstr ""
-
- #: bfd.c:467
--msgid "File format is ambiguous"
-+msgid "file too big"
- msgstr ""
-
- #: bfd.c:468
--msgid "Section has no contents"
--msgstr ""
--
--#: bfd.c:469
--msgid "Nonrepresentable section on output"
--msgstr ""
--
--#: bfd.c:470
--msgid "Symbol needs debug section which does not exist"
--msgstr ""
--
--#: bfd.c:471
--msgid "Bad value"
--msgstr ""
--
--#: bfd.c:472
--msgid "File truncated"
--msgstr ""
--
--#: bfd.c:473
--msgid "File too big"
--msgstr ""
--
--#: bfd.c:474
- #, c-format
--msgid "Error reading %s: %s"
-+msgid "error reading %s: %s"
- msgstr ""
-
--#: bfd.c:475
--msgid "#<Invalid error code>"
-+#: bfd.c:469
-+msgid "#<invalid error code>"
- msgstr ""
-
--#: bfd.c:1442
-+#: bfd.c:1416
- #, c-format
- msgid "BFD %s assertion fail %s:%d"
- msgstr ""
-
--#: bfd.c:1455
-+#: bfd.c:1429
- #, c-format
- msgid "BFD %s internal error, aborting at %s:%d in %s\n"
- msgstr ""
-
--#: bfd.c:1460
-+#: bfd.c:1434
- #, c-format
- msgid "BFD %s internal error, aborting at %s:%d\n"
- msgstr ""
-
--#: bfd.c:1462
-+#: bfd.c:1436
- msgid "Please report this bug.\n"
- msgstr ""
-
-@@ -332,7 +371,7 @@ msgstr ""
- msgid "private flags = %x:"
- msgstr ""
-
--#: coff-arm.c:2306 elf32-arm.c:14160
-+#: coff-arm.c:2306 elf32-arm.c:14191
- #, c-format
- msgid " [floats passed in float registers]"
- msgstr ""
-@@ -342,7 +381,7 @@ msgstr ""
- msgid " [floats passed in integer registers]"
- msgstr ""
-
--#: coff-arm.c:2311 elf32-arm.c:14163
-+#: coff-arm.c:2311 elf32-arm.c:14194
- #, c-format
- msgid " [position independent]"
- msgstr ""
-@@ -2565,224 +2604,180 @@ msgstr ""
- msgid "ip2k relaxer: switch table header corrupt."
- msgstr ""
-
--#: elf32-ip2k.c:1245
--#, c-format
--msgid "%B: invalid IP2K reloc number: %d"
--msgstr ""
--
--#: elf32-ip2k.c:1298
--#, c-format
--msgid "ip2k linker: missing page instruction at %#Lx (dest = %#Lx)"
--msgstr ""
--
--#: elf32-ip2k.c:1315
--#, c-format
--msgid "ip2k linker: redundant page instruction at %#Lx (dest = %#Lx)"
--msgstr ""
--
--#: elf32-iq2000.c:441
-+#: elf32-ip2k.c:1302
- #, c-format
--msgid "%B: invalid IQ2000 reloc number: %d"
-+msgid "ip2k linker: missing page instruction at %#<PRIx64> (dest = %#<PRIx64>)"
- msgstr ""
-
--#: elf32-lm32.c:539
-+#: elf32-ip2k.c:1321
- #, c-format
--msgid "%B: invalid LM32 reloc number: %d"
-+msgid ""
-+"ip2k linker: redundant page instruction at %#<PRIx64> (dest = %#<PRIx64>)"
- msgstr ""
-
--#: elf32-lm32.c:648 elf32-nios2.c:3133
-+#: elf32-lm32.c:651 elf32-nios2.c:3141
- msgid "global pointer relative relocation when _gp not defined"
- msgstr ""
-
--#: elf32-lm32.c:703 elf32-nios2.c:3570
-+#: elf32-lm32.c:706 elf32-nios2.c:3578
- msgid "global pointer relative address out of range"
- msgstr ""
-
--#: elf32-lm32.c:998
--msgid "internal error: addend should be zero for R_LM32_16_GOT"
--msgstr ""
--
--#: elf32-m32c.c:306
-+#: elf32-lm32.c:1002 elf32-or1k.c:968
- #, c-format
--msgid "%B: invalid M32C reloc number: %d"
-+msgid "internal error: addend should be zero for %s"
- msgstr ""
-
--#: elf32-m32r.c:1286
--#, c-format
--msgid "%B: invalid M32R reloc number: %d"
--msgstr ""
--
--#: elf32-m32r.c:1458
-+#: elf32-m32r.c:1471
- msgid "SDA relocation when _SDA_BASE_ not defined"
- msgstr ""
-
--#: elf32-m32r.c:2971 elf32-microblaze.c:1064 elf32-microblaze.c:1112
-+#: elf32-m32r.c:2984 elf32-microblaze.c:1101 elf32-microblaze.c:1149
- #, c-format
--msgid "%B: The target (%s) of an %s relocation is in the wrong section (%A)"
-+msgid "%pB: the target (%s) of an %s relocation is in the wrong section (%pA)"
- msgstr ""
-
--#: elf32-m32r.c:3473
--msgid "%B: Instruction set mismatch with previous modules"
-+#: elf32-m32r.c:3487
-+#, c-format
-+msgid "%pB: instruction set mismatch with previous modules"
- msgstr ""
-
--#: elf32-m32r.c:3494 elf32-nds32.c:6037
-+#: elf32-m32r.c:3508 elf32-nds32.c:6010
- #, c-format
- msgid "private flags = %lx"
- msgstr ""
-
--#: elf32-m32r.c:3499
-+#: elf32-m32r.c:3513
- #, c-format
- msgid ": m32r instructions"
- msgstr ""
-
--#: elf32-m32r.c:3500
-+#: elf32-m32r.c:3514
- #, c-format
- msgid ": m32rx instructions"
- msgstr ""
-
--#: elf32-m32r.c:3501
-+#: elf32-m32r.c:3515
- #, c-format
- msgid ": m32r2 instructions"
- msgstr ""
-
--#: elf32-m68hc11.c:390
--#, c-format
--msgid "%B: invalid M68HC11 reloc number: %d"
--msgstr ""
--
--#: elf32-m68hc12.c:510
--#, c-format
--msgid "%B: invalid M68HC12 reloc number: %d"
--msgstr ""
--
--#: elf32-m68hc1x.c:1115
-+#: elf32-m68hc1x.c:1116
- #, c-format
- msgid ""
--"Reference to the far symbol `%s' using a wrong relocation may result in "
-+"reference to the far symbol `%s' using a wrong relocation may result in "
- "incorrect execution"
- msgstr ""
-
--#: elf32-m68hc1x.c:1149
-+#: elf32-m68hc1x.c:1150
- #, c-format
- msgid ""
- "XGATE address (%lx) is not within shared RAM(0xE000-0xFFFF), therefore you "
- "must manually offset the address, and possibly manage the page, in your code."
- msgstr ""
-
--#: elf32-m68hc1x.c:1167
-+#: elf32-m68hc1x.c:1168
- #, c-format
- msgid ""
- "banked address [%lx:%04lx] (%lx) is not in the same bank as current banked "
- "address [%lx:%04lx] (%lx)"
- msgstr ""
-
--#: elf32-m68hc1x.c:1183
-+#: elf32-m68hc1x.c:1184
- #, c-format
- msgid ""
- "reference to a banked address [%lx:%04lx] in the normal address space at "
- "%04lx"
- msgstr ""
-
--#: elf32-m68hc1x.c:1224
-+#: elf32-m68hc1x.c:1225
- #, c-format
- msgid ""
- "S12 address (%lx) is not within shared RAM(0x2000-0x4000), therefore you "
- "must manually offset the address in your code"
- msgstr ""
-
--#: elf32-m68hc1x.c:1351
-+#: elf32-m68hc1x.c:1352
-+#, c-format
- msgid ""
--"%B: linking files compiled for 16-bit integers (-mshort) and others for 32-"
-+"%pB: linking files compiled for 16-bit integers (-mshort) and others for 32-"
- "bit integers"
- msgstr ""
-
--#: elf32-m68hc1x.c:1358
-+#: elf32-m68hc1x.c:1359
-+#, c-format
- msgid ""
--"%B: linking files compiled for 32-bit double (-fshort-double) and others for "
--"64-bit double"
-+"%pB: linking files compiled for 32-bit double (-fshort-double) and others "
-+"for 64-bit double"
- msgstr ""
-
--#: elf32-m68hc1x.c:1367
--msgid "%B: linking files compiled for HCS12 with others compiled for HC12"
-+#: elf32-m68hc1x.c:1368
-+#, c-format
-+msgid "%pB: linking files compiled for HCS12 with others compiled for HC12"
- msgstr ""
-
--#: elf32-m68hc1x.c:1412 elf32-xgate.c:672
-+#: elf32-m68hc1x.c:1413 elf32-xgate.c:675
- #, c-format
- msgid "[abi=32-bit int, "
- msgstr ""
-
--#: elf32-m68hc1x.c:1414 elf32-xgate.c:674
-+#: elf32-m68hc1x.c:1415 elf32-xgate.c:677
- #, c-format
- msgid "[abi=16-bit int, "
- msgstr ""
-
--#: elf32-m68hc1x.c:1417 elf32-xgate.c:677
-+#: elf32-m68hc1x.c:1418 elf32-xgate.c:680
- #, c-format
- msgid "64-bit double, "
- msgstr ""
-
--#: elf32-m68hc1x.c:1419 elf32-xgate.c:679
-+#: elf32-m68hc1x.c:1420 elf32-xgate.c:682
- #, c-format
- msgid "32-bit double, "
- msgstr ""
-
--#: elf32-m68hc1x.c:1422
-+#: elf32-m68hc1x.c:1423
- #, c-format
- msgid "cpu=HC11]"
- msgstr ""
-
--#: elf32-m68hc1x.c:1424
-+#: elf32-m68hc1x.c:1425
- #, c-format
- msgid "cpu=HCS12]"
- msgstr ""
-
--#: elf32-m68hc1x.c:1426
-+#: elf32-m68hc1x.c:1427
- #, c-format
- msgid "cpu=HC12]"
- msgstr ""
-
--#: elf32-m68hc1x.c:1429
-+#: elf32-m68hc1x.c:1430
- #, c-format
- msgid " [memory=bank-model]"
- msgstr ""
-
--#: elf32-m68hc1x.c:1431
-+#: elf32-m68hc1x.c:1432
- #, c-format
- msgid " [memory=flat]"
- msgstr ""
-
--#: elf32-m68hc1x.c:1434
-+#: elf32-m68hc1x.c:1435
- #, c-format
- msgid " [XGATE RAM offsetting]"
- msgstr ""
-
--#: elf32-m68k.c:1214 elf32-m68k.c:1215 vms-alpha.c:7477 vms-alpha.c:7493
-+#: elf32-m68k.c:1216 elf32-m68k.c:1217 vms-alpha.c:7478 vms-alpha.c:7494
- msgid "unknown"
- msgstr ""
-
--#: elf32-m68k.c:1658
--#, c-format
--msgid "%B: GOT overflow: Number of relocations with 8-bit offset > %d"
--msgstr ""
--
--#: elf32-m68k.c:1665
--#, c-format
--msgid "%B: GOT overflow: Number of relocations with 8- or 16-bit offset > %d"
--msgstr ""
--
--#: elf32-mcore.c:100 elf32-mcore.c:455
-+#: elf32-m68k.c:1660
- #, c-format
--msgid "%B: Relocation %s (%d) is not currently supported.\n"
-+msgid "%pB: GOT overflow: number of relocations with 8-bit offset > %d"
- msgstr ""
-
--#: elf32-mcore.c:355
-+#: elf32-m68k.c:1667
- #, c-format
--msgid "%B: unrecognised MCore reloc number: %d"
--msgstr ""
--
--#: elf32-mcore.c:440
--#, c-format
--msgid "%B: Unknown relocation type %d\n"
-+msgid "%pB: GOT overflow: number of relocations with 8- or 16-bit offset > %d"
- msgstr ""
-
- #. Pacify gcc -Wall.
-@@ -5936,124 +5931,128 @@ msgstr ""
- #. XXX code yet to be written.
- #: peicode.h:775
- #, c-format
--msgid "%B: Unhandled import type; %x"
-+msgid "%pB: unhandled import type; %x"
- msgstr ""
-
- #: peicode.h:781
- #, c-format
--msgid "%B: Unrecognised import type; %x"
-+msgid "%pB: unrecognized import type; %x"
- msgstr ""
-
- #: peicode.h:796
- #, c-format
--msgid "%B: Unrecognised import name type; %x"
-+msgid "%pB: unrecognized import name type; %x"
- msgstr ""
-
--#: peicode.h:1217
-+#: peicode.h:1211
- #, c-format
--msgid "%B: Unrecognised machine type (0x%x) in Import Library Format archive"
-+msgid "%pB: unrecognised machine type (0x%x) in Import Library Format archive"
- msgstr ""
-
--#: peicode.h:1230
-+#: peicode.h:1224
- #, c-format
- msgid ""
--"%B: Recognised but unhandled machine type (0x%x) in Import Library Format "
-+"%pB: recognised but unhandled machine type (0x%x) in Import Library Format "
- "archive"
- msgstr ""
-
--#: peicode.h:1248
--msgid "%B: size field is zero in Import Library Format header"
-+#: peicode.h:1242
-+#, c-format
-+msgid "%pB: size field is zero in Import Library Format header"
- msgstr ""
-
--#: peicode.h:1280
--msgid "%B: string not null terminated in ILF object file."
-+#: peicode.h:1274
-+#, c-format
-+msgid "%pB: string not null terminated in ILF object file"
- msgstr ""
-
--#: peicode.h:1335
--msgid "%B: Error: Debug Data ends beyond end of debug directory."
-+#: peicode.h:1330
-+#, c-format
-+msgid "%pB: error: debug data ends beyond end of debug directory"
- msgstr ""
-
--#: ppcboot.c:393
-+#: ppcboot.c:392
- #, c-format
- msgid ""
- "\n"
- "ppcboot header:\n"
- msgstr ""
-
--#: ppcboot.c:394
-+#: ppcboot.c:393
- #, c-format
- msgid "Entry offset = 0x%.8lx (%ld)\n"
- msgstr ""
-
--#: ppcboot.c:396
-+#: ppcboot.c:395
- #, c-format
- msgid "Length = 0x%.8lx (%ld)\n"
- msgstr ""
-
--#: ppcboot.c:400
-+#: ppcboot.c:399
- #, c-format
- msgid "Flag field = 0x%.2x\n"
- msgstr ""
-
--#: ppcboot.c:406
-+#: ppcboot.c:405
- #, c-format
- msgid "Partition name = \"%s\"\n"
- msgstr ""
-
--#: ppcboot.c:426
-+#: ppcboot.c:425
- #, c-format
- msgid ""
- "\n"
- "Partition[%d] start = { 0x%.2x, 0x%.2x, 0x%.2x, 0x%.2x }\n"
- msgstr ""
-
--#: ppcboot.c:433
-+#: ppcboot.c:432
- #, c-format
- msgid "Partition[%d] end = { 0x%.2x, 0x%.2x, 0x%.2x, 0x%.2x }\n"
- msgstr ""
-
--#: ppcboot.c:440
-+#: ppcboot.c:439
- #, c-format
- msgid "Partition[%d] sector = 0x%.8lx (%ld)\n"
- msgstr ""
-
--#: ppcboot.c:444
-+#: ppcboot.c:443
- #, c-format
- msgid "Partition[%d] length = 0x%.8lx (%ld)\n"
- msgstr ""
-
--#: reloc.c:8106
--msgid "INPUT_SECTION_FLAGS are not supported.\n"
-+#: reloc.c:8125
-+msgid "INPUT_SECTION_FLAGS are not supported"
- msgstr ""
-
--#: reloc.c:8207
-+#: reloc.c:8226
- #, c-format
--msgid "%X%P: %B(%A): error: relocation for offset %V has no value\n"
-+msgid "%X%P: %pB(%pA): error: relocation for offset %V has no value\n"
- msgstr ""
-
--#: reloc.c:8283
-+#: reloc.c:8302
- #, c-format
--msgid "%X%P: %B(%A): relocation \"%R\" is not supported\n"
-+msgid "%X%P: %pB(%pA): relocation \"%pR\" is not supported\n"
- msgstr ""
-
--#: reloc.c:8292
-+#: reloc.c:8311
- #, c-format
--msgid "%X%P: %B(%A): relocation \"%R\" returns an unrecognized value %x\n"
-+msgid "%X%P: %pB(%pA): relocation \"%pR\" returns an unrecognized value %x\n"
- msgstr ""
-
--#: reloc.c:8354
-+#: reloc.c:8373
- #, c-format
--msgid "%B: unrecognized relocation (%#x) in section `%A'"
-+msgid "%pB: unrecognized relocation type %#x in section `%pA'"
- msgstr ""
-
- #. PR 21803: Suggest the most likely cause of this error.
--#: reloc.c:8358
-+#: reloc.c:8377
- #, c-format
--msgid "Is this version of the linker - %s - out of date ?"
-+msgid "is this version of the linker - %s - out of date ?"
- msgstr ""
-
- #: rs6000-core.c:471
--msgid "%B: warning core file truncated"
-+#, c-format
-+msgid "%pB: warning core file truncated"
- msgstr ""
-
- #: som.c:5478
-@@ -6069,91 +6068,91 @@ msgstr ""
-
- #: srec.c:260
- #, c-format
--msgid "%B:%d: Unexpected character `%s' in S-record file\n"
-+msgid "%pB:%d: unexpected character `%s' in S-record file"
- msgstr ""
-
- #: srec.c:488
- #, c-format
--msgid "%B:%d: byte count %d too small\n"
-+msgid "%pB:%d: byte count %d too small"
- msgstr ""
-
- #: srec.c:581 srec.c:615
- #, c-format
--msgid "%B:%d: Bad checksum in S-record file\n"
-+msgid "%pB:%d: bad checksum in S-record file"
- msgstr ""
-
- #: stabs.c:279
- #, c-format
--msgid "%B(%A+%#lx): Stabs entry has invalid string index."
-+msgid "%pB(%pA+%#lx): stabs entry has invalid string index"
- msgstr ""
-
- #: syms.c:1079
--msgid "Unsupported .stab relocation"
-+msgid "unsupported .stab relocation"
- msgstr ""
-
- #: vms-alpha.c:479
--msgid "Corrupt EIHD record - size is too small"
-+msgid "corrupt EIHD record - size is too small"
- msgstr ""
-
- #: vms-alpha.c:660
- #, c-format
--msgid "Unable to read EIHS record at offset %#x"
-+msgid "unable to read EIHS record at offset %#x"
- msgstr ""
-
--#: vms-alpha.c:1172
-+#: vms-alpha.c:1173
- #, c-format
--msgid "Corrupt EGSD record: its size (%#x) is too small"
-+msgid "corrupt EGSD record: its size (%#x) is too small"
- msgstr ""
-
--#: vms-alpha.c:1196
-+#: vms-alpha.c:1197
- #, c-format
--msgid "Corrupt EGSD record: size (%#x) is larger than remaining space (%#x)"
-+msgid "corrupt EGSD record: size (%#x) is larger than remaining space (%#x)"
- msgstr ""
-
--#: vms-alpha.c:1204
-+#: vms-alpha.c:1205
- #, c-format
--msgid "Corrupt EGSD record: size (%#x) is too small"
-+msgid "corrupt EGSD record: size (%#x) is too small"
- msgstr ""
-
--#: vms-alpha.c:1333 vms-alpha.c:1349 vms-alpha.c:1389
-+#: vms-alpha.c:1334 vms-alpha.c:1350 vms-alpha.c:1390
- #, c-format
--msgid "Corrupt EGSD record: its psindx field is too big (%#lx)"
-+msgid "corrupt EGSD record: its psindx field is too big (%#lx)"
- msgstr ""
-
--#: vms-alpha.c:1418
-+#: vms-alpha.c:1419
- #, c-format
--msgid "Unknown EGSD subtype %d"
-+msgid "unknown EGSD subtype %d"
- msgstr ""
-
--#: vms-alpha.c:1451
-+#: vms-alpha.c:1452
- #, c-format
--msgid "Stack overflow (%d) in _bfd_vms_push"
-+msgid "stack overflow (%d) in _bfd_vms_push"
- msgstr ""
-
--#: vms-alpha.c:1464
--msgid "Stack underflow in _bfd_vms_pop"
-+#: vms-alpha.c:1465
-+msgid "stack underflow in _bfd_vms_pop"
- msgstr ""
-
- #. These names have not yet been added to this switch statement.
--#: vms-alpha.c:1706
-+#: vms-alpha.c:1707
- #, c-format
- msgid "unknown ETIR command %d"
- msgstr ""
-
--#: vms-alpha.c:1737
--msgid "Corrupt vms value"
-+#: vms-alpha.c:1738
-+msgid "corrupt vms value"
- msgstr ""
-
--#: vms-alpha.c:1865
--msgid "Corrupt ETIR record encountered"
-+#: vms-alpha.c:1866
-+msgid "corrupt ETIR record encountered"
- msgstr ""
-
--#: vms-alpha.c:1922
-+#: vms-alpha.c:1923
- #, c-format
- msgid "bad section index in %s"
- msgstr ""
-
--#: vms-alpha.c:1935
-+#: vms-alpha.c:1936
- #, c-format
- msgid "unsupported STA cmd %s"
- msgstr ""
-@@ -6163,1961 +6162,1932 @@ msgstr ""
- #. Rotate.
- #. Redefine symbol to current location.
- #. Define a literal.
--#: vms-alpha.c:2115 vms-alpha.c:2146 vms-alpha.c:2237 vms-alpha.c:2395
-+#: vms-alpha.c:2116 vms-alpha.c:2147 vms-alpha.c:2238 vms-alpha.c:2396
- #, c-format
- msgid "%s: not supported"
- msgstr ""
-
--#: vms-alpha.c:2121
-+#: vms-alpha.c:2122
- #, c-format
- msgid "%s: not implemented"
- msgstr ""
-
--#: vms-alpha.c:2379
-+#: vms-alpha.c:2380
- #, c-format
- msgid "invalid use of %s with contexts"
- msgstr ""
-
--#: vms-alpha.c:2413
-+#: vms-alpha.c:2414
- #, c-format
- msgid "reserved cmd %d"
- msgstr ""
-
--#: vms-alpha.c:2497
--msgid "Corrupt EEOM record - size is too small"
-+#: vms-alpha.c:2498
-+msgid "corrupt EEOM record - size is too small"
- msgstr ""
-
--#: vms-alpha.c:2506
--msgid "Object module NOT error-free !\n"
-+#: vms-alpha.c:2507
-+msgid "object module not error-free !"
- msgstr ""
-
--#: vms-alpha.c:3830
-+#: vms-alpha.c:3831
- #, c-format
--msgid "SEC_RELOC with no relocs in section %A"
-+msgid "SEC_RELOC with no relocs in section %pA"
- msgstr ""
-
--#: vms-alpha.c:3882 vms-alpha.c:4095
-+#: vms-alpha.c:3883 vms-alpha.c:4096
- #, c-format
--msgid "Size error in section %A"
-+msgid "size error in section %pA"
- msgstr ""
-
--#: vms-alpha.c:4041
--msgid "Spurious ALPHA_R_BSR reloc"
-+#: vms-alpha.c:4042
-+msgid "spurious ALPHA_R_BSR reloc"
- msgstr ""
-
--#: vms-alpha.c:4082
-+#: vms-alpha.c:4083
- #, c-format
--msgid "Unhandled relocation %s"
-+msgid "unhandled relocation %s"
- msgstr ""
-
--#: vms-alpha.c:4375
-+#: vms-alpha.c:4376
- #, c-format
- msgid "unknown source command %d"
- msgstr ""
-
--#: vms-alpha.c:4436
--msgid "DST__K_SET_LINUM_INCR not implemented"
--msgstr ""
--
--#: vms-alpha.c:4442
--msgid "DST__K_SET_LINUM_INCR_W not implemented"
--msgstr ""
--
--#: vms-alpha.c:4448
--msgid "DST__K_RESET_LINUM_INCR not implemented"
--msgstr ""
--
--#: vms-alpha.c:4454
--msgid "DST__K_BEG_STMT_MODE not implemented"
--msgstr ""
--
--#: vms-alpha.c:4460
--msgid "DST__K_END_STMT_MODE not implemented"
--msgstr ""
--
--#: vms-alpha.c:4487
--msgid "DST__K_SET_PC not implemented"
--msgstr ""
--
--#: vms-alpha.c:4493
--msgid "DST__K_SET_PC_W not implemented"
--msgstr ""
--
--#: vms-alpha.c:4499
--msgid "DST__K_SET_PC_L not implemented"
--msgstr ""
--
--#: vms-alpha.c:4505
--msgid "DST__K_SET_STMTNUM not implemented"
-+#: vms-alpha.c:4437 vms-alpha.c:4443 vms-alpha.c:4449 vms-alpha.c:4455
-+#: vms-alpha.c:4461 vms-alpha.c:4488 vms-alpha.c:4494 vms-alpha.c:4500
-+#: vms-alpha.c:4506
-+#, c-format
-+msgid "%s not implemented"
- msgstr ""
-
--#: vms-alpha.c:4548
-+#: vms-alpha.c:4549
- #, c-format
- msgid "unknown line command %d"
- msgstr ""
-
--#: vms-alpha.c:5008 vms-alpha.c:5026 vms-alpha.c:5041 vms-alpha.c:5057
--#: vms-alpha.c:5070 vms-alpha.c:5082 vms-alpha.c:5095
-+#: vms-alpha.c:5009 vms-alpha.c:5027 vms-alpha.c:5042 vms-alpha.c:5058
-+#: vms-alpha.c:5071 vms-alpha.c:5083 vms-alpha.c:5096
- #, c-format
--msgid "Unknown reloc %s + %s"
-+msgid "unknown reloc %s + %s"
- msgstr ""
-
--#: vms-alpha.c:5150
-+#: vms-alpha.c:5151
- #, c-format
--msgid "Unknown reloc %s"
-+msgid "unknown reloc %s"
- msgstr ""
-
--#: vms-alpha.c:5163
--msgid "Invalid section index in ETIR"
-+#: vms-alpha.c:5164
-+msgid "invalid section index in ETIR"
- msgstr ""
-
--#: vms-alpha.c:5172
--msgid "Relocation for non-REL psect"
-+#: vms-alpha.c:5173
-+msgid "relocation for non-REL psect"
- msgstr ""
-
--#: vms-alpha.c:5219
-+#: vms-alpha.c:5220
- #, c-format
--msgid "Unknown symbol in command %s"
-+msgid "unknown symbol in command %s"
- msgstr ""
-
--#: vms-alpha.c:5629
-+#: vms-alpha.c:5630
- #, c-format
- msgid "reloc (%d) is *UNKNOWN*"
- msgstr ""
-
--#: vms-alpha.c:5745
-+#: vms-alpha.c:5746
- #, c-format
- msgid " EMH %u (len=%u): "
- msgstr ""
-
--#: vms-alpha.c:5750
-+#: vms-alpha.c:5751
- #, c-format
- msgid " Error: The length is less than the length of an EMH record\n"
- msgstr ""
-
--#: vms-alpha.c:5767
-+#: vms-alpha.c:5768
- #, c-format
- msgid ""
- " Error: The record length is less than the size of an EMH_MHD record\n"
- msgstr ""
-
--#: vms-alpha.c:5770
-+#: vms-alpha.c:5771
- #, c-format
- msgid "Module header\n"
- msgstr ""
-
--#: vms-alpha.c:5771
-+#: vms-alpha.c:5772
- #, c-format
- msgid " structure level: %u\n"
- msgstr ""
-
--#: vms-alpha.c:5772
-+#: vms-alpha.c:5773
- #, c-format
- msgid " max record size: %u\n"
- msgstr ""
-
--#: vms-alpha.c:5778
-+#: vms-alpha.c:5779
- #, c-format
- msgid " Error: The module name is missing\n"
- msgstr ""
-
--#: vms-alpha.c:5784
-+#: vms-alpha.c:5785
- #, c-format
- msgid " Error: The module name is too long\n"
- msgstr ""
-
--#: vms-alpha.c:5787
-+#: vms-alpha.c:5788
- #, c-format
- msgid " module name : %.*s\n"
- msgstr ""
-
--#: vms-alpha.c:5791
-+#: vms-alpha.c:5792
- #, c-format
- msgid " Error: The module version is missing\n"
- msgstr ""
-
--#: vms-alpha.c:5797
-+#: vms-alpha.c:5798
- #, c-format
- msgid " Error: The module version is too long\n"
- msgstr ""
-
--#: vms-alpha.c:5800
-+#: vms-alpha.c:5801
- #, c-format
- msgid " module version : %.*s\n"
- msgstr ""
-
--#: vms-alpha.c:5803
-+#: vms-alpha.c:5804
- #, c-format
- msgid " Error: The compile date is truncated\n"
- msgstr ""
-
--#: vms-alpha.c:5805
-+#: vms-alpha.c:5806
- #, c-format
- msgid " compile date : %.17s\n"
- msgstr ""
-
--#: vms-alpha.c:5810
-+#: vms-alpha.c:5811
- #, c-format
- msgid "Language Processor Name\n"
- msgstr ""
-
--#: vms-alpha.c:5811
-+#: vms-alpha.c:5812
- #, c-format
- msgid " language name: %.*s\n"
- msgstr ""
-
--#: vms-alpha.c:5815
-+#: vms-alpha.c:5816
- #, c-format
- msgid "Source Files Header\n"
- msgstr ""
-
--#: vms-alpha.c:5816
-+#: vms-alpha.c:5817
- #, c-format
- msgid " file: %.*s\n"
- msgstr ""
-
--#: vms-alpha.c:5820
-+#: vms-alpha.c:5821
- #, c-format
- msgid "Title Text Header\n"
- msgstr ""
-
--#: vms-alpha.c:5821
-+#: vms-alpha.c:5822
- #, c-format
- msgid " title: %.*s\n"
- msgstr ""
-
--#: vms-alpha.c:5825
-+#: vms-alpha.c:5826
- #, c-format
- msgid "Copyright Header\n"
- msgstr ""
-
--#: vms-alpha.c:5826
-+#: vms-alpha.c:5827
- #, c-format
- msgid " copyright: %.*s\n"
- msgstr ""
-
--#: vms-alpha.c:5830
-+#: vms-alpha.c:5831
- #, c-format
- msgid "unhandled emh subtype %u\n"
- msgstr ""
-
--#: vms-alpha.c:5840
-+#: vms-alpha.c:5841
- #, c-format
- msgid " EEOM (len=%u):\n"
- msgstr ""
-
--#: vms-alpha.c:5845
-+#: vms-alpha.c:5846
- #, c-format
- msgid " Error: The length is less than the length of an EEOM record\n"
- msgstr ""
-
--#: vms-alpha.c:5849
-+#: vms-alpha.c:5850
- #, c-format
- msgid " number of cond linkage pairs: %u\n"
- msgstr ""
-
--#: vms-alpha.c:5851
-+#: vms-alpha.c:5852
- #, c-format
- msgid " completion code: %u\n"
- msgstr ""
-
--#: vms-alpha.c:5855
-+#: vms-alpha.c:5856
- #, c-format
- msgid " transfer addr flags: 0x%02x\n"
- msgstr ""
-
--#: vms-alpha.c:5856
-+#: vms-alpha.c:5857
- #, c-format
- msgid " transfer addr psect: %u\n"
- msgstr ""
-
--#: vms-alpha.c:5858
-+#: vms-alpha.c:5859
- #, c-format
- msgid " transfer address : 0x%08x\n"
- msgstr ""
-
--#: vms-alpha.c:5867
-+#: vms-alpha.c:5868
- msgid " WEAK"
- msgstr ""
-
--#: vms-alpha.c:5869
-+#: vms-alpha.c:5870
- msgid " DEF"
- msgstr ""
-
--#: vms-alpha.c:5871
-+#: vms-alpha.c:5872
- msgid " UNI"
- msgstr ""
-
--#: vms-alpha.c:5873 vms-alpha.c:5894
-+#: vms-alpha.c:5874 vms-alpha.c:5895
- msgid " REL"
- msgstr ""
-
--#: vms-alpha.c:5875
-+#: vms-alpha.c:5876
- msgid " COMM"
- msgstr ""
-
--#: vms-alpha.c:5877
-+#: vms-alpha.c:5878
- msgid " VECEP"
- msgstr ""
-
--#: vms-alpha.c:5879
-+#: vms-alpha.c:5880
- msgid " NORM"
- msgstr ""
-
--#: vms-alpha.c:5881
-+#: vms-alpha.c:5882
- msgid " QVAL"
- msgstr ""
-
--#: vms-alpha.c:5888
-+#: vms-alpha.c:5889
- msgid " PIC"
- msgstr ""
-
--#: vms-alpha.c:5890
-+#: vms-alpha.c:5891
- msgid " LIB"
- msgstr ""
-
--#: vms-alpha.c:5892
-+#: vms-alpha.c:5893
- msgid " OVR"
- msgstr ""
-
--#: vms-alpha.c:5896
-+#: vms-alpha.c:5897
- msgid " GBL"
- msgstr ""
-
--#: vms-alpha.c:5898
-+#: vms-alpha.c:5899
- msgid " SHR"
- msgstr ""
-
--#: vms-alpha.c:5900
-+#: vms-alpha.c:5901
- msgid " EXE"
- msgstr ""
-
--#: vms-alpha.c:5902
-+#: vms-alpha.c:5903
- msgid " RD"
- msgstr ""
-
--#: vms-alpha.c:5904
-+#: vms-alpha.c:5905
- msgid " WRT"
- msgstr ""
-
--#: vms-alpha.c:5906
-+#: vms-alpha.c:5907
- msgid " VEC"
- msgstr ""
-
--#: vms-alpha.c:5908
-+#: vms-alpha.c:5909
- msgid " NOMOD"
- msgstr ""
-
--#: vms-alpha.c:5910
-+#: vms-alpha.c:5911
- msgid " COM"
- msgstr ""
-
--#: vms-alpha.c:5912
-+#: vms-alpha.c:5913
- msgid " 64B"
- msgstr ""
-
--#: vms-alpha.c:5921
-+#: vms-alpha.c:5922
- #, c-format
- msgid " EGSD (len=%u):\n"
- msgstr ""
-
--#: vms-alpha.c:5934
-+#: vms-alpha.c:5935
- #, c-format
- msgid " EGSD entry %2u (type: %u, len: %u): "
- msgstr ""
-
--#: vms-alpha.c:5940 vms-alpha.c:6191
-+#: vms-alpha.c:5941 vms-alpha.c:6192
- #, c-format
- msgid " Error: length larger than remaining space in record\n"
- msgstr ""
-
--#: vms-alpha.c:5952
-+#: vms-alpha.c:5953
- #, c-format
- msgid "PSC - Program section definition\n"
- msgstr ""
-
--#: vms-alpha.c:5953 vms-alpha.c:5970
-+#: vms-alpha.c:5954 vms-alpha.c:5971
- #, c-format
- msgid " alignment : 2**%u\n"
- msgstr ""
-
--#: vms-alpha.c:5954 vms-alpha.c:5971
-+#: vms-alpha.c:5955 vms-alpha.c:5972
- #, c-format
- msgid " flags : 0x%04x"
- msgstr ""
-
--#: vms-alpha.c:5958
-+#: vms-alpha.c:5959
- #, c-format
- msgid " alloc (len): %u (0x%08x)\n"
- msgstr ""
-
--#: vms-alpha.c:5959 vms-alpha.c:6016 vms-alpha.c:6065
-+#: vms-alpha.c:5960 vms-alpha.c:6017 vms-alpha.c:6066
- #, c-format
- msgid " name : %.*s\n"
- msgstr ""
-
--#: vms-alpha.c:5969
-+#: vms-alpha.c:5970
- #, c-format
- msgid "SPSC - Shared Image Program section def\n"
- msgstr ""
-
--#: vms-alpha.c:5975
-+#: vms-alpha.c:5976
- #, c-format
- msgid " alloc (len) : %u (0x%08x)\n"
- msgstr ""
-
--#: vms-alpha.c:5976
-+#: vms-alpha.c:5977
- #, c-format
- msgid " image offset : 0x%08x\n"
- msgstr ""
-
--#: vms-alpha.c:5978
-+#: vms-alpha.c:5979
- #, c-format
- msgid " symvec offset : 0x%08x\n"
- msgstr ""
-
--#: vms-alpha.c:5980
-+#: vms-alpha.c:5981
- #, c-format
- msgid " name : %.*s\n"
- msgstr ""
-
--#: vms-alpha.c:5993
-+#: vms-alpha.c:5994
- #, c-format
- msgid "SYM - Global symbol definition\n"
- msgstr ""
-
--#: vms-alpha.c:5994 vms-alpha.c:6054 vms-alpha.c:6075 vms-alpha.c:6094
-+#: vms-alpha.c:5995 vms-alpha.c:6055 vms-alpha.c:6076 vms-alpha.c:6095
- #, c-format
- msgid " flags: 0x%04x"
- msgstr ""
-
--#: vms-alpha.c:5997
-+#: vms-alpha.c:5998
- #, c-format
- msgid " psect offset: 0x%08x\n"
- msgstr ""
-
--#: vms-alpha.c:6001
-+#: vms-alpha.c:6002
- #, c-format
- msgid " code address: 0x%08x\n"
- msgstr ""
-
--#: vms-alpha.c:6003
-+#: vms-alpha.c:6004
- #, c-format
- msgid " psect index for entry point : %u\n"
- msgstr ""
-
--#: vms-alpha.c:6006 vms-alpha.c:6082 vms-alpha.c:6101
-+#: vms-alpha.c:6007 vms-alpha.c:6083 vms-alpha.c:6102
- #, c-format
- msgid " psect index : %u\n"
- msgstr ""
-
--#: vms-alpha.c:6008 vms-alpha.c:6084 vms-alpha.c:6103
-+#: vms-alpha.c:6009 vms-alpha.c:6085 vms-alpha.c:6104
- #, c-format
- msgid " name : %.*s\n"
- msgstr ""
-
--#: vms-alpha.c:6015
-+#: vms-alpha.c:6016
- #, c-format
- msgid "SYM - Global symbol reference\n"
- msgstr ""
-
--#: vms-alpha.c:6027
-+#: vms-alpha.c:6028
- #, c-format
- msgid "IDC - Ident Consistency check\n"
- msgstr ""
-
--#: vms-alpha.c:6028
-+#: vms-alpha.c:6029
- #, c-format
- msgid " flags : 0x%08x"
- msgstr ""
-
--#: vms-alpha.c:6032
-+#: vms-alpha.c:6033
- #, c-format
- msgid " id match : %x\n"
- msgstr ""
-
--#: vms-alpha.c:6034
-+#: vms-alpha.c:6035
- #, c-format
- msgid " error severity: %x\n"
- msgstr ""
-
--#: vms-alpha.c:6037
-+#: vms-alpha.c:6038
- #, c-format
- msgid " entity name : %.*s\n"
- msgstr ""
-
--#: vms-alpha.c:6039
-+#: vms-alpha.c:6040
- #, c-format
- msgid " object name : %.*s\n"
- msgstr ""
-
--#: vms-alpha.c:6042
-+#: vms-alpha.c:6043
- #, c-format
- msgid " binary ident : 0x%08x\n"
- msgstr ""
-
--#: vms-alpha.c:6045
-+#: vms-alpha.c:6046
- #, c-format
- msgid " ascii ident : %.*s\n"
- msgstr ""
-
--#: vms-alpha.c:6053
-+#: vms-alpha.c:6054
- #, c-format
- msgid "SYMG - Universal symbol definition\n"
- msgstr ""
-
--#: vms-alpha.c:6057
-+#: vms-alpha.c:6058
- #, c-format
- msgid " symbol vector offset: 0x%08x\n"
- msgstr ""
-
--#: vms-alpha.c:6059
-+#: vms-alpha.c:6060
- #, c-format
- msgid " entry point: 0x%08x\n"
- msgstr ""
-
--#: vms-alpha.c:6061
-+#: vms-alpha.c:6062
- #, c-format
- msgid " proc descr : 0x%08x\n"
- msgstr ""
-
--#: vms-alpha.c:6063
-+#: vms-alpha.c:6064
- #, c-format
- msgid " psect index: %u\n"
- msgstr ""
-
--#: vms-alpha.c:6074
-+#: vms-alpha.c:6075
- #, c-format
- msgid "SYMV - Vectored symbol definition\n"
- msgstr ""
-
--#: vms-alpha.c:6078
-+#: vms-alpha.c:6079
- #, c-format
- msgid " vector : 0x%08x\n"
- msgstr ""
-
--#: vms-alpha.c:6080 vms-alpha.c:6099
-+#: vms-alpha.c:6081 vms-alpha.c:6100
- #, c-format
- msgid " psect offset: %u\n"
- msgstr ""
-
--#: vms-alpha.c:6093
-+#: vms-alpha.c:6094
- #, c-format
- msgid "SYMM - Global symbol definition with version\n"
- msgstr ""
-
--#: vms-alpha.c:6097
-+#: vms-alpha.c:6098
- #, c-format
- msgid " version mask: 0x%08x\n"
- msgstr ""
-
--#: vms-alpha.c:6108
-+#: vms-alpha.c:6109
- #, c-format
- msgid "unhandled egsd entry type %u\n"
- msgstr ""
-
--#: vms-alpha.c:6143
-+#: vms-alpha.c:6144
- #, c-format
- msgid " linkage index: %u, replacement insn: 0x%08x\n"
- msgstr ""
-
--#: vms-alpha.c:6147
-+#: vms-alpha.c:6148
- #, c-format
- msgid " psect idx 1: %u, offset 1: 0x%08x %08x\n"
- msgstr ""
-
--#: vms-alpha.c:6152
-+#: vms-alpha.c:6153
- #, c-format
- msgid " psect idx 2: %u, offset 2: 0x%08x %08x\n"
- msgstr ""
-
--#: vms-alpha.c:6158
-+#: vms-alpha.c:6159
- #, c-format
- msgid " psect idx 3: %u, offset 3: 0x%08x %08x\n"
- msgstr ""
-
--#: vms-alpha.c:6163
-+#: vms-alpha.c:6164
- #, c-format
- msgid " global name: %.*s\n"
- msgstr ""
-
--#: vms-alpha.c:6174
-+#: vms-alpha.c:6175
- #, c-format
- msgid " %s (len=%u+%u):\n"
- msgstr ""
-
--#: vms-alpha.c:6196
-+#: vms-alpha.c:6197
- #, c-format
- msgid " (type: %3u, size: 4+%3u): "
- msgstr ""
-
--#: vms-alpha.c:6200
-+#: vms-alpha.c:6201
- #, c-format
- msgid "STA_GBL (stack global) %.*s\n"
- msgstr ""
-
--#: vms-alpha.c:6204
-+#: vms-alpha.c:6205
- #, c-format
- msgid "STA_LW (stack longword) 0x%08x\n"
- msgstr ""
-
--#: vms-alpha.c:6208
-+#: vms-alpha.c:6209
- #, c-format
- msgid "STA_QW (stack quadword) 0x%08x %08x\n"
- msgstr ""
-
--#: vms-alpha.c:6213
-+#: vms-alpha.c:6214
- #, c-format
- msgid "STA_PQ (stack psect base + offset)\n"
- msgstr ""
-
--#: vms-alpha.c:6215
-+#: vms-alpha.c:6216
- #, c-format
- msgid " psect: %u, offset: 0x%08x %08x\n"
- msgstr ""
-
--#: vms-alpha.c:6221
-+#: vms-alpha.c:6222
- #, c-format
- msgid "STA_LI (stack literal)\n"
- msgstr ""
-
--#: vms-alpha.c:6224
-+#: vms-alpha.c:6225
- #, c-format
- msgid "STA_MOD (stack module)\n"
- msgstr ""
-
--#: vms-alpha.c:6227
-+#: vms-alpha.c:6228
- #, c-format
- msgid "STA_CKARG (compare procedure argument)\n"
- msgstr ""
-
--#: vms-alpha.c:6231
-+#: vms-alpha.c:6232
- #, c-format
- msgid "STO_B (store byte)\n"
- msgstr ""
-
--#: vms-alpha.c:6234
-+#: vms-alpha.c:6235
- #, c-format
- msgid "STO_W (store word)\n"
- msgstr ""
-
--#: vms-alpha.c:6237
-+#: vms-alpha.c:6238
- #, c-format
- msgid "STO_LW (store longword)\n"
- msgstr ""
-
--#: vms-alpha.c:6240
-+#: vms-alpha.c:6241
- #, c-format
- msgid "STO_QW (store quadword)\n"
- msgstr ""
-
--#: vms-alpha.c:6246
-+#: vms-alpha.c:6247
- #, c-format
- msgid "STO_IMMR (store immediate repeat) %u bytes\n"
- msgstr ""
-
--#: vms-alpha.c:6253
-+#: vms-alpha.c:6254
- #, c-format
- msgid "STO_GBL (store global) %.*s\n"
- msgstr ""
-
--#: vms-alpha.c:6257
-+#: vms-alpha.c:6258
- #, c-format
- msgid "STO_CA (store code address) %.*s\n"
- msgstr ""
-
--#: vms-alpha.c:6261
-+#: vms-alpha.c:6262
- #, c-format
- msgid "STO_RB (store relative branch)\n"
- msgstr ""
-
--#: vms-alpha.c:6264
-+#: vms-alpha.c:6265
- #, c-format
- msgid "STO_AB (store absolute branch)\n"
- msgstr ""
-
--#: vms-alpha.c:6267
-+#: vms-alpha.c:6268
- #, c-format
- msgid "STO_OFF (store offset to psect)\n"
- msgstr ""
-
--#: vms-alpha.c:6273
-+#: vms-alpha.c:6274
- #, c-format
- msgid "STO_IMM (store immediate) %u bytes\n"
- msgstr ""
-
--#: vms-alpha.c:6280
-+#: vms-alpha.c:6281
- #, c-format
- msgid "STO_GBL_LW (store global longword) %.*s\n"
- msgstr ""
-
--#: vms-alpha.c:6284
-+#: vms-alpha.c:6285
- #, c-format
- msgid "STO_OFF (store LP with procedure signature)\n"
- msgstr ""
-
--#: vms-alpha.c:6287
-+#: vms-alpha.c:6288
- #, c-format
- msgid "STO_BR_GBL (store branch global) *todo*\n"
- msgstr ""
-
--#: vms-alpha.c:6290
-+#: vms-alpha.c:6291
- #, c-format
- msgid "STO_BR_PS (store branch psect + offset) *todo*\n"
- msgstr ""
-
--#: vms-alpha.c:6294
-+#: vms-alpha.c:6295
- #, c-format
- msgid "OPR_NOP (no-operation)\n"
- msgstr ""
-
--#: vms-alpha.c:6297
-+#: vms-alpha.c:6298
- #, c-format
- msgid "OPR_ADD (add)\n"
- msgstr ""
-
--#: vms-alpha.c:6300
-+#: vms-alpha.c:6301
- #, c-format
- msgid "OPR_SUB (subtract)\n"
- msgstr ""
-
--#: vms-alpha.c:6303
-+#: vms-alpha.c:6304
- #, c-format
- msgid "OPR_MUL (multiply)\n"
- msgstr ""
-
--#: vms-alpha.c:6306
-+#: vms-alpha.c:6307
- #, c-format
- msgid "OPR_DIV (divide)\n"
- msgstr ""
-
--#: vms-alpha.c:6309
-+#: vms-alpha.c:6310
- #, c-format
- msgid "OPR_AND (logical and)\n"
- msgstr ""
-
--#: vms-alpha.c:6312
-+#: vms-alpha.c:6313
- #, c-format
- msgid "OPR_IOR (logical inclusive or)\n"
- msgstr ""
-
--#: vms-alpha.c:6315
-+#: vms-alpha.c:6316
- #, c-format
- msgid "OPR_EOR (logical exclusive or)\n"
- msgstr ""
-
--#: vms-alpha.c:6318
-+#: vms-alpha.c:6319
- #, c-format
- msgid "OPR_NEG (negate)\n"
- msgstr ""
-
--#: vms-alpha.c:6321
-+#: vms-alpha.c:6322
- #, c-format
- msgid "OPR_COM (complement)\n"
- msgstr ""
-
--#: vms-alpha.c:6324
-+#: vms-alpha.c:6325
- #, c-format
- msgid "OPR_INSV (insert field)\n"
- msgstr ""
-
--#: vms-alpha.c:6327
-+#: vms-alpha.c:6328
- #, c-format
- msgid "OPR_ASH (arithmetic shift)\n"
- msgstr ""
-
--#: vms-alpha.c:6330
-+#: vms-alpha.c:6331
- #, c-format
- msgid "OPR_USH (unsigned shift)\n"
- msgstr ""
-
--#: vms-alpha.c:6333
-+#: vms-alpha.c:6334
- #, c-format
- msgid "OPR_ROT (rotate)\n"
- msgstr ""
-
--#: vms-alpha.c:6336
-+#: vms-alpha.c:6337
- #, c-format
- msgid "OPR_SEL (select)\n"
- msgstr ""
-
--#: vms-alpha.c:6339
-+#: vms-alpha.c:6340
- #, c-format
- msgid "OPR_REDEF (redefine symbol to curr location)\n"
- msgstr ""
-
--#: vms-alpha.c:6342
-+#: vms-alpha.c:6343
- #, c-format
- msgid "OPR_REDEF (define a literal)\n"
- msgstr ""
-
--#: vms-alpha.c:6346
-+#: vms-alpha.c:6347
- #, c-format
- msgid "STC_LP (store cond linkage pair)\n"
- msgstr ""
-
--#: vms-alpha.c:6350
-+#: vms-alpha.c:6351
- #, c-format
- msgid "STC_LP_PSB (store cond linkage pair + signature)\n"
- msgstr ""
-
--#: vms-alpha.c:6352
-+#: vms-alpha.c:6353
- #, c-format
- msgid " linkage index: %u, procedure: %.*s\n"
- msgstr ""
-
--#: vms-alpha.c:6355
-+#: vms-alpha.c:6356
- #, c-format
- msgid " signature: %.*s\n"
- msgstr ""
-
--#: vms-alpha.c:6358
-+#: vms-alpha.c:6359
- #, c-format
- msgid "STC_GBL (store cond global)\n"
- msgstr ""
-
--#: vms-alpha.c:6360
-+#: vms-alpha.c:6361
- #, c-format
- msgid " linkage index: %u, global: %.*s\n"
- msgstr ""
-
--#: vms-alpha.c:6364
-+#: vms-alpha.c:6365
- #, c-format
- msgid "STC_GCA (store cond code address)\n"
- msgstr ""
-
--#: vms-alpha.c:6366
-+#: vms-alpha.c:6367
- #, c-format
- msgid " linkage index: %u, procedure name: %.*s\n"
- msgstr ""
-
--#: vms-alpha.c:6370
-+#: vms-alpha.c:6371
- #, c-format
- msgid "STC_PS (store cond psect + offset)\n"
- msgstr ""
-
--#: vms-alpha.c:6373
-+#: vms-alpha.c:6374
- #, c-format
- msgid " linkage index: %u, psect: %u, offset: 0x%08x %08x\n"
- msgstr ""
-
--#: vms-alpha.c:6380
-+#: vms-alpha.c:6381
- #, c-format
- msgid "STC_NOP_GBL (store cond NOP at global addr)\n"
- msgstr ""
-
--#: vms-alpha.c:6384
-+#: vms-alpha.c:6385
- #, c-format
- msgid "STC_NOP_PS (store cond NOP at psect + offset)\n"
- msgstr ""
-
--#: vms-alpha.c:6388
-+#: vms-alpha.c:6389
- #, c-format
- msgid "STC_BSR_GBL (store cond BSR at global addr)\n"
- msgstr ""
-
--#: vms-alpha.c:6392
-+#: vms-alpha.c:6393
- #, c-format
- msgid "STC_BSR_PS (store cond BSR at psect + offset)\n"
- msgstr ""
-
--#: vms-alpha.c:6396
-+#: vms-alpha.c:6397
- #, c-format
- msgid "STC_LDA_GBL (store cond LDA at global addr)\n"
- msgstr ""
-
--#: vms-alpha.c:6400
-+#: vms-alpha.c:6401
- #, c-format
- msgid "STC_LDA_PS (store cond LDA at psect + offset)\n"
- msgstr ""
-
--#: vms-alpha.c:6404
-+#: vms-alpha.c:6405
- #, c-format
- msgid "STC_BOH_GBL (store cond BOH at global addr)\n"
- msgstr ""
-
--#: vms-alpha.c:6408
-+#: vms-alpha.c:6409
- #, c-format
- msgid "STC_BOH_PS (store cond BOH at psect + offset)\n"
- msgstr ""
-
--#: vms-alpha.c:6413
-+#: vms-alpha.c:6414
- #, c-format
- msgid "STC_NBH_GBL (store cond or hint at global addr)\n"
- msgstr ""
-
--#: vms-alpha.c:6417
-+#: vms-alpha.c:6418
- #, c-format
- msgid "STC_NBH_PS (store cond or hint at psect + offset)\n"
- msgstr ""
-
--#: vms-alpha.c:6421
-+#: vms-alpha.c:6422
- #, c-format
- msgid "CTL_SETRB (set relocation base)\n"
- msgstr ""
-
--#: vms-alpha.c:6427
-+#: vms-alpha.c:6428
- #, c-format
- msgid "CTL_AUGRB (augment relocation base) %u\n"
- msgstr ""
-
--#: vms-alpha.c:6431
-+#: vms-alpha.c:6432
- #, c-format
- msgid "CTL_DFLOC (define location)\n"
- msgstr ""
-
--#: vms-alpha.c:6434
-+#: vms-alpha.c:6435
- #, c-format
- msgid "CTL_STLOC (set location)\n"
- msgstr ""
-
--#: vms-alpha.c:6437
-+#: vms-alpha.c:6438
- #, c-format
- msgid "CTL_STKDL (stack defined location)\n"
- msgstr ""
-
--#: vms-alpha.c:6440 vms-alpha.c:6864 vms-alpha.c:6990
-+#: vms-alpha.c:6441 vms-alpha.c:6865 vms-alpha.c:6991
- #, c-format
- msgid "*unhandled*\n"
- msgstr ""
-
--#: vms-alpha.c:6470 vms-alpha.c:6509
-+#: vms-alpha.c:6471 vms-alpha.c:6510
- #, c-format
- msgid "cannot read GST record length\n"
- msgstr ""
-
- #. Ill-formed.
--#: vms-alpha.c:6491
-+#: vms-alpha.c:6492
- #, c-format
- msgid "cannot find EMH in first GST record\n"
- msgstr ""
-
--#: vms-alpha.c:6517
-+#: vms-alpha.c:6518
- #, c-format
- msgid "cannot read GST record header\n"
- msgstr ""
-
--#: vms-alpha.c:6530
-+#: vms-alpha.c:6531
- #, c-format
- msgid " corrupted GST\n"
- msgstr ""
-
--#: vms-alpha.c:6538
-+#: vms-alpha.c:6539
- #, c-format
- msgid "cannot read GST record\n"
- msgstr ""
-
--#: vms-alpha.c:6567
-+#: vms-alpha.c:6568
- #, c-format
- msgid " unhandled EOBJ record type %u\n"
- msgstr ""
-
--#: vms-alpha.c:6591
-+#: vms-alpha.c:6592
- #, c-format
- msgid " bitcount: %u, base addr: 0x%08x\n"
- msgstr ""
-
--#: vms-alpha.c:6605
-+#: vms-alpha.c:6606
- #, c-format
- msgid " bitmap: 0x%08x (count: %u):\n"
- msgstr ""
-
--#: vms-alpha.c:6612
-+#: vms-alpha.c:6613
- #, c-format
- msgid " %08x"
- msgstr ""
-
--#: vms-alpha.c:6638
-+#: vms-alpha.c:6639
- #, c-format
- msgid " image %u (%u entries)\n"
- msgstr ""
-
--#: vms-alpha.c:6644
-+#: vms-alpha.c:6645
- #, c-format
- msgid " offset: 0x%08x, val: 0x%08x\n"
- msgstr ""
-
--#: vms-alpha.c:6666
-+#: vms-alpha.c:6667
- #, c-format
- msgid " image %u (%u entries), offsets:\n"
- msgstr ""
-
--#: vms-alpha.c:6673
-+#: vms-alpha.c:6674
- #, c-format
- msgid " 0x%08x"
- msgstr ""
-
- #. 64 bits.
--#: vms-alpha.c:6795
-+#: vms-alpha.c:6796
- #, c-format
- msgid "64 bits *unhandled*\n"
- msgstr ""
-
--#: vms-alpha.c:6800
-+#: vms-alpha.c:6801
- #, c-format
- msgid "class: %u, dtype: %u, length: %u, pointer: 0x%08x\n"
- msgstr ""
-
--#: vms-alpha.c:6811
-+#: vms-alpha.c:6812
- #, c-format
- msgid "non-contiguous array of %s\n"
- msgstr ""
-
--#: vms-alpha.c:6816
-+#: vms-alpha.c:6817
- #, c-format
- msgid "dimct: %u, aflags: 0x%02x, digits: %u, scale: %u\n"
- msgstr ""
-
--#: vms-alpha.c:6821
-+#: vms-alpha.c:6822
- #, c-format
- msgid "arsize: %u, a0: 0x%08x\n"
- msgstr ""
-
--#: vms-alpha.c:6825
-+#: vms-alpha.c:6826
- #, c-format
- msgid "Strides:\n"
- msgstr ""
-
--#: vms-alpha.c:6835
-+#: vms-alpha.c:6836
- #, c-format
- msgid "Bounds:\n"
- msgstr ""
-
--#: vms-alpha.c:6841
-+#: vms-alpha.c:6842
- #, c-format
- msgid "[%u]: Lower: %u, upper: %u\n"
- msgstr ""
-
--#: vms-alpha.c:6853
-+#: vms-alpha.c:6854
- #, c-format
- msgid "unaligned bit-string of %s\n"
- msgstr ""
-
--#: vms-alpha.c:6858
-+#: vms-alpha.c:6859
- #, c-format
- msgid "base: %u, pos: %u\n"
- msgstr ""
-
--#: vms-alpha.c:6879
-+#: vms-alpha.c:6880
- #, c-format
- msgid "vflags: 0x%02x, value: 0x%08x "
- msgstr ""
-
--#: vms-alpha.c:6885
-+#: vms-alpha.c:6886
- #, c-format
- msgid "(no value)\n"
- msgstr ""
-
--#: vms-alpha.c:6888
-+#: vms-alpha.c:6889
- #, c-format
- msgid "(not active)\n"
- msgstr ""
-
--#: vms-alpha.c:6891
-+#: vms-alpha.c:6892
- #, c-format
- msgid "(not allocated)\n"
- msgstr ""
-
--#: vms-alpha.c:6894
-+#: vms-alpha.c:6895
- #, c-format
- msgid "(descriptor)\n"
- msgstr ""
-
--#: vms-alpha.c:6898
-+#: vms-alpha.c:6899
- #, c-format
- msgid "(trailing value)\n"
- msgstr ""
-
--#: vms-alpha.c:6901
-+#: vms-alpha.c:6902
- #, c-format
- msgid "(value spec follows)\n"
- msgstr ""
-
--#: vms-alpha.c:6904
-+#: vms-alpha.c:6905
- #, c-format
- msgid "(at bit offset %u)\n"
- msgstr ""
-
--#: vms-alpha.c:6908
-+#: vms-alpha.c:6909
- #, c-format
- msgid "(reg: %u, disp: %u, indir: %u, kind: "
- msgstr ""
-
--#: vms-alpha.c:6915
-+#: vms-alpha.c:6916
- msgid "literal"
- msgstr ""
-
--#: vms-alpha.c:6918
-+#: vms-alpha.c:6919
- msgid "address"
- msgstr ""
-
--#: vms-alpha.c:6921
-+#: vms-alpha.c:6922
- msgid "desc"
- msgstr ""
-
--#: vms-alpha.c:6924
-+#: vms-alpha.c:6925
- msgid "reg"
- msgstr ""
-
--#: vms-alpha.c:6941
-+#: vms-alpha.c:6942
- #, c-format
- msgid "len: %2u, kind: %2u "
- msgstr ""
-
--#: vms-alpha.c:6947
-+#: vms-alpha.c:6948
- #, c-format
- msgid "atomic, type=0x%02x %s\n"
- msgstr ""
-
--#: vms-alpha.c:6951
-+#: vms-alpha.c:6952
- #, c-format
- msgid "indirect, defined at 0x%08x\n"
- msgstr ""
-
--#: vms-alpha.c:6955
-+#: vms-alpha.c:6956
- #, c-format
- msgid "typed pointer\n"
- msgstr ""
-
--#: vms-alpha.c:6959
-+#: vms-alpha.c:6960
- #, c-format
- msgid "pointer\n"
- msgstr ""
-
--#: vms-alpha.c:6967
-+#: vms-alpha.c:6968
- #, c-format
- msgid "array, dim: %u, bitmap: "
- msgstr ""
-
--#: vms-alpha.c:6974
-+#: vms-alpha.c:6975
- #, c-format
- msgid "array descriptor:\n"
- msgstr ""
-
--#: vms-alpha.c:6981
-+#: vms-alpha.c:6982
- #, c-format
- msgid "type spec for element:\n"
- msgstr ""
-
--#: vms-alpha.c:6983
-+#: vms-alpha.c:6984
- #, c-format
- msgid "type spec for subscript %u:\n"
- msgstr ""
-
--#: vms-alpha.c:7001
-+#: vms-alpha.c:7002
- #, c-format
- msgid "Debug symbol table:\n"
- msgstr ""
-
--#: vms-alpha.c:7012
-+#: vms-alpha.c:7013
- #, c-format
- msgid "cannot read DST header\n"
- msgstr ""
-
--#: vms-alpha.c:7018
-+#: vms-alpha.c:7019
- #, c-format
- msgid " type: %3u, len: %3u (at 0x%08x): "
- msgstr ""
-
--#: vms-alpha.c:7032
-+#: vms-alpha.c:7033
- #, c-format
- msgid "cannot read DST symbol\n"
- msgstr ""
-
--#: vms-alpha.c:7075
-+#: vms-alpha.c:7076
- #, c-format
- msgid "standard data: %s\n"
- msgstr ""
-
--#: vms-alpha.c:7078 vms-alpha.c:7166
-+#: vms-alpha.c:7079 vms-alpha.c:7167
- #, c-format
- msgid " name: %.*s\n"
- msgstr ""
-
--#: vms-alpha.c:7085
-+#: vms-alpha.c:7086
- #, c-format
- msgid "modbeg\n"
- msgstr ""
-
--#: vms-alpha.c:7087
-+#: vms-alpha.c:7088
- #, c-format
- msgid " flags: %d, language: %u, major: %u, minor: %u\n"
- msgstr ""
-
--#: vms-alpha.c:7093 vms-alpha.c:7367
-+#: vms-alpha.c:7094 vms-alpha.c:7368
- #, c-format
- msgid " module name: %.*s\n"
- msgstr ""
-
--#: vms-alpha.c:7096
-+#: vms-alpha.c:7097
- #, c-format
- msgid " compiler : %.*s\n"
- msgstr ""
-
--#: vms-alpha.c:7101
-+#: vms-alpha.c:7102
- #, c-format
- msgid "modend\n"
- msgstr ""
-
--#: vms-alpha.c:7108
-+#: vms-alpha.c:7109
- msgid "rtnbeg\n"
- msgstr ""
-
--#: vms-alpha.c:7110
-+#: vms-alpha.c:7111
- #, c-format
- msgid " flags: %u, address: 0x%08x, pd-address: 0x%08x\n"
- msgstr ""
-
--#: vms-alpha.c:7115
-+#: vms-alpha.c:7116
- #, c-format
- msgid " routine name: %.*s\n"
- msgstr ""
-
--#: vms-alpha.c:7123
-+#: vms-alpha.c:7124
- #, c-format
- msgid "rtnend: size 0x%08x\n"
- msgstr ""
-
--#: vms-alpha.c:7131
-+#: vms-alpha.c:7132
- #, c-format
- msgid "prolog: bkpt address 0x%08x\n"
- msgstr ""
-
--#: vms-alpha.c:7140
-+#: vms-alpha.c:7141
- #, c-format
- msgid "epilog: flags: %u, count: %u\n"
- msgstr ""
-
--#: vms-alpha.c:7150
-+#: vms-alpha.c:7151
- #, c-format
- msgid "blkbeg: address: 0x%08x, name: %.*s\n"
- msgstr ""
-
--#: vms-alpha.c:7159
-+#: vms-alpha.c:7160
- #, c-format
- msgid "blkend: size: 0x%08x\n"
- msgstr ""
-
--#: vms-alpha.c:7165
-+#: vms-alpha.c:7166
- #, c-format
- msgid "typspec (len: %u)\n"
- msgstr ""
-
--#: vms-alpha.c:7172
-+#: vms-alpha.c:7173
- #, c-format
- msgid "septyp, name: %.*s\n"
- msgstr ""
-
--#: vms-alpha.c:7181
-+#: vms-alpha.c:7182
- #, c-format
- msgid "recbeg: name: %.*s\n"
- msgstr ""
-
--#: vms-alpha.c:7183
-+#: vms-alpha.c:7184
- #, c-format
- msgid " len: %u bits\n"
- msgstr ""
-
--#: vms-alpha.c:7188
-+#: vms-alpha.c:7189
- #, c-format
- msgid "recend\n"
- msgstr ""
-
--#: vms-alpha.c:7192
-+#: vms-alpha.c:7193
- #, c-format
- msgid "enumbeg, len: %u, name: %.*s\n"
- msgstr ""
-
--#: vms-alpha.c:7196
-+#: vms-alpha.c:7197
- #, c-format
- msgid "enumelt, name: %.*s\n"
- msgstr ""
-
--#: vms-alpha.c:7200
-+#: vms-alpha.c:7201
- #, c-format
- msgid "enumend\n"
- msgstr ""
-
--#: vms-alpha.c:7205
-+#: vms-alpha.c:7206
- #, c-format
- msgid "label, name: %.*s\n"
- msgstr ""
-
--#: vms-alpha.c:7207
-+#: vms-alpha.c:7208
- #, c-format
- msgid " address: 0x%08x\n"
- msgstr ""
-
--#: vms-alpha.c:7217
-+#: vms-alpha.c:7218
- #, c-format
- msgid "discontiguous range (nbr: %u)\n"
- msgstr ""
-
--#: vms-alpha.c:7220
-+#: vms-alpha.c:7221
- #, c-format
- msgid " address: 0x%08x, size: %u\n"
- msgstr ""
-
--#: vms-alpha.c:7230
-+#: vms-alpha.c:7231
- #, c-format
- msgid "line num (len: %u)\n"
- msgstr ""
-
--#: vms-alpha.c:7247
-+#: vms-alpha.c:7248
- #, c-format
- msgid "delta_pc_w %u\n"
- msgstr ""
-
--#: vms-alpha.c:7254
-+#: vms-alpha.c:7255
- #, c-format
- msgid "incr_linum(b): +%u\n"
- msgstr ""
-
--#: vms-alpha.c:7260
-+#: vms-alpha.c:7261
- #, c-format
- msgid "incr_linum_w: +%u\n"
- msgstr ""
-
--#: vms-alpha.c:7266
-+#: vms-alpha.c:7267
- #, c-format
- msgid "incr_linum_l: +%u\n"
- msgstr ""
-
--#: vms-alpha.c:7272
-+#: vms-alpha.c:7273
- #, c-format
- msgid "set_line_num(w) %u\n"
- msgstr ""
-
--#: vms-alpha.c:7277
-+#: vms-alpha.c:7278
- #, c-format
- msgid "set_line_num_b %u\n"
- msgstr ""
-
--#: vms-alpha.c:7282
-+#: vms-alpha.c:7283
- #, c-format
- msgid "set_line_num_l %u\n"
- msgstr ""
-
--#: vms-alpha.c:7287
-+#: vms-alpha.c:7288
- #, c-format
- msgid "set_abs_pc: 0x%08x\n"
- msgstr ""
-
--#: vms-alpha.c:7291
-+#: vms-alpha.c:7292
- #, c-format
- msgid "delta_pc_l: +0x%08x\n"
- msgstr ""
-
--#: vms-alpha.c:7296
-+#: vms-alpha.c:7297
- #, c-format
- msgid "term(b): 0x%02x"
- msgstr ""
-
--#: vms-alpha.c:7298
-+#: vms-alpha.c:7299
- #, c-format
- msgid " pc: 0x%08x\n"
- msgstr ""
-
--#: vms-alpha.c:7303
-+#: vms-alpha.c:7304
- #, c-format
- msgid "term_w: 0x%04x"
- msgstr ""
-
--#: vms-alpha.c:7305
-+#: vms-alpha.c:7306
- #, c-format
- msgid " pc: 0x%08x\n"
- msgstr ""
-
--#: vms-alpha.c:7311
-+#: vms-alpha.c:7312
- #, c-format
- msgid "delta pc +%-4d"
- msgstr ""
-
--#: vms-alpha.c:7315
-+#: vms-alpha.c:7316
- #, c-format
- msgid " pc: 0x%08x line: %5u\n"
- msgstr ""
-
--#: vms-alpha.c:7320
-+#: vms-alpha.c:7321
- #, c-format
- msgid " *unhandled* cmd %u\n"
- msgstr ""
-
--#: vms-alpha.c:7335
-+#: vms-alpha.c:7336
- #, c-format
- msgid "source (len: %u)\n"
- msgstr ""
-
--#: vms-alpha.c:7350
-+#: vms-alpha.c:7351
- #, c-format
- msgid " declfile: len: %u, flags: %u, fileid: %u\n"
- msgstr ""
-
--#: vms-alpha.c:7355
-+#: vms-alpha.c:7356
- #, c-format
- msgid " rms: cdt: 0x%08x %08x, ebk: 0x%08x, ffb: 0x%04x, rfo: %u\n"
- msgstr ""
-
--#: vms-alpha.c:7364
-+#: vms-alpha.c:7365
- #, c-format
- msgid " filename : %.*s\n"
- msgstr ""
-
--#: vms-alpha.c:7373
-+#: vms-alpha.c:7374
- #, c-format
- msgid " setfile %u\n"
- msgstr ""
-
--#: vms-alpha.c:7378 vms-alpha.c:7383
-+#: vms-alpha.c:7379 vms-alpha.c:7384
- #, c-format
- msgid " setrec %u\n"
- msgstr ""
-
--#: vms-alpha.c:7388 vms-alpha.c:7393
-+#: vms-alpha.c:7389 vms-alpha.c:7394
- #, c-format
- msgid " setlnum %u\n"
- msgstr ""
-
--#: vms-alpha.c:7398 vms-alpha.c:7403
-+#: vms-alpha.c:7399 vms-alpha.c:7404
- #, c-format
- msgid " deflines %u\n"
- msgstr ""
-
--#: vms-alpha.c:7407
-+#: vms-alpha.c:7408
- #, c-format
- msgid " formfeed\n"
- msgstr ""
-
--#: vms-alpha.c:7411
-+#: vms-alpha.c:7412
- #, c-format
- msgid " *unhandled* cmd %u\n"
- msgstr ""
-
--#: vms-alpha.c:7423
-+#: vms-alpha.c:7424
- #, c-format
- msgid "*unhandled* dst type %u\n"
- msgstr ""
-
--#: vms-alpha.c:7455
-+#: vms-alpha.c:7456
- #, c-format
- msgid "cannot read EIHD\n"
- msgstr ""
-
--#: vms-alpha.c:7459
-+#: vms-alpha.c:7460
- #, c-format
- msgid "EIHD: (size: %u, nbr blocks: %u)\n"
- msgstr ""
-
--#: vms-alpha.c:7463
-+#: vms-alpha.c:7464
- #, c-format
- msgid " majorid: %u, minorid: %u\n"
- msgstr ""
-
--#: vms-alpha.c:7471
-+#: vms-alpha.c:7472
- msgid "executable"
- msgstr ""
-
--#: vms-alpha.c:7474
-+#: vms-alpha.c:7475
- msgid "linkable image"
- msgstr ""
-
--#: vms-alpha.c:7481
-+#: vms-alpha.c:7482
- #, c-format
- msgid " image type: %u (%s)"
- msgstr ""
-
--#: vms-alpha.c:7487
-+#: vms-alpha.c:7488
- msgid "native"
- msgstr ""
-
--#: vms-alpha.c:7490
-+#: vms-alpha.c:7491
- msgid "CLI"
- msgstr ""
-
--#: vms-alpha.c:7497
-+#: vms-alpha.c:7498
- #, c-format
- msgid ", subtype: %u (%s)\n"
- msgstr ""
-
--#: vms-alpha.c:7504
-+#: vms-alpha.c:7505
- #, c-format
- msgid " offsets: isd: %u, activ: %u, symdbg: %u, imgid: %u, patch: %u\n"
- msgstr ""
-
--#: vms-alpha.c:7508
-+#: vms-alpha.c:7509
- #, c-format
- msgid " fixup info rva: "
- msgstr ""
-
--#: vms-alpha.c:7510
-+#: vms-alpha.c:7511
- #, c-format
- msgid ", symbol vector rva: "
- msgstr ""
-
--#: vms-alpha.c:7513
-+#: vms-alpha.c:7514
- #, c-format
- msgid ""
- "\n"
- " version array off: %u\n"
- msgstr ""
-
--#: vms-alpha.c:7518
-+#: vms-alpha.c:7519
- #, c-format
- msgid " img I/O count: %u, nbr channels: %u, req pri: %08x%08x\n"
- msgstr ""
-
--#: vms-alpha.c:7524
-+#: vms-alpha.c:7525
- #, c-format
- msgid " linker flags: %08x:"
- msgstr ""
-
--#: vms-alpha.c:7555
-+#: vms-alpha.c:7556
- #, c-format
- msgid " ident: 0x%08x, sysver: 0x%08x, match ctrl: %u, symvect_size: %u\n"
- msgstr ""
-
--#: vms-alpha.c:7561
-+#: vms-alpha.c:7562
- #, c-format
- msgid " BPAGE: %u"
- msgstr ""
-
--#: vms-alpha.c:7568
-+#: vms-alpha.c:7569
- #, c-format
- msgid ", ext fixup offset: %u, no_opt psect off: %u"
- msgstr ""
-
--#: vms-alpha.c:7571
-+#: vms-alpha.c:7572
- #, c-format
- msgid ", alias: %u\n"
- msgstr ""
-
--#: vms-alpha.c:7579
-+#: vms-alpha.c:7580
- #, c-format
- msgid "system version array information:\n"
- msgstr ""
-
--#: vms-alpha.c:7583
-+#: vms-alpha.c:7584
- #, c-format
- msgid "cannot read EIHVN header\n"
- msgstr ""
-
--#: vms-alpha.c:7593
-+#: vms-alpha.c:7594
- #, c-format
- msgid "cannot read EIHVN version\n"
- msgstr ""
-
--#: vms-alpha.c:7596
-+#: vms-alpha.c:7597
- #, c-format
- msgid " %02u "
- msgstr ""
-
--#: vms-alpha.c:7600
-+#: vms-alpha.c:7601
- msgid "BASE_IMAGE "
- msgstr ""
-
--#: vms-alpha.c:7603
-+#: vms-alpha.c:7604
- msgid "MEMORY_MANAGEMENT"
- msgstr ""
-
--#: vms-alpha.c:7606
-+#: vms-alpha.c:7607
- msgid "IO "
- msgstr ""
-
--#: vms-alpha.c:7609
-+#: vms-alpha.c:7610
- msgid "FILES_VOLUMES "
- msgstr ""
-
--#: vms-alpha.c:7612
-+#: vms-alpha.c:7613
- msgid "PROCESS_SCHED "
- msgstr ""
-
--#: vms-alpha.c:7615
-+#: vms-alpha.c:7616
- msgid "SYSGEN "
- msgstr ""
-
--#: vms-alpha.c:7618
-+#: vms-alpha.c:7619
- msgid "CLUSTERS_LOCKMGR "
- msgstr ""
-
--#: vms-alpha.c:7621
-+#: vms-alpha.c:7622
- msgid "LOGICAL_NAMES "
- msgstr ""
-
--#: vms-alpha.c:7624
-+#: vms-alpha.c:7625
- msgid "SECURITY "
- msgstr ""
-
--#: vms-alpha.c:7627
-+#: vms-alpha.c:7628
- msgid "IMAGE_ACTIVATOR "
- msgstr ""
-
--#: vms-alpha.c:7630
-+#: vms-alpha.c:7631
- msgid "NETWORKS "
- msgstr ""
-
--#: vms-alpha.c:7633
-+#: vms-alpha.c:7634
- msgid "COUNTERS "
- msgstr ""
-
--#: vms-alpha.c:7636
-+#: vms-alpha.c:7637
- msgid "STABLE "
- msgstr ""
-
--#: vms-alpha.c:7639
-+#: vms-alpha.c:7640
- msgid "MISC "
- msgstr ""
-
--#: vms-alpha.c:7642
-+#: vms-alpha.c:7643
- msgid "CPU "
- msgstr ""
-
--#: vms-alpha.c:7645
-+#: vms-alpha.c:7646
- msgid "VOLATILE "
- msgstr ""
-
--#: vms-alpha.c:7648
-+#: vms-alpha.c:7649
- msgid "SHELL "
- msgstr ""
-
--#: vms-alpha.c:7651
-+#: vms-alpha.c:7652
- msgid "POSIX "
- msgstr ""
-
--#: vms-alpha.c:7654
-+#: vms-alpha.c:7655
- msgid "MULTI_PROCESSING "
- msgstr ""
-
--#: vms-alpha.c:7657
-+#: vms-alpha.c:7658
- msgid "GALAXY "
- msgstr ""
-
--#: vms-alpha.c:7660
-+#: vms-alpha.c:7661
- msgid "*unknown* "
- msgstr ""
-
--#: vms-alpha.c:7676 vms-alpha.c:7951
-+#: vms-alpha.c:7677 vms-alpha.c:7952
- #, c-format
- msgid "cannot read EIHA\n"
- msgstr ""
-
--#: vms-alpha.c:7679
-+#: vms-alpha.c:7680
- #, c-format
- msgid "Image activation: (size=%u)\n"
- msgstr ""
-
--#: vms-alpha.c:7682
-+#: vms-alpha.c:7683
- #, c-format
- msgid " First address : 0x%08x 0x%08x\n"
- msgstr ""
-
--#: vms-alpha.c:7686
-+#: vms-alpha.c:7687
- #, c-format
- msgid " Second address: 0x%08x 0x%08x\n"
- msgstr ""
-
--#: vms-alpha.c:7690
-+#: vms-alpha.c:7691
- #, c-format
- msgid " Third address : 0x%08x 0x%08x\n"
- msgstr ""
-
--#: vms-alpha.c:7694
-+#: vms-alpha.c:7695
- #, c-format
- msgid " Fourth address: 0x%08x 0x%08x\n"
- msgstr ""
-
--#: vms-alpha.c:7698
-+#: vms-alpha.c:7699
- #, c-format
- msgid " Shared image : 0x%08x 0x%08x\n"
- msgstr ""
-
--#: vms-alpha.c:7709
-+#: vms-alpha.c:7710
- #, c-format
- msgid "cannot read EIHI\n"
- msgstr ""
-
--#: vms-alpha.c:7713
-+#: vms-alpha.c:7714
- #, c-format
- msgid "Image identification: (major: %u, minor: %u)\n"
- msgstr ""
-
--#: vms-alpha.c:7716
-+#: vms-alpha.c:7717
- #, c-format
- msgid " image name : %.*s\n"
- msgstr ""
-
--#: vms-alpha.c:7718
-+#: vms-alpha.c:7719
- #, c-format
- msgid " link time : %s\n"
- msgstr ""
-
--#: vms-alpha.c:7720
-+#: vms-alpha.c:7721
- #, c-format
- msgid " image ident : %.*s\n"
- msgstr ""
-
--#: vms-alpha.c:7722
-+#: vms-alpha.c:7723
- #, c-format
- msgid " linker ident : %.*s\n"
- msgstr ""
-
--#: vms-alpha.c:7724
-+#: vms-alpha.c:7725
- #, c-format
- msgid " image build ident: %.*s\n"
- msgstr ""
-
--#: vms-alpha.c:7734
-+#: vms-alpha.c:7735
- #, c-format
- msgid "cannot read EIHS\n"
- msgstr ""
-
--#: vms-alpha.c:7738
-+#: vms-alpha.c:7739
- #, c-format
- msgid "Image symbol & debug table: (major: %u, minor: %u)\n"
- msgstr ""
-
--#: vms-alpha.c:7744
-+#: vms-alpha.c:7745
- #, c-format
- msgid " debug symbol table : vbn: %u, size: %u (0x%x)\n"
- msgstr ""
-
--#: vms-alpha.c:7749
-+#: vms-alpha.c:7750
- #, c-format
- msgid " global symbol table: vbn: %u, records: %u\n"
- msgstr ""
-
--#: vms-alpha.c:7754
-+#: vms-alpha.c:7755
- #, c-format
- msgid " debug module table : vbn: %u, size: %u\n"
- msgstr ""
-
--#: vms-alpha.c:7767
-+#: vms-alpha.c:7768
- #, c-format
- msgid "cannot read EISD\n"
- msgstr ""
-
--#: vms-alpha.c:7778
-+#: vms-alpha.c:7779
- #, c-format
- msgid ""
- "Image section descriptor: (major: %u, minor: %u, size: %u, offset: %u)\n"
- msgstr ""
-
--#: vms-alpha.c:7786
-+#: vms-alpha.c:7787
- #, c-format
- msgid " section: base: 0x%08x%08x size: 0x%08x\n"
- msgstr ""
-
--#: vms-alpha.c:7791
-+#: vms-alpha.c:7792
- #, c-format
- msgid " flags: 0x%04x"
- msgstr ""
-
--#: vms-alpha.c:7829
-+#: vms-alpha.c:7830
- #, c-format
- msgid " vbn: %u, pfc: %u, matchctl: %u type: %u ("
- msgstr ""
-
--#: vms-alpha.c:7835
-+#: vms-alpha.c:7836
- msgid "NORMAL"
- msgstr ""
-
--#: vms-alpha.c:7838
-+#: vms-alpha.c:7839
- msgid "SHRFXD"
- msgstr ""
-
--#: vms-alpha.c:7841
-+#: vms-alpha.c:7842
- msgid "PRVFXD"
- msgstr ""
-
--#: vms-alpha.c:7844
-+#: vms-alpha.c:7845
- msgid "SHRPIC"
- msgstr ""
-
--#: vms-alpha.c:7847
-+#: vms-alpha.c:7848
- msgid "PRVPIC"
- msgstr ""
-
--#: vms-alpha.c:7850
-+#: vms-alpha.c:7851
- msgid "USRSTACK"
- msgstr ""
-
--#: vms-alpha.c:7856
-+#: vms-alpha.c:7857
- msgid ")\n"
- msgstr ""
-
--#: vms-alpha.c:7859
-+#: vms-alpha.c:7860
- #, c-format
- msgid " ident: 0x%08x, name: %.*s\n"
- msgstr ""
-
--#: vms-alpha.c:7869
-+#: vms-alpha.c:7870
- #, c-format
- msgid "cannot read DMT\n"
- msgstr ""
-
--#: vms-alpha.c:7873
-+#: vms-alpha.c:7874
- #, c-format
- msgid "Debug module table:\n"
- msgstr ""
-
--#: vms-alpha.c:7882
-+#: vms-alpha.c:7883
- #, c-format
- msgid "cannot read DMT header\n"
- msgstr ""
-
--#: vms-alpha.c:7888
-+#: vms-alpha.c:7889
- #, c-format
- msgid " module offset: 0x%08x, size: 0x%08x, (%u psects)\n"
- msgstr ""
-
--#: vms-alpha.c:7898
-+#: vms-alpha.c:7899
- #, c-format
- msgid "cannot read DMT psect\n"
- msgstr ""
-
--#: vms-alpha.c:7902
-+#: vms-alpha.c:7903
- #, c-format
- msgid " psect start: 0x%08x, length: %u\n"
- msgstr ""
-
--#: vms-alpha.c:7915
-+#: vms-alpha.c:7916
- #, c-format
- msgid "cannot read DST\n"
- msgstr ""
-
--#: vms-alpha.c:7925
-+#: vms-alpha.c:7926
- #, c-format
- msgid "cannot read GST\n"
- msgstr ""
-
--#: vms-alpha.c:7929
-+#: vms-alpha.c:7930
- #, c-format
- msgid "Global symbol table:\n"
- msgstr ""
-
--#: vms-alpha.c:7958
-+#: vms-alpha.c:7959
- #, c-format
- msgid "Image activator fixup: (major: %u, minor: %u)\n"
- msgstr ""
-
--#: vms-alpha.c:7962
-+#: vms-alpha.c:7963
- #, c-format
- msgid " iaflink : 0x%08x %08x\n"
- msgstr ""
-
--#: vms-alpha.c:7966
-+#: vms-alpha.c:7967
- #, c-format
- msgid " fixuplnk: 0x%08x %08x\n"
- msgstr ""
-
--#: vms-alpha.c:7969
-+#: vms-alpha.c:7970
- #, c-format
- msgid " size : %u\n"
- msgstr ""
-
--#: vms-alpha.c:7971
-+#: vms-alpha.c:7972
- #, c-format
- msgid " flags: 0x%08x\n"
- msgstr ""
-
--#: vms-alpha.c:7976
-+#: vms-alpha.c:7977
- #, c-format
- msgid " qrelfixoff: %5u, lrelfixoff: %5u\n"
- msgstr ""
-
--#: vms-alpha.c:7981
-+#: vms-alpha.c:7982
- #, c-format
- msgid " qdotadroff: %5u, ldotadroff: %5u\n"
- msgstr ""
-
--#: vms-alpha.c:7986
-+#: vms-alpha.c:7987
- #, c-format
- msgid " codeadroff: %5u, lpfixoff : %5u\n"
- msgstr ""
-
--#: vms-alpha.c:7989
-+#: vms-alpha.c:7990
- #, c-format
- msgid " chgprtoff : %5u\n"
- msgstr ""
-
--#: vms-alpha.c:7993
-+#: vms-alpha.c:7994
- #, c-format
- msgid " shlstoff : %5u, shrimgcnt : %5u\n"
- msgstr ""
-
--#: vms-alpha.c:7996
-+#: vms-alpha.c:7997
- #, c-format
- msgid " shlextra : %5u, permctx : %5u\n"
- msgstr ""
-
--#: vms-alpha.c:7999
-+#: vms-alpha.c:8000
- #, c-format
- msgid " base_va : 0x%08x\n"
- msgstr ""
-
--#: vms-alpha.c:8001
-+#: vms-alpha.c:8002
- #, c-format
- msgid " lppsbfixoff: %5u\n"
- msgstr ""
-
--#: vms-alpha.c:8009
-+#: vms-alpha.c:8010
- #, c-format
- msgid " Shareable images:\n"
- msgstr ""
-
--#: vms-alpha.c:8014
-+#: vms-alpha.c:8015
- #, c-format
- msgid " %u: size: %u, flags: 0x%02x, name: %.*s\n"
- msgstr ""
-
--#: vms-alpha.c:8021
-+#: vms-alpha.c:8022
- #, c-format
- msgid " quad-word relocation fixups:\n"
- msgstr ""
-
--#: vms-alpha.c:8026
-+#: vms-alpha.c:8027
- #, c-format
- msgid " long-word relocation fixups:\n"
- msgstr ""
-
--#: vms-alpha.c:8031
-+#: vms-alpha.c:8032
- #, c-format
- msgid " quad-word .address reference fixups:\n"
- msgstr ""
-
--#: vms-alpha.c:8036
-+#: vms-alpha.c:8037
- #, c-format
- msgid " long-word .address reference fixups:\n"
- msgstr ""
-
--#: vms-alpha.c:8041
-+#: vms-alpha.c:8042
- #, c-format
- msgid " Code Address Reference Fixups:\n"
- msgstr ""
-
--#: vms-alpha.c:8046
-+#: vms-alpha.c:8047
- #, c-format
- msgid " Linkage Pairs Reference Fixups:\n"
- msgstr ""
-
--#: vms-alpha.c:8055
-+#: vms-alpha.c:8056
- #, c-format
- msgid " Change Protection (%u entries):\n"
- msgstr ""
-
--#: vms-alpha.c:8061
-+#: vms-alpha.c:8062
- #, c-format
- msgid " base: 0x%08x %08x, size: 0x%08x, prot: 0x%08x "
- msgstr ""
-
- #. FIXME: we do not yet support relocatable link. It is not obvious
- #. how to do it for debug infos.
--#: vms-alpha.c:8901
-+#: vms-alpha.c:8902
- msgid "%P: relocatable link is not supported\n"
- msgstr ""
-
--#: vms-alpha.c:8972
-+#: vms-alpha.c:8973
- #, c-format
--msgid "%P: multiple entry points: in modules %B and %B\n"
-+msgid "%P: multiple entry points: in modules %pB and %pB\n"
- msgstr ""
-
- #: vms-lib.c:1445
-@@ -8594,7 +8564,7 @@ msgstr ""
- #: peigen.c:1906 peigen.c:2103 pepigen.c:1906 pepigen.c:2103 pex64igen.c:1906
- #: pex64igen.c:2103
- #, c-format
--msgid "Warning, .pdata section size (%ld) is not a multiple of %d\n"
-+msgid "warning, .pdata section size (%ld) is not a multiple of %d\n"
- msgstr ""
-
- #: peigen.c:1910 peigen.c:2107 pepigen.c:1910 pepigen.c:2107 pex64igen.c:1910
-@@ -8795,82 +8765,92 @@ msgid ""
- "Characteristics 0x%x\n"
- msgstr ""
-
--#: peigen.c:2989 pepigen.c:2989 pex64igen.c:2989
-+#: peigen.c:2990 pepigen.c:2990 pex64igen.c:2990
- #, c-format
--msgid "%B: Data Directory size (%lx) exceeds space left in section (%Lx)"
-+msgid ""
-+"%pB: Data Directory size (%lx) exceeds space left in section (%<PRIx64>)"
- msgstr ""
-
--#: peigen.c:3019 pepigen.c:3019 pex64igen.c:3019
--msgid "Failed to update file offsets in debug directory"
-+#: peigen.c:3021 pepigen.c:3021 pex64igen.c:3021
-+msgid "failed to update file offsets in debug directory"
- msgstr ""
-
--#: peigen.c:3025 pepigen.c:3025 pex64igen.c:3025
--msgid "%B: Failed to read debug data section"
-+#: peigen.c:3027 pepigen.c:3027 pex64igen.c:3027
-+#, c-format
-+msgid "%pB: failed to read debug data section"
- msgstr ""
-
--#: peigen.c:3841 pepigen.c:3841 pex64igen.c:3841
-+#: peigen.c:3843 pepigen.c:3843 pex64igen.c:3843
- #, c-format
- msgid ".rsrc merge failure: duplicate string resource: %d"
- msgstr ""
-
--#: peigen.c:3976 pepigen.c:3976 pex64igen.c:3976
-+#: peigen.c:3978 pepigen.c:3978 pex64igen.c:3978
- msgid ".rsrc merge failure: multiple non-default manifests"
- msgstr ""
-
--#: peigen.c:3994 pepigen.c:3994 pex64igen.c:3994
-+#: peigen.c:3996 pepigen.c:3996 pex64igen.c:3996
- msgid ".rsrc merge failure: a directory matches a leaf"
- msgstr ""
-
--#: peigen.c:4036 pepigen.c:4036 pex64igen.c:4036
-+#: peigen.c:4038 pepigen.c:4038 pex64igen.c:4038
- msgid ".rsrc merge failure: duplicate leaf"
- msgstr ""
-
--#: peigen.c:4038 pepigen.c:4038 pex64igen.c:4038
-+#: peigen.c:4040 pepigen.c:4040 pex64igen.c:4040
- #, c-format
- msgid ".rsrc merge failure: duplicate leaf: %s"
- msgstr ""
-
--#: peigen.c:4104 pepigen.c:4104 pex64igen.c:4104
--msgid ".rsrc merge failure: dirs with differing characteristics\n"
-+#: peigen.c:4106 pepigen.c:4106 pex64igen.c:4106
-+msgid ".rsrc merge failure: dirs with differing characteristics"
- msgstr ""
-
--#: peigen.c:4111 pepigen.c:4111 pex64igen.c:4111
--msgid ".rsrc merge failure: differing directory versions\n"
-+#: peigen.c:4113 pepigen.c:4113 pex64igen.c:4113
-+msgid ".rsrc merge failure: differing directory versions"
- msgstr ""
-
- #. Corrupted .rsrc section - cannot merge.
--#: peigen.c:4228 pepigen.c:4228 pex64igen.c:4228
--msgid "%B: .rsrc merge failure: corrupt .rsrc section"
-+#: peigen.c:4230 pepigen.c:4230 pex64igen.c:4230
-+#, c-format
-+msgid "%pB: .rsrc merge failure: corrupt .rsrc section"
- msgstr ""
-
--#: peigen.c:4236 pepigen.c:4236 pex64igen.c:4236
--msgid "%B: .rsrc merge failure: unexpected .rsrc size"
-+#: peigen.c:4238 pepigen.c:4238 pex64igen.c:4238
-+#, c-format
-+msgid "%pB: .rsrc merge failure: unexpected .rsrc size"
- msgstr ""
-
--#: peigen.c:4375 pepigen.c:4375 pex64igen.c:4375
--msgid "%B: unable to fill in DataDictionary[1] because .idata$2 is missing"
-+#: peigen.c:4377 pepigen.c:4377 pex64igen.c:4377
-+#, c-format
-+msgid "%pB: unable to fill in DataDictionary[1] because .idata$2 is missing"
- msgstr ""
-
--#: peigen.c:4395 pepigen.c:4395 pex64igen.c:4395
--msgid "%B: unable to fill in DataDictionary[1] because .idata$4 is missing"
-+#: peigen.c:4397 pepigen.c:4397 pex64igen.c:4397
-+#, c-format
-+msgid "%pB: unable to fill in DataDictionary[1] because .idata$4 is missing"
- msgstr ""
-
--#: peigen.c:4416 pepigen.c:4416 pex64igen.c:4416
--msgid "%B: unable to fill in DataDictionary[12] because .idata$5 is missing"
-+#: peigen.c:4418 pepigen.c:4418 pex64igen.c:4418
-+#, c-format
-+msgid "%pB: unable to fill in DataDictionary[12] because .idata$5 is missing"
- msgstr ""
-
--#: peigen.c:4436 pepigen.c:4436 pex64igen.c:4436
-+#: peigen.c:4438 pepigen.c:4438 pex64igen.c:4438
-+#, c-format
- msgid ""
--"%B: unable to fill in DataDictionary[PE_IMPORT_ADDRESS_TABLE (12)] because ."
-+"%pB: unable to fill in DataDictionary[PE_IMPORT_ADDRESS_TABLE (12)] because ."
- "idata$6 is missing"
- msgstr ""
-
--#: peigen.c:4478 pepigen.c:4478 pex64igen.c:4478
-+#: peigen.c:4480 pepigen.c:4480 pex64igen.c:4480
-+#, c-format
- msgid ""
--"%B: unable to fill in DataDictionary[PE_IMPORT_ADDRESS_TABLE(12)] because ."
-+"%pB: unable to fill in DataDictionary[PE_IMPORT_ADDRESS_TABLE(12)] because ."
- "idata$6 is missing"
- msgstr ""
-
--#: peigen.c:4503 pepigen.c:4503 pex64igen.c:4503
--msgid "%B: unable to fill in DataDictionary[9] because __tls_used is missing"
-+#: peigen.c:4505 pepigen.c:4505 pex64igen.c:4505
-+#, c-format
-+msgid "%pB: unable to fill in DataDictionary[9] because __tls_used is missing"
- msgstr ""
-Index: git/bfd/ChangeLog
-===================================================================
---- git.orig/bfd/ChangeLog
-+++ git/bfd/ChangeLog
-@@ -1,5 +1,9 @@
- 2018-04-24 Nick Clifton <nickc@redhat.com>
-
-+ PR 23110
-+ * peXXigen.c (_bfd_XX_bfd_copy_private_bfd_data_common): Check for
-+ a negative PE_DEBUG_DATA size before iterating over the debug data.
-+
- PR 23113
- * elf.c (ignore_section_sym): Check for the output_section pointer
- being NULL before dereferencing it.
diff --git a/poky/meta/recipes-devtools/binutils/binutils/CVE-2018-10535.patch b/poky/meta/recipes-devtools/binutils/binutils/CVE-2018-10535.patch
deleted file mode 100644
index fa8fbd2ae..000000000
--- a/poky/meta/recipes-devtools/binutils/binutils/CVE-2018-10535.patch
+++ /dev/null
@@ -1,61 +0,0 @@
-From db0c309f4011ca94a4abc8458e27f3734dab92ac Mon Sep 17 00:00:00 2001
-From: Nick Clifton <nickc@redhat.com>
-Date: Tue, 24 Apr 2018 16:57:04 +0100
-Subject: [PATCH] Fix an illegal memory access when trying to copy an ELF
- binary with corrupt section symbols.
-
- PR 23113
- * elf.c (ignore_section_sym): Check for the output_section pointer
- being NULL before dereferencing it.
-
-Upstream-Status: Backport
-CVE: CVE-2018-10535
-Signed-off-by: Armin Kuster <akuster@mvista.com>
-
----
- bfd/ChangeLog | 4 ++++
- bfd/elf.c | 9 ++++++++-
- 2 files changed, 12 insertions(+), 1 deletion(-)
-
-Index: git/bfd/elf.c
-===================================================================
---- git.orig/bfd/elf.c
-+++ git/bfd/elf.c
-@@ -4021,15 +4021,22 @@ ignore_section_sym (bfd *abfd, asymbol *
- {
- elf_symbol_type *type_ptr;
-
-+ if (sym == NULL)
-+ return FALSE;
-+
- if ((sym->flags & BSF_SECTION_SYM) == 0)
- return FALSE;
-
-+ if (sym->section == NULL)
-+ return TRUE;
-+
- type_ptr = elf_symbol_from (abfd, sym);
- return ((type_ptr != NULL
- && type_ptr->internal_elf_sym.st_shndx != 0
- && bfd_is_abs_section (sym->section))
- || !(sym->section->owner == abfd
-- || (sym->section->output_section->owner == abfd
-+ || (sym->section->output_section != NULL
-+ && sym->section->output_section->owner == abfd
- && sym->section->output_offset == 0)
- || bfd_is_abs_section (sym->section)));
- }
-Index: git/bfd/ChangeLog
-===================================================================
---- git.orig/bfd/ChangeLog
-+++ git/bfd/ChangeLog
-@@ -1,3 +1,9 @@
-+2018-04-24 Nick Clifton <nickc@redhat.com>
-+
-+ PR 23113
-+ * elf.c (ignore_section_sym): Check for the output_section pointer
-+ being NULL before dereferencing it.
-+
- 2018-04-17 Nick Clifton <nickc@redhat.com>
-
- PR 23065
diff --git a/poky/meta/recipes-devtools/binutils/binutils/CVE-2018-17358.patch b/poky/meta/recipes-devtools/binutils/binutils/CVE-2018-17358.patch
new file mode 100644
index 000000000..813509160
--- /dev/null
+++ b/poky/meta/recipes-devtools/binutils/binutils/CVE-2018-17358.patch
@@ -0,0 +1,144 @@
+From 30838132997e6a3cfe3ec11c58b32b22f6f6b102 Mon Sep 17 00:00:00 2001
+From: Alan Modra <amodra@gmail.com>
+Date: Thu, 20 Sep 2018 15:29:17 +0930
+Subject: [PATCH] Bug 23686, two segment faults in nm
+
+Fixes the bugs exposed by the testcases in the PR, plus two more bugs
+I noticed when looking at _bfd_stab_section_find_nearest_line.
+
+ PR 23686
+ * dwarf2.c (read_section): Error when attempting to malloc
+ "(bfd_size_type) -1".
+ * syms.c (_bfd_stab_section_find_nearest_line): Bounds check
+ function_name. Bounds check reloc address. Formatting. Ensure
+ .stabstr zero terminated.
+CVE: CVE-2018-17358 and CVE-2018-17359
+Upstream-Status: Backport
+Signed-off-by: Zhixiong Chi <zhixiong.chi@windriver.com>
+---
+ bfd/ChangeLog | 9 +++++++++
+ bfd/dwarf2.c | 9 ++++++++-
+ bfd/syms.c | 22 ++++++++++++++++------
+ 3 files changed, 33 insertions(+), 7 deletions(-)
+
+diff --git a/bfd/ChangeLog b/bfd/ChangeLog
+index 04c0c2a..fef5479 100644
+--- a/bfd/ChangeLog
++++ b/bfd/ChangeLog
+@@ -1,3 +1,12 @@
++2018-09-20 Alan Modra <amodra@gmail.com>
++
++ PR 23686
++ * dwarf2.c (read_section): Error when attempting to malloc
++ "(bfd_size_type) -1".
++ * syms.c (_bfd_stab_section_find_nearest_line): Bounds check
++ function_name. Bounds check reloc address. Formatting. Ensure
++ .stabstr zero terminated.
++
+ 2018-08-12 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR ld/23428
+diff --git a/bfd/dwarf2.c b/bfd/dwarf2.c
+index 3b28855..77a7368 100644
+--- a/bfd/dwarf2.c
++++ b/bfd/dwarf2.c
+@@ -527,6 +527,7 @@ read_section (bfd * abfd,
+ asection *msec;
+ const char *section_name = sec->uncompressed_name;
+ bfd_byte *contents = *section_buffer;
++ bfd_size_type amt;
+
+ /* The section may have already been read. */
+ if (contents == NULL)
+@@ -549,7 +550,13 @@ read_section (bfd * abfd,
+ *section_size = msec->rawsize ? msec->rawsize : msec->size;
+ /* Paranoia - alloc one extra so that we can make sure a string
+ section is NUL terminated. */
+- contents = (bfd_byte *) bfd_malloc (*section_size + 1);
++ amt = *section_size + 1;
++ if (amt == 0)
++ {
++ bfd_set_error (bfd_error_no_memory);
++ return FALSE;
++ }
++ contents = (bfd_byte *) bfd_malloc (amt);
+ if (contents == NULL)
+ return FALSE;
+ if (syms
+diff --git a/bfd/syms.c b/bfd/syms.c
+index 187071f..e09640a 100644
+--- a/bfd/syms.c
++++ b/bfd/syms.c
+@@ -1035,6 +1035,10 @@ _bfd_stab_section_find_nearest_line (bfd *abfd,
+ 0, strsize))
+ return FALSE;
+
++ /* Stab strings ought to be nul terminated. Ensure the last one
++ is, to prevent running off the end of the buffer. */
++ info->strs[strsize - 1] = 0;
++
+ /* If this is a relocatable object file, we have to relocate
+ the entries in .stab. This should always be simple 32 bit
+ relocations against symbols defined in this object file, so
+@@ -1073,7 +1077,8 @@ _bfd_stab_section_find_nearest_line (bfd *abfd,
+ || r->howto->bitsize != 32
+ || r->howto->pc_relative
+ || r->howto->bitpos != 0
+- || r->howto->dst_mask != 0xffffffff)
++ || r->howto->dst_mask != 0xffffffff
++ || r->address * bfd_octets_per_byte (abfd) + 4 > stabsize)
+ {
+ _bfd_error_handler
+ (_("unsupported .stab relocation"));
+@@ -1195,7 +1200,8 @@ _bfd_stab_section_find_nearest_line (bfd *abfd,
+ {
+ nul_fun = stab;
+ nul_str = str;
+- if (file_name >= (char *) info->strs + strsize || file_name < (char *) str)
++ if (file_name >= (char *) info->strs + strsize
++ || file_name < (char *) str)
+ file_name = NULL;
+ if (stab + STABSIZE + TYPEOFF < info->stabs + stabsize
+ && *(stab + STABSIZE + TYPEOFF) == (bfd_byte) N_SO)
+@@ -1206,7 +1212,8 @@ _bfd_stab_section_find_nearest_line (bfd *abfd,
+ directory_name = file_name;
+ file_name = ((char *) str
+ + bfd_get_32 (abfd, stab + STRDXOFF));
+- if (file_name >= (char *) info->strs + strsize || file_name < (char *) str)
++ if (file_name >= (char *) info->strs + strsize
++ || file_name < (char *) str)
+ file_name = NULL;
+ }
+ }
+@@ -1217,7 +1224,8 @@ _bfd_stab_section_find_nearest_line (bfd *abfd,
+ file_name = (char *) str + bfd_get_32 (abfd, stab + STRDXOFF);
+ /* PR 17512: file: 0c680a1f. */
+ /* PR 17512: file: 5da8aec4. */
+- if (file_name >= (char *) info->strs + strsize || file_name < (char *) str)
++ if (file_name >= (char *) info->strs + strsize
++ || file_name < (char *) str)
+ file_name = NULL;
+ break;
+
+@@ -1226,7 +1234,8 @@ _bfd_stab_section_find_nearest_line (bfd *abfd,
+ function_name = (char *) str + bfd_get_32 (abfd, stab + STRDXOFF);
+ if (function_name == (char *) str)
+ continue;
+- if (function_name >= (char *) info->strs + strsize)
++ if (function_name >= (char *) info->strs + strsize
++ || function_name < (char *) str)
+ function_name = NULL;
+
+ nul_fun = NULL;
+@@ -1335,7 +1344,8 @@ _bfd_stab_section_find_nearest_line (bfd *abfd,
+ if (val <= offset)
+ {
+ file_name = (char *) str + bfd_get_32 (abfd, stab + STRDXOFF);
+- if (file_name >= (char *) info->strs + strsize || file_name < (char *) str)
++ if (file_name >= (char *) info->strs + strsize
++ || file_name < (char *) str)
+ file_name = NULL;
+ *pline = 0;
+ }
+--
+2.9.3
diff --git a/poky/meta/recipes-devtools/binutils/binutils/CVE-2018-17360.patch b/poky/meta/recipes-devtools/binutils/binutils/CVE-2018-17360.patch
new file mode 100644
index 000000000..cef10a754
--- /dev/null
+++ b/poky/meta/recipes-devtools/binutils/binutils/CVE-2018-17360.patch
@@ -0,0 +1,65 @@
+From cf93e9c2cf8f8b2566f8fc86e961592b51b5980d Mon Sep 17 00:00:00 2001
+From: Alan Modra <amodra@gmail.com>
+Date: Thu, 20 Sep 2018 18:23:17 +0930
+Subject: [PATCH] PR23685, buffer overflow
+
+ PR 23685
+ * peXXigen.c (pe_print_edata): Correct export address table
+ overflow checks. Check dataoff against section size too.
+
+CVE: CVE-2018-17360
+Upstream-Status: Backport
+Signed-off-by: Zhixiong Chi <zhixiong.chi@windriver.com>
+---
+ bfd/ChangeLog | 6 ++++++
+ bfd/peXXigen.c | 11 ++++++-----
+ 2 files changed, 12 insertions(+), 5 deletions(-)
+
+diff --git a/bfd/ChangeLog b/bfd/ChangeLog
+index fef5479..81b9e56 100644
+--- a/bfd/ChangeLog
++++ b/bfd/ChangeLog
+@@ -1,5 +1,11 @@
+ 2018-09-20 Alan Modra <amodra@gmail.com>
+
++ PR 23685
++ * peXXigen.c (pe_print_edata): Correct export address table
++ overflow checks. Check dataoff against section size too.
++
++2018-09-20 Alan Modra <amodra@gmail.com>
++
+ PR 23686
+ * dwarf2.c (read_section): Error when attempting to malloc
+ "(bfd_size_type) -1".
+diff --git a/bfd/peXXigen.c b/bfd/peXXigen.c
+index 598f2ca..1645ef4 100644
+--- a/bfd/peXXigen.c
++++ b/bfd/peXXigen.c
+@@ -1661,7 +1661,8 @@ pe_print_edata (bfd * abfd, void * vfile)
+
+ dataoff = addr - section->vma;
+ datasize = extra->DataDirectory[PE_EXPORT_TABLE].Size;
+- if (datasize > section->size - dataoff)
++ if (dataoff > section->size
++ || datasize > section->size - dataoff)
+ {
+ fprintf (file,
+ _("\nThere is an export table in %s, but it does not fit into that section\n"),
+@@ -1778,11 +1779,11 @@ pe_print_edata (bfd * abfd, void * vfile)
+ edt.base);
+
+ /* PR 17512: Handle corrupt PE binaries. */
+- if (edt.eat_addr + (edt.num_functions * 4) - adj >= datasize
++ /* PR 17512 file: 140-165018-0.004. */
++ if (edt.eat_addr - adj >= datasize
+ /* PR 17512: file: 092b1829 */
+- || (edt.num_functions * 4) < edt.num_functions
+- /* PR 17512 file: 140-165018-0.004. */
+- || data + edt.eat_addr - adj < data)
++ || (edt.num_functions + 1) * 4 < edt.num_functions
++ || edt.eat_addr - adj + (edt.num_functions + 1) * 4 > datasize)
+ fprintf (file, _("\tInvalid Export Address Table rva (0x%lx) or entry count (0x%lx)\n"),
+ (long) edt.eat_addr,
+ (long) edt.num_functions);
+--
+2.9.3
diff --git a/poky/meta/recipes-devtools/binutils/binutils/CVE-2018-18309.patch b/poky/meta/recipes-devtools/binutils/binutils/CVE-2018-18309.patch
new file mode 100644
index 000000000..b240a3f99
--- /dev/null
+++ b/poky/meta/recipes-devtools/binutils/binutils/CVE-2018-18309.patch
@@ -0,0 +1,308 @@
+From 0930cb3021b8078b34cf216e79eb8608d017864f Mon Sep 17 00:00:00 2001
+From: Alan Modra <amodra@gmail.com>
+Date: Sat, 13 Oct 2018 22:03:02 +1030
+Subject: [PATCH] _bfd_clear_contents bounds checking
+
+This PR shows a fuzzed binary triggering a segfault via a bad
+relocation in .debug_line. It turns out that unlike normal
+relocations applied to a section, the linker applies those with
+symbols from discarded sections via _bfd_clear_contents without
+checking that the relocation is within the section bounds. The same
+thing now happens when reading debug sections since commit
+a4cd947aca23, the PR23425 fix.
+
+ PR 23770
+ PR 23425
+ * reloc.c (_bfd_clear_contents): Replace "location" param with
+ "buf" and "off". Bounds check "off". Return status.
+ * cofflink.c (_bfd_coff_generic_relocate_section): Update
+ _bfd_clear_contents call.
+ * elf-bfd.h (RELOC_AGAINST_DISCARDED_SECTION): Likewise.
+ * elf32-arc.c (elf_arc_relocate_section): Likewise.
+ * elf32-i386.c (elf_i386_relocate_section): Likewise.
+ * elf32-metag.c (metag_final_link_relocate): Likewise.
+ * elf32-nds32.c (nds32_elf_get_relocated_section_contents): Likewise.
+ * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
+ * elf32-visium.c (visium_elf_relocate_section): Likewise.
+ * elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
+ * elf64-x86-64.c *(elf_x86_64_relocate_section): Likewise.
+ * libbfd-in.h (_bfd_clear_contents): Update prototype.
+ * libbfd.h: Regenerate.
+
+Upstream-Status: Backport
+CVE: CVE-2018-18605
+Signed-off-by: Zhixiong Chi <zhixiong.chi@windriver.com>
+---
+ bfd/ChangeLog | 20 ++++++++++++++++++++
+ bfd/cofflink.c | 2 +-
+ bfd/elf-bfd.h | 2 +-
+ bfd/elf32-arc.c | 2 +-
+ bfd/elf32-i386.c | 2 +-
+ bfd/elf32-metag.c | 2 +-
+ bfd/elf32-nds32.c | 8 ++++----
+ bfd/elf32-ppc.c | 2 +-
+ bfd/elf32-visium.c | 2 +-
+ bfd/elf64-ppc.c | 2 +-
+ bfd/elf64-x86-64.c | 2 +-
+ bfd/libbfd-in.h | 4 ++--
+ bfd/libbfd.h | 4 ++--
+ bfd/reloc.c | 19 +++++++++++++------
+ 14 files changed, 50 insertions(+), 23 deletions(-)
+
+diff --git a/bfd/ChangeLog b/bfd/ChangeLog
+index 68c1ff665b..e9696ee314 100644
+--- a/bfd/ChangeLog
++++ b/bfd/ChangeLog
+@@ -1,3 +1,23 @@
++2018-10-13 Alan Modra <amodra@gmail.com>
++
++ PR 23770
++ PR 23425
++ * reloc.c (_bfd_clear_contents): Replace "location" param with
++ "buf" and "off". Bounds check "off". Return status.
++ * cofflink.c (_bfd_coff_generic_relocate_section): Update
++ _bfd_clear_contents call.
++ * elf-bfd.h (RELOC_AGAINST_DISCARDED_SECTION): Likewise.
++ * elf32-arc.c (elf_arc_relocate_section): Likewise.
++ * elf32-i386.c (elf_i386_relocate_section): Likewise.
++ * elf32-metag.c (metag_final_link_relocate): Likewise.
++ * elf32-nds32.c (nds32_elf_get_relocated_section_contents): Likewise.
++ * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
++ * elf32-visium.c (visium_elf_relocate_section): Likewise.
++ * elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
++ * elf64-x86-64.c *(elf_x86_64_relocate_section): Likewise.
++ * libbfd-in.h (_bfd_clear_contents): Update prototype.
++ * libbfd.h: Regenerate.
++
+ 2018-09-20 Alan Modra <amodra@gmail.com>
+
+ PR 23685
+diff --git a/bfd/cofflink.c b/bfd/cofflink.c
+index 2f73f72e31..b7ea69b7f9 100644
+--- a/bfd/cofflink.c
++++ b/bfd/cofflink.c
+@@ -3080,7 +3080,7 @@ _bfd_coff_generic_relocate_section (bfd *output_bfd,
+ if (sec != NULL && discarded_section (sec))
+ {
+ _bfd_clear_contents (howto, input_bfd, input_section,
+- contents + (rel->r_vaddr - input_section->vma));
++ contents, rel->r_vaddr - input_section->vma);
+ continue;
+ }
+
+diff --git a/bfd/elf-bfd.h b/bfd/elf-bfd.h
+index cf256f70e0..3374f411f9 100644
+--- a/bfd/elf-bfd.h
++++ b/bfd/elf-bfd.h
+@@ -2811,7 +2811,7 @@ extern asection _bfd_elf_large_com_section;
+ { \
+ int i_; \
+ _bfd_clear_contents (howto, input_bfd, input_section, \
+- contents + rel[index].r_offset); \
++ contents, rel[index].r_offset); \
+ \
+ if (bfd_link_relocatable (info) \
+ && (input_section->flags & SEC_DEBUGGING)) \
+diff --git a/bfd/elf32-arc.c b/bfd/elf32-arc.c
+index 7a1b3042ae..30f47a5b22 100644
+--- a/bfd/elf32-arc.c
++++ b/bfd/elf32-arc.c
+@@ -1549,7 +1549,7 @@ elf_arc_relocate_section (bfd * output_bfd,
+ if (sec != NULL && discarded_section (sec))
+ {
+ _bfd_clear_contents (howto, input_bfd, input_section,
+- contents + rel->r_offset);
++ contents, rel->r_offset);
+ rel->r_info = 0;
+ rel->r_addend = 0;
+
+diff --git a/bfd/elf32-i386.c b/bfd/elf32-i386.c
+index 49797dcbfa..177471777d 100644
+--- a/bfd/elf32-i386.c
++++ b/bfd/elf32-i386.c
+@@ -2197,7 +2197,7 @@ elf_i386_relocate_section (bfd *output_bfd,
+ if (sec != NULL && discarded_section (sec))
+ {
+ _bfd_clear_contents (howto, input_bfd, input_section,
+- contents + rel->r_offset);
++ contents, rel->r_offset);
+ wrel->r_offset = rel->r_offset;
+ wrel->r_info = 0;
+ wrel->r_addend = 0;
+diff --git a/bfd/elf32-metag.c b/bfd/elf32-metag.c
+index efe95bddff..7f96246e5d 100644
+--- a/bfd/elf32-metag.c
++++ b/bfd/elf32-metag.c
+@@ -1396,7 +1396,7 @@ metag_final_link_relocate (reloc_howto_type *howto,
+ rel, relend, howto, contents) \
+ { \
+ _bfd_clear_contents (howto, input_bfd, input_section, \
+- contents + rel->r_offset); \
++ contents, rel->r_offset); \
+ \
+ if (bfd_link_relocatable (info) \
+ && (input_section->flags & SEC_DEBUGGING)) \
+diff --git a/bfd/elf32-nds32.c b/bfd/elf32-nds32.c
+index 0d86e5b865..184cf320f7 100644
+--- a/bfd/elf32-nds32.c
++++ b/bfd/elf32-nds32.c
+@@ -12582,14 +12582,14 @@ nds32_elf_get_relocated_section_contents (bfd *abfd,
+ symbol = *(*parent)->sym_ptr_ptr;
+ if (symbol->section && discarded_section (symbol->section))
+ {
+- bfd_byte *p;
++ bfd_vma off;
+ static reloc_howto_type none_howto
+ = HOWTO (0, 0, 0, 0, FALSE, 0, complain_overflow_dont, NULL,
+ "unused", FALSE, 0, 0, FALSE);
+
+- p = data + (*parent)->address * bfd_octets_per_byte (input_bfd);
+- _bfd_clear_contents ((*parent)->howto, input_bfd, input_section,
+- p);
++ off = (*parent)->address * bfd_octets_per_byte (input_bfd);
++ _bfd_clear_contents ((*parent)->howto, input_bfd,
++ input_section, data, off);
+ (*parent)->sym_ptr_ptr = bfd_abs_section_ptr->symbol_ptr_ptr;
+ (*parent)->addend = 0;
+ (*parent)->howto = &none_howto;
+diff --git a/bfd/elf32-ppc.c b/bfd/elf32-ppc.c
+index 61f70de12e..c31e26efd7 100644
+--- a/bfd/elf32-ppc.c
++++ b/bfd/elf32-ppc.c
+@@ -8232,7 +8232,7 @@ ppc_elf_relocate_section (bfd *output_bfd,
+ howto = ppc_elf_howto_table[r_type];
+
+ _bfd_clear_contents (howto, input_bfd, input_section,
+- contents + rel->r_offset);
++ contents, rel->r_offset);
+ wrel->r_offset = rel->r_offset;
+ wrel->r_info = 0;
+ wrel->r_addend = 0;
+diff --git a/bfd/elf32-visium.c b/bfd/elf32-visium.c
+index e8f1c4c9e4..961366cd87 100644
+--- a/bfd/elf32-visium.c
++++ b/bfd/elf32-visium.c
+@@ -621,7 +621,7 @@ visium_elf_relocate_section (bfd *output_bfd,
+ or sections discarded by a linker script, we just want the
+ section contents zeroed. Avoid any special processing. */
+ _bfd_clear_contents (howto, input_bfd, input_section,
+- contents + rel->r_offset);
++ contents, rel->r_offset);
+
+ rel->r_info = 0;
+ rel->r_addend = 0;
+diff --git a/bfd/elf64-ppc.c b/bfd/elf64-ppc.c
+index eadde17615..7c3534ac65 100644
+--- a/bfd/elf64-ppc.c
++++ b/bfd/elf64-ppc.c
+@@ -14073,7 +14073,7 @@ ppc64_elf_relocate_section (bfd *output_bfd,
+ {
+ _bfd_clear_contents (ppc64_elf_howto_table[r_type],
+ input_bfd, input_section,
+- contents + rel->r_offset);
++ contents, rel->r_offset);
+ wrel->r_offset = rel->r_offset;
+ wrel->r_info = 0;
+ wrel->r_addend = 0;
+diff --git a/bfd/elf64-x86-64.c b/bfd/elf64-x86-64.c
+index c3a6c31ed2..4dcab43478 100644
+--- a/bfd/elf64-x86-64.c
++++ b/bfd/elf64-x86-64.c
+@@ -2490,7 +2490,7 @@ elf_x86_64_relocate_section (bfd *output_bfd,
+ if (sec != NULL && discarded_section (sec))
+ {
+ _bfd_clear_contents (howto, input_bfd, input_section,
+- contents + rel->r_offset);
++ contents, rel->r_offset);
+ wrel->r_offset = rel->r_offset;
+ wrel->r_info = 0;
+ wrel->r_addend = 0;
+diff --git a/bfd/libbfd-in.h b/bfd/libbfd-in.h
+index e53b255dad..f6d9565f03 100644
+--- a/bfd/libbfd-in.h
++++ b/bfd/libbfd-in.h
+@@ -696,8 +696,8 @@ extern bfd_reloc_status_type _bfd_relocate_contents
+ (reloc_howto_type *, bfd *, bfd_vma, bfd_byte *) ATTRIBUTE_HIDDEN;
+
+ /* Clear a given location using a given howto. */
+-extern void _bfd_clear_contents
+- (reloc_howto_type *, bfd *, asection *, bfd_byte *) ATTRIBUTE_HIDDEN;
++extern bfd_reloc_status_type _bfd_clear_contents
++ (reloc_howto_type *, bfd *, asection *, bfd_byte *, bfd_vma) ATTRIBUTE_HIDDEN;
+
+ /* Link stabs in sections in the first pass. */
+
+diff --git a/bfd/libbfd.h b/bfd/libbfd.h
+index a8851c8026..1189e63358 100644
+--- a/bfd/libbfd.h
++++ b/bfd/libbfd.h
+@@ -701,8 +701,8 @@ extern bfd_reloc_status_type _bfd_relocate_contents
+ (reloc_howto_type *, bfd *, bfd_vma, bfd_byte *) ATTRIBUTE_HIDDEN;
+
+ /* Clear a given location using a given howto. */
+-extern void _bfd_clear_contents
+- (reloc_howto_type *, bfd *, asection *, bfd_byte *) ATTRIBUTE_HIDDEN;
++extern bfd_reloc_status_type _bfd_clear_contents
++ (reloc_howto_type *, bfd *, asection *, bfd_byte *, bfd_vma) ATTRIBUTE_HIDDEN;
+
+ /* Link stabs in sections in the first pass. */
+
+diff --git a/bfd/reloc.c b/bfd/reloc.c
+index 8dbb8896d3..1686780669 100644
+--- a/bfd/reloc.c
++++ b/bfd/reloc.c
+@@ -1613,16 +1613,22 @@ _bfd_relocate_contents (reloc_howto_type *howto,
+ relocations against discarded symbols, to make ignorable debug or unwind
+ information more obvious. */
+
+-void
++bfd_reloc_status_type
+ _bfd_clear_contents (reloc_howto_type *howto,
+ bfd *input_bfd,
+ asection *input_section,
+- bfd_byte *location)
++ bfd_byte *buf,
++ bfd_vma off)
+ {
+ int size;
+ bfd_vma x = 0;
++ bfd_byte *location;
++
++ if (!bfd_reloc_offset_in_range (howto, input_bfd, input_section, off))
++ return bfd_reloc_outofrange;
+
+ /* Get the value we are going to relocate. */
++ location = buf + off;
+ size = bfd_get_reloc_size (howto);
+ switch (size)
+ {
+@@ -1687,6 +1693,7 @@ _bfd_clear_contents (reloc_howto_type *howto,
+ #endif
+ break;
+ }
++ return bfd_reloc_ok;
+ }
+
+ /*
+@@ -8275,14 +8282,14 @@ bfd_generic_get_relocated_section_contents (bfd *abfd,
+
+ if (symbol->section && discarded_section (symbol->section))
+ {
+- bfd_byte *p;
++ bfd_vma off;
+ static reloc_howto_type none_howto
+ = HOWTO (0, 0, 0, 0, FALSE, 0, complain_overflow_dont, NULL,
+ "unused", FALSE, 0, 0, FALSE);
+
+- p = data + (*parent)->address * bfd_octets_per_byte (input_bfd);
+- _bfd_clear_contents ((*parent)->howto, input_bfd, input_section,
+- p);
++ off = (*parent)->address * bfd_octets_per_byte (input_bfd);
++ _bfd_clear_contents ((*parent)->howto, input_bfd,
++ input_section, data, off);
+ (*parent)->sym_ptr_ptr = bfd_abs_section_ptr->symbol_ptr_ptr;
+ (*parent)->addend = 0;
+ (*parent)->howto = &none_howto;
+--
+2.13.3
+
diff --git a/poky/meta/recipes-devtools/binutils/binutils/CVE-2018-18605.patch b/poky/meta/recipes-devtools/binutils/binutils/CVE-2018-18605.patch
new file mode 100644
index 000000000..d6c706771
--- /dev/null
+++ b/poky/meta/recipes-devtools/binutils/binutils/CVE-2018-18605.patch
@@ -0,0 +1,47 @@
+From ab419ddbb2cdd17ca83618990f2cacf904ce1d61 Mon Sep 17 00:00:00 2001
+From: Alan Modra <amodra@gmail.com>
+Date: Tue, 23 Oct 2018 18:29:24 +1030
+Subject: [PATCH] PR23804, buffer overflow in sec_merge_hash_lookup
+
+ PR 23804
+ * merge.c (_bfd_add_merge_section): Don't attempt to merge
+ sections where size is not a multiple of entsize.
+
+Upstream-Status: Backport
+CVE: CVE-2018-18605
+Signed-off-by: Zhixiong Chi <zhixiong.chi@windriver.com>
+---
+ bfd/ChangeLog | 6 ++++++
+ bfd/merge.c | 3 +++
+ 2 files changed, 9 insertions(+)
+
+diff --git a/bfd/ChangeLog b/bfd/ChangeLog
+index 31ff3d6..da423b1 100644
+--- a/bfd/ChangeLog
++++ b/bfd/ChangeLog
+@@ -1,3 +1,9 @@
++2018-10-23 Alan Modra <amodra@gmail.com>
++
++ PR 23804
++ * merge.c (_bfd_add_merge_section): Don't attempt to merge
++ sections where size is not a multiple of entsize.
++
+ 2018-10-13 Alan Modra <amodra@gmail.com>
+
+ PR 23770
+diff --git a/bfd/merge.c b/bfd/merge.c
+index 7904552..5e3bba0 100644
+--- a/bfd/merge.c
++++ b/bfd/merge.c
+@@ -376,6 +376,9 @@ _bfd_add_merge_section (bfd *abfd, void **psinfo, asection *sec,
+ || sec->entsize == 0)
+ return TRUE;
+
++ if (sec->size % sec->entsize != 0)
++ return TRUE;
++
+ if ((sec->flags & SEC_RELOC) != 0)
+ {
+ /* We aren't prepared to handle relocations in merged sections. */
+--
+2.9.3
diff --git a/poky/meta/recipes-devtools/binutils/binutils/CVE-2018-18606.patch b/poky/meta/recipes-devtools/binutils/binutils/CVE-2018-18606.patch
new file mode 100644
index 000000000..35cf328a1
--- /dev/null
+++ b/poky/meta/recipes-devtools/binutils/binutils/CVE-2018-18606.patch
@@ -0,0 +1,70 @@
+From 45a0eaf77022963d639d6d19871dbab7b79703fc Mon Sep 17 00:00:00 2001
+From: Alan Modra <amodra@gmail.com>
+Date: Tue, 23 Oct 2018 19:02:06 +1030
+Subject: [PATCH] PR23806, NULL pointer dereference in merge_strings
+
+ PR 23806
+ * merge.c (_bfd_add_merge_section): Don't attempt to merge
+ sections with ridiculously large alignments.
+
+Upstream-Status: Backport
+CVE: CVE-2018-18606
+Signed-off-by: Zhixiong Chi <zhixiong.chi@windriver.com>
+---
+ bfd/ChangeLog | 6 ++++++
+ bfd/merge.c | 15 +++++++++++----
+ 2 files changed, 17 insertions(+), 4 deletions(-)
+
+diff --git a/bfd/ChangeLog b/bfd/ChangeLog
+index 1f3fc1c..c5f7ec7 100644
+--- a/bfd/ChangeLog
++++ b/bfd/ChangeLog
+@@ -1,5 +1,11 @@
+ 2018-10-23 Alan Modra <amodra@gmail.com>
+
++ PR 23806
++ * merge.c (_bfd_add_merge_section): Don't attempt to merge
++ sections with ridiculously large alignments.
++
++2018-10-23 Alan Modra <amodra@gmail.com>
++
+ PR 23804
+ * merge.c (_bfd_add_merge_section): Don't attempt to merge
+ sections where size is not a multiple of entsize.
+diff --git a/bfd/merge.c b/bfd/merge.c
+index 5e3bba0..7de0c88 100644
+--- a/bfd/merge.c
++++ b/bfd/merge.c
+@@ -24,6 +24,7 @@
+ as used in ELF SHF_MERGE. */
+
+ #include "sysdep.h"
++#include <limits.h>
+ #include "bfd.h"
+ #include "elf-bfd.h"
+ #include "libbfd.h"
+@@ -385,12 +386,18 @@ _bfd_add_merge_section (bfd *abfd, void **psinfo, asection *sec,
+ return TRUE;
+ }
+
+- align = sec->alignment_power;
+- if ((sec->entsize < (unsigned) 1 << align
++#ifndef CHAR_BIT
++#define CHAR_BIT 8
++#endif
++ if (sec->alignment_power >= sizeof (align) * CHAR_BIT)
++ return TRUE;
++
++ align = 1u << sec->alignment_power;
++ if ((sec->entsize < align
+ && ((sec->entsize & (sec->entsize - 1))
+ || !(sec->flags & SEC_STRINGS)))
+- || (sec->entsize > (unsigned) 1 << align
+- && (sec->entsize & (((unsigned) 1 << align) - 1))))
++ || (sec->entsize > align
++ && (sec->entsize & (align - 1))))
+ {
+ /* Sanity check. If string character size is smaller than
+ alignment, then we require character size to be a power
+--
+2.9.3
diff --git a/poky/meta/recipes-devtools/binutils/binutils/CVE-2018-18607.patch b/poky/meta/recipes-devtools/binutils/binutils/CVE-2018-18607.patch
new file mode 100644
index 000000000..38225d171
--- /dev/null
+++ b/poky/meta/recipes-devtools/binutils/binutils/CVE-2018-18607.patch
@@ -0,0 +1,77 @@
+From 102def4da826b3d9e169741421e5e67e8731909a Mon Sep 17 00:00:00 2001
+From: Alan Modra <amodra@gmail.com>
+Date: Tue, 23 Oct 2018 18:30:22 +1030
+Subject: [PATCH] PR23805, NULL pointer dereference in elf_link_input_bfd
+
+ PR 23805
+ * elflink.c (elf_link_input_bfd): Don't segfault on finding
+ STT_TLS symbols without any TLS sections. Instead, change the
+ symbol type to STT_NOTYPE.
+
+Upstream-Status: Backport
+CVE: CVE-2018-18606
+Signed-off-by: Zhixiong Chi <zhixiong.chi@windriver.com>
+---
+ bfd/ChangeLog | 7 +++++++
+ bfd/elflink.c | 20 ++++++++++++++------
+ 2 files changed, 21 insertions(+), 6 deletions(-)
+
+diff --git a/bfd/ChangeLog b/bfd/ChangeLog
+index da423b1..1f3fc1c 100644
+--- a/bfd/ChangeLog
++++ b/bfd/ChangeLog
+@@ -1,5 +1,12 @@
+ 2018-10-23 Alan Modra <amodra@gmail.com>
+
++ PR 23805
++ * elflink.c (elf_link_input_bfd): Don't segfault on finding
++ STT_TLS symbols without any TLS sections. Instead, change the
++ symbol type to STT_NOTYPE.
++
++2018-10-23 Alan Modra <amodra@gmail.com>
++
+ PR 23806
+ * merge.c (_bfd_add_merge_section): Don't attempt to merge
+ sections with ridiculously large alignments.
+diff --git a/bfd/elflink.c b/bfd/elflink.c
+index c3876cb..87440db 100644
+--- a/bfd/elflink.c
++++ b/bfd/elflink.c
+@@ -10489,8 +10489,11 @@ elf_link_input_bfd (struct elf_final_link_info *flinfo, bfd *input_bfd)
+ if (ELF_ST_TYPE (osym.st_info) == STT_TLS)
+ {
+ /* STT_TLS symbols are relative to PT_TLS segment base. */
+- BFD_ASSERT (elf_hash_table (flinfo->info)->tls_sec != NULL);
+- osym.st_value -= elf_hash_table (flinfo->info)->tls_sec->vma;
++ if (elf_hash_table (flinfo->info)->tls_sec != NULL)
++ osym.st_value -= elf_hash_table (flinfo->info)->tls_sec->vma;
++ else
++ osym.st_info = ELF_ST_INFO (ELF_ST_BIND (osym.st_info),
++ STT_NOTYPE);
+ }
+ }
+
+@@ -11046,12 +11049,17 @@ elf_link_input_bfd (struct elf_final_link_info *flinfo, bfd *input_bfd)
+ sym.st_value += osec->vma;
+ if (ELF_ST_TYPE (sym.st_info) == STT_TLS)
+ {
++ struct elf_link_hash_table *htab
++ = elf_hash_table (flinfo->info);
++
+ /* STT_TLS symbols are relative to PT_TLS
+ segment base. */
+- BFD_ASSERT (elf_hash_table (flinfo->info)
+- ->tls_sec != NULL);
+- sym.st_value -= (elf_hash_table (flinfo->info)
+- ->tls_sec->vma);
++ if (htab->tls_sec != NULL)
++ sym.st_value -= htab->tls_sec->vma;
++ else
++ sym.st_info
++ = ELF_ST_INFO (ELF_ST_BIND (sym.st_info),
++ STT_NOTYPE);
+ }
+ }
+
+--
+2.9.3
diff --git a/poky/meta/recipes-devtools/binutils/binutils/CVE-2018-6759.patch b/poky/meta/recipes-devtools/binutils/binutils/CVE-2018-6759.patch
deleted file mode 100644
index fff497942..000000000
--- a/poky/meta/recipes-devtools/binutils/binutils/CVE-2018-6759.patch
+++ /dev/null
@@ -1,108 +0,0 @@
-From 64e234d417d5685a4aec0edc618114d9991c031b Mon Sep 17 00:00:00 2001
-From: Nick Clifton <nickc@redhat.com>
-Date: Tue, 6 Feb 2018 15:48:29 +0000
-Subject: [PATCH] Prevent attempts to call strncpy with a zero-length field by
- chacking the size of debuglink sections.
-
- PR 22794
- * opncls.c (bfd_get_debug_link_info_1): Check the size of the
- section before attempting to read it in.
- (bfd_get_alt_debug_link_info): Likewise.
-
-Upstream-Status: Backport
-Affects: Binutils <= 2.30
-CVE: CVE-2018-6759
-Signed-off-by: Armin Kuster <akuster@mvista.com>
-
----
- bfd/ChangeLog | 7 +++++++
- bfd/opncls.c | 22 +++++++++++++++++-----
- 2 files changed, 24 insertions(+), 5 deletions(-)
-
-Index: git/bfd/opncls.c
-===================================================================
---- git.orig/bfd/opncls.c
-+++ git/bfd/opncls.c
-@@ -1179,6 +1179,7 @@ bfd_get_debug_link_info_1 (bfd *abfd, vo
- bfd_byte *contents;
- unsigned int crc_offset;
- char *name;
-+ bfd_size_type size;
-
- BFD_ASSERT (abfd);
- BFD_ASSERT (crc32_out);
-@@ -1188,6 +1189,12 @@ bfd_get_debug_link_info_1 (bfd *abfd, vo
- if (sect == NULL)
- return NULL;
-
-+ size = bfd_get_section_size (sect);
-+
-+ /* PR 22794: Make sure that the section has a reasonable size. */
-+ if (size < 8 || size >= bfd_get_size (abfd))
-+ return NULL;
-+
- if (!bfd_malloc_and_get_section (abfd, sect, &contents))
- {
- if (contents != NULL)
-@@ -1197,10 +1204,10 @@ bfd_get_debug_link_info_1 (bfd *abfd, vo
-
- /* CRC value is stored after the filename, aligned up to 4 bytes. */
- name = (char *) contents;
-- /* PR 17597: avoid reading off the end of the buffer. */
-- crc_offset = strnlen (name, bfd_get_section_size (sect)) + 1;
-+ /* PR 17597: Avoid reading off the end of the buffer. */
-+ crc_offset = strnlen (name, size) + 1;
- crc_offset = (crc_offset + 3) & ~3;
-- if (crc_offset + 4 > bfd_get_section_size (sect))
-+ if (crc_offset + 4 > size)
- return NULL;
-
- *crc32 = bfd_get_32 (abfd, contents + crc_offset);
-@@ -1261,6 +1268,7 @@ bfd_get_alt_debug_link_info (bfd * abfd,
- bfd_byte *contents;
- unsigned int buildid_offset;
- char *name;
-+ bfd_size_type size;
-
- BFD_ASSERT (abfd);
- BFD_ASSERT (buildid_len);
-@@ -1271,6 +1279,10 @@ bfd_get_alt_debug_link_info (bfd * abfd,
- if (sect == NULL)
- return NULL;
-
-+ size = bfd_get_section_size (sect);
-+ if (size < 8 || size >= bfd_get_size (abfd))
-+ return NULL;
-+
- if (!bfd_malloc_and_get_section (abfd, sect, & contents))
- {
- if (contents != NULL)
-@@ -1280,11 +1292,11 @@ bfd_get_alt_debug_link_info (bfd * abfd,
-
- /* BuildID value is stored after the filename. */
- name = (char *) contents;
-- buildid_offset = strnlen (name, bfd_get_section_size (sect)) + 1;
-+ buildid_offset = strnlen (name, size) + 1;
- if (buildid_offset >= bfd_get_section_size (sect))
- return NULL;
-
-- *buildid_len = bfd_get_section_size (sect) - buildid_offset;
-+ *buildid_len = size - buildid_offset;
- *buildid_out = bfd_malloc (*buildid_len);
- memcpy (*buildid_out, contents + buildid_offset, *buildid_len);
-
-Index: git/bfd/ChangeLog
-===================================================================
---- git.orig/bfd/ChangeLog
-+++ git/bfd/ChangeLog
-@@ -1,3 +1,10 @@
-+2018-02-06 Nick Clifton <nickc@redhat.com>
-+
-+ PR 22794
-+ * opncls.c (bfd_get_debug_link_info_1): Check the size of the
-+ section before attempting to read it in.
-+ (bfd_get_alt_debug_link_info): Likewise.
-+
- 2018-02-09 Nick Clifton <nickc@redhat.com>
-
- Import patch from mainline:
diff --git a/poky/meta/recipes-devtools/binutils/binutils/CVE-2018-6872.patch b/poky/meta/recipes-devtools/binutils/binutils/CVE-2018-6872.patch
deleted file mode 100644
index 2ef36c232..000000000
--- a/poky/meta/recipes-devtools/binutils/binutils/CVE-2018-6872.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-From d895ef77ffc94e02e748856c2ab54f5bb8cc867e Mon Sep 17 00:00:00 2001
-From: Nick Clifton <nickc@redhat.com>
-Date: Fri, 9 Feb 2018 09:28:45 +0000
-Subject: [PATCH] Import patch from mainline to fix possible seg-fault whilst
- parsing corrupt ELF notes with extravagent alignments.
-
- PR 22788
- * elf.c (elf_parse_notes): Reject notes with excessuively large
- alignments.
-
-Upstream-Status: Backport
-Affects: Binutils <= 2.30
-CVE: CVE-2018-6872
-Signed-off-by: Armin Kuster <akuster@mvista.com>
-
----
- bfd/ChangeLog | 9 +++++++++
- bfd/elf.c | 2 ++
- 2 files changed, 11 insertions(+)
-
-Index: git/bfd/elf.c
-===================================================================
---- git.orig/bfd/elf.c
-+++ git/bfd/elf.c
-@@ -11020,6 +11020,8 @@ elf_parse_notes (bfd *abfd, char *buf, s
- align is less than 4, we use 4 byte alignment. */
- if (align < 4)
- align = 4;
-+ if (align != 4 && align != 8)
-+ return FALSE;
-
- p = buf;
- while (p < buf + size)
-Index: git/bfd/ChangeLog
-===================================================================
---- git.orig/bfd/ChangeLog
-+++ git/bfd/ChangeLog
-@@ -1,3 +1,12 @@
-+2018-02-09 Nick Clifton <nickc@redhat.com>
-+
-+ Import patch from mainline:
-+ 2018-02-08 Nick Clifton <nickc@redhat.com>
-+
-+ PR 22788
-+ * elf.c (elf_parse_notes): Reject notes with excessuively large
-+ alignments.
-+
- 2018-03-01 Nick Clifton <nickc@redhat.com>
-
- PR 22905
diff --git a/poky/meta/recipes-devtools/binutils/binutils/CVE-2018-7208.patch b/poky/meta/recipes-devtools/binutils/binutils/CVE-2018-7208.patch
deleted file mode 100644
index 8efefebc2..000000000
--- a/poky/meta/recipes-devtools/binutils/binutils/CVE-2018-7208.patch
+++ /dev/null
@@ -1,47 +0,0 @@
-From eb77f6a4621795367a39cdd30957903af9dbb815 Mon Sep 17 00:00:00 2001
-From: Alan Modra <amodra@gmail.com>
-Date: Sat, 27 Jan 2018 08:19:33 +1030
-Subject: [PATCH] PR22741, objcopy segfault on fuzzed COFF object
-
- PR 22741
- * coffgen.c (coff_pointerize_aux): Ensure auxent tagndx is in
- range before converting to a symbol table pointer.
-
-Upstream-Status: Backport
-Affects: Binutils <= 2.30
-CVE: CVE-2018-7208
-Signed-off-by: Armin Kuster <akuster@mvista.com>
-
----
- bfd/ChangeLog | 6 ++++++
- bfd/coffgen.c | 3 ++-
- 2 files changed, 8 insertions(+), 1 deletion(-)
-
-Index: git/bfd/coffgen.c
-===================================================================
---- git.orig/bfd/coffgen.c
-+++ git/bfd/coffgen.c
-@@ -1555,7 +1555,8 @@ coff_pointerize_aux (bfd *abfd,
- }
- /* A negative tagndx is meaningless, but the SCO 3.2v4 cc can
- generate one, so we must be careful to ignore it. */
-- if (auxent->u.auxent.x_sym.x_tagndx.l > 0)
-+ if ((unsigned long) auxent->u.auxent.x_sym.x_tagndx.l
-+ < obj_raw_syment_count (abfd))
- {
- auxent->u.auxent.x_sym.x_tagndx.p =
- table_base + auxent->u.auxent.x_sym.x_tagndx.l;
-Index: git/bfd/ChangeLog
-===================================================================
---- git.orig/bfd/ChangeLog
-+++ git/bfd/ChangeLog
-@@ -1,3 +1,9 @@
-+2018-01-29 Alan Modra <amodra@gmail.com>
-+
-+ PR 22741
-+ * coffgen.c (coff_pointerize_aux): Ensure auxent tagndx is in
-+ range before converting to a symbol table pointer.
-+
- 2018-02-28 Alan Modra <amodra@gmail.com>
-
- PR 22887
diff --git a/poky/meta/recipes-devtools/binutils/binutils/CVE-2018-7568.patch b/poky/meta/recipes-devtools/binutils/binutils/CVE-2018-7568.patch
deleted file mode 100644
index 815b32c30..000000000
--- a/poky/meta/recipes-devtools/binutils/binutils/CVE-2018-7568.patch
+++ /dev/null
@@ -1,85 +0,0 @@
-From eef104664efb52965d85a28bc3fc7c77e52e48e2 Mon Sep 17 00:00:00 2001
-From: Nick Clifton <nickc@redhat.com>
-Date: Wed, 28 Feb 2018 10:13:54 +0000
-Subject: [PATCH] Fix potential integer overflow when reading corrupt dwarf1
- debug information.
-
- PR 22894
- * dwarf1.c (parse_die): Check the length of form blocks before
- advancing the data pointer.
-
-Upstream-Status: Backport
-Affects: Binutils <= 2.30
-CVE: CVE-2018-7568
-Signed-off-by: Armin Kuster <akuster@mvista.com>
-
----
- bfd/ChangeLog | 6 ++++++
- bfd/dwarf1.c | 17 +++++++++++++++--
- 2 files changed, 21 insertions(+), 2 deletions(-)
-
-Index: git/bfd/dwarf1.c
-===================================================================
---- git.orig/bfd/dwarf1.c
-+++ git/bfd/dwarf1.c
-@@ -213,6 +213,7 @@ parse_die (bfd * abfd,
- /* Then the attributes. */
- while (xptr + 2 <= aDiePtrEnd)
- {
-+ unsigned int block_len;
- unsigned short attr;
-
- /* Parse the attribute based on its form. This section
-@@ -255,12 +256,24 @@ parse_die (bfd * abfd,
- break;
- case FORM_BLOCK2:
- if (xptr + 2 <= aDiePtrEnd)
-- xptr += bfd_get_16 (abfd, xptr);
-+ {
-+ block_len = bfd_get_16 (abfd, xptr);
-+ if (xptr + block_len > aDiePtrEnd
-+ || xptr + block_len < xptr)
-+ return FALSE;
-+ xptr += block_len;
-+ }
- xptr += 2;
- break;
- case FORM_BLOCK4:
- if (xptr + 4 <= aDiePtrEnd)
-- xptr += bfd_get_32 (abfd, xptr);
-+ {
-+ block_len = bfd_get_32 (abfd, xptr);
-+ if (xptr + block_len > aDiePtrEnd
-+ || xptr + block_len < xptr)
-+ return FALSE;
-+ xptr += block_len;
-+ }
- xptr += 4;
- break;
- case FORM_STRING:
-Index: git/bfd/ChangeLog
-===================================================================
---- git.orig/bfd/ChangeLog
-+++ git/bfd/ChangeLog
-@@ -4,7 +4,11 @@
- * coffgen.c (coff_pointerize_aux): Ensure auxent tagndx is in
- range before converting to a symbol table pointer.
-
--2018-02-28 Alan Modra <amodra@gmail.com>
-+2018-02-28 Nick Clifton <nickc@redhat.com>
-+
-+ PR 22894
-+ * dwarf1.c (parse_die): Check the length of form blocks before
-+ advancing the data pointer.
-
- PR 22895
- PR 22893
-@@ -14,6 +18,8 @@
- size is invalid.
- (read_attribute_value): Adjust invocations of read_n_bytes.
-
-+2018-02-28 Alan Modra <amodra@gmail.com>
-+
- PR 22887
- * aoutx.h (swap_std_reloc_in): Correct r_index bound check.
-
diff --git a/poky/meta/recipes-devtools/binutils/binutils/CVE-2018-7569.patch b/poky/meta/recipes-devtools/binutils/binutils/CVE-2018-7569.patch
deleted file mode 100644
index 96c0fd242..000000000
--- a/poky/meta/recipes-devtools/binutils/binutils/CVE-2018-7569.patch
+++ /dev/null
@@ -1,119 +0,0 @@
-From 12c963421d045a127c413a0722062b9932c50aa9 Mon Sep 17 00:00:00 2001
-From: Nick Clifton <nickc@redhat.com>
-Date: Wed, 28 Feb 2018 11:50:49 +0000
-Subject: [PATCH] Catch integer overflows/underflows when parsing corrupt DWARF
- FORM blocks.
-
- PR 22895
- PR 22893
- * dwarf2.c (read_n_bytes): Replace size parameter with dwarf_block
- pointer. Drop unused abfd parameter. Check the size of the block
- before initialising the data field. Return the end pointer if the
- size is invalid.
- (read_attribute_value): Adjust invocations of read_n_bytes.
-
-Upstream-Status: Backport
-Affects: Binutils <= 2.30
-CVE: CVE-2018-7569
-Signed-off-by: Armin Kuster <akuster@mvista.com>
----
- bfd/ChangeLog | 8 ++++++++
- bfd/dwarf2.c | 36 +++++++++++++++++++++---------------
- 2 files changed, 29 insertions(+), 15 deletions(-)
-
-Index: git/bfd/dwarf2.c
-===================================================================
---- git.orig/bfd/dwarf2.c
-+++ git/bfd/dwarf2.c
-@@ -622,14 +622,24 @@ read_8_bytes (bfd *abfd, bfd_byte *buf,
- }
-
- static bfd_byte *
--read_n_bytes (bfd *abfd ATTRIBUTE_UNUSED,
-- bfd_byte *buf,
-- bfd_byte *end,
-- unsigned int size ATTRIBUTE_UNUSED)
--{
-- if (buf + size > end)
-- return NULL;
-- return buf;
-+read_n_bytes (bfd_byte * buf,
-+ bfd_byte * end,
-+ struct dwarf_block * block)
-+{
-+ unsigned int size = block->size;
-+ bfd_byte * block_end = buf + size;
-+
-+ if (block_end > end || block_end < buf)
-+ {
-+ block->data = NULL;
-+ block->size = 0;
-+ return end;
-+ }
-+ else
-+ {
-+ block->data = buf;
-+ return block_end;
-+ }
- }
-
- /* Scans a NUL terminated string starting at BUF, returning a pointer to it.
-@@ -1127,8 +1137,7 @@ read_attribute_value (struct attribute *
- return NULL;
- blk->size = read_2_bytes (abfd, info_ptr, info_ptr_end);
- info_ptr += 2;
-- blk->data = read_n_bytes (abfd, info_ptr, info_ptr_end, blk->size);
-- info_ptr += blk->size;
-+ info_ptr = read_n_bytes (info_ptr, info_ptr_end, blk);
- attr->u.blk = blk;
- break;
- case DW_FORM_block4:
-@@ -1138,8 +1147,7 @@ read_attribute_value (struct attribute *
- return NULL;
- blk->size = read_4_bytes (abfd, info_ptr, info_ptr_end);
- info_ptr += 4;
-- blk->data = read_n_bytes (abfd, info_ptr, info_ptr_end, blk->size);
-- info_ptr += blk->size;
-+ info_ptr = read_n_bytes (info_ptr, info_ptr_end, blk);
- attr->u.blk = blk;
- break;
- case DW_FORM_data2:
-@@ -1179,8 +1187,7 @@ read_attribute_value (struct attribute *
- blk->size = _bfd_safe_read_leb128 (abfd, info_ptr, &bytes_read,
- FALSE, info_ptr_end);
- info_ptr += bytes_read;
-- blk->data = read_n_bytes (abfd, info_ptr, info_ptr_end, blk->size);
-- info_ptr += blk->size;
-+ info_ptr = read_n_bytes (info_ptr, info_ptr_end, blk);
- attr->u.blk = blk;
- break;
- case DW_FORM_block1:
-@@ -1190,8 +1197,7 @@ read_attribute_value (struct attribute *
- return NULL;
- blk->size = read_1_byte (abfd, info_ptr, info_ptr_end);
- info_ptr += 1;
-- blk->data = read_n_bytes (abfd, info_ptr, info_ptr_end, blk->size);
-- info_ptr += blk->size;
-+ info_ptr = read_n_bytes (info_ptr, info_ptr_end, blk);
- attr->u.blk = blk;
- break;
- case DW_FORM_data1:
-Index: git/bfd/ChangeLog
-===================================================================
---- git.orig/bfd/ChangeLog
-+++ git/bfd/ChangeLog
-@@ -6,6 +6,14 @@
-
- 2018-02-28 Alan Modra <amodra@gmail.com>
-
-+ PR 22895
-+ PR 22893
-+ * dwarf2.c (read_n_bytes): Replace size parameter with dwarf_block
-+ pointer. Drop unused abfd parameter. Check the size of the block
-+ before initialising the data field. Return the end pointer if the
-+ size is invalid.
-+ (read_attribute_value): Adjust invocations of read_n_bytes.
-+
- PR 22887
- * aoutx.h (swap_std_reloc_in): Correct r_index bound check.
-
diff --git a/poky/meta/recipes-devtools/binutils/binutils/CVE-2018-7642.patch b/poky/meta/recipes-devtools/binutils/binutils/CVE-2018-7642.patch
deleted file mode 100644
index 9def46cf5..000000000
--- a/poky/meta/recipes-devtools/binutils/binutils/CVE-2018-7642.patch
+++ /dev/null
@@ -1,51 +0,0 @@
-From 116acb2c268c89c89186673a7c92620d21825b25 Mon Sep 17 00:00:00 2001
-From: Alan Modra <amodra@gmail.com>
-Date: Wed, 28 Feb 2018 22:09:50 +1030
-Subject: [PATCH] PR22887, null pointer dereference in
- aout_32_swap_std_reloc_out
-
- PR 22887
- * aoutx.h (swap_std_reloc_in): Correct r_index bound check.
-
-Upstream-Status: Backport
-Affects: Binutils <= 2.30
-CVE: CVE-2018-7642
-Signed-off-by: Armin Kuster <akuster@mvista.com>
-
----
- bfd/ChangeLog | 5 +++++
- bfd/aoutx.h | 6 ++++--
- 2 files changed, 9 insertions(+), 2 deletions(-)
-
-Index: git/bfd/aoutx.h
-===================================================================
---- git.orig/bfd/aoutx.h
-+++ git/bfd/aoutx.h
-@@ -2284,10 +2284,12 @@ NAME (aout, swap_std_reloc_in) (bfd *abf
- if (r_baserel)
- r_extern = 1;
-
-- if (r_extern && r_index > symcount)
-+ if (r_extern && r_index >= symcount)
- {
- /* We could arrange to return an error, but it might be useful
-- to see the file even if it is bad. */
-+ to see the file even if it is bad. FIXME: Of course this
-+ means that objdump -r *doesn't* see the actual reloc, and
-+ objcopy silently writes a different reloc. */
- r_extern = 0;
- r_index = N_ABS;
- }
-Index: git/bfd/ChangeLog
-===================================================================
---- git.orig/bfd/ChangeLog
-+++ git/bfd/ChangeLog
-@@ -1,3 +1,8 @@
-+2018-02-28 Alan Modra <amodra@gmail.com>
-+
-+ PR 22887
-+ * aoutx.h (swap_std_reloc_in): Correct r_index bound check.
-+
- 2018-02-06 Nick Clifton <nickc@redhat.com>
-
- PR 22794
diff --git a/poky/meta/recipes-devtools/binutils/binutils/CVE-2018-7643.patch b/poky/meta/recipes-devtools/binutils/binutils/CVE-2018-7643.patch
deleted file mode 100644
index 2a2dec3a4..000000000
--- a/poky/meta/recipes-devtools/binutils/binutils/CVE-2018-7643.patch
+++ /dev/null
@@ -1,102 +0,0 @@
-From d11ae95ea3403559f052903ab053f43ad7821e37 Mon Sep 17 00:00:00 2001
-From: Nick Clifton <nickc@redhat.com>
-Date: Thu, 1 Mar 2018 16:14:08 +0000
-Subject: [PATCH] Prevent illegal memory accesses triggerd by intger overflow
- when parsing corrupt DWARF information on a 32-bit host.
-
- PR 22905
- * dwarf.c (display_debug_ranges): Check that the offset loaded
- from the range_entry structure is valid.
-
-Upstream-Status: Backport
-Affects: Binutils <= 2.30
-CVE: CVE-2018-7643
-Signed-off-by: Armin Kuster <akuster@mvista.com>
-
----
- binutils/ChangeLog | 6 ++++++
- binutils/dwarf.c | 15 +++++++++++++++
- 2 files changed, 21 insertions(+)
-
-Index: git/binutils/dwarf.c
-===================================================================
---- git.orig/binutils/dwarf.c
-+++ git/binutils/dwarf.c
-@@ -387,6 +387,9 @@ read_uleb128 (unsigned char * data,
- } \
- while (0)
-
-+/* Read AMOUNT bytes from PTR and store them in VAL as an unsigned value.
-+ Checks to make sure that the read will not reach or pass END
-+ and that VAL is big enough to hold AMOUNT bytes. */
- #define SAFE_BYTE_GET(VAL, PTR, AMOUNT, END) \
- do \
- { \
-@@ -415,6 +418,7 @@ read_uleb128 (unsigned char * data,
- } \
- while (0)
-
-+/* Like SAFE_BYTE_GET, but also increments PTR by AMOUNT. */
- #define SAFE_BYTE_GET_AND_INC(VAL, PTR, AMOUNT, END) \
- do \
- { \
-@@ -423,6 +427,7 @@ read_uleb128 (unsigned char * data,
- } \
- while (0)
-
-+/* Like SAFE_BYTE_GET, but reads a signed value. */
- #define SAFE_SIGNED_BYTE_GET(VAL, PTR, AMOUNT, END) \
- do \
- { \
-@@ -441,6 +446,7 @@ read_uleb128 (unsigned char * data,
- } \
- while (0)
-
-+/* Like SAFE_SIGNED_BYTE_GET, but also increments PTR by AMOUNT. */
- #define SAFE_SIGNED_BYTE_GET_AND_INC(VAL, PTR, AMOUNT, END) \
- do \
- { \
-@@ -6543,6 +6549,7 @@ display_debug_ranges_list (unsigned char
- break;
- SAFE_SIGNED_BYTE_GET_AND_INC (end, start, pointer_size, finish);
-
-+
- printf (" %8.8lx ", offset);
-
- if (begin == 0 && end == 0)
-@@ -6810,6 +6817,13 @@ display_debug_ranges (struct dwarf_secti
- continue;
- }
-
-+ if (next < section_begin || next >= finish)
-+ {
-+ warn (_("Corrupt offset (%#8.8lx) in range entry %u\n"),
-+ (unsigned long) offset, i);
-+ continue;
-+ }
-+
- if (dwarf_check != 0 && i > 0)
- {
- if (start < next)
-@@ -6825,6 +6839,7 @@ display_debug_ranges (struct dwarf_secti
- (unsigned long) (next - section_begin), section->name);
- }
- }
-+
- start = next;
- last_start = next;
-
-Index: git/bfd/ChangeLog
-===================================================================
---- git.orig/bfd/ChangeLog
-+++ git/bfd/ChangeLog
-@@ -1,3 +1,9 @@
-+2018-03-01 Nick Clifton <nickc@redhat.com>
-+
-+ PR 22905
-+ * dwarf.c (display_debug_ranges): Check that the offset loaded
-+ from the range_entry structure is valid.
-+
- 2018-05-08 Nick Clifton <nickc@redhat.com>
-
- PR 22809
diff --git a/poky/meta/recipes-devtools/binutils/binutils/CVE-2018-8945.patch b/poky/meta/recipes-devtools/binutils/binutils/CVE-2018-8945.patch
deleted file mode 100644
index 6a43168b8..000000000
--- a/poky/meta/recipes-devtools/binutils/binutils/CVE-2018-8945.patch
+++ /dev/null
@@ -1,70 +0,0 @@
-From 95a6d23566165208853a68d9cd3c6eedca840ec6 Mon Sep 17 00:00:00 2001
-From: Nick Clifton <nickc@redhat.com>
-Date: Tue, 8 May 2018 12:51:06 +0100
-Subject: [PATCH] Prevent a memory exhaustion failure when running objdump on a
- fuzzed input file with corrupt string and attribute sections.
-
- PR 22809
- * elf.c (bfd_elf_get_str_section): Check for an excessively large
- string section.
- * elf-attrs.c (_bfd_elf_parse_attributes): Issue an error if the
- attribute section is larger than the size of the file.
-
-Upsteram-Status: Backport
-Affects: Binutils <= 2.30
-CVE: CVE-2018-8945
-Signed-off-by: Armin kuster <akuster@mvista.com>
----
- bfd/ChangeLog | 8 ++++++++
- bfd/elf-attrs.c | 9 +++++++++
- bfd/elf.c | 1 +
- 3 files changed, 18 insertions(+)
-
-Index: git/bfd/elf-attrs.c
-===================================================================
---- git.orig/bfd/elf-attrs.c
-+++ git/bfd/elf-attrs.c
-@@ -438,6 +438,15 @@ _bfd_elf_parse_attributes (bfd *abfd, El
- /* PR 17512: file: 2844a11d. */
- if (hdr->sh_size == 0)
- return;
-+ if (hdr->sh_size > bfd_get_file_size (abfd))
-+ {
-+ /* xgettext:c-format */
-+ _bfd_error_handler (_("%pB: error: attribute section '%pA' too big: %#llx"),
-+ abfd, hdr->bfd_section, (long long) hdr->sh_size);
-+ bfd_set_error (bfd_error_invalid_operation);
-+ return;
-+ }
-+
- contents = (bfd_byte *) bfd_malloc (hdr->sh_size + 1);
- if (!contents)
- return;
-Index: git/bfd/elf.c
-===================================================================
---- git.orig/bfd/elf.c
-+++ git/bfd/elf.c
-@@ -298,6 +298,7 @@ bfd_elf_get_str_section (bfd *abfd, unsi
- /* Allocate and clear an extra byte at the end, to prevent crashes
- in case the string table is not terminated. */
- if (shstrtabsize + 1 <= 1
-+ || shstrtabsize > bfd_get_file_size (abfd)
- || bfd_seek (abfd, offset, SEEK_SET) != 0
- || (shstrtab = (bfd_byte *) bfd_alloc (abfd, shstrtabsize + 1)) == NULL)
- shstrtab = NULL;
-Index: git/bfd/ChangeLog
-===================================================================
---- git.orig/bfd/ChangeLog
-+++ git/bfd/ChangeLog
-@@ -1,3 +1,11 @@
-+2018-05-08 Nick Clifton <nickc@redhat.com>
-+
-+ PR 22809
-+ * elf.c (bfd_elf_get_str_section): Check for an excessively large
-+ string section.
-+ * elf-attrs.c (_bfd_elf_parse_attributes): Issue an error if the
-+ attribute section is larger than the size of the file.
-+
- 2018-02-07 Alan Modra <amodra@gmail.com>
-
- Revert 2018-01-17 Alan Modra <amodra@gmail.com>
diff --git a/poky/meta/recipes-devtools/binutils/binutils_2.30.bb b/poky/meta/recipes-devtools/binutils/binutils_2.31.bb
index 51a974890..51a974890 100644
--- a/poky/meta/recipes-devtools/binutils/binutils_2.30.bb
+++ b/poky/meta/recipes-devtools/binutils/binutils_2.31.bb
diff --git a/poky/meta/recipes-devtools/bison/bison_3.0.4.bb b/poky/meta/recipes-devtools/bison/bison_3.0.4.bb
index cc155f0fb..f1b05da41 100644
--- a/poky/meta/recipes-devtools/bison/bison_3.0.4.bb
+++ b/poky/meta/recipes-devtools/bison/bison_3.0.4.bb
@@ -36,4 +36,8 @@ do_install_append_class-native() {
create_wrapper ${D}/${bindir}/bison \
BISON_PKGDATADIR=${STAGING_DATADIR_NATIVE}/bison
}
+do_install_append_class-nativesdk() {
+ create_wrapper ${D}/${bindir}/bison \
+ BISON_PKGDATADIR=${datadir}/bison
+}
BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-devtools/bootchart2/bootchart2/0001-Fixed-Missing-default-value-for-BOOTLOG_DEST.patch b/poky/meta/recipes-devtools/bootchart2/bootchart2/0001-Fixed-Missing-default-value-for-BOOTLOG_DEST.patch
deleted file mode 100644
index 118814a80..000000000
--- a/poky/meta/recipes-devtools/bootchart2/bootchart2/0001-Fixed-Missing-default-value-for-BOOTLOG_DEST.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From 2225ab2038bfe50f16f972e39d89bcd0bd7767f5 Mon Sep 17 00:00:00 2001
-From: Steffen Pankratz <kratz00@gmx.de>
-Date: Tue, 9 Feb 2016 13:49:42 +0100
-Subject: [PATCH] Fixed: Missing default value for BOOTLOG_DEST
-
-Upstream-Status: Backport
-
-BUILDLOG_DEST seems to be a typo or mix-up which was introduced with 281d1df80884bf2969c509ec60ee8a6593524fe8
-
-Signed-off-by: Peter Liu <peter.x.liu@external.atlascopco.com>
----
- bootchartd.in | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/bootchartd.in b/bootchartd.in
-index f58ab9e..30af677 100755
---- a/bootchartd.in
-+++ b/bootchartd.in
-@@ -37,7 +37,7 @@ PATH="/sbin:/bin:/usr/sbin:/usr/bin:$PATH"
-
- # Defaults, in case we can't find our configuration
- SAMPLE_HZ=50
--BUILDLOG_DEST=/var/log/bootchart.tgz
-+BOOTLOG_DEST=/var/log/bootchart.tgz
- AUTO_RENDER="no"
- AUTO_RENDER_DIR="/var/log"
- AUTO_RENDER_FORMAT="png"
---
-1.9.1
-
diff --git a/poky/meta/recipes-devtools/bootchart2/bootchart2_0.14.8.bb b/poky/meta/recipes-devtools/bootchart2/bootchart2_0.14.8.bb
index b3c889b0a..396d0ec0a 100644
--- a/poky/meta/recipes-devtools/bootchart2/bootchart2_0.14.8.bb
+++ b/poky/meta/recipes-devtools/bootchart2/bootchart2_0.14.8.bb
@@ -92,12 +92,12 @@ UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>\d+\.\d+(\.\d+)*)"
SRC_URI = "git://github.com/xrmx/bootchart.git \
file://bootchartd_stop.sh \
- file://0001-Fixed-Missing-default-value-for-BOOTLOG_DEST.patch \
file://0001-collector-Allocate-space-on-heap-for-chunks.patch \
"
S = "${WORKDIR}/git"
-SRCREV = "48e0071048564c6af75ab969e842d6dec808da09"
+SRCREV = "331ada031f1d65f6d934d918f896e1c708c64bf7"
+PV .= "+git${SRCPV}"
inherit systemd update-rc.d python3native update-alternatives
diff --git a/poky/meta/recipes-devtools/btrfs-tools/btrfs-tools/0001-Add-LDFLAGS-when-building-libbtrfsutil.so.patch b/poky/meta/recipes-devtools/btrfs-tools/btrfs-tools/0001-Add-LDFLAGS-when-building-libbtrfsutil.so.patch
new file mode 100644
index 000000000..a8fcfc0f7
--- /dev/null
+++ b/poky/meta/recipes-devtools/btrfs-tools/btrfs-tools/0001-Add-LDFLAGS-when-building-libbtrfsutil.so.patch
@@ -0,0 +1,35 @@
+From eecc48ecad359cd4fab650ce49cfe57e99d1859d Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex.kanavin@gmail.com>
+Date: Thu, 17 May 2018 12:21:31 +0300
+Subject: [PATCH] Add LDFLAGS when building libbtrfsutil.so and python
+ bindings.
+
+Upstream-Status: Pending
+Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+
+---
+ Makefile | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index 10f0e3b0..1697794c 100644
+--- a/Makefile
++++ b/Makefile
+@@ -402,7 +402,7 @@ libbtrfsutil/%.o: libbtrfsutil/%.c
+
+ libbtrfsutil.so.$(libbtrfsutil_version): $(libbtrfsutil_objects)
+ @echo " [LD] $@"
+- $(Q)$(CC) $(LIBBTRFSUTIL_CFLAGS) $(libbtrfsutil_objects) \
++ $(Q)$(CC) $(LIBBTRFSUTIL_CFLAGS) $(LDFLAGS) $(libbtrfsutil_objects) \
+ -shared -Wl,-soname,libbtrfsutil.so.$(libbtrfsutil_major) -o $@
+
+ libbtrfsutil.a: $(libbtrfsutil_objects)
+@@ -417,7 +417,7 @@ ifeq ($(PYTHON_BINDINGS),1)
+ libbtrfsutil_python: libbtrfsutil.so.$(libbtrfsutil_major) libbtrfsutil.so libbtrfsutil/btrfsutil.h
+ @echo " [PY] libbtrfsutil"
+ $(Q)cd libbtrfsutil/python; \
+- CFLAGS= LDFLAGS= $(PYTHON) setup.py $(SETUP_PY_Q) build_ext -i build
++ CFLAGS= $(PYTHON) setup.py $(SETUP_PY_Q) build_ext -i build
+
+ .PHONY: libbtrfsutil_python
+ endif
diff --git a/poky/meta/recipes-devtools/btrfs-tools/btrfs-tools/0001-Add-a-possibility-to-specify-where-python-modules-ar.patch b/poky/meta/recipes-devtools/btrfs-tools/btrfs-tools/0001-Add-a-possibility-to-specify-where-python-modules-ar.patch
new file mode 100644
index 000000000..5846f04d1
--- /dev/null
+++ b/poky/meta/recipes-devtools/btrfs-tools/btrfs-tools/0001-Add-a-possibility-to-specify-where-python-modules-ar.patch
@@ -0,0 +1,25 @@
+From d3adfc21c9cc264bd191722f102963cbc4794259 Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex.kanavin@gmail.com>
+Date: Wed, 23 May 2018 21:20:35 +0300
+Subject: [PATCH] Add a possibility to specify where python modules are
+ installed
+
+Upstream-Status: Inappropriate [oe-core specific to solve multilib use case]
+Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+---
+ Makefile | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/Makefile b/Makefile
+index 1697794c..8ab38818 100644
+--- a/Makefile
++++ b/Makefile
+@@ -651,7 +651,7 @@ endif
+ ifeq ($(PYTHON_BINDINGS),1)
+ install_python: libbtrfsutil_python
+ $(Q)cd libbtrfsutil/python; \
+- $(PYTHON) setup.py install --skip-build $(if $(DESTDIR),--root $(DESTDIR)) --prefix $(prefix)
++ $(PYTHON) setup.py install --skip-build $(if $(DESTDIR),--root $(DESTDIR)) --prefix $(prefix) --install-lib=$(PYTHON_SITEPACKAGES_DIR)
+
+ .PHONY: install_python
+ endif
diff --git a/poky/meta/recipes-devtools/btrfs-tools/btrfs-tools/0001-Fix-build-with-musl-missing-header-include-for-dev_t.patch b/poky/meta/recipes-devtools/btrfs-tools/btrfs-tools/0001-Fix-build-with-musl-missing-header-include-for-dev_t.patch
deleted file mode 100644
index 790676b9c..000000000
--- a/poky/meta/recipes-devtools/btrfs-tools/btrfs-tools/0001-Fix-build-with-musl-missing-header-include-for-dev_t.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From bc35c4caebb57cc8b96c30c25432b12ca8dc18d5 Mon Sep 17 00:00:00 2001
-From: Alexander Kanavin <alex.kanavin@gmail.com>
-Date: Fri, 6 Oct 2017 15:03:49 +0300
-Subject: [PATCH] Fix build with musl (missing header include for dev_t).
-
-Upstream-Status: Pending
-Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
----
- convert/source-fs.h | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/convert/source-fs.h b/convert/source-fs.h
-index 23f3356..6fd770f 100644
---- a/convert/source-fs.h
-+++ b/convert/source-fs.h
-@@ -20,6 +20,7 @@
- #include "kerncompat.h"
- #include <linux/kdev_t.h>
- #include <pthread.h>
-+#include <sys/types.h>
-
- #define CONV_IMAGE_SUBVOL_OBJECTID BTRFS_FIRST_FREE_OBJECTID
-
---
-2.14.1
-
diff --git a/poky/meta/recipes-devtools/btrfs-tools/btrfs-tools_4.13.3.bb b/poky/meta/recipes-devtools/btrfs-tools/btrfs-tools_4.17.1.bb
index bc157e267..6b53fbcd7 100644
--- a/poky/meta/recipes-devtools/btrfs-tools/btrfs-tools_4.13.3.bb
+++ b/poky/meta/recipes-devtools/btrfs-tools/btrfs-tools_4.17.1.bb
@@ -10,22 +10,23 @@ HOMEPAGE = "https://btrfs.wiki.kernel.org"
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=fcb02dc552a041dee27e4b85c7396067"
SECTION = "base"
-DEPENDS = "util-linux attr e2fsprogs lzo acl"
+DEPENDS = "util-linux attr e2fsprogs lzo acl python3-setuptools-native"
DEPENDS_append_class-target = " udev"
RDEPENDS_${PN} = "libgcc"
-SRCREV = "a7a1ea0f4f2a1d6eeeb3d106e062c7f1034f16d4"
+SRCREV = "7faaca0d9f78f7162ae603231f693dd8e1af2a41"
SRC_URI = "git://git.kernel.org/pub/scm/linux/kernel/git/kdave/btrfs-progs.git \
file://0001-Makefile-build-mktables-using-native-gcc.patch \
- file://0001-Fix-build-with-musl-missing-header-include-for-dev_t.patch \
+ file://0001-Add-LDFLAGS-when-building-libbtrfsutil.so.patch \
+ file://0001-Add-a-possibility-to-specify-where-python-modules-ar.patch \
"
-RECIPE_NO_UPDATE_REASON = "Waiting for resolution of https://github.com/kdave/btrfs-progs/issues/109"
-inherit autotools-brokensep pkgconfig manpages
+inherit autotools-brokensep pkgconfig manpages distutils3-base
CLEANBROKEN = "1"
PACKAGECONFIG[manpages] = "--enable-documentation, --disable-documentation, asciidoc-native xmlto-native"
+EXTRA_OECONF = " --disable-zstd"
EXTRA_OECONF_append_libc-musl = " --disable-backtrace "
do_configure_prepend() {
@@ -36,4 +37,8 @@ do_configure_prepend() {
S = "${WORKDIR}/git"
+do_install_append() {
+ oe_runmake 'DESTDIR=${D}' 'PYTHON_SITEPACKAGES_DIR=${PYTHON_SITEPACKAGES_DIR}' install_python
+}
+
BBCLASSEXTEND = "native"
diff --git a/poky/meta/recipes-devtools/ccache/ccache_3.3.5.bb b/poky/meta/recipes-devtools/ccache/ccache_3.3.5.bb
deleted file mode 100644
index 929f0f127..000000000
--- a/poky/meta/recipes-devtools/ccache/ccache_3.3.5.bb
+++ /dev/null
@@ -1,12 +0,0 @@
-require ccache.inc
-
-LICENSE = "GPLv3+"
-LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=dae379a85bb6e9d594773e0aa64876f6"
-
-SRC_URI[md5sum] = "eee58db7cce892febddb989308dc568f"
-SRC_URI[sha256sum] = "190576a6e938760ec8113523e6fd380141117303e90766cc4802e770422b30c6"
-
-SRC_URI += " \
- file://0002-dev.mk.in-fix-file-name-too-long.patch \
- file://Revert-Create-man-page-in-the-make-install-from-git-.patch \
-"
diff --git a/poky/meta/recipes-devtools/ccache/ccache_3.4.2.bb b/poky/meta/recipes-devtools/ccache/ccache_3.4.2.bb
new file mode 100644
index 000000000..72309348b
--- /dev/null
+++ b/poky/meta/recipes-devtools/ccache/ccache_3.4.2.bb
@@ -0,0 +1,11 @@
+require ccache.inc
+
+LICENSE = "GPLv3+"
+LIC_FILES_CHKSUM = "file://LICENSE.adoc;md5=2722abeaf1750dbf175b9491112374e1"
+
+SRC_URI[md5sum] = "9e048f88f3897125864f9a5e1abfb72d"
+SRC_URI[sha256sum] = "18a8b14367d63d3d37fb6c33cba60e1b7fcd7a63d608df97c9771ae0d234fee2"
+
+SRC_URI += " \
+ file://0002-dev.mk.in-fix-file-name-too-long.patch \
+"
diff --git a/poky/meta/recipes-devtools/ccache/files/0002-dev.mk.in-fix-file-name-too-long.patch b/poky/meta/recipes-devtools/ccache/files/0002-dev.mk.in-fix-file-name-too-long.patch
index 3f01c69b2..68c2371fb 100644
--- a/poky/meta/recipes-devtools/ccache/files/0002-dev.mk.in-fix-file-name-too-long.patch
+++ b/poky/meta/recipes-devtools/ccache/files/0002-dev.mk.in-fix-file-name-too-long.patch
@@ -1,4 +1,4 @@
-From 71bd0082c6edcf73f054a8a4fa34bd8dd4de7cd7 Mon Sep 17 00:00:00 2001
+From 7dab2995ed8eeccd7b0acd79668bc28f3a2427d5 Mon Sep 17 00:00:00 2001
From: Robert Yang <liezhi.yang@windriver.com>
Date: Wed, 16 Sep 2015 19:45:40 -0700
Subject: [PATCH] dev.mk.in: fix file name too long
@@ -10,14 +10,15 @@ to fix the problem.
Upstream-Status: Pending
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
+
---
- dev.mk.in | 2 +-
+ dev.mk.in | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
-Index: ccache-3.3.4/dev.mk.in
-===================================================================
---- ccache-3.3.4.orig/dev.mk.in
-+++ ccache-3.3.4/dev.mk.in
+diff --git a/dev.mk.in b/dev.mk.in
+index 91b0a57..583ade0 100644
+--- a/dev.mk.in
++++ b/dev.mk.in
@@ -1,7 +1,7 @@
# GNU make syntax reigns in this file.
@@ -25,5 +26,5 @@ Index: ccache-3.3.4/dev.mk.in
-all_cppflags += -MD -MP -MF .deps/$(subst .._,,$(subst /,_,$<)).d
+all_cppflags += -MD -MP -MF .deps/$(subst .._,,$(subst /,_,$(subst $(srcdir)/,,$<))).d
+ A2X = a2x
ASCIIDOC = asciidoc
- CPPCHECK = cppcheck
diff --git a/poky/meta/recipes-devtools/ccache/files/Revert-Create-man-page-in-the-make-install-from-git-.patch b/poky/meta/recipes-devtools/ccache/files/Revert-Create-man-page-in-the-make-install-from-git-.patch
deleted file mode 100644
index f0208b9dc..000000000
--- a/poky/meta/recipes-devtools/ccache/files/Revert-Create-man-page-in-the-make-install-from-git-.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From 94fabcdda5c7e54ccdbc1f0aeccb26ce30e61226 Mon Sep 17 00:00:00 2001
-From: Robert Yang <liezhi.yang@windriver.com>
-Date: Mon, 18 Jul 2016 19:53:00 -0700
-Subject: [PATCH] Revert "Create man page in the make-install-from-git-repo
- case"
-
-This reverts commit b86784902d28defd5e475c8922de594787df4541.
-
-We dont' have asciidoc, so revert it.
-
-Upstream-Status: Inappropriate [OE-Core specific]
-
-Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
----
- Makefile.in | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/Makefile.in b/Makefile.in
-index d474f2a..c6cdc04 100644
---- a/Makefile.in
-+++ b/Makefile.in
-@@ -76,7 +76,7 @@ ccache$(EXEEXT): $(ccache_objs) $(extra_libs)
- $(CC) $(all_cflags) -o $@ $(ccache_objs) $(LDFLAGS) $(extra_libs) $(LIBS)
-
- .PHONY: install
--install: all $(srcdir)/ccache.1
-+install: all
- $(installcmd) -d $(DESTDIR)$(bindir)
- $(installcmd) -m 755 ccache$(EXEEXT) $(DESTDIR)$(bindir)
- $(installcmd) -d $(DESTDIR)$(mandir)/man1
---
-2.9.0
-
diff --git a/poky/meta/recipes-devtools/cmake/cmake-native_3.10.3.bb b/poky/meta/recipes-devtools/cmake/cmake-native_3.12.2.bb
index e55e8b1cf..9a1390f96 100644
--- a/poky/meta/recipes-devtools/cmake/cmake-native_3.10.3.bb
+++ b/poky/meta/recipes-devtools/cmake/cmake-native_3.12.2.bb
@@ -3,9 +3,12 @@ inherit native
DEPENDS += "bzip2-replacement-native expat-native xz-native zlib-native curl-native"
-SRC_URI += "\
- file://cmlibarchive-disable-ext2fs.patch \
-"
+SRC_URI += "file://OEToolchainConfig.cmake \
+ file://environment.d-cmake.sh \
+ file://0001-CMakeDetermineSystem-use-oe-environment-vars-to-load.patch \
+ file://0005-Disable-use-of-ext2fs-ext2_fs.h-by-cmake-s-internal-.patch \
+ "
+
B = "${WORKDIR}/build"
do_configure[cleandirs] = "${B}"
@@ -33,6 +36,15 @@ do_compile() {
do_install() {
oe_runmake 'DESTDIR=${D}' install
+
+ # The following codes are here because eSDK needs to provide compatibilty
+ # for SDK. That is, eSDK could also be used like traditional SDK.
+ mkdir -p ${D}${datadir}/cmake
+ install -m 644 ${WORKDIR}/OEToolchainConfig.cmake ${D}${datadir}/cmake/
+ mkdir -p ${D}${base_prefix}/environment-setup.d
+ install -m 644 ${WORKDIR}/environment.d-cmake.sh ${D}${base_prefix}/environment-setup.d/cmake.sh
}
do_compile[progress] = "percent"
+
+SYSROOT_DIRS_NATIVE += "${datadir}/cmake ${base_prefix}/environment-setup.d"
diff --git a/poky/meta/recipes-devtools/cmake/cmake.inc b/poky/meta/recipes-devtools/cmake/cmake.inc
index 394c9ebb5..09e28b73d 100644
--- a/poky/meta/recipes-devtools/cmake/cmake.inc
+++ b/poky/meta/recipes-devtools/cmake/cmake.inc
@@ -6,23 +6,19 @@ HOMEPAGE = "http://www.cmake.org/"
BUGTRACKER = "http://public.kitware.com/Bug/my_view_page.php"
SECTION = "console/utils"
LICENSE = "BSD"
-LIC_FILES_CHKSUM = "file://Copyright.txt;md5=79b5b78197c74d5c5f9c7ccadeee4e8c \
+LIC_FILES_CHKSUM = "file://Copyright.txt;md5=f61f5f859bc5ddba2b050eb10335e013 \
file://Source/cmake.h;md5=4494dee184212fc89c469c3acd555a14;beginline=1;endline=3 \
"
CMAKE_MAJOR_VERSION = "${@'.'.join(d.getVar('PV').split('.')[0:2])}"
SRC_URI = "https://cmake.org/files/v${CMAKE_MAJOR_VERSION}/cmake-${PV}.tar.gz \
- file://support-oe-qt4-tools-names.patch \
- file://qt4-fail-silent.patch \
- file://cmake-Prevent-the-detection-of-Qt5.patch \
- file://0001-FindBoost-Boost-1.66.0-dependency-and-release-update.patch \
- file://0001-FindBoost-Fix-incorrect-alphabetisation-of-headers-l.patch \
- file://0002-FindBoost-Implement-Architecture-and-Address-Model-t.patch \
- file://0003-FindBoost-Search-for-upstream-packaged-libs-next-to-.patch \
- "
+ file://0002-cmake-Prevent-the-detection-of-Qt5.patch \
+ file://0003-cmake-support-OpenEmbedded-Qt4-tool-binary-names.patch \
+ file://0004-Fail-silently-if-system-Qt-installation-is-broken.patch \
+"
-SRC_URI[md5sum] = "1c38c67295ca696aeafd8c059d748b38"
-SRC_URI[sha256sum] = "0c3a1dcf0be03e40cf4f341dda79c96ffb6c35ae35f2f911845b72dab3559cf8"
+SRC_URI[md5sum] = "6e7c550cfa1c2e216b35903dc70d80af"
+SRC_URI[sha256sum] = "0f97485799e51a7070cc11494f3e02349b0fc3a24cc12b082e737bf67a0581a4"
UPSTREAM_CHECK_REGEX = "cmake-(?P<pver>\d+(\.\d+)+)\.tar"
diff --git a/poky/meta/recipes-devtools/cmake/cmake/0001-CMakeDetermineSystem-use-oe-environment-vars-to-load.patch b/poky/meta/recipes-devtools/cmake/cmake/0001-CMakeDetermineSystem-use-oe-environment-vars-to-load.patch
new file mode 100644
index 000000000..f69072087
--- /dev/null
+++ b/poky/meta/recipes-devtools/cmake/cmake/0001-CMakeDetermineSystem-use-oe-environment-vars-to-load.patch
@@ -0,0 +1,47 @@
+From 71085723f8028b3e1c4029fc1abe1243ac49ffc6 Mon Sep 17 00:00:00 2001
+From: Cody P Schafer <dev@codyps.com>
+Date: Thu, 27 Apr 2017 11:35:05 -0400
+Subject: [PATCH 1/5] CMakeDetermineSystem: use oe environment vars to load
+ default toolchain file in sdk
+Organization: O.S. Systems Software LTDA.
+
+Passing the toolchain by:
+
+ - shell aliases does not work if cmake is called by a script
+ - unconditionally by a wrapper script causes cmake to believe it is
+ configuring things when it is not (for example, `cmake --build` breaks).
+
+The OE_CMAKE_TOOLCHAIN_FILE variable is only used as a default if no
+toolchain is explicitly specified.
+
+Setting the CMAKE_TOOLCHAIN_FILE cmake variable is marked as cached
+because '-D' options are cache entries themselves.
+
+Upstream-Status: Inappropriate [oe-core specific]
+Signed-off-by: Cody P Schafer <dev@codyps.com>
+Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
+---
+ Modules/CMakeDetermineSystem.cmake | 7 +++++++
+ 1 file changed, 7 insertions(+)
+
+diff --git a/Modules/CMakeDetermineSystem.cmake b/Modules/CMakeDetermineSystem.cmake
+index 600d5580e..32d7f1945 100644
+--- a/Modules/CMakeDetermineSystem.cmake
++++ b/Modules/CMakeDetermineSystem.cmake
+@@ -82,6 +82,13 @@ else()
+ endif()
+ endif()
+
++if(NOT DEFINED CMAKE_TOOLCHAIN_FILE)
++ if(DEFINED ENV{OE_CMAKE_TOOLCHAIN_FILE})
++ set(CMAKE_TOOLCHAIN_FILE "$ENV{OE_CMAKE_TOOLCHAIN_FILE}" CACHE FILEPATH "toolchain file")
++ message(STATUS "Toolchain file defaulted to '${CMAKE_TOOLCHAIN_FILE}'")
++ endif()
++endif()
++
+ # if a toolchain file is used, the user wants to cross compile.
+ # in this case read the toolchain file and keep the CMAKE_HOST_SYSTEM_*
+ # variables around so they can be used in CMakeLists.txt.
+--
+2.18.0
+
diff --git a/poky/meta/recipes-devtools/cmake/cmake/0001-FindBoost-Boost-1.66.0-dependency-and-release-update.patch b/poky/meta/recipes-devtools/cmake/cmake/0001-FindBoost-Boost-1.66.0-dependency-and-release-update.patch
deleted file mode 100644
index fda60e3f1..000000000
--- a/poky/meta/recipes-devtools/cmake/cmake/0001-FindBoost-Boost-1.66.0-dependency-and-release-update.patch
+++ /dev/null
@@ -1,52 +0,0 @@
-From 433a2d495a2481c63b82c11a30f7c642d6abe63f Mon Sep 17 00:00:00 2001
-From: "Paul \"TBBle\" Hampson" <Paul.Hampson@Pobox.com>
-Date: Fri, 29 Dec 2017 19:55:49 +1100
-Subject: [PATCH] FindBoost: Boost 1.66.0 dependency and release update
-
-Release notes: http://www.boost.org/users/history/version_1_66_0.html
-
-* All new libraries are header-only.
-* _Boost_COMPONENT_DEPENDENCIES is unchanged from 1.65.1
-* _Boost_FIBER_COMPILER_FEATURES is unchanged from 1.64.0
-
-Upstream-Status: Backport
-[Yocto 12762]
-Signed-off-by: Armin Kuster <akuster808@gmail.com>
-
----
- Modules/FindBoost.cmake | 8 ++++----
- 1 file changed, 4 insertions(+), 4 deletions(-)
-
-Index: cmake-3.10.3/Modules/FindBoost.cmake
-===================================================================
---- cmake-3.10.3.orig/Modules/FindBoost.cmake
-+++ cmake-3.10.3/Modules/FindBoost.cmake
-@@ -797,7 +797,7 @@ function(_Boost_COMPONENT_DEPENDENCIES c
- set(_Boost_WAVE_DEPENDENCIES filesystem system serialization thread chrono date_time atomic)
- set(_Boost_WSERIALIZATION_DEPENDENCIES serialization)
- endif()
-- if(NOT Boost_VERSION VERSION_LESS 106600)
-+ if(NOT Boost_VERSION VERSION_LESS 106700)
- message(WARNING "New Boost version may have incorrect or missing dependencies and imported targets")
- set(_Boost_IMPORTED_TARGETS FALSE)
- endif()
-@@ -931,8 +931,8 @@ endfunction()
- # `${Boost_ROOT}/libs/fiber/build/Jamfile.v2`.
- #
- function(_Boost_COMPILER_FEATURES component _ret)
-- # Boost >= 1.62 and < 1.65
-- if(NOT Boost_VERSION VERSION_LESS 106200 AND Boost_VERSION VERSION_LESS 106500)
-+ # Boost >= 1.62 and < 1.67
-+ if(NOT Boost_VERSION VERSION_LESS 106200 AND Boost_VERSION VERSION_LESS 106700)
- set(_Boost_FIBER_COMPILER_FEATURES
- cxx_alias_templates
- cxx_auto_type
-@@ -1038,7 +1038,7 @@ else()
- # _Boost_COMPONENT_HEADERS. See the instructions at the top of
- # _Boost_COMPONENT_DEPENDENCIES.
- set(_Boost_KNOWN_VERSIONS ${Boost_ADDITIONAL_VERSIONS}
-- "1.65.1" "1.65.0" "1.65"
-+ "1.66.0" "1.66" "1.65.1" "1.65.0" "1.65"
- "1.64.0" "1.64" "1.63.0" "1.63" "1.62.0" "1.62" "1.61.0" "1.61" "1.60.0" "1.60"
- "1.59.0" "1.59" "1.58.0" "1.58" "1.57.0" "1.57" "1.56.0" "1.56" "1.55.0" "1.55"
- "1.54.0" "1.54" "1.53.0" "1.53" "1.52.0" "1.52" "1.51.0" "1.51"
diff --git a/poky/meta/recipes-devtools/cmake/cmake/0001-FindBoost-Fix-incorrect-alphabetisation-of-headers-l.patch b/poky/meta/recipes-devtools/cmake/cmake/0001-FindBoost-Fix-incorrect-alphabetisation-of-headers-l.patch
deleted file mode 100644
index a45eda520..000000000
--- a/poky/meta/recipes-devtools/cmake/cmake/0001-FindBoost-Fix-incorrect-alphabetisation-of-headers-l.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From b1e9f67137733bc109d355450fcd06edda4784c5 Mon Sep 17 00:00:00 2001
-From: "Paul \"TBBle\" Hampson" <Paul.Hampson@Pobox.com>
-Date: Fri, 29 Dec 2017 20:07:31 +1100
-Subject: [PATCH 1/6] FindBoost: Fix incorrect alphabetisation of headers list
-
-Affects cmake < 3.11.0
-
-Upsteam-Status: Backport
-[Yocto 12762]
-Signed-off-by: Armin Kuster <akuster808@gmail.com>
-
----
- Modules/FindBoost.cmake | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-Index: cmake-3.10.3/Modules/FindBoost.cmake
-===================================================================
---- cmake-3.10.3.orig/Modules/FindBoost.cmake
-+++ cmake-3.10.3/Modules/FindBoost.cmake
-@@ -831,8 +831,8 @@ function(_Boost_COMPONENT_HEADERS compon
- set(_Boost_CONTAINER_HEADERS "boost/container/container_fwd.hpp")
- set(_Boost_CONTEXT_HEADERS "boost/context/all.hpp")
- set(_Boost_COROUTINE_HEADERS "boost/coroutine/all.hpp")
-- set(_Boost_EXCEPTION_HEADERS "boost/exception/exception.hpp")
- set(_Boost_DATE_TIME_HEADERS "boost/date_time/date.hpp")
-+ set(_Boost_EXCEPTION_HEADERS "boost/exception/exception.hpp")
- set(_Boost_FIBER_HEADERS "boost/fiber/all.hpp")
- set(_Boost_FILESYSTEM_HEADERS "boost/filesystem/path.hpp")
- set(_Boost_GRAPH_HEADERS "boost/graph/adjacency_list.hpp")
diff --git a/poky/meta/recipes-devtools/cmake/cmake/0002-FindBoost-Implement-Architecture-and-Address-Model-t.patch b/poky/meta/recipes-devtools/cmake/cmake/0002-FindBoost-Implement-Architecture-and-Address-Model-t.patch
deleted file mode 100644
index 88301c64c..000000000
--- a/poky/meta/recipes-devtools/cmake/cmake/0002-FindBoost-Implement-Architecture-and-Address-Model-t.patch
+++ /dev/null
@@ -1,132 +0,0 @@
-From b044f69a413123f15a05034c00a8e3763764a1e5 Mon Sep 17 00:00:00 2001
-From: "Paul \"TBBle\" Hampson" <Paul.Hampson@Pobox.com>
-Date: Fri, 29 Dec 2017 21:50:54 +1100
-Subject: [PATCH 2/6] FindBoost: Implement "Architecture and Address Model" tag
-
-This tag is new in Boost 1.66.0, and is present in the 'versioned'
-library file name layout.
-
-Affects cmake < 3.11.0
-
-Upsteam-Status: Backport
-[Yocto 12762]
-Signed-off-by: Armin Kuster <akuster808@gmail.com>
-
----
- Modules/FindBoost.cmake | 52 +++++++++++++++++++++++++++++++++++++++----------
- 1 file changed, 42 insertions(+), 10 deletions(-)
-
-Index: cmake-3.10.3/Modules/FindBoost.cmake
-===================================================================
---- cmake-3.10.3.orig/Modules/FindBoost.cmake
-+++ cmake-3.10.3/Modules/FindBoost.cmake
-@@ -1385,8 +1385,11 @@ if(Boost_DEBUG)
- endif()
-
- #======================
--# Systematically build up the Boost ABI tag
--# http://boost.org/doc/libs/1_41_0/more/getting_started/windows.html#library-naming
-+# Systematically build up the Boost ABI tag for the 'tagged' and 'versioned' layouts
-+# http://boost.org/doc/libs/1_66_0/more/getting_started/windows.html#library-naming
-+# http://boost.org/doc/libs/1_66_0/boost/config/auto_link.hpp
-+# http://boost.org/doc/libs/1_66_0/tools/build/src/tools/common.jam
-+# http://boost.org/doc/libs/1_66_0/boostcpp.jam
- set( _boost_RELEASE_ABI_TAG "-")
- set( _boost_DEBUG_ABI_TAG "-")
- # Key Use this library when:
-@@ -1418,11 +1421,40 @@ if(Boost_USE_STLPORT)
- string(APPEND _boost_DEBUG_ABI_TAG "p")
- endif()
- # n using the STLport deprecated "native iostreams" feature
-+# removed from the documentation in 1.43.0 but still present in
-+# boost/config/auto_link.hpp
- if(Boost_USE_STLPORT_DEPRECATED_NATIVE_IOSTREAMS)
- string(APPEND _boost_RELEASE_ABI_TAG "n")
- string(APPEND _boost_DEBUG_ABI_TAG "n")
- endif()
-
-+# -x86 Architecture and address model tag
-+# First character is the architecture, then word-size, either 32 or 64
-+# Only used in 'versioned' layout, added in Boost 1.66.0
-+set(_boost_ARCHITECTURE_TAG "")
-+# {CMAKE_CXX_COMPILER_ARCHITECTURE_ID} is not currently set for all compilers
-+if(NOT "x${CMAKE_CXX_COMPILER_ARCHITECTURE_ID}" STREQUAL "x" AND NOT Boost_VERSION VERSION_LESS 106600)
-+ string(APPEND _boost_ARCHITECTURE_TAG "-")
-+ # This needs to be kept in-sync with the section of CMakePlatformId.h.in
-+ # inside 'defined(_WIN32) && defined(_MSC_VER)'
-+ if(${CMAKE_CXX_COMPILER_ARCHITECTURE_ID} STREQUAL "IA64")
-+ string(APPEND _boost_ARCHITECTURE_TAG "i")
-+ elseif(${CMAKE_CXX_COMPILER_ARCHITECTURE_ID} STREQUAL "X86"
-+ OR ${CMAKE_CXX_COMPILER_ARCHITECTURE_ID} STREQUAL "x64")
-+ string(APPEND _boost_ARCHITECTURE_TAG "x")
-+ elseif(${CMAKE_CXX_COMPILER_ARCHITECTURE_ID} MATCHES "^ARM")
-+ string(APPEND _boost_ARCHITECTURE_TAG "a")
-+ elseif(${CMAKE_CXX_COMPILER_ARCHITECTURE_ID} STREQUAL "MIPS")
-+ string(APPEND _boost_ARCHITECTURE_TAG "m")
-+ endif()
-+
-+ if(CMAKE_SIZEOF_VOID_P EQUAL 8)
-+ string(APPEND _boost_ARCHITECTURE_TAG "64")
-+ else()
-+ string(APPEND _boost_ARCHITECTURE_TAG "32")
-+ endif()
-+endif()
-+
- if(Boost_DEBUG)
- message(STATUS "[ ${CMAKE_CURRENT_LIST_FILE}:${CMAKE_CURRENT_LIST_LINE} ] "
- "_boost_RELEASE_ABI_TAG = ${_boost_RELEASE_ABI_TAG}")
-@@ -1616,22 +1648,22 @@ foreach(COMPONENT ${Boost_FIND_COMPONENT
- unset(_boost_RELEASE_NAMES)
- foreach(compiler IN LISTS _boost_COMPILER)
- list(APPEND _boost_RELEASE_NAMES
-- ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${compiler}${_boost_MULTITHREADED}${_boost_RELEASE_ABI_TAG}-${Boost_LIB_VERSION}
-+ ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${compiler}${_boost_MULTITHREADED}${_boost_RELEASE_ABI_TAG}${_boost_ARCHITECTURE_TAG}-${Boost_LIB_VERSION}
- ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${compiler}${_boost_MULTITHREADED}${_boost_RELEASE_ABI_TAG} )
- endforeach()
- list(APPEND _boost_RELEASE_NAMES
-- ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${_boost_MULTITHREADED}${_boost_RELEASE_ABI_TAG}-${Boost_LIB_VERSION}
-+ ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${_boost_MULTITHREADED}${_boost_RELEASE_ABI_TAG}${_boost_ARCHITECTURE_TAG}-${Boost_LIB_VERSION}
- ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${_boost_MULTITHREADED}${_boost_RELEASE_ABI_TAG}
- ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT} )
- if(_boost_STATIC_RUNTIME_WORKAROUND)
- set(_boost_RELEASE_STATIC_ABI_TAG "-s${_boost_RELEASE_ABI_TAG}")
- foreach(compiler IN LISTS _boost_COMPILER)
- list(APPEND _boost_RELEASE_NAMES
-- ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${compiler}${_boost_MULTITHREADED}${_boost_RELEASE_STATIC_ABI_TAG}-${Boost_LIB_VERSION}
-+ ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${compiler}${_boost_MULTITHREADED}${_boost_RELEASE_STATIC_ABI_TAG}${_boost_ARCHITECTURE_TAG}-${Boost_LIB_VERSION}
- ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${compiler}${_boost_MULTITHREADED}${_boost_RELEASE_STATIC_ABI_TAG} )
- endforeach()
- list(APPEND _boost_RELEASE_NAMES
-- ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${_boost_MULTITHREADED}${_boost_RELEASE_STATIC_ABI_TAG}-${Boost_LIB_VERSION}
-+ ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${_boost_MULTITHREADED}${_boost_RELEASE_STATIC_ABI_TAG}${_boost_ARCHITECTURE_TAG}-${Boost_LIB_VERSION}
- ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${_boost_MULTITHREADED}${_boost_RELEASE_STATIC_ABI_TAG} )
- endif()
- if(Boost_THREADAPI AND ${COMPONENT} STREQUAL "thread")
-@@ -1666,11 +1698,11 @@ foreach(COMPONENT ${Boost_FIND_COMPONENT
- unset(_boost_DEBUG_NAMES)
- foreach(compiler IN LISTS _boost_COMPILER)
- list(APPEND _boost_DEBUG_NAMES
-- ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${compiler}${_boost_MULTITHREADED}${_boost_DEBUG_ABI_TAG}-${Boost_LIB_VERSION}
-+ ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${compiler}${_boost_MULTITHREADED}${_boost_DEBUG_ABI_TAG}${_boost_ARCHITECTURE_TAG}-${Boost_LIB_VERSION}
- ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${compiler}${_boost_MULTITHREADED}${_boost_DEBUG_ABI_TAG} )
- endforeach()
- list(APPEND _boost_DEBUG_NAMES
-- ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${_boost_MULTITHREADED}${_boost_DEBUG_ABI_TAG}-${Boost_LIB_VERSION}
-+ ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${_boost_MULTITHREADED}${_boost_DEBUG_ABI_TAG}${_boost_ARCHITECTURE_TAG}-${Boost_LIB_VERSION}
- ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${_boost_MULTITHREADED}${_boost_DEBUG_ABI_TAG}
- ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${_boost_MULTITHREADED}
- ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT} )
-@@ -1678,11 +1710,11 @@ foreach(COMPONENT ${Boost_FIND_COMPONENT
- set(_boost_DEBUG_STATIC_ABI_TAG "-s${_boost_DEBUG_ABI_TAG}")
- foreach(compiler IN LISTS _boost_COMPILER)
- list(APPEND _boost_DEBUG_NAMES
-- ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${compiler}${_boost_MULTITHREADED}${_boost_DEBUG_STATIC_ABI_TAG}-${Boost_LIB_VERSION}
-+ ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${compiler}${_boost_MULTITHREADED}${_boost_DEBUG_STATIC_ABI_TAG}${_boost_ARCHITECTURE_TAG}-${Boost_LIB_VERSION}
- ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${compiler}${_boost_MULTITHREADED}${_boost_DEBUG_STATIC_ABI_TAG} )
- endforeach()
- list(APPEND _boost_DEBUG_NAMES
-- ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${_boost_MULTITHREADED}${_boost_DEBUG_STATIC_ABI_TAG}-${Boost_LIB_VERSION}
-+ ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${_boost_MULTITHREADED}${_boost_DEBUG_STATIC_ABI_TAG}${_boost_ARCHITECTURE_TAG}-${Boost_LIB_VERSION}
- ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${_boost_MULTITHREADED}${_boost_DEBUG_STATIC_ABI_TAG} )
- endif()
- if(Boost_THREADAPI AND ${COMPONENT} STREQUAL "thread")
diff --git a/poky/meta/recipes-devtools/cmake/cmake/0002-cmake-Prevent-the-detection-of-Qt5.patch b/poky/meta/recipes-devtools/cmake/cmake/0002-cmake-Prevent-the-detection-of-Qt5.patch
new file mode 100644
index 000000000..6f788ada0
--- /dev/null
+++ b/poky/meta/recipes-devtools/cmake/cmake/0002-cmake-Prevent-the-detection-of-Qt5.patch
@@ -0,0 +1,122 @@
+From 7a1f4e724f9c68498f401244c2938e784a2e6fbd Mon Sep 17 00:00:00 2001
+From: Otavio Salvador <otavio@ossystems.com.br>
+Date: Wed, 17 Jan 2018 10:02:14 -0200
+Subject: [PATCH 2/5] cmake: Prevent the detection of Qt5
+Organization: O.S. Systems Software LTDA.
+
+CMake doesn't have dependency on qt4/qt5, so these tests usually fail
+but still can cause undeterministic results or build failures (when
+OE_QMAKE_PATH_EXTERNAL_HOST_BINS is undefined or native qmake removed
+while running the test in cmake)
+
+Upstream-Status: Inappropriate [configuration]
+
+Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
+---
+ Source/QtDialog/CMakeLists.txt | 2 +-
+ Tests/CMakeLists.txt | 2 +-
+ Tests/Qt4And5Automoc/CMakeLists.txt | 4 ++--
+ Tests/QtAutogen/AutogenTest.cmake | 2 +-
+ Tests/QtAutogen/MacOsFW/CMakeLists.txt | 2 +-
+ Tests/RunCMake/CMakeLists.txt | 2 +-
+ Tests/RunCMake/IncompatibleQt/IncompatibleQt.cmake | 2 +-
+ 7 files changed, 8 insertions(+), 8 deletions(-)
+
+diff --git a/Source/QtDialog/CMakeLists.txt b/Source/QtDialog/CMakeLists.txt
+index 330b74729..e7709dee6 100644
+--- a/Source/QtDialog/CMakeLists.txt
++++ b/Source/QtDialog/CMakeLists.txt
+@@ -6,7 +6,7 @@ if(POLICY CMP0020)
+ cmake_policy(SET CMP0020 NEW) # Drop when CMake >= 2.8.11 required
+ endif()
+ CMake_OPTIONAL_COMPONENT(cmake-gui)
+-find_package(Qt5Widgets QUIET)
++#find_package(Qt5Widgets QUIET)
+ if (Qt5Widgets_FOUND)
+ include_directories(${Qt5Widgets_INCLUDE_DIRS})
+ add_definitions(${Qt5Widgets_DEFINITONS})
+diff --git a/Tests/CMakeLists.txt b/Tests/CMakeLists.txt
+index b8b724ed8..63f6bb6d2 100644
+--- a/Tests/CMakeLists.txt
++++ b/Tests/CMakeLists.txt
+@@ -1322,7 +1322,7 @@ ${CMake_BINARY_DIR}/bin/cmake -DDIR=dev -P ${CMake_SOURCE_DIR}/Utilities/Release
+ set(CMake_TEST_Qt5 1)
+ endif()
+ if(CMake_TEST_Qt5)
+- find_package(Qt5Widgets QUIET NO_MODULE)
++ #find_package(Qt5Widgets QUIET NO_MODULE)
+ endif()
+ if(CMake_TEST_Qt5 AND Qt5Widgets_FOUND)
+ add_subdirectory(Qt5Autogen)
+diff --git a/Tests/Qt4And5Automoc/CMakeLists.txt b/Tests/Qt4And5Automoc/CMakeLists.txt
+index ad74961d9..a9dd74b15 100644
+--- a/Tests/Qt4And5Automoc/CMakeLists.txt
++++ b/Tests/Qt4And5Automoc/CMakeLists.txt
+@@ -3,11 +3,11 @@ cmake_minimum_required(VERSION 2.8.12)
+ project(Qt4And5Automoc)
+
+ if (QT_REVERSE_FIND_ORDER)
+- find_package(Qt5Core REQUIRED)
++ #find_package(Qt5Core REQUIRED)
+ find_package(Qt4 REQUIRED)
+ else()
+ find_package(Qt4 REQUIRED)
+- find_package(Qt5Core REQUIRED)
++ #find_package(Qt5Core REQUIRED)
+ endif()
+
+ set(CMAKE_AUTOMOC ON)
+diff --git a/Tests/QtAutogen/AutogenTest.cmake b/Tests/QtAutogen/AutogenTest.cmake
+index 8c0a14fca..e9923b21a 100644
+--- a/Tests/QtAutogen/AutogenTest.cmake
++++ b/Tests/QtAutogen/AutogenTest.cmake
+@@ -22,7 +22,7 @@ if (QT_TEST_VERSION STREQUAL 4)
+ endmacro()
+
+ elseif(QT_TEST_VERSION STREQUAL 5)
+- find_package(Qt5Widgets REQUIRED)
++ #find_package(Qt5Widgets REQUIRED)
+
+ set(QT_QTCORE_TARGET Qt5::Core)
+ set(QT_QTGUI_TARGET Qt5::Widgets)
+diff --git a/Tests/QtAutogen/MacOsFW/CMakeLists.txt b/Tests/QtAutogen/MacOsFW/CMakeLists.txt
+index 26d201926..e48e1c8de 100644
+--- a/Tests/QtAutogen/MacOsFW/CMakeLists.txt
++++ b/Tests/QtAutogen/MacOsFW/CMakeLists.txt
+@@ -2,7 +2,7 @@ cmake_minimum_required(VERSION 3.10)
+ project(MacOsFW)
+ include("../AutogenTest.cmake")
+
+-find_package(Qt5Test REQUIRED)
++#find_package(Qt5Test REQUIRED)
+
+ set(CMAKE_CXX_STANDARD 11)
+ set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/output/bin)
+diff --git a/Tests/RunCMake/CMakeLists.txt b/Tests/RunCMake/CMakeLists.txt
+index 637c5c2cb..c0376effc 100644
+--- a/Tests/RunCMake/CMakeLists.txt
++++ b/Tests/RunCMake/CMakeLists.txt
+@@ -291,7 +291,7 @@ add_RunCMake_test(configure_file)
+ add_RunCMake_test(CTestTimeoutAfterMatch)
+
+ find_package(Qt4 QUIET)
+-find_package(Qt5Core QUIET)
++#find_package(Qt5Core QUIET)
+ if (QT4_FOUND AND Qt5Core_FOUND AND NOT Qt5Core_VERSION VERSION_LESS 5.1.0)
+ add_RunCMake_test(IncompatibleQt)
+ endif()
+diff --git a/Tests/RunCMake/IncompatibleQt/IncompatibleQt.cmake b/Tests/RunCMake/IncompatibleQt/IncompatibleQt.cmake
+index 4fccdc418..b76e1e531 100644
+--- a/Tests/RunCMake/IncompatibleQt/IncompatibleQt.cmake
++++ b/Tests/RunCMake/IncompatibleQt/IncompatibleQt.cmake
+@@ -1,6 +1,6 @@
+
+ find_package(Qt4 REQUIRED)
+-find_package(Qt5Core REQUIRED)
++#find_package(Qt5Core REQUIRED)
+
+ add_executable(mainexe main.cpp)
+ target_link_libraries(mainexe Qt4::QtCore Qt5::Core)
+--
+2.18.0
+
diff --git a/poky/meta/recipes-devtools/cmake/cmake/0003-FindBoost-Search-for-upstream-packaged-libs-next-to-.patch b/poky/meta/recipes-devtools/cmake/cmake/0003-FindBoost-Search-for-upstream-packaged-libs-next-to-.patch
deleted file mode 100644
index 5178f5c4d..000000000
--- a/poky/meta/recipes-devtools/cmake/cmake/0003-FindBoost-Search-for-upstream-packaged-libs-next-to-.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From d56deff7d127b030739bd0034609d0046121d8cd Mon Sep 17 00:00:00 2001
-From: "Paul \"TBBle\" Hampson" <Paul.Hampson@Pobox.com>
-Date: Fri, 29 Dec 2017 22:38:36 +1100
-Subject: [PATCH 3/6] FindBoost: Search for upstream-packaged libs next to
- includes
-
-Upstream packages Boost binaries for Windows with the 'boost' directory
-(the INCLUDE_DIR) next to the lib-... directory (the LIBRARY_DIR).
-
-Affects cmake < 3.11.0
-
-Upsteam-Status: Backport
-[Yocto 12762]
-Signed-off-by: Armin Kuster <akuster808@gmail.com>
-
----
- Modules/FindBoost.cmake | 1 +
- 1 file changed, 1 insertion(+)
-
-Index: cmake-3.10.3/Modules/FindBoost.cmake
-===================================================================
---- cmake-3.10.3.orig/Modules/FindBoost.cmake
-+++ cmake-3.10.3/Modules/FindBoost.cmake
-@@ -1502,6 +1502,7 @@ foreach(c DEBUG RELEASE)
- ${Boost_INCLUDE_DIR}/stage/lib
- )
- _Boost_UPDATE_WINDOWS_LIBRARY_SEARCH_DIRS_WITH_PREBUILT_PATHS(_boost_LIBRARY_SEARCH_DIRS_${c} "${Boost_INCLUDE_DIR}/..")
-+ _Boost_UPDATE_WINDOWS_LIBRARY_SEARCH_DIRS_WITH_PREBUILT_PATHS(_boost_LIBRARY_SEARCH_DIRS_${c} "${Boost_INCLUDE_DIR}")
- if( Boost_NO_SYSTEM_PATHS )
- list(APPEND _boost_LIBRARY_SEARCH_DIRS_${c} NO_CMAKE_SYSTEM_PATH NO_SYSTEM_ENVIRONMENT_PATH)
- else()
diff --git a/poky/meta/recipes-devtools/cmake/cmake/support-oe-qt4-tools-names.patch b/poky/meta/recipes-devtools/cmake/cmake/0003-cmake-support-OpenEmbedded-Qt4-tool-binary-names.patch
index 684155476..55cf47188 100644
--- a/poky/meta/recipes-devtools/cmake/cmake/support-oe-qt4-tools-names.patch
+++ b/poky/meta/recipes-devtools/cmake/cmake/0003-cmake-support-OpenEmbedded-Qt4-tool-binary-names.patch
@@ -1,7 +1,8 @@
-From 10b8b523869124d2fc8cd98d9e028c0bcffd61b1 Mon Sep 17 00:00:00 2001
+From c783ceeef485c23e13c3d9f0418719cb0e0b86ee Mon Sep 17 00:00:00 2001
From: Otavio Salvador <otavio@ossystems.com.br>
Date: Thu, 12 May 2011 15:36:03 +0000
-Subject: [PATCH 1/2] cmake: support OpenEmbedded Qt4 tool binary names
+Subject: [PATCH 3/5] cmake: support OpenEmbedded Qt4 tool binary names
+Organization: O.S. Systems Software LTDA.
The FindQt4 module looks for Qt4 binaries to be able to gather the
paths used for compilation and also to be using during other processes
@@ -18,16 +19,16 @@ The patch was slightly adapted in order to match cmake 3.2.2:
Instead of find_program, _find_qt4_program is now used.
Signed-off-by: Moritz Blume <moritz.blume@bmw-carit.de>
-
+Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
---
Modules/FindQt4.cmake | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/Modules/FindQt4.cmake b/Modules/FindQt4.cmake
-index c67d0be..0cf169b 100644
+index 847a798af..7ad981879 100644
--- a/Modules/FindQt4.cmake
+++ b/Modules/FindQt4.cmake
-@@ -516,7 +516,7 @@ endfunction()
+@@ -517,7 +517,7 @@ endfunction()
set(QT4_INSTALLED_VERSION_TOO_OLD FALSE)
@@ -36,7 +37,7 @@ index c67d0be..0cf169b 100644
_qt4_find_qmake("${_QT4_QMAKE_NAMES}" QT_QMAKE_EXECUTABLE QTVERSION)
if (QT_QMAKE_EXECUTABLE AND
-@@ -1142,12 +1142,12 @@ if (QT_QMAKE_EXECUTABLE AND
+@@ -1135,12 +1135,12 @@ if (QT_QMAKE_EXECUTABLE AND
_find_qt4_program(QT_MOC_EXECUTABLE Qt4::moc moc-qt4 moc4 moc)
_find_qt4_program(QT_UIC_EXECUTABLE Qt4::uic uic-qt4 uic4 uic)
_find_qt4_program(QT_UIC3_EXECUTABLE Qt4::uic3 uic3)
@@ -54,5 +55,5 @@ index c67d0be..0cf169b 100644
_find_qt4_program(QT_LINGUIST_EXECUTABLE Qt4::linguist linguist-qt4 linguist4 linguist)
--
-2.7.4
+2.18.0
diff --git a/poky/meta/recipes-devtools/cmake/cmake/qt4-fail-silent.patch b/poky/meta/recipes-devtools/cmake/cmake/0004-Fail-silently-if-system-Qt-installation-is-broken.patch
index 80fc277fa..a59c68045 100644
--- a/poky/meta/recipes-devtools/cmake/cmake/qt4-fail-silent.patch
+++ b/poky/meta/recipes-devtools/cmake/cmake/0004-Fail-silently-if-system-Qt-installation-is-broken.patch
@@ -1,4 +1,8 @@
-Fail silently if system Qt installation is broken
+From 9516fc4260f701c6d9db0c341bb36480362e1747 Mon Sep 17 00:00:00 2001
+From: Otavio Salvador <otavio@ossystems.com.br>
+Date: Thu, 5 Jul 2018 10:26:48 -0300
+Subject: [PATCH 4/5] Fail silently if system Qt installation is broken
+Organization: O.S. Systems Software LTDA.
Fixes a regression in behaviour from 2.8.10 to 2.8.11 resulting in the
following error if the system Qt installation is broken:
@@ -18,15 +22,16 @@ Another set_property was introduced which had to be included
within the if(QT_QTCORE_FOUND) statement.
Signed-off-by: Moritz Blume <moritz.blume@bmw-carit.de>
+Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
---
Modules/FindQt4.cmake | 39 ++++++++++++++++++++-------------------
1 file changed, 20 insertions(+), 19 deletions(-)
diff --git a/Modules/FindQt4.cmake b/Modules/FindQt4.cmake
-index 6704769..9048e35 100644
+index 7ad981879..8b6f43cda 100644
--- a/Modules/FindQt4.cmake
+++ b/Modules/FindQt4.cmake
-@@ -1000,25 +1000,26 @@ if (QT_QMAKE_EXECUTABLE AND
+@@ -987,25 +987,26 @@ if (QT_QMAKE_EXECUTABLE AND
endif()
endmacro()
@@ -73,5 +78,5 @@ index 6704769..9048e35 100644
foreach(QT_MODULE ${QT_MODULES})
_QT4_ADJUST_LIB_VARS(${QT_MODULE})
--
-1.9.1
+2.18.0
diff --git a/poky/meta/recipes-devtools/cmake/cmake/cmlibarchive-disable-ext2fs.patch b/poky/meta/recipes-devtools/cmake/cmake/0005-Disable-use-of-ext2fs-ext2_fs.h-by-cmake-s-internal-.patch
index bf3671259..23ce8e9e4 100644
--- a/poky/meta/recipes-devtools/cmake/cmake/cmlibarchive-disable-ext2fs.patch
+++ b/poky/meta/recipes-devtools/cmake/cmake/0005-Disable-use-of-ext2fs-ext2_fs.h-by-cmake-s-internal-.patch
@@ -1,4 +1,9 @@
-Disable use of ext2fs/ext2_fs.h by cmake's internal libarchive copy
+From 0df8d46d14c371f21c327966a553c4c187a8acfe Mon Sep 17 00:00:00 2001
+From: Otavio Salvador <otavio@ossystems.com.br>
+Date: Thu, 5 Jul 2018 10:28:04 -0300
+Subject: [PATCH 5/5] Disable use of ext2fs/ext2_fs.h by cmake's internal
+ libarchive copy
+Organization: O.S. Systems Software LTDA.
We don't want to add a dependency on e2fsprogs-native for cmake-native,
and we don't use CPack so just disable this functionality.
@@ -6,10 +11,16 @@ and we don't use CPack so just disable this functionality.
Upstream-Status: Inappropriate [config]
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
+Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
+---
+ Utilities/cmlibarchive/CMakeLists.txt | 8 ++------
+ 1 file changed, 2 insertions(+), 6 deletions(-)
+diff --git a/Utilities/cmlibarchive/CMakeLists.txt b/Utilities/cmlibarchive/CMakeLists.txt
+index 206f3c6a5..642fb0dd9 100644
--- a/Utilities/cmlibarchive/CMakeLists.txt
+++ b/Utilities/cmlibarchive/CMakeLists.txt
-@@ -237,12 +237,8 @@ LA_CHECK_INCLUDE_FILE("copyfile.h" HAVE_COPYFILE_H)
+@@ -400,12 +400,8 @@ LA_CHECK_INCLUDE_FILE("copyfile.h" HAVE_COPYFILE_H)
LA_CHECK_INCLUDE_FILE("direct.h" HAVE_DIRECT_H)
LA_CHECK_INCLUDE_FILE("dlfcn.h" HAVE_DLFCN_H)
LA_CHECK_INCLUDE_FILE("errno.h" HAVE_ERRNO_H)
@@ -24,3 +35,6 @@ Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
LA_CHECK_INCLUDE_FILE("fcntl.h" HAVE_FCNTL_H)
LA_CHECK_INCLUDE_FILE("grp.h" HAVE_GRP_H)
LA_CHECK_INCLUDE_FILE("inttypes.h" HAVE_INTTYPES_H)
+--
+2.18.0
+
diff --git a/poky/meta/recipes-devtools/cmake/cmake/OEToolchainConfig.cmake b/poky/meta/recipes-devtools/cmake/cmake/OEToolchainConfig.cmake
index dc8477ea3..8a0fb4cb1 100644
--- a/poky/meta/recipes-devtools/cmake/cmake/OEToolchainConfig.cmake
+++ b/poky/meta/recipes-devtools/cmake/cmake/OEToolchainConfig.cmake
@@ -3,6 +3,7 @@ set( CMAKE_C_FLAGS $ENV{CFLAGS} CACHE STRING "" FORCE )
set( CMAKE_CXX_FLAGS $ENV{CXXFLAGS} CACHE STRING "" FORCE )
set( CMAKE_ASM_FLAGS ${CMAKE_C_FLAGS} CACHE STRING "" FORCE )
set( CMAKE_LDFLAGS_FLAGS ${CMAKE_CXX_FLAGS} CACHE STRING "" FORCE )
+set( CMAKE_SYSROOT $ENV{OECORE_TARGET_SYSROOT} )
set( CMAKE_FIND_ROOT_PATH $ENV{OECORE_TARGET_SYSROOT} $ENV{OECORE_NATIVE_SYSROOT} )
set( CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER )
@@ -10,6 +11,8 @@ set( CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY )
set( CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY )
set( CMAKE_FIND_ROOT_PATH_MODE_PACKAGE ONLY )
+set(CMAKE_FIND_LIBRARY_CUSTOM_LIB_SUFFIX "$ENV{OE_CMAKE_FIND_LIBRARY_CUSTOM_LIB_SUFFIX}")
+
# Set CMAKE_SYSTEM_PROCESSOR from the sysroot name (assuming processor-distro-os).
if ($ENV{SDKTARGETSYSROOT} MATCHES "/sysroots/([a-zA-Z0-9_-]+)-.+-.+")
set(CMAKE_SYSTEM_PROCESSOR ${CMAKE_MATCH_1})
diff --git a/poky/meta/recipes-devtools/cmake/cmake/cmake-Prevent-the-detection-of-Qt5.patch b/poky/meta/recipes-devtools/cmake/cmake/cmake-Prevent-the-detection-of-Qt5.patch
deleted file mode 100644
index 88b7e9474..000000000
--- a/poky/meta/recipes-devtools/cmake/cmake/cmake-Prevent-the-detection-of-Qt5.patch
+++ /dev/null
@@ -1,215 +0,0 @@
-From 875c11dbf87d1258ad7d3697a40d605d503e5673 Mon Sep 17 00:00:00 2001
-From: Otavio Salvador <otavio@ossystems.com.br>
-Date: Wed, 17 Jan 2018 10:02:14 -0200
-Subject: [PATCH] cmake: Prevent the detection of Qt5
-Organization: O.S. Systems Software LTDA.
-
-CMake doesn't have dependency on qt4/qt5, so these tests usually fail
-but still can cause undeterministic results or build failures (when
-OE_QMAKE_PATH_EXTERNAL_HOST_BINS is undefined or native qmake removed
-while running the test in cmake)
-
-Upstream-Status: Inappropriate [configuration]
-
-Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
----
- Source/QtDialog/CMakeLists.txt | 2 +-
- Tests/CMakeLists.txt | 2 +-
- Tests/Qt4And5Automoc/CMakeLists.txt | 4 ++--
- Tests/QtAutoUicInterface/CMakeLists.txt | 2 +-
- Tests/QtAutogen/CMakeLists.txt | 2 +-
- Tests/QtAutogen/macosFW/CMakeLists.txt | 2 +-
- Tests/QtAutogen/mocDepends/CMakeLists.txt | 2 +-
- Tests/QtAutogenRerun/CMakeLists.txt | 4 ++--
- Tests/QtAutogenRerun/mocPlugin/CMakeLists.txt | 2 +-
- Tests/QtAutogenRerun/mocRerun/CMakeLists.txt | 2 +-
- Tests/QtAutogenRerun/rccDepends/CMakeLists.txt | 2 +-
- Tests/RunCMake/CMakeLists.txt | 2 +-
- Tests/RunCMake/IncompatibleQt/IncompatibleQt.cmake | 2 +-
- 13 files changed, 15 insertions(+), 15 deletions(-)
-
-diff --git a/Source/QtDialog/CMakeLists.txt b/Source/QtDialog/CMakeLists.txt
-index b38797bca..b5fbfc5fa 100644
---- a/Source/QtDialog/CMakeLists.txt
-+++ b/Source/QtDialog/CMakeLists.txt
-@@ -6,7 +6,7 @@ if(POLICY CMP0020)
- cmake_policy(SET CMP0020 NEW) # Drop when CMake >= 2.8.11 required
- endif()
- CMake_OPTIONAL_COMPONENT(cmake-gui)
--find_package(Qt5Widgets QUIET)
-+#find_package(Qt5Widgets QUIET)
- if (Qt5Widgets_FOUND)
- include_directories(${Qt5Widgets_INCLUDE_DIRS})
- add_definitions(${Qt5Widgets_DEFINITONS})
-diff --git a/Tests/CMakeLists.txt b/Tests/CMakeLists.txt
-index 533788a44..32ef03c55 100644
---- a/Tests/CMakeLists.txt
-+++ b/Tests/CMakeLists.txt
-@@ -1260,7 +1260,7 @@ ${CMake_BINARY_DIR}/bin/cmake -DDIR=dev -P ${CMake_SOURCE_DIR}/Utilities/Release
- set(CMake_TEST_Qt5 1)
- endif()
- if(CMake_TEST_Qt5)
-- find_package(Qt5Widgets QUIET NO_MODULE)
-+ #find_package(Qt5Widgets QUIET NO_MODULE)
- endif()
- if(CMake_TEST_Qt5 AND Qt5Widgets_FOUND)
- add_test(NAME Qt5Autogen COMMAND ${CMAKE_CTEST_COMMAND}
-diff --git a/Tests/Qt4And5Automoc/CMakeLists.txt b/Tests/Qt4And5Automoc/CMakeLists.txt
-index ad74961d9..a9dd74b15 100644
---- a/Tests/Qt4And5Automoc/CMakeLists.txt
-+++ b/Tests/Qt4And5Automoc/CMakeLists.txt
-@@ -3,11 +3,11 @@ cmake_minimum_required(VERSION 2.8.12)
- project(Qt4And5Automoc)
-
- if (QT_REVERSE_FIND_ORDER)
-- find_package(Qt5Core REQUIRED)
-+ #find_package(Qt5Core REQUIRED)
- find_package(Qt4 REQUIRED)
- else()
- find_package(Qt4 REQUIRED)
-- find_package(Qt5Core REQUIRED)
-+ #find_package(Qt5Core REQUIRED)
- endif()
-
- set(CMAKE_AUTOMOC ON)
-diff --git a/Tests/QtAutoUicInterface/CMakeLists.txt b/Tests/QtAutoUicInterface/CMakeLists.txt
-index a5c2d99b2..2d640e4a3 100644
---- a/Tests/QtAutoUicInterface/CMakeLists.txt
-+++ b/Tests/QtAutoUicInterface/CMakeLists.txt
-@@ -14,7 +14,7 @@ else()
- if (NOT QT_TEST_VERSION STREQUAL 5)
- message(SEND_ERROR "Invalid Qt version specified.")
- endif()
-- find_package(Qt5Widgets REQUIRED)
-+ #find_package(Qt5Widgets REQUIRED)
-
- set(QT_CORE_TARGET Qt5::Core)
- set(QT_GUI_TARGET Qt5::Widgets)
-diff --git a/Tests/QtAutogen/CMakeLists.txt b/Tests/QtAutogen/CMakeLists.txt
-index dff9d0c66..c6e8fc3f5 100644
---- a/Tests/QtAutogen/CMakeLists.txt
-+++ b/Tests/QtAutogen/CMakeLists.txt
-@@ -23,7 +23,7 @@ else()
- if (NOT QT_TEST_VERSION STREQUAL 5)
- message(SEND_ERROR "Invalid Qt version specified.")
- endif()
-- find_package(Qt5Widgets REQUIRED)
-+ #find_package(Qt5Widgets REQUIRED)
-
- set(QT_QTCORE_TARGET Qt5::Core)
-
-diff --git a/Tests/QtAutogen/macosFW/CMakeLists.txt b/Tests/QtAutogen/macosFW/CMakeLists.txt
-index 114d9bac0..157fe0aaa 100644
---- a/Tests/QtAutogen/macosFW/CMakeLists.txt
-+++ b/Tests/QtAutogen/macosFW/CMakeLists.txt
-@@ -1,7 +1,7 @@
- cmake_minimum_required(VERSION 3.8)
- project(macos-fw-test)
-
--find_package(Qt5Test REQUIRED)
-+#find_package(Qt5Test REQUIRED)
-
- set(CMAKE_CXX_STANDARD 11)
- set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/output/bin)
-diff --git a/Tests/QtAutogen/mocDepends/CMakeLists.txt b/Tests/QtAutogen/mocDepends/CMakeLists.txt
-index 8217b8dbf..86bb7bc7f 100644
---- a/Tests/QtAutogen/mocDepends/CMakeLists.txt
-+++ b/Tests/QtAutogen/mocDepends/CMakeLists.txt
-@@ -10,7 +10,7 @@ else()
- message(SEND_ERROR "Invalid Qt version specified.")
- endif()
-
-- find_package(Qt5Core REQUIRED)
-+ #find_package(Qt5Core REQUIRED)
- set(QT_CORE_TARGET Qt5::Core)
- endif()
-
-diff --git a/Tests/QtAutogenRerun/CMakeLists.txt b/Tests/QtAutogenRerun/CMakeLists.txt
-index e72c1912e..d7e6884ce 100644
---- a/Tests/QtAutogenRerun/CMakeLists.txt
-+++ b/Tests/QtAutogenRerun/CMakeLists.txt
-@@ -2,7 +2,7 @@ cmake_minimum_required(VERSION 3.9)
- cmake_policy(SET CMP0071 NEW)
- project(QtAutogenRerun)
-
--# Tell find_package(Qt5) where to find Qt.
-+# Tell #find_package(Qt5) where to find Qt.
- if(QT_QMAKE_EXECUTABLE)
- get_filename_component(Qt_BIN_DIR "${QT_QMAKE_EXECUTABLE}" PATH)
- get_filename_component(Qt_PREFIX_DIR "${Qt_BIN_DIR}" PATH)
-@@ -23,7 +23,7 @@ else()
- if (NOT QT_TEST_VERSION STREQUAL 5)
- message(SEND_ERROR "Invalid Qt version specified.")
- endif()
-- find_package(Qt5Widgets REQUIRED)
-+ #find_package(Qt5Widgets REQUIRED)
-
- set(QT_QTCORE_TARGET Qt5::Core)
-
-diff --git a/Tests/QtAutogenRerun/mocPlugin/CMakeLists.txt b/Tests/QtAutogenRerun/mocPlugin/CMakeLists.txt
-index b7cc5e9ff..e1d109953 100644
---- a/Tests/QtAutogenRerun/mocPlugin/CMakeLists.txt
-+++ b/Tests/QtAutogenRerun/mocPlugin/CMakeLists.txt
-@@ -9,7 +9,7 @@ set(CMAKE_AUTOMOC_DEPEND_FILTERS
- if (NOT QT_TEST_VERSION STREQUAL 5)
- message(SEND_ERROR "Invalid Qt version specified.")
- endif()
--find_package(Qt5Widgets REQUIRED)
-+#find_package(Qt5Widgets REQUIRED)
-
- if(Qt5_POSITION_INDEPENDENT_CODE AND CMAKE_CXX_COMPILE_OPTIONS_PIC)
- add_definitions(${CMAKE_CXX_COMPILE_OPTIONS_PIC})
-diff --git a/Tests/QtAutogenRerun/mocRerun/CMakeLists.txt b/Tests/QtAutogenRerun/mocRerun/CMakeLists.txt
-index bafd9cf48..43ec933d2 100644
---- a/Tests/QtAutogenRerun/mocRerun/CMakeLists.txt
-+++ b/Tests/QtAutogenRerun/mocRerun/CMakeLists.txt
-@@ -10,7 +10,7 @@ else()
- message(SEND_ERROR "Invalid Qt version specified.")
- endif()
-
-- find_package(Qt5Core REQUIRED)
-+ #find_package(Qt5Core REQUIRED)
- set(QT_CORE_TARGET Qt5::Core)
- endif()
-
-diff --git a/Tests/QtAutogenRerun/rccDepends/CMakeLists.txt b/Tests/QtAutogenRerun/rccDepends/CMakeLists.txt
-index 291592e7d..40cd52868 100644
---- a/Tests/QtAutogenRerun/rccDepends/CMakeLists.txt
-+++ b/Tests/QtAutogenRerun/rccDepends/CMakeLists.txt
-@@ -9,7 +9,7 @@ else()
- message(SEND_ERROR "Invalid Qt version specified.")
- endif()
-
-- find_package(Qt5Core REQUIRED)
-+ #find_package(Qt5Core REQUIRED)
- set(QT_CORE_TARGET Qt5::Core)
- endif()
-
-diff --git a/Tests/RunCMake/CMakeLists.txt b/Tests/RunCMake/CMakeLists.txt
-index 29325ff0a..d30d01e78 100644
---- a/Tests/RunCMake/CMakeLists.txt
-+++ b/Tests/RunCMake/CMakeLists.txt
-@@ -274,7 +274,7 @@ add_RunCMake_test(configure_file)
- add_RunCMake_test(CTestTimeoutAfterMatch)
-
- find_package(Qt4 QUIET)
--find_package(Qt5Core QUIET)
-+#find_package(Qt5Core QUIET)
- if (QT4_FOUND AND Qt5Core_FOUND AND NOT Qt5Core_VERSION VERSION_LESS 5.1.0)
- add_RunCMake_test(IncompatibleQt)
- endif()
-diff --git a/Tests/RunCMake/IncompatibleQt/IncompatibleQt.cmake b/Tests/RunCMake/IncompatibleQt/IncompatibleQt.cmake
-index 4fccdc418..b76e1e531 100644
---- a/Tests/RunCMake/IncompatibleQt/IncompatibleQt.cmake
-+++ b/Tests/RunCMake/IncompatibleQt/IncompatibleQt.cmake
-@@ -1,6 +1,6 @@
-
- find_package(Qt4 REQUIRED)
--find_package(Qt5Core REQUIRED)
-+#find_package(Qt5Core REQUIRED)
-
- add_executable(mainexe main.cpp)
- target_link_libraries(mainexe Qt4::QtCore Qt5::Core)
---
-2.15.1
-
diff --git a/poky/meta/recipes-devtools/cmake/cmake/environment.d-cmake.sh b/poky/meta/recipes-devtools/cmake/cmake/environment.d-cmake.sh
index 0eb56b66f..7bdb19fb6 100644
--- a/poky/meta/recipes-devtools/cmake/cmake/environment.d-cmake.sh
+++ b/poky/meta/recipes-devtools/cmake/cmake/environment.d-cmake.sh
@@ -1 +1,2 @@
-alias cmake="cmake -DCMAKE_TOOLCHAIN_FILE=$OECORE_NATIVE_SYSROOT/usr/share/cmake/OEToolchainConfig.cmake"
+export OE_CMAKE_TOOLCHAIN_FILE="$OECORE_NATIVE_SYSROOT/usr/share/cmake/OEToolchainConfig.cmake"
+export OE_CMAKE_FIND_LIBRARY_CUSTOM_LIB_SUFFIX="`echo $OECORE_BASELIB | sed -e s/lib//`"
diff --git a/poky/meta/recipes-devtools/cmake/cmake_3.10.3.bb b/poky/meta/recipes-devtools/cmake/cmake_3.12.2.bb
index 7d81edc60..e0457677e 100644
--- a/poky/meta/recipes-devtools/cmake/cmake_3.10.3.bb
+++ b/poky/meta/recipes-devtools/cmake/cmake_3.12.2.bb
@@ -6,7 +6,9 @@ DEPENDS += "curl expat zlib libarchive xz ncurses bzip2"
SRC_URI_append_class-nativesdk = " \
file://OEToolchainConfig.cmake \
- file://environment.d-cmake.sh"
+ file://environment.d-cmake.sh \
+ file://0001-CMakeDetermineSystem-use-oe-environment-vars-to-load.patch \
+"
# Strip ${prefix} from ${docdir}, set result into docdir_stripped
python () {
diff --git a/poky/meta/recipes-devtools/createrepo-c/createrepo-c_git.bb b/poky/meta/recipes-devtools/createrepo-c/createrepo-c_git.bb
index 31761368b..296081104 100644
--- a/poky/meta/recipes-devtools/createrepo-c/createrepo-c_git.bb
+++ b/poky/meta/recipes-devtools/createrepo-c/createrepo-c_git.bb
@@ -9,8 +9,8 @@ SRC_URI = "git://github.com/rpm-software-management/createrepo_c \
file://0001-Correctly-install-the-shared-library.patch \
"
-PV = "0.10.0+git${SRCPV}"
-SRCREV = "748891ff8ee524c2d37926c608cd2794f88013f3"
+PV = "0.11.1+git${SRCPV}"
+SRCREV = "434a40babdde57ab405e9a1085a30e9575ea0c92"
S = "${WORKDIR}/git"
@@ -21,7 +21,7 @@ inherit cmake pkgconfig bash-completion distutils3-base
EXTRA_OECMAKE = " -DPYTHON_INSTALL_DIR=${PYTHON_SITEPACKAGES_DIR} -DPYTHON_DESIRED=3"
-BBCLASSEXTEND = "native"
+BBCLASSEXTEND = "native nativesdk"
# Direct createrepo to read rpm configuration from our sysroot, not the one it was compiled in
do_install_append_class-native() {
@@ -29,3 +29,8 @@ do_install_append_class-native() {
RPM_CONFIGDIR=${STAGING_LIBDIR_NATIVE}/rpm
}
+do_install_append_class-nativesdk() {
+ create_wrapper ${D}/${bindir}/createrepo_c \
+ RPM_CONFIGDIR=${SDKPATHNATIVE}${libdir_nativesdk}/rpm
+ rm -rf ${D}/etc
+}
diff --git a/poky/meta/recipes-devtools/desktop-file-utils/desktop-file-utils-native_0.23.bb b/poky/meta/recipes-devtools/desktop-file-utils/desktop-file-utils_0.23.bb
index 54daabef5..6446f4718 100644
--- a/poky/meta/recipes-devtools/desktop-file-utils/desktop-file-utils-native_0.23.bb
+++ b/poky/meta/recipes-devtools/desktop-file-utils/desktop-file-utils_0.23.bb
@@ -1,18 +1,19 @@
SECTION = "console/utils"
SUMMARY = "Command line utilities for working with *.desktop files"
HOMEPAGE = "http://www.freedesktop.org/wiki/Software/desktop-file-utils"
-LICENSE = "GPLv2"
+LICENSE = "GPLv2+"
-LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
-DEPENDS = "glib-2.0-native"
-
-SRC_URI = "http://freedesktop.org/software/desktop-file-utils/releases/desktop-file-utils-${PV}.tar.xz"
+LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
+ file://src/validator.c;beginline=4;endline=27;md5=281e1114ee6c486a1a0a4295986b9416"
+SRC_URI = "http://freedesktop.org/software/${BPN}/releases/${BP}.tar.xz"
SRC_URI[md5sum] = "599133d51cc9a41bfec186414906b6f1"
SRC_URI[sha256sum] = "6c094031bdec46c9f621708f919084e1cb5294e2c5b1e4c883b3e70cb8903385"
-inherit autotools native
+DEPENDS = "glib-2.0"
-S = "${WORKDIR}/desktop-file-utils-${PV}"
+inherit autotools pkgconfig
EXTRA_OECONF += "ac_cv_prog_EMACS=no"
+
+BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-devtools/diffstat/diffstat/avoid-check-user-break-cc.patch b/poky/meta/recipes-devtools/diffstat/diffstat/avoid-check-user-break-cc.patch
new file mode 100644
index 000000000..811faa48d
--- /dev/null
+++ b/poky/meta/recipes-devtools/diffstat/diffstat/avoid-check-user-break-cc.patch
@@ -0,0 +1,32 @@
+From 1046593aacb74ff888a0d68c0ff89b20c4bc9ed4 Mon Sep 17 00:00:00 2001
+From: Kai Kang <kai.kang@windriver.com>
+Date: Tue, 15 May 2018 17:17:01 +0800
+Subject: [PATCH] diffstat: fix wrong evaluation of CC
+
+Upstream-Status: Inappropriate [oe specific]
+
+m4 function CF_CC_ENV_FLAGS checks whether variable CC contains options '-I', '-U'
+and '-D'. It is not suitable for oe that option such as '-D_FORTIFY_SOURCE=2' may
+be included in CC. And then CC will be wrongly filtered.
+
+So comment out CF_CC_ENV_FLAGS from function CF_PROG_CC.
+
+Signed-off-by: Kai Kang <kai.kang@windriver.com>
+
+---
+ aclocal.m4 | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/aclocal.m4 b/aclocal.m4
+index 9281aa8..dd57b7a 100644
+--- a/aclocal.m4
++++ b/aclocal.m4
+@@ -1239,7 +1239,7 @@ CF_GCC_VERSION
+ CF_ACVERSION_CHECK(2.52,
+ [AC_PROG_CC_STDC],
+ [CF_ANSI_CC_REQD])
+-CF_CC_ENV_FLAGS
++dnl CF_CC_ENV_FLAGS
+ ])dnl
+ dnl ---------------------------------------------------------------------------
+ dnl CF_PROG_GROFF version: 3 updated: 2018/01/07 13:16:19
diff --git a/poky/meta/recipes-devtools/diffstat/diffstat_1.61.bb b/poky/meta/recipes-devtools/diffstat/diffstat_1.62.bb
index f8b7b06cf..93d77797c 100644
--- a/poky/meta/recipes-devtools/diffstat/diffstat_1.61.bb
+++ b/poky/meta/recipes-devtools/diffstat/diffstat_1.62.bb
@@ -9,10 +9,11 @@ LIC_FILES_CHKSUM = "file://install-sh;endline=42;md5=b3549726c1022bee09c174c72a0
SRC_URI = "http://invisible-mirror.net/archives/${BPN}/${BP}.tgz \
file://run-ptest \
+ file://avoid-check-user-break-cc.patch \
"
-SRC_URI[md5sum] = "c048a32d55d8bd6724f382baf41f325f"
-SRC_URI[sha256sum] = "25359e0c27183f997b36c9202583b5dc2df390c20e22a92606af4bf7856a55ee"
+SRC_URI[md5sum] = "91e106bb34cb097750db7ddc0ba1d8fc"
+SRC_URI[sha256sum] = "7f09183644ed77a156b15346bbad4e89c93543e140add9dab18747e30522591f"
S = "${WORKDIR}/diffstat-${PV}"
diff --git a/poky/meta/recipes-devtools/distcc/distcc_3.2.bb b/poky/meta/recipes-devtools/distcc/distcc_3.3.2.bb
index 66046480b..0d0696316 100644
--- a/poky/meta/recipes-devtools/distcc/distcc_3.2.bb
+++ b/poky/meta/recipes-devtools/distcc/distcc_3.3.2.bb
@@ -14,18 +14,19 @@ PACKAGECONFIG[popt] = "--without-included-popt,--with-included-popt,popt"
RRECOMMENDS_${PN} = "avahi-daemon"
-SRC_URI = "git://github.com/akuster/distcc.git;branch=${PV} \
+SRC_URI = "git://github.com/distcc/distcc.git \
file://separatebuilddir.patch \
- file://0001-zeroconf-Include-fcntl.h.patch \
file://default \
file://distccmon-gnome.desktop \
file://distcc \
file://distcc.service"
-SRCREV = "d8b18df3e9dcbe4f092bed565835d3975e99432c"
+SRCREV = "8600f0857dac55ea393dc11a860948692d215fc8"
S = "${WORKDIR}/git"
inherit autotools pkgconfig update-rc.d useradd systemd
+ASNEEDED = ""
+
EXTRA_OECONF += "--disable-Werror PYTHON='' --disable-pump-mode"
USERADD_PACKAGES = "${PN}"
@@ -61,9 +62,10 @@ PACKAGES += "distcc-distmon-gnome"
FILES_${PN} = " ${sysconfdir} \
${bindir}/distcc \
- ${bindir}/lsdistcc \
+ ${bindir}/lsdistcc \
${bindir}/distccd \
${bindir}/distccmon-text \
+ ${sbindir}/update-distcc-symlinks \
${systemd_unitdir}/system/distcc.service"
FILES_distcc-distmon-gnome = " ${bindir}/distccmon-gnome \
${datadir}/distcc"
diff --git a/poky/meta/recipes-devtools/distcc/files/0001-zeroconf-Include-fcntl.h.patch b/poky/meta/recipes-devtools/distcc/files/0001-zeroconf-Include-fcntl.h.patch
deleted file mode 100644
index b17ec9c95..000000000
--- a/poky/meta/recipes-devtools/distcc/files/0001-zeroconf-Include-fcntl.h.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From 8331fc4759d809512f404e7a27f817ad6d616450 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Mon, 13 Apr 2015 18:00:33 -0700
-Subject: [PATCH] zeroconf: Include fcntl.h
-
-We need it for getting deinitions for O_* e.g. O_CREAT
-
-Upstream-Status: Pending
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- src/zeroconf.c | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/src/zeroconf.c b/src/zeroconf.c
-index 414ddc4..31bd33f 100644
---- a/src/zeroconf.c
-+++ b/src/zeroconf.c
-@@ -33,6 +33,7 @@
- #include <unistd.h>
- #include <stdlib.h>
- #include <limits.h>
-+#include <fcntl.h>
-
- #include <avahi-common/domain.h>
- #include <avahi-common/error.h>
---
-2.1.4
-
diff --git a/poky/meta/recipes-devtools/distcc/files/default b/poky/meta/recipes-devtools/distcc/files/default
index 63c4159b9..e5ca68b85 100644
--- a/poky/meta/recipes-devtools/distcc/files/default
+++ b/poky/meta/recipes-devtools/distcc/files/default
@@ -16,9 +16,9 @@ STARTDISTCC="true"
#
# ALLOWEDNETS="127.0.0.1"
-ALLOWEDNETS="192.168.7.0/24"
+ALLOWEDNETS="127.0.0.1"
#
# OPTIONS is used for the systemd service file
#
-OPTIONS="--allow 192.168.7.0/24"
+OPTIONS="--allow 127.0.0.1 --make-me-a-botnet"
diff --git a/poky/meta/recipes-devtools/dmidecode/dmidecode_3.1.bb b/poky/meta/recipes-devtools/dmidecode/dmidecode_3.1.bb
index f83281e23..b423fda6d 100644
--- a/poky/meta/recipes-devtools/dmidecode/dmidecode_3.1.bb
+++ b/poky/meta/recipes-devtools/dmidecode/dmidecode_3.1.bb
@@ -9,6 +9,10 @@ COMPATIBLE_HOST = "(i.86|x86_64|aarch64|arm|powerpc|powerpc64).*-linux"
EXTRA_OEMAKE = "-e MAKEFLAGS="
+# The upstream buildsystem uses 'docdir' as the path where it puts AUTHORS,
+# README, etc, but we don't want those in the root of our docdir.
+docdir .= "/${BPN}"
+
do_install() {
oe_runmake DESTDIR="${D}" install
}
diff --git a/poky/meta/recipes-devtools/dnf/dnf_2.7.5.bb b/poky/meta/recipes-devtools/dnf/dnf_2.7.5.bb
index b88ddb445..df60d731b 100644
--- a/poky/meta/recipes-devtools/dnf/dnf_2.7.5.bb
+++ b/poky/meta/recipes-devtools/dnf/dnf_2.7.5.bb
@@ -72,3 +72,4 @@ SYSTEMD_SERVICE_${PN} = "dnf-makecache.service dnf-makecache.timer \
dnf-automatic-install.service dnf-automatic-install.timer \
dnf-automatic-notifyonly.service dnf-automatic-notifyonly.timer \
"
+SYSTEMD_AUTO_ENABLE ?= "disable"
diff --git a/poky/meta/recipes-devtools/dwarfsrcfiles/dwarfsrcfiles.bb b/poky/meta/recipes-devtools/dwarfsrcfiles/dwarfsrcfiles.bb
index c59a006ed..2c843a934 100644
--- a/poky/meta/recipes-devtools/dwarfsrcfiles/dwarfsrcfiles.bb
+++ b/poky/meta/recipes-devtools/dwarfsrcfiles/dwarfsrcfiles.bb
@@ -1,4 +1,4 @@
-SUMMARY = "A small utility for printing debig source file locations embedded in binaries"
+SUMMARY = "A small utility for printing debug source file locations embedded in binaries"
LICENSE = "GPLv2+"
LIC_FILES_CHKSUM = "file://../dwarfsrcfiles.c;md5=31483894e453a77acbb67847565f1b5c;beginline=1;endline=8"
diff --git a/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs.inc b/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs.inc
index 81d90a134..a54a11c35 100644
--- a/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs.inc
+++ b/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs.inc
@@ -9,7 +9,7 @@ LICENSE_e2fsprogs-mke2fs = "GPLv2"
LICENSE_e2fsprogs-fsck = "GPLv2"
LICENSE_e2fsprogs-tune2fs = "GPLv2"
LICENSE_e2fsprogs-badblocks = "GPLv2"
-LIC_FILES_CHKSUM = "file://NOTICE;md5=b48f21d765b875bd10400975d12c1ca2 \
+LIC_FILES_CHKSUM = "file://NOTICE;md5=d50be0580c0b0a7fbc7a4830bbe6c12b \
file://lib/ext2fs/ext2fs.h;beginline=1;endline=9;md5=596a8dedcb4e731c6b21c7a46fba6bef \
file://lib/e2p/e2p.h;beginline=1;endline=7;md5=8a74ade8f9d65095d70ef2d4bf48e36a \
file://lib/uuid/uuid.h.in;beginline=1;endline=32;md5=dbb8079e114a5f841934b99e59c8820a \
diff --git a/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs/0001-libext2fs-fix-build-failure-in-swapfs.c-on-big-endia.patch b/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs/0001-libext2fs-fix-build-failure-in-swapfs.c-on-big-endia.patch
deleted file mode 100644
index ff1284edc..000000000
--- a/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs/0001-libext2fs-fix-build-failure-in-swapfs.c-on-big-endia.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-From ae6603206176b771c9ed1f82569f68fc1257f014 Mon Sep 17 00:00:00 2001
-From: Theodore Ts'o <tytso@mit.edu>
-Date: Wed, 3 Jan 2018 01:32:02 -0500
-Subject: [PATCH] libext2fs: fix build failure in swapfs.c on big-endian
- systems
-
-Addresses-Debian-Bug: #886119
-
-Reported-by: James Clarke <jrtc27@debian.org>
-Signed-off-by: Theodore Ts'o <tytso@mit.edu>
----
-Upstream-Status: Backport
-
- lib/ext2fs/swapfs.c | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/lib/ext2fs/swapfs.c b/lib/ext2fs/swapfs.c
-index 6e5cff97..b13dc422 100644
---- a/lib/ext2fs/swapfs.c
-+++ b/lib/ext2fs/swapfs.c
-@@ -19,6 +19,7 @@
-
- #include "ext2_fs.h"
- #include "ext2fs.h"
-+#include "ext2fsP.h"
- #include <ext2fs/ext2_ext_attr.h>
-
- #ifdef WORDS_BIGENDIAN
-@@ -358,7 +359,7 @@ void ext2fs_swap_inode_full(ext2_filsys fs, struct ext2_inode_large *t,
- if (inode_includes(inode_size, i_projid))
- t->i_projid = ext2fs_swab16(f->i_projid);
- /* catch new static fields added after i_projid */
-- EXT2FS_BUILD_BUG_ON(sizeof(ext2_inode_large) != 160);
-+ EXT2FS_BUILD_BUG_ON(sizeof(struct ext2_inode_large) != 160);
-
- i = sizeof(struct ext2_inode) + extra_isize + sizeof(__u32);
- if (bufsize < (int) i)
---
-2.16.1
-
diff --git a/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs/Revert-mke2fs-enable-the-metadata_csum-and-64bit-fea.patch b/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs/Revert-mke2fs-enable-the-metadata_csum-and-64bit-fea.patch
index 38e1bdb3d..d7e09b6be 100644
--- a/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs/Revert-mke2fs-enable-the-metadata_csum-and-64bit-fea.patch
+++ b/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs/Revert-mke2fs-enable-the-metadata_csum-and-64bit-fea.patch
@@ -19,16 +19,16 @@ Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
misc/mke2fs.conf.in | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
-Index: git/misc/mke2fs.conf.in
-===================================================================
---- git.orig/misc/mke2fs.conf.in
-+++ git/misc/mke2fs.conf.in
+diff --git a/misc/mke2fs.conf.in b/misc/mke2fs.conf.in
+index 01e35cf..25105b3 100644
+--- a/misc/mke2fs.conf.in
++++ b/misc/mke2fs.conf.in
@@ -11,8 +11,9 @@
features = has_journal
}
ext4 = {
-- features = has_journal,extent,huge_file,flex_bg,uninit_bg,64bit,dir_nlink,extra_isize
-+ features = has_journal,extent,huge_file,flex_bg,uninit_bg,dir_nlink,extra_isize
+- features = has_journal,extent,huge_file,flex_bg,metadata_csum,64bit,dir_nlink,extra_isize
++ features = has_journal,extent,huge_file,flex_bg,metadata_csum,dir_nlink,extra_isize
inode_size = 256
+ auto_64-bit_support = 1
}
diff --git a/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs/ptest.patch b/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs/ptest.patch
index 7c4bb39fd..4e6b6292e 100644
--- a/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs/ptest.patch
+++ b/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs/ptest.patch
@@ -1,10 +1,21 @@
+From b8842065ad621a03a971dfd50db862c5bffdeb49 Mon Sep 17 00:00:00 2001
+From: Dmitry Eremin-Solenikov <dmitry_eremin@mentor.com>
+Date: Sat, 18 Apr 2015 17:58:17 +0300
+Subject: [PATCH] e2fsprogs: add ptest
+
Upstream-Status: Inappropriate
-Index: git/tests/Makefile.in
-===================================================================
---- git.orig/tests/Makefile.in
-+++ git/tests/Makefile.in
-@@ -18,7 +18,7 @@ test_one: $(srcdir)/test_one.in Makefile
+---
+ tests/Makefile.in | 4 ++--
+ tests/test_config | 32 ++++++++++++++++----------------
+ tests/test_script.in | 2 +-
+ 3 files changed, 19 insertions(+), 19 deletions(-)
+
+diff --git a/tests/Makefile.in b/tests/Makefile.in
+index 8c4d2048..e021af32 100644
+--- a/tests/Makefile.in
++++ b/tests/Makefile.in
+@@ -19,7 +19,7 @@ test_one: $(srcdir)/test_one.in Makefile mke2fs.conf
@echo "#!/bin/sh" > test_one
@echo "HTREE=y" >> test_one
@echo "QUOTA=y" >> test_one
@@ -13,20 +24,20 @@ Index: git/tests/Makefile.in
@echo "DIFF_OPTS=@UNI_DIFF_OPTS@" >> test_one
@echo "SIZEOF_TIME_T=@SIZEOF_TIME_T@" >> test_one
@echo "DD=@DD@" >>test_one
-@@ -28,7 +28,7 @@ test_one: $(srcdir)/test_one.in Makefile
- test_script: test_one test_script.in Makefile mke2fs.conf
+@@ -30,7 +30,7 @@ test_script: test_one test_script.in Makefile mke2fs.conf
@echo "Creating test_script..."
+ @[ -f test_script ] && chmod u+w test_script || true
@echo "#!/bin/sh" > test_script
- @echo "SRCDIR=@srcdir@" >> test_script
+ @echo "SRCDIR=${prefix}${libdir}/e2fsprogs/ptest/test" >> test_script
@cat $(srcdir)/test_script.in >> test_script
- @chmod +x test_script
+ @chmod +x-w test_script
-Index: git/tests/test_config
-===================================================================
---- git.orig/tests/test_config
-+++ git/tests/test_config
-@@ -3,24 +3,24 @@
+diff --git a/tests/test_config b/tests/test_config
+index 1f146ca2..05125f9c 100644
+--- a/tests/test_config
++++ b/tests/test_config
+@@ -3,16 +3,16 @@
#
unset LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER LC_TELEPHONE LC_TIME PAGER
@@ -40,8 +51,6 @@ Index: git/tests/test_config
-E2IMAGE_EXE="../misc/e2image"
-DEBUGFS="$USE_VALGRIND ../debugfs/debugfs"
-DEBUGFS_EXE="../debugfs/debugfs"
--TEST_BITS="../debugfs/debugfs"
--RESIZE2FS_EXE="../resize/resize2fs"
+FSCK="$USE_VALGRIND e2fsck"
+MKE2FS="$USE_VALGRIND mke2fs"
+DUMPE2FS="$USE_VALGRIND dumpe2fs"
@@ -52,25 +61,34 @@ Index: git/tests/test_config
+E2IMAGE_EXE="/sbin/e2image"
+DEBUGFS="$USE_VALGRIND debugfs"
+DEBUGFS_EXE="/sbin/debugfs"
-+TEST_BITS="/sbin/debugfs"
+ TEST_BITS="test_data.tmp"
+ if [ ! -s $TEST_BITS ]; then
+ # create a non-sparse test file if possible, since debugfs may be
+@@ -21,14 +21,14 @@ if [ ! -s $TEST_BITS ]; then
+ dd if=/dev/urandom of=$TEST_BITS bs=128k count=1 > /dev/null 2>&1 ||
+ TEST_BITS="$DEFBUGFS_EXE"
+ fi
+-RESIZE2FS_EXE="../resize/resize2fs"
+RESIZE2FS_EXE="/sbin/resize2fs"
RESIZE2FS="$USE_VALGRIND $RESIZE2FS_EXE"
-E2UNDO_EXE="../misc/e2undo"
+E2UNDO_EXE="/sbin/e2undo"
E2UNDO="$USE_VALGRIND $E2UNDO_EXE"
+-E2MMPSTATUS="$USE_VALGRIND ../misc/dumpe2fs -m"
-TEST_REL=../tests/progs/test_rel
-TEST_ICOUNT=../tests/progs/test_icount
-CRCSUM=../tests/progs/crcsum
++E2MMPSTATUS="$USE_VALGRIND dumpe2fs -m"
+TEST_REL=./progs/test_rel
+TEST_ICOUNT=./progs/test_icount
+CRCSUM=./progs/crcsum
CLEAN_OUTPUT="sed -f $cmd_dir/filter.sed"
LD_LIBRARY_PATH=../lib:../lib/ext2fs:../lib/e2p:../lib/et:../lib/ss:${LD_LIBRARY_PATH}
DYLD_LIBRARY_PATH=../lib:../lib/ext2fs:../lib/e2p:../lib/et:../lib/ss:${DYLD_LIBRARY_PATH}
-Index: git/tests/test_script.in
-===================================================================
---- git.orig/tests/test_script.in
-+++ git/tests/test_script.in
+diff --git a/tests/test_script.in b/tests/test_script.in
+index 9959e308..442999db 100644
+--- a/tests/test_script.in
++++ b/tests/test_script.in
@@ -39,7 +39,7 @@ for i; do
done
diff --git a/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs_1.43.8.bb b/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs_1.44.3.bb
index 56abb3b5d..ce95dec5f 100644
--- a/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs_1.43.8.bb
+++ b/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs_1.44.3.bb
@@ -6,14 +6,13 @@ SRC_URI += "file://remove.ldconfig.call.patch \
file://Revert-mke2fs-enable-the-metadata_csum-and-64bit-fea.patch \
file://mkdir_p.patch \
file://0001-misc-create_inode.c-set-dir-s-mode-correctly.patch \
- file://0001-libext2fs-fix-build-failure-in-swapfs.c-on-big-endia.patch \
"
SRC_URI_append_class-native = " file://e2fsprogs-fix-missing-check-for-permission-denied.patch \
file://quiet-debugfs.patch \
"
-SRCREV = "af2eac481cf426c05ae12b946396980e16c8ab19"
+SRCREV = "85e53f42f98d5334914de01e972e9ed44bccd0a5"
UPSTREAM_CHECK_GITTAGREGEX = "v(?P<pver>\d+\.\d+(\.\d+)*)$"
EXTRA_OECONF += "--libdir=${base_libdir} --sbindir=${base_sbindir} \
@@ -75,6 +74,12 @@ do_install_append_class-nativesdk() {
e2fsprogs_conf_fixup
}
+do_install_append_class-target() {
+ mv ${D}${base_sbindir}/mke2fs ${D}${base_sbindir}/mke2fs.e2fsprogs
+ mv ${D}${base_sbindir}/mkfs.ext2 ${D}${base_sbindir}/mkfs.ext2.e2fsprogs
+ mv ${D}${base_sbindir}/tune2fs ${D}${base_sbindir}/tune2fs.e2fsprogs
+}
+
RDEPENDS_e2fsprogs = "e2fsprogs-badblocks"
RRECOMMENDS_e2fsprogs = "e2fsprogs-mke2fs e2fsprogs-e2fsck"
@@ -83,8 +88,8 @@ PACKAGES =+ "libcomerr libss libe2p libext2fs"
FILES_e2fsprogs-resize2fs = "${base_sbindir}/resize2fs*"
FILES_e2fsprogs-e2fsck = "${base_sbindir}/e2fsck ${base_sbindir}/fsck.ext*"
-FILES_e2fsprogs-mke2fs = "${base_sbindir}/mke2fs ${base_sbindir}/mkfs.ext* ${sysconfdir}/mke2fs.conf"
-FILES_e2fsprogs-tune2fs = "${base_sbindir}/tune2fs ${base_sbindir}/e2label"
+FILES_e2fsprogs-mke2fs = "${base_sbindir}/mke2fs.e2fsprogs ${base_sbindir}/mkfs.ext* ${sysconfdir}/mke2fs.conf"
+FILES_e2fsprogs-tune2fs = "${base_sbindir}/tune2fs.e2fsprogs ${base_sbindir}/e2label"
FILES_e2fsprogs-badblocks = "${base_sbindir}/badblocks"
FILES_libcomerr = "${base_libdir}/libcom_err.so.*"
FILES_libss = "${base_libdir}/libss.so.*"
@@ -100,7 +105,14 @@ ALTERNATIVE_TARGET[chattr] = "${base_bindir}/chattr.e2fsprogs"
ALTERNATIVE_${PN}-doc = "fsck.8"
ALTERNATIVE_LINK_NAME[fsck.8] = "${mandir}/man8/fsck.8"
-RDEPENDS_${PN}-ptest += "${PN} ${PN}-tune2fs coreutils procps bash"
+ALTERNATIVE_${PN}-mke2fs = "mke2fs mkfs.ext2"
+ALTERNATIVE_LINK_NAME[mke2fs] = "${base_sbindir}/mke2fs"
+ALTERNATIVE_LINK_NAME[mkfs.ext2] = "${base_sbindir}/mkfs.ext2"
+
+ALTERNATIVE_${PN}-tune2fs = "tune2fs"
+ALTERNATIVE_LINK_NAME[tune2fs] = "${base_sbindir}/tune2fs"
+
+RDEPENDS_${PN}-ptest += "${PN} ${PN}-tune2fs coreutils procps bash bzip2 diffutils perl"
do_compile_ptest() {
oe_runmake -C ${B}/tests
@@ -117,4 +129,7 @@ do_install_ptest() {
find "${D}${PTEST_PATH}" -type f \
\( -name 'Makefile' -o -name 'Makefile.in' -o -name '*.o' -o -name '*.c' -o -name '*.h' \)\
-exec rm -f {} +
+
+ install -d ${D}${PTEST_PATH}/lib
+ install -m 0644 ${B}/lib/config.h ${D}${PTEST_PATH}/lib/
}
diff --git a/poky/meta/recipes-devtools/elfutils/elfutils_0.170.bb b/poky/meta/recipes-devtools/elfutils/elfutils_0.174.bb
index 14ac22ee6..c30265b53 100644
--- a/poky/meta/recipes-devtools/elfutils/elfutils_0.170.bb
+++ b/poky/meta/recipes-devtools/elfutils/elfutils_0.174.bb
@@ -6,7 +6,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
DEPENDS = "libtool bzip2 zlib virtual/libintl"
DEPENDS_append_libc-musl = " argp-standalone fts "
# The Debian patches below are from:
-# http://ftp.de.debian.org/debian/pool/main/e/elfutils/elfutils_0.168-0.2.debian.tar.xz
+# http://ftp.de.debian.org/debian/pool/main/e/elfutils/elfutils_0.170-0.5.debian.tar.xz
SRC_URI = "https://sourceware.org/elfutils/ftp/${PV}/${BP}.tar.bz2 \
file://0001-dso-link-change.patch \
file://0002-Fix-elf_cvt_gunhash-if-dest-and-src-are-same.patch \
@@ -16,19 +16,26 @@ SRC_URI = "https://sourceware.org/elfutils/ftp/${PV}/${BP}.tar.bz2 \
file://0006-Fix-build-on-aarch64-musl.patch \
file://0007-Fix-control-path-where-we-have-str-as-uninitialized-.patch \
file://0001-libasm-may-link-with-libbz2-if-found.patch \
- file://debian/hppa_backend.diff \
- file://debian/arm_backend.diff \
- file://debian/mips_backend.patch \
- file://debian/mips_readelf_w.patch \
+ file://0001-libelf-elf_end.c-check-data_list.data.d.d_buf-before.patch \
+ file://0001-libdwfl-Sanity-check-partial-core-file-data-reads.patch \
+ file://0001-size-Handle-recursive-ELF-ar-files.patch \
+ file://0001-arlib-Check-that-sh_entsize-isn-t-zero.patch \
+ file://debian/0001-hppa_backend.patch \
+ file://debian/0001-arm_backend.patch \
+ file://debian/0001-mips_backend.patch \
+ file://debian/0001-testsuite-ignore-elflint.patch \
+ file://debian/0001-mips_readelf_w.patch \
file://debian/0001-Ignore-differences-between-mips-machine-identifiers.patch \
file://debian/0002-Add-support-for-mips64-abis-in-mips_retval.c.patch \
file://debian/0003-Add-mips-n64-relocation-format-hack.patch \
- file://0001-Use-fallthrough-attribute.patch \
- file://0001-Ensure-that-packed-structs-follow-the-gcc-memory-lay.patch \
+ file://debian/ignore_strmerge.diff \
+ file://debian/0001-fix-gcc7-ftbfs.patch \
+ file://debian/0001-disable_werror.patch \
"
SRC_URI_append_libc-musl = " file://0008-build-Provide-alternatives-for-glibc-assumptions-hel.patch"
-SRC_URI[md5sum] = "03599aee98c9b726c7a732a2dd0245d5"
-SRC_URI[sha256sum] = "1f844775576b79bdc9f9c717a50058d08620323c1e935458223a12f249c9e066"
+
+SRC_URI[md5sum] = "48bec24c0c8b2c16820326956dff9378"
+SRC_URI[sha256sum] = "cdf27e70076e10a29539d89e367101d516bc4aa11b0d7777fe52139e3fcad08a"
inherit autotools gettext
diff --git a/poky/meta/recipes-devtools/elfutils/files/0001-Ensure-that-packed-structs-follow-the-gcc-memory-lay.patch b/poky/meta/recipes-devtools/elfutils/files/0001-Ensure-that-packed-structs-follow-the-gcc-memory-lay.patch
deleted file mode 100644
index cf4d1dfe7..000000000
--- a/poky/meta/recipes-devtools/elfutils/files/0001-Ensure-that-packed-structs-follow-the-gcc-memory-lay.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From 732913a8c35c7b25c0cbf6903cab1ad6b602b525 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Thu, 22 Mar 2018 22:44:03 -0700
-Subject: [PATCH] Ensure that packed structs follow the gcc memory layout
-
-Partial backport of
-https://sourceware.org/git/?p=elfutils.git;a=commit;h=17d7194d291bf91d130b78e06cbe27b290e0376d
-
-Helps fixing alignment errors e.g.
-linux-core-note.c:116:1: error: alignment 2 of 'struct m68k_prstatus
-' is less than 4 [-Werror=packed-not-aligned]
- ;
- ^
-
-Upstream-Status: Backport [https://sourceware.org/git/?p=elfutils.git;a=commit;h=17d7194d291bf91d130b78e06cbe27b290e0376d]
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- backends/linux-core-note.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/backends/linux-core-note.c b/backends/linux-core-note.c
-index 5f06c896..9faae4c3 100644
---- a/backends/linux-core-note.c
-+++ b/backends/linux-core-note.c
-@@ -111,7 +111,7 @@ struct EBLHOOK(prstatus)
- FIELD (INT, pr_fpvalid);
- }
- #ifdef ALIGN_PRSTATUS
-- __attribute__ ((packed, aligned (ALIGN_PRSTATUS)))
-+ attribute_packed __attribute__ ((aligned (ALIGN_PRSTATUS)))
- #endif
- ;
-
diff --git a/poky/meta/recipes-devtools/elfutils/files/0001-Use-fallthrough-attribute.patch b/poky/meta/recipes-devtools/elfutils/files/0001-Use-fallthrough-attribute.patch
deleted file mode 100644
index 5e2155b3c..000000000
--- a/poky/meta/recipes-devtools/elfutils/files/0001-Use-fallthrough-attribute.patch
+++ /dev/null
@@ -1,791 +0,0 @@
-From 5cb883f67d00a63531ef195c242763d36b1905ca Mon Sep 17 00:00:00 2001
-From: Joshua Watt <Joshua.Watt@garmin.com>
-Date: Fri, 9 Feb 2018 12:46:38 -0600
-Subject: [PATCH] Use fallthrough attribute
-
-Use __attribute__ ((fallthrough)) to indicate switch case fall through
-instead of a comment. This ensure that the fallthrough warning is not
-triggered even if the file is pre-processed (hence stripping the
-comments) before it is compiled.
-
-The actual fallback implementation is hidden behind a FALLBACK macro in
-case the compiler doesn't support it.
-
-Finally, the -Wimplict-fallthrough warning was upgraded to only allow
-the attribute to satisfy it; a comment alone is no longer sufficient.
-
-Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
-
-Upstream-Status: Submitted [1]
-
-[1] https://sourceware.org/ml/elfutils-devel/2018-q1/msg00027.html
----
- backends/aarch64_retval.c | 2 +-
- backends/alpha_retval.c | 4 ++--
- backends/arm_regs.c | 2 +-
- backends/arm_retval.c | 2 +-
- backends/i386_regs.c | 2 +-
- backends/i386_retval.c | 4 ++--
- backends/ia64_retval.c | 2 +-
- backends/linux-core-note.c | 2 +-
- backends/m68k_retval.c | 4 ++--
- backends/mips_retval.c | 4 ++--
- backends/parisc_retval.c | 5 +++--
- backends/ppc64_retval.c | 6 +++---
- backends/ppc_regs.c | 2 +-
- backends/ppc_retval.c | 4 ++--
- backends/s390_retval.c | 4 ++--
- backends/sh_retval.c | 2 +-
- backends/sparc_retval.c | 2 +-
- backends/tilegx_retval.c | 4 ++--
- backends/x86_64_regs.c | 2 +-
- backends/x86_64_retval.c | 2 +-
- config/eu.am | 4 +++-
- configure.ac | 6 ++++++
- lib/eu-config.h | 7 +++++++
- libcpu/i386_disasm.c | 2 +-
- libcpu/i386_parse.c | 4 ++--
- libdw/cfi.c | 4 ++--
- libdw/dwarf_frame_register.c | 2 +-
- libdwfl/dwfl_report_elf.c | 2 +-
- libdwfl/frame_unwind.c | 2 +-
- libebl/eblobjnote.c | 2 +-
- libelf/elf32_updatenull.c | 2 +-
- libelf/elf_begin.c | 4 ++--
- libelf/elf_cntl.c | 2 +-
- src/addr2line.c | 2 +-
- src/elfcompress.c | 2 +-
- src/elflint.c | 8 ++++----
- src/objdump.c | 2 +-
- src/readelf.c | 8 ++++----
- src/strings.c | 2 +-
- tests/backtrace.c | 2 +-
- tests/elfstrmerge.c | 3 ++-
- 41 files changed, 75 insertions(+), 58 deletions(-)
-
-diff --git a/backends/aarch64_retval.c b/backends/aarch64_retval.c
-index 68de307..1308340 100644
---- a/backends/aarch64_retval.c
-+++ b/backends/aarch64_retval.c
-@@ -292,7 +292,7 @@ aarch64_return_value_location (Dwarf_Die *functypedie, const Dwarf_Op **locp)
- assert (count > 0);
- if (count <= 4)
- return pass_hfa (locp, base_size, count);
-- /* Fall through. */
-+ FALLTHROUGH;
-
- case 1:
- /* Not a HFA. */
-diff --git a/backends/alpha_retval.c b/backends/alpha_retval.c
-index 53dbfa4..d9bae3b 100644
---- a/backends/alpha_retval.c
-+++ b/backends/alpha_retval.c
-@@ -85,7 +85,7 @@ alpha_return_value_location (Dwarf_Die *functypedie, const Dwarf_Op **locp)
- typedie = dwarf_formref_die (attr, &die_mem);
- tag = DWARF_TAG_OR_RETURN (typedie);
- }
-- /* Fall through. */
-+ FALLTHROUGH;
-
- case DW_TAG_base_type:
- case DW_TAG_enumeration_type:
-@@ -131,7 +131,7 @@ alpha_return_value_location (Dwarf_Die *functypedie, const Dwarf_Op **locp)
- }
- }
-
-- /* Else fall through. */
-+ FALLTHROUGH;
-
- case DW_TAG_structure_type:
- case DW_TAG_class_type:
-diff --git a/backends/arm_regs.c b/backends/arm_regs.c
-index 4ee1039..418c931 100644
---- a/backends/arm_regs.c
-+++ b/backends/arm_regs.c
-@@ -81,7 +81,7 @@ arm_register_info (Ebl *ebl __attribute__ ((unused)),
- * but gcc maps FPA registers here
- */
- regno += 96 - 16;
-- /* Fall through. */
-+ FALLTHROUGH;
- case 96 + 0 ... 96 + 7:
- *setname = "FPA";
- *type = DW_ATE_float;
-diff --git a/backends/arm_retval.c b/backends/arm_retval.c
-index 8687eab..313e4eb 100644
---- a/backends/arm_retval.c
-+++ b/backends/arm_retval.c
-@@ -90,7 +90,7 @@ arm_return_value_location_ (Dwarf_Die *functypedie, const Dwarf_Op **locp,
- typedie = dwarf_formref_die (attr, &die_mem);
- tag = DWARF_TAG_OR_RETURN (typedie);
- }
-- /* Fall through. */
-+ FALLTHROUGH;
-
- case DW_TAG_base_type:
- case DW_TAG_enumeration_type:
-diff --git a/backends/i386_regs.c b/backends/i386_regs.c
-index fd963a6..7ec93bb 100644
---- a/backends/i386_regs.c
-+++ b/backends/i386_regs.c
-@@ -92,7 +92,7 @@ i386_register_info (Ebl *ebl __attribute__ ((unused)),
- case 5:
- case 8:
- *type = DW_ATE_address;
-- /* Fallthrough */
-+ FALLTHROUGH;
- case 0 ... 3:
- case 6 ... 7:
- name[0] = 'e';
-diff --git a/backends/i386_retval.c b/backends/i386_retval.c
-index 4aa646f..32fec72 100644
---- a/backends/i386_retval.c
-+++ b/backends/i386_retval.c
-@@ -85,7 +85,7 @@ i386_return_value_location (Dwarf_Die *functypedie, const Dwarf_Op **locp)
- typedie = dwarf_formref_die (attr, &die_mem);
- tag = DWARF_TAG_OR_RETURN (typedie);
- }
-- /* Fall through. */
-+ FALLTHROUGH;
-
- case DW_TAG_base_type:
- case DW_TAG_enumeration_type:
-@@ -123,7 +123,7 @@ i386_return_value_location (Dwarf_Die *functypedie, const Dwarf_Op **locp)
- if (size <= 8)
- return nloc_intregpair;
- }
-- /* Fallthrough */
-+ FALLTHROUGH;
-
- case DW_TAG_structure_type:
- case DW_TAG_class_type:
-diff --git a/backends/ia64_retval.c b/backends/ia64_retval.c
-index dcd5f28..03ea4d8 100644
---- a/backends/ia64_retval.c
-+++ b/backends/ia64_retval.c
-@@ -260,7 +260,7 @@ ia64_return_value_location (Dwarf_Die *functypedie, const Dwarf_Op **locp)
- typedie = dwarf_formref_die (attr, &die_mem);
- tag = DWARF_TAG_OR_RETURN (typedie);
- }
-- /* Fall through. */
-+ FALLTHROUGH;
-
- case DW_TAG_base_type:
- case DW_TAG_enumeration_type:
-diff --git a/backends/linux-core-note.c b/backends/linux-core-note.c
-index 67638d7..5f06c89 100644
---- a/backends/linux-core-note.c
-+++ b/backends/linux-core-note.c
-@@ -226,7 +226,7 @@ EBLHOOK(core_note) (const GElf_Nhdr *nhdr, const char *name,
- if (memcmp (name, "CORE", nhdr->n_namesz) == 0)
- break;
- /* Buggy old Linux kernels didn't terminate "LINUX". */
-- /* Fall through. */
-+ FALLTHROUGH;
-
- case sizeof "LINUX":
- if (memcmp (name, "LINUX", nhdr->n_namesz) == 0)
-diff --git a/backends/m68k_retval.c b/backends/m68k_retval.c
-index c68ed02..a653ba3 100644
---- a/backends/m68k_retval.c
-+++ b/backends/m68k_retval.c
-@@ -92,7 +92,7 @@ m68k_return_value_location (Dwarf_Die *functypedie, const Dwarf_Op **locp)
- typedie = dwarf_formref_die (attr, &die_mem);
- tag = DWARF_TAG_OR_RETURN (typedie);
- }
-- /* Fall through. */
-+ FALLTHROUGH;
-
- case DW_TAG_base_type:
- case DW_TAG_enumeration_type:
-@@ -135,7 +135,7 @@ m68k_return_value_location (Dwarf_Die *functypedie, const Dwarf_Op **locp)
- if (size <= 8)
- return nloc_intregpair;
- }
-- /* Fallthrough */
-+ FALLTHROUGH;
- case DW_TAG_structure_type:
- case DW_TAG_class_type:
- case DW_TAG_union_type:
-diff --git a/backends/mips_retval.c b/backends/mips_retval.c
-index 57487bb..c6e1ffe 100644
---- a/backends/mips_retval.c
-+++ b/backends/mips_retval.c
-@@ -306,7 +306,7 @@ mips_return_value_location (Dwarf_Die *functypedie, const Dwarf_Op **locp)
- typedie = dwarf_formref_die (attr, &die_mem);
- tag = dwarf_tag (typedie);
- }
-- /* Fall through. */
-+ FALLTHROUGH;
-
- case DW_TAG_base_type:
- case DW_TAG_enumeration_type:
-@@ -389,7 +389,7 @@ mips_return_value_location (Dwarf_Die *functypedie, const Dwarf_Op **locp)
- }
- }
-
-- /* Fallthrough to handle large types */
-+ FALLTHROUGH; /* Fallthrough to handle large types */
-
- case DW_TAG_array_type:
- large:
-diff --git a/backends/parisc_retval.c b/backends/parisc_retval.c
-index df7ec3a..1f1e91a 100644
---- a/backends/parisc_retval.c
-+++ b/backends/parisc_retval.c
-@@ -116,7 +116,7 @@ parisc_return_value_location_ (Dwarf_Die *functypedie, const Dwarf_Op **locp, in
- typedie = dwarf_formref_die (attr, &die_mem);
- tag = dwarf_tag (typedie);
- }
-- /* Fall through. */
-+ FALLTHROUGH;
-
- case DW_TAG_base_type:
- case DW_TAG_enumeration_type:
-@@ -167,6 +167,7 @@ parisc_return_value_location_ (Dwarf_Die *functypedie, const Dwarf_Op **locp, in
-
- /* Else fall through. */
- }
-+ FALLTHROUGH;
-
- case DW_TAG_structure_type:
- case DW_TAG_class_type:
-@@ -189,7 +190,7 @@ parisc_return_value_location_ (Dwarf_Die *functypedie, const Dwarf_Op **locp, in
- *locp = loc_aggregate;
- return nloc_aggregate;
- #endif
-- /* fall through. */
-+ FALLTHROUGH;
- }
- }
-
-diff --git a/backends/ppc64_retval.c b/backends/ppc64_retval.c
-index a251983..eb1c11e 100644
---- a/backends/ppc64_retval.c
-+++ b/backends/ppc64_retval.c
-@@ -96,7 +96,7 @@ ppc64_return_value_location (Dwarf_Die *functypedie, const Dwarf_Op **locp)
- typedie = dwarf_formref_die (attr, &die_mem);
- tag = DWARF_TAG_OR_RETURN (typedie);
- }
-- /* Fall through. */
-+ FALLTHROUGH;
-
- case DW_TAG_base_type:
- case DW_TAG_enumeration_type:
-@@ -141,7 +141,7 @@ ppc64_return_value_location (Dwarf_Die *functypedie, const Dwarf_Op **locp)
- return nloc_intreg;
- }
-
-- /* Else fall through. */
-+ FALLTHROUGH;
- case DW_TAG_structure_type:
- case DW_TAG_class_type:
- case DW_TAG_union_type:
-@@ -161,7 +161,7 @@ ppc64_return_value_location (Dwarf_Die *functypedie, const Dwarf_Op **locp)
- return nloc_vmxreg;
- }
- }
-- /* Fall through. */
-+ FALLTHROUGH;
-
- case DW_TAG_string_type:
- if (dwarf_aggregate_size (typedie, &size) == 0 && size <= 8)
-diff --git a/backends/ppc_regs.c b/backends/ppc_regs.c
-index c2d5011..43d2534 100644
---- a/backends/ppc_regs.c
-+++ b/backends/ppc_regs.c
-@@ -140,7 +140,7 @@ ppc_register_info (Ebl *ebl __attribute__ ((unused)),
- case 100:
- if (*bits == 32)
- return stpcpy (name, "mq") + 1 - name;
-- /* Fallthrough */
-+ FALLTHROUGH;
- case 102 ... 107:
- name[0] = 's';
- name[1] = 'p';
-diff --git a/backends/ppc_retval.c b/backends/ppc_retval.c
-index b14a99f..39b42da 100644
---- a/backends/ppc_retval.c
-+++ b/backends/ppc_retval.c
-@@ -108,7 +108,7 @@ ppc_return_value_location (Dwarf_Die *functypedie, const Dwarf_Op **locp)
- typedie = dwarf_formref_die (attr, &die_mem);
- tag = DWARF_TAG_OR_RETURN (typedie);
- }
-- /* Fall through. */
-+ FALLTHROUGH;
-
- case DW_TAG_base_type:
- case DW_TAG_enumeration_type:
-@@ -172,7 +172,7 @@ ppc_return_value_location (Dwarf_Die *functypedie, const Dwarf_Op **locp)
- return nloc_intregquad;
- }
- }
-- /* Fall through. */
-+ FALLTHROUGH;
-
- case DW_TAG_structure_type:
- case DW_TAG_class_type:
-diff --git a/backends/s390_retval.c b/backends/s390_retval.c
-index a927d46..2043f98 100644
---- a/backends/s390_retval.c
-+++ b/backends/s390_retval.c
-@@ -87,7 +87,7 @@ s390_return_value_location (Dwarf_Die *functypedie, const Dwarf_Op **locp)
- typedie = dwarf_formref_die (attr, &die_mem);
- tag = DWARF_TAG_OR_RETURN (typedie);
- }
-- /* Fall through. */
-+ FALLTHROUGH;
-
- case DW_TAG_base_type:
- case DW_TAG_enumeration_type:
-@@ -127,7 +127,7 @@ s390_return_value_location (Dwarf_Die *functypedie, const Dwarf_Op **locp)
- return size <= asize ? nloc_intreg : nloc_intregpair;
- }
- }
-- /* Fall through. */
-+ FALLTHROUGH;
-
- case DW_TAG_structure_type:
- case DW_TAG_class_type:
-diff --git a/backends/sh_retval.c b/backends/sh_retval.c
-index d44f260..33d7d96 100644
---- a/backends/sh_retval.c
-+++ b/backends/sh_retval.c
-@@ -84,7 +84,7 @@ sh_return_value_location (Dwarf_Die *functypedie, const Dwarf_Op **locp)
- typedie = dwarf_formref_die (attr, &die_mem);
- tag = DWARF_TAG_OR_RETURN (typedie);
- }
-- /* Fall through. */
-+ FALLTHROUGH;
-
- case DW_TAG_base_type:
- case DW_TAG_enumeration_type:
-diff --git a/backends/sparc_retval.c b/backends/sparc_retval.c
-index e1b1775..fb81cdc 100644
---- a/backends/sparc_retval.c
-+++ b/backends/sparc_retval.c
-@@ -91,7 +91,7 @@ sparc_return_value_location (Dwarf_Die *functypedie, const Dwarf_Op **locp)
- typedie = dwarf_formref_die (attr, &die_mem);
- tag = DWARF_TAG_OR_RETURN (typedie);
- }
-- /* Fall through. */
-+ FALLTHROUGH;
-
- case DW_TAG_base_type:
- case DW_TAG_enumeration_type:
-diff --git a/backends/tilegx_retval.c b/backends/tilegx_retval.c
-index db81a20..7f7d24b 100644
---- a/backends/tilegx_retval.c
-+++ b/backends/tilegx_retval.c
-@@ -79,7 +79,7 @@ tilegx_return_value_location (Dwarf_Die *functypedie, const Dwarf_Op **locp)
- typedie = dwarf_formref_die (attr, &die_mem);
- tag = DWARF_TAG_OR_RETURN (typedie);
- }
-- /* Fall through. */
-+ FALLTHROUGH;
-
- case DW_TAG_base_type:
- case DW_TAG_enumeration_type:
-@@ -113,7 +113,7 @@ tilegx_return_value_location (Dwarf_Die *functypedie, const Dwarf_Op **locp)
- return nloc_intreg;
- }
-
-- /* Else fall through. */
-+ FALLTHROUGH;
- case DW_TAG_structure_type:
- case DW_TAG_class_type:
- case DW_TAG_union_type:
-diff --git a/backends/x86_64_regs.c b/backends/x86_64_regs.c
-index 8430440..ef987da 100644
---- a/backends/x86_64_regs.c
-+++ b/backends/x86_64_regs.c
-@@ -87,7 +87,7 @@ x86_64_register_info (Ebl *ebl __attribute__ ((unused)),
-
- case 6 ... 7:
- *type = DW_ATE_address;
-- /* Fallthrough */
-+ FALLTHROUGH;
- case 0 ... 5:
- name[0] = 'r';
- name[1] = baseregs[regno][0];
-diff --git a/backends/x86_64_retval.c b/backends/x86_64_retval.c
-index b3799ae..f9114cb 100644
---- a/backends/x86_64_retval.c
-+++ b/backends/x86_64_retval.c
-@@ -100,7 +100,7 @@ x86_64_return_value_location (Dwarf_Die *functypedie, const Dwarf_Op **locp)
- typedie = dwarf_formref_die (attr, &die_mem);
- tag = DWARF_TAG_OR_RETURN (typedie);
- }
-- /* Fall through. */
-+ FALLTHROUGH;
-
- case DW_TAG_base_type:
- case DW_TAG_enumeration_type:
-diff --git a/config/eu.am b/config/eu.am
-index 8fe1e25..b6ec581 100644
---- a/config/eu.am
-+++ b/config/eu.am
-@@ -62,7 +62,9 @@ NULL_DEREFERENCE_WARNING=
- endif
-
- if HAVE_IMPLICIT_FALLTHROUGH_WARNING
--IMPLICIT_FALLTHROUGH_WARNING=-Wimplicit-fallthrough
-+# Use strict fallthrough. Only __attribute__((fallthrough)) will prevent the
-+# warning
-+IMPLICIT_FALLTHROUGH_WARNING=-Wimplicit-fallthrough=5
- else
- IMPLICIT_FALLTHROUGH_WARNING=
- endif
-diff --git a/configure.ac b/configure.ac
-index 1f1856d..698efbb 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -360,6 +360,12 @@ CFLAGS="$old_CFLAGS"])
- AM_CONDITIONAL(HAVE_IMPLICIT_FALLTHROUGH_WARNING,
- [test "x$ac_cv_implicit_fallthrough" != "xno"])
-
-+# Assume the fallthrough attribute is supported if -Wimplict-fallthrough is supported
-+if test "$ac_cv_implicit_fallthrough" = "yes"; then
-+ AC_DEFINE([HAVE_FALLTHROUGH], [1],
-+ [Defined if __attribute__((fallthrough)) is supported])
-+fi
-+
- dnl Check if we have argp available from our libc
- AC_LINK_IFELSE(
- [AC_LANG_PROGRAM(
-diff --git a/lib/eu-config.h b/lib/eu-config.h
-index 400cdc6..e8d4ec2 100644
---- a/lib/eu-config.h
-+++ b/lib/eu-config.h
-@@ -186,5 +186,12 @@ asm (".section predict_data, \"aw\"; .previous\n"
- # define COMPAT_VERSION(name, version, prefix) error "should use #ifdef SYMBOL_VERSIONING"
- #endif
-
-+#ifndef FALLTHROUGH
-+# ifdef HAVE_FALLTHROUGH
-+# define FALLTHROUGH __attribute__ ((fallthrough))
-+# else
-+# define FALLTHROUGH ((void) 0)
-+# endif
-+#endif
-
- #endif /* eu-config.h */
-diff --git a/libcpu/i386_disasm.c b/libcpu/i386_disasm.c
-index 60fd6d4..837a3a8 100644
---- a/libcpu/i386_disasm.c
-+++ b/libcpu/i386_disasm.c
-@@ -819,7 +819,7 @@ i386_disasm (Ebl *ebl __attribute__((unused)),
- ++param_start;
- break;
- }
-- /* Fallthrough */
-+ FALLTHROUGH;
- default:
- str = "";
- assert (! "INVALID not handled");
-diff --git a/libcpu/i386_parse.c b/libcpu/i386_parse.c
-index ef1ac35..6fa7ce3 100644
---- a/libcpu/i386_parse.c
-+++ b/libcpu/i386_parse.c
-@@ -1047,7 +1047,7 @@ yytnamerr (char *yyres, const char *yystr)
- case '\\':
- if (*++yyp != '\\')
- goto do_not_strip_quotes;
-- /* Fall through. */
-+ FALLTHROUGH;
- default:
- if (yyres)
- yyres[yyn] = *yyp;
-@@ -2042,7 +2042,7 @@ yyabortlab:
- yyexhaustedlab:
- yyerror (YY_("memory exhausted"));
- yyresult = 2;
-- /* Fall through. */
-+ FALLTHROUGH;
- #endif
-
- yyreturn:
-diff --git a/libdw/cfi.c b/libdw/cfi.c
-index daa845f..341e055 100644
---- a/libdw/cfi.c
-+++ b/libdw/cfi.c
-@@ -138,7 +138,7 @@ execute_cfi (Dwarf_CFI *cache,
-
- case DW_CFA_advance_loc1:
- operand = *program++;
-- /* Fallthrough */
-+ FALLTHROUGH;
- case DW_CFA_advance_loc + 0 ... DW_CFA_advance_loc + CFI_PRIMARY_MAX:
- advance_loc:
- loc += operand * cie->code_alignment_factor;
-@@ -301,7 +301,7 @@ execute_cfi (Dwarf_CFI *cache,
-
- case DW_CFA_restore_extended:
- get_uleb128 (operand, program, end);
-- /* Fallthrough */
-+ FALLTHROUGH;
- case DW_CFA_restore + 0 ... DW_CFA_restore + CFI_PRIMARY_MAX:
-
- if (unlikely (abi_cfi) && likely (opcode == DW_CFA_restore))
-diff --git a/libdw/dwarf_frame_register.c b/libdw/dwarf_frame_register.c
-index 37e8e91..d0159fb 100644
---- a/libdw/dwarf_frame_register.c
-+++ b/libdw/dwarf_frame_register.c
-@@ -62,7 +62,7 @@ dwarf_frame_register (Dwarf_Frame *fs, int regno, Dwarf_Op *ops_mem,
- /* Use the default rule for registers not yet mentioned in CFI. */
- if (fs->cache->default_same_value)
- goto same_value;
-- /*FALLTHROUGH*/
-+ FALLTHROUGH;
- case reg_undefined:
- /* The value is known to be unavailable. */
- break;
-diff --git a/libdwfl/dwfl_report_elf.c b/libdwfl/dwfl_report_elf.c
-index 6950a37..3fc9384 100644
---- a/libdwfl/dwfl_report_elf.c
-+++ b/libdwfl/dwfl_report_elf.c
-@@ -174,7 +174,7 @@ __libdwfl_elf_address_range (Elf *elf, GElf_Addr base, bool add_p_vaddr,
- /* An assigned base address is meaningless for these. */
- base = 0;
- add_p_vaddr = true;
-- /* Fallthrough. */
-+ FALLTHROUGH;
- case ET_DYN:
- default:;
- size_t phnum;
-diff --git a/libdwfl/frame_unwind.c b/libdwfl/frame_unwind.c
-index 4dc9c43..eaea495 100644
---- a/libdwfl/frame_unwind.c
-+++ b/libdwfl/frame_unwind.c
-@@ -442,7 +442,7 @@ expr_eval (Dwfl_Frame *state, Dwarf_Frame *frame, const Dwarf_Op *ops,
- }
- if (val1 == 0)
- break;
-- /* FALLTHRU */
-+ FALLTHROUGH;
- case DW_OP_skip:;
- Dwarf_Word offset = op->offset + 1 + 2 + (int16_t) op->number;
- const Dwarf_Op *found = bsearch ((void *) (uintptr_t) offset, ops, nops,
-diff --git a/libebl/eblobjnote.c b/libebl/eblobjnote.c
-index f80a1a5..ca4f155 100644
---- a/libebl/eblobjnote.c
-+++ b/libebl/eblobjnote.c
-@@ -223,7 +223,7 @@ ebl_object_note (Ebl *ebl, const char *name, uint32_t type,
- free (buf);
- break;
- }
-- /* FALLTHROUGH */
-+ FALLTHROUGH;
-
- default:
- /* Unknown type. */
-diff --git a/libelf/elf32_updatenull.c b/libelf/elf32_updatenull.c
-index a51bf70..5351518 100644
---- a/libelf/elf32_updatenull.c
-+++ b/libelf/elf32_updatenull.c
-@@ -232,7 +232,7 @@ __elfw2(LIBELFBITS,updatenull_wrlock) (Elf *elf, int *change_bop, size_t shnum)
- __libelf_seterrno (ELF_E_GROUP_NOT_REL);
- return -1;
- }
-- /* FALLTHROUGH */
-+ FALLTHROUGH;
- case SHT_SYMTAB_SHNDX:
- sh_entsize = elf_typesize (32, ELF_T_WORD, 1);
- break;
-diff --git a/libelf/elf_begin.c b/libelf/elf_begin.c
-index 6f85038..6de206a 100644
---- a/libelf/elf_begin.c
-+++ b/libelf/elf_begin.c
-@@ -582,7 +582,7 @@ read_unmmaped_file (int fildes, off_t offset, size_t maxsize, Elf_Cmd cmd,
- ? sizeof (Elf32_Ehdr) : sizeof (Elf64_Ehdr)))
- return file_read_elf (fildes, NULL, mem.header, offset, maxsize, cmd,
- parent);
-- /* FALLTHROUGH */
-+ FALLTHROUGH;
-
- default:
- break;
-@@ -1097,7 +1097,7 @@ elf_begin (int fildes, Elf_Cmd cmd, Elf *ref)
- retval = NULL;
- break;
- }
-- /* FALLTHROUGH */
-+ FALLTHROUGH;
-
- case ELF_C_READ:
- case ELF_C_READ_MMAP:
-diff --git a/libelf/elf_cntl.c b/libelf/elf_cntl.c
-index ab13ffb..fd68178 100644
---- a/libelf/elf_cntl.c
-+++ b/libelf/elf_cntl.c
-@@ -62,7 +62,7 @@ elf_cntl (Elf *elf, Elf_Cmd cmd)
- result = -1;
- break;
- }
-- /* FALLTHROUGH */
-+ FALLTHROUGH;
-
- case ELF_C_FDDONE:
- /* Mark the file descriptor as not usable. */
-diff --git a/src/addr2line.c b/src/addr2line.c
-index ba414a7..444ee52 100644
---- a/src/addr2line.c
-+++ b/src/addr2line.c
-@@ -618,7 +618,7 @@ handle_address (const char *string, Dwfl *dwfl)
- case 1:
- addr = 0;
- j = i;
-- /* Fallthrough */
-+ FALLTHROUGH;
- case 2:
- if (string[j] != '\0')
- break;
-diff --git a/src/elfcompress.c b/src/elfcompress.c
-index 8e0d5c5..25378a4 100644
---- a/src/elfcompress.c
-+++ b/src/elfcompress.c
-@@ -149,7 +149,7 @@ parse_opt (int key, char *arg __attribute__ ((unused)),
- N_("Only one input file allowed together with '-o'"));
- /* We only use this for checking the number of arguments, we don't
- actually want to consume them. */
-- /* Fallthrough */
-+ FALLTHROUGH;
- default:
- return ARGP_ERR_UNKNOWN;
- }
-diff --git a/src/elflint.c b/src/elflint.c
-index 51e53c2..df1b3a0 100644
---- a/src/elflint.c
-+++ b/src/elflint.c
-@@ -1764,7 +1764,7 @@ section [%2d] '%s': entry %zu: pointer does not match address of section [%2d] '
- if (dyn->d_tag < DT_ADDRRNGLO || dyn->d_tag > DT_ADDRRNGHI)
- /* Value is no pointer. */
- break;
-- /* FALLTHROUGH */
-+ FALLTHROUGH;
-
- case DT_AUXILIARY:
- case DT_FILTER:
-@@ -3993,7 +3993,7 @@ section [%2zu] '%s': merge flag set but entry size is zero\n"),
- case SHT_NOBITS:
- if (is_debuginfo)
- break;
-- /* Fallthrough */
-+ FALLTHROUGH;
- default:
- ERROR (gettext ("\
- section [%2zu] '%s' has unexpected type %d for an executable section\n"),
-@@ -4137,7 +4137,7 @@ section [%2zu] '%s': ELF header says this is the section header string table but
- ERROR (gettext ("\
- section [%2zu] '%s': relocatable files cannot have dynamic symbol tables\n"),
- cnt, section_name (ebl, cnt));
-- /* FALLTHROUGH */
-+ FALLTHROUGH;
- case SHT_SYMTAB:
- check_symtab (ebl, ehdr, shdr, cnt);
- break;
-@@ -4336,7 +4336,7 @@ section [%2d] '%s': unknown core file note type %" PRIu32
- if (nhdr.n_namesz == sizeof "Linux"
- && !memcmp (data->d_buf + name_offset, "Linux", sizeof "Linux"))
- break;
-- /* Fallthrough */
-+ FALLTHROUGH;
- default:
- if (shndx == 0)
- ERROR (gettext ("\
-diff --git a/src/objdump.c b/src/objdump.c
-index 860cfac..0dd9a6a 100644
---- a/src/objdump.c
-+++ b/src/objdump.c
-@@ -223,7 +223,7 @@ parse_opt (int key, char *arg,
- }
- /* We only use this for checking the number of arguments, we don't
- actually want to consume them. */
-- /* Fallthrough */
-+ FALLTHROUGH;
- default:
- return ARGP_ERR_UNKNOWN;
- }
-diff --git a/src/readelf.c b/src/readelf.c
-index 346eccd..6a27e7e 100644
---- a/src/readelf.c
-+++ b/src/readelf.c
-@@ -465,7 +465,7 @@ parse_opt (int key, char *arg,
- print_string_sections = true;
- break;
- }
-- /* Fall through. */
-+ FALLTHROUGH;
- case 'x':
- add_dump_section (arg, false);
- any_control_option = true;
-@@ -6029,7 +6029,7 @@ attr_callback (Dwarf_Attribute *attrp, void *arg)
- dwarf_form_name (form), (uintmax_t) num);
- return DWARF_CB_OK;
- }
-- /* else fallthrough */
-+ FALLTHROUGH;
-
- /* These cases always take a loclistptr and no constant. */
- case DW_AT_location:
-@@ -6195,7 +6195,7 @@ attr_callback (Dwarf_Attribute *attrp, void *arg)
- print_block (block.length, block.data);
- break;
- }
-- /* Fall through. */
-+ FALLTHROUGH;
-
- case DW_AT_location:
- case DW_AT_data_location:
-@@ -9227,7 +9227,7 @@ handle_auxv_note (Ebl *ebl, Elf *core, GElf_Word descsz, GElf_Off desc_pos)
- printf (" %s\n", name);
- break;
- }
-- /* Fall through */
-+ FALLTHROUGH;
- case 'x': /* hex */
- case 'p': /* address */
- case 's': /* address of string */
-diff --git a/src/strings.c b/src/strings.c
-index d214356..03d0f13 100644
---- a/src/strings.c
-+++ b/src/strings.c
-@@ -246,7 +246,7 @@ parse_opt (int key, char *arg,
- case 'b':
- case 'B':
- big_endian = true;
-- /* FALLTHROUGH */
-+ FALLTHROUGH;
-
- case 'l':
- case 'L':
-diff --git a/tests/backtrace.c b/tests/backtrace.c
-index 21abe8a..f5dd761 100644
---- a/tests/backtrace.c
-+++ b/tests/backtrace.c
-@@ -127,7 +127,7 @@ callback_verify (pid_t tid, unsigned frameno, Dwarf_Addr pc,
- assert (symname2 == NULL || strcmp (symname2, "jmp") != 0);
- break;
- }
-- /* FALLTHRU */
-+ FALLTHROUGH;
- case 4:
- /* Some simple frame unwinders get this wrong and think sigusr2
- is calling itself again. Allow it and just pretend there is
-diff --git a/tests/elfstrmerge.c b/tests/elfstrmerge.c
-index 8d5b53c..62c549d 100644
---- a/tests/elfstrmerge.c
-+++ b/tests/elfstrmerge.c
-@@ -578,7 +578,8 @@ main (int argc, char **argv)
- break;
-
- case SHT_DYNAMIC:
-- /* Fallthrough. There are string indexes in here, but
-+ FALLTHROUGH;
-+ /* There are string indexes in here, but
- they (should) point to a allocated string table,
- which we don't alter. */
- default:
---
-2.14.3
-
diff --git a/poky/meta/recipes-devtools/elfutils/files/0001-arlib-Check-that-sh_entsize-isn-t-zero.patch b/poky/meta/recipes-devtools/elfutils/files/0001-arlib-Check-that-sh_entsize-isn-t-zero.patch
new file mode 100644
index 000000000..86cf7c8d5
--- /dev/null
+++ b/poky/meta/recipes-devtools/elfutils/files/0001-arlib-Check-that-sh_entsize-isn-t-zero.patch
@@ -0,0 +1,36 @@
+From b518841fbc1431d7c5baa016e35f10fb647b5958 Mon Sep 17 00:00:00 2001
+From: Mark Wielaard <mark@klomp.org>
+Date: Thu, 18 Oct 2018 19:01:52 +0200
+Subject: [PATCH] arlib: Check that sh_entsize isn't zero.
+
+A bogus ELF file could have sh_entsize as zero. Don't divide by zero,
+but just assume there are no symbols in the section.
+
+https://sourceware.org/bugzilla/show_bug.cgi?id=23786
+
+Signed-off-by: Mark Wielaard <mark@klomp.org>
+
+CVE: CVE-2018-18521
+Upstream-Status: Backport [http://sourceware.org/git/elfutils.git]
+Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
+---
+ src/arlib.c | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/src/arlib.c b/src/arlib.c
+index 778e087..a6521e3 100644
+--- a/src/arlib.c
++++ b/src/arlib.c
+@@ -252,6 +252,9 @@ arlib_add_symbols (Elf *elf, const char *arfname, const char *membername,
+ if (data == NULL)
+ continue;
+
++ if (shdr->sh_entsize == 0)
++ continue;
++
+ int nsyms = shdr->sh_size / shdr->sh_entsize;
+ for (int ndx = shdr->sh_info; ndx < nsyms; ++ndx)
+ {
+--
+2.7.4
+
diff --git a/poky/meta/recipes-devtools/elfutils/files/0001-dso-link-change.patch b/poky/meta/recipes-devtools/elfutils/files/0001-dso-link-change.patch
index 28c57f236..4c62dc511 100644
--- a/poky/meta/recipes-devtools/elfutils/files/0001-dso-link-change.patch
+++ b/poky/meta/recipes-devtools/elfutils/files/0001-dso-link-change.patch
@@ -1,4 +1,4 @@
-From 0a69a26c9f7487daca900db87cd1195857a4603f Mon Sep 17 00:00:00 2001
+From c9c6d2414651dbf163dc4963c3c3d6f5cacef898 Mon Sep 17 00:00:00 2001
From: Hongxu Jia <hongxu.jia@windriver.com>
Date: Tue, 15 Aug 2017 17:10:57 +0800
Subject: [PATCH 1/7] dso link change
@@ -35,10 +35,10 @@ index 2b1c0dc..9305b84 100644
endif
libebl = ../libebl/libebl.a
diff --git a/tests/Makefile.am b/tests/Makefile.am
-index 3735084..528615d 100644
+index b45ecdc..dd256fb 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
-@@ -400,7 +400,7 @@ libdw = ../libdw/libdw.a -lz $(zip_LIBS) $(libelf) $(libebl) -ldl
+@@ -436,7 +436,7 @@ libdw = ../libdw/libdw.a -lz $(zip_LIBS) $(libelf) $(libebl) -ldl
libelf = ../libelf/libelf.a -lz
libasm = ../libasm/libasm.a
else
@@ -48,5 +48,5 @@ index 3735084..528615d 100644
libasm = ../libasm/libasm.so
endif
--
-1.8.3.1
+2.7.4
diff --git a/poky/meta/recipes-devtools/elfutils/files/0001-libasm-may-link-with-libbz2-if-found.patch b/poky/meta/recipes-devtools/elfutils/files/0001-libasm-may-link-with-libbz2-if-found.patch
index fb0b060b4..c342053aa 100644
--- a/poky/meta/recipes-devtools/elfutils/files/0001-libasm-may-link-with-libbz2-if-found.patch
+++ b/poky/meta/recipes-devtools/elfutils/files/0001-libasm-may-link-with-libbz2-if-found.patch
@@ -1,4 +1,4 @@
-From 7672e363468271b4c63ff58770c5aac15ab8f722 Mon Sep 17 00:00:00 2001
+From 74629016e76343a4bf39915c9192b6bf26a57c2d Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Wed, 4 Oct 2017 22:30:46 -0700
Subject: [PATCH] libasm may link with libbz2 if found
@@ -9,15 +9,14 @@ where indirect libraries may be not found by linker
| /mnt/a/oe/build/tmp/work/riscv64-bec-linux/elfutils/0.170-r0/recipe-sysroot/usr/lib/libbz2.so.1: error adding symbols: DSO missing from command line
| collect2: error: ld returned 1 exit status
+Upstream-Status: Pending
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
-Upstream-Status: Pending
-
- src/Makefile.am | 6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
+ src/Makefile.am | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/Makefile.am b/src/Makefile.am
-index e03bc32..9b7e853 100644
+index 9305b84..9b7e853 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -39,11 +39,11 @@ EXTRA_DIST += make-debug-archive.in
@@ -35,5 +34,5 @@ index e03bc32..9b7e853 100644
libelf = ../libelf/libelf.so
endif
--
-2.14.2
+2.7.4
diff --git a/poky/meta/recipes-devtools/elfutils/files/0001-libdwfl-Sanity-check-partial-core-file-data-reads.patch b/poky/meta/recipes-devtools/elfutils/files/0001-libdwfl-Sanity-check-partial-core-file-data-reads.patch
new file mode 100644
index 000000000..2c74a8d5d
--- /dev/null
+++ b/poky/meta/recipes-devtools/elfutils/files/0001-libdwfl-Sanity-check-partial-core-file-data-reads.patch
@@ -0,0 +1,60 @@
+From 8cbb2f8de89d65ca52d4242f213a6206b48d2c8d Mon Sep 17 00:00:00 2001
+From: Hongxu Jia <hongxu.jia@windriver.com>
+Date: Fri, 2 Nov 2018 14:22:31 +0800
+Subject: [PATCH] libdwfl: Sanity check partial core file data reads.
+
+There were two issues when reading note data from a core file.
+We didn't check if the data we already had in a buffer was big
+enough. And if we did get the data, we should check if we got
+everything, or just a part of the data.
+
+https://sourceware.org/bugzilla/show_bug.cgi?id=23752
+
+Signed-off-by: Mark Wielaard <mark@klomp.org>
+
+CVE: CVE-2018-18310
+Upstream-Status: Backport [http://sourceware.org/git/elfutils.git]
+Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
+---
+ libdwfl/dwfl_segment_report_module.c | 13 +++++++++++--
+ 1 file changed, 11 insertions(+), 2 deletions(-)
+
+diff --git a/libdwfl/dwfl_segment_report_module.c b/libdwfl/dwfl_segment_report_module.c
+index 36e5c82..8749884 100644
+--- a/libdwfl/dwfl_segment_report_module.c
++++ b/libdwfl/dwfl_segment_report_module.c
+@@ -1,5 +1,5 @@
+ /* Sniff out modules from ELF headers visible in memory segments.
+- Copyright (C) 2008-2012, 2014, 2015 Red Hat, Inc.
++ Copyright (C) 2008-2012, 2014, 2015, 2018 Red Hat, Inc.
+ This file is part of elfutils.
+
+ This file is free software; you can redistribute it and/or modify
+@@ -301,7 +301,10 @@ dwfl_segment_report_module (Dwfl *dwfl, int ndx, const char *name,
+ inline bool read_portion (void **data, size_t *data_size,
+ GElf_Addr vaddr, size_t filesz)
+ {
+- if (vaddr - start + filesz > buffer_available
++ /* Check whether we will have to read the segment data, or if it
++ can be returned from the existing buffer. */
++ if (filesz > buffer_available
++ || vaddr - start > buffer_available - filesz
+ /* If we're in string mode, then don't consider the buffer we have
+ sufficient unless it contains the terminator of the string. */
+ || (filesz == 0 && memchr (vaddr - start + buffer, '\0',
+@@ -459,6 +462,12 @@ dwfl_segment_report_module (Dwfl *dwfl, int ndx, const char *name,
+ if (read_portion (&data, &data_size, vaddr, filesz))
+ return;
+
++ /* data_size will be zero if we got everything from the initial
++ buffer, otherwise it will be the size of the new buffer that
++ could be read. */
++ if (data_size != 0)
++ filesz = data_size;
++
+ assert (sizeof (Elf32_Nhdr) == sizeof (Elf64_Nhdr));
+
+ void *notes;
+--
+2.7.4
+
diff --git a/poky/meta/recipes-devtools/elfutils/files/0001-libelf-elf_end.c-check-data_list.data.d.d_buf-before.patch b/poky/meta/recipes-devtools/elfutils/files/0001-libelf-elf_end.c-check-data_list.data.d.d_buf-before.patch
new file mode 100644
index 000000000..1bdb51169
--- /dev/null
+++ b/poky/meta/recipes-devtools/elfutils/files/0001-libelf-elf_end.c-check-data_list.data.d.d_buf-before.patch
@@ -0,0 +1,46 @@
+From 3393a2e544818f0bd1887c13f28a76ad60c2df98 Mon Sep 17 00:00:00 2001
+From: Robert Yang <liezhi.yang@windriver.com>
+Date: Thu, 16 Aug 2018 09:58:26 +0800
+Subject: [PATCH] libelf/elf_end.c: check data_list.data.d.d_buf before free it
+
+The one which actually saves the data is data_list.data.d.d_buf, so check it
+before free rawdata_base.
+
+This can fix a segmentation fault when prelink libqb_1.0.3:
+prelink: /usr/lib/libqb.so.0.18.2: Symbol section index outside of section numbers
+
+The segmentation fault happens when prelink call elf_end().
+
+Upstream-Status: Submitted [https://sourceware.org/ml/elfutils-devel/2018-q3/msg00085.html]
+
+Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
+---
+ libelf/elf_end.c | 6 ++++--
+ 1 file changed, 4 insertions(+), 2 deletions(-)
+
+diff --git a/libelf/elf_end.c b/libelf/elf_end.c
+index 160f0b8..5280a70 100644
+--- a/libelf/elf_end.c
++++ b/libelf/elf_end.c
+@@ -160,14 +160,16 @@ elf_end (Elf *elf)
+ architecture doesn't require overly stringent
+ alignment the raw data buffer is the same as the
+ one used for presenting to the caller. */
+- if (scn->data_base != scn->rawdata_base)
++ if ((scn->data_base != scn->rawdata_base)
++ && (scn->data_list.data.d.d_buf != NULL))
+ free (scn->data_base);
+
+ /* The section data is allocated if we couldn't mmap
+ the file. Or if we had to decompress. */
+- if (elf->map_address == NULL
++ if ((elf->map_address == NULL
+ || scn->rawdata_base == scn->zdata_base
+ || (scn->flags & ELF_F_MALLOCED) != 0)
++ && (scn->data_list.data.d.d_buf != NULL))
+ free (scn->rawdata_base);
+
+ /* Free the list of data buffers for the section.
+--
+2.7.4
+
diff --git a/poky/meta/recipes-devtools/elfutils/files/0001-size-Handle-recursive-ELF-ar-files.patch b/poky/meta/recipes-devtools/elfutils/files/0001-size-Handle-recursive-ELF-ar-files.patch
new file mode 100644
index 000000000..6fed82692
--- /dev/null
+++ b/poky/meta/recipes-devtools/elfutils/files/0001-size-Handle-recursive-ELF-ar-files.patch
@@ -0,0 +1,40 @@
+From 440d34d0ee37964453245895d38d7fc31bcf3d7d Mon Sep 17 00:00:00 2001
+From: Mark Wielaard <mark@klomp.org>
+Date: Thu, 18 Oct 2018 23:15:48 +0200
+Subject: [PATCH] size: Handle recursive ELF ar files.
+
+eu-size didn't handle an ELF ar file that contained an ar file itself
+correctly. handle_ar would recursively call itself but close the ELF
+file before returning. Only close the ELF file at the top-level.
+
+https://sourceware.org/bugzilla/show_bug.cgi?id=23787
+
+Signed-off-by: Mark Wielaard <mark@klomp.org>
+
+CVE: CVE-2018-18520
+Upstream-Status: Backport [http://sourceware.org/git/elfutils.git]
+Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
+---
+ src/size.c | 6 ++++--
+ 1 file changed, 4 insertions(+), 2 deletions(-)
+
+diff --git a/src/size.c b/src/size.c
+index 5ff3f2a..f01fd88 100644
+--- a/src/size.c
++++ b/src/size.c
+@@ -374,8 +374,10 @@ handle_ar (int fd, Elf *elf, const char *prefix, const char *fname)
+ INTERNAL_ERROR (fname);
+ }
+
+- if (unlikely (elf_end (elf) != 0))
+- INTERNAL_ERROR (fname);
++ /* Only close ELF handle if this was a "top level" ar file. */
++ if (prefix == NULL)
++ if (unlikely (elf_end (elf) != 0))
++ INTERNAL_ERROR (fname);
+
+ return result;
+ }
+--
+2.7.4
+
diff --git a/poky/meta/recipes-devtools/elfutils/files/0002-Fix-elf_cvt_gunhash-if-dest-and-src-are-same.patch b/poky/meta/recipes-devtools/elfutils/files/0002-Fix-elf_cvt_gunhash-if-dest-and-src-are-same.patch
index 2f718eb82..86d26bdf3 100644
--- a/poky/meta/recipes-devtools/elfutils/files/0002-Fix-elf_cvt_gunhash-if-dest-and-src-are-same.patch
+++ b/poky/meta/recipes-devtools/elfutils/files/0002-Fix-elf_cvt_gunhash-if-dest-and-src-are-same.patch
@@ -1,4 +1,4 @@
-From e98670f7c7b4c73fb65534949716fd8d043960d5 Mon Sep 17 00:00:00 2001
+From 9fd4bb05d3f2b7eaf9fe441bee26d3b1878d7cc7 Mon Sep 17 00:00:00 2001
From: Hongxu Jia <hongxu.jia@windriver.com>
Date: Tue, 15 Aug 2017 17:13:59 +0800
Subject: [PATCH 2/7] Fix elf_cvt_gunhash if dest and src are same.
@@ -38,5 +38,5 @@ index 6faf113..04d9ca1 100644
/* Now the 64 bit words. */
Elf64_Xword *dest64 = (Elf64_Xword *) &dest32[4];
--
-1.8.3.1
+2.7.4
diff --git a/poky/meta/recipes-devtools/elfutils/files/0003-fixheadercheck.patch b/poky/meta/recipes-devtools/elfutils/files/0003-fixheadercheck.patch
index 7c49fced1..d1c8e4143 100644
--- a/poky/meta/recipes-devtools/elfutils/files/0003-fixheadercheck.patch
+++ b/poky/meta/recipes-devtools/elfutils/files/0003-fixheadercheck.patch
@@ -1,4 +1,4 @@
-From 565d5935abf5b58773f9c8385c00189221980d98 Mon Sep 17 00:00:00 2001
+From 04fb3f65ec186df5231dd0c21780a55dcc03c868 Mon Sep 17 00:00:00 2001
From: Hongxu Jia <hongxu.jia@windriver.com>
Date: Tue, 15 Aug 2017 17:17:20 +0800
Subject: [PATCH 3/7] fixheadercheck
@@ -21,7 +21,7 @@ Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/libelf/elf32_updatenull.c b/libelf/elf32_updatenull.c
-index d83c0b3..a51bf70 100644
+index 3e9ef61..5351518 100644
--- a/libelf/elf32_updatenull.c
+++ b/libelf/elf32_updatenull.c
@@ -339,8 +339,8 @@ __elfw2(LIBELFBITS,updatenull_wrlock) (Elf *elf, int *change_bop, size_t shnum)
@@ -36,5 +36,5 @@ index d83c0b3..a51bf70 100644
__libelf_seterrno (ELF_E_INVALID_ALIGN);
return -1;
--
-1.8.3.1
+2.7.4
diff --git a/poky/meta/recipes-devtools/elfutils/files/0004-Disable-the-test-to-convert-euc-jp.patch b/poky/meta/recipes-devtools/elfutils/files/0004-Disable-the-test-to-convert-euc-jp.patch
index d893ad68f..bf3a645bc 100644
--- a/poky/meta/recipes-devtools/elfutils/files/0004-Disable-the-test-to-convert-euc-jp.patch
+++ b/poky/meta/recipes-devtools/elfutils/files/0004-Disable-the-test-to-convert-euc-jp.patch
@@ -1,4 +1,4 @@
-From bb7ed11950101798aae82f7fda8b3dcb05f755c5 Mon Sep 17 00:00:00 2001
+From dbc88349b9eed4268db951df2c3a8387f75a32e7 Mon Sep 17 00:00:00 2001
From: Hongxu Jia <hongxu.jia@windriver.com>
Date: Tue, 15 Aug 2017 17:24:06 +0800
Subject: [PATCH 4/7] Disable the test to convert euc-jp
@@ -40,5 +40,5 @@ index a503646..299f1eb 100644
}]])],
[am_cv_func_iconv_works=yes],
--
-1.8.3.1
+2.7.4
diff --git a/poky/meta/recipes-devtools/elfutils/files/0005-fix-a-stack-usage-warning.patch b/poky/meta/recipes-devtools/elfutils/files/0005-fix-a-stack-usage-warning.patch
index 22a01cfa7..e2966cbea 100644
--- a/poky/meta/recipes-devtools/elfutils/files/0005-fix-a-stack-usage-warning.patch
+++ b/poky/meta/recipes-devtools/elfutils/files/0005-fix-a-stack-usage-warning.patch
@@ -1,4 +1,4 @@
-From dd6dbf6af396519380f48c0ef1ce6cf4dd77f6d7 Mon Sep 17 00:00:00 2001
+From 4d7ea681932556ad881f6841de90d0bfff56f8d7 Mon Sep 17 00:00:00 2001
From: Hongxu Jia <hongxu.jia@windriver.com>
Date: Tue, 15 Aug 2017 17:25:16 +0800
Subject: [PATCH 5/7] fix a stack-usage warning
@@ -18,10 +18,10 @@ Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/backends/ppc_initreg.c b/backends/ppc_initreg.c
-index 69d623b..de41dec 100644
+index 3e4432f..59c2d97 100644
--- a/backends/ppc_initreg.c
+++ b/backends/ppc_initreg.c
-@@ -93,7 +93,7 @@ ppc_set_initial_registers_tid (pid_t tid __attribute__ ((unused)),
+@@ -94,7 +94,7 @@ ppc_set_initial_registers_tid (pid_t tid __attribute__ ((unused)),
return false;
}
const size_t gprs = sizeof (user_regs.r.gpr) / sizeof (*user_regs.r.gpr);
@@ -31,5 +31,5 @@ index 69d623b..de41dec 100644
dwarf_regs[gpr] = user_regs.r.gpr[gpr];
if (! setfunc (0, gprs, dwarf_regs, arg))
--
-1.8.3.1
+2.7.4
diff --git a/poky/meta/recipes-devtools/elfutils/files/0006-Fix-build-on-aarch64-musl.patch b/poky/meta/recipes-devtools/elfutils/files/0006-Fix-build-on-aarch64-musl.patch
index 5f29a0375..40b8544fa 100644
--- a/poky/meta/recipes-devtools/elfutils/files/0006-Fix-build-on-aarch64-musl.patch
+++ b/poky/meta/recipes-devtools/elfutils/files/0006-Fix-build-on-aarch64-musl.patch
@@ -1,4 +1,4 @@
-From e57ad47fc8549353ca80c23b9b4f38f31fde13e5 Mon Sep 17 00:00:00 2001
+From b4ec05953f78af26bcd7de45a5bbc5f138d023da Mon Sep 17 00:00:00 2001
From: Hongxu Jia <hongxu.jia@windriver.com>
Date: Tue, 15 Aug 2017 17:27:30 +0800
Subject: [PATCH 6/7] Fix build on aarch64/musl
@@ -57,5 +57,5 @@ index efcabaf..062bb9e 100644
# include <sys/ptrace.h>
/* Deal with old glibc defining user_pt_regs instead of user_regs_struct. */
--
-1.8.3.1
+2.7.4
diff --git a/poky/meta/recipes-devtools/elfutils/files/0007-Fix-control-path-where-we-have-str-as-uninitialized-.patch b/poky/meta/recipes-devtools/elfutils/files/0007-Fix-control-path-where-we-have-str-as-uninitialized-.patch
index 224770478..bba420e34 100644
--- a/poky/meta/recipes-devtools/elfutils/files/0007-Fix-control-path-where-we-have-str-as-uninitialized-.patch
+++ b/poky/meta/recipes-devtools/elfutils/files/0007-Fix-control-path-where-we-have-str-as-uninitialized-.patch
@@ -1,6 +1,6 @@
-From 1e91c1d4e37c05cf95058b4b3c3f352d72886f58 Mon Sep 17 00:00:00 2001
+From 8eb100b2e51be5d473b0748a223e2e7f61ec606c Mon Sep 17 00:00:00 2001
From: Hongxu Jia <hongxu.jia@windriver.com>
-Date: Tue, 15 Aug 2017 17:31:38 +0800
+Date: Fri, 29 Jun 2018 15:14:28 +0800
Subject: [PATCH 7/7] Fix control path where we have str as uninitialized
string
@@ -21,7 +21,7 @@ note: 'str' was declared here
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Upstream-Status: Pending
-Rebase to 0.170
+Rebase to 0.172
Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
---
@@ -29,17 +29,17 @@ Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
1 file changed, 1 insertion(+)
diff --git a/libcpu/i386_disasm.c b/libcpu/i386_disasm.c
-index 831afbe..60fd6d4 100644
+index a7e03f9..837a3a8 100644
--- a/libcpu/i386_disasm.c
+++ b/libcpu/i386_disasm.c
@@ -821,6 +821,7 @@ i386_disasm (Ebl *ebl __attribute__((unused)),
}
- /* Fallthrough */
+ FALLTHROUGH;
default:
+ str = "";
assert (! "INVALID not handled");
}
}
--
-1.8.3.1
+2.7.4
diff --git a/poky/meta/recipes-devtools/elfutils/files/0008-build-Provide-alternatives-for-glibc-assumptions-hel.patch b/poky/meta/recipes-devtools/elfutils/files/0008-build-Provide-alternatives-for-glibc-assumptions-hel.patch
index a42ce7b35..0f01a3218 100644
--- a/poky/meta/recipes-devtools/elfutils/files/0008-build-Provide-alternatives-for-glibc-assumptions-hel.patch
+++ b/poky/meta/recipes-devtools/elfutils/files/0008-build-Provide-alternatives-for-glibc-assumptions-hel.patch
@@ -1,90 +1,32 @@
-From ef0981744669149a00dd0439a54dac30de7b56a7 Mon Sep 17 00:00:00 2001
+From 207be05c44da5c4c31179a34660e176145ff8d4b Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
-Date: Wed, 16 Aug 2017 10:06:26 +0800
+Date: Mon, 2 Jul 2018 09:52:23 +0800
Subject: [PATCH] build: Provide alternatives for glibc assumptions helps
compiling it on musl
Upstream-Status: Pending
Signed-off-by: Khem Raj <raj.khem@gmail.com>
-Rebase to 0.170
+Rebase to 0.174
Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
-
---
Makefile.am | 2 +-
- lib/color.c | 3 ++-
lib/fixedsizehash.h | 1 -
- lib/system.h | 10 ++++++++++
- lib/xmalloc.c | 2 +-
- libasm/asm_end.c | 2 +-
- libasm/asm_newscn.c | 2 +-
- libcpu/i386_gendis.c | 2 +-
- libcpu/i386_lex.c | 2 +-
- libcpu/i386_parse.c | 2 +-
+ lib/system.h | 12 +++++++++++-
libdw/Makefile.am | 3 ++-
- libdw/libdw_alloc.c | 2 +-
- libdwfl/dwfl_build_id_find_elf.c | 3 ++-
+ libdwfl/dwfl_build_id_find_elf.c | 1 +
libdwfl/dwfl_error.c | 4 +++-
libdwfl/dwfl_module_getdwarf.c | 1 +
- libdwfl/find-debuginfo.c | 2 +-
libdwfl/libdwfl_crc32_file.c | 9 +++++++++
libdwfl/linux-kernel-modules.c | 1 +
- libebl/eblopenbackend.c | 2 +-
libelf/elf.h | 8 ++++++--
libelf/libelf.h | 1 +
libelf/libelfP.h | 1 +
- src/addr2line.c | 2 +-
- src/ar.c | 2 +-
- src/arlib.c | 2 +-
- src/arlib2.c | 2 +-
- src/elfcmp.c | 2 +-
- src/elflint.c | 2 +-
- src/findtextrel.c | 2 +-
- src/nm.c | 2 +-
- src/objdump.c | 2 +-
- src/ranlib.c | 2 +-
- src/readelf.c | 2 +-
- src/size.c | 2 +-
- src/stack.c | 2 +-
- src/strings.c | 2 +-
- src/strip.c | 2 +-
- src/unstrip.c | 2 +-
- tests/addrscopes.c | 2 +-
- tests/allregs.c | 2 +-
- tests/backtrace-data.c | 2 +-
- tests/backtrace-dwarf.c | 2 +-
- tests/backtrace.c | 2 +-
- tests/buildid.c | 2 +-
- tests/debugaltlink.c | 2 +-
- tests/debuglink.c | 2 +-
- tests/deleted.c | 2 +-
- tests/dwfl-addr-sect.c | 2 +-
- tests/dwfl-bug-addr-overflow.c | 2 +-
- tests/dwfl-bug-fd-leak.c | 2 +-
- tests/dwfl-bug-getmodules.c | 2 +-
- tests/dwfl-report-elf-align.c | 2 +-
- tests/dwfllines.c | 2 +-
- tests/dwflmodtest.c | 2 +-
- tests/dwflsyms.c | 2 +-
- tests/early-offscn.c | 2 +-
- tests/ecp.c | 2 +-
- tests/find-prologues.c | 2 +-
- tests/funcretval.c | 2 +-
- tests/funcscopes.c | 2 +-
- tests/getsrc_die.c | 2 +-
- tests/line2addr.c | 2 +-
- tests/low_high_pc.c | 2 +-
- tests/md5-sha1-test.c | 2 +-
- tests/rdwrmmap.c | 2 +-
- tests/saridx.c | 2 +-
- tests/sectiondump.c | 2 +-
- tests/varlocs.c | 2 +-
- tests/vdsosyms.c | 2 +-
- 69 files changed, 95 insertions(+), 64 deletions(-)
+ 12 files changed, 37 insertions(+), 7 deletions(-)
diff --git a/Makefile.am b/Makefile.am
-index 2ff444e7..41f77df8 100644
+index 2ff444e..41f77df 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -28,7 +28,7 @@ pkginclude_HEADERS = version.h
@@ -96,28 +38,8 @@ index 2ff444e7..41f77df8 100644
EXTRA_DIST = elfutils.spec GPG-KEY NOTES CONTRIBUTING \
COPYING COPYING-GPLV2 COPYING-LGPLV3
-diff --git a/lib/color.c b/lib/color.c
-index f62389d5..a2a84b46 100644
---- a/lib/color.c
-+++ b/lib/color.c
-@@ -32,13 +32,14 @@
- #endif
-
- #include <argp.h>
--#include <error.h>
-+#include <err.h>
- #include <libintl.h>
- #include <stdlib.h>
- #include <string.h>
- #include <unistd.h>
- #include "libeu.h"
- #include "color.h"
-+#include "system.h"
-
- /* Prototype for option handler. */
- static error_t parse_opt (int key, char *arg, struct argp_state *state);
diff --git a/lib/fixedsizehash.h b/lib/fixedsizehash.h
-index dac2a5f5..43016fc3 100644
+index dac2a5f..43016fc 100644
--- a/lib/fixedsizehash.h
+++ b/lib/fixedsizehash.h
@@ -30,7 +30,6 @@
@@ -129,10 +51,19 @@ index dac2a5f5..43016fc3 100644
#include <system.h>
diff --git a/lib/system.h b/lib/system.h
-index 92033355..1a601319 100644
+index 292082b..308a762 100644
--- a/lib/system.h
+++ b/lib/system.h
-@@ -50,6 +50,16 @@
+@@ -30,7 +30,7 @@
+ #define LIB_SYSTEM_H 1
+
+ #include <errno.h>
+-#include <error.h>
++#include <err.h>
+ #include <stddef.h>
+ #include <stdint.h>
+ #include <sys/param.h>
+@@ -51,6 +51,16 @@
#else
# error "Unknown byte order"
#endif
@@ -149,89 +80,11 @@ index 92033355..1a601319 100644
#ifndef MAX
#define MAX(m, n) ((m) < (n) ? (n) : (m))
-diff --git a/lib/xmalloc.c b/lib/xmalloc.c
-index 0cde384f..217b0541 100644
---- a/lib/xmalloc.c
-+++ b/lib/xmalloc.c
-@@ -30,7 +30,7 @@
- # include <config.h>
- #endif
-
--#include <error.h>
-+#include <err.h>
- #include <libintl.h>
- #include <stddef.h>
- #include <stdlib.h>
-diff --git a/libasm/asm_end.c b/libasm/asm_end.c
-index ced24f50..4ad918c4 100644
---- a/libasm/asm_end.c
-+++ b/libasm/asm_end.c
-@@ -32,7 +32,7 @@
- #endif
-
- #include <assert.h>
--#include <error.h>
-+#include <err.h>
- #include <libintl.h>
- #include <stdio.h>
- #include <stdlib.h>
-diff --git a/libasm/asm_newscn.c b/libasm/asm_newscn.c
-index ddbb25df..74a598d9 100644
---- a/libasm/asm_newscn.c
-+++ b/libasm/asm_newscn.c
-@@ -32,7 +32,7 @@
- #endif
-
- #include <assert.h>
--#include <error.h>
-+#include <err.h>
- #include <libintl.h>
- #include <stdlib.h>
- #include <string.h>
-diff --git a/libcpu/i386_gendis.c b/libcpu/i386_gendis.c
-index aae5eae6..6d760165 100644
---- a/libcpu/i386_gendis.c
-+++ b/libcpu/i386_gendis.c
-@@ -31,7 +31,7 @@
- # include <config.h>
- #endif
-
--#include <error.h>
-+#include <err.h>
- #include <errno.h>
- #include <stdio.h>
- #include <stdlib.h>
-diff --git a/libcpu/i386_lex.c b/libcpu/i386_lex.c
-index ba5f4aa5..b1e41916 100644
---- a/libcpu/i386_lex.c
-+++ b/libcpu/i386_lex.c
-@@ -577,7 +577,7 @@ char *i386_text;
- #endif
-
- #include <ctype.h>
--#include <error.h>
-+#include <err.h>
- #include <libintl.h>
-
- #include <libeu.h>
-diff --git a/libcpu/i386_parse.c b/libcpu/i386_parse.c
-index 6fa7ce3d..bb270061 100644
---- a/libcpu/i386_parse.c
-+++ b/libcpu/i386_parse.c
-@@ -107,7 +107,7 @@
- #include <assert.h>
- #include <ctype.h>
- #include <errno.h>
--#include <error.h>
-+#include <err.h>
- #include <inttypes.h>
- #include <libintl.h>
- #include <math.h>
diff --git a/libdw/Makefile.am b/libdw/Makefile.am
-index ff8c291e..89e792aa 100644
+index 7a3d532..7ac1241 100644
--- a/libdw/Makefile.am
+++ b/libdw/Makefile.am
-@@ -105,7 +105,8 @@ am_libdw_pic_a_OBJECTS = $(libdw_a_SOURCES:.c=.os)
+@@ -108,7 +108,8 @@ am_libdw_pic_a_OBJECTS = $(libdw_a_SOURCES:.c=.os)
libdw_so_LIBS = libdw_pic.a ../libdwelf/libdwelf_pic.a \
../libdwfl/libdwfl_pic.a ../libebl/libebl.a
libdw_so_DEPS = ../lib/libeu.a ../libelf/libelf.so
@@ -241,21 +94,8 @@ index ff8c291e..89e792aa 100644
libdw_so_SOURCES =
libdw.so$(EXEEXT): $(srcdir)/libdw.map $(libdw_so_LIBS) $(libdw_so_DEPS)
# The rpath is necessary for libebl because its $ORIGIN use will
-diff --git a/libdw/libdw_alloc.c b/libdw/libdw_alloc.c
-index 28a8cf6e..29aeb3f7 100644
---- a/libdw/libdw_alloc.c
-+++ b/libdw/libdw_alloc.c
-@@ -31,7 +31,7 @@
- # include <config.h>
- #endif
-
--#include <error.h>
-+#include <err.h>
- #include <errno.h>
- #include <stdlib.h>
- #include "libdwP.h"
diff --git a/libdwfl/dwfl_build_id_find_elf.c b/libdwfl/dwfl_build_id_find_elf.c
-index ee0c1646..b06ab596 100644
+index cc6c3f6..b06ab59 100644
--- a/libdwfl/dwfl_build_id_find_elf.c
+++ b/libdwfl/dwfl_build_id_find_elf.c
@@ -31,6 +31,7 @@
@@ -266,17 +106,8 @@ index ee0c1646..b06ab596 100644
#include <inttypes.h>
#include <fcntl.h>
#include <unistd.h>
-@@ -99,7 +100,7 @@ __libdwfl_open_by_build_id (Dwfl_Module *mod, bool debug, char **file_name,
- {
- if (*file_name != NULL)
- free (*file_name);
-- *file_name = canonicalize_file_name (name);
-+ *file_name = realpath (name, NULL);
- if (*file_name == NULL)
- {
- *file_name = name;
diff --git a/libdwfl/dwfl_error.c b/libdwfl/dwfl_error.c
-index 7bcf61cc..c345797a 100644
+index 7bcf61c..c345797 100644
--- a/libdwfl/dwfl_error.c
+++ b/libdwfl/dwfl_error.c
@@ -140,6 +140,7 @@ __libdwfl_seterrno (Dwfl_Error error)
@@ -298,7 +129,7 @@ index 7bcf61cc..c345797a 100644
return elf_errmsg (error & 0xffff);
case OTHER_ERROR (LIBDW):
diff --git a/libdwfl/dwfl_module_getdwarf.c b/libdwfl/dwfl_module_getdwarf.c
-index 9775aced..511c4a6a 100644
+index af6838a..c079d6a 100644
--- a/libdwfl/dwfl_module_getdwarf.c
+++ b/libdwfl/dwfl_module_getdwarf.c
@@ -35,6 +35,7 @@
@@ -309,21 +140,8 @@ index 9775aced..511c4a6a 100644
#include "../libdw/libdwP.h" /* DWARF_E_* values are here. */
#include "../libelf/libelfP.h"
#include "system.h"
-diff --git a/libdwfl/find-debuginfo.c b/libdwfl/find-debuginfo.c
-index 6d5a42a6..9267788d 100644
---- a/libdwfl/find-debuginfo.c
-+++ b/libdwfl/find-debuginfo.c
-@@ -389,7 +389,7 @@ dwfl_standard_find_debuginfo (Dwfl_Module *mod,
- /* If FILE_NAME is a symlink, the debug file might be associated
- with the symlink target name instead. */
-
-- char *canon = canonicalize_file_name (file_name);
-+ char *canon = realpath (file_name, NULL);
- if (canon != NULL && strcmp (file_name, canon))
- fd = find_debuginfo_in_path (mod, canon,
- debuglink_file, debuglink_crc,
diff --git a/libdwfl/libdwfl_crc32_file.c b/libdwfl/libdwfl_crc32_file.c
-index f849128d..6f0aca1b 100644
+index f849128..6f0aca1 100644
--- a/libdwfl/libdwfl_crc32_file.c
+++ b/libdwfl/libdwfl_crc32_file.c
@@ -29,6 +29,15 @@
@@ -343,7 +161,7 @@ index f849128d..6f0aca1b 100644
#define crc32 __libdwfl_crc32
#include <libdwflP.h>
diff --git a/libdwfl/linux-kernel-modules.c b/libdwfl/linux-kernel-modules.c
-index 9d0fef2c..9fc09b88 100644
+index 9d0fef2..9fc09b8 100644
--- a/libdwfl/linux-kernel-modules.c
+++ b/libdwfl/linux-kernel-modules.c
@@ -40,6 +40,7 @@
@@ -354,21 +172,8 @@ index 9d0fef2c..9fc09b88 100644
#include <inttypes.h>
#include <errno.h>
#include <stdio.h>
-diff --git a/libebl/eblopenbackend.c b/libebl/eblopenbackend.c
-index 53713963..2e66dfdd 100644
---- a/libebl/eblopenbackend.c
-+++ b/libebl/eblopenbackend.c
-@@ -32,7 +32,7 @@
-
- #include <assert.h>
- #include <dlfcn.h>
--#include <error.h>
-+#include <err.h>
- #include <libelfP.h>
- #include <dwarf.h>
- #include <stdlib.h>
diff --git a/libelf/elf.h b/libelf/elf.h
-index 5cf2b934..990b3afb 100644
+index 5dc632b..14da1b7 100644
--- a/libelf/elf.h
+++ b/libelf/elf.h
@@ -21,7 +21,9 @@
@@ -382,9 +187,9 @@ index 5cf2b934..990b3afb 100644
/* Standard ELF types. */
-@@ -3705,6 +3707,8 @@ enum
- #define R_BPF_NONE 0 /* No reloc */
- #define R_BPF_MAP_FD 1 /* Map fd to pointer */
+@@ -3937,6 +3939,8 @@ enum
+ #define R_METAG_TLS_LE_HI16 60
+ #define R_METAG_TLS_LE_LO16 61
-__END_DECLS
+#ifdef __cplusplus
@@ -393,7 +198,7 @@ index 5cf2b934..990b3afb 100644
#endif /* elf.h */
diff --git a/libelf/libelf.h b/libelf/libelf.h
-index 547c0f50..dd78799e 100644
+index d11358c..4cf9272 100644
--- a/libelf/libelf.h
+++ b/libelf/libelf.h
@@ -29,6 +29,7 @@
@@ -405,7 +210,7 @@ index 547c0f50..dd78799e 100644
#include <sys/types.h>
diff --git a/libelf/libelfP.h b/libelf/libelfP.h
-index 7ee6625a..58408997 100644
+index ed216c8..415e6f6 100644
--- a/libelf/libelfP.h
+++ b/libelf/libelfP.h
@@ -32,6 +32,7 @@
@@ -416,614 +221,6 @@ index 7ee6625a..58408997 100644
#include <errno.h>
#include <stdbool.h>
-diff --git a/src/addr2line.c b/src/addr2line.c
-index 444ee52c..9596fa67 100644
---- a/src/addr2line.c
-+++ b/src/addr2line.c
-@@ -23,7 +23,7 @@
- #include <argp.h>
- #include <assert.h>
- #include <errno.h>
--#include <error.h>
-+#include <err.h>
- #include <fcntl.h>
- #include <inttypes.h>
- #include <libdwfl.h>
-diff --git a/src/ar.c b/src/ar.c
-index ec32cee5..4efd729c 100644
---- a/src/ar.c
-+++ b/src/ar.c
-@@ -22,7 +22,7 @@
-
- #include <argp.h>
- #include <assert.h>
--#include <error.h>
-+#include <err.h>
- #include <fcntl.h>
- #include <gelf.h>
- #include <libintl.h>
-diff --git a/src/arlib.c b/src/arlib.c
-index e0839aab..1143658f 100644
---- a/src/arlib.c
-+++ b/src/arlib.c
-@@ -21,7 +21,7 @@
- #endif
-
- #include <assert.h>
--#include <error.h>
-+#include <err.h>
- #include <gelf.h>
- #include <inttypes.h>
- #include <libintl.h>
-diff --git a/src/arlib2.c b/src/arlib2.c
-index 553fc57b..46443d0e 100644
---- a/src/arlib2.c
-+++ b/src/arlib2.c
-@@ -20,7 +20,7 @@
- # include <config.h>
- #endif
-
--#include <error.h>
-+#include <err.h>
- #include <libintl.h>
- #include <limits.h>
- #include <string.h>
-diff --git a/src/elfcmp.c b/src/elfcmp.c
-index 50464207..cff183fa 100644
---- a/src/elfcmp.c
-+++ b/src/elfcmp.c
-@@ -23,7 +23,7 @@
- #include <argp.h>
- #include <assert.h>
- #include <errno.h>
--#include <error.h>
-+#include <err.h>
- #include <fcntl.h>
- #include <locale.h>
- #include <libintl.h>
-diff --git a/src/elflint.c b/src/elflint.c
-index df1b3a03..67d8d134 100644
---- a/src/elflint.c
-+++ b/src/elflint.c
-@@ -24,7 +24,7 @@
- #include <assert.h>
- #include <byteswap.h>
- #include <endian.h>
--#include <error.h>
-+#include <err.h>
- #include <fcntl.h>
- #include <gelf.h>
- #include <inttypes.h>
-diff --git a/src/findtextrel.c b/src/findtextrel.c
-index 8f1e239a..71463af3 100644
---- a/src/findtextrel.c
-+++ b/src/findtextrel.c
-@@ -23,7 +23,7 @@
- #include <argp.h>
- #include <assert.h>
- #include <errno.h>
--#include <error.h>
-+#include <err.h>
- #include <fcntl.h>
- #include <gelf.h>
- #include <libdw.h>
-diff --git a/src/nm.c b/src/nm.c
-index 969c6d35..3113c04c 100644
---- a/src/nm.c
-+++ b/src/nm.c
-@@ -26,7 +26,7 @@
- #include <ctype.h>
- #include <dwarf.h>
- #include <errno.h>
--#include <error.h>
-+#include <err.h>
- #include <fcntl.h>
- #include <gelf.h>
- #include <inttypes.h>
-diff --git a/src/objdump.c b/src/objdump.c
-index 0dd9a6aa..9c8bf149 100644
---- a/src/objdump.c
-+++ b/src/objdump.c
-@@ -21,7 +21,7 @@
- #endif
-
- #include <argp.h>
--#include <error.h>
-+#include <err.h>
- #include <fcntl.h>
- #include <inttypes.h>
- #include <libintl.h>
-diff --git a/src/ranlib.c b/src/ranlib.c
-index cc0ee233..ae851e40 100644
---- a/src/ranlib.c
-+++ b/src/ranlib.c
-@@ -24,7 +24,7 @@
- #include <argp.h>
- #include <assert.h>
- #include <errno.h>
--#include <error.h>
-+#include <err.h>
- #include <fcntl.h>
- #include <gelf.h>
- #include <libintl.h>
-diff --git a/src/readelf.c b/src/readelf.c
-index 6a27e7e0..4759a965 100644
---- a/src/readelf.c
-+++ b/src/readelf.c
-@@ -25,7 +25,7 @@
- #include <ctype.h>
- #include <dwarf.h>
- #include <errno.h>
--#include <error.h>
-+#include <err.h>
- #include <fcntl.h>
- #include <gelf.h>
- #include <inttypes.h>
-diff --git a/src/size.c b/src/size.c
-index ad8dbcbb..fd83be06 100644
---- a/src/size.c
-+++ b/src/size.c
-@@ -21,7 +21,7 @@
- #endif
-
- #include <argp.h>
--#include <error.h>
-+#include <err.h>
- #include <fcntl.h>
- #include <gelf.h>
- #include <inttypes.h>
-diff --git a/src/stack.c b/src/stack.c
-index 6f2ff69f..6da0243d 100644
---- a/src/stack.c
-+++ b/src/stack.c
-@@ -18,7 +18,7 @@
- #include <config.h>
- #include <assert.h>
- #include <argp.h>
--#include <error.h>
-+#include <err.h>
- #include <stdlib.h>
- #include <inttypes.h>
- #include <stdio.h>
-diff --git a/src/strings.c b/src/strings.c
-index 03d0f133..5c311cbd 100644
---- a/src/strings.c
-+++ b/src/strings.c
-@@ -25,7 +25,7 @@
- #include <ctype.h>
- #include <endian.h>
- #include <errno.h>
--#include <error.h>
-+#include <err.h>
- #include <fcntl.h>
- #include <gelf.h>
- #include <inttypes.h>
-diff --git a/src/strip.c b/src/strip.c
-index c7830ec6..0d7f148d 100644
---- a/src/strip.c
-+++ b/src/strip.c
-@@ -24,7 +24,7 @@
- #include <assert.h>
- #include <byteswap.h>
- #include <endian.h>
--#include <error.h>
-+#include <err.h>
- #include <fcntl.h>
- #include <fnmatch.h>
- #include <gelf.h>
-diff --git a/src/unstrip.c b/src/unstrip.c
-index 50749093..3d4f9525 100644
---- a/src/unstrip.c
-+++ b/src/unstrip.c
-@@ -31,7 +31,7 @@
- #include <argp.h>
- #include <assert.h>
- #include <errno.h>
--#include <error.h>
-+#include <err.h>
- #include <fcntl.h>
- #include <fnmatch.h>
- #include <libintl.h>
-diff --git a/tests/addrscopes.c b/tests/addrscopes.c
-index 791569f5..54f4311b 100644
---- a/tests/addrscopes.c
-+++ b/tests/addrscopes.c
-@@ -25,7 +25,7 @@
- #include <stdio_ext.h>
- #include <locale.h>
- #include <stdlib.h>
--#include <error.h>
-+#include <err.h>
- #include <string.h>
-
-
-diff --git a/tests/allregs.c b/tests/allregs.c
-index 286f7e3c..c9de0897 100644
---- a/tests/allregs.c
-+++ b/tests/allregs.c
-@@ -21,7 +21,7 @@
- #include <stdio.h>
- #include <stdlib.h>
- #include <string.h>
--#include <error.h>
-+#include <err.h>
- #include <locale.h>
- #include <argp.h>
- #include <assert.h>
-diff --git a/tests/backtrace-data.c b/tests/backtrace-data.c
-index a387d8ff..955c27d1 100644
---- a/tests/backtrace-data.c
-+++ b/tests/backtrace-data.c
-@@ -27,7 +27,7 @@
- #include <dirent.h>
- #include <stdlib.h>
- #include <errno.h>
--#include <error.h>
-+#include <err.h>
- #include <unistd.h>
- #include <dwarf.h>
- #if defined(__x86_64__) && defined(__linux__)
-diff --git a/tests/backtrace-dwarf.c b/tests/backtrace-dwarf.c
-index 2dc8a9a2..24ca7fb0 100644
---- a/tests/backtrace-dwarf.c
-+++ b/tests/backtrace-dwarf.c
-@@ -22,7 +22,7 @@
- #include <stdio_ext.h>
- #include <locale.h>
- #include <errno.h>
--#include <error.h>
-+#include <err.h>
- #include <unistd.h>
- #include <sys/types.h>
- #include <sys/wait.h>
-diff --git a/tests/backtrace.c b/tests/backtrace.c
-index f5dd761f..a93a8f03 100644
---- a/tests/backtrace.c
-+++ b/tests/backtrace.c
-@@ -24,7 +24,7 @@
- #include <dirent.h>
- #include <stdlib.h>
- #include <errno.h>
--#include <error.h>
-+#include <err.h>
- #include <unistd.h>
- #include <dwarf.h>
- #ifdef __linux__
-diff --git a/tests/buildid.c b/tests/buildid.c
-index 87c18773..2953e6bb 100644
---- a/tests/buildid.c
-+++ b/tests/buildid.c
-@@ -23,7 +23,7 @@
- #include ELFUTILS_HEADER(elf)
- #include ELFUTILS_HEADER(dwelf)
- #include <stdio.h>
--#include <error.h>
-+#include <err.h>
- #include <string.h>
- #include <stdlib.h>
- #include <sys/types.h>
-diff --git a/tests/debugaltlink.c b/tests/debugaltlink.c
-index 6d97d500..ee7e559e 100644
---- a/tests/debugaltlink.c
-+++ b/tests/debugaltlink.c
-@@ -23,7 +23,7 @@
- #include ELFUTILS_HEADER(dw)
- #include ELFUTILS_HEADER(dwelf)
- #include <stdio.h>
--#include <error.h>
-+#include <err.h>
- #include <string.h>
- #include <stdlib.h>
- #include <sys/types.h>
-diff --git a/tests/debuglink.c b/tests/debuglink.c
-index 935d1029..741cb814 100644
---- a/tests/debuglink.c
-+++ b/tests/debuglink.c
-@@ -21,7 +21,7 @@
- #include <errno.h>
- #include ELFUTILS_HEADER(dwelf)
- #include <stdio.h>
--#include <error.h>
-+#include <err.h>
- #include <string.h>
- #include <stdlib.h>
- #include <sys/types.h>
-diff --git a/tests/deleted.c b/tests/deleted.c
-index 6be35bc2..01907113 100644
---- a/tests/deleted.c
-+++ b/tests/deleted.c
-@@ -21,7 +21,7 @@
- #include <unistd.h>
- #include <assert.h>
- #include <stdio.h>
--#include <error.h>
-+#include <err.h>
- #include <errno.h>
- #ifdef __linux__
- #include <sys/prctl.h>
-diff --git a/tests/dwfl-addr-sect.c b/tests/dwfl-addr-sect.c
-index 21e470a3..1ea1e3b2 100644
---- a/tests/dwfl-addr-sect.c
-+++ b/tests/dwfl-addr-sect.c
-@@ -23,7 +23,7 @@
- #include <stdio_ext.h>
- #include <stdlib.h>
- #include <string.h>
--#include <error.h>
-+#include <err.h>
- #include <locale.h>
- #include <argp.h>
- #include ELFUTILS_HEADER(dwfl)
-diff --git a/tests/dwfl-bug-addr-overflow.c b/tests/dwfl-bug-addr-overflow.c
-index aa8030e1..02c8bef9 100644
---- a/tests/dwfl-bug-addr-overflow.c
-+++ b/tests/dwfl-bug-addr-overflow.c
-@@ -20,7 +20,7 @@
- #include <inttypes.h>
- #include <stdio.h>
- #include <stdio_ext.h>
--#include <error.h>
-+#include <err.h>
- #include <locale.h>
- #include ELFUTILS_HEADER(dwfl)
-
-diff --git a/tests/dwfl-bug-fd-leak.c b/tests/dwfl-bug-fd-leak.c
-index 689cdd79..5973da39 100644
---- a/tests/dwfl-bug-fd-leak.c
-+++ b/tests/dwfl-bug-fd-leak.c
-@@ -24,7 +24,7 @@
- #include <dirent.h>
- #include <stdlib.h>
- #include <errno.h>
--#include <error.h>
-+#include <err.h>
- #include <unistd.h>
- #include <dwarf.h>
-
-diff --git a/tests/dwfl-bug-getmodules.c b/tests/dwfl-bug-getmodules.c
-index 1ee989f8..fd62e653 100644
---- a/tests/dwfl-bug-getmodules.c
-+++ b/tests/dwfl-bug-getmodules.c
-@@ -18,7 +18,7 @@
- #include <config.h>
- #include ELFUTILS_HEADER(dwfl)
-
--#include <error.h>
-+#include <err.h>
-
- static const Dwfl_Callbacks callbacks =
- {
-diff --git a/tests/dwfl-report-elf-align.c b/tests/dwfl-report-elf-align.c
-index a4e97d3c..f471587c 100644
---- a/tests/dwfl-report-elf-align.c
-+++ b/tests/dwfl-report-elf-align.c
-@@ -20,7 +20,7 @@
- #include <inttypes.h>
- #include <stdio.h>
- #include <stdio_ext.h>
--#include <error.h>
-+#include <err.h>
- #include <locale.h>
- #include <string.h>
- #include <stdlib.h>
-diff --git a/tests/dwfllines.c b/tests/dwfllines.c
-index 90379dd2..cbdf6c4c 100644
---- a/tests/dwfllines.c
-+++ b/tests/dwfllines.c
-@@ -27,7 +27,7 @@
- #include <stdio.h>
- #include <stdlib.h>
- #include <string.h>
--#include <error.h>
-+#include <err.h>
-
- int
- main (int argc, char *argv[])
-diff --git a/tests/dwflmodtest.c b/tests/dwflmodtest.c
-index 0027f96b..e68d3bca 100644
---- a/tests/dwflmodtest.c
-+++ b/tests/dwflmodtest.c
-@@ -23,7 +23,7 @@
- #include <stdio_ext.h>
- #include <stdlib.h>
- #include <string.h>
--#include <error.h>
-+#include <err.h>
- #include <locale.h>
- #include <argp.h>
- #include ELFUTILS_HEADER(dwfl)
-diff --git a/tests/dwflsyms.c b/tests/dwflsyms.c
-index 49ac3346..cf078301 100644
---- a/tests/dwflsyms.c
-+++ b/tests/dwflsyms.c
-@@ -25,7 +25,7 @@
- #include <stdio.h>
- #include <stdio_ext.h>
- #include <stdlib.h>
--#include <error.h>
-+#include <err.h>
- #include <string.h>
-
- static const char *
-diff --git a/tests/early-offscn.c b/tests/early-offscn.c
-index 924cb9ef..6f60d5a3 100644
---- a/tests/early-offscn.c
-+++ b/tests/early-offscn.c
-@@ -19,7 +19,7 @@
- #endif
-
- #include <errno.h>
--#include <error.h>
-+#include <err.h>
- #include <fcntl.h>
- #include <gelf.h>
- #include <stdio.h>
-diff --git a/tests/ecp.c b/tests/ecp.c
-index 38a6859e..743cea5d 100644
---- a/tests/ecp.c
-+++ b/tests/ecp.c
-@@ -20,7 +20,7 @@
- #endif
-
- #include <errno.h>
--#include <error.h>
-+#include <err.h>
- #include <fcntl.h>
- #include <gelf.h>
- #include <stdlib.h>
-diff --git a/tests/find-prologues.c b/tests/find-prologues.c
-index ba8ae371..76f5f047 100644
---- a/tests/find-prologues.c
-+++ b/tests/find-prologues.c
-@@ -25,7 +25,7 @@
- #include <stdio_ext.h>
- #include <locale.h>
- #include <stdlib.h>
--#include <error.h>
-+#include <err.h>
- #include <string.h>
- #include <fnmatch.h>
-
-diff --git a/tests/funcretval.c b/tests/funcretval.c
-index 8d19d117..c8aaa93d 100644
---- a/tests/funcretval.c
-+++ b/tests/funcretval.c
-@@ -25,7 +25,7 @@
- #include <stdio_ext.h>
- #include <locale.h>
- #include <stdlib.h>
--#include <error.h>
-+#include <err.h>
- #include <string.h>
- #include <fnmatch.h>
-
-diff --git a/tests/funcscopes.c b/tests/funcscopes.c
-index 9c901858..dbccb89e 100644
---- a/tests/funcscopes.c
-+++ b/tests/funcscopes.c
-@@ -25,7 +25,7 @@
- #include <stdio_ext.h>
- #include <locale.h>
- #include <stdlib.h>
--#include <error.h>
-+#include <err.h>
- #include <string.h>
- #include <fnmatch.h>
-
-diff --git a/tests/getsrc_die.c b/tests/getsrc_die.c
-index 055aede0..9c394dd0 100644
---- a/tests/getsrc_die.c
-+++ b/tests/getsrc_die.c
-@@ -19,7 +19,7 @@
- #endif
-
- #include <errno.h>
--#include <error.h>
-+#include <err.h>
- #include <fcntl.h>
- #include <inttypes.h>
- #include <libelf.h>
-diff --git a/tests/line2addr.c b/tests/line2addr.c
-index e0d65d3d..9bf0023b 100644
---- a/tests/line2addr.c
-+++ b/tests/line2addr.c
-@@ -26,7 +26,7 @@
- #include <locale.h>
- #include <stdlib.h>
- #include <string.h>
--#include <error.h>
-+#include <err.h>
-
-
- static void
-diff --git a/tests/low_high_pc.c b/tests/low_high_pc.c
-index d0f43023..8da4fbdf 100644
---- a/tests/low_high_pc.c
-+++ b/tests/low_high_pc.c
-@@ -25,7 +25,7 @@
- #include <stdio_ext.h>
- #include <locale.h>
- #include <stdlib.h>
--#include <error.h>
-+#include <err.h>
- #include <string.h>
- #include <fnmatch.h>
-
-diff --git a/tests/md5-sha1-test.c b/tests/md5-sha1-test.c
-index d50355e9..3c41f40b 100644
---- a/tests/md5-sha1-test.c
-+++ b/tests/md5-sha1-test.c
-@@ -19,7 +19,7 @@
- #endif
-
- #include <string.h>
--#include <error.h>
-+#include <err.h>
-
- #include "md5.h"
- #include "sha1.h"
-diff --git a/tests/rdwrmmap.c b/tests/rdwrmmap.c
-index 6f027dfe..1ce5e6ed 100644
---- a/tests/rdwrmmap.c
-+++ b/tests/rdwrmmap.c
-@@ -19,7 +19,7 @@
- #endif
-
- #include <errno.h>
--#include <error.h>
-+#include <err.h>
- #include <stdio.h>
- #include <fcntl.h>
- #include <unistd.h>
-diff --git a/tests/saridx.c b/tests/saridx.c
-index 8a450d82..b3878013 100644
---- a/tests/saridx.c
-+++ b/tests/saridx.c
-@@ -17,7 +17,7 @@
-
- #include <config.h>
-
--#include <error.h>
-+#include <err.h>
- #include <fcntl.h>
- #include <gelf.h>
- #include <stdio.h>
-diff --git a/tests/sectiondump.c b/tests/sectiondump.c
-index 3033fedc..8e888db3 100644
---- a/tests/sectiondump.c
-+++ b/tests/sectiondump.c
-@@ -18,7 +18,7 @@
- #include <config.h>
-
- #include <errno.h>
--#include <error.h>
-+#include <err.h>
- #include <fcntl.h>
- #include <gelf.h>
- #include <inttypes.h>
-diff --git a/tests/varlocs.c b/tests/varlocs.c
-index c3fba89e..e043ea2c 100644
---- a/tests/varlocs.c
-+++ b/tests/varlocs.c
-@@ -25,7 +25,7 @@
- #include <dwarf.h>
- #include <stdio.h>
- #include <stdlib.h>
--#include <error.h>
-+#include <err.h>
- #include <string.h>
- #include <sys/types.h>
- #include <sys/stat.h>
-diff --git a/tests/vdsosyms.c b/tests/vdsosyms.c
-index b876c10b..afb28232 100644
---- a/tests/vdsosyms.c
-+++ b/tests/vdsosyms.c
-@@ -18,7 +18,7 @@
- #include <config.h>
- #include <assert.h>
- #include <errno.h>
--#include <error.h>
-+#include <err.h>
- #include <inttypes.h>
- #include <stdio.h>
- #include <string.h>
+--
+2.7.4
+
diff --git a/poky/meta/recipes-devtools/elfutils/files/debian/0001-Ignore-differences-between-mips-machine-identifiers.patch b/poky/meta/recipes-devtools/elfutils/files/debian/0001-Ignore-differences-between-mips-machine-identifiers.patch
index e0291b4cf..8c48f4d1b 100644
--- a/poky/meta/recipes-devtools/elfutils/files/debian/0001-Ignore-differences-between-mips-machine-identifiers.patch
+++ b/poky/meta/recipes-devtools/elfutils/files/debian/0001-Ignore-differences-between-mips-machine-identifiers.patch
@@ -1,3 +1,6 @@
+Upstream-Status: Pending [from debian]
+Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
+
From 77cb4a53c270d5854d3af24f19547bc3de825233 Mon Sep 17 00:00:00 2001
From: James Cowgill <james410@cowgill.org.uk>
Date: Mon, 5 Jan 2015 15:16:58 +0000
@@ -8,10 +11,6 @@ from the elf machine id. Also, the EM_MIPS_RS3_LE machine is dead anyway (the
kernel will not load binaries containing it).
Signed-off-by: James Cowgill <james410@cowgill.org.uk>
-
-Upstream-Status: Backport [from debian]
-Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
-
---
backends/mips_init.c | 6 +-----
1 file changed, 1 insertion(+), 5 deletions(-)
diff --git a/poky/meta/recipes-devtools/elfutils/files/debian/arm_backend.diff b/poky/meta/recipes-devtools/elfutils/files/debian/0001-arm_backend.patch
index 50f4b059e..4ed81194b 100644
--- a/poky/meta/recipes-devtools/elfutils/files/debian/arm_backend.diff
+++ b/poky/meta/recipes-devtools/elfutils/files/debian/0001-arm_backend.patch
@@ -1,8 +1,28 @@
-Upstream-Status: Backport [from debian]
+From a95f370bc2690c150c46f215543de278469900eb Mon Sep 17 00:00:00 2001
+From: Hongxu Jia <hongxu.jia@windriver.com>
+Date: Fri, 29 Jun 2018 15:42:39 +0800
+Subject: [PATCH] arm_backend
+
+Upstream-Status: Pending [from debian]
+arm_backend.diff and rebase to 0.172
+
+http://ftp.de.debian.org/debian/pool/main/e/elfutils/elfutils_0.170-0.5.debian.tar.xz
+
Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
+---
+ backends/arm_init.c | 18 ++++-
+ backends/arm_regs.c | 132 ++++++++++++++++++++++++++++++++++++
+ backends/arm_retval.c | 43 +++++++++++-
+ backends/libebl_arm.h | 9 +++
+ libelf/elf.h | 11 +++
+ tests/run-addrcfi.sh | 93 ++++++++++++++++++++++++-
+ tests/run-allregs.sh | 95 +++++++++++++++++++++++++-
+ tests/run-readelf-mixed-corenote.sh | 11 ++-
+ 8 files changed, 400 insertions(+), 12 deletions(-)
+ create mode 100644 backends/libebl_arm.h
-Index: b/backends/arm_init.c
-===================================================================
+diff --git a/backends/arm_init.c b/backends/arm_init.c
+index f2b1b11..1b71f16 100644
--- a/backends/arm_init.c
+++ b/backends/arm_init.c
@@ -35,20 +35,31 @@
@@ -38,7 +58,7 @@ Index: b/backends/arm_init.c
/* We handle it. */
eh->name = "ARM";
arm_init_reloc (eh);
-@@ -60,7 +71,10 @@ arm_init (Elf *elf __attribute__ ((unuse
+@@ -60,7 +71,10 @@ arm_init (Elf *elf __attribute__ ((unused)),
HOOK (eh, core_note);
HOOK (eh, auxv_info);
HOOK (eh, check_object_attribute);
@@ -50,8 +70,8 @@ Index: b/backends/arm_init.c
HOOK (eh, abi_cfi);
HOOK (eh, check_reloc_target_type);
HOOK (eh, symbol_type_name);
-Index: b/backends/arm_regs.c
-===================================================================
+diff --git a/backends/arm_regs.c b/backends/arm_regs.c
+index a46a4c9..418c931 100644
--- a/backends/arm_regs.c
+++ b/backends/arm_regs.c
@@ -31,6 +31,7 @@
@@ -62,7 +82,7 @@ Index: b/backends/arm_regs.c
#include <dwarf.h>
#define BACKEND arm_
-@@ -76,6 +77,9 @@ arm_register_info (Ebl *ebl __attribute_
+@@ -76,6 +77,9 @@ arm_register_info (Ebl *ebl __attribute__ ((unused)),
break;
case 16 + 0 ... 16 + 7:
@@ -70,9 +90,9 @@ Index: b/backends/arm_regs.c
+ * but gcc maps FPA registers here
+ */
regno += 96 - 16;
- /* Fall through. */
+ FALLTHROUGH;
case 96 + 0 ... 96 + 7:
-@@ -87,11 +91,139 @@ arm_register_info (Ebl *ebl __attribute_
+@@ -87,11 +91,139 @@ arm_register_info (Ebl *ebl __attribute__ ((unused)),
namelen = 2;
break;
@@ -212,8 +232,8 @@ Index: b/backends/arm_regs.c
*setname = "VFP";
*type = DW_ATE_float;
*bits = 64;
-Index: b/backends/arm_retval.c
-===================================================================
+diff --git a/backends/arm_retval.c b/backends/arm_retval.c
+index 1c28f01..313e4eb 100644
--- a/backends/arm_retval.c
+++ b/backends/arm_retval.c
@@ -48,6 +48,13 @@ static const Dwarf_Op loc_intreg[] =
@@ -242,7 +262,7 @@ Index: b/backends/arm_retval.c
{
/* Start with the function's type, and get the DW_AT_type attribute,
which is the type of the return value. */
-@@ -98,6 +106,21 @@ arm_return_value_location (Dwarf_Die *fu
+@@ -98,6 +106,21 @@ arm_return_value_location (Dwarf_Die *functypedie, const Dwarf_Op **locp)
else
return -1;
}
@@ -264,7 +284,7 @@ Index: b/backends/arm_retval.c
if (size <= 16)
{
intreg:
-@@ -106,6 +129,7 @@ arm_return_value_location (Dwarf_Die *fu
+@@ -106,6 +129,7 @@ arm_return_value_location (Dwarf_Die *functypedie, const Dwarf_Op **locp)
}
aggregate:
@@ -272,7 +292,7 @@ Index: b/backends/arm_retval.c
*locp = loc_aggregate;
return nloc_aggregate;
}
-@@ -125,3 +149,18 @@ arm_return_value_location (Dwarf_Die *fu
+@@ -125,3 +149,18 @@ arm_return_value_location (Dwarf_Die *functypedie, const Dwarf_Op **locp)
DWARF and might be valid. */
return -2;
}
@@ -291,11 +311,26 @@ Index: b/backends/arm_retval.c
+ return arm_return_value_location_ (functypedie, locp, 0);
+}
+
-Index: b/libelf/elf.h
-===================================================================
+diff --git a/backends/libebl_arm.h b/backends/libebl_arm.h
+new file mode 100644
+index 0000000..c00770c
+--- /dev/null
++++ b/backends/libebl_arm.h
+@@ -0,0 +1,9 @@
++#ifndef _LIBEBL_ARM_H
++#define _LIBEBL_ARM_H 1
++
++#include <libdw.h>
++
++extern int arm_return_value_location_soft(Dwarf_Die *, const Dwarf_Op **locp);
++extern int arm_return_value_location_hard(Dwarf_Die *, const Dwarf_Op **locp);
++
++#endif
+diff --git a/libelf/elf.h b/libelf/elf.h
+index 6c9f61e..6d82fef 100644
--- a/libelf/elf.h
+++ b/libelf/elf.h
-@@ -2593,6 +2593,9 @@ enum
+@@ -2692,6 +2692,9 @@ enum
#define EF_ARM_EABI_VER4 0x04000000
#define EF_ARM_EABI_VER5 0x05000000
@@ -305,7 +340,7 @@ Index: b/libelf/elf.h
/* Additional symbol types for Thumb. */
#define STT_ARM_TFUNC STT_LOPROC /* A Thumb function. */
#define STT_ARM_16BIT STT_HIPROC /* A Thumb label. */
-@@ -2610,12 +2613,19 @@ enum
+@@ -2709,12 +2712,19 @@ enum
/* Processor specific values for the Phdr p_type field. */
#define PT_ARM_EXIDX (PT_LOPROC + 1) /* ARM unwind segment. */
@@ -325,7 +360,7 @@ Index: b/libelf/elf.h
/* AArch64 relocs. */
-@@ -2908,6 +2918,7 @@ enum
+@@ -3007,6 +3017,7 @@ enum
TLS block (LDR, STR). */
#define R_ARM_TLS_IE12GP 111 /* 12 bit GOT entry relative
to GOT origin (LDR). */
@@ -333,22 +368,119 @@ Index: b/libelf/elf.h
#define R_ARM_ME_TOO 128 /* Obsolete. */
#define R_ARM_THM_TLS_DESCSEQ 129
#define R_ARM_THM_TLS_DESCSEQ16 129
-Index: b/backends/libebl_arm.h
-===================================================================
---- /dev/null
-+++ b/backends/libebl_arm.h
-@@ -0,0 +1,9 @@
-+#ifndef _LIBEBL_ARM_H
-+#define _LIBEBL_ARM_H 1
-+
-+#include <libdw.h>
-+
-+extern int arm_return_value_location_soft(Dwarf_Die *, const Dwarf_Op **locp);
-+extern int arm_return_value_location_hard(Dwarf_Die *, const Dwarf_Op **locp);
-+
-+#endif
-Index: b/tests/run-allregs.sh
-===================================================================
+diff --git a/tests/run-addrcfi.sh b/tests/run-addrcfi.sh
+index fd89d02..462d7c5 100755
+--- a/tests/run-addrcfi.sh
++++ b/tests/run-addrcfi.sh
+@@ -3554,6 +3554,38 @@ dwarf_cfi_addrframe (.eh_frame): no matching address range
+ FPA reg21 (f5): undefined
+ FPA reg22 (f6): undefined
+ FPA reg23 (f7): undefined
++ VFP reg64 (s0): undefined
++ VFP reg65 (s1): undefined
++ VFP reg66 (s2): undefined
++ VFP reg67 (s3): undefined
++ VFP reg68 (s4): undefined
++ VFP reg69 (s5): undefined
++ VFP reg70 (s6): undefined
++ VFP reg71 (s7): undefined
++ VFP reg72 (s8): undefined
++ VFP reg73 (s9): undefined
++ VFP reg74 (s10): undefined
++ VFP reg75 (s11): undefined
++ VFP reg76 (s12): undefined
++ VFP reg77 (s13): undefined
++ VFP reg78 (s14): undefined
++ VFP reg79 (s15): undefined
++ VFP reg80 (s16): undefined
++ VFP reg81 (s17): undefined
++ VFP reg82 (s18): undefined
++ VFP reg83 (s19): undefined
++ VFP reg84 (s20): undefined
++ VFP reg85 (s21): undefined
++ VFP reg86 (s22): undefined
++ VFP reg87 (s23): undefined
++ VFP reg88 (s24): undefined
++ VFP reg89 (s25): undefined
++ VFP reg90 (s26): undefined
++ VFP reg91 (s27): undefined
++ VFP reg92 (s28): undefined
++ VFP reg93 (s29): undefined
++ VFP reg94 (s30): undefined
++ VFP reg95 (s31): undefined
+ FPA reg96 (f0): undefined
+ FPA reg97 (f1): undefined
+ FPA reg98 (f2): undefined
+@@ -3562,7 +3594,66 @@ dwarf_cfi_addrframe (.eh_frame): no matching address range
+ FPA reg101 (f5): undefined
+ FPA reg102 (f6): undefined
+ FPA reg103 (f7): undefined
+- integer reg128 (spsr): undefined
++ MMX reg104 (wcgr0): undefined
++ MMX reg105 (wcgr1): undefined
++ MMX reg106 (wcgr2): undefined
++ MMX reg107 (wcgr3): undefined
++ MMX reg108 (wcgr4): undefined
++ MMX reg109 (wcgr5): undefined
++ MMX reg110 (wcgr6): undefined
++ MMX reg111 (wcgr7): undefined
++ MMX reg112 (wr0): undefined
++ MMX reg113 (wr1): undefined
++ MMX reg114 (wr2): undefined
++ MMX reg115 (wr3): undefined
++ MMX reg116 (wr4): undefined
++ MMX reg117 (wr5): undefined
++ MMX reg118 (wr6): undefined
++ MMX reg119 (wr7): undefined
++ MMX reg120 (wr8): undefined
++ MMX reg121 (wr9): undefined
++ MMX reg122 (wr10): undefined
++ MMX reg123 (wr11): undefined
++ MMX reg124 (wr12): undefined
++ MMX reg125 (wr13): undefined
++ MMX reg126 (wr14): undefined
++ MMX reg127 (wr15): undefined
++ state reg128 (spsr): undefined
++ state reg129 (spsr_fiq): undefined
++ state reg130 (spsr_irq): undefined
++ state reg131 (spsr_abt): undefined
++ state reg132 (spsr_und): undefined
++ state reg133 (spsr_svc): undefined
++ integer reg144 (r8_usr): undefined
++ integer reg145 (r9_usr): undefined
++ integer reg146 (r10_usr): undefined
++ integer reg147 (r11_usr): undefined
++ integer reg148 (r12_usr): undefined
++ integer reg149 (r13_usr): undefined
++ integer reg150 (r14_usr): undefined
++ integer reg151 (r8_fiq): undefined
++ integer reg152 (r9_fiq): undefined
++ integer reg153 (r10_fiq): undefined
++ integer reg154 (r11_fiq): undefined
++ integer reg155 (r12_fiq): undefined
++ integer reg156 (r13_fiq): undefined
++ integer reg157 (r14_fiq): undefined
++ integer reg158 (r13_irq): undefined
++ integer reg159 (r14_irq): undefined
++ integer reg160 (r13_abt): undefined
++ integer reg161 (r14_abt): undefined
++ integer reg162 (r13_und): undefined
++ integer reg163 (r14_und): undefined
++ integer reg164 (r13_svc): undefined
++ integer reg165 (r14_svc): undefined
++ MMX reg192 (wc0): undefined
++ MMX reg193 (wc1): undefined
++ MMX reg194 (wc2): undefined
++ MMX reg195 (wc3): undefined
++ MMX reg196 (wc4): undefined
++ MMX reg197 (wc5): undefined
++ MMX reg198 (wc6): undefined
++ MMX reg199 (wc7): undefined
+ VFP reg256 (d0): undefined
+ VFP reg257 (d1): undefined
+ VFP reg258 (d2): undefined
+diff --git a/tests/run-allregs.sh b/tests/run-allregs.sh
+index 7ddd452..a31dba4 100755
--- a/tests/run-allregs.sh
+++ b/tests/run-allregs.sh
@@ -2672,7 +2672,28 @@ integer registers:
@@ -468,11 +600,11 @@ Index: b/tests/run-allregs.sh
EOF
# See run-readelf-mixed-corenote.sh for instructions to regenerate
-Index: b/tests/run-readelf-mixed-corenote.sh
-===================================================================
+diff --git a/tests/run-readelf-mixed-corenote.sh b/tests/run-readelf-mixed-corenote.sh
+index 86171c4..018612f 100755
--- a/tests/run-readelf-mixed-corenote.sh
+++ b/tests/run-readelf-mixed-corenote.sh
-@@ -31,12 +31,11 @@ Note segment of 892 bytes at offset 0x27
+@@ -31,12 +31,11 @@ Note segment of 892 bytes at offset 0x274:
pid: 11087, ppid: 11063, pgrp: 11087, sid: 11063
utime: 0.000000, stime: 0.010000, cutime: 0.000000, cstime: 0.000000
orig_r0: -1, fpvalid: 1
@@ -490,114 +622,6 @@ Index: b/tests/run-readelf-mixed-corenote.sh
CORE 124 PRPSINFO
state: 0, sname: R, zomb: 0, nice: 0, flag: 0x00400500
uid: 0, gid: 0, pid: 11087, ppid: 11063, pgrp: 11087, sid: 11063
-Index: b/tests/run-addrcfi.sh
-===================================================================
---- a/tests/run-addrcfi.sh
-+++ b/tests/run-addrcfi.sh
-@@ -3554,6 +3554,38 @@ dwarf_cfi_addrframe (.eh_frame): no matc
- FPA reg21 (f5): undefined
- FPA reg22 (f6): undefined
- FPA reg23 (f7): undefined
-+ VFP reg64 (s0): undefined
-+ VFP reg65 (s1): undefined
-+ VFP reg66 (s2): undefined
-+ VFP reg67 (s3): undefined
-+ VFP reg68 (s4): undefined
-+ VFP reg69 (s5): undefined
-+ VFP reg70 (s6): undefined
-+ VFP reg71 (s7): undefined
-+ VFP reg72 (s8): undefined
-+ VFP reg73 (s9): undefined
-+ VFP reg74 (s10): undefined
-+ VFP reg75 (s11): undefined
-+ VFP reg76 (s12): undefined
-+ VFP reg77 (s13): undefined
-+ VFP reg78 (s14): undefined
-+ VFP reg79 (s15): undefined
-+ VFP reg80 (s16): undefined
-+ VFP reg81 (s17): undefined
-+ VFP reg82 (s18): undefined
-+ VFP reg83 (s19): undefined
-+ VFP reg84 (s20): undefined
-+ VFP reg85 (s21): undefined
-+ VFP reg86 (s22): undefined
-+ VFP reg87 (s23): undefined
-+ VFP reg88 (s24): undefined
-+ VFP reg89 (s25): undefined
-+ VFP reg90 (s26): undefined
-+ VFP reg91 (s27): undefined
-+ VFP reg92 (s28): undefined
-+ VFP reg93 (s29): undefined
-+ VFP reg94 (s30): undefined
-+ VFP reg95 (s31): undefined
- FPA reg96 (f0): undefined
- FPA reg97 (f1): undefined
- FPA reg98 (f2): undefined
-@@ -3562,7 +3594,66 @@ dwarf_cfi_addrframe (.eh_frame): no matc
- FPA reg101 (f5): undefined
- FPA reg102 (f6): undefined
- FPA reg103 (f7): undefined
-- integer reg128 (spsr): undefined
-+ MMX reg104 (wcgr0): undefined
-+ MMX reg105 (wcgr1): undefined
-+ MMX reg106 (wcgr2): undefined
-+ MMX reg107 (wcgr3): undefined
-+ MMX reg108 (wcgr4): undefined
-+ MMX reg109 (wcgr5): undefined
-+ MMX reg110 (wcgr6): undefined
-+ MMX reg111 (wcgr7): undefined
-+ MMX reg112 (wr0): undefined
-+ MMX reg113 (wr1): undefined
-+ MMX reg114 (wr2): undefined
-+ MMX reg115 (wr3): undefined
-+ MMX reg116 (wr4): undefined
-+ MMX reg117 (wr5): undefined
-+ MMX reg118 (wr6): undefined
-+ MMX reg119 (wr7): undefined
-+ MMX reg120 (wr8): undefined
-+ MMX reg121 (wr9): undefined
-+ MMX reg122 (wr10): undefined
-+ MMX reg123 (wr11): undefined
-+ MMX reg124 (wr12): undefined
-+ MMX reg125 (wr13): undefined
-+ MMX reg126 (wr14): undefined
-+ MMX reg127 (wr15): undefined
-+ state reg128 (spsr): undefined
-+ state reg129 (spsr_fiq): undefined
-+ state reg130 (spsr_irq): undefined
-+ state reg131 (spsr_abt): undefined
-+ state reg132 (spsr_und): undefined
-+ state reg133 (spsr_svc): undefined
-+ integer reg144 (r8_usr): undefined
-+ integer reg145 (r9_usr): undefined
-+ integer reg146 (r10_usr): undefined
-+ integer reg147 (r11_usr): undefined
-+ integer reg148 (r12_usr): undefined
-+ integer reg149 (r13_usr): undefined
-+ integer reg150 (r14_usr): undefined
-+ integer reg151 (r8_fiq): undefined
-+ integer reg152 (r9_fiq): undefined
-+ integer reg153 (r10_fiq): undefined
-+ integer reg154 (r11_fiq): undefined
-+ integer reg155 (r12_fiq): undefined
-+ integer reg156 (r13_fiq): undefined
-+ integer reg157 (r14_fiq): undefined
-+ integer reg158 (r13_irq): undefined
-+ integer reg159 (r14_irq): undefined
-+ integer reg160 (r13_abt): undefined
-+ integer reg161 (r14_abt): undefined
-+ integer reg162 (r13_und): undefined
-+ integer reg163 (r14_und): undefined
-+ integer reg164 (r13_svc): undefined
-+ integer reg165 (r14_svc): undefined
-+ MMX reg192 (wc0): undefined
-+ MMX reg193 (wc1): undefined
-+ MMX reg194 (wc2): undefined
-+ MMX reg195 (wc3): undefined
-+ MMX reg196 (wc4): undefined
-+ MMX reg197 (wc5): undefined
-+ MMX reg198 (wc6): undefined
-+ MMX reg199 (wc7): undefined
- VFP reg256 (d0): undefined
- VFP reg257 (d1): undefined
- VFP reg258 (d2): undefined
+--
+2.7.4
+
diff --git a/poky/meta/recipes-devtools/elfutils/files/debian/0001-disable_werror.patch b/poky/meta/recipes-devtools/elfutils/files/debian/0001-disable_werror.patch
new file mode 100644
index 000000000..0f32b8742
--- /dev/null
+++ b/poky/meta/recipes-devtools/elfutils/files/debian/0001-disable_werror.patch
@@ -0,0 +1,35 @@
+From 5d45565e71ddab3d7848077b61eb0ca73c0bcbcc Mon Sep 17 00:00:00 2001
+From: Hongxu Jia <hongxu.jia@windriver.com>
+Date: Fri, 29 Jun 2018 16:01:14 +0800
+Subject: [PATCH] disable -Werror as it tends to break with new gcc versions
+
+Bug-Debian: https://bugs.debian.org/886004
+Last-Update: 2018-01-01
+
+Signed-off-by: Helmut Grohne <helmut@subdivi.de>
+
+Upstream-Status: Pending [from debian]
+mdisable_werror.patc and rebase to 0.172
+
+http://ftp.de.debian.org/debian/pool/main/e/elfutils/elfutils_0.170-0.5.debian.tar.xz
+
+Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
+---
+ config/eu.am | 1 -
+ 1 file changed, 1 deletion(-)
+
+diff --git a/config/eu.am b/config/eu.am
+index c2cc349..99b368e 100644
+--- a/config/eu.am
++++ b/config/eu.am
+@@ -73,7 +73,6 @@ AM_CFLAGS = -std=gnu99 -Wall -Wshadow -Wformat=2 \
+ -Wold-style-definition -Wstrict-prototypes \
+ $(LOGICAL_OP_WARNING) $(DUPLICATED_COND_WARNING) \
+ $(NULL_DEREFERENCE_WARNING) $(IMPLICIT_FALLTHROUGH_WARNING) \
+- $(if $($(*F)_no_Werror),,-Werror) \
+ $(if $($(*F)_no_Wunused),,-Wunused -Wextra) \
+ $(if $($(*F)_no_Wstack_usage),,$(STACK_USAGE_WARNING)) \
+ $(if $($(*F)_no_Wpacked_not_aligned),-Wno-packed-not-aligned,) \
+--
+2.7.4
+
diff --git a/poky/meta/recipes-devtools/elfutils/files/debian/0001-fix-gcc7-ftbfs.patch b/poky/meta/recipes-devtools/elfutils/files/debian/0001-fix-gcc7-ftbfs.patch
new file mode 100644
index 000000000..26869a3a7
--- /dev/null
+++ b/poky/meta/recipes-devtools/elfutils/files/debian/0001-fix-gcc7-ftbfs.patch
@@ -0,0 +1,57 @@
+From 91c0a0da2a8932f163d57db5d9d847bed6822502 Mon Sep 17 00:00:00 2001
+From: Hongxu Jia <hongxu.jia@windriver.com>
+Date: Fri, 29 Jun 2018 15:59:57 +0800
+Subject: [PATCH] fix gcc7 ftbfs
+
+Upstream-Status: Pending [from debian]
+fix-gcc7-ftbfs.diff and rebase to 0.172
+
+http://ftp.de.debian.org/debian/pool/main/e/elfutils/elfutils_0.170-0.5.debian.tar.xz
+
+Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
+---
+ backends/mips_retval.c | 1 +
+ backends/parisc_retval.c | 1 +
+ src/ar.c | 2 +-
+ 3 files changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/backends/mips_retval.c b/backends/mips_retval.c
+index 57487bb..e7973a8 100644
+--- a/backends/mips_retval.c
++++ b/backends/mips_retval.c
+@@ -390,6 +390,7 @@ mips_return_value_location (Dwarf_Die *functypedie, const Dwarf_Op **locp)
+ }
+
+ /* Fallthrough to handle large types */
++ /* Fall through. */
+
+ case DW_TAG_array_type:
+ large:
+diff --git a/backends/parisc_retval.c b/backends/parisc_retval.c
+index df7ec3a..988e1fe 100644
+--- a/backends/parisc_retval.c
++++ b/backends/parisc_retval.c
+@@ -167,6 +167,7 @@ parisc_return_value_location_ (Dwarf_Die *functypedie, const Dwarf_Op **locp, in
+
+ /* Else fall through. */
+ }
++ /* Fall through. */
+
+ case DW_TAG_structure_type:
+ case DW_TAG_class_type:
+diff --git a/src/ar.c b/src/ar.c
+index 818115b..c77e9f4 100644
+--- a/src/ar.c
++++ b/src/ar.c
+@@ -1073,7 +1073,7 @@ do_oper_delete (const char *arfname, char **argv, int argc,
+ static bool
+ no0print (bool ofmt, char *buf, int bufsize, long int val)
+ {
+- char tmpbuf[bufsize + 1];
++ char tmpbuf[bufsize + 1 + 4];
+ int ret = snprintf (tmpbuf, sizeof (tmpbuf), ofmt ? "%-*lo" : "%-*ld",
+ bufsize, val);
+ if (ret >= (int) sizeof (tmpbuf))
+--
+2.7.4
+
diff --git a/poky/meta/recipes-devtools/elfutils/files/debian/hppa_backend.diff b/poky/meta/recipes-devtools/elfutils/files/debian/0001-hppa_backend.patch
index 56f852a41..2c5d4fa4b 100644
--- a/poky/meta/recipes-devtools/elfutils/files/debian/hppa_backend.diff
+++ b/poky/meta/recipes-devtools/elfutils/files/debian/0001-hppa_backend.patch
@@ -1,10 +1,84 @@
-Upstream-Status: Backport [from debian]
+From c510c6c8523246dd79c6ea28d1646b153c23e491 Mon Sep 17 00:00:00 2001
+From: Hongxu Jia <hongxu.jia@windriver.com>
+Date: Fri, 29 Jun 2018 15:39:46 +0800
+Subject: [PATCH] hppa_backend
+
+Upstream-Status: Pending [from debian]
+hppa_backend.diff and rebase to 0.172
+
+http://ftp.de.debian.org/debian/pool/main/e/elfutils/elfutils_0.170-0.5.debian.tar.xz
Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
+---
+ backends/Makefile.am | 9 +-
+ backends/libebl_parisc.h | 9 ++
+ backends/parisc_init.c | 73 ++++++++++++++++
+ backends/parisc_regs.c | 159 ++++++++++++++++++++++++++++++++++
+ backends/parisc_reloc.def | 128 ++++++++++++++++++++++++++++
+ backends/parisc_retval.c | 213 ++++++++++++++++++++++++++++++++++++++++++++++
+ backends/parisc_symbol.c | 112 ++++++++++++++++++++++++
+ libelf/elf.h | 11 +++
+ 8 files changed, 711 insertions(+), 3 deletions(-)
+ create mode 100644 backends/libebl_parisc.h
+ create mode 100644 backends/parisc_init.c
+ create mode 100644 backends/parisc_regs.c
+ create mode 100644 backends/parisc_reloc.def
+ create mode 100644 backends/parisc_retval.c
+ create mode 100644 backends/parisc_symbol.c
-Index: elfutils-0.170/backends/parisc_init.c
-===================================================================
+diff --git a/backends/Makefile.am b/backends/Makefile.am
+index 80aa00e..1e4b8e9 100644
+--- a/backends/Makefile.am
++++ b/backends/Makefile.am
+@@ -33,16 +33,16 @@ AM_CPPFLAGS += -I$(top_srcdir)/libebl -I$(top_srcdir)/libasm \
+
+
+ modules = i386 sh x86_64 ia64 alpha arm aarch64 sparc ppc ppc64 s390 \
+- tilegx m68k bpf riscv
++ tilegx m68k bpf riscv parisc
+ libebl_pic = libebl_i386_pic.a libebl_sh_pic.a libebl_x86_64_pic.a \
+ libebl_ia64_pic.a libebl_alpha_pic.a libebl_arm_pic.a \
+ libebl_aarch64_pic.a libebl_sparc_pic.a libebl_ppc_pic.a \
+ libebl_ppc64_pic.a libebl_s390_pic.a libebl_tilegx_pic.a \
+- libebl_m68k_pic.a libebl_bpf_pic.a libebl_riscv_pic.a
++ libebl_m68k_pic.a libebl_bpf_pic.a libebl_riscv_pic.a \
++ libebl_parisc_pic.a
+ noinst_LIBRARIES = $(libebl_pic)
+ noinst_DATA = $(libebl_pic:_pic.a=.so)
+
+-
+ libelf = ../libelf/libelf.so
+ libdw = ../libdw/libdw.so
+ libeu = ../lib/libeu.a
+@@ -135,6 +135,9 @@ riscv_SRCS = riscv_init.c riscv_symbol.c
+ libebl_riscv_pic_a_SOURCES = $(riscv_SRCS)
+ am_libebl_riscv_pic_a_OBJECTS = $(riscv_SRCS:.c=.os)
+
++parisc_SRCS = parisc_init.c parisc_symbol.c parisc_regs.c parisc_retval.c
++libebl_parisc_pic_a_SOURCES = $(parisc_SRCS)
++am_libebl_parisc_pic_a_OBJECTS = $(parisc_SRCS:.c=.os)
+
+ libebl_%.so libebl_%.map: libebl_%_pic.a $(libelf) $(libdw) $(libeu)
+ @rm -f $(@:.so=.map)
+diff --git a/backends/libebl_parisc.h b/backends/libebl_parisc.h
+new file mode 100644
+index 0000000..f473b79
+--- /dev/null
++++ b/backends/libebl_parisc.h
+@@ -0,0 +1,9 @@
++#ifndef _LIBEBL_HPPA_H
++#define _LIBEBL_HPPA_H 1
++
++#include <libdw.h>
++
++extern int parisc_return_value_location_32(Dwarf_Die *, const Dwarf_Op **locp);
++extern int parisc_return_value_location_64(Dwarf_Die *, const Dwarf_Op **locp);
++
++#endif
+diff --git a/backends/parisc_init.c b/backends/parisc_init.c
+new file mode 100644
+index 0000000..f1e401c
--- /dev/null
-+++ elfutils-0.170/backends/parisc_init.c
++++ b/backends/parisc_init.c
@@ -0,0 +1,73 @@
+/* Initialization of PA-RISC specific backend library.
+ Copyright (C) 2002, 2005, 2006 Red Hat, Inc.
@@ -79,10 +153,11 @@ Index: elfutils-0.170/backends/parisc_init.c
+
+ return MODVERSION;
+}
-Index: elfutils-0.170/backends/parisc_regs.c
-===================================================================
+diff --git a/backends/parisc_regs.c b/backends/parisc_regs.c
+new file mode 100644
+index 0000000..3895f8e
--- /dev/null
-+++ elfutils-0.170/backends/parisc_regs.c
++++ b/backends/parisc_regs.c
@@ -0,0 +1,159 @@
+/* Register names and numbers for PA-RISC DWARF.
+ Copyright (C) 2005, 2006 Red Hat, Inc.
@@ -243,10 +318,11 @@ Index: elfutils-0.170/backends/parisc_regs.c
+ name[namelen++] = '\0';
+ return namelen;
+}
-Index: elfutils-0.170/backends/parisc_reloc.def
-===================================================================
+diff --git a/backends/parisc_reloc.def b/backends/parisc_reloc.def
+new file mode 100644
+index 0000000..1f875ba
--- /dev/null
-+++ elfutils-0.170/backends/parisc_reloc.def
++++ b/backends/parisc_reloc.def
@@ -0,0 +1,128 @@
+/* List the relocation types for PA-RISC. -*- C -*-
+ Copyright (C) 2005 Red Hat, Inc.
@@ -376,10 +452,11 @@ Index: elfutils-0.170/backends/parisc_reloc.def
+RELOC_TYPE (TLS_DTPMOD64, DYN)
+
+#define NO_RELATIVE_RELOC 1
-Index: elfutils-0.170/backends/parisc_retval.c
-===================================================================
+diff --git a/backends/parisc_retval.c b/backends/parisc_retval.c
+new file mode 100644
+index 0000000..df7ec3a
--- /dev/null
-+++ elfutils-0.170/backends/parisc_retval.c
++++ b/backends/parisc_retval.c
@@ -0,0 +1,213 @@
+/* Function return value location for Linux/PA-RISC ABI.
+ Copyright (C) 2005 Red Hat, Inc.
@@ -594,10 +671,11 @@ Index: elfutils-0.170/backends/parisc_retval.c
+ return parisc_return_value_location_ (functypedie, locp, 1);
+}
+
-Index: elfutils-0.170/backends/parisc_symbol.c
-===================================================================
+diff --git a/backends/parisc_symbol.c b/backends/parisc_symbol.c
+new file mode 100644
+index 0000000..d111a76
--- /dev/null
-+++ elfutils-0.170/backends/parisc_symbol.c
++++ b/backends/parisc_symbol.c
@@ -0,0 +1,112 @@
+/* PA-RISC specific symbolic name handling.
+ Copyright (C) 2002, 2005 Red Hat, Inc.
@@ -711,54 +789,11 @@ Index: elfutils-0.170/backends/parisc_symbol.c
+ return ELF_T_NUM;
+ }
+}
-Index: elfutils-0.170/backends/libebl_parisc.h
-===================================================================
---- /dev/null
-+++ elfutils-0.170/backends/libebl_parisc.h
-@@ -0,0 +1,9 @@
-+#ifndef _LIBEBL_HPPA_H
-+#define _LIBEBL_HPPA_H 1
-+
-+#include <libdw.h>
-+
-+extern int parisc_return_value_location_32(Dwarf_Die *, const Dwarf_Op **locp);
-+extern int parisc_return_value_location_64(Dwarf_Die *, const Dwarf_Op **locp);
-+
-+#endif
-Index: elfutils-0.170/backends/Makefile.am
-===================================================================
---- elfutils-0.170.orig/backends/Makefile.am
-+++ elfutils-0.170/backends/Makefile.am
-@@ -33,12 +33,12 @@ AM_CPPFLAGS += -I$(top_srcdir)/libebl -I
-
-
- modules = i386 sh x86_64 ia64 alpha arm aarch64 sparc ppc ppc64 s390 \
-- tilegx m68k bpf
-+ tilegx m68k bpf parisc
- libebl_pic = libebl_i386_pic.a libebl_sh_pic.a libebl_x86_64_pic.a \
- libebl_ia64_pic.a libebl_alpha_pic.a libebl_arm_pic.a \
- libebl_aarch64_pic.a libebl_sparc_pic.a libebl_ppc_pic.a \
- libebl_ppc64_pic.a libebl_s390_pic.a libebl_tilegx_pic.a \
-- libebl_m68k_pic.a libebl_bpf_pic.a
-+ libebl_m68k_pic.a libebl_bpf_pic.a libebl_parisc_pic.a
- noinst_LIBRARIES = $(libebl_pic)
- noinst_DATA = $(libebl_pic:_pic.a=.so)
-
-@@ -124,6 +124,9 @@ cpu_bpf = ../libcpu/libcpu_bpf.a
- libebl_bpf_pic_a_SOURCES = $(bpf_SRCS)
- am_libebl_bpf_pic_a_OBJECTS = $(bpf_SRCS:.c=.os)
-
-+parisc_SRCS = parisc_init.c parisc_symbol.c parisc_regs.c parisc_retval.c
-+libebl_parisc_pic_a_SOURCES = $(parisc_SRCS)
-+am_libebl_parisc_pic_a_OBJECTS = $(parisc_SRCS:.c=.os)
-
- libebl_%.so libebl_%.map: libebl_%_pic.a $(libelf) $(libdw) $(libeu)
- @rm -f $(@:.so=.map)
-Index: elfutils-0.170/libelf/elf.h
-===================================================================
---- elfutils-0.170.orig/libelf/elf.h
-+++ elfutils-0.170/libelf/elf.h
-@@ -2056,16 +2056,24 @@ enum
+diff --git a/libelf/elf.h b/libelf/elf.h
+index f774898..6c9f61e 100644
+--- a/libelf/elf.h
++++ b/libelf/elf.h
+@@ -2153,16 +2153,24 @@ enum
#define R_PARISC_PCREL17F 12 /* 17 bits of rel. address. */
#define R_PARISC_PCREL14R 14 /* Right 14 bits of rel. address. */
#define R_PARISC_DPREL21L 18 /* Left 21 bits of rel. address. */
@@ -783,7 +818,7 @@ Index: elfutils-0.170/libelf/elf.h
#define R_PARISC_LTOFF_FPTR32 57 /* 32 bits LT-rel. function pointer. */
#define R_PARISC_LTOFF_FPTR21L 58 /* LT-rel. fct ptr, left 21 bits. */
#define R_PARISC_LTOFF_FPTR14R 62 /* LT-rel. fct ptr, right 14 bits. */
-@@ -2074,6 +2082,7 @@ enum
+@@ -2171,6 +2179,7 @@ enum
#define R_PARISC_PLABEL21L 66 /* Left 21 bits of fdesc address. */
#define R_PARISC_PLABEL14R 70 /* Right 14 bits of fdesc address. */
#define R_PARISC_PCREL64 72 /* 64 bits PC-rel. address. */
@@ -791,7 +826,7 @@ Index: elfutils-0.170/libelf/elf.h
#define R_PARISC_PCREL22F 74 /* 22 bits PC-rel. address. */
#define R_PARISC_PCREL14WR 75 /* PC-rel. address, right 14 bits. */
#define R_PARISC_PCREL14DR 76 /* PC rel. address, right 14 bits. */
-@@ -2099,6 +2108,8 @@ enum
+@@ -2196,6 +2205,8 @@ enum
#define R_PARISC_LTOFF16WF 102 /* 16 bits LT-rel. address. */
#define R_PARISC_LTOFF16DF 103 /* 16 bits LT-rel. address. */
#define R_PARISC_SECREL64 104 /* 64 bits section rel. address. */
@@ -800,3 +835,6 @@ Index: elfutils-0.170/libelf/elf.h
#define R_PARISC_SEGREL64 112 /* 64 bits segment rel. address. */
#define R_PARISC_PLTOFF14WR 115 /* PLT-rel. address, right 14 bits. */
#define R_PARISC_PLTOFF14DR 116 /* PLT-rel. address, right 14 bits. */
+--
+2.7.4
+
diff --git a/poky/meta/recipes-devtools/elfutils/files/debian/mips_backend.patch b/poky/meta/recipes-devtools/elfutils/files/debian/0001-mips_backend.patch
index 2e0e54b0c..d04da72cc 100644
--- a/poky/meta/recipes-devtools/elfutils/files/debian/mips_backend.patch
+++ b/poky/meta/recipes-devtools/elfutils/files/debian/0001-mips_backend.patch
@@ -1,11 +1,13 @@
-From 46d0d0ca718093486eeeedf1b44134e9e29b56f7 Mon Sep 17 00:00:00 2001
+From 59ffb86bda845a68d3686afa7bc784131df678f7 Mon Sep 17 00:00:00 2001
From: Hongxu Jia <hongxu.jia@windriver.com>
-Date: Wed, 16 Aug 2017 09:18:59 +0800
-Subject: [PATCH] mips backends
+Date: Fri, 29 Jun 2018 15:45:58 +0800
+Subject: [PATCH] mips_backend
-Upstream-Status: Backport [from debian]
+Upstream-Status: Pending [from debian]
+mips_backend.diff and rebase to 0.172
+
+http://ftp.de.debian.org/debian/pool/main/e/elfutils/elfutils_0.170-0.5.debian.tar.xz
-Rebase to 0.170
Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
---
backends/Makefile.am | 8 +-
@@ -23,25 +25,26 @@ Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
create mode 100644 backends/mips_symbol.c
diff --git a/backends/Makefile.am b/backends/Makefile.am
-index 7f1f5d4..91baf6e 100644
+index 1e4b8e9..e7bccf8 100644
--- a/backends/Makefile.am
+++ b/backends/Makefile.am
-@@ -33,12 +33,12 @@ AM_CPPFLAGS += -I$(top_srcdir)/libebl -I$(top_srcdir)/libasm \
+@@ -33,13 +33,13 @@ AM_CPPFLAGS += -I$(top_srcdir)/libebl -I$(top_srcdir)/libasm \
modules = i386 sh x86_64 ia64 alpha arm aarch64 sparc ppc ppc64 s390 \
-- tilegx m68k bpf parisc
-+ tilegx m68k bpf parisc mips
+- tilegx m68k bpf riscv parisc
++ tilegx m68k bpf riscv parisc mips
libebl_pic = libebl_i386_pic.a libebl_sh_pic.a libebl_x86_64_pic.a \
libebl_ia64_pic.a libebl_alpha_pic.a libebl_arm_pic.a \
libebl_aarch64_pic.a libebl_sparc_pic.a libebl_ppc_pic.a \
libebl_ppc64_pic.a libebl_s390_pic.a libebl_tilegx_pic.a \
-- libebl_m68k_pic.a libebl_bpf_pic.a libebl_parisc_pic.a
-+ libebl_m68k_pic.a libebl_bpf_pic.a libebl_parisc_pic.a libebl_mips_pic.a
+ libebl_m68k_pic.a libebl_bpf_pic.a libebl_riscv_pic.a \
+- libebl_parisc_pic.a
++ libebl_parisc_pic.a libebl_mips_pic.a
noinst_LIBRARIES = $(libebl_pic)
noinst_DATA = $(libebl_pic:_pic.a=.so)
-@@ -128,6 +128,10 @@ parisc_SRCS = parisc_init.c parisc_symbol.c parisc_regs.c parisc_retval.c
+@@ -139,6 +139,10 @@ parisc_SRCS = parisc_init.c parisc_symbol.c parisc_regs.c parisc_retval.c
libebl_parisc_pic_a_SOURCES = $(parisc_SRCS)
am_libebl_parisc_pic_a_OBJECTS = $(parisc_SRCS:.c=.os)
@@ -698,7 +701,7 @@ index 0000000..ba465fe
+ }
+}
diff --git a/libebl/eblopenbackend.c b/libebl/eblopenbackend.c
-index 1f81477..5371396 100644
+index 8b063f4..5405b0c 100644
--- a/libebl/eblopenbackend.c
+++ b/libebl/eblopenbackend.c
@@ -72,6 +72,8 @@ static const struct
@@ -711,5 +714,5 @@ index 1f81477..5371396 100644
{ "m32", "elf_m32", "m32", 3, EM_M32, 0, 0 },
{ "m68k", "elf_m68k", "m68k", 4, EM_68K, ELFCLASS32, ELFDATA2MSB },
--
-1.8.3.1
+2.7.4
diff --git a/poky/meta/recipes-devtools/elfutils/files/debian/0001-mips_readelf_w.patch b/poky/meta/recipes-devtools/elfutils/files/debian/0001-mips_readelf_w.patch
new file mode 100644
index 000000000..f3ab3da8d
--- /dev/null
+++ b/poky/meta/recipes-devtools/elfutils/files/debian/0001-mips_readelf_w.patch
@@ -0,0 +1,39 @@
+From a188ea1ada6b990b72b91266ae02da058dcd9523 Mon Sep 17 00:00:00 2001
+From: Kurt Roeckx <kurt@roeckx.be>
+Date: Fri, 29 Jun 2018 15:49:32 +0800
+Subject: [PATCH] Make readelf -w output debug information on mips
+
+Bug-Debian: http://bugs.debian.org/662041
+Forwarded: not-needed
+
+Upstreams wants a change where this is handled by a hook that needs
+to be filled in by the backend for the arch.
+
+Signed-off-by: Kurt Roeckx <kurt@roeckx.be>
+
+Upstream-Status: Pending [from debian]
+mips_readelf_w.patch and rebase to 0.172
+
+http://ftp.de.debian.org/debian/pool/main/e/elfutils/elfutils_0.170-0.5.debian.tar.xz
+Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
+---
+ src/readelf.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/src/readelf.c b/src/readelf.c
+index f185897..0db197c 100644
+--- a/src/readelf.c
++++ b/src/readelf.c
+@@ -10979,7 +10979,8 @@ print_debug (Dwfl_Module *dwflmod, Ebl *ebl, GElf_Ehdr *ehdr)
+ GElf_Shdr shdr_mem;
+ GElf_Shdr *shdr = gelf_getshdr (scn, &shdr_mem);
+
+- if (shdr != NULL && shdr->sh_type == SHT_PROGBITS)
++ if (shdr != NULL && (
++ (shdr->sh_type == SHT_PROGBITS) || (shdr->sh_type == SHT_MIPS_DWARF)))
+ {
+ static const struct
+ {
+--
+2.7.4
+
diff --git a/poky/meta/recipes-devtools/elfutils/files/debian/0001-testsuite-ignore-elflint.patch b/poky/meta/recipes-devtools/elfutils/files/debian/0001-testsuite-ignore-elflint.patch
new file mode 100644
index 000000000..f4c6f40fc
--- /dev/null
+++ b/poky/meta/recipes-devtools/elfutils/files/debian/0001-testsuite-ignore-elflint.patch
@@ -0,0 +1,57 @@
+From fe7613a3b9f2443cc11917826348d4521f267c96 Mon Sep 17 00:00:00 2001
+From: Hongxu Jia <hongxu.jia@windriver.com>
+Date: Fri, 29 Jun 2018 15:48:33 +0800
+Subject: [PATCH] testsuite ignore elflint
+
+On many architectures this test fails because binaries/libs produced by
+binutils don't pass elflint. However elfutils shouldn't FTBFS because of this.
+
+So we run the tests on all archs to see what breaks, but if it breaks we ignore
+the result (exitcode 77 means: this test was skipped).
+
+Upstream-Status: Pending [from debian]
+testsuite-ignore-elflint.diff and rebase to 0.172
+
+Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
+---
+ tests/run-elflint-self.sh | 2 +-
+ tests/test-subr.sh | 15 +++++++++++++++
+ 2 files changed, 16 insertions(+), 1 deletion(-)
+
+diff --git a/tests/run-elflint-self.sh b/tests/run-elflint-self.sh
+index 58fa7d0..85d21a5 100755
+--- a/tests/run-elflint-self.sh
++++ b/tests/run-elflint-self.sh
+@@ -18,5 +18,5 @@
+
+ . $srcdir/test-subr.sh
+
+-testrun_on_self ${abs_top_builddir}/src/elflint --quiet --gnu-ld
++testrun_on_self_skip ${abs_top_builddir}/src/elflint --quiet --gnu-ld
+ testrun_on_self_compressed ${abs_top_builddir}/src/elflint --quiet --gnu-ld
+diff --git a/tests/test-subr.sh b/tests/test-subr.sh
+index 09f428d..26f61f1 100644
+--- a/tests/test-subr.sh
++++ b/tests/test-subr.sh
+@@ -201,3 +201,18 @@ testrun_on_self_quiet()
+ # Only exit if something failed
+ if test $exit_status != 0; then exit $exit_status; fi
+ }
++
++# Same as testrun_on_self(), but skip on failure.
++testrun_on_self_skip()
++{
++ exit_status=0
++
++ for file in $self_test_files; do
++ testrun $* $file \
++ || { echo "*** failure in $* $file"; exit_status=77; }
++ done
++
++ # Only exit if something failed
++ if test $exit_status != 0; then exit $exit_status; fi
++}
++
+--
+2.7.4
+
diff --git a/poky/meta/recipes-devtools/elfutils/files/debian/0002-Add-support-for-mips64-abis-in-mips_retval.c.patch b/poky/meta/recipes-devtools/elfutils/files/debian/0002-Add-support-for-mips64-abis-in-mips_retval.c.patch
index b17498f5f..4bdb1ff3c 100644
--- a/poky/meta/recipes-devtools/elfutils/files/debian/0002-Add-support-for-mips64-abis-in-mips_retval.c.patch
+++ b/poky/meta/recipes-devtools/elfutils/files/debian/0002-Add-support-for-mips64-abis-in-mips_retval.c.patch
@@ -1,12 +1,12 @@
+Upstream-Status: Pending [from debian]
+Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
+
From fdaab18a65ed2529656baa64cb6169f34d7e507b Mon Sep 17 00:00:00 2001
From: James Cowgill <james410@cowgill.org.uk>
Date: Mon, 5 Jan 2015 15:17:01 +0000
Subject: [PATCH 2/3] Add support for mips64 abis in mips_retval.c
Signed-off-by: James Cowgill <james410@cowgill.org.uk>
-
-Upstream-Status: Backport [from debian]
-Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
---
backends/mips_retval.c | 104 ++++++++++++++++++++++++++++++++++++++++++++-----
1 file changed, 94 insertions(+), 10 deletions(-)
diff --git a/poky/meta/recipes-devtools/elfutils/files/debian/0003-Add-mips-n64-relocation-format-hack.patch b/poky/meta/recipes-devtools/elfutils/files/debian/0003-Add-mips-n64-relocation-format-hack.patch
index 2a5f8628d..d27ce6dc9 100644
--- a/poky/meta/recipes-devtools/elfutils/files/debian/0003-Add-mips-n64-relocation-format-hack.patch
+++ b/poky/meta/recipes-devtools/elfutils/files/debian/0003-Add-mips-n64-relocation-format-hack.patch
@@ -1,3 +1,6 @@
+Upstream-Status: Pending [from debian]
+Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
+
From 59d4b8c48e5040af7e02b34eb26ea602ec82a38e Mon Sep 17 00:00:00 2001
From: James Cowgill <james410@cowgill.org.uk>
Date: Mon, 5 Jan 2015 15:17:02 +0000
@@ -12,9 +15,6 @@ This patch also ensures that strip.c sets the correct value of e_machine
before manipulating relocations so that these changes take effect.
Signed-off-by: James Cowgill <james410@cowgill.org.uk>
-
-Upstream-Status: Backport [from debian]
-Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
---
libelf/gelf_getrel.c | 25 +++++++++++++++++++++++--
libelf/gelf_getrela.c | 25 +++++++++++++++++++++++--
@@ -203,7 +203,7 @@ Index: b/src/strip.c
===================================================================
--- a/src/strip.c
+++ b/src/strip.c
-@@ -532,6 +532,23 @@ handle_elf (int fd, Elf *elf, const char
+@@ -598,6 +598,23 @@ handle_elf (int fd, Elf *elf, const char
goto fail;
}
diff --git a/poky/meta/recipes-devtools/elfutils/files/debian/ignore_strmerge.diff b/poky/meta/recipes-devtools/elfutils/files/debian/ignore_strmerge.diff
new file mode 100644
index 000000000..55513eedd
--- /dev/null
+++ b/poky/meta/recipes-devtools/elfutils/files/debian/ignore_strmerge.diff
@@ -0,0 +1,14 @@
+Upstream-Status: Pending [from debian]
+Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
+
+--- elfutils-0.165.orig/tests/run-strip-strmerge.sh
++++ elfutils-0.165/tests/run-strip-strmerge.sh
+@@ -30,7 +30,7 @@ remerged=remerged.elf
+ tempfiles $merged $stripped $debugfile $remerged
+
+ echo elflint $input
+-testrun ${abs_top_builddir}/src/elflint --gnu $input
++testrun_on_self_skip ${abs_top_builddir}/src/elflint --gnu $input
+ echo elfstrmerge
+ testrun ${abs_top_builddir}/tests/elfstrmerge -o $merged $input
+ echo elflint $merged
diff --git a/poky/meta/recipes-devtools/elfutils/files/debian/mips_readelf_w.patch b/poky/meta/recipes-devtools/elfutils/files/debian/mips_readelf_w.patch
deleted file mode 100644
index 790930cf3..000000000
--- a/poky/meta/recipes-devtools/elfutils/files/debian/mips_readelf_w.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From: Kurt Roeckx <kurt@roeckx.be>
-Subject: Make readelf -w output debug information on mips
-Bug-Debian: http://bugs.debian.org/662041
-Forwarded: not-needed
-
-Upstreams wants a change where this is handled by a hook that needs
-to be filled in by the backend for the arch.
-
-Upstream-Status: Backport [from debian]
-Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
-
-Index: b/src/readelf.c
-===================================================================
---- a/src/readelf.c
-+++ b/src/readelf.c
-@@ -8343,7 +8343,8 @@ print_debug (Dwfl_Module *dwflmod, Ebl *
- GElf_Shdr shdr_mem;
- GElf_Shdr *shdr = gelf_getshdr (scn, &shdr_mem);
-
-- if (shdr != NULL && shdr->sh_type == SHT_PROGBITS)
-+ if (shdr != NULL && (
-+ (shdr->sh_type == SHT_PROGBITS) || (shdr->sh_type == SHT_MIPS_DWARF)))
- {
- static const struct
- {
diff --git a/poky/meta/recipes-devtools/fdisk/gptfdisk_1.0.3.bb b/poky/meta/recipes-devtools/fdisk/gptfdisk_1.0.4.bb
index 4d617e3e4..b043c9654 100644
--- a/poky/meta/recipes-devtools/fdisk/gptfdisk_1.0.3.bb
+++ b/poky/meta/recipes-devtools/fdisk/gptfdisk_1.0.4.bb
@@ -4,22 +4,29 @@ DESCRIPTION = "GPT fdisk is a disk partitioning tool loosely modeled on Linux fd
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
-DEPENDS = "util-linux popt ncurses"
+DEPENDS = "util-linux"
SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${PV}/${BP}.tar.gz"
-SRC_URI[md5sum] = "07b625a583b66c8c5840be5923f3e3fe"
-SRC_URI[sha256sum] = "89fd5aec35c409d610a36cb49c65b442058565ed84042f767bba614b8fc91b5c"
+SRC_URI[md5sum] = "5ecc3c44913bb6b53d3708d1ac7ac295"
+SRC_URI[sha256sum] = "b663391a6876f19a3cd901d862423a16e2b5ceaa2f4a3b9bb681e64b9c7ba78d"
UPSTREAM_CHECK_URI = "http://sourceforge.net/projects/gptfdisk/files/gptfdisk/"
UPSTREAM_CHECK_REGEX = "/gptfdisk/(?P<pver>(\d+[\.\-_]*)+)/"
-EXTRA_OEMAKE = "'CC=${CC}' 'CXX=${CXX}'"
+EXTRA_OEMAKE = "'CC=${CC}' 'CXX=${CXX}' gdisk fixparts ${PACKAGECONFIG_CONFARGS}"
+
+PACKAGECONFIG ??= "ncurses popt"
+PACKAGECONFIG[ncurses] = "cgdisk,,ncurses"
+PACKAGECONFIG[popt] = "sgdisk,,popt"
do_install() {
install -d ${D}${sbindir}
- install -m 0755 cgdisk ${D}${sbindir}
+ for f in cgdisk sgdisk; do
+ if [ -x $f ]; then
+ install -m 0755 $f ${D}${sbindir}
+ fi
+ done
install -m 0755 gdisk ${D}${sbindir}
- install -m 0755 sgdisk ${D}${sbindir}
install -m 0755 fixparts ${D}${sbindir}
}
diff --git a/poky/meta/recipes-devtools/file/file/0001-Add-P-prompt-into-Usage-info.patch b/poky/meta/recipes-devtools/file/file/0001-Add-P-prompt-into-Usage-info.patch
deleted file mode 100644
index 8a16b2cf7..000000000
--- a/poky/meta/recipes-devtools/file/file/0001-Add-P-prompt-into-Usage-info.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-From 08abf944b2bff27b6dd325dd15b4861cebef113a Mon Sep 17 00:00:00 2001
-From: Junling Zheng <zhengjunling@huawei.com>
-Date: Wed, 8 Apr 2015 03:26:57 +0000
-Subject: [PATCH] Add -P prompt into Usage info
-
-Currently, Usage info doesn't include -P prompt, add it:
-
-root@arma9el:~# file
-Usage: file [-bcEhikLlNnprsvz0] [--apple] [--mime-encoding] [--mime-type]
- [-e testname] [-F separator] [-f namefile] [-m magicfiles]
- [-P parameter=limits] file ...
- file -C [-m magicfiles]
- file [--help]
-
-Upstream-Status: Submitted
-
-Signed-off-by: Junling Zheng <zhengjunling@huawei.com>
----
- src/file.c | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/src/file.c b/src/file.c
-index 2b15e21..e5a957b 100644
---- a/src/file.c
-+++ b/src/file.c
-@@ -76,8 +76,8 @@ int getopt_long(int argc, char * const *argv, const char *optstring, const struc
- # define USAGE \
- "Usage: %s [" FILE_FLAGS \
- "] [--apple] [--extension] [--mime-encoding] [--mime-type]\n" \
-- " [-e testname] [-F separator] [-f namefile] [-m magicfiles] " \
-- "file ...\n" \
-+ " [-e testname] [-F separator] [-f namefile] [-m magicfiles]\n " \
-+ " [-P parameter=limits] file ...\n" \
- " %s -C [-m magicfiles]\n" \
- " %s [--help]\n"
-
---
-1.8.3.4
-
diff --git a/poky/meta/recipes-devtools/file/file_5.32.bb b/poky/meta/recipes-devtools/file/file_5.34.bb
index 5e1592512..5d92913cb 100644
--- a/poky/meta/recipes-devtools/file/file_5.32.bb
+++ b/poky/meta/recipes-devtools/file/file_5.34.bb
@@ -16,13 +16,15 @@ UPSTREAM_CHECK_GITTAGREGEX = "FILE(?P<pver>(?!6_23).+)"
SRC_URI = "git://github.com/file/file.git \
file://debian-742262.patch \
- file://0001-Add-P-prompt-into-Usage-info.patch \
"
-SRCREV = "d474e35513940dbca039b510b4de705b44f5bd9c"
+SRCREV = "315cef2f699da3c31a54bd3c6c6070680fbaf1f5"
S = "${WORKDIR}/git"
-inherit autotools
+inherit autotools update-alternatives
+
+ALTERNATIVE_${PN} = "file"
+ALTERNATIVE_LINK_NAME[file] = "${bindir}/file"
EXTRA_OEMAKE_append_class-target = "-e FILE_COMPILE=${STAGING_BINDIR_NATIVE}/file-native/file"
EXTRA_OEMAKE_append_class-nativesdk = "-e FILE_COMPILE=${STAGING_BINDIR_NATIVE}/file-native/file"
diff --git a/poky/meta/recipes-devtools/gcc/gcc-7.3.inc b/poky/meta/recipes-devtools/gcc/gcc-7.3.inc
index d4aaca40d..c7c88f12e 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-7.3.inc
+++ b/poky/meta/recipes-devtools/gcc/gcc-7.3.inc
@@ -32,7 +32,6 @@ BASEURI ?= "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.xz"
SRC_URI = "\
${BASEURI} \
file://0001-gcc-4.3.1-ARCH_FLAGS_FOR_TARGET.patch \
- file://0008-c99-snprintf.patch \
file://0009-gcc-poison-system-directories.patch \
file://0010-gcc-poison-dir-extend.patch \
file://0011-gcc-4.3.3-SYSROOT_CFLAGS_FOR_TARGET.patch \
@@ -72,6 +71,7 @@ SRC_URI = "\
file://0045-Link-libgcc-using-LDFLAGS-not-just-SHLIB_LDFLAGS.patch \
file://0047-sync-gcc-stddef.h-with-musl.patch \
file://0048-gcc-Enable-static-PIE.patch \
+ file://0049-gcc-override-TARGET_LIBC_PROVIDES_SSP.patch \
file://fix-segmentation-fault-precompiled-hdr.patch \
file://no-sse-fix-test-case-failures.patch \
${BACKPORTS} \
@@ -95,10 +95,12 @@ FORTRAN = ""
JAVA = ""
LTO = "--enable-lto"
+SSP ?= "--disable-libssp"
+SSP_mingw32 = "--enable-libssp"
EXTRA_OECONF_BASE = "\
${LTO} \
- --enable-libssp \
+ ${SSP} \
--enable-libitm \
--disable-bootstrap \
--disable-libmudflap \
@@ -120,9 +122,10 @@ EXTRA_OECONF_INITIAL = "\
--with-system-zlib \
--disable-lto \
--disable-plugin \
+ --enable-linker-build-id \
--enable-decimal-float=no \
--without-isl \
- gcc_cv_libc_provides_ssp=yes \
+ --disable-libssp \
"
EXTRA_OECONF_PATHS = "\
diff --git a/poky/meta/recipes-devtools/gcc/gcc-7.3/0008-c99-snprintf.patch b/poky/meta/recipes-devtools/gcc/gcc-7.3/0008-c99-snprintf.patch
deleted file mode 100644
index ebd562b63..000000000
--- a/poky/meta/recipes-devtools/gcc/gcc-7.3/0008-c99-snprintf.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From 732f10eead61830a8aee1bf38cce892da25c35b1 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Fri, 29 Mar 2013 08:49:03 +0400
-Subject: [PATCH 08/47] c99-snprintf
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-
-Upstream-Status: Pending
----
- libstdc++-v3/include/c_std/cstdio | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/libstdc++-v3/include/c_std/cstdio b/libstdc++-v3/include/c_std/cstdio
-index 43969892aa2..12148457909 100644
---- a/libstdc++-v3/include/c_std/cstdio
-+++ b/libstdc++-v3/include/c_std/cstdio
-@@ -144,7 +144,7 @@ namespace std
- using ::vsprintf;
- } // namespace std
-
--#if _GLIBCXX_USE_C99_STDIO
-+#if _GLIBCXX_USE_C99_STDIO || defined(__UCLIBC__)
-
- #undef snprintf
- #undef vfscanf
---
-2.12.2
-
diff --git a/poky/meta/recipes-devtools/gcc/gcc-7.3/0049-gcc-override-TARGET_LIBC_PROVIDES_SSP.patch b/poky/meta/recipes-devtools/gcc/gcc-7.3/0049-gcc-override-TARGET_LIBC_PROVIDES_SSP.patch
new file mode 100644
index 000000000..7c53c95c3
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-7.3/0049-gcc-override-TARGET_LIBC_PROVIDES_SSP.patch
@@ -0,0 +1,204 @@
+From 9815bd97561c778ee0bc0c17f245e88e66570111 Mon Sep 17 00:00:00 2001
+From: sandra <sandra@138bc75d-0d04-0410-961f-82ee72b054a4>
+Date: Wed, 1 Nov 2017 02:14:19 +0000
+Subject: [PATCH] 2017-10-31 Sandra Loosemore <sandra@codesourcery.com>
+
+ gcc/
+ * configure.ac (--enable-libssp): New.
+ (gcc_cv_libc_provides_ssp): Check for explicit setting before
+ trying to determine target-specific default. Adjust indentation.
+ * configure: Regenerated.
+ * doc/install.texi (Configuration): Expand --disable-libssp
+ documentation.
+
+
+git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@254288 138bc75d-0d04-0410-961f-82ee72b054a4
+---
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+Upstream-Status: Backport [https://patchwork.ozlabs.org/patch/823049/]
+
+ gcc/ChangeLog | 9 +++++++++
+ gcc/configure | 26 +++++++++++++++++++++++---
+ gcc/configure.ac | 24 ++++++++++++++++++++----
+ gcc/doc/install.texi | 3 ++-
+ 4 files changed, 54 insertions(+), 8 deletions(-)
+
+Index: gcc-7.3.0/gcc/configure.ac
+===================================================================
+--- gcc-7.3.0.orig/gcc/configure.ac
++++ gcc-7.3.0/gcc/configure.ac
+@@ -5719,10 +5719,25 @@ if test x$gcc_cv_solaris_crts = xyes; th
+ [Define if the system-provided CRTs are present on Solaris.])
+ fi
+
++AC_ARG_ENABLE(libssp,
++[AS_HELP_STRING([--enable-libssp], [enable linking against libssp])],
++[case "${enableval}" in
++ yes|no)
++ ;;
++ *)
++ AC_MSG_ERROR([unknown libssp setting $enableval])
++ ;;
++esac], [])
++
+ # Test for stack protector support in target C library.
+ AC_CACHE_CHECK(__stack_chk_fail in target C library,
+- gcc_cv_libc_provides_ssp,
+- [gcc_cv_libc_provides_ssp=no
++ gcc_cv_libc_provides_ssp,
++ [gcc_cv_libc_provides_ssp=no
++ if test "x$enable_libssp" = "xno"; then
++ gcc_cv_libc_provides_ssp=yes
++ elif test "x$enable_libssp" = "xyes"; then
++ gcc_cv_libc_provides_ssp=no
++ else
+ case "$target" in
+ *-*-musl*)
+ # All versions of musl provide stack protector
+@@ -5759,8 +5774,9 @@ AC_CACHE_CHECK(__stack_chk_fail in targe
+ AC_CHECK_FUNC(__stack_chk_fail,[gcc_cv_libc_provides_ssp=yes],
+ [echo "no __stack_chk_fail on this target"])
+ ;;
+- *) gcc_cv_libc_provides_ssp=no ;;
+- esac])
++ *) gcc_cv_libc_provides_ssp=no ;;
++ esac
++ fi])
+
+ if test x$gcc_cv_libc_provides_ssp = xyes; then
+ AC_DEFINE(TARGET_LIBC_PROVIDES_SSP, 1,
+Index: gcc-7.3.0/gcc/doc/install.texi
+===================================================================
+--- gcc-7.3.0.orig/gcc/doc/install.texi
++++ gcc-7.3.0/gcc/doc/install.texi
+@@ -1658,7 +1658,8 @@ not be built.
+
+ @item --disable-libssp
+ Specify that the run-time libraries for stack smashing protection
+-should not be built.
++should not be built or linked against. On many targets library support
++is provided by the C library instead.
+
+ @item --disable-libquadmath
+ Specify that the GCC quad-precision math library should not be built.
+Index: gcc-7.3.0/gcc/configure
+===================================================================
+--- gcc-7.3.0.orig/gcc/configure
++++ gcc-7.3.0/gcc/configure
+@@ -940,6 +940,7 @@ enable_fix_cortex_a53_843419
+ with_glibc_version
+ enable_gnu_unique_object
+ enable_linker_build_id
++enable_libssp
+ enable_default_ssp
+ with_long_double_128
+ with_gc
+@@ -1679,6 +1680,7 @@ Optional Features:
+ extension on glibc systems
+ --enable-linker-build-id
+ compiler will always pass --build-id to linker
++ --enable-libssp enable linking against libssp
+ --enable-default-ssp enable Stack Smashing Protection as default
+ --enable-maintainer-mode
+ enable make rules and dependencies not useful (and
+@@ -18450,7 +18452,7 @@ else
+ lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
+ lt_status=$lt_dlunknown
+ cat > conftest.$ac_ext <<_LT_EOF
+-#line 18436 "configure"
++#line 18455 "configure"
+ #include "confdefs.h"
+
+ #if HAVE_DLFCN_H
+@@ -18556,7 +18558,7 @@ else
+ lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
+ lt_status=$lt_dlunknown
+ cat > conftest.$ac_ext <<_LT_EOF
+-#line 18542 "configure"
++#line 18561 "configure"
+ #include "confdefs.h"
+
+ #if HAVE_DLFCN_H
+@@ -25234,6 +25236,7 @@ $as_echo "#define HAVE_AS_SPARC5_VIS4 1"
+
+ fi
+
++
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking assembler for SPARC6 instructions" >&5
+ $as_echo_n "checking assembler for SPARC6 instructions... " >&6; }
+ if test "${gcc_cv_as_sparc_sparc6+set}" = set; then :
+@@ -25270,6 +25273,7 @@ $as_echo "#define HAVE_AS_SPARC6 1" >>co
+
+ fi
+
++
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking assembler for LEON instructions" >&5
+ $as_echo_n "checking assembler for LEON instructions... " >&6; }
+ if test "${gcc_cv_as_sparc_leon+set}" = set; then :
+@@ -28947,6 +28951,18 @@ $as_echo "#define HAVE_SOLARIS_CRTS 1" >
+
+ fi
+
++# Check whether --enable-libssp was given.
++if test "${enable_libssp+set}" = set; then :
++ enableval=$enable_libssp; case "${enableval}" in
++ yes|no)
++ ;;
++ *)
++ as_fn_error "unknown libssp setting $enableval" "$LINENO" 5
++ ;;
++esac
++fi
++
++
+ # Test for stack protector support in target C library.
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking __stack_chk_fail in target C library" >&5
+ $as_echo_n "checking __stack_chk_fail in target C library... " >&6; }
+@@ -28954,6 +28970,11 @@ if test "${gcc_cv_libc_provides_ssp+set}
+ $as_echo_n "(cached) " >&6
+ else
+ gcc_cv_libc_provides_ssp=no
++ if test "x$enable_libssp" = "xno"; then
++ gcc_cv_libc_provides_ssp=yes
++ elif test "x$enable_libssp" = "xyes"; then
++ gcc_cv_libc_provides_ssp=no
++ else
+ case "$target" in
+ *-*-musl*)
+ # All versions of musl provide stack protector
+@@ -29001,8 +29022,9 @@ else
+ fi
+
+ ;;
+- *) gcc_cv_libc_provides_ssp=no ;;
++ *) gcc_cv_libc_provides_ssp=no ;;
+ esac
++ fi
+ fi
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gcc_cv_libc_provides_ssp" >&5
+ $as_echo "$gcc_cv_libc_provides_ssp" >&6; }
+@@ -29037,18 +29059,15 @@ fi
+
+
+ # Test for <sys/sdt.h> on the target.
+-
+-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking sys/sdt.h in the target C library" >&5
+-$as_echo_n "checking sys/sdt.h in the target C library... " >&6; }
+-have_sys_sdt_h=no
++#GCC_TARGET_TEMPLATE([HAVE_SYS_SDT_H])
++#AC_MSG_CHECKING(sys/sdt.h in the target C library)
++#have_sys_sdt_h=no
+ #if test -f $target_header_dir/sys/sdt.h; then
+ # have_sys_sdt_h=yes
+-#
+-#$as_echo "#define HAVE_SYS_SDT_H 1" >>confdefs.h
+-#
++# AC_DEFINE(HAVE_SYS_SDT_H, 1,
++# [Define if your target C library provides sys/sdt.h])
+ #fi
+-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $have_sys_sdt_h" >&5
+-$as_echo "$have_sys_sdt_h" >&6; }
++#AC_MSG_RESULT($have_sys_sdt_h)
+
+ # Check if TFmode long double should be used by default or not.
+ # Some glibc targets used DFmode long double, but with glibc 2.4
diff --git a/poky/meta/recipes-devtools/gcc/gcc-8.2.inc b/poky/meta/recipes-devtools/gcc/gcc-8.2.inc
new file mode 100644
index 000000000..866a77558
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-8.2.inc
@@ -0,0 +1,127 @@
+require gcc-common.inc
+
+# Third digit in PV should be incremented after a minor release
+
+PV = "8.2.0"
+
+# BINV should be incremented to a revision after a minor gcc release
+
+BINV = "8.2.0"
+
+FILESEXTRAPATHS =. "${FILE_DIRNAME}/gcc-8.2:${FILE_DIRNAME}/gcc-8.2/backport:"
+
+DEPENDS =+ "mpfr gmp libmpc zlib flex-native"
+NATIVEDEPS = "mpfr-native gmp-native libmpc-native zlib-native flex-native"
+
+LICENSE = "GPL-3.0-with-GCC-exception & GPLv3"
+
+LIC_FILES_CHKSUM = "\
+ file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552 \
+ file://COPYING3;md5=d32239bcb673463ab874e80d47fae504 \
+ file://COPYING3.LIB;md5=6a6a8e020838b23406c81b19c1d46df6 \
+ file://COPYING.LIB;md5=2d5025d4aa3495befef8f17206a5b0a1 \
+ file://COPYING.RUNTIME;md5=fe60d87048567d4fe8c8a0ed2448bcc8 \
+"
+
+#RELEASE = "8.0.1-RC-20180427"
+BASEURI ?= "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.xz"
+#SRCREV = "f7cf798b73fd1a07098f9a490deec1e2a36e0bed"
+#BASEURI ?= "git://github.com/gcc-mirror/gcc;branch=gcc-6-branch;protocol=git"
+#BASEURI ?= "http://mirrors.concertpass.com/gcc/snapshots/${RELEASE}/gcc-${RELEASE}.tar.xz"
+
+SRC_URI = "\
+ ${BASEURI} \
+ file://0001-gcc-4.3.1-ARCH_FLAGS_FOR_TARGET.patch \
+ file://0003-gcc-poison-system-directories.patch \
+ file://0005-gcc-4.3.3-SYSROOT_CFLAGS_FOR_TARGET.patch \
+ file://0006-64-bit-multilib-hack.patch \
+ file://0007-optional-libstdc.patch \
+ file://0008-gcc-disable-MASK_RELAX_PIC_CALLS-bit.patch \
+ file://0009-COLLECT_GCC_OPTIONS.patch \
+ file://0010-Use-the-defaults.h-in-B-instead-of-S-and-t-oe-in-B.patch \
+ file://0011-fortran-cross-compile-hack.patch \
+ file://0012-cpp-honor-sysroot.patch \
+ file://0013-MIPS64-Default-to-N64-ABI.patch \
+ file://0014-Define-GLIBC_DYNAMIC_LINKER-and-UCLIBC_DYNAMIC_LINKE.patch \
+ file://0015-gcc-Fix-argument-list-too-long-error.patch \
+ file://0016-Disable-sdt.patch \
+ file://0017-libtool.patch \
+ file://0018-gcc-armv4-pass-fix-v4bx-to-linker-to-support-EABI.patch \
+ file://0019-Use-the-multilib-config-files-from-B-instead-of-usin.patch \
+ file://0020-Avoid-using-libdir-from-.la-which-usually-points-to-.patch \
+ file://0021-export-CPP.patch \
+ file://0022-Disable-the-MULTILIB_OSDIRNAMES-and-other-multilib-o.patch \
+ file://0023-Ensure-target-gcc-headers-can-be-included.patch \
+ file://0024-gcc-4.8-won-t-build-with-disable-dependency-tracking.patch \
+ file://0025-Don-t-search-host-directory-during-relink-if-inst_pr.patch \
+ file://0026-Use-SYSTEMLIBS_DIR-replacement-instead-of-hardcoding.patch \
+ file://0027-aarch64-Add-support-for-musl-ldso.patch \
+ file://0028-libcc1-fix-libcc1-s-install-path-and-rpath.patch \
+ file://0029-handle-sysroot-support-for-nativesdk-gcc.patch \
+ file://0030-Search-target-sysroot-gcc-version-specific-dirs-with.patch \
+ file://0031-Fix-various-_FOR_BUILD-and-related-variables.patch \
+ file://0032-nios2-Define-MUSL_DYNAMIC_LINKER.patch \
+ file://0033-Add-ssp_nonshared-to-link-commandline-for-musl-targe.patch \
+ file://0034-libgcc-Add-knob-to-use-ldbl-128-on-ppc.patch \
+ file://0035-Link-libgcc-using-LDFLAGS-not-just-SHLIB_LDFLAGS.patch \
+ file://0036-libgcc_s-Use-alias-for-__cpu_indicator_init-instead-.patch \
+ file://0037-sync-gcc-stddef.h-with-musl.patch \
+ file://0038-fix-segmentation-fault-in-precompiled-header-generat.patch \
+ file://0039-Fix-for-testsuite-failure.patch \
+ file://0040-Re-introduce-spe-commandline-options.patch \
+ file://0041-ARC-fix-spec-gen.patch \
+ ${BACKPORTS} \
+"
+BACKPORTS = "\
+"
+SRC_URI[md5sum] = "4ab282f414676496483b3e1793d07862"
+SRC_URI[sha256sum] = "196c3c04ba2613f893283977e6011b2345d1cd1af9abeac58e916b1aab3e0080"
+
+S = "${TMPDIR}/work-shared/gcc-${PV}-${PR}/gcc-${PV}"
+#S = "${TMPDIR}/work-shared/gcc-${PV}-${PR}/git"
+#S = "${TMPDIR}/work-shared/gcc-${PV}-${PR}/gcc-${RELEASE}"
+B = "${WORKDIR}/gcc-${PV}/build.${HOST_SYS}.${TARGET_SYS}"
+
+# Language Overrides
+FORTRAN = ""
+JAVA = ""
+
+LTO = "--enable-lto"
+SSP ?= "--disable-libssp"
+SSP_mingw32 = "--enable-libssp"
+
+EXTRA_OECONF_BASE = "\
+ ${LTO} \
+ ${SSP} \
+ --enable-libitm \
+ --disable-bootstrap \
+ --disable-libmudflap \
+ --with-system-zlib \
+ ${@'--with-linker-hash-style=${LINKER_HASH_STYLE}' if '${LINKER_HASH_STYLE}' else ''} \
+ --enable-linker-build-id \
+ --with-ppl=no \
+ --with-cloog=no \
+ --enable-checking=release \
+ --enable-cheaders=c_global \
+ --without-isl \
+"
+
+EXTRA_OECONF_INITIAL = "\
+ --disable-libmudflap \
+ --disable-libgomp \
+ --disable-libitm \
+ --disable-libquadmath \
+ --with-system-zlib \
+ --disable-lto \
+ --disable-plugin \
+ --enable-linker-build-id \
+ --enable-decimal-float=no \
+ --without-isl \
+ --disable-libssp \
+"
+
+EXTRA_OECONF_PATHS = "\
+ --with-gxx-include-dir=/not/exist{target_includedir}/c++/${BINV} \
+ --with-sysroot=/not/exist \
+ --with-build-sysroot=${STAGING_DIR_TARGET} \
+"
diff --git a/poky/meta/recipes-devtools/gcc/gcc-8.2/0001-gcc-4.3.1-ARCH_FLAGS_FOR_TARGET.patch b/poky/meta/recipes-devtools/gcc/gcc-8.2/0001-gcc-4.3.1-ARCH_FLAGS_FOR_TARGET.patch
new file mode 100644
index 000000000..423fe28e1
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-8.2/0001-gcc-4.3.1-ARCH_FLAGS_FOR_TARGET.patch
@@ -0,0 +1,42 @@
+From b752fb2b6d6f6da68da5386b96abf0d74cd4bbe6 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 29 Mar 2013 08:37:11 +0400
+Subject: [PATCH 01/39] gcc-4.3.1: ARCH_FLAGS_FOR_TARGET
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+Upstream-Status: Inappropriate [embedded specific]
+---
+ configure | 2 +-
+ configure.ac | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/configure b/configure
+index 69c99e99cca..517fb70192e 100755
+--- a/configure
++++ b/configure
+@@ -7511,7 +7511,7 @@ fi
+ # for target_alias and gcc doesn't manage it consistently.
+ target_configargs="--cache-file=./config.cache ${target_configargs}"
+
+-FLAGS_FOR_TARGET=
++FLAGS_FOR_TARGET="$ARCH_FLAGS_FOR_TARGET"
+ case " $target_configdirs " in
+ *" newlib "*)
+ case " $target_configargs " in
+diff --git a/configure.ac b/configure.ac
+index a1edc369a27..f8c254f1fac 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -3100,7 +3100,7 @@ fi
+ # for target_alias and gcc doesn't manage it consistently.
+ target_configargs="--cache-file=./config.cache ${target_configargs}"
+
+-FLAGS_FOR_TARGET=
++FLAGS_FOR_TARGET="$ARCH_FLAGS_FOR_TARGET"
+ case " $target_configdirs " in
+ *" newlib "*)
+ case " $target_configargs " in
+--
+2.17.0
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-8.2/0003-gcc-poison-system-directories.patch b/poky/meta/recipes-devtools/gcc/gcc-8.2/0003-gcc-poison-system-directories.patch
new file mode 100644
index 000000000..05138976c
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-8.2/0003-gcc-poison-system-directories.patch
@@ -0,0 +1,194 @@
+From 48c670d2678e0323d88eb72205e039f393cabe05 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 29 Mar 2013 08:59:00 +0400
+Subject: [PATCH 03/39] gcc: poison-system-directories
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+Upstream-Status: Inappropriate [distribution: codesourcery]
+---
+ gcc/common.opt | 4 ++++
+ gcc/config.in | 6 ++++++
+ gcc/configure | 16 ++++++++++++++++
+ gcc/configure.ac | 10 ++++++++++
+ gcc/doc/invoke.texi | 9 +++++++++
+ gcc/gcc.c | 2 ++
+ gcc/incpath.c | 19 +++++++++++++++++++
+ 7 files changed, 66 insertions(+)
+
+diff --git a/gcc/common.opt b/gcc/common.opt
+index d6ef85928f3..7b29efe3882 100644
+--- a/gcc/common.opt
++++ b/gcc/common.opt
+@@ -679,6 +679,10 @@ Wreturn-local-addr
+ Common Var(warn_return_local_addr) Init(1) Warning
+ Warn about returning a pointer/reference to a local or temporary variable.
+
++Wpoison-system-directories
++Common Var(flag_poison_system_directories) Init(1) Warning
++Warn for -I and -L options using system directories if cross compiling
++
+ Wshadow
+ Common Var(warn_shadow) Warning
+ Warn when one variable shadows another. Same as -Wshadow=global.
+diff --git a/gcc/config.in b/gcc/config.in
+index 5bccb408016..1c784a8276b 100644
+--- a/gcc/config.in
++++ b/gcc/config.in
+@@ -194,6 +194,12 @@
+ #endif
+
+
++/* Define to warn for use of native system header directories */
++#ifndef USED_FOR_TARGET
++#undef ENABLE_POISON_SYSTEM_DIRECTORIES
++#endif
++
++
+ /* Define if you want all operations on RTL (the basic data structure of the
+ optimizer and back end) to be checked for dynamic type safety at runtime.
+ This is quite expensive. */
+diff --git a/gcc/configure b/gcc/configure
+index 5c345ce0fd7..cafd05fd150 100755
+--- a/gcc/configure
++++ b/gcc/configure
+@@ -953,6 +953,7 @@ with_system_zlib
+ enable_maintainer_mode
+ enable_link_mutex
+ enable_version_specific_runtime_libs
++enable_poison_system_directories
+ enable_plugin
+ enable_host_shared
+ enable_libquadmath_support
+@@ -1696,6 +1697,8 @@ Optional Features:
+ --enable-version-specific-runtime-libs
+ specify that runtime libraries should be installed
+ in a compiler-specific directory
++ --enable-poison-system-directories
++ warn for use of native system header directories
+ --enable-plugin enable plugin support
+ --enable-host-shared build host code as shared libraries
+ --disable-libquadmath-support
+@@ -29715,6 +29718,19 @@ if test "${enable_version_specific_runtime_libs+set}" = set; then :
+ fi
+
+
++# Check whether --enable-poison-system-directories was given.
++if test "${enable_poison_system_directories+set}" = set; then :
++ enableval=$enable_poison_system_directories;
++else
++ enable_poison_system_directories=no
++fi
++
++if test "x${enable_poison_system_directories}" = "xyes"; then
++
++$as_echo "#define ENABLE_POISON_SYSTEM_DIRECTORIES 1" >>confdefs.h
++
++fi
++
+ # Substitute configuration variables
+
+
+diff --git a/gcc/configure.ac b/gcc/configure.ac
+index 65dbf1f2f80..dd5b38195ce 100644
+--- a/gcc/configure.ac
++++ b/gcc/configure.ac
+@@ -6341,6 +6341,16 @@ AC_ARG_ENABLE(version-specific-runtime-libs,
+ [specify that runtime libraries should be
+ installed in a compiler-specific directory])])
+
++AC_ARG_ENABLE([poison-system-directories],
++ AS_HELP_STRING([--enable-poison-system-directories],
++ [warn for use of native system header directories]),,
++ [enable_poison_system_directories=no])
++if test "x${enable_poison_system_directories}" = "xyes"; then
++ AC_DEFINE([ENABLE_POISON_SYSTEM_DIRECTORIES],
++ [1],
++ [Define to warn for use of native system header directories])
++fi
++
+ # Substitute configuration variables
+ AC_SUBST(subdirs)
+ AC_SUBST(srcdir)
+diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
+index 255149fcfb8..cb71b60fe3c 100644
+--- a/gcc/doc/invoke.texi
++++ b/gcc/doc/invoke.texi
+@@ -303,6 +303,7 @@ Objective-C and Objective-C++ Dialects}.
+ -Wpacked -Wpacked-bitfield-compat -Wpacked-not-aligned -Wpadded @gol
+ -Wparentheses -Wno-pedantic-ms-format @gol
+ -Wplacement-new -Wplacement-new=@var{n} @gol
++-Wno-poison-system-directories @gol
+ -Wpointer-arith -Wpointer-compare -Wno-pointer-to-int-cast @gol
+ -Wno-pragmas -Wredundant-decls -Wrestrict -Wno-return-local-addr @gol
+ -Wreturn-type -Wsequence-point -Wshadow -Wno-shadow-ivar @gol
+@@ -5712,6 +5713,14 @@ made up of data only and thus requires no special treatment. But, for
+ most targets, it is made up of code and thus requires the stack to be
+ made executable in order for the program to work properly.
+
++@item -Wno-poison-system-directories
++@opindex Wno-poison-system-directories
++Do not warn for @option{-I} or @option{-L} options using system
++directories such as @file{/usr/include} when cross compiling. This
++option is intended for use in chroot environments when such
++directories contain the correct headers and libraries for the target
++system rather than the host.
++
+ @item -Wfloat-equal
+ @opindex Wfloat-equal
+ @opindex Wno-float-equal
+diff --git a/gcc/gcc.c b/gcc/gcc.c
+index a716f708259..02b3cd39fc2 100644
+--- a/gcc/gcc.c
++++ b/gcc/gcc.c
+@@ -1037,6 +1037,8 @@ proper position among the other output files. */
+ "%{fuse-ld=*:-fuse-ld=%*} " LINK_COMPRESS_DEBUG_SPEC \
+ "%X %{o*} %{e*} %{N} %{n} %{r}\
+ %{s} %{t} %{u*} %{z} %{Z} %{!nostdlib:%{!nostartfiles:%S}} \
++ %{Wno-poison-system-directories:--no-poison-system-directories} \
++ %{Werror=poison-system-directories:--error-poison-system-directories} \
+ %{static|no-pie|static-pie:} %{L*} %(mfwrap) %(link_libgcc) " \
+ VTABLE_VERIFICATION_SPEC " " SANITIZER_EARLY_SPEC " %o " CHKP_SPEC " \
+ %{fopenacc|fopenmp|%:gt(%{ftree-parallelize-loops=*:%*} 1):\
+diff --git a/gcc/incpath.c b/gcc/incpath.c
+index b11c6a57939..e3b7a21966f 100644
+--- a/gcc/incpath.c
++++ b/gcc/incpath.c
+@@ -26,6 +26,7 @@
+ #include "intl.h"
+ #include "incpath.h"
+ #include "cppdefault.h"
++#include "diagnostic-core.h"
+
+ /* Microsoft Windows does not natively support inodes.
+ VMS has non-numeric inodes. */
+@@ -393,6 +394,26 @@ merge_include_chains (const char *sysroot, cpp_reader *pfile, int verbose)
+ }
+ fprintf (stderr, _("End of search list.\n"));
+ }
++
++#ifdef ENABLE_POISON_SYSTEM_DIRECTORIES
++ if (flag_poison_system_directories)
++ {
++ struct cpp_dir *p;
++
++ for (p = heads[INC_QUOTE]; p; p = p->next)
++ {
++ if ((!strncmp (p->name, "/usr/include", 12))
++ || (!strncmp (p->name, "/usr/local/include", 18))
++ || (!strncmp (p->name, "/usr/X11R6/include", 18))
++ || (!strncmp (p->name, "/sw/include", 11))
++ || (!strncmp (p->name, "/opt/include", 12)))
++ warning (OPT_Wpoison_system_directories,
++ "include location \"%s\" is unsafe for "
++ "cross-compilation",
++ p->name);
++ }
++ }
++#endif
+ }
+
+ /* Use given -I paths for #include "..." but not #include <...>, and
+--
+2.17.0
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-8.2/0005-gcc-4.3.3-SYSROOT_CFLAGS_FOR_TARGET.patch b/poky/meta/recipes-devtools/gcc/gcc-8.2/0005-gcc-4.3.3-SYSROOT_CFLAGS_FOR_TARGET.patch
new file mode 100644
index 000000000..8b1b9769a
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-8.2/0005-gcc-4.3.3-SYSROOT_CFLAGS_FOR_TARGET.patch
@@ -0,0 +1,73 @@
+From ae3fe6e5e50937de6e4223ca90810187372a8cf5 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 29 Mar 2013 09:08:31 +0400
+Subject: [PATCH 05/39] gcc-4.3.3: SYSROOT_CFLAGS_FOR_TARGET
+
+Before committing, I noticed that PR/32161 was marked as a dup of PR/32009, but my previous patch did not fix it.
+
+This alternative patch is better because it lets you just use CFLAGS_FOR_TARGET to set the compilation flags for libgcc. Since bootstrapped target libraries are never compiled with the native compiler, it makes little sense to use different flags for stage1 and later stages. And it also makes little sense to use a different variable than CFLAGS_FOR_TARGET.
+
+Other changes I had to do include:
+
+- moving the creation of default CFLAGS_FOR_TARGET from Makefile.am to configure.ac, because otherwise the BOOT_CFLAGS are substituted into CFLAGS_FOR_TARGET (which is "-O2 -g $(CFLAGS)") via $(CFLAGS). It is also cleaner this way though.
+
+- passing the right CFLAGS to configure scripts as exported environment variables
+
+I also stopped passing LIBCFLAGS to configure scripts since they are unused in the whole src tree. And I updated the documentation as H-P reminded me to do.
+
+Bootstrapped/regtested i686-pc-linux-gnu, will commit to 4.4 shortly. Ok for 4.3?
+
+Signed-off-by: Paolo Bonzini <bonzini@gnu.org>
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+Upstream-Status: Pending
+---
+ configure | 32 ++++++++++++++++++++++++++++++++
+ 1 file changed, 32 insertions(+)
+
+diff --git a/configure b/configure
+index 517fb70192e..acd2b97df40 100755
+--- a/configure
++++ b/configure
+@@ -6772,6 +6772,38 @@ fi
+
+
+
++# During gcc bootstrap, if we use some random cc for stage1 then CFLAGS
++# might be empty or "-g". We don't require a C++ compiler, so CXXFLAGS
++# might also be empty (or "-g", if a non-GCC C++ compiler is in the path).
++# We want to ensure that TARGET libraries (which we know are built with
++# gcc) are built with "-O2 -g", so include those options when setting
++# CFLAGS_FOR_TARGET and CXXFLAGS_FOR_TARGET.
++if test "x$CFLAGS_FOR_TARGET" = x; then
++ CFLAGS_FOR_TARGET=$CFLAGS
++ case " $CFLAGS " in
++ *" -O2 "*) ;;
++ *) CFLAGS_FOR_TARGET="-O2 $CFLAGS" ;;
++ esac
++ case " $CFLAGS " in
++ *" -g "* | *" -g3 "*) ;;
++ *) CFLAGS_FOR_TARGET="-g $CFLAGS" ;;
++ esac
++fi
++
++
++if test "x$CXXFLAGS_FOR_TARGET" = x; then
++ CXXFLAGS_FOR_TARGET=$CXXFLAGS
++ case " $CXXFLAGS " in
++ *" -O2 "*) ;;
++ *) CXXFLAGS_FOR_TARGET="-O2 $CXXFLAGS" ;;
++ esac
++ case " $CXXFLAGS " in
++ *" -g "* | *" -g3 "*) ;;
++ *) CXXFLAGS_FOR_TARGET="-g $CXXFLAGS" ;;
++ esac
++fi
++
++
+ # Handle --with-headers=XXX. If the value is not "yes", the contents of
+ # the named directory are copied to $(tooldir)/sys-include.
+ if test x"${with_headers}" != x && test x"${with_headers}" != xno ; then
+--
+2.17.0
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-8.2/0006-64-bit-multilib-hack.patch b/poky/meta/recipes-devtools/gcc/gcc-8.2/0006-64-bit-multilib-hack.patch
new file mode 100644
index 000000000..0dce95c89
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-8.2/0006-64-bit-multilib-hack.patch
@@ -0,0 +1,85 @@
+From 89af3b7399313b337f06c19cc2d787aa16d27711 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 29 Mar 2013 09:10:06 +0400
+Subject: [PATCH 06/39] 64-bit multilib hack.
+
+GCC has internal multilib handling code but it assumes a very specific rigid directory
+layout. The build system implementation of multilib layout is very generic and allows
+complete customisation of the library directories.
+
+This patch is a partial solution to allow any custom directories to be passed into gcc
+and handled correctly. It forces gcc to use the base_libdir (which is the current
+directory, "."). We need to do this for each multilib that is configured as we don't
+know which compiler options may be being passed into the compiler. Since we have a compiler
+per mulitlib at this point that isn't an issue.
+
+The one problem is the target compiler is only going to work for the default multlilib at
+this point. Ideally we'd figure out which multilibs were being enabled with which paths
+and be able to patch these entries with a complete set of correct paths but this we
+don't have such code at this point. This is something the target gcc recipe should do
+and override these platform defaults in its build config.
+
+RP 15/8/11
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+Signed-off-by: Elvis Dowson <elvis.dowson@gmail.com>
+
+Upstream-Status: Pending
+---
+ gcc/config/i386/t-linux64 | 6 ++----
+ gcc/config/mips/t-linux64 | 10 +++-------
+ gcc/config/rs6000/t-linux64 | 5 ++---
+ 3 files changed, 7 insertions(+), 14 deletions(-)
+
+diff --git a/gcc/config/i386/t-linux64 b/gcc/config/i386/t-linux64
+index 8ea0faff369..266c6008004 100644
+--- a/gcc/config/i386/t-linux64
++++ b/gcc/config/i386/t-linux64
+@@ -32,7 +32,5 @@
+ #
+ comma=,
+ MULTILIB_OPTIONS = $(subst $(comma),/,$(TM_MULTILIB_CONFIG))
+-MULTILIB_DIRNAMES = $(patsubst m%, %, $(subst /, ,$(MULTILIB_OPTIONS)))
+-MULTILIB_OSDIRNAMES = m64=../lib64$(call if_multiarch,:x86_64-linux-gnu)
+-MULTILIB_OSDIRNAMES+= m32=$(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib)$(call if_multiarch,:i386-linux-gnu)
+-MULTILIB_OSDIRNAMES+= mx32=../libx32$(call if_multiarch,:x86_64-linux-gnux32)
++MULTILIB_DIRNAMES = . .
++MULTILIB_OSDIRNAMES = ../$(shell basename $(base_libdir)) ../$(shell basename $(base_libdir))
+diff --git a/gcc/config/mips/t-linux64 b/gcc/config/mips/t-linux64
+index c017b7d04c5..126892cf40b 100644
+--- a/gcc/config/mips/t-linux64
++++ b/gcc/config/mips/t-linux64
+@@ -17,10 +17,6 @@
+ # <http://www.gnu.org/licenses/>.
+
+ MULTILIB_OPTIONS = mabi=n32/mabi=32/mabi=64
+-MULTILIB_DIRNAMES = n32 32 64
+-MIPS_EL = $(if $(filter %el, $(firstword $(subst -, ,$(target)))),el)
+-MIPS_SOFT = $(if $(strip $(filter MASK_SOFT_FLOAT_ABI, $(target_cpu_default)) $(filter soft, $(with_float))),soft)
+-MULTILIB_OSDIRNAMES = \
+- ../lib32$(call if_multiarch,:mips64$(MIPS_EL)-linux-gnuabin32$(MIPS_SOFT)) \
+- ../lib$(call if_multiarch,:mips$(MIPS_EL)-linux-gnu$(MIPS_SOFT)) \
+- ../lib64$(call if_multiarch,:mips64$(MIPS_EL)-linux-gnuabi64$(MIPS_SOFT))
++MULTILIB_DIRNAMES = . . .
++MULTILIB_OSDIRNAMES = ../$(shell basename $(base_libdir)) ../$(shell basename $(base_libdir)) ../$(shell basename $(base_libdir))
++
+diff --git a/gcc/config/rs6000/t-linux64 b/gcc/config/rs6000/t-linux64
+index 0faa2a02df4..13fd8ca971e 100644
+--- a/gcc/config/rs6000/t-linux64
++++ b/gcc/config/rs6000/t-linux64
+@@ -26,10 +26,9 @@
+ # MULTILIB_OSDIRNAMES according to what is found on the target.
+
+ MULTILIB_OPTIONS := m64/m32
+-MULTILIB_DIRNAMES := 64 32
++MULTILIB_DIRNAMES := . .
+ MULTILIB_EXTRA_OPTS :=
+-MULTILIB_OSDIRNAMES := m64=../lib64$(call if_multiarch,:powerpc64-linux-gnu)
+-MULTILIB_OSDIRNAMES += m32=$(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib)$(call if_multiarch,:powerpc-linux-gnu)
++MULTILIB_OSDIRNAMES := ../$(shell basename $(base_libdir)) ../$(shell basename $(base_libdir))
+
+ rs6000-linux.o: $(srcdir)/config/rs6000/rs6000-linux.c
+ $(COMPILE) $<
+--
+2.17.0
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-8.2/0007-optional-libstdc.patch b/poky/meta/recipes-devtools/gcc/gcc-8.2/0007-optional-libstdc.patch
new file mode 100644
index 000000000..721ea03fa
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-8.2/0007-optional-libstdc.patch
@@ -0,0 +1,125 @@
+From fb7df63e9548c29b70601d642a1850fc455f8565 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 29 Mar 2013 09:12:56 +0400
+Subject: [PATCH 07/39] optional libstdc
+
+gcc-runtime builds libstdc++ separately from gcc-cross-*. Its configure tests using g++
+will not run correctly since by default the linker will try to link against libstdc++
+which shouldn't exist yet. We need an option to disable -lstdc++
+option whilst leaving -lc, -lgcc and other automatic library dependencies added by gcc
+driver. This patch adds such an option which only disables the -lstdc++.
+
+A "standard" gcc build uses xgcc and hence avoids this. We should ask upstream how to
+do this officially, the likely answer is don't build libstdc++ separately.
+
+RP 29/6/10
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+Upstream-Status: Inappropriate [embedded specific]
+---
+ gcc/c-family/c.opt | 4 ++++
+ gcc/cp/g++spec.c | 1 +
+ gcc/doc/invoke.texi | 32 +++++++++++++++++++++++++++++++-
+ gcc/gcc.c | 1 +
+ 4 files changed, 37 insertions(+), 1 deletion(-)
+
+diff --git a/gcc/c-family/c.opt b/gcc/c-family/c.opt
+index 5013501b232..6312f2c8f90 100644
+--- a/gcc/c-family/c.opt
++++ b/gcc/c-family/c.opt
+@@ -1900,6 +1900,10 @@ nostdinc++
+ C++ ObjC++
+ Do not search standard system include directories for C++.
+
++nostdlib++
++Driver
++Do not link standard C++ runtime library
++
+ o
+ C ObjC C++ ObjC++ Joined Separate
+ ; Documented in common.opt
+diff --git a/gcc/cp/g++spec.c b/gcc/cp/g++spec.c
+index 443a1746da3..e9b51be62ef 100644
+--- a/gcc/cp/g++spec.c
++++ b/gcc/cp/g++spec.c
+@@ -137,6 +137,7 @@ lang_specific_driver (struct cl_decoded_option **in_decoded_options,
+ switch (decoded_options[i].opt_index)
+ {
+ case OPT_nostdlib:
++ case OPT_nostdlib__:
+ case OPT_nodefaultlibs:
+ library = -1;
+ break;
+diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
+index cb71b60fe3c..b0d481e3a30 100644
+--- a/gcc/doc/invoke.texi
++++ b/gcc/doc/invoke.texi
+@@ -211,6 +211,9 @@ in the following sections.
+ -fno-weak -nostdinc++ @gol
+ -fvisibility-inlines-hidden @gol
+ -fvisibility-ms-compat @gol
++-fvtable-verify=@r{[}std@r{|}preinit@r{|}none@r{]} @gol
++-fvtv-counts -fvtv-debug @gol
++-nostdlib++ @gol
+ -fext-numeric-literals @gol
+ -Wabi=@var{n} -Wabi-tag -Wconversion-null -Wctor-dtor-privacy @gol
+ -Wdelete-non-virtual-dtor -Wliteral-suffix -Wmultiple-inheritance @gol
+@@ -509,7 +512,7 @@ Objective-C and Objective-C++ Dialects}.
+ -s -static -static-pie -static-libgcc -static-libstdc++ @gol
+ -static-libasan -static-libtsan -static-liblsan -static-libubsan @gol
+ -static-libmpx -static-libmpxwrappers @gol
+--shared -shared-libgcc -symbolic @gol
++-shared -shared-libgcc -symbolic -nostdlib++ @gol
+ -T @var{script} -Wl,@var{option} -Xlinker @var{option} @gol
+ -u @var{symbol} -z @var{keyword}}
+
+@@ -12331,6 +12334,33 @@ library subroutines.
+ constructors are called; @pxref{Collect2,,@code{collect2}, gccint,
+ GNU Compiler Collection (GCC) Internals}.)
+
++@item -nostdlib++
++@opindex nostdlib++
++Do not use the standard system C++ runtime libraries when linking.
++Only the libraries you specify will be passed to the linker.
++
++@cindex @option{-lgcc}, use with @option{-nostdlib}
++@cindex @option{-nostdlib} and unresolved references
++@cindex unresolved references and @option{-nostdlib}
++@cindex @option{-lgcc}, use with @option{-nodefaultlibs}
++@cindex @option{-nodefaultlibs} and unresolved references
++@cindex unresolved references and @option{-nodefaultlibs}
++One of the standard libraries bypassed by @option{-nostdlib} and
++@option{-nodefaultlibs} is @file{libgcc.a}, a library of internal subroutines
++which GCC uses to overcome shortcomings of particular machines, or special
++needs for some languages.
++(@xref{Interface,,Interfacing to GCC Output,gccint,GNU Compiler
++Collection (GCC) Internals},
++for more discussion of @file{libgcc.a}.)
++In most cases, you need @file{libgcc.a} even when you want to avoid
++other standard libraries. In other words, when you specify @option{-nostdlib}
++or @option{-nodefaultlibs} you should usually specify @option{-lgcc} as well.
++This ensures that you have no unresolved references to internal GCC
++library subroutines.
++(An example of such an internal subroutine is @code{__main}, used to ensure C++
++constructors are called; @pxref{Collect2,,@code{collect2}, gccint,
++GNU Compiler Collection (GCC) Internals}.)
++
+ @item -pie
+ @opindex pie
+ Produce a dynamically linked position independent executable on targets
+diff --git a/gcc/gcc.c b/gcc/gcc.c
+index 02b3cd39fc2..8cd27a5dad5 100644
+--- a/gcc/gcc.c
++++ b/gcc/gcc.c
+@@ -1047,6 +1047,7 @@ proper position among the other output files. */
+ %(mflib) " STACK_SPLIT_SPEC "\
+ %{fprofile-arcs|fprofile-generate*|coverage:-lgcov} " SANITIZER_SPEC " \
+ %{!nostdlib:%{!nodefaultlibs:%(link_ssp) %(link_gcc_c_sequence)}}\
++ %{!nostdlib++:}\
+ %{!nostdlib:%{!nostartfiles:%E}} %{T*} \n%(post_link) }}}}}}"
+ #endif
+
+--
+2.17.0
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-8.2/0008-gcc-disable-MASK_RELAX_PIC_CALLS-bit.patch b/poky/meta/recipes-devtools/gcc/gcc-8.2/0008-gcc-disable-MASK_RELAX_PIC_CALLS-bit.patch
new file mode 100644
index 000000000..a76b7f735
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-8.2/0008-gcc-disable-MASK_RELAX_PIC_CALLS-bit.patch
@@ -0,0 +1,59 @@
+From 11eb97efccb90b830c84ed077a25b1a15ad3335b Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 29 Mar 2013 09:14:20 +0400
+Subject: [PATCH 08/39] gcc: disable MASK_RELAX_PIC_CALLS bit
+
+The new feature added after 4.3.3
+"http://www.pubbs.net/200909/gcc/94048-patch-add-support-for-rmipsjalr.html"
+will cause cc1plus eat up all the system memory when build webkit-gtk.
+The function mips_get_pic_call_symbol keeps on recursively calling itself.
+Disable this feature to walk aside the bug.
+
+Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+Upstream-Status: Inappropriate [configuration]
+---
+ gcc/configure | 7 -------
+ gcc/configure.ac | 7 -------
+ 2 files changed, 14 deletions(-)
+
+diff --git a/gcc/configure b/gcc/configure
+index cafd05fd150..19ba051d673 100755
+--- a/gcc/configure
++++ b/gcc/configure
+@@ -27553,13 +27553,6 @@ $as_echo_n "checking assembler and linker for explicit JALR relocation... " >&6;
+ rm -f conftest.*
+ fi
+ fi
+- if test $gcc_cv_as_ld_jalr_reloc = yes; then
+- if test x$target_cpu_default = x; then
+- target_cpu_default=MASK_RELAX_PIC_CALLS
+- else
+- target_cpu_default="($target_cpu_default)|MASK_RELAX_PIC_CALLS"
+- fi
+- fi
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gcc_cv_as_ld_jalr_reloc" >&5
+ $as_echo "$gcc_cv_as_ld_jalr_reloc" >&6; }
+
+diff --git a/gcc/configure.ac b/gcc/configure.ac
+index dd5b38195ce..066dfe19bb6 100644
+--- a/gcc/configure.ac
++++ b/gcc/configure.ac
+@@ -4798,13 +4798,6 @@ x:
+ rm -f conftest.*
+ fi
+ fi
+- if test $gcc_cv_as_ld_jalr_reloc = yes; then
+- if test x$target_cpu_default = x; then
+- target_cpu_default=MASK_RELAX_PIC_CALLS
+- else
+- target_cpu_default="($target_cpu_default)|MASK_RELAX_PIC_CALLS"
+- fi
+- fi
+ AC_MSG_RESULT($gcc_cv_as_ld_jalr_reloc)
+
+ AC_CACHE_CHECK([linker for .eh_frame personality relaxation],
+--
+2.17.0
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-8.2/0009-COLLECT_GCC_OPTIONS.patch b/poky/meta/recipes-devtools/gcc/gcc-8.2/0009-COLLECT_GCC_OPTIONS.patch
new file mode 100644
index 000000000..3abece0da
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-8.2/0009-COLLECT_GCC_OPTIONS.patch
@@ -0,0 +1,38 @@
+From e19d25847f08eeb5ef26a031fa5eff732bfd0d43 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 29 Mar 2013 09:16:28 +0400
+Subject: [PATCH 09/39] COLLECT_GCC_OPTIONS
+
+This patch adds --sysroot into COLLECT_GCC_OPTIONS which is used to
+invoke collect2.
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+Upstream-Status: Pending
+---
+ gcc/gcc.c | 9 +++++++++
+ 1 file changed, 9 insertions(+)
+
+diff --git a/gcc/gcc.c b/gcc/gcc.c
+index 8cd27a5dad5..d355d65583a 100644
+--- a/gcc/gcc.c
++++ b/gcc/gcc.c
+@@ -4677,6 +4677,15 @@ set_collect_gcc_options (void)
+ sizeof ("COLLECT_GCC_OPTIONS=") - 1);
+
+ first_time = TRUE;
++#ifdef HAVE_LD_SYSROOT
++ if (target_system_root_changed && target_system_root)
++ {
++ obstack_grow (&collect_obstack, "'--sysroot=", sizeof("'--sysroot=")-1);
++ obstack_grow (&collect_obstack, target_system_root,strlen(target_system_root));
++ obstack_grow (&collect_obstack, "'", 1);
++ first_time = FALSE;
++ }
++#endif
+ for (i = 0; (int) i < n_switches; i++)
+ {
+ const char *const *args;
+--
+2.17.0
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-8.2/0010-Use-the-defaults.h-in-B-instead-of-S-and-t-oe-in-B.patch b/poky/meta/recipes-devtools/gcc/gcc-8.2/0010-Use-the-defaults.h-in-B-instead-of-S-and-t-oe-in-B.patch
new file mode 100644
index 000000000..5785b5893
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-8.2/0010-Use-the-defaults.h-in-B-instead-of-S-and-t-oe-in-B.patch
@@ -0,0 +1,96 @@
+From 265cb883c310f3bb7e49fd13b81362476fbeb6c1 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 29 Mar 2013 09:17:25 +0400
+Subject: [PATCH 10/39] Use the defaults.h in ${B} instead of ${S}, and t-oe in
+ ${B}
+
+Use the defaults.h in ${B} instead of ${S}, and t-oe in ${B}, so that
+the source can be shared between gcc-cross-initial,
+gcc-cross-intermediate, gcc-cross, gcc-runtime, and also the sdk build.
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+Upstream-Status: Pending
+
+While compiling gcc-crosssdk-initial-x86_64 on some host, there is
+occasionally failure that test the existance of default.h doesn't
+work, the reason is tm_include_list='** defaults.h' rather than
+tm_include_list='** ./defaults.h'
+
+So we add the test condition for this situation.
+Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
+---
+ gcc/Makefile.in | 2 +-
+ gcc/configure | 4 ++--
+ gcc/configure.ac | 4 ++--
+ gcc/mkconfig.sh | 4 ++--
+ 4 files changed, 7 insertions(+), 7 deletions(-)
+
+diff --git a/gcc/Makefile.in b/gcc/Makefile.in
+index 20bee0494b1..1367136bfac 100644
+--- a/gcc/Makefile.in
++++ b/gcc/Makefile.in
+@@ -538,7 +538,7 @@ TARGET_SYSTEM_ROOT = @TARGET_SYSTEM_ROOT@
+ TARGET_SYSTEM_ROOT_DEFINE = @TARGET_SYSTEM_ROOT_DEFINE@
+
+ xmake_file=@xmake_file@
+-tmake_file=@tmake_file@
++tmake_file=@tmake_file@ ./t-oe
+ TM_ENDIAN_CONFIG=@TM_ENDIAN_CONFIG@
+ TM_MULTILIB_CONFIG=@TM_MULTILIB_CONFIG@
+ TM_MULTILIB_EXCEPTIONS_CONFIG=@TM_MULTILIB_EXCEPTIONS_CONFIG@
+diff --git a/gcc/configure b/gcc/configure
+index 19ba051d673..a575839c1b2 100755
+--- a/gcc/configure
++++ b/gcc/configure
+@@ -12158,8 +12158,8 @@ for f in $tm_file; do
+ tm_include_list="${tm_include_list} $f"
+ ;;
+ defaults.h )
+- tm_file_list="${tm_file_list} \$(srcdir)/$f"
+- tm_include_list="${tm_include_list} $f"
++ tm_file_list="${tm_file_list} ./$f"
++ tm_include_list="${tm_include_list} ./$f"
+ ;;
+ * )
+ tm_file_list="${tm_file_list} \$(srcdir)/config/$f"
+diff --git a/gcc/configure.ac b/gcc/configure.ac
+index 066dfe19bb6..676116a6d96 100644
+--- a/gcc/configure.ac
++++ b/gcc/configure.ac
+@@ -1922,8 +1922,8 @@ for f in $tm_file; do
+ tm_include_list="${tm_include_list} $f"
+ ;;
+ defaults.h )
+- tm_file_list="${tm_file_list} \$(srcdir)/$f"
+- tm_include_list="${tm_include_list} $f"
++ tm_file_list="${tm_file_list} ./$f"
++ tm_include_list="${tm_include_list} ./$f"
+ ;;
+ * )
+ tm_file_list="${tm_file_list} \$(srcdir)/config/$f"
+diff --git a/gcc/mkconfig.sh b/gcc/mkconfig.sh
+index 0f75c863c0b..68d8d6613cf 100644
+--- a/gcc/mkconfig.sh
++++ b/gcc/mkconfig.sh
+@@ -77,7 +77,7 @@ if [ -n "$HEADERS" ]; then
+ if [ $# -ge 1 ]; then
+ echo '#ifdef IN_GCC' >> ${output}T
+ for file in "$@"; do
+- if test x"$file" = x"defaults.h"; then
++ if test x"$file" = x"./defaults.h" -o x"$file" = x"defaults.h"; then
+ postpone_defaults_h="yes"
+ else
+ echo "# include \"$file\"" >> ${output}T
+@@ -106,7 +106,7 @@ esac
+
+ # If we postponed including defaults.h, add the #include now.
+ if test x"$postpone_defaults_h" = x"yes"; then
+- echo "# include \"defaults.h\"" >> ${output}T
++ echo "# include \"./defaults.h\"" >> ${output}T
+ fi
+
+ # Add multiple inclusion protection guard, part two.
+--
+2.17.0
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-8.2/0011-fortran-cross-compile-hack.patch b/poky/meta/recipes-devtools/gcc/gcc-8.2/0011-fortran-cross-compile-hack.patch
new file mode 100644
index 000000000..fe0fb7d53
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-8.2/0011-fortran-cross-compile-hack.patch
@@ -0,0 +1,46 @@
+From 71cba188d47b6ae9d9b87261eb4bc9eb68ae355d Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 29 Mar 2013 09:20:01 +0400
+Subject: [PATCH 11/39] fortran cross-compile hack.
+
+* Fortran would have searched for arm-angstrom-gnueabi-gfortran but would have used
+used gfortan. For gcc_4.2.2.bb we want to use the gfortran compiler from our cross
+directory.
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+Upstream-Status: Inappropriate [embedded specific]
+---
+ libgfortran/configure | 2 +-
+ libgfortran/configure.ac | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/libgfortran/configure b/libgfortran/configure
+index 91fce8fecd0..6747f86eb98 100755
+--- a/libgfortran/configure
++++ b/libgfortran/configure
+@@ -12883,7 +12883,7 @@ esac
+
+ # We need gfortran to compile parts of the library
+ #AC_PROG_FC(gfortran)
+-FC="$GFORTRAN"
++#FC="$GFORTRAN"
+ ac_ext=${ac_fc_srcext-f}
+ ac_compile='$FC -c $FCFLAGS $ac_fcflags_srcext conftest.$ac_ext >&5'
+ ac_link='$FC -o conftest$ac_exeext $FCFLAGS $LDFLAGS $ac_fcflags_srcext conftest.$ac_ext $LIBS >&5'
+diff --git a/libgfortran/configure.ac b/libgfortran/configure.ac
+index bf6d3634dda..9dbe43cc616 100644
+--- a/libgfortran/configure.ac
++++ b/libgfortran/configure.ac
+@@ -250,7 +250,7 @@ AC_SUBST(enable_static)
+
+ # We need gfortran to compile parts of the library
+ #AC_PROG_FC(gfortran)
+-FC="$GFORTRAN"
++#FC="$GFORTRAN"
+ AC_PROG_FC(gfortran)
+
+ # extra LD Flags which are required for targets
+--
+2.17.0
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-8.2/0012-cpp-honor-sysroot.patch b/poky/meta/recipes-devtools/gcc/gcc-8.2/0012-cpp-honor-sysroot.patch
new file mode 100644
index 000000000..961f96f11
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-8.2/0012-cpp-honor-sysroot.patch
@@ -0,0 +1,54 @@
+From b3e8e7e8ae106e3207e9edc3d23dcce1464b755f Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 29 Mar 2013 09:22:00 +0400
+Subject: [PATCH 12/39] cpp: honor sysroot.
+
+Currently, if the gcc toolchain is relocated and installed from sstate, then you try and compile
+preprocessed source (.i or .ii files), the compiler will try and access the builtin sysroot location
+rather than the --sysroot option specified on the commandline. If access to that directory is
+permission denied (unreadable), gcc will error.
+
+This happens when ccache is in use due to the fact it uses preprocessed source files.
+
+The fix below adds %I to the cpp-output spec macro so the default substitutions for -iprefix,
+-isystem, -isysroot happen and the correct sysroot is used.
+
+[YOCTO #2074]
+
+RP 2012/04/13
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+Upstream-Status: Pending
+---
+ gcc/cp/lang-specs.h | 2 +-
+ gcc/gcc.c | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/gcc/cp/lang-specs.h b/gcc/cp/lang-specs.h
+index f0802b8915c..f324d299849 100644
+--- a/gcc/cp/lang-specs.h
++++ b/gcc/cp/lang-specs.h
+@@ -64,5 +64,5 @@ along with GCC; see the file COPYING3. If not see
+ {".ii", "@c++-cpp-output", 0, 0, 0},
+ {"@c++-cpp-output",
+ "%{!M:%{!MM:%{!E:\
+- cc1plus -fpreprocessed %i %(cc1_options) %2\
++ cc1plus -fpreprocessed %i %I %(cc1_options) %2\
+ %{!fsyntax-only:%(invoke_as)}}}}", 0, 0, 0},
+diff --git a/gcc/gcc.c b/gcc/gcc.c
+index d355d65583a..570cdc00034 100644
+--- a/gcc/gcc.c
++++ b/gcc/gcc.c
+@@ -1343,7 +1343,7 @@ static const struct compiler default_compilers[] =
+ %W{o*:--output-pch=%*}}%V}}}}}}}", 0, 0, 0},
+ {".i", "@cpp-output", 0, 0, 0},
+ {"@cpp-output",
+- "%{!M:%{!MM:%{!E:cc1 -fpreprocessed %i %(cc1_options) %{!fsyntax-only:%(invoke_as)}}}}", 0, 0, 0},
++ "%{!M:%{!MM:%{!E:cc1 -fpreprocessed %i %I %(cc1_options) %{!fsyntax-only:%(invoke_as)}}}}", 0, 0, 0},
+ {".s", "@assembler", 0, 0, 0},
+ {"@assembler",
+ "%{!M:%{!MM:%{!E:%{!S:as %(asm_debug) %(asm_options) %i %A }}}}", 0, 0, 0},
+--
+2.17.0
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-8.2/0013-MIPS64-Default-to-N64-ABI.patch b/poky/meta/recipes-devtools/gcc/gcc-8.2/0013-MIPS64-Default-to-N64-ABI.patch
new file mode 100644
index 000000000..8ef8806b2
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-8.2/0013-MIPS64-Default-to-N64-ABI.patch
@@ -0,0 +1,57 @@
+From 0f3629978cd7c98614e87d4fd190b89864221631 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 29 Mar 2013 09:23:08 +0400
+Subject: [PATCH 13/39] MIPS64: Default to N64 ABI
+
+MIPS64 defaults to n32 ABI, this patch makes it
+so that it defaults to N64 ABI
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+Upstream-Status: Inappropriate [OE config specific]
+---
+ gcc/config.gcc | 10 +++++-----
+ 1 file changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/gcc/config.gcc b/gcc/config.gcc
+index 8741dd1e3b2..2ffcb39d85f 100644
+--- a/gcc/config.gcc
++++ b/gcc/config.gcc
+@@ -2137,29 +2137,29 @@ mips*-*-linux*) # Linux MIPS, either endian.
+ default_mips_arch=mips32
+ ;;
+ mips64el-st-linux-gnu)
+- default_mips_abi=n32
++ default_mips_abi=64
+ tm_file="${tm_file} mips/st.h"
+ tmake_file="${tmake_file} mips/t-st"
+ enable_mips_multilibs="yes"
+ ;;
+ mips64octeon*-*-linux*)
+- default_mips_abi=n32
++ default_mips_abi=64
+ tm_defines="${tm_defines} MIPS_CPU_STRING_DEFAULT=\\\"octeon\\\""
+ target_cpu_default=MASK_SOFT_FLOAT_ABI
+ enable_mips_multilibs="yes"
+ ;;
+ mipsisa64r6*-*-linux*)
+- default_mips_abi=n32
++ default_mips_abi=64
+ default_mips_arch=mips64r6
+ enable_mips_multilibs="yes"
+ ;;
+ mipsisa64r2*-*-linux*)
+- default_mips_abi=n32
++ default_mips_abi=64
+ default_mips_arch=mips64r2
+ enable_mips_multilibs="yes"
+ ;;
+ mips64*-*-linux* | mipsisa64*-*-linux*)
+- default_mips_abi=n32
++ default_mips_abi=64
+ enable_mips_multilibs="yes"
+ ;;
+ esac
+--
+2.17.0
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-8.2/0014-Define-GLIBC_DYNAMIC_LINKER-and-UCLIBC_DYNAMIC_LINKE.patch b/poky/meta/recipes-devtools/gcc/gcc-8.2/0014-Define-GLIBC_DYNAMIC_LINKER-and-UCLIBC_DYNAMIC_LINKE.patch
new file mode 100644
index 000000000..043bb9dd2
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-8.2/0014-Define-GLIBC_DYNAMIC_LINKER-and-UCLIBC_DYNAMIC_LINKE.patch
@@ -0,0 +1,248 @@
+From 53f1c382b1366c5621c8edead9c766950c290fd9 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 29 Mar 2013 09:24:50 +0400
+Subject: [PATCH 14/39] Define GLIBC_DYNAMIC_LINKER and UCLIBC_DYNAMIC_LINKER
+ relative to SYSTEMLIBS_DIR
+
+This patch defines GLIBC_DYNAMIC_LINKER and UCLIBC_DYNAMIC_LINKER
+relative to SYSTEMLIBS_DIR which can be set in generated headers
+This breaks the assumption of hardcoded multilib in gcc
+Change is only for the supported architectures in OE including
+SH, sparc, alpha for possible future support (if any)
+
+Removes the do_headerfix task in metadata
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+Upstream-Status: Inappropriate [OE configuration]
+---
+ gcc/config/alpha/linux-elf.h | 4 ++--
+ gcc/config/arm/linux-eabi.h | 4 ++--
+ gcc/config/arm/linux-elf.h | 2 +-
+ gcc/config/i386/linux.h | 2 +-
+ gcc/config/i386/linux64.h | 6 +++---
+ gcc/config/linux.h | 8 ++++----
+ gcc/config/mips/linux.h | 12 ++++++------
+ gcc/config/riscv/linux.h | 2 +-
+ gcc/config/rs6000/linux64.h | 16 ++++++----------
+ gcc/config/sh/linux.h | 2 +-
+ gcc/config/sparc/linux.h | 2 +-
+ gcc/config/sparc/linux64.h | 4 ++--
+ 12 files changed, 30 insertions(+), 34 deletions(-)
+
+diff --git a/gcc/config/alpha/linux-elf.h b/gcc/config/alpha/linux-elf.h
+index 36b74dc1993..02373578af8 100644
+--- a/gcc/config/alpha/linux-elf.h
++++ b/gcc/config/alpha/linux-elf.h
+@@ -23,8 +23,8 @@ along with GCC; see the file COPYING3. If not see
+ #define EXTRA_SPECS \
+ { "elf_dynamic_linker", ELF_DYNAMIC_LINKER },
+
+-#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2"
+-#define UCLIBC_DYNAMIC_LINKER "/lib/ld-uClibc.so.0"
++#define GLIBC_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-linux.so.2"
++#define UCLIBC_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-uClibc.so.0"
+ #if DEFAULT_LIBC == LIBC_UCLIBC
+ #define CHOOSE_DYNAMIC_LINKER(G, U) "%{mglibc:" G ";:" U "}"
+ #elif DEFAULT_LIBC == LIBC_GLIBC
+diff --git a/gcc/config/arm/linux-eabi.h b/gcc/config/arm/linux-eabi.h
+index 8585fde3d41..b3af68cac57 100644
+--- a/gcc/config/arm/linux-eabi.h
++++ b/gcc/config/arm/linux-eabi.h
+@@ -62,8 +62,8 @@
+ GLIBC_DYNAMIC_LINKER_DEFAULT and TARGET_DEFAULT_FLOAT_ABI. */
+
+ #undef GLIBC_DYNAMIC_LINKER
+-#define GLIBC_DYNAMIC_LINKER_SOFT_FLOAT "/lib/ld-linux.so.3"
+-#define GLIBC_DYNAMIC_LINKER_HARD_FLOAT "/lib/ld-linux-armhf.so.3"
++#define GLIBC_DYNAMIC_LINKER_SOFT_FLOAT SYSTEMLIBS_DIR "ld-linux.so.3"
++#define GLIBC_DYNAMIC_LINKER_HARD_FLOAT SYSTEMLIBS_DIR "ld-linux-armhf.so.3"
+ #define GLIBC_DYNAMIC_LINKER_DEFAULT GLIBC_DYNAMIC_LINKER_SOFT_FLOAT
+
+ #define GLIBC_DYNAMIC_LINKER \
+diff --git a/gcc/config/arm/linux-elf.h b/gcc/config/arm/linux-elf.h
+index cfcd9cb1a5c..a798e987ecb 100644
+--- a/gcc/config/arm/linux-elf.h
++++ b/gcc/config/arm/linux-elf.h
+@@ -60,7 +60,7 @@
+
+ #define LIBGCC_SPEC "%{mfloat-abi=soft*:-lfloat} -lgcc"
+
+-#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2"
++#define GLIBC_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-linux.so.2"
+
+ #define LINUX_TARGET_LINK_SPEC "%{h*} \
+ %{static:-Bstatic} \
+diff --git a/gcc/config/i386/linux.h b/gcc/config/i386/linux.h
+index 69f97f15b0d..71bc31d9231 100644
+--- a/gcc/config/i386/linux.h
++++ b/gcc/config/i386/linux.h
+@@ -20,7 +20,7 @@ along with GCC; see the file COPYING3. If not see
+ <http://www.gnu.org/licenses/>. */
+
+ #define GNU_USER_LINK_EMULATION "elf_i386"
+-#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2"
++#define GLIBC_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-linux.so.2"
+
+ #undef MUSL_DYNAMIC_LINKER
+ #define MUSL_DYNAMIC_LINKER "/lib/ld-musl-i386.so.1"
+diff --git a/gcc/config/i386/linux64.h b/gcc/config/i386/linux64.h
+index f2d913e30ac..8725f33d8a5 100644
+--- a/gcc/config/i386/linux64.h
++++ b/gcc/config/i386/linux64.h
+@@ -27,9 +27,9 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
+ #define GNU_USER_LINK_EMULATION64 "elf_x86_64"
+ #define GNU_USER_LINK_EMULATIONX32 "elf32_x86_64"
+
+-#define GLIBC_DYNAMIC_LINKER32 "/lib/ld-linux.so.2"
+-#define GLIBC_DYNAMIC_LINKER64 "/lib64/ld-linux-x86-64.so.2"
+-#define GLIBC_DYNAMIC_LINKERX32 "/libx32/ld-linux-x32.so.2"
++#define GLIBC_DYNAMIC_LINKER32 SYSTEMLIBS_DIR "ld-linux.so.2"
++#define GLIBC_DYNAMIC_LINKER64 SYSTEMLIBS_DIR "ld-linux-x86-64.so.2"
++#define GLIBC_DYNAMIC_LINKERX32 SYSTEMLIBS_DIR "ld-linux-x32.so.2"
+
+ #undef MUSL_DYNAMIC_LINKER32
+ #define MUSL_DYNAMIC_LINKER32 "/lib/ld-musl-i386.so.1"
+diff --git a/gcc/config/linux.h b/gcc/config/linux.h
+index 2ea4ff92c1d..487b0c0923b 100644
+--- a/gcc/config/linux.h
++++ b/gcc/config/linux.h
+@@ -81,10 +81,10 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
+ GLIBC_DYNAMIC_LINKER must be defined for each target using them, or
+ GLIBC_DYNAMIC_LINKER32 and GLIBC_DYNAMIC_LINKER64 for targets
+ supporting both 32-bit and 64-bit compilation. */
+-#define UCLIBC_DYNAMIC_LINKER "/lib/ld-uClibc.so.0"
+-#define UCLIBC_DYNAMIC_LINKER32 "/lib/ld-uClibc.so.0"
+-#define UCLIBC_DYNAMIC_LINKER64 "/lib/ld64-uClibc.so.0"
+-#define UCLIBC_DYNAMIC_LINKERX32 "/lib/ldx32-uClibc.so.0"
++#define UCLIBC_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-uClibc.so.0"
++#define UCLIBC_DYNAMIC_LINKER32 SYSTEMLIBS_DIR "ld-uClibc.so.0"
++#define UCLIBC_DYNAMIC_LINKER64 SYSTEMLIBS_DIR "ld64-uClibc.so.0"
++#define UCLIBC_DYNAMIC_LINKERX32 SYSTEMLIBS_DIR "ldx32-uClibc.so.0"
+ #define BIONIC_DYNAMIC_LINKER "/system/bin/linker"
+ #define BIONIC_DYNAMIC_LINKER32 "/system/bin/linker"
+ #define BIONIC_DYNAMIC_LINKER64 "/system/bin/linker64"
+diff --git a/gcc/config/mips/linux.h b/gcc/config/mips/linux.h
+index 2dfd0c18b90..12057c51b5e 100644
+--- a/gcc/config/mips/linux.h
++++ b/gcc/config/mips/linux.h
+@@ -22,20 +22,20 @@ along with GCC; see the file COPYING3. If not see
+ #define GNU_USER_LINK_EMULATIONN32 "elf32%{EB:b}%{EL:l}tsmipn32"
+
+ #define GLIBC_DYNAMIC_LINKER32 \
+- "%{mnan=2008:/lib/ld-linux-mipsn8.so.1;:/lib/ld.so.1}"
++ "%{mnan=2008:" SYSTEMLIBS_DIR "ld-linux-mipsn8.so.1;:" SYSTEMLIBS_DIR "ld.so.1}"
+ #define GLIBC_DYNAMIC_LINKER64 \
+- "%{mnan=2008:/lib64/ld-linux-mipsn8.so.1;:/lib64/ld.so.1}"
++ "%{mnan=2008:" SYSTEMLIBS_DIR "ld-linux-mipsn8.so.1;:" SYSTEMLIBS_DIR "ld.so.1}"
+ #define GLIBC_DYNAMIC_LINKERN32 \
+- "%{mnan=2008:/lib32/ld-linux-mipsn8.so.1;:/lib32/ld.so.1}"
++ "%{mnan=2008:" SYSTEMLIBS_DIR "ld-linux-mipsn8.so.1;:" SYSTEMLIBS_DIR "ld.so.1}"
+
+ #undef UCLIBC_DYNAMIC_LINKER32
+ #define UCLIBC_DYNAMIC_LINKER32 \
+- "%{mnan=2008:/lib/ld-uClibc-mipsn8.so.0;:/lib/ld-uClibc.so.0}"
++ "%{mnan=2008:" SYSTEMLIBS_DIR "ld-uClibc-mipsn8.so.0;:" SYSTEMLIBS_DIR "ld-uClibc.so.0}"
+ #undef UCLIBC_DYNAMIC_LINKER64
+ #define UCLIBC_DYNAMIC_LINKER64 \
+- "%{mnan=2008:/lib/ld64-uClibc-mipsn8.so.0;:/lib/ld64-uClibc.so.0}"
++ "%{mnan=2008:" SYSTEMLIBS_DIR "ld64-uClibc-mipsn8.so.0;:" SYSTEMLIBS_DIR "ld64-uClibc.so.0}"
+ #define UCLIBC_DYNAMIC_LINKERN32 \
+- "%{mnan=2008:/lib32/ld-uClibc-mipsn8.so.0;:/lib32/ld-uClibc.so.0}"
++ "%{mnan=2008:" SYSTEMLIBS_DIR "ld-uClibc-mipsn8.so.0;:" SYSTEMLIBS_DIR "ld-uClibc.so.0}"
+
+ #undef MUSL_DYNAMIC_LINKER32
+ #define MUSL_DYNAMIC_LINKER32 \
+diff --git a/gcc/config/riscv/linux.h b/gcc/config/riscv/linux.h
+index aa8a28d5d..ebf9551c9 100644
+--- a/gcc/config/riscv/linux.h
++++ b/gcc/config/riscv/linux.h
+@@ -22,7 +22,7 @@ along with GCC; see the file COPYING3.
+ GNU_USER_TARGET_OS_CPP_BUILTINS(); \
+ } while (0)
+
+-#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux-riscv" XLEN_SPEC "-" ABI_SPEC ".so.1"
++#define GLIBC_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-linux-riscv" XLEN_SPEC "-" ABI_SPEC ".so.1"
+
+ #define MUSL_ABI_SUFFIX \
+ "%{mabi=ilp32:-sf}" \
+diff --git a/gcc/config/rs6000/linux64.h b/gcc/config/rs6000/linux64.h
+index 90fe6566255..55695dadd91 100644
+--- a/gcc/config/rs6000/linux64.h
++++ b/gcc/config/rs6000/linux64.h
+@@ -420,16 +420,11 @@ extern int dot_symbols;
+ #undef LINK_OS_DEFAULT_SPEC
+ #define LINK_OS_DEFAULT_SPEC "%(link_os_linux)"
+
+-#define GLIBC_DYNAMIC_LINKER32 "%(dynamic_linker_prefix)/lib/ld.so.1"
+-
++#define GLIBC_DYNAMIC_LINKER32 SYSTEMLIBS_DIR "ld.so.1"
+ #ifdef LINUX64_DEFAULT_ABI_ELFv2
+-#define GLIBC_DYNAMIC_LINKER64 \
+-"%{mabi=elfv1:%(dynamic_linker_prefix)/lib64/ld64.so.1;" \
+-":%(dynamic_linker_prefix)/lib64/ld64.so.2}"
++#define GLIBC_DYNAMIC_LINKER64 "%{mabi=elfv1:" SYSTEMLIBS_DIR "ld64.so.1;:" SYSTEMLIBS_DIR "ld64.so.2}"
+ #else
+-#define GLIBC_DYNAMIC_LINKER64 \
+-"%{mabi=elfv2:%(dynamic_linker_prefix)/lib64/ld64.so.2;" \
+-":%(dynamic_linker_prefix)/lib64/ld64.so.1}"
++#define GLIBC_DYNAMIC_LINKER64 "%{mabi=elfv2:" SYSTEMLIBS_DIR "ld64.so.2;:" SYSTEMLIBS_DIR "ld64.so.1}"
+ #endif
+
+ #define MUSL_DYNAMIC_LINKER32 \
+@@ -437,8 +432,9 @@ extern int dot_symbols;
+ #define MUSL_DYNAMIC_LINKER64 \
+ "/lib/ld-musl-powerpc64" MUSL_DYNAMIC_LINKER_E "%{msoft-float:-sf}.so.1"
+
+-#define UCLIBC_DYNAMIC_LINKER32 "/lib/ld-uClibc.so.0"
+-#define UCLIBC_DYNAMIC_LINKER64 "/lib/ld64-uClibc.so.0"
++#define UCLIBC_DYNAMIC_LINKER32 SYSTEMLIBS_DIR "ld-uClibc.so.0"
++#define UCLIBC_DYNAMIC_LINKER64 SYSTEMLIBS_DIR "ld64-uClibc.so.0"
++
+ #if DEFAULT_LIBC == LIBC_UCLIBC
+ #define CHOOSE_DYNAMIC_LINKER(G, U, M) \
+ "%{mglibc:" G ";:%{mmusl:" M ";:" U "}}"
+diff --git a/gcc/config/sh/linux.h b/gcc/config/sh/linux.h
+index 6d2ccd012ba..ec78a89ce15 100644
+--- a/gcc/config/sh/linux.h
++++ b/gcc/config/sh/linux.h
+@@ -64,7 +64,7 @@ along with GCC; see the file COPYING3. If not see
+ "/lib/ld-musl-sh" MUSL_DYNAMIC_LINKER_E MUSL_DYNAMIC_LINKER_FP \
+ "%{mfdpic:-fdpic}.so.1"
+
+-#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2"
++#define GLIBC_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-linux.so.2"
+
+ #undef SUBTARGET_LINK_EMUL_SUFFIX
+ #define SUBTARGET_LINK_EMUL_SUFFIX "%{mfdpic:_fd;:_linux}"
+diff --git a/gcc/config/sparc/linux.h b/gcc/config/sparc/linux.h
+index 9fb03af0fe9..401fddbbb22 100644
+--- a/gcc/config/sparc/linux.h
++++ b/gcc/config/sparc/linux.h
+@@ -83,7 +83,7 @@ extern const char *host_detect_local_cpu (int argc, const char **argv);
+ When the -shared link option is used a final link is not being
+ done. */
+
+-#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2"
++#define GLIBC_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-linux.so.2"
+
+ #undef LINK_SPEC
+ #define LINK_SPEC "-m elf32_sparc %{shared:-shared} \
+diff --git a/gcc/config/sparc/linux64.h b/gcc/config/sparc/linux64.h
+index c1fe42165b7..26a79bfa2e3 100644
+--- a/gcc/config/sparc/linux64.h
++++ b/gcc/config/sparc/linux64.h
+@@ -84,8 +84,8 @@ along with GCC; see the file COPYING3. If not see
+ When the -shared link option is used a final link is not being
+ done. */
+
+-#define GLIBC_DYNAMIC_LINKER32 "/lib/ld-linux.so.2"
+-#define GLIBC_DYNAMIC_LINKER64 "/lib64/ld-linux.so.2"
++#define GLIBC_DYNAMIC_LINKER32 SYSTEMLIBS_DIR "ld-linux.so.2"
++#define GLIBC_DYNAMIC_LINKER64 SYSTEMLIBS_DIR "ld-linux.so.2"
+
+ #ifdef SPARC_BI_ARCH
+
+--
+2.17.0
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-8.2/0015-gcc-Fix-argument-list-too-long-error.patch b/poky/meta/recipes-devtools/gcc/gcc-8.2/0015-gcc-Fix-argument-list-too-long-error.patch
new file mode 100644
index 000000000..4bff84285
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-8.2/0015-gcc-Fix-argument-list-too-long-error.patch
@@ -0,0 +1,40 @@
+From 2e75a14cd60227e036790184f0eb400abc3c870b Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 29 Mar 2013 09:26:37 +0400
+Subject: [PATCH 15/39] gcc: Fix argument list too long error.
+
+There would be an "Argument list too long" error when the
+build directory is longer than 200, this is caused by:
+
+headers=`echo $(PLUGIN_HEADERS) | tr ' ' '\012' | sort -u`
+
+The PLUGIN_HEADERS is too long before sort, so the "echo" can't handle
+it, use the $(sort list) of GNU make which can handle the too long list
+would fix the problem, the header would be short enough after sorted.
+The "tr ' ' '\012'" was used for translating the space to "\n", the
+$(sort list) doesn't need this.
+
+Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+Upstream-Status: Pending
+---
+ gcc/Makefile.in | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/gcc/Makefile.in b/gcc/Makefile.in
+index 1367136bfac..71a8275c39f 100644
+--- a/gcc/Makefile.in
++++ b/gcc/Makefile.in
+@@ -3538,7 +3538,7 @@ install-plugin: installdirs lang.install-plugin s-header-vars install-gengtype
+ # We keep the directory structure for files in config or c-family and .def
+ # files. All other files are flattened to a single directory.
+ $(mkinstalldirs) $(DESTDIR)$(plugin_includedir)
+- headers=`echo $(PLUGIN_HEADERS) $$(cd $(srcdir); echo *.h *.def) | tr ' ' '\012' | sort -u`; \
++ headers="$(sort $(PLUGIN_HEADERS) $$(cd $(srcdir); echo *.h *.def))"; \
+ srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`; \
+ for file in $$headers; do \
+ if [ -f $$file ] ; then \
+--
+2.17.0
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-8.2/0016-Disable-sdt.patch b/poky/meta/recipes-devtools/gcc/gcc-8.2/0016-Disable-sdt.patch
new file mode 100644
index 000000000..819754620
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-8.2/0016-Disable-sdt.patch
@@ -0,0 +1,113 @@
+From 423d87ac47d21e399d759d7ff3b638f0c721a7df Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 29 Mar 2013 09:28:10 +0400
+Subject: [PATCH 16/39] Disable sdt.
+
+We don't list dtrace in DEPENDS so we shouldn't be depending on this header.
+It may or may not exist from preivous builds though. To be determinstic, disable
+sdt.h usage always. This avoids build failures if the header is removed after configure
+but before libgcc is compiled for example.
+
+RP 2012/8/7
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+Disable sdt for libstdc++-v3.
+
+Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
+
+Upstream-Status: Inappropriate [hack]
+---
+ gcc/configure | 12 ++++++------
+ gcc/configure.ac | 18 +++++++++---------
+ libstdc++-v3/configure | 6 +++---
+ libstdc++-v3/configure.ac | 2 +-
+ 4 files changed, 19 insertions(+), 19 deletions(-)
+
+diff --git a/gcc/configure b/gcc/configure
+index a575839c1b2..872338f29b6 100755
+--- a/gcc/configure
++++ b/gcc/configure
+@@ -29296,12 +29296,12 @@ fi
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking sys/sdt.h in the target C library" >&5
+ $as_echo_n "checking sys/sdt.h in the target C library... " >&6; }
+ have_sys_sdt_h=no
+-if test -f $target_header_dir/sys/sdt.h; then
+- have_sys_sdt_h=yes
+-
+-$as_echo "#define HAVE_SYS_SDT_H 1" >>confdefs.h
+-
+-fi
++#if test -f $target_header_dir/sys/sdt.h; then
++# have_sys_sdt_h=yes
++#
++#$as_echo "#define HAVE_SYS_SDT_H 1" >>confdefs.h
++#
++#fi
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $have_sys_sdt_h" >&5
+ $as_echo "$have_sys_sdt_h" >&6; }
+
+diff --git a/gcc/configure.ac b/gcc/configure.ac
+index 676116a6d96..55046e68926 100644
+--- a/gcc/configure.ac
++++ b/gcc/configure.ac
+@@ -5957,15 +5957,15 @@ fi
+ AC_SUBST([enable_default_ssp])
+
+ # Test for <sys/sdt.h> on the target.
+-GCC_TARGET_TEMPLATE([HAVE_SYS_SDT_H])
+-AC_MSG_CHECKING(sys/sdt.h in the target C library)
+-have_sys_sdt_h=no
+-if test -f $target_header_dir/sys/sdt.h; then
+- have_sys_sdt_h=yes
+- AC_DEFINE(HAVE_SYS_SDT_H, 1,
+- [Define if your target C library provides sys/sdt.h])
+-fi
+-AC_MSG_RESULT($have_sys_sdt_h)
++#GCC_TARGET_TEMPLATE([HAVE_SYS_SDT_H])
++#AC_MSG_CHECKING(sys/sdt.h in the target C library)
++#have_sys_sdt_h=no
++#if test -f $target_header_dir/sys/sdt.h; then
++# have_sys_sdt_h=yes
++# AC_DEFINE(HAVE_SYS_SDT_H, 1,
++# [Define if your target C library provides sys/sdt.h])
++#fi
++#AC_MSG_RESULT($have_sys_sdt_h)
+
+ # Check if TFmode long double should be used by default or not.
+ # Some glibc targets used DFmode long double, but with glibc 2.4
+diff --git a/libstdc++-v3/configure b/libstdc++-v3/configure
+index c9dbaa139d5..c64a77d152b 100755
+--- a/libstdc++-v3/configure
++++ b/libstdc++-v3/configure
+@@ -21786,11 +21786,11 @@ ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
+- if test $glibcxx_cv_sys_sdt_h = yes; then
++# if test $glibcxx_cv_sys_sdt_h = yes; then
+
+-$as_echo "#define HAVE_SYS_SDT_H 1" >>confdefs.h
++#$as_echo "#define HAVE_SYS_SDT_H 1" >>confdefs.h
+
+- fi
++# fi
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $glibcxx_cv_sys_sdt_h" >&5
+ $as_echo "$glibcxx_cv_sys_sdt_h" >&6; }
+
+diff --git a/libstdc++-v3/configure.ac b/libstdc++-v3/configure.ac
+index 0ef96270c9c..afe55a1b215 100644
+--- a/libstdc++-v3/configure.ac
++++ b/libstdc++-v3/configure.ac
+@@ -230,7 +230,7 @@ GLIBCXX_CHECK_SC_NPROCESSORS_ONLN
+ GLIBCXX_CHECK_SC_NPROC_ONLN
+ GLIBCXX_CHECK_PTHREADS_NUM_PROCESSORS_NP
+ GLIBCXX_CHECK_SYSCTL_HW_NCPU
+-GLIBCXX_CHECK_SDT_H
++#GLIBCXX_CHECK_SDT_H
+
+ # Check for available headers.
+ AC_CHECK_HEADERS([endian.h execinfo.h float.h fp.h ieeefp.h inttypes.h \
+--
+2.17.0
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-8.2/0017-libtool.patch b/poky/meta/recipes-devtools/gcc/gcc-8.2/0017-libtool.patch
new file mode 100644
index 000000000..0caa1ce16
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-8.2/0017-libtool.patch
@@ -0,0 +1,42 @@
+From c8b11e96b11910b2d4df6ae8104466e3303d933f Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 29 Mar 2013 09:29:11 +0400
+Subject: [PATCH 17/39] libtool
+
+libstdc++ from gcc-runtime gets created with -rpath=/usr/lib/../lib for qemux86-64
+when running on am x86_64 build host.
+
+This patch stops this speading to libdir in the libstdc++.la file within libtool.
+Arguably, it shouldn't be passing this into libtool in the first place but
+for now this resolves the nastiest problems this causes.
+
+func_normal_abspath would resolve an empty path to `pwd` so we need
+to filter the zero case.
+
+RP 2012/8/24
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+Upstream-Status: Pending
+---
+ ltmain.sh | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/ltmain.sh b/ltmain.sh
+index 9503ec85d70..0121fba707f 100644
+--- a/ltmain.sh
++++ b/ltmain.sh
+@@ -6359,6 +6359,10 @@ func_mode_link ()
+ func_warning "ignoring multiple \`-rpath's for a libtool library"
+
+ install_libdir="$1"
++ if test -n "$install_libdir"; then
++ func_normal_abspath "$install_libdir"
++ install_libdir=$func_normal_abspath_result
++ fi
+
+ oldlibs=
+ if test -z "$rpath"; then
+--
+2.17.0
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-8.2/0018-gcc-armv4-pass-fix-v4bx-to-linker-to-support-EABI.patch b/poky/meta/recipes-devtools/gcc/gcc-8.2/0018-gcc-armv4-pass-fix-v4bx-to-linker-to-support-EABI.patch
new file mode 100644
index 000000000..643cc671b
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-8.2/0018-gcc-armv4-pass-fix-v4bx-to-linker-to-support-EABI.patch
@@ -0,0 +1,43 @@
+From 7dbba844a59bdf6e7d724f8bfa7927246cb7af8f Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 29 Mar 2013 09:30:32 +0400
+Subject: [PATCH 18/39] gcc: armv4: pass fix-v4bx to linker to support EABI.
+
+The LINK_SPEC for linux gets overwritten by linux-eabi.h which
+means the value of TARGET_FIX_V4BX_SPEC gets lost and as a result
+the option is not passed to linker when chosing march=armv4
+This patch redefines this in linux-eabi.h and reinserts it
+for eabi defaulting toolchains.
+
+We might want to send it upstream.
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+Upstream-Status: Pending
+---
+ gcc/config/arm/linux-eabi.h | 6 +++++-
+ 1 file changed, 5 insertions(+), 1 deletion(-)
+
+diff --git a/gcc/config/arm/linux-eabi.h b/gcc/config/arm/linux-eabi.h
+index b3af68cac57..330b6e13c5f 100644
+--- a/gcc/config/arm/linux-eabi.h
++++ b/gcc/config/arm/linux-eabi.h
+@@ -88,10 +88,14 @@
+ #define MUSL_DYNAMIC_LINKER \
+ "/lib/ld-musl-arm" MUSL_DYNAMIC_LINKER_E "%{mfloat-abi=hard:hf}.so.1"
+
++/* For armv4 we pass --fix-v4bx to linker to support EABI */
++#undef TARGET_FIX_V4BX_SPEC
++#define TARGET_FIX_V4BX_SPEC "%{mcpu=arm8|mcpu=arm810|mcpu=strongarm*|march=armv4: --fix-v4bx}"
++
+ /* At this point, bpabi.h will have clobbered LINK_SPEC. We want to
+ use the GNU/Linux version, not the generic BPABI version. */
+ #undef LINK_SPEC
+-#define LINK_SPEC EABI_LINK_SPEC \
++#define LINK_SPEC TARGET_FIX_V4BX_SPEC EABI_LINK_SPEC \
+ LINUX_OR_ANDROID_LD (LINUX_TARGET_LINK_SPEC, \
+ LINUX_TARGET_LINK_SPEC " " ANDROID_LINK_SPEC)
+
+--
+2.17.0
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-8.2/0019-Use-the-multilib-config-files-from-B-instead-of-usin.patch b/poky/meta/recipes-devtools/gcc/gcc-8.2/0019-Use-the-multilib-config-files-from-B-instead-of-usin.patch
new file mode 100644
index 000000000..084918652
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-8.2/0019-Use-the-multilib-config-files-from-B-instead-of-usin.patch
@@ -0,0 +1,102 @@
+From 117140acd3c383f620ff75894276001c7405dcce Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 29 Mar 2013 09:33:04 +0400
+Subject: [PATCH 19/39] Use the multilib config files from ${B} instead of
+ using the ones from ${S}
+
+Use the multilib config files from ${B} instead of using the ones from ${S}
+so that the source can be shared between gcc-cross-initial,
+gcc-cross-intermediate, gcc-cross, gcc-runtime, and also the sdk build.
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+Signed-off-by: Constantin Musca <constantinx.musca@intel.com>
+
+Upstream-Status: Inappropriate [configuration]
+---
+ gcc/configure | 22 ++++++++++++++++++----
+ gcc/configure.ac | 22 ++++++++++++++++++----
+ 2 files changed, 36 insertions(+), 8 deletions(-)
+
+diff --git a/gcc/configure b/gcc/configure
+index 872338f29b6..cfcadc93a01 100755
+--- a/gcc/configure
++++ b/gcc/configure
+@@ -12138,10 +12138,20 @@ done
+ tmake_file_=
+ for f in ${tmake_file}
+ do
+- if test -f ${srcdir}/config/$f
+- then
+- tmake_file_="${tmake_file_} \$(srcdir)/config/$f"
+- fi
++ case $f in
++ */t-linux64 )
++ if test -f ./config/$f
++ then
++ tmake_file_="${tmake_file_} ./config/$f"
++ fi
++ ;;
++ * )
++ if test -f ${srcdir}/config/$f
++ then
++ tmake_file_="${tmake_file_} \$(srcdir)/config/$f"
++ fi
++ ;;
++ esac
+ done
+ tmake_file="${tmake_file_}"
+
+@@ -12152,6 +12162,10 @@ tm_file_list="options.h"
+ tm_include_list="options.h insn-constants.h"
+ for f in $tm_file; do
+ case $f in
++ */linux64.h )
++ tm_file_list="${tm_file_list} ./config/$f"
++ tm_include_list="${tm_include_list} ./config/$f"
++ ;;
+ ./* )
+ f=`echo $f | sed 's/^..//'`
+ tm_file_list="${tm_file_list} $f"
+diff --git a/gcc/configure.ac b/gcc/configure.ac
+index 55046e68926..44b90478f55 100644
+--- a/gcc/configure.ac
++++ b/gcc/configure.ac
+@@ -1902,10 +1902,20 @@ done
+ tmake_file_=
+ for f in ${tmake_file}
+ do
+- if test -f ${srcdir}/config/$f
+- then
+- tmake_file_="${tmake_file_} \$(srcdir)/config/$f"
+- fi
++ case $f in
++ */t-linux64 )
++ if test -f ./config/$f
++ then
++ tmake_file_="${tmake_file_} ./config/$f"
++ fi
++ ;;
++ * )
++ if test -f ${srcdir}/config/$f
++ then
++ tmake_file_="${tmake_file_} \$(srcdir)/config/$f"
++ fi
++ ;;
++ esac
+ done
+ tmake_file="${tmake_file_}"
+
+@@ -1916,6 +1926,10 @@ tm_file_list="options.h"
+ tm_include_list="options.h insn-constants.h"
+ for f in $tm_file; do
+ case $f in
++ */linux64.h )
++ tm_file_list="${tm_file_list} ./config/$f"
++ tm_include_list="${tm_include_list} ./config/$f"
++ ;;
+ ./* )
+ f=`echo $f | sed 's/^..//'`
+ tm_file_list="${tm_file_list} $f"
+--
+2.17.0
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-8.2/0020-Avoid-using-libdir-from-.la-which-usually-points-to-.patch b/poky/meta/recipes-devtools/gcc/gcc-8.2/0020-Avoid-using-libdir-from-.la-which-usually-points-to-.patch
new file mode 100644
index 000000000..911fe8521
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-8.2/0020-Avoid-using-libdir-from-.la-which-usually-points-to-.patch
@@ -0,0 +1,31 @@
+From a7266111a5ba2d146c979e86ff84f6b807ca5fdc Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 20 Feb 2015 09:39:38 +0000
+Subject: [PATCH 20/39] Avoid using libdir from .la which usually points to a
+ host path
+
+Upstream-Status: Inappropriate [embedded specific]
+
+Signed-off-by: Jonathan Liu <net147@gmail.com>
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ ltmain.sh | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/ltmain.sh b/ltmain.sh
+index 0121fba707f..52bdbdb5f9c 100644
+--- a/ltmain.sh
++++ b/ltmain.sh
+@@ -5628,6 +5628,9 @@ func_mode_link ()
+ absdir="$abs_ladir"
+ libdir="$abs_ladir"
+ else
++ # Instead of using libdir from .la which usually points to a host path,
++ # use the path the .la is contained in.
++ libdir="$abs_ladir"
+ dir="$libdir"
+ absdir="$libdir"
+ fi
+--
+2.17.0
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-8.2/0021-export-CPP.patch b/poky/meta/recipes-devtools/gcc/gcc-8.2/0021-export-CPP.patch
new file mode 100644
index 000000000..2e6b41106
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-8.2/0021-export-CPP.patch
@@ -0,0 +1,53 @@
+From c8599fc3b5781b319707c9c0f1b0a1ef7cddb027 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 20 Feb 2015 09:40:59 +0000
+Subject: [PATCH 21/39] export CPP
+
+The OE environment sets and exports CPP as being the target gcc. When
+building gcc-cross-canadian for a mingw targetted sdk, the following can be found
+in build.x86_64-pokysdk-mingw32.i586-poky-linux/build-x86_64-linux/libiberty/config.log:
+
+configure:3641: checking for _FILE_OFFSET_BITS value needed for large files
+configure:3666: gcc -c -isystem/media/build1/poky/build/tmp/sysroots/x86_64-linux/usr/include -O2 -pipe conftest.c >&5
+configure:3666: $? = 0
+configure:3698: result: no
+configure:3786: checking how to run the C preprocessor
+configure:3856: result: x86_64-pokysdk-mingw32-gcc -E --sysroot=/media/build1/poky/build/tmp/sysroots/x86_64-nativesdk-mingw32-pokysdk-mingw32
+configure:3876: x86_64-pokysdk-mingw32-gcc -E --sysroot=/media/build1/poky/build/tmp/sysroots/x86_64-nativesdk-mingw32-pokysdk-mingw32 conftest.c
+configure:3876: $? = 0
+
+Note this is a *build* target (in build-x86_64-linux) so it should be
+using the host "gcc", not x86_64-pokysdk-mingw32-gcc. Since the mingw32
+headers are very different, using the wrong cpp is a real problem. It is leaking
+into configure through the CPP variable. Ultimately this leads to build
+failures related to not being able to include a process.h file for pem-unix.c.
+
+The fix is to ensure we export a sane CPP value into the build
+environment when using build targets. We could define a CPP_FOR_BUILD value which may be
+the version which needs to be upstreamed but for now, this fix is good enough to
+avoid the problem.
+
+RP 22/08/2013
+
+Upstream-Status: Pending
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ Makefile.in | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/Makefile.in b/Makefile.in
+index 2bf83b72265..1af45580086 100644
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -149,6 +149,7 @@ BUILD_EXPORTS = \
+ AR="$(AR_FOR_BUILD)"; export AR; \
+ AS="$(AS_FOR_BUILD)"; export AS; \
+ CC="$(CC_FOR_BUILD)"; export CC; \
++ CPP="$(CC_FOR_BUILD) -E"; export CPP; \
+ CFLAGS="$(CFLAGS_FOR_BUILD)"; export CFLAGS; \
+ CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \
+ CXX="$(CXX_FOR_BUILD)"; export CXX; \
+--
+2.17.0
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-8.2/0022-Disable-the-MULTILIB_OSDIRNAMES-and-other-multilib-o.patch b/poky/meta/recipes-devtools/gcc/gcc-8.2/0022-Disable-the-MULTILIB_OSDIRNAMES-and-other-multilib-o.patch
new file mode 100644
index 000000000..17c581f11
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-8.2/0022-Disable-the-MULTILIB_OSDIRNAMES-and-other-multilib-o.patch
@@ -0,0 +1,42 @@
+From 5e2ee46c720b6ce03a18da70dd4e0917c258ab0b Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 20 Feb 2015 10:21:55 +0000
+Subject: [PATCH 22/39] Disable the MULTILIB_OSDIRNAMES and other multilib
+ options.
+
+Hard coding the MULTILIB_OSDIRNAMES with ../lib64 is causing problems on
+systems where the libdir is NOT set to /lib64. This is allowed by the
+ABI, as
+long as the dynamic loader is present in /lib.
+
+We simply want to use the default rules in gcc to find and configure the
+normal libdir.
+
+Upstream-Status: Inappropriate[OE-Specific]
+
+Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ gcc/config/aarch64/t-aarch64-linux | 8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/gcc/config/aarch64/t-aarch64-linux b/gcc/config/aarch64/t-aarch64-linux
+index b9897785a89..7d06f0d0edb 100644
+--- a/gcc/config/aarch64/t-aarch64-linux
++++ b/gcc/config/aarch64/t-aarch64-linux
+@@ -21,8 +21,8 @@
+ LIB1ASMSRC = aarch64/lib1funcs.asm
+ LIB1ASMFUNCS = _aarch64_sync_cache_range
+
+-AARCH_BE = $(if $(findstring TARGET_BIG_ENDIAN_DEFAULT=1, $(tm_defines)),_be)
+-MULTILIB_OSDIRNAMES = mabi.lp64=../lib64$(call if_multiarch,:aarch64$(AARCH_BE)-linux-gnu)
+-MULTIARCH_DIRNAME = $(call if_multiarch,aarch64$(AARCH_BE)-linux-gnu)
++#AARCH_BE = $(if $(findstring TARGET_BIG_ENDIAN_DEFAULT=1, $(tm_defines)),_be)
++#MULTILIB_OSDIRNAMES = mabi.lp64=../lib64$(call if_multiarch,:aarch64$(AARCH_BE)-linux-gnu)
++#MULTIARCH_DIRNAME = $(call if_multiarch,aarch64$(AARCH_BE)-linux-gnu)
+
+-MULTILIB_OSDIRNAMES += mabi.ilp32=../libilp32$(call if_multiarch,:aarch64$(AARCH_BE)-linux-gnu_ilp32)
++#MULTILIB_OSDIRNAMES += mabi.ilp32=../libilp32$(call if_multiarch,:aarch64$(AARCH_BE)-linux-gnu_ilp32)
+--
+2.17.0
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-8.2/0023-Ensure-target-gcc-headers-can-be-included.patch b/poky/meta/recipes-devtools/gcc/gcc-8.2/0023-Ensure-target-gcc-headers-can-be-included.patch
new file mode 100644
index 000000000..4d4da1a52
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-8.2/0023-Ensure-target-gcc-headers-can-be-included.patch
@@ -0,0 +1,98 @@
+From 73766424a2f71b1810fb8afdd863028855d87e5a Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 20 Feb 2015 10:25:11 +0000
+Subject: [PATCH 23/39] Ensure target gcc headers can be included
+
+There are a few headers installed as part of the OpenEmbedded
+gcc-runtime target (omp.h, ssp/*.h). Being installed from a recipe
+built for the target architecture, these are within the target
+sysroot and not cross/nativesdk; thus they weren't able to be
+found by gcc with the existing search paths. Add support for
+picking up these headers under the sysroot supplied on the gcc
+command line in order to resolve this.
+
+Upstream-Status: Pending
+
+Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ gcc/Makefile.in | 2 ++
+ gcc/cppdefault.c | 4 ++++
+ gcc/defaults.h | 9 +++++++++
+ gcc/gcc.c | 7 -------
+ 4 files changed, 15 insertions(+), 7 deletions(-)
+
+diff --git a/gcc/Makefile.in b/gcc/Makefile.in
+index 71a8275c39f..5ae693fb06c 100644
+--- a/gcc/Makefile.in
++++ b/gcc/Makefile.in
+@@ -614,6 +614,7 @@ libexecdir = @libexecdir@
+
+ # Directory in which the compiler finds libraries etc.
+ libsubdir = $(libdir)/gcc/$(real_target_noncanonical)/$(version)$(accel_dir_suffix)
++libsubdir_target = gcc/$(target_noncanonical)/$(version)
+ # Directory in which the compiler finds executables
+ libexecsubdir = $(libexecdir)/gcc/$(real_target_noncanonical)/$(version)$(accel_dir_suffix)
+ # Directory in which all plugin resources are installed
+@@ -2870,6 +2871,7 @@ CFLAGS-intl.o += -DLOCALEDIR=\"$(localedir)\"
+
+ PREPROCESSOR_DEFINES = \
+ -DGCC_INCLUDE_DIR=\"$(libsubdir)/include\" \
++ -DGCC_INCLUDE_SUBDIR_TARGET=\"$(libsubdir_target)/include\" \
+ -DFIXED_INCLUDE_DIR=\"$(libsubdir)/include-fixed\" \
+ -DGPLUSPLUS_INCLUDE_DIR=\"$(gcc_gxx_include_dir)\" \
+ -DGPLUSPLUS_INCLUDE_DIR_ADD_SYSROOT=$(gcc_gxx_include_dir_add_sysroot) \
+diff --git a/gcc/cppdefault.c b/gcc/cppdefault.c
+index b36a979d5ba..e2e187dedaf 100644
+--- a/gcc/cppdefault.c
++++ b/gcc/cppdefault.c
+@@ -59,6 +59,10 @@ const struct default_include cpp_include_defaults[]
+ /* This is the dir for gcc's private headers. */
+ { GCC_INCLUDE_DIR, "GCC", 0, 0, 0, 0 },
+ #endif
++#ifdef GCC_INCLUDE_SUBDIR_TARGET
++ /* This is the dir for gcc's private headers under the specified sysroot. */
++ { STANDARD_STARTFILE_PREFIX_2 GCC_INCLUDE_SUBDIR_TARGET, "GCC", 0, 0, 1, 0 },
++#endif
+ #ifdef LOCAL_INCLUDE_DIR
+ /* /usr/local/include comes before the fixincluded header files. */
+ { LOCAL_INCLUDE_DIR, 0, 0, 1, 1, 2 },
+diff --git a/gcc/defaults.h b/gcc/defaults.h
+index 78a08a33f12..c8851277674 100644
+--- a/gcc/defaults.h
++++ b/gcc/defaults.h
+@@ -1451,4 +1451,13 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
+ #define DWARF_GNAT_ENCODINGS_DEFAULT DWARF_GNAT_ENCODINGS_GDB
+ #endif
+
++/* Default prefixes to attach to command names. */
++
++#ifndef STANDARD_STARTFILE_PREFIX_1
++#define STANDARD_STARTFILE_PREFIX_1 "/lib/"
++#endif
++#ifndef STANDARD_STARTFILE_PREFIX_2
++#define STANDARD_STARTFILE_PREFIX_2 "/usr/lib/"
++#endif
++
+ #endif /* ! GCC_DEFAULTS_H */
+diff --git a/gcc/gcc.c b/gcc/gcc.c
+index 570cdc00034..3fb64d453f1 100644
+--- a/gcc/gcc.c
++++ b/gcc/gcc.c
+@@ -1464,13 +1464,6 @@ static const char *gcc_libexec_prefix;
+
+ /* Default prefixes to attach to command names. */
+
+-#ifndef STANDARD_STARTFILE_PREFIX_1
+-#define STANDARD_STARTFILE_PREFIX_1 "/lib/"
+-#endif
+-#ifndef STANDARD_STARTFILE_PREFIX_2
+-#define STANDARD_STARTFILE_PREFIX_2 "/usr/lib/"
+-#endif
+-
+ #ifdef CROSS_DIRECTORY_STRUCTURE /* Don't use these prefixes for a cross compiler. */
+ #undef MD_EXEC_PREFIX
+ #undef MD_STARTFILE_PREFIX
+--
+2.17.0
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-8.2/0024-gcc-4.8-won-t-build-with-disable-dependency-tracking.patch b/poky/meta/recipes-devtools/gcc/gcc-8.2/0024-gcc-4.8-won-t-build-with-disable-dependency-tracking.patch
new file mode 100644
index 000000000..67b47f4ec
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-8.2/0024-gcc-4.8-won-t-build-with-disable-dependency-tracking.patch
@@ -0,0 +1,54 @@
+From 57beef69396f6c187014b8e61cdc966218479d07 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 20 Feb 2015 11:17:19 +0000
+Subject: [PATCH 24/39] gcc 4.8+ won't build with --disable-dependency-tracking
+
+since the *.Ppo files don't get created unless --enable-dependency-tracking is true.
+
+This patch ensures we only use those compiler options when its enabled.
+
+Upstream-Status: Submitted
+
+(Problem was already reported upstream, attached this patch there
+http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55930)
+
+RP
+2012/09/22
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ libatomic/Makefile.am | 3 ++-
+ libatomic/Makefile.in | 3 ++-
+ 2 files changed, 4 insertions(+), 2 deletions(-)
+
+diff --git a/libatomic/Makefile.am b/libatomic/Makefile.am
+index 803b292cce5..b47842eb590 100644
+--- a/libatomic/Makefile.am
++++ b/libatomic/Makefile.am
+@@ -101,7 +101,8 @@ PAT_S = $(word 3,$(PAT_SPLIT))
+ IFUNC_DEF = -DIFUNC_ALT=$(PAT_S)
+ IFUNC_OPT = $(word $(PAT_S),$(IFUNC_OPTIONS))
+
+-M_DEPS = -MT $@ -MD -MP -MF $(DEPDIR)/$(@F).Ppo
++@AMDEP_TRUE@M_DEPS = -MT $@ -MD -MP -MF $(DEPDIR)/$(@F).Ppo
++@AMDEP_FALSE@M_DEPS =
+ M_SIZE = -DN=$(PAT_N)
+ M_IFUNC = $(if $(PAT_S),$(IFUNC_DEF) $(IFUNC_OPT))
+ M_FILE = $(PAT_BASE)_n.c
+diff --git a/libatomic/Makefile.in b/libatomic/Makefile.in
+index c8f38be5835..4fab7cec3ea 100644
+--- a/libatomic/Makefile.in
++++ b/libatomic/Makefile.in
+@@ -335,7 +335,8 @@ PAT_N = $(word 2,$(PAT_SPLIT))
+ PAT_S = $(word 3,$(PAT_SPLIT))
+ IFUNC_DEF = -DIFUNC_ALT=$(PAT_S)
+ IFUNC_OPT = $(word $(PAT_S),$(IFUNC_OPTIONS))
+-M_DEPS = -MT $@ -MD -MP -MF $(DEPDIR)/$(@F).Ppo
++@AMDEP_TRUE@M_DEPS = -MT $@ -MD -MP -MF $(DEPDIR)/$(@F).Ppo
++@AMDEP_FALSE@M_DEPS =
+ M_SIZE = -DN=$(PAT_N)
+ M_IFUNC = $(if $(PAT_S),$(IFUNC_DEF) $(IFUNC_OPT))
+ M_FILE = $(PAT_BASE)_n.c
+--
+2.17.0
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-8.2/0025-Don-t-search-host-directory-during-relink-if-inst_pr.patch b/poky/meta/recipes-devtools/gcc/gcc-8.2/0025-Don-t-search-host-directory-during-relink-if-inst_pr.patch
new file mode 100644
index 000000000..d8b35bbbe
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-8.2/0025-Don-t-search-host-directory-during-relink-if-inst_pr.patch
@@ -0,0 +1,38 @@
+From fd96c9b35c592f1bdd32bc5ae669157473e44063 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Tue, 3 Mar 2015 08:21:19 +0000
+Subject: [PATCH 25/39] Don't search host directory during "relink" if
+ $inst_prefix is provided
+
+http://lists.gnu.org/archive/html/libtool-patches/2011-01/msg00026.html
+
+Upstream-Status: Submitted
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ ltmain.sh | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/ltmain.sh b/ltmain.sh
+index 52bdbdb5f9c..82bcec39f05 100644
+--- a/ltmain.sh
++++ b/ltmain.sh
+@@ -6004,12 +6004,13 @@ func_mode_link ()
+ fi
+ else
+ # We cannot seem to hardcode it, guess we'll fake it.
++ # Default if $libdir is not relative to the prefix:
+ add_dir="-L$libdir"
+- # Try looking first in the location we're being installed to.
++
+ if test -n "$inst_prefix_dir"; then
+ case $libdir in
+ [\\/]*)
+- add_dir="$add_dir -L$inst_prefix_dir$libdir"
++ add_dir="-L$inst_prefix_dir$libdir"
+ ;;
+ esac
+ fi
+--
+2.17.0
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-8.2/0026-Use-SYSTEMLIBS_DIR-replacement-instead-of-hardcoding.patch b/poky/meta/recipes-devtools/gcc/gcc-8.2/0026-Use-SYSTEMLIBS_DIR-replacement-instead-of-hardcoding.patch
new file mode 100644
index 000000000..d3ab5aa9c
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-8.2/0026-Use-SYSTEMLIBS_DIR-replacement-instead-of-hardcoding.patch
@@ -0,0 +1,29 @@
+From c2e400afe8c514357859fca88af4d3e1fcbfe2ff Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Tue, 28 Apr 2015 23:15:27 -0700
+Subject: [PATCH 26/39] Use SYSTEMLIBS_DIR replacement instead of hardcoding
+ base_libdir
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+Upstream-Status: Pending
+
+ gcc/config/aarch64/aarch64-linux.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/gcc/config/aarch64/aarch64-linux.h b/gcc/config/aarch64/aarch64-linux.h
+index bf1327e98cc..64436183bc8 100644
+--- a/gcc/config/aarch64/aarch64-linux.h
++++ b/gcc/config/aarch64/aarch64-linux.h
+@@ -21,7 +21,7 @@
+ #ifndef GCC_AARCH64_LINUX_H
+ #define GCC_AARCH64_LINUX_H
+
+-#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux-aarch64%{mbig-endian:_be}%{mabi=ilp32:_ilp32}.so.1"
++#define GLIBC_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-linux-aarch64%{mbig-endian:_be}%{mabi=ilp32:_ilp32}.so.1"
+
+ #undef MUSL_DYNAMIC_LINKER
+ #define MUSL_DYNAMIC_LINKER "/lib/ld-musl-aarch64%{mbig-endian:_be}%{mabi=ilp32:_ilp32}.so.1"
+--
+2.17.0
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-8.2/0027-aarch64-Add-support-for-musl-ldso.patch b/poky/meta/recipes-devtools/gcc/gcc-8.2/0027-aarch64-Add-support-for-musl-ldso.patch
new file mode 100644
index 000000000..9e5ce8a60
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-8.2/0027-aarch64-Add-support-for-musl-ldso.patch
@@ -0,0 +1,28 @@
+From a2cc175769fd8255750eaecae64e3d1f9c38d48f Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Tue, 28 Apr 2015 23:18:39 -0700
+Subject: [PATCH 27/39] aarch64: Add support for musl ldso
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+Upstream-Status: Pending
+
+ gcc/config/aarch64/aarch64-linux.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/gcc/config/aarch64/aarch64-linux.h b/gcc/config/aarch64/aarch64-linux.h
+index 64436183bc8..ba156676026 100644
+--- a/gcc/config/aarch64/aarch64-linux.h
++++ b/gcc/config/aarch64/aarch64-linux.h
+@@ -24,7 +24,7 @@
+ #define GLIBC_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-linux-aarch64%{mbig-endian:_be}%{mabi=ilp32:_ilp32}.so.1"
+
+ #undef MUSL_DYNAMIC_LINKER
+-#define MUSL_DYNAMIC_LINKER "/lib/ld-musl-aarch64%{mbig-endian:_be}%{mabi=ilp32:_ilp32}.so.1"
++#define MUSL_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-musl-aarch64%{mbig-endian:_be}%{mabi=ilp32:_ilp32}.so.1"
+
+ #undef ASAN_CC1_SPEC
+ #define ASAN_CC1_SPEC "%{%:sanitize(address):-funwind-tables}"
+--
+2.17.0
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-8.2/0028-libcc1-fix-libcc1-s-install-path-and-rpath.patch b/poky/meta/recipes-devtools/gcc/gcc-8.2/0028-libcc1-fix-libcc1-s-install-path-and-rpath.patch
new file mode 100644
index 000000000..2673f4e36
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-8.2/0028-libcc1-fix-libcc1-s-install-path-and-rpath.patch
@@ -0,0 +1,54 @@
+From a8a8a02788ff98f253ce0b33adcb0e661d24b1e3 Mon Sep 17 00:00:00 2001
+From: Robert Yang <liezhi.yang@windriver.com>
+Date: Sun, 5 Jul 2015 20:25:18 -0700
+Subject: [PATCH 28/39] libcc1: fix libcc1's install path and rpath
+
+* Install libcc1.so and libcc1plugin.so into
+ $(libexecdir)/gcc/$(target_noncanonical)/$(gcc_version), as what we
+ had done to lto-plugin.
+* Fix bad RPATH iussue:
+ gcc-5.2.0: package gcc-plugins contains bad RPATH /patht/to/tmp/sysroots/qemux86-64/usr/lib64/../lib64 in file
+ /path/to/gcc/5.2.0-r0/packages-split/gcc-plugins/usr/lib64/gcc/x86_64-poky-linux/5.2.0/plugin/libcc1plugin.so.0.0.0
+ [rpaths]
+
+Upstream-Status: Inappropriate [OE configuration]
+
+Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
+---
+ libcc1/Makefile.am | 4 ++--
+ libcc1/Makefile.in | 4 ++--
+ 2 files changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/libcc1/Makefile.am b/libcc1/Makefile.am
+index 6ecb66b4365..634cce3c2a9 100644
+--- a/libcc1/Makefile.am
++++ b/libcc1/Makefile.am
+@@ -37,8 +37,8 @@ libiberty = $(if $(wildcard $(libiberty_noasan)),$(Wc)$(libiberty_noasan), \
+ $(Wc)$(libiberty_normal)))
+ libiberty_dep = $(patsubst $(Wc)%,%,$(libiberty))
+
+-plugindir = $(libdir)/gcc/$(target_noncanonical)/$(gcc_version)/plugin
+-cc1libdir = $(libdir)/$(libsuffix)
++cc1libdir = $(libexecdir)/gcc/$(target_noncanonical)/$(gcc_version)
++plugindir = $(cc1libdir)
+
+ if ENABLE_PLUGIN
+ plugin_LTLIBRARIES = libcc1plugin.la libcp1plugin.la
+diff --git a/libcc1/Makefile.in b/libcc1/Makefile.in
+index 47be10025ad..8d5481d87bd 100644
+--- a/libcc1/Makefile.in
++++ b/libcc1/Makefile.in
+@@ -303,8 +303,8 @@ libiberty = $(if $(wildcard $(libiberty_noasan)),$(Wc)$(libiberty_noasan), \
+ $(Wc)$(libiberty_normal)))
+
+ libiberty_dep = $(patsubst $(Wc)%,%,$(libiberty))
+-plugindir = $(libdir)/gcc/$(target_noncanonical)/$(gcc_version)/plugin
+-cc1libdir = $(libdir)/$(libsuffix)
++cc1libdir = $(libexecdir)/gcc/$(target_noncanonical)/$(gcc_version)
++plugindir = $(cc1libdir)
+ @ENABLE_PLUGIN_TRUE@plugin_LTLIBRARIES = libcc1plugin.la libcp1plugin.la
+ @ENABLE_PLUGIN_TRUE@cc1lib_LTLIBRARIES = libcc1.la
+ shared_source = callbacks.cc callbacks.hh connection.cc connection.hh \
+--
+2.17.0
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-8.2/0029-handle-sysroot-support-for-nativesdk-gcc.patch b/poky/meta/recipes-devtools/gcc/gcc-8.2/0029-handle-sysroot-support-for-nativesdk-gcc.patch
new file mode 100644
index 000000000..727bb0da3
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-8.2/0029-handle-sysroot-support-for-nativesdk-gcc.patch
@@ -0,0 +1,213 @@
+From 3bb74495e45e0e798daae5556497e688b8fc4eef Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Mon, 7 Dec 2015 23:39:54 +0000
+Subject: [PATCH 29/39] handle sysroot support for nativesdk-gcc
+
+Being able to build a nativesdk gcc is useful, particularly in cases
+where the host compiler may be of an incompatible version (or a 32
+bit compiler is needed).
+
+Sadly, building nativesdk-gcc is not straight forward. We install
+nativesdk-gcc into a relocatable location and this means that its
+library locations can change. "Normal" sysroot support doesn't help
+in this case since the values of paths like "libdir" change, not just
+base root directory of the system.
+
+In order to handle this we do two things:
+
+a) Add %r into spec file markup which can be used for injected paths
+ such as SYSTEMLIBS_DIR (see gcc_multilib_setup()).
+b) Add other paths which need relocation into a .gccrelocprefix section
+ which the relocation code will notice and adjust automatically.
+
+Upstream-Status: Inappropriate
+RP 2015/7/28
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ gcc/cppdefault.c | 50 +++++++++++++++++++++++++++++++++++-------------
+ gcc/cppdefault.h | 3 ++-
+ gcc/gcc.c | 20 +++++++++++++------
+ 3 files changed, 53 insertions(+), 20 deletions(-)
+
+diff --git a/gcc/cppdefault.c b/gcc/cppdefault.c
+index e2e187dedaf..2faba2b1d63 100644
+--- a/gcc/cppdefault.c
++++ b/gcc/cppdefault.c
+@@ -35,6 +35,30 @@
+ # undef CROSS_INCLUDE_DIR
+ #endif
+
++static char GPLUSPLUS_INCLUDE_DIRVAR[4096] __attribute__ ((section (".gccrelocprefix"))) = GPLUSPLUS_INCLUDE_DIR;
++static char GCC_INCLUDE_DIRVAR[4096] __attribute__ ((section (".gccrelocprefix"))) = GCC_INCLUDE_DIR;
++static char GPLUSPLUS_TOOL_INCLUDE_DIRVAR[4096] __attribute__ ((section (".gccrelocprefix"))) = GPLUSPLUS_TOOL_INCLUDE_DIR;
++static char GPLUSPLUS_BACKWARD_INCLUDE_DIRVAR[4096] __attribute__ ((section (".gccrelocprefix"))) = GPLUSPLUS_BACKWARD_INCLUDE_DIR;
++static char STANDARD_STARTFILE_PREFIX_2VAR[4096] __attribute__ ((section (".gccrelocprefix"))) = STANDARD_STARTFILE_PREFIX_2 GCC_INCLUDE_SUBDIR_TARGET;
++#ifdef LOCAL_INCLUDE_DIR
++static char LOCAL_INCLUDE_DIRVAR[4096] __attribute__ ((section (".gccrelocprefix"))) = LOCAL_INCLUDE_DIR;
++#endif
++#ifdef PREFIX_INCLUDE_DIR
++static char PREFIX_INCLUDE_DIRVAR[4096] __attribute__ ((section (".gccrelocprefix"))) = PREFIX_INCLUDE_DIR;
++#endif
++#ifdef FIXED_INCLUDE_DIR
++static char FIXED_INCLUDE_DIRVAR[4096] __attribute__ ((section (".gccrelocprefix"))) = FIXED_INCLUDE_DIR;
++#endif
++#ifdef CROSS_INCLUDE_DIR
++static char CROSS_INCLUDE_DIRVAR[4096] __attribute__ ((section (".gccrelocprefix"))) = CROSS_INCLUDE_DIR;
++#endif
++#ifdef TOOL_INCLUDE_DIR
++static char TOOL_INCLUDE_DIRVAR[4096] __attribute__ ((section (".gccrelocprefix"))) = TOOL_INCLUDE_DIR;
++#endif
++#ifdef NATIVE_SYSTEM_HEADER_DIR
++static char NATIVE_SYSTEM_HEADER_DIRVAR[4096] __attribute__ ((section (".gccrelocprefix"))) = NATIVE_SYSTEM_HEADER_DIR;
++#endif
++
+ const struct default_include cpp_include_defaults[]
+ #ifdef INCLUDE_DEFAULTS
+ = INCLUDE_DEFAULTS;
+@@ -42,38 +66,38 @@ const struct default_include cpp_include_defaults[]
+ = {
+ #ifdef GPLUSPLUS_INCLUDE_DIR
+ /* Pick up GNU C++ generic include files. */
+- { GPLUSPLUS_INCLUDE_DIR, "G++", 1, 1,
++ { GPLUSPLUS_INCLUDE_DIRVAR, "G++", 1, 1,
+ GPLUSPLUS_INCLUDE_DIR_ADD_SYSROOT, 0 },
+ #endif
+ #ifdef GPLUSPLUS_TOOL_INCLUDE_DIR
+ /* Pick up GNU C++ target-dependent include files. */
+- { GPLUSPLUS_TOOL_INCLUDE_DIR, "G++", 1, 1,
++ { GPLUSPLUS_TOOL_INCLUDE_DIRVAR, "G++", 1, 1,
+ GPLUSPLUS_INCLUDE_DIR_ADD_SYSROOT, 1 },
+ #endif
+ #ifdef GPLUSPLUS_BACKWARD_INCLUDE_DIR
+ /* Pick up GNU C++ backward and deprecated include files. */
+- { GPLUSPLUS_BACKWARD_INCLUDE_DIR, "G++", 1, 1,
++ { GPLUSPLUS_BACKWARD_INCLUDE_DIRVAR, "G++", 1, 1,
+ GPLUSPLUS_INCLUDE_DIR_ADD_SYSROOT, 0 },
+ #endif
+ #ifdef GCC_INCLUDE_DIR
+ /* This is the dir for gcc's private headers. */
+- { GCC_INCLUDE_DIR, "GCC", 0, 0, 0, 0 },
++ { GCC_INCLUDE_DIRVAR, "GCC", 0, 0, 0, 0 },
+ #endif
+ #ifdef GCC_INCLUDE_SUBDIR_TARGET
+ /* This is the dir for gcc's private headers under the specified sysroot. */
+- { STANDARD_STARTFILE_PREFIX_2 GCC_INCLUDE_SUBDIR_TARGET, "GCC", 0, 0, 1, 0 },
++ { STANDARD_STARTFILE_PREFIX_2VAR, "GCC", 0, 0, 1, 0 },
+ #endif
+ #ifdef LOCAL_INCLUDE_DIR
+ /* /usr/local/include comes before the fixincluded header files. */
+- { LOCAL_INCLUDE_DIR, 0, 0, 1, 1, 2 },
+- { LOCAL_INCLUDE_DIR, 0, 0, 1, 1, 0 },
++ { LOCAL_INCLUDE_DIRVAR, 0, 0, 1, 1, 2 },
++ { LOCAL_INCLUDE_DIRVAR, 0, 0, 1, 1, 0 },
+ #endif
+ #ifdef PREFIX_INCLUDE_DIR
+- { PREFIX_INCLUDE_DIR, 0, 0, 1, 0, 0 },
++ { PREFIX_INCLUDE_DIRVAR, 0, 0, 1, 0, 0 },
+ #endif
+ #ifdef FIXED_INCLUDE_DIR
+ /* This is the dir for fixincludes. */
+- { FIXED_INCLUDE_DIR, "GCC", 0, 0, 0,
++ { FIXED_INCLUDE_DIRVAR, "GCC", 0, 0, 0,
+ /* A multilib suffix needs adding if different multilibs use
+ different headers. */
+ #ifdef SYSROOT_HEADERS_SUFFIX_SPEC
+@@ -85,16 +109,16 @@ const struct default_include cpp_include_defaults[]
+ #endif
+ #ifdef CROSS_INCLUDE_DIR
+ /* One place the target system's headers might be. */
+- { CROSS_INCLUDE_DIR, "GCC", 0, 0, 0, 0 },
++ { CROSS_INCLUDE_DIRVAR, "GCC", 0, 0, 0, 0 },
+ #endif
+ #ifdef TOOL_INCLUDE_DIR
+ /* Another place the target system's headers might be. */
+- { TOOL_INCLUDE_DIR, "BINUTILS", 0, 1, 0, 0 },
++ { TOOL_INCLUDE_DIRVAR, "BINUTILS", 0, 1, 0, 0 },
+ #endif
+ #ifdef NATIVE_SYSTEM_HEADER_DIR
+ /* /usr/include comes dead last. */
+- { NATIVE_SYSTEM_HEADER_DIR, NATIVE_SYSTEM_HEADER_COMPONENT, 0, 0, 1, 2 },
+- { NATIVE_SYSTEM_HEADER_DIR, NATIVE_SYSTEM_HEADER_COMPONENT, 0, 0, 1, 0 },
++ { NATIVE_SYSTEM_HEADER_DIRVAR, NATIVE_SYSTEM_HEADER_COMPONENT, 0, 0, 1, 2 },
++ { NATIVE_SYSTEM_HEADER_DIRVAR, NATIVE_SYSTEM_HEADER_COMPONENT, 0, 0, 1, 0 },
+ #endif
+ { 0, 0, 0, 0, 0, 0 }
+ };
+diff --git a/gcc/cppdefault.h b/gcc/cppdefault.h
+index 4a0186d1cf2..29e5d9da0dc 100644
+--- a/gcc/cppdefault.h
++++ b/gcc/cppdefault.h
+@@ -33,7 +33,8 @@
+
+ struct default_include
+ {
+- const char *const fname; /* The name of the directory. */
++ const char *fname; /* The name of the directory. */
++
+ const char *const component; /* The component containing the directory
+ (see update_path in prefix.c) */
+ const char cplusplus; /* Only look here if we're compiling C++. */
+diff --git a/gcc/gcc.c b/gcc/gcc.c
+index 3fb64d453f1..cd0c7fbe961 100644
+--- a/gcc/gcc.c
++++ b/gcc/gcc.c
+@@ -248,6 +248,8 @@ FILE *report_times_to_file = NULL;
+ #endif
+ static const char *target_system_root = DEFAULT_TARGET_SYSTEM_ROOT;
+
++static char target_relocatable_prefix[4096] __attribute__ ((section (".gccrelocprefix"))) = SYSTEMLIBS_DIR;
++
+ /* Nonzero means pass the updated target_system_root to the compiler. */
+
+ static int target_system_root_changed;
+@@ -519,6 +521,7 @@ or with constant text in a single argument.
+ %G process LIBGCC_SPEC as a spec.
+ %R Output the concatenation of target_system_root and
+ target_sysroot_suffix.
++ %r Output the base path target_relocatable_prefix
+ %S process STARTFILE_SPEC as a spec. A capital S is actually used here.
+ %E process ENDFILE_SPEC as a spec. A capital E is actually used here.
+ %C process CPP_SPEC as a spec.
+@@ -1487,10 +1490,10 @@ static const char *gcc_libexec_prefix;
+ gcc_exec_prefix is set because, in that case, we know where the
+ compiler has been installed, and use paths relative to that
+ location instead. */
+-static const char *const standard_exec_prefix = STANDARD_EXEC_PREFIX;
+-static const char *const standard_libexec_prefix = STANDARD_LIBEXEC_PREFIX;
+-static const char *const standard_bindir_prefix = STANDARD_BINDIR_PREFIX;
+-static const char *const standard_startfile_prefix = STANDARD_STARTFILE_PREFIX;
++static char standard_exec_prefix[4096] __attribute__ ((section (".gccrelocprefix"))) = STANDARD_EXEC_PREFIX;
++static char standard_libexec_prefix[4096] __attribute__ ((section (".gccrelocprefix"))) = STANDARD_LIBEXEC_PREFIX;
++static char standard_bindir_prefix[4096] __attribute__ ((section (".gccrelocprefix"))) = STANDARD_BINDIR_PREFIX;
++static char *const standard_startfile_prefix = STANDARD_STARTFILE_PREFIX;
+
+ /* For native compilers, these are well-known paths containing
+ components that may be provided by the system. For cross
+@@ -1498,9 +1501,9 @@ static const char *const standard_startfile_prefix = STANDARD_STARTFILE_PREFIX;
+ static const char *md_exec_prefix = MD_EXEC_PREFIX;
+ static const char *md_startfile_prefix = MD_STARTFILE_PREFIX;
+ static const char *md_startfile_prefix_1 = MD_STARTFILE_PREFIX_1;
+-static const char *const standard_startfile_prefix_1
++static char standard_startfile_prefix_1[4096] __attribute__ ((section (".gccrelocprefix")))
+ = STANDARD_STARTFILE_PREFIX_1;
+-static const char *const standard_startfile_prefix_2
++static char standard_startfile_prefix_2[4096] __attribute__ ((section (".gccrelocprefix")))
+ = STANDARD_STARTFILE_PREFIX_2;
+
+ /* A relative path to be used in finding the location of tools
+@@ -5849,6 +5852,11 @@ do_spec_1 (const char *spec, int inswitch, const char *soft_matched_part)
+ }
+ break;
+
++ case 'r':
++ obstack_grow (&obstack, target_relocatable_prefix,
++ strlen (target_relocatable_prefix));
++ break;
++
+ case 'S':
+ value = do_spec_1 (startfile_spec, 0, NULL);
+ if (value != 0)
+--
+2.17.0
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-8.2/0030-Search-target-sysroot-gcc-version-specific-dirs-with.patch b/poky/meta/recipes-devtools/gcc/gcc-8.2/0030-Search-target-sysroot-gcc-version-specific-dirs-with.patch
new file mode 100644
index 000000000..33566dffa
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-8.2/0030-Search-target-sysroot-gcc-version-specific-dirs-with.patch
@@ -0,0 +1,102 @@
+From f5cc8cd0c44092dc487106ade27e011c1f584ada Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Mon, 7 Dec 2015 23:41:45 +0000
+Subject: [PATCH 30/39] Search target sysroot gcc version specific dirs with
+ multilib.
+
+We install the gcc libraries (such as crtbegin.p) into
+<sysroot><libdir>/<target-sys>/5.2.0/
+which is a default search path for GCC (aka multi_suffix in the
+code below). <target-sys> is 'machine' in gcc's terminology. We use
+these directories so that multiple gcc versions could in theory
+co-exist on target.
+
+We only want to build one gcc-cross-canadian per arch and have this work
+for all multilibs. <target-sys> can be handled by mapping the multilib
+<target-sys> to the one used by gcc-cross-canadian, e.g.
+mips64-polkmllib32-linux
+is symlinked to by mips64-poky-linux.
+
+The default gcc search path in the target sysroot for a "lib64" mutlilib
+is:
+
+<sysroot>/lib32/mips64-poky-linux/5.2.0/
+<sysroot>/lib32/../lib64/
+<sysroot>/usr/lib32/mips64-poky-linux/5.2.0/
+<sysroot>/usr/lib32/../lib64/
+<sysroot>/lib32/
+<sysroot>/usr/lib32/
+
+which means that the lib32 crtbegin.o will be found and the lib64 ones
+will not which leads to compiler failures.
+
+This patch injects a multilib version of that path first so the lib64
+binaries can be found first. With this change the search path becomes:
+
+<sysroot>/lib32/../lib64/mips64-poky-linux/5.2.0/
+<sysroot>/lib32/mips64-poky-linux/5.2.0/
+<sysroot>/lib32/../lib64/
+<sysroot>/usr/lib32/../lib64/mips64-poky-linux/5.2.0/
+<sysroot>/usr/lib32/mips64-poky-linux/5.2.0/
+<sysroot>/usr/lib32/../lib64/
+<sysroot>/lib32/
+<sysroot>/usr/lib32/
+
+Upstream-Status: Pending
+RP 2015/7/31
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ gcc/gcc.c | 29 ++++++++++++++++++++++++++++-
+ 1 file changed, 28 insertions(+), 1 deletion(-)
+
+diff --git a/gcc/gcc.c b/gcc/gcc.c
+index cd0c7fbe961..f6f3aa077c8 100644
+--- a/gcc/gcc.c
++++ b/gcc/gcc.c
+@@ -2527,7 +2527,7 @@ for_each_path (const struct path_prefix *paths,
+ if (path == NULL)
+ {
+ len = paths->max_len + extra_space + 1;
+- len += MAX (MAX (suffix_len, multi_os_dir_len), multiarch_len);
++ len += MAX ((suffix_len + multi_os_dir_len), multiarch_len);
+ path = XNEWVEC (char, len);
+ }
+
+@@ -2539,6 +2539,33 @@ for_each_path (const struct path_prefix *paths,
+ /* Look first in MACHINE/VERSION subdirectory. */
+ if (!skip_multi_dir)
+ {
++ if (!(pl->os_multilib ? skip_multi_os_dir : skip_multi_dir))
++ {
++ const char *this_multi;
++ size_t this_multi_len;
++
++ if (pl->os_multilib)
++ {
++ this_multi = multi_os_dir;
++ this_multi_len = multi_os_dir_len;
++ }
++ else
++ {
++ this_multi = multi_dir;
++ this_multi_len = multi_dir_len;
++ }
++
++ /* Look in multilib MACHINE/VERSION subdirectory first */
++ if (this_multi_len)
++ {
++ memcpy (path + len, this_multi, this_multi_len + 1);
++ memcpy (path + len + this_multi_len, multi_suffix, suffix_len + 1);
++ ret = callback (path, callback_info);
++ if (ret)
++ break;
++ }
++ }
++
+ memcpy (path + len, multi_suffix, suffix_len + 1);
+ ret = callback (path, callback_info);
+ if (ret)
+--
+2.17.0
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-8.2/0031-Fix-various-_FOR_BUILD-and-related-variables.patch b/poky/meta/recipes-devtools/gcc/gcc-8.2/0031-Fix-various-_FOR_BUILD-and-related-variables.patch
new file mode 100644
index 000000000..dabc00596
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-8.2/0031-Fix-various-_FOR_BUILD-and-related-variables.patch
@@ -0,0 +1,137 @@
+From 93b4e1d3a0f8417118d1c48fcd1ce51996e1420b Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Mon, 7 Dec 2015 23:42:45 +0000
+Subject: [PATCH 31/39] Fix various _FOR_BUILD and related variables
+
+When doing a FOR_BUILD thing, you have to override CFLAGS with
+CFLAGS_FOR_BUILD. And if you use C++, you also have to override
+CXXFLAGS with CXXFLAGS_FOR_BUILD.
+Without this, when building for mingw, you end up trying to use
+the mingw headers for a host build.
+
+The same goes for other variables as well, such as CPPFLAGS,
+CPP, and GMPINC.
+
+Upstream-Status: Pending
+
+Signed-off-by: Peter Seebach <peter.seebach@windriver.com>
+Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ Makefile.in | 6 ++++++
+ Makefile.tpl | 5 +++++
+ gcc/Makefile.in | 2 +-
+ gcc/configure | 2 +-
+ gcc/configure.ac | 2 +-
+ 5 files changed, 14 insertions(+), 3 deletions(-)
+
+diff --git a/Makefile.in b/Makefile.in
+index 1af45580086..8966453c32c 100644
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -152,6 +152,7 @@ BUILD_EXPORTS = \
+ CPP="$(CC_FOR_BUILD) -E"; export CPP; \
+ CFLAGS="$(CFLAGS_FOR_BUILD)"; export CFLAGS; \
+ CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \
++ CPPFLAGS="$(CPPFLAGS_FOR_BUILD)"; export CPPFLAGS; \
+ CXX="$(CXX_FOR_BUILD)"; export CXX; \
+ CXXFLAGS="$(CXXFLAGS_FOR_BUILD)"; export CXXFLAGS; \
+ GFORTRAN="$(GFORTRAN_FOR_BUILD)"; export GFORTRAN; \
+@@ -169,6 +170,9 @@ BUILD_EXPORTS = \
+ # built for the build system to override those in BASE_FLAGS_TO_PASS.
+ EXTRA_BUILD_FLAGS = \
+ CFLAGS="$(CFLAGS_FOR_BUILD)" \
++ CXXFLAGS="$(CXXFLAGS_FOR_BUILD)" \
++ CPP="$(CC_FOR_BUILD) -E" \
++ CPPFLAGS="$(CPPFLAGS_FOR_BUILD)" \
+ LDFLAGS="$(LDFLAGS_FOR_BUILD)"
+
+ # This is the list of directories to built for the host system.
+@@ -186,6 +190,7 @@ HOST_SUBDIR = @host_subdir@
+ HOST_EXPORTS = \
+ $(BASE_EXPORTS) \
+ CC="$(CC)"; export CC; \
++ CPP="$(CC) -E"; export CPP; \
+ ADA_CFLAGS="$(ADA_CFLAGS)"; export ADA_CFLAGS; \
+ CFLAGS="$(CFLAGS)"; export CFLAGS; \
+ CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \
+@@ -753,6 +758,7 @@ BASE_FLAGS_TO_PASS = \
+ "CC_FOR_BUILD=$(CC_FOR_BUILD)" \
+ "CFLAGS_FOR_BUILD=$(CFLAGS_FOR_BUILD)" \
+ "CXX_FOR_BUILD=$(CXX_FOR_BUILD)" \
++ "CXXFLAGS_FOR_BUILD=$(CXXFLAGS_FOR_BUILD)" \
+ "EXPECT=$(EXPECT)" \
+ "FLEX=$(FLEX)" \
+ "INSTALL=$(INSTALL)" \
+diff --git a/Makefile.tpl b/Makefile.tpl
+index abd2bc2fb89..5822b260404 100644
+--- a/Makefile.tpl
++++ b/Makefile.tpl
+@@ -154,6 +154,7 @@ BUILD_EXPORTS = \
+ CC="$(CC_FOR_BUILD)"; export CC; \
+ CFLAGS="$(CFLAGS_FOR_BUILD)"; export CFLAGS; \
+ CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \
++ CPPFLAGS="$(CPPFLAGS_FOR_BUILD)"; export CPPFLAGS; \
+ CXX="$(CXX_FOR_BUILD)"; export CXX; \
+ CXXFLAGS="$(CXXFLAGS_FOR_BUILD)"; export CXXFLAGS; \
+ GFORTRAN="$(GFORTRAN_FOR_BUILD)"; export GFORTRAN; \
+@@ -171,6 +172,9 @@ BUILD_EXPORTS = \
+ # built for the build system to override those in BASE_FLAGS_TO_PASS.
+ EXTRA_BUILD_FLAGS = \
+ CFLAGS="$(CFLAGS_FOR_BUILD)" \
++ CXXFLAGS="$(CXXFLAGS_FOR_BUILD)" \
++ CPP="$(CC_FOR_BUILD) -E" \
++ CPPFLAGS="$(CPPFLAGS_FOR_BUILD)" \
+ LDFLAGS="$(LDFLAGS_FOR_BUILD)"
+
+ # This is the list of directories to built for the host system.
+@@ -188,6 +192,7 @@ HOST_SUBDIR = @host_subdir@
+ HOST_EXPORTS = \
+ $(BASE_EXPORTS) \
+ CC="$(CC)"; export CC; \
++ CPP="$(CC) -E"; export CPP; \
+ ADA_CFLAGS="$(ADA_CFLAGS)"; export ADA_CFLAGS; \
+ CFLAGS="$(CFLAGS)"; export CFLAGS; \
+ CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \
+diff --git a/gcc/Makefile.in b/gcc/Makefile.in
+index 5ae693fb06c..02ee0aa72f4 100644
+--- a/gcc/Makefile.in
++++ b/gcc/Makefile.in
+@@ -801,7 +801,7 @@ BUILD_LDFLAGS=@BUILD_LDFLAGS@
+ BUILD_NO_PIE_FLAG = @BUILD_NO_PIE_FLAG@
+ BUILD_LDFLAGS += $(BUILD_NO_PIE_FLAG)
+ BUILD_CPPFLAGS= -I. -I$(@D) -I$(srcdir) -I$(srcdir)/$(@D) \
+- -I$(srcdir)/../include @INCINTL@ $(CPPINC) $(CPPFLAGS)
++ -I$(srcdir)/../include @INCINTL@ $(CPPINC) $(CPPFLAGS_FOR_BUILD)
+
+ # Actual name to use when installing a native compiler.
+ GCC_INSTALL_NAME := $(shell echo gcc|sed '$(program_transform_name)')
+diff --git a/gcc/configure b/gcc/configure
+index cfcadc93a01..2f6b4f72ef3 100755
+--- a/gcc/configure
++++ b/gcc/configure
+@@ -11797,7 +11797,7 @@ else
+ CC="${CC_FOR_BUILD}" CFLAGS="${CFLAGS_FOR_BUILD}" \
+ CXX="${CXX_FOR_BUILD}" CXXFLAGS="${CXXFLAGS_FOR_BUILD}" \
+ LD="${LD_FOR_BUILD}" LDFLAGS="${LDFLAGS_FOR_BUILD}" \
+- GMPINC="" CPPFLAGS="${CPPFLAGS} -DGENERATOR_FILE" \
++ GMPINC="" CPPFLAGS="${CPPFLAGS_FOR_BUILD} -DGENERATOR_FILE" \
+ ${realsrcdir}/configure \
+ --enable-languages=${enable_languages-all} \
+ --target=$target_alias --host=$build_alias --build=$build_alias
+diff --git a/gcc/configure.ac b/gcc/configure.ac
+index 44b90478f55..9f8a51fc9bd 100644
+--- a/gcc/configure.ac
++++ b/gcc/configure.ac
+@@ -1708,7 +1708,7 @@ else
+ CC="${CC_FOR_BUILD}" CFLAGS="${CFLAGS_FOR_BUILD}" \
+ CXX="${CXX_FOR_BUILD}" CXXFLAGS="${CXXFLAGS_FOR_BUILD}" \
+ LD="${LD_FOR_BUILD}" LDFLAGS="${LDFLAGS_FOR_BUILD}" \
+- GMPINC="" CPPFLAGS="${CPPFLAGS} -DGENERATOR_FILE" \
++ GMPINC="" CPPFLAGS="${CPPFLAGS_FOR_BUILD} -DGENERATOR_FILE" \
+ ${realsrcdir}/configure \
+ --enable-languages=${enable_languages-all} \
+ --target=$target_alias --host=$build_alias --build=$build_alias
+--
+2.17.0
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-8.2/0032-nios2-Define-MUSL_DYNAMIC_LINKER.patch b/poky/meta/recipes-devtools/gcc/gcc-8.2/0032-nios2-Define-MUSL_DYNAMIC_LINKER.patch
new file mode 100644
index 000000000..6dd9d5423
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-8.2/0032-nios2-Define-MUSL_DYNAMIC_LINKER.patch
@@ -0,0 +1,28 @@
+From 99f3e3b427996ac579d95e68440a0bd7af7ef0fc Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Tue, 2 Feb 2016 10:26:10 -0800
+Subject: [PATCH 32/39] nios2: Define MUSL_DYNAMIC_LINKER
+
+Signed-off-by: Marek Vasut <marex@denx.de>
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+Upstream-Status: Pending
+
+ gcc/config/nios2/linux.h | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/gcc/config/nios2/linux.h b/gcc/config/nios2/linux.h
+index 4729105626d..36181eb7b85 100644
+--- a/gcc/config/nios2/linux.h
++++ b/gcc/config/nios2/linux.h
+@@ -30,6 +30,7 @@
+ #define CPP_SPEC "%{posix:-D_POSIX_SOURCE} %{pthread:-D_REENTRANT}"
+
+ #define GLIBC_DYNAMIC_LINKER "/lib/ld-linux-nios2.so.1"
++#define MUSL_DYNAMIC_LINKER "/lib/ld-musl-nios2.so.1"
+
+ #undef LINK_SPEC
+ #define LINK_SPEC LINK_SPEC_ENDIAN \
+--
+2.17.0
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-8.2/0033-Add-ssp_nonshared-to-link-commandline-for-musl-targe.patch b/poky/meta/recipes-devtools/gcc/gcc-8.2/0033-Add-ssp_nonshared-to-link-commandline-for-musl-targe.patch
new file mode 100644
index 000000000..05a6b0a1d
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-8.2/0033-Add-ssp_nonshared-to-link-commandline-for-musl-targe.patch
@@ -0,0 +1,87 @@
+From 84b55ab2f68710a583d4ec810ea8b3b68576f8aa Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Tue, 27 Jun 2017 18:10:54 -0700
+Subject: [PATCH 33/39] Add ssp_nonshared to link commandline for musl targets
+
+when -fstack-protector options are enabled we need to
+link with ssp_shared on musl since it does not provide
+the __stack_chk_fail_local() so essentially it provides
+libssp but not libssp_nonshared something like
+TARGET_LIBC_PROVIDES_SSP_BUT_NOT_SSP_NONSHARED
+ where-as for glibc the needed symbols
+are already present in libc_nonshared library therefore
+we do not need any library helper on glibc based systems
+but musl needs the libssp_noshared from gcc
+
+Upstream-Status: Pending
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ gcc/config/linux.h | 7 +++++++
+ gcc/config/rs6000/linux.h | 10 ++++++++++
+ gcc/config/rs6000/linux64.h | 10 ++++++++++
+ 3 files changed, 27 insertions(+)
+
+diff --git a/gcc/config/linux.h b/gcc/config/linux.h
+index 487b0c0923b..4769d089538 100644
+--- a/gcc/config/linux.h
++++ b/gcc/config/linux.h
+@@ -182,6 +182,13 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
+ { GCC_INCLUDE_DIR, "GCC", 0, 1, 0, 0 }, \
+ { 0, 0, 0, 0, 0, 0 } \
+ }
++#ifdef TARGET_LIBC_PROVIDES_SSP
++#undef LINK_SSP_SPEC
++#define LINK_SSP_SPEC "%{fstack-protector|fstack-protector-all" \
++ "|fstack-protector-strong|fstack-protector-explicit" \
++ ":-lssp_nonshared}"
++#endif
++
+ #endif
+
+ #if (DEFAULT_LIBC == LIBC_UCLIBC) && defined (SINGLE_LIBC) /* uClinux */
+diff --git a/gcc/config/rs6000/linux.h b/gcc/config/rs6000/linux.h
+index 01b40c762f6..e7c5e92215c 100644
+--- a/gcc/config/rs6000/linux.h
++++ b/gcc/config/rs6000/linux.h
+@@ -92,6 +92,16 @@
+ " -m elf32ppclinux")
+ #endif
+
++/* link libssp_nonshared.a with musl */
++#if DEFAULT_LIBC == LIBC_MUSL
++#ifdef TARGET_LIBC_PROVIDES_SSP
++#undef LINK_SSP_SPEC
++#define LINK_SSP_SPEC "%{fstack-protector|fstack-protector-all" \
++ "|fstack-protector-strong|fstack-protector-explicit" \
++ ":-lssp_nonshared}"
++#endif
++#endif
++
+ #undef LINK_OS_LINUX_SPEC
+ #define LINK_OS_LINUX_SPEC LINK_OS_LINUX_EMUL " %{!shared: %{!static: \
+ %{!static-pie: \
+diff --git a/gcc/config/rs6000/linux64.h b/gcc/config/rs6000/linux64.h
+index 55695dadd91..60f1ee24985 100644
+--- a/gcc/config/rs6000/linux64.h
++++ b/gcc/config/rs6000/linux64.h
+@@ -473,6 +473,16 @@ extern int dot_symbols;
+ " -m elf64ppc")
+ #endif
+
++/* link libssp_nonshared.a with musl */
++#if DEFAULT_LIBC == LIBC_MUSL
++#ifdef TARGET_LIBC_PROVIDES_SSP
++#undef LINK_SSP_SPEC
++#define LINK_SSP_SPEC "%{fstack-protector|fstack-protector-all" \
++ "|fstack-protector-strong|fstack-protector-explicit" \
++ ":-lssp_nonshared}"
++#endif
++#endif
++
+ #define LINK_OS_LINUX_SPEC32 LINK_OS_LINUX_EMUL32 " %{!shared: %{!static: \
+ %{!static-pie: \
+ %{rdynamic:-export-dynamic} \
+--
+2.17.0
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-8.2/0034-libgcc-Add-knob-to-use-ldbl-128-on-ppc.patch b/poky/meta/recipes-devtools/gcc/gcc-8.2/0034-libgcc-Add-knob-to-use-ldbl-128-on-ppc.patch
new file mode 100644
index 000000000..7a69ea280
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-8.2/0034-libgcc-Add-knob-to-use-ldbl-128-on-ppc.patch
@@ -0,0 +1,125 @@
+From faf35e26740461fe1a1da5433d5a0169a663e3b5 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 29 Apr 2016 20:03:28 +0000
+Subject: [PATCH 34/39] libgcc: Add knob to use ldbl-128 on ppc
+
+musl does not support ldbl 128 so we can not assume
+that linux as a whole supports ldbl-128 bits, instead
+act upon configure option passed to gcc and assume no
+on musl and yes otherwise if no option is passed since
+default behaviour is to assume ldbl128 it does not
+change the defaults
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+Upstream-Status: Pending
+
+ libgcc/Makefile.in | 1 +
+ libgcc/config/rs6000/t-linux | 5 ++++-
+ libgcc/configure | 18 ++++++++++++++++++
+ libgcc/configure.ac | 12 ++++++++++++
+ 4 files changed, 35 insertions(+), 1 deletion(-)
+ mode change 100644 => 100755 libgcc/configure
+
+diff --git a/libgcc/Makefile.in b/libgcc/Makefile.in
+index dd8cee99fd3..b5f478af382 100644
+--- a/libgcc/Makefile.in
++++ b/libgcc/Makefile.in
+@@ -48,6 +48,7 @@ unwind_header = @unwind_header@
+ md_unwind_header = @md_unwind_header@
+ sfp_machine_header = @sfp_machine_header@
+ thread_header = @thread_header@
++with_ldbl128 = @with_ldbl128@
+
+ host_noncanonical = @host_noncanonical@
+ real_host_noncanonical = @real_host_noncanonical@
+diff --git a/libgcc/config/rs6000/t-linux b/libgcc/config/rs6000/t-linux
+index 4f6d4c4a4d2..c50dd94a2da 100644
+--- a/libgcc/config/rs6000/t-linux
++++ b/libgcc/config/rs6000/t-linux
+@@ -1,3 +1,6 @@
+ SHLIB_MAPFILES += $(srcdir)/config/rs6000/libgcc-glibc.ver
+
+-HOST_LIBGCC2_CFLAGS += -mlong-double-128 -mno-minimal-toc
++ifeq ($(with_ldbl128),yes)
++HOST_LIBGCC2_CFLAGS += -mlong-double-128
++endif
++HOST_LIBGCC2_CFLAGS += -mno-minimal-toc
+diff --git a/libgcc/configure b/libgcc/configure
+old mode 100644
+new mode 100755
+index b2f3f870844..ed806587c17
+--- a/libgcc/configure
++++ b/libgcc/configure
+@@ -619,6 +619,7 @@ build_vendor
+ build_cpu
+ build
+ with_aix_soname
++with_ldbl128
+ enable_vtable_verify
+ enable_shared
+ libgcc_topdir
+@@ -668,6 +669,7 @@ with_cross_host
+ with_ld
+ enable_shared
+ enable_vtable_verify
++with_long_double_128
+ with_aix_soname
+ enable_version_specific_runtime_libs
+ with_slibdir
+@@ -1329,6 +1331,7 @@ Optional Packages:
+ --with-target-subdir=SUBDIR Configuring in a subdirectory for target
+ --with-cross-host=HOST Configuring with a cross compiler
+ --with-ld arrange to use the specified ld (full pathname)
++ --with-long-double-128 use 128-bit long double by default
+ --with-aix-soname=aix|svr4|both
+ shared library versioning (aka "SONAME") variant to
+ provide on AIX
+@@ -2213,6 +2216,21 @@ fi
+
+
+
++# Check whether --with-long-double-128 was given.
++if test "${with_long_double_128+set}" = set; then :
++ withval=$with_long_double_128; with_ldbl128="$with_long_double_128"
++else
++ case "${host}" in
++ power*-*-musl*)
++ with_ldbl128="no";;
++ *) with_ldbl128="yes";;
++ esac
++
++fi
++
++
++
++
+ # Check whether --with-aix-soname was given.
+ if test "${with_aix_soname+set}" = set; then :
+ withval=$with_aix_soname; case "${host}:${enable_shared}" in
+diff --git a/libgcc/configure.ac b/libgcc/configure.ac
+index b59aa746afc..42220a263c5 100644
+--- a/libgcc/configure.ac
++++ b/libgcc/configure.ac
+@@ -78,6 +78,18 @@ AC_ARG_ENABLE(vtable-verify,
+ [enable_vtable_verify=no])
+ AC_SUBST(enable_vtable_verify)
+
++AC_ARG_WITH(long-double-128,
++[AS_HELP_STRING([--with-long-double-128],
++ [use 128-bit long double by default])],
++ with_ldbl128="$with_long_double_128",
++[case "${host}" in
++ power*-*-musl*)
++ with_ldbl128="no";;
++ *) with_ldbl128="yes";;
++ esac
++])
++AC_SUBST(with_ldbl128)
++
+ AC_ARG_WITH(aix-soname,
+ [AS_HELP_STRING([--with-aix-soname=aix|svr4|both],
+ [shared library versioning (aka "SONAME") variant to provide on AIX])],
+--
+2.17.0
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-8.2/0035-Link-libgcc-using-LDFLAGS-not-just-SHLIB_LDFLAGS.patch b/poky/meta/recipes-devtools/gcc/gcc-8.2/0035-Link-libgcc-using-LDFLAGS-not-just-SHLIB_LDFLAGS.patch
new file mode 100644
index 000000000..5e416e010
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-8.2/0035-Link-libgcc-using-LDFLAGS-not-just-SHLIB_LDFLAGS.patch
@@ -0,0 +1,29 @@
+From 775c7fafcbfebed2d4bd8a6a011f18f70f3b59d3 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Wed, 4 May 2016 21:11:34 -0700
+Subject: [PATCH 35/39] Link libgcc using LDFLAGS, not just SHLIB_LDFLAGS
+
+Upstream-Status: Pending
+
+Signed-off-by: Christopher Larson <chris_larson@mentor.com>
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ libgcc/config/t-slibgcc | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/libgcc/config/t-slibgcc b/libgcc/config/t-slibgcc
+index 7e60b621a2d..ea22ede3361 100644
+--- a/libgcc/config/t-slibgcc
++++ b/libgcc/config/t-slibgcc
+@@ -32,7 +32,7 @@ SHLIB_INSTALL_SOLINK = $(LN_S) $(SHLIB_SONAME) \
+ $(DESTDIR)$(slibdir)$(SHLIB_SLIBDIR_QUAL)/$(SHLIB_SOLINK)
+
+ SHLIB_LINK = $(CC) $(LIBGCC2_CFLAGS) -shared -nodefaultlibs \
+- $(SHLIB_LDFLAGS) \
++ $(LDFLAGS) $(SHLIB_LDFLAGS) \
+ -o $(SHLIB_DIR)/$(SHLIB_SONAME).tmp @multilib_flags@ \
+ $(SHLIB_OBJS) $(SHLIB_LC) && \
+ rm -f $(SHLIB_DIR)/$(SHLIB_SOLINK) && \
+--
+2.17.0
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-8.2/0036-libgcc_s-Use-alias-for-__cpu_indicator_init-instead-.patch b/poky/meta/recipes-devtools/gcc/gcc-8.2/0036-libgcc_s-Use-alias-for-__cpu_indicator_init-instead-.patch
new file mode 100644
index 000000000..8def33a17
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-8.2/0036-libgcc_s-Use-alias-for-__cpu_indicator_init-instead-.patch
@@ -0,0 +1,86 @@
+From b7faeed60261d7b75f2db3823926de1650ef64bc Mon Sep 17 00:00:00 2001
+From: Szabolcs Nagy <nsz@port70.net>
+Date: Sat, 24 Oct 2015 20:09:53 +0000
+Subject: [PATCH 36/39] libgcc_s: Use alias for __cpu_indicator_init instead of
+ symver
+
+Adapter from
+
+https://gcc.gnu.org/ml/gcc-patches/2015-05/msg00899.html
+
+This fix was debated but hasnt been applied gcc upstream since
+they expect musl to support '@' in symbol versioning which is
+a sun/gnu versioning extention. This patch however avoids the
+need for the '@' symbols at all
+
+libgcc/Changelog:
+
+2015-05-11 Szabolcs Nagy <szabolcs.nagy@arm.com>
+
+ * config/i386/cpuinfo.c (__cpu_indicator_init_local): Add.
+ (__cpu_indicator_init@GCC_4.8.0, __cpu_model@GCC_4.8.0): Remove.
+
+ * config/i386/t-linux (HOST_LIBGCC2_CFLAGS): Remove -DUSE_ELF_SYMVER.
+
+gcc/Changelog:
+
+2015-05-11 Szabolcs Nagy <szabolcs.nagy@arm.com>
+
+ * config/i386/i386.c (ix86_expand_builtin): Make __builtin_cpu_init
+ call __cpu_indicator_init_local instead of __cpu_indicator_init.
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+Upstream-Status: Pending
+
+ gcc/config/i386/i386.c | 4 ++--
+ libgcc/config/i386/cpuinfo.c | 6 +++---
+ libgcc/config/i386/t-linux | 2 +-
+ 3 files changed, 6 insertions(+), 6 deletions(-)
+
+diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c
+index 6a2141e48db..455fccbdd50 100644
+--- a/gcc/config/i386/i386.c
++++ b/gcc/config/i386/i386.c
+@@ -36490,10 +36490,10 @@ ix86_expand_builtin (tree exp, rtx target, rtx subtarget,
+ {
+ case IX86_BUILTIN_CPU_INIT:
+ {
+- /* Make it call __cpu_indicator_init in libgcc. */
++ /* Make it call __cpu_indicator_init_local in libgcc.a. */
+ tree call_expr, fndecl, type;
+ type = build_function_type_list (integer_type_node, NULL_TREE);
+- fndecl = build_fn_decl ("__cpu_indicator_init", type);
++ fndecl = build_fn_decl ("__cpu_indicator_init_local", type);
+ call_expr = build_call_expr (fndecl, 0);
+ return expand_expr (call_expr, target, mode, EXPAND_NORMAL);
+ }
+diff --git a/libgcc/config/i386/cpuinfo.c b/libgcc/config/i386/cpuinfo.c
+index 86953db2743..e0476272810 100644
+--- a/libgcc/config/i386/cpuinfo.c
++++ b/libgcc/config/i386/cpuinfo.c
+@@ -482,7 +482,7 @@ __cpu_indicator_init (void)
+ return 0;
+ }
+
+-#if defined SHARED && defined USE_ELF_SYMVER
+-__asm__ (".symver __cpu_indicator_init, __cpu_indicator_init@GCC_4.8.0");
+-__asm__ (".symver __cpu_model, __cpu_model@GCC_4.8.0");
++#ifndef SHARED
++int __cpu_indicator_init_local (void)
++ __attribute__ ((weak, alias ("__cpu_indicator_init")));
+ #endif
+diff --git a/libgcc/config/i386/t-linux b/libgcc/config/i386/t-linux
+index 8506a635790..564296f788e 100644
+--- a/libgcc/config/i386/t-linux
++++ b/libgcc/config/i386/t-linux
+@@ -3,5 +3,5 @@
+ # t-slibgcc-elf-ver and t-linux
+ SHLIB_MAPFILES = libgcc-std.ver $(srcdir)/config/i386/libgcc-glibc.ver
+
+-HOST_LIBGCC2_CFLAGS += -mlong-double-80 -DUSE_ELF_SYMVER $(CET_FLAGS)
++HOST_LIBGCC2_CFLAGS += -mlong-double-80 $(CET_FLAGS)
+ CRTSTUFF_T_CFLAGS += $(CET_FLAGS)
+--
+2.17.0
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-8.2/0037-sync-gcc-stddef.h-with-musl.patch b/poky/meta/recipes-devtools/gcc/gcc-8.2/0037-sync-gcc-stddef.h-with-musl.patch
new file mode 100644
index 000000000..f8a7f41ab
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-8.2/0037-sync-gcc-stddef.h-with-musl.patch
@@ -0,0 +1,91 @@
+From 602abaab15ffb60bf1797187a71b485042c56360 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 3 Feb 2017 12:56:00 -0800
+Subject: [PATCH 37/39] sync gcc stddef.h with musl
+
+musl defines ptrdiff_t size_t and wchar_t
+so dont define them here if musl is definining them
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+Upstream-Status: Pending
+
+ gcc/ginclude/stddef.h | 9 +++++++++
+ 1 file changed, 9 insertions(+)
+
+diff --git a/gcc/ginclude/stddef.h b/gcc/ginclude/stddef.h
+index 31b96a7e5e1..438a3ce7c56 100644
+--- a/gcc/ginclude/stddef.h
++++ b/gcc/ginclude/stddef.h
+@@ -134,6 +134,7 @@ _TYPE_wchar_t;
+ #ifndef ___int_ptrdiff_t_h
+ #ifndef _GCC_PTRDIFF_T
+ #ifndef _PTRDIFF_T_DECLARED /* DragonFly */
++#ifndef __DEFINED_ptrdiff_t /* musl */
+ #define _PTRDIFF_T
+ #define _T_PTRDIFF_
+ #define _T_PTRDIFF
+@@ -143,10 +144,12 @@ _TYPE_wchar_t;
+ #define ___int_ptrdiff_t_h
+ #define _GCC_PTRDIFF_T
+ #define _PTRDIFF_T_DECLARED
++#define __DEFINED_ptrdiff_t /* musl */
+ #ifndef __PTRDIFF_TYPE__
+ #define __PTRDIFF_TYPE__ long int
+ #endif
+ typedef __PTRDIFF_TYPE__ ptrdiff_t;
++#endif /* __DEFINED_ptrdiff_t */
+ #endif /* _PTRDIFF_T_DECLARED */
+ #endif /* _GCC_PTRDIFF_T */
+ #endif /* ___int_ptrdiff_t_h */
+@@ -184,6 +187,7 @@ typedef __PTRDIFF_TYPE__ ptrdiff_t;
+ #ifndef _GCC_SIZE_T
+ #ifndef _SIZET_
+ #ifndef __size_t
++#ifndef __DEFINED_size_t /* musl */
+ #define __size_t__ /* BeOS */
+ #define __SIZE_T__ /* Cray Unicos/Mk */
+ #define _SIZE_T
+@@ -200,6 +204,7 @@ typedef __PTRDIFF_TYPE__ ptrdiff_t;
+ #define ___int_size_t_h
+ #define _GCC_SIZE_T
+ #define _SIZET_
++#define __DEFINED_size_t /* musl */
+ #if (defined (__FreeBSD__) && (__FreeBSD__ >= 5)) \
+ || defined(__DragonFly__) \
+ || defined(__FreeBSD_kernel__)
+@@ -235,6 +240,7 @@ typedef long ssize_t;
+ #endif /* _SIZE_T */
+ #endif /* __SIZE_T__ */
+ #endif /* __size_t__ */
++#endif /* __DEFINED_size_t */
+ #undef __need_size_t
+ #endif /* _STDDEF_H or __need_size_t. */
+
+@@ -264,6 +270,7 @@ typedef long ssize_t;
+ #ifndef ___int_wchar_t_h
+ #ifndef __INT_WCHAR_T_H
+ #ifndef _GCC_WCHAR_T
++#ifndef __DEFINED_wchar_t /* musl */
+ #define __wchar_t__ /* BeOS */
+ #define __WCHAR_T__ /* Cray Unicos/Mk */
+ #define _WCHAR_T
+@@ -279,6 +286,7 @@ typedef long ssize_t;
+ #define __INT_WCHAR_T_H
+ #define _GCC_WCHAR_T
+ #define _WCHAR_T_DECLARED
++#define __DEFINED_wchar_t /* musl */
+
+ /* On BSD/386 1.1, at least, machine/ansi.h defines _BSD_WCHAR_T_
+ instead of _WCHAR_T_, and _BSD_RUNE_T_ (which, unlike the other
+@@ -344,6 +352,7 @@ typedef __WCHAR_TYPE__ wchar_t;
+ #endif
+ #endif /* __WCHAR_T__ */
+ #endif /* __wchar_t__ */
++#endif /* __DEFINED_wchar_t musl */
+ #undef __need_wchar_t
+ #endif /* _STDDEF_H or __need_wchar_t. */
+
+--
+2.17.0
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-8.2/0038-fix-segmentation-fault-in-precompiled-header-generat.patch b/poky/meta/recipes-devtools/gcc/gcc-8.2/0038-fix-segmentation-fault-in-precompiled-header-generat.patch
new file mode 100644
index 000000000..224d2ae6d
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-8.2/0038-fix-segmentation-fault-in-precompiled-header-generat.patch
@@ -0,0 +1,60 @@
+From 00694849632dee23741925c6104df134f6bff747 Mon Sep 17 00:00:00 2001
+From: Juro Bystricky <juro.bystricky@intel.com>
+Date: Mon, 19 Mar 2018 22:31:20 -0700
+Subject: [PATCH 38/39] fix segmentation fault in precompiled header generation
+
+Prevent a segmentation fault which occurs when using incorrect
+structure trying to access name of some named operators, such as
+CPP_NOT, CPP_AND etc. "token->val.node.spelling" cannot be used in
+those cases, as is may not be initialized at all.
+
+[YOCTO #11738]
+
+Upstream-Status: Pending
+
+Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ libcpp/lex.c | 26 +++++++++++++++++++++-----
+ 1 file changed, 21 insertions(+), 5 deletions(-)
+
+diff --git a/libcpp/lex.c b/libcpp/lex.c
+index 37c365a3560..63480048db6 100644
+--- a/libcpp/lex.c
++++ b/libcpp/lex.c
+@@ -3279,11 +3279,27 @@ cpp_spell_token (cpp_reader *pfile, const cpp_token *token,
+ spell_ident:
+ case SPELL_IDENT:
+ if (forstring)
+- {
+- memcpy (buffer, NODE_NAME (token->val.node.spelling),
+- NODE_LEN (token->val.node.spelling));
+- buffer += NODE_LEN (token->val.node.spelling);
+- }
++ {
++ if (token->type == CPP_NAME)
++ {
++ memcpy (buffer, NODE_NAME (token->val.node.spelling),
++ NODE_LEN (token->val.node.spelling));
++ buffer += NODE_LEN (token->val.node.spelling);
++ break;
++ }
++ /* NAMED_OP, cannot use node.spelling */
++ if (token->flags & NAMED_OP)
++ {
++ const char *str = cpp_named_operator2name (token->type);
++ if (str)
++ {
++ size_t len = strlen(str);
++ memcpy(buffer, str, len);
++ buffer += len;
++ }
++ break;
++ }
++ }
+ else
+ buffer = _cpp_spell_ident_ucns (buffer, token->val.node.node);
+ break;
+--
+2.17.0
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-8.2/0039-Fix-for-testsuite-failure.patch b/poky/meta/recipes-devtools/gcc/gcc-8.2/0039-Fix-for-testsuite-failure.patch
new file mode 100644
index 000000000..f35163099
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-8.2/0039-Fix-for-testsuite-failure.patch
@@ -0,0 +1,258 @@
+From d151a62c252749643c850a08d1335321e5b75d42 Mon Sep 17 00:00:00 2001
+From: RAGHUNATH LOLUR <raghunath.lolur@kpit.com>
+Date: Wed, 6 Dec 2017 22:52:26 -0800
+Subject: [PATCH 39/39] Fix for testsuite failure
+
+2017-11-16 Raghunath Lolur <raghunath.lolur@kpit.com>
+
+ * gcc.dg/pr56275.c: If SSE is disabled, ensure that
+ "-mfpmath" is not set to use SSE. Set "-mfpmath=387".
+ * gcc.dg/pr68306.c: Likewise
+ * gcc.dg/pr68306-2.c: Likewise
+ * gcc.dg/pr68306-3.c: Likewise
+ * gcc.dg/pr69634.c: Likewise
+ * gcc.target/i386/amd64-abi-1.c: Likewise
+ * gcc.target/i386/funcspec-6.c: Likewise
+ * gcc.target/i386/interrupt-387-err-1.c: Likewise
+ * gcc.target/i386/isa-14.c: Likewise
+ * gcc.target/i386/pr44948-2b.c: Likewise
+ * gcc.target/i386/pr53425-1.c: Likewise
+ * gcc.target/i386/pr53425-2.c: Likewise
+ * gcc.target/i386/pr55247.c: Likewise
+ * gcc.target/i386/pr59644.c: Likewise
+ * gcc.target/i386/pr62120.c: Likewise
+ * gcc.target/i386/pr70467-1.c: Likewise
+ * gcc.target/i386/warn-vect-op-1.c: Likewise
+
+If -Wall, -Werror are used during compilation various test cases fail
+to compile.
+
+If SSE is disabled, be sure to -mfpmath=387 to resolve this.
+
+This patch removes the changes to Changelog from the original patch.
+This will help us avoid conflicts.
+
+Upstream-Status: Pending
+
+Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
+---
+ gcc/testsuite/gcc.dg/pr56275.c | 2 +-
+ gcc/testsuite/gcc.dg/pr68306-2.c | 2 +-
+ gcc/testsuite/gcc.dg/pr68306-3.c | 2 +-
+ gcc/testsuite/gcc.dg/pr68306.c | 2 +-
+ gcc/testsuite/gcc.dg/pr69634.c | 2 +-
+ gcc/testsuite/gcc.target/i386/amd64-abi-1.c | 2 +-
+ gcc/testsuite/gcc.target/i386/funcspec-6.c | 1 +
+ gcc/testsuite/gcc.target/i386/interrupt-387-err-1.c | 2 +-
+ gcc/testsuite/gcc.target/i386/isa-14.c | 2 +-
+ gcc/testsuite/gcc.target/i386/pr44948-2b.c | 2 +-
+ gcc/testsuite/gcc.target/i386/pr53425-1.c | 2 +-
+ gcc/testsuite/gcc.target/i386/pr53425-2.c | 2 +-
+ gcc/testsuite/gcc.target/i386/pr55247.c | 2 +-
+ gcc/testsuite/gcc.target/i386/pr59644.c | 2 +-
+ gcc/testsuite/gcc.target/i386/pr62120.c | 2 +-
+ gcc/testsuite/gcc.target/i386/pr70467-1.c | 2 +-
+ gcc/testsuite/gcc.target/i386/warn-vect-op-1.c | 2 +-
+ 17 files changed, 17 insertions(+), 16 deletions(-)
+
+diff --git a/gcc/testsuite/gcc.dg/pr56275.c b/gcc/testsuite/gcc.dg/pr56275.c
+index b901bb2b199..a4f6c95e1a1 100644
+--- a/gcc/testsuite/gcc.dg/pr56275.c
++++ b/gcc/testsuite/gcc.dg/pr56275.c
+@@ -1,6 +1,6 @@
+ /* { dg-do compile } */
+ /* { dg-options "-O2" } */
+-/* { dg-additional-options "-mno-sse" { target { i?86-*-* x86_64-*-* } } } */
++/* { dg-additional-options "-mno-sse -mfpmath=387" { target { i?86-*-* x86_64-*-* } } } */
+
+ typedef long long v2tw __attribute__ ((vector_size (2 * sizeof (long long))));
+
+diff --git a/gcc/testsuite/gcc.dg/pr68306-2.c b/gcc/testsuite/gcc.dg/pr68306-2.c
+index 4672ebe7987..2a368c484b6 100644
+--- a/gcc/testsuite/gcc.dg/pr68306-2.c
++++ b/gcc/testsuite/gcc.dg/pr68306-2.c
+@@ -1,6 +1,6 @@
+ /* { dg-do compile } */
+ /* { dg-options "-O3" } */
+-/* { dg-additional-options "-mno-sse -mno-mmx" { target i?86-*-* x86_64-*-* } } */
++/* { dg-additional-options "-mno-sse -mno-mmx -mfpmath=387" { target i?86-*-* x86_64-*-* } } */
+
+ struct {
+ int tz_minuteswest;
+diff --git a/gcc/testsuite/gcc.dg/pr68306-3.c b/gcc/testsuite/gcc.dg/pr68306-3.c
+index f5a8c102cf8..df3390c64c2 100644
+--- a/gcc/testsuite/gcc.dg/pr68306-3.c
++++ b/gcc/testsuite/gcc.dg/pr68306-3.c
+@@ -1,6 +1,6 @@
+ /* { dg-do compile } */
+ /* { dg-options "-O3" } */
+-/* { dg-additional-options "-mno-sse -mno-mmx" { target i?86-*-* x86_64-*-* } } */
++/* { dg-additional-options "-mno-sse -mno-mmx -mfpmath=387" { target i?86-*-* x86_64-*-* } } */
+ /* { dg-additional-options "-mno-altivec -mno-vsx" { target powerpc*-*-* } } */
+
+ extern void fn2();
+diff --git a/gcc/testsuite/gcc.dg/pr68306.c b/gcc/testsuite/gcc.dg/pr68306.c
+index 54e5b40f221..0813389e2c1 100644
+--- a/gcc/testsuite/gcc.dg/pr68306.c
++++ b/gcc/testsuite/gcc.dg/pr68306.c
+@@ -1,6 +1,6 @@
+ /* { dg-do compile } */
+ /* { dg-options "-O3" } */
+-/* { dg-additional-options "-mno-sse -mno-mmx" { target i?86-*-* x86_64-*-* } } */
++/* { dg-additional-options "-mno-sse -mno-mmx -mfpmath=387" { target i?86-*-* x86_64-*-* } } */
+
+ enum powerpc_pmc_type { PPC_PMC_IBM };
+ struct {
+diff --git a/gcc/testsuite/gcc.dg/pr69634.c b/gcc/testsuite/gcc.dg/pr69634.c
+index 60a56149463..bcc23f9ccd6 100644
+--- a/gcc/testsuite/gcc.dg/pr69634.c
++++ b/gcc/testsuite/gcc.dg/pr69634.c
+@@ -1,6 +1,6 @@
+ /* { dg-do compile } */
+ /* { dg-options "-O2 -fno-dce -fschedule-insns -fno-tree-vrp -fcompare-debug -Wno-psabi" } */
+-/* { dg-additional-options "-mno-sse" { target i?86-*-* x86_64-*-* } } */
++/* { dg-additional-options "-mno-sse -mfpmath=387" { target i?86-*-* x86_64-*-* } } */
+ /* { dg-require-effective-target scheduling } */
+
+ typedef unsigned short u16;
+diff --git a/gcc/testsuite/gcc.target/i386/amd64-abi-1.c b/gcc/testsuite/gcc.target/i386/amd64-abi-1.c
+index 69fde57bf06..7f1f1c03edf 100644
+--- a/gcc/testsuite/gcc.target/i386/amd64-abi-1.c
++++ b/gcc/testsuite/gcc.target/i386/amd64-abi-1.c
+@@ -1,5 +1,5 @@
+ /* { dg-do compile { target { ! ia32 } } } */
+-/* { dg-options "-mno-sse" } */
++/* { dg-options "-mno-sse -mfpmath=387" } */
+ /* { dg-additional-options "-mabi=sysv" { target *-*-mingw* } } */
+
+ double foo(void) { return 0; } /* { dg-error "SSE disabled" } */
+diff --git a/gcc/testsuite/gcc.target/i386/funcspec-6.c b/gcc/testsuite/gcc.target/i386/funcspec-6.c
+index ea896b7ebfd..bf15569b826 100644
+--- a/gcc/testsuite/gcc.target/i386/funcspec-6.c
++++ b/gcc/testsuite/gcc.target/i386/funcspec-6.c
+@@ -1,6 +1,7 @@
+ /* Test whether all of the 64-bit function specific options are accepted
+ without error. */
+ /* { dg-do compile { target { ! ia32 } } } */
++/* { dg-additional-options "-mfpmath=387" } */
+
+ #include "funcspec-56.inc"
+
+diff --git a/gcc/testsuite/gcc.target/i386/interrupt-387-err-1.c b/gcc/testsuite/gcc.target/i386/interrupt-387-err-1.c
+index 3fbdc881dda..6b4d9d1252a 100644
+--- a/gcc/testsuite/gcc.target/i386/interrupt-387-err-1.c
++++ b/gcc/testsuite/gcc.target/i386/interrupt-387-err-1.c
+@@ -1,5 +1,5 @@
+ /* { dg-do compile } */
+-/* { dg-options "-O2 -mgeneral-regs-only -mno-cld -mno-iamcu -m80387" } */
++/* { dg-options "-O2 -mgeneral-regs-only -mno-cld -mno-iamcu -m80387 -mfpmath=387" } */
+
+ typedef unsigned int uword_t __attribute__ ((mode (__word__)));
+
+diff --git a/gcc/testsuite/gcc.target/i386/isa-14.c b/gcc/testsuite/gcc.target/i386/isa-14.c
+index 5d49e6e77fe..1de2db92bdd 100644
+--- a/gcc/testsuite/gcc.target/i386/isa-14.c
++++ b/gcc/testsuite/gcc.target/i386/isa-14.c
+@@ -1,5 +1,5 @@
+ /* { dg-do run } */
+-/* { dg-options "-march=x86-64 -msse4a -mfma4 -mno-sse" } */
++/* { dg-options "-march=x86-64 -msse4a -mfma4 -mno-sse -mfpmath=387" } */
+
+ extern void abort (void);
+
+diff --git a/gcc/testsuite/gcc.target/i386/pr44948-2b.c b/gcc/testsuite/gcc.target/i386/pr44948-2b.c
+index fa1769b62fb..f79fb12726f 100644
+--- a/gcc/testsuite/gcc.target/i386/pr44948-2b.c
++++ b/gcc/testsuite/gcc.target/i386/pr44948-2b.c
+@@ -1,5 +1,5 @@
+ /* { dg-do compile } */
+-/* { dg-options "-O -mno-sse -Wno-psabi -mtune=generic" } */
++/* { dg-options "-O -mno-sse -Wno-psabi -mtune=generic -mfpmath=387" } */
+
+ struct A
+ {
+diff --git a/gcc/testsuite/gcc.target/i386/pr53425-1.c b/gcc/testsuite/gcc.target/i386/pr53425-1.c
+index 2e89ff7d81d..6339bf6b736 100644
+--- a/gcc/testsuite/gcc.target/i386/pr53425-1.c
++++ b/gcc/testsuite/gcc.target/i386/pr53425-1.c
+@@ -1,6 +1,6 @@
+ /* PR target/53425 */
+ /* { dg-do compile { target { ! ia32 } } } */
+-/* { dg-options "-O2 -mno-sse" } */
++/* { dg-options "-O2 -mno-sse -mfpmath=387" } */
+ /* { dg-skip-if "no SSE vector" { x86_64-*-mingw* } } */
+
+ typedef double __v2df __attribute__ ((__vector_size__ (16)));
+diff --git a/gcc/testsuite/gcc.target/i386/pr53425-2.c b/gcc/testsuite/gcc.target/i386/pr53425-2.c
+index 61f6283dbe9..2c5a55f0ac3 100644
+--- a/gcc/testsuite/gcc.target/i386/pr53425-2.c
++++ b/gcc/testsuite/gcc.target/i386/pr53425-2.c
+@@ -1,6 +1,6 @@
+ /* PR target/53425 */
+ /* { dg-do compile { target { ! ia32 } } } */
+-/* { dg-options "-O2 -mno-sse" } */
++/* { dg-options "-O2 -mno-sse -mfpmath=387" } */
+ /* { dg-skip-if "no SSE vector" { x86_64-*-mingw* } } */
+
+ typedef float __v2sf __attribute__ ((__vector_size__ (8)));
+diff --git a/gcc/testsuite/gcc.target/i386/pr55247.c b/gcc/testsuite/gcc.target/i386/pr55247.c
+index 23366d0909d..9810e3abb76 100644
+--- a/gcc/testsuite/gcc.target/i386/pr55247.c
++++ b/gcc/testsuite/gcc.target/i386/pr55247.c
+@@ -1,6 +1,6 @@
+ /* { dg-do compile { target { ! ia32 } } } */
+ /* { dg-require-effective-target maybe_x32 } */
+-/* { dg-options "-O2 -mno-sse -mno-mmx -mx32 -maddress-mode=long" } */
++/* { dg-options "-O2 -mno-sse -mno-mmx -mx32 -maddress-mode=long -mfpmath=387" } */
+
+ typedef unsigned int uint32_t;
+ typedef uint32_t Elf32_Word;
+diff --git a/gcc/testsuite/gcc.target/i386/pr59644.c b/gcc/testsuite/gcc.target/i386/pr59644.c
+index 96006b3e338..4287e4538bf 100644
+--- a/gcc/testsuite/gcc.target/i386/pr59644.c
++++ b/gcc/testsuite/gcc.target/i386/pr59644.c
+@@ -1,6 +1,6 @@
+ /* PR target/59644 */
+ /* { dg-do run { target lp64 } } */
+-/* { dg-options "-O2 -ffreestanding -mno-sse -mpreferred-stack-boundary=3 -maccumulate-outgoing-args -mno-red-zone" } */
++/* { dg-options "-O2 -ffreestanding -mno-sse -mpreferred-stack-boundary=3 -maccumulate-outgoing-args -mno-red-zone -mfpmath=387" } */
+
+ /* This test uses __builtin_trap () instead of e.g. abort,
+ because due to -mpreferred-stack-boundary=3 it should not call
+diff --git a/gcc/testsuite/gcc.target/i386/pr62120.c b/gcc/testsuite/gcc.target/i386/pr62120.c
+index bfb8c4703eb..ed04cf181f3 100644
+--- a/gcc/testsuite/gcc.target/i386/pr62120.c
++++ b/gcc/testsuite/gcc.target/i386/pr62120.c
+@@ -1,5 +1,5 @@
+ /* { dg-do compile } */
+-/* { dg-options "-mno-sse" } */
++/* { dg-options "-mno-sse -mfpmath=387" } */
+
+ void foo ()
+ {
+diff --git a/gcc/testsuite/gcc.target/i386/pr70467-1.c b/gcc/testsuite/gcc.target/i386/pr70467-1.c
+index 4e112c88d07..bcfb396a68d 100644
+--- a/gcc/testsuite/gcc.target/i386/pr70467-1.c
++++ b/gcc/testsuite/gcc.target/i386/pr70467-1.c
+@@ -1,6 +1,6 @@
+ /* PR rtl-optimization/70467 */
+ /* { dg-do compile } */
+-/* { dg-options "-O2 -mno-sse" } */
++/* { dg-options "-O2 -mno-sse -mfpmath=387" } */
+
+ void foo (unsigned long long *);
+
+diff --git a/gcc/testsuite/gcc.target/i386/warn-vect-op-1.c b/gcc/testsuite/gcc.target/i386/warn-vect-op-1.c
+index 6cda1534311..26e37f5b8ba 100644
+--- a/gcc/testsuite/gcc.target/i386/warn-vect-op-1.c
++++ b/gcc/testsuite/gcc.target/i386/warn-vect-op-1.c
+@@ -1,5 +1,5 @@
+ /* { dg-do compile { target { ! ia32 } } } */
+-/* { dg-options "-mno-sse -Wvector-operation-performance" } */
++/* { dg-options "-mno-sse -Wvector-operation-performance -mfpmath=387" } */
+ #define vector(elcount, type) \
+ __attribute__((vector_size((elcount)*sizeof(type)))) type
+
+--
+2.17.0
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-8.2/0040-Re-introduce-spe-commandline-options.patch b/poky/meta/recipes-devtools/gcc/gcc-8.2/0040-Re-introduce-spe-commandline-options.patch
new file mode 100644
index 000000000..8afa0102d
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-8.2/0040-Re-introduce-spe-commandline-options.patch
@@ -0,0 +1,41 @@
+From 8fb8f773e117ee70be00bb0da5f343fe110da5c4 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Wed, 6 Jun 2018 12:10:22 -0700
+Subject: [PATCH 40/40] Re-introduce spe commandline options
+
+This should ensure that we keep accepting
+spe options
+
+Upstream-Status: Inappropriate [SPE port is removed from rs600 port]
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ gcc/config/rs6000/rs6000.opt | 12 ++++++++++++
+ 1 file changed, 12 insertions(+)
+
+diff --git a/gcc/config/rs6000/rs6000.opt b/gcc/config/rs6000/rs6000.opt
+index ace8a477550..d6a8f825d88 100644
+--- a/gcc/config/rs6000/rs6000.opt
++++ b/gcc/config/rs6000/rs6000.opt
+@@ -365,6 +365,18 @@ mdebug=
+ Target RejectNegative Joined
+ -mdebug= Enable debug output.
+
++mspe
++Target Var(rs6000_spe) Save
++Generate SPE SIMD instructions on E500.
++
++mabi=spe
++Target RejectNegative Var(rs6000_spe_abi) Save
++Use the SPE ABI extensions.
++
++mabi=no-spe
++Target RejectNegative Var(rs6000_spe_abi, 0)
++Do not use the SPE ABI extensions.
++
+ mabi=altivec
+ Target RejectNegative Var(rs6000_altivec_abi) Save
+ Use the AltiVec ABI extensions.
+--
+2.17.1
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-8.2/0041-ARC-fix-spec-gen.patch b/poky/meta/recipes-devtools/gcc/gcc-8.2/0041-ARC-fix-spec-gen.patch
new file mode 100644
index 000000000..cbd5e41ab
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-8.2/0041-ARC-fix-spec-gen.patch
@@ -0,0 +1,44 @@
+From 892142379c6b99fe8c3ebdfe0b79e2a435228c1d Mon Sep 17 00:00:00 2001
+From: claziss <claziss@138bc75d-0d04-0410-961f-82ee72b054a4>
+Date: Mon, 17 Sep 2018 08:52:10 +0000
+Subject: [PATCH] [ARC] Update LINK_EH_SPEC linker spec.
+
+With no trailing space in LINK_EH_SPEC linker spec gets generated as:
+------------------------>8---------------------
+%{!r:--build-id} --eh-frame-hdr%{h*} ...
+------------------------>8---------------------
+
+or even worse if hash style is added:
+------------------------>8---------------------
+%{!r:--build-id} --eh-frame-hdr--hash-style=sysv %{h*} ...
+------------------------>8---------------------
+
+Now if that spec is really used by LD then it fails inevitably
+saying that it doesn't know option "--eh-frame-hdr--hash-style=sysv".
+
+2018-09-17 Alexey Brodkin <abrodkin@synopsys.com>
+
+ * config/arc/linux.h (LINK_EH_SPEC): Add missing space.
+
+git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@264361 138bc75d-0d04-0410-961f-82ee72b054a4
+
+Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
+
+Upstream-Status: Backport[https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=892142379c6b]
+---
+ gcc/config/arc/linux.h | 2 +-
+ 1 files changed, 1 insertions(+), 1 deletion(-)
+
+diff --git a/gcc/config/arc/linux.h b/gcc/config/arc/linux.h
+index 96d548eae341..62ebe4de0fc7 100644
+--- a/gcc/config/arc/linux.h
++++ b/gcc/config/arc/linux.h
+@@ -98,7 +98,7 @@ along with GCC; see the file COPYING3. If not see
+ Signalize that because we have fde-glibc, we don't need all C shared libs
+ linked against -lgcc_s. */
+ #undef LINK_EH_SPEC
+-#define LINK_EH_SPEC "--eh-frame-hdr"
++#define LINK_EH_SPEC "--eh-frame-hdr "
+ #endif
+
+ #undef SUBTARGET_CPP_SPEC
diff --git a/poky/meta/recipes-devtools/gcc/gcc-common.inc b/poky/meta/recipes-devtools/gcc/gcc-common.inc
index aa3b53e64..00fec0bb6 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-common.inc
+++ b/poky/meta/recipes-devtools/gcc/gcc-common.inc
@@ -46,7 +46,7 @@ def get_long_double_setting(bb, d):
if d.getVar('TRANSLATED_TARGET_ARCH') in [ 'powerpc', 'powerpc64' ] and d.getVar('TCLIBC') in [ 'glibc' ]:
return "--with-long-double-128"
else:
- return "--without-long-double-128"
+ return "--without-long-double-128 libgcc_cv_powerpc_float128=no"
return ""
def get_gcc_multiarch_setting(bb, d):
diff --git a/poky/meta/recipes-devtools/gcc/gcc-cross-canadian.inc b/poky/meta/recipes-devtools/gcc/gcc-cross-canadian.inc
index bdd6f7ec8..2f32d3407 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-cross-canadian.inc
+++ b/poky/meta/recipes-devtools/gcc/gcc-cross-canadian.inc
@@ -160,11 +160,6 @@ SYSTEMLIBS1 = "${target_libdir}/"
EXTRA_OECONF += "--enable-poison-system-directories"
-EXTRA_OECONF += "\
- --with-mpfr=${STAGING_DIR_HOST}${layout_exec_prefix} \
- --with-mpc=${STAGING_DIR_HOST}${layout_exec_prefix} \
-"
-
EXTRA_OECONF_append_libc-baremetal = " --without-headers"
EXTRA_OECONF_remove_libc-baremetal = "--with-sysroot=/not/exist"
EXTRA_OECONF_remove_libc-baremetal = "--with-build-sysroot=${STAGING_DIR_TARGET}"
diff --git a/poky/meta/recipes-devtools/gcc/gcc-cross-canadian_8.2.bb b/poky/meta/recipes-devtools/gcc/gcc-cross-canadian_8.2.bb
new file mode 100644
index 000000000..bf53c5cd7
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-cross-canadian_8.2.bb
@@ -0,0 +1,5 @@
+require recipes-devtools/gcc/gcc-${PV}.inc
+require gcc-cross-canadian.inc
+
+
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-cross-initial_8.2.bb b/poky/meta/recipes-devtools/gcc/gcc-cross-initial_8.2.bb
new file mode 100644
index 000000000..4c73e5ce6
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-cross-initial_8.2.bb
@@ -0,0 +1,2 @@
+require recipes-devtools/gcc/gcc-cross_${PV}.bb
+require gcc-cross-initial.inc
diff --git a/poky/meta/recipes-devtools/gcc/gcc-cross.inc b/poky/meta/recipes-devtools/gcc/gcc-cross.inc
index 1e184a60d..89b19684b 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-cross.inc
+++ b/poky/meta/recipes-devtools/gcc/gcc-cross.inc
@@ -28,13 +28,13 @@ EXTRA_OECONF_append_sh4 = " \
"
EXTRA_OECONF += "\
- --with-mpfr=${STAGING_DIR_NATIVE}${prefix_native} \
--with-system-zlib \
"
DEPENDS_remove_libc-baremetal := "virtual/${TARGET_PREFIX}libc-for-gcc"
EXTRA_OECONF_append_libc-baremetal = " --without-headers"
EXTRA_OECONF_remove_libc-baremetal = "--enable-threads=posix"
+EXTRA_OECONF_remove_libc-newlib = "--enable-threads=posix"
EXTRA_OECONF_PATHS = "\
--with-gxx-include-dir=/not/exist${target_includedir}/c++/${BINV} \
diff --git a/poky/meta/recipes-devtools/gcc/gcc-cross_8.2.bb b/poky/meta/recipes-devtools/gcc/gcc-cross_8.2.bb
new file mode 100644
index 000000000..b43cca0c5
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-cross_8.2.bb
@@ -0,0 +1,3 @@
+require recipes-devtools/gcc/gcc-${PV}.inc
+require gcc-cross.inc
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-crosssdk-initial_8.2.bb b/poky/meta/recipes-devtools/gcc/gcc-crosssdk-initial_8.2.bb
new file mode 100644
index 000000000..fd90e1140
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-crosssdk-initial_8.2.bb
@@ -0,0 +1,3 @@
+require recipes-devtools/gcc/gcc-cross-initial_${PV}.bb
+require gcc-crosssdk-initial.inc
+
diff --git a/poky/meta/recipes-devtools/gcc/gcc-crosssdk_8.2.bb b/poky/meta/recipes-devtools/gcc/gcc-crosssdk_8.2.bb
new file mode 100644
index 000000000..40a6c4fef
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-crosssdk_8.2.bb
@@ -0,0 +1,2 @@
+require recipes-devtools/gcc/gcc-cross_${PV}.bb
+require gcc-crosssdk.inc
diff --git a/poky/meta/recipes-devtools/gcc/gcc-runtime.inc b/poky/meta/recipes-devtools/gcc/gcc-runtime.inc
index 7629fa56f..9e7e7c5b3 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-runtime.inc
+++ b/poky/meta/recipes-devtools/gcc/gcc-runtime.inc
@@ -17,13 +17,16 @@ EXTRA_OECONF_PATHS = "\
EXTRA_OECONF_append_linuxstdbase = " --enable-clocale=gnu"
RUNTIMELIBITM = "libitm"
+RUNTIMELIBITM_arc = ""
RUNTIMELIBITM_mipsarch = ""
RUNTIMELIBITM_nios2 = ""
RUNTIMELIBITM_microblaze = ""
RUNTIMELIBITM_riscv32 = ""
RUNTIMELIBITM_riscv64 = ""
+RUNTIMELIBSSP ?= ""
+RUNTIMELIBSSP_mingw32 ?= "libssp"
-RUNTIMETARGET = "libssp libstdc++-v3 libgomp libatomic ${RUNTIMELIBITM} \
+RUNTIMETARGET = "${RUNTIMELIBSSP} libstdc++-v3 libgomp libatomic ${RUNTIMELIBITM} \
${@bb.utils.contains_any('FORTRAN', [',fortran',',f77'], 'libquadmath', '', d)} \
"
RUNTIMETARGET_append_x86 = " libmpx"
diff --git a/poky/meta/recipes-devtools/gcc/gcc-runtime_8.2.bb b/poky/meta/recipes-devtools/gcc/gcc-runtime_8.2.bb
new file mode 100644
index 000000000..a1c7a76d0
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-runtime_8.2.bb
@@ -0,0 +1,12 @@
+require recipes-devtools/gcc/gcc-${PV}.inc
+require gcc-runtime.inc
+
+# Disable ifuncs for libatomic on arm conflicts -march/-mcpu
+EXTRA_OECONF_append_arm = " libat_cv_have_ifunc=no "
+
+FILES_libgomp-dev += "\
+ ${libdir}/gcc/${TARGET_SYS}/${BINV}/include/openacc.h \
+"
+
+# Building with thumb enabled on armv6t fails
+ARM_INSTRUCTION_SET_armv6 = "arm"
diff --git a/poky/meta/recipes-devtools/gcc/gcc-sanitizers.inc b/poky/meta/recipes-devtools/gcc/gcc-sanitizers.inc
index 3b7e0028f..e5e84526f 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-sanitizers.inc
+++ b/poky/meta/recipes-devtools/gcc/gcc-sanitizers.inc
@@ -94,6 +94,7 @@ FILES_liblsan += "${libdir}/liblsan.so.*"
FILES_liblsan-dev += "\
${libdir}/liblsan.so \
${libdir}/liblsan.la \
+ ${libdir}/liblsan_preinit.o \
"
FILES_liblsan-staticdev += "${libdir}/liblsan.a"
diff --git a/poky/meta/recipes-devtools/gcc/gcc-sanitizers_8.2.bb b/poky/meta/recipes-devtools/gcc/gcc-sanitizers_8.2.bb
new file mode 100644
index 000000000..f3c705811
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-sanitizers_8.2.bb
@@ -0,0 +1,7 @@
+require recipes-devtools/gcc/gcc-${PV}.inc
+require gcc-sanitizers.inc
+
+# Building with thumb enabled on armv4t armv5t fails with
+# sanitizer_linux.s:5749: Error: lo register required -- `ldr ip,[sp],#8'
+ARM_INSTRUCTION_SET_armv4 = "arm"
+ARM_INSTRUCTION_SET_armv5 = "arm"
diff --git a/poky/meta/recipes-devtools/gcc/gcc-source_8.2.bb b/poky/meta/recipes-devtools/gcc/gcc-source_8.2.bb
new file mode 100644
index 000000000..b890fa33e
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc-source_8.2.bb
@@ -0,0 +1,4 @@
+require recipes-devtools/gcc/gcc-${PV}.inc
+require recipes-devtools/gcc/gcc-source.inc
+
+EXCLUDE_FROM_WORLD = "1"
diff --git a/poky/meta/recipes-devtools/gcc/gcc-target.inc b/poky/meta/recipes-devtools/gcc/gcc-target.inc
index b6e31f5d9..bc2236fed 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-target.inc
+++ b/poky/meta/recipes-devtools/gcc/gcc-target.inc
@@ -9,13 +9,17 @@ EXTRA_OECONF_PATHS = "\
EXTRA_OECONF_append_linuxstdbase = " --enable-clocale=gnu"
-# ARMv6+ adds atomic instructions that affect the ABI in libraries built
-# with TUNE_CCARGS in gcc-runtime. Make the compiler default to a
-# compatible architecture. armv6 and armv7a cover the minimum tune
-# features used in OE.
-EXTRA_OECONF_append_armv6 = " --with-arch=armv6"
-EXTRA_OECONF_append_armv7a = " --with-arch=armv7-a"
-EXTRA_OECONF_append_armv7ve = " --with-arch=armv7-a"
+# Configure gcc running on the target to default to an architecture which will
+# be compatible with that of gcc-runtime (which is cross compiled to be target
+# specific). For example, for ARM, ARMv6+ adds atomic instructions that may
+# affect the ABI in the gcc-runtime libs. Since we can't rely on gcc on the
+# target to always be passed -march etc, its built-in default needs to be safe.
+
+ARMFPARCHEXT ?= ""
+
+EXTRA_OECONF_append_armv6 = " --with-arch=armv6${ARMFPARCHEXT}"
+EXTRA_OECONF_append_armv7a = " --with-arch=armv7-a${ARMFPARCHEXT}"
+EXTRA_OECONF_append_armv7ve = " --with-arch=armv7ve${ARMFPARCHEXT}"
# libcc1 requres gcc_cv_objdump when cross build, but gcc_cv_objdump is
# set in subdir gcc, so subdir libcc1 can't use it, export it here to
diff --git a/poky/meta/recipes-devtools/gcc/gcc_8.2.bb b/poky/meta/recipes-devtools/gcc/gcc_8.2.bb
new file mode 100644
index 000000000..7d9359058
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc_8.2.bb
@@ -0,0 +1,14 @@
+require recipes-devtools/gcc/gcc-${PV}.inc
+require gcc-target.inc
+
+# Building with thumb enabled on armv4t armv5t fails with
+# | gcc-4.8.1-r0/gcc-4.8.1/gcc/cp/decl.c:7438:(.text.unlikely+0x2fa): relocation truncated to fit: R_ARM_THM_CALL against symbol `fancy_abort(char const*, int, char const*)' defined in .glue_7 section in linker stubs
+# | gcc-4.8.1-r0/gcc-4.8.1/gcc/cp/decl.c:7442:(.text.unlikely+0x318): additional relocation overflows omitted from the output
+ARM_INSTRUCTION_SET_armv4 = "arm"
+ARM_INSTRUCTION_SET_armv5 = "arm"
+
+ARMFPARCHEXT_armv6 = "${@'+fp' if d.getVar('TARGET_FPU') == 'hard' else ''}"
+ARMFPARCHEXT_armv7a = "${@'+fp' if d.getVar('TARGET_FPU') == 'hard' else ''}"
+ARMFPARCHEXT_armv7ve = "${@'+fp' if d.getVar('TARGET_FPU') == 'hard' else ''}"
+
+BBCLASSEXTEND = "nativesdk"
diff --git a/poky/meta/recipes-devtools/gcc/libgcc-common.inc b/poky/meta/recipes-devtools/gcc/libgcc-common.inc
index 848a47620..d959566c3 100644
--- a/poky/meta/recipes-devtools/gcc/libgcc-common.inc
+++ b/poky/meta/recipes-devtools/gcc/libgcc-common.inc
@@ -47,8 +47,13 @@ do_install () {
do_install_append_libc-baremetal () {
rmdir ${D}${base_libdir}
}
+do_install_append_libc-newlib () {
+ rmdir ${D}${base_libdir}
+}
+# No rpm package is actually created but -dev depends on it, avoid dnf error
RDEPENDS_${PN}-dev_libc-baremetal = ""
+RDEPENDS_${PN}-dev_libc-newlib = ""
BBCLASSEXTEND = "nativesdk"
diff --git a/poky/meta/recipes-devtools/gcc/libgcc-initial_8.2.bb b/poky/meta/recipes-devtools/gcc/libgcc-initial_8.2.bb
new file mode 100644
index 000000000..0c698c26e
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/libgcc-initial_8.2.bb
@@ -0,0 +1,5 @@
+require recipes-devtools/gcc/gcc-${PV}.inc
+require libgcc-initial.inc
+
+# Building with thumb enabled on armv6t fails
+ARM_INSTRUCTION_SET_armv6 = "arm"
diff --git a/poky/meta/recipes-devtools/gcc/libgcc_8.2.bb b/poky/meta/recipes-devtools/gcc/libgcc_8.2.bb
new file mode 100644
index 000000000..ea210a113
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/libgcc_8.2.bb
@@ -0,0 +1,5 @@
+require recipes-devtools/gcc/gcc-${PV}.inc
+require libgcc.inc
+
+# Building with thumb enabled on armv6t fails
+ARM_INSTRUCTION_SET_armv6 = "arm"
diff --git a/poky/meta/recipes-devtools/gcc/libgfortran_8.2.bb b/poky/meta/recipes-devtools/gcc/libgfortran_8.2.bb
new file mode 100644
index 000000000..71dd8b4bd
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/libgfortran_8.2.bb
@@ -0,0 +1,3 @@
+require recipes-devtools/gcc/gcc-${PV}.inc
+require libgfortran.inc
+
diff --git a/poky/meta/recipes-devtools/gdb/gdb-8.0.1.inc b/poky/meta/recipes-devtools/gdb/gdb-8.2.inc
index 4a5299b73..dfb005912 100644
--- a/poky/meta/recipes-devtools/gdb/gdb-8.0.1.inc
+++ b/poky/meta/recipes-devtools/gdb/gdb-8.2.inc
@@ -15,10 +15,9 @@ SRC_URI = "http://ftp.gnu.org/gnu/gdb/gdb-${PV}.tar.xz \
file://0008-Use-exorted-definitions-of-SIGRTMIN.patch \
file://0009-Change-order-of-CFLAGS.patch \
file://0010-resolve-restrict-keyword-conflict.patch \
- file://package_devel_gdb_patches_120-sigprocmask-invalid-call.patch \
- file://0012-Unbreak-GDBserver-build-for-x32.patch \
- file://gdb-Fix-ia64-defining-TRAP_HWBKPT-before-including-g.patch \
+ file://0011-Fix-invalid-sigprocmask-call.patch \
+ file://gdbserver-ctrl-c-handling.patch \
"
-SRC_URI[md5sum] = "48cac527e6f3018b865ece021e9723ac"
-SRC_URI[sha256sum] = "3dbd5f93e36ba2815ad0efab030dcd0c7b211d7b353a40a53f4c02d7d56295e3"
+SRC_URI[md5sum] = "b5a49dbff00d9a87fbe114d14b3101c0"
+SRC_URI[sha256sum] = "c3a441a29c7c89720b734e5a9c6289c0a06be7e0c76ef538f7bbcef389347c39"
diff --git a/poky/meta/recipes-devtools/gdb/gdb-common.inc b/poky/meta/recipes-devtools/gdb/gdb-common.inc
index 039577b8e..fa64939f2 100644
--- a/poky/meta/recipes-devtools/gdb/gdb-common.inc
+++ b/poky/meta/recipes-devtools/gdb/gdb-common.inc
@@ -1,7 +1,7 @@
SUMMARY = "GNU debugger"
HOMEPAGE = "http://www.gnu.org/software/gdb/"
SECTION = "devel"
-DEPENDS = "expat zlib ncurses virtual/libiconv ${LTTNGUST}"
+DEPENDS = "expat zlib ncurses virtual/libiconv ${LTTNGUST} bison-native"
LTTNGUST = "lttng-ust"
LTTNGUST_aarch64 = ""
@@ -20,7 +20,7 @@ EXTRA_OEMAKE = "'SUBDIRS=intl mmalloc libiberty opcodes bfd sim gdb etc utils'"
EXPAT = "--with-expat --with-libexpat-prefix=${STAGING_DIR_HOST}"
-EXTRA_OECONF = "--disable-gdbtk --disable-tui --disable-x --disable-werror \
+EXTRA_OECONF = "--disable-gdbtk --disable-x --disable-werror \
--with-curses --disable-multilib --disable-sim \
--without-lzma --without-guile \
${GDBPROPREFIX} ${EXPAT} \
@@ -36,6 +36,8 @@ PACKAGECONFIG ??= "readline"
PACKAGECONFIG[readline] = "--with-system-readline,--without-system-readline,readline"
PACKAGECONFIG[python] = "--with-python=${WORKDIR}/python,--without-python,python3,python3 python3-codecs"
PACKAGECONFIG[babeltrace] = "--with-babeltrace,--without-babeltrace,babeltrace"
+# ncurses is already a hard DEPENDS, but would be added here if it weren't
+PACKAGECONFIG[tui] = "--enable-tui,--disable-tui"
GDBPROPREFIX = "--program-prefix=''"
diff --git a/poky/meta/recipes-devtools/gdb/gdb-cross-canadian_8.0.1.bb b/poky/meta/recipes-devtools/gdb/gdb-cross-canadian_8.2.bb
index 301035940..301035940 100644
--- a/poky/meta/recipes-devtools/gdb/gdb-cross-canadian_8.0.1.bb
+++ b/poky/meta/recipes-devtools/gdb/gdb-cross-canadian_8.2.bb
diff --git a/poky/meta/recipes-devtools/gdb/gdb-cross_8.0.1.bb b/poky/meta/recipes-devtools/gdb/gdb-cross_8.2.bb
index 50cf159fd..50cf159fd 100644
--- a/poky/meta/recipes-devtools/gdb/gdb-cross_8.0.1.bb
+++ b/poky/meta/recipes-devtools/gdb/gdb-cross_8.2.bb
diff --git a/poky/meta/recipes-devtools/gdb/gdb/0001-include-sys-types.h-for-mode_t.patch b/poky/meta/recipes-devtools/gdb/gdb/0001-include-sys-types.h-for-mode_t.patch
index 4f06d46d7..2c8783e19 100644
--- a/poky/meta/recipes-devtools/gdb/gdb/0001-include-sys-types.h-for-mode_t.patch
+++ b/poky/meta/recipes-devtools/gdb/gdb/0001-include-sys-types.h-for-mode_t.patch
@@ -1,30 +1,29 @@
-From 91da0458b333249eb9c2f4c1f1e53fa4bc085cc9 Mon Sep 17 00:00:00 2001
+From 6ae0fb9b49047cef338262e30273f63139fd1261 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Tue, 19 Jan 2016 18:18:52 -0800
-Subject: [PATCH 01/10] include sys/types.h for mode_t
+Subject: [PATCH 01/11] include sys/types.h for mode_t
mode_t is used in target.h, so we need to include sys/types.h to get the
defintion
+Upstream-Status: Pending
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
-Upstream-Status: Pending
-
gdb/gdbserver/target.h | 1 +
1 file changed, 1 insertion(+)
diff --git a/gdb/gdbserver/target.h b/gdb/gdbserver/target.h
-index 3cc2bc4bab..e6b19b06b9 100644
+index fce54e05ad..278cee78a8 100644
--- a/gdb/gdbserver/target.h
+++ b/gdb/gdbserver/target.h
-@@ -28,6 +28,7 @@
- #include "target/waitstatus.h"
+@@ -29,6 +29,7 @@
#include "mem-break.h"
#include "btrace-common.h"
+ #include <vector>
+#include <sys/types.h>
struct emit_ops;
struct buffer;
--
-2.13.1
+2.18.0
diff --git a/poky/meta/recipes-devtools/gdb/gdb/0002-make-man-install-relative-to-DESTDIR.patch b/poky/meta/recipes-devtools/gdb/gdb/0002-make-man-install-relative-to-DESTDIR.patch
index 83c4dded3..60479e541 100644
--- a/poky/meta/recipes-devtools/gdb/gdb/0002-make-man-install-relative-to-DESTDIR.patch
+++ b/poky/meta/recipes-devtools/gdb/gdb/0002-make-man-install-relative-to-DESTDIR.patch
@@ -1,7 +1,7 @@
-From 9ce61f97b7758794f06894e934fbb256ff62163e Mon Sep 17 00:00:00 2001
+From b0209f282716bed2c230c7b496fbcc7af503d0cc Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Mon, 2 Mar 2015 02:27:55 +0000
-Subject: [PATCH 02/10] make man install relative to DESTDIR
+Subject: [PATCH 02/11] make man install relative to DESTDIR
Upstream-Status: Pending
@@ -11,7 +11,7 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sim/common/Makefile.in b/sim/common/Makefile.in
-index 3944956b5d..aa355e8347 100644
+index 227e4cfbc2..8c3457e0bd 100644
--- a/sim/common/Makefile.in
+++ b/sim/common/Makefile.in
@@ -35,7 +35,7 @@ tooldir = $(libdir)/$(target_alias)
@@ -24,5 +24,5 @@ index 3944956b5d..aa355e8347 100644
includedir = @includedir@
--
-2.13.1
+2.18.0
diff --git a/poky/meta/recipes-devtools/gdb/gdb/0003-mips-linux-nat-Define-_ABIO32-if-not-defined.patch b/poky/meta/recipes-devtools/gdb/gdb/0003-mips-linux-nat-Define-_ABIO32-if-not-defined.patch
index 6f7955be1..cf54c74c0 100644
--- a/poky/meta/recipes-devtools/gdb/gdb/0003-mips-linux-nat-Define-_ABIO32-if-not-defined.patch
+++ b/poky/meta/recipes-devtools/gdb/gdb/0003-mips-linux-nat-Define-_ABIO32-if-not-defined.patch
@@ -1,7 +1,7 @@
-From ca0ef06b7320912df350e730e63f9bafdaa6ea70 Mon Sep 17 00:00:00 2001
+From b14a57d90e1cdd8144cda4c8882bd1db44d26dab Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Wed, 23 Mar 2016 06:30:09 +0000
-Subject: [PATCH 03/10] mips-linux-nat: Define _ABIO32 if not defined
+Subject: [PATCH 03/11] mips-linux-nat: Define _ABIO32 if not defined
This helps building gdb on mips64 on musl, since
musl does not provide sgidefs.h this define is
@@ -9,29 +9,27 @@ only defined when GCC is using o32 ABI, in that
case gcc emits it as built-in define and hence
it works ok for mips32
+Upstream-Status: Pending
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
-Upstream-Status: Pending
-
- gdb/mips-linux-nat.c | 5 +++++
- 1 file changed, 5 insertions(+)
+ gdb/mips-linux-nat.c | 4 ++++
+ 1 file changed, 4 insertions(+)
diff --git a/gdb/mips-linux-nat.c b/gdb/mips-linux-nat.c
-index 8041d84be7..f2df1b9907 100644
+index 32835c16b2..68a7587af2 100644
--- a/gdb/mips-linux-nat.c
+++ b/gdb/mips-linux-nat.c
-@@ -47,6 +47,11 @@
+@@ -41,6 +41,10 @@
+ #ifndef PTRACE_GET_THREAD_AREA
#define PTRACE_GET_THREAD_AREA 25
#endif
-
+/* musl does not define and relies on compiler built-in macros for it */
+#ifndef _ABIO32
+#define _ABIO32 1
+#endif
-+
- /* Assume that we have PTRACE_GETREGS et al. support. If we do not,
- we'll clear this and use PTRACE_PEEKUSER instead. */
- static int have_ptrace_regsets = 1;
+
+ class mips_linux_nat_target final : public linux_nat_trad_target
+ {
--
-2.13.1
+2.18.0
diff --git a/poky/meta/recipes-devtools/gdb/gdb/0004-ppc-ptrace-Define-pt_regs-uapi_pt_regs-on-GLIBC-syst.patch b/poky/meta/recipes-devtools/gdb/gdb/0004-ppc-ptrace-Define-pt_regs-uapi_pt_regs-on-GLIBC-syst.patch
index 357db25ec..bbe0020bf 100644
--- a/poky/meta/recipes-devtools/gdb/gdb/0004-ppc-ptrace-Define-pt_regs-uapi_pt_regs-on-GLIBC-syst.patch
+++ b/poky/meta/recipes-devtools/gdb/gdb/0004-ppc-ptrace-Define-pt_regs-uapi_pt_regs-on-GLIBC-syst.patch
@@ -1,7 +1,7 @@
-From 0f6d71118ca914002fcad78d2c8a518223d06bfb Mon Sep 17 00:00:00 2001
+From 1dd5c44474b01d84de60faded960fef4a0a87e41 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Sat, 30 Apr 2016 18:32:14 -0700
-Subject: [PATCH 04/10] ppc/ptrace: Define pt_regs uapi_pt_regs on !GLIBC
+Subject: [PATCH 04/11] ppc/ptrace: Define pt_regs uapi_pt_regs on !GLIBC
systems
Upstream-Status: Pending
@@ -13,7 +13,7 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
2 files changed, 12 insertions(+)
diff --git a/gdb/gdbserver/linux-ppc-low.c b/gdb/gdbserver/linux-ppc-low.c
-index 33a9feb12c..1a9141faef 100644
+index 47428c1529..841a5e02b9 100644
--- a/gdb/gdbserver/linux-ppc-low.c
+++ b/gdb/gdbserver/linux-ppc-low.c
@@ -21,7 +21,13 @@
@@ -28,10 +28,10 @@ index 33a9feb12c..1a9141faef 100644
+# undef pt_regs
+#endif
- #include "nat/ppc-linux.h"
- #include "linux-ppc-tdesc.h"
+ #include "arch/ppc-linux-common.h"
+ #include "arch/ppc-linux-tdesc.h"
diff --git a/gdb/nat/ppc-linux.h b/gdb/nat/ppc-linux.h
-index 5837ea1767..7233929192 100644
+index 3d4d4fdc56..5b93af8d3a 100644
--- a/gdb/nat/ppc-linux.h
+++ b/gdb/nat/ppc-linux.h
@@ -18,7 +18,13 @@
@@ -49,5 +49,5 @@ index 5837ea1767..7233929192 100644
/* This sometimes isn't defined. */
--
-2.13.1
+2.18.0
diff --git a/poky/meta/recipes-devtools/gdb/gdb/0005-Add-support-for-Renesas-SH-sh4-architecture.patch b/poky/meta/recipes-devtools/gdb/gdb/0005-Add-support-for-Renesas-SH-sh4-architecture.patch
index cb1b7abd0..f840cafe2 100644
--- a/poky/meta/recipes-devtools/gdb/gdb/0005-Add-support-for-Renesas-SH-sh4-architecture.patch
+++ b/poky/meta/recipes-devtools/gdb/gdb/0005-Add-support-for-Renesas-SH-sh4-architecture.patch
@@ -1,7 +1,7 @@
-From 60ac68f601885ea6480229a5c8a89a0257da376c Mon Sep 17 00:00:00 2001
+From 215486b53a7a6dfca064cd2e9196a9de6ed6f0c2 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Mon, 2 Mar 2015 02:31:12 +0000
-Subject: [PATCH 05/10] Add support for Renesas SH (sh4) architecture.
+Subject: [PATCH 05/11] Add support for Renesas SH (sh4) architecture.
gdb (7.4-1~cvs20111117.2) experimental; urgency=low
.
@@ -15,35 +15,35 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
gdb/Makefile.in | 2 +
gdb/configure.host | 1 +
- gdb/sh-linux-tdep.c | 519 +++++++++++++++++++++++++++++++++++
- gdb/sh-tdep.c | 54 ++--
- gdb/sh-tdep.h | 49 ++++
+ gdb/sh-linux-tdep.c | 519 +++++++++++++++++++++++++++
+ gdb/sh-tdep.c | 53 ++-
+ gdb/sh-tdep.h | 49 +++
gdb/testsuite/gdb.asm/asm-source.exp | 5 +
gdb/testsuite/gdb.asm/sh.inc | 3 +-
gdb/testsuite/gdb.base/annota1.c | 3 +
gdb/testsuite/gdb.base/annota3.c | 4 +
gdb/testsuite/gdb.base/sigall.c | 3 +
gdb/testsuite/gdb.base/signals.c | 4 +
- 11 files changed, 618 insertions(+), 29 deletions(-)
+ 11 files changed, 617 insertions(+), 29 deletions(-)
diff --git a/gdb/Makefile.in b/gdb/Makefile.in
-index 8be73ba423..e287ff6a2e 100644
+index c76a4e4394..921fdadb49 100644
--- a/gdb/Makefile.in
+++ b/gdb/Makefile.in
-@@ -2638,6 +2638,8 @@ ALLDEPFILES = \
+@@ -2326,6 +2326,8 @@ ALLDEPFILES = \
+ sh-nbsd-nat.c \
sh-nbsd-tdep.c \
sh-tdep.c \
- sh64-tdep.c \
+ sh-linux-tdep.c \
+ sh-linux-nat.c \
sol2-tdep.c \
solib-aix.c \
solib-spu.c \
diff --git a/gdb/configure.host b/gdb/configure.host
-index d74fd04934..be12de1446 100644
+index 23a2f16399..39a886ec53 100644
--- a/gdb/configure.host
+++ b/gdb/configure.host
-@@ -150,6 +150,7 @@ powerpc*-*-linux*) gdb_host=linux ;;
+@@ -153,6 +153,7 @@ riscv*-*-linux*) gdb_host=linux ;;
s390*-*-linux*) gdb_host=linux ;;
@@ -52,7 +52,7 @@ index d74fd04934..be12de1446 100644
gdb_host=nbsd ;;
sh*-*-openbsd*) gdb_host=nbsd ;;
diff --git a/gdb/sh-linux-tdep.c b/gdb/sh-linux-tdep.c
-index c5c745d218..84e539aad3 100644
+index db93967910..4109c549e8 100644
--- a/gdb/sh-linux-tdep.c
+++ b/gdb/sh-linux-tdep.c
@@ -18,14 +18,37 @@
@@ -600,7 +600,7 @@ index c5c745d218..84e539aad3 100644
/* GNU/Linux uses SVR4-style shared libraries. */
diff --git a/gdb/sh-tdep.c b/gdb/sh-tdep.c
-index 2c2b26847d..14f5281ed4 100644
+index fe64cf979a..4417114cd0 100644
--- a/gdb/sh-tdep.c
+++ b/gdb/sh-tdep.c
@@ -21,6 +21,9 @@
@@ -613,15 +613,7 @@ index 2c2b26847d..14f5281ed4 100644
#include "frame.h"
#include "frame-base.h"
#include "frame-unwind.h"
-@@ -35,6 +38,7 @@
- #include "arch-utils.h"
- #include "floatformat.h"
- #include "regcache.h"
-+#include "regset.h"
- #include "doublest.h"
- #include "osabi.h"
- #include "reggroups.h"
-@@ -68,23 +72,6 @@ static const char *const sh_cc_enum[] = {
+@@ -66,23 +69,6 @@ static const char *const sh_cc_enum[] = {
static const char *sh_active_calling_convention = sh_cc_gcc;
@@ -645,7 +637,7 @@ index 2c2b26847d..14f5281ed4 100644
static int
sh_is_renesas_calling_convention (struct type *func_type)
{
-@@ -1052,7 +1039,7 @@ sh_treat_as_flt_p (struct type *type)
+@@ -1050,7 +1036,7 @@ sh_treat_as_flt_p (struct type *type)
return 0;
/* Otherwise if the type of that member is float, the whole type is
treated as float. */
@@ -654,7 +646,7 @@ index 2c2b26847d..14f5281ed4 100644
return 1;
/* Otherwise it's not treated as float. */
return 0;
-@@ -1102,7 +1089,7 @@ sh_push_dummy_call_fpu (struct gdbarch *gdbarch,
+@@ -1100,7 +1086,7 @@ sh_push_dummy_call_fpu (struct gdbarch *gdbarch,
in four registers available. Loop thru args from first to last. */
for (argnum = 0; argnum < nargs; argnum++)
{
@@ -663,7 +655,7 @@ index 2c2b26847d..14f5281ed4 100644
len = TYPE_LENGTH (type);
val = sh_justify_value_in_reg (gdbarch, args[argnum], len);
-@@ -1828,7 +1815,7 @@ sh_dwarf2_frame_init_reg (struct gdbarch *gdbarch, int regnum,
+@@ -1834,7 +1820,7 @@ sh_dwarf2_frame_init_reg (struct gdbarch *gdbarch, int regnum,
reg->how = DWARF2_FRAME_REG_UNDEFINED;
}
@@ -672,7 +664,7 @@ index 2c2b26847d..14f5281ed4 100644
sh_alloc_frame_cache (void)
{
struct sh_frame_cache *cache;
-@@ -1855,7 +1842,7 @@ sh_alloc_frame_cache (void)
+@@ -1861,7 +1847,7 @@ sh_alloc_frame_cache (void)
return cache;
}
@@ -681,7 +673,7 @@ index 2c2b26847d..14f5281ed4 100644
sh_frame_cache (struct frame_info *this_frame, void **this_cache)
{
struct gdbarch *gdbarch = get_frame_arch (this_frame);
-@@ -1922,9 +1909,9 @@ sh_frame_cache (struct frame_info *this_frame, void **this_cache)
+@@ -1928,9 +1914,9 @@ sh_frame_cache (struct frame_info *this_frame, void **this_cache)
return cache;
}
@@ -694,7 +686,7 @@ index 2c2b26847d..14f5281ed4 100644
{
struct gdbarch *gdbarch = get_frame_arch (this_frame);
struct sh_frame_cache *cache = sh_frame_cache (this_frame, this_cache);
-@@ -1938,7 +1925,7 @@ sh_frame_prev_register (struct frame_info *this_frame,
+@@ -1944,7 +1930,7 @@ sh_frame_prev_register (struct frame_info *this_frame,
the current frame. Frob regnum so that we pull the value from
the correct place. */
if (regnum == gdbarch_pc_regnum (gdbarch))
@@ -703,7 +695,7 @@ index 2c2b26847d..14f5281ed4 100644
if (regnum < SH_NUM_REGS && cache->saved_regs[regnum] != -1)
return frame_unwind_got_memory (this_frame, regnum,
-@@ -2247,8 +2234,8 @@ sh_return_in_first_hidden_param_p (struct gdbarch *gdbarch,
+@@ -2255,8 +2241,8 @@ sh_return_in_first_hidden_param_p (struct gdbarch *gdbarch,
static struct gdbarch *
sh_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
{
@@ -711,9 +703,9 @@ index 2c2b26847d..14f5281ed4 100644
struct gdbarch_tdep *tdep;
+ struct gdbarch *gdbarch;
- /* SH5 is handled entirely in sh64-tdep.c. */
- if (info.bfd_arch_info->mach == bfd_mach_sh5)
-@@ -2264,6 +2251,18 @@ sh_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
+ /* If there is already a candidate, use it. */
+ arches = gdbarch_list_lookup_by_info (arches, &info);
+@@ -2268,6 +2254,18 @@ sh_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
tdep = XCNEW (struct gdbarch_tdep);
gdbarch = gdbarch_alloc (&info, tdep);
@@ -732,7 +724,7 @@ index 2c2b26847d..14f5281ed4 100644
set_gdbarch_short_bit (gdbarch, 2 * TARGET_CHAR_BIT);
set_gdbarch_int_bit (gdbarch, 4 * TARGET_CHAR_BIT);
set_gdbarch_long_bit (gdbarch, 4 * TARGET_CHAR_BIT);
-@@ -2418,10 +2417,11 @@ sh_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
+@@ -2422,10 +2420,11 @@ sh_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
break;
}
@@ -746,7 +738,7 @@ index 2c2b26847d..14f5281ed4 100644
frame_unwind_append_unwinder (gdbarch, &sh_frame_unwind);
diff --git a/gdb/sh-tdep.h b/gdb/sh-tdep.h
-index d15ef050e0..c4642cefa4 100644
+index 59acd35b88..be3f998d84 100644
--- a/gdb/sh-tdep.h
+++ b/gdb/sh-tdep.h
@@ -21,6 +21,12 @@
@@ -829,7 +821,7 @@ index d15ef050e0..c4642cefa4 100644
where each general-purpose register is stored inside the associated
core file section. */
diff --git a/gdb/testsuite/gdb.asm/asm-source.exp b/gdb/testsuite/gdb.asm/asm-source.exp
-index e07e5543f2..f5e60e1002 100644
+index 9879f0ca47..cbc0e4d5f7 100644
--- a/gdb/testsuite/gdb.asm/asm-source.exp
+++ b/gdb/testsuite/gdb.asm/asm-source.exp
@@ -116,6 +116,11 @@ switch -glob -- [istarget] {
@@ -918,5 +910,5 @@ index 756606880f..1205a9bc9c 100644
static int count = 0;
--
-2.13.1
+2.18.0
diff --git a/poky/meta/recipes-devtools/gdb/gdb/0006-Dont-disable-libreadline.a-when-using-disable-static.patch b/poky/meta/recipes-devtools/gdb/gdb/0006-Dont-disable-libreadline.a-when-using-disable-static.patch
index 8b1395810..9ae3ee62b 100644
--- a/poky/meta/recipes-devtools/gdb/gdb/0006-Dont-disable-libreadline.a-when-using-disable-static.patch
+++ b/poky/meta/recipes-devtools/gdb/gdb/0006-Dont-disable-libreadline.a-when-using-disable-static.patch
@@ -1,7 +1,7 @@
-From 5c92ebd5e117e4cf118c984171e0703dfcfb8cd8 Mon Sep 17 00:00:00 2001
+From 5fdd42acaa965be7c420a3f2ba12b77ea503c59b Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Sat, 30 Apr 2016 15:25:03 -0700
-Subject: [PATCH 06/10] Dont disable libreadline.a when using --disable-static
+Subject: [PATCH 06/11] Dont disable libreadline.a when using --disable-static
If gdb is configured with --disable-static then this is dutifully passed to
readline which then disables libreadline.a, which causes a problem when gdb
@@ -19,7 +19,7 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
2 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/Makefile.def b/Makefile.def
-index 0d13f037d0..8bcd86e13f 100644
+index 75063b6d12..c27bbe4d28 100644
--- a/Makefile.def
+++ b/Makefile.def
@@ -105,7 +105,8 @@ host_modules= { module= libiconv;
@@ -33,7 +33,7 @@ index 0d13f037d0..8bcd86e13f 100644
host_modules= { module= sim; };
host_modules= { module= texinfo; no_install= true; };
diff --git a/Makefile.in b/Makefile.in
-index 3acb83b8de..e348907128 100644
+index 7814fe745f..3b0dc7cbb0 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -25470,7 +25470,7 @@ configure-readline:
@@ -46,5 +46,5 @@ index 3acb83b8de..e348907128 100644
@endif readline
--
-2.13.1
+2.18.0
diff --git a/poky/meta/recipes-devtools/gdb/gdb/0007-use-asm-sgidefs.h.patch b/poky/meta/recipes-devtools/gdb/gdb/0007-use-asm-sgidefs.h.patch
index 33b4c30ee..808f4bfa1 100644
--- a/poky/meta/recipes-devtools/gdb/gdb/0007-use-asm-sgidefs.h.patch
+++ b/poky/meta/recipes-devtools/gdb/gdb/0007-use-asm-sgidefs.h.patch
@@ -1,7 +1,7 @@
-From 12a0b8d81e1fda6ba98abdce8d6f09f9555ebcf5 Mon Sep 17 00:00:00 2001
+From d6e12d52f9cef7f5e6315003ceaa236f6cc7723b Mon Sep 17 00:00:00 2001
From: Andre McCurdy <amccurdy@gmail.com>
Date: Sat, 30 Apr 2016 15:29:06 -0700
-Subject: [PATCH 07/10] use <asm/sgidefs.h>
+Subject: [PATCH 07/11] use <asm/sgidefs.h>
Build fix for MIPS with musl libc
@@ -19,7 +19,7 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/gdb/mips-linux-nat.c b/gdb/mips-linux-nat.c
-index f2df1b9907..d24664cb56 100644
+index 68a7587af2..2b77221372 100644
--- a/gdb/mips-linux-nat.c
+++ b/gdb/mips-linux-nat.c
@@ -31,7 +31,7 @@
@@ -32,5 +32,5 @@ index f2df1b9907..d24664cb56 100644
#include <asm/ptrace.h>
#include "inf-ptrace.h"
--
-2.13.1
+2.18.0
diff --git a/poky/meta/recipes-devtools/gdb/gdb/0008-Use-exorted-definitions-of-SIGRTMIN.patch b/poky/meta/recipes-devtools/gdb/gdb/0008-Use-exorted-definitions-of-SIGRTMIN.patch
index 4f64dea25..d32352b81 100644
--- a/poky/meta/recipes-devtools/gdb/gdb/0008-Use-exorted-definitions-of-SIGRTMIN.patch
+++ b/poky/meta/recipes-devtools/gdb/gdb/0008-Use-exorted-definitions-of-SIGRTMIN.patch
@@ -1,7 +1,7 @@
-From d3f240b38eed7cd08f6c50ea896572f1327b437a Mon Sep 17 00:00:00 2001
+From d97878b272bd7c4993f4205983ae8b7ecddbcf82 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Sat, 30 Apr 2016 15:31:40 -0700
-Subject: [PATCH 08/10] Use exorted definitions of SIGRTMIN
+Subject: [PATCH 08/11] Use exorted definitions of SIGRTMIN
Define W_STOPCODE if not defined already
@@ -20,10 +20,10 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
2 files changed, 6 insertions(+), 2 deletions(-)
diff --git a/gdb/linux-nat.c b/gdb/linux-nat.c
-index 8b29245c3d..f424ae9711 100644
+index 64015e7520..acf950c38b 100644
--- a/gdb/linux-nat.c
+++ b/gdb/linux-nat.c
-@@ -5021,6 +5021,6 @@ lin_thread_get_thread_signals (sigset_t *set)
+@@ -4724,6 +4724,6 @@ lin_thread_get_thread_signals (sigset_t *set)
/* NPTL reserves the first two RT signals, but does not provide any
way for the debugger to query the signal numbers - fortunately
they don't change. */
@@ -33,7 +33,7 @@ index 8b29245c3d..f424ae9711 100644
+ sigaddset (set, SIGRTMIN + 1);
}
diff --git a/gdb/nat/linux-nat.h b/gdb/nat/linux-nat.h
-index 7dd18fefff..35137ab34f 100644
+index a90a124d3a..4f3e681962 100644
--- a/gdb/nat/linux-nat.h
+++ b/gdb/nat/linux-nat.h
@@ -90,4 +90,8 @@ extern void linux_stop_lwp (struct lwp_info *lwp);
@@ -46,5 +46,5 @@ index 7dd18fefff..35137ab34f 100644
+
#endif /* LINUX_NAT_H */
--
-2.13.1
+2.18.0
diff --git a/poky/meta/recipes-devtools/gdb/gdb/0009-Change-order-of-CFLAGS.patch b/poky/meta/recipes-devtools/gdb/gdb/0009-Change-order-of-CFLAGS.patch
index 0c103ef3f..bc4bc2683 100644
--- a/poky/meta/recipes-devtools/gdb/gdb/0009-Change-order-of-CFLAGS.patch
+++ b/poky/meta/recipes-devtools/gdb/gdb/0009-Change-order-of-CFLAGS.patch
@@ -1,7 +1,7 @@
-From 3f54036b891054072b3e43ea8daaa57aa367b2e0 Mon Sep 17 00:00:00 2001
+From ba6ffa461fe781d44d6dcbc0fbd569237b450fdc Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Sat, 30 Apr 2016 15:35:39 -0700
-Subject: [PATCH 09/10] Change order of CFLAGS
+Subject: [PATCH 09/11] Change order of CFLAGS
Lets us override Werror if need be
@@ -13,10 +13,10 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/gdb/gdbserver/Makefile.in b/gdb/gdbserver/Makefile.in
-index 01dfdc0b89..f6aebef464 100644
+index f2f8a084bd..9528db1364 100644
--- a/gdb/gdbserver/Makefile.in
+++ b/gdb/gdbserver/Makefile.in
-@@ -140,7 +140,7 @@ CPPFLAGS = @CPPFLAGS@
+@@ -143,7 +143,7 @@ CPPFLAGS = @CPPFLAGS@
INTERNAL_CFLAGS_BASE = ${CXXFLAGS} ${GLOBAL_CFLAGS} \
${PROFILE_CFLAGS} ${INCLUDE_CFLAGS} ${CPPFLAGS}
INTERNAL_WARN_CFLAGS = ${INTERNAL_CFLAGS_BASE} $(WARN_CFLAGS)
@@ -26,5 +26,5 @@ index 01dfdc0b89..f6aebef464 100644
# LDFLAGS is specifically reserved for setting from the command line
# when running make.
--
-2.13.1
+2.18.0
diff --git a/poky/meta/recipes-devtools/gdb/gdb/0010-resolve-restrict-keyword-conflict.patch b/poky/meta/recipes-devtools/gdb/gdb/0010-resolve-restrict-keyword-conflict.patch
index c9507109b..809d52f25 100644
--- a/poky/meta/recipes-devtools/gdb/gdb/0010-resolve-restrict-keyword-conflict.patch
+++ b/poky/meta/recipes-devtools/gdb/gdb/0010-resolve-restrict-keyword-conflict.patch
@@ -1,7 +1,7 @@
-From 3ead0dd143521b0ba69c9e753bc4a236f9445ad9 Mon Sep 17 00:00:00 2001
+From 19b581056c1709f7d2872cd76b977542a0fe6142 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Tue, 10 May 2016 08:47:05 -0700
-Subject: [PATCH 10/10] resolve restrict keyword conflict
+Subject: [PATCH 10/11] resolve restrict keyword conflict
GCC detects that we call 'restrict' as param name in function
signatures and complains since both params are called 'restrict'
@@ -15,7 +15,7 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/gdb/gnulib/import/sys_time.in.h b/gdb/gnulib/import/sys_time.in.h
-index d535a6a48b..7c34d5a1aa 100644
+index b4a0e49c50..d22cea9aaf 100644
--- a/gdb/gnulib/import/sys_time.in.h
+++ b/gdb/gnulib/import/sys_time.in.h
@@ -93,20 +93,20 @@ struct timeval
@@ -44,5 +44,5 @@ index d535a6a48b..7c34d5a1aa 100644
_GL_CXXALIASWARN (gettimeofday);
# if defined __cplusplus && defined GNULIB_NAMESPACE
--
-2.13.1
+2.18.0
diff --git a/poky/meta/recipes-devtools/gdb/gdb/package_devel_gdb_patches_120-sigprocmask-invalid-call.patch b/poky/meta/recipes-devtools/gdb/gdb/0011-Fix-invalid-sigprocmask-call.patch
index c5484f789..bce025c39 100644
--- a/poky/meta/recipes-devtools/gdb/gdb/package_devel_gdb_patches_120-sigprocmask-invalid-call.patch
+++ b/poky/meta/recipes-devtools/gdb/gdb/0011-Fix-invalid-sigprocmask-call.patch
@@ -1,7 +1,10 @@
-From 56893a61aa4f0270fa8d1197b9848247f90fce0d Mon Sep 17 00:00:00 2001
+From b1985595e46721bb168ac38f4c841a915cc2f799 Mon Sep 17 00:00:00 2001
From: Yousong Zhou <yszhou4tech@gmail.com>
Date: Fri, 24 Mar 2017 10:36:03 +0800
-Subject: [PATCH] Fix invalid sigprocmask call
+Subject: [PATCH 11/11] Fix invalid sigprocmask call
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
The POSIX document says
@@ -20,18 +23,19 @@ gdb/ChangeLog:
* common/signals-state-save-restore.c (save_original_signals_state):
Fix invalid sigprocmask call.
----
+
Upstream-Status: Pending [not author, cherry-picked from LEDE https://bugs.lede-project.org/index.php?do=details&task_id=637&openedfrom=-1%2Bweek]
Signed-off-by: André Draszik <adraszik@tycoint.com>
- gdb/ChangeLog | 5 +++++
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
gdb/common/signals-state-save-restore.c | 2 +-
- 2 files changed, 6 insertions(+), 1 deletion(-)
+ 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/gdb/common/signals-state-save-restore.c b/gdb/common/signals-state-save-restore.c
-index d11a9ae..734335c 100644
+index 5bb66321bb..6597decbc6 100644
--- a/gdb/common/signals-state-save-restore.c
+++ b/gdb/common/signals-state-save-restore.c
-@@ -41,7 +41,7 @@ save_original_signals_state (void)
+@@ -41,7 +41,7 @@ save_original_signals_state (bool quiet)
int i;
int res;
@@ -41,5 +45,5 @@ index d11a9ae..734335c 100644
perror_with_name (("sigprocmask"));
--
-2.6.4
+2.18.0
diff --git a/poky/meta/recipes-devtools/gdb/gdb/0012-Unbreak-GDBserver-build-for-x32.patch b/poky/meta/recipes-devtools/gdb/gdb/0012-Unbreak-GDBserver-build-for-x32.patch
deleted file mode 100644
index 18a3ce3d6..000000000
--- a/poky/meta/recipes-devtools/gdb/gdb/0012-Unbreak-GDBserver-build-for-x32.patch
+++ /dev/null
@@ -1,101 +0,0 @@
-From 3e1e401053ea5f02a9e9c65abddd31a03baa1bd1 Mon Sep 17 00:00:00 2001
-From: Yao Qi <yao.qi@linaro.org>
-Date: Fri, 29 Dec 2017 12:57:25 +0800
-Subject: [PATCH] Unbreak GDBserver build for x32
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-When I verify my target description changes, I build GDB and GDBserver for
-x32, but it failed.
-
-/../../binutils-gdb/gdb/gdbserver/linux-amd64-ipa.c
-../../../binutils-gdb/gdb/gdbserver/linux-amd64-ipa.c: In function ‘const target_desc* get_ipa_tdesc(int)’:
-../../../binutils-gdb/gdb/gdbserver/linux-amd64-ipa.c:184:10: error: ‘X86_TDESC_AVX512’ was not declared in this scope
- case X86_TDESC_AVX512:
- ^
-../../../binutils-gdb/gdb/gdbserver/linux-amd64-ipa.c:185:14: error: ‘tdesc_x32_avx512_linux’ was not declared in this scope
- return tdesc_x32_avx512_linux;
- ^
-../../../binutils-gdb/gdb/gdbserver/linux-amd64-ipa.c: In function ‘void initialize_low_tracepoint()’:
-../../../binutils-gdb/gdb/gdbserver/linux-amd64-ipa.c:282:36: error: ‘init_registers_x32_avx512_linux’ was not declared in this scope
- init_registers_x32_avx512_linux ();
- ^
-
-ipa_x32_linux_regobj use to be there, but removed by
-22049425ce40324139be82d9a6ec518c46b65815 by mistake.
-
-gdb/gdbserver:
-
-2017-08-04 Yao Qi <yao.qi@linaro.org>
-
- * configure.srv (ipa_x32_linux_regobj): New.
- * linux-amd64-ipa.c (get_ipa_tdesc): Use X86_TDESC_AVX_AVX512
- instead of X86_TDESC_AVX512.
- (initialize_low_tracepoint): Call
- init_registers_x32_avx_avx512_linux.
-
-Upstream-Status: Backport [https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=commitdiff;h=f02fd7745d003d65fd3b981618e07b874b721d79]
-
-Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
----
- ChangeLog | 8 ++++++++
- gdb/gdbserver/configure.srv | 1 +
- gdb/gdbserver/linux-amd64-ipa.c | 6 +++---
- 3 files changed, 12 insertions(+), 3 deletions(-)
-
-diff --git a/ChangeLog b/ChangeLog
-index 4ac2d63..b5b8228 100644
---- a/ChangeLog
-+++ b/ChangeLog
-@@ -1,3 +1,11 @@
-+ 2017-08-04 Yao Qi <yao.qi@linaro.org>
-+
-+ * configure.srv (ipa_x32_linux_regobj): New.
-+ * linux-amd64-ipa.c (get_ipa_tdesc): Use X86_TDESC_AVX_AVX512
-+ instead of X86_TDESC_AVX512.
-+ (initialize_low_tracepoint): Call
-+ init_registers_x32_avx_avx512_linux.
-+
- 2017-04-13 Andrew Jenner <andrew@codesourcery.com>
-
- * config.sub: Sync with master version in config project.
-diff --git a/gdb/gdbserver/configure.srv b/gdb/gdbserver/configure.srv
-index d00d9e2..56951c8 100644
---- a/gdb/gdbserver/configure.srv
-+++ b/gdb/gdbserver/configure.srv
-@@ -31,6 +31,7 @@ srv_amd64_linux_regobj="amd64-linux.o amd64-avx-linux.o amd64-avx-avx512-linux.o
-
- ipa_i386_linux_regobj="i386-linux-ipa.o i386-avx-linux-ipa.o i386-avx-mpx-linux-ipa.o i386-avx-avx512-linux-ipa.o i386-avx-mpx-avx512-pku-linux-ipa.o i386-mpx-linux-ipa.o i386-mmx-linux-ipa.o"
- ipa_amd64_linux_regobj="amd64-linux-ipa.o amd64-avx-linux-ipa.o amd64-avx-mpx-linux-ipa.o amd64-avx-avx512-linux-ipa.o amd64-avx-mpx-avx512-pku-linux-ipa.o amd64-mpx-linux-ipa.o"
-+ipa_x32_linux_regobj="x32-linux-ipa.o x32-avx-linux-ipa.o x32-avx-avx512-linux-ipa.o"
- ipa_ppc_linux_regobj="powerpc-32l-ipa.o powerpc-altivec32l-ipa.o powerpc-cell32l-ipa.o powerpc-vsx32l-ipa.o powerpc-isa205-32l-ipa.o powerpc-isa205-altivec32l-ipa.o powerpc-isa205-vsx32l-ipa.o powerpc-e500l-ipa.o powerpc-64l-ipa.o powerpc-altivec64l-ipa.o powerpc-cell64l-ipa.o powerpc-vsx64l-ipa.o powerpc-isa205-64l-ipa.o powerpc-isa205-altivec64l-ipa.o powerpc-isa205-vsx64l-ipa.o"
-
- srv_i386_32bit_xmlfiles="i386/32bit-core.xml i386/32bit-sse.xml i386/32bit-avx.xml i386/32bit-avx512.xml i386/32bit-mpx.xml i386/32bit-pkeys.xml"
-diff --git a/gdb/gdbserver/linux-amd64-ipa.c b/gdb/gdbserver/linux-amd64-ipa.c
-index 67f36c2..683339b 100644
---- a/gdb/gdbserver/linux-amd64-ipa.c
-+++ b/gdb/gdbserver/linux-amd64-ipa.c
-@@ -181,8 +181,8 @@ get_ipa_tdesc (int idx)
- return tdesc_x32_linux;
- case X86_TDESC_AVX:
- return tdesc_x32_avx_linux;
-- case X86_TDESC_AVX512:
-- return tdesc_x32_avx512_linux;
-+ case X86_TDESC_AVX_AVX512:
-+ return tdesc_x32_avx_avx512_linux;
- default:
- break;
- }
-@@ -279,7 +279,7 @@ initialize_low_tracepoint (void)
- #if defined __ILP32__
- init_registers_x32_linux ();
- init_registers_x32_avx_linux ();
-- init_registers_x32_avx512_linux ();
-+ init_registers_x32_avx_avx512_linux ();
- #else
- init_registers_amd64_linux ();
- init_registers_amd64_avx_linux ();
---
-2.7.4
-
diff --git a/poky/meta/recipes-devtools/gdb/gdb/gdb-Fix-ia64-defining-TRAP_HWBKPT-before-including-g.patch b/poky/meta/recipes-devtools/gdb/gdb/gdb-Fix-ia64-defining-TRAP_HWBKPT-before-including-g.patch
deleted file mode 100644
index ef97de777..000000000
--- a/poky/meta/recipes-devtools/gdb/gdb/gdb-Fix-ia64-defining-TRAP_HWBKPT-before-including-g.patch
+++ /dev/null
@@ -1,56 +0,0 @@
-From b033a9663053eed87cb572397176747b88e9a699 Mon Sep 17 00:00:00 2001
-From: James Clarke <jrtc27@jrtc27.com>
-Date: Fri, 19 Jan 2018 17:22:49 +0000
-Subject: [PATCH] gdb: Fix ia64 defining TRAP_HWBKPT before including
- gdb_wait.h
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-On ia64, gdb_wait.h eventually includes siginfo-consts-arch.h, which
-contains an enum with TRAP_HWBKPT, along with a #define. Thus we cannot
-define TRAP_HWBKPT to 4 beforehand, and so gdb_wait.h must be included
-earlier; include it from linux-ptrace.h so it can never come afterwards.
-
-gdb/ChangeLog:
-
- * nat/linux-ptrace.c: Remove unnecessary reinclusion of
- gdb_ptrace.h, and move including gdb_wait.h ...
- * nat/linux-ptrace.h: ... to here.
-
-Upstream-Status: Accepted [https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=commit;h=5a6c3296a7a90694ad4042f6256f3da6d4fa4ee8]
-
-Signed-off-by: Daniel Díaz <daniel.diaz@linaro.org>
----
- gdb/nat/linux-ptrace.c | 2 --
- gdb/nat/linux-ptrace.h | 1 +
- 2 files changed, 1 insertion(+), 2 deletions(-)
-
-diff --git a/gdb/nat/linux-ptrace.c b/gdb/nat/linux-ptrace.c
-index 3265b16..559c2de 100644
---- a/gdb/nat/linux-ptrace.c
-+++ b/gdb/nat/linux-ptrace.c
-@@ -21,8 +21,6 @@
- #include "linux-procfs.h"
- #include "linux-waitpid.h"
- #include "buffer.h"
--#include "gdb_wait.h"
--#include "gdb_ptrace.h"
- #ifdef HAVE_SYS_PROCFS_H
- #include <sys/procfs.h>
- #endif
-diff --git a/gdb/nat/linux-ptrace.h b/gdb/nat/linux-ptrace.h
-index 5954945..6faa89b 100644
---- a/gdb/nat/linux-ptrace.h
-+++ b/gdb/nat/linux-ptrace.h
-@@ -21,6 +21,7 @@
- struct buffer;
-
- #include "nat/gdb_ptrace.h"
-+#include "gdb_wait.h"
-
- #ifdef __UCLIBC__
- #if !(defined(__UCLIBC_HAS_MMU__) || defined(__ARCH_HAS_MMU__))
---
-2.7.4
-
diff --git a/poky/meta/recipes-devtools/gdb/gdb/gdbserver-ctrl-c-handling.patch b/poky/meta/recipes-devtools/gdb/gdb/gdbserver-ctrl-c-handling.patch
new file mode 100644
index 000000000..71fe7f83b
--- /dev/null
+++ b/poky/meta/recipes-devtools/gdb/gdb/gdbserver-ctrl-c-handling.patch
@@ -0,0 +1,26 @@
+This problem was created by the upstream commit 78708b7c8c
+After applying the commit, it will send SIGINT to the process group(-signal_pid).
+But if we use gdbserver send SIGINT, and the attached process is not a process
+group leader, then the "kill (-signal_pid, SIGINT)" returns error and fails to
+interrupt the attached process.
+
+Upstream-Status: Submitted [https://sourceware.org/bugzilla/show_bug.cgi?id=18945]
+
+Author: Josh Gao
+Signed-off-by: Zhixiong Chi <zhixiong.chi@windriver.com>
+
+Index: gdb-8.2/gdb/gdbserver/linux-low.c
+===================================================================
+--- gdb-8.2.orig/gdb/gdbserver/linux-low.c
++++ gdb-8.2/gdb/gdbserver/linux-low.c
+@@ -5940,9 +5940,7 @@ linux_look_up_symbols (void)
+ static void
+ linux_request_interrupt (void)
+ {
+- /* Send a SIGINT to the process group. This acts just like the user
+- typed a ^C on the controlling terminal. */
+- kill (-signal_pid, SIGINT);
++ kill (signal_pid, SIGINT);
+ }
+
+ /* Copy LEN bytes from inferior's auxiliary vector starting at OFFSET
diff --git a/poky/meta/recipes-devtools/gdb/gdb_8.0.1.bb b/poky/meta/recipes-devtools/gdb/gdb_8.2.bb
index ea8fef122..c6eac84dd 100644
--- a/poky/meta/recipes-devtools/gdb/gdb_8.0.1.bb
+++ b/poky/meta/recipes-devtools/gdb/gdb_8.2.bb
@@ -6,6 +6,8 @@ inherit python3-dir
EXTRA_OEMAKE_append_libc-musl = "\
gt_cv_func_gnugettext1_libc=yes \
gt_cv_func_gnugettext2_libc=yes \
+ gl_cv_func_working_strerror=yes \
+ gl_cv_func_strerror_0_works=yes \
gl_cv_func_gettimeofday_clobber=no \
"
@@ -24,4 +26,4 @@ EOF
chmod +x ${WORKDIR}/python
fi
}
-CFLAGS_append_libc-musl = " -Drpl_gettimeofday=gettimeofday"
+CPPFLAGS_append_libc-musl = " -Drpl_gettimeofday=gettimeofday -Drpl_stat=stat"
diff --git a/poky/meta/recipes-devtools/git/files/CVE-2018-11233.patch b/poky/meta/recipes-devtools/git/files/CVE-2018-11233.patch
deleted file mode 100644
index f4468cf2f..000000000
--- a/poky/meta/recipes-devtools/git/files/CVE-2018-11233.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-From 014281e62b7920a6d710a85089e00ca012b0744c Mon Sep 17 00:00:00 2001
-From: Jeff King <peff@peff.net>
-Date: Sun, 13 May 2018 12:09:42 -0400
-Subject: [PATCH] is_ntfs_dotgit: use a size_t for traversing string
-
-We walk through the "name" string using an int, which can
-wrap to a negative value and cause us to read random memory
-before our array (e.g., by creating a tree with a name >2GB,
-since "int" is still 32 bits even on most 64-bit platforms).
-Worse, this is easy to trigger during the fsck_tree() check,
-which is supposed to be protecting us from malicious
-garbage.
-
-Note one bit of trickiness in the existing code: we
-sometimes assign -1 to "len" at the end of the loop, and
-then rely on the "len++" in the for-loop's increment to take
-it back to 0. This is still legal with a size_t, since
-assigning -1 will turn into SIZE_MAX, which then wraps
-around to 0 on increment.
-
-Signed-off-by: Jeff King <peff@peff.net>
-CVE: CVE-2018-11233
-Upstream-Status: Backport[https://github.com/git/git/commit/11a9f4d807a0d71dc6eff51bb87baf4ca2cccf1d]
-Signed-off-by: Sinan Kaya <okaya@kernel.org>
----
- path.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/path.c b/path.c
-index da8b65573..d31c795ff 100644
---- a/path.c
-+++ b/path.c
-@@ -1305,7 +1305,7 @@ static int only_spaces_and_periods(const char *path, size_t len, size_t skip)
-
- int is_ntfs_dotgit(const char *name)
- {
-- int len;
-+ size_t len;
-
- for (len = 0; ; len++)
- if (!name[len] || name[len] == '\\' || is_dir_sep(name[len])) {
---
-2.19.0
-
diff --git a/poky/meta/recipes-devtools/git/files/CVE-2018-11235.patch b/poky/meta/recipes-devtools/git/files/CVE-2018-11235.patch
deleted file mode 100644
index c272eac8d..000000000
--- a/poky/meta/recipes-devtools/git/files/CVE-2018-11235.patch
+++ /dev/null
@@ -1,288 +0,0 @@
-From 0383bbb9015898cbc79abd7b64316484d7713b44 Mon Sep 17 00:00:00 2001
-From: Jeff King <peff@peff.net>
-Date: Mon, 30 Apr 2018 03:25:25 -0400
-Subject: [PATCH] submodule-config: verify submodule names as paths
-
-Submodule "names" come from the untrusted .gitmodules file,
-but we blindly append them to $GIT_DIR/modules to create our
-on-disk repo paths. This means you can do bad things by
-putting "../" into the name (among other things).
-
-Let's sanity-check these names to avoid building a path that
-can be exploited. There are two main decisions:
-
- 1. What should the allowed syntax be?
-
- It's tempting to reuse verify_path(), since submodule
- names typically come from in-repo paths. But there are
- two reasons not to:
-
- a. It's technically more strict than what we need, as
- we really care only about breaking out of the
- $GIT_DIR/modules/ hierarchy. E.g., having a
- submodule named "foo/.git" isn't actually
- dangerous, and it's possible that somebody has
- manually given such a funny name.
-
- b. Since we'll eventually use this checking logic in
- fsck to prevent downstream repositories, it should
- be consistent across platforms. Because
- verify_path() relies on is_dir_sep(), it wouldn't
- block "foo\..\bar" on a non-Windows machine.
-
- 2. Where should we enforce it? These days most of the
- .gitmodules reads go through submodule-config.c, so
- I've put it there in the reading step. That should
- cover all of the C code.
-
- We also construct the name for "git submodule add"
- inside the git-submodule.sh script. This is probably
- not a big deal for security since the name is coming
- from the user anyway, but it would be polite to remind
- them if the name they pick is invalid (and we need to
- expose the name-checker to the shell anyway for our
- test scripts).
-
- This patch issues a warning when reading .gitmodules
- and just ignores the related config entry completely.
- This will generally end up producing a sensible error,
- as it works the same as a .gitmodules file which is
- missing a submodule entry (so "submodule update" will
- barf, but "git clone --recurse-submodules" will print
- an error but not abort the clone.
-
- There is one minor oddity, which is that we print the
- warning once per malformed config key (since that's how
- the config subsystem gives us the entries). So in the
- new test, for example, the user would see three
- warnings. That's OK, since the intent is that this case
- should never come up outside of malicious repositories
- (and then it might even benefit the user to see the
- message multiple times).
-
-Credit for finding this vulnerability and the proof of
-concept from which the test script was adapted goes to
-Etienne Stalmans.
-
-CVE: CVE-2018-11235
-Upstream-Status: Backport [https://github.com/gitster/git/commit/0383bbb9015898cbc79abd7b64316484d7713b44#diff-1772b951776d1647ca31a2256f7fe88f]
-
-Signed-off-by: Jeff King <peff@peff.net>
-Signed-off-by: Jagadeesh Krishnanjanappa <jkrishnanjanappa@mvista.com>
----
- builtin/submodule--helper.c | 24 ++++++++++++++
- git-submodule.sh | 5 +++
- submodule-config.c | 31 ++++++++++++++++++
- submodule-config.h | 7 +++++
- t/t7415-submodule-names.sh | 76 +++++++++++++++++++++++++++++++++++++++++++++
- 5 files changed, 143 insertions(+)
- create mode 100755 t/t7415-submodule-names.sh
-
-diff --git a/builtin/submodule--helper.c b/builtin/submodule--helper.c
-index cbb17a902..b4b4d29d8 100644
---- a/builtin/submodule--helper.c
-+++ b/builtin/submodule--helper.c
-@@ -1480,6 +1480,29 @@ static int is_active(int argc, const cha
- return !is_submodule_active(the_repository, argv[1]);
- }
-
-+/*
-+ * Exit non-zero if any of the submodule names given on the command line is
-+ * invalid. If no names are given, filter stdin to print only valid names
-+ * (which is primarily intended for testing).
-+ */
-+static int check_name(int argc, const char **argv, const char *prefix)
-+{
-+ if (argc > 1) {
-+ while (*++argv) {
-+ if (check_submodule_name(*argv) < 0)
-+ return 1;
-+ }
-+ } else {
-+ struct strbuf buf = STRBUF_INIT;
-+ while (strbuf_getline(&buf, stdin) != EOF) {
-+ if (!check_submodule_name(buf.buf))
-+ printf("%s\n", buf.buf);
-+ }
-+ strbuf_release(&buf);
-+ }
-+ return 0;
-+}
-+
- #define SUPPORT_SUPER_PREFIX (1<<0)
-
- struct cmd_struct {
-@@ -1502,6 +1525,7 @@ static struct cmd_struct commands[] = {
- {"push-check", push_check, 0},
- {"absorb-git-dirs", absorb_git_dirs, SUPPORT_SUPER_PREFIX},
- {"is-active", is_active, 0},
-+ {"check-name", check_name, 0},
- };
-
- int cmd_submodule__helper(int argc, const char **argv, const char *prefix)
-diff --git a/git-submodule.sh b/git-submodule.sh
-index c0d0e9a4c..92750b9e2 100755
---- a/git-submodule.sh
-+++ b/git-submodule.sh
-@@ -229,6 +229,11 @@ Use -f if you really want to add it." >&
- sm_name="$sm_path"
- fi
-
-+ if ! git submodule--helper check-name "$sm_name"
-+ then
-+ die "$(eval_gettext "'$sm_name' is not a valid submodule name")"
-+ fi
-+
- # perhaps the path exists and is already a git repo, else clone it
- if test -e "$sm_path"
- then
-diff --git a/submodule-config.c b/submodule-config.c
-index 4f58491dd..de54351c6 100644
---- a/submodule-config.c
-+++ b/submodule-config.c
-@@ -190,6 +190,31 @@ static struct submodule *cache_lookup_na
- return NULL;
- }
-
-+int check_submodule_name(const char *name)
-+{
-+ /* Disallow empty names */
-+ if (!*name)
-+ return -1;
-+
-+ /*
-+ * Look for '..' as a path component. Check both '/' and '\\' as
-+ * separators rather than is_dir_sep(), because we want the name rules
-+ * to be consistent across platforms.
-+ */
-+ goto in_component; /* always start inside component */
-+ while (*name) {
-+ char c = *name++;
-+ if (c == '/' || c == '\\') {
-+in_component:
-+ if (name[0] == '.' && name[1] == '.' &&
-+ (!name[2] || name[2] == '/' || name[2] == '\\'))
-+ return -1;
-+ }
-+ }
-+
-+ return 0;
-+}
-+
- static int name_and_item_from_var(const char *var, struct strbuf *name,
- struct strbuf *item)
- {
-@@ -201,6 +226,12 @@ static int name_and_item_from_var(const
- return 0;
-
- strbuf_add(name, subsection, subsection_len);
-+ if (check_submodule_name(name->buf) < 0) {
-+ warning(_("ignoring suspicious submodule name: %s"), name->buf);
-+ strbuf_release(name);
-+ return 0;
-+ }
-+
- strbuf_addstr(item, key);
-
- return 1;
-diff --git a/submodule-config.h b/submodule-config.h
-index d434ecdb4..103cc79dd 100644
---- a/submodule-config.h
-+++ b/submodule-config.h
-@@ -48,4 +48,11 @@ extern const struct submodule *submodule
- const char *key);
- extern void submodule_free(void);
-
-+/*
-+ * Returns 0 if the name is syntactically acceptable as a submodule "name"
-+ * (e.g., that may be found in the subsection of a .gitmodules file) and -1
-+ * otherwise.
-+ */
-+int check_submodule_name(const char *name);
-+
- #endif /* SUBMODULE_CONFIG_H */
-diff --git a/t/t7415-submodule-names.sh b/t/t7415-submodule-names.sh
-new file mode 100755
-index 000000000..75fa071c6
---- /dev/null
-+++ b/t/t7415-submodule-names.sh
-@@ -0,0 +1,76 @@
-+#!/bin/sh
-+
-+test_description='check handling of .. in submodule names
-+
-+Exercise the name-checking function on a variety of names, and then give a
-+real-world setup that confirms we catch this in practice.
-+'
-+. ./test-lib.sh
-+
-+test_expect_success 'check names' '
-+ cat >expect <<-\EOF &&
-+ valid
-+ valid/with/paths
-+ EOF
-+
-+ git submodule--helper check-name >actual <<-\EOF &&
-+ valid
-+ valid/with/paths
-+
-+ ../foo
-+ /../foo
-+ ..\foo
-+ \..\foo
-+ foo/..
-+ foo/../
-+ foo\..
-+ foo\..\
-+ foo/../bar
-+ EOF
-+
-+ test_cmp expect actual
-+'
-+
-+test_expect_success 'create innocent subrepo' '
-+ git init innocent &&
-+ git -C innocent commit --allow-empty -m foo
-+'
-+
-+test_expect_success 'submodule add refuses invalid names' '
-+ test_must_fail \
-+ git submodule add --name ../../modules/evil "$PWD/innocent" evil
-+'
-+
-+test_expect_success 'add evil submodule' '
-+ git submodule add "$PWD/innocent" evil &&
-+
-+ mkdir modules &&
-+ cp -r .git/modules/evil modules &&
-+ write_script modules/evil/hooks/post-checkout <<-\EOF &&
-+ echo >&2 "RUNNING POST CHECKOUT"
-+ EOF
-+
-+ git config -f .gitmodules submodule.evil.update checkout &&
-+ git config -f .gitmodules --rename-section \
-+ submodule.evil submodule.../../modules/evil &&
-+ git add modules &&
-+ git commit -am evil
-+'
-+
-+# This step seems like it shouldn't be necessary, since the payload is
-+# contained entirely in the evil submodule. But due to the vagaries of the
-+# submodule code, checking out the evil module will fail unless ".git/modules"
-+# exists. Adding another submodule (with a name that sorts before "evil") is an
-+# easy way to make sure this is the case in the victim clone.
-+test_expect_success 'add other submodule' '
-+ git submodule add "$PWD/innocent" another-module &&
-+ git add another-module &&
-+ git commit -am another
-+'
-+
-+test_expect_success 'clone evil superproject' '
-+ git clone --recurse-submodules . victim >output 2>&1 &&
-+ ! grep "RUNNING POST CHECKOUT" output
-+'
-+
-+test_done
---
-2.13.3
-
diff --git a/poky/meta/recipes-devtools/git/git.inc b/poky/meta/recipes-devtools/git/git.inc
index 8603c045c..26a22ac1e 100644
--- a/poky/meta/recipes-devtools/git/git.inc
+++ b/poky/meta/recipes-devtools/git/git.inc
@@ -7,9 +7,7 @@ DEPENDS = "openssl curl zlib expat"
PROVIDES_append_class-native = " git-replacement-native"
SRC_URI = "${KERNELORG_MIRROR}/software/scm/git/git-${PV}.tar.gz;name=tarball \
- ${KERNELORG_MIRROR}/software/scm/git/git-manpages-${PV}.tar.gz;name=manpages \
- file://CVE-2018-11235.patch \
- file://CVE-2018-11233.patch"
+ ${KERNELORG_MIRROR}/software/scm/git/git-manpages-${PV}.tar.gz;name=manpages"
S = "${WORKDIR}/git-${PV}"
@@ -54,13 +52,6 @@ perl_native_fixup () {
-e 's#${libdir}/perl-native/#${libdir}/#' \
${@d.getVar("PERLTOOLS").replace(' /',d.getVar('D') + '/')}
- # ${libdir} is not applicable here, perl-native files are always
- # installed to /usr/lib on both 32/64 bits targets.
-
- mkdir -p ${D}${libdir}
- mv ${D}${exec_prefix}/lib/perl-native/perl ${D}${libdir}
- rmdir -p ${D}${exec_prefix}/lib/perl-native || true
-
if [ ! "${@bb.utils.filter('PACKAGECONFIG', 'cvsserver', d)}" ]; then
# Only install the git cvsserver command if explicitly requested
# as it requires the DBI Perl module, which does not exist in
@@ -74,8 +65,7 @@ perl_native_fixup () {
# if explicitly requested as they require the SVN::Core Perl
# module, which does not exist in OE-Core.
rm -r ${D}${libexecdir}/git-core/git-svn \
- ${D}${libdir}/perl/site_perl/*/Git/SVN*
- sed -i -e '/SVN/d' ${D}${libdir}/perl/site_perl/*/auto/Git/.packlist
+ ${D}${datadir}/perl5/Git/SVN*
fi
}
@@ -126,7 +116,7 @@ PACKAGES =+ "${PN}-perltools"
FILES_${PN}-perltools += " \
${PERLTOOLS} \
${libdir}/perl \
- ${datadir}/perl \
+ ${datadir}/perl5 \
"
RDEPENDS_${PN}-perltools = "${PN} perl perl-module-file-path findutils"
diff --git a/poky/meta/recipes-devtools/git/git_2.16.1.bb b/poky/meta/recipes-devtools/git/git_2.16.1.bb
deleted file mode 100644
index 9dc4eba88..000000000
--- a/poky/meta/recipes-devtools/git/git_2.16.1.bb
+++ /dev/null
@@ -1,11 +0,0 @@
-require git.inc
-
-EXTRA_OECONF += "ac_cv_snprintf_returns_bogus=no \
- ac_cv_fread_reads_directories=${ac_cv_fread_reads_directories=yes} \
- "
-EXTRA_OEMAKE += "NO_GETTEXT=1"
-
-SRC_URI[tarball.md5sum] = "37467da8e79e72f28598d667f219f75e"
-SRC_URI[tarball.sha256sum] = "56cfa48af2b289bba172ca0a47c29f0083f5846cf4759978b70988e4f07fc9fd"
-SRC_URI[manpages.md5sum] = "5587407f3c28446af12fde3f3131ba34"
-SRC_URI[manpages.sha256sum] = "d499e825f429d76862be415f579c20cc26b046573a3a39237acaf9682cb71be7"
diff --git a/poky/meta/recipes-devtools/git/git_2.18.1.bb b/poky/meta/recipes-devtools/git/git_2.18.1.bb
new file mode 100644
index 000000000..b2960c0ef
--- /dev/null
+++ b/poky/meta/recipes-devtools/git/git_2.18.1.bb
@@ -0,0 +1,11 @@
+require git.inc
+
+EXTRA_OECONF += "ac_cv_snprintf_returns_bogus=no \
+ ac_cv_fread_reads_directories=${ac_cv_fread_reads_directories=yes} \
+ "
+EXTRA_OEMAKE += "NO_GETTEXT=1"
+
+SRC_URI[tarball.md5sum] = "9b62c267d878f6cb02f8abc59a99525d"
+SRC_URI[tarball.sha256sum] = "5c710c866d8c9ba3b3e062755e0e9d0ef4f665752bd64810e3eb9f1b0f0eb076"
+SRC_URI[manpages.md5sum] = "ef32a459a4a08a3b8e837a31c925c848"
+SRC_URI[manpages.sha256sum] = "d05bfab2dc45de4f6e7d61ca173071d6902905a4963f7ac3cbca608c0d4592c9"
diff --git a/poky/meta/recipes-devtools/glide/glide_0.13.1.bb b/poky/meta/recipes-devtools/glide/glide_0.13.1.bb
deleted file mode 100644
index 1a5b145cf..000000000
--- a/poky/meta/recipes-devtools/glide/glide_0.13.1.bb
+++ /dev/null
@@ -1,15 +0,0 @@
-SUMMARY = "Vendor Package Management for Golang"
-HOMEPAGE = "https://glide.sh"
-LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://src/${GO_IMPORT}/LICENSE;md5=54905cf894f8cc416a92f4fc350c35b2"
-
-GO_IMPORT = "github.com/Masterminds/glide"
-SRC_URI = "git://${GO_IMPORT}"
-SRCREV = "67790b3dbede72cfdc54aa53be4706322c9499e0"
-
-inherit go
-
-RDEPENDS_${PN}-dev += "bash"
-RDEPENDS_${PN}-ptest += "bash"
-
-BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-devtools/glide/glide_0.13.2.bb b/poky/meta/recipes-devtools/glide/glide_0.13.2.bb
new file mode 100644
index 000000000..3a32fa1af
--- /dev/null
+++ b/poky/meta/recipes-devtools/glide/glide_0.13.2.bb
@@ -0,0 +1,35 @@
+SUMMARY = "Vendor Package Management for Golang"
+HOMEPAGE = "https://glide.sh"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://src/${GO_IMPORT}/LICENSE;md5=54905cf894f8cc416a92f4fc350c35b2"
+
+GO_IMPORT = "github.com/Masterminds/glide"
+SRC_URI = "git://${GO_IMPORT}"
+SRCREV = "9ef6ca313b3200079861f2de4e567b1d22081d19"
+
+inherit go
+
+RDEPENDS_${PN}-dev += "bash"
+RDEPENDS_${PN}-ptest += "bash"
+
+BBCLASSEXTEND = "native nativesdk"
+
+# for x86 ends with textrel in ${PN}
+# http://errors.yoctoproject.org/Errors/Details/185631/
+# ERROR: QA Issue: ELF binary '/work/i586-oe-linux/glide/0.13.1-r0/packages-split/glide/usr/bin/glide' has relocations in .text [textrel]
+INSANE_SKIP_${PN} += "textrel"
+
+# for aarch64 ends with textrel in ${PN}-ptest
+# http://errors.yoctoproject.org/Errors/Details/185633/
+# ERROR: QA Issue: ELF binary '/work/aarch64-oe-linux/glide/0.13.1-r0/packages-split/glide-ptest/usr/lib/glide/ptest/github.com/Masterminds/glide/glide.test' has relocations in .text
+# ELF binary '/work/aarch64-oe-linux/glide/0.13.1-r0/packages-split/glide-ptest/usr/lib/glide/ptest/github.com/Masterminds/glide/dependency/dependency.test' has relocations in .text
+# ELF binary '/work/aarch64-oe-linux/glide/0.13.1-r0/packages-split/glide-ptest/usr/lib/glide/ptest/github.com/Masterminds/glide/repo/repo.test' has relocations in .text
+# ELF binary '/work/aarch64-oe-linux/glide/0.13.1-r0/packages-split/glide-ptest/usr/lib/glide/ptest/github.com/Masterminds/glide/mirrors/mirrors.test' has relocations in .text
+# ELF binary '/work/aarch64-oe-linux/glide/0.13.1-r0/packages-split/glide-ptest/usr/lib/glide/ptest/github.com/Masterminds/glide/cfg/cfg.test' has relocations in .text
+# ELF binary '/work/aarch64-oe-linux/glide/0.13.1-r0/packages-split/glide-ptest/usr/lib/glide/ptest/github.com/Masterminds/glide/godep/strip/strip.test' has relocations in .text
+# ELF binary '/work/aarch64-oe-linux/glide/0.13.1-r0/packages-split/glide-ptest/usr/lib/glide/ptest/github.com/Masterminds/glide/path/path.test' has relocations in .text
+# ELF binary '/work/aarch64-oe-linux/glide/0.13.1-r0/packages-split/glide-ptest/usr/lib/glide/ptest/github.com/Masterminds/glide/tree/tree.test' has relocations in .text
+# ELF binary '/work/aarch64-oe-linux/glide/0.13.1-r0/packages-split/glide-ptest/usr/lib/glide/ptest/github.com/Masterminds/glide/util/util.test' has relocations in .text
+# ELF binary '/work/aarch64-oe-linux/glide/0.13.1-r0/packages-split/glide-ptest/usr/lib/glide/ptest/github.com/Masterminds/glide/action/action.test' has relocations in .text
+# ELF binary '/work/aarch64-oe-linux/glide/0.13.1-r0/packages-split/glide-ptest/usr/lib/glide/ptest/github.com/Masterminds/glide/cache/cache.test' has relocations in .text [textrel]
+INSANE_SKIP_${PN}-ptest += "textrel"
diff --git a/poky/meta/recipes-devtools/gnu-config/gnu-config/musl-support.patch b/poky/meta/recipes-devtools/gnu-config/gnu-config/musl-support.patch
deleted file mode 100644
index 3147435a6..000000000
--- a/poky/meta/recipes-devtools/gnu-config/gnu-config/musl-support.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-support musl
-
-Upstream-Status: Pending
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-
-Index: gnu-config-20120814/config.sub
-===================================================================
---- gnu-config-20120814.orig/config.sub 2012-09-18 02:27:45.000000000 -0700
-+++ gnu-config-20120814/config.sub 2014-03-26 00:34:19.955996709 -0700
-@@ -123,6 +123,7 @@
- maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
- case $maybe_os in
- nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \
-+ linux-musl* | \
- linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \
- knetbsd*-gnu* | netbsd*-gnu* | \
- kopensolaris*-gnu* | \
-@@ -1365,6 +1366,7 @@
- | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
- | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \
- | -linux-newlib* | -linux-uclibc* \
-+ | -linux-musl* \
- | -uxpv* | -beos* | -mpeix* | -udk* \
- | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
- | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
diff --git a/poky/meta/recipes-devtools/gnu-config/gnu-config_20120814.bb b/poky/meta/recipes-devtools/gnu-config/gnu-config_20120814.bb
deleted file mode 100644
index 3d428b9b7..000000000
--- a/poky/meta/recipes-devtools/gnu-config/gnu-config_20120814.bb
+++ /dev/null
@@ -1,40 +0,0 @@
-SUMMARY = "gnu-configize"
-DESCRIPTION = "Tool that installs the GNU config.guess / config.sub into a directory tree"
-SECTION = "devel"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://config.guess;endline=39;md5=b79a4663475f4d724846463277817e0d"
-
-DEPENDS_class-native = "hostperl-runtime-native"
-
-INHIBIT_DEFAULT_DEPS = "1"
-
-
-SRC_URI = "http://downloads.yoctoproject.org/releases/gnu-config/gnu-config-${PV}.tar.bz2 \
- file://musl-support.patch \
- file://gnu-configize.in"
-
-SRC_URI[md5sum] = "bcfca5a2bb39edad4aae5a65efc84094"
-SRC_URI[sha256sum] = "44f99a8e76f3e8e4fec0bb5ad4762f8e44366168554ce66cb85afbe2ed3efd8b"
-
-CLEANBROKEN = "1"
-
-do_compile[noexec] = "1"
-
-do_install () {
- install -d ${D}${datadir}/gnu-config \
- ${D}${bindir}
- cat ${WORKDIR}/gnu-configize.in | \
- sed -e 's,@gnu-configdir@,${datadir}/gnu-config,g' \
- -e 's,@autom4te_perllibdir@,${datadir}/autoconf,g' > ${D}${bindir}/gnu-configize
- # In the native case we want the system perl as perl-native can't have built yet
- if [ "${PN}" != "gnu-config-native" -a "${PN}" != "nativesdk-gnu-config" ]; then
- sed -i -e 's,/usr/bin/env,${bindir}/env,g' ${D}${bindir}/gnu-configize
- fi
- chmod 755 ${D}${bindir}/gnu-configize
- install -m 0644 config.guess config.sub ${D}${datadir}/gnu-config/
-}
-
-PACKAGES = "${PN}"
-FILES_${PN} = "${bindir} ${datadir}/gnu-config"
-
-BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-devtools/gnu-config/gnu-config_git.bb b/poky/meta/recipes-devtools/gnu-config/gnu-config_git.bb
index 8de813812..4745f19ce 100644
--- a/poky/meta/recipes-devtools/gnu-config/gnu-config_git.bb
+++ b/poky/meta/recipes-devtools/gnu-config/gnu-config_git.bb
@@ -2,14 +2,14 @@ SUMMARY = "gnu-configize"
DESCRIPTION = "Tool that installs the GNU config.guess / config.sub into a directory tree"
SECTION = "devel"
LICENSE = "GPL-3.0-with-autoconf-exception"
-LIC_FILES_CHKSUM = "file://config.guess;beginline=7;endline=27;md5=9bac8b1743c2240ae07cce6e546ac2f2"
+LIC_FILES_CHKSUM = "file://config.guess;beginline=7;endline=27;md5=b75d42f59f706ea56d6a8e00216fca6a"
DEPENDS_class-native = "hostperl-runtime-native"
INHIBIT_DEFAULT_DEPS = "1"
-SRCREV = "b576fa87c140b824466ef1638e945e87dc5c0343"
-PV = "20150728+git${SRCPV}"
+SRCREV = "30d53fc428ea42af9d6f4d355db0022e3918a824"
+PV = "20180713+git${SRCPV}"
SRC_URI = "git://git.savannah.gnu.org/config.git \
file://gnu-configize.in"
diff --git a/poky/meta/recipes-devtools/go/go-1.10/0003-allow-GOTOOLDIR-to-be-overridden-in-the-environment.patch b/poky/meta/recipes-devtools/go/go-1.10/0003-allow-GOTOOLDIR-to-be-overridden-in-the-environment.patch
deleted file mode 100644
index 818fe6670..000000000
--- a/poky/meta/recipes-devtools/go/go-1.10/0003-allow-GOTOOLDIR-to-be-overridden-in-the-environment.patch
+++ /dev/null
@@ -1,64 +0,0 @@
-From acd179b49f1fc8d6f7f69e569fb4a56039c725a1 Mon Sep 17 00:00:00 2001
-From: Matt Madison <matt@madison.systems>
-Date: Sat, 17 Feb 2018 05:24:20 -0800
-Subject: [PATCH 3/9] allow GOTOOLDIR to be overridden in the environment
-
-to allow for split host/target build roots
-
-Upstream-Status: Inappropriate [OE specific]
-
-Signed-off-by: Matt Madison <matt@madison.systems>
----
- src/cmd/dist/build.go | 4 +++-
- src/cmd/go/internal/cfg/cfg.go | 6 +++++-
- src/go/build/build.go | 2 +-
- 3 files changed, 9 insertions(+), 3 deletions(-)
-
-diff --git a/src/cmd/dist/build.go b/src/cmd/dist/build.go
-index 49ed80033e..afc615b5c2 100644
---- a/src/cmd/dist/build.go
-+++ b/src/cmd/dist/build.go
-@@ -220,7 +220,9 @@ func xinit() {
- workdir = xworkdir()
- xatexit(rmworkdir)
-
-- tooldir = pathf("%s/pkg/tool/%s_%s", goroot, gohostos, gohostarch)
-+ if tooldir = os.Getenv("GOTOOLDIR"); tooldir == "" {
-+ tooldir = pathf("%s/pkg/tool/%s_%s", goroot, gohostos, gohostarch)
-+ }
- }
-
- // compilerEnv returns a map from "goos/goarch" to the
-diff --git a/src/cmd/go/internal/cfg/cfg.go b/src/cmd/go/internal/cfg/cfg.go
-index 1de4f0dc79..4f6010d660 100644
---- a/src/cmd/go/internal/cfg/cfg.go
-+++ b/src/cmd/go/internal/cfg/cfg.go
-@@ -96,7 +96,11 @@ func init() {
- // as the tool directory does not move based on environment variables.
- // This matches the initialization of ToolDir in go/build,
- // except for using GOROOT rather than runtime.GOROOT().
-- build.ToolDir = filepath.Join(GOROOT, "pkg/tool/"+runtime.GOOS+"_"+runtime.GOARCH)
-+ if s := os.Getenv("GOTOOLDIR"); s != "" {
-+ build.ToolDir = filepath.Clean(s)
-+ } else {
-+ build.ToolDir = filepath.Join(GOROOT, "pkg/tool/"+runtime.GOOS+"_"+runtime.GOARCH)
-+ }
- }
-
- func findGOROOT() string {
-diff --git a/src/go/build/build.go b/src/go/build/build.go
-index 68fb423983..81b1b32270 100644
---- a/src/go/build/build.go
-+++ b/src/go/build/build.go
-@@ -1594,7 +1594,7 @@ func init() {
- }
-
- // ToolDir is the directory containing build tools.
--var ToolDir = filepath.Join(runtime.GOROOT(), "pkg/tool/"+runtime.GOOS+"_"+runtime.GOARCH)
-+var ToolDir = envOr("GOTOOLDIR", filepath.Join(runtime.GOROOT(), "pkg/tool/"+runtime.GOOS+"_"+runtime.GOARCH))
-
- // IsLocalImport reports whether the import path is
- // a local import path, like ".", "..", "./foo", or "../foo".
---
-2.14.1
-
diff --git a/poky/meta/recipes-devtools/go/go-1.10/0008-cmd-internal-obj-arm64-fix-branch-too-far-with-TBZ-l.patch b/poky/meta/recipes-devtools/go/go-1.10/0008-cmd-internal-obj-arm64-fix-branch-too-far-with-TBZ-l.patch
deleted file mode 100644
index 1e754178d..000000000
--- a/poky/meta/recipes-devtools/go/go-1.10/0008-cmd-internal-obj-arm64-fix-branch-too-far-with-TBZ-l.patch
+++ /dev/null
@@ -1,58 +0,0 @@
-From 41b90ed7af10a071ccfeede6a429e0d80518436d Mon Sep 17 00:00:00 2001
-From: Cherry Zhang <cherryyz@google.com>
-Date: Sat, 17 Feb 2018 10:31:39 -0500
-Subject: [PATCH 8/9] cmd/internal/obj/arm64: fix branch-too-far with TBZ like
- instructions
-
-The compiler now emits TBZ like instructions, but the assembler's
-too-far-branch patch code didn't include that case. Add it.
-
-Fixes #23889.
-
-Change-Id: Ib75f9250c660b9fb652835fbc83263a5d5073dc5
----
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-Upstream-Status: Backport
-
- src/cmd/internal/obj/arm64/asm7.go | 11 +++++++++--
- src/cmd/internal/obj/arm64/asm_test.go | 1 +
- 2 files changed, 10 insertions(+), 2 deletions(-)
-
-diff --git a/src/cmd/internal/obj/arm64/asm7.go b/src/cmd/internal/obj/arm64/asm7.go
-index ca81238c93..b1ee552489 100644
---- a/src/cmd/internal/obj/arm64/asm7.go
-+++ b/src/cmd/internal/obj/arm64/asm7.go
-@@ -696,9 +696,16 @@ func span7(ctxt *obj.Link, cursym *obj.LSym, newprog obj.ProgAlloc) {
- o = c.oplook(p)
-
- /* very large branches */
-- if (o.type_ == 7 || o.type_ == 39) && p.Pcond != nil { // 7: BEQ and like, 39: CBZ and like
-+ if (o.type_ == 7 || o.type_ == 39 || o.type_ == 40) && p.Pcond != nil { // 7: BEQ and like, 39: CBZ and like, 40: TBZ and like
- otxt := p.Pcond.Pc - pc
-- if otxt <= -(1<<18)+10 || otxt >= (1<<18)-10 {
-+ var toofar bool
-+ switch o.type_ {
-+ case 7, 39: // branch instruction encodes 19 bits
-+ toofar = otxt <= -(1<<20)+10 || otxt >= (1<<20)-10
-+ case 40: // branch instruction encodes 14 bits
-+ toofar = otxt <= -(1<<15)+10 || otxt >= (1<<15)-10
-+ }
-+ if toofar {
- q := c.newprog()
- q.Link = p.Link
- p.Link = q
-diff --git a/src/cmd/internal/obj/arm64/asm_test.go b/src/cmd/internal/obj/arm64/asm_test.go
-index 369c48f510..3e0c9c13a6 100644
---- a/src/cmd/internal/obj/arm64/asm_test.go
-+++ b/src/cmd/internal/obj/arm64/asm_test.go
-@@ -52,6 +52,7 @@ func TestLarge(t *testing.T) {
- // gen generates a very large program, with a very far conditional branch.
- func gen(buf *bytes.Buffer) {
- fmt.Fprintln(buf, "TEXT f(SB),0,$0-0")
-+ fmt.Fprintln(buf, "TBZ $5, R0, label")
- fmt.Fprintln(buf, "CBZ R0, label")
- fmt.Fprintln(buf, "BEQ label")
- for i := 0; i < 1<<19; i++ {
---
-2.14.1
-
diff --git a/poky/meta/recipes-devtools/go/go-1.10.inc b/poky/meta/recipes-devtools/go/go-1.11.inc
index 1df0fc5b6..c02e4683b 100644
--- a/poky/meta/recipes-devtools/go/go-1.10.inc
+++ b/poky/meta/recipes-devtools/go/go-1.11.inc
@@ -1,7 +1,7 @@
require go-common.inc
-GO_BASEVERSION = "1.10"
-GO_MINOR = ".3"
+GO_BASEVERSION = "1.11"
+GO_MINOR = ".1"
PV .= "${GO_MINOR}"
FILESEXTRAPATHS_prepend := "${FILE_DIRNAME}/go-${GO_BASEVERSION}:"
@@ -15,10 +15,9 @@ SRC_URI += "\
file://0005-make.bash-override-CC-when-building-dist-and-go_boot.patch \
file://0006-cmd-dist-separate-host-and-target-builds.patch \
file://0007-cmd-go-make-GOROOT-precious-by-default.patch \
- file://0008-cmd-internal-obj-arm64-fix-branch-too-far-with-TBZ-l.patch \
"
SRC_URI_append_libc-musl = " file://0009-ld-replace-glibc-dynamic-linker-with-musl.patch"
-SRC_URI[main.md5sum] = "d15dfb264105c5e84fbe33f4a4aa5021"
-SRC_URI[main.sha256sum] = "567b1cc66c9704d1c019c50bef946272e911ec6baf244310f87f4e678be155f2"
+SRC_URI[main.md5sum] = "eb9e9792247143705a7aacea9398cde0"
+SRC_URI[main.sha256sum] = "558f8c169ae215e25b81421596e8de7572bd3ba824b79add22fba6e284db1117"
diff --git a/poky/meta/recipes-devtools/go/go-1.10/0001-allow-CC-and-CXX-to-have-multiple-words.patch b/poky/meta/recipes-devtools/go/go-1.11/0001-allow-CC-and-CXX-to-have-multiple-words.patch
index 3bb33b014..4442858c8 100644
--- a/poky/meta/recipes-devtools/go/go-1.10/0001-allow-CC-and-CXX-to-have-multiple-words.patch
+++ b/poky/meta/recipes-devtools/go/go-1.11/0001-allow-CC-and-CXX-to-have-multiple-words.patch
@@ -1,20 +1,21 @@
-From 7a7de46129fa6859fb6311096eb9f54c53c7fe2f Mon Sep 17 00:00:00 2001
+From 7cc519aa5f84cf8fc7ac8c10fc69aa8040330ea0 Mon Sep 17 00:00:00 2001
From: Matt Madison <matt@madison.systems>
Date: Mon, 19 Feb 2018 08:49:33 -0800
-Subject: [PATCH 1/9] allow CC and CXX to have multiple words
+Subject: [PATCH] allow CC and CXX to have multiple words
Upstream-Status: Inappropriate [OE specific]
Signed-off-by: Matt Madison <matt@madison.systems>
+
---
src/cmd/go/internal/envcmd/env.go | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/cmd/go/internal/envcmd/env.go b/src/cmd/go/internal/envcmd/env.go
-index 603f7b5060..f891123f9c 100644
+index afadbad..cedbfbf 100644
--- a/src/cmd/go/internal/envcmd/env.go
+++ b/src/cmd/go/internal/envcmd/env.go
-@@ -82,11 +82,11 @@ func MkEnv() []cfg.EnvVar {
+@@ -85,11 +85,11 @@ func MkEnv() []cfg.EnvVar {
cc := cfg.DefaultCC(cfg.Goos, cfg.Goarch)
if env := strings.Fields(os.Getenv("CC")); len(env) > 0 {
@@ -28,6 +29,3 @@ index 603f7b5060..f891123f9c 100644
}
env = append(env, cfg.EnvVar{Name: "CC", Value: cc})
env = append(env, cfg.EnvVar{Name: "CXX", Value: cxx})
---
-2.14.1
-
diff --git a/poky/meta/recipes-devtools/go/go-1.10/0002-cmd-go-make-content-based-hash-generation-less-pedan.patch b/poky/meta/recipes-devtools/go/go-1.11/0002-cmd-go-make-content-based-hash-generation-less-pedan.patch
index 74f37a99e..66b856187 100644
--- a/poky/meta/recipes-devtools/go/go-1.10/0002-cmd-go-make-content-based-hash-generation-less-pedan.patch
+++ b/poky/meta/recipes-devtools/go/go-1.11/0002-cmd-go-make-content-based-hash-generation-less-pedan.patch
@@ -1,7 +1,7 @@
-From 8b2feaee81d7a16adc59e61d06c1e7314d3a5408 Mon Sep 17 00:00:00 2001
+From 47db69e20ed66fb62b01affd83d829654b829893 Mon Sep 17 00:00:00 2001
From: Matt Madison <matt@madison.systems>
Date: Mon, 19 Feb 2018 08:50:59 -0800
-Subject: [PATCH 2/9] cmd/go: make content-based hash generation less pedantic
+Subject: [PATCH] cmd/go: make content-based hash generation less pedantic
Go 1.10's build tool now uses content-based hashes to
determine when something should be built or re-built.
@@ -41,17 +41,18 @@ by setting the CGO_PEDANTIC environment variable.
Upstream-Status: Inappropriate [OE specific]
Signed-off-by: Matt Madison <matt@madison.systems>
+
---
src/cmd/go/internal/envcmd/env.go | 2 +-
- src/cmd/go/internal/work/exec.go | 63 ++++++++++++++++++++++++++++-----------
+ src/cmd/go/internal/work/exec.go | 63 ++++++++++++++++++++++---------
2 files changed, 46 insertions(+), 19 deletions(-)
diff --git a/src/cmd/go/internal/envcmd/env.go b/src/cmd/go/internal/envcmd/env.go
-index f891123f9c..ebacfbfdbc 100644
+index cedbfbf..5763a0d 100644
--- a/src/cmd/go/internal/envcmd/env.go
+++ b/src/cmd/go/internal/envcmd/env.go
-@@ -113,7 +113,7 @@ func findEnv(env []cfg.EnvVar, name string) string {
- func ExtraEnvVars() []cfg.EnvVar {
+@@ -128,7 +128,7 @@ func ExtraEnvVars() []cfg.EnvVar {
+ func ExtraEnvVarsCostly() []cfg.EnvVar {
var b work.Builder
b.Init()
- cppflags, cflags, cxxflags, fflags, ldflags, err := b.CFlags(&load.Package{})
@@ -60,10 +61,10 @@ index f891123f9c..ebacfbfdbc 100644
// Should not happen - b.CFlags was given an empty package.
fmt.Fprintf(os.Stderr, "go: invalid cflags: %v\n", err)
diff --git a/src/cmd/go/internal/work/exec.go b/src/cmd/go/internal/work/exec.go
-index c4c1500eb2..b0f6b45647 100644
+index 12e1527..e41bfac 100644
--- a/src/cmd/go/internal/work/exec.go
+++ b/src/cmd/go/internal/work/exec.go
-@@ -173,6 +173,8 @@ func (b *Builder) Do(root *Action) {
+@@ -174,6 +174,8 @@ func (b *Builder) Do(root *Action) {
wg.Wait()
}
@@ -72,7 +73,7 @@ index c4c1500eb2..b0f6b45647 100644
// buildActionID computes the action ID for a build action.
func (b *Builder) buildActionID(a *Action) cache.ActionID {
p := a.Package
-@@ -189,7 +191,7 @@ func (b *Builder) buildActionID(a *Action) cache.ActionID {
+@@ -190,7 +192,7 @@ func (b *Builder) buildActionID(a *Action) cache.ActionID {
// but it does not hide the exact value of $GOPATH.
// Include the full dir in that case.
// Assume b.WorkDir is being trimmed properly.
@@ -81,14 +82,14 @@ index c4c1500eb2..b0f6b45647 100644
fmt.Fprintf(h, "dir %s\n", p.Dir)
}
fmt.Fprintf(h, "goos %s goarch %s\n", cfg.Goos, cfg.Goarch)
-@@ -197,13 +199,13 @@ func (b *Builder) buildActionID(a *Action) cache.ActionID {
- fmt.Fprintf(h, "omitdebug %v standard %v local %v prefix %q\n", p.Internal.OmitDebug, p.Standard, p.Internal.Local, p.Internal.LocalPrefix)
+@@ -201,13 +203,13 @@ func (b *Builder) buildActionID(a *Action) cache.ActionID {
+ }
if len(p.CgoFiles)+len(p.SwigFiles) > 0 {
fmt.Fprintf(h, "cgo %q\n", b.toolID("cgo"))
-- cppflags, cflags, cxxflags, fflags, _, _ := b.CFlags(p)
-- fmt.Fprintf(h, "CC=%q %q %q\n", b.ccExe(), cppflags, cflags)
-+ cppflags, cflags, cxxflags, fflags, _, _ := b.CFlags(p, true)
-+ fmt.Fprintf(h, "CC=%q %q %q\n", b.ccExe(true), cppflags, cflags)
+- cppflags, cflags, cxxflags, fflags, ldflags, _ := b.CFlags(p)
+- fmt.Fprintf(h, "CC=%q %q %q %q\n", b.ccExe(), cppflags, cflags, ldflags)
++ cppflags, cflags, cxxflags, fflags, ldflags, _ := b.CFlags(p, true)
++ fmt.Fprintf(h, "CC=%q %q %q %q\n", b.ccExe(true), cppflags, cflags, ldflags)
if len(p.CXXFiles)+len(p.SwigFiles) > 0 {
- fmt.Fprintf(h, "CXX=%q %q\n", b.cxxExe(), cxxflags)
+ fmt.Fprintf(h, "CXX=%q %q\n", b.cxxExe(true), cxxflags)
@@ -99,7 +100,7 @@ index c4c1500eb2..b0f6b45647 100644
}
// TODO(rsc): Should we include the SWIG version or Fortran/GCC/G++/Objective-C compiler versions?
}
-@@ -1731,33 +1733,33 @@ var (
+@@ -2096,33 +2098,33 @@ var (
// gccCmd returns a gcc command line prefix
// defaultCC is defined in zdefaultcc.go, written by cmd/dist.
func (b *Builder) GccCmd(incdir, workdir string) []string {
@@ -142,7 +143,7 @@ index c4c1500eb2..b0f6b45647 100644
}
// compilerExe returns the compiler to use given an
-@@ -1766,11 +1768,14 @@ func (b *Builder) fcExe() []string {
+@@ -2131,11 +2133,14 @@ func (b *Builder) fcExe() []string {
// of the compiler but can have additional arguments if they
// were present in the environment value.
// For example if CC="gcc -DGOPHER" then the result is ["gcc", "-DGOPHER"].
@@ -158,7 +159,7 @@ index c4c1500eb2..b0f6b45647 100644
return compiler
}
-@@ -1920,8 +1925,23 @@ func envList(key, def string) []string {
+@@ -2285,8 +2290,23 @@ func envList(key, def string) []string {
return strings.Fields(v)
}
@@ -183,7 +184,7 @@ index c4c1500eb2..b0f6b45647 100644
defaults := "-g -O2"
if cppflags, err = buildFlags("CPPFLAGS", "", p.CgoCPPFLAGS, checkCompilerFlags); err != nil {
-@@ -1939,6 +1959,13 @@ func (b *Builder) CFlags(p *load.Package) (cppflags, cflags, cxxflags, fflags, l
+@@ -2304,6 +2324,13 @@ func (b *Builder) CFlags(p *load.Package) (cppflags, cflags, cxxflags, fflags, l
if ldflags, err = buildFlags("LDFLAGS", defaults, p.CgoLDFLAGS, checkLinkerFlags); err != nil {
return
}
@@ -197,7 +198,7 @@ index c4c1500eb2..b0f6b45647 100644
return
}
-@@ -1954,7 +1981,7 @@ var cgoRe = regexp.MustCompile(`[/\\:]`)
+@@ -2319,7 +2346,7 @@ var cgoRe = regexp.MustCompile(`[/\\:]`)
func (b *Builder) cgo(a *Action, cgoExe, objdir string, pcCFLAGS, pcLDFLAGS, cgofiles, gccfiles, gxxfiles, mfiles, ffiles []string) (outGo, outObj []string, err error) {
p := a.Package
@@ -206,7 +207,7 @@ index c4c1500eb2..b0f6b45647 100644
if err != nil {
return nil, nil, err
}
-@@ -2306,7 +2333,7 @@ func (b *Builder) swigIntSize(objdir string) (intsize string, err error) {
+@@ -2679,7 +2706,7 @@ func (b *Builder) swigIntSize(objdir string) (intsize string, err error) {
// Run SWIG on one SWIG input file.
func (b *Builder) swigOne(a *Action, p *load.Package, file, objdir string, pcCFLAGS []string, cxx bool, intgosize string) (outGo, outC string, err error) {
@@ -215,6 +216,3 @@ index c4c1500eb2..b0f6b45647 100644
if err != nil {
return "", "", err
}
---
-2.14.1
-
diff --git a/poky/meta/recipes-devtools/go/go-1.11/0003-allow-GOTOOLDIR-to-be-overridden-in-the-environment.patch b/poky/meta/recipes-devtools/go/go-1.11/0003-allow-GOTOOLDIR-to-be-overridden-in-the-environment.patch
new file mode 100644
index 000000000..b6ca40ede
--- /dev/null
+++ b/poky/meta/recipes-devtools/go/go-1.11/0003-allow-GOTOOLDIR-to-be-overridden-in-the-environment.patch
@@ -0,0 +1,48 @@
+From 5c32c38bf19b24f0aadd78012d17ff5caa82151e Mon Sep 17 00:00:00 2001
+From: Matt Madison <matt@madison.systems>
+Date: Sat, 17 Feb 2018 05:24:20 -0800
+Subject: [PATCH] allow GOTOOLDIR to be overridden in the environment
+
+to allow for split host/target build roots
+
+Upstream-Status: Inappropriate [OE specific]
+
+Signed-off-by: Matt Madison <matt@madison.systems>
+
+---
+ src/cmd/dist/build.go | 4 +++-
+ src/cmd/go/internal/cfg/cfg.go | 7 +++++--
+ 2 files changed, 8 insertions(+), 3 deletions(-)
+
+Index: go/src/cmd/dist/build.go
+===================================================================
+--- go.orig/src/cmd/dist/build.go
++++ go/src/cmd/dist/build.go
+@@ -228,7 +228,9 @@ func xinit() {
+ workdir = xworkdir()
+ xatexit(rmworkdir)
+
+- tooldir = pathf("%s/pkg/tool/%s_%s", goroot, gohostos, gohostarch)
++ if tooldir = os.Getenv("GOTOOLDIR"); tooldir == "" {
++ tooldir = pathf("%s/pkg/tool/%s_%s", goroot, gohostos, gohostarch)
++ }
+ }
+
+ // compilerEnv returns a map from "goos/goarch" to the
+Index: go/src/cmd/go/internal/cfg/cfg.go
+===================================================================
+--- go.orig/src/cmd/go/internal/cfg/cfg.go
++++ go/src/cmd/go/internal/cfg/cfg.go
+@@ -116,7 +116,11 @@ func init() {
+ // variables. This matches the initialization of ToolDir in
+ // go/build, except for using GOROOT rather than
+ // runtime.GOROOT.
+- build.ToolDir = filepath.Join(GOROOT, "pkg/tool/"+runtime.GOOS+"_"+runtime.GOARCH)
++ if s := os.Getenv("GOTOOLDIR"); s != "" {
++ build.ToolDir = filepath.Clean(s)
++ } else {
++ build.ToolDir = filepath.Join(GOROOT, "pkg/tool/"+runtime.GOOS+"_"+runtime.GOARCH)
++ }
+ }
+ }
+
diff --git a/poky/meta/recipes-devtools/go/go-1.10/0004-ld-add-soname-to-shareable-objects.patch b/poky/meta/recipes-devtools/go/go-1.11/0004-ld-add-soname-to-shareable-objects.patch
index c23ca9429..004a33a02 100644
--- a/poky/meta/recipes-devtools/go/go-1.10/0004-ld-add-soname-to-shareable-objects.patch
+++ b/poky/meta/recipes-devtools/go/go-1.11/0004-ld-add-soname-to-shareable-objects.patch
@@ -1,7 +1,7 @@
-From 85252f0bd8743223eb778edbe9fb31dff17a23d8 Mon Sep 17 00:00:00 2001
+From 55eb8c95a89f32aec16b7764e78e8cf75169dc81 Mon Sep 17 00:00:00 2001
From: Matt Madison <matt@madison.systems>
Date: Sat, 17 Feb 2018 06:26:10 -0800
-Subject: [PATCH 4/9] ld: add soname to shareable objects
+Subject: [PATCH] ld: add soname to shareable objects
so that OE's shared library dependency handling
can find them.
@@ -9,15 +9,16 @@ can find them.
Upstream-Status: Inappropriate [OE specific]
Signed-off-by: Matt Madison <matt@madison.systems>
+
---
src/cmd/link/internal/ld/lib.go | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/src/cmd/link/internal/ld/lib.go b/src/cmd/link/internal/ld/lib.go
-index 6dcaf64122..11cbb8a8bb 100644
+index 220aab3..703925f 100644
--- a/src/cmd/link/internal/ld/lib.go
+++ b/src/cmd/link/internal/ld/lib.go
-@@ -1134,6 +1134,7 @@ func (ctxt *Link) hostlink() {
+@@ -1135,6 +1135,7 @@ func (ctxt *Link) hostlink() {
argv = append(argv, "-Wl,-z,relro")
}
argv = append(argv, "-shared")
@@ -25,7 +26,7 @@ index 6dcaf64122..11cbb8a8bb 100644
if ctxt.HeadType != objabi.Hwindows {
// Pass -z nodelete to mark the shared library as
// non-closeable: a dlclose will do nothing.
-@@ -1145,6 +1146,8 @@ func (ctxt *Link) hostlink() {
+@@ -1146,6 +1147,8 @@ func (ctxt *Link) hostlink() {
argv = append(argv, "-Wl,-z,relro")
}
argv = append(argv, "-shared")
@@ -34,7 +35,7 @@ index 6dcaf64122..11cbb8a8bb 100644
case BuildModePlugin:
if ctxt.HeadType == objabi.Hdarwin {
argv = append(argv, "-dynamiclib")
-@@ -1153,6 +1156,7 @@ func (ctxt *Link) hostlink() {
+@@ -1154,6 +1157,7 @@ func (ctxt *Link) hostlink() {
argv = append(argv, "-Wl,-z,relro")
}
argv = append(argv, "-shared")
@@ -42,6 +43,3 @@ index 6dcaf64122..11cbb8a8bb 100644
}
}
---
-2.14.1
-
diff --git a/poky/meta/recipes-devtools/go/go-1.10/0005-make.bash-override-CC-when-building-dist-and-go_boot.patch b/poky/meta/recipes-devtools/go/go-1.11/0005-make.bash-override-CC-when-building-dist-and-go_boot.patch
index 67a93939f..ace8de9ea 100644
--- a/poky/meta/recipes-devtools/go/go-1.10/0005-make.bash-override-CC-when-building-dist-and-go_boot.patch
+++ b/poky/meta/recipes-devtools/go/go-1.11/0005-make.bash-override-CC-when-building-dist-and-go_boot.patch
@@ -1,23 +1,23 @@
-From 16124d84648f4dfdfa4738c5660b5400b30bf9da Mon Sep 17 00:00:00 2001
+From 1bf15aa8fb773604b2524cfdab493fa4d8fa9285 Mon Sep 17 00:00:00 2001
From: Matt Madison <matt@madison.systems>
Date: Sat, 17 Feb 2018 06:32:45 -0800
-Subject: [PATCH 5/9] make.bash: override CC when building dist and
- go_bootstrap
+Subject: [PATCH] make.bash: override CC when building dist and go_bootstrap
for handling OE cross-canadian builds.
Upstream-Status: Inappropriate [OE specific]
Signed-off-by: Matt Madison <matt@madison.systems>
+
---
src/make.bash | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/make.bash b/src/make.bash
-index 93a5c43d11..3a63682bc4 100755
+index 78882d9..25943d0 100755
--- a/src/make.bash
+++ b/src/make.bash
-@@ -162,7 +162,7 @@ if [ "$GOROOT_BOOTSTRAP" = "$GOROOT" ]; then
+@@ -163,7 +163,7 @@ if [ "$GOROOT_BOOTSTRAP" = "$GOROOT" ]; then
exit 1
fi
rm -f cmd/dist/dist
@@ -26,7 +26,7 @@ index 93a5c43d11..3a63682bc4 100755
# -e doesn't propagate out of eval, so check success by hand.
eval $(./cmd/dist/dist env -p || echo FAIL=true)
-@@ -193,7 +193,7 @@ fi
+@@ -194,7 +194,7 @@ fi
# Run dist bootstrap to complete make.bash.
# Bootstrap installs a proper cmd/dist, built with the new toolchain.
# Throw ours, built with Go 1.4, away after bootstrap.
@@ -35,6 +35,3 @@ index 93a5c43d11..3a63682bc4 100755
rm -f ./cmd/dist/dist
# DO NOT ADD ANY NEW CODE HERE.
---
-2.14.1
-
diff --git a/poky/meta/recipes-devtools/go/go-1.10/0006-cmd-dist-separate-host-and-target-builds.patch b/poky/meta/recipes-devtools/go/go-1.11/0006-cmd-dist-separate-host-and-target-builds.patch
index 9fe699628..0c0d5da80 100644
--- a/poky/meta/recipes-devtools/go/go-1.10/0006-cmd-dist-separate-host-and-target-builds.patch
+++ b/poky/meta/recipes-devtools/go/go-1.11/0006-cmd-dist-separate-host-and-target-builds.patch
@@ -1,7 +1,7 @@
-From 2f07af34697c61decdcfa5b11434451fbcf37704 Mon Sep 17 00:00:00 2001
+From fe0fcaf43ef3aab81541dad2a71b46254dc4cf6a Mon Sep 17 00:00:00 2001
From: Matt Madison <matt@madison.systems>
Date: Sat, 17 Feb 2018 10:03:48 -0800
-Subject: [PATCH 6/9] cmd/dist: separate host and target builds
+Subject: [PATCH] cmd/dist: separate host and target builds
Change the dist tool to allow for OE-style cross-
and cross-canadian builds:
@@ -32,15 +32,16 @@ Upstream-Status: Inappropriate [OE specific]
Signed-off-by: Matt Madison <matt@madison.systems>
more dist cleanup
+
---
- src/cmd/dist/build.go | 149 +++++++++++++++++++++++++++++++++++++-------------
- 1 file changed, 111 insertions(+), 38 deletions(-)
+ src/cmd/dist/build.go | 153 ++++++++++++++++++++++++++++++------------
+ 1 file changed, 111 insertions(+), 42 deletions(-)
-diff --git a/src/cmd/dist/build.go b/src/cmd/dist/build.go
-index afc615b5c2..36262665b2 100644
---- a/src/cmd/dist/build.go
-+++ b/src/cmd/dist/build.go
-@@ -38,6 +38,7 @@ var (
+Index: go/src/cmd/dist/build.go
+===================================================================
+--- go.orig/src/cmd/dist/build.go
++++ go/src/cmd/dist/build.go
+@@ -39,6 +39,7 @@ var (
goldflags string
workdir string
tooldir string
@@ -48,7 +49,7 @@ index afc615b5c2..36262665b2 100644
oldgoos string
oldgoarch string
exe string
-@@ -49,6 +50,7 @@ var (
+@@ -50,6 +51,7 @@ var (
rebuildall bool
defaultclang bool
@@ -56,7 +57,7 @@ index afc615b5c2..36262665b2 100644
vflag int // verbosity
)
-@@ -223,6 +225,8 @@ func xinit() {
+@@ -231,6 +233,8 @@ func xinit() {
if tooldir = os.Getenv("GOTOOLDIR"); tooldir == "" {
tooldir = pathf("%s/pkg/tool/%s_%s", goroot, gohostos, gohostarch)
}
@@ -65,7 +66,7 @@ index afc615b5c2..36262665b2 100644
}
// compilerEnv returns a map from "goos/goarch" to the
-@@ -252,7 +256,6 @@ func compilerEnv(envName, def string) map[string]string {
+@@ -260,7 +264,6 @@ func compilerEnv(envName, def string) ma
if gohostos != goos || gohostarch != goarch {
m[gohostos+"/"+gohostarch] = m[""]
}
@@ -73,7 +74,7 @@ index afc615b5c2..36262665b2 100644
}
for _, goos := range okgoos {
-@@ -479,8 +482,10 @@ func setup() {
+@@ -487,8 +490,10 @@ func setup() {
// We keep it in pkg/, just like the object directory above.
if rebuildall {
xremoveall(tooldir)
@@ -84,7 +85,7 @@ index afc615b5c2..36262665b2 100644
// Remove tool binaries from before the tool/gohostos_gohostarch
xremoveall(pathf("%s/bin/tool", goroot))
-@@ -1130,11 +1135,29 @@ func cmdbootstrap() {
+@@ -1155,11 +1160,29 @@ func cmdbootstrap() {
var noBanner bool
var debug bool
@@ -115,7 +116,7 @@ index afc615b5c2..36262665b2 100644
if debug {
// cmd/buildid is used in debug mode.
-@@ -1182,8 +1205,13 @@ func cmdbootstrap() {
+@@ -1207,8 +1230,13 @@ func cmdbootstrap() {
xprintf("\n")
}
@@ -131,7 +132,7 @@ index afc615b5c2..36262665b2 100644
goBootstrap := pathf("%s/go_bootstrap", tooldir)
cmdGo := pathf("%s/go", gobin)
if debug {
-@@ -1212,7 +1240,11 @@ func cmdbootstrap() {
+@@ -1237,7 +1265,11 @@ func cmdbootstrap() {
xprintf("\n")
}
xprintf("Building Go toolchain2 using go_bootstrap and Go toolchain1.\n")
@@ -144,7 +145,7 @@ index afc615b5c2..36262665b2 100644
goInstall(goBootstrap, append([]string{"-i"}, toolchain...)...)
if debug {
run("", ShowOutput|CheckExit, pathf("%s/compile", tooldir), "-V=full")
-@@ -1249,45 +1281,82 @@ func cmdbootstrap() {
+@@ -1274,50 +1306,84 @@ func cmdbootstrap() {
}
checkNotStale(goBootstrap, append(toolchain, "runtime/internal/sys")...)
@@ -196,6 +197,7 @@ index afc615b5c2..36262665b2 100644
- timelog("build", "host toolchain")
- if vflag > 0 {
- xprintf("\n")
++
+ if goos == oldgoos && goarch == oldgoarch {
+ // Common case - not setting up for cross-compilation.
+ timelog("build", "toolchain")
@@ -231,16 +233,11 @@ index afc615b5c2..36262665b2 100644
goInstall(goBootstrap, "std", "cmd")
checkNotStale(goBootstrap, "std", "cmd")
checkNotStale(cmdGo, "std", "cmd")
--
+
- timelog("build", "target toolchain")
- if vflag > 0 {
- xprintf("\n")
-+ if debug {
-+ run("", ShowOutput|CheckExit, pathf("%s/compile", tooldir), "-V=full")
-+ run("", ShowOutput|CheckExit, pathf("%s/buildid", tooldir), pathf("%s/pkg/%s_%s/runtime/internal/sys.a", goroot, goos, goarch))
-+ checkNotStale(goBootstrap, append(toolchain, "runtime/internal/sys")...)
-+ copyfile(pathf("%s/compile4", tooldir), pathf("%s/compile", tooldir), writeExec)
- }
+- }
- goos = oldgoos
- goarch = oldgoarch
- os.Setenv("GOOS", goos)
@@ -248,18 +245,29 @@ index afc615b5c2..36262665b2 100644
- os.Setenv("CC", compilerEnvLookup(defaultcc, goos, goarch))
- xprintf("Building packages and commands for target, %s/%s.\n", goos, goarch)
- }
-- goInstall(goBootstrap, "std", "cmd")
-- checkNotStale(goBootstrap, "std", "cmd")
-- checkNotStale(cmdGo, "std", "cmd")
+- targets := []string{"std", "cmd"}
+- if goos == "js" && goarch == "wasm" {
+- // Skip the cmd tools for js/wasm. They're not usable.
+- targets = targets[:1]
+- }
+- goInstall(goBootstrap, targets...)
+- checkNotStale(goBootstrap, targets...)
+- checkNotStale(cmdGo, targets...)
- if debug {
- run("", ShowOutput|CheckExit, pathf("%s/compile", tooldir), "-V=full")
- run("", ShowOutput|CheckExit, pathf("%s/buildid", tooldir), pathf("%s/pkg/%s_%s/runtime/internal/sys.a", goroot, goos, goarch))
- checkNotStale(goBootstrap, append(toolchain, "runtime/internal/sys")...)
- copyfile(pathf("%s/compile4", tooldir), pathf("%s/compile", tooldir), writeExec)
++ if debug {
++ run("", ShowOutput|CheckExit, pathf("%s/compile", tooldir), "-V=full")
++ run("", ShowOutput|CheckExit, pathf("%s/buildid", tooldir), pathf("%s/pkg/%s_%s/runtime/internal/sys.a", goroot, goos, goarch))
++ checkNotStale(goBootstrap, append(toolchain, "runtime/internal/sys")...)
++ copyfile(pathf("%s/compile4", tooldir), pathf("%s/compile", tooldir), writeExec)
++ }
}
// Check that there are no new files in $GOROOT/bin other than
-@@ -1305,7 +1374,11 @@ func cmdbootstrap() {
+@@ -1335,7 +1401,11 @@ func cmdbootstrap() {
}
// Remove go_bootstrap now that we're done.
@@ -272,6 +280,3 @@ index afc615b5c2..36262665b2 100644
// Print trailing banner unless instructed otherwise.
if !noBanner {
---
-2.14.1
-
diff --git a/poky/meta/recipes-devtools/go/go-1.10/0007-cmd-go-make-GOROOT-precious-by-default.patch b/poky/meta/recipes-devtools/go/go-1.11/0007-cmd-go-make-GOROOT-precious-by-default.patch
index 72427627b..f317e48a3 100644
--- a/poky/meta/recipes-devtools/go/go-1.10/0007-cmd-go-make-GOROOT-precious-by-default.patch
+++ b/poky/meta/recipes-devtools/go/go-1.11/0007-cmd-go-make-GOROOT-precious-by-default.patch
@@ -1,7 +1,7 @@
-From f98aa287941417226a6e4f78759f8a5e19732cde Mon Sep 17 00:00:00 2001
+From 7cc60b3887be2d5674b9f5d422d022976cf205e5 Mon Sep 17 00:00:00 2001
From: Matt Madison <matt@madison.systems>
Date: Fri, 2 Mar 2018 06:00:20 -0800
-Subject: [PATCH 7/9] cmd/go: make GOROOT precious by default
+Subject: [PATCH] cmd/go: make GOROOT precious by default
The go build tool normally rebuilds whatever it detects is
stale. This can be a problem when GOROOT is intended to
@@ -17,17 +17,18 @@ environment variable.
Upstream-Status: Inappropriate [OE specific]
Signed-off-by: Matt Madison <matt@madison.systems>
+
---
src/cmd/go/internal/work/action.go | 3 +++
src/cmd/go/internal/work/build.go | 5 +++++
src/cmd/go/internal/work/exec.go | 25 +++++++++++++++++++++++++
3 files changed, 33 insertions(+)
-diff --git a/src/cmd/go/internal/work/action.go b/src/cmd/go/internal/work/action.go
-index 9f1f8f8a50..a382880474 100644
---- a/src/cmd/go/internal/work/action.go
-+++ b/src/cmd/go/internal/work/action.go
-@@ -563,6 +563,9 @@ func (b *Builder) addTransitiveLinkDeps(a, a1 *Action, shlib string) {
+Index: go/src/cmd/go/internal/work/action.go
+===================================================================
+--- go.orig/src/cmd/go/internal/work/action.go
++++ go/src/cmd/go/internal/work/action.go
+@@ -600,6 +600,9 @@ func (b *Builder) addTransitiveLinkDeps(
if p1 == nil || p1.Shlib == "" || haveShlib[filepath.Base(p1.Shlib)] {
continue
}
@@ -37,11 +38,11 @@ index 9f1f8f8a50..a382880474 100644
haveShlib[filepath.Base(p1.Shlib)] = true
// TODO(rsc): The use of ModeInstall here is suspect, but if we only do ModeBuild,
// we'll end up building an overall library or executable that depends at runtime
-diff --git a/src/cmd/go/internal/work/build.go b/src/cmd/go/internal/work/build.go
-index 57b7b00879..e2ba95420e 100644
---- a/src/cmd/go/internal/work/build.go
-+++ b/src/cmd/go/internal/work/build.go
-@@ -143,6 +143,7 @@ See also: go install, go get, go clean.
+Index: go/src/cmd/go/internal/work/build.go
+===================================================================
+--- go.orig/src/cmd/go/internal/work/build.go
++++ go/src/cmd/go/internal/work/build.go
+@@ -147,6 +147,7 @@ See also: go install, go get, go clean.
}
const concurrentGCBackendCompilationEnabledByDefault = true
@@ -49,7 +50,7 @@ index 57b7b00879..e2ba95420e 100644
func init() {
// break init cycle
-@@ -156,6 +157,10 @@ func init() {
+@@ -160,6 +161,10 @@ func init() {
AddBuildFlags(CmdBuild)
AddBuildFlags(CmdInstall)
@@ -60,12 +61,12 @@ index 57b7b00879..e2ba95420e 100644
}
// Note that flags consulted by other parts of the code
-diff --git a/src/cmd/go/internal/work/exec.go b/src/cmd/go/internal/work/exec.go
-index b0f6b45647..c8f266a8ad 100644
---- a/src/cmd/go/internal/work/exec.go
-+++ b/src/cmd/go/internal/work/exec.go
-@@ -371,6 +371,23 @@ func (b *Builder) build(a *Action) (err error) {
- return fmt.Errorf("missing or invalid binary-only package")
+Index: go/src/cmd/go/internal/work/exec.go
+===================================================================
+--- go.orig/src/cmd/go/internal/work/exec.go
++++ go/src/cmd/go/internal/work/exec.go
+@@ -440,6 +440,23 @@ func (b *Builder) build(a *Action) (err
+ return fmt.Errorf("module requires Go %s", p.Module.GoVersion)
}
+ if goRootPrecious && (a.Package.Standard || a.Package.Goroot) {
@@ -78,9 +79,9 @@ index b0f6b45647..c8f266a8ad 100644
+ a.Package.StaleReason = "GOROOT-resident package"
+ return nil
+ }
-+ if b.ComputeStaleOnly {
-+ a.Package.Stale = true
-+ a.Package.StaleReason = "missing or invalid GOROOT-resident package"
++ a.Package.Stale = true
++ a.Package.StaleReason = "missing or invalid GOROOT-resident package"
++ if b.IsCmdList {
+ return nil
+ }
+ }
@@ -88,7 +89,7 @@ index b0f6b45647..c8f266a8ad 100644
if err := b.Mkdir(a.Objdir); err != nil {
return err
}
-@@ -1097,6 +1114,14 @@ func BuildInstallFunc(b *Builder, a *Action) (err error) {
+@@ -1435,6 +1452,14 @@ func BuildInstallFunc(b *Builder, a *Act
return nil
}
@@ -103,6 +104,3 @@ index b0f6b45647..c8f266a8ad 100644
if err := b.Mkdir(a.Objdir); err != nil {
return err
}
---
-2.14.1
-
diff --git a/poky/meta/recipes-devtools/go/go-1.10/0009-ld-replace-glibc-dynamic-linker-with-musl.patch b/poky/meta/recipes-devtools/go/go-1.11/0009-ld-replace-glibc-dynamic-linker-with-musl.patch
index 06b00b3cc..fd67375c7 100644
--- a/poky/meta/recipes-devtools/go/go-1.10/0009-ld-replace-glibc-dynamic-linker-with-musl.patch
+++ b/poky/meta/recipes-devtools/go/go-1.11/0009-ld-replace-glibc-dynamic-linker-with-musl.patch
@@ -1,7 +1,7 @@
-From f575d85c4bd9b2903223d6c0dcc38a12775d582f Mon Sep 17 00:00:00 2001
+From 35ea4be34e94912b00837e0f7c7385f2e98fe769 Mon Sep 17 00:00:00 2001
From: Matt Madison <matt@madison.systems>
Date: Sun, 18 Feb 2018 08:24:05 -0800
-Subject: [PATCH 9/9] ld: replace glibc dynamic linker with musl
+Subject: [PATCH] ld: replace glibc dynamic linker with musl
Rework of patch by Khem Raj <raj.khem@gmail.com>
for go 1.10. Should be applied conditionally on
@@ -10,6 +10,7 @@ musl being the system C library.
Upstream-Status: Inappropriate [Real fix should be portable across libcs]
Signed-off-by: Matt Madison <matt@madison.systems>
+
---
src/cmd/link/internal/amd64/obj.go | 2 +-
src/cmd/link/internal/arm/obj.go | 2 +-
@@ -22,7 +23,7 @@ Signed-off-by: Matt Madison <matt@madison.systems>
8 files changed, 8 insertions(+), 8 deletions(-)
diff --git a/src/cmd/link/internal/amd64/obj.go b/src/cmd/link/internal/amd64/obj.go
-index 87e809166a..f522a63034 100644
+index 87e8091..f522a63 100644
--- a/src/cmd/link/internal/amd64/obj.go
+++ b/src/cmd/link/internal/amd64/obj.go
@@ -62,7 +62,7 @@ func Init() (*sys.Arch, ld.Arch) {
@@ -35,7 +36,7 @@ index 87e809166a..f522a63034 100644
Openbsddynld: "/usr/libexec/ld.so",
Netbsddynld: "/libexec/ld.elf_so",
diff --git a/src/cmd/link/internal/arm/obj.go b/src/cmd/link/internal/arm/obj.go
-index da16f92345..fd14940ede 100644
+index 788be68..1d2b90e 100644
--- a/src/cmd/link/internal/arm/obj.go
+++ b/src/cmd/link/internal/arm/obj.go
@@ -58,7 +58,7 @@ func Init() (*sys.Arch, ld.Arch) {
@@ -48,7 +49,7 @@ index da16f92345..fd14940ede 100644
Openbsddynld: "/usr/libexec/ld.so",
Netbsddynld: "/libexec/ld.elf_so",
diff --git a/src/cmd/link/internal/arm64/obj.go b/src/cmd/link/internal/arm64/obj.go
-index 6b386ad737..99863712cc 100644
+index 405d22d..b115659 100644
--- a/src/cmd/link/internal/arm64/obj.go
+++ b/src/cmd/link/internal/arm64/obj.go
@@ -57,7 +57,7 @@ func Init() (*sys.Arch, ld.Arch) {
@@ -61,7 +62,7 @@ index 6b386ad737..99863712cc 100644
Freebsddynld: "XXX",
Openbsddynld: "XXX",
diff --git a/src/cmd/link/internal/mips/obj.go b/src/cmd/link/internal/mips/obj.go
-index c5d3451c39..fd85e6368d 100644
+index c5d3451..fd85e63 100644
--- a/src/cmd/link/internal/mips/obj.go
+++ b/src/cmd/link/internal/mips/obj.go
@@ -60,7 +60,7 @@ func Init() (*sys.Arch, ld.Arch) {
@@ -74,7 +75,7 @@ index c5d3451c39..fd85e6368d 100644
Freebsddynld: "XXX",
Openbsddynld: "XXX",
diff --git a/src/cmd/link/internal/mips64/obj.go b/src/cmd/link/internal/mips64/obj.go
-index 83974e5b56..097224f6da 100644
+index 83974e5..097224f 100644
--- a/src/cmd/link/internal/mips64/obj.go
+++ b/src/cmd/link/internal/mips64/obj.go
@@ -59,7 +59,7 @@ func Init() (*sys.Arch, ld.Arch) {
@@ -87,7 +88,7 @@ index 83974e5b56..097224f6da 100644
Openbsddynld: "XXX",
Netbsddynld: "XXX",
diff --git a/src/cmd/link/internal/ppc64/obj.go b/src/cmd/link/internal/ppc64/obj.go
-index 273d9b42cb..a503abe8ea 100644
+index 273d9b4..a503abe 100644
--- a/src/cmd/link/internal/ppc64/obj.go
+++ b/src/cmd/link/internal/ppc64/obj.go
@@ -62,7 +62,7 @@ func Init() (*sys.Arch, ld.Arch) {
@@ -100,7 +101,7 @@ index 273d9b42cb..a503abe8ea 100644
Freebsddynld: "XXX",
Openbsddynld: "XXX",
diff --git a/src/cmd/link/internal/s390x/obj.go b/src/cmd/link/internal/s390x/obj.go
-index 9ac7eb8217..3825ff7abe 100644
+index 9ac7eb8..3825ff7 100644
--- a/src/cmd/link/internal/s390x/obj.go
+++ b/src/cmd/link/internal/s390x/obj.go
@@ -57,7 +57,7 @@ func Init() (*sys.Arch, ld.Arch) {
@@ -113,7 +114,7 @@ index 9ac7eb8217..3825ff7abe 100644
// not relevant for s390x
Freebsddynld: "XXX",
diff --git a/src/cmd/link/internal/x86/obj.go b/src/cmd/link/internal/x86/obj.go
-index 6a744dc04e..d81f392549 100644
+index 6a744dc..d81f392 100644
--- a/src/cmd/link/internal/x86/obj.go
+++ b/src/cmd/link/internal/x86/obj.go
@@ -58,7 +58,7 @@ func Init() (*sys.Arch, ld.Arch) {
@@ -125,6 +126,3 @@ index 6a744dc04e..d81f392549 100644
Freebsddynld: "/usr/libexec/ld-elf.so.1",
Openbsddynld: "/usr/libexec/ld.so",
Netbsddynld: "/usr/libexec/ld.elf_so",
---
-2.14.1
-
diff --git a/poky/meta/recipes-devtools/go/go-cross-canadian_1.10.bb b/poky/meta/recipes-devtools/go/go-cross-canadian_1.11.bb
index 7ac9449e4..7ac9449e4 100644
--- a/poky/meta/recipes-devtools/go/go-cross-canadian_1.10.bb
+++ b/poky/meta/recipes-devtools/go/go-cross-canadian_1.11.bb
diff --git a/poky/meta/recipes-devtools/go/go-cross.inc b/poky/meta/recipes-devtools/go/go-cross.inc
index 44f230b8b..6d9aa5c2d 100644
--- a/poky/meta/recipes-devtools/go/go-cross.inc
+++ b/poky/meta/recipes-devtools/go/go-cross.inc
@@ -1,9 +1,9 @@
inherit cross
-PROVIDES = "virtual/${TARGET_PREFIX}go"
+PROVIDES = "virtual/${TUNE_PKGARCH}-go"
DEPENDS = "go-native"
-PN = "go-cross-${TARGET_ARCH}"
+PN = "go-cross-${TUNE_PKGARCH}"
export GOHOSTOS = "${BUILD_GOOS}"
export GOHOSTARCH = "${BUILD_GOARCH}"
diff --git a/poky/meta/recipes-devtools/go/go-cross_1.10.bb b/poky/meta/recipes-devtools/go/go-cross_1.11.bb
index 80b5a03f6..80b5a03f6 100644
--- a/poky/meta/recipes-devtools/go/go-cross_1.10.bb
+++ b/poky/meta/recipes-devtools/go/go-cross_1.11.bb
diff --git a/poky/meta/recipes-devtools/go/go-crosssdk_1.10.bb b/poky/meta/recipes-devtools/go/go-crosssdk_1.11.bb
index 1857c8a57..1857c8a57 100644
--- a/poky/meta/recipes-devtools/go/go-crosssdk_1.10.bb
+++ b/poky/meta/recipes-devtools/go/go-crosssdk_1.11.bb
diff --git a/poky/meta/recipes-devtools/go/go-dep_0.4.1.bb b/poky/meta/recipes-devtools/go/go-dep_0.4.1.bb
deleted file mode 100644
index d82e63720..000000000
--- a/poky/meta/recipes-devtools/go/go-dep_0.4.1.bb
+++ /dev/null
@@ -1,20 +0,0 @@
-SUMMARY = "Dependency management tool for Golang"
-HOMEPAGE = "https://github.com/golang/dep"
-LICENSE = "BSD-3-Clause"
-LIC_FILES_CHKSUM = "file://src/${GO_IMPORT}/LICENSE;md5=1bad315647751fab0007812f70d42c0d"
-
-GO_IMPORT = "github.com/golang/dep"
-SRC_URI = "git://${GO_IMPORT} \
- file://0001-Add-support-for-mips-mips64.patch;patchdir=src/github.com/golang/dep \
- "
-
-# Points to 0.4.1 tag
-SRCREV = "37d9ea0ac16f0e0a05afc3b60e1ac8c364b6c329"
-
-inherit go
-
-GO_INSTALL = "${GO_IMPORT}/cmd/dep"
-
-RDEPENDS_${PN}-dev += "bash"
-
-BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-devtools/go/go-dep_0.5.0.bb b/poky/meta/recipes-devtools/go/go-dep_0.5.0.bb
new file mode 100644
index 000000000..cfc2186b3
--- /dev/null
+++ b/poky/meta/recipes-devtools/go/go-dep_0.5.0.bb
@@ -0,0 +1,35 @@
+SUMMARY = "Dependency management tool for Golang"
+HOMEPAGE = "https://github.com/golang/dep"
+LICENSE = "BSD-3-Clause"
+LIC_FILES_CHKSUM = "file://src/${GO_IMPORT}/LICENSE;md5=1bad315647751fab0007812f70d42c0d"
+
+GO_IMPORT = "github.com/golang/dep"
+SRC_URI = "git://${GO_IMPORT} \
+ file://0001-Add-support-for-mips-mips64.patch;patchdir=src/github.com/golang/dep \
+ "
+
+# Points to 0.5.0 tag
+SRCREV = "224a564abe296670b692fe08bb63a3e4c4ad7978"
+
+inherit go
+
+GO_INSTALL = "${GO_IMPORT}/cmd/dep"
+
+RDEPENDS_${PN}-dev += "bash"
+
+BBCLASSEXTEND = "native nativesdk"
+
+# for x86 ends with textrel in ${PN}
+# http://errors.yoctoproject.org/Errors/Details/185630/
+# ERROR: QA Issue: ELF binary '/work/i586-oe-linux/go-dep/0.4.1-r0/packages-split/go-dep/usr/bin/dep' has relocations in .text [textrel]
+INSANE_SKIP_${PN} += "textrel"
+
+# for aarch64 ends with textrel in ${PN}-ptest
+# http://errors.yoctoproject.org/Errors/Details/185632/
+# ERROR: QA Issue: ELF binary '/work/aarch64-oe-linux/go-dep/0.4.1-r0/packages-split/go-dep-ptest/usr/lib/go-dep/ptest/github.com/golang/dep/cmd/dep/dep.test' has relocations in .text [textrel]
+INSANE_SKIP_${PN}-ptest += "textrel"
+
+# For compiling ptest on mips and mips64, the current go-dep version fails with the go 1.11 toolchain.
+# error message: vet config not found
+PTEST_ENABLED_mips = "0"
+PTEST_ENABLED_mips64 = "0"
diff --git a/poky/meta/recipes-devtools/go/go-native.inc b/poky/meta/recipes-devtools/go/go-native.inc
index b76fb0825..207708745 100644
--- a/poky/meta/recipes-devtools/go/go-native.inc
+++ b/poky/meta/recipes-devtools/go/go-native.inc
@@ -1,7 +1,3 @@
-# Use immediate assingment here to get the original (/usr/lib)
-# instead of the one rewritten by native.bbclass.
-nonstaging_libdir := "${libdir}"
-
inherit native
SRC_URI_append = " https://dl.google.com/go/go1.4-bootstrap-20171003.tar.gz;name=bootstrap;subdir=go1.4"
@@ -20,7 +16,7 @@ do_configure() {
}
do_compile() {
- export GOROOT_FINAL="${nonstaging_libdir}/go"
+ export GOROOT_FINAL="${libdir_native}/go"
export GOROOT_BOOTSTRAP="${WORKDIR}/go1.4/go"
cd src
diff --git a/poky/meta/recipes-devtools/go/go-native_1.10.bb b/poky/meta/recipes-devtools/go/go-native_1.11.bb
index bbf3c0dd7..bbf3c0dd7 100644
--- a/poky/meta/recipes-devtools/go/go-native_1.10.bb
+++ b/poky/meta/recipes-devtools/go/go-native_1.11.bb
diff --git a/poky/meta/recipes-devtools/go/go-runtime.inc b/poky/meta/recipes-devtools/go/go-runtime.inc
index 0041e8afa..c219aa378 100644
--- a/poky/meta/recipes-devtools/go/go-runtime.inc
+++ b/poky/meta/recipes-devtools/go/go-runtime.inc
@@ -1,4 +1,4 @@
-DEPENDS = "virtual/${TARGET_PREFIX}go go-native"
+DEPENDS = "virtual/${TUNE_PKGARCH}-go go-native"
DEPENDS_class-nativesdk = "virtual/${TARGET_PREFIX}go-crosssdk"
PROVIDES = "virtual/${TARGET_PREFIX}go-runtime"
diff --git a/poky/meta/recipes-devtools/go/go-runtime_1.10.bb b/poky/meta/recipes-devtools/go/go-runtime_1.11.bb
index 43b68b4e4..43b68b4e4 100644
--- a/poky/meta/recipes-devtools/go/go-runtime_1.10.bb
+++ b/poky/meta/recipes-devtools/go/go-runtime_1.11.bb
diff --git a/poky/meta/recipes-devtools/go/go-target.inc b/poky/meta/recipes-devtools/go/go-target.inc
index 29a134467..c229ab2f8 100644
--- a/poky/meta/recipes-devtools/go/go-target.inc
+++ b/poky/meta/recipes-devtools/go/go-target.inc
@@ -1,4 +1,4 @@
-DEPENDS = "virtual/${TARGET_PREFIX}go go-native"
+DEPENDS = "virtual/${TUNE_PKGARCH}-go go-native"
DEPENDS_class-nativesdk = "virtual/${TARGET_PREFIX}go-crosssdk go-native"
export GOHOSTOS = "${BUILD_GOOS}"
diff --git a/poky/meta/recipes-devtools/go/go_1.10.bb b/poky/meta/recipes-devtools/go/go_1.11.bb
index c67e2cb05..c67e2cb05 100644
--- a/poky/meta/recipes-devtools/go/go_1.10.bb
+++ b/poky/meta/recipes-devtools/go/go_1.11.bb
diff --git a/poky/meta/recipes-devtools/go/go_1.9.bb b/poky/meta/recipes-devtools/go/go_1.9.bb
index ec5a314e7..7da7897cf 100644
--- a/poky/meta/recipes-devtools/go/go_1.9.bb
+++ b/poky/meta/recipes-devtools/go/go_1.9.bb
@@ -15,3 +15,10 @@ do_compile() {
./make.bash
cd ${B}
}
+
+# for aarch64 ends with textrel in ${PN}
+# http://errors.yoctoproject.org/Errors/Details/185634/
+# ERROR: QA Issue: ELF binary '/work/aarch64-oe-linux/go/1.9.7-r0/packages-split/go/usr/lib/go/bin/go' has relocations in .text
+# ELF binary '/work/aarch64-oe-linux/go/1.9.7-r0/packages-split/go/usr/lib/go/pkg/tool/linux_arm64/trace' has relocations in .text
+# ELF binary '/work/aarch64-oe-linux/go/1.9.7-r0/packages-split/go/usr/lib/go/pkg/tool/linux_arm64/pprof' has relocations in .text [textrel]
+INSANE_SKIP_${PN} += "textrel"
diff --git a/poky/meta/recipes-devtools/help2man/help2man-native_1.47.5.bb b/poky/meta/recipes-devtools/help2man/help2man-native_1.47.6.bb
index 2dd6d3882..794d308cb 100644
--- a/poky/meta/recipes-devtools/help2man/help2man-native_1.47.5.bb
+++ b/poky/meta/recipes-devtools/help2man/help2man-native_1.47.6.bb
@@ -6,8 +6,8 @@ DEPENDS = "autoconf-native automake-native"
SRC_URI = "${GNU_MIRROR}/${BPN}/${BPN}-${PV}.tar.xz"
-SRC_URI[md5sum] = "1c886063c9e0ab463906de804596aa2f"
-SRC_URI[sha256sum] = "7ca60b2519fdbe97f463fe2df66a6188d18b514bfd44127d985f0234ee2461b1"
+SRC_URI[md5sum] = "7424901e6eca8af372d2ad62be5cf659"
+SRC_URI[sha256sum] = "d91b0295b72a638e4a564f643e4e6d1928779131f628c00f356c13bf336de46f"
inherit autotools native
diff --git a/poky/meta/recipes-devtools/i2c-tools/i2c-tools_4.0.bb b/poky/meta/recipes-devtools/i2c-tools/i2c-tools_4.0.bb
index 01ac47f61..fe3247d82 100644
--- a/poky/meta/recipes-devtools/i2c-tools/i2c-tools_4.0.bb
+++ b/poky/meta/recipes-devtools/i2c-tools/i2c-tools_4.0.bb
@@ -14,6 +14,8 @@ SRC_URI = "${KERNELORG_MIRROR}/software/utils/i2c-tools/${BP}.tar.gz \
SRC_URI[md5sum] = "d92a288d70f306d3895e3a7e9c14c9aa"
SRC_URI[sha256sum] = "5b60daf6f011de0acb61de57dba62f2054bb39f19961d67e0c91610f071ca403"
+inherit update-alternatives
+
EXTRA_OEMAKE = "bindir=${bindir} sbindir=${sbindir} \
incdir=${includedir} libdir=${libdir} \
mandir=${mandir} \
@@ -34,3 +36,10 @@ RDEPENDS_${PN}-misc = "${PN} perl perl-module-posix \
perl-module-constant perl-module-file-basename \
perl-module-fcntl perl-module-strict perl-module-vars \
"
+
+ALTERNATIVE_PRIORITY = "100"
+ALTERNATIVE_${PN} = "i2cdetect i2cdump i2cget i2cset"
+ALTERNATIVE_LINK_NAME[i2cdetect] = "${sbindir}/i2cdetect"
+ALTERNATIVE_LINK_NAME[i2cdump] = "${sbindir}/i2cdump"
+ALTERNATIVE_LINK_NAME[i2cget] = "${sbindir}/i2cget"
+ALTERNATIVE_LINK_NAME[i2cset] = "${sbindir}/i2cset"
diff --git a/poky/meta/recipes-devtools/icecc-toolchain/icecc-toolchain/icecc-setup.sh b/poky/meta/recipes-devtools/icecc-toolchain/icecc-toolchain/icecc-setup.sh
index 048082657..25250b7c0 100644
--- a/poky/meta/recipes-devtools/icecc-toolchain/icecc-toolchain/icecc-setup.sh
+++ b/poky/meta/recipes-devtools/icecc-toolchain/icecc-toolchain/icecc-setup.sh
@@ -20,11 +20,6 @@
# SOFTWARE.
#
-# Setup environment
-for env_setup_script in `ls $1/environment-setup-*`; do
- . $env_setup_script
-done
-
# ICECC_PATH will have been found icecc-env.sh
if [ -z "$ICECC_PATH" ]; then
exit 0
diff --git a/poky/meta/recipes-devtools/icon-naming-utils/icon-naming-utils_0.8.90.bb b/poky/meta/recipes-devtools/icon-naming-utils/icon-naming-utils_0.8.90.bb
deleted file mode 100644
index 6b356b0d4..000000000
--- a/poky/meta/recipes-devtools/icon-naming-utils/icon-naming-utils_0.8.90.bb
+++ /dev/null
@@ -1,30 +0,0 @@
-SUMMARY = "Enables backwards compatibility with current desktop icon themes"
-DESCRIPTION = "A Perl script used for maintaining backwards \
-compatibility with current desktop icon themes, while migrating to the \
-names specified in the Icon Naming Specification. The Icon Naming \
-Utilities map the icon names used by the GNOME and KDE desktops to the \
-icon names proposed in the Icon Naming Specification, and generate the \
-icon files appropriate to the desktop environment you use. The Icon \
-Naming Specification provides a standard list of common icon contexts \
-and names that can be used to make icon themes work in a desktop \
-environment or application that implements the naming specification. "
-LICENSE = "GPLv2"
-DEPENDS = "libxml-simple-perl-native"
-PR = "r5"
-
-LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
-
-SRC_URI = "http://tango.freedesktop.org/releases/icon-naming-utils-${PV}.tar.gz"
-SRC_URI[md5sum] = "2c5c7a418e5eb3268f65e21993277fba"
-SRC_URI[sha256sum] = "044ab2199ed8c6a55ce36fd4fcd8b8021a5e21f5bab028c0a7cdcf52a5902e1c"
-
-inherit autotools allarch perlnative
-
-do_configure_append() {
- # Make sure we use our nativeperl wrapper.
- sed -i -e "1s:#!.*:#!/usr/bin/env nativeperl:" ${S}/icon-name-mapping.pl.in
-}
-
-FILES_${PN} += "${datadir}/dtds"
-
-BBCLASSEXTEND = "native"
diff --git a/poky/meta/recipes-devtools/json-c/json-c_0.13.bb b/poky/meta/recipes-devtools/json-c/json-c_0.13.1.bb
index 06319de32..5b10e6829 100644
--- a/poky/meta/recipes-devtools/json-c/json-c_0.13.bb
+++ b/poky/meta/recipes-devtools/json-c/json-c_0.13.1.bb
@@ -4,18 +4,17 @@ HOMEPAGE = "https://github.com/json-c/json-c/wiki"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://COPYING;md5=de54b60fbbc35123ba193fea8ee216f2"
-SRC_URI = "https://s3.amazonaws.com/json-c_releases/releases/${BP}.tar.gz \
- "
-SRC_URI[md5sum] = "11fc5d90c77375e5fc8401e8b9efbf21"
-SRC_URI[sha256sum] = "0316780be9ad16c42d7c26b015a784fd5df4b0909fef0aba51cfb13e492ac24d"
+SRC_URI = "https://s3.amazonaws.com/json-c_releases/releases/${BP}.tar.gz"
+SRC_URI[md5sum] = "04969ad59cc37bddd83741a08b98f350"
+SRC_URI[sha256sum] = "b87e608d4d3f7bfdd36ef78d56d53c74e66ab278d318b71e6002a369d36f4873"
UPSTREAM_CHECK_REGEX = "json-c-(?P<pver>\d+(\.\d+)+).tar"
# json-c releases page is fetching the list of releases in some weird XML format
# from https://s3.amazonaws.com/json-c_releases and processes it with javascript :-/
#UPSTREAM_CHECK_URI = "https://s3.amazonaws.com/json-c_releases/releases/index.html"
-RECIPE_UPSTREAM_VERSION = "0.13"
-RECIPE_UPSTREAM_DATE = "Dec 07, 2017"
-CHECK_DATE = "Jan 31, 2018"
+RECIPE_UPSTREAM_VERSION = "0.13.1"
+RECIPE_UPSTREAM_DATE = "Mar 04, 2018"
+CHECK_DATE = "May 02, 2018"
RPROVIDES_${PN} = "libjson"
diff --git a/poky/meta/recipes-devtools/libtool/libtool-cross_2.4.6.bb b/poky/meta/recipes-devtools/libtool/libtool-cross_2.4.6.bb
index b26831046..522bf3a0e 100644
--- a/poky/meta/recipes-devtools/libtool/libtool-cross_2.4.6.bb
+++ b/poky/meta/recipes-devtools/libtool/libtool-cross_2.4.6.bb
@@ -13,11 +13,19 @@ do_configure_prepend () {
rm -f ${STAGING_DATADIR}/aclocal/lt*.m4
}
+#
+# ccache may or may not be INHERITED, we remove references to it so the sstate
+# artefact works on a machine where its not present. libtool-cross isn't used
+# heavily so any performance issue is minor.
+# Find references to LTCC="ccache xxx-gcc" and CC="ccache xxx-gcc"
+#
do_install () {
install -d ${D}${bindir_crossscripts}/
install -m 0755 ${HOST_SYS}-libtool ${D}${bindir_crossscripts}/${HOST_SYS}-libtool
sed -e 's@^\(predep_objects="\).*@\1"@' \
-e 's@^\(postdep_objects="\).*@\1"@' \
+ -e 's@^CC="ccache.@CC="@' \
+ -e 's@^LTCC="ccache.@LTCC="@' \
-i ${D}${bindir_crossscripts}/${HOST_SYS}-libtool
sed -i '/^archive_cmds=/s/\-nostdlib//g' ${D}${bindir_crossscripts}/${HOST_SYS}-libtool
sed -i '/^archive_expsym_cmds=/s/\-nostdlib//g' ${D}${bindir_crossscripts}/${HOST_SYS}-libtool
diff --git a/poky/meta/recipes-devtools/libtool/libtool/multilib.patch b/poky/meta/recipes-devtools/libtool/libtool/multilib.patch
new file mode 100644
index 000000000..018f06665
--- /dev/null
+++ b/poky/meta/recipes-devtools/libtool/libtool/multilib.patch
@@ -0,0 +1,23 @@
+Without this patch /usr/bin/libtoolize is different for each multilib
+since their host-triplets are different, despite there being no difference in
+the functionality of libtoolize itself.
+
+Ugly, but just patch this out. This fixes issues where libtool and
+libXX-libtool couldn't be installed into the same system.
+
+Upstream-Status: Inappropriate
+RP 2018/7/30
+
+Index: libtool-2.4.6/libtoolize.in
+===================================================================
+--- libtool-2.4.6.orig/libtoolize.in
++++ libtool-2.4.6/libtoolize.in
+@@ -113,7 +113,7 @@ You must 'cd' to the top directory of yo
+ When reporting a bug, please describe a test case to reproduce it and
+ include the following information:
+
+- host-triplet: @host_triplet@
++ host-triplet <redacted>
+ version: $progname (GNU @PACKAGE@) @VERSION@
+ automake: `($AUTOMAKE --version) 2>/dev/null |$SED 1q`
+ autoconf: `($AUTOCONF --version) 2>/dev/null |$SED 1q`
diff --git a/poky/meta/recipes-devtools/libtool/libtool_2.4.6.bb b/poky/meta/recipes-devtools/libtool/libtool_2.4.6.bb
index b02620b4b..f5fdd00e5 100644
--- a/poky/meta/recipes-devtools/libtool/libtool_2.4.6.bb
+++ b/poky/meta/recipes-devtools/libtool/libtool_2.4.6.bb
@@ -1,5 +1,7 @@
require libtool-${PV}.inc
+SRC_URI += "file://multilib.patch"
+
RDEPENDS_${PN} += "bash"
#
@@ -26,3 +28,7 @@ do_install_append () {
-e "s@${HOSTTOOLS_DIR}/@@g" \
-i ${D}${bindir}/libtool
}
+
+inherit multilib_script
+
+MULTILIB_SCRIPTS = "${PN}:${bindir}/libtool"
diff --git a/poky/meta/recipes-devtools/llvm/llvm/0001-Disable-generating-a-native-llvm-config.patch b/poky/meta/recipes-devtools/llvm/llvm/0001-Disable-generating-a-native-llvm-config.patch
deleted file mode 100644
index 2809e4c59..000000000
--- a/poky/meta/recipes-devtools/llvm/llvm/0001-Disable-generating-a-native-llvm-config.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-From 7f7743ce233fcd735ec580c75270413493658aa6 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Thu, 19 Apr 2018 18:08:31 -0700
-Subject: [PATCH] Disable generating a native llvm-config
-
-OpenEmbedded already builds this as part of llvm-native
-
-Upstream-Status: Inappropriate [OE-Specific]
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- tools/llvm-config/CMakeLists.txt | 16 ----------------
- 1 file changed, 16 deletions(-)
-
-diff --git a/tools/llvm-config/CMakeLists.txt b/tools/llvm-config/CMakeLists.txt
-index 25f99cec978..c45e9b642a8 100644
---- a/tools/llvm-config/CMakeLists.txt
-+++ b/tools/llvm-config/CMakeLists.txt
-@@ -63,19 +63,3 @@ endif()
-
- # Add the dependency on the generation step.
- add_file_dependencies(${CMAKE_CURRENT_SOURCE_DIR}/llvm-config.cpp ${BUILDVARIABLES_OBJPATH})
--
--if(CMAKE_CROSSCOMPILING)
-- set(${project}_LLVM_CONFIG_EXE "${LLVM_NATIVE_BUILD}/bin/llvm-config")
-- set(${project}_LLVM_CONFIG_EXE ${${project}_LLVM_CONFIG_EXE} PARENT_SCOPE)
--
-- add_custom_command(OUTPUT "${${project}_LLVM_CONFIG_EXE}"
-- COMMAND ${CMAKE_COMMAND} --build . --target llvm-config --config $<CONFIGURATION>
-- DEPENDS ${LLVM_NATIVE_BUILD}/CMakeCache.txt
-- WORKING_DIRECTORY ${LLVM_NATIVE_BUILD}
-- COMMENT "Building native llvm-config..."
-- USES_TERMINAL)
-- add_custom_target(${project}NativeLLVMConfig DEPENDS ${${project}_LLVM_CONFIG_EXE})
-- add_dependencies(${project}NativeLLVMConfig CONFIGURE_LLVM_NATIVE)
--
-- add_dependencies(llvm-config ${project}NativeLLVMConfig)
--endif(CMAKE_CROSSCOMPILING)
---
-2.17.0
-
diff --git a/poky/meta/recipes-devtools/llvm/llvm/0002-llvm-allow-env-override-of-exe-path.patch b/poky/meta/recipes-devtools/llvm/llvm/0002-llvm-allow-env-override-of-exe-path.patch
index 21d2f81b5..6a9283323 100644
--- a/poky/meta/recipes-devtools/llvm/llvm/0002-llvm-allow-env-override-of-exe-path.patch
+++ b/poky/meta/recipes-devtools/llvm/llvm/0002-llvm-allow-env-override-of-exe-path.patch
@@ -1,4 +1,4 @@
-From 2f8ea767afdaa440c6368040630e1b3ea6a0977a Mon Sep 17 00:00:00 2001
+From aeccf16eaccdd80e4d5ecaa51673ce4b2bac1130 Mon Sep 17 00:00:00 2001
From: Martin Kelly <mkelly@xevo.com>
Date: Fri, 19 May 2017 00:22:57 -0700
Subject: [PATCH 2/2] llvm: allow env override of exe path
@@ -8,16 +8,19 @@ return the libraries, include directories, etc. from inside the sysroot rather
than from the native sysroot. Thus provide an env override for calling
llvm-config from a target sysroot.
+To let it work in multilib environment, we need to provide a knob to supply
+multilib dirname as well
+
+Upstream-Status: Inappropriate [OE-Specific]
+
Signed-off-by: Martin Kelly <mkelly@xevo.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
-Upstream-Status: Pending
-
- tools/llvm-config/llvm-config.cpp | 7 +++++++
- 1 file changed, 7 insertions(+)
+ tools/llvm-config/llvm-config.cpp | 17 ++++++++++++++++-
+ 1 file changed, 16 insertions(+), 1 deletion(-)
diff --git a/tools/llvm-config/llvm-config.cpp b/tools/llvm-config/llvm-config.cpp
-index 08b096afb05..d8d7742744e 100644
+index 08b096afb05..360cc5abf4e 100644
--- a/tools/llvm-config/llvm-config.cpp
+++ b/tools/llvm-config/llvm-config.cpp
@@ -225,6 +225,13 @@ Typical components:\n\
@@ -34,6 +37,36 @@ index 08b096afb05..d8d7742744e 100644
// This just needs to be some symbol in the binary; C++ doesn't
// allow taking the address of ::main however.
void *P = (void *)(intptr_t)GetExecutablePath;
+@@ -306,12 +313,20 @@ int main(int argc, char **argv) {
+ std::string ActivePrefix, ActiveBinDir, ActiveIncludeDir, ActiveLibDir,
+ ActiveCMakeDir;
+ std::string ActiveIncludeOption;
++ // Hack for Yocto: we need to override the multilib path when we are using
++ // llvm-config from within a target sysroot.
++ std::string Multilibdir = std::getenv("YOCTO_ALTERNATE_MULTILIB_NAME");
++ if (Multilibdir.empty()) {
++ Multilibdir = "/lib" LLVM_LIBDIR_SUFFIX;
++ }
++
+ if (IsInDevelopmentTree) {
+ ActiveIncludeDir = std::string(LLVM_SRC_ROOT) + "/include";
+ ActivePrefix = CurrentExecPrefix;
+
+ // CMake organizes the products differently than a normal prefix style
+ // layout.
++
+ switch (DevelopmentTreeLayout) {
+ case CMakeStyle:
+ ActiveBinDir = ActiveObjRoot + "/bin";
+@@ -336,7 +351,7 @@ int main(int argc, char **argv) {
+ SmallString<256> path(StringRef(LLVM_TOOLS_INSTALL_DIR));
+ sys::fs::make_absolute(ActivePrefix, path);
+ ActiveBinDir = path.str();
+- ActiveLibDir = ActivePrefix + "/lib" + LLVM_LIBDIR_SUFFIX;
++ ActiveLibDir = ActivePrefix + Multilibdir;
+ ActiveCMakeDir = ActiveLibDir + "/cmake/llvm";
+ ActiveIncludeOption = "-I" + ActiveIncludeDir;
+ }
--
-2.16.1
+2.18.0
diff --git a/poky/meta/recipes-devtools/llvm/llvm_git.bb b/poky/meta/recipes-devtools/llvm/llvm_git.bb
index cb3bba6fa..727876303 100644
--- a/poky/meta/recipes-devtools/llvm/llvm_git.bb
+++ b/poky/meta/recipes-devtools/llvm/llvm_git.bb
@@ -19,14 +19,13 @@ PROVIDES += "llvm${PV}"
LLVM_RELEASE = "${PV}"
LLVM_DIR = "llvm${LLVM_RELEASE}"
-SRCREV = "089d4c0c490687db6c75f1d074e99c4d42936a50"
+SRCREV = "5136df4d089a086b70d452160ad5451861269498"
PV = "6.0"
BRANCH = "release_60"
-PATCH_VERSION = "0"
+PATCH_VERSION = "1"
SRC_URI = "git://github.com/llvm-mirror/llvm.git;branch=${BRANCH};protocol=http \
file://0001-llvm-TargetLibraryInfo-Undefine-libc-functions-if-th.patch \
file://0002-llvm-allow-env-override-of-exe-path.patch \
- file://0001-Disable-generating-a-native-llvm-config.patch \
"
UPSTREAM_CHECK_COMMITS = "1"
S = "${WORKDIR}/git"
@@ -45,14 +44,13 @@ def get_llvm_arch(bb, d, arch_var):
else:
raise bb.parse.SkipRecipe("Cannot map '%s' to a supported LLVM architecture" % a)
-def get_llvm_target_arch(bb, d):
- return get_llvm_arch(bb, d, 'TARGET_ARCH')
+def get_llvm_host_arch(bb, d):
+ return get_llvm_arch(bb, d, 'HOST_ARCH')
+
#
# Default to build all OE-Core supported target arches (user overridable).
#
-LLVM_TARGETS ?= "${@get_llvm_target_arch(bb, d)}"
-LLVM_TARGETS_prepend_x86 = "AMDGPU;"
-LLVM_TARGETS_prepend_x86-64 = "AMDGPU;"
+LLVM_TARGETS ?= "AMDGPU;${@get_llvm_host_arch(bb, d)}"
ARM_INSTRUCTION_SET_armv5 = "arm"
ARM_INSTRUCTION_SET_armv4t = "arm"
@@ -65,17 +63,19 @@ EXTRA_OECMAKE += "-DLLVM_ENABLE_ASSERTIONS=OFF \
-DLLVM_ENABLE_FFI=ON \
-DFFI_INCLUDE_DIR=$(pkg-config --variable=includedir libffi) \
-DLLVM_OPTIMIZED_TABLEGEN=ON \
- -DLLVM_TARGETS_TO_BUILD="${LLVM_TARGETS}" \
+ -DLLVM_TARGETS_TO_BUILD='${LLVM_TARGETS}' \
-G Ninja"
EXTRA_OECMAKE_append_class-target = "\
-DCMAKE_CROSSCOMPILING:BOOL=ON \
-DLLVM_TABLEGEN=${STAGING_BINDIR_NATIVE}/llvm-tblgen${PV} \
+ -DLLVM_CONFIG_PATH=${STAGING_BINDIR_NATIVE}/llvm-config${PV} \
"
EXTRA_OECMAKE_append_class-nativesdk = "\
-DCMAKE_CROSSCOMPILING:BOOL=ON \
-DLLVM_TABLEGEN=${STAGING_BINDIR_NATIVE}/llvm-tblgen${PV} \
+ -DLLVM_CONFIG_PATH=${STAGING_BINDIR_NATIVE}/llvm-config${PV} \
"
do_configure_prepend() {
diff --git a/poky/meta/recipes-devtools/meson/meson_0.44.1.bb b/poky/meta/recipes-devtools/meson/meson.inc
index 6a81dab26..b7fb3e698 100644
--- a/poky/meta/recipes-devtools/meson/meson_0.44.1.bb
+++ b/poky/meta/recipes-devtools/meson/meson.inc
@@ -4,18 +4,25 @@ SUMMARY = "A high performance build system"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://COPYING;md5=3b83ef96387f14655fc854ddc3c6bd57"
-SRC_URI = "https://github.com/mesonbuild/meson/releases/download/${PV}/${BP}.tar.gz \
+SRC_URI = "https://github.com/mesonbuild/meson/releases/download/${PV}/meson-${PV}.tar.gz \
file://0001-gtkdoc-fix-issues-that-arise-when-cross-compiling.patch \
file://0002-gobject-introspection-determine-g-ir-scanner-and-g-i.patch \
file://0001-Linker-rules-move-cross_args-in-front-of-output_args.patch \
file://0003-native_bindir.patch \
+ file://gi-flags.patch \
+ file://gtkdoc-flags.patch \
"
-SRC_URI[md5sum] = "82b1198bf714b5a4da84bfe8376c79cc"
-SRC_URI[sha256sum] = "2ea1a721574adb23160b6481191bcc1173f374e02b0ff3bb0ae85d988d97e4fa"
+SRC_URI[sha256sum] = "92d8afd921751261e36151643464efd3394162f69efbe8cd53e0a66b1cf395eb"
+SRC_URI[md5sum] = "31bda3519d8c0eb3438267268a78085e"
+
+SRC_URI_append_class-native = "file://0002-Make-CPU-family-warnings-fatal.patch \
+ file://0001-Support-building-allarch-recipes-again.patch \
+ "
+
UPSTREAM_CHECK_URI = "https://github.com/mesonbuild/meson/releases"
inherit setuptools3
RDEPENDS_${PN} = "ninja python3-core python3-modules"
-BBCLASSEXTEND = "native"
+FILES_${PN} += "${datadir}/polkit-1"
diff --git a/poky/meta/recipes-devtools/meson/meson/0001-Support-building-allarch-recipes-again.patch b/poky/meta/recipes-devtools/meson/meson/0001-Support-building-allarch-recipes-again.patch
new file mode 100644
index 000000000..f6dd23091
--- /dev/null
+++ b/poky/meta/recipes-devtools/meson/meson/0001-Support-building-allarch-recipes-again.patch
@@ -0,0 +1,28 @@
+From d80d02a3ca6e21fa3d055c88c05234c2eb4db128 Mon Sep 17 00:00:00 2001
+From: Peter Kjellerstedt <pkj@axis.com>
+Date: Thu, 26 Jul 2018 16:32:49 +0200
+Subject: [PATCH] Support building allarch recipes again
+
+This registers "allarch" as a known CPU family.
+
+Upstream-Status: Inappropriate [OE specific]
+Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
+---
+ mesonbuild/environment.py | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/mesonbuild/environment.py b/mesonbuild/environment.py
+index a0580a2..712b1e8 100644
+--- a/mesonbuild/environment.py
++++ b/mesonbuild/environment.py
+@@ -73,6 +73,7 @@ from .compilers import (
+ build_filename = 'meson.build'
+
+ known_cpu_families = (
++ 'allarch',
+ 'aarch64',
+ 'arm',
+ 'e2k',
+--
+2.12.0
+
diff --git a/poky/meta/recipes-devtools/meson/meson/0001-gtkdoc-fix-issues-that-arise-when-cross-compiling.patch b/poky/meta/recipes-devtools/meson/meson/0001-gtkdoc-fix-issues-that-arise-when-cross-compiling.patch
index 1912e9435..7ffd6c54c 100644
--- a/poky/meta/recipes-devtools/meson/meson/0001-gtkdoc-fix-issues-that-arise-when-cross-compiling.patch
+++ b/poky/meta/recipes-devtools/meson/meson/0001-gtkdoc-fix-issues-that-arise-when-cross-compiling.patch
@@ -1,7 +1,7 @@
-From c5692cac9c555664281377a82bf8b1e46934f437 Mon Sep 17 00:00:00 2001
+From 3ac4e58c5494bd7e603a325b5b5c2b8075849fee Mon Sep 17 00:00:00 2001
From: Alexander Kanavin <alex.kanavin@gmail.com>
Date: Fri, 4 Aug 2017 16:16:41 +0300
-Subject: [PATCH 1/3] gtkdoc: fix issues that arise when cross-compiling
+Subject: [PATCH] gtkdoc: fix issues that arise when cross-compiling
Specifically:
1) Make it possible to specify a wrapper for executing binaries
@@ -21,10 +21,10 @@ Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
2 files changed, 22 insertions(+), 5 deletions(-)
diff --git a/mesonbuild/modules/gnome.py b/mesonbuild/modules/gnome.py
-index 56765a5..4f7fe30 100644
+index cb69641..727eb6a 100644
--- a/mesonbuild/modules/gnome.py
+++ b/mesonbuild/modules/gnome.py
-@@ -769,6 +769,10 @@ This will become a hard error in the future.''')
+@@ -792,6 +792,10 @@ This will become a hard error in the future.''')
'--mode=' + mode]
if namespace:
args.append('--namespace=' + namespace)
@@ -35,53 +35,28 @@ index 56765a5..4f7fe30 100644
args += self._unpack_args('--htmlargs=', 'html_args', kwargs)
args += self._unpack_args('--scanargs=', 'scan_args', kwargs)
args += self._unpack_args('--scanobjsargs=', 'scanobjs_args', kwargs)
-@@ -796,14 +800,22 @@ This will become a hard error in the future.''')
- raise MesonException(
- 'Gir include dirs should be include_directories().')
- cflags.update(get_include_args(inc_dirs))
-+
-+ cross_c_args = " ".join(state.environment.cross_info.config["properties"].get('c_args', ""))
-+ cross_link_args = " ".join(state.environment.cross_info.config["properties"].get('c_link_args', ""))
-+
- if cflags:
-- args += ['--cflags=%s' % ' '.join(cflags)]
-+ args += ['--cflags=%s %s' % (cross_c_args,' '.join(cflags))]
- if ldflags:
-- args += ['--ldflags=%s' % ' '.join(ldflags)]
-+ args += ['--ldflags=%s %s' % (cross_link_args, ' '.join(ldflags))]
- compiler = state.environment.coredata.compilers.get('c')
-- if compiler:
-+ cross_compiler = state.environment.coredata.cross_compilers.get('c')
-+ if compiler and not state.environment.is_cross_build():
- args += ['--cc=%s' % ' '.join(compiler.get_exelist())]
- args += ['--ld=%s' % ' '.join(compiler.get_linker_exelist())]
-+ elif cross_compiler and state.environment.is_cross_build():
-+ args += ['--cc=%s' % ' '.join(cross_compiler.get_exelist())]
-+ args += ['--ld=%s' % ' '.join(cross_compiler.get_linker_exelist())]
-
- return args
-
diff --git a/mesonbuild/scripts/gtkdochelper.py b/mesonbuild/scripts/gtkdochelper.py
-index 4406b28..b846827 100644
+index 948dc5a..9c5bd19 100644
--- a/mesonbuild/scripts/gtkdochelper.py
+++ b/mesonbuild/scripts/gtkdochelper.py
-@@ -44,13 +44,14 @@ parser.add_argument('--ignore-headers', dest='ignore_headers', default='')
+@@ -45,6 +45,7 @@ parser.add_argument('--ignore-headers', dest='ignore_headers', default='')
parser.add_argument('--namespace', dest='namespace', default='')
parser.add_argument('--mode', dest='mode', default='')
parser.add_argument('--installdir', dest='install_dir')
+parser.add_argument('--gtkdoc-exe-wrapper', dest='gtkdoc_exe_wrapper')
- def gtkdoc_run_check(cmd, cwd):
- # Put stderr into stdout since we want to print it out anyway.
+ def gtkdoc_run_check(cmd, cwd, library_paths=None):
+ if library_paths is None:
+@@ -64,7 +65,7 @@ def gtkdoc_run_check(cmd, cwd, library_paths=None):
# This preserves the order of messages.
- p, out = Popen_safe(cmd, cwd=cwd, stderr=subprocess.STDOUT)[0:2]
+ p, out = Popen_safe(cmd, cwd=cwd, env=env, stderr=subprocess.STDOUT)[0:2]
if p.returncode != 0:
- err_msg = ["{!r} failed with status {:d}".format(cmd[0], p.returncode)]
+ err_msg = ["{!r} failed with status {:d}".format(cmd, p.returncode)]
if out:
err_msg.append(out)
raise MesonException('\n'.join(err_msg))
-@@ -58,7 +59,7 @@ def gtkdoc_run_check(cmd, cwd):
+@@ -74,7 +75,7 @@ def gtkdoc_run_check(cmd, cwd, library_paths=None):
def build_gtkdoc(source_root, build_root, doc_subdir, src_subdirs,
main_file, module,
html_args, scan_args, fixxref_args, mkdb_args,
@@ -90,7 +65,7 @@ index 4406b28..b846827 100644
html_assets, content_files, ignore_headers, namespace,
expand_content_files, mode):
print("Building documentation for %s" % module)
-@@ -111,6 +112,9 @@ def build_gtkdoc(source_root, build_root, doc_subdir, src_subdirs,
+@@ -135,6 +136,9 @@ def build_gtkdoc(source_root, build_root, doc_subdir, src_subdirs,
if gobject_typesfile:
scanobjs_cmd = ['gtkdoc-scangobj'] + scanobjs_args + ['--types=' + gobject_typesfile,
'--module=' + module,
@@ -99,8 +74,8 @@ index 4406b28..b846827 100644
+ '--ld=' + ld,
'--cflags=' + cflags,
'--ldflags=' + ldflags,
- '--ld=' + ld]
-@@ -207,6 +211,7 @@ def run(args):
+ '--cc=' + cc,
+@@ -238,6 +242,7 @@ def run(args):
mkdbargs,
options.gobject_typesfile,
scanobjsargs,
@@ -108,6 +83,3 @@ index 4406b28..b846827 100644
options.ld,
options.cc,
options.ldflags,
---
-2.15.0
-
diff --git a/poky/meta/recipes-devtools/meson/meson/0002-Make-CPU-family-warnings-fatal.patch b/poky/meta/recipes-devtools/meson/meson/0002-Make-CPU-family-warnings-fatal.patch
new file mode 100644
index 000000000..ca56a6a8b
--- /dev/null
+++ b/poky/meta/recipes-devtools/meson/meson/0002-Make-CPU-family-warnings-fatal.patch
@@ -0,0 +1,36 @@
+From 2e8553fc01e62ebc4faa240bf20984a8a0ac7387 Mon Sep 17 00:00:00 2001
+From: Ross Burton <ross.burton@intel.com>
+Date: Tue, 3 Jul 2018 13:59:09 +0100
+Subject: [PATCH] Make CPU family warnings fatal
+
+Upstream-Status: Inappropriate [OE specific]
+Signed-off-by: Ross Burton <ross.burton@intel.com>
+
+---
+ mesonbuild/environment.py | 6 ++----
+ 1 file changed, 2 insertions(+), 4 deletions(-)
+
+diff --git a/mesonbuild/environment.py b/mesonbuild/environment.py
+index d29a77f..267acf9 100644
+--- a/mesonbuild/environment.py
++++ b/mesonbuild/environment.py
+@@ -239,9 +239,7 @@ def detect_cpu_family(compilers):
+ return 'x86_64'
+
+ if trial not in known_cpu_families:
+- mlog.warning('Unknown CPU family {!r}, please report this at '
+- 'https://github.com/mesonbuild/meson/issues/new with the'
+- 'output of `uname -a` and `cat /proc/cpuinfo`'.format(trial))
++ raise EnvironmentException('Unknown CPU family %s, see https://wiki.yoctoproject.org/wiki/Meson/UnknownCPU for directions.' % trial)
+
+ return trial
+
+@@ -1014,7 +1012,7 @@ class CrossBuildInfo:
+ raise EnvironmentException('Malformed value in cross file variable %s.' % entry)
+
+ if entry == 'cpu_family' and res not in known_cpu_families:
+- mlog.warning('Unknown CPU family %s, please report this at https://github.com/mesonbuild/meson/issues/new' % value)
++ raise EnvironmentException('Unknown CPU family %s, see https://wiki.yoctoproject.org/wiki/Meson/UnknownCPU for directions.' % value)
+
+ if self.ok_type(res):
+ self.config[s][entry] = res
diff --git a/poky/meta/recipes-devtools/meson/meson/0002-gobject-introspection-determine-g-ir-scanner-and-g-i.patch b/poky/meta/recipes-devtools/meson/meson/0002-gobject-introspection-determine-g-ir-scanner-and-g-i.patch
index ded42d14f..f32267d0c 100644
--- a/poky/meta/recipes-devtools/meson/meson/0002-gobject-introspection-determine-g-ir-scanner-and-g-i.patch
+++ b/poky/meta/recipes-devtools/meson/meson/0002-gobject-introspection-determine-g-ir-scanner-and-g-i.patch
@@ -1,7 +1,7 @@
-From 972667e0d789a6969a5d79249404f3539f891810 Mon Sep 17 00:00:00 2001
+From 0b860cb8a22ae876b6088939dbabca216bc29431 Mon Sep 17 00:00:00 2001
From: Alexander Kanavin <alex.kanavin@gmail.com>
Date: Fri, 4 Aug 2017 16:18:47 +0300
-Subject: [PATCH 1/2] gobject-introspection: determine g-ir-scanner and
+Subject: [PATCH] gobject-introspection: determine g-ir-scanner and
g-ir-compiler paths from pkgconfig
Do not hardcode the name of those binaries; gobject-introspection
@@ -16,19 +16,19 @@ Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/mesonbuild/modules/gnome.py b/mesonbuild/modules/gnome.py
-index 4f7fe30..9610cf6 100644
+index b29bab9..dc4c401 100644
--- a/mesonbuild/modules/gnome.py
+++ b/mesonbuild/modules/gnome.py
-@@ -390,8 +390,6 @@ class GnomeModule(ExtensionModule):
+@@ -393,8 +393,6 @@ class GnomeModule(ExtensionModule):
raise MesonException('Gir takes one argument')
if kwargs.get('install_dir'):
raise MesonException('install_dir is not supported with generate_gir(), see "install_dir_gir" and "install_dir_typelib"')
-- giscanner = find_program('g-ir-scanner', 'Gir')
-- gicompiler = find_program('g-ir-compiler', 'Gir')
+- giscanner = self.interpreter.find_program_impl('g-ir-scanner')
+- gicompiler = self.interpreter.find_program_impl('g-ir-compiler')
girtarget = args[0]
while hasattr(girtarget, 'held_object'):
girtarget = girtarget.held_object
-@@ -402,6 +400,8 @@ class GnomeModule(ExtensionModule):
+@@ -405,6 +403,8 @@ class GnomeModule(ExtensionModule):
self.gir_dep = PkgConfigDependency('gobject-introspection-1.0',
state.environment,
{'native': True})
@@ -37,6 +37,3 @@ index 4f7fe30..9610cf6 100644
pkgargs = self.gir_dep.get_compile_args()
except Exception:
raise MesonException('gobject-introspection dependency was not found, gir cannot be generated.')
---
-2.15.0
-
diff --git a/poky/meta/recipes-devtools/meson/meson/0003-native_bindir.patch b/poky/meta/recipes-devtools/meson/meson/0003-native_bindir.patch
index af5e6a190..da477454c 100644
--- a/poky/meta/recipes-devtools/meson/meson/0003-native_bindir.patch
+++ b/poky/meta/recipes-devtools/meson/meson/0003-native_bindir.patch
@@ -1,7 +1,7 @@
-From ffa72eac56558aa4171dd70ac1e9c27a07338fa2 Mon Sep 17 00:00:00 2001
+From e762d85c823adfefc27ba6128c7b997aa50166ce Mon Sep 17 00:00:00 2001
From: Ricardo Ribalda Delgado <ricardo.ribalda@gmail.com>
Date: Wed, 15 Nov 2017 15:05:01 +0100
-Subject: [PATCH 4/4] native_bindir
+Subject: [PATCH] native_bindir
Some libraries, like QT, have pre-processors that convert their input
files into something that the cross-compiler can process. We find the
@@ -17,15 +17,15 @@ Upstream-Status: Inappropriate [OE specific]
Signed-off-by: Ricardo Ribalda Delgado <ricardo.ribalda@gmail.com>
---
- mesonbuild/dependencies/base.py | 16 ++++++++++------
+ mesonbuild/dependencies/base.py | 19 +++++++++++--------
mesonbuild/dependencies/ui.py | 6 +++---
- 2 files changed, 13 insertions(+), 9 deletions(-)
+ 2 files changed, 14 insertions(+), 11 deletions(-)
diff --git a/mesonbuild/dependencies/base.py b/mesonbuild/dependencies/base.py
-index bf79bc5..c9fd08c 100644
+index 6d3678f..90fdb80 100644
--- a/mesonbuild/dependencies/base.py
+++ b/mesonbuild/dependencies/base.py
-@@ -131,7 +131,7 @@ class Dependency:
+@@ -146,7 +146,7 @@ class Dependency:
def need_threads(self):
return False
@@ -34,7 +34,7 @@ index bf79bc5..c9fd08c 100644
raise DependencyException('{!r} is not a pkgconfig dependency'.format(self.name))
def get_configtool_variable(self, variable_name):
-@@ -150,7 +150,7 @@ class InternalDependency(Dependency):
+@@ -183,7 +183,7 @@ class InternalDependency(Dependency):
self.sources = sources
self.ext_deps = ext_deps
@@ -43,33 +43,47 @@ index bf79bc5..c9fd08c 100644
raise DependencyException('Method "get_pkgconfig_variable()" is '
'invalid for an internal dependency')
-@@ -425,10 +425,14 @@ class PkgConfigDependency(ExternalDependency):
+@@ -523,15 +523,18 @@ class PkgConfigDependency(ExternalDependency):
return s.format(self.__class__.__name__, self.name, self.is_found,
self.version_reqs)
+- def _call_pkgbin_real(self, args, env):
+- cmd = self.pkgbin.get_command() + args
++ def _call_pkgbin_real(self, args, env, use_native=False):
++ if use_native:
++ cmd = self.pkgbin.get_command() + "-native" + args
++ else:
++ cmd = self.pkgbin.get_command() + args
+ p, out = Popen_safe(cmd, env=env)[0:2]
+ rc, out = p.returncode, out.strip()
+ call = ' '.join(cmd)
+ mlog.debug("Called `{}` -> {}\n{}".format(call, rc, out))
+ return rc, out
+
- def _call_pkgbin(self, args, env=None):
+ def _call_pkgbin(self, args, env=None, use_native=False):
- if not env:
+ if env is None:
+ fenv = env
env = os.environ
-- p, out = Popen_safe([self.pkgbin] + args, env=env)[0:2]
-+ if use_native:
-+ pkgbin = [self.pkgbin + "-native"]
-+ else:
-+ pkgbin = [self.pkgbin]
-+ p, out = Popen_safe(pkgbin + args, env=env)[0:2]
- return p.returncode, out.strip()
+@@ -540,7 +543,7 @@ class PkgConfigDependency(ExternalDependency):
+ targs = tuple(args)
+ cache = PkgConfigDependency.pkgbin_cache
+ if (self.pkgbin, targs, fenv) not in cache:
+- cache[(self.pkgbin, targs, fenv)] = self._call_pkgbin_real(args, env)
++ cache[(self.pkgbin, targs, fenv)] = self._call_pkgbin_real(args, env, use_native)
+ return cache[(self.pkgbin, targs, fenv)]
def _convert_mingw_paths(self, args):
-@@ -522,7 +526,7 @@ class PkgConfigDependency(ExternalDependency):
- # linkers such as MSVC, so prepend them.
- self.link_args = ['-L' + lp for lp in libpaths] + self.link_args
+@@ -718,7 +721,7 @@ class PkgConfigDependency(ExternalDependency):
+ (self.name, out_raw))
+ self.link_args, self.raw_link_args = self._search_libs(out, out_raw)
- def get_pkgconfig_variable(self, variable_name, kwargs):
+ def get_pkgconfig_variable(self, variable_name, kwargs, use_native=False):
options = ['--variable=' + variable_name, self.name]
if 'define_variable' in kwargs:
-@@ -535,7 +539,7 @@ class PkgConfigDependency(ExternalDependency):
+@@ -731,7 +734,7 @@ class PkgConfigDependency(ExternalDependency):
options = ['--define-variable=' + '='.join(definition)] + options
@@ -79,10 +93,10 @@ index bf79bc5..c9fd08c 100644
if ret != 0:
if self.required:
diff --git a/mesonbuild/dependencies/ui.py b/mesonbuild/dependencies/ui.py
-index 1db518c..4ed1d04 100644
+index 197d22c..c683d21 100644
--- a/mesonbuild/dependencies/ui.py
+++ b/mesonbuild/dependencies/ui.py
-@@ -239,7 +239,7 @@ class QtBaseDependency(ExternalDependency):
+@@ -285,7 +285,7 @@ class QtBaseDependency(ExternalDependency):
self.bindir = self.get_pkgconfig_host_bins(core)
if not self.bindir:
# If exec_prefix is not defined, the pkg-config file is broken
@@ -91,7 +105,7 @@ index 1db518c..4ed1d04 100644
if prefix:
self.bindir = os.path.join(prefix, 'bin')
-@@ -359,7 +359,7 @@ class Qt4Dependency(QtBaseDependency):
+@@ -427,7 +427,7 @@ class Qt4Dependency(QtBaseDependency):
applications = ['moc', 'uic', 'rcc', 'lupdate', 'lrelease']
for application in applications:
try:
@@ -100,15 +114,12 @@ index 1db518c..4ed1d04 100644
except MesonException:
pass
-@@ -369,7 +369,7 @@ class Qt5Dependency(QtBaseDependency):
+@@ -437,7 +437,7 @@ class Qt5Dependency(QtBaseDependency):
QtBaseDependency.__init__(self, 'qt5', env, kwargs)
def get_pkgconfig_host_bins(self, core):
- return core.get_pkgconfig_variable('host_bins', {})
+ return core.get_pkgconfig_variable('host_bins', {}, use_native=True)
-
- # There are three different ways of depending on SDL2:
---
-2.15.1
-
+ def get_private_includes(self, mod_inc_dir, module):
+ return _qt_get_private_includes(mod_inc_dir, module, self.version)
diff --git a/poky/meta/recipes-devtools/meson/meson/gi-flags.patch b/poky/meta/recipes-devtools/meson/meson/gi-flags.patch
new file mode 100644
index 000000000..9a4c29619
--- /dev/null
+++ b/poky/meta/recipes-devtools/meson/meson/gi-flags.patch
@@ -0,0 +1,35 @@
+Pass the correct cflags/ldflags to the gobject-introspection tools.
+
+Upstream-Status: Submitted [https://github.com/mesonbuild/meson/pull/4261]
+Signed-off-by: Ross Burton <ross.burton@intel.com>
+
+diff --git a/mesonbuild/modules/gnome.py b/mesonbuild/modules/gnome.py
+index cb69641e..bb4449a0 100644
+--- a/mesonbuild/modules/gnome.py
++++ b/mesonbuild/modules/gnome.py
+@@ -579,7 +579,10 @@ class GnomeModule(ExtensionModule):
+ external_ldflags += list(dep_external_ldflags)
+ scan_command += ['--cflags-begin']
+ scan_command += cflags
+- scan_command += state.environment.coredata.get_external_args(lang)
++ if state.environment.is_cross_build():
++ scan_command += state.environment.cross_info.config["properties"].get(lang + '_args', "")
++ else:
++ scan_command += state.environment.coredata.get_external_args(lang)
+ scan_command += ['--cflags-end']
+ # need to put our output directory first as we need to use the
+ # generated libraries instead of any possibly installed system/prefix
+@@ -614,7 +614,12 @@ class GnomeModule(ExtensionModule):
+ scan_command.append('-L' + d)
+ scan_command += ['--library', libname]
+
+- for link_arg in state.environment.coredata.get_external_link_args(lang):
++ if state.environment.is_cross_build():
++ link_args = state.environment.cross_info.config["properties"].get(lang + '_link_args', "")
++ else:
++ link_args = state.environment.coredata.get_external_link_args(lang)
++
++ for link_arg in link_args:
+ if link_arg.startswith('-L'):
+ scan_command.append(link_arg)
+ scan_command += list(external_ldflags)
diff --git a/poky/meta/recipes-devtools/meson/meson/gtkdoc-flags.patch b/poky/meta/recipes-devtools/meson/meson/gtkdoc-flags.patch
new file mode 100644
index 000000000..ecf3489bb
--- /dev/null
+++ b/poky/meta/recipes-devtools/meson/meson/gtkdoc-flags.patch
@@ -0,0 +1,44 @@
+Ensure that in a cross compile only the target flags are passed to gtk-doc, and
+not the native flags.
+
+Upstream-Status: Submitted [https://github.com/mesonbuild/meson/pull/4261]
+Signed-off-by: Ross Burton <ross.burton@intel.com>
+
+diff --git a/mesonbuild/modules/gnome.py b/mesonbuild/modules/gnome.py
+index 4af33304..8751f53c 100644
+--- a/mesonbuild/modules/gnome.py
++++ b/mesonbuild/modules/gnome.py
+@@ -851,17 +851,30 @@ This will become a hard error in the future.''')
+ if not isinstance(incd.held_object, (str, build.IncludeDirs)):
+ raise MesonException(
+ 'Gir include dirs should be include_directories().')
++
+ cflags.update(get_include_args(inc_dirs))
+- cflags.update(state.environment.coredata.get_external_args('c'))
++ if state.environment.is_cross_build():
++ cflags.update(state.environment.cross_info.config["properties"].get('c_args', ""))
++ else:
++ cflags.update(state.environment.coredata.get_external_args('c'))
++
+ ldflags = OrderedSet()
+ ldflags.update(internal_ldflags)
+- ldflags.update(state.environment.coredata.get_external_link_args('c'))
++ if state.environment.is_cross_build():
++ ldflags.update(state.environment.cross_info.config["properties"].get('c_link_args', ""))
++ else:
++ ldflags.update(state.environment.coredata.get_external_link_args('c'))
+ ldflags.update(external_ldflags)
++
+ if cflags:
+ args += ['--cflags=%s' % ' '.join(cflags)]
+ if ldflags:
+ args += ['--ldflags=%s' % ' '.join(ldflags)]
+- compiler = state.environment.coredata.compilers.get('c')
++
++ if state.environment.is_cross_build():
++ compiler = state.environment.coredata.cross_compilers.get('c')
++ else:
++ compiler = state.environment.coredata.compilers.get('c')
+ if compiler:
+ args += ['--cc=%s' % ' '.join(compiler.get_exelist())]
+ args += ['--ld=%s' % ' '.join(compiler.get_linker_exelist())]
diff --git a/poky/meta/recipes-devtools/meson/meson/meson-setup.py b/poky/meta/recipes-devtools/meson/meson/meson-setup.py
new file mode 100755
index 000000000..a9749eae9
--- /dev/null
+++ b/poky/meta/recipes-devtools/meson/meson/meson-setup.py
@@ -0,0 +1,62 @@
+#!/usr/bin/env python3
+
+import os
+import sys
+
+def bail(msg):
+ print(msg, file=sys.stderr)
+ sys.exit(1)
+
+_MARKER = '@@'
+def transform_line(line):
+ # Substitute any special markers of this form:
+ # @@ENV@@
+ # with the value of ENV, split into meson array syntax.
+ start = line.find(_MARKER)
+ if start == -1:
+ return line
+
+ end = line.rfind(_MARKER)
+ if end == start:
+ return line
+
+ # Lookup value of the env var.
+ var = line[start+len(_MARKER):end]
+ try:
+ val = os.environ[var]
+ except KeyError:
+ bail('cannot generate meson.cross; env var %s not set' % var)
+
+ # Transform into meson array.
+ val = ["'%s'" % x for x in val.split()]
+ val = ', '.join(val)
+ val = '[%s]' % val
+
+ before = line[:start]
+ after = line[end+len(_MARKER):]
+
+ return '%s%s%s' % (before, val, after)
+
+# Make sure this is really an SDK extraction environment.
+try:
+ sysroot = os.environ['OECORE_NATIVE_SYSROOT']
+except KeyError:
+ bail('OECORE_NATIVE_SYSROOT env var must be set')
+
+cross_file = os.path.join(sysroot, 'usr/share/meson/meson.cross')
+tmp_cross_file = '%s.tmp' % cross_file
+
+# Read through and transform the current meson.cross.
+lines = []
+with open(cross_file, 'r') as f:
+ for line in f:
+ lines.append(transform_line(line))
+
+# Write the transformed result to a tmp file and atomically rename it. In case
+# we crash during the file write, we don't want an invalid meson.cross file.
+with open(tmp_cross_file, 'w') as f:
+ for line in lines:
+ f.write(line)
+ f.flush()
+ os.fdatasync(f.fileno())
+os.rename(tmp_cross_file, cross_file)
diff --git a/poky/meta/recipes-devtools/meson/meson/meson-wrapper b/poky/meta/recipes-devtools/meson/meson/meson-wrapper
new file mode 100755
index 000000000..b2e00da51
--- /dev/null
+++ b/poky/meta/recipes-devtools/meson/meson/meson-wrapper
@@ -0,0 +1,14 @@
+#!/bin/sh
+
+if [ -z "$OECORE_NATIVE_SYSROOT" ]; then
+ echo "OECORE_NATIVE_SYSROOT not set; are you in a Yocto SDK environment?" >&2
+fi
+
+# If these are set to a cross-compile path, meson will get confused and try to
+# use them as native tools. Unset them to prevent this, as all the cross-compile
+# config is already in meson.cross.
+unset CC CXX CPP LD AR NM STRIP
+
+exec "$OECORE_NATIVE_SYSROOT/usr/bin/meson.real" \
+ --cross-file "$OECORE_NATIVE_SYSROOT/usr/share/meson/meson.cross" \
+ "$@"
diff --git a/poky/meta/recipes-devtools/meson/meson_0.47.2.bb b/poky/meta/recipes-devtools/meson/meson_0.47.2.bb
new file mode 100644
index 000000000..897fa148d
--- /dev/null
+++ b/poky/meta/recipes-devtools/meson/meson_0.47.2.bb
@@ -0,0 +1,3 @@
+include meson.inc
+
+BBCLASSEXTEND = "native"
diff --git a/poky/meta/recipes-devtools/meson/nativesdk-meson_0.47.2.bb b/poky/meta/recipes-devtools/meson/nativesdk-meson_0.47.2.bb
new file mode 100644
index 000000000..53503aa99
--- /dev/null
+++ b/poky/meta/recipes-devtools/meson/nativesdk-meson_0.47.2.bb
@@ -0,0 +1,74 @@
+include meson.inc
+
+inherit nativesdk
+
+SRC_URI += "file://meson-setup.py \
+ file://meson-wrapper"
+
+def meson_array(var, d):
+ return "', '".join(d.getVar(var).split()).join(("'", "'"))
+
+# both are required but not used by meson
+MESON_SDK_ENDIAN = "bogus-endian"
+MESON_TARGET_ENDIAN = "bogus-endian"
+
+MESON_TOOLCHAIN_ARGS = "${BUILDSDK_CC_ARCH}${TOOLCHAIN_OPTIONS}"
+MESON_C_ARGS = "${MESON_TOOLCHAIN_ARGS} ${BUILDSDK_CFLAGS}"
+MESON_CPP_ARGS = "${MESON_TOOLCHAIN_ARGS} ${BUILDSDK_CXXFLAGS}"
+MESON_LINK_ARGS = "${MESON_TOOLCHAIN_ARGS} ${BUILDSDK_LDFLAGS}"
+
+# This logic is similar but not identical to that in meson.bbclass, since it's
+# generating for an SDK rather than a cross-compile. Important differences are:
+# - We can't set vars like CC, CXX, etc. yet because they will be filled in with
+# real paths by meson-setup.sh when the SDK is extracted.
+# - Some overrides aren't needed, since the SDK injects paths that take care of
+# them.
+addtask write_config before do_install
+do_write_config[vardeps] += "MESON_C_ARGS MESON_CPP_ARGS MESON_LINK_ARGS CC CXX LD AR NM STRIP READELF"
+do_write_config() {
+ # This needs to be Py to split the args into single-element lists
+ cat >${WORKDIR}/meson.cross <<EOF
+[binaries]
+c = @@CC@@
+cpp = @@CXX@@
+ar = @@AR@@
+nm = @@NM@@
+ld = @@LD@@
+strip = @@STRIP@@
+pkgconfig = 'pkg-config'
+
+[properties]
+needs_exe_wrapper = true
+c_args = @@CFLAGS@@
+c_link_args = @@LDFLAGS@@
+cpp_args = @@CPPFLAGS@@
+cpp_link_args = @@LDFLAGS@@
+
+[host_machine]
+system = '${SDK_OS}'
+cpu_family = '${SDK_ARCH}'
+cpu = '${SDK_ARCH}'
+endian = '${MESON_SDK_ENDIAN}'
+EOF
+}
+
+do_install_append() {
+ install -d ${D}${datadir}/meson
+ install -m 0644 ${WORKDIR}/meson.cross ${D}${datadir}/meson/
+
+ install -d ${D}${SDKPATHNATIVE}/post-relocate-setup.d
+ install -m 0755 ${WORKDIR}/meson-setup.py ${D}${SDKPATHNATIVE}/post-relocate-setup.d/
+
+ # We need to wrap the real meson with a thin env setup wrapper.
+ mv ${D}${bindir}/meson ${D}${bindir}/meson.real
+ install -m 0755 ${WORKDIR}/meson-wrapper ${D}${bindir}/meson
+}
+
+RDEPENDS_${PN} += "\
+ nativesdk-ninja \
+ nativesdk-python3-core \
+ nativesdk-python3-misc \
+ nativesdk-python3-modules \
+ "
+
+FILES_${PN} += "${datadir}/meson ${SDKPATHNATIVE}"
diff --git a/poky/meta/recipes-devtools/mtd/mtd-utils_git.bb b/poky/meta/recipes-devtools/mtd/mtd-utils_git.bb
index 69f2eba1f..f53c6c112 100644
--- a/poky/meta/recipes-devtools/mtd/mtd-utils_git.bb
+++ b/poky/meta/recipes-devtools/mtd/mtd-utils_git.bb
@@ -10,9 +10,9 @@ inherit autotools pkgconfig update-alternatives
DEPENDS = "zlib lzo e2fsprogs util-linux"
RDEPENDS_mtd-utils-tests += "bash"
-PV = "2.0.1+${SRCPV}"
+PV = "2.0.2+${SRCPV}"
-SRCREV = "9c6173559f95e939e66efb2ec3193d6f3618cf69"
+SRCREV = "bc63d36e39f389c8c17f6a8e9db47f2acc884659"
SRC_URI = "git://git.infradead.org/mtd-utils.git \
file://add-exclusion-to-mkfs-jffs2-git-2.patch \
file://0001-Revert-Return-correct-error-number-in-ubi_get_vol_in.patch \
diff --git a/poky/meta/recipes-devtools/mtools/mtools/0001-remove-LOCK_NB-to-use-blocking-request.patch b/poky/meta/recipes-devtools/mtools/mtools/0001-remove-LOCK_NB-to-use-blocking-request.patch
new file mode 100644
index 000000000..47385a582
--- /dev/null
+++ b/poky/meta/recipes-devtools/mtools/mtools/0001-remove-LOCK_NB-to-use-blocking-request.patch
@@ -0,0 +1,44 @@
+From 5bdbfe0a63fed48104b17412854b26ee2275869a Mon Sep 17 00:00:00 2001
+From: Hongxu Jia <hongxu.jia@windriver.com>
+Date: Wed, 22 Aug 2018 16:54:39 +0800
+Subject: [PATCH] remove LOCK_NB to use blocking request
+
+While invoking mtools frequently, the unblocking request
+caused race issue. Here is an example of syslinux
+[snip]
+dd if=/dev/zero of=floppy.img bs=1024 count=144
+losetup /dev/loop1 floppy.img
+mkdosfs /dev/loop1
+syslinux -i /dev/loop1
+|plain floppy: device "/proc/6351/fd/3" busy (Resource temporarily unavailable):
+|Cannot initialize 'S:'
+|Bad target s:/ldlinux.sys
+[snip]
+
+The idea is from:
+https://bugzilla.redhat.com/show_bug.cgi?id=1235016
+https://groups.google.com/a/chromium.org/forum/#!msg/chromium-os-dev/bRPUCFHoBTQ/ZjB8kjjx1vUJ
+
+Upstream-Status: Pending
+
+Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
+---
+ lockdev.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/lockdev.h b/lockdev.h
+index 4467bc2..5a135ad 100644
+--- a/lockdev.h
++++ b/lockdev.h
+@@ -43,7 +43,7 @@ int lock_dev(int fd, int mode, struct device *dev)
+ return 0;
+
+ #if (defined(HAVE_FLOCK) && defined (LOCK_EX) && defined(LOCK_NB))
+- if (flock(fd, (mode ? LOCK_EX : LOCK_SH)|LOCK_NB) < 0)
++ if (flock(fd, (mode ? LOCK_EX : LOCK_SH)) < 0)
+ #else /* FLOCK */
+
+ #if (defined(HAVE_LOCKF) && defined(F_TLOCK))
+--
+2.7.4
+
diff --git a/poky/meta/recipes-devtools/mtools/mtools/clang_UNUSED.patch b/poky/meta/recipes-devtools/mtools/mtools/clang_UNUSED.patch
new file mode 100644
index 000000000..6bb9d6a3d
--- /dev/null
+++ b/poky/meta/recipes-devtools/mtools/mtools/clang_UNUSED.patch
@@ -0,0 +1,17 @@
+Undefine UNUSED macros with clang
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+Index: mtools-4.0.18/sysincludes.h
+===================================================================
+--- mtools-4.0.18.orig/sysincludes.h
++++ mtools-4.0.18/sysincludes.h
+@@ -101,7 +101,7 @@ typedef void *caddr_t;
+ #if defined __GNUC__ && defined __STDC__
+ /* gcc -traditional doesn't have PACKED, UNUSED and NORETURN */
+ # define PACKED __attribute__ ((packed))
+-# if __GNUC__ == 2 && __GNUC_MINOR__ > 6 || __GNUC__ >= 3
++# if (__GNUC__ == 2 && __GNUC_MINOR__ > 6 || __GNUC__ >= 3) && !defined(__clang__)
+ /* gcc 2.6.3 doesn't have "unused" */ /* mool */
+ # define UNUSED(x) x __attribute__ ((unused));x
+ # define UNUSEDP __attribute__ ((unused))
diff --git a/poky/meta/recipes-devtools/mtools/mtools_4.0.18.bb b/poky/meta/recipes-devtools/mtools/mtools_4.0.18.bb
index dcd32ed94..3c31aca3a 100644
--- a/poky/meta/recipes-devtools/mtools/mtools_4.0.18.bb
+++ b/poky/meta/recipes-devtools/mtools/mtools_4.0.18.bb
@@ -31,6 +31,8 @@ SRC_URI = "${GNU_MIRROR}/mtools/mtools-${PV}.tar.bz2 \
file://mtools-makeinfo.patch \
file://no-x11.gplv3.patch \
file://0001-Continue-even-if-fs-size-is-not-divisible-by-sectors.patch \
+ file://0001-remove-LOCK_NB-to-use-blocking-request.patch \
+ file://clang_UNUSED.patch \
"
SRC_URI_append_class-native = " file://disable-hardcoded-configs.patch"
diff --git a/poky/meta/recipes-devtools/opkg-utils/opkg-utils/pigz.patch b/poky/meta/recipes-devtools/opkg-utils/opkg-utils/pigz.patch
new file mode 100644
index 000000000..dd433e8eb
--- /dev/null
+++ b/poky/meta/recipes-devtools/opkg-utils/opkg-utils/pigz.patch
@@ -0,0 +1,51 @@
+From ab1436927b47badcd219a5f075dfc848020e061d Mon Sep 17 00:00:00 2001
+From: Mike Crowe <mac@mcrowe.com>
+Date: Thu, 4 Oct 2018 17:54:19 +0100
+Subject: [opkg-utils PATCH] opkg-build: Add support for explicit use of pigz
+To: opkg-devel@googlegroups.com,
+ yocto@yoctoproject.org
+
+oe-core has stopped[1] installing pigz as gzip. This means that in
+order to persuade opkg-build to use pigz it must be specified
+explicitly. Let's teach opkg-build to deal with being passed pigz as a
+compressor.
+
+We can't combine the check for whether -T is required with the one for
+gzip because opkg-build needs to call $compressor and gzip separately
+to construct the package.
+
+[1] http://lists.openembedded.org/pipermail/openembedded-commits/2018-February/218767.html
+
+Upstream-Status: Submitted [opkg-devel@googlegroups.com https://groups.google.com/forum/#!topic/opkg-devel/E0WVOhjK61w]
+Signed-off-by: Mike Crowe <mac@mcrowe.com>
+---
+ opkg-build | 6 +++++-
+ 1 file changed, 5 insertions(+), 1 deletion(-)
+
+diff --git a/opkg-build b/opkg-build
+index 93a7956..f8403ea 100755
+--- a/opkg-build
++++ b/opkg-build
+@@ -170,7 +170,7 @@ fi
+
+ compressor_ext() {
+ case $1 in
+- gzip)
++ gzip|pigz)
+ echo gz
+ ;;
+ bzip2)
+@@ -232,6 +232,10 @@ if [ $compressor = "gzip" ] ; then
+ compressorargs=$zipargs
+ elif [ $compressor = "xz" ] ; then
+ compressorargs="--threads 0"
++elif [ $compressor = "pigz" ] ; then
++ if $compressor --help 2>&1 | grep -- "-T" > /dev/null; then
++ compressorargs="-9nT"
++ fi
+ fi
+
+ tsortargs=
+--
+2.11.0
+
diff --git a/poky/meta/recipes-devtools/opkg-utils/opkg-utils_0.3.6.bb b/poky/meta/recipes-devtools/opkg-utils/opkg-utils_0.3.6.bb
index 0487c5f30..cb3775d9c 100644
--- a/poky/meta/recipes-devtools/opkg-utils/opkg-utils_0.3.6.bb
+++ b/poky/meta/recipes-devtools/opkg-utils/opkg-utils_0.3.6.bb
@@ -12,6 +12,7 @@ SRC_URI = "http://git.yoctoproject.org/cgit/cgit.cgi/${BPN}/snapshot/${BPN}-${PV
file://0001-Only-use-sort-name-on-versions-of-tar-which-support-.patch \
file://0002-opkg-build-Use-local-time-for-build_date-since-opkg-.patch \
file://threaded-xz.patch \
+ file://pigz.patch \
"
SRC_URI_append_class-native = " file://tar_ignore_error.patch"
UPSTREAM_CHECK_URI = "http://git.yoctoproject.org/cgit/cgit.cgi/opkg-utils/refs/"
diff --git a/poky/meta/recipes-devtools/opkg/opkg-keyrings_1.0.bb b/poky/meta/recipes-devtools/opkg/opkg-keyrings_1.0.bb
index 18d6abdde..a20e316a3 100644
--- a/poky/meta/recipes-devtools/opkg/opkg-keyrings_1.0.bb
+++ b/poky/meta/recipes-devtools/opkg/opkg-keyrings_1.0.bb
@@ -35,14 +35,6 @@ FILES_${PN} = "${datadir}/opkg/keyrings"
# We need 'opkg-key' to run the postinst script
RDEPENDS_${PN} = "opkg"
-pkg_postinst_${PN} () {
-#! /bin/sh
-set -e
-
-if [ x"$D" = "x" ]; then
- # On target
- opkg-key populate
-else
- exit 1
-fi
+pkg_postinst_ontarget_${PN} () {
+opkg-key populate
}
diff --git a/poky/meta/recipes-devtools/opkg/opkg/0001-remove_maintainer_scripts-use-strict-matching.patch b/poky/meta/recipes-devtools/opkg/opkg/0001-remove_maintainer_scripts-use-strict-matching.patch
new file mode 100644
index 000000000..ec160290b
--- /dev/null
+++ b/poky/meta/recipes-devtools/opkg/opkg/0001-remove_maintainer_scripts-use-strict-matching.patch
@@ -0,0 +1,56 @@
+From 55c4ad666e76281bdd0db55fa6f4ab2744fea7e4 Mon Sep 17 00:00:00 2001
+From: Alejandro del Castillo <alejandro.delcastillo@ni.com>
+Date: Tue, 4 Sep 2018 18:06:00 -0500
+Subject: [PATCH] remove_maintainer_scripts: use strict matching
+
+The function is using a glob to select which metadata files needs to be
+deleted during package removal, on the info_dir. However, the glob may
+match metadata files from packages with similar names. For example,
+during removal of package glibc-binary-localedata-de-at, the current
+logic was also removing the metadata for
+glibc-binary-localedata-de-at.iso-8859-1. Add check for an exact match
+before deletion.
+
+Fixes bugzilla: 12905
+
+Upstream-Status: Submitted [https://groups.google.com/forum/#!topic/opkg-devel/Fr40Yt0NBno]
+Signed-off-by: Alejandro del Castillo <alejandro.delcastillo@ni.com>
+---
+ libopkg/opkg_remove.c | 14 +++++++++++---
+ 1 file changed, 11 insertions(+), 3 deletions(-)
+
+diff --git a/libopkg/opkg_remove.c b/libopkg/opkg_remove.c
+index 82125fa..3936628 100644
+--- a/libopkg/opkg_remove.c
++++ b/libopkg/opkg_remove.c
+@@ -137,7 +137,7 @@ void remove_maintainer_scripts(pkg_t * pkg)
+ {
+ unsigned int i;
+ int err;
+- char *globpattern;
++ char *globpattern, *filename, *lastdot;
+ glob_t globbuf;
+
+ if (opkg_config->noaction)
+@@ -151,8 +151,16 @@ void remove_maintainer_scripts(pkg_t * pkg)
+ return;
+
+ for (i = 0; i < globbuf.gl_pathc; i++) {
+- opkg_msg(INFO, "Deleting %s.\n", globbuf.gl_pathv[i]);
+- unlink(globbuf.gl_pathv[i]);
++ filename = xstrdup(basename(globbuf.gl_pathv[i]));
++ lastdot = strrchr(filename, '.');
++ *lastdot = '\0';
++ // Only delete files that match the package name (the glob may match files
++ // with similar names)
++ if (!strcmp(filename, pkg->name)) {
++ opkg_msg(INFO, "Deleting %s.\n", globbuf.gl_pathv[i]);
++ unlink(globbuf.gl_pathv[i]);
++ }
++ free(filename);
+ }
+ globfree(&globbuf);
+ }
+--
+2.18.0
+
diff --git a/poky/meta/recipes-devtools/opkg/opkg/opkg-configure.service b/poky/meta/recipes-devtools/opkg/opkg/opkg-configure.service
deleted file mode 100644
index 432c3ddc2..000000000
--- a/poky/meta/recipes-devtools/opkg/opkg/opkg-configure.service
+++ /dev/null
@@ -1,17 +0,0 @@
-[Unit]
-Description=Opkg first boot configure
-DefaultDependencies=no
-After=systemd-remount-fs.service systemd-tmpfiles-setup.service tmp.mount
-Before=sysinit.target
-
-[Service]
-Type=oneshot
-EnvironmentFile=-@SYSCONFDIR@/default/postinst
-ExecStart=-@BASE_BINDIR@/sh -c " if [ $POSTINST_LOGGING = '1' ]; then @BINDIR@/opkg configure > $LOGFILE 2>&1; else @BINDIR@/opkg configure; fi"
-ExecStartPost=@BASE_BINDIR@/systemctl --no-reload disable opkg-configure.service
-StandardOutput=syslog
-RemainAfterExit=No
-
-[Install]
-WantedBy=basic.target
-WantedBy=sysinit.target
diff --git a/poky/meta/recipes-devtools/opkg/opkg_0.3.6.bb b/poky/meta/recipes-devtools/opkg/opkg_0.3.6.bb
index 70f20af73..6ebd58b96 100644
--- a/poky/meta/recipes-devtools/opkg/opkg_0.3.6.bb
+++ b/poky/meta/recipes-devtools/opkg/opkg_0.3.6.bb
@@ -12,9 +12,9 @@ DEPENDS = "libarchive"
PE = "1"
SRC_URI = "http://downloads.yoctoproject.org/releases/${BPN}/${BPN}-${PV}.tar.gz \
- file://opkg-configure.service \
file://opkg.conf \
file://0001-opkg_conf-create-opkg.lock-in-run-instead-of-var-run.patch \
+ file://0001-remove_maintainer_scripts-use-strict-matching.patch \
"
SRC_URI[md5sum] = "79e04307f6f54db431c251772d7d987c"
@@ -22,8 +22,6 @@ SRC_URI[sha256sum] = "f607f0e61be8cf8a3bbd0d2dccd9ec9e9b6c21dd4307b671c600d6eeaf
inherit autotools pkgconfig systemd
-SYSTEMD_SERVICE_${PN} = "opkg-configure.service"
-
target_localstatedir := "${localstatedir}"
OPKGLIBDIR = "${target_localstatedir}/lib"
@@ -46,16 +44,6 @@ do_install_append () {
# We need to create the lock directory
install -d ${D}${OPKGLIBDIR}/opkg
-
- if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)};then
- install -d ${D}${systemd_unitdir}/system
- install -m 0644 ${WORKDIR}/opkg-configure.service ${D}${systemd_unitdir}/system/
- sed -i -e 's,@BASE_BINDIR@,${base_bindir},g' \
- -e 's,@SYSCONFDIR@,${sysconfdir},g' \
- -e 's,@BINDIR@,${bindir},g' \
- -e 's,@SYSTEMD_UNITDIR@,${systemd_unitdir},g' \
- ${D}${systemd_unitdir}/system/opkg-configure.service
- fi
}
RDEPENDS_${PN} = "${VIRTUAL-RUNTIME_update-alternatives} opkg-arch-config libarchive"
@@ -68,7 +56,6 @@ RPROVIDES_${PN} = "opkg-collateral"
PACKAGES =+ "libopkg"
FILES_libopkg = "${libdir}/*.so.* ${OPKGLIBDIR}/opkg/"
-FILES_${PN} += "${systemd_unitdir}/system/"
BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-devtools/ossp-uuid/ossp-uuid/0001-Change-library-name.patch b/poky/meta/recipes-devtools/ossp-uuid/ossp-uuid/0001-Change-library-name.patch
deleted file mode 100644
index ed67c501c..000000000
--- a/poky/meta/recipes-devtools/ossp-uuid/ossp-uuid/0001-Change-library-name.patch
+++ /dev/null
@@ -1,119 +0,0 @@
-From: Piotr Roszatycki <dexter@debian.org>
-Date: Wed, 27 Jan 2010 16:53:11 +0100
-Subject: [PATCH] Change library name
-
-The soname was changed to ossp-uuid to prevend the name clash with e2fsprogs's
-uuid library.
----
- Makefile.in | 6 +++---
- perl/Makefile.PL | 12 ++++++------
- php/config.m4 | 2 +-
- uuid-config.in | 2 +-
- uuid.pc.in | 4 ++--
- 5 files changed, 13 insertions(+), 13 deletions(-)
-
-----
-Upstream-Status: Inappropriate [not author]
-
-This patch is from debian ossp-uuid 1.6.2 integration.
-
-Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
-
-diff --git a/Makefile.in b/Makefile.in
-index d28f4be..c2ba99d 100644
---- a/Makefile.in
-+++ b/Makefile.in
-@@ -62,13 +62,13 @@ PERL = @PERL@
- PHP = @PHP@
- PG_CONFIG = @PG_CONFIG@
-
--LIB_NAME = libuuid.la
-+LIB_NAME = libossp-uuid.la
- LIB_OBJS = uuid.lo uuid_md5.lo uuid_sha1.lo uuid_prng.lo uuid_mac.lo uuid_time.lo uuid_ui64.lo uuid_ui128.lo uuid_str.lo
-
--DCE_NAME = libuuid_dce.la
-+DCE_NAME = libossp-uuid_dce.la
- DCE_OBJS = uuid_dce.lo $(LIB_OBJS)
-
--CXX_NAME = libuuid++.la
-+CXX_NAME = libossp-uuid++.la
- CXX_OBJS = uuid++.lo $(LIB_OBJS)
-
- PRG_NAME = uuid
-diff --git a/perl/Makefile.PL b/perl/Makefile.PL
-index 92f4494..9c6fee6 100644
---- a/perl/Makefile.PL
-+++ b/perl/Makefile.PL
-@@ -33,9 +33,9 @@ use Config;
- use ExtUtils::MakeMaker;
-
- # determine source directory
--my ($srcdir) = map { my $d = $_; $d =~ s/\/libuuid\.la$//; $d }
-- grep { -f $_ } ("../libuuid.la", glob("../*/libuuid.la"))
-- or die "no source directory found (where libuuid.la is located)";
-+my ($srcdir) = map { my $d = $_; $d =~ s/\/libossp-uuid\.la$//; $d }
-+ grep { -f $_ } ("../libossp-uuid.la", glob("../*/libossp-uuid.la"))
-+ or die "no source directory found (where libossp-uuid.la is located)";
-
- # determine extra build options
- my $compat = 0;
-@@ -47,15 +47,15 @@ WriteMakefile(
- VERSION_FROM => 'uuid.pm',
- ABSTRACT_FROM => 'uuid.pod',
- PREREQ_PM => {},
-- LIBS => [ "-L$srcdir/.libs -L$srcdir -luuid" ],
-+ LIBS => [ "-L$srcdir/.libs -L$srcdir -lossp-uuid" ],
- DEFINE => '',
- INC => "-I. -I$srcdir",
- PM => { 'uuid.pm' => '$(INST_LIBDIR)/uuid.pm',
- 'uuid.pod' => '$(INST_LIBDIR)/uuid.pod',
- ($compat ? ('uuid_compat.pm' => '$(INST_LIBDIR)/../Data/UUID.pm') : ()),
- ($compat ? ('uuid_compat.pod' => '$(INST_LIBDIR)/../Data/UUID.pod') : ()), },
-- MAN3PODS => { 'uuid.pod' => '$(INST_MAN3DIR)/OSSP::uuid.3',
-- ($compat ? ('uuid_compat.pod' => '$(INST_MAN3DIR)/Data::UUID.3') : ()), },
-+ MAN3PODS => { 'uuid.pod' => '$(INST_MAN3DIR)/OSSP::uuid.3pm',
-+ ($compat ? ('uuid_compat.pod' => '$(INST_MAN3DIR)/Data::UUID.3pm') : ()), },
- TYPEMAPS => [ 'uuid.tm' ],
- test => { TESTS => 'uuid.ts' . ($compat ? ' uuid_compat.ts' : '') },
- NO_META => 1,
-diff --git a/php/config.m4 b/php/config.m4
-index 5091b96..969b457 100644
---- a/php/config.m4
-+++ b/php/config.m4
-@@ -34,7 +34,7 @@ if test "$PHP_UUID" != "no"; then
- PHP_NEW_EXTENSION(uuid, uuid.c, $ext_shared)
- AC_DEFINE(HAVE_UUID, 1, [Have OSSP uuid library])
- PHP_ADD_LIBPATH([..], )
-- PHP_ADD_LIBRARY([uuid],, UUID_SHARED_LIBADD)
-+ PHP_ADD_LIBRARY([ossp-uuid],, UUID_SHARED_LIBADD)
- PHP_ADD_INCLUDE([..])
- PHP_SUBST(UUID_SHARED_LIBADD)
-
-diff --git a/uuid-config.in b/uuid-config.in
-index 8d2a063..5b58812 100644
---- a/uuid-config.in
-+++ b/uuid-config.in
-@@ -121,7 +121,7 @@ do
- output_extra="$output_extra $uuid_ldflags"
- ;;
- --libs)
-- output="$output -luuid"
-+ output="$output -lossp-uuid"
- output_extra="$output_extra $uuid_libs"
- ;;
- * )
-diff --git a/uuid.pc.in b/uuid.pc.in
-index c76ad1e..de00c2f 100644
---- a/uuid.pc.in
-+++ b/uuid.pc.in
-@@ -36,7 +36,7 @@ Name: OSSP uuid
- Description: Universally Unique Identifier (UUID) Library
- Version: @UUID_VERSION_RAW@
- URL: http://www.ossp.org/pkg/lib/uuid/
--Cflags: -I${includedir}
--Libs: -L${libdir} -luuid
-+Cflags: -I${includedir}/ossp
-+Libs: -L${libdir} -lossp-uuid
- Libs.private: @LIBS@
-
---
diff --git a/poky/meta/recipes-devtools/ossp-uuid/ossp-uuid/0002-uuid-preserve-m-option-status-in-v-option-handling.patch b/poky/meta/recipes-devtools/ossp-uuid/ossp-uuid/0002-uuid-preserve-m-option-status-in-v-option-handling.patch
deleted file mode 100644
index 804a62731..000000000
--- a/poky/meta/recipes-devtools/ossp-uuid/ossp-uuid/0002-uuid-preserve-m-option-status-in-v-option-handling.patch
+++ /dev/null
@@ -1,62 +0,0 @@
-From: Marco Nenciarini <marco.nenciarini@devise.it>
-Date: Wed, 27 Jan 2010 19:46:21 +0100
-Subject: [PATCH] uuid: preserve -m option status in -v option handling
-
-Bug: 531396
----
- uuid_cli.c | 19 ++++++++++---------
- 1 files changed, 10 insertions(+), 9 deletions(-)
-
-----
-Upstream-Status: Inappropriate [not author]
-
-This patch is from debian ossp-uuid 1.6.2 integration.
-
-Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
-
-diff --git a/uuid_cli.c b/uuid_cli.c
-index d1b0b11..14a67fe 100644
---- a/uuid_cli.c
-+++ b/uuid_cli.c
-@@ -140,11 +140,12 @@ int main(int argc, char *argv[])
- i = strtol(optarg, &p, 10);
- if (*p != '\0')
- usage("invalid argument to option 'v'");
-+ version &= ~(UUID_MAKE_V1|UUID_MAKE_V3|UUID_MAKE_V4|UUID_MAKE_V5);
- switch (i) {
-- case 1: version = UUID_MAKE_V1; break;
-- case 3: version = UUID_MAKE_V3; break;
-- case 4: version = UUID_MAKE_V4; break;
-- case 5: version = UUID_MAKE_V5; break;
-+ case 1: version |= UUID_MAKE_V1; break;
-+ case 3: version |= UUID_MAKE_V3; break;
-+ case 4: version |= UUID_MAKE_V4; break;
-+ case 5: version |= UUID_MAKE_V5; break;
- default:
- usage("invalid version on option 'v'");
- break;
-@@ -213,10 +214,10 @@ int main(int argc, char *argv[])
- }
- else {
- /* encoding */
-- if ( (version == UUID_MAKE_V1 && argc != 0)
-- || (version == UUID_MAKE_V3 && argc != 2)
-- || (version == UUID_MAKE_V4 && argc != 0)
-- || (version == UUID_MAKE_V5 && argc != 2))
-+ if ( (version & UUID_MAKE_V1 && argc != 0)
-+ || (version & UUID_MAKE_V3 && argc != 2)
-+ || (version & UUID_MAKE_V4 && argc != 0)
-+ || (version & UUID_MAKE_V5 && argc != 2))
- usage("invalid number of arguments");
- if ((rc = uuid_create(&uuid)) != UUID_RC_OK)
- error(1, "uuid_create: %s", uuid_error(rc));
-@@ -232,7 +233,7 @@ int main(int argc, char *argv[])
- if ((rc = uuid_load(uuid, "nil")) != UUID_RC_OK)
- error(1, "uuid_load: %s", uuid_error(rc));
- }
-- if (version == UUID_MAKE_V3 || version == UUID_MAKE_V5) {
-+ if (version & UUID_MAKE_V3 || version & UUID_MAKE_V5) {
- if ((rc = uuid_create(&uuid_ns)) != UUID_RC_OK)
- error(1, "uuid_create: %s", uuid_error(rc));
- if ((rc = uuid_load(uuid_ns, argv[0])) != UUID_RC_OK) {
---
diff --git a/poky/meta/recipes-devtools/ossp-uuid/ossp-uuid/0003-Fix-whatis-entries.patch b/poky/meta/recipes-devtools/ossp-uuid/ossp-uuid/0003-Fix-whatis-entries.patch
deleted file mode 100644
index 13cbb5989..000000000
--- a/poky/meta/recipes-devtools/ossp-uuid/ossp-uuid/0003-Fix-whatis-entries.patch
+++ /dev/null
@@ -1,58 +0,0 @@
-From: Marco Nenciarini <marco.nenciarini@devise.it>
-Date: Tue, 2 Feb 2010 12:16:49 +0100
-Subject: [PATCH] Fix whatis entries
-
-Fix whatis entry of uuid.1, uuid.3ossp and uuid++.3ossp manpages
----
- uuid++.pod | 2 +-
- uuid.pod | 2 +-
- uuid_cli.pod | 2 +-
- 3 files changed, 3 insertions(+), 3 deletions(-)
-
-----
-Upstream-Status: Inappropriate [not author]
-
-This patch is from debian ossp-uuid 1.6.2 integration.
-
-Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
-
-diff --git a/uuid++.pod b/uuid++.pod
-index 8b5a4b1..89c5efb 100644
---- a/uuid++.pod
-+++ b/uuid++.pod
-@@ -31,7 +31,7 @@
-
- =head1 NAME
-
--B<OSSP uuid> - B<Universally Unique Identifier> (C++ API)
-+B<uuid++> - B<Universally Unique Identifier> (C++ API)
-
- =head1 VERSION
-
-diff --git a/uuid.pod b/uuid.pod
-index 4ad3742..0179a46 100644
---- a/uuid.pod
-+++ b/uuid.pod
-@@ -31,7 +31,7 @@
-
- =head1 NAME
-
--B<OSSP uuid> - B<Universally Unique Identifier>
-+B<uuid> - B<Universally Unique Identifier>
-
- =head1 VERSION
-
-diff --git a/uuid_cli.pod b/uuid_cli.pod
-index ddec6bb..df9dc83 100644
---- a/uuid_cli.pod
-+++ b/uuid_cli.pod
-@@ -31,7 +31,7 @@
-
- =head1 NAME
-
--B<OSSP uuid> - B<Universally Unique Identifier Command-Line Tool>
-+B<uuid> - B<Universally Unique Identifier Command-Line Tool>
-
- =head1 VERSION
-
---
diff --git a/poky/meta/recipes-devtools/ossp-uuid/ossp-uuid/0004-fix-data-uuid-from-string.patch b/poky/meta/recipes-devtools/ossp-uuid/ossp-uuid/0004-fix-data-uuid-from-string.patch
deleted file mode 100644
index bc5e111ee..000000000
--- a/poky/meta/recipes-devtools/ossp-uuid/ossp-uuid/0004-fix-data-uuid-from-string.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-Description: Support dash-less args to from_string.
-Author: Tim Retout <diocles@debian.org>
-Bug-Debian: http://bugs.debian.org/635607
-
-The module Data::GUID depends on Data::UUID supporting this behaviour.
-
-----
-Upstream-Status: Inappropriate [not author]
-
-This patch is from debian ossp-uuid 1.6.2 integration.
-
-Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
-
---- a/perl/uuid_compat.pm
-+++ b/perl/uuid_compat.pm
-@@ -93,7 +93,9 @@
- $uuid->import('str',
- $str =~ /^0x/
- ? join '-', unpack('x2 a8 a4 a4 a4 a12', $str)
-- : $str
-+ : $str =~ /-/
-+ ? $str
-+ : join '-', unpack('A8 A4 A4 A4 A12', $str)
- );
- return $uuid->export('bin');
- }
---- a/perl/uuid_compat.ts
-+++ b/perl/uuid_compat.ts
-@@ -28,7 +28,7 @@
- ## uuid_compat.ts: Data::UUID Backward Compatibility Perl API (Perl test suite part)
- ##
-
--use Test::More tests => 14;
-+use Test::More tests => 16;
-
- BEGIN {
- use_ok('Data::UUID');
-@@ -53,3 +53,5 @@
- ok($uuid8 = $ug->from_string("6ba7b811-9dad-11d1-80b4-00c04fd430c8"));
- ok($ug->compare($uuid7, $uuid8) == 0);
-
-+ok($uuid9 = $ug->from_string("6ba7b8119dad11d180b400c04fd430c8"));
-+ok($ug->compare($uuid7, $uuid9) == 0);
diff --git a/poky/meta/recipes-devtools/ossp-uuid/ossp-uuid/install-pc.patch b/poky/meta/recipes-devtools/ossp-uuid/ossp-uuid/install-pc.patch
deleted file mode 100644
index 63b80f6a1..000000000
--- a/poky/meta/recipes-devtools/ossp-uuid/ossp-uuid/install-pc.patch
+++ /dev/null
@@ -1,19 +0,0 @@
-uuid.pc is generated at build time so should be installed from the current
-directory, and not $S.
-
-Upstream-Status: Pending [should be submitted]
-Signed-off-by: Ross Burton <ross.burton@intel.com>
-
-Index: uuid-1.6.2/Makefile.in
-===================================================================
---- uuid-1.6.2.orig/Makefile.in 2012-11-13 16:58:28.624156000 +0000
-+++ uuid-1.6.2/Makefile.in 2012-11-13 17:05:24.224158670 +0000
-@@ -232,7 +232,7 @@
- $(SHTOOL) mkdir -f -p -m 755 $(DESTDIR)$(mandir)/man1
- $(SHTOOL) install -c -m 755 uuid-config $(DESTDIR)$(bindir)/
- $(SHTOOL) install -c -m 644 $(S)/uuid-config.1 $(DESTDIR)$(mandir)/man1/
-- $(SHTOOL) install -c -m 644 $(S)/uuid.pc $(DESTDIR)$(libdir)/pkgconfig/
-+ $(SHTOOL) install -c -m 644 uuid.pc $(DESTDIR)$(libdir)/pkgconfig/
- $(SHTOOL) install -c -m 644 uuid.h $(DESTDIR)$(includedir)/
- -@if [ ".$(WITH_DCE)" = .yes ]; then \
- echo "$(SHTOOL) install -c -m 644 $(S)/uuid_dce.h $(DESTDIR)$(includedir)/"; \
diff --git a/poky/meta/recipes-devtools/ossp-uuid/ossp-uuid/ldflags.patch b/poky/meta/recipes-devtools/ossp-uuid/ossp-uuid/ldflags.patch
deleted file mode 100644
index 4dfc1370c..000000000
--- a/poky/meta/recipes-devtools/ossp-uuid/ossp-uuid/ldflags.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-Obey LDFLAGS
-
-Signed-off-by: Christopher Larson <chris_larson@mentor.com>
-Upstream-Status: Pending
-
---- uuid-1.6.2.orig/Makefile.in
-+++ uuid-1.6.2/Makefile.in
-@@ -113,15 +113,15 @@ all: $(TARGETS)
- @$(LIBTOOL) --mode=compile $(CXX) $(CPPFLAGS) $(CXXFLAGS) -c $<
-
- $(LIB_NAME): $(LIB_OBJS)
-- @$(LIBTOOL) --mode=link $(CC) -o $(LIB_NAME) $(LIB_OBJS) -rpath $(libdir) \
-+ @$(LIBTOOL) --mode=link $(CC) $(LDFLAGS) -o $(LIB_NAME) $(LIB_OBJS) -rpath $(libdir) \
- -version-info `$(SHTOOL) version -l c -d libtool $(S)/uuid_vers.h`
-
- $(DCE_NAME): $(DCE_OBJS)
-- @$(LIBTOOL) --mode=link $(CC) -o $(DCE_NAME) $(DCE_OBJS) -rpath $(libdir) \
-+ @$(LIBTOOL) --mode=link $(CC) $(LDFLAGS) -o $(DCE_NAME) $(DCE_OBJS) -rpath $(libdir) \
- -version-info `$(SHTOOL) version -l c -d libtool $(S)/uuid_vers.h`
-
- $(CXX_NAME): $(CXX_OBJS)
-- @$(LIBTOOL) --mode=link $(CXX) -o $(CXX_NAME) $(CXX_OBJS) -rpath $(libdir) \
-+ @$(LIBTOOL) --mode=link $(CXX) $(LDFLAGS) -o $(CXX_NAME) $(CXX_OBJS) -rpath $(libdir) \
- -version-info `$(SHTOOL) version -l c -d libtool $(S)/uuid_vers.h`
-
- $(PRG_NAME): $(PRG_OBJS) $(LIB_NAME)
diff --git a/poky/meta/recipes-devtools/ossp-uuid/ossp-uuid/libtool-tag.patch b/poky/meta/recipes-devtools/ossp-uuid/ossp-uuid/libtool-tag.patch
deleted file mode 100644
index 7f601afab..000000000
--- a/poky/meta/recipes-devtools/ossp-uuid/ossp-uuid/libtool-tag.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-Repect LIBTOOLFLAGS
-
-This add a knob that can be controlled from env to set generic options
-for libtool
-
-Upstream-Status: Pending
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-
-Index: uuid-1.6.2/Makefile.in
-===================================================================
---- uuid-1.6.2.orig/Makefile.in
-+++ uuid-1.6.2/Makefile.in
-@@ -56,7 +56,7 @@ RM = rm -f
- CP = cp
- RMDIR = rmdir
- SHTOOL = $(S)/shtool
--LIBTOOL = @LIBTOOL@
-+LIBTOOL = @LIBTOOL@ $(LIBTOOLFLAGS)
- TRUE = true
- POD2MAN = pod2man
- PERL = @PERL@
diff --git a/poky/meta/recipes-devtools/ossp-uuid/ossp-uuid/uuid-libtool.patch b/poky/meta/recipes-devtools/ossp-uuid/ossp-uuid/uuid-libtool.patch
deleted file mode 100644
index 4bc91b86e..000000000
--- a/poky/meta/recipes-devtools/ossp-uuid/ossp-uuid/uuid-libtool.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-Remove hardcoded libtool name, fall back to generated name
-
-Upstream-Status: Inappropriate [no upstream]
-The project appears to no longer be accepting changes.
-
-Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
-
-diff -ur uuid-1.6.2.orig/Makefile.in uuid-1.6.2/Makefile.in
---- uuid-1.6.2.orig/Makefile.in 2012-05-14 14:37:19.579672930 -0500
-+++ uuid-1.6.2/Makefile.in 2012-05-14 14:37:49.112733787 -0500
-@@ -32,6 +32,7 @@
- VPATH = @srcdir@
- srcdir = @srcdir@
- top_srcdir = @top_srcdir@
-+top_builddir = @top_builddir@
- S = $(srcdir)
- C = .
-
-@@ -55,7 +56,7 @@
- CP = cp
- RMDIR = rmdir
- SHTOOL = $(S)/shtool
--LIBTOOL = $(C)/libtool
-+LIBTOOL = @LIBTOOL@
- TRUE = true
- POD2MAN = pod2man
- PERL = @PERL@
diff --git a/poky/meta/recipes-devtools/ossp-uuid/ossp-uuid/uuid-nostrip.patch b/poky/meta/recipes-devtools/ossp-uuid/ossp-uuid/uuid-nostrip.patch
deleted file mode 100644
index d806b5fb7..000000000
--- a/poky/meta/recipes-devtools/ossp-uuid/ossp-uuid/uuid-nostrip.patch
+++ /dev/null
@@ -1,19 +0,0 @@
-We don't want anything stripped
-
-Upstream-Status: Inappropriate [no upstream]
-The project appears to no longer be accepting changes.
-
-Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
-
-diff -ur uuid-1.6.2.orig/Makefile.in uuid-1.6.2/Makefile.in
---- uuid-1.6.2.orig/Makefile.in 2012-05-14 14:42:42.225789456 -0500
-+++ uuid-1.6.2/Makefile.in 2012-05-14 15:03:03.119733400 -0500
-@@ -254,7 +254,7 @@
- -@if [ ".$(WITH_CXX)" = .yes ]; then \
- $(LIBTOOL) --mode=install $(SHTOOL) install -c -m 644 $(CXX_NAME) $(DESTDIR)$(libdir)/; \
- fi
-- @$(LIBTOOL) --mode=install $(SHTOOL) install -c -s -m 755 uuid $(DESTDIR)$(bindir)/
-+ @$(LIBTOOL) --mode=install $(SHTOOL) install -c -m 755 uuid $(DESTDIR)$(bindir)/
- $(SHTOOL) install -c -m 644 $(S)/uuid.1 $(DESTDIR)$(mandir)/man1/
- -@if [ ".$(WITH_PERL)" = .yes ]; then \
- (cd $(S)/perl && $(MAKE) $(MFLAGS) install DESTDIR=$(DESTDIR)); \
diff --git a/poky/meta/recipes-devtools/ossp-uuid/ossp-uuid_1.6.2.bb b/poky/meta/recipes-devtools/ossp-uuid/ossp-uuid_1.6.2.bb
deleted file mode 100644
index 5d9ca790e..000000000
--- a/poky/meta/recipes-devtools/ossp-uuid/ossp-uuid_1.6.2.bb
+++ /dev/null
@@ -1,66 +0,0 @@
-SUMMARY = "Universally Unique Identifier (UUID) library"
-DESCRIPTION = "OSSP uuid is a ISO-C:1999 application programming interface \
-(API) and corresponding command line interface (CLI) for the generation of \
-DCE 1.1, ISO/IEC 11578:1996 and RFC 4122 compliant Universally Unique \
-Identifier (UUID). It supports DCE 1.1 variant UUIDs of version 1 (time \
-and node based), version 3 (name based, MD5), version 4 (random number \
-based) and version 5 (name based, SHA-1)."
-DESCRIPTION_uuid = "This package contains a tool to create Universally \
-Unique Identifiers (UUID) from the command-line."
-
-HOMEPAGE = "http://www.ossp.org/pkg/lib/uuid/"
-SECTION = "libs"
-
-LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://README;beginline=30;endline=55;md5=b394fadb039bbfca6ad9d9d769ee960e \
- file://uuid_md5.c;beginline=1;endline=28;md5=9c1f4b2218546deae24c91be1dcf00dd"
-
-PR = "r2"
-UPSTREAM_CHECK_URI = "${DEBIAN_MIRROR}/main/o/ossp-uuid/"
-
-SRC_URI = "http://snapshot.debian.org/archive/debian/20160728T043443Z/pool/main/o/${BPN}/${BPN}_${PV}.orig.tar.gz \
- file://0001-Change-library-name.patch \
- file://0002-uuid-preserve-m-option-status-in-v-option-handling.patch \
- file://0003-Fix-whatis-entries.patch \
- file://0004-fix-data-uuid-from-string.patch \
- file://uuid-libtool.patch \
- file://uuid-nostrip.patch \
- file://install-pc.patch \
- file://ldflags.patch \
- file://libtool-tag.patch \
- "
-SRC_URI[md5sum] = "5db0d43a9022a6ebbbc25337ae28942f"
-SRC_URI[sha256sum] = "11a615225baa5f8bb686824423f50e4427acd3f70d394765bdff32801f0fd5b0"
-
-S = "${WORKDIR}/uuid-${PV}"
-
-inherit autotools update-alternatives
-
-EXTRA_OECONF = "--without-dce --without-cxx --without-perl --without-perl-compat --without-php --without-pgsql"
-EXTRA_OECONF = "--includedir=${includedir}/ossp"
-EXTRA_OEMAKE_class-target = "LIBTOOLFLAGS='--tag=CC'"
-
-do_configure_prepend() {
- # This package has a completely custom aclocal.m4, which should be acinclude.m4.
- if [ ! -e ${S}/acinclude.m4 ]; then
- mv ${S}/aclocal.m4 ${S}/acinclude.m4
- fi
-
- rm -f ${S}/libtool.m4
-}
-
-do_install_append() {
- mkdir -p ${D}${includedir}/ossp
- mv ${D}${libdir}/pkgconfig/uuid.pc ${D}${libdir}/pkgconfig/ossp-uuid.pc
-}
-
-PACKAGES =+ "uuid"
-FILES_uuid = "${bindir}/uuid"
-FILES_${PN} = "${libdir}/libossp-uuid.so.16*"
-FILES_${PN}-dev += "${bindir}/uuid-config"
-
-BBCLASSEXTEND = "native nativesdk"
-
-ALTERNATIVE_${PN}-doc = "uuid.3"
-ALTERNATIVE_PRIORITY_${PN}-doc = "200"
-ALTERNATIVE_LINK_NAME[uuid.3] = "${mandir}/man3/uuid.3"
diff --git a/poky/meta/recipes-devtools/pax-utils/pax-utils_1.2.2.bb b/poky/meta/recipes-devtools/pax-utils/pax-utils_1.2.2.bb
deleted file mode 100644
index 9635a5e70..000000000
--- a/poky/meta/recipes-devtools/pax-utils/pax-utils_1.2.2.bb
+++ /dev/null
@@ -1,36 +0,0 @@
-SUMMARY = "Security-focused ELF files checking tool"
-DESCRIPTION = "This is a small set of various PaX aware and related \
-utilities for ELF binaries. It can check ELF binary files and running \
-processes for issues that might be relevant when using ELF binaries \
-along with PaX, such as non-PIC code or executable stack and heap."
-HOMEPAGE = "http://www.gentoo.org/proj/en/hardened/pax-utils.xml"
-LICENSE = "GPLv2+"
-LIC_FILES_CHKSUM = "file://COPYING;md5=eb723b61539feef013de476e68b5c50a"
-
-SRC_URI = "https://dev.gentoo.org/~vapier/dist/pax-utils-${PV}.tar.xz"
-SRC_URI[md5sum] = "a580468318f0ff42edf4a8cd314cc942"
-SRC_URI[sha256sum] = "7f4a7f8db6b4743adde7582fa48992ad01776796fcde030683732f56221337d9"
-
-RDEPENDS_${PN} += "bash"
-
-export GNULIB_OVERRIDES_WINT_T = "0"
-
-do_configure_prepend() {
- touch ${S}/NEWS ${S}/AUTHORS ${S}/ChangeLog ${S}/README
-}
-
-do_install() {
- oe_runmake PREFIX=${D}${prefix} DESTDIR=${D} install
-}
-
-BBCLASSEXTEND = "native"
-
-inherit autotools pkgconfig
-
-PACKAGECONFIG ??= ""
-
-PACKAGECONFIG[libcap] = "--with-caps, --without-caps, libcap"
-PACKAGECONFIG[libseccomp] = "--with-seccomp, --without-seccomp, libseccomp"
-PACKAGECONFIG[pyelftools] = "--with-python, --without-python,, pyelftools"
-
-EXTRA_OECONF += "--enable-largefile"
diff --git a/poky/meta/recipes-devtools/perl/liberror-perl_0.17025.bb b/poky/meta/recipes-devtools/perl/liberror-perl_0.17026.bb
index f6dc30d07..6f42b4729 100644
--- a/poky/meta/recipes-devtools/perl/liberror-perl_0.17025.bb
+++ b/poky/meta/recipes-devtools/perl/liberror-perl_0.17026.bb
@@ -13,8 +13,8 @@ DEPENDS += "perl"
SRC_URI = "http://cpan.metacpan.org/authors/id/S/SH/SHLOMIF/Error-${PV}.tar.gz"
-SRC_URI[md5sum] = "1a2ee7f0dc44f9ee76661a16bbbc0c48"
-SRC_URI[sha256sum] = "6c9f474ad3d4fe0cabff6b6be532cb1dd348245986d4a6b600ad921d5cfdefaf"
+SRC_URI[md5sum] = "0dcd94640f617df02b6d6c1e4e92018c"
+SRC_URI[sha256sum] = "37590a962cd73ae03470e1ff16459a6cbc5273fc57626b8981dab9c2433155d9"
S = "${WORKDIR}/Error-${PV}"
diff --git a/poky/meta/recipes-devtools/perl/liburi-perl_1.73.bb b/poky/meta/recipes-devtools/perl/liburi-perl_1.74.bb
index 49238f3df..a7cfa0fbe 100644
--- a/poky/meta/recipes-devtools/perl/liburi-perl_1.73.bb
+++ b/poky/meta/recipes-devtools/perl/liburi-perl_1.74.bb
@@ -13,8 +13,8 @@ DEPENDS += "perl"
SRC_URI = "http://www.cpan.org/authors/id/E/ET/ETHER/URI-${PV}.tar.gz"
-SRC_URI[md5sum] = "37d44a08e599aa945b32a9434ffe00a5"
-SRC_URI[sha256sum] = "cca7ab4a6f63f3ccaacae0f2e1337e8edf84137e73f18548ec7d659f23efe413"
+SRC_URI[md5sum] = "892f7183b178af40f205ba37128225db"
+SRC_URI[sha256sum] = "a9c254f45f89cb1dd946b689dfe433095404532a4543bdaab0b71ce0fdcdd53d"
S = "${WORKDIR}/URI-${PV}"
diff --git a/poky/meta/recipes-devtools/perl/libxml-parser-perl_2.44.bb b/poky/meta/recipes-devtools/perl/libxml-parser-perl_2.44.bb
index c5e0ae676..95af4d1de 100644
--- a/poky/meta/recipes-devtools/perl/libxml-parser-perl_2.44.bb
+++ b/poky/meta/recipes-devtools/perl/libxml-parser-perl_2.44.bb
@@ -18,8 +18,15 @@ inherit cpan ptest-perl
# fix up sub MakeMaker project as arguments don't get propagated though
# see https://rt.cpan.org/Public/Bug/Display.html?id=28632
+do_configure_append_class-target() {
+ sed -E \
+ -e 's:-L${STAGING_LIBDIR}::g' -e 's:-I${STAGING_INCDIR}::g' \
+ -i Makefile Expat/Makefile
+}
+
do_configure_append() {
- sed 's:--sysroot=.*\(\s\|$\):--sysroot=${STAGING_DIR_TARGET} :g' -i Makefile Expat/Makefile
+ sed -e 's:--sysroot=.*\(\s\|$\):--sysroot=${STAGING_DIR_TARGET} :g' \
+ -i Makefile Expat/Makefile
sed 's:^FULL_AR = .*:FULL_AR = ${AR}:g' -i Expat/Makefile
# make sure these two do not build in parallel
sed 's!^$(INST_DYNAMIC):!$(INST_DYNAMIC): $(BOOTSTRAP)!' -i Expat/Makefile
diff --git a/poky/meta/recipes-devtools/perl/libxml-simple-perl_2.24.bb b/poky/meta/recipes-devtools/perl/libxml-simple-perl_2.25.bb
index f9d00d2e2..53788d558 100644
--- a/poky/meta/recipes-devtools/perl/libxml-simple-perl_2.24.bb
+++ b/poky/meta/recipes-devtools/perl/libxml-simple-perl_2.25.bb
@@ -7,13 +7,13 @@ where the original uses plain Perl or SAX parsers."
HOMEPAGE = "http://search.cpan.org/~markov/XML-LibXML-Simple-0.93/lib/XML/LibXML/Simple.pod"
SECTION = "libs"
LICENSE = "Artistic-1.0 | GPL-1.0+"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=23477e18a0d04392cdf44ae70e49b495"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=cf206df8c9fe775f1d4c484386491eac"
DEPENDS += "libxml-parser-perl"
SRC_URI = "http://www.cpan.org/modules/by-module/XML/XML-Simple-${PV}.tar.gz"
-SRC_URI[md5sum] = "1cd2e8e3421160c42277523d5b2f4dd2"
-SRC_URI[sha256sum] = "9a14819fd17c75fbb90adcec0446ceab356cab0ccaff870f2e1659205dc2424f"
+SRC_URI[md5sum] = "bb841dce889a26c89a1c2739970e9fbc"
+SRC_URI[sha256sum] = "531fddaebea2416743eb5c4fdfab028f502123d9a220405a4100e68fc480dbf8"
S = "${WORKDIR}/XML-Simple-${PV}"
@@ -21,4 +21,15 @@ EXTRA_PERLFLAGS = "-I ${PERLHOSTLIB}"
inherit cpan ptest-perl
+RDEPENDS_${PN} += " \
+ libxml-namespacesupport-perl \
+ libxml-parser-perl \
+ libxml-sax-perl \
+"
+
+RDEPENDS_${PN}-ptest += " \
+ perl-module-file-temp \
+ perl-module-test-more \
+"
+
BBCLASSEXTEND = "native"
diff --git a/poky/meta/recipes-devtools/perl/perl-native_5.24.1.bb b/poky/meta/recipes-devtools/perl/perl-native_5.24.4.bb
index 71f45890b..81d3fd489 100644
--- a/poky/meta/recipes-devtools/perl/perl-native_5.24.1.bb
+++ b/poky/meta/recipes-devtools/perl/perl-native_5.24.4.bb
@@ -16,10 +16,11 @@ SRC_URI += "\
file://perl-PathTools-don-t-filter-out-blib-from-INC.patch \
file://0001-Configure-Remove-fstack-protector-strong-for-native-.patch \
file://perl-5.26.1-guard_old_libcrypt_fix.patch \
+ file://0001-ExtUtils-MM_Unix.pm-fix-race-issues.patch \
"
-SRC_URI[md5sum] = "af6a84c7c3e2b8b269c105a5db2f6d53"
-SRC_URI[sha256sum] = "03a77bac4505c270f1890ece75afc7d4b555090b41aa41ea478747e23b2afb3f"
+SRC_URI[md5sum] = "04622bc4d3941dc7eb571c52b7c02993"
+SRC_URI[sha256sum] = "7f080287ff64750270689843ae945f02159a33cb8f2fc910248c15befba5db84"
inherit native
@@ -135,5 +136,5 @@ EOF
# Fix the path in sstate
SSTATE_SCAN_FILES += "*.pm *.pod *.h *.pl *.sh"
-PACKAGES_DYNAMIC_class-native += "^perl-module-.*native$"
+PACKAGES_DYNAMIC_class-native = "^perl-module-.*native$"
diff --git a/poky/meta/recipes-devtools/perl/perl-ptest.inc b/poky/meta/recipes-devtools/perl/perl-ptest.inc
index 6a7a2d7cb..8d4644856 100644
--- a/poky/meta/recipes-devtools/perl/perl-ptest.inc
+++ b/poky/meta/recipes-devtools/perl/perl-ptest.inc
@@ -50,7 +50,7 @@ python populate_packages_prepend() {
'${PN}-ptest%s', '%s', recursive=True, match_path=True)
}
-RDEPENDS_${PN}-ptest += "${PN}-modules ${PN}-doc ${PN}-misc sed libssp"
+RDEPENDS_${PN}-ptest += "${PN}-modules ${PN}-doc ${PN}-misc sed"
# The perl-ptest package contains Perl internal modules and generating file
# dependencies for it causes problems.
diff --git a/poky/meta/recipes-devtools/perl/perl-rdepends_5.24.1.inc b/poky/meta/recipes-devtools/perl/perl-rdepends_5.24.4.inc
index 10e3c0429..10e3c0429 100644
--- a/poky/meta/recipes-devtools/perl/perl-rdepends_5.24.1.inc
+++ b/poky/meta/recipes-devtools/perl/perl-rdepends_5.24.4.inc
diff --git a/poky/meta/recipes-devtools/perl/perl/0001-ExtUtils-MM_Unix.pm-fix-race-issues.patch b/poky/meta/recipes-devtools/perl/perl/0001-ExtUtils-MM_Unix.pm-fix-race-issues.patch
new file mode 100644
index 000000000..a43fbba0b
--- /dev/null
+++ b/poky/meta/recipes-devtools/perl/perl/0001-ExtUtils-MM_Unix.pm-fix-race-issues.patch
@@ -0,0 +1,52 @@
+From 40702abf3156fa92ef70ee5d445fe52dd6cfbc7d Mon Sep 17 00:00:00 2001
+From: Robert Yang <liezhi.yang@windriver.com>
+Date: Thu, 20 Sep 2018 18:48:48 +0800
+Subject: [PATCH] ExtUtils/MM_Unix.pm: fix race issues
+
+Fixed a race issue when compile libhtml-parser-perl and others who use MakeMaker:
+[snip]
+chmod 755 blib/arch/auto/HTML/Parser/Parser.so
+chmod 644 "Parser.bs"
+[snip]
+
+The rule INST_DYNAMIC removes '.bs' file which are generated by BOOTSTRAP, but
+the have no dependencies, so there is a race issue:
+
+BOOTSTRAP:
+ touch foo.bs
+ chmod 755 foo.bs
+
+INST_DYNAMIC:
+ rm -fr foo.bs
+
+The error would happen when INST_DYNAMIC removes foo.bs after BOOTSTRAP touched
+it but before chmod on it.
+
+Upstream-Status: Backport [https://github.com/Perl-Toolchain-Gang/ExtUtils-MakeMaker/commit/44e95e717372abe2b0a6ee55de4b686760b65360]
+
+Note, This is not a real backport, upstream has totally refactored it in one
+patch, please see the link above, it's not a good idea to backport such a big
+patch, I just referred it to fix the problem in a simple way. I mark it as
+backport is because we can drop the patch after upgrade perl to 5.26 or 5.28.
+
+Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
+---
+ cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm
+index 95d9761..9cabe2d 100644
+--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm
++++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm
+@@ -933,7 +933,7 @@ OTHERLDFLAGS = '.$ld_opt.$otherldflags.'
+ INST_DYNAMIC_DEP = '.$inst_dynamic_dep.'
+ INST_DYNAMIC_FIX = '.$ld_fix.'
+
+-$(INST_DYNAMIC): $(OBJECT) $(MYEXTLIB) $(INST_ARCHAUTODIR)$(DFSEP).exists $(EXPORT_LIST) $(PERL_ARCHIVEDEP) $(PERL_ARCHIVE_AFTER) $(INST_DYNAMIC_DEP)
++$(INST_DYNAMIC): $(OBJECT) $(MYEXTLIB) $(INST_ARCHAUTODIR)$(DFSEP).exists $(EXPORT_LIST) $(PERL_ARCHIVEDEP) $(PERL_ARCHIVE_AFTER) $(INST_DYNAMIC_DEP) $(BOOTSTRAP)
+ ');
+ if ($armaybe ne ':'){
+ $ldfrom = 'tmp$(LIB_EXT)';
+--
+2.7.4
+
diff --git a/poky/meta/recipes-devtools/perl/perl/CVE-2017-12837.patch b/poky/meta/recipes-devtools/perl/perl/CVE-2017-12837.patch
deleted file mode 100644
index 0b59fcda3..000000000
--- a/poky/meta/recipes-devtools/perl/perl/CVE-2017-12837.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From 73d7247ecab863ef26b5687a37ccc75d6144ad0f Mon Sep 17 00:00:00 2001
-From: Karl Williamson <khw@cpan.org>
-Date: Tue, 17 Oct 2017 13:49:14 +0800
-Subject: [PATCH] fix CVE-2017-12837
-
-Signed-off-by: Karl Williamson <khw@cpan.org>
-Signed-off-by: Steve Hay <steve.m.hay@googlemail.com>
-
-CVE: CVE-2017-12837
-Upstream-Status: Backport
-https://perl5.git.perl.org/perl.git/commitdiff/96c83ed78aeea1a0496dd2b2d935869a822dc8a5
-
-Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
----
- regcomp.c | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/regcomp.c b/regcomp.c
-index 5498d14..31ec383 100644
---- a/regcomp.c
-+++ b/regcomp.c
-@@ -13021,6 +13021,7 @@ S_regatom(pTHX_ RExC_state_t *pRExC_state, I32 *flagp, U32 depth)
- goto loopdone;
- }
- p = RExC_parse;
-+ RExC_parse = parse_start;
- if (ender > 0xff) {
- REQUIRE_UTF8(flagp);
- }
---
-1.8.3.1
-
diff --git a/poky/meta/recipes-devtools/perl/perl/CVE-2017-12883.patch b/poky/meta/recipes-devtools/perl/perl/CVE-2017-12883.patch
deleted file mode 100644
index 5c1805f9e..000000000
--- a/poky/meta/recipes-devtools/perl/perl/CVE-2017-12883.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-From 40b3cdad3649334585cee8f4630ec9a025e62be6 Mon Sep 17 00:00:00 2001
-From: Karl Williamson <khw@cpan.org>
-Date: Fri, 25 Aug 2017 11:33:58 -0600
-Subject: [PATCH] PATCH: [perl #131598]
-
-The cause of this is that the vFAIL macro uses RExC_parse, and that
-variable has just been changed in preparation for code after the vFAIL.
-The solution is to not change RExC_parse until after the vFAIL.
-
-This is a case where the macro hides stuff that can bite you.
-
-(cherry picked from commit 2be4edede4ae226e2eebd4eff28cedd2041f300f)
-
-Upstream-Status: Backport
-CVE: CVE-2017-12833
-Signed-off-by: Armin Kuster <akuster@mvista.com>
-
----
- regcomp.c | 6 ++++--
- 1 file changed, 4 insertions(+), 2 deletions(-)
-
-Index: perl-5.24.1/regcomp.c
-===================================================================
---- perl-5.24.1.orig/regcomp.c
-+++ perl-5.24.1/regcomp.c
-@@ -11918,14 +11918,16 @@ S_grok_bslash_N(pTHX_ RExC_state_t *pREx
- }
- sv_catpv(substitute_parse, ")");
-
-- RExC_parse = RExC_start = RExC_adjusted_start = SvPV(substitute_parse,
-- len);
-+ len = SvCUR(substitute_parse);
-
- /* Don't allow empty number */
- if (len < (STRLEN) 8) {
- RExC_parse = endbrace;
- vFAIL("Invalid hexadecimal number in \\N{U+...}");
- }
-+
-+ RExC_parse = RExC_start = RExC_adjusted_start
-+ = SvPV_nolen(substitute_parse);
- RExC_end = RExC_parse + len;
-
- /* The values are Unicode, and therefore not subject to recoding, but
diff --git a/poky/meta/recipes-devtools/perl/perl/CVE-2018-6797.patch b/poky/meta/recipes-devtools/perl/perl/CVE-2018-6797.patch
deleted file mode 100644
index b56ebd3ea..000000000
--- a/poky/meta/recipes-devtools/perl/perl/CVE-2018-6797.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-From abe1e6c568b96bcb382dfa4f61c56d1ab001ea51 Mon Sep 17 00:00:00 2001
-From: Karl Williamson <khw@cpan.org>
-Date: Fri, 2 Feb 2018 15:14:27 -0700
-Subject: [PATCH] (perl #132227) restart a node if we change to uni rules
- within the node and encounter a sharp S
-
-This could lead to a buffer overflow.
-
-(cherry picked from commit a02c70e35d1313a5f4e245e8f863c810e991172d)
-
-CVE: CVE-2018-6797
-Upstream-Status: Backport [https://perl5.git.perl.org/perl.git/commitdiff/abe1e6c568b96bcb382dfa4f61c56d1ab001ea51]
-
-Signed-off-by: Jagadeesh Krishnanjanappa <jkrishnanjanappa@mvista.com>
----
- regcomp.c | 12 ++++++++++++
- 1 file changed, 12 insertions(+)
-
-diff --git a/regcomp.c b/regcomp.c
-index 3b9550b10d..a7dee9a09e 100644
---- a/regcomp.c
-+++ b/regcomp.c
-@@ -13543,6 +13543,18 @@ S_regatom(pTHX_ RExC_state_t *pRExC_state, I32 *flagp, U32 depth)
- * /u. This includes the multi-char fold SHARP S to
- * 'ss' */
- if (UNLIKELY(ender == LATIN_SMALL_LETTER_SHARP_S)) {
-+
-+ /* If the node started out having uni rules, we
-+ * wouldn't have gotten here. So this means
-+ * something in the middle has changed it, but
-+ * didn't think it needed to reparse. But this
-+ * sharp s now does indicate the need for
-+ * reparsing. */
-+ if (RExC_uni_semantics) {
-+ p = oldp;
-+ goto loopdone;
-+ }
-+
- RExC_seen_unfolded_sharp_s = 1;
- maybe_exactfu = FALSE;
- }
---
-2.15.1-424-g9478a660812
-
-
diff --git a/poky/meta/recipes-devtools/perl/perl/CVE-2018-6798-1.patch b/poky/meta/recipes-devtools/perl/perl/CVE-2018-6798-1.patch
deleted file mode 100644
index 34771624f..000000000
--- a/poky/meta/recipes-devtools/perl/perl/CVE-2018-6798-1.patch
+++ /dev/null
@@ -1,130 +0,0 @@
-From 0abf1e8d89aecd32dbdabda5da4d52a2d57a7cff Mon Sep 17 00:00:00 2001
-From: Karl Williamson <khw@cpan.org>
-Date: Tue, 6 Feb 2018 14:50:48 -0700
-Subject: [PATCH] [perl #132063]: Heap buffer overflow
-
-The proximal cause is several instances in regexec.c of the code
-assuming that the input was valid UTF-8, whereas the input was too short
-for what the start byte claimed it would be.
-
-I grepped through the core for any other similar uses, and did not find
-any.
-
-(cherry picked from commit fe7d8ba0a1bf567af8fa8fea128e2b9f4c553e84)
-
-CVE: CVE-2018-6798
-Upstream-Status: Backport [https://perl5.git.perl.org/perl.git/patch/0abf1e8d89aecd32dbdabda5da4d52a2d57a7cff]
-
-Signed-off-by: Jagadeesh Krishnanjanappa <jkrishnanjanappa@mvista.com>
----
- regexec.c | 29 ++++++++++++++++-------------
- t/lib/warnings/regexec | 7 +++++++
- 2 files changed, 23 insertions(+), 13 deletions(-)
-
-diff --git a/regexec.c b/regexec.c
-index 5735b997fd..ea432c39d3 100644
---- a/regexec.c
-+++ b/regexec.c
-@@ -1466,7 +1466,9 @@ Perl_re_intuit_start(pTHX_
- ? trie_utf8_fold \
- : trie_latin_utf8_fold)))
-
--#define REXEC_TRIE_READ_CHAR(trie_type, trie, widecharmap, uc, uscan, len, uvc, charid, foldlen, foldbuf, uniflags) \
-+/* 'uscan' is set to foldbuf, and incremented, so below the end of uscan is
-+ * 'foldbuf+sizeof(foldbuf)' */
-+#define REXEC_TRIE_READ_CHAR(trie_type, trie, widecharmap, uc, uc_end, uscan, len, uvc, charid, foldlen, foldbuf, uniflags) \
- STMT_START { \
- STRLEN skiplen; \
- U8 flags = FOLD_FLAGS_FULL; \
-@@ -1474,7 +1476,7 @@ STMT_START {
- case trie_flu8: \
- _CHECK_AND_WARN_PROBLEMATIC_LOCALE; \
- if (utf8_target && UTF8_IS_ABOVE_LATIN1(*uc)) { \
-- _CHECK_AND_OUTPUT_WIDE_LOCALE_UTF8_MSG(uc, uc + UTF8SKIP(uc)); \
-+ _CHECK_AND_OUTPUT_WIDE_LOCALE_UTF8_MSG(uc, uc_end - uc); \
- } \
- goto do_trie_utf8_fold; \
- case trie_utf8_exactfa_fold: \
-@@ -1483,7 +1485,7 @@ STMT_START {
- case trie_utf8_fold: \
- do_trie_utf8_fold: \
- if ( foldlen>0 ) { \
-- uvc = utf8n_to_uvchr( (const U8*) uscan, UTF8_MAXLEN, &len, uniflags ); \
-+ uvc = utf8n_to_uvchr( (const U8*) uscan, foldlen, &len, uniflags ); \
- foldlen -= len; \
- uscan += len; \
- len=0; \
-@@ -1500,7 +1502,7 @@ STMT_START {
- /* FALLTHROUGH */ \
- case trie_latin_utf8_fold: \
- if ( foldlen>0 ) { \
-- uvc = utf8n_to_uvchr( (const U8*) uscan, UTF8_MAXLEN, &len, uniflags ); \
-+ uvc = utf8n_to_uvchr( (const U8*) uscan, foldlen, &len, uniflags ); \
- foldlen -= len; \
- uscan += len; \
- len=0; \
-@@ -1519,7 +1521,7 @@ STMT_START {
- } \
- /* FALLTHROUGH */ \
- case trie_utf8: \
-- uvc = utf8n_to_uvchr( (const U8*) uc, UTF8_MAXLEN, &len, uniflags ); \
-+ uvc = utf8n_to_uvchr( (const U8*) uc, uc_end - uc, &len, uniflags ); \
- break; \
- case trie_plain: \
- uvc = (UV)*uc; \
-@@ -2599,10 +2601,10 @@ S_find_byclass(pTHX_ regexp * prog, const regnode *c, char *s,
- }
- points[pointpos++ % maxlen]= uc;
- if (foldlen || uc < (U8*)strend) {
-- REXEC_TRIE_READ_CHAR(trie_type, trie,
-- widecharmap, uc,
-- uscan, len, uvc, charid, foldlen,
-- foldbuf, uniflags);
-+ REXEC_TRIE_READ_CHAR(trie_type, trie, widecharmap, uc,
-+ (U8 *) strend, uscan, len, uvc,
-+ charid, foldlen, foldbuf,
-+ uniflags);
- DEBUG_TRIE_EXECUTE_r({
- dump_exec_pos( (char *)uc, c, strend,
- real_start, s, utf8_target, 0);
-@@ -5511,8 +5513,9 @@ S_regmatch(pTHX_ regmatch_info *reginfo, char *startpos, regnode *prog)
- if ( base && (foldlen || uc < (U8*)(reginfo->strend))) {
- I32 offset;
- REXEC_TRIE_READ_CHAR(trie_type, trie, widecharmap, uc,
-- uscan, len, uvc, charid, foldlen,
-- foldbuf, uniflags);
-+ (U8 *) reginfo->strend, uscan,
-+ len, uvc, charid, foldlen,
-+ foldbuf, uniflags);
- charcount++;
- if (foldlen>0)
- ST.longfold = TRUE;
-@@ -5642,8 +5645,8 @@ S_regmatch(pTHX_ regmatch_info *reginfo, char *startpos, regnode *prog)
- while (foldlen) {
- if (!--chars)
- break;
-- uvc = utf8n_to_uvchr(uscan, UTF8_MAXLEN, &len,
-- uniflags);
-+ uvc = utf8n_to_uvchr(uscan, foldlen, &len,
-+ uniflags);
- uscan += len;
- foldlen -= len;
- }
-diff --git a/t/lib/warnings/regexec b/t/lib/warnings/regexec
-index 900dd6ee7f..6635142dea 100644
---- a/t/lib/warnings/regexec
-+++ b/t/lib/warnings/regexec
-@@ -260,3 +260,10 @@ setlocale(&POSIX::LC_CTYPE, $utf8_locale);
- "k" =~ /(?[ \N{KELVIN SIGN} ])/i;
- ":" =~ /(?[ \: ])/;
- EXPECT
-+########
-+# NAME perl #132063, read beyond buffer end
-+# OPTION fatal
-+"\xff" =~ /(?il)\x{100}|\x{100}/;
-+EXPECT
-+Malformed UTF-8 character: \xff (too short; 1 byte available, need 13) in pattern match (m//) at - line 2.
-+Malformed UTF-8 character (fatal) at - line 2.
---
-2.15.1-424-g9478a660812
-
diff --git a/poky/meta/recipes-devtools/perl/perl/CVE-2018-6798-2.patch b/poky/meta/recipes-devtools/perl/perl/CVE-2018-6798-2.patch
deleted file mode 100644
index fb9b41a5e..000000000
--- a/poky/meta/recipes-devtools/perl/perl/CVE-2018-6798-2.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-From f65da1ca2eee74696d9c120e9d69af37b4fa1920 Mon Sep 17 00:00:00 2001
-From: Tony Cook <tony@develop-help.com>
-Date: Mon, 19 Feb 2018 15:11:42 +1100
-Subject: [PATCH] (perl #132063) we should no longer warn for this code
-
-The first patch for 132063 prevented the buffer read overflow when
-dumping the warning but didn't fix the underlying problem.
-
-The next change treats the supplied buffer correctly, preventing the
-non-UTF-8 SV from being treated as UTF-8, preventing the warning.
-
-(cherry picked from commit 1e8b61488f195e1396aa801c685340b156104f4f)
-
-CVE: CVE-2018-6798
-Upstream-Status: Backport [https://perl5.git.perl.org/perl.git/commitdiff/f65da1ca2eee74696d9c120e9d69af37b4fa1920]
-
-Signed-off-by: Jagadeesh Krishnanjanappa <jkrishnanjanappa@mvista.com>
----
- t/lib/warnings/regexec | 3 ---
- 1 file changed, 3 deletions(-)
-
-diff --git a/t/lib/warnings/regexec b/t/lib/warnings/regexec
-index 6635142dea..c370ddc3c7 100644
---- a/t/lib/warnings/regexec
-+++ b/t/lib/warnings/regexec
-@@ -262,8 +262,5 @@ setlocale(&POSIX::LC_CTYPE, $utf8_locale);
- EXPECT
- ########
- # NAME perl #132063, read beyond buffer end
--# OPTION fatal
- "\xff" =~ /(?il)\x{100}|\x{100}/;
- EXPECT
--Malformed UTF-8 character: \xff (too short; 1 byte available, need 13) in pattern match (m//) at - line 2.
--Malformed UTF-8 character (fatal) at - line 2.
---
-2.15.1-424-g9478a660812
-
diff --git a/poky/meta/recipes-devtools/perl/perl/CVE-2018-6913.patch b/poky/meta/recipes-devtools/perl/perl/CVE-2018-6913.patch
deleted file mode 100644
index 157af7bf9..000000000
--- a/poky/meta/recipes-devtools/perl/perl/CVE-2018-6913.patch
+++ /dev/null
@@ -1,153 +0,0 @@
-From f17fed5006177dce8ac48229c424a2da0d6ba492 Mon Sep 17 00:00:00 2001
-From: Tony Cook <tony@develop-help.com>
-Date: Tue, 8 Aug 2017 09:32:58 +1000
-Subject: [PATCH] (perl #131844) fix various space calculation issues in
- pp_pack.c
-
-- for the originally reported case, if the start/cur pointer is in the
- top 75% of the address space the add (cur) + glen addition would
- overflow, resulting in the condition failing incorrectly.
-
-- the addition of the existing space used to the space needed could
- overflow, resulting in too small an allocation and a buffer overflow.
-
-- the scaling for UTF8 could overflow.
-
-- the multiply to calculate the space needed for many items could
- overflow.
-
-For the first case, do a space calculation without making new pointers.
-
-For the other cases, detect the overflow and croak if there's an
-overflow.
-
-Originally this used Size_t_MAX as the maximum size of a memory
-allocation, but for -DDEBUGGING builds realloc() throws a panic for
-allocations over half the address space in size, changing the error
-reported for the allocation.
-
-For non-DEBUGGING builds the Size_t_MAX limit has the small chance
-of finding a system that has 3GB of contiguous space available, and
-allocating that space, which could be a denial of servce in some cases.
-
-Unfortunately changing the limit to half the address space means that
-the exact case with the original issue can no longer occur, so the
-test is no longer testing against the address + length issue that
-caused the original problem, since the allocation is failing earlier.
-
-One option would be to change the test so the size request by pack is
-just under 2GB, but this has a higher (but still low) probability that
-the system has the address space available, and will actually try to
-allocate the memory, so let's not do that.
-
-Note: changed
-plan tests => 14713;
-to
-plan tests => 14712;
-in a/t/op/pack.t
-to apply this patch on perl 5.24.1.
-
-CVE: CVE-2018-6913
-Upstream-Status: Backport [https://perl5.git.perl.org/perl.git/commitdiff/f17fed5006177dce8ac48229c424a2da0d6ba492]
-
-Signed-off-by: Jagadeesh Krishnanjanappa <jkrishnanjanappa@mvista.com>
----
- pp_pack.c | 25 +++++++++++++++++++++----
- t/op/pack.t | 24 +++++++++++++++++++++++-
- 2 files changed, 44 insertions(+), 5 deletions(-)
-
-diff --git a/pp_pack.c b/pp_pack.c
-index 8937d6d715..5e9cc64301 100644
---- a/pp_pack.c
-+++ b/pp_pack.c
-@@ -357,11 +357,28 @@ STMT_START { \
- } \
- } STMT_END
-
-+#define SAFE_UTF8_EXPAND(var) \
-+STMT_START { \
-+ if ((var) > SSize_t_MAX / UTF8_EXPAND) \
-+ Perl_croak(aTHX_ "%s", "Out of memory during pack()"); \
-+ (var) = (var) * UTF8_EXPAND; \
-+} STMT_END
-+
-+#define GROWING2(utf8, cat, start, cur, item_size, item_count) \
-+STMT_START { \
-+ if (SSize_t_MAX / (item_size) < (item_count)) \
-+ Perl_croak(aTHX_ "%s", "Out of memory during pack()"); \
-+ GROWING((utf8), (cat), (start), (cur), (item_size) * (item_count)); \
-+} STMT_END
-+
- #define GROWING(utf8, cat, start, cur, in_len) \
- STMT_START { \
- STRLEN glen = (in_len); \
-- if (utf8) glen *= UTF8_EXPAND; \
-- if ((cur) + glen >= (start) + SvLEN(cat)) { \
-+ STRLEN catcur = (STRLEN)((cur) - (start)); \
-+ if (utf8) SAFE_UTF8_EXPAND(glen); \
-+ if (SSize_t_MAX - glen < catcur) \
-+ Perl_croak(aTHX_ "%s", "Out of memory during pack()"); \
-+ if (catcur + glen >= SvLEN(cat)) { \
- (start) = sv_exp_grow(cat, glen); \
- (cur) = (start) + SvCUR(cat); \
- } \
-@@ -372,7 +389,7 @@ STMT_START { \
- STMT_START { \
- const STRLEN glen = (in_len); \
- STRLEN gl = glen; \
-- if (utf8) gl *= UTF8_EXPAND; \
-+ if (utf8) SAFE_UTF8_EXPAND(gl); \
- if ((cur) + gl >= (start) + SvLEN(cat)) { \
- *cur = '\0'; \
- SvCUR_set((cat), (cur) - (start)); \
-@@ -2126,7 +2143,7 @@ S_pack_rec(pTHX_ SV *cat, tempsym_t* sym
- if (props && !(props & PACK_SIZE_UNPREDICTABLE)) {
- /* We can process this letter. */
- STRLEN size = props & PACK_SIZE_MASK;
-- GROWING(utf8, cat, start, cur, (STRLEN) len * size);
-+ GROWING2(utf8, cat, start, cur, size, (STRLEN)len);
- }
- }
-
-diff --git a/t/op/pack.t b/t/op/pack.t
-index 664aaaf1b0..cf0e286509 100644
---- a/t/op/pack.t
-+++ b/t/op/pack.t
-@@ -12,7 +12,7 @@ my $no_endianness = $] > 5.009 ? '' :
- my $no_signedness = $] > 5.009 ? '' :
- "Signed/unsigned pack modifiers not available on this perl";
-
--plan tests => 14712;
-+plan tests => 14717;
-
- use strict;
- use warnings qw(FATAL all);
-@@ -2044,3 +2044,25 @@ ok(1, "argument underflow did not crash"
- is(pack("H40", $up_nul), $twenty_nuls,
- "check pack H zero fills (utf8 source)");
- }
-+
-+SKIP:
-+{
-+ # [perl #131844] pointer addition overflow
-+ $Config{ptrsize} == 4
-+ or skip "[perl #131844] need 32-bit build for this test", 4;
-+ # prevent ASAN just crashing on the allocation failure
-+ local $ENV{ASAN_OPTIONS} = $ENV{ASAN_OPTIONS};
-+ $ENV{ASAN_OPTIONS} .= ",allocator_may_return_null=1";
-+ fresh_perl_like('pack "f999999999"', qr/Out of memory during pack/, { stderr => 1 },
-+ "pointer addition overflow");
-+
-+ # integer (STRLEN) overflow from addition of glen to current length
-+ fresh_perl_like('pack "c10f1073741823"', qr/Out of memory during pack/, { stderr => 1 },
-+ "integer overflow calculating allocation (addition)");
-+
-+ fresh_perl_like('pack "W10f536870913", 256', qr/Out of memory during pack/, { stderr => 1 },
-+ "integer overflow calculating allocation (utf8)");
-+
-+ fresh_perl_like('pack "c10f1073741824"', qr/Out of memory during pack/, { stderr => 1 },
-+ "integer overflow calculating allocation (multiply)");
-+}
---
-2.15.1-424-g9478a660812
-
diff --git a/poky/meta/recipes-devtools/perl/perl/Makefile.SH.patch b/poky/meta/recipes-devtools/perl/perl/Makefile.SH.patch
index c1db335e0..e4c3426b7 100644
--- a/poky/meta/recipes-devtools/perl/perl/Makefile.SH.patch
+++ b/poky/meta/recipes-devtools/perl/perl/Makefile.SH.patch
@@ -12,10 +12,10 @@ Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Makefile.SH | 147 ++++++++++++++++++++++++++++--------------------------------
1 file changed, 68 insertions(+), 79 deletions(-)
-Index: perl-5.24.1/Makefile.SH
+Index: perl-5.24.4/Makefile.SH
===================================================================
---- perl-5.24.1.orig/Makefile.SH
-+++ perl-5.24.1/Makefile.SH
+--- perl-5.24.4.orig/Makefile.SH
++++ perl-5.24.4/Makefile.SH
@@ -48,10 +48,10 @@ case "$useshrplib" in
true)
# Prefix all runs of 'miniperl' and 'perl' with
@@ -271,9 +271,9 @@ Index: perl-5.24.1/Makefile.SH
$(MINIPERL) autodoc.pl
pod/perlmodlib.pod: $(MINIPERL_EXE) pod/perlmodlib.PL MANIFEST
-@@ -1089,7 +1099,7 @@ pod/perl5241delta.pod: pod/perldelta.pod
- $(RMS) pod/perl5241delta.pod
- $(LNS) perldelta.pod pod/perl5241delta.pod
+@@ -1089,7 +1099,7 @@ pod/perl5244delta.pod: pod/perldelta.pod
+ $(RMS) pod/perl5244delta.pod
+ $(LNS) perldelta.pod pod/perl5244delta.pod
-extra.pods: $(MINIPERL_EXE)
+extra.pods:
diff --git a/poky/meta/recipes-devtools/perl/perl/config.sh b/poky/meta/recipes-devtools/perl/perl/config.sh
index ac0484ca6..b1b5834c7 100644
--- a/poky/meta/recipes-devtools/perl/perl/config.sh
+++ b/poky/meta/recipes-devtools/perl/perl/config.sh
@@ -14,7 +14,7 @@
: Configure command line arguments.
config_arg0='Configure'
-config_args='-des -Doptimize=-O2 -Dmyhostname=localhost -Dperladmin=root@localhost -Dcc=gcc -Dcf_by=Open Embedded -Dinstallprefix=@EXECPREFIX@ -Dprefix=@EXECPREFIX@ -Dvendorprefix=@EXECPREFIX@ -Dsiteprefix=@EXECPREFIX@ -Dotherlibdirs=@LIBDIR@/perl/5.24.1 -Duseshrplib -Dusethreads -Duseithreads -Duselargefiles -Ud_dosuid -Dd_semctl_semun -Ui_db -Ui_ndbm -Ui_gdbm -Di_shadow -Di_syslog -Dman3ext=3pm -Duseperlio -Dinstallusrbinperl -Ubincompat5005 -Uversiononly -Dpager=@USRBIN@/less -isr'
+config_args='-des -Doptimize=-O2 -Dmyhostname=localhost -Dperladmin=root@localhost -Dcc=gcc -Dcf_by=Open Embedded -Dinstallprefix=@EXECPREFIX@ -Dprefix=@EXECPREFIX@ -Dvendorprefix=@EXECPREFIX@ -Dsiteprefix=@EXECPREFIX@ -Dotherlibdirs=@LIBDIR@/perl/5.24.4 -Duseshrplib -Dusethreads -Duseithreads -Duselargefiles -Ud_dosuid -Dd_semctl_semun -Ui_db -Ui_ndbm -Ui_gdbm -Di_shadow -Di_syslog -Dman3ext=3pm -Duseperlio -Dinstallusrbinperl -Ubincompat5005 -Uversiononly -Dpager=@USRBIN@/less -isr'
config_argc=28
config_arg1='-des'
config_arg2='-Doptimize=-O2'
@@ -26,7 +26,7 @@ config_arg7='-Dinstallprefix=@EXECPREFIX@'
config_arg8='-Dprefix=@EXECPREFIX@'
config_arg9='-Dvendorprefix=@EXECPREFIX@'
config_arg10='-Dsiteprefix=@EXECPREFIX@'
-config_arg11='-Dotherlibdirs=@LIBDIR@/perl/5.24.1'
+config_arg11='-Dotherlibdirs=@LIBDIR@/perl/5.24.4'
config_arg12='-Duseshrplib'
config_arg13='-Dusethreads'
config_arg14='-Duseithreads'
@@ -64,13 +64,13 @@ alignbytes='8'
ansi2knr=''
aphostname=''
api_revision='5'
-api_subversion='1'
+api_subversion='4'
api_version='24'
-api_versionstring='5.24.1'
+api_versionstring='5.24.4'
ar='ar'
-archlib='@LIBDIR@/perl/5.24.1/@ARCH@-thread-multi'
-archlibexp='@STAGINGDIR@@LIBDIR@/perl/5.24.1/@ARCH@-thread-multi'
-archlib_exp='@LIBDIR@/perl/5.24.1/@ARCH@-thread-multi'
+archlib='@LIBDIR@/perl/5.24.4/@ARCH@-thread-multi'
+archlibexp='@STAGINGDIR@@LIBDIR@/perl/5.24.4/@ARCH@-thread-multi'
+archlib_exp='@LIBDIR@/perl/5.24.4/@ARCH@-thread-multi'
archname64=''
archname='@ARCH@-thread-multi'
archobjs=''
@@ -88,7 +88,7 @@ castflags='0'
cat='cat'
cc='gcc'
cccdlflags='-fPIC'
-ccdlflags='-Wl,-E -Wl,-rpath,@LIBDIR@/perl/5.24.1/@ARCH@-thread-multi/CORE'
+ccdlflags='-Wl,-E -Wl,-rpath,@LIBDIR@/perl/5.24.4/@ARCH@-thread-multi/CORE'
ccflags='-D_REENTRANT -D_GNU_SOURCE -fwrapv -fno-strict-aliasing -pipe -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2'
ccflags_uselargefiles='-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64'
ccname='gcc'
@@ -838,7 +838,7 @@ inc_version_list_init='0'
incpath=''
inews=''
initialinstalllocation='@USRBIN@'
-installarchlib='@LIBDIR@/perl/5.24.1/@ARCH@-thread-multi'
+installarchlib='@LIBDIR@/perl/5.24.4/@ARCH@-thread-multi'
installbin='@USRBIN@'
installhtml1dir=''
installhtml3dir=''
@@ -846,23 +846,23 @@ installman1dir=''
installman3dir=''
installprefix='@EXECPREFIX@'
installprefixexp='@EXECPREFIX@'
-installprivlib='@LIBDIR@/perl/5.24.1'
+installprivlib='@LIBDIR@/perl/5.24.4'
installscript='@USRBIN@'
-installsitearch='@LIBDIR@/perl/site_perl/5.24.1/@ARCH@-thread-multi'
+installsitearch='@LIBDIR@/perl/site_perl/5.24.4/@ARCH@-thread-multi'
installsitebin='@USRBIN@'
installsitehtml1dir=''
installsitehtml3dir=''
-installsitelib='@LIBDIR@/perl/site_perl/5.24.1'
+installsitelib='@LIBDIR@/perl/site_perl/5.24.4'
installsiteman1dir=''
installsiteman3dir=''
installsitescript='@USRBIN@'
installstyle='lib/perl'
installusrbinperl='define'
-installvendorarch='@LIBDIR@/perl/vendor_perl/5.24.1/@ARCH@-thread-multi'
+installvendorarch='@LIBDIR@/perl/vendor_perl/5.24.4/@ARCH@-thread-multi'
installvendorbin='@USRBIN@'
installvendorhtml1dir=''
installvendorhtml3dir=''
-installvendorlib='@LIBDIR@/perl/vendor_perl/5.24.1'
+installvendorlib='@LIBDIR@/perl/vendor_perl/5.24.4'
installvendorman1dir=''
installvendorman3dir=''
installvendorscript='@USRBIN@'
@@ -965,7 +965,7 @@ optimize='-O2'
orderlib='false'
osname='linux'
osvers='3.19.5-yocto-standard'
-otherlibdirs='@LIBDIR@/perl/5.24.1'
+otherlibdirs='@LIBDIR@/perl/5.24.4'
package='perl'
pager='/usr/bin/less -isr'
passcat='cat /etc/passwd'
@@ -986,8 +986,8 @@ pmake=''
pr=''
prefix='@EXECPREFIX@'
prefixexp='@EXECPREFIX@'
-privlib='@LIBDIR@/perl/5.24.1'
-privlibexp='@LIBDIR@/perl/5.24.1'
+privlib='@LIBDIR@/perl/5.24.4'
+privlibexp='@LIBDIR@/perl/5.24.4'
procselfexe='"/proc/self/exe"'
prototype='define'
ptrsize='8'
@@ -1053,17 +1053,17 @@ sig_num='0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
sig_num_init='0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 6, 17, 29, 31, 0'
sig_size='69'
signal_t='void'
-sitearch='@LIBDIR@/perl/site_perl/5.24.1/@ARCH@-thread-multi'
-sitearchexp='@LIBDIR@/perl/site_perl/5.24.1/@ARCH@-thread-multi'
+sitearch='@LIBDIR@/perl/site_perl/5.24.4/@ARCH@-thread-multi'
+sitearchexp='@LIBDIR@/perl/site_perl/5.24.4/@ARCH@-thread-multi'
sitebin='@USRBIN@'
sitebinexp='@USRBIN@'
sitehtml1dir=''
sitehtml1direxp=''
sitehtml3dir=''
sitehtml3direxp=''
-sitelib='@LIBDIR@/perl/site_perl/5.24.1'
+sitelib='@LIBDIR@/perl/site_perl/5.24.4'
sitelib_stem='@LIBDIR@/perl/site_perl'
-sitelibexp='@LIBDIR@/perl/site_perl/5.24.1'
+sitelibexp='@LIBDIR@/perl/site_perl/5.24.4'
siteman1dir=''
siteman1direxp=''
siteman3dir=''
@@ -1102,7 +1102,7 @@ stdio_stream_array=''
strerror_r_proto='REENTRANT_PROTO_B_IBW'
strings='@INCLUDEDIR@/string.h'
submit=''
-subversion='1'
+subversion='4'
sysman='@EXECPREFIX@/share/man/man1'
sysroot=''
tail=''
@@ -1182,17 +1182,17 @@ uvtype='unsigned long'
uvuformat='"lu"'
uvxformat='"lx"'
vaproto='define'
-vendorarch='@LIBDIR@/perl/vendor_perl/5.24.1/@ARCH@-thread-multi'
-vendorarchexp='@LIBDIR@/perl/vendor_perl/5.24.1/@ARCH@-thread-multi'
+vendorarch='@LIBDIR@/perl/vendor_perl/5.24.4/@ARCH@-thread-multi'
+vendorarchexp='@LIBDIR@/perl/vendor_perl/5.24.4/@ARCH@-thread-multi'
vendorbin='@USRBIN@'
vendorbinexp='@USRBIN@'
vendorhtml1dir=' '
vendorhtml1direxp=''
vendorhtml3dir=' '
vendorhtml3direxp=''
-vendorlib='@LIBDIR@/perl/vendor_perl/5.24.1'
+vendorlib='@LIBDIR@/perl/vendor_perl/5.24.4'
vendorlib_stem='@LIBDIR@/perl/vendor_perl'
-vendorlibexp='@LIBDIR@/perl/vendor_perl/5.24.1'
+vendorlibexp='@LIBDIR@/perl/vendor_perl/5.24.4'
vendorman1dir=' '
vendorman1direxp=''
vendorman3dir=' '
@@ -1201,8 +1201,8 @@ vendorprefix='@EXECPREFIX@'
vendorprefixexp='@EXECPREFIX@'
vendorscript='@USRBIN@'
vendorscriptexp='@USRBIN@'
-version='5.24.1'
-version_patchlevel_string='version 24 subversion 1'
+version='5.24.4'
+version_patchlevel_string='version 24 subversion 4'
versiononly='undef'
vi=''
xlibpth='@LIBDIR@/386 @BASELIBDIR@386'
@@ -1212,10 +1212,10 @@ zcat=''
zip='zip'
PERL_REVISION=5
PERL_VERSION=24
-PERL_SUBVERSION=1
+PERL_SUBVERSION=4
PERL_API_REVISION=5
PERL_API_VERSION=24
-PERL_API_SUBVERSION=1
+PERL_API_SUBVERSION=4
PERL_PATCHLEVEL=''
PERL_CONFIG_SH=true
: Variables propagated from previous config.sh file.
diff --git a/poky/meta/recipes-devtools/perl/perl_5.24.1.bb b/poky/meta/recipes-devtools/perl/perl_5.24.4.bb
index 6e33bb066..a64497019 100644
--- a/poky/meta/recipes-devtools/perl/perl_5.24.1.bb
+++ b/poky/meta/recipes-devtools/perl/perl_5.24.4.bb
@@ -63,13 +63,8 @@ SRC_URI += " \
file://perl-errno-generation-gcc5.patch \
file://perl-fix-conflict-between-skip_all-and-END.patch \
file://perl-5.26.1-guard_old_libcrypt_fix.patch \
- file://CVE-2017-12883.patch \
- file://CVE-2017-12837.patch \
- file://CVE-2018-6798-1.patch \
- file://CVE-2018-6798-2.patch \
- file://CVE-2018-6797.patch \
- file://CVE-2018-6913.patch \
file://CVE-2018-12015.patch \
+ file://0001-ExtUtils-MM_Unix.pm-fix-race-issues.patch \
"
# Fix test case issues
@@ -79,8 +74,8 @@ SRC_URI_append_class-target = " \
file://0001-Skip-various-tests-if-PERL_BUILD_PACKAGING-is-set.patch \
"
-SRC_URI[md5sum] = "af6a84c7c3e2b8b269c105a5db2f6d53"
-SRC_URI[sha256sum] = "03a77bac4505c270f1890ece75afc7d4b555090b41aa41ea478747e23b2afb3f"
+SRC_URI[md5sum] = "04622bc4d3941dc7eb571c52b7c02993"
+SRC_URI[sha256sum] = "7f080287ff64750270689843ae945f02159a33cb8f2fc910248c15befba5db84"
inherit perlnative siteinfo
@@ -151,7 +146,6 @@ do_configure() {
-e "s,\(i_fcntl=\)'undef',\1'define',g" \
-e "s,\(h_fcntl=\)'false',\1'true',g" \
-e "s,-fstack-protector,-fno-stack-protector,g" \
- -e "s,-lnsl,,g" \
config.sh-${TARGET_ARCH}-${TARGET_OS}
fi
@@ -164,6 +158,7 @@ do_configure() {
-e "s,@BASELIBDIR@,${base_libdir},g" \
-e "s,@EXECPREFIX@,${exec_prefix},g" \
-e 's,@USRBIN@,${bindir},g' \
+ -e "s,-lnsl,,g" \
config.sh-${TARGET_ARCH}-${TARGET_OS}
case "${TARGET_ARCH}" in
@@ -346,7 +341,7 @@ python split_perl_packages () {
}
PACKAGES_DYNAMIC += "^perl-module-.*(?<!\-native)$"
-PACKAGES_DYNAMIC_class-nativesdk += "^nativesdk-perl-module-.*"
+PACKAGES_DYNAMIC_class-nativesdk = "^nativesdk-perl-module-.*"
RPROVIDES_perl-lib = "perl-lib"
diff --git a/poky/meta/recipes-devtools/pkgconf/pkgconf_1.4.2.bb b/poky/meta/recipes-devtools/pkgconf/pkgconf_1.5.3.bb
index ea7b66602..415478d5c 100644
--- a/poky/meta/recipes-devtools/pkgconf/pkgconf_1.4.2.bb
+++ b/poky/meta/recipes-devtools/pkgconf/pkgconf_1.5.3.bb
@@ -21,10 +21,10 @@ SRC_URI = "\
file://pkg-config-native.in \
file://pkg-config-esdk.in \
"
-SRC_URI[md5sum] = "678d242b4eef1754bba6a58642af10bb"
-SRC_URI[sha256sum] = "bab39371d4ab972be1d539a8b10b6cc21f8eafc97f617102e667e82bd32eb234"
+SRC_URI[md5sum] = "c21743bca14c882c0f282746168a5edc"
+SRC_URI[sha256sum] = "d3468308553c94389dadfd10c4d1067269052b5364276a9d24a643c88485f715"
-inherit autotools update-alternatives
+inherit autotools
EXTRA_OECONF += "--with-pkg-config-dir='${libdir}/pkgconfig:${datadir}/pkgconfig'"
@@ -46,8 +46,6 @@ do_install_append_class-native () {
install -m755 ${B}/pkg-config-esdk ${D}${bindir}/pkg-config-esdk
}
-ALTERNATIVE_${PN} = "pkg-config"
-
# When using the RPM generated automatic package dependencies, some packages
# will end up requiring 'pkgconfig(pkg-config)'. Allow this behavior by
# specifying an appropriate provide.
diff --git a/poky/meta/recipes-devtools/prelink/prelink/0001-src-arch-mips.c-check-info-resolvetls-before-use-its.patch b/poky/meta/recipes-devtools/prelink/prelink/0001-src-arch-mips.c-check-info-resolvetls-before-use-its.patch
new file mode 100644
index 000000000..b1688243a
--- /dev/null
+++ b/poky/meta/recipes-devtools/prelink/prelink/0001-src-arch-mips.c-check-info-resolvetls-before-use-its.patch
@@ -0,0 +1,51 @@
+From 2136969e3e196b9cf7f4788340efa4b1d9b39565 Mon Sep 17 00:00:00 2001
+From: Robert Yang <liezhi.yang@windriver.com>
+Date: Thu, 11 Oct 2018 10:05:52 +0800
+Subject: [PATCH] src/arch-mips.c: check info->resolvetls before use its member
+
+The info->resolvetls might be NULL according to src/prelink.c:
+[snip]
+ /* Dynamic linker does not depend on any other library,
+ all symbols resolve to themselves with the exception
+ of SHN_UNDEF symbols which resolve to 0. */
+if (info->symtab[r_sym].st_shndx == SHN_UNDEF)
+ {
+ info->resolveent = NULL;
+ info->resolvetls = NULL;
+[snip]
+
+So we must check it before use its members, otherwise, there might be
+Segmentation fault error.
+
+Fixed:
+MACHINE = "qemumips"
+IMAGE_INSTALL_append = " qemu"
+$ bitbake core-image-minimal
+[snip]
+| /path/to/qemumips-poky-linux/core-image-minimal/1.0-r0/temp/run.prelink_image.1000: line 111: 1010 Segmentation fault (core dumped)
+[snip]
+
+Upstream-Status: Submitted [https://lists.yoctoproject.org/pipermail/yocto/2018-October/042812.html]
+
+Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
+---
+ src/arch-mips.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/src/arch-mips.c b/src/arch-mips.c
+index ccb1834..02c608f 100644
+--- a/src/arch-mips.c
++++ b/src/arch-mips.c
+@@ -567,7 +567,8 @@ mips_prelink_reloc (struct prelink_info *info, GElf_Addr r_offset,
+ if (dso->ehdr.e_type == ET_EXEC)
+ {
+ value = info->resolve (info, r_sym, r_type);
+- value += info->resolvetls->offset - TLS_TP_OFFSET;
++ if (info->resolvetls != NULL)
++ value += info->resolvetls->offset - TLS_TP_OFFSET;
+ if (r_type == R_MIPS_TLS_TPREL32)
+ mips_prelink_32bit_reloc (dso, rela, value);
+ else
+--
+2.7.4
+
diff --git a/poky/meta/recipes-devtools/prelink/prelink_git.bb b/poky/meta/recipes-devtools/prelink/prelink_git.bb
index 0f6d16e00..b1261d594 100644
--- a/poky/meta/recipes-devtools/prelink/prelink_git.bb
+++ b/poky/meta/recipes-devtools/prelink/prelink_git.bb
@@ -9,7 +9,7 @@ and executables, so that far fewer relocations need to be resolved at \
runtime and thus programs come up faster."
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=c93c0550bd3173f4504b2cbd8991e50b"
-SRCREV = "05aeafd053e56356ec8c62f4bb8f7b95bae192f3"
+SRCREV = "a853a5d715d84eec93aa68e8f2df26b7d860f5b2"
PV = "1.0+git${SRCPV}"
#
@@ -27,11 +27,13 @@ FILES_${PN}-cron = "${sysconfdir}/cron.daily ${sysconfdir}/default"
PACKAGES =+ "${PN}-cron"
-SRC_URI = "git://git.yoctoproject.org/prelink-cross.git;branch=cross_prelink \
+SRC_URI = "git://git.yoctoproject.org/prelink-cross.git;branch=cross_prelink_staging \
file://prelink.conf \
file://prelink.cron.daily \
file://prelink.default \
- file://macros.prelink"
+ file://macros.prelink \
+ file://0001-src-arch-mips.c-check-info-resolvetls-before-use-its.patch \
+"
UPSTREAM_CHECK_COMMITS = "1"
TARGET_OS_ORIG := "${TARGET_OS}"
diff --git a/poky/meta/recipes-devtools/pseudo/pseudo_git.bb b/poky/meta/recipes-devtools/pseudo/pseudo_git.bb
index 9103d4911..79e0b6bd2 100644
--- a/poky/meta/recipes-devtools/pseudo/pseudo_git.bb
+++ b/poky/meta/recipes-devtools/pseudo/pseudo_git.bb
@@ -8,7 +8,7 @@ SRC_URI = "git://git.yoctoproject.org/pseudo \
file://toomanyfiles.patch \
"
-SRCREV = "fddbe854c9db058d5a05830d3bcdd4233d95ee2e"
+SRCREV = "6294b344e5140f5467e6860f45a174440015304e"
S = "${WORKDIR}/git"
PV = "1.9.0+git${SRCPV}"
diff --git a/poky/meta/recipes-devtools/python-numpy/python-numpy.inc b/poky/meta/recipes-devtools/python-numpy/python-numpy.inc
index 284f21368..1b51f7baa 100644
--- a/poky/meta/recipes-devtools/python-numpy/python-numpy.inc
+++ b/poky/meta/recipes-devtools/python-numpy/python-numpy.inc
@@ -10,8 +10,8 @@ SRC_URI = "https://github.com/${SRCNAME}/${SRCNAME}/releases/download/v${PV}/${S
file://fix_shebang_f2py.patch \
file://0001-npy_cpu-Add-riscv-support.patch \
${CONFIGFILESURI} "
-SRC_URI[md5sum] = "e39878fafb11828983aeec583dda4a06"
-SRC_URI[sha256sum] = "ddbcda194f49e0cf0663fa8131cb9d7a3b876d14dea0047d3c5fdfaf20adbb40"
+SRC_URI[md5sum] = "e3189ee851c3a0e2e6e4c6e80a711ec8"
+SRC_URI[sha256sum] = "1b4a02758fb68a65ea986d808867f1d6383219c234aef553a8741818e795b529"
UPSTREAM_CHECK_URI = "https://github.com/numpy/numpy/releases"
UPSTREAM_CHECK_REGEX = "(?P<pver>\d+(\.\d+)+)\.tar"
@@ -77,6 +77,8 @@ CONFIGFILESURI_riscv64 = " \
S = "${WORKDIR}/numpy-${PV}"
+CLEANBROKEN = "1"
+
# Make the build fail and replace *config.h with proper one
# This is a ugly, ugly hack - Koen
do_compile_prepend_class-target() {
diff --git a/poky/meta/recipes-devtools/python-numpy/python-numpy_1.14.2.bb b/poky/meta/recipes-devtools/python-numpy/python-numpy_1.14.5.bb
index 50137895c..50137895c 100644
--- a/poky/meta/recipes-devtools/python-numpy/python-numpy_1.14.2.bb
+++ b/poky/meta/recipes-devtools/python-numpy/python-numpy_1.14.5.bb
diff --git a/poky/meta/recipes-devtools/python-numpy/python3-numpy_1.14.2.bb b/poky/meta/recipes-devtools/python-numpy/python3-numpy_1.14.5.bb
index 915e6f8c2..915e6f8c2 100644
--- a/poky/meta/recipes-devtools/python-numpy/python3-numpy_1.14.2.bb
+++ b/poky/meta/recipes-devtools/python-numpy/python3-numpy_1.14.5.bb
diff --git a/poky/meta/recipes-devtools/python/files/0001-conditionally-do-not-fetch-code-by-easy_install.patch b/poky/meta/recipes-devtools/python/files/0001-conditionally-do-not-fetch-code-by-easy_install.patch
new file mode 100644
index 000000000..4b1792188
--- /dev/null
+++ b/poky/meta/recipes-devtools/python/files/0001-conditionally-do-not-fetch-code-by-easy_install.patch
@@ -0,0 +1,34 @@
+From 019422d19c6401fa8f45b1311ecd31bb087c809d Mon Sep 17 00:00:00 2001
+From: Hongxu Jia <hongxu.jia@windriver.com>
+Date: Tue, 17 Jul 2018 10:13:38 +0800
+Subject: [PATCH] conditionally do not fetch code by easy_install
+
+If var-NO_FETCH_BUILD is set, do not allow to fetch code from
+internet by easy_install.
+
+Upstream-Status: Inappropriate [oe specific]
+
+Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
+---
+ setuptools/command/easy_install.py | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+diff --git a/setuptools/command/easy_install.py b/setuptools/command/easy_install.py
+index 85ee40f..7eb9d2a 100755
+--- a/setuptools/command/easy_install.py
++++ b/setuptools/command/easy_install.py
+@@ -637,6 +637,11 @@ class easy_install(Command):
+ os.path.exists(tmpdir) and rmtree(rmtree_safe(tmpdir))
+
+ def easy_install(self, spec, deps=False):
++ if os.environ.get('NO_FETCH_BUILD', None):
++ log.error("ERROR: Do not try to fetch `%s' for building. "
++ "Please add its native recipe to DEPENDS." % spec)
++ return None
++
+ if not self.editable:
+ self.install_site_py()
+
+--
+2.7.4
+
diff --git a/poky/meta/recipes-devtools/python/python-extras.inc b/poky/meta/recipes-devtools/python/python-extras.inc
new file mode 100644
index 000000000..b5e11b711
--- /dev/null
+++ b/poky/meta/recipes-devtools/python/python-extras.inc
@@ -0,0 +1,12 @@
+SUMMARY = "Useful extra bits for Python - things that should be in the standard library"
+HOMEPAGE = "https://pypi.python.org/pypi/extras/"
+SECTION = "devel/python"
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=6d108f338b2f68fe48ac366c4650bd8b"
+
+inherit pypi
+
+SRC_URI[md5sum] = "3a63ad60cf8f0186c9e3a02f55ec5b14"
+SRC_URI[sha256sum] = "132e36de10b9c91d5d4cc620160a476e0468a88f16c9431817a6729611a81b4e"
+
+BBCLASSEXTEND = "nativesdk"
diff --git a/poky/meta/recipes-devtools/python/python-git.inc b/poky/meta/recipes-devtools/python/python-git.inc
index 8d3769396..7ccf1686f 100644
--- a/poky/meta/recipes-devtools/python/python-git.inc
+++ b/poky/meta/recipes-devtools/python/python-git.inc
@@ -12,8 +12,8 @@ PYPI_PACKAGE = "GitPython"
inherit pypi
-SRC_URI[md5sum] = "7a94ee1b923fb772a2a0c6649430a17c"
-SRC_URI[sha256sum] = "ad61bc25deadb535b047684d06f3654c001d9415e1971e51c9c20f5b510076e9"
+SRC_URI[md5sum] = "cee43a39a1468084d49d1c49fb675204"
+SRC_URI[sha256sum] = "8237dc5bfd6f1366abeee5624111b9d6879393d84745a507de0fda86043b65a8"
DEPENDS = "${PYTHON_PN}-gitdb"
diff --git a/poky/meta/recipes-devtools/python/python-gitdb.inc b/poky/meta/recipes-devtools/python/python-gitdb.inc
index 2d5292e5d..789ab959f 100644
--- a/poky/meta/recipes-devtools/python/python-gitdb.inc
+++ b/poky/meta/recipes-devtools/python/python-gitdb.inc
@@ -8,8 +8,8 @@ inherit pypi
PYPI_PACKAGE = "gitdb2"
-SRC_URI[md5sum] = "d5217eb94ebd36fcec62b929d1f72b00"
-SRC_URI[sha256sum] = "b60e29d4533e5e25bb50b7678bbc187c8f6bcff1344b4f293b2ba55c85795f09"
+SRC_URI[md5sum] = "6e21f5795a204f7afecb0a72fff66932"
+SRC_URI[sha256sum] = "bb4c85b8a58531c51373c89f92163b92f30f81369605a67cd52d1fc21246c044"
DEPENDS = "${PYTHON_PN}-async ${PYTHON_PN}-setuptools-native ${PYTHON_PN}-smmap"
diff --git a/poky/meta/recipes-devtools/python/python-pbr.inc b/poky/meta/recipes-devtools/python/python-pbr.inc
new file mode 100644
index 000000000..5a295c5f3
--- /dev/null
+++ b/poky/meta/recipes-devtools/python/python-pbr.inc
@@ -0,0 +1,15 @@
+SUMMARY = "Python Build Reasonableness"
+DESCRIPTION = "PBR is a library that injects some useful and sensible default behaviors into your setuptools run"
+HOMEPAGE = "https://pypi.python.org/pypi/pbr"
+SECTION = "devel/python"
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=1dece7821bf3fd70fe1309eaa37d52a2"
+
+SRC_URI[md5sum] = "6619780896ca81c7cd19c6e2f439b6c9"
+SRC_URI[sha256sum] = "1b8be50d938c9bb75d0eaf7eda111eec1bf6dc88a62a6412e33bf077457e0f45"
+
+inherit pypi
+
+RDEPENDS_${PN} += "${PYTHON_PN}-pip"
+
+BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-devtools/python/python-setuptools.inc b/poky/meta/recipes-devtools/python/python-setuptools.inc
index 74706bf04..315ba3139 100644
--- a/poky/meta/recipes-devtools/python/python-setuptools.inc
+++ b/poky/meta/recipes-devtools/python/python-setuptools.inc
@@ -2,27 +2,19 @@ SUMMARY = "Download, build, install, upgrade, and uninstall Python packages"
HOMEPAGE = "https://pypi.python.org/pypi/setuptools"
SECTION = "devel/python"
LICENSE = "MIT"
-
LIC_FILES_CHKSUM = "file://LICENSE;beginline=1;endline=19;md5=9a33897f1bca1160d7aad3835152e158"
PYPI_PACKAGE_EXT = "zip"
inherit pypi
-SRC_URI[md5sum] = "379642a4f17214071fdc1894255d8d11"
-SRC_URI[sha256sum] = "94dc566247f35009ed42c0f4422f2b4f0a032fab1372c8308b864c8f26d93388"
+SRC_URI_append_class-native = " file://0001-conditionally-do-not-fetch-code-by-easy_install.patch"
-DEPENDS += "${PYTHON_PN}"
-DEPENDS_class-native += "${PYTHON_PN}-native"
-DEPENDS_class-nativesdk += "nativesdk-${PYTHON_PN}"
+SRC_URI[md5sum] = "260630ae1a64bafa39dcc53404d63829"
+SRC_URI[sha256sum] = "012adb8e25fbfd64c652e99e7bab58799a3aaf05d39ab38561f69190a909015f"
-DISTUTILS_INSTALL_ARGS += "--install-lib=${D}${PYTHON_SITEPACKAGES_DIR} \
- --script-dir=${bindir}"
+DEPENDS += "${PYTHON_PN}"
-RDEPENDS_${PN}_class-native = "\
- ${PYTHON_PN}-distutils \
- ${PYTHON_PN}-compression \
-"
RDEPENDS_${PN} = "\
${PYTHON_PN}-compile \
${PYTHON_PN}-compression \
@@ -40,7 +32,6 @@ RDEPENDS_${PN} = "\
${PYTHON_PN}-unittest \
${PYTHON_PN}-xml \
"
-
do_install_prepend() {
install -d ${D}${PYTHON_SITEPACKAGES_DIR}
}
diff --git a/poky/meta/recipes-devtools/python/python-setuptools_39.0.0.bb b/poky/meta/recipes-devtools/python/python-setuptools_40.0.0.bb
index cf9440495..cf9440495 100644
--- a/poky/meta/recipes-devtools/python/python-setuptools_39.0.0.bb
+++ b/poky/meta/recipes-devtools/python/python-setuptools_40.0.0.bb
diff --git a/poky/meta/recipes-devtools/python/python-subunit.inc b/poky/meta/recipes-devtools/python/python-subunit.inc
new file mode 100644
index 000000000..afaaa51fa
--- /dev/null
+++ b/poky/meta/recipes-devtools/python/python-subunit.inc
@@ -0,0 +1,14 @@
+SUMMARY = "Python implementation of subunit test streaming protocol"
+HOMEPAGE = "https://pypi.python.org/pypi/python-subunit/"
+SECTION = "devel/python"
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://README.rst;beginline=1;endline=20;md5=909c08e291647fd985fbe5d9836d51b6"
+
+PYPI_PACKAGE = "python-subunit"
+
+SRC_URI[md5sum] = "16d468a3aeafe6c60a0c3b2b9132d65b"
+SRC_URI[sha256sum] = "9607edbee4c1e5a30ff88549ce8d9feb0b9bcbcb5e55033a9d76e86075465cbb"
+
+inherit pypi
+
+BBCLASSEXTEND = "nativesdk"
diff --git a/poky/meta/recipes-devtools/python/python-testtools.inc b/poky/meta/recipes-devtools/python/python-testtools.inc
new file mode 100644
index 000000000..1011c98a3
--- /dev/null
+++ b/poky/meta/recipes-devtools/python/python-testtools.inc
@@ -0,0 +1,27 @@
+SUMMARY = "Extensions to the Python standard library unit testing framework"
+HOMEPAGE = "https://pypi.python.org/pypi/testtools/"
+SECTION = "devel/python"
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=e2c9d3e8ba7141c83bfef190e0b9379a"
+
+inherit pypi
+
+SRC_URI[md5sum] = "0f0feb915497816cb99e39437494217e"
+SRC_URI[sha256sum] = "5827ec6cf8233e0f29f51025addd713ca010061204fdea77484a2934690a0559"
+
+DEPENDS += " \
+ ${PYTHON_PN}-pbr \
+ "
+
+# Satisfy setup.py 'setup_requires'
+DEPENDS += " \
+ ${PYTHON_PN}-pbr-native \
+ "
+
+RDEPENDS_${PN} += "\
+ ${PYTHON_PN}-extras \
+ ${PYTHON_PN}-pbr \
+ ${PYTHON_PN}-six \
+ "
+
+BBCLASSEXTEND = "nativesdk"
diff --git a/poky/meta/recipes-devtools/python/python.inc b/poky/meta/recipes-devtools/python/python.inc
index 062a20f68..66923678b 100644
--- a/poky/meta/recipes-devtools/python/python.inc
+++ b/poky/meta/recipes-devtools/python/python.inc
@@ -7,7 +7,13 @@ INC_PR = "r1"
LIC_FILES_CHKSUM = "file://LICENSE;md5=f257cc14f81685691652a3d3e1b5d754"
-SRC_URI = "http://www.python.org/ftp/python/${PV}/Python-${PV}.tar.xz"
+SRC_URI = "http://www.python.org/ftp/python/${PV}/Python-${PV}.tar.xz \
+ file://0001-bpo-33570-TLS-1.3-ciphers-for-OpenSSL-1.1.1-GH-6976-.patch \
+ file://0002-bpo-34818-Add-missing-closing-wrapper-in-test_tls1_3.patch \
+ file://0003-bpo-34834-Fix-test_ssl.test_options-to-account-for-O.patch \
+ file://0004-bpo-34836-fix-test_default_ecdh_curve-needs-no-tlsv1.patch \
+ file://0001-bpo-33354-Fix-test_ssl-when-a-filename-cannot-be-enc.patch \
+ "
SRC_URI[md5sum] = "a80ae3cc478460b922242f43a1b4094d"
SRC_URI[sha256sum] = "22d9b1ac5b26135ad2b8c2901a9413537e08749a753356ee913c84dbd2df5574"
@@ -33,6 +39,12 @@ EXTRA_OECONF = "\
${PYTHONLSBOPTS} \
"
+do_configure_prepend() {
+ libdirleaf="$(echo ${libdir} | sed -e 's:${prefix}/::')"
+ sed -i -e "s:SEDMELIBLEAF:${libdirleaf}:g" \
+ ${S}/configure.ac
+}
+
do_install_append () {
sed -i -e 's:${HOSTTOOLS_DIR}/install:install:g' \
-e 's:${HOSTTOOLS_DIR}/mkdir:mkdir:g' \
diff --git a/poky/meta/recipes-devtools/python/python/0001-2.7-bpo-34623-Use-XML_SetHashSalt-in-_elementtree-GH.patch b/poky/meta/recipes-devtools/python/python/0001-2.7-bpo-34623-Use-XML_SetHashSalt-in-_elementtree-GH.patch
index 42c64caae..3c0d66229 100644
--- a/poky/meta/recipes-devtools/python/python/0001-2.7-bpo-34623-Use-XML_SetHashSalt-in-_elementtree-GH.patch
+++ b/poky/meta/recipes-devtools/python/python/0001-2.7-bpo-34623-Use-XML_SetHashSalt-in-_elementtree-GH.patch
@@ -19,9 +19,7 @@ Co-authored-by: Christian Heimes <christian@python.org>
https://bugs.python.org/issue34623
Upstream-Status: Backport
-
-Fix CVE-2018-14647
-
+CVE: CVE-2018-14647
Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
---
Include/pyexpat.h | 4 +++-
diff --git a/poky/meta/recipes-devtools/python/python/0001-bpo-33354-Fix-test_ssl-when-a-filename-cannot-be-enc.patch b/poky/meta/recipes-devtools/python/python/0001-bpo-33354-Fix-test_ssl-when-a-filename-cannot-be-enc.patch
new file mode 100644
index 000000000..4c0b3577b
--- /dev/null
+++ b/poky/meta/recipes-devtools/python/python/0001-bpo-33354-Fix-test_ssl-when-a-filename-cannot-be-enc.patch
@@ -0,0 +1,55 @@
+From 19f6bd06af3c7fc0db5f96878aaa68f5589ff13e Mon Sep 17 00:00:00 2001
+From: Pablo Galindo <Pablogsal@gmail.com>
+Date: Thu, 24 May 2018 23:20:44 +0100
+Subject: [PATCH] bpo-33354: Fix test_ssl when a filename cannot be encoded
+ (GH-6613)
+
+Skip test_load_dh_params() of test_ssl when Python filesystem encoding
+cannot encode the provided path.
+
+Upstream-Status: Backport [https://github.com/python/cpython/commit/19f6bd06af3c7fc0db5f96878aaa68f5589ff13e]
+Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
+---
+ Lib/test/test_ssl.py | 9 ++++++++-
+ .../next/Tests/2018-04-26-22-39-17.bpo-33354.g35-44.rst | 2 ++
+ 2 files changed, 10 insertions(+), 1 deletion(-)
+ create mode 100644 Misc/NEWS.d/next/Tests/2018-04-26-22-39-17.bpo-33354.g35-44.rst
+
+diff --git a/Lib/test/test_ssl.py b/Lib/test/test_ssl.py
+index b59fe73f04..7ced90fdf6 100644
+--- a/Lib/test/test_ssl.py
++++ b/Lib/test/test_ssl.py
+@@ -989,6 +989,13 @@ class ContextTests(unittest.TestCase):
+
+
+ def test_load_dh_params(self):
++ filename = u'dhpäräm.pem'
++ fs_encoding = sys.getfilesystemencoding()
++ try:
++ filename.encode(fs_encoding)
++ except UnicodeEncodeError:
++ self.skipTest("filename %r cannot be encoded to the filesystem encoding %r" % (filename, fs_encoding))
++
+ ctx = ssl.SSLContext(ssl.PROTOCOL_TLSv1)
+ ctx.load_dh_params(DHFILE)
+ if os.name != 'nt':
+@@ -1001,7 +1008,7 @@ class ContextTests(unittest.TestCase):
+ with self.assertRaises(ssl.SSLError) as cm:
+ ctx.load_dh_params(CERTFILE)
+ with support.temp_dir() as d:
+- fname = os.path.join(d, u'dhpäräm.pem')
++ fname = os.path.join(d, filename)
+ shutil.copy(DHFILE, fname)
+ ctx.load_dh_params(fname)
+
+diff --git a/Misc/NEWS.d/next/Tests/2018-04-26-22-39-17.bpo-33354.g35-44.rst b/Misc/NEWS.d/next/Tests/2018-04-26-22-39-17.bpo-33354.g35-44.rst
+new file mode 100644
+index 0000000000..c66cecac32
+--- /dev/null
++++ b/Misc/NEWS.d/next/Tests/2018-04-26-22-39-17.bpo-33354.g35-44.rst
+@@ -0,0 +1,2 @@
++Skip ``test_ssl.test_load_dh_params`` when Python filesystem encoding cannot encode the
++provided path.
+--
+2.17.1
+
diff --git a/poky/meta/recipes-devtools/python/python/0001-bpo-33570-TLS-1.3-ciphers-for-OpenSSL-1.1.1-GH-6976-.patch b/poky/meta/recipes-devtools/python/python/0001-bpo-33570-TLS-1.3-ciphers-for-OpenSSL-1.1.1-GH-6976-.patch
new file mode 100644
index 000000000..1f70562fc
--- /dev/null
+++ b/poky/meta/recipes-devtools/python/python/0001-bpo-33570-TLS-1.3-ciphers-for-OpenSSL-1.1.1-GH-6976-.patch
@@ -0,0 +1,120 @@
+From a333351592f097220fc862911b34d3a300f0985e Mon Sep 17 00:00:00 2001
+From: Christian Heimes <christian@python.org>
+Date: Wed, 15 Aug 2018 09:07:28 +0200
+Subject: [PATCH 1/4] bpo-33570: TLS 1.3 ciphers for OpenSSL 1.1.1 (GH-6976)
+ (GH-8760)
+
+Change TLS 1.3 cipher suite settings for compatibility with OpenSSL
+1.1.1-pre6 and newer. OpenSSL 1.1.1 will have TLS 1.3 cipers enabled by
+default.
+
+Also update multissltests to test with latest OpenSSL.
+
+Signed-off-by: Christian Heimes <christian@python.org>.
+(cherry picked from commit 3e630c541b35c96bfe5619165255e559f577ee71)
+
+Co-authored-by: Christian Heimes <christian@python.org>
+
+Upstream-Status: Accepted [https://github.com/python/cpython/pull/8771]
+
+Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
+---
+ Doc/library/ssl.rst | 8 ++--
+ Lib/test/test_ssl.py | 37 +++++++++++--------
+ .../2018-05-18-21-50-47.bpo-33570.7CZy4t.rst | 3 ++
+ 3 files changed, 27 insertions(+), 21 deletions(-)
+ create mode 100644 Misc/NEWS.d/next/Library/2018-05-18-21-50-47.bpo-33570.7CZy4t.rst
+
+diff --git a/Doc/library/ssl.rst b/Doc/library/ssl.rst
+index 0421031772..7c7c85b833 100644
+--- a/Doc/library/ssl.rst
++++ b/Doc/library/ssl.rst
+@@ -294,11 +294,6 @@ purposes.
+
+ 3DES was dropped from the default cipher string.
+
+- .. versionchanged:: 2.7.15
+-
+- TLS 1.3 cipher suites TLS_AES_128_GCM_SHA256, TLS_AES_256_GCM_SHA384,
+- and TLS_CHACHA20_POLY1305_SHA256 were added to the default cipher string.
+-
+ .. function:: _https_verify_certificates(enable=True)
+
+ Specifies whether or not server certificates are verified when creating
+@@ -1179,6 +1174,9 @@ to speed up repeated connections from the same clients.
+ when connected, the :meth:`SSLSocket.cipher` method of SSL sockets will
+ give the currently selected cipher.
+
++ OpenSSL 1.1.1 has TLS 1.3 cipher suites enabled by default. The suites
++ cannot be disabled with :meth:`~SSLContext.set_ciphers`.
++
+ .. method:: SSLContext.set_alpn_protocols(protocols)
+
+ Specify which protocols the socket should advertise during the SSL/TLS
+diff --git a/Lib/test/test_ssl.py b/Lib/test/test_ssl.py
+index dc14e22ad1..f51572e319 100644
+--- a/Lib/test/test_ssl.py
++++ b/Lib/test/test_ssl.py
+@@ -2772,19 +2772,24 @@ else:
+ sock.do_handshake()
+ self.assertEqual(cm.exception.errno, errno.ENOTCONN)
+
+- def test_default_ciphers(self):
+- context = ssl.SSLContext(ssl.PROTOCOL_SSLv23)
+- try:
+- # Force a set of weak ciphers on our client context
+- context.set_ciphers("DES")
+- except ssl.SSLError:
+- self.skipTest("no DES cipher available")
+- with ThreadedEchoServer(CERTFILE,
+- ssl_version=ssl.PROTOCOL_SSLv23,
+- chatty=False) as server:
+- with closing(context.wrap_socket(socket.socket())) as s:
+- with self.assertRaises(ssl.SSLError):
+- s.connect((HOST, server.port))
++ def test_no_shared_ciphers(self):
++ server_context = ssl.SSLContext(ssl.PROTOCOL_SSLv23)
++ server_context.load_cert_chain(SIGNED_CERTFILE)
++ client_context = ssl.SSLContext(ssl.PROTOCOL_SSLv23)
++ client_context.verify_mode = ssl.CERT_REQUIRED
++ client_context.check_hostname = True
++
++ # OpenSSL enables all TLS 1.3 ciphers, enforce TLS 1.2 for test
++ client_context.options |= ssl.OP_NO_TLSv1_3
++ # Force different suites on client and master
++ client_context.set_ciphers("AES128")
++ server_context.set_ciphers("AES256")
++ with ThreadedEchoServer(context=server_context) as server:
++ s = client_context.wrap_socket(
++ socket.socket(),
++ server_hostname="localhost")
++ with self.assertRaises(ssl.SSLError):
++ s.connect((HOST, server.port))
+ self.assertIn("no shared cipher", str(server.conn_errors[0]))
+
+ def test_version_basic(self):
+@@ -2815,9 +2820,9 @@ else:
+ with context.wrap_socket(socket.socket()) as s:
+ s.connect((HOST, server.port))
+ self.assertIn(s.cipher()[0], [
+- 'TLS13-AES-256-GCM-SHA384',
+- 'TLS13-CHACHA20-POLY1305-SHA256',
+- 'TLS13-AES-128-GCM-SHA256',
++ 'TLS_AES_256_GCM_SHA384',
++ 'TLS_CHACHA20_POLY1305_SHA256',
++ 'TLS_AES_128_GCM_SHA256',
+ ])
+
+ @unittest.skipUnless(ssl.HAS_ECDH, "test requires ECDH-enabled OpenSSL")
+diff --git a/Misc/NEWS.d/next/Library/2018-05-18-21-50-47.bpo-33570.7CZy4t.rst b/Misc/NEWS.d/next/Library/2018-05-18-21-50-47.bpo-33570.7CZy4t.rst
+new file mode 100644
+index 0000000000..bd719a47e8
+--- /dev/null
++++ b/Misc/NEWS.d/next/Library/2018-05-18-21-50-47.bpo-33570.7CZy4t.rst
+@@ -0,0 +1,3 @@
++Change TLS 1.3 cipher suite settings for compatibility with OpenSSL
++1.1.1-pre6 and newer. OpenSSL 1.1.1 will have TLS 1.3 cipers enabled by
++default.
+--
+2.17.1
+
diff --git a/poky/meta/recipes-devtools/python/python/0001-closes-bpo-34540-Convert-shutil._call_external_zip-t.patch b/poky/meta/recipes-devtools/python/python/0001-closes-bpo-34540-Convert-shutil._call_external_zip-t.patch
index e6fe5f2cc..125db8512 100644
--- a/poky/meta/recipes-devtools/python/python/0001-closes-bpo-34540-Convert-shutil._call_external_zip-t.patch
+++ b/poky/meta/recipes-devtools/python/python/0001-closes-bpo-34540-Convert-shutil._call_external_zip-t.patch
@@ -5,9 +5,7 @@ Subject: [PATCH] closes bpo-34540: Convert shutil._call_external_zip to use
subprocess rather than distutils.spawn. (GH-8985)
Upstream-Status: Backport
-
-Fix CVE-2018-1000802
-
+CVE: CVE-2018-1000802
Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
---
Lib/shutil.py | 16 ++++++++++------
diff --git a/poky/meta/recipes-devtools/python/python/0002-bpo-34818-Add-missing-closing-wrapper-in-test_tls1_3.patch b/poky/meta/recipes-devtools/python/python/0002-bpo-34818-Add-missing-closing-wrapper-in-test_tls1_3.patch
new file mode 100644
index 000000000..96882712e
--- /dev/null
+++ b/poky/meta/recipes-devtools/python/python/0002-bpo-34818-Add-missing-closing-wrapper-in-test_tls1_3.patch
@@ -0,0 +1,37 @@
+From 0e1f3856a7e1511fb64d99646c54ddf3897cd444 Mon Sep 17 00:00:00 2001
+From: Dimitri John Ledkov <xnox@ubuntu.com>
+Date: Fri, 28 Sep 2018 14:15:52 +0100
+Subject: [PATCH 2/4] bpo-34818: Add missing closing() wrapper in test_tls1_3.
+
+Python 2.7 socket classes do not implement context manager protocol,
+hence closing() is required around it. Resolves testcase error
+traceback.
+
+Signed-off-by: Dimitri John Ledkov <xnox@ubuntu.com>
+
+https://bugs.python.org/issue34818
+
+Patch taken from Ubuntu.
+
+Upstream-Status: Submitted [https://github.com/python/cpython/pull/9622]
+Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
+---
+ Lib/test/test_ssl.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/Lib/test/test_ssl.py b/Lib/test/test_ssl.py
+index f51572e319..7a14053cee 100644
+--- a/Lib/test/test_ssl.py
++++ b/Lib/test/test_ssl.py
+@@ -2817,7 +2817,7 @@ else:
+ ssl.OP_NO_TLSv1 | ssl.OP_NO_TLSv1_1 | ssl.OP_NO_TLSv1_2
+ )
+ with ThreadedEchoServer(context=context) as server:
+- with context.wrap_socket(socket.socket()) as s:
++ with closing(context.wrap_socket(socket.socket())) as s:
+ s.connect((HOST, server.port))
+ self.assertIn(s.cipher()[0], [
+ 'TLS_AES_256_GCM_SHA384',
+--
+2.17.1
+
diff --git a/poky/meta/recipes-devtools/python/python/0003-bpo-34834-Fix-test_ssl.test_options-to-account-for-O.patch b/poky/meta/recipes-devtools/python/python/0003-bpo-34834-Fix-test_ssl.test_options-to-account-for-O.patch
new file mode 100644
index 000000000..77016cb43
--- /dev/null
+++ b/poky/meta/recipes-devtools/python/python/0003-bpo-34834-Fix-test_ssl.test_options-to-account-for-O.patch
@@ -0,0 +1,37 @@
+From 8b06d56d26eee289fec22b9b72ab4c7cc3d6c482 Mon Sep 17 00:00:00 2001
+From: Dimitri John Ledkov <xnox@ubuntu.com>
+Date: Fri, 28 Sep 2018 16:34:16 +0100
+Subject: [PATCH 3/4] bpo-34834: Fix test_ssl.test_options to account for
+ OP_ENABLE_MIDDLEBOX_COMPAT.
+
+Signed-off-by: Dimitri John Ledkov <xnox@ubuntu.com>
+
+https://bugs.python.org/issue34834
+
+Patch taken from Ubuntu.
+Upstream-Status: Submitted [https://github.com/python/cpython/pull/9624]
+
+Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
+---
+ Lib/test/test_ssl.py | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+diff --git a/Lib/test/test_ssl.py b/Lib/test/test_ssl.py
+index 7a14053cee..efc906a5ba 100644
+--- a/Lib/test/test_ssl.py
++++ b/Lib/test/test_ssl.py
+@@ -777,6 +777,11 @@ class ContextTests(unittest.TestCase):
+ default = (ssl.OP_ALL | ssl.OP_NO_SSLv2 | ssl.OP_NO_SSLv3)
+ if not IS_LIBRESSL and ssl.OPENSSL_VERSION_INFO >= (1, 1, 0):
+ default |= ssl.OP_NO_COMPRESSION
++ if not IS_LIBRESSL and ssl.OPENSSL_VERSION_INFO >= (1, 1, 1):
++ # define MIDDLEBOX constant, as python2.7 does not know about it
++ # but it is used by default.
++ OP_ENABLE_MIDDLEBOX_COMPAT = 1048576L
++ default |= OP_ENABLE_MIDDLEBOX_COMPAT
+ self.assertEqual(default, ctx.options)
+ ctx.options |= ssl.OP_NO_TLSv1
+ self.assertEqual(default | ssl.OP_NO_TLSv1, ctx.options)
+--
+2.17.1
+
diff --git a/poky/meta/recipes-devtools/python/python/0004-bpo-34836-fix-test_default_ecdh_curve-needs-no-tlsv1.patch b/poky/meta/recipes-devtools/python/python/0004-bpo-34836-fix-test_default_ecdh_curve-needs-no-tlsv1.patch
new file mode 100644
index 000000000..39e1bcfc8
--- /dev/null
+++ b/poky/meta/recipes-devtools/python/python/0004-bpo-34836-fix-test_default_ecdh_curve-needs-no-tlsv1.patch
@@ -0,0 +1,34 @@
+From 946a7969345c6697697effd226ec396d3fea05b7 Mon Sep 17 00:00:00 2001
+From: Dimitri John Ledkov <xnox@ubuntu.com>
+Date: Fri, 28 Sep 2018 17:30:19 +0100
+Subject: [PATCH 4/4] bpo-34836: fix test_default_ecdh_curve, needs no tlsv1.3.
+
+Signed-off-by: Dimitri John Ledkov <xnox@ubuntu.com>
+
+https://bugs.python.org/issue34836
+
+Patch taken from Ubuntu.
+Upstream-Status: Submitted [https://github.com/python/cpython/pull/9626]
+
+Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
+---
+ Lib/test/test_ssl.py | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/Lib/test/test_ssl.py b/Lib/test/test_ssl.py
+index efc906a5ba..4a3286cd5f 100644
+--- a/Lib/test/test_ssl.py
++++ b/Lib/test/test_ssl.py
+@@ -2836,6 +2836,9 @@ else:
+ # should be enabled by default on SSL contexts.
+ context = ssl.SSLContext(ssl.PROTOCOL_SSLv23)
+ context.load_cert_chain(CERTFILE)
++ # TLSv1.3 defaults to PFS key agreement and no longer has KEA in
++ # cipher name.
++ context.options |= ssl.OP_NO_TLSv1_3
+ # Prior to OpenSSL 1.0.0, ECDH ciphers have to be enabled
+ # explicitly using the 'ECCdraft' cipher alias. Otherwise,
+ # our default cipher list should prefer ECDH-based ciphers
+--
+2.17.1
+
diff --git a/poky/meta/recipes-devtools/python/python/create_manifest2.py b/poky/meta/recipes-devtools/python/python/create_manifest2.py
index 1af1443f4..87999991d 100644
--- a/poky/meta/recipes-devtools/python/python/create_manifest2.py
+++ b/poky/meta/recipes-devtools/python/python/create_manifest2.py
@@ -137,7 +137,7 @@ for key in old_manifest:
# Handle special cases, we assume that when they were manually added
# to the manifest we knew what we were doing.
print ('Handling package %s' % key)
- special_packages=['misc', 'modules', 'dev']
+ special_packages=['misc', 'modules', 'tests', 'dev']
if key in special_packages or 'staticdev' in key:
print('Passing %s package directly' % key)
new_manifest[key]=old_manifest[key]
diff --git a/poky/meta/recipes-devtools/python/python/multilib.patch b/poky/meta/recipes-devtools/python/python/multilib.patch
index 1116dd518..d24bc15f0 100644
--- a/poky/meta/recipes-devtools/python/python/multilib.patch
+++ b/poky/meta/recipes-devtools/python/python/multilib.patch
@@ -11,7 +11,7 @@ Index: Python-2.7.14/configure.ac
+AC_SUBST(LIB)
+AC_MSG_CHECKING(LIB)
-+LIB=`basename ${libdir}`
++LIB="SEDMELIBLEAF"
+AC_MSG_RESULT($LIB)
AC_SUBST(LIBRARY)
diff --git a/poky/meta/recipes-devtools/python/python/python2-manifest.json b/poky/meta/recipes-devtools/python/python/python2-manifest.json
index 1e7004e05..260fa6f80 100644
--- a/poky/meta/recipes-devtools/python/python/python2-manifest.json
+++ b/poky/meta/recipes-devtools/python/python/python2-manifest.json
@@ -1,18 +1,18 @@
{
"tests": {
- "summary": "Python test suite",
+ "summary": "Python test suite",
"rdepends": [
- "core",
+ "core",
"modules"
- ],
+ ],
"files": [
- "${libdir}/python2.7/*/test",
- "${libdir}/python2.7/*/tests",
- "${libdir}/python2.7/idlelib/idle_test/",
+ "${libdir}/python2.7/*/test",
+ "${libdir}/python2.7/*/tests",
+ "${libdir}/python2.7/idlelib/idle_test/",
"${libdir}/python2.7/test"
- ],
+ ],
"cached": []
- },
+ },
"2to3": {
"summary": "Python automated Python 2 to 3 code translator",
"rdepends": [
@@ -881,10 +881,12 @@
"sqlite3": {
"summary": "Python Sqlite3 database support",
"rdepends": [
- "core"
+ "core",
+ "datetime"
],
"files": [
- "${libdir}/python2.7/lib-dynload/_sqlite3.so"
+ "${libdir}/python2.7/lib-dynload/_sqlite3.so",
+ "${libdir}/python2.7/sqlite3"
]
},
"stringold": {
@@ -1041,4 +1043,4 @@
"${libdir}/python2.7/lib-dynload/zlib.so"
]
}
-}
+} \ No newline at end of file
diff --git a/poky/meta/recipes-devtools/python/python3-dbus_1.2.6.bb b/poky/meta/recipes-devtools/python/python3-dbus_1.2.8.bb
index 19cbae91a..c9bf8df42 100644
--- a/poky/meta/recipes-devtools/python/python3-dbus_1.2.6.bb
+++ b/poky/meta/recipes-devtools/python/python3-dbus_1.2.8.bb
@@ -8,15 +8,16 @@ DEPENDS = "expat dbus dbus-glib virtual/libintl"
SRC_URI = "http://dbus.freedesktop.org/releases/dbus-python/dbus-python-${PV}.tar.gz \
"
-RSRC_URI[md5sum] = "1ce1ddf2582060f8f971652ea54cc17e"
-SRC_URI[sha256sum] = "32f29c17172cdb9cb61c68b1f1a71dfe7351506fc830869029c47449bd04faeb"
+SRC_URI[md5sum] = "7379db774c10904f27e7e2743d90fb43"
+SRC_URI[sha256sum] = "abf12bbb765e300bf8e2a1b2f32f85949eab06998dbda127952c31cb63957b6f"
S = "${WORKDIR}/dbus-python-${PV}"
inherit distutils3-base autotools pkgconfig
-PACKAGECONFIG ?= ""
-PACKAGECONFIG[docs] = "--enable-html-docs,--disable-html-docs,python3-docutils-native"
-PACKAGECONFIG[api-docs] = "--enable-api-docs,--disable-api-docs,python3-docutils-native python3-epydoc-native"
+# documentation needs python3-sphinx, which is not in oe-core or meta-python for now
+# change to use PACKAGECONFIG when python3-sphinx is added to oe-core
+EXTRA_OECONF += "--disable-documentation"
+
RDEPENDS_${PN} = "python3-io python3-logging python3-stringold python3-threading python3-xml"
diff --git a/poky/meta/recipes-devtools/python/python3-extras_1.0.0.bb b/poky/meta/recipes-devtools/python/python3-extras_1.0.0.bb
new file mode 100644
index 000000000..76f87f264
--- /dev/null
+++ b/poky/meta/recipes-devtools/python/python3-extras_1.0.0.bb
@@ -0,0 +1,2 @@
+inherit setuptools3
+require python-extras.inc
diff --git a/poky/meta/recipes-devtools/python/python3-git_2.1.8.bb b/poky/meta/recipes-devtools/python/python3-git_2.1.11.bb
index ac320fa56..ac320fa56 100644
--- a/poky/meta/recipes-devtools/python/python3-git_2.1.8.bb
+++ b/poky/meta/recipes-devtools/python/python3-git_2.1.11.bb
diff --git a/poky/meta/recipes-devtools/python/python3-gitdb_2.0.3.bb b/poky/meta/recipes-devtools/python/python3-gitdb_2.0.4.bb
index fe158327c..fe158327c 100644
--- a/poky/meta/recipes-devtools/python/python3-gitdb_2.0.3.bb
+++ b/poky/meta/recipes-devtools/python/python3-gitdb_2.0.4.bb
diff --git a/poky/meta/recipes-devtools/python/python3-native_3.5.5.bb b/poky/meta/recipes-devtools/python/python3-native_3.5.6.bb
index 3098027d8..d5953cf4b 100644
--- a/poky/meta/recipes-devtools/python/python3-native_3.5.5.bb
+++ b/poky/meta/recipes-devtools/python/python3-native_3.5.6.bb
@@ -1,13 +1,10 @@
-require recipes-devtools/python/python.inc
+require recipes-devtools/python/python3.inc
-PR = "${INC_PR}.0"
-PYTHON_MAJMIN = "3.5"
DISTRO_SRC_URI ?= "file://sitecustomize.py"
DISTRO_SRC_URI_linuxstdbase = ""
SRC_URI = "http://www.python.org/ftp/python/${PV}/Python-${PV}.tar.xz \
file://12-distutils-prefix-is-inside-staging-area.patch \
file://python-config.patch \
-file://0001-cross-compile-support.patch \
file://030-fixup-include-dirs.patch \
file://070-dont-clean-ipkg-install.patch \
file://080-distutils-dont_adjust_files.patch \
@@ -16,7 +13,6 @@ file://150-fix-setupterm.patch \
file://python-3.3-multilib.patch \
file://03-fix-tkinter-detection.patch \
file://avoid_warning_about_tkinter.patch \
-file://shutil-follow-symlink-fix.patch \
file://0001-h2py-Fix-issue-13032-where-it-fails-with-UnicodeDeco.patch \
file://sysroot-include-headers.patch \
file://unixccompiler.patch \
@@ -26,18 +22,13 @@ file://setup.py-check-cross_compiling-when-get-FLAGS.patch \
file://0001-Do-not-use-the-shell-version-of-python-config-that-w.patch \
file://support_SOURCE_DATE_EPOCH_in_py_compile.patch \
file://regen-all.patch \
+file://0001-Issue-28043-SSLContext-has-improved-default-settings.patch \
+file://0002-bpo-29136-Add-TLS-1.3-cipher-suites-and-OP_NO_TLSv1_.patch \
+file://0003-bpo-32947-Fixes-for-TLS-1.3-and-OpenSSL-1.1.1-GH-876.patch \
+file://0004-bpo-33570-TLS-1.3-ciphers-for-OpenSSL-1.1.1-GH-6976.patch \
+file://0005-bpo-30714-ALPN-changes-for-OpenSSL-1.1.0f-2305.patch \
"
-SRC_URI[md5sum] = "f3763edf9824d5d3a15f5f646083b6e0"
-SRC_URI[sha256sum] = "063d2c3b0402d6191b90731e0f735c64830e7522348aeb7ed382a83165d45009"
-
-LIC_FILES_CHKSUM = "file://LICENSE;md5=b6ec515b22618f55fa07276b897bacea"
-
-# exclude pre-releases for both python 2.x and 3.x
-UPSTREAM_CHECK_REGEX = "[Pp]ython-(?P<pver>\d+(\.\d+)+).tar"
-
-S = "${WORKDIR}/Python-${PV}"
-
EXTRANATIVEPATH += "bzip2-native"
DEPENDS = "openssl-native bzip2-replacement-native zlib-native readline-native sqlite3-native gdbm-native"
@@ -53,9 +44,6 @@ EXTRA_OEMAKE = '\
ARCH=${TARGET_ARCH} \
'
-# No ctypes option for python 3
-PYTHONLSBOPTS = ""
-
do_configure_append() {
autoreconf --verbose --install --force --exclude=autopoint ../Python-${PV}/Modules/_ctypes/libffi
sed -i -e 's,#define HAVE_GETRANDOM 1,/\* #undef HAVE_GETRANDOM \*/,' ${B}/pyconfig.h
diff --git a/poky/meta/recipes-devtools/python/python3-pbr_4.2.0.bb b/poky/meta/recipes-devtools/python/python3-pbr_4.2.0.bb
new file mode 100644
index 000000000..97e7361b1
--- /dev/null
+++ b/poky/meta/recipes-devtools/python/python3-pbr_4.2.0.bb
@@ -0,0 +1,2 @@
+inherit setuptools3
+require python-pbr.inc
diff --git a/poky/meta/recipes-devtools/python/python3-pip_18.0.bb b/poky/meta/recipes-devtools/python/python3-pip_18.0.bb
new file mode 100644
index 000000000..3fcdb8014
--- /dev/null
+++ b/poky/meta/recipes-devtools/python/python3-pip_18.0.bb
@@ -0,0 +1,30 @@
+SUMMARY = "The PyPA recommended tool for installing Python packages"
+HOMEPAGE = "https://pypi.python.org/pypi/pip"
+SECTION = "devel/python"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=593c6cd9d639307226978cbcae61ad4b"
+
+DEPENDS += "python3 python3-setuptools-native"
+
+SRC_URI[md5sum] = "52f75ceb21e96c258f289859a2996b60"
+SRC_URI[sha256sum] = "a0e11645ee37c90b40c46d607070c4fd583e2cd46231b1c06e389c5e814eed76"
+
+inherit pypi distutils3
+
+do_install_append() {
+ # Install as pip3 and leave pip2 as default
+ rm ${D}/${bindir}/pip
+}
+
+RDEPENDS_${PN} = "\
+ python3-compile \
+ python3-io \
+ python3-html \
+ python3-json \
+ python3-netserver \
+ python3-setuptools \
+ python3-unixadmin \
+ python3-xmlrpc \
+"
+
+BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-devtools/python/python3-pip_9.0.2.bb b/poky/meta/recipes-devtools/python/python3-pip_9.0.2.bb
deleted file mode 100644
index 53fd6dcf2..000000000
--- a/poky/meta/recipes-devtools/python/python3-pip_9.0.2.bb
+++ /dev/null
@@ -1,48 +0,0 @@
-SUMMARY = "The PyPA recommended tool for installing Python packages"
-HOMEPAGE = "https://pypi.python.org/pypi/pip"
-SECTION = "devel/python"
-LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=25fba45109565f87de20bae85bc39452"
-
-DEPENDS += "python3 python3-setuptools-native"
-
-SRC_URI[md5sum] = "2fddd680422326b9d1fbf56112cf341d"
-SRC_URI[sha256sum] = "88110a224e9d30e5d76592a0b2130ef10e7e67a6426e8617bb918fffbfe91fe5"
-
-inherit pypi distutils3
-
-DISTUTILS_INSTALL_ARGS += "--install-lib=${D}${PYTHON_SITEPACKAGES_DIR}"
-
-do_install_prepend() {
- install -d ${D}${PYTHON_SITEPACKAGES_DIR}
-}
-
-# Use setuptools site.py instead, avoid shared state issue
-do_install_append() {
- rm ${D}${PYTHON_SITEPACKAGES_DIR}/site.py
- rm ${D}${PYTHON_SITEPACKAGES_DIR}/__pycache__/site.cpython-*.pyc
-
- # Install as pip3 and leave pip2 as default
- rm ${D}/${bindir}/pip
-
- # Installed eggs need to be passed directly to the interpreter via a pth file
- echo "./${PYPI_PACKAGE}-${PV}-py${PYTHON_BASEVERSION}.egg" > ${D}${PYTHON_SITEPACKAGES_DIR}/${PYPI_PACKAGE}-${PV}.pth
-
- # Make sure we use /usr/bin/env python3
- for PYTHSCRIPT in `grep -rIl ${bindir} ${D}${bindir}/pip3*`; do
- sed -i -e '1s|^#!.*|#!/usr/bin/env python3|' $PYTHSCRIPT
- done
-}
-
-RDEPENDS_${PN} = "\
- python3-compile \
- python3-io \
- python3-html \
- python3-json \
- python3-netserver \
- python3-setuptools \
- python3-unixadmin \
- python3-xmlrpc \
-"
-
-BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-devtools/python/python3-pygobject_3.28.1.bb b/poky/meta/recipes-devtools/python/python3-pygobject_3.28.3.bb
index 97286f4e8..313af227b 100644
--- a/poky/meta/recipes-devtools/python/python3-pygobject_3.28.1.bb
+++ b/poky/meta/recipes-devtools/python/python3-pygobject_3.28.3.bb
@@ -12,8 +12,8 @@ SRC_URI = " \
http://ftp.gnome.org/pub/GNOME/sources/${SRCNAME}/${@gnome_verdir("${PV}")}/${SRCNAME}-${PV}.tar.xz \
"
-SRC_URI[md5sum] = "612e9e2863d117d810e78672f7bc3ad6"
-SRC_URI[sha256sum] = "42312b4a5015571fa0a4f2d201005da46b71c251ea2625bc95702d071c4ff895"
+SRC_URI[md5sum] = "3bac63c86bb963aa401f97859464aa90"
+SRC_URI[sha256sum] = "3dd3e21015d06e00482ea665fc1733b77e754a6ab656a5db5d7f7bfaf31ad0b0"
S = "${WORKDIR}/${SRCNAME}-${PV}"
diff --git a/poky/meta/recipes-devtools/python/python3-setuptools_39.0.0.bb b/poky/meta/recipes-devtools/python/python3-setuptools_40.0.0.bb
index 0dc1ed862..0dc1ed862 100644
--- a/poky/meta/recipes-devtools/python/python3-setuptools_39.0.0.bb
+++ b/poky/meta/recipes-devtools/python/python3-setuptools_40.0.0.bb
diff --git a/poky/meta/recipes-devtools/python/python3-subunit_1.3.0.bb b/poky/meta/recipes-devtools/python/python3-subunit_1.3.0.bb
new file mode 100644
index 000000000..2ece4451d
--- /dev/null
+++ b/poky/meta/recipes-devtools/python/python3-subunit_1.3.0.bb
@@ -0,0 +1,2 @@
+inherit setuptools3
+require python-subunit.inc
diff --git a/poky/meta/recipes-devtools/python/python3-testtools_2.3.0.bb b/poky/meta/recipes-devtools/python/python3-testtools_2.3.0.bb
new file mode 100644
index 000000000..896ecee65
--- /dev/null
+++ b/poky/meta/recipes-devtools/python/python3-testtools_2.3.0.bb
@@ -0,0 +1,2 @@
+inherit setuptools3
+require python-testtools.inc
diff --git a/poky/meta/recipes-devtools/python/python3.inc b/poky/meta/recipes-devtools/python/python3.inc
new file mode 100644
index 000000000..f565b3f17
--- /dev/null
+++ b/poky/meta/recipes-devtools/python/python3.inc
@@ -0,0 +1,43 @@
+SUMMARY = "The Python Programming Language"
+HOMEPAGE = "http://www.python.org"
+LICENSE = "PSFv2"
+SECTION = "devel/python"
+
+# TODO Remove this when we upgrade
+INC_PR = "r1"
+PR = "${INC_PR}.0"
+
+LIC_FILES_CHKSUM = "file://LICENSE;md5=b6ec515b22618f55fa07276b897bacea"
+
+# TODO consolidate patch set
+SRC_URI[md5sum] = "f5a99f765e765336a3ebbb2a24ca2be3"
+SRC_URI[sha256sum] = "f55cde04f521f273c7cba08912921cc5642cfc15ca7b22d5829f0aff4371155f"
+
+# exclude pre-releases for both python 2.x and 3.x
+UPSTREAM_CHECK_REGEX = "[Pp]ython-(?P<pver>\d+(\.\d+)+).tar"
+
+CVE_PRODUCT = "python"
+
+PYTHON_MAJMIN = "3.5"
+PYTHON_BINABI = "${PYTHON_MAJMIN}m"
+
+S = "${WORKDIR}/Python-${PV}"
+
+inherit autotools bluetooth pkgconfig
+
+EXTRA_OECONF = "\
+ --with-threads \
+ --with-pymalloc \
+ --without-cxx-main \
+ --with-signal-module \
+ --enable-shared \
+ --enable-ipv6=${@bb.utils.contains('DISTRO_FEATURES', 'ipv6', 'yes', 'no', d)} \
+"
+
+PACKAGECONFIG[bluetooth] = ",ac_cv_header_bluetooth_bluetooth_h=no ac_cv_header_bluetooth_h=no,${BLUEZ}"
+
+do_install_append () {
+ sed -i -e 's:${HOSTTOOLS_DIR}/install:install:g' \
+ -e 's:${HOSTTOOLS_DIR}/mkdir:mkdir:g' \
+ ${D}/${libdir}/python${PYTHON_MAJMIN}/_sysconfigdata.py
+}
diff --git a/poky/meta/recipes-devtools/python/python3/0001-Issue-28043-SSLContext-has-improved-default-settings.patch b/poky/meta/recipes-devtools/python/python3/0001-Issue-28043-SSLContext-has-improved-default-settings.patch
new file mode 100644
index 000000000..321b4afa1
--- /dev/null
+++ b/poky/meta/recipes-devtools/python/python3/0001-Issue-28043-SSLContext-has-improved-default-settings.patch
@@ -0,0 +1,272 @@
+From 758e7463c104f71b810c8588166747eeab6148d7 Mon Sep 17 00:00:00 2001
+From: Christian Heimes <christian@python.org>
+Date: Sat, 10 Sep 2016 22:43:48 +0200
+Subject: [PATCH 1/4] Issue 28043: SSLContext has improved default settings
+
+The options OP_NO_COMPRESSION, OP_CIPHER_SERVER_PREFERENCE, OP_SINGLE_DH_USE, OP_SINGLE_ECDH_USE, OP_NO_SSLv2 (except for PROTOCOL_SSLv2), and OP_NO_SSLv3 (except for PROTOCOL_SSLv3) are set by default. The initial cipher suite list contains only HIGH ciphers, no NULL ciphers and MD5 ciphers (except for PROTOCOL_SSLv2).
+
+Upstream-Status: Backport
+[https://github.com/python/cpython/commit/358cfd426ccc0fcd6a7940d306602138e76420ae]
+
+Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
+---
+ Doc/library/ssl.rst | 9 ++++++-
+ Lib/ssl.py | 30 +++++----------------
+ Lib/test/test_ssl.py | 62 +++++++++++++++++++++++---------------------
+ Modules/_ssl.c | 31 ++++++++++++++++++++++
+ 4 files changed, 78 insertions(+), 54 deletions(-)
+
+diff --git a/Doc/library/ssl.rst b/Doc/library/ssl.rst
+index a2f008346b..14f2d68217 100644
+--- a/Doc/library/ssl.rst
++++ b/Doc/library/ssl.rst
+@@ -1151,7 +1151,14 @@ to speed up repeated connections from the same clients.
+
+ .. versionchanged:: 3.5.3
+
+- :data:`PROTOCOL_TLS` is the default value.
++ The context is created with secure default values. The options
++ :data:`OP_NO_COMPRESSION`, :data:`OP_CIPHER_SERVER_PREFERENCE`,
++ :data:`OP_SINGLE_DH_USE`, :data:`OP_SINGLE_ECDH_USE`,
++ :data:`OP_NO_SSLv2` (except for :data:`PROTOCOL_SSLv2`),
++ and :data:`OP_NO_SSLv3` (except for :data:`PROTOCOL_SSLv3`) are
++ set by default. The initial cipher suite list contains only ``HIGH``
++ ciphers, no ``NULL`` ciphers and no ``MD5`` ciphers (except for
++ :data:`PROTOCOL_SSLv2`).
+
+
+ :class:`SSLContext` objects have the following methods and attributes:
+diff --git a/Lib/ssl.py b/Lib/ssl.py
+index e1913904f3..4d302a78fa 100644
+--- a/Lib/ssl.py
++++ b/Lib/ssl.py
+@@ -446,32 +446,16 @@ def create_default_context(purpose=Purpose.SERVER_AUTH, *, cafile=None,
+ if not isinstance(purpose, _ASN1Object):
+ raise TypeError(purpose)
+
++ # SSLContext sets OP_NO_SSLv2, OP_NO_SSLv3, OP_NO_COMPRESSION,
++ # OP_CIPHER_SERVER_PREFERENCE, OP_SINGLE_DH_USE and OP_SINGLE_ECDH_USE
++ # by default.
+ context = SSLContext(PROTOCOL_TLS)
+
+- # SSLv2 considered harmful.
+- context.options |= OP_NO_SSLv2
+-
+- # SSLv3 has problematic security and is only required for really old
+- # clients such as IE6 on Windows XP
+- context.options |= OP_NO_SSLv3
+-
+- # disable compression to prevent CRIME attacks (OpenSSL 1.0+)
+- context.options |= getattr(_ssl, "OP_NO_COMPRESSION", 0)
+-
+ if purpose == Purpose.SERVER_AUTH:
+ # verify certs and host name in client mode
+ context.verify_mode = CERT_REQUIRED
+ context.check_hostname = True
+ elif purpose == Purpose.CLIENT_AUTH:
+- # Prefer the server's ciphers by default so that we get stronger
+- # encryption
+- context.options |= getattr(_ssl, "OP_CIPHER_SERVER_PREFERENCE", 0)
+-
+- # Use single use keys in order to improve forward secrecy
+- context.options |= getattr(_ssl, "OP_SINGLE_DH_USE", 0)
+- context.options |= getattr(_ssl, "OP_SINGLE_ECDH_USE", 0)
+-
+- # disallow ciphers with known vulnerabilities
+ context.set_ciphers(_RESTRICTED_SERVER_CIPHERS)
+
+ if cafile or capath or cadata:
+@@ -497,12 +481,10 @@ def _create_unverified_context(protocol=PROTOCOL_TLS, *, cert_reqs=None,
+ if not isinstance(purpose, _ASN1Object):
+ raise TypeError(purpose)
+
++ # SSLContext sets OP_NO_SSLv2, OP_NO_SSLv3, OP_NO_COMPRESSION,
++ # OP_CIPHER_SERVER_PREFERENCE, OP_SINGLE_DH_USE and OP_SINGLE_ECDH_USE
++ # by default.
+ context = SSLContext(protocol)
+- # SSLv2 considered harmful.
+- context.options |= OP_NO_SSLv2
+- # SSLv3 has problematic security and is only required for really old
+- # clients such as IE6 on Windows XP
+- context.options |= OP_NO_SSLv3
+
+ if cert_reqs is not None:
+ context.verify_mode = cert_reqs
+diff --git a/Lib/test/test_ssl.py b/Lib/test/test_ssl.py
+index ffb7314f57..f91af7bd05 100644
+--- a/Lib/test/test_ssl.py
++++ b/Lib/test/test_ssl.py
+@@ -73,6 +73,12 @@ NULLBYTECERT = data_file("nullbytecert.pem")
+ DHFILE = data_file("dh1024.pem")
+ BYTES_DHFILE = os.fsencode(DHFILE)
+
++# Not defined in all versions of OpenSSL
++OP_NO_COMPRESSION = getattr(ssl, "OP_NO_COMPRESSION", 0)
++OP_SINGLE_DH_USE = getattr(ssl, "OP_SINGLE_DH_USE", 0)
++OP_SINGLE_ECDH_USE = getattr(ssl, "OP_SINGLE_ECDH_USE", 0)
++OP_CIPHER_SERVER_PREFERENCE = getattr(ssl, "OP_CIPHER_SERVER_PREFERENCE", 0)
++
+
+ def handle_error(prefix):
+ exc_format = ' '.join(traceback.format_exception(*sys.exc_info()))
+@@ -839,8 +845,9 @@ class ContextTests(unittest.TestCase):
+ ctx = ssl.SSLContext(ssl.PROTOCOL_TLSv1)
+ # OP_ALL | OP_NO_SSLv2 | OP_NO_SSLv3 is the default value
+ default = (ssl.OP_ALL | ssl.OP_NO_SSLv2 | ssl.OP_NO_SSLv3)
+- if not IS_LIBRESSL and ssl.OPENSSL_VERSION_INFO >= (1, 1, 0):
+- default |= ssl.OP_NO_COMPRESSION
++ # SSLContext also enables these by default
++ default |= (OP_NO_COMPRESSION | OP_CIPHER_SERVER_PREFERENCE |
++ OP_SINGLE_DH_USE | OP_SINGLE_ECDH_USE)
+ self.assertEqual(default, ctx.options)
+ ctx.options |= ssl.OP_NO_TLSv1
+ self.assertEqual(default | ssl.OP_NO_TLSv1, ctx.options)
+@@ -1205,16 +1212,29 @@ class ContextTests(unittest.TestCase):
+ stats["x509"] += 1
+ self.assertEqual(ctx.cert_store_stats(), stats)
+
++ def _assert_context_options(self, ctx):
++ self.assertEqual(ctx.options & ssl.OP_NO_SSLv2, ssl.OP_NO_SSLv2)
++ if OP_NO_COMPRESSION != 0:
++ self.assertEqual(ctx.options & OP_NO_COMPRESSION,
++ OP_NO_COMPRESSION)
++ if OP_SINGLE_DH_USE != 0:
++ self.assertEqual(ctx.options & OP_SINGLE_DH_USE,
++ OP_SINGLE_DH_USE)
++ if OP_SINGLE_ECDH_USE != 0:
++ self.assertEqual(ctx.options & OP_SINGLE_ECDH_USE,
++ OP_SINGLE_ECDH_USE)
++ if OP_CIPHER_SERVER_PREFERENCE != 0:
++ self.assertEqual(ctx.options & OP_CIPHER_SERVER_PREFERENCE,
++ OP_CIPHER_SERVER_PREFERENCE)
++
+ def test_create_default_context(self):
+ ctx = ssl.create_default_context()
++
+ self.assertEqual(ctx.protocol, ssl.PROTOCOL_SSLv23)
+ self.assertEqual(ctx.verify_mode, ssl.CERT_REQUIRED)
+ self.assertTrue(ctx.check_hostname)
+- self.assertEqual(ctx.options & ssl.OP_NO_SSLv2, ssl.OP_NO_SSLv2)
+- self.assertEqual(
+- ctx.options & getattr(ssl, "OP_NO_COMPRESSION", 0),
+- getattr(ssl, "OP_NO_COMPRESSION", 0),
+- )
++ self._assert_context_options(ctx)
++
+
+ with open(SIGNING_CA) as f:
+ cadata = f.read()
+@@ -1222,40 +1242,24 @@ class ContextTests(unittest.TestCase):
+ cadata=cadata)
+ self.assertEqual(ctx.protocol, ssl.PROTOCOL_SSLv23)
+ self.assertEqual(ctx.verify_mode, ssl.CERT_REQUIRED)
+- self.assertEqual(ctx.options & ssl.OP_NO_SSLv2, ssl.OP_NO_SSLv2)
+- self.assertEqual(
+- ctx.options & getattr(ssl, "OP_NO_COMPRESSION", 0),
+- getattr(ssl, "OP_NO_COMPRESSION", 0),
+- )
++ self._assert_context_options(ctx)
+
+ ctx = ssl.create_default_context(ssl.Purpose.CLIENT_AUTH)
+ self.assertEqual(ctx.protocol, ssl.PROTOCOL_SSLv23)
+ self.assertEqual(ctx.verify_mode, ssl.CERT_NONE)
+- self.assertEqual(ctx.options & ssl.OP_NO_SSLv2, ssl.OP_NO_SSLv2)
+- self.assertEqual(
+- ctx.options & getattr(ssl, "OP_NO_COMPRESSION", 0),
+- getattr(ssl, "OP_NO_COMPRESSION", 0),
+- )
+- self.assertEqual(
+- ctx.options & getattr(ssl, "OP_SINGLE_DH_USE", 0),
+- getattr(ssl, "OP_SINGLE_DH_USE", 0),
+- )
+- self.assertEqual(
+- ctx.options & getattr(ssl, "OP_SINGLE_ECDH_USE", 0),
+- getattr(ssl, "OP_SINGLE_ECDH_USE", 0),
+- )
++ self._assert_context_options(ctx)
+
+ def test__create_stdlib_context(self):
+ ctx = ssl._create_stdlib_context()
+ self.assertEqual(ctx.protocol, ssl.PROTOCOL_SSLv23)
+ self.assertEqual(ctx.verify_mode, ssl.CERT_NONE)
+ self.assertFalse(ctx.check_hostname)
+- self.assertEqual(ctx.options & ssl.OP_NO_SSLv2, ssl.OP_NO_SSLv2)
++ self._assert_context_options(ctx)
+
+ ctx = ssl._create_stdlib_context(ssl.PROTOCOL_TLSv1)
+ self.assertEqual(ctx.protocol, ssl.PROTOCOL_TLSv1)
+ self.assertEqual(ctx.verify_mode, ssl.CERT_NONE)
+- self.assertEqual(ctx.options & ssl.OP_NO_SSLv2, ssl.OP_NO_SSLv2)
++ self._assert_context_options(ctx)
+
+ ctx = ssl._create_stdlib_context(ssl.PROTOCOL_TLSv1,
+ cert_reqs=ssl.CERT_REQUIRED,
+@@ -1263,12 +1267,12 @@ class ContextTests(unittest.TestCase):
+ self.assertEqual(ctx.protocol, ssl.PROTOCOL_TLSv1)
+ self.assertEqual(ctx.verify_mode, ssl.CERT_REQUIRED)
+ self.assertTrue(ctx.check_hostname)
+- self.assertEqual(ctx.options & ssl.OP_NO_SSLv2, ssl.OP_NO_SSLv2)
++ self._assert_context_options(ctx)
+
+ ctx = ssl._create_stdlib_context(purpose=ssl.Purpose.CLIENT_AUTH)
+ self.assertEqual(ctx.protocol, ssl.PROTOCOL_SSLv23)
+ self.assertEqual(ctx.verify_mode, ssl.CERT_NONE)
+- self.assertEqual(ctx.options & ssl.OP_NO_SSLv2, ssl.OP_NO_SSLv2)
++ self._assert_context_options(ctx)
+
+ def test_check_hostname(self):
+ ctx = ssl.SSLContext(ssl.PROTOCOL_TLSv1)
+diff --git a/Modules/_ssl.c b/Modules/_ssl.c
+index 86482677ae..0d5c121d2c 100644
+--- a/Modules/_ssl.c
++++ b/Modules/_ssl.c
+@@ -2330,6 +2330,7 @@ _ssl__SSLContext_impl(PyTypeObject *type, int proto_version)
+ PySSLContext *self;
+ long options;
+ SSL_CTX *ctx = NULL;
++ int result;
+ #if defined(SSL_MODE_RELEASE_BUFFERS)
+ unsigned long libver;
+ #endif
+@@ -2393,8 +2394,38 @@ _ssl__SSLContext_impl(PyTypeObject *type, int proto_version)
+ options |= SSL_OP_NO_SSLv2;
+ if (proto_version != PY_SSL_VERSION_SSL3)
+ options |= SSL_OP_NO_SSLv3;
++ /* Minimal security flags for server and client side context.
++ * Client sockets ignore server-side parameters. */
++#ifdef SSL_OP_NO_COMPRESSION
++ options |= SSL_OP_NO_COMPRESSION;
++#endif
++#ifdef SSL_OP_CIPHER_SERVER_PREFERENCE
++ options |= SSL_OP_CIPHER_SERVER_PREFERENCE;
++#endif
++#ifdef SSL_OP_SINGLE_DH_USE
++ options |= SSL_OP_SINGLE_DH_USE;
++#endif
++#ifdef SSL_OP_SINGLE_ECDH_USE
++ options |= SSL_OP_SINGLE_ECDH_USE;
++#endif
+ SSL_CTX_set_options(self->ctx, options);
+
++ /* A bare minimum cipher list without completly broken cipher suites.
++ * It's far from perfect but gives users a better head start. */
++ if (proto_version != PY_SSL_VERSION_SSL2) {
++ result = SSL_CTX_set_cipher_list(ctx, "HIGH:!aNULL:!eNULL:!MD5");
++ } else {
++ /* SSLv2 needs MD5 */
++ result = SSL_CTX_set_cipher_list(ctx, "HIGH:!aNULL:!eNULL");
++ }
++ if (result == 0) {
++ Py_DECREF(self);
++ ERR_clear_error();
++ PyErr_SetString(PySSLErrorObject,
++ "No cipher can be selected.");
++ return NULL;
++ }
++
+ #if defined(SSL_MODE_RELEASE_BUFFERS)
+ /* Set SSL_MODE_RELEASE_BUFFERS. This potentially greatly reduces memory
+ usage for no cost at all. However, don't do this for OpenSSL versions
+--
+2.17.1
+
diff --git a/poky/meta/recipes-devtools/python/python3/0001-cross-compile-support.patch b/poky/meta/recipes-devtools/python/python3/0001-cross-compile-support.patch
deleted file mode 100644
index 7cd7e3b49..000000000
--- a/poky/meta/recipes-devtools/python/python3/0001-cross-compile-support.patch
+++ /dev/null
@@ -1,96 +0,0 @@
-From ecde3ea170999a9ef734e8af4d7c25be5ba81697 Mon Sep 17 00:00:00 2001
-From: Alexander Kanavin <alex.kanavin@gmail.com>
-Date: Fri, 31 Mar 2017 15:42:46 +0300
-Subject: [PATCH] cross-compile support
-
-We cross compile python. This patch uses tools from host/native
-python instead of in-tree tools
-
--Khem
-
-Rebased on 3.5.4
-
-Upstream-Status: Inappropriate[Configuration Specific]
-Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
-Signed-off-by: Derek Straka <derek@asterius.io>
----
- Makefile.pre.in | 14 ++++++++------
- 1 file changed, 8 insertions(+), 6 deletions(-)
-
-diff --git a/Makefile.pre.in b/Makefile.pre.in
-index 144c1f8629..f252ac2417 100644
---- a/Makefile.pre.in
-+++ b/Makefile.pre.in
-@@ -223,6 +223,7 @@ LIBOBJS= @LIBOBJS@
-
- PYTHON= python$(EXE)
- BUILDPYTHON= python$(BUILDEXE)
-+HOSTPYTHON= $(BUILDPYTHON)
-
- PYTHON_FOR_REGEN=@PYTHON_FOR_REGEN@
- PYTHON_FOR_BUILD=@PYTHON_FOR_BUILD@
-@@ -277,6 +278,7 @@ LIBFFI_INCLUDEDIR= @LIBFFI_INCLUDEDIR@
- ##########################################################################
- # Parser
- PGEN= Parser/pgen$(EXE)
-+HOSTPGEN= $(PGEN)$(EXE)
-
- PSRCS= \
- Parser/acceler.c \
-@@ -478,7 +480,7 @@ build_all_generate_profile:
-
- run_profile_task:
- : # FIXME: can't run for a cross build
-- $(LLVM_PROF_FILE) $(RUNSHARED) ./$(BUILDPYTHON) $(PROFILE_TASK) || true
-+ $(LLVM_PROF_FILE) $(RUNSHARED) $(HOSTPYTHON) $(PROFILE_TASK) || true
-
- build_all_merge_profile:
- $(LLVM_PROF_MERGER)
-@@ -772,7 +774,7 @@ regen-grammar: $(PGEN)
- # Regenerate Include/graminit.h and Python/graminit.c
- # from Grammar/Grammar using pgen
- @$(MKDIR_P) Include
-- $(PGEN) $(srcdir)/Grammar/Grammar \
-+ $(HOSTPGEN) $(srcdir)/Grammar/Grammar \
- $(srcdir)/Include/graminit.h \
- $(srcdir)/Python/graminit.c
-
-@@ -978,7 +980,7 @@ $(LIBRARY_OBJS) $(MODOBJS) Programs/python.o: $(PYTHON_HEADERS)
- ######################################################################
-
- TESTOPTS= $(EXTRATESTOPTS)
--TESTPYTHON= $(RUNSHARED) ./$(BUILDPYTHON) $(TESTPYTHONOPTS)
-+TESTPYTHON= $(RUNSHARED) $(HOSTPYTHON) $(TESTPYTHONOPTS)
- TESTRUNNER= $(TESTPYTHON) $(srcdir)/Tools/scripts/run_tests.py
- TESTTIMEOUT= 3600
-
-@@ -1470,7 +1472,7 @@ frameworkinstallstructure: $(LDLIBRARY)
- fi; \
- done
- $(LN) -fsn include/python$(LDVERSION) $(DESTDIR)$(prefix)/Headers
-- sed 's/%VERSION%/'"`$(RUNSHARED) ./$(BUILDPYTHON) -c 'import platform; print(platform.python_version())'`"'/g' < $(RESSRCDIR)/Info.plist > $(DESTDIR)$(prefix)/Resources/Info.plist
-+ sed 's/%VERSION%/'"`$(RUNSHARED) $(HOSTPYTHON) -c 'import platform; print(platform.python_version())'`"'/g' < $(RESSRCDIR)/Info.plist > $(DESTDIR)$(prefix)/Resources/Info.plist
- $(LN) -fsn $(VERSION) $(DESTDIR)$(PYTHONFRAMEWORKINSTALLDIR)/Versions/Current
- $(LN) -fsn Versions/Current/$(PYTHONFRAMEWORK) $(DESTDIR)$(PYTHONFRAMEWORKINSTALLDIR)/$(PYTHONFRAMEWORK)
- $(LN) -fsn Versions/Current/Headers $(DESTDIR)$(PYTHONFRAMEWORKINSTALLDIR)/Headers
-@@ -1543,7 +1545,7 @@ Python/dtoa.o: Python/dtoa.c
-
- # Run reindent on the library
- reindent:
-- ./$(BUILDPYTHON) $(srcdir)/Tools/scripts/reindent.py -r $(srcdir)/Lib
-+ $(HOSTPYTHON) $(srcdir)/Tools/scripts/reindent.py -r $(srcdir)/Lib
-
- # Rerun configure with the same options as it was run last time,
- # provided the config.status script exists
-@@ -1678,7 +1680,7 @@ funny:
-
- # Perform some verification checks on any modified files.
- patchcheck: @DEF_MAKE_RULE@
-- $(RUNSHARED) ./$(BUILDPYTHON) $(srcdir)/Tools/scripts/patchcheck.py
-+ $(RUNSHARED) $(HOSTPYTHON) $(srcdir)/Tools/scripts/patchcheck.py
-
- # Dependencies
-
---
-2.11.0
-
diff --git a/poky/meta/recipes-devtools/python/python3/0002-Makefile-add-target-to-split-profile-generation.patch b/poky/meta/recipes-devtools/python/python3/0002-Makefile-add-target-to-split-profile-generation.patch
new file mode 100644
index 000000000..2b4ba316e
--- /dev/null
+++ b/poky/meta/recipes-devtools/python/python3/0002-Makefile-add-target-to-split-profile-generation.patch
@@ -0,0 +1,40 @@
+From 98586d6dc598e40b8b821b0dde57599e188a7ca4 Mon Sep 17 00:00:00 2001
+From: Anuj Mittal <anuj.mittal@intel.com>
+Date: Tue, 7 Aug 2018 16:43:17 +0800
+Subject: [PATCH 2/2] Makefile: add target to split profile generation
+
+We don't want to have profile task invoked from here and want to use
+qemu-user instead. Split the profile-opt task so qemu can be invoked
+once binaries have been built with instrumentation and then we can go
+ahead and build again using the profile data generated.
+
+Upstream-Status: Inappropriate [OE-specific]
+
+Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
+---
+ Makefile.pre.in | 6 ++----
+ 1 file changed, 2 insertions(+), 4 deletions(-)
+
+diff --git a/Makefile.pre.in b/Makefile.pre.in
+index 84bc3ff..017a2c4 100644
+--- a/Makefile.pre.in
++++ b/Makefile.pre.in
+@@ -469,13 +469,12 @@ profile-opt:
+ $(MAKE) profile-removal
+ $(MAKE) build_all_generate_profile
+ $(MAKE) profile-removal
+- @echo "Running code to generate profile data (this can take a while):"
+- $(MAKE) run_profile_task
+- $(MAKE) build_all_merge_profile
++
++clean_and_use_profile:
+ @echo "Rebuilding with profile guided optimizations:"
+ $(MAKE) clean
+ $(MAKE) build_all_use_profile
+ $(MAKE) profile-removal
+
+ build_all_generate_profile:
+ $(MAKE) @DEF_MAKE_RULE@ CFLAGS_NODIST="$(CFLAGS) $(EXTRA_CFLAGS) $(PGO_PROF_GEN_FLAG) @LTOFLAGS@" LDFLAGS="$(LDFLAGS) $(PGO_PROF_GEN_FLAG) @LTOFLAGS@" LIBS="$(LIBS)"
+--
+2.17.1
+
diff --git a/poky/meta/recipes-devtools/python/python3/0002-bpo-29136-Add-TLS-1.3-cipher-suites-and-OP_NO_TLSv1_.patch b/poky/meta/recipes-devtools/python/python3/0002-bpo-29136-Add-TLS-1.3-cipher-suites-and-OP_NO_TLSv1_.patch
new file mode 100644
index 000000000..d48cad758
--- /dev/null
+++ b/poky/meta/recipes-devtools/python/python3/0002-bpo-29136-Add-TLS-1.3-cipher-suites-and-OP_NO_TLSv1_.patch
@@ -0,0 +1,227 @@
+From e950ea68dab006944af194c9910b8f2341d1437d Mon Sep 17 00:00:00 2001
+From: Christian Heimes <christian@python.org>
+Date: Thu, 7 Sep 2017 20:23:52 -0700
+Subject: [PATCH] bpo-29136: Add TLS 1.3 cipher suites and OP_NO_TLSv1_3
+ (GH-1363) (#3444)
+
+* bpo-29136: Add TLS 1.3 support
+
+TLS 1.3 introduces a new, distinct set of cipher suites. The TLS 1.3
+cipher suites don't overlap with cipher suites from TLS 1.2 and earlier.
+Since Python sets its own set of permitted ciphers, TLS 1.3 handshake
+will fail as soon as OpenSSL 1.1.1 is released. Let's enable the common
+AES-GCM and ChaCha20 suites.
+
+Additionally the flag OP_NO_TLSv1_3 is added. It defaults to 0 (no op) with
+OpenSSL prior to 1.1.1. This allows applications to opt-out from TLS 1.3
+now.
+
+Signed-off-by: Christian Heimes <christian@python.org>.
+(cherry picked from commit cb5b68abdeb1b1d56c581d5b4d647018703d61e3)
+
+Upstream-Status: Backport
+[https://github.com/python/cpython/commit/cb5b68abdeb1b1d56c581d5b4d647018703d61e3]
+
+Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
+---
+ Doc/library/ssl.rst | 21 ++++++++++++++
+ Lib/ssl.py | 7 +++++
+ Lib/test/test_ssl.py | 29 ++++++++++++++++++-
+ .../2017-09-04-16-39-49.bpo-29136.vSn1oR.rst | 1 +
+ Modules/_ssl.c | 13 +++++++++
+ 5 files changed, 70 insertions(+), 1 deletion(-)
+ create mode 100644 Misc/NEWS.d/next/Library/2017-09-04-16-39-49.bpo-29136.vSn1oR.rst
+
+diff --git a/Doc/library/ssl.rst b/Doc/library/ssl.rst
+index 14f2d68217..29c5e94cf6 100644
+--- a/Doc/library/ssl.rst
++++ b/Doc/library/ssl.rst
+@@ -285,6 +285,11 @@ purposes.
+
+ 3DES was dropped from the default cipher string.
+
++ .. versionchanged:: 3.7
++
++ TLS 1.3 cipher suites TLS_AES_128_GCM_SHA256, TLS_AES_256_GCM_SHA384,
++ and TLS_CHACHA20_POLY1305_SHA256 were added to the default cipher string.
++
+
+ Random generation
+ ^^^^^^^^^^^^^^^^^
+@@ -719,6 +724,16 @@ Constants
+
+ .. versionadded:: 3.4
+
++.. data:: OP_NO_TLSv1_3
++
++ Prevents a TLSv1.3 connection. This option is only applicable in conjunction
++ with :const:`PROTOCOL_TLS`. It prevents the peers from choosing TLSv1.3 as
++ the protocol version. TLS 1.3 is available with OpenSSL 1.1.1 or later.
++ When Python has been compiled against an older version of OpenSSL, the
++ flag defaults to *0*.
++
++ .. versionadded:: 3.7
++
+ .. data:: OP_CIPHER_SERVER_PREFERENCE
+
+ Use the server's cipher ordering preference, rather than the client's.
+@@ -783,6 +798,12 @@ Constants
+
+ .. versionadded:: 3.3
+
++.. data:: HAS_TLSv1_3
++
++ Whether the OpenSSL library has built-in support for the TLS 1.3 protocol.
++
++ .. versionadded:: 3.7
++
+ .. data:: CHANNEL_BINDING_TYPES
+
+ List of supported TLS channel binding types. Strings in this list
+diff --git a/Lib/ssl.py b/Lib/ssl.py
+index 4d302a78fa..f233e72e1f 100644
+--- a/Lib/ssl.py
++++ b/Lib/ssl.py
+@@ -122,6 +122,7 @@ _import_symbols('OP_')
+ _import_symbols('ALERT_DESCRIPTION_')
+ _import_symbols('SSL_ERROR_')
+ _import_symbols('VERIFY_')
++from _ssl import HAS_SNI, HAS_ECDH, HAS_NPN, HAS_ALPN, HAS_TLSv1_3
+
+ from _ssl import HAS_SNI, HAS_ECDH, HAS_NPN, HAS_ALPN
+
+@@ -162,6 +163,7 @@ else:
+ # (OpenSSL's default setting is 'DEFAULT:!aNULL:!eNULL')
+ # Enable a better set of ciphers by default
+ # This list has been explicitly chosen to:
++# * TLS 1.3 ChaCha20 and AES-GCM cipher suites
+ # * Prefer cipher suites that offer perfect forward secrecy (DHE/ECDHE)
+ # * Prefer ECDHE over DHE for better performance
+ # * Prefer AEAD over CBC for better performance and security
+@@ -173,6 +175,8 @@ else:
+ # * Disable NULL authentication, NULL encryption, 3DES and MD5 MACs
+ # for security reasons
+ _DEFAULT_CIPHERS = (
++ 'TLS13-AES-256-GCM-SHA384:TLS13-CHACHA20-POLY1305-SHA256:'
++ 'TLS13-AES-128-GCM-SHA256:'
+ 'ECDH+AESGCM:ECDH+CHACHA20:DH+AESGCM:DH+CHACHA20:ECDH+AES256:DH+AES256:'
+ 'ECDH+AES128:DH+AES:ECDH+HIGH:DH+HIGH:RSA+AESGCM:RSA+AES:RSA+HIGH:'
+ '!aNULL:!eNULL:!MD5:!3DES'
+@@ -180,6 +184,7 @@ _DEFAULT_CIPHERS = (
+
+ # Restricted and more secure ciphers for the server side
+ # This list has been explicitly chosen to:
++# * TLS 1.3 ChaCha20 and AES-GCM cipher suites
+ # * Prefer cipher suites that offer perfect forward secrecy (DHE/ECDHE)
+ # * Prefer ECDHE over DHE for better performance
+ # * Prefer AEAD over CBC for better performance and security
+@@ -190,6 +195,8 @@ _DEFAULT_CIPHERS = (
+ # * Disable NULL authentication, NULL encryption, MD5 MACs, DSS, RC4, and
+ # 3DES for security reasons
+ _RESTRICTED_SERVER_CIPHERS = (
++ 'TLS13-AES-256-GCM-SHA384:TLS13-CHACHA20-POLY1305-SHA256:'
++ 'TLS13-AES-128-GCM-SHA256:'
+ 'ECDH+AESGCM:ECDH+CHACHA20:DH+AESGCM:DH+CHACHA20:ECDH+AES256:DH+AES256:'
+ 'ECDH+AES128:DH+AES:ECDH+HIGH:DH+HIGH:RSA+AESGCM:RSA+AES:RSA+HIGH:'
+ '!aNULL:!eNULL:!MD5:!DSS:!RC4:!3DES'
+diff --git a/Lib/test/test_ssl.py b/Lib/test/test_ssl.py
+index f91af7bd05..1acc12ec2d 100644
+--- a/Lib/test/test_ssl.py
++++ b/Lib/test/test_ssl.py
+@@ -150,6 +150,13 @@ class BasicSocketTests(unittest.TestCase):
+ ssl.OP_NO_COMPRESSION
+ self.assertIn(ssl.HAS_SNI, {True, False})
+ self.assertIn(ssl.HAS_ECDH, {True, False})
++ ssl.OP_NO_SSLv2
++ ssl.OP_NO_SSLv3
++ ssl.OP_NO_TLSv1
++ ssl.OP_NO_TLSv1_3
++ if ssl.OPENSSL_VERSION_INFO >= (1, 0, 1):
++ ssl.OP_NO_TLSv1_1
++ ssl.OP_NO_TLSv1_2
+
+ def test_str_for_enums(self):
+ # Make sure that the PROTOCOL_* constants have enum-like string
+@@ -3028,12 +3035,33 @@ else:
+ self.assertEqual(s.version(), 'TLSv1')
+ self.assertIs(s.version(), None)
+
++ @unittest.skipUnless(ssl.HAS_TLSv1_3,
++ "test requires TLSv1.3 enabled OpenSSL")
++ def test_tls1_3(self):
++ context = ssl.SSLContext(ssl.PROTOCOL_TLS)
++ context.load_cert_chain(CERTFILE)
++ # disable all but TLS 1.3
++ context.options |= (
++ ssl.OP_NO_TLSv1 | ssl.OP_NO_TLSv1_1 | ssl.OP_NO_TLSv1_2
++ )
++ with ThreadedEchoServer(context=context) as server:
++ with context.wrap_socket(socket.socket()) as s:
++ s.connect((HOST, server.port))
++ self.assertIn(s.cipher()[0], [
++ 'TLS13-AES-256-GCM-SHA384',
++ 'TLS13-CHACHA20-POLY1305-SHA256',
++ 'TLS13-AES-128-GCM-SHA256',
++ ])
++
+ @unittest.skipUnless(ssl.HAS_ECDH, "test requires ECDH-enabled OpenSSL")
+ def test_default_ecdh_curve(self):
+ # Issue #21015: elliptic curve-based Diffie Hellman key exchange
+ # should be enabled by default on SSL contexts.
+ context = ssl.SSLContext(ssl.PROTOCOL_SSLv23)
+ context.load_cert_chain(CERTFILE)
++ # TLSv1.3 defaults to PFS key agreement and no longer has KEA in
++ # cipher name.
++ context.options |= ssl.OP_NO_TLSv1_3
+ # Prior to OpenSSL 1.0.0, ECDH ciphers have to be enabled
+ # explicitly using the 'ECCdraft' cipher alias. Otherwise,
+ # our default cipher list should prefer ECDH-based ciphers
+@@ -3394,7 +3422,6 @@ else:
+ s.sendfile(file)
+ self.assertEqual(s.recv(1024), TEST_DATA)
+
+-
+ def test_main(verbose=False):
+ if support.verbose:
+ import warnings
+diff --git a/Misc/NEWS.d/next/Library/2017-09-04-16-39-49.bpo-29136.vSn1oR.rst b/Misc/NEWS.d/next/Library/2017-09-04-16-39-49.bpo-29136.vSn1oR.rst
+new file mode 100644
+index 0000000000..e76997ef83
+--- /dev/null
++++ b/Misc/NEWS.d/next/Library/2017-09-04-16-39-49.bpo-29136.vSn1oR.rst
+@@ -0,0 +1 @@
++Add TLS 1.3 cipher suites and OP_NO_TLSv1_3.
+diff --git a/Modules/_ssl.c b/Modules/_ssl.c
+index 0d5c121d2c..c71d89607c 100644
+--- a/Modules/_ssl.c
++++ b/Modules/_ssl.c
+@@ -4842,6 +4842,11 @@ PyInit__ssl(void)
+ #if HAVE_TLSv1_2
+ PyModule_AddIntConstant(m, "OP_NO_TLSv1_1", SSL_OP_NO_TLSv1_1);
+ PyModule_AddIntConstant(m, "OP_NO_TLSv1_2", SSL_OP_NO_TLSv1_2);
++#endif
++#ifdef SSL_OP_NO_TLSv1_3
++ PyModule_AddIntConstant(m, "OP_NO_TLSv1_3", SSL_OP_NO_TLSv1_3);
++#else
++ PyModule_AddIntConstant(m, "OP_NO_TLSv1_3", 0);
+ #endif
+ PyModule_AddIntConstant(m, "OP_CIPHER_SERVER_PREFERENCE",
+ SSL_OP_CIPHER_SERVER_PREFERENCE);
+@@ -4890,6 +4895,14 @@ PyInit__ssl(void)
+ Py_INCREF(r);
+ PyModule_AddObject(m, "HAS_ALPN", r);
+
++#if defined(TLS1_3_VERSION) && !defined(OPENSSL_NO_TLS1_3)
++ r = Py_True;
++#else
++ r = Py_False;
++#endif
++ Py_INCREF(r);
++ PyModule_AddObject(m, "HAS_TLSv1_3", r);
++
+ /* Mappings for error codes */
+ err_codes_to_names = PyDict_New();
+ err_names_to_codes = PyDict_New();
+--
+2.17.1
+
diff --git a/poky/meta/recipes-devtools/python/python3/0003-bpo-32947-Fixes-for-TLS-1.3-and-OpenSSL-1.1.1-GH-876.patch b/poky/meta/recipes-devtools/python/python3/0003-bpo-32947-Fixes-for-TLS-1.3-and-OpenSSL-1.1.1-GH-876.patch
new file mode 100644
index 000000000..56d591d1b
--- /dev/null
+++ b/poky/meta/recipes-devtools/python/python3/0003-bpo-32947-Fixes-for-TLS-1.3-and-OpenSSL-1.1.1-GH-876.patch
@@ -0,0 +1,173 @@
+From 170a614904febd14ff6cfd7a75c9bccc114b3948 Mon Sep 17 00:00:00 2001
+From: Christian Heimes <christian@python.org>
+Date: Tue, 14 Aug 2018 16:56:32 +0200
+Subject: [PATCH] bpo-32947: Fixes for TLS 1.3 and OpenSSL 1.1.1 (GH-8761)
+
+Backport of TLS 1.3 related fixes from 3.7.
+
+Misc fixes and workarounds for compatibility with OpenSSL 1.1.1 from git
+master and TLS 1.3 support. With OpenSSL 1.1.1, Python negotiates TLS 1.3 by
+default. Some test cases only apply to TLS 1.2.
+
+OpenSSL 1.1.1 has added a new option OP_ENABLE_MIDDLEBOX_COMPAT for TLS
+1.3. The feature is enabled by default for maximum compatibility with
+broken middle boxes. Users should be able to disable the hack and CPython's test suite needs
+it to verify default options
+
+Signed-off-by: Christian Heimes <christian@python.org>
+
+Upstream-Status: Backport
+[https://github.com/python/cpython/commit/2a4ee8aa01d61b6a9c8e9c65c211e61bdb471826]
+
+Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
+---
+ Doc/library/ssl.rst | 9 ++++++
+ Lib/test/test_asyncio/test_events.py | 6 +++-
+ Lib/test/test_ssl.py | 29 +++++++++++++++----
+ .../2018-08-14-08-57-01.bpo-32947.mqStVW.rst | 2 ++
+ Modules/_ssl.c | 4 +++
+ 5 files changed, 44 insertions(+), 6 deletions(-)
+ create mode 100644 Misc/NEWS.d/next/Library/2018-08-14-08-57-01.bpo-32947.mqStVW.rst
+
+diff --git a/Doc/library/ssl.rst b/Doc/library/ssl.rst
+index 29c5e94cf6..f63a3deec5 100644
+--- a/Doc/library/ssl.rst
++++ b/Doc/library/ssl.rst
+@@ -757,6 +757,15 @@ Constants
+
+ .. versionadded:: 3.3
+
++.. data:: OP_ENABLE_MIDDLEBOX_COMPAT
++
++ Send dummy Change Cipher Spec (CCS) messages in TLS 1.3 handshake to make
++ a TLS 1.3 connection look more like a TLS 1.2 connection.
++
++ This option is only available with OpenSSL 1.1.1 and later.
++
++ .. versionadded:: 3.6.7
++
+ .. data:: OP_NO_COMPRESSION
+
+ Disable compression on the SSL channel. This is useful if the application
+diff --git a/Lib/test/test_asyncio/test_events.py b/Lib/test/test_asyncio/test_events.py
+index 492a84a231..6f208474b9 100644
+--- a/Lib/test/test_asyncio/test_events.py
++++ b/Lib/test/test_asyncio/test_events.py
+@@ -1169,7 +1169,11 @@ class EventLoopTestsMixin:
+ self.loop.run_until_complete(f_c)
+
+ # close connection
+- proto.transport.close()
++ # transport may be None with TLS 1.3, because connection is
++ # interrupted, server is unable to send session tickets, and
++ # transport is closed.
++ if proto.transport is not None:
++ proto.transport.close()
+ server.close()
+
+ def test_legacy_create_server_ssl_match_failed(self):
+diff --git a/Lib/test/test_ssl.py b/Lib/test/test_ssl.py
+index 1acc12ec2d..a2e1d32a62 100644
+--- a/Lib/test/test_ssl.py
++++ b/Lib/test/test_ssl.py
+@@ -78,6 +78,7 @@ OP_NO_COMPRESSION = getattr(ssl, "OP_NO_COMPRESSION", 0)
+ OP_SINGLE_DH_USE = getattr(ssl, "OP_SINGLE_DH_USE", 0)
+ OP_SINGLE_ECDH_USE = getattr(ssl, "OP_SINGLE_ECDH_USE", 0)
+ OP_CIPHER_SERVER_PREFERENCE = getattr(ssl, "OP_CIPHER_SERVER_PREFERENCE", 0)
++OP_ENABLE_MIDDLEBOX_COMPAT = getattr(ssl, "OP_ENABLE_MIDDLEBOX_COMPAT", 0)
+
+
+ def handle_error(prefix):
+@@ -155,8 +156,8 @@ class BasicSocketTests(unittest.TestCase):
+ ssl.OP_NO_TLSv1
+ ssl.OP_NO_TLSv1_3
+ if ssl.OPENSSL_VERSION_INFO >= (1, 0, 1):
+- ssl.OP_NO_TLSv1_1
+- ssl.OP_NO_TLSv1_2
++ ssl.OP_NO_TLSv1_1
++ ssl.OP_NO_TLSv1_2
+
+ def test_str_for_enums(self):
+ # Make sure that the PROTOCOL_* constants have enum-like string
+@@ -854,7 +855,8 @@ class ContextTests(unittest.TestCase):
+ default = (ssl.OP_ALL | ssl.OP_NO_SSLv2 | ssl.OP_NO_SSLv3)
+ # SSLContext also enables these by default
+ default |= (OP_NO_COMPRESSION | OP_CIPHER_SERVER_PREFERENCE |
+- OP_SINGLE_DH_USE | OP_SINGLE_ECDH_USE)
++ OP_SINGLE_DH_USE | OP_SINGLE_ECDH_USE |
++ OP_ENABLE_MIDDLEBOX_COMPAT)
+ self.assertEqual(default, ctx.options)
+ ctx.options |= ssl.OP_NO_TLSv1
+ self.assertEqual(default | ssl.OP_NO_TLSv1, ctx.options)
+@@ -1860,11 +1862,26 @@ else:
+ self.sock, server_side=True)
+ self.server.selected_npn_protocols.append(self.sslconn.selected_npn_protocol())
+ self.server.selected_alpn_protocols.append(self.sslconn.selected_alpn_protocol())
+- except (ssl.SSLError, ConnectionResetError) as e:
++ except (ConnectionResetError, BrokenPipeError) as e:
+ # We treat ConnectionResetError as though it were an
+ # SSLError - OpenSSL on Ubuntu abruptly closes the
+ # connection when asked to use an unsupported protocol.
+ #
++ # BrokenPipeError is raised in TLS 1.3 mode, when OpenSSL
++ # tries to send session tickets after handshake.
++ # https://github.com/openssl/openssl/issues/6342
++ self.server.conn_errors.append(str(e))
++ if self.server.chatty:
++ handle_error(
++ "\n server: bad connection attempt from " + repr(
++ self.addr) + ":\n")
++ self.running = False
++ self.close()
++ return False
++ except (ssl.SSLError, OSError) as e:
++ # OSError may occur with wrong protocols, e.g. both
++ # sides use PROTOCOL_TLS_SERVER.
++ #
+ # XXX Various errors can have happened here, for example
+ # a mismatching protocol version, an invalid certificate,
+ # or a low-level bug. This should be made more discriminating.
+@@ -2974,7 +2991,7 @@ else:
+ # Block on the accept and wait on the connection to close.
+ evt.set()
+ remote, peer = server.accept()
+- remote.recv(1)
++ remote.send(remote.recv(4))
+
+ t = threading.Thread(target=serve)
+ t.start()
+@@ -2982,6 +2999,8 @@ else:
+ evt.wait()
+ client = context.wrap_socket(socket.socket())
+ client.connect((host, port))
++ client.send(b'data')
++ client.recv()
+ client_addr = client.getsockname()
+ client.close()
+ t.join()
+diff --git a/Misc/NEWS.d/next/Library/2018-08-14-08-57-01.bpo-32947.mqStVW.rst b/Misc/NEWS.d/next/Library/2018-08-14-08-57-01.bpo-32947.mqStVW.rst
+new file mode 100644
+index 0000000000..28de360c36
+--- /dev/null
++++ b/Misc/NEWS.d/next/Library/2018-08-14-08-57-01.bpo-32947.mqStVW.rst
+@@ -0,0 +1,2 @@
++Add OP_ENABLE_MIDDLEBOX_COMPAT and test workaround for TLSv1.3 for future
++compatibility with OpenSSL 1.1.1.
+diff --git a/Modules/_ssl.c b/Modules/_ssl.c
+index c71d89607c..eb123a87ba 100644
+--- a/Modules/_ssl.c
++++ b/Modules/_ssl.c
+@@ -4858,6 +4858,10 @@ PyInit__ssl(void)
+ PyModule_AddIntConstant(m, "OP_NO_COMPRESSION",
+ SSL_OP_NO_COMPRESSION);
+ #endif
++#ifdef SSL_OP_ENABLE_MIDDLEBOX_COMPAT
++ PyModule_AddIntConstant(m, "OP_ENABLE_MIDDLEBOX_COMPAT",
++ SSL_OP_ENABLE_MIDDLEBOX_COMPAT);
++#endif
+
+ #if HAVE_SNI
+ r = Py_True;
+--
+2.17.1
+
diff --git a/poky/meta/recipes-devtools/python/python3/0004-bpo-33570-TLS-1.3-ciphers-for-OpenSSL-1.1.1-GH-6976.patch b/poky/meta/recipes-devtools/python/python3/0004-bpo-33570-TLS-1.3-ciphers-for-OpenSSL-1.1.1-GH-6976.patch
new file mode 100644
index 000000000..b97d5501e
--- /dev/null
+++ b/poky/meta/recipes-devtools/python/python3/0004-bpo-33570-TLS-1.3-ciphers-for-OpenSSL-1.1.1-GH-6976.patch
@@ -0,0 +1,110 @@
+From 0c9354362bfa5f90fbea8ff8237a1f1f5dba686f Mon Sep 17 00:00:00 2001
+From: Christian Heimes <christian@python.org>
+Date: Wed, 12 Sep 2018 15:20:31 +0800
+Subject: [PATCH] bpo-33570: TLS 1.3 ciphers for OpenSSL 1.1.1 (GH-6976)
+
+Change TLS 1.3 cipher suite settings for compatibility with OpenSSL
+1.1.1-pre6 and newer. OpenSSL 1.1.1 will have TLS 1.3 cipers enabled by
+default.
+
+Also update multissltests and Travis config to test with latest OpenSSL.
+
+Signed-off-by: Christian Heimes <christian@python.org>
+(cherry picked from commit e8eb6cb7920ded66abc5d284319a8539bdc2bae3)
+
+Co-authored-by: Christian Heimes <christian@python.org
+
+Upstream-Status: Backport
+[https://github.com/python/cpython/commit/3e630c541b35c96bfe5619165255e559f577ee71]
+
+Tweaked patch to not take changes for multissltests and Travis config.
+
+Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
+---
+ Lib/test/test_ssl.py | 51 ++++++++++++++++++++++----------------------
+ 1 file changed, 26 insertions(+), 25 deletions(-)
+
+diff --git a/Lib/test/test_ssl.py b/Lib/test/test_ssl.py
+index a2e1d32a62..c484ead5ff 100644
+--- a/Lib/test/test_ssl.py
++++ b/Lib/test/test_ssl.py
+@@ -3024,17 +3024,21 @@ else:
+ sock.do_handshake()
+ self.assertEqual(cm.exception.errno, errno.ENOTCONN)
+
+- def test_default_ciphers(self):
+- context = ssl.SSLContext(ssl.PROTOCOL_SSLv23)
+- try:
+- # Force a set of weak ciphers on our client context
+- context.set_ciphers("DES")
+- except ssl.SSLError:
+- self.skipTest("no DES cipher available")
+- with ThreadedEchoServer(CERTFILE,
+- ssl_version=ssl.PROTOCOL_SSLv23,
+- chatty=False) as server:
+- with context.wrap_socket(socket.socket()) as s:
++ def test_no_shared_ciphers(self):
++ server_context = ssl.SSLContext(ssl.PROTOCOL_SSLv23)
++ server_context.load_cert_chain(SIGNED_CERTFILE)
++ client_context = ssl.SSLContext(ssl.PROTOCOL_SSLv23)
++ client_context.verify_mode = ssl.CERT_REQUIRED
++ client_context.check_hostname = True
++
++ client_context.set_ciphers("AES128")
++ server_context.set_ciphers("AES256")
++ # OpenSSL enables all TLS 1.3 ciphers, enforce TLS 1.2 for test
++ client_context.options |= ssl.OP_NO_TLSv1_3
++ with ThreadedEchoServer(context=server_context) as server:
++ with client_context.wrap_socket(
++ socket.socket(),
++ server_hostname="localhost") as s:
+ with self.assertRaises(OSError):
+ s.connect((HOST, server.port))
+ self.assertIn("no shared cipher", str(server.conn_errors[0]))
+@@ -3067,9 +3071,9 @@ else:
+ with context.wrap_socket(socket.socket()) as s:
+ s.connect((HOST, server.port))
+ self.assertIn(s.cipher()[0], [
+- 'TLS13-AES-256-GCM-SHA384',
+- 'TLS13-CHACHA20-POLY1305-SHA256',
+- 'TLS13-AES-128-GCM-SHA256',
++ 'TLS_AES_256_GCM_SHA384',
++ 'TLS_CHACHA20_POLY1305_SHA256',
++ 'TLS_AES_128_GCM_SHA256',
+ ])
+
+ @unittest.skipUnless(ssl.HAS_ECDH, "test requires ECDH-enabled OpenSSL")
+@@ -3391,22 +3395,19 @@ else:
+ client_context = ssl.SSLContext(ssl.PROTOCOL_TLSv1)
+ client_context.verify_mode = ssl.CERT_REQUIRED
+ client_context.load_verify_locations(SIGNING_CA)
+- if ssl.OPENSSL_VERSION_INFO >= (1, 0, 2):
+- client_context.set_ciphers("AES128:AES256")
+- server_context.set_ciphers("AES256")
+- alg1 = "AES256"
+- alg2 = "AES-256"
+- else:
+- client_context.set_ciphers("AES:3DES")
+- server_context.set_ciphers("3DES")
+- alg1 = "3DES"
+- alg2 = "DES-CBC3"
++ client_context.set_ciphers("AES128:AES256")
++ server_context.set_ciphers("AES256")
++ expected_algs = [
++ "AES256", "AES-256",
++ # TLS 1.3 ciphers are always enabled
++ "TLS_CHACHA20", "TLS_AES",
++ ]
+
+ stats = server_params_test(client_context, server_context)
+ ciphers = stats['server_shared_ciphers'][0]
+ self.assertGreater(len(ciphers), 0)
+ for name, tls_version, bits in ciphers:
+- if not alg1 in name.split("-") and alg2 not in name:
++ if not any (alg in name for alg in expected_algs):
+ self.fail(name)
+
+ def test_read_write_after_close_raises_valuerror(self):
+--
+2.17.1
+
diff --git a/poky/meta/recipes-devtools/python/python3/0005-bpo-30714-ALPN-changes-for-OpenSSL-1.1.0f-2305.patch b/poky/meta/recipes-devtools/python/python3/0005-bpo-30714-ALPN-changes-for-OpenSSL-1.1.0f-2305.patch
new file mode 100644
index 000000000..d60984720
--- /dev/null
+++ b/poky/meta/recipes-devtools/python/python3/0005-bpo-30714-ALPN-changes-for-OpenSSL-1.1.0f-2305.patch
@@ -0,0 +1,68 @@
+From 7b40cb7293cb14e5c7c8ed123efaf9acb33edae2 Mon Sep 17 00:00:00 2001
+From: Christian Heimes <christian@python.org>
+Date: Tue, 15 Aug 2017 10:33:43 +0200
+Subject: [PATCH] bpo-30714: ALPN changes for OpenSSL 1.1.0f (#2305)
+
+OpenSSL 1.1.0 to 1.1.0e aborted the handshake when server and client
+could not agree on a protocol using ALPN. OpenSSL 1.1.0f changed that.
+The most recent version now behaves like OpenSSL 1.0.2 again. The ALPN
+callback can pretend to not been set.
+
+See https://github.com/openssl/openssl/pull/3158 for more details
+
+Signed-off-by: Christian Heimes <christian@python.org>
+
+Upstream-Status: Backport
+[https://github.com/python/cpython/commit/7b40cb7293cb14e5c7c8ed123efaf9acb33edae2]
+
+Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
+---
+ Doc/library/ssl.rst | 5 +++--
+ Lib/test/test_ssl.py | 5 +++--
+ .../next/Tests/2017-07-25-15-27-44.bpo-30715.Sp7bTF.rst | 2 ++
+ 3 files changed, 8 insertions(+), 4 deletions(-)
+ create mode 100644 Misc/NEWS.d/next/Tests/2017-07-25-15-27-44.bpo-30715.Sp7bTF.rst
+
+diff --git a/Doc/library/ssl.rst b/Doc/library/ssl.rst
+index 729a239a1b..0a09e7e9d4 100644
+--- a/Doc/library/ssl.rst
++++ b/Doc/library/ssl.rst
+@@ -1447,8 +1447,9 @@ to speed up repeated connections from the same clients.
+ This method will raise :exc:`NotImplementedError` if :data:`HAS_ALPN` is
+ False.
+
+- OpenSSL 1.1.0+ will abort the handshake and raise :exc:`SSLError` when
+- both sides support ALPN but cannot agree on a protocol.
++ OpenSSL 1.1.0 to 1.1.0e will abort the handshake and raise :exc:`SSLError`
++ when both sides support ALPN but cannot agree on a protocol. 1.1.0f+
++ behaves like 1.0.2, :meth:`SSLSocket.selected_alpn_protocol` returns None.
+
+ .. versionadded:: 3.5
+
+diff --git a/Lib/test/test_ssl.py b/Lib/test/test_ssl.py
+index d960d82065..104b7f377a 100644
+--- a/Lib/test/test_ssl.py
++++ b/Lib/test/test_ssl.py
+@@ -3268,8 +3268,9 @@ if _have_threads:
+ except ssl.SSLError as e:
+ stats = e
+
+- if expected is None and IS_OPENSSL_1_1:
+- # OpenSSL 1.1.0 raises handshake error
++ if (expected is None and IS_OPENSSL_1_1
++ and ssl.OPENSSL_VERSION_INFO < (1, 1, 0, 6)):
++ # OpenSSL 1.1.0 to 1.1.0e raises handshake error
+ self.assertIsInstance(stats, ssl.SSLError)
+ else:
+ msg = "failed trying %s (s) and %s (c).\n" \
+diff --git a/Misc/NEWS.d/next/Tests/2017-07-25-15-27-44.bpo-30715.Sp7bTF.rst b/Misc/NEWS.d/next/Tests/2017-07-25-15-27-44.bpo-30715.Sp7bTF.rst
+new file mode 100644
+index 0000000000..88394e585c
+--- /dev/null
++++ b/Misc/NEWS.d/next/Tests/2017-07-25-15-27-44.bpo-30715.Sp7bTF.rst
+@@ -0,0 +1,2 @@
++Address ALPN callback changes for OpenSSL 1.1.0f. The latest version behaves
++like OpenSSL 1.0.2 and no longer aborts handshake.
+--
+2.17.1
+
diff --git a/poky/meta/recipes-devtools/python/python3/CVE-2018-1061.patch b/poky/meta/recipes-devtools/python/python3/CVE-2018-1061.patch
deleted file mode 100644
index 6373be389..000000000
--- a/poky/meta/recipes-devtools/python/python3/CVE-2018-1061.patch
+++ /dev/null
@@ -1,165 +0,0 @@
-From 6d7ef39198856395edd62ef143bfcfaaf2ed6e25 Mon Sep 17 00:00:00 2001
-From: Ned Deily <nad@python.org>
-Date: Sun, 11 Mar 2018 14:29:05 -0400
-Subject: [PATCH] [3.5] bpo-32981: Fix catastrophic backtracking vulns
- (GH-5955) (#6034)
-
-* Prevent low-grade poplib REDOS (CVE-2018-1060)
-
-The regex to test a mail server's timestamp is susceptible to
-catastrophic backtracking on long evil responses from the server.
-
-Happily, the maximum length of malicious inputs is 2K thanks
-to a limit introduced in the fix for CVE-2013-1752.
-
-A 2KB evil response from the mail server would result in small slowdowns
-(milliseconds vs. microseconds) accumulated over many apop calls.
-This is a potential DOS vector via accumulated slowdowns.
-
-Replace it with a similar non-vulnerable regex.
-
-The new regex is RFC compliant.
-The old regex was non-compliant in edge cases.
-
-* Prevent difflib REDOS (CVE-2018-1061)
-
-The default regex for IS_LINE_JUNK is susceptible to
-catastrophic backtracking.
-This is a potential DOS vector.
-
-Replace it with an equivalent non-vulnerable regex.
-
-Also introduce unit and REDOS tests for difflib.
-
-Co-authored-by: Tim Peters <tim.peters@gmail.com>
-Co-authored-by: Christian Heimes <christian@python.org>.
-(cherry picked from commit 0e6c8ee2358a2e23117501826c008842acb835ac)
-CVE: CVE-2018-1061
-CVE: CVE-2018-1060
-Upstream-Status: Backport [https://github.com/python/cpython/commit/937ac1fe069a4dc8471dff205f553d82e724015b]
-Signed-off-by: Sinan Kaya <okaya@kernel.org>
----
- Lib/difflib.py | 2 +-
- Lib/poplib.py | 2 +-
- Lib/test/test_difflib.py | 22 ++++++++++++++++++-
- Lib/test/test_poplib.py | 12 +++++++++-
- Misc/ACKS | 1 +
- .../2018-03-02-10-24-52.bpo-32981.O_qDyj.rst | 4 ++++
- 6 files changed, 39 insertions(+), 4 deletions(-)
- create mode 100644 Misc/NEWS.d/next/Security/2018-03-02-10-24-52.bpo-32981.O_qDyj.rst
-
-diff --git a/Lib/difflib.py b/Lib/difflib.py
-index 076bbac01d..b4ec335056 100644
---- a/Lib/difflib.py
-+++ b/Lib/difflib.py
-@@ -1083,7 +1083,7 @@ class Differ:
-
- import re
-
--def IS_LINE_JUNK(line, pat=re.compile(r"\s*#?\s*$").match):
-+def IS_LINE_JUNK(line, pat=re.compile(r"\s*(?:#\s*)?$").match):
- r"""
- Return 1 for ignorable line: iff `line` is blank or contains a single '#'.
-
-diff --git a/Lib/poplib.py b/Lib/poplib.py
-index 516b6f060d..2437ea0e27 100644
---- a/Lib/poplib.py
-+++ b/Lib/poplib.py
-@@ -308,7 +308,7 @@ class POP3:
- return self._shortcmd('RPOP %s' % user)
-
-
-- timestamp = re.compile(br'\+OK.*(<[^>]+>)')
-+ timestamp = re.compile(br'\+OK.[^<]*(<.*>)')
-
- def apop(self, user, password):
- """Authorisation
-diff --git a/Lib/test/test_difflib.py b/Lib/test/test_difflib.py
-index ab9debf8e2..b6c8a7dd5b 100644
---- a/Lib/test/test_difflib.py
-+++ b/Lib/test/test_difflib.py
-@@ -466,13 +466,33 @@ class TestBytes(unittest.TestCase):
- list(generator(*args))
- self.assertEqual(msg, str(ctx.exception))
-
-+class TestJunkAPIs(unittest.TestCase):
-+ def test_is_line_junk_true(self):
-+ for line in ['#', ' ', ' #', '# ', ' # ', '']:
-+ self.assertTrue(difflib.IS_LINE_JUNK(line), repr(line))
-+
-+ def test_is_line_junk_false(self):
-+ for line in ['##', ' ##', '## ', 'abc ', 'abc #', 'Mr. Moose is up!']:
-+ self.assertFalse(difflib.IS_LINE_JUNK(line), repr(line))
-+
-+ def test_is_line_junk_REDOS(self):
-+ evil_input = ('\t' * 1000000) + '##'
-+ self.assertFalse(difflib.IS_LINE_JUNK(evil_input))
-+
-+ def test_is_character_junk_true(self):
-+ for char in [' ', '\t']:
-+ self.assertTrue(difflib.IS_CHARACTER_JUNK(char), repr(char))
-+
-+ def test_is_character_junk_false(self):
-+ for char in ['a', '#', '\n', '\f', '\r', '\v']:
-+ self.assertFalse(difflib.IS_CHARACTER_JUNK(char), repr(char))
-
- def test_main():
- difflib.HtmlDiff._default_prefix = 0
- Doctests = doctest.DocTestSuite(difflib)
- run_unittest(
- TestWithAscii, TestAutojunk, TestSFpatches, TestSFbugs,
-- TestOutputFormat, TestBytes, Doctests)
-+ TestOutputFormat, TestBytes, TestJunkAPIs, Doctests)
-
- if __name__ == '__main__':
- test_main()
-diff --git a/Lib/test/test_poplib.py b/Lib/test/test_poplib.py
-index bceeb93ad1..799e403652 100644
---- a/Lib/test/test_poplib.py
-+++ b/Lib/test/test_poplib.py
-@@ -300,9 +300,19 @@ class TestPOP3Class(TestCase):
- def test_rpop(self):
- self.assertOK(self.client.rpop('foo'))
-
-- def test_apop(self):
-+ def test_apop_normal(self):
- self.assertOK(self.client.apop('foo', 'dummypassword'))
-
-+ def test_apop_REDOS(self):
-+ # Replace welcome with very long evil welcome.
-+ # NB The upper bound on welcome length is currently 2048.
-+ # At this length, evil input makes each apop call take
-+ # on the order of milliseconds instead of microseconds.
-+ evil_welcome = b'+OK' + (b'<' * 1000000)
-+ with test_support.swap_attr(self.client, 'welcome', evil_welcome):
-+ # The evil welcome is invalid, so apop should throw.
-+ self.assertRaises(poplib.error_proto, self.client.apop, 'a', 'kb')
-+
- def test_top(self):
- expected = (b'+OK 116 bytes',
- [b'From: postmaster@python.org', b'Content-Type: text/plain',
-diff --git a/Misc/ACKS b/Misc/ACKS
-index 1a35aad66c..72c5d740bd 100644
---- a/Misc/ACKS
-+++ b/Misc/ACKS
-@@ -341,6 +341,7 @@ Kushal Das
- Jonathan Dasteel
- Pierre-Yves David
- A. Jesse Jiryu Davis
-+Jamie (James C.) Davis
- Merlijn van Deen
- John DeGood
- Ned Deily
-diff --git a/Misc/NEWS.d/next/Security/2018-03-02-10-24-52.bpo-32981.O_qDyj.rst b/Misc/NEWS.d/next/Security/2018-03-02-10-24-52.bpo-32981.O_qDyj.rst
-new file mode 100644
-index 0000000000..9ebabb44f9
---- /dev/null
-+++ b/Misc/NEWS.d/next/Security/2018-03-02-10-24-52.bpo-32981.O_qDyj.rst
-@@ -0,0 +1,4 @@
-+Regexes in difflib and poplib were vulnerable to catastrophic backtracking.
-+These regexes formed potential DOS vectors (REDOS). They have been
-+refactored. This resolves CVE-2018-1060 and CVE-2018-1061.
-+Patch by Jamie Davis.
---
-2.19.0
-
diff --git a/poky/meta/recipes-devtools/python/python3/Use-correct-CFLAGS-for-extensions-when-cross-compili.patch b/poky/meta/recipes-devtools/python/python3/Use-correct-CFLAGS-for-extensions-when-cross-compili.patch
new file mode 100644
index 000000000..ae74ef531
--- /dev/null
+++ b/poky/meta/recipes-devtools/python/python3/Use-correct-CFLAGS-for-extensions-when-cross-compili.patch
@@ -0,0 +1,56 @@
+From 7fd121bb7d6c25c2e0a1c31cf76fb9bd4a9794de Mon Sep 17 00:00:00 2001
+From: Markus Lehtonen <markus.lehtonen@linux.intel.com>
+Date: Tue, 14 Aug 2018 14:11:35 +0800
+Subject: [PATCH 1/2] Use correct CFLAGS for extensions when cross-compiling
+
+Take PY_CFLAGS_NODIST into account, like in native build. This is needed
+in order to to profile-optimized build. Also, pass EXTRA_CFLAGS to
+profile-optimized build.
+
+Upstream-Status: Pending
+
+Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
+---
+ Makefile.pre.in | 4 ++--
+ setup.py | 3 ++-
+ 2 files changed, 4 insertions(+), 3 deletions(-)
+
+diff --git a/Makefile.pre.in b/Makefile.pre.in
+index e2d5d3d..84bc3ff 100644
+--- a/Makefile.pre.in
++++ b/Makefile.pre.in
+@@ -478,7 +478,7 @@ profile-opt:
+ $(MAKE) profile-removal
+
+ build_all_generate_profile:
+- $(MAKE) @DEF_MAKE_RULE@ CFLAGS_NODIST="$(CFLAGS) $(PGO_PROF_GEN_FLAG) @LTOFLAGS@" LDFLAGS="$(LDFLAGS) $(PGO_PROF_GEN_FLAG) @LTOFLAGS@" LIBS="$(LIBS)"
++ $(MAKE) @DEF_MAKE_RULE@ CFLAGS_NODIST="$(CFLAGS) $(EXTRA_CFLAGS) $(PGO_PROF_GEN_FLAG) @LTOFLAGS@" LDFLAGS="$(LDFLAGS) $(PGO_PROF_GEN_FLAG) @LTOFLAGS@" LIBS="$(LIBS)"
+
+ run_profile_task:
+ : # FIXME: can't run for a cross build
+@@ -488,7 +488,7 @@ build_all_merge_profile:
+ $(LLVM_PROF_MERGER)
+
+ build_all_use_profile:
+- $(MAKE) @DEF_MAKE_RULE@ CFLAGS_NODIST="$(CFLAGS) $(PGO_PROF_USE_FLAG) @LTOFLAGS@" LDFLAGS="$(LDFLAGS) @LTOFLAGS@"
++ $(MAKE) @DEF_MAKE_RULE@ CFLAGS_NODIST="$(CFLAGS) $(EXTRA_CFLAGS) $(PGO_PROF_USE_FLAG) @LTOFLAGS@" LDFLAGS="$(LDFLAGS) @LTOFLAGS@"
+
+ # Compile and run with gcov
+ .PHONY=coverage coverage-lcov coverage-report
+diff --git a/setup.py b/setup.py
+index add3346..65e83b1 100644
+--- a/setup.py
++++ b/setup.py
+@@ -263,7 +263,8 @@ class PyBuildExt(build_ext):
+ # compilers
+ if compiler is not None:
+ if cross_compiling:
+- (ccshared,cflags) = (os.environ.get('CCSHARED') or '', os.environ.get('CFLAGS') or '')
++ (ccshared,cflags) = (os.environ.get('CCSHARED') or '',
++ (os.environ.get('CFLAGS') or '') + ' ' + sysconfig.get_config_var('PY_CFLAGS_NODIST'))
+ else:
+ (ccshared,cflags) = sysconfig.get_config_vars('CCSHARED','CFLAGS')
+ args['compiler_so'] = compiler + ' ' + ccshared + ' ' + cflags
+--
+2.17.1
+
diff --git a/poky/meta/recipes-devtools/python/python3/create_manifest3.py b/poky/meta/recipes-devtools/python/python3/create_manifest3.py
index 2f944f9b1..fddb23cdc 100644
--- a/poky/meta/recipes-devtools/python/python3/create_manifest3.py
+++ b/poky/meta/recipes-devtools/python/python3/create_manifest3.py
@@ -43,194 +43,239 @@ import sys
import subprocess
import json
import os
+import collections
+
+# Get python version from ${PYTHON_MAJMIN}
+pyversion = str(sys.argv[1])
# Hack to get native python search path (for folders), not fond of it but it works for now
-pivot='recipe-sysroot-native'
+pivot = 'recipe-sysroot-native'
for p in sys.path:
- if pivot in p:
- nativelibfolder=p[:p.find(pivot)+len(pivot)]
+ if pivot in p:
+ nativelibfolder = p[:p.find(pivot)+len(pivot)]
# Empty dict to hold the whole manifest
-new_manifest = {}
+new_manifest = collections.OrderedDict()
# Check for repeated files, folders and wildcards
-allfiles=[]
-repeated=[]
-wildcards=[]
+allfiles = []
+repeated = []
+wildcards = []
-hasfolders=[]
-allfolders=[]
+hasfolders = []
+allfolders = []
def isFolder(value):
- if os.path.isdir(value.replace('${libdir}',nativelibfolder+'/usr/lib')) or os.path.isdir(value.replace('${libdir}',nativelibfolder+'/usr/lib64')) or os.path.isdir(value.replace('${libdir}',nativelibfolder+'/usr/lib32')):
- return True
- else:
- return False
+ value = value.replace('${PYTHON_MAJMIN}',pyversion)
+ if os.path.isdir(value.replace('${libdir}',nativelibfolder+'/usr/lib')) or os.path.isdir(value.replace('${libdir}',nativelibfolder+'/usr/lib64')) or os.path.isdir(value.replace('${libdir}',nativelibfolder+'/usr/lib32')):
+ return True
+ else:
+ return False
def isCached(item):
- if '__pycache__' in item:
- return True
- else:
- return False
+ if '__pycache__' in item:
+ return True
+ else:
+ return False
# Read existing JSON manifest
with open('python3-manifest.json') as manifest:
- old_manifest=json.load(manifest)
-
+ old_manifest = json.load(manifest, object_pairs_hook=collections.OrderedDict)
+#
# First pass to get core-package functionality, because we base everything on the fact that core is actually working
# Not exactly the same so it should not be a function
+#
+
print ('Getting dependencies for package: core')
-# Special call to check for core package
+
+# This special call gets the core dependencies and
+# appends to the old manifest so it doesnt hurt what it
+# currently holds.
+# This way when other packages check for dependencies
+# on the new core package, they will still find them
+# even when checking the old_manifest
+
output = subprocess.check_output([sys.executable, 'get_module_deps3.py', 'python-core-package']).decode('utf8')
-for item in output.split():
- # We append it so it doesnt hurt what we currently have:
- if isCached(item):
- if item not in old_manifest['core']['cached']:
- # We use the same data structure since its the one which will be used to check
- # dependencies for other packages
- old_manifest['core']['cached'].append(item)
- else:
- if item not in old_manifest['core']['files']:
- # We use the same data structure since its the one which will be used to check
- # dependencies for other packages
- old_manifest['core']['files'].append(item)
-
-for value in old_manifest['core']['files']:
- # Ignore folders, since we don't import those, difficult to handle multilib
- if isFolder(value):
- # Pass it directly
- if isCached(value):
- if value not in old_manifest['core']['cached']:
- old_manifest['core']['cached'].append(value)
+for coredep in output.split():
+ coredep = coredep.replace(pyversion,'${PYTHON_MAJMIN}')
+ if isCached(coredep):
+ if coredep not in old_manifest['core']['cached']:
+ old_manifest['core']['cached'].append(coredep)
else:
- if value not in old_manifest['core']['files']:
- old_manifest['core']['files'].append(value)
- continue
- # Ignore binaries, since we don't import those, assume it was added correctly (manually)
- if '${bindir}' in value:
- # Pass it directly
- if value not in old_manifest['core']['files']:
- old_manifest['core']['files'].append(value)
- continue
- # Ignore empty values
- if value == '':
- continue
- if '${includedir}' in value:
- if value not in old_manifest['core']['files']:
- old_manifest['core']['files'].append(value)
- continue
- # Get module name , shouldnt be affected by libdir/bindir
- value = os.path.splitext(os.path.basename(os.path.normpath(value)))[0]
-
- # Launch separate task for each module for deterministic behavior
- # Each module will only import what is necessary for it to work in specific
- print ('Getting dependencies for module: %s' % value)
- output = subprocess.check_output([sys.executable, 'get_module_deps3.py', '%s' % value]).decode('utf8')
- print ('The following dependencies were found for module %s:\n' % value)
- print (output)
- for item in output.split():
- # We append it so it doesnt hurt what we currently have:
- if isCached(item):
- if item not in old_manifest['core']['cached']:
- # We use the same data structure since its the one which will be used to check
- # dependencies for other packages
- old_manifest['core']['cached'].append(item)
- else:
- if item not in old_manifest['core']['files']:
- # We use the same data structure since its the one which will be used to check
- # dependencies for other packages
- old_manifest['core']['files'].append(item)
-
-
-# We check which packages include folders
-for key in old_manifest:
- for value in old_manifest[key]['files']:
- # Ignore folders, since we don't import those, difficult to handle multilib
- if isFolder(value):
- print ('%s is a folder' % value)
- if key not in hasfolders:
- hasfolders.append(key)
- if value not in allfolders:
- allfolders.append(value)
-
-for key in old_manifest:
+ if coredep not in old_manifest['core']['files']:
+ old_manifest['core']['files'].append(coredep)
+
+
+# The second step is to loop through the existing files contained in the core package
+# according to the old manifest, identify if they are modules, or some other type
+# of file that we cant import (directories, binaries, configs) in which case we
+# can only assume they were added correctly (manually) so we ignore those and
+# pass them to the manifest directly.
+
+for filedep in old_manifest['core']['files']:
+ if isFolder(filedep):
+ if isCached(filedep):
+ if filedep not in old_manifest['core']['cached']:
+ old_manifest['core']['cached'].append(filedep)
+ else:
+ if filedep not in old_manifest['core']['files']:
+ old_manifest['core']['files'].append(filedep)
+ continue
+ if '${bindir}' in filedep:
+ if filedep not in old_manifest['core']['files']:
+ old_manifest['core']['files'].append(filedep)
+ continue
+ if filedep == '':
+ continue
+ if '${includedir}' in filedep:
+ if filedep not in old_manifest['core']['files']:
+ old_manifest['core']['files'].append(filedep)
+ continue
+
+ # Get actual module name , shouldnt be affected by libdir/bindir, etc.
+ pymodule = os.path.splitext(os.path.basename(os.path.normpath(filedep)))[0]
+
+
+ # We now know that were dealing with a python module, so we can import it
+ # and check what its dependencies are.
+ # We launch a separate task for each module for deterministic behavior.
+ # Each module will only import what is necessary for it to work in specific.
+ # The output of each task will contain each module's dependencies
+
+ print ('Getting dependencies for module: %s' % pymodule)
+ output = subprocess.check_output([sys.executable, 'get_module_deps3.py', '%s' % pymodule]).decode('utf8')
+ print ('The following dependencies were found for module %s:\n' % pymodule)
+ print (output)
+
+
+ for pymodule_dep in output.split():
+ pymodule_dep = pymodule_dep.replace(pyversion,'${PYTHON_MAJMIN}')
+
+ if isCached(pymodule_dep):
+ if pymodule_dep not in old_manifest['core']['cached']:
+ old_manifest['core']['cached'].append(pymodule_dep)
+ else:
+ if pymodule_dep not in old_manifest['core']['files']:
+ old_manifest['core']['files'].append(pymodule_dep)
+
+
+# At this point we are done with the core package.
+# The old_manifest dictionary is updated only for the core package because
+# all others will use this a base.
+
+
+# To improve the script speed, we check which packages contain directories
+# since we will be looping through (only) those later.
+for pypkg in old_manifest:
+ for filedep in old_manifest[pypkg]['files']:
+ if isFolder(filedep):
+ print ('%s is a folder' % filedep)
+ if pypkg not in hasfolders:
+ hasfolders.append(pypkg)
+ if filedep not in allfolders:
+ allfolders.append(filedep)
+
+
+
+# This is the main loop that will handle each package.
+# It works in a similar fashion than the step before, but
+# we will now be updating a new dictionary that will eventually
+# become the new manifest.
+#
+# The following loops though all packages in the manifest,
+# through all files on each of them, and checks whether or not
+# they are modules and can be imported.
+# If they can be imported, then it checks for dependencies for
+# each of them by launching a separate task.
+# The output of that task is then parsed and the manifest is updated
+# accordingly, wether it should add the module on FILES for the current package
+# or if that module already belongs to another package then the current one
+# will RDEPEND on it
+
+for pypkg in old_manifest:
# Use an empty dict as data structure to hold data for each package and fill it up
- new_manifest[key]={}
- new_manifest[key]['files']=[]
-
- new_manifest[key]['rdepends']=[]
+ new_manifest[pypkg] = collections.OrderedDict()
+ new_manifest[pypkg]['summary'] = old_manifest[pypkg]['summary']
+ new_manifest[pypkg]['rdepends'] = []
+ new_manifest[pypkg]['files'] = []
+ new_manifest[pypkg]['cached'] = old_manifest[pypkg]['cached']
+
# All packages should depend on core
- if key != 'core':
- new_manifest[key]['rdepends'].append('core')
- new_manifest[key]['cached']=[]
- else:
- new_manifest[key]['cached']=old_manifest[key]['cached']
- new_manifest[key]['summary']=old_manifest[key]['summary']
+ if pypkg != 'core':
+ new_manifest[pypkg]['rdepends'].append('core')
+ new_manifest[pypkg]['cached'] = []
- # Handle special cases, we assume that when they were manually added
- # to the manifest we knew what we were doing.
print('\n')
print('--------------------------')
- print ('Handling package %s' % key)
+ print ('Handling package %s' % pypkg)
print('--------------------------')
- special_packages=['misc', 'modules', 'dev']
- if key in special_packages or 'staticdev' in key:
- print('Passing %s package directly' % key)
- new_manifest[key]=old_manifest[key]
+
+ # Handle special cases, we assume that when they were manually added
+ # to the manifest we knew what we were doing.
+ special_packages = ['misc', 'modules', 'dev', 'tests']
+ if pypkg in special_packages or 'staticdev' in pypkg:
+ print('Passing %s package directly' % pypkg)
+ new_manifest[pypkg] = old_manifest[pypkg]
continue
- for value in old_manifest[key]['files']:
- # We already handled core on the first pass
- if key == 'core':
- new_manifest[key]['files'].append(value)
+ for filedep in old_manifest[pypkg]['files']:
+ # We already handled core on the first pass, we can ignore it now
+ if pypkg == 'core':
+ if filedep not in new_manifest[pypkg]['files']:
+ new_manifest[pypkg]['files'].append(filedep)
continue
- # Ignore folders, since we don't import those, difficult to handle multilib
- if isFolder(value):
- # Pass folders directly
- new_manifest[key]['files'].append(value)
- # Ignore binaries, since we don't import those
- if '${bindir}' in value:
- # Pass it directly to the new manifest data structure
- if value not in new_manifest[key]['files']:
- new_manifest[key]['files'].append(value)
+
+ # Handle/ignore what we cant import
+ if isFolder(filedep):
+ new_manifest[pypkg]['files'].append(filedep)
+ # Asyncio (and others) are both the package and the folder name, we should not skip those...
+ path,mod = os.path.split(filedep)
+ if mod != pypkg:
+ continue
+ if '${bindir}' in filedep:
+ if filedep not in new_manifest[pypkg]['files']:
+ new_manifest[pypkg]['files'].append(filedep)
continue
- # Ignore empty values
- if value == '':
+ if filedep == '':
continue
- if '${includedir}' in value:
- if value not in new_manifest[key]['files']:
- new_manifest[key]['files'].append(value)
+ if '${includedir}' in filedep:
+ if filedep not in new_manifest[pypkg]['files']:
+ new_manifest[pypkg]['files'].append(filedep)
continue
- # Get module name , shouldnt be affected by libdir/bindir
+ # Get actual module name , shouldnt be affected by libdir/bindir, etc.
# We need to check if the imported module comes from another (e.g. sqlite3.dump)
- path,value = os.path.split(value)
+ path,pymodule = os.path.split(filedep)
path = os.path.basename(path)
- value = os.path.splitext(os.path.basename(value))[0]
+ pymodule = os.path.splitext(os.path.basename(pymodule))[0]
# If this condition is met, it means we need to import it from another module
# or its the folder itself (e.g. unittest)
- if path == key:
- if value:
- value = path + '.' + value
- else:
- value = path
-
- # Launch separate task for each module for deterministic behavior
- # Each module will only import what is necessary for it to work in specific
- print ('\nGetting dependencies for module: %s' % value)
- output = subprocess.check_output([sys.executable, 'get_module_deps3.py', '%s' % value]).decode('utf8')
- # We can print dependencies for debugging purposes
- print ('The following dependencies were found for module %s:\n' % value)
+ if path == pypkg:
+ if pymodule:
+ pymodule = path + '.' + pymodule
+ else:
+ pymodule = path
+
+
+
+ # We now know that were dealing with a python module, so we can import it
+ # and check what its dependencies are.
+ # We launch a separate task for each module for deterministic behavior.
+ # Each module will only import what is necessary for it to work in specific.
+ # The output of each task will contain each module's dependencies
+
+ print ('\nGetting dependencies for module: %s' % pymodule)
+ output = subprocess.check_output([sys.executable, 'get_module_deps3.py', '%s' % pymodule]).decode('utf8')
+ print ('The following dependencies were found for module %s:\n' % pymodule)
print (output)
- # Output will have all dependencies
reportFILES = []
reportRDEPS = []
- for item in output.split():
+ for pymodule_dep in output.split():
# Warning: This first part is ugly
# One of the dependencies that was found, could be inside of one of the folders included by another package
@@ -250,22 +295,22 @@ for key in old_manifest:
# is folder_string inside path/folder1/folder2/filename?,
# Yes, it works, but we waste a couple of milliseconds.
- inFolders=False
+ pymodule_dep = pymodule_dep.replace(pyversion,'${PYTHON_MAJMIN}')
+ inFolders = False
for folder in allfolders:
- if folder in item:
+ if folder in pymodule_dep:
inFolders = True # Did we find a folder?
folderFound = False # Second flag to break inner for
# Loop only through packages which contain folders
- for keyfolder in hasfolders:
+ for pypkg_with_folder in hasfolders:
if (folderFound == False):
- #print('Checking folder %s on package %s' % (item,keyfolder))
- for file_folder in old_manifest[keyfolder]['files'] or file_folder in old_manifest[keyfolder]['cached']:
- if file_folder==folder:
- print ('%s folder found in %s' % (folder, keyfolder))
+ # print('Checking folder %s on package %s' % (pymodule_dep,pypkg_with_folder))
+ for folder_dep in old_manifest[pypkg_with_folder]['files'] or folder_dep in old_manifest[pypkg_with_folder]['cached']:
+ if folder_dep == folder:
+ print ('%s folder found in %s' % (folder, pypkg_with_folder))
folderFound = True
- if keyfolder not in new_manifest[key]['rdepends'] and keyfolder != key:
- new_manifest[key]['rdepends'].append(keyfolder)
-
+ if pypkg_with_folder not in new_manifest[pypkg]['rdepends'] and pypkg_with_folder != pypkg:
+ new_manifest[pypkg]['rdepends'].append(pypkg_with_folder)
else:
break
@@ -274,81 +319,95 @@ for key in old_manifest:
continue
- # We might already have it on the dictionary since it could depend on a (previously checked) module
- if item not in new_manifest[key]['files'] and item not in new_manifest[key]['cached']:
+
+ # No directories beyond this point
+ # We might already have this module on the dictionary since it could depend on a (previously checked) module
+ if pymodule_dep not in new_manifest[pypkg]['files'] and pymodule_dep not in new_manifest[pypkg]['cached']:
# Handle core as a special package, we already did it so we pass it to NEW data structure directly
- if key=='core':
- print('Adding %s to %s FILES' % (item, key))
- if item.endswith('*'):
- wildcards.append(item)
- if isCached(item):
- new_manifest[key]['cached'].append(item)
- else:
- new_manifest[key]['files'].append(item)
-
- # Check for repeated files
- if item not in allfiles:
- allfiles.append(item)
- else:
- repeated.append(item)
+ if pypkg == 'core':
+ print('Adding %s to %s FILES' % (pymodule_dep, pypkg))
+ if pymodule_dep.endswith('*'):
+ wildcards.append(pymodule_dep)
+ if isCached(pymodule_dep):
+ new_manifest[pypkg]['cached'].append(pymodule_dep)
+ else:
+ new_manifest[pypkg]['files'].append(pymodule_dep)
+ # Check for repeated files
+ if pymodule_dep not in allfiles:
+ allfiles.append(pymodule_dep)
+ else:
+ if pymodule_dep not in repeated:
+ repeated.append(pymodule_dep)
else:
- # Check if this dependency is already contained on another package, so we add it
+ # Last step: Figure out if we this belongs to FILES or RDEPENDS
+ # We check if this module is already contained on another package, so we add that one
# as an RDEPENDS, or if its not, it means it should be contained on the current
- # package, so we should add it to FILES
- for newkey in old_manifest:
+ # package, and we should add it to FILES
+ for possible_rdep in old_manifest:
# Debug
- #print('Checking %s ' % item + ' in %s' % newkey)
- if item in old_manifest[newkey]['files'] or item in old_manifest[newkey]['cached']:
- # Since were nesting, we need to check its not the same key
- if(newkey!=key):
- if newkey not in new_manifest[key]['rdepends']:
- # Add it to the new manifest data struct
- reportRDEPS.append('Adding %s to %s RDEPENDS, because it contains %s\n' % (newkey, key, item))
- new_manifest[key]['rdepends'].append(newkey)
- break
+ # print('Checking %s ' % pymodule_dep + ' in %s' % possible_rdep)
+ if pymodule_dep in old_manifest[possible_rdep]['files'] or pymodule_dep in old_manifest[possible_rdep]['cached']:
+ # Since were nesting, we need to check its not the same pypkg
+ if(possible_rdep != pypkg):
+ if possible_rdep not in new_manifest[pypkg]['rdepends']:
+ # Add it to the new manifest data struct as RDEPENDS since it contains something this module needs
+ reportRDEPS.append('Adding %s to %s RDEPENDS, because it contains %s\n' % (possible_rdep, pypkg, pymodule_dep))
+ new_manifest[pypkg]['rdepends'].append(possible_rdep)
+ break
else:
+
+ # Since this module wasnt found on another package, it is not an RDEP,
+ # so we add it to FILES for this package.
# A module shouldn't contain itself (${libdir}/python3/sqlite3 shouldnt be on sqlite3 files)
- if os.path.basename(item) != key:
- reportFILES.append(('Adding %s to %s FILES\n' % (item, key)))
- # Since it wasnt found on another package, its not an RDEP, so add it to FILES for this package
- if isCached(item):
- new_manifest[key]['cached'].append(item)
+ if os.path.basename(pymodule_dep) != pypkg:
+ reportFILES.append(('Adding %s to %s FILES\n' % (pymodule_dep, pypkg)))
+ if isCached(pymodule_dep):
+ new_manifest[pypkg]['cached'].append(pymodule_dep)
else:
- new_manifest[key]['files'].append(item)
-
- if item.endswith('*'):
- wildcards.append(item)
- if item not in allfiles:
- allfiles.append(item)
+ new_manifest[pypkg]['files'].append(pymodule_dep)
+ if pymodule_dep.endswith('*'):
+ wildcards.append(pymodule_dep)
+ if pymodule_dep not in allfiles:
+ allfiles.append(pymodule_dep)
else:
- repeated.append(item)
+ if pymodule_dep not in repeated:
+ repeated.append(pymodule_dep)
print('\n')
print('#################################')
- print('Summary for module %s' % value)
- print('FILES found for module %s:' % value)
+ print('Summary for module %s' % pymodule)
+ print('FILES found for module %s:' % pymodule)
print(''.join(reportFILES))
- print('RDEPENDS found for module %s:' % value)
+ print('RDEPENDS found for module %s:' % pymodule)
print(''.join(reportRDEPS))
print('#################################')
-print ('The following files are repeated (contained in more than one package), please check which package should get it:')
-print (repeated)
-print('The following files contain wildcards, please check they are necessary')
+print('The following FILES contain wildcards, please check if they are necessary')
print(wildcards)
-print('The following files contain folders, please check they are necessary')
+print('The following FILES contain folders, please check if they are necessary')
print(hasfolders)
+
# Sort it just so it looks nicer
-for key in new_manifest:
- new_manifest[key]['files'].sort()
- new_manifest[key]['cached'].sort()
- new_manifest[key]['rdepends'].sort()
+for pypkg in new_manifest:
+ new_manifest[pypkg]['files'].sort()
+ new_manifest[pypkg]['cached'].sort()
+ new_manifest[pypkg]['rdepends'].sort()
# Create the manifest from the data structure that was built
with open('python3-manifest.json.new','w') as outfile:
- json.dump(new_manifest,outfile,sort_keys=True, indent=4)
+ json.dump(new_manifest,outfile, indent=4)
outfile.write('\n')
+
+if (repeated):
+ error_msg = '\n\nERROR:\n'
+ error_msg += 'The following files are repeated (contained in more than one package),\n'
+ error_msg += 'this is likely to happen when new files are introduced after an upgrade,\n'
+ error_msg += 'please check which package should get it,\n modify the manifest accordingly and re-run the create_manifest task:\n'
+ error_msg += '\n'.join(repeated)
+ error_msg += '\n'
+ sys.exit(error_msg)
+
diff --git a/poky/meta/recipes-devtools/python/python3/float-endian.patch b/poky/meta/recipes-devtools/python/python3/float-endian.patch
new file mode 100644
index 000000000..6ba3f5c25
--- /dev/null
+++ b/poky/meta/recipes-devtools/python/python3/float-endian.patch
@@ -0,0 +1,212 @@
+Python uses AC_RUN_IFELSE to determine the byte order for floats and doubles,
+and falls back onto "I don't know" if it can't run code. This results in
+crippled floating point numbers in Python, and the regression tests fail.
+
+Instead of running code, take a macro from autoconf-archive which compiles C
+with a special double in which has an ASCII representation, and then greps the
+binary to identify the format.
+
+Upstream-Status: Submitted [https://bugs.python.org/issue34585]
+Signed-off-by: Ross Burton <ross.burton@intel.com>
+
+From 50df2a4c3a65ed06322be7c26d42b06ce81730c1 Mon Sep 17 00:00:00 2001
+From: Ross Burton <ross.burton@intel.com>
+Date: Wed, 5 Sep 2018 11:45:52 +0100
+Subject: [PATCH] Don't do runtime test to get float byte order
+
+---
+ configure.ac | 74 +++++------------------------------
+ m4/ax_c_float_words_bigendian.m4 | 83 ++++++++++++++++++++++++++++++++++++++++
+ 2 files changed, 92 insertions(+), 65 deletions(-)
+ create mode 100644 m4/ax_c_float_words_bigendian.m4
+
+diff --git a/configure.ac b/configure.ac
+index c9b755f0f4..1215969871 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -9,6 +9,8 @@ AC_PREREQ(2.65)
+
+ AC_INIT(python, PYTHON_VERSION, https://bugs.python.org/)
+
++AC_CONFIG_MACRO_DIR(m4)
++
+ AC_SUBST(BASECPPFLAGS)
+ if test "$srcdir" != . -a "$srcdir" != "$(pwd)"; then
+ # If we're building out-of-tree, we need to make sure the following
+@@ -4128,77 +4130,19 @@ fi
+ # * Check for various properties of floating point *
+ # **************************************************
+
+-AC_MSG_CHECKING(whether C doubles are little-endian IEEE 754 binary64)
+-AC_CACHE_VAL(ac_cv_little_endian_double, [
+-AC_RUN_IFELSE([AC_LANG_SOURCE([[
+-#include <string.h>
+-int main() {
+- double x = 9006104071832581.0;
+- if (memcmp(&x, "\x05\x04\x03\x02\x01\xff\x3f\x43", 8) == 0)
+- return 0;
+- else
+- return 1;
+-}
+-]])],
+-[ac_cv_little_endian_double=yes],
+-[ac_cv_little_endian_double=no],
+-[ac_cv_little_endian_double=no])])
+-AC_MSG_RESULT($ac_cv_little_endian_double)
+-if test "$ac_cv_little_endian_double" = yes
+-then
+- AC_DEFINE(DOUBLE_IS_LITTLE_ENDIAN_IEEE754, 1,
+- [Define if C doubles are 64-bit IEEE 754 binary format, stored
+- with the least significant byte first])
+-fi
+-
+-AC_MSG_CHECKING(whether C doubles are big-endian IEEE 754 binary64)
+-AC_CACHE_VAL(ac_cv_big_endian_double, [
+-AC_RUN_IFELSE([AC_LANG_SOURCE([[
+-#include <string.h>
+-int main() {
+- double x = 9006104071832581.0;
+- if (memcmp(&x, "\x43\x3f\xff\x01\x02\x03\x04\x05", 8) == 0)
+- return 0;
+- else
+- return 1;
+-}
+-]])],
+-[ac_cv_big_endian_double=yes],
+-[ac_cv_big_endian_double=no],
+-[ac_cv_big_endian_double=no])])
+-AC_MSG_RESULT($ac_cv_big_endian_double)
+-if test "$ac_cv_big_endian_double" = yes
++AX_C_FLOAT_WORDS_BIGENDIAN
++if test "$ax_cv_c_float_words_bigendian" = "yes"
+ then
+ AC_DEFINE(DOUBLE_IS_BIG_ENDIAN_IEEE754, 1,
+ [Define if C doubles are 64-bit IEEE 754 binary format, stored
+ with the most significant byte first])
+-fi
+-
+-# Some ARM platforms use a mixed-endian representation for doubles.
+-# While Python doesn't currently have full support for these platforms
+-# (see e.g., issue 1762561), we can at least make sure that float <-> string
+-# conversions work.
+-AC_MSG_CHECKING(whether C doubles are ARM mixed-endian IEEE 754 binary64)
+-AC_CACHE_VAL(ac_cv_mixed_endian_double, [
+-AC_RUN_IFELSE([AC_LANG_SOURCE([[
+-#include <string.h>
+-int main() {
+- double x = 9006104071832581.0;
+- if (memcmp(&x, "\x01\xff\x3f\x43\x05\x04\x03\x02", 8) == 0)
+- return 0;
+- else
+- return 1;
+-}
+-]])],
+-[ac_cv_mixed_endian_double=yes],
+-[ac_cv_mixed_endian_double=no],
+-[ac_cv_mixed_endian_double=no])])
+-AC_MSG_RESULT($ac_cv_mixed_endian_double)
+-if test "$ac_cv_mixed_endian_double" = yes
++elif test "$ax_cv_c_float_words_bigendian" = "no"
+ then
+- AC_DEFINE(DOUBLE_IS_ARM_MIXED_ENDIAN_IEEE754, 1,
++ AC_DEFINE(DOUBLE_IS_LITTLE_ENDIAN_IEEE754, 1,
+ [Define if C doubles are 64-bit IEEE 754 binary format, stored
+- in ARM mixed-endian order (byte order 45670123)])
++ with the least significant byte first])
++else
++ AC_MSG_ERROR([Cannot identify floating point byte order])
+ fi
+
+ # The short float repr introduced in Python 3.1 requires the
+diff --git a/m4/ax_c_float_words_bigendian.m4 b/m4/ax_c_float_words_bigendian.m4
+new file mode 100644
+index 0000000000..216b90d803
+--- /dev/null
++++ b/m4/ax_c_float_words_bigendian.m4
+@@ -0,0 +1,83 @@
++# ===============================================================================
++# https://www.gnu.org/software/autoconf-archive/ax_c_float_words_bigendian.html
++# ===============================================================================
++#
++# SYNOPSIS
++#
++# AX_C_FLOAT_WORDS_BIGENDIAN([ACTION-IF-TRUE], [ACTION-IF-FALSE], [ACTION-IF-UNKNOWN])
++#
++# DESCRIPTION
++#
++# Checks the ordering of words within a multi-word float. This check is
++# necessary because on some systems (e.g. certain ARM systems), the float
++# word ordering can be different from the byte ordering. In a multi-word
++# float context, "big-endian" implies that the word containing the sign
++# bit is found in the memory location with the lowest address. This
++# implementation was inspired by the AC_C_BIGENDIAN macro in autoconf.
++#
++# The endianness is detected by first compiling C code that contains a
++# special double float value, then grepping the resulting object file for
++# certain strings of ASCII values. The double is specially crafted to have
++# a binary representation that corresponds with a simple string. In this
++# implementation, the string "noonsees" was selected because the
++# individual word values ("noon" and "sees") are palindromes, thus making
++# this test byte-order agnostic. If grep finds the string "noonsees" in
++# the object file, the target platform stores float words in big-endian
++# order. If grep finds "seesnoon", float words are in little-endian order.
++# If neither value is found, the user is instructed to specify the
++# ordering.
++#
++# LICENSE
++#
++# Copyright (c) 2008 Daniel Amelang <dan@amelang.net>
++#
++# 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 11
++
++AC_DEFUN([AX_C_FLOAT_WORDS_BIGENDIAN],
++ [AC_CACHE_CHECK(whether float word ordering is bigendian,
++ ax_cv_c_float_words_bigendian, [
++
++ax_cv_c_float_words_bigendian=unknown
++AC_COMPILE_IFELSE([AC_LANG_SOURCE([[
++
++double d = 90904234967036810337470478905505011476211692735615632014797120844053488865816695273723469097858056257517020191247487429516932130503560650002327564517570778480236724525140520121371739201496540132640109977779420565776568942592.0;
++
++]])], [
++
++if grep noonsees conftest.$ac_objext >/dev/null ; then
++ ax_cv_c_float_words_bigendian=yes
++fi
++if grep seesnoon conftest.$ac_objext >/dev/null ; then
++ if test "$ax_cv_c_float_words_bigendian" = unknown; then
++ ax_cv_c_float_words_bigendian=no
++ else
++ ax_cv_c_float_words_bigendian=unknown
++ fi
++fi
++
++])])
++
++case $ax_cv_c_float_words_bigendian in
++ yes)
++ m4_default([$1],
++ [AC_DEFINE([FLOAT_WORDS_BIGENDIAN], 1,
++ [Define to 1 if your system stores words within floats
++ with the most significant word first])]) ;;
++ no)
++ $2 ;;
++ *)
++ m4_default([$3],
++ [AC_MSG_ERROR([
++
++Unknown float word ordering. You need to manually preset
++ax_cv_c_float_words_bigendian=no (or yes) according to your system.
++
++ ])]) ;;
++esac
++
++])# AX_C_FLOAT_WORDS_BIGENDIAN
+--
+2.11.0
+
diff --git a/poky/meta/recipes-devtools/python/python3/ftplib.patch b/poky/meta/recipes-devtools/python/python3/ftplib.patch
new file mode 100644
index 000000000..49c5b2736
--- /dev/null
+++ b/poky/meta/recipes-devtools/python/python3/ftplib.patch
@@ -0,0 +1,60 @@
+Upstream-Status: Backport
+Signed-off-by: Ross Burton <ross.burton@intel.com>
+
+From cabe916dc694997d4892b58986e73a713d5a2f8d Mon Sep 17 00:00:00 2001
+From: "Miss Islington (bot)"
+ <31488909+miss-islington@users.noreply.github.com>
+Date: Thu, 16 Aug 2018 15:38:03 -0400
+Subject: [PATCH] [3.6] bpo-34391: Fix ftplib test for TLS 1.3 (GH-8787)
+ (#8790)
+
+Read from data socket to avoid "[SSL] shutdown while in init" exception
+during shutdown of the dummy server.
+
+Signed-off-by: Christian Heimes <christian@python.org>
+
+
+<!-- issue-number: [bpo-34391](https://www.bugs.python.org/issue34391) -->
+https://bugs.python.org/issue34391
+<!-- /issue-number -->
+(cherry picked from commit 1590c393360df059160145e7475754427bfc6680)
+
+
+Co-authored-by: Christian Heimes <christian@python.org>
+---
+ Lib/test/test_ftplib.py | 5 +++++
+ Misc/NEWS.d/next/Tests/2018-08-16-18-48-47.bpo-34391.ouNfxC.rst | 1 +
+ 2 files changed, 6 insertions(+)
+ create mode 100644 Misc/NEWS.d/next/Tests/2018-08-16-18-48-47.bpo-34391.ouNfxC.rst
+
+diff --git a/Lib/test/test_ftplib.py b/Lib/test/test_ftplib.py
+index 44dd73aeca..4ff2f71afb 100644
+--- a/Lib/test/test_ftplib.py
++++ b/Lib/test/test_ftplib.py
+@@ -876,18 +876,23 @@ class TestTLS_FTPClass(TestCase):
+ # clear text
+ with self.client.transfercmd('list') as sock:
+ self.assertNotIsInstance(sock, ssl.SSLSocket)
++ self.assertEqual(sock.recv(1024), LIST_DATA.encode('ascii'))
+ self.assertEqual(self.client.voidresp(), "226 transfer complete")
+
+ # secured, after PROT P
+ self.client.prot_p()
+ with self.client.transfercmd('list') as sock:
+ self.assertIsInstance(sock, ssl.SSLSocket)
++ # consume from SSL socket to finalize handshake and avoid
++ # "SSLError [SSL] shutdown while in init"
++ self.assertEqual(sock.recv(1024), LIST_DATA.encode('ascii'))
+ self.assertEqual(self.client.voidresp(), "226 transfer complete")
+
+ # PROT C is issued, the connection must be in cleartext again
+ self.client.prot_c()
+ with self.client.transfercmd('list') as sock:
+ self.assertNotIsInstance(sock, ssl.SSLSocket)
++ self.assertEqual(sock.recv(1024), LIST_DATA.encode('ascii'))
+ self.assertEqual(self.client.voidresp(), "226 transfer complete")
+
+ def test_login(self):
+--
+2.11.0
+
diff --git a/poky/meta/recipes-devtools/python/python3/python3-manifest.json b/poky/meta/recipes-devtools/python/python3/python3-manifest.json
index 2491f36db..5329bf7c5 100644
--- a/poky/meta/recipes-devtools/python/python3/python3-manifest.json
+++ b/poky/meta/recipes-devtools/python/python3/python3-manifest.json
@@ -1,22 +1,31 @@
{
- "2to3": {
- "cached": [],
+ "tests": {
+ "summary": "Python test suite",
+ "rdepends": [
+ "core",
+ "modules"
+ ],
"files": [
- "${bindir}/2to3-*",
- "${libdir}/python3.5/lib2to3"
+ "${libdir}/python${PYTHON_MAJMIN}/*/test",
+ "${libdir}/python${PYTHON_MAJMIN}/*/tests",
+ "${libdir}/python${PYTHON_MAJMIN}/idlelib/idle_test/",
+ "${libdir}/python${PYTHON_MAJMIN}/test"
],
+ "cached": []
+ },
+ "2to3": {
+ "summary": "Python automated Python 2 to 3 code translator",
"rdepends": [
"core"
],
- "summary": "Python automated Python 2 to 3 code translator"
- },
- "asyncio": {
- "cached": [],
"files": [
- "${libdir}/python3.5/asyncio",
- "${libdir}/python3.5/concurrent",
- "${libdir}/python3.5/concurrent/futures"
+ "${bindir}/2to3-*",
+ "${libdir}/python${PYTHON_MAJMIN}/lib2to3"
],
+ "cached": []
+ },
+ "asyncio": {
+ "summary": "Python Asynchronous I/",
"rdepends": [
"compression",
"core",
@@ -32,50 +41,48 @@
"threading",
"unixadmin"
],
- "summary": "Python Asynchronous I/"
- },
- "audio": {
- "cached": [
- "${libdir}/python3.5/__pycache__/chunk.*.pyc",
- "${libdir}/python3.5/__pycache__/sndhdr.*.pyc",
- "${libdir}/python3.5/__pycache__/sunau.*.pyc",
- "${libdir}/python3.5/__pycache__/wave.*.pyc"
- ],
"files": [
- "${libdir}/python3.5/chunk.py",
- "${libdir}/python3.5/lib-dynload/audioop.*.so",
- "${libdir}/python3.5/lib-dynload/ossaudiodev.*.so",
- "${libdir}/python3.5/sndhdr.py",
- "${libdir}/python3.5/sunau.py",
- "${libdir}/python3.5/wave.py"
+ "${libdir}/python${PYTHON_MAJMIN}/asyncio",
+ "${libdir}/python${PYTHON_MAJMIN}/concurrent",
+ "${libdir}/python${PYTHON_MAJMIN}/concurrent/futures"
],
+ "cached": []
+ },
+ "audio": {
+ "summary": "Python Audio Handling",
"rdepends": [
"core"
],
- "summary": "Python Audio Handling"
- },
- "codecs": {
- "cached": [
- "${libdir}/python3.5/__pycache__/xdrlib.*.pyc"
- ],
"files": [
- "${libdir}/python3.5/lib-dynload/_multibytecodec.*.so",
- "${libdir}/python3.5/xdrlib.py"
+ "${libdir}/python${PYTHON_MAJMIN}/chunk.py",
+ "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/audioop.*.so",
+ "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/ossaudiodev.*.so",
+ "${libdir}/python${PYTHON_MAJMIN}/sndhdr.py",
+ "${libdir}/python${PYTHON_MAJMIN}/sunau.py",
+ "${libdir}/python${PYTHON_MAJMIN}/wave.py"
],
+ "cached": [
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/chunk.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/sndhdr.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/sunau.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/wave.*.pyc"
+ ]
+ },
+ "codecs": {
+ "summary": "Python codec",
"rdepends": [
"core"
],
- "summary": "Python codec"
- },
- "compile": {
- "cached": [
- "${libdir}/python3.5/__pycache__/compileall.*.pyc",
- "${libdir}/python3.5/__pycache__/py_compile.*.pyc"
- ],
"files": [
- "${libdir}/python3.5/compileall.py",
- "${libdir}/python3.5/py_compile.py"
+ "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_multibytecodec.*.so",
+ "${libdir}/python${PYTHON_MAJMIN}/xdrlib.py"
],
+ "cached": [
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/xdrlib.*.pyc"
+ ]
+ },
+ "compile": {
+ "summary": "Python bytecode compilation support",
"rdepends": [
"asyncio",
"compression",
@@ -91,305 +98,309 @@
"threading",
"unixadmin"
],
- "summary": "Python bytecode compilation support"
- },
- "compression": {
- "cached": [
- "${libdir}/python3.5/__pycache__/_compression.*.pyc",
- "${libdir}/python3.5/__pycache__/bz2.*.pyc",
- "${libdir}/python3.5/__pycache__/gzip.*.pyc",
- "${libdir}/python3.5/__pycache__/lzma.*.pyc",
- "${libdir}/python3.5/__pycache__/tarfile.*.pyc",
- "${libdir}/python3.5/__pycache__/zipfile.*.pyc"
- ],
"files": [
- "${libdir}/python3.5/_compression.py",
- "${libdir}/python3.5/bz2.py",
- "${libdir}/python3.5/gzip.py",
- "${libdir}/python3.5/lib-dynload/_bz2.*.so",
- "${libdir}/python3.5/lib-dynload/_lzma.*.so",
- "${libdir}/python3.5/lib-dynload/zlib.*.so",
- "${libdir}/python3.5/lzma.py",
- "${libdir}/python3.5/tarfile.py",
- "${libdir}/python3.5/zipfile.py"
+ "${libdir}/python${PYTHON_MAJMIN}/compileall.py",
+ "${libdir}/python${PYTHON_MAJMIN}/py_compile.py"
],
+ "cached": [
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/compileall.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/py_compile.*.pyc"
+ ]
+ },
+ "compression": {
+ "summary": "Python high-level compression support",
"rdepends": [
"core",
"shell",
"unixadmin"
],
- "summary": "Python high-level compression support"
+ "files": [
+ "${libdir}/python${PYTHON_MAJMIN}/_compression.py",
+ "${libdir}/python${PYTHON_MAJMIN}/bz2.py",
+ "${libdir}/python${PYTHON_MAJMIN}/gzip.py",
+ "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_bz2.*.so",
+ "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_lzma.*.so",
+ "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/zlib.*.so",
+ "${libdir}/python${PYTHON_MAJMIN}/lzma.py",
+ "${libdir}/python${PYTHON_MAJMIN}/tarfile.py",
+ "${libdir}/python${PYTHON_MAJMIN}/zipfile.py"
+ ],
+ "cached": [
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/_compression.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/bz2.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/gzip.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/lzma.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/tarfile.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/zipfile.*.pyc"
+ ]
},
"core": {
- "cached": [
- "${libdir}/python3.5/__pycache__/__future__.*.pyc",
- "${libdir}/python3.5/__pycache__/_bootlocale.*.pyc",
- "${libdir}/python3.5/__pycache__/_collections_abc.*.pyc",
- "${libdir}/python3.5/__pycache__/_markupbase.*.pyc",
- "${libdir}/python3.5/__pycache__/_sitebuiltins.*.pyc",
- "${libdir}/python3.5/__pycache__/_sysconfigdata.*.pyc",
- "${libdir}/python3.5/__pycache__/_weakrefset.*.pyc",
- "${libdir}/python3.5/__pycache__/abc.*.pyc",
- "${libdir}/python3.5/__pycache__/argparse.*.pyc",
- "${libdir}/python3.5/__pycache__/ast.*.pyc",
- "${libdir}/python3.5/__pycache__/bisect.*.pyc",
- "${libdir}/python3.5/__pycache__/code.*.pyc",
- "${libdir}/python3.5/__pycache__/codecs.*.pyc",
- "${libdir}/python3.5/__pycache__/codeop.*.pyc",
- "${libdir}/python3.5/__pycache__/configparser.*.pyc",
- "${libdir}/python3.5/__pycache__/contextlib.*.pyc",
- "${libdir}/python3.5/__pycache__/copy.*.pyc",
- "${libdir}/python3.5/__pycache__/copyreg.*.pyc",
- "${libdir}/python3.5/__pycache__/csv.*.pyc",
- "${libdir}/python3.5/__pycache__/dis.*.pyc",
- "${libdir}/python3.5/__pycache__/enum.*.pyc",
- "${libdir}/python3.5/__pycache__/functools.*.pyc",
- "${libdir}/python3.5/__pycache__/genericpath.*.pyc",
- "${libdir}/python3.5/__pycache__/getopt.*.pyc",
- "${libdir}/python3.5/__pycache__/gettext.*.pyc",
- "${libdir}/python3.5/__pycache__/heapq.*.pyc",
- "${libdir}/python3.5/__pycache__/imp.*.pyc",
- "${libdir}/python3.5/__pycache__/inspect.*.pyc",
- "${libdir}/python3.5/__pycache__/io.*.pyc",
- "${libdir}/python3.5/__pycache__/keyword.*.pyc",
- "${libdir}/python3.5/__pycache__/linecache.*.pyc",
- "${libdir}/python3.5/__pycache__/locale.*.pyc",
- "${libdir}/python3.5/__pycache__/opcode.*.pyc",
- "${libdir}/python3.5/__pycache__/operator.*.pyc",
- "${libdir}/python3.5/__pycache__/optparse.*.pyc",
- "${libdir}/python3.5/__pycache__/os.*.pyc",
- "${libdir}/python3.5/__pycache__/platform.*.pyc",
- "${libdir}/python3.5/__pycache__/posixpath.*.pyc",
- "${libdir}/python3.5/__pycache__/re.*.pyc",
- "${libdir}/python3.5/__pycache__/reprlib.*.pyc",
- "${libdir}/python3.5/__pycache__/rlcompleter.*.pyc",
- "${libdir}/python3.5/__pycache__/selectors.*.pyc",
- "${libdir}/python3.5/__pycache__/signal.*.pyc",
- "${libdir}/python3.5/__pycache__/site.*.pyc",
- "${libdir}/python3.5/__pycache__/sre_compile.*.pyc",
- "${libdir}/python3.5/__pycache__/sre_constants.*.pyc",
- "${libdir}/python3.5/__pycache__/sre_parse.*.pyc",
- "${libdir}/python3.5/__pycache__/stat.*.pyc",
- "${libdir}/python3.5/__pycache__/stringprep.*.pyc",
- "${libdir}/python3.5/__pycache__/struct.*.pyc",
- "${libdir}/python3.5/__pycache__/subprocess.*.pyc",
- "${libdir}/python3.5/__pycache__/symbol.*.pyc",
- "${libdir}/python3.5/__pycache__/sysconfig.*.pyc",
- "${libdir}/python3.5/__pycache__/textwrap.*.pyc",
- "${libdir}/python3.5/__pycache__/threading.*.pyc",
- "${libdir}/python3.5/__pycache__/token.*.pyc",
- "${libdir}/python3.5/__pycache__/tokenize.*.pyc",
- "${libdir}/python3.5/__pycache__/traceback.*.pyc",
- "${libdir}/python3.5/__pycache__/types.*.pyc",
- "${libdir}/python3.5/__pycache__/warnings.*.pyc",
- "${libdir}/python3.5/__pycache__/weakref.*.pyc",
- "${libdir}/python3.5/collections/__pycache__",
- "${libdir}/python3.5/collections/__pycache__/abc.*.pyc",
- "${libdir}/python3.5/encodings/__pycache__",
- "${libdir}/python3.5/encodings/__pycache__/aliases.*.pyc",
- "${libdir}/python3.5/encodings/__pycache__/latin_1.*.pyc",
- "${libdir}/python3.5/encodings/__pycache__/utf_8.*.pyc",
- "${libdir}/python3.5/importlib/__pycache__",
- "${libdir}/python3.5/importlib/__pycache__/abc.*.pyc",
- "${libdir}/python3.5/importlib/__pycache__/machinery.*.pyc",
- "${libdir}/python3.5/importlib/__pycache__/util.*.pyc"
- ],
+ "summary": "Python interpreter and core modules",
+ "rdepends": [],
"files": [
"${bindir}/python*[!-config]",
"${includedir}/python${PYTHON_BINABI}/pyconfig*.h",
+ "${libdir}/python${PYTHON_MAJMIN}/UserDict.py",
+ "${libdir}/python${PYTHON_MAJMIN}/UserList.py",
+ "${libdir}/python${PYTHON_MAJMIN}/UserString.py",
+ "${libdir}/python${PYTHON_MAJMIN}/__future__.py",
+ "${libdir}/python${PYTHON_MAJMIN}/_abcoll.py",
+ "${libdir}/python${PYTHON_MAJMIN}/_bootlocale.py",
"${libdir}/python${PYTHON_MAJMIN}/_collections_abc.py",
+ "${libdir}/python${PYTHON_MAJMIN}/_markupbase.py",
"${libdir}/python${PYTHON_MAJMIN}/_sitebuiltins.py",
+ "${libdir}/python${PYTHON_MAJMIN}/_sysconfigdata.py",
+ "${libdir}/python${PYTHON_MAJMIN}/_weakrefset.py",
+ "${libdir}/python${PYTHON_MAJMIN}/abc.py",
+ "${libdir}/python${PYTHON_MAJMIN}/argparse.py",
+ "${libdir}/python${PYTHON_MAJMIN}/ast.py",
+ "${libdir}/python${PYTHON_MAJMIN}/bisect.py",
+ "${libdir}/python${PYTHON_MAJMIN}/code.py",
+ "${libdir}/python${PYTHON_MAJMIN}/codecs.py",
+ "${libdir}/python${PYTHON_MAJMIN}/codeop.py",
"${libdir}/python${PYTHON_MAJMIN}/collections",
+ "${libdir}/python${PYTHON_MAJMIN}/collections/abc.py",
+ "${libdir}/python${PYTHON_MAJMIN}/configparser.py",
+ "${libdir}/python${PYTHON_MAJMIN}/contextlib.py",
+ "${libdir}/python${PYTHON_MAJMIN}/copy.py",
+ "${libdir}/python${PYTHON_MAJMIN}/copyreg.py",
+ "${libdir}/python${PYTHON_MAJMIN}/csv.py",
+ "${libdir}/python${PYTHON_MAJMIN}/dis.py",
+ "${libdir}/python${PYTHON_MAJMIN}/encodings",
+ "${libdir}/python${PYTHON_MAJMIN}/encodings/aliases.py",
+ "${libdir}/python${PYTHON_MAJMIN}/encodings/latin_1.py",
+ "${libdir}/python${PYTHON_MAJMIN}/encodings/utf_8.py",
+ "${libdir}/python${PYTHON_MAJMIN}/enum.py",
+ "${libdir}/python${PYTHON_MAJMIN}/functools.py",
+ "${libdir}/python${PYTHON_MAJMIN}/genericpath.py",
+ "${libdir}/python${PYTHON_MAJMIN}/getopt.py",
+ "${libdir}/python${PYTHON_MAJMIN}/gettext.py",
+ "${libdir}/python${PYTHON_MAJMIN}/heapq.py",
+ "${libdir}/python${PYTHON_MAJMIN}/imp.py",
+ "${libdir}/python${PYTHON_MAJMIN}/importlib",
+ "${libdir}/python${PYTHON_MAJMIN}/importlib/_bootstrap.py",
+ "${libdir}/python${PYTHON_MAJMIN}/importlib/_bootstrap_external.py",
+ "${libdir}/python${PYTHON_MAJMIN}/importlib/abc.py",
+ "${libdir}/python${PYTHON_MAJMIN}/importlib/machinery.py",
+ "${libdir}/python${PYTHON_MAJMIN}/importlib/util.py",
+ "${libdir}/python${PYTHON_MAJMIN}/inspect.py",
+ "${libdir}/python${PYTHON_MAJMIN}/io.py",
+ "${libdir}/python${PYTHON_MAJMIN}/keyword.py",
+ "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/__pycache__/_struct.*.so",
+ "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/__pycache__/binascii.*.so",
+ "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/__pycache__/time.*.so",
+ "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/__pycache__/xreadlines.*.so",
+ "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_bisect.*.so",
+ "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_csv.*.so",
+ "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_heapq.*.so",
+ "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_opcode.*.so",
+ "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_posixsubprocess.*.so",
+ "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_struct.*.so",
+ "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/array.*.so",
+ "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/binascii.*.so",
+ "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/math.*.so",
+ "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/parser.*.so",
+ "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/readline.*.so",
+ "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/select.*.so",
+ "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/time.*.so",
+ "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/unicodedata.*.so",
+ "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/xreadlines.*.so",
+ "${libdir}/python${PYTHON_MAJMIN}/linecache.py",
+ "${libdir}/python${PYTHON_MAJMIN}/locale.py",
+ "${libdir}/python${PYTHON_MAJMIN}/new.py",
+ "${libdir}/python${PYTHON_MAJMIN}/opcode.py",
+ "${libdir}/python${PYTHON_MAJMIN}/operator.py",
+ "${libdir}/python${PYTHON_MAJMIN}/optparse.py",
+ "${libdir}/python${PYTHON_MAJMIN}/os.py",
+ "${libdir}/python${PYTHON_MAJMIN}/platform.py",
+ "${libdir}/python${PYTHON_MAJMIN}/posixpath.py",
+ "${libdir}/python${PYTHON_MAJMIN}/re.py",
+ "${libdir}/python${PYTHON_MAJMIN}/reprlib.py",
+ "${libdir}/python${PYTHON_MAJMIN}/rlcompleter.py",
+ "${libdir}/python${PYTHON_MAJMIN}/selectors.py",
+ "${libdir}/python${PYTHON_MAJMIN}/signal.py",
+ "${libdir}/python${PYTHON_MAJMIN}/site.py",
"${libdir}/python${PYTHON_MAJMIN}/sitecustomize.py",
- "${libdir}/python3.5/UserDict.py",
- "${libdir}/python3.5/UserList.py",
- "${libdir}/python3.5/UserString.py",
- "${libdir}/python3.5/__future__.py",
- "${libdir}/python3.5/_abcoll.py",
- "${libdir}/python3.5/_bootlocale.py",
- "${libdir}/python3.5/_collections_abc.py",
- "${libdir}/python3.5/_markupbase.py",
- "${libdir}/python3.5/_sitebuiltins.py",
- "${libdir}/python3.5/_sysconfigdata.py",
- "${libdir}/python3.5/_weakrefset.py",
- "${libdir}/python3.5/abc.py",
- "${libdir}/python3.5/argparse.py",
- "${libdir}/python3.5/ast.py",
- "${libdir}/python3.5/bisect.py",
- "${libdir}/python3.5/code.py",
- "${libdir}/python3.5/codecs.py",
- "${libdir}/python3.5/codeop.py",
- "${libdir}/python3.5/collections",
- "${libdir}/python3.5/collections/abc.py",
- "${libdir}/python3.5/configparser.py",
- "${libdir}/python3.5/contextlib.py",
- "${libdir}/python3.5/copy.py",
- "${libdir}/python3.5/copyreg.py",
- "${libdir}/python3.5/csv.py",
- "${libdir}/python3.5/dis.py",
- "${libdir}/python3.5/encodings",
- "${libdir}/python3.5/encodings/aliases.py",
- "${libdir}/python3.5/encodings/latin_1.py",
- "${libdir}/python3.5/encodings/utf_8.py",
- "${libdir}/python3.5/enum.py",
- "${libdir}/python3.5/functools.py",
- "${libdir}/python3.5/genericpath.py",
- "${libdir}/python3.5/getopt.py",
- "${libdir}/python3.5/gettext.py",
- "${libdir}/python3.5/heapq.py",
- "${libdir}/python3.5/imp.py",
- "${libdir}/python3.5/importlib",
- "${libdir}/python3.5/importlib/_bootstrap.py",
- "${libdir}/python3.5/importlib/_bootstrap_external.py",
- "${libdir}/python3.5/importlib/abc.py",
- "${libdir}/python3.5/importlib/machinery.py",
- "${libdir}/python3.5/importlib/util.py",
- "${libdir}/python3.5/inspect.py",
- "${libdir}/python3.5/io.py",
- "${libdir}/python3.5/keyword.py",
- "${libdir}/python3.5/lib-dynload/__pycache__/_struct.*.so",
- "${libdir}/python3.5/lib-dynload/__pycache__/binascii.*.so",
- "${libdir}/python3.5/lib-dynload/__pycache__/time.*.so",
- "${libdir}/python3.5/lib-dynload/__pycache__/xreadlines.*.so",
- "${libdir}/python3.5/lib-dynload/_bisect.*.so",
- "${libdir}/python3.5/lib-dynload/_csv.*.so",
- "${libdir}/python3.5/lib-dynload/_heapq.*.so",
- "${libdir}/python3.5/lib-dynload/_opcode.*.so",
- "${libdir}/python3.5/lib-dynload/_posixsubprocess.*.so",
- "${libdir}/python3.5/lib-dynload/_struct.*.so",
- "${libdir}/python3.5/lib-dynload/array.*.so",
- "${libdir}/python3.5/lib-dynload/binascii.*.so",
- "${libdir}/python3.5/lib-dynload/math.*.so",
- "${libdir}/python3.5/lib-dynload/parser.*.so",
- "${libdir}/python3.5/lib-dynload/readline.*.so",
- "${libdir}/python3.5/lib-dynload/select.*.so",
- "${libdir}/python3.5/lib-dynload/time.*.so",
- "${libdir}/python3.5/lib-dynload/unicodedata.*.so",
- "${libdir}/python3.5/lib-dynload/xreadlines.*.so",
- "${libdir}/python3.5/linecache.py",
- "${libdir}/python3.5/locale.py",
- "${libdir}/python3.5/new.py",
- "${libdir}/python3.5/opcode.py",
- "${libdir}/python3.5/operator.py",
- "${libdir}/python3.5/optparse.py",
- "${libdir}/python3.5/os.py",
- "${libdir}/python3.5/platform.py",
- "${libdir}/python3.5/posixpath.py",
- "${libdir}/python3.5/re.py",
- "${libdir}/python3.5/reprlib.py",
- "${libdir}/python3.5/rlcompleter.py",
- "${libdir}/python3.5/selectors.py",
- "${libdir}/python3.5/signal.py",
- "${libdir}/python3.5/site.py",
- "${libdir}/python3.5/sre_compile.py",
- "${libdir}/python3.5/sre_constants.py",
- "${libdir}/python3.5/sre_parse.py",
- "${libdir}/python3.5/stat.py",
- "${libdir}/python3.5/stringprep.py",
- "${libdir}/python3.5/struct.py",
- "${libdir}/python3.5/subprocess.py",
- "${libdir}/python3.5/symbol.py",
- "${libdir}/python3.5/sysconfig.py",
- "${libdir}/python3.5/textwrap.py",
- "${libdir}/python3.5/threading.py",
- "${libdir}/python3.5/token.py",
- "${libdir}/python3.5/tokenize.py",
- "${libdir}/python3.5/traceback.py",
- "${libdir}/python3.5/types.py",
- "${libdir}/python3.5/warnings.py",
- "${libdir}/python3.5/weakref.py"
+ "${libdir}/python${PYTHON_MAJMIN}/sre_compile.py",
+ "${libdir}/python${PYTHON_MAJMIN}/sre_constants.py",
+ "${libdir}/python${PYTHON_MAJMIN}/sre_parse.py",
+ "${libdir}/python${PYTHON_MAJMIN}/stat.py",
+ "${libdir}/python${PYTHON_MAJMIN}/stringprep.py",
+ "${libdir}/python${PYTHON_MAJMIN}/struct.py",
+ "${libdir}/python${PYTHON_MAJMIN}/subprocess.py",
+ "${libdir}/python${PYTHON_MAJMIN}/symbol.py",
+ "${libdir}/python${PYTHON_MAJMIN}/sysconfig.py",
+ "${libdir}/python${PYTHON_MAJMIN}/textwrap.py",
+ "${libdir}/python${PYTHON_MAJMIN}/threading.py",
+ "${libdir}/python${PYTHON_MAJMIN}/token.py",
+ "${libdir}/python${PYTHON_MAJMIN}/tokenize.py",
+ "${libdir}/python${PYTHON_MAJMIN}/traceback.py",
+ "${libdir}/python${PYTHON_MAJMIN}/types.py",
+ "${libdir}/python${PYTHON_MAJMIN}/warnings.py",
+ "${libdir}/python${PYTHON_MAJMIN}/weakref.py"
],
- "rdepends": [],
- "summary": "Python interpreter and core modules"
+ "cached": [
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/__future__.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/_bootlocale.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/_collections_abc.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/_markupbase.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/_sitebuiltins.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/_sysconfigdata.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/_weakrefset.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/abc.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/argparse.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/ast.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/bisect.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/code.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/codecs.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/codeop.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/configparser.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/contextlib.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/copy.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/copyreg.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/csv.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/dis.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/enum.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/functools.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/genericpath.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/getopt.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/gettext.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/heapq.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/imp.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/inspect.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/io.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/keyword.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/linecache.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/locale.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/opcode.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/operator.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/optparse.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/os.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/platform.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/posixpath.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/re.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/reprlib.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/rlcompleter.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/selectors.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/signal.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/site.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/sre_compile.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/sre_constants.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/sre_parse.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/stat.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/stringprep.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/struct.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/subprocess.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/symbol.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/sysconfig.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/textwrap.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/threading.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/token.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/tokenize.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/traceback.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/types.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/warnings.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/weakref.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/collections/__pycache__",
+ "${libdir}/python${PYTHON_MAJMIN}/collections/__pycache__/abc.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/encodings/__pycache__",
+ "${libdir}/python${PYTHON_MAJMIN}/encodings/__pycache__/aliases.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/encodings/__pycache__/latin_1.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/encodings/__pycache__/utf_8.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/importlib/__pycache__",
+ "${libdir}/python${PYTHON_MAJMIN}/importlib/__pycache__/abc.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/importlib/__pycache__/machinery.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/importlib/__pycache__/util.*.pyc"
+ ]
},
"crypt": {
- "cached": [
- "${libdir}/python3.5/__pycache__/crypt.*.pyc",
- "${libdir}/python3.5/__pycache__/hashlib.*.pyc"
- ],
- "files": [
- "${libdir}/python3.5/crypt.py",
- "${libdir}/python3.5/hashlib.py",
- "${libdir}/python3.5/lib-dynload/_crypt.*.so",
- "${libdir}/python3.5/lib-dynload/_hashlib.*.so",
- "${libdir}/python3.5/lib-dynload/_sha256.*.so",
- "${libdir}/python3.5/lib-dynload/_sha512.*.so"
- ],
+ "summary": "Python basic cryptographic and hashing support",
"rdepends": [
"core",
"math",
"stringold"
],
- "summary": "Python basic cryptographic and hashing support"
- },
- "ctypes": {
- "cached": [],
"files": [
- "${libdir}/python3.5/ctypes",
- "${libdir}/python3.5/lib-dynload/_ctypes.*.so",
- "${libdir}/python3.5/lib-dynload/_ctypes_test.*.so"
+ "${libdir}/python${PYTHON_MAJMIN}/crypt.py",
+ "${libdir}/python${PYTHON_MAJMIN}/hashlib.py",
+ "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_crypt.*.so",
+ "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_hashlib.*.so",
+ "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_sha256.*.so",
+ "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_sha512.*.so"
],
+ "cached": [
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/crypt.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/hashlib.*.pyc"
+ ]
+ },
+ "ctypes": {
+ "summary": "Python C types support",
"rdepends": [
"core"
],
- "summary": "Python C types support"
- },
- "curses": {
- "cached": [],
"files": [
- "${libdir}/python3.5/curses",
- "${libdir}/python3.5/lib-dynload/_curses.*.so",
- "${libdir}/python3.5/lib-dynload/_curses_panel.*.so"
+ "${libdir}/python${PYTHON_MAJMIN}/ctypes",
+ "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_ctypes.*.so",
+ "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_ctypes_test.*.so"
],
+ "cached": []
+ },
+ "curses": {
+ "summary": "Python curses support",
"rdepends": [
"core"
],
- "summary": "Python curses support"
- },
- "datetime": {
- "cached": [
- "${libdir}/python3.5/__pycache__/_strptime.*.pyc",
- "${libdir}/python3.5/__pycache__/calendar.*.pyc",
- "${libdir}/python3.5/__pycache__/datetime.*.pyc"
- ],
"files": [
- "${libdir}/python3.5/_strptime.py",
- "${libdir}/python3.5/calendar.py",
- "${libdir}/python3.5/datetime.py",
- "${libdir}/python3.5/lib-dynload/_datetime.*.so"
+ "${libdir}/python${PYTHON_MAJMIN}/curses",
+ "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_curses.*.so",
+ "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_curses_panel.*.so"
],
+ "cached": []
+ },
+ "datetime": {
+ "summary": "Python calendar and time support",
"rdepends": [
"core"
],
- "summary": "Python calendar and time support"
- },
- "db": {
- "cached": [],
"files": [
- "${libdir}/python3.5/dbm",
- "${libdir}/python3.5/lib-dynload/_dbm.*.so"
+ "${libdir}/python${PYTHON_MAJMIN}/_strptime.py",
+ "${libdir}/python${PYTHON_MAJMIN}/calendar.py",
+ "${libdir}/python${PYTHON_MAJMIN}/datetime.py",
+ "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_datetime.*.so"
],
+ "cached": [
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/_strptime.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/calendar.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/datetime.*.pyc"
+ ]
+ },
+ "db": {
+ "summary": "Python file-based database support",
"rdepends": [
"core"
],
- "summary": "Python file-based database support"
- },
- "debugger": {
- "cached": [
- "${libdir}/python3.5/__pycache__/bdb.*.pyc",
- "${libdir}/python3.5/__pycache__/pdb.*.pyc"
- ],
"files": [
- "${libdir}/python3.5/bdb.py",
- "${libdir}/python3.5/pdb.py"
+ "${libdir}/python${PYTHON_MAJMIN}/dbm",
+ "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_dbm.*.so"
],
+ "cached": []
+ },
+ "debugger": {
+ "summary": "Python debugger",
"rdepends": [
"core",
"pprint",
"shell",
"stringold"
],
- "summary": "Python debugger"
+ "files": [
+ "${libdir}/python${PYTHON_MAJMIN}/bdb.py",
+ "${libdir}/python${PYTHON_MAJMIN}/pdb.py"
+ ],
+ "cached": [
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/bdb.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/pdb.*.pyc"
+ ]
},
"dev": {
"cached": [],
@@ -405,8 +416,8 @@
"${libdir}/*.o",
"${libdir}/lib*${SOLIBSDEV}",
"${libdir}/pkgconfig",
- "${libdir}/python3.5/config*/Makefile",
- "${libdir}/python3.5/config*/Makefile/__pycache__"
+ "${libdir}/python${PYTHON_MAJMIN}/config*/Makefile",
+ "${libdir}/python${PYTHON_MAJMIN}/config*/Makefile/__pycache__"
],
"rdepends": [
"core"
@@ -414,46 +425,41 @@
"summary": "Python development package"
},
"difflib": {
- "cached": [
- "${libdir}/python3.5/__pycache__/difflib.*.pyc"
- ],
- "files": [
- "${libdir}/python3.5/difflib.py"
- ],
+ "summary": "Python helpers for computing deltas between objects",
"rdepends": [
"core"
],
- "summary": "Python helpers for computing deltas between objects"
- },
- "distutils": {
- "cached": [],
"files": [
- "${libdir}/python3.5/distutils"
- ],
- "rdepends": [
- "core"
+ "${libdir}/python${PYTHON_MAJMIN}/difflib.py"
],
- "summary": "Python Distribution Utilities"
+ "cached": [
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/difflib.*.pyc"
+ ]
},
"distutils-staticdev": {
"cached": [
- "${libdir}/python3.5/config/__pycache__/lib*.a"
+ "${libdir}/python${PYTHON_MAJMIN}/config/__pycache__/lib*.a"
],
"files": [
- "${libdir}/python3.5/config/lib*.a"
+ "${libdir}/python${PYTHON_MAJMIN}/config/lib*.a"
],
"rdepends": [
"distutils"
],
"summary": "Python distribution utilities (static libraries)"
},
- "doctest": {
- "cached": [
- "${libdir}/python3.5/__pycache__/doctest.*.pyc"
+ "distutils": {
+ "summary": "Python Distribution Utilities",
+ "rdepends": [
+ "core"
],
"files": [
- "${libdir}/python3.5/doctest.py"
+ "${libdir}/python${PYTHON_MAJMIN}/distutils"
],
+ "cached": []
+ },
+ "doctest": {
+ "summary": "Python framework for running examples in docstrings",
"rdepends": [
"core",
"debugger",
@@ -464,16 +470,15 @@
"stringold",
"unittest"
],
- "summary": "Python framework for running examples in docstrings"
- },
- "email": {
- "cached": [
- "${libdir}/python3.5/__pycache__/imaplib.*.pyc"
- ],
"files": [
- "${libdir}/python3.5/email",
- "${libdir}/python3.5/imaplib.py"
+ "${libdir}/python${PYTHON_MAJMIN}/doctest.py"
],
+ "cached": [
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/doctest.*.pyc"
+ ]
+ },
+ "email": {
+ "summary": "Python email support",
"rdepends": [
"core",
"crypt",
@@ -482,86 +487,74 @@
"math",
"netclient"
],
- "summary": "Python email support"
- },
- "fcntl": {
- "cached": [],
"files": [
- "${libdir}/python3.5/lib-dynload/fcntl.*.so"
+ "${libdir}/python${PYTHON_MAJMIN}/email",
+ "${libdir}/python${PYTHON_MAJMIN}/imaplib.py"
],
+ "cached": [
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/imaplib.*.pyc"
+ ]
+ },
+ "fcntl": {
+ "summary": "Python's fcntl interface",
"rdepends": [
"core"
],
- "summary": "Python's fcntl interface"
- },
- "gdbm": {
- "cached": [],
"files": [
- "${libdir}/python3.5/lib-dynload/_gdbm.*.so"
+ "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/fcntl.*.so"
],
+ "cached": []
+ },
+ "gdbm": {
+ "summary": "Python GNU database support",
"rdepends": [
"core"
],
- "summary": "Python GNU database support"
+ "files": [
+ "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_gdbm.*.so"
+ ],
+ "cached": []
},
"html": {
- "cached": [
- "${libdir}/python3.5/__pycache__/formatter.*.pyc"
+ "summary": "Python HTML processing support",
+ "rdepends": [
+ "core"
],
"files": [
- "${libdir}/python3.5/formatter.py",
- "${libdir}/python3.5/html"
+ "${libdir}/python${PYTHON_MAJMIN}/formatter.py",
+ "${libdir}/python${PYTHON_MAJMIN}/html"
],
+ "cached": [
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/formatter.*.pyc"
+ ]
+ },
+ "idle": {
+ "summary": "Python Integrated Development Environment",
"rdepends": [
"core"
],
- "summary": "Python HTML processing support"
- },
- "idle": {
- "cached": [],
"files": [
"${bindir}/idle*",
- "${libdir}/python3.5/idlelib"
+ "${libdir}/python${PYTHON_MAJMIN}/idlelib"
],
- "rdepends": [
- "core"
- ],
- "summary": "Python Integrated Development Environment"
+ "cached": []
},
"image": {
- "cached": [
- "${libdir}/python3.5/__pycache__/colorsys.*.pyc",
- "${libdir}/python3.5/__pycache__/imghdr.*.pyc"
- ],
- "files": [
- "${libdir}/python3.5/colorsys.py",
- "${libdir}/python3.5/imghdr.py"
- ],
+ "summary": "Python graphical image handling",
"rdepends": [
"core"
],
- "summary": "Python graphical image handling"
- },
- "io": {
- "cached": [
- "${libdir}/python3.5/__pycache__/_pyio.*.pyc",
- "${libdir}/python3.5/__pycache__/ipaddress.*.pyc",
- "${libdir}/python3.5/__pycache__/pipes.*.pyc",
- "${libdir}/python3.5/__pycache__/socket.*.pyc",
- "${libdir}/python3.5/__pycache__/ssl.*.pyc",
- "${libdir}/python3.5/__pycache__/tempfile.*.pyc"
- ],
"files": [
- "${libdir}/python3.5/_pyio.py",
- "${libdir}/python3.5/ipaddress.py",
- "${libdir}/python3.5/lib-dynload/_socket.*.so",
- "${libdir}/python3.5/lib-dynload/_ssl.*.so",
- "${libdir}/python3.5/lib-dynload/termios.*.so",
- "${libdir}/python3.5/pipes.py",
- "${libdir}/python3.5/socket.py",
- "${libdir}/python3.5/ssl.py",
- "${libdir}/python3.5/tempfile.py"
+ "${libdir}/python${PYTHON_MAJMIN}/colorsys.py",
+ "${libdir}/python${PYTHON_MAJMIN}/imghdr.py"
],
+ "cached": [
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/colorsys.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/imghdr.*.pyc"
+ ]
+ },
+ "io": {
+ "summary": "Python low-level I/O",
"rdepends": [
"compression",
"core",
@@ -571,37 +564,50 @@
"shell",
"unixadmin"
],
- "summary": "Python low-level I/O"
- },
- "json": {
- "cached": [],
"files": [
- "${libdir}/python3.5/json",
- "${libdir}/python3.5/lib-dynload/_json.*.so"
+ "${libdir}/python${PYTHON_MAJMIN}/_pyio.py",
+ "${libdir}/python${PYTHON_MAJMIN}/ipaddress.py",
+ "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_socket.*.so",
+ "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_ssl.*.so",
+ "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/termios.*.so",
+ "${libdir}/python${PYTHON_MAJMIN}/pipes.py",
+ "${libdir}/python${PYTHON_MAJMIN}/socket.py",
+ "${libdir}/python${PYTHON_MAJMIN}/ssl.py",
+ "${libdir}/python${PYTHON_MAJMIN}/tempfile.py"
],
+ "cached": [
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/_pyio.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/ipaddress.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/pipes.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/socket.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/ssl.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/tempfile.*.pyc"
+ ]
+ },
+ "json": {
+ "summary": "Python JSON support",
"rdepends": [
"core"
],
- "summary": "Python JSON support"
- },
- "logging": {
- "cached": [],
"files": [
- "${libdir}/python3.5/logging"
+ "${libdir}/python${PYTHON_MAJMIN}/json",
+ "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_json.*.so"
],
+ "cached": []
+ },
+ "logging": {
+ "summary": "Python logging support",
"rdepends": [
"core",
"stringold"
],
- "summary": "Python logging support"
- },
- "mailbox": {
- "cached": [
- "${libdir}/python3.5/__pycache__/mailbox.*.pyc"
- ],
"files": [
- "${libdir}/python3.5/mailbox.py"
+ "${libdir}/python${PYTHON_MAJMIN}/logging"
],
+ "cached": []
+ },
+ "mailbox": {
+ "summary": "Python mailbox format support",
"rdepends": [
"core",
"crypt",
@@ -614,46 +620,51 @@
"netclient",
"stringold"
],
- "summary": "Python mailbox format support"
- },
- "math": {
- "cached": [
- "${libdir}/python3.5/__pycache__/random.*.pyc"
- ],
"files": [
- "${libdir}/python3.5/lib-dynload/_random.*.so",
- "${libdir}/python3.5/lib-dynload/cmath.*.so",
- "${libdir}/python3.5/random.py"
+ "${libdir}/python${PYTHON_MAJMIN}/mailbox.py"
],
+ "cached": [
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/mailbox.*.pyc"
+ ]
+ },
+ "math": {
+ "summary": "Python math support",
"rdepends": [
"core",
"crypt"
],
- "summary": "Python math support"
- },
- "mime": {
- "cached": [
- "${libdir}/python3.5/__pycache__/quopri.*.pyc",
- "${libdir}/python3.5/__pycache__/uu.*.pyc"
- ],
"files": [
- "${libdir}/python3.5/quopri.py",
- "${libdir}/python3.5/uu.py"
+ "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_random.*.so",
+ "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/cmath.*.so",
+ "${libdir}/python${PYTHON_MAJMIN}/random.py"
],
+ "cached": [
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/random.*.pyc"
+ ]
+ },
+ "mime": {
+ "summary": "Python MIME handling APIs",
"rdepends": [
"core"
],
- "summary": "Python MIME handling APIs"
- },
- "mmap": {
- "cached": [],
"files": [
- "${libdir}/python3.5/lib-dynload/mmap.*.so"
+ "${libdir}/python${PYTHON_MAJMIN}/quopri.py",
+ "${libdir}/python${PYTHON_MAJMIN}/uu.py"
],
+ "cached": [
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/quopri.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/uu.*.pyc"
+ ]
+ },
+ "mmap": {
+ "summary": "Python memory-mapped file support",
"rdepends": [
"core"
],
- "summary": "Python memory-mapped file support"
+ "files": [
+ "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/mmap.*.so"
+ ],
+ "cached": []
},
"modules": {
"cached": [],
@@ -710,49 +721,25 @@
"typing",
"unittest",
"unixadmin",
+ "venv",
"xml",
"xmlrpc"
],
"summary": "All Python modules"
},
"multiprocessing": {
- "cached": [],
- "files": [
- "${libdir}/python3.5/lib-dynload/_multiprocessing.*.so",
- "${libdir}/python3.5/multiprocessing"
- ],
+ "summary": "Python multiprocessing support",
"rdepends": [
"core"
],
- "summary": "Python multiprocessing support"
- },
- "netclient": {
- "cached": [
- "${libdir}/python3.5/__pycache__/base64.*.pyc",
- "${libdir}/python3.5/__pycache__/ftplib.*.pyc",
- "${libdir}/python3.5/__pycache__/hmac.*.pyc",
- "${libdir}/python3.5/__pycache__/mimetypes.*.pyc",
- "${libdir}/python3.5/__pycache__/nntplib.*.pyc",
- "${libdir}/python3.5/__pycache__/poplib.*.pyc",
- "${libdir}/python3.5/__pycache__/smtplib.*.pyc",
- "${libdir}/python3.5/__pycache__/telnetlib.*.pyc",
- "${libdir}/python3.5/__pycache__/uuid.*.pyc"
- ],
"files": [
- "${libdir}/python3.5/base64.py",
- "${libdir}/python3.5/ftplib.py",
- "${libdir}/python3.5/hmac.py",
- "${libdir}/python3.5/http",
- "${libdir}/python3.5/http/__pycache__",
- "${libdir}/python3.5/mimetypes.py",
- "${libdir}/python3.5/nntplib.py",
- "${libdir}/python3.5/poplib.py",
- "${libdir}/python3.5/smtplib.py",
- "${libdir}/python3.5/telnetlib.py",
- "${libdir}/python3.5/urllib",
- "${libdir}/python3.5/urllib/__pycache__",
- "${libdir}/python3.5/uuid.py"
+ "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_multiprocessing.*.so",
+ "${libdir}/python${PYTHON_MAJMIN}/multiprocessing"
],
+ "cached": []
+ },
+ "netclient": {
+ "summary": "Python Internet Protocol clients",
"rdepends": [
"compression",
"core",
@@ -767,17 +754,35 @@
"stringold",
"unixadmin"
],
- "summary": "Python Internet Protocol clients"
- },
- "netserver": {
- "cached": [
- "${libdir}/python3.5/__pycache__/cgi.*.pyc",
- "${libdir}/python3.5/__pycache__/socketserver.*.pyc"
- ],
"files": [
- "${libdir}/python3.5/cgi.py",
- "${libdir}/python3.5/socketserver.py"
+ "${libdir}/python${PYTHON_MAJMIN}/base64.py",
+ "${libdir}/python${PYTHON_MAJMIN}/ftplib.py",
+ "${libdir}/python${PYTHON_MAJMIN}/hmac.py",
+ "${libdir}/python${PYTHON_MAJMIN}/http",
+ "${libdir}/python${PYTHON_MAJMIN}/http/__pycache__",
+ "${libdir}/python${PYTHON_MAJMIN}/mimetypes.py",
+ "${libdir}/python${PYTHON_MAJMIN}/nntplib.py",
+ "${libdir}/python${PYTHON_MAJMIN}/poplib.py",
+ "${libdir}/python${PYTHON_MAJMIN}/smtplib.py",
+ "${libdir}/python${PYTHON_MAJMIN}/telnetlib.py",
+ "${libdir}/python${PYTHON_MAJMIN}/urllib",
+ "${libdir}/python${PYTHON_MAJMIN}/urllib/__pycache__",
+ "${libdir}/python${PYTHON_MAJMIN}/uuid.py"
],
+ "cached": [
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/base64.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/ftplib.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/hmac.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/mimetypes.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/nntplib.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/poplib.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/smtplib.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/telnetlib.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/uuid.*.pyc"
+ ]
+ },
+ "netserver": {
+ "summary": "Python Internet Protocol servers",
"rdepends": [
"compression",
"core",
@@ -793,175 +798,172 @@
"stringold",
"unixadmin"
],
- "summary": "Python Internet Protocol servers"
- },
- "numbers": {
- "cached": [
- "${libdir}/python3.5/__pycache__/_pydecimal.*.pyc",
- "${libdir}/python3.5/__pycache__/decimal.*.pyc",
- "${libdir}/python3.5/__pycache__/fractions.*.pyc",
- "${libdir}/python3.5/__pycache__/numbers.*.pyc"
- ],
"files": [
- "${libdir}/python3.5/_pydecimal.py",
- "${libdir}/python3.5/decimal.py",
- "${libdir}/python3.5/fractions.py",
- "${libdir}/python3.5/lib-dynload/_decimal.*.so",
- "${libdir}/python3.5/numbers.py"
+ "${libdir}/python${PYTHON_MAJMIN}/cgi.py",
+ "${libdir}/python${PYTHON_MAJMIN}/socketserver.py"
],
+ "cached": [
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/cgi.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/socketserver.*.pyc"
+ ]
+ },
+ "numbers": {
+ "summary": "Python number APIs",
"rdepends": [
"core"
],
- "summary": "Python number APIs"
- },
- "pickle": {
- "cached": [
- "${libdir}/python3.5/__pycache__/_compat_pickle.*.pyc",
- "${libdir}/python3.5/__pycache__/pickle.*.pyc",
- "${libdir}/python3.5/__pycache__/pickletools.*.pyc",
- "${libdir}/python3.5/__pycache__/shelve.*.pyc"
- ],
"files": [
- "${libdir}/python3.5/_compat_pickle.py",
- "${libdir}/python3.5/lib-dynload/_pickle.*.so",
- "${libdir}/python3.5/pickle.py",
- "${libdir}/python3.5/pickletools.py",
- "${libdir}/python3.5/shelve.py"
+ "${libdir}/python${PYTHON_MAJMIN}/_pydecimal.py",
+ "${libdir}/python${PYTHON_MAJMIN}/decimal.py",
+ "${libdir}/python${PYTHON_MAJMIN}/fractions.py",
+ "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_decimal.*.so",
+ "${libdir}/python${PYTHON_MAJMIN}/numbers.py"
],
+ "cached": [
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/_pydecimal.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/decimal.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/fractions.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/numbers.*.pyc"
+ ]
+ },
+ "pickle": {
+ "summary": "Python serialisation/persistence support",
"rdepends": [
"core"
],
- "summary": "Python serialisation/persistence support"
- },
- "pkgutil": {
- "cached": [
- "${libdir}/python3.5/__pycache__/pkgutil.*.pyc"
- ],
"files": [
- "${libdir}/python3.5/pkgutil.py"
+ "${libdir}/python${PYTHON_MAJMIN}/_compat_pickle.py",
+ "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_pickle.*.so",
+ "${libdir}/python${PYTHON_MAJMIN}/pickle.py",
+ "${libdir}/python${PYTHON_MAJMIN}/pickletools.py",
+ "${libdir}/python${PYTHON_MAJMIN}/shelve.py"
],
+ "cached": [
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/_compat_pickle.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/pickle.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/pickletools.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/shelve.*.pyc"
+ ]
+ },
+ "pkgutil": {
+ "summary": "Python package extension utility support",
"rdepends": [
"core"
],
- "summary": "Python package extension utility support"
- },
- "plistlib": {
- "cached": [
- "${libdir}/python3.5/__pycache__/plistlib.*.pyc"
- ],
"files": [
- "${libdir}/python3.5/plistlib.py"
+ "${libdir}/python${PYTHON_MAJMIN}/pkgutil.py"
],
+ "cached": [
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/pkgutil.*.pyc"
+ ]
+ },
+ "plistlib": {
+ "summary": "Generate and parse Mac OS X .plist files",
"rdepends": [
"core",
"datetime",
"xml"
],
- "summary": "Generate and parse Mac OS X .plist files"
- },
- "pprint": {
- "cached": [
- "${libdir}/python3.5/__pycache__/pprint.*.pyc"
- ],
"files": [
- "${libdir}/python3.5/pprint.py"
+ "${libdir}/python${PYTHON_MAJMIN}/plistlib.py"
],
+ "cached": [
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/plistlib.*.pyc"
+ ]
+ },
+ "pprint": {
+ "summary": "Python pretty-print support",
"rdepends": [
"core"
],
- "summary": "Python pretty-print support"
- },
- "profile": {
- "cached": [
- "${libdir}/python3.5/__pycache__/cProfile.*.pyc",
- "${libdir}/python3.5/__pycache__/profile.*.pyc",
- "${libdir}/python3.5/__pycache__/pstats.*.pyc"
- ],
"files": [
- "${libdir}/python3.5/cProfile.py",
- "${libdir}/python3.5/lib-dynload/_lsprof.*.so",
- "${libdir}/python3.5/profile.py",
- "${libdir}/python3.5/pstats.py"
+ "${libdir}/python${PYTHON_MAJMIN}/pprint.py"
],
+ "cached": [
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/pprint.*.pyc"
+ ]
+ },
+ "profile": {
+ "summary": "Python basic performance profiling support",
"rdepends": [
"core"
],
- "summary": "Python basic performance profiling support"
- },
- "pydoc": {
- "cached": [
- "${libdir}/python3.5/__pycache__/pydoc.*.pyc"
- ],
"files": [
- "${bindir}/pydoc*",
- "${libdir}/python3.5/pydoc.py",
- "${libdir}/python3.5/pydoc_data"
+ "${libdir}/python${PYTHON_MAJMIN}/cProfile.py",
+ "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_lsprof.*.so",
+ "${libdir}/python${PYTHON_MAJMIN}/profile.py",
+ "${libdir}/python${PYTHON_MAJMIN}/pstats.py"
],
+ "cached": [
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/cProfile.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/profile.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/pstats.*.pyc"
+ ]
+ },
+ "pydoc": {
+ "summary": "Python interactive help support",
"rdepends": [
"core",
"netclient",
"pkgutil"
],
- "summary": "Python interactive help support"
- },
- "resource": {
- "cached": [],
"files": [
- "${libdir}/python3.5/lib-dynload/resource.*.so"
+ "${bindir}/pydoc*",
+ "${libdir}/python${PYTHON_MAJMIN}/pydoc.py",
+ "${libdir}/python${PYTHON_MAJMIN}/pydoc_data"
],
+ "cached": [
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/pydoc.*.pyc"
+ ]
+ },
+ "resource": {
+ "summary": "Python resource control interface",
"rdepends": [
"core"
],
- "summary": "Python resource control interface"
- },
- "runpy": {
- "cached": [
- "${libdir}/python3.5/__pycache__/runpy.*.pyc"
- ],
"files": [
- "${libdir}/python3.5/runpy.py"
+ "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/resource.*.so"
],
+ "cached": []
+ },
+ "runpy": {
+ "summary": "Python helper for locating/executing scripts in module namespace",
"rdepends": [
"core",
"pkgutil"
],
- "summary": "Python helper for locating/executing scripts in module namespace"
- },
- "shell": {
- "cached": [
- "${libdir}/python3.5/__pycache__/cmd.*.pyc",
- "${libdir}/python3.5/__pycache__/fnmatch.*.pyc",
- "${libdir}/python3.5/__pycache__/glob.*.pyc",
- "${libdir}/python3.5/__pycache__/shlex.*.pyc",
- "${libdir}/python3.5/__pycache__/shutil.*.pyc"
- ],
"files": [
- "${libdir}/python3.5/cmd.py",
- "${libdir}/python3.5/fnmatch.py",
- "${libdir}/python3.5/glob.py",
- "${libdir}/python3.5/shlex.py",
- "${libdir}/python3.5/shutil.py"
+ "${libdir}/python${PYTHON_MAJMIN}/runpy.py"
],
+ "cached": [
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/runpy.*.pyc"
+ ]
+ },
+ "shell": {
+ "summary": "Python shell-like functionality",
"rdepends": [
"compression",
"core",
"stringold",
"unixadmin"
],
- "summary": "Python shell-like functionality"
- },
- "smtpd": {
- "cached": [
- "${libdir}/python3.5/__pycache__/asynchat.*.pyc",
- "${libdir}/python3.5/__pycache__/asyncore.*.pyc",
- "${libdir}/python3.5/__pycache__/smtpd.*.pyc"
- ],
"files": [
- "${bindir}/smtpd.py",
- "${libdir}/python3.5/asynchat.py",
- "${libdir}/python3.5/asyncore.py",
- "${libdir}/python3.5/smtpd.py"
+ "${libdir}/python${PYTHON_MAJMIN}/cmd.py",
+ "${libdir}/python${PYTHON_MAJMIN}/fnmatch.py",
+ "${libdir}/python${PYTHON_MAJMIN}/glob.py",
+ "${libdir}/python${PYTHON_MAJMIN}/shlex.py",
+ "${libdir}/python${PYTHON_MAJMIN}/shutil.py"
],
+ "cached": [
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/cmd.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/fnmatch.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/glob.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/shlex.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/shutil.*.pyc"
+ ]
+ },
+ "smtpd": {
+ "summary": "Python Simple Mail Transport Daemon",
"rdepends": [
"core",
"crypt",
@@ -973,130 +975,109 @@
"netclient",
"stringold"
],
- "summary": "Python Simple Mail Transport Daemon"
- },
- "sqlite3": {
- "cached": [
- "${libdir}/python3.5/sqlite3/__pycache__",
- "${libdir}/python3.5/sqlite3/__pycache__/dbapi2.*.pyc",
- "${libdir}/python3.5/sqlite3/__pycache__/dump.*.pyc"
- ],
"files": [
- "${libdir}/python3.5/lib-dynload/_sqlite3.*.so",
- "${libdir}/python3.5/sqlite3/dbapi2.py",
- "${libdir}/python3.5/sqlite3/dump.py"
+ "${bindir}/smtpd.py",
+ "${libdir}/python${PYTHON_MAJMIN}/asynchat.py",
+ "${libdir}/python${PYTHON_MAJMIN}/asyncore.py",
+ "${libdir}/python${PYTHON_MAJMIN}/smtpd.py"
],
+ "cached": [
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/asynchat.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/asyncore.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/smtpd.*.pyc"
+ ]
+ },
+ "sqlite3": {
+ "summary": "Python Sqlite3 database support",
"rdepends": [
"core",
"datetime"
],
- "summary": "Python Sqlite3 database support"
- },
- "sqlite3-tests": {
- "cached": [],
"files": [
- "${libdir}/python3.5/sqlite3/test"
+ "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_sqlite3.*.so",
+ "${libdir}/python${PYTHON_MAJMIN}/sqlite3"
],
- "rdepends": [
- "core",
- "tests"
- ],
- "summary": "Python Sqlite3 database support tests"
+ "cached": []
},
"stringold": {
- "cached": [
- "${libdir}/python3.5/__pycache__/string.*.pyc"
- ],
- "files": [
- "${libdir}/python3.5/string.py"
- ],
+ "summary": "Python string APIs [deprecated]",
"rdepends": [
"core"
],
- "summary": "Python string APIs [deprecated]"
- },
- "syslog": {
- "cached": [],
"files": [
- "${libdir}/python3.5/lib-dynload/syslog.*.so"
+ "${libdir}/python${PYTHON_MAJMIN}/string.py"
],
+ "cached": [
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/string.*.pyc"
+ ]
+ },
+ "syslog": {
+ "summary": "Python syslog interface",
"rdepends": [
"core"
],
- "summary": "Python syslog interface"
- },
- "terminal": {
- "cached": [
- "${libdir}/python3.5/__pycache__/pty.*.pyc",
- "${libdir}/python3.5/__pycache__/tty.*.pyc"
- ],
"files": [
- "${libdir}/python3.5/pty.py",
- "${libdir}/python3.5/tty.py"
+ "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/syslog.*.so"
],
+ "cached": []
+ },
+ "terminal": {
+ "summary": "Python terminal controlling support",
"rdepends": [
"core",
"io"
],
- "summary": "Python terminal controlling support"
- },
- "tests": {
- "cached": [],
"files": [
- "${libdir}/python3.5/test"
+ "${libdir}/python${PYTHON_MAJMIN}/pty.py",
+ "${libdir}/python${PYTHON_MAJMIN}/tty.py"
],
- "rdepends": [
- "core"
- ],
- "summary": "Python tests"
+ "cached": [
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/pty.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/tty.*.pyc"
+ ]
},
"threading": {
- "cached": [
- "${libdir}/python3.5/__pycache__/_dummy_thread.*.pyc",
- "${libdir}/python3.5/__pycache__/_threading_local.*.pyc",
- "${libdir}/python3.5/__pycache__/dummy_threading.*.pyc",
- "${libdir}/python3.5/__pycache__/queue.*.pyc"
- ],
- "files": [
- "${libdir}/python3.5/_dummy_thread.py",
- "${libdir}/python3.5/_threading_local.py",
- "${libdir}/python3.5/dummy_threading.py",
- "${libdir}/python3.5/queue.py"
- ],
+ "summary": "Python threading & synchronization support",
"rdepends": [
"core"
],
- "summary": "Python threading & synchronization support"
- },
- "tkinter": {
- "cached": [],
"files": [
- "${libdir}/python3.5/tkinter"
+ "${libdir}/python${PYTHON_MAJMIN}/_dummy_thread.py",
+ "${libdir}/python${PYTHON_MAJMIN}/_threading_local.py",
+ "${libdir}/python${PYTHON_MAJMIN}/dummy_threading.py",
+ "${libdir}/python${PYTHON_MAJMIN}/queue.py"
],
+ "cached": [
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/_dummy_thread.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/_threading_local.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/dummy_threading.*.pyc",
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/queue.*.pyc"
+ ]
+ },
+ "tkinter": {
+ "summary": "Python Tcl/Tk bindings",
"rdepends": [
"core"
],
- "summary": "Python Tcl/Tk bindings"
- },
- "typing": {
- "cached": [
- "${libdir}/python3.5/__pycache__/typing.*.pyc"
- ],
"files": [
- "${libdir}/python3.5/typing.py"
+ "${libdir}/python${PYTHON_MAJMIN}/tkinter"
],
+ "cached": []
+ },
+ "typing": {
+ "summary": "Python typing support",
"rdepends": [
"core"
],
- "summary": "Python typing support"
- },
- "unittest": {
- "cached": [],
"files": [
- "${libdir}/python3.5/unittest",
- "${libdir}/python3.5/unittest/",
- "${libdir}/python3.5/unittest/__pycache__"
+ "${libdir}/python${PYTHON_MAJMIN}/typing.py"
],
+ "cached": [
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/typing.*.pyc"
+ ]
+ },
+ "unittest": {
+ "summary": "Python unit testing framework",
"rdepends": [
"core",
"difflib",
@@ -1105,45 +1086,66 @@
"shell",
"stringold"
],
- "summary": "Python unit testing framework"
+ "files": [
+ "${libdir}/python${PYTHON_MAJMIN}/unittest",
+ "${libdir}/python${PYTHON_MAJMIN}/unittest/",
+ "${libdir}/python${PYTHON_MAJMIN}/unittest/__pycache__"
+ ],
+ "cached": []
},
"unixadmin": {
- "cached": [
- "${libdir}/python3.5/__pycache__/getpass.*.pyc"
+ "summary": "Python Unix administration support",
+ "rdepends": [
+ "core",
+ "io"
],
"files": [
- "${libdir}/python3.5/getpass.py",
- "${libdir}/python3.5/lib-dynload/grp.*.so",
- "${libdir}/python3.5/lib-dynload/nis.*.so"
+ "${libdir}/python${PYTHON_MAJMIN}/getpass.py",
+ "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/grp.*.so",
+ "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/nis.*.so"
],
+ "cached": [
+ "${libdir}/python${PYTHON_MAJMIN}/__pycache__/getpass.*.pyc"
+ ]
+ },
+ "venv": {
+ "summary": "Provides support for creating lightweight virtual environments with their own site directories, optionally isolated from system site directories.",
"rdepends": [
+ "compression",
"core",
- "io"
+ "logging",
+ "shell",
+ "stringold",
+ "unixadmin"
],
- "summary": "Python Unix administration support"
- },
- "xml": {
- "cached": [],
"files": [
- "${libdir}/python3.5/lib-dynload/_elementtree.*.so",
- "${libdir}/python3.5/lib-dynload/pyexpat.*.so",
- "${libdir}/python3.5/xml"
+ "${libdir}/python${PYTHON_MAJMIN}/venv",
+ "${bindir}/pyvenv*"
],
+ "cached": []
+ },
+ "xml": {
+ "summary": "Python basic XML support",
"rdepends": [
"core"
],
- "summary": "Python basic XML support"
- },
- "xmlrpc": {
- "cached": [],
"files": [
- "${libdir}/python3.5/xmlrpc",
- "${libdir}/python3.5/xmlrpc/__pycache__"
+ "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_elementtree.*.so",
+ "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/pyexpat.*.so",
+ "${libdir}/python${PYTHON_MAJMIN}/xml"
],
+ "cached": []
+ },
+ "xmlrpc": {
+ "summary": "Python XML-RPC support",
"rdepends": [
"core",
"xml"
],
- "summary": "Python XML-RPC support"
+ "files": [
+ "${libdir}/python${PYTHON_MAJMIN}/xmlrpc",
+ "${libdir}/python${PYTHON_MAJMIN}/xmlrpc/__pycache__"
+ ],
+ "cached": []
}
-} \ No newline at end of file
+}
diff --git a/poky/meta/recipes-devtools/python/python3/run-ptest b/poky/meta/recipes-devtools/python/python3/run-ptest
new file mode 100644
index 000000000..3863c6d31
--- /dev/null
+++ b/poky/meta/recipes-devtools/python/python3/run-ptest
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+python3 -m test -v | sed -e '/\.\.\. ok/ s/^/PASS: /g' -e '/\.\.\. [ERROR|FAIL]/ s/^/FAIL: /g' -e '/\.\.\. skipped/ s/^/SKIP: /g' -e 's/ \.\.\. ok//g' -e 's/ \.\.\. ERROR//g' -e 's/ \.\.\. FAIL//g' -e 's/ \.\.\. skipped//g'
diff --git a/poky/meta/recipes-devtools/python/python3/shutil-follow-symlink-fix.patch b/poky/meta/recipes-devtools/python/python3/shutil-follow-symlink-fix.patch
deleted file mode 100644
index 802b1c720..000000000
--- a/poky/meta/recipes-devtools/python/python3/shutil-follow-symlink-fix.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-shutils should consider symlinks
-
--Khem
-
-Upstream-Status: Pending
-
---- a/Lib/shutil.py 2013-01-29 12:31:06.926555779 -0800
-+++ b/Lib/shutil.py 2013-01-29 16:31:39.097554182 -0800
-@@ -132,7 +132,7 @@ def copymode(src, dst, *, follow_symlink
- st = stat_func(src)
- chmod_func(dst, stat.S_IMODE(st.st_mode))
-
--if hasattr(os, 'listxattr'):
-+if hasattr(os, 'listxattr') and os.listxattr in os.supports_follow_symlinks:
- def _copyxattr(src, dst, *, follow_symlinks=True):
- """Copy extended filesystem attributes from `src` to `dst`.
-
diff --git a/poky/meta/recipes-devtools/python/python3/signal.patch b/poky/meta/recipes-devtools/python/python3/signal.patch
new file mode 100644
index 000000000..534a09777
--- /dev/null
+++ b/poky/meta/recipes-devtools/python/python3/signal.patch
@@ -0,0 +1,56 @@
+Upstream-Status: Backport
+Signed-off-by: Ross Burton <ross.burton@intel.com>
+
+From 4315389df3c4e8c1f94a18ab11a4b234762132b1 Mon Sep 17 00:00:00 2001
+From: Antoine Pitrou <pitrou@free.fr>
+Date: Mon, 23 Apr 2018 22:22:49 +0200
+Subject: [PATCH] [3.6] bpo-33329: Fix multiprocessing regression on newer
+ glibcs (GH-6575) (GH-6582)
+
+Starting with glibc 2.27.9000-xxx, sigaddset() can return EINVAL for some
+reserved signal numbers between 1 and NSIG. The `range(1, NSIG)` idiom
+is commonly used to select all signals for blocking with `pthread_sigmask`.
+So we ignore the sigaddset() return value until we expose sigfillset()
+to provide a better idiom.
+(cherry picked from commit 25038ecfb665bef641abf8cb61afff7505b0e008)
+---
+ .../next/Library/2018-04-23-13-21-39.bpo-33329.lQ-Eod.rst | 1 +
+ Modules/signalmodule.c | 14 ++++++++------
+ 2 files changed, 9 insertions(+), 6 deletions(-)
+ create mode 100644 Misc/NEWS.d/next/Library/2018-04-23-13-21-39.bpo-33329.lQ-Eod.rst
+
+diff --git a/Modules/signalmodule.c b/Modules/signalmodule.c
+index e0d06b434d..138e74e8a9 100644
+--- a/Modules/signalmodule.c
++++ b/Modules/signalmodule.c
+@@ -744,7 +744,6 @@ iterable_to_sigset(PyObject *iterable, sigset_t *mask)
+ int result = -1;
+ PyObject *iterator, *item;
+ long signum;
+- int err;
+
+ sigemptyset(mask);
+
+@@ -766,11 +765,14 @@ iterable_to_sigset(PyObject *iterable, sigset_t *mask)
+ Py_DECREF(item);
+ if (signum == -1 && PyErr_Occurred())
+ goto error;
+- if (0 < signum && signum < NSIG)
+- err = sigaddset(mask, (int)signum);
+- else
+- err = 1;
+- if (err) {
++ if (0 < signum && signum < NSIG) {
++ /* bpo-33329: ignore sigaddset() return value as it can fail
++ * for some reserved signals, but we want the `range(1, NSIG)`
++ * idiom to allow selecting all valid signals.
++ */
++ (void) sigaddset(mask, (int)signum);
++ }
++ else {
+ PyErr_Format(PyExc_ValueError,
+ "signal number %ld out of range", signum);
+ goto error;
+--
+2.11.0
+
diff --git a/poky/meta/recipes-devtools/python/python3_3.5.5.bb b/poky/meta/recipes-devtools/python/python3_3.5.6.bb
index c28be3292..31f8eada1 100644
--- a/poky/meta/recipes-devtools/python/python3_3.5.5.bb
+++ b/poky/meta/recipes-devtools/python/python3_3.5.6.bb
@@ -1,15 +1,13 @@
-require recipes-devtools/python/python.inc
+require recipes-devtools/python/python3.inc
-DEPENDS = "python3-native libffi bzip2 gdbm openssl sqlite3 zlib virtual/libintl xz"
+DEPENDS = "python3-native libffi bzip2 gdbm openssl \
+ sqlite3 zlib virtual/libintl xz qemu-native \
+ qemu-helper-native virtual/crypt"
-PR = "${INC_PR}.0"
-PYTHON_MAJMIN = "3.5"
-PYTHON_BINABI= "${PYTHON_MAJMIN}m"
DISTRO_SRC_URI ?= "file://sitecustomize.py"
DISTRO_SRC_URI_linuxstdbase = ""
SRC_URI = "http://www.python.org/ftp/python/${PV}/Python-${PV}.tar.xz \
file://python-config.patch \
-file://0001-cross-compile-support.patch \
file://030-fixup-include-dirs.patch \
file://070-dont-clean-ipkg-install.patch \
file://080-distutils-dont_adjust_files.patch \
@@ -27,7 +25,6 @@ SRC_URI += "\
file://cgi_py.patch \
file://host_include_contamination.patch \
file://python-3.3-multilib.patch \
- file://shutil-follow-symlink-fix.patch \
file://sysroot-include-headers.patch \
file://unixccompiler.patch \
file://avoid-ncursesw-include-path.patch \
@@ -37,19 +34,26 @@ SRC_URI += "\
file://configure.ac-fix-LIBPL.patch \
file://0001-Issue-21272-Use-_sysconfigdata.py-to-initialize-dist.patch \
file://pass-missing-libraries-to-Extension-for-mul.patch \
- file://CVE-2018-1061.patch \
+ file://Use-correct-CFLAGS-for-extensions-when-cross-compili.patch \
+ file://0002-Makefile-add-target-to-split-profile-generation.patch \
+ file://float-endian.patch \
+ file://ftplib.patch \
+ file://signal.patch \
+ file://0001-Issue-28043-SSLContext-has-improved-default-settings.patch \
+ file://0002-bpo-29136-Add-TLS-1.3-cipher-suites-and-OP_NO_TLSv1_.patch \
+ file://0003-bpo-32947-Fixes-for-TLS-1.3-and-OpenSSL-1.1.1-GH-876.patch \
+ file://0004-bpo-33570-TLS-1.3-ciphers-for-OpenSSL-1.1.1-GH-6976.patch \
+ file://0005-bpo-30714-ALPN-changes-for-OpenSSL-1.1.0f-2305.patch \
+ file://run-ptest \
"
-SRC_URI[md5sum] = "f3763edf9824d5d3a15f5f646083b6e0"
-SRC_URI[sha256sum] = "063d2c3b0402d6191b90731e0f735c64830e7522348aeb7ed382a83165d45009"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=b6ec515b22618f55fa07276b897bacea"
+inherit multilib_header python3native update-alternatives qemu ptest
-# exclude pre-releases for both python 2.x and 3.x
-UPSTREAM_CHECK_REGEX = "[Pp]ython-(?P<pver>\d+(\.\d+)+).tar"
+MULTILIB_SUFFIX = "${@d.getVar('base_libdir',1).split('/')[-1]}"
-S = "${WORKDIR}/Python-${PV}"
-
-inherit autotools multilib_header python3native pkgconfig
+ALTERNATIVE_${PN}-dev = "python-config"
+ALTERNATIVE_LINK_NAME[python-config] = "${bindir}/python${PYTHON_BINABI}-config"
+ALTERNATIVE_TARGET[python-config] = "${bindir}/python${PYTHON_BINABI}-config-${MULTILIB_SUFFIX}"
CONFIGUREOPTS += " --with-system-ffi "
@@ -66,37 +70,46 @@ SDK_CC_ARCH += "-DNDEBUG -fno-inline"
EXTRA_OEMAKE += "CROSS_COMPILE=yes"
EXTRA_OECONF += "CROSSPYTHONPATH=${STAGING_LIBDIR_NATIVE}/python${PYTHON_MAJMIN}/lib-dynload/ --without-ensurepip"
+PYTHON3_PROFILE_TASK ?= "./python -m test.regrtest --pgo test_grammar test_opcodes test_dict test_builtin test_exceptions test_types test_support || true"
+
export CROSS_COMPILE = "${TARGET_PREFIX}"
-export _PYTHON_PROJECT_BASE = "${B}"
-export _PYTHON_PROJECT_SRC = "${S}"
export CCSHARED = "-fPIC"
# Fix cross compilation of different modules
export CROSSPYTHONPATH = "${STAGING_LIBDIR_NATIVE}/python${PYTHON_MAJMIN}/lib-dynload/:${B}/build/lib.linux-${TARGET_ARCH}-${PYTHON_MAJMIN}:${S}/Lib:${S}/Lib/plat-linux"
-# No ctypes option for python 3
-PYTHONLSBOPTS = ""
-
-PACKAGECONFIG ??= "readline"
+PACKAGECONFIG ??= "readline ${@bb.utils.contains('MACHINE_FEATURES', 'qemu-usermode', 'pgo', '', d)}"
PACKAGECONFIG[readline] = ",,readline"
+# Use profile guided optimisation by running PyBench inside qemu-user
+PACKAGECONFIG[pgo] = "--enable-optimizations"
do_configure_append() {
rm -f ${S}/Makefile.orig
- autoreconf -Wcross --verbose --install --force --exclude=autopoint ../Python-${PV}/Modules/_ctypes/libffi
}
-do_compile() {
- # regenerate platform specific files, because they depend on system headers
- cd ${S}/Lib/plat-linux*
- include=${STAGING_INCDIR} ${STAGING_BINDIR_NATIVE}/python3-native/python3 \
- ${S}/Tools/scripts/h2py.py -i '(u_long)' \
- ${STAGING_INCDIR}/dlfcn.h \
- ${STAGING_INCDIR}/linux/cdrom.h \
- ${STAGING_INCDIR}/netinet/in.h \
- ${STAGING_INCDIR}/sys/types.h
- sed -e 's,${STAGING_DIR_HOST},,g' -i *.py
- cd -
+run_make() {
+ oe_runmake PGEN=${STAGING_BINDIR_NATIVE}/python3-native/pgen \
+ HOSTPYTHON=${STAGING_BINDIR_NATIVE}/python3-native/python3 \
+ STAGING_LIBDIR=${STAGING_LIBDIR} \
+ STAGING_INCDIR=${STAGING_INCDIR} \
+ STAGING_BASELIBDIR=${STAGING_BASELIBDIR} \
+ LIB=${baselib} \
+ ARCH=${TARGET_ARCH} \
+ OPT="${CFLAGS}" \
+ "$@"
+}
+do_compile() {
+ # regenerate platform specific files, because they depend on system headers
+ cd ${S}/Lib/plat-linux*
+ include=${STAGING_INCDIR} ${STAGING_BINDIR_NATIVE}/python3-native/python3 \
+ ${S}/Tools/scripts/h2py.py -i '(u_long)' \
+ ${STAGING_INCDIR}/dlfcn.h \
+ ${STAGING_INCDIR}/linux/cdrom.h \
+ ${STAGING_INCDIR}/netinet/in.h \
+ ${STAGING_INCDIR}/sys/types.h
+ sed -e 's,${STAGING_DIR_HOST},,g' -i *.py
+ cd -
# remove any bogus LD_LIBRARY_PATH
sed -i -e s,RUNSHARED=.*,RUNSHARED=, Makefile
@@ -116,23 +129,23 @@ do_compile() {
# then call do_install twice we get Makefile.orig == Makefile.sysroot
install -m 0644 Makefile Makefile.sysroot
- oe_runmake HOSTPGEN=${STAGING_BINDIR_NATIVE}/python3-native/pgen \
- HOSTPYTHON=${STAGING_BINDIR_NATIVE}/python3-native/python3 \
- STAGING_LIBDIR=${STAGING_LIBDIR} \
- STAGING_BASELIBDIR=${STAGING_BASELIBDIR} \
- STAGING_INCDIR=${STAGING_INCDIR} \
- LIB=${baselib} \
- ARCH=${TARGET_ARCH} \
- OPT="${CFLAGS}" libpython3.so
-
- oe_runmake HOSTPGEN=${STAGING_BINDIR_NATIVE}/python3-native/pgen \
- HOSTPYTHON=${STAGING_BINDIR_NATIVE}/python3-native/python3 \
- STAGING_LIBDIR=${STAGING_LIBDIR} \
- STAGING_INCDIR=${STAGING_INCDIR} \
- STAGING_BASELIBDIR=${STAGING_BASELIBDIR} \
- LIB=${baselib} \
- ARCH=${TARGET_ARCH} \
- OPT="${CFLAGS}"
+ if ${@bb.utils.contains('PACKAGECONFIG', 'pgo', 'true', 'false', d)}; then
+ run_make profile-opt
+ qemu_binary="${@qemu_wrapper_cmdline(d, '${STAGING_DIR_TARGET}', ['${B}', '${STAGING_DIR_TARGET}/${base_libdir}'])}"
+ cat >pgo-wrapper <<EOF
+#!/bin/sh
+cd ${B}
+$qemu_binary "\$@"
+EOF
+ chmod +x pgo-wrapper
+ bbnote Gathering profiling data
+ ./pgo-wrapper ${PYTHON3_PROFILE_TASK}
+ bbnote Profiling data gathered, rebuilding
+ run_make clean_and_use_profile
+ else
+ run_make libpython3.so
+ run_make
+ fi
}
do_install() {
@@ -145,23 +158,13 @@ do_install() {
# rerun the build once again with original makefile this time
# run install in a separate step to avoid compile/install race
- oe_runmake HOSTPGEN=${STAGING_BINDIR_NATIVE}/python3-native/pgen \
- HOSTPYTHON=${STAGING_BINDIR_NATIVE}/python3-native/python3 \
- STAGING_LIBDIR=${STAGING_LIBDIR} \
- STAGING_INCDIR=${STAGING_INCDIR} \
- STAGING_BASELIBDIR=${STAGING_BASELIBDIR} \
- LIB=${baselib} \
- ARCH=${TARGET_ARCH} \
- DESTDIR=${D} LIBDIR=${libdir}
-
- oe_runmake HOSTPGEN=${STAGING_BINDIR_NATIVE}/python3-native/pgen \
- HOSTPYTHON=${STAGING_BINDIR_NATIVE}/python3-native/python3 \
- STAGING_LIBDIR=${STAGING_LIBDIR} \
- STAGING_INCDIR=${STAGING_INCDIR} \
- STAGING_BASELIBDIR=${STAGING_BASELIBDIR} \
- LIB=${baselib} \
- ARCH=${TARGET_ARCH} \
- DESTDIR=${D} LIBDIR=${libdir} install
+ if ${@bb.utils.contains('PACKAGECONFIG', 'pgo', 'true', 'false', d)}; then
+ run_make DESTDIR=${D} LIBDIR=${libdir} build_all_use_profile
+ else
+ run_make DESTDIR=${D} LIBDIR=${libdir}
+ fi
+
+ run_make DESTDIR=${D} LIBDIR=${libdir} install
# avoid conflict with 2to3 from Python 2
rm -f ${D}/${bindir}/2to3
@@ -177,7 +180,7 @@ do_install() {
}
do_install_append_class-nativesdk () {
- create_wrapper ${D}${bindir}/python${PYTHON_MAJMIN} TERMINFO_DIRS='${sysconfdir}/terminfo:/etc/terminfo:/usr/share/terminfo:/usr/share/misc/terminfo:/lib/terminfo' PYTHONNOUSERSITE='1'
+ create_wrapper ${D}${bindir}/python${PYTHON_MAJMIN} PYTHONHOME='${prefix}' TERMINFO_DIRS='${sysconfdir}/terminfo:/etc/terminfo:/usr/share/terminfo:/usr/share/misc/terminfo:/lib/terminfo' PYTHONNOUSERSITE='1'
}
SSTATE_SCAN_FILES += "Makefile"
@@ -208,20 +211,23 @@ py_package_preprocess () {
${STAGING_BINDIR_NATIVE}/${PYTHON_PN}-native/${PYTHON_PN} \
-c "from py_compile import compile; compile('./${libdir}/python${PYTHON_MAJMIN}/_sysconfigdata.py', optimize=2)"
cd -
+
+ mv ${PKGD}/${bindir}/python${PYTHON_BINABI}-config ${PKGD}/${bindir}/python${PYTHON_BINABI}-config-${MULTILIB_SUFFIX}
}
+PACKAGES_remove = "${PN}"
+
# manual dependency additions
RPROVIDES_${PN}-modules = "${PN}"
RRECOMMENDS_${PN}-core_append_class-nativesdk = " nativesdk-python3-modules"
-RRECOMMENDS_${PN}-crypt = "openssl"
-RRECOMMENDS_${PN}-crypt_class-nativesdk = "nativesdk-openssl"
+RRECOMMENDS_${PN}-crypt = "openssl ca-certificates"
FILES_${PN}-2to3 += "${bindir}/2to3-${PYTHON_MAJMIN}"
FILES_${PN}-pydoc += "${bindir}/pydoc${PYTHON_MAJMIN} ${bindir}/pydoc3"
FILES_${PN}-idle += "${bindir}/idle3 ${bindir}/idle${PYTHON_MAJMIN}"
-PACKAGES =+ "${PN}-pyvenv"
-FILES_${PN}-pyvenv += "${bindir}/pyvenv-${PYTHON_MAJMIN} ${bindir}/pyvenv"
+# provide python-pyvenv from python3-venv
+RPROVIDES_${PN}-venv += "${PN}-pyvenv"
# package libpython3
PACKAGES =+ "libpython3 libpython3-staticdev"
@@ -239,16 +245,18 @@ FILES_${PN}-misc = "${libdir}/python${PYTHON_MAJMIN}"
PACKAGES += "${PN}-man"
FILES_${PN}-man = "${datadir}/man"
-BBCLASSEXTEND = "nativesdk"
+RDEPENDS_${PN}-ptest = "${PN}-modules ${PN}-tests unzip bzip2"
-RPROVIDES_${PN} += "${PN}-modules"
+RDEPENDS_${PN}-dev = ""
+
+BBCLASSEXTEND = "nativesdk"
# We want bytecode precompiled .py files (.pyc's) by default
# but the user may set it on their own conf
INCLUDE_PYCS ?= "1"
python(){
- import json
+ import collections, json
filename = os.path.join(d.getVar('THISDIR'), 'python3', 'python3-manifest.json')
# This python changes the datastore based on the contents of a file, so mark
@@ -256,7 +264,7 @@ python(){
bb.parse.mark_dependency(d, filename)
with open(filename) as manifest_file:
- python_manifest=json.load(manifest_file)
+ python_manifest=json.load(manifest_file, object_pairs_hook=collections.OrderedDict)
include_pycs = d.getVar('INCLUDE_PYCS')
@@ -282,7 +290,6 @@ python(){
for value in python_manifest[key]['cached']:
d.appendVar('FILES_' + pypackage, ' ' + value)
- d.setVar('RDEPENDS_' + pypackage, '')
for value in python_manifest[key]['rdepends']:
# Make it work with or without $PN
if '${PN}' in value:
@@ -290,8 +297,6 @@ python(){
d.appendVar('RDEPENDS_' + pypackage, ' ' + pn + '-' + value)
d.setVar('SUMMARY_' + pypackage, python_manifest[key]['summary'])
- # We need to ensure staticdev packages match for files first so we sort in reverse
- newpackages.sort(reverse=True)
# Prepending so to avoid python-misc getting everything
packages = newpackages + packages
d.setVar('PACKAGES', ' '.join(packages))
@@ -312,7 +317,7 @@ do_create_manifest() {
cd ${WORKDIR}
# This needs to be executed by python-native and NOT by HOST's python
- nativepython3 create_manifest3.py
+ nativepython3 create_manifest3.py ${PYTHON_MAJMIN}
cp python3-manifest.json.new ${THISDIR}/python3/python3-manifest.json
}
diff --git a/poky/meta/recipes-devtools/python/python_2.7.15.bb b/poky/meta/recipes-devtools/python/python_2.7.15.bb
index 0b3958d41..dd969d8e7 100644
--- a/poky/meta/recipes-devtools/python/python_2.7.15.bb
+++ b/poky/meta/recipes-devtools/python/python_2.7.15.bb
@@ -1,6 +1,7 @@
require python.inc
-DEPENDS = "python-native libffi bzip2 gdbm openssl readline sqlite3 zlib"
+DEPENDS = "python-native libffi bzip2 gdbm openssl \
+ readline sqlite3 zlib virtual/crypt"
PR = "${INC_PR}"
@@ -153,6 +154,7 @@ py_package_preprocess () {
(cd ${PKGD}; python -m py_compile ./${libdir}/python${PYTHON_MAJMIN}/_sysconfigdata.py)
}
+PACKAGES_remove = "${PN}"
# manual dependency additions
RPROVIDES_${PN}-core = "${PN}"
@@ -178,9 +180,9 @@ FILES_${PN}-man = "${datadir}/man"
# Nasty but if bdb isn't enabled the package won't be generated
RDEPENDS_${PN}-modules_remove = "${@bb.utils.contains('PACKAGECONFIG', 'bdb', '', '${PN}-bsddb', d)}"
-BBCLASSEXTEND = "nativesdk"
+RDEPENDS_${PN}-dev = ""
-RPROVIDES_${PN} += "${PN}-modules"
+BBCLASSEXTEND = "nativesdk"
# We want bytecode precompiled .py files (.pyc's) by default
# but the user may set it on their own conf
@@ -221,7 +223,6 @@ python(){
if value.endswith('.py'):
d.appendVar('FILES_' + pypackage, ' ' + value + 'c')
- d.setVar('RDEPENDS_' + pypackage, '')
for value in python_manifest[key]['rdepends']:
# Make it work with or without $PN
if '${PN}' in value:
diff --git a/poky/meta/recipes-devtools/qemu/qemu-targets.inc b/poky/meta/recipes-devtools/qemu/qemu-targets.inc
index 66dd675ed..810401daa 100644
--- a/poky/meta/recipes-devtools/qemu/qemu-targets.inc
+++ b/poky/meta/recipes-devtools/qemu/qemu-targets.inc
@@ -7,7 +7,7 @@ def get_qemu_target_list(d):
archs = d.getVar('QEMU_TARGETS').split()
tos = d.getVar('HOST_OS')
softmmuonly = ""
- for arch in ['ppcemb']:
+ for arch in ['ppcemb', 'lm32']:
if arch in archs:
softmmuonly += arch + "-softmmu,"
archs.remove(arch)
diff --git a/poky/meta/recipes-devtools/qemu/qemu.inc b/poky/meta/recipes-devtools/qemu/qemu.inc
index dc73df813..b05c1cee9 100644
--- a/poky/meta/recipes-devtools/qemu/qemu.inc
+++ b/poky/meta/recipes-devtools/qemu/qemu.inc
@@ -5,11 +5,11 @@ DEPENDS = "glib-2.0 zlib pixman"
RDEPENDS_${PN}_class-target += "bash"
require qemu-targets.inc
-inherit autotools pkgconfig bluetooth
+inherit pkgconfig bluetooth
BBCLASSEXTEND = "native nativesdk"
# QEMU_TARGETS is overridable variable
-QEMU_TARGETS ?= "arm aarch64 i386 mips mipsel mips64 mips64el ppc sh4 x86_64"
+QEMU_TARGETS ?= "arm aarch64 i386 mips mipsel mips64 mips64el ppc riscv32 riscv64 sh4 x86_64"
EXTRA_OECONF = " \
--prefix=${prefix} \
@@ -27,6 +27,7 @@ EXTRA_OECONF = " \
--disable-werror \
--target-list=${@get_qemu_target_list(d)} \
--extra-cflags='${CFLAGS}' \
+ ${PACKAGECONFIG_CONFARGS} \
"
EXTRA_OECONF_append_class-native = " --python=python2.7"
@@ -36,27 +37,23 @@ LDFLAGS_append_class-native = " -fuse-ld=bfd"
export LIBTOOL="${HOST_SYS}-libtool"
+B = "${WORKDIR}/build"
+
do_configure_prepend_class-native() {
# Append build host pkg-config paths for native target since the host may provide sdl
BHOST_PKGCONFIG_PATH=$(PATH=/usr/bin:/bin pkg-config --variable pc_path pkg-config || echo "")
if [ ! -z "$BHOST_PKGCONFIG_PATH" ]; then
export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:$BHOST_PKGCONFIG_PATH
fi
-
- # Alter target makefiles to accept CFLAGS set via env
- sed -i -r \
- -e 's/^(C|OP_C|HELPER_C)FLAGS=/\1FLAGS+=/' \
- "${S}"/Makefile "${S}"/Makefile.target
}
do_configure() {
${S}/configure ${EXTRA_OECONF}
- test ! -e ${S}/target-i386/beginend_funcs.sh || chmod a+x ${S}/target-i386/beginend_funcs.sh
}
do_install () {
- export STRIP="true"
- autotools_do_install
+ export STRIP=""
+ oe_runmake 'DESTDIR=${D}' install
}
# The following fragment will create a wrapper for qemu-mips user emulation
@@ -74,10 +71,9 @@ do_install_append() {
# END of qemu-mips workaround
PACKAGECONFIG ??= " \
- fdt sdl \
- fdt sdl kvm \
- ${@bb.utils.filter('DISTRO_FEATURES', 'alsa xen', d)} \
- "
+ fdt sdl kvm \
+ ${@bb.utils.filter('DISTRO_FEATURES', 'alsa xen', d)} \
+"
PACKAGECONFIG_class-native ??= "fdt alsa kvm"
PACKAGECONFIG_class-nativesdk ??= "fdt sdl kvm"
@@ -88,7 +84,7 @@ PACKAGECONFIG_class-native_remove = "${@'kvm' if not os.path.exists('/usr/includ
PACKAGECONFIG_remove_darwin = "kvm"
PACKAGECONFIG_remove_mingw32 = "kvm"
-PACKAGECONFIG[sdl] = "--enable-sdl,--disable-sdl,libsdl"
+PACKAGECONFIG[sdl] = "--enable-sdl --with-sdlabi=2.0,--disable-sdl,libsdl2"
PACKAGECONFIG[virtfs] = "--enable-virtfs --enable-attr,--disable-virtfs,libcap attr,"
PACKAGECONFIG[aio] = "--enable-linux-aio,--disable-linux-aio,libaio,"
PACKAGECONFIG[xfs] = "--enable-xfsctl,--disable-xfsctl,xfsprogs,"
@@ -115,5 +111,10 @@ PACKAGECONFIG[bzip2] = "--enable-bzip2,--disable-bzip2,bzip2"
PACKAGECONFIG[bluez] = "--enable-bluez,--disable-bluez,${BLUEZ}"
PACKAGECONFIG[libiscsi] = "--enable-libiscsi,--disable-libiscsi"
PACKAGECONFIG[kvm] = "--enable-kvm,--disable-kvm"
+PACKAGECONFIG[virglrenderer] = "--enable-virglrenderer,--disable-virglrenderer,virglrenderer"
+# spice will be in meta-networking layer
+PACKAGECONFIG[spice] = "--enable-spice,--disable-spice,spice"
+# usbredir will be in meta-networking layer
+PACKAGECONFIG[usb-redir] = "--enable-usb-redir,--disable-usb-redir,usbredir"
INSANE_SKIP_${PN} = "arch"
diff --git a/poky/meta/recipes-devtools/qemu/qemu/0001-CVE-2018-11806-QEMU-slirp-heap-buffer-overflow.patch b/poky/meta/recipes-devtools/qemu/qemu/0001-CVE-2018-11806-QEMU-slirp-heap-buffer-overflow.patch
deleted file mode 100644
index 862236011..000000000
--- a/poky/meta/recipes-devtools/qemu/qemu/0001-CVE-2018-11806-QEMU-slirp-heap-buffer-overflow.patch
+++ /dev/null
@@ -1,69 +0,0 @@
-Upstream-Status: Backport
-
-https://lists.gnu.org/archive/html/qemu-devel/2018-06/msg01012.html
-
-From dc21a9d2951f0a2a7e63633e2b5c68c54e4edc4b Mon Sep 17 00:00:00 2001
-From: Jeremy Puhlman <jpuhlman@mvista.com>
-Date: Thu, 14 Jun 2018 01:28:49 +0000
-Subject: [PATCH] CVE-2018-11806 QEMU: slirp: heap buffer overflow
-
-Subject: [Qemu-devel] [PATCH 1/2] slirp: correct size computation while concatenating mbuf
-Date: Tue, 5 Jun 2018 23:38:35 +0530
-From: Prasad J Pandit <address@hidden>
-
-While reassembling incoming fragmented datagrams, 'm_cat' routine
-extends the 'mbuf' buffer, if it has insufficient room. It computes
-a wrong buffer size, which leads to overwriting adjacent heap buffer
-area. Correct this size computation in m_cat.
-
-Reported-by: ZDI Disclosures <address@hidden>
-Signed-off-by: Prasad J Pandit <address@hidden>
----
- slirp/mbuf.c | 8 ++++----
- 1 file changed, 4 insertions(+), 4 deletions(-)
-
-Signed-off-by: Jeremy Puhlman <jpuhlman@mvista.com>
----
- slirp/mbuf.c | 8 ++++----
- 1 file changed, 4 insertions(+), 4 deletions(-)
-
-diff --git a/slirp/mbuf.c b/slirp/mbuf.c
-index 5ff2455..7fb4501 100644
---- a/slirp/mbuf.c
-+++ b/slirp/mbuf.c
-@@ -138,7 +138,7 @@ m_cat(struct mbuf *m, struct mbuf *n)
- * If there's no room, realloc
- */
- if (M_FREEROOM(m) < n->m_len)
-- m_inc(m,m->m_size+MINCSIZE);
-+ m_inc(m, m->m_len + n->m_len);
-
- memcpy(m->m_data+m->m_len, n->m_data, n->m_len);
- m->m_len += n->m_len;
-@@ -158,12 +158,12 @@ m_inc(struct mbuf *m, int size)
-
- if (m->m_flags & M_EXT) {
- datasize = m->m_data - m->m_ext;
-- m->m_ext = g_realloc(m->m_ext, size);
-+ m->m_ext = g_realloc(m->m_ext, size + datasize);
- m->m_data = m->m_ext + datasize;
- } else {
- char *dat;
- datasize = m->m_data - m->m_dat;
-- dat = g_malloc(size);
-+ dat = g_malloc(size + datasize);
- memcpy(dat, m->m_dat, m->m_size);
-
- m->m_ext = dat;
-@@ -171,7 +171,7 @@ m_inc(struct mbuf *m, int size)
- m->m_flags |= M_EXT;
- }
-
-- m->m_size = size;
-+ m->m_size = size + datasize;
-
- }
-
---
-2.13.3
-
diff --git a/poky/meta/recipes-devtools/qemu/qemu/0001-sdl.c-allow-user-to-disable-pointer-grabs.patch b/poky/meta/recipes-devtools/qemu/qemu/0001-sdl.c-allow-user-to-disable-pointer-grabs.patch
index add5d8b02..b8a9206fe 100644
--- a/poky/meta/recipes-devtools/qemu/qemu/0001-sdl.c-allow-user-to-disable-pointer-grabs.patch
+++ b/poky/meta/recipes-devtools/qemu/qemu/0001-sdl.c-allow-user-to-disable-pointer-grabs.patch
@@ -1,4 +1,4 @@
-From 273e1af49d3e0a58bb9464369deb2652f243e649 Mon Sep 17 00:00:00 2001
+From 18fb45c34a473c4ba247bb82bcea94b7c3ba493a Mon Sep 17 00:00:00 2001
From: Ross Burton <ross.burton@intel.com>
Date: Wed, 18 Sep 2013 14:04:54 +0100
Subject: [PATCH] sdl.c: allow user to disable pointer grabs
@@ -22,25 +22,26 @@ Upstream-Status: Pending
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Eric Bénard <eric@eukrea.com>
---
- ui/sdl.c | 12 ++++++++++--
- 1 file changed, 10 insertions(+), 2 deletions(-)
+ ui/sdl.c | 13 +++++++++++--
+ 1 file changed, 11 insertions(+), 2 deletions(-)
diff --git a/ui/sdl.c b/ui/sdl.c
-index 7b71a9a..29ce1b9 100644
+index a5fd503c25..ab8d1b1eb1 100644
--- a/ui/sdl.c
+++ b/ui/sdl.c
-@@ -63,6 +63,10 @@ static SDL_PixelFormat host_format;
- static int scaling_active = 0;
- static Notifier mouse_mode_notifier;
- static int idle_counter;
+@@ -68,6 +68,11 @@ static int idle_counter;
+ static const guint16 *keycode_map;
+ static size_t keycode_maplen;
+
+#ifndef True
+#define True 1
+#endif
+static doing_grabs = True;
-
++
#define SDL_REFRESH_INTERVAL_BUSY 10
#define SDL_MAX_IDLE_COUNT (2 * GUI_REFRESH_INTERVAL_DEFAULT \
-@@ -431,14 +435,16 @@ static void sdl_grab_start(void)
+ / SDL_REFRESH_INTERVAL_BUSY + 1)
+@@ -398,14 +403,16 @@ static void sdl_grab_start(void)
}
} else
sdl_hide_cursor();
@@ -59,7 +60,7 @@ index 7b71a9a..29ce1b9 100644
gui_grab = 0;
sdl_show_cursor();
sdl_update_caption();
-@@ -986,6 +992,8 @@ void sdl_display_init(DisplayState *ds, int full_screen, int no_frame)
+@@ -945,6 +952,8 @@ static void sdl1_display_init(DisplayState *ds, DisplayOptions *o)
* This requires SDL >= 1.2.14. */
setenv("SDL_DISABLE_LOCK_KEYS", "1", 1);
diff --git a/poky/meta/recipes-devtools/qemu/qemu/0002-qemu-Add-missing-wacom-HID-descriptor.patch b/poky/meta/recipes-devtools/qemu/qemu/0002-qemu-Add-missing-wacom-HID-descriptor.patch
index 281803ecb..90e4b800b 100644
--- a/poky/meta/recipes-devtools/qemu/qemu/0002-qemu-Add-missing-wacom-HID-descriptor.patch
+++ b/poky/meta/recipes-devtools/qemu/qemu/0002-qemu-Add-missing-wacom-HID-descriptor.patch
@@ -1,4 +1,4 @@
-From a42726e017605ed3ca2b3fc2b1cc8d01ccf34730 Mon Sep 17 00:00:00 2001
+From 41603f745caaecdc7c9d760fb7d2df01ccc60128 Mon Sep 17 00:00:00 2001
From: Richard Purdie <richard.purdie@linuxfoundation.org>
Date: Thu, 27 Nov 2014 14:04:29 +0000
Subject: [PATCH] qemu: Add missing wacom HID descriptor
@@ -14,11 +14,11 @@ Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Upstream-Status: Submitted
2014/11/27
---
- hw/usb/dev-wacom.c | 94 +++++++++++++++++++++++++++++++++++++++++++++++++++++-
+ hw/usb/dev-wacom.c | 94 +++++++++++++++++++++++++++++++++++++++++++++-
1 file changed, 93 insertions(+), 1 deletion(-)
diff --git a/hw/usb/dev-wacom.c b/hw/usb/dev-wacom.c
-index bf70013..2f6e129 100644
+index bf70013059..2f6e129732 100644
--- a/hw/usb/dev-wacom.c
+++ b/hw/usb/dev-wacom.c
@@ -72,6 +72,89 @@ static const USBDescStrings desc_strings = {
diff --git a/poky/meta/recipes-devtools/qemu/qemu/0003-Add-subpackage-ptest-which-runs-all-unit-test-cases-.patch b/poky/meta/recipes-devtools/qemu/qemu/0003-Add-subpackage-ptest-which-runs-all-unit-test-cases-.patch
index dc073000c..0d43271c4 100644
--- a/poky/meta/recipes-devtools/qemu/qemu/0003-Add-subpackage-ptest-which-runs-all-unit-test-cases-.patch
+++ b/poky/meta/recipes-devtools/qemu/qemu/0003-Add-subpackage-ptest-which-runs-all-unit-test-cases-.patch
@@ -1,4 +1,4 @@
-From fda1eee8bc717528d57f6ff454f72c5325043c31 Mon Sep 17 00:00:00 2001
+From a9a669448ba6f1b295427e271d99f61736fc5189 Mon Sep 17 00:00:00 2001
From: Juro Bystricky <juro.bystricky@intel.com>
Date: Thu, 31 Aug 2017 11:06:56 -0700
Subject: [PATCH] Add subpackage -ptest which runs all unit test cases for
@@ -14,10 +14,10 @@ Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
1 file changed, 8 insertions(+)
diff --git a/tests/Makefile.include b/tests/Makefile.include
-index c002352..f557c26 100644
+index 3b9a5e31a2..dfbcd728d7 100644
--- a/tests/Makefile.include
+++ b/tests/Makefile.include
-@@ -935,4 +935,12 @@ all: $(QEMU_IOTESTS_HELPERS-y)
+@@ -972,4 +972,12 @@ all: $(QEMU_IOTESTS_HELPERS-y)
-include $(wildcard tests/*.d)
-include $(wildcard tests/libqos/*.d)
diff --git a/poky/meta/recipes-devtools/qemu/qemu/0004-qemu-Add-addition-environment-space-to-boot-loader-q.patch b/poky/meta/recipes-devtools/qemu/qemu/0004-qemu-Add-addition-environment-space-to-boot-loader-q.patch
index 4f28e1676..5152dcafe 100644
--- a/poky/meta/recipes-devtools/qemu/qemu/0004-qemu-Add-addition-environment-space-to-boot-loader-q.patch
+++ b/poky/meta/recipes-devtools/qemu/qemu/0004-qemu-Add-addition-environment-space-to-boot-loader-q.patch
@@ -1,4 +1,4 @@
-From ad70fdcaf75084da2e02474c61d1d441ca100ab2 Mon Sep 17 00:00:00 2001
+From dd4404a334a545e9beafa1b1e41b3a8f35ef31a9 Mon Sep 17 00:00:00 2001
From: Jason Wessel <jason.wessel@windriver.com>
Date: Fri, 28 Mar 2014 17:42:43 +0800
Subject: [PATCH] qemu: Add addition environment space to boot loader
@@ -18,10 +18,10 @@ Signed-off-by: Roy Li <rongqing.li@windriver.com>
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/hw/mips/mips_malta.c b/hw/mips/mips_malta.c
-index ec6af4a..6e76166 100644
+index f6513a4fd5..d5efafb1e8 100644
--- a/hw/mips/mips_malta.c
+++ b/hw/mips/mips_malta.c
-@@ -61,7 +61,7 @@
+@@ -62,7 +62,7 @@
#define ENVP_ADDR 0x80002000l
#define ENVP_NB_ENTRIES 16
diff --git a/poky/meta/recipes-devtools/qemu/qemu/0005-qemu-disable-Valgrind.patch b/poky/meta/recipes-devtools/qemu/qemu/0005-qemu-disable-Valgrind.patch
index b9e01834e..70baf0fb0 100644
--- a/poky/meta/recipes-devtools/qemu/qemu/0005-qemu-disable-Valgrind.patch
+++ b/poky/meta/recipes-devtools/qemu/qemu/0005-qemu-disable-Valgrind.patch
@@ -1,4 +1,4 @@
-From e85ee3cc9988172662d6969af01f23fa8ffd5262 Mon Sep 17 00:00:00 2001
+From 4475b3d97371e588540333988a97d7df3ec2c65a Mon Sep 17 00:00:00 2001
From: Ross Burton <ross.burton@intel.com>
Date: Tue, 20 Oct 2015 22:19:08 +0100
Subject: [PATCH] qemu: disable Valgrind
@@ -12,10 +12,10 @@ Signed-off-by: Ross Burton <ross.burton@intel.com>
1 file changed, 9 deletions(-)
diff --git a/configure b/configure
-index 0c6e757..c30fd45 100755
+index 0a19b033bc..69e05fb6c0 100755
--- a/configure
+++ b/configure
-@@ -4741,15 +4741,6 @@ fi
+@@ -4895,15 +4895,6 @@ fi
# check if we have valgrind/valgrind.h
valgrind_h=no
diff --git a/poky/meta/recipes-devtools/qemu/qemu/0006-qemu-Limit-paths-searched-during-user-mode-emulation.patch b/poky/meta/recipes-devtools/qemu/qemu/0006-qemu-Limit-paths-searched-during-user-mode-emulation.patch
index 9315f8561..a9d798cef 100644
--- a/poky/meta/recipes-devtools/qemu/qemu/0006-qemu-Limit-paths-searched-during-user-mode-emulation.patch
+++ b/poky/meta/recipes-devtools/qemu/qemu/0006-qemu-Limit-paths-searched-during-user-mode-emulation.patch
@@ -1,4 +1,4 @@
-From c79c48a79710d0e2ef68062435596ac455cd9f71 Mon Sep 17 00:00:00 2001
+From c532bcdae8259b0f71723cda331ded4dbb0fa908 Mon Sep 17 00:00:00 2001
From: Richard Purdie <richard.purdie@linuxfoundation.org>
Date: Wed, 9 Mar 2016 22:49:02 +0000
Subject: [PATCH] qemu: Limit paths searched during user mode emulation
@@ -24,7 +24,7 @@ Upstream-Status: Pending
1 file changed, 22 insertions(+), 22 deletions(-)
diff --git a/util/path.c b/util/path.c
-index 7f9fc27..a416cd4 100644
+index 7f9fc272fb..a416cd4ac2 100644
--- a/util/path.c
+++ b/util/path.c
@@ -15,6 +15,7 @@ struct pathelem
diff --git a/poky/meta/recipes-devtools/qemu/qemu/0007-qemu-native-set-ld.bfd-fix-cflags-and-set-some-envir.patch b/poky/meta/recipes-devtools/qemu/qemu/0007-qemu-native-set-ld.bfd-fix-cflags-and-set-some-envir.patch
index ad52f37d9..12456bb5c 100644
--- a/poky/meta/recipes-devtools/qemu/qemu/0007-qemu-native-set-ld.bfd-fix-cflags-and-set-some-envir.patch
+++ b/poky/meta/recipes-devtools/qemu/qemu/0007-qemu-native-set-ld.bfd-fix-cflags-and-set-some-envir.patch
@@ -1,4 +1,4 @@
-From 4b21a8db60c32f93df56e6111bb926c91680d6f2 Mon Sep 17 00:00:00 2001
+From 2d29d52b6f755758cfca6af0bcfd78091e16a7bc Mon Sep 17 00:00:00 2001
From: Stephen Arnold <sarnold@vctlabs.com>
Date: Sun, 12 Jun 2016 18:09:56 -0700
Subject: [PATCH] qemu-native: set ld.bfd, fix cflags, and set some environment
@@ -9,10 +9,10 @@ Upstream-Status: Pending
1 file changed, 4 deletions(-)
diff --git a/configure b/configure
-index c30fd45..b5312f4 100755
+index 69e05fb6c0..12fc3d8bdc 100755
--- a/configure
+++ b/configure
-@@ -5115,10 +5115,6 @@ fi
+@@ -5413,10 +5413,6 @@ write_c_skeleton
if test "$gcov" = "yes" ; then
CFLAGS="-fprofile-arcs -ftest-coverage -g $CFLAGS"
LDFLAGS="-fprofile-arcs -ftest-coverage $LDFLAGS"
@@ -22,4 +22,4 @@ index c30fd45..b5312f4 100755
- CFLAGS="-O2 $CFLAGS"
fi
- ##########################################
+ if test "$have_asan" = "yes"; then
diff --git a/poky/meta/recipes-devtools/qemu/qemu/0008-chardev-connect-socket-to-a-spawned-command.patch b/poky/meta/recipes-devtools/qemu/qemu/0008-chardev-connect-socket-to-a-spawned-command.patch
index f0c0fa19b..2afe4e937 100644
--- a/poky/meta/recipes-devtools/qemu/qemu/0008-chardev-connect-socket-to-a-spawned-command.patch
+++ b/poky/meta/recipes-devtools/qemu/qemu/0008-chardev-connect-socket-to-a-spawned-command.patch
@@ -1,4 +1,4 @@
-From 55c9510311b7481a0c8f3f71b3ce130cc25563f9 Mon Sep 17 00:00:00 2001
+From 20a09bb18907e67565c54fc505a741cbbef53f7f Mon Sep 17 00:00:00 2001
From: Alistair Francis <alistair.francis@xilinx.com>
Date: Thu, 21 Dec 2017 11:35:16 -0800
Subject: [PATCH] chardev: connect socket to a spawned command
@@ -45,16 +45,16 @@ Upstream-Status: Inappropriate [embedded specific]
Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
---
- chardev/char-socket.c | 99 +++++++++++++++++++++++++++++++++++++++++++++++++++
- chardev/char.c | 3 ++
- qapi/char.json | 5 +++
- 3 files changed, 107 insertions(+)
+ chardev/char-socket.c | 102 ++++++++++++++++++++++++++++++++++++++++++
+ chardev/char.c | 3 ++
+ qapi/char.json | 5 +++
+ 3 files changed, 110 insertions(+)
diff --git a/chardev/char-socket.c b/chardev/char-socket.c
-index 53eda8e..6c63555 100644
+index 159e69c3b1..84778cf31a 100644
--- a/chardev/char-socket.c
+++ b/chardev/char-socket.c
-@@ -852,6 +852,68 @@ static gboolean socket_reconnect_timeout(gpointer opaque)
+@@ -934,6 +934,68 @@ static gboolean socket_reconnect_timeout(gpointer opaque)
return false;
}
@@ -123,7 +123,7 @@ index 53eda8e..6c63555 100644
static void qmp_chardev_open_socket(Chardev *chr,
ChardevBackend *backend,
bool *be_opened,
-@@ -859,6 +921,9 @@ static void qmp_chardev_open_socket(Chardev *chr,
+@@ -941,6 +1003,9 @@ static void qmp_chardev_open_socket(Chardev *chr,
{
SocketChardev *s = SOCKET_CHARDEV(chr);
ChardevSocket *sock = backend->u.socket.data;
@@ -133,24 +133,24 @@ index 53eda8e..6c63555 100644
bool do_nodelay = sock->has_nodelay ? sock->nodelay : false;
bool is_listen = sock->has_server ? sock->server : true;
bool is_telnet = sock->has_telnet ? sock->telnet : false;
-@@ -925,7 +990,14 @@ static void qmp_chardev_open_socket(Chardev *chr,
- } else if (reconnect > 0) {
+@@ -1008,6 +1073,14 @@ static void qmp_chardev_open_socket(Chardev *chr,
s->reconnect_time = reconnect;
}
+
+#ifndef _WIN32
+ if (cmd) {
+ chardev_open_socket_cmd(chr, cmd, errp);
-
++
+ /* everything ready (or failed permanently) before we return */
+ *be_opened = true;
+ } else
+#endif
- if (s->reconnect_time) {
- sioc = qio_channel_socket_new();
- tcp_chr_set_client_ioc_name(chr, sioc);
-@@ -985,10 +1057,26 @@ static void qemu_chr_parse_socket(QemuOpts *opts, ChardevBackend *backend,
- const char *host = qemu_opt_get(opts, "host");
+ /* If reconnect_time is set, will do that in chr_machine_done. */
+ if (!s->reconnect_time) {
+ if (s->is_listen) {
+@@ -1065,9 +1138,26 @@ static void qemu_chr_parse_socket(QemuOpts *opts, ChardevBackend *backend,
const char *port = qemu_opt_get(opts, "port");
+ const char *fd = qemu_opt_get(opts, "fd");
const char *tls_creds = qemu_opt_get(opts, "tls-creds");
+#ifndef _WIN32
+ const char *cmd = qemu_opt_get(opts, "cmd");
@@ -158,7 +158,6 @@ index 53eda8e..6c63555 100644
SocketAddressLegacy *addr;
ChardevSocket *sock;
- backend->type = CHARDEV_BACKEND_KIND_SOCKET;
+#ifndef _WIN32
+ if (cmd) {
+ /*
@@ -172,17 +171,18 @@ index 53eda8e..6c63555 100644
+ }
+ } else
+#endif
- if (!path) {
- if (!host) {
- error_setg(errp, "chardev: socket: no host given");
-@@ -1021,13 +1109,24 @@ static void qemu_chr_parse_socket(QemuOpts *opts, ChardevBackend *backend,
- sock->has_reconnect = true;
++
+ if ((!!path + !!fd + !!host) != 1) {
+ error_setg(errp,
+ "Exactly one of 'path', 'fd' or 'host' required");
+@@ -1112,12 +1202,24 @@ static void qemu_chr_parse_socket(QemuOpts *opts, ChardevBackend *backend,
sock->reconnect = reconnect;
sock->tls_creds = g_strdup(tls_creds);
+
+#ifndef _WIN32
+ sock->cmd = g_strdup(cmd);
+#endif
-
++
addr = g_new0(SocketAddressLegacy, 1);
+#ifndef _WIN32
+ if (path || cmd) {
@@ -197,25 +197,25 @@ index 53eda8e..6c63555 100644
+#else
q_unix->path = g_strdup(path);
+#endif
- } else {
+ } else if (host) {
addr->type = SOCKET_ADDRESS_LEGACY_KIND_INET;
addr->u.inet.data = g_new(InetSocketAddress, 1);
diff --git a/chardev/char.c b/chardev/char.c
-index 2ae4f46..5d52cd5 100644
+index 76d866e6fe..9747d51d7c 100644
--- a/chardev/char.c
+++ b/chardev/char.c
-@@ -793,6 +793,9 @@ QemuOptsList qemu_chardev_opts = {
+@@ -792,6 +792,9 @@ QemuOptsList qemu_chardev_opts = {
+ },{
.name = "path",
.type = QEMU_OPT_STRING,
- },{
++ },{
+ .name = "cmd",
+ .type = QEMU_OPT_STRING,
-+ },{
+ },{
.name = "host",
.type = QEMU_OPT_STRING,
- },{
diff --git a/qapi/char.json b/qapi/char.json
-index ae19dcd..6de0f29 100644
+index ae19dcd1ed..6de0f29bcd 100644
--- a/qapi/char.json
+++ b/qapi/char.json
@@ -241,6 +241,10 @@
diff --git a/poky/meta/recipes-devtools/qemu/qemu/0009-apic-fixup-fallthrough-to-PIC.patch b/poky/meta/recipes-devtools/qemu/qemu/0009-apic-fixup-fallthrough-to-PIC.patch
index 915bfdac5..5969d9387 100644
--- a/poky/meta/recipes-devtools/qemu/qemu/0009-apic-fixup-fallthrough-to-PIC.patch
+++ b/poky/meta/recipes-devtools/qemu/qemu/0009-apic-fixup-fallthrough-to-PIC.patch
@@ -1,4 +1,4 @@
-From 945f428016f278fa8e38bc8d153397c3195f85a5 Mon Sep 17 00:00:00 2001
+From 5046c21efdbc7413cddd5c5dbd9e1d53258d3e8c Mon Sep 17 00:00:00 2001
From: Mark Asselstine <mark.asselstine@windriver.com>
Date: Tue, 26 Feb 2013 11:43:28 -0500
Subject: [PATCH] apic: fixup fallthrough to PIC
@@ -29,10 +29,10 @@ Signed-off-by: He Zhe <zhe.he@windriver.com>
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/hw/intc/apic.c b/hw/intc/apic.c
-index fe15fb6..8352c39 100644
+index 6fda52b86c..cd7291962d 100644
--- a/hw/intc/apic.c
+++ b/hw/intc/apic.c
-@@ -591,7 +591,7 @@ int apic_accept_pic_intr(DeviceState *dev)
+@@ -603,7 +603,7 @@ int apic_accept_pic_intr(DeviceState *dev)
APICCommonState *s = APIC(dev);
uint32_t lvt0;
diff --git a/poky/meta/recipes-devtools/qemu/qemu/0010-linux-user-Fix-webkitgtk-hangs-on-32-bit-x86-target.patch b/poky/meta/recipes-devtools/qemu/qemu/0010-linux-user-Fix-webkitgtk-hangs-on-32-bit-x86-target.patch
index ceb3980fc..e110f6334 100644
--- a/poky/meta/recipes-devtools/qemu/qemu/0010-linux-user-Fix-webkitgtk-hangs-on-32-bit-x86-target.patch
+++ b/poky/meta/recipes-devtools/qemu/qemu/0010-linux-user-Fix-webkitgtk-hangs-on-32-bit-x86-target.patch
@@ -1,4 +1,4 @@
-From 4333b2b269d997a719e19f00d044105e17700be2 Mon Sep 17 00:00:00 2001
+From 3cd92c7a885e4997ef6843313298c1d748d6ca39 Mon Sep 17 00:00:00 2001
From: Alistair Francis <alistair.francis@xilinx.com>
Date: Wed, 17 Jan 2018 10:51:49 -0800
Subject: [PATCH] linux-user: Fix webkitgtk hangs on 32-bit x86 target
@@ -18,10 +18,10 @@ Signed-off-by: Alistair Francis <alistair.francis@xilinx.com>
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/linux-user/main.c b/linux-user/main.c
-index 146ee3e..1332b5c 100644
+index 8907a84114..ea42c43610 100644
--- a/linux-user/main.c
+++ b/linux-user/main.c
-@@ -78,7 +78,7 @@ do { \
+@@ -79,7 +79,7 @@ do { \
(TARGET_LONG_BITS == 32 || defined(TARGET_ABI32))
/* There are a number of places where we assign reserved_va to a variable
of type abi_ulong and expect it to fit. Avoid the last page. */
diff --git a/poky/meta/recipes-devtools/qemu/qemu/0011-Revert-linux-user-fix-mmap-munmap-mprotect-mremap-sh.patch b/poky/meta/recipes-devtools/qemu/qemu/0011-Revert-linux-user-fix-mmap-munmap-mprotect-mremap-sh.patch
new file mode 100644
index 000000000..41626eb87
--- /dev/null
+++ b/poky/meta/recipes-devtools/qemu/qemu/0011-Revert-linux-user-fix-mmap-munmap-mprotect-mremap-sh.patch
@@ -0,0 +1,141 @@
+From 3ed26be2091436296933ed2146f7269c791c7bfe Mon Sep 17 00:00:00 2001
+From: Martin Jansa <martin.jansa@lge.com>
+Date: Fri, 1 Jun 2018 08:41:07 +0000
+Subject: [PATCH] Revert "linux-user: fix mmap/munmap/mprotect/mremap/shmat"
+
+Causes qemu-i386 to hang during gobject-introspection in webkitgtk build
+when musl is used on qemux86 - the same issue as
+0010-linux-user-Fix-webkitgtk-hangs-on-32-bit-x86-target.patch
+was fixing in 2.11.0 release, but with this patch the fix no longer worked
+as discussed here:
+http://lists.openembedded.org/pipermail/openembedded-core/2018-May/150302.html
+http://lists.openembedded.org/pipermail/openembedded-core/2018-June/151382.html
+
+This reverts commit ebf9a3630c911d0cfc9c20f7cafe9ba4f88cf583.
+
+Upstream-Status: Pending
+---
+ include/exec/cpu-all.h | 6 +-----
+ include/exec/cpu_ldst.h | 16 +++++++++-------
+ linux-user/mmap.c | 17 ++++-------------
+ linux-user/syscall.c | 5 +----
+ 4 files changed, 15 insertions(+), 29 deletions(-)
+
+diff --git a/include/exec/cpu-all.h b/include/exec/cpu-all.h
+index f4fa94e966..0b141683f0 100644
+--- a/include/exec/cpu-all.h
++++ b/include/exec/cpu-all.h
+@@ -159,12 +159,8 @@ extern unsigned long guest_base;
+ extern int have_guest_base;
+ extern unsigned long reserved_va;
+
+-#if HOST_LONG_BITS <= TARGET_VIRT_ADDR_SPACE_BITS
+-#define GUEST_ADDR_MAX (~0ul)
+-#else
+-#define GUEST_ADDR_MAX (reserved_va ? reserved_va - 1 : \
++#define GUEST_ADDR_MAX (reserved_va ? reserved_va : \
+ (1ul << TARGET_VIRT_ADDR_SPACE_BITS) - 1)
+-#endif
+ #else
+
+ #include "exec/hwaddr.h"
+diff --git a/include/exec/cpu_ldst.h b/include/exec/cpu_ldst.h
+index 5de8c8a5af..191f2e962a 100644
+--- a/include/exec/cpu_ldst.h
++++ b/include/exec/cpu_ldst.h
+@@ -51,13 +51,15 @@
+ /* All direct uses of g2h and h2g need to go away for usermode softmmu. */
+ #define g2h(x) ((void *)((unsigned long)(target_ulong)(x) + guest_base))
+
+-#define guest_addr_valid(x) ((x) <= GUEST_ADDR_MAX)
+-#define h2g_valid(x) guest_addr_valid((unsigned long)(x) - guest_base)
+-
+-static inline int guest_range_valid(unsigned long start, unsigned long len)
+-{
+- return len - 1 <= GUEST_ADDR_MAX && start <= GUEST_ADDR_MAX - len + 1;
+-}
++#if HOST_LONG_BITS <= TARGET_VIRT_ADDR_SPACE_BITS
++#define h2g_valid(x) 1
++#else
++#define h2g_valid(x) ({ \
++ unsigned long __guest = (unsigned long)(x) - guest_base; \
++ (__guest < (1ul << TARGET_VIRT_ADDR_SPACE_BITS)) && \
++ (!reserved_va || (__guest < reserved_va)); \
++})
++#endif
+
+ #define h2g_nocheck(x) ({ \
+ unsigned long __ret = (unsigned long)(x) - guest_base; \
+diff --git a/linux-user/mmap.c b/linux-user/mmap.c
+index 9168a2051c..de85669aab 100644
+--- a/linux-user/mmap.c
++++ b/linux-user/mmap.c
+@@ -80,7 +80,7 @@ int target_mprotect(abi_ulong start, abi_ulong len, int prot)
+ return -TARGET_EINVAL;
+ len = TARGET_PAGE_ALIGN(len);
+ end = start + len;
+- if (!guest_range_valid(start, len)) {
++ if (end < start) {
+ return -TARGET_ENOMEM;
+ }
+ prot &= PROT_READ | PROT_WRITE | PROT_EXEC;
+@@ -482,8 +482,8 @@ abi_long target_mmap(abi_ulong start, abi_ulong len, int prot,
+ * It can fail only on 64-bit host with 32-bit target.
+ * On any other target/host host mmap() handles this error correctly.
+ */
+- if (!guest_range_valid(start, len)) {
+- errno = ENOMEM;
++ if ((unsigned long)start + len - 1 > (abi_ulong) -1) {
++ errno = EINVAL;
+ goto fail;
+ }
+
+@@ -623,10 +623,8 @@ int target_munmap(abi_ulong start, abi_ulong len)
+ if (start & ~TARGET_PAGE_MASK)
+ return -TARGET_EINVAL;
+ len = TARGET_PAGE_ALIGN(len);
+- if (len == 0 || !guest_range_valid(start, len)) {
++ if (len == 0)
+ return -TARGET_EINVAL;
+- }
+-
+ mmap_lock();
+ end = start + len;
+ real_start = start & qemu_host_page_mask;
+@@ -681,13 +679,6 @@ abi_long target_mremap(abi_ulong old_addr, abi_ulong old_size,
+ int prot;
+ void *host_addr;
+
+- if (!guest_range_valid(old_addr, old_size) ||
+- ((flags & MREMAP_FIXED) &&
+- !guest_range_valid(new_addr, new_size))) {
+- errno = ENOMEM;
+- return -1;
+- }
+-
+ mmap_lock();
+
+ if (flags & MREMAP_FIXED) {
+diff --git a/linux-user/syscall.c b/linux-user/syscall.c
+index 643b8833de..271f215147 100644
+--- a/linux-user/syscall.c
++++ b/linux-user/syscall.c
+@@ -4919,9 +4919,6 @@ static inline abi_ulong do_shmat(CPUArchState *cpu_env,
+ return -TARGET_EINVAL;
+ }
+ }
+- if (!guest_range_valid(shmaddr, shm_info.shm_segsz)) {
+- return -TARGET_EINVAL;
+- }
+
+ mmap_lock();
+
+@@ -7497,7 +7494,7 @@ static int open_self_maps(void *cpu_env, int fd)
+ }
+ if (h2g_valid(min)) {
+ int flags = page_get_flags(h2g(min));
+- max = h2g_valid(max - 1) ? max : (uintptr_t)g2h(GUEST_ADDR_MAX) + 1;
++ max = h2g_valid(max - 1) ? max : (uintptr_t)g2h(GUEST_ADDR_MAX);
+ if (page_check_range(h2g(min), max - min, flags) == -1) {
+ continue;
+ }
diff --git a/poky/meta/recipes-devtools/qemu/qemu/0011-memfd-fix-configure-test.patch b/poky/meta/recipes-devtools/qemu/qemu/0011-memfd-fix-configure-test.patch
deleted file mode 100644
index 880cb980a..000000000
--- a/poky/meta/recipes-devtools/qemu/qemu/0011-memfd-fix-configure-test.patch
+++ /dev/null
@@ -1,54 +0,0 @@
-From 0c8af3f651a125d636a71d93bafd35ff5240431a Mon Sep 17 00:00:00 2001
-From: Paolo Bonzini <pbonzini@redhat.com>
-Date: Tue, 28 Nov 2017 11:51:27 +0100
-Subject: [PATCH] memfd: fix configure test
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Recent glibc added memfd_create in sys/mman.h. This conflicts with
-the definition in util/memfd.c:
-
- /builddir/build/BUILD/qemu-2.11.0-rc1/util/memfd.c:40:12: error: static declaration of memfd_create follows non-static declaration
-
-Fix the configure test, and remove the sys/memfd.h inclusion since the
-file actually does not exist---it is a typo in the memfd_create(2) man
-page.
-
-Cc: Marc-André Lureau <marcandre.lureau@redhat.com>
-Upstream-Status: Backport
-Signed-off-by: Ross Burton <ross.burton@intel.com>
-Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
----
- configure | 2 +-
- util/memfd.c | 4 +---
- 2 files changed, 2 insertions(+), 4 deletions(-)
-
-diff --git a/configure b/configure
-index b5312f4..ec12f36 100755
---- a/configure
-+++ b/configure
-@@ -3920,7 +3920,7 @@ fi
- # check if memfd is supported
- memfd=no
- cat > $TMPC << EOF
--#include <sys/memfd.h>
-+#include <sys/mman.h>
-
- int main(void)
- {
-diff --git a/util/memfd.c b/util/memfd.c
-index 4571d1a..412e94a 100644
---- a/util/memfd.c
-+++ b/util/memfd.c
-@@ -31,9 +31,7 @@
-
- #include "qemu/memfd.h"
-
--#ifdef CONFIG_MEMFD
--#include <sys/memfd.h>
--#elif defined CONFIG_LINUX
-+#if defined CONFIG_LINUX && !defined CONFIG_MEMFD
- #include <sys/syscall.h>
- #include <asm/unistd.h>
-
diff --git a/poky/meta/recipes-devtools/qemu/qemu/0012-arm-translate-a64-treat-DISAS_UPDATE-as-variant-of-D.patch b/poky/meta/recipes-devtools/qemu/qemu/0012-arm-translate-a64-treat-DISAS_UPDATE-as-variant-of-D.patch
deleted file mode 100644
index be9250209..000000000
--- a/poky/meta/recipes-devtools/qemu/qemu/0012-arm-translate-a64-treat-DISAS_UPDATE-as-variant-of-D.patch
+++ /dev/null
@@ -1,64 +0,0 @@
-From 7354b9b24c36ee712bb6e881d39504bf1b6a4c8b Mon Sep 17 00:00:00 2001
-From: Victor Kamensky <kamensky@cisco.com>
-Date: Fri, 23 Mar 2018 18:26:45 +0000
-Subject: [PATCH] arm/translate-a64: treat DISAS_UPDATE as variant of
- DISAS_EXIT
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-In OE project 4.15 linux kernel boot hang was observed under
-single cpu aarch64 qemu. Kernel code was in a loop waiting for
-vtimer arrival, spinning in TC generated blocks, while interrupt
-was pending unprocessed. This happened because when qemu tried to
-handle vtimer interrupt target had interrupts disabled, as
-result flag indicating TCG exit, cpu->icount_decr.u16.high,
-was cleared but arm_cpu_exec_interrupt function did not call
-arm_cpu_do_interrupt to process interrupt. Later when target
-reenabled interrupts, it happened without exit into main loop, so
-following code that waited for result of interrupt execution
-run in infinite loop.
-
-To solve the problem instructions that operate on CPU sys state
-(i.e enable/disable interrupt), and marked as DISAS_UPDATE,
-should be considered as DISAS_EXIT variant, and should be
-forced to exit back to main loop so qemu will have a chance
-processing pending CPU state updates, including pending
-interrupts.
-
-This change brings consistency with how DISAS_UPDATE is treated
-in aarch32 case.
-
-CC: Peter Maydell <peter.maydell@linaro.org>
-CC: Alex Bennée <alex.bennee@linaro.org>
-CC: qemu-stable@nongnu.org
-Suggested-by: Peter Maydell <peter.maydell@linaro.org>
-Signed-off-by: Victor Kamensky <kamensky@cisco.com>
-Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
-Message-id: 1521526368-1996-1-git-send-email-kamensky@cisco.com
-Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
-Upstream-Status: Backport
----
- target/arm/translate-a64.c | 6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/target/arm/translate-a64.c b/target/arm/translate-a64.c
-index 625ef2d..c381091 100644
---- a/target/arm/translate-a64.c
-+++ b/target/arm/translate-a64.c
-@@ -11384,12 +11384,12 @@ static void aarch64_tr_tb_stop(DisasContextBase *dcbase, CPUState *cpu)
- case DISAS_UPDATE:
- gen_a64_set_pc_im(dc->pc);
- /* fall through */
-- case DISAS_JUMP:
-- tcg_gen_lookup_and_goto_ptr();
-- break;
- case DISAS_EXIT:
- tcg_gen_exit_tb(0);
- break;
-+ case DISAS_JUMP:
-+ tcg_gen_lookup_and_goto_ptr();
-+ break;
- case DISAS_NORETURN:
- case DISAS_SWI:
- break;
diff --git a/poky/meta/recipes-devtools/qemu/qemu/0014-fix-libcap-header-issue-on-some-distro.patch b/poky/meta/recipes-devtools/qemu/qemu/0012-fix-libcap-header-issue-on-some-distro.patch
index b662a4150..aa24f7294 100644
--- a/poky/meta/recipes-devtools/qemu/qemu/0014-fix-libcap-header-issue-on-some-distro.patch
+++ b/poky/meta/recipes-devtools/qemu/qemu/0012-fix-libcap-header-issue-on-some-distro.patch
@@ -1,4 +1,4 @@
-From 47fdb0b6e2e393194a8c81544c647fdd997aec7f Mon Sep 17 00:00:00 2001
+From bb9e48e331eee06d7bac1dce809c70191d1a3b4d Mon Sep 17 00:00:00 2001
From: Hongxu Jia <hongxu.jia@windriver.com>
Date: Tue, 12 Mar 2013 09:54:06 +0800
Subject: [PATCH] fix libcap header issue on some distro
@@ -59,7 +59,7 @@ Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
1 file changed, 5 insertions(+), 2 deletions(-)
diff --git a/fsdev/virtfs-proxy-helper.c b/fsdev/virtfs-proxy-helper.c
-index 8e48500..6490030 100644
+index 6f132c5ff1..8329950c26 100644
--- a/fsdev/virtfs-proxy-helper.c
+++ b/fsdev/virtfs-proxy-helper.c
@@ -13,7 +13,6 @@
diff --git a/poky/meta/recipes-devtools/qemu/qemu/0015-cpus.c-Add-error-messages-when-qemi_cpu_kick_thread-.patch b/poky/meta/recipes-devtools/qemu/qemu/0013-cpus.c-Add-error-messages-when-qemi_cpu_kick_thread-.patch
index a5621caa9..8a9141acd 100644
--- a/poky/meta/recipes-devtools/qemu/qemu/0015-cpus.c-Add-error-messages-when-qemi_cpu_kick_thread-.patch
+++ b/poky/meta/recipes-devtools/qemu/qemu/0013-cpus.c-Add-error-messages-when-qemi_cpu_kick_thread-.patch
@@ -1,4 +1,4 @@
-From db914e0f93a32b6731a636517002ecadc207718b Mon Sep 17 00:00:00 2001
+From edc8dba74c7a4a2121d76c982be0074183bf080a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?An=C3=ADbal=20Lim=C3=B3n?= <anibal.limon@linux.intel.com>
Date: Wed, 12 Aug 2015 15:11:30 -0500
Subject: [PATCH] cpus.c: Add error messages when qemi_cpu_kick_thread fails.
@@ -19,10 +19,10 @@ Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
create mode 100644 custom_debug.h
diff --git a/cpus.c b/cpus.c
-index 114c29b..c3dd2e0 100644
+index 38eba8bff3..b84a60a4f3 100644
--- a/cpus.c
+++ b/cpus.c
-@@ -1510,6 +1510,8 @@ static void *qemu_tcg_cpu_thread_fn(void *arg)
+@@ -1690,6 +1690,8 @@ static void *qemu_tcg_cpu_thread_fn(void *arg)
return NULL;
}
@@ -31,7 +31,7 @@ index 114c29b..c3dd2e0 100644
static void qemu_cpu_kick_thread(CPUState *cpu)
{
#ifndef _WIN32
-@@ -1522,6 +1524,9 @@ static void qemu_cpu_kick_thread(CPUState *cpu)
+@@ -1702,6 +1704,9 @@ static void qemu_cpu_kick_thread(CPUState *cpu)
err = pthread_kill(cpu->thread->thread, SIG_IPI);
if (err) {
fprintf(stderr, "qemu:%s: %s", __func__, strerror(err));
@@ -43,7 +43,7 @@ index 114c29b..c3dd2e0 100644
#else /* _WIN32 */
diff --git a/custom_debug.h b/custom_debug.h
new file mode 100644
-index 0000000..f029e45
+index 0000000000..f029e45547
--- /dev/null
+++ b/custom_debug.h
@@ -0,0 +1,24 @@
diff --git a/poky/meta/recipes-devtools/qemu/qemu/0013-ps2-check-PS2Queue-pointers-in-post_load-routine.patch b/poky/meta/recipes-devtools/qemu/qemu/0013-ps2-check-PS2Queue-pointers-in-post_load-routine.patch
deleted file mode 100644
index d2bdf6b01..000000000
--- a/poky/meta/recipes-devtools/qemu/qemu/0013-ps2-check-PS2Queue-pointers-in-post_load-routine.patch
+++ /dev/null
@@ -1,60 +0,0 @@
-From 065061dca34fa5b91be6dce9a87a8755d8826c78 Mon Sep 17 00:00:00 2001
-From: Prasad J Pandit <pjp@fedoraproject.org>
-Date: Thu, 16 Nov 2017 13:21:55 +0530
-Subject: [PATCH] ps2: check PS2Queue pointers in post_load routine
-
-During Qemu guest migration, a destination process invokes ps2
-post_load function. In that, if 'rptr' and 'count' values were
-invalid, it could lead to OOB access or infinite loop issue.
-Add check to avoid it.
-
-Reported-by: Cyrille Chatras <cyrille.chatras@orange.com>
-Signed-off-by: Prasad J Pandit <pjp@fedoraproject.org>
-Message-id: 20171116075155.22378-1-ppandit@redhat.com
-Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
-
-CVE: CVE-2017-16845
-Upstream-Status: Backport
-Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
----
- hw/input/ps2.c | 21 +++++++++------------
- 1 file changed, 9 insertions(+), 12 deletions(-)
-
-diff --git a/hw/input/ps2.c b/hw/input/ps2.c
-index f388a23..de171a2 100644
---- a/hw/input/ps2.c
-+++ b/hw/input/ps2.c
-@@ -1225,24 +1225,21 @@ static void ps2_common_reset(PS2State *s)
- static void ps2_common_post_load(PS2State *s)
- {
- PS2Queue *q = &s->queue;
-- int size;
-- int i;
-- int tmp_data[PS2_QUEUE_SIZE];
-+ uint8_t i, size;
-+ uint8_t tmp_data[PS2_QUEUE_SIZE];
-
- /* set the useful data buffer queue size, < PS2_QUEUE_SIZE */
-- size = q->count > PS2_QUEUE_SIZE ? 0 : q->count;
-+ size = (q->count < 0 || q->count > PS2_QUEUE_SIZE) ? 0 : q->count;
-
- /* move the queue elements to the start of data array */
-- if (size > 0) {
-- for (i = 0; i < size; i++) {
-- /* move the queue elements to the temporary buffer */
-- tmp_data[i] = q->data[q->rptr];
-- if (++q->rptr == 256) {
-- q->rptr = 0;
-- }
-+ for (i = 0; i < size; i++) {
-+ if (q->rptr < 0 || q->rptr >= sizeof(q->data)) {
-+ q->rptr = 0;
- }
-- memcpy(q->data, tmp_data, size);
-+ tmp_data[i] = q->data[q->rptr++];
- }
-+ memcpy(q->data, tmp_data, size);
-+
- /* reset rptr/wptr/count */
- q->rptr = 0;
- q->wptr = size;
diff --git a/poky/meta/recipes-devtools/qemu/qemu/CVE-2018-10839.patch b/poky/meta/recipes-devtools/qemu/qemu/CVE-2018-10839.patch
new file mode 100644
index 000000000..7e1e442a4
--- /dev/null
+++ b/poky/meta/recipes-devtools/qemu/qemu/CVE-2018-10839.patch
@@ -0,0 +1,52 @@
+From fdc89e90fac40c5ca2686733df17b6423fb8d8fb Mon Sep 17 00:00:00 2001
+From: Jason Wang <jasowang@redhat.com>
+Date: Wed, 30 May 2018 13:08:15 +0800
+Subject: [PATCH] ne2000: fix possible out of bound access in ne2000_receive
+
+In ne2000_receive(), we try to assign size_ to size which converts
+from size_t to integer. This will cause troubles when size_ is greater
+INT_MAX, this will lead a negative value in size and it can then pass
+the check of size < MIN_BUF_SIZE which may lead out of bound access of
+for both buf and buf1.
+
+Fixing by converting the type of size to size_t.
+
+CC: qemu-stable@nongnu.org
+Reported-by: Daniel Shapira <daniel@twistlock.com>
+Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
+Signed-off-by: Jason Wang <jasowang@redhat.com>
+
+Upstream-Status: Backport [https://git.qemu.org/?p=qemu.git;a=commitdiff
+;h=fdc89e90fac40c5ca2686733df17b6423fb8d8fb#patch1]
+
+CVE: CVE-2018-10839
+
+Signed-off-by: Changqing Li <changqing.li@windriver.com>
+---
+ hw/net/ne2000.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/hw/net/ne2000.c b/hw/net/ne2000.c
+index 07d79e3..869518e 100644
+--- a/hw/net/ne2000.c
++++ b/hw/net/ne2000.c
+@@ -174,7 +174,7 @@ static int ne2000_buffer_full(NE2000State *s)
+ ssize_t ne2000_receive(NetClientState *nc, const uint8_t *buf, size_t size_)
+ {
+ NE2000State *s = qemu_get_nic_opaque(nc);
+- int size = size_;
++ size_t size = size_;
+ uint8_t *p;
+ unsigned int total_len, next, avail, len, index, mcast_idx;
+ uint8_t buf1[60];
+@@ -182,7 +182,7 @@ ssize_t ne2000_receive(NetClientState *nc, const uint8_t *buf, size_t size_)
+ { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff };
+
+ #if defined(DEBUG_NE2000)
+- printf("NE2000: received len=%d\n", size);
++ printf("NE2000: received len=%zu\n", size);
+ #endif
+
+ if (s->cmd & E8390_STOP || ne2000_buffer_full(s))
+--
+1.8.3.1
diff --git a/poky/meta/recipes-devtools/qemu/qemu/CVE-2018-12617.patch b/poky/meta/recipes-devtools/qemu/qemu/CVE-2018-12617.patch
deleted file mode 100644
index c89f18982..000000000
--- a/poky/meta/recipes-devtools/qemu/qemu/CVE-2018-12617.patch
+++ /dev/null
@@ -1,53 +0,0 @@
-From 141b197408ab398c4f474ac1a728ab316e921f2b Mon Sep 17 00:00:00 2001
-From: Prasad J Pandit <pjp@fedoraproject.org>
-Date: Wed, 13 Jun 2018 11:46:57 +0530
-Subject: [PATCH] qga: check bytes count read by guest-file-read
-
-While reading file content via 'guest-file-read' command,
-'qmp_guest_file_read' routine allocates buffer of count+1
-bytes. It could overflow for large values of 'count'.
-Add check to avoid it.
-
-Reported-by: Fakhri Zulkifli <mohdfakhrizulkifli@gmail.com>
-Signed-off-by: Prasad J Pandit <pjp@fedoraproject.org>
-Cc: qemu-stable@nongnu.org
-Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
-
-CVE: CVE-2018-12617
-Upstream-Status: Backport [https://git.qemu.org/?p=qemu.git;a=commitdiff;h=141b197408ab398c4f474ac1a728ab316e921f2b]
-
-Signed-off-by: Jagadeesh Krishnanjanappa <jkrishnanjanappa@mvista.com>
----
- qga/commands-posix.c | 2 +-
- qga/commands-win32.c | 2 +-
- 2 files changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/qga/commands-posix.c b/qga/commands-posix.c
-index 594d21ef3e..9284e71666 100644
---- a/qga/commands-posix.c
-+++ b/qga/commands-posix.c
-@@ -458,7 +458,7 @@ struct GuestFileRead *qmp_guest_file_read(int64_t handle, bool has_count,
-
- if (!has_count) {
- count = QGA_READ_COUNT_DEFAULT;
-- } else if (count < 0) {
-+ } else if (count < 0 || count >= UINT32_MAX) {
- error_setg(errp, "value '%" PRId64 "' is invalid for argument count",
- count);
- return NULL;
-diff --git a/qga/commands-win32.c b/qga/commands-win32.c
-index 70ee5379f6..73f31fa8c2 100644
---- a/qga/commands-win32.c
-+++ b/qga/commands-win32.c
-@@ -318,7 +318,7 @@ GuestFileRead *qmp_guest_file_read(int64_t handle, bool has_count,
- }
- if (!has_count) {
- count = QGA_READ_COUNT_DEFAULT;
-- } else if (count < 0) {
-+ } else if (count < 0 || count >= UINT32_MAX) {
- error_setg(errp, "value '%" PRId64
- "' is invalid for argument count", count);
- return NULL;
---
-2.13.3
-
diff --git a/poky/meta/recipes-devtools/qemu/qemu/CVE-2018-15746.patch b/poky/meta/recipes-devtools/qemu/qemu/CVE-2018-15746.patch
new file mode 100644
index 000000000..2f61ea005
--- /dev/null
+++ b/poky/meta/recipes-devtools/qemu/qemu/CVE-2018-15746.patch
@@ -0,0 +1,64 @@
+From 9acf4c64dd4560bd268006d7356c7455fab7e5b1 Mon Sep 17 00:00:00 2001
+From: Changqing Li <changqing.li@windriver.com>
+Date: Thu, 6 Sep 2018 14:52:12 +0800
+Subject: [PATCH] seccomp: set the seccomp filter to all threads
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+When using "-seccomp on", the seccomp policy is only applied to the
+main thread, the vcpu worker thread and other worker threads created
+after seccomp policy is applied; the seccomp policy is not applied to
+e.g. the RCU thread because it is created before the seccomp policy is
+applied and SECCOMP_FILTER_FLAG_TSYNC isn't used.
+
+This can be verified with
+for task in /proc/`pidof qemu`/task/*; do cat $task/status | grep Secc ; done
+Seccomp: 2
+Seccomp: 0
+Seccomp: 0
+Seccomp: 2
+Seccomp: 2
+Seccomp: 2
+
+Starting with libseccomp 2.2.0 and kernel >= 3.17, we can use
+seccomp_attr_set(ctx, > SCMP_FLTATR_CTL_TSYNC, 1) to update the policy
+on all threads.
+
+libseccomp requirement was bumped to 2.2.0 in previous patch.
+libseccomp should fail to set the filter if it can't honour
+SCMP_FLTATR_CTL_TSYNC (untested), and thus -sandbox will now fail on
+kernel < 3.17.
+
+Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
+Acked-by: Eduardo Otubo <otubo@redhat.com>
+
+Upstream-Status: Backport[https://github.com/qemu/qemu/commit/
+70dfabeaa79ba4d7a3b699abe1a047c8012db114#diff-18106d3b47a2d249f9d41e772b7db22d]
+
+CVE: CVE-2018-15746
+
+Signed-off-by: Changqing Li <changqing.li@windriver.com>
+---
+ qemu-seccomp.c | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+diff --git a/qemu-seccomp.c b/qemu-seccomp.c
+index 9cd8eb9..ba5500a 100644
+--- a/qemu-seccomp.c
++++ b/qemu-seccomp.c
+@@ -120,6 +120,11 @@ static int seccomp_start(uint32_t seccomp_opts)
+ goto seccomp_return;
+ }
+
++ rc = seccomp_attr_set(ctx, SCMP_FLTATR_CTL_TSYNC, 1);
++ if (rc != 0) {
++ goto seccomp_return;
++ }
++
+ for (i = 0; i < ARRAY_SIZE(blacklist); i++) {
+ if (!(seccomp_opts & blacklist[i].set)) {
+ continue;
+--
+2.7.4
+
diff --git a/poky/meta/recipes-devtools/qemu/qemu/CVE-2018-17958.patch b/poky/meta/recipes-devtools/qemu/qemu/CVE-2018-17958.patch
new file mode 100644
index 000000000..af40ff275
--- /dev/null
+++ b/poky/meta/recipes-devtools/qemu/qemu/CVE-2018-17958.patch
@@ -0,0 +1,52 @@
+From 06e88ca78d056ea4de885e3a1496805179dc47bc Mon Sep 17 00:00:00 2001
+From: Changqing Li <changqing.li@windriver.com>
+Date: Mon, 15 Oct 2018 16:33:04 +0800
+Subject: [PATCH] ne2000: fix possible out of bound access in ne2000_receive
+
+In ne2000_receive(), we try to assign size_ to size which converts
+from size_t to integer. This will cause troubles when size_ is greater
+INT_MAX, this will lead a negative value in size and it can then pass
+the check of size < MIN_BUF_SIZE which may lead out of bound access of
+for both buf and buf1.
+
+Fixing by converting the type of size to size_t.
+
+CC: address@hidden
+Reported-by: Daniel Shapira <address@hidden>
+Reviewed-by: Michael S. Tsirkin <address@hidden>
+Signed-off-by: Jason Wang <address@hidden>
+
+Upstream-Status: Backport [https://lists.gnu.org/archive/html/qemu-devel/2018-09/msg03273.html]
+
+CVE: CVE-2018-17958
+
+Signed-off-by: Changqing Li <changqing.li@windriver.com>
+---
+ hw/net/ne2000.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/hw/net/ne2000.c b/hw/net/ne2000.c
+index 07d79e3..869518e 100644
+--- a/hw/net/ne2000.c
++++ b/hw/net/ne2000.c
+@@ -174,7 +174,7 @@ static int ne2000_buffer_full(NE2000State *s)
+ ssize_t ne2000_receive(NetClientState *nc, const uint8_t *buf, size_t size_)
+ {
+ NE2000State *s = qemu_get_nic_opaque(nc);
+- int size = size_;
++ size_t size = size_;
+ uint8_t *p;
+ unsigned int total_len, next, avail, len, index, mcast_idx;
+ uint8_t buf1[60];
+@@ -182,7 +182,7 @@ ssize_t ne2000_receive(NetClientState *nc, const uint8_t *buf, size_t size_)
+ { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff };
+
+ #if defined(DEBUG_NE2000)
+- printf("NE2000: received len=%d\n", size);
++ printf("NE2000: received len=%zu\n", size);
+ #endif
+
+ if (s->cmd & E8390_STOP || ne2000_buffer_full(s))
+--
+2.7.4
+
diff --git a/poky/meta/recipes-devtools/qemu/qemu/CVE-2018-17962.patch b/poky/meta/recipes-devtools/qemu/qemu/CVE-2018-17962.patch
new file mode 100644
index 000000000..88bfd811e
--- /dev/null
+++ b/poky/meta/recipes-devtools/qemu/qemu/CVE-2018-17962.patch
@@ -0,0 +1,70 @@
+From 20abe443ad9464b18ac494f71f7d53f19ee3748f Mon Sep 17 00:00:00 2001
+From: Changqing Li <changqing.li@windriver.com>
+Date: Mon, 15 Oct 2018 16:38:08 +0800
+Subject: [PATCH] rtl8139: fix possible out of bound access
+
+In rtl8139_do_receive(), we try to assign size_ to size which converts
+from size_t to integer. This will cause troubles when size_ is greater
+INT_MAX, this will lead a negative value in size and it can then pass
+the check of size < MIN_BUF_SIZE which may lead out of bound access of
+for both buf and buf1.
+
+Fixing by converting the type of size to size_t.
+
+CC: address@hidden
+Reported-by: Daniel Shapira <address@hidden>
+Reviewed-by: Michael S. Tsirkin <address@hidden>
+Signed-off-by: Jason Wang <address@hidden>
+
+Upstream-Status: Backport [https://lists.gnu.org/archive/html/qemu-devel/2018-09/msg03269.html]
+
+CVE: CVE-2018-17962
+
+Signed-off-by: Changqing Li <changqing.li@windriver.com>
+---
+ hw/net/rtl8139.c | 8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/hw/net/rtl8139.c b/hw/net/rtl8139.c
+index 46daa16..2342a09 100644
+--- a/hw/net/rtl8139.c
++++ b/hw/net/rtl8139.c
+@@ -817,7 +817,7 @@ static ssize_t rtl8139_do_receive(NetClientState *nc, const uint8_t *buf, size_t
+ RTL8139State *s = qemu_get_nic_opaque(nc);
+ PCIDevice *d = PCI_DEVICE(s);
+ /* size is the length of the buffer passed to the driver */
+- int size = size_;
++ size_t size = size_;
+ const uint8_t *dot1q_buf = NULL;
+
+ uint32_t packet_header = 0;
+@@ -826,7 +826,7 @@ static ssize_t rtl8139_do_receive(NetClientState *nc, const uint8_t *buf, size_t
+ static const uint8_t broadcast_macaddr[6] =
+ { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff };
+
+- DPRINTF(">>> received len=%d\n", size);
++ DPRINTF(">>> received len=%zu\n", size);
+
+ /* test if board clock is stopped */
+ if (!s->clock_enabled)
+@@ -1035,7 +1035,7 @@ static ssize_t rtl8139_do_receive(NetClientState *nc, const uint8_t *buf, size_t
+
+ if (size+4 > rx_space)
+ {
+- DPRINTF("C+ Rx mode : descriptor %d size %d received %d + 4\n",
++ DPRINTF("C+ Rx mode : descriptor %d size %d received %zu + 4\n",
+ descriptor, rx_space, size);
+
+ s->IntrStatus |= RxOverflow;
+@@ -1148,7 +1148,7 @@ static ssize_t rtl8139_do_receive(NetClientState *nc, const uint8_t *buf, size_t
+ if (avail != 0 && RX_ALIGN(size + 8) >= avail)
+ {
+ DPRINTF("rx overflow: rx buffer length %d head 0x%04x "
+- "read 0x%04x === available 0x%04x need 0x%04x\n",
++ "read 0x%04x === available 0x%04x need 0x%04zx\n",
+ s->RxBufferSize, s->RxBufAddr, s->RxBufPtr, avail, size + 8);
+
+ s->IntrStatus |= RxOverflow;
+--
+2.7.4
+
diff --git a/poky/meta/recipes-devtools/qemu/qemu/CVE-2018-17963.patch b/poky/meta/recipes-devtools/qemu/qemu/CVE-2018-17963.patch
new file mode 100644
index 000000000..054cdc867
--- /dev/null
+++ b/poky/meta/recipes-devtools/qemu/qemu/CVE-2018-17963.patch
@@ -0,0 +1,51 @@
+From e5ff72a8005dd1d9c0f63f8a9cc4298df5bb7551 Mon Sep 17 00:00:00 2001
+From: Changqing Li <changqing.li@windriver.com>
+Date: Mon, 15 Oct 2018 16:39:46 +0800
+Subject: [PATCH] pcnet: fix possible buffer overflow
+
+In pcnet_receive(), we try to assign size_ to size which converts from
+size_t to integer. This will cause troubles when size_ is greater
+INT_MAX, this will lead a negative value in size and it can then pass
+the check of size < MIN_BUF_SIZE which may lead out of bound access
+for both buf and buf1.
+
+Fixing by converting the type of size to size_t.
+
+CC: address@hidden
+Reported-by: Daniel Shapira <address@hidden>
+Reviewed-by: Michael S. Tsirkin <address@hidden>
+Signed-off-by: Jason Wang <address@hidden>
+
+Upstream-Status: Backport [https://lists.gnu.org/archive/html/qemu-devel/2018-09/msg03268.html]
+
+CVE: CVE-2018-17963
+
+Signed-off-by: Changqing Li <changqing.li@windriver.com>
+---
+ hw/net/pcnet.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/hw/net/pcnet.c b/hw/net/pcnet.c
+index 0c44554..d9ba04b 100644
+--- a/hw/net/pcnet.c
++++ b/hw/net/pcnet.c
+@@ -988,14 +988,14 @@ ssize_t pcnet_receive(NetClientState *nc, const uint8_t *buf, size_t size_)
+ uint8_t buf1[60];
+ int remaining;
+ int crc_err = 0;
+- int size = size_;
++ size_t size = size_;
+
+ if (CSR_DRX(s) || CSR_STOP(s) || CSR_SPND(s) || !size ||
+ (CSR_LOOP(s) && !s->looptest)) {
+ return -1;
+ }
+ #ifdef PCNET_DEBUG
+- printf("pcnet_receive size=%d\n", size);
++ printf("pcnet_receive size=%zu\n", size);
+ #endif
+
+ /* if too small buffer, then expand it */
+--
+2.7.4
+
diff --git a/poky/meta/recipes-devtools/qemu/qemu/CVE-2018-7550.patch b/poky/meta/recipes-devtools/qemu/qemu/CVE-2018-7550.patch
deleted file mode 100644
index 9923d123a..000000000
--- a/poky/meta/recipes-devtools/qemu/qemu/CVE-2018-7550.patch
+++ /dev/null
@@ -1,62 +0,0 @@
-From 2a8fcd119eb7c6bb3837fc3669eb1b2dfb31daf8 Mon Sep 17 00:00:00 2001
-From: Jack Schwartz <jack.schwartz@oracle.com>
-Date: Thu, 21 Dec 2017 09:25:15 -0800
-Subject: [PATCH] multiboot: bss_end_addr can be zero
-
-The multiboot spec (https://www.gnu.org/software/grub/manual/multiboot/),
-section 3.1.3, allows for bss_end_addr to be zero.
-
-A zero bss_end_addr signifies there is no .bss section.
-
-CVE: CVE-2018-7550
-Upstream-Status: Backport [https://git.qemu.org/?p=qemu.git;a=commitdiff;h=2a8fcd119eb7c6bb3837fc3669eb1b2dfb31daf8]
-
-Suggested-by: Daniel Kiper <daniel.kiper@oracle.com>
-Signed-off-by: Jack Schwartz <jack.schwartz@oracle.com>
-Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
-Reviewed-by: Prasad J Pandit <pjp@fedoraproject.org>
-Signed-off-by: Kevin Wolf <kwolf@redhat.com>
-Signed-off-by: Jagadeesh Krishnanjanappa <jkrishnanjanappa@mvista.com>
----
- hw/i386/multiboot.c | 18 ++++++++++--------
- 1 file changed, 10 insertions(+), 8 deletions(-)
-
-diff --git a/hw/i386/multiboot.c b/hw/i386/multiboot.c
-index 46d9c68bf5..bb8d8e4629 100644
---- a/hw/i386/multiboot.c
-+++ b/hw/i386/multiboot.c
-@@ -233,12 +233,6 @@ int load_multiboot(FWCfgState *fw_cfg,
- mh_entry_addr = ldl_p(header+i+28);
-
- if (mh_load_end_addr) {
-- if (mh_bss_end_addr < mh_load_addr) {
-- fprintf(stderr, "invalid mh_bss_end_addr address\n");
-- exit(1);
-- }
-- mb_kernel_size = mh_bss_end_addr - mh_load_addr;
--
- if (mh_load_end_addr < mh_load_addr) {
- fprintf(stderr, "invalid mh_load_end_addr address\n");
- exit(1);
-@@ -249,8 +243,16 @@ int load_multiboot(FWCfgState *fw_cfg,
- fprintf(stderr, "invalid kernel_file_size\n");
- exit(1);
- }
-- mb_kernel_size = kernel_file_size - mb_kernel_text_offset;
-- mb_load_size = mb_kernel_size;
-+ mb_load_size = kernel_file_size - mb_kernel_text_offset;
-+ }
-+ if (mh_bss_end_addr) {
-+ if (mh_bss_end_addr < (mh_load_addr + mb_load_size)) {
-+ fprintf(stderr, "invalid mh_bss_end_addr address\n");
-+ exit(1);
-+ }
-+ mb_kernel_size = mh_bss_end_addr - mh_load_addr;
-+ } else {
-+ mb_kernel_size = mb_load_size;
- }
-
- /* Valid if mh_flags sets MULTIBOOT_HEADER_HAS_VBE.
---
-2.13.3
-
diff --git a/poky/meta/recipes-devtools/qemu/qemu_2.11.1.bb b/poky/meta/recipes-devtools/qemu/qemu_3.0.0.bb
index a447dc719..776548b05 100644
--- a/poky/meta/recipes-devtools/qemu/qemu_2.11.1.bb
+++ b/poky/meta/recipes-devtools/qemu/qemu_3.0.0.bb
@@ -7,7 +7,7 @@ RDEPENDS_${PN}-ptest = "bash make"
LIC_FILES_CHKSUM = "file://COPYING;md5=441c28d2cf86e15a37fa47e15a72fbac \
file://COPYING.LIB;endline=24;md5=c04def7ae38850e7d3ef548588159913"
-SRC_URI = "http://wiki.qemu-project.org/download/${BP}.tar.bz2 \
+SRC_URI = "https://download.qemu.org/${BPN}-${PV}.tar.xz \
file://powerpc_rom.bin \
file://0001-sdl.c-allow-user-to-disable-pointer-grabs.patch \
file://0002-qemu-Add-missing-wacom-HID-descriptor.patch \
@@ -20,22 +20,21 @@ SRC_URI = "http://wiki.qemu-project.org/download/${BP}.tar.bz2 \
file://0008-chardev-connect-socket-to-a-spawned-command.patch \
file://0009-apic-fixup-fallthrough-to-PIC.patch \
file://0010-linux-user-Fix-webkitgtk-hangs-on-32-bit-x86-target.patch \
- file://0011-memfd-fix-configure-test.patch \
- file://0012-arm-translate-a64-treat-DISAS_UPDATE-as-variant-of-D.patch \
- file://0013-ps2-check-PS2Queue-pointers-in-post_load-routine.patch \
- file://0001-CVE-2018-11806-QEMU-slirp-heap-buffer-overflow.patch \
- file://CVE-2018-7550.patch \
- file://CVE-2018-12617.patch \
+ file://0011-Revert-linux-user-fix-mmap-munmap-mprotect-mremap-sh.patch \
+ file://CVE-2018-15746.patch \
+ file://CVE-2018-17958.patch \
+ file://CVE-2018-17962.patch \
+ file://CVE-2018-17963.patch \
"
-UPSTREAM_CHECK_REGEX = "qemu-(?P<pver>\d+\..*)\.tar"
+UPSTREAM_CHECK_REGEX = "qemu-(?P<pver>\d+(\.\d+)+)\.tar"
SRC_URI_append_class-native = " \
- file://0014-fix-libcap-header-issue-on-some-distro.patch \
- file://0015-cpus.c-Add-error-messages-when-qemi_cpu_kick_thread-.patch \
+ file://0012-fix-libcap-header-issue-on-some-distro.patch \
+ file://0013-cpus.c-Add-error-messages-when-qemi_cpu_kick_thread-.patch \
"
-SRC_URI[md5sum] = "61cf862b6007eba4ac98247776af2e27"
-SRC_URI[sha256sum] = "d9df2213ceed32e91dab7bc9dd19c1af83f91ba72c7aeef7605dfaaf81732ccb"
+SRC_URI[md5sum] = "6a5c8df583406ea24ef25b239c3243e0"
+SRC_URI[sha256sum] = "8d7af64fe8bd5ea5c3bdf17131a8b858491bcce1ee3839425a6d91fb821b5713"
COMPATIBLE_HOST_mipsarchn32 = "null"
COMPATIBLE_HOST_mipsarchn64 = "null"
diff --git a/poky/meta/recipes-devtools/qemu/qemuwrapper-cross_1.0.bb b/poky/meta/recipes-devtools/qemu/qemuwrapper-cross_1.0.bb
index c983fbae6..4aada5232 100644
--- a/poky/meta/recipes-devtools/qemu/qemuwrapper-cross_1.0.bb
+++ b/poky/meta/recipes-devtools/qemu/qemuwrapper-cross_1.0.bb
@@ -13,38 +13,26 @@ do_populate_sysroot[depends] = ""
do_install () {
install -d ${D}${bindir_crossscripts}/
- echo "#!/bin/sh" > ${D}${bindir_crossscripts}/qemuwrapper
qemu_binary=${@qemu_target_binary(d)}
- qemu_options='${QEMU_OPTIONS}'
- echo "$qemu_binary $qemu_options \"\$@\"" >> ${D}${bindir_crossscripts}/qemuwrapper
- fallback_qemu_bin=
- case $qemu_binary in
- "qemu-i386")
- fallback_qemu_bin=qemu-x86_64
- ;;
- "qemu-x86_64")
- fallback_qemu_bin=qemu-i386
- ;;
- *)
- ;;
- esac
-
- if [ -n "$fallback_qemu_bin" ]; then
-
- cat >> ${D}${bindir_crossscripts}/qemuwrapper << EOF
-rc=\$?
-if [ \$rc = 255 ]; then
- $fallback_qemu_bin "\$@"
- rc=\$?
+ qemu_options='${QEMU_OPTIONS} -E LD_LIBRARY_PATH=$D${libdir}:$D${base_libdir}'
+
+ cat >> ${D}${bindir_crossscripts}/${MLPREFIX}qemuwrapper << EOF
+#!/bin/sh
+set -x
+
+if [ ${@bb.utils.contains('MACHINE_FEATURES', 'qemu-usermode', 'True', 'False', d)} = False ]; then
+ echo "qemuwrapper: qemu usermode is not supported"
fi
-exit \$rc
-EOF
- fi
- chmod +x ${D}${bindir_crossscripts}/qemuwrapper
+$qemu_binary $qemu_options "\$@"
+EOF
+
+ chmod +x ${D}${bindir_crossscripts}/${MLPREFIX}qemuwrapper
}
SYSROOT_DIRS += "${bindir_crossscripts}"
INHIBIT_DEFAULT_DEPS = "1"
+
+BBCLASSEXTEND = "nativesdk"
diff --git a/poky/meta/recipes-devtools/quilt/quilt.inc b/poky/meta/recipes-devtools/quilt/quilt.inc
index c7bb741b4..48ed9babf 100644
--- a/poky/meta/recipes-devtools/quilt/quilt.inc
+++ b/poky/meta/recipes-devtools/quilt/quilt.inc
@@ -16,24 +16,8 @@ SRC_URI[sha256sum] = "f6cbc788e5cbbb381a3c6eab5b9efce67c776a8662a7795c7432fd27aa
inherit autotools-brokensep ptest
-EXTRA_OECONF_darwin += "--without-date \
- --without-getopt \
- "
-
CLEANBROKEN = "1"
-PACKAGES += "guards guards-doc"
-FILES_${PN} = "${sysconfdir} ${datadir}/quilt \
- ${bindir}/quilt ${libdir}/quilt"
-FILES_guards = "${bindir}/guards"
-FILES_${PN}-doc = "${mandir}/man1/quilt.1 ${docdir}/${BPN}"
-FILES_guards-doc = "${mandir}/man1/guards.1"
-
-RDEPENDS_${PN} = "bash"
-
-EXTRA_OE_MAKE_ARGS_darwin ?= ""
-EXTRA_OE_MAKE_ARGS ?= "BUILD_ROOT=${D}"
-
EXTRA_OECONF = "--with-perl='${USRBINPATH}/env perl' --with-patch=patch"
CACHED_CONFIGUREVARS += "ac_cv_path_BASH=/bin/bash"
@@ -49,9 +33,9 @@ do_configure_append () {
sed -e 's,^COMPAT_SYMLINKS.*:=.*,COMPAT_SYMLINKS :=,' -i ${S}/Makefile
}
-# quilt ignores DESTDIR
+# quilt Makefiles install to BUILD_ROOT instead of DESTDIR
do_install () {
- oe_runmake ${EXTRA_OE_MAKE_ARGS} install
+ oe_runmake 'BUILD_ROOT=${D}' install
# cleanup unpackaged files
rm -rf ${D}/${datadir}/emacs
}
@@ -69,6 +53,15 @@ do_install_ptest() {
cp ${WORKDIR}/test.sh ${D}${PTEST_PATH}
}
+PACKAGES += "guards guards-doc"
+
+FILES_${PN} = "${sysconfdir} ${datadir}/quilt \
+ ${bindir}/quilt ${libdir}/quilt"
+FILES_guards = "${bindir}/guards"
+FILES_${PN}-doc = "${mandir}/man1/quilt.1 ${docdir}/${BPN}"
+FILES_guards-doc = "${mandir}/man1/guards.1"
+
+RDEPENDS_${PN} = "bash"
RDEPENDS_${PN}-ptest = "make file sed gawk diffutils findutils ed perl \
perl-module-filehandle perl-module-getopt-std \
perl-module-posix perl-module-file-temp \
diff --git a/poky/meta/recipes-devtools/rpm/files/0001-Do-not-hardcode-lib-rpm-as-the-installation-path-for.patch b/poky/meta/recipes-devtools/rpm/files/0001-Do-not-hardcode-lib-rpm-as-the-installation-path-for.patch
index 5604cb903..82e732875 100644
--- a/poky/meta/recipes-devtools/rpm/files/0001-Do-not-hardcode-lib-rpm-as-the-installation-path-for.patch
+++ b/poky/meta/recipes-devtools/rpm/files/0001-Do-not-hardcode-lib-rpm-as-the-installation-path-for.patch
@@ -1,7 +1,7 @@
-From c82c19dc583843b1a975f2e3f2e151656a6f377c Mon Sep 17 00:00:00 2001
+From bd08eb0ae1312f347f49949481daa7c923752df2 Mon Sep 17 00:00:00 2001
From: Alexander Kanavin <alex.kanavin@gmail.com>
Date: Mon, 27 Feb 2017 09:43:30 +0200
-Subject: [PATCH 06/14] Do not hardcode "lib/rpm" as the installation path for
+Subject: [PATCH] Do not hardcode "lib/rpm" as the installation path for
default configuration and macros.
Upstream-Status: Denied [https://github.com/rpm-software-management/rpm/pull/263]
@@ -14,10 +14,10 @@ Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
3 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/configure.ac b/configure.ac
-index 7155d9f00..21b95ae5f 100644
+index 09af7c4..9bd6903 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -1047,7 +1047,7 @@ else
+@@ -1055,7 +1055,7 @@ else
usrprefix=$prefix
fi
@@ -27,10 +27,10 @@ index 7155d9f00..21b95ae5f 100644
AC_SUBST(OBJDUMP)
diff --git a/macros.in b/macros.in
-index d08624856..68a972f1e 100644
+index a3aa7a9..62cee5c 100644
--- a/macros.in
+++ b/macros.in
-@@ -954,7 +954,7 @@ package or when debugging this package.\
+@@ -970,7 +970,7 @@ package or when debugging this package.\
%_sharedstatedir %{_prefix}/com
%_localstatedir %{_prefix}/var
%_lib lib
@@ -40,7 +40,7 @@ index d08624856..68a972f1e 100644
%_infodir %{_datadir}/info
%_mandir %{_datadir}/man
diff --git a/rpm.am b/rpm.am
-index 51225892d..e0c834d37 100644
+index 82c2d7c..6341b51 100644
--- a/rpm.am
+++ b/rpm.am
@@ -1,10 +1,10 @@
@@ -55,7 +55,4 @@ index 51225892d..e0c834d37 100644
+rpmconfigdir = $(libdir)/rpm
# Libtool version (current-revision-age) for all our libraries
- rpm_version_info = 8:1:0
---
-2.15.1
-
+ rpm_version_info = 9:0:1
diff --git a/poky/meta/recipes-devtools/rpm/files/0001-Do-not-reset-the-PATH-environment-variable-before-ru.patch b/poky/meta/recipes-devtools/rpm/files/0001-Do-not-reset-the-PATH-environment-variable-before-ru.patch
index bf24d43eb..41cdf6ed7 100644
--- a/poky/meta/recipes-devtools/rpm/files/0001-Do-not-reset-the-PATH-environment-variable-before-ru.patch
+++ b/poky/meta/recipes-devtools/rpm/files/0001-Do-not-reset-the-PATH-environment-variable-before-ru.patch
@@ -1,25 +1,23 @@
-From ffb5301a8594140ad7a58bc0f2053be8ca2b2946 Mon Sep 17 00:00:00 2001
+From a674b9cc7af448d7c6748bc163bf37dc14a57f09 Mon Sep 17 00:00:00 2001
From: Alexander Kanavin <alex.kanavin@gmail.com>
Date: Fri, 20 Jan 2017 13:32:06 +0200
-Subject: [PATCH 1/2] Do not reset the PATH environment variable before running
+Subject: [PATCH] Do not reset the PATH environment variable before running
scriptlets.
We add lots of native stuff into it and scriptlets rely on that.
-Also need to remove the xx test later in the function since the
-value could now be used un-initialised.
-
Upstream-Status: Inappropriate [oe-core specific]
Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+
---
lib/rpmscript.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/lib/rpmscript.c b/lib/rpmscript.c
-index 92f949fa2..7c1aa75a8 100644
+index 6a31e0d..2b0e438 100644
--- a/lib/rpmscript.c
+++ b/lib/rpmscript.c
-@@ -201,7 +201,7 @@ static void doScriptExec(ARGV_const_t argv, ARGV_const_t prefixes,
+@@ -184,7 +184,7 @@ static void doScriptExec(ARGV_const_t argv, ARGV_const_t prefixes,
if (ipath && ipath[5] != '%')
path = ipath;
@@ -28,13 +26,3 @@ index 92f949fa2..7c1aa75a8 100644
free(ipath);
}
-@@ -206,9 +206,7 @@ static void doScriptExec(ARGV_const_t ar
- /* XXX Don't mtrace into children. */
- unsetenv("MALLOC_CHECK_");
-
-- if (xx == 0) {
- xx = execv(argv[0], argv);
-- }
- }
- _exit(127); /* exit 127 for compatibility with bash(1) */
- }
diff --git a/poky/meta/recipes-devtools/rpm/files/0001-Factor-out-and-unify-setting-CLOEXEC.patch b/poky/meta/recipes-devtools/rpm/files/0001-Factor-out-and-unify-setting-CLOEXEC.patch
deleted file mode 100644
index 6f440c617..000000000
--- a/poky/meta/recipes-devtools/rpm/files/0001-Factor-out-and-unify-setting-CLOEXEC.patch
+++ /dev/null
@@ -1,148 +0,0 @@
-From 9c3e5de3240554c8ea1b29d52eeadee4840fefac Mon Sep 17 00:00:00 2001
-From: Kir Kolyshkin <kolyshkin@gmail.com>
-Date: Tue, 29 May 2018 17:37:05 -0700
-Subject: [PATCH 1/3] Factor out and unify setting CLOEXEC
-
-Commit 7a7c31f5 ("Set FD_CLOEXEC on opened files before exec from
-lua script is called") copied the code that sets CLOEXEC flag on all
-possible file descriptors from lib/rpmscript.c to luaext/lposix.c,
-essentially creating two copies of the same code (modulo comments
-and the unused assignment).
-
-This commit moves the functionality into its own function, without
-any code modifications, using the version from luaext/lposix.c.
-
-Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
-Upstream-Status: Accepted [https://github.com/rpm-software-management/rpm/pull/444]
-Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
----
- lib/rpmscript.c | 18 ++----------------
- luaext/lposix.c | 13 ++-----------
- rpmio/rpmio.c | 16 ++++++++++++++++
- rpmio/rpmio_internal.h | 6 ++++++
- 4 files changed, 26 insertions(+), 27 deletions(-)
-
-diff --git a/lib/rpmscript.c b/lib/rpmscript.c
-index 747385a5b..b4ccd3246 100644
---- a/lib/rpmscript.c
-+++ b/lib/rpmscript.c
-@@ -3,7 +3,6 @@
- #include <sys/types.h>
- #include <sys/wait.h>
- #include <errno.h>
--#include <unistd.h>
-
- #include <rpm/rpmfileutil.h>
- #include <rpm/rpmmacro.h>
-@@ -14,6 +13,7 @@
-
- #include "rpmio/rpmlua.h"
- #include "lib/rpmscript.h"
-+#include "rpmio/rpmio_internal.h"
-
- #include "lib/rpmplugins.h" /* rpm plugins hooks */
-
-@@ -170,26 +170,12 @@ static const char * const SCRIPT_PATH = "PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr
- static void doScriptExec(ARGV_const_t argv, ARGV_const_t prefixes,
- FD_t scriptFd, FD_t out)
- {
-- int flag;
-- int fdno;
- int xx;
-- int open_max;
-
- /* SIGPIPE is ignored in rpm, reset to default for the scriptlet */
- (void) signal(SIGPIPE, SIG_DFL);
-
-- /* XXX Force FD_CLOEXEC on all inherited fdno's. */
-- open_max = sysconf(_SC_OPEN_MAX);
-- if (open_max == -1) {
-- open_max = 1024;
-- }
-- for (fdno = 3; fdno < open_max; fdno++) {
-- flag = fcntl(fdno, F_GETFD);
-- if (flag == -1 || (flag & FD_CLOEXEC))
-- continue;
-- xx = fcntl(fdno, F_SETFD, FD_CLOEXEC);
-- /* XXX W2DO? debug msg for inheirited fdno w/o FD_CLOEXEC */
-- }
-+ rpmSetCloseOnExec();
-
- if (scriptFd != NULL) {
- int sfdno = Fileno(scriptFd);
-diff --git a/luaext/lposix.c b/luaext/lposix.c
-index 0a7c26c71..5d7ad3c87 100644
---- a/luaext/lposix.c
-+++ b/luaext/lposix.c
-@@ -27,6 +27,7 @@
- #include <unistd.h>
- #include <utime.h>
- #include <rpm/rpmutil.h>
-+#include "rpmio/rpmio_internal.h"
-
- #define MYNAME "posix"
- #define MYVERSION MYNAME " library for " LUA_VERSION " / Nov 2003"
-@@ -335,21 +336,11 @@ static int Pexec(lua_State *L) /** exec(path,[args]) */
- const char *path = luaL_checkstring(L, 1);
- int i,n=lua_gettop(L);
- char **argv;
-- int flag, fdno, open_max;
-
- if (!have_forked)
- return luaL_error(L, "exec not permitted in this context");
-
-- open_max = sysconf(_SC_OPEN_MAX);
-- if (open_max == -1) {
-- open_max = 1024;
-- }
-- for (fdno = 3; fdno < open_max; fdno++) {
-- flag = fcntl(fdno, F_GETFD);
-- if (flag == -1 || (flag & FD_CLOEXEC))
-- continue;
-- fcntl(fdno, F_SETFD, FD_CLOEXEC);
-- }
-+ rpmSetCloseOnExec();
-
- argv = malloc((n+1)*sizeof(char*));
- if (argv==NULL) return luaL_error(L,"not enough memory");
-diff --git a/rpmio/rpmio.c b/rpmio/rpmio.c
-index c7cbc32aa..ea111d2ec 100644
---- a/rpmio/rpmio.c
-+++ b/rpmio/rpmio.c
-@@ -1759,3 +1759,19 @@ DIGEST_CTX fdDupDigest(FD_t fd, int id)
-
- return ctx;
- }
-+
-+void rpmSetCloseOnExec(void)
-+{
-+ int flag, fdno, open_max;
-+
-+ open_max = sysconf(_SC_OPEN_MAX);
-+ if (open_max == -1) {
-+ open_max = 1024;
-+ }
-+ for (fdno = 3; fdno < open_max; fdno++) {
-+ flag = fcntl(fdno, F_GETFD);
-+ if (flag == -1 || (flag & FD_CLOEXEC))
-+ continue;
-+ fcntl(fdno, F_SETFD, FD_CLOEXEC);
-+ }
-+}
-diff --git a/rpmio/rpmio_internal.h b/rpmio/rpmio_internal.h
-index fbed183b0..370cbdc75 100644
---- a/rpmio/rpmio_internal.h
-+++ b/rpmio/rpmio_internal.h
-@@ -41,6 +41,12 @@ DIGEST_CTX fdDupDigest(FD_t fd, int id);
- int rpmioSlurp(const char * fn,
- uint8_t ** bp, ssize_t * blenp);
-
-+/**
-+ * Set close-on-exec flag for all opened file descriptors, except
-+ * stdin/stdout/stderr.
-+ */
-+void rpmSetCloseOnExec(void);
-+
- #ifdef __cplusplus
- }
- #endif
diff --git a/poky/meta/recipes-devtools/rpm/files/0001-configure.ac-add-option-for-dbus.patch b/poky/meta/recipes-devtools/rpm/files/0001-configure.ac-add-option-for-dbus.patch
deleted file mode 100644
index dc71d9b18..000000000
--- a/poky/meta/recipes-devtools/rpm/files/0001-configure.ac-add-option-for-dbus.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-From dfb422c744fdc1838afc40b8e1f161bb46093d92 Mon Sep 17 00:00:00 2001
-From: Chen Qi <Qi.Chen@windriver.com>
-Date: Sun, 8 Apr 2018 12:06:42 +0800
-Subject: [PATCH] configure.ac: add option for dbus
-
-Add option for dbus so that users could choose to build with dbus
-or with no dbus.
-
-Upstream-Status: Pending
-
-Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
----
- configure.ac | 11 +++++++----
- 1 file changed, 7 insertions(+), 4 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index 4db15c7909..493f393d31 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -976,12 +976,15 @@ AS_IF([test "$enable_plugins" = yes],[
- ])
- AM_CONDITIONAL(ENABLE_PLUGINS,[test "$enable_plugins" = yes])
-
--with_dbus=no
--AS_IF([test "$enable_plugins" != no],[
-+AC_ARG_WITH([dbus], [AS_HELP_STRING([--with-dbus], [build with dbus support])],
-+ [],
-+ [with_dbus=yes])
-+
-+AS_IF([test "$with_dbus" != no],[
- PKG_CHECK_MODULES([DBUS],
- [dbus-1 >= 1.3],
-- [AC_DEFINE(DBUS, 1, [Build with dbus support?]) with_dbus=yes],
-- [with_dbus=no])
-+ [AC_DEFINE(DBUS, 1, [Build with dbus support?])],
-+ [AC_MSG_ERROR([dbus not present (--without-dbus to disable)])])
- AC_SUBST(DBUS_CFLAGS)
- AC_SUBST(DBUS_LIBS)
- ])
---
-2.11.0
-
diff --git a/poky/meta/recipes-devtools/rpm/files/0001-rpm-rpmio.c-restrict-virtual-memory-usage-if-limit-s.patch b/poky/meta/recipes-devtools/rpm/files/0001-rpm-rpmio.c-restrict-virtual-memory-usage-if-limit-s.patch
new file mode 100644
index 000000000..645478525
--- /dev/null
+++ b/poky/meta/recipes-devtools/rpm/files/0001-rpm-rpmio.c-restrict-virtual-memory-usage-if-limit-s.patch
@@ -0,0 +1,65 @@
+From 0066b862bb3a09f39295abd5d972a53ac8dc1555 Mon Sep 17 00:00:00 2001
+From: Peter Bergin <peter@berginkonsult.se>
+Date: Wed, 19 Sep 2018 15:12:31 +0200
+Subject: [PATCH] rpm/rpmio.c: restrict virtual memory usage if limit set
+
+A solution to avoid OOM situation when the virtual memory is restricted
+for a user (ulimit -v). As the lzopen_internal function is run in parallel
+one instance per CPU thread the available virtual memory is limited per
+CPU thread.
+
+Upstream-Status: Pending [merge of multithreading patches to upstream]
+
+Signed-off-by: Peter Bergin <peter@berginkonsult.se>
+---
+ rpmio/rpmio.c | 34 ++++++++++++++++++++++++++++++++++
+ 1 file changed, 34 insertions(+)
+
+diff --git a/rpmio/rpmio.c b/rpmio/rpmio.c
+index e051c98..b3c56b6 100644
+--- a/rpmio/rpmio.c
++++ b/rpmio/rpmio.c
+@@ -845,6 +845,40 @@ static LZFILE *lzopen_internal(const char *mode, int fd, int xz)
+ }
+ #endif
+
++ struct rlimit virtual_memory;
++ getrlimit(RLIMIT_AS, &virtual_memory);
++ if (virtual_memory.rlim_cur != RLIM_INFINITY) {
++ const uint64_t virtual_memlimit = virtual_memory.rlim_cur;
++ const uint64_t virtual_memlimit_per_cpu_thread =
++ virtual_memlimit / lzma_cputhreads();
++ uint64_t memory_usage_virt;
++ rpmlog(RPMLOG_NOTICE, "XZ: virtual memory restricted to %lu and "
++ "per CPU thread %lu\n", virtual_memlimit, virtual_memlimit_per_cpu_thread);
++ /* keep reducing the number of compression threads until memory
++ usage falls below the limit per CPU thread*/
++ while ((memory_usage_virt = lzma_stream_encoder_mt_memusage(&mt_options)) >
++ virtual_memlimit_per_cpu_thread) {
++ /* If number of threads goes down to zero lzma_stream_encoder will
++ * will return UINT64_MAX. We must check here to avoid an infinite loop.
++ * If we get into situation that one thread requires more virtual memory
++ * than available we set one thread, print error message and try anyway. */
++ if (--mt_options.threads == 0) {
++ mt_options.threads = 1;
++ rpmlog(RPMLOG_WARNING,
++ "XZ: Could not adjust number of threads to get below "
++ "virtual memory limit %lu. usage %lu\n",
++ virtual_memlimit_per_cpu_thread, memory_usage_virt);
++ break;
++ }
++ }
++ if (threads != (int)mt_options.threads)
++ rpmlog(RPMLOG_NOTICE,
++ "XZ: Adjusted the number of threads from %d to %d to not "
++ "exceed the memory usage limit of %lu bytes\n",
++ threads, mt_options.threads, virtual_memlimit);
++
++ }
++
+ ret = lzma_stream_encoder_mt(&lzfile->strm, &mt_options);
+ }
+ #endif
+--
+2.7.4
+
diff --git a/poky/meta/recipes-devtools/rpm/files/0002-Optimize-rpmSetCloseOnExec.patch b/poky/meta/recipes-devtools/rpm/files/0002-Optimize-rpmSetCloseOnExec.patch
deleted file mode 100644
index a27f8e623..000000000
--- a/poky/meta/recipes-devtools/rpm/files/0002-Optimize-rpmSetCloseOnExec.patch
+++ /dev/null
@@ -1,100 +0,0 @@
-From 5e6f05cd8dad6c1ee6bd1e6e43f176976c9c3416 Mon Sep 17 00:00:00 2001
-From: Kir Kolyshkin <kolyshkin@gmail.com>
-Date: Tue, 29 May 2018 17:52:56 -0700
-Subject: [PATCH 2/3] Optimize rpmSetCloseOnExec
-
-In case maximum number of open files limit is set too high, both
-luaext/Pexec() and lib/doScriptExec() spend way too much time
-trying to set FD_CLOEXEC flag for all those file descriptors,
-resulting in severe increase of time it takes to execute say
-rpm or dnf.
-
-This becomes increasingly noticeable when running with e.g. under
-Docker, the reason being:
-
-> $ docker run fedora ulimit -n
-> 1048576
-
-One obvious fix is to use procfs to get the actual list of opened fds
-and iterate over it. My quick-n-dirty benchmark shows the /proc approach
-is about 10x faster than iterating through a list of just 1024 fds,
-so it's an improvement even for default ulimit values.
-
-Note that the old method is still used in case /proc is not available.
-
-While at it,
-
- 1. fix the function by making sure we modify (rather than set)
- the existing flags. As the only known flag is FD_CLOEXEC,
- this change is currently purely aesthetical, but in case
- other flags will appear it will become a real bug fix.
-
- 2. get rid of magic number 3; use STDERR_FILENO
-
-Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
-
-Fixes #444
-
-Upstream-Status: Accepted [https://github.com/rpm-software-management/rpm/pull/444]
-Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
----
- rpmio/rpmio.c | 43 ++++++++++++++++++++++++++++++++++---------
- 1 file changed, 34 insertions(+), 9 deletions(-)
-
-diff --git a/rpmio/rpmio.c b/rpmio/rpmio.c
-index ea111d2ec..55351c221 100644
---- a/rpmio/rpmio.c
-+++ b/rpmio/rpmio.c
-@@ -1760,18 +1760,43 @@ DIGEST_CTX fdDupDigest(FD_t fd, int id)
- return ctx;
- }
-
-+static void set_cloexec(int fd)
-+{
-+ int flags = fcntl(fd, F_GETFD);
-+
-+ if (flags == -1 || (flags & FD_CLOEXEC))
-+ return;
-+
-+ fcntl(fd, F_SETFD, flags | FD_CLOEXEC);
-+}
-+
- void rpmSetCloseOnExec(void)
- {
-- int flag, fdno, open_max;
-+ const int min_fd = STDERR_FILENO; /* don't touch stdin/out/err */
-+ int fd;
-+
-+ DIR *dir = opendir("/proc/self/fd");
-+ if (dir == NULL) { /* /proc not available */
-+ /* iterate over all possible fds, might be slow */
-+ int open_max = sysconf(_SC_OPEN_MAX);
-+ if (open_max == -1)
-+ open_max = 1024;
-
-- open_max = sysconf(_SC_OPEN_MAX);
-- if (open_max == -1) {
-- open_max = 1024;
-+ for (fd = min_fd + 1; fd < open_max; fd++)
-+ set_cloexec(fd);
-+
-+ return;
- }
-- for (fdno = 3; fdno < open_max; fdno++) {
-- flag = fcntl(fdno, F_GETFD);
-- if (flag == -1 || (flag & FD_CLOEXEC))
-- continue;
-- fcntl(fdno, F_SETFD, FD_CLOEXEC);
-+
-+ /* iterate over fds obtained from /proc */
-+ struct dirent *entry;
-+ while ((entry = readdir(dir)) != NULL) {
-+ fd = atoi(entry->d_name);
-+ if (fd > min_fd)
-+ set_cloexec(fd);
- }
-+
-+ closedir(dir);
-+
-+ return;
- }
diff --git a/poky/meta/recipes-devtools/rpm/files/0003-rpmSetCloseOnExec-use-getrlimit.patch b/poky/meta/recipes-devtools/rpm/files/0003-rpmSetCloseOnExec-use-getrlimit.patch
deleted file mode 100644
index 389b41b42..000000000
--- a/poky/meta/recipes-devtools/rpm/files/0003-rpmSetCloseOnExec-use-getrlimit.patch
+++ /dev/null
@@ -1,53 +0,0 @@
-From 307e28b4cb08b05bc044482058eeebc9f59bb9a9 Mon Sep 17 00:00:00 2001
-From: Kir Kolyshkin <kolyshkin@gmail.com>
-Date: Tue, 29 May 2018 18:09:27 -0700
-Subject: [PATCH 3/3] rpmSetCloseOnExec: use getrlimit()
-
-In case /proc is not available to get the actual list of opened fds,
-we fall back to iterating through the list of all possible fds.
-
-It is possible that during the course of the program execution the limit
-on number of open file descriptors might be lowered, so using the
-current limit, as returned by sysconf(_SC_OPEN_MAX), might omit some
-fds. Therefore, it is better to use rlim_max from the structure
-filled in by gertlimit(RLIMIT_NOFILE) to make sure we're checking
-all fds.
-
-This slows down the function, but only in the case /proc is not
-available, which should be rare in practice.
-
-Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
-Upstream-Status: Accepted [https://github.com/rpm-software-management/rpm/pull/444]
-Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
----
- rpmio/rpmio.c | 10 +++++++++-
- 1 file changed, 9 insertions(+), 1 deletion(-)
-
-diff --git a/rpmio/rpmio.c b/rpmio/rpmio.c
-index 55351c221..e051c9863 100644
---- a/rpmio/rpmio.c
-+++ b/rpmio/rpmio.c
-@@ -10,6 +10,7 @@
- #include <sys/personality.h>
- #endif
- #include <sys/utsname.h>
-+#include <sys/resource.h>
-
- #include <rpm/rpmlog.h>
- #include <rpm/rpmmacro.h>
-@@ -1778,7 +1779,14 @@ void rpmSetCloseOnExec(void)
- DIR *dir = opendir("/proc/self/fd");
- if (dir == NULL) { /* /proc not available */
- /* iterate over all possible fds, might be slow */
-- int open_max = sysconf(_SC_OPEN_MAX);
-+ struct rlimit rl;
-+ int open_max;
-+
-+ if (getrlimit(RLIMIT_NOFILE, &rl) == 0 && rl.rlim_max != RLIM_INFINITY)
-+ open_max = rl.rlim_max;
-+ else
-+ open_max = sysconf(_SC_OPEN_MAX);
-+
- if (open_max == -1)
- open_max = 1024;
-
diff --git a/poky/meta/recipes-devtools/rpm/files/0004-build-pack.c-remove-static-local-variables-from-buil.patch b/poky/meta/recipes-devtools/rpm/files/0004-build-pack.c-remove-static-local-variables-from-buil.patch
index 8989dcebd..652e30b3e 100644
--- a/poky/meta/recipes-devtools/rpm/files/0004-build-pack.c-remove-static-local-variables-from-buil.patch
+++ b/poky/meta/recipes-devtools/rpm/files/0004-build-pack.c-remove-static-local-variables-from-buil.patch
@@ -1,8 +1,8 @@
-From 8ce9fbab2990609bdace457e146160334e931c89 Mon Sep 17 00:00:00 2001
+From 792693bb90768cfde4898e8dd31ee1b5de803d2f Mon Sep 17 00:00:00 2001
From: Alexander Kanavin <alex.kanavin@gmail.com>
Date: Thu, 8 Jun 2017 17:08:09 +0300
-Subject: [PATCH 14/15] build/pack.c: remove static local variables from
- buildHost() and getBuildTime()
+Subject: [PATCH] build/pack.c: remove static local variables from buildHost()
+ and getBuildTime()
Their use is causing difficult to diagnoze data races when building multiple
packages in parallel, and is a bad idea in general, as it also makes it more
@@ -20,7 +20,7 @@ Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
3 files changed, 74 insertions(+), 72 deletions(-)
diff --git a/build/build.c b/build/build.c
-index 81152e53e..6001f9e52 100644
+index 13c3df2..b154f08 100644
--- a/build/build.c
+++ b/build/build.c
@@ -6,6 +6,8 @@
@@ -99,7 +99,7 @@ index 81152e53e..6001f9e52 100644
if (((what & RPMBUILD_PACKAGESOURCE) && !test) &&
- (rc = packageSources(spec, &cookie)))
+ (rc = packageSources(spec, &cookie, buildTime, host)))
- return rc;
+ goto exit;
if (((what & RPMBUILD_PACKAGEBINARY) && !test) &&
- (rc = packageBinaries(spec, cookie, (didBuild == 0))))
@@ -116,7 +116,7 @@ index 81152e53e..6001f9e52 100644
spec->rootDir = NULL;
if (rc != RPMRC_OK && rpmlogGetNrecs() > 0) {
diff --git a/build/pack.c b/build/pack.c
-index df15876ff..17a4b0905 100644
+index df15876..17a4b09 100644
--- a/build/pack.c
+++ b/build/pack.c
@@ -6,8 +6,6 @@
@@ -305,7 +305,7 @@ index df15876ff..17a4b0905 100644
/* Do check SRPM package if enabled */
if (rc == RPMRC_OK && pkgcheck[0] != ' ') {
diff --git a/build/rpmbuild_internal.h b/build/rpmbuild_internal.h
-index 439b7d3b5..07e8338ad 100644
+index 439b7d3..07e8338 100644
--- a/build/rpmbuild_internal.h
+++ b/build/rpmbuild_internal.h
@@ -427,19 +427,23 @@ rpmRC processSourceFiles(rpmSpec spec, rpmBuildPkgFlags pkgFlags);
@@ -334,6 +334,3 @@ index 439b7d3b5..07e8338ad 100644
RPM_GNUC_INTERNAL
int addLangTag(rpmSpec spec, Header h, rpmTagVal tag,
---
-2.14.2
-
diff --git a/poky/meta/recipes-devtools/rpm/rpm_4.14.1.bb b/poky/meta/recipes-devtools/rpm/rpm_4.14.2.bb
index 1a03a0fce..200fe4da2 100644
--- a/poky/meta/recipes-devtools/rpm/rpm_4.14.1.bb
+++ b/poky/meta/recipes-devtools/rpm/rpm_4.14.2.bb
@@ -39,14 +39,11 @@ SRC_URI = "git://github.com/rpm-software-management/rpm;branch=rpm-4.14.x \
file://0003-rpmstrpool.c-make-operations-over-string-pools-threa.patch \
file://0004-build-pack.c-remove-static-local-variables-from-buil.patch \
file://0001-perl-disable-auto-reqs.patch \
- file://0001-configure.ac-add-option-for-dbus.patch \
- file://0001-Factor-out-and-unify-setting-CLOEXEC.patch \
- file://0002-Optimize-rpmSetCloseOnExec.patch \
- file://0003-rpmSetCloseOnExec-use-getrlimit.patch \
+ file://0001-rpm-rpmio.c-restrict-virtual-memory-usage-if-limit-s.patch \
"
PE = "1"
-SRCREV = "bfee1410af51c1cc9724791fb8d985260a62102b"
+SRCREV = "753f6941dc32e94047b7cfe713ddd604a810b4db"
S = "${WORKDIR}/git"
@@ -68,14 +65,16 @@ EXTRA_OECONF_append_libc-musl = " --disable-nls"
#
# Disable dbus for native, so that rpm doesn't attempt to inhibit shutdown via session dbus even when plugins support is enabled.
# Also disable plugins by default for native.
-EXTRA_OECONF_append_class-native = " --sysconfdir=/etc --localstatedir=/var --without-dbus --disable-plugins"
-EXTRA_OECONF_append_class-nativesdk = " --sysconfdir=/etc --localstatedir=/var --without-dbus --disable-plugins"
+EXTRA_OECONF_append_class-native = " --sysconfdir=/etc --localstatedir=/var --disable-plugins"
+EXTRA_OECONF_append_class-nativesdk = " --sysconfdir=/etc --localstatedir=/var --disable-plugins"
BBCLASSEXTEND = "native nativesdk"
PACKAGECONFIG ??= ""
PACKAGECONFIG[imaevm] = "--with-imaevm,,ima-evm-utils"
+ASNEEDED = ""
+
# Direct rpm-native to read configuration from our sysroot, not the one it was compiled in
# libmagic also has sysroot path contamination, so override it
diff --git a/poky/meta/recipes-devtools/rsync/rsync.inc b/poky/meta/recipes-devtools/rsync/rsync.inc
deleted file mode 100644
index 26c023af7..000000000
--- a/poky/meta/recipes-devtools/rsync/rsync.inc
+++ /dev/null
@@ -1,20 +0,0 @@
-SUMMARY = "File synchronization tool"
-HOMEPAGE = "http://rsync.samba.org/"
-BUGTRACKER = "http://rsync.samba.org/bugzilla.html"
-SECTION = "console/network"
-
-DEPENDS = "popt"
-
-SRC_URI = "https://download.samba.org/pub/${BPN}/src/${BP}.tar.gz \
- file://rsyncd.conf"
-
-inherit autotools
-
-do_install_append() {
- install -d ${D}${sysconfdir}
- install -m 0644 ${WORKDIR}/rsyncd.conf ${D}${sysconfdir}
-}
-
-EXTRA_OEMAKE='STRIP=""'
-
-PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6,"
diff --git a/poky/meta/recipes-devtools/rsync/rsync_3.1.3.bb b/poky/meta/recipes-devtools/rsync/rsync_3.1.3.bb
index 84a02586b..29cb231f3 100644
--- a/poky/meta/recipes-devtools/rsync/rsync_3.1.3.bb
+++ b/poky/meta/recipes-devtools/rsync/rsync_3.1.3.bb
@@ -1,24 +1,37 @@
-require rsync.inc
+SUMMARY = "File synchronization tool"
+HOMEPAGE = "http://rsync.samba.org/"
+BUGTRACKER = "http://rsync.samba.org/bugzilla.html"
+SECTION = "console/network"
+# GPLv2+ (<< 3.0.0), GPLv3+ (>= 3.0.0)
+LICENSE = "GPLv3+"
+LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
-SRC_URI += "file://makefile-no-rebuild.patch"
+DEPENDS = "popt"
+
+SRC_URI = "https://download.samba.org/pub/${BPN}/src/${BP}.tar.gz \
+ file://rsyncd.conf \
+ file://makefile-no-rebuild.patch \
+"
SRC_URI[md5sum] = "1581a588fde9d89f6bc6201e8129afaf"
SRC_URI[sha256sum] = "55cc554efec5fdaad70de921cd5a5eeb6c29a95524c715f3bbf849235b0800c0"
-# GPLv2+ (<< 3.0.0), GPLv3+ (>= 3.0.0)
-LICENSE = "GPLv3+"
-LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
+inherit autotools
PACKAGECONFIG ??= "acl attr \
${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)} \
"
+
PACKAGECONFIG[acl] = "--enable-acl-support,--disable-acl-support,acl,"
PACKAGECONFIG[attr] = "--enable-xattr-support,--disable-xattr-support,attr,"
+PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6,"
# By default, if crosscompiling, rsync disables a number of
# capabilities, hardlinking symlinks and special files (i.e. devices)
CACHED_CONFIGUREVARS += "rsync_cv_can_hardlink_special=yes rsync_cv_can_hardlink_symlink=yes"
+EXTRA_OEMAKE = 'STRIP=""'
+
# rsync 3.0 uses configure.sh instead of configure, and
# makefile checks the existence of configure.sh
do_configure_prepend () {
@@ -29,4 +42,9 @@ do_configure_append () {
cp -f ${S}/configure ${S}/configure.sh
}
+do_install_append() {
+ install -d ${D}${sysconfdir}
+ install -m 0644 ${WORKDIR}/rsyncd.conf ${D}${sysconfdir}
+}
+
BBCLASSEXTEND = "native"
diff --git a/poky/meta/recipes-devtools/ruby/ruby.inc b/poky/meta/recipes-devtools/ruby/ruby.inc
index fd3911ba7..5a5bef202 100644
--- a/poky/meta/recipes-devtools/ruby/ruby.inc
+++ b/poky/meta/recipes-devtools/ruby/ruby.inc
@@ -11,7 +11,7 @@ LIC_FILES_CHKSUM = "\
file://COPYING;md5=340948e1882e579731841bf49cdc22c1 \
file://BSDL;md5=19aaf65c88a40b508d17ae4be539c4b5\
file://GPL;md5=b234ee4d69f5fce4486a80fdaf4a4263\
- file://LEGAL;md5=8f871f3f03732c018a5fa9b185958231 \
+ file://LEGAL;md5=23a79bb4c1a40f6cc9bcb6f4e7c39799 \
"
DEPENDS = "ruby-native zlib openssl tcl libyaml gdbm readline"
diff --git a/poky/meta/recipes-devtools/ruby/ruby/CVE-2018-1000073.patch b/poky/meta/recipes-devtools/ruby/ruby/CVE-2018-1000073.patch
new file mode 100644
index 000000000..22fa1b5f4
--- /dev/null
+++ b/poky/meta/recipes-devtools/ruby/ruby/CVE-2018-1000073.patch
@@ -0,0 +1,34 @@
+From 1b931fc03b819b9a0214be3eaca844ef534175e2 Mon Sep 17 00:00:00 2001
+From: Jonathan Claudius <jclaudius@mozilla.com>
+Date: Wed, 7 Feb 2018 23:54:52 -0500
+Subject: [PATCH] Non-working patch for deducing symlinked base-dirs
+
+---
+CVE: CVE-2018-1000073
+
+Fixed in ruby 2.7.6.
+
+Upstream-Status: Backport [github.com/rubygems/rubygems/commit/1b931fc...]
+
+Signed-off-by: Joe Slater <joe.slater@windriver.com>
+
+---
+ lib/rubygems/package.rb | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/lib/rubygems/package.rb b/lib/rubygems/package.rb
+index dede959..cb9c74a 100644
+--- a/lib/rubygems/package.rb
++++ b/lib/rubygems/package.rb
+@@ -421,6 +421,8 @@ EOM
+ destination_dir = File.expand_path destination_dir
+
+ destination = File.join destination_dir, filename
++ destination = File.realpath destination if
++ File.respond_to? :realpath
+ destination = File.expand_path destination
+
+ raise Gem::Package::PathError.new(destination, destination_dir) unless
+--
+1.7.9.5
+
diff --git a/poky/meta/recipes-devtools/ruby/ruby_2.5.0.bb b/poky/meta/recipes-devtools/ruby/ruby_2.5.1.bb
index 1ac7f2aa5..1197323e9 100644
--- a/poky/meta/recipes-devtools/ruby/ruby_2.5.0.bb
+++ b/poky/meta/recipes-devtools/ruby/ruby_2.5.1.bb
@@ -3,10 +3,11 @@ require ruby.inc
SRC_URI += " \
file://ruby-CVE-2017-9226.patch \
file://ruby-CVE-2017-9228.patch \
+ file://CVE-2018-1000073.patch \
"
-SRC_URI[md5sum] = "f4711f856fe14de222b9da3d3b8efa89"
-SRC_URI[sha256sum] = "46e6f3630f1888eb653b15fa811d77b5b1df6fd7a3af436b343cfe4f4503f2ab"
+SRC_URI[md5sum] = "23867bc8c16c55e43b14dfe0614bcfa8"
+SRC_URI[sha256sum] = "dac81822325b79c3ba9532b048c2123357d3310b2b40024202f360251d9829b1"
# it's unknown to configure script, but then passed to extconf.rb
# maybe it's not really needed as we're hardcoding the result with
@@ -34,6 +35,26 @@ do_install() {
oe_runmake 'DESTDIR=${D}' install
}
+do_install_append_class-target () {
+ # Find out rbconfig.rb from .installed.list
+ rbconfig_rb=`grep rbconfig.rb ${B}/.installed.list`
+ # Remove build host directories
+ sed -i -e 's:--sysroot=${STAGING_DIR_TARGET}::g' \
+ -e s:'--with-libtool-sysroot=${STAGING_DIR_TARGET}'::g \
+ -e 's|${DEBUG_PREFIX_MAP}||g' \
+ -e 's:${HOSTTOOLS_DIR}/::g' \
+ -e 's:${RECIPE_SYSROOT_NATIVE}::g' \
+ -e 's:${RECIPE_SYSROOT}::g' \
+ -e 's:${BASE_WORKDIR}/${MULTIMACH_TARGET_SYS}::g' \
+ ${D}$rbconfig_rb
+
+ # Find out created.rid from .installed.list
+ created_rid=`grep created.rid ${B}/.installed.list`
+ # Remove build host directories
+ sed -i -e 's:${WORKDIR}::g' ${D}$created_rid
+
+}
+
PACKAGES =+ "${PN}-ri-docs ${PN}-rdoc"
SUMMARY_${PN}-ri-docs = "ri (Ruby Interactive) documentation for the Ruby standard library"
diff --git a/poky/meta/recipes-devtools/run-postinsts/run-postinsts/run-postinsts b/poky/meta/recipes-devtools/run-postinsts/run-postinsts/run-postinsts
index 307feb718..95eff04e1 100755
--- a/poky/meta/recipes-devtools/run-postinsts/run-postinsts/run-postinsts
+++ b/poky/meta/recipes-devtools/run-postinsts/run-postinsts/run-postinsts
@@ -6,7 +6,8 @@
#
# The following script will run all the scriptlets found in #SYSCONFDIR#/deb-postinsts,
-# #SYSCONFDIR#/ipk-postinsts or #SYSCONFDIR#/rpm-postinsts.
+# #SYSCONFDIR#/ipk-postinsts or #SYSCONFDIR#/rpm-postinsts or the package manager in
+# case available.
# the order of this list is important, do not change!
backend_list="rpm deb ipk"
@@ -14,27 +15,29 @@ backend_list="rpm deb ipk"
pm_installed=false
for pm in $backend_list; do
- pi_dir="#SYSCONFDIR#/$pm-postinsts"
-
- if [ ! -d $pi_dir ]; then
- continue
- fi
-
# found the package manager, it has postinsts
case $pm in
"deb")
if [ -s "#LOCALSTATEDIR#/lib/dpkg/status" ]; then
pm_installed=true
+ break
fi
;;
"ipk")
if [ -s "#LOCALSTATEDIR#/lib/opkg/status" ]; then
pm_installed=true
+ break
fi
;;
esac
- break
+
+ pi_dir="#SYSCONFDIR#/$pm-postinsts"
+
+ # found postinsts directory
+ if [ -d $pi_dir ]; then
+ break
+ fi
done
remove_rcsd_link () {
@@ -43,7 +46,7 @@ remove_rcsd_link () {
fi
}
-if ! [ -d $pi_dir ]; then
+if ! [ -d $pi_dir ] && ! $pm_installed; then
remove_rcsd_link
exit 0
fi
diff --git a/poky/meta/recipes-devtools/run-postinsts/run-postinsts/run-postinsts.service b/poky/meta/recipes-devtools/run-postinsts/run-postinsts/run-postinsts.service
index 1b71a1f8b..d42addf51 100644
--- a/poky/meta/recipes-devtools/run-postinsts/run-postinsts/run-postinsts.service
+++ b/poky/meta/recipes-devtools/run-postinsts/run-postinsts/run-postinsts.service
@@ -3,7 +3,6 @@ Description=Run pending postinsts
DefaultDependencies=no
After=systemd-remount-fs.service systemd-tmpfiles-setup.service tmp.mount
Before=sysinit.target
-ConditionPathExistsGlob=#SYSCONFDIR#/*-postinsts
[Service]
Type=oneshot
diff --git a/poky/meta/recipes-devtools/squashfs-tools/squashfs-tools_git.bb b/poky/meta/recipes-devtools/squashfs-tools/squashfs-tools_git.bb
index 1eb0154fd..2f4126345 100644
--- a/poky/meta/recipes-devtools/squashfs-tools/squashfs-tools_git.bb
+++ b/poky/meta/recipes-devtools/squashfs-tools/squashfs-tools_git.bb
@@ -37,6 +37,8 @@ do_install () {
install -m 0755 unsquashfs ${D}${sbindir}/
}
-ARM_INSTRUCTION_SET = "arm"
+ARM_INSTRUCTION_SET_armv4 = "arm"
+ARM_INSTRUCTION_SET_armv5 = "arm"
+ARM_INSTRUCTION_SET_armv6 = "arm"
BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-devtools/strace/strace/Makefile-ptest.patch b/poky/meta/recipes-devtools/strace/strace/Makefile-ptest.patch
index a12f4c3e4..460b6e26e 100644
--- a/poky/meta/recipes-devtools/strace/strace/Makefile-ptest.patch
+++ b/poky/meta/recipes-devtools/strace/strace/Makefile-ptest.patch
@@ -1,36 +1,31 @@
-From 0574ae9926308dcbca78bd8cd0f0f143f19cbcb5 Mon Sep 17 00:00:00 2001
+From 207fc7814bbeb0241382329215d21fd3b57066f9 Mon Sep 17 00:00:00 2001
From: Gabriel Barbu <gabriel.barbu@enea.com>
Date: Thu, 25 Jul 2013 15:28:33 +0200
-Subject: [PATCH 4/8] strace: Add ptest
+Subject: [PATCH] strace: Add ptest
Upstream-Status: Inappropriate
Signed-off-by: Gabriel Barbu <gabriel.barbu@enea.com>
Signed-off-by: Chong Lu <Chong.Lu@windriver.com>
+Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
---
- configure.ac | 2 +-
- tests/Makefile.am | 18 ++++++++++++++++++
- 2 files changed, 19 insertions(+), 1 deletion(-)
+ tests/Makefile.am | 19 +++++++++++++++++++
+ 1 file changed, 19 insertions(+)
-diff --git a/configure.ac b/configure.ac
-index 5f0aec4..8eaacc6 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -42,7 +42,7 @@ AC_COPYRIGHT([Copyright (c) 1999-]copyright_year[ The strace developers.])
- AC_CONFIG_SRCDIR([strace.c])
- AC_CONFIG_AUX_DIR([.])
- AC_CONFIG_HEADERS([config.h])
--AM_INIT_AUTOMAKE([foreign nostdinc dist-xz silent-rules parallel-tests 1.13])
-+AM_INIT_AUTOMAKE([foreign nostdinc dist-xz silent-rules serial-tests 1.13])
- AM_MAINTAINER_MODE
- AC_CANONICAL_HOST
-
diff --git a/tests/Makefile.am b/tests/Makefile.am
-index b4ba22a..5836438 100644
+index a2f3950..4fa97e2 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
-@@ -408,3 +408,21 @@ BUILT_SOURCES = ksysent.h
+@@ -34,6 +34,7 @@ SIZEOF_LONG = @SIZEOF_LONG@
+ MPERS_NAME =
+ MPERS_CC_FLAGS =
+ ARCH_MFLAGS =
++TEST_SUITE_LOG = test-suite.log
+ AM_CFLAGS = $(WARN_CFLAGS)
+ AM_CPPFLAGS = $(ARCH_MFLAGS) \
+ -I$(builddir) \
+@@ -490,3 +491,21 @@ BUILT_SOURCES = ksysent.h
CLEANFILES = ksysent.h
include ../scno.am
diff --git a/poky/meta/recipes-devtools/strace/strace/disable-git-version-gen.patch b/poky/meta/recipes-devtools/strace/strace/disable-git-version-gen.patch
index 76daf3a3b..9e5ec1109 100644
--- a/poky/meta/recipes-devtools/strace/strace/disable-git-version-gen.patch
+++ b/poky/meta/recipes-devtools/strace/strace/disable-git-version-gen.patch
@@ -1,20 +1,37 @@
-The git-version-gen script is not included in tarball releases,
-so we need to avoid attempts to call it when running autoreconf.
+From bee0680754730498485e24dd037303318c68916c Mon Sep 17 00:00:00 2001
+From: Andre McCurdy <armccurdy@gmail.com>
+Date: Mon, 18 Jan 2016 13:33:50 -0800
+Subject: [PATCH] strace: remove need for scripts
+
+git-version-gen copyright-year-gen file-date-gen are not included in
+tarball releases, so we need to avoid attempts to call them.
Upstream-Status: Inappropriate [configuration]
Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
+Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
+
+---
+ configure.ac | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/configure.ac b/configure.ac
-index 7004bd3..b2b03c6 100644
+index ad1d00f..96fa205 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -31,7 +31,7 @@
+@@ -32,12 +32,12 @@
AC_PREREQ(2.57)
AC_INIT([strace],
- m4_esyscmd([./git-version-gen .tarball-version]),
+ m4_esyscmd_s([cat .tarball-version]),
- [strace-devel@lists.sourceforge.net],
+ [strace-devel@lists.strace.io],
[strace],
[https://strace.io])
+-m4_define([copyright_year], m4_esyscmd([./copyright-year-gen .year]))
+-m4_define([manpage_date], m4_esyscmd([./file-date-gen strace.1.in]))
++m4_define([copyright_year], m4_esyscmd_s([cat .year]))
++m4_define([manpage_date], m4_esyscmd_s([cat .strace.1.in.date]))
+ AC_COPYRIGHT([Copyright (c) 1999-]copyright_year[ The strace developers.])
+ AC_CONFIG_SRCDIR([strace.c])
+ AC_CONFIG_AUX_DIR([.])
diff --git a/poky/meta/recipes-devtools/strace/strace/more-robust-test-for-m32-mx32-compile-support.patch b/poky/meta/recipes-devtools/strace/strace/more-robust-test-for-m32-mx32-compile-support.patch
index 756cd8bb8..3d4913d68 100644
--- a/poky/meta/recipes-devtools/strace/strace/more-robust-test-for-m32-mx32-compile-support.patch
+++ b/poky/meta/recipes-devtools/strace/strace/more-robust-test-for-m32-mx32-compile-support.patch
@@ -22,25 +22,23 @@ Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
m4/mpers.m4 | 2 ++
1 file changed, 2 insertions(+)
-diff --git a/m4/mpers.m4 b/m4/mpers.m4
-index 1fe8a8e..d72c717 100644
---- a/m4/mpers.m4
-+++ b/m4/mpers.m4
-@@ -53,12 +53,14 @@ case "$arch" in
- CFLAGS="$CFLAGS CFLAG $IFLAG"
- AC_CACHE_CHECK([for CFLAG compile support], [st_cv_cc],
+Index: strace-4.22/m4/mpers.m4
+===================================================================
+--- strace-4.22.orig/m4/mpers.m4
++++ strace-4.22/m4/mpers.m4
+@@ -108,6 +108,7 @@ case "$arch" in
+ CFLAGS="$CFLAGS MPERS_CFLAGS $IFLAG"
+ AC_CACHE_CHECK([for mpers_name personality compile support], [st_cv_cc],
[AC_COMPILE_IFELSE([AC_LANG_SOURCE([[#include <stdint.h>
+ #include <sys/syscall.h>
int main(){return 0;}]])],
[st_cv_cc=yes],
[st_cv_cc=no])])
- if test $st_cv_cc = yes; then
- AC_CACHE_CHECK([for CFLAG runtime support], [st_cv_runtime],
+@@ -115,6 +116,7 @@ case "$arch" in
+ AC_CACHE_CHECK([for mpers_name personality runtime support],
+ [st_cv_runtime],
[AC_RUN_IFELSE([AC_LANG_SOURCE([[#include <stdint.h>
+ #include <sys/syscall.h>
int main(){return 0;}]])],
[st_cv_runtime=yes],
[st_cv_runtime=no],
---
-1.9.1
-
diff --git a/poky/meta/recipes-devtools/strace/strace/run-ptest b/poky/meta/recipes-devtools/strace/strace/run-ptest
index 133cf92d0..8070d8317 100755
--- a/poky/meta/recipes-devtools/strace/strace/run-ptest
+++ b/poky/meta/recipes-devtools/strace/strace/run-ptest
@@ -1,2 +1,2 @@
#!/bin/sh
-make -C tests -k runtest-TESTS
+make -B -C tests -k test-suite.log
diff --git a/poky/meta/recipes-devtools/strace/strace_4.20.bb b/poky/meta/recipes-devtools/strace/strace_4.24.bb
index 869c12f65..9e40a064f 100644
--- a/poky/meta/recipes-devtools/strace/strace_4.20.bb
+++ b/poky/meta/recipes-devtools/strace/strace_4.24.bb
@@ -2,7 +2,7 @@ SUMMARY = "System call tracing tool"
HOMEPAGE = "http://strace.io"
SECTION = "console/utils"
LICENSE = "BSD"
-LIC_FILES_CHKSUM = "file://COPYING;md5=f132b4d2adfccc63da4139a609367711"
+LIC_FILES_CHKSUM = "file://COPYING;md5=6ddb91734b9c705f3e87362e97e5f64b"
SRC_URI = "https://strace.io/files/${PV}/strace-${PV}.tar.xz \
file://disable-git-version-gen.patch \
@@ -15,14 +15,11 @@ SRC_URI = "https://strace.io/files/${PV}/strace-${PV}.tar.xz \
file://0001-caps-abbrev.awk-fix-gawk-s-path.patch \
file://0001-tests-sigaction-Check-for-mips-and-alpha-before-usin.patch \
"
-
-SRC_URI[md5sum] = "f2271ab0fac49ebee9cbd7f3469227cb"
-SRC_URI[sha256sum] = "5bf3148dd17306a42566f7da17368fdd781afa147db05ea63a4ca2b50f58c523"
+SRC_URI[md5sum] = "8780136849c85acf76ad3a522aa4462a"
+SRC_URI[sha256sum] = "1f4e59fc1edfa2bfb4adf2a748623dc25b105ec79713dd84404199f91b0b0634"
inherit autotools ptest bluetooth
-RDEPENDS_${PN}-ptest += "make coreutils grep gawk sed"
-
PACKAGECONFIG_class-target ??= "\
${@bb.utils.contains('DISTRO_FEATURES', 'bluetooth', 'bluez', '', d)} \
"
@@ -30,6 +27,10 @@ PACKAGECONFIG_class-target ??= "\
PACKAGECONFIG[bluez] = "ac_cv_header_bluetooth_bluetooth_h=yes,ac_cv_header_bluetooth_bluetooth_h=no,${BLUEZ}"
PACKAGECONFIG[libunwind] = "--with-libunwind,--without-libunwind,libunwind"
+EXTRA_OECONF += "--enable-mpers=no"
+
+CFLAGS_append_libc-musl = " -Dsigcontext_struct=sigcontext"
+
TESTDIR = "tests"
do_install_append() {
@@ -43,6 +44,8 @@ do_compile_ptest() {
do_install_ptest() {
oe_runmake -C ${TESTDIR} install-ptest BUILDDIR=${B} DESTDIR=${D}${PTEST_PATH} TESTDIR=${TESTDIR}
+ install -m 755 ${S}/test-driver ${D}${PTEST_PATH}
+ install -m 644 ${B}/config.h ${D}${PTEST_PATH}
sed -i -e '/^src/s/strace.*[1-9]/ptest/' \
-e 's,--sysroot=${STAGING_DIR_TARGET},,g' \
-e 's|${DEBUG_PREFIX_MAP}||g' \
@@ -55,5 +58,7 @@ do_install_ptest() {
${D}/${PTEST_PATH}/${TESTDIR}/Makefile
}
+RDEPENDS_${PN}-ptest += "make coreutils grep gawk sed"
+
BBCLASSEXTEND = "native"
TOOLCHAIN = "gcc"
diff --git a/poky/meta/recipes-devtools/subversion/subversion_1.9.7.bb b/poky/meta/recipes-devtools/subversion/subversion_1.10.0.bb
index 57735f7f8..42c2562bf 100644
--- a/poky/meta/recipes-devtools/subversion/subversion_1.9.7.bb
+++ b/poky/meta/recipes-devtools/subversion/subversion_1.10.0.bb
@@ -1,45 +1,44 @@
SUMMARY = "Subversion (svn) version control system client"
+HOMEPAGE = "http://subversion.apache.org"
SECTION = "console/network"
-DEPENDS = "apr-util serf sqlite3 file"
-DEPENDS_append_class-native = " file-replacement-native"
-RDEPENDS_${PN} = "serf"
-LICENSE = "Apache-2"
-HOMEPAGE = "http://subversion.tigris.org"
-
-BBCLASSEXTEND = "native"
+LICENSE = "Apache-2 & MIT"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=83206f39819e7a4dfca2ff7c190f6ce0"
-inherit gettext pkgconfig
+DEPENDS = "apr-util serf sqlite3 file lz4"
+DEPENDS_append_class-native = " file-replacement-native"
SRC_URI = "${APACHE_MIRROR}/${BPN}/${BPN}-${PV}.tar.bz2 \
file://disable_macos.patch \
- file://serf.m4-Regex-modified-to-allow-D-in-paths.patch \
file://0001-Fix-libtool-name-in-configure.ac.patch \
file://serfmacro.patch \
"
-SRC_URI[md5sum] = "05b0c677681073920f938c1f322e0be2"
-SRC_URI[sha256sum] = "c3b118333ce12e501d509e66bb0a47bcc34d053990acab45559431ac3e491623"
+SRC_URI[md5sum] = "0126847f9e8cb8ed0b90a6a18b203309"
+SRC_URI[sha256sum] = "2cf23f3abb837dea0585a6b0ebd70e80e01f95bddef7c1aa097c18e3eaa6b584"
+
+inherit autotools pkgconfig gettext
-LIC_FILES_CHKSUM = "file://LICENSE;md5=af81ae49ba359e70626c05e9bf313709"
+PACKAGECONFIG ?= ""
PACKAGECONFIG[sasl] = "--with-sasl,--without-sasl,cyrus-sasl"
PACKAGECONFIG[gnome-keyring] = "--with-gnome-keyring,--without-gnome-keyring,glib-2.0 gnome-keyring"
EXTRA_OECONF = " \
- --without-berkeley-db --without-apxs \
- --without-swig --with-apr=${STAGING_BINDIR_CROSS} \
- --with-apr-util=${STAGING_BINDIR_CROSS} \
- --disable-keychain \
- ac_cv_path_RUBY=none"
+ --with-apr=${STAGING_BINDIR_CROSS} \
+ --with-apr-util=${STAGING_BINDIR_CROSS} \
+ --without-apxs \
+ --without-berkeley-db \
+ --without-swig \
+ --disable-keychain \
+ --with-utf8proc=internal \
+ ac_cv_path_RUBY=none \
+"
-inherit autotools
+acpaths = "-I build/ -I build/ac-macros/"
-export LDFLAGS += " -L${STAGING_LIBDIR} "
CPPFLAGS += "-P"
BUILD_CPPFLAGS += "-P"
-acpaths = "-I build/ -I build/ac-macros/"
-
do_configure_prepend () {
rm -f ${S}/libtool
rm -f ${S}/build/libtool.m4 ${S}/build/ltmain.sh ${S}/build/ltoptions.m4 ${S}/build/ltsugar.m4 ${S}/build/ltversion.m4 ${S}/build/lt~obsolete.m4
@@ -53,3 +52,7 @@ do_configure_prepend () {
#| /home/pokybuild/yocto-autobuilder/yocto-worker/nightly-qa-logrotate/build/build/tmp/work/x86_64-linux/subversion-native/1.8.9-r0/subversion-1.8.9/build-outputs.mk:1090: recipe for target 'install-serf-lib' failed
#| make: *** [install-serf-lib] Error 1
PARALLEL_MAKEINST = ""
+
+RDEPENDS_${PN} = "serf"
+
+BBCLASSEXTEND = "native"
diff --git a/poky/meta/recipes-devtools/swig/swig/Python-Fix-new-GCC8-warnings-in-generated-code.patch b/poky/meta/recipes-devtools/swig/swig/Python-Fix-new-GCC8-warnings-in-generated-code.patch
new file mode 100644
index 000000000..a91385916
--- /dev/null
+++ b/poky/meta/recipes-devtools/swig/swig/Python-Fix-new-GCC8-warnings-in-generated-code.patch
@@ -0,0 +1,191 @@
+From b6c0ef4b8f6e5c089ac7104b3aaba8f1d17b8b82 Mon Sep 17 00:00:00 2001
+From: Olly Betts <olly@survex.com>
+Date: Mon, 11 Jun 2018 15:51:53 +1200
+Subject: [PATCH] [Python] Fix new GCC8 warnings in generated code
+
+Avoid casts between incompatible function types where possible (when
+keyword args are in use, it is not possible to avoid such warnings as
+they are inherent in the design of Python's C API in that particular
+case). Fixes #1259.
+
+Upstream-Status: Backport
+[https://github.com/swig/swig/commit/7f9883011029674553a2a4b623d459f02b512458]
+
+Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
+---
+ Lib/python/pyinit.swg | 4 ++--
+ Lib/python/pyrun.swg | 34 ++++++++++++++++++++++++++--------
+ Source/Modules/python.cxx | 26 +++++++++++++-------------
+ 3 files changed, 41 insertions(+), 23 deletions(-)
+
+diff --git a/Lib/python/pyinit.swg b/Lib/python/pyinit.swg
+index 2cc5828..6bf68c1 100644
+--- a/Lib/python/pyinit.swg
++++ b/Lib/python/pyinit.swg
+@@ -368,8 +368,8 @@ SWIG_init(void) {
+ (char *)"this", &SwigPyBuiltin_ThisClosure, NULL, NULL, NULL
+ };
+ static SwigPyGetSet thisown_getset_closure = {
+- (PyCFunction) SwigPyObject_own,
+- (PyCFunction) SwigPyObject_own
++ SwigPyObject_own,
++ SwigPyObject_own
+ };
+ static PyGetSetDef thisown_getset_def = {
+ (char *)"thisown", SwigPyBuiltin_GetterClosure, SwigPyBuiltin_SetterClosure, NULL, &thisown_getset_closure
+diff --git a/Lib/python/pyrun.swg b/Lib/python/pyrun.swg
+index ab1237f..3d0b1b3 100644
+--- a/Lib/python/pyrun.swg
++++ b/Lib/python/pyrun.swg
+@@ -465,6 +465,14 @@ SwigPyObject_repr(SwigPyObject *v, PyObject *args)
+ return repr;
+ }
+
++/* We need a version taking two PyObject* parameters so it's a valid
++ * PyCFunction to use in swigobject_methods[]. */
++SWIGRUNTIME PyObject *
++SwigPyObject_repr2(PyObject *v, PyObject *SWIGUNUSEDPARM(args))
++{
++ return SwigPyObject_repr((SwigPyObject*)v);
++}
++
+ SWIGRUNTIME int
+ SwigPyObject_compare(SwigPyObject *v, SwigPyObject *w)
+ {
+@@ -594,11 +602,7 @@ SwigPyObject_append(PyObject* v, PyObject* next)
+ }
+
+ SWIGRUNTIME PyObject*
+-#ifdef METH_NOARGS
+-SwigPyObject_next(PyObject* v)
+-#else
+ SwigPyObject_next(PyObject* v, PyObject *SWIGUNUSEDPARM(args))
+-#endif
+ {
+ SwigPyObject *sobj = (SwigPyObject *) v;
+ if (sobj->next) {
+@@ -633,6 +637,20 @@ SwigPyObject_acquire(PyObject* v, PyObject *SWIGUNUSEDPARM(args))
+ return SWIG_Py_Void();
+ }
+
++#ifdef METH_NOARGS
++static PyObject*
++SwigPyObject_disown2(PyObject* v, PyObject *SWIGUNUSEDPARM(args))
++{
++ return SwigPyObject_disown(v);
++}
++
++static PyObject*
++SwigPyObject_acquire2(PyObject* v, PyObject *SWIGUNUSEDPARM(args))
++{
++ return SwigPyObject_acquire(v);
++}
++#endif
++
+ SWIGINTERN PyObject*
+ SwigPyObject_own(PyObject *v, PyObject *args)
+ {
+@@ -673,12 +691,12 @@ SwigPyObject_own(PyObject *v, PyObject *args)
+ #ifdef METH_O
+ static PyMethodDef
+ swigobject_methods[] = {
+- {(char *)"disown", (PyCFunction)SwigPyObject_disown, METH_NOARGS, (char *)"releases ownership of the pointer"},
+- {(char *)"acquire", (PyCFunction)SwigPyObject_acquire, METH_NOARGS, (char *)"acquires ownership of the pointer"},
++ {(char *)"disown", (PyCFunction)SwigPyObject_disown2, METH_NOARGS, (char *)"releases ownership of the pointer"},
++ {(char *)"acquire", (PyCFunction)SwigPyObject_acquire2,METH_NOARGS, (char *)"acquires ownership of the pointer"},
+ {(char *)"own", (PyCFunction)SwigPyObject_own, METH_VARARGS, (char *)"returns/sets ownership of the pointer"},
+ {(char *)"append", (PyCFunction)SwigPyObject_append, METH_O, (char *)"appends another 'this' object"},
+ {(char *)"next", (PyCFunction)SwigPyObject_next, METH_NOARGS, (char *)"returns the next 'this' object"},
+- {(char *)"__repr__",(PyCFunction)SwigPyObject_repr, METH_NOARGS, (char *)"returns object representation"},
++ {(char *)"__repr__",(PyCFunction)SwigPyObject_repr2, METH_NOARGS, (char *)"returns object representation"},
+ {0, 0, 0, 0}
+ };
+ #else
+@@ -689,7 +707,7 @@ swigobject_methods[] = {
+ {(char *)"own", (PyCFunction)SwigPyObject_own, METH_VARARGS, (char *)"returns/sets ownership of the pointer"},
+ {(char *)"append", (PyCFunction)SwigPyObject_append, METH_VARARGS, (char *)"appends another 'this' object"},
+ {(char *)"next", (PyCFunction)SwigPyObject_next, METH_VARARGS, (char *)"returns the next 'this' object"},
+- {(char *)"__repr__",(PyCFunction)SwigPyObject_repr, METH_VARARGS, (char *)"returns object representation"},
++ {(char *)"__repr__",(PyCFunction)SwigPyObject_repr, METH_VARARGS, (char *)"returns object representation"},
+ {0, 0, 0, 0}
+ };
+ #endif
+diff --git a/Source/Modules/python.cxx b/Source/Modules/python.cxx
+index a6801fc..72eaa77 100644
+--- a/Source/Modules/python.cxx
++++ b/Source/Modules/python.cxx
+@@ -1109,7 +1109,7 @@ public:
+ * ------------------------------------------------------------ */
+ int add_pyinstancemethod_new() {
+ String *name = NewString("SWIG_PyInstanceMethod_New");
+- Printf(methods, "\t { (char *)\"%s\", (PyCFunction)%s, METH_O, NULL},\n", name, name);
++ Printf(methods, "\t { \"%s\", %s, METH_O, NULL},\n", name, name);
+ Delete(name);
+ return 0;
+ }
+@@ -2479,17 +2479,17 @@ public:
+ if (!kw) {
+ if (n && funpack) {
+ if (num_required == 0 && num_arguments == 0) {
+- Printf(methods, "\t { (char *)\"%s\", (PyCFunction)%s, METH_NOARGS, ", name, function);
++ Printf(methods, "\t { \"%s\", %s, METH_NOARGS, ", name, function);
+ } else if (num_required == 1 && num_arguments == 1) {
+- Printf(methods, "\t { (char *)\"%s\", (PyCFunction)%s, METH_O, ", name, function);
++ Printf(methods, "\t { \"%s\", %s, METH_O, ", name, function);
+ } else {
+- Printf(methods, "\t { (char *)\"%s\", %s, METH_VARARGS, ", name, function);
++ Printf(methods, "\t { \"%s\", %s, METH_VARARGS, ", name, function);
+ }
+ } else {
+- Printf(methods, "\t { (char *)\"%s\", %s, METH_VARARGS, ", name, function);
++ Printf(methods, "\t { \"%s\", %s, METH_VARARGS, ", name, function);
+ }
+ } else {
+- Printf(methods, "\t { (char *)\"%s\", (PyCFunction) %s, METH_VARARGS | METH_KEYWORDS, ", name, function);
++ Printf(methods, "\t { \"%s\", (PyCFunction)%s, METH_VARARGS|METH_KEYWORDS, ", name, function);
+ }
+
+ if (!n) {
+@@ -3857,7 +3857,7 @@ public:
+ if (shadow) {
+ if (builtin) {
+ String *rname = SwigType_namestr(real_classname);
+- Printf(builtin_methods, " { \"__disown__\", (PyCFunction) Swig::Director::swig_pyobj_disown< %s >, METH_NOARGS, \"\" },\n", rname);
++ Printf(builtin_methods, " { \"__disown__\", Swig::Director::swig_pyobj_disown< %s >, METH_NOARGS, \"\" },\n", rname);
+ Delete(rname);
+ } else {
+ String *symname = Getattr(n, "sym:name");
+@@ -4694,13 +4694,13 @@ public:
+ int argcount = Getattr(n, "python:argcount") ? atoi(Char(Getattr(n, "python:argcount"))) : 2;
+ String *ds = have_docstring(n) ? cdocstring(n, AUTODOC_FUNC) : NewString("");
+ if (check_kwargs(n)) {
+- Printf(builtin_methods, " { \"%s\", (PyCFunction) %s, METH_VARARGS|METH_KEYWORDS, (char *) \"%s\" },\n", symname, wname, ds);
++ Printf(builtin_methods, " { \"%s\", (PyCFunction)%s, METH_VARARGS|METH_KEYWORDS, \"%s\" },\n", symname, wname, ds);
+ } else if (argcount == 0) {
+- Printf(builtin_methods, " { \"%s\", (PyCFunction) %s, METH_NOARGS, (char *) \"%s\" },\n", symname, wname, ds);
++ Printf(builtin_methods, " { \"%s\", %s, METH_NOARGS, \"%s\" },\n", symname, wname, ds);
+ } else if (argcount == 1) {
+- Printf(builtin_methods, " { \"%s\", (PyCFunction) %s, METH_O, (char *) \"%s\" },\n", symname, wname, ds);
++ Printf(builtin_methods, " { \"%s\", %s, METH_O, \"%s\" },\n", symname, wname, ds);
+ } else {
+- Printf(builtin_methods, " { \"%s\", (PyCFunction) %s, METH_VARARGS, (char *) \"%s\" },\n", symname, wname, ds);
++ Printf(builtin_methods, " { \"%s\", %s, METH_VARARGS, \"%s\" },\n", symname, wname, ds);
+ }
+ Delete(fullname);
+ Delete(wname);
+@@ -4801,10 +4801,10 @@ public:
+ Append(pyflags, "METH_VARARGS");
+ if (have_docstring(n)) {
+ String *ds = cdocstring(n, AUTODOC_STATICFUNC);
+- Printf(builtin_methods, " { \"%s\", (PyCFunction) %s, %s, (char *) \"%s\" },\n", symname, wname, pyflags, ds);
++ Printf(builtin_methods, " { \"%s\", (PyCFunction)%s, %s, \"%s\" },\n", symname, wname, pyflags, ds);
+ Delete(ds);
+ } else {
+- Printf(builtin_methods, " { \"%s\", (PyCFunction) %s, %s, \"\" },\n", symname, wname, pyflags);
++ Printf(builtin_methods, " { \"%s\", (PyCFunction)%s, %s, \"\" },\n", symname, wname, pyflags);
+ }
+ Delete(fullname);
+ Delete(wname);
+--
+2.7.4
+
diff --git a/poky/meta/recipes-devtools/swig/swig/swig-3.0.12-Coverity-fix-issue-reported-for-SWIG_Python_FixMetho.patch b/poky/meta/recipes-devtools/swig/swig/swig-3.0.12-Coverity-fix-issue-reported-for-SWIG_Python_FixMetho.patch
new file mode 100644
index 000000000..10e4afd1b
--- /dev/null
+++ b/poky/meta/recipes-devtools/swig/swig/swig-3.0.12-Coverity-fix-issue-reported-for-SWIG_Python_FixMetho.patch
@@ -0,0 +1,36 @@
+From 9825fcbab5c4ddd867432f9922bebfbec7b78af0 Mon Sep 17 00:00:00 2001
+From: Mark Dufour <m.dufour@kopano.com>
+Date: Tue, 14 Feb 2017 10:34:37 +0100
+Subject: [PATCH] [Coverity] fix issue reported for SWIG_Python_FixMethods
+
+Fix Coverity issue reported for SWIG_Python_FixMethods:
+
+"buffer_size: Calling strncpy with a source string whose length
+(10 chars) is greater than or equal to the size argument (10)
+will fail to null-terminate buff."
+
+The issue is only reported for the "swig_ptr: " line, but for
+consistency we replace both occurrences of strncpy with memcpy.
+---
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+Upstream-Status: Backport [https://github.com/swig/swig/pull/898]
+
+ Lib/python/pyinit.swg | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+Index: swig-3.0.12/Lib/python/pyinit.swg
+===================================================================
+--- swig-3.0.12.orig/Lib/python/pyinit.swg
++++ swig-3.0.12/Lib/python/pyinit.swg
+@@ -306,9 +306,9 @@ SWIG_Python_FixMethods(PyMethodDef *meth
+ char *ndoc = (char*)malloc(ldoc + lptr + 10);
+ if (ndoc) {
+ char *buff = ndoc;
+- strncpy(buff, methods[i].ml_doc, ldoc);
++ memcpy(buff, methods[i].ml_doc, ldoc);
+ buff += ldoc;
+- strncpy(buff, "swig_ptr: ", 10);
++ memcpy(buff, "swig_ptr: ", 10);
+ buff += 10;
+ SWIG_PackVoidPtr(buff, ptr, ty->name, lptr);
+ methods[i].ml_doc = ndoc;
diff --git a/poky/meta/recipes-devtools/swig/swig_3.0.12.bb b/poky/meta/recipes-devtools/swig/swig_3.0.12.bb
index 15f734868..fe9d0747f 100644
--- a/poky/meta/recipes-devtools/swig/swig_3.0.12.bb
+++ b/poky/meta/recipes-devtools/swig/swig_3.0.12.bb
@@ -3,6 +3,8 @@ require ${BPN}.inc
SRC_URI += "file://0001-Use-proc-self-exe-for-swig-swiglib-on-non-Win32-plat.patch \
file://0001-configure-use-pkg-config-for-pcre-detection.patch \
file://0001-Add-Node-7.x-aka-V8-5.2-support.patch \
+ file://swig-3.0.12-Coverity-fix-issue-reported-for-SWIG_Python_FixMetho.patch \
+ file://Python-Fix-new-GCC8-warnings-in-generated-code.patch \
"
SRC_URI[md5sum] = "82133dfa7bba75ff9ad98a7046be687c"
SRC_URI[sha256sum] = "7cf9f447ae7ed1c51722efc45e7f14418d15d7a1e143ac9f09a668999f4fc94d"
diff --git a/poky/meta/recipes-devtools/tcf-agent/tcf-agent/0001-canonicalize_file_name-is-specific-to-glibc.patch b/poky/meta/recipes-devtools/tcf-agent/tcf-agent/0001-canonicalize_file_name-is-specific-to-glibc.patch
deleted file mode 100644
index 5f93c46f2..000000000
--- a/poky/meta/recipes-devtools/tcf-agent/tcf-agent/0001-canonicalize_file_name-is-specific-to-glibc.patch
+++ /dev/null
@@ -1,46 +0,0 @@
-From 23a3759b74d081b3b2849b0d37a0e5219f37813e Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Thu, 7 Jan 2016 22:37:48 +0000
-Subject: [PATCH] canonicalize_file_name is specific to glibc
-
-When on Linux and not using glibc then we need to define
-canonicalize_file_name() API, therefore add a check for finding out if
-its not glibc
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
-Upstream-Status: Pending
-
- agent/tcf/framework/mdep.c | 2 +-
- agent/tcf/framework/mdep.h | 2 +-
- 2 files changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/agent/tcf/framework/mdep.c b/agent/tcf/framework/mdep.c
-index 2b52ca8..7d09655 100644
---- a/agent/tcf/framework/mdep.c
-+++ b/agent/tcf/framework/mdep.c
-@@ -1042,7 +1042,7 @@ char * canonicalize_file_name(const char * path) {
- return strdup(res);
- }
-
--#elif defined(__UCLIBC__)
-+#elif defined(__UCLIBC__) || !defined(__GLIBC__)
-
- char * canonicalize_file_name(const char * path) {
- return realpath(path, NULL);
-diff --git a/agent/tcf/framework/mdep.h b/agent/tcf/framework/mdep.h
-index 1e718a2..187c399 100644
---- a/agent/tcf/framework/mdep.h
-+++ b/agent/tcf/framework/mdep.h
-@@ -276,7 +276,7 @@ extern int loc_clock_gettime(int, struct timespec *);
-
- #define O_BINARY 0
-
--#if defined(__FreeBSD__) || defined(__NetBSD__) || defined(__APPLE__)
-+#if defined(__FreeBSD__) || defined(__NetBSD__) || defined(__APPLE__) || !defined(__GLIBC__)
- # define O_LARGEFILE 0
- extern char ** environ;
- extern char * canonicalize_file_name(const char * path);
---
-2.7.0
-
diff --git a/poky/meta/recipes-devtools/tcf-agent/tcf-agent/fix_ranlib.patch b/poky/meta/recipes-devtools/tcf-agent/tcf-agent/fix_ranlib.patch
index b66f41ad2..abd33babe 100644
--- a/poky/meta/recipes-devtools/tcf-agent/tcf-agent/fix_ranlib.patch
+++ b/poky/meta/recipes-devtools/tcf-agent/tcf-agent/fix_ranlib.patch
@@ -1,16 +1,17 @@
-Upstream-Status: Inappropriate [poky-specific fix]
+Actually pass the arguments to RANLIB.
+
+Upstream-Status: Pending
+Signed-off-by: Ross Burton <ross.burton@intel.com>
Index: agent/Makefile.inc
===================================================================
---- agent.orig/Makefile.inc
-+++ agent/Makefile.inc
-@@ -88,6 +88,9 @@ ifneq ($(OPSYS),Windows)
- ifneq ($(CC),g++)
- OPTS += -Wmissing-prototypes
+--- a/Makefile.inc
++++ b/Makefile.inc
+@@ -92,6 +92,7 @@ ifeq ($(OPSYS),GNU/Linux)
+ OPTS += -DUSE_uuid_generate=0
endif
-+ ifneq ($(RANLIB),)
-+ RANLIB += $@
-+ endif
+ OPTS += -DENABLE_arch_$(shell uname -m)
++ RANLIB += $@
endif
-
- # Compiler flags definition
+
+ ifneq ($(OPSYS),Windows)
diff --git a/poky/meta/recipes-devtools/tcf-agent/tcf-agent_git.bb b/poky/meta/recipes-devtools/tcf-agent/tcf-agent_git.bb
index ba14c4269..d901c18c3 100644
--- a/poky/meta/recipes-devtools/tcf-agent/tcf-agent_git.bb
+++ b/poky/meta/recipes-devtools/tcf-agent/tcf-agent_git.bb
@@ -5,14 +5,13 @@ BUGTRACKER = "https://bugs.eclipse.org/bugs/"
LICENSE = "EPL-1.0 | EDL-1.0"
LIC_FILES_CHKSUM = "file://edl-v10.html;md5=522a390a83dc186513f0500543ad3679"
-SRCREV = "2dddd5f440a15d5406032fac20f206484513646f"
-PV = "1.4.0+git${SRCPV}"
+SRCREV = "a022ef2f1acfd9209a1bf792dda14ae4b0d1b60f"
+PV = "1.7.0+git${SRCPV}"
UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>(\d+(\.\d+)+))"
-SRC_URI = "git://git.eclipse.org/gitroot/tcf/org.eclipse.tcf.agent;branch=1.4_neon_bugfix \
+SRC_URI = "git://git.eclipse.org/gitroot/tcf/org.eclipse.tcf.agent \
file://fix_ranlib.patch \
file://ldflags.patch \
- file://0001-canonicalize_file_name-is-specific-to-glibc.patch;striplevel=2 \
file://tcf-agent.init \
file://tcf-agent.service \
"
@@ -46,6 +45,7 @@ CFLAGS_append_mips = " ${LCL_STOP_SERVICES}"
CFLAGS_append_mips64 = " ${LCL_STOP_SERVICES}"
CFLAGS_append_libc-musl = " ${LCL_STOP_SERVICES}"
CFLAGS_append_powerpc64 = " ${LCL_STOP_SERVICES}"
+CFLAGS_append_riscv64 = " ${LCL_STOP_SERVICES}"
do_install() {
oe_runmake install INSTALLROOT=${D}
diff --git a/poky/meta/recipes-devtools/unfs3/unfs3/0001-attr-fix-utime-for-symlink.patch b/poky/meta/recipes-devtools/unfs3/unfs3/0001-attr-fix-utime-for-symlink.patch
new file mode 100644
index 000000000..6957d102b
--- /dev/null
+++ b/poky/meta/recipes-devtools/unfs3/unfs3/0001-attr-fix-utime-for-symlink.patch
@@ -0,0 +1,85 @@
+From 3f4fcb62661059bad77a2e957b4621137797bc2f Mon Sep 17 00:00:00 2001
+From: Rui Wang <rui.wang@windriver.com>
+Date: Fri, 15 Jun 2018 14:19:10 +0800
+Subject: [PATCH] attr: fix utime for symlink
+
+unfs3 has an old defect that it can not change the timestamps of a
+symlink file because it only uses utime(), which will follow the
+symlink. This will not cause an error if the symlink points to an
+existent file. But under some special situation, such as installing
+a rpm package, rpm tool will create the symlink first and try to
+modify the timestamps of it, when the target file is non-existent.
+This will cause an ESTALE error. Making rpm tool ignore this error
+is a solution, but not the best one. An acceptable approach is
+Making unfs3 support lutimes(), which can modify the symlink file
+itself. Considering not every system support this function, so a
+function checking is necessary.
+
+Upstream-Status: Submitted [https://sourceforge.net/p/unfs3/bugs/12/]
+
+Signed-off-by: Rui Wang <rui.wang@windriver.com>
+---
+ attr.c | 15 +++++++++++----
+ backend_unix.h | 2 ++
+ configure.ac | 1 +
+ 3 files changed, 14 insertions(+), 4 deletions(-)
+
+diff --git a/attr.c b/attr.c
+index 73e5c75..427d0e2 100644
+--- a/attr.c
++++ b/attr.c
+@@ -280,7 +280,7 @@ post_op_attr get_post_cached(struct svc_req * req)
+ static nfsstat3 set_time(const char *path, backend_statstruct buf, sattr3 new)
+ {
+ time_t new_atime, new_mtime;
+- struct utimbuf utim;
++ struct timeval stamps[2];
+ int res;
+
+ /* set atime and mtime */
+@@ -302,10 +302,17 @@ static nfsstat3 set_time(const char *path, backend_statstruct buf, sattr3 new)
+ else /* DONT_CHANGE */
+ new_mtime = buf.st_mtime;
+
+- utim.actime = new_atime;
+- utim.modtime = new_mtime;
++ stamps[0].tv_sec = new_atime;
++ stamps[0].tv_usec = 0;
++ stamps[1].tv_sec = new_mtime;
++ stamps[1].tv_usec = 0;
++
++#if HAVE_LUTIMES
++ res = backend_lutimes(path, stamps);
++#else
++ res = backend_utimes(path, stamps);
++#endif
+
+- res = backend_utime(path, &utim);
+ if (res == -1)
+ return setattr_err();
+ }
+diff --git a/backend_unix.h b/backend_unix.h
+index fbc2af3..813ffd3 100644
+--- a/backend_unix.h
++++ b/backend_unix.h
+@@ -61,6 +61,8 @@
+ #define backend_symlink symlink
+ #define backend_truncate truncate
+ #define backend_utime utime
++#define backend_utimes utimes
++#define backend_lutimes lutimes
+ #define backend_statstruct struct stat
+ #define backend_dirstream DIR
+ #define backend_statvfsstruct struct statvfs
+diff --git a/configure.ac b/configure.ac
+index aeec598..ea7f167 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -37,6 +37,7 @@ AC_CHECK_FUNCS(setresuid setresgid)
+ AC_CHECK_FUNCS(vsyslog)
+ AC_CHECK_FUNCS(lchown)
+ AC_CHECK_FUNCS(setgroups)
++AC_CHECK_FUNCS(lutimes)
+ UNFS3_SOLARIS_RPC
+ UNFS3_PORTMAP_DEFINE
+ UNFS3_COMPILE_WARNINGS
diff --git a/poky/meta/recipes-devtools/unfs3/unfs3_0.9.22.r497.bb b/poky/meta/recipes-devtools/unfs3/unfs3_0.9.22.r497.bb
index 8127e4a10..5a81a8fdb 100644
--- a/poky/meta/recipes-devtools/unfs3/unfs3_0.9.22.r497.bb
+++ b/poky/meta/recipes-devtools/unfs3/unfs3_0.9.22.r497.bb
@@ -29,7 +29,8 @@ SRC_URI = "http://downloads.yoctoproject.org/mirror/sources/unfs3-0.9.22.r497.ta
file://relative_max_socket_path_len.patch \
file://tcp_no_delay.patch \
file://0001-daemon.c-Libtirpc-porting-fixes.patch \
- "
+ file://0001-attr-fix-utime-for-symlink.patch \
+ "
SRC_URI[md5sum] = "2e43e471c77ade0331901c40b8f8e9a3"
SRC_URI[sha256sum] = "21009468a9ba07b72ea93780d025a63ab4e55bf8fc3127803c296f0900fe1bac"
diff --git a/poky/meta/recipes-devtools/vala/vala.inc b/poky/meta/recipes-devtools/vala/vala.inc
index b22faad78..f680640ca 100644
--- a/poky/meta/recipes-devtools/vala/vala.inc
+++ b/poky/meta/recipes-devtools/vala/vala.inc
@@ -24,12 +24,15 @@ inherit autotools pkgconfig upstream-version-is-even
FILES_${PN} += "${datadir}/${BPN}-${SHRT_VER}/vapi ${libdir}/${BPN}-${SHRT_VER}/"
FILES_${PN}-doc += "${datadir}/devhelp"
+# .gir files from gobject-introspection are installed to ${libdir} when multilib is enabled
+GIRDIR_OPT = "${@'--girdir=${STAGING_LIBDIR}/gir-1.0' if d.getVar('MULTILIBS') else ''}"
+
do_configure_prepend_class-target() {
# Write out a vapigen wrapper that will be provided by pkg-config file installed in target sysroot
# The wrapper will call a native vapigen
cat > ${B}/vapigen-wrapper << EOF
#!/bin/sh
-vapigen-${SHRT_VER} "\$@"
+vapigen-${SHRT_VER} ${GIRDIR_OPT} "\$@"
EOF
chmod +x ${B}/vapigen-wrapper
}
@@ -55,3 +58,5 @@ vapigen_sysroot_preprocess() {
-e "s|vapigen=.*|vapigen=${bindir}/vapigen-wrapper|" \
${SYSROOT_DESTDIR}${libdir}/pkgconfig/vapigen-${SHRT_VER}.pc
}
+
+SSTATE_SCAN_FILES += "vapigen-wrapper"
diff --git a/poky/meta/recipes-devtools/vala/vala/disable-graphviz.patch b/poky/meta/recipes-devtools/vala/vala/disable-graphviz.patch
index 15d186de0..477504dca 100644
--- a/poky/meta/recipes-devtools/vala/vala/disable-graphviz.patch
+++ b/poky/meta/recipes-devtools/vala/vala/disable-graphviz.patch
@@ -1,12 +1,14 @@
-From eb716dc856c20b3da146a4e83e9800bd1f53c739 Mon Sep 17 00:00:00 2001
+From 57f6b661d7865e8cecd17be36fab68f7f8447998 Mon Sep 17 00:00:00 2001
From: Rico Tzschichholz <ricotz@ubuntu.com>
Date: Wed, 6 Sep 2017 18:52:55 +0200
Subject: [PATCH] libvaladoc: Allow disabling the graphviz dependency of
+
valadoc
https://bugzilla.gnome.org/show_bug.cgi?id=787375
Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Upstream-Status: Submitted [bugzilla link above]
+
---
configure.ac | 60 +++++++++++++++++++----------------
libvaladoc/Makefile.am | 25 +++++++++++----
@@ -15,10 +17,10 @@ Upstream-Status: Submitted [bugzilla link above]
4 files changed, 63 insertions(+), 34 deletions(-)
diff --git a/configure.ac b/configure.ac
-index c73d5d6b1..291e503d5 100644
+index 730c72d..af81986 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -98,34 +98,38 @@ PKG_CHECK_MODULES(GMODULE, gmodule-2.0 >= $GLIB_REQUIRED)
+@@ -119,34 +119,38 @@ PKG_CHECK_MODULES(GMODULE, gmodule-2.0 >= $GLIB_REQUIRED)
AC_SUBST(GMODULE_CFLAGS)
AC_SUBST(GMODULE_LIBS)
@@ -86,10 +88,10 @@ index c73d5d6b1..291e503d5 100644
AC_PATH_PROG([XSLTPROC], [xsltproc], :)
diff --git a/libvaladoc/Makefile.am b/libvaladoc/Makefile.am
-index 89245d86b..7c07498b9 100644
+index 384292f..cce50d8 100644
--- a/libvaladoc/Makefile.am
+++ b/libvaladoc/Makefile.am
-@@ -127,10 +127,6 @@ libvaladoc_la_VALASOURCES = \
+@@ -126,10 +126,6 @@ libvaladoc_la_VALASOURCES = \
content/tablerow.vala \
content/taglet.vala \
content/text.vala \
@@ -100,7 +102,7 @@ index 89245d86b..7c07498b9 100644
parser/manyrule.vala \
parser/oneofrule.vala \
parser/optionalrule.vala \
-@@ -158,13 +154,24 @@ libvaladoc_la_VALASOURCES = \
+@@ -156,13 +152,24 @@ libvaladoc_la_VALASOURCES = \
highlighter/codetoken.vala \
highlighter/highlighter.vala \
html/basicdoclet.vala \
@@ -126,17 +128,18 @@ index 89245d86b..7c07498b9 100644
libvaladoc@PACKAGE_SUFFIX@_la_SOURCES = \
libvaladoc.vala.stamp \
$(libvaladoc_la_VALASOURCES:.vala=.c) \
-@@ -182,8 +189,8 @@ libvaladoc.vala.stamp: $(libvaladoc_la_VALASOURCES)
+@@ -182,9 +189,9 @@ libvaladoc.vala.stamp: $(libvaladoc_la_VALASOURCES)
--library valadoc \
--vapi valadoc@PACKAGE_SUFFIX@.vapi \
--vapidir $(top_srcdir)/vapi --pkg gmodule-2.0 \
- --vapidir $(top_srcdir)/vapi --pkg libgvc \
--vapidir $(top_srcdir)/gee --pkg gee \
+ --vapidir $(top_srcdir)/vala --pkg vala \
+ $(LIBGVC_PKG) \
--pkg config \
$(filter %.vala %.c,$^)
touch $@
-@@ -209,6 +216,9 @@ nodist_pkgconfig_DATA = valadoc@PACKAGE_SUFFIX@.pc
+@@ -211,6 +218,9 @@ nodist_pkgconfig_DATA = valadoc@PACKAGE_SUFFIX@.pc
valadoc@PACKAGE_SUFFIX@.pc: valadoc.pc
cp $< $@
@@ -146,7 +149,7 @@ index 89245d86b..7c07498b9 100644
vapidir = $(datadir)/vala/vapi
dist_vapi_DATA = valadoc@PACKAGE_SUFFIX@.vapi
-@@ -216,6 +226,9 @@ nodist_vapi_DATA = valadoc@PACKAGE_SUFFIX@.deps
+@@ -218,6 +228,9 @@ nodist_vapi_DATA = valadoc@PACKAGE_SUFFIX@.deps
valadoc@PACKAGE_SUFFIX@.deps: valadoc.deps
cp $< $@
@@ -157,7 +160,7 @@ index 89245d86b..7c07498b9 100644
EXTRA_DIST = \
$(libvaladoc_la_VALASOURCES) \
diff --git a/libvaladoc/html/basicdoclet.vala b/libvaladoc/html/basicdoclet.vala
-index cc9ea4ed7..432c3818f 100644
+index 37c731c..e0326ef 100644
--- a/libvaladoc/html/basicdoclet.vala
+++ b/libvaladoc/html/basicdoclet.vala
@@ -46,7 +46,11 @@ public abstract class Valadoc.Html.BasicDoclet : Api.Visitor, Doclet {
@@ -199,25 +202,23 @@ index cc9ea4ed7..432c3818f 100644
public void write_namespace_content (Namespace node, Api.Node? parent) {
diff --git a/libvaladoc/html/htmlmarkupwriter.vala b/libvaladoc/html/htmlmarkupwriter.vala
-index 15ed9efd1..fe0d705d4 100644
+index 5aa4afd..e79b0b8 100644
--- a/libvaladoc/html/htmlmarkupwriter.vala
+++ b/libvaladoc/html/htmlmarkupwriter.vala
-@@ -43,12 +43,16 @@ public class Valadoc.Html.MarkupWriter : Valadoc.MarkupWriter {
- }, xml_declaration);
+@@ -51,12 +51,16 @@ public class Valadoc.Html.MarkupWriter : Valadoc.MarkupWriter {
+ }
}
+#if HAVE_GRAPHVIZ
- public MarkupWriter add_usemap (Charts.Chart chart) {
+ public unowned MarkupWriter add_usemap (Charts.Chart chart) {
string? buf = (string?) chart.write_buffer ("cmapx");
if (buf != null) {
raw_text ("\n");
raw_text ((!) buf);
}
+#else
-+ public MarkupWriter add_usemap (void* chart) {
++ public unowned MarkupWriter add_usemap (void* chart) {
+#endif
return this;
}
---
-2.14.1
diff --git a/poky/meta/recipes-devtools/vala/vala_0.38.8.bb b/poky/meta/recipes-devtools/vala/vala_0.42.0.bb
index e2baf6555..2b02e0c84 100644
--- a/poky/meta/recipes-devtools/vala/vala_0.38.8.bb
+++ b/poky/meta/recipes-devtools/vala/vala_0.42.0.bb
@@ -6,5 +6,5 @@ SRC_URI += " file://0001-git-version-gen-don-t-append-dirty-if-we-re-not-in-g.pa
file://0001-Disable-valadoc.patch \
"
-SRC_URI[md5sum] = "37edd0467d056fd9e3937d0bbceda80b"
-SRC_URI[sha256sum] = "2fa746b51cd66e43577d1da06a80b708c2875cadaafee77e9700ea35cf23882c"
+SRC_URI[md5sum] = "aa6eb8097d25b5847ad3fab34c0ff865"
+SRC_URI[sha256sum] = "62a55986da23cf3aaafd7624c32db2a1af11c8419e0bb0751727d10f1f7ab7be"
diff --git a/poky/meta/recipes-devtools/valgrind/valgrind/0001-Guard-against-__GLIBC_PREREQ-for-musl-libc.patch b/poky/meta/recipes-devtools/valgrind/valgrind/0001-Guard-against-__GLIBC_PREREQ-for-musl-libc.patch
new file mode 100644
index 000000000..3efe65a94
--- /dev/null
+++ b/poky/meta/recipes-devtools/valgrind/valgrind/0001-Guard-against-__GLIBC_PREREQ-for-musl-libc.patch
@@ -0,0 +1,36 @@
+From 1b5b6f827ac1153a41fc93e78bf34ccdf5720b9b Mon Sep 17 00:00:00 2001
+From: Randy MacLeod <Randy.MacLeod@windriver.com>
+Date: Fri, 19 Oct 2018 10:31:12 -0400
+Subject: [PATCH] Guard against __GLIBC_PREREQ for musl libc
+
+Upstream-Status: Pending
+
+Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com>
+---
+ memcheck/tests/linux/sys-statx.c | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+diff --git a/memcheck/tests/linux/sys-statx.c b/memcheck/tests/linux/sys-statx.c
+index fe9f9ba45..473c2cd7f 100644
+--- a/memcheck/tests/linux/sys-statx.c
++++ b/memcheck/tests/linux/sys-statx.c
+@@ -7,11 +7,16 @@
+ #include <assert.h>
+ #include <string.h>
+ #include <sys/syscall.h>
++
++#if defined(__GLIBC__) && defined(__GLIBC_PREREQ)
+ #if __GLIBC_PREREQ(2,28)
+ /* struct statx provided in sys/stat.h */
+ #else
+ #include <linux/stat.h>
+ #endif
++#else
++#include <linux/stat.h>
++#endif
+ #include <errno.h>
+
+ int check_stat2;
+--
+2.17.0
+
diff --git a/poky/meta/recipes-devtools/valgrind/valgrind/0001-Make-local-functions-static-to-avoid-assembler-error.patch b/poky/meta/recipes-devtools/valgrind/valgrind/0001-Make-local-functions-static-to-avoid-assembler-error.patch
new file mode 100644
index 000000000..45e5ea3e7
--- /dev/null
+++ b/poky/meta/recipes-devtools/valgrind/valgrind/0001-Make-local-functions-static-to-avoid-assembler-error.patch
@@ -0,0 +1,182 @@
+From 2155c1b2cf00e744e280c493eb74bf457dfcc3b1 Mon Sep 17 00:00:00 2001
+From: Randy MacLeod <Randy.MacLeod@windriver.com>
+Date: Sun, 21 Oct 2018 15:09:31 -0400
+Subject: [PATCH] Make local functions static to avoid assembler error
+
+Avoid mips32 x-compiler warnings such as:
+
+| ../../../valgrind-3.14.0/helgrind/tests/annotate_hbefore.c:360:6: warning: no previous prototype for 'do_signal' [-Wmissing-prototypes]
+| void do_signal ( UWord* w )
+| ^~~~~~~~~
+
+by making functions and global variables that are file scope be static
+and more importantly also avoid an assembler error:
+
+/tmp/cce22iiw.s: Assembler messages:
+/tmp/cce22iiw.s:446: Error: symbol `exit_0' is already defined
+/tmp/cce22iiw.s:448: Error: symbol `exit' is already defined
+/tmp/cce22iiw.s:915: Error: symbol `exit_0' is already defined
+/tmp/cce22iiw.s:917: Error: symbol `exit' is already defined
+
+Upstream-Status: Pending
+
+Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com>
+---
+ helgrind/tests/annotate_hbefore.c | 34 +++++++++++++++----------------
+ 1 file changed, 17 insertions(+), 17 deletions(-)
+
+diff --git a/helgrind/tests/annotate_hbefore.c b/helgrind/tests/annotate_hbefore.c
+index e311714f7..f55514e45 100644
+--- a/helgrind/tests/annotate_hbefore.c
++++ b/helgrind/tests/annotate_hbefore.c
+@@ -24,7 +24,7 @@ typedef unsigned long int UWord;
+
+ // ppc64
+ /* return 1 if success, 0 if failure */
+-UWord do_acasW ( UWord* addr, UWord expected, UWord nyu )
++static UWord do_acasW ( UWord* addr, UWord expected, UWord nyu )
+ {
+ UWord old, success;
+
+@@ -57,7 +57,7 @@ UWord do_acasW ( UWord* addr, UWord expected, UWord nyu )
+
+ // ppc32
+ /* return 1 if success, 0 if failure */
+-UWord do_acasW ( UWord* addr, UWord expected, UWord nyu )
++static UWord do_acasW ( UWord* addr, UWord expected, UWord nyu )
+ {
+ UWord old, success;
+
+@@ -90,7 +90,7 @@ UWord do_acasW ( UWord* addr, UWord expected, UWord nyu )
+
+ // amd64
+ /* return 1 if success, 0 if failure */
+-UWord do_acasW ( UWord* addr, UWord expected, UWord nyu )
++static UWord do_acasW ( UWord* addr, UWord expected, UWord nyu )
+ {
+ UWord block[4] = { (UWord)addr, expected, nyu, 2 };
+ __asm__ __volatile__(
+@@ -113,7 +113,7 @@ UWord do_acasW ( UWord* addr, UWord expected, UWord nyu )
+
+ // x86
+ /* return 1 if success, 0 if failure */
+-UWord do_acasW ( UWord* addr, UWord expected, UWord nyu )
++static UWord do_acasW ( UWord* addr, UWord expected, UWord nyu )
+ {
+ UWord block[4] = { (UWord)addr, expected, nyu, 2 };
+ __asm__ __volatile__(
+@@ -138,7 +138,7 @@ UWord do_acasW ( UWord* addr, UWord expected, UWord nyu )
+
+ // arm
+ /* return 1 if success, 0 if failure */
+-UWord do_acasW ( UWord* addr, UWord expected, UWord nyu )
++static UWord do_acasW ( UWord* addr, UWord expected, UWord nyu )
+ {
+ UWord old, success;
+ UWord block[2] = { (UWord)addr, nyu };
+@@ -171,7 +171,7 @@ UWord do_acasW ( UWord* addr, UWord expected, UWord nyu )
+
+ // arm64
+ /* return 1 if success, 0 if failure */
+-UWord do_acasW ( UWord* addr, UWord expected, UWord nyu )
++static UWord do_acasW ( UWord* addr, UWord expected, UWord nyu )
+ {
+ UWord old, success;
+ UWord block[2] = { (UWord)addr, nyu };
+@@ -204,7 +204,7 @@ UWord do_acasW ( UWord* addr, UWord expected, UWord nyu )
+
+ // s390x
+ /* return 1 if success, 0 if failure */
+-UWord do_acasW(UWord* addr, UWord expected, UWord nyu )
++static UWord do_acasW(UWord* addr, UWord expected, UWord nyu )
+ {
+ int cc;
+
+@@ -223,7 +223,7 @@ UWord do_acasW(UWord* addr, UWord expected, UWord nyu )
+
+ // mips32
+ /* return 1 if success, 0 if failure */
+-UWord do_acasW ( UWord* addr, UWord expected, UWord nyu )
++static UWord do_acasW ( UWord* addr, UWord expected, UWord nyu )
+ {
+ UWord success;
+ UWord block[3] = { (UWord)addr, nyu, expected};
+@@ -256,7 +256,7 @@ UWord do_acasW ( UWord* addr, UWord expected, UWord nyu )
+
+ // mips64
+ /* return 1 if success, 0 if failure */
+-UWord do_acasW ( UWord* addr, UWord expected, UWord nyu )
++static UWord do_acasW ( UWord* addr, UWord expected, UWord nyu )
+ {
+ UWord success;
+ UWord block[3] = { (UWord)addr, nyu, expected};
+@@ -287,7 +287,7 @@ UWord do_acasW ( UWord* addr, UWord expected, UWord nyu )
+
+ #endif
+
+-void atomic_incW ( UWord* w )
++static void atomic_incW ( UWord* w )
+ {
+ while (1) {
+ UWord old = *w;
+@@ -301,7 +301,7 @@ void atomic_incW ( UWord* w )
+
+ #define NNN 1000000
+
+-void* thread_fn ( void* arg )
++static void* thread_fn ( void* arg )
+ {
+ UWord* w = (UWord*)arg;
+ int i;
+@@ -331,10 +331,10 @@ int main ( void )
+
+ #endif
+
+-int shared_var = 0; // is not raced upon
++static int shared_var = 0; // is not raced upon
+
+
+-void delayXms ( int i )
++static void delayXms ( int i )
+ {
+ struct timespec ts = { 0, 1 * 1000 * 1000 };
+ // We do the sleep in small pieces to have scheduling
+@@ -348,7 +348,7 @@ void delayXms ( int i )
+ }
+ }
+
+-void do_wait ( UWord* w )
++static void do_wait ( UWord* w )
+ {
+ UWord w0 = *w;
+ UWord volatile * wV = w;
+@@ -357,7 +357,7 @@ void do_wait ( UWord* w )
+ ANNOTATE_HAPPENS_AFTER(w);
+ }
+
+-void do_signal ( UWord* w )
++static void do_signal ( UWord* w )
+ {
+ ANNOTATE_HAPPENS_BEFORE(w);
+ atomic_incW(w);
+@@ -365,7 +365,7 @@ void do_signal ( UWord* w )
+
+
+
+-void* thread_fn1 ( void* arg )
++static void* thread_fn1 ( void* arg )
+ {
+ UWord* w = (UWord*)arg;
+ delayXms(500); // ensure t2 gets to its wait first
+@@ -376,7 +376,7 @@ void* thread_fn1 ( void* arg )
+ return NULL;
+ }
+
+-void* thread_fn2 ( void* arg )
++static void* thread_fn2 ( void* arg )
+ {
+ UWord* w = (UWord*)arg;
+ do_wait(w); // wait for h-b edge from first thread
+--
+2.17.0
+
diff --git a/poky/meta/recipes-devtools/valgrind/valgrind/0001-memcheck-tests-Use-ucontext_t-instead-of-struct-ucon.patch b/poky/meta/recipes-devtools/valgrind/valgrind/0001-memcheck-tests-Use-ucontext_t-instead-of-struct-ucon.patch
deleted file mode 100644
index bf16a1adf..000000000
--- a/poky/meta/recipes-devtools/valgrind/valgrind/0001-memcheck-tests-Use-ucontext_t-instead-of-struct-ucon.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From 629ac492b1d9bc709d17337eb9b1c28603eca250 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Wed, 28 Jun 2017 11:01:25 -0700
-Subject: [PATCH] memcheck/tests: Use ucontext_t instead of struct ucontext
-
-glibc 2.26 does not expose struct ucontext anymore
-
-Upstream-Status: Submitted [https://bugs.kde.org/show_bug.cgi?id=381769]
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- memcheck/tests/linux/stack_changes.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/memcheck/tests/linux/stack_changes.c b/memcheck/tests/linux/stack_changes.c
-index ffb49c6..acc4109 100644
---- a/memcheck/tests/linux/stack_changes.c
-+++ b/memcheck/tests/linux/stack_changes.c
-@@ -11,7 +11,7 @@
- // checks that Valgrind notices their stack changes properly.
-
- #ifdef __GLIBC__
--typedef struct ucontext mycontext;
-+typedef ucontext_t mycontext;
-
- mycontext ctx1, ctx2, oldc;
- int count;
---
-2.13.2
-
diff --git a/poky/meta/recipes-devtools/valgrind/valgrind/0002-context-APIs-are-not-available-on-musl.patch b/poky/meta/recipes-devtools/valgrind/valgrind/0002-context-APIs-are-not-available-on-musl.patch
index 3f9f33b48..480fe3324 100644
--- a/poky/meta/recipes-devtools/valgrind/valgrind/0002-context-APIs-are-not-available-on-musl.patch
+++ b/poky/meta/recipes-devtools/valgrind/valgrind/0002-context-APIs-are-not-available-on-musl.patch
@@ -1,17 +1,20 @@
-From 862b807076d57f2f58ed9d572ddac8bb402774a2 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Sat, 10 Jun 2017 01:01:10 -0700
-Subject: [PATCH 2/6] context APIs are not available on musl
+From bd4e926e7e14747b3cd4d7b2a1bd5410b22f3ea2 Mon Sep 17 00:00:00 2001
+From: Randy MacLeod <Randy.MacLeod@windriver.com>
+Date: Tue, 16 Oct 2018 21:27:46 -0400
+Subject: [PATCH] context APIs are not available on musl
Upstream-Status: Pending
+Updated patch for valgrind-3.14
+
Signed-off-by: Khem Raj <raj.khem@gmail.com>
+Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com>
---
memcheck/tests/linux/stack_changes.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/memcheck/tests/linux/stack_changes.c b/memcheck/tests/linux/stack_changes.c
-index a978fc2..ffb49c6 100644
+index 7f97b90a5..a26cb4ae6 100644
--- a/memcheck/tests/linux/stack_changes.c
+++ b/memcheck/tests/linux/stack_changes.c
@@ -10,6 +10,7 @@
@@ -19,7 +22,7 @@ index a978fc2..ffb49c6 100644
// checks that Valgrind notices their stack changes properly.
+#ifdef __GLIBC__
- typedef struct ucontext mycontext;
+ typedef ucontext_t mycontext;
mycontext ctx1, ctx2, oldc;
@@ -51,9 +52,11 @@ int init_context(mycontext *uc)
@@ -45,5 +48,5 @@ index a978fc2..ffb49c6 100644
return 0;
}
--
-2.13.1
+2.17.0
diff --git a/poky/meta/recipes-devtools/valgrind/valgrind/0002-fix-broken-inline-asm-in-tests-on-mips32-linux.patch b/poky/meta/recipes-devtools/valgrind/valgrind/0002-fix-broken-inline-asm-in-tests-on-mips32-linux.patch
deleted file mode 100644
index 6df295f8a..000000000
--- a/poky/meta/recipes-devtools/valgrind/valgrind/0002-fix-broken-inline-asm-in-tests-on-mips32-linux.patch
+++ /dev/null
@@ -1,47 +0,0 @@
-From 63ce36396348e7c4c021cffa652d2e3d20f7963a Mon Sep 17 00:00:00 2001
-From: Hongxu Jia <hongxu.jia@windriver.com>
-Date: Fri, 27 Jul 2018 17:51:54 +0800
-Subject: [PATCH 2/2] fix broken inline asm in tests on mips32-linux
-
-While build tests(`make check') with gcc 8.1.0 on mips32-linux,
-there is a failure
-[snip]
-|mips-wrsmllib32-linux-gcc -meb -mabi=32 -mhard-float -march=mips32
--c -o tc08_hbl2-tc08_hbl2.o `test -f 'tc08_hbl2.c' || echo '../../../
-valgrind-3.13.0/helgrind/tests/'`tc08_hbl2.c
-|/tmp/cc37aJxQ.s: Assembler messages:
-|/tmp/cc37aJxQ.s:275: Error: symbol `L1xyzzy1main' is already defined
-|Makefile:1323: recipe for target 'tc08_hbl2-tc08_hbl2.o' failed
-[snip]
-
-Remove the duplicated L1xyzzy1main, and use local symbol to replace.
-http://tigcc.ticalc.org/doc/gnuasm.html#SEC46
-
-Upstream-Status: Submitted [https://bugs.kde.org/show_bug.cgi?id=396906]
-Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
----
- helgrind/tests/tc08_hbl2.c | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/helgrind/tests/tc08_hbl2.c b/helgrind/tests/tc08_hbl2.c
-index 2a757a008..f660d82dd 100644
---- a/helgrind/tests/tc08_hbl2.c
-+++ b/helgrind/tests/tc08_hbl2.c
-@@ -121,12 +121,12 @@
- #elif defined(PLAT_mips32_linux) || defined(PLAT_mips64_linux)
- # define INC(_lval,_lqual) \
- __asm__ __volatile__ ( \
-- "L1xyzzy1" _lqual":\n" \
-+ "1:\n" \
- " move $t0, %0\n" \
- " ll $t1, 0($t0)\n" \
- " addiu $t1, $t1, 1\n" \
- " sc $t1, 0($t0)\n" \
-- " beqz $t1, L1xyzzy1" _lqual \
-+ " beqz $t1, 1b\n" \
- : /*out*/ : /*in*/ "r"(&(_lval)) \
- : /*trash*/ "t0", "t1", "memory" \
- )
---
-2.17.1
-
diff --git a/poky/meta/recipes-devtools/valgrind/valgrind/0004-Fix-out-of-tree-builds.patch b/poky/meta/recipes-devtools/valgrind/valgrind/0004-Fix-out-of-tree-builds.patch
index 39022d04a..75bb0aa7c 100644
--- a/poky/meta/recipes-devtools/valgrind/valgrind/0004-Fix-out-of-tree-builds.patch
+++ b/poky/meta/recipes-devtools/valgrind/valgrind/0004-Fix-out-of-tree-builds.patch
@@ -1,7 +1,7 @@
-From 739421e253e6eba3eb6438651822f80fa9c0502a Mon Sep 17 00:00:00 2001
-From: Alexander Kanavin <alex.kanavin@gmail.com>
-Date: Tue, 15 Dec 2015 15:31:50 +0200
-Subject: [PATCH 1/2] Fix out of tree builds.
+From 8f916dcb395fe5a2429f2867ba4daf8ef3af073a Mon Sep 17 00:00:00 2001
+From: Randy MacLeod <Randy.MacLeod@windriver.com>
+Date: Tue, 16 Oct 2018 21:01:04 -0400
+Subject: [PATCH] Fix out of tree builds.
The paths to these files need to be fully specified in
the out of tree build case. glibc-2.X.supp is a generated file so the full path
@@ -9,18 +9,21 @@ is deliberately not specified in that case.
RP 2013/03/23
+Patch refreshed for valgrind-3.14.0.
+
Upstream-Status: Pending
-Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com>
---
- configure.ac | 68 ++++++++++++++++++++++++++++++------------------------------
+ configure.ac | 68 ++++++++++++++++++++++++++--------------------------
1 file changed, 34 insertions(+), 34 deletions(-)
diff --git a/configure.ac b/configure.ac
-index 3874296fde0b..7a5ba2c8557e 100644
+index c18ae5f2a..99667ce57 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -373,50 +373,50 @@ case "${host_os}" in
+@@ -392,50 +392,50 @@ case "${host_os}" in
9.*)
AC_MSG_RESULT([Darwin 9.x (${kernel}) / Mac OS X 10.5 Leopard])
AC_DEFINE([DARWIN_VERS], DARWIN_10_5, [Darwin / Mac OS X version])
@@ -85,16 +88,18 @@ index 3874296fde0b..7a5ba2c8557e 100644
+ DEFAULT_SUPP="$srcdir/darwin16.supp ${DEFAULT_SUPP}"
+ DEFAULT_SUPP="$srcdir/darwin10-drd.supp ${DEFAULT_SUPP}"
;;
- *)
- AC_MSG_RESULT([unsupported (${kernel})])
-@@ -428,13 +428,13 @@ case "${host_os}" in
- solaris2.11*)
- AC_MSG_RESULT([ok (${host_os})])
- VGCONF_OS="solaris"
-- DEFAULT_SUPP="solaris11.supp ${DEFAULT_SUPP}"
-+ DEFAULT_SUPP="$srcdir/solaris11.supp ${DEFAULT_SUPP}"
+ 17.*)
+ AC_MSG_RESULT([Darwin 17.x (${kernel}) / macOS 10.13 High Sierra])
+@@ -460,7 +460,7 @@ case "${host_os}" in
+ DEFAULT_SUPP="solaris12.supp ${DEFAULT_SUPP}"
+ ;;
+ *)
+- DEFAULT_SUPP="solaris11.supp ${DEFAULT_SUPP}"
++ DEFAULT_SUPP="$srcdir/solaris11.supp ${DEFAULT_SUPP}"
+ ;;
+ esac
;;
-
+@@ -468,7 +468,7 @@ case "${host_os}" in
solaris2.12*)
AC_MSG_RESULT([ok (${host_os})])
VGCONF_OS="solaris"
@@ -103,7 +108,7 @@ index 3874296fde0b..7a5ba2c8557e 100644
;;
*)
-@@ -982,29 +982,29 @@ AC_MSG_CHECKING([the glibc version])
+@@ -1051,29 +1051,29 @@ AC_MSG_CHECKING([the glibc version])
case "${GLIBC_VERSION}" in
2.2)
AC_MSG_RESULT(${GLIBC_VERSION} family)
@@ -143,7 +148,7 @@ index 3874296fde0b..7a5ba2c8557e 100644
;;
2.*)
AC_MSG_RESULT(${GLIBC_VERSION} family)
-@@ -1013,8 +1013,8 @@ case "${GLIBC_VERSION}" in
+@@ -1082,8 +1082,8 @@ case "${GLIBC_VERSION}" in
AC_DEFINE([GLIBC_MANDATORY_INDEX_AND_STRLEN_REDIRECT], 1,
[Define to 1 if index() and strlen() have been optimized heavily (x86 glibc >= 2.12)])
DEFAULT_SUPP="glibc-2.X.supp ${DEFAULT_SUPP}"
@@ -154,7 +159,7 @@ index 3874296fde0b..7a5ba2c8557e 100644
;;
darwin)
AC_MSG_RESULT(Darwin)
-@@ -1024,7 +1024,7 @@ case "${GLIBC_VERSION}" in
+@@ -1093,7 +1093,7 @@ case "${GLIBC_VERSION}" in
bionic)
AC_MSG_RESULT(Bionic)
AC_DEFINE([BIONIC_LIBC], 1, [Define to 1 if you're using Bionic])
@@ -163,7 +168,7 @@ index 3874296fde0b..7a5ba2c8557e 100644
;;
solaris)
AC_MSG_RESULT(Solaris)
-@@ -1051,11 +1051,11 @@ if test "$VGCONF_OS" != "solaris"; then
+@@ -1120,11 +1120,11 @@ if test "$VGCONF_OS" != "solaris"; then
# attempt to detect whether such libraries are installed on the
# build machine (or even if any X facilities are present); just
# add the suppressions antidisirregardless.
@@ -179,5 +184,5 @@ index 3874296fde0b..7a5ba2c8557e 100644
--
-2.13.2.3.g44cd85c14
+2.17.0
diff --git a/poky/meta/recipes-devtools/valgrind/valgrind/link-gz-tests.patch b/poky/meta/recipes-devtools/valgrind/valgrind/link-gz-tests.patch
deleted file mode 100644
index db322398c..000000000
--- a/poky/meta/recipes-devtools/valgrind/valgrind/link-gz-tests.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-When checking if the compiler supports compressed debug sections we need to
-actually link instead of just compile. Otherwise the compiler thinks that
-they are supported, but gold does not support -gz=zlib.
-
-Upstream-Status: Backport (r16459)
-Signed-off-by: Ross Burton <ross.burton@intel.com>
-
---- a/configure.ac~ 2017-07-11 11:53:16.000000000 +0100
-+++ b/configure.ac 2017-07-11 18:16:13.674130483 +0100
-@@ -2119,7 +2119,7 @@
- safe_CFLAGS=$CFLAGS
- CFLAGS="-g -gz=zlib"
-
--AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ ]], [[
-+AC_LINK_IFELSE([AC_LANG_PROGRAM([[ ]], [[
- return 0;
- ]])], [
- ac_have_gz_zlib=yes
-@@ -2139,7 +2139,7 @@
- safe_CFLAGS=$CFLAGS
- CFLAGS="-g -gz=zlib-gnu"
-
--AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ ]], [[
-+AC_LINK_IFELSE([AC_LANG_PROGRAM([[ ]], [[
- return 0;
- ]])], [
- ac_have_gz_zlib_gnu=yes
diff --git a/poky/meta/recipes-devtools/valgrind/valgrind/mask-CPUID-support-in-HWCAP-on-aarch64.patch b/poky/meta/recipes-devtools/valgrind/valgrind/mask-CPUID-support-in-HWCAP-on-aarch64.patch
deleted file mode 100644
index 89a95b82f..000000000
--- a/poky/meta/recipes-devtools/valgrind/valgrind/mask-CPUID-support-in-HWCAP-on-aarch64.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-Fix runtime Valgrind failure
-
-This patch is derived from
-https://bugzilla.redhat.com/show_bug.cgi?id=1464211
-
-At runtime it will fails like this:
-
-ARM64 front end: branch_etc
-disInstr(arm64): unhandled instruction 0xD5380001
-disInstr(arm64): 1101'0101 0011'1000 0000'0000 0000'0001 ==2082==
-valgrind: Unrecognised instruction at address 0x4014e64.
-
-This patch is a workaround by masking all HWCAP
-
-Upstream-Status: Pending
-
-Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com>
-
-Index: valgrind-3.13.0/coregrind/m_initimg/initimg-linux.c
-===================================================================
-
---- valgrind-3.13.0.orig/coregrind/m_initimg/initimg-linux.c 2018-03-04 22:22:17.698572675 -0800
-+++ valgrind-3.13.0/coregrind/m_initimg/initimg-linux.c 2018-03-04 22:23:25.727815624 -0800
-@@ -703,6 +703,12 @@
- (and anything above) are not supported by Valgrind. */
- auxv->u.a_val &= VKI_HWCAP_S390_TE - 1;
- }
-+# elif defined(VGP_arm64_linux)
-+ {
-+ /* Linux 4.11 started populating this for arm64, but we
-+ currently don't support any. */
-+ auxv->u.a_val = 0;
-+ }
- # endif
- break;
- # if defined(VGP_ppc64be_linux) || defined(VGP_ppc64le_linux)
diff --git a/poky/meta/recipes-devtools/valgrind/valgrind/ppc-headers.patch b/poky/meta/recipes-devtools/valgrind/valgrind/ppc-headers.patch
deleted file mode 100644
index 4b531b42e..000000000
--- a/poky/meta/recipes-devtools/valgrind/valgrind/ppc-headers.patch
+++ /dev/null
@@ -1,165 +0,0 @@
-Backport a patch from upstream to fix test compilation for PPC where
-system headers don't get included.
-
-Upstream-Status: Backport
-Signed-off-by: Ross Burton <ross.burton@intel.com>
-
-r16450 | mjw | 2017-06-16 10:33:35 +0100 (Fri, 16 Jun 2017) | 7 lines
-
-ppc64 doesn't compile test_isa_2_06_partx.c without VSX support
-
-The #ifdef HAS_VSX guard is wrongly placed. It makes the standard
-include headers not be used. Causing a build failure. Fix by moving
-the #ifdef HAS_VSX after the standard includes.
-
-[v2 changes]
-- Add #ifdef HAS_VSX guard correctly for ppc64 test_isa_2_06_partx.c
- test cases. The changes are similar to what was done for ppc32.
-
-Signed-off-by: Jagadeesh Krishnanjanappa <jkrishnanjanappa@mvista.com>
-Index: none/tests/ppc32/test_isa_2_06_part3.c
-===================================================================
---- a/none/tests/ppc32/test_isa_2_06_part3.c (revision 16449)
-+++ b/none/tests/ppc32/test_isa_2_06_part3.c (revision 16450)
-@@ -20,17 +20,18 @@
- The GNU General Public License is contained in the file COPYING.
- */
-
--#ifdef HAS_VSX
--
- #include <stdio.h>
- #include <stdint.h>
- #include <stdlib.h>
- #include <string.h>
- #include <malloc.h>
--#include <altivec.h>
- #include <math.h>
- #include <unistd.h> // getopt
-
-+#ifdef HAS_VSX
-+
-+#include <altivec.h>
-+
- #ifndef __powerpc64__
- typedef uint32_t HWord_t;
- #else
-Index: none/tests/ppc32/test_isa_2_06_part1.c
-===================================================================
---- a/none/tests/ppc32/test_isa_2_06_part1.c (revision 16449)
-+++ b/none/tests/ppc32/test_isa_2_06_part1.c (revision 16450)
-@@ -20,13 +20,14 @@
- The GNU General Public License is contained in the file COPYING.
- */
-
--#ifdef HAS_VSX
--
- #include <stdio.h>
- #include <stdint.h>
- #include <stdlib.h>
- #include <string.h>
- #include <malloc.h>
-+
-+#ifdef HAS_VSX
-+
- #include <altivec.h>
-
- #ifndef __powerpc64__
-Index: none/tests/ppc32/test_isa_2_06_part2.c
-===================================================================
---- a/none/tests/ppc32/test_isa_2_06_part2.c (revision 16449)
-+++ b/none/tests/ppc32/test_isa_2_06_part2.c (revision 16450)
-@@ -20,17 +20,18 @@
- The GNU General Public License is contained in the file COPYING.
- */
-
--#ifdef HAS_VSX
--
- #include <stdio.h>
- #include <stdint.h>
- #include <stdlib.h>
- #include <string.h>
- #include <malloc.h>
--#include <altivec.h>
- #include <math.h>
- #include <unistd.h> // getopt
-
-+#ifdef HAS_VSX
-+
-+#include <altivec.h>
-+
- #ifndef __powerpc64__
- typedef uint32_t HWord_t;
- #else
-Index: none/tests/ppc64/test_isa_2_06_part3.c
-===================================================================
---- a/none/tests/ppc64/test_isa_2_06_part3.c (revision 16449)
-+++ b/none/tests/ppc64/test_isa_2_06_part3.c (revision 16450)
-@@ -20,17 +20,18 @@
- The GNU General Public License is contained in the file COPYING.
- */
-
--#ifdef HAS_VSX
--
- #include <stdio.h>
- #include <stdint.h>
- #include <stdlib.h>
- #include <string.h>
- #include <malloc.h>
--#include <altivec.h>
- #include <math.h>
- #include <unistd.h> // getopt
-
-+#ifdef HAS_VSX
-+
-+#include <altivec.h>
-+
- #ifndef __powerpc64__
- typedef uint32_t HWord_t;
- #else
-Index: none/tests/ppc64/test_isa_2_06_part1.c
-===================================================================
---- a/none/tests/ppc64/test_isa_2_06_part1.c (revision 16449)
-+++ b/none/tests/ppc64/test_isa_2_06_part1.c (revision 16450)
-@@ -20,13 +20,14 @@
- The GNU General Public License is contained in the file COPYING.
- */
-
--#ifdef HAS_VSX
--
- #include <stdio.h>
- #include <stdint.h>
- #include <stdlib.h>
- #include <string.h>
- #include <malloc.h>
-+
-+#ifdef HAS_VSX
-+
- #include <altivec.h>
-
- #ifndef __powerpc64__
-Index: none/tests/ppc64/test_isa_2_06_part2.c
-===================================================================
---- a/none/tests/ppc64/test_isa_2_06_part2.c (revision 16449)
-+++ b/none/tests/ppc64/test_isa_2_06_part2.c (revision 16450)
-@@ -20,17 +20,18 @@
- The GNU General Public License is contained in the file COPYING.
- */
-
--#ifdef HAS_VSX
--
- #include <stdio.h>
- #include <stdint.h>
- #include <stdlib.h>
- #include <string.h>
- #include <malloc.h>
--#include <altivec.h>
- #include <math.h>
- #include <unistd.h> // getopt
-
-+#ifdef HAS_VSX
-+
-+#include <altivec.h>
-+
- #ifndef __powerpc64__
- typedef uint32_t HWord_t;
- #else
diff --git a/poky/meta/recipes-devtools/valgrind/valgrind_3.13.0.bb b/poky/meta/recipes-devtools/valgrind/valgrind_3.14.0.bb
index 39ec6f5cc..97e58a446 100644
--- a/poky/meta/recipes-devtools/valgrind/valgrind_3.13.0.bb
+++ b/poky/meta/recipes-devtools/valgrind/valgrind_3.14.0.bb
@@ -12,7 +12,7 @@ DEPENDS = "${@bb.utils.contains('DISTRO_FEATURES', 'x11', '${X11DEPENDS}', '', d
${@bb.utils.contains('DISTRO_FEATURES', 'ptest', 'boost', '', d)} \
"
-SRC_URI = "ftp://sourceware.org/pub/valgrind/valgrind-${PV}.tar.bz2 \
+SRC_URI = "http://www.valgrind.org/downloads/valgrind-${PV}.tar.bz2 \
file://fixed-perl-path.patch \
file://Added-support-for-PPC-instructions-mfatbu-mfatbl.patch \
file://run-ptest \
@@ -30,18 +30,15 @@ SRC_URI = "ftp://sourceware.org/pub/valgrind/valgrind-${PV}.tar.bz2 \
file://0004-pth_atfork1.c-Define-error-API-for-musl.patch \
file://0005-tc20_verifywrap.c-Fake-__GLIBC_PREREQ-with-musl.patch \
file://0006-pth_detached3.c-Dereference-pthread_t-before-adding-.patch \
- file://0001-memcheck-tests-Use-ucontext_t-instead-of-struct-ucon.patch \
file://0001-memcheck-arm64-Define-__THROW-if-not-already-defined.patch \
file://0002-memcheck-x86-Define-__THROW-if-not-defined.patch \
file://0003-tests-seg_override-Replace-__modify_ldt-with-syscall.patch \
- file://link-gz-tests.patch \
- file://ppc-headers.patch \
- file://mask-CPUID-support-in-HWCAP-on-aarch64.patch \
file://0001-fix-opcode-not-supported-on-mips32-linux.patch \
- file://0002-fix-broken-inline-asm-in-tests-on-mips32-linux.patch \
+ file://0001-Guard-against-__GLIBC_PREREQ-for-musl-libc.patch \
+ file://0001-Make-local-functions-static-to-avoid-assembler-error.patch \
"
-SRC_URI[md5sum] = "817dd08f1e8a66336b9ff206400a5369"
-SRC_URI[sha256sum] = "d76680ef03f00cd5e970bbdcd4e57fb1f6df7d2e2c071635ef2be74790190c3b"
+SRC_URI[md5sum] = "74175426afa280184b62591b58c671b3"
+SRC_URI[sha256sum] = "037c11bfefd477cc6e9ebe8f193bb237fe397f7ce791b4a4ce3fa1c6a520baa5"
UPSTREAM_CHECK_REGEX = "valgrind-(?P<pver>\d+(\.\d+)+)\.tar"
COMPATIBLE_HOST = '(i.86|x86_64|arm|aarch64|mips|powerpc|powerpc64).*-linux'
@@ -57,6 +54,7 @@ COMPATIBLE_HOST_linux-muslx32 = 'null'
# Disable for some MIPS variants
COMPATIBLE_HOST_mipsarchr6 = 'null'
+COMPATIBLE_HOST_linux-gnun32 = 'null'
inherit autotools ptest multilib_header
diff --git a/poky/meta/recipes-devtools/yasm/yasm_1.3.0.bb b/poky/meta/recipes-devtools/yasm/yasm_1.3.0.bb
deleted file mode 100644
index 31af1e287..000000000
--- a/poky/meta/recipes-devtools/yasm/yasm_1.3.0.bb
+++ /dev/null
@@ -1,16 +0,0 @@
-SUMMARY = "x86 (SSE) assembler supporting NASM and GAS-syntaxes"
-LICENSE = "BSD"
-HOMEPAGE = "http://www.tortall.net/projects/yasm/"
-
-LIC_FILES_CHKSUM = "file://COPYING;md5=a12d8903508fb6bfd49d8d82c6170dd9"
-
-SRC_URI = "http://www.tortall.net/projects/yasm/releases/${BP}.tar.gz"
-
-SRC_URI[md5sum] = "fc9e586751ff789b34b1f21d572d96af"
-SRC_URI[sha256sum] = "3dce6601b495f5b3d45b59f7d2492a340ee7e84b5beca17e48f862502bd5603f"
-
-export CCLD_FOR_BUILD = "${CC_FOR_BUILD}"
-
-inherit autotools gettext
-
-BBCLASSEXTEND = "native"