<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40"><head><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=us-ascii"><meta name=Generator content="Microsoft Word 15 (filtered medium)"><style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin-top:0cm;
        margin-right:0cm;
        margin-bottom:8.0pt;
        margin-left:0cm;
        line-height:106%;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;
        mso-fareast-language:EN-US;}
span.EmailStyle17
        {mso-style-type:personal-compose;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-family:"Calibri",sans-serif;
        mso-fareast-language:EN-US;}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:72.0pt 72.0pt 72.0pt 72.0pt;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]--></head><body lang=EN-AU link="#0563C1" vlink="#954F72" style='word-wrap:break-word'><div class=WordSection1><p class=MsoNormal><span lang=EN-US>Hi,<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US><o:p> </o:p></span></p><p class=MsoNormal><span lang=EN-US>I am having problems cross compiling LTTNG for the ARM platform.  Everything compiles fine, except the TOOLS.<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US><o:p> </o:p></span></p><p class=MsoNormal><span lang=EN-US>The error I am getting is:<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US><o:p> </o:p></span></p><p class=MsoNormal>libtool: warning: library '/home/USER/work/LTTNG/sysroot/usr/local/lib/liburcu.la' was moved.<o:p></o:p></p><p class=MsoNormal>/bin/grep: /usr/local/lib/liburcu-common.la: No such file or directory<o:p></o:p></p><p class=MsoNormal>/bin/sed: can't read /usr/local/lib/liburcu-common.la: No such file or directory<o:p></o:p></p><p class=MsoNormal>libtool:   error: '/usr/local/lib/liburcu-common.la' is not a valid libtool archive<o:p></o:p></p><p class=MsoNormal>Makefile:547: recipe for target 'libhashtable.la' failed<o:p></o:p></p><p class=MsoNormal>make[3]: *** [libhashtable.la] Error 1<o:p></o:p></p><p class=MsoNormal>make[3]: Leaving directory '/home/USER/work/LTTNG/builds/lttng-tools/src/common/hashtable'<o:p></o:p></p><p class=MsoNormal>Makefile:955: recipe for target 'all-recursive' failed<o:p></o:p></p><p class=MsoNormal>make[2]: *** [all-recursive] Error 1<o:p></o:p></p><p class=MsoNormal>make[2]: Leaving directory '/home/USER/work/LTTNG/builds/lttng-tools/src/common'<o:p></o:p></p><p class=MsoNormal>Makefile:551: recipe for target 'all-recursive' failed<o:p></o:p></p><p class=MsoNormal>make[1]: *** [all-recursive] Error 1<o:p></o:p></p><p class=MsoNormal>make[1]: Leaving directory '/home/USER/work/LTTNG/builds/lttng-tools/src'<o:p></o:p></p><p class=MsoNormal>Makefile:661: recipe for target 'all-recursive' failed<o:p></o:p></p><p class=MsoNormal>make: *** [all-recursive] Error 1<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal><span lang=EN-US>It is looking for “/usr/local/lib/libiconv.la” when it should be looking for “/home/USER/work/LTTNG/sysroot /usr/local/lib/libiconv.la” which is where the builds are being installed.<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US><o:p> </o:p></span></p><p class=MsoNormal><span lang=EN-US>In desperation I tried setting –with-sysroot in the configuration step to the appropriate directory but it made no difference.<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US><o:p> </o:p></span></p><p class=MsoNormal><span lang=EN-US>My build scripts seem okay but maybe I am missing something obvious.  I also tried a couple of other build scripts that were on the web as examples of cross compiling LTTNG with similar results, so I wonder if the build environment I am using is a little “different”, but I have no control over that.<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US><o:p> </o:p></span></p><p class=MsoNormal><span lang=EN-US>This is the script that I am using.  It is based on one that was posted as a successful example of cross compiling LTTNG, and I have made some changes for my environment.  Works well for everything except the tools.<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US><o:p> </o:p></span></p><p class=MsoNormal><span lang=EN-US>All suggestions on where the problem lies are welcome.<o:p></o:p></span></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>#!/bin/bash<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal># set your base directory<o:p></o:p></p><p class=MsoNormal>BASEDIR=/home/USER/work/LTTNG<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal># set your system root path<o:p></o:p></p><p class=MsoNormal>SYSROOT=$BASEDIR/sysroot<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal># export symlink to the real arm gcc<o:p></o:p></p><p class=MsoNormal>export HOST=arm-cortex_a8-linux<o:p></o:p></p><p class=MsoNormal>export CC="/home/USER/bin/${HOST}-gcc"<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal># set your kernel build path (you will need to symlink the includes into this)<o:p></o:p></p><p class=MsoNormal>G_KERNELDIR=/home/USER/work/linux/build-2605246<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal># set the support library versions to build <o:p></o:p></p><p class=MsoNormal>LIBICONV_VERSION=1.16                                               <o:p></o:p></p><p class=MsoNormal>LIBUUID_VERSION=1.0.3<o:p></o:p></p><p class=MsoNormal>LIBXML2_VERSION=2.9.9<o:p></o:p></p><p class=MsoNormal>POPT_VERSION=1.16<o:p></o:p></p><p class=MsoNormal>ZLIB_VERSION=1.2.11<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>#######################################################<o:p></o:p></p><p class=MsoNormal>#<o:p></o:p></p><p class=MsoNormal># YOU SHOULD NOT NEED TO ALTER ANYTHING BELOW THIS LINE<o:p></o:p></p><p class=MsoNormal>#<o:p></o:p></p><p class=MsoNormal>#######################################################<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal># change your flags here<o:p></o:p></p><p class=MsoNormal>export ac_cv_func_malloc_0_nonnull=yes<o:p></o:p></p><p class=MsoNormal>export ac_cv_func_realloc_0_nonnull=yes<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>G_PREFIX=/usr/local<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>export PKG_CONFIG_PATH=${SYSROOT}${G_PREFIX}/lib/pkgconfig<o:p></o:p></p><p class=MsoNormal>export CPPFLAGS="-I${SYSROOT}${G_PREFIX}/include"<o:p></o:p></p><p class=MsoNormal>export LDFLAGS="-L${SYSROOT}${G_PREFIX}/lib -Wl,-rpath-link=${SYSROOT}${G_PREFIX}/lib"<o:p></o:p></p><p class=MsoNormal>export LT_SYS_LIBRARY_PATH="${SYSROOT}${G_PREFIX}/lib"<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>G_ARCH=arm<o:p></o:p></p><p class=MsoNormal>G_CROSS_COMPILE=arm-<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal># tracking download/compile steps<o:p></o:p></p><p class=MsoNormal>G_CFG_FILE="$PWD/${0%\.*}.conf"<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal># other directories<o:p></o:p></p><p class=MsoNormal>G_TARBALL_DIR=$PWD/tarballs<o:p></o:p></p><p class=MsoNormal>G_SOURCES_DIR=$PWD/sources<o:p></o:p></p><p class=MsoNormal>G_BUILD_DIR=$PWD/builds<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal># steps for tracking progress in $G_CFG_FILE<o:p></o:p></p><p class=MsoNormal>step_start=0<o:p></o:p></p><p class=MsoNormal>step_download=1<o:p></o:p></p><p class=MsoNormal>step_compile=2<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>echo<o:p></o:p></p><p class=MsoNormal>echo "This script will compile and install lttng and some deps"<o:p></o:p></p><p class=MsoNormal>echo "Building for HOST=${HOST}"<o:p></o:p></p><p class=MsoNormal>echo<o:p></o:p></p><p class=MsoNormal>echo "Builds are located in $G_BUILD_DIR"<o:p></o:p></p><p class=MsoNormal>echo "Sources are located in $G_SOURCES_DIR"<o:p></o:p></p><p class=MsoNormal>echo "Tarballs are located in $G_TARBALL_DIR"<o:p></o:p></p><p class=MsoNormal>echo "sysroot is located at ${SYSROOT}"<o:p></o:p></p><p class=MsoNormal>echo "prefix is set to $G_PREFIX"<o:p></o:p></p><p class=MsoNormal>echo<o:p></o:p></p><p class=MsoNormal>echo "press Enter to continue or CRTL-C to abort"<o:p></o:p></p><p class=MsoNormal>read<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>[ -e "$G_CFG_FILE" ] && . "$G_CFG_FILE" &> /dev/null<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>function get_src_dir()<o:p></o:p></p><p class=MsoNormal>{<o:p></o:p></p><p class=MsoNormal>    local filename="$1"<o:p></o:p></p><p class=MsoNormal>    tar -tf "$G_TARBALL_DIR/$filename"| sed -e 's@/.*@@' | uniq<o:p></o:p></p><p class=MsoNormal>}<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>function build()<o:p></o:p></p><p class=MsoNormal>{<o:p></o:p></p><p class=MsoNormal>    local filename="$1"<o:p></o:p></p><p class=MsoNormal>    local what="$2"<o:p></o:p></p><p class=MsoNormal>    local dir_name="$3"<o:p></o:p></p><p class=MsoNormal>    local state="$4"<o:p></o:p></p><p class=MsoNormal>    local do_bootstrap=$5<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>    if [ $state -eq $step_download ] ; then<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>        if $do_bootstrap ; then<o:p></o:p></p><p class=MsoNormal>            pushd $G_SOURCES_DIR/$dir_name<o:p></o:p></p><p class=MsoNormal>            ./bootstrap<o:p></o:p></p><p class=MsoNormal>            popd<o:p></o:p></p><p class=MsoNormal>        fi<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>        mkdir -p "$G_BUILD_DIR/$dir_name"       <o:p></o:p></p><p class=MsoNormal>        pushd "$G_BUILD_DIR/$dir_name"      <o:p></o:p></p><p class=MsoNormal>        if [ -n "$patch" ] ; then<o:p></o:p></p><p class=MsoNormal>            pushd "$G_SOURCES_DIR/$dir_name"        <o:p></o:p></p><p class=MsoNormal>            wget $patch -O- | patch -p1<o:p></o:p></p><p class=MsoNormal>            popd<o:p></o:p></p><p class=MsoNormal>        fi<o:p></o:p></p><p class=MsoNormal>        "$G_SOURCES_DIR/$dir_name"/configure --host=${HOST} --prefix=${G_PREFIX} ${EXTRA_CONF} --enable-shared<o:p></o:p></p><p class=MsoNormal>        if [ -n ${COPY_MAKEFILE} ] ; then<o:p></o:p></p><p class=MsoNormal>               # this hack in necessary because the tests do not compile in our build environment<o:p></o:p></p><p class=MsoNormal>               cp -f $BASEDIR/mtmake ${COPY_MAKEFILE}<o:p></o:p></p><p class=MsoNormal>        fi<o:p></o:p></p><p class=MsoNormal>        make -j3 \<o:p></o:p></p><p class=MsoNormal>          && make install DESTDIR=${SYSROOT} \<o:p></o:p></p><p class=MsoNormal>            && echo "$what=$step_compile" >> $G_CFG_FILE<o:p></o:p></p><p class=MsoNormal>        popd<o:p></o:p></p><p class=MsoNormal>    fi<o:p></o:p></p><p class=MsoNormal>    if [ $state -eq $step_compile ] ; then<o:p></o:p></p><p class=MsoNormal>        echo ">> $what is already compiled"<o:p></o:p></p><p class=MsoNormal>    fi<o:p></o:p></p><p class=MsoNormal>}<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>function download()<o:p></o:p></p><p class=MsoNormal>{<o:p></o:p></p><p class=MsoNormal>    local url="$1"<o:p></o:p></p><p class=MsoNormal>    local what="$2"<o:p></o:p></p><p class=MsoNormal>    local filename="$3"<o:p></o:p></p><p class=MsoNormal>    local state="$4"<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>    if [ $state -lt $step_download ] ; then<o:p></o:p></p><p class=MsoNormal>        wget "$url" -O "$G_TARBALL_DIR/$filename"<o:p></o:p></p><p class=MsoNormal>        echo "$what=$step_download" >> $G_CFG_FILE<o:p></o:p></p><p class=MsoNormal>        tar -C $G_SOURCES_DIR -xf "$G_TARBALL_DIR/$filename"<o:p></o:p></p><p class=MsoNormal>        . "$G_CFG_FILE" &> /dev/null<o:p></o:p></p><p class=MsoNormal>    fi<o:p></o:p></p><p class=MsoNormal>}<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>function download_git()<o:p></o:p></p><p class=MsoNormal>{<o:p></o:p></p><p class=MsoNormal>    local url="$1"<o:p></o:p></p><p class=MsoNormal>    local what="$2"<o:p></o:p></p><p class=MsoNormal>    local filename="$3"<o:p></o:p></p><p class=MsoNormal>    local state="$4"<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>    if [ $state -lt $step_download ] ; then<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>        pushd $G_SOURCES_DIR<o:p></o:p></p><p class=MsoNormal>        git clone $url<o:p></o:p></p><p class=MsoNormal>        popd<o:p></o:p></p><p class=MsoNormal>        echo "$what=$step_download" >> $G_CFG_FILE<o:p></o:p></p><p class=MsoNormal>        . "$G_CFG_FILE" &> /dev/null<o:p></o:p></p><p class=MsoNormal>    fi<o:p></o:p></p><p class=MsoNormal>}<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>function init()<o:p></o:p></p><p class=MsoNormal>{<o:p></o:p></p><p class=MsoNormal>    local what="$1"<o:p></o:p></p><p class=MsoNormal>    eval state=\$$what<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>    if [ ! -n "$state" ] ; then<o:p></o:p></p><p class=MsoNormal>        echo "$what=$step_start" >> $G_CFG_FILE<o:p></o:p></p><p class=MsoNormal>        . "$G_CFG_FILE" &> /dev/null<o:p></o:p></p><p class=MsoNormal>    fi<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>    eval state=\$$what<o:p></o:p></p><p class=MsoNormal>}<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>function get_em()<o:p></o:p></p><p class=MsoNormal>{<o:p></o:p></p><p class=MsoNormal>    local url="$1"<o:p></o:p></p><p class=MsoNormal>    local what="$2"<o:p></o:p></p><p class=MsoNormal>    local filename=$(basename $url) <o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>    init "$what"<o:p></o:p></p><p class=MsoNormal>    download "$url" "$what" $filename $state<o:p></o:p></p><p class=MsoNormal>    eval state=\$$what<o:p></o:p></p><p class=MsoNormal>    local dir_name=$(get_src_dir $filename)<o:p></o:p></p><p class=MsoNormal>    build $filename "$what" $dir_name $state false<o:p></o:p></p><p class=MsoNormal>}<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>function get_em_git()<o:p></o:p></p><p class=MsoNormal>{<o:p></o:p></p><p class=MsoNormal>    local url="$1"<o:p></o:p></p><p class=MsoNormal>    local what="$2"<o:p></o:p></p><p class=MsoNormal>    local do_bootstrap="$3"<o:p></o:p></p><p class=MsoNormal>    local filename=$(basename $url) <o:p></o:p></p><p class=MsoNormal>    filename=${filename/.git}<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>    init "$what"<o:p></o:p></p><p class=MsoNormal>    download_git "$url" "$what" $filename $state<o:p></o:p></p><p class=MsoNormal>    eval state=\$$what<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>    build $filename "$what" $filename $state $do_bootstrap<o:p></o:p></p><p class=MsoNormal>}<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>echo "create directories"<o:p></o:p></p><p class=MsoNormal>mkdir -p "$G_TARBALL_DIR" "$G_SOURCES_DIR" "$G_BUILD_DIR" &>/dev/null<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>########################<o:p></o:p></p><p class=MsoNormal># define the packages we want to compile<o:p></o:p></p><p class=MsoNormal>########################<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal># this are the dependencies that are missing for our sysroot<o:p></o:p></p><p class=MsoNormal># we will compile them and install the to the ${SYSROOT}<o:p></o:p></p><p class=MsoNormal>#<o:p></o:p></p><p class=MsoNormal># --- BEGIN --- dependencies<o:p></o:p></p><p class=MsoNormal>what=libuuid<o:p></o:p></p><p class=MsoNormal>url=http://downloads.sourceforge.net/project/libuuid/libuuid-$LIBUUID_VERSION.tar.gz<o:p></o:p></p><p class=MsoNormal>get_em $url "$what"<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>what=libiconv<o:p></o:p></p><p class=MsoNormal>url=https://ftp.gnu.org/gnu/libiconv/libiconv-$LIBICONV_VERSION.tar.gz<o:p></o:p></p><p class=MsoNormal>get_em $url "$what"<o:p></o:p></p><p class=MsoNormal>unset patch<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>what=zlib<o:p></o:p></p><p class=MsoNormal>url=https://zlib.net/zlib-$ZLIB_VERSION.tar.gz<o:p></o:p></p><p class=MsoNormal>init "$what"<o:p></o:p></p><p class=MsoNormal>filename=$(basename $url)   <o:p></o:p></p><p class=MsoNormal>download "$url" "$what" $filename $state<o:p></o:p></p><p class=MsoNormal>if [ $state -eq $step_compile ] ; then<o:p></o:p></p><p class=MsoNormal>    echo ">> $what is already compiled"<o:p></o:p></p><p class=MsoNormal>else<o:p></o:p></p><p class=MsoNormal>    dir_name=$(get_src_dir $filename)<o:p></o:p></p><p class=MsoNormal>    pushd $G_SOURCES_DIR/$dir_name<o:p></o:p></p><p class=MsoNormal>    LDSHARED="$CC -shared -Wl,-soname,libz.so.1" \<o:p></o:p></p><p class=MsoNormal>    ./configure --shared --prefix="${G_PREFIX}"<o:p></o:p></p><p class=MsoNormal>    make \<o:p></o:p></p><p class=MsoNormal>      && make install prefix="${G_PREFIX}" DESTDIR=${SYSROOT} \<o:p></o:p></p><p class=MsoNormal>        && echo "$what=$step_compile" >> $G_CFG_FILE<o:p></o:p></p><p class=MsoNormal>    popd<o:p></o:p></p><p class=MsoNormal>fi<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>what=libxml2<o:p></o:p></p><p class=MsoNormal>url=ftp://xmlsoft.org/libxml2/libxml2-sources-$LIBXML2_VERSION.tar.gz<o:p></o:p></p><p class=MsoNormal>EXTRA_CONF="--without-python"<o:p></o:p></p><p class=MsoNormal>get_em $url "$what"<o:p></o:p></p><p class=MsoNormal>unset EXTRA_CONF<o:p></o:p></p><p class=MsoNormal>export libxml2_CFLAGS="-I${SYSROOT}${G_PREFIX}/include/libxml2"<o:p></o:p></p><p class=MsoNormal>export libxml2_LIBS="L${SYSROOT}${G_PREFIX}/lib -lxml2 -lpthread -lm -lz"<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>what=popt<o:p></o:p></p><p class=MsoNormal>url=ftp://anduin.linuxfromscratch.org/BLFS/svn/p/popt-$POPT_VERSION.tar.gz<o:p></o:p></p><p class=MsoNormal>get_em $url "$what"<o:p></o:p></p><p class=MsoNormal>export POPT_LIBS="-L${SYSROOT}${G_PREFIX}/lib -lpopt"<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal># --- END --- dependencies<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>#######################<o:p></o:p></p><p class=MsoNormal># compile lttng related packages and install into ${SYSROOT}<o:p></o:p></p><p class=MsoNormal>what=userspace_rcu<o:p></o:p></p><p class=MsoNormal>url=git://git.lttng.org/userspace-rcu.git<o:p></o:p></p><p class=MsoNormal>get_em_git $url "$what" true<o:p></o:p></p><p class=MsoNormal>export URCU_BP_CFLAGS="-I${SYSROOT}${G_PREFIX}/include"<o:p></o:p></p><p class=MsoNormal>export URCU_BP_LIBS="-L${SYSROOT}${G_PREFIX}/lib -lurcu-common -lurcu-bp"<o:p></o:p></p><p class=MsoNormal>export URCU_CDS_CFLAGS="-I${SYSROOT}${G_PREFIX}/include"<o:p></o:p></p><p class=MsoNormal>export URCU_CDS_LIBS="-L${SYSROOT}${G_PREFIX}/lib -lurcu-common -lurcu-cds"<o:p></o:p></p><p class=MsoNormal>export URCU_CFLAGS="-I${SYSROOT}${G_PREFIX}/include/urcu"<o:p></o:p></p><p class=MsoNormal>export URCU_LIBS="-L${SYSROOT}${G_PREFIX}/lib -lurcu-common -lurcu -lurcu-cds"<o:p></o:p></p><p class=MsoNormal>export CPPFLAGS="-I${SYSROOT}${G_PREFIX}/include -I${SYSROOT}${G_PREFIX}/include/urcu"<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>what=lttng_ust<o:p></o:p></p><p class=MsoNormal>url=git://git.lttng.org/lttng-ust.git<o:p></o:p></p><p class=MsoNormal>EXTRA_CONF="--disable-maintainer-mode --disable-examples --disable-man-pages"<o:p></o:p></p><p class=MsoNormal>COPY_MAKEFILE="$BASEDIR/builds/lttng-ust/tests/Makefile"<o:p></o:p></p><p class=MsoNormal>get_em_git $url "$what" true<o:p></o:p></p><p class=MsoNormal>unset COPY_MAKEFILE<o:p></o:p></p><p class=MsoNormal>unset EXTRA_CONF<o:p></o:p></p><p class=MsoNormal>export UST_LIBS="-L${SYSROOT}${G_PREFIX}/lib -llttng-ust -llttng-ust-common -ldl"<o:p></o:p></p><p class=MsoNormal>                                                                                      <o:p></o:p></p><p class=MsoNormal># fix the paths in the la files<o:p></o:p></p><p class=MsoNormal>#for FILE in $(find ${SYSROOT}${G_PREFIX}/lib -type f -name "*.la") ; do<o:p></o:p></p><p class=MsoNormal>#             sed -i "s^-L/home/USER/work/LTTNG/sysroot/usr/local/lib /usr/local/lib^-L/home/USER/work/LTTNG/sysroot/usr/local/lib /home/USER/work/LTTNG/sysroot/usr/local/lib^" ${FILE}<o:p></o:p></p><p class=MsoNormal>#done<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>what=lttng_tools<o:p></o:p></p><p class=MsoNormal>url=git://git.lttng.org/lttng-tools.git<o:p></o:p></p><p class=MsoNormal>EXTRA_CONF="--disable-maintainer-mode --disable-man-pages --disable-static --with-sessiond-bin=/mnt/sd1/modulesLTTNG/lttng/usr/local/bin/lttng-sessiond"<o:p></o:p></p><p class=MsoNormal>COPY_MAKEFILE="${BASEDIR}/builds/lttng-tools/tests/Makefile"<o:p></o:p></p><p class=MsoNormal>get_em_git $url "$what" true              <o:p></o:p></p><p class=MsoNormal>unset COPY_MAKEFILE<o:p></o:p></p><p class=MsoNormal>unset EXTRA_CONF<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>what=lttng_modules<o:p></o:p></p><p class=MsoNormal>url=git://git.lttng.org/lttng-modules.git<o:p></o:p></p><p class=MsoNormal>init "$what"<o:p></o:p></p><p class=MsoNormal>filename=$(basename $url)   <o:p></o:p></p><p class=MsoNormal>filename=${filename/.git}<o:p></o:p></p><p class=MsoNormal>download_git "$url" "$what" $filename $state<o:p></o:p></p><p class=MsoNormal>if [ $state -eq $step_compile ] ; then<o:p></o:p></p><p class=MsoNormal>    echo ">> $what is already compiled"<o:p></o:p></p><p class=MsoNormal>else<o:p></o:p></p><p class=MsoNormal>    #dir_name=$(get_src_dir $filename)<o:p></o:p></p><p class=MsoNormal>    pushd $G_SOURCES_DIR/$filename<o:p></o:p></p><p class=MsoNormal>    make ARCH=$G_ARCH CROSS_COMPILE=$G_CROSS_COMPILE KERNELDIR=$G_KERNELDIR -j4 \<o:p></o:p></p><p class=MsoNormal>    && make ARCH=$G_ARCH CROSS_COMPILE=$G_CROSS_COMPILE KERNELDIR=$G_KERNELDIR INSTALL_MOD_PATH=${SYSROOT} modules_install \<o:p></o:p></p><p class=MsoNormal>        && echo "$what=$step_compile" >> $G_CFG_FILE<o:p></o:p></p><p class=MsoNormal>    popd<o:p></o:p></p><p class=MsoNormal>fi<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>echo<o:p></o:p></p><p class=MsoNormal>echo "INFO: the build progress for all packages is tracked in $G_CFG_FILE"<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p></div></body></html>