• Matthias Maennich's avatar
    kbuild: mkcompile_h: consider timestamp if KBUILD_BUILD_TIMESTAMP is set · a979522a
    Matthias Maennich authored
    To avoid unnecessary recompilations, mkcompile_h does not regenerate
    compile.h if just the timestamp changed.
    Though, if KBUILD_BUILD_TIMESTAMP is set, an explicit timestamp for the
    build was requested, in which case we should not ignore it.
    
    If a user follows the documentation for reproducible builds [1] and
    defines KBUILD_BUILD_TIMESTAMP as the git commit timestamp, a clean
    build will have the correct timestamp. A subsequent cherry-pick (or
    amend) changes the commit timestamp and if an incremental build is done
    with a different KBUILD_BUILD_TIMESTAMP now, that new value is not taken
    into consideration. But it should for reproducibility.
    
    Hence, whenever KBUILD_BUILD_TIMESTAMP is explicitly set, do not ignore
    UTS_VERSION when making a decision about whether the regenerated version
    of compile.h should be moved into place.
    
    [1] https://www.kernel.org/doc/html/latest/kbuild/reproducible-builds.htmlSigned-off-by: default avatarMatthias Maennich <maennich@google.com>
    Signed-off-by: default avatarMasahiro Yamada <masahiroy@kernel.org>
    a979522a
mkcompile_h 2.48 KB