Running builds under strace


Alex deVries <alex.devries@...>
 

I'm working on swabber support, and as part of that need to enable running builds in strace. The code for this is in josh's poky-contrib.

For anyone else who is looking at this, various packages failed to build with -jN (with N>1). My theory is that running these builds under strace changes the build timing and exposes existing parallel build problems that don't normally show themselves.

To address this, I had to modify various recipes to set PARALLEL_MAKE = "" for various packages.

The following packages had to be modified:
# modified: meta/recipes-connectivity/openssl/openssl.inc
# modified: meta/recipes-core/eglibc/eglibc_2.12.bb
# modified: meta/recipes-core/glib-2.0/glib-2.0_2.24.1.bb
# modified: meta/recipes-core/libxml/libxml2.inc
# modified: meta/recipes-core/readline/readline.inc
# modified: meta/recipes-core/util-linux/util-linux.inc
# modified: meta/recipes-devtools/binutils/binutils.inc
# modified: meta/recipes-devtools/bison/bison_2.4.2.bb
# modified: meta/recipes-devtools/cmake/cmake.inc
# modified: meta/recipes-devtools/elfutils/elfutils_0.148.bb
# modified: meta/recipes-devtools/gcc/gcc-common.inc
# modified: meta/recipes-devtools/m4/m4_1.4.13.bb
# modified: meta/recipes-devtools/opkg/opkg.inc
# modified: meta/recipes-devtools/pkgconfig/pkgconfig.inc
# modified: meta/recipes-devtools/prelink/prelink_git.bb
# modified: meta/recipes-devtools/qemu/qemu.inc
# modified: meta/recipes-devtools/qemu/qemu_0.12.4.bb
# modified: meta/recipes-devtools/quilt/quilt.inc
# modified: meta/recipes-devtools/rpm/rpm_5.1.10.bb
# modified: meta/recipes-devtools/tcltk/tcl_8.5.8.bb
# modified: meta/recipes-support/beecrypt/beecrypt_4.1.2.bb
# modified: meta/recipes-support/curl/curl_7.21.0.bb
# modified: meta/recipes-support/gmp/gmp.inc
# modified: meta/recipes-support/libmpc/libmpc_0.8.2.bb
# modified: meta/recipes-support/libxslt/libxslt_1.1.26.bb
# modified: meta/recipes-support/lzo/lzo_2.03.bb
# modified: meta/recipes-support/popt/popt_1.16.bb
#

The only really concerning ones were eglibc and gcc. We can't set PARALLEL_MAKE="" for these as these are very large, and builds would be very slow. Packages like popt don't matter as much, you don't save that much time by building them with -j16.

Josh and I are trying to figure out how to address these.

Swabber support is coming soon!

- A


David Stewart
 

This is quite helpful, as we have been discussing this exact topic this week.

Maybe capture this in Bugzilla? (Not at my computer at the moment or would help). Thanks again.

Davest
Sent from my Blackberry

----- Original Message -----
From: Alex deVries [mailto:alex.devries@windriver.com]
Sent: Tuesday, November 09, 2010 02:10 PM
To: Yocto Project <yocto@yoctoproject.org>
Subject: [yocto] Running builds under strace


I'm working on swabber support, and as part of that need to enable running builds in strace. The code for this is in josh's poky-contrib.

For anyone else who is looking at this, various packages failed to build with -jN (with N>1). My theory is that running these builds under strace changes the build timing and exposes existing parallel build problems that don't normally show themselves.

To address this, I had to modify various recipes to set PARALLEL_MAKE = "" for various packages.

The following packages had to be modified:
# modified: meta/recipes-connectivity/openssl/openssl.inc
# modified: meta/recipes-core/eglibc/eglibc_2.12.bb
# modified: meta/recipes-core/glib-2.0/glib-2.0_2.24.1.bb
# modified: meta/recipes-core/libxml/libxml2.inc
# modified: meta/recipes-core/readline/readline.inc
# modified: meta/recipes-core/util-linux/util-linux.inc
# modified: meta/recipes-devtools/binutils/binutils.inc
# modified: meta/recipes-devtools/bison/bison_2.4.2.bb
# modified: meta/recipes-devtools/cmake/cmake.inc
# modified: meta/recipes-devtools/elfutils/elfutils_0.148.bb
# modified: meta/recipes-devtools/gcc/gcc-common.inc
# modified: meta/recipes-devtools/m4/m4_1.4.13.bb
# modified: meta/recipes-devtools/opkg/opkg.inc
# modified: meta/recipes-devtools/pkgconfig/pkgconfig.inc
# modified: meta/recipes-devtools/prelink/prelink_git.bb
# modified: meta/recipes-devtools/qemu/qemu.inc
# modified: meta/recipes-devtools/qemu/qemu_0.12.4.bb
# modified: meta/recipes-devtools/quilt/quilt.inc
# modified: meta/recipes-devtools/rpm/rpm_5.1.10.bb
# modified: meta/recipes-devtools/tcltk/tcl_8.5.8.bb
# modified: meta/recipes-support/beecrypt/beecrypt_4.1.2.bb
# modified: meta/recipes-support/curl/curl_7.21.0.bb
# modified: meta/recipes-support/gmp/gmp.inc
# modified: meta/recipes-support/libmpc/libmpc_0.8.2.bb
# modified: meta/recipes-support/libxslt/libxslt_1.1.26.bb
# modified: meta/recipes-support/lzo/lzo_2.03.bb
# modified: meta/recipes-support/popt/popt_1.16.bb
#

The only really concerning ones were eglibc and gcc. We can't set PARALLEL_MAKE="" for these as these are very large, and builds would be very slow. Packages like popt don't matter as much, you don't save that much time by building them with -j16.

Josh and I are trying to figure out how to address these.

Swabber support is coming soon!

- A
_______________________________________________
yocto mailing list
yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/yocto