# $Id: Makefile.kmk $ ## @file # Sub-makefile for the EFI VfrCompile build tool. # # # Copyright (C) 2013 Oracle Corporation # # This file is part of VirtualBox Open Source Edition (OSE), as # available from http://www.virtualbox.org. This file is free software; # you can redistribute it and/or modify it under the terms of the GNU # General Public License (GPL) as published by the Free Software # Foundation, in version 2 as it comes in the "COPYING" file of the # VirtualBox OSE distribution. VirtualBox OSE is distributed in the # hope that it will be useful, but WITHOUT ANY WARRANTY of any kind. # # The contents of this file may alternatively be used under the terms # of the Common Development and Distribution License Version 1.0 # (CDDL) only, as it comes in the "COPYING.CDDL" file of the # VirtualBox OSE distribution, in which case the provisions of the # CDDL are applicable instead of those of the GPL. # # You may elect to license modified versions of this file under the # terms and conditions of either the GPL or the CDDL or both. # SUB_DEPTH = ../../../../../../../../.. include $(KBUILD_PATH)/subheader.kmk BLDPROGS += VfrCompile VfrCompile_TEMPLATE = VBoxEfiBldProg VfrCompile_DEFS = PCCTS_USE_NAMESPACE_STD __USE_PROTOS VfrCompile_INCS = \ . \ Pccts/h \ $(VfrCompile_0_OUTDIR) VfrCompile_SOURCES = \ VfrCompiler.cpp \ VfrFormPkg.cpp \ VfrError.cpp \ VfrUtilityLib.cpp \ Pccts/h/AParser.cpp \ Pccts/h/DLexerBase.cpp \ Pccts/h/ATokenBuffer.cpp \ $(VfrCompile_0_OUTDIR)/VfrSyntax.cpp \ $(VfrCompile_0_OUTDIR)/EfiVfrParser.cpp \ $(VfrCompile_0_OUTDIR)/VfrLexer.cpp VfrCompile_INTERMEDIATES = \ $(VfrCompile_0_OUTDIR)/VfrTokens.h \ $(VfrCompile_0_OUTDIR)/VfrLexer.h \ $(VfrCompile_0_OUTDIR)/EfiVfrParser.h VfrCompile_CLEAN = \ $(VfrCompile_0_OUTDIR)/VfrSyntax.cpp \ $(VfrCompile_0_OUTDIR)/EfiVfrParser.cpp \ $(VfrCompile_0_OUTDIR)/VfrLexer.cpp $$(VfrCompile_0_OUTDIR)/VfrSyntax.cpp \ + $$(VfrCompile_0_OUTDIR)/EfiVfrParser.cpp \ + $$(VfrCompile_0_OUTDIR)/EfiVfrParser.h \ + $$(VfrCompile_0_OUTDIR)/VfrParser.dlg \ + $$(VfrCompile_0_OUTDIR)/VfrTokens.h: \ $$(antlr_1_TARGET) \ $(PATH_SUB_CURRENT)/VfrSyntax.g $(antlr_1_TARGET) -CC -e3 -ck 3 -k 2 \ -fl $(dir $@)/VfrParser.dlg \ -ft $(dir $@)/VfrTokens.h \ -o $(dir $@) \ $(VfrCompile_DEFPATH)/VfrSyntax.g $$(VfrCompile_0_OUTDIR)/VfrLexer.cpp \ + $$(VfrCompile_0_OUTDIR)/VfrLexer.h: \ $$(dlg_1_TARGET) \ $$(VfrCompile_0_OUTDIR)/VfrParser.dlg $(dlg_1_TARGET) -C2 -i -CC -cl VfrLexer \ -o $(dir $@) \ $(VfrCompile_0_OUTDIR)/VfrParser.dlg # # Antlr parser generator from the Purdue Compiler Construction Tool Set. # BLDPROGS += antlr antlr_TEMPLATE = VBoxEfiBldProg antlr_DEFS = \ USER_ZZSYN \ ZZLEXBUFSIZE=65536 \ __USE_PROTOS antlr_INCS = \ Pccts/antlr \ Pccts/support/set \ Pccts/h antlr_SOURCES = \ Pccts/antlr/antlr.c \ Pccts/antlr/bits.c \ Pccts/antlr/build.c \ Pccts/antlr/egman.c \ Pccts/antlr/err.c \ Pccts/antlr/fcache.c \ Pccts/antlr/fset.c \ Pccts/antlr/fset2.c \ Pccts/antlr/gen.c \ Pccts/antlr/globals.c \ Pccts/antlr/hash.c \ Pccts/antlr/lex.c \ Pccts/antlr/main.c \ Pccts/antlr/misc.c \ Pccts/antlr/mrhoist.c \ Pccts/antlr/pred.c \ Pccts/antlr/scan.c \ Pccts/support/set/set.c # # DFA lexical analyzer generator from the Purdue Compiler Construction Tool Set. # BLDPROGS += dlg dlg_TEMPLATE = VBoxEfiBldProg dlg_DEFS = \ USER_ZZSYN \ ZZLEXBUFSIZE=65536 \ __USE_PROTOS dlg_INCS = \ Pccts/dlg \ Pccts/support/set \ Pccts/h dlg_SOURCES = \ Pccts/dlg/automata.c \ Pccts/dlg/dlg_a.c \ Pccts/dlg/dlg_p.c \ Pccts/dlg/err.c \ Pccts/dlg/main.c \ Pccts/dlg/output.c \ Pccts/dlg/relabel.c \ Pccts/dlg/support.c \ Pccts/support/set/set.c include $(FILE_KBUILD_SUB_FOOTER)