blob: feb1f71381d73a083e42e457444a8b4d3a0896dd [file] [log] [blame]
Greg Kroah-Hartmanb2441312017-11-01 15:07:57 +01001# SPDX-License-Identifier: GPL-2.0
Linus Torvalds1da177e2005-04-16 15:20:36 -07002###
3# scripts contains sources for various helper programs used throughout
4# the kernel for the build process.
5# ---------------------------------------------------------------------------
6# kallsyms: Find all symbols in vmlinux
7# pnmttologo: Convert pnm files to logo files
David Woodhouse556b0f52009-01-10 14:53:15 +00008# conmakehash: Create chartable
Linus Torvalds1da177e2005-04-16 15:20:36 -07009# conmakehash: Create arrays for initializing the kernel console tables
10
H. Peter Anvin6520fe52012-05-08 21:22:24 +030011HOST_EXTRACFLAGS += -I$(srctree)/tools/include
12
Masahiro Yamadac417fbc2018-06-26 01:40:23 +090013hostprogs-$(CONFIG_BUILD_BIN2C) += bin2c
Linus Torvalds1da177e2005-04-16 15:20:36 -070014hostprogs-$(CONFIG_KALLSYMS) += kallsyms
15hostprogs-$(CONFIG_LOGO) += pnmtologo
16hostprogs-$(CONFIG_VT) += conmakehash
Steven Rostedt72441cb2010-10-13 17:12:30 -040017hostprogs-$(BUILD_C_RECORDMCOUNT) += recordmcount
David Daneya79f2482012-04-19 14:59:55 -070018hostprogs-$(CONFIG_BUILDTIME_EXTABLE_SORT) += sortextable
David Howells4520c6a2012-09-21 23:31:13 +010019hostprogs-$(CONFIG_ASN1) += asn1_compiler
David Woodhouse770f2b92015-07-20 21:16:34 +010020hostprogs-$(CONFIG_MODULE_SIG) += sign-file
21hostprogs-$(CONFIG_SYSTEM_TRUSTED_KEYRING) += extract-cert
Mehmet Kayaalpc4c36102015-11-24 16:18:05 -050022hostprogs-$(CONFIG_SYSTEM_EXTRA_CERTIFICATE) += insert-sys-cert
Linus Torvalds1da177e2005-04-16 15:20:36 -070023
David Daneyd59a1682012-04-24 11:23:14 -070024HOSTCFLAGS_sortextable.o = -I$(srctree)/tools/include
David Howells4520c6a2012-09-21 23:31:13 +010025HOSTCFLAGS_asn1_compiler.o = -I$(srctree)/include
Laura Abbott8377bd22018-07-09 17:46:01 -070026HOSTLDLIBS_sign-file = -lcrypto
27HOSTLDLIBS_extract-cert = -lcrypto
Linus Torvalds1da177e2005-04-16 15:20:36 -070028
Ross Birof2443ab2006-09-30 23:27:25 -070029always := $(hostprogs-y) $(hostprogs-m)
Linus Torvalds1da177e2005-04-16 15:20:36 -070030
Sam Ravnborg07aea3a2006-07-23 20:47:50 +020031# The following hostprogs-y programs are only build on demand
Jonathan Corbet52b3f232017-06-23 14:17:38 -060032hostprogs-y += unifdef
Sam Ravnborg07aea3a2006-07-23 20:47:50 +020033
Peter Foleybffd2022011-05-02 22:48:03 +020034# These targets are used internally to avoid "is up to date" messages
Jonathan Corbet52b3f232017-06-23 14:17:38 -060035PHONY += build_unifdef
Masahiro Yamadabfdfaea2014-01-20 14:08:08 +090036build_unifdef: $(obj)/unifdef
Mike Waychisone1b702c2011-03-14 23:34:25 -070037 @:
38
Masahiro Yamadace2fd53a2018-11-29 12:56:31 +090039subdir-$(CONFIG_GCC_PLUGINS) += gcc-plugins
Linus Torvalds1da177e2005-04-16 15:20:36 -070040subdir-$(CONFIG_MODVERSIONS) += genksyms
Serge E. Hallyn93c06cb2008-08-26 14:47:57 -050041subdir-$(CONFIG_SECURITY_SELINUX) += selinux
Jan Kiszka3ee7b3f2015-02-17 13:46:36 -080042subdir-$(CONFIG_GDB_SCRIPTS) += gdb
Linus Torvalds1da177e2005-04-16 15:20:36 -070043
44# Let clean descend into subdirs
Masahiro Yamadace2fd53a2018-11-29 12:56:31 +090045subdir- += basic dtc kconfig mod package