FrontPage 

Fuego wiki

Login or create account

Issue 0071 in 'raw' format

; Summary: fix usage of SDKROOT in some tests
; Owner: Tim
; Reporter: Tim
; Status: open
; Priority: medium

= Description =
SDKROOT, which is specified by the tools file for a given toolchain,
is used inconsistently by Fuego.  Sometimes it is expected to have
a trailing slash, and sometimes it is not.  It is used with
configure, aclocal, pkgconfig, and find.  Sometimes it is used as a prefix
for a lib or include directory, including the '/usr' part, e.g.:
  * $SDKROOT/usr/include

and sometimes it specifies a sysroot where other files are searched for.

Here is a list of the places that use SDKROOT, as of Fuego version 1.3:
      - Functional.neon
          - aclocal --system-acdir=${SDKROOT}usr/share/aclocal
       - Functional.aiostress
          - $CC -I $SDKROOT/usr/lib -L $SDKROOT/usr/lib
       - Benchmark.aim:
          - PKG_CONFIG_PATH=$SDKROOT/usr/lib
          - pkgconfig ... PKG_CONFIG_SYSROOT_DIR=$SDKROOT
          - LDFLAGS=-L $SDKROOT/usr/lib
          - CPPFLAGS=-I $SDKROOT/usr/include
          - CFLAGS=-I $SDKROOT/usr/include
       - Benchmark.blobsallad:
          - INCDIR= $SDKROOT/usr/include
          - LIBDIR= $SDKROOT/usr/lib
       - openssl.sh
          - CFLAG= --sysroot=$SDKROOT
       - Functional.croco
          - aclocal --system-acdir=$SDKROOTusr/share/aclocal
       - Functional.zlib
          - configure --includedir=$SDKROOT/usr/include
          - configure --libdir=$SDKROOT/usr/lib
       - Benchmark.backfire
          - test -d $SDKROOT/lib/modules/$target_kernel_release/build
       - Functional.libsrvg
          - aclocal --system-acdir=$SDKROOT/usr/share/aclocal
       - Functional.LTP
          - configure SYSROOT=$SDKROOT
       - Functional.ft2demos
          - $CC -L $SDKROOT/usr/lib (in Makefile patch)
       - Benchmark.GLMark
          - CFLAGS=... -I $SDKROOT/usr/include
            -  -L SDKROOT/usr/lib
            -  -L SDKROOT/lib
       - functions.sh (is_on_sdk)
          - find "$SDKROOT$d" ...

Check each of these uses, to see if they are correct.

Note that Yocto Project SDKs provide a sysroot for the target, but
Debian cross toolchain packages do not.

For Debian cross toolchains, the libraries are at:
 * /usr/arm-linux-gnueabihf/lib

Right now, the debian-armhf-tools.sh file sets SDKROOT to /.
But the the gnueabihf libs are not going to be found on the host at
//usr/lib.

But setting it to /usr/arm-linux-gnueabihf won't work, because many tests
look for libs and includes in $SDKROOT/usr/lib and $SDKROOT/usr/include.
This would result in /usr/arm-linux-gnueabihf/usr/lib and /usr/arm-linux-gnueabihf/usr/include, respectively (which are not there).

Figure out a fix for this, and test to make sure that required toolchain
elements are present and/or checked for properly.


= Notes =
Put other free-form comments or notes here

; backlink: [[Fuego Issues List]]






TBWiki engine 1.8.3 by Tim Bird