Makefile (75ef31221cec1b6056c42ac21cde59a2881d60f1) Makefile (613f4b3ed7902d1dbbc6ade6401e452a63dfbc21)
1# SPDX-License-Identifier: GPL-2.0
2VERSION = 5
3PATCHLEVEL = 18
4SUBLEVEL = 0
1# SPDX-License-Identifier: GPL-2.0
2VERSION = 5
3PATCHLEVEL = 18
4SUBLEVEL = 0
5EXTRAVERSION = -rc1
5EXTRAVERSION = -rc2
6NAME = Superb Owl
7
8# *DOCUMENTATION*
9# To see a list of typical targets execute "make help"
10# More info can be located in ./README
11# Comments in this file are targeted only to the developer, do not
12# expect to learn how to build the kernel reading this file.
13

--- 417 unchanged lines hidden (view full) ---

431endif
432
433HOSTCC = $(LLVM_PREFIX)clang$(LLVM_SUFFIX)
434HOSTCXX = $(LLVM_PREFIX)clang++$(LLVM_SUFFIX)
435else
436HOSTCC = gcc
437HOSTCXX = g++
438endif
6NAME = Superb Owl
7
8# *DOCUMENTATION*
9# To see a list of typical targets execute "make help"
10# More info can be located in ./README
11# Comments in this file are targeted only to the developer, do not
12# expect to learn how to build the kernel reading this file.
13

--- 417 unchanged lines hidden (view full) ---

431endif
432
433HOSTCC = $(LLVM_PREFIX)clang$(LLVM_SUFFIX)
434HOSTCXX = $(LLVM_PREFIX)clang++$(LLVM_SUFFIX)
435else
436HOSTCC = gcc
437HOSTCXX = g++
438endif
439HOSTPKG_CONFIG = pkg-config
440
441KBUILD_USERHOSTCFLAGS := -Wall -Wmissing-prototypes -Wstrict-prototypes \
442 -O2 -fomit-frame-pointer -std=gnu11 \
443 -Wdeclaration-after-statement
444KBUILD_USERCFLAGS := $(KBUILD_USERHOSTCFLAGS) $(USERCFLAGS)
445KBUILD_USERLDFLAGS := $(USERLDFLAGS)
446
447KBUILD_HOSTCFLAGS := $(KBUILD_USERHOSTCFLAGS) $(HOST_LFS_CFLAGS) $(HOSTCFLAGS)

--- 81 unchanged lines hidden (view full) ---

529KBUILD_AFLAGS_KERNEL :=
530KBUILD_CFLAGS_KERNEL :=
531KBUILD_AFLAGS_MODULE := -DMODULE
532KBUILD_CFLAGS_MODULE := -DMODULE
533KBUILD_LDFLAGS_MODULE :=
534KBUILD_LDFLAGS :=
535CLANG_FLAGS :=
536
439
440KBUILD_USERHOSTCFLAGS := -Wall -Wmissing-prototypes -Wstrict-prototypes \
441 -O2 -fomit-frame-pointer -std=gnu11 \
442 -Wdeclaration-after-statement
443KBUILD_USERCFLAGS := $(KBUILD_USERHOSTCFLAGS) $(USERCFLAGS)
444KBUILD_USERLDFLAGS := $(USERLDFLAGS)
445
446KBUILD_HOSTCFLAGS := $(KBUILD_USERHOSTCFLAGS) $(HOST_LFS_CFLAGS) $(HOSTCFLAGS)

--- 81 unchanged lines hidden (view full) ---

528KBUILD_AFLAGS_KERNEL :=
529KBUILD_CFLAGS_KERNEL :=
530KBUILD_AFLAGS_MODULE := -DMODULE
531KBUILD_CFLAGS_MODULE := -DMODULE
532KBUILD_LDFLAGS_MODULE :=
533KBUILD_LDFLAGS :=
534CLANG_FLAGS :=
535
537export ARCH SRCARCH CONFIG_SHELL BASH HOSTCC KBUILD_HOSTCFLAGS CROSS_COMPILE LD CC HOSTPKG_CONFIG
536export ARCH SRCARCH CONFIG_SHELL BASH HOSTCC KBUILD_HOSTCFLAGS CROSS_COMPILE LD CC
538export CPP AR NM STRIP OBJCOPY OBJDUMP READELF PAHOLE RESOLVE_BTFIDS LEX YACC AWK INSTALLKERNEL
539export PERL PYTHON3 CHECK CHECKFLAGS MAKE UTS_MACHINE HOSTCXX
540export KGZIP KBZIP2 KLZOP LZMA LZ4 XZ ZSTD
541export KBUILD_HOSTCXXFLAGS KBUILD_HOSTLDFLAGS KBUILD_HOSTLDLIBS LDFLAGS_MODULE
542export KBUILD_USERCFLAGS KBUILD_USERLDFLAGS
543
544export KBUILD_CPPFLAGS NOSTDINC_FLAGS LINUXINCLUDE OBJCOPYFLAGS KBUILD_LDFLAGS
545export KBUILD_CFLAGS CFLAGS_KERNEL CFLAGS_MODULE

