]> git.proxmox.com Git - mirror_edk2.git/blame - BaseTools/Source/C/VfrCompile/GNUmakefile
Sync BaseTool trunk (version r2599) into EDKII BaseTools.
[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
40d841f6
LG
4# Copyright (c) 2008 - 2010, Intel Corporation. All rights reserved.<BR>\r
5# This program and the accompanying materials\r
c69f724d 6# are licensed and made available under the terms and conditions of the BSD License\r
7# which accompanies this distribution. The full text of the license may be found at\r
8# http://opensource.org/licenses/bsd-license.php\r
9#\r
10# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
11# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
12#\r
13\r
14ARCH ?= IA32\r
15MAKEROOT ?= ..\r
16\r
17APPNAME = VfrCompile\r
18\r
19LIBS = -lCommon\r
20\r
21TOOL_INCLUDE = -I Pccts/h\r
22\r
23#OBJECTS = VfrSyntax.o VfrServices.o DLGLexer.o EfiVfrParser.o ATokenBuffer.o DLexerBase.o AParser.o\r
24OBJECTS = AParser.o DLexerBase.o ATokenBuffer.o EfiVfrParser.o VfrLexer.o VfrSyntax.o \\r
25 VfrFormPkg.o VfrError.o VfrUtilityLib.o VfrCompiler.o\r
26\r
27VFR_CPPFLAGS = -DPCCTS_USE_NAMESPACE_STD $(CPPFLAGS)\r
28\r
29LINKER = $(CXX)\r
30\r
31EXTRA_CLEAN_OBJECTS = EfiVfrParser.cpp EfiVfrParser.h VfrParser.dlg VfrTokens.h VfrLexer.cpp VfrLexer.h VfrSyntax.cpp tokens.h\r
32\r
b36d134f
LG
33MAKEROOT ?= ../..\r
34\r
35include $(MAKEROOT)/Makefiles/header.makefile\r
36\r
37APPLICATION = $(MAKEROOT)/bin/$(APPNAME)\r
38\r
39.PHONY:all\r
40all: $(MAKEROOT)/bin $(APPLICATION) \r
41\r
42$(APPLICATION): $(OBJECTS) \r
43 $(LINKER) -o $(APPLICATION) $(LFLAGS) $(OBJECTS) -L$(MAKEROOT)/libs $(LIBS)\r
44\r
45VfrCompiler.o: ../Include/Common/BuildVersion.h\r
46\r
47include $(MAKEROOT)/Makefiles/footer.makefile\r
c69f724d 48\r
49VfrSyntax.cpp EfiVfrParser.cpp EfiVfrParser.h VfrParser.dlg VfrTokens.h: Pccts/antlr/antlr VfrSyntax.g\r
50 Pccts/antlr/antlr -CC -e3 -ck 3 -k 2 -fl VfrParser.dlg -ft VfrTokens.h -o . VfrSyntax.g\r
51\r
52VfrLexer.cpp VfrLexer.h: Pccts/dlg/dlg VfrParser.dlg\r
53 Pccts/dlg/dlg -C2 -i -CC -cl VfrLexer -o . VfrParser.dlg\r
54\r
55Pccts/antlr/antlr:\r
56 BIN_DIR='.' make -C Pccts/antlr\r
57\r
58Pccts/dlg/dlg:\r
59 BIN_DIR='.' make -C Pccts/dlg\r
60\r
61ATokenBuffer.o: Pccts/h/ATokenBuffer.cpp\r
62 $(CXX) -c $(VFR_CPPFLAGS) $(INC) $? -o $@\r
63\r
64DLexerBase.o: Pccts/h/DLexerBase.cpp\r
65 $(CXX) -c $(VFR_CPPFLAGS) $(INC) $? -o $@\r
66\r
67AParser.o: Pccts/h/AParser.cpp\r
68 $(CXX) -c $(VFR_CPPFLAGS) $(INC) $? -o $@\r
69\r
70VfrSyntax.o: VfrSyntax.cpp\r
71 $(CXX) -c $(VFR_CPPFLAGS) $(INC) $? -o $@\r
72 \r
73clean: localClean\r
74\r
75localClean:\r
76 BIN_DIR='.' make -C Pccts/antlr clean\r
77 BIN_DIR='.' make -C Pccts/dlg clean\r
78 rm -f $(EXTRA_CLEAN_OBJECTS)\r
79\r