commit: a25550068e83334990cbde591af4e17f0d9ffc48 Author: Wiktor Jaskulski <wjaskulski <AT> adva <DOT> com> AuthorDate: Fri May 20 11:38:24 2022 +0000 Commit: Sam James <sam <AT> gentoo <DOT> org> CommitDate: Fri Feb 27 14:22:24 2026 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a2555006
dev-embedded/u-boot-tools: Fix cross compilation https://forums.gentoo.org/viewtopic-p-8880946.html Use cross_tools as target for make when cross compiling. [sam: Keep old revisions, bump new ones in ~arch.] Signed-off-by: Wiktor Jaskulski <wjaskulski <AT> adva.com> Part-of: https://github.com/gentoo/gentoo/pull/25571 Closes: https://github.com/gentoo/gentoo/pull/25571 Signed-off-by: Sam James <sam <AT> gentoo.org> .../u-boot-tools/u-boot-tools-2024.01-r3.ebuild | 112 +++++++++++++++++++++ .../u-boot-tools/u-boot-tools-2025.01-r3.ebuild | 111 ++++++++++++++++++++ 2 files changed, 223 insertions(+) diff --git a/dev-embedded/u-boot-tools/u-boot-tools-2024.01-r3.ebuild b/dev-embedded/u-boot-tools/u-boot-tools-2024.01-r3.ebuild new file mode 100644 index 000000000000..d58691bd9cf0 --- /dev/null +++ b/dev-embedded/u-boot-tools/u-boot-tools-2024.01-r3.ebuild @@ -0,0 +1,112 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit toolchain-funcs + +MY_P="u-boot-${PV/_/-}" +DESCRIPTION="utilities for working with Das U-Boot" +HOMEPAGE="https://www.denx.de/wiki/U-Boot/WebHome" +SRC_URI=" + https://ftp.denx.de/pub/u-boot/${MY_P}.tar.bz2 + https://github.com/u-boot/u-boot/commit/88b9b9c44c859bdd9bb227e2fdbc4cbf686c3343.patch + -> u-boot-tools-2024.01-fix-invalid-escape-sequence.patch +" +S="${WORKDIR}/${MY_P}" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86" +IUSE="envtools" + +RDEPEND=" + dev-libs/openssl:= + net-libs/gnutls:= + sys-apps/dtc[python] + sys-apps/util-linux:= +" +DEPEND="${RDEPEND}" +BDEPEND=" + dev-lang/swig + app-alternatives/yacc + app-alternatives/lex + virtual/pkgconfig +" + +PATCHES=( + # https://github.com/u-boot/u-boot/pull/489 + "${DISTDIR}"/u-boot-tools-2024.01-fix-invalid-escape-sequence.patch +) + +src_prepare() { + default + sed -i 's:\bpkg-config\b:${PKG_CONFIG}:g' \ + scripts/kconfig/{g,m,n,q}conf-cfg.sh \ + scripts/kconfig/Makefile \ + tools/Makefile || die + sed -i -e 's/cross_tools: tools/& envtools /' "${S}/Makefile" +} + +src_configure() { + tc-export AR BUILD_CC CC PKG_CONFIG + tc-export_build_env +} + +src_compile() { + # Unset a few KBUILD variables. Bug #540476 + unset KBUILD_OUTPUT KBUILD_SRC + + if [[ ${CBUILD} != ${CHOST} ]] ; then + local myemakeargs=( + CROSS_COMPILE="${CHOST}"- + CROSS_BUILD=y + ) + local maketarget=$(usex envtools envtools cross_tools) + else + local myemakeargs=( + AR="${AR}" + CC="${CC}" + HOSTCC="${BUILD_CC}" + HOSTCFLAGS="${CFLAGS} ${CPPFLAGS}"' $(HOSTCPPFLAGS)' + HOSTLDFLAGS="${LDFLAGS}" + ) + local maketarget=$(usex envtools envtools tools-all) + fi + + myemakeargs+=( + V=1 + ) + + emake "${myemakeargs[@]}" tools-only_defconfig + + emake "${myemakeargs[@]}" \ + NO_SDL=1 \ + HOSTSTRIP=: \ + STRIP=: \ + CONFIG_ENV_OVERWRITE=y \ + "${maketarget}" +} + +src_test() { :; } + +src_install() { + cd tools || die + + if ! use envtools; then + dobin dumpimage fdtgrep img2srec mkeficapsule mkenvimage mkimage + fi + + if [[ ${CBUILD} == ${CHOST} ]]; then + dobin gen_eth_addr + fi + + dobin env/fw_printenv + + dosym fw_printenv /usr/bin/fw_setenv + + insinto /etc + doins env/fw_env.config + + doman ../doc/mkimage.1 +} diff --git a/dev-embedded/u-boot-tools/u-boot-tools-2025.01-r3.ebuild b/dev-embedded/u-boot-tools/u-boot-tools-2025.01-r3.ebuild new file mode 100644 index 000000000000..6f739854c3a9 --- /dev/null +++ b/dev-embedded/u-boot-tools/u-boot-tools-2025.01-r3.ebuild @@ -0,0 +1,111 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit toolchain-funcs + +MY_P="u-boot-${PV/_/-}" +DESCRIPTION="utilities for working with Das U-Boot" +HOMEPAGE="https://www.denx.de/wiki/U-Boot/WebHome" +SRC_URI=" + https://ftp.denx.de/pub/u-boot/${MY_P}.tar.bz2 +" +S="${WORKDIR}/${MY_P}" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86" +IUSE="envtools" + +RDEPEND=" + dev-libs/openssl:= + net-libs/gnutls:= + >=sys-apps/dtc-1.4.6 + sys-apps/util-linux:= +" +DEPEND="${RDEPEND}" +BDEPEND=" + dev-lang/swig + app-alternatives/yacc + app-alternatives/lex + virtual/pkgconfig +" + +PATCHES=( + "${FILESDIR}"/${PN}-2025.01-no-bundled-dtc.patch +) + +src_prepare() { + default + sed -i 's:\bpkg-config\b:${PKG_CONFIG}:g' \ + scripts/kconfig/{g,m,n,q}conf-cfg.sh \ + scripts/kconfig/Makefile \ + tools/Makefile || die + sed -i -e 's/cross_tools: tools/& envtools /' "${S}/Makefile" +} + +src_configure() { + tc-export AR BUILD_CC CC PKG_CONFIG + tc-export_build_env +} + +src_compile() { + # Unset a few KBUILD variables. Bug #540476 + unset KBUILD_OUTPUT KBUILD_SRC + + if [[ ${CBUILD} != ${CHOST} ]] ; then + local myemakeargs=( + CROSS_COMPILE="${CHOST}"- + CROSS_BUILD=y + ) + local maketarget=$(usex envtools envtools cross_tools) + else + local myemakeargs=( + AR="${AR}" + CC="${CC}" + HOSTCC="${BUILD_CC}" + HOSTCFLAGS="${CFLAGS} ${CPPFLAGS}"' $(HOSTCPPFLAGS)' + HOSTLDFLAGS="${LDFLAGS}" + ) + local maketarget=$(usex envtools envtools tools-all) + fi + + myemakeargs+=( + V=1 + DTC="dtc" + # Provided by sys-apps/dtc[python] + NO_PYTHON=1 + ) + + emake "${myemakeargs[@]}" tools-only_defconfig + emake "${myemakeargs[@]}" \ + NO_SDL=1 \ + HOSTSTRIP=: \ + STRIP=: \ + CONFIG_ENV_OVERWRITE=y \ + "${maketarget}" +} + +src_test() { :; } + +src_install() { + cd tools || die + + if ! use envtools; then + dobin dumpimage fdtgrep img2srec mkeficapsule mkenvimage mkimage + fi + + if [[ ${CBUILD} == ${CHOST} ]]; then + dobin gen_eth_addr + fi + + dobin env/fw_printenv + + dosym fw_printenv /usr/bin/fw_setenv + + insinto /etc + doins env/fw_env.config + + doman ../doc/mkimage.1 +}
