Marvin Häuser e21683c782 BaseTools/CommonLib: Consume MdePkg and MdeModulePkg
BaseTools has been duplicating and adapting code that is defined in
MdePkg and MdeModulePkg. This leads to desync issues where the same
symbols may be backed by different functions with slightly different
semantics and also fixes that apply only to BaseTools or only to MdePkg
and MdeModulePkg.

To address these issues, update BaseTools/Source/C to utilize the code
from MdePkg and MdeModulePkg.

Signed-off-by: Marvin Häuser <mhaeuser@posteo.de>
2023-05-09 18:24:28 +03:00

75 lines
2.1 KiB
Plaintext

## @file
# Makefile
#
# Copyright (c) 2007 - 2014, Intel Corporation. All rights reserved.<BR>
# SPDX-License-Identifier: BSD-2-Clause-Patent
#
!IFNDEF EDK_TOOLS_PATH
!ERROR "Please set your EDK_TOOLS_PATH!"
!ENDIF
!IFNDEF BASE_TOOLS_PATH
!ERROR "BASE_TOOLS_PATH is not set! Please run build_tools.bat at first!"
!ENDIF
!IFNDEF HOST_ARCH
HOST_ARCH = IA32
!ENDIF
!IFNDEF EDK2_PATH
EDK2_PATH = ..\..\..\..
!ENDIF
MAKE = nmake -nologo
# DOS del command doesn't support ":\\" in the file path, such as j:\\BaseTools. Convert ":\\" to ":\"
BASE_TOOLS_PATH = $(BASE_TOOLS_PATH::\\=:\)
EDK_TOOLS_PATH = $(EDK_TOOLS_PATH::\\=:\)
SOURCE_PATH = $(BASE_TOOLS_PATH)\Source\C
BIN_PATH = $(BASE_TOOLS_PATH)\Bin
LIB_PATH = $(BASE_TOOLS_PATH)\Lib
EDK2_OBJPATH = ..\obj\edk2
SYS_BIN_PATH=$(EDK_TOOLS_PATH)\Bin
SYS_LIB_PATH=$(EDK_TOOLS_PATH)\Lib
!IF "$(HOST_ARCH)"=="IA32"
ARCH_INCLUDE = $(SOURCE_PATH)\Include\Ia32
ARCH_INCLUDE = $(ARCH_INCLUDE) -I $(EDK2_PATH)\MdePkg\Include\Ia32
BIN_PATH = $(BASE_TOOLS_PATH)\Bin\Win32
LIB_PATH = $(BASE_TOOLS_PATH)\Lib\Win32
EDK2_OBJPATH = ..\obj\Win32\edk2
SYS_BIN_PATH = $(EDK_TOOLS_PATH)\Bin\Win32
SYS_LIB_PATH = $(EDK_TOOLS_PATH)\Lib\Win32
!ELSEIF "$(HOST_ARCH)"=="X64"
ARCH_INCLUDE = $(SOURCE_PATH)\Include\X64
ARCH_INCLUDE = $(ARCH_INCLUDE) -I $(EDK2_PATH)\MdePkg\Include\X64
BIN_PATH = $(BASE_TOOLS_PATH)\Bin\Win64
LIB_PATH = $(BASE_TOOLS_PATH)\Lib\Win64
EDK2_OBJPATH = ..\obj\Win64\edk2
SYS_BIN_PATH = $(EDK_TOOLS_PATH)\Bin\Win64
SYS_LIB_PATH = $(EDK_TOOLS_PATH)\Lib\Win64
!ELSE
!ERROR "Bad HOST_ARCH"
!ENDIF
CC = cl.exe
CXX = cl.exe
AS = ml.exe
AR = lib.exe
LD = link.exe
LINKER = $(LD)
INC = $(INC) -I . -I $(SOURCE_PATH)\Include -I $(ARCH_INCLUDE) -I $(SOURCE_PATH)\Common
INC = $(INC) -I $(EDK2_PATH)\MdePkg\Include -I $(EDK2_PATH)\MdeModulePkg\Include
EDK2_INC = $(INC) /FI..\Include\Common\AutoGen.h
CFLAGS = $(CFLAGS) /nologo /Z7 /c /O2 /MT /W4 /WX /D _CRT_SECURE_NO_DEPRECATE /D _CRT_NONSTDC_NO_DEPRECATE
CPPFLAGS = $(CPPFLAGS) /EHsc /nologo /Z7 /c /O2 /MT /D _CRT_SECURE_NO_DEPRECATE /D _CRT_NONSTDC_NO_DEPRECATE