When I emerge ivtv using KBUILD_OUTPUT to build objects in another location, the process fails, ultimately producing the message "build of utils failed". I believe the ebuild does not make appropriate use of KV_OUT_DIR in some situations. In a related problem, the warning about builtin msp3400.ko uses `uname -r` instead of KV_FULL to check for the module, so it is incorrect for installing into non-running kernels. Reproducible: Always Steps to Reproduce: 1. set the KBUILD_OUTPUT environment variable to build ivtv elsewhere 2. compile a new kernel version, but don't reboot into it 3. emerge ivtv Actual Results: emerge failed when building the utilities, with the following output: Makefile:8: /usr/src/linux/.config: No such file or directory make: *** No rule to make target `/usr/src/linux/.config'. Stop. !!! ERROR: media-tv/ivtv-0.2.0_rc3-r3 failed. !!! Function src_compile, Line 52, Exitcode 2 !!! build of utils failed !!! If you need support, post the topmost build error, NOT this status message. Expected Results: emerge installs successfully, and warns when video/msp3400.ko is present in the target kernel's modules directory
Created attachment 54726 [details, diff] allows ebuild to succeed on my system With the following patch, ivtv emerges successfully on my system, and correctly warns about msp3400.ko in my non-running kernel. Not sure if this is totally correct (the change to the utils make line seems like a hack), but it works for me.
A. KBUILD_OUTPUT is to tell portage where your kernel's output dir is (i.e. you have a single kernel src tree, and multiple output trees) B. The ivtv Makefile is what's kind of off here. It should be using O instead of KERNELDIR, but whatever. The new ebuild will be in cvs tonight sometime.