summaryrefslogtreecommitdiffstats
path: root/meta/recipes-support
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-support')
-rw-r--r--meta/recipes-support/appstream/appstream/0001-remove-hardcoded-path.patch32
-rw-r--r--meta/recipes-support/appstream/appstream_1.0.2.bb44
-rw-r--r--meta/recipes-support/apr/apr-util/0001-Fix-error-handling-in-gdbm.patch135
-rw-r--r--meta/recipes-support/apr/apr-util/0001-test_transformation-Check-if-transform-is-supported-.patch37
-rw-r--r--meta/recipes-support/apr/apr-util_1.6.3.bb (renamed from meta/recipes-support/apr/apr-util_1.6.1.bb)31
-rw-r--r--meta/recipes-support/apr/apr/0001-Add-option-to-disable-timed-dependant-tests.patch22
-rw-r--r--meta/recipes-support/apr/apr/0001-configure-Remove-runtime-test-for-mmap-that-can-map-.patch58
-rw-r--r--meta/recipes-support/apr/apr/0001-dso-Check-for-NULL-handle-in-apr_dso_sym.patch37
-rw-r--r--meta/recipes-support/apr/apr/0002-apr-Remove-workdir-path-references-from-installed-ap.patch25
-rw-r--r--meta/recipes-support/apr/apr/0003-Makefile.in-configure.in-support-cross-compiling.patch63
-rw-r--r--meta/recipes-support/apr/apr/0006-apr-fix-off_t-size-doesn-t-match-in-glibc-when-cross.patch76
-rw-r--r--meta/recipes-support/apr/apr/0007-explicitly-link-libapr-against-phtread-to-make-gold-.patch50
-rw-r--r--meta/recipes-support/apr/apr/autoconf-2.73.patch26
-rw-r--r--meta/recipes-support/apr/apr/autoconf270.patch22
-rw-r--r--meta/recipes-support/apr/apr/libtoolize_check.patch21
-rw-r--r--meta/recipes-support/apr/apr_1.7.4.bb (renamed from meta/recipes-support/apr/apr_1.7.0.bb)55
-rw-r--r--meta/recipes-support/argp-standalone/argp-standalone_1.3.bb32
-rw-r--r--meta/recipes-support/argp-standalone/argp-standalone_1.4.1.bb31
-rw-r--r--meta/recipes-support/argp-standalone/files/0001-throw-in-funcdef.patch84
-rw-r--r--meta/recipes-support/argp-standalone/files/0002-isprint.patch51
-rw-r--r--meta/recipes-support/argp-standalone/files/out_of_tree_build.patch2
-rw-r--r--meta/recipes-support/aspell/aspell_0.60.8.1.bb38
-rw-r--r--meta/recipes-support/aspell/aspell_0.60.8.bb34
-rw-r--r--meta/recipes-support/atk/at-spi2-atk_2.38.0.bb18
-rw-r--r--meta/recipes-support/atk/at-spi2-core_2.38.0.bb37
-rw-r--r--meta/recipes-support/atk/at-spi2-core_2.52.0.bb50
-rw-r--r--meta/recipes-support/atk/atk_2.36.0.bb20
-rw-r--r--meta/recipes-support/attr/acl/0001-test-patch-out-failing-bits.patch5
-rw-r--r--meta/recipes-support/attr/acl/0001-tests-do-not-hardcode-the-build-path-into-a-helper-l.patch6
-rw-r--r--meta/recipes-support/attr/acl/run-ptest6
-rw-r--r--meta/recipes-support/attr/acl_2.3.2.bb (renamed from meta/recipes-support/attr/acl_2.2.53.bb)25
-rw-r--r--meta/recipes-support/attr/attr.inc25
-rw-r--r--meta/recipes-support/attr/attr/0001-attr.c-Include-libgen.h-for-posix-version-of-basenam.patch35
-rw-r--r--meta/recipes-support/attr/attr/run-ptest7
-rw-r--r--meta/recipes-support/attr/attr_2.4.48.bb6
-rw-r--r--meta/recipes-support/attr/attr_2.5.2.bb5
-rw-r--r--meta/recipes-support/bash-completion/bash-completion_2.11.bb39
-rw-r--r--meta/recipes-support/bash-completion/bash-completion_2.13.0.bb38
-rw-r--r--meta/recipes-support/bmap-tools/bmap-tools_3.5.bb25
-rw-r--r--meta/recipes-support/bmaptool/bmaptool_git.bb29
-rw-r--r--meta/recipes-support/boost/boost-1.84.0.inc (renamed from meta/recipes-support/boost/boost-1.75.0.inc)6
-rw-r--r--meta/recipes-support/boost/boost-build-native_1.84.0.bb28
-rw-r--r--meta/recipes-support/boost/boost-build-native_4.3.0.bb25
-rw-r--r--meta/recipes-support/boost/boost.inc47
-rw-r--r--meta/recipes-support/boost/boost/0001-Don-t-set-up-arch-instruction-set-flags-we-do-that-o.patch25
-rw-r--r--meta/recipes-support/boost/boost/0001-dont-setup-compiler-flags-m32-m64.patch15
-rw-r--r--meta/recipes-support/boost/boost/0001-fiber-libs-Define-SYS_futex-if-it-does-not-exist.patch54
-rw-r--r--meta/recipes-support/boost/boost/boost-CVE-2012-2677.patch112
-rw-r--r--meta/recipes-support/boost/boost/boost-math-disable-pch-for-gcc.patch9
-rw-r--r--meta/recipes-support/boost/boost_1.84.0.bb (renamed from meta/recipes-support/boost/boost_1.75.0.bb)5
-rw-r--r--meta/recipes-support/ca-certificates/ca-certificates/0001-Revert-mozilla-certdata2pem.py-print-a-warning-for-e.patch80
-rw-r--r--meta/recipes-support/ca-certificates/ca-certificates/sbindir.patch26
-rw-r--r--meta/recipes-support/ca-certificates/ca-certificates/update-ca-certificates-support-Toybox.patch33
-rw-r--r--meta/recipes-support/ca-certificates/ca-certificates_20211016.bb (renamed from meta/recipes-support/ca-certificates/ca-certificates_20210119.bb)33
-rw-r--r--meta/recipes-support/consolekit/consolekit_0.4.6.bb16
-rw-r--r--meta/recipes-support/curl/curl/0001-replace-krb5-config-with-pkg-config.patch44
-rw-r--r--meta/recipes-support/curl/curl/721941aadf4adf4f6aeb3f4c0ab489bb89610c36.patch64
-rw-r--r--meta/recipes-support/curl/curl/disable-tests41
-rw-r--r--meta/recipes-support/curl/curl/no-test-timeout.patch25
-rw-r--r--meta/recipes-support/curl/curl/run-ptest11
-rw-r--r--meta/recipes-support/curl/curl_7.75.0.bb85
-rw-r--r--meta/recipes-support/curl/curl_8.7.1.bb150
-rw-r--r--meta/recipes-support/db/db/0001-Fix-libc-compatibility-by-renaming-atomic_init-API.patch2
-rw-r--r--meta/recipes-support/db/db/0001-atomic-Rename-local-__atomic_compare_exchange-to-avo.patch2
-rw-r--r--meta/recipes-support/db/db/0001-clock-Do-not-define-own-timespec.patch2
-rw-r--r--meta/recipes-support/db/db/0001-configure-Add-explicit-tag-options-to-libtool-invoca.patch2
-rw-r--r--meta/recipes-support/db/db/fix-parallel-build.patch2
-rw-r--r--meta/recipes-support/db/db/sequence-type.patch2
-rw-r--r--meta/recipes-support/db/db_5.3.28.bb22
-rw-r--r--meta/recipes-support/debianutils/debianutils_4.11.2.bb55
-rw-r--r--meta/recipes-support/debianutils/debianutils_5.17.bb58
-rw-r--r--meta/recipes-support/diffoscope/diffoscope_168.bb24
-rw-r--r--meta/recipes-support/diffoscope/diffoscope_265.bb43
-rw-r--r--meta/recipes-support/dos2unix/dos2unix_7.5.2.bb (renamed from meta/recipes-support/dos2unix/dos2unix_7.4.2.bb)8
-rw-r--r--meta/recipes-support/enchant/enchant2_2.2.15.bb28
-rw-r--r--meta/recipes-support/enchant/enchant2_2.6.9.bb29
-rw-r--r--meta/recipes-support/fribidi/fribidi_1.0.10.bb17
-rw-r--r--meta/recipes-support/fribidi/fribidi_1.0.13.bb20
-rw-r--r--meta/recipes-support/gdbm/files/ptest.patch26
-rwxr-xr-xmeta/recipes-support/gdbm/files/run-ptest2
-rw-r--r--meta/recipes-support/gdbm/gdbm_1.23.bb (renamed from meta/recipes-support/gdbm/gdbm_1.19.bb)14
-rw-r--r--meta/recipes-support/gmp/gmp.inc4
-rw-r--r--meta/recipes-support/gmp/gmp/0001-confiure.ac-Believe-the-cflags-from-environment.patch2
-rw-r--r--meta/recipes-support/gmp/gmp_6.3.0.bb (renamed from meta/recipes-support/gmp/gmp_6.2.1.bb)29
-rw-r--r--meta/recipes-support/gnome-desktop-testing/gnome-desktop-testing/0001-fix-non-literal-format-string-issue-with-clang.patch31
-rw-r--r--meta/recipes-support/gnome-desktop-testing/gnome-desktop-testing_2021.1.bb (renamed from meta/recipes-support/gnome-desktop-testing/gnome-desktop-testing_2018.1.bb)12
-rw-r--r--meta/recipes-support/gnupg/gnupg/0001-Use-pkg-config-to-find-pth-instead-of-pth-config.patch105
-rw-r--r--meta/recipes-support/gnupg/gnupg/0001-configure.ac-use-a-custom-value-for-the-location-of-.patch6
-rw-r--r--meta/recipes-support/gnupg/gnupg/0002-use-pkgconfig-instead-of-npth-config.patch73
-rw-r--r--meta/recipes-support/gnupg/gnupg/0003-dirmngr-uses-libgpg-error.patch28
-rw-r--r--meta/recipes-support/gnupg/gnupg/0004-autogen.sh-fix-find-version-for-beta-checking.patch12
-rw-r--r--meta/recipes-support/gnupg/gnupg/relocate.patch91
-rw-r--r--meta/recipes-support/gnupg/gnupg_2.4.5.bb (renamed from meta/recipes-support/gnupg/gnupg_2.2.27.bb)36
-rw-r--r--meta/recipes-support/gnutls/gnutls/0001-Creating-.hmac-file-should-be-excuted-in-target-envi.patch26
-rw-r--r--meta/recipes-support/gnutls/gnutls/0001-Fix-RSAES-PKCS1-v1_5-system-wide-configuration.patch269
-rw-r--r--meta/recipes-support/gnutls/gnutls/Add-ptest-support.patch57
-rw-r--r--meta/recipes-support/gnutls/gnutls/arm_eabi.patch7
-rw-r--r--meta/recipes-support/gnutls/gnutls/run-ptest100
-rw-r--r--meta/recipes-support/gnutls/gnutls_3.7.0.bb67
-rw-r--r--meta/recipes-support/gnutls/gnutls_3.8.5.bb101
-rw-r--r--meta/recipes-support/gnutls/libtasn1/dont-depend-on-help2man.patch26
-rw-r--r--meta/recipes-support/gnutls/libtasn1_4.19.0.bb (renamed from meta/recipes-support/gnutls/libtasn1_4.16.0.bb)13
-rw-r--r--meta/recipes-support/gpgme/gpgme/0001-Revert-build-Make-gpgme.m4-use-gpgrt-config-with-.pc.patch40
-rw-r--r--meta/recipes-support/gpgme/gpgme/0001-autogen.sh-remove-unknown-in-version.patch32
-rw-r--r--meta/recipes-support/gpgme/gpgme/0001-pkgconfig.patch92
-rw-r--r--meta/recipes-support/gpgme/gpgme/0001-posix-io.c-Use-off_t-instead-of-off64_t.patch42
-rw-r--r--meta/recipes-support/gpgme/gpgme/0001-use-closefrom-on-linux-and-glibc-2.34.patch28
-rw-r--r--meta/recipes-support/gpgme/gpgme/0002-gpgme-lang-python-gpg-error-config-should-not-be-use.patch34
-rw-r--r--meta/recipes-support/gpgme/gpgme/0003-Correctly-install-python-modules.patch12
-rw-r--r--meta/recipes-support/gpgme/gpgme/0005-gpgme-config-skip-all-lib-or-usr-lib-directories-in-.patch12
-rw-r--r--meta/recipes-support/gpgme/gpgme/0006-fix-build-path-issue.patch12
-rw-r--r--meta/recipes-support/gpgme/gpgme/0007-python-Add-variables-to-tests.patch52
-rw-r--r--meta/recipes-support/gpgme/gpgme/0008-do-not-auto-check-var-PYTHON.patch13
-rw-r--r--meta/recipes-support/gpgme/gpgme_1.23.2.bb (renamed from meta/recipes-support/gpgme/gpgme_1.15.1.bb)56
-rw-r--r--meta/recipes-support/icu/icu/0001-Disable-LDFLAGSICUDT-for-Linux.patch11
-rw-r--r--meta/recipes-support/icu/icu/0001-icu-Added-armeb-support.patch11
-rw-r--r--meta/recipes-support/icu/icu/fix-install-manx.patch11
-rw-r--r--meta/recipes-support/icu/icu_74-2.bb (renamed from meta/recipes-support/icu/icu_68.2.bb)81
-rw-r--r--meta/recipes-support/iso-codes/iso-codes_4.16.0.bb (renamed from meta/recipes-support/iso-codes/iso-codes_4.5.0.bb)13
-rw-r--r--meta/recipes-support/itstool/itstool/0001-Native-Don-t-use-build-time-hardcoded-python-binary-.patch8
-rw-r--r--meta/recipes-support/itstool/itstool_2.0.6.bb20
-rw-r--r--meta/recipes-support/itstool/itstool_2.0.7.bb29
-rw-r--r--meta/recipes-support/libassuan/libassuan/libassuan-add-pkgconfig-support.patch27
-rw-r--r--meta/recipes-support/libassuan/libassuan_2.5.7.bb (renamed from meta/recipes-support/libassuan/libassuan_2.5.4.bb)15
-rw-r--r--meta/recipes-support/libatomic-ops/libatomic-ops_7.6.10.bb22
-rw-r--r--meta/recipes-support/libatomic-ops/libatomic-ops_7.8.2.bb22
-rw-r--r--meta/recipes-support/libbsd/libbsd_0.12.2.bb (renamed from meta/recipes-support/libbsd/libbsd_0.11.3.bb)16
-rw-r--r--meta/recipes-support/libcap-ng/files/fix-issues-with-swig-4-2.patch32
-rw-r--r--meta/recipes-support/libcap-ng/libcap-ng-python_0.8.2.bb28
-rw-r--r--meta/recipes-support/libcap-ng/libcap-ng-python_0.8.4.bb29
-rw-r--r--meta/recipes-support/libcap-ng/libcap-ng.inc12
-rw-r--r--meta/recipes-support/libcap-ng/libcap-ng/determinism.patch59
-rw-r--r--meta/recipes-support/libcap-ng/libcap-ng_0.8.4.bb (renamed from meta/recipes-support/libcap-ng/libcap-ng_0.8.2.bb)4
-rw-r--r--meta/recipes-support/libcap/files/0001-nativesdk-libcap-Raise-the-size-of-arrays-containing.patch34
-rw-r--r--meta/recipes-support/libcap/files/0001-tests-do-not-statically-link-a-test.patch52
-rw-r--r--meta/recipes-support/libcap/files/0002-tests-do-not-run-target-executables.patch10
-rw-r--r--meta/recipes-support/libcap/libcap_2.69.bb (renamed from meta/recipes-support/libcap/libcap_2.48.bb)51
-rw-r--r--meta/recipes-support/libcheck/libcheck/automake-output.patch82
-rw-r--r--meta/recipes-support/libcheck/libcheck_0.15.2.bb24
-rw-r--r--meta/recipes-support/libcroco/files/CVE-2020-12825.patch192
-rw-r--r--meta/recipes-support/libcroco/libcroco_0.6.13.bb23
-rw-r--r--meta/recipes-support/libdaemon/libdaemon_0.14.bb7
-rw-r--r--meta/recipes-support/libevdev/libevdev/determinism.patch44
-rw-r--r--meta/recipes-support/libevdev/libevdev_1.13.1.bb (renamed from meta/recipes-support/libevdev/libevdev_1.11.0.bb)8
-rw-r--r--meta/recipes-support/libevent/libevent/0002-test-regress.h-Increase-default-timeval-tolerance-50.patch33
-rw-r--r--meta/recipes-support/libevent/libevent/0003-test-mark-util-monotonic_prc_fallback-as-retriable.patch28
-rw-r--r--meta/recipes-support/libevent/libevent/0004-test-retriable-tests-are-marked-failed-only-when-all-a.patch81
-rw-r--r--meta/recipes-support/libevent/libevent/run-ptest10
-rw-r--r--meta/recipes-support/libevent/libevent_2.1.12.bb23
-rw-r--r--meta/recipes-support/libexif/files/CVE-2020-0198.patch66
-rw-r--r--meta/recipes-support/libexif/files/CVE-2020-0452.patch39
-rw-r--r--meta/recipes-support/libexif/libexif/0001-Add-serial-tests-config-needed-by-ptest.patch26
-rw-r--r--meta/recipes-support/libexif/libexif/run-ptest3
-rw-r--r--meta/recipes-support/libexif/libexif_0.6.22.bb23
-rw-r--r--meta/recipes-support/libexif/libexif_0.6.24.bb47
-rw-r--r--meta/recipes-support/libffi/libffi/0001-Address-platforms-with-no-__int128-part2.patch34
-rw-r--r--meta/recipes-support/libffi/libffi/0001-Address-platforms-with-no-__int128.patch27
-rw-r--r--meta/recipes-support/libffi/libffi/0001-Fixed-missed-ifndef-for-__mips_soft_float.patch27
-rw-r--r--meta/recipes-support/libffi/libffi/0001-arm-sysv-reverted-clang-VFP-mitigation.patch104
-rw-r--r--meta/recipes-support/libffi/libffi/0001-ffi_powerpc.h-fix-build-failure-with-powerpc7.patch62
-rw-r--r--meta/recipes-support/libffi/libffi/0001-powerpc-fix-build-failure-on-power7-and-older-532.patch38
-rw-r--r--meta/recipes-support/libffi/libffi/not-win32.patch9
-rw-r--r--meta/recipes-support/libffi/libffi_3.3.bb42
-rw-r--r--meta/recipes-support/libffi/libffi_3.4.6.bb32
-rw-r--r--meta/recipes-support/libfm/libfm-extra_1.3.2.bb3
-rw-r--r--meta/recipes-support/libfm/libfm/0001-Correctly-check-the-stamp-file-that-indicates-if-we-.patch2
-rw-r--r--meta/recipes-support/libfm/libfm/0001-Do-not-add-library-path-to-avoid-host-contamination.patch2
-rw-r--r--meta/recipes-support/libfm/libfm_1.3.2.bb (renamed from meta/recipes-support/libfm/libfm_1.3.1.bb)13
-rw-r--r--meta/recipes-support/libgcrypt/files/0001-Makefile.am-add-a-missing-space.patch41
-rw-r--r--meta/recipes-support/libgcrypt/files/0001-libgcrypt-fix-m4-file-for-oe-core.patch6
-rw-r--r--meta/recipes-support/libgcrypt/files/0002-libgcrypt-fix-building-error-with-O2-in-sysroot-path.patch10
-rw-r--r--meta/recipes-support/libgcrypt/files/0003-tests-bench-slope.c-workaround-ICE-failure-on-mips-w.patch79
-rw-r--r--meta/recipes-support/libgcrypt/files/0004-tests-Makefile.am-fix-undefined-reference-to-pthread.patch19
-rw-r--r--meta/recipes-support/libgcrypt/files/no-bench-slope.patch20
-rw-r--r--meta/recipes-support/libgcrypt/files/no-native-gpg-error.patch18
-rw-r--r--meta/recipes-support/libgcrypt/files/run-ptest9
-rw-r--r--meta/recipes-support/libgcrypt/libgcrypt_1.10.3.bb (renamed from meta/recipes-support/libgcrypt/libgcrypt_1.9.2.bb)41
-rw-r--r--meta/recipes-support/libgit2/libgit2_1.7.2.bb (renamed from meta/recipes-support/libgit2/libgit2_1.1.0.bb)11
-rw-r--r--meta/recipes-support/libgpg-error/libgpg-error/0001-Do-not-fail-when-testing-config-scripts.patch7
-rw-r--r--meta/recipes-support/libgpg-error/libgpg-error/pkgconfig.patch172
-rw-r--r--meta/recipes-support/libgpg-error/libgpg-error/run-ptest3
-rw-r--r--meta/recipes-support/libgpg-error/libgpg-error_1.48.bb (renamed from meta/recipes-support/libgpg-error/libgpg-error_1.41.bb)27
-rw-r--r--meta/recipes-support/libical/libical/0001-Fix-build-with-icu-68.1.patch81
-rw-r--r--meta/recipes-support/libical/libical/0001-Use-our-hand-build-native-src-generator.patch33
-rw-r--r--meta/recipes-support/libical/libical/0001-cmake-Do-not-export-CC-into-gir-compiler.patch33
-rw-r--r--meta/recipes-support/libical/libical_3.0.18.bb54
-rw-r--r--meta/recipes-support/libical/libical_3.0.8.bb46
-rw-r--r--meta/recipes-support/libjitterentropy/libjitterentropy_3.4.1.bb (renamed from meta/recipes-support/libjitterentropy/libjitterentropy_3.0.1.bb)12
-rw-r--r--meta/recipes-support/libksba/libksba/ksba-add-pkgconfig-support.patch6
-rw-r--r--meta/recipes-support/libksba/libksba_1.6.6.bb (renamed from meta/recipes-support/libksba/libksba_1.5.0.bb)15
-rw-r--r--meta/recipes-support/libmd/libmd_1.1.0.bb (renamed from meta/recipes-support/libmd/libmd_1.0.3.bb)2
-rw-r--r--meta/recipes-support/libmicrohttpd/libmicrohttpd_1.0.1.bb27
-rw-r--r--meta/recipes-support/libmpc/libmpc.inc2
-rw-r--r--meta/recipes-support/libmpc/libmpc_1.3.1.bb (renamed from meta/recipes-support/libmpc/libmpc_1.2.1.bb)2
-rw-r--r--meta/recipes-support/libnl/files/enable-serial-tests.patch28
-rwxr-xr-xmeta/recipes-support/libnl/files/run-ptest17
-rw-r--r--meta/recipes-support/libnl/libnl_3.5.0.bb70
-rw-r--r--meta/recipes-support/libnl/libnl_3.9.0.bb64
-rw-r--r--meta/recipes-support/libpcre/libpcre2_10.43.bb (renamed from meta/recipes-support/libpcre/libpcre2_10.36.bb)35
-rw-r--r--meta/recipes-support/libpcre/libpcre_8.45.bb (renamed from meta/recipes-support/libpcre/libpcre_8.44.bb)33
-rw-r--r--meta/recipes-support/libproxy/libproxy/determinism.patch26
-rw-r--r--meta/recipes-support/libproxy/libproxy_0.4.17.bb38
-rw-r--r--meta/recipes-support/libproxy/libproxy_0.5.4.bb28
-rw-r--r--meta/recipes-support/libpsl/libpsl_0.21.1.bb20
-rw-r--r--meta/recipes-support/libpsl/libpsl_0.21.5.bb26
-rw-r--r--meta/recipes-support/libseccomp/files/run-ptest7
-rw-r--r--meta/recipes-support/libseccomp/libseccomp_2.5.5.bb62
-rw-r--r--meta/recipes-support/libsoup/libsoup-2.4/0001-Fix-build-with-libxml2-2.12.0-and-clang-17.patch44
-rw-r--r--meta/recipes-support/libsoup/libsoup-2.4_2.74.3.bb (renamed from meta/recipes-support/libsoup/libsoup-2.4_2.72.0.bb)33
-rw-r--r--meta/recipes-support/libsoup/libsoup_3.4.4.bb59
-rw-r--r--meta/recipes-support/libssh2/files/0001-Don-t-let-host-enviroment-to-decide-if-a-test-is-bui.patch46
-rw-r--r--meta/recipes-support/libssh2/files/0001-configure-Conditionally-undefine-backend-m4-macro.patch30
-rw-r--r--meta/recipes-support/libssh2/files/CVE-2019-17498.patch131
-rw-r--r--meta/recipes-support/libssh2/libssh2/CVE-2023-48795.patch466
-rw-r--r--meta/recipes-support/libssh2/libssh2/run-ptest (renamed from meta/recipes-support/libssh2/files/run-ptest)2
-rw-r--r--meta/recipes-support/libssh2/libssh2_1.11.0.bb (renamed from meta/recipes-support/libssh2/libssh2_1.9.0.bb)24
-rw-r--r--meta/recipes-support/libunistring/libunistring/0001-Unset-need_charset_alias-when-building-for-musl.patch30
-rw-r--r--meta/recipes-support/libunistring/libunistring/iconv-m4-remove-the-test-to-convert-euc-jp.patch56
-rw-r--r--meta/recipes-support/libunistring/libunistring_1.2.bb (renamed from meta/recipes-support/libunistring/libunistring_0.9.10.bb)17
-rw-r--r--meta/recipes-support/libunwind/libunwind.inc22
-rw-r--r--meta/recipes-support/libunwind/libunwind/0001-Add-AO_REQUIRE_CAS-to-fix-build-on-ARM-v6.patch62
-rw-r--r--meta/recipes-support/libunwind/libunwind/0001-src-Gtrace-remove-unguarded-print-calls.patch52
-rw-r--r--meta/recipes-support/libunwind/libunwind/0003-x86-Stub-out-x86_local_resume.patch54
-rw-r--r--meta/recipes-support/libunwind/libunwind/0004-Fix-build-on-mips-musl.patch84
-rw-r--r--meta/recipes-support/libunwind/libunwind/0005-ppc32-Consider-ucontext-mismatches-between-glibc-and.patch16
-rw-r--r--meta/recipes-support/libunwind/libunwind/0006-Fix-for-X32.patch32
-rw-r--r--meta/recipes-support/libunwind/libunwind/mips-byte-order.patch35
-rw-r--r--meta/recipes-support/libunwind/libunwind/mips-coredump-register.patch100
-rw-r--r--meta/recipes-support/libunwind/libunwind/musl-header-conflict.patch44
-rw-r--r--meta/recipes-support/libunwind/libunwind_1.5.0.bb26
-rw-r--r--meta/recipes-support/libunwind/libunwind_1.6.2.bb42
-rw-r--r--meta/recipes-support/liburcu/liburcu_0.14.0.bb (renamed from meta/recipes-support/liburcu/liburcu_0.12.2.bb)12
-rw-r--r--meta/recipes-support/libusb/libusb1_1.0.24.bb43
-rw-r--r--meta/recipes-support/libusb/libusb1_1.0.27.bb48
-rw-r--r--meta/recipes-support/libxslt/libxslt_1.1.39.bb (renamed from meta/recipes-support/libxslt/libxslt_1.1.34.bb)31
-rw-r--r--meta/recipes-support/libyaml/libyaml_0.2.5.bb4
-rw-r--r--meta/recipes-support/lz4/files/run-ptest46
-rw-r--r--meta/recipes-support/lz4/lz4_1.9.3.bb30
-rw-r--r--meta/recipes-support/lz4/lz4_1.9.4.bb46
-rw-r--r--meta/recipes-support/lzo/lzo/0001-Use-memcpy-instead-of-reinventing-it.patch10
-rw-r--r--meta/recipes-support/lzo/lzo_2.10.bb6
-rw-r--r--meta/recipes-support/lzop/lzop_1.04.bb5
-rw-r--r--meta/recipes-support/mpfr/mpfr_4.1.0.bb18
-rw-r--r--meta/recipes-support/mpfr/mpfr_4.2.1.bb19
-rw-r--r--meta/recipes-support/nettle/nettle/dlopen-test.patch29
-rw-r--r--meta/recipes-support/nettle/nettle/run-ptest40
-rw-r--r--meta/recipes-support/nettle/nettle_3.9.1.bb (renamed from meta/recipes-support/nettle/nettle_3.7.1.bb)33
-rw-r--r--meta/recipes-support/nghttp2/nghttp2_1.61.0.bb28
-rw-r--r--meta/recipes-support/npth/npth/musl-fix.patch37
-rw-r--r--meta/recipes-support/npth/npth/pkgconfig.patch49
-rw-r--r--meta/recipes-support/npth/npth_1.6.bb27
-rw-r--r--meta/recipes-support/npth/npth_1.7.bb21
-rw-r--r--meta/recipes-support/nss-myhostname/nss-myhostname_0.3.bb8
-rw-r--r--meta/recipes-support/numactl/numactl/0001-define-run-test-target.patch15
-rw-r--r--meta/recipes-support/numactl/numactl/Fix-the-test-output-format.patch17
-rwxr-xr-xmeta/recipes-support/numactl/numactl/run-ptest6
-rw-r--r--meta/recipes-support/numactl/numactl_git.bb16
-rw-r--r--meta/recipes-support/p11-kit/files/fix-parallel-build-failures.patch33
-rw-r--r--meta/recipes-support/p11-kit/p11-kit_0.25.3.bb (renamed from meta/recipes-support/p11-kit/p11-kit_0.23.22.bb)16
-rw-r--r--meta/recipes-support/pinentry/pinentry-1.2.1/gpg-error_pkconf.patch (renamed from meta/recipes-support/pinentry/pinentry-1.1.1/gpg-error_pkconf.patch)127
-rw-r--r--meta/recipes-support/pinentry/pinentry-1.2.1/libassuan_pkgconf.patch (renamed from meta/recipes-support/pinentry/pinentry-1.1.1/libassuan_pkgconf.patch)0
-rw-r--r--meta/recipes-support/pinentry/pinentry_1.2.1.bb (renamed from meta/recipes-support/pinentry/pinentry_1.1.1.bb)10
-rw-r--r--meta/recipes-support/popt/popt/run-ptest3
-rw-r--r--meta/recipes-support/popt/popt_1.18.bb15
-rw-r--r--meta/recipes-support/popt/popt_1.19.bb31
-rw-r--r--meta/recipes-support/ptest-runner/ptest-runner_2.4.0.bb29
-rw-r--r--meta/recipes-support/ptest-runner/ptest-runner_2.4.3.bb39
-rw-r--r--meta/recipes-support/re2c/re2c_2.0.3.bb14
-rw-r--r--meta/recipes-support/re2c/re2c_3.1.bb15
-rw-r--r--meta/recipes-support/rng-tools/rng-tools/rng-tools.service (renamed from meta/recipes-support/rng-tools/rng-tools/rngd.service)4
-rw-r--r--meta/recipes-support/rng-tools/rng-tools_6.16.bb (renamed from meta/recipes-support/rng-tools/rng-tools_6.11.bb)53
-rw-r--r--meta/recipes-support/serf/serf/0001-Fix-syntax-of-a-print-in-the-scons-file-to-unbreak-b.patch29
-rw-r--r--meta/recipes-support/serf/serf/0004-Follow-up-to-r1811083-fix-building-with-scons-3.0.0-.patch29
-rw-r--r--meta/recipes-support/serf/serf/SConstruct.stop.creating.directories.without.sandbox-install.prefix.patch2
-rw-r--r--meta/recipes-support/serf/serf_1.3.10.bb (renamed from meta/recipes-support/serf/serf_1.3.9.bb)12
-rw-r--r--meta/recipes-support/shared-mime-info/shared-mime-info/0001-Fix-build-with-libxml2-2.12.0-and-clang-17.patch26
-rw-r--r--meta/recipes-support/shared-mime-info/shared-mime-info/0002-Handle-build-with-older-versions-of-GCC.patch54
-rw-r--r--meta/recipes-support/shared-mime-info/shared-mime-info_2.4.bb (renamed from meta/recipes-support/shared-mime-info/shared-mime-info_git.bb)19
-rw-r--r--meta/recipes-support/sqlite/sqlite3.inc22
-rw-r--r--meta/recipes-support/sqlite/sqlite3_3.34.1.bb12
-rw-r--r--meta/recipes-support/sqlite/sqlite3_3.45.1.bb8
-rw-r--r--meta/recipes-support/taglib/taglib/CVE-2017-12678.patch40
-rw-r--r--meta/recipes-support/taglib/taglib/CVE-2018-11439.patch51
-rw-r--r--meta/recipes-support/taglib/taglib_2.0.1.bb (renamed from meta/recipes-support/taglib/taglib_1.11.1.bb)20
-rw-r--r--meta/recipes-support/user-creation/xuser-account_0.1.bb6
-rw-r--r--meta/recipes-support/utfcpp/utfcpp_4.0.5.bb16
-rw-r--r--meta/recipes-support/vim/files/0001-src-Makefile-improve-reproducibility.patch13
-rw-r--r--meta/recipes-support/vim/files/disable_acl_header_check.patch17
-rw-r--r--meta/recipes-support/vim/files/no-path-adjust.patch29
-rw-r--r--meta/recipes-support/vim/files/racefix.patch33
-rw-r--r--meta/recipes-support/vim/files/vim-add-knob-whether-elf.h-are-checked.patch13
-rw-r--r--meta/recipes-support/vim/vim-tiny_9.1.bb (renamed from meta/recipes-support/vim/vim-tiny_8.2.bb)0
-rw-r--r--meta/recipes-support/vim/vim.inc74
-rw-r--r--meta/recipes-support/vim/vim_9.1.bb (renamed from meta/recipes-support/vim/vim_8.2.bb)12
-rw-r--r--meta/recipes-support/vte/vte/0001-Add-W_EXITCODE-macro-for-non-glibc-systems.patch38
-rw-r--r--meta/recipes-support/vte/vte_0.62.2.bb57
-rw-r--r--meta/recipes-support/vte/vte_0.74.2.bb56
-rw-r--r--meta/recipes-support/xxhash/xxhash_0.8.2.bb27
298 files changed, 5275 insertions, 5155 deletions
diff --git a/meta/recipes-support/appstream/appstream/0001-remove-hardcoded-path.patch b/meta/recipes-support/appstream/appstream/0001-remove-hardcoded-path.patch
new file mode 100644
index 0000000000..bc811d67b0
--- /dev/null
+++ b/meta/recipes-support/appstream/appstream/0001-remove-hardcoded-path.patch
@@ -0,0 +1,32 @@
1From fe9ebb8c0fa7b84a9c5c667386b8fbb3baea2fad Mon Sep 17 00:00:00 2001
2From: Markus Volk <f_l_k@t-online.de>
3Date: Mon, 12 Dec 2022 15:42:42 +0100
4Subject: [PATCH] remove hardcoded path
5
6Signed-off-by: Markus Volk <f_l_k@t-online.de>
7
8Dont include hardcoded path. This fixes:
9| cc1: error: include location "/usr/include" is unsafe for cross-compilation [-Werror=poison-system-directories]
10
11Upstream-Status: Inappropriate [oe-specific]
12---
13 meson.build | 4 ++--
14 1 file changed, 2 insertions(+), 2 deletions(-)
15
16diff --git a/meson.build b/meson.build
17index fa171d5..79d5168 100644
18--- a/meson.build
19+++ b/meson.build
20@@ -185,10 +185,10 @@ endif
21 stemmer_inc_dirs = include_directories()
22 if get_option('stemming')
23 stemmer_lib = cc.find_library('stemmer', required: true)
24- stemmer_inc_dirs = include_directories(['/usr/include'])
25+ stemmer_inc_dirs = include_directories([''])
26 if not cc.has_header('libstemmer.h')
27 if cc.has_header('libstemmer/libstemmer.h')
28- stemmer_inc_dirs = include_directories('/usr/include/libstemmer')
29+ stemmer_inc_dirs = include_directories('')
30 else
31 error('Unable to find Snowball header "libstemmer.h". Please ensure libstemmer/Snowball is installed properly in order to continue.')
32 endif
diff --git a/meta/recipes-support/appstream/appstream_1.0.2.bb b/meta/recipes-support/appstream/appstream_1.0.2.bb
new file mode 100644
index 0000000000..7eb12a04c5
--- /dev/null
+++ b/meta/recipes-support/appstream/appstream_1.0.2.bb
@@ -0,0 +1,44 @@
1SUMMARY = "AppStream is a collaborative effort for making machine-readable software metadata easily available."
2HOMEPAGE = "https://github.com/ximion/appstream"
3LICENSE = "LGPL-2.1-only"
4LIC_FILES_CHKSUM = "file://COPYING;md5=435ed639f84d4585d93824e7da3d85da"
5
6DEPENDS = " \
7 appstream-native \
8 curl-native \
9 curl \
10 docbook-xml-dtd4-native \
11 gperf-native \
12 glib-2.0 \
13 libyaml \
14 libxml2 \
15 libxmlb \
16 libxslt-native \
17 itstool-native \
18 docbook-xsl-stylesheets-native \
19 python3-pygments-native \
20"
21
22inherit meson gobject-introspection gettext gi-docgen pkgconfig vala
23
24GIR_MESON_OPTION = "gir"
25GIDOCGEN_MESON_OPTION = "apidocs"
26
27SRC_URI = " \
28 https://www.freedesktop.org/software/appstream/releases/AppStream-${PV}.tar.xz \
29 file://0001-remove-hardcoded-path.patch \
30"
31SRC_URI[sha256sum] = "1a5148ca97dcbf5eb6e9c380278bb0d20938569292ea8652df1b3cac8bd2736b"
32
33S = "${WORKDIR}/AppStream-${PV}"
34
35PACKAGECONFIG ?= "${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)}"
36
37PACKAGECONFIG[systemd] = "-Dsystemd=true,-Dsystemd=false,systemd"
38PACKAGECONFIG[stemming] = "-Dstemming=true,-Dstemming=false,libstemmer"
39
40FILES:${PN} += "${datadir}"
41
42EXTRA_OEMESON += "${@bb.utils.contains('GI_DATA_ENABLED', 'True', '-Dvapi=true', '-Dvapi=false', d)}"
43
44BBCLASSEXTEND = "native"
diff --git a/meta/recipes-support/apr/apr-util/0001-Fix-error-handling-in-gdbm.patch b/meta/recipes-support/apr/apr-util/0001-Fix-error-handling-in-gdbm.patch
deleted file mode 100644
index 57e7453312..0000000000
--- a/meta/recipes-support/apr/apr-util/0001-Fix-error-handling-in-gdbm.patch
+++ /dev/null
@@ -1,135 +0,0 @@
1From 6b638fa9afbeb54dfa19378e391465a5284ce1ad Mon Sep 17 00:00:00 2001
2From: Changqing Li <changqing.li@windriver.com>
3Date: Wed, 12 Sep 2018 17:16:36 +0800
4Subject: [PATCH] Fix error handling in gdbm
5
6Only check for gdbm_errno if the return value of the called gdbm_*
7function says so. This fixes apr-util with gdbm 1.14, which does not
8seem to always reset gdbm_errno.
9
10Also make the gdbm driver return error codes starting with
11APR_OS_START_USEERR instead of always returning APR_EGENERAL. This is
12what the berkleydb driver already does.
13
14Also ensure that dsize is 0 if dptr == NULL.
15
16Upstream-Status: Backport[https://svn.apache.org/viewvc?
17view=revision&amp;revision=1825311]
18
19Signed-off-by: Changqing Li <changqing.li@windriver.com>
20---
21 dbm/apr_dbm_gdbm.c | 47 +++++++++++++++++++++++++++++------------------
22 1 file changed, 29 insertions(+), 18 deletions(-)
23
24diff --git a/dbm/apr_dbm_gdbm.c b/dbm/apr_dbm_gdbm.c
25index 749447a..1c86327 100644
26--- a/dbm/apr_dbm_gdbm.c
27+++ b/dbm/apr_dbm_gdbm.c
28@@ -36,13 +36,25 @@
29 static apr_status_t g2s(int gerr)
30 {
31 if (gerr == -1) {
32- /* ### need to fix this */
33- return APR_EGENERAL;
34+ if (gdbm_errno == GDBM_NO_ERROR)
35+ return APR_SUCCESS;
36+ return APR_OS_START_USEERR + gdbm_errno;
37 }
38
39 return APR_SUCCESS;
40 }
41
42+static apr_status_t gdat2s(datum d)
43+{
44+ if (d.dptr == NULL) {
45+ if (gdbm_errno == GDBM_NO_ERROR || gdbm_errno == GDBM_ITEM_NOT_FOUND)
46+ return APR_SUCCESS;
47+ return APR_OS_START_USEERR + gdbm_errno;
48+ }
49+
50+ return APR_SUCCESS;
51+}
52+
53 static apr_status_t datum_cleanup(void *dptr)
54 {
55 if (dptr)
56@@ -53,22 +65,15 @@ static apr_status_t datum_cleanup(void *dptr)
57
58 static apr_status_t set_error(apr_dbm_t *dbm, apr_status_t dbm_said)
59 {
60- apr_status_t rv = APR_SUCCESS;
61
62- /* ### ignore whatever the DBM said (dbm_said); ask it explicitly */
63+ dbm->errcode = dbm_said;
64
65- if ((dbm->errcode = gdbm_errno) == GDBM_NO_ERROR) {
66+ if (dbm_said == APR_SUCCESS)
67 dbm->errmsg = NULL;
68- }
69- else {
70- dbm->errmsg = gdbm_strerror(gdbm_errno);
71- rv = APR_EGENERAL; /* ### need something better */
72- }
73-
74- /* captured it. clear it now. */
75- gdbm_errno = GDBM_NO_ERROR;
76+ else
77+ dbm->errmsg = gdbm_strerror(dbm_said - APR_OS_START_USEERR);
78
79- return rv;
80+ return dbm_said;
81 }
82
83 /* --------------------------------------------------------------------------
84@@ -107,7 +112,7 @@ static apr_status_t vt_gdbm_open(apr_dbm_t **pdb, const char *pathname,
85 NULL);
86
87 if (file == NULL)
88- return APR_EGENERAL; /* ### need a better error */
89+ return APR_OS_START_USEERR + gdbm_errno; /* ### need a better error */
90
91 /* we have an open database... return it */
92 *pdb = apr_pcalloc(pool, sizeof(**pdb));
93@@ -141,10 +146,12 @@ static apr_status_t vt_gdbm_fetch(apr_dbm_t *dbm, apr_datum_t key,
94 if (pvalue->dptr)
95 apr_pool_cleanup_register(dbm->pool, pvalue->dptr, datum_cleanup,
96 apr_pool_cleanup_null);
97+ else
98+ pvalue->dsize = 0;
99
100 /* store the error info into DBM, and return a status code. Also, note
101 that *pvalue should have been cleared on error. */
102- return set_error(dbm, APR_SUCCESS);
103+ return set_error(dbm, gdat2s(rd));
104 }
105
106 static apr_status_t vt_gdbm_store(apr_dbm_t *dbm, apr_datum_t key,
107@@ -201,9 +208,11 @@ static apr_status_t vt_gdbm_firstkey(apr_dbm_t *dbm, apr_datum_t *pkey)
108 if (pkey->dptr)
109 apr_pool_cleanup_register(dbm->pool, pkey->dptr, datum_cleanup,
110 apr_pool_cleanup_null);
111+ else
112+ pkey->dsize = 0;
113
114 /* store any error info into DBM, and return a status code. */
115- return set_error(dbm, APR_SUCCESS);
116+ return set_error(dbm, gdat2s(rd));
117 }
118
119 static apr_status_t vt_gdbm_nextkey(apr_dbm_t *dbm, apr_datum_t *pkey)
120@@ -221,9 +230,11 @@ static apr_status_t vt_gdbm_nextkey(apr_dbm_t *dbm, apr_datum_t *pkey)
121 if (pkey->dptr)
122 apr_pool_cleanup_register(dbm->pool, pkey->dptr, datum_cleanup,
123 apr_pool_cleanup_null);
124+ else
125+ pkey->dsize = 0;
126
127 /* store any error info into DBM, and return a status code. */
128- return set_error(dbm, APR_SUCCESS);
129+ return set_error(dbm, gdat2s(rd));
130 }
131
132 static void vt_gdbm_freedatum(apr_dbm_t *dbm, apr_datum_t data)
133--
1342.7.4
135
diff --git a/meta/recipes-support/apr/apr-util/0001-test_transformation-Check-if-transform-is-supported-.patch b/meta/recipes-support/apr/apr-util/0001-test_transformation-Check-if-transform-is-supported-.patch
new file mode 100644
index 0000000000..261b78736f
--- /dev/null
+++ b/meta/recipes-support/apr/apr-util/0001-test_transformation-Check-if-transform-is-supported-.patch
@@ -0,0 +1,37 @@
1From 3a97f58cfb40fc1911bbfd067e8457a472613d75 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Tue, 18 Apr 2023 22:58:00 -0700
4Subject: [PATCH] test_transformation: Check if transform is supported before
5 using it
6
7This helps in excluding these tests on systems where these are not
8available e.g. musl
9
10Upstream-Status: Submitted [https://bz.apache.org/bugzilla/show_bug.cgi?id=66570]
11Signed-off-by: Khem Raj <raj.khem@gmail.com>
12---
13 test/testxlate.c | 8 ++++++--
14 1 file changed, 6 insertions(+), 2 deletions(-)
15
16diff --git a/test/testxlate.c b/test/testxlate.c
17index 6981eff..de00fa4 100644
18--- a/test/testxlate.c
19+++ b/test/testxlate.c
20@@ -116,8 +116,12 @@ static void test_transformation(abts_case *tc, void *data)
21 }
22
23 /* 4. Transformation using charset aliases */
24- one_test(tc, "UTF-8", "UTF-7", test_utf8, test_utf7, p);
25- one_test(tc, "UTF-7", "UTF-8", test_utf7, test_utf8, p);
26+ if (is_transform_supported(tc, "UTF-8", "UTF-7", p)) {
27+ one_test(tc, "UTF-8", "UTF-7", test_utf8, test_utf7, p);
28+ }
29+ if (is_transform_supported(tc, "UTF-7", "UTF-8", p)) {
30+ one_test(tc, "UTF-7", "UTF-8", test_utf7, test_utf8, p);
31+ }
32 }
33
34 #endif /* APR_HAS_XLATE */
35--
362.40.0
37
diff --git a/meta/recipes-support/apr/apr-util_1.6.1.bb b/meta/recipes-support/apr/apr-util_1.6.3.bb
index 4e183ca374..1371e262dd 100644
--- a/meta/recipes-support/apr/apr-util_1.6.1.bb
+++ b/meta/recipes-support/apr/apr-util_1.6.3.bb
@@ -12,12 +12,11 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=158aa0b1efe0c12f23d4b007ddb9a5db \
12SRC_URI = "${APACHE_MIRROR}/apr/${BPN}-${PV}.tar.gz \ 12SRC_URI = "${APACHE_MIRROR}/apr/${BPN}-${PV}.tar.gz \
13 file://configfix.patch \ 13 file://configfix.patch \
14 file://configure_fixes.patch \ 14 file://configure_fixes.patch \
15 file://0001-test_transformation-Check-if-transform-is-supported-.patch \
15 file://run-ptest \ 16 file://run-ptest \
16 file://0001-Fix-error-handling-in-gdbm.patch \ 17 "
17"
18 18
19SRC_URI[md5sum] = "bd502b9a8670a8012c4d90c31a84955f" 19SRC_URI[sha256sum] = "2b74d8932703826862ca305b094eef2983c27b39d5c9414442e9976a9acf1983"
20SRC_URI[sha256sum] = "b65e40713da57d004123b6319828be7f1273fbc6490e145874ee1177e112c459"
21 20
22EXTRA_OECONF = "--with-apr=${STAGING_BINDIR_CROSS}/apr-1-config \ 21EXTRA_OECONF = "--with-apr=${STAGING_BINDIR_CROSS}/apr-1-config \
23 --without-odbc \ 22 --without-odbc \
@@ -32,35 +31,35 @@ MULTILIB_SCRIPTS = "${PN}-dev:${bindir}/apu-1-config"
32 31
33OE_BINCONFIG_EXTRA_MANGLE = " -e 's:location=source:location=installed:'" 32OE_BINCONFIG_EXTRA_MANGLE = " -e 's:location=source:location=installed:'"
34 33
35do_configure_append() { 34do_configure:append() {
36 if [ "${CLASSOVERRIDE}" = "class-target" ]; then 35 if [ "${CLASSOVERRIDE}" = "class-target" ]; then
37 cp ${STAGING_DATADIR}/apr/apr_rules.mk ${B}/build/rules.mk 36 cp ${STAGING_DATADIR}/apr/apr_rules.mk ${B}/build/rules.mk
38 sed -i -e 's#^CFLAGS=.*#CFLAGS=${TARGET_CFLAGS}#g' ${B}/build/rules.mk 37 sed -i -e 's#^CFLAGS=.*#CFLAGS=${TARGET_CFLAGS}#g' ${B}/build/rules.mk
39 fi 38 fi
40} 39}
41do_configure_prepend_class-native() { 40do_configure:prepend:class-native() {
42 mkdir ${B}/build 41 mkdir ${B}/build
43 cp ${STAGING_DATADIR_NATIVE}/apr/apr_rules.mk ${B}/build/rules.mk 42 cp ${STAGING_DATADIR_NATIVE}/apr/apr_rules.mk ${B}/build/rules.mk
44} 43}
45do_configure_append_class-native() { 44do_configure:append:class-native() {
46 sed -i "s#LIBTOOL=\$(SHELL) \$(apr_builddir)#LIBTOOL=\$(SHELL) ${STAGING_BINDIR_NATIVE}#" ${B}/build/rules.mk 45 sed -i "s#LIBTOOL=\$(SHELL) \$(apr_builddir)#LIBTOOL=\$(SHELL) ${STAGING_BINDIR_NATIVE}#" ${B}/build/rules.mk
47 # sometimes there isn't SHELL 46 # sometimes there isn't SHELL
48 sed -i "s#LIBTOOL=\$(apr_builddir)#LIBTOOL=${STAGING_BINDIR_NATIVE}#" ${B}/build/rules.mk 47 sed -i "s#LIBTOOL=\$(apr_builddir)#LIBTOOL=${STAGING_BINDIR_NATIVE}#" ${B}/build/rules.mk
49} 48}
50 49
51do_configure_prepend_class-nativesdk() { 50do_configure:prepend:class-nativesdk() {
52 cp ${STAGING_DATADIR}/apr/apr_rules.mk ${S}/build/rules.mk 51 cp ${STAGING_DATADIR}/apr/apr_rules.mk ${S}/build/rules.mk
53 sed -i -e 's#^CFLAGS=.*#CFLAGS=${TARGET_CFLAGS}#g' ${S}/build/rules.mk 52 sed -i -e 's#^CFLAGS=.*#CFLAGS=${TARGET_CFLAGS}#g' ${S}/build/rules.mk
54} 53}
55 54
56do_configure_append_class-nativesdk() { 55do_configure:append:class-nativesdk() {
57 sed -i "s#\(apr_builddir\)=.*#\1=${STAGING_DATADIR}/build-1#" ${B}/build/rules.mk 56 sed -i "s#\(apr_builddir\)=.*#\1=${STAGING_DATADIR}/build-1#" ${B}/build/rules.mk
58 sed -i "s#\(apr_builders\)=.*#\1=${STAGING_DATADIR}/build-1#" ${B}/build/rules.mk 57 sed -i "s#\(apr_builders\)=.*#\1=${STAGING_DATADIR}/build-1#" ${B}/build/rules.mk
59 sed -i "s#\(top_builddir\)=.*#\1=${STAGING_DATADIR}/build-1#" ${B}/build/rules.mk 58 sed -i "s#\(top_builddir\)=.*#\1=${STAGING_DATADIR}/build-1#" ${B}/build/rules.mk
60 sed -i "s#\(LIBTOOL=\$(apr_builddir)\).*#\1/libtool#" ${B}/build/rules.mk 59 sed -i "s#\(LIBTOOL=\$(apr_builddir)\).*#\1/libtool#" ${B}/build/rules.mk
61} 60}
62 61
63do_install_append_class-target() { 62do_install:append:class-target() {
64 sed -i -e 's,${STAGING_DIR_HOST},,g' \ 63 sed -i -e 's,${STAGING_DIR_HOST},,g' \
65 -e 's,APU_SOURCE_DIR=.*,APR_SOURCE_DIR=,g' \ 64 -e 's,APU_SOURCE_DIR=.*,APR_SOURCE_DIR=,g' \
66 -e 's,APU_BUILD_DIR=.*,APR_BUILD_DIR=,g' ${D}${bindir}/apu-1-config 65 -e 's,APU_BUILD_DIR=.*,APR_BUILD_DIR=,g' ${D}${bindir}/apu-1-config
@@ -73,16 +72,16 @@ PACKAGECONFIG[sqlite3] = "--with-sqlite3=${STAGING_DIR_HOST}${prefix},--without-
73PACKAGECONFIG[gdbm] = "--with-dbm=gdbm --with-gdbm=${STAGING_DIR_HOST}${prefix},--without-gdbm,gdbm" 72PACKAGECONFIG[gdbm] = "--with-dbm=gdbm --with-gdbm=${STAGING_DIR_HOST}${prefix},--without-gdbm,gdbm"
74 73
75#files ${libdir}/apr-util-1/*.so are not symlinks but loadable modules thus they are packaged in ${PN} 74#files ${libdir}/apr-util-1/*.so are not symlinks but loadable modules thus they are packaged in ${PN}
76FILES_${PN} += "${libdir}/apr-util-1/apr*${SOLIBS} ${libdir}/apr-util-1/apr*${SOLIBSDEV}" 75FILES:${PN} += "${libdir}/apr-util-1/apr*${SOLIBS} ${libdir}/apr-util-1/apr*${SOLIBSDEV}"
77FILES_${PN}-dev += "${libdir}/aprutil.exp ${libdir}/apr-util-1/*.la" 76FILES:${PN}-dev += "${libdir}/aprutil.exp ${libdir}/apr-util-1/*.la"
78FILES_${PN}-staticdev += "${libdir}/apr-util-1/*.a" 77FILES:${PN}-staticdev += "${libdir}/apr-util-1/*.a"
79 78
80INSANE_SKIP_${PN} += "dev-so" 79INSANE_SKIP:${PN} += "dev-so"
81 80
82inherit ptest 81inherit ptest
83 82
84RDEPENDS_${PN}-ptest_append_libc-glibc = " glibc-gconv-iso8859-1 glibc-gconv-iso8859-2 glibc-gconv-utf-7" 83RDEPENDS:${PN}-ptest:append:libc-glibc = " glibc-gconv-iso8859-1 glibc-gconv-iso8859-2 glibc-gconv-utf-7"
85RDEPENDS_${PN}-ptest += "libgcc" 84RDEPENDS:${PN}-ptest += "libgcc"
86 85
87do_compile_ptest() { 86do_compile_ptest() {
88 cd ${B}/test 87 cd ${B}/test
diff --git a/meta/recipes-support/apr/apr/0001-Add-option-to-disable-timed-dependant-tests.patch b/meta/recipes-support/apr/apr/0001-Add-option-to-disable-timed-dependant-tests.patch
index abff4e9331..b46dc76a86 100644
--- a/meta/recipes-support/apr/apr/0001-Add-option-to-disable-timed-dependant-tests.patch
+++ b/meta/recipes-support/apr/apr/0001-Add-option-to-disable-timed-dependant-tests.patch
@@ -1,14 +1,15 @@
1From 2bbe20b4f69e84e7a18bc79d382486953f479328 Mon Sep 17 00:00:00 2001 1From 225abf37cd0b49960664b59f08e515a4c4ea5ad0 Mon Sep 17 00:00:00 2001
2From: Jeremy Puhlman <jpuhlman@mvista.com> 2From: Jeremy Puhlman <jpuhlman@mvista.com>
3Date: Thu, 26 Mar 2020 18:30:36 +0000 3Date: Thu, 26 Mar 2020 18:30:36 +0000
4Subject: [PATCH] Add option to disable timed dependant tests 4Subject: [PATCH] Add option to disable timed dependant tests
5 5
6The disabled tests rely on timing to pass correctly. On a virtualized 6The disabled tests rely on timing to pass correctly. On a virtualized
7system under heavy load, these tests randomly fail because they miss 7system under heavy load, these tests randomly fail because they miss
8a timer or other timing related issues. 8a timer or other timing related issues.
9 9
10Upstream-Status: Pending 10Upstream-Status: Submitted [https://github.com/apache/apr/pull/54]
11Signed-off-by: Jeremy Puhlman <jpuhlman@mvista.com> 11Signed-off-by: Jeremy Puhlman <jpuhlman@mvista.com>
12
12--- 13---
13 configure.in | 6 ++++++ 14 configure.in | 6 ++++++
14 include/apr.h.in | 1 + 15 include/apr.h.in | 1 +
@@ -16,10 +17,10 @@ Signed-off-by: Jeremy Puhlman <jpuhlman@mvista.com>
16 3 files changed, 9 insertions(+), 2 deletions(-) 17 3 files changed, 9 insertions(+), 2 deletions(-)
17 18
18diff --git a/configure.in b/configure.in 19diff --git a/configure.in b/configure.in
19index d9f32d6..f0c5661 100644 20index bfd488b..3663220 100644
20--- a/configure.in 21--- a/configure.in
21+++ b/configure.in 22+++ b/configure.in
22@@ -2886,6 +2886,12 @@ AC_ARG_ENABLE(timedlocks, 23@@ -3023,6 +3023,12 @@ AC_ARG_ENABLE(timedlocks,
23 ) 24 )
24 AC_SUBST(apr_has_timedlocks) 25 AC_SUBST(apr_has_timedlocks)
25 26
@@ -45,10 +46,10 @@ index ee99def..c46a5f4 100644
45 #define APR_PROCATTR_USER_SET_REQUIRES_PASSWORD @apr_procattr_user_set_requires_password@ 46 #define APR_PROCATTR_USER_SET_REQUIRES_PASSWORD @apr_procattr_user_set_requires_password@
46 47
47diff --git a/test/testlock.c b/test/testlock.c 48diff --git a/test/testlock.c b/test/testlock.c
48index a43f477..6233d0b 100644 49index e3437c1..04e01b9 100644
49--- a/test/testlock.c 50--- a/test/testlock.c
50+++ b/test/testlock.c 51+++ b/test/testlock.c
51@@ -396,13 +396,13 @@ abts_suite *testlock(abts_suite *suite) 52@@ -535,7 +535,7 @@ abts_suite *testlock(abts_suite *suite)
52 abts_run_test(suite, threads_not_impl, NULL); 53 abts_run_test(suite, threads_not_impl, NULL);
53 #else 54 #else
54 abts_run_test(suite, test_thread_mutex, NULL); 55 abts_run_test(suite, test_thread_mutex, NULL);
@@ -56,6 +57,8 @@ index a43f477..6233d0b 100644
56+#if APR_HAS_TIMEDLOCKS && APR_HAVE_TIME_DEPENDANT_TESTS 57+#if APR_HAS_TIMEDLOCKS && APR_HAVE_TIME_DEPENDANT_TESTS
57 abts_run_test(suite, test_thread_timedmutex, NULL); 58 abts_run_test(suite, test_thread_timedmutex, NULL);
58 #endif 59 #endif
60 abts_run_test(suite, test_thread_nestedmutex, NULL);
61@@ -543,7 +543,7 @@ abts_suite *testlock(abts_suite *suite)
59 abts_run_test(suite, test_thread_rwlock, NULL); 62 abts_run_test(suite, test_thread_rwlock, NULL);
60 abts_run_test(suite, test_cond, NULL); 63 abts_run_test(suite, test_cond, NULL);
61 abts_run_test(suite, test_timeoutcond, NULL); 64 abts_run_test(suite, test_timeoutcond, NULL);
@@ -63,7 +66,4 @@ index a43f477..6233d0b 100644
63+#if APR_HAS_TIMEDLOCKS && APR_HAVE_TIME_DEPENDANT_TESTS 66+#if APR_HAS_TIMEDLOCKS && APR_HAVE_TIME_DEPENDANT_TESTS
64 abts_run_test(suite, test_timeoutmutex, NULL); 67 abts_run_test(suite, test_timeoutmutex, NULL);
65 #endif 68 #endif
66 #endif 69 #ifdef WIN32
67--
682.23.0
69
diff --git a/meta/recipes-support/apr/apr/0001-configure-Remove-runtime-test-for-mmap-that-can-map-.patch b/meta/recipes-support/apr/apr/0001-configure-Remove-runtime-test-for-mmap-that-can-map-.patch
new file mode 100644
index 0000000000..a78b16284f
--- /dev/null
+++ b/meta/recipes-support/apr/apr/0001-configure-Remove-runtime-test-for-mmap-that-can-map-.patch
@@ -0,0 +1,58 @@
1From 316b81c462f065927d7fec56aadd5c8cb94d1cf0 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Fri, 26 Aug 2022 00:28:08 -0700
4Subject: [PATCH] configure: Remove runtime test for mmap that can map
5 /dev/zero
6
7This never works for cross-compile moreover it ends up disabling
8ac_cv_file__dev_zero which then results in compiler errors in shared
9mutexes
10
11Upstream-Status: Inappropriate [Cross-compile specific]
12Signed-off-by: Khem Raj <raj.khem@gmail.com>
13
14---
15 configure.in | 30 ------------------------------
16 1 file changed, 30 deletions(-)
17
18diff --git a/configure.in b/configure.in
19index 3663220..dce9789 100644
20--- a/configure.in
21+++ b/configure.in
22@@ -1303,36 +1303,6 @@ AC_CHECK_FUNCS([mmap munmap shm_open shm_unlink shmget shmat shmdt shmctl \
23 APR_CHECK_DEFINE(MAP_ANON, sys/mman.h)
24 AC_CHECK_FILE(/dev/zero)
25
26-# Not all systems can mmap /dev/zero (such as HP-UX). Check for that.
27-if test "$ac_cv_func_mmap" = "yes" &&
28- test "$ac_cv_file__dev_zero" = "yes"; then
29- AC_CACHE_CHECK([for mmap that can map /dev/zero],
30- [ac_cv_mmap__dev_zero],
31- [AC_TRY_RUN([#include <sys/types.h>
32-#include <sys/stat.h>
33-#include <fcntl.h>
34-#ifdef HAVE_SYS_MMAN_H
35-#include <sys/mman.h>
36-#endif
37- int main()
38- {
39- int fd;
40- void *m;
41- fd = open("/dev/zero", O_RDWR);
42- if (fd < 0) {
43- return 1;
44- }
45- m = mmap(0, sizeof(void*), PROT_READ|PROT_WRITE, MAP_SHARED, fd, 0);
46- if (m == (void *)-1) { /* aka MAP_FAILED */
47- return 2;
48- }
49- if (munmap(m, sizeof(void*)) < 0) {
50- return 3;
51- }
52- return 0;
53- }], [], [ac_cv_file__dev_zero=no], [ac_cv_file__dev_zero=no])])
54-fi
55-
56 # Now we determine which one is our anonymous shmem preference.
57 haveshmgetanon="0"
58 havemmapzero="0"
diff --git a/meta/recipes-support/apr/apr/0001-dso-Check-for-NULL-handle-in-apr_dso_sym.patch b/meta/recipes-support/apr/apr/0001-dso-Check-for-NULL-handle-in-apr_dso_sym.patch
new file mode 100644
index 0000000000..8ba181b887
--- /dev/null
+++ b/meta/recipes-support/apr/apr/0001-dso-Check-for-NULL-handle-in-apr_dso_sym.patch
@@ -0,0 +1,37 @@
1From a25be1aaa92a6d2e7f4cc3fdfbb92e5a10b63035 Mon Sep 17 00:00:00 2001
2From: Greg Beard <gmbeard@googlemail.com>
3Date: Sat, 25 Mar 2023 08:31:36 +0000
4Subject: [PATCH] dso: Check for NULL handle in apr_dso_sym
5
6Upstream-Status: Backport [https://github.com/apache/apr/pull/40/commits/0efce00093b1ba405d91c7f0eab9755c8527eead]
7Signed-off-by: Khem Raj <raj.khem@gmail.com>
8---
9 dso/unix/dso.c | 12 ++++++++++++
10 1 file changed, 12 insertions(+)
11
12diff --git a/dso/unix/dso.c b/dso/unix/dso.c
13index fdd56f1..583d5de 100644
14--- a/dso/unix/dso.c
15+++ b/dso/unix/dso.c
16@@ -173,6 +173,18 @@ APR_DECLARE(apr_status_t) apr_dso_sym(apr_dso_handle_sym_t *ressym,
17 apr_dso_handle_t *handle,
18 const char *symname)
19 {
20+ /* This is necessary for `testdso.c`. For some reason, musl
21+ * builds fail the `test_unload_library` test if the below
22+ * check isn't in place. `test_unload_library` unloads the
23+ * library and then immediately calls this function. Maybe
24+ * musl's `dlsym()` assumes the handle is never NULL and
25+ * some UB is being invoked here...
26+ */
27+ if (handle->handle == NULL) {
28+ handle->errormsg = "library not loaded";
29+ return APR_ESYMNOTFOUND;
30+ }
31+
32 #if defined(DSO_USE_SHL)
33 void *symaddr = NULL;
34 int status;
35--
362.42.0
37
diff --git a/meta/recipes-support/apr/apr/0002-apr-Remove-workdir-path-references-from-installed-ap.patch b/meta/recipes-support/apr/apr/0002-apr-Remove-workdir-path-references-from-installed-ap.patch
index 72e706f966..d63423f3a1 100644
--- a/meta/recipes-support/apr/apr/0002-apr-Remove-workdir-path-references-from-installed-ap.patch
+++ b/meta/recipes-support/apr/apr/0002-apr-Remove-workdir-path-references-from-installed-ap.patch
@@ -1,8 +1,7 @@
1From 5925b20da8bbc34d9bf5a5dca123ef38864d43c6 Mon Sep 17 00:00:00 2001 1From 689a8db96a6d1e1cae9cbfb35d05ac82140a6555 Mon Sep 17 00:00:00 2001
2From: Hongxu Jia <hongxu.jia@windriver.com> 2From: Hongxu Jia <hongxu.jia@windriver.com>
3Date: Tue, 30 Jan 2018 09:39:06 +0800 3Date: Tue, 30 Jan 2018 09:39:06 +0800
4Subject: [PATCH 2/7] apr: Remove workdir path references from installed apr 4Subject: [PATCH] apr: Remove workdir path references from installed apr files
5 files
6 5
7Upstream-Status: Inappropriate [configuration] 6Upstream-Status: Inappropriate [configuration]
8 7
@@ -14,20 +13,23 @@ packages at target run time, the workdir path caused confusion.
14Rebase to 1.6.3 13Rebase to 1.6.3
15 14
16Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> 15Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
16
17--- 17---
18 apr-config.in | 26 ++------------------------ 18 apr-config.in | 32 ++------------------------------
19 1 file changed, 2 insertions(+), 24 deletions(-) 19 1 file changed, 2 insertions(+), 30 deletions(-)
20 20
21diff --git a/apr-config.in b/apr-config.in 21diff --git a/apr-config.in b/apr-config.in
22index 84b4073..bbbf651 100644 22index bed47ca..47874e5 100644
23--- a/apr-config.in 23--- a/apr-config.in
24+++ b/apr-config.in 24+++ b/apr-config.in
25@@ -152,14 +152,7 @@ while test $# -gt 0; do 25@@ -164,16 +164,7 @@ while test $# -gt 0; do
26 flags="$flags $LDFLAGS" 26 flags="$flags $LDFLAGS"
27 ;; 27 ;;
28 --includes) 28 --includes)
29- if test "$location" = "installed"; then 29- if test "$location" = "installed"; then
30 flags="$flags -I$includedir $EXTRA_INCLUDES" 30 flags="$flags -I$includedir $EXTRA_INCLUDES"
31- elif test "$location" = "crosscompile"; then
32- flags="$flags -I$APR_TARGET_DIR/$includedir $EXTRA_INCLUDES"
31- elif test "$location" = "source"; then 33- elif test "$location" = "source"; then
32- flags="$flags -I$APR_SOURCE_DIR/include $EXTRA_INCLUDES" 34- flags="$flags -I$APR_SOURCE_DIR/include $EXTRA_INCLUDES"
33- else 35- else
@@ -37,13 +39,15 @@ index 84b4073..bbbf651 100644
37 ;; 39 ;;
38 --srcdir) 40 --srcdir)
39 echo $APR_SOURCE_DIR 41 echo $APR_SOURCE_DIR
40@@ -181,29 +174,14 @@ while test $# -gt 0; do 42@@ -197,33 +188,14 @@ while test $# -gt 0; do
41 exit 0 43 exit 0
42 ;; 44 ;;
43 --link-ld) 45 --link-ld)
44- if test "$location" = "installed"; then 46- if test "$location" = "installed"; then
45- ### avoid using -L if libdir is a "standard" location like /usr/lib 47- ### avoid using -L if libdir is a "standard" location like /usr/lib
46- flags="$flags -L$libdir -l${APR_LIBNAME}" 48- flags="$flags -L$libdir -l${APR_LIBNAME}"
49- elif test "$location" = "crosscompile"; then
50- flags="$flags -L$APR_TARGET_DIR/$libdir -l${APR_LIBNAME}"
47- else 51- else
48- ### this surely can't work since the library is in .libs? 52- ### this surely can't work since the library is in .libs?
49- flags="$flags -L$APR_BUILD_DIR -l${APR_LIBNAME}" 53- flags="$flags -L$APR_BUILD_DIR -l${APR_LIBNAME}"
@@ -62,6 +66,8 @@ index 84b4073..bbbf651 100644
62- # Since the user is specifying they are linking with libtool, we 66- # Since the user is specifying they are linking with libtool, we
63- # *know* that -R will be recognized by libtool. 67- # *know* that -R will be recognized by libtool.
64- flags="$flags -L$libdir -R$libdir -l${APR_LIBNAME}" 68- flags="$flags -L$libdir -R$libdir -l${APR_LIBNAME}"
69- elif test "$location" = "crosscompile"; then
70- flags="$flags -L${APR_TARGET_DIR}/$libdir -l${APR_LIBNAME}"
65- else 71- else
66- flags="$flags $LA_FILE" 72- flags="$flags $LA_FILE"
67- fi 73- fi
@@ -69,6 +75,3 @@ index 84b4073..bbbf651 100644
69 ;; 75 ;;
70 --shlib-path-var) 76 --shlib-path-var)
71 echo "$SHLIBPATH_VAR" 77 echo "$SHLIBPATH_VAR"
72--
731.8.3.1
74
diff --git a/meta/recipes-support/apr/apr/0003-Makefile.in-configure.in-support-cross-compiling.patch b/meta/recipes-support/apr/apr/0003-Makefile.in-configure.in-support-cross-compiling.patch
deleted file mode 100644
index 4dd53bd8eb..0000000000
--- a/meta/recipes-support/apr/apr/0003-Makefile.in-configure.in-support-cross-compiling.patch
+++ /dev/null
@@ -1,63 +0,0 @@
1From d5028c10f156c224475b340cfb1ba025d6797243 Mon Sep 17 00:00:00 2001
2From: Hongxu Jia <hongxu.jia@windriver.com>
3Date: Fri, 2 Feb 2018 15:51:42 +0800
4Subject: [PATCH 3/7] Makefile.in/configure.in: support cross compiling
5
6While cross compiling, the tools/gen_test_char could not
7be executed at build time, use AX_PROG_CC_FOR_BUILD to
8build native tools/gen_test_char
9
10Upstream-Status: Submitted [https://github.com/apache/apr/pull/8]
11
12Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
13---
14 Makefile.in | 10 +++-------
15 configure.in | 3 +++
16 2 files changed, 6 insertions(+), 7 deletions(-)
17
18diff --git a/Makefile.in b/Makefile.in
19index 5fb760e..8675f90 100644
20--- a/Makefile.in
21+++ b/Makefile.in
22@@ -46,7 +46,7 @@ LT_VERSION = @LT_VERSION@
23
24 CLEAN_TARGETS = apr-config.out apr.exp exports.c export_vars.c .make.dirs \
25 build/apr_rules.out tools/gen_test_char@EXEEXT@ \
26- tools/gen_test_char.o tools/gen_test_char.lo \
27+ tools/gen_test_char.o \
28 include/private/apr_escape_test_char.h
29 DISTCLEAN_TARGETS = config.cache config.log config.status \
30 include/apr.h include/arch/unix/apr_private.h \
31@@ -131,13 +131,9 @@ check: $(TARGET_LIB)
32 etags:
33 etags `find . -name '*.[ch]'`
34
35-OBJECTS_gen_test_char = tools/gen_test_char.lo $(LOCAL_LIBS)
36-tools/gen_test_char.lo: tools/gen_test_char.c
37+tools/gen_test_char@EXEEXT@: tools/gen_test_char.c
38 $(APR_MKDIR) tools
39- $(LT_COMPILE)
40-
41-tools/gen_test_char@EXEEXT@: $(OBJECTS_gen_test_char)
42- $(LINK_PROG) $(OBJECTS_gen_test_char) $(ALL_LIBS)
43+ $(CC_FOR_BUILD) $(CFLAGS_FOR_BUILD) $< -o $@
44
45 include/private/apr_escape_test_char.h: tools/gen_test_char@EXEEXT@
46 $(APR_MKDIR) include/private
47diff --git a/configure.in b/configure.in
48index 719f331..361120f 100644
49--- a/configure.in
50+++ b/configure.in
51@@ -183,6 +183,9 @@ dnl can only be used once within a configure script, so this prevents a
52 dnl preload section from invoking the macro to get compiler info.
53 AC_PROG_CC
54
55+dnl Check build CC for gen_test_char compiling which is executed at build time.
56+AX_PROG_CC_FOR_BUILD
57+
58 dnl AC_PROG_SED is only avaliable in recent autoconf versions.
59 dnl Use AC_CHECK_PROG instead if AC_PROG_SED is not present.
60 ifdef([AC_PROG_SED],
61--
621.8.3.1
63
diff --git a/meta/recipes-support/apr/apr/0006-apr-fix-off_t-size-doesn-t-match-in-glibc-when-cross.patch b/meta/recipes-support/apr/apr/0006-apr-fix-off_t-size-doesn-t-match-in-glibc-when-cross.patch
deleted file mode 100644
index d1a2ebe881..0000000000
--- a/meta/recipes-support/apr/apr/0006-apr-fix-off_t-size-doesn-t-match-in-glibc-when-cross.patch
+++ /dev/null
@@ -1,76 +0,0 @@
1From 49661ea3858cf8494926cccf57d3e8c6dcb47117 Mon Sep 17 00:00:00 2001
2From: Dengke Du <dengke.du@windriver.com>
3Date: Wed, 14 Dec 2016 18:13:08 +0800
4Subject: [PATCH] apr: fix off_t size doesn't match in glibc when cross
5 compiling
6
7In configure.in, it contains the following:
8
9 APR_CHECK_SIZEOF_EXTENDED([#include <sys/types.h>], off_t, 8)
10
11the macro "APR_CHECK_SIZEOF_EXTENDED" was defined in build/apr_common.m4,
12it use the "AC_TRY_RUN" macro, this macro let the off_t to 8, when cross
13compiling enable.
14
15So it was hardcoded for cross compiling, we should detect it dynamic based on
16the sysroot's glibc. We change it to the following:
17
18 AC_CHECK_SIZEOF(off_t)
19
20The same for the following hardcoded types for cross compiling:
21
22 pid_t 8
23 ssize_t 8
24 size_t 8
25 off_t 8
26
27Change the above correspondingly.
28
29Signed-off-by: Dengke Du <dengke.du@windriver.com>
30
31Upstream-Status: Pending
32
33---
34 configure.in | 8 ++++----
35 1 file changed, 4 insertions(+), 4 deletions(-)
36
37diff --git a/configure.in b/configure.in
38index 27b8539..fb408d1 100644
39--- a/configure.in
40+++ b/configure.in
41@@ -1801,7 +1801,7 @@ else
42 socklen_t_value="int"
43 fi
44
45-APR_CHECK_SIZEOF_EXTENDED([#include <sys/types.h>], pid_t, 8)
46+AC_CHECK_SIZEOF(pid_t)
47
48 if test "$ac_cv_sizeof_pid_t" = "$ac_cv_sizeof_short"; then
49 pid_t_fmt='#define APR_PID_T_FMT "hd"'
50@@ -1873,7 +1873,7 @@ APR_CHECK_TYPES_FMT_COMPATIBLE(size_t, unsigned long, lu, [size_t_fmt="lu"], [
51 APR_CHECK_TYPES_FMT_COMPATIBLE(size_t, unsigned int, u, [size_t_fmt="u"])
52 ])
53
54-APR_CHECK_SIZEOF_EXTENDED([#include <sys/types.h>], ssize_t, 8)
55+AC_CHECK_SIZEOF(ssize_t)
56
57 dnl the else cases below should no longer occur;
58 AC_MSG_CHECKING([which format to use for apr_ssize_t])
59@@ -1891,7 +1891,7 @@ fi
60
61 ssize_t_fmt="#define APR_SSIZE_T_FMT \"$ssize_t_fmt\""
62
63-APR_CHECK_SIZEOF_EXTENDED([#include <stddef.h>], size_t, 8)
64+AC_CHECK_SIZEOF(size_t)
65
66 # else cases below should no longer occur;
67 AC_MSG_CHECKING([which format to use for apr_size_t])
68@@ -1909,7 +1909,7 @@ fi
69
70 size_t_fmt="#define APR_SIZE_T_FMT \"$size_t_fmt\""
71
72-APR_CHECK_SIZEOF_EXTENDED([#include <sys/types.h>], off_t, 8)
73+AC_CHECK_SIZEOF(off_t)
74
75 if test "${ac_cv_sizeof_off_t}${apr_cv_use_lfs64}" = "4yes"; then
76 # Enable LFS
diff --git a/meta/recipes-support/apr/apr/0007-explicitly-link-libapr-against-phtread-to-make-gold-.patch b/meta/recipes-support/apr/apr/0007-explicitly-link-libapr-against-phtread-to-make-gold-.patch
deleted file mode 100644
index 8760b0140c..0000000000
--- a/meta/recipes-support/apr/apr/0007-explicitly-link-libapr-against-phtread-to-make-gold-.patch
+++ /dev/null
@@ -1,50 +0,0 @@
1From c6afc4a4a766478cb6aa6b43a50051881b6318d7 Mon Sep 17 00:00:00 2001
2From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
3Date: Fri, 3 Mar 2017 22:24:17 +0100
4Subject: [PATCH 7/7] explicitly link libapr against phtread to make gold happy
5 on test
6MIME-Version: 1.0
7Content-Type: text/plain; charset=UTF-8
8Content-Transfer-Encoding: 8bit
9
10| ../.libs/libapr-1.so: error: undefined reference to 'pthread_mutexattr_init'
11| ../.libs/libapr-1.so: error: undefined reference to 'pthread_mutexattr_settype'
12| ../.libs/libapr-1.so: error: undefined reference to 'pthread_mutexattr_destroy'
13| ../.libs/libapr-1.so: error: undefined reference to 'pthread_mutex_trylock'
14| ../.libs/libapr-1.so: error: undefined reference to 'pthread_attr_setstacksize'
15| ../.libs/libapr-1.so: error: undefined reference to 'pthread_create'
16| ../.libs/libapr-1.so: error: undefined reference to 'pthread_join'
17| ../.libs/libapr-1.so: error: undefined reference to 'pthread_detach'
18| ../.libs/libapr-1.so: error: undefined reference to 'pthread_sigmask'
19| ../.libs/libapr-1.so: error: undefined reference to 'pthread_once'
20| ../.libs/libapr-1.so: error: undefined reference to 'pthread_key_create'
21| ../.libs/libapr-1.so: error: undefined reference to 'pthread_getspecific'
22| ../.libs/libapr-1.so: error: undefined reference to 'pthread_key_delete'
23| ../.libs/libapr-1.so: error: undefined reference to 'pthread_setspecific'
24| collect2: error: ld returned 1 exit status
25| Makefile:114: recipe for target 'globalmutexchild' failed
26| make[1]: *** [globalmutexchild] Error 1
27| make[1]: Leaving directory '/home/superandy/tmp/oe-core-glibc/work/cortexa7t2hf-neon-vfpv4-angstrom-linux-gnueabi/apr/1.5.2-r0/apr-1.5.2/test'
28
29Upstream-Status: Pending
30
31Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
32---
33 configure.in | 1 +
34 1 file changed, 1 insertion(+)
35
36diff --git a/configure.in b/configure.in
37index a227e72..cbc0f90 100644
38--- a/configure.in
39+++ b/configure.in
40@@ -784,6 +784,7 @@ else
41 APR_PTHREADS_CHECK_RESTORE ] )
42 fi
43 if test "$pthreadh" = "1"; then
44+ APR_ADDTO(LIBS,[-lpthread])
45 APR_CHECK_PTHREAD_GETSPECIFIC_TWO_ARGS
46 APR_CHECK_PTHREAD_ATTR_GETDETACHSTATE_ONE_ARG
47 APR_CHECK_PTHREAD_RECURSIVE_MUTEX
48--
491.8.3.1
50
diff --git a/meta/recipes-support/apr/apr/autoconf-2.73.patch b/meta/recipes-support/apr/apr/autoconf-2.73.patch
new file mode 100644
index 0000000000..a8b7a77566
--- /dev/null
+++ b/meta/recipes-support/apr/apr/autoconf-2.73.patch
@@ -0,0 +1,26 @@
1To work with autoconf 2.73, tweak the macro ordering in configure.in.
2
3Upstream-Status: Pending
4Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
5
6Index: apr-1.7.2/configure.in
7===================================================================
8--- apr-1.7.2.orig/configure.in
9+++ apr-1.7.2/configure.in
10@@ -430,6 +430,8 @@ if test "$host" = "i586-pc-beos"; then
11 ) dnl
12 fi
13
14+APR_CHECK_DEFINE(LOCK_EX, sys/file.h)
15+
16 # this is the place to put specific options for platform/compiler
17 # combinations
18 case "$host:$CC" in
19@@ -2384,7 +2386,6 @@ AC_MSG_RESULT([$msg])
20 AC_SUBST(have_union_semun)
21
22 dnl Checks for libraries.
23-APR_CHECK_DEFINE(LOCK_EX, sys/file.h)
24 APR_CHECK_DEFINE(F_SETLK, fcntl.h)
25 APR_CHECK_DEFINE(SEM_UNDO, sys/sem.h)
26
diff --git a/meta/recipes-support/apr/apr/autoconf270.patch b/meta/recipes-support/apr/apr/autoconf270.patch
deleted file mode 100644
index 9f7b5c624c..0000000000
--- a/meta/recipes-support/apr/apr/autoconf270.patch
+++ /dev/null
@@ -1,22 +0,0 @@
1With autoconf 2.70 confdefs.h is already included. Including it twice generates
2compiler warnings and since this macros is to error on warnings, it breaks.
3
4Fix by not including the file.
5
6Upstream-Status: Pending
7RP - 2021/1/28
8
9Index: apr-1.7.0/build/apr_common.m4
10===================================================================
11--- apr-1.7.0.orig/build/apr_common.m4
12+++ apr-1.7.0/build/apr_common.m4
13@@ -505,8 +505,7 @@ AC_DEFUN([APR_TRY_COMPILE_NO_WARNING],
14 fi
15 AC_COMPILE_IFELSE(
16 [AC_LANG_SOURCE(
17- [#include "confdefs.h"
18- ]
19+ []
20 [[$1]]
21 [int main(int argc, const char *const *argv) {]
22 [[$2]]
diff --git a/meta/recipes-support/apr/apr/libtoolize_check.patch b/meta/recipes-support/apr/apr/libtoolize_check.patch
index 740792e6b0..80ce43caa4 100644
--- a/meta/recipes-support/apr/apr/libtoolize_check.patch
+++ b/meta/recipes-support/apr/apr/libtoolize_check.patch
@@ -1,6 +1,7 @@
1From 17835709bc55657b7af1f7c99b3f572b819cf97e Mon Sep 17 00:00:00 2001
1From: Helmut Grohne <helmut@subdivi.de> 2From: Helmut Grohne <helmut@subdivi.de>
2Subject: check for libtoolize rather than libtool 3Date: Tue, 7 Feb 2023 07:04:00 +0000
3Last-Update: 2014-09-19 4Subject: [PATCH] check for libtoolize rather than libtool
4 5
5libtool is now in package libtool-bin, but apr only needs libtoolize. 6libtool is now in package libtool-bin, but apr only needs libtoolize.
6 7
@@ -8,14 +9,22 @@ Upstream-Status: Pending [ from debian: https://sources.debian.org/data/main/a/a
8 9
9Signed-off-by: Robert Yang <liezhi.yang@windriver.com> 10Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
10 11
11--- apr.orig/build/buildcheck.sh 12---
12+++ apr/build/buildcheck.sh 13 build/buildcheck.sh | 10 ++++------
13@@ -39,11 +39,11 @@ fi 14 1 file changed, 4 insertions(+), 6 deletions(-)
15
16diff --git a/build/buildcheck.sh b/build/buildcheck.sh
17index 44921b5..08bc8a8 100755
18--- a/build/buildcheck.sh
19+++ b/build/buildcheck.sh
20@@ -39,13 +39,11 @@ fi
14 # ltmain.sh (GNU libtool 1.1361 2004/01/02 23:10:52) 1.5a 21 # ltmain.sh (GNU libtool 1.1361 2004/01/02 23:10:52) 1.5a
15 # output is multiline from 1.5 onwards 22 # output is multiline from 1.5 onwards
16 23
17-# Require libtool 1.4 or newer 24-# Require libtool 1.4 or newer
18-libtool=`build/PrintPath glibtool1 glibtool libtool libtool15 libtool14` 25-if test -z "$libtool"; then
26- libtool=`build/PrintPath glibtool1 glibtool libtool libtool15 libtool14`
27-fi
19-lt_pversion=`$libtool --version 2>/dev/null|sed -e 's/([^)]*)//g;s/^[^0-9]*//;s/[- ].*//g;q'` 28-lt_pversion=`$libtool --version 2>/dev/null|sed -e 's/([^)]*)//g;s/^[^0-9]*//;s/[- ].*//g;q'`
20+# Require libtoolize 1.4 or newer 29+# Require libtoolize 1.4 or newer
21+libtoolize=`build/PrintPath glibtoolize1 glibtoolize libtoolize libtoolize15 libtoolize14` 30+libtoolize=`build/PrintPath glibtoolize1 glibtoolize libtoolize libtoolize15 libtoolize14`
diff --git a/meta/recipes-support/apr/apr_1.7.0.bb b/meta/recipes-support/apr/apr_1.7.4.bb
index f879e2864a..4df741c766 100644
--- a/meta/recipes-support/apr/apr_1.7.0.bb
+++ b/meta/recipes-support/apr/apr_1.7.4.bb
@@ -1,8 +1,8 @@
1SUMMARY = "Apache Portable Runtime (APR) library" 1SUMMARY = "Apache Portable Runtime (APR) library"
2DESCRIPTION = "The Apache Portable Runtime (APR) is a supporting library for the \ 2
3Apache web server. It provides a set of APIs that map to the underlying \ 3DESCRIPTION = "Create and maintain software libraries that provide a predictable \
4operating system (OS). Where the OS does not support a particular function, \ 4and consistent interface to underlying platform-specific implementations."
5APR will provide an emulation." 5
6HOMEPAGE = "http://apr.apache.org/" 6HOMEPAGE = "http://apr.apache.org/"
7SECTION = "libs" 7SECTION = "libs"
8DEPENDS = "util-linux" 8DEPENDS = "util-linux"
@@ -16,18 +16,16 @@ BBCLASSEXTEND = "native nativesdk"
16SRC_URI = "${APACHE_MIRROR}/apr/${BPN}-${PV}.tar.bz2 \ 16SRC_URI = "${APACHE_MIRROR}/apr/${BPN}-${PV}.tar.bz2 \
17 file://run-ptest \ 17 file://run-ptest \
18 file://0002-apr-Remove-workdir-path-references-from-installed-ap.patch \ 18 file://0002-apr-Remove-workdir-path-references-from-installed-ap.patch \
19 file://0003-Makefile.in-configure.in-support-cross-compiling.patch \
20 file://0004-Fix-packet-discards-HTTP-redirect.patch \ 19 file://0004-Fix-packet-discards-HTTP-redirect.patch \
21 file://0005-configure.in-fix-LTFLAGS-to-make-it-work-with-ccache.patch \ 20 file://0005-configure.in-fix-LTFLAGS-to-make-it-work-with-ccache.patch \
22 file://0006-apr-fix-off_t-size-doesn-t-match-in-glibc-when-cross.patch \
23 file://0007-explicitly-link-libapr-against-phtread-to-make-gold-.patch \
24 file://libtoolize_check.patch \ 21 file://libtoolize_check.patch \
25 file://0001-Add-option-to-disable-timed-dependant-tests.patch \ 22 file://0001-Add-option-to-disable-timed-dependant-tests.patch \
26 file://autoconf270.patch \ 23 file://0001-configure-Remove-runtime-test-for-mmap-that-can-map-.patch \
24 file://autoconf-2.73.patch \
25 file://0001-dso-Check-for-NULL-handle-in-apr_dso_sym.patch \
27 " 26 "
28 27
29SRC_URI[md5sum] = "7a14a83d664e87599ea25ff4432e48a7" 28SRC_URI[sha256sum] = "fc648de983f3a2a6c9e78dea1f180639bd2fad6c06d556d4367a701fe5c35577"
30SRC_URI[sha256sum] = "e2e148f0b2e99b8e5c6caa09f6d4fb4dd3e83f744aa72a952f94f5a14436f7ea"
31 29
32inherit autotools-brokensep lib_package binconfig multilib_header ptest multilib_script 30inherit autotools-brokensep lib_package binconfig multilib_header ptest multilib_script
33 31
@@ -35,19 +33,32 @@ OE_BINCONFIG_EXTRA_MANGLE = " -e 's:location=source:location=installed:'"
35 33
36# Added to fix some issues with cmake. Refer to https://github.com/bmwcarit/meta-ros/issues/68#issuecomment-19896928 34# Added to fix some issues with cmake. Refer to https://github.com/bmwcarit/meta-ros/issues/68#issuecomment-19896928
37CACHED_CONFIGUREVARS += "apr_cv_mutex_recursive=yes" 35CACHED_CONFIGUREVARS += "apr_cv_mutex_recursive=yes"
38 36# Enable largefile
37CACHED_CONFIGUREVARS += "apr_cv_use_lfs64=yes"
38# Additional AC_TRY_RUN tests which will need to be cached for cross compile
39CACHED_CONFIGUREVARS += "apr_cv_epoll=yes epoll_create1=yes apr_cv_sock_cloexec=yes \
40 ac_cv_struct_rlimit=yes \
41 ac_cv_func_sem_open=yes \
42 apr_cv_process_shared_works=yes \
43 apr_cv_mutex_robust_shared=yes \
44 "
39# Also suppress trying to use sctp. 45# Also suppress trying to use sctp.
40# 46#
41CACHED_CONFIGUREVARS += "ac_cv_header_netinet_sctp_h=no ac_cv_header_netinet_sctp_uio_h=no" 47CACHED_CONFIGUREVARS += "ac_cv_header_netinet_sctp_h=no ac_cv_header_netinet_sctp_uio_h=no"
42 48
43CACHED_CONFIGUREVARS += "ac_cv_sizeof_struct_iovec=yes" 49# ac_cv_sizeof_struct_iovec is deduced using runtime check which will fail during cross-compile
50CACHED_CONFIGUREVARS += "${@['ac_cv_sizeof_struct_iovec=16','ac_cv_sizeof_struct_iovec=8'][d.getVar('SITEINFO_BITS') != '32']}"
51
44CACHED_CONFIGUREVARS += "ac_cv_file__dev_zero=yes" 52CACHED_CONFIGUREVARS += "ac_cv_file__dev_zero=yes"
45 53
54CACHED_CONFIGUREVARS:append:libc-musl = " ac_cv_strerror_r_rc_int=yes"
46PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)}" 55PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)}"
56PACKAGECONFIG:append:libc-musl = " xsi-strerror"
47PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6," 57PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6,"
48PACKAGECONFIG[timed-tests] = "--enable-timed-tests,--disable-timed-tests," 58PACKAGECONFIG[timed-tests] = "--enable-timed-tests,--disable-timed-tests,"
59PACKAGECONFIG[xsi-strerror] = "ac_cv_strerror_r_rc_int=yes,ac_cv_strerror_r_rc_int=no,"
49 60
50do_configure_prepend() { 61do_configure:prepend() {
51 # Avoid absolute paths for grep since it causes failures 62 # Avoid absolute paths for grep since it causes failures
52 # when using sstate between different hosts with different 63 # when using sstate between different hosts with different
53 # install paths for grep. 64 # install paths for grep.
@@ -61,24 +72,26 @@ do_configure_prepend() {
61MULTILIB_SCRIPTS = "${PN}-dev:${bindir}/apr-1-config \ 72MULTILIB_SCRIPTS = "${PN}-dev:${bindir}/apr-1-config \
62 ${PN}-dev:${datadir}/build-1/apr_rules.mk" 73 ${PN}-dev:${datadir}/build-1/apr_rules.mk"
63 74
64FILES_${PN}-dev += "${libdir}/apr.exp ${datadir}/build-1/*" 75FILES:${PN}-dev += "${libdir}/apr.exp ${datadir}/build-1/*"
65RDEPENDS_${PN}-dev += "bash" 76RDEPENDS:${PN}-dev += "bash libtool"
66 77
67RDEPENDS_${PN}-ptest += "libgcc" 78RDEPENDS:${PN}-ptest += "libgcc"
68 79
69#for some reason, build/libtool.m4 handled by buildconf still be overwritten 80#for some reason, build/libtool.m4 handled by buildconf still be overwritten
70#when autoconf, so handle it again. 81#when autoconf, so handle it again.
71do_configure_append() { 82do_configure:append() {
72 sed -i -e 's/LIBTOOL=\(.*\)top_build/LIBTOOL=\1apr_build/' ${S}/build/libtool.m4 83 sed -i -e 's/LIBTOOL=\(.*\)top_build/LIBTOOL=\1apr_build/' ${S}/build/libtool.m4
73 sed -i -e 's/LIBTOOL=\(.*\)top_build/LIBTOOL=\1apr_build/' ${S}/build/apr_rules.mk 84 sed -i -e 's/LIBTOOL=\(.*\)top_build/LIBTOOL=\1apr_build/' ${S}/build/apr_rules.mk
74} 85}
75 86
76do_install_append() { 87do_install:append() {
77 oe_multilib_header apr.h 88 oe_multilib_header apr.h
78 install -d ${D}${datadir}/apr 89 install -d ${D}${datadir}/apr
79} 90}
80 91
81do_install_append_class-target() { 92do_install:append:class-target() {
93 rm -f ${D}${datadir}/build-1/libtool
94 sed -i s,LIBTOOL=.*,LIBTOOL=libtool,g ${D}${datadir}/build-1/apr_rules.mk
82 sed -i -e 's,${DEBUG_PREFIX_MAP},,g' \ 95 sed -i -e 's,${DEBUG_PREFIX_MAP},,g' \
83 -e 's,${STAGING_DIR_HOST},,g' ${D}${datadir}/build-1/apr_rules.mk 96 -e 's,${STAGING_DIR_HOST},,g' ${D}${datadir}/build-1/apr_rules.mk
84 sed -i -e 's,${STAGING_DIR_HOST},,g' \ 97 sed -i -e 's,${STAGING_DIR_HOST},,g' \
@@ -96,12 +109,12 @@ apr_sysroot_preprocess () {
96 cp ${S}/build/apr_rules.mk $d/ 109 cp ${S}/build/apr_rules.mk $d/
97 sed -i s,apr_builddir=.*,apr_builddir=,g $d/apr_rules.mk 110 sed -i s,apr_builddir=.*,apr_builddir=,g $d/apr_rules.mk
98 sed -i s,apr_builders=.*,apr_builders=,g $d/apr_rules.mk 111 sed -i s,apr_builders=.*,apr_builders=,g $d/apr_rules.mk
99 sed -i s,LIBTOOL=.*,LIBTOOL=${HOST_SYS}-libtool,g $d/apr_rules.mk 112 sed -i s,LIBTOOL=.*,LIBTOOL=libtool,g $d/apr_rules.mk
100 sed -i s,\$\(apr_builders\),${STAGING_DATADIR}/apr/,g $d/apr_rules.mk 113 sed -i s,\$\(apr_builders\),${STAGING_DATADIR}/apr/,g $d/apr_rules.mk
101 cp ${S}/build/mkdir.sh $d/ 114 cp ${S}/build/mkdir.sh $d/
102 cp ${S}/build/make_exports.awk $d/ 115 cp ${S}/build/make_exports.awk $d/
103 cp ${S}/build/make_var_export.awk $d/ 116 cp ${S}/build/make_var_export.awk $d/
104 cp ${S}/${HOST_SYS}-libtool ${SYSROOT_DESTDIR}${datadir}/build-1/libtool 117 cp ${S}/libtool ${SYSROOT_DESTDIR}${datadir}/build-1/libtool
105} 118}
106 119
107do_compile_ptest() { 120do_compile_ptest() {
diff --git a/meta/recipes-support/argp-standalone/argp-standalone_1.3.bb b/meta/recipes-support/argp-standalone/argp-standalone_1.3.bb
deleted file mode 100644
index 21bbcab3d3..0000000000
--- a/meta/recipes-support/argp-standalone/argp-standalone_1.3.bb
+++ /dev/null
@@ -1,32 +0,0 @@
1# Copyright (C) 2015 Khem Raj <raj.khem@gmail.com>
2# Released under the MIT license (see COPYING.MIT for the terms)
3
4SUMMARY = "Glibc hierarchical argument parsing standalone library"
5HOMEPAGE = "http://www.lysator.liu.se/~nisse/misc/"
6LICENSE = "LGPL-2.1"
7LIC_FILES_CHKSUM = "file://argp.h;beginline=1;endline=20;md5=008b7e53dea6f9e1d9fdef0d9cf3184a"
8SECTION = "libs"
9
10SRC_URI = "http://www.lysator.liu.se/~nisse/misc/argp-standalone-${PV}.tar.gz \
11 file://0001-throw-in-funcdef.patch \
12 file://0002-isprint.patch \
13 file://out_of_tree_build.patch \
14 "
15SRC_URI[md5sum] = "720704bac078d067111b32444e24ba69"
16SRC_URI[sha256sum] = "dec79694da1319acd2238ce95df57f3680fea2482096e483323fddf3d818d8be"
17
18inherit autotools
19
20CFLAGS += "-fPIC -U__OPTIMIZE__"
21
22RDEPENDS_${PN}-dev = ""
23RDEPENDS_${PN}-staticdev = ""
24
25do_install() {
26 install -D -m 0644 ${B}/libargp.a ${D}${libdir}/libargp.a
27 install -D -m 0644 ${S}/argp.h ${D}${includedir}/argp.h
28}
29#
30# We will skip parsing for non-musl systems
31#
32COMPATIBLE_HOST = ".*-musl.*"
diff --git a/meta/recipes-support/argp-standalone/argp-standalone_1.4.1.bb b/meta/recipes-support/argp-standalone/argp-standalone_1.4.1.bb
new file mode 100644
index 0000000000..00b6036502
--- /dev/null
+++ b/meta/recipes-support/argp-standalone/argp-standalone_1.4.1.bb
@@ -0,0 +1,31 @@
1# Copyright (C) 2015 Khem Raj <raj.khem@gmail.com>
2# Released under the MIT license (see COPYING.MIT for the terms)
3
4SUMMARY = "Glibc hierarchical argument parsing standalone library"
5DESCRIPTION = "Standalone version of arguments parsing functions from GLIBC"
6HOMEPAGE = "https://github.com/ericonr/argp-standalone"
7LICENSE = "LGPL-2.1-only"
8LIC_FILES_CHKSUM = "file://argp.h;beginline=1;endline=20;md5=464f2cfb1c35a5123f9e309d7afd79f8"
9SECTION = "libs"
10
11SRC_URI = "git://github.com/ericonr/argp-standalone;branch=master;protocol=https \
12 file://out_of_tree_build.patch \
13 "
14SRCREV = "e5fe9ad9e83e6765cf8fa787f903d4c6792338b5"
15S = "${WORKDIR}/git"
16
17inherit autotools
18
19CFLAGS += "-fPIC -U__OPTIMIZE__"
20
21DEV_PKG_DEPENDENCY = ""
22RDEPENDS:${PN}-staticdev = ""
23
24do_install() {
25 install -D -m 0644 ${B}/libargp.a ${D}${libdir}/libargp.a
26 install -D -m 0644 ${S}/argp.h ${D}${includedir}/argp.h
27}
28#
29# We will skip parsing for non-musl systems
30#
31COMPATIBLE_HOST = ".*-musl.*"
diff --git a/meta/recipes-support/argp-standalone/files/0001-throw-in-funcdef.patch b/meta/recipes-support/argp-standalone/files/0001-throw-in-funcdef.patch
deleted file mode 100644
index a6e2759c5d..0000000000
--- a/meta/recipes-support/argp-standalone/files/0001-throw-in-funcdef.patch
+++ /dev/null
@@ -1,84 +0,0 @@
1# --- T2-COPYRIGHT-NOTE-BEGIN ---
2# This copyright note is auto-generated by ./scripts/Create-CopyPatch.
3#
4# T2 SDE: package/.../rng-tools/throw-in-funcdef.patch.argp-standalone
5# Copyright (C) 2006 The T2 SDE Project
6#
7# More information can be found in the files COPYING and README.
8#
9# This patch file is dual-licensed. It is available under the license the
10# patched project is licensed under, as long as it is an OpenSource license
11# as defined at http://www.opensource.org/ (e.g. BSD, X11) or under the terms
12# of the GNU General Public License as published by the Free Software
13# Foundation; either version 2 of the License, or (at your option) any later
14# version.
15# --- T2-COPYRIGHT-NOTE-END ---
16
17
18No __THROW in function implementation.
19 --jsaw
20
21Taken from buildroot
22
23Upstream-Status: Pending
24Signed-off-by: Khem Raj <raj.khem@gmail.com>
25
26--- argp-standalone-1.4-test2/argp.h.orig 2006-01-06 02:29:59.000000000 +0100
27+++ argp-standalone-1.4-test2/argp.h 2006-01-06 02:41:10.000000000 +0100
28@@ -560,17 +560,17 @@
29 # endif
30
31 # ifndef ARGP_EI
32-# define ARGP_EI extern __inline__
33+# define ARGP_EI extern inline
34 # endif
35
36 ARGP_EI void
37-__argp_usage (__const struct argp_state *__state) __THROW
38+__argp_usage (__const struct argp_state *__state)
39 {
40 __argp_state_help (__state, stderr, ARGP_HELP_STD_USAGE);
41 }
42
43 ARGP_EI int
44-__option_is_short (__const struct argp_option *__opt) __THROW
45+__option_is_short (__const struct argp_option *__opt)
46 {
47 if (__opt->flags & OPTION_DOC)
48 return 0;
49@@ -582,7 +582,7 @@
50 }
51
52 ARGP_EI int
53-__option_is_end (__const struct argp_option *__opt) __THROW
54+__option_is_end (__const struct argp_option *__opt)
55 {
56 return !__opt->key && !__opt->name && !__opt->doc && !__opt->group;
57 }
58--- argp-standalone-1.4-test2/argp-parse.c.orig 2006-01-06 02:47:48.000000000 +0100
59+++ argp-standalone-1.4-test2/argp-parse.c 2006-01-06 02:48:16.000000000 +0100
60@@ -1290,13 +1290,13 @@
61 /* Defined here, in case a user is not inlining the definitions in
62 * argp.h */
63 void
64-__argp_usage (__const struct argp_state *__state) __THROW
65+__argp_usage (__const struct argp_state *__state)
66 {
67 __argp_state_help (__state, stderr, ARGP_HELP_STD_USAGE);
68 }
69
70 int
71-__option_is_short (__const struct argp_option *__opt) __THROW
72+__option_is_short (__const struct argp_option *__opt)
73 {
74 if (__opt->flags & OPTION_DOC)
75 return 0;
76@@ -1310,7 +1310,7 @@
77 }
78
79 int
80-__option_is_end (__const struct argp_option *__opt) __THROW
81+__option_is_end (__const struct argp_option *__opt)
82 {
83 return !__opt->key && !__opt->name && !__opt->doc && !__opt->group;
84 }
diff --git a/meta/recipes-support/argp-standalone/files/0002-isprint.patch b/meta/recipes-support/argp-standalone/files/0002-isprint.patch
deleted file mode 100644
index 1c07eea3c1..0000000000
--- a/meta/recipes-support/argp-standalone/files/0002-isprint.patch
+++ /dev/null
@@ -1,51 +0,0 @@
1Subject: restrict value range passed to isprint function
2
3According to C standards isprint argument shall be representable as an
4unsigned char or be equal to EOF, otherwise the behaviour is undefined.
5
6Passing arbitrary ints leads to segfault in nm program from elfutils.
7
8Restrict isprint argument range to values representable by unsigned char.
9
10Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
11
12Taken from buildroot
13
14Upstream-Status: Pending
15Signed-off-by: Khem Raj <raj.khem@gmail.com>
16
17---
18Index: b/argp.h
19===================================================================
20--- a/argp.h
21+++ b/argp.h
22@@ -23,6 +23,7 @@
23
24 #include <stdio.h>
25 #include <ctype.h>
26+#include <limits.h>
27
28 #define __need_error_t
29 #include <errno.h>
30@@ -577,7 +578,7 @@
31 else
32 {
33 int __key = __opt->key;
34- return __key > 0 && isprint (__key);
35+ return __key > 0 && __key <= UCHAR_MAX && isprint (__key);
36 }
37 }
38
39Index: b/argp-parse.c
40===================================================================
41--- a/argp-parse.c
42+++ b/argp-parse.c
43@@ -1292,7 +1292,7 @@
44 int __key = __opt->key;
45 /* FIXME: whether or not a particular key implies a short option
46 * ought not to be locale dependent. */
47- return __key > 0 && isprint (__key);
48+ return __key > 0 && __key <= UCHAR_MAX && isprint (__key);
49 }
50 }
51
diff --git a/meta/recipes-support/argp-standalone/files/out_of_tree_build.patch b/meta/recipes-support/argp-standalone/files/out_of_tree_build.patch
index b7777cbd91..c863104430 100644
--- a/meta/recipes-support/argp-standalone/files/out_of_tree_build.patch
+++ b/meta/recipes-support/argp-standalone/files/out_of_tree_build.patch
@@ -2,7 +2,7 @@ Fix the testsuite to built out of tree
2in OE S != B 2in OE S != B
3 3
4Signed-off-by: Khem Raj <raj.khem@gmail.com> 4Signed-off-by: Khem Raj <raj.khem@gmail.com>
5Upstream-Status: Pending 5Upstream-Status: Submitted [https://github.com/ericonr/argp-standalone/pull/9]
6Index: argp-standalone-1.3/testsuite/Makefile.am 6Index: argp-standalone-1.3/testsuite/Makefile.am
7=================================================================== 7===================================================================
8--- argp-standalone-1.3.orig/testsuite/Makefile.am 8--- argp-standalone-1.3.orig/testsuite/Makefile.am
diff --git a/meta/recipes-support/aspell/aspell_0.60.8.1.bb b/meta/recipes-support/aspell/aspell_0.60.8.1.bb
new file mode 100644
index 0000000000..0ea9b063e0
--- /dev/null
+++ b/meta/recipes-support/aspell/aspell_0.60.8.1.bb
@@ -0,0 +1,38 @@
1SUMMARY = "GNU Aspell spell-checker"
2
3DESCRIPTION = "Spell checker designed to eventually replace Ispell. \
4It can either be used as a library or as an independent spell checker. \
5Its main feature is that it does a superior job of suggesting possible \
6replacements for a misspelled word than just about any other spell \
7checker out there for the English language."
8
9SECTION = "console/utils"
10
11HOMEPAGE = "http://aspell.net/"
12
13LICENSE = "LGPL-2.0-only | LGPL-2.1-only"
14LIC_FILES_CHKSUM = "file://COPYING;md5=7fbc338309ac38fefcd64b04bb903e34"
15
16SRC_URI = "${GNU_MIRROR}/aspell/aspell-${PV}.tar.gz"
17SRC_URI[sha256sum] = "d6da12b34d42d457fa604e435ad484a74b2effcd120ff40acd6bb3fb2887d21b"
18
19PACKAGECONFIG ??= ""
20PACKAGECONFIG[curses] = "--enable-curses,--disable-curses,ncurses"
21
22PACKAGES += "libaspell libpspell aspell-utils"
23
24RDEPENDS:${PN}-utils += "perl"
25
26FILES:libaspell = "${libdir}/libaspell.so.* ${libdir}/aspell*"
27FILES:aspell-utils = "${bindir}/word-list-compress ${bindir}/aspell-import ${bindir}/run-with-aspell ${bindir}/pre*"
28FILES:${PN} = "${bindir}/aspell"
29FILES:libpspell = "${libdir}/libpspell.so.*"
30FILES:${PN}-dev += "${bindir}/pspell-config"
31
32ARM_INSTRUCTION_SET:armv4 = "arm"
33ARM_INSTRUCTION_SET:armv5 = "arm"
34ARM_INSTRUCTION_SET:armv6 = "arm"
35
36inherit autotools-brokensep gettext texinfo binconfig-disabled
37
38BINCONFIG = "${bindir}/pspell-config"
diff --git a/meta/recipes-support/aspell/aspell_0.60.8.bb b/meta/recipes-support/aspell/aspell_0.60.8.bb
deleted file mode 100644
index f1d931b39c..0000000000
--- a/meta/recipes-support/aspell/aspell_0.60.8.bb
+++ /dev/null
@@ -1,34 +0,0 @@
1SUMMARY = "GNU Aspell spell-checker"
2DESCRIPTION = "GNU Aspell is a spell-checker which can be used either as a \
3standalone application or embedded in other programs. Its main feature is that \
4it does a much better job of suggesting possible spellings than just about any \
5other spell-checker available for the English language"
6SECTION = "console/utils"
7
8LICENSE = "LGPLv2 | LGPLv2.1"
9LIC_FILES_CHKSUM = "file://COPYING;md5=7fbc338309ac38fefcd64b04bb903e34"
10
11SRC_URI = "${GNU_MIRROR}/aspell/aspell-${PV}.tar.gz"
12SRC_URI[md5sum] = "012fa9209203ae4e5a61c2a668fd10e3"
13SRC_URI[sha256sum] = "f9b77e515334a751b2e60daab5db23499e26c9209f5e7b7443b05235ad0226f2"
14
15PACKAGECONFIG ??= ""
16PACKAGECONFIG[curses] = "--enable-curses,--disable-curses,ncurses"
17
18PACKAGES += "libaspell libpspell aspell-utils"
19
20RDEPENDS_${PN}-utils += "perl"
21
22FILES_libaspell = "${libdir}/libaspell.so.* ${libdir}/aspell*"
23FILES_aspell-utils = "${bindir}/word-list-compress ${bindir}/aspell-import ${bindir}/run-with-aspell ${bindir}/pre*"
24FILES_${PN} = "${bindir}/aspell"
25FILES_libpspell = "${libdir}/libpspell.so.*"
26FILES_${PN}-dev += "${bindir}/pspell-config"
27
28ARM_INSTRUCTION_SET_armv4 = "arm"
29ARM_INSTRUCTION_SET_armv5 = "arm"
30ARM_INSTRUCTION_SET_armv6 = "arm"
31
32inherit autotools-brokensep gettext texinfo binconfig-disabled
33
34BINCONFIG = "${bindir}/pspell-config"
diff --git a/meta/recipes-support/atk/at-spi2-atk_2.38.0.bb b/meta/recipes-support/atk/at-spi2-atk_2.38.0.bb
deleted file mode 100644
index fce14eecf3..0000000000
--- a/meta/recipes-support/atk/at-spi2-atk_2.38.0.bb
+++ /dev/null
@@ -1,18 +0,0 @@
1SUMMARY = "AT-SPI 2 Toolkit Bridge"
2HOMEPAGE = "https://wiki.linuxfoundation.org/accessibility/d-bus"
3LICENSE = "LGPL-2.1+"
4LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c"
5
6SRC_URI[archive.sha256sum] = "cfa008a5af822b36ae6287f18182c40c91dd699c55faa38605881ed175ca464f"
7
8DEPENDS = "dbus glib-2.0 glib-2.0-native atk at-spi2-core libxml2"
9
10GNOMEBASEBUILDCLASS = "meson"
11inherit gnomebase upstream-version-is-even
12
13PACKAGES =+ "${PN}-gnome ${PN}-gtk2"
14
15FILES_${PN}-gnome = "${libdir}/gnome-settings-daemon-3.0/gtk-modules"
16FILES_${PN}-gtk2 = "${libdir}/gtk-2.0/modules/libatk-bridge.*"
17
18BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-support/atk/at-spi2-core_2.38.0.bb b/meta/recipes-support/atk/at-spi2-core_2.38.0.bb
deleted file mode 100644
index a0657950be..0000000000
--- a/meta/recipes-support/atk/at-spi2-core_2.38.0.bb
+++ /dev/null
@@ -1,37 +0,0 @@
1SUMMARY = "Assistive Technology Service Provider Interface (dbus core)"
2DESCRIPTION = "At-Spi2 is a protocol over DBus, toolkit widgets use it to \
3provide their content to screen readers such as Orca."
4HOMEPAGE = "https://wiki.linuxfoundation.org/accessibility/d-bus"
5LICENSE = "LGPL-2.1+"
6LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c"
7
8MAJ_VER = "${@oe.utils.trim_version("${PV}", 2)}"
9
10SRC_URI = "${GNOME_MIRROR}/${BPN}/${MAJ_VER}/${BPN}-${PV}.tar.xz"
11
12SRC_URI[sha256sum] = "84e36c3fe66862133f5fe229772b76aa2526e10de5014a3778f2fa46ce550da5"
13
14X11DEPENDS = "virtual/libx11 libxi libxtst"
15
16DEPENDS = "dbus glib-2.0"
17DEPENDS += "${@bb.utils.contains('DISTRO_FEATURES', 'x11', '${X11DEPENDS}', '', d)}"
18
19inherit meson gtk-doc gettext systemd pkgconfig upstream-version-is-even gobject-introspection
20
21EXTRA_OEMESON = " -Dsystemd_user_dir=${systemd_user_unitdir} \
22 -Ddbus_daemon=${bindir}/dbus-daemon \
23 ${@bb.utils.contains('DISTRO_FEATURES', 'x11', '-Dx11=yes', '-Dx11=no', d)} \
24"
25
26GTKDOC_MESON_OPTION = "docs"
27
28GIR_MESON_OPTION = 'introspection'
29GIR_MESON_ENABLE_FLAG = 'yes'
30GIR_MESON_DISABLE_FLAG = 'no'
31
32FILES_${PN} += "${datadir}/dbus-1/services/*.service \
33 ${datadir}/dbus-1/accessibility-services/*.service \
34 ${datadir}/defaults/at-spi2 \
35 ${systemd_user_unitdir}/at-spi-dbus-bus.service \
36 "
37BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-support/atk/at-spi2-core_2.52.0.bb b/meta/recipes-support/atk/at-spi2-core_2.52.0.bb
new file mode 100644
index 0000000000..913b408403
--- /dev/null
+++ b/meta/recipes-support/atk/at-spi2-core_2.52.0.bb
@@ -0,0 +1,50 @@
1SUMMARY = "Assistive Technology Service Provider Interface (dbus core)"
2
3DESCRIPTION = "It provides a Service Provider Interface for the Assistive Technologies available on the GNOME platform and a library against which applications can be linked."
4
5HOMEPAGE = "https://wiki.linuxfoundation.org/accessibility/d-bus"
6BUGTRACKER = "http://bugzilla.gnome.org/"
7LICENSE = "LGPL-2.1-or-later"
8LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c"
9
10CVE_PRODUCT += "at-spi2-atk"
11
12MAJ_VER = "${@oe.utils.trim_version("${PV}", 2)}"
13
14SRC_URI = "${GNOME_MIRROR}/${BPN}/${MAJ_VER}/${BPN}-${PV}.tar.xz"
15
16SRC_URI[sha256sum] = "0ac3fc8320c8d01fa147c272ba7fa03806389c6b03d3c406d0823e30e35ff5ab"
17
18DEPENDS = " \
19 dbus \
20 glib-2.0 \
21 glib-2.0-native \
22 libxml2 \
23 ${@'python3-sphinx-native' if d.getVar('GIDOCGEN_ENABLED') == 'True' else ''} \
24"
25
26# For backwards compatibility
27PROVIDES += "atk at-spi2-atk"
28RPROVIDES:${PN} += "atk at-spi2-atk"
29
30inherit meson gi-docgen gettext systemd pkgconfig upstream-version-is-even gobject-introspection
31
32EXTRA_OEMESON = " -Dsystemd_user_dir=${systemd_user_unitdir} \
33 -Ddbus_daemon=${bindir}/dbus-daemon"
34
35PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}"
36PACKAGECONFIG[x11] = "-Dx11=enabled,-Dx11=disabled,virtual/libx11 libxi libxtst"
37
38GIDOCGEN_MESON_OPTION = "docs"
39GIR_MESON_OPTION = 'introspection'
40GIR_MESON_ENABLE_FLAG = 'enabled'
41GIR_MESON_DISABLE_FLAG = 'disabled'
42
43FILES:${PN} += "${libdir}/gnome-settings-daemon-3.0/gtk-modules/at-spi2-atk.desktop \
44 ${libdir}/gtk-2.0/modules/libatk-bridge.so \
45 ${datadir}/dbus-1/services/*.service \
46 ${datadir}/dbus-1/accessibility-services/*.service \
47 ${datadir}/defaults/at-spi2 \
48 ${systemd_user_unitdir}/at-spi-dbus-bus.service \
49 "
50BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-support/atk/atk_2.36.0.bb b/meta/recipes-support/atk/atk_2.36.0.bb
deleted file mode 100644
index c45da3088b..0000000000
--- a/meta/recipes-support/atk/atk_2.36.0.bb
+++ /dev/null
@@ -1,20 +0,0 @@
1SUMMARY = "Accessibility toolkit for GNOME"
2HOMEPAGE = "https://wiki.gnome.org/Accessibility"
3BUGTRACKER = "https://gitlab.gnome.org/GNOME/atk/-/issues"
4SECTION = "x11/libs"
5
6LICENSE = "GPLv2+ & LGPLv2+"
7LIC_FILES_CHKSUM = "file://COPYING;md5=3bf50002aefd002f49e7bb854063f7e7 \
8 file://atk/atkutil.c;endline=18;md5=6fd31cd2fdc9b30f619ca8d819bc12d3 \
9 file://atk/atk.h;endline=18;md5=fcd7710187e0eae485e356c30d1b0c3b"
10
11# Need gettext-native as Meson can't turn off i18n
12DEPENDS = "gettext-native glib-2.0"
13
14GNOMEBASEBUILDCLASS = "meson"
15inherit gnomebase gtk-doc gettext upstream-version-is-even gobject-introspection
16
17SRC_URI[archive.md5sum] = "01aa5ec5138f5f8c9b3a4e3196ed2900"
18SRC_URI[archive.sha256sum] = "fb76247e369402be23f1f5c65d38a9639c1164d934e40f6a9cf3c9e96b652788"
19
20BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-support/attr/acl/0001-test-patch-out-failing-bits.patch b/meta/recipes-support/attr/acl/0001-test-patch-out-failing-bits.patch
index ba2ffee5d2..219feaccd0 100644
--- a/meta/recipes-support/attr/acl/0001-test-patch-out-failing-bits.patch
+++ b/meta/recipes-support/attr/acl/0001-test-patch-out-failing-bits.patch
@@ -1,4 +1,4 @@
1From 9e08219e0e99ee2589cf35fa8d52cef3515accce Mon Sep 17 00:00:00 2001 1From 7dec6fa3b3494a55120402ff1ea3eb96b67138e8 Mon Sep 17 00:00:00 2001
2From: Alexander Kanavin <alex.kanavin@gmail.com> 2From: Alexander Kanavin <alex.kanavin@gmail.com>
3Date: Thu, 12 Dec 2019 15:47:49 +0100 3Date: Thu, 12 Dec 2019 15:47:49 +0100
4Subject: [PATCH] test: patch out failing bits 4Subject: [PATCH] test: patch out failing bits
@@ -58,6 +58,3 @@ index 8f8f825..21e8a95 100644
58 $ : > f 58 $ : > f
59 $ : <> f 59 $ : <> f
60 >~ .*f: Permission denied$ 60 >~ .*f: Permission denied$
61--
622.17.1
63
diff --git a/meta/recipes-support/attr/acl/0001-tests-do-not-hardcode-the-build-path-into-a-helper-l.patch b/meta/recipes-support/attr/acl/0001-tests-do-not-hardcode-the-build-path-into-a-helper-l.patch
index 57ef0bb728..748f37f3e7 100644
--- a/meta/recipes-support/attr/acl/0001-tests-do-not-hardcode-the-build-path-into-a-helper-l.patch
+++ b/meta/recipes-support/attr/acl/0001-tests-do-not-hardcode-the-build-path-into-a-helper-l.patch
@@ -1,4 +1,4 @@
1From 39d332a8801de5d9ef09dacb3dba85c208b7b2ad Mon Sep 17 00:00:00 2001 1From 42ae3f8a5e32ba0681ccd1552a203ddad8748a6e Mon Sep 17 00:00:00 2001
2From: Alexander Kanavin <alex.kanavin@gmail.com> 2From: Alexander Kanavin <alex.kanavin@gmail.com>
3Date: Thu, 12 Dec 2019 13:45:52 +0100 3Date: Thu, 12 Dec 2019 13:45:52 +0100
4Subject: [PATCH] tests: do not hardcode the build path into a helper library 4Subject: [PATCH] tests: do not hardcode the build path into a helper library
@@ -10,7 +10,7 @@ Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
10 1 file changed, 1 insertion(+), 1 deletion(-) 10 1 file changed, 1 insertion(+), 1 deletion(-)
11 11
12diff --git a/test/Makemodule.am b/test/Makemodule.am 12diff --git a/test/Makemodule.am b/test/Makemodule.am
13index 17d4927..015de7f 100644 13index e1d715d..cffe732 100644
14--- a/test/Makemodule.am 14--- a/test/Makemodule.am
15+++ b/test/Makemodule.am 15+++ b/test/Makemodule.am
16@@ -30,7 +30,7 @@ EXTRA_DIST += \ 16@@ -30,7 +30,7 @@ EXTRA_DIST += \
@@ -21,4 +21,4 @@ index 17d4927..015de7f 100644
21+libtestlookup_la_CFLAGS = -DBASEDIR=\"/tmp/acl-ptest\" 21+libtestlookup_la_CFLAGS = -DBASEDIR=\"/tmp/acl-ptest\"
22 libtestlookup_la_LDFLAGS = -rpath $(abs_builddir) 22 libtestlookup_la_LDFLAGS = -rpath $(abs_builddir)
23 23
24 AM_TESTS_ENVIRONMENT = PATH="$(abs_top_builddir):$$PATH"; 24 # Make sure translations don't break tests when matching output.
diff --git a/meta/recipes-support/attr/acl/run-ptest b/meta/recipes-support/attr/acl/run-ptest
index 4312823365..3af75c84fe 100644
--- a/meta/recipes-support/attr/acl/run-ptest
+++ b/meta/recipes-support/attr/acl/run-ptest
@@ -7,4 +7,10 @@
7mkdir -p /tmp/acl-ptest/test 7mkdir -p /tmp/acl-ptest/test
8cp test/test.* /tmp/acl-ptest/test 8cp test/test.* /tmp/acl-ptest/test
9 9
10set +e
10make test-suite.log 11make test-suite.log
12exitcode=$?
13if [ $exitcode -ne 0 -a -e test-suite.log ]; then
14 cat test-suite.log
15fi
16exit $exitcode
diff --git a/meta/recipes-support/attr/acl_2.2.53.bb b/meta/recipes-support/attr/acl_2.3.2.bb
index b120c1f16f..6178473873 100644
--- a/meta/recipes-support/attr/acl_2.2.53.bb
+++ b/meta/recipes-support/attr/acl_2.3.2.bb
@@ -1,12 +1,15 @@
1SUMMARY = "Utilities for managing POSIX Access Control Lists" 1SUMMARY = "Utilities for managing POSIX Access Control Lists"
2HOMEPAGE = "http://savannah.nongnu.org/projects/acl/"
3DESCRIPTION = "ACL allows you to provide different levels of access to files \ 2DESCRIPTION = "ACL allows you to provide different levels of access to files \
4and folders for different users." 3and folders for different users."
4
5HOMEPAGE = "http://savannah.nongnu.org/projects/acl/"
6BUGTRACKER = "http://savannah.nongnu.org/bugs/?group=acl"
7
5SECTION = "libs" 8SECTION = "libs"
6 9
7LICENSE = "LGPLv2.1+ & GPLv2+" 10LICENSE = "LGPL-2.1-or-later & GPL-2.0-or-later"
8LICENSE_${PN} = "GPLv2+" 11LICENSE:${PN} = "GPL-2.0-or-later"
9LICENSE_lib${BPN} = "LGPLv2.1+" 12LICENSE:lib${BPN} = "LGPL-2.1-or-later"
10LIC_FILES_CHKSUM = "file://doc/COPYING;md5=c781d70ed2b4d48995b790403217a249 \ 13LIC_FILES_CHKSUM = "file://doc/COPYING;md5=c781d70ed2b4d48995b790403217a249 \
11 file://doc/COPYING.LGPL;md5=9e9a206917f8af112da634ce3ab41764" 14 file://doc/COPYING.LGPL;md5=9e9a206917f8af112da634ce3ab41764"
12 15
@@ -18,14 +21,15 @@ SRC_URI = "${SAVANNAH_GNU_MIRROR}/acl/${BP}.tar.gz \
18 file://0001-test-patch-out-failing-bits.patch \ 21 file://0001-test-patch-out-failing-bits.patch \
19 " 22 "
20 23
21SRC_URI[md5sum] = "007aabf1dbb550bcddde52a244cd1070" 24SRC_URI[sha256sum] = "5f2bdbad629707aa7d85c623f994aa8a1d2dec55a73de5205bac0bf6058a2f7c"
22SRC_URI[sha256sum] = "06be9865c6f418d851ff4494e12406568353b891ffe1f596b34693c387af26c7"
23 25
24inherit autotools gettext ptest 26inherit autotools gettext ptest
25 27
28EXTRA_OECONF += "--enable-largefile"
29
26PACKAGES =+ "lib${BPN}" 30PACKAGES =+ "lib${BPN}"
27 31
28FILES_lib${BPN} = "${libdir}/lib*${SOLIBS}" 32FILES:lib${BPN} = "${libdir}/lib*${SOLIBS}"
29 33
30PTEST_BUILD_HOST_FILES = "builddefs" 34PTEST_BUILD_HOST_FILES = "builddefs"
31PTEST_BUILD_HOST_PATTERN = "^RPM" 35PTEST_BUILD_HOST_PATTERN = "^RPM"
@@ -56,10 +60,15 @@ do_install_ptest() {
56 rm ${D}${PTEST_PATH}/.libs/libtestlookup.lai 60 rm ${D}${PTEST_PATH}/.libs/libtestlookup.lai
57} 61}
58 62
59RDEPENDS_${PN}-ptest = "acl \ 63do_install_ptest:append:libc-musl() {
64 sed -i -e '/test\/misc.test/d' ${D}${PTEST_PATH}/Makefile
65}
66
67RDEPENDS:${PN}-ptest = "acl \
60 bash \ 68 bash \
61 coreutils \ 69 coreutils \
62 perl \ 70 perl \
71 perl-module-constant \
63 perl-module-filehandle \ 72 perl-module-filehandle \
64 perl-module-getopt-std \ 73 perl-module-getopt-std \
65 perl-module-posix \ 74 perl-module-posix \
diff --git a/meta/recipes-support/attr/attr.inc b/meta/recipes-support/attr/attr.inc
index 97bca46982..75d616893a 100644
--- a/meta/recipes-support/attr/attr.inc
+++ b/meta/recipes-support/attr/attr.inc
@@ -1,16 +1,14 @@
1SUMMARY = "Utilities for manipulating filesystem extended attributes" 1SUMMARY = "Utilities for manipulating filesystem extended attributes"
2DESCRIPTION = "A set of tools for manipulating extended attributes on filesystem \ 2DESCRIPTION = "Implement the ability for a user to attach name:value pairs to objects within the XFS filesystem."
3objects, in particular getfattr(1) and setfattr(1). An attr(1) command \ 3
4is also provided which is largely compatible with the SGI IRIX tool of \
5the same name."
6HOMEPAGE = "http://savannah.nongnu.org/projects/attr/" 4HOMEPAGE = "http://savannah.nongnu.org/projects/attr/"
7SECTION = "libs" 5SECTION = "libs"
8 6
9DEPENDS = "virtual/libintl" 7DEPENDS = "virtual/libintl"
10 8
11LICENSE = "LGPLv2.1+ & GPLv2+" 9LICENSE = "LGPL-2.1-or-later & GPL-2.0-or-later"
12LICENSE_${PN} = "GPLv2+" 10LICENSE:${PN} = "GPL-2.0-or-later"
13LICENSE_lib${BPN} = "LGPLv2.1+" 11LICENSE:lib${BPN} = "LGPL-2.1-or-later"
14LIC_FILES_CHKSUM = "file://doc/COPYING;md5=2d0aa14b3fce4694e4f615e30186335f \ 12LIC_FILES_CHKSUM = "file://doc/COPYING;md5=2d0aa14b3fce4694e4f615e30186335f \
15 file://doc/COPYING.LGPL;md5=b8d31f339300bc239d73461d68e77b9c \ 13 file://doc/COPYING.LGPL;md5=b8d31f339300bc239d73461d68e77b9c \
16 file://tools/attr.c;endline=17;md5=be0403261f0847e5f43ed5b08d19593c \ 14 file://tools/attr.c;endline=17;md5=be0403261f0847e5f43ed5b08d19593c \
@@ -18,16 +16,17 @@ LIC_FILES_CHKSUM = "file://doc/COPYING;md5=2d0aa14b3fce4694e4f615e30186335f \
18 16
19SRC_URI = "${SAVANNAH_GNU_MIRROR}/attr/${BP}.tar.gz \ 17SRC_URI = "${SAVANNAH_GNU_MIRROR}/attr/${BP}.tar.gz \
20 file://run-ptest \ 18 file://run-ptest \
19 file://0001-attr.c-Include-libgen.h-for-posix-version-of-basenam.patch \
21" 20"
22 21
23inherit ptest update-alternatives autotools gettext 22inherit ptest update-alternatives autotools gettext
24 23
25PACKAGES =+ "lib${BPN}" 24PACKAGES =+ "lib${BPN}"
26 25
27FILES_lib${BPN} = "${libdir}/lib*${SOLIBS}" 26FILES:lib${BPN} = "${libdir}/lib*${SOLIBS} ${sysconfdir}"
28 27
29ALTERNATIVE_PRIORITY = "100" 28ALTERNATIVE_PRIORITY = "100"
30ALTERNATIVE_${PN} = "setfattr" 29ALTERNATIVE:${PN} = "setfattr"
31ALTERNATIVE_TARGET[setfattr] = "${bindir}/setfattr" 30ALTERNATIVE_TARGET[setfattr] = "${bindir}/setfattr"
32 31
33PTEST_BUILD_HOST_FILES = "builddefs" 32PTEST_BUILD_HOST_FILES = "builddefs"
@@ -50,8 +49,14 @@ do_install_ptest() {
50 cp -rf ${S}/test/ ${D}${PTEST_PATH} 49 cp -rf ${S}/test/ ${D}${PTEST_PATH}
51} 50}
52 51
53RDEPENDS_${PN}-ptest = "attr \ 52do_install_ptest:append:libc-musl() {
53 sed -i -e 's|f: Operation n|f: N|g' ${D}${PTEST_PATH}/test/attr.test
54}
55
56RDEPENDS:${PN}-ptest = "attr \
57 bash \
54 coreutils \ 58 coreutils \
59 perl-module-constant \
55 perl-module-filehandle \ 60 perl-module-filehandle \
56 perl-module-getopt-std \ 61 perl-module-getopt-std \
57 perl-module-posix \ 62 perl-module-posix \
diff --git a/meta/recipes-support/attr/attr/0001-attr.c-Include-libgen.h-for-posix-version-of-basenam.patch b/meta/recipes-support/attr/attr/0001-attr.c-Include-libgen.h-for-posix-version-of-basenam.patch
new file mode 100644
index 0000000000..1e2bea5067
--- /dev/null
+++ b/meta/recipes-support/attr/attr/0001-attr.c-Include-libgen.h-for-posix-version-of-basenam.patch
@@ -0,0 +1,35 @@
1From 6d9e827bcacf387bb3cfae64bd4fe520168ccad4 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Sun, 3 Dec 2023 19:29:27 -0800
4Subject: [PATCH] attr.c: Include libgen.h for posix version of basename API
5
6Musl has removed the definition from string.h [1] which results in
7compile failures with clang
8
9| ../attr-2.5.1/tools/attr.c:69:13: error: call to undeclared function 'basename'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
10| 69 | progname = basename(argv[0]);
11| | ^
12
13[1] https://git.musl-libc.org/cgit/musl/commit/?id=725e17ed6dff4d0cd22487bb64470881e86a92e7
14
15Upstream-Status: Submitted [https://savannah.nongnu.org/bugs/index.php?64972]
16Signed-off-by: Khem Raj <raj.khem@gmail.com>
17---
18 tools/attr.c | 1 +
19 1 file changed, 1 insertion(+)
20
21diff --git a/tools/attr.c b/tools/attr.c
22index 312aef1..90dab83 100644
23--- a/tools/attr.c
24+++ b/tools/attr.c
25@@ -26,6 +26,7 @@
26 #include <stdlib.h>
27 #include <unistd.h>
28 #include <errno.h>
29+#include <libgen.h>
30 #include <string.h>
31 #include <locale.h>
32
33--
342.43.0
35
diff --git a/meta/recipes-support/attr/attr/run-ptest b/meta/recipes-support/attr/attr/run-ptest
index f64244f239..3e7a3a17a0 100644
--- a/meta/recipes-support/attr/attr/run-ptest
+++ b/meta/recipes-support/attr/attr/run-ptest
@@ -1,3 +1,10 @@
1#!/bin/sh 1#!/bin/sh
2 2
3set +e
3make test-suite.log 4make test-suite.log
5exitcode=$?
6if [ $exitcode -ne 0 -a -e test-suite.log ]; then
7 cat test-suite.log
8fi
9exit $exitcode
10
diff --git a/meta/recipes-support/attr/attr_2.4.48.bb b/meta/recipes-support/attr/attr_2.4.48.bb
deleted file mode 100644
index 530d4e4883..0000000000
--- a/meta/recipes-support/attr/attr_2.4.48.bb
+++ /dev/null
@@ -1,6 +0,0 @@
1require attr.inc
2
3SRC_URI[md5sum] = "bc1e5cb5c96d99b24886f1f527d3bb3d"
4SRC_URI[sha256sum] = "5ead72b358ec709ed00bbf7a9eaef1654baad937c001c044fe8b74c57f5324e7"
5
6BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-support/attr/attr_2.5.2.bb b/meta/recipes-support/attr/attr_2.5.2.bb
new file mode 100644
index 0000000000..2110c6d885
--- /dev/null
+++ b/meta/recipes-support/attr/attr_2.5.2.bb
@@ -0,0 +1,5 @@
1require attr.inc
2
3SRC_URI[sha256sum] = "39bf67452fa41d0948c2197601053f48b3d78a029389734332a6309a680c6c87"
4
5BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-support/bash-completion/bash-completion_2.11.bb b/meta/recipes-support/bash-completion/bash-completion_2.11.bb
deleted file mode 100644
index f00e0fc5b7..0000000000
--- a/meta/recipes-support/bash-completion/bash-completion_2.11.bb
+++ /dev/null
@@ -1,39 +0,0 @@
1SUMMARY = "Programmable Completion for Bash 4"
2DESCRIPTION = "bash completion extends bash's standard completion behavior to \
3achieve complex command lines with just a few keystrokes."
4HOMEPAGE = "https://github.com/scop/bash-completion"
5BUGTRACKER = "https://github.com/scop/bash-completion/issues"
6
7LICENSE = "GPLv2"
8LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
9
10SECTION = "console/utils"
11
12SRC_URI = "https://github.com/scop/bash-completion/releases/download/${PV}/${BPN}-${PV}.tar.xz"
13
14SRC_URI[md5sum] = "2514c6772d0de6254758b98c53f91861"
15SRC_URI[sha256sum] = "73a8894bad94dee83ab468fa09f628daffd567e8bef1a24277f1e9a0daf911ac"
16UPSTREAM_CHECK_REGEX = "bash-completion-(?P<pver>(?!2008).+)\.tar"
17UPSTREAM_CHECK_URI = "https://github.com/scop/bash-completion/releases"
18
19PARALLEL_MAKE = ""
20
21inherit autotools
22
23do_install_append() {
24 # compatdir
25 install -d ${D}${sysconfdir}/bash_completion.d/
26 echo '. ${datadir}/${BPN}/bash_completion' >${D}${sysconfdir}/bash_completion
27
28}
29
30RDEPENDS_${PN} = "bash"
31
32# Some recipes are providing ${PN}-bash-completion packages
33PACKAGES =+ "${PN}-extra"
34FILES_${PN}-extra = "${datadir}/${BPN}/completions/ \
35 ${datadir}/${BPN}/helpers/"
36
37FILES_${PN}-dev += "${datadir}/cmake"
38
39BBCLASSEXTEND = "nativesdk"
diff --git a/meta/recipes-support/bash-completion/bash-completion_2.13.0.bb b/meta/recipes-support/bash-completion/bash-completion_2.13.0.bb
new file mode 100644
index 0000000000..f75d61e219
--- /dev/null
+++ b/meta/recipes-support/bash-completion/bash-completion_2.13.0.bb
@@ -0,0 +1,38 @@
1SUMMARY = "Programmable Completion for Bash 4"
2DESCRIPTION = "Collection of command line command completions for the Bash shell, \
3collection of helper functions to assist in creating new completions, \
4and set of facilities for loading completions automatically on demand, as well \
5as installing them."
6
7HOMEPAGE = "https://github.com/scop/bash-completion"
8BUGTRACKER = "https://github.com/scop/bash-completion/issues"
9
10LICENSE = "GPL-2.0-only"
11LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
12
13SECTION = "console/utils"
14
15SRC_URI = "${GITHUB_BASE_URI}/download/${PV}/${BPN}-${PV}.tar.xz"
16
17SRC_URI[sha256sum] = "c5f99a39e40f0d154c03ff15438e87ece1f5ac666336a4459899e2ff4bedf3d1"
18GITHUB_BASE_URI = "https://github.com/scop/bash-completion/releases"
19
20PARALLEL_MAKE = ""
21
22inherit autotools github-releases
23
24do_install:append() {
25 # compatdir
26 install -d ${D}${sysconfdir}/bash_completion.d/
27 echo '. ${datadir}/${BPN}/bash_completion' >${D}${sysconfdir}/bash_completion
28
29}
30
31RDEPENDS:${PN} = "bash"
32
33# Some recipes are providing ${PN}-bash-completion packages
34PACKAGES =+ "${PN}-extra"
35FILES:${PN}-extra = "${datadir}/${BPN}/completions/ \
36 ${datadir}/${BPN}/helpers/"
37
38BBCLASSEXTEND = "nativesdk"
diff --git a/meta/recipes-support/bmap-tools/bmap-tools_3.5.bb b/meta/recipes-support/bmap-tools/bmap-tools_3.5.bb
deleted file mode 100644
index fd57f8f7f0..0000000000
--- a/meta/recipes-support/bmap-tools/bmap-tools_3.5.bb
+++ /dev/null
@@ -1,25 +0,0 @@
1SUMMARY = "Tools to generate block map (AKA bmap) and flash images using bmap"
2DESCRIPTION = "Bmap-tools - tools to generate block map (AKA bmap) and flash images using \
3bmap. Bmaptool is a generic tool for creating the block map (bmap) for a file, \
4and copying files using the block map. The idea is that large file containing \
5unused blocks, like raw system image files, can be copied or flashed a lot \
6faster with bmaptool than with traditional tools like "dd" or "cp"."
7HOMEPAGE = "https://github.com/01org/bmap-tools"
8SECTION = "console/utils"
9LICENSE = "GPLv2"
10LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
11
12SRC_URI = "git://github.com/intel/${BPN}"
13
14SRCREV = "a17f0e3ff8669dd3b1c44a741ae4f8162155faed"
15S = "${WORKDIR}/git"
16PV .= "+git${SRCPV}"
17
18UPSTREAM_CHECK_GITTAGREGEX = "v(?P<pver>\d+(\.\d+)+)"
19
20RDEPENDS_${PN} = "python3-core python3-compression python3-mmap python3-setuptools python3-fcntl python3-six"
21
22inherit python3native
23inherit setuptools3
24
25BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-support/bmaptool/bmaptool_git.bb b/meta/recipes-support/bmaptool/bmaptool_git.bb
new file mode 100644
index 0000000000..fd53c21c06
--- /dev/null
+++ b/meta/recipes-support/bmaptool/bmaptool_git.bb
@@ -0,0 +1,29 @@
1SUMMARY = "Tools to generate block map (AKA bmap) and flash images using bmap"
2DESCRIPTION = "bmaptool - tools to generate block map (AKA bmap) and flash images using \
3bmap. bmaptool is a generic tool for creating the block map (bmap) for a file, \
4and copying files using the block map. The idea is that large file containing \
5unused blocks, like raw system image files, can be copied or flashed a lot \
6faster with bmaptool than with traditional tools like "dd" or "cp"."
7HOMEPAGE = "https://github.com/yoctoproject/bmaptool"
8SECTION = "console/utils"
9LICENSE = "GPL-2.0-only"
10LIC_FILES_CHKSUM = "file://LICENSE;md5=b234ee4d69f5fce4486a80fdaf4a4263"
11
12SRC_URI = "git://github.com/yoctoproject/${BPN};branch=main;protocol=https"
13SRCREV = "2ff5750b8a3e0b36a9993c20e2ea10a07bc62085"
14S = "${WORKDIR}/git"
15BASEVER = "3.8.0"
16PV = "${BASEVER}+git"
17
18UPSTREAM_CHECK_GITTAGREGEX = "v(?P<pver>\d+(\.\d+)+)"
19
20# Need df from coreutils
21RDEPENDS:${PN} = "python3-core python3-compression python3-misc python3-mmap python3-setuptools python3-fcntl python3-six coreutils"
22
23inherit setuptools3
24
25# For compatibility with layers before scarthgap
26RREPLACES:${PN} = "bmap-tools"
27RCONFLICTS:${PN} = "bmap-tools"
28
29BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-support/boost/boost-1.75.0.inc b/meta/recipes-support/boost/boost-1.84.0.inc
index e5a8488c58..5bbea2ba5b 100644
--- a/meta/recipes-support/boost/boost-1.75.0.inc
+++ b/meta/recipes-support/boost/boost-1.84.0.inc
@@ -11,10 +11,10 @@ BOOST_VER = "${@"_".join(d.getVar("PV").split("."))}"
11BOOST_MAJ = "${@"_".join(d.getVar("PV").split(".")[0:2])}" 11BOOST_MAJ = "${@"_".join(d.getVar("PV").split(".")[0:2])}"
12BOOST_P = "boost_${BOOST_VER}" 12BOOST_P = "boost_${BOOST_VER}"
13 13
14SRC_URI = "https://dl.bintray.com/boostorg/release/${PV}/source/${BOOST_P}.tar.bz2" 14SRC_URI = "https://boostorg.jfrog.io/artifactory/main/release/${PV}/source/${BOOST_P}.tar.bz2"
15SRC_URI[sha256sum] = "953db31e016db7bb207f11432bef7df100516eeb746843fa0486a222e3fd49cb" 15SRC_URI[sha256sum] = "cc4b893acf645c9d4b698e9a0f08ca8846aa5d6c68275c14c3e7949c24109454"
16 16
17UPSTREAM_CHECK_URI = "http://www.boost.org/users/download/" 17UPSTREAM_CHECK_URI = "http://www.boost.org/users/download/"
18UPSTREAM_CHECK_REGEX = "boostorg/release/(?P<pver>.*)/source/" 18UPSTREAM_CHECK_REGEX = "release/(?P<pver>.*)/source/"
19 19
20S = "${WORKDIR}/${BOOST_P}" 20S = "${WORKDIR}/${BOOST_P}"
diff --git a/meta/recipes-support/boost/boost-build-native_1.84.0.bb b/meta/recipes-support/boost/boost-build-native_1.84.0.bb
new file mode 100644
index 0000000000..a345bac499
--- /dev/null
+++ b/meta/recipes-support/boost/boost-build-native_1.84.0.bb
@@ -0,0 +1,28 @@
1SUMMARY = "Boost.Build"
2DESCRIPTION = "B2 makes it easy to build C++ projects, everywhere."
3HOMEPAGE = "https://github.com/boostorg/build"
4SECTION = "devel"
5
6LICENSE = "BSL-1.0"
7LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=e4224ccaecb14d942c71d31bef20d78c"
8
9SRC_URI = "git://github.com/boostorg/build;protocol=https;branch=master"
10SRCREV = "8d86b9a85407d73d6e8c631771f18c2a237d2d71"
11PE = "1"
12
13UPSTREAM_CHECK_GITTAGREGEX = "boost-(?P<pver>(\d+(\.\d+)+))"
14
15inherit native
16
17S = "${WORKDIR}/git"
18
19do_compile() {
20 ./bootstrap.sh
21}
22
23do_install() {
24 HOME=/var/run ./b2 install --prefix=${prefix} staging-prefix=${D}${prefix}
25}
26
27# The build is either release mode (pre-stripped) or debug (-O0).
28INSANE_SKIP:${PN} = "already-stripped"
diff --git a/meta/recipes-support/boost/boost-build-native_4.3.0.bb b/meta/recipes-support/boost/boost-build-native_4.3.0.bb
deleted file mode 100644
index 258f8c9cdf..0000000000
--- a/meta/recipes-support/boost/boost-build-native_4.3.0.bb
+++ /dev/null
@@ -1,25 +0,0 @@
1SUMMARY = "Boost.Build"
2SECTION = "devel"
3
4LICENSE = "BSL-1.0"
5LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=e4224ccaecb14d942c71d31bef20d78c"
6
7SRC_URI = "git://github.com/boostorg/build;protocol=https"
8SRCREV = "632ea768f3eb225b4472c5ed6d20afee708724ad"
9
10UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>(\d+(\.\d+){2,}))"
11
12inherit native
13
14S = "${WORKDIR}/git"
15
16do_compile() {
17 ./bootstrap.sh
18}
19
20do_install() {
21 ./b2 install --prefix=${prefix} staging-prefix=${D}${prefix}
22}
23
24# The build is either release mode (pre-stripped) or debug (-O0).
25INSANE_SKIP_${PN} = "already-stripped"
diff --git a/meta/recipes-support/boost/boost.inc b/meta/recipes-support/boost/boost.inc
index c9bb178541..77105aa1fa 100644
--- a/meta/recipes-support/boost/boost.inc
+++ b/meta/recipes-support/boost/boost.inc
@@ -1,11 +1,15 @@
1SUMMARY = "Free peer-reviewed portable C++ source libraries" 1SUMMARY = "Free peer-reviewed portable C++ source libraries"
2DESCRIPTION = "Provides free peer-reviewed portable C++ source libraries. The emphasis is on libraries which work well with the C++ \
3Standard Library. One goal is to establish 'existing practice' and \
4provide reference implementations so that the Boost libraries are suitable for eventual standardization. Some of the libraries have already been proposed for inclusion in the C++ Standards Committee's \
5upcoming C++ Standard Library Technical Report."
2SECTION = "libs" 6SECTION = "libs"
3DEPENDS = "boost-build-native zlib bzip2" 7DEPENDS = "boost-build-native zlib bzip2"
4 8
5CVE_PRODUCT = "boost:boost" 9CVE_PRODUCT = "boost:boost"
6 10
7ARM_INSTRUCTION_SET_armv4 = "arm" 11ARM_INSTRUCTION_SET:armv4 = "arm"
8ARM_INSTRUCTION_SET_armv5 = "arm" 12ARM_INSTRUCTION_SET:armv5 = "arm"
9 13
10B = "${WORKDIR}/build" 14B = "${WORKDIR}/build"
11do_configure[cleandirs] = "${B}" 15do_configure[cleandirs] = "${B}"
@@ -24,6 +28,7 @@ BOOST_LIBS = "\
24 graph \ 28 graph \
25 headers \ 29 headers \
26 iostreams \ 30 iostreams \
31 json \
27 log \ 32 log \
28 math \ 33 math \
29 program_options \ 34 program_options \
@@ -35,6 +40,7 @@ BOOST_LIBS = "\
35 thread \ 40 thread \
36 timer \ 41 timer \
37 type_erasure \ 42 type_erasure \
43 url \
38 wave \ 44 wave \
39 " 45 "
40 46
@@ -67,35 +73,35 @@ python __anonymous () {
67 if "-native" in pn: 73 if "-native" in pn:
68 pkg = pkg + "-native" 74 pkg = pkg + "-native"
69 packages.append(mlprefix + pkg) 75 packages.append(mlprefix + pkg)
70 if not d.getVar("FILES_%s" % pkg): 76 if not d.getVar("FILES:%s" % pkg):
71 d.setVar("FILES_%s%s" % (mlprefix, pkg), "${libdir}/libboost_%s*.so.*" % lib) 77 d.setVar("FILES:%s%s" % (mlprefix, pkg), "${libdir}/libboost_%s*.so.*" % lib)
72 else: 78 else:
73 d.setVar("FILES_%s%s" % (mlprefix, pkg), d.getVar("FILES_%s" % pkg)) 79 d.setVar("FILES:%s%s" % (mlprefix, pkg), d.getVar("FILES:%s" % pkg))
74 80
75 d.setVar("BOOST_PACKAGES", " ".join(packages)) 81 d.setVar("BOOST_PACKAGES", " ".join(packages))
76 d.setVar("BJAM_EXTRA", " ".join(extras)) 82 d.setVar("BJAM_EXTRA", " ".join(extras))
77} 83}
78 84
79# Override the contents of specific packages 85# Override the contents of specific packages
80FILES_${PN}-graph_parallel = "${libdir}/libboost_graph_parallel.so.*" 86FILES:${PN}-graph_parallel = "${libdir}/libboost_graph_parallel.so.*"
81FILES_${PN}-locale = "${libdir}/libboost_locale.so.*" 87FILES:${PN}-locale = "${libdir}/libboost_locale.so.*"
82FILES_${PN}-mpi = "${libdir}/mpi.so ${libdir}/libboost_mpi*.so.*" 88FILES:${PN}-mpi = "${libdir}/mpi.so ${libdir}/libboost_mpi*.so.*"
83FILES_boost-serialization = "${libdir}/libboost_serialization*.so.* \ 89FILES:boost-serialization = "${libdir}/libboost_serialization*.so.* \
84 ${libdir}/libboost_wserialization*.so.*" 90 ${libdir}/libboost_wserialization*.so.*"
85FILES_boost-test = "${libdir}/libboost_prg_exec_monitor*.so.* \ 91FILES:boost-test = "${libdir}/libboost_prg_exec_monitor*.so.* \
86 ${libdir}/libboost_unit_test_framework*.so.*" 92 ${libdir}/libboost_unit_test_framework*.so.*"
87 93
88# -dev last to pick up the remaining stuff 94# -dev last to pick up the remaining stuff
89PACKAGES += "${PN}-dev ${PN}-staticdev" 95PACKAGES += "${PN}-dev ${PN}-staticdev"
90FILES_${PN}-dev = "${includedir} ${libdir}/libboost_*.so ${libdir}/cmake" 96FILES:${PN}-dev = "${includedir} ${libdir}/libboost_*.so ${libdir}/cmake"
91FILES_${PN}-staticdev = "${libdir}/libboost_*.a" 97FILES:${PN}-staticdev = "${libdir}/libboost_*.a"
92 98
93# "boost" is a metapackage which pulls in all boost librabries 99# "boost" is a metapackage which pulls in all boost librabries
94PACKAGES += "${PN}" 100PACKAGES += "${PN}"
95FILES_${PN} = "" 101FILES:${PN} = ""
96ALLOW_EMPTY_${PN} = "1" 102ALLOW_EMPTY:${PN} = "1"
97RRECOMMENDS_${PN} += "${BOOST_PACKAGES}" 103RRECOMMENDS:${PN} += "${BOOST_PACKAGES}"
98RRECOMMENDS_${PN}_class-native = "" 104RRECOMMENDS:${PN}:class-native = ""
99 105
100# to avoid GNU_HASH QA errors added LDFLAGS to ARCH; a little bit dirty but at least it works 106# to avoid GNU_HASH QA errors added LDFLAGS to ARCH; a little bit dirty but at least it works
101TARGET_CC_ARCH += "${LDFLAGS}" 107TARGET_CC_ARCH += "${LDFLAGS}"
@@ -146,19 +152,20 @@ BOOST_PARALLEL_MAKE = "${@oe.utils.parallel_make_argument(d, '-j%d')}"
146BJAM_OPTS = '${BOOST_PARALLEL_MAKE} -d+2 -q \ 152BJAM_OPTS = '${BOOST_PARALLEL_MAKE} -d+2 -q \
147 ${BJAM_TOOLS} \ 153 ${BJAM_TOOLS} \
148 -sBOOST_BUILD_USER_CONFIG=${WORKDIR}/user-config.jam \ 154 -sBOOST_BUILD_USER_CONFIG=${WORKDIR}/user-config.jam \
155 -sICU_PATH=${STAGING_EXECPREFIXDIR} \
149 --build-dir=${B} \ 156 --build-dir=${B} \
150 --disable-icu \ 157 --disable-icu \
151 ${BJAM_EXTRA}' 158 ${BJAM_EXTRA}'
152 159
153# Native compilation of bzip2 isn't working 160# Native compilation of bzip2 isn't working
154BJAM_OPTS_append_class-native = ' -sNO_BZIP2=1' 161BJAM_OPTS:append:class-native = ' -sNO_BZIP2=1'
155 162
156# Adjust the build for x32 163# Adjust the build for x32
157BJAM_OPTS_append_x86-x32 = " abi=x32 address-model=64" 164BJAM_OPTS:append:x86-x32 = " abi=x32 address-model=64"
158 165
159# cross compiling for arm fails to detect abi, so provide some help 166# cross compiling for arm fails to detect abi, so provide some help
160BJAM_OPTS_append_arm = " abi=aapcs architecture=arm" 167BJAM_OPTS:append:arm = " abi=aapcs architecture=arm"
161BJAM_OPTS_append_aarch64 = " abi=aapcs address-model=64 architecture=arm" 168BJAM_OPTS:append:aarch64 = " abi=aapcs address-model=64 architecture=arm"
162 169
163do_configure() { 170do_configure() {
164 cd ${S} 171 cd ${S}
diff --git a/meta/recipes-support/boost/boost/0001-Don-t-set-up-arch-instruction-set-flags-we-do-that-o.patch b/meta/recipes-support/boost/boost/0001-Don-t-set-up-arch-instruction-set-flags-we-do-that-o.patch
index 91ab53efd9..9ba5d5cc33 100644
--- a/meta/recipes-support/boost/boost/0001-Don-t-set-up-arch-instruction-set-flags-we-do-that-o.patch
+++ b/meta/recipes-support/boost/boost/0001-Don-t-set-up-arch-instruction-set-flags-we-do-that-o.patch
@@ -1,4 +1,4 @@
1From 8e1d30454afde37eaa3c593ec19d108cd5ed10d0 Mon Sep 17 00:00:00 2001 1From 18185e939ca121335a6172c8e50872af8122a759 Mon Sep 17 00:00:00 2001
2From: Alexander Kanavin <alex.kanavin@gmail.com> 2From: Alexander Kanavin <alex.kanavin@gmail.com>
3Date: Tue, 18 Dec 2018 15:42:57 +0100 3Date: Tue, 18 Dec 2018 15:42:57 +0100
4Subject: [PATCH] Don't set up arch/instruction-set flags, we do that 4Subject: [PATCH] Don't set up arch/instruction-set flags, we do that
@@ -8,16 +8,15 @@ ourselves
8Upstream-Status: Inappropriate 8Upstream-Status: Inappropriate
9Signed-off-by: Christopher Larson <chris_larson@mentor.com> 9Signed-off-by: Christopher Larson <chris_larson@mentor.com>
10Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> 10Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
11
12--- 11---
13 tools/build/src/tools/gcc.jam | 139 ---------------------------------- 12 tools/build/src/tools/gcc.jam | 153 ----------------------------------
14 1 file changed, 139 deletions(-) 13 1 file changed, 153 deletions(-)
15 14
16diff --git a/tools/build/src/tools/gcc.jam b/tools/build/src/tools/gcc.jam 15diff --git a/tools/build/src/tools/gcc.jam b/tools/build/src/tools/gcc.jam
17index ff3209f7b..70cbc39a5 100644 16index 834f5e1bf..493a43e6d 100644
18--- a/tools/build/src/tools/gcc.jam 17--- a/tools/build/src/tools/gcc.jam
19+++ b/tools/build/src/tools/gcc.jam 18+++ b/tools/build/src/tools/gcc.jam
20@@ -1217,142 +1217,3 @@ local rule cpu-flags ( toolset variable : architecture : instruction-set + : 19@@ -1113,156 +1113,3 @@ local rule cpu-flags ( toolset variable : architecture : instruction-set + :
21 <architecture>$(architecture)/<instruction-set>$(instruction-set) 20 <architecture>$(architecture)/<instruction-set>$(instruction-set)
22 : $(values) ; 21 : $(values) ;
23 } 22 }
@@ -72,6 +71,9 @@ index ff3209f7b..70cbc39a5 100644
72-cpu-flags gcc OPTIONS : x86 : cascadelake : -march=skylake-avx512 -mavx512vnni ; 71-cpu-flags gcc OPTIONS : x86 : cascadelake : -march=skylake-avx512 -mavx512vnni ;
73-cpu-flags gcc OPTIONS : x86 : cooperlake : -march=cooperlake ; 72-cpu-flags gcc OPTIONS : x86 : cooperlake : -march=cooperlake ;
74-cpu-flags gcc OPTIONS : x86 : tigerlake : -march=tigerlake ; 73-cpu-flags gcc OPTIONS : x86 : tigerlake : -march=tigerlake ;
74-cpu-flags gcc OPTIONS : x86 : rocketlake : -march=rocketlake ;
75-cpu-flags gcc OPTIONS : x86 : alderlake : -march=alderlake ;
76-cpu-flags gcc OPTIONS : x86 : sapphirerapids : -march=sapphirerapids ;
75-cpu-flags gcc OPTIONS : x86 : k6 : -march=k6 ; 77-cpu-flags gcc OPTIONS : x86 : k6 : -march=k6 ;
76-cpu-flags gcc OPTIONS : x86 : k6-2 : -march=k6-2 ; 78-cpu-flags gcc OPTIONS : x86 : k6-2 : -march=k6-2 ;
77-cpu-flags gcc OPTIONS : x86 : k6-3 : -march=k6-3 ; 79-cpu-flags gcc OPTIONS : x86 : k6-3 : -march=k6-3 ;
@@ -98,6 +100,7 @@ index ff3209f7b..70cbc39a5 100644
98-cpu-flags gcc OPTIONS : x86 : btver2 : -march=btver2 ; 100-cpu-flags gcc OPTIONS : x86 : btver2 : -march=btver2 ;
99-cpu-flags gcc OPTIONS : x86 : znver1 : -march=znver1 ; 101-cpu-flags gcc OPTIONS : x86 : znver1 : -march=znver1 ;
100-cpu-flags gcc OPTIONS : x86 : znver2 : -march=znver2 ; 102-cpu-flags gcc OPTIONS : x86 : znver2 : -march=znver2 ;
103-cpu-flags gcc OPTIONS : x86 : znver3 : -march=znver3 ;
101-cpu-flags gcc OPTIONS : x86 : winchip-c6 : -march=winchip-c6 ; 104-cpu-flags gcc OPTIONS : x86 : winchip-c6 : -march=winchip-c6 ;
102-cpu-flags gcc OPTIONS : x86 : winchip2 : -march=winchip2 ; 105-cpu-flags gcc OPTIONS : x86 : winchip2 : -march=winchip2 ;
103-cpu-flags gcc OPTIONS : x86 : c3 : -march=c3 ; 106-cpu-flags gcc OPTIONS : x86 : c3 : -march=c3 ;
@@ -158,5 +161,15 @@ index ff3209f7b..70cbc39a5 100644
158-cpu-flags gcc OPTIONS : s390x : z13 : -march=z13 ; 161-cpu-flags gcc OPTIONS : s390x : z13 : -march=z13 ;
159-cpu-flags gcc OPTIONS : s390x : z14 : -march=z14 ; 162-cpu-flags gcc OPTIONS : s390x : z14 : -march=z14 ;
160-cpu-flags gcc OPTIONS : s390x : z15 : -march=z15 ; 163-cpu-flags gcc OPTIONS : s390x : z15 : -march=z15 ;
164-# ARM
165-cpu-flags gcc OPTIONS : arm : cortex-a9+vfpv3 : -mcpu=cortex-a9 -mfpu=vfpv3 -mfloat-abi=hard ;
166-cpu-flags gcc OPTIONS : arm : cortex-a53 : -mcpu=cortex-a53 ;
167-cpu-flags gcc OPTIONS : arm : cortex-r5 : -mcpu=cortex-r5 ;
168-cpu-flags gcc OPTIONS : arm : cortex-r5+vfpv3-d16 : -mcpu=cortex-r5 -mfpu=vfpv3-d16 -mfloat-abi=hard ;
161-# AIX variant of RS/6000 & PowerPC 169-# AIX variant of RS/6000 & PowerPC
162-toolset.flags gcc AROPTIONS <address-model>64/<target-os>aix : "-X64" ; 170-toolset.flags gcc AROPTIONS <address-model>64/<target-os>aix : "-X64" ;
171-
172-# Enable response file control
173-toolset.flags gcc RESPONSE_FILE_SUB <response-file>auto : a ;
174-toolset.flags gcc RESPONSE_FILE_SUB <response-file>file : f ;
175-toolset.flags gcc RESPONSE_FILE_SUB <response-file>contents : c ;
diff --git a/meta/recipes-support/boost/boost/0001-dont-setup-compiler-flags-m32-m64.patch b/meta/recipes-support/boost/boost/0001-dont-setup-compiler-flags-m32-m64.patch
index 78b19225d4..913810a340 100644
--- a/meta/recipes-support/boost/boost/0001-dont-setup-compiler-flags-m32-m64.patch
+++ b/meta/recipes-support/boost/boost/0001-dont-setup-compiler-flags-m32-m64.patch
@@ -1,4 +1,4 @@
1From 59402e3a61d14eb7ce8c2019ea1a87ad4bd28605 Mon Sep 17 00:00:00 2001 1From bbb0845c0a79238fb2e84cca41826a0944b6ce7e Mon Sep 17 00:00:00 2001
2From: Anuj Mittal <anuj.mittal@intel.com> 2From: Anuj Mittal <anuj.mittal@intel.com>
3Date: Thu, 14 Nov 2019 10:13:53 +0800 3Date: Thu, 14 Nov 2019 10:13:53 +0800
4Subject: [PATCH] dont setup compiler flags -m32/-m64 4Subject: [PATCH] dont setup compiler flags -m32/-m64
@@ -13,13 +13,14 @@ Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
13 1 file changed, 14 deletions(-) 13 1 file changed, 14 deletions(-)
14 14
15diff --git a/tools/build/src/tools/gcc.jam b/tools/build/src/tools/gcc.jam 15diff --git a/tools/build/src/tools/gcc.jam b/tools/build/src/tools/gcc.jam
16index c7e3cf3..24486e0 100644 16index 493a43e6d..42dccbdfe 100644
17--- a/tools/build/src/tools/gcc.jam 17--- a/tools/build/src/tools/gcc.jam
18+++ b/tools/build/src/tools/gcc.jam 18+++ b/tools/build/src/tools/gcc.jam
19@@ -430,20 +430,6 @@ local rule compile-link-flags ( * ) 19@@ -360,20 +360,6 @@ local rule compile-link-flags ( * )
20 compile-link-flags <link>shared/<target-os>$(non-windows) : -fPIC ;
20 } 21 }
21 22
22 { 23-{
23- # Handle address-model 24- # Handle address-model
24- compile-link-flags <target-os>aix/<address-model>32 : -maix32 ; 25- compile-link-flags <target-os>aix/<address-model>32 : -maix32 ;
25- compile-link-flags <target-os>aix/<address-model>64 : -maix64 ; 26- compile-link-flags <target-os>aix/<address-model>64 : -maix64 ;
@@ -33,10 +34,6 @@ index c7e3cf3..24486e0 100644
33- compile-link-flags <target-os>$(generic-os)/<architecture>$(arch)/<address-model>64 : -m64 ; 34- compile-link-flags <target-os>$(generic-os)/<architecture>$(arch)/<address-model>64 : -m64 ;
34-} 35-}
35- 36-
36-{ 37 {
37 # Handle threading 38 # Handle threading
38 local rule threading-flags ( * ) 39 local rule threading-flags ( * )
39 {
40--
412.7.4
42
diff --git a/meta/recipes-support/boost/boost/0001-fiber-libs-Define-SYS_futex-if-it-does-not-exist.patch b/meta/recipes-support/boost/boost/0001-fiber-libs-Define-SYS_futex-if-it-does-not-exist.patch
deleted file mode 100644
index 523568e9bc..0000000000
--- a/meta/recipes-support/boost/boost/0001-fiber-libs-Define-SYS_futex-if-it-does-not-exist.patch
+++ /dev/null
@@ -1,54 +0,0 @@
1From d6f7b6064dc91d1d5fa18554b40b14822ab7a32b Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Fri, 16 Oct 2020 11:13:22 -0700
4Subject: [PATCH] fiber,libs: Define SYS_futex if it does not exist
5
6__NR_futex is not defines by newer architectures e.g. arc, riscv32 as
7they only have 64bit variant of time_t. Glibc defines SYS_futex interface based on
8__NR_futex, since this is used in applications, such applications start
9to fail to build for these newer architectures. This patch defines a
10fallback to alias __NR_futex to __NR_futex_tim64 so SYS_futex keeps
11working
12
13Upstream-Status: Pending
14
15Signed-off-by: Khem Raj <raj.khem@gmail.com>
16---
17 boost/fiber/detail/futex.hpp | 5 +++++
18 libs/log/src/event.cpp | 4 ++++
19 2 files changed, 9 insertions(+)
20
21diff --git a/boost/fiber/detail/futex.hpp b/boost/fiber/detail/futex.hpp
22index e64bd5990..16bee64f1 100644
23--- a/boost/fiber/detail/futex.hpp
24+++ b/boost/fiber/detail/futex.hpp
25@@ -17,6 +17,11 @@ extern "C" {
26 #include <linux/futex.h>
27 #include <sys/syscall.h>
28 }
29+
30+#if !defined(SYS_futex) && defined(SYS_futex_time64)
31+#define SYS_futex SYS_futex_time64
32+#endif
33+
34 #elif BOOST_OS_WINDOWS
35 #include <windows.h>
36 #endif
37diff --git a/libs/log/src/event.cpp b/libs/log/src/event.cpp
38index 5485154d7..2c7c0381f 100644
39--- a/libs/log/src/event.cpp
40+++ b/libs/log/src/event.cpp
41@@ -31,6 +31,10 @@
42 #include <linux/futex.h>
43 #include <boost/memory_order.hpp>
44
45+#if !defined(SYS_futex) && defined(SYS_futex_time64)
46+#define SYS_futex SYS_futex_time64
47+#endif
48+
49 // Some Android NDKs (Google NDK and older Crystax.NET NDK versions) don't define SYS_futex
50 #if defined(SYS_futex)
51 #define BOOST_LOG_SYS_FUTEX SYS_futex
52--
532.28.0
54
diff --git a/meta/recipes-support/boost/boost/boost-CVE-2012-2677.patch b/meta/recipes-support/boost/boost/boost-CVE-2012-2677.patch
deleted file mode 100644
index 917617a044..0000000000
--- a/meta/recipes-support/boost/boost/boost-CVE-2012-2677.patch
+++ /dev/null
@@ -1,112 +0,0 @@
1Reference
2
3https://svn.boost.org/trac/boost/changeset/78326
4
5Upstream-Status: Backport
6CVE: CVE-2012-2677
7Signed-off-by: Yue Tao <yue.tao@windriver.com>
8
9diff --git a/boost/pool/pool.hpp.old b/boost/pool/pool.hpp
10index c47b11f..417a1e0 100644
11--- a/boost/pool/pool.hpp.old
12+++ b/boost/pool/pool.hpp
13@@ -26,6 +26,8 @@
14
15 #include <boost/pool/poolfwd.hpp>
16
17+// std::numeric_limits
18+#include <boost/limits.hpp>
19 // boost::integer::static_lcm
20 #include <boost/integer/common_factor_ct.hpp>
21 // boost::simple_segregated_storage
22@@ -355,6 +357,15 @@ class pool: protected simple_segregated_storage < typename UserAllocator::size_t
23 return s;
24 }
25
26+ size_type max_chunks() const
27+ { //! Calculated maximum number of memory chunks that can be allocated in a single call by this Pool.
28+ size_type partition_size = alloc_size();
29+ size_type POD_size = integer::static_lcm<sizeof(size_type), sizeof(void *)>::value + sizeof(size_type);
30+ size_type max_chunks = (std::numeric_limits<size_type>::max() - POD_size) / alloc_size();
31+
32+ return max_chunks;
33+ }
34+
35 static void * & nextof(void * const ptr)
36 { //! \returns Pointer dereferenced.
37 //! (Provided and used for the sake of code readability :)
38@@ -375,6 +386,8 @@ class pool: protected simple_segregated_storage < typename UserAllocator::size_t
39 //! the first time that object needs to allocate system memory.
40 //! The default is 32. This parameter may not be 0.
41 //! \param nmax_size is the maximum number of chunks to allocate in one block.
42+ set_next_size(nnext_size);
43+ set_max_size(nmax_size);
44 }
45
46 ~pool()
47@@ -398,8 +411,8 @@ class pool: protected simple_segregated_storage < typename UserAllocator::size_t
48 }
49 void set_next_size(const size_type nnext_size)
50 { //! Set number of chunks to request from the system the next time that object needs to allocate system memory. This value should never be set to 0.
51- //! \returns nnext_size.
52- next_size = start_size = nnext_size;
53+ BOOST_USING_STD_MIN();
54+ next_size = start_size = min BOOST_PREVENT_MACRO_SUBSTITUTION(nnext_size, max_chunks());
55 }
56 size_type get_max_size() const
57 { //! \returns max_size.
58@@ -407,7 +420,8 @@ class pool: protected simple_segregated_storage < typename UserAllocator::size_t
59 }
60 void set_max_size(const size_type nmax_size)
61 { //! Set max_size.
62- max_size = nmax_size;
63+ BOOST_USING_STD_MIN();
64+ max_size = min BOOST_PREVENT_MACRO_SUBSTITUTION(nmax_size, max_chunks());
65 }
66 size_type get_requested_size() const
67 { //! \returns the requested size passed into the constructor.
68@@ -708,9 +722,9 @@ void * pool<UserAllocator>::malloc_need_resize()
69
70 BOOST_USING_STD_MIN();
71 if(!max_size)
72- next_size <<= 1;
73+ set_next_size(next_size << 1);
74 else if( next_size*partition_size/requested_size < max_size)
75- next_size = min BOOST_PREVENT_MACRO_SUBSTITUTION(next_size << 1, max_size*requested_size/ partition_size);
76+ set_next_size(min BOOST_PREVENT_MACRO_SUBSTITUTION(next_size << 1, max_size * requested_size / partition_size));
77
78 // initialize it,
79 store().add_block(node.begin(), node.element_size(), partition_size);
80@@ -748,9 +762,9 @@ void * pool<UserAllocator>::ordered_malloc_need_resize()
81
82 BOOST_USING_STD_MIN();
83 if(!max_size)
84- next_size <<= 1;
85+ set_next_size(next_size << 1);
86 else if( next_size*partition_size/requested_size < max_size)
87- next_size = min BOOST_PREVENT_MACRO_SUBSTITUTION(next_size << 1, max_size*requested_size/ partition_size);
88+ set_next_size(min BOOST_PREVENT_MACRO_SUBSTITUTION(next_size << 1, max_size * requested_size / partition_size));
89
90 // initialize it,
91 // (we can use "add_block" here because we know that
92@@ -792,6 +806,8 @@ void * pool<UserAllocator>::ordered_malloc(const size_type n)
93 { //! Gets address of a chunk n, allocating new memory if not already available.
94 //! \returns Address of chunk n if allocated ok.
95 //! \returns 0 if not enough memory for n chunks.
96+ if (n > max_chunks())
97+ return 0;
98
99 const size_type partition_size = alloc_size();
100 const size_type total_req_size = n * requested_size;
101@@ -840,9 +856,9 @@ void * pool<UserAllocator>::ordered_malloc(const size_type n)
102
103 BOOST_USING_STD_MIN();
104 if(!max_size)
105- next_size <<= 1;
106+ set_next_size(next_size << 1);
107 else if( next_size*partition_size/requested_size < max_size)
108- next_size = min BOOST_PREVENT_MACRO_SUBSTITUTION(next_size << 1, max_size*requested_size/ partition_size);
109+ set_next_size(min BOOST_PREVENT_MACRO_SUBSTITUTION(next_size << 1, max_size * requested_size / partition_size));
110
111 // insert it into the list,
112 // handle border case.
diff --git a/meta/recipes-support/boost/boost/boost-math-disable-pch-for-gcc.patch b/meta/recipes-support/boost/boost/boost-math-disable-pch-for-gcc.patch
index 595ba17865..9b6fcc6358 100644
--- a/meta/recipes-support/boost/boost/boost-math-disable-pch-for-gcc.patch
+++ b/meta/recipes-support/boost/boost/boost-math-disable-pch-for-gcc.patch
@@ -1,4 +1,4 @@
1From cabfcba1ff7511ffd6b91ca244288d44f585aad2 Mon Sep 17 00:00:00 2001 1From d6864bd78c01c5e8578805a7b67555c70a0e99a2 Mon Sep 17 00:00:00 2001
2From: Jackie Huang <jackie.huang@windriver.com> 2From: Jackie Huang <jackie.huang@windriver.com>
3Date: Fri, 23 Sep 2016 01:04:50 -0700 3Date: Fri, 23 Sep 2016 01:04:50 -0700
4Subject: [PATCH] boost-math: disable pch for gcc 4Subject: [PATCH] boost-math: disable pch for gcc
@@ -14,10 +14,10 @@ Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
14 1 file changed, 1 insertion(+), 1 deletion(-) 14 1 file changed, 1 insertion(+), 1 deletion(-)
15 15
16diff --git a/libs/math/build/Jamfile.v2 b/libs/math/build/Jamfile.v2 16diff --git a/libs/math/build/Jamfile.v2 b/libs/math/build/Jamfile.v2
17index e19fb2e..82472a7 100644 17index fd840287e..5aff7d724 100644
18--- a/libs/math/build/Jamfile.v2 18--- a/libs/math/build/Jamfile.v2
19+++ b/libs/math/build/Jamfile.v2 19+++ b/libs/math/build/Jamfile.v2
20@@ -13,7 +13,7 @@ project 20@@ -14,7 +14,7 @@ project
21 #<toolset>intel-linux:<pch>off 21 #<toolset>intel-linux:<pch>off
22 <toolset>intel-darwin:<pch>off 22 <toolset>intel-darwin:<pch>off
23 <toolset>msvc-7.1:<pch>off 23 <toolset>msvc-7.1:<pch>off
@@ -26,6 +26,3 @@ index e19fb2e..82472a7 100644
26 #<toolset>gcc:<cxxflags>-fvisibility=hidden 26 #<toolset>gcc:<cxxflags>-fvisibility=hidden
27 <toolset>intel-linux:<cxxflags>-fvisibility=hidden 27 <toolset>intel-linux:<cxxflags>-fvisibility=hidden
28 #<toolset>sun:<cxxflags>-xldscope=hidden 28 #<toolset>sun:<cxxflags>-xldscope=hidden
29--
302.7.4
31
diff --git a/meta/recipes-support/boost/boost_1.75.0.bb b/meta/recipes-support/boost/boost_1.84.0.bb
index 23b0ffc67e..4b580d078b 100644
--- a/meta/recipes-support/boost/boost_1.75.0.bb
+++ b/meta/recipes-support/boost/boost_1.84.0.bb
@@ -1,10 +1,7 @@
1require boost-${PV}.inc 1require boost-${PV}.inc
2require boost.inc 2require boost.inc
3 3
4SRC_URI += " \ 4SRC_URI += "file://boost-math-disable-pch-for-gcc.patch \
5 file://boost-CVE-2012-2677.patch \
6 file://boost-math-disable-pch-for-gcc.patch \
7 file://0001-Don-t-set-up-arch-instruction-set-flags-we-do-that-o.patch \ 5 file://0001-Don-t-set-up-arch-instruction-set-flags-we-do-that-o.patch \
8 file://0001-dont-setup-compiler-flags-m32-m64.patch \ 6 file://0001-dont-setup-compiler-flags-m32-m64.patch \
9 file://0001-fiber-libs-Define-SYS_futex-if-it-does-not-exist.patch \
10 " 7 "
diff --git a/meta/recipes-support/ca-certificates/ca-certificates/0001-Revert-mozilla-certdata2pem.py-print-a-warning-for-e.patch b/meta/recipes-support/ca-certificates/ca-certificates/0001-Revert-mozilla-certdata2pem.py-print-a-warning-for-e.patch
new file mode 100644
index 0000000000..5c4a32f526
--- /dev/null
+++ b/meta/recipes-support/ca-certificates/ca-certificates/0001-Revert-mozilla-certdata2pem.py-print-a-warning-for-e.patch
@@ -0,0 +1,80 @@
1From cb43ec15b700b25f3c4fe44043a1a021aaf5b768 Mon Sep 17 00:00:00 2001
2From: Alexander Kanavin <alex@linutronix.de>
3Date: Mon, 18 Oct 2021 12:05:49 +0200
4Subject: [PATCH] Revert "mozilla/certdata2pem.py: print a warning for expired
5 certificates."
6
7This avoids a dependency on python3-cryptography, and only checks
8for expired certs (which is upstream concern, but not ours).
9
10Upstream-Status: Inappropriate [oe-core specific]
11Signed-off-by: Alexander Kanavin <alex@linutronix.de>
12---
13 debian/changelog | 1 -
14 debian/control | 2 +-
15 mozilla/certdata2pem.py | 11 -----------
16 3 files changed, 1 insertion(+), 13 deletions(-)
17
18diff --git a/debian/changelog b/debian/changelog
19index 531e4d0..4006509 100644
20--- a/debian/changelog
21+++ b/debian/changelog
22@@ -37,7 +37,6 @@ ca-certificates (20211004) unstable; urgency=low
23 - "Trustis FPS Root CA"
24 - "Staat der Nederlanden Root CA - G3"
25 * Blacklist expired root certificate "DST Root CA X3" (closes: #995432)
26- * mozilla/certdata2pem.py: print a warning for expired certificates.
27
28 -- Julien Cristau <jcristau@debian.org> Thu, 07 Oct 2021 17:12:47 +0200
29
30diff --git a/debian/control b/debian/control
31index 4434b7a..5c6ba24 100644
32--- a/debian/control
33+++ b/debian/control
34@@ -3,7 +3,7 @@ Section: misc
35 Priority: optional
36 Maintainer: Julien Cristau <jcristau@debian.org>
37 Build-Depends: debhelper-compat (= 13), po-debconf
38-Build-Depends-Indep: python3, openssl, python3-cryptography
39+Build-Depends-Indep: python3, openssl
40 Standards-Version: 4.5.0.2
41 Vcs-Git: https://salsa.debian.org/debian/ca-certificates.git
42 Vcs-Browser: https://salsa.debian.org/debian/ca-certificates
43diff --git a/mozilla/certdata2pem.py b/mozilla/certdata2pem.py
44index ede23d4..7d796f1 100644
45--- a/mozilla/certdata2pem.py
46+++ b/mozilla/certdata2pem.py
47@@ -21,16 +21,12 @@
48 # USA.
49
50 import base64
51-import datetime
52 import os.path
53 import re
54 import sys
55 import textwrap
56 import io
57
58-from cryptography import x509
59-
60-
61 objects = []
62
63 # Dirty file parser.
64@@ -121,13 +117,6 @@ for obj in objects:
65 if obj['CKA_CLASS'] == 'CKO_CERTIFICATE':
66 if not obj['CKA_LABEL'] in trust or not trust[obj['CKA_LABEL']]:
67 continue
68-
69- cert = x509.load_der_x509_certificate(obj['CKA_VALUE'])
70- if cert.not_valid_after < datetime.datetime.now():
71- print('!'*74)
72- print('Trusted but expired certificate found: %s' % obj['CKA_LABEL'])
73- print('!'*74)
74-
75 bname = obj['CKA_LABEL'][1:-1].replace('/', '_')\
76 .replace(' ', '_')\
77 .replace('(', '=')\
78--
792.20.1
80
diff --git a/meta/recipes-support/ca-certificates/ca-certificates/sbindir.patch b/meta/recipes-support/ca-certificates/ca-certificates/sbindir.patch
deleted file mode 100644
index f343ebf16e..0000000000
--- a/meta/recipes-support/ca-certificates/ca-certificates/sbindir.patch
+++ /dev/null
@@ -1,26 +0,0 @@
1sbin/Makefile: Allow the sbin path to be configurable
2
3Some project sharing ca-certificates from Debian allow configuration
4of the installation location. Make the sbin location configurable.
5
6Also ensure the target directory exists
7
8Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
9Upstream-Status: Submitted [https://salsa.debian.org/debian/ca-certificates/-/merge_requests/5]
10
11--- ca-certificates-20130119.orig/sbin/Makefile
12+++ ca-certificates-20130119/sbin/Makefile
13@@ -3,9 +3,12 @@
14 #
15 #
16
17+SBINDIR = /usr/sbin
18+
19 all:
20
21 clean:
22
23 install:
24- install -m755 update-ca-certificates $(DESTDIR)/usr/sbin/
25+ install -d $(DESTDIR)$(SBINDIR)
26+ install -m755 update-ca-certificates $(DESTDIR)$(SBINDIR)/
diff --git a/meta/recipes-support/ca-certificates/ca-certificates/update-ca-certificates-support-Toybox.patch b/meta/recipes-support/ca-certificates/ca-certificates/update-ca-certificates-support-Toybox.patch
deleted file mode 100644
index f78790923c..0000000000
--- a/meta/recipes-support/ca-certificates/ca-certificates/update-ca-certificates-support-Toybox.patch
+++ /dev/null
@@ -1,33 +0,0 @@
1update-ca-certificates: Replace deprecated mktemp -t with mktemp --tmpdir
2
3According to coreutils docs, mktemp -t is deprecated, switch to the
4--tmpdir option instead.
5
6Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7Upstream-Status: Submitted [https://salsa.debian.org/debian/ca-certificates/-/merge_requests/5]
8
9[This was originally for compatibility with toybox but toybox now
10supports -t]
11---
12 sbin/update-ca-certificates | 6 +++---
13 1 file changed, 3 insertions(+), 3 deletions(-)
14
15diff --git a/sbin/update-ca-certificates b/sbin/update-ca-certificates
16index 79c41bb..ae9e3f1 100755
17--- a/sbin/update-ca-certificates
18+++ b/sbin/update-ca-certificates
19@@ -113,9 +113,9 @@ trap cleanup 0
20
21 # Helper files. (Some of them are not simple arrays because we spawn
22 # subshells later on.)
23-TEMPBUNDLE="$(mktemp -t "${CERTBUNDLE}.tmp.XXXXXX")"
24-ADDED="$(mktemp -t "ca-certificates.tmp.XXXXXX")"
25-REMOVED="$(mktemp -t "ca-certificates.tmp.XXXXXX")"
26+TEMPBUNDLE="$(mktemp --tmpdir "${CERTBUNDLE}.tmp.XXXXXX")"
27+ADDED="$(mktemp --tmpdir "ca-certificates.tmp.XXXXXX")"
28+REMOVED="$(mktemp --tmpdir "ca-certificates.tmp.XXXXXX")"
29
30 # Adds a certificate to the list of trusted ones. This includes a symlink
31 # in /etc/ssl/certs to the certificate file and its inclusion into the
32--
332.1.4
diff --git a/meta/recipes-support/ca-certificates/ca-certificates_20210119.bb b/meta/recipes-support/ca-certificates/ca-certificates_20211016.bb
index 888a235c1a..99abe60613 100644
--- a/meta/recipes-support/ca-certificates/ca-certificates_20210119.bb
+++ b/meta/recipes-support/ca-certificates/ca-certificates_20211016.bb
@@ -4,25 +4,24 @@ SSL-based applications to check for the authenticity of SSL connections. \
4This derived from Debian's CA Certificates." 4This derived from Debian's CA Certificates."
5HOMEPAGE = "http://packages.debian.org/sid/ca-certificates" 5HOMEPAGE = "http://packages.debian.org/sid/ca-certificates"
6SECTION = "misc" 6SECTION = "misc"
7LICENSE = "GPL-2.0+ & MPL-2.0" 7LICENSE = "GPL-2.0-or-later & MPL-2.0"
8LIC_FILES_CHKSUM = "file://debian/copyright;md5=ae5b36b514e3f12ce1aa8e2ee67f3d7e" 8LIC_FILES_CHKSUM = "file://debian/copyright;md5=ae5b36b514e3f12ce1aa8e2ee67f3d7e"
9 9
10# This is needed to ensure we can run the postinst at image creation time 10# This is needed to ensure we can run the postinst at image creation time
11DEPENDS = "" 11DEPENDS = ""
12DEPENDS_class-native = "openssl-native" 12DEPENDS:class-native = "openssl-native"
13DEPENDS_class-nativesdk = "openssl-native" 13DEPENDS:class-nativesdk = "openssl-native"
14# Need rehash from openssl and run-parts from debianutils 14# Need rehash from openssl and run-parts from debianutils
15PACKAGE_WRITE_DEPS += "openssl-native debianutils-native" 15PACKAGE_WRITE_DEPS += "openssl-native debianutils-native"
16 16
17SRCREV = "181be7ebd169b4a6fb5d90c3e6dc791e90534144" 17SRCREV = "07de54fdcc5806bde549e1edf60738c6bccf50e8"
18 18
19SRC_URI = "git://salsa.debian.org/debian/ca-certificates.git;protocol=https \ 19SRC_URI = "git://salsa.debian.org/debian/ca-certificates.git;protocol=https;branch=master \
20 file://0002-update-ca-certificates-use-SYSROOT.patch \ 20 file://0002-update-ca-certificates-use-SYSROOT.patch \
21 file://0001-update-ca-certificates-don-t-use-Debianisms-in-run-p.patch \ 21 file://0001-update-ca-certificates-don-t-use-Debianisms-in-run-p.patch \
22 file://update-ca-certificates-support-Toybox.patch \
23 file://default-sysroot.patch \ 22 file://default-sysroot.patch \
24 file://sbindir.patch \
25 file://0003-update-ca-certificates-use-relative-symlinks-from-ET.patch \ 23 file://0003-update-ca-certificates-use-relative-symlinks-from-ET.patch \
24 file://0001-Revert-mozilla-certdata2pem.py-print-a-warning-for-e.patch \
26 " 25 "
27UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>\d+)" 26UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>\d+)"
28 27
@@ -35,7 +34,7 @@ EXTRA_OEMAKE = "\
35 'SBINDIR=${sbindir}' \ 34 'SBINDIR=${sbindir}' \
36" 35"
37 36
38do_compile_prepend() { 37do_compile:prepend() {
39 oe_runmake clean 38 oe_runmake clean
40} 39}
41 40
@@ -58,7 +57,7 @@ do_install () {
58 } >${D}${sysconfdir}/ca-certificates.conf 57 } >${D}${sysconfdir}/ca-certificates.conf
59} 58}
60 59
61do_install_append_class-target () { 60do_install:append:class-target () {
62 sed -i -e 's,/etc/,${sysconfdir}/,' \ 61 sed -i -e 's,/etc/,${sysconfdir}/,' \
63 -e 's,/usr/share/,${datadir}/,' \ 62 -e 's,/usr/share/,${datadir}/,' \
64 -e 's,/usr/local,${prefix}/local,' \ 63 -e 's,/usr/local,${prefix}/local,' \
@@ -66,25 +65,25 @@ do_install_append_class-target () {
66 ${D}${mandir}/man8/update-ca-certificates.8 65 ${D}${mandir}/man8/update-ca-certificates.8
67} 66}
68 67
69pkg_postinst_${PN}_class-target () { 68pkg_postinst:${PN}:class-target () {
70 SYSROOT="$D" $D${sbindir}/update-ca-certificates 69 SYSROOT="$D" $D${sbindir}/update-ca-certificates
71} 70}
72 71
73CONFFILES_${PN} += "${sysconfdir}/ca-certificates.conf" 72CONFFILES:${PN} += "${sysconfdir}/ca-certificates.conf"
74 73
75# Rather than make a postinst script that works for both target and nativesdk, 74# Rather than make a postinst script that works for both target and nativesdk,
76# we just run update-ca-certificate from do_install() for nativesdk. 75# we just run update-ca-certificate from do_install() for nativesdk.
77CONFFILES_${PN}_append_class-nativesdk = " ${sysconfdir}/ssl/certs/ca-certificates.crt" 76CONFFILES:${PN}:append:class-nativesdk = " ${sysconfdir}/ssl/certs/ca-certificates.crt"
78do_install_append_class-nativesdk () { 77do_install:append:class-nativesdk () {
79 SYSROOT="${D}${SDKPATHNATIVE}" ${D}${sbindir}/update-ca-certificates 78 SYSROOT="${D}${SDKPATHNATIVE}" ${D}${sbindir}/update-ca-certificates
80} 79}
81 80
82do_install_append_class-native () { 81do_install:append:class-native () {
83 SYSROOT="${D}${base_prefix}" ${D}${sbindir}/update-ca-certificates 82 SYSROOT="${D}${base_prefix}" ${D}${sbindir}/update-ca-certificates
84} 83}
85 84
86RDEPENDS_${PN}_class-target = "openssl-bin" 85RDEPENDS:${PN}:append:class-target = " openssl-bin openssl"
87RDEPENDS_${PN}_class-native = "openssl-native" 86RDEPENDS:${PN}:append:class-native = " openssl-native"
88RDEPENDS_${PN}_class-nativesdk = "nativesdk-openssl-bin" 87RDEPENDS:${PN}:append:class-nativesdk = " nativesdk-openssl-bin nativesdk-openssl"
89 88
90BBCLASSEXTEND = "native nativesdk" 89BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-support/consolekit/consolekit_0.4.6.bb b/meta/recipes-support/consolekit/consolekit_0.4.6.bb
index 89f2d77b66..346bd60e4d 100644
--- a/meta/recipes-support/consolekit/consolekit_0.4.6.bb
+++ b/meta/recipes-support/consolekit/consolekit_0.4.6.bb
@@ -1,13 +1,15 @@
1SUMMARY = "Framework for defining and tracking users, login sessions, and seats" 1SUMMARY = "Framework for defining and tracking users, login sessions, and seats"
2DESCRIPTION = "It provides a mechanism for software to react to changes \
3of any of these items or of any of the metadata associated with them."
2HOMEPAGE = "http://www.freedesktop.org/wiki/Software/ConsoleKit" 4HOMEPAGE = "http://www.freedesktop.org/wiki/Software/ConsoleKit"
3BUGTRACKER = "https://bugs.freedesktop.org/buglist.cgi?query_format=specific&product=ConsoleKit" 5BUGTRACKER = "https://bugs.freedesktop.org/buglist.cgi?query_format=specific&product=ConsoleKit"
4 6
5LICENSE = "GPLv2+" 7LICENSE = "GPL-2.0-or-later"
6LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552 \ 8LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552 \
7 file://src/main.c;endline=21;md5=0a994e09769780220163255d8f9071c3" 9 file://src/main.c;endline=21;md5=0a994e09769780220163255d8f9071c3"
8 10
9DEPENDS = "glib-2.0 glib-2.0-native dbus dbus-glib virtual/libx11" 11DEPENDS = "glib-2.0 glib-2.0-native dbus dbus-glib virtual/libx11"
10RDEPENDS_${PN} += "base-files" 12RDEPENDS:${PN} += "base-files"
11 13
12inherit autotools pkgconfig features_check 14inherit autotools pkgconfig features_check
13# depends on virtual/libx11 15# depends on virtual/libx11
@@ -27,17 +29,17 @@ PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'pam systemd polkit', d
27 29
28PACKAGECONFIG[pam] = "--enable-pam-module --with-pam-module-dir=${base_libdir}/security,--disable-pam-module,libpam" 30PACKAGECONFIG[pam] = "--enable-pam-module --with-pam-module-dir=${base_libdir}/security,--disable-pam-module,libpam"
29PACKAGECONFIG[polkit] = "--with-polkit,--without-polkit,polkit" 31PACKAGECONFIG[polkit] = "--with-polkit,--without-polkit,polkit"
30PACKAGECONFIG[systemd] = "--with-systemdsystemunitdir=${systemd_unitdir}/system/,--with-systemdsystemunitdir=" 32PACKAGECONFIG[systemd] = "--with-systemdsystemunitdir=${systemd_system_unitdir}/,--with-systemdsystemunitdir="
31 33
32FILES_${PN} += "${exec_prefix}/lib/ConsoleKit \ 34FILES:${PN} += "${exec_prefix}/lib/ConsoleKit \
33 ${libdir}/ConsoleKit ${systemd_unitdir} ${base_libdir} \ 35 ${libdir}/ConsoleKit ${systemd_unitdir} ${base_libdir} \
34 ${datadir}/dbus-1 ${datadir}/PolicyKit ${datadir}/polkit*" 36 ${datadir}/dbus-1 ${datadir}/PolicyKit ${datadir}/polkit*"
35 37
36PACKAGES =+ "pam-plugin-ck-connector" 38PACKAGES =+ "pam-plugin-ck-connector"
37FILES_pam-plugin-ck-connector += "${base_libdir}/security/*.so" 39FILES:pam-plugin-ck-connector += "${base_libdir}/security/*.so"
38RDEPENDS_pam-plugin-ck-connector += "${PN}" 40RDEPENDS:pam-plugin-ck-connector += "${PN}"
39 41
40do_install_append() { 42do_install:append() {
41 if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then 43 if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then
42 install -d ${D}${sysconfdir}/tmpfiles.d 44 install -d ${D}${sysconfdir}/tmpfiles.d
43 echo "d ${localstatedir}/log/ConsoleKit - - - -" \ 45 echo "d ${localstatedir}/log/ConsoleKit - - - -" \
diff --git a/meta/recipes-support/curl/curl/0001-replace-krb5-config-with-pkg-config.patch b/meta/recipes-support/curl/curl/0001-replace-krb5-config-with-pkg-config.patch
deleted file mode 100644
index a7db1b3c9e..0000000000
--- a/meta/recipes-support/curl/curl/0001-replace-krb5-config-with-pkg-config.patch
+++ /dev/null
@@ -1,44 +0,0 @@
1From ed70f0623708b8a6c1f58a5d243d87c5ff45b24d Mon Sep 17 00:00:00 2001
2From: Roy Li <rongqing.li@windriver.com>
3Date: Tue, 26 Apr 2016 13:13:01 +0800
4Subject: [PATCH] replace krb5-config with pkg-config
5
6Upstream-Status: Pending
7
8Signed-off-by: Roy Li <rongqing.li@windriver.com>
9
10---
11 configure.ac | 6 +++---
12 1 file changed, 3 insertions(+), 3 deletions(-)
13
14diff --git a/configure.ac b/configure.ac
15index 5569a26..56b0380 100755
16--- a/configure.ac
17+++ b/configure.ac
18@@ -1290,7 +1290,7 @@ AC_ARG_WITH(gssapi,
19 fi
20 ])
21
22-: ${KRB5CONFIG:="$GSSAPI_ROOT/bin/krb5-config"}
23+KRB5CONFIG=`which pkg-config`
24
25 save_CPPFLAGS="$CPPFLAGS"
26 AC_MSG_CHECKING([if GSS-API support is requested])
27@@ -1301,7 +1301,7 @@ if test x"$want_gss" = xyes; then
28 if test -n "$host_alias" -a -f "$GSSAPI_ROOT/bin/$host_alias-krb5-config"; then
29 GSSAPI_INCS=`$GSSAPI_ROOT/bin/$host_alias-krb5-config --cflags gssapi`
30 elif test -f "$KRB5CONFIG"; then
31- GSSAPI_INCS=`$KRB5CONFIG --cflags gssapi`
32+ GSSAPI_INCS=`$KRB5CONFIG --cflags mit-krb5-gssapi`
33 elif test "$GSSAPI_ROOT" != "yes"; then
34 GSSAPI_INCS="-I$GSSAPI_ROOT/include"
35 fi
36@@ -1394,7 +1394,7 @@ if test x"$want_gss" = xyes; then
37 elif test -f "$KRB5CONFIG"; then
38 dnl krb5-config doesn't have --libs-only-L or similar, put everything
39 dnl into LIBS
40- gss_libs=`$KRB5CONFIG --libs gssapi`
41+ gss_libs=`$KRB5CONFIG --libs mit-krb5-gssapi`
42 LIBS="$gss_libs $LIBS"
43 else
44 case $host in
diff --git a/meta/recipes-support/curl/curl/721941aadf4adf4f6aeb3f4c0ab489bb89610c36.patch b/meta/recipes-support/curl/curl/721941aadf4adf4f6aeb3f4c0ab489bb89610c36.patch
new file mode 100644
index 0000000000..98f7db93e8
--- /dev/null
+++ b/meta/recipes-support/curl/curl/721941aadf4adf4f6aeb3f4c0ab489bb89610c36.patch
@@ -0,0 +1,64 @@
1From 721941aadf4adf4f6aeb3f4c0ab489bb89610c36 Mon Sep 17 00:00:00 2001
2From: Stefan Eissing <stefan@eissing.org>
3Date: Mon, 1 Apr 2024 15:41:18 +0200
4Subject: [PATCH] http: with chunked POST forced, disable length check on read
5 callback
6
7- when an application forces HTTP/1.1 chunked transfer encoding
8 by setting the corresponding header and instructs curl to use
9 the CURLOPT_READFUNCTION, disregard any POST length information.
10- this establishes backward compatibility with previous curl versions
11
12Applications are encouraged to not force "chunked", but rather
13set length information for a POST. By setting -1, curl will
14auto-select chunked on HTTP/1.1 and work properly on other HTTP
15versions.
16
17Reported-by: Jeff King
18Fixes #13229
19Closes #13257
20Upstream-Status: Backport
21---
22 lib/http.c | 22 ++++++++++++++++++++--
23 1 file changed, 20 insertions(+), 2 deletions(-)
24
25diff --git a/lib/http.c b/lib/http.c
26index 92c04e69cd8373..a764d3c4403c39 100644
27--- a/lib/http.c
28+++ b/lib/http.c
29@@ -2046,8 +2046,19 @@ static CURLcode set_reader(struct Curl_easy *data, Curl_HttpReq httpreq)
30 else
31 result = Curl_creader_set_null(data);
32 }
33- else { /* we read the bytes from the callback */
34- result = Curl_creader_set_fread(data, postsize);
35+ else {
36+ /* we read the bytes from the callback. In case "chunked" encoding
37+ * is forced by the application, we disregard `postsize`. This is
38+ * a backward compatibility decision to earlier versions where
39+ * chunking disregarded this. See issue #13229. */
40+ bool chunked = FALSE;
41+ char *ptr = Curl_checkheaders(data, STRCONST("Transfer-Encoding"));
42+ if(ptr) {
43+ /* Some kind of TE is requested, check if 'chunked' is chosen */
44+ chunked = Curl_compareheader(ptr, STRCONST("Transfer-Encoding:"),
45+ STRCONST("chunked"));
46+ }
47+ result = Curl_creader_set_fread(data, chunked? -1 : postsize);
48 }
49 return result;
50
51@@ -2115,6 +2126,13 @@ CURLcode Curl_http_req_set_reader(struct Curl_easy *data,
52 data->req.upload_chunky =
53 Curl_compareheader(ptr,
54 STRCONST("Transfer-Encoding:"), STRCONST("chunked"));
55+ if(data->req.upload_chunky &&
56+ Curl_use_http_1_1plus(data, data->conn) &&
57+ (data->conn->httpversion >= 20)) {
58+ infof(data, "suppressing chunked transfer encoding on connection "
59+ "using HTTP version 2 or higher");
60+ data->req.upload_chunky = FALSE;
61+ }
62 }
63 else {
64 curl_off_t req_clen = Curl_creader_total_length(data);
diff --git a/meta/recipes-support/curl/curl/disable-tests b/meta/recipes-support/curl/curl/disable-tests
new file mode 100644
index 0000000000..259576fd01
--- /dev/null
+++ b/meta/recipes-support/curl/curl/disable-tests
@@ -0,0 +1,41 @@
1# Intermittently fails e.g. https://autobuilder.yocto.io/pub/non-release/20231220-28/testresults/qemux86-64-ptest/curl.log
2# https://autobuilder.yocto.io/pub/non-release/20231220-27/testresults/qemux86-64-ptest/curl.log
3337
4# These CRL test (alt-avc) are failing
5356
6412
7413
8# These CRL tests are scanning docs
9971
10# Intermittently hangs e.g http://autobuilder.yocto.io/pub/non-release/20231228-18/testresults/qemux86-64-ptest/curl.log
111091
12# Intermittently hangs e.g https://autobuilder.yocto.io/pub/non-release/20231220-27/testresults/qemux86-64-ptest/curl.log
131096
14# These CRL tests are scanning docs
151119
161132
171135
181478
19# These CRL tests are scanning headers
201167
211477
22# These CRL tests are scanning man pages
231139
241140
251173
261177
27# This CRL test is looking for m4 files
281165
29# This CRL test is looking for src files
301185
31# This test is scanning the source tree
321222
33# These CRL tests need --libcurl option to be enabled
341279
351400
361401
371402
381403
391404
401405
411465
diff --git a/meta/recipes-support/curl/curl/no-test-timeout.patch b/meta/recipes-support/curl/curl/no-test-timeout.patch
new file mode 100644
index 0000000000..7122b6f043
--- /dev/null
+++ b/meta/recipes-support/curl/curl/no-test-timeout.patch
@@ -0,0 +1,25 @@
1From 42cddb52e821cfc2f09f1974742714e5f2f1856e Mon Sep 17 00:00:00 2001
2From: Ross Burton <ross.burton@arm.com>
3Date: Fri, 15 Mar 2024 14:37:37 +0000
4Subject: [PATCH] Set the max-time timeout to 600 so the timeout is 10 minutes
5 instead of 13 seconds.
6
7Upstream-Status: Inappropriate
8Signed-off-by: Ross Burton <ross.burton@arm.com>
9---
10 tests/servers.pm | 2 +-
11 1 file changed, 1 insertion(+), 1 deletion(-)
12
13diff --git a/tests/servers.pm b/tests/servers.pm
14index d4472d5..9999938 100644
15--- a/tests/servers.pm
16+++ b/tests/servers.pm
17@@ -120,7 +120,7 @@ my $sshdverstr; # for socks server, ssh daemon version string
18 my $sshderror; # for socks server, ssh daemon version error
19 my %doesntrun; # servers that don't work, identified by pidfile
20 my %PORT = (nolisten => 47); # port we use for a local non-listening service
21-my $server_response_maxtime=13;
22+my $server_response_maxtime=600;
23 my $httptlssrv = find_httptlssrv();
24 my %run; # running server
25 my %runcert; # cert file currently in use by an ssl running server
diff --git a/meta/recipes-support/curl/curl/run-ptest b/meta/recipes-support/curl/curl/run-ptest
new file mode 100644
index 0000000000..3d25f3d90b
--- /dev/null
+++ b/meta/recipes-support/curl/curl/run-ptest
@@ -0,0 +1,11 @@
1#!/bin/sh
2
3cd tests
4
5# Run all tests, don't stop on first failure
6# Don't use valgrind if it is found
7# Use automake-style output
8# Run four tests in parallel
9# Print log output on failure
10# Don't run the flaky or timing dependent tests
11./runtests.pl -a -n -am -j4 -p !flaky !timing-dependent
diff --git a/meta/recipes-support/curl/curl_7.75.0.bb b/meta/recipes-support/curl/curl_7.75.0.bb
deleted file mode 100644
index 5bbc56085a..0000000000
--- a/meta/recipes-support/curl/curl_7.75.0.bb
+++ /dev/null
@@ -1,85 +0,0 @@
1SUMMARY = "Command line tool and library for client-side URL transfers"
2HOMEPAGE = "http://curl.haxx.se/"
3BUGTRACKER = "http://curl.haxx.se/mail/list.cgi?list=curl-tracker"
4SECTION = "console/network"
5LICENSE = "MIT"
6LIC_FILES_CHKSUM = "file://COPYING;md5=425f6fdc767cc067518eef9bbdf4ab7b"
7
8SRC_URI = "https://curl.haxx.se/download/curl-${PV}.tar.bz2 \
9 file://0001-replace-krb5-config-with-pkg-config.patch \
10"
11
12SRC_URI[sha256sum] = "50552d4501c178e4cc68baaecc487f466a3d6d19bbf4e50a01869effb316d026"
13
14# Curl has used many names over the years...
15CVE_PRODUCT = "haxx:curl haxx:libcurl curl:curl curl:libcurl libcurl:libcurl daniel_stenberg:curl"
16
17inherit autotools pkgconfig binconfig multilib_header
18
19PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)} gnutls libidn proxy threaded-resolver verbose zlib"
20PACKAGECONFIG_class-native = "ipv6 proxy ssl threaded-resolver verbose zlib"
21PACKAGECONFIG_class-nativesdk = "ipv6 proxy ssl threaded-resolver verbose zlib"
22
23# 'ares' and 'threaded-resolver' are mutually exclusive
24PACKAGECONFIG[ares] = "--enable-ares,--disable-ares,c-ares,,,threaded-resolver"
25PACKAGECONFIG[brotli] = "--with-brotli,--without-brotli,brotli"
26PACKAGECONFIG[builtinmanual] = "--enable-manual,--disable-manual"
27PACKAGECONFIG[dict] = "--enable-dict,--disable-dict,"
28PACKAGECONFIG[gnutls] = "--with-gnutls,--without-gnutls,gnutls"
29PACKAGECONFIG[gopher] = "--enable-gopher,--disable-gopher,"
30PACKAGECONFIG[imap] = "--enable-imap,--disable-imap,"
31PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6,"
32PACKAGECONFIG[krb5] = "--with-gssapi,--without-gssapi,krb5"
33PACKAGECONFIG[ldap] = "--enable-ldap,--disable-ldap,"
34PACKAGECONFIG[ldaps] = "--enable-ldaps,--disable-ldaps,"
35PACKAGECONFIG[libidn] = "--with-libidn2,--without-libidn2,libidn2"
36PACKAGECONFIG[libssh2] = "--with-libssh2,--without-libssh2,libssh2"
37PACKAGECONFIG[mbedtls] = "--with-mbedtls=${STAGING_DIR_TARGET},--without-mbedtls,mbedtls"
38PACKAGECONFIG[mqtt] = "--enable-mqtt,--disable-mqtt,"
39PACKAGECONFIG[nghttp2] = "--with-nghttp2,--without-nghttp2,nghttp2"
40PACKAGECONFIG[pop3] = "--enable-pop3,--disable-pop3,"
41PACKAGECONFIG[proxy] = "--enable-proxy,--disable-proxy,"
42PACKAGECONFIG[rtmpdump] = "--with-librtmp,--without-librtmp,rtmpdump"
43PACKAGECONFIG[rtsp] = "--enable-rtsp,--disable-rtsp,"
44PACKAGECONFIG[smb] = "--enable-smb,--disable-smb,"
45PACKAGECONFIG[smtp] = "--enable-smtp,--disable-smtp,"
46PACKAGECONFIG[ssl] = "--with-ssl --with-random=/dev/urandom,--without-ssl,openssl"
47PACKAGECONFIG[nss] = "--with-nss,--without-nss,nss"
48PACKAGECONFIG[telnet] = "--enable-telnet,--disable-telnet,"
49PACKAGECONFIG[tftp] = "--enable-tftp,--disable-tftp,"
50PACKAGECONFIG[threaded-resolver] = "--enable-threaded-resolver,--disable-threaded-resolver,,,,ares"
51PACKAGECONFIG[verbose] = "--enable-verbose,--disable-verbose"
52PACKAGECONFIG[zlib] = "--with-zlib=${STAGING_LIBDIR}/../,--without-zlib,zlib"
53
54EXTRA_OECONF = " \
55 --disable-libcurl-option \
56 --disable-ntlm-wb \
57 --enable-crypto-auth \
58 --with-ca-bundle=${sysconfdir}/ssl/certs/ca-certificates.crt \
59 --without-libmetalink \
60 --without-libpsl \
61 --enable-debug \
62 --enable-optimize \
63 --disable-curldebug \
64"
65
66do_install_append_class-target() {
67 # cleanup buildpaths from curl-config
68 sed -i \
69 -e 's,--sysroot=${STAGING_DIR_TARGET},,g' \
70 -e 's,--with-libtool-sysroot=${STAGING_DIR_TARGET},,g' \
71 -e 's|${DEBUG_PREFIX_MAP}||g' \
72 ${D}${bindir}/curl-config
73}
74
75PACKAGES =+ "lib${BPN}"
76
77FILES_lib${BPN} = "${libdir}/lib*.so.*"
78RRECOMMENDS_lib${BPN} += "ca-certificates"
79
80FILES_${PN} += "${datadir}/zsh"
81
82inherit multilib_script
83MULTILIB_SCRIPTS = "${PN}-dev:${bindir}/curl-config"
84
85BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-support/curl/curl_8.7.1.bb b/meta/recipes-support/curl/curl_8.7.1.bb
new file mode 100644
index 0000000000..c74416d7e9
--- /dev/null
+++ b/meta/recipes-support/curl/curl_8.7.1.bb
@@ -0,0 +1,150 @@
1SUMMARY = "Command line tool and library for client-side URL transfers"
2DESCRIPTION = "It uses URL syntax to transfer data to and from servers. \
3curl is a widely used because of its ability to be flexible and complete \
4complex tasks. For example, you can use curl for things like user authentication, \
5HTTP post, SSL connections, proxy support, FTP uploads, and more!"
6HOMEPAGE = "https://curl.se/"
7BUGTRACKER = "https://github.com/curl/curl/issues"
8SECTION = "console/network"
9LICENSE = "curl"
10LIC_FILES_CHKSUM = "file://COPYING;md5=eed2e5088e1ac619c9a1c747da291d75"
11
12SRC_URI = " \
13 https://curl.se/download/${BP}.tar.xz \
14 file://721941aadf4adf4f6aeb3f4c0ab489bb89610c36.patch \
15 file://run-ptest \
16 file://disable-tests \
17 file://no-test-timeout.patch \
18"
19SRC_URI[sha256sum] = "6fea2aac6a4610fbd0400afb0bcddbe7258a64c63f1f68e5855ebc0c659710cd"
20
21# Curl has used many names over the years...
22CVE_PRODUCT = "haxx:curl haxx:libcurl curl:curl curl:libcurl libcurl:libcurl daniel_stenberg:curl"
23
24inherit autotools pkgconfig binconfig multilib_header ptest
25
26# Entropy source for random PACKAGECONFIG option
27RANDOM ?= "/dev/urandom"
28
29PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)} aws basic-auth bearer-auth digest-auth negotiate-auth libidn openssl proxy random threaded-resolver verbose zlib"
30PACKAGECONFIG:class-native = "ipv6 openssl proxy random threaded-resolver verbose zlib"
31PACKAGECONFIG:class-nativesdk = "ipv6 openssl proxy random threaded-resolver verbose zlib"
32
33# 'ares' and 'threaded-resolver' are mutually exclusive
34PACKAGECONFIG[ares] = "--enable-ares,--disable-ares,c-ares,,,threaded-resolver"
35PACKAGECONFIG[aws] = "--enable-aws,--disable-aws"
36PACKAGECONFIG[basic-auth] = "--enable-basic-auth,--disable-basic-auth"
37PACKAGECONFIG[bearer-auth] = "--enable-bearer-auth,--disable-bearer-auth"
38PACKAGECONFIG[brotli] = "--with-brotli,--without-brotli,brotli"
39PACKAGECONFIG[builtinmanual] = "--enable-manual,--disable-manual"
40# Don't use this in production
41PACKAGECONFIG[debug] = "--enable-debug,--disable-debug"
42PACKAGECONFIG[dict] = "--enable-dict,--disable-dict,"
43PACKAGECONFIG[digest-auth] = "--enable-digest-auth,--disable-digest-auth"
44PACKAGECONFIG[gnutls] = "--with-gnutls,--without-gnutls,gnutls"
45PACKAGECONFIG[gopher] = "--enable-gopher,--disable-gopher,"
46PACKAGECONFIG[imap] = "--enable-imap,--disable-imap,"
47PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6,"
48PACKAGECONFIG[kerberos-auth] = "--enable-kerberos-auth,--disable-kerberos-auth"
49PACKAGECONFIG[krb5] = "--with-gssapi,--without-gssapi,krb5"
50PACKAGECONFIG[ldap] = "--enable-ldap,--disable-ldap,openldap"
51PACKAGECONFIG[ldaps] = "--enable-ldaps,--disable-ldaps,openldap"
52PACKAGECONFIG[libgsasl] = "--with-libgsasl,--without-libgsasl,libgsasl"
53PACKAGECONFIG[libidn] = "--with-libidn2,--without-libidn2,libidn2"
54PACKAGECONFIG[libssh2] = "--with-libssh2,--without-libssh2,libssh2"
55PACKAGECONFIG[mbedtls] = "--with-mbedtls=${STAGING_DIR_TARGET},--without-mbedtls,mbedtls"
56PACKAGECONFIG[mqtt] = "--enable-mqtt,--disable-mqtt,"
57PACKAGECONFIG[negotiate-auth] = "--enable-negotiate-auth,--disable-negotiate-auth"
58PACKAGECONFIG[nghttp2] = "--with-nghttp2,--without-nghttp2,nghttp2"
59PACKAGECONFIG[openssl] = "--with-openssl,--without-openssl,openssl"
60PACKAGECONFIG[pop3] = "--enable-pop3,--disable-pop3,"
61PACKAGECONFIG[proxy] = "--enable-proxy,--disable-proxy,"
62PACKAGECONFIG[random] = "--with-random=${RANDOM},--without-random"
63PACKAGECONFIG[rtmpdump] = "--with-librtmp,--without-librtmp,rtmpdump"
64PACKAGECONFIG[rtsp] = "--enable-rtsp,--disable-rtsp,"
65PACKAGECONFIG[smb] = "--enable-smb,--disable-smb,"
66PACKAGECONFIG[smtp] = "--enable-smtp,--disable-smtp,"
67PACKAGECONFIG[telnet] = "--enable-telnet,--disable-telnet,"
68PACKAGECONFIG[tftp] = "--enable-tftp,--disable-tftp,"
69PACKAGECONFIG[threaded-resolver] = "--enable-threaded-resolver,--disable-threaded-resolver,,,,ares"
70PACKAGECONFIG[verbose] = "--enable-verbose,--disable-verbose"
71PACKAGECONFIG[zlib] = "--with-zlib=${STAGING_LIBDIR}/../,--without-zlib,zlib"
72PACKAGECONFIG[zstd] = "--with-zstd,--without-zstd,zstd"
73
74EXTRA_OECONF = " \
75 --disable-libcurl-option \
76 --disable-ntlm-wb \
77 --with-ca-bundle=${sysconfdir}/ssl/certs/ca-certificates.crt \
78 --without-libpsl \
79 --enable-optimize \
80 ${@'--without-ssl' if (bb.utils.filter('PACKAGECONFIG', 'gnutls mbedtls openssl', d) == '') else ''} \
81"
82
83fix_absolute_paths () {
84 # cleanup buildpaths from curl-config
85 sed -i \
86 -e 's,--sysroot=${STAGING_DIR_TARGET},,g' \
87 -e 's,--with-libtool-sysroot=${STAGING_DIR_TARGET},,g' \
88 -e 's|${DEBUG_PREFIX_MAP}||g' \
89 -e 's|${@" ".join(d.getVar("DEBUG_PREFIX_MAP").split())}||g' \
90 ${D}${bindir}/curl-config
91}
92
93do_install:append:class-target() {
94 fix_absolute_paths
95}
96
97do_install:append:class-nativesdk() {
98 fix_absolute_paths
99}
100
101do_compile_ptest() {
102 oe_runmake -C ${B}/tests
103}
104
105do_install_ptest() {
106 cat ${WORKDIR}/disable-tests >> ${S}/tests/data/DISABLED
107 rm -f ${B}/tests/configurehelp.pm
108 cp -rf ${B}/tests ${D}${PTEST_PATH}
109 rm -f ${D}${PTEST_PATH}/tests/libtest/.libs/libhostname.la
110 rm -f ${D}${PTEST_PATH}/tests/libtest/libhostname.la
111 mv ${D}${PTEST_PATH}/tests/libtest/.libs/* ${D}${PTEST_PATH}/tests/libtest/
112 mv ${D}${PTEST_PATH}/tests/libtest/libhostname.so ${D}${PTEST_PATH}/tests/libtest/.libs/
113 mv ${D}${PTEST_PATH}/tests/http/clients/.libs/* ${D}${PTEST_PATH}/tests/http/clients/
114 cp -rf ${S}/tests ${D}${PTEST_PATH}
115 find ${D}${PTEST_PATH}/ -type f -name Makefile.am -o -name Makefile.in -o -name Makefile -delete
116 install -d ${D}${PTEST_PATH}/src
117 ln -sf ${bindir}/curl ${D}${PTEST_PATH}/src/curl
118 cp -rf ${D}${bindir}/curl-config ${D}${PTEST_PATH}
119}
120
121RDEPENDS:${PN}-ptest += " \
122 bash \
123 perl-module-b \
124 perl-module-base \
125 perl-module-cwd \
126 perl-module-digest \
127 perl-module-digest-md5 \
128 perl-module-file-basename \
129 perl-module-file-spec \
130 perl-module-file-temp \
131 perl-module-io-socket \
132 perl-module-ipc-open2 \
133 perl-module-list-util \
134 perl-module-memoize \
135 perl-module-storable \
136 perl-module-time-hires \
137"
138RDEPENDS:${PN}-ptest:append:libc-glibc = " locale-base-en-us"
139
140PACKAGES =+ "lib${BPN}"
141
142FILES:lib${BPN} = "${libdir}/lib*.so.*"
143RRECOMMENDS:lib${BPN} += "ca-certificates"
144
145FILES:${PN} += "${datadir}/zsh"
146
147inherit multilib_script
148MULTILIB_SCRIPTS = "${PN}-dev:${bindir}/curl-config"
149
150BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-support/db/db/0001-Fix-libc-compatibility-by-renaming-atomic_init-API.patch b/meta/recipes-support/db/db/0001-Fix-libc-compatibility-by-renaming-atomic_init-API.patch
index a4ff2ecb0c..c82e7c375f 100644
--- a/meta/recipes-support/db/db/0001-Fix-libc-compatibility-by-renaming-atomic_init-API.patch
+++ b/meta/recipes-support/db/db/0001-Fix-libc-compatibility-by-renaming-atomic_init-API.patch
@@ -7,7 +7,7 @@ db5 does not build because it is redefining a C++11 standard
7library identifier, atomic_init(). Therefore prefix all 7library identifier, atomic_init(). Therefore prefix all
8its internal defines with '__db_', to avoid collisions. 8its internal defines with '__db_', to avoid collisions.
9 9
10Upstream-Status: Pending 10Upstream-Status: Inappropriate [as far as open source community is concerned, upstream is dead]
11 11
12Signed-off-by: Khem Raj <raj.khem@gmail.com> 12Signed-off-by: Khem Raj <raj.khem@gmail.com>
13--- 13---
diff --git a/meta/recipes-support/db/db/0001-atomic-Rename-local-__atomic_compare_exchange-to-avo.patch b/meta/recipes-support/db/db/0001-atomic-Rename-local-__atomic_compare_exchange-to-avo.patch
index 571708e03e..2374885e77 100644
--- a/meta/recipes-support/db/db/0001-atomic-Rename-local-__atomic_compare_exchange-to-avo.patch
+++ b/meta/recipes-support/db/db/0001-atomic-Rename-local-__atomic_compare_exchange-to-avo.patch
@@ -11,7 +11,7 @@ Fixes
11../db-5.3.28/src/dbinc/atomic.h:179:19: error: definition of builtin function '__atomic_compare_exchange' 11../db-5.3.28/src/dbinc/atomic.h:179:19: error: definition of builtin function '__atomic_compare_exchange'
12static inline int __atomic_compare_exchange( 12static inline int __atomic_compare_exchange(
13 13
14Upstream-Status: Pending 14Upstream-Status: Inappropriate [as far as open source community is concerned, upstream is dead]
15 15
16Signed-off-by: Khem Raj <raj.khem@gmail.com> 16Signed-off-by: Khem Raj <raj.khem@gmail.com>
17--- 17---
diff --git a/meta/recipes-support/db/db/0001-clock-Do-not-define-own-timespec.patch b/meta/recipes-support/db/db/0001-clock-Do-not-define-own-timespec.patch
index 9d51a44a26..d238b0f063 100644
--- a/meta/recipes-support/db/db/0001-clock-Do-not-define-own-timespec.patch
+++ b/meta/recipes-support/db/db/0001-clock-Do-not-define-own-timespec.patch
@@ -10,7 +10,7 @@ its 12-bytes here and libc has 16-bytes
10 10
11This can cause problems especially with 64bit time_t 11This can cause problems especially with 64bit time_t
12 12
13Upstream-Status: Pending 13Upstream-Status: Inappropriate [as far as open source community is concerned, upstream is dead]
14Signed-off-by: Khem Raj <raj.khem@gmail.com> 14Signed-off-by: Khem Raj <raj.khem@gmail.com>
15--- 15---
16 src/dbinc/clock.h | 17 +---------------- 16 src/dbinc/clock.h | 17 +----------------
diff --git a/meta/recipes-support/db/db/0001-configure-Add-explicit-tag-options-to-libtool-invoca.patch b/meta/recipes-support/db/db/0001-configure-Add-explicit-tag-options-to-libtool-invoca.patch
index cb28db1343..a574cf67b9 100644
--- a/meta/recipes-support/db/db/0001-configure-Add-explicit-tag-options-to-libtool-invoca.patch
+++ b/meta/recipes-support/db/db/0001-configure-Add-explicit-tag-options-to-libtool-invoca.patch
@@ -7,7 +7,7 @@ This helps cross compile when tag inference via heuristics
7fail because CC variable is having -fPIE -pie and libtool 7fail because CC variable is having -fPIE -pie and libtool
8smartly removes it when building libraries 8smartly removes it when building libraries
9 9
10Upstream-Status: Pending 10Upstream-Status: Inappropriate [as far as open source community is concerned, upstream is dead]
11 11
12Signed-off-by: Khem Raj <raj.khem@gmail.com> 12Signed-off-by: Khem Raj <raj.khem@gmail.com>
13--- 13---
diff --git a/meta/recipes-support/db/db/fix-parallel-build.patch b/meta/recipes-support/db/db/fix-parallel-build.patch
index 27632e1ddb..42c2407cf2 100644
--- a/meta/recipes-support/db/db/fix-parallel-build.patch
+++ b/meta/recipes-support/db/db/fix-parallel-build.patch
@@ -2,7 +2,7 @@ With higher paralelism it sometimes fails with:
2libtool: link: `util_log.lo' is not a valid libtool object 2libtool: link: `util_log.lo' is not a valid libtool object
3make: *** [db_replicate] Error 1 3make: *** [db_replicate] Error 1
4 4
5Upstream-Status: Pending 5Upstream-Status: Inappropriate [as far as open source community is concerned, upstream is dead]
6 6
7Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> 7Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
8 8
diff --git a/meta/recipes-support/db/db/sequence-type.patch b/meta/recipes-support/db/db/sequence-type.patch
index a6fe3d62a0..fc9f7f0113 100644
--- a/meta/recipes-support/db/db/sequence-type.patch
+++ b/meta/recipes-support/db/db/sequence-type.patch
@@ -6,7 +6,7 @@ in stdint.h.
6This then breaks the overly complicated type check but as we know that int64_t 6This then breaks the overly complicated type check but as we know that int64_t
7exists and works, we can just delete that. 7exists and works, we can just delete that.
8 8
9Upstream-Status: Pending 9Upstream-Status: Inappropriate [as far as open source community is concerned, upstream is dead]
10Signed-off-by: Ross Burton <ross.burton@intel.com> 10Signed-off-by: Ross Burton <ross.burton@intel.com>
11 11
12--- a/dist/aclocal/sequence.m4~ 2013-09-09 16:35:02.000000000 +0100 12--- a/dist/aclocal/sequence.m4~ 2013-09-09 16:35:02.000000000 +0100
diff --git a/meta/recipes-support/db/db_5.3.28.bb b/meta/recipes-support/db/db_5.3.28.bb
index 318efcb61d..a99d5cea62 100644
--- a/meta/recipes-support/db/db_5.3.28.bb
+++ b/meta/recipes-support/db/db_5.3.28.bb
@@ -10,14 +10,14 @@
10# same system at the same time if really necessary. 10# same system at the same time if really necessary.
11SECTION = "libs" 11SECTION = "libs"
12SUMMARY = "Berkeley Database v5" 12SUMMARY = "Berkeley Database v5"
13DESCRIPTION = "Provides the foundational storage services for your application, no matter how demanding and unique your requirements may seem to be"
13HOMEPAGE = "https://www.oracle.com/database/technologies/related/berkeleydb.html" 14HOMEPAGE = "https://www.oracle.com/database/technologies/related/berkeleydb.html"
14LICENSE = "Sleepycat" 15LICENSE = "Sleepycat"
15RCONFLICTS_${PN} = "db3" 16RCONFLICTS:${PN} = "db3"
16 17
17CVE_PRODUCT = "oracle_berkeley_db" 18CVE_PRODUCT = "oracle_berkeley_db berkeley_db"
18CVE_VERSION = "11.2.${PV}" 19CVE_VERSION = "11.2.${PV}"
19 20
20PR = "r1"
21PE = "1" 21PE = "1"
22 22
23SRC_URI = "https://download.oracle.com/berkeley-db/db-${PV}.tar.gz" 23SRC_URI = "https://download.oracle.com/berkeley-db/db-${PV}.tar.gz"
@@ -46,7 +46,7 @@ inherit autotools
46inherit lib_package 46inherit lib_package
47 47
48PACKAGES =+ "${PN}-cxx" 48PACKAGES =+ "${PN}-cxx"
49FILES_${PN}-cxx = "${libdir}/*cxx*so" 49FILES:${PN}-cxx = "${libdir}/*cxx*so"
50 50
51# The dev package has the .so link (as in db3) and the .a's - 51# The dev package has the .so link (as in db3) and the .a's -
52# it is therefore incompatible (cannot be installed at the 52# it is therefore incompatible (cannot be installed at the
@@ -65,8 +65,6 @@ PACKAGECONFIG ??= ""
65PACKAGECONFIG[verify] = "--enable-verify, --disable-verify" 65PACKAGECONFIG[verify] = "--enable-verify, --disable-verify"
66PACKAGECONFIG[dbm] = "--enable-dbm,--disable-dbm," 66PACKAGECONFIG[dbm] = "--enable-dbm,--disable-dbm,"
67 67
68EXTRA_OEMAKE += "LIBTOOL='./${HOST_SYS}-libtool'"
69
70EXTRA_AUTORECONF += "--exclude=autoheader -I ${S}/dist/aclocal -I${S}/dist/aclocal_java" 68EXTRA_AUTORECONF += "--exclude=autoheader -I ${S}/dist/aclocal -I${S}/dist/aclocal_java"
71AUTOTOOLS_SCRIPT_PATH = "${S}/dist" 69AUTOTOOLS_SCRIPT_PATH = "${S}/dist"
72 70
@@ -74,7 +72,7 @@ AUTOTOOLS_SCRIPT_PATH = "${S}/dist"
74# configure. 72# configure.
75CONFIG_SITE = "" 73CONFIG_SITE = ""
76 74
77oe_runconf_prepend() { 75oe_runconf:prepend() {
78 . ${S}/dist/RELEASE 76 . ${S}/dist/RELEASE
79 # Edit version information we couldn't pre-compute. 77 # Edit version information we couldn't pre-compute.
80 sed -i -e "s/__EDIT_DB_VERSION_FAMILY__/$DB_VERSION_FAMILY/g" \ 78 sed -i -e "s/__EDIT_DB_VERSION_FAMILY__/$DB_VERSION_FAMILY/g" \
@@ -88,12 +86,12 @@ oe_runconf_prepend() {
88 -e "s/__EDIT_DB_VERSION__/$DB_VERSION/g" ${S}/dist/configure 86 -e "s/__EDIT_DB_VERSION__/$DB_VERSION/g" ${S}/dist/configure
89} 87}
90 88
91do_compile_prepend() { 89do_compile:prepend() {
92 # Stop libtool adding RPATHs 90 # Stop libtool adding RPATHs
93 sed -i -e 's|hardcode_into_libs=yes|hardcode_into_libs=no|' ${B}/${HOST_SYS}-libtool 91 sed -i -e 's|hardcode_into_libs=yes|hardcode_into_libs=no|' ${B}/libtool
94} 92}
95 93
96do_install_append() { 94do_install:append() {
97 mkdir -p ${D}/${includedir}/db51 95 mkdir -p ${D}/${includedir}/db51
98 mv ${D}/${includedir}/db.h ${D}/${includedir}/db51/. 96 mv ${D}/${includedir}/db.h ${D}/${includedir}/db51/.
99 mv ${D}/${includedir}/db_cxx.h ${D}/${includedir}/db51/. 97 mv ${D}/${includedir}/db_cxx.h ${D}/${includedir}/db51/.
@@ -114,7 +112,7 @@ do_install_append() {
114 fi 112 fi
115} 113}
116 114
117INSANE_SKIP_${PN} = "dev-so" 115INSANE_SKIP:${PN} = "dev-so"
118INSANE_SKIP_${PN}-cxx = "dev-so" 116INSANE_SKIP:${PN}-cxx = "dev-so"
119 117
120BBCLASSEXTEND = "native nativesdk" 118BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-support/debianutils/debianutils_4.11.2.bb b/meta/recipes-support/debianutils/debianutils_4.11.2.bb
deleted file mode 100644
index 0eeb2954f7..0000000000
--- a/meta/recipes-support/debianutils/debianutils_4.11.2.bb
+++ /dev/null
@@ -1,55 +0,0 @@
1SUMMARY = "Miscellaneous utilities specific to Debian"
2SECTION = "base"
3LICENSE = "GPLv2 & SMAIL_GPL"
4LIC_FILES_CHKSUM = "file://debian/copyright;md5=9b912cd0cc654134c0ef3424a0705b94"
5
6SRC_URI = "http://snapshot.debian.org/archive/debian/20200929T025235Z/pool/main/d/${BPN}/${BPN}_${PV}.tar.xz"
7# the package is taken from snapshots.debian.org; that source is static and goes stale
8# so we check the latest upstream from a directory that does get updated
9UPSTREAM_CHECK_URI = "${DEBIAN_MIRROR}/main/d/${BPN}/"
10
11SRC_URI[sha256sum] = "3b680e81709b740387335fac8f8806d71611dcf60874e1a792e862e48a1650de"
12
13inherit autotools update-alternatives
14
15S = "${WORKDIR}/debianutils"
16do_configure_prepend() {
17 sed -i -e 's:tempfile.1 which.1:which.1:g' ${S}/Makefile.am
18}
19
20do_install_append() {
21 if [ "${base_bindir}" != "${bindir}" ]; then
22 # Debian places some utils into ${base_bindir} as does busybox
23 install -d ${D}${base_bindir}
24 for app in run-parts tempfile; do
25 mv ${D}${bindir}/$app ${D}${base_bindir}/$app
26 done
27 fi
28}
29
30# Note that we package the update-alternatives name.
31#
32PACKAGES =+ "${PN}-run-parts"
33FILES_${PN}-run-parts = "${base_bindir}/run-parts.debianutils"
34
35RDEPENDS_${PN} += "${PN}-run-parts"
36RDEPENDS_${PN}_class-native = ""
37
38ALTERNATIVE_PRIORITY = "30"
39ALTERNATIVE_${PN} = "add-shell installkernel remove-shell savelog tempfile which"
40
41ALTERNATIVE_PRIORITY_${PN}-run-parts = "60"
42ALTERNATIVE_${PN}-run-parts = "run-parts"
43
44ALTERNATIVE_${PN}-doc = "which.1"
45ALTERNATIVE_LINK_NAME[which.1] = "${mandir}/man1/which.1"
46
47ALTERNATIVE_LINK_NAME[add-shell] = "${sbindir}/add-shell"
48ALTERNATIVE_LINK_NAME[installkernel] = "${sbindir}/installkernel"
49ALTERNATIVE_LINK_NAME[remove-shell] = "${sbindir}/remove-shell"
50ALTERNATIVE_LINK_NAME[run-parts] = "${base_bindir}/run-parts"
51ALTERNATIVE_LINK_NAME[savelog] = "${bindir}/savelog"
52ALTERNATIVE_LINK_NAME[tempfile] = "${base_bindir}/tempfile"
53ALTERNATIVE_LINK_NAME[which] = "${bindir}/which"
54
55BBCLASSEXTEND = "native"
diff --git a/meta/recipes-support/debianutils/debianutils_5.17.bb b/meta/recipes-support/debianutils/debianutils_5.17.bb
new file mode 100644
index 0000000000..c5f25bae40
--- /dev/null
+++ b/meta/recipes-support/debianutils/debianutils_5.17.bb
@@ -0,0 +1,58 @@
1SUMMARY = "Miscellaneous utilities specific to Debian"
2DESCRIPTION = "Provides a number of small utilities which are used \
3primarily by the installation scripts of Debian packages, although \
4you may use them directly. "
5HOMEPAGE = "https://packages.debian.org/sid/debianutils"
6BUGTRACKER = "https://bugs.debian.org/cgi-bin/pkgreport.cgi?pkg=debianutils;dist=unstable"
7SECTION = "base"
8LICENSE = "GPL-2.0-only & SMAIL_GPL"
9LIC_FILES_CHKSUM = "file://debian/copyright;md5=4b667f30411d21bc8fd7db85d502a8e9"
10
11SRC_URI = "git://salsa.debian.org/debian/debianutils.git;protocol=https;branch=master \
12 "
13
14SRCREV = "baf12e98a02883d1b76081e32f2185ee3497570b"
15
16inherit autotools update-alternatives
17
18S = "${WORKDIR}/git"
19
20# Disable po4a (translated manpages) sub-directory, as that requires po4a to build
21do_configure:prepend() {
22 sed -i -e 's:po4a::g' ${S}/Makefile.am
23}
24
25
26do_install:append() {
27 if [ "${base_bindir}" != "${bindir}" ]; then
28 # Debian places some utils into ${base_bindir} as does busybox
29 install -d ${D}${base_bindir}
30 for app in run-parts; do
31 mv ${D}${bindir}/$app ${D}${base_bindir}/$app
32 done
33 fi
34 mv ${D}${bindir}/which.debianutils ${D}${bindir}/which
35}
36
37# Note that we package the update-alternatives name.
38#
39PACKAGES =+ "${PN}-run-parts"
40FILES:${PN}-run-parts = "${base_bindir}/run-parts.debianutils"
41
42RDEPENDS:${PN} += "${PN}-run-parts"
43RDEPENDS:${PN}:class-native = ""
44
45ALTERNATIVE_PRIORITY = "30"
46ALTERNATIVE:${PN} = "add-shell installkernel remove-shell savelog which"
47
48ALTERNATIVE_PRIORITY_${PN}-run-parts = "60"
49ALTERNATIVE:${PN}-run-parts = "run-parts"
50
51ALTERNATIVE_LINK_NAME[add-shell] = "${sbindir}/add-shell"
52ALTERNATIVE_LINK_NAME[installkernel] = "${sbindir}/installkernel"
53ALTERNATIVE_LINK_NAME[remove-shell] = "${sbindir}/remove-shell"
54ALTERNATIVE_LINK_NAME[run-parts] = "${base_bindir}/run-parts"
55ALTERNATIVE_LINK_NAME[savelog] = "${bindir}/savelog"
56ALTERNATIVE_LINK_NAME[which] = "${bindir}/which"
57
58BBCLASSEXTEND = "native"
diff --git a/meta/recipes-support/diffoscope/diffoscope_168.bb b/meta/recipes-support/diffoscope/diffoscope_168.bb
deleted file mode 100644
index 9d112d2ce8..0000000000
--- a/meta/recipes-support/diffoscope/diffoscope_168.bb
+++ /dev/null
@@ -1,24 +0,0 @@
1SUMMARY = "in-depth comparison of files, archives, and directories"
2HOMEPAGE = "https://diffoscope.org/"
3LICENSE = "GPL-3.0+"
4LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
5
6PYPI_PACKAGE = "diffoscope"
7
8inherit pypi setuptools3
9
10SRC_URI[sha256sum] = "c6f1dc3e75b7e2e5ceac4f857fbd2ee0ddb3f0169c2b39ea9187af34208e98de"
11
12RDEPENDS_${PN} += "binutils vim squashfs-tools python3-libarchive-c python3-magic python3-rpm"
13
14# Dependencies don't build for musl
15COMPATIBLE_HOST_libc-musl = 'null'
16
17do_install_append_class-native() {
18 create_wrapper ${D}${bindir}/diffoscope \
19 MAGIC=${STAGING_DIR_NATIVE}${datadir_native}/misc/magic.mgc \
20 RPM_CONFIGDIR=${STAGING_LIBDIR_NATIVE}/rpm \
21 RPM_ETCCONFIGDIR=${STAGING_DIR_NATIVE}
22}
23
24BBCLASSEXTEND = "native"
diff --git a/meta/recipes-support/diffoscope/diffoscope_265.bb b/meta/recipes-support/diffoscope/diffoscope_265.bb
new file mode 100644
index 0000000000..6af5abc974
--- /dev/null
+++ b/meta/recipes-support/diffoscope/diffoscope_265.bb
@@ -0,0 +1,43 @@
1SUMMARY = "in-depth comparison of files, archives, and directories"
2DESCRIPTION = "Tries to get to the bottom of what makes files or directories \
3different. It will recursively unpack archives of many kinds and transform \
4various binary formats into more human-readable form to compare them. \
5It can compare two tarballs, ISO images, or PDF just as easily."
6HOMEPAGE = "https://diffoscope.org/"
7BUGTRACKER = "https://salsa.debian.org/reproducible-builds/diffoscope/-/issues"
8LICENSE = "GPL-3.0-or-later"
9LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
10
11PYPI_PACKAGE = "diffoscope"
12
13inherit pypi setuptools3
14
15SRC_URI[sha256sum] = "7bdcbd7fc5bc4c821bf6ab5ffbbeb265103b04e6908ea4bb12144d7e5ca002ff"
16
17RDEPENDS:${PN} += "\
18 binutils \
19 python3-curses \
20 python3-difflib \
21 python3-fcntl \
22 python3-json \
23 python3-libarchive-c \
24 python3-magic \
25 python3-multiprocessing \
26 python3-pprint \
27 python3-rpm \
28 squashfs-tools \
29 vim \
30 "
31
32# Dependencies don't build for musl
33COMPATIBLE_HOST:libc-musl = 'null'
34
35do_install:append:class-native() {
36 create_wrapper ${D}${bindir}/diffoscope \
37 MAGIC=${STAGING_DIR_NATIVE}${datadir_native}/misc/magic.mgc \
38 RPM_CONFIGDIR=${STAGING_LIBDIR_NATIVE}/rpm \
39 LD_LIBRARY_PATH=${STAGING_LIBDIR_NATIVE} \
40 RPM_ETCCONFIGDIR=${STAGING_DIR_NATIVE}
41}
42
43BBCLASSEXTEND = "native"
diff --git a/meta/recipes-support/dos2unix/dos2unix_7.4.2.bb b/meta/recipes-support/dos2unix/dos2unix_7.5.2.bb
index 9005bdea59..06338dd62f 100644
--- a/meta/recipes-support/dos2unix/dos2unix_7.4.2.bb
+++ b/meta/recipes-support/dos2unix/dos2unix_7.5.2.bb
@@ -6,12 +6,12 @@ HOMEPAGE = "http://waterlan.home.xs4all.nl/dos2unix.html"
6SECTION = "support" 6SECTION = "support"
7 7
8LICENSE = "BSD-2-Clause" 8LICENSE = "BSD-2-Clause"
9LIC_FILES_CHKSUM = "file://COPYING.txt;md5=8a7c3499a1142df819e727253cd53a12" 9LIC_FILES_CHKSUM = "file://COPYING.txt;md5=49ec74e0139712398b9ddb06d824929a"
10 10
11SRC_URI = "git://git.code.sf.net/p/dos2unix/dos2unix" 11SRC_URI = "git://git.code.sf.net/p/dos2unix/dos2unix;branch=master;protocol=https"
12UPSTREAM_CHECK_GITTAGREGEX = "dos2unix-(?P<pver>(\d+(\.\d+)+))" 12UPSTREAM_CHECK_GITTAGREGEX = "dos2unix-(?P<pver>(\d+(\.\d+)+))"
13 13
14SRCREV = "72596f0ae21faa25a07a872d4843bc885475115d" 14SRCREV = "c16a0b31a64c7eb6b2d76960e5144732b57f2993"
15 15
16S = "${WORKDIR}/git/dos2unix" 16S = "${WORKDIR}/git/dos2unix"
17 17
@@ -25,7 +25,7 @@ PACKAGECONFIG ??= ""
25PACKAGECONFIG[nls] = "ENABLE_NLS=1,ENABLE_NLS=,po4a-native" 25PACKAGECONFIG[nls] = "ENABLE_NLS=1,ENABLE_NLS=,po4a-native"
26 26
27EXTRA_OEMAKE = "${PACKAGECONFIG_CONFARGS} LDFLAGS_USER='${LDFLAGS}'" 27EXTRA_OEMAKE = "${PACKAGECONFIG_CONFARGS} LDFLAGS_USER='${LDFLAGS}'"
28EXTRA_OEMAKE_class-native = "ENABLE_NLS=" 28EXTRA_OEMAKE:class-native = "ENABLE_NLS="
29 29
30do_install () { 30do_install () {
31 oe_runmake DESTDIR="${D}${base_prefix}" install 31 oe_runmake DESTDIR="${D}${base_prefix}" install
diff --git a/meta/recipes-support/enchant/enchant2_2.2.15.bb b/meta/recipes-support/enchant/enchant2_2.2.15.bb
deleted file mode 100644
index 05e84fc726..0000000000
--- a/meta/recipes-support/enchant/enchant2_2.2.15.bb
+++ /dev/null
@@ -1,28 +0,0 @@
1SUMMARY = "Enchant Spell checker API Library"
2SECTION = "libs"
3HOMEPAGE = "https://abiword.github.io/enchant/"
4LICENSE = "LGPLv2.1+"
5LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=4fbd65380cdd255951079008b364516c"
6
7DEPENDS = "glib-2.0"
8
9inherit autotools pkgconfig
10
11SRC_URI = "https://github.com/AbiWord/enchant/releases/download/v${PV}/enchant-${PV}.tar.gz"
12SRC_URI[sha256sum] = "3b0f2215578115f28e2a6aa549b35128600394304bd79d6f28b0d3b3d6f46c03"
13
14UPSTREAM_CHECK_URI = "https://github.com/AbiWord/enchant/releases"
15
16S = "${WORKDIR}/enchant-${PV}"
17
18EXTRA_OEMAKE = "pkgdatadir=${datadir}/enchant-2"
19
20PACKAGECONFIG ??= "aspell"
21PACKAGECONFIG[aspell] = "--with-aspell,--without-aspell,aspell,aspell"
22PACKAGECONFIG[hunspell] = "--with-hunspell,--without-hunspell,hunspell,hunspell"
23
24FILES_${PN} += " \
25 ${datadir}/enchant-2 \
26 ${libdir}/enchant-2 \
27"
28FILES_${PN}-staticdev += "${libdir}/enchant-2/*.a"
diff --git a/meta/recipes-support/enchant/enchant2_2.6.9.bb b/meta/recipes-support/enchant/enchant2_2.6.9.bb
new file mode 100644
index 0000000000..aaf3525ad8
--- /dev/null
+++ b/meta/recipes-support/enchant/enchant2_2.6.9.bb
@@ -0,0 +1,29 @@
1SUMMARY = "Enchant Spell checker API Library"
2DESCRIPTION = "A library (and command-line program) that wraps a number of \
3different spelling libraries and programs with a consistent interface."
4SECTION = "libs"
5HOMEPAGE = "https://abiword.github.io/enchant/"
6BUGTRACKER = "https://github.com/AbiWord/enchant/issues/"
7LICENSE = "LGPL-2.1-or-later"
8LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=4fbd65380cdd255951079008b364516c"
9
10DEPENDS = "glib-2.0 groff-native"
11
12inherit autotools pkgconfig github-releases
13
14SRC_URI = "${GITHUB_BASE_URI}/download/v${PV}/enchant-${PV}.tar.gz"
15SRC_URI[sha256sum] = "d9a5a10dc9b38a43b3a0fa22c76ed6ebb7e09eb535aff62954afcdbd40efff6b"
16
17GITHUB_BASE_URI = "https://github.com/AbiWord/enchant/releases"
18
19S = "${WORKDIR}/enchant-${PV}"
20
21PACKAGECONFIG ??= "aspell"
22PACKAGECONFIG[aspell] = "--with-aspell,--without-aspell,aspell,aspell"
23PACKAGECONFIG[hunspell] = "--with-hunspell,--without-hunspell,hunspell,hunspell"
24
25FILES:${PN} += " \
26 ${datadir}/enchant-2 \
27 ${libdir}/enchant-2 \
28"
29FILES:${PN}-staticdev += "${libdir}/enchant-2/*.a"
diff --git a/meta/recipes-support/fribidi/fribidi_1.0.10.bb b/meta/recipes-support/fribidi/fribidi_1.0.10.bb
deleted file mode 100644
index 53d78b4270..0000000000
--- a/meta/recipes-support/fribidi/fribidi_1.0.10.bb
+++ /dev/null
@@ -1,17 +0,0 @@
1SUMMARY = "Free Implementation of the Unicode Bidirectional Algorithm"
2SECTION = "libs"
3LICENSE = "LGPLv2.1+"
4LIC_FILES_CHKSUM = "file://COPYING;md5=a916467b91076e631dd8edb7424769c7"
5
6SRC_URI = "https://github.com/${BPN}/${BPN}/releases/download/v${PV}/${BP}.tar.xz \
7 "
8SRC_URI[md5sum] = "97c87da9930e8e70fbfc8e2bcd031554"
9SRC_URI[sha256sum] = "7f1c687c7831499bcacae5e8675945a39bacbad16ecaa945e9454a32df653c01"
10
11UPSTREAM_CHECK_URI = "https://github.com/${BPN}/${BPN}/releases"
12
13inherit meson lib_package pkgconfig
14
15CVE_PRODUCT = "gnu_fribidi fribidi"
16
17BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-support/fribidi/fribidi_1.0.13.bb b/meta/recipes-support/fribidi/fribidi_1.0.13.bb
new file mode 100644
index 0000000000..5d0476a375
--- /dev/null
+++ b/meta/recipes-support/fribidi/fribidi_1.0.13.bb
@@ -0,0 +1,20 @@
1SUMMARY = "Free Implementation of the Unicode Bidirectional Algorithm"
2DESCRIPTION = "It provides utility functions to aid in the development \
3of interactive editors and widgets that implement BiDi functionality. \
4The BiDi algorithm is a prerequisite for supporting right-to-left scripts such \
5as Hebrew, Arabic, Syriac, and Thaana. "
6SECTION = "libs"
7HOMEPAGE = "http://fribidi.org/"
8BUGTRACKER = "https://github.com/fribidi/fribidi/issues"
9LICENSE = "LGPL-2.1-or-later"
10LIC_FILES_CHKSUM = "file://COPYING;md5=a916467b91076e631dd8edb7424769c7"
11
12SRC_URI = "${GITHUB_BASE_URI}/download/v${PV}/${BP}.tar.xz \
13 "
14SRC_URI[sha256sum] = "7fa16c80c81bd622f7b198d31356da139cc318a63fc7761217af4130903f54a2"
15
16inherit meson lib_package pkgconfig github-releases
17
18CVE_PRODUCT = "gnu_fribidi fribidi"
19
20BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-support/gdbm/files/ptest.patch b/meta/recipes-support/gdbm/files/ptest.patch
index 1e67dbd554..25fb6bb2f4 100644
--- a/meta/recipes-support/gdbm/files/ptest.patch
+++ b/meta/recipes-support/gdbm/files/ptest.patch
@@ -1,4 +1,4 @@
1From 41448708e163c8ec1f980464e7dd6741db427c8a Mon Sep 17 00:00:00 2001 1From 8bea84a598b51a7ac7e50aa8f0f20857a9b6b07b Mon Sep 17 00:00:00 2001
2From: Josep Puigdemont <josep.puigdemont@enea.com> 2From: Josep Puigdemont <josep.puigdemont@enea.com>
3Date: Sun, 4 May 2014 16:02:07 +0200 3Date: Sun, 4 May 2014 16:02:07 +0200
4Subject: [PATCH] Add install-ptest rules. 4Subject: [PATCH] Add install-ptest rules.
@@ -9,16 +9,16 @@ Upstream-Status: Pending
9 9
10--- 10---
11 Makefile.am | 5 +++++ 11 Makefile.am | 5 +++++
12 tests/Makefile.am | 11 +++++++++++ 12 tests/Makefile.am | 12 ++++++++++++
13 2 files changed, 16 insertions(+) 13 2 files changed, 17 insertions(+)
14 14
15diff --git a/Makefile.am b/Makefile.am 15diff --git a/Makefile.am b/Makefile.am
16index ecc03df..9fbbda5 100644 16index 59e2643..5f3ceb0 100644
17--- a/Makefile.am 17--- a/Makefile.am
18+++ b/Makefile.am 18+++ b/Makefile.am
19@@ -55,3 +55,8 @@ ChangeLog: 19@@ -64,3 +64,8 @@ ChangeLog:
20 awk -f $(top_srcdir)/git2chg.awk \ 20 mv ChangeLog.tmp ChangeLog; \
21 -v append=$(top_srcdir)/$(prev_change_log) > ChangeLog; \ 21 rm -f ChangeLog.tmp; \
22 fi 22 fi
23+ 23+
24+install-ptest: 24+install-ptest:
@@ -26,13 +26,14 @@ index ecc03df..9fbbda5 100644
26+ $(MAKE) -C $$subdir DESTDIR=$(DESTDIR)/$$subdir $@; \ 26+ $(MAKE) -C $$subdir DESTDIR=$(DESTDIR)/$$subdir $@; \
27+ done 27+ done
28diff --git a/tests/Makefile.am b/tests/Makefile.am 28diff --git a/tests/Makefile.am b/tests/Makefile.am
29index dbe17dd..06f537f 100644 29index fac6826..5dc2091 100644
30--- a/tests/Makefile.am 30--- a/tests/Makefile.am
31+++ b/tests/Makefile.am 31+++ b/tests/Makefile.am
32@@ -169,3 +169,14 @@ EXTRA_DIST += \ 32@@ -143,3 +143,15 @@ d_creat_ce_LDADD = ../src/libgdbm.la ../compat/libgdbm_compat.la
33 gdbmtool/base.exp\ 33 t_wordwrap_LDADD = ../tools/libgdbmapp.a
34 config/default.exp
35 34
35 SUBDIRS = gdbmtool
36+
36+buildtests: $(check_PROGRAMS) $(TESTSUITE) 37+buildtests: $(check_PROGRAMS) $(TESTSUITE)
37+ 38+
38+install-ptest: $(check_PROGRAMS) $(TESTSUITE) 39+install-ptest: $(check_PROGRAMS) $(TESTSUITE)
@@ -44,3 +45,6 @@ index dbe17dd..06f537f 100644
44+ $(INSTALL_PROGRAM) $$file $(DESTDIR) ; \ 45+ $(INSTALL_PROGRAM) $$file $(DESTDIR) ; \
45+ fi \ 46+ fi \
46+ done 47+ done
48--
492.25.1
50
diff --git a/meta/recipes-support/gdbm/files/run-ptest b/meta/recipes-support/gdbm/files/run-ptest
index 615da8444b..8d6481185d 100755
--- a/meta/recipes-support/gdbm/files/run-ptest
+++ b/meta/recipes-support/gdbm/files/run-ptest
@@ -4,4 +4,4 @@
4 4
5cd tests 5cd tests
6 6
7./testsuite AUTOTEST_PATH=$PWD abs_builddir=$PWD COMPAT=1 | sed 's/^[^0-9]*\([0-9]\+\): \(.*\)\(ok\|pass\|skipped\|fail\|FAILED\)\(.*\)$/\3: \2 \4/;s/ \+/ /g;s/^ok/PASS/;s/^skipped/SKIP/;s/^fail/FAIL/;s/^FAILED/FAIL/' 7./testsuite --am-fmt AUTOTEST_PATH=$PWD abs_builddir=$PWD COMPAT=1
diff --git a/meta/recipes-support/gdbm/gdbm_1.19.bb b/meta/recipes-support/gdbm/gdbm_1.23.bb
index 1f390a4aa2..a08079741d 100644
--- a/meta/recipes-support/gdbm/gdbm_1.19.bb
+++ b/meta/recipes-support/gdbm/gdbm_1.23.bb
@@ -1,7 +1,10 @@
1SUMMARY = "Key/value database library with extensible hashing" 1SUMMARY = "Key/value database library with extensible hashing"
2DESCRIPTION = "Library of database functions that use extensible hashing \
3and work similar to the standard UNIX dbm. These routines are provided \
4to a programmer needing to create and manipulate a hashed database."
2HOMEPAGE = "http://www.gnu.org/software/gdbm/" 5HOMEPAGE = "http://www.gnu.org/software/gdbm/"
3SECTION = "libs" 6SECTION = "libs"
4LICENSE = "GPLv3" 7LICENSE = "GPL-3.0-only"
5LIC_FILES_CHKSUM = "file://COPYING;md5=241da1b9fe42e642cbb2c24d5e0c4d24" 8LIC_FILES_CHKSUM = "file://COPYING;md5=241da1b9fe42e642cbb2c24d5e0c4d24"
6 9
7 10
@@ -10,8 +13,7 @@ SRC_URI = "${GNU_MIRROR}/gdbm/gdbm-${PV}.tar.gz \
10 file://ptest.patch \ 13 file://ptest.patch \
11 " 14 "
12 15
13SRC_URI[md5sum] = "aeb29c6a90350a4c959cd1df38cd0a7e" 16SRC_URI[sha256sum] = "74b1081d21fff13ae4bd7c16e5d6e504a4c26f7cde1dca0d963a484174bbcacd"
14SRC_URI[sha256sum] = "37ed12214122b972e18a0d94995039e57748191939ef74115b1d41d8811364bc"
15 17
16inherit autotools gettext texinfo lib_package ptest 18inherit autotools gettext texinfo lib_package ptest
17 19
@@ -23,7 +25,7 @@ CACHED_CONFIGUREVARS += "ac_cv_lib_ndbm_main=no ac_cv_lib_dbm_main=no"
23 25
24BBCLASSEXTEND = "native nativesdk" 26BBCLASSEXTEND = "native nativesdk"
25 27
26do_install_append () { 28do_install:append () {
27 # Create a symlink to ndbm.h and gdbm.h in include/gdbm to let other packages to find 29 # Create a symlink to ndbm.h and gdbm.h in include/gdbm to let other packages to find
28 # these headers 30 # these headers
29 install -d ${D}${includedir}/gdbm 31 install -d ${D}${includedir}/gdbm
@@ -31,7 +33,7 @@ do_install_append () {
31 ln -sf ../gdbm.h ${D}/${includedir}/gdbm/gdbm.h 33 ln -sf ../gdbm.h ${D}/${includedir}/gdbm/gdbm.h
32} 34}
33 35
34RDEPENDS_${PN}-ptest += "diffutils ${PN}-bin" 36RDEPENDS:${PN}-ptest += "diffutils ${PN}-bin"
35 37
36do_compile_ptest() { 38do_compile_ptest() {
37 oe_runmake -C tests buildtests 39 oe_runmake -C tests buildtests
@@ -39,5 +41,5 @@ do_compile_ptest() {
39 41
40PACKAGES =+ "${PN}-compat \ 42PACKAGES =+ "${PN}-compat \
41 " 43 "
42FILES_${PN}-compat = "${libdir}/libgdbm_compat${SOLIBS} \ 44FILES:${PN}-compat = "${libdir}/libgdbm_compat${SOLIBS} \
43 " 45 "
diff --git a/meta/recipes-support/gmp/gmp.inc b/meta/recipes-support/gmp/gmp.inc
index 948b89288e..1872226616 100644
--- a/meta/recipes-support/gmp/gmp.inc
+++ b/meta/recipes-support/gmp/gmp.inc
@@ -8,5 +8,5 @@ inherit autotools texinfo multilib_header
8PACKAGECONFIG ??= "" 8PACKAGECONFIG ??= ""
9PACKAGECONFIG[readline] = "--with-readline=yes,--with-readline=no,readline" 9PACKAGECONFIG[readline] = "--with-readline=yes,--with-readline=no,readline"
10 10
11ARM_INSTRUCTION_SET_armv4 = "arm" 11ARM_INSTRUCTION_SET:armv4 = "arm"
12ARM_INSTRUCTION_SET_armv5 = "arm" 12ARM_INSTRUCTION_SET:armv5 = "arm"
diff --git a/meta/recipes-support/gmp/gmp/0001-confiure.ac-Believe-the-cflags-from-environment.patch b/meta/recipes-support/gmp/gmp/0001-confiure.ac-Believe-the-cflags-from-environment.patch
index 56564db505..b26f4db98e 100644
--- a/meta/recipes-support/gmp/gmp/0001-confiure.ac-Believe-the-cflags-from-environment.patch
+++ b/meta/recipes-support/gmp/gmp/0001-confiure.ac-Believe-the-cflags-from-environment.patch
@@ -12,8 +12,8 @@ Secondly, dont set armv4 for march when no selection
12is made, since it is passed from cmdline 12is made, since it is passed from cmdline
13 13
14Signed-off-by: Khem Raj <raj.khem@gmail.com> 14Signed-off-by: Khem Raj <raj.khem@gmail.com>
15Upstream-Status: Inappropriate [OE-Specific]
15--- 16---
16Upstream-Status: Inappropriate[OE-Specific]
17 17
18 configure.ac | 11 ----------- 18 configure.ac | 11 -----------
19 1 file changed, 11 deletions(-) 19 1 file changed, 11 deletions(-)
diff --git a/meta/recipes-support/gmp/gmp_6.2.1.bb b/meta/recipes-support/gmp/gmp_6.3.0.bb
index 3c50f928ab..fd4aec92fd 100644
--- a/meta/recipes-support/gmp/gmp_6.2.1.bb
+++ b/meta/recipes-support/gmp/gmp_6.3.0.bb
@@ -1,10 +1,12 @@
1require gmp.inc 1require gmp.inc
2 2
3LICENSE = "GPLv2+ | LGPLv3+" 3LICENSE = "GPL-2.0-or-later | LGPL-3.0-or-later"
4 4
5LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504 \ 5LIC_FILES_CHKSUM = "\
6 file://COPYING.LESSERv3;md5=6a6a8e020838b23406c81b19c1d46df6 \ 6 file://COPYING;md5=d32239bcb673463ab874e80d47fae504 \
7 file://COPYINGv2;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ 7 file://COPYING.LESSERv3;md5=6a6a8e020838b23406c81b19c1d46df6 \
8 file://COPYINGv2;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
9 file://COPYINGv3;md5=11cc2d3ee574f9d6b7ee797bdce4d423 \
8" 10"
9 11
10REVISION = "" 12REVISION = ""
@@ -13,28 +15,35 @@ SRC_URI = "https://gmplib.org/download/${BPN}/${BP}${REVISION}.tar.bz2 \
13 file://0001-Append-the-user-provided-flags-to-the-auto-detected-.patch \ 15 file://0001-Append-the-user-provided-flags-to-the-auto-detected-.patch \
14 file://0001-confiure.ac-Believe-the-cflags-from-environment.patch \ 16 file://0001-confiure.ac-Believe-the-cflags-from-environment.patch \
15 " 17 "
16SRC_URI[md5sum] = "28971fc21cf028042d4897f02fd355ea" 18SRC_URI[sha256sum] = "ac28211a7cfb609bae2e2c8d6058d66c8fe96434f740cf6fe2e47b000d1c20cb"
17SRC_URI[sha256sum] = "eae9326beb4158c386e39a356818031bd28f3124cf915f8c5b1dc4c7a36b4d7c"
18 19
19acpaths = "" 20acpaths = ""
20 21
21EXTRA_OECONF += " --enable-cxx=detect" 22EXTRA_OECONF += " --enable-cxx=detect"
22EXTRA_OECONF_mipsarchr6_append = " --disable-assembly" 23EXTRA_OECONF:append:mipsarchr6 = " --disable-assembly"
23 24
24PACKAGES =+ "libgmpxx" 25PACKAGES =+ "libgmpxx"
25FILES_libgmpxx = "${libdir}/libgmpxx${SOLIBS}" 26FILES:libgmpxx = "${libdir}/libgmpxx${SOLIBS}"
26 27
27do_install_append() { 28do_install:append() {
28 oe_multilib_header gmp.h 29 oe_multilib_header gmp.h
29} 30}
30 31
31do_install_prepend_class-target() { 32fix_absolute_paths () {
32 sed -i \ 33 sed -i \
33 -e "s|--sysroot=${STAGING_DIR_HOST}||g" \ 34 -e "s|--sysroot=${STAGING_DIR_HOST}||g" \
34 -e "s|${DEBUG_PREFIX_MAP}||g" \ 35 -e "s|${DEBUG_PREFIX_MAP}||g" \
35 ${B}/gmp.h 36 ${B}/gmp.h
36} 37}
37 38
39do_install:prepend:class-target() {
40 fix_absolute_paths
41}
42
43do_install:prepend:class-nativesdk() {
44 fix_absolute_paths
45}
46
38SSTATE_SCAN_FILES += "gmp.h" 47SSTATE_SCAN_FILES += "gmp.h"
39 48
40# Doesn't compile in MIPS16e mode due to use of hand-written 49# Doesn't compile in MIPS16e mode due to use of hand-written
diff --git a/meta/recipes-support/gnome-desktop-testing/gnome-desktop-testing/0001-fix-non-literal-format-string-issue-with-clang.patch b/meta/recipes-support/gnome-desktop-testing/gnome-desktop-testing/0001-fix-non-literal-format-string-issue-with-clang.patch
new file mode 100644
index 0000000000..39efa4a463
--- /dev/null
+++ b/meta/recipes-support/gnome-desktop-testing/gnome-desktop-testing/0001-fix-non-literal-format-string-issue-with-clang.patch
@@ -0,0 +1,31 @@
1From df625a36be8e0c7afa68b3dd23907dc7d658c59a Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Thu, 8 Jul 2021 23:13:30 -0700
4Subject: [PATCH] fix non-literal format string issue with clang
5
6clang errors out when using -Werror=format-nonliteral
7since the definition of g_strdup_vprintf() from glib-2.0
8is using va_list and clang seems to still warn where as
9gcc doesn't do that for va_list arguments
10
11Upstream-Status: Submitted [https://gitlab.gnome.org/GNOME/gnome-desktop-testing/-/merge_requests/9]
12Signed-off-by: Khem Raj <raj.khem@gmail.com>
13---
14 src/gnome-desktop-testing-runner.c | 2 +-
15 1 file changed, 1 insertion(+), 1 deletion(-)
16
17diff --git a/src/gnome-desktop-testing-runner.c b/src/gnome-desktop-testing-runner.c
18index d75b71c..da49e14 100644
19--- a/src/gnome-desktop-testing-runner.c
20+++ b/src/gnome-desktop-testing-runner.c
21@@ -74,7 +74,7 @@ static const char * const test_log_message_ids[] = {
22 static gboolean opt_quiet = FALSE;
23 static gboolean opt_tap = FALSE;
24
25-static void
26+static void G_GNUC_PRINTF (3, 0)
27 test_log (TestLog what,
28 const char *test_name,
29 const char *format,
30--
312.32.0
diff --git a/meta/recipes-support/gnome-desktop-testing/gnome-desktop-testing_2018.1.bb b/meta/recipes-support/gnome-desktop-testing/gnome-desktop-testing_2021.1.bb
index 0defebeb15..1173dd4af3 100644
--- a/meta/recipes-support/gnome-desktop-testing/gnome-desktop-testing_2018.1.bb
+++ b/meta/recipes-support/gnome-desktop-testing/gnome-desktop-testing_2021.1.bb
@@ -1,12 +1,18 @@
1SUMMARY = "Test runner for GNOME-style installed tests" 1SUMMARY = "Test runner for GNOME-style installed tests"
2DESCRIPTION = "Runner provides an execution harness for GNOME installed tests. \
3These tests are useful for verifying the functionality of software as \
4installed and packaged, and complement rather than replace build-time \
5('make check') tests."
2HOMEPAGE = "https://wiki.gnome.org/GnomeGoals/InstalledTests" 6HOMEPAGE = "https://wiki.gnome.org/GnomeGoals/InstalledTests"
3LICENSE = "LGPLv2+" 7LICENSE = "LGPL-2.0-or-later"
4 8
5LIC_FILES_CHKSUM = "file://COPYING;md5=3bf50002aefd002f49e7bb854063f7e7 \ 9LIC_FILES_CHKSUM = "file://COPYING;md5=3bf50002aefd002f49e7bb854063f7e7 \
6 file://src/gnome-desktop-testing-runner.c;beginline=1;endline=20;md5=7ef3ad9da2ffcf7707dc11151fe007f4" 10 file://src/gnome-desktop-testing-runner.c;beginline=1;endline=20;md5=7ef3ad9da2ffcf7707dc11151fe007f4"
7 11
8SRC_URI = "git://gitlab.gnome.org/GNOME/gnome-desktop-testing.git;protocol=http" 12SRC_URI = "git://gitlab.gnome.org/GNOME/gnome-desktop-testing.git;protocol=https;branch=master \
9SRCREV = "4decade67b29ad170fcf3de148e41695fc459f48" 13 file://0001-fix-non-literal-format-string-issue-with-clang.patch \
14 "
15SRCREV = "e346cd4ed2e2102c9b195b614f3c642d23f5f6e7"
10 16
11DEPENDS = "glib-2.0" 17DEPENDS = "glib-2.0"
12 18
diff --git a/meta/recipes-support/gnupg/gnupg/0001-Use-pkg-config-to-find-pth-instead-of-pth-config.patch b/meta/recipes-support/gnupg/gnupg/0001-Use-pkg-config-to-find-pth-instead-of-pth-config.patch
deleted file mode 100644
index 5c9c022226..0000000000
--- a/meta/recipes-support/gnupg/gnupg/0001-Use-pkg-config-to-find-pth-instead-of-pth-config.patch
+++ /dev/null
@@ -1,105 +0,0 @@
1From 59a3c76d4016ffc615f1c45184f4c6820061d69c Mon Sep 17 00:00:00 2001
2From: Richard Purdie <richard.purdie@linuxfoundation.org>
3Date: Wed, 16 Aug 2017 11:14:12 +0800
4Subject: [PATCH 1/4] Use pkg-config to find pth instead of pth-config.
5
6Upstream-Status: Denied
7[not submitted but they've been clear they don't want a pkg-config
8dependency]
9
10RP 2014/5/22
11
12Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
13
14Rebase to 2.1.23
15Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
16---
17 m4/gnupg-pth.m4 | 53 ++++++++---------------------------------------------
18 1 file changed, 8 insertions(+), 45 deletions(-)
19
20diff --git a/m4/gnupg-pth.m4 b/m4/gnupg-pth.m4
21index 6dc9e0e..5892531 100644
22--- a/m4/gnupg-pth.m4
23+++ b/m4/gnupg-pth.m4
24@@ -17,33 +17,9 @@ dnl implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
25 # Taken and modified from the m4 macros which come with Pth.
26 AC_DEFUN([GNUPG_PTH_VERSION_CHECK],
27 [
28- _pth_version=`$PTH_CONFIG --version | awk 'NR==1 {print [$]3}'`
29 _req_version="ifelse([$1],,1.2.0,$1)"
30+ PKG_CHECK_MODULES(PTH, [pth >= $_req_version], [have_pth=yes], [have_pth=no])
31
32- AC_MSG_CHECKING(for PTH - version >= $_req_version)
33- for _var in _pth_version _req_version; do
34- eval "_val=\"\$${_var}\""
35- _major=`echo $_val | sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\([[ab.]]\)\([[0-9]]*\)/\1/'`
36- _minor=`echo $_val | sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\([[ab.]]\)\([[0-9]]*\)/\2/'`
37- _rtype=`echo $_val | sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\([[ab.]]\)\([[0-9]]*\)/\3/'`
38- _micro=`echo $_val | sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\([[ab.]]\)\([[0-9]]*\)/\4/'`
39- case $_rtype in
40- "a" ) _rtype=0 ;;
41- "b" ) _rtype=1 ;;
42- "." ) _rtype=2 ;;
43- esac
44- _hex=`echo dummy | awk '{ printf("%d%02d%1d%02d", major, minor, rtype, micro); }' \
45- "major=$_major" "minor=$_minor" "rtype=$_rtype" "micro=$_micro"`
46- eval "${_var}_hex=\"\$_hex\""
47- done
48- have_pth=no
49- if test ".$_pth_version_hex" != .; then
50- if test ".$_req_version_hex" != .; then
51- if test $_pth_version_hex -ge $_req_version_hex; then
52- have_pth=yes
53- fi
54- fi
55- fi
56 if test $have_pth = yes; then
57 AC_MSG_RESULT(yes)
58 AC_MSG_CHECKING([whether PTH installation is sane])
59@@ -51,9 +27,9 @@ AC_DEFUN([GNUPG_PTH_VERSION_CHECK],
60 _gnupg_pth_save_cflags=$CFLAGS
61 _gnupg_pth_save_ldflags=$LDFLAGS
62 _gnupg_pth_save_libs=$LIBS
63- CFLAGS="$CFLAGS `$PTH_CONFIG --cflags`"
64- LDFLAGS="$LDFLAGS `$PTH_CONFIG --ldflags`"
65- LIBS="$LIBS `$PTH_CONFIG --libs --all`"
66+ CFLAGS="$CFLAGS $PTH_CFLAGS"
67+ LDFLAGS="$LDFLAGS $PTH_LDFLAGS"
68+ LIBS="$LIBS $PTH_LIBS"
69 AC_LINK_IFELSE([AC_LANG_PROGRAM([#include <pth.h>
70 ],
71 [[ pth_init ();]])],
72@@ -80,26 +56,13 @@ AC_DEFUN([GNUPG_PTH_VERSION_CHECK],
73 # PTH_CLFAGS and PTH_LIBS are AS_SUBST.
74 #
75 AC_DEFUN([GNUPG_PATH_PTH],
76-[ AC_ARG_WITH(pth-prefix,
77- AC_HELP_STRING([--with-pth-prefix=PFX],
78- [prefix where GNU Pth is installed (optional)]),
79- pth_config_prefix="$withval", pth_config_prefix="")
80- if test x$pth_config_prefix != x ; then
81- PTH_CONFIG="$pth_config_prefix/bin/pth-config"
82- fi
83- AC_PATH_PROG(PTH_CONFIG, pth-config, no)
84+[
85 tmp=ifelse([$1], ,1.3.7,$1)
86- if test "$PTH_CONFIG" != "no"; then
87- GNUPG_PTH_VERSION_CHECK($tmp)
88- if test $have_pth = yes; then
89- PTH_CFLAGS=`$PTH_CONFIG --cflags`
90- PTH_LIBS=`$PTH_CONFIG --ldflags`
91- PTH_LIBS="$PTH_LIBS `$PTH_CONFIG --libs --all`"
92- AC_DEFINE(HAVE_PTH, 1,
93+ GNUPG_PTH_VERSION_CHECK($tmp)
94+ if test $have_pth = yes; then
95+ AC_DEFINE(HAVE_PTH, 1,
96 [Defined if the GNU Pth is available])
97- fi
98 fi
99 AC_SUBST(PTH_CFLAGS)
100 AC_SUBST(PTH_LIBS)
101 ])
102-
103--
1041.8.3.1
105
diff --git a/meta/recipes-support/gnupg/gnupg/0001-configure.ac-use-a-custom-value-for-the-location-of-.patch b/meta/recipes-support/gnupg/gnupg/0001-configure.ac-use-a-custom-value-for-the-location-of-.patch
index a0af2d48dc..f957f6b55e 100644
--- a/meta/recipes-support/gnupg/gnupg/0001-configure.ac-use-a-custom-value-for-the-location-of-.patch
+++ b/meta/recipes-support/gnupg/gnupg/0001-configure.ac-use-a-custom-value-for-the-location-of-.patch
@@ -1,4 +1,4 @@
1From abc5c396aaddaef2e6811362e3e0cc0da28c2b34 Mon Sep 17 00:00:00 2001 1From 6b581c43bd01f815db78a410fd3814fc5994171e Mon Sep 17 00:00:00 2001
2From: Alexander Kanavin <alex.kanavin@gmail.com> 2From: Alexander Kanavin <alex.kanavin@gmail.com>
3Date: Mon, 22 Jan 2018 18:00:21 +0200 3Date: Mon, 22 Jan 2018 18:00:21 +0200
4Subject: [PATCH] configure.ac: use a custom value for the location of 4Subject: [PATCH] configure.ac: use a custom value for the location of
@@ -14,10 +14,10 @@ Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
14 1 file changed, 1 insertion(+), 1 deletion(-) 14 1 file changed, 1 insertion(+), 1 deletion(-)
15 15
16diff --git a/configure.ac b/configure.ac 16diff --git a/configure.ac b/configure.ac
17index 64cb8c6..3fe9027 100644 17index 26d7f7b..e953c2e 100644
18--- a/configure.ac 18--- a/configure.ac
19+++ b/configure.ac 19+++ b/configure.ac
20@@ -1824,7 +1824,7 @@ AC_DEFINE_UNQUOTED(GPGCONF_DISP_NAME, "GPGConf", 20@@ -1921,7 +1921,7 @@ AC_DEFINE_UNQUOTED(GPGCONF_DISP_NAME, "GPGConf",
21 21
22 AC_DEFINE_UNQUOTED(GPGTAR_NAME, "gpgtar", [The name of the gpgtar tool]) 22 AC_DEFINE_UNQUOTED(GPGTAR_NAME, "gpgtar", [The name of the gpgtar tool])
23 23
diff --git a/meta/recipes-support/gnupg/gnupg/0002-use-pkgconfig-instead-of-npth-config.patch b/meta/recipes-support/gnupg/gnupg/0002-use-pkgconfig-instead-of-npth-config.patch
index 6d86e5c99b..0e58fd4c4d 100644
--- a/meta/recipes-support/gnupg/gnupg/0002-use-pkgconfig-instead-of-npth-config.patch
+++ b/meta/recipes-support/gnupg/gnupg/0002-use-pkgconfig-instead-of-npth-config.patch
@@ -1,7 +1,7 @@
1From 53c2aec2e13f4e2d09be7148869c862f07dfdd4d Mon Sep 17 00:00:00 2001 1From d9048788d906774b1475c3bb1b17e22455c2add4 Mon Sep 17 00:00:00 2001
2From: Saul Wold <sgw@linux.intel.com> 2From: Saul Wold <sgw@linux.intel.com>
3Date: Wed, 16 Aug 2017 11:16:30 +0800 3Date: Wed, 16 Aug 2017 11:16:30 +0800
4Subject: [PATCH 2/4] use pkgconfig instead of npth config 4Subject: [PATCH] use pkgconfig instead of npth config
5 5
6Upstream-Status: Inappropriate [openembedded specific] 6Upstream-Status: Inappropriate [openembedded specific]
7 7
@@ -9,29 +9,45 @@ Signed-off-by: Saul Wold <sgw@linux.intel.com>
9 9
10Rebase to 2.1.23 10Rebase to 2.1.23
11Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> 11Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
12
12--- 13---
13 m4/npth.m4 | 34 ++++++++-------------------------- 14 m4/npth.m4 | 53 ++++++++---------------------------------------------
14 1 file changed, 8 insertions(+), 26 deletions(-) 15 1 file changed, 8 insertions(+), 45 deletions(-)
15 16
16diff --git a/m4/npth.m4 b/m4/npth.m4 17diff --git a/m4/npth.m4 b/m4/npth.m4
17index 17c2644..15a931b 100644 18index 619ed89..0cb354d 100644
18--- a/m4/npth.m4 19--- a/m4/npth.m4
19+++ b/m4/npth.m4 20+++ b/m4/npth.m4
20@@ -17,10 +17,10 @@ AC_DEFUN([_AM_PATH_NPTH_CONFIG], 21@@ -19,25 +19,10 @@ AC_DEFUN([_AM_PATH_NPTH_CONFIG],
21 if test "x$npth_config_prefix" != x ; then 22 if test "x$npth_config_prefix" != x ; then
22 NPTH_CONFIG="$npth_config_prefix/bin/npth-config" 23 NPTH_CONFIG="$npth_config_prefix/bin/npth-config"
23 fi 24 fi
24- AC_PATH_PROG(NPTH_CONFIG, npth-config, no)
25+ AC_PATH_PROG(PKGCONFIG, pkg-config, no) 25+ AC_PATH_PROG(PKGCONFIG, pkg-config, no)
26 26
27- use_gpgrt_config=""
28- if test x"$GPGRT_CONFIG" != x -a "$GPGRT_CONFIG" != "no"; then
29- if $GPGRT_CONFIG npth --exists; then
30- NPTH_CONFIG="$GPGRT_CONFIG npth"
31- AC_MSG_NOTICE([Use gpgrt-config as npth-config])
32- use_gpgrt_config=yes
33- fi
34- fi
35- if test -z "$use_gpgrt_config"; then
36- AC_PATH_PROG(NPTH_CONFIG, npth-config, no)
37- fi
38-
27- if test "$NPTH_CONFIG" != "no" ; then 39- if test "$NPTH_CONFIG" != "no" ; then
28- npth_version=`$NPTH_CONFIG --version` 40- if test -z "$use_gpgrt_config"; then
41- npth_version=`$NPTH_CONFIG --version`
42- else
43- npth_version=`$NPTH_CONFIG --modversion`
44- fi
29+ if test "$PKGCONFIG" != "no" ; then 45+ if test "$PKGCONFIG" != "no" ; then
30+ npth_version=`$PKGCONFIG --modversion npth` 46+ npth_version=`$PKGCONFIG --modversion npth`
31 fi 47 fi
32 npth_version_major=`echo $npth_version | \ 48 npth_version_major=`echo $npth_version | \
33 sed 's/\([[0-9]]*\)\.\([[0-9]]*\).*/\1/'` 49 sed 's/\([[0-9]]*\)\.\([[0-9]]*\).*/\1/'`
34@@ -45,7 +45,7 @@ AC_DEFUN([AM_PATH_NPTH], 50@@ -62,7 +47,7 @@ AC_DEFUN([AM_PATH_NPTH],
35 51
36 AC_MSG_CHECKING(for NPTH - version >= $min_npth_version) 52 AC_MSG_CHECKING(for NPTH - version >= $min_npth_version)
37 ok=no 53 ok=no
@@ -40,7 +56,7 @@ index 17c2644..15a931b 100644
40 req_major=`echo $min_npth_version | \ 56 req_major=`echo $min_npth_version | \
41 sed 's/\([[0-9]]*\)\.\([[0-9]]*\)/\1/'` 57 sed 's/\([[0-9]]*\)\.\([[0-9]]*\)/\1/'`
42 req_minor=`echo $min_npth_version | \ 58 req_minor=`echo $min_npth_version | \
43@@ -66,28 +66,9 @@ AC_DEFUN([AM_PATH_NPTH], 59@@ -83,32 +68,9 @@ AC_DEFUN([AM_PATH_NPTH],
44 fi 60 fi
45 if test $ok = yes; then 61 if test $ok = yes; then
46 AC_MSG_RESULT([yes ($npth_version)]) 62 AC_MSG_RESULT([yes ($npth_version)])
@@ -48,20 +64,24 @@ index 17c2644..15a931b 100644
48- AC_MSG_RESULT(no) 64- AC_MSG_RESULT(no)
49- fi 65- fi
50- if test $ok = yes; then 66- if test $ok = yes; then
51- # If we have a recent NPTH, we should also check that the 67- # If we have a recent NPTH, we should also check that the
52- # API is compatible. 68- # API is compatible.
53- if test "$req_npth_api" -gt 0 ; then 69- if test "$req_npth_api" -gt 0 ; then
70- if test -z "$use_gpgrt_config"; then
54- tmp=`$NPTH_CONFIG --api-version 2>/dev/null || echo 0` 71- tmp=`$NPTH_CONFIG --api-version 2>/dev/null || echo 0`
55- if test "$tmp" -gt 0 ; then 72- else
56- AC_MSG_CHECKING([NPTH API version]) 73- tmp=`$NPTH_CONFIG --variable=api_version 2>/dev/null || echo 0`
57- if test "$req_npth_api" -eq "$tmp" ; then 74- fi
58- AC_MSG_RESULT([okay]) 75- if test "$tmp" -gt 0 ; then
59- else 76- AC_MSG_CHECKING([NPTH API version])
60- ok=no 77- if test "$req_npth_api" -eq "$tmp" ; then
61- AC_MSG_RESULT([does not match. want=$req_npth_api got=$tmp]) 78- AC_MSG_RESULT([okay])
62- fi 79- else
80- ok=no
81- AC_MSG_RESULT([does not match. want=$req_npth_api got=$tmp])
63- fi 82- fi
64- fi 83- fi
84- fi
65- fi 85- fi
66- if test $ok = yes; then 86- if test $ok = yes; then
67- NPTH_CFLAGS=`$NPTH_CONFIG --cflags` 87- NPTH_CFLAGS=`$NPTH_CONFIG --cflags`
@@ -70,9 +90,9 @@ index 17c2644..15a931b 100644
70+ NPTH_LIBS=`$PKGCONFIG --libs npth` 90+ NPTH_LIBS=`$PKGCONFIG --libs npth`
71+ AC_MSG_WARN([[GOT HERE - $NPTH_LIBS ]]) 91+ AC_MSG_WARN([[GOT HERE - $NPTH_LIBS ]])
72 ifelse([$2], , :, [$2]) 92 ifelse([$2], , :, [$2])
73 npth_config_host=`$NPTH_CONFIG --host 2>/dev/null || echo none` 93 if test -z "$use_gpgrt_config"; then
74 if test x"$npth_config_host" != xnone ; then 94 npth_config_host=`$NPTH_CONFIG --host 2>/dev/null || echo none`
75@@ -103,6 +84,7 @@ AC_DEFUN([AM_PATH_NPTH], 95@@ -128,6 +90,7 @@ AC_DEFUN([AM_PATH_NPTH],
76 fi 96 fi
77 fi 97 fi
78 else 98 else
@@ -80,6 +100,3 @@ index 17c2644..15a931b 100644
80 NPTH_CFLAGS="" 100 NPTH_CFLAGS=""
81 NPTH_LIBS="" 101 NPTH_LIBS=""
82 ifelse([$3], , :, [$3]) 102 ifelse([$3], , :, [$3])
83--
841.8.3.1
85
diff --git a/meta/recipes-support/gnupg/gnupg/0003-dirmngr-uses-libgpg-error.patch b/meta/recipes-support/gnupg/gnupg/0003-dirmngr-uses-libgpg-error.patch
deleted file mode 100644
index a13b4d5fb5..0000000000
--- a/meta/recipes-support/gnupg/gnupg/0003-dirmngr-uses-libgpg-error.patch
+++ /dev/null
@@ -1,28 +0,0 @@
1From 6c75656b68cb6e38b039ae532bd39437cd6daec5 Mon Sep 17 00:00:00 2001
2From: Saul Wold <sgw@linux.intel.com>
3Date: Wed, 16 Aug 2017 11:18:01 +0800
4Subject: [PATCH] dirmngr uses libgpg error
5
6Upstream-Status: Pending
7Signed-off-by: Saul Wold <sgw@linux.intel.com>
8
9Rebase to 2.1.23
10
11Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
12
13---
14 dirmngr/Makefile.am | 1 +
15 1 file changed, 1 insertion(+)
16
17diff --git a/dirmngr/Makefile.am b/dirmngr/Makefile.am
18index 00d3c42..450d873 100644
19--- a/dirmngr/Makefile.am
20+++ b/dirmngr/Makefile.am
21@@ -101,6 +101,7 @@ dirmngr_LDADD = $(libcommonpth) \
22 $(DNSLIBS) $(LIBASSUAN_LIBS) \
23 $(LIBGCRYPT_LIBS) $(KSBA_LIBS) $(NPTH_LIBS) \
24 $(NTBTLS_LIBS) $(LIBGNUTLS_LIBS) $(LIBINTL) $(LIBICONV) $(NETLIBS) \
25+ $(GPG_ERROR_LIBS) \
26 $(dirmngr_robj)
27 if USE_LDAP
28 dirmngr_LDADD += $(ldaplibs)
diff --git a/meta/recipes-support/gnupg/gnupg/0004-autogen.sh-fix-find-version-for-beta-checking.patch b/meta/recipes-support/gnupg/gnupg/0004-autogen.sh-fix-find-version-for-beta-checking.patch
index dcd8582ca6..d664c36a1b 100644
--- a/meta/recipes-support/gnupg/gnupg/0004-autogen.sh-fix-find-version-for-beta-checking.patch
+++ b/meta/recipes-support/gnupg/gnupg/0004-autogen.sh-fix-find-version-for-beta-checking.patch
@@ -1,7 +1,7 @@
1From 914ae4a3f7529fb069467bf0ded57dd24ee2e763 Mon Sep 17 00:00:00 2001 1From 6a7f9b71d936847dcaeeac7d1b69d8299be4dd85 Mon Sep 17 00:00:00 2001
2From: Wenzong Fan <wenzong.fan@windriver.com> 2From: Wenzong Fan <wenzong.fan@windriver.com>
3Date: Wed, 16 Aug 2017 11:23:22 +0800 3Date: Wed, 16 Aug 2017 11:23:22 +0800
4Subject: [PATCH 4/4] autogen.sh: fix find-version for beta checking 4Subject: [PATCH] autogen.sh: fix find-version for beta checking
5 5
6find-version always assumes that gnupg is beta if autogen.sh is run 6find-version always assumes that gnupg is beta if autogen.sh is run
7out of git-repo. This doesn't work for users whom just take release 7out of git-repo. This doesn't work for users whom just take release
@@ -13,15 +13,16 @@ Signed-off-by: Wenzong Fan <wenzong.fan@windriver.com>
13 13
14Rebase to 2.1.23 14Rebase to 2.1.23
15Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> 15Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
16
16--- 17---
17 autogen.sh | 1 - 18 autogen.sh | 1 -
18 1 file changed, 1 deletion(-) 19 1 file changed, 1 deletion(-)
19 20
20diff --git a/autogen.sh b/autogen.sh 21diff --git a/autogen.sh b/autogen.sh
21index e5ba5bf..05e0e11 100755 22index 0abf103..78753b5 100755
22--- a/autogen.sh 23--- a/autogen.sh
23+++ b/autogen.sh 24+++ b/autogen.sh
24@@ -245,7 +245,6 @@ if [ "$myhost" = "find-version" ]; then 25@@ -237,7 +237,6 @@ if [ "$myhost" = "find-version" ]; then
25 rvd=$((0x$(echo ${rev} | dd bs=1 count=4 2>/dev/null))) 26 rvd=$((0x$(echo ${rev} | dd bs=1 count=4 2>/dev/null)))
26 else 27 else
27 ingit=no 28 ingit=no
@@ -29,6 +30,3 @@ index e5ba5bf..05e0e11 100755
29 tmp="-unknown" 30 tmp="-unknown"
30 rev="0000000" 31 rev="0000000"
31 rvd="0" 32 rvd="0"
32--
331.8.3.1
34
diff --git a/meta/recipes-support/gnupg/gnupg/relocate.patch b/meta/recipes-support/gnupg/gnupg/relocate.patch
index 7f7812cd46..ea0252026a 100644
--- a/meta/recipes-support/gnupg/gnupg/relocate.patch
+++ b/meta/recipes-support/gnupg/gnupg/relocate.patch
@@ -1,4 +1,4 @@
1From bd66af2ac7bb6d9294ac8055a55462ba7c4f9c9b Mon Sep 17 00:00:00 2001 1From c50d0a95fcf8f96c272fadd4ba85f3eeac39fcaf Mon Sep 17 00:00:00 2001
2From: Ross Burton <ross.burton@intel.com> 2From: Ross Burton <ross.burton@intel.com>
3Date: Wed, 19 Sep 2018 14:44:40 +0100 3Date: Wed, 19 Sep 2018 14:44:40 +0100
4Subject: [PATCH] Allow the environment to override where gnupg looks for its 4Subject: [PATCH] Allow the environment to override where gnupg looks for its
@@ -7,83 +7,76 @@ Subject: [PATCH] Allow the environment to override where gnupg looks for its
7Upstream-Status: Inappropriate [OE-specific] 7Upstream-Status: Inappropriate [OE-specific]
8Signed-off-by: Ross Burton <ross.burton@intel.com> 8Signed-off-by: Ross Burton <ross.burton@intel.com>
9 9
10Signed-off-by: Alexander Kanavin <alex@linutronix.de>
11
10--- 12---
11 common/homedir.c | 16 ++++++++-------- 13 common/homedir.c | 14 +++++++-------
12 1 file changed, 8 insertions(+), 8 deletions(-) 14 1 file changed, 7 insertions(+), 7 deletions(-)
13 15
14diff --git a/common/homedir.c b/common/homedir.c 16diff --git a/common/homedir.c b/common/homedir.c
15index 4b6e46e..58989b4 100644 17index 6f99f3e..f22aa9e 100644
16--- a/common/homedir.c 18--- a/common/homedir.c
17+++ b/common/homedir.c 19+++ b/common/homedir.c
18@@ -763,7 +763,7 @@ gnupg_socketdir (void) 20@@ -1284,7 +1284,7 @@ gnupg_socketdir (void)
19 if (!name) 21 if (!name)
20 { 22 {
21 unsigned int dummy; 23 unsigned int dummy;
22- name = _gnupg_socketdir_internal (0, &dummy); 24- name = _gnupg_socketdir_internal (0, &dummy);
23+ name = getenv("GNUPG_SOCKETDIR") ?: _gnupg_socketdir_internal (0, &dummy); 25+ name = getenv("GNUPG_SOCKETDIR") ?: _gnupg_socketdir_internal (0, &dummy);
26 gpgrt_annotate_leaked_object (name);
24 } 27 }
25 28
26 return name; 29@@ -1316,7 +1316,7 @@ gnupg_sysconfdir (void)
27@@ -789,7 +789,7 @@ gnupg_sysconfdir (void) 30 if (dir)
28 } 31 return dir;
29 return name;
30 #else /*!HAVE_W32_SYSTEM*/
31- return GNUPG_SYSCONFDIR;
32+ return getenv("GNUPG_SYSCONFDIR") ?: GNUPG_SYSCONFDIR;
33 #endif /*!HAVE_W32_SYSTEM*/
34 }
35
36@@ -818,7 +818,7 @@ gnupg_bindir (void)
37 else 32 else
38 return rdir; 33- return GNUPG_SYSCONFDIR;
39 #else /*!HAVE_W32_SYSTEM*/ 34+ return getenv("GNUPG_SYSCONFDIR") ?: GNUPG_SYSCONFDIR;
40- return GNUPG_BINDIR;
41+ return getenv("GNUPG_BINDIR") ?: GNUPG_BINDIR;
42 #endif /*!HAVE_W32_SYSTEM*/ 35 #endif /*!HAVE_W32_SYSTEM*/
43 } 36 }
44 37
45@@ -831,7 +831,7 @@ gnupg_libexecdir (void) 38@@ -1352,7 +1352,7 @@ gnupg_bindir (void)
46 #ifdef HAVE_W32_SYSTEM 39 return name;
47 return gnupg_bindir (); 40 }
48 #else /*!HAVE_W32_SYSTEM*/ 41 else
49- return GNUPG_LIBEXECDIR; 42- return GNUPG_BINDIR;
50+ return getenv("GNUPG_LIBEXECDIR") ?: GNUPG_LIBEXECDIR; 43+ return getenv("GNUPG_BINDIR") ?: GNUPG_BINDIR;
51 #endif /*!HAVE_W32_SYSTEM*/ 44 #endif /*!HAVE_W32_SYSTEM*/
52 } 45 }
53 46
54@@ -845,7 +845,7 @@ gnupg_libdir (void) 47@@ -1379,7 +1379,7 @@ gnupg_libexecdir (void)
55 name = xstrconcat (w32_rootdir (), DIRSEP_S "lib" DIRSEP_S "gnupg", NULL); 48 return name;
56 return name; 49 }
57 #else /*!HAVE_W32_SYSTEM*/ 50 else
58- return GNUPG_LIBDIR; 51- return GNUPG_LIBEXECDIR;
59+ return getenv("GNUPG_LIBDIR") ?: GNUPG_LIBDIR; 52+ return getenv("GNUPG_LIBEXECDIR") ?: GNUPG_LIBEXECDIR;
60 #endif /*!HAVE_W32_SYSTEM*/ 53 #endif /*!HAVE_W32_SYSTEM*/
61 } 54 }
62 55
63@@ -859,7 +859,7 @@ gnupg_datadir (void) 56@@ -1409,7 +1409,7 @@ gnupg_libdir (void)
64 name = xstrconcat (w32_rootdir (), DIRSEP_S "share" DIRSEP_S "gnupg", NULL); 57 return name;
65 return name; 58 }
66 #else /*!HAVE_W32_SYSTEM*/ 59 else
67- return GNUPG_DATADIR; 60- return GNUPG_LIBDIR;
68+ return getenv("GNUPG_DATADIR") ?: GNUPG_DATADIR; 61+ return getenv("GNUPG_LIBDIR") ?: GNUPG_LIBDIR;
69 #endif /*!HAVE_W32_SYSTEM*/ 62 #endif /*!HAVE_W32_SYSTEM*/
70 } 63 }
71 64
72@@ -875,7 +875,7 @@ gnupg_localedir (void) 65@@ -1440,7 +1440,7 @@ gnupg_datadir (void)
73 NULL); 66 return name;
74 return name; 67 }
75 #else /*!HAVE_W32_SYSTEM*/ 68 else
76- return LOCALEDIR; 69- return GNUPG_DATADIR;
77+ return getenv("LOCALEDIR") ?: LOCALEDIR; 70+ return getenv("GNUPG_DATADIR") ?: GNUPG_DATADIR;
78 #endif /*!HAVE_W32_SYSTEM*/ 71 #endif /*!HAVE_W32_SYSTEM*/
79 } 72 }
80 73
81@@ -943,7 +943,7 @@ gnupg_cachedir (void) 74@@ -1472,7 +1472,7 @@ gnupg_localedir (void)
75 return name;
82 } 76 }
83 return dir; 77 else
84 #else /*!HAVE_W32_SYSTEM*/ 78- return LOCALEDIR;
85- return GNUPG_LOCALSTATEDIR "/cache/" PACKAGE_NAME; 79+ return getenv("LOCALEDIR") ?: LOCALEDIR;
86+ return getenv("GNUPG_LOCALSTATEDIR") ?: GNUPG_LOCALSTATEDIR "/cache/" PACKAGE_NAME;
87 #endif /*!HAVE_W32_SYSTEM*/ 80 #endif /*!HAVE_W32_SYSTEM*/
88 } 81 }
89 82
diff --git a/meta/recipes-support/gnupg/gnupg_2.2.27.bb b/meta/recipes-support/gnupg/gnupg_2.4.5.bb
index 8b5fc9983a..99996968b1 100644
--- a/meta/recipes-support/gnupg/gnupg_2.2.27.bb
+++ b/meta/recipes-support/gnupg/gnupg_2.4.5.bb
@@ -1,6 +1,11 @@
1SUMMARY = "GNU Privacy Guard - encryption and signing tools (2.x)" 1SUMMARY = "GNU Privacy Guard - encryption and signing tools (2.x)"
2DESCRIPTION = "A complete and free implementation of the OpenPGP standard \
3as defined by RFC4880 (also known as PGP). GnuPG allows you to encrypt \
4and sign your data and communications; it features a versatile key \
5management system, along with access modules for all kinds of public \
6key directories."
2HOMEPAGE = "http://www.gnupg.org/" 7HOMEPAGE = "http://www.gnupg.org/"
3LICENSE = "GPLv3 & LGPLv3" 8LICENSE = "GPL-3.0-only & LGPL-3.0-only"
4LIC_FILES_CHKSUM = "file://COPYING;md5=189af8afca6d6075ba6c9e0aa8077626 \ 9LIC_FILES_CHKSUM = "file://COPYING;md5=189af8afca6d6075ba6c9e0aa8077626 \
5 file://COPYING.LGPL3;md5=a2b6bf2cb38ee52619e60f30a1fc7257" 10 file://COPYING.LGPL3;md5=a2b6bf2cb38ee52619e60f30a1fc7257"
6 11
@@ -10,29 +15,31 @@ inherit autotools gettext texinfo pkgconfig
10 15
11UPSTREAM_CHECK_URI = "https://gnupg.org/download/index.html" 16UPSTREAM_CHECK_URI = "https://gnupg.org/download/index.html"
12SRC_URI = "${GNUPG_MIRROR}/${BPN}/${BPN}-${PV}.tar.bz2 \ 17SRC_URI = "${GNUPG_MIRROR}/${BPN}/${BPN}-${PV}.tar.bz2 \
13 file://0001-Use-pkg-config-to-find-pth-instead-of-pth-config.patch \
14 file://0002-use-pkgconfig-instead-of-npth-config.patch \ 18 file://0002-use-pkgconfig-instead-of-npth-config.patch \
15 file://0003-dirmngr-uses-libgpg-error.patch \
16 file://0004-autogen.sh-fix-find-version-for-beta-checking.patch \ 19 file://0004-autogen.sh-fix-find-version-for-beta-checking.patch \
17 file://0001-Woverride-init-is-not-needed-with-gcc-9.patch \ 20 file://0001-Woverride-init-is-not-needed-with-gcc-9.patch \
18 " 21 "
19SRC_URI_append_class-native = " file://0001-configure.ac-use-a-custom-value-for-the-location-of-.patch \ 22SRC_URI:append:class-native = " file://0001-configure.ac-use-a-custom-value-for-the-location-of-.patch \
20 file://relocate.patch" 23 file://relocate.patch"
21SRC_URI_append_class-nativesdk = " file://relocate.patch" 24SRC_URI:append:class-nativesdk = " file://relocate.patch"
22 25
23SRC_URI[sha256sum] = "34e60009014ea16402069136e0a5f63d9b65f90096244975db5cea74b3d02399" 26SRC_URI[sha256sum] = "f68f7d75d06cb1635c336d34d844af97436c3f64ea14bcb7c869782f96f44277"
24 27
25EXTRA_OECONF = "--disable-ldap \ 28EXTRA_OECONF = "--disable-ldap \
26 --disable-ccid-driver \ 29 --disable-ccid-driver \
27 --with-zlib=${STAGING_LIBDIR}/.. \ 30 --with-zlib=${STAGING_LIBDIR}/.. \
28 --with-bzip2=${STAGING_LIBDIR}/.. \ 31 --with-bzip2=${STAGING_LIBDIR}/.. \
29 --with-readline=${STAGING_LIBDIR}/.. \ 32 --with-readline=${STAGING_LIBDIR}/.. \
33 --with-mailprog=${sbindir}/sendmail \
30 --enable-gpg-is-gpg2 \ 34 --enable-gpg-is-gpg2 \
35 --disable-tests \
31 " 36 "
37# yat2m can be found from recipe-sysroot-native non-deterministically with different versioning otherwise
38CACHED_CONFIGUREVARS += "ac_cv_path_YAT2M=./yat2m"
32 39
33# A minimal package containing just enough to run gpg+gpgagent (E.g. use gpgme in opkg) 40# A minimal package containing just enough to run gpg+gpgagent (E.g. use gpgme in opkg)
34PACKAGES =+ "${PN}-gpg" 41PACKAGES =+ "${PN}-gpg"
35FILES_${PN}-gpg = " \ 42FILES:${PN}-gpg = " \
36 ${bindir}/gpg \ 43 ${bindir}/gpg \
37 ${bindir}/gpg2 \ 44 ${bindir}/gpg2 \
38 ${bindir}/gpg-agent \ 45 ${bindir}/gpg-agent \
@@ -42,11 +49,11 @@ FILES_${PN}-gpg = " \
42# to ensure all tools are included. This is done only in non-native 49# to ensure all tools are included. This is done only in non-native
43# builds. Native builds don't have sub-packages, so appending RDEPENDS 50# builds. Native builds don't have sub-packages, so appending RDEPENDS
44# in this case breaks recipe parsing. 51# in this case breaks recipe parsing.
45RDEPENDS_${PN} += "${@ "" if ("native" in d.getVar("PN")) else (d.getVar("PN") + "-gpg")}" 52RDEPENDS:${PN} += "${@ "" if ("native" in d.getVar("PN")) else (d.getVar("PN") + "-gpg")}"
46 53
47RRECOMMENDS_${PN} = "pinentry" 54RRECOMMENDS:${PN} = "pinentry"
48 55
49do_configure_prepend () { 56do_configure:prepend () {
50 # Else these could be used in prefernce to those in aclocal-copy 57 # Else these could be used in prefernce to those in aclocal-copy
51 rm -f ${S}/m4/gpg-error.m4 58 rm -f ${S}/m4/gpg-error.m4
52 rm -f ${S}/m4/libassuan.m4 59 rm -f ${S}/m4/libassuan.m4
@@ -54,16 +61,16 @@ do_configure_prepend () {
54 rm -f ${S}/m4/libgcrypt.m4 61 rm -f ${S}/m4/libgcrypt.m4
55} 62}
56 63
57do_install_append() { 64do_install:append() {
58 ln -sf gpg2 ${D}${bindir}/gpg 65 ln -sf gpg2 ${D}${bindir}/gpg
59 ln -sf gpgv2 ${D}${bindir}/gpgv 66 ln -sf gpgv2 ${D}${bindir}/gpgv
60} 67}
61 68
62do_install_append_class-native() { 69do_install:append:class-native() {
63 create_wrappers ${STAGING_BINDIR_NATIVE} 70 create_wrappers ${STAGING_BINDIR_NATIVE}
64} 71}
65 72
66do_install_append_class-nativesdk() { 73do_install:append:class-nativesdk() {
67 create_wrappers ${SDKPATHNATIVE}${bindir_nativesdk} 74 create_wrappers ${SDKPATHNATIVE}${bindir_nativesdk}
68} 75}
69 76
@@ -78,3 +85,6 @@ PACKAGECONFIG[gnutls] = "--enable-gnutls, --disable-gnutls, gnutls"
78PACKAGECONFIG[sqlite3] = "--enable-sqlite, --disable-sqlite, sqlite3" 85PACKAGECONFIG[sqlite3] = "--enable-sqlite, --disable-sqlite, sqlite3"
79 86
80BBCLASSEXTEND = "native nativesdk" 87BBCLASSEXTEND = "native nativesdk"
88
89lcl_maybe_fortify:mipsarch = ""
90
diff --git a/meta/recipes-support/gnutls/gnutls/0001-Creating-.hmac-file-should-be-excuted-in-target-envi.patch b/meta/recipes-support/gnutls/gnutls/0001-Creating-.hmac-file-should-be-excuted-in-target-envi.patch
new file mode 100644
index 0000000000..d13bfee8ef
--- /dev/null
+++ b/meta/recipes-support/gnutls/gnutls/0001-Creating-.hmac-file-should-be-excuted-in-target-envi.patch
@@ -0,0 +1,26 @@
1From 7be8ec59a53e93c2bd453b3ba2d63d1b300ef11f Mon Sep 17 00:00:00 2001
2From: Lei Maohui <leimaohui@fujitsu.com>
3Date: Mon, 23 May 2022 10:44:43 +0900
4Subject: [PATCH] Creating .hmac file should be excuted in target environment,
5 so deleted it from build process.
6
7Upstream-Status: Inappropriate [https://gitlab.com/gnutls/gnutls/-/issues/1373]
8Signed-off-by: Lei Maohui <leimaohui@fujitsu.com>
9---
10 lib/Makefile.am | 3 +--
11 1 file changed, 1 insertion(+), 2 deletions(-)
12
13diff --git a/lib/Makefile.am b/lib/Makefile.am
14index a50d311..193ea19 100644
15--- a/lib/Makefile.am
16+++ b/lib/Makefile.am
17@@ -198,8 +198,7 @@ hmac_file = .libs/.$(gnutls_so).hmac
18
19 all-local: $(hmac_file)
20
21-$(hmac_file): libgnutls.la fipshmac
22- $(AM_V_GEN) $(builddir)/fipshmac > $@-t && mv $@-t $@
23+.libs/.$(gnutls_so).hmac:
24
25 CLEANFILES = $(hmac_file)
26 endif
diff --git a/meta/recipes-support/gnutls/gnutls/0001-Fix-RSAES-PKCS1-v1_5-system-wide-configuration.patch b/meta/recipes-support/gnutls/gnutls/0001-Fix-RSAES-PKCS1-v1_5-system-wide-configuration.patch
new file mode 100644
index 0000000000..cc39f5c9a5
--- /dev/null
+++ b/meta/recipes-support/gnutls/gnutls/0001-Fix-RSAES-PKCS1-v1_5-system-wide-configuration.patch
@@ -0,0 +1,269 @@
1From 2d73d945c4b1dfcf8d2328c4d23187d62ffaab2d Mon Sep 17 00:00:00 2001
2From: Zoltan Fridrich <zfridric@redhat.com>
3Date: Wed, 10 Apr 2024 12:51:33 +0200
4Subject: [PATCH] Fix RSAES-PKCS1-v1_5 system-wide configuration
5
6Upstream-Status: Backport [expected for 3.8.6 https://gitlab.com/gnutls/gnutls/-/merge_requests/1830?commit_id=2d73d945c4b1dfcf8d2328c4d23187d62ffaab2d]
7
8Signed-off-by: Simone Weiß <simone.p.weiss@posteo.com>
9Signed-off-by: Zoltan Fridrich <zfridric@redhat.com>
10---
11 lib/priority.c | 125 +++++++++++-------
12 ...system-override-allow-rsa-pkcs1-encrypt.sh | 27 +++-
13 2 files changed, 96 insertions(+), 56 deletions(-)
14
15diff --git a/lib/priority.c b/lib/priority.c
16index 8abe00d1ff..3434619aad 100644
17--- a/lib/priority.c
18+++ b/lib/priority.c
19@@ -1018,6 +1018,12 @@ struct cfg {
20 bool force_ext_master_secret_set;
21 };
22
23+static inline void cfg_init(struct cfg *cfg)
24+{
25+ memset(cfg, 0, sizeof(*cfg));
26+ cfg->allow_rsa_pkcs1_encrypt = true;
27+}
28+
29 static inline void cfg_deinit(struct cfg *cfg)
30 {
31 if (cfg->priority_strings) {
32@@ -1095,6 +1101,12 @@ struct ini_ctx {
33 size_t curves_size;
34 };
35
36+static inline void ini_ctx_init(struct ini_ctx *ctx)
37+{
38+ memset(ctx, 0, sizeof(*ctx));
39+ cfg_init(&ctx->cfg);
40+}
41+
42 static inline void ini_ctx_deinit(struct ini_ctx *ctx)
43 {
44 cfg_deinit(&ctx->cfg);
45@@ -1423,9 +1435,6 @@ static inline int cfg_apply(struct cfg *cfg, struct ini_ctx *ctx)
46 _gnutls_default_priority_string = cfg->default_priority_string;
47 }
48
49- /* enable RSA-PKCS1-V1_5 by default */
50- cfg->allow_rsa_pkcs1_encrypt = true;
51-
52 if (cfg->allowlisting) {
53 /* also updates `flags` of global `hash_algorithms[]` */
54 ret = cfg_hashes_set_array(cfg, ctx->hashes, ctx->hashes_size);
55@@ -2217,22 +2226,73 @@ update_system_wide_priority_string(void)
56 return 0;
57 }
58
59+/* Returns false on parse error, otherwise true.
60+ * The system_wide_config must be locked for writing.
61+ */
62+static inline bool load_system_priority_file(void)
63+{
64+ int err;
65+ FILE *fp;
66+ struct ini_ctx ctx;
67+
68+ cfg_init(&system_wide_config);
69+
70+ fp = fopen(system_priority_file, "re");
71+ if (fp == NULL) {
72+ _gnutls_debug_log("cfg: unable to open: %s: %d\n",
73+ system_priority_file, errno);
74+ return true;
75+ }
76+
77+ /* Parsing the configuration file needs to be done in 2 phases:
78+ * first parsing the [global] section
79+ * and then the other sections,
80+ * because the [global] section modifies the parsing behavior.
81+ */
82+ ini_ctx_init(&ctx);
83+ err = ini_parse_file(fp, global_ini_handler, &ctx);
84+ if (!err) {
85+ if (fseek(fp, 0L, SEEK_SET) < 0) {
86+ _gnutls_debug_log("cfg: unable to rewind: %s\n",
87+ system_priority_file);
88+ if (fail_on_invalid_config)
89+ exit(1);
90+ }
91+ err = ini_parse_file(fp, cfg_ini_handler, &ctx);
92+ }
93+ fclose(fp);
94+ if (err) {
95+ ini_ctx_deinit(&ctx);
96+ _gnutls_debug_log("cfg: unable to parse: %s: %d\n",
97+ system_priority_file, err);
98+ return false;
99+ }
100+ cfg_apply(&system_wide_config, &ctx);
101+ ini_ctx_deinit(&ctx);
102+ return true;
103+}
104+
105 static int _gnutls_update_system_priorities(bool defer_system_wide)
106 {
107- int ret, err = 0;
108+ int ret;
109+ bool config_parse_error = false;
110 struct stat sb;
111- FILE *fp;
112 gnutls_buffer_st buf;
113- struct ini_ctx ctx;
114
115 ret = gnutls_rwlock_rdlock(&system_wide_config_rwlock);
116- if (ret < 0) {
117+ if (ret < 0)
118 return gnutls_assert_val(ret);
119- }
120
121 if (stat(system_priority_file, &sb) < 0) {
122 _gnutls_debug_log("cfg: unable to access: %s: %d\n",
123 system_priority_file, errno);
124+
125+ (void)gnutls_rwlock_unlock(&system_wide_config_rwlock);
126+ ret = gnutls_rwlock_wrlock(&system_wide_config_rwlock);
127+ if (ret < 0)
128+ goto out;
129+ /* If system-wide config is unavailable, apply the defaults */
130+ cfg_init(&system_wide_config);
131 goto out;
132 }
133
134@@ -2240,63 +2300,27 @@ static int _gnutls_update_system_priorities(bool defer_system_wide)
135 system_priority_last_mod == sb.st_mtime) {
136 _gnutls_debug_log("cfg: system priority %s has not changed\n",
137 system_priority_file);
138- if (system_wide_config.priority_string) {
139+ if (system_wide_config.priority_string)
140 goto out; /* nothing to do */
141- }
142 }
143
144 (void)gnutls_rwlock_unlock(&system_wide_config_rwlock);
145
146 ret = gnutls_rwlock_wrlock(&system_wide_config_rwlock);
147- if (ret < 0) {
148+ if (ret < 0)
149 return gnutls_assert_val(ret);
150- }
151
152 /* Another thread could have successfully re-read system-wide config,
153 * skip re-reading if the mtime it has used is exactly the same.
154 */
155- if (system_priority_file_loaded) {
156+ if (system_priority_file_loaded)
157 system_priority_file_loaded =
158 (system_priority_last_mod == sb.st_mtime);
159- }
160
161 if (!system_priority_file_loaded) {
162- _name_val_array_clear(&system_wide_config.priority_strings);
163-
164- gnutls_free(system_wide_config.priority_string);
165- system_wide_config.priority_string = NULL;
166-
167- fp = fopen(system_priority_file, "re");
168- if (fp == NULL) {
169- _gnutls_debug_log("cfg: unable to open: %s: %d\n",
170- system_priority_file, errno);
171+ config_parse_error = !load_system_priority_file();
172+ if (config_parse_error)
173 goto out;
174- }
175- /* Parsing the configuration file needs to be done in 2 phases:
176- * first parsing the [global] section
177- * and then the other sections,
178- * because the [global] section modifies the parsing behavior.
179- */
180- memset(&ctx, 0, sizeof(ctx));
181- err = ini_parse_file(fp, global_ini_handler, &ctx);
182- if (!err) {
183- if (fseek(fp, 0L, SEEK_SET) < 0) {
184- _gnutls_debug_log("cfg: unable to rewind: %s\n",
185- system_priority_file);
186- if (fail_on_invalid_config)
187- exit(1);
188- }
189- err = ini_parse_file(fp, cfg_ini_handler, &ctx);
190- }
191- fclose(fp);
192- if (err) {
193- ini_ctx_deinit(&ctx);
194- _gnutls_debug_log("cfg: unable to parse: %s: %d\n",
195- system_priority_file, err);
196- goto out;
197- }
198- cfg_apply(&system_wide_config, &ctx);
199- ini_ctx_deinit(&ctx);
200 _gnutls_debug_log("cfg: loaded system config %s mtime %lld\n",
201 system_priority_file,
202 (unsigned long long)sb.st_mtime);
203@@ -2332,9 +2356,8 @@ static int _gnutls_update_system_priorities(bool defer_system_wide)
204 out:
205 (void)gnutls_rwlock_unlock(&system_wide_config_rwlock);
206
207- if (err && fail_on_invalid_config) {
208+ if (config_parse_error && fail_on_invalid_config)
209 exit(1);
210- }
211
212 return ret;
213 }
214diff --git a/tests/system-override-allow-rsa-pkcs1-encrypt.sh b/tests/system-override-allow-rsa-pkcs1-encrypt.sh
215index b7d477c96e..714d0af946 100755
216--- a/tests/system-override-allow-rsa-pkcs1-encrypt.sh
217+++ b/tests/system-override-allow-rsa-pkcs1-encrypt.sh
218@@ -19,9 +19,8 @@
219 # You should have received a copy of the GNU Lesser General Public License
220 # along with this program. If not, see <https://www.gnu.org/licenses/>
221
222-: ${srcdir=.}
223-TEST=${srcdir}/rsaes-pkcs1-v1_5
224-CONF=${srcdir}/config.$$.tmp
225+TEST=${builddir}/rsaes-pkcs1-v1_5
226+CONF=config.$$.tmp
227 export GNUTLS_SYSTEM_PRIORITY_FILE=${CONF}
228 export GNUTLS_SYSTEM_PRIORITY_FAIL_ON_INVALID=1
229
230@@ -38,15 +37,33 @@ cat <<_EOF_ > ${CONF}
231 allow-rsa-pkcs1-encrypt = true
232 _EOF_
233
234-${TEST} && fail "RSAES-PKCS1-v1_5 expected to succeed"
235+${TEST}
236+if [ $? != 0 ]; then
237+ echo "${TEST} expected to succeed"
238+ exit 1
239+fi
240+echo "RSAES-PKCS1-v1_5 successfully enabled"
241
242 cat <<_EOF_ > ${CONF}
243 [overrides]
244 allow-rsa-pkcs1-encrypt = false
245 _EOF_
246
247-${TEST} || fail "RSAES-PKCS1-v1_5 expected to fail"
248+${TEST}
249+if [ $? = 0 ]; then
250+ echo "${TEST} expected to fail"
251+ exit 1
252+fi
253+echo "RSAES-PKCS1-v1_5 successfully disabled"
254
255 unset GNUTLS_SYSTEM_PRIORITY_FILE
256 unset GNUTLS_SYSTEM_PRIORITY_FAIL_ON_INVALID
257+
258+${TEST}
259+if [ $? != 0 ]; then
260+ echo "${TEST} expected to succeed by default"
261+ exit 1
262+fi
263+echo "RSAES-PKCS1-v1_5 successfully enabled by default"
264+
265 exit 0
266--
267GitLab
268
269
diff --git a/meta/recipes-support/gnutls/gnutls/Add-ptest-support.patch b/meta/recipes-support/gnutls/gnutls/Add-ptest-support.patch
new file mode 100644
index 0000000000..8edd31d6b9
--- /dev/null
+++ b/meta/recipes-support/gnutls/gnutls/Add-ptest-support.patch
@@ -0,0 +1,57 @@
1From bfa70adcbda4e505cf2e597907852e78e0439ee2 Mon Sep 17 00:00:00 2001
2From: Ravineet Singh <ravineet.a.singh@est.tech>
3Date: Tue, 10 Jan 2023 16:11:10 +0100
4Subject: [PATCH] gnutls: add ptest support
5
6Upstream-Status: Inappropriate [embedded specific]
7Signed-off-by: Ravineet Singh <ravineet.a.singh@est.tech>
8---
9 Makefile.am | 3 +++
10 configure.ac | 2 ++
11 tests/Makefile.am | 6 ++++++
12 3 files changed, 11 insertions(+)
13
14diff --git a/Makefile.am b/Makefile.am
15index 843193f..816b09f 100644
16--- a/Makefile.am
17+++ b/Makefile.am
18@@ -191,6 +191,9 @@ dist-hook:
19 mv ChangeLog $(distdir)
20 touch -c $(distdir)/doc/*.html $(distdir)/doc/*.pdf $(distdir)/doc/*.info
21
22+install-ptest:
23+ $(MAKE) -C tests DESTDIR=$(DESTDIR)/tests $@
24+
25 .PHONY: abi-check abi-dump-versioned abi-dump-latest pic-check symbol-check local-code-coverage-output files-update AUTHORS
26
27 include $(top_srcdir)/cligen/cligen.mk
28diff --git a/configure.ac b/configure.ac
29index 934377e..4406eae 100644
30--- a/configure.ac
31+++ b/configure.ac
32@@ -1213,6 +1213,8 @@ AC_SUBST(LIBGNUTLS_CFLAGS)
33
34 AM_CONDITIONAL(NEEDS_LIBRT, test "$gnutls_needs_librt" = "yes")
35
36+AM_EXTRA_RECURSIVE_TARGETS([buildtest-TESTS])
37+
38 AC_DEFINE([GNUTLS_INTERNAL_BUILD], 1, [We allow temporarily usage of deprecated functions - until they are removed.])
39
40 hw_features=
41diff --git a/tests/Makefile.am b/tests/Makefile.am
42index e39a3b3..861dd63 100644
43--- a/tests/Makefile.am
44+++ b/tests/Makefile.am
45@@ -663,6 +663,12 @@ SH_LOG_COMPILER = $(SHELL)
46 AM_VALGRINDFLAGS = --suppressions=$(srcdir)/suppressions.valgrind
47 LOG_COMPILER = $(LOG_VALGRIND)
48
49+install-ptest: $(check_PROGRAMS)
50+ @$(INSTALL) -d $(DESTDIR)
51+ @for file in $^; do \
52+ $(INSTALL_PROGRAM) $$file $(DESTDIR) ; \
53+ done
54+
55 distclean-local:
56 rm -rf softhsm-*.db softhsm-*.config *.tmp tmp-* x509-crt-list-import-url.config.db port.lock.d
57
diff --git a/meta/recipes-support/gnutls/gnutls/arm_eabi.patch b/meta/recipes-support/gnutls/gnutls/arm_eabi.patch
index 6eb1edbdb1..883d0123db 100644
--- a/meta/recipes-support/gnutls/gnutls/arm_eabi.patch
+++ b/meta/recipes-support/gnutls/gnutls/arm_eabi.patch
@@ -1,4 +1,4 @@
1From 8a5c96057cf305bbeac0d6e0e59ee24fbb9497fe Mon Sep 17 00:00:00 2001 1From d17ae0ef31c3c186766a338e8c40c87d1b98820e Mon Sep 17 00:00:00 2001
2From: Joe Slater <jslater@windriver.com> 2From: Joe Slater <jslater@windriver.com>
3Date: Wed, 25 Jan 2017 13:52:59 -0800 3Date: Wed, 25 Jan 2017 13:52:59 -0800
4Subject: [PATCH] gnutls: account for ARM_EABI 4Subject: [PATCH] gnutls: account for ARM_EABI
@@ -9,16 +9,15 @@ reference to them.
9Upstream-Status: Pending 9Upstream-Status: Pending
10 10
11Signed-off-by: Joe Slater <jslater@windriver.com> 11Signed-off-by: Joe Slater <jslater@windriver.com>
12
13--- 12---
14 tests/seccomp.c | 2 ++ 13 tests/seccomp.c | 2 ++
15 1 file changed, 2 insertions(+) 14 1 file changed, 2 insertions(+)
16 15
17diff --git a/tests/seccomp.c b/tests/seccomp.c 16diff --git a/tests/seccomp.c b/tests/seccomp.c
18index ed14d00..3c5b726 100644 17index 881f0bb..5f9204a 100644
19--- a/tests/seccomp.c 18--- a/tests/seccomp.c
20+++ b/tests/seccomp.c 19+++ b/tests/seccomp.c
21@@ -53,7 +53,9 @@ int disable_system_calls(void) 20@@ -55,7 +55,9 @@ int disable_system_calls(void)
22 21
23 ADD_SYSCALL(nanosleep, 0); 22 ADD_SYSCALL(nanosleep, 0);
24 ADD_SYSCALL(clock_nanosleep, 0); 23 ADD_SYSCALL(clock_nanosleep, 0);
diff --git a/meta/recipes-support/gnutls/gnutls/run-ptest b/meta/recipes-support/gnutls/gnutls/run-ptest
new file mode 100644
index 0000000000..17e26eae70
--- /dev/null
+++ b/meta/recipes-support/gnutls/gnutls/run-ptest
@@ -0,0 +1,100 @@
1#!/bin/sh
2
3rjob() {
4 local job=$1
5 local log=$2
6
7 # TODO: Output will be garbled
8 ./${job} >> ${log} 2>&1
9
10 ret=$?
11 case $ret in
12 0)
13 echo "PASS: $t" >> ${log}
14 echo "PASS: $t"
15 ;;
16 77)
17 echo "SKIP: $t" >> ${log}
18 echo "SKIP: $t"
19 ;;
20 *)
21 echo "FAIL: $t" >> ${log}
22 echo "FAIL: $t"
23 ;;
24 esac
25}
26
27is_disallowed() {
28 local key=$1
29 $(echo ${test_disallowlist} | grep -w -q ${key})
30 return $?
31}
32
33# TODO
34# This list should probably be in a external file
35# Testcases defined here either take very long time (dtls-stress)
36# or are dependent on local files (certs, etc) in local file system
37# currently not exported to target.
38
39test_disallowlist=""
40test_disallowlist="${test_disallowlist} dtls-stress"
41test_disallowlist="${test_disallowlist} handshake-large-cert"
42test_disallowlist="${test_disallowlist} id-on-xmppAddr"
43test_disallowlist="${test_disallowlist} mini-x509-cas"
44test_disallowlist="${test_disallowlist} pkcs12_simple"
45test_disallowlist="${test_disallowlist} protocol-set-allowlist"
46test_disallowlist="${test_disallowlist} psk-file"
47test_disallowlist="${test_disallowlist} rawpk-api"
48test_disallowlist="${test_disallowlist} set_pkcs12_cred"
49test_disallowlist="${test_disallowlist} system-override-curves-allowlist"
50test_disallowlist="${test_disallowlist} system-override-hash"
51test_disallowlist="${test_disallowlist} system-override-sig"
52test_disallowlist="${test_disallowlist} system-override-sig-tls"
53test_disallowlist="${test_disallowlist} system-prio-file"
54test_disallowlist="${test_disallowlist} x509cert-tl"
55
56LOG=${PWD}/tests.log
57cd tests
58max_njobs=$(grep -c ^processor /proc/cpuinfo)
59njobs=0
60
61set +e
62
63for t in *; do
64 [ -x $t ] || continue
65 [ -f $t ] || continue
66
67 is_disallowed ${t}
68 [ $? -eq 0 ] && continue
69
70 rjob ${t} ${LOG} &
71 one=1
72 njobs=$(expr ${njobs} + ${one})
73 if [ ${njobs} -eq ${max_njobs} ]; then
74 wait
75 njobs=0
76 fi
77done
78wait
79
80skipped=$(grep -c SKIP ${LOG})
81passed=$(grep -c PASS ${LOG})
82failed=$(grep -c FAIL ${LOG})
83total=$(expr ${passed} + ${failed} + ${skipped})
84
85if [ ${failed} -ne 0 ]; then
86 echo
87 echo "Tests failed for gnutls, log is:"
88 echo "--------------------"
89 cat ${LOG}
90 echo
91fi
92
93echo
94echo "gnutls test summary:"
95echo "--------------------"
96echo "total: ${total}"
97echo "pass : ${passed}"
98echo "fail : ${failed}"
99echo "skip : ${skipped}"
100echo
diff --git a/meta/recipes-support/gnutls/gnutls_3.7.0.bb b/meta/recipes-support/gnutls/gnutls_3.7.0.bb
deleted file mode 100644
index e3ca86b933..0000000000
--- a/meta/recipes-support/gnutls/gnutls_3.7.0.bb
+++ /dev/null
@@ -1,67 +0,0 @@
1SUMMARY = "GNU Transport Layer Security Library"
2HOMEPAGE = "http://www.gnu.org/software/gnutls/"
3BUGTRACKER = "https://savannah.gnu.org/support/?group=gnutls"
4
5LICENSE = "GPLv3+ & LGPLv2.1+"
6LICENSE_${PN} = "LGPLv2.1+"
7LICENSE_${PN}-xx = "LGPLv2.1+"
8LICENSE_${PN}-bin = "GPLv3+"
9LICENSE_${PN}-openssl = "GPLv3+"
10
11LIC_FILES_CHKSUM = "file://LICENSE;md5=71391c8e0c1cfe68077e7fce3b586283 \
12 file://doc/COPYING;md5=c678957b0c8e964aa6c70fd77641a71e \
13 file://doc/COPYING.LESSER;md5=a6f89e2100d9b6cdffcea4f398e37343"
14
15DEPENDS = "nettle gmp virtual/libiconv libunistring"
16DEPENDS_append_libc-musl = " argp-standalone"
17
18SHRT_VER = "${@d.getVar('PV').split('.')[0]}.${@d.getVar('PV').split('.')[1]}"
19
20SRC_URI = "https://www.gnupg.org/ftp/gcrypt/gnutls/v${SHRT_VER}/gnutls-${PV}.tar.xz \
21 file://arm_eabi.patch \
22 "
23
24SRC_URI[sha256sum] = "49e2a22691d252c9f24a9829b293a8f359095bc5a818351f05f1c0a5188a1df8"
25
26inherit autotools texinfo pkgconfig gettext lib_package gtk-doc
27
28PACKAGECONFIG ??= "libidn"
29
30# You must also have CONFIG_SECCOMP enabled in the kernel for
31# seccomp to work.
32PACKAGECONFIG[seccomp] = "ac_cv_libseccomp=yes,ac_cv_libseccomp=no,libseccomp"
33PACKAGECONFIG[libidn] = "--with-idn,--without-idn,libidn2"
34PACKAGECONFIG[libtasn1] = "--with-included-libtasn1=no,--with-included-libtasn1,libtasn1"
35PACKAGECONFIG[p11-kit] = "--with-p11-kit,--without-p11-kit,p11-kit"
36PACKAGECONFIG[tpm] = "--with-tpm,--without-tpm,trousers"
37
38EXTRA_OECONF = " \
39 --enable-doc \
40 --disable-libdane \
41 --disable-guile \
42 --disable-rpath \
43 --enable-local-libopts \
44 --enable-openssl-compatibility \
45 --with-libpthread-prefix=${STAGING_DIR_HOST}${prefix} \
46 --with-librt-prefix=${STAGING_DIR_HOST}${prefix} \
47 --with-default-trust-store-file=${sysconfdir}/ssl/certs/ca-certificates.crt \
48"
49
50# Otherwise the tools try and use HOSTTOOLS_DIR/bash as a shell.
51export POSIX_SHELL="${base_bindir}/sh"
52
53LDFLAGS_append_libc-musl = " -largp"
54
55do_configure_prepend() {
56 for dir in . lib; do
57 rm -f ${dir}/aclocal.m4 ${dir}/m4/libtool.m4 ${dir}/m4/lt*.m4
58 done
59}
60
61PACKAGES =+ "${PN}-openssl ${PN}-xx"
62
63FILES_${PN}-dev += "${bindir}/gnutls-cli-debug"
64FILES_${PN}-openssl = "${libdir}/libgnutls-openssl.so.*"
65FILES_${PN}-xx = "${libdir}/libgnutlsxx.so.*"
66
67BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-support/gnutls/gnutls_3.8.5.bb b/meta/recipes-support/gnutls/gnutls_3.8.5.bb
new file mode 100644
index 0000000000..52a1c00c4a
--- /dev/null
+++ b/meta/recipes-support/gnutls/gnutls_3.8.5.bb
@@ -0,0 +1,101 @@
1SUMMARY = "GNU Transport Layer Security Library"
2DESCRIPTION = "a secure communications library implementing the SSL, \
3TLS and DTLS protocols and technologies around them."
4HOMEPAGE = "https://gnutls.org/"
5BUGTRACKER = "https://savannah.gnu.org/support/?group=gnutls"
6
7LICENSE = "GPL-3.0-or-later & LGPL-2.1-or-later"
8LICENSE:${PN} = "LGPL-2.1-or-later"
9LICENSE:${PN}-xx = "LGPL-2.1-or-later"
10LICENSE:${PN}-bin = "GPL-3.0-or-later"
11LICENSE:${PN}-openssl = "GPL-3.0-or-later"
12
13LIC_FILES_CHKSUM = "file://LICENSE;md5=71391c8e0c1cfe68077e7fce3b586283 \
14 file://doc/COPYING;md5=1ebbd3e34237af26da5dc08a4e440464 \
15 file://doc/COPYING.LESSER;md5=4fbd65380cdd255951079008b364516c"
16
17DEPENDS = "nettle gmp virtual/libiconv libunistring"
18
19SHRT_VER = "${@d.getVar('PV').split('.')[0]}.${@d.getVar('PV').split('.')[1]}"
20
21SRC_URI = "https://www.gnupg.org/ftp/gcrypt/gnutls/v${SHRT_VER}/gnutls-${PV}.tar.xz \
22 file://arm_eabi.patch \
23 file://0001-Creating-.hmac-file-should-be-excuted-in-target-envi.patch \
24 file://0001-Fix-RSAES-PKCS1-v1_5-system-wide-configuration.patch \
25 file://run-ptest \
26 file://Add-ptest-support.patch \
27 "
28
29SRC_URI[sha256sum] = "66269a2cfe0e1c2dabec87bdbbd8ab656f396edd9a40dd006978e003cfa52bfc"
30
31inherit autotools texinfo pkgconfig gettext lib_package gtk-doc ptest
32
33PACKAGECONFIG ??= "libidn libtasn1 ${@bb.utils.filter('DISTRO_FEATURES', 'seccomp', d)}"
34
35# You must also have CONFIG_SECCOMP enabled in the kernel for
36# seccomp to work.
37PACKAGECONFIG[seccomp] = "--with-libseccomp-prefix=${STAGING_EXECPREFIXDIR},ac_cv_libseccomp=no,libseccomp"
38PACKAGECONFIG[libidn] = "--with-idn,--without-idn,libidn2"
39PACKAGECONFIG[libtasn1] = "--without-included-libtasn1,--with-included-libtasn1,libtasn1"
40PACKAGECONFIG[p11-kit] = "--with-p11-kit,--without-p11-kit,p11-kit"
41PACKAGECONFIG[tpm] = "--with-tpm,--without-tpm,trousers"
42PACKAGECONFIG[fips] = "--enable-fips140-mode --with-libdl-prefix=${STAGING_BASELIBDIR}"
43PACKAGECONFIG[dane] = "--enable-libdane,--disable-libdane,unbound"
44# Certificate compression
45PACKAGECONFIG[brotli] = "--with-brotli,--without-brotli,brotli"
46PACKAGECONFIG[zlib] = "--with-zlib,--without-zlib,zlib"
47PACKAGECONFIG[zstd] = "--with-zstd,--without-zstd,zstd"
48
49EXTRA_OECONF = " \
50 --enable-doc \
51 --disable-rpath \
52 --enable-openssl-compatibility \
53 --with-libpthread-prefix=${STAGING_DIR_HOST}${prefix} \
54 --with-librt-prefix=${STAGING_DIR_HOST}${prefix} \
55 --with-default-trust-store-file=${sysconfdir}/ssl/certs/ca-certificates.crt \
56"
57
58# Otherwise the tools try and use HOSTTOOLS_DIR/bash as a shell.
59export POSIX_SHELL="${base_bindir}/sh"
60
61do_configure:prepend() {
62 for dir in . lib; do
63 rm -f ${dir}/aclocal.m4 ${dir}/m4/libtool.m4 ${dir}/m4/lt*.m4
64 done
65}
66
67do_compile_ptest() {
68 oe_runmake -C tests buildtest-TESTS
69}
70
71do_install:append:class-target() {
72 if ${@bb.utils.contains('PACKAGECONFIG', 'fips', 'true', 'false', d)}; then
73 install -d ${D}${bindir}/bin
74 install -m 0755 ${B}/lib/.libs/fipshmac ${D}/${bindir}/
75 fi
76}
77
78PACKAGES =+ "${PN}-dane ${PN}-openssl ${PN}-xx ${PN}-fips"
79
80FILES:${PN}-dev += "${bindir}/gnutls-cli-debug"
81
82FILES:${PN}-dane = "${libdir}/libgnutls-dane.so.*"
83FILES:${PN}-openssl = "${libdir}/libgnutls-openssl.so.*"
84FILES:${PN}-xx = "${libdir}/libgnutlsxx.so.*"
85FILES:${PN}-fips = "${bindir}/fipshmac"
86
87RDEPENDS:${PN}-ptest += "python3"
88
89BBCLASSEXTEND = "native nativesdk"
90
91pkg_postinst_ontarget:${PN}-fips () {
92 if test -x ${bindir}/fipshmac
93 then
94 mkdir ${sysconfdir}/gnutls
95 touch ${sysconfdir}/gnutls/config
96 ${bindir}/fipshmac ${libdir}/libgnutls.so.30.*.* > ${libdir}/.libgnutls.so.30.hmac
97 ${bindir}/fipshmac ${libdir}/libnettle.so.8.* > ${libdir}/.libnettle.so.8.hmac
98 ${bindir}/fipshmac ${libdir}/libgmp.so.10.*.* > ${libdir}/.libgmp.so.10.hmac
99 ${bindir}/fipshmac ${libdir}/libhogweed.so.6.* > ${libdir}/.libhogweed.so.6.hmac
100 fi
101}
diff --git a/meta/recipes-support/gnutls/libtasn1/dont-depend-on-help2man.patch b/meta/recipes-support/gnutls/libtasn1/dont-depend-on-help2man.patch
index 2ac89f3b32..216d636793 100644
--- a/meta/recipes-support/gnutls/libtasn1/dont-depend-on-help2man.patch
+++ b/meta/recipes-support/gnutls/libtasn1/dont-depend-on-help2man.patch
@@ -1,14 +1,26 @@
1From 629fc6427710e48b78f8b1f300dd698fe898cfd4 Mon Sep 17 00:00:00 2001
2From: Marko Lindqvist <cazfi74@gmail.com>
3Date: Mon, 7 Jan 2013 01:49:40 +0200
4Subject: [PATCH] libtasn1: remove help2man dependency
5
1Upstream-Status: Inappropriate 6Upstream-Status: Inappropriate
2 7
3Signed-off-by: Marko Lindqvist <cazfi74@gmail.com> 8Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
4diff -Nurd libtasn1-2.14/doc/Makefile.am libtasn1-2.14/doc/Makefile.am
5--- libtasn1-2.14/doc/Makefile.am 2012-09-24 15:08:42.000000000 +0300
6+++ libtasn1-2.14/doc/Makefile.am 2013-01-03 07:35:26.702763403 +0200
7@@ -31,7 +31,7 @@
8 AM_MAKEINFOHTMLFLAGS = $(AM_MAKEINFOFLAGS) \
9 --no-split --number-sections --css-include=texinfo.css
10 9
10---
11 doc/Makefile.am | 2 +-
12 1 file changed, 1 insertion(+), 1 deletion(-)
13
14diff --git a/doc/Makefile.am b/doc/Makefile.am
15index a0171a5..8aa4d3d 100644
16--- a/doc/Makefile.am
17+++ b/doc/Makefile.am
18@@ -28,7 +28,7 @@ libtasn1_TEXINFOS += asn1Coding-help.texi asn1Decoding-help.texi asn1Parser-help
19
20 AM_MAKEINFOHTMLFLAGS = --no-split $(AM_MAKEINFOFLAGS)
21
11-dist_man_MANS = $(gdoc_MANS) asn1Parser.1 asn1Coding.1 asn1Decoding.1 22-dist_man_MANS = $(gdoc_MANS) asn1Parser.1 asn1Coding.1 asn1Decoding.1
12+dist_man_MANS = $(gdoc_MANS) 23+dist_man_MANS = $(gdoc_MANS)
13 24
14 HELP2MAN_OPTS = --info-page libtasn1 25 HELP2MAN_OPTS = --info-page libtasn1
26
diff --git a/meta/recipes-support/gnutls/libtasn1_4.16.0.bb b/meta/recipes-support/gnutls/libtasn1_4.19.0.bb
index 18dae6d0c9..5fb8b54c06 100644
--- a/meta/recipes-support/gnutls/libtasn1_4.16.0.bb
+++ b/meta/recipes-support/gnutls/libtasn1_4.19.0.bb
@@ -1,12 +1,14 @@
1SUMMARY = "Library for ASN.1 and DER manipulation" 1SUMMARY = "Library for ASN.1 and DER manipulation"
2DESCRIPTION = "A highly portable C library that encodes and decodes \
3DER/BER data following an ASN.1 schema. "
2HOMEPAGE = "http://www.gnu.org/software/libtasn1/" 4HOMEPAGE = "http://www.gnu.org/software/libtasn1/"
3 5
4LICENSE = "GPLv3+ & LGPLv2.1+" 6LICENSE = "GPL-3.0-or-later & LGPL-2.1-or-later"
5LICENSE_${PN}-bin = "GPLv3+" 7LICENSE:${PN}-bin = "GPL-3.0-or-later"
6LICENSE_${PN} = "LGPLv2.1+" 8LICENSE:${PN} = "LGPL-2.1-or-later"
7LIC_FILES_CHKSUM = "file://doc/COPYING;md5=d32239bcb673463ab874e80d47fae504 \ 9LIC_FILES_CHKSUM = "file://doc/COPYING;md5=d32239bcb673463ab874e80d47fae504 \
8 file://doc/COPYING.LESSER;md5=4fbd65380cdd255951079008b364516c \ 10 file://doc/COPYING.LESSER;md5=4fbd65380cdd255951079008b364516c \
9 file://LICENSE;md5=75ac100ec923f959898182307970c360" 11 file://COPYING;md5=75ac100ec923f959898182307970c360"
10 12
11SRC_URI = "${GNU_MIRROR}/libtasn1/libtasn1-${PV}.tar.gz \ 13SRC_URI = "${GNU_MIRROR}/libtasn1/libtasn1-${PV}.tar.gz \
12 file://dont-depend-on-help2man.patch \ 14 file://dont-depend-on-help2man.patch \
@@ -14,8 +16,7 @@ SRC_URI = "${GNU_MIRROR}/libtasn1/libtasn1-${PV}.tar.gz \
14 16
15DEPENDS = "bison-native" 17DEPENDS = "bison-native"
16 18
17SRC_URI[md5sum] = "531208de3729d42e2af0a32890f08736" 19SRC_URI[sha256sum] = "1613f0ac1cf484d6ec0ce3b8c06d56263cc7242f1c23b30d82d23de345a63f7a"
18SRC_URI[sha256sum] = "0e0fb0903839117cb6e3b56e68222771bebf22ad7fc2295a0ed7d576e8d4329d"
19 20
20inherit autotools texinfo lib_package gtk-doc 21inherit autotools texinfo lib_package gtk-doc
21 22
diff --git a/meta/recipes-support/gpgme/gpgme/0001-Revert-build-Make-gpgme.m4-use-gpgrt-config-with-.pc.patch b/meta/recipes-support/gpgme/gpgme/0001-Revert-build-Make-gpgme.m4-use-gpgrt-config-with-.pc.patch
index 0c15cc7c38..8ed39280ca 100644
--- a/meta/recipes-support/gpgme/gpgme/0001-Revert-build-Make-gpgme.m4-use-gpgrt-config-with-.pc.patch
+++ b/meta/recipes-support/gpgme/gpgme/0001-Revert-build-Make-gpgme.m4-use-gpgrt-config-with-.pc.patch
@@ -1,4 +1,4 @@
1From a001b3c23bf80fd752044615b9bba6b926ff9666 Mon Sep 17 00:00:00 2001 1From ee1421f7a7a9f31400ba992a5be52b88d20170c9 Mon Sep 17 00:00:00 2001
2From: Hongxu Jia <hongxu.jia@windriver.com> 2From: Hongxu Jia <hongxu.jia@windriver.com>
3Date: Fri, 10 May 2019 14:18:04 +0800 3Date: Fri, 10 May 2019 14:18:04 +0800
4Subject: [PATCH] Revert "build: Make gpgme.m4 use gpgrt-config with *.pc." 4Subject: [PATCH] Revert "build: Make gpgme.m4 use gpgrt-config with *.pc."
@@ -10,36 +10,21 @@ The oe-core does not support gpgrt-config, so revert it
10Upstream-Status: Inappropriate [oe-core specific] 10Upstream-Status: Inappropriate [oe-core specific]
11 11
12Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> 12Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
13
13--- 14---
14 src/gpgme.m4 | 58 +++++++++------------------------------------------- 15 src/gpgme.m4 | 54 ++++++++--------------------------------------------
15 1 file changed, 10 insertions(+), 48 deletions(-) 16 1 file changed, 8 insertions(+), 46 deletions(-)
16 17
17diff --git a/src/gpgme.m4 b/src/gpgme.m4 18diff --git a/src/gpgme.m4 b/src/gpgme.m4
18index c749a5d..8579146 100644 19index f2906c1..8cc2898 100644
19--- a/src/gpgme.m4 20--- a/src/gpgme.m4
20+++ b/src/gpgme.m4 21+++ b/src/gpgme.m4
21@@ -1,5 +1,5 @@ 22@@ -125,24 +125,10 @@ AC_REQUIRE([_AM_PATH_GPGRT_CONFIG])dnl
22 # gpgme.m4 - autoconf macro to detect GPGME.
23-# Copyright (C) 2002, 2003, 2004, 2014, 2018 g10 Code GmbH
24+# Copyright (C) 2002, 2003, 2004, 2014 g10 Code GmbH
25 #
26 # This file is free software; as a special exception the author gives
27 # unlimited permission to copy and/or distribute it, with or without
28@@ -9,7 +9,7 @@
29 # WITHOUT ANY WARRANTY, to the extent permitted by law; without even the
30 # implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
31 #
32-# Last-changed: 2020-11-20
33+# Last-changed: 2014-10-02
34
35
36 AC_DEFUN([_AM_PATH_GPGME_CONFIG],
37@@ -36,24 +36,10 @@ AC_DEFUN([_AM_PATH_GPGME_CONFIG],
38 fi 23 fi
39 fi 24 fi
40 25
41- use_gpgrt_config="" 26- use_gpgrt_config=""
42- if test x"${GPGME_CONFIG}" = x -a x"$GPGRT_CONFIG" != x -a "$GPGRT_CONFIG" != "no"; then 27- if test x"$GPGRT_CONFIG" != x -a "$GPGRT_CONFIG" != "no"; then
43- if $GPGRT_CONFIG gpgme --exists; then 28- if $GPGRT_CONFIG gpgme --exists; then
44- GPGME_CONFIG="$GPGRT_CONFIG gpgme" 29- GPGME_CONFIG="$GPGRT_CONFIG gpgme"
45- AC_MSG_NOTICE([Use gpgrt-config as gpgme-config]) 30- AC_MSG_NOTICE([Use gpgrt-config as gpgme-config])
@@ -61,7 +46,7 @@ index c749a5d..8579146 100644
61 fi 46 fi
62 gpgme_version_major=`echo $gpgme_version | \ 47 gpgme_version_major=`echo $gpgme_version | \
63 sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\).*/\1/'` 48 sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\).*/\1/'`
64@@ -66,16 +52,12 @@ AC_DEFUN([_AM_PATH_GPGME_CONFIG], 49@@ -155,16 +141,12 @@ AC_REQUIRE([_AM_PATH_GPGRT_CONFIG])dnl
65 50
66 AC_DEFUN([_AM_PATH_GPGME_CONFIG_HOST_CHECK], 51 AC_DEFUN([_AM_PATH_GPGME_CONFIG_HOST_CHECK],
67 [ 52 [
@@ -80,7 +65,7 @@ index c749a5d..8579146 100644
80 *** built for $gpgme_config_host and thus may not match the 65 *** built for $gpgme_config_host and thus may not match the
81 *** used host $host. 66 *** used host $host.
82 *** You may want to use the configure option --with-gpgme-prefix 67 *** You may want to use the configure option --with-gpgme-prefix
83@@ -136,11 +118,7 @@ AC_DEFUN([AM_PATH_GPGME], 68@@ -225,11 +207,7 @@ AC_DEFUN([AM_PATH_GPGME],
84 # If we have a recent GPGME, we should also check that the 69 # If we have a recent GPGME, we should also check that the
85 # API is compatible. 70 # API is compatible.
86 if test "$req_gpgme_api" -gt 0 ; then 71 if test "$req_gpgme_api" -gt 0 ; then
@@ -93,7 +78,7 @@ index c749a5d..8579146 100644
93 if test "$tmp" -gt 0 ; then 78 if test "$tmp" -gt 0 ; then
94 if test "$req_gpgme_api" -ne "$tmp" ; then 79 if test "$req_gpgme_api" -ne "$tmp" ; then
95 ok=no 80 ok=no
96@@ -280,11 +258,7 @@ AC_DEFUN([AM_PATH_GPGME_GLIB], 81@@ -372,11 +350,7 @@ AC_DEFUN([AM_PATH_GPGME_GLIB],
97 # If we have a recent GPGME, we should also check that the 82 # If we have a recent GPGME, we should also check that the
98 # API is compatible. 83 # API is compatible.
99 if test "$req_gpgme_api" -gt 0 ; then 84 if test "$req_gpgme_api" -gt 0 ; then
@@ -106,7 +91,7 @@ index c749a5d..8579146 100644
106 if test "$tmp" -gt 0 ; then 91 if test "$tmp" -gt 0 ; then
107 if test "$req_gpgme_api" -ne "$tmp" ; then 92 if test "$req_gpgme_api" -ne "$tmp" ; then
108 ok=no 93 ok=no
109@@ -293,20 +267,8 @@ AC_DEFUN([AM_PATH_GPGME_GLIB], 94@@ -385,20 +359,8 @@ AC_DEFUN([AM_PATH_GPGME_GLIB],
110 fi 95 fi
111 fi 96 fi
112 if test $ok = yes; then 97 if test $ok = yes; then
@@ -129,6 +114,3 @@ index c749a5d..8579146 100644
129 AC_MSG_RESULT(yes) 114 AC_MSG_RESULT(yes)
130 ifelse([$2], , :, [$2]) 115 ifelse([$2], , :, [$2])
131 _AM_PATH_GPGME_CONFIG_HOST_CHECK 116 _AM_PATH_GPGME_CONFIG_HOST_CHECK
132--
1332.25.1
134
diff --git a/meta/recipes-support/gpgme/gpgme/0001-autogen.sh-remove-unknown-in-version.patch b/meta/recipes-support/gpgme/gpgme/0001-autogen.sh-remove-unknown-in-version.patch
new file mode 100644
index 0000000000..6d67e6d6c9
--- /dev/null
+++ b/meta/recipes-support/gpgme/gpgme/0001-autogen.sh-remove-unknown-in-version.patch
@@ -0,0 +1,32 @@
1From acc4750ffa79a5c2ef3c95cf31ef51352a68837b Mon Sep 17 00:00:00 2001
2From: Chen Qi <Qi.Chen@windriver.com>
3Date: Tue, 28 Feb 2023 13:43:51 +0800
4Subject: [PATCH] autogen.sh: remove '-unknown' in version
5
6python setuptools >=66.0.0 treats '-unknown' as an invalid version.
7The error message is as below:
8 pkg_resources.extern.packaging.version.InvalidVersion: Invalid version: '1.18.0-unknown'
9
10Remove the '-unknown' suffix to fix this issue.
11
12Upstream-Status: Submitted [https://lists.gnupg.org/pipermail/gnupg-devel/2023-February/035293.html]
13
14Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
15
16---
17 autogen.sh | 2 +-
18 1 file changed, 1 insertion(+), 1 deletion(-)
19
20diff --git a/autogen.sh b/autogen.sh
21index 4e1665b..a55326d 100755
22--- a/autogen.sh
23+++ b/autogen.sh
24@@ -269,7 +269,7 @@ if [ "$myhost" = "find-version" ]; then
25 else
26 ingit=no
27 beta=yes
28- tmp="-unknown"
29+ tmp=""
30 rev="0000000"
31 rvd="0"
32 fi
diff --git a/meta/recipes-support/gpgme/gpgme/0001-pkgconfig.patch b/meta/recipes-support/gpgme/gpgme/0001-pkgconfig.patch
index 827d95a151..831771ca2d 100644
--- a/meta/recipes-support/gpgme/gpgme/0001-pkgconfig.patch
+++ b/meta/recipes-support/gpgme/gpgme/0001-pkgconfig.patch
@@ -1,4 +1,4 @@
1From 98ce65902b197faa8f660564613ca2e504c2f8f8 Mon Sep 17 00:00:00 2001 1From 7b3a00cb0fc27c896dd85c9afc474bd9c2aea30d Mon Sep 17 00:00:00 2001
2From: Richard Purdie <richard.purdie@linuxfoundation.org> 2From: Richard Purdie <richard.purdie@linuxfoundation.org>
3Date: Fri, 10 May 2019 14:23:55 +0800 3Date: Fri, 10 May 2019 14:23:55 +0800
4Subject: [PATCH] pkgconfig 4Subject: [PATCH] pkgconfig
@@ -12,22 +12,24 @@ RP 2015/4/17
12Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> 12Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
13 13
14Rebase to 1.13.0 14Rebase to 1.13.0
15
16Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> 15Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
16Rebase to 1.17.0
17Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
18
17--- 19---
18 configure.ac | 1 + 20 configure.ac | 1 +
19 src/Makefile.am | 4 +- 21 src/Makefile.am | 4 +-
20 src/gpgme-pthread.pc.in | 15 +++++++ 22 src/gpgme-pthread.pc.in | 15 +++++
21 src/gpgme.m4 | 114 ++++-------------------------------------------- 23 src/gpgme.m4 | 119 +++-------------------------------------
22 src/gpgme.pc.in | 4 +- 24 src/gpgme.pc.in | 4 +-
23 5 files changed, 28 insertions(+), 110 deletions(-) 25 5 files changed, 29 insertions(+), 114 deletions(-)
24 create mode 100644 src/gpgme-pthread.pc.in 26 create mode 100644 src/gpgme-pthread.pc.in
25 27
26diff --git a/configure.ac b/configure.ac 28diff --git a/configure.ac b/configure.ac
27index 25184f4..1c0a386 100644 29index ae4c7da..df892c9 100644
28--- a/configure.ac 30--- a/configure.ac
29+++ b/configure.ac 31+++ b/configure.ac
30@@ -899,6 +899,7 @@ AC_CONFIG_FILES(Makefile src/Makefile 32@@ -1112,6 +1112,7 @@ AC_CONFIG_FILES(Makefile src/Makefile
31 src/gpgme-glib.pc 33 src/gpgme-glib.pc
32 src/gpgme.h) 34 src/gpgme.h)
33 AC_CONFIG_FILES(src/gpgme-config, chmod +x src/gpgme-config) 35 AC_CONFIG_FILES(src/gpgme-config, chmod +x src/gpgme-config)
@@ -36,7 +38,7 @@ index 25184f4..1c0a386 100644
36 AC_CONFIG_FILES(lang/cpp/tests/Makefile) 38 AC_CONFIG_FILES(lang/cpp/tests/Makefile)
37 AC_CONFIG_FILES(lang/cpp/src/GpgmeppConfig-w32.cmake.in) 39 AC_CONFIG_FILES(lang/cpp/src/GpgmeppConfig-w32.cmake.in)
38diff --git a/src/Makefile.am b/src/Makefile.am 40diff --git a/src/Makefile.am b/src/Makefile.am
39index d85a85c..d942f3e 100644 41index ca70950..bda5498 100644
40--- a/src/Makefile.am 42--- a/src/Makefile.am
41+++ b/src/Makefile.am 43+++ b/src/Makefile.am
42@@ -20,11 +20,11 @@ 44@@ -20,11 +20,11 @@
@@ -51,8 +53,8 @@ index d85a85c..d942f3e 100644
51- gpgme.pc.in gpgme-glib.pc.in 53- gpgme.pc.in gpgme-glib.pc.in
52+ gpgme.pc.in gpgme-glib.pc.in gpgme-pthread.pc.in 54+ gpgme.pc.in gpgme-glib.pc.in gpgme-pthread.pc.in
53 55
54 bin_SCRIPTS = gpgme-config 56 if USE_GPGRT_CONFIG
55 m4datadir = $(datadir)/aclocal 57 noinst_SCRIPTS = gpgme-config
56diff --git a/src/gpgme-pthread.pc.in b/src/gpgme-pthread.pc.in 58diff --git a/src/gpgme-pthread.pc.in b/src/gpgme-pthread.pc.in
57new file mode 100644 59new file mode 100644
58index 0000000..074bbf6 60index 0000000..074bbf6
@@ -75,10 +77,10 @@ index 0000000..074bbf6
75+Cflags: -I${includedir} 77+Cflags: -I${includedir}
76+Requires: libassuan gpg-error 78+Requires: libassuan gpg-error
77diff --git a/src/gpgme.m4 b/src/gpgme.m4 79diff --git a/src/gpgme.m4 b/src/gpgme.m4
78index 6c2be44..d8a75cb 100644 80index 8cc2898..0ff550e 100644
79--- a/src/gpgme.m4 81--- a/src/gpgme.m4
80+++ b/src/gpgme.m4 82+++ b/src/gpgme.m4
81@@ -79,7 +79,7 @@ dnl config script does not match the host specification the script 83@@ -168,7 +168,7 @@ dnl config script does not match the host specification the script
82 dnl is added to the gpg_config_script_warn variable. 84 dnl is added to the gpg_config_script_warn variable.
83 dnl 85 dnl
84 AC_DEFUN([AM_PATH_GPGME], 86 AC_DEFUN([AM_PATH_GPGME],
@@ -87,7 +89,7 @@ index 6c2be44..d8a75cb 100644
87 tmp=ifelse([$1], ,1:0.4.2,$1) 89 tmp=ifelse([$1], ,1:0.4.2,$1)
88 if echo "$tmp" | grep ':' >/dev/null 2>/dev/null ; then 90 if echo "$tmp" | grep ':' >/dev/null 2>/dev/null ; then
89 req_gpgme_api=`echo "$tmp" | sed 's/\(.*\):\(.*\)/\1/'` 91 req_gpgme_api=`echo "$tmp" | sed 's/\(.*\):\(.*\)/\1/'`
90@@ -89,36 +89,12 @@ AC_DEFUN([AM_PATH_GPGME], 92@@ -178,36 +178,12 @@ AC_DEFUN([AM_PATH_GPGME],
91 min_gpgme_version="$tmp" 93 min_gpgme_version="$tmp"
92 fi 94 fi
93 95
@@ -126,7 +128,7 @@ index 6c2be44..d8a75cb 100644
126 if test "$tmp" -gt 0 ; then 128 if test "$tmp" -gt 0 ; then
127 if test "$req_gpgme_api" -ne "$tmp" ; then 129 if test "$req_gpgme_api" -ne "$tmp" ; then
128 ok=no 130 ok=no
129@@ -127,19 +103,11 @@ AC_DEFUN([AM_PATH_GPGME], 131@@ -216,19 +192,11 @@ AC_DEFUN([AM_PATH_GPGME],
130 fi 132 fi
131 fi 133 fi
132 if test $ok = yes; then 134 if test $ok = yes; then
@@ -146,44 +148,45 @@ index 6c2be44..d8a75cb 100644
146 ]) 148 ])
147 149
148 dnl AM_PATH_GPGME_PTHREAD([MINIMUM-VERSION, 150 dnl AM_PATH_GPGME_PTHREAD([MINIMUM-VERSION,
149@@ -148,7 +116,7 @@ dnl Test for libgpgme and define GPGME_PTHREAD_CFLAGS 151@@ -236,9 +204,8 @@ dnl [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND ]]])
152 dnl Test for libgpgme and define GPGME_PTHREAD_CFLAGS
150 dnl and GPGME_PTHREAD_LIBS. 153 dnl and GPGME_PTHREAD_LIBS.
151 dnl 154 dnl
152 AC_DEFUN([AM_PATH_GPGME_PTHREAD], 155-AC_DEFUN([AM_PATH_GPGME_PTHREAD],[
153-[ AC_REQUIRE([_AM_PATH_GPGME_CONFIG])dnl 156- AC_OBSOLETE([$0], [; use AM_PATH_GPGME instead to use GPGME_CFLAGS and GPGME_LIBS])dnl
157- AC_REQUIRE([_AM_PATH_GPGME_CONFIG])dnl
158+AC_DEFUN([AM_PATH_GPGME_PTHREAD],
154+[ 159+[
155 tmp=ifelse([$1], ,1:0.4.2,$1) 160 tmp=ifelse([$1], ,1:0.4.2,$1)
156 if echo "$tmp" | grep ':' >/dev/null 2>/dev/null ; then 161 if echo "$tmp" | grep ':' >/dev/null 2>/dev/null ; then
157 req_gpgme_api=`echo "$tmp" | sed 's/\(.*\):\(.*\)/\1/'` 162 req_gpgme_api=`echo "$tmp" | sed 's/\(.*\):\(.*\)/\1/'`
158@@ -158,38 +126,12 @@ AC_DEFUN([AM_PATH_GPGME_PTHREAD], 163@@ -248,40 +215,12 @@ AC_DEFUN([AM_PATH_GPGME_PTHREAD],[
159 min_gpgme_version="$tmp" 164 min_gpgme_version="$tmp"
160 fi 165 fi
161 166
162- AC_MSG_CHECKING(for GPGME pthread - version >= $min_gpgme_version) 167- AC_MSG_CHECKING(for GPGME pthread - version >= $min_gpgme_version)
163- ok=no 168- ok=no
164- if test "$GPGME_CONFIG" != "no" ; then 169- if test "$GPGME_CONFIG" != "no" ; then
165- if `$GPGME_CONFIG --thread=pthread 2> /dev/null` ; then 170- req_major=`echo $min_gpgme_version | \
166- req_major=`echo $min_gpgme_version | \
167- sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\)/\1/'` 171- sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\)/\1/'`
168- req_minor=`echo $min_gpgme_version | \ 172- req_minor=`echo $min_gpgme_version | \
169- sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\)/\2/'` 173- sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\)/\2/'`
170- req_micro=`echo $min_gpgme_version | \ 174- req_micro=`echo $min_gpgme_version | \
171- sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\)/\3/'` 175- sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\)/\3/'`
172- if test "$gpgme_version_major" -gt "$req_major"; then 176- if test "$gpgme_version_major" -gt "$req_major"; then
173- ok=yes 177- ok=yes
174- else 178- else
175- if test "$gpgme_version_major" -eq "$req_major"; then 179- if test "$gpgme_version_major" -eq "$req_major"; then
176- if test "$gpgme_version_minor" -gt "$req_minor"; then 180- if test "$gpgme_version_minor" -gt "$req_minor"; then
177- ok=yes 181- ok=yes
178- else 182- else
179- if test "$gpgme_version_minor" -eq "$req_minor"; then 183- if test "$gpgme_version_minor" -eq "$req_minor"; then
180- if test "$gpgme_version_micro" -ge "$req_micro"; then 184- if test "$gpgme_version_micro" -ge "$req_micro"; then
181- ok=yes 185- ok=yes
182- fi 186- fi
187- fi
183- fi 188- fi
184- fi
185- fi 189- fi
186- fi
187- fi 190- fi
188- fi 191- fi
189+ PKG_CHECK_MODULES(GPGME_PTHREAD, [gpgme-pthread >= $min_gpgme_version], [ok=yes], [ok=no]) 192+ PKG_CHECK_MODULES(GPGME_PTHREAD, [gpgme-pthread >= $min_gpgme_version], [ok=yes], [ok=no])
@@ -191,17 +194,21 @@ index 6c2be44..d8a75cb 100644
191 # If we have a recent GPGME, we should also check that the 194 # If we have a recent GPGME, we should also check that the
192 # API is compatible. 195 # API is compatible.
193 if test "$req_gpgme_api" -gt 0 ; then 196 if test "$req_gpgme_api" -gt 0 ; then
194- tmp=`$GPGME_CONFIG --api-version 2>/dev/null || echo 0` 197- if test -z "$use_gpgrt_config"; then
198- tmp=`$GPGME_CONFIG --api-version 2>/dev/null || echo 0`
199- else
200- tmp=`$GPGME_CONFIG --variable=api_version 2>/dev/null || echo 0`
201- fi
195+ tmp=`$PKG_CONFIG --variable=api_version gpgme-pthread 2>/dev/null || echo 0` 202+ tmp=`$PKG_CONFIG --variable=api_version gpgme-pthread 2>/dev/null || echo 0`
196 if test "$tmp" -gt 0 ; then 203 if test "$tmp" -gt 0 ; then
197 if test "$req_gpgme_api" -ne "$tmp" ; then 204 if test "$req_gpgme_api" -ne "$tmp" ; then
198 ok=no 205 ok=no
199@@ -198,19 +140,11 @@ AC_DEFUN([AM_PATH_GPGME_PTHREAD], 206@@ -290,19 +229,11 @@ AC_DEFUN([AM_PATH_GPGME_PTHREAD],[
200 fi 207 fi
201 fi 208 fi
202 if test $ok = yes; then 209 if test $ok = yes; then
203- GPGME_PTHREAD_CFLAGS=`$GPGME_CONFIG --thread=pthread --cflags` 210- GPGME_PTHREAD_CFLAGS=`$GPGME_CONFIG --cflags`
204- GPGME_PTHREAD_LIBS=`$GPGME_CONFIG --thread=pthread --libs` 211- GPGME_PTHREAD_LIBS=`$GPGME_CONFIG --libs`
205- AC_MSG_RESULT(yes) 212- AC_MSG_RESULT(yes)
206 ifelse([$2], , :, [$2]) 213 ifelse([$2], , :, [$2])
207 _AM_PATH_GPGME_CONFIG_HOST_CHECK 214 _AM_PATH_GPGME_CONFIG_HOST_CHECK
@@ -216,7 +223,7 @@ index 6c2be44..d8a75cb 100644
216 ]) 223 ])
217 224
218 225
219@@ -229,36 +163,12 @@ AC_DEFUN([AM_PATH_GPGME_GLIB], 226@@ -321,36 +252,12 @@ AC_DEFUN([AM_PATH_GPGME_GLIB],
220 min_gpgme_version="$tmp" 227 min_gpgme_version="$tmp"
221 fi 228 fi
222 229
@@ -255,7 +262,7 @@ index 6c2be44..d8a75cb 100644
255 if test "$tmp" -gt 0 ; then 262 if test "$tmp" -gt 0 ; then
256 if test "$req_gpgme_api" -ne "$tmp" ; then 263 if test "$req_gpgme_api" -ne "$tmp" ; then
257 ok=no 264 ok=no
258@@ -267,17 +177,9 @@ AC_DEFUN([AM_PATH_GPGME_GLIB], 265@@ -359,17 +266,9 @@ AC_DEFUN([AM_PATH_GPGME_GLIB],
259 fi 266 fi
260 fi 267 fi
261 if test $ok = yes; then 268 if test $ok = yes; then
@@ -274,18 +281,15 @@ index 6c2be44..d8a75cb 100644
274- AC_SUBST(GPGME_GLIB_LIBS) 281- AC_SUBST(GPGME_GLIB_LIBS)
275 ]) 282 ])
276diff --git a/src/gpgme.pc.in b/src/gpgme.pc.in 283diff --git a/src/gpgme.pc.in b/src/gpgme.pc.in
277index be288b8..16f56ac 100644 284index 9ddef5c..932645b 100644
278--- a/src/gpgme.pc.in 285--- a/src/gpgme.pc.in
279+++ b/src/gpgme.pc.in 286+++ b/src/gpgme.pc.in
280@@ -9,6 +9,6 @@ Name: gpgme 287@@ -9,6 +9,6 @@ Name: gpgme
281 Description: GnuPG Made Easy to access GnuPG 288 Description: GnuPG Made Easy to access GnuPG
282 Requires: gpg-error, libassuan 289 Requires.private: gpg-error, libassuan
283 Version: @PACKAGE_VERSION@ 290 Version: @PACKAGE_VERSION@
284-Cflags: @GPGME_CONFIG_CFLAGS@ 291-Cflags: @GPGME_CONFIG_CFLAGS@
285-Libs: @GPGME_CONFIG_LIBS@ 292-Libs: @GPGME_CONFIG_LIBS@
286+Cflags: -I${includedir} 293+Cflags: -I${includedir}
287+Libs: -L${libdir} -lgpgme 294+Libs: -L${libdir} -lgpgme
288 URL: https://www.gnupg.org/software/gpgme/index.html 295 URL: https://www.gnupg.org/software/gpgme/index.html
289--
2902.7.4
291
diff --git a/meta/recipes-support/gpgme/gpgme/0001-posix-io.c-Use-off_t-instead-of-off64_t.patch b/meta/recipes-support/gpgme/gpgme/0001-posix-io.c-Use-off_t-instead-of-off64_t.patch
new file mode 100644
index 0000000000..be58c42128
--- /dev/null
+++ b/meta/recipes-support/gpgme/gpgme/0001-posix-io.c-Use-off_t-instead-of-off64_t.patch
@@ -0,0 +1,42 @@
1From be33cf1812b4c2a3ed85fb2532992bfb2b27b3be Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Thu, 15 Dec 2022 08:44:13 -0800
4Subject: [PATCH] posix-io.c: Use off_t instead of off64_t
5
6configure.ac checks for largefile support via AC_SYS_LARGEFILE already,
7therefore use off_t and ino_t instead of 64bit variants. Musl e.g. does
8not define them without _LARGEFILE64_SOURCE and error is not seen on
9glibc because _GNU_SOURCE defines _LARGEFILE64_SOURCE
10
11Fixes errors like below on 32-bit musl systems
12
13../../../../../../../../workspace/sources/gpgme/src/posix-io.c:77:3: error: unknown type name 'ino64_t'; did you mean 'int64_t'?
14 ino64_t d_ino;
15 ^~~~~~~
16 int64_t
17 ^
18../../../../../../../../workspace/sources/gpgme/src/posix-io.c:78:3: error: unknown type name 'off64_t'; did you mean 'off_t'?
19 off64_t d_off;
20 ^~~~~~~
21
22Upstream-Status: Submitted [https://lists.gnupg.org/pipermail/gnupg-devel/2022-December/035222.html]
23Signed-off-by: Khem Raj <raj.khem@gmail.com>
24---
25 src/posix-io.c | 4 ++--
26 1 file changed, 2 insertions(+), 2 deletions(-)
27
28diff --git a/src/posix-io.c b/src/posix-io.c
29index 0d0a98b..286a626 100644
30--- a/src/posix-io.c
31+++ b/src/posix-io.c
32@@ -74,8 +74,8 @@
33 * define it ourselves. */
34 struct linux_dirent64
35 {
36- ino64_t d_ino;
37- off64_t d_off;
38+ ino_t d_ino;
39+ off_t d_off;
40 unsigned short d_reclen;
41 unsigned char d_type;
42 char d_name[];
diff --git a/meta/recipes-support/gpgme/gpgme/0001-use-closefrom-on-linux-and-glibc-2.34.patch b/meta/recipes-support/gpgme/gpgme/0001-use-closefrom-on-linux-and-glibc-2.34.patch
new file mode 100644
index 0000000000..3d05808d63
--- /dev/null
+++ b/meta/recipes-support/gpgme/gpgme/0001-use-closefrom-on-linux-and-glibc-2.34.patch
@@ -0,0 +1,28 @@
1From e1fc4b06dcb62e1c2d85ae99f39ef1a8860570e1 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Thu, 15 Jul 2021 12:33:13 -0700
4Subject: [PATCH] use closefrom() on linux and glibc 2.34+
5
6Upstream-Status: Pending
7Signed-off-by: Khem Raj <raj.khem@gmail.com>
8
9Rebase to 1.17.0
10Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
11
12---
13 src/posix-io.c | 2 +-
14 1 file changed, 1 insertion(+), 1 deletion(-)
15
16diff --git a/src/posix-io.c b/src/posix-io.c
17index a422d8f..0d0a98b 100644
18--- a/src/posix-io.c
19+++ b/src/posix-io.c
20@@ -577,7 +577,7 @@ _gpgme_io_spawn (const char *path, char *const argv[], unsigned int flags,
21 if (fd_list[i].fd > fd)
22 fd = fd_list[i].fd;
23 fd++;
24-#if defined(__sun) || defined(__FreeBSD__) || defined(__GLIBC__)
25+#if defined(__sun) || defined(__FreeBSD__) || (defined(__GLIBC__) && __GNUC_PREREQ(2, 34))
26 closefrom (fd);
27 max_fds = fd;
28 #else /*!__sun */
diff --git a/meta/recipes-support/gpgme/gpgme/0002-gpgme-lang-python-gpg-error-config-should-not-be-use.patch b/meta/recipes-support/gpgme/gpgme/0002-gpgme-lang-python-gpg-error-config-should-not-be-use.patch
index ecd1793ab9..0d2692912f 100644
--- a/meta/recipes-support/gpgme/gpgme/0002-gpgme-lang-python-gpg-error-config-should-not-be-use.patch
+++ b/meta/recipes-support/gpgme/gpgme/0002-gpgme-lang-python-gpg-error-config-should-not-be-use.patch
@@ -1,7 +1,7 @@
1From 52f8fd2010b900c7d382a7c4e6c1a317d8160585 Mon Sep 17 00:00:00 2001 1From 9fce0689bc04506e5758444efa24ea99fe1ff5ef Mon Sep 17 00:00:00 2001
2From: Hongxu Jia <hongxu.jia@windriver.com> 2From: Hongxu Jia <hongxu.jia@windriver.com>
3Date: Fri, 10 May 2019 14:30:36 +0800 3Date: Fri, 10 May 2019 14:30:36 +0800
4Subject: [PATCH 2/7] gpgme/lang/python: gpg-error-config should not be used 4Subject: [PATCH] gpgme/lang/python: gpg-error-config should not be used
5 5
6gpg-error-config was modified by OE to always return an error. 6gpg-error-config was modified by OE to always return an error.
7So we want to find an alternative way to retrieve whatever it 7So we want to find an alternative way to retrieve whatever it
@@ -14,39 +14,23 @@ Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
14Rebase to 1.13.0 14Rebase to 1.13.0
15 15
16Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> 16Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
17
17--- 18---
18 lang/python/setup.py.in | 9 +-------- 19 lang/python/setup.py.in | 3 +--
19 1 file changed, 1 insertion(+), 8 deletions(-) 20 1 file changed, 1 insertion(+), 2 deletions(-)
20 21
21diff --git a/lang/python/setup.py.in b/lang/python/setup.py.in 22diff --git a/lang/python/setup.py.in b/lang/python/setup.py.in
22index 9785a28..006216d 100755 23index 6f36861..1d9058b 100755
23--- a/lang/python/setup.py.in 24--- a/lang/python/setup.py.in
24+++ b/lang/python/setup.py.in 25+++ b/lang/python/setup.py.in
25@@ -30,7 +30,6 @@ import subprocess 26@@ -169,9 +169,8 @@ class BuildExtFirstHack(build):
26 import sys
27
28 # Out-of-tree build of the gpg bindings.
29-gpg_error_config = ['gpg-error-config']
30 gpgme_config_flags = ['--thread=pthread']
31 gpgme_config = ['gpgme-config'] + gpgme_config_flags
32 gpgme_h = ''
33@@ -182,15 +181,9 @@ class BuildExtFirstHack(build):
34 27
35 def _generate_errors_i(self): 28 def _generate_errors_i(self):
36 29
37- try: 30- ge_cflags='@GPG_ERROR_CFLAGS@'
38- subprocess.check_call(
39- gpg_error_config + ['--version'], stdout=devnull)
40- except:
41- sys.exit('Could not find gpg-error-config. ' +
42- 'Please install the libgpg-error development package.')
43
44 gpg_error_content = self._read_header( 31 gpg_error_content = self._read_header(
45- 'gpg-error.h', getconfig('cflags', config=gpg_error_config)) 32- 'gpg-error.h', ge_cflags.split(' ') if ge_cflags else [])
46+ "gpg-error.h", os.environ.get('CFLAGS').split()) 33+ "gpg-error.h", os.environ.get('CFLAGS').split())
47 34
48 filter_re = re.compile(r'GPG_ERR_[^ ]* =') 35 filter_re = re.compile(r'GPG_ERR_[^ ]* =')
49 rewrite_re = re.compile(r' *(.*) = .*') 36 rewrite_re = re.compile(r' *(.*) = .*')
50--
512.7.4
52
diff --git a/meta/recipes-support/gpgme/gpgme/0003-Correctly-install-python-modules.patch b/meta/recipes-support/gpgme/gpgme/0003-Correctly-install-python-modules.patch
index de1689ec05..204fe5934d 100644
--- a/meta/recipes-support/gpgme/gpgme/0003-Correctly-install-python-modules.patch
+++ b/meta/recipes-support/gpgme/gpgme/0003-Correctly-install-python-modules.patch
@@ -1,7 +1,7 @@
1From f632148fcc8757bb9a9601a6dab275e88cd309d2 Mon Sep 17 00:00:00 2001 1From 8c850aa109c42d0c193bccc7af45dbc2689b23f6 Mon Sep 17 00:00:00 2001
2From: Hongxu Jia <hongxu.jia@windriver.com> 2From: Hongxu Jia <hongxu.jia@windriver.com>
3Date: Tue, 30 Jan 2018 15:28:49 +0800 3Date: Tue, 30 Jan 2018 15:28:49 +0800
4Subject: [PATCH 3/7] Correctly install python modules 4Subject: [PATCH] Correctly install python modules
5 5
6Upstream-Status: Inappropriate [oe-core specific] 6Upstream-Status: Inappropriate [oe-core specific]
7Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> 7Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
@@ -12,15 +12,16 @@ Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
12 12
13Rebase to 1.10.0 13Rebase to 1.10.0
14Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> 14Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
15
15--- 16---
16 lang/python/Makefile.am | 1 + 17 lang/python/Makefile.am | 1 +
17 1 file changed, 1 insertion(+) 18 1 file changed, 1 insertion(+)
18 19
19diff --git a/lang/python/Makefile.am b/lang/python/Makefile.am 20diff --git a/lang/python/Makefile.am b/lang/python/Makefile.am
20index 6988faf..36c6f7b 100644 21index 68b98e8..bbb9111 100644
21--- a/lang/python/Makefile.am 22--- a/lang/python/Makefile.am
22+++ b/lang/python/Makefile.am 23+++ b/lang/python/Makefile.am
23@@ -93,6 +93,7 @@ install-exec-local: 24@@ -97,6 +97,7 @@ install-exec-local:
24 --build-base="$$(basename "$${PYTHON}")-gpg" \ 25 --build-base="$$(basename "$${PYTHON}")-gpg" \
25 install \ 26 install \
26 --prefix "$(DESTDIR)$(prefix)" \ 27 --prefix "$(DESTDIR)$(prefix)" \
@@ -28,6 +29,3 @@ index 6988faf..36c6f7b 100644
28 --verbose ; \ 29 --verbose ; \
29 done 30 done
30 31
31--
322.7.4
33
diff --git a/meta/recipes-support/gpgme/gpgme/0005-gpgme-config-skip-all-lib-or-usr-lib-directories-in-.patch b/meta/recipes-support/gpgme/gpgme/0005-gpgme-config-skip-all-lib-or-usr-lib-directories-in-.patch
index 50bf21463f..7fe0c9538a 100644
--- a/meta/recipes-support/gpgme/gpgme/0005-gpgme-config-skip-all-lib-or-usr-lib-directories-in-.patch
+++ b/meta/recipes-support/gpgme/gpgme/0005-gpgme-config-skip-all-lib-or-usr-lib-directories-in-.patch
@@ -1,7 +1,7 @@
1From 8d9613c34ae495bbcbd725a2e7ac48138ba53c30 Mon Sep 17 00:00:00 2001 1From 57475742b0288b4ee53c01c59c3ab03c1ef7932e Mon Sep 17 00:00:00 2001
2From: Alexander Kanavin <alex.kanavin@gmail.com> 2From: Alexander Kanavin <alex.kanavin@gmail.com>
3Date: Thu, 13 Apr 2017 16:40:27 +0300 3Date: Thu, 13 Apr 2017 16:40:27 +0300
4Subject: [PATCH 5/7] gpgme-config: skip all /lib* or /usr/lib* directories in 4Subject: [PATCH] gpgme-config: skip all /lib* or /usr/lib* directories in
5 output 5 output
6 6
7The logic was not working in multilib setups which use other 7The logic was not working in multilib setups which use other
@@ -9,15 +9,16 @@ directory names than plain /lib or /usr/lib.
9 9
10Upstream-Status: Inappropriate [oe-core specific] 10Upstream-Status: Inappropriate [oe-core specific]
11Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> 11Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
12
12--- 13---
13 src/gpgme-config.in | 2 +- 14 src/gpgme-config.in | 2 +-
14 1 file changed, 1 insertion(+), 1 deletion(-) 15 1 file changed, 1 insertion(+), 1 deletion(-)
15 16
16diff --git a/src/gpgme-config.in b/src/gpgme-config.in 17diff --git a/src/gpgme-config.in b/src/gpgme-config.in
17index a4d152e..8342865 100644 18index 56b98f8..e96f3c3 100644
18--- a/src/gpgme-config.in 19--- a/src/gpgme-config.in
19+++ b/src/gpgme-config.in 20+++ b/src/gpgme-config.in
20@@ -154,7 +154,7 @@ while test $# -gt 0; do 21@@ -157,7 +157,7 @@ while test $# -gt 0; do
21 for i in $libs $tmp_l $assuan_libs $gpg_error_libs $tmp_x; do 22 for i in $libs $tmp_l $assuan_libs $gpg_error_libs $tmp_x; do
22 skip=no 23 skip=no
23 case $i in 24 case $i in
@@ -26,6 +27,3 @@ index a4d152e..8342865 100644
26 skip=yes 27 skip=yes
27 ;; 28 ;;
28 -L*|-l*) 29 -L*|-l*)
29--
302.7.4
31
diff --git a/meta/recipes-support/gpgme/gpgme/0006-fix-build-path-issue.patch b/meta/recipes-support/gpgme/gpgme/0006-fix-build-path-issue.patch
index 1471184d67..8d48db2feb 100644
--- a/meta/recipes-support/gpgme/gpgme/0006-fix-build-path-issue.patch
+++ b/meta/recipes-support/gpgme/gpgme/0006-fix-build-path-issue.patch
@@ -1,7 +1,7 @@
1From ef920688bfe1c7328c9e97229d62ccd35304ad84 Mon Sep 17 00:00:00 2001 1From 7938a5a760827aec737ea49d2f8719051abda188 Mon Sep 17 00:00:00 2001
2From: Hongxu Jia <hongxu.jia@windriver.com> 2From: Hongxu Jia <hongxu.jia@windriver.com>
3Date: Wed, 31 Jan 2018 11:01:09 +0800 3Date: Wed, 31 Jan 2018 11:01:09 +0800
4Subject: [PATCH 6/7] fix build path issue 4Subject: [PATCH] fix build path issue
5 5
6Get the "--root" directory supplied to the "install" command, 6Get the "--root" directory supplied to the "install" command,
7and use it as a prefix to strip off the purported filename 7and use it as a prefix to strip off the purported filename
@@ -12,15 +12,16 @@ to use relative path.
12 12
13Upstream-Status: Submitted [gnupg-devel@gnupg.org] 13Upstream-Status: Submitted [gnupg-devel@gnupg.org]
14Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> 14Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
15
15--- 16---
16 lang/python/Makefile.am | 5 +++-- 17 lang/python/Makefile.am | 5 +++--
17 1 file changed, 3 insertions(+), 2 deletions(-) 18 1 file changed, 3 insertions(+), 2 deletions(-)
18 19
19diff --git a/lang/python/Makefile.am b/lang/python/Makefile.am 20diff --git a/lang/python/Makefile.am b/lang/python/Makefile.am
20index 36c6f7b..ce9a108 100644 21index bbb9111..cee499e 100644
21--- a/lang/python/Makefile.am 22--- a/lang/python/Makefile.am
22+++ b/lang/python/Makefile.am 23+++ b/lang/python/Makefile.am
23@@ -92,8 +92,9 @@ install-exec-local: 24@@ -96,8 +96,9 @@ install-exec-local:
24 build \ 25 build \
25 --build-base="$$(basename "$${PYTHON}")-gpg" \ 26 --build-base="$$(basename "$${PYTHON}")-gpg" \
26 install \ 27 install \
@@ -32,6 +33,3 @@ index 36c6f7b..ce9a108 100644
32 --verbose ; \ 33 --verbose ; \
33 done 34 done
34 35
35--
362.7.4
37
diff --git a/meta/recipes-support/gpgme/gpgme/0007-python-Add-variables-to-tests.patch b/meta/recipes-support/gpgme/gpgme/0007-python-Add-variables-to-tests.patch
deleted file mode 100644
index 4c97f63cc2..0000000000
--- a/meta/recipes-support/gpgme/gpgme/0007-python-Add-variables-to-tests.patch
+++ /dev/null
@@ -1,52 +0,0 @@
1From 093c88817397425ee4c2333c469467229a46c9e1 Mon Sep 17 00:00:00 2001
2From: Yuan Chao <yuanc.fnst@cn.fujitsu.com>
3Date: Mon, 5 Aug 2019 01:00:58 +0900
4Subject: [PATCH 7/7] python: Add variables to tests
5
6* configure.ac, lang/python/Makefile.am:
7 New variable to `lang/python', set to `lang/python' if RUN_LANG_PYTHON_TESTS
8
9Upstream-Status: Submitted [gnupg-devel@gnupg.org]
10
11Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
12
13Signed-off-by: Yuan Chao <yuanc.fnst@cn.fujitsu.com>
14---
15 configure.ac | 5 +++++
16 lang/python/Makefile.am | 3 +++
17 2 files changed, 8 insertions(+)
18
19diff --git a/configure.ac b/configure.ac
20index bd85886..b5ae42e 100644
21--- a/configure.ac
22+++ b/configure.ac
23@@ -533,6 +533,11 @@ AC_ARG_ENABLE(g13-test,
24 run_g13_test=$enableval)
25 AM_CONDITIONAL(RUN_G13_TESTS, test "$run_g13_test" = "yes")
26
27+run_lang_python_test="yes"
28+AC_ARG_ENABLE(lang-python-test,
29+ AC_HELP_STRING([--disable-lang-python-test], [disable Python regression test]),
30+ run_lang_python_test=$enableval)
31+AM_CONDITIONAL(RUN_LANG_PYTHON_TESTS, test "$run_lang_python_test" = "yes")
32
33 # Checks for header files.
34 AC_CHECK_HEADERS_ONCE([locale.h sys/select.h sys/uio.h argp.h stdint.h
35diff --git a/lang/python/Makefile.am b/lang/python/Makefile.am
36index 551deee..0fd555e 100644
37--- a/lang/python/Makefile.am
38+++ b/lang/python/Makefile.am
39@@ -23,7 +23,10 @@ EXTRA_DIST = \
40 gpgme.i \
41 helpers.c helpers.h private.h
42
43+SUBDIRS = . examples doc src
44+if RUN_LANG_PYTHON_TESTS
45 SUBDIRS = . tests examples doc src
46+endif
47
48 .PHONY: prepare
49 prepare: copystamp
50--
512.7.4
52
diff --git a/meta/recipes-support/gpgme/gpgme/0008-do-not-auto-check-var-PYTHON.patch b/meta/recipes-support/gpgme/gpgme/0008-do-not-auto-check-var-PYTHON.patch
index dfea1bf78a..a11621ed64 100644
--- a/meta/recipes-support/gpgme/gpgme/0008-do-not-auto-check-var-PYTHON.patch
+++ b/meta/recipes-support/gpgme/gpgme/0008-do-not-auto-check-var-PYTHON.patch
@@ -1,4 +1,4 @@
1From 5bbf7a048b6d81d23186340e839f9f65b5b514b6 Mon Sep 17 00:00:00 2001 1From 84c389705e7742d2b68e144a5733e618441d293e Mon Sep 17 00:00:00 2001
2From: Hongxu Jia <hongxu.jia@windriver.com> 2From: Hongxu Jia <hongxu.jia@windriver.com>
3Date: Fri, 10 May 2019 16:19:54 +0800 3Date: Fri, 10 May 2019 16:19:54 +0800
4Subject: [PATCH] do not auto check var-PYTHON 4Subject: [PATCH] do not auto check var-PYTHON
@@ -14,18 +14,19 @@ Upstream-Status: Inappropriate [oe-core specific]
14Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> 14Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
15 15
16--- 16---
17 configure.ac | 4 ++-- 17 configure.ac | 5 ++---
18 1 file changed, 2 insertions(+), 2 deletions(-) 18 1 file changed, 2 insertions(+), 3 deletions(-)
19 19
20diff --git a/configure.ac b/configure.ac 20diff --git a/configure.ac b/configure.ac
21index 5ef00c0..bbcff93 100644 21index df892c9..8c6194e 100644
22--- a/configure.ac 22--- a/configure.ac
23+++ b/configure.ac 23+++ b/configure.ac
24@@ -425,8 +425,8 @@ if test "$found_py" = "1"; then 24@@ -590,9 +590,8 @@ if test "$found_py" = "1"; then
25 if test "$found_py" = "1" -o "$found_py3" = "1"; then 25 if test "$found_py" = "1" -o "$found_py3" = "1"; then
26 # Reset everything, so that we can look for another Python. 26 # Reset everything, so that we can look for another Python.
27 m4_foreach([mym4pythonver], 27 m4_foreach([mym4pythonver],
28- [[2.7],[3.4],[3.5],[3.6],[3.7],[3.8],[3.9],[all]], 28- [[2.7],[3.4],[3.5],[3.6],[3.7],[3.8],[3.9],[3.10],
29- [3.11],[3.12],[all]],
29- [unset PYTHON 30- [unset PYTHON
30+ [[2.7],[3.7]], 31+ [[2.7],[3.7]],
31+ [ 32+ [
diff --git a/meta/recipes-support/gpgme/gpgme_1.15.1.bb b/meta/recipes-support/gpgme/gpgme_1.23.2.bb
index dc38aa8e3c..d8807b3af2 100644
--- a/meta/recipes-support/gpgme/gpgme_1.15.1.bb
+++ b/meta/recipes-support/gpgme/gpgme_1.23.2.bb
@@ -3,7 +3,7 @@ DESCRIPTION = "GnuPG Made Easy (GPGME) is a library designed to make access to G
3HOMEPAGE = "http://www.gnupg.org/gpgme.html" 3HOMEPAGE = "http://www.gnupg.org/gpgme.html"
4BUGTRACKER = "https://bugs.g10code.com/gnupg/index" 4BUGTRACKER = "https://bugs.g10code.com/gnupg/index"
5 5
6LICENSE = "GPLv2+ & LGPLv2.1+" 6LICENSE = "GPL-2.0-or-later & LGPL-2.1-or-later"
7LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \ 7LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \
8 file://COPYING.LESSER;md5=bbb461211a33b134d42ed5ee802b37ff \ 8 file://COPYING.LESSER;md5=bbb461211a33b134d42ed5ee802b37ff \
9 file://src/gpgme.h.in;endline=23;md5=2f0bf06d1c7dcb28532a9d0f94a7ca1d \ 9 file://src/gpgme.h.in;endline=23;md5=2f0bf06d1c7dcb28532a9d0f94a7ca1d \
@@ -18,24 +18,22 @@ SRC_URI = "${GNUPG_MIRROR}/gpgme/${BP}.tar.bz2 \
18 file://0004-python-import.patch \ 18 file://0004-python-import.patch \
19 file://0005-gpgme-config-skip-all-lib-or-usr-lib-directories-in-.patch \ 19 file://0005-gpgme-config-skip-all-lib-or-usr-lib-directories-in-.patch \
20 file://0006-fix-build-path-issue.patch \ 20 file://0006-fix-build-path-issue.patch \
21 file://0007-python-Add-variables-to-tests.patch \
22 file://0008-do-not-auto-check-var-PYTHON.patch \ 21 file://0008-do-not-auto-check-var-PYTHON.patch \
23 " 22 file://0001-use-closefrom-on-linux-and-glibc-2.34.patch \
23 file://0001-posix-io.c-Use-off_t-instead-of-off64_t.patch \
24 file://0001-autogen.sh-remove-unknown-in-version.patch \
25 "
24 26
25SRC_URI[sha256sum] = "eebc3c1b27f1c8979896ff361ba9bb4778b508b2496c2fc10e3775a40b1de1ad" 27SRC_URI[sha256sum] = "9499e8b1f33cccb6815527a1bc16049d35a6198a6c5fae0185f2bd561bce5224"
26 28
27DEPENDS = "libgpg-error libassuan" 29PYTHON_DEPS = "${@bb.utils.contains('LANGUAGES', 'python', 'swig-native', '', d)}"
28RDEPENDS_${PN}-cpp += "libstdc++"
29 30
30RDEPENDS_python2-gpg += "python-unixadmin" 31DEPENDS = "libgpg-error libassuan ${PYTHON_DEPS}"
31RDEPENDS_python3-gpg += "python3-unixadmin" 32RDEPENDS:${PN}-cpp += "libstdc++"
32 33
33BINCONFIG = "${bindir}/gpgme-config" 34RDEPENDS:python3-gpg += "python3-unixadmin"
34 35
35# Note select python2 or python3, but you can't select both at the same time 36BINCONFIG = "${bindir}/gpgme-config"
36PACKAGECONFIG ??= "python3"
37PACKAGECONFIG[python2] = ",,python swig-native,"
38PACKAGECONFIG[python3] = ",,python3 swig-native,"
39 37
40# Default in configure.ac: "cl cpp python qt" 38# Default in configure.ac: "cl cpp python qt"
41# Supported: "cl cpp python python2 python3 qt" 39# Supported: "cl cpp python python2 python3 qt"
@@ -44,45 +42,41 @@ PACKAGECONFIG[python3] = ",,python3 swig-native,"
44# Building the C++ bindings for native requires a C++ compiler with C++11 42# Building the C++ bindings for native requires a C++ compiler with C++11
45# support. Since these bindings are currently not needed, we can disable them. 43# support. Since these bindings are currently not needed, we can disable them.
46DEFAULT_LANGUAGES = "" 44DEFAULT_LANGUAGES = ""
47DEFAULT_LANGUAGES_class-target = "cpp" 45DEFAULT_LANGUAGES:class-target = "cpp"
48LANGUAGES ?= "${DEFAULT_LANGUAGES} python" 46LANGUAGES ?= "${DEFAULT_LANGUAGES}"
49 47
50PYTHON_INHERIT = "${@bb.utils.contains('PACKAGECONFIG', 'python2', 'pythonnative', '', d)}" 48PYTHON_INHERIT = "${@bb.utils.contains('LANGUAGES', 'python', 'setuptools3-base', '', d)}"
51PYTHON_INHERIT .= "${@bb.utils.contains('PACKAGECONFIG', 'python3', 'python3native python3targetconfig', '', d)}"
52 49
53EXTRA_OECONF += '--enable-languages="${LANGUAGES}" \ 50EXTRA_OECONF += '--enable-languages="${LANGUAGES}" \
54 --disable-gpgconf-test \ 51 --disable-gpgconf-test \
55 --disable-gpg-test \ 52 --disable-gpg-test \
56 --disable-gpgsm-test \ 53 --disable-gpgsm-test \
57 --disable-g13-test \ 54 --disable-g13-test \
58 --disable-lang-python-test \
59' 55'
60 56
61inherit autotools texinfo binconfig-disabled pkgconfig distutils-common-base ${PYTHON_INHERIT} multilib_header 57inherit autotools texinfo binconfig-disabled pkgconfig multilib_header
58inherit_defer ${PYTHON_INHERIT} python3native
62 59
63export PKG_CONFIG='pkg-config' 60export PKG_CONFIG='pkg-config'
64 61
65BBCLASSEXTEND = "native nativesdk" 62BBCLASSEXTEND = "native nativesdk"
66 63
67PACKAGES =+ "${PN}-cpp" 64PACKAGES =+ "${PN}-cpp python3-gpg"
68PACKAGES =. "${@bb.utils.contains('PACKAGECONFIG', 'python2', 'python2-gpg ', '', d)}" 65
69PACKAGES =. "${@bb.utils.contains('PACKAGECONFIG', 'python3', 'python3-gpg ', '', d)}" 66FILES:${PN}-cpp = "${libdir}/libgpgmepp.so.*"
67FILES:python3-gpg = "${PYTHON_SITEPACKAGES_DIR}/*"
68FILES:${PN}-dev += "${datadir}/common-lisp/source/gpgme/*"
70 69
71FILES_${PN}-cpp = "${libdir}/libgpgmepp.so.*" 70CFLAGS:append:libc-musl = " -D__error_t_defined "
72FILES_python2-gpg = "${PYTHON_SITEPACKAGES_DIR}/*" 71CACHED_CONFIGUREVARS:libc-musl = "ac_cv_sys_file_offset_bits=no"
73FILES_python3-gpg = "${PYTHON_SITEPACKAGES_DIR}/*"
74FILES_${PN}-dev += "${datadir}/common-lisp/source/gpgme/* \
75 ${libdir}/cmake/* \
76"
77 72
78CFLAGS_append_libc-musl = " -D__error_t_defined " 73do_configure:prepend () {
79do_configure_prepend () {
80 # Else these could be used in preference to those in aclocal-copy 74 # Else these could be used in preference to those in aclocal-copy
81 rm -f ${S}/m4/gpg-error.m4 75 rm -f ${S}/m4/gpg-error.m4
82 rm -f ${S}/m4/libassuan.m4 76 rm -f ${S}/m4/libassuan.m4
83 rm -f ${S}/m4/python.m4 77 rm -f ${S}/m4/python.m4
84} 78}
85 79
86do_install_append() { 80do_install:append() {
87 oe_multilib_header gpgme.h 81 oe_multilib_header gpgme.h
88} 82}
diff --git a/meta/recipes-support/icu/icu/0001-Disable-LDFLAGSICUDT-for-Linux.patch b/meta/recipes-support/icu/icu/0001-Disable-LDFLAGSICUDT-for-Linux.patch
index 2968d571bb..c0e9e2806b 100644
--- a/meta/recipes-support/icu/icu/0001-Disable-LDFLAGSICUDT-for-Linux.patch
+++ b/meta/recipes-support/icu/icu/0001-Disable-LDFLAGSICUDT-for-Linux.patch
@@ -1,4 +1,4 @@
1From 0c82d6aa02c08e41b13c83b14782bd7024e25d59 Mon Sep 17 00:00:00 2001 1From 0f4e9eee64bd4220aa4fae1ab4f7bbf10b87cd69 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com> 2From: Khem Raj <raj.khem@gmail.com>
3Date: Sat, 15 Feb 2014 21:06:42 +0000 3Date: Sat, 15 Feb 2014 21:06:42 +0000
4Subject: [PATCH] Disable LDFLAGSICUDT for Linux 4Subject: [PATCH] Disable LDFLAGSICUDT for Linux
@@ -7,14 +7,14 @@ Upstream-Status: Inappropriate [ OE Configuration ]
7 7
8Signed-off-by: Khem Raj <raj.khem@gmail.com> 8Signed-off-by: Khem Raj <raj.khem@gmail.com>
9--- 9---
10 source/config/mh-linux | 2 +- 10 config/mh-linux | 2 +-
11 1 file changed, 1 insertion(+), 1 deletion(-) 11 1 file changed, 1 insertion(+), 1 deletion(-)
12 12
13diff --git a/config/mh-linux b/config/mh-linux 13diff --git a/config/mh-linux b/config/mh-linux
14index 366f0cc..2689aab 100644 14index 53d6780..b622513 100644
15--- a/config/mh-linux 15--- a/config/mh-linux
16+++ b/config/mh-linux 16+++ b/config/mh-linux
17@@ -21,7 +21,7 @@ LD_RPATH= -Wl,-zorigin,-rpath,'$$'ORIGIN 17@@ -23,7 +23,7 @@ LD_RPATH= -Wl,-zorigin,-rpath,'$$'ORIGIN
18 LD_RPATH_PRE = -Wl,-rpath, 18 LD_RPATH_PRE = -Wl,-rpath,
19 19
20 ## These are the library specific LDFLAGS 20 ## These are the library specific LDFLAGS
@@ -23,6 +23,3 @@ index 366f0cc..2689aab 100644
23 23
24 ## Compiler switch to embed a library name 24 ## Compiler switch to embed a library name
25 # The initial tab in the next line is to prevent icu-config from reading it. 25 # The initial tab in the next line is to prevent icu-config from reading it.
26--
271.7.10.4
28
diff --git a/meta/recipes-support/icu/icu/0001-icu-Added-armeb-support.patch b/meta/recipes-support/icu/icu/0001-icu-Added-armeb-support.patch
index 145efc0e01..a25285fb54 100644
--- a/meta/recipes-support/icu/icu/0001-icu-Added-armeb-support.patch
+++ b/meta/recipes-support/icu/icu/0001-icu-Added-armeb-support.patch
@@ -1,4 +1,4 @@
1From 500321387ceca48934bb0f323779117cd518bab6 Mon Sep 17 00:00:00 2001 1From cf55c077b77b7a219502364eaadf12c074ab005e Mon Sep 17 00:00:00 2001
2From: Lei Maohui <leimaohui@cn.fujitsu.com> 2From: Lei Maohui <leimaohui@cn.fujitsu.com>
3Date: Wed, 8 May 2019 14:42:30 +0900 3Date: Wed, 8 May 2019 14:42:30 +0900
4Subject: [PATCH] icu: Added armeb support. 4Subject: [PATCH] icu: Added armeb support.
@@ -13,10 +13,10 @@ Signed-off-by: Lei Maohui <leimaohui@cn.fujitsu.com>
13 1 file changed, 1 insertion(+), 1 deletion(-) 13 1 file changed, 1 insertion(+), 1 deletion(-)
14 14
15diff --git a/i18n/double-conversion-utils.h b/i18n/double-conversion-utils.h 15diff --git a/i18n/double-conversion-utils.h b/i18n/double-conversion-utils.h
16index 8c6a0e1..cf89907 100644 16index 303668f..7d859dc 100644
17--- a/i18n/double-conversion-utils.h 17--- a/i18n/double-conversion-utils.h
18+++ b/i18n/double-conversion-utils.h 18+++ b/i18n/double-conversion-utils.h
19@@ -115,7 +115,7 @@ int main(int argc, char** argv) { 19@@ -146,7 +146,7 @@ int main(int argc, char** argv) {
20 // 20 //
21 // If it prints "correct" then the architecture should be here, in the "correct" section. 21 // If it prints "correct" then the architecture should be here, in the "correct" section.
22 #if defined(_M_X64) || defined(__x86_64__) || \ 22 #if defined(_M_X64) || defined(__x86_64__) || \
@@ -24,7 +24,4 @@ index 8c6a0e1..cf89907 100644
24+ defined(__arm__) || defined(__avr32__) || defined(_M_ARM) || defined(_M_ARM64) || \ 24+ defined(__arm__) || defined(__avr32__) || defined(_M_ARM) || defined(_M_ARM64) || \
25 defined(__hppa__) || defined(__ia64__) || \ 25 defined(__hppa__) || defined(__ia64__) || \
26 defined(__mips__) || \ 26 defined(__mips__) || \
27 defined(__nios2__) || \ 27 defined(__loongarch__) || \
28--
292.7.4
30
diff --git a/meta/recipes-support/icu/icu/fix-install-manx.patch b/meta/recipes-support/icu/icu/fix-install-manx.patch
index 925b064ebd..16cabc8264 100644
--- a/meta/recipes-support/icu/icu/fix-install-manx.patch
+++ b/meta/recipes-support/icu/icu/fix-install-manx.patch
@@ -1,4 +1,4 @@
1From a6ddabc8cadb76bfe2d2e374a6702442cfe51cce Mon Sep 17 00:00:00 2001 1From 2d544cac238eccbfc32cafc9502ddf6e00994211 Mon Sep 17 00:00:00 2001
2From: Ross Burton <ross.burton@intel.com> 2From: Ross Burton <ross.burton@intel.com>
3Date: Fri, 9 Oct 2015 17:50:41 +0100 3Date: Fri, 9 Oct 2015 17:50:41 +0100
4Subject: [PATCH] icu: fix install race 4Subject: [PATCH] icu: fix install race
@@ -11,15 +11,16 @@ and one process tries to chown a file that the other process has just deleted.
11Also install-manx should be a phony target, and for clarity use $^ instead of $? 11Also install-manx should be a phony target, and for clarity use $^ instead of $?
12in the install command. 12in the install command.
13 13
14Upstream-Status: Pending 14Upstream ticket: https://unicode-org.atlassian.net/jira/software/c/projects/ICU/issues/ICU-21172
15Signed-off-by: Ross Burton <ross.burton@intel.com>
16 15
16Upstream-Status: Submitted [https://github.com/unicode-org/icu/pull/2966]
17Signed-off-by: Ross Burton <ross.burton@intel.com>
17--- 18---
18 source/Makefile.in | 8 ++++---- 19 Makefile.in | 8 ++++----
19 1 file changed, 4 insertions(+), 4 deletions(-) 20 1 file changed, 4 insertions(+), 4 deletions(-)
20 21
21diff --git a/Makefile.in b/Makefile.in 22diff --git a/Makefile.in b/Makefile.in
22index be9435b..ada20d7 100644 23index 8366f01..79b91c9 100644
23--- a/Makefile.in 24--- a/Makefile.in
24+++ b/Makefile.in 25+++ b/Makefile.in
25@@ -77,7 +77,7 @@ EXTRA_DATA = 26@@ -77,7 +77,7 @@ EXTRA_DATA =
diff --git a/meta/recipes-support/icu/icu_68.2.bb b/meta/recipes-support/icu/icu_74-2.bb
index 1ca87feee4..8352bf2a5b 100644
--- a/meta/recipes-support/icu/icu_68.2.bb
+++ b/meta/recipes-support/icu/icu_74-2.bb
@@ -6,8 +6,7 @@ same results on all platforms."
6HOMEPAGE = "http://site.icu-project.org/" 6HOMEPAGE = "http://site.icu-project.org/"
7 7
8LICENSE = "ICU" 8LICENSE = "ICU"
9DEPENDS = "icu-native" 9DEPENDS = "icu-native autoconf-archive-native"
10DEPENDS_class-native = ""
11 10
12CVE_PRODUCT = "international_components_for_unicode" 11CVE_PRODUCT = "international_components_for_unicode"
13 12
@@ -15,27 +14,23 @@ S = "${WORKDIR}/icu/source"
15SPDX_S = "${WORKDIR}/icu" 14SPDX_S = "${WORKDIR}/icu"
16STAGING_ICU_DIR_NATIVE = "${STAGING_DATADIR_NATIVE}/${BPN}/${PV}" 15STAGING_ICU_DIR_NATIVE = "${STAGING_DATADIR_NATIVE}/${BPN}/${PV}"
17 16
18BINCONFIG = "${bindir}/icu-config" 17ICU_MAJOR_VER = "${@d.getVar('PV').split('-')[0]}"
19 18
20ICU_MAJOR_VER = "${@d.getVar('PV').split('.')[0]}" 19inherit autotools pkgconfig github-releases
21
22inherit autotools pkgconfig binconfig multilib_script
23
24MULTILIB_SCRIPTS = "${PN}-dev:${bindir}/icu-config"
25 20
26# ICU needs the native build directory as an argument to its --with-cross-build option when 21# ICU needs the native build directory as an argument to its --with-cross-build option when
27# cross-compiling. Taken the situation that different builds may share a common sstate-cache 22# cross-compiling. Taken the situation that different builds may share a common sstate-cache
28# into consideration, the native build directory needs to be staged. 23# into consideration, the native build directory needs to be staged.
29EXTRA_OECONF = "--with-cross-build=${STAGING_ICU_DIR_NATIVE}" 24EXTRA_OECONF = "--with-cross-build=${STAGING_ICU_DIR_NATIVE} --disable-icu-config"
30EXTRA_OECONF_class-native = "" 25EXTRA_OECONF:class-native = "--disable-icu-config"
31EXTRA_OECONF_class-nativesdk = "--with-cross-build=${STAGING_ICU_DIR_NATIVE}" 26EXTRA_OECONF:class-nativesdk = "--with-cross-build=${STAGING_ICU_DIR_NATIVE} --disable-icu-config"
32 27
33EXTRA_OECONF_append_class-target = "${@oe.utils.conditional('SITEINFO_ENDIANNESS', 'be', ' --with-data-packaging=archive', '', d)}" 28EXTRA_OECONF:append:class-target = "${@oe.utils.conditional('SITEINFO_ENDIANNESS', 'be', ' --with-data-packaging=archive', '', d)}"
34TARGET_CXXFLAGS_append = "${@oe.utils.conditional('SITEINFO_ENDIANNESS', 'be', ' -DICU_DATA_DIR=\\""${datadir}/${BPN}/${PV}\\""', '', d)}" 29TARGET_CXXFLAGS:append = "${@oe.utils.conditional('SITEINFO_ENDIANNESS', 'be', ' -DICU_DATA_DIR=\\""${datadir}/${BPN}/${PV}\\""', '', d)}"
35 30
36ASNEEDED = "" 31ASNEEDED = ""
37 32
38do_compile_prepend_class-target () { 33do_compile:prepend:class-target () {
39 # Make sure certain build host references do not end up being compiled 34 # Make sure certain build host references do not end up being compiled
40 # in the image. This only affects libicutu and icu-dbg 35 # in the image. This only affects libicutu and icu-dbg
41 sed \ 36 sed \
@@ -45,7 +40,7 @@ do_compile_prepend_class-target () {
45} 40}
46 41
47PREPROCESS_RELOCATE_DIRS = "${datadir}/${BPN}/${PV}" 42PREPROCESS_RELOCATE_DIRS = "${datadir}/${BPN}/${PV}"
48do_install_append_class-native() { 43do_install:append:class-native() {
49 mkdir -p ${D}/${STAGING_ICU_DIR_NATIVE}/config 44 mkdir -p ${D}/${STAGING_ICU_DIR_NATIVE}/config
50 cp -r ${B}/config/icucross.mk ${D}/${STAGING_ICU_DIR_NATIVE}/config 45 cp -r ${B}/config/icucross.mk ${D}/${STAGING_ICU_DIR_NATIVE}/config
51 cp -r ${B}/config/icucross.inc ${D}/${STAGING_ICU_DIR_NATIVE}/config 46 cp -r ${B}/config/icucross.inc ${D}/${STAGING_ICU_DIR_NATIVE}/config
@@ -54,12 +49,12 @@ do_install_append_class-native() {
54 cp -r ${B}/tools ${D}/${STAGING_ICU_DIR_NATIVE} 49 cp -r ${B}/tools ${D}/${STAGING_ICU_DIR_NATIVE}
55} 50}
56 51
57do_install_append_class-target() { 52do_install:append:class-target() {
58 # The native pkgdata can not generate the correct data file. 53 # The native pkgdata can not generate the correct data file.
59 # Use icupkg to re-generate it. 54 # Use icupkg to re-generate it.
60 if [ "${SITEINFO_ENDIANNESS}" = "be" ] ; then 55 if [ "${SITEINFO_ENDIANNESS}" = "be" ] ; then
61 rm -f ${D}/${datadir}/${BPN}/${PV}/icudt${ICU_MAJOR_VER}b.dat 56 rm -f ${D}/${datadir}/${BPN}/${@icu_install_folder(d)}/icudt${ICU_MAJOR_VER}b.dat
62 icupkg -tb ${S}/data/in/icudt${ICU_MAJOR_VER}l.dat ${D}/${datadir}/${BPN}/${PV}/icudt${ICU_MAJOR_VER}b.dat 57 icupkg -tb ${S}/data/in/icudt${ICU_MAJOR_VER}l.dat ${D}/${datadir}/${BPN}/${@icu_install_folder(d)}/icudt${ICU_MAJOR_VER}b.dat
63 fi 58 fi
64 59
65 # Remove build host references... 60 # Remove build host references...
@@ -67,41 +62,45 @@ do_install_append_class-target() {
67 -e 's,--sysroot=${STAGING_DIR_TARGET},,g' \ 62 -e 's,--sysroot=${STAGING_DIR_TARGET},,g' \
68 -e 's|${DEBUG_PREFIX_MAP}||g' \ 63 -e 's|${DEBUG_PREFIX_MAP}||g' \
69 -e 's:${HOSTTOOLS_DIR}/::g' \ 64 -e 's:${HOSTTOOLS_DIR}/::g' \
70 ${D}/${bindir}/icu-config ${D}/${libdir}/${BPN}/${PV}/Makefile.inc \ 65 ${D}/${libdir}/${BPN}/${@icu_install_folder(d)}/Makefile.inc \
71 ${D}/${libdir}/${BPN}/${PV}/pkgdata.inc 66 ${D}/${libdir}/${BPN}/${@icu_install_folder(d)}/pkgdata.inc
72} 67}
73 68
74PACKAGES =+ "libicudata libicuuc libicui18n libicutu libicuio" 69PACKAGES =+ "libicudata libicuuc libicui18n libicutu libicuio"
75 70
76FILES_${PN}-dev += "${libdir}/${BPN}/" 71FILES:${PN}-dev += "${libdir}/${BPN}/"
77 72
78FILES_libicudata = "${libdir}/libicudata.so.*" 73FILES:libicudata = "${libdir}/libicudata.so.*"
79FILES_libicuuc = "${libdir}/libicuuc.so.*" 74FILES:libicuuc = "${libdir}/libicuuc.so.*"
80FILES_libicui18n = "${libdir}/libicui18n.so.*" 75FILES:libicui18n = "${libdir}/libicui18n.so.*"
81FILES_libicutu = "${libdir}/libicutu.so.*" 76FILES:libicutu = "${libdir}/libicutu.so.*"
82FILES_libicuio = "${libdir}/libicuio.so.*" 77FILES:libicuio = "${libdir}/libicuio.so.*"
83 78
84BBCLASSEXTEND = "native nativesdk" 79BBCLASSEXTEND = "native nativesdk"
85 80
86LIC_FILES_CHKSUM = "file://../LICENSE;md5=002d2fdc32d17f0ec06e9a47f2c0c8d0" 81LIC_FILES_CHKSUM = "file://../LICENSE;md5=08dc3852df8fffa807301902ad899ff8"
87 82
88def icu_download_version(d): 83def icu_download_version(d):
89 pvsplit = d.getVar('PV').split('.') 84 pvsplit = d.getVar('PV').split('-')
90 return pvsplit[0] + "_" + pvsplit[1] 85 return pvsplit[0] + "_" + pvsplit[1]
91 86
92def icu_download_folder(d): 87def icu_download_folder(d):
93 pvsplit = d.getVar('PV').split('.') 88 pvsplit = d.getVar('PV').split('-')
94 return pvsplit[0] + "-" + pvsplit[1] 89 return pvsplit[0] + "-" + pvsplit[1]
95 90
91def icu_install_folder(d):
92 pvsplit = d.getVar('PV').split('-')
93 return pvsplit[0] + "." + pvsplit[1]
94
96ICU_PV = "${@icu_download_version(d)}" 95ICU_PV = "${@icu_download_version(d)}"
97ICU_FOLDER = "${@icu_download_folder(d)}" 96ICU_FOLDER = "${@icu_download_folder(d)}"
98 97
99# http://errors.yoctoproject.org/Errors/Details/20486/ 98# http://errors.yoctoproject.org/Errors/Details/20486/
100ARM_INSTRUCTION_SET_armv4 = "arm" 99ARM_INSTRUCTION_SET:armv4 = "arm"
101ARM_INSTRUCTION_SET_armv5 = "arm" 100ARM_INSTRUCTION_SET:armv5 = "arm"
102 101
103BASE_SRC_URI = "https://github.com/unicode-org/icu/releases/download/release-${ICU_FOLDER}/icu4c-${ICU_PV}-src.tgz" 102BASE_SRC_URI = "${GITHUB_BASE_URI}/download/release-${ICU_FOLDER}/icu4c-${ICU_PV}-src.tgz"
104DATA_SRC_URI = "https://github.com/unicode-org/icu/releases/download/release-${ICU_FOLDER}/icu4c-${ICU_PV}-data.zip" 103DATA_SRC_URI = "${GITHUB_BASE_URI}/download/release-${ICU_FOLDER}/icu4c-${ICU_PV}-data.zip"
105SRC_URI = "${BASE_SRC_URI};name=code \ 104SRC_URI = "${BASE_SRC_URI};name=code \
106 ${DATA_SRC_URI};name=data \ 105 ${DATA_SRC_URI};name=data \
107 file://filter.json \ 106 file://filter.json \
@@ -109,21 +108,21 @@ SRC_URI = "${BASE_SRC_URI};name=code \
109 file://0001-icu-Added-armeb-support.patch \ 108 file://0001-icu-Added-armeb-support.patch \
110 " 109 "
111 110
112SRC_URI_append_class-target = "\ 111SRC_URI:append:class-target = "\
113 file://0001-Disable-LDFLAGSICUDT-for-Linux.patch \ 112 file://0001-Disable-LDFLAGSICUDT-for-Linux.patch \
114 " 113 "
115SRC_URI[code.sha256sum] = "c79193dee3907a2199b8296a93b52c5cb74332c26f3d167269487680d479d625" 114SRC_URI[code.sha256sum] = "68db082212a96d6f53e35d60f47d38b962e9f9d207a74cfac78029ae8ff5e08c"
116SRC_URI[data.sha256sum] = "2989b466fa010edc41297e12fdd5ae47c2610ad68b63af1a0bd2a1acfaf497f3" 115SRC_URI[data.sha256sum] = "c28c3ca5f4ba3384781797138a294ca360988d4322674ad4d51e52f5d9b0a2b6"
117 116
118UPSTREAM_CHECK_REGEX = "icu4c-(?P<pver>\d+(_\d+)+)-src" 117UPSTREAM_CHECK_REGEX = "releases/tag/release-(?P<pver>(?!.+rc).+)"
119UPSTREAM_CHECK_URI = "https://github.com/unicode-org/icu/releases" 118GITHUB_BASE_URI = "https://github.com/unicode-org/icu/releases"
120 119
121EXTRA_OECONF_append_libc-musl = " ac_cv_func_strtod_l=no" 120EXTRA_OECONF:append:libc-musl = " ac_cv_func_strtod_l=no"
122 121
123PACKAGECONFIG ?= "" 122PACKAGECONFIG ?= ""
124PACKAGECONFIG[make-icudata] = ",,," 123PACKAGECONFIG[make-icudata] = ",,,"
125 124
126do_make_icudata_class-target () { 125do_make_icudata:class-target () {
127 ${@bb.utils.contains('PACKAGECONFIG', 'make-icudata', '', 'exit 0', d)} 126 ${@bb.utils.contains('PACKAGECONFIG', 'make-icudata', '', 'exit 0', d)}
128 cd ${S} 127 cd ${S}
129 rm -rf data 128 rm -rf data
@@ -147,4 +146,4 @@ do_make_icudata() {
147 : 146 :
148} 147}
149 148
150addtask make_icudata before do_configure after do_patch 149addtask make_icudata before do_configure after do_patch do_prepare_recipe_sysroot
diff --git a/meta/recipes-support/iso-codes/iso-codes_4.5.0.bb b/meta/recipes-support/iso-codes/iso-codes_4.16.0.bb
index 9d02f5c794..f33cce1a9d 100644
--- a/meta/recipes-support/iso-codes/iso-codes_4.5.0.bb
+++ b/meta/recipes-support/iso-codes/iso-codes_4.16.0.bb
@@ -1,12 +1,15 @@
1SUMMARY = "ISO language, territory, currency, script codes and their translations" 1SUMMARY = "ISO language, territory, currency, script codes and their translations"
2DESCRIPTION = "Provides lists of various ISO standards (e.g. country, \
3language, language scripts, and currency names) in one place, rather \
4than repeated in many programs throughout the system."
2HOMEPAGE = "https://salsa.debian.org/iso-codes-team/iso-codes" 5HOMEPAGE = "https://salsa.debian.org/iso-codes-team/iso-codes"
3BUGTRACKER = "https://salsa.debian.org/iso-codes-team/iso-codes/issues" 6BUGTRACKER = "https://salsa.debian.org/iso-codes-team/iso-codes/issues"
4 7
5LICENSE = "LGPLv2.1" 8LICENSE = "LGPL-2.1-only"
6LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c" 9LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c"
7 10
8SRC_URI = "git://salsa.debian.org/iso-codes-team/iso-codes.git;protocol=http;branch=main;" 11SRC_URI = "git://salsa.debian.org/iso-codes-team/iso-codes.git;protocol=https;branch=main;"
9SRCREV = "a36019e5014bff251f83d522ddcfebaecf52afd3" 12SRCREV = "c2fcaadc832ed9f858950a43994973442d85ef4f"
10 13
11# inherit gettext cannot be used, because it adds gettext-native to BASEDEPENDS which 14# inherit gettext cannot be used, because it adds gettext-native to BASEDEPENDS which
12# are inhibited by allarch 15# are inhibited by allarch
@@ -16,4 +19,6 @@ S = "${WORKDIR}/git"
16 19
17inherit allarch autotools 20inherit allarch autotools
18 21
19FILES_${PN} += "${datadir}/xml/" 22FILES:${PN} += "${datadir}/xml/"
23
24BBCLASSEXTEND += "native"
diff --git a/meta/recipes-support/itstool/itstool/0001-Native-Don-t-use-build-time-hardcoded-python-binary-.patch b/meta/recipes-support/itstool/itstool/0001-Native-Don-t-use-build-time-hardcoded-python-binary-.patch
index 19a858bd75..fdcbe46fed 100644
--- a/meta/recipes-support/itstool/itstool/0001-Native-Don-t-use-build-time-hardcoded-python-binary-.patch
+++ b/meta/recipes-support/itstool/itstool/0001-Native-Don-t-use-build-time-hardcoded-python-binary-.patch
@@ -1,4 +1,4 @@
1From 335ef14fc801c9dfbe7e5692dc71cfbe72049d2b Mon Sep 17 00:00:00 2001 1From c47820450ce7f55d22c672cf94d20a5f9fd208bf Mon Sep 17 00:00:00 2001
2From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com> 2From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
3Date: Sun, 27 Oct 2019 16:38:52 +0100 3Date: Sun, 27 Oct 2019 16:38:52 +0100
4Subject: [PATCH] Native: Don't use build time hardcoded python binary path. 4Subject: [PATCH] Native: Don't use build time hardcoded python binary path.
@@ -16,12 +16,13 @@ don't support it [2]
16Upstream-Status: Inappropriate [OE specific] 16Upstream-Status: Inappropriate [OE specific]
17 17
18Signed-off-by: Andreas Müller <schnitzeltony@gmail.com> 18Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
19
19--- 20---
20 itstool.in | 2 +- 21 itstool.in | 2 +-
21 1 file changed, 1 insertion(+), 1 deletion(-) 22 1 file changed, 1 insertion(+), 1 deletion(-)
22 23
23diff --git a/itstool.in b/itstool.in 24diff --git a/itstool.in b/itstool.in
24index e64cd34..05d264f 100755 25index c21ad4b..daea177 100755
25--- a/itstool.in 26--- a/itstool.in
26+++ b/itstool.in 27+++ b/itstool.in
27@@ -1,4 +1,4 @@ 28@@ -1,4 +1,4 @@
@@ -30,6 +31,3 @@ index e64cd34..05d264f 100755
30 # 31 #
31 # Copyright (c) 2010-2018 Shaun McCance <shaunm@gnome.org> 32 # Copyright (c) 2010-2018 Shaun McCance <shaunm@gnome.org>
32 # 33 #
33--
342.21.0
35
diff --git a/meta/recipes-support/itstool/itstool_2.0.6.bb b/meta/recipes-support/itstool/itstool_2.0.6.bb
deleted file mode 100644
index c52aa7941a..0000000000
--- a/meta/recipes-support/itstool/itstool_2.0.6.bb
+++ /dev/null
@@ -1,20 +0,0 @@
1SUMMARY = "ITS Tool allows you to translate your XML documents with PO files"
2HOMEPAGE = "http://itstool.org/"
3LICENSE = "GPLv3"
4LIC_FILES_CHKSUM = "file://COPYING;md5=59c57b95fd7d0e9e238ebbc7ad47c5a5"
5
6inherit autotools python3native
7
8DEPENDS = "libxml2-native"
9
10SRC_URI = "http://files.itstool.org/${BPN}/${BPN}-${PV}.tar.bz2"
11SRC_URI_append_class-native = " file://0001-Native-Don-t-use-build-time-hardcoded-python-binary-.patch"
12SRC_URI_append_class-nativesdk = " file://0001-Native-Don-t-use-build-time-hardcoded-python-binary-.patch"
13SRC_URI_append_class-target = " file://0002-Don-t-use-build-time-hardcoded-python-binary-path.patch"
14
15SRC_URI[md5sum] = "4306eeba4f4aee6b393d14f9c3c57ca1"
16SRC_URI[sha256sum] = "6233cc22726a9a5a83664bf67d1af79549a298c23185d926c3677afa917b92a9"
17
18BBCLASSEXTEND = "native nativesdk"
19
20RDEPENDS_${PN} += "libxml2-python"
diff --git a/meta/recipes-support/itstool/itstool_2.0.7.bb b/meta/recipes-support/itstool/itstool_2.0.7.bb
new file mode 100644
index 0000000000..ddbc49b6cf
--- /dev/null
+++ b/meta/recipes-support/itstool/itstool_2.0.7.bb
@@ -0,0 +1,29 @@
1SUMMARY = "ITS Tool allows you to translate your XML documents with PO files"
2DESCRIPTION = "It extracts messages from XML files and outputs PO template \
3files, then merges translations from MO files to create translated \
4XML files. It determines what to translate and how to chunk it into \
5messages using the W3C Internationalization Tag Set (ITS). "
6HOMEPAGE = "http://itstool.org/"
7LICENSE = "GPL-3.0-only"
8LIC_FILES_CHKSUM = "\
9 file://COPYING;md5=59c57b95fd7d0e9e238ebbc7ad47c5a5 \
10 file://COPYING.GPL3;md5=d32239bcb673463ab874e80d47fae504 \
11"
12
13inherit autotools python3native
14
15DEPENDS = "libxml2-native"
16
17SRC_URI = "http://files.itstool.org/${BPN}/${BPN}-${PV}.tar.bz2 \
18 "
19UPSTREAM_CHECK_URI = "https://itstool.org/download.html"
20
21SRC_URI:append:class-native = " file://0001-Native-Don-t-use-build-time-hardcoded-python-binary-.patch"
22SRC_URI:append:class-nativesdk = " file://0001-Native-Don-t-use-build-time-hardcoded-python-binary-.patch"
23SRC_URI:append:class-target = " file://0002-Don-t-use-build-time-hardcoded-python-binary-path.patch"
24
25SRC_URI[sha256sum] = "6b9a7cd29a12bb95598f5750e8763cee78836a1a207f85b74d8b3275b27e87ca"
26
27BBCLASSEXTEND = "native nativesdk"
28
29RDEPENDS:${PN} += "libxml2-python"
diff --git a/meta/recipes-support/libassuan/libassuan/libassuan-add-pkgconfig-support.patch b/meta/recipes-support/libassuan/libassuan/libassuan-add-pkgconfig-support.patch
index 0e81454c63..fe811254d3 100644
--- a/meta/recipes-support/libassuan/libassuan/libassuan-add-pkgconfig-support.patch
+++ b/meta/recipes-support/libassuan/libassuan/libassuan-add-pkgconfig-support.patch
@@ -8,17 +8,20 @@ Signed-off-by: Constantin Musca <constantinx.musca@intel.com>
8 8
9forward ported to 2.4.4 9forward ported to 2.4.4
10Signed-off-by: Armin Kuster <akuster@mvista.com> 10Signed-off-by: Armin Kuster <akuster@mvista.com>
11---
12 src/libassuan.m4 | 81 ++----------------------------------------------
13 1 file changed, 3 insertions(+), 78 deletions(-)
11 14
12Index: libassuan-2.5.2/src/libassuan.m4 15diff --git a/src/libassuan.m4 b/src/libassuan.m4
13=================================================================== 16index df50484..380a48a 100644
14--- libassuan-2.5.2.orig/src/libassuan.m4 17--- a/src/libassuan.m4
15+++ libassuan-2.5.2/src/libassuan.m4 18+++ b/src/libassuan.m4
16@@ -16,27 +16,6 @@ dnl Returns ok set to yes or no. 19@@ -17,27 +17,6 @@ dnl Returns ok set to yes or no.
17 dnl 20 dnl
18 AC_DEFUN([_AM_PATH_LIBASSUAN_COMMON], 21 AC_DEFUN([_AM_PATH_LIBASSUAN_COMMON],
19 [ AC_REQUIRE([AC_CANONICAL_HOST]) 22 [ AC_REQUIRE([AC_CANONICAL_HOST])
20- AC_ARG_WITH(libassuan-prefix, 23- AC_ARG_WITH(libassuan-prefix,
21- AC_HELP_STRING([--with-libassuan-prefix=PFX], 24- AS_HELP_STRING([--with-libassuan-prefix=PFX],
22- [prefix where LIBASSUAN is installed (optional)]), 25- [prefix where LIBASSUAN is installed (optional)]),
23- libassuan_config_prefix="$withval", libassuan_config_prefix="") 26- libassuan_config_prefix="$withval", libassuan_config_prefix="")
24- if test x$libassuan_config_prefix != x ; then 27- if test x$libassuan_config_prefix != x ; then
@@ -41,10 +44,11 @@ Index: libassuan-2.5.2/src/libassuan.m4
41 44
42 tmp=ifelse([$1], ,1:0.9.2,$1) 45 tmp=ifelse([$1], ,1:0.9.2,$1)
43 if echo "$tmp" | grep ':' >/dev/null 2>/dev/null ; then 46 if echo "$tmp" | grep ':' >/dev/null 2>/dev/null ; then
44@@ -47,58 +26,11 @@ AC_DEFUN([_AM_PATH_LIBASSUAN_COMMON], 47@@ -47,59 +26,11 @@ AC_DEFUN([_AM_PATH_LIBASSUAN_COMMON],
48 req_libassuan_api=0
45 min_libassuan_version="$tmp" 49 min_libassuan_version="$tmp"
46 fi 50 fi
47 51-
48- AC_MSG_CHECKING(for LIBASSUAN - version >= $min_libassuan_version) 52- AC_MSG_CHECKING(for LIBASSUAN - version >= $min_libassuan_version)
49- ok=no 53- ok=no
50- if test "$LIBASSUAN_CONFIG" != "no"; then 54- if test "$LIBASSUAN_CONFIG" != "no"; then
@@ -102,7 +106,7 @@ Index: libassuan-2.5.2/src/libassuan.m4
102 if test "$tmp" -gt 0 ; then 106 if test "$tmp" -gt 0 ; then
103 AC_MSG_CHECKING([LIBASSUAN API version]) 107 AC_MSG_CHECKING([LIBASSUAN API version])
104 if test "$req_libassuan_api" -eq "$tmp" ; then 108 if test "$req_libassuan_api" -eq "$tmp" ; then
105@@ -114,9 +46,7 @@ AC_DEFUN([_AM_PATH_LIBASSUAN_COMMON], 109@@ -115,9 +46,7 @@ AC_DEFUN([_AM_PATH_LIBASSUAN_COMMON],
106 if test $ok = yes; then 110 if test $ok = yes; then
107 if test x"$host" != x ; then 111 if test x"$host" != x ; then
108 if test -z "$use_gpgrt_config"; then 112 if test -z "$use_gpgrt_config"; then
@@ -113,7 +117,7 @@ Index: libassuan-2.5.2/src/libassuan.m4
113 fi 117 fi
114 if test x"$libassuan_config_host" != xnone ; then 118 if test x"$libassuan_config_host" != xnone ; then
115 if test x"$libassuan_config_host" != x"$host" ; then 119 if test x"$libassuan_config_host" != x"$host" ; then
116@@ -158,12 +88,8 @@ dnl 120@@ -159,12 +88,8 @@ dnl
117 AC_DEFUN([AM_PATH_LIBASSUAN], 121 AC_DEFUN([AM_PATH_LIBASSUAN],
118 [ _AM_PATH_LIBASSUAN_COMMON($1) 122 [ _AM_PATH_LIBASSUAN_COMMON($1)
119 if test $ok = yes; then 123 if test $ok = yes; then
@@ -126,3 +130,6 @@ Index: libassuan-2.5.2/src/libassuan.m4
126 ifelse([$3], , :, [$3]) 130 ifelse([$3], , :, [$3])
127 fi 131 fi
128 AC_SUBST(LIBASSUAN_CFLAGS) 132 AC_SUBST(LIBASSUAN_CFLAGS)
133--
1342.25.1
135
diff --git a/meta/recipes-support/libassuan/libassuan_2.5.4.bb b/meta/recipes-support/libassuan/libassuan_2.5.7.bb
index e83f571183..d1e622635f 100644
--- a/meta/recipes-support/libassuan/libassuan_2.5.4.bb
+++ b/meta/recipes-support/libassuan/libassuan_2.5.7.bb
@@ -1,10 +1,13 @@
1SUMMARY = "IPC library used by GnuPG and GPGME" 1SUMMARY = "IPC library used by GnuPG and GPGME"
2DESCRIPTION = "A small library implementing the so-called Assuan protocol. \
3This protocol is used for IPC between most newer GnuPG components. \
4Both, server and client side functions are provided. "
2HOMEPAGE = "http://www.gnupg.org/related_software/libassuan/" 5HOMEPAGE = "http://www.gnupg.org/related_software/libassuan/"
3BUGTRACKER = "https://bugs.g10code.com/gnupg/index" 6BUGTRACKER = "https://bugs.g10code.com/gnupg/index"
4 7
5LICENSE = "GPLv3+ & LGPLv2.1+" 8LICENSE = "GPL-3.0-or-later & LGPL-2.1-or-later"
6LICENSE_${PN} = "LGPLv2.1+" 9LICENSE:${PN} = "LGPL-2.1-or-later"
7LICENSE_${PN}-doc = "GPLv3+" 10LICENSE:${PN}-doc = "GPL-3.0-or-later"
8LIC_FILES_CHKSUM = "file://COPYING;md5=f27defe1e96c2e1ecd4e0c9be8967949 \ 11LIC_FILES_CHKSUM = "file://COPYING;md5=f27defe1e96c2e1ecd4e0c9be8967949 \
9 file://COPYING.LIB;md5=2d5025d4aa3495befef8f17206a5b0a1 \ 12 file://COPYING.LIB;md5=2d5025d4aa3495befef8f17206a5b0a1 \
10 file://src/assuan.c;endline=20;md5=ab92143a5a2adabd06d7994d1467ea5c\ 13 file://src/assuan.c;endline=20;md5=ab92143a5a2adabd06d7994d1467ea5c\
@@ -17,18 +20,18 @@ SRC_URI = "${GNUPG_MIRROR}/libassuan/libassuan-${PV}.tar.bz2 \
17 file://libassuan-add-pkgconfig-support.patch \ 20 file://libassuan-add-pkgconfig-support.patch \
18 " 21 "
19 22
20SRC_URI[sha256sum] = "c080ee96b3bd519edd696cfcebdecf19a3952189178db9887be713ccbcb5fbf0" 23SRC_URI[sha256sum] = "0103081ffc27838a2e50479153ca105e873d3d65d8a9593282e9c94c7e6afb76"
21 24
22BINCONFIG = "${bindir}/libassuan-config" 25BINCONFIG = "${bindir}/libassuan-config"
23 26
24inherit autotools texinfo binconfig-disabled pkgconfig multilib_header 27inherit autotools texinfo binconfig-disabled pkgconfig multilib_header
25 28
26do_configure_prepend () { 29do_configure:prepend () {
27 # Else these could be used in preference to those in aclocal-copy 30 # Else these could be used in preference to those in aclocal-copy
28 rm -f ${S}/m4/*.m4 31 rm -f ${S}/m4/*.m4
29} 32}
30 33
31do_install_append () { 34do_install:append () {
32 oe_multilib_header assuan.h 35 oe_multilib_header assuan.h
33} 36}
34 37
diff --git a/meta/recipes-support/libatomic-ops/libatomic-ops_7.6.10.bb b/meta/recipes-support/libatomic-ops/libatomic-ops_7.6.10.bb
deleted file mode 100644
index 7628eedb1b..0000000000
--- a/meta/recipes-support/libatomic-ops/libatomic-ops_7.6.10.bb
+++ /dev/null
@@ -1,22 +0,0 @@
1SUMMARY = "A library for atomic integer operations"
2HOMEPAGE = "https://github.com/ivmai/libatomic_ops/"
3SECTION = "optional"
4PROVIDES += "libatomics-ops"
5LICENSE = "GPLv2 & MIT"
6LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
7 file://doc/LICENSING.txt;md5=e00dd5c8ac03a14c5ae5225a4525fa2d \
8 "
9
10SRC_URI = "https://github.com/ivmai/libatomic_ops/releases/download/v${PV}/libatomic_ops-${PV}.tar.gz"
11UPSTREAM_CHECK_URI = "https://github.com/ivmai/libatomic_ops/releases"
12
13SRC_URI[md5sum] = "90a78a84d9c28ce11f331c25289bfbd0"
14SRC_URI[sha256sum] = "587edf60817f56daf1e1ab38a4b3c729b8e846ff67b4f62a6157183708f099af"
15
16S = "${WORKDIR}/libatomic_ops-${PV}"
17
18ALLOW_EMPTY_${PN} = "1"
19
20inherit autotools pkgconfig
21
22BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-support/libatomic-ops/libatomic-ops_7.8.2.bb b/meta/recipes-support/libatomic-ops/libatomic-ops_7.8.2.bb
new file mode 100644
index 0000000000..824400e743
--- /dev/null
+++ b/meta/recipes-support/libatomic-ops/libatomic-ops_7.8.2.bb
@@ -0,0 +1,22 @@
1SUMMARY = "A library for atomic integer operations"
2DESCRIPTION = "Package provides semi-portable access to hardware-provided atomic memory update operations on a number of architectures."
3HOMEPAGE = "https://github.com/ivmai/libatomic_ops/"
4SECTION = "optional"
5PROVIDES += "libatomics-ops"
6LICENSE = "GPL-2.0-only & MIT"
7LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
8 file://LICENSE;md5=5700d28353dfa2f191ca9b1bd707865e \
9 "
10
11SRC_URI = "${GITHUB_BASE_URI}/download/v${PV}/libatomic_ops-${PV}.tar.gz"
12GITHUB_BASE_URI = "https://github.com/ivmai/libatomic_ops/releases"
13
14SRC_URI[sha256sum] = "d305207fe207f2b3fb5cb4c019da12b44ce3fcbc593dfd5080d867b1a2419b51"
15
16S = "${WORKDIR}/libatomic_ops-${PV}"
17
18ALLOW_EMPTY:${PN} = "1"
19
20inherit autotools pkgconfig github-releases
21
22BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-support/libbsd/libbsd_0.11.3.bb b/meta/recipes-support/libbsd/libbsd_0.12.2.bb
index 55ecae2ea5..7d5e88f293 100644
--- a/meta/recipes-support/libbsd/libbsd_0.11.3.bb
+++ b/meta/recipes-support/libbsd/libbsd_0.12.2.bb
@@ -1,6 +1,3 @@
1# Copyright (C) 2013 Khem Raj <raj.khem@gmail.com>
2# Released under the MIT license (see COPYING.MIT for the terms)
3
4SUMMARY = "Library of utility functions from BSD systems" 1SUMMARY = "Library of utility functions from BSD systems"
5DESCRIPTION = "This library provides useful functions commonly found on BSD systems, \ 2DESCRIPTION = "This library provides useful functions commonly found on BSD systems, \
6 and lacking on others like GNU systems, thus making it easier to port \ 3 and lacking on others like GNU systems, thus making it easier to port \
@@ -28,13 +25,20 @@ HOMEPAGE = "https://libbsd.freedesktop.org/wiki/"
28# License: public-domain 25# License: public-domain
29# License: public-domain-Colin-Plumb 26# License: public-domain-Colin-Plumb
30LICENSE = "BSD-3-Clause & BSD-4-Clause & ISC & PD" 27LICENSE = "BSD-3-Clause & BSD-4-Clause & ISC & PD"
31LICENSE_${PN} = "BSD-3-Clause & ISC & PD" 28LICENSE:${PN} = "BSD-3-Clause & ISC & PD"
32LIC_FILES_CHKSUM = "file://COPYING;md5=adf6172075bcc5837e33a8a688eb7e22" 29LICENSE:${PN}-dbg = "BSD-3-Clause & ISC & PD"
30LICENSE:${PN}-dev = "BSD-3-Clause & ISC & PD"
31LICENSE:${PN}-doc = "BSD-3-Clause & BSD-4-Clause & ISC & PD"
32LICENSE:${PN}-locale = "BSD-3-Clause & ISC & PD"
33LICENSE:${PN}-src = "BSD-3-Clause & ISC & PD"
34LICENSE:${PN}-staticdev = "BSD-3-Clause & ISC & PD"
35
36LIC_FILES_CHKSUM = "file://COPYING;md5=9b087a0981a1fcad42efbba6d4925a0f"
33SECTION = "libs" 37SECTION = "libs"
34 38
35SRC_URI = "https://libbsd.freedesktop.org/releases/${BPN}-${PV}.tar.xz" 39SRC_URI = "https://libbsd.freedesktop.org/releases/${BPN}-${PV}.tar.xz"
36 40
37SRC_URI[sha256sum] = "ff95cf8184151dacae4247832f8d4ea8800fa127dbd15033ecfe839f285b42a1" 41SRC_URI[sha256sum] = "b88cc9163d0c652aaf39a99991d974ddba1c3a9711db8f1b5838af2a14731014"
38 42
39inherit autotools pkgconfig 43inherit autotools pkgconfig
40 44
diff --git a/meta/recipes-support/libcap-ng/files/fix-issues-with-swig-4-2.patch b/meta/recipes-support/libcap-ng/files/fix-issues-with-swig-4-2.patch
new file mode 100644
index 0000000000..fb424fe725
--- /dev/null
+++ b/meta/recipes-support/libcap-ng/files/fix-issues-with-swig-4-2.patch
@@ -0,0 +1,32 @@
1From 355eada2d20886287cffc16e304087dd6f66ae37 Mon Sep 17 00:00:00 2001
2From: Steve Grubb <ausearch.1@gmail.com>
3Date: Thu, 4 Jan 2024 15:06:29 -0500
4Subject: [PATCH] Remove python global exception handler since its deprecated
5
6Upstream-Status: Backport [https://github.com/stevegrubb/libcap-ng/commit/30453b6553948cd05c438f9f509013e3bb84f25b]
7Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
8---
9 bindings/src/capng_swig.i | 7 -------
10 1 file changed, 7 deletions(-)
11
12diff --git a/bindings/src/capng_swig.i b/bindings/src/capng_swig.i
13index fcdaf18..fa85e13 100644
14--- a/bindings/src/capng_swig.i
15+++ b/bindings/src/capng_swig.i
16@@ -30,13 +30,6 @@
17
18 %varargs(16, signed capability = 0) capng_updatev;
19
20-%except(python) {
21- $action
22- if (result < 0) {
23- PyErr_SetFromErrno(PyExc_OSError);
24- return NULL;
25- }
26-}
27 #endif
28
29 %define __signed__
30--
312.43.2
32
diff --git a/meta/recipes-support/libcap-ng/libcap-ng-python_0.8.2.bb b/meta/recipes-support/libcap-ng/libcap-ng-python_0.8.2.bb
deleted file mode 100644
index 6cea422d11..0000000000
--- a/meta/recipes-support/libcap-ng/libcap-ng-python_0.8.2.bb
+++ /dev/null
@@ -1,28 +0,0 @@
1require libcap-ng.inc
2
3FILESEXTRAPATHS_prepend := "${THISDIR}/libcap-ng:"
4
5SUMMARY .= " - python"
6
7inherit lib_package autotools python3targetconfig
8
9DEPENDS += "libcap-ng python3 swig-native"
10
11S = "${WORKDIR}/libcap-ng-${PV}"
12
13EXTRA_OECONF += "--with-python --with-python3"
14
15do_install_append() {
16 rm -rf ${D}${bindir}
17 rm -rf ${D}${libdir}/.debug
18 rm -f ${D}${libdir}/lib*
19 rm -rf ${D}${libdir}/pkgconfig
20 rm -rf ${D}${datadir}
21 rm -rf ${D}${includedir}
22}
23
24# PACKAGES = "${PN}"
25
26FILES_${PN} = "${libdir}/python${PYTHON_BASEVERSION}"
27FILES_${PN}-dbg =+ "${PYTHON_SITEPACKAGES_DIR}/.debug/_capng.so"
28
diff --git a/meta/recipes-support/libcap-ng/libcap-ng-python_0.8.4.bb b/meta/recipes-support/libcap-ng/libcap-ng-python_0.8.4.bb
new file mode 100644
index 0000000000..4790134ae9
--- /dev/null
+++ b/meta/recipes-support/libcap-ng/libcap-ng-python_0.8.4.bb
@@ -0,0 +1,29 @@
1require libcap-ng.inc
2
3FILESEXTRAPATHS:prepend := "${THISDIR}/libcap-ng:"
4
5SUMMARY .= " - python"
6
7inherit lib_package autotools python3targetconfig
8
9# drop setuptools when version > 0.8.3 is released; it's needed only for distutils
10DEPENDS += "libcap-ng python3 swig-native python3-setuptools-native"
11
12S = "${WORKDIR}/libcap-ng-${PV}"
13
14EXTRA_OECONF += "--with-python3"
15
16do_install:append() {
17 rm -rf ${D}${bindir}
18 rm -rf ${D}${libdir}/.debug
19 rm -f ${D}${libdir}/lib*
20 rm -rf ${D}${libdir}/pkgconfig
21 rm -rf ${D}${datadir}
22 rm -rf ${D}${includedir}
23}
24
25# PACKAGES = "${PN}"
26
27FILES:${PN} = "${libdir}/python${PYTHON_BASEVERSION}"
28FILES:${PN}-dbg =+ "${PYTHON_SITEPACKAGES_DIR}/.debug/_capng.so"
29
diff --git a/meta/recipes-support/libcap-ng/libcap-ng.inc b/meta/recipes-support/libcap-ng/libcap-ng.inc
index 64bc62de24..845b7c2f0a 100644
--- a/meta/recipes-support/libcap-ng/libcap-ng.inc
+++ b/meta/recipes-support/libcap-ng/libcap-ng.inc
@@ -3,17 +3,17 @@ DESCRIPTION = "The libcap-ng library is intended to make programming \
3with POSIX capabilities much easier than the traditional libcap library." 3with POSIX capabilities much easier than the traditional libcap library."
4HOMEPAGE = "http://freecode.com/projects/libcap-ng" 4HOMEPAGE = "http://freecode.com/projects/libcap-ng"
5SECTION = "base" 5SECTION = "base"
6LICENSE = "GPLv2+ & LGPLv2.1+" 6LICENSE = "GPL-2.0-or-later & LGPL-2.1-or-later"
7LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \ 7LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \
8 file://COPYING.LIB;md5=e3eda01d9815f8d24aae2dbd89b68b06" 8 file://COPYING.LIB;md5=e3eda01d9815f8d24aae2dbd89b68b06"
9 9
10SRC_URI = "https://people.redhat.com/sgrubb/libcap-ng/libcap-ng-${PV}.tar.gz \ 10SRC_URI = "https://people.redhat.com/sgrubb/libcap-ng/libcap-ng-${PV}.tar.gz \
11 file://determinism.patch \ 11 file://fix-issues-with-swig-4-2.patch \
12" 12 "
13 13
14SRC_URI[sha256sum] = "52c083b77c2b0d8449dee141f9c3eba76e6d4c5ad44ef05df25891126cb85ae9" 14SRC_URI[sha256sum] = "68581d3b38e7553cb6f6ddf7813b1fc99e52856f21421f7b477ce5abd2605a8a"
15 15
16EXTRA_OECONF_append_class-target = " --with-capability_header=${STAGING_INCDIR}/linux/capability.h" 16EXTRA_OECONF:append:class-target = " --with-capability_header=${STAGING_INCDIR}/linux/capability.h"
17EXTRA_OECONF_append_class-nativesdk = " --with-capability_header=${STAGING_INCDIR}/linux/capability.h" 17EXTRA_OECONF:append:class-nativesdk = " --with-capability_header=${STAGING_INCDIR}/linux/capability.h"
18 18
19BBCLASSEXTEND = "native nativesdk" 19BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-support/libcap-ng/libcap-ng/determinism.patch b/meta/recipes-support/libcap-ng/libcap-ng/determinism.patch
deleted file mode 100644
index fbb7380f56..0000000000
--- a/meta/recipes-support/libcap-ng/libcap-ng/determinism.patch
+++ /dev/null
@@ -1,59 +0,0 @@
1[PATCH] bindings/python: Allow hardcoded path to capability.h to be overridden
2
3Currently the path to capability.h is hardcoded. When cross compiling
4the host capabiity.h may be different to the target copy, leading
5to different options being encoded in the python bindings than
6expected. This causes a reproducibility issue amongst other potential
7problems.
8
9Add a configure option to optionally specify the right path to the
10correct header as its probably safer/more reliable than trying to
11query the compiler to get the header path.
12
13Signed-off-by: Richard Purdie richard.purdie@linuxfoundation.org
14Upstream-Status: Submitted [https://github.com/stevegrubb/libcap-ng/pull/30]
15
16Index: libcap-ng-0.8.2/configure.ac
17===================================================================
18--- libcap-ng-0.8.2.orig/configure.ac
19+++ libcap-ng-0.8.2/configure.ac
20@@ -63,6 +63,13 @@ AC_CHECK_HEADERS(sys/vfs.h, [
21 AC_CHECK_HEADERS(linux/magic.h, [] [AC_MSG_WARN(linux/magic.h is required in order to verify procfs.)])
22 ], [AC_MSG_WARN(sys/vfs.h is required in order to verify procfs.)])
23
24+
25+AC_ARG_WITH([capability_header],
26+ [AS_HELP_STRING([--with-capability_header=path : path to cpapbility.h])],
27+ [CAPABILITY_HEADER=$withval],
28+ [CAPABILITY_HEADER=/usr/include/linux/capability.h])
29+AC_SUBST(CAPABILITY_HEADER)
30+
31 AC_C_CONST
32 AC_C_INLINE
33 AM_PROG_CC_C_O
34Index: libcap-ng-0.8.2/bindings/python3/Makefile.am
35===================================================================
36--- libcap-ng-0.8.2.orig/bindings/python3/Makefile.am
37+++ libcap-ng-0.8.2/bindings/python3/Makefile.am
38@@ -41,7 +41,7 @@ nodist__capng_la_SOURCES = capng_wrap.c
39 capng.py capng_wrap.c: ${srcdir}/../src/capng_swig.i caps.h capng.h
40 swig -o capng_wrap.c ${SWIG_FLAGS} ${SWIG_INCLUDES} ${srcdir}/../src/capng_swig.i
41 caps.h:
42- cat /usr/include/linux/capability.h | grep '^#define CAP' | grep -v '[()]' > caps.h
43+ cat $(CAPABILITY_HEADER) | grep '^#define CAP' | grep -v '[()]' > caps.h
44 capng.h:
45 cat ${top_srcdir}/src/cap-ng.h | grep -v '_state' > capng.h
46
47Index: libcap-ng-0.8.2/bindings/python/Makefile.am
48===================================================================
49--- libcap-ng-0.8.2.orig/bindings/python/Makefile.am
50+++ libcap-ng-0.8.2/bindings/python/Makefile.am
51@@ -38,7 +38,7 @@ nodist__capng_la_SOURCES = capng_wrap.c
52 capng.py capng_wrap.c: ${srcdir}/../src/capng_swig.i caps.h capng.h
53 swig -o capng_wrap.c ${SWIG_FLAGS} ${SWIG_INCLUDES} ${srcdir}/../src/capng_swig.i
54 caps.h:
55- cat /usr/include/linux/capability.h | grep '^#define CAP' | grep -v '[()]' > caps.h
56+ cat $(CAPABILITY_HEADER) | grep '^#define CAP' | grep -v '[()]' > caps.h
57 capng.h:
58 cat ${top_srcdir}/src/cap-ng.h | grep -v '_state' > capng.h
59
diff --git a/meta/recipes-support/libcap-ng/libcap-ng_0.8.2.bb b/meta/recipes-support/libcap-ng/libcap-ng_0.8.4.bb
index 6e6de45494..3dbe3e2ffd 100644
--- a/meta/recipes-support/libcap-ng/libcap-ng_0.8.2.bb
+++ b/meta/recipes-support/libcap-ng/libcap-ng_0.8.4.bb
@@ -2,11 +2,11 @@ require libcap-ng.inc
2 2
3inherit lib_package autotools 3inherit lib_package autotools
4 4
5EXTRA_OECONF += "--without-python --without-python3" 5EXTRA_OECONF += "--without-python3"
6 6
7BBCLASSEXTEND = "native nativesdk" 7BBCLASSEXTEND = "native nativesdk"
8 8
9do_install_append() { 9do_install:append() {
10 # Moving libcap-ng to base_libdir 10 # Moving libcap-ng to base_libdir
11 if [ ! ${D}${libdir} -ef ${D}${base_libdir} ]; then 11 if [ ! ${D}${libdir} -ef ${D}${base_libdir} ]; then
12 mkdir -p ${D}/${base_libdir}/ 12 mkdir -p ${D}/${base_libdir}/
diff --git a/meta/recipes-support/libcap/files/0001-nativesdk-libcap-Raise-the-size-of-arrays-containing.patch b/meta/recipes-support/libcap/files/0001-nativesdk-libcap-Raise-the-size-of-arrays-containing.patch
new file mode 100644
index 0000000000..2ac1e6e560
--- /dev/null
+++ b/meta/recipes-support/libcap/files/0001-nativesdk-libcap-Raise-the-size-of-arrays-containing.patch
@@ -0,0 +1,34 @@
1From 709aa8e156415215b0bb034d05b2aa2f44be044e Mon Sep 17 00:00:00 2001
2From: Hongxu Jia <hongxu.jia@windriver.com>
3Date: Thu, 14 Oct 2021 15:57:36 +0800
4Subject: [PATCH] nativesdk-libcap: Raise the size of arrays containing dl
5 paths
6
7This patch puts the dynamic loader path in the binaries, SYSTEM_DIRS strings
8and lengths as well as ld.so.cache path in the dynamic loader to specific
9sections in memory. The sections that contain paths have been allocated a 4096
10byte section, which is the maximum path length in linux. This will allow the
11relocating script to parse the ELF binary, detect the section and easily replace
12the strings in a certain path.
13
14Upstream-Status: Inappropriate [SDK specific]
15
16Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
17
18---
19 libcap/execable.h | 2 +-
20 1 file changed, 1 insertion(+), 1 deletion(-)
21
22diff --git a/libcap/execable.h b/libcap/execable.h
23index fee17b4..5bb0c55 100644
24--- a/libcap/execable.h
25+++ b/libcap/execable.h
26@@ -23,7 +23,7 @@
27 #endif
28 #define __EXECABLE_H
29
30-const char __execable_dl_loader[] __attribute((section(".interp"))) =
31+const char __execable_dl_loader[4096] __attribute((section(".interp"))) =
32 SHARED_LOADER ;
33
34 static void __execable_parse_args(int *argc_p, char ***argv_p)
diff --git a/meta/recipes-support/libcap/files/0001-tests-do-not-statically-link-a-test.patch b/meta/recipes-support/libcap/files/0001-tests-do-not-statically-link-a-test.patch
deleted file mode 100644
index d2653afb75..0000000000
--- a/meta/recipes-support/libcap/files/0001-tests-do-not-statically-link-a-test.patch
+++ /dev/null
@@ -1,52 +0,0 @@
1From 6aa15fe548e5b1d6ca3b373779beb7521ea95ba9 Mon Sep 17 00:00:00 2001
2From: Alexander Kanavin <alex.kanavin@gmail.com>
3Date: Wed, 15 Jan 2020 17:16:28 +0100
4Subject: [PATCH] tests: do not statically link a test
5
6This fails on e.g. centos 7
7
8Upstream-Status: Inappropriate [oe-core specific]
9Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
10---
11 progs/Makefile | 2 +-
12 tests/Makefile | 4 ++--
13 2 files changed, 3 insertions(+), 3 deletions(-)
14
15diff --git a/progs/Makefile b/progs/Makefile
16index 1d7fc7a..37db8f7 100644
17--- a/progs/Makefile
18+++ b/progs/Makefile
19@@ -42,7 +42,7 @@ endif
20 test: $(PROGS)
21
22 tcapsh-static: capsh.c $(DEPS)
23- $(CC) $(IPATH) $(CAPSH_SHELL) $(CFLAGS) -o $@ $< $(LIBCAPLIB) $(LDFLAGS) --static
24+ $(CC) $(IPATH) $(CAPSH_SHELL) $(CFLAGS) -o $@ $< $(LIBCAPLIB) $(LDFLAGS)
25
26 sudotest: test tcapsh-static
27 sudo $(LDPATH) ./quicktest.sh
28diff --git a/tests/Makefile b/tests/Makefile
29index 01f7589..094ec57 100644
30--- a/tests/Makefile
31+++ b/tests/Makefile
32@@ -22,7 +22,7 @@ ifeq ($(PTHREADS),yes)
33 DEPS += ../libcap/libpsx.so
34 endif
35 else
36-LDFLAGS += --static
37+LDFLAGS +=
38 DEPS=../libcap/libcap.a
39 ifeq ($(PTHREADS),yes)
40 DEPS += ../libcap/libpsx.a
41@@ -106,7 +106,7 @@ noexploit: exploit.o $(DEPS)
42
43 # This one runs in a chroot with no shared library files.
44 noop: noop.c
45- $(CC) $(CFLAGS) $< -o $@ --static
46+ $(CC) $(CFLAGS) $< -o $@
47
48 clean:
49 rm -f psx_test libcap_psx_test libcap_launch_test *~
50--
512.17.1
52
diff --git a/meta/recipes-support/libcap/files/0002-tests-do-not-run-target-executables.patch b/meta/recipes-support/libcap/files/0002-tests-do-not-run-target-executables.patch
index 69287152eb..20346cf2fb 100644
--- a/meta/recipes-support/libcap/files/0002-tests-do-not-run-target-executables.patch
+++ b/meta/recipes-support/libcap/files/0002-tests-do-not-run-target-executables.patch
@@ -1,4 +1,4 @@
1From 652071e430d5eea758965176b7648e79ad404daa Mon Sep 17 00:00:00 2001 1From 10212b6d4e8843feffbeab5336342d97f3a46bb2 Mon Sep 17 00:00:00 2001
2From: Alexander Kanavin <alex.kanavin@gmail.com> 2From: Alexander Kanavin <alex.kanavin@gmail.com>
3Date: Fri, 20 Dec 2019 16:54:05 +0100 3Date: Fri, 20 Dec 2019 16:54:05 +0100
4Subject: [PATCH] tests: do not run target executables 4Subject: [PATCH] tests: do not run target executables
@@ -11,20 +11,20 @@ Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
11 1 file changed, 2 deletions(-) 11 1 file changed, 2 deletions(-)
12 12
13diff --git a/tests/Makefile b/tests/Makefile 13diff --git a/tests/Makefile b/tests/Makefile
14index fc39fee..3431df9 100644 14index ecb7d1b..8950c73 100644
15--- a/tests/Makefile 15--- a/tests/Makefile
16+++ b/tests/Makefile 16+++ b/tests/Makefile
17@@ -59,13 +59,11 @@ endif 17@@ -61,13 +61,11 @@ endif
18 18
19 # unprivileged 19 # unprivileged
20 run_psx_test: psx_test 20 run_psx_test: psx_test
21- ./psx_test 21- ./psx_test
22 22
23 psx_test: psx_test.c $(DEPS) 23 psx_test: psx_test.c $(DEPS)
24 $(CC) $(CFLAGS) $(IPATH) $< -o $@ $(LINKEXTRA) $(LIBPSXLIB) $(LDFLAGS) 24 $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) $< -o $@ $(LINKEXTRA) $(LIBPSXLIB)
25 25
26 run_libcap_psx_test: libcap_psx_test 26 run_libcap_psx_test: libcap_psx_test
27- ./libcap_psx_test 27- ./libcap_psx_test
28 28
29 libcap_psx_test: libcap_psx_test.c $(DEPS) 29 libcap_psx_test: libcap_psx_test.c $(DEPS)
30 $(CC) $(CFLAGS) $(IPATH) $< -o $@ $(LINKEXTRA) $(LIBCAPLIB) $(LIBPSXLIB) $(LDFLAGS) 30 $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) $< -o $@ $(LINKEXTRA) $(LIBCAPLIB) $(LIBPSXLIB)
diff --git a/meta/recipes-support/libcap/libcap_2.48.bb b/meta/recipes-support/libcap/libcap_2.69.bb
index d8bbebdde1..92fa766d37 100644
--- a/meta/recipes-support/libcap/libcap_2.48.bb
+++ b/meta/recipes-support/libcap/libcap_2.69.bb
@@ -1,34 +1,32 @@
1SUMMARY = "Library for getting/setting POSIX.1e capabilities" 1SUMMARY = "Library for getting/setting POSIX.1e capabilities"
2DESCRIPTION = "A library providing the API to access POSIX capabilities. \
3These allow giving various kinds of specific privileges to individual \
4users, without giving them full root permissions."
2HOMEPAGE = "http://sites.google.com/site/fullycapable/" 5HOMEPAGE = "http://sites.google.com/site/fullycapable/"
3
4# no specific GPL version required 6# no specific GPL version required
5LICENSE = "BSD | GPLv2" 7LICENSE = "BSD-3-Clause | GPL-2.0-only"
6LIC_FILES_CHKSUM = "file://License;md5=3f84fd6f29d453a56514cb7e4ead25f1" 8LIC_FILES_CHKSUM_PAM = "file://pam_cap/License;md5=905326f41d3d1f8df21943f9a4ed6b50"
9LIC_FILES_CHKSUM = "file://License;md5=2965a646645b72ecee859b43c592dcaa \
10 ${@bb.utils.contains('PACKAGECONFIG', 'pam', '${LIC_FILES_CHKSUM_PAM}', '', d)} \
11 "
7 12
8DEPENDS = "hostperl-runtime-native gperf-native" 13DEPENDS = "hostperl-runtime-native gperf-native"
9 14
10SRC_URI = "${KERNELORG_MIRROR}/linux/libs/security/linux-privs/${BPN}2/${BPN}-${PV}.tar.xz \ 15SRC_URI = "${KERNELORG_MIRROR}/linux/libs/security/linux-privs/${BPN}2/${BPN}-${PV}.tar.xz \
11 file://0001-ensure-the-XATTR_NAME_CAPS-is-defined-when-it-is-use.patch \ 16 file://0001-ensure-the-XATTR_NAME_CAPS-is-defined-when-it-is-use.patch \
12 file://0002-tests-do-not-run-target-executables.patch \ 17 file://0002-tests-do-not-run-target-executables.patch \
13 file://0001-tests-do-not-statically-link-a-test.patch \
14 " 18 "
15SRC_URI[sha256sum] = "4de9590ee09a87c282d558737ffb5b6175ccbfd26d580add10df44d0f047f6c2" 19SRC_URI:append:class-nativesdk = " \
20 file://0001-nativesdk-libcap-Raise-the-size-of-arrays-containing.patch \
21 "
22SRC_URI[sha256sum] = "f311f8f3dad84699d0566d1d6f7ec943a9298b28f714cae3c931dfd57492d7eb"
16 23
17UPSTREAM_CHECK_URI = "https://www.kernel.org/pub/linux/libs/security/linux-privs/${BPN}2/" 24UPSTREAM_CHECK_URI = "https://www.kernel.org/pub/linux/libs/security/linux-privs/${BPN}2/"
18 25
19inherit lib_package 26inherit lib_package
20 27
21# do NOT pass target cflags to host compilations
22#
23do_configure() {
24 # libcap uses := for compilers, fortunately, it gives us a hint
25 # on what should be replaced with ?=
26 sed -e 's,:=,?=,g' -i Make.Rules
27 sed -e 's,^BUILD_CFLAGS ?= ,BUILD_CFLAGS := $(BUILD_CFLAGS) ,' -i Make.Rules
28}
29
30PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'pam', d)}" 28PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'pam', d)}"
31PACKAGECONFIG_class-native ??= "" 29PACKAGECONFIG:class-native ??= ""
32 30
33PACKAGECONFIG[pam] = "PAM_CAP=yes,PAM_CAP=no,libpam" 31PACKAGECONFIG[pam] = "PAM_CAP=yes,PAM_CAP=no,libpam"
34 32
@@ -37,16 +35,21 @@ EXTRA_OEMAKE = " \
37 lib='${baselib}' \ 35 lib='${baselib}' \
38 RAISE_SETFCAP=no \ 36 RAISE_SETFCAP=no \
39 DYNAMIC=yes \ 37 DYNAMIC=yes \
40 BUILD_GPERF=yes \ 38 USE_GPERF=yes \
41" 39"
42 40
43EXTRA_OEMAKE_append_class-target = " SYSTEM_HEADERS=${STAGING_INCDIR}" 41EXTRA_OEMAKE:append:class-target = " SYSTEM_HEADERS=${STAGING_INCDIR}"
44
45# these are present in the libcap defaults, so include in our CFLAGS too
46CFLAGS += "-D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64"
47 42
48do_compile() { 43do_compile() {
49 oe_runmake ${PACKAGECONFIG_CONFARGS} 44 unset CFLAGS BUILD_CFLAGS
45 oe_runmake \
46 ${PACKAGECONFIG_CONFARGS} \
47 AR="${AR}" \
48 CC="${CC}" \
49 RANLIB="${RANLIB}" \
50 OBJCOPY="${OBJCOPY}" \
51 COPTS="${CFLAGS}" \
52 BUILD_COPTS="${BUILD_CFLAGS}"
50} 53}
51 54
52do_install() { 55do_install() {
@@ -57,7 +60,7 @@ do_install() {
57 SBINDIR="${sbindir}" 60 SBINDIR="${sbindir}"
58} 61}
59 62
60do_install_append() { 63do_install:append() {
61 # Move the library to base_libdir 64 # Move the library to base_libdir
62 install -d ${D}${base_libdir} 65 install -d ${D}${base_libdir}
63 if [ ! ${D}${libdir} -ef ${D}${base_libdir} ]; then 66 if [ ! ${D}${libdir} -ef ${D}${base_libdir} ]; then
@@ -68,9 +71,9 @@ do_install_append() {
68 fi 71 fi
69} 72}
70 73
71FILES_${PN}-dev += "${base_libdir}/*.so" 74FILES:${PN}-dev += "${base_libdir}/*.so"
72 75
73# pam files 76# pam files
74FILES_${PN} += "${base_libdir}/security/*.so" 77FILES:${PN} += "${base_libdir}/security/*.so"
75 78
76BBCLASSEXTEND = "native nativesdk" 79BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-support/libcheck/libcheck/automake-output.patch b/meta/recipes-support/libcheck/libcheck/automake-output.patch
new file mode 100644
index 0000000000..c860f0cc0f
--- /dev/null
+++ b/meta/recipes-support/libcheck/libcheck/automake-output.patch
@@ -0,0 +1,82 @@
1Add optional output in automake style, for integration with ptest.
2Export CK_AUTOMAKE=1 when running a test suite and you'll get
3PASS/FAIL lines on standard output.
4
5Marking this as Inappropriate right now as it's a little rough on the
6edges. Filed https://github.com/libcheck/check/issues/349 to discuss
7with upstream.
8
9Upstream-Status: Inappropriate
10Signed-off-by: Ross Burton <ross.burton@arm.com>
11
12diff --git a/src/check_log.c b/src/check_log.c
13index 0844661..ad23c65 100644
14--- a/src/check_log.c
15+++ b/src/check_log.c
16@@ -26,6 +26,7 @@
17 #if ENABLE_SUBUNIT
18 #include <subunit/child.h>
19 #endif
20+#include <libgen.h>
21
22 #include "check_error.h"
23 #include "check_list.h"
24@@ -381,6 +382,34 @@ void tap_lfun(SRunner * sr CK_ATTRIBUTE_UNUSED, FILE * file,
25 }
26 }
27
28+void am_lfun(SRunner * sr CK_ATTRIBUTE_UNUSED, FILE * file,
29+ enum print_output printmode CK_ATTRIBUTE_UNUSED, void *obj,
30+ enum cl_event evt)
31+{
32+ TestResult *tr;
33+ const char* types[] = { "INVALID", "PASS", "FAIL", "ERROR"};
34+
35+ switch (evt)
36+ {
37+ case CLINITLOG_SR:
38+ case CLENDLOG_SR:
39+ case CLSTART_SR:
40+ case CLSTART_S:
41+ case CLEND_SR:
42+ case CLEND_S:
43+ case CLSTART_T:
44+ break;
45+ case CLEND_T:
46+ tr = (TestResult *)obj;
47+ fprintf(file, "%s: %s:%s:%s %s\n",
48+ types[tr->rtype], basename(tr->file), tr->tcname, tr->tname, tr->msg);
49+ fflush(file);
50+ break;
51+ default:
52+ eprintf("Bad event type received in am_lfun", __FILE__, __LINE__);
53+ }
54+}
55+
56 #if ENABLE_SUBUNIT
57 void subunit_lfun(SRunner * sr, FILE * file, enum print_output printmode,
58 void *obj, enum cl_event evt)
59@@ -527,6 +556,9 @@ void srunner_init_logging(SRunner * sr, enum print_output print_mode)
60 {
61 srunner_register_lfun(sr, f, f != stdout, tap_lfun, print_mode);
62 }
63+ if (getenv("CK_AUTOMAKE"))
64+ srunner_register_lfun(sr, stdout, 0, am_lfun, print_mode);
65+
66 srunner_send_evt(sr, NULL, CLINITLOG_SR);
67 }
68
69diff --git a/src/check_log.h b/src/check_log.h
70index 7223b98..bfe1de3 100644
71--- a/src/check_log.h
72+++ b/src/check_log.h
73@@ -40,6 +40,9 @@ void xml_lfun(SRunner * sr, FILE * file, enum print_output,
74 void tap_lfun(SRunner * sr, FILE * file, enum print_output,
75 void *obj, enum cl_event evt);
76
77+void am_lfun(SRunner * sr, FILE * file, enum print_output,
78+ void *obj, enum cl_event evt);
79+
80 void subunit_lfun(SRunner * sr, FILE * file, enum print_output,
81 void *obj, enum cl_event evt);
82
diff --git a/meta/recipes-support/libcheck/libcheck_0.15.2.bb b/meta/recipes-support/libcheck/libcheck_0.15.2.bb
index 33e07db93c..5ab67b8728 100644
--- a/meta/recipes-support/libcheck/libcheck_0.15.2.bb
+++ b/meta/recipes-support/libcheck/libcheck_0.15.2.bb
@@ -1,28 +1,36 @@
1SUMMARY = "Check - unit testing framework for C code" 1SUMMARY = "Check - unit testing framework for C code"
2DESCRIPTION = "It features a simple interface for defining unit tests, \
3putting little in the way of the developer. Tests are run in a separate \
4address space, so both assertion failures and code errors that cause \
5segmentation faults or other signals can be caught. Test results are \
6reportable in the following: Subunit, TAP, XML, and a generic logging format."
2HOMEPAGE = "https://libcheck.github.io/check/" 7HOMEPAGE = "https://libcheck.github.io/check/"
3SECTION = "devel" 8SECTION = "devel"
4 9
5LICENSE = "LGPLv2.1+" 10LICENSE = "LGPL-2.1-or-later"
6LIC_FILES_CHKSUM = "file://COPYING.LESSER;md5=2d5025d4aa3495befef8f17206a5b0a1" 11LIC_FILES_CHKSUM = "file://COPYING.LESSER;md5=2d5025d4aa3495befef8f17206a5b0a1"
7 12
8SRC_URI = "https://github.com/${BPN}/check/releases/download/${PV}/check-${PV}.tar.gz \ 13SRC_URI = "${GITHUB_BASE_URI}/download/${PV}/check-${PV}.tar.gz \
14 file://automake-output.patch \
9 file://not-echo-compiler-info-to-check_stdint.h.patch" 15 file://not-echo-compiler-info-to-check_stdint.h.patch"
10SRC_URI[sha256sum] = "a8de4e0bacfb4d76dd1c618ded263523b53b85d92a146d8835eb1a52932fa20a" 16SRC_URI[sha256sum] = "a8de4e0bacfb4d76dd1c618ded263523b53b85d92a146d8835eb1a52932fa20a"
11UPSTREAM_CHECK_URI = "https://github.com/libcheck/check/releases/" 17GITHUB_BASE_URI = "https://github.com/libcheck/check/releases/"
12 18
13S = "${WORKDIR}/check-${PV}" 19S = "${WORKDIR}/check-${PV}"
14 20
15inherit autotools pkgconfig texinfo 21inherit autotools pkgconfig texinfo github-releases
16 22
17CACHED_CONFIGUREVARS += "ac_cv_path_AWK_PATH=${bindir}/gawk" 23CACHED_CONFIGUREVARS += "ac_cv_path_AWK_PATH=${bindir}/gawk"
18 24
19RREPLACES_${PN} = "check (<= 0.9.5)" 25RREPLACES:${PN} = "check (<= 0.9.5)"
20 26
27do_install:append:class-native() {
28 create_cmdline_shebang_wrapper ${D}${bindir}/checkmk
29}
21BBCLASSEXTEND = "native nativesdk" 30BBCLASSEXTEND = "native nativesdk"
22 31
23PACKAGES =+ "checkmk" 32PACKAGES =+ "checkmk"
24 33
25FILES_checkmk = "${bindir}/checkmk" 34FILES:checkmk = "${bindir}/checkmk"
26
27RDEPENDS_checkmk = "gawk"
28 35
36RDEPENDS:checkmk = "gawk"
diff --git a/meta/recipes-support/libcroco/files/CVE-2020-12825.patch b/meta/recipes-support/libcroco/files/CVE-2020-12825.patch
deleted file mode 100644
index 42f92e3607..0000000000
--- a/meta/recipes-support/libcroco/files/CVE-2020-12825.patch
+++ /dev/null
@@ -1,192 +0,0 @@
1From fdf78a4877afa987ba646a8779b513f258e6d04c Mon Sep 17 00:00:00 2001
2From: Michael Catanzaro <mcatanzaro@gnome.org>
3Date: Fri, 31 Jul 2020 15:21:53 -0500
4Subject: [PATCH] libcroco: Limit recursion in block and any productions
5
6 (CVE-2020-12825)
7
8If we don't have any limits, we can recurse forever and overflow the
9stack.
10
11Fixes #8
12This is per https://gitlab.gnome.org/Archive/libcroco/-/issues/8
13
14https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1404
15
16CVE: CVE-2020-12825
17Upstream-Status: Backport [https://gitlab.gnome.org/Archive/libcroco/-/commit/6eb257e5c731c691eb137fca94e916ca73941a5a]
18Comment: No refreshing changes done.
19Signed-off-by: Saloni Jain <Saloni.Jain@kpit.com>
20
21---
22 src/cr-parser.c | 44 +++++++++++++++++++++++++++++---------------
23 1 file changed, 29 insertions(+), 15 deletions(-)
24
25diff --git a/src/cr-parser.c b/src/cr-parser.c
26index 18c9a01..f4a62e3 100644
27--- a/src/cr-parser.c
28+++ b/src/cr-parser.c
29@@ -136,6 +136,8 @@ struct _CRParserPriv {
30
31 #define CHARS_TAB_SIZE 12
32
33+#define RECURSIVE_CALLERS_LIMIT 100
34+
35 /**
36 * IS_NUM:
37 *@a_char: the char to test.
38@@ -344,9 +346,11 @@ static enum CRStatus cr_parser_parse_selector_core (CRParser * a_this);
39
40 static enum CRStatus cr_parser_parse_declaration_core (CRParser * a_this);
41
42-static enum CRStatus cr_parser_parse_any_core (CRParser * a_this);
43+static enum CRStatus cr_parser_parse_any_core (CRParser * a_this,
44+ guint n_calls);
45
46-static enum CRStatus cr_parser_parse_block_core (CRParser * a_this);
47+static enum CRStatus cr_parser_parse_block_core (CRParser * a_this,
48+ guint n_calls);
49
50 static enum CRStatus cr_parser_parse_value_core (CRParser * a_this);
51
52@@ -784,7 +788,7 @@ cr_parser_parse_atrule_core (CRParser * a_this)
53 cr_parser_try_to_skip_spaces_and_comments (a_this);
54
55 do {
56- status = cr_parser_parse_any_core (a_this);
57+ status = cr_parser_parse_any_core (a_this, 0);
58 } while (status == CR_OK);
59
60 status = cr_tknzr_get_next_token (PRIVATE (a_this)->tknzr,
61@@ -795,7 +799,7 @@ cr_parser_parse_atrule_core (CRParser * a_this)
62 cr_tknzr_unget_token (PRIVATE (a_this)->tknzr,
63 token);
64 token = NULL;
65- status = cr_parser_parse_block_core (a_this);
66+ status = cr_parser_parse_block_core (a_this, 0);
67 CHECK_PARSING_STATUS (status,
68 FALSE);
69 goto done;
70@@ -930,11 +934,11 @@ cr_parser_parse_selector_core (CRParser * a_this)
71
72 RECORD_INITIAL_POS (a_this, &init_pos);
73
74- status = cr_parser_parse_any_core (a_this);
75+ status = cr_parser_parse_any_core (a_this, 0);
76 CHECK_PARSING_STATUS (status, FALSE);
77
78 do {
79- status = cr_parser_parse_any_core (a_this);
80+ status = cr_parser_parse_any_core (a_this, 0);
81
82 } while (status == CR_OK);
83
84@@ -956,10 +960,12 @@ cr_parser_parse_selector_core (CRParser * a_this)
85 *in chapter 4.1 of the css2 spec.
86 *block ::= '{' S* [ any | block | ATKEYWORD S* | ';' ]* '}' S*;
87 *@param a_this the current instance of #CRParser.
88+ *@param n_calls used to limit recursion depth
89 *FIXME: code this function.
90 */
91 static enum CRStatus
92-cr_parser_parse_block_core (CRParser * a_this)
93+cr_parser_parse_block_core (CRParser * a_this,
94+ guint n_calls)
95 {
96 CRToken *token = NULL;
97 CRInputPos init_pos;
98@@ -967,6 +973,9 @@ cr_parser_parse_block_core (CRParser * a_this)
99
100 g_return_val_if_fail (a_this && PRIVATE (a_this), CR_BAD_PARAM_ERROR);
101
102+ if (n_calls > RECURSIVE_CALLERS_LIMIT)
103+ return CR_ERROR;
104+
105 RECORD_INITIAL_POS (a_this, &init_pos);
106
107 status = cr_tknzr_get_next_token (PRIVATE (a_this)->tknzr, &token);
108@@ -996,13 +1005,13 @@ cr_parser_parse_block_core (CRParser * a_this)
109 } else if (token->type == CBO_TK) {
110 cr_tknzr_unget_token (PRIVATE (a_this)->tknzr, token);
111 token = NULL;
112- status = cr_parser_parse_block_core (a_this);
113+ status = cr_parser_parse_block_core (a_this, n_calls + 1);
114 CHECK_PARSING_STATUS (status, FALSE);
115 goto parse_block_content;
116 } else {
117 cr_tknzr_unget_token (PRIVATE (a_this)->tknzr, token);
118 token = NULL;
119- status = cr_parser_parse_any_core (a_this);
120+ status = cr_parser_parse_any_core (a_this, n_calls + 1);
121 CHECK_PARSING_STATUS (status, FALSE);
122 goto parse_block_content;
123 }
124@@ -1109,7 +1118,7 @@ cr_parser_parse_value_core (CRParser * a_this)
125 status = cr_tknzr_unget_token (PRIVATE (a_this)->tknzr,
126 token);
127 token = NULL;
128- status = cr_parser_parse_block_core (a_this);
129+ status = cr_parser_parse_block_core (a_this, 0);
130 CHECK_PARSING_STATUS (status, FALSE);
131 ref++;
132 goto continue_parsing;
133@@ -1123,7 +1132,7 @@ cr_parser_parse_value_core (CRParser * a_this)
134 status = cr_tknzr_unget_token (PRIVATE (a_this)->tknzr,
135 token);
136 token = NULL;
137- status = cr_parser_parse_any_core (a_this);
138+ status = cr_parser_parse_any_core (a_this, 0);
139 if (status == CR_OK) {
140 ref++;
141 goto continue_parsing;
142@@ -1162,10 +1171,12 @@ cr_parser_parse_value_core (CRParser * a_this)
143 * | FUNCTION | DASHMATCH | '(' any* ')' | '[' any* ']' ] S*;
144 *
145 *@param a_this the current instance of #CRParser.
146+ *@param n_calls used to limit recursion depth
147 *@return CR_OK upon successfull completion, an error code otherwise.
148 */
149 static enum CRStatus
150-cr_parser_parse_any_core (CRParser * a_this)
151+cr_parser_parse_any_core (CRParser * a_this,
152+ guint n_calls)
153 {
154 CRToken *token1 = NULL,
155 *token2 = NULL;
156@@ -1174,6 +1185,9 @@ cr_parser_parse_any_core (CRParser * a_this)
157
158 g_return_val_if_fail (a_this, CR_BAD_PARAM_ERROR);
159
160+ if (n_calls > RECURSIVE_CALLERS_LIMIT)
161+ return CR_ERROR;
162+
163 RECORD_INITIAL_POS (a_this, &init_pos);
164
165 status = cr_tknzr_get_next_token (PRIVATE (a_this)->tknzr, &token1);
166@@ -1212,7 +1226,7 @@ cr_parser_parse_any_core (CRParser * a_this)
167 *We consider parameter as being an "any*" production.
168 */
169 do {
170- status = cr_parser_parse_any_core (a_this);
171+ status = cr_parser_parse_any_core (a_this, n_calls + 1);
172 } while (status == CR_OK);
173
174 ENSURE_PARSING_COND (status == CR_PARSING_ERROR);
175@@ -1237,7 +1251,7 @@ cr_parser_parse_any_core (CRParser * a_this)
176 }
177
178 do {
179- status = cr_parser_parse_any_core (a_this);
180+ status = cr_parser_parse_any_core (a_this, n_calls + 1);
181 } while (status == CR_OK);
182
183 ENSURE_PARSING_COND (status == CR_PARSING_ERROR);
184@@ -1265,7 +1279,7 @@ cr_parser_parse_any_core (CRParser * a_this)
185 }
186
187 do {
188- status = cr_parser_parse_any_core (a_this);
189+ status = cr_parser_parse_any_core (a_this, n_calls + 1);
190 } while (status == CR_OK);
191
192 ENSURE_PARSING_COND (status == CR_PARSING_ERROR);
diff --git a/meta/recipes-support/libcroco/libcroco_0.6.13.bb b/meta/recipes-support/libcroco/libcroco_0.6.13.bb
deleted file mode 100644
index a443ff23fe..0000000000
--- a/meta/recipes-support/libcroco/libcroco_0.6.13.bb
+++ /dev/null
@@ -1,23 +0,0 @@
1SUMMARY = "Cascading Style Sheet (CSS) parsing and manipulation toolkit"
2HOMEPAGE = "http://www.gnome.org/"
3BUGTRACKER = "https://bugzilla.gnome.org/"
4
5LICENSE = "LGPLv2 & LGPLv2.1"
6LIC_FILES_CHKSUM = "file://COPYING;md5=55ca817ccb7d5b5b66355690e9abc605 \
7 file://src/cr-rgb.c;endline=22;md5=31d5f0944d556c8589d04ea6055fcc66 \
8 file://tests/cr-test-utils.c;endline=21;md5=2382c27934cae1d3792fcb17a6142c4e"
9
10SECTION = "x11/utils"
11DEPENDS = "glib-2.0 libxml2 zlib"
12BBCLASSEXTEND = "native nativesdk"
13EXTRA_OECONF += "--enable-Bsymbolic=auto"
14
15BINCONFIG = "${bindir}/croco-0.6-config"
16
17inherit gnomebase gtk-doc binconfig-disabled
18
19SRC_URI[archive.md5sum] = "c80c5a8385011a0260dce6bd0da93dce"
20SRC_URI[archive.sha256sum] = "767ec234ae7aa684695b3a735548224888132e063f92db585759b422570621d4"
21
22SRC_URI +="file://CVE-2020-12825.patch \
23"
diff --git a/meta/recipes-support/libdaemon/libdaemon_0.14.bb b/meta/recipes-support/libdaemon/libdaemon_0.14.bb
index 070ee1890e..089f19d1cd 100644
--- a/meta/recipes-support/libdaemon/libdaemon_0.14.bb
+++ b/meta/recipes-support/libdaemon/libdaemon_0.14.bb
@@ -1,8 +1,11 @@
1SUMMARY = "Lightweight C library which eases the writing of UNIX daemons" 1SUMMARY = "Lightweight C library which eases the writing of UNIX daemons"
2DESCRIPTION = "Lightweight daemon framework for OpenBSD. It provides \
3facilities for logging and a signal handler to enable graceful shutdown, \
4as well as file locking to ensure that only a single copy of a given daemon \
5is running at a time."
2SECTION = "libs" 6SECTION = "libs"
3AUTHOR = "Lennart Poettering <lennart@poettering.net>"
4HOMEPAGE = "http://0pointer.de/lennart/projects/libdaemon/" 7HOMEPAGE = "http://0pointer.de/lennart/projects/libdaemon/"
5LICENSE = "LGPLv2.1+" 8LICENSE = "LGPL-2.1-or-later"
6LIC_FILES_CHKSUM = "file://LICENSE;md5=2d5025d4aa3495befef8f17206a5b0a1 \ 9LIC_FILES_CHKSUM = "file://LICENSE;md5=2d5025d4aa3495befef8f17206a5b0a1 \
7 file://libdaemon/daemon.h;beginline=9;endline=21;md5=bd9fbe57cd96d1a5848a8ba12d9a6bf4" 10 file://libdaemon/daemon.h;beginline=9;endline=21;md5=bd9fbe57cd96d1a5848a8ba12d9a6bf4"
8 11
diff --git a/meta/recipes-support/libevdev/libevdev/determinism.patch b/meta/recipes-support/libevdev/libevdev/determinism.patch
deleted file mode 100644
index 71cbd876eb..0000000000
--- a/meta/recipes-support/libevdev/libevdev/determinism.patch
+++ /dev/null
@@ -1,44 +0,0 @@
1From 4f196323aba5b0f49979826533c65633b8a9b6a2 Mon Sep 17 00:00:00 2001
2From: Richard Purdie <richard.purdie@linuxfoundation.org>
3Date: Fri, 7 Feb 2020 12:29:56 +0000
4Subject: [PATCH] libevdev: Fix determinism issue
5
6The order of dict values is not deterministic leading to differing header file generation.
7Sort to remove this inconsistency.
8
9RP 2020/2/7
10
11Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12Submitted: https://lists.freedesktop.org/archives/input-tools/2021-February/001560.html
13Upstream-Status: Backport [https://gitlab.freedesktop.org/libevdev/libevdev/-/commit/8d70f449892c6f7659e07bb0f06b8347677bb7d8]
14
15---
16 libevdev/make-event-names.py | 6 +++---
17 1 file changed, 3 insertions(+), 3 deletions(-)
18
19diff --git a/libevdev/make-event-names.py b/libevdev/make-event-names.py
20index 88addd7..c973e2a 100755
21--- a/libevdev/make-event-names.py
22+++ b/libevdev/make-event-names.py
23@@ -70,10 +70,10 @@ def print_bits(bits, prefix):
24 if not hasattr(bits, prefix):
25 return
26 print("static const char * const %s_map[%s_MAX + 1] = {" % (prefix, prefix.upper()))
27- for val, name in list(getattr(bits, prefix).items()):
28+ for val, name in sorted(list(getattr(bits, prefix).items())):
29 print(" [%s] = \"%s\"," % (name, name))
30 if prefix == "key":
31- for val, name in list(getattr(bits, "btn").items()):
32+ for val, name in sorted(list(getattr(bits, "btn").items())):
33 print(" [%s] = \"%s\"," % (name, name))
34 print("};")
35 print("")
36@@ -118,7 +118,7 @@ def print_lookup(bits, prefix):
37 if not hasattr(bits, prefix):
38 return
39
40- names = list(getattr(bits, prefix).items())
41+ names = sorted(list(getattr(bits, prefix).items()))
42 if prefix == "btn":
43 names = names + btn_additional
44
diff --git a/meta/recipes-support/libevdev/libevdev_1.11.0.bb b/meta/recipes-support/libevdev/libevdev_1.13.1.bb
index 96179e18e8..85cfd78507 100644
--- a/meta/recipes-support/libevdev/libevdev_1.11.0.bb
+++ b/meta/recipes-support/libevdev/libevdev_1.13.1.bb
@@ -1,4 +1,7 @@
1SUMMARY = "Wrapper library for evdev devices" 1SUMMARY = "Wrapper library for evdev devices"
2DESCRIPTION = "A library for handling evdev kernel devices. It abstracts \
3the evdev ioctls through type-safe interfaces and provides functions \
4to change the appearance of the device."
2HOMEPAGE = "http://www.freedesktop.org/wiki/Software/libevdev/" 5HOMEPAGE = "http://www.freedesktop.org/wiki/Software/libevdev/"
3SECTION = "libs" 6SECTION = "libs"
4 7
@@ -6,9 +9,8 @@ LICENSE = "MIT"
6LIC_FILES_CHKSUM = "file://COPYING;md5=80c550b3197bcb8da7d7557ebcc3fc46 \ 9LIC_FILES_CHKSUM = "file://COPYING;md5=80c550b3197bcb8da7d7557ebcc3fc46 \
7 " 10 "
8 11
9SRC_URI = "http://www.freedesktop.org/software/libevdev/${BP}.tar.xz \ 12SRC_URI = "http://www.freedesktop.org/software/libevdev/${BP}.tar.xz"
10 file://determinism.patch" 13SRC_URI[sha256sum] = "06a77bf2ac5c993305882bc1641017f5bec1592d6d1b64787bad492ab34f2f36"
11SRC_URI[sha256sum] = "63f4ea1489858a109080e0b40bd43e4e0903a1e12ea888d581db8c495747c2d0"
12 14
13inherit autotools pkgconfig 15inherit autotools pkgconfig
14 16
diff --git a/meta/recipes-support/libevent/libevent/0002-test-regress.h-Increase-default-timeval-tolerance-50.patch b/meta/recipes-support/libevent/libevent/0002-test-regress.h-Increase-default-timeval-tolerance-50.patch
new file mode 100644
index 0000000000..0b20eda3c0
--- /dev/null
+++ b/meta/recipes-support/libevent/libevent/0002-test-regress.h-Increase-default-timeval-tolerance-50.patch
@@ -0,0 +1,33 @@
1From dff8fd27edb23bc1486809186c6a4fe1f75f2179 Mon Sep 17 00:00:00 2001
2From: Yi Fan Yu <yifan.yu@windriver.com>
3Date: Thu, 22 Apr 2021 22:35:59 -0400
4Subject: [PATCH] test/regress.h: Increase default timeval tolerance 50 ms ->
5 100 ms
6
7The default timeout tolerance is 50 ms,
8which causes intermittent failure in many the
9related tests in arm64 QEMU.
10
11See: https://bugzilla.yoctoproject.org/show_bug.cgi?id=14163
12(The root cause seems to be a heavy load)
13
14Upstream-Status: Submitted [https://github.com/libevent/libevent/pull/1157]
15
16Signed-off-by: Yi Fan Yu <yifan.yu@windriver.com>
17---
18 test/regress.h | 2 +-
19 1 file changed, 1 insertion(+), 1 deletion(-)
20
21diff --git a/test/regress.h b/test/regress.h
22index f06a7669..829af4a7 100644
23--- a/test/regress.h
24+++ b/test/regress.h
25@@ -127,7 +127,7 @@ int test_ai_eq_(const struct evutil_addrinfo *ai, const char *sockaddr_port,
26 tt_int_op(labs(timeval_msec_diff((tv1), (tv2)) - diff), <=, tolerance)
27
28 #define test_timeval_diff_eq(tv1, tv2, diff) \
29- test_timeval_diff_leq((tv1), (tv2), (diff), 50)
30+ test_timeval_diff_leq((tv1), (tv2), (diff), 100)
31
32 long timeval_msec_diff(const struct timeval *start, const struct timeval *end);
33
diff --git a/meta/recipes-support/libevent/libevent/0003-test-mark-util-monotonic_prc_fallback-as-retriable.patch b/meta/recipes-support/libevent/libevent/0003-test-mark-util-monotonic_prc_fallback-as-retriable.patch
new file mode 100644
index 0000000000..ddc19c495f
--- /dev/null
+++ b/meta/recipes-support/libevent/libevent/0003-test-mark-util-monotonic_prc_fallback-as-retriable.patch
@@ -0,0 +1,28 @@
1From d01a57a998798da977c470f3b8d6a457c1adb144 Mon Sep 17 00:00:00 2001
2From: Azat Khuzhin <azat@libevent.org>
3Date: Sun, 19 Sep 2021 00:57:31 +0300
4Subject: [PATCH] test: mark util/monotonic_prc_fallback as retriable
5
6Refs: #1193
7
8Upstream-Status: Backport
9---
10 test/regress_util.c | 2 +-
11 1 file changed, 1 insertion(+), 1 deletion(-)
12
13diff --git a/test/regress_util.c b/test/regress_util.c
14index 45caa2700a40..a9e80db20149 100644
15--- a/test/regress_util.c
16+++ b/test/regress_util.c
17@@ -1672,7 +1672,7 @@ struct testcase_t util_testcases[] = {
18 { "monotonic_res_fallback", test_evutil_monotonic_res, TT_OFF_BY_DEFAULT, &basic_setup, (void*)"fallback" },
19 { "monotonic_prc", test_evutil_monotonic_prc, 0, &basic_setup, (void*)"" },
20 { "monotonic_prc_precise", test_evutil_monotonic_prc, TT_RETRIABLE, &basic_setup, (void*)"precise" },
21- { "monotonic_prc_fallback", test_evutil_monotonic_prc, 0, &basic_setup, (void*)"fallback" },
22+ { "monotonic_prc_fallback", test_evutil_monotonic_prc, TT_RETRIABLE, &basic_setup, (void*)"fallback" },
23 { "date_rfc1123", test_evutil_date_rfc1123, 0, NULL, NULL },
24 { "evutil_v4addr_is_local", test_evutil_v4addr_is_local, 0, NULL, NULL },
25 { "evutil_v6addr_is_local", test_evutil_v6addr_is_local, 0, NULL, NULL },
26--
272.31.1
28
diff --git a/meta/recipes-support/libevent/libevent/0004-test-retriable-tests-are-marked-failed-only-when-all-a.patch b/meta/recipes-support/libevent/libevent/0004-test-retriable-tests-are-marked-failed-only-when-all-a.patch
new file mode 100644
index 0000000000..26b707ad31
--- /dev/null
+++ b/meta/recipes-support/libevent/libevent/0004-test-retriable-tests-are-marked-failed-only-when-all-a.patch
@@ -0,0 +1,81 @@
1From 36ebd92fa53c0097f1e2f9ec5aa5b5c6ec1b411d Mon Sep 17 00:00:00 2001
2From: Thomas Perrot <thomas.perrot@bootlin.com>
3Date: Wed, 29 Sep 2021 13:50:35 +0200
4Subject: [PATCH] test: retriable tests are marked failed only when all
5 attempts have failed
6
7Fixes: #1193
8
9Upstream-Status: Backport [https://github.com/libevent/libevent/commit/3daebf308a01b4b2d3fb867be3d6631f7b5a2dbb]
10
11Signed-off-by: Thomas Perrot <thomas.perrot@bootlin.com>
12---
13 test/tinytest.c | 13 ++++++-------
14 test/tinytest.h | 2 +-
15 2 files changed, 7 insertions(+), 8 deletions(-)
16
17diff --git a/test/tinytest.c b/test/tinytest.c
18index 85dfe74a720e..bf2882418eb6 100644
19--- a/test/tinytest.c
20+++ b/test/tinytest.c
21@@ -310,7 +310,8 @@ testcase_run_forked_(const struct testgroup_t *group,
22
23 int
24 testcase_run_one(const struct testgroup_t *group,
25- const struct testcase_t *testcase)
26+ const struct testcase_t *testcase,
27+ const int test_attempts)
28 {
29 enum outcome outcome;
30
31@@ -348,7 +349,7 @@ testcase_run_one(const struct testgroup_t *group,
32 if (opt_verbosity>0 && !opt_forked)
33 puts("SKIPPED");
34 } else {
35- if (!opt_forked)
36+ if (!opt_forked && (testcase->flags & TT_RETRIABLE) && !test_attempts)
37 printf("\n [%s FAILED]\n", testcase->name);
38 }
39
40@@ -525,22 +526,20 @@ tinytest_main(int c, const char **v, struct testgroup_t *groups)
41 struct testgroup_t *group = &groups[i];
42 for (j = 0; group->cases[j].name; ++j) {
43 struct testcase_t *testcase = &group->cases[j];
44- int test_attempts = 3;
45+ int test_attempts = (testcase->flags & TT_RETRIABLE) ? 3: 1;
46 int test_ret_err;
47
48 if (!(testcase->flags & TT_ENABLED_))
49 continue;
50
51 for (;;) {
52- test_ret_err = testcase_run_one(group, testcase);
53+ test_ret_err = testcase_run_one(group, testcase, test_attempts);
54
55 if (test_ret_err == OK)
56 break;
57- if (!(testcase->flags & TT_RETRIABLE))
58+ if (!--test_attempts)
59 break;
60 printf("\n [RETRYING %s (%i)]\n", testcase->name, test_attempts);
61- if (!test_attempts--)
62- break;
63 }
64
65 switch (test_ret_err) {
66diff --git a/test/tinytest.h b/test/tinytest.h
67index d321dd467542..c276b5339331 100644
68--- a/test/tinytest.h
69+++ b/test/tinytest.h
70@@ -92,7 +92,7 @@ char *tinytest_format_hex_(const void *, unsigned long);
71 tinytest_set_flag_(groups, named, 1, TT_SKIP)
72
73 /** Run a single testcase in a single group. */
74-int testcase_run_one(const struct testgroup_t *,const struct testcase_t *);
75+int testcase_run_one(const struct testgroup_t *,const struct testcase_t *, const int test_attempts);
76
77 void tinytest_set_aliases(const struct testlist_alias_t *aliases);
78
79--
802.31.1
81
diff --git a/meta/recipes-support/libevent/libevent/run-ptest b/meta/recipes-support/libevent/libevent/run-ptest
index d3b5e793c3..ef4260d1c4 100644
--- a/meta/recipes-support/libevent/libevent/run-ptest
+++ b/meta/recipes-support/libevent/libevent/run-ptest
@@ -1,14 +1,14 @@
1#!/bin/sh 1#!/bin/sh
2 2
3# run-ptest - 'ptest' test infrastructure shell script that 3# run-ptest - 'ptest' test infrastructure shell script that
4# wraps the libevent test scripts 4# wraps the libevent test scripts
5# 5#
6# Trevor Gamblin <trevor.gamblin@windriver.com> 6# Trevor Gamblin <trevor.gamblin@windriver.com>
7############################################################### 7###############################################################
8LIBEVENTLIB=@libdir@/libevent 8LIBEVENTLIB=@libdir@/libevent
9LOG="${LIBEVENTLIB}/ptest/libevent_ptest_$(date +%Y%m%d-%H%M%S).log" 9LOG="${LIBEVENTLIB}/ptest/libevent_ptest_$(date +%Y%m%d-%H%M%S).log"
10 10
11cd ${LIBEVENTLIB}/ptest 11cd ${LIBEVENTLIB}/ptest
12 12
13# Run only the libevent "regress" test. All other test scripts in the 13# Run only the libevent "regress" test. All other test scripts in the
14# libevent "test" folder are related to performance, e.g. read/write 14# libevent "test" folder are related to performance, e.g. read/write
@@ -16,9 +16,9 @@ cd ${LIBEVENTLIB}/ptest
16# in the ptest log. 16# in the ptest log.
17./test/regress 2>&1| sed -e '/TESTS/d' -e '/tests/d' -e '/OK/ s/^/PASS: / ; /FAILED/ s/^/FAIL: / ; /SKIPPED/ s/^/SKIP: / ; /DISABLED/ s/^/SKIP: /' | cut -f1,2 -d ':' | tee -a ${LOG} 17./test/regress 2>&1| sed -e '/TESTS/d' -e '/tests/d' -e '/OK/ s/^/PASS: / ; /FAILED/ s/^/FAIL: / ; /SKIPPED/ s/^/SKIP: / ; /DISABLED/ s/^/SKIP: /' | cut -f1,2 -d ':' | tee -a ${LOG}
18 18
19passed=`grep PASS ${LOG}|wc -l` 19passed=`grep PASS: ${LOG}|wc -l`
20failed=`grep FAIL ${LOG}|wc -l` 20failed=`grep FAIL: ${LOG}|wc -l`
21skipped=`grep -E SKIP ${LOG}|wc -l` 21skipped=`grep -E SKIP: ${LOG}|wc -l`
22all=$((passed + failed + skipped)) 22all=$((passed + failed + skipped))
23 23
24( echo "=== Test Summary ===" 24( echo "=== Test Summary ==="
diff --git a/meta/recipes-support/libevent/libevent_2.1.12.bb b/meta/recipes-support/libevent/libevent_2.1.12.bb
index 29e87081d3..25388fb4d7 100644
--- a/meta/recipes-support/libevent/libevent_2.1.12.bb
+++ b/meta/recipes-support/libevent/libevent_2.1.12.bb
@@ -1,27 +1,34 @@
1SUMMARY = "An asynchronous event notification library" 1SUMMARY = "An asynchronous event notification library"
2DESCRIPTION = "A software library that provides asynchronous event \
3notification. The libevent API provides a mechanism to execute a callback \
4function when a specific event occurs on a file descriptor or after a \
5timeout has been reached. libevent also supports callbacks triggered \
6by signals and regular timeouts"
2HOMEPAGE = "http://libevent.org/" 7HOMEPAGE = "http://libevent.org/"
3BUGTRACKER = "https://github.com/libevent/libevent/issues" 8BUGTRACKER = "https://github.com/libevent/libevent/issues"
4SECTION = "libs" 9SECTION = "libs"
5 10
6LICENSE = "BSD & MIT" 11LICENSE = "BSD-3-Clause & MIT"
7LIC_FILES_CHKSUM = "file://LICENSE;md5=17f20574c0b154d12236d5fbe964f549" 12LIC_FILES_CHKSUM = "file://LICENSE;md5=17f20574c0b154d12236d5fbe964f549"
8 13
9SRC_URI = "https://github.com/libevent/libevent/releases/download/release-${PV}-stable/${BP}-stable.tar.gz \ 14SRC_URI = "${GITHUB_BASE_URI}/download/release-${PV}-stable/${BP}-stable.tar.gz \
10 file://Makefile-missing-test-dir.patch \ 15 file://Makefile-missing-test-dir.patch \
11 file://run-ptest \ 16 file://run-ptest \
12 file://0001-test-regress_dns.c-patch-out-tests-that-require-a-wo.patch \ 17 file://0001-test-regress_dns.c-patch-out-tests-that-require-a-wo.patch \
18 file://0002-test-regress.h-Increase-default-timeval-tolerance-50.patch \
19 file://0003-test-mark-util-monotonic_prc_fallback-as-retriable.patch \
20 file://0004-test-retriable-tests-are-marked-failed-only-when-all-a.patch \
13 " 21 "
14 22
15SRC_URI[sha256sum] = "92e6de1be9ec176428fd2367677e61ceffc2ee1cb119035037a27d346b0403bb" 23SRC_URI[sha256sum] = "92e6de1be9ec176428fd2367677e61ceffc2ee1cb119035037a27d346b0403bb"
16 24UPSTREAM_CHECK_REGEX = "releases/tag/release-(?P<pver>.+)-stable"
17UPSTREAM_CHECK_URI = "http://libevent.org/"
18 25
19S = "${WORKDIR}/${BPN}-${PV}-stable" 26S = "${WORKDIR}/${BPN}-${PV}-stable"
20 27
21PACKAGECONFIG ??= "" 28PACKAGECONFIG ??= ""
22PACKAGECONFIG[openssl] = "--enable-openssl,--disable-openssl,openssl" 29PACKAGECONFIG[openssl] = "--enable-openssl,--disable-openssl,openssl"
23 30
24inherit autotools 31inherit autotools github-releases
25 32
26# Needed for Debian packaging 33# Needed for Debian packaging
27LEAD_SONAME = "libevent-2.1.so" 34LEAD_SONAME = "libevent-2.1.so"
@@ -34,11 +41,11 @@ PACKAGES_DYNAMIC = "^${PN}-.*$"
34python split_libevent_libs () { 41python split_libevent_libs () {
35 do_split_packages(d, '${libdir}', r'^libevent_([a-z]*)-.*\.so\..*', '${PN}-%s', '${SUMMARY} (%s)', prepend=True, allow_links=True) 42 do_split_packages(d, '${libdir}', r'^libevent_([a-z]*)-.*\.so\..*', '${PN}-%s', '${SUMMARY} (%s)', prepend=True, allow_links=True)
36} 43}
37PACKAGESPLITFUNCS_prepend = "split_libevent_libs " 44PACKAGESPLITFUNCS =+ "split_libevent_libs"
38 45
39BBCLASSEXTEND = "native nativesdk" 46BBCLASSEXTEND = "native nativesdk"
40 47
41do_install_append() { 48do_install:append() {
42 rm ${D}${bindir}/event_rpcgen.py 49 rm ${D}${bindir}/event_rpcgen.py
43 rmdir ${D}${bindir} 50 rmdir ${D}${bindir}
44 oe_multilib_header event2/event-config.h 51 oe_multilib_header event2/event-config.h
@@ -50,7 +57,7 @@ do_install_ptest() {
50 do 57 do
51 install -m 0755 $file ${D}${PTEST_PATH}/test 58 install -m 0755 $file ${D}${PTEST_PATH}/test
52 done 59 done
53 60
54 # handle multilib 61 # handle multilib
55 sed -i s:@libdir@:${libdir}:g ${D}${PTEST_PATH}/run-ptest 62 sed -i s:@libdir@:${libdir}:g ${D}${PTEST_PATH}/run-ptest
56} 63}
diff --git a/meta/recipes-support/libexif/files/CVE-2020-0198.patch b/meta/recipes-support/libexif/files/CVE-2020-0198.patch
deleted file mode 100644
index 2a48844cb2..0000000000
--- a/meta/recipes-support/libexif/files/CVE-2020-0198.patch
+++ /dev/null
@@ -1,66 +0,0 @@
1From ca71eda33fe8421f98fbe20eb4392473357c1c43 Mon Sep 17 00:00:00 2001
2From: Changqing Li <changqing.li@windriver.com>
3Date: Wed, 30 Dec 2020 10:22:47 +0800
4Subject: [PATCH] fixed another unsigned integer overflow
5
6first fixed by google in android fork,
7https://android.googlesource.com/platform/external/libexif/+/1e187b62682ffab5003c702657d6d725b4278f16%5E%21/#F0
8
9(use a more generic overflow check method, also check second overflow instance.)
10
11https://security-tracker.debian.org/tracker/CVE-2020-0198
12
13Upstream-Status: Backport[https://github.com/libexif/libexif/commit/ce03ad7ef4e8aeefce79192bf5b6f69fae396f0c]
14CVE: CVE-2020-0198
15
16Signed-off-by: Changqing Li <changqing.li@windriver.com>
17---
18 libexif/exif-data.c | 10 ++++++----
19 1 file changed, 6 insertions(+), 4 deletions(-)
20
21diff --git a/libexif/exif-data.c b/libexif/exif-data.c
22index 8b280d3..34d58fc 100644
23--- a/libexif/exif-data.c
24+++ b/libexif/exif-data.c
25@@ -47,6 +47,8 @@
26 #undef JPEG_MARKER_APP1
27 #define JPEG_MARKER_APP1 0xe1
28
29+#define CHECKOVERFLOW(offset,datasize,structsize) (( offset >= datasize) || (structsize > datasize) || (offset > datasize - structsize ))
30+
31 static const unsigned char ExifHeader[] = {0x45, 0x78, 0x69, 0x66, 0x00, 0x00};
32
33 struct _ExifDataPrivate
34@@ -327,7 +329,7 @@ exif_data_load_data_thumbnail (ExifData *data, const unsigned char *d,
35 exif_log (data->priv->log, EXIF_LOG_CODE_DEBUG, "ExifData", "Bogus thumbnail offset (%u).", o);
36 return;
37 }
38- if (s > ds - o) {
39+ if (CHECKOVERFLOW(o,ds,s)) {
40 exif_log (data->priv->log, EXIF_LOG_CODE_DEBUG, "ExifData", "Bogus thumbnail size (%u), max would be %u.", s, ds-o);
41 return;
42 }
43@@ -420,9 +422,9 @@ exif_data_load_data_content (ExifData *data, ExifIfd ifd,
44 }
45
46 /* Read the number of entries */
47- if ((offset + 2 < offset) || (offset + 2 < 2) || (offset + 2 > ds)) {
48+ if (CHECKOVERFLOW(offset, ds, 2)) {
49 exif_log (data->priv->log, EXIF_LOG_CODE_CORRUPT_DATA, "ExifData",
50- "Tag data past end of buffer (%u > %u)", offset+2, ds);
51+ "Tag data past end of buffer (%u+2 > %u)", offset, ds);
52 return;
53 }
54 n = exif_get_short (d + offset, data->priv->order);
55@@ -431,7 +433,7 @@ exif_data_load_data_content (ExifData *data, ExifIfd ifd,
56 offset += 2;
57
58 /* Check if we have enough data. */
59- if (offset + 12 * n > ds) {
60+ if (CHECKOVERFLOW(offset, ds, 12*n)) {
61 n = (ds - offset) / 12;
62 exif_log (data->priv->log, EXIF_LOG_CODE_DEBUG, "ExifData",
63 "Short data; only loading %hu entries...", n);
64--
652.17.1
66
diff --git a/meta/recipes-support/libexif/files/CVE-2020-0452.patch b/meta/recipes-support/libexif/files/CVE-2020-0452.patch
deleted file mode 100644
index a117b8b369..0000000000
--- a/meta/recipes-support/libexif/files/CVE-2020-0452.patch
+++ /dev/null
@@ -1,39 +0,0 @@
1From 302acd49eba0a125b0f20692df6abc6f7f7ca53e Mon Sep 17 00:00:00 2001
2From: Changqing Li <changqing.li@windriver.com>
3Date: Wed, 30 Dec 2020 10:18:51 +0800
4Subject: [PATCH] fixed a incorrect overflow check that could be optimized
5 away.
6
7inspired by:
8https://android.googlesource.com/platform/external/libexif/+/8e7345f3bc0bad06ac369d6cbc1124c8ceaf7d4b
9
10https://source.android.com/security/bulletin/2020-11-01
11
12CVE-2020-0452
13
14Upsteam-Status: Backport[https://github.com/libexif/libexif/commit/9266d14b5ca4e29b970fa03272318e5f99386e06]
15CVE: CVE-2020-0452
16
17Signed-off-by: Changqing Li <changqing.li@windriver.com>
18---
19 libexif/exif-entry.c | 4 ++--
20 1 file changed, 2 insertions(+), 2 deletions(-)
21
22diff --git a/libexif/exif-entry.c b/libexif/exif-entry.c
23index 5de215f..3a6ce84 100644
24--- a/libexif/exif-entry.c
25+++ b/libexif/exif-entry.c
26@@ -1371,8 +1371,8 @@ exif_entry_get_value (ExifEntry *e, char *val, unsigned int maxlen)
27 {
28 unsigned char *utf16;
29
30- /* Sanity check the size to prevent overflow */
31- if (e->size+sizeof(uint16_t)+1 < e->size) break;
32+ /* Sanity check the size to prevent overflow. Note EXIF files are 64kb at most. */
33+ if (e->size >= 65536 - sizeof(uint16_t)*2) break;
34
35 /* The tag may not be U+0000-terminated , so make a local
36 U+0000-terminated copy before converting it */
37--
382.17.1
39
diff --git a/meta/recipes-support/libexif/libexif/0001-Add-serial-tests-config-needed-by-ptest.patch b/meta/recipes-support/libexif/libexif/0001-Add-serial-tests-config-needed-by-ptest.patch
new file mode 100644
index 0000000000..505aa07330
--- /dev/null
+++ b/meta/recipes-support/libexif/libexif/0001-Add-serial-tests-config-needed-by-ptest.patch
@@ -0,0 +1,26 @@
1From 1ee7217c8ae724d793f9a9876c3608057a2ccbf8 Mon Sep 17 00:00:00 2001
2From: Julien Stephan <jstephan@baylibre.com>
3Date: Tue, 11 Jul 2023 16:07:54 +0200
4Subject: [PATCH] Add serial-tests config needed by ptest
5
6Add serial-tests support, ptest needs it.
7
8Upstream-Status: Inappropriate [oe specific]
9
10Signed-off-by: Julien Stephan <jstephan@baylibre.com>
11---
12 configure.ac | 1 +
13 1 file changed, 1 insertion(+)
14
15diff --git a/configure.ac b/configure.ac
16index cd48047..5413907 100644
17--- a/configure.ac
18+++ b/configure.ac
19@@ -16,6 +16,7 @@ AM_INIT_AUTOMAKE([
20 dist-zip
21 check-news
22 subdir-objects
23+ serial-tests
24 ])
25 AM_MAINTAINER_MODE
26
diff --git a/meta/recipes-support/libexif/libexif/run-ptest b/meta/recipes-support/libexif/libexif/run-ptest
new file mode 100644
index 0000000000..2d23159eb0
--- /dev/null
+++ b/meta/recipes-support/libexif/libexif/run-ptest
@@ -0,0 +1,3 @@
1#!/bin/sh
2
3make -o Makefile runtest-TESTS
diff --git a/meta/recipes-support/libexif/libexif_0.6.22.bb b/meta/recipes-support/libexif/libexif_0.6.22.bb
deleted file mode 100644
index dc30926c59..0000000000
--- a/meta/recipes-support/libexif/libexif_0.6.22.bb
+++ /dev/null
@@ -1,23 +0,0 @@
1SUMMARY = "Library for reading extended image information (EXIF) from JPEG files"
2HOMEPAGE = "https://libexif.github.io/"
3SECTION = "libs"
4LICENSE = "LGPLv2.1"
5LIC_FILES_CHKSUM = "file://COPYING;md5=243b725d71bb5df4a1e5920b344b86ad"
6
7def version_underscore(v):
8 return "_".join(v.split("."))
9
10SRC_URI = "https://github.com/libexif/libexif/releases/download/libexif-${@version_underscore("${PV}")}-release/libexif-${PV}.tar.xz \
11 file://CVE-2020-0198.patch \
12 file://CVE-2020-0452.patch \
13 "
14
15SRC_URI[sha256sum] = "5048f1c8fc509cc636c2f97f4b40c293338b6041a5652082d5ee2cf54b530c56"
16
17UPSTREAM_CHECK_URI = "https://github.com/libexif/libexif/releases/"
18
19inherit autotools gettext
20
21EXTRA_OECONF += "--disable-docs"
22
23BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-support/libexif/libexif_0.6.24.bb b/meta/recipes-support/libexif/libexif_0.6.24.bb
new file mode 100644
index 0000000000..b407ee52de
--- /dev/null
+++ b/meta/recipes-support/libexif/libexif_0.6.24.bb
@@ -0,0 +1,47 @@
1SUMMARY = "Library for reading extended image information (EXIF) from JPEG files"
2DESCRIPTION = "libexif is a library for parsing, editing, and saving EXIF data. It is \
3intended to replace lots of redundant implementations in command-line \
4utilities and programs with GUIs."
5HOMEPAGE = "https://libexif.github.io/"
6SECTION = "libs"
7LICENSE = "LGPL-2.1-only"
8LIC_FILES_CHKSUM = "file://COPYING;md5=243b725d71bb5df4a1e5920b344b86ad"
9
10SRC_URI = "${GITHUB_BASE_URI}/download/v${PV}/libexif-${PV}.tar.bz2 \
11 file://0001-Add-serial-tests-config-needed-by-ptest.patch \
12 file://run-ptest \
13 "
14
15SRC_URI[sha256sum] = "d47564c433b733d83b6704c70477e0a4067811d184ec565258ac563d8223f6ae"
16
17inherit autotools gettext github-releases ptest
18
19EXTRA_OECONF += "--disable-docs"
20
21do_compile_ptest() {
22 oe_runmake -C test buildtest-TESTS
23}
24
25do_install_ptest() {
26 install ${B}/test/test*[!\.o] ${D}${PTEST_PATH}
27 for f in ${D}${PTEST_PATH}/test*; do
28 sed -i "s/\(LD_LIBRARY_PATH=\).*\(:\$LD_LIBRARY_PATH\)\"/\1.\2/" $f
29 done
30
31 install ${B}/test/Makefile ${D}${PTEST_PATH}
32 sed -i -e "/^srcdir/c srcdir = \$\{PWD\}" ${D}${PTEST_PATH}/Makefile
33
34 install -d ${D}${PTEST_PATH}/nls
35 install ${B}/test/nls/*[!\.o] ${D}${PTEST_PATH}/nls
36 install -d ${D}${PTEST_PATH}/.libs
37 install ${B}/test/.libs/* ${D}${PTEST_PATH}/.libs
38
39 install ${S}/test/*.sh ${D}${PTEST_PATH}
40
41 install -d ${D}${PTEST_PATH}/testdata
42 install ${S}/test/testdata/* ${D}${PTEST_PATH}/testdata
43}
44
45RDEPENDS:${PN}-ptest += "make bash"
46
47BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-support/libffi/libffi/0001-Address-platforms-with-no-__int128-part2.patch b/meta/recipes-support/libffi/libffi/0001-Address-platforms-with-no-__int128-part2.patch
deleted file mode 100644
index 6b5b7d4747..0000000000
--- a/meta/recipes-support/libffi/libffi/0001-Address-platforms-with-no-__int128-part2.patch
+++ /dev/null
@@ -1,34 +0,0 @@
1Address platforms with no __int128.
2
3Fixes remaining pieces from
4https://github.com/libffi/libffi/commit/6663047f56c2932a6b10a790f4ac6666dd181326
5
6Upstream-Status: Pending
7Signed-off-by: Khem Raj <raj.khem@gmail.com>
8
9--- a/src/powerpc/ffi_linux64.c.org 2019-12-05 14:48:33.140579431 -0800
10+++ a/src/powerpc/ffi_linux64.c 2019-12-05 14:53:58.827244495 -0800
11@@ -680,9 +680,9 @@ ffi_prep_args64 (extended_cif *ecif, uns
12 {
13 if (vecarg_count < NUM_VEC_ARG_REGISTERS64
14 && i < nfixedargs)
15- *vec_base.f128++ = *arg.f128++;
16+ memcpy (vec_base.f128++, arg.f128, sizeof (float128));
17 else
18- *next_arg.f128 = *arg.f128++;
19+ memcpy (next_arg.f128, arg.f128++, sizeof (float128));
20 if (++next_arg.f128 == gpr_end.f128)
21 next_arg.f128 = rest.f128;
22 vecarg_count++;
23@@ -986,9 +986,9 @@ ffi_closure_helper_LINUX64 (ffi_cif *cif
24 do
25 {
26 if (pvec < end_pvec && i < nfixedargs)
27- *to.f128 = *pvec++;
28+ memcpy (to.f128, pvec++, sizeof (float128));
29 else
30- *to.f128 = *from.f128;
31+ memcpy (to.f128, from.f128, sizeof (float128));
32 to.f128++;
33 from.f128++;
34 }
diff --git a/meta/recipes-support/libffi/libffi/0001-Address-platforms-with-no-__int128.patch b/meta/recipes-support/libffi/libffi/0001-Address-platforms-with-no-__int128.patch
deleted file mode 100644
index 2e32a50296..0000000000
--- a/meta/recipes-support/libffi/libffi/0001-Address-platforms-with-no-__int128.patch
+++ /dev/null
@@ -1,27 +0,0 @@
1From 68f45b9049dffb54f5a29a3a495ab3dfcf010634 Mon Sep 17 00:00:00 2001
2From: Anthony Green <green@moxielogic.com>
3Date: Fri, 29 Nov 2019 07:00:35 -0500
4Subject: [PATCH] Address platforms with no __int128.
5
6Upstream-Status: Backport [https://github.com/libffi/libffi/commit/6663047f56c2932a6b10a790f4ac6666dd181326]
7Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
8---
9 src/powerpc/ffi_linux64.c | 4 ++--
10 1 file changed, 2 insertions(+), 2 deletions(-)
11
12diff --git a/src/powerpc/ffi_linux64.c b/src/powerpc/ffi_linux64.c
13index de0d033..7364770 100644
14--- a/src/powerpc/ffi_linux64.c
15+++ b/src/powerpc/ffi_linux64.c
16@@ -547,9 +547,9 @@ ffi_prep_args64 (extended_cif *ecif, unsigned long *const stack)
17 if (next_arg.ul == gpr_end.ul)
18 next_arg.ul = rest.ul;
19 if (vecarg_count < NUM_VEC_ARG_REGISTERS64 && i < nfixedargs)
20- *vec_base.f128++ = **p_argv.f128;
21+ memcpy (vec_base.f128++, *p_argv.f128, sizeof (float128));
22 else
23- *next_arg.f128 = **p_argv.f128;
24+ memcpy (next_arg.f128, *p_argv.f128, sizeof (float128));
25 if (++next_arg.f128 == gpr_end.f128)
26 next_arg.f128 = rest.f128;
27 vecarg_count++;
diff --git a/meta/recipes-support/libffi/libffi/0001-Fixed-missed-ifndef-for-__mips_soft_float.patch b/meta/recipes-support/libffi/libffi/0001-Fixed-missed-ifndef-for-__mips_soft_float.patch
deleted file mode 100644
index 397194bc93..0000000000
--- a/meta/recipes-support/libffi/libffi/0001-Fixed-missed-ifndef-for-__mips_soft_float.patch
+++ /dev/null
@@ -1,27 +0,0 @@
1From 14e2e74682db3bfcf057688f738fdd842a02ff2d Mon Sep 17 00:00:00 2001
2From: Carl Hurd <carl@Carls-MacBook-Pro.local>
3Date: Wed, 18 Jul 2018 09:04:32 -0400
4Subject: [PATCH] Fixed missed #ifndef for __mips_soft_float
5
6Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
7Upstream-Status: Submitted [https://github.com/libffi/libffi/pull/442]
8---
9 src/mips/o32.S | 2 ++
10 1 file changed, 2 insertions(+)
11
12diff --git a/src/mips/o32.S b/src/mips/o32.S
13index 44e74cb..799139b 100644
14--- a/src/mips/o32.S
15+++ b/src/mips/o32.S
16@@ -282,9 +282,11 @@ $LCFI12:
17 li $13, 1 # FFI_O32
18 bne $16, $13, 1f # Skip fp save if FFI_O32_SOFT_FLOAT
19
20+#ifndef __mips_soft_float
21 # Store all possible float/double registers.
22 s.d $f12, FA_0_0_OFF2($fp)
23 s.d $f14, FA_1_0_OFF2($fp)
24+#endif
25 1:
26 # prepare arguments for ffi_closure_mips_inner_O32
27 REG_L a0, 4($15) # cif
diff --git a/meta/recipes-support/libffi/libffi/0001-arm-sysv-reverted-clang-VFP-mitigation.patch b/meta/recipes-support/libffi/libffi/0001-arm-sysv-reverted-clang-VFP-mitigation.patch
deleted file mode 100644
index 782dce70d8..0000000000
--- a/meta/recipes-support/libffi/libffi/0001-arm-sysv-reverted-clang-VFP-mitigation.patch
+++ /dev/null
@@ -1,104 +0,0 @@
1From 501a6b55853af549fae72723e74271f2a4ec7cf6 Mon Sep 17 00:00:00 2001
2From: Brett Warren <brett.warren@arm.com>
3Date: Fri, 27 Nov 2020 15:28:42 +0000
4Subject: [PATCH] arm/sysv: reverted clang VFP mitigation
5
6Since commit e3d2812ce43940aacae5bab2d0e965278cb1e7ea,
7seperate instructions were used when compiling under clang,
8as clang didn't allow the directives at the time. This mitigation
9now causes compilation to fail under clang 10, as described by
10https://github.com/libffi/libffi/issues/607. Now that
11clang supports the LDC and SDC instructions, this mitigation
12has been reverted.
13
14Upstream-Status: Pending
15Signed-off-by: Brett Warren <brett.warren@arm.com>
16---
17 src/arm/sysv.S | 33 ---------------------------------
18 1 file changed, 33 deletions(-)
19
20diff --git a/src/arm/sysv.S b/src/arm/sysv.S
21index 63180a4..e3ce526 100644
22--- a/src/arm/sysv.S
23+++ b/src/arm/sysv.S
24@@ -128,13 +128,8 @@ ARM_FUNC_START(ffi_call_VFP)
25 cfi_startproc
26
27 cmp r3, #3 @ load only d0 if possible
28-#ifdef __clang__
29- vldrle d0, [sp]
30- vldmgt sp, {d0-d7}
31-#else
32 ldcle p11, cr0, [r0] @ vldrle d0, [sp]
33 ldcgt p11, cr0, [r0], {16} @ vldmgt sp, {d0-d7}
34-#endif
35 add r0, r0, #64 @ discard the vfp register args
36 /* FALLTHRU */
37 ARM_FUNC_END(ffi_call_VFP)
38@@ -172,25 +167,13 @@ ARM_FUNC_START(ffi_call_SYSV)
39 nop
40 0:
41 E(ARM_TYPE_VFP_S)
42-#ifdef __clang__
43- vstr s0, [r2]
44-#else
45 stc p10, cr0, [r2] @ vstr s0, [r2]
46-#endif
47 pop {fp,pc}
48 E(ARM_TYPE_VFP_D)
49-#ifdef __clang__
50- vstr d0, [r2]
51-#else
52 stc p11, cr0, [r2] @ vstr d0, [r2]
53-#endif
54 pop {fp,pc}
55 E(ARM_TYPE_VFP_N)
56-#ifdef __clang__
57- vstm r2, {d0-d3}
58-#else
59 stc p11, cr0, [r2], {8} @ vstm r2, {d0-d3}
60-#endif
61 pop {fp,pc}
62 E(ARM_TYPE_INT64)
63 str r1, [r2, #4]
64@@ -287,11 +270,7 @@ ARM_FUNC_START(ffi_closure_VFP)
65 add ip, sp, #16
66 sub sp, sp, #64+32 @ allocate frame
67 cfi_adjust_cfa_offset(64+32)
68-#ifdef __clang__
69- vstm sp, {d0-d7}
70-#else
71 stc p11, cr0, [sp], {16} @ vstm sp, {d0-d7}
72-#endif
73 stmdb sp!, {ip,lr}
74
75 /* See above. */
76@@ -320,25 +299,13 @@ ARM_FUNC_START_LOCAL(ffi_closure_ret)
77 cfi_rel_offset(lr, 4)
78 0:
79 E(ARM_TYPE_VFP_S)
80-#ifdef __clang__
81- vldr s0, [r2]
82-#else
83 ldc p10, cr0, [r2] @ vldr s0, [r2]
84-#endif
85 ldm sp, {sp,pc}
86 E(ARM_TYPE_VFP_D)
87-#ifdef __clang__
88- vldr d0, [r2]
89-#else
90 ldc p11, cr0, [r2] @ vldr d0, [r2]
91-#endif
92 ldm sp, {sp,pc}
93 E(ARM_TYPE_VFP_N)
94-#ifdef __clang__
95- vldm r2, {d0-d3}
96-#else
97 ldc p11, cr0, [r2], {8} @ vldm r2, {d0-d3}
98-#endif
99 ldm sp, {sp,pc}
100 E(ARM_TYPE_INT64)
101 ldr r1, [r2, #4]
102--
1032.17.1
104
diff --git a/meta/recipes-support/libffi/libffi/0001-ffi_powerpc.h-fix-build-failure-with-powerpc7.patch b/meta/recipes-support/libffi/libffi/0001-ffi_powerpc.h-fix-build-failure-with-powerpc7.patch
deleted file mode 100644
index 52e6e4536b..0000000000
--- a/meta/recipes-support/libffi/libffi/0001-ffi_powerpc.h-fix-build-failure-with-powerpc7.patch
+++ /dev/null
@@ -1,62 +0,0 @@
1From de93adfb6f48100946bba2c3abad2a77a0cfde0b Mon Sep 17 00:00:00 2001
2From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
3Date: Sun, 24 Nov 2019 09:52:01 +0100
4Subject: [PATCH] ffi_powerpc.h: fix build failure with powerpc7
5
6This is a patch pulled down from the following:
7https://github.com/buildroot/buildroot/blob/78926f610b1411b03464152472fd430012deb9ac/package/libffi/0004-ffi_powerpc.h-fix-build-failure-with-powerpc7.patch
8
9This issue is being hit on OpenBMC code when pulling the latest
10libffi tag and building on a P8 ppc64le machine. I verified this
11patch fixes the issue we are seeing.
12
13Below is the original commit message:
14
15Sicne commit 73dd43afc8a447ba98ea02e9aad4c6898dc77fb0, build on powerpc7
16fails on:
17
18In file included from ../src/powerpc/ffi.c:33:0:
19../src/powerpc/ffi_powerpc.h:61:9: error: '_Float128' is not supported on this target
20 typedef _Float128 float128;
21 ^~~~~~~~~
22
23Fix this build failure by checking for __HAVE_FLOAT128 before using
24_Float128, as _Float128 is enabled only on specific conditions, see
25output/host/powerpc64-buildroot-linux-gnu/sysroot/usr/include/bits/floatn.h:
26
27 /* Defined to 1 if the current compiler invocation provides a
28 floating-point type with the IEEE 754 binary128 format, and this glibc
29 includes corresponding *f128 interfaces for it. */
30 #if defined _ARCH_PWR8 && defined __LITTLE_ENDIAN__ && (_CALL_ELF == 2) \
31 && defined __FLOAT128__ && !defined __NO_LONG_DOUBLE_MATH
32 # define __HAVE_FLOAT128 1
33 #else
34 # define __HAVE_FLOAT128 0
35 #endif
36
37Fixes:
38 - http://autobuild.buildroot.org/results/5c9dd8fb3b6a128882b6250f197c80232d8a3b53
39
40Upstream-Status: Submitted [https://github.com/libffi/libffi/pull/561]
41Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
42Signed-off-by: Andrew Geissler <geissonator@yahoo.com>
43---
44 src/powerpc/ffi_powerpc.h | 2 +-
45 1 file changed, 1 insertion(+), 1 deletion(-)
46
47diff --git a/src/powerpc/ffi_powerpc.h b/src/powerpc/ffi_powerpc.h
48index 8e2f2f0..960a5c4 100644
49--- a/src/powerpc/ffi_powerpc.h
50+++ b/src/powerpc/ffi_powerpc.h
51@@ -57,7 +57,7 @@ typedef union
52 double d;
53 } ffi_dblfl;
54
55-#if defined(__FLOAT128_TYPE__)
56+#if defined(__FLOAT128_TYPE__) && defined(__HAVE_FLOAT128)
57 typedef _Float128 float128;
58 #elif defined(__FLOAT128__)
59 typedef __float128 float128;
60--
612.21.0 (Apple Git-122)
62
diff --git a/meta/recipes-support/libffi/libffi/0001-powerpc-fix-build-failure-on-power7-and-older-532.patch b/meta/recipes-support/libffi/libffi/0001-powerpc-fix-build-failure-on-power7-and-older-532.patch
deleted file mode 100644
index 8a7aea4311..0000000000
--- a/meta/recipes-support/libffi/libffi/0001-powerpc-fix-build-failure-on-power7-and-older-532.patch
+++ /dev/null
@@ -1,38 +0,0 @@
1From 4dc6cc961300b9deffb648b1237390a5bea1c6d6 Mon Sep 17 00:00:00 2001
2From: Sergei Trofimovich <slyfox@gentoo.org>
3Date: Thu, 28 Nov 2019 12:42:41 +0000
4Subject: [PATCH] powerpc: fix build failure on power7 and older (#532)
5
6Build failure looks as:
7```
8libtool: compile: powerpc-unknown-linux-gnu-gcc \
9 -O2 -mcpu=powerpc -mtune=powerpc -pipe ... -c src/powerpc/ffi.c ...
10In file included from src/powerpc/ffi.c:33:
11src/powerpc/ffi_powerpc.h:65:9: error: '__int128' is not supported on this target
12 65 | typedef __int128 float128;
13 | ^~~~~~~~
14```
15
16The fix avoids using __int128 in favour of aligned char[16].
17
18Closes: https://github.com/libffi/libffi/issues/531
19Upstream-Status: Backport [https://github.com/libffi/libffi/commit/01a75ed76ea7e57f1b7a5c183e2b1e890e6aa0fd]
20Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
21Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
22---
23 src/powerpc/ffi_powerpc.h | 2 +-
24 1 file changed, 1 insertion(+), 1 deletion(-)
25
26diff --git a/src/powerpc/ffi_powerpc.h b/src/powerpc/ffi_powerpc.h
27index 5ee2a70..8e2f2f0 100644
28--- a/src/powerpc/ffi_powerpc.h
29+++ b/src/powerpc/ffi_powerpc.h
30@@ -62,7 +62,7 @@ typedef _Float128 float128;
31 #elif defined(__FLOAT128__)
32 typedef __float128 float128;
33 #else
34-typedef __int128 float128;
35+typedef char float128[16] __attribute__((aligned(16)));
36 #endif
37
38 void FFI_HIDDEN ffi_closure_SYSV (void);
diff --git a/meta/recipes-support/libffi/libffi/not-win32.patch b/meta/recipes-support/libffi/libffi/not-win32.patch
index 62daaf4b38..f4ed839ed8 100644
--- a/meta/recipes-support/libffi/libffi/not-win32.patch
+++ b/meta/recipes-support/libffi/libffi/not-win32.patch
@@ -1,4 +1,4 @@
1From 306719369a0d3608b4ff2737de74ae284788a14b Mon Sep 17 00:00:00 2001 1From be9d4cc110c159812699780348686da371296b94 Mon Sep 17 00:00:00 2001
2From: Ross Burton <ross.burton@intel.com> 2From: Ross Burton <ross.burton@intel.com>
3Date: Thu, 4 Feb 2016 16:22:50 +0000 3Date: Thu, 4 Feb 2016 16:22:50 +0000
4Subject: [PATCH] libffi: ensure sysroot paths are not in libffi.pc 4Subject: [PATCH] libffi: ensure sysroot paths are not in libffi.pc
@@ -15,17 +15,16 @@ As this block is generally pointless, disable it.
15 15
16Upstream-Status: Inappropriate 16Upstream-Status: Inappropriate
17Signed-off-by: Ross Burton <ross.burton@intel.com> 17Signed-off-by: Ross Burton <ross.burton@intel.com>
18
19--- 18---
20 configure.ac | 2 +- 19 configure.ac | 2 +-
21 1 file changed, 1 insertion(+), 1 deletion(-) 20 1 file changed, 1 insertion(+), 1 deletion(-)
22 21
23diff --git a/configure.ac b/configure.ac 22diff --git a/configure.ac b/configure.ac
24index b764368..d51ce91 100644 23index 816bfd6..e37c5a8 100644
25--- a/configure.ac 24--- a/configure.ac
26+++ b/configure.ac 25+++ b/configure.ac
27@@ -354,7 +354,7 @@ AC_ARG_ENABLE(multi-os-directory, 26@@ -401,7 +401,7 @@ AC_ARG_ENABLE(multi-os-directory,
28 27
29 # These variables are only ever used when we cross-build to X86_WIN32. 28 # These variables are only ever used when we cross-build to X86_WIN32.
30 # And we only support this with GCC, so... 29 # And we only support this with GCC, so...
31-if test "x$GCC" = "xyes"; then 30-if test "x$GCC" = "xyes"; then
diff --git a/meta/recipes-support/libffi/libffi_3.3.bb b/meta/recipes-support/libffi/libffi_3.3.bb
deleted file mode 100644
index 10ef003242..0000000000
--- a/meta/recipes-support/libffi/libffi_3.3.bb
+++ /dev/null
@@ -1,42 +0,0 @@
1SUMMARY = "A portable foreign function interface library"
2HOMEPAGE = "http://sourceware.org/libffi/"
3DESCRIPTION = "The `libffi' library provides a portable, high level programming interface to various calling \
4conventions. This allows a programmer to call any function specified by a call interface description at run \
5time. FFI stands for Foreign Function Interface. A foreign function interface is the popular name for the \
6interface that allows code written in one language to call code written in another language. The `libffi' \
7library really only provides the lowest, machine dependent layer of a fully featured foreign function interface. \
8A layer must exist above `libffi' that handles type conversions for values passed between the two languages."
9
10LICENSE = "MIT"
11LIC_FILES_CHKSUM = "file://LICENSE;md5=492385fe22195952f5b9b197868ba268"
12
13SRC_URI = "https://github.com/libffi/libffi/releases/download/v${PV}/${BPN}-${PV}.tar.gz \
14 file://not-win32.patch \
15 file://0001-Fixed-missed-ifndef-for-__mips_soft_float.patch \
16 file://0001-arm-sysv-reverted-clang-VFP-mitigation.patch \
17 file://0001-powerpc-fix-build-failure-on-power7-and-older-532.patch \
18 file://0001-Address-platforms-with-no-__int128.patch \
19 file://0001-Address-platforms-with-no-__int128-part2.patch \
20 file://0001-ffi_powerpc.h-fix-build-failure-with-powerpc7.patch \
21 "
22SRC_URI[md5sum] = "6313289e32f1d38a9df4770b014a2ca7"
23SRC_URI[sha256sum] = "72fba7922703ddfa7a028d513ac15a85c8d54c8d67f55fa5a4802885dc652056"
24UPSTREAM_CHECK_URI = "https://github.com/libffi/libffi/releases/"
25UPSTREAM_CHECK_REGEX = "libffi-(?P<pver>\d+(\.\d+)+)\.tar"
26
27EXTRA_OECONF += "--disable-builddir"
28EXTRA_OEMAKE_class-target = "LIBTOOLFLAGS='--tag=CC'"
29inherit autotools texinfo multilib_header
30
31do_install_append() {
32 oe_multilib_header ffi.h ffitarget.h
33}
34
35FILES_${PN}-dev += "${libdir}/libffi-${PV}"
36
37# Doesn't compile in MIPS16e mode due to use of hand-written
38# assembly
39MIPS_INSTRUCTION_SET = "mips"
40
41BBCLASSEXTEND = "native nativesdk"
42
diff --git a/meta/recipes-support/libffi/libffi_3.4.6.bb b/meta/recipes-support/libffi/libffi_3.4.6.bb
new file mode 100644
index 0000000000..a6857a3981
--- /dev/null
+++ b/meta/recipes-support/libffi/libffi_3.4.6.bb
@@ -0,0 +1,32 @@
1SUMMARY = "A portable foreign function interface library"
2HOMEPAGE = "http://sourceware.org/libffi/"
3DESCRIPTION = "The `libffi' library provides a portable, high level programming interface to various calling \
4conventions. This allows a programmer to call any function specified by a call interface description at run \
5time. FFI stands for Foreign Function Interface. A foreign function interface is the popular name for the \
6interface that allows code written in one language to call code written in another language. The `libffi' \
7library really only provides the lowest, machine dependent layer of a fully featured foreign function interface. \
8A layer must exist above `libffi' that handles type conversions for values passed between the two languages."
9
10LICENSE = "MIT"
11LIC_FILES_CHKSUM = "file://LICENSE;md5=1db54c9fd307a12218766c3c7f650ca7"
12
13SRC_URI = "${GITHUB_BASE_URI}/download/v${PV}/${BPN}-${PV}.tar.gz \
14 file://not-win32.patch \
15 "
16SRC_URI[sha256sum] = "b0dea9df23c863a7a50e825440f3ebffabd65df1497108e5d437747843895a4e"
17
18EXTRA_OECONF += "--disable-builddir --disable-exec-static-tramp"
19EXTRA_OECONF:class-native += "--with-gcc-arch=generic"
20EXTRA_OEMAKE:class-target = "LIBTOOLFLAGS='--tag=CC'"
21
22inherit autotools texinfo multilib_header github-releases
23
24do_install:append() {
25 oe_multilib_header ffi.h ffitarget.h
26}
27
28# Doesn't compile in MIPS16e mode due to use of hand-written
29# assembly
30MIPS_INSTRUCTION_SET = "mips"
31
32BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-support/libfm/libfm-extra_1.3.2.bb b/meta/recipes-support/libfm/libfm-extra_1.3.2.bb
index de25b19c87..79dd1d92dc 100644
--- a/meta/recipes-support/libfm/libfm-extra_1.3.2.bb
+++ b/meta/recipes-support/libfm/libfm-extra_1.3.2.bb
@@ -1,7 +1,8 @@
1SUMMARY = "Library for file management" 1SUMMARY = "Library for file management"
2DESCRIPTION = "Contains a library and other files required by menu-cache-gen libexec of menu-cache-1.1.0. "
2HOMEPAGE = "http://pcmanfm.sourceforge.net/" 3HOMEPAGE = "http://pcmanfm.sourceforge.net/"
3 4
4LICENSE = "LGPLv2+" 5LICENSE = "LGPL-2.0-or-later"
5LIC_FILES_CHKSUM = "file://src/fm-extra.h;beginline=8;endline=21;md5=ef1f84da64b3c01cca447212f7ef6007" 6LIC_FILES_CHKSUM = "file://src/fm-extra.h;beginline=8;endline=21;md5=ef1f84da64b3c01cca447212f7ef6007"
6 7
7SECTION = "x11/libs" 8SECTION = "x11/libs"
diff --git a/meta/recipes-support/libfm/libfm/0001-Correctly-check-the-stamp-file-that-indicates-if-we-.patch b/meta/recipes-support/libfm/libfm/0001-Correctly-check-the-stamp-file-that-indicates-if-we-.patch
index fb91d90cf2..701b259cf9 100644
--- a/meta/recipes-support/libfm/libfm/0001-Correctly-check-the-stamp-file-that-indicates-if-we-.patch
+++ b/meta/recipes-support/libfm/libfm/0001-Correctly-check-the-stamp-file-that-indicates-if-we-.patch
@@ -4,7 +4,7 @@ Date: Fri, 16 Dec 2016 16:52:04 +0200
4Subject: [PATCH] Correctly check the stamp file that indicates if we need to 4Subject: [PATCH] Correctly check the stamp file that indicates if we need to
5 re-build vala code 5 re-build vala code
6 6
7Upstream-Status: Pending 7Upstream-Status: Submitted [https://github.com/lxde/libfm/pull/85]
8Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> 8Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
9--- 9---
10 configure.ac | 2 +- 10 configure.ac | 2 +-
diff --git a/meta/recipes-support/libfm/libfm/0001-Do-not-add-library-path-to-avoid-host-contamination.patch b/meta/recipes-support/libfm/libfm/0001-Do-not-add-library-path-to-avoid-host-contamination.patch
index f4c89127fc..0437000adc 100644
--- a/meta/recipes-support/libfm/libfm/0001-Do-not-add-library-path-to-avoid-host-contamination.patch
+++ b/meta/recipes-support/libfm/libfm/0001-Do-not-add-library-path-to-avoid-host-contamination.patch
@@ -3,7 +3,7 @@ From: Alexander Kanavin <alex.kanavin@gmail.com>
3Date: Wed, 2 May 2018 16:48:47 +0300 3Date: Wed, 2 May 2018 16:48:47 +0300
4Subject: [PATCH] Do not add library path to avoid host contamination 4Subject: [PATCH] Do not add library path to avoid host contamination
5 5
6Upstream-Status: Pending 6Upstream-Status: Submitted [https://github.com/lxde/libfm/pull/86]
7Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> 7Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
8--- 8---
9 src/modules/Makefile.am | 1 - 9 src/modules/Makefile.am | 1 -
diff --git a/meta/recipes-support/libfm/libfm_1.3.1.bb b/meta/recipes-support/libfm/libfm_1.3.2.bb
index 63ae7874b9..057c737029 100644
--- a/meta/recipes-support/libfm/libfm_1.3.1.bb
+++ b/meta/recipes-support/libfm/libfm_1.3.2.bb
@@ -1,7 +1,9 @@
1SUMMARY = "Library for file management" 1SUMMARY = "Library for file management"
2DESCRIPTION = "LibFM provides file management functions built on top of Glib/GIO \
3giving a convenient higher-level API."
2HOMEPAGE = "http://pcmanfm.sourceforge.net/" 4HOMEPAGE = "http://pcmanfm.sourceforge.net/"
3 5
4LICENSE = "GPLv2+ & LGPLv2+" 6LICENSE = "GPL-2.0-or-later & LGPL-2.0-or-later"
5LIC_FILES_CHKSUM = "file://COPYING;md5=4641e94ec96f98fabc56ff9cc48be14b \ 7LIC_FILES_CHKSUM = "file://COPYING;md5=4641e94ec96f98fabc56ff9cc48be14b \
6 file://src/fm.h;beginline=8;endline=21;md5=ef1f84da64b3c01cca447212f7ef6007 \ 8 file://src/fm.h;beginline=8;endline=21;md5=ef1f84da64b3c01cca447212f7ef6007 \
7 file://src/base/fm-config.h;beginline=10;endline=23;md5=ef1f84da64b3c01cca447212f7ef6007 \ 9 file://src/base/fm-config.h;beginline=10;endline=23;md5=ef1f84da64b3c01cca447212f7ef6007 \
@@ -16,8 +18,7 @@ SRC_URI = "${SOURCEFORGE_MIRROR}/pcmanfm/libfm-${PV}.tar.xz \
16 file://0001-Do-not-add-library-path-to-avoid-host-contamination.patch \ 18 file://0001-Do-not-add-library-path-to-avoid-host-contamination.patch \
17 " 19 "
18 20
19SRC_URI[md5sum] = "c15ecd2c9317e2c385cd3f046d0b61ba" 21SRC_URI[sha256sum] = "a5042630304cf8e5d8cff9d565c6bd546f228b48c960153ed366a34e87cad1e5"
20SRC_URI[sha256sum] = "96b1244bde41ca0eef0332cfb5c67bb16725dfd102128f3e6f74fadc13a1cfe4"
21 22
22inherit autotools pkgconfig gtk-doc gettext features_check mime mime-xdg 23inherit autotools pkgconfig gtk-doc gettext features_check mime mime-xdg
23ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}" 24ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
@@ -28,7 +29,7 @@ do_configure[dirs] =+ "${S}/m4"
28 29
29PACKAGES =+ "libfm-gtk" 30PACKAGES =+ "libfm-gtk"
30PACKAGES += "${PN}-mime" 31PACKAGES += "${PN}-mime"
31FILES_libfm-gtk = " \ 32FILES:libfm-gtk = " \
32 ${libdir}/libfm-gtk*so.* \ 33 ${libdir}/libfm-gtk*so.* \
33 ${libdir}/libfm/modules/gtk* \ 34 ${libdir}/libfm/modules/gtk* \
34 ${bindir}/libfm-pref-apps \ 35 ${bindir}/libfm-pref-apps \
@@ -39,9 +40,9 @@ FILES_libfm-gtk = " \
39 ${datadir}/libfm/images/unknown.png \ 40 ${datadir}/libfm/images/unknown.png \
40 ${datadir}/libfm/ui/*.ui \ 41 ${datadir}/libfm/ui/*.ui \
41" 42"
42FILES_${PN}-mime = "${datadir}/mime/" 43FILES:${PN}-mime = "${datadir}/mime/"
43 44
44do_install_append () { 45do_install:append () {
45 # remove files which are part of libfm-extra 46 # remove files which are part of libfm-extra
46 rm -f ${D}${includedir}/libfm-1.0/fm-xml-file.h 47 rm -f ${D}${includedir}/libfm-1.0/fm-xml-file.h
47 rm -f ${D}${includedir}/libfm-1.0/fm-version.h 48 rm -f ${D}${includedir}/libfm-1.0/fm-version.h
diff --git a/meta/recipes-support/libgcrypt/files/0001-Makefile.am-add-a-missing-space.patch b/meta/recipes-support/libgcrypt/files/0001-Makefile.am-add-a-missing-space.patch
deleted file mode 100644
index 8fbed9add6..0000000000
--- a/meta/recipes-support/libgcrypt/files/0001-Makefile.am-add-a-missing-space.patch
+++ /dev/null
@@ -1,41 +0,0 @@
1From b8192ff67ed46ea2cc4282fa1856ce2868223737 Mon Sep 17 00:00:00 2001
2From: Alexander Kanavin <alex.kanavin@gmail.com>
3Date: Wed, 24 Feb 2021 19:43:07 +0000
4Subject: [PATCH] Makefile.am: add a missing space
5
6Upstream-Status: Pending
7Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
8---
9 cipher/Makefile.am | 2 +-
10 doc/Makefile.am | 2 +-
11 2 files changed, 2 insertions(+), 2 deletions(-)
12
13diff --git a/cipher/Makefile.am b/cipher/Makefile.am
14index 1cf5072..b3ca225 100644
15--- a/cipher/Makefile.am
16+++ b/cipher/Makefile.am
17@@ -143,7 +143,7 @@ gost-sb.h: gost-s-box
18
19 gost-s-box: gost-s-box.c
20 $(CC_FOR_BUILD) $(CFLAGS_FOR_BUILD) $(LDFLAGS_FOR_BUILD) \
21- $(CPPFLAGS_FOR_BUILD)-o $@ $(srcdir)/gost-s-box.c
22+ $(CPPFLAGS_FOR_BUILD) -o $@ $(srcdir)/gost-s-box.c
23
24
25 if ENABLE_O_FLAG_MUNGING
26diff --git a/doc/Makefile.am b/doc/Makefile.am
27index fd7aac2..1703bd9 100644
28--- a/doc/Makefile.am
29+++ b/doc/Makefile.am
30@@ -43,7 +43,7 @@ man_MANS = $(myman_pages)
31
32 yat2m: yat2m.c
33 $(CC_FOR_BUILD) $(CFLAGS_FOR_BUILD) $(LDFLAGS_FOR_BUILD) \
34- $(CPPFLAGS_FOR_BUILD)-o $@ $(srcdir)/yat2m.c
35+ $(CPPFLAGS_FOR_BUILD) -o $@ $(srcdir)/yat2m.c
36
37 .fig.png:
38 fig2dev -L png `test -f '$<' || echo '$(srcdir)/'`$< $@
39--
402.17.1
41
diff --git a/meta/recipes-support/libgcrypt/files/0001-libgcrypt-fix-m4-file-for-oe-core.patch b/meta/recipes-support/libgcrypt/files/0001-libgcrypt-fix-m4-file-for-oe-core.patch
index c873e24ed5..cbfa30f0ad 100644
--- a/meta/recipes-support/libgcrypt/files/0001-libgcrypt-fix-m4-file-for-oe-core.patch
+++ b/meta/recipes-support/libgcrypt/files/0001-libgcrypt-fix-m4-file-for-oe-core.patch
@@ -1,4 +1,4 @@
1From 839f38e5ecc22b7f1b837284bbbffac8cb32ab1e Mon Sep 17 00:00:00 2001 1From bcfd89abdb5110b93314297120412d4c7f2da313 Mon Sep 17 00:00:00 2001
2From: Trevor Gamblin <trevor.gamblin@windriver.com> 2From: Trevor Gamblin <trevor.gamblin@windriver.com>
3Date: Tue, 29 Oct 2019 14:08:32 -0400 3Date: Tue, 29 Oct 2019 14:08:32 -0400
4Subject: [PATCH] libgcrypt: fix m4 file for oe-core 4Subject: [PATCH] libgcrypt: fix m4 file for oe-core
@@ -17,7 +17,7 @@ Signed-off-by: Trevor Gamblin <trevor.gamblin@windriver.com>
17 1 file changed, 4 insertions(+), 86 deletions(-) 17 1 file changed, 4 insertions(+), 86 deletions(-)
18 18
19diff --git a/src/libgcrypt.m4 b/src/libgcrypt.m4 19diff --git a/src/libgcrypt.m4 b/src/libgcrypt.m4
20index 19d514f..21125c7 100644 20index cd4249e..e53a36f 100644
21--- a/src/libgcrypt.m4 21--- a/src/libgcrypt.m4
22+++ b/src/libgcrypt.m4 22+++ b/src/libgcrypt.m4
23@@ -29,41 +29,6 @@ dnl is added to the gpg_config_script_warn variable. 23@@ -29,41 +29,6 @@ dnl is added to the gpg_config_script_warn variable.
@@ -35,7 +35,7 @@ index 19d514f..21125c7 100644
35- fi 35- fi
36- 36-
37- use_gpgrt_config="" 37- use_gpgrt_config=""
38- if test x"${LIBGCRYPT_CONFIG}" = x -a x"$GPGRT_CONFIG" != x -a "$GPGRT_CONFIG" != "no"; then 38- if test x"$GPGRT_CONFIG" != x -a "$GPGRT_CONFIG" != "no"; then
39- if $GPGRT_CONFIG libgcrypt --exists; then 39- if $GPGRT_CONFIG libgcrypt --exists; then
40- LIBGCRYPT_CONFIG="$GPGRT_CONFIG libgcrypt" 40- LIBGCRYPT_CONFIG="$GPGRT_CONFIG libgcrypt"
41- AC_MSG_NOTICE([Use gpgrt-config as libgcrypt-config]) 41- AC_MSG_NOTICE([Use gpgrt-config as libgcrypt-config])
diff --git a/meta/recipes-support/libgcrypt/files/0002-libgcrypt-fix-building-error-with-O2-in-sysroot-path.patch b/meta/recipes-support/libgcrypt/files/0002-libgcrypt-fix-building-error-with-O2-in-sysroot-path.patch
index f9c362431c..cf9ebfb3e6 100644
--- a/meta/recipes-support/libgcrypt/files/0002-libgcrypt-fix-building-error-with-O2-in-sysroot-path.patch
+++ b/meta/recipes-support/libgcrypt/files/0002-libgcrypt-fix-building-error-with-O2-in-sysroot-path.patch
@@ -1,4 +1,4 @@
1From 3c6c10eae0993c8ca60879494c6650f7b8f54ebe Mon Sep 17 00:00:00 2001 1From 0f66e796a8522e1043dda03b88d5f6feae839d16 Mon Sep 17 00:00:00 2001
2From: Chen Qi <Qi.Chen@windriver.com> 2From: Chen Qi <Qi.Chen@windriver.com>
3Date: Wed, 16 Aug 2017 10:44:41 +0800 3Date: Wed, 16 Aug 2017 10:44:41 +0800
4Subject: [PATCH] libgcrypt: fix building error with '-O2' in sysroot path 4Subject: [PATCH] libgcrypt: fix building error with '-O2' in sysroot path
@@ -25,15 +25,15 @@ Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
25 1 file changed, 1 insertion(+), 1 deletion(-) 25 1 file changed, 1 insertion(+), 1 deletion(-)
26 26
27diff --git a/cipher/Makefile.am b/cipher/Makefile.am 27diff --git a/cipher/Makefile.am b/cipher/Makefile.am
28index d644005..1cf5072 100644 28index c3d642b..88c883a 100644
29--- a/cipher/Makefile.am 29--- a/cipher/Makefile.am
30+++ b/cipher/Makefile.am 30+++ b/cipher/Makefile.am
31@@ -147,7 +147,7 @@ gost-s-box: gost-s-box.c 31@@ -153,7 +153,7 @@ gost-s-box: gost-s-box.c
32 32
33 33
34 if ENABLE_O_FLAG_MUNGING 34 if ENABLE_O_FLAG_MUNGING
35-o_flag_munging = sed -e 's/-O\([2-9sg][2-9sg]*\)/-O1/' -e 's/-Ofast/-O1/g' 35-o_flag_munging = sed -e 's/-O\([2-9sgz][2-9sgz]*\)/-O1/' -e 's/-Ofast/-O1/g'
36+o_flag_munging = sed -e 's/ -O\([2-9sg][2-9sg]*\) / -O1 /' -e 's/ -Ofast / -O1 /g' 36+o_flag_munging = sed -e 's/ -O\([2-9sgz][2-9sgz]*\) / -O1 /' -e 's/ -Ofast / -O1 /g'
37 else 37 else
38 o_flag_munging = cat 38 o_flag_munging = cat
39 endif 39 endif
diff --git a/meta/recipes-support/libgcrypt/files/0003-tests-bench-slope.c-workaround-ICE-failure-on-mips-w.patch b/meta/recipes-support/libgcrypt/files/0003-tests-bench-slope.c-workaround-ICE-failure-on-mips-w.patch
deleted file mode 100644
index 105df2957e..0000000000
--- a/meta/recipes-support/libgcrypt/files/0003-tests-bench-slope.c-workaround-ICE-failure-on-mips-w.patch
+++ /dev/null
@@ -1,79 +0,0 @@
1From 7cc702c7b5a1ccc2b0091f3effa1391b6c3030fd Mon Sep 17 00:00:00 2001
2From: Hongxu Jia <hongxu.jia@windriver.com>
3Date: Wed, 16 Aug 2017 10:46:28 +0800
4Subject: [PATCH 3/4] tests/bench-slope.c: workaround ICE failure on mips with
5 '-O -g'
6
7Hit a ICE and could reduce it to the following minimal example:
8
91. Only the size of array assigned with 2 caused the issue:
10$ cat > mipgcc-test.c << END
11
12int main (int argc, char **argv)
13{
14 char *pStrArry[ARRAY_SIZE_MAX] = {"hello"};
15 int i = 0;
16
17 while(pStrArry[i] && i<ARRAY_SIZE_MAX)
18 {
19 printf("%s\n", pStrArry[i]);
20 i++;
21 }
22
23 return 0;
24}
25
26END
27
282. Only -O1 and -g on mips caused the issue:
29$ mips-poky-linux-gcc -O1 -g -o mipgcc-test mipgcc-test.c
30mipgcc-test.c: In function 'main':
31mipgcc-test.c:18:1: internal compiler error: in dwarf2out_var_location,
32at dwarf2out.c:20810
33 }
34 ^
35Please submit a full bug report,
36with preprocessed source if appropriate.
37See <http://gcc.gnu.org/bugs.html> for instructions
38
393. The quick workround is trying to enlarge the size of array with
40larger
41than 2.
42
434. File a bug to GNU, but it could not be reproduced on there
44environment.
45http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60643
46
47Upstream-Status: Inappropriate [oe specific]
48
49Rebase to 1.8.0
50Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
51---
52 tests/bench-slope.c | 4 ++--
53 1 file changed, 2 insertions(+), 2 deletions(-)
54
55diff --git a/tests/bench-slope.c b/tests/bench-slope.c
56index 75e6e43..4e70842 100644
57--- a/tests/bench-slope.c
58+++ b/tests/bench-slope.c
59@@ -1463,7 +1463,7 @@ static struct bench_ops hash_ops = {
60 };
61
62
63-static struct bench_hash_mode hash_modes[] = {
64+static struct bench_hash_mode hash_modes[3] = {
65 {"", &hash_ops},
66 {0},
67 };
68@@ -1629,7 +1629,7 @@ static struct bench_ops mac_ops = {
69 };
70
71
72-static struct bench_mac_mode mac_modes[] = {
73+static struct bench_mac_mode mac_modes[3] = {
74 {"", &mac_ops},
75 {0},
76 };
77--
781.8.3.1
79
diff --git a/meta/recipes-support/libgcrypt/files/0004-tests-Makefile.am-fix-undefined-reference-to-pthread.patch b/meta/recipes-support/libgcrypt/files/0004-tests-Makefile.am-fix-undefined-reference-to-pthread.patch
index 5bf0c7f8a3..4233fa7877 100644
--- a/meta/recipes-support/libgcrypt/files/0004-tests-Makefile.am-fix-undefined-reference-to-pthread.patch
+++ b/meta/recipes-support/libgcrypt/files/0004-tests-Makefile.am-fix-undefined-reference-to-pthread.patch
@@ -1,4 +1,4 @@
1From cb06d218ee36e303a64f27c690f30040d5d87960 Mon Sep 17 00:00:00 2001 1From 9182bc2dc676858a823c477d8f45a578b8c4f69f Mon Sep 17 00:00:00 2001
2From: Hongxu Jia <hongxu.jia@windriver.com> 2From: Hongxu Jia <hongxu.jia@windriver.com>
3Date: Sun, 12 Jun 2016 04:44:29 -0400 3Date: Sun, 12 Jun 2016 04:44:29 -0400
4Subject: [PATCH] tests/Makefile.am: fix undefined reference to 4Subject: [PATCH] tests/Makefile.am: fix undefined reference to
@@ -11,14 +11,14 @@ Upstream-Status: Pending
11Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> 11Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
12 12
13--- 13---
14 tests/Makefile.am | 2 +- 14 tests/Makefile.am | 4 ++--
15 1 file changed, 1 insertion(+), 1 deletion(-) 15 1 file changed, 2 insertions(+), 2 deletions(-)
16 16
17diff --git a/tests/Makefile.am b/tests/Makefile.am 17diff --git a/tests/Makefile.am b/tests/Makefile.am
18index ab201f0..1cf82d0 100644 18index e6953fd..f47e1d3 100644
19--- a/tests/Makefile.am 19--- a/tests/Makefile.am
20+++ b/tests/Makefile.am 20+++ b/tests/Makefile.am
21@@ -75,7 +75,7 @@ t_mpi_bit_LDADD = $(standard_ldadd) @LDADD_FOR_TESTS_KLUDGE@ 21@@ -76,7 +76,7 @@ t_mpi_bit_LDADD = $(standard_ldadd) @LDADD_FOR_TESTS_KLUDGE@
22 t_secmem_LDADD = $(standard_ldadd) @LDADD_FOR_TESTS_KLUDGE@ 22 t_secmem_LDADD = $(standard_ldadd) @LDADD_FOR_TESTS_KLUDGE@
23 testapi_LDADD = $(standard_ldadd) @LDADD_FOR_TESTS_KLUDGE@ 23 testapi_LDADD = $(standard_ldadd) @LDADD_FOR_TESTS_KLUDGE@
24 t_lock_LDADD = $(standard_ldadd) $(GPG_ERROR_MT_LIBS) @LDADD_FOR_TESTS_KLUDGE@ 24 t_lock_LDADD = $(standard_ldadd) $(GPG_ERROR_MT_LIBS) @LDADD_FOR_TESTS_KLUDGE@
@@ -27,3 +27,12 @@ index ab201f0..1cf82d0 100644
27 testdrv_LDADD = $(LDADD_FOR_TESTS_KLUDGE) 27 testdrv_LDADD = $(LDADD_FOR_TESTS_KLUDGE)
28 28
29 # Build a version of the test driver for the build platform. 29 # Build a version of the test driver for the build platform.
30@@ -95,7 +95,7 @@ else
31 xtestsuite_libs = ../src/.libs/libgcrypt.so*
32 xtestsuite_driver = testdrv
33 t_kdf_LDADD = $(standard_ldadd) $(GPG_ERROR_MT_LIBS) @LDADD_FOR_TESTS_KLUDGE@
34-t_kdf_CFLAGS = $(GPG_ERROR_MT_CFLAGS)
35+t_kdf_CFLAGS = $(GPG_ERROR_MT_CFLAGS) -lpthread
36 endif
37
38 # xcheck uses our new testdrv instead of the automake test runner.
diff --git a/meta/recipes-support/libgcrypt/files/no-bench-slope.patch b/meta/recipes-support/libgcrypt/files/no-bench-slope.patch
new file mode 100644
index 0000000000..8de3c6713b
--- /dev/null
+++ b/meta/recipes-support/libgcrypt/files/no-bench-slope.patch
@@ -0,0 +1,20 @@
1The bench-slope test appears to be aborting fairly frequently, which causes
2failures on the autobuilder.
3
4Until this has been root-caused, disable the test.
5
6Upstream-Status: Inappropriate
7Signed-off-by: Ross Burton <ross.burton@arm.com>
8
9diff --git a/tests/testdrv.c b/tests/testdrv.c
10index 0ccde326..d3455186 100644
11--- a/tests/testdrv.c
12+++ b/tests/testdrv.c
13@@ -77,7 +77,6 @@ static struct {
14 { "t-x448" },
15 { "t-ed448" },
16 { "benchmark" },
17- { "bench-slope" },
18 { "hashtest-256g", "hashtest", "--gigs 256 SHA1 SHA256 SHA512 SM3",
19 LONG_RUNNING },
20 { NULL }
diff --git a/meta/recipes-support/libgcrypt/files/no-native-gpg-error.patch b/meta/recipes-support/libgcrypt/files/no-native-gpg-error.patch
new file mode 100644
index 0000000000..b9a607863d
--- /dev/null
+++ b/meta/recipes-support/libgcrypt/files/no-native-gpg-error.patch
@@ -0,0 +1,18 @@
1Don't depend on a native libgpg-error to build the test driver, as it's
2an optional dependency for some C annotations.
3
4Upstream-Status: Inappropriate
5Signed-off-by: Ross Burton <ross.burton@arm.com>
6
7diff --git a/tests/testdrv.c b/tests/testdrv.c
8index 0ccde326..6d6abd57 100644
9--- a/tests/testdrv.c
10+++ b/tests/testdrv.c
11@@ -32,7 +32,6 @@
12 # include <fcntl.h>
13 # include <sys/wait.h>
14 #endif
15-#include <gpg-error.h> /* For some macros. */
16
17 #include "stopwatch.h"
18
diff --git a/meta/recipes-support/libgcrypt/files/run-ptest b/meta/recipes-support/libgcrypt/files/run-ptest
new file mode 100644
index 0000000000..c349ae1944
--- /dev/null
+++ b/meta/recipes-support/libgcrypt/files/run-ptest
@@ -0,0 +1,9 @@
1#!/bin/sh
2
3# Run the tests in regression mode so they are quicker
4export GCRYPT_IN_REGRESSION_TEST=1
5# The 'random' test invokes itself, so we need to be sure that the test
6# directory is on PATH.
7export PATH=$PATH:.
8
9./testdrv --verbose
diff --git a/meta/recipes-support/libgcrypt/libgcrypt_1.9.2.bb b/meta/recipes-support/libgcrypt/libgcrypt_1.10.3.bb
index df49177f16..5a76201ab5 100644
--- a/meta/recipes-support/libgcrypt/libgcrypt_1.9.2.bb
+++ b/meta/recipes-support/libgcrypt/libgcrypt_1.10.3.bb
@@ -1,17 +1,19 @@
1SUMMARY = "General purpose cryptographic library based on the code from GnuPG" 1SUMMARY = "General purpose cryptographic library based on the code from GnuPG"
2DESCRIPTION = "A cryptography library developed as a separated module of GnuPG. \
3It can also be used independently of GnuPG, but depends on its error-reporting \
4library Libgpg-error."
2HOMEPAGE = "http://directory.fsf.org/project/libgcrypt/" 5HOMEPAGE = "http://directory.fsf.org/project/libgcrypt/"
3BUGTRACKER = "https://bugs.g10code.com/gnupg/index" 6BUGTRACKER = "https://bugs.g10code.com/gnupg/index"
4SECTION = "libs" 7SECTION = "libs"
5 8
6# helper program gcryptrnd and getrandom are under GPL, rest LGPL 9# helper program gcryptrnd and getrandom are under GPL, rest LGPL
7LICENSE = "GPLv2+ & LGPLv2.1+ & GPLv3+" 10LICENSE = "GPL-2.0-or-later & LGPL-2.1-or-later"
8LICENSE_${PN} = "LGPLv2.1+" 11LICENSE:${PN} = "LGPL-2.1-or-later"
9LICENSE_${PN}-dev = "GPLv2+ & LGPLv2.1+" 12LICENSE:${PN}-dev = "GPL-2.0-or-later & LGPL-2.1-or-later"
10LICENSE_dumpsexp-dev = "GPLv3+"
11 13
12LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \ 14LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \
13 file://COPYING.LIB;md5=bbb461211a33b134d42ed5ee802b37ff \ 15 file://COPYING.LIB;md5=bbb461211a33b134d42ed5ee802b37ff \
14 file://LICENSES;md5=2dae15d91a37cfde72fe9eae75f8ea14 \ 16 file://LICENSES;md5=ef545b6cc717747072616519a1256d69 \
15 " 17 "
16 18
17DEPENDS = "libgpg-error" 19DEPENDS = "libgpg-error"
@@ -19,40 +21,35 @@ DEPENDS = "libgpg-error"
19UPSTREAM_CHECK_URI = "https://gnupg.org/download/index.html" 21UPSTREAM_CHECK_URI = "https://gnupg.org/download/index.html"
20SRC_URI = "${GNUPG_MIRROR}/libgcrypt/libgcrypt-${PV}.tar.bz2 \ 22SRC_URI = "${GNUPG_MIRROR}/libgcrypt/libgcrypt-${PV}.tar.bz2 \
21 file://0001-libgcrypt-fix-m4-file-for-oe-core.patch \ 23 file://0001-libgcrypt-fix-m4-file-for-oe-core.patch \
22 file://0003-tests-bench-slope.c-workaround-ICE-failure-on-mips-w.patch \
23 file://0002-libgcrypt-fix-building-error-with-O2-in-sysroot-path.patch \ 24 file://0002-libgcrypt-fix-building-error-with-O2-in-sysroot-path.patch \
24 file://0004-tests-Makefile.am-fix-undefined-reference-to-pthread.patch \ 25 file://0004-tests-Makefile.am-fix-undefined-reference-to-pthread.patch \
25 file://0001-Makefile.am-add-a-missing-space.patch \ 26 file://no-native-gpg-error.patch \
27 file://no-bench-slope.patch \
28 file://run-ptest \
26 " 29 "
27SRC_URI[sha256sum] = "b2c10d091513b271e47177274607b1ffba3d95b188bbfa8797f948aec9053c5a" 30SRC_URI[sha256sum] = "8b0870897ac5ac67ded568dcfadf45969cfa8a6beb0fd60af2a9eadc2a3272aa"
28
29# Below whitelisted CVEs are disputed and not affecting crypto libraries for any distro.
30CVE_CHECK_WHITELIST += "CVE-2018-12433 CVE-2018-12438"
31 31
32BINCONFIG = "${bindir}/libgcrypt-config" 32BINCONFIG = "${bindir}/libgcrypt-config"
33 33
34inherit autotools texinfo binconfig-disabled pkgconfig 34inherit autotools texinfo binconfig-disabled pkgconfig ptest
35 35
36EXTRA_OECONF = "--disable-asm" 36EXTRA_OECONF = "--disable-asm"
37EXTRA_OEMAKE_class-target = "LIBTOOLFLAGS='--tag=CC'" 37EXTRA_OEMAKE:class-target = "LIBTOOLFLAGS='--tag=CC'"
38 38
39PACKAGECONFIG ??= "capabilities" 39PACKAGECONFIG ??= "capabilities"
40PACKAGECONFIG[capabilities] = "--with-capabilities,--without-capabilities,libcap" 40PACKAGECONFIG[capabilities] = "--with-capabilities,--without-capabilities,libcap"
41 41
42do_configure_prepend () { 42do_configure:prepend () {
43 # Else this could be used in preference to the one in aclocal-copy 43 # Else this could be used in preference to the one in aclocal-copy
44 rm -f ${S}/m4/gpg-error.m4 44 rm -f ${S}/m4/gpg-error.m4
45} 45}
46 46
47# libgcrypt.pc is added locally and thus installed here 47do_install_ptest() {
48do_install_append() { 48 cd tests
49 install -d ${D}/${libdir}/pkgconfig 49 oe_runmake testdrv-build testdrv
50 install -m 0644 ${B}/src/libgcrypt.pc ${D}/${libdir}/pkgconfig/ 50 install testdrv $(srcdir=${S}/tests ./testdrv-build --files | sort | uniq) ${D}${PTEST_PATH}
51} 51}
52 52
53PACKAGES =+ "dumpsexp-dev" 53FILES:${PN}-dev += "${bindir}/hmac256 ${bindir}/dumpsexp"
54
55FILES_${PN}-dev += "${bindir}/hmac256"
56FILES_dumpsexp-dev += "${bindir}/dumpsexp"
57 54
58BBCLASSEXTEND = "native nativesdk" 55BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-support/libgit2/libgit2_1.1.0.bb b/meta/recipes-support/libgit2/libgit2_1.7.2.bb
index 2bbf59ea74..d1629c0c0b 100644
--- a/meta/recipes-support/libgit2/libgit2_1.1.0.bb
+++ b/meta/recipes-support/libgit2/libgit2_1.7.2.bb
@@ -1,21 +1,20 @@
1SUMMARY = "the Git linkable library" 1SUMMARY = "the Git linkable library"
2HOMEPAGE = "http://libgit2.github.com/" 2HOMEPAGE = "http://libgit2.github.com/"
3LICENSE = "GPL-2.0-with-GCC-exception & MIT" 3LICENSE = "GPL-2.0-with-GCC-exception & MIT & OpenSSL & BSD-3-Clause & Zlib & ISC & LGPL-2.1-or-later & CC0-1.0 & BSD-2-Clause"
4LIC_FILES_CHKSUM = "file://COPYING;md5=5b002a195fb7ea2d8d583f07eaff3a8e" 4LIC_FILES_CHKSUM = "file://COPYING;md5=5bdf47bbc9a39dc6ce076d59e322dc17"
5 5
6DEPENDS = "curl openssl zlib libssh2 libgcrypt libpcre2" 6DEPENDS = "curl openssl zlib libssh2 libgcrypt libpcre2"
7 7
8SRC_URI = "git://github.com/libgit2/libgit2.git;branch=maint/v1.1" 8SRC_URI = "git://github.com/libgit2/libgit2.git;branch=maint/v1.7;protocol=https"
9SRCREV = "7f4fa178629d559c037a1f72f79f79af9c1ef8ce" 9SRCREV = "a418d9d4ab87bae16b87d8f37143a4687ae0e4b2"
10 10
11S = "${WORKDIR}/git" 11S = "${WORKDIR}/git"
12 12
13inherit cmake 13inherit cmake
14 14
15EXTRA_OECMAKE = "\ 15EXTRA_OECMAKE = "\
16 -DBUILD_CLAR=OFF \ 16 -DBUILD_TESTS=OFF \
17 -DCMAKE_BUILD_TYPE=RelWithDebInfo \ 17 -DCMAKE_BUILD_TYPE=RelWithDebInfo \
18 -DLIB_INSTALL_DIR=${libdir} \
19 -DREGEX_BACKEND='pcre2' \ 18 -DREGEX_BACKEND='pcre2' \
20" 19"
21 20
diff --git a/meta/recipes-support/libgpg-error/libgpg-error/0001-Do-not-fail-when-testing-config-scripts.patch b/meta/recipes-support/libgpg-error/libgpg-error/0001-Do-not-fail-when-testing-config-scripts.patch
index a0ab4f23ff..d72838bb05 100644
--- a/meta/recipes-support/libgpg-error/libgpg-error/0001-Do-not-fail-when-testing-config-scripts.patch
+++ b/meta/recipes-support/libgpg-error/libgpg-error/0001-Do-not-fail-when-testing-config-scripts.patch
@@ -1,4 +1,4 @@
1From 137805890951b6b585c1d23097e0a51e8c7a8a50 Mon Sep 17 00:00:00 2001 1From 75622f8b21459eb556b36edc3537fdaded7f04bf Mon Sep 17 00:00:00 2001
2From: Alexander Kanavin <alex.kanavin@gmail.com> 2From: Alexander Kanavin <alex.kanavin@gmail.com>
3Date: Fri, 28 Feb 2020 09:19:56 +0000 3Date: Fri, 28 Feb 2020 09:19:56 +0000
4Subject: [PATCH] Do not fail when testing config scripts 4Subject: [PATCH] Do not fail when testing config scripts
@@ -14,14 +14,13 @@ Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
14 1 file changed, 1 deletion(-) 14 1 file changed, 1 deletion(-)
15 15
16diff --git a/src/Makefile.am b/src/Makefile.am 16diff --git a/src/Makefile.am b/src/Makefile.am
17index 9303954..7630540 100644 17index 9389e99..6ded263 100644
18--- a/src/Makefile.am 18--- a/src/Makefile.am
19+++ b/src/Makefile.am 19+++ b/src/Makefile.am
20@@ -344,7 +344,6 @@ gpg-error-config: gpgrt-config gpg-error-config-old 20@@ -324,6 +324,5 @@ gpg-error-config: gpgrt-config gpg-error-config-old gpg-error-config-test.sh
21 else \ 21 else \
22 echo "no"; \ 22 echo "no"; \
23 echo "*** Please report to <https://bugs.gnupg.org> with gpg-error-config-test.log"; \ 23 echo "*** Please report to <https://bugs.gnupg.org> with gpg-error-config-test.log"; \
24- exit 1; \ 24- exit 1; \
25 fi 25 fi
26 cp gpg-error-config-old $@ 26 cp gpg-error-config-old $@
27
diff --git a/meta/recipes-support/libgpg-error/libgpg-error/pkgconfig.patch b/meta/recipes-support/libgpg-error/libgpg-error/pkgconfig.patch
index 83054a9c44..3d886bcaa4 100644
--- a/meta/recipes-support/libgpg-error/libgpg-error/pkgconfig.patch
+++ b/meta/recipes-support/libgpg-error/libgpg-error/pkgconfig.patch
@@ -1,9 +1,9 @@
1From ec309e20b5a27d42a5fb915c328d61e924ab5f19 Mon Sep 17 00:00:00 2001 1From b0df1cb468264a9bb9113524f0e1318c456b2348 Mon Sep 17 00:00:00 2001
2From: Hongxu Jia <hongxu.jia@windriver.com> 2From: Hongxu Jia <hongxu.jia@windriver.com>
3Date: Thu, 29 Mar 2018 15:12:17 +0800 3Date: Thu, 29 Mar 2018 15:12:17 +0800
4Subject: [PATCH] support pkgconfig 4Subject: [PATCH] support pkgconfig
5 5
6Upstream-Status: Pending 6Upstream-Status: Inappropriate [gnupg upstream will not take this, it has been tried with other components]
7 7
8Rebase to 1.28 8Rebase to 1.28
9 9
@@ -12,18 +12,21 @@ Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
12Refactored for 1.33 12Refactored for 1.33
13Signed-off-by: Armin Kuster <akuster808@gmail.com> 13Signed-off-by: Armin Kuster <akuster808@gmail.com>
14Signed-off-by: Zheng Ruoqin <zhengrq.fnst@cn.fujitsu.com> 14Signed-off-by: Zheng Ruoqin <zhengrq.fnst@cn.fujitsu.com>
15
15--- 16---
16 src/gpg-error.m4 | 142 +---------------------------------------------- 17 src/gpg-error.m4 | 192 ++---------------------------------------------
17 1 file changed, 3 insertions(+), 139 deletions(-) 18 1 file changed, 5 insertions(+), 187 deletions(-)
18 19
19diff --git a/src/gpg-error.m4 b/src/gpg-error.m4 20diff --git a/src/gpg-error.m4 b/src/gpg-error.m4
20index c9b235f..176bd6a 100644 21index 7fa52b1..15a0859 100644
21--- a/src/gpg-error.m4 22--- a/src/gpg-error.m4
22+++ b/src/gpg-error.m4 23+++ b/src/gpg-error.m4
23@@ -26,139 +26,12 @@ dnl is added to the gpg_config_script_warn variable. 24@@ -15,187 +15,14 @@
25 dnl
26 dnl Find gpg-error-config, for backward compatibility
24 dnl 27 dnl
25 AC_DEFUN([AM_PATH_GPG_ERROR], 28-dnl _AM_PATH_POSSIBLE_GPG_ERROR_CONFIG
26 [ AC_REQUIRE([AC_CANONICAL_HOST]) 29-AC_DEFUN([_AM_PATH_POSSIBLE_GPG_ERROR_CONFIG],[dnl
27- gpg_error_config_prefix="" 30- gpg_error_config_prefix=""
28- dnl --with-libgpg-error-prefix=PFX is the preferred name for this option, 31- dnl --with-libgpg-error-prefix=PFX is the preferred name for this option,
29- dnl since that is consistent with how our three siblings use the directory/ 32- dnl since that is consistent with how our three siblings use the directory/
@@ -59,50 +62,112 @@ index c9b235f..176bd6a 100644
59- fi 62- fi
60- 63-
61- AC_PATH_PROG(GPG_ERROR_CONFIG, gpg-error-config, no) 64- AC_PATH_PROG(GPG_ERROR_CONFIG, gpg-error-config, no)
62- min_gpg_error_version=ifelse([$1], ,1.33,$1) 65-])
63- ok=no
64- 66-
65- if test "$prefix" = NONE ; then 67-dnl
66- prefix_option_expanded=/usr/local 68-dnl Find gpgrt-config, which uses .pc file
67- else 69-dnl (minimum pkg-config functionality, supporting cross build)
68- prefix_option_expanded="$prefix" 70-dnl
69- fi 71-dnl _AM_PATH_GPGRT_CONFIG
70- if test "$exec_prefix" = NONE ; then 72-AC_DEFUN([_AM_PATH_GPGRT_CONFIG],[dnl
71- exec_prefix_option_expanded=$prefix_option_expanded 73- AC_PATH_PROG(GPGRT_CONFIG, gpgrt-config, no, [$prefix/bin:$PATH])
72- else 74- if test "$GPGRT_CONFIG" != "no"; then
73- exec_prefix_option_expanded=$(prefix=$prefix_option_expanded eval echo $exec_prefix) 75- # Determine gpgrt_libdir
74- fi 76- #
75- libdir_option_expanded=$(prefix=$prefix_option_expanded exec_prefix=$exec_prefix_option_expanded eval echo $libdir) 77- # Get the prefix of gpgrt-config assuming it's something like:
78- # <PREFIX>/bin/gpgrt-config
79- gpgrt_prefix=${GPGRT_CONFIG%/*/*}
80- possible_libdir1=${gpgrt_prefix}/lib
81- # Determine by using system libdir-format with CC, it's like:
82- # Normal style: /usr/lib
83- # GNU cross style: /usr/<triplet>/lib
84- # Debian style: /usr/lib/<multiarch-name>
85- # Fedora/openSUSE style: /usr/lib, /usr/lib32 or /usr/lib64
86- # It is assumed that CC is specified to the one of host on cross build.
87- if libdir_candidates=$(${CC:-cc} -print-search-dirs | \
88- sed -n -e "/^libraries/{s/libraries: =//;s/:/\\
89-/g;p;}"); then
90- # From the output of -print-search-dirs, select valid pkgconfig dirs.
91- libdir_candidates=$(for dir in $libdir_candidates; do
92- if p=$(cd $dir 2>/dev/null && pwd); then
93- test -d "$p/pkgconfig" && echo $p;
94- fi
95- done)
76- 96-
77- if test -f $libdir_option_expanded/pkgconfig/gpg-error.pc; then 97- for possible_libdir0 in $libdir_candidates; do
78- gpgrt_libdir=$libdir_option_expanded 98- # possible_libdir0:
79- else 99- # Fallback candidate, the one of system-installed (by $CC)
80- if crt1_path=$(${CC:-cc} -print-file-name=crt1.o 2>/dev/null); then 100- # (/usr/<triplet>/lib, /usr/lib/<multiarch-name> or /usr/lib32)
81- if possible_libdir=$(cd ${crt1_path%/*} && pwd 2>/dev/null); then 101- # possible_libdir1:
82- if test -f $possible_libdir/pkgconfig/gpg-error.pc; then 102- # Another candidate, user-locally-installed
83- gpgrt_libdir=$possible_libdir 103- # (<gpgrt_prefix>/lib)
104- # possible_libdir2
105- # Most preferred
106- # (<gpgrt_prefix>/<triplet>/lib,
107- # <gpgrt_prefix>/lib/<multiarch-name> or <gpgrt_prefix>/lib32)
108- if test "${possible_libdir0##*/}" = "lib"; then
109- possible_prefix0=${possible_libdir0%/lib}
110- possible_prefix0_triplet=${possible_prefix0##*/}
111- if test -z "$possible_prefix0_triplet"; then
112- continue
113- fi
114- possible_libdir2=${gpgrt_prefix}/$possible_prefix0_triplet/lib
115- else
116- possible_prefix0=${possible_libdir0%%/lib*}
117- possible_libdir2=${gpgrt_prefix}${possible_libdir0#$possible_prefix0}
118- fi
119- if test -f ${possible_libdir2}/pkgconfig/gpg-error.pc; then
120- gpgrt_libdir=${possible_libdir2}
121- elif test -f ${possible_libdir1}/pkgconfig/gpg-error.pc; then
122- gpgrt_libdir=${possible_libdir1}
123- elif test -f ${possible_libdir0}/pkgconfig/gpg-error.pc; then
124- gpgrt_libdir=${possible_libdir0}
84- fi 125- fi
85- fi 126- if test -n "$gpgrt_libdir"; then break; fi
127- done
86- fi 128- fi
129- if test -z "$gpgrt_libdir"; then
130- # No valid pkgconfig dir in any of the system directories, fallback
131- gpgrt_libdir=${possible_libdir1}
132- fi
133- else
134- unset GPGRT_CONFIG
87- fi 135- fi
88- 136-
89- if test "$GPG_ERROR_CONFIG" = "no" -a -n "$gpgrt_libdir"; then 137- if test -n "$gpgrt_libdir"; then
90- AC_PATH_PROG(GPGRT_CONFIG, gpgrt-config, no) 138- GPGRT_CONFIG="$GPGRT_CONFIG --libdir=$gpgrt_libdir"
91- if test "$GPGRT_CONFIG" = "no"; then 139- if $GPGRT_CONFIG gpg-error >/dev/null 2>&1; then
92- unset GPGRT_CONFIG 140- GPG_ERROR_CONFIG="$GPGRT_CONFIG gpg-error"
141- AC_MSG_NOTICE([Use gpgrt-config with $gpgrt_libdir as gpg-error-config])
142- gpg_error_config_version=`$GPG_ERROR_CONFIG --modversion`
93- else 143- else
94- GPGRT_CONFIG="$GPGRT_CONFIG --libdir=$gpgrt_libdir" 144- gpg_error_config_version=`$GPG_ERROR_CONFIG --version`
95- if $GPGRT_CONFIG gpg-error >/dev/null 2>&1; then 145- unset GPGRT_CONFIG
96- GPG_ERROR_CONFIG="$GPGRT_CONFIG gpg-error"
97- AC_MSG_NOTICE([Use gpgrt-config with $gpgrt_libdir as gpg-error-config])
98- gpg_error_config_version=`$GPG_ERROR_CONFIG --modversion`
99- else
100- unset GPGRT_CONFIG
101- fi
102- fi 146- fi
103- else 147- elif test "$GPG_ERROR_CONFIG" != "no"; then
104- gpg_error_config_version=`$GPG_ERROR_CONFIG --version` 148- gpg_error_config_version=`$GPG_ERROR_CONFIG --version`
149- unset GPGRT_CONFIG
105- fi 150- fi
151-])
152-
153-dnl AM_PATH_GPG_ERROR([MINIMUM-VERSION,
154-dnl [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND ]]])
155-dnl
156-dnl Test for libgpg-error and define GPG_ERROR_CFLAGS, GPG_ERROR_LIBS,
157-dnl GPG_ERROR_MT_CFLAGS, and GPG_ERROR_MT_LIBS. The _MT_ variants are
158-dnl used for programs requireing real multi thread support.
159-dnl
160-dnl If a prefix option is not used, the config script is first
161-dnl searched in $SYSROOT/bin and then along $PATH. If the used
162-dnl config script does not match the host specification the script
163-dnl is added to the gpg_config_script_warn variable.
164-dnl
165-AC_DEFUN([AM_PATH_GPG_ERROR],[dnl
166-AC_REQUIRE([AC_CANONICAL_HOST])dnl
167-AC_REQUIRE([_AM_PATH_POSSIBLE_GPG_ERROR_CONFIG])dnl
168-AC_REQUIRE([_AM_PATH_GPGRT_CONFIG])dnl
169- min_gpg_error_version=ifelse([$1], ,1.33,$1)
170- ok=no
106- if test "$GPG_ERROR_CONFIG" != "no"; then 171- if test "$GPG_ERROR_CONFIG" != "no"; then
107- req_major=`echo $min_gpg_error_version | \ 172- req_major=`echo $min_gpg_error_version | \
108- sed 's/\([[0-9]]*\)\.\([[0-9]]*\)/\1/'` 173- sed 's/\([[0-9]]*\)\.\([[0-9]]*\)/\1/'`
@@ -121,24 +186,10 @@ index c9b235f..176bd6a 100644
121- fi 186- fi
122- fi 187- fi
123- fi 188- fi
124- if test -z "$GPGRT_CONFIG" -a -n "$gpgrt_libdir"; then
125- if test "$major" -gt 1 -o "$major" -eq 1 -a "$minor" -ge 33; then
126- AC_PATH_PROG(GPGRT_CONFIG, gpgrt-config, no)
127- if test "$GPGRT_CONFIG" = "no"; then
128- unset GPGRT_CONFIG
129- else
130- GPGRT_CONFIG="$GPGRT_CONFIG --libdir=$gpgrt_libdir"
131- if $GPGRT_CONFIG gpg-error >/dev/null 2>&1; then
132- GPG_ERROR_CONFIG="$GPGRT_CONFIG gpg-error"
133- AC_MSG_NOTICE([Use gpgrt-config with $gpgrt_libdir as gpg-error-config])
134- else
135- unset GPGRT_CONFIG
136- fi
137- fi
138- fi
139- fi
140- fi 189- fi
141- AC_MSG_CHECKING(for GPG Error - version >= $min_gpg_error_version) 190- AC_MSG_CHECKING(for GPG Error - version >= $min_gpg_error_version)
191+AC_DEFUN([AM_PATH_GPG_ERROR],
192+[ AC_REQUIRE([AC_CANONICAL_HOST])
142+ min_gpg_error_version=ifelse([$1], ,0.0,$1) 193+ min_gpg_error_version=ifelse([$1], ,0.0,$1)
143+ PKG_CHECK_MODULES(GPG_ERROR, [gpg-error >= $min_gpg_error_version], [ok=yes], [ok=no]) 194+ PKG_CHECK_MODULES(GPG_ERROR, [gpg-error >= $min_gpg_error_version], [ok=yes], [ok=no])
144 if test $ok = yes; then 195 if test $ok = yes; then
@@ -163,7 +214,7 @@ index c9b235f..176bd6a 100644
163 fi 214 fi
164 if test x"$gpg_error_config_host" != xnone ; then 215 if test x"$gpg_error_config_host" != xnone ; then
165 if test x"$gpg_error_config_host" != x"$host" ; then 216 if test x"$gpg_error_config_host" != x"$host" ; then
166@@ -174,15 +47,6 @@ AC_DEFUN([AM_PATH_GPG_ERROR], 217@@ -211,15 +38,6 @@ AC_REQUIRE([_AM_PATH_GPGRT_CONFIG])dnl
167 fi 218 fi
168 fi 219 fi
169 else 220 else
@@ -179,6 +230,3 @@ index c9b235f..176bd6a 100644
179- AC_SUBST(GPG_ERROR_MT_CFLAGS) 230- AC_SUBST(GPG_ERROR_MT_CFLAGS)
180- AC_SUBST(GPG_ERROR_MT_LIBS) 231- AC_SUBST(GPG_ERROR_MT_LIBS)
181 ]) 232 ])
182--
1832.25.1
184
diff --git a/meta/recipes-support/libgpg-error/libgpg-error/run-ptest b/meta/recipes-support/libgpg-error/libgpg-error/run-ptest
new file mode 100644
index 0000000000..2d23159eb0
--- /dev/null
+++ b/meta/recipes-support/libgpg-error/libgpg-error/run-ptest
@@ -0,0 +1,3 @@
1#!/bin/sh
2
3make -o Makefile runtest-TESTS
diff --git a/meta/recipes-support/libgpg-error/libgpg-error_1.41.bb b/meta/recipes-support/libgpg-error/libgpg-error_1.48.bb
index 8205cb4557..9f2b49209d 100644
--- a/meta/recipes-support/libgpg-error/libgpg-error_1.41.bb
+++ b/meta/recipes-support/libgpg-error/libgpg-error_1.48.bb
@@ -1,11 +1,12 @@
1SUMMARY = "Small library that defines common error values for all GnuPG components" 1SUMMARY = "Small library that defines common error values for all GnuPG components"
2DESCRIPTION = "Contains common error codes and error handling functions used by GnuPG, Libgcrypt, GPGME and more packages. "
2HOMEPAGE = "http://www.gnupg.org/related_software/libgpg-error/" 3HOMEPAGE = "http://www.gnupg.org/related_software/libgpg-error/"
3BUGTRACKER = "https://bugs.g10code.com/gnupg/index" 4BUGTRACKER = "https://bugs.g10code.com/gnupg/index"
4 5
5LICENSE = "GPLv2+ & LGPLv2.1+" 6LICENSE = "GPL-2.0-or-later & LGPL-2.1-or-later"
6LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552 \ 7LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552 \
7 file://COPYING.LIB;md5=2d5025d4aa3495befef8f17206a5b0a1 \ 8 file://COPYING.LIB;md5=2d5025d4aa3495befef8f17206a5b0a1 \
8 file://src/gpg-error.h.in;beginline=2;endline=18;md5=d82591bc81561f617da71e00ff4a9d79 \ 9 file://src/gpg-error.h.in;beginline=2;endline=18;md5=20f4cf5d81ea2fad18f6297500018654 \
9 file://src/init.c;beginline=2;endline=17;md5=f01cdfcf747af5380590cfd9bbfeaaf7 \ 10 file://src/init.c;beginline=2;endline=17;md5=f01cdfcf747af5380590cfd9bbfeaaf7 \
10 " 11 "
11 12
@@ -16,25 +17,37 @@ UPSTREAM_CHECK_URI = "https://gnupg.org/download/index.html"
16SRC_URI = "${GNUPG_MIRROR}/libgpg-error/libgpg-error-${PV}.tar.bz2 \ 17SRC_URI = "${GNUPG_MIRROR}/libgpg-error/libgpg-error-${PV}.tar.bz2 \
17 file://pkgconfig.patch \ 18 file://pkgconfig.patch \
18 file://0001-Do-not-fail-when-testing-config-scripts.patch \ 19 file://0001-Do-not-fail-when-testing-config-scripts.patch \
20 file://run-ptest \
19 " 21 "
20 22
21SRC_URI[sha256sum] = "64b078b45ac3c3003d7e352a5e05318880a5778c42331ce1ef33d1a0d9922742" 23SRC_URI[sha256sum] = "89ce1ae893e122924b858de84dc4f67aae29ffa610ebf668d5aa539045663d6f"
22 24
23BINCONFIG = "${bindir}/gpg-error-config" 25BINCONFIG = "${bindir}/gpg-error-config"
24 26
25inherit autotools binconfig-disabled pkgconfig gettext multilib_header multilib_script 27inherit autotools binconfig-disabled pkgconfig gettext multilib_header multilib_script ptest
28
29RDEPENDS:${PN}-ptest:append = " make bash"
26 30
27MULTILIB_SCRIPTS = "${PN}-dev:${bindir}/gpgrt-config" 31MULTILIB_SCRIPTS = "${PN}-dev:${bindir}/gpgrt-config"
28 32
29CPPFLAGS += "-P" 33CPPFLAGS += "-P"
30 34
31do_install_append() { 35do_install:append() {
32 # we don't have common lisp in OE 36 # we don't have common lisp in OE
33 rm -rf "${D}${datadir}/common-lisp/" 37 rm -rf "${D}${datadir}/common-lisp/"
34 oe_multilib_header gpg-error.h gpgrt.h 38 oe_multilib_header gpg-error.h gpgrt.h
35} 39}
36 40
37FILES_${PN}-dev += "${bindir}/gpg-error" 41do_compile_ptest() {
38FILES_${PN}-doc += "${datadir}/libgpg-error/errorref.txt" 42 oe_runmake -C tests buildtest-TESTS
43}
44
45do_install_ptest() {
46 install ${B}/tests/t-*[!\.o] ${D}${PTEST_PATH}
47 install ${B}/tests/Makefile ${D}${PTEST_PATH}
48}
49
50FILES:${PN}-dev += "${bindir}/gpg-error"
51FILES:${PN}-doc += "${datadir}/libgpg-error/errorref.txt"
39 52
40BBCLASSEXTEND = "native nativesdk" 53BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-support/libical/libical/0001-Fix-build-with-icu-68.1.patch b/meta/recipes-support/libical/libical/0001-Fix-build-with-icu-68.1.patch
deleted file mode 100644
index 79e1475c6c..0000000000
--- a/meta/recipes-support/libical/libical/0001-Fix-build-with-icu-68.1.patch
+++ /dev/null
@@ -1,81 +0,0 @@
1Upstream-Status: Backport
2Signed-off-by: Ross Burton <ross.burton@arm.com>
3
4From 52d603212173d4502800bf746436a93f806a8898 Mon Sep 17 00:00:00 2001
5From: Allen Winter <allen.winter@kdab.com>
6Date: Sat, 31 Oct 2020 17:38:01 -0400
7Subject: [PATCH] Fix build with icu-68.1
8
9Use stdbool.h to define true and false when possible
10
11Issue#448
12---
13 ConfigureChecks.cmake | 1 +
14 config.h.cmake | 3 +++
15 src/libical/icalrecur.c | 10 ++++++++--
16 3 files changed, 12 insertions(+), 2 deletions(-)
17
18diff --git a/ConfigureChecks.cmake b/ConfigureChecks.cmake
19index e4d0e2ec..bba33fa9 100644
20--- a/ConfigureChecks.cmake
21+++ b/ConfigureChecks.cmake
22@@ -10,6 +10,7 @@ check_include_files(sys/utsname.h HAVE_SYS_UTSNAME_H)
23 check_include_files(fcntl.h HAVE_FCNTL_H)
24 check_include_files(unistd.h HAVE_UNISTD_H)
25 check_include_files(wctype.h HAVE_WCTYPE_H)
26+check_include_files(stdbool.h HAVE_STDBOOL_H)
27
28 include(CheckFunctionExists)
29 if(WIN32 AND MSVC)
30diff --git a/config.h.cmake b/config.h.cmake
31index 8fd3421b..c8008692 100644
32--- a/config.h.cmake
33+++ b/config.h.cmake
34@@ -39,6 +39,9 @@
35 /* Define to 1 if you have the <dirent.h> header file. */
36 #cmakedefine HAVE_DIRENT_H 1
37
38+/* Define to 1 if you have the <stdbool.h> header file. */
39+#cmakedefine HAVE_STDBOOL_H 1
40+
41 /* Define if we have pthread. */
42 #cmakedefine HAVE_PTHREAD_ATTR_GET_NP 1
43 #cmakedefine HAVE_PTHREAD_GETATTR_NP 1
44diff --git a/src/libical/icalrecur.c b/src/libical/icalrecur.c
45index 73178450..b3f054b8 100644
46--- a/src/libical/icalrecur.c
47+++ b/src/libical/icalrecur.c
48@@ -145,6 +145,12 @@
49 #if defined(HAVE_LIBICU)
50 #include <unicode/ucal.h>
51 #include <unicode/ustring.h>
52+#if defined(HAVE_STDBOOL_H)
53+#include <stdbool.h>
54+#else
55+#define false 0
56+#define true 1
57+#endif
58 #define RSCALE_IS_SUPPORTED 1
59 #else
60 #define RSCALE_IS_SUPPORTED 0
61@@ -1018,7 +1024,7 @@ icalarray *icalrecurrencetype_rscale_supported_calendars(void)
62
63 calendars = icalarray_new(sizeof(const char **), 20);
64
65- en = ucal_getKeywordValuesForLocale("calendar", NULL, FALSE, &status);
66+ en = ucal_getKeywordValuesForLocale("calendar", NULL, false, &status);
67 while ((cal = uenum_next(en, NULL, &status))) {
68 cal = icalmemory_tmp_copy(cal);
69 icalarray_append(calendars, &cal);
70@@ -1411,7 +1417,7 @@ static int initialize_rscale(icalrecur_iterator *impl)
71 }
72
73 /* Check if specified calendar is supported */
74- en = ucal_getKeywordValuesForLocale("calendar", NULL, FALSE, &status);
75+ en = ucal_getKeywordValuesForLocale("calendar", NULL, false, &status);
76 while ((cal = uenum_next(en, NULL, &status))) {
77 if (!strcmp(cal, rule.rscale)) {
78 is_hebrew = !strcmp(rule.rscale, "hebrew");
79--
802.25.1
81
diff --git a/meta/recipes-support/libical/libical/0001-Use-our-hand-build-native-src-generator.patch b/meta/recipes-support/libical/libical/0001-Use-our-hand-build-native-src-generator.patch
deleted file mode 100644
index b7b757d74b..0000000000
--- a/meta/recipes-support/libical/libical/0001-Use-our-hand-build-native-src-generator.patch
+++ /dev/null
@@ -1,33 +0,0 @@
1From e33bc310238bba1690f2c71ad333e10b9e422ea9 Mon Sep 17 00:00:00 2001
2From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
3Date: Sat, 19 Oct 2019 14:23:06 +0200
4Subject: [PATCH] Use our hand-build native src-generator
5MIME-Version: 1.0
6Content-Type: text/plain; charset=UTF-8
7Content-Transfer-Encoding: 8bit
8
9Upstream-Status: Inappropriate [oe-core specific]
10
11Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
12---
13 src/libical-glib/CMakeLists.txt | 4 ++--
14 1 file changed, 2 insertions(+), 2 deletions(-)
15
16diff --git a/src/libical-glib/CMakeLists.txt b/src/libical-glib/CMakeLists.txt
17index f3704e6..ce9db16 100644
18--- a/src/libical-glib/CMakeLists.txt
19+++ b/src/libical-glib/CMakeLists.txt
20@@ -63,8 +63,8 @@ endforeach()
21
22 add_custom_command (
23 OUTPUT ${LIBICAL_GLIB_SOURCES} ${CMAKE_CURRENT_BINARY_DIR}/libical-glib-private.h ${CMAKE_CURRENT_BINARY_DIR}/i-cal-forward-declarations.h
24- COMMAND ${EXECUTABLE_OUTPUT_PATH}/src-generator "${CMAKE_CURRENT_SOURCE_DIR}/tools" "${CMAKE_CURRENT_SOURCE_DIR}/api"
25- DEPENDS ${EXECUTABLE_OUTPUT_PATH}/src-generator ${xml_files}
26+ COMMAND ${CMAKE_BINARY_DIR}/src-generator "${CMAKE_CURRENT_SOURCE_DIR}/tools" "${CMAKE_CURRENT_SOURCE_DIR}/api"
27+ DEPENDS ${CMAKE_BINARY_DIR}/src-generator ${xml_files}
28 )
29
30 configure_file(
31--
322.21.0
33
diff --git a/meta/recipes-support/libical/libical/0001-cmake-Do-not-export-CC-into-gir-compiler.patch b/meta/recipes-support/libical/libical/0001-cmake-Do-not-export-CC-into-gir-compiler.patch
new file mode 100644
index 0000000000..3841c060ee
--- /dev/null
+++ b/meta/recipes-support/libical/libical/0001-cmake-Do-not-export-CC-into-gir-compiler.patch
@@ -0,0 +1,33 @@
1From c06d8a8990c996cbb854508a944202ba70ba7a7c Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Thu, 3 Mar 2022 20:10:04 -0800
4Subject: [PATCH] cmake: Do not export CC into gir compiler
5
6this helps cross compilers where full compiler commandline defines the
7compiler rather than just CC variable, therefore let it use the default
8values from environment and not synthesize it from CMAKE_C_COMPILER just
9for this case.
10
11Upstream-Status: Submitted [https://github.com/libical/libical/pull/552]
12Signed-off-by: Khem Raj <raj.khem@gmail.com>
13---
14 cmake/modules/GObjectIntrospectionMacros.cmake | 3 +--
15 1 file changed, 1 insertion(+), 2 deletions(-)
16
17diff --git a/cmake/modules/GObjectIntrospectionMacros.cmake b/cmake/modules/GObjectIntrospectionMacros.cmake
18index 83aff931..d7d3f898 100644
19--- a/cmake/modules/GObjectIntrospectionMacros.cmake
20+++ b/cmake/modules/GObjectIntrospectionMacros.cmake
21@@ -50,8 +50,7 @@ macro(gir_add_introspections introspections_girs)
22 set(_gir_libtool "--no-libtool")
23
24 add_custom_command(
25- COMMAND ${CMAKE_COMMAND} -E env "CC='${CMAKE_C_COMPILER}'"
26- ${GObjectIntrospection_SCANNER}
27+ COMMAND ${GObjectIntrospection_SCANNER}
28 ${GObjectIntrospection_SCANNER_ARGS}
29 --namespace=${_gir_namespace}
30 --nsversion=${_gir_version}
31--
322.35.1
33
diff --git a/meta/recipes-support/libical/libical_3.0.18.bb b/meta/recipes-support/libical/libical_3.0.18.bb
new file mode 100644
index 0000000000..040d23b69d
--- /dev/null
+++ b/meta/recipes-support/libical/libical_3.0.18.bb
@@ -0,0 +1,54 @@
1SUMMARY = "iCal and scheduling (RFC 2445, 2446, 2447) library"
2DESCRIPTION = "An Open Source implementation of the iCalendar protocols \
3and protocol data units. The iCalendar specification describes how \
4calendar clients can communicate with calendar servers so users can store \
5their calendar data and arrange meetings with other users. "
6HOMEPAGE = "https://github.com/libical/libical"
7BUGTRACKER = "https://github.com/libical/libical/issues"
8LICENSE = "LGPL-2.1-only | MPL-2.0"
9LIC_FILES_CHKSUM = "file://LICENSE;md5=1910a2a76ddf6a9ba369182494170d87 \
10 file://LICENSE.LGPL21.txt;md5=8f690bb538f4b301d931374a6eb864d0 \
11 file://LICENSE.MPL2.txt;md5=f75d2927d3c1ed2414ef72048f5ad640 \
12 "
13SECTION = "libs"
14
15SRC_URI = "${GITHUB_BASE_URI}/download/v${PV}/${BP}.tar.gz \
16 file://0001-cmake-Do-not-export-CC-into-gir-compiler.patch \
17 "
18SRC_URI[sha256sum] = "72b7dc1a5937533aee5a2baefc990983b66b141dd80d43b51f80aced4aae219c"
19
20inherit cmake pkgconfig gobject-introspection vala github-releases
21
22DEPENDS += "libical-native"
23
24PACKAGECONFIG ??= "icu glib"
25PACKAGECONFIG[bdb] = ",-DCMAKE_DISABLE_FIND_PACKAGE_BDB=True,db"
26PACKAGECONFIG[glib] = "-DICAL_GLIB=True,-DICAL_GLIB=False,glib-2.0-native libxml2-native glib-2.0 libxml2"
27# ICU is used for RSCALE (RFC7529) support
28PACKAGECONFIG[icu] = ",-DCMAKE_DISABLE_FIND_PACKAGE_ICU=True,icu"
29
30# No need to use perl-native, the host perl is sufficient.
31EXTRA_OECMAKE += "-DPERL_EXECUTABLE=${HOSTTOOLS_DIR}/perl"
32# Disable the test suite as we can't install it
33EXTRA_OECMAKE += "-DLIBICAL_BUILD_TESTING=false"
34# doc build fails with linker error (??) for libical-glib so disable it
35EXTRA_OECMAKE += "-DICAL_BUILD_DOCS=false"
36# gobject-introspection
37EXTRA_OECMAKE:append:class-target = " -DGObjectIntrospection_COMPILER=${STAGING_BINDIR}/g-ir-compiler-wrapper"
38EXTRA_OECMAKE:append:class-target = " -DGObjectIntrospection_SCANNER=${STAGING_BINDIR}/g-ir-scanner-wrapper"
39EXTRA_OECMAKE += "-DVAPIGEN=${STAGING_BINDIR_NATIVE}/vapigen"
40EXTRA_OECMAKE += "${@bb.utils.contains('GI_DATA_ENABLED', 'True', '-DGOBJECT_INTROSPECTION=ON -DICAL_GLIB_VAPI=ON', '-DGOBJECT_INTROSPECTION=OFF', d)}"
41
42# Tell the cross-libical where the tool it needs to build is
43EXTRA_OECMAKE:append:class-target = " -DIMPORT_ICAL_GLIB_SRC_GENERATOR=${STAGING_LIBDIR_NATIVE}/cmake/LibIcal/IcalGlibSrcGenerator.cmake"
44
45do_install:append () {
46 # Remove build host references (https://github.com/libical/libical/issues/532)
47 sed -i \
48 -e 's,${STAGING_LIBDIR},${libdir},g' \
49 -e 's,${STAGING_INCDIR},${includedir},g' \
50 ${D}${libdir}/cmake/LibIcal/LibIcal*.cmake \
51 ${D}${libdir}/cmake/LibIcal/Ical*.cmake
52}
53
54BBCLASSEXTEND = "native"
diff --git a/meta/recipes-support/libical/libical_3.0.8.bb b/meta/recipes-support/libical/libical_3.0.8.bb
deleted file mode 100644
index 6230f09eca..0000000000
--- a/meta/recipes-support/libical/libical_3.0.8.bb
+++ /dev/null
@@ -1,46 +0,0 @@
1SUMMARY = "iCal and scheduling (RFC 2445, 2446, 2447) library"
2HOMEPAGE = "https://github.com/libical/libical"
3BUGTRACKER = "https://github.com/libical/libical/issues"
4LICENSE = "LGPLv2.1 | MPL-2.0"
5LIC_FILES_CHKSUM = "file://LICENSE;md5=1910a2a76ddf6a9ba369182494170d87 \
6 file://LICENSE.LGPL21.txt;md5=933adb561f159e7c3da079536f0ed871 \
7 file://LICENSE.MPL2.txt;md5=f75d2927d3c1ed2414ef72048f5ad640 \
8 "
9SECTION = "libs"
10
11SRC_URI = " \
12 https://github.com/${BPN}/${BPN}/releases/download/v${PV}/${BP}.tar.gz \
13 file://0001-Use-our-hand-build-native-src-generator.patch \
14 file://0001-Fix-build-with-icu-68.1.patch \
15"
16SRC_URI[md5sum] = "41bd1f1fcdcb4779cea478bb55cf07bf"
17SRC_URI[sha256sum] = "09fecacaf75ba5a242159e3a9758a5446b5ce4d0ab684f98a7040864e1d1286f"
18UPSTREAM_CHECK_URI = "https://github.com/libical/libical/releases"
19
20inherit cmake pkgconfig
21
22do_compile_prepend() {
23 # As long as https://github.com/libical/libical/issues/394 is open build native src-generator manually
24 NATIVE_CFLAGS="${BUILD_CFLAGS} `pkg-config-native --cflags glib-2.0` `pkg-config-native --cflags libxml-2.0`"
25 NATIVE_LDFLAGS="${BUILD_LDFLAGS} `pkg-config-native --libs glib-2.0` `pkg-config-native --libs libxml-2.0`"
26 ${BUILD_CC} $NATIVE_CFLAGS ${S}/src/libical-glib/tools/generator.c ${S}/src/libical-glib/tools/xml-parser.c -o ${B}/src-generator $NATIVE_LDFLAGS
27}
28
29PACKAGECONFIG ??= "icu glib"
30PACKAGECONFIG[bdb] = ",-DCMAKE_DISABLE_FIND_PACKAGE_BDB=True,db"
31PACKAGECONFIG[glib] = "-DICAL_GLIB=True,-DICAL_GLIB=False,glib-2.0-native libxml2-native glib-2.0 libxml2"
32# ICU is used for RSCALE (RFC7529) support
33PACKAGECONFIG[icu] = ",-DCMAKE_DISABLE_FIND_PACKAGE_ICU=True,icu"
34
35# No need to use perl-native, the host perl is sufficient.
36EXTRA_OECMAKE += "-DPERL_EXECUTABLE=${HOSTTOOLS_DIR}/perl"
37# doc build fails with linker error (??) for libical-glib so disable it
38EXTRA_OECMAKE += "-DICAL_BUILD_DOCS=false"
39
40do_install_append () {
41 # Remove build host references
42 sed -i \
43 -e 's,${STAGING_LIBDIR},${libdir},g' \
44 -e 's,${STAGING_INCDIR},${includedir},g' \
45 ${D}${libdir}/cmake/LibIcal/LibIcal*.cmake
46}
diff --git a/meta/recipes-support/libjitterentropy/libjitterentropy_3.0.1.bb b/meta/recipes-support/libjitterentropy/libjitterentropy_3.4.1.bb
index 197bb787ac..6cef8c068c 100644
--- a/meta/recipes-support/libjitterentropy/libjitterentropy_3.0.1.bb
+++ b/meta/recipes-support/libjitterentropy/libjitterentropy_3.4.1.bb
@@ -4,13 +4,13 @@ It does not depend on any system resource other than a high-resolution time \
4stamp. It is a small-scale, yet fast entropy source that is viable in almost \ 4stamp. It is a small-scale, yet fast entropy source that is viable in almost \
5all environments and on a lot of CPU architectures." 5all environments and on a lot of CPU architectures."
6HOMEPAGE = "http://www.chronox.de/jent.html" 6HOMEPAGE = "http://www.chronox.de/jent.html"
7LICENSE = "GPLv2+ | BSD" 7LICENSE = "GPL-2.0-or-later | BSD-3-Clause"
8LIC_FILES_CHKSUM = "file://COPYING;md5=c69090e97c8fd6372d03099c0a5bc382 \ 8LIC_FILES_CHKSUM = "file://LICENSE;md5=64a87180908540620ce364b5e69b3b03 \
9 file://COPYING.gplv2;md5=eb723b61539feef013de476e68b5c50a \ 9 file://LICENSE.gplv2;md5=eb723b61539feef013de476e68b5c50a \
10 file://COPYING.bsd;md5=66a5cedaf62c4b2637025f049f9b826f \ 10 file://LICENSE.bsd;md5=66a5cedaf62c4b2637025f049f9b826f \
11 " 11 "
12SRC_URI = "git://github.com/smuellerDD/jitterentropy-library.git" 12SRC_URI = "git://github.com/smuellerDD/jitterentropy-library.git;branch=master;protocol=https"
13SRCREV = "747bf030b0ea9c44548b4e29bcfab7ae416675fc" 13SRCREV = "4544e11320138ac02797af81766f4476a71bb09f"
14S = "${WORKDIR}/git" 14S = "${WORKDIR}/git"
15 15
16do_configure[noexec] = "1" 16do_configure[noexec] = "1"
diff --git a/meta/recipes-support/libksba/libksba/ksba-add-pkgconfig-support.patch b/meta/recipes-support/libksba/libksba/ksba-add-pkgconfig-support.patch
index af96bd57cd..bdb80ff34d 100644
--- a/meta/recipes-support/libksba/libksba/ksba-add-pkgconfig-support.patch
+++ b/meta/recipes-support/libksba/libksba/ksba-add-pkgconfig-support.patch
@@ -1,4 +1,4 @@
1From 6081640895b6d566fa21123e2de7d111eeab5c4c Mon Sep 17 00:00:00 2001 1From ca8174aa81d7bf364b33f7254a9e887735c4996d Mon Sep 17 00:00:00 2001
2From: Chen Qi <Qi.Chen@windriver.com> 2From: Chen Qi <Qi.Chen@windriver.com>
3Date: Mon, 3 Dec 2012 18:17:31 +0800 3Date: Mon, 3 Dec 2012 18:17:31 +0800
4Subject: [PATCH] libksba: add pkgconfig support 4Subject: [PATCH] libksba: add pkgconfig support
@@ -16,7 +16,7 @@ Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
16 1 file changed, 4 insertions(+), 86 deletions(-) 16 1 file changed, 4 insertions(+), 86 deletions(-)
17 17
18diff --git a/src/ksba.m4 b/src/ksba.m4 18diff --git a/src/ksba.m4 b/src/ksba.m4
19index 6b55bb8..6e7336f 100644 19index 452c245..aa96255 100644
20--- a/src/ksba.m4 20--- a/src/ksba.m4
21+++ b/src/ksba.m4 21+++ b/src/ksba.m4
22@@ -23,37 +23,6 @@ dnl with a changed API. 22@@ -23,37 +23,6 @@ dnl with a changed API.
@@ -44,7 +44,7 @@ index 6b55bb8..6e7336f 100644
44- fi 44- fi
45- 45-
46- use_gpgrt_config="" 46- use_gpgrt_config=""
47- if test x"$KSBA_CONFIG" = x -a x"$GPGRT_CONFIG" != x -a "$GPGRT_CONFIG" != "no"; then 47- if test x"$GPGRT_CONFIG" != x -a "$GPGRT_CONFIG" != "no"; then
48- if $GPGRT_CONFIG ksba --exists; then 48- if $GPGRT_CONFIG ksba --exists; then
49- KSBA_CONFIG="$GPGRT_CONFIG ksba" 49- KSBA_CONFIG="$GPGRT_CONFIG ksba"
50- AC_MSG_NOTICE([Use gpgrt-config as ksba-config]) 50- AC_MSG_NOTICE([Use gpgrt-config as ksba-config])
diff --git a/meta/recipes-support/libksba/libksba_1.5.0.bb b/meta/recipes-support/libksba/libksba_1.6.6.bb
index 005389eab6..2230a032f6 100644
--- a/meta/recipes-support/libksba/libksba_1.5.0.bb
+++ b/meta/recipes-support/libksba/libksba_1.6.6.bb
@@ -1,8 +1,13 @@
1SUMMARY = "Easy API to create and parse X.509 and CMS related objects" 1SUMMARY = "Easy API to create and parse X.509 and CMS related objects"
2DESCRIPTION = "A library to make the tasks of working with X.509 certificates, \
3CMS data and related objects more easy. It provides a highlevel interface to \
4the implemented protocols and presents the data in a consistent way. The \
5library does not rely on another cryptographic library but provides \
6hooks for easy integration with Libgcrypt. "
2HOMEPAGE = "http://www.gnupg.org/related_software/libksba/" 7HOMEPAGE = "http://www.gnupg.org/related_software/libksba/"
3LICENSE = "GPLv3+ & (GPLv2+ | LGPLv3+)" 8LICENSE = "GPL-3.0-or-later & (GPL-2.0-or-later | LGPL-3.0-or-later)"
4LICENSE_${PN} = "GPLv2+ | LGPLv3+" 9LICENSE:${PN} = "GPL-2.0-or-later | LGPL-3.0-or-later"
5LICENSE_${PN}-doc = "GPLv3+" 10LICENSE:${PN}-doc = "GPL-3.0-or-later"
6LIC_FILES_CHKSUM = "file://COPYING;md5=fd541d83f75d038c4e0617b672ed8bda \ 11LIC_FILES_CHKSUM = "file://COPYING;md5=fd541d83f75d038c4e0617b672ed8bda \
7 file://COPYING.GPLv2;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ 12 file://COPYING.GPLv2;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
8 file://COPYING.GPLv3;md5=2f31b266d3440dd7ee50f92cf67d8e6c \ 13 file://COPYING.GPLv3;md5=2f31b266d3440dd7ee50f92cf67d8e6c \
@@ -19,9 +24,9 @@ UPSTREAM_CHECK_URI = "https://gnupg.org/download/index.html"
19SRC_URI = "${GNUPG_MIRROR}/${BPN}/${BPN}-${PV}.tar.bz2 \ 24SRC_URI = "${GNUPG_MIRROR}/${BPN}/${BPN}-${PV}.tar.bz2 \
20 file://ksba-add-pkgconfig-support.patch" 25 file://ksba-add-pkgconfig-support.patch"
21 26
22SRC_URI[sha256sum] = "ae4af129216b2d7fdea0b5bf2a788cd458a79c983bb09a43f4d525cc87aba0ba" 27SRC_URI[sha256sum] = "5dec033d211559338838c0c4957c73dfdc3ee86f73977d6279640c9cd08ce6a4"
23 28
24do_configure_prepend () { 29do_configure:prepend () {
25 # Else these could be used in preference to those in aclocal-copy 30 # Else these could be used in preference to those in aclocal-copy
26 rm -f ${S}/m4/gpg-error.m4 31 rm -f ${S}/m4/gpg-error.m4
27} 32}
diff --git a/meta/recipes-support/libmd/libmd_1.0.3.bb b/meta/recipes-support/libmd/libmd_1.1.0.bb
index 2e6762e490..dc588a0f95 100644
--- a/meta/recipes-support/libmd/libmd_1.0.3.bb
+++ b/meta/recipes-support/libmd/libmd_1.1.0.bb
@@ -9,7 +9,7 @@ LICENSE = "BSD-3-Clause & BSD-2-Clause"
9LIC_FILES_CHKSUM = "file://COPYING;md5=0436d4fb62a71f661d6e8b7812f9e1df" 9LIC_FILES_CHKSUM = "file://COPYING;md5=0436d4fb62a71f661d6e8b7812f9e1df"
10 10
11SRC_URI = "https://archive.hadrons.org/software/libmd/libmd-${PV}.tar.xz" 11SRC_URI = "https://archive.hadrons.org/software/libmd/libmd-${PV}.tar.xz"
12SRC_URI[sha256sum] = "5a02097f95cc250a3f1001865e4dbba5f1d15554120f95693c0541923c52af4a" 12SRC_URI[sha256sum] = "1bd6aa42275313af3141c7cf2e5b964e8b1fd488025caf2f971f43b00776b332"
13 13
14inherit autotools 14inherit autotools
15 15
diff --git a/meta/recipes-support/libmicrohttpd/libmicrohttpd_1.0.1.bb b/meta/recipes-support/libmicrohttpd/libmicrohttpd_1.0.1.bb
new file mode 100644
index 0000000000..0628ee71b5
--- /dev/null
+++ b/meta/recipes-support/libmicrohttpd/libmicrohttpd_1.0.1.bb
@@ -0,0 +1,27 @@
1SUMMARY = "A small C library that is supposed to make it easy to run an HTTP server as part of another application"
2HOMEPAGE = "http://www.gnu.org/software/libmicrohttpd/"
3LICENSE = "LGPL-2.1-or-later"
4LIC_FILES_CHKSUM = "file://COPYING;md5=57d09285feac8a64efa878e692b14f36"
5SECTION = "net"
6
7DEPENDS = "file"
8
9SRC_URI = "${GNU_MIRROR}/libmicrohttpd/${BPN}-${PV}.tar.gz"
10SRC_URI[sha256sum] = "a89e09fc9b4de34dde19f4fcb4faaa1ce10299b9908db1132bbfa1de47882b94"
11
12inherit autotools lib_package pkgconfig gettext
13
14CFLAGS += "-pthread -D_REENTRANT"
15
16EXTRA_OECONF += "--disable-static --with-gnutls=${STAGING_LIBDIR}/../ --enable-largefile"
17
18PACKAGECONFIG ?= "curl https"
19
20PACKAGECONFIG[curl] = "--enable-curl,--disable-curl,curl,"
21PACKAGECONFIG[https] = "--enable-https,--disable-https,libgcrypt gnutls,"
22
23do_compile:append() {
24 sed -i s:-L${STAGING_LIBDIR}::g libmicrohttpd.pc
25}
26
27BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-support/libmpc/libmpc.inc b/meta/recipes-support/libmpc/libmpc.inc
index b3742543df..bc564d4dca 100644
--- a/meta/recipes-support/libmpc/libmpc.inc
+++ b/meta/recipes-support/libmpc/libmpc.inc
@@ -1,7 +1,7 @@
1SUMMARY = "C library for complex number arithmetic with arbitrary precision and correct rounding" 1SUMMARY = "C library for complex number arithmetic with arbitrary precision and correct rounding"
2DESCRIPTION = "Mpc is a C library for the arithmetic of complex numbers with arbitrarily high precision and correct rounding of the result. It is built upon and follows the same principles as Mpfr" 2DESCRIPTION = "Mpc is a C library for the arithmetic of complex numbers with arbitrarily high precision and correct rounding of the result. It is built upon and follows the same principles as Mpfr"
3HOMEPAGE = "http://www.multiprecision.org/" 3HOMEPAGE = "http://www.multiprecision.org/"
4LICENSE = "LGPLv3" 4LICENSE = "LGPL-3.0-only"
5SECTION = "libs" 5SECTION = "libs"
6 6
7inherit autotools texinfo 7inherit autotools texinfo
diff --git a/meta/recipes-support/libmpc/libmpc_1.2.1.bb b/meta/recipes-support/libmpc/libmpc_1.3.1.bb
index 15d382c4ad..ed57396c0a 100644
--- a/meta/recipes-support/libmpc/libmpc_1.2.1.bb
+++ b/meta/recipes-support/libmpc/libmpc_1.3.1.bb
@@ -5,7 +5,7 @@ DEPENDS = "gmp mpfr"
5LIC_FILES_CHKSUM = "file://COPYING.LESSER;md5=e6a600fd5e1d9cbde2d983680233ad02" 5LIC_FILES_CHKSUM = "file://COPYING.LESSER;md5=e6a600fd5e1d9cbde2d983680233ad02"
6SRC_URI = "${GNU_MIRROR}/mpc/mpc-${PV}.tar.gz" 6SRC_URI = "${GNU_MIRROR}/mpc/mpc-${PV}.tar.gz"
7 7
8SRC_URI[sha256sum] = "17503d2c395dfcf106b622dc142683c1199431d095367c6aacba6eec30340459" 8SRC_URI[sha256sum] = "ab642492f5cf882b74aa0cb730cd410a81edcdbec895183ce930e706c1c759b8"
9 9
10S = "${WORKDIR}/mpc-${PV}" 10S = "${WORKDIR}/mpc-${PV}"
11BBCLASSEXTEND = "native nativesdk" 11BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-support/libnl/files/enable-serial-tests.patch b/meta/recipes-support/libnl/files/enable-serial-tests.patch
deleted file mode 100644
index 8ea53f8748..0000000000
--- a/meta/recipes-support/libnl/files/enable-serial-tests.patch
+++ /dev/null
@@ -1,28 +0,0 @@
1From b1476d89bf7a0bc6062438731ee4e9026696328b Mon Sep 17 00:00:00 2001
2From: Eric Xu <chi.xu@windriver.com>
3Date: Fri, 9 Mar 2018 03:38:49 +0000
4Subject: [PATCH] Add ptest for libnl
5
6serial-tests is required to generate those targets.
7
8Signed-off-by: Eric Xu <chi.xu@windriver.com>
9---
10 configure.ac | 2 +-
11 1 files changed, 1 insertion(+), 1 deletions(-)
12
13diff --git a/configure.ac b/configure.ac
14index dfead98..2cc8257 100644
15--- a/configure.ac
16+++ b/configure.ac
17@@ -46,7 +46,7 @@ AC_INIT(libnl, [libnl_version], [], [], [http://www.infradead.org/~tgr/libnl/])
18 AC_CONFIG_HEADERS([lib/defs.h])
19 AC_CONFIG_AUX_DIR([build-aux])
20 AC_CONFIG_MACRO_DIR([m4])
21-AM_INIT_AUTOMAKE([-Wall foreign subdir-objects])
22+AM_INIT_AUTOMAKE([-Wall foreign subdir-objects serial-tests])
23 m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES(yes)], [])
24 m4_ifdef([AM_PROG_AR], [AM_PROG_AR])
25
26--
272.13.3
28
diff --git a/meta/recipes-support/libnl/files/run-ptest b/meta/recipes-support/libnl/files/run-ptest
index e5c9eb0a32..0d0c665cd2 100755
--- a/meta/recipes-support/libnl/files/run-ptest
+++ b/meta/recipes-support/libnl/files/run-ptest
@@ -1,16 +1,3 @@
1#!/bin/sh 1#! /bin/sh
2 2
3num_fail=0 3CK_AUTOMAKE=1 ./check-all
4
5for test in check*
6do
7 ./"$test" \
8 && echo "PASS: $test" \
9 || {
10 echo "FAIL: $test"
11 num_fail=$(( ${num_fail} + 1))
12 }
13
14done
15
16exit $num_fail
diff --git a/meta/recipes-support/libnl/libnl_3.5.0.bb b/meta/recipes-support/libnl/libnl_3.5.0.bb
deleted file mode 100644
index 09d8c8611e..0000000000
--- a/meta/recipes-support/libnl/libnl_3.5.0.bb
+++ /dev/null
@@ -1,70 +0,0 @@
1SUMMARY = "A library for applications dealing with netlink sockets"
2HOMEPAGE = "http://www.infradead.org/~tgr/libnl/"
3SECTION = "libs/network"
4
5PE = "1"
6
7LICENSE = "LGPLv2.1"
8LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c"
9
10DEPENDS = "flex-native bison-native"
11
12SRC_URI = " \
13 https://github.com/thom311/${BPN}/releases/download/${BPN}${@d.getVar('PV').replace('.','_')}/${BP}.tar.gz \
14 file://enable-serial-tests.patch \
15 file://run-ptest \
16 "
17
18SRC_URI[md5sum] = "74ba57b1b1d6f9f92268aa8141d8e8e4"
19SRC_URI[sha256sum] = "352133ec9545da76f77e70ccb48c9d7e5324d67f6474744647a7ed382b5e05fa"
20
21
22UPSTREAM_CHECK_URI = "https://github.com/thom311/${BPN}/releases"
23
24inherit autotools pkgconfig ptest
25
26FILES_${PN} = "${libdir}/libnl-3.so.* \
27 ${libdir}/libnl.so.* \
28 ${sysconfdir}"
29RREPLACES_${PN} = "libnl2"
30RCONFLICTS_${PN} = "libnl2"
31
32FILES_${PN}-dev += "${libdir}/libnl/cli/*/*.la"
33FILES_${PN}-staticdev += "${libdir}/libnl/cli/*/*.a"
34
35PACKAGES += "${PN}-cli ${PN}-genl ${PN}-idiag ${PN}-nf ${PN}-route ${PN}-xfrm"
36FILES_${PN}-cli = "${libdir}/libnl-cli-3.so.* \
37 ${libdir}/libnl/cli/*/*.so \
38 ${bindir}/genl-ctrl-list \
39 ${bindir}/idiag-socket-details \
40 ${bindir}/nf-* \
41 ${bindir}/nl-*"
42FILES_${PN}-genl = "${libdir}/libnl-genl-3.so.* \
43 ${libdir}/libnl-genl.so.*"
44FILES_${PN}-idiag = "${libdir}/libnl-idiag-3.so.*"
45FILES_${PN}-nf = "${libdir}/libnl-nf-3.so.*"
46FILES_${PN}-route = "${libdir}/libnl-route-3.so.*"
47FILES_${PN}-xfrm = "${libdir}/libnl-xfrm-3.so.*"
48RREPLACES_${PN}-genl = "libnl-genl2"
49RCONFLICTS_${PN}-genl = "libnl-genl2"
50
51RDEPENDS_${PN}-ptest += "libcheck"
52DEPENDS += "${@bb.utils.contains('PTEST_ENABLED', '1', 'libcheck', '', d)}"
53
54# make sure the tests don't link against wrong so file
55EXTRA_OECONF += "${@bb.utils.contains('PTEST_ENABLED', '1', '--disable-rpath', '', d)}"
56
57do_compile_ptest() {
58 # hack to remove the call to `make runtest-TESTS`
59 sed -i 's/$(MAKE) $(AM_MAKEFLAGS) runtest-TESTS//g' Makefile
60 oe_runmake check
61}
62
63do_install_ptest(){
64 # legacy? tests are also installed, but ptest-runner will not run them
65 # upstream are not running these tests in their CI pipeline
66 # issue opened https://github.com/thom311/libnl/issues/270
67 install -m 0755 tests/.libs/* ${D}${PTEST_PATH}/
68}
69
70BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-support/libnl/libnl_3.9.0.bb b/meta/recipes-support/libnl/libnl_3.9.0.bb
new file mode 100644
index 0000000000..db9d93e8cb
--- /dev/null
+++ b/meta/recipes-support/libnl/libnl_3.9.0.bb
@@ -0,0 +1,64 @@
1SUMMARY = "A library for applications dealing with netlink sockets"
2DESCRIPTION = "The libnl suite is a collection of libraries providing \
3APIs to netlink protocol based Linux kernel interfaces. libnl is the core \
4library implementing the fundamentals required to use the netlink protocol \
5such as socket handling, message construction and parsing, and sending \
6and receiving of data."
7HOMEPAGE = "http://www.infradead.org/~tgr/libnl/"
8SECTION = "libs/network"
9
10PE = "1"
11
12LICENSE = "LGPL-2.1-only"
13LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c"
14
15DEPENDS = "flex-native bison-native"
16
17SRC_URI = "${GITHUB_BASE_URI}/download/${BPN}${@d.getVar('PV').replace('.','_')}/${BP}.tar.gz \
18 file://run-ptest \
19 "
20
21SRC_URI[sha256sum] = "aed507004d728a5cf11eab48ca4bf9e6e1874444e33939b9d3dfed25018ee9bb"
22
23GITHUB_BASE_URI = "https://github.com/thom311/${BPN}/releases"
24UPSTREAM_CHECK_REGEX = "releases/tag/libnl(?P<pver>.+)"
25
26inherit autotools pkgconfig ptest github-releases
27
28FILES:${PN} = "${libdir}/libnl-3.so.* \
29 ${libdir}/libnl.so.* \
30 ${sysconfdir}"
31RREPLACES:${PN} = "libnl2"
32RCONFLICTS:${PN} = "libnl2"
33
34FILES:${PN}-dev += "${libdir}/libnl/cli/*/*.la"
35FILES:${PN}-staticdev += "${libdir}/libnl/cli/*/*.a"
36
37PACKAGES += "${PN}-cli ${PN}-genl ${PN}-idiag ${PN}-nf ${PN}-route ${PN}-xfrm"
38FILES:${PN}-cli = "${libdir}/libnl-cli-3.so.* \
39 ${libdir}/libnl/cli/*/*.so \
40 ${bindir}/genl-ctrl-list \
41 ${bindir}/idiag-socket-details \
42 ${bindir}/nf-* \
43 ${bindir}/nl-*"
44FILES:${PN}-genl = "${libdir}/libnl-genl-3.so.* \
45 ${libdir}/libnl-genl.so.*"
46FILES:${PN}-idiag = "${libdir}/libnl-idiag-3.so.*"
47FILES:${PN}-nf = "${libdir}/libnl-nf-3.so.*"
48FILES:${PN}-route = "${libdir}/libnl-route-3.so.*"
49FILES:${PN}-xfrm = "${libdir}/libnl-xfrm-3.so.*"
50RREPLACES:${PN}-genl = "libnl-genl2"
51RCONFLICTS:${PN}-genl = "libnl-genl2"
52
53DEPENDS += "${@bb.utils.contains('PTEST_ENABLED', '1', 'libcheck', '', d)}"
54RRECOMMENDS:${PN}-ptest += "kernel-module-dummy kernel-module-bonding"
55
56do_compile_ptest() {
57 oe_runmake ./tests/check-all
58}
59
60do_install_ptest() {
61 ./libtool install install ./tests/check-all ${D}${PTEST_PATH}/
62}
63
64BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-support/libpcre/libpcre2_10.36.bb b/meta/recipes-support/libpcre/libpcre2_10.43.bb
index d8077a1224..fd0bd79212 100644
--- a/meta/recipes-support/libpcre/libpcre2_10.36.bb
+++ b/meta/recipes-support/libpcre/libpcre2_10.43.bb
@@ -8,11 +8,14 @@ SUMMARY = "Perl Compatible Regular Expressions version 2"
8HOMEPAGE = "http://www.pcre.org" 8HOMEPAGE = "http://www.pcre.org"
9SECTION = "devel" 9SECTION = "devel"
10LICENSE = "BSD-3-Clause" 10LICENSE = "BSD-3-Clause"
11LIC_FILES_CHKSUM = "file://LICENCE;md5=60c08fab1357bfe9084b333bc33362d6" 11LIC_FILES_CHKSUM = "file://LICENCE;md5=321a5eb46acae6b6c1ff2c7a866d836a"
12 12
13SRC_URI = "https://ftp.pcre.org/pub/pcre/pcre2-${PV}.tar.bz2" 13SRC_URI = "${GITHUB_BASE_URI}/download/pcre2-${PV}/pcre2-${PV}.tar.bz2"
14 14
15SRC_URI[sha256sum] = "a9ef39278113542968c7c73a31cfcb81aca1faa64690f400b907e8ab6b4a665c" 15GITHUB_BASE_URI = "https://github.com/PhilipHazel/pcre2/releases"
16UPSTREAM_CHECK_REGEX = "releases/tag/pcre2-(?P<pver>\d+(\.\d+)+)$"
17
18SRC_URI[sha256sum] = "e2a53984ff0b07dfdb5ae4486bbb9b21cca8e7df2434096cc9bf1b728c350bcb"
16 19
17CVE_PRODUCT = "pcre2" 20CVE_PRODUCT = "pcre2"
18 21
@@ -23,7 +26,7 @@ DEPENDS += "bzip2 zlib"
23 26
24BINCONFIG = "${bindir}/pcre2-config" 27BINCONFIG = "${bindir}/pcre2-config"
25 28
26inherit autotools binconfig-disabled 29inherit autotools binconfig-disabled github-releases
27 30
28EXTRA_OECONF = "\ 31EXTRA_OECONF = "\
29 --enable-newline-is-lf \ 32 --enable-newline-is-lf \
@@ -33,20 +36,20 @@ EXTRA_OECONF = "\
33 --enable-pcre2-32 \ 36 --enable-pcre2-32 \
34" 37"
35CFLAGS += "-D_REENTRANT" 38CFLAGS += "-D_REENTRANT"
36CXXFLAGS_append_powerpc = " -lstdc++" 39CXXFLAGS:append:powerpc = " -lstdc++"
37 40
38PACKAGES =+ "libpcre2-16 libpcre2-32 pcre2grep pcre2grep-doc pcre2test pcre2test-doc" 41PACKAGES =+ "libpcre2-16 libpcre2-32 pcre2grep pcre2grep-doc pcre2test pcre2test-doc"
39 42
40SUMMARY_pcre2grep = "grep utility that uses perl 5 compatible regexes" 43SUMMARY:pcre2grep = "grep utility that uses perl 5 compatible regexes"
41SUMMARY_pcre2grep-doc = "grep utility that uses perl 5 compatible regexes - docs" 44SUMMARY:pcre2grep-doc = "grep utility that uses perl 5 compatible regexes - docs"
42SUMMARY_pcre2test = "program for testing Perl-comatible regular expressions" 45SUMMARY:pcre2test = "program for testing Perl-comatible regular expressions"
43SUMMARY_pcre2test-doc = "program for testing Perl-comatible regular expressions - docs" 46SUMMARY:pcre2test-doc = "program for testing Perl-comatible regular expressions - docs"
44 47
45FILES_libpcre2-16 = "${libdir}/libpcre2-16.so.*" 48FILES:libpcre2-16 = "${libdir}/libpcre2-16.so.*"
46FILES_libpcre2-32 = "${libdir}/libpcre2-32.so.*" 49FILES:libpcre2-32 = "${libdir}/libpcre2-32.so.*"
47FILES_pcre2grep = "${bindir}/pcre2grep" 50FILES:pcre2grep = "${bindir}/pcre2grep"
48FILES_pcre2grep-doc = "${mandir}/man1/pcre2grep.1" 51FILES:pcre2grep-doc = "${mandir}/man1/pcre2grep.1"
49FILES_pcre2test = "${bindir}/pcre2test" 52FILES:pcre2test = "${bindir}/pcre2test"
50FILES_pcre2test-doc = "${mandir}/man1/pcre2test.1" 53FILES:pcre2test-doc = "${mandir}/man1/pcre2test.1"
51 54
52BBCLASSEXTEND = "native nativesdk" 55BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-support/libpcre/libpcre_8.44.bb b/meta/recipes-support/libpcre/libpcre_8.45.bb
index cd80dc7345..46fedbae48 100644
--- a/meta/recipes-support/libpcre/libpcre_8.44.bb
+++ b/meta/recipes-support/libpcre/libpcre_8.45.bb
@@ -6,14 +6,13 @@ SUMMARY = "Perl Compatible Regular Expressions"
6HOMEPAGE = "http://www.pcre.org" 6HOMEPAGE = "http://www.pcre.org"
7SECTION = "devel" 7SECTION = "devel"
8LICENSE = "BSD-3-Clause" 8LICENSE = "BSD-3-Clause"
9LIC_FILES_CHKSUM = "file://LICENCE;md5=3bb381a66a5385b246d4877922e7511e" 9LIC_FILES_CHKSUM = "file://LICENCE;md5=b5d5d1a69a24ea2718263f1ff85a1c58"
10SRC_URI = "https://ftp.pcre.org/pub/pcre/pcre-${PV}.tar.bz2 \ 10SRC_URI = "${SOURCEFORGE_MIRROR}/pcre/pcre-${PV}.tar.bz2 \
11 file://run-ptest \ 11 file://run-ptest \
12 file://Makefile \ 12 file://Makefile \
13 " 13 "
14 14
15SRC_URI[md5sum] = "cf7326204cc46c755b5b2608033d9d24" 15SRC_URI[sha256sum] = "4dae6fdcd2bb0bb6c37b5f97c33c2be954da743985369cddac3546e3218bffb8"
16SRC_URI[sha256sum] = "19108658b23b3ec5058edc9f66ac545ea19f9537234be1ec62b714c84399366d"
17 16
18CVE_PRODUCT = "pcre" 17CVE_PRODUCT = "pcre"
19 18
@@ -39,19 +38,19 @@ EXTRA_OECONF = "--enable-utf"
39 38
40PACKAGES =+ "libpcrecpp libpcreposix pcregrep pcregrep-doc pcretest pcretest-doc" 39PACKAGES =+ "libpcrecpp libpcreposix pcregrep pcregrep-doc pcretest pcretest-doc"
41 40
42SUMMARY_libpcrecpp = "${SUMMARY} - C++ wrapper functions" 41SUMMARY:libpcrecpp = "${SUMMARY} - C++ wrapper functions"
43SUMMARY_libpcreposix = "${SUMMARY} - C wrapper functions based on the POSIX regex API" 42SUMMARY:libpcreposix = "${SUMMARY} - C wrapper functions based on the POSIX regex API"
44SUMMARY_pcregrep = "grep utility that uses perl 5 compatible regexes" 43SUMMARY:pcregrep = "grep utility that uses perl 5 compatible regexes"
45SUMMARY_pcregrep-doc = "grep utility that uses perl 5 compatible regexes - docs" 44SUMMARY:pcregrep-doc = "grep utility that uses perl 5 compatible regexes - docs"
46SUMMARY_pcretest = "program for testing Perl-comatible regular expressions" 45SUMMARY:pcretest = "program for testing Perl-comatible regular expressions"
47SUMMARY_pcretest-doc = "program for testing Perl-comatible regular expressions - docs" 46SUMMARY:pcretest-doc = "program for testing Perl-comatible regular expressions - docs"
48 47
49FILES_libpcrecpp = "${libdir}/libpcrecpp.so.*" 48FILES:libpcrecpp = "${libdir}/libpcrecpp.so.*"
50FILES_libpcreposix = "${libdir}/libpcreposix.so.*" 49FILES:libpcreposix = "${libdir}/libpcreposix.so.*"
51FILES_pcregrep = "${bindir}/pcregrep" 50FILES:pcregrep = "${bindir}/pcregrep"
52FILES_pcregrep-doc = "${mandir}/man1/pcregrep.1" 51FILES:pcregrep-doc = "${mandir}/man1/pcregrep.1"
53FILES_pcretest = "${bindir}/pcretest" 52FILES:pcretest = "${bindir}/pcretest"
54FILES_pcretest-doc = "${mandir}/man1/pcretest.1" 53FILES:pcretest-doc = "${mandir}/man1/pcretest.1"
55 54
56BBCLASSEXTEND = "native nativesdk" 55BBCLASSEXTEND = "native nativesdk"
57 56
@@ -71,4 +70,4 @@ do_install_ptest() {
71 sed -i -e 's:do3=yes:do3=no:g' ${D}${PTEST_PATH}/RunTest 70 sed -i -e 's:do3=yes:do3=no:g' ${D}${PTEST_PATH}/RunTest
72} 71}
73 72
74RDEPENDS_${PN}-ptest += "make" 73RDEPENDS:${PN}-ptest += "make"
diff --git a/meta/recipes-support/libproxy/libproxy/determinism.patch b/meta/recipes-support/libproxy/libproxy/determinism.patch
deleted file mode 100644
index 09770f68f0..0000000000
--- a/meta/recipes-support/libproxy/libproxy/determinism.patch
+++ /dev/null
@@ -1,26 +0,0 @@
1[PATCH] cmake/modules/config_sysconfig: Allow configuration of sysconfig module
2
3Checking whether the host system has /etc/sysconfig is not deterministic
4when cross compiling. Allow this to be disabled by adding a configure
5option for it. OpenEmbedded can set this and have deterministic build
6output independent of the host OS.
7
8Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
9Upstream-Status: Submitted [https://github.com/libproxy/libproxy/pull/160]
10
11Index: libproxy-0.4.17/libproxy/cmake/modules/config_sysconfig.cmk
12===================================================================
13--- libproxy-0.4.17.orig/libproxy/cmake/modules/config_sysconfig.cmk
14+++ libproxy-0.4.17/libproxy/cmake/modules/config_sysconfig.cmk
15@@ -1,5 +1,8 @@
16 if (NOT WIN32 AND NOT APPLE)
17- if (EXISTS "/etc/sysconfig" AND IS_DIRECTORY "/etc/sysconfig")
18- set(SYSCONFIG_FOUND 1)
19+ option(WITH_SYSCONFIG "Build sysconfig module for /etc/sysconfig" ON)
20+ if(WITH_SYSCONFIG)
21+ if (EXISTS "/etc/sysconfig" AND IS_DIRECTORY "/etc/sysconfig")
22+ set(SYSCONFIG_FOUND 1)
23+ endif()
24 endif()
25 endif()
26\ No newline at end of file
diff --git a/meta/recipes-support/libproxy/libproxy_0.4.17.bb b/meta/recipes-support/libproxy/libproxy_0.4.17.bb
deleted file mode 100644
index 7d61861824..0000000000
--- a/meta/recipes-support/libproxy/libproxy_0.4.17.bb
+++ /dev/null
@@ -1,38 +0,0 @@
1SUMMARY = "Library providing automatic proxy configuration management"
2HOMEPAGE = "https://github.com/libproxy/libproxy"
3BUGTRACKER = "https://github.com/libproxy/libproxy/issues"
4SECTION = "libs"
5LICENSE = "LGPLv2.1+"
6LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c \
7 file://utils/proxy.c;beginline=1;endline=18;md5=55152a1006d7dafbef32baf9c30a99c0"
8
9DEPENDS = "glib-2.0"
10
11SRC_URI = "https://github.com/${BPN}/${BPN}/releases/download/${PV}/${BP}.tar.xz \
12 file://determinism.patch"
13SRC_URI[sha256sum] = "bc89f842f654ee1985a31c0ba56dc7e2ce8044a0264ddca84e650f46cd7f8b05"
14
15UPSTREAM_CHECK_URI = "https://github.com/libproxy/libproxy/releases"
16UPSTREAM_CHECK_REGEX = "libproxy-(?P<pver>.*)\.tar"
17
18inherit cmake pkgconfig
19
20PACKAGECONFIG ?= "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'gnome', '', d)} gnome3"
21PACKAGECONFIG[gnome] = "-DWITH_GNOME=yes,-DWITH_GNOME=no,gconf"
22PACKAGECONFIG[gnome3] = "-DWITH_GNOME3=yes,-DWITH_GNOME3=no"
23
24EXTRA_OECMAKE += " \
25 -DWITH_KDE=no \
26 -DWITH_MOZJS=no \
27 -DWITH_NM=no \
28 -DWITH_PERL=no \
29 -DWITH_PYTHON2=no \
30 -DWITH_PYTHON3=no \
31 -DWITH_WEBKIT=no \
32 -DWITH_SYSCONFIG=no \
33 -DLIB_INSTALL_DIR=${libdir} \
34 -DLIBEXEC_INSTALL_DIR=${libexecdir} \
35"
36SECURITY_PIE_CFLAGS_remove = "-fPIE -pie"
37
38FILES_${PN} += "${libdir}/${BPN}/${PV}/modules"
diff --git a/meta/recipes-support/libproxy/libproxy_0.5.4.bb b/meta/recipes-support/libproxy/libproxy_0.5.4.bb
new file mode 100644
index 0000000000..b4f4c6d254
--- /dev/null
+++ b/meta/recipes-support/libproxy/libproxy_0.5.4.bb
@@ -0,0 +1,28 @@
1SUMMARY = "Library providing automatic proxy configuration management"
2DESCRIPTION = "libproxy provides interfaces to get the proxy that will be \
3used to access network resources. It uses various plugins to get proxy \
4configuration via different mechanisms (e.g. environment variables or \
5desktop settings)."
6HOMEPAGE = "https://github.com/libproxy/libproxy"
7BUGTRACKER = "https://github.com/libproxy/libproxy/issues"
8SECTION = "libs"
9LICENSE = "LGPL-2.1-or-later"
10LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c \
11 file://src/libproxy/proxy.c;beginline=1;endline=20;md5=bb9a177ef1c995311070f34c5638a402 \
12 "
13
14DEPENDS = "glib-2.0"
15
16SRC_URI = "git://github.com/libproxy/libproxy;protocol=https;branch=main"
17SRCREV = "dff9a603d823dcc740ec966cd27960daa6b891b1"
18S = "${WORKDIR}/git"
19
20inherit meson pkgconfig gobject-introspection vala gi-docgen
21GIDOCGEN_MESON_OPTION = 'docs'
22
23PACKAGECONFIG ?= ""
24PACKAGECONFIG[curl] = "-Dcurl=true,-Dcurl=false,curl"
25PACKAGECONFIG[config-gnome] = "-Dconfig-gnome=true,-Dconfig-gnome=false,gsettings-desktop-schemas"
26PACKAGECONFIG[pacrunner-duktape] = "-Dpacrunner-duktape=true,-Dpacrunner-duktape=false,duktape"
27
28FILES:${PN} += "${libdir}/${BPN}/${PV}/modules"
diff --git a/meta/recipes-support/libpsl/libpsl_0.21.1.bb b/meta/recipes-support/libpsl/libpsl_0.21.1.bb
deleted file mode 100644
index 0a48db65c3..0000000000
--- a/meta/recipes-support/libpsl/libpsl_0.21.1.bb
+++ /dev/null
@@ -1,20 +0,0 @@
1SUMMARY = "Public Suffix List library"
2
3LICENSE = "MIT"
4LIC_FILES_CHKSUM = "file://LICENSE;md5=5437030d9e4fbe7267ced058ddb8a7f5 \
5 file://COPYING;md5=f41d10997a12da5ee3c24ceeb0148d18"
6
7SRC_URI = "https://github.com/rockdaboot/${BPN}/releases/download/${PV}/${BP}.tar.gz \
8 "
9SRC_URI[sha256sum] = "ac6ce1e1fbd4d0254c4ddb9d37f1fa99dec83619c1253328155206b896210d4c"
10
11UPSTREAM_CHECK_URI = "https://github.com/rockdaboot/libpsl/releases"
12
13DEPENDS = "libidn2"
14
15inherit autotools gettext gtk-doc manpages pkgconfig lib_package
16
17PACKAGECONFIG ??= ""
18PACKAGECONFIG[manpages] = "--enable-man,--disable-man,libxslt-native"
19
20BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-support/libpsl/libpsl_0.21.5.bb b/meta/recipes-support/libpsl/libpsl_0.21.5.bb
new file mode 100644
index 0000000000..b9341a986e
--- /dev/null
+++ b/meta/recipes-support/libpsl/libpsl_0.21.5.bb
@@ -0,0 +1,26 @@
1SUMMARY = "Public Suffix List library"
2DESCRIPTION = "The libpsl package provides a library for accessing and \
3resolving information from the Public Suffix List (PSL). The PSL is a set of \
4domain names beyond the standard suffixes, such as .com."
5
6HOMEPAGE = "https://rockdaboot.github.io/libpsl/"
7BUGTRACKER = "https://github.com/rockdaboot/libpsl/issues"
8
9LICENSE = "MIT"
10LIC_FILES_CHKSUM = "file://LICENSE;md5=9f9e317096db2a598fc44237c5b8a4f7 \
11 file://COPYING;md5=9f9e317096db2a598fc44237c5b8a4f7 \
12 "
13
14SRC_URI = "${GITHUB_BASE_URI}/download/${PV}/${BP}.tar.gz \
15 "
16SRC_URI[sha256sum] = "1dcc9ceae8b128f3c0b3f654decd0e1e891afc6ff81098f227ef260449dae208"
17
18GITHUB_BASE_URI = "https://github.com/rockdaboot/libpsl/releases"
19
20inherit autotools gettext gtk-doc manpages pkgconfig lib_package github-releases
21
22PACKAGECONFIG ?= "icu"
23PACKAGECONFIG[manpages] = "--enable-man,--disable-man,libxslt-native"
24PACKAGECONFIG[icu] = "--enable-runtime=libicu --enable-builtin=libicu,,icu"
25PACKAGECONFIG[idn2] = "--enable-runtime=libidn2 --enable-builtin=libidn2,,libidn2 libunistring"
26BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-support/libseccomp/files/run-ptest b/meta/recipes-support/libseccomp/files/run-ptest
new file mode 100644
index 0000000000..63c79f09c4
--- /dev/null
+++ b/meta/recipes-support/libseccomp/files/run-ptest
@@ -0,0 +1,7 @@
1#!/bin/sh
2
3cd tests
4sed -i 's/SUCCESS/PASS/g; s/FAILURE/FAIL/g; s/SKIPPED/SKIP/g' regression
5sed -i 's/"Test %s result: %s\\n" "$1" "$2"/"%s: %s\\n" "$2" "$1"/g' regression
6sed -i 's/"Test %s result: %s %s\\n" "$1" "$2" "$3"/"%s: %s %s\\n" "$2" "$1" "$3"/g' regression
7./regression -a
diff --git a/meta/recipes-support/libseccomp/libseccomp_2.5.5.bb b/meta/recipes-support/libseccomp/libseccomp_2.5.5.bb
new file mode 100644
index 0000000000..478e5f4289
--- /dev/null
+++ b/meta/recipes-support/libseccomp/libseccomp_2.5.5.bb
@@ -0,0 +1,62 @@
1SUMMARY = "interface to seccomp filtering mechanism"
2DESCRIPTION = "The libseccomp library provides an easy to use, platform independent, interface to the Linux Kernel's syscall filtering mechanism: seccomp."
3HOMEPAGE = "https://github.com/seccomp/libseccomp"
4SECTION = "security"
5LICENSE = "LGPL-2.1-only"
6LIC_FILES_CHKSUM = "file://LICENSE;md5=7c13b3376cea0ce68d2d2da0a1b3a72c"
7
8DEPENDS += "gperf-native"
9
10SRCREV = "f0b04ab0b4fc0bc2cde6da1f407b4a487fe6d78f"
11
12SRC_URI = "git://github.com/seccomp/libseccomp.git;branch=release-2.5;protocol=https \
13 file://run-ptest \
14 "
15
16S = "${WORKDIR}/git"
17
18inherit autotools-brokensep pkgconfig ptest features_check
19
20inherit_defer ${@bb.utils.contains('PACKAGECONFIG', 'python', 'python3native', '', d)}
21
22REQUIRED_DISTRO_FEATURES = "seccomp"
23
24PACKAGECONFIG ??= ""
25PACKAGECONFIG[python] = "--enable-python, --disable-python, python3-cython-native"
26
27DISABLE_STATIC = ""
28
29do_compile_ptest() {
30 oe_runmake -C tests check-build
31}
32
33do_install_ptest() {
34 install -d ${D}${PTEST_PATH}/tests
35 install -d ${D}${PTEST_PATH}/tools
36 for file in $(find tests/* -executable -type f); do
37 install -m 744 ${S}/${file} ${D}/${PTEST_PATH}/tests
38 done
39 for file in $(find tests/*.tests -type f); do
40 install -m 744 ${S}/${file} ${D}/${PTEST_PATH}/tests
41 done
42 for file in $(find tests/*.pfc -type f); do
43 install -m 644 ${S}/${file} ${D}/${PTEST_PATH}/tests
44 done
45 install -m 644 ${S}/tests/valgrind_test.supp ${D}/${PTEST_PATH}/tests
46 for file in $(find tools/* -executable -type f); do
47 install -m 744 ${S}/${file} ${D}/${PTEST_PATH}/tools
48 done
49 # Overwrite libtool wrappers with real executables
50 for file in $(find tools/.libs/* -executable -type f); do
51 install -m 744 ${S}/${file} ${D}/${PTEST_PATH}/tools
52 done
53 # fix python shebang
54 sed -i -e 's@cmd /usr/bin/env python @cmd /usr/bin/env python3 @' ${D}/${PTEST_PATH}/tests/regression
55 sed -i -e 's@^#!/usr/bin/env python$@#!/usr/bin/env python3@' ${D}/${PTEST_PATH}/tests/*.py
56}
57
58FILES:${PN} = "${bindir} ${libdir}/${BPN}.so* ${PYTHON_SITEPACKAGES_DIR}/"
59FILES:${PN}-dbg += "${libdir}/${PN}/tests/.debug/* ${libdir}/${PN}/tools/.debug"
60
61RDEPENDS:${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'python', 'python3', '', d)}"
62RDEPENDS:${PN}-ptest = "coreutils bash"
diff --git a/meta/recipes-support/libsoup/libsoup-2.4/0001-Fix-build-with-libxml2-2.12.0-and-clang-17.patch b/meta/recipes-support/libsoup/libsoup-2.4/0001-Fix-build-with-libxml2-2.12.0-and-clang-17.patch
new file mode 100644
index 0000000000..d867e5bc17
--- /dev/null
+++ b/meta/recipes-support/libsoup/libsoup-2.4/0001-Fix-build-with-libxml2-2.12.0-and-clang-17.patch
@@ -0,0 +1,44 @@
1From ced3c5d8cad0177b297666343f1561799dfefb0d Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Wed, 22 Nov 2023 18:49:10 -0800
4Subject: [PATCH] Fix build with libxml2-2.12.0 and clang-17
5
6Fixes build errors about missing function prototypes with clang-17
7
8Fixes
9| ../libsoup-2.74.3/libsoup/soup-xmlrpc-old.c:512:8: error: call to undeclared function 'xmlParseMemory'; ISO C99 and later do not support implicit function declarations
10
11Upstream-Status: Submitted [https://gitlab.gnome.org/GNOME/libsoup/-/merge_requests/385]
12Signed-off-by: Khem Raj <raj.khem@gmail.com>
13---
14 libsoup/soup-xmlrpc-old.c | 1 +
15 libsoup/soup-xmlrpc.c | 1 +
16 2 files changed, 2 insertions(+)
17
18diff --git a/libsoup/soup-xmlrpc-old.c b/libsoup/soup-xmlrpc-old.c
19index c57086b6..527e3b23 100644
20--- a/libsoup/soup-xmlrpc-old.c
21+++ b/libsoup/soup-xmlrpc-old.c
22@@ -11,6 +11,7 @@
23
24 #include <string.h>
25
26+#include <libxml/parser.h>
27 #include <libxml/tree.h>
28
29 #include "soup-xmlrpc-old.h"
30diff --git a/libsoup/soup-xmlrpc.c b/libsoup/soup-xmlrpc.c
31index 42dcda9c..e991cbf0 100644
32--- a/libsoup/soup-xmlrpc.c
33+++ b/libsoup/soup-xmlrpc.c
34@@ -17,6 +17,7 @@
35
36 #include <string.h>
37 #include <errno.h>
38+#include <libxml/parser.h>
39 #include <libxml/tree.h>
40 #include "soup-xmlrpc.h"
41 #include "soup.h"
42--
432.43.0
44
diff --git a/meta/recipes-support/libsoup/libsoup-2.4_2.72.0.bb b/meta/recipes-support/libsoup/libsoup-2.4_2.74.3.bb
index d0bc019616..ee20530b64 100644
--- a/meta/recipes-support/libsoup/libsoup-2.4_2.72.0.bb
+++ b/meta/recipes-support/libsoup/libsoup-2.4_2.74.3.bb
@@ -1,16 +1,19 @@
1SUMMARY = "An HTTP library implementation in C" 1SUMMARY = "An HTTP library implementation in C"
2DESCRIPTION = "libsoup is an HTTP client/server library for GNOME. It uses GObjects \
3and the glib main loop, to integrate well with GNOME applications."
2HOMEPAGE = "https://wiki.gnome.org/Projects/libsoup" 4HOMEPAGE = "https://wiki.gnome.org/Projects/libsoup"
3BUGTRACKER = "https://bugzilla.gnome.org/" 5BUGTRACKER = "https://bugzilla.gnome.org/"
4SECTION = "x11/gnome/libs" 6SECTION = "x11/gnome/libs"
5LICENSE = "LGPLv2" 7LICENSE = "LGPL-2.0-only"
6LIC_FILES_CHKSUM = "file://COPYING;md5=5f30f0716dfdd0d91eb439ebec522ec2" 8LIC_FILES_CHKSUM = "file://COPYING;md5=5f30f0716dfdd0d91eb439ebec522ec2"
7 9
8DEPENDS = "glib-2.0 glib-2.0-native libxml2 sqlite3 intltool-native libpsl" 10DEPENDS = "glib-2.0 glib-2.0-native libxml2 sqlite3 libpsl"
9 11
10SHRT_VER = "${@d.getVar('PV').split('.')[0]}.${@d.getVar('PV').split('.')[1]}" 12SHRT_VER = "${@d.getVar('PV').split('.')[0]}.${@d.getVar('PV').split('.')[1]}"
11 13
12SRC_URI = "${GNOME_MIRROR}/libsoup/${SHRT_VER}/libsoup-${PV}.tar.xz" 14SRC_URI = "${GNOME_MIRROR}/libsoup/${SHRT_VER}/libsoup-${PV}.tar.xz \
13SRC_URI[sha256sum] = "170c3f8446b0f65f8e4b93603349172b1085fb8917c181d10962f02bb85f5387" 15 file://0001-Fix-build-with-libxml2-2.12.0-and-clang-17.patch"
16SRC_URI[sha256sum] = "e4b77c41cfc4c8c5a035fcdc320c7bc6cfb75ef7c5a034153df1413fa1d92f13"
14 17
15CVE_PRODUCT = "libsoup" 18CVE_PRODUCT = "libsoup"
16 19
@@ -18,15 +21,29 @@ S = "${WORKDIR}/libsoup-${PV}"
18 21
19inherit meson gettext pkgconfig upstream-version-is-even gobject-introspection gtk-doc 22inherit meson gettext pkgconfig upstream-version-is-even gobject-introspection gtk-doc
20 23
24UPSTREAM_CHECK_REGEX = "libsoup-(?P<pver>2(\.(?!99)\d+)+)\.tar"
25
21GIR_MESON_ENABLE_FLAG = 'enabled' 26GIR_MESON_ENABLE_FLAG = 'enabled'
22GIR_MESON_DISABLE_FLAG = 'disabled' 27GIR_MESON_DISABLE_FLAG = 'disabled'
23 28
24# libsoup-gnome is entirely deprecated and just stubs in 2.42 onwards. Disable by default.
25PACKAGECONFIG ??= "" 29PACKAGECONFIG ??= ""
30PACKAGECONFIG[brotli] = "-Dbrotli=enabled,-Dbrotli=disabled,brotli"
31# libsoup-gnome is entirely deprecated and just stubs in 2.42 onwards
26PACKAGECONFIG[gnome] = "-Dgnome=true,-Dgnome=false" 32PACKAGECONFIG[gnome] = "-Dgnome=true,-Dgnome=false"
27PACKAGECONFIG[gssapi] = "-Dgssapi=enabled,-Dgssapi=disabled,krb5" 33PACKAGECONFIG[gssapi] = "-Dgssapi=enabled,-Dgssapi=disabled,krb5"
34PACKAGECONFIG[ntlm] = "-Dntlm=enabled,-Dntlm=disabled"
35PACKAGECONFIG[sysprof] = "-Dsysprof=enabled,-Dsysprof=disabled,sysprof"
36
37# Tell libsoup where the target ntlm_auth is installed
38do_write_config:append:class-target() {
39 cat >${WORKDIR}/soup.cross <<EOF
40[binaries]
41ntlm_auth = '${bindir}/ntlm_auth'
42EOF
43}
44EXTRA_OEMESON:append:class-target = " --cross-file ${WORKDIR}/soup.cross"
28 45
29EXTRA_OEMESON_append = " -Dvapi=disabled -Dtls_check=false" 46EXTRA_OEMESON += "-Dvapi=disabled -Dtls_check=false"
30 47
31GTKDOC_MESON_OPTION = "gtk_doc" 48GTKDOC_MESON_OPTION = "gtk_doc"
32 49
@@ -34,9 +51,9 @@ GTKDOC_MESON_OPTION = "gtk_doc"
34# and will therefore become subject to renaming by debian.bbclass. Prevent 51# and will therefore become subject to renaming by debian.bbclass. Prevent
35# renaming in order to keep the package name consistent regardless of whether 52# renaming in order to keep the package name consistent regardless of whether
36# gnome support is enabled or disabled. 53# gnome support is enabled or disabled.
37DEBIAN_NOAUTONAME_${PN} = "1" 54DEBIAN_NOAUTONAME:${PN} = "1"
38 55
39# glib-networking is needed for SSL, proxies, etc. 56# glib-networking is needed for SSL, proxies, etc.
40RRECOMMENDS_${PN} = "glib-networking" 57RRECOMMENDS:${PN} = "glib-networking"
41 58
42BBCLASSEXTEND = "native nativesdk" 59BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-support/libsoup/libsoup_3.4.4.bb b/meta/recipes-support/libsoup/libsoup_3.4.4.bb
new file mode 100644
index 0000000000..6f7cac4cf8
--- /dev/null
+++ b/meta/recipes-support/libsoup/libsoup_3.4.4.bb
@@ -0,0 +1,59 @@
1SUMMARY = "An HTTP library implementation in C"
2DESCRIPTION = "libsoup is an HTTP client/server library for GNOME. It uses GObjects \
3and the glib main loop, to integrate well with GNOME applications."
4HOMEPAGE = "https://wiki.gnome.org/Projects/libsoup"
5BUGTRACKER = "https://bugzilla.gnome.org/"
6SECTION = "x11/gnome/libs"
7LICENSE = "LGPL-2.0-only"
8LIC_FILES_CHKSUM = "file://COPYING;md5=5f30f0716dfdd0d91eb439ebec522ec2"
9
10DEPENDS = "glib-2.0 glib-2.0-native libxml2 sqlite3 libpsl nghttp2"
11
12SHRT_VER = "${@d.getVar('PV').split('.')[0]}.${@d.getVar('PV').split('.')[1]}"
13
14SRC_URI = "${GNOME_MIRROR}/libsoup/${SHRT_VER}/libsoup-${PV}.tar.xz"
15SRC_URI[sha256sum] = "291c67725f36ed90ea43efff25064b69c5a2d1981488477c05c481a3b4b0c5aa"
16
17PROVIDES = "libsoup-3.0"
18CVE_PRODUCT = "libsoup"
19
20S = "${WORKDIR}/libsoup-${PV}"
21
22inherit meson gettext pkgconfig upstream-version-is-even gobject-introspection gi-docgen vala
23
24GIR_MESON_ENABLE_FLAG = 'enabled'
25GIR_MESON_DISABLE_FLAG = 'disabled'
26
27PACKAGECONFIG ??= ""
28PACKAGECONFIG[brotli] = "-Dbrotli=enabled,-Dbrotli=disabled,brotli"
29PACKAGECONFIG[gssapi] = "-Dgssapi=enabled,-Dgssapi=disabled,krb5"
30PACKAGECONFIG[ntlm] = "-Dntlm=enabled,-Dntlm=disabled"
31PACKAGECONFIG[sysprof] = "-Dsysprof=enabled,-Dsysprof=disabled,sysprof"
32
33# Tell libsoup where the target ntlm_auth is installed
34do_write_config:append:class-target() {
35 cat >${WORKDIR}/soup.cross <<EOF
36[binaries]
37ntlm_auth = '${bindir}/ntlm_auth'
38EOF
39}
40EXTRA_OEMESON:append:class-target = " --cross-file ${WORKDIR}/soup.cross"
41
42EXTRA_OEMESON += "-Dtls_check=false"
43# Disable the test suites
44EXTRA_OEMESON += "-Dtests=false -Dautobahn=disabled -Dpkcs11_tests=disabled"
45
46GIDOCGEN_MESON_OPTION = 'docs'
47GIDOCGEN_MESON_ENABLE_FLAG = 'enabled'
48GIDOCGEN_MESON_DISABLE_FLAG = 'disabled'
49
50# When built without gnome support, libsoup will contain only one shared lib
51# and will therefore become subject to renaming by debian.bbclass. Prevent
52# renaming in order to keep the package name consistent regardless of whether
53# gnome support is enabled or disabled.
54DEBIAN_NOAUTONAME:${PN} = "1"
55
56# glib-networking is needed for SSL, proxies, etc.
57RRECOMMENDS:${PN} = "glib-networking"
58
59BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-support/libssh2/files/0001-Don-t-let-host-enviroment-to-decide-if-a-test-is-bui.patch b/meta/recipes-support/libssh2/files/0001-Don-t-let-host-enviroment-to-decide-if-a-test-is-bui.patch
deleted file mode 100644
index 5ff9bf8462..0000000000
--- a/meta/recipes-support/libssh2/files/0001-Don-t-let-host-enviroment-to-decide-if-a-test-is-bui.patch
+++ /dev/null
@@ -1,46 +0,0 @@
1From f9e3e2ee7b18ba5bb8efe083171f3e701eb0a663 Mon Sep 17 00:00:00 2001
2From: Your Name <you@example.com>
3Date: Mon, 28 Dec 2020 02:08:03 +0000
4Subject: [PATCH] Don't let host enviroment to decide if a test is build
5
6test ssh2.sh need sshd, for cross compile, we need it on target, so
7don't use SSHD on host to decide weither to build a test
8
9Upstream-Status: Inappropriate[oe specific]
10
11Signed-off-by: Changqing Li <changqing.li@windriver.com>
12---
13 tests/Makefile.am | 6 +-----
14 1 file changed, 1 insertion(+), 5 deletions(-)
15
16diff --git a/tests/Makefile.am b/tests/Makefile.am
17index dc0922f..6cbc35d 100644
18--- a/tests/Makefile.am
19+++ b/tests/Makefile.am
20@@ -1,16 +1,12 @@
21 AM_CPPFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/include -I$(top_builddir)/src
22 LDADD = ../src/libssh2.la
23
24-if SSHD
25 noinst_PROGRAMS = ssh2
26 ssh2_SOURCES = ssh2.c
27-endif
28
29 ctests = simple$(EXEEXT)
30 TESTS = $(ctests) mansyntax.sh
31-if SSHD
32 TESTS += ssh2.sh
33-endif
34 check_PROGRAMS = $(ctests)
35
36 TESTS_ENVIRONMENT = SSHD=$(SSHD) EXEEXT=$(EXEEXT)
37@@ -38,4 +34,4 @@ if OPENSSL
38 # EXTRA_DIST += test_public_key_auth_succeeds_with_correct_encrypted_ed25519_key.c
39 # EXTRA_DIST += test_public_key_auth_succeeds_with_correct_ed25519_key_from_mem.c
40 EXTRA_DIST += test_public_key_auth_succeeds_with_correct_rsa_openssh_key.c
41-endif
42\ No newline at end of file
43+endif
44--
452.20.1
46
diff --git a/meta/recipes-support/libssh2/files/0001-configure-Conditionally-undefine-backend-m4-macro.patch b/meta/recipes-support/libssh2/files/0001-configure-Conditionally-undefine-backend-m4-macro.patch
deleted file mode 100644
index 1128c7ea0c..0000000000
--- a/meta/recipes-support/libssh2/files/0001-configure-Conditionally-undefine-backend-m4-macro.patch
+++ /dev/null
@@ -1,30 +0,0 @@
1From efe7101786193eaddb749c0583af6b54aec6f289 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Tue, 2 Feb 2021 18:45:16 -0800
4Subject: [PATCH] configure: Conditionally undefine backend m4 macro
5
6Unlike the M4 builtin, this macro fails if macro is not defined
7therefore recover the behavior of the builtin.
8
9Upstream-Status: Pending
10Signed-off-by: Khem Raj <raj.khem@gmail.com>
11---
12 configure.ac | 2 +-
13 1 file changed, 1 insertion(+), 1 deletion(-)
14
15diff --git a/configure.ac b/configure.ac
16index fe5054a..758f8c2 100644
17--- a/configure.ac
18+++ b/configure.ac
19@@ -127,7 +127,7 @@ fi
20 m4_set_foreach([crypto_backends], [backend],
21 [AM_CONDITIONAL(m4_toupper(backend), test "$found_crypto" = "backend")]
22 )
23-m4_undefine([backend])
24+m4_ifdef([backend], [m4_undefine([backend])])
25
26
27 # libz
28--
292.30.0
30
diff --git a/meta/recipes-support/libssh2/files/CVE-2019-17498.patch b/meta/recipes-support/libssh2/files/CVE-2019-17498.patch
deleted file mode 100644
index 001080072b..0000000000
--- a/meta/recipes-support/libssh2/files/CVE-2019-17498.patch
+++ /dev/null
@@ -1,131 +0,0 @@
1From dedcbd106f8e52d5586b0205bc7677e4c9868f9c Mon Sep 17 00:00:00 2001
2From: Will Cosgrove <will@panic.com>
3Date: Fri, 30 Aug 2019 09:57:38 -0700
4Subject: [PATCH] packet.c: improve message parsing (#402)
5
6* packet.c: improve parsing of packets
7
8file: packet.c
9
10notes:
11Use _libssh2_get_string API in SSH_MSG_DEBUG/SSH_MSG_DISCONNECT. Additional uint32 bounds check in SSH_MSG_GLOBAL_REQUEST.
12
13Upstream-Status: Backport
14CVE: CVE-2019-17498
15Signed-off-by: Li Zhou <li.zhou@windriver.com>
16---
17 src/packet.c | 68 ++++++++++++++++++++++------------------------------
18 1 file changed, 29 insertions(+), 39 deletions(-)
19
20diff --git a/src/packet.c b/src/packet.c
21index 38ab629..2e01bfc 100644
22--- a/src/packet.c
23+++ b/src/packet.c
24@@ -419,8 +419,8 @@ _libssh2_packet_add(LIBSSH2_SESSION * session, unsigned char *data,
25 size_t datalen, int macstate)
26 {
27 int rc = 0;
28- char *message = NULL;
29- char *language = NULL;
30+ unsigned char *message = NULL;
31+ unsigned char *language = NULL;
32 size_t message_len = 0;
33 size_t language_len = 0;
34 LIBSSH2_CHANNEL *channelp = NULL;
35@@ -472,33 +472,23 @@ _libssh2_packet_add(LIBSSH2_SESSION * session, unsigned char *data,
36
37 case SSH_MSG_DISCONNECT:
38 if(datalen >= 5) {
39- size_t reason = _libssh2_ntohu32(data + 1);
40+ uint32_t reason = 0;
41+ struct string_buf buf;
42+ buf.data = (unsigned char *)data;
43+ buf.dataptr = buf.data;
44+ buf.len = datalen;
45+ buf.dataptr++; /* advance past type */
46
47- if(datalen >= 9) {
48- message_len = _libssh2_ntohu32(data + 5);
49+ _libssh2_get_u32(&buf, &reason);
50+ _libssh2_get_string(&buf, &message, &message_len);
51+ _libssh2_get_string(&buf, &language, &language_len);
52
53- if(message_len < datalen-13) {
54- /* 9 = packet_type(1) + reason(4) + message_len(4) */
55- message = (char *) data + 9;
56-
57- language_len =
58- _libssh2_ntohu32(data + 9 + message_len);
59- language = (char *) data + 9 + message_len + 4;
60-
61- if(language_len > (datalen-13-message_len)) {
62- /* bad input, clear info */
63- language = message = NULL;
64- language_len = message_len = 0;
65- }
66- }
67- else
68- /* bad size, clear it */
69- message_len = 0;
70- }
71 if(session->ssh_msg_disconnect) {
72- LIBSSH2_DISCONNECT(session, reason, message,
73- message_len, language, language_len);
74+ LIBSSH2_DISCONNECT(session, reason, (const char *)message,
75+ message_len, (const char *)language,
76+ language_len);
77 }
78+
79 _libssh2_debug(session, LIBSSH2_TRACE_TRANS,
80 "Disconnect(%d): %s(%s)", reason,
81 message, language);
82@@ -539,24 +529,24 @@ _libssh2_packet_add(LIBSSH2_SESSION * session, unsigned char *data,
83 int always_display = data[1];
84
85 if(datalen >= 6) {
86- message_len = _libssh2_ntohu32(data + 2);
87-
88- if(message_len <= (datalen - 10)) {
89- /* 6 = packet_type(1) + display(1) + message_len(4) */
90- message = (char *) data + 6;
91- language_len = _libssh2_ntohu32(data + 6 +
92- message_len);
93-
94- if(language_len <= (datalen - 10 - message_len))
95- language = (char *) data + 10 + message_len;
96- }
97+ struct string_buf buf;
98+ buf.data = (unsigned char *)data;
99+ buf.dataptr = buf.data;
100+ buf.len = datalen;
101+ buf.dataptr += 2; /* advance past type & always display */
102+
103+ _libssh2_get_string(&buf, &message, &message_len);
104+ _libssh2_get_string(&buf, &language, &language_len);
105 }
106
107 if(session->ssh_msg_debug) {
108- LIBSSH2_DEBUG(session, always_display, message,
109- message_len, language, language_len);
110+ LIBSSH2_DEBUG(session, always_display,
111+ (const char *)message,
112+ message_len, (const char *)language,
113+ language_len);
114 }
115 }
116+
117 /*
118 * _libssh2_debug will actually truncate this for us so
119 * that it's not an inordinate about of data
120@@ -579,7 +569,7 @@ _libssh2_packet_add(LIBSSH2_SESSION * session, unsigned char *data,
121 uint32_t len = 0;
122 unsigned char want_reply = 0;
123 len = _libssh2_ntohu32(data + 1);
124- if(datalen >= (6 + len)) {
125+ if((len <= (UINT_MAX - 6)) && (datalen >= (6 + len))) {
126 want_reply = data[5 + len];
127 _libssh2_debug(session,
128 LIBSSH2_TRACE_CONN,
129--
1302.17.1
131
diff --git a/meta/recipes-support/libssh2/libssh2/CVE-2023-48795.patch b/meta/recipes-support/libssh2/libssh2/CVE-2023-48795.patch
new file mode 100644
index 0000000000..ab0f419ac5
--- /dev/null
+++ b/meta/recipes-support/libssh2/libssh2/CVE-2023-48795.patch
@@ -0,0 +1,466 @@
1From d4634630432594b139b3af6b9f254b890c0f275d Mon Sep 17 00:00:00 2001
2From: Michael Buckley <michael@buckleyisms.com>
3Date: Thu, 30 Nov 2023 15:08:02 -0800
4Subject: [PATCH] src: add 'strict KEX' to fix CVE-2023-48795 "Terrapin Attack"
5
6Refs:
7https://terrapin-attack.com/
8https://seclists.org/oss-sec/2023/q4/292
9https://osv.dev/list?ecosystem=&q=CVE-2023-48795
10https://github.com/advisories/GHSA-45x7-px36-x8w8
11https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-48795
12
13Fixes #1290
14Closes #1291
15
16CVE: CVE-2023-48795
17Upstream-Status: Backport
18Signed-off-by: Ross Burton <ross.burton@arm.com>
19---
20 src/kex.c | 63 +++++++++++++++++++++++------------
21 src/libssh2_priv.h | 18 +++++++---
22 src/packet.c | 83 +++++++++++++++++++++++++++++++++++++++++++---
23 src/packet.h | 2 +-
24 src/session.c | 3 ++
25 src/transport.c | 12 ++++++-
26 6 files changed, 149 insertions(+), 32 deletions(-)
27
28diff --git a/src/kex.c b/src/kex.c
29index d4034a0a..b4b748ca 100644
30--- a/src/kex.c
31+++ b/src/kex.c
32@@ -3037,6 +3037,13 @@ kex_method_extension_negotiation = {
33 0,
34 };
35
36+static const LIBSSH2_KEX_METHOD
37+kex_method_strict_client_extension = {
38+ "kex-strict-c-v00@openssh.com",
39+ NULL,
40+ 0,
41+};
42+
43 static const LIBSSH2_KEX_METHOD *libssh2_kex_methods[] = {
44 #if LIBSSH2_ED25519
45 &kex_method_ssh_curve25519_sha256,
46@@ -3055,6 +3062,7 @@ static const LIBSSH2_KEX_METHOD *libssh2_kex_methods[] = {
47 &kex_method_diffie_helman_group1_sha1,
48 &kex_method_diffie_helman_group_exchange_sha1,
49 &kex_method_extension_negotiation,
50+ &kex_method_strict_client_extension,
51 NULL
52 };
53
54@@ -3307,13 +3315,13 @@ static int kexinit(LIBSSH2_SESSION * session)
55 return 0;
56 }
57
58-/* kex_agree_instr
59+/* _libssh2_kex_agree_instr
60 * Kex specific variant of strstr()
61 * Needle must be preceded by BOL or ',', and followed by ',' or EOL
62 */
63-static unsigned char *
64-kex_agree_instr(unsigned char *haystack, size_t haystack_len,
65- const unsigned char *needle, size_t needle_len)
66+unsigned char *
67+_libssh2_kex_agree_instr(unsigned char *haystack, size_t haystack_len,
68+ const unsigned char *needle, size_t needle_len)
69 {
70 unsigned char *s;
71 unsigned char *end_haystack;
72@@ -3398,7 +3406,7 @@ static int kex_agree_hostkey(LIBSSH2_SESSION * session,
73 while(s && *s) {
74 unsigned char *p = (unsigned char *) strchr((char *) s, ',');
75 size_t method_len = (p ? (size_t)(p - s) : strlen((char *) s));
76- if(kex_agree_instr(hostkey, hostkey_len, s, method_len)) {
77+ if(_libssh2_kex_agree_instr(hostkey, hostkey_len, s, method_len)) {
78 const LIBSSH2_HOSTKEY_METHOD *method =
79 (const LIBSSH2_HOSTKEY_METHOD *)
80 kex_get_method_by_name((char *) s, method_len,
81@@ -3432,9 +3440,9 @@ static int kex_agree_hostkey(LIBSSH2_SESSION * session,
82 }
83
84 while(hostkeyp && (*hostkeyp) && (*hostkeyp)->name) {
85- s = kex_agree_instr(hostkey, hostkey_len,
86- (unsigned char *) (*hostkeyp)->name,
87- strlen((*hostkeyp)->name));
88+ s = _libssh2_kex_agree_instr(hostkey, hostkey_len,
89+ (unsigned char *) (*hostkeyp)->name,
90+ strlen((*hostkeyp)->name));
91 if(s) {
92 /* So far so good, but does it suit our purposes? (Encrypting vs
93 Signing) */
94@@ -3468,6 +3476,12 @@ static int kex_agree_kex_hostkey(LIBSSH2_SESSION * session, unsigned char *kex,
95 {
96 const LIBSSH2_KEX_METHOD **kexp = libssh2_kex_methods;
97 unsigned char *s;
98+ const unsigned char *strict =
99+ (unsigned char *)"kex-strict-s-v00@openssh.com";
100+
101+ if(_libssh2_kex_agree_instr(kex, kex_len, strict, 28)) {
102+ session->kex_strict = 1;
103+ }
104
105 if(session->kex_prefs) {
106 s = (unsigned char *) session->kex_prefs;
107@@ -3475,7 +3489,7 @@ static int kex_agree_kex_hostkey(LIBSSH2_SESSION * session, unsigned char *kex,
108 while(s && *s) {
109 unsigned char *q, *p = (unsigned char *) strchr((char *) s, ',');
110 size_t method_len = (p ? (size_t)(p - s) : strlen((char *) s));
111- q = kex_agree_instr(kex, kex_len, s, method_len);
112+ q = _libssh2_kex_agree_instr(kex, kex_len, s, method_len);
113 if(q) {
114 const LIBSSH2_KEX_METHOD *method = (const LIBSSH2_KEX_METHOD *)
115 kex_get_method_by_name((char *) s, method_len,
116@@ -3509,9 +3523,9 @@ static int kex_agree_kex_hostkey(LIBSSH2_SESSION * session, unsigned char *kex,
117 }
118
119 while(*kexp && (*kexp)->name) {
120- s = kex_agree_instr(kex, kex_len,
121- (unsigned char *) (*kexp)->name,
122- strlen((*kexp)->name));
123+ s = _libssh2_kex_agree_instr(kex, kex_len,
124+ (unsigned char *) (*kexp)->name,
125+ strlen((*kexp)->name));
126 if(s) {
127 /* We've agreed on a key exchange method,
128 * Can we agree on a hostkey that works with this kex?
129@@ -3555,7 +3569,7 @@ static int kex_agree_crypt(LIBSSH2_SESSION * session,
130 unsigned char *p = (unsigned char *) strchr((char *) s, ',');
131 size_t method_len = (p ? (size_t)(p - s) : strlen((char *) s));
132
133- if(kex_agree_instr(crypt, crypt_len, s, method_len)) {
134+ if(_libssh2_kex_agree_instr(crypt, crypt_len, s, method_len)) {
135 const LIBSSH2_CRYPT_METHOD *method =
136 (const LIBSSH2_CRYPT_METHOD *)
137 kex_get_method_by_name((char *) s, method_len,
138@@ -3577,9 +3591,9 @@ static int kex_agree_crypt(LIBSSH2_SESSION * session,
139 }
140
141 while(*cryptp && (*cryptp)->name) {
142- s = kex_agree_instr(crypt, crypt_len,
143- (unsigned char *) (*cryptp)->name,
144- strlen((*cryptp)->name));
145+ s = _libssh2_kex_agree_instr(crypt, crypt_len,
146+ (unsigned char *) (*cryptp)->name,
147+ strlen((*cryptp)->name));
148 if(s) {
149 endpoint->crypt = *cryptp;
150 return 0;
151@@ -3619,7 +3633,7 @@ static int kex_agree_mac(LIBSSH2_SESSION * session,
152 unsigned char *p = (unsigned char *) strchr((char *) s, ',');
153 size_t method_len = (p ? (size_t)(p - s) : strlen((char *) s));
154
155- if(kex_agree_instr(mac, mac_len, s, method_len)) {
156+ if(_libssh2_kex_agree_instr(mac, mac_len, s, method_len)) {
157 const LIBSSH2_MAC_METHOD *method = (const LIBSSH2_MAC_METHOD *)
158 kex_get_method_by_name((char *) s, method_len,
159 (const LIBSSH2_COMMON_METHOD **)
160@@ -3640,8 +3654,9 @@ static int kex_agree_mac(LIBSSH2_SESSION * session,
161 }
162
163 while(*macp && (*macp)->name) {
164- s = kex_agree_instr(mac, mac_len, (unsigned char *) (*macp)->name,
165- strlen((*macp)->name));
166+ s = _libssh2_kex_agree_instr(mac, mac_len,
167+ (unsigned char *) (*macp)->name,
168+ strlen((*macp)->name));
169 if(s) {
170 endpoint->mac = *macp;
171 return 0;
172@@ -3672,7 +3687,7 @@ static int kex_agree_comp(LIBSSH2_SESSION *session,
173 unsigned char *p = (unsigned char *) strchr((char *) s, ',');
174 size_t method_len = (p ? (size_t)(p - s) : strlen((char *) s));
175
176- if(kex_agree_instr(comp, comp_len, s, method_len)) {
177+ if(_libssh2_kex_agree_instr(comp, comp_len, s, method_len)) {
178 const LIBSSH2_COMP_METHOD *method =
179 (const LIBSSH2_COMP_METHOD *)
180 kex_get_method_by_name((char *) s, method_len,
181@@ -3694,8 +3709,9 @@ static int kex_agree_comp(LIBSSH2_SESSION *session,
182 }
183
184 while(*compp && (*compp)->name) {
185- s = kex_agree_instr(comp, comp_len, (unsigned char *) (*compp)->name,
186- strlen((*compp)->name));
187+ s = _libssh2_kex_agree_instr(comp, comp_len,
188+ (unsigned char *) (*compp)->name,
189+ strlen((*compp)->name));
190 if(s) {
191 endpoint->comp = *compp;
192 return 0;
193@@ -3876,6 +3892,7 @@ _libssh2_kex_exchange(LIBSSH2_SESSION * session, int reexchange,
194 session->local.kexinit = key_state->oldlocal;
195 session->local.kexinit_len = key_state->oldlocal_len;
196 key_state->state = libssh2_NB_state_idle;
197+ session->state &= ~LIBSSH2_STATE_INITIAL_KEX;
198 session->state &= ~LIBSSH2_STATE_KEX_ACTIVE;
199 session->state &= ~LIBSSH2_STATE_EXCHANGING_KEYS;
200 return -1;
201@@ -3901,6 +3918,7 @@ _libssh2_kex_exchange(LIBSSH2_SESSION * session, int reexchange,
202 session->local.kexinit = key_state->oldlocal;
203 session->local.kexinit_len = key_state->oldlocal_len;
204 key_state->state = libssh2_NB_state_idle;
205+ session->state &= ~LIBSSH2_STATE_INITIAL_KEX;
206 session->state &= ~LIBSSH2_STATE_KEX_ACTIVE;
207 session->state &= ~LIBSSH2_STATE_EXCHANGING_KEYS;
208 return -1;
209@@ -3949,6 +3967,7 @@ _libssh2_kex_exchange(LIBSSH2_SESSION * session, int reexchange,
210 session->remote.kexinit = NULL;
211 }
212
213+ session->state &= ~LIBSSH2_STATE_INITIAL_KEX;
214 session->state &= ~LIBSSH2_STATE_KEX_ACTIVE;
215 session->state &= ~LIBSSH2_STATE_EXCHANGING_KEYS;
216
217diff --git a/src/libssh2_priv.h b/src/libssh2_priv.h
218index 82c3afe2..ee1d8b5c 100644
219--- a/src/libssh2_priv.h
220+++ b/src/libssh2_priv.h
221@@ -699,6 +699,9 @@ struct _LIBSSH2_SESSION
222 /* key signing algorithm preferences -- NULL yields server order */
223 char *sign_algo_prefs;
224
225+ /* Whether to use the OpenSSH Strict KEX extension */
226+ int kex_strict;
227+
228 /* (remote as source of data -- packet_read ) */
229 libssh2_endpoint_data remote;
230
231@@ -870,6 +873,7 @@ struct _LIBSSH2_SESSION
232 int fullpacket_macstate;
233 size_t fullpacket_payload_len;
234 int fullpacket_packet_type;
235+ uint32_t fullpacket_required_type;
236
237 /* State variables used in libssh2_sftp_init() */
238 libssh2_nonblocking_states sftpInit_state;
239@@ -910,10 +914,11 @@ struct _LIBSSH2_SESSION
240 };
241
242 /* session.state bits */
243-#define LIBSSH2_STATE_EXCHANGING_KEYS 0x00000001
244-#define LIBSSH2_STATE_NEWKEYS 0x00000002
245-#define LIBSSH2_STATE_AUTHENTICATED 0x00000004
246-#define LIBSSH2_STATE_KEX_ACTIVE 0x00000008
247+#define LIBSSH2_STATE_INITIAL_KEX 0x00000001
248+#define LIBSSH2_STATE_EXCHANGING_KEYS 0x00000002
249+#define LIBSSH2_STATE_NEWKEYS 0x00000004
250+#define LIBSSH2_STATE_AUTHENTICATED 0x00000008
251+#define LIBSSH2_STATE_KEX_ACTIVE 0x00000010
252
253 /* session.flag helpers */
254 #ifdef MSG_NOSIGNAL
255@@ -1144,6 +1149,11 @@ ssize_t _libssh2_send(libssh2_socket_t socket, const void *buffer,
256 int _libssh2_kex_exchange(LIBSSH2_SESSION * session, int reexchange,
257 key_exchange_state_t * state);
258
259+unsigned char *_libssh2_kex_agree_instr(unsigned char *haystack,
260+ size_t haystack_len,
261+ const unsigned char *needle,
262+ size_t needle_len);
263+
264 /* Let crypt.c/hostkey.c expose their method structs */
265 const LIBSSH2_CRYPT_METHOD **libssh2_crypt_methods(void);
266 const LIBSSH2_HOSTKEY_METHOD **libssh2_hostkey_methods(void);
267diff --git a/src/packet.c b/src/packet.c
268index b5b41981..35d4d39e 100644
269--- a/src/packet.c
270+++ b/src/packet.c
271@@ -605,14 +605,13 @@ authagent_exit:
272 * layer when it has received a packet.
273 *
274 * The input pointer 'data' is pointing to allocated data that this function
275- * is asked to deal with so on failure OR success, it must be freed fine.
276- * The only exception is when the return code is LIBSSH2_ERROR_EAGAIN.
277+ * will be freed unless return the code is LIBSSH2_ERROR_EAGAIN.
278 *
279 * This function will always be called with 'datalen' greater than zero.
280 */
281 int
282 _libssh2_packet_add(LIBSSH2_SESSION * session, unsigned char *data,
283- size_t datalen, int macstate)
284+ size_t datalen, int macstate, uint32_t seq)
285 {
286 int rc = 0;
287 unsigned char *message = NULL;
288@@ -657,6 +656,70 @@ _libssh2_packet_add(LIBSSH2_SESSION * session, unsigned char *data,
289 break;
290 }
291
292+ if(session->state & LIBSSH2_STATE_INITIAL_KEX) {
293+ if(msg == SSH_MSG_KEXINIT) {
294+ if(!session->kex_strict) {
295+ if(datalen < 17) {
296+ LIBSSH2_FREE(session, data);
297+ session->packAdd_state = libssh2_NB_state_idle;
298+ return _libssh2_error(session,
299+ LIBSSH2_ERROR_BUFFER_TOO_SMALL,
300+ "Data too short extracting kex");
301+ }
302+ else {
303+ const unsigned char *strict =
304+ (unsigned char *)"kex-strict-s-v00@openssh.com";
305+ struct string_buf buf;
306+ unsigned char *algs = NULL;
307+ size_t algs_len = 0;
308+
309+ buf.data = (unsigned char *)data;
310+ buf.dataptr = buf.data;
311+ buf.len = datalen;
312+ buf.dataptr += 17; /* advance past type and cookie */
313+
314+ if(_libssh2_get_string(&buf, &algs, &algs_len)) {
315+ LIBSSH2_FREE(session, data);
316+ session->packAdd_state = libssh2_NB_state_idle;
317+ return _libssh2_error(session,
318+ LIBSSH2_ERROR_BUFFER_TOO_SMALL,
319+ "Algs too short");
320+ }
321+
322+ if(algs_len == 0 ||
323+ _libssh2_kex_agree_instr(algs, algs_len, strict, 28)) {
324+ session->kex_strict = 1;
325+ }
326+ }
327+ }
328+
329+ if(session->kex_strict && seq) {
330+ LIBSSH2_FREE(session, data);
331+ session->socket_state = LIBSSH2_SOCKET_DISCONNECTED;
332+ session->packAdd_state = libssh2_NB_state_idle;
333+ libssh2_session_disconnect(session, "strict KEX violation: "
334+ "KEXINIT was not the first packet");
335+
336+ return _libssh2_error(session, LIBSSH2_ERROR_SOCKET_DISCONNECT,
337+ "strict KEX violation: "
338+ "KEXINIT was not the first packet");
339+ }
340+ }
341+
342+ if(session->kex_strict && session->fullpacket_required_type &&
343+ session->fullpacket_required_type != msg) {
344+ LIBSSH2_FREE(session, data);
345+ session->socket_state = LIBSSH2_SOCKET_DISCONNECTED;
346+ session->packAdd_state = libssh2_NB_state_idle;
347+ libssh2_session_disconnect(session, "strict KEX violation: "
348+ "unexpected packet type");
349+
350+ return _libssh2_error(session, LIBSSH2_ERROR_SOCKET_DISCONNECT,
351+ "strict KEX violation: "
352+ "unexpected packet type");
353+ }
354+ }
355+
356 if(session->packAdd_state == libssh2_NB_state_allocated) {
357 /* A couple exceptions to the packet adding rule: */
358 switch(msg) {
359@@ -1341,6 +1404,15 @@ _libssh2_packet_ask(LIBSSH2_SESSION * session, unsigned char packet_type,
360
361 return 0;
362 }
363+ else if(session->kex_strict &&
364+ (session->state & LIBSSH2_STATE_INITIAL_KEX)) {
365+ libssh2_session_disconnect(session, "strict KEX violation: "
366+ "unexpected packet type");
367+
368+ return _libssh2_error(session, LIBSSH2_ERROR_SOCKET_DISCONNECT,
369+ "strict KEX violation: "
370+ "unexpected packet type");
371+ }
372 packet = _libssh2_list_next(&packet->node);
373 }
374 return -1;
375@@ -1402,7 +1474,10 @@ _libssh2_packet_require(LIBSSH2_SESSION * session, unsigned char packet_type,
376 }
377
378 while(session->socket_state == LIBSSH2_SOCKET_CONNECTED) {
379- int ret = _libssh2_transport_read(session);
380+ int ret;
381+ session->fullpacket_required_type = packet_type;
382+ ret = _libssh2_transport_read(session);
383+ session->fullpacket_required_type = 0;
384 if(ret == LIBSSH2_ERROR_EAGAIN)
385 return ret;
386 else if(ret < 0) {
387diff --git a/src/packet.h b/src/packet.h
388index 79018bcf..6ea100a5 100644
389--- a/src/packet.h
390+++ b/src/packet.h
391@@ -71,6 +71,6 @@ int _libssh2_packet_burn(LIBSSH2_SESSION * session,
392 int _libssh2_packet_write(LIBSSH2_SESSION * session, unsigned char *data,
393 unsigned long data_len);
394 int _libssh2_packet_add(LIBSSH2_SESSION * session, unsigned char *data,
395- size_t datalen, int macstate);
396+ size_t datalen, int macstate, uint32_t seq);
397
398 #endif /* __LIBSSH2_PACKET_H */
399diff --git a/src/session.c b/src/session.c
400index a4d602ba..f4bafb57 100644
401--- a/src/session.c
402+++ b/src/session.c
403@@ -464,6 +464,8 @@ libssh2_session_init_ex(LIBSSH2_ALLOC_FUNC((*my_alloc)),
404 session->abstract = abstract;
405 session->api_timeout = 0; /* timeout-free API by default */
406 session->api_block_mode = 1; /* blocking API by default */
407+ session->state = LIBSSH2_STATE_INITIAL_KEX;
408+ session->fullpacket_required_type = 0;
409 session->packet_read_timeout = LIBSSH2_DEFAULT_READ_TIMEOUT;
410 session->flag.quote_paths = 1; /* default behavior is to quote paths
411 for the scp subsystem */
412@@ -1186,6 +1188,7 @@ libssh2_session_disconnect_ex(LIBSSH2_SESSION *session, int reason,
413 const char *desc, const char *lang)
414 {
415 int rc;
416+ session->state &= ~LIBSSH2_STATE_INITIAL_KEX;
417 session->state &= ~LIBSSH2_STATE_EXCHANGING_KEYS;
418 BLOCK_ADJUST(rc, session,
419 session_disconnect(session, reason, desc, lang));
420diff --git a/src/transport.c b/src/transport.c
421index 6d902d33..3b30ff84 100644
422--- a/src/transport.c
423+++ b/src/transport.c
424@@ -187,6 +187,7 @@ fullpacket(LIBSSH2_SESSION * session, int encrypted /* 1 or 0 */ )
425 struct transportpacket *p = &session->packet;
426 int rc;
427 int compressed;
428+ uint32_t seq = session->remote.seqno;
429
430 if(session->fullpacket_state == libssh2_NB_state_idle) {
431 session->fullpacket_macstate = LIBSSH2_MAC_CONFIRMED;
432@@ -318,7 +319,7 @@ fullpacket(LIBSSH2_SESSION * session, int encrypted /* 1 or 0 */ )
433 if(session->fullpacket_state == libssh2_NB_state_created) {
434 rc = _libssh2_packet_add(session, p->payload,
435 session->fullpacket_payload_len,
436- session->fullpacket_macstate);
437+ session->fullpacket_macstate, seq);
438 if(rc == LIBSSH2_ERROR_EAGAIN)
439 return rc;
440 if(rc) {
441@@ -329,6 +330,11 @@ fullpacket(LIBSSH2_SESSION * session, int encrypted /* 1 or 0 */ )
442
443 session->fullpacket_state = libssh2_NB_state_idle;
444
445+ if(session->kex_strict &&
446+ session->fullpacket_packet_type == SSH_MSG_NEWKEYS) {
447+ session->remote.seqno = 0;
448+ }
449+
450 return session->fullpacket_packet_type;
451 }
452
453@@ -1091,6 +1097,10 @@ int _libssh2_transport_send(LIBSSH2_SESSION *session,
454
455 session->local.seqno++;
456
457+ if(session->kex_strict && data[0] == SSH_MSG_NEWKEYS) {
458+ session->local.seqno = 0;
459+ }
460+
461 ret = LIBSSH2_SEND(session, p->outbuf, total_length,
462 LIBSSH2_SOCKET_SEND_FLAGS(session));
463 if(ret < 0)
464--
4652.34.1
466
diff --git a/meta/recipes-support/libssh2/files/run-ptest b/meta/recipes-support/libssh2/libssh2/run-ptest
index 5fd7ec65f6..0f5526e316 100644
--- a/meta/recipes-support/libssh2/files/run-ptest
+++ b/meta/recipes-support/libssh2/libssh2/run-ptest
@@ -2,7 +2,7 @@
2 2
3ptestdir=$(dirname "$(readlink -f "$0")") 3ptestdir=$(dirname "$(readlink -f "$0")")
4cd tests 4cd tests
5for test in simple ssh2.sh mansyntax.sh 5for test in mansyntax.sh test_simple test_sshd.test
6do 6do
7 ./../test-driver --test-name $test --log-file ../$test.log --trs-file ../$test.trs --color-tests no --enable-hard-errors yes --expect-failure no -- ./$test 7 ./../test-driver --test-name $test --log-file ../$test.log --trs-file ../$test.trs --color-tests no --enable-hard-errors yes --expect-failure no -- ./$test
8done 8done
diff --git a/meta/recipes-support/libssh2/libssh2_1.9.0.bb b/meta/recipes-support/libssh2/libssh2_1.11.0.bb
index 0b8ccbd217..5100e6f7f9 100644
--- a/meta/recipes-support/libssh2/libssh2_1.9.0.bb
+++ b/meta/recipes-support/libssh2/libssh2_1.11.0.bb
@@ -5,25 +5,23 @@ SECTION = "libs"
5DEPENDS = "zlib" 5DEPENDS = "zlib"
6 6
7LICENSE = "BSD-3-Clause" 7LICENSE = "BSD-3-Clause"
8LIC_FILES_CHKSUM = "file://COPYING;md5=c5cf34fc0acb44b082ef50ef5e4354ca" 8LIC_FILES_CHKSUM = "file://COPYING;md5=24a33237426720395ebb1dd1349ca225"
9 9
10SRC_URI = "http://www.libssh2.org/download/${BP}.tar.gz \ 10SRC_URI = "http://www.libssh2.org/download/${BP}.tar.gz \
11 file://CVE-2019-17498.patch \
12 file://0001-configure-Conditionally-undefine-backend-m4-macro.patch \
13 file://run-ptest \ 11 file://run-ptest \
14" 12 file://CVE-2023-48795.patch \
13 "
15 14
16SRC_URI_append_ptest = " file://0001-Don-t-let-host-enviroment-to-decide-if-a-test-is-bui.patch" 15SRC_URI[sha256sum] = "3736161e41e2693324deb38c26cfdc3efe6209d634ba4258db1cecff6a5ad461"
17
18SRC_URI[md5sum] = "1beefafe8963982adc84b408b2959927"
19SRC_URI[sha256sum] = "d5fb8bd563305fd1074dda90bd053fb2d29fc4bce048d182f96eaa466dfadafd"
20 16
21inherit autotools pkgconfig ptest 17inherit autotools pkgconfig ptest
22 18
23EXTRA_OECONF += "\ 19EXTRA_OECONF += "\
24 --with-libz \ 20 --with-libz \
25 --with-libz-prefix=${STAGING_LIBDIR} \ 21 --with-libz-prefix=${STAGING_LIBDIR} \
22 --disable-rpath \
26 " 23 "
24DISABLE_STATIC = ""
27 25
28# only one of openssl and gcrypt could be set 26# only one of openssl and gcrypt could be set
29PACKAGECONFIG ??= "openssl" 27PACKAGECONFIG ??= "openssl"
@@ -33,8 +31,8 @@ PACKAGECONFIG[gcrypt] = "--with-crypto=libgcrypt --with-libgcrypt-prefix=${STAGI
33BBCLASSEXTEND = "native nativesdk" 31BBCLASSEXTEND = "native nativesdk"
34 32
35# required for ptest on documentation 33# required for ptest on documentation
36RDEPENDS_${PN}-ptest = "man-db openssh" 34RDEPENDS:${PN}-ptest = "bash man-db openssh util-linux-col"
37RDEPENDS_${PN}-ptest_append_libc-glibc = " locale-base-en-us" 35RDEPENDS:${PN}-ptest:append:libc-glibc = " locale-base-en-us"
38 36
39do_compile_ptest() { 37do_compile_ptest() {
40 sed -i "/\$(MAKE) \$(AM_MAKEFLAGS) check-TESTS/d" tests/Makefile 38 sed -i "/\$(MAKE) \$(AM_MAKEFLAGS) check-TESTS/d" tests/Makefile
@@ -45,9 +43,11 @@ do_install_ptest() {
45 install -d ${D}${PTEST_PATH}/tests 43 install -d ${D}${PTEST_PATH}/tests
46 install -m 0755 ${S}/test-driver ${D}${PTEST_PATH}/ 44 install -m 0755 ${S}/test-driver ${D}${PTEST_PATH}/
47 cp -rf ${B}/tests/.libs/* ${D}${PTEST_PATH}/tests/ 45 cp -rf ${B}/tests/.libs/* ${D}${PTEST_PATH}/tests/
46 cp -rf ${B}/tests/test_simple ${D}${PTEST_PATH}/tests/
48 cp -rf ${S}/tests/mansyntax.sh ${D}${PTEST_PATH}/tests/ 47 cp -rf ${S}/tests/mansyntax.sh ${D}${PTEST_PATH}/tests/
49 cp -rf ${S}/tests/ssh2.sh ${D}${PTEST_PATH}/tests/ 48 cp -rf ${S}/tests/key* ${D}${PTEST_PATH}/tests/
50 cp -rf ${S}/tests/etc ${D}${PTEST_PATH}/tests/ 49 cp -rf ${S}/tests/openssh_server/ ${D}${PTEST_PATH}/tests/
50 cp -rf ${S}/tests/*.test ${D}${PTEST_PATH}/tests/
51 mkdir -p ${D}${PTEST_PATH}/docs 51 mkdir -p ${D}${PTEST_PATH}/docs
52 cp -r ${S}/docs/* ${D}${PTEST_PATH}/docs/ 52 cp -r ${S}/docs/* ${D}${PTEST_PATH}/docs/
53} 53}
diff --git a/meta/recipes-support/libunistring/libunistring/0001-Unset-need_charset_alias-when-building-for-musl.patch b/meta/recipes-support/libunistring/libunistring/0001-Unset-need_charset_alias-when-building-for-musl.patch
deleted file mode 100644
index 2aeacb868e..0000000000
--- a/meta/recipes-support/libunistring/libunistring/0001-Unset-need_charset_alias-when-building-for-musl.patch
+++ /dev/null
@@ -1,30 +0,0 @@
1From b9565dc2fe0c4f7daaec91b7e83bc7313dee2f4a Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Mon, 13 Apr 2015 17:02:13 -0700
4Subject: [PATCH] Unset need_charset_alias when building for musl
5
6localcharset uses ac_cv_gnu_library_2_1 from glibc21.m4
7which actually shoudl be fixed in gnulib and then all downstream
8projects will get it eventually. For now we apply the fix to
9coreutils
10
11Upstream-Status: Pending
12
13Signed-off-by: Khem Raj <raj.khem@gmail.com>
14---
15 lib/gnulib.mk | 2 +-
16 1 file changed, 1 insertion(+), 1 deletion(-)
17
18Index: libunistring-0.9.4/lib/Makefile.gnulib
19===================================================================
20--- libunistring-0.9.4.orig/lib/Makefile.gnulib
21+++ libunistring-0.9.4/lib/Makefile.gnulib
22@@ -380,7 +380,7 @@ install-exec-localcharset: all-local
23 case '$(host_os)' in \
24 darwin[56]*) \
25 need_charset_alias=true ;; \
26- darwin* | cygwin* | mingw* | pw32* | cegcc*) \
27+ darwin* | cygwin* | mingw* | pw32* | cegcc* | linux-musl*) \
28 need_charset_alias=false ;; \
29 *) \
30 need_charset_alias=true ;; \
diff --git a/meta/recipes-support/libunistring/libunistring/iconv-m4-remove-the-test-to-convert-euc-jp.patch b/meta/recipes-support/libunistring/libunistring/iconv-m4-remove-the-test-to-convert-euc-jp.patch
deleted file mode 100644
index 9e8ce2270d..0000000000
--- a/meta/recipes-support/libunistring/libunistring/iconv-m4-remove-the-test-to-convert-euc-jp.patch
+++ /dev/null
@@ -1,56 +0,0 @@
1From 30562065ba9e4c238e76100b5f9f0c5add0e635b Mon Sep 17 00:00:00 2001
2From: Jackie Huang <jackie.huang@windriver.com>
3Date: Tue, 5 Dec 2017 09:30:36 +0200
4Subject: [PATCH] remove the test to convert euc-jp
5
6Remove the test "Test against HP-UX 11.11 bug:
7No converter from EUC-JP to UTF-8 is provided"
8since we don't support HP-UX and if the euc-jp is not
9installed on the host, libunistring will be built without
10iconv support and will cause guild-native configure fail.
11
12Upstream-Status: Inappropriate [OE specific]
13
14Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
15---
16---
17 gnulib-m4/iconv.m4 | 23 -----------------------
18 1 file changed, 23 deletions(-)
19
20diff --git a/gnulib-m4/iconv.m4 b/gnulib-m4/iconv.m4
21index b33ecd0..73b6aa1 100644
22--- a/gnulib-m4/iconv.m4
23+++ b/gnulib-m4/iconv.m4
24@@ -165,29 +165,6 @@ AC_DEFUN([AM_ICONV_LINK],
25 }
26 }
27 #endif
28- /* Test against HP-UX 11.11 bug: No converter from EUC-JP to UTF-8 is
29- provided. */
30- {
31- /* Try standardized names. */
32- iconv_t cd1 = iconv_open ("UTF-8", "EUC-JP");
33- /* Try IRIX, OSF/1 names. */
34- iconv_t cd2 = iconv_open ("UTF-8", "eucJP");
35- /* Try AIX names. */
36- iconv_t cd3 = iconv_open ("UTF-8", "IBM-eucJP");
37- /* Try HP-UX names. */
38- iconv_t cd4 = iconv_open ("utf8", "eucJP");
39- if (cd1 == (iconv_t)(-1) && cd2 == (iconv_t)(-1)
40- && cd3 == (iconv_t)(-1) && cd4 == (iconv_t)(-1))
41- result |= 16;
42- if (cd1 != (iconv_t)(-1))
43- iconv_close (cd1);
44- if (cd2 != (iconv_t)(-1))
45- iconv_close (cd2);
46- if (cd3 != (iconv_t)(-1))
47- iconv_close (cd3);
48- if (cd4 != (iconv_t)(-1))
49- iconv_close (cd4);
50- }
51 return result;
52 ]])],
53 [am_cv_func_iconv_works=yes], ,
54--
552.4.0
56
diff --git a/meta/recipes-support/libunistring/libunistring_0.9.10.bb b/meta/recipes-support/libunistring/libunistring_1.2.bb
index 97fac4ecfa..3018dbfdfb 100644
--- a/meta/recipes-support/libunistring/libunistring_0.9.10.bb
+++ b/meta/recipes-support/libunistring/libunistring_1.2.bb
@@ -13,18 +13,15 @@ DESCRIPTION = "Text files are nowadays usually encoded in Unicode, and may\
13 13
14HOMEPAGE = "http://www.gnu.org/software/libunistring/" 14HOMEPAGE = "http://www.gnu.org/software/libunistring/"
15SECTION = "devel" 15SECTION = "devel"
16LICENSE = "LGPLv3+ | GPLv2" 16LICENSE = "LGPL-3.0-or-later | GPL-2.0-or-later"
17LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=6a6a8e020838b23406c81b19c1d46df6 \ 17LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=6a6a8e020838b23406c81b19c1d46df6 \
18 file://README;beginline=45;endline=65;md5=08287d16ba8d839faed8d2dc14d7d6a5 \ 18 file://README;beginline=45;endline=65;md5=3a896a943b4da2c551e6be1af27eff8d \
19 file://doc/libunistring.texi;md5=287fa6075f78a3c85c1a52b0a92547cd \ 19 file://doc/libunistring.texi;md5=36b7d20daef7fbcc032333ae2429aa94 \
20 " 20 "
21DEPENDS = "gperf-native"
21 22
22SRC_URI = "${GNU_MIRROR}/libunistring/libunistring-${PV}.tar.gz \ 23SRC_URI = "${GNU_MIRROR}/libunistring/libunistring-${PV}.tar.gz"
23 file://iconv-m4-remove-the-test-to-convert-euc-jp.patch \ 24SRC_URI[sha256sum] = "fd6d5662fa706487c48349a758b57bc149ce94ec6c30624ec9fdc473ceabbc8e"
24 file://0001-Unset-need_charset_alias-when-building-for-musl.patch \
25"
26SRC_URI[md5sum] = "0d3274e9838396b12200f8b54ddaf43b"
27SRC_URI[sha256sum] = "a82e5b333339a88ea4608e4635479a1cfb2e01aafb925e1290b65710d43f610b"
28 25
29inherit autotools texinfo 26inherit autotools texinfo
30BBCLASSEXTEND = "native nativesdk" 27BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-support/libunwind/libunwind.inc b/meta/recipes-support/libunwind/libunwind.inc
deleted file mode 100644
index 76a1bf6246..0000000000
--- a/meta/recipes-support/libunwind/libunwind.inc
+++ /dev/null
@@ -1,22 +0,0 @@
1SUMMARY = "Library for obtaining the call-chain of a program"
2DESCRIPTION = "a portable and efficient C programming interface (API) to determine the call-chain of a program"
3HOMEPAGE = "http://www.nongnu.org/libunwind"
4LICENSE = "MIT"
5LIC_FILES_CHKSUM = "file://COPYING;md5=2d80c8ed4062b8339b715f90fa68cc9f"
6DEPENDS += "libatomic-ops"
7
8inherit autotools multilib_header
9
10PACKAGECONFIG ??= ""
11PACKAGECONFIG[lzma] = "--enable-minidebuginfo,--disable-minidebuginfo,xz"
12PACKAGECONFIG[latexdocs] = "--enable-documentation, --disable-documentation, latex2man-native"
13
14EXTRA_OECONF_arm = "--enable-debug-frame"
15EXTRA_OECONF_armeb = "--enable-debug-frame"
16EXTRA_OECONF_aarch64 = "--enable-debug-frame"
17
18do_install_append () {
19 oe_multilib_header libunwind.h
20}
21
22BBCLASSEXTEND = "native"
diff --git a/meta/recipes-support/libunwind/libunwind/0001-Add-AO_REQUIRE_CAS-to-fix-build-on-ARM-v6.patch b/meta/recipes-support/libunwind/libunwind/0001-Add-AO_REQUIRE_CAS-to-fix-build-on-ARM-v6.patch
deleted file mode 100644
index 437b878365..0000000000
--- a/meta/recipes-support/libunwind/libunwind/0001-Add-AO_REQUIRE_CAS-to-fix-build-on-ARM-v6.patch
+++ /dev/null
@@ -1,62 +0,0 @@
1From 599f10ac3a24e419a93f97fddbe14de01b1185ea Mon Sep 17 00:00:00 2001
2From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
3Date: Tue, 13 May 2014 23:32:27 +0200
4Subject: [PATCH 1/6] Add AO_REQUIRE_CAS to fix build on ARM < v6
5
6ARM earlier than ARMv6, such as ARMv4 and ARMv5 do not provide
7optimize atomic operations in libatomic_ops. Since libunwind is using
8such operations, it should define AO_REQUIRE_CAS before including
9<atomic_ops.h> so that libatomic_ops knows it should use emulated
10atomic operations instead (even though they are obviously a lot more
11expensive).
12
13Also, while real atomic operations are all inline functions and
14therefore linking against libatomic_ops was not required, the emulated
15atomic operations actually require linking against libatomic_ops, so
16the commented AC_CHECK_LIB test in acinclude.m4 is uncommented to make
17sure we link against libatomic_ops.
18
19Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
20Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
21
22Upstream-Status: Pending
23Taken from:
24https://raw.githubusercontent.com/rdnetto/teapot-buildroot/master/package/libunwind/libunwind-02-Add-AO_REQUIRE_CAS-to-fix-build-on-ARM-v6.patch
25
26---
27 acinclude.m4 | 8 +-------
28 include/libunwind_i.h | 1 +
29 2 files changed, 2 insertions(+), 7 deletions(-)
30
31diff --git a/acinclude.m4 b/acinclude.m4
32index 497f7c2..9c15af1 100644
33--- a/acinclude.m4
34+++ b/acinclude.m4
35@@ -22,11 +22,5 @@ fi])
36 AC_DEFUN([CHECK_ATOMIC_OPS],
37 [dnl Check whether the system has the atomic_ops package installed.
38 AC_CHECK_HEADERS(atomic_ops.h)
39-#
40-# Don't link against libatomic_ops for now. We don't want libunwind
41-# to depend on libatomic_ops.so. Fortunately, none of the platforms
42-# we care about so far need libatomic_ops.a (everything is done via
43-# inline macros).
44-#
45-# AC_CHECK_LIB(atomic_ops, main)
46+ AC_CHECK_LIB(atomic_ops, main)
47 ])
48diff --git a/include/libunwind_i.h b/include/libunwind_i.h
49index 36cf7a1..33b4ca3 100644
50--- a/include/libunwind_i.h
51+++ b/include/libunwind_i.h
52@@ -124,6 +124,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
53 (pthread_mutex_unlock != NULL ? pthread_mutex_unlock (l) : 0)
54
55 #ifdef HAVE_ATOMIC_OPS_H
56+# define AO_REQUIRE_CAS
57 # include <atomic_ops.h>
58 static inline int
59 cmpxchg_ptr (void *addr, void *old, void *new)
60--
612.20.1
62
diff --git a/meta/recipes-support/libunwind/libunwind/0001-src-Gtrace-remove-unguarded-print-calls.patch b/meta/recipes-support/libunwind/libunwind/0001-src-Gtrace-remove-unguarded-print-calls.patch
new file mode 100644
index 0000000000..5840c2b4f6
--- /dev/null
+++ b/meta/recipes-support/libunwind/libunwind/0001-src-Gtrace-remove-unguarded-print-calls.patch
@@ -0,0 +1,52 @@
1From 9b27fa9bcd5cadd4c841c42710f41a090377e531 Mon Sep 17 00:00:00 2001
2From: Ross Burton <ross.burton@arm.com>
3Date: Fri, 24 Mar 2023 16:18:44 +0000
4Subject: [PATCH] src/Gtrace: remove unguarded print() calls
5
6There is a use of printf() without #include stdio.h in src/arm/Gtrace.c,
7which results in a compiler error if clang 16 is used:
8
9src/arm/Gtrace.c:529:7: error: call to undeclared library function
10'printf' with type 'int (const char *, ...)'; ISO C99 and later do not
11support implicit function declarations [-Wimplicit-function-declaration]
12
13Replace the printf("XXX") with a Dprintf, so it doesn't pull stdio in
14unless in a debug build, and reword the message to be clearer.
15
16Also there is another printf("XXX") inside a FreeBSD-specific block in
17the UNW_ARM_FRAME_SIGRETURN case, replace this with a #error as the code
18needs to be implemented.
19
20Fixes #482.
21
22Upstream-Status: Backport [9b27fa9bcd5cadd4c841c42710f41a090377e531]
23Signed-off-by: Ross Burton <ross.burton@arm.com>
24---
25 src/arm/Gtrace.c | 4 ++--
26 1 file changed, 2 insertions(+), 2 deletions(-)
27
28diff --git a/src/arm/Gtrace.c b/src/arm/Gtrace.c
29index 51fc281d..9e0f25af 100644
30--- a/src/arm/Gtrace.c
31+++ b/src/arm/Gtrace.c
32@@ -514,7 +514,7 @@ tdep_trace (unw_cursor_t *cursor, void **buffer, int *size)
33 if (likely(ret >= 0))
34 ACCESS_MEM_FAST(ret, c->validate, d, cfa + LINUX_SC_LR_OFF, lr);
35 #elif defined(__FreeBSD__)
36- printf("XXX\n");
37+ #error implement UNW_ARM_FRAME_SIGRETURN on FreeBSD
38 #endif
39
40 /* Resume stack at signal restoration point. The stack is not
41@@ -526,7 +526,7 @@ tdep_trace (unw_cursor_t *cursor, void **buffer, int *size)
42 break;
43
44 case UNW_ARM_FRAME_SYSCALL:
45- printf("XXX1\n");
46+ Dprintf ("%s: implement me\n", __FUNCTION__);
47 break;
48
49 default:
50--
512.34.1
52
diff --git a/meta/recipes-support/libunwind/libunwind/0003-x86-Stub-out-x86_local_resume.patch b/meta/recipes-support/libunwind/libunwind/0003-x86-Stub-out-x86_local_resume.patch
deleted file mode 100644
index 508ed6af38..0000000000
--- a/meta/recipes-support/libunwind/libunwind/0003-x86-Stub-out-x86_local_resume.patch
+++ /dev/null
@@ -1,54 +0,0 @@
1From f6866b9e4a6341c50eb1d923dbf48eca2ca40140 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Tue, 22 Mar 2016 16:19:29 +0000
4Subject: [PATCH 3/6] x86: Stub out x86_local_resume()
5
6its purpose seems
7to be unwinding across signal handler boundaries, which cannot happen
8in correct programs anyway. Replacing the whole function with
9something like *(volatile char *)0=0; (i.e. crash), gets a working
10libunwind
11
12Upstream-Status: Pending
13Signed-off-by: Khem Raj <raj.khem@gmail.com>
14
15---
16 src/x86/Gos-linux.c | 22 +---------------------
17 1 file changed, 1 insertion(+), 21 deletions(-)
18
19diff --git a/src/x86/Gos-linux.c b/src/x86/Gos-linux.c
20index fb9a5e3..c25ae0c 100644
21--- a/src/x86/Gos-linux.c
22+++ b/src/x86/Gos-linux.c
23@@ -284,27 +284,7 @@ x86_r_uc_addr (ucontext_t *uc, int reg)
24 HIDDEN int
25 x86_local_resume (unw_addr_space_t as, unw_cursor_t *cursor, void *arg)
26 {
27- struct cursor *c = (struct cursor *) cursor;
28- ucontext_t *uc = c->uc;
29-
30- /* Ensure c->pi is up-to-date. On x86, it's relatively common to be
31- missing DWARF unwind info. We don't want to fail in that case,
32- because the frame-chain still would let us do a backtrace at
33- least. */
34- dwarf_make_proc_info (&c->dwarf);
35-
36- if (unlikely (c->sigcontext_format != X86_SCF_NONE))
37- {
38- struct sigcontext *sc = (struct sigcontext *) c->sigcontext_addr;
39-
40- Debug (8, "resuming at ip=%x via sigreturn(%p)\n", c->dwarf.ip, sc);
41- x86_sigreturn (sc);
42- }
43- else
44- {
45- Debug (8, "resuming at ip=%x via setcontext()\n", c->dwarf.ip);
46- setcontext (uc);
47- }
48+ *(volatile char *)0=0;
49 return -UNW_EINVAL;
50 }
51
52--
532.20.1
54
diff --git a/meta/recipes-support/libunwind/libunwind/0004-Fix-build-on-mips-musl.patch b/meta/recipes-support/libunwind/libunwind/0004-Fix-build-on-mips-musl.patch
deleted file mode 100644
index 124d0e00b1..0000000000
--- a/meta/recipes-support/libunwind/libunwind/0004-Fix-build-on-mips-musl.patch
+++ /dev/null
@@ -1,84 +0,0 @@
1From 6bdab5cc8f1e2ec5f84fc9f59f1699a726980709 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Wed, 23 Mar 2016 06:08:59 +0000
4Subject: [PATCH 4/6] Fix build on mips/musl
5
6Do not include endian.h on musl it includes
7further headers which can not be compiled in __ASSEMBLER__
8 mode
9
10Upstream-Status: Pending
11Signed-off-by: Khem Raj <raj.khem@gmail.com>
12
13---
14 src/coredump/_UCD_internal.h | 35 +++++++++++++++++++++++++++++++++++
15 src/mips/getcontext.S | 3 +--
16 2 files changed, 36 insertions(+), 2 deletions(-)
17
18diff --git a/src/coredump/_UCD_internal.h b/src/coredump/_UCD_internal.h
19index 3c95a2a..21ed1c3 100644
20--- a/src/coredump/_UCD_internal.h
21+++ b/src/coredump/_UCD_internal.h
22@@ -44,6 +44,41 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
23
24 #include "libunwind_i.h"
25
26+#ifndef __GLIBC__
27+#include <sys/reg.h>
28+
29+#define EF_REG0 6
30+#define EF_REG1 7
31+#define EF_REG2 8
32+#define EF_REG3 9
33+#define EF_REG4 10
34+#define EF_REG5 11
35+#define EF_REG6 12
36+#define EF_REG7 13
37+#define EF_REG8 14
38+#define EF_REG9 15
39+#define EF_REG10 16
40+#define EF_REG11 17
41+#define EF_REG12 18
42+#define EF_REG13 19
43+#define EF_REG14 20
44+#define EF_REG15 21
45+#define EF_REG16 22
46+#define EF_REG17 23
47+#define EF_REG18 24
48+#define EF_REG19 25
49+#define EF_REG20 26
50+#define EF_REG21 27
51+#define EF_REG22 28
52+#define EF_REG23 29
53+#define EF_REG24 30
54+#define EF_REG25 31
55+#define EF_REG28 34
56+#define EF_REG29 35
57+#define EF_REG30 36
58+#define EF_REG31 37
59+#endif
60+
61
62 #if SIZEOF_OFF_T == 4
63 typedef uint32_t uoff_t;
64diff --git a/src/mips/getcontext.S b/src/mips/getcontext.S
65index d1dbd57..de9b681 100644
66--- a/src/mips/getcontext.S
67+++ b/src/mips/getcontext.S
68@@ -24,12 +24,11 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
69 WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
70
71 #include "offsets.h"
72-#include <endian.h>
73
74 .text
75
76 #if _MIPS_SIM == _ABIO32
77-# if __BYTE_ORDER == __BIG_ENDIAN
78+# if __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__
79 # define OFFSET 4
80 # else
81 # define OFFSET 0
82--
832.20.1
84
diff --git a/meta/recipes-support/libunwind/libunwind/0005-ppc32-Consider-ucontext-mismatches-between-glibc-and.patch b/meta/recipes-support/libunwind/libunwind/0005-ppc32-Consider-ucontext-mismatches-between-glibc-and.patch
index edaa822be1..e58a71b741 100644
--- a/meta/recipes-support/libunwind/libunwind/0005-ppc32-Consider-ucontext-mismatches-between-glibc-and.patch
+++ b/meta/recipes-support/libunwind/libunwind/0005-ppc32-Consider-ucontext-mismatches-between-glibc-and.patch
@@ -1,7 +1,8 @@
1From 02919d74b1599979884f9cee466ed392d9fc4819 Mon Sep 17 00:00:00 2001 1From 24c751f9d21e892a9833e1b70a696b07872b0f7f Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com> 2From: Khem Raj <raj.khem@gmail.com>
3Date: Sat, 9 Jul 2016 01:07:53 +0000 3Date: Sat, 9 Jul 2016 01:07:53 +0000
4Subject: [PATCH 5/6] ppc32: Consider ucontext mismatches between glibc and 4Subject: [PATCH] ppc32: Consider ucontext mismatches between glibc and
5
5 musl 6 musl
6 7
7This helps in porting libunwind onto musl based systems 8This helps in porting libunwind onto musl based systems
@@ -29,7 +30,7 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
29 3 files changed, 92 insertions(+), 79 deletions(-) 30 3 files changed, 92 insertions(+), 79 deletions(-)
30 31
31diff --git a/src/ppc32/Ginit.c b/src/ppc32/Ginit.c 32diff --git a/src/ppc32/Ginit.c b/src/ppc32/Ginit.c
32index ba30244..c5312d9 100644 33index 7b45455..f8d6886 100644
33--- a/src/ppc32/Ginit.c 34--- a/src/ppc32/Ginit.c
34+++ b/src/ppc32/Ginit.c 35+++ b/src/ppc32/Ginit.c
35@@ -48,12 +48,12 @@ uc_addr (ucontext_t *uc, int reg) 36@@ -48,12 +48,12 @@ uc_addr (ucontext_t *uc, int reg)
@@ -227,7 +228,7 @@ index c6ba806..b79f15c 100644
227 228
228 #endif 229 #endif
229diff --git a/src/ptrace/_UPT_reg_offset.c b/src/ptrace/_UPT_reg_offset.c 230diff --git a/src/ptrace/_UPT_reg_offset.c b/src/ptrace/_UPT_reg_offset.c
230index c82d1c9..6c31baa 100644 231index b7dd3b7..bfaf756 100644
231--- a/src/ptrace/_UPT_reg_offset.c 232--- a/src/ptrace/_UPT_reg_offset.c
232+++ b/src/ptrace/_UPT_reg_offset.c 233+++ b/src/ptrace/_UPT_reg_offset.c
233@@ -27,6 +27,13 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ 234@@ -27,6 +27,13 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
@@ -242,8 +243,5 @@ index c82d1c9..6c31baa 100644
242+# undef pt_regs 243+# undef pt_regs
243+#endif 244+#endif
244 245
245 #ifdef HAVE_ASM_PTRACE_OFFSETS_H 246 #ifdef HAVE_ASM_PTRACE_H
246 # include <asm/ptrace_offsets.h> 247 # include <asm/ptrace.h>
247--
2482.20.1
249
diff --git a/meta/recipes-support/libunwind/libunwind/0006-Fix-for-X32.patch b/meta/recipes-support/libunwind/libunwind/0006-Fix-for-X32.patch
deleted file mode 100644
index 37ae8124cc..0000000000
--- a/meta/recipes-support/libunwind/libunwind/0006-Fix-for-X32.patch
+++ /dev/null
@@ -1,32 +0,0 @@
1From 7a4fd5933cc795df85cdd85168fe54fbaec4dcec Mon Sep 17 00:00:00 2001
2From: Christopher Larson <chris_larson@mentor.com>
3Date: Tue, 13 Dec 2016 09:50:34 -0700
4Subject: [PATCH 6/6] Fix for X32
5
6Apply patch to fix the X32 build from https://github.com/sjnewbury/x32.
7
8Upstream-Status: Pending
9Signed-off-by: Christopher Larson <chris_larson@mentor.com>
10
11---
12 src/x86_64/Gos-linux.c | 4 ++--
13 1 file changed, 2 insertions(+), 2 deletions(-)
14
15diff --git a/src/x86_64/Gos-linux.c b/src/x86_64/Gos-linux.c
16index bd14234..be1cb5b 100644
17--- a/src/x86_64/Gos-linux.c
18+++ b/src/x86_64/Gos-linux.c
19@@ -145,8 +145,8 @@ x86_64_sigreturn (unw_cursor_t *cursor)
20
21 Debug (8, "resuming at ip=%llx via sigreturn(%p)\n",
22 (unsigned long long) c->dwarf.ip, sc);
23- __asm__ __volatile__ ("mov %0, %%rsp;"
24- "mov %1, %%rax;"
25+ __asm__ __volatile__ ("mov %q0, %%rsp;"
26+ "mov %q1, %%rax;"
27 "syscall"
28 :: "r"(sc), "i"(SYS_rt_sigreturn)
29 : "memory");
30--
312.20.1
32
diff --git a/meta/recipes-support/libunwind/libunwind/mips-byte-order.patch b/meta/recipes-support/libunwind/libunwind/mips-byte-order.patch
new file mode 100644
index 0000000000..8848780fd1
--- /dev/null
+++ b/meta/recipes-support/libunwind/libunwind/mips-byte-order.patch
@@ -0,0 +1,35 @@
1From dbbf8110ed3fd2cbac20a8ec2ac769e13c67bab1 Mon Sep 17 00:00:00 2001
2From: Ross Burton <ross.burton@arm.com>
3Date: Tue, 16 Jan 2024 18:22:38 +0000
4Subject: [PATCH 2/2] byte order
5
6endian.h on musl/mips can't be included in __ASSEMBLER__ mode,
7so use the __BYTE_ORDER__ symbol instead.
8
9Upstream-Status: Pending
10Signed-off-by: Ross Burton <ross.burton@arm.com>
11---
12 src/mips/getcontext.S | 3 +--
13 1 file changed, 1 insertion(+), 2 deletions(-)
14
15diff --git a/src/mips/getcontext.S b/src/mips/getcontext.S
16index d1dbd579..de9b6818 100644
17--- a/src/mips/getcontext.S
18+++ b/src/mips/getcontext.S
19@@ -24,12 +24,11 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
20 WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
21
22 #include "offsets.h"
23-#include <endian.h>
24
25 .text
26
27 #if _MIPS_SIM == _ABIO32
28-# if __BYTE_ORDER == __BIG_ENDIAN
29+# if __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__
30 # define OFFSET 4
31 # else
32 # define OFFSET 0
33--
342.34.1
35
diff --git a/meta/recipes-support/libunwind/libunwind/mips-coredump-register.patch b/meta/recipes-support/libunwind/libunwind/mips-coredump-register.patch
new file mode 100644
index 0000000000..68adcd1d71
--- /dev/null
+++ b/meta/recipes-support/libunwind/libunwind/mips-coredump-register.patch
@@ -0,0 +1,100 @@
1From 7750e2a29b084ee033acc82abab410035e220d3f Mon Sep 17 00:00:00 2001
2From: Ross Burton <ross.burton@arm.com>
3Date: Tue, 16 Jan 2024 18:21:26 +0000
4Subject: [PATCH 1/2] coredump-mips-register
5
6glibc and musl have different names for the registers, add a
7macro that generates the names appropriately.
8
9Upstream-Status: Pending
10Signed-off-by: Ross Burton <ross.burton@arm.com>
11
12---
13 src/coredump/_UCD_access_reg_linux.c | 69 ++++++++++++++++------------
14 1 file changed, 39 insertions(+), 30 deletions(-)
15
16diff --git a/src/coredump/_UCD_access_reg_linux.c b/src/coredump/_UCD_access_reg_linux.c
17index 27eef123..beefdb47 100644
18--- a/src/coredump/_UCD_access_reg_linux.c
19+++ b/src/coredump/_UCD_access_reg_linux.c
20@@ -67,38 +67,47 @@ _UCD_access_reg (unw_addr_space_t as,
21 goto badreg;
22 #else
23 #if defined(UNW_TARGET_MIPS)
24+
25+/* glibc and musl use different names */
26+#ifdef __GLIBC__
27+#define EF_REG(x) EF_REG ## x
28+#else
29+#include <sys/reg.h>
30+#define EF_REG(x) EF_R ## x
31+#endif
32+
33 static const uint8_t remap_regs[] =
34 {
35- [UNW_MIPS_R0] = EF_REG0,
36- [UNW_MIPS_R1] = EF_REG1,
37- [UNW_MIPS_R2] = EF_REG2,
38- [UNW_MIPS_R3] = EF_REG3,
39- [UNW_MIPS_R4] = EF_REG4,
40- [UNW_MIPS_R5] = EF_REG5,
41- [UNW_MIPS_R6] = EF_REG6,
42- [UNW_MIPS_R7] = EF_REG7,
43- [UNW_MIPS_R8] = EF_REG8,
44- [UNW_MIPS_R9] = EF_REG9,
45- [UNW_MIPS_R10] = EF_REG10,
46- [UNW_MIPS_R11] = EF_REG11,
47- [UNW_MIPS_R12] = EF_REG12,
48- [UNW_MIPS_R13] = EF_REG13,
49- [UNW_MIPS_R14] = EF_REG14,
50- [UNW_MIPS_R15] = EF_REG15,
51- [UNW_MIPS_R16] = EF_REG16,
52- [UNW_MIPS_R17] = EF_REG17,
53- [UNW_MIPS_R18] = EF_REG18,
54- [UNW_MIPS_R19] = EF_REG19,
55- [UNW_MIPS_R20] = EF_REG20,
56- [UNW_MIPS_R21] = EF_REG21,
57- [UNW_MIPS_R22] = EF_REG22,
58- [UNW_MIPS_R23] = EF_REG23,
59- [UNW_MIPS_R24] = EF_REG24,
60- [UNW_MIPS_R25] = EF_REG25,
61- [UNW_MIPS_R28] = EF_REG28,
62- [UNW_MIPS_R29] = EF_REG29,
63- [UNW_MIPS_R30] = EF_REG30,
64- [UNW_MIPS_R31] = EF_REG31,
65+ [UNW_MIPS_R0] = EF_REG(0),
66+ [UNW_MIPS_R1] = EF_REG(1),
67+ [UNW_MIPS_R2] = EF_REG(2),
68+ [UNW_MIPS_R3] = EF_REG(3),
69+ [UNW_MIPS_R4] = EF_REG(4),
70+ [UNW_MIPS_R5] = EF_REG(5),
71+ [UNW_MIPS_R6] = EF_REG(6),
72+ [UNW_MIPS_R7] = EF_REG(7),
73+ [UNW_MIPS_R8] = EF_REG(8),
74+ [UNW_MIPS_R9] = EF_REG(9),
75+ [UNW_MIPS_R10] = EF_REG(10),
76+ [UNW_MIPS_R11] = EF_REG(11),
77+ [UNW_MIPS_R12] = EF_REG(12),
78+ [UNW_MIPS_R13] = EF_REG(13),
79+ [UNW_MIPS_R14] = EF_REG(14),
80+ [UNW_MIPS_R15] = EF_REG(15),
81+ [UNW_MIPS_R16] = EF_REG(16),
82+ [UNW_MIPS_R17] = EF_REG(17),
83+ [UNW_MIPS_R18] = EF_REG(18),
84+ [UNW_MIPS_R19] = EF_REG(19),
85+ [UNW_MIPS_R20] = EF_REG(20),
86+ [UNW_MIPS_R21] = EF_REG(21),
87+ [UNW_MIPS_R22] = EF_REG(22),
88+ [UNW_MIPS_R23] = EF_REG(23),
89+ [UNW_MIPS_R24] = EF_REG(24),
90+ [UNW_MIPS_R25] = EF_REG(25),
91+ [UNW_MIPS_R28] = EF_REG(28),
92+ [UNW_MIPS_R29] = EF_REG(29),
93+ [UNW_MIPS_R30] = EF_REG(30),
94+ [UNW_MIPS_R31] = EF_REG(31),
95 [UNW_MIPS_PC] = EF_CP0_EPC,
96 };
97 #elif defined(UNW_TARGET_X86)
98--
992.34.1
100
diff --git a/meta/recipes-support/libunwind/libunwind/musl-header-conflict.patch b/meta/recipes-support/libunwind/libunwind/musl-header-conflict.patch
deleted file mode 100644
index 63b78a8a30..0000000000
--- a/meta/recipes-support/libunwind/libunwind/musl-header-conflict.patch
+++ /dev/null
@@ -1,44 +0,0 @@
1From 49b21f0fe5fb93b30b94cc449429fd33de0652a7 Mon Sep 17 00:00:00 2001
2From: Richard Purdie <richard.purdie@linuxfoundation.org>
3Date: Thu, 18 Aug 2016 14:46:32 +0100
4Subject: [PATCH] If you:
5
6TCLIBC=musl bitbake unwind
7TCLIBC=musl bitbake gcc-runtime -c cleansstate
8TCLIBC=musl bitbake gcc-runtime
9
10you will see libstdc++ fail to build due to finding libunwind's header file.
11
12Khem: "When we build any of gcc components they expect to use internal version
13and that works with glibc based gcc since the search headers first look into gcc
14headers, however with musl the gcc headers are searched after the standard
15headers ( which is by design the right thing )."
16
17This patch hacks around the issue by looking for a define used during gcc-runtime's
18build and skipping to the internal header in that case.
19
20[YOCTO #10129]
21
22RP 2016/8/18
23
24Upstream-Status: Inappropriate [really need to fix gcc]
25
26---
27 include/unwind.h | 4 ++++
28 1 file changed, 4 insertions(+)
29
30diff --git a/include/unwind.h b/include/unwind.h
31index 7cf128d..31c2871 100644
32--- a/include/unwind.h
33+++ b/include/unwind.h
34@@ -23,6 +23,10 @@ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
35 OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
36 WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
37
38+#ifdef _GLIBCXX_SHARED
39+#include_next <unwind.h>
40+#endif
41+
42 #ifndef _UNWIND_H
43 #define _UNWIND_H
44
diff --git a/meta/recipes-support/libunwind/libunwind_1.5.0.bb b/meta/recipes-support/libunwind/libunwind_1.5.0.bb
deleted file mode 100644
index 5e4693e205..0000000000
--- a/meta/recipes-support/libunwind/libunwind_1.5.0.bb
+++ /dev/null
@@ -1,26 +0,0 @@
1require libunwind.inc
2
3SRC_URI = "http://download.savannah.nongnu.org/releases/libunwind/libunwind-${PV}.tar.gz \
4 file://0001-Add-AO_REQUIRE_CAS-to-fix-build-on-ARM-v6.patch \
5 file://0003-x86-Stub-out-x86_local_resume.patch \
6 file://0004-Fix-build-on-mips-musl.patch \
7 file://0005-ppc32-Consider-ucontext-mismatches-between-glibc-and.patch \
8 file://0006-Fix-for-X32.patch \
9 "
10SRC_URI_append_libc-musl = " file://musl-header-conflict.patch"
11
12SRC_URI[md5sum] = "c6923dda0675f6a4ef21426164dc8b6a"
13SRC_URI[sha256sum] = "90337653d92d4a13de590781371c604f9031cdb50520366aa1e3a91e1efb1017"
14
15EXTRA_OECONF_append_libc-musl = " --disable-documentation --disable-tests --enable-static"
16
17# http://errors.yoctoproject.org/Errors/Details/20487/
18ARM_INSTRUCTION_SET_armv4 = "arm"
19ARM_INSTRUCTION_SET_armv5 = "arm"
20
21COMPATIBLE_HOST_riscv64 = "null"
22COMPATIBLE_HOST_riscv32 = "null"
23
24LDFLAGS += "-Wl,-z,relro,-z,now ${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-gold', ' -fuse-ld=bfd ', '', d)}"
25
26SECURITY_LDFLAGS_append_libc-musl = " -lssp_nonshared"
diff --git a/meta/recipes-support/libunwind/libunwind_1.6.2.bb b/meta/recipes-support/libunwind/libunwind_1.6.2.bb
new file mode 100644
index 0000000000..3208785124
--- /dev/null
+++ b/meta/recipes-support/libunwind/libunwind_1.6.2.bb
@@ -0,0 +1,42 @@
1SUMMARY = "Library for obtaining the call-chain of a program"
2DESCRIPTION = "a portable and efficient C programming interface (API) to determine the call-chain of a program"
3HOMEPAGE = "http://www.nongnu.org/libunwind"
4LICENSE = "MIT"
5LIC_FILES_CHKSUM = "file://COPYING;md5=2d80c8ed4062b8339b715f90fa68cc9f"
6DEPENDS += "libatomic-ops"
7DEPENDS:append:libc-musl = " libucontext"
8
9SRC_URI = "http://download.savannah.nongnu.org/releases/libunwind/libunwind-${PV}.tar.gz \
10 file://mips-byte-order.patch \
11 file://mips-coredump-register.patch \
12 file://0005-ppc32-Consider-ucontext-mismatches-between-glibc-and.patch \
13 file://0001-src-Gtrace-remove-unguarded-print-calls.patch \
14 "
15
16SRC_URI[sha256sum] = "4a6aec666991fb45d0889c44aede8ad6eb108071c3554fcdff671f9c94794976"
17
18inherit autotools multilib_header
19
20COMPATIBLE_HOST:riscv32 = "null"
21
22PACKAGECONFIG ??= ""
23PACKAGECONFIG[lzma] = "--enable-minidebuginfo,--disable-minidebuginfo,xz"
24PACKAGECONFIG[zlib] = "--enable-zlibdebuginfo,--disable-zlibdebuginfo,zlib"
25PACKAGECONFIG[latexdocs] = "--enable-documentation, --disable-documentation, latex2man-native"
26
27EXTRA_OECONF = "--enable-static"
28
29# http://errors.yoctoproject.org/Errors/Details/20487/
30ARM_INSTRUCTION_SET:armv4 = "arm"
31ARM_INSTRUCTION_SET:armv5 = "arm"
32
33LDFLAGS += "-Wl,-z,relro,-z,now ${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-gold', ' -fuse-ld=bfd ', '', d)}"
34
35SECURITY_LDFLAGS:append:libc-musl = " -lssp_nonshared"
36CACHED_CONFIGUREVARS:append:libc-musl = " LDFLAGS='${LDFLAGS} -lucontext'"
37
38do_install:append () {
39 oe_multilib_header libunwind.h
40}
41
42BBCLASSEXTEND = "native"
diff --git a/meta/recipes-support/liburcu/liburcu_0.12.2.bb b/meta/recipes-support/liburcu/liburcu_0.14.0.bb
index 44544b109c..f03c990632 100644
--- a/meta/recipes-support/liburcu/liburcu_0.12.2.bb
+++ b/meta/recipes-support/liburcu/liburcu_0.14.0.bb
@@ -1,22 +1,24 @@
1SUMMARY = "Userspace RCU (read-copy-update) library" 1SUMMARY = "Userspace RCU (read-copy-update) library"
2DESCRIPTION = "A userspace RCU (read-copy-update) library. This data \
3synchronization library provides read-side access which scales linearly \
4with the number of cores. "
2HOMEPAGE = "http://lttng.org/urcu" 5HOMEPAGE = "http://lttng.org/urcu"
3BUGTRACKER = "http://lttng.org/project/issues" 6BUGTRACKER = "http://lttng.org/project/issues"
4 7
5LICENSE = "LGPLv2.1+ & MIT-style" 8LICENSE = "LGPL-2.1-or-later & MIT"
6LIC_FILES_CHKSUM = "file://LICENSE;md5=e548d28737289d75a8f1e01ba2fd7825 \ 9LIC_FILES_CHKSUM = "file://LICENSE;md5=e548d28737289d75a8f1e01ba2fd7825 \
7 file://include/urcu/urcu.h;beginline=4;endline=32;md5=4de0d68d3a997643715036d2209ae1d9 \ 10 file://include/urcu/urcu.h;beginline=4;endline=32;md5=4de0d68d3a997643715036d2209ae1d9 \
8 file://include/urcu/uatomic/x86.h;beginline=4;endline=21;md5=58e50bbd8a2f073bb5500e6554af0d0b" 11 file://include/urcu/uatomic/x86.h;beginline=4;endline=21;md5=58e50bbd8a2f073bb5500e6554af0d0b"
9 12
10SRC_URI = "http://lttng.org/files/urcu/userspace-rcu-${PV}.tar.bz2" 13SRC_URI = "http://lttng.org/files/urcu/userspace-rcu-${PV}.tar.bz2"
11 14
12SRC_URI[md5sum] = "d94347df78e3f1aa744745eb85787df5" 15SRC_URI[sha256sum] = "ca43bf261d4d392cff20dfae440836603bf009fce24fdc9b2697d837a2239d4f"
13SRC_URI[sha256sum] = "4eefc11e4f6c212fc7d84d871e1cc139da0669a46ff3fda557a6fdd4d74ca67b"
14 16
15S = "${WORKDIR}/userspace-rcu-${PV}" 17S = "${WORKDIR}/userspace-rcu-${PV}"
16inherit autotools multilib_header 18inherit autotools multilib_header
17 19
18CPPFLAGS_append_riscv64 = " -pthread -D_REENTRANT" 20CPPFLAGS:append:riscv64 = " -pthread -D_REENTRANT"
19 21
20do_install_append() { 22do_install:append() {
21 oe_multilib_header urcu/config.h 23 oe_multilib_header urcu/config.h
22} 24}
diff --git a/meta/recipes-support/libusb/libusb1_1.0.24.bb b/meta/recipes-support/libusb/libusb1_1.0.24.bb
deleted file mode 100644
index 4c552ae6c7..0000000000
--- a/meta/recipes-support/libusb/libusb1_1.0.24.bb
+++ /dev/null
@@ -1,43 +0,0 @@
1SUMMARY = "Userspace library to access USB (version 1.0)"
2HOMEPAGE = "http://libusb.sf.net"
3BUGTRACKER = "http://www.libusb.org/report"
4SECTION = "libs"
5
6LICENSE = "LGPLv2.1+"
7LIC_FILES_CHKSUM = "file://COPYING;md5=fbc093901857fcd118f065f900982c24"
8
9BBCLASSEXTEND = "native nativesdk"
10
11SRC_URI = "${SOURCEFORGE_MIRROR}/libusb/libusb-${PV}.tar.bz2 \
12 file://run-ptest \
13 "
14
15SRC_URI[sha256sum] = "7efd2685f7b327326dcfb85cee426d9b871fd70e22caa15bb68d595ce2a2b12a"
16
17S = "${WORKDIR}/libusb-${PV}"
18
19inherit autotools pkgconfig ptest
20
21PACKAGECONFIG_class-target ??= "udev"
22PACKAGECONFIG[udev] = "--enable-udev,--disable-udev,udev"
23
24EXTRA_OECONF = "--libdir=${base_libdir}"
25
26do_install_append() {
27 install -d ${D}${libdir}
28 if [ ! ${D}${libdir} -ef ${D}${base_libdir} ]; then
29 mv ${D}${base_libdir}/pkgconfig ${D}${libdir}
30 fi
31}
32
33do_compile_ptest() {
34 oe_runmake -C tests stress
35}
36
37do_install_ptest() {
38 install -m 755 ${B}/tests/.libs/stress ${D}${PTEST_PATH}
39}
40
41FILES_${PN} += "${base_libdir}/*.so.*"
42
43FILES_${PN}-dev += "${base_libdir}/*.so ${base_libdir}/*.la"
diff --git a/meta/recipes-support/libusb/libusb1_1.0.27.bb b/meta/recipes-support/libusb/libusb1_1.0.27.bb
new file mode 100644
index 0000000000..f2431d75c8
--- /dev/null
+++ b/meta/recipes-support/libusb/libusb1_1.0.27.bb
@@ -0,0 +1,48 @@
1SUMMARY = "Userspace library to access USB (version 1.0)"
2DESCRIPTION = "A cross-platform library to access USB devices from Linux, \
3macOS, Windows, OpenBSD/NetBSD, Haiku and Solaris userspace."
4HOMEPAGE = "https://libusb.info"
5BUGTRACKER = "http://www.libusb.org/report"
6SECTION = "libs"
7
8LICENSE = "LGPL-2.1-or-later"
9LIC_FILES_CHKSUM = "file://COPYING;md5=fbc093901857fcd118f065f900982c24"
10
11BBCLASSEXTEND = "native nativesdk"
12
13SRC_URI = "${GITHUB_BASE_URI}/download/v${PV}/libusb-${PV}.tar.bz2 \
14 file://run-ptest \
15 "
16
17GITHUB_BASE_URI = "https://github.com/libusb/libusb/releases"
18UPSTREAM_CHECK_REGEX = "releases/tag/v?(?P<pver>\d+(\.\d+)+)$"
19
20SRC_URI[sha256sum] = "ffaa41d741a8a3bee244ac8e54a72ea05bf2879663c098c82fc5757853441575"
21
22S = "${WORKDIR}/libusb-${PV}"
23
24inherit autotools pkgconfig ptest github-releases
25
26PACKAGECONFIG:class-target ??= "udev"
27PACKAGECONFIG[udev] = "--enable-udev,--disable-udev,udev"
28
29EXTRA_OECONF = "--libdir=${base_libdir}"
30
31do_install:append() {
32 install -d ${D}${libdir}
33 if [ ! ${D}${libdir} -ef ${D}${base_libdir} ]; then
34 mv ${D}${base_libdir}/pkgconfig ${D}${libdir}
35 fi
36}
37
38do_compile_ptest() {
39 oe_runmake -C tests stress
40}
41
42do_install_ptest() {
43 install -m 755 ${B}/tests/stress ${D}${PTEST_PATH}
44}
45
46FILES:${PN} += "${base_libdir}/*.so.*"
47
48FILES:${PN}-dev += "${base_libdir}/*.so ${base_libdir}/*.la"
diff --git a/meta/recipes-support/libxslt/libxslt_1.1.34.bb b/meta/recipes-support/libxslt/libxslt_1.1.39.bb
index 1961bb5b31..2cc0c84bec 100644
--- a/meta/recipes-support/libxslt/libxslt_1.1.34.bb
+++ b/meta/recipes-support/libxslt/libxslt_1.1.39.bb
@@ -1,4 +1,9 @@
1SUMMARY = "GNOME XSLT library" 1SUMMARY = "GNOME XSLT library"
2DESCRIPTION = "libxslt is the XSLT C parser and toolkit developed for the Gnome project. \
3XSLT itself is a an XML language to define transformation for XML. Libxslt is based on \
4libxml2 the XML C library developed for the GNOME project. It also implements most of \
5the EXSLT set of processor-portable extensions functions and some of Saxon's evaluate \
6and expressions extensions."
2HOMEPAGE = "http://xmlsoft.org/XSLT/" 7HOMEPAGE = "http://xmlsoft.org/XSLT/"
3BUGTRACKER = "https://bugzilla.gnome.org/" 8BUGTRACKER = "https://bugzilla.gnome.org/"
4 9
@@ -8,21 +13,21 @@ LIC_FILES_CHKSUM = "file://Copyright;md5=0cd9a07afbeb24026c9b03aecfeba458"
8SECTION = "libs" 13SECTION = "libs"
9DEPENDS = "libxml2" 14DEPENDS = "libxml2"
10 15
11SRC_URI = "http://xmlsoft.org/sources/libxslt-${PV}.tar.gz \ 16SRC_URI = "https://download.gnome.org/sources/libxslt/1.1/libxslt-${PV}.tar.xz"
12 "
13 17
14SRC_URI[md5sum] = "db8765c8d076f1b6caafd9f2542a304a" 18SRC_URI[sha256sum] = "2a20ad621148339b0759c4d4e96719362dee64c9a096dbba625ba053846349f0"
15SRC_URI[sha256sum] = "98b1bd46d6792925ad2dfe9a87452ea2adebf69dcb9919ffd55bf926a7f93f7f"
16 19
17UPSTREAM_CHECK_REGEX = "libxslt-(?P<pver>\d+(\.\d+)+)\.tar" 20UPSTREAM_CHECK_REGEX = "libxslt-(?P<pver>\d+(\.\d+)+)\.tar"
18 21
22CVE_STATUS[CVE-2022-29824] = "not-applicable-config: Static linking to libxml2 is not enabled."
23
19S = "${WORKDIR}/libxslt-${PV}" 24S = "${WORKDIR}/libxslt-${PV}"
20 25
21BINCONFIG = "${bindir}/xslt-config" 26BINCONFIG = "${bindir}/xslt-config"
22 27
23inherit autotools pkgconfig binconfig-disabled lib_package multilib_header 28inherit autotools pkgconfig binconfig-disabled lib_package multilib_header
24 29
25do_configure_prepend () { 30do_configure:prepend () {
26 # We don't DEPEND on binutils for ansidecl.h so ensure we don't use the header. 31 # We don't DEPEND on binutils for ansidecl.h so ensure we don't use the header.
27 # This can be removed when upgrading to 1.1.34. 32 # This can be removed when upgrading to 1.1.34.
28 sed -i -e 's/ansidecl.h//' ${S}/configure.ac 33 sed -i -e 's/ansidecl.h//' ${S}/configure.ac
@@ -32,22 +37,22 @@ do_configure_prepend () {
32 touch ${S}/doc/xsltproc.1 37 touch ${S}/doc/xsltproc.1
33} 38}
34 39
35EXTRA_OECONF = "--without-python --without-debug --without-mem-debug --without-crypto --with-html-subdir=${BPN}" 40EXTRA_OECONF = "--without-python --without-debug --without-mem-debug --without-crypto"
36# older versions of this recipe had ${PN}-utils 41# older versions of this recipe had ${PN}-utils
37RPROVIDES_${PN}-bin += "${PN}-utils" 42RPROVIDES:${PN}-bin += "${PN}-utils"
38RCONFLICTS_${PN}-bin += "${PN}-utils" 43RCONFLICTS:${PN}-bin += "${PN}-utils"
39RREPLACES_${PN}-bin += "${PN}-utils" 44RREPLACES:${PN}-bin += "${PN}-utils"
40 45
41# This is only needed until libxml can load the relocated catalog itself 46# This is only needed until libxml can load the relocated catalog itself
42do_install_append_class-native () { 47do_install:append:class-native () {
43 create_wrapper ${D}/${bindir}/xsltproc XML_CATALOG_FILES=${sysconfdir}/xml/catalog 48 create_wrapper ${D}/${bindir}/xsltproc XML_CATALOG_FILES=${sysconfdir}/xml/catalog
44} 49}
45 50
46do_install_append () { 51do_install:append () {
47 oe_multilib_header libxslt/xsltconfig.h 52 oe_multilib_header libxslt/xsltconfig.h
48} 53}
49 54
50FILES_${PN} += "${libdir}/libxslt-plugins" 55FILES:${PN} += "${libdir}/libxslt-plugins"
51FILES_${PN}-dev += "${libdir}/xsltConf.sh" 56FILES:${PN}-dev += "${libdir}/xsltConf.sh"
52 57
53BBCLASSEXTEND = "native nativesdk" 58BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-support/libyaml/libyaml_0.2.5.bb b/meta/recipes-support/libyaml/libyaml_0.2.5.bb
index 778e091638..4cb5717ece 100644
--- a/meta/recipes-support/libyaml/libyaml_0.2.5.bb
+++ b/meta/recipes-support/libyaml/libyaml_0.2.5.bb
@@ -15,7 +15,7 @@ S = "${WORKDIR}/yaml-${PV}"
15 15
16inherit autotools 16inherit autotools
17 17
18DISABLE_STATIC_class-nativesdk = "" 18DISABLE_STATIC:class-nativesdk = ""
19DISABLE_STATIC_class-native = "" 19DISABLE_STATIC:class-native = ""
20 20
21BBCLASSEXTEND = "native nativesdk" 21BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-support/lz4/files/run-ptest b/meta/recipes-support/lz4/files/run-ptest
index d3bfc49f1c..f4a46a4f2c 100644
--- a/meta/recipes-support/lz4/files/run-ptest
+++ b/meta/recipes-support/lz4/files/run-ptest
@@ -1,43 +1,17 @@
1#!/bin/sh 1#!/bin/sh
2cd testsuite
3 2
4echo -n "---- test-lz4 ----" 3# Define test work dir
5make -C tests test-lz4 > /dev/null 2>&1 4WORKDIR=@PTEST_PATH@/tests/
6 5
7if [ $? -eq 0 ]; then 6# Run test
8 echo "PASS" 7cd ${WORKDIR}
9else
10 echo "FAIL"
11fi
12
13echo -n "---- test-fasttest ----"
14make -C tests test-fasttest > /dev/null 2>&1
15if [ $? -eq 0 ]; then
16 echo "PASS"
17else
18 echo "FAIL"
19fi
20 8
21echo -n "---- test-frametest ----" 9case_name="test_frame"
22make -C tests test-frametest > /dev/null 2>&1 10./frametest
23if [ $? -eq 0 ]; then 11ret=$?
24 echo "PASS" 12if [[ ${ret} == "0" ]]; then
13 echo "PASS: lz4/$case_name"
25else 14else
26 echo "FAIL" 15 echo "FAIL: lz4/$case_name"
27fi 16fi
28 17
29echo -n "---- test-fullbench ----"
30make -C tests test-fullbench > /dev/null 2>&1
31if [ $? -eq 0 ]; then
32 echo "PASS"
33else
34 echo "FAIL"
35fi
36
37echo -n "---- test-fuzzer ----"
38make -C tests test-fuzzer > /dev/null 2>&1
39if [ $? -eq 0 ]; then
40 echo "PASS"
41else
42 echo "FAIL"
43fi
diff --git a/meta/recipes-support/lz4/lz4_1.9.3.bb b/meta/recipes-support/lz4/lz4_1.9.3.bb
deleted file mode 100644
index 00f2dd32fe..0000000000
--- a/meta/recipes-support/lz4/lz4_1.9.3.bb
+++ /dev/null
@@ -1,30 +0,0 @@
1SUMMARY = "Extremely Fast Compression algorithm"
2DESCRIPTION = "LZ4 is a very fast lossless compression algorithm, providing compression speed at 400 MB/s per core, scalable with multi-cores CPU. It also features an extremely fast decoder, with speed in multiple GB/s per core, typically reaching RAM speed limits on multi-core systems."
3
4LICENSE = "BSD | BSD-2-Clause | GPL-2.0"
5LIC_FILES_CHKSUM = "file://lib/LICENSE;md5=ebc2ea4814a64de7708f1571904b32cc \
6 file://programs/COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
7 file://LICENSE;md5=d57c0d21cb917fb4e0af2454aa48b956 \
8 "
9
10PE = "1"
11
12SRCREV = "d44371841a2f1728a3f36839fd4b7e872d0927d3"
13
14SRC_URI = "git://github.com/lz4/lz4.git;branch=release \
15 file://run-ptest \
16 "
17UPSTREAM_CHECK_GITTAGREGEX = "v(?P<pver>.*)"
18
19S = "${WORKDIR}/git"
20
21# Fixed in r118, which is larger than the current version.
22CVE_CHECK_WHITELIST += "CVE-2014-4715"
23
24EXTRA_OEMAKE = "PREFIX=${prefix} CC='${CC}' DESTDIR=${D} LIBDIR=${libdir} INCLUDEDIR=${includedir} BUILD_STATIC=no"
25
26do_install() {
27 oe_runmake install
28}
29
30BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-support/lz4/lz4_1.9.4.bb b/meta/recipes-support/lz4/lz4_1.9.4.bb
new file mode 100644
index 0000000000..51a854d44a
--- /dev/null
+++ b/meta/recipes-support/lz4/lz4_1.9.4.bb
@@ -0,0 +1,46 @@
1SUMMARY = "Extremely Fast Compression algorithm"
2DESCRIPTION = "LZ4 is a very fast lossless compression algorithm, providing compression speed at 400 MB/s per core, scalable with multi-cores CPU. It also features an extremely fast decoder, with speed in multiple GB/s per core, typically reaching RAM speed limits on multi-core systems."
3HOMEPAGE = "https://github.com/lz4/lz4"
4
5LICENSE = "BSD-2-Clause | GPL-2.0-only"
6LIC_FILES_CHKSUM = "file://lib/LICENSE;md5=5cd5f851b52ec832b10eedb3f01f885a \
7 file://programs/COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
8 file://LICENSE;md5=c5cc3cd6f9274b4d32988096df9c3ec3 \
9 "
10
11PE = "1"
12
13SRCREV = "5ff839680134437dbf4678f3d0c7b371d84f4964"
14
15SRC_URI = "git://github.com/lz4/lz4.git;branch=release;protocol=https \
16 file://run-ptest \
17 "
18UPSTREAM_CHECK_GITTAGREGEX = "v(?P<pver>.*)"
19
20S = "${WORKDIR}/git"
21
22inherit ptest
23
24CVE_STATUS[CVE-2014-4715] = "fixed-version: Fixed in r118, which is larger than the current version."
25
26EXTRA_OEMAKE = "PREFIX=${prefix} CC='${CC}' CFLAGS='${CFLAGS}' DESTDIR=${D} LIBDIR=${libdir} INCLUDEDIR=${includedir} BUILD_STATIC=no"
27
28do_install() {
29 oe_runmake install
30}
31
32BBCLASSEXTEND = "native nativesdk"
33
34RDEPENDS:${PN}-ptest += "bash"
35
36do_compile_ptest() {
37 oe_runmake -C ${B}/tests/
38}
39
40do_install_ptest() {
41 install -d ${D}${PTEST_PATH}/tests/
42 install --mode=755 ${B}/tests/frametest ${D}${PTEST_PATH}/tests/
43 sed -i "s#@PTEST_PATH@#${PTEST_PATH}#g" ${D}${PTEST_PATH}/run-ptest
44
45}
46
diff --git a/meta/recipes-support/lzo/lzo/0001-Use-memcpy-instead-of-reinventing-it.patch b/meta/recipes-support/lzo/lzo/0001-Use-memcpy-instead-of-reinventing-it.patch
index db3a70e803..a0d2502d24 100644
--- a/meta/recipes-support/lzo/lzo/0001-Use-memcpy-instead-of-reinventing-it.patch
+++ b/meta/recipes-support/lzo/lzo/0001-Use-memcpy-instead-of-reinventing-it.patch
@@ -10,7 +10,15 @@ Change suggested by Julian Taylor.
10 10
11Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=757037 11Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=757037
12 12
13Upstream-Status: Pending 13RP: Patch is still in debian as of 20220524 in a revised form:
14https://sources.debian.org/patches/lzo2/2.10-2/
15https://sources.debian.org/patches/lzo2/2.10-2/0001-Conditionally-replace-reinvention-of-memcpy-with-cal.patch/
16It was submitted in 2015, no reply to an email from RP in 2022 either.
17
18We likely need this in OE to prevent against unaligned accesses
19on systems such as armv5.
20
21Upstream-Status: Inactive-Upstream
14Signed-off-by: Saul Wold <sgw@linux.intel.com> 22Signed-off-by: Saul Wold <sgw@linux.intel.com>
15--- 23---
16 minilzo/minilzo.c | 14 ++++++++++++++ 24 minilzo/minilzo.c | 14 ++++++++++++++
diff --git a/meta/recipes-support/lzo/lzo_2.10.bb b/meta/recipes-support/lzo/lzo_2.10.bb
index 8eefec3cc9..195c2f2939 100644
--- a/meta/recipes-support/lzo/lzo_2.10.bb
+++ b/meta/recipes-support/lzo/lzo_2.10.bb
@@ -1,7 +1,9 @@
1SUMMARY = "Lossless data compression library" 1SUMMARY = "Lossless data compression library"
2DESCRIPTION = "A portable lossless data compression library written in \
3ANSI C that offers pretty fast compression and *extremely* fast decompression. "
2HOMEPAGE = "http://www.oberhumer.com/opensource/lzo/" 4HOMEPAGE = "http://www.oberhumer.com/opensource/lzo/"
3SECTION = "libs" 5SECTION = "libs"
4LICENSE = "GPLv2+" 6LICENSE = "GPL-2.0-or-later"
5LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ 7LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
6 file://src/lzo_init.c;beginline=5;endline=25;md5=9ae697ca01829b0a383c5d2d163e0108" 8 file://src/lzo_init.c;beginline=5;endline=25;md5=9ae697ca01829b0a383c5d2d163e0108"
7 9
@@ -16,6 +18,8 @@ SRC_URI[sha256sum] = "c0f892943208266f9b6543b3ae308fab6284c5c90e627931446fb49b42
16 18
17inherit autotools ptest 19inherit autotools ptest
18 20
21CVE_PRODUCT = "lzo oberhumer:lzo2"
22
19EXTRA_OECONF = "--enable-shared" 23EXTRA_OECONF = "--enable-shared"
20 24
21do_install_ptest() { 25do_install_ptest() {
diff --git a/meta/recipes-support/lzop/lzop_1.04.bb b/meta/recipes-support/lzop/lzop_1.04.bb
index b50c230437..d9b3524b67 100644
--- a/meta/recipes-support/lzop/lzop_1.04.bb
+++ b/meta/recipes-support/lzop/lzop_1.04.bb
@@ -5,9 +5,10 @@ gzip are much higher compression and decompression speed at the cost of some \n\
5compression ratio. The lzop compression utility was designed with the goals \n\ 5compression ratio. The lzop compression utility was designed with the goals \n\
6of reliability, speed, portability and with reasonable drop-in compatibility \n\ 6of reliability, speed, portability and with reasonable drop-in compatibility \n\
7to gzip." 7to gzip."
8HOMEPAGE = "http://www.lzop.org/"
8DEPENDS += "lzo" 9DEPENDS += "lzo"
9 10
10LICENSE = "GPLv2+" 11LICENSE = "GPL-2.0-or-later"
11LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ 12LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
12 file://src/lzop.c;beginline=5;endline=21;md5=23d767de7754eb24b9e900b025cf7fc8" 13 file://src/lzop.c;beginline=5;endline=21;md5=23d767de7754eb24b9e900b025cf7fc8"
13 14
@@ -19,7 +20,7 @@ SRC_URI[sha256sum] = "7e72b62a8a60aff5200a047eea0773a8fb205caf7acbe1774d95147f30
19 20
20inherit autotools 21inherit autotools
21 22
22do_configure_prepend () { 23do_configure:prepend () {
23 install -Dm 0644 ${WORKDIR}/acinclude.m4 ${S}/acinclude.m4 24 install -Dm 0644 ${WORKDIR}/acinclude.m4 ${S}/acinclude.m4
24} 25}
25 26
diff --git a/meta/recipes-support/mpfr/mpfr_4.1.0.bb b/meta/recipes-support/mpfr/mpfr_4.1.0.bb
deleted file mode 100644
index 82b5516f26..0000000000
--- a/meta/recipes-support/mpfr/mpfr_4.1.0.bb
+++ /dev/null
@@ -1,18 +0,0 @@
1SUMMARY = "C library for multiple-precision floating-point computations with exact rounding"
2HOMEPAGE = "https://www.mpfr.org/"
3LICENSE = "LGPLv3+"
4SECTION = "devel"
5
6inherit autotools texinfo
7
8LIC_FILES_CHKSUM = "file://COPYING;md5=1ebbd3e34237af26da5dc08a4e440464 \
9 file://COPYING.LESSER;md5=3000208d539ec061b899bce1d9ce9404 \
10 "
11DEPENDS = "gmp autoconf-archive"
12
13SRC_URI = "https://www.mpfr.org/mpfr-${PV}/mpfr-${PV}.tar.xz"
14SRC_URI[sha256sum] = "0c98a3f1732ff6ca4ea690552079da9c597872d30e96ec28414ee23c95558a7f"
15
16UPSTREAM_CHECK_URI = "http://www.mpfr.org/mpfr-current/"
17
18BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-support/mpfr/mpfr_4.2.1.bb b/meta/recipes-support/mpfr/mpfr_4.2.1.bb
new file mode 100644
index 0000000000..a2067e1036
--- /dev/null
+++ b/meta/recipes-support/mpfr/mpfr_4.2.1.bb
@@ -0,0 +1,19 @@
1SUMMARY = "C library for multiple-precision floating-point computations with exact rounding"
2DESCRIPTION = "The GNU Multiple Precision Floating-Point Reliable Library (GNU MPFR) is a GNU portable C library for arbitrary-precision binary floating-point computation with correct rounding, based on GNU Multi-Precision Library. MPFR's computation is both efficient and has a well-defined semantics: the functions are completely specified on all the possible operands and the results do not depend on the platform."
3HOMEPAGE = "https://www.mpfr.org/"
4LICENSE = "LGPL-3.0-or-later"
5SECTION = "devel"
6
7inherit autotools texinfo
8
9LIC_FILES_CHKSUM = "file://COPYING;md5=1ebbd3e34237af26da5dc08a4e440464 \
10 file://COPYING.LESSER;md5=3000208d539ec061b899bce1d9ce9404 \
11 "
12DEPENDS = "gmp autoconf-archive-native"
13
14SRC_URI = "https://www.mpfr.org/mpfr-${PV}/mpfr-${PV}.tar.xz"
15SRC_URI[sha256sum] = "277807353a6726978996945af13e52829e3abd7a9a5b7fb2793894e18f1fcbb2"
16
17UPSTREAM_CHECK_URI = "http://www.mpfr.org/mpfr-current/"
18
19BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-support/nettle/nettle/dlopen-test.patch b/meta/recipes-support/nettle/nettle/dlopen-test.patch
deleted file mode 100644
index ab9b91f88b..0000000000
--- a/meta/recipes-support/nettle/nettle/dlopen-test.patch
+++ /dev/null
@@ -1,29 +0,0 @@
1Remove the relative path for libnettle.so so the test
2program can find it.
3Relative paths are not suitable, as the folder strucure for ptest
4is different from the one expected by the nettle testsuite.
5
6Upstream-Status: Inappropriate [embedded specific]
7
8Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
9Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
10---
11 testsuite/dlopen-test.c | 2 +-
12 1 file changed, 1 insertion(+), 1 deletion(-)
13
14diff --git a/testsuite/dlopen-test.c b/testsuite/dlopen-test.c
15index 4265bf7..1a25d17 100644
16--- a/testsuite/dlopen-test.c
17+++ b/testsuite/dlopen-test.c
18@@ -15,7 +15,7 @@ int
19 main (int argc UNUSED, char **argv UNUSED)
20 {
21 #if HAVE_LIBDL
22- void *handle = dlopen ("../libnettle." SO_EXT, RTLD_NOW);
23+ void *handle = dlopen ("libnettle.so", RTLD_NOW);
24 int (*get_version)(void);
25 if (!handle)
26 {
27--
282.17.1
29
diff --git a/meta/recipes-support/nettle/nettle/run-ptest b/meta/recipes-support/nettle/nettle/run-ptest
index b90bed66d2..61a43c78f1 100644
--- a/meta/recipes-support/nettle/nettle/run-ptest
+++ b/meta/recipes-support/nettle/nettle/run-ptest
@@ -6,31 +6,35 @@ failed=0
6all=0 6all=0
7 7
8for f in *-test; do 8for f in *-test; do
9 if [ "$f" = "sha1-huge-test" ] ; then 9 case "$f" in
10 echo "SKIP: $f (skipped for ludicrous run time)" 10 "sha1-huge-test")
11 continue 11 echo "SKIP: $f (long run time)"
12 fi
13
14 "./$f"
15 case "$?" in
16 0)
17 echo "PASS: $f"
18 all=$((all + 1))
19 ;; 12 ;;
20 77) 13 "symbols-test")
21 echo "SKIP: $f" 14 echo "SKIP: $f (needs static libraries)"
22 ;; 15 ;;
23 *) 16 *)
24 echo "FAIL: $f" 17 "./$f"
25 failed=$((failed + 1)) 18 case "$?" in
26 all=$((all + 1)) 19 0)
20 echo "PASS: $f"
21 all=$((all + 1))
22 ;;
23 77)
24 echo "SKIP: $f"
25 ;;
26 *)
27 echo "FAIL: $f"
28 failed=$((failed + 1))
29 all=$((all + 1))
30 ;;
31 esac
27 ;; 32 ;;
28 esac 33 esac
29done 34done
30 35
31if [ "$failed" -eq 0 ] ; then 36if [ "$failed" -eq 0 ] ; then
32 echo "All $all tests passed" 37 echo "All $all tests passed"
33else 38else
34 echo "$failed of $all tests failed" 39 echo "$failed of $all tests failed"
35fi 40fi
36
diff --git a/meta/recipes-support/nettle/nettle_3.7.1.bb b/meta/recipes-support/nettle/nettle_3.9.1.bb
index d6bb1c84c6..396708cf87 100644
--- a/meta/recipes-support/nettle/nettle_3.7.1.bb
+++ b/meta/recipes-support/nettle/nettle_3.9.1.bb
@@ -1,10 +1,11 @@
1SUMMARY = "A low level cryptographic library" 1SUMMARY = "A low level cryptographic library"
2DESCRIPTION = "Nettle is a cryptographic library that is designed to fit easily in more or less any context: In crypto toolkits for object-oriented languages (C++, Python, Pike, ...), in applications like LSH or GNUPG, or even in kernel space."
2HOMEPAGE = "http://www.lysator.liu.se/~nisse/nettle/" 3HOMEPAGE = "http://www.lysator.liu.se/~nisse/nettle/"
3DESCRIPTION = "It tries to solve a problem of providing a common set of \ 4DESCRIPTION = "It tries to solve a problem of providing a common set of \
4cryptographic algorithms for higher-level applications by implementing a \ 5cryptographic algorithms for higher-level applications by implementing a \
5context-independent set of cryptographic algorithms" 6context-independent set of cryptographic algorithms"
6SECTION = "libs" 7SECTION = "libs"
7LICENSE = "LGPLv3+ | GPLv2+" 8LICENSE = "LGPL-3.0-or-later | GPL-2.0-or-later"
8 9
9LIC_FILES_CHKSUM = "file://COPYING.LESSERv3;md5=6a6a8e020838b23406c81b19c1d46df6 \ 10LIC_FILES_CHKSUM = "file://COPYING.LESSERv3;md5=6a6a8e020838b23406c81b19c1d46df6 \
10 file://COPYINGv2;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ 11 file://COPYINGv2;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
@@ -19,38 +20,42 @@ SRC_URI = "${GNU_MIRROR}/${BPN}/${BP}.tar.gz \
19 file://check-header-files-of-openssl-only-if-enable_.patch \ 20 file://check-header-files-of-openssl-only-if-enable_.patch \
20 " 21 "
21 22
22SRC_URI_append_class-target = "\ 23SRC_URI[sha256sum] = "ccfeff981b0ca71bbd6fbcb054f407c60ffb644389a5be80d6716d5b550c6ce3"
23 file://dlopen-test.patch \
24 "
25
26SRC_URI[sha256sum] = "156621427c7b00a75ff9b34b770b95d34f80ef7a55c3407de94b16cbf436c42e"
27 24
28UPSTREAM_CHECK_REGEX = "nettle-(?P<pver>\d+(\.\d+)+)\.tar" 25UPSTREAM_CHECK_REGEX = "nettle-(?P<pver>\d+(\.\d+)+)\.tar"
29 26
30inherit autotools ptest multilib_header 27inherit autotools ptest multilib_header lib_package
31 28
32EXTRA_AUTORECONF += "--exclude=aclocal" 29EXTRA_AUTORECONF += "--exclude=aclocal"
33 30
34EXTRA_OECONF = "--disable-openssl" 31EXTRA_OECONF = "--disable-openssl"
35 32
33EXTRA_OECONF:append:armv7a = "${@bb.utils.contains("TUNE_FEATURES","neon",""," --disable-arm-neon --disable-fat",d)}"
34EXTRA_OECONF:append:armv7ve = "${@bb.utils.contains("TUNE_FEATURES","neon",""," --disable-arm-neon --disable-fat",d)}"
35
36do_compile_ptest() { 36do_compile_ptest() {
37 oe_runmake buildtest 37 oe_runmake buildtest
38} 38}
39 39
40do_install_append() { 40do_install:append() {
41 oe_multilib_header nettle/version.h 41 oe_multilib_header nettle/version.h
42} 42}
43 43
44do_install_ptest() { 44do_install_ptest() {
45 install -d ${D}${PTEST_PATH}/testsuite/ 45 install -d ${D}${PTEST_PATH}/testsuite/
46 install ${S}/testsuite/gold-bug.txt ${D}${PTEST_PATH}/testsuite/
47 install ${S}/testsuite/*-test ${D}${PTEST_PATH}/testsuite/
48 # tools can be found in PATH, not in ../tools/
49 sed -i -e 's|../tools/||' ${D}${PTEST_PATH}/testsuite/*-test
50 install ${B}/testsuite/*-test ${D}${PTEST_PATH}/testsuite/ 46 install ${B}/testsuite/*-test ${D}${PTEST_PATH}/testsuite/
47 install ${S}/testsuite/*-test ${D}${PTEST_PATH}/testsuite/
48 install ${S}/testsuite/gold-bug.txt ${D}${PTEST_PATH}/testsuite/
49
50 # Install a symlink for dlopen-test
51 ln -sr ${D}${libdir}/libnettle.so.*.* ${D}${PTEST_PATH}/libnettle.so
52 # These examples are needed for pkcs1-conv-test
53 install ${B}/examples/rsa-sign ${B}/examples/rsa-verify ${D}${PTEST_PATH}/testsuite/
54 # Fix build-time relative paths
55 sed -i -e 's|../tools/|${bindir}/|g' ${D}${PTEST_PATH}/testsuite/*-test
56 sed -i -e 's|../examples/|./|g' ${D}${PTEST_PATH}/testsuite/*-test
51} 57}
52 58
53RDEPENDS_${PN}-ptest += "${PN}-dev" 59RDEPENDS:${PN}-ptest += "${PN}-bin"
54INSANE_SKIP_${PN}-ptest += "dev-deps"
55 60
56BBCLASSEXTEND = "native nativesdk" 61BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-support/nghttp2/nghttp2_1.61.0.bb b/meta/recipes-support/nghttp2/nghttp2_1.61.0.bb
new file mode 100644
index 0000000000..ad85576dcb
--- /dev/null
+++ b/meta/recipes-support/nghttp2/nghttp2_1.61.0.bb
@@ -0,0 +1,28 @@
1SUMMARY = "HTTP/2 C Library and tools"
2HOMEPAGE = "https://nghttp2.org/"
3SECTION = "libs"
4LICENSE = "MIT"
5LIC_FILES_CHKSUM = "file://COPYING;md5=764abdf30b2eadd37ce47dcbce0ea1ec"
6
7SRC_URI = "${GITHUB_BASE_URI}/download/v${PV}/nghttp2-${PV}.tar.xz"
8SRC_URI[sha256sum] = "c0e660175b9dc429f11d25b9507a834fb752eea9135ab420bb7cb7e9dbcc9654"
9
10inherit cmake manpages python3native github-releases
11PACKAGECONFIG[manpages] = ""
12
13# examples are never installed, and don't need to be built in the
14# first place
15EXTRA_OECMAKE = "-DENABLE_EXAMPLES=OFF -DENABLE_APP=OFF -DENABLE_HPACK_TOOLS=OFF -DENABLE_PYTHON_BINDINGS=OFF"
16
17PACKAGES =+ "lib${BPN} ${PN}-proxy "
18
19RDEPENDS:${PN} = "${PN}-proxy (>= ${PV})"
20RDEPENDS:${PN}:class-native = ""
21RDEPENDS:${PN}-proxy = "openssl python3-core python3-io python3-shell"
22
23ALLOW_EMPTY:${PN} = "1"
24FILES:${PN} = ""
25FILES:lib${BPN} = "${libdir}/*${SOLIBS}"
26FILES:${PN}-proxy = "${bindir}/nghttpx ${datadir}/${BPN}/fetch-ocsp-response"
27
28BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-support/npth/npth/musl-fix.patch b/meta/recipes-support/npth/npth/musl-fix.patch
new file mode 100644
index 0000000000..fabe78b14c
--- /dev/null
+++ b/meta/recipes-support/npth/npth/musl-fix.patch
@@ -0,0 +1,37 @@
1From 417abd56fd7bf45cd4948414050615cb1ad59134 Mon Sep 17 00:00:00 2001
2From: NIIBE Yutaka <gniibe@fsij.org>
3Date: Fri, 1 Mar 2024 13:53:52 +0900
4Subject: [PATCH] Fix INSERT_EXPOSE_RWLOCK_API for musl C library.
5
6* configure.ac: Add a case for musl system.
7
8Upstream-Status: Backport [https://git.gnupg.org/cgi-bin/gitweb.cgi?p=npth.git;a=commit;h=417abd56fd7bf45cd4948414050615cb1ad59134]
9Signed-off-by: Alexander Kanavin <alex@linutronix.de>
10--
11
12GnuPG-bug-id: 5664
13Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
14---
15 configure.ac | 5 ++++-
16 1 file changed, 4 insertions(+), 1 deletion(-)
17
18diff --git a/configure.ac b/configure.ac
19index c1091b1..576a26e 100644
20--- a/configure.ac
21+++ b/configure.ac
22@@ -381,7 +381,10 @@ fi
23 AC_SUBST(INSERT_NO_RWLOCK)
24
25 case "${host}" in
26- *-*-linux*|*-*-gnu*)
27+ *-*-linux-musl*)
28+ INSERT_EXPOSE_RWLOCK_API="1"
29+ ;;
30+ *-*-linux-gnu*|*-*-gnu*)
31 INSERT_EXPOSE_RWLOCK_API="defined(__USE_UNIX98) || defined(__USE_XOPEN2K)"
32 ;;
33 *)
34--
352.30.2
36
37
diff --git a/meta/recipes-support/npth/npth/pkgconfig.patch b/meta/recipes-support/npth/npth/pkgconfig.patch
deleted file mode 100644
index b6a12e7309..0000000000
--- a/meta/recipes-support/npth/npth/pkgconfig.patch
+++ /dev/null
@@ -1,49 +0,0 @@
1Added npth pkgconfig file
2
3Upstream-Status: Pending
4
5Signed-off-by: Saul Wold <sgw@linux.intel.com>
6
7Index: npth-1.1/src/npth.pc.in
8===================================================================
9--- /dev/null
10+++ npth-1.1/src/npth.pc.in
11@@ -0,0 +1,10 @@
12+prefix=@prefix@
13+exec_prefix=@exec_prefix@
14+libdir=@libdir@
15+includedir=@includedir@
16+
17+Name: npth
18+Description: a new portable posix threading library
19+Version: @VERSION@
20+Libs: -L${libdir} -lnpth -lpthread
21+Cflags: -I${includedir}
22Index: npth-1.1/src/Makefile.am
23===================================================================
24--- npth-1.1.orig/src/Makefile.am
25+++ npth-1.1/src/Makefile.am
26@@ -27,8 +27,10 @@
27 # License along with this program; if not, see <http://www.gnu.org/licenses/>.
28
29 ## Process this file with automake to produce Makefile.in
30+pkgconfigdir = $(libdir)/pkgconfig
31+pkgconfig_DATA = npth.pc
32
33-EXTRA_DIST = libnpth.vers
34+EXTRA_DIST = libnpth.vers npth.pc
35 # versioninfo.rc.in
36 nodist_include_HEADERS = npth.h
37
38Index: npth-1.1/configure.ac
39===================================================================
40--- npth-1.1.orig/configure.ac
41+++ npth-1.1/configure.ac
42@@ -337,6 +337,7 @@ src/Makefile
43 w32/Makefile
44 tests/Makefile])
45 AC_CONFIG_FILES(npth-config, chmod +x npth-config)
46+AC_CONFIG_FILES([src/npth.pc])
47 AC_OUTPUT
48
49 echo "
diff --git a/meta/recipes-support/npth/npth_1.6.bb b/meta/recipes-support/npth/npth_1.6.bb
deleted file mode 100644
index 88484acec3..0000000000
--- a/meta/recipes-support/npth/npth_1.6.bb
+++ /dev/null
@@ -1,27 +0,0 @@
1SUMMARY = "New GNU Portable Threads library"
2HOMEPAGE = "https://www.gnu.org/software/pth/"
3SECTION = "libs"
4LICENSE = "LGPLv2+"
5LIC_FILES_CHKSUM = "\
6 file://COPYING.LIB;md5=2caced0b25dfefd4c601d92bd15116de\
7 "
8UPSTREAM_CHECK_URI = "https://gnupg.org/download/index.html"
9SRC_URI = "${GNUPG_MIRROR}/npth/npth-${PV}.tar.bz2 \
10 file://pkgconfig.patch \
11 "
12
13SRC_URI[md5sum] = "375d1a15ad969f32d25f1a7630929854"
14SRC_URI[sha256sum] = "1393abd9adcf0762d34798dc34fdcf4d0d22a8410721e76f1e3afcd1daa4e2d1"
15
16BINCONFIG = "${bindir}/npth-config"
17
18inherit autotools binconfig-disabled multilib_header
19
20FILES_${PN} = "${libdir}/libnpth.so.*"
21FILES_${PN}-dev += "${bindir}/npth-config"
22
23do_install_append() {
24 oe_multilib_header npth.h
25}
26
27BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-support/npth/npth_1.7.bb b/meta/recipes-support/npth/npth_1.7.bb
new file mode 100644
index 0000000000..0cf35565a3
--- /dev/null
+++ b/meta/recipes-support/npth/npth_1.7.bb
@@ -0,0 +1,21 @@
1SUMMARY = "New GNU Portable Threads library"
2DESCRIPTION = "nPth is a library to provide the GNU Pth API and thus a non-preemptive threads implementation. "
3HOMEPAGE = "https://gnupg.org/software/npth/"
4SECTION = "libs"
5LICENSE = "LGPL-2.0-or-later"
6LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=2caced0b25dfefd4c601d92bd15116de"
7UPSTREAM_CHECK_URI = "https://gnupg.org/download/index.html"
8
9SRC_URI = "${GNUPG_MIRROR}/npth/npth-${PV}.tar.bz2 \
10 file://musl-fix.patch \
11 "
12
13SRC_URI[sha256sum] = "8589f56937b75ce33b28d312fccbf302b3b71ec3f3945fde6aaa74027914ad05"
14
15inherit autotools multilib_header
16
17do_install:append() {
18 oe_multilib_header npth.h
19}
20
21BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-support/nss-myhostname/nss-myhostname_0.3.bb b/meta/recipes-support/nss-myhostname/nss-myhostname_0.3.bb
index 074f713205..742e77eb18 100644
--- a/meta/recipes-support/nss-myhostname/nss-myhostname_0.3.bb
+++ b/meta/recipes-support/nss-myhostname/nss-myhostname_0.3.bb
@@ -3,7 +3,7 @@ DESCRIPTION = "plugin for the GNU Name Service Switch (NSS) functionality of \
3the GNU C Library (glibc) providing host name resolution for the locally \ 3the GNU C Library (glibc) providing host name resolution for the locally \
4configured system hostname as returned by gethostname(2)." 4configured system hostname as returned by gethostname(2)."
5HOMEPAGE = "http://0pointer.de/lennart/projects/nss-myhostname/" 5HOMEPAGE = "http://0pointer.de/lennart/projects/nss-myhostname/"
6LICENSE = "LGPLv2.1" 6LICENSE = "LGPL-2.1-only"
7LIC_FILES_CHKSUM = "file://LICENSE;md5=2d5025d4aa3495befef8f17206a5b0a1" 7LIC_FILES_CHKSUM = "file://LICENSE;md5=2d5025d4aa3495befef8f17206a5b0a1"
8 8
9SRC_URI = "http://0pointer.de/lennart/projects/nss-myhostname/nss-myhostname-${PV}.tar.gz \ 9SRC_URI = "http://0pointer.de/lennart/projects/nss-myhostname/nss-myhostname-${PV}.tar.gz \
@@ -14,18 +14,18 @@ SRC_URI[sha256sum] = "2ba744ea8d578d1c57c85884e94a3042ee17843a5294434d3a7f6c4d67
14 14
15inherit autotools features_check 15inherit autotools features_check
16 16
17COMPATIBLE_HOST_libc-musl = 'null' 17COMPATIBLE_HOST:libc-musl = 'null'
18 18
19# The systemd has its own copy of nss-myhostname 19# The systemd has its own copy of nss-myhostname
20CONFLICT_DISTRO_FEATURES = "systemd" 20CONFLICT_DISTRO_FEATURES = "systemd"
21 21
22pkg_postinst_${PN} () { 22pkg_postinst:${PN} () {
23 sed -e '/^hosts:/s/\s*\<myhostname\>//' \ 23 sed -e '/^hosts:/s/\s*\<myhostname\>//' \
24 -e 's/\(^hosts:.*\)\(\<files\>\)\(.*\)\(\<dns\>\)\(.*\)/\1\2 myhostname \3\4\5/' \ 24 -e 's/\(^hosts:.*\)\(\<files\>\)\(.*\)\(\<dns\>\)\(.*\)/\1\2 myhostname \3\4\5/' \
25 -i $D${sysconfdir}/nsswitch.conf 25 -i $D${sysconfdir}/nsswitch.conf
26} 26}
27 27
28pkg_prerm_${PN} () { 28pkg_prerm:${PN} () {
29 sed -e '/^hosts:/s/\s*\<myhostname\>//' \ 29 sed -e '/^hosts:/s/\s*\<myhostname\>//' \
30 -e '/^hosts:/s/\s*myhostname//' \ 30 -e '/^hosts:/s/\s*myhostname//' \
31 -i $D${sysconfdir}/nsswitch.conf 31 -i $D${sysconfdir}/nsswitch.conf
diff --git a/meta/recipes-support/numactl/numactl/0001-define-run-test-target.patch b/meta/recipes-support/numactl/numactl/0001-define-run-test-target.patch
index 78ffb22f89..68b3e2491f 100644
--- a/meta/recipes-support/numactl/numactl/0001-define-run-test-target.patch
+++ b/meta/recipes-support/numactl/numactl/0001-define-run-test-target.patch
@@ -1,6 +1,9 @@
1rename test target as run-test 1From a5e1fa272f294e739d6caaf629968478796ca53a Mon Sep 17 00:00:00 2001
2From: Roy Li <rongqing.li@windriver.com>
3Date: Mon, 19 Oct 2020 14:42:11 -0700
4Subject: [PATCH] rename test target as run-test
2 5
3Upstream-Statue: Pending 6Upstream-Status: Pending
4 7
5test target not only compile the test files, but also run them, which is 8test target not only compile the test files, but also run them, which is
6not suitable for cross-compile environment, so rename it as run-test. 9not suitable for cross-compile environment, so rename it as run-test.
@@ -8,15 +11,16 @@ not suitable for cross-compile environment, so rename it as run-test.
8and define test target to compile the test files. 11and define test target to compile the test files.
9 12
10Signed-off-by: Roy Li <rongqing.li@windriver.com> 13Signed-off-by: Roy Li <rongqing.li@windriver.com>
14
11--- 15---
12 Makefile.am | 4 +++- 16 Makefile.am | 4 +++-
13 1 file changed, 3 insertions(+), 1 deletion(-) 17 1 file changed, 3 insertions(+), 1 deletion(-)
14 18
15diff --git a/Makefile.am b/Makefile.am 19diff --git a/Makefile.am b/Makefile.am
16index b6db339..de176c4 100644 20index da01d27..c738b93 100644
17--- a/Makefile.am 21--- a/Makefile.am
18+++ b/Makefile.am 22+++ b/Makefile.am
19@@ -124,7 +124,9 @@ regress2: $(check_PROGRAMS) 23@@ -126,7 +126,9 @@ regress2: $(check_PROGRAMS)
20 test_numademo: numademo 24 test_numademo: numademo
21 ./numademo -t -e 10M 25 ./numademo -t -e 10M
22 26
@@ -27,6 +31,3 @@ index b6db339..de176c4 100644
27 31
28 TESTS_ENVIRONMENT = builddir='$(builddir)'; export builddir; 32 TESTS_ENVIRONMENT = builddir='$(builddir)'; export builddir;
29 33
30--
311.9.1
32
diff --git a/meta/recipes-support/numactl/numactl/Fix-the-test-output-format.patch b/meta/recipes-support/numactl/numactl/Fix-the-test-output-format.patch
index 9812ecc8b3..8345f71d72 100644
--- a/meta/recipes-support/numactl/numactl/Fix-the-test-output-format.patch
+++ b/meta/recipes-support/numactl/numactl/Fix-the-test-output-format.patch
@@ -1,4 +1,4 @@
1From 59fd750a84bbe5874dec936d2bee9ef11a1b6505 Mon Sep 17 00:00:00 2001 1From 29f811d9d381f2ab54b3c8cef77334e32970ef09 Mon Sep 17 00:00:00 2001
2From: Li xin <lixin.fnst@cn.fujitsu.com> 2From: Li xin <lixin.fnst@cn.fujitsu.com>
3Date: Tue, 21 Jul 2015 02:01:22 +0900 3Date: Tue, 21 Jul 2015 02:01:22 +0900
4Subject: [PATCH] Fix the test output format 4Subject: [PATCH] Fix the test output format
@@ -7,24 +7,26 @@ Upstream-Status: Pending
7 7
8Signed-off-by: Roy Li <rongqing.li@windriver.com> 8Signed-off-by: Roy Li <rongqing.li@windriver.com>
9Signed-off-by: Li Xin <lixin.fnst@cn.fujitsu.com> 9Signed-off-by: Li Xin <lixin.fnst@cn.fujitsu.com>
10Signed-off-by: Xiangyu Chen <xiangyu.chen@windriver.com>
11
10--- 12---
11 test/regress | 6 +++--- 13 test/regress | 6 +++---
12 test/regress2 | 11 +++++------ 14 test/regress2 | 11 +++++------
13 2 files changed, 8 insertions(+), 9 deletions(-) 15 2 files changed, 8 insertions(+), 9 deletions(-)
14 16
15diff --git a/test/regress b/test/regress 17diff --git a/test/regress b/test/regress
16index 2ce1705..d086a47 100755 18index f06b22f..2fdfacb 100755
17--- a/test/regress 19--- a/test/regress
18+++ b/test/regress 20+++ b/test/regress
19@@ -74,6 +74,7 @@ probe_hardware() 21@@ -78,6 +78,7 @@ probe_hardware()
20 if [ $numnodes -lt 2 ] ; then 22 if [ $numnodes -lt 2 ] ; then
21 echo "need at least two nodes with at least $NEEDPAGES each of" 23 echo "need at least two nodes with at least $NEEDPAGES each of"
22 echo "free memory for mempolicy regression tests" 24 echo "free memory for mempolicy regression tests"
23+ echo "FAIL: numa regress" 25+ echo "SKIP: numa regress"
24 exit 77 # Skip test 26 exit 77 # Skip test
25 fi 27 fi
26 } 28 }
27@@ -207,10 +208,9 @@ main() 29@@ -209,10 +210,9 @@ main()
28 rm A B 30 rm A B
29 31
30 if [ "$EXIT" = 0 ] ; then 32 if [ "$EXIT" = 0 ] ; then
@@ -59,6 +61,3 @@ index aa6ea41..450c510 100755
59 } 61 }
60 62
61 # still broken 63 # still broken
62--
631.8.4.2
64
diff --git a/meta/recipes-support/numactl/numactl/run-ptest b/meta/recipes-support/numactl/numactl/run-ptest
index bf269da755..e019b0d364 100755
--- a/meta/recipes-support/numactl/numactl/run-ptest
+++ b/meta/recipes-support/numactl/numactl/run-ptest
@@ -8,7 +8,11 @@ if ! numactl -s | grep -q "No NUMA support available on this system."; then
8 if numademo -t -e 10M; then 8 if numademo -t -e 10M; then
9 echo "PASS: numademo" 9 echo "PASS: numademo"
10 else 10 else
11 echo "FAIL: numademo" 11 if [ "$?" = 77 ] ; then
12 echo "SKIP: numademo"
13 else
14 echo "FAIL: numademo"
15 fi
12 fi 16 fi
13else 17else
14 echo "SKIP: ./../test/bind_range" 18 echo "SKIP: ./../test/bind_range"
diff --git a/meta/recipes-support/numactl/numactl_git.bb b/meta/recipes-support/numactl/numactl_git.bb
index 6c8a667a41..bd16df91ec 100644
--- a/meta/recipes-support/numactl/numactl_git.bb
+++ b/meta/recipes-support/numactl/numactl_git.bb
@@ -3,17 +3,17 @@ HOMEPAGE = "http://oss.sgi.com/projects/libnuma/"
3DESCRIPTION = "Simple NUMA policy support. It consists of a numactl program \ 3DESCRIPTION = "Simple NUMA policy support. It consists of a numactl program \
4to run other programs with a specific NUMA policy and a libnuma to do \ 4to run other programs with a specific NUMA policy and a libnuma to do \
5allocations with NUMA policy in applications." 5allocations with NUMA policy in applications."
6LICENSE = "GPL-2.0 & LGPL-2.1" 6LICENSE = "GPL-2.0-only & LGPL-2.1-only"
7SECTION = "apps" 7SECTION = "apps"
8 8
9inherit autotools-brokensep ptest 9inherit autotools-brokensep ptest
10 10
11LIC_FILES_CHKSUM = "file://README.md;beginline=19;endline=32;md5=f8ff2391624f28e481299f3f677b21bb" 11LIC_FILES_CHKSUM = "file://README.md;beginline=19;endline=32;md5=9f34c3af4ed6f3f5df0da5f3c0835a43"
12 12
13SRCREV = "dd6de072c92c892a86e18c0fd0dfa1ba57a9a05d" 13SRCREV = "3871b1c42fc71bceadafd745d2eff5dddfc2d67e"
14PV = "2.0.14" 14PV = "2.0.18"
15 15
16SRC_URI = "git://github.com/numactl/numactl \ 16SRC_URI = "git://github.com/numactl/numactl;branch=master;protocol=https \
17 file://Fix-the-test-output-format.patch \ 17 file://Fix-the-test-output-format.patch \
18 file://Makefile \ 18 file://Makefile \
19 file://run-ptest \ 19 file://run-ptest \
@@ -22,8 +22,8 @@ SRC_URI = "git://github.com/numactl/numactl \
22 22
23S = "${WORKDIR}/git" 23S = "${WORKDIR}/git"
24 24
25LDFLAGS_append_riscv64 = " -latomic" 25LDFLAGS:append:riscv64 = " -latomic"
26LDFLAGS_append_riscv32 = " -latomic" 26LDFLAGS:append:riscv32 = " -latomic"
27 27
28do_install() { 28do_install() {
29 oe_runmake DESTDIR=${D} prefix=${D}/usr install 29 oe_runmake DESTDIR=${D} prefix=${D}/usr install
@@ -56,4 +56,4 @@ do_install_ptest() {
56 install -m 0755 ${B}/.libs/numactl ${D}${PTEST_PATH}/ 56 install -m 0755 ${B}/.libs/numactl ${D}${PTEST_PATH}/
57} 57}
58 58
59RDEPENDS_${PN}-ptest = "bash" 59RDEPENDS:${PN}-ptest = "bash"
diff --git a/meta/recipes-support/p11-kit/files/fix-parallel-build-failures.patch b/meta/recipes-support/p11-kit/files/fix-parallel-build-failures.patch
new file mode 100644
index 0000000000..47df027106
--- /dev/null
+++ b/meta/recipes-support/p11-kit/files/fix-parallel-build-failures.patch
@@ -0,0 +1,33 @@
1It fails occasionally with missing generated header files:
2
3| ../git/common/asn1.c:42:10: fatal error: openssl.asn.h: No such file or directory
4| 42 | #include "openssl.asn.h"
5| | ^~~~~~~~~~~~~~~
6| compilation terminated.
7
8According to meson manual page:
9
10https://mesonbuild.com/Wrap-best-practices-and-tips.html#declare-generated-headers-explicitly
11
12'asn_h_dep' should be a dependency of static_library target 'libp11_asn1' to
13make sure that required header files generated before compile common/asn1.c.
14
15Upstream-Status: Submitted [https://github.com/p11-glue/p11-kit/pull/619]
16
17Signed-off-by: Kai Kang <kai.kang@windriver.com>
18---
19 common/meson.build | 1 +
20 1 file changed, 1 insertion(+)
21
22diff --git a/common/meson.build b/common/meson.build
23index dc86d7b..cc3ec48 100644
24--- a/common/meson.build
25+++ b/common/meson.build
26@@ -113,6 +113,7 @@ if with_asn1
27 'p11-asn1', libp11_asn1_sources,
28 gnu_symbol_visibility: 'hidden',
29 include_directories: configinc,
30+ dependencies: asn_h_dep,
31 )
32
33 libp11_asn1_dep = declare_dependency(
diff --git a/meta/recipes-support/p11-kit/p11-kit_0.23.22.bb b/meta/recipes-support/p11-kit/p11-kit_0.25.3.bb
index c539ecdbc6..b7ebd44abc 100644
--- a/meta/recipes-support/p11-kit/p11-kit_0.23.22.bb
+++ b/meta/recipes-support/p11-kit/p11-kit_0.25.3.bb
@@ -1,4 +1,6 @@
1SUMMARY = "Provides a way to load and enumerate PKCS#11 modules" 1SUMMARY = "Provides a way to load and enumerate PKCS#11 modules"
2DESCRIPTION = " Provides a standard configuration setup for installing PKCS#11 modules in such a way that they're discoverable. Also solves problems with coordinating the use of PKCS#11 by different components or libraries living in the same process."
3HOMEPAGE = "https://p11-glue.github.io/p11-glue/p11-kit.html"
2LICENSE = "BSD-3-Clause" 4LICENSE = "BSD-3-Clause"
3LIC_FILES_CHKSUM = "file://COPYING;md5=02933887f609807fbb57aa4237d14a50" 5LIC_FILES_CHKSUM = "file://COPYING;md5=02933887f609807fbb57aa4237d14a50"
4 6
@@ -6,10 +8,12 @@ inherit meson gettext pkgconfig gtk-doc bash-completion manpages
6 8
7DEPENDS = "libtasn1 libtasn1-native libffi" 9DEPENDS = "libtasn1 libtasn1-native libffi"
8 10
9DEPENDS_append = "${@' glib-2.0' if d.getVar('GTKDOC_ENABLED') == 'True' else ''}" 11DEPENDS:append = "${@' glib-2.0' if d.getVar('GTKDOC_ENABLED') == 'True' else ''}"
10 12
11SRC_URI = "git://github.com/p11-glue/p11-kit;branch=0.23" 13SRC_URI = "gitsm://github.com/p11-glue/p11-kit;branch=master;protocol=https \
12SRCREV = "bd97afbfe28d5fbbde95ce36ff7a8834fc0291ee" 14 file://fix-parallel-build-failures.patch \
15 "
16SRCREV = "917e02a3211dabbdea4b079cb598581dce84fda1"
13S = "${WORKDIR}/git" 17S = "${WORKDIR}/git"
14 18
15PACKAGECONFIG ??= "" 19PACKAGECONFIG ??= ""
@@ -18,13 +22,13 @@ PACKAGECONFIG[trust-paths] = "-Dtrust_paths=/etc/ssl/certs/ca-certificates.crt,,
18 22
19GTKDOC_MESON_OPTION = 'gtk_doc' 23GTKDOC_MESON_OPTION = 'gtk_doc'
20 24
21FILES_${PN} += " \ 25FILES:${PN} += " \
22 ${libdir}/p11-kit-proxy.so \ 26 ${libdir}/p11-kit-proxy.so \
23 ${libdir}/pkcs11/*.so \ 27 ${libdir}/pkcs11/*.so \
24 ${libdir}/pkcs11/*.la \ 28 ${libdir}/pkcs11/*.la \
25 ${systemd_user_unitdir}/*" 29 ${systemd_user_unitdir}/*"
26 30
27# PN contains p11-kit-proxy.so, a symlink to a loadable module 31# PN contains p11-kit-proxy.so, a symlink to a loadable module
28INSANE_SKIP_${PN} = "dev-so" 32INSANE_SKIP:${PN} = "dev-so"
29 33
30BBCLASSEXTEND = "nativesdk" 34BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-support/pinentry/pinentry-1.1.1/gpg-error_pkconf.patch b/meta/recipes-support/pinentry/pinentry-1.2.1/gpg-error_pkconf.patch
index 537735dba8..bb7e43b1e7 100644
--- a/meta/recipes-support/pinentry/pinentry-1.1.1/gpg-error_pkconf.patch
+++ b/meta/recipes-support/pinentry/pinentry-1.2.1/gpg-error_pkconf.patch
@@ -1,4 +1,4 @@
1From 7b60f1563ecdb7020c145de8a96cae1c0a66c595 Mon Sep 17 00:00:00 2001 1From 785777dc0bc6b69ff68c91547ec6b6634049662f Mon Sep 17 00:00:00 2001
2From: Armin Kuster <akuster@mvista.com> 2From: Armin Kuster <akuster@mvista.com>
3Date: Fri, 2 Sep 2005 11:50:01 +0000 3Date: Fri, 2 Sep 2005 11:50:01 +0000
4Subject: [PATCH] Add gtk+, avahi, dbus-0.34 (.36 coming soon) and 4Subject: [PATCH] Add gtk+, avahi, dbus-0.34 (.36 coming soon) and
@@ -11,14 +11,14 @@ Upstream-Status: Inappropriate [OE specific]
11Signed-off-by: Armin Kuster <akuster@mvista.com> 11Signed-off-by: Armin Kuster <akuster@mvista.com>
12 12
13--- 13---
14 m4/gpg-error.m4 | 141 ++---------------------------------------------- 14 m4/gpg-error.m4 | 160 ++----------------------------------------------
15 1 file changed, 4 insertions(+), 137 deletions(-) 15 1 file changed, 4 insertions(+), 156 deletions(-)
16 16
17diff --git a/m4/gpg-error.m4 b/m4/gpg-error.m4 17diff --git a/m4/gpg-error.m4 b/m4/gpg-error.m4
18index c9b235f..a4fd41c 100644 18index 4b5cd40..7dfbb83 100644
19--- a/m4/gpg-error.m4 19--- a/m4/gpg-error.m4
20+++ b/m4/gpg-error.m4 20+++ b/m4/gpg-error.m4
21@@ -25,141 +25,12 @@ dnl config script does not match the host specification the script 21@@ -26,160 +26,12 @@ dnl config script does not match the host specification the script
22 dnl is added to the gpg_config_script_warn variable. 22 dnl is added to the gpg_config_script_warn variable.
23 dnl 23 dnl
24 AC_DEFUN([AM_PATH_GPG_ERROR], 24 AC_DEFUN([AM_PATH_GPG_ERROR],
@@ -61,46 +61,81 @@ index c9b235f..a4fd41c 100644
61- min_gpg_error_version=ifelse([$1], ,1.33,$1) 61- min_gpg_error_version=ifelse([$1], ,1.33,$1)
62- ok=no 62- ok=no
63- 63-
64- if test "$prefix" = NONE ; then 64- AC_PATH_PROG(GPGRT_CONFIG, gpgrt-config, no, [$prefix/bin:$PATH])
65- prefix_option_expanded=/usr/local 65- if test "$GPGRT_CONFIG" != "no"; then
66- else 66- # Determine gpgrt_libdir
67- prefix_option_expanded="$prefix" 67- #
68- fi 68- # Get the prefix of gpgrt-config assuming it's something like:
69- if test "$exec_prefix" = NONE ; then 69- # <PREFIX>/bin/gpgrt-config
70- exec_prefix_option_expanded=$prefix_option_expanded 70- gpgrt_prefix=${GPGRT_CONFIG%/*/*}
71- else 71- possible_libdir1=${gpgrt_prefix}/lib
72- exec_prefix_option_expanded=$(prefix=$prefix_option_expanded eval echo $exec_prefix) 72- # Determine by using system libdir-format with CC, it's like:
73- fi 73- # Normal style: /usr/lib
74- libdir_option_expanded=$(prefix=$prefix_option_expanded exec_prefix=$exec_prefix_option_expanded eval echo $libdir) 74- # GNU cross style: /usr/<triplet>/lib
75- # Debian style: /usr/lib/<multiarch-name>
76- # Fedora/openSUSE style: /usr/lib, /usr/lib32 or /usr/lib64
77- # It is assumed that CC is specified to the one of host on cross build.
78- if libdir_candidates=$(${CC:-cc} -print-search-dirs | \
79- sed -n -e "/^libraries/{s/libraries: =//;s/:/\\
80-/g;p;}"); then
81- # From the output of -print-search-dirs, select valid pkgconfig dirs.
82- libdir_candidates=$(for dir in $libdir_candidates; do
83- if p=$(cd $dir 2>/dev/null && pwd); then
84- test -d "$p/pkgconfig" && echo $p;
85- fi
86- done)
75- 87-
76- if test -f $libdir_option_expanded/pkgconfig/gpg-error.pc; then 88- for possible_libdir0 in $libdir_candidates; do
77- gpgrt_libdir=$libdir_option_expanded 89- # possible_libdir0:
78- else 90- # Fallback candidate, the one of system-installed (by $CC)
79- if crt1_path=$(${CC:-cc} -print-file-name=crt1.o 2>/dev/null); then 91- # (/usr/<triplet>/lib, /usr/lib/<multiarch-name> or /usr/lib32)
80- if possible_libdir=$(cd ${crt1_path%/*} && pwd 2>/dev/null); then 92- # possible_libdir1:
81- if test -f $possible_libdir/pkgconfig/gpg-error.pc; then 93- # Another candidate, user-locally-installed
82- gpgrt_libdir=$possible_libdir 94- # (<gpgrt_prefix>/lib)
95- # possible_libdir2
96- # Most preferred
97- # (<gpgrt_prefix>/<triplet>/lib,
98- # <gpgrt_prefix>/lib/<multiarch-name> or <gpgrt_prefix>/lib32)
99- if test "${possible_libdir0##*/}" = "lib"; then
100- possible_prefix0=${possible_libdir0%/lib}
101- possible_prefix0_triplet=${possible_prefix0##*/}
102- if test -z "$possible_prefix0_triplet"; then
103- continue
104- fi
105- possible_libdir2=${gpgrt_prefix}/$possible_prefix0_triplet/lib
106- else
107- possible_prefix0=${possible_libdir0%%/lib*}
108- possible_libdir2=${gpgrt_prefix}${possible_libdir0#$possible_prefix0}
109- fi
110- if test -f ${possible_libdir2}/pkgconfig/gpg-error.pc; then
111- gpgrt_libdir=${possible_libdir2}
112- elif test -f ${possible_libdir1}/pkgconfig/gpg-error.pc; then
113- gpgrt_libdir=${possible_libdir1}
114- elif test -f ${possible_libdir0}/pkgconfig/gpg-error.pc; then
115- gpgrt_libdir=${possible_libdir0}
83- fi 116- fi
84- fi 117- if test -n "$gpgrt_libdir"; then break; fi
118- done
119- else
120- # When we cannot determine system libdir-format, use this:
121- gpgrt_libdir=${possible_libdir1}
85- fi 122- fi
123- else
124- unset GPGRT_CONFIG
86- fi 125- fi
87- 126-
88- if test "$GPG_ERROR_CONFIG" = "no" -a -n "$gpgrt_libdir"; then 127- if test -n "$gpgrt_libdir"; then
89- AC_PATH_PROG(GPGRT_CONFIG, gpgrt-config, no) 128- GPGRT_CONFIG="$GPGRT_CONFIG --libdir=$gpgrt_libdir"
90- if test "$GPGRT_CONFIG" = "no"; then 129- if $GPGRT_CONFIG gpg-error >/dev/null 2>&1; then
91- unset GPGRT_CONFIG 130- GPG_ERROR_CONFIG="$GPGRT_CONFIG gpg-error"
131- AC_MSG_NOTICE([Use gpgrt-config with $gpgrt_libdir as gpg-error-config])
132- gpg_error_config_version=`$GPG_ERROR_CONFIG --modversion`
92- else 133- else
93- GPGRT_CONFIG="$GPGRT_CONFIG --libdir=$gpgrt_libdir" 134- unset GPGRT_CONFIG
94- if $GPGRT_CONFIG gpg-error >/dev/null 2>&1; then
95- GPG_ERROR_CONFIG="$GPGRT_CONFIG gpg-error"
96- AC_MSG_NOTICE([Use gpgrt-config with $gpgrt_libdir as gpg-error-config])
97- gpg_error_config_version=`$GPG_ERROR_CONFIG --modversion`
98- else
99- unset GPGRT_CONFIG
100- fi
101- fi 135- fi
102- else 136- elif test "$GPG_ERROR_CONFIG" != "no"; then
103- gpg_error_config_version=`$GPG_ERROR_CONFIG --version` 137- gpg_error_config_version=`$GPG_ERROR_CONFIG --version`
138- unset GPGRT_CONFIG
104- fi 139- fi
105- if test "$GPG_ERROR_CONFIG" != "no"; then 140- if test "$GPG_ERROR_CONFIG" != "no"; then
106- req_major=`echo $min_gpg_error_version | \ 141- req_major=`echo $min_gpg_error_version | \
@@ -120,22 +155,6 @@ index c9b235f..a4fd41c 100644
120- fi 155- fi
121- fi 156- fi
122- fi 157- fi
123- if test -z "$GPGRT_CONFIG" -a -n "$gpgrt_libdir"; then
124- if test "$major" -gt 1 -o "$major" -eq 1 -a "$minor" -ge 33; then
125- AC_PATH_PROG(GPGRT_CONFIG, gpgrt-config, no)
126- if test "$GPGRT_CONFIG" = "no"; then
127- unset GPGRT_CONFIG
128- else
129- GPGRT_CONFIG="$GPGRT_CONFIG --libdir=$gpgrt_libdir"
130- if $GPGRT_CONFIG gpg-error >/dev/null 2>&1; then
131- GPG_ERROR_CONFIG="$GPGRT_CONFIG gpg-error"
132- AC_MSG_NOTICE([Use gpgrt-config with $gpgrt_libdir as gpg-error-config])
133- else
134- unset GPGRT_CONFIG
135- fi
136- fi
137- fi
138- fi
139- fi 158- fi
140- AC_MSG_CHECKING(for GPG Error - version >= $min_gpg_error_version) 159- AC_MSG_CHECKING(for GPG Error - version >= $min_gpg_error_version)
141+[ 160+[
@@ -164,7 +183,7 @@ index c9b235f..a4fd41c 100644
164 if test x"$gpg_error_config_host" != xnone ; then 183 if test x"$gpg_error_config_host" != xnone ; then
165 if test x"$gpg_error_config_host" != x"$host" ; then 184 if test x"$gpg_error_config_host" != x"$host" ; then
166 AC_MSG_WARN([[ 185 AC_MSG_WARN([[
167@@ -174,10 +45,6 @@ AC_DEFUN([AM_PATH_GPG_ERROR], 186@@ -194,10 +46,6 @@ AC_DEFUN([AM_PATH_GPG_ERROR],
168 fi 187 fi
169 fi 188 fi
170 else 189 else
diff --git a/meta/recipes-support/pinentry/pinentry-1.1.1/libassuan_pkgconf.patch b/meta/recipes-support/pinentry/pinentry-1.2.1/libassuan_pkgconf.patch
index f4aec2d1c3..f4aec2d1c3 100644
--- a/meta/recipes-support/pinentry/pinentry-1.1.1/libassuan_pkgconf.patch
+++ b/meta/recipes-support/pinentry/pinentry-1.2.1/libassuan_pkgconf.patch
diff --git a/meta/recipes-support/pinentry/pinentry_1.1.1.bb b/meta/recipes-support/pinentry/pinentry_1.2.1.bb
index 98577fe3ef..7daf80f36e 100644
--- a/meta/recipes-support/pinentry/pinentry_1.1.1.bb
+++ b/meta/recipes-support/pinentry/pinentry_1.2.1.bb
@@ -5,7 +5,7 @@ DESCRIPTION = "\
5 http://www.gnupg.org/aegypten/ for details." 5 http://www.gnupg.org/aegypten/ for details."
6 6
7HOMEPAGE = "http://www.gnupg.org/related_software/pinentry/index.en.html" 7HOMEPAGE = "http://www.gnupg.org/related_software/pinentry/index.en.html"
8LICENSE = "GPLv2" 8LICENSE = "GPL-2.0-only"
9LIC_FILES_CHKSUM = "file://COPYING;md5=cbbd794e2a0a289b9dfcc9f513d1996e" 9LIC_FILES_CHKSUM = "file://COPYING;md5=cbbd794e2a0a289b9dfcc9f513d1996e"
10 10
11DEPENDS = "gettext-native libassuan libgpg-error" 11DEPENDS = "gettext-native libassuan libgpg-error"
@@ -16,14 +16,13 @@ SRC_URI = "${GNUPG_MIRROR}/${BPN}/${BPN}-${PV}.tar.bz2 \
16 file://gpg-error_pkconf.patch \ 16 file://gpg-error_pkconf.patch \
17" 17"
18 18
19SRC_URI[sha256sum] = "cd12a064013ed18e2ee8475e669b9f58db1b225a0144debdb85a68cecddba57f" 19SRC_URI[sha256sum] = "457a185e5a85238fb945a955dc6352ab962dc8b48720b62fc9fa48c7540a4067"
20 20
21inherit autotools pkgconfig 21inherit autotools pkgconfig
22 22
23PACKAGECONFIG ??= "ncurses libcap" 23PACKAGECONFIG ??= "ncurses"
24 24
25PACKAGECONFIG[ncurses] = "--enable-ncurses --with-ncurses-include-dir=${STAGING_INCDIR}, --disable-ncurses, ncurses" 25PACKAGECONFIG[ncurses] = "--enable-ncurses --with-ncurses-include-dir=${STAGING_INCDIR}, --disable-ncurses, ncurses"
26PACKAGECONFIG[libcap] = "--with-libcap, --without-libcap, libcap"
27PACKAGECONFIG[qt] = "--enable-pinentry-qt, --disable-pinentry-qt, qtbase-native qtbase" 26PACKAGECONFIG[qt] = "--enable-pinentry-qt, --disable-pinentry-qt, qtbase-native qtbase"
28PACKAGECONFIG[gtk2] = "--enable-pinentry-gtk2, --disable-pinentry-gtk2, gtk+ glib-2.0" 27PACKAGECONFIG[gtk2] = "--enable-pinentry-gtk2, --disable-pinentry-gtk2, gtk+ glib-2.0"
29 28
@@ -32,5 +31,8 @@ PACKAGECONFIG[secret] = "--enable-libsecret, --disable-libsecret, libsecret"
32EXTRA_OECONF = " \ 31EXTRA_OECONF = " \
33 --disable-rpath \ 32 --disable-rpath \
34" 33"
34EXTRA_OECONF:append:libc-musl = " \
35 ac_cv_should_define__xopen_source=yes \
36"
35 37
36BBCLASSEXTEND = "native nativesdk" 38BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-support/popt/popt/run-ptest b/meta/recipes-support/popt/popt/run-ptest
new file mode 100644
index 0000000000..85754035d0
--- /dev/null
+++ b/meta/recipes-support/popt/popt/run-ptest
@@ -0,0 +1,3 @@
1#!/bin/sh
2
3./testit.sh
diff --git a/meta/recipes-support/popt/popt_1.18.bb b/meta/recipes-support/popt/popt_1.18.bb
deleted file mode 100644
index 022ece5f47..0000000000
--- a/meta/recipes-support/popt/popt_1.18.bb
+++ /dev/null
@@ -1,15 +0,0 @@
1SUMMARY = "Library for parsing command line options"
2HOMEPAGE = "https://www.rpm.org/"
3SECTION = "libs"
4
5LICENSE = "MIT"
6LIC_FILES_CHKSUM = "file://COPYING;md5=cb0613c30af2a8249b8dcc67d3edb06d"
7
8DEPENDS = "virtual/libiconv"
9
10SRC_URI = "http://ftp.rpm.org/popt/releases/popt-1.x/${BP}.tar.gz"
11SRC_URI[sha256sum] = "5159bc03a20b28ce363aa96765f37df99ea4d8850b1ece17d1e6ad5c24fdc5d1"
12
13inherit autotools gettext
14
15BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-support/popt/popt_1.19.bb b/meta/recipes-support/popt/popt_1.19.bb
new file mode 100644
index 0000000000..b1d8bea790
--- /dev/null
+++ b/meta/recipes-support/popt/popt_1.19.bb
@@ -0,0 +1,31 @@
1SUMMARY = "Library for parsing command line options"
2DESCRIPTION = "Popt is a C library for parsing command line parameters. Popt was heavily influenced by the getopt() and getopt_long() functions, but it improves on them by allowing more powerful argument expansion. Popt can parse arbitrary argv[] style arrays and automatically set variables based on command line arguments."
3HOMEPAGE = "https://www.rpm.org/"
4SECTION = "libs"
5
6LICENSE = "MIT"
7LIC_FILES_CHKSUM = "file://COPYING;md5=e0206ac9471d06667e076212db20c5f4"
8
9DEPENDS = "virtual/libiconv"
10
11SRC_URI = "http://ftp.rpm.org/popt/releases/popt-1.x/${BP}.tar.gz \
12 file://run-ptest \
13 "
14SRC_URI[sha256sum] = "c25a4838fc8e4c1c8aacb8bd620edb3084a3d63bf8987fdad3ca2758c63240f9"
15
16inherit autotools gettext ptest
17
18RDEPENDS:${PN}-ptest += "bash"
19
20do_compile_ptest() {
21 sed 's#lt-test1#test1#g' ${S}/tests/testit.sh > ${B}/tests/testit.sh
22}
23
24do_install_ptest() {
25 install ${B}/tests/.libs/test* ${D}/${PTEST_PATH}
26 install ${B}/tests/.libs/tdict ${D}/${PTEST_PATH}
27 install ${B}/tests/testit.sh ${D}/${PTEST_PATH}
28 install ${B}/tests/test-poptrc ${D}/${PTEST_PATH}
29}
30
31BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-support/ptest-runner/ptest-runner_2.4.0.bb b/meta/recipes-support/ptest-runner/ptest-runner_2.4.0.bb
deleted file mode 100644
index 8b9938f572..0000000000
--- a/meta/recipes-support/ptest-runner/ptest-runner_2.4.0.bb
+++ /dev/null
@@ -1,29 +0,0 @@
1SUMMARY = "A C program to run all installed ptests"
2DESCRIPTION = "The ptest-runner2 package installs a ptest-runner \
3program which loops through all installed ptest test suites and \
4runs them in sequence."
5HOMEPAGE = "http://git.yoctoproject.org/cgit/cgit.cgi/ptest-runner2/about/"
6
7LICENSE = "GPLv2+"
8LIC_FILES_CHKSUM = "file://LICENSE;md5=751419260aa954499f7abaabaa882bbe"
9
10SRCREV = "834670317bd3f6e427e1ac461c07ada6b8936dfd"
11PV .= "+git${SRCPV}"
12
13SRC_URI = "git://git.yoctoproject.org/ptest-runner2 \
14"
15UPSTREAM_VERSION_UNKNOWN = "1"
16
17S = "${WORKDIR}/git"
18
19FILES_${PN} = "${bindir}/ptest-runner"
20
21EXTRA_OEMAKE = "-e MAKEFLAGS= CFLAGS="${CFLAGS} -DDEFAULT_DIRECTORY=\\\"${libdir}\\\"""
22
23do_compile () {
24 oe_runmake
25}
26
27do_install () {
28 install -D -m 0755 ${S}/ptest-runner ${D}${bindir}/ptest-runner
29}
diff --git a/meta/recipes-support/ptest-runner/ptest-runner_2.4.3.bb b/meta/recipes-support/ptest-runner/ptest-runner_2.4.3.bb
new file mode 100644
index 0000000000..e6668da01f
--- /dev/null
+++ b/meta/recipes-support/ptest-runner/ptest-runner_2.4.3.bb
@@ -0,0 +1,39 @@
1SUMMARY = "A C program to run all installed ptests"
2DESCRIPTION = "The ptest-runner2 package installs a ptest-runner \
3program which loops through all installed ptest test suites and \
4runs them in sequence."
5HOMEPAGE = "http://git.yoctoproject.org/cgit/cgit.cgi/ptest-runner2/about/"
6
7LICENSE = "GPL-2.0-or-later"
8LIC_FILES_CHKSUM = "file://LICENSE;md5=751419260aa954499f7abaabaa882bbe"
9
10SRCREV = "92c1b97bfdb4a94acc1cabcaf97eef52dc29144c"
11PV .= "+git"
12
13SRC_URI = "git://git.yoctoproject.org/ptest-runner2;branch=master;protocol=https \
14"
15
16S = "${WORKDIR}/git"
17
18FILES:${PN} = "${bindir}/ptest-runner ${bindir}/ptest-runner-collect-system-data"
19
20EXTRA_OEMAKE = "-e MAKEFLAGS= CFLAGS="${CFLAGS} -DDEFAULT_DIRECTORY=\\\"${libdir}\\\"""
21
22do_compile () {
23 oe_runmake
24}
25
26do_install () {
27 install -D -m 0755 ${S}/ptest-runner ${D}${bindir}/ptest-runner
28 install -D -m 0755 ${S}/ptest-runner-collect-system-data ${D}${bindir}/ptest-runner-collect-system-data
29}
30
31RDEPENDS:${PN}:append:libc-glibc = " libgcc"
32
33# pstree is called by ptest-runner-collect-system-data
34RDEPENDS:${PN}:append = " pstree"
35
36# Create a non-root user that test suites can use easily
37inherit useradd
38USERADD_PACKAGES = "${PN}"
39USERADD_PARAM:${PN} = "--system --no-create-home --home / --user-group ptest"
diff --git a/meta/recipes-support/re2c/re2c_2.0.3.bb b/meta/recipes-support/re2c/re2c_2.0.3.bb
deleted file mode 100644
index a0b521ce56..0000000000
--- a/meta/recipes-support/re2c/re2c_2.0.3.bb
+++ /dev/null
@@ -1,14 +0,0 @@
1SUMMARY = "Tool for writing very fast and very flexible scanners"
2HOMEPAGE = "http://re2c.sourceforge.net/"
3AUTHOR = "Marcus Börger <helly@users.sourceforge.net>"
4SECTION = "devel"
5LICENSE = "PD"
6LIC_FILES_CHKSUM = "file://LICENSE;md5=64eca4d8a3b67f9dc7656094731a2c8d"
7
8SRC_URI = "https://github.com/skvadrik/re2c/releases/download/${PV}/${BPN}-${PV}.tar.xz"
9SRC_URI[sha256sum] = "b2bc1eb8aaaa21ff2fcd26507b7e6e72c5e3d887e58aa515c2155fb17d744278"
10UPSTREAM_CHECK_URI = "https://github.com/skvadrik/re2c/releases"
11
12BBCLASSEXTEND = "native nativesdk"
13
14inherit autotools
diff --git a/meta/recipes-support/re2c/re2c_3.1.bb b/meta/recipes-support/re2c/re2c_3.1.bb
new file mode 100644
index 0000000000..a4b20422f6
--- /dev/null
+++ b/meta/recipes-support/re2c/re2c_3.1.bb
@@ -0,0 +1,15 @@
1SUMMARY = "Tool for writing very fast and very flexible scanners"
2DESCRIPTION = "A free and open-source lexer generator for C, C++ and Go. It compiles regular expressions to determinisitic finite automata and encodes the automata in the form of a program in the target language. Unlike any other such tool, re2c focuses on generating high efficient code for regular expression matching. As a result this allows a much broader range of use than any traditional lexer."
3HOMEPAGE = "http://re2c.org/"
4BUGTRACKER = "https://github.com/skvadrik/re2c/issues"
5SECTION = "devel"
6LICENSE = "PD"
7LIC_FILES_CHKSUM = "file://LICENSE;md5=64eca4d8a3b67f9dc7656094731a2c8d"
8
9SRC_URI = "${GITHUB_BASE_URI}/download/${PV}/${BPN}-${PV}.tar.xz"
10SRC_URI[sha256sum] = "0ac299ad359e3f512b06a99397d025cfff81d3be34464ded0656f8a96676c029"
11GITHUB_BASE_URI = "https://github.com/skvadrik/re2c/releases"
12
13BBCLASSEXTEND = "native nativesdk"
14
15inherit autotools github-releases
diff --git a/meta/recipes-support/rng-tools/rng-tools/rngd.service b/meta/recipes-support/rng-tools/rng-tools/rng-tools.service
index 0559b97991..5ae2fba215 100644
--- a/meta/recipes-support/rng-tools/rng-tools/rngd.service
+++ b/meta/recipes-support/rng-tools/rng-tools/rng-tools.service
@@ -1,9 +1,9 @@
1[Unit] 1[Unit]
2Description=Hardware RNG Entropy Gatherer Daemon 2Description=Hardware RNG Entropy Gatherer Daemon
3DefaultDependencies=no 3DefaultDependencies=no
4After=systemd-udev-settle.service
5Before=sysinit.target shutdown.target
6Conflicts=shutdown.target 4Conflicts=shutdown.target
5Before=sysinit.target shutdown.target
6ConditionVirtualization=!container
7 7
8[Service] 8[Service]
9EnvironmentFile=-@SYSCONFDIR@/default/rng-tools 9EnvironmentFile=-@SYSCONFDIR@/default/rng-tools
diff --git a/meta/recipes-support/rng-tools/rng-tools_6.11.bb b/meta/recipes-support/rng-tools/rng-tools_6.16.bb
index 61a0cef2e0..f0aa3ff93f 100644
--- a/meta/recipes-support/rng-tools/rng-tools_6.11.bb
+++ b/meta/recipes-support/rng-tools/rng-tools_6.16.bb
@@ -1,20 +1,17 @@
1SUMMARY = "Random number generator daemon" 1SUMMARY = "Random number generator daemon"
2DESCRIPTION = "Check and feed random data from hardware device to kernel" 2DESCRIPTION = "Check and feed random data from hardware device to kernel"
3AUTHOR = "Philipp Rumpf, Jeff Garzik <jgarzik@pobox.com>, \
4 Henrique de Moraes Holschuh <hmh@debian.org>"
5HOMEPAGE = "https://github.com/nhorman/rng-tools" 3HOMEPAGE = "https://github.com/nhorman/rng-tools"
6BUGTRACKER = "https://github.com/nhorman/rng-tools/issues" 4BUGTRACKER = "https://github.com/nhorman/rng-tools/issues"
7LICENSE = "GPLv2" 5LICENSE = "GPL-2.0-only"
8LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263" 6LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
9DEPENDS = "sysfsutils openssl" 7DEPENDS = "openssl libcap"
10 8
11SRC_URI = "\ 9SRC_URI = "git://github.com/nhorman/rng-tools.git;branch=master;protocol=https \
12 git://github.com/nhorman/rng-tools.git \ 10 file://init \
13 file://init \ 11 file://default \
14 file://default \ 12 file://rng-tools.service \
15 file://rngd.service \ 13 "
16" 14SRCREV = "e061c313b95890eb5fa0ada0cd6eec619dafdfe2"
17SRCREV = "2ea13473fd5bfea3c861dc0e23bd65e2afe8007b"
18 15
19S = "${WORKDIR}/git" 16S = "${WORKDIR}/git"
20 17
@@ -23,38 +20,50 @@ inherit autotools update-rc.d systemd pkgconfig
23EXTRA_OECONF = "--without-rtlsdr" 20EXTRA_OECONF = "--without-rtlsdr"
24 21
25PACKAGECONFIG ??= "libjitterentropy" 22PACKAGECONFIG ??= "libjitterentropy"
26PACKAGECONFIG_libc-musl = "libargp libjitterentropy" 23PACKAGECONFIG:libc-musl = "libargp libjitterentropy"
27 24
28PACKAGECONFIG[libargp] = "--with-libargp,--without-libargp,argp-standalone," 25PACKAGECONFIG[libargp] = "--with-libargp,--without-libargp,argp-standalone,"
29PACKAGECONFIG[libjitterentropy] = "--enable-jitterentropy,--disable-jitterentropy,libjitterentropy" 26PACKAGECONFIG[libjitterentropy] = "--enable-jitterentropy,--disable-jitterentropy,libjitterentropy"
30PACKAGECONFIG[libp11] = "--with-pkcs11,--without-pkcs11,libp11 openssl" 27PACKAGECONFIG[libp11] = "--with-pkcs11,--without-pkcs11,libp11 openssl"
31PACKAGECONFIG[nistbeacon] = "--with-nistbeacon,--without-nistbeacon,curl libxml2 openssl" 28PACKAGECONFIG[nistbeacon] = "--with-nistbeacon,--without-nistbeacon,curl libxml2"
29PACKAGECONFIG[qrypt] = "--with-qrypt,--without-qrypt,curl"
30
31INITSCRIPT_PACKAGES = "${PN}-service"
32INITSCRIPT_NAME:${PN}-service = "rng-tools"
33INITSCRIPT_PARAMS:${PN}-service = "start 03 2 3 4 5 . stop 30 0 6 1 ."
34
35SYSTEMD_PACKAGES = "${PN}-service"
36SYSTEMD_SERVICE:${PN}-service = "rng-tools.service"
32 37
33INITSCRIPT_NAME = "rng-tools" 38CFLAGS += " -DJENT_CONF_ENABLE_INTERNAL_TIMER "
34INITSCRIPT_PARAMS = "start 03 2 3 4 5 . stop 30 0 6 1 ."
35 39
36SYSTEMD_SERVICE_${PN} = "rngd.service" 40PACKAGES =+ "${PN}-service"
41
42FILES:${PN}-service += " \
43 ${sysconfdir}/init.d/rng-tools \
44 ${sysconfdir}/default/rng-tools \
45"
37 46
38# Refer autogen.sh in rng-tools 47# Refer autogen.sh in rng-tools
39do_configure_prepend() { 48do_configure:prepend() {
40 cp ${S}/README.md ${S}/README 49 cp ${S}/README.md ${S}/README
41} 50}
42 51
43do_install_append() { 52do_install:append() {
44 install -Dm 0644 ${WORKDIR}/default ${D}${sysconfdir}/default/rng-tools 53 install -Dm 0644 ${WORKDIR}/default ${D}${sysconfdir}/default/rng-tools
45 install -Dm 0755 ${WORKDIR}/init ${D}${sysconfdir}/init.d/rng-tools 54 install -Dm 0755 ${WORKDIR}/init ${D}${sysconfdir}/init.d/rng-tools
46 install -Dm 0644 ${WORKDIR}/rngd.service \ 55 install -Dm 0644 ${WORKDIR}/rng-tools.service \
47 ${D}${systemd_system_unitdir}/rngd.service 56 ${D}${systemd_system_unitdir}/rng-tools.service
48 sed -i \ 57 sed -i \
49 -e 's,@SYSCONFDIR@,${sysconfdir},g' \ 58 -e 's,@SYSCONFDIR@,${sysconfdir},g' \
50 -e 's,@SBINDIR@,${sbindir},g' \ 59 -e 's,@SBINDIR@,${sbindir},g' \
51 ${D}${sysconfdir}/init.d/rng-tools \ 60 ${D}${sysconfdir}/init.d/rng-tools \
52 ${D}${systemd_system_unitdir}/rngd.service 61 ${D}${systemd_system_unitdir}/rng-tools.service
53 62
54 if [ "${@bb.utils.contains('PACKAGECONFIG', 'nistbeacon', 'yes', 'no', d)}" = "yes" ]; then 63 if [ "${@bb.utils.contains('PACKAGECONFIG', 'nistbeacon', 'yes', 'no', d)}" = "yes" ]; then
55 sed -i \ 64 sed -i \
56 -e '/^IPAddressDeny=any/d' \ 65 -e '/^IPAddressDeny=any/d' \
57 -e '/^RestrictAddressFamilies=/ s/$/ AF_INET AF_INET6/' \ 66 -e '/^RestrictAddressFamilies=/ s/$/ AF_INET AF_INET6/' \
58 ${D}${systemd_system_unitdir}/rngd.service 67 ${D}${systemd_system_unitdir}/rng-tools.service
59 fi 68 fi
60} 69}
diff --git a/meta/recipes-support/serf/serf/0001-Fix-syntax-of-a-print-in-the-scons-file-to-unbreak-b.patch b/meta/recipes-support/serf/serf/0001-Fix-syntax-of-a-print-in-the-scons-file-to-unbreak-b.patch
deleted file mode 100644
index 4a5832ac1a..0000000000
--- a/meta/recipes-support/serf/serf/0001-Fix-syntax-of-a-print-in-the-scons-file-to-unbreak-b.patch
+++ /dev/null
@@ -1,29 +0,0 @@
1From 99f6e1b0d68281b63218d6adfe68cd9e331ac5be Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Mon, 3 Sep 2018 10:50:08 -0700
4Subject: [PATCH] Fix syntax of a print() in the scons file to unbreak building
5 with most recent scons version.
6
7* SConstruct Use Python 3.0 valid syntax to make Scons 3.0.0 happy on both python
8 3.0 and 2.7.
9
10Upstream-Status: Backport
11[https://svn.apache.org/viewvc/serf/trunk/SConstruct?r1=1809132&r2=1811083&diff_format=h]
12Signed-off-by: Khem Raj <raj.khem@gmail.com>
13---
14 SConstruct | 2 +-
15 1 file changed, 1 insertion(+), 1 deletion(-)
16
17diff --git a/SConstruct b/SConstruct
18index 1670459..18a45fa 100644
19--- a/SConstruct
20+++ b/SConstruct
21@@ -184,7 +184,7 @@ CALLOUT_OKAY = not (env.GetOption('clean') or env.GetOption('help'))
22
23 unknown = opts.UnknownVariables()
24 if unknown:
25- print 'Warning: Used unknown variables:', ', '.join(unknown.keys())
26+ print('Warning: Used unknown variables:', ', '.join(unknown.keys()))
27
28 apr = str(env['APR'])
29 apu = str(env['APU'])
diff --git a/meta/recipes-support/serf/serf/0004-Follow-up-to-r1811083-fix-building-with-scons-3.0.0-.patch b/meta/recipes-support/serf/serf/0004-Follow-up-to-r1811083-fix-building-with-scons-3.0.0-.patch
deleted file mode 100644
index 02fa9e3a06..0000000000
--- a/meta/recipes-support/serf/serf/0004-Follow-up-to-r1811083-fix-building-with-scons-3.0.0-.patch
+++ /dev/null
@@ -1,29 +0,0 @@
1From 565211fd082ef653ca9c44a345350fc1451f5a0f Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Mon, 3 Sep 2018 11:12:38 -0700
4Subject: [PATCH] Follow-up to r1811083 fix building with scons 3.0.0 and
5 Python3
6
7* SConstruct: Append decode('utf-8) to FILE.get_contents() to avoid
8 TypeError: cannot use a string pattern on a bytes-like object
9
10Upstream-Status: Backport
11[https://svn.apache.org/viewvc/serf/trunk/SConstruct?r1=1811088&r2=1814604]
12Signed-off-by: Khem Raj <raj.khem@gmail.com>
13---
14 SConstruct | 2 +-
15 1 file changed, 1 insertion(+), 1 deletion(-)
16
17diff --git a/SConstruct b/SConstruct
18index 877731e..7678bb1 100644
19--- a/SConstruct
20+++ b/SConstruct
21@@ -169,7 +169,7 @@ env.Append(BUILDERS = {
22 match = re.search('SERF_MAJOR_VERSION ([0-9]+).*'
23 'SERF_MINOR_VERSION ([0-9]+).*'
24 'SERF_PATCH_VERSION ([0-9]+)',
25- env.File('serf.h').get_contents(),
26+ env.File('serf.h').get_contents().decode('utf-8'),
27 re.DOTALL)
28 MAJOR, MINOR, PATCH = [int(x) for x in match.groups()]
29 env.Append(MAJOR=str(MAJOR))
diff --git a/meta/recipes-support/serf/serf/SConstruct.stop.creating.directories.without.sandbox-install.prefix.patch b/meta/recipes-support/serf/serf/SConstruct.stop.creating.directories.without.sandbox-install.prefix.patch
index 91640d6044..c8e6eddfec 100644
--- a/meta/recipes-support/serf/serf/SConstruct.stop.creating.directories.without.sandbox-install.prefix.patch
+++ b/meta/recipes-support/serf/serf/SConstruct.stop.creating.directories.without.sandbox-install.prefix.patch
@@ -31,7 +31,7 @@ ERROR: scons install execution failed.
31 and the installed paths (including the paths inside libserf*.pc) 31 and the installed paths (including the paths inside libserf*.pc)
32 look correct 32 look correct
33 33
34Upstream-Status: Pending 34Upstream-Status: Inappropriate [removes block of code rather than fixing the problem in that block]
35 35
36Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> 36Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
37 37
diff --git a/meta/recipes-support/serf/serf_1.3.9.bb b/meta/recipes-support/serf/serf_1.3.10.bb
index 2fbf96f997..c6b51452aa 100644
--- a/meta/recipes-support/serf/serf_1.3.9.bb
+++ b/meta/recipes-support/serf/serf_1.3.10.bb
@@ -1,16 +1,18 @@
1SUMMARY = "High-Performance Asynchronous HTTP Client Library" 1SUMMARY = "High-Performance Asynchronous HTTP Client Library"
2DESCRIPTION = "The Apache Serf library is a C-based HTTP client library built upon the Apache \
3Portable Runtime (APR) library. It multiplexes connections, running the \
4read/write communication asynchronously. Memory copies and transformations are \
5kept to a minimum to provide high performance operation."
6HOMEPAGE = "http://serf.apache.org/"
2SRC_URI = "${APACHE_MIRROR}/${BPN}/${BPN}-${PV}.tar.bz2 \ 7SRC_URI = "${APACHE_MIRROR}/${BPN}/${BPN}-${PV}.tar.bz2 \
3 file://norpath.patch \ 8 file://norpath.patch \
4 file://env.patch \ 9 file://env.patch \
5 file://0001-Fix-syntax-of-a-print-in-the-scons-file-to-unbreak-b.patch \
6 file://0002-SConstruct-Fix-path-quoting-for-.def-generator.patch \ 10 file://0002-SConstruct-Fix-path-quoting-for-.def-generator.patch \
7 file://0003-gen_def.patch \ 11 file://0003-gen_def.patch \
8 file://0004-Follow-up-to-r1811083-fix-building-with-scons-3.0.0-.patch \
9 file://SConstruct.stop.creating.directories.without.sandbox-install.prefix.patch \ 12 file://SConstruct.stop.creating.directories.without.sandbox-install.prefix.patch \
10 " 13 "
11 14
12SRC_URI[md5sum] = "370a6340ff20366ab088012cd13f2b57" 15SRC_URI[sha256sum] = "be81ef08baa2516ecda76a77adf7def7bc3227eeb578b9a33b45f7b41dc064e6"
13SRC_URI[sha256sum] = "549c2d21c577a8a9c0450facb5cca809f26591f048e466552240947bdf7a87cc"
14 16
15LICENSE = "Apache-2.0" 17LICENSE = "Apache-2.0"
16LIC_FILES_CHKSUM = "file://LICENSE;md5=86d3f3a95c324c9479bd8986968f4327" 18LIC_FILES_CHKSUM = "file://LICENSE;md5=86d3f3a95c324c9479bd8986968f4327"
@@ -31,7 +33,7 @@ EXTRA_OESCONS = " \
31 " 33 "
32 34
33# scons creates non-reproducible archives 35# scons creates non-reproducible archives
34do_install_append() { 36do_install:append() {
35 rm ${D}/${libdir}/*.a 37 rm ${D}/${libdir}/*.a
36} 38}
37 39
diff --git a/meta/recipes-support/shared-mime-info/shared-mime-info/0001-Fix-build-with-libxml2-2.12.0-and-clang-17.patch b/meta/recipes-support/shared-mime-info/shared-mime-info/0001-Fix-build-with-libxml2-2.12.0-and-clang-17.patch
new file mode 100644
index 0000000000..936f72ccf8
--- /dev/null
+++ b/meta/recipes-support/shared-mime-info/shared-mime-info/0001-Fix-build-with-libxml2-2.12.0-and-clang-17.patch
@@ -0,0 +1,26 @@
1From 665383306c725f299a1b373f947cda01949d49e4 Mon Sep 17 00:00:00 2001
2From: David Faure <faure@kde.org>
3Date: Sun, 19 Nov 2023 11:18:11 +0100
4Subject: [PATCH] Fix build with libxml2-2.12.0 and clang-17
5
6Fixes #219
7
8Upstream-Status: Backport [https://gitlab.freedesktop.org/xdg/shared-mime-info/-/commit/c918fe77e255150938e83a6aec259f153d303573]
9Signed-off-by: Khem Raj <raj.khem@gmail.com>
10---
11 src/test-subclassing.c | 1 +
12 1 file changed, 1 insertion(+)
13
14diff --git a/src/test-subclassing.c b/src/test-subclassing.c
15index dd099e4..0758164 100644
16--- a/src/test-subclassing.c
17+++ b/src/test-subclassing.c
18@@ -1,4 +1,5 @@
19 #include <libxml/tree.h>
20+#include <libxml/parser.h>
21 #include <stdio.h>
22 #include <string.h>
23
24--
252.43.0
26
diff --git a/meta/recipes-support/shared-mime-info/shared-mime-info/0002-Handle-build-with-older-versions-of-GCC.patch b/meta/recipes-support/shared-mime-info/shared-mime-info/0002-Handle-build-with-older-versions-of-GCC.patch
new file mode 100644
index 0000000000..2af6b461b6
--- /dev/null
+++ b/meta/recipes-support/shared-mime-info/shared-mime-info/0002-Handle-build-with-older-versions-of-GCC.patch
@@ -0,0 +1,54 @@
1From 461d00fcd5c5842b9a56f7462d55d46bf21163cc Mon Sep 17 00:00:00 2001
2From: Patrick Williams <patrick@stwcx.xyz>
3Date: Fri, 1 Dec 2023 11:19:02 -0600
4Subject: [PATCH] Handle build with older versions of GCC
5
6Older versions of GCC (prior to 9.1) did not put the `std::filesystem`
7support directly into libstdcpp, but in a separate `libstdc++fs`. Add
8meson logic to detect if an extra linker flag is necessary.
9
10Fixes #223.
11
12Tested on AlmaLinux 8 which uses GCC-8.
13
14Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
15Upstream-Status: Submitted [https://gitlab.freedesktop.org/xdg/shared-mime-info/-/merge_requests/278]
16---
17 meson.build | 14 ++++++++++++++
18 1 file changed, 14 insertions(+)
19
20diff --git a/meson.build b/meson.build
21index ecc012f..93acd40 100644
22--- a/meson.build
23+++ b/meson.build
24@@ -11,6 +11,7 @@ config = configuration_data()
25 i18n = import('i18n')
26
27 cc = meson.get_compiler('c')
28+cxx = meson.get_compiler('cpp')
29
30 ###############################################################################
31 # Project configuration
32@@ -46,6 +47,19 @@ if not xdgmime_found
33 ''')
34 endif
35
36+###############################################################################
37+# Check if GCC needs -lstdc++fs (before 9.1)
38+
39+if not cxx.links('''
40+ #include <filesystem>
41+ int main() {
42+ return std::filesystem::is_directory(
43+ std::filesystem::status("/tmp")) ? 0 : 1;
44+ }
45+ ''', name: 'std++fs-check')
46+ add_project_link_arguments('-lstdc++fs', language : 'cpp')
47+endif
48+
49 ###############################################################################
50 # Dependencies
51
52--
532.41.0
54
diff --git a/meta/recipes-support/shared-mime-info/shared-mime-info_git.bb b/meta/recipes-support/shared-mime-info/shared-mime-info_2.4.bb
index 5509c99c46..ef5df44ad6 100644
--- a/meta/recipes-support/shared-mime-info/shared-mime-info_git.bb
+++ b/meta/recipes-support/shared-mime-info/shared-mime-info_2.4.bb
@@ -1,28 +1,31 @@
1SUMMARY = "Shared MIME type database and specification" 1SUMMARY = "Shared MIME type database and specification"
2DESCRIPTION = "The shared-mime-info package contains the core database of common types."
2HOMEPAGE = "http://freedesktop.org/wiki/Software/shared-mime-info" 3HOMEPAGE = "http://freedesktop.org/wiki/Software/shared-mime-info"
3SECTION = "base" 4SECTION = "base"
4 5
5LICENSE = "GPLv2" 6LICENSE = "GPL-2.0-only"
6LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263" 7LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
7 8
8DEPENDS = "libxml2 itstool-native glib-2.0 shared-mime-info-native xmlto-native" 9DEPENDS = "libxml2 itstool-native glib-2.0 shared-mime-info-native xmlto-native"
9 10
10SRC_URI = "git://gitlab.freedesktop.org/xdg/shared-mime-info.git;protocol=https" 11SRC_URI = "git://gitlab.freedesktop.org/xdg/shared-mime-info.git;protocol=https;branch=master \
11SRCREV = "18e558fa1c8b90b86757ade09a4ba4d6a6cf8f70" 12 file://0001-Fix-build-with-libxml2-2.12.0-and-clang-17.patch \
12PV = "2.1" 13 file://0002-Handle-build-with-older-versions-of-GCC.patch"
14SRCREV = "9a6d6b8e963935f145f3a1ef446552de6996dada"
15
13S = "${WORKDIR}/git" 16S = "${WORKDIR}/git"
14 17
15inherit meson pkgconfig gettext python3native mime 18inherit meson pkgconfig gettext python3native mime
16 19
17EXTRA_OEMESON = "-Dupdate-mimedb=true" 20EXTRA_OEMESON = "-Dupdate-mimedb=true"
18 21
19FILES_${PN} += "${datadir}/mime" 22FILES:${PN} += "${datadir}/mime"
20FILES_${PN}-dev += "${datadir}/pkgconfig/shared-mime-info.pc ${datadir}/gettext/its" 23FILES:${PN}-dev += "${datadir}/pkgconfig/shared-mime-info.pc ${datadir}/gettext/its"
21 24
22# freedesktop.org.xml is only required when updating the mime database, 25# freedesktop.org.xml is only required when updating the mime database,
23# package it separately 26# package it separately
24PACKAGES =+ "shared-mime-info-data" 27PACKAGES =+ "shared-mime-info-data"
25FILES_shared-mime-info-data = "${datadir}/mime/packages/freedesktop.org.xml" 28FILES:shared-mime-info-data = "${datadir}/mime/packages/freedesktop.org.xml"
26RDEPENDS_shared-mime-info-data = "shared-mime-info" 29RDEPENDS:shared-mime-info-data = "shared-mime-info"
27 30
28BBCLASSEXTEND = "native nativesdk" 31BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-support/sqlite/sqlite3.inc b/meta/recipes-support/sqlite/sqlite3.inc
index 07614bdb3e..9a0de08553 100644
--- a/meta/recipes-support/sqlite/sqlite3.inc
+++ b/meta/recipes-support/sqlite/sqlite3.inc
@@ -1,4 +1,5 @@
1SUMMARY = "Embeddable SQL database engine" 1SUMMARY = "Embeddable SQL database engine"
2DESCRIPTION = "A library that implements a small, fast, self-contained, high-reliability, full-featured, SQL database engine. SQLite is the most used database engine in the world. SQLite is built into all mobile phones and most computers and comes bundled inside countless other applications that people use every day"
2HOMEPAGE = "http://www.sqlite.org" 3HOMEPAGE = "http://www.sqlite.org"
3SECTION = "libs" 4SECTION = "libs"
4 5
@@ -22,15 +23,14 @@ CVE_PRODUCT = "sqlite"
22inherit autotools pkgconfig siteinfo 23inherit autotools pkgconfig siteinfo
23 24
24# enable those which are enabled by default in configure 25# enable those which are enabled by default in configure
25PACKAGECONFIG ?= "fts4 fts5 json1 rtree dyn_ext" 26PACKAGECONFIG ?= "fts4 fts5 rtree dyn_ext"
26PACKAGECONFIG_class-native ?= "fts4 fts5 json1 rtree dyn_ext" 27PACKAGECONFIG:class-native ?= "fts4 fts5 rtree dyn_ext"
27 28
28PACKAGECONFIG[editline] = "--enable-editline,--disable-editline,libedit" 29PACKAGECONFIG[editline] = "--enable-editline,--disable-editline,libedit"
29PACKAGECONFIG[readline] = "--enable-readline,--disable-readline,readline ncurses" 30PACKAGECONFIG[readline] = "--enable-readline,--disable-readline,readline ncurses"
30PACKAGECONFIG[fts3] = "--enable-fts3,--disable-fts3" 31PACKAGECONFIG[fts3] = "--enable-fts3,--disable-fts3"
31PACKAGECONFIG[fts4] = "--enable-fts4,--disable-fts4" 32PACKAGECONFIG[fts4] = "--enable-fts4,--disable-fts4"
32PACKAGECONFIG[fts5] = "--enable-fts5,--disable-fts5" 33PACKAGECONFIG[fts5] = "--enable-fts5,--disable-fts5"
33PACKAGECONFIG[json1] = "--enable-json1,--disable-json1"
34PACKAGECONFIG[rtree] = "--enable-rtree,--disable-rtree" 34PACKAGECONFIG[rtree] = "--enable-rtree,--disable-rtree"
35PACKAGECONFIG[session] = "--enable-session,--disable-session" 35PACKAGECONFIG[session] = "--enable-session,--disable-session"
36PACKAGECONFIG[dyn_ext] = "--enable-dynamic-extensions,--disable-dynamic-extensions" 36PACKAGECONFIG[dyn_ext] = "--enable-dynamic-extensions,--disable-dynamic-extensions"
@@ -45,23 +45,23 @@ EXTRA_OECONF = " \
45" 45"
46 46
47# pread() is in POSIX.1-2001 so any reasonable system must surely support it 47# pread() is in POSIX.1-2001 so any reasonable system must surely support it
48CFLAGS_append = " -DUSE_PREAD" 48CFLAGS:append = " -DUSE_PREAD"
49 49
50# Provide column meta-data API 50# Provide column meta-data API
51CFLAGS_append = " -DSQLITE_ENABLE_COLUMN_METADATA" 51CFLAGS:append = " -DSQLITE_ENABLE_COLUMN_METADATA"
52 52
53# Unless SQLITE_BYTEORDER is predefined, the code falls back to build time 53# Unless SQLITE_BYTEORDER is predefined, the code falls back to build time
54# huristics, which are not always correct 54# huristics, which are not always correct
55CFLAGS_append = " ${@oe.utils.conditional('SITEINFO_ENDIANNESS', 'le', '-DSQLITE_BYTEORDER=1234', '-DSQLITE_BYTEORDER=4321', d)}" 55CFLAGS:append = " ${@oe.utils.conditional('SITEINFO_ENDIANNESS', 'le', '-DSQLITE_BYTEORDER=1234', '-DSQLITE_BYTEORDER=4321', d)}"
56 56
57PACKAGES = "lib${BPN} lib${BPN}-dev lib${BPN}-doc ${PN}-dbg lib${BPN}-staticdev ${PN}" 57PACKAGES = "lib${BPN} lib${BPN}-dev lib${BPN}-doc ${PN}-dbg lib${BPN}-staticdev ${PN}"
58 58
59FILES_${PN} = "${bindir}/*" 59FILES:${PN} = "${bindir}/*"
60FILES_lib${BPN} = "${libdir}/*.so.*" 60FILES:lib${BPN} = "${libdir}/*.so.*"
61FILES_lib${BPN}-dev = "${libdir}/*.la ${libdir}/*.so \ 61FILES:lib${BPN}-dev = "${libdir}/*.la ${libdir}/*.so \
62 ${libdir}/pkgconfig ${includedir}" 62 ${libdir}/pkgconfig ${includedir}"
63FILES_lib${BPN}-doc = "${docdir} ${mandir} ${infodir}" 63FILES:lib${BPN}-doc = "${docdir} ${mandir} ${infodir}"
64FILES_lib${BPN}-staticdev = "${libdir}/lib*.a" 64FILES:lib${BPN}-staticdev = "${libdir}/lib*.a"
65 65
66AUTO_LIBNAME_PKGS = "${MLPREFIX}lib${BPN}" 66AUTO_LIBNAME_PKGS = "${MLPREFIX}lib${BPN}"
67 67
diff --git a/meta/recipes-support/sqlite/sqlite3_3.34.1.bb b/meta/recipes-support/sqlite/sqlite3_3.34.1.bb
deleted file mode 100644
index fe5adb221e..0000000000
--- a/meta/recipes-support/sqlite/sqlite3_3.34.1.bb
+++ /dev/null
@@ -1,12 +0,0 @@
1require sqlite3.inc
2
3LICENSE = "PD"
4LIC_FILES_CHKSUM = "file://sqlite3.h;endline=11;md5=786d3dc581eff03f4fd9e4a77ed00c66"
5
6SRC_URI = "http://www.sqlite.org/2021/sqlite-autoconf-${SQLITE_PV}.tar.gz"
7SRC_URI[sha256sum] = "2a3bca581117b3b88e5361d0ef3803ba6d8da604b1c1a47d902ef785c1b53e89"
8
9# -19242 is only an issue in specific development branch commits
10CVE_CHECK_WHITELIST += "CVE-2019-19242"
11# This is believed to be iOS specific (https://groups.google.com/g/sqlite-dev/c/U7OjAbZO6LA)
12CVE_CHECK_WHITELIST += "CVE-2015-3717"
diff --git a/meta/recipes-support/sqlite/sqlite3_3.45.1.bb b/meta/recipes-support/sqlite/sqlite3_3.45.1.bb
new file mode 100644
index 0000000000..50612feb25
--- /dev/null
+++ b/meta/recipes-support/sqlite/sqlite3_3.45.1.bb
@@ -0,0 +1,8 @@
1require sqlite3.inc
2
3LICENSE = "PD"
4LIC_FILES_CHKSUM = "file://sqlite3.h;endline=11;md5=786d3dc581eff03f4fd9e4a77ed00c66"
5
6SRC_URI = "http://www.sqlite.org/2024/sqlite-autoconf-${SQLITE_PV}.tar.gz"
7SRC_URI[sha256sum] = "cd9c27841b7a5932c9897651e20b86c701dd740556989b01ca596fcfa3d49a0a"
8
diff --git a/meta/recipes-support/taglib/taglib/CVE-2017-12678.patch b/meta/recipes-support/taglib/taglib/CVE-2017-12678.patch
deleted file mode 100644
index 4bd9f2be17..0000000000
--- a/meta/recipes-support/taglib/taglib/CVE-2017-12678.patch
+++ /dev/null
@@ -1,40 +0,0 @@
1From eb9ded1206f18f2c319157337edea2533a40bea6 Mon Sep 17 00:00:00 2001
2From: "Stephen F. Booth" <me@sbooth.org>
3Date: Sun, 23 Jul 2017 10:11:09 -0400
4Subject: [PATCH] Don't assume TDRC is an instance of TextIdentificationFrame
5
6If TDRC is encrypted, FrameFactory::createFrame() returns UnknownFrame
7which causes problems in rebuildAggregateFrames() when it is assumed
8that TDRC is a TextIdentificationFrame
9
10Upstream-Status: Backport
11[https://github.com/taglib/taglib/pull/831/commits/eb9ded1206f18f2c319157337edea2533a40bea6]
12
13CVE: CVE-2017-12678
14
15Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
16---
17 taglib/mpeg/id3v2/id3v2framefactory.cpp | 5 +++--
18 1 file changed, 3 insertions(+), 2 deletions(-)
19
20diff --git a/taglib/mpeg/id3v2/id3v2framefactory.cpp b/taglib/mpeg/id3v2/id3v2framefactory.cpp
21index 759a9b7b..9347ab86 100644
22--- a/taglib/mpeg/id3v2/id3v2framefactory.cpp
23+++ b/taglib/mpeg/id3v2/id3v2framefactory.cpp
24@@ -334,10 +334,11 @@ void FrameFactory::rebuildAggregateFrames(ID3v2::Tag *tag) const
25 tag->frameList("TDAT").size() == 1)
26 {
27 TextIdentificationFrame *tdrc =
28- static_cast<TextIdentificationFrame *>(tag->frameList("TDRC").front());
29+ dynamic_cast<TextIdentificationFrame *>(tag->frameList("TDRC").front());
30 UnknownFrame *tdat = static_cast<UnknownFrame *>(tag->frameList("TDAT").front());
31
32- if(tdrc->fieldList().size() == 1 &&
33+ if(tdrc &&
34+ tdrc->fieldList().size() == 1 &&
35 tdrc->fieldList().front().size() == 4 &&
36 tdat->data().size() >= 5)
37 {
38--
392.13.5
40
diff --git a/meta/recipes-support/taglib/taglib/CVE-2018-11439.patch b/meta/recipes-support/taglib/taglib/CVE-2018-11439.patch
deleted file mode 100644
index cdd66e67f7..0000000000
--- a/meta/recipes-support/taglib/taglib/CVE-2018-11439.patch
+++ /dev/null
@@ -1,51 +0,0 @@
1From 272648ccfcccae30e002ccf34a22e075dd477278 Mon Sep 17 00:00:00 2001
2From: Scott Gayou <github.scott@gmail.com>
3Date: Mon, 4 Jun 2018 11:34:36 -0400
4Subject: [PATCH] Fixed OOB read when loading invalid ogg flac file. (#868)
5
6This CVE is caused by a failure to check the minimum length
7of a ogg flac header. This header is detailed in full at:
8https://xiph.org/flac/ogg_mapping.html. Added more strict checking
9for entire header.
10
11Upstream-Status: Backport
12[https://github.com/taglib/taglib/pull/869/commits/272648ccfcccae30e002ccf34a22e075dd477278]
13
14CVE: CVE-2018-11439
15
16Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
17---
18 taglib/ogg/flac/oggflacfile.cpp | 14 ++++++++++++--
19 1 file changed, 12 insertions(+), 2 deletions(-)
20
21diff --git a/taglib/ogg/flac/oggflacfile.cpp b/taglib/ogg/flac/oggflacfile.cpp
22index 53d0450..07ea9dc 100644
23--- a/taglib/ogg/flac/oggflacfile.cpp
24+++ b/taglib/ogg/flac/oggflacfile.cpp
25@@ -231,11 +231,21 @@ void Ogg::FLAC::File::scan()
26
27 if(!metadataHeader.startsWith("fLaC")) {
28 // FLAC 1.1.2+
29+ // See https://xiph.org/flac/ogg_mapping.html for the header specification.
30+ if(metadataHeader.size() < 13)
31+ return;
32+
33+ if(metadataHeader[0] != 0x7f)
34+ return;
35+
36 if(metadataHeader.mid(1, 4) != "FLAC")
37 return;
38
39- if(metadataHeader[5] != 1)
40- return; // not version 1
41+ if(metadataHeader[5] != 1 && metadataHeader[6] != 0)
42+ return; // not version 1.0
43+
44+ if(metadataHeader.mid(9, 4) != "fLaC")
45+ return;
46
47 metadataHeader = metadataHeader.mid(13);
48 }
49--
502.7.4
51
diff --git a/meta/recipes-support/taglib/taglib_1.11.1.bb b/meta/recipes-support/taglib/taglib_2.0.1.bb
index f4e288295d..14f99aabbc 100644
--- a/meta/recipes-support/taglib/taglib_1.11.1.bb
+++ b/meta/recipes-support/taglib/taglib_2.0.1.bb
@@ -1,29 +1,27 @@
1SUMMARY = "Library for reading and editing the meta-data of popular audio formats" 1SUMMARY = "Library for reading and editing the meta-data of popular audio formats"
2DESCRIPTION = "Platform-independent library (tested on Windows/Linux) for reading and writing metadata in media files, including video, audio, and photo formats. This is a convenient one-stop-shop to present or tag all your media collection, regardless of which format/container these might use. You can read/write the standard or more common tags/properties of a media, or you can also create and retrieve your own custom tags."
2SECTION = "libs/multimedia" 3SECTION = "libs/multimedia"
3HOMEPAGE = "http://taglib.github.io/" 4HOMEPAGE = "http://taglib.github.io/"
4LICENSE = "LGPLv2.1 | MPL-1.1" 5LICENSE = "LGPL-2.1-only | MPL-1.1"
5LIC_FILES_CHKSUM = "file://COPYING.LGPL;md5=4fbd65380cdd255951079008b364516c \ 6LIC_FILES_CHKSUM = "file://COPYING.LGPL;md5=4fbd65380cdd255951079008b364516c \
6 file://COPYING.MPL;md5=bfe1f75d606912a4111c90743d6c7325 \ 7 file://COPYING.MPL;md5=bfe1f75d606912a4111c90743d6c7325 \
7 file://taglib/audioproperties.h;beginline=1;endline=24;md5=9df2c7399519b7310568a7c55042ecee" 8 file://taglib/audioproperties.h;beginline=1;endline=24;md5=9df2c7399519b7310568a7c55042ecee"
8 9
9DEPENDS = "zlib" 10DEPENDS = "zlib utfcpp"
10 11
11SRC_URI = "http://taglib.github.io/releases/${BP}.tar.gz \ 12SRC_URI = "http://taglib.github.io/releases/${BP}.tar.gz"
12 file://CVE-2017-12678.patch \
13 file://CVE-2018-11439.patch \
14 "
15 13
16SRC_URI[md5sum] = "cee7be0ccfc892fa433d6c837df9522a" 14SRC_URI[sha256sum] = "08c0a27b96aa5c4e23060fe0b6f93102ee9091a9385257b9d0ddcf467de0d925"
17SRC_URI[sha256sum] = "b6d1a5a610aae6ff39d93de5efd0fdc787aa9e9dc1e7026fa4c961b26563526b"
18 15
19UPSTREAM_CHECK_URI = "http://github.com/taglib/taglib/releases/" 16UPSTREAM_CHECK_URI = "https://taglib.org/"
17UPSTREAM_CHECK_REGEX = "taglib-(?P<pver>\d+(\.\d+)+)\.tar"
20 18
21BINCONFIG = "${bindir}/taglib-config" 19BINCONFIG = "${bindir}/taglib-config"
22 20
23inherit cmake pkgconfig binconfig-disabled 21inherit cmake pkgconfig binconfig-disabled
24 22
25PACKAGES =+ "${PN}-c" 23PACKAGES =+ "${PN}-c"
26FILES_${PN}-c = "${libdir}/libtag_c.so.*" 24FILES:${PN}-c = "${libdir}/libtag_c.so.*"
27 25
28EXTRA_OECMAKE = "-DBUILD_SHARED_LIBS=ON \ 26EXTRA_OECMAKE = "-DBUILD_SHARED_LIBS=ON \
29 -DCMAKE_DISABLE_FIND_PACKAGE_Boost=TRUE \ 27 -DCMAKE_DISABLE_FIND_PACKAGE_Boost=TRUE \
@@ -34,7 +32,7 @@ EXTRA_OECMAKE = "-DBUILD_SHARED_LIBS=ON \
34" 32"
35CXXFLAGS += "-std=c++11" 33CXXFLAGS += "-std=c++11"
36 34
37do_configure_prepend () { 35do_configure:prepend () {
38 rm -f ${S}/admin/ltmain.sh 36 rm -f ${S}/admin/ltmain.sh
39 rm -f ${S}/admin/libtool.m4.in 37 rm -f ${S}/admin/libtool.m4.in
40} 38}
diff --git a/meta/recipes-support/user-creation/xuser-account_0.1.bb b/meta/recipes-support/user-creation/xuser-account_0.1.bb
index 81817d1e25..639b01f6eb 100644
--- a/meta/recipes-support/user-creation/xuser-account_0.1.bb
+++ b/meta/recipes-support/user-creation/xuser-account_0.1.bb
@@ -18,11 +18,11 @@ do_install() {
18 install -D -m 0644 ${WORKDIR}/system-xuser.conf ${D}${sysconfdir}/dbus-1/system.d/system-xuser.conf 18 install -D -m 0644 ${WORKDIR}/system-xuser.conf ${D}${sysconfdir}/dbus-1/system.d/system-xuser.conf
19} 19}
20 20
21FILES_${PN} = "${sysconfdir}/dbus-1/system.d/system-xuser.conf" 21FILES:${PN} = "${sysconfdir}/dbus-1/system.d/system-xuser.conf"
22 22
23USERADD_PACKAGES = "${PN}" 23USERADD_PACKAGES = "${PN}"
24USERADD_PARAM_${PN} = "--create-home \ 24USERADD_PARAM:${PN} = "--create-home \
25 --groups video,tty,audio,input,shutdown,disk \ 25 --groups video,tty,audio,input,shutdown,disk \
26 --user-group xuser" 26 --user-group xuser"
27 27
28ALLOW_EMPTY_${PN} = "1" 28ALLOW_EMPTY:${PN} = "1"
diff --git a/meta/recipes-support/utfcpp/utfcpp_4.0.5.bb b/meta/recipes-support/utfcpp/utfcpp_4.0.5.bb
new file mode 100644
index 0000000000..5ac6fd369a
--- /dev/null
+++ b/meta/recipes-support/utfcpp/utfcpp_4.0.5.bb
@@ -0,0 +1,16 @@
1SUMMARY = " UTF-8 with C++ in a Portable Way"
2HOMEPAGE = "https://github.com/nemtrif/utfcpp"
3
4LICENSE = "BSL-1.0 & BSD-3-Clause"
5LIC_FILES_CHKSUM = "file://LICENSE;md5=e4224ccaecb14d942c71d31bef20d78c \
6 file://extern/ftest/LICENSE;md5=d33c6488d3b003723a5f17ac984db030"
7
8SRC_URI = "gitsm://github.com/nemtrif/utfcpp;protocol=https;branch=master"
9
10SRCREV = "6be08bbea14ffa0a5c594257fb6285a054395cd7"
11
12S = "${WORKDIR}/git"
13
14inherit cmake
15
16FILES:${PN}-dev += "${datadir}/utf8cpp/cmake"
diff --git a/meta/recipes-support/vim/files/0001-src-Makefile-improve-reproducibility.patch b/meta/recipes-support/vim/files/0001-src-Makefile-improve-reproducibility.patch
index 63a7b78f12..2fc11dbdc2 100644
--- a/meta/recipes-support/vim/files/0001-src-Makefile-improve-reproducibility.patch
+++ b/meta/recipes-support/vim/files/0001-src-Makefile-improve-reproducibility.patch
@@ -16,11 +16,11 @@ Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
16 src/Makefile | 14 ++++---------- 16 src/Makefile | 14 ++++----------
17 1 file changed, 4 insertions(+), 10 deletions(-) 17 1 file changed, 4 insertions(+), 10 deletions(-)
18 18
19diff --git a/src/Makefile b/src/Makefile 19Index: git/src/Makefile
20index f2fafa4dc..7148d4bd9 100644 20===================================================================
21--- a/src/Makefile 21--- git.orig/src/Makefile
22+++ b/src/Makefile 22+++ git/src/Makefile
23@@ -2845,16 +2845,10 @@ auto/pathdef.c: Makefile auto/config.mk 23@@ -3101,16 +3101,10 @@ auto/pathdef.c: Makefile auto/config.mk
24 -@echo '#include "vim.h"' >> $@ 24 -@echo '#include "vim.h"' >> $@
25 -@echo 'char_u *default_vim_dir = (char_u *)"$(VIMRCLOC)";' | $(QUOTESED) >> $@ 25 -@echo 'char_u *default_vim_dir = (char_u *)"$(VIMRCLOC)";' | $(QUOTESED) >> $@
26 -@echo 'char_u *default_vimruntime_dir = (char_u *)"$(VIMRUNTIMEDIR)";' | $(QUOTESED) >> $@ 26 -@echo 'char_u *default_vimruntime_dir = (char_u *)"$(VIMRUNTIMEDIR)";' | $(QUOTESED) >> $@
@@ -41,6 +41,3 @@ index f2fafa4dc..7148d4bd9 100644
41 -@sh $(srcdir)/pathdef.sh 41 -@sh $(srcdir)/pathdef.sh
42 42
43 GUI_GTK_RES_INPUTS = \ 43 GUI_GTK_RES_INPUTS = \
44--
452.17.1
46
diff --git a/meta/recipes-support/vim/files/disable_acl_header_check.patch b/meta/recipes-support/vim/files/disable_acl_header_check.patch
index 33089162b4..ee1ea0f390 100644
--- a/meta/recipes-support/vim/files/disable_acl_header_check.patch
+++ b/meta/recipes-support/vim/files/disable_acl_header_check.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] disable acl header check
5 5
6Don't check 'sys/acl.h' if acl support disabled for vim/vim-tiny. 6Don't check 'sys/acl.h' if acl support disabled for vim/vim-tiny.
7 7
8Upstream-Status: pending 8Upstream-Status: Pending
9 9
10Signed-off-by: Wenzong Fan <wenzong.fan@windriver.com> 10Signed-off-by: Wenzong Fan <wenzong.fan@windriver.com>
11Signed-off-by: Changqing Li <changqing.li@windriver.com> 11Signed-off-by: Changqing Li <changqing.li@windriver.com>
@@ -13,11 +13,11 @@ Signed-off-by: Changqing Li <changqing.li@windriver.com>
13 src/configure.ac | 3 ++- 13 src/configure.ac | 3 ++-
14 1 file changed, 2 insertions(+), 1 deletion(-) 14 1 file changed, 2 insertions(+), 1 deletion(-)
15 15
16diff --git a/src/configure.ac b/src/configure.ac 16Index: git/src/configure.ac
17index 2d409b3ca06a..dbcaf6140263 100644 17===================================================================
18--- a/src/configure.ac 18--- git.orig/src/configure.ac
19+++ b/src/configure.ac 19+++ git/src/configure.ac
20@@ -3257,7 +3257,7 @@ AC_CHECK_HEADERS(stdint.h stdlib.h string.h \ 20@@ -3292,7 +3292,7 @@ AC_CHECK_HEADERS(stdint.h stdlib.h strin
21 sys/systeminfo.h locale.h sys/stream.h termios.h \ 21 sys/systeminfo.h locale.h sys/stream.h termios.h \
22 libc.h sys/statfs.h poll.h sys/poll.h pwd.h \ 22 libc.h sys/statfs.h poll.h sys/poll.h pwd.h \
23 utime.h sys/param.h sys/ptms.h libintl.h libgen.h \ 23 utime.h sys/param.h sys/ptms.h libintl.h libgen.h \
@@ -26,7 +26,7 @@ index 2d409b3ca06a..dbcaf6140263 100644
26 sys/access.h sys/sysinfo.h wchar.h wctype.h) 26 sys/access.h sys/sysinfo.h wchar.h wctype.h)
27 27
28 dnl sys/ptem.h depends on sys/stream.h on Solaris 28 dnl sys/ptem.h depends on sys/stream.h on Solaris
29@@ -3886,6 +3886,7 @@ AC_ARG_ENABLE(acl, 29@@ -3974,6 +3974,7 @@ AC_ARG_ENABLE(acl,
30 , [enable_acl="yes"]) 30 , [enable_acl="yes"])
31 if test "$enable_acl" = "yes"; then 31 if test "$enable_acl" = "yes"; then
32 AC_MSG_RESULT(no) 32 AC_MSG_RESULT(no)
@@ -34,6 +34,3 @@ index 2d409b3ca06a..dbcaf6140263 100644
34 AC_CHECK_LIB(posix1e, acl_get_file, [LIBS="$LIBS -lposix1e"], 34 AC_CHECK_LIB(posix1e, acl_get_file, [LIBS="$LIBS -lposix1e"],
35 AC_CHECK_LIB(acl, acl_get_file, [LIBS="$LIBS -lacl" 35 AC_CHECK_LIB(acl, acl_get_file, [LIBS="$LIBS -lacl"
36 AC_CHECK_LIB(attr, fgetxattr, LIBS="$LIBS -lattr",,)],,),) 36 AC_CHECK_LIB(attr, fgetxattr, LIBS="$LIBS -lattr",,)],,),)
37--
382.7.4
39
diff --git a/meta/recipes-support/vim/files/no-path-adjust.patch b/meta/recipes-support/vim/files/no-path-adjust.patch
index 05c2d803f6..908459a95e 100644
--- a/meta/recipes-support/vim/files/no-path-adjust.patch
+++ b/meta/recipes-support/vim/files/no-path-adjust.patch
@@ -1,4 +1,7 @@
1vim: do not adjust script pathnames 1From 4125a1ccb82fd53d003acdc34e462f238f0c4f0d Mon Sep 17 00:00:00 2001
2From: Joe Slater <joe.slater@windriver.com>
3Date: Fri, 8 Jul 2022 11:03:22 +0800
4Subject: [PATCH] vim: do not adjust script pathnames
2 5
3When cross-compiling, we do not want to reference the host versions of 6When cross-compiling, we do not want to reference the host versions of
4things like perl and awk. 7things like perl and awk.
@@ -6,22 +9,28 @@ things like perl and awk.
6Upstream-Status: Pending 9Upstream-Status: Pending
7 10
8Signed-off-by: Joe Slater <joe.slater@windriver.com> 11Signed-off-by: Joe Slater <joe.slater@windriver.com>
12Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
13---
14 src/Makefile | 6 +-----
15 1 file changed, 1 insertion(+), 5 deletions(-)
9 16
17diff --git a/src/Makefile b/src/Makefile
18index c9513a632..7a7cbdc43 100644
10--- a/src/Makefile 19--- a/src/Makefile
11+++ b/src/Makefile 20+++ b/src/Makefile
12@@ -2507,11 +2507,14 @@ installtools: $(TOOLS) $(DESTDIR)$(exec_ 21@@ -2534,11 +2534,7 @@ installtools: $(TOOLS) $(DESTDIR)$(exec_prefix) $(DEST_BIN) \
13 rm -rf $$cvs; \ 22 rm -rf $$cvs; \
14 fi 23 fi
15 -chmod $(FILEMOD) $(DEST_TOOLS)/* 24 -chmod $(FILEMOD) $(DEST_TOOLS)/*
16-# replace the path in some tools 25-# replace the path in some tools
17+ 26- perlpath=`./which.sh perl` && sed -e "s+/usr/bin/perl+$$perlpath+" $(TOOLSSOURCE)/efm_perl.pl >$(DEST_TOOLS)/efm_perl.pl
18+# replace the path in some tools, but not when cross-compiling 27- awkpath=`./which.sh nawk` && sed -e "s+/usr/bin/nawk+$$awkpath+" $(TOOLSSOURCE)/mve.awk >$(DEST_TOOLS)/mve.awk; if test -z "$$awkpath"; then \
19+ifneq ($(CROSS_COMPILING),1) 28- awkpath=`./which.sh gawk` && sed -e "s+/usr/bin/nawk+$$awkpath+" $(TOOLSSOURCE)/mve.awk >$(DEST_TOOLS)/mve.awk; if test -z "$$awkpath"; then \
20 perlpath=`./which.sh perl` && sed -e "s+/usr/bin/perl+$$perlpath+" $(TOOLSSOURCE)/efm_perl.pl >$(DEST_TOOLS)/efm_perl.pl 29- awkpath=`./which.sh awk` && sed -e "s+/usr/bin/nawk+$$awkpath+" $(TOOLSSOURCE)/mve.awk >$(DEST_TOOLS)/mve.awk; fi; fi
21 awkpath=`./which.sh nawk` && sed -e "s+/usr/bin/nawk+$$awkpath+" $(TOOLSSOURCE)/mve.awk >$(DEST_TOOLS)/mve.awk; if test -z "$$awkpath"; then \ 30+# not replace the path in some tools
22 awkpath=`./which.sh gawk` && sed -e "s+/usr/bin/nawk+$$awkpath+" $(TOOLSSOURCE)/mve.awk >$(DEST_TOOLS)/mve.awk; if test -z "$$awkpath"; then \
23 awkpath=`./which.sh awk` && sed -e "s+/usr/bin/nawk+$$awkpath+" $(TOOLSSOURCE)/mve.awk >$(DEST_TOOLS)/mve.awk; fi; fi
24+endif
25 -chmod $(SCRIPTMOD) `grep -l "^#!" $(DEST_TOOLS)/*` 31 -chmod $(SCRIPTMOD) `grep -l "^#!" $(DEST_TOOLS)/*`
26 32
27 # install the language specific files for tools, if they were unpacked 33 # install the language specific files for tools, if they were unpacked
34--
352.25.1
36
diff --git a/meta/recipes-support/vim/files/racefix.patch b/meta/recipes-support/vim/files/racefix.patch
deleted file mode 100644
index 48dca44cad..0000000000
--- a/meta/recipes-support/vim/files/racefix.patch
+++ /dev/null
@@ -1,33 +0,0 @@
1The creation of the LINGUAS file is duplicated for each desktop file
2which can lead the commands to race against each other. Rework
3the makefile to avoid this as the expense of leaving the file on disk.
4
5Upstream-Status: Pending
6RP 2021/2/15
7
8Index: git/src/po/Makefile
9===================================================================
10--- git.orig/src/po/Makefile
11+++ git/src/po/Makefile
12@@ -165,17 +165,16 @@ $(PACKAGE).pot: ../*.c ../if_perl.xs ../
13 po/gvim.desktop.in po/vim.desktop.in
14 mv -f ../$(PACKAGE).po $(PACKAGE).pot
15
16-vim.desktop: vim.desktop.in $(POFILES)
17+LINGUAS:
18 echo $(LANGUAGES) | tr " " "\n" |sed -e '/\./d' | sort > LINGUAS
19+
20+vim.desktop: vim.desktop.in $(POFILES) LINGUAS
21 $(MSGFMT) --desktop -d . --template vim.desktop.in -o tmp_vim.desktop
22- rm -f LINGUAS
23 if command -v desktop-file-validate; then desktop-file-validate tmp_vim.desktop; fi
24 mv tmp_vim.desktop vim.desktop
25
26-gvim.desktop: gvim.desktop.in $(POFILES)
27- echo $(LANGUAGES) | tr " " "\n" |sed -e '/\./d' | sort > LINGUAS
28+gvim.desktop: gvim.desktop.in $(POFILES) LINGUAS
29 $(MSGFMT) --desktop -d . --template gvim.desktop.in -o tmp_gvim.desktop
30- rm -f LINGUAS
31 if command -v desktop-file-validate; then desktop-file-validate tmp_gvim.desktop; fi
32 mv tmp_gvim.desktop gvim.desktop
33
diff --git a/meta/recipes-support/vim/files/vim-add-knob-whether-elf.h-are-checked.patch b/meta/recipes-support/vim/files/vim-add-knob-whether-elf.h-are-checked.patch
index 37914d4cd9..5284ba45b6 100644
--- a/meta/recipes-support/vim/files/vim-add-knob-whether-elf.h-are-checked.patch
+++ b/meta/recipes-support/vim/files/vim-add-knob-whether-elf.h-are-checked.patch
@@ -14,11 +14,11 @@ Signed-off-by: Changqing Li <changqing.li@windriver.com>
14 src/configure.ac | 7 +++++++ 14 src/configure.ac | 7 +++++++
15 1 file changed, 7 insertions(+) 15 1 file changed, 7 insertions(+)
16 16
17diff --git a/src/configure.ac b/src/configure.ac 17Index: git/src/configure.ac
18index 0ee86ad..64736f0 100644 18===================================================================
19--- a/src/configure.ac 19--- git.orig/src/configure.ac
20+++ b/src/configure.ac 20+++ git/src/configure.ac
21@@ -3192,11 +3192,18 @@ AC_TRY_COMPILE([#include <stdio.h>], [int x __attribute__((unused));], 21@@ -3264,11 +3264,18 @@ AC_TRY_COMPILE([#include <stdio.h>], [in
22 AC_MSG_RESULT(no)) 22 AC_MSG_RESULT(no))
23 23
24 dnl Checks for header files. 24 dnl Checks for header files.
@@ -37,6 +37,3 @@ index 0ee86ad..64736f0 100644
37 37
38 AC_HEADER_DIRENT 38 AC_HEADER_DIRENT
39 39
40--
412.7.4
42
diff --git a/meta/recipes-support/vim/vim-tiny_8.2.bb b/meta/recipes-support/vim/vim-tiny_9.1.bb
index e4c26d23f6..e4c26d23f6 100644
--- a/meta/recipes-support/vim/vim-tiny_8.2.bb
+++ b/meta/recipes-support/vim/vim-tiny_9.1.bb
diff --git a/meta/recipes-support/vim/vim.inc b/meta/recipes-support/vim/vim.inc
index d57f784da5..071deed338 100644
--- a/meta/recipes-support/vim/vim.inc
+++ b/meta/recipes-support/vim/vim.inc
@@ -1,29 +1,37 @@
1SUMMARY = "Vi IMproved - enhanced vi editor" 1SUMMARY = "Vi IMproved - enhanced vi editor"
2DESCRIPTION = "Vim is a greatly improved version of the good old UNIX editor Vi. Many new features have been added: multi-level undo, syntax highlighting, command line history, on-line help, spell checking, filename completion, block operations, script language, etc. There is also a Graphical User Interface (GUI) available."
2SECTION = "console/utils" 3SECTION = "console/utils"
3 4
5HOMEPAGE = "https://www.vim.org/"
6BUGTRACKER = "https://github.com/vim/vim/issues"
7
4DEPENDS = "ncurses gettext-native" 8DEPENDS = "ncurses gettext-native"
5# vimdiff doesn't like busybox diff 9# vimdiff doesn't like busybox diff
6RSUGGESTS_${PN} = "diffutils" 10RSUGGESTS:${PN} = "diffutils"
7LICENSE = "vim" 11
8LIC_FILES_CHKSUM = "file://runtime/doc/uganda.txt;endline=287;md5=a19edd7ec70d573a005d9e509375a99a" 12LICENSE = "Vim"
13LIC_FILES_CHKSUM = "file://LICENSE;md5=d1a651ab770b45d41c0f8cb5a8ca930e"
9 14
10SRC_URI = "git://github.com/vim/vim.git \ 15SRC_URI = "git://github.com/vim/vim.git;branch=master;protocol=https \
11 file://disable_acl_header_check.patch \ 16 file://disable_acl_header_check.patch \
12 file://vim-add-knob-whether-elf.h-are-checked.patch \ 17 file://vim-add-knob-whether-elf.h-are-checked.patch \
13 file://0001-src-Makefile-improve-reproducibility.patch \ 18 file://0001-src-Makefile-improve-reproducibility.patch \
14 file://no-path-adjust.patch \ 19 file://no-path-adjust.patch \
15 file://racefix.patch \ 20 "
16" 21
17SRCREV = "98056533b96b6b5d8849641de93185dd7bcadc44" 22PV .= ".0114"
23SRCREV = "fcaed6a70faf73bff3e5405ada556d726024f866"
18 24
19# Do not consider .z in x.y.z, as that is updated with every commit 25# Do not consider .z in x.y.z, as that is updated with every commit
20UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>\d+\.\d+)\.0" 26UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>\d+\.\d+)\.0"
27# Ignore that the upstream version .z in x.y.z is always newer
28UPSTREAM_VERSION_UNKNOWN = "1"
21 29
22S = "${WORKDIR}/git" 30S = "${WORKDIR}/git"
23 31
24VIMDIR = "vim${@d.getVar('PV').split('.')[0]}${@d.getVar('PV').split('.')[1]}" 32VIMDIR = "vim${@d.getVar('PV').split('.')[0]}${@d.getVar('PV').split('.')[1]}"
25 33
26inherit autotools-brokensep update-alternatives mime-xdg 34inherit autotools-brokensep update-alternatives mime-xdg pkgconfig
27 35
28CLEANBROKEN = "1" 36CLEANBROKEN = "1"
29 37
@@ -32,29 +40,24 @@ do_configure () {
32 cd src 40 cd src
33 rm -f auto/* 41 rm -f auto/*
34 touch auto/config.mk 42 touch auto/config.mk
43 # git timestamps aren't reliable, so touch the shipped .po files so they aren't regenerated
44 touch -c po/cs.cp1250.po po/ja.euc-jp.po po/ja.sjis.po po/ko.po po/pl.UTF-8.po po/pl.cp1250.po po/ru.cp1251.po po/sk.cp1250.po po/uk.cp1251.po po/zh_CN.po po/zh_CN.cp936.po po/zh_TW.po
45 # ru.cp1251.po uses CP1251 rather than cp1251, fix that
46 sed -i -e s/CP1251/cp1251/ po/ru.cp1251.po
35 aclocal 47 aclocal
36 autoconf 48 autoconf
37 cd .. 49 cd ..
38 oe_runconf 50 oe_runconf
39 touch src/auto/configure 51 touch src/auto/configure
40 touch src/auto/config.mk src/auto/config.h 52 touch src/auto/config.mk src/auto/config.h
53 # need a native tool, not a target one
54 ${BUILD_CC} src/po/sjiscorr.c -o src/po/sjiscorr
41} 55}
42 56
43do_compile() { 57PACKAGECONFIG ??= "\
44 # We do not support fully / correctly the following locales. Attempting
45 # to use these with msgfmt in order to update the ".desktop" files exposes
46 # this problem and leads to the compile failing.
47 for LOCALE in cs fr ko pl sk zh_CN zh_TW;do
48 echo -n > src/po/${LOCALE}.po
49 done
50 autotools_do_compile
51}
52
53#Available PACKAGECONFIG options are gtkgui, acl, x11, tiny
54PACKAGECONFIG ??= ""
55PACKAGECONFIG += " \
56 ${@bb.utils.filter('DISTRO_FEATURES', 'acl selinux', d)} \ 58 ${@bb.utils.filter('DISTRO_FEATURES', 'acl selinux', d)} \
57 ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11 gtkgui', '', d)} \ 59 ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11 gtkgui', '', d)} \
60 nls \
58" 61"
59 62
60PACKAGECONFIG[gtkgui] = "--enable-gui=gtk3,--enable-gui=no,gtk+3" 63PACKAGECONFIG[gtkgui] = "--enable-gui=gtk3,--enable-gui=no,gtk+3"
@@ -63,6 +66,8 @@ PACKAGECONFIG[x11] = "--with-x,--without-x,xt,"
63PACKAGECONFIG[tiny] = "--with-features=tiny,--with-features=big,," 66PACKAGECONFIG[tiny] = "--with-features=tiny,--with-features=big,,"
64PACKAGECONFIG[selinux] = "--enable-selinux,--disable-selinux,libselinux," 67PACKAGECONFIG[selinux] = "--enable-selinux,--disable-selinux,libselinux,"
65PACKAGECONFIG[elfutils] = "--enable-elf-check,,elfutils," 68PACKAGECONFIG[elfutils] = "--enable-elf-check,,elfutils,"
69PACKAGECONFIG[nls] = "--enable-nls,--disable-nls,,"
70PACKAGECONFIG[sound] = "--enable-canberra,--disable-canberra,canberra,"
66 71
67EXTRA_OECONF = " \ 72EXTRA_OECONF = " \
68 --disable-gpm \ 73 --disable-gpm \
@@ -71,6 +76,7 @@ EXTRA_OECONF = " \
71 --disable-netbeans \ 76 --disable-netbeans \
72 --disable-desktop-database-update \ 77 --disable-desktop-database-update \
73 --with-tlib=ncurses \ 78 --with-tlib=ncurses \
79 --with-modified-by='${MAINTAINER}' \
74 ac_cv_small_wchar_t=no \ 80 ac_cv_small_wchar_t=no \
75 ac_cv_path_GLIB_COMPILE_RESOURCES=no \ 81 ac_cv_path_GLIB_COMPILE_RESOURCES=no \
76 vim_cv_getcwd_broken=no \ 82 vim_cv_getcwd_broken=no \
@@ -83,6 +89,10 @@ EXTRA_OECONF = " \
83 STRIP=/bin/true \ 89 STRIP=/bin/true \
84" 90"
85 91
92# Some host distros don't have it, disable consistently
93EXTRA_OECONF:append:class-native = " vim_cv_timer_create=no"
94EXTRA_OECONF:append:class-target = " vim_cv_timer_create=yes"
95
86do_install() { 96do_install() {
87 autotools_do_install 97 autotools_do_install
88 98
@@ -109,18 +119,18 @@ do_install() {
109PARALLEL_MAKEINST = "" 119PARALLEL_MAKEINST = ""
110 120
111PACKAGES =+ "${PN}-common ${PN}-syntax ${PN}-help ${PN}-tutor ${PN}-vimrc ${PN}-tools" 121PACKAGES =+ "${PN}-common ${PN}-syntax ${PN}-help ${PN}-tutor ${PN}-vimrc ${PN}-tools"
112FILES_${PN}-syntax = "${datadir}/${BPN}/${VIMDIR}/syntax" 122FILES:${PN}-syntax = "${datadir}/${BPN}/${VIMDIR}/syntax"
113FILES_${PN}-help = "${datadir}/${BPN}/${VIMDIR}/doc" 123FILES:${PN}-help = "${datadir}/${BPN}/${VIMDIR}/doc"
114FILES_${PN}-tutor = "${datadir}/${BPN}/${VIMDIR}/tutor ${bindir}/${BPN}tutor" 124FILES:${PN}-tutor = "${datadir}/${BPN}/${VIMDIR}/tutor ${bindir}/${BPN}tutor"
115FILES_${PN}-vimrc = "${datadir}/${BPN}/vimrc" 125FILES:${PN}-vimrc = "${datadir}/${BPN}/vimrc"
116FILES_${PN}-data = "${datadir}/${BPN}" 126FILES:${PN}-data = "${datadir}/${BPN}"
117 127
118# We do not want to complain if perl or gawk are not on the target. 128# We do not want to complain if perl or gawk are not on the target.
119# 129#
120FILES_${PN}-tools = "${datadir}/${BPN}/${VIMDIR}/tools" 130FILES:${PN}-tools = "${datadir}/${BPN}/${VIMDIR}/tools"
121INSANE_SKIP_${PN}-tools = "file-rdeps" 131INSANE_SKIP:${PN}-tools = "file-rdeps"
122 132
123FILES_${PN}-common = " \ 133FILES:${PN}-common = " \
124 ${datadir}/${BPN}/${VIMDIR}/*.vim \ 134 ${datadir}/${BPN}/${VIMDIR}/*.vim \
125 ${datadir}/${BPN}/${VIMDIR}/autoload \ 135 ${datadir}/${BPN}/${VIMDIR}/autoload \
126 ${datadir}/${BPN}/${VIMDIR}/colors \ 136 ${datadir}/${BPN}/${VIMDIR}/colors \
@@ -136,11 +146,7 @@ FILES_${PN}-common = " \
136 ${datadir}/icons \ 146 ${datadir}/icons \
137" 147"
138 148
139RDEPENDS_${BPN} = "ncurses-terminfo-base" 149ALTERNATIVE:${PN} = "vi vim"
140# Recommend that runtime data is installed along with vim
141RRECOMMENDS_${BPN} = "${PN}-syntax ${PN}-help ${PN}-tutor ${PN}-vimrc ${PN}-common"
142
143ALTERNATIVE_${PN} = "vi vim"
144ALTERNATIVE_PRIORITY = "100" 150ALTERNATIVE_PRIORITY = "100"
145ALTERNATIVE_TARGET = "${bindir}/${BPN}.${BPN}" 151ALTERNATIVE_TARGET = "${bindir}/${BPN}.${BPN}"
146ALTERNATIVE_LINK_NAME[vi] = "${base_bindir}/vi" 152ALTERNATIVE_LINK_NAME[vi] = "${base_bindir}/vi"
diff --git a/meta/recipes-support/vim/vim_8.2.bb b/meta/recipes-support/vim/vim_9.1.bb
index 7e4654e472..fee9f055e9 100644
--- a/meta/recipes-support/vim/vim_8.2.bb
+++ b/meta/recipes-support/vim/vim_9.1.bb
@@ -2,10 +2,18 @@ require vim.inc
2 2
3PROVIDES = "xxd" 3PROVIDES = "xxd"
4 4
5PACKAGECONFIG_class-native = "" 5RDEPENDS:${PN} = "ncurses-terminfo-base ${PN}-xxd"
6# Recommend that runtime data is installed along with vim
7RRECOMMENDS:${PN} = "${PN}-syntax ${PN}-help ${PN}-tutor ${PN}-vimrc ${PN}-common"
8
9PACKAGECONFIG:class-native = ""
6BBCLASSEXTEND = "native nativesdk" 10BBCLASSEXTEND = "native nativesdk"
7 11
8ALTERNATIVE_${PN}_append = " xxd" 12PACKAGES =+ "${PN}-xxd"
13FILES:${PN}-xxd = "${bindir}/xxd"
14RPROVIDES:${PN}-xxd = "xxd"
15
16ALTERNATIVE:${PN}-xxd = "xxd"
9ALTERNATIVE_TARGET[xxd] = "${bindir}/xxd" 17ALTERNATIVE_TARGET[xxd] = "${bindir}/xxd"
10ALTERNATIVE_LINK_NAME[xxd] = "${bindir}/xxd" 18ALTERNATIVE_LINK_NAME[xxd] = "${bindir}/xxd"
11 19
diff --git a/meta/recipes-support/vte/vte/0001-Add-W_EXITCODE-macro-for-non-glibc-systems.patch b/meta/recipes-support/vte/vte/0001-Add-W_EXITCODE-macro-for-non-glibc-systems.patch
index a1d2e7ff27..8934d5f80a 100644
--- a/meta/recipes-support/vte/vte/0001-Add-W_EXITCODE-macro-for-non-glibc-systems.patch
+++ b/meta/recipes-support/vte/vte/0001-Add-W_EXITCODE-macro-for-non-glibc-systems.patch
@@ -11,33 +11,25 @@ Upstream-Status: Submitted [1]
11Signed-off-by: Andreas Müller <schnitzeltony@gmail.com> 11Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
12 12
13[1] https://gitlab.gnome.org/GNOME/vte/issues/72 13[1] https://gitlab.gnome.org/GNOME/vte/issues/72
14
15--- 14---
16 src/missing.hh | 4 ++++ 15 src/widget.cc | 4 +++
17 src/widget.cc | 1 + 16 1 files changed, 4 insertions(+)
18 2 files changed, 5 insertions(+)
19 17
20diff --git a/src/missing.hh b/src/missing.hh
21index 0742270..30ede62 100644
22--- a/src/missing.hh
23+++ b/src/missing.hh
24@@ -33,3 +33,7 @@ int fdwalk(int (*cb)(void* data, int fd),
25 char* strchrnul(char const* s,
26 int c);
27 #endif
28+
29+#ifndef W_EXITCODE
30+#define W_EXITCODE(ret, sig) ((ret) << 8 | (sig))
31+#endif
32diff --git a/src/widget.cc b/src/widget.cc 18diff --git a/src/widget.cc b/src/widget.cc
33index 44a2271..0668735 100644 19index 07f7cabf..31a77f68 100644
34--- a/src/widget.cc 20--- a/src/widget.cc
35+++ b/src/widget.cc 21+++ b/src/widget.cc
36@@ -21,6 +21,7 @@ 22@@ -16,6 +16,10 @@
37 #include "widget.hh" 23 * along with this library. If not, see <https://www.gnu.org/licenses/>.
24 */
38 25
39 #include <sys/wait.h> // for W_EXITCODE 26+#ifndef W_EXITCODE
40+#include "missing.hh" // for W_EXITCODE on non-glibc systems 27+#define W_EXITCODE(ret, sig) ((ret) << 8 | (sig))
28+#endif
29+
30 #include "config.h"
41 31
42 #include <exception> 32 #include "widget.hh"
43 #include <new> 33--
342.42.0
35
diff --git a/meta/recipes-support/vte/vte_0.62.2.bb b/meta/recipes-support/vte/vte_0.62.2.bb
deleted file mode 100644
index b7e6f0bd8f..0000000000
--- a/meta/recipes-support/vte/vte_0.62.2.bb
+++ /dev/null
@@ -1,57 +0,0 @@
1SUMMARY = "Virtual terminal emulator GTK+ widget library"
2BUGTRACKER = "https://bugzilla.gnome.org/buglist.cgi?product=vte"
3LICENSE = "GPLv3 & LGPLv3+ & LGPLv2.1+"
4LICENSE_libvte = "LGPLv3+"
5
6LIC_FILES_CHKSUM = " \
7 file://COPYING.GPL3;md5=2f31b266d3440dd7ee50f92cf67d8e6c \
8 file://COPYING.LGPL2;md5=4fbd65380cdd255951079008b364516c \
9 file://COPYING.LGPL3;md5=b52f2d57d10c4f7ee67a7eb9615d5d24 \
10"
11
12DEPENDS = "glib-2.0 gtk+3 libpcre2 libxml2-native gperf-native icu"
13
14GNOMEBASEBUILDCLASS = "meson"
15GIR_MESON_OPTION = 'gir'
16
17inherit gnomebase gtk-doc features_check upstream-version-is-even gobject-introspection
18
19# vapigen.m4 is required when vala is not present (but the one from vala should be used normally)
20SRC_URI += "file://0001-Add-W_EXITCODE-macro-for-non-glibc-systems.patch"
21SRC_URI[archive.sha256sum] = "b0300bbcf0c02df5812a10a3cb8e4fff723bab92c08c97a0a90c167cf543aff0"
22
23ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
24
25# Instead of "inherit vala" we do the relevant settings here so we can
26# set DEPENDS based on PACKAGECONFIG.
27
28# Our patched version of Vala looks in STAGING_DATADIR for .vapi files
29export STAGING_DATADIR
30# Upstream Vala >= 0.11 looks in XDG_DATA_DIRS for .vapi files
31export XDG_DATA_DIRS = "${STAGING_DATADIR}"
32
33# Help g-ir-scanner find the .so for linking
34do_compile_prepend() {
35 export GIR_EXTRA_LIBS_PATH="${B}/src/.libs"
36}
37
38# Package additional files
39FILES_${PN}-dev += "${datadir}/vala/vapi/*"
40
41PACKAGECONFIG ??= "gnutls"
42PACKAGECONFIG[vala] = "-Dvapi=true,-Dvapi=false,vala-native vala"
43PACKAGECONFIG[gnutls] = "-Dgnutls=true,-Dgnutls=false,gnutls"
44PACKAGECONFIG[systemd] = "-D_systemd=true,-D_systemd=false,systemd"
45# vala requires gir
46PACKAGECONFIG_remove_class-native = "vala"
47
48CFLAGS += "-D_GNU_SOURCE"
49
50PACKAGES =+ "libvte ${PN}-prompt"
51FILES_libvte = "${libdir}/*.so.* ${libdir}/girepository-1.0/*"
52FILES_${PN}-prompt = " \
53 ${sysconfdir}/profile.d \
54 ${libexecdir}/vte-urlencode-cwd \
55"
56
57BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-support/vte/vte_0.74.2.bb b/meta/recipes-support/vte/vte_0.74.2.bb
new file mode 100644
index 0000000000..d8eafde2fb
--- /dev/null
+++ b/meta/recipes-support/vte/vte_0.74.2.bb
@@ -0,0 +1,56 @@
1SUMMARY = "Virtual terminal emulator GTK+ widget library"
2DESCRIPTION = "VTE provides a virtual terminal widget for GTK applications."
3HOMEPAGE = "https://wiki.gnome.org/Apps/Terminal/VTE"
4BUGTRACKER = "https://bugzilla.gnome.org/buglist.cgi?product=vte"
5LICENSE = "GPL-3.0-only & LGPL-3.0-or-later & MIT"
6LICENSE:libvte = "LGPL-3.0-or-later"
7
8LIC_FILES_CHKSUM = " \
9 file://COPYING.GPL3;md5=cc702cf3444d1f19680c794cc61948f9 \
10 file://COPYING.LGPL3;md5=b52f2d57d10c4f7ee67a7eb9615d5d24 \
11 file://COPYING.XTERM;md5=d7fc3a23c16c039afafe2e042030f057 \
12"
13
14DEPENDS = "glib-2.0 glib-2.0-native gtk+3 libpcre2 libxml2-native gperf-native icu"
15
16GIR_MESON_OPTION = 'gir'
17GIDOCGEN_MESON_OPTION = "docs"
18
19inherit gnomebase gi-docgen features_check upstream-version-is-even gobject-introspection systemd vala
20
21SRC_URI += "file://0001-Add-W_EXITCODE-macro-for-non-glibc-systems.patch"
22SRC_URI[archive.sha256sum] = "a535fb2a98fea8a2449cd1a02cccf5190131dddff52e715afdace3feb536eae7"
23
24ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
25
26EXTRA_OEMESON += "${@bb.utils.contains('GI_DATA_ENABLED', 'True', '-Dvapi=true', '-Dvapi=false', d)}"
27EXTRA_OEMESON:append = " ${@bb.utils.contains('GI_DATA_ENABLED', 'False', '-Ddocs=false', '', d)}"
28
29PACKAGECONFIG ??= " \
30 gnutls \
31 ${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)} \
32 ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gtk4', '', d)} \
33"
34PACKAGECONFIG[fribidi] = "-Dfribidi=true,-Dfribidi=false,fribidi"
35PACKAGECONFIG[gtk4] = "-Dgtk4=true,-Dgtk4=false,gtk4"
36PACKAGECONFIG[gnutls] = "-Dgnutls=true,-Dgnutls=false,gnutls"
37PACKAGECONFIG[systemd] = "-D_systemd=true,-D_systemd=false,systemd"
38
39PACKAGES =+ "libvte-gtk4 ${PN}-gtk4 ${PN}-gtk4-dev libvte ${PN}-prompt"
40FILES:libvte-gtk4 = "${libdir}/lib*gtk4.so.* ${libdir}/girepository-1.0/Vte-3.91.typelib"
41FILES:${PN}-gtk4 ="${bindir}/vte-2.91-gtk4"
42FILES:${PN}-gtk4-dev = "${libdir}/lib*gtk4.so \
43 ${libdir}/pkgconfig/vte-2.91-gtk4.pc \
44 ${datadir}/gir-1.0/Vte-3.91.gir \
45 ${datadir}/vala/vapi/vte-2.91-gtk4.deps \
46 ${datadir}/vala/vapi/vte-2.91-gtk4.vapi \
47 ${includedir}/vte-2.91-gtk4 \
48 "
49FILES:${PN} +="${systemd_user_unitdir}"
50FILES:libvte = "${libdir}/*.so.* ${libdir}/girepository-1.0/*"
51FILES:${PN}-prompt = " \
52 ${sysconfdir}/profile.d \
53 ${libexecdir}/vte-urlencode-cwd \
54"
55
56FILES:${PN}-dev += "${datadir}/glade/"
diff --git a/meta/recipes-support/xxhash/xxhash_0.8.2.bb b/meta/recipes-support/xxhash/xxhash_0.8.2.bb
new file mode 100644
index 0000000000..f16b183c95
--- /dev/null
+++ b/meta/recipes-support/xxhash/xxhash_0.8.2.bb
@@ -0,0 +1,27 @@
1SUMMARY = "Extremely fast non-cryptographic hash algorithm"
2DESCRIPTION = "xxHash is an extremely fast non-cryptographic hash algorithm, \
3working at speeds close to RAM limits."
4HOMEPAGE = "http://www.xxhash.com/"
5LICENSE = "BSD-2-Clause & GPL-2.0-only"
6LIC_FILES_CHKSUM = "file://LICENSE;md5=13be6b481ff5616f77dda971191bb29b \
7 file://cli/COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
8 "
9
10SRC_URI = "git://github.com/Cyan4973/xxHash.git;branch=release;protocol=https"
11UPSTREAM_CHECK_GITTAGREGEX = "v(?P<pver>\d+(\.\d+)+)"
12
13SRCREV = "bbb27a5efb85b92a0486cf361a8635715a53f6ba"
14
15S = "${WORKDIR}/git"
16
17CFLAGS += "${@bb.utils.contains('SELECTED_OPTIMIZATION', '-Og', '-DXXH_NO_INLINE_HINTS', '', d)}"
18
19do_compile () {
20 oe_runmake all
21}
22
23do_install () {
24 oe_runmake DESTDIR=${D} install
25}
26
27BBCLASSEXTEND = "native nativesdk"