summaryrefslogtreecommitdiffstats
path: root/Tools
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 /Tools
parent2074c9cfbdeb8157d59253dce943f15ddf7d640a (diff)
downloadedk2-7e9f4e1d8e0b0d145c3a91fdbfb349adb5f084e0.tar.gz
edk2-7e9f4e1d8e0b0d145c3a91fdbfb349adb5f084e0.tar.bz2
edk2-7e9f4e1d8e0b0d145c3a91fdbfb349adb5f084e0.zip
Merge the patch provided by Johnson
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@2555 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'Tools')
-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
3 files changed, 9 insertions, 3 deletions
diff --git a/Tools/CCode/Source/FwImage/build.xml b/Tools/CCode/Source/FwImage/build.xml
index d992db2a0f..1d261928fb 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 97229ce09e..f51f824e22 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 9a99fa4c79..2f6e953548 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