Bug 8934

Summary: ICECC support broken
Product: [Build System, Metadata & Runtime] Meta-yocto Reporter: Andreas Schultz <aschultz>
Component: meta-yoctoAssignee: Alex Franco <alejandro.franco>
Status: VERIFIED FIXED QA Contact: Bogdan Alexandru Voiculescu <bogdanx.a.voiculescu>
Severity: normal    
Priority: Medium CC: benjamin.esquivel, bogdanx.a.voiculescu, jku, joshuagloe, poky.bs.watcher, poky.watcher
Version: 2.1   
Target Milestone: 2.1   
Hardware: x86   
OS: x86_64   
Whiteboard:
OS type for building Yocto: --- Type of Regression: ---
Verified: Documentation change: No (bug/feature does not impact docs)
Attachments:
Description Flags
fix ICECC build in perl none

Description Andreas Schultz 2016-01-15 11:28:48 UTC
Building with ICECC fails during recipe parsing.

When adding ICECC to a local.conf with:

INHERIT += "icecc"

even the a simple 'bitbake -g core-image-minimal' fails with:

ERROR: nativesdk-buildtools-perl-dummy NULL prefix###################################################################################################################                        | ETA:  00:00:12
WARNING: Exception during build_dependencies for set_icecc_env
WARNING: Error during finalise of /usr/src/poky-master-non-bare/meta/recipes-core/meta/nativesdk-buildtools-perl-dummy.bb
ERROR: ExpansionError during parsing /usr/src/poky-master-non-bare/meta/recipes-core/meta/nativesdk-buildtools-perl-dummy.bb: Failure expanding variable set_icecc_env, expression was     if [ "${@use_icc(bb, d)}" = "no" ]
    then
        return
    fi
    ICECC_VERSION="${@icc_version(bb, d)}"
    if [ "x${ICECC_VERSION}" = "x" ]
    then
        bbwarn "Cannot use icecc: could not get ICECC_VERSION"
        return
    fi
...
Summary: There were 2 WARNING messages shown.
Summary: There were 2 ERROR messages shown, returning a non-zero exit code.
Comment 1 Jussi Kukkonen 2016-01-21 15:11:15 UTC
I see this too. Couldn't figure it out on the first try but will take another look next week if it's not resolved before that -- any advice is welcome.
Comment 2 Joshua Lock 2016-01-21 15:35:47 UTC
I did a bit of poking at icecc a couple of months ago:

http://git.yoctoproject.org/cgit/cgit.cgi/poky-contrib/log/?h=joshuagl/icecc
Comment 3 Andreas Schultz 2016-03-17 07:41:14 UTC
Created attachment 3037 [details]
fix ICECC build in perl
Comment 4 Andreas Schultz 2016-03-17 07:42:27 UTC
Disabling ICECC for nativesdk-buildtools-perl-dummy.bb fixes the problem for me.
Comment 5 Alex Franco 2016-03-18 15:46:38 UTC
Thanks Andreas, I am currently reproducing this issue. Indeed I believe this nativesdk buildtools dummy perl recipe was added for the new sdk tests and disabling ICECC for it may be the best course of action
Comment 6 Alex Franco 2016-03-22 18:26:13 UTC
Checking if a modification of the icc_is_allarch test in icecc.bbclass might be a better approach at solving this
Comment 7 Alex Franco 2016-03-22 22:04:17 UTC
Note: set the Documentation change value to Yes, as the variable ICECC_CC is misspelled in the docs. Will include in a separate commit as part of the fix...
Comment 8 Alex Franco 2016-03-22 23:56:21 UTC
Patch series with icecc inherit fix and suggested improvements sent out to oe-core mailing list; documentation typo fix sent to yocto mailing list
Comment 10 Bogdan Alexandru Voiculescu 2016-05-11 07:52:44 UTC
I tried to verify this bug and I got no error, but 22 warnings. 
See bellow the log. 
Please advise if we will fill a new bug or reopen this one.
 bitbake  core-image-minimal
Loading cache: 100% |######################################################################| ETA:  00:00:00
Loaded 1302 entries from dependency cache.
NOTE: Resolving any missing task queue dependencies

