Openembedded Devel Discussions
 help / color / mirror / Atom feed
From: Denys Dmytriyenko <denis@denix.org>
To: openembedded-devel@lists.openembedded.org
Subject: Re: [toolchain-layer][PATCH 1/3] gcc-4.5: Match with OE-Core on building procedure for libgcc and gcc-runtime
Date: Wed, 02 May 2012 03:14:55 -0400	[thread overview]
Message-ID: <20120502071455.GA2681@denix.org> (raw)
In-Reply-To: <1335819064-29468-1-git-send-email-raj.khem@gmail.com>

Darn it! I wasted too much time today trying to debug this recent breakage in 
gcc-runtime-4.5, before seeing these patches. It was failing like this:

checking dynamic linker characteristics... configure: error: Link tests are not allowed after GCC_NO_EXECUTABLES.

Now it works again!

> Signed-off-by: Khem Raj <raj.khem@gmail.com>

Tested-by: Denys Dmytriyenko <denys@ti.com>


> ---
>  toolchain-layer/recipes-devtools/gcc/libgcc_4.5.bb |   47 +++++++++++++++-----
>  1 files changed, 36 insertions(+), 11 deletions(-)
> 
> diff --git a/toolchain-layer/recipes-devtools/gcc/libgcc_4.5.bb b/toolchain-layer/recipes-devtools/gcc/libgcc_4.5.bb
> index 1579c8b..ecef5e7 100644
> --- a/toolchain-layer/recipes-devtools/gcc/libgcc_4.5.bb
> +++ b/toolchain-layer/recipes-devtools/gcc/libgcc_4.5.bb
> @@ -1,33 +1,46 @@
>  require recipes-devtools/gcc/gcc-${PV}.inc
>  
> -
>  INHIBIT_DEFAULT_DEPS = "1"
> +
>  DEPENDS = "virtual/${TARGET_PREFIX}gcc virtual/${TARGET_PREFIX}g++"
>  
>  PACKAGES = "\
>    ${PN} \
>    ${PN}-dev \
> +  ${PN}-dbg \
> +  libgcov-dev \
>    "
>  
>  FILES_${PN} = "${base_libdir}/libgcc*.so.*"
>  FILES_${PN}-dev = " \
>    ${base_libdir}/libgcc*.so \
>    ${libdir}/${TARGET_SYS}/${BINV}/crt* \
> -  ${libdir}/${TARGET_SYS}/${BINV}/libgcov.a \
>    ${libdir}/${TARGET_SYS}/${BINV}/libgcc*"
> +FILES_libgcov-dev = " \
> +  ${libdir}/${TARGET_SYS}/${BINV}/libgcov.a"
>  
> -do_fetch[noexec] = "1"
> -do_unpack[noexec] = "1"
> -do_patch[noexec] = "1"
> -do_configure[noexec] = "1"
> -do_compile[noexec] = "1"
> +FILES_${PN}-dbg += "${base_libdir}/.debug/"
>  
> -do_install () {
> +do_configure () {
>  	target=`echo ${MULTIMACH_TARGET_SYS} | sed -e s#-nativesdk##`
> -
> -	# Install libgcc from our gcc-cross saved data
>  	install -d ${D}${base_libdir} ${D}${libdir}
> -	cp -fpPR ${STAGING_INCDIR_NATIVE}/gcc-build-internal-$target/* ${D}
> +	cp -fpPR ${STAGING_INCDIR_NATIVE}/gcc-build-internal-$target/* ${B}
> +	mkdir -p ${B}/${PN}
> +	cd ${B}/${PN}
> +	chmod a+x ${S}/${PN}/configure
> +	${S}/${PN}/configure ${CONFIGUREOPTS} ${EXTRA_OECONF}
> +}
> +
> +do_compile () {
> +	target=`echo ${TARGET_SYS} | sed -e s#-nativesdk##`
> +	cd ${B}/${PN}
> +	oe_runmake MULTIBUILDTOP=${B}/$target/${PN}/
> +}
> +
> +do_install () {
> +	target=`echo ${TARGET_SYS} | sed -e s#-nativesdk##`
> +	cd ${B}/${PN}
> +	oe_runmake 'DESTDIR=${D}' MULTIBUILDTOP=${B}/$target/${PN}/ install
>  
>  	# Move libgcc_s into /lib
>  	mkdir -p ${D}${base_libdir}
> @@ -36,7 +49,19 @@ do_install () {
>  	else
>  		mv ${D}${libdir}/libgcc* ${D}${base_libdir} || true
>  	fi
> +
> +	# install the runtime in /usr/lib/ not in /usr/lib/gcc on target
> +	# so that cross-gcc can find it in the sysroot
> +
> +	mv ${D}${libdir}/gcc/* ${D}${libdir}
> +	rm -rf ${D}${libdir}/gcc/
>  }
>  
> +do_package_write_ipk[depends] += "virtual/${MLPREFIX}libc:do_package"
> +do_package_write_deb[depends] += "virtual/${MLPREFIX}libc:do_package"
> +do_package_write_rpm[depends] += "virtual/${MLPREFIX}libc:do_package"
> +
>  BBCLASSEXTEND = "nativesdk"
>  
> +INSANE_SKIP_libgcc-dev = "staticdev"
> +INSANE_SKIP_libgcov-dev = "staticdev"
> -- 
> 1.7.5.4
> 
> 
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel



      parent reply	other threads:[~2012-05-02  7:24 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-04-30 20:51 [toolchain-layer][PATCH 1/3] gcc-4.5: Match with OE-Core on building procedure for libgcc and gcc-runtime Khem Raj
2012-04-30 20:51 ` [toolchain-layer][PATCH 2/3] gcc-crosssdk-intermediate_4.5.bb: with-headers has been moved from common include Khem Raj
2012-05-02  7:15   ` Denys Dmytriyenko
2012-04-30 20:51 ` [toolchain-layer][PATCH 3/3] libgcc-4.5: Fix nativesdk build problem Khem Raj
2012-05-02  7:15   ` Denys Dmytriyenko
2012-05-02  7:14 ` Denys Dmytriyenko [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20120502071455.GA2681@denix.org \
    --to=denis@denix.org \
    --cc=openembedded-devel@lists.openembedded.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox