[OE-core] [PATCHv2 05/16] tcl: Use SYSROOT_DIRS to add dirs to stage in sysroot

Andreas Müller schnitzeltony at googlemail.com
Sat May 28 13:41:41 UTC 2016


On Thu, May 26, 2016 at 10:14 PM, Andreas Müller
<schnitzeltony at googlemail.com> wrote:
> On Thu, May 26, 2016 at 3:41 PM, Peter Kjellerstedt
> <peter.kjellerstedt at axis.com> wrote:
>>> -----Original Message-----
>>> From: Andreas Müller [mailto:schnitzeltony at googlemail.com]
>>> Sent: den 26 maj 2016 14:00
>>> To: Peter Kjellerstedt
>>> Cc: Patches and discussions about the oe-core layer
>>> Subject: Re: [OE-core] [PATCHv2 05/16] tcl: Use SYSROOT_DIRS to add
>>> dirs to stage in sysroot
>>>
>>> On Thu, May 12, 2016 at 10:37 AM, Peter Kjellerstedt
>>> <peter.kjellerstedt at axis.com> wrote:
>>> > ---
>>> >  meta/recipes-devtools/tcltk/tcl_8.6.4.bb | 5 +----
>>> >  1 file changed, 1 insertion(+), 4 deletions(-)
>>> >
>>> > diff --git a/meta/recipes-devtools/tcltk/tcl_8.6.4.bb b/meta/recipes-
>>> devtools/tcltk/tcl_8.6.4.bb
>>> > index 8e92b3e..61be81d 100644
>>> > --- a/meta/recipes-devtools/tcltk/tcl_8.6.4.bb
>>> > +++ b/meta/recipes-devtools/tcltk/tcl_8.6.4.bb
>>> > @@ -68,10 +68,7 @@ do_install() {
>>> >         done
>>> >  }
>>> >
>>> > -SYSROOT_PREPROCESS_FUNCS += "tcl_sysroot_preprocess"
>>> > -tcl_sysroot_preprocess () {
>>> > -       sysroot_stage_dir ${D}${bindir_crossscripts} ${SYSROOT_DESTDIR}${bindir_crossscripts}
>>> > -}
>>> > +SYSROOT_DIRS += "${bindir_crossscripts}"
>>> >
>>> >  PACKAGES =+ "tcl-lib"
>>> >  FILES_tcl-lib = "${libdir}/libtcl8.6.so.*"
>>> > --
>>> > 2.1.0
>>> >
>>> This one breaks meta-oe's postgresql.
>>>
>>> Andreas
>>
>> Breaks it how?
>>
>> //Peter
>>
> Yes I agree I cannot see what's wrong with this patch - together with
> modifications of staging.bbclass it should do same as before. For test
> I reverted this patch and postgresql builds fine again. Have no idea
> what's causing postgresql failure
>
> Some typo I don't see?
>
To get more infomation I

* build with patch reverted
* put  sysroot under git control
* remove revert again

Don't know why but now we see absolute paths in tclConfig.sh:

--- a/usr/bin/crossscripts/tclConfig.sh
+++ b/usr/bin/crossscripts/tclConfig.sh
@@ -57,7 +57,7 @@ TCL_SHLIB_CFLAGS='-fPIC'
 TCL_CFLAGS_WARNING='-Wall'

 # Extra flags to pass to cc:
-TCL_EXTRA_CFLAGS=' -O2 -pipe -g -feliminate-unused-debug-types
-fdebug-prefix-map=/home/superandy/tmp/oe-core-glibc/sysroots/raspberrypi2/usr/include=/usr/src/debug/tcl/8.6.4-r0
-fdebug-prefix-map=/home/superandy/tmp/oe-core-glibc/sysroots/x86_64-linux=
-fdebug-prefix-map=/home/superandy/tmp/oe-core-glibc/sysroots/raspberrypi2=
 -pipe '
+TCL_EXTRA_CFLAGS=' -O2 -pipe -g -feliminate-unused-debug-types
-fdebug-prefix-map=/home/superandy/tmp/oe-core-glibc/sysroots/raspberrypi2/usr/include=/home/superandy/tmp/oe-core-glibc/sysroots/raspberrypi2/usr/src/debug/tcl/8.6.4-r0
-fdebug-prefix-map=/home/superandy/tmp/oe-core-glibc/sysroots/x86_64-linux=
-fdebug-prefix-map=/home/superandy/tmp/oe-core-glibc/sysroots/raspberrypi2=
 -pipe '

 # Base command to use for combining object files into a shared library:
 TCL_SHLIB_LD='${CC} -shared ${CFLAGS} ${LDFLAGS}'
@@ -104,11 +104,11 @@
TCL_BUILD_LIB_SPEC='-L/home/superandy/tmp/oe-core-glibc/sysroots/raspberrypi2/us

 # 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=/home/superandy/tmp/oe-core-glibc/sysroots/raspberrypi2/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=/home/superandy/tmp/oe-core-glibc/sysroots/raspberrypi2/usr/include/tcl8.6'

 # Indicates whether a version numbers should be used in -l switches
 # ("ok" means it's safe to use switches like -ltcl7.5;  "nodots" means
@@ -157,7 +157,7 @@
TCL_BUILD_STUB_LIB_SPEC='-L/home/superandy/tmp/oe-core-glibc/sysroots/raspberryp

 # 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=/home/superandy/tmp/oe-core-glibc/sysroots/raspberrypi2/usr/lib
-ltclstub8.6'

 # Path to the Tcl stub library in the build directory.
 TCL_BUILD_STUB_LIB_PATH='/home/superandy/tmp/oe-core-glibc/sysroots/raspberrypi2/usr/include/build/libtclstub8.6.a'

This is the symptom but what is it caused by?

Andreas



More information about the Openembedded-core mailing list