Message ID | 1415399089-27578-1-git-send-email-denis@denix.org |
---|---|
State | New |
Headers | show |
On Fri, Nov 7, 2014 at 8:24 PM, Denys Dmytriyenko <denis@denix.org> wrote: > From: Denys Dmytriyenko <denys@ti.com> > > u-boot doesn't really support building its tools for the target, as they are > built with HOSTCC compiler, which is also used to compile fixdep utility > that gets executed during the build. Since it might be beneficial to have a > target version of mkimage, let's hack it to build fixdep in a separate step. > > Signed-off-by: Denys Dmytriyenko <denys@ti.com> ... > + make HOSTCC="${BUILD_CC}" HOSTLD="${BUILD_LD}" HOSTLDFLAGS="${BUILD_LDFLAGS}" HOSTSTRIP=true dot-config=0 scripts_basic ... We do it in meta-fsl-arm as below: ESCRIPTION = "U-boot bootloader mxsboot tool" LICENSE = "GPLv2+" LIC_FILES_CHKSUM = "file://Licenses/README;md5=c7383a594871c03da76b3707929d2919" SECTION = "bootloader" DEPENDS = "openssl" PROVIDES = "u-boot-mxsboot" PV = "v2014.10+git${SRCPV}" SRCREV = "75ce95e627609c9b9e537e935e69c4ecef26c8f7" SRCBRANCH = "patches-2014.10" SRC_URI = "git://github.com/Freescale/u-boot-imx.git;branch=${SRCBRANCH}" S = "${WORKDIR}/git" inherit fsl-u-boot-localversion EXTRA_OEMAKE = 'HOSTCC="${CC} ${CPPFLAGS}" HOSTLDFLAGS="-L${libdir} -L${base_libdir}" HOSTSTRIP=true CONFIG_MX28=y' do_configure () { oe_runmake sandbox_defconfig } do_compile () { oe_runmake tools-only } do_install () { install -d ${D}${bindir} install -m 0755 tools/mxsboot ${D}${bindir}/uboot-mxsboot ln -sf uboot-mxsboot ${D}${bindir}/mxsboot } BBCLASSEXTEND = "native nativesdk"
On Sat, Nov 08, 2014 at 05:12:36PM -0200, Otavio Salvador wrote: > On Fri, Nov 7, 2014 at 8:24 PM, Denys Dmytriyenko <denis@denix.org> wrote: > > From: Denys Dmytriyenko <denys@ti.com> > > > > u-boot doesn't really support building its tools for the target, as they are > > built with HOSTCC compiler, which is also used to compile fixdep utility > > that gets executed during the build. Since it might be beneficial to have a > > target version of mkimage, let's hack it to build fixdep in a separate step. > > > > Signed-off-by: Denys Dmytriyenko <denys@ti.com> > ... > > + make HOSTCC="${BUILD_CC}" HOSTLD="${BUILD_LD}" HOSTLDFLAGS="${BUILD_LDFLAGS}" HOSTSTRIP=true dot-config=0 scripts_basic > ... > > We do it in meta-fsl-arm as below: That still doesn't work when building tools for the target: /bin/sh: scripts/basic/fixdep: cannot execute binary file: Exec format error I guess you are missing the point of this patch, as sandbox_defconfig will only eliminate dot-config=0 parameter, but not the need to build fixdep separately with a different host compiler... On the other hand - is it a real requirement to build mkimage for the target? > ESCRIPTION = "U-boot bootloader mxsboot tool" > LICENSE = "GPLv2+" > LIC_FILES_CHKSUM = "file://Licenses/README;md5=c7383a594871c03da76b3707929d2919" > SECTION = "bootloader" > DEPENDS = "openssl" > PROVIDES = "u-boot-mxsboot" > > PV = "v2014.10+git${SRCPV}" > > SRCREV = "75ce95e627609c9b9e537e935e69c4ecef26c8f7" > SRCBRANCH = "patches-2014.10" > SRC_URI = "git://github.com/Freescale/u-boot-imx.git;branch=${SRCBRANCH}" > > S = "${WORKDIR}/git" > > inherit fsl-u-boot-localversion > > EXTRA_OEMAKE = 'HOSTCC="${CC} ${CPPFLAGS}" HOSTLDFLAGS="-L${libdir} > -L${base_libdir}" HOSTSTRIP=true CONFIG_MX28=y' > > do_configure () { > oe_runmake sandbox_defconfig > } > > do_compile () { > oe_runmake tools-only > } > > do_install () { > install -d ${D}${bindir} > install -m 0755 tools/mxsboot ${D}${bindir}/uboot-mxsboot > ln -sf uboot-mxsboot ${D}${bindir}/mxsboot > } > > BBCLASSEXTEND = "native nativesdk" > > > -- > Otavio Salvador O.S. Systems > http://www.ossystems.com.br http://code.ossystems.com.br > Mobile: +55 (53) 9981-7854 Mobile: +1 (347) 903-9750 >
> Op 9 nov. 2014, om 08:51 heeft Denys Dmytriyenko <denis@denix.org> het volgende geschreven: > > On Sat, Nov 08, 2014 at 05:12:36PM -0200, Otavio Salvador wrote: >> On Fri, Nov 7, 2014 at 8:24 PM, Denys Dmytriyenko <denis@denix.org> wrote: >>> From: Denys Dmytriyenko <denys@ti.com> >>> >>> u-boot doesn't really support building its tools for the target, as they are >>> built with HOSTCC compiler, which is also used to compile fixdep utility >>> that gets executed during the build. Since it might be beneficial to have a >>> target version of mkimage, let's hack it to build fixdep in a separate step. >>> >>> Signed-off-by: Denys Dmytriyenko <denys@ti.com> >> ... >>> + make HOSTCC="${BUILD_CC}" HOSTLD="${BUILD_LD}" HOSTLDFLAGS="${BUILD_LDFLAGS}" HOSTSTRIP=true dot-config=0 scripts_basic >> ... >> >> We do it in meta-fsl-arm as below: > > That still doesn't work when building tools for the target: > /bin/sh: scripts/basic/fixdep: cannot execute binary file: Exec format error > > I guess you are missing the point of this patch, as sandbox_defconfig will > only eliminate dot-config=0 parameter, but not the need to build fixdep > separately with a different host compiler... > > On the other hand - is it a real requirement to build mkimage for the target? I use it a lot when regenerating initramfses on the target. regards, Koen > > >> ESCRIPTION = "U-boot bootloader mxsboot tool" >> LICENSE = "GPLv2+" >> LIC_FILES_CHKSUM = "file://Licenses/README;md5=c7383a594871c03da76b3707929d2919" >> SECTION = "bootloader" >> DEPENDS = "openssl" >> PROVIDES = "u-boot-mxsboot" >> >> PV = "v2014.10+git${SRCPV}" >> >> SRCREV = "75ce95e627609c9b9e537e935e69c4ecef26c8f7" >> SRCBRANCH = "patches-2014.10" >> SRC_URI = "git://github.com/Freescale/u-boot-imx.git;branch=${SRCBRANCH}" >> >> S = "${WORKDIR}/git" >> >> inherit fsl-u-boot-localversion >> >> EXTRA_OEMAKE = 'HOSTCC="${CC} ${CPPFLAGS}" HOSTLDFLAGS="-L${libdir} >> -L${base_libdir}" HOSTSTRIP=true CONFIG_MX28=y' >> >> do_configure () { >> oe_runmake sandbox_defconfig >> } >> >> do_compile () { >> oe_runmake tools-only >> } >> >> do_install () { >> install -d ${D}${bindir} >> install -m 0755 tools/mxsboot ${D}${bindir}/uboot-mxsboot >> ln -sf uboot-mxsboot ${D}${bindir}/mxsboot >> } >> >> BBCLASSEXTEND = "native nativesdk" >> >> >> -- >> Otavio Salvador O.S. Systems >> http://www.ossystems.com.br http://code.ossystems.com.br >> Mobile: +55 (53) 9981-7854 Mobile: +1 (347) 903-9750 >> > -- > _______________________________________________ > Openembedded-core mailing list > Openembedded-core@lists.openembedded.org > http://lists.openembedded.org/mailman/listinfo/openembedded-core
diff --git a/meta/recipes-bsp/u-boot/u-boot-mkimage_2014.07.bb b/meta/recipes-bsp/u-boot/u-boot-mkimage_2014.07.bb index 7c05215..eabf680 100644 --- a/meta/recipes-bsp/u-boot/u-boot-mkimage_2014.07.bb +++ b/meta/recipes-bsp/u-boot/u-boot-mkimage_2014.07.bb @@ -20,6 +20,8 @@ do_compile () { # Make sure the recompile is OK rm -f ${B}/tools/.depend + make HOSTCC="${BUILD_CC}" HOSTLD="${BUILD_LD}" HOSTLDFLAGS="${BUILD_LDFLAGS}" HOSTSTRIP=true dot-config=0 scripts_basic + sed 's/^tools-only: scripts_basic /tools-only: /' -i Makefile oe_runmake tools-only }