03 Oct, 2016

1 commit

  • It is used in the build process, so stop suppressing its build in tools
    cross builds.

    Signed-off-by: Jiri Olsa
    Tested-by: Arnaldo Carvalho de Melo
    Cc: Andi Kleen
    Cc: Madhavan Srinivasan
    Cc: Peter Zijlstra
    Cc: Sukadev Bhattiprolu
    Cc: linuxppc-dev@lists.ozlabs.org
    Link: http://lkml.kernel.org/r/20160927141846.GA6589@krava
    [ Use HOSTCC on the $(OUTPUT)fixdep target, it was using the x-compiler
    to link fixdep-in.o, that was correctly built with HOSTCC and thus failing ]
    Signed-off-by: Arnaldo Carvalho de Melo

    Jiri Olsa
     

29 Sep, 2015

1 commit

  • For dependency tracking we currently use targets that fall out of the
    gcc -MD command. We store this info in the .cmd file and include as
    makefile during the build.

    This format put object as target and all the c and header files as
    dependencies, like:

    util/abspath.o: util/abspath.c /usr/include/stdc-predef.h util/cache.h \
    /usr/include/bits/wordsize.h /usr/include/gnu/stubs.h \
    ...

    If any of those dependency header files (krava.h below) is removed the
    build fails on:

    make[1]: *** No rule to make target 'krava.h', needed by 'inc.o'. Stop.

    This patch adds fixdep helper, that is used by kbuild to alter the shape
    of the object dependencies like:

    source_util/abspath.o := util/abspath.c

    deps_util/abspath.o := \
    /usr/include/stdc-predef.h \
    util/cache.h \
    ...

    util/abspath.o: $(deps_util/abspath.o)

    $(deps_util/abspath.o):

    With this format the header removal won't make the build fail, because
    it'll be picked up by the last empty target defined for each header.

    As previously mentioned the fixdep tool is taken from kbuild. It's not
    complete backport, only the part that alters the standard dependency
    info was taken, the part that adds the CONFIG_* dependency logic will be
    probably taken later on.

    Signed-off-by: Jiri Olsa
    Cc: David Ahern
    Cc: Kai Germaschewski
    Cc: Namhyung Kim
    Cc: Peter Zijlstra
    Link: http://lkml.kernel.org/r/1443004442-32660-4-git-send-email-jolsa@kernel.org
    Signed-off-by: Arnaldo Carvalho de Melo

    Jiri Olsa