• Masahiro Yamada's avatar
    kbuild: introduce hostprogs-always-y and userprogs-always-y · faabed29
    Masahiro Yamada authored
    
    
    To build host programs, you need to add the program names to 'hostprogs'
    to use the necessary build rule, but it is not enough to build them
    because there is no dependency.
    
    There are two types of host programs: built as the prerequisite of
    another (e.g. gen_crc32table in lib/Makefile), or always built when
    Kbuild visits the Makefile (e.g. genksyms in scripts/genksyms/Makefile).
    
    The latter is typical in Makefiles under scripts/, which contains host
    programs globally used during the kernel build. To build them, you need
    to add them to both 'hostprogs' and 'always-y'.
    
    This commit adds hostprogs-always-y as a shorthand.
    
    The same applies to user programs. net/bpfilter/Makefile builds
    bpfilter_umh on demand, hence always-y is unneeded. In contrast,
    programs under samples/ are added to both 'userprogs' and 'always-y'
    so they are always built when Kbuild visits the Makefiles.
    
    userprogs-always-y works as a shorthand.
    
    Signed-off-by: default avatarMasahiro Yamada <masahiroy@kernel.org>
    Acked-by: default avatarMiguel Ojeda <miguel.ojeda.sandonis@gmail.com>
    faabed29