From e0f77821027e7e6f12ac85a5cddd9f68d5e09be2 Mon Sep 17 00:00:00 2001 From: Carl Hetherington Date: Mon, 1 Dec 2014 15:49:47 +0000 Subject: [PATCH] Build binutils for Windows too so that we can get addr2line.exe. --- build_all | 6 ++++-- build_binutils.sh => build_binutils_linux.sh | 2 ++ build_binutils_windows.sh | 13 +++++++++++++ clean | 6 ++++-- 4 files changed, 23 insertions(+), 4 deletions(-) rename build_binutils.sh => build_binutils_linux.sh (88%) create mode 100644 build_binutils_windows.sh diff --git a/build_all b/build_all index 384e75d..708d868 100755 --- a/build_all +++ b/build_all @@ -7,20 +7,22 @@ export MINGW_GCC_VERSION=4.7.3 export MINGW_PREFIX=/opt/mingw/32 export MINGW_TARGET=i686-w64-mingw32 -bash build_binutils.sh +bash build_binutils_linux.sh bash build_mingw_headers.sh bash build_gcc_core.sh bash build_mingw_runtime.sh bash build_gcc_rest.sh bash build_gdb.sh +bash build_binutils_windows.sh export MINGW_PREFIX=/opt/mingw/64 export MINGW_TARGET=x86_64-w64-mingw32 -bash build_binutils.sh +bash build_binutils_linux.sh bash build_mingw_headers.sh bash build_gcc_core.sh bash build_mingw_runtime.sh bash build_gcc_rest.sh bash build_gdb.sh +bash build_binutils_windows.sh diff --git a/build_binutils.sh b/build_binutils_linux.sh similarity index 88% rename from build_binutils.sh rename to build_binutils_linux.sh index ab3a862..f97bb71 100644 --- a/build_binutils.sh +++ b/build_binutils_linux.sh @@ -1,4 +1,6 @@ #!/bin/bash -e +# +# Build binutils running on Linux and targeting Windows. tar xjf Archives/binutils-2.23.2.tar.bz2 cd binutils-2.23.2 diff --git a/build_binutils_windows.sh b/build_binutils_windows.sh new file mode 100644 index 0000000..a0b9a30 --- /dev/null +++ b/build_binutils_windows.sh @@ -0,0 +1,13 @@ +#!/bin/bash -e +# +# Build binutils running on Windows and targeting Windows. +# At the moment this is just for addr2line.exe + +tar xzf Archives/binutils-2.24.tar.gz +mkdir -p binutils-windows-build-$MINGW_TARGET +cd binutils-windows-build-$MINGW_TARGET +PATH=$MINGW_PREFIX/bin:$PATH ../binutils-2.24/configure --with-sysroot=$MINGW_PREFIX --prefix=/tmp/frobozz --disable-multilib \ + --host=$MINGW_TARGET --target=$MINGW_TARGET --enable-targets=$MINGW_TARGET +PATH=$MINGW_PREFIX/bin:$PATH make $MINGW_PARALLEL +sudo cp binutils/.libs/addr2line.exe $MINGW_PREFIX/bin + diff --git a/clean b/clean index 6817115..daa0515 100755 --- a/clean +++ b/clean @@ -2,8 +2,10 @@ rm -rf binutils-2.23 rm -rf binutils-2.23.2 -rm -rf binutils-build-i686-w64-mingw32 -rm -rf binutils-build-x86_64-w64-mingw32 +rm -rf binutils-windows-build-i686-w64-mingw32 +rm -rf binutils-windows-build-x86_64-w64-mingw32 +rm -rf binutils-linux-build-i686-w64-mingw32 +rm -rf binutils-linux-build-x86_64-w64-mingw32 rm -rf gcc-4.7.3 rm -rf gcc-build-i686-w64-mingw32 rm -rf gcc-build-x86_64-w64-mingw32 -- 2.30.2