forked from mirrors/linux
		
	kbuild: add implicit rules for parser generation
Cc: David Gibson <david@gibson.dropbear.id.au> Cc: Michal Marek <mmarek@suse.cz> Signed-off-by: Arnaud Lacombe <lacombar@gmail.com>
This commit is contained in:
		
							parent
							
								
									e0318d85be
								
							
						
					
					
						commit
						7373f4f83c
					
				
					 1 changed files with 38 additions and 0 deletions
				
			
		| 
						 | 
					@ -160,6 +160,44 @@ ld_flags       = $(LDFLAGS) $(ldflags-y)
 | 
				
			||||||
modname-multi = $(sort $(foreach m,$(multi-used),\
 | 
					modname-multi = $(sort $(foreach m,$(multi-used),\
 | 
				
			||||||
		$(if $(filter $(subst $(obj)/,,$*.o), $($(m:.o=-objs)) $($(m:.o=-y))),$(m:.o=))))
 | 
							$(if $(filter $(subst $(obj)/,,$*.o), $($(m:.o=-objs)) $($(m:.o=-y))),$(m:.o=))))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					ifdef REGENERATE_PARSERS
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# GPERF
 | 
				
			||||||
 | 
					# ---------------------------------------------------------------------------
 | 
				
			||||||
 | 
					quiet_cmd_gperf = GPERF $@
 | 
				
			||||||
 | 
					      cmd_gperf = gperf -t --output-file $@ -a -C -E -g -k 1,3,$$ -p -t $<
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					$(src)/%.hash.c_shipped: $(src)/%.gperf
 | 
				
			||||||
 | 
						$(call cmd,gperf)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# LEX
 | 
				
			||||||
 | 
					# ---------------------------------------------------------------------------
 | 
				
			||||||
 | 
					LEX_PREFIX = $(if $(LEX_PREFIX_${baseprereq}),$(LEX_PREFIX_${baseprereq}),yy)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					quiet_cmd_flex = LEX     $@
 | 
				
			||||||
 | 
					      cmd_flex = flex -o$@ -L -P $(LEX_PREFIX) $<
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					$(src)/%.lex.c_shipped: $(src)/%.l
 | 
				
			||||||
 | 
						$(call cmd,flex)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# YACC
 | 
				
			||||||
 | 
					# ---------------------------------------------------------------------------
 | 
				
			||||||
 | 
					YACC_PREFIX = $(if $(YACC_PREFIX_${baseprereq}),$(YACC_PREFIX_${baseprereq}),yy)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					quiet_cmd_bison = YACC    $@
 | 
				
			||||||
 | 
					      cmd_bison = bison -o$@ -t -l -p $(YACC_PREFIX) $<
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					$(src)/%.tab.c_shipped: $(src)/%.y
 | 
				
			||||||
 | 
						$(call cmd,bison)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					quiet_cmd_bison_h = YACC    $@
 | 
				
			||||||
 | 
					      cmd_bison_h = bison -o/dev/null --defines=$@ -t -l -p $(YACC_PREFIX) $<
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					$(src)/%.tab.h_shipped: $(src)/%.y
 | 
				
			||||||
 | 
						$(call cmd,bison_h)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Shipped files
 | 
					# Shipped files
 | 
				
			||||||
# ===========================================================================
 | 
					# ===========================================================================
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in a new issue