| ## @file | |
| # GNU/Linux makefile for 'VfrCompile' module build. | |
| # | |
| # Copyright (c) 2008 - 2016, Intel Corporation. All rights reserved.<BR> | |
| # This program and the accompanying materials | |
| # are licensed and made available under the terms and conditions of the BSD License | |
| # which accompanies this distribution. The full text of the license may be found at | |
| # http://opensource.org/licenses/bsd-license.php | |
| # | |
| # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, | |
| # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. | |
| # | |
| HOST_ARCH ?= IA32 | |
| MAKEROOT ?= .. | |
| APPNAME = VfrCompile | |
| LIBS = -lCommon | |
| TOOL_INCLUDE = -I Pccts/h | |
| #OBJECTS = VfrSyntax.o VfrServices.o DLGLexer.o EfiVfrParser.o ATokenBuffer.o DLexerBase.o AParser.o | |
| OBJECTS = AParser.o DLexerBase.o ATokenBuffer.o EfiVfrParser.o VfrLexer.o VfrSyntax.o \ | |
| VfrFormPkg.o VfrError.o VfrUtilityLib.o VfrCompiler.o | |
| VFR_CPPFLAGS = -DPCCTS_USE_NAMESPACE_STD $(BUILD_CPPFLAGS) | |
| LINKER = $(BUILD_CXX) | |
| EXTRA_CLEAN_OBJECTS = EfiVfrParser.cpp EfiVfrParser.h VfrParser.dlg VfrTokens.h VfrLexer.cpp VfrLexer.h VfrSyntax.cpp tokens.h | |
| MAKEROOT ?= ../.. | |
| include $(MAKEROOT)/Makefiles/header.makefile | |
| APPLICATION = $(MAKEROOT)/bin/$(APPNAME) | |
| .PHONY:all | |
| all: $(MAKEROOT)/bin $(APPLICATION) | |
| $(APPLICATION): $(OBJECTS) | |
| $(LINKER) -o $(APPLICATION) $(LFLAGS) $(OBJECTS) -L$(MAKEROOT)/libs $(LIBS) | |
| VfrCompiler.o: ../Include/Common/BuildVersion.h | |
| include $(MAKEROOT)/Makefiles/footer.makefile | |
| VfrSyntax.cpp EfiVfrParser.cpp EfiVfrParser.h VfrParser.dlg VfrTokens.h: Pccts/antlr/antlr VfrSyntax.g | |
| Pccts/antlr/antlr -CC -e3 -ck 3 -k 2 -fl VfrParser.dlg -ft VfrTokens.h -o . VfrSyntax.g | |
| VfrLexer.cpp VfrLexer.h: Pccts/dlg/dlg VfrParser.dlg | |
| Pccts/dlg/dlg -C2 -i -CC -cl VfrLexer -o . VfrParser.dlg | |
| Pccts/antlr/antlr: | |
| BIN_DIR='.' $(MAKE) -C Pccts/antlr | |
| Pccts/dlg/dlg: | |
| BIN_DIR='.' $(MAKE) -C Pccts/dlg | |
| ATokenBuffer.o: Pccts/h/ATokenBuffer.cpp | |
| $(BUILD_CXX) -c $(VFR_CPPFLAGS) $(INC) $? -o $@ | |
| DLexerBase.o: Pccts/h/DLexerBase.cpp | |
| $(BUILD_CXX) -c $(VFR_CPPFLAGS) $(INC) $? -o $@ | |
| AParser.o: Pccts/h/AParser.cpp | |
| $(BUILD_CXX) -c $(VFR_CPPFLAGS) $(INC) $? -o $@ | |
| VfrSyntax.o: VfrSyntax.cpp | |
| $(BUILD_CXX) -c $(VFR_CPPFLAGS) $(INC) $? -o $@ | |
| clean: localClean | |
| localClean: | |
| BIN_DIR='.' $(MAKE) -C Pccts/antlr clean | |
| BIN_DIR='.' $(MAKE) -C Pccts/dlg clean | |
| rm -f $(EXTRA_CLEAN_OBJECTS) | |