summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorklu2 <klu2@6f19259b-4bc3-4df7-8a09-765794883524>2007-04-11 03:08:47 +0000
committerklu2 <klu2@6f19259b-4bc3-4df7-8a09-765794883524>2007-04-11 03:08:47 +0000
commit7e9f4e1d8e0b0d145c3a91fdbfb349adb5f084e0 (patch)
tree86bfb92dc8def5849a9b6ce97cf410ac55ca864d
parent2074c9cfbdeb8157d59253dce943f15ddf7d640a (diff)
downloadedk2-7e9f4e1d8e0b0d145c3a91fdbfb349adb5f084e0.zip
edk2-7e9f4e1d8e0b0d145c3a91fdbfb349adb5f084e0.tar.gz
edk2-7e9f4e1d8e0b0d145c3a91fdbfb349adb5f084e0.tar.bz2
Merge the patch provided by Johnson
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@2555 6f19259b-4bc3-4df7-8a09-765794883524
-rw-r--r--EdkUnixPkg/Sec/SecMain.c5
-rw-r--r--EdkUnixPkg/Sec/SecMain_build.xml4
-rw-r--r--Tools/CCode/Source/FwImage/build.xml4
-rw-r--r--Tools/CCode/Source/FwImage/fwimage.c2
-rw-r--r--Tools/Conf/tools_def.template6
5 files changed, 15 insertions, 6 deletions
diff --git a/EdkUnixPkg/Sec/SecMain.c b/EdkUnixPkg/Sec/SecMain.c
index 72fad08..04df255 100644
--- a/EdkUnixPkg/Sec/SecMain.c
+++ b/EdkUnixPkg/Sec/SecMain.c
@@ -1,6 +1,6 @@
/*++
-Copyright (c) 2006, Intel Corporation
+Copyright (c) 2006 - 2007 Intel Corporation.
All rights reserved. This program and the accompanying materials
are licensed and made available under the terms and conditions of the BSD License
which accompanies this distribution. The full text of the license may be found at
@@ -173,6 +173,9 @@ Returns:
CHAR16 *MemorySizeStr;
CHAR16 *FirmwareVolumesStr;
+ setbuf(stdout, 0);
+ setbuf(stderr, 0);
+
MemorySizeStr = (CHAR16 *)PcdGetPtr (PcdUnixMemorySizeForSecMain);
FirmwareVolumesStr = (CHAR16 *)PcdGetPtr (PcdUnixFirmwareVolume);
diff --git a/EdkUnixPkg/Sec/SecMain_build.xml b/EdkUnixPkg/Sec/SecMain_build.xml
index c1a5caf..db5ae8d 100644
--- a/EdkUnixPkg/Sec/SecMain_build.xml
+++ b/EdkUnixPkg/Sec/SecMain_build.xml
@@ -1,6 +1,6 @@
<?xml version="1.0" ?>
<!--
-Copyright (c) 2006, Intel Corporation
+Copyright (c) 2006 - 2007 Intel Corporation.
All rights reserved. This program and the accompanying materials
are licensed and made available under the terms and conditions of the BSD License
which accompanies this distribution. The full text of the license may be found at
@@ -131,7 +131,7 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
<shellscript shell="sh" tmpsuffix=".cmd" >
set -v
- gcc -Wl,--start-group ${LIBS} -Wl,--end-group -o ${BIN_DIR}/SecMain.exe -L/usr/X11R6/lib -lXext -lX11
+ gcc -m32 -Wl,--start-group ${LIBS} -Wl,--end-group -o ${BIN_DIR}/SecMain.exe -L/usr/X11R6/lib -lXext -lX11
</shellscript>
</sequential>
</OnDependency>
diff --git a/Tools/CCode/Source/FwImage/build.xml b/Tools/CCode/Source/FwImage/build.xml
index d992db2..1d26192 100644
--- a/Tools/CCode/Source/FwImage/build.xml
+++ b/Tools/CCode/Source/FwImage/build.xml
@@ -45,7 +45,9 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
excludes="*.xml *.inf"/>
<includepath path="${PACKAGE_DIR}/Include"/>
- <includepath path="${PACKAGE_DIR}/Include/${HostArch}"/>
+ <!-- <includepath path="${PACKAGE_DIR}/Include/${HostArch}"/> -->
+ <!-- We can only convert IA32, not X64, ELF objects -->
+ <includepath path="${PACKAGE_DIR}/Include/Ia32"/>
<includepath path="${PACKAGE_DIR}/Common"/>
<libset dir="${LIB_DIR}" libs="CommonTools"/>
</cc>
diff --git a/Tools/CCode/Source/FwImage/fwimage.c b/Tools/CCode/Source/FwImage/fwimage.c
index 97229ce..f51f824 100644
--- a/Tools/CCode/Source/FwImage/fwimage.c
+++ b/Tools/CCode/Source/FwImage/fwimage.c
@@ -25,7 +25,7 @@ Abstract:
// List of OS and CPU which support ELF to PE conversion
//
#if defined(linux)
-#if defined(i386)
+#if defined (__i386__) || defined(__x86_64__)
#define HAVE_ELF
#endif
#endif
diff --git a/Tools/Conf/tools_def.template b/Tools/Conf/tools_def.template
index 9a99fa4..2f6e953 100644
--- a/Tools/Conf/tools_def.template
+++ b/Tools/Conf/tools_def.template
@@ -404,7 +404,11 @@ RELEASE_VS2005PRO_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4086 /OPT:REF
*_ELFGCC_IA32_PP_NAME = gcc
*_ELFGCC_IA32_VFRPP_NAME = gcc
-*_ELFGCC_IA32_CC_FLAGS = -g -fshort-wchar -Wall -Werror -c -include ${DEST_DIR_DEBUG}/AutoGen.h -DSTRING_ARRAY_NAME=${BASE_NAME}Strings
+*_ELFGCC_IA32_CC_FLAGS = -m32 -g -fshort-wchar -Wall -Werror -c -include ${DEST_DIR_DEBUG}/AutoGen.h -DSTRING_ARRAY_NAME=${BASE_NAME}Strings
+*_ELFGCC_IA32_DLINK_FLAGS = -melf_i386 -nostdlib -n -q -Ttext 0x220 --entry ${ENTRYPOINT} -u ${ENTRYPOINT}
+*_ELFGCC_IA32_ASM_FLAGS = -m32 -c -imacros ${DEST_DIR_DEBUG}/AutoGen.h -DASM_PFX(name)=name
+*_ELFGCC_IA32_PP_FLAGS = -m32 -E -x assembler-with-cpp -include ${DEST_DIR_DEBUG}/AutoGen.h
+
*_ELFGCC_*_DLINK_FLAGS = -nostdlib -n -q -Ttext 0x220 --entry ${ENTRYPOINT} -u ${ENTRYPOINT}
*_ELFGCC_*_ASM_FLAGS = -c -imacros ${DEST_DIR_DEBUG}/AutoGen.h -DASM_PFX(name)=name
*_ELFGCC_*_PP_FLAGS = -E -x assembler-with-cpp -include ${DEST_DIR_DEBUG}/AutoGen.h