| Submitter | Dexuan Cui |
|---|---|
| Date | Nov. 24, 2011, 10:08 a.m. |
| Message ID | <d4724b4050931ff51499a8808287f04b0091e93e.1322128489.git.dexuan.cui@intel.com> |
| Download | mbox | patch |
| Permalink | /patch/15383/ |
| State | Accepted |
| Commit | 58fb9fbce2af05a469691390e75aebb2de16ca96 |
| Headers | show |
Comments
On Thu, 2011-11-24 at 18:08 +0800, Dexuan Cui wrote: > Signed-off-by: Dexuan Cui <dexuan.cui@intel.com> > --- > meta/recipes-devtools/gcc/gcc-4.6.inc | 2 +- > meta/recipes-devtools/gcc/gcc-package-target.inc | 2 ++ > 2 files changed, 3 insertions(+), 1 deletions(-) > > diff --git a/meta/recipes-devtools/gcc/gcc-4.6.inc b/meta/recipes-devtools/gcc/gcc-4.6.inc > index 7bf14e3..7cd0850 100644 > --- a/meta/recipes-devtools/gcc/gcc-4.6.inc > +++ b/meta/recipes-devtools/gcc/gcc-4.6.inc > @@ -1,6 +1,6 @@ > require gcc-common.inc > > -PR = "r17" > +PR = "r18" > > # Third digit in PV should be incremented after a minor release > # happens from this branch on gcc e.g. currently its 4.6.0 > diff --git a/meta/recipes-devtools/gcc/gcc-package-target.inc b/meta/recipes-devtools/gcc/gcc-package-target.inc > index f0f1a04..3076670 100644 > --- a/meta/recipes-devtools/gcc/gcc-package-target.inc > +++ b/meta/recipes-devtools/gcc/gcc-package-target.inc > @@ -122,6 +122,8 @@ do_install () { > ln -sf ${TARGET_PREFIX}g++ g++ > ln -sf ${TARGET_PREFIX}gcc gcc > ln -sf ${TARGET_PREFIX}cpp cpp > + install -d ${D}${base_libdir} > + ln -sf ${bindir}/${TARGET_PREFIX}cpp ${D}${base_libdir}/cpp > ln -sf g++ c++ > ln -sf gcc cc Why do we need this change? Cheers, Richard
Richard Purdie wrote on 2011-11-24: > On Thu, 2011-11-24 at 18:08 +0800, Dexuan Cui wrote: >> --- a/meta/recipes-devtools/gcc/gcc-package-target.inc >> +++ b/meta/recipes-devtools/gcc/gcc-package-target.inc >> @@ -122,6 +122,8 @@ do_install () { >> ln -sf ${TARGET_PREFIX}g++ g++ >> ln -sf ${TARGET_PREFIX}gcc gcc >> ln -sf ${TARGET_PREFIX}cpp cpp >> + install -d ${D}${base_libdir} >> + ln -sf ${bindir}/${TARGET_PREFIX}cpp ${D}${base_libdir}/cpp >> ln -sf g++ c++ >> ln -sf gcc cc > > Why do we need this change? When I was trying self-hosted-image, eglibc's do_install failed in the target: ERROR: cannot stat bootparam_prot.h: the cause is: rpcgen doesn't work properly: rpcgen can't exec /lib/cpp since it doesn't exist. According to http://tldp.org/LDP/Linux-Filesystem-Hierarchy/html/lib.html, "if a C preprocessor is installed, /lib/cpp must be a reference to it, for historical reasons. The usual placement of this binary is /usr/bin/cpp". Typical distros, like Ubuntu, openSuSE, Fedora, RHEL, all comply with the rule. Actually in meta/recipes-devtools/gcc/gcc-package-target.inc, we do try to package ${base_libdir}/cpp: FILES_cpp = "\ ${bindir}/${TARGET_PREFIX}cpp \ ${base_libdir}/cpp \ ${libexecdir}/gcc/${TARGET_SYS}/${BINV}/cc1" But unluckily we didn't to create a symbol link in do_install. This patch adds the symbol link. Thanks, -- Dexuan
On Thu, 2011-11-24 at 23:37 +0800, Cui, Dexuan wrote: > Richard Purdie wrote on 2011-11-24: > > On Thu, 2011-11-24 at 18:08 +0800, Dexuan Cui wrote: > >> --- a/meta/recipes-devtools/gcc/gcc-package-target.inc > >> +++ b/meta/recipes-devtools/gcc/gcc-package-target.inc > >> @@ -122,6 +122,8 @@ do_install () { > >> ln -sf ${TARGET_PREFIX}g++ g++ > >> ln -sf ${TARGET_PREFIX}gcc gcc > >> ln -sf ${TARGET_PREFIX}cpp cpp > >> + install -d ${D}${base_libdir} > >> + ln -sf ${bindir}/${TARGET_PREFIX}cpp ${D}${base_libdir}/cpp > >> ln -sf g++ c++ > >> ln -sf gcc cc > > > > Why do we need this change? > When I was trying self-hosted-image, eglibc's do_install failed in the target: > ERROR: cannot stat bootparam_prot.h: the cause is: rpcgen doesn't work properly: rpcgen can't exec /lib/cpp since it doesn't exist. > > According to http://tldp.org/LDP/Linux-Filesystem-Hierarchy/html/lib.html, "if a C preprocessor is installed, /lib/cpp must be a reference to it, for historical reasons. The usual placement of this binary is /usr/bin/cpp". > > Typical distros, like Ubuntu, openSuSE, Fedora, RHEL, all comply with the rule. > > Actually in meta/recipes-devtools/gcc/gcc-package-target.inc, we do try to package ${base_libdir}/cpp: > FILES_cpp = "\ > ${bindir}/${TARGET_PREFIX}cpp \ > ${base_libdir}/cpp \ > ${libexecdir}/gcc/${TARGET_SYS}/${BINV}/cc1" > But unluckily we didn't to create a symbol link in do_install. This patch adds the symbol link. Ok, this sounds great. Put this in the commit message though please! Cheers, Richard
Richard Purdie wrote on 2011-11-25: > On Thu, 2011-11-24 at 23:37 +0800, Cui, Dexuan wrote: >> Richard Purdie wrote on 2011-11-24: >>> On Thu, 2011-11-24 at 18:08 +0800, Dexuan Cui wrote: >>>> --- a/meta/recipes-devtools/gcc/gcc-package-target.inc >>>> +++ b/meta/recipes-devtools/gcc/gcc-package-target.inc >>>> @@ -122,6 +122,8 @@ do_install () { >>>> ln -sf ${TARGET_PREFIX}g++ g++ >>>> ln -sf ${TARGET_PREFIX}gcc gcc >>>> ln -sf ${TARGET_PREFIX}cpp cpp >>>> + install -d ${D}${base_libdir} >>>> + ln -sf ${bindir}/${TARGET_PREFIX}cpp ${D}${base_libdir}/cpp >>>> ln -sf g++ c++ >>>> ln -sf gcc cc >>> >>> Why do we need this change? >> When I was trying self-hosted-image, eglibc's do_install failed in the >> target: ERROR: cannot stat bootparam_prot.h: the cause is: rpcgen >> doesn't work properly: rpcgen can't exec /lib/cpp since it doesn't >> exist. >> >> According to >> http://tldp.org/LDP/Linux-Filesystem-Hierarchy/html/lib.html, > "if a C preprocessor is installed, /lib/cpp must be a reference to it, > for historical reasons. The usual placement of this binary is /usr/bin/cpp". >> >> Typical distros, like Ubuntu, openSuSE, Fedora, RHEL, all comply with >> the rule. >> >> Actually in meta/recipes-devtools/gcc/gcc-package-target.inc, we do >> try to > package ${base_libdir}/cpp: >> FILES_cpp = "\ >> ${bindir}/${TARGET_PREFIX}cpp \ >> ${base_libdir}/cpp \ >> ${libexecdir}/gcc/${TARGET_SYS}/${BINV}/cc1" >> But unluckily we didn't to create a symbol link in do_install. This >> patch > adds the symbol link. > > Ok, this sounds great. Put this in the commit message though please! Hi RP, Please use the new commit(the only change is the updated commit message): http://git.yoctoproject.org/cgit/cgit.cgi/poky-contrib/commit/?h=dcui/self-hosted-v2&id=f6001f0b12cb561f5e08d3a5b0d61ab5fa924f40 Thanks, -- Dexuan
On Fri, 2011-11-25 at 07:09 +0800, Cui, Dexuan wrote: > Richard Purdie wrote on 2011-11-25: > > On Thu, 2011-11-24 at 23:37 +0800, Cui, Dexuan wrote: > >> Richard Purdie wrote on 2011-11-24: > >>> On Thu, 2011-11-24 at 18:08 +0800, Dexuan Cui wrote: > >>>> --- a/meta/recipes-devtools/gcc/gcc-package-target.inc > >>>> +++ b/meta/recipes-devtools/gcc/gcc-package-target.inc > >>>> @@ -122,6 +122,8 @@ do_install () { > >>>> ln -sf ${TARGET_PREFIX}g++ g++ > >>>> ln -sf ${TARGET_PREFIX}gcc gcc > >>>> ln -sf ${TARGET_PREFIX}cpp cpp > >>>> + install -d ${D}${base_libdir} > >>>> + ln -sf ${bindir}/${TARGET_PREFIX}cpp ${D}${base_libdir}/cpp > >>>> ln -sf g++ c++ > >>>> ln -sf gcc cc > >>> > >>> Why do we need this change? > >> When I was trying self-hosted-image, eglibc's do_install failed in the > >> target: ERROR: cannot stat bootparam_prot.h: the cause is: rpcgen > >> doesn't work properly: rpcgen can't exec /lib/cpp since it doesn't > >> exist. > >> > >> According to > >> http://tldp.org/LDP/Linux-Filesystem-Hierarchy/html/lib.html, > > "if a C preprocessor is installed, /lib/cpp must be a reference to it, > > for historical reasons. The usual placement of this binary is /usr/bin/cpp". > >> > >> Typical distros, like Ubuntu, openSuSE, Fedora, RHEL, all comply with > >> the rule. > >> > >> Actually in meta/recipes-devtools/gcc/gcc-package-target.inc, we do > >> try to > > package ${base_libdir}/cpp: > >> FILES_cpp = "\ > >> ${bindir}/${TARGET_PREFIX}cpp \ > >> ${base_libdir}/cpp \ > >> ${libexecdir}/gcc/${TARGET_SYS}/${BINV}/cc1" > >> But unluckily we didn't to create a symbol link in do_install. This > >> patch > > adds the symbol link. > > > > Ok, this sounds great. Put this in the commit message though please! > Hi RP, > Please use the new commit(the only change is the updated commit message): > http://git.yoctoproject.org/cgit/cgit.cgi/poky-contrib/commit/?h=dcui/self-hosted-v2&id=f6001f0b12cb561f5e08d3a5b0d61ab5fa924f40 Thanks, I've merged this patch to master. Cheers, Richard
Patch
diff --git a/meta/recipes-devtools/gcc/gcc-4.6.inc b/meta/recipes-devtools/gcc/gcc-4.6.inc index 7bf14e3..7cd0850 100644 --- a/meta/recipes-devtools/gcc/gcc-4.6.inc +++ b/meta/recipes-devtools/gcc/gcc-4.6.inc @@ -1,6 +1,6 @@ require gcc-common.inc -PR = "r17" +PR = "r18" # Third digit in PV should be incremented after a minor release # happens from this branch on gcc e.g. currently its 4.6.0 diff --git a/meta/recipes-devtools/gcc/gcc-package-target.inc b/meta/recipes-devtools/gcc/gcc-package-target.inc index f0f1a04..3076670 100644 --- a/meta/recipes-devtools/gcc/gcc-package-target.inc +++ b/meta/recipes-devtools/gcc/gcc-package-target.inc @@ -122,6 +122,8 @@ do_install () { ln -sf ${TARGET_PREFIX}g++ g++ ln -sf ${TARGET_PREFIX}gcc gcc ln -sf ${TARGET_PREFIX}cpp cpp + install -d ${D}${base_libdir} + ln -sf ${bindir}/${TARGET_PREFIX}cpp ${D}${base_libdir}/cpp ln -sf g++ c++ ln -sf gcc cc
Signed-off-by: Dexuan Cui <dexuan.cui@intel.com> --- meta/recipes-devtools/gcc/gcc-4.6.inc | 2 +- meta/recipes-devtools/gcc/gcc-package-target.inc | 2 ++ 2 files changed, 3 insertions(+), 1 deletions(-)