]> git.proxmox.com Git - mirror_edk2.git/blame - BaseTools/Source/C/VfrCompile/GNUmakefile
UefiCpuPkg: Move AsmRelocateApLoopStart from Mpfuncs.nasm to AmdSev.nasm
[mirror_edk2.git] / BaseTools / Source / C / VfrCompile / GNUmakefile
CommitLineData
c69f724d 1## @file\r
4afd3d04 2# GNU/Linux makefile for 'VfrCompile' module build.\r
c69f724d 3#\r
d16e777a 4# Copyright (c) 2008 - 2018, Intel Corporation. All rights reserved.<BR>\r
2e351cbe 5# SPDX-License-Identifier: BSD-2-Clause-Patent\r
c69f724d 6#\r
7\r
c69f724d 8MAKEROOT ?= ..\r
9\r
10APPNAME = VfrCompile\r
11\r
12LIBS = -lCommon\r
13\r
14TOOL_INCLUDE = -I Pccts/h\r
15\r
16#OBJECTS = VfrSyntax.o VfrServices.o DLGLexer.o EfiVfrParser.o ATokenBuffer.o DLexerBase.o AParser.o\r
17OBJECTS = AParser.o DLexerBase.o ATokenBuffer.o EfiVfrParser.o VfrLexer.o VfrSyntax.o \\r
18 VfrFormPkg.o VfrError.o VfrUtilityLib.o VfrCompiler.o\r
02539e90
ZL
19ifeq ($(CXX), llvm)\r
20VFR_CPPFLAGS = -Wno-deprecated-register -DPCCTS_USE_NAMESPACE_STD $(BUILD_CPPFLAGS)\r
21else\r
a61331e8 22VFR_CPPFLAGS = -DPCCTS_USE_NAMESPACE_STD $(BUILD_CPPFLAGS)\r
02539e90 23endif\r
b8a66170
LE
24# keep BUILD_OPTFLAGS last\r
25VFR_CXXFLAGS = $(BUILD_OPTFLAGS)\r
26\r
aa4e0df1
LE
27# keep EXTRA_LDFLAGS last\r
28VFR_LFLAGS = $(EXTRA_LDFLAGS)\r
29\r
fa318476 30LINKER = $(BUILD_CXX)\r
c69f724d 31\r
32EXTRA_CLEAN_OBJECTS = EfiVfrParser.cpp EfiVfrParser.h VfrParser.dlg VfrTokens.h VfrLexer.cpp VfrLexer.h VfrSyntax.cpp tokens.h\r
33\r
b36d134f
LG
34MAKEROOT ?= ../..\r
35\r
36include $(MAKEROOT)/Makefiles/header.makefile\r
37\r
38APPLICATION = $(MAKEROOT)/bin/$(APPNAME)\r
39\r
40.PHONY:all\r
0deca401 41all: $(MAKEROOT)/bin $(APPLICATION)\r
b36d134f 42\r
0deca401 43$(APPLICATION): $(OBJECTS)\r
aa4e0df1 44 $(LINKER) -o $(APPLICATION) $(VFR_LFLAGS) $(OBJECTS) -L$(MAKEROOT)/libs $(LIBS)\r
b36d134f
LG
45\r
46VfrCompiler.o: ../Include/Common/BuildVersion.h\r
47\r
48include $(MAKEROOT)/Makefiles/footer.makefile\r
c69f724d 49\r
50VfrSyntax.cpp EfiVfrParser.cpp EfiVfrParser.h VfrParser.dlg VfrTokens.h: Pccts/antlr/antlr VfrSyntax.g\r
51 Pccts/antlr/antlr -CC -e3 -ck 3 -k 2 -fl VfrParser.dlg -ft VfrTokens.h -o . VfrSyntax.g\r
52\r
53VfrLexer.cpp VfrLexer.h: Pccts/dlg/dlg VfrParser.dlg\r
54 Pccts/dlg/dlg -C2 -i -CC -cl VfrLexer -o . VfrParser.dlg\r
55\r
56Pccts/antlr/antlr:\r
e4ac870f 57 BIN_DIR='.' $(MAKE) -C Pccts/antlr\r
c69f724d 58\r
59Pccts/dlg/dlg:\r
e4ac870f 60 BIN_DIR='.' $(MAKE) -C Pccts/dlg\r
c69f724d 61\r
62ATokenBuffer.o: Pccts/h/ATokenBuffer.cpp\r
b8a66170 63 $(BUILD_CXX) -c $(VFR_CPPFLAGS) $(INC) $(VFR_CXXFLAGS) $? -o $@\r
c69f724d 64\r
65DLexerBase.o: Pccts/h/DLexerBase.cpp\r
b8a66170 66 $(BUILD_CXX) -c $(VFR_CPPFLAGS) $(INC) $(VFR_CXXFLAGS) $? -o $@\r
c69f724d 67\r
68AParser.o: Pccts/h/AParser.cpp\r
b8a66170 69 $(BUILD_CXX) -c $(VFR_CPPFLAGS) $(INC) $(VFR_CXXFLAGS) $? -o $@\r
c69f724d 70\r
71VfrSyntax.o: VfrSyntax.cpp\r
b8a66170 72 $(BUILD_CXX) -c $(VFR_CPPFLAGS) $(INC) $(VFR_CXXFLAGS) $? -o $@\r
0deca401 73\r
c69f724d 74clean: localClean\r
75\r
76localClean:\r
e4ac870f
LG
77 BIN_DIR='.' $(MAKE) -C Pccts/antlr clean\r
78 BIN_DIR='.' $(MAKE) -C Pccts/dlg clean\r
c69f724d 79 rm -f $(EXTRA_CLEAN_OBJECTS)\r
80\r