3 # Copyright (c) 2004 - 2010, Intel Corporation. All rights reserved.<BR>
4 # This program and the accompanying materials
5 # are licensed and made available under the terms and conditions of the BSD License
6 # which accompanies this distribution. The full text of the license may be found at
7 # http://opensource.org/licenses/bsd-license.php
9 # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
10 # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
18 # This file is used to build the HiiPack utility
23 # Make sure environmental variable EDK_SOURCE is set
26 !ERROR EDK_SOURCE environmental variable not set
30 # Do this if you want to compile from this directory
33 TOOLCHAIN
= TOOLCHAIN_MSVC
36 !INCLUDE
$(BUILD_DIR
)\PlatformTools.env
39 # Target specific information
43 TARGET_SRC_DIR
= $(EDK_TOOLS_SOURCE
)\
$(TARGET_NAME
)
44 TARGET_EXE
= $(EDK_TOOLS_OUTPUT
)\HiiPack.exe
52 INC
= $(INC
) -I
"$(EDK_SOURCE)\Foundation\Framework\Protocol\Hii"
54 INC_DEPS
= "$(TARGET_SRC_DIR)\HiiPack.h" "$(TARGET_SRC_DIR)\IfrParse.h" "$(TARGET_SRC_DIR)\StringParse.h"
56 LIBS
= "$(EDK_TOOLS_OUTPUT)\Common.lib"
58 OBJECTS
= $(EDK_TOOLS_OUTPUT
)\FindFiles.obj \
59 $(EDK_TOOLS_OUTPUT
)\HiiPack.obj \
60 $(EDK_TOOLS_OUTPUT
)\IfrParse.obj \
61 $(EDK_TOOLS_OUTPUT
)\StringParse.obj
67 $(EDK_TOOLS_OUTPUT
)\FindFiles.obj
: $(TARGET_SRC_DIR
)\FindFiles.c
$(INC_DEPS
)
68 $(CC
) $(C_FLAGS
) $(INC
) $(TARGET_SRC_DIR
)\FindFiles.c
/Fo
$@
70 $(EDK_TOOLS_OUTPUT
)\HiiPack.obj
: $(TARGET_SRC_DIR
)\HiiPack.c
$(INC_DEPS
)
71 $(CC
) $(C_FLAGS
) $(INC
) $(TARGET_SRC_DIR
)\HiiPack.c
/Fo
$@
73 $(EDK_TOOLS_OUTPUT
)\IfrParse.obj
: $(TARGET_SRC_DIR
)\IfrParse.c
$(INC_DEPS
)
74 $(CC
) $(C_FLAGS
) $(INC
) $(TARGET_SRC_DIR
)\IfrParse.c
/Fo
$@
76 $(EDK_TOOLS_OUTPUT
)\StringParse.obj
: $(TARGET_SRC_DIR
)\StringParse.c
$(INC_DEPS
)
77 $(CC
) $(C_FLAGS
) $(INC
) $(TARGET_SRC_DIR
)\StringParse.c
/Fo
$@
80 # Add Binary Build description for this tool.
83 !IF
(("$(EFI_BINARY_TOOLS)" == "YES") && EXIST
($(EFI_PLATFORM_BIN
)\Tools\
$(TARGET_NAME
).exe
))
84 $(TARGET_EXE
): $(EFI_PLATFORM_BIN
)\Tools\
$(TARGET_NAME
).exe
85 copy
$(EFI_PLATFORM_BIN
)\Tools\
$(TARGET_NAME
).exe
$(TARGET_EXE
) /Y
86 if exist
$(EFI_PLATFORM_BIN
)\Tools\
$(TARGET_NAME
).pdb \
87 copy
$(EFI_PLATFORM_BIN
)\Tools\
$(TARGET_NAME
).pdb
$(EDK_TOOLS_OUTPUT
)\
$(TARGET_NAME
).pdb
/Y
89 $(TARGET_EXE
) : $(OBJECTS
) $(LIBS
)
90 $(LINK
) $(MSVS_LINK_LIBPATHS
) $(L_FLAGS
) $(LIBS
) /out
:$(TARGET_EXE
) $(OBJECTS
)
91 !IF
("$(EFI_BINARY_BUILD)" == "YES")
92 if not exist
$(EFI_PLATFORM_BIN
)\Tools mkdir
$(EFI_PLATFORM_BIN
)\Tools
93 if exist
$(TARGET_EXE
) copy
$(TARGET_EXE
) $(EFI_PLATFORM_BIN
)\tools\
$(TARGET_NAME
).exe
/Y
94 if exist
$(EDK_TOOLS_OUTPUT
)\
$(TARGET_NAME
).pdb \
95 copy
$(EDK_TOOLS_OUTPUT
)\
$(TARGET_NAME
).pdb
$(EFI_PLATFORM_BIN
)\Tools\
$(TARGET_NAME
).pdb
/Y
100 @if exist
$(EDK_TOOLS_OUTPUT
)\
$(TARGET_NAME
).
* del
$(EDK_TOOLS_OUTPUT
)\
$(TARGET_NAME
).
* > NUL
101 @if exist
$(EDK_TOOLS_OUTPUT
)\FindFiles.
* del
$(EDK_TOOLS_OUTPUT
)\FindFiles.
* > NUL
102 @if exist
$(EDK_TOOLS_OUTPUT
)\IfrParse
* del
$(EDK_TOOLS_OUTPUT
)\IfrParse.
* > NUL
103 @if exist
$(EDK_TOOLS_OUTPUT
)\StringParse.
* del
$(EDK_TOOLS_OUTPUT
)\StringParse.
* > NUL