Win32 build: Additional tweaks for easier cross-compiling.

git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@20595 57a11ea4-9604-0410-9ed3-97b8803252fd
This commit is contained in:
Christian Stimming 2011-04-23 20:33:06 +00:00
parent 0bccae068f
commit b479a3f0fb
2 changed files with 32 additions and 25 deletions

View File

@ -84,6 +84,18 @@ set_default W32API_URL "$SF_MIRROR/mingw/w32api-3.15-1-mingw32-dev.tar.lzma"
set_default MINGW_MAKE_URL "$SF_MIRROR/mingw/mingw32-make-3.81-20080326-3.tar.gz"
set_default MINGW_DIR $GLOBAL_DIR\\mingw
# The URLs for precompiled gcc/mingw binaries
set_default BINUTILS_URL "$SF_MIRROR/mingw/binutils-2.21-2-mingw32-bin.tar.lzma"
set_default GCC_CORE_URL "$SF_MIRROR/mingw/gcc-core-4.5.2-1-mingw32-bin.tar.lzma"
set_default GCC_CORE_DLL_URL "$SF_MIRROR/mingw/libgcc-4.5.2-1-mingw32-dll-1.tar.lzma"
set_default GCC_GPP_URL "$SF_MIRROR/mingw/gcc-c++-4.5.2-1-mingw32-bin.tar.lzma"
set_default GCC_GPP_DLL_URL "$SF_MIRROR/mingw/libstdc++-4.5.2-1-mingw32-dll-6.tar.lzma"
set_default GCC_GPP_PATCH "`pwd`/gcc-c++-4.4.0.patch"
set_default GCC_MPC_URL "$SF_MIRROR/mingw/libmpc-0.8.1-1-mingw32-dll-2.tar.lzma"
set_default GCC_MPFR_URL "$SF_MIRROR/mingw/libmpfr-2.4.1-1-mingw32-dll-1.tar.lzma"
set_default GCC_GMP_URL "$SF_MIRROR/mingw/libgmp-5.0.1-1-mingw32-dll-10.tar.lzma"
set_default GCC_PTHREADS_URL "$SF_MIRROR/mingw/libpthread-2.8.0-3-mingw32-dll-2.tar.lzma"
if [ "$CROSS_COMPILE" != yes ]; then
# Use native toolchain
set_default LD ld
@ -91,17 +103,9 @@ if [ "$CROSS_COMPILE" != yes ]; then
set_default DLLTOOL dlltool
set_default RANLIB ranlib
# For native build on Windows we can use precompiled binaries
set_default BINUTILS_URL "$SF_MIRROR/mingw/binutils-2.21-2-mingw32-bin.tar.lzma"
set_default GCC_CORE_URL "$SF_MIRROR/mingw/gcc-core-4.5.2-1-mingw32-bin.tar.lzma"
set_default GCC_CORE_DLL_URL "$SF_MIRROR/mingw/libgcc-4.5.2-1-mingw32-dll-1.tar.lzma"
set_default GCC_GPP_URL "$SF_MIRROR/mingw/gcc-c++-4.5.2-1-mingw32-bin.tar.lzma"
set_default GCC_GPP_DLL_URL "$SF_MIRROR/mingw/libstdc++-4.5.2-1-mingw32-dll-6.tar.lzma"
set_default GCC_GPP_PATCH "`pwd`/gcc-c++-4.4.0.patch"
set_default GCC_MPC_URL "$SF_MIRROR/mingw/libmpc-0.8.1-1-mingw32-dll-2.tar.lzma"
set_default GCC_MPFR_URL "$SF_MIRROR/mingw/libmpfr-2.4.1-1-mingw32-dll-1.tar.lzma"
set_default GCC_GMP_URL "$SF_MIRROR/mingw/libgmp-5.0.1-1-mingw32-dll-10.tar.lzma"
set_default GCC_PTHREADS_URL "$SF_MIRROR/mingw/libpthread-2.8.0-3-mingw32-dll-2.tar.lzma"
# For native build on Windows we can use the precompiled binaries
# defined above
else
# What flavor of GCC cross-compiler are we building?
set_default TARGET "mingw32"

