Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge tag 'kbuild-fixes-v4.18-2' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild

Pull Kbuild fixes from Masahiro Yamada:

- update Kbuild and Kconfig documents

- sanitize -I compiler option handling

- update extract-vmlinux script to recognize LZ4 and ZSTD

- fix tools Makefiles

- update tags.sh to handle __ro_after_init

- suppress warnings in case getconf does not recognize LFS_* parameters

* tag 'kbuild-fixes-v4.18-2' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild:
kbuild: suppress warnings from 'getconf LFS_*'
scripts/tags.sh: add __ro_after_init
tools: build: Use HOSTLDFLAGS with fixdep
tools: build: Fixup host c flags
tools build: fix # escaping in .cmd files for future Make
scripts: teach extract-vmlinux about LZ4 and ZSTD
kbuild: remove duplicated comments about PHONY
kbuild: .PHONY is not a variable, but PHONY is
kbuild: do not drop -I without parameter
kbuild: document the KBUILD_KCONFIG env. variable
kconfig: update user kconfig tools doc.
kbuild: delete INSTALL_FW_PATH from kbuild documentation
kbuild: update ARCH alias info for sparc
kbuild: update ARCH alias info for sh

+63 -50
+7 -10
Documentation/kbuild/kbuild.txt
··· 50 50 -------------------------------------------------- 51 51 Additional options used for $(LD) when linking modules. 52 52 53 + KBUILD_KCONFIG 54 + -------------------------------------------------- 55 + Set the top-level Kconfig file to the value of this environment 56 + variable. The default name is "Kconfig". 57 + 53 58 KBUILD_VERBOSE 54 59 -------------------------------------------------- 55 60 Set the kbuild verbosity. Can be assigned same values as "V=...". ··· 93 88 directory name found in the arch/ directory. 94 89 But some architectures such as x86 and sparc have aliases. 95 90 x86: i386 for 32 bit, x86_64 for 64 bit 96 - sparc: sparc for 32 bit, sparc64 for 64 bit 91 + sh: sh for 32 bit, sh64 for 64 bit 92 + sparc: sparc32 for 32 bit, sparc64 for 64 bit 97 93 98 94 CROSS_COMPILE 99 95 -------------------------------------------------- ··· 153 147 stripped after they are installed. If INSTALL_MOD_STRIP is '1', then 154 148 the default option --strip-debug will be used. Otherwise, 155 149 INSTALL_MOD_STRIP value will be used as the options to the strip command. 156 - 157 - INSTALL_FW_PATH 158 - -------------------------------------------------- 159 - INSTALL_FW_PATH specifies where to install the firmware blobs. 160 - The default value is: 161 - 162 - $(INSTALL_MOD_PATH)/lib/firmware 163 - 164 - The value can be overridden in which case the default value is ignored. 165 150 166 151 INSTALL_HDR_PATH 167 152 --------------------------------------------------
+43 -8
Documentation/kbuild/kconfig.txt
··· 2 2 3 3 Use "make help" to list all of the possible configuration targets. 4 4 5 - The xconfig ('qconf') and menuconfig ('mconf') programs also 6 - have embedded help text. Be sure to check it for navigation, 7 - search, and other general help text. 5 + The xconfig ('qconf'), menuconfig ('mconf'), and nconfig ('nconf') 6 + programs also have embedded help text. Be sure to check that for 7 + navigation, search, and other general help text. 8 8 9 9 ====================================================================== 10 10 General ··· 17 17 for you, so you may find that you need to see what NEW kernel 18 18 symbols have been introduced. 19 19 20 - To see a list of new config symbols when using "make oldconfig", use 20 + To see a list of new config symbols, use 21 21 22 22 cp user/some/old.config .config 23 23 make listnewconfig 24 24 25 25 and the config program will list any new symbols, one per line. 26 26 27 + Alternatively, you can use the brute force method: 28 + 29 + make oldconfig 27 30 scripts/diffconfig .config.old .config | less 28 31 29 32 ______________________________________________________________________ ··· 163 160 This lists all config symbols that contain "hotplug", 164 161 e.g., HOTPLUG_CPU, MEMORY_HOTPLUG. 165 162 166 - For search help, enter / followed TAB-TAB-TAB (to highlight 163 + For search help, enter / followed by TAB-TAB (to highlight 167 164 <Help>) and Enter. This will tell you that you can also use 168 165 regular expressions (regexes) in the search string, so if you 169 166 are not interested in MEMORY_HOTPLUG, you could try ··· 206 203 207 204 208 205 ====================================================================== 206 + nconfig 207 + -------------------------------------------------- 208 + 209 + nconfig is an alternate text-based configurator. It lists function 210 + keys across the bottom of the terminal (window) that execute commands. 211 + You can also just use the corresponding numeric key to execute the 212 + commands unless you are in a data entry window. E.g., instead of F6 213 + for Save, you can just press 6. 214 + 215 + Use F1 for Global help or F3 for the Short help menu. 216 + 217 + Searching in nconfig: 218 + 219 + You can search either in the menu entry "prompt" strings 220 + or in the configuration symbols. 221 + 222 + Use / to begin a search through the menu entries. This does 223 + not support regular expressions. Use <Down> or <Up> for 224 + Next hit and Previous hit, respectively. Use <Esc> to 225 + terminate the search mode. 226 + 227 + F8 (SymSearch) searches the configuration symbols for the 228 + given string or regular expression (regex). 229 + 230 + NCONFIG_MODE 231 + -------------------------------------------------- 232 + This mode shows all sub-menus in one large tree. 233 + 234 + Example: 235 + make NCONFIG_MODE=single_menu nconfig 236 + 237 + 238 + ====================================================================== 209 239 xconfig 210 240 -------------------------------------------------- 211 241 ··· 266 230 267 231 Searching in gconfig: 268 232 269 - None (gconfig isn't maintained as well as xconfig or menuconfig); 270 - however, gconfig does have a few more viewing choices than 271 - xconfig does. 233 + There is no search command in gconfig. However, gconfig does 234 + have several different viewing choices, modes, and options. 272 235 273 236 ###
+4 -4
Makefile
··· 353 353 else if [ -x /bin/bash ]; then echo /bin/bash; \ 354 354 else echo sh; fi ; fi) 355 355 356 - HOST_LFS_CFLAGS := $(shell getconf LFS_CFLAGS) 357 - HOST_LFS_LDFLAGS := $(shell getconf LFS_LDFLAGS) 358 - HOST_LFS_LIBS := $(shell getconf LFS_LIBS) 356 + HOST_LFS_CFLAGS := $(shell getconf LFS_CFLAGS 2>/dev/null) 357 + HOST_LFS_LDFLAGS := $(shell getconf LFS_LDFLAGS 2>/dev/null) 358 + HOST_LFS_LIBS := $(shell getconf LFS_LIBS 2>/dev/null) 359 359 360 360 HOSTCC = gcc 361 361 HOSTCXX = g++ ··· 1712 1712 PHONY += FORCE 1713 1713 FORCE: 1714 1714 1715 - # Declare the contents of the .PHONY variable as phony. We keep that 1715 + # Declare the contents of the PHONY variable as phony. We keep that 1716 1716 # information in a variable so we can use it in if_changed and friends. 1717 1717 .PHONY: $(PHONY)
+1 -1
scripts/Kbuild.include
··· 214 214 # Prefix -I with $(srctree) if it is not an absolute path. 215 215 # skip if -I has no parameter 216 216 addtree = $(if $(patsubst -I%,%,$(1)), \ 217 - $(if $(filter-out -I/% -I./% -I../%,$(1)),$(patsubst -I%,-I$(srctree)/%,$(1)),$(1))) 217 + $(if $(filter-out -I/% -I./% -I../%,$(1)),$(patsubst -I%,-I$(srctree)/%,$(1)),$(1)),$(1)) 218 218 219 219 # Find all -I options and call addtree 220 220 flags = $(foreach o,$($(1)),$(if $(filter -I%,$(o)),$(call addtree,$(o)),$(o)))
-3
scripts/Makefile.build
··· 590 590 # We never want them to be removed automatically. 591 591 .SECONDARY: $(targets) 592 592 593 - # Declare the contents of the .PHONY variable as phony. We keep that 594 - # information in a variable se we can use it in if_changed and friends. 595 - 596 593 .PHONY: $(PHONY)
-3
scripts/Makefile.clean
··· 88 88 $(subdir-ymn): 89 89 $(Q)$(MAKE) $(clean)=$@ 90 90 91 - # Declare the contents of the .PHONY variable as phony. We keep that 92 - # information in a variable se we can use it in if_changed and friends. 93 - 94 91 .PHONY: $(PHONY)
-4
scripts/Makefile.modbuiltin
··· 54 54 $(subdir-ym): 55 55 $(Q)$(MAKE) $(modbuiltin)=$@ 56 56 57 - 58 - # Declare the contents of the .PHONY variable as phony. We keep that 59 - # information in a variable se we can use it in if_changed and friends. 60 - 61 57 .PHONY: $(PHONY)
-4
scripts/Makefile.modinst
··· 35 35 $(modules): 36 36 $(call cmd,modules_install,$(MODLIB)/$(modinst_dir)) 37 37 38 - 39 - # Declare the contents of the .PHONY variable as phony. We keep that 40 - # information in a variable so we can use it in if_changed and friends. 41 - 42 38 .PHONY: $(PHONY)
-4
scripts/Makefile.modpost
··· 149 149 include $(cmd_files) 150 150 endif 151 151 152 - 153 - # Declare the contents of the .PHONY variable as phony. We keep that 154 - # information in a variable se we can use it in if_changed and friends. 155 - 156 152 .PHONY: $(PHONY)
-3
scripts/Makefile.modsign
··· 27 27 $(modules): 28 28 $(call cmd,sign_ko,$(MODLIB)/$(modinst_dir)) 29 29 30 - # Declare the contents of the .PHONY variable as phony. We keep that 31 - # information in a variable se we can use it in if_changed and friends. 32 - 33 30 .PHONY: $(PHONY)
+2
scripts/extract-vmlinux
··· 57 57 try_decompress 'BZh' xy bunzip2 58 58 try_decompress '\135\0\0\0' xxx unlzma 59 59 try_decompress '\211\114\132' xy 'lzop -d' 60 + try_decompress '\002!L\030' xxx 'lz4 -d' 61 + try_decompress '(\265/\375' xxx unzstd 60 62 61 63 # Bail out: 62 64 echo "$me: Cannot find vmlinux." >&2
+1 -1
scripts/tags.sh
··· 245 245 { 246 246 setup_regex exuberant asm c 247 247 all_target_sources | xargs $1 -a \ 248 - -I __initdata,__exitdata,__initconst, \ 248 + -I __initdata,__exitdata,__initconst,__ro_after_init \ 249 249 -I __initdata_memblock \ 250 250 -I __refdata,__attribute,__maybe_unused,__always_unused \ 251 251 -I __acquires,__releases,__deprecated \
+3 -3
tools/build/Build.include
··· 63 63 $(fixdep) $(depfile) $@ '$(make-cmd)' > $(dot-target).tmp; \ 64 64 rm -f $(depfile); \ 65 65 mv -f $(dot-target).tmp $(dot-target).cmd, \ 66 - printf '\# cannot find fixdep (%s)\n' $(fixdep) > $(dot-target).cmd; \ 67 - printf '\# using basic dep data\n\n' >> $(dot-target).cmd; \ 66 + printf '$(pound) cannot find fixdep (%s)\n' $(fixdep) > $(dot-target).cmd; \ 67 + printf '$(pound) using basic dep data\n\n' >> $(dot-target).cmd; \ 68 68 cat $(depfile) >> $(dot-target).cmd; \ 69 69 printf '\n%s\n' 'cmd_$@ := $(make-cmd)' >> $(dot-target).cmd) 70 70 ··· 98 98 ### 99 99 ## HOSTCC C flags 100 100 101 - host_c_flags = -Wp,-MD,$(depfile) -Wp,-MT,$@ $(CHOSTFLAGS) -D"BUILD_STR(s)=\#s" $(CHOSTFLAGS_$(basetarget).o) $(CHOSTFLAGS_$(obj)) 101 + host_c_flags = -Wp,-MD,$(depfile) -Wp,-MT,$@ $(HOSTCFLAGS) -D"BUILD_STR(s)=\#s" $(HOSTCFLAGS_$(basetarget).o) $(HOSTCFLAGS_$(obj))
+1 -1
tools/build/Makefile
··· 43 43 $(Q)$(MAKE) $(build)=fixdep 44 44 45 45 $(OUTPUT)fixdep: $(OUTPUT)fixdep-in.o 46 - $(QUIET_LINK)$(HOSTCC) $(LDFLAGS) -o $@ $< 46 + $(QUIET_LINK)$(HOSTCC) $(HOSTLDFLAGS) -o $@ $< 47 47 48 48 FORCE: 49 49
+1 -1
tools/perf/pmu-events/Build
··· 1 1 hostprogs := jevents 2 2 3 3 jevents-y += json.o jsmn.o jevents.o 4 - CHOSTFLAGS_jevents.o = -I$(srctree)/tools/include 4 + HOSTCFLAGS_jevents.o = -I$(srctree)/tools/include 5 5 pmu-events-y += pmu-events.o 6 6 JDIR = pmu-events/arch/$(SRCARCH) 7 7 JSON = $(shell [ -d $(JDIR) ] && \