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