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