--- 461 unchanged lines hidden (view full) ---

1007
1008# include additional Makefiles when needed
1009include-y := scripts/Makefile.extrawarn
1010include-$(CONFIG_DEBUG_INFO) += scripts/Makefile.debug
1011include-$(CONFIG_KASAN) += scripts/Makefile.kasan
1012include-$(CONFIG_KCSAN) += scripts/Makefile.kcsan
1013include-$(CONFIG_UBSAN) += scripts/Makefile.ubsan
1014include-$(CONFIG_KCOV) += scripts/Makefile.kcov
537export CPP AR NM STRIP OBJCOPY OBJDUMP READELF PAHOLE RESOLVE_BTFIDS LEX YACC AWK INSTALLKERNEL
538export PERL PYTHON3 CHECK CHECKFLAGS MAKE UTS_MACHINE HOSTCXX
539export KGZIP KBZIP2 KLZOP LZMA LZ4 XZ ZSTD
540export KBUILD_HOSTCXXFLAGS KBUILD_HOSTLDFLAGS KBUILD_HOSTLDLIBS LDFLAGS_MODULE
541export KBUILD_USERCFLAGS KBUILD_USERLDFLAGS
542
543export KBUILD_CPPFLAGS NOSTDINC_FLAGS LINUXINCLUDE OBJCOPYFLAGS KBUILD_LDFLAGS
544export KBUILD_CFLAGS CFLAGS_KERNEL CFLAGS_MODULE

--- 461 unchanged lines hidden (view full) ---

1006
1007# include additional Makefiles when needed
1008include-y := scripts/Makefile.extrawarn
1009include-$(CONFIG_DEBUG_INFO) += scripts/Makefile.debug
1010include-$(CONFIG_KASAN) += scripts/Makefile.kasan
1011include-$(CONFIG_KCSAN) += scripts/Makefile.kcsan
1012include-$(CONFIG_UBSAN) += scripts/Makefile.ubsan
1013include-$(CONFIG_KCOV) += scripts/Makefile.kcov
1014include-$(CONFIG_RANDSTRUCT) += scripts/Makefile.randstruct
1015include-$(CONFIG_GCC_PLUGINS) += scripts/Makefile.gcc-plugins
1016
1017include $(addprefix $(srctree)/, $(include-y))
1018
1019# scripts/Makefile.gcc-plugins is intentionally included last.
1020# Do not add $(call cc-option,...) below this line. When you build the kernel
1021# from the clean source tree, the GCC plugins do not exist at this point.
1022

--- 266 unchanged lines hidden (view full) ---

1289PHONY += scripts_unifdef
1290scripts_unifdef: scripts_basic
1291 $(Q)$(MAKE) $(build)=scripts scripts/unifdef
1292
1293# ---------------------------------------------------------------------------
1294# Install
1295
1296# Many distributions have the custom install script, /sbin/installkernel.
1015include-$(CONFIG_GCC_PLUGINS) += scripts/Makefile.gcc-plugins
1016
1017include $(addprefix $(srctree)/, $(include-y))
1018
1019# scripts/Makefile.gcc-plugins is intentionally included last.
1020# Do not add $(call cc-option,...) below this line. When you build the kernel
1021# from the clean source tree, the GCC plugins do not exist at this point.
1022

--- 266 unchanged lines hidden (view full) ---

1289PHONY += scripts_unifdef
1290scripts_unifdef: scripts_basic
1291 $(Q)$(MAKE) $(build)=scripts scripts/unifdef
1292
1293# ---------------------------------------------------------------------------
1294# Install
1295
1296# Many distributions have the custom install script, /sbin/installkernel.
1297# If DKMS is installed, 'make install' will eventually recurse back
1298# to this Makefile to build and install external modules.
1297# If DKMS is installed, 'make install' will eventually recuses back
1298# to the this Makefile to build and install external modules.
1299# Cancel sub_make_done so that options such as M=, V=, etc. are parsed.
1300
1301install: sub_make_done :=
1302
1303# ---------------------------------------------------------------------------
1304# Tools
1305
1306ifdef CONFIG_STACK_VALIDATION

--- 338 unchanged lines hidden (view full) ---

1645 @echo ' make C=1 [targets] Check re-compiled c source with $$CHECK'
1646 @echo ' (sparse by default)'
1647 @echo ' make C=2 [targets] Force check of all c source with $$CHECK'
1648 @echo ' make RECORDMCOUNT_WARN=1 [targets] Warn about ignored mcount sections'
1649 @echo ' make W=n [targets] Enable extra build checks, n=1,2,3 where'
1650 @echo ' 1: warnings which may be relevant and do not occur too often'
1651 @echo ' 2: warnings which occur quite often but may still be relevant'
1652 @echo ' 3: more obscure warnings, can most likely be ignored'
1299# Cancel sub_make_done so that options such as M=, V=, etc. are parsed.
1300
1301install: sub_make_done :=
1302
1303# ---------------------------------------------------------------------------
1304# Tools
1305
1306ifdef CONFIG_STACK_VALIDATION

--- 338 unchanged lines hidden (view full) ---

1645 @echo ' make C=1 [targets] Check re-compiled c source with $$CHECK'
1646 @echo ' (sparse by default)'
1647 @echo ' make C=2 [targets] Force check of all c source with $$CHECK'
1648 @echo ' make RECORDMCOUNT_WARN=1 [targets] Warn about ignored mcount sections'
1649 @echo ' make W=n [targets] Enable extra build checks, n=1,2,3 where'
1650 @echo ' 1: warnings which may be relevant and do not occur too often'
1651 @echo ' 2: warnings which occur quite often but may still be relevant'
1652 @echo ' 3: more obscure warnings, can most likely be ignored'
1653 @echo ' e: warnings are being treated as errors'
1654 @echo ' Multiple levels can be combined with W=12 or W=123'
1655 @echo ''
1656 @echo 'Execute "make" or "make all" to build all targets marked with [*] '
1657 @echo 'For further info see the ./README file'
1658
1659
1660help-board-dirs := $(addprefix help-,$(board-dirs))
1661

--- 126 unchanged lines hidden (view full) ---

1788# To build only under specific subdirectories, you can do like this:
1789#
1790# make foo/bar/baz/
1791
1792ifdef single-build
1793
1794# .ko is special because modpost is needed
1795single-ko := $(sort $(filter %.ko, $(MAKECMDGOALS)))
1653 @echo ' Multiple levels can be combined with W=12 or W=123'
1654 @echo ''
1655 @echo 'Execute "make" or "make all" to build all targets marked with [*] '
1656 @echo 'For further info see the ./README file'
1657
1658
1659help-board-dirs := $(addprefix help-,$(board-dirs))
1660

--- 126 unchanged lines hidden (view full) ---

1787# To build only under specific subdirectories, you can do like this:
1788#
1789# make foo/bar/baz/
1790
1791ifdef single-build
1792
1793# .ko is special because modpost is needed
1794single-ko := $(sort $(filter %.ko, $(MAKECMDGOALS)))
1796single-no-ko := $(filter-out $(single-ko), $(MAKECMDGOALS)) \
1797 $(foreach x, o mod, $(patsubst %.ko, %.$x, $(single-ko)))
1795single-no-ko := $(sort $(patsubst %.ko,%.mod, $(MAKECMDGOALS)))
1798
1799$(single-ko): single_modpost
1800 @:
1801$(single-no-ko): descend
1802 @:
1803
1804ifeq ($(KBUILD_EXTMOD),)
1805# For the single build of in-tree modules, use a temporary file to avoid

--- 39 unchanged lines hidden (view full) ---

1845
1846clean: $(clean-dirs)
1847 $(call cmd,rmfiles)
1848 @find $(or $(KBUILD_EXTMOD), .) $(RCS_FIND_IGNORE) \
1849 \( -name '*.[aios]' -o -name '*.ko' -o -name '.*.cmd' \
1850 -o -name '*.ko.*' \
1851 -o -name '*.dtb' -o -name '*.dtbo' -o -name '*.dtb.S' -o -name '*.dt.yaml' \
1852 -o -name '*.dwo' -o -name '*.lst' \
1796
1797$(single-ko): single_modpost
1798 @:
1799$(single-no-ko): descend
1800 @:
1801
1802ifeq ($(KBUILD_EXTMOD),)
1803# For the single build of in-tree modules, use a temporary file to avoid

--- 39 unchanged lines hidden (view full) ---

1843
1844clean: $(clean-dirs)
1845 $(call cmd,rmfiles)
1846 @find $(or $(KBUILD_EXTMOD), .) $(RCS_FIND_IGNORE) \
1847 \( -name '*.[aios]' -o -name '*.ko' -o -name '.*.cmd' \
1848 -o -name '*.ko.*' \
1849 -o -name '*.dtb' -o -name '*.dtbo' -o -name '*.dtb.S' -o -name '*.dt.yaml' \
1850 -o -name '*.dwo' -o -name '*.lst' \
1853 -o -name '*.su' -o -name '*.mod' -o -name '*.usyms' \
1851 -o -name '*.su' -o -name '*.mod' \
1854 -o -name '.*.d' -o -name '.*.tmp' -o -name '*.mod.c' \
1855 -o -name '*.lex.c' -o -name '*.tab.[ch]' \
1856 -o -name '*.asn1.[ch]' \
1857 -o -name '*.symtypes' -o -name 'modules.order' \
1858 -o -name '.tmp_*.o.*' \
1859 -o -name '*.c.[012]*.*' \
1860 -o -name '*.ll' \
1861 -o -name '*.gcno' \

--- 108 unchanged lines hidden ---
1852 -o -name '.*.d' -o -name '.*.tmp' -o -name '*.mod.c' \
1853 -o -name '*.lex.c' -o -name '*.tab.[ch]' \
1854 -o -name '*.asn1.[ch]' \
1855 -o -name '*.symtypes' -o -name 'modules.order' \
1856 -o -name '.tmp_*.o.*' \
1857 -o -name '*.c.[012]*.*' \
1858 -o -name '*.ll' \
1859 -o -name '*.gcno' \

--- 108 unchanged lines hidden ---