diff options
| author | Linus Torvalds <torvalds@linux-foundation.org> | 2019-01-06 19:33:10 -0500 |
|---|---|---|
| committer | Linus Torvalds <torvalds@linux-foundation.org> | 2019-01-06 19:33:10 -0500 |
| commit | 85e1ffbd42f664965dc05f6e9851c06379f27fb2 (patch) | |
| tree | 125d9a6ce2f74873a0d72c6c13903f11ab7fd51b /scripts | |
| parent | ac5eed2b41776b05cf03aac761d3bb5e64eea24c (diff) | |
| parent | d86271af64602e7c86c003b27f27c7216706ff96 (diff) | |
Merge tag 'kbuild-v4.21-3' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild
Pull more Kbuild updates from Masahiro Yamada:
- improve boolinit.cocci and use_after_iter.cocci semantic patches
- fix alignment for kallsyms
- move 'asm goto' compiler test to Kconfig and clean up jump_label
CONFIG option
- generate asm-generic wrappers automatically if arch does not
implement mandatory UAPI headers
- remove redundant generic-y defines
- misc cleanups
* tag 'kbuild-v4.21-3' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild:
kconfig: rename generated .*conf-cfg to *conf-cfg
kbuild: remove unnecessary stubs for archheader and archscripts
kbuild: use assignment instead of define ... endef for filechk_* rules
arch: remove redundant UAPI generic-y defines
kbuild: generate asm-generic wrappers if mandatory headers are missing
arch: remove stale comments "UAPI Header export list"
riscv: remove redundant kernel-space generic-y
kbuild: change filechk to surround the given command with { }
kbuild: remove redundant target cleaning on failure
kbuild: clean up rule_dtc_dt_yaml
kbuild: remove UIMAGE_IN and UIMAGE_OUT
jump_label: move 'asm goto' support test to Kconfig
kallsyms: lower alignment on ARM
scripts: coccinelle: boolinit: drop warnings on named constants
scripts: coccinelle: check for redeclaration
kconfig: remove unused "file" field of yylval union
nds32: remove redundant kernel-space generic-y
nios2: remove unneeded HAS_DMA define
Diffstat (limited to 'scripts')
| -rw-r--r-- | scripts/Kbuild.include | 10 | ||||
| -rw-r--r-- | scripts/Makefile.asm-generic | 4 | ||||
| -rw-r--r-- | scripts/Makefile.headersinst | 7 | ||||
| -rw-r--r-- | scripts/Makefile.lib | 34 | ||||
| -rw-r--r-- | scripts/coccinelle/iterators/use_after_iter.cocci | 3 | ||||
| -rw-r--r-- | scripts/coccinelle/misc/boolinit.cocci | 5 | ||||
| -rwxr-xr-x | scripts/gcc-goto.sh | 2 | ||||
| -rw-r--r-- | scripts/kallsyms.c | 4 | ||||
| -rw-r--r-- | scripts/kconfig/.gitignore | 1 | ||||
| -rw-r--r-- | scripts/kconfig/Makefile | 40 | ||||
| -rw-r--r-- | scripts/kconfig/zconf.y | 1 |
11 files changed, 52 insertions, 59 deletions
diff --git a/scripts/Kbuild.include b/scripts/Kbuild.include index 46bf1a073f5d..525bff667a52 100644 --- a/scripts/Kbuild.include +++ b/scripts/Kbuild.include | |||
| @@ -41,11 +41,11 @@ kecho := $($(quiet)kecho) | |||
| 41 | ### | 41 | ### |
| 42 | # filechk is used to check if the content of a generated file is updated. | 42 | # filechk is used to check if the content of a generated file is updated. |
| 43 | # Sample usage: | 43 | # Sample usage: |
| 44 | # define filechk_sample | 44 | # |
| 45 | # echo $KERNELRELEASE | 45 | # filechk_sample = echo $(KERNELRELEASE) |
| 46 | # endef | 46 | # version.h: FORCE |
| 47 | # version.h : Makefile | ||
| 48 | # $(call filechk,sample) | 47 | # $(call filechk,sample) |
| 48 | # | ||
| 49 | # The rule defined shall write to stdout the content of the new file. | 49 | # The rule defined shall write to stdout the content of the new file. |
| 50 | # The existing file will be compared with the new one. | 50 | # The existing file will be compared with the new one. |
| 51 | # - If no file exist it is created | 51 | # - If no file exist it is created |
| @@ -56,7 +56,7 @@ kecho := $($(quiet)kecho) | |||
| 56 | define filechk | 56 | define filechk |
| 57 | $(Q)set -e; \ | 57 | $(Q)set -e; \ |
| 58 | mkdir -p $(dir $@); \ | 58 | mkdir -p $(dir $@); \ |
| 59 | $(filechk_$(1)) > $@.tmp; \ | 59 | { $(filechk_$(1)); } > $@.tmp; \ |
| 60 | if [ -r $@ ] && cmp -s $@ $@.tmp; then \ | 60 | if [ -r $@ ] && cmp -s $@ $@.tmp; then \ |
| 61 | rm -f $@.tmp; \ | 61 | rm -f $@.tmp; \ |
| 62 | else \ | 62 | else \ |
diff --git a/scripts/Makefile.asm-generic b/scripts/Makefile.asm-generic index 760323e70ebc..a62d2823f6cf 100644 --- a/scripts/Makefile.asm-generic +++ b/scripts/Makefile.asm-generic | |||
| @@ -14,6 +14,10 @@ src := $(subst /generated,,$(obj)) | |||
| 14 | 14 | ||
| 15 | include scripts/Kbuild.include | 15 | include scripts/Kbuild.include |
| 16 | 16 | ||
| 17 | # If arch does not implement mandatory headers, fallback to asm-generic ones. | ||
| 18 | mandatory-y := $(filter-out $(generated-y), $(mandatory-y)) | ||
| 19 | generic-y += $(foreach f, $(mandatory-y), $(if $(wildcard $(srctree)/$(src)/$(f)),,$(f))) | ||
| 20 | |||
| 17 | generic-y := $(addprefix $(obj)/, $(generic-y)) | 21 | generic-y := $(addprefix $(obj)/, $(generic-y)) |
| 18 | generated-y := $(addprefix $(obj)/, $(generated-y)) | 22 | generated-y := $(addprefix $(obj)/, $(generated-y)) |
| 19 | 23 | ||
diff --git a/scripts/Makefile.headersinst b/scripts/Makefile.headersinst index 45927fcddbc0..3d1ebaabd1b6 100644 --- a/scripts/Makefile.headersinst +++ b/scripts/Makefile.headersinst | |||
| @@ -56,13 +56,6 @@ check-file := $(installdir)/.check | |||
| 56 | all-files := $(header-files) $(genhdr-files) | 56 | all-files := $(header-files) $(genhdr-files) |
| 57 | output-files := $(addprefix $(installdir)/, $(all-files)) | 57 | output-files := $(addprefix $(installdir)/, $(all-files)) |
| 58 | 58 | ||
| 59 | ifneq ($(mandatory-y),) | ||
| 60 | missing := $(filter-out $(all-files),$(mandatory-y)) | ||
| 61 | ifneq ($(missing),) | ||
| 62 | $(error Some mandatory headers ($(missing)) are missing in $(obj)) | ||
| 63 | endif | ||
| 64 | endif | ||
| 65 | |||
| 66 | # Work out what needs to be removed | 59 | # Work out what needs to be removed |
| 67 | oldheaders := $(patsubst $(installdir)/%,%,$(wildcard $(installdir)/*.h)) | 60 | oldheaders := $(patsubst $(installdir)/%,%,$(wildcard $(installdir)/*.h)) |
| 68 | unwanted := $(filter-out $(all-files),$(oldheaders)) | 61 | unwanted := $(filter-out $(all-files),$(oldheaders)) |
diff --git a/scripts/Makefile.lib b/scripts/Makefile.lib index 3ceaa2e2a6ce..12b88d09c3a4 100644 --- a/scripts/Makefile.lib +++ b/scripts/Makefile.lib | |||
| @@ -242,8 +242,7 @@ cmd_objcopy = $(OBJCOPY) $(OBJCOPYFLAGS) $(OBJCOPYFLAGS_$(@F)) $< $@ | |||
| 242 | # --------------------------------------------------------------------------- | 242 | # --------------------------------------------------------------------------- |
| 243 | 243 | ||
| 244 | quiet_cmd_gzip = GZIP $@ | 244 | quiet_cmd_gzip = GZIP $@ |
| 245 | cmd_gzip = (cat $(filter-out FORCE,$^) | gzip -n -f -9 > $@) || \ | 245 | cmd_gzip = cat $(filter-out FORCE,$^) | gzip -n -f -9 > $@ |
| 246 | (rm -f $@ ; false) | ||
| 247 | 246 | ||
| 248 | # DTC | 247 | # DTC |
| 249 | # --------------------------------------------------------------------------- | 248 | # --------------------------------------------------------------------------- |
| @@ -305,8 +304,8 @@ quiet_cmd_dtb_check = CHECK $@ | |||
| 305 | cmd_dtb_check = $(DT_CHECKER) -p $(DT_TMP_SCHEMA) $@ ; | 304 | cmd_dtb_check = $(DT_CHECKER) -p $(DT_TMP_SCHEMA) $@ ; |
| 306 | 305 | ||
| 307 | define rule_dtc_dt_yaml | 306 | define rule_dtc_dt_yaml |
| 308 | $(call cmd_and_fixdep,dtc,yaml) \ | 307 | $(call cmd_and_fixdep,dtc,yaml) |
| 309 | $(call echo-cmd,dtb_check) $(cmd_dtb_check) | 308 | $(call cmd,dtb_check) |
| 310 | endef | 309 | endef |
| 311 | 310 | ||
| 312 | $(obj)/%.dt.yaml: $(src)/%.dts $(DTC) $(DT_TMP_SCHEMA) FORCE | 311 | $(obj)/%.dt.yaml: $(src)/%.dts $(DTC) $(DT_TMP_SCHEMA) FORCE |
| @@ -336,26 +335,22 @@ printf "%08x\n" $$dec_size | \ | |||
| 336 | 335 | ||
| 337 | quiet_cmd_bzip2 = BZIP2 $@ | 336 | quiet_cmd_bzip2 = BZIP2 $@ |
| 338 | cmd_bzip2 = (cat $(filter-out FORCE,$^) | \ | 337 | cmd_bzip2 = (cat $(filter-out FORCE,$^) | \ |
| 339 | bzip2 -9 && $(call size_append, $(filter-out FORCE,$^))) > $@ || \ | 338 | bzip2 -9 && $(call size_append, $(filter-out FORCE,$^))) > $@ |
| 340 | (rm -f $@ ; false) | ||
| 341 | 339 | ||
| 342 | # Lzma | 340 | # Lzma |
| 343 | # --------------------------------------------------------------------------- | 341 | # --------------------------------------------------------------------------- |
| 344 | 342 | ||
| 345 | quiet_cmd_lzma = LZMA $@ | 343 | quiet_cmd_lzma = LZMA $@ |
| 346 | cmd_lzma = (cat $(filter-out FORCE,$^) | \ | 344 | cmd_lzma = (cat $(filter-out FORCE,$^) | \ |
| 347 | lzma -9 && $(call size_append, $(filter-out FORCE,$^))) > $@ || \ | 345 | lzma -9 && $(call size_append, $(filter-out FORCE,$^))) > $@ |
| 348 | (rm -f $@ ; false) | ||
| 349 | 346 | ||
| 350 | quiet_cmd_lzo = LZO $@ | 347 | quiet_cmd_lzo = LZO $@ |
| 351 | cmd_lzo = (cat $(filter-out FORCE,$^) | \ | 348 | cmd_lzo = (cat $(filter-out FORCE,$^) | \ |
| 352 | lzop -9 && $(call size_append, $(filter-out FORCE,$^))) > $@ || \ | 349 | lzop -9 && $(call size_append, $(filter-out FORCE,$^))) > $@ |
| 353 | (rm -f $@ ; false) | ||
| 354 | 350 | ||
| 355 | quiet_cmd_lz4 = LZ4 $@ | 351 | quiet_cmd_lz4 = LZ4 $@ |
| 356 | cmd_lz4 = (cat $(filter-out FORCE,$^) | \ | 352 | cmd_lz4 = (cat $(filter-out FORCE,$^) | \ |
| 357 | lz4c -l -c1 stdin stdout && $(call size_append, $(filter-out FORCE,$^))) > $@ || \ | 353 | lz4c -l -c1 stdin stdout && $(call size_append, $(filter-out FORCE,$^))) > $@ |
| 358 | (rm -f $@ ; false) | ||
| 359 | 354 | ||
| 360 | # U-Boot mkimage | 355 | # U-Boot mkimage |
| 361 | # --------------------------------------------------------------------------- | 356 | # --------------------------------------------------------------------------- |
| @@ -371,15 +366,13 @@ UIMAGE_TYPE ?= kernel | |||
| 371 | UIMAGE_LOADADDR ?= arch_must_set_this | 366 | UIMAGE_LOADADDR ?= arch_must_set_this |
| 372 | UIMAGE_ENTRYADDR ?= $(UIMAGE_LOADADDR) | 367 | UIMAGE_ENTRYADDR ?= $(UIMAGE_LOADADDR) |
| 373 | UIMAGE_NAME ?= 'Linux-$(KERNELRELEASE)' | 368 | UIMAGE_NAME ?= 'Linux-$(KERNELRELEASE)' |
| 374 | UIMAGE_IN ?= $< | ||
| 375 | UIMAGE_OUT ?= $@ | ||
| 376 | 369 | ||
| 377 | quiet_cmd_uimage = UIMAGE $(UIMAGE_OUT) | 370 | quiet_cmd_uimage = UIMAGE $@ |
| 378 | cmd_uimage = $(CONFIG_SHELL) $(MKIMAGE) -A $(UIMAGE_ARCH) -O linux \ | 371 | cmd_uimage = $(CONFIG_SHELL) $(MKIMAGE) -A $(UIMAGE_ARCH) -O linux \ |
| 379 | -C $(UIMAGE_COMPRESSION) $(UIMAGE_OPTS-y) \ | 372 | -C $(UIMAGE_COMPRESSION) $(UIMAGE_OPTS-y) \ |
| 380 | -T $(UIMAGE_TYPE) \ | 373 | -T $(UIMAGE_TYPE) \ |
| 381 | -a $(UIMAGE_LOADADDR) -e $(UIMAGE_ENTRYADDR) \ | 374 | -a $(UIMAGE_LOADADDR) -e $(UIMAGE_ENTRYADDR) \ |
| 382 | -n $(UIMAGE_NAME) -d $(UIMAGE_IN) $(UIMAGE_OUT) | 375 | -n $(UIMAGE_NAME) -d $< $@ |
| 383 | 376 | ||
| 384 | # XZ | 377 | # XZ |
| 385 | # --------------------------------------------------------------------------- | 378 | # --------------------------------------------------------------------------- |
| @@ -401,13 +394,11 @@ quiet_cmd_uimage = UIMAGE $(UIMAGE_OUT) | |||
| 401 | quiet_cmd_xzkern = XZKERN $@ | 394 | quiet_cmd_xzkern = XZKERN $@ |
| 402 | cmd_xzkern = (cat $(filter-out FORCE,$^) | \ | 395 | cmd_xzkern = (cat $(filter-out FORCE,$^) | \ |
| 403 | sh $(srctree)/scripts/xz_wrap.sh && \ | 396 | sh $(srctree)/scripts/xz_wrap.sh && \ |
| 404 | $(call size_append, $(filter-out FORCE,$^))) > $@ || \ | 397 | $(call size_append, $(filter-out FORCE,$^))) > $@ |
| 405 | (rm -f $@ ; false) | ||
| 406 | 398 | ||
| 407 | quiet_cmd_xzmisc = XZMISC $@ | 399 | quiet_cmd_xzmisc = XZMISC $@ |
| 408 | cmd_xzmisc = (cat $(filter-out FORCE,$^) | \ | 400 | cmd_xzmisc = (cat $(filter-out FORCE,$^) | \ |
| 409 | xz --check=crc32 --lzma2=dict=1MiB) > $@ || \ | 401 | xz --check=crc32 --lzma2=dict=1MiB) > $@ |
| 410 | (rm -f $@ ; false) | ||
| 411 | 402 | ||
| 412 | # ASM offsets | 403 | # ASM offsets |
| 413 | # --------------------------------------------------------------------------- | 404 | # --------------------------------------------------------------------------- |
| @@ -426,7 +417,6 @@ endef | |||
| 426 | # Use filechk to avoid rebuilds when a header changes, but the resulting file | 417 | # Use filechk to avoid rebuilds when a header changes, but the resulting file |
| 427 | # does not | 418 | # does not |
| 428 | define filechk_offsets | 419 | define filechk_offsets |
| 429 | ( \ | ||
| 430 | echo "#ifndef $2"; \ | 420 | echo "#ifndef $2"; \ |
| 431 | echo "#define $2"; \ | 421 | echo "#define $2"; \ |
| 432 | echo "/*"; \ | 422 | echo "/*"; \ |
| @@ -437,5 +427,5 @@ define filechk_offsets | |||
| 437 | echo ""; \ | 427 | echo ""; \ |
| 438 | sed -ne $(sed-offsets) < $<; \ | 428 | sed -ne $(sed-offsets) < $<; \ |
| 439 | echo ""; \ | 429 | echo ""; \ |
| 440 | echo "#endif" ) | 430 | echo "#endif" |
| 441 | endef | 431 | endef |
diff --git a/scripts/coccinelle/iterators/use_after_iter.cocci b/scripts/coccinelle/iterators/use_after_iter.cocci index ce8cc9c006e5..66a1140474c8 100644 --- a/scripts/coccinelle/iterators/use_after_iter.cocci +++ b/scripts/coccinelle/iterators/use_after_iter.cocci | |||
| @@ -35,6 +35,7 @@ iterator name hlist_for_each_entry_from; | |||
| 35 | iterator name hlist_for_each_entry_safe; | 35 | iterator name hlist_for_each_entry_safe; |
| 36 | statement S; | 36 | statement S; |
| 37 | position p1,p2; | 37 | position p1,p2; |
| 38 | type T; | ||
| 38 | @@ | 39 | @@ |
| 39 | 40 | ||
| 40 | ( | 41 | ( |
| @@ -125,6 +126,8 @@ sizeof(<+...c...+>) | |||
| 125 | | | 126 | | |
| 126 | &c->member | 127 | &c->member |
| 127 | | | 128 | | |
| 129 | T c; | ||
| 130 | | | ||
| 128 | c = E | 131 | c = E |
| 129 | | | 132 | | |
| 130 | *c@p2 | 133 | *c@p2 |
diff --git a/scripts/coccinelle/misc/boolinit.cocci b/scripts/coccinelle/misc/boolinit.cocci index b0584a33c921..aabb581fab5c 100644 --- a/scripts/coccinelle/misc/boolinit.cocci +++ b/scripts/coccinelle/misc/boolinit.cocci | |||
| @@ -136,9 +136,14 @@ position p1; | |||
| 136 | @r4 depends on !patch@ | 136 | @r4 depends on !patch@ |
| 137 | bool b; | 137 | bool b; |
| 138 | position p2; | 138 | position p2; |
| 139 | identifier i; | ||
| 139 | constant c != {0,1}; | 140 | constant c != {0,1}; |
| 140 | @@ | 141 | @@ |
| 142 | ( | ||
| 143 | b = i | ||
| 144 | | | ||
| 141 | *b@p2 = c | 145 | *b@p2 = c |
| 146 | ) | ||
| 142 | 147 | ||
| 143 | @script:python depends on org@ | 148 | @script:python depends on org@ |
| 144 | p << r1.p; | 149 | p << r1.p; |
diff --git a/scripts/gcc-goto.sh b/scripts/gcc-goto.sh index 083c526073ef..8b980fb2270a 100755 --- a/scripts/gcc-goto.sh +++ b/scripts/gcc-goto.sh | |||
| @@ -3,7 +3,7 @@ | |||
| 3 | # Test for gcc 'asm goto' support | 3 | # Test for gcc 'asm goto' support |
| 4 | # Copyright (C) 2010, Jason Baron <jbaron@redhat.com> | 4 | # Copyright (C) 2010, Jason Baron <jbaron@redhat.com> |
| 5 | 5 | ||
| 6 | cat << "END" | $@ -x c - -c -o /dev/null >/dev/null 2>&1 && echo "y" | 6 | cat << "END" | $@ -x c - -fno-PIE -c -o /dev/null |
| 7 | int main(void) | 7 | int main(void) |
| 8 | { | 8 | { |
| 9 | #if defined(__arm__) || defined(__aarch64__) | 9 | #if defined(__arm__) || defined(__aarch64__) |
diff --git a/scripts/kallsyms.c b/scripts/kallsyms.c index 109a1af7e444..77cebad0474e 100644 --- a/scripts/kallsyms.c +++ b/scripts/kallsyms.c | |||
| @@ -334,10 +334,10 @@ static void write_src(void) | |||
| 334 | printf("#include <asm/types.h>\n"); | 334 | printf("#include <asm/types.h>\n"); |
| 335 | printf("#if BITS_PER_LONG == 64\n"); | 335 | printf("#if BITS_PER_LONG == 64\n"); |
| 336 | printf("#define PTR .quad\n"); | 336 | printf("#define PTR .quad\n"); |
| 337 | printf("#define ALGN .align 8\n"); | 337 | printf("#define ALGN .balign 8\n"); |
| 338 | printf("#else\n"); | 338 | printf("#else\n"); |
| 339 | printf("#define PTR .long\n"); | 339 | printf("#define PTR .long\n"); |
| 340 | printf("#define ALGN .align 4\n"); | 340 | printf("#define ALGN .balign 4\n"); |
| 341 | printf("#endif\n"); | 341 | printf("#endif\n"); |
| 342 | 342 | ||
| 343 | printf("\t.section .rodata, \"a\"\n"); | 343 | printf("\t.section .rodata, \"a\"\n"); |
diff --git a/scripts/kconfig/.gitignore b/scripts/kconfig/.gitignore index 0aabc1d6a182..b5bf92f66d11 100644 --- a/scripts/kconfig/.gitignore +++ b/scripts/kconfig/.gitignore | |||
| @@ -2,6 +2,7 @@ | |||
| 2 | # Generated files | 2 | # Generated files |
| 3 | # | 3 | # |
| 4 | *.moc | 4 | *.moc |
| 5 | *conf-cfg | ||
| 5 | 6 | ||
| 6 | # | 7 | # |
| 7 | # configuration programs | 8 | # configuration programs |
diff --git a/scripts/kconfig/Makefile b/scripts/kconfig/Makefile index ec204fa54c9a..c05ab001b54c 100644 --- a/scripts/kconfig/Makefile +++ b/scripts/kconfig/Makefile | |||
| @@ -157,55 +157,53 @@ conf-objs := conf.o $(common-objs) | |||
| 157 | hostprogs-y += nconf | 157 | hostprogs-y += nconf |
| 158 | nconf-objs := nconf.o nconf.gui.o $(common-objs) | 158 | nconf-objs := nconf.o nconf.gui.o $(common-objs) |
| 159 | 159 | ||
| 160 | HOSTLDLIBS_nconf = $(shell . $(obj)/.nconf-cfg && echo $$libs) | 160 | HOSTLDLIBS_nconf = $(shell . $(obj)/nconf-cfg && echo $$libs) |
| 161 | HOSTCFLAGS_nconf.o = $(shell . $(obj)/.nconf-cfg && echo $$cflags) | 161 | HOSTCFLAGS_nconf.o = $(shell . $(obj)/nconf-cfg && echo $$cflags) |
| 162 | HOSTCFLAGS_nconf.gui.o = $(shell . $(obj)/.nconf-cfg && echo $$cflags) | 162 | HOSTCFLAGS_nconf.gui.o = $(shell . $(obj)/nconf-cfg && echo $$cflags) |
| 163 | 163 | ||
| 164 | $(obj)/nconf.o $(obj)/nconf.gui.o: $(obj)/.nconf-cfg | 164 | $(obj)/nconf.o $(obj)/nconf.gui.o: $(obj)/nconf-cfg |
| 165 | 165 | ||
| 166 | # mconf: Used for the menuconfig target based on lxdialog | 166 | # mconf: Used for the menuconfig target based on lxdialog |
| 167 | hostprogs-y += mconf | 167 | hostprogs-y += mconf |
| 168 | lxdialog := checklist.o inputbox.o menubox.o textbox.o util.o yesno.o | 168 | lxdialog := checklist.o inputbox.o menubox.o textbox.o util.o yesno.o |
| 169 | mconf-objs := mconf.o $(addprefix lxdialog/, $(lxdialog)) $(common-objs) | 169 | mconf-objs := mconf.o $(addprefix lxdialog/, $(lxdialog)) $(common-objs) |
| 170 | 170 | ||
| 171 | HOSTLDLIBS_mconf = $(shell . $(obj)/.mconf-cfg && echo $$libs) | 171 | HOSTLDLIBS_mconf = $(shell . $(obj)/mconf-cfg && echo $$libs) |
| 172 | $(foreach f, mconf.o $(lxdialog), \ | 172 | $(foreach f, mconf.o $(lxdialog), \ |
| 173 | $(eval HOSTCFLAGS_$f = $$(shell . $(obj)/.mconf-cfg && echo $$$$cflags))) | 173 | $(eval HOSTCFLAGS_$f = $$(shell . $(obj)/mconf-cfg && echo $$$$cflags))) |
| 174 | 174 | ||
| 175 | $(obj)/mconf.o: $(obj)/.mconf-cfg | 175 | $(obj)/mconf.o: $(obj)/mconf-cfg |
| 176 | $(addprefix $(obj)/lxdialog/, $(lxdialog)): $(obj)/.mconf-cfg | 176 | $(addprefix $(obj)/lxdialog/, $(lxdialog)): $(obj)/mconf-cfg |
| 177 | 177 | ||
| 178 | # qconf: Used for the xconfig target based on Qt | 178 | # qconf: Used for the xconfig target based on Qt |
| 179 | hostprogs-y += qconf | 179 | hostprogs-y += qconf |
| 180 | qconf-cxxobjs := qconf.o | 180 | qconf-cxxobjs := qconf.o |
| 181 | qconf-objs := images.o $(common-objs) | 181 | qconf-objs := images.o $(common-objs) |
| 182 | 182 | ||
| 183 | HOSTLDLIBS_qconf = $(shell . $(obj)/.qconf-cfg && echo $$libs) | 183 | HOSTLDLIBS_qconf = $(shell . $(obj)/qconf-cfg && echo $$libs) |
| 184 | HOSTCXXFLAGS_qconf.o = $(shell . $(obj)/.qconf-cfg && echo $$cflags) | 184 | HOSTCXXFLAGS_qconf.o = $(shell . $(obj)/qconf-cfg && echo $$cflags) |
| 185 | 185 | ||
| 186 | $(obj)/qconf.o: $(obj)/.qconf-cfg $(obj)/qconf.moc | 186 | $(obj)/qconf.o: $(obj)/qconf-cfg $(obj)/qconf.moc |
| 187 | 187 | ||
| 188 | quiet_cmd_moc = MOC $@ | 188 | quiet_cmd_moc = MOC $@ |
| 189 | cmd_moc = $(shell . $(obj)/.qconf-cfg && echo $$moc) -i $< -o $@ | 189 | cmd_moc = $(shell . $(obj)/qconf-cfg && echo $$moc) -i $< -o $@ |
| 190 | 190 | ||
| 191 | $(obj)/%.moc: $(src)/%.h $(obj)/.qconf-cfg | 191 | $(obj)/%.moc: $(src)/%.h $(obj)/qconf-cfg |
| 192 | $(call cmd,moc) | 192 | $(call cmd,moc) |
| 193 | 193 | ||
| 194 | # gconf: Used for the gconfig target based on GTK+ | 194 | # gconf: Used for the gconfig target based on GTK+ |
| 195 | hostprogs-y += gconf | 195 | hostprogs-y += gconf |
| 196 | gconf-objs := gconf.o images.o $(common-objs) | 196 | gconf-objs := gconf.o images.o $(common-objs) |
| 197 | 197 | ||
| 198 | HOSTLDLIBS_gconf = $(shell . $(obj)/.gconf-cfg && echo $$libs) | 198 | HOSTLDLIBS_gconf = $(shell . $(obj)/gconf-cfg && echo $$libs) |
| 199 | HOSTCFLAGS_gconf.o = $(shell . $(obj)/.gconf-cfg && echo $$cflags) | 199 | HOSTCFLAGS_gconf.o = $(shell . $(obj)/gconf-cfg && echo $$cflags) |
| 200 | 200 | ||
| 201 | $(obj)/gconf.o: $(obj)/.gconf-cfg | 201 | $(obj)/gconf.o: $(obj)/gconf-cfg |
| 202 | 202 | ||
| 203 | # check if necessary packages are available, and configure build flags | 203 | # check if necessary packages are available, and configure build flags |
| 204 | define filechk_conf_cfg | 204 | filechk_conf_cfg = $(CONFIG_SHELL) $< |
| 205 | $(CONFIG_SHELL) $< | ||
| 206 | endef | ||
| 207 | 205 | ||
| 208 | $(obj)/.%conf-cfg: $(src)/%conf-cfg.sh FORCE | 206 | $(obj)/%conf-cfg: $(src)/%conf-cfg.sh FORCE |
| 209 | $(call filechk,conf_cfg) | 207 | $(call filechk,conf_cfg) |
| 210 | 208 | ||
| 211 | clean-files += .*conf-cfg | 209 | clean-files += conf-cfg |
diff --git a/scripts/kconfig/zconf.y b/scripts/kconfig/zconf.y index 69409abc7dc2..60936c76865b 100644 --- a/scripts/kconfig/zconf.y +++ b/scripts/kconfig/zconf.y | |||
| @@ -35,7 +35,6 @@ static struct menu *current_menu, *current_entry; | |||
| 35 | %union | 35 | %union |
| 36 | { | 36 | { |
| 37 | char *string; | 37 | char *string; |
| 38 | struct file *file; | ||
| 39 | struct symbol *symbol; | 38 | struct symbol *symbol; |
| 40 | struct expr *expr; | 39 | struct expr *expr; |
| 41 | struct menu *menu; | 40 | struct menu *menu; |
