[OE-core] [oe-core][PATCH] tcl: fix INCLUDE_SPEC and LIB_SPEC

Zhenhua Luo zhenhua.luo at nxp.com
Fri Jul 15 06:13:38 UTC 2016


Ping. 

Is there any other comment to be addressed for the patch? 


Best Regards,

Zhenhua

> -----Original Message-----
> From: openembedded-core-bounces at lists.openembedded.org
> [mailto:openembedded-core-bounces at lists.openembedded.org] On Behalf
> Of Zhenhua Luo
> Sent: Wednesday, July 06, 2016 12:09 PM
> To: Khem Raj <raj.khem at gmail.com>
> Cc: Patches and discussions about the oe-core layer <openembedded-
> core at lists.openembedded.org>
> Subject: Re: [OE-core] [oe-core][PATCH] tcl: fix INCLUDE_SPEC and LIB_SPEC
> 
> > -----Original Message-----
> > From: Khem Raj [mailto:raj.khem at gmail.com]
> > Sent: Tuesday, July 05, 2016 11:16 PM
> > To: Zhenhua Luo <zhenhua.luo at nxp.com>
> > Cc: Patches and discussions about the oe-core layer <openembedded-
> > core at lists.openembedded.org>
> > Subject: Re: [OE-core] [oe-core][PATCH] tcl: fix INCLUDE_SPEC and
> > LIB_SPEC
> >
> > On Mon, Jul 4, 2016 at 11:20 PM, Zhenhua Luo <zhenhua.luo at nxp.com>
> wrote:
> > > TCL_INCLUDE_SPEC -I+<includedir> and TCL_LIB_SPEC -L+${libdir} break
> > > the cross-compile of packages which require tcl headers and libraries.
> > >
> > > One example is that postgresql configure failed at the following error:
> > > | checking for tcl.h... no
> > > | configure: error: header file <tcl.h> is required for Tcl
> > >
> > > Signed-off-by: Zhenhua Luo <zhenhua.luo at nxp.com>
> > > ---
> > >  meta/recipes-devtools/tcltk/tcl_8.6.5.bb | 2 --
> > >  1 file changed, 2 deletions(-)
> > >
> > > diff --git a/meta/recipes-devtools/tcltk/tcl_8.6.5.bb
> > > b/meta/recipes-devtools/tcltk/tcl_8.6.5.bb
> > > index 46fc8a7..d75232b 100644
> > > --- a/meta/recipes-devtools/tcltk/tcl_8.6.5.bb
> > > +++ b/meta/recipes-devtools/tcltk/tcl_8.6.5.bb
> > > @@ -56,8 +56,6 @@ do_install() {
> > >         ln -sf tclsh8.6 ${D}${bindir}/tclsh${VER}
> > >         sed -i "s+-L${B}+-L${STAGING_LIBDIR}+g" tclConfig.sh
> > >         sed -i "s+${WORKDIR}+${STAGING_INCDIR}+g" tclConfig.sh
> > > -       sed -i "s,-L${libdir},-L=${libdir},g" tclConfig.sh
> > > -       sed -i "s,-I${includedir},-I=${includedir},g" tclConfig.sh
> >
> > does this now include some of your host headers in build then ?
> [Luo Zhenhua-B19537] The patch does the following changes for tclConfig.sh.
> Without the change, tcl.h can't be found when cross building packages(e.g.
> postgresql) which depend on tcl. I have cross-compiled several
> packages(postgresql, expect, ruby, tk) that have tcl dependency and see no
> issue.
> 	1. tmp/sysroots/qemuarm64/usr/bin/crossscripts/tclConfig.sh
> 	# String to pass to linker to pick up the Tcl library from its
> 	 # installed directory.
> 	-TCL_LIB_SPEC='-L=/home/bjsimics/workspace/poky-
> os/qemuppc/tmp/sysroots/qemuarm64/usr/lib -ltcl8.6'
> 	+TCL_LIB_SPEC='-L/home/bjsimics/workspace/poky-
> os/qemuppc/tmp/sysroots/qemuarm64/usr/lib -ltcl8.6'
> 
> 	 # String to pass to the compiler so that an extension can
> 	 # find installed Tcl headers.
> 	-TCL_INCLUDE_SPEC='-I=/home/bjsimics/workspace/poky-
> os/qemuppc/tmp/sysroots/qemuarm64/usr/include/tcl8.6'
> 	+TCL_INCLUDE_SPEC='-I/home/bjsimics/workspace/poky-
> os/qemuppc/tmp/sysroots/qemuarm64/usr/include/tcl8.6'
> 
> 	# String to pass to linker to pick up the Tcl stub library from its
> 	 # installed directory.
> 	-TCL_STUB_LIB_SPEC='-L=/home/bjsimics/workspace/poky-
> os/qemuppc/tmp/sysroots/qemuarm64/usr/lib -ltclstub8.6'
> 	+TCL_STUB_LIB_SPEC='-L/home/bjsimics/workspace/poky-
> os/qemuppc/tmp/sysroots/qemuarm64/usr/lib -ltclstub8.6'
> 
> 	2. tmp/sysroots/qemuarm64/usr/lib/tclConfig.sh
> 	# String to pass to linker to pick up the Tcl library from its
> 	 # installed directory.
> 	-TCL_LIB_SPEC='-L=/usr/lib -ltcl8.6'
> 	+TCL_LIB_SPEC='-L/usr/lib -ltcl8.6'
> 
> 	 # String to pass to the compiler so that an extension can
> 	 # find installed Tcl headers.
> 	-TCL_INCLUDE_SPEC='-I=/usr/include/tcl8.6'
> 	+TCL_INCLUDE_SPEC='-I/usr/include/tcl8.6'
> 
> 	# String to pass to linker to pick up the Tcl stub library from its
> 	 # installed directory.
> 	-TCL_STUB_LIB_SPEC='-L=/usr/lib -ltclstub8.6'
> 	+TCL_STUB_LIB_SPEC='-L/usr/lib -ltclstub8.6'
> 
> 
> Best Regards,
> 
> Zhenhua
> 
> > >         install -d ${D}${bindir_crossscripts}
> > >         install -m 0755 tclConfig.sh ${D}${bindir_crossscripts}
> > >         install -m 0755 tclConfig.sh ${D}${libdir}
> > > --
> > > 2.7.4
> > >
> > > --
> > > _______________________________________________
> > > Openembedded-core mailing list
> > > Openembedded-core at lists.openembedded.org
> > > http://lists.openembedded.org/mailman/listinfo/openembedded-core
> --
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core at lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core



More information about the Openembedded-core mailing list