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]]