]> git.proxmox.com Git - mirror_edk2.git/blob - BaseTools/Source/C/Makefiles/ms.common
BaseTools: Update nmake Makefile to handle the file path with “:\\”.
[mirror_edk2.git] / BaseTools / Source / C / Makefiles / ms.common
1 ## @file
2 # Makefile
3 #
4 # Copyright (c) 2007 - 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
14 !IFNDEF EDK_TOOLS_PATH
15 !ERROR "Please set your EDK_TOOLS_PATH!"
16 !ENDIF
17
18 !IFNDEF BASE_TOOLS_PATH
19 !ERROR "BASE_TOOLS_PATH is not set! Please run build_tools.bat at first!"
20 !ENDIF
21
22 !IFNDEF ARCH
23 ARCH = IA32
24 !ENDIF
25
26 MAKE = nmake -nologo
27
28 # DOS del command doesn't support ":\\" in the file path, such as j:\\BaseTools. Convert ":\\" to ":\"
29 BASE_TOOLS_PATH = $(BASE_TOOLS_PATH::\\=:\)
30 EDK_TOOLS_PATH = $(EDK_TOOLS_PATH::\\=:\)
31
32 SOURCE_PATH = $(BASE_TOOLS_PATH)\Source\C
33 BIN_PATH = $(BASE_TOOLS_PATH)\Bin
34 LIB_PATH = $(BASE_TOOLS_PATH)\Lib
35
36 SYS_BIN_PATH=$(EDK_TOOLS_PATH)\Bin
37 SYS_LIB_PATH=$(EDK_TOOLS_PATH)\Lib
38
39 !IF "$(ARCH)"=="IA32"
40 ARCH_INCLUDE = $(SOURCE_PATH)\Include\Ia32
41 BIN_PATH = $(BASE_TOOLS_PATH)\Bin\Win32
42 LIB_PATH = $(BASE_TOOLS_PATH)\Lib\Win32
43 SYS_BIN_PATH = $(EDK_TOOLS_PATH)\Bin\Win32
44 SYS_LIB_PATH = $(EDK_TOOLS_PATH)\Lib\Win32
45 !ENDIF
46
47 !IF "$(ARCH)"=="X64"
48 ARCH_INCLUDE = $(SOURCE_PATH)\Include\X64
49 BIN_PATH = $(BASE_TOOLS_PATH)\Bin\Win64
50 LIB_PATH = $(BASE_TOOLS_PATH)\Lib\Win64
51 SYS_BIN_PATH = $(EDK_TOOLS_PATH)\Bin\Win64
52 SYS_LIB_PATH = $(EDK_TOOLS_PATH)\Lib\Win64
53 !ENDIF
54
55 CC = cl.exe
56 CXX = cl.exe
57 AS = ml.exe
58 AR = lib.exe
59 LD = link.exe
60 LINKER = $(LD)
61
62 INC = -I . -I $(SOURCE_PATH)\Include -I $(ARCH_INCLUDE) -I $(SOURCE_PATH)\Common $(INC)
63
64 CFLAGS = $(CFLAGS) /nologo /c /Zi /Od /RTC1 /D _DEBUG /MTd /W4 /WX /D _CRT_SECURE_NO_DEPRECATE /D _CRT_NONSTDC_NO_DEPRECATE
65 CPPFLAGS = $(CPPFLAGS) /EHsc /nologo /c /Zi /Od /RTC1 /D _DEBUG /MTd /D _CRT_SECURE_NO_DEPRECATE /D _CRT_NONSTDC_NO_DEPRECATE
66