Bug 7423

Summary: systemtap fails to compile with x32 ABI
Product: [Build System, Metadata & Runtime] OE-Core Reporter: Mariano Lopez <mariano.lopez>
Component: coreAssignee: Aníbal Limón <anibal.limon>
Status: VERIFIED FIXED QA Contact: Cristina Agurida <cristina-danielax.agurida>
Severity: normal    
Priority: Medium CC: anibal.limon, cristina-danielax.agurida, meta.mr.watcher, meta.watcher, sgw
Version: 1.8   
Target Milestone: 1.9   
Hardware: x86   
OS: x86_64   
Whiteboard:
OS type for building Yocto: --- Type of Regression: ---
Verified: Documentation change: No (bug/feature does not impact docs)
Bug Depends on:    
Bug Blocks: 3437    

Description Mariano Lopez 2015-03-06 22:20:26 UTC
Trying to compile systemtap fails using x32.

| make  all-recursive
| make[1]: Entering directory `/home/mlopezva/poky/build/tmp/work/x86_64_x32-poky-linux-gnux32/systemtap/2.6+gitAUTOINC+7682e51d2e-r0/build'
| Making all in .
| make[2]: Entering directory `/home/mlopezva/poky/build/tmp/work/x86_64_x32-poky-linux-gnux32/systemtap/2.6+gitAUTOINC+7682e51d2e-r0/build'
| x86_64-poky-linux-gnux32-g++  -mx32 --sysroot=/home/mlopezva/poky/build/tmp/sysroots/qemux86-64 -DHAVE_CONFIG_H -I. -I/home/mlopezva/poky/build/tmp/work/x86_64_x32-poky-linux-gnux32/systemtap/2.6+gitAUTOINC+7682e51d2e-r0/git  -DBINDIR='"/usr/bin"' -DSYSCONFDIR='"/etc"' -DPKGDATADIR='"/usr/share/systemtap"' -DPKGLIBDIR='"/usr/libx32/systemtap/systemtap"' -DLOCALEDIR='"/usr/share/locale"' -I/home/mlopezva/poky/build/tmp/work/x86_64_x32-poky-linux-gnux32/systemtap/2.6+gitAUTOINC+7682e51d2e-r0/git/includes -I./includes/sys -DSTAP_SDT_V2     -Wall -Werror   -O2 -pipe -g -feliminate-unused-debug-types -fvisibility-inlines-hidden -fstack-protector-all -D_FORTIFY_SOURCE=2 -c -o stap-cache.o `test -f 'cache.cxx' || echo '/home/mlopezva/poky/build/tmp/work/x86_64_x32-poky-linux-gnux32/systemtap/2.6+gitAUTOINC+7682e51d2e-r0/git/'`cache.cxx
| The script example index is outdated, run
|     cd /home/mlopezva/poky/build/tmp/work/x86_64_x32-poky-linux-gnux32/systemtap/2.6+gitAUTOINC+7682e51d2e-r0/git/testsuite/systemtap.examples && \
|     perl examples-index-gen.pl
| to regenerate it.
| In file included from /home/mlopezva/poky/build/tmp/work/x86_64_x32-poky-linux-gnux32/systemtap/2.6+gitAUTOINC+7682e51d2e-r0/git/session.h:33:0,
|                  from /home/mlopezva/poky/build/tmp/work/x86_64_x32-poky-linux-gnux32/systemtap/2.6+gitAUTOINC+7682e51d2e-r0/git/cache.cxx:10:
| /home/mlopezva/poky/build/tmp/work/x86_64_x32-poky-linux-gnux32/systemtap/2.6+gitAUTOINC+7682e51d2e-r0/git/cache.cxx: In function 'void clean_cache(systemtap_session&)':
| /home/mlopezva/poky/build/tmp/work/x86_64_x32-poky-linux-gnux32/systemtap/2.6+gitAUTOINC+7682e51d2e-r0/git/util.h:43:59: error: format '%lu' expects argument of type 'long unsigned int', but argument 2 has type '__time_t {aka long long int}' [-Werror=format=]
|  #define _F(format, ...) autosprintf(_(format), __VA_ARGS__)
|                                                            ^
| /home/mlopezva/poky/build/tmp/work/x86_64_x32-poky-linux-gnux32/systemtap/2.6+gitAUTOINC+7682e51d2e-r0/git/cache.cxx:297:21: note: in expansion of macro '_F'
|              clog << _F("Cache cleaning skipped, interval not reached %lu s / %lu s.",
|                      ^
| /home/mlopezva/poky/build/tmp/work/x86_64_x32-poky-linux-gnux32/systemtap/2.6+gitAUTOINC+7682e51d2e-r0/git/util.h:43:59: error: format '%lu' expects argument of type 'long unsigned int', but argument 2 has type '__time_t {aka long long int}' [-Werror=format=]
|  #define _F(format, ...) autosprintf(_(format), __VA_ARGS__)
|                                                            ^
| /home/mlopezva/poky/build/tmp/work/x86_64_x32-poky-linux-gnux32/systemtap/2.6+gitAUTOINC+7682e51d2e-r0/git/cache.cxx:305:21: note: in expansion of macro '_F'
|              clog << _F("Cleaning cache, interval reached %lu s > %lu s.",
|                      ^
| cc1plus: all warnings being treated as errors
| make[2]: *** [stap-cache.o] Error 1
| make[2]: Leaving directory `/home/mlopezva/poky/build/tmp/work/x86_64_x32-poky-linux-gnux32/systemtap/2.6+gitAUTOINC+7682e51d2e-r0/build'
| make[1]: *** [all-recursive] Error 1
| make[1]: Leaving directory `/home/mlopezva/poky/build/tmp/work/x86_64_x32-poky-linux-gnux32/systemtap/2.6+gitAUTOINC+7682e51d2e-r0/build'
| make: *** [all] Error 2
| ERROR: oe_runmake failed
| WARNING: /home/mlopezva/poky/build/tmp/work/x86_64_x32-poky-linux-gnux32/systemtap/2.6+gitAUTOINC+7682e51d2e-r0/temp/run.do_compile.15087:1 exit 1 from
|   exit 1
Comment 2 Cristina Agurida 2015-05-27 11:19:30 UTC
Verified on master: 5170177719a93a69cc6c7c1218b3f26eed82d6e0