Build Configuration:
BB_VERSION        = "1.31.0"
BUILD_SYS         = "x86_64-linux"
NATIVELSBSTRING   = "Ubuntu-14.04"
TARGET_SYS        = "i586-poky-linux"
MACHINE           = "qemux86"
DISTRO            = "poky"
DISTRO_VERSION    = "2.1+snapshot-20160511"
TUNE_FEATURES     = "m32 i586"
TARGET_FPU        = ""
meta
meta-poky
meta-yocto-bsp    = "master:7ca60ec8bff7656b4e52f5a4d238913e851da089"

NOTE: Preparing RunQueue
NOTE: Checking sstate mirror object availability (for 688 objects)
NOTE: Executing SetScene Tasks
NOTE: Executing RunQueue Tasks
WARNING: icecc-create-env-native-0.1-r2 do_configure: Cannot use icecc: invalid ICECC_ENV_EXEC
WARNING: icecc-create-env-native-0.1-r2 do_compile: Cannot use icecc: invalid ICECC_ENV_EXEC
WARNING: icecc-create-env-native-0.1-r2 do_install: Cannot use icecc: invalid ICECC_ENV_EXEC
WARNING: base-files-3.0.14-r89 do_configure: Cannot use icecc: could not get ICECC_CC or ICECC_CXX
WARNING: base-files-3.0.14-r89 do_compile: Cannot use icecc: could not get ICECC_CC or ICECC_CXX
WARNING: depmodwrapper-cross-1.0-r0 do_configure: Cannot use icecc: could not get ICECC_CC or ICECC_CXX
WARNING: depmodwrapper-cross-1.0-r0 do_compile: Cannot use icecc: could not get ICECC_CC or ICECC_CXX
WARNING: shadow-securetty-4.2.1-r3 do_configure: Cannot use icecc: could not get ICECC_CC or ICECC_CXX
WARNING: shadow-securetty-4.2.1-r3 do_compile: Cannot use icecc: could not get ICECC_CC or ICECC_CXX
WARNING: qemuwrapper-cross-1.0-r0 do_configure: Cannot use icecc: could not get ICECC_CC or ICECC_CXX
WARNING: qemuwrapper-cross-1.0-r0 do_compile: Cannot use icecc: could not get ICECC_CC or ICECC_CXX
WARNING: sysvinit-inittab-2.88dsf-r10 do_configure: Cannot use icecc: could not get ICECC_CC or ICECC_CXX
WARNING: sysvinit-inittab-2.88dsf-r10 do_compile: Cannot use icecc: could not get ICECC_CC or ICECC_CXX
WARNING: linux-libc-headers-4.4-r0 do_configure: Cannot use icecc: could not get ICECC_CC or ICECC_CXX
WARNING: linux-libc-headers-4.4-r0 do_compile: Cannot use icecc: could not get ICECC_CC or ICECC_CXX
WARNING: depmodwrapper-cross-1.0-r0 do_install: Cannot use icecc: could not get ICECC_CC or ICECC_CXX
WARNING: linux-libc-headers-4.4-r0 do_install: Cannot use icecc: could not get ICECC_CC or ICECC_CXX
WARNING: qemuwrapper-cross-1.0-r0 do_install: Cannot use icecc: could not get ICECC_CC or ICECC_CXX
WARNING: shadow-securetty-4.2.1-r3 do_install: Cannot use icecc: could not get ICECC_CC or ICECC_CXX
WARNING: base-files-3.0.14-r89 do_install: Cannot use icecc: could not get ICECC_CC or ICECC_CXX
WARNING: sysvinit-inittab-2.88dsf-r10 do_install: Cannot use icecc: could not get ICECC_CC or ICECC_CXX
WARNING: glibc-locale-2.23-r0 do_install: Cannot use icecc: could not get ICECC_CC or ICECC_CXX
NOTE: Tasks Summary: Attempted 2061 tasks of which 9 didn't need to be rerun and all succeeded.

Summary: There were 22 WARNING messages shown.
Comment 11 Jussi Kukkonen 2016-05-11 08:03:49 UTC
That seems like a bug (and I've seen it periodically myself as well) but it's not at all the same bug as the original report. I don't think reopening this issue because of another bug is useful.
Comment 12 Bogdan Alexandru Voiculescu 2016-05-11 08:16:22 UTC
Filled bug 9618
Comment 13 Bogdan Alexandru Voiculescu 2016-05-11 08:17:10 UTC
Marking this as verified since original problem is fixed. 
Added new bug (9618) for other issues.