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