1 # SPDX-License-Identifier: GPL-2.0 1 # SPDX-License-Identifier: GPL-2.0 2 2 3 hostprogs-always-y += genksyms !! 3 hostprogs := genksyms >> 4 always-y := $(hostprogs) 4 5 5 genksyms-objs := genksyms.o parse.tab.o lex. 6 genksyms-objs := genksyms.o parse.tab.o lex.lex.o 6 7 7 # FIXME: fix the ambiguous grammar in parse.y 8 # FIXME: fix the ambiguous grammar in parse.y and delete this hack 8 # 9 # 9 # Suppress shift/reduce, reduce/reduce conflic 10 # Suppress shift/reduce, reduce/reduce conflicts warnings 10 # unless W=1 is specified. 11 # unless W=1 is specified. 11 # 12 # 12 # Just in case, run "$(YACC) --version" withou 13 # Just in case, run "$(YACC) --version" without suppressing stderr 13 # so that 'bison: not found' will be displayed 14 # so that 'bison: not found' will be displayed if it is missing. 14 ifeq ($(findstring 1,$(KBUILD_EXTRA_WARN)),) 15 ifeq ($(findstring 1,$(KBUILD_EXTRA_WARN)),) 15 16 16 quiet_cmd_bison_no_warn = $(quiet_cmd_bison) 17 quiet_cmd_bison_no_warn = $(quiet_cmd_bison) 17 cmd_bison_no_warn = $(YACC) --version >/ 18 cmd_bison_no_warn = $(YACC) --version >/dev/null; \ 18 $(cmd_bison) 2>/dev/ 19 $(cmd_bison) 2>/dev/null 19 20 20 $(obj)/pars%.tab.c $(obj)/pars%.tab.h: $(src)/ 21 $(obj)/pars%.tab.c $(obj)/pars%.tab.h: $(src)/pars%.y FORCE 21 $(call if_changed,bison_no_warn) 22 $(call if_changed,bison_no_warn) 22 23 23 endif 24 endif 24 25 25 # -I needed for generated C source to include !! 26 # -I needed for generated C source (shipped source) 26 HOSTCFLAGS_parse.tab.o := -I $(src) !! 27 HOSTCFLAGS_parse.tab.o := -I $(srctree)/$(src) 27 HOSTCFLAGS_lex.lex.o := -I $(src) !! 28 HOSTCFLAGS_lex.lex.o := -I $(srctree)/$(src) 28 29 29 # dependencies on generated files need to be l 30 # dependencies on generated files need to be listed explicitly 30 $(obj)/lex.lex.o: $(obj)/parse.tab.h 31 $(obj)/lex.lex.o: $(obj)/parse.tab.h
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.