3005a175b8b7dcd1bdb9940577d71d2ee45b542b
[mirror_edk2.git] / BaseTools / Source / C / Makefile
1 ## @file
2 # Windows makefile for C tools build.
3 #
4 # Copyright (c) 2009 - 2014, Intel Corporation. All rights reserved.<BR>
5 # This program and the accompanying materials
6 # are licensed and made available under the terms and conditions of the BSD License
7 # which accompanies this distribution. The full text of the license may be found at
8 # http://opensource.org/licenses/bsd-license.php
9 #
10 # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
11 # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
12 #
13 ARCH = IA32
14
15 !INCLUDE Makefiles\ms.common
16
17 LIBRARIES = Common
18 APPLICATIONS = \
19 BootSectImage \
20 EfiLdrImage \
21 EfiRom \
22 GenBootSector \
23 GenCrc32 \
24 GenFfs \
25 GenFv \
26 GenFw \
27 GenPage \
28 GenSec \
29 GenVtf \
30 LzmaCompress \
31 Split \
32 TianoCompress \
33 VolInfo \
34 VfrCompile
35
36 all: libs apps install
37
38 libs: $(LIBRARIES)
39 @echo.
40 @echo ######################
41 @echo # Build libraries
42 @echo ######################
43 @if not exist $(LIB_PATH) mkdir $(LIB_PATH)
44 @Makefiles\NmakeSubdirs.bat all $**
45
46 apps: $(APPLICATIONS)
47 @echo.
48 @echo ######################
49 @echo # Build executables
50 @echo ######################
51 @if not exist $(BIN_PATH) mkdir $(BIN_PATH)
52 @Makefiles\NmakeSubdirs.bat all $**
53
54 install: $(LIB_PATH) $(BIN_PATH)
55 @echo.
56 @echo ######################
57 @echo # Install to $(SYS_LIB_PATH)
58 @echo # Install to $(SYS_BIN_PATH)
59 @echo ######################
60 @-xcopy $(LIB_PATH)\*.lib $(SYS_LIB_PATH) /I /D /E /F /Y > NUL 2>&1
61 @-xcopy $(BIN_PATH)\*.exe $(SYS_BIN_PATH) /I /D /E /F /Y > NUL 2>&1
62 @-xcopy $(BIN_PATH)\*.bat $(SYS_BIN_PATH) /I /D /E /F /Y > NUL 2>&1
63
64 .PHONY: clean
65 clean:
66 @Makefiles\NmakeSubdirs.bat clean $(LIBRARIES) $(APPLICATIONS)
67
68 .PHONY: cleanall
69 cleanall:
70 @Makefiles\NmakeSubdirs.bat cleanall $(LIBRARIES) $(APPLICATIONS)
71
72 !INCLUDE Makefiles\ms.rule
73