xref: /linux/scripts/Makefile (revision 74ce1896c6c65b2f8cccbf59162d542988835835)
1###
2# scripts contains sources for various helper programs used throughout
3# the kernel for the build process.
4# ---------------------------------------------------------------------------
5# kallsyms:      Find all symbols in vmlinux
6# pnmttologo:    Convert pnm files to logo files
7# conmakehash:   Create chartable
8# conmakehash:	 Create arrays for initializing the kernel console tables
9
10HOST_EXTRACFLAGS += -I$(srctree)/tools/include
11
12hostprogs-$(CONFIG_KALLSYMS)     += kallsyms
13hostprogs-$(CONFIG_LOGO)         += pnmtologo
14hostprogs-$(CONFIG_VT)           += conmakehash
15hostprogs-$(BUILD_C_RECORDMCOUNT) += recordmcount
16hostprogs-$(CONFIG_BUILDTIME_EXTABLE_SORT) += sortextable
17hostprogs-$(CONFIG_ASN1)	 += asn1_compiler
18hostprogs-$(CONFIG_MODULE_SIG)	 += sign-file
19hostprogs-$(CONFIG_SYSTEM_TRUSTED_KEYRING) += extract-cert
20hostprogs-$(CONFIG_SYSTEM_EXTRA_CERTIFICATE) += insert-sys-cert
21
22HOSTCFLAGS_sortextable.o = -I$(srctree)/tools/include
23HOSTCFLAGS_asn1_compiler.o = -I$(srctree)/include
24HOSTLOADLIBES_sign-file = -lcrypto
25HOSTLOADLIBES_extract-cert = -lcrypto
26
27always		:= $(hostprogs-y) $(hostprogs-m)
28
29# The following hostprogs-y programs are only build on demand
30hostprogs-y += unifdef
31
32# These targets are used internally to avoid "is up to date" messages
33PHONY += build_unifdef
34build_unifdef: $(obj)/unifdef
35	@:
36
37subdir-$(CONFIG_MODVERSIONS) += genksyms
38subdir-y                     += mod
39subdir-$(CONFIG_SECURITY_SELINUX) += selinux
40subdir-$(CONFIG_DTC)         += dtc
41subdir-$(CONFIG_GDB_SCRIPTS) += gdb
42
43# Let clean descend into subdirs
44subdir-	+= basic kconfig package gcc-plugins
45