| Message ID | 20251222200739.2278706-20-alex.kanavin@gmail.com |
|---|---|
| State | Under Review |
| Headers | show |
| Series | [001/114] build-appliance-image: do not inherit setuptools | expand |
Hi, apologies for the late reply. I believe this patch broke icu (do_install) and I didn't find any fixes on the list. On Mon, 2025-12-22 at 21:06 +0100, Alexander Kanavin via lists.openembedded.org wrote: > From: Alexander Kanavin <alex@linutronix.de> > > Upstream has adopted the . as version separator, so custom recipe logic > can be dropped. > > License-Update: additional files under MIT. > > Signed-off-by: Alexander Kanavin <alex@linutronix.de> > --- > .../icu/{icu_77-1.bb => icu_78.1.bb} | 36 +++++++------------ > 1 file changed, 12 insertions(+), 24 deletions(-) > rename meta/recipes-support/icu/{icu_77-1.bb => icu_78.1.bb} (84%) > > diff --git a/meta/recipes-support/icu/icu_77-1.bb b/meta/recipes-support/icu/icu_78.1.bb > similarity index 84% > rename from meta/recipes-support/icu/icu_77-1.bb > rename to meta/recipes-support/icu/icu_78.1.bb > index 7c9483c975..8827f05f51 100644 > --- a/meta/recipes-support/icu/icu_77-1.bb > +++ b/meta/recipes-support/icu/icu_78.1.bb > @@ -5,7 +5,7 @@ internationalization (I18N) and globalization (G11N), giving applications the \ > same results on all platforms." > HOMEPAGE = "https://icu.unicode.org/" > > -LICENSE = "ICU" > +LICENSE = "ICU & MIT" > DEPENDS = "icu-native" > > CVE_PRODUCT = "international_components_for_unicode" > @@ -25,7 +25,7 @@ EXTRA_OECONF:class-native = "--disable-icu-config ac_cv_path_install='install - > c > EXTRA_OECONF:class-nativesdk = "--with-cross-build=${STAGING_ICU_DIR_NATIVE} --disable-icu- > config ac_cv_path_install='install -c'" > EXTRA_OECONF:append:class-target = " --enable-automake-test-format" > EXTRA_OECONF:append:class-target = "${@oe.utils.conditional('SITEINFO_ENDIANNESS', 'be', ' -- > with-data-packaging=archive', '', d)}" > -TARGET_CXXFLAGS:append = "${@oe.utils.conditional('SITEINFO_ENDIANNESS', 'be', ' - > DICU_DATA_DIR=\\""${datadir}/${BPN}/${@icu_install_folder(d)}\\""', '', d)}" > +TARGET_CXXFLAGS:append = "${@oe.utils.conditional('SITEINFO_ENDIANNESS', 'be', ' - > DICU_DATA_DIR=\\""${datadir}/${BPN}/${PV}\\""', '', d)}" > > ASNEEDED = "" > > @@ -61,16 +61,16 @@ remove_build_host_references() { > -e 's,--sysroot=${STAGING_DIR_TARGET},,g' \ > -e 's|${DEBUG_PREFIX_MAP}||g' \ > -e 's:${HOSTTOOLS_DIR}/::g' \ > - ${D}/${libdir}/${BPN}/${@icu_install_folder(d)}/Makefile.inc \ > - ${D}/${libdir}/${BPN}/${@icu_install_folder(d)}/pkgdata.inc > + ${D}/${libdir}/${BPN}/${PV}/Makefile.inc \ > + ${D}/${libdir}/${BPN}/${PV}/pkgdata.inc > } > > do_install:append:class-target() { > # The native pkgdata can not generate the correct data file. > # Use icupkg to re-generate it. > if [ "${SITEINFO_ENDIANNESS}" = "be" ] ; then > - rm -f ${D}/${datadir}/${BPN}/${@icu_install_folder(d)}/icudt${ICU_MAJOR_VER}b.dat > - icupkg -tb ${S}/data/in/icudt${ICU_MAJOR_VER}l.dat > ${D}/${datadir}/${BPN}/${@icu_install_folder(d)}/icudt${ICU_MAJOR_VER}b.dat > + rm -f ${D}/${datadir}/${BPN}/${PV}/icudt${ICU_MAJOR_VER}b.dat > + icupkg -tb ${S}/data/in/icudt${ICU_MAJOR_VER}l.dat do_install crashes with install: cannot stat '[...]/icu/78.1/sources/icu/source/data/out/icudt78.1l.dat': No such file or directory actual file is '[...]/icu/78.1/sources/icu/source/data/out/icudt78l.dat' Fix: -ICU_MAJOR_VER = "${@d.getVar('PV').split('-')[0]}" +ICU_MAJOR_VER = "${@d.getVar('PV').split('.')[0]}" I can send a patch to fix it. Yannic > ${D}/${datadir}/${BPN}/${PV}/icudt${ICU_MAJOR_VER}b.dat > fi > > remove_build_host_references > @@ -92,28 +92,16 @@ FILES:libicuio = "${libdir}/libicuio.so.*" > > BBCLASSEXTEND = "native nativesdk" > > -LIC_FILES_CHKSUM = "file://../LICENSE;md5=cf57d9459a2c5f88ecd83c75207cc5ff" > +LIC_FILES_CHKSUM = "file://../LICENSE;md5=e531a388be7c1df9a0fb7b4010c9c1d7" > > -def icu_download_version(d): > - pvsplit = d.getVar('PV').split('-') > - return pvsplit[0] + "_" + pvsplit[1] > - > -def icu_download_folder(d): > - pvsplit = d.getVar('PV').split('-') > - return pvsplit[0] + "-" + pvsplit[1] > - > -def icu_install_folder(d): > - pvsplit = d.getVar('PV').split('-') > - return pvsplit[0] + "." + pvsplit[1] > - > -ICU_PV = "${@icu_download_version(d)}" > -ICU_FOLDER = "${@icu_download_folder(d)}" > +ICU_PV = "${PV}" > +ICU_FOLDER = "${PV}" > > # http://errors.yoctoproject.org/Errors/Details/20486/ > ARM_INSTRUCTION_SET:armv4 = "arm" > ARM_INSTRUCTION_SET:armv5 = "arm" > > -BASE_SRC_URI = "${GITHUB_BASE_URI}/download/release-${ICU_FOLDER}/icu4c-${ICU_PV}-src.tgz" > +BASE_SRC_URI = "${GITHUB_BASE_URI}/download/release-${ICU_FOLDER}/icu4c-${ICU_PV}-sources.tgz" > DATA_SRC_URI = "${GITHUB_BASE_URI}/download/release-${ICU_FOLDER}/icu4c-${ICU_PV}-data.zip" > SRC_URI = "${BASE_SRC_URI};name=code \ > ${DATA_SRC_URI};name=data \ > @@ -128,8 +116,8 @@ SRC_URI = "${BASE_SRC_URI};name=code \ > SRC_URI:append:class-target = "\ > file://0001-Disable-LDFLAGSICUDT-for-Linux.patch \ > " > -SRC_URI[code.sha256sum] = "588e431f77327c39031ffbb8843c0e3bc122c211374485fa87dc5f3faff24061" > -SRC_URI[data.sha256sum] = "1e08bfafa442260ccabf9a872d4eab12de813d42b90769df056bab032b37e1d3" > +SRC_URI[code.sha256sum] = "6217f58ca39b23127605cfc6c7e0d3475fe4b0d63157011383d716cb41617886" > +SRC_URI[data.sha256sum] = "e7b652244f27194e0ea46a0d21cfc714ee8a818e1fd82d51a93bc91516fdcf65" > > UPSTREAM_CHECK_REGEX = "releases/tag/release-(?P<pver>(?!.+rc).+)" > GITHUB_BASE_URI = "https://github.com/unicode-org/icu/releases" > > -=-=-=-=-=-=-=-=-=-=-=- > Links: You receive all messages sent to this group. > View/Reply Online (#228345): https://lists.openembedded.org/g/openembedded-core/message/228345 > Mute This Topic: https://lists.openembedded.org/mt/116906912/8280565 > Group Owner: openembedded-core+owner@lists.openembedded.org > Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [y.moog@phytec.de] > -=-=-=-=-=-=-=-=-=-=-=-
diff --git a/meta/recipes-support/icu/icu_77-1.bb b/meta/recipes-support/icu/icu_78.1.bb similarity index 84% rename from meta/recipes-support/icu/icu_77-1.bb rename to meta/recipes-support/icu/icu_78.1.bb index 7c9483c975..8827f05f51 100644 --- a/meta/recipes-support/icu/icu_77-1.bb +++ b/meta/recipes-support/icu/icu_78.1.bb @@ -5,7 +5,7 @@ internationalization (I18N) and globalization (G11N), giving applications the \ same results on all platforms." HOMEPAGE = "https://icu.unicode.org/" -LICENSE = "ICU" +LICENSE = "ICU & MIT" DEPENDS = "icu-native" CVE_PRODUCT = "international_components_for_unicode" @@ -25,7 +25,7 @@ EXTRA_OECONF:class-native = "--disable-icu-config ac_cv_path_install='install -c EXTRA_OECONF:class-nativesdk = "--with-cross-build=${STAGING_ICU_DIR_NATIVE} --disable-icu-config ac_cv_path_install='install -c'" EXTRA_OECONF:append:class-target = " --enable-automake-test-format" EXTRA_OECONF:append:class-target = "${@oe.utils.conditional('SITEINFO_ENDIANNESS', 'be', ' --with-data-packaging=archive', '', d)}" -TARGET_CXXFLAGS:append = "${@oe.utils.conditional('SITEINFO_ENDIANNESS', 'be', ' -DICU_DATA_DIR=\\""${datadir}/${BPN}/${@icu_install_folder(d)}\\""', '', d)}" +TARGET_CXXFLAGS:append = "${@oe.utils.conditional('SITEINFO_ENDIANNESS', 'be', ' -DICU_DATA_DIR=\\""${datadir}/${BPN}/${PV}\\""', '', d)}" ASNEEDED = "" @@ -61,16 +61,16 @@ remove_build_host_references() { -e 's,--sysroot=${STAGING_DIR_TARGET},,g' \ -e 's|${DEBUG_PREFIX_MAP}||g' \ -e 's:${HOSTTOOLS_DIR}/::g' \ - ${D}/${libdir}/${BPN}/${@icu_install_folder(d)}/Makefile.inc \ - ${D}/${libdir}/${BPN}/${@icu_install_folder(d)}/pkgdata.inc + ${D}/${libdir}/${BPN}/${PV}/Makefile.inc \ + ${D}/${libdir}/${BPN}/${PV}/pkgdata.inc } do_install:append:class-target() { # The native pkgdata can not generate the correct data file. # Use icupkg to re-generate it. if [ "${SITEINFO_ENDIANNESS}" = "be" ] ; then - rm -f ${D}/${datadir}/${BPN}/${@icu_install_folder(d)}/icudt${ICU_MAJOR_VER}b.dat - icupkg -tb ${S}/data/in/icudt${ICU_MAJOR_VER}l.dat ${D}/${datadir}/${BPN}/${@icu_install_folder(d)}/icudt${ICU_MAJOR_VER}b.dat + rm -f ${D}/${datadir}/${BPN}/${PV}/icudt${ICU_MAJOR_VER}b.dat + icupkg -tb ${S}/data/in/icudt${ICU_MAJOR_VER}l.dat ${D}/${datadir}/${BPN}/${PV}/icudt${ICU_MAJOR_VER}b.dat fi remove_build_host_references @@ -92,28 +92,16 @@ FILES:libicuio = "${libdir}/libicuio.so.*" BBCLASSEXTEND = "native nativesdk" -LIC_FILES_CHKSUM = "file://../LICENSE;md5=cf57d9459a2c5f88ecd83c75207cc5ff" +LIC_FILES_CHKSUM = "file://../LICENSE;md5=e531a388be7c1df9a0fb7b4010c9c1d7" -def icu_download_version(d): - pvsplit = d.getVar('PV').split('-') - return pvsplit[0] + "_" + pvsplit[1] - -def icu_download_folder(d): - pvsplit = d.getVar('PV').split('-') - return pvsplit[0] + "-" + pvsplit[1] - -def icu_install_folder(d): - pvsplit = d.getVar('PV').split('-') - return pvsplit[0] + "." + pvsplit[1] - -ICU_PV = "${@icu_download_version(d)}" -ICU_FOLDER = "${@icu_download_folder(d)}" +ICU_PV = "${PV}" +ICU_FOLDER = "${PV}" # http://errors.yoctoproject.org/Errors/Details/20486/ ARM_INSTRUCTION_SET:armv4 = "arm" ARM_INSTRUCTION_SET:armv5 = "arm" -BASE_SRC_URI = "${GITHUB_BASE_URI}/download/release-${ICU_FOLDER}/icu4c-${ICU_PV}-src.tgz" +BASE_SRC_URI = "${GITHUB_BASE_URI}/download/release-${ICU_FOLDER}/icu4c-${ICU_PV}-sources.tgz" DATA_SRC_URI = "${GITHUB_BASE_URI}/download/release-${ICU_FOLDER}/icu4c-${ICU_PV}-data.zip" SRC_URI = "${BASE_SRC_URI};name=code \ ${DATA_SRC_URI};name=data \ @@ -128,8 +116,8 @@ SRC_URI = "${BASE_SRC_URI};name=code \ SRC_URI:append:class-target = "\ file://0001-Disable-LDFLAGSICUDT-for-Linux.patch \ " -SRC_URI[code.sha256sum] = "588e431f77327c39031ffbb8843c0e3bc122c211374485fa87dc5f3faff24061" -SRC_URI[data.sha256sum] = "1e08bfafa442260ccabf9a872d4eab12de813d42b90769df056bab032b37e1d3" +SRC_URI[code.sha256sum] = "6217f58ca39b23127605cfc6c7e0d3475fe4b0d63157011383d716cb41617886" +SRC_URI[data.sha256sum] = "e7b652244f27194e0ea46a0d21cfc714ee8a818e1fd82d51a93bc91516fdcf65" UPSTREAM_CHECK_REGEX = "releases/tag/release-(?P<pver>(?!.+rc).+)" GITHUB_BASE_URI = "https://github.com/unicode-org/icu/releases"