View File

@ -154,19 +154,22 @@ function inst_mingw() {
echo "mingw already installed in $_MINGW_UDIR. skipping."
else
mkdir -p $_MINGW_UDIR
# Download the precompiled packages in any case to get their DLLs
wget_unpacked $BINUTILS_URL $DOWNLOAD_DIR $MINGW_DIR
wget_unpacked $GCC_CORE_URL $DOWNLOAD_DIR $MINGW_DIR
wget_unpacked $GCC_CORE_DLL_URL $DOWNLOAD_DIR $MINGW_DIR
wget_unpacked $GCC_GPP_URL $DOWNLOAD_DIR $MINGW_DIR
wget_unpacked $GCC_GPP_DLL_URL $DOWNLOAD_DIR $MINGW_DIR
wget_unpacked $GCC_GMP_URL $DOWNLOAD_DIR $MINGW_DIR
wget_unpacked $GCC_MPC_URL $DOWNLOAD_DIR $MINGW_DIR
wget_unpacked $GCC_MPFR_URL $DOWNLOAD_DIR $MINGW_DIR
wget_unpacked $GCC_PTHREADS_URL $DOWNLOAD_DIR $MINGW_DIR
wget_unpacked $MINGW_RT_URL $DOWNLOAD_DIR $MINGW_DIR
wget_unpacked $MINGW_RT_DLL_URL $DOWNLOAD_DIR $MINGW_DIR
wget_unpacked $W32API_URL $DOWNLOAD_DIR $MINGW_DIR
if [ "$CROSS_COMPILE" != "yes" ]; then
wget_unpacked $BINUTILS_URL $DOWNLOAD_DIR $MINGW_DIR
wget_unpacked $GCC_CORE_URL $DOWNLOAD_DIR $MINGW_DIR
wget_unpacked $GCC_CORE_DLL_URL $DOWNLOAD_DIR $MINGW_DIR
wget_unpacked $GCC_GPP_URL $DOWNLOAD_DIR $MINGW_DIR
wget_unpacked $GCC_GPP_DLL_URL $DOWNLOAD_DIR $MINGW_DIR
wget_unpacked $GCC_GMP_URL $DOWNLOAD_DIR $MINGW_DIR
wget_unpacked $GCC_MPC_URL $DOWNLOAD_DIR $MINGW_DIR
wget_unpacked $GCC_MPFR_URL $DOWNLOAD_DIR $MINGW_DIR
wget_unpacked $GCC_PTHREADS_URL $DOWNLOAD_DIR $MINGW_DIR
wget_unpacked $MINGW_RT_URL $DOWNLOAD_DIR $MINGW_DIR
wget_unpacked $MINGW_RT_DLL_URL $DOWNLOAD_DIR $MINGW_DIR
wget_unpacked $W32API_URL $DOWNLOAD_DIR $MINGW_DIR
wget_unpacked $MINGW_MAKE_URL $DOWNLOAD_DIR $MINGW_DIR
(echo "y"; echo "y"; echo "$_MINGW_WFSDIR"; echo "y") | sh pi.sh
else
@ -1527,7 +1530,7 @@ function make_install() {
make install
qpushd $_INSTALL_UDIR/bin
[ "$CROSS_COMPILE" = "yes" ] && die "Cross-compile mingw is missing some parts for installation. Install step unavailable in cross-compile."
if [ ! -f $_MINGW_UDIR/bin/libstdc++-6.dll ] ; then die "File $_MINGW_UDIR/bin/libstdc++-6.dll is missing. Install step unavailable in cross-compile." ; fi
# Copy libstdc++-6.dll and its dependency to gnucash bin directory
# to prevent DLL loading errors
@ -1649,7 +1652,7 @@ function inst_docs() {
fi
mkdir -p $_DOCS_UDIR/repos
qpushd $DOCS_DIR/repos
qpushd $_DOCS_UDIR/repos
if [ "$UPDATE_DOCS" = "yes" ]; then
if [ -x .svn ]; then
setup "SVN update of docs"