]>
Commit | Line | Data |
---|---|---|
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 | 8 | MAKEROOT ?= ..\r |
9 | \r | |
10 | APPNAME = VfrCompile\r | |
11 | \r | |
12 | LIBS = -lCommon\r | |
13 | \r | |
14 | TOOL_INCLUDE = -I Pccts/h\r | |
15 | \r | |
16 | #OBJECTS = VfrSyntax.o VfrServices.o DLGLexer.o EfiVfrParser.o ATokenBuffer.o DLexerBase.o AParser.o\r | |
17 | OBJECTS = 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 |
19 | ifeq ($(CXX), llvm)\r |
20 | VFR_CPPFLAGS = -Wno-deprecated-register -DPCCTS_USE_NAMESPACE_STD $(BUILD_CPPFLAGS)\r | |
21 | else\r | |
a61331e8 | 22 | VFR_CPPFLAGS = -DPCCTS_USE_NAMESPACE_STD $(BUILD_CPPFLAGS)\r |
02539e90 | 23 | endif\r |
b8a66170 LE |
24 | # keep BUILD_OPTFLAGS last\r |
25 | VFR_CXXFLAGS = $(BUILD_OPTFLAGS)\r | |
26 | \r | |
aa4e0df1 LE |
27 | # keep EXTRA_LDFLAGS last\r |
28 | VFR_LFLAGS = $(EXTRA_LDFLAGS)\r | |
29 | \r | |
fa318476 | 30 | LINKER = $(BUILD_CXX)\r |
c69f724d | 31 | \r |
32 | EXTRA_CLEAN_OBJECTS = EfiVfrParser.cpp EfiVfrParser.h VfrParser.dlg VfrTokens.h VfrLexer.cpp VfrLexer.h VfrSyntax.cpp tokens.h\r | |
33 | \r | |
b36d134f LG |
34 | MAKEROOT ?= ../..\r |
35 | \r | |
36 | include $(MAKEROOT)/Makefiles/header.makefile\r | |
37 | \r | |
38 | APPLICATION = $(MAKEROOT)/bin/$(APPNAME)\r | |
39 | \r | |
40 | .PHONY:all\r | |
0deca401 | 41 | all: $(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 |
46 | VfrCompiler.o: ../Include/Common/BuildVersion.h\r | |
47 | \r | |
48 | include $(MAKEROOT)/Makefiles/footer.makefile\r | |
c69f724d | 49 | \r |
50 | VfrSyntax.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 | |
53 | VfrLexer.cpp VfrLexer.h: Pccts/dlg/dlg VfrParser.dlg\r | |
54 | Pccts/dlg/dlg -C2 -i -CC -cl VfrLexer -o . VfrParser.dlg\r | |
55 | \r | |
56 | Pccts/antlr/antlr:\r | |
e4ac870f | 57 | BIN_DIR='.' $(MAKE) -C Pccts/antlr\r |
c69f724d | 58 | \r |
59 | Pccts/dlg/dlg:\r | |
e4ac870f | 60 | BIN_DIR='.' $(MAKE) -C Pccts/dlg\r |
c69f724d | 61 | \r |
62 | ATokenBuffer.o: Pccts/h/ATokenBuffer.cpp\r | |
b8a66170 | 63 | $(BUILD_CXX) -c $(VFR_CPPFLAGS) $(INC) $(VFR_CXXFLAGS) $? -o $@\r |
c69f724d | 64 | \r |
65 | DLexerBase.o: Pccts/h/DLexerBase.cpp\r | |
b8a66170 | 66 | $(BUILD_CXX) -c $(VFR_CPPFLAGS) $(INC) $(VFR_CXXFLAGS) $? -o $@\r |
c69f724d | 67 | \r |
68 | AParser.o: Pccts/h/AParser.cpp\r | |
b8a66170 | 69 | $(BUILD_CXX) -c $(VFR_CPPFLAGS) $(INC) $(VFR_CXXFLAGS) $? -o $@\r |
c69f724d | 70 | \r |
71 | VfrSyntax.o: VfrSyntax.cpp\r | |
b8a66170 | 72 | $(BUILD_CXX) -c $(VFR_CPPFLAGS) $(INC) $(VFR_CXXFLAGS) $? -o $@\r |
0deca401 | 73 | \r |
c69f724d | 74 | clean: localClean\r |
75 | \r | |
76 | localClean:\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 |