"objtool" is required for building external m dules if "Compile-time stack metadata validation" is enabled. Otherwise all builds based on the headers package fail with: make[1]: Entering directory '/usr/src/linux-headers-4.6.0-rc6' make[2]: *** No rule to make target 'tools/objtool/objtool', needed by 'foo.o'. Stop. Makefile:1598: recipe for target 'foo.ko' failed make[1]: *** [foo.ko] Error 2 make[1]: Leaving directory '/usr/src/linux-headers-4.6.0-rc6'
Unified · Split
| @@ -322,6 +322,9 @@ fi · 321 unmodified lines | ||
| 322 | 322 | |
| 323 | 323 | # Build kernel header package |
| 324 | 324 | (cd $srctree; find . -name Makefile\* -o -name Kconfig\* -o -name \*.pl) > "$objtree/debian/hdrsrcfiles" |
| 325 | +if grep -q '^CONFIG_STACK_VALIDATION=y' $KCONFIG_CONFIG ; then | |
| 326 | + (cd $srctree; find tools/objtool -type f -executable) >> "$objtree/debian/hdrsrcfiles" | |
| 327 | +fi | |
| 325 | 328 | (cd $srctree; find arch/$SRCARCH/include include scripts -type f) >> "$objtree/debian/hdrsrcfiles" |
| 326 | 329 | (cd $srctree; find arch/$SRCARCH -name module.lds -o -name Kbuild.platforms -o -name Platform) >> "$objtree/debian/hdrsrcfiles" |
| 327 | 330 | (cd $srctree; find $(find arch/$SRCARCH -name include -o -name scripts -type d) -type f) >> "$objtree/debian/hdrsrcfiles" |