summaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2019-07-12 19:03:16 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2019-07-12 19:03:16 -0400
commit39ceda5ce1b002e30563fcb8ad1bb5ac8e4d59ee (patch)
tree18751f981a3a540379b9f4b01292e1b4f401aa38 /lib
parent5f26f1143678d0fed8115afdcc0de99ee7cc9675 (diff)
parentd4a74bbfee03acf7bbddc77b9c9236462c744fc7 (diff)
Merge tag 'kbuild-v5.3' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild
Pull Kbuild updates from Masahiro Yamada: - remove headers_{install,check}_all targets - remove unreasonable 'depends on !UML' from CONFIG_SAMPLES - re-implement 'make headers_install' more cleanly - add new header-test-y syntax to compile-test headers - compile-test exported headers to ensure they are compilable in user-space - compile-test headers under include/ to ensure they are self-contained - remove -Waggregate-return, -Wno-uninitialized, -Wno-unused-value flags - add -Werror=unknown-warning-option for Clang - add 128-bit built-in types support to genksyms - fix missed rebuild of modules.builtin - propagate 'No space left on device' error in fixdep to Make - allow Clang to use its integrated assembler - improve some coccinelle scripts - add a new flag KBUILD_ABS_SRCTREE to request Kbuild to use absolute path for $(srctree). - do not ignore errors when compression utility is missing - misc cleanups * tag 'kbuild-v5.3' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild: (49 commits) kbuild: use -- separater intead of $(filter-out ...) for cc-cross-prefix kbuild: Inform user to pass ARCH= for make mrproper kbuild: fix compression errors getting ignored kbuild: add a flag to force absolute path for srctree kbuild: replace KBUILD_SRCTREE with boolean building_out_of_srctree kbuild: remove src and obj from the top Makefile scripts/tags.sh: remove unused environment variables from comments scripts/tags.sh: drop SUBARCH support for ARM kbuild: compile-test kernel headers to ensure they are self-contained kheaders: include only headers into kheaders_data.tar.xz kheaders: remove meaningless -R option of 'ls' kbuild: support header-test-pattern-y kbuild: do not create wrappers for header-test-y kbuild: compile-test exported headers to ensure they are self-contained init/Kconfig: add CONFIG_CC_CAN_LINK kallsyms: exclude kasan local symbols on s390 kbuild: add more hints about SUBDIRS replacement coccinelle: api/stream_open: treat all wait_.*() calls as blocking coccinelle: put_device: Add a cast to an expression for an assignment coccinelle: put_device: Adjust a message construction ...
Diffstat (limited to 'lib')
-rw-r--r--lib/Kconfig.debug25
-rw-r--r--lib/raid6/Makefile98
2 files changed, 27 insertions, 96 deletions
diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug
index d4c8c9323aa4..4ac4ca21a30a 100644
--- a/lib/Kconfig.debug
+++ b/lib/Kconfig.debug
@@ -305,19 +305,26 @@ config DEBUG_FS
305 305
306 If unsure, say N. 306 If unsure, say N.
307 307
308config HEADERS_CHECK 308config HEADERS_INSTALL
309 bool "Run 'make headers_check' when building vmlinux" 309 bool "Install uapi headers to usr/include"
310 depends on !UML 310 depends on !UML
311 help 311 help
312 This option will extract the user-visible kernel headers whenever 312 This option will install uapi headers (headers exported to user-space)
313 building the kernel, and will run basic sanity checks on them to 313 into the usr/include directory for use during the kernel build.
314 ensure that exported files do not attempt to include files which 314 This is unneeded for building the kernel itself, but needed for some
315 were not exported, etc. 315 user-space program samples. It is also needed by some features such
316 as uapi header sanity checks.
317
318config HEADERS_CHECK
319 bool "Run sanity checks on uapi headers when building 'all'"
320 depends on HEADERS_INSTALL
321 help
322 This option will run basic sanity checks on uapi headers when
323 building the 'all' target, for example, ensure that they do not
324 attempt to include files which were not exported, etc.
316 325
317 If you're making modifications to header files which are 326 If you're making modifications to header files which are
318 relevant for userspace, say 'Y', and check the headers 327 relevant for userspace, say 'Y'.
319 exported to $(INSTALL_HDR_PATH) (usually 'usr/include' in
320 your build tree), to make sure they're suitable.
321 328
322config OPTIMIZE_INLINING 329config OPTIMIZE_INLINING
323 bool "Allow compiler to uninline functions marked 'inline'" 330 bool "Allow compiler to uninline functions marked 'inline'"
diff --git a/lib/raid6/Makefile b/lib/raid6/Makefile
index e723eacf7868..42695bc8d451 100644
--- a/lib/raid6/Makefile
+++ b/lib/raid6/Makefile
@@ -12,9 +12,6 @@ raid6_pq-$(CONFIG_S390) += s390vx8.o recov_s390xc.o
12 12
13hostprogs-y += mktables 13hostprogs-y += mktables
14 14
15quiet_cmd_unroll = UNROLL $@
16 cmd_unroll = $(AWK) -f$(srctree)/$(src)/unroll.awk -vN=$(UNROLL) < $< > $@
17
18ifeq ($(CONFIG_ALTIVEC),y) 15ifeq ($(CONFIG_ALTIVEC),y)
19altivec_flags := -maltivec $(call cc-option,-mabi=altivec) 16altivec_flags := -maltivec $(call cc-option,-mabi=altivec)
20 17
@@ -26,7 +23,6 @@ CFLAGS_REMOVE_altivec1.o += -msoft-float
26CFLAGS_REMOVE_altivec2.o += -msoft-float 23CFLAGS_REMOVE_altivec2.o += -msoft-float
27CFLAGS_REMOVE_altivec4.o += -msoft-float 24CFLAGS_REMOVE_altivec4.o += -msoft-float
28CFLAGS_REMOVE_altivec8.o += -msoft-float 25CFLAGS_REMOVE_altivec8.o += -msoft-float
29CFLAGS_REMOVE_altivec8.o += -msoft-float
30CFLAGS_REMOVE_vpermxor1.o += -msoft-float 26CFLAGS_REMOVE_vpermxor1.o += -msoft-float
31CFLAGS_REMOVE_vpermxor2.o += -msoft-float 27CFLAGS_REMOVE_vpermxor2.o += -msoft-float
32CFLAGS_REMOVE_vpermxor4.o += -msoft-float 28CFLAGS_REMOVE_vpermxor4.o += -msoft-float
@@ -51,111 +47,39 @@ CFLAGS_REMOVE_neon8.o += -mgeneral-regs-only
51endif 47endif
52endif 48endif
53 49
54targets += int1.c 50quiet_cmd_unroll = UNROLL $@
55$(obj)/int1.c: UNROLL := 1 51 cmd_unroll = $(AWK) -f$(srctree)/$(src)/unroll.awk -vN=$* < $< > $@
56$(obj)/int1.c: $(src)/int.uc $(src)/unroll.awk FORCE
57 $(call if_changed,unroll)
58
59targets += int2.c
60$(obj)/int2.c: UNROLL := 2
61$(obj)/int2.c: $(src)/int.uc $(src)/unroll.awk FORCE
62 $(call if_changed,unroll)
63
64targets += int4.c
65$(obj)/int4.c: UNROLL := 4
66$(obj)/int4.c: $(src)/int.uc $(src)/unroll.awk FORCE
67 $(call if_changed,unroll)
68
69targets += int8.c
70$(obj)/int8.c: UNROLL := 8
71$(obj)/int8.c: $(src)/int.uc $(src)/unroll.awk FORCE
72 $(call if_changed,unroll)
73
74targets += int16.c
75$(obj)/int16.c: UNROLL := 16
76$(obj)/int16.c: $(src)/int.uc $(src)/unroll.awk FORCE
77 $(call if_changed,unroll)
78 52
79targets += int32.c 53targets += int1.c int2.c int4.c int8.c int16.c int32.c
80$(obj)/int32.c: UNROLL := 32 54$(obj)/int%.c: $(src)/int.uc $(src)/unroll.awk FORCE
81$(obj)/int32.c: $(src)/int.uc $(src)/unroll.awk FORCE
82 $(call if_changed,unroll) 55 $(call if_changed,unroll)
83 56
84CFLAGS_altivec1.o += $(altivec_flags) 57CFLAGS_altivec1.o += $(altivec_flags)
85targets += altivec1.c
86$(obj)/altivec1.c: UNROLL := 1
87$(obj)/altivec1.c: $(src)/altivec.uc $(src)/unroll.awk FORCE
88 $(call if_changed,unroll)
89
90CFLAGS_altivec2.o += $(altivec_flags) 58CFLAGS_altivec2.o += $(altivec_flags)
91targets += altivec2.c
92$(obj)/altivec2.c: UNROLL := 2
93$(obj)/altivec2.c: $(src)/altivec.uc $(src)/unroll.awk FORCE
94 $(call if_changed,unroll)
95
96CFLAGS_altivec4.o += $(altivec_flags) 59CFLAGS_altivec4.o += $(altivec_flags)
97targets += altivec4.c
98$(obj)/altivec4.c: UNROLL := 4
99$(obj)/altivec4.c: $(src)/altivec.uc $(src)/unroll.awk FORCE
100 $(call if_changed,unroll)
101
102CFLAGS_altivec8.o += $(altivec_flags) 60CFLAGS_altivec8.o += $(altivec_flags)
103targets += altivec8.c 61targets += altivec1.c altivec2.c altivec4.c altivec8.c
104$(obj)/altivec8.c: UNROLL := 8 62$(obj)/altivec%.c: $(src)/altivec.uc $(src)/unroll.awk FORCE
105$(obj)/altivec8.c: $(src)/altivec.uc $(src)/unroll.awk FORCE
106 $(call if_changed,unroll) 63 $(call if_changed,unroll)
107 64
108CFLAGS_vpermxor1.o += $(altivec_flags) 65CFLAGS_vpermxor1.o += $(altivec_flags)
109targets += vpermxor1.c
110$(obj)/vpermxor1.c: UNROLL := 1
111$(obj)/vpermxor1.c: $(src)/vpermxor.uc $(src)/unroll.awk FORCE
112 $(call if_changed,unroll)
113
114CFLAGS_vpermxor2.o += $(altivec_flags) 66CFLAGS_vpermxor2.o += $(altivec_flags)
115targets += vpermxor2.c
116$(obj)/vpermxor2.c: UNROLL := 2
117$(obj)/vpermxor2.c: $(src)/vpermxor.uc $(src)/unroll.awk FORCE
118 $(call if_changed,unroll)
119
120CFLAGS_vpermxor4.o += $(altivec_flags) 67CFLAGS_vpermxor4.o += $(altivec_flags)
121targets += vpermxor4.c
122$(obj)/vpermxor4.c: UNROLL := 4
123$(obj)/vpermxor4.c: $(src)/vpermxor.uc $(src)/unroll.awk FORCE
124 $(call if_changed,unroll)
125
126CFLAGS_vpermxor8.o += $(altivec_flags) 68CFLAGS_vpermxor8.o += $(altivec_flags)
127targets += vpermxor8.c 69targets += vpermxor1.o vpermxor2.o vpermxor4.o vpermxor8.o
128$(obj)/vpermxor8.c: UNROLL := 8 70$(obj)/vpermxor%.c: $(src)/vpermxor.uc $(src)/unroll.awk FORCE
129$(obj)/vpermxor8.c: $(src)/vpermxor.uc $(src)/unroll.awk FORCE
130 $(call if_changed,unroll) 71 $(call if_changed,unroll)
131 72
132CFLAGS_neon1.o += $(NEON_FLAGS) 73CFLAGS_neon1.o += $(NEON_FLAGS)
133targets += neon1.c
134$(obj)/neon1.c: UNROLL := 1
135$(obj)/neon1.c: $(src)/neon.uc $(src)/unroll.awk FORCE
136 $(call if_changed,unroll)
137
138CFLAGS_neon2.o += $(NEON_FLAGS) 74CFLAGS_neon2.o += $(NEON_FLAGS)
139targets += neon2.c
140$(obj)/neon2.c: UNROLL := 2
141$(obj)/neon2.c: $(src)/neon.uc $(src)/unroll.awk FORCE
142 $(call if_changed,unroll)
143
144CFLAGS_neon4.o += $(NEON_FLAGS) 75CFLAGS_neon4.o += $(NEON_FLAGS)
145targets += neon4.c
146$(obj)/neon4.c: UNROLL := 4
147$(obj)/neon4.c: $(src)/neon.uc $(src)/unroll.awk FORCE
148 $(call if_changed,unroll)
149
150CFLAGS_neon8.o += $(NEON_FLAGS) 76CFLAGS_neon8.o += $(NEON_FLAGS)
151targets += neon8.c 77targets += neon1.c neon2.c neon4.c neon8.c
152$(obj)/neon8.c: UNROLL := 8 78$(obj)/neon%.c: $(src)/neon.uc $(src)/unroll.awk FORCE
153$(obj)/neon8.c: $(src)/neon.uc $(src)/unroll.awk FORCE
154 $(call if_changed,unroll) 79 $(call if_changed,unroll)
155 80
156targets += s390vx8.c 81targets += s390vx8.c
157$(obj)/s390vx8.c: UNROLL := 8 82$(obj)/s390vx%.c: $(src)/s390vx.uc $(src)/unroll.awk FORCE
158$(obj)/s390vx8.c: $(src)/s390vx.uc $(src)/unroll.awk FORCE
159 $(call if_changed,unroll) 83 $(call if_changed,unroll)
160 84
161quiet_cmd_mktable = TABLE $@ 85quiet_cmd_mktable = TABLE $@