summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorLucio Andrés Illanes Albornoz (arab, vxp) <l.illanes@gmx.de>2017-01-30 03:00:23 +0000
committerLucio Andrés Illanes Albornoz (arab, vxp) <l.illanes@gmx.de>2017-01-30 03:00:23 +0000
commit99690f1bad0f1a8621f5bbc706a8ef0ba033ee68 (patch)
treeae48625d0707214140dde393a9f7d3e73169edbe
parent276fbdf5b8dd01c9bde517b35d0d683300fd78a1 (diff)
downloadmidipix_build-99690f1bad0f1a8621f5bbc706a8ef0ba033ee68.tar.bz2
midipix_build-99690f1bad0f1a8621f5bbc706a8ef0ba033ee68.tar.xz
build/gcc.full.build: fix gcc.{host,stage1}.mingw_w64 build.
patches/gcc.stage1.mingw_w64.local.patch: force libiberty/pex-unix.c when targeting mingw_w64. subr/build.subr: create ${PREFIX}/man -> share/man symlink as w/ ${PREFIX_NATIVE}. subr/rtl.subr: obtain target from ${PKG_TARGET} in set_build_dir(). vars/build.vars: adds ${PKG_TARGET} var; reenables gcc.stage1.mingw_w64.
-rw-r--r--build/gcc.full.build5
-rw-r--r--patches/gcc.stage1.mingw_w64.local.patch11
-rw-r--r--subr/build.subr4
-rw-r--r--subr/rtl.subr2
-rw-r--r--vars/build.vars5
5 files changed, 24 insertions, 3 deletions
diff --git a/build/gcc.full.build b/build/gcc.full.build
index 75670fa8..ee597167 100644
--- a/build/gcc.full.build
+++ b/build/gcc.full.build
@@ -4,6 +4,7 @@
if [ "${3}" = mingw_w64 ]; then
TARGET=x86_64-w64-mingw32;
+ PKG_TARGET=x86_64-w64-mingw32;
if [ ! -L ${PREFIX}/${TARGET}/mingw ]; then
secure_rm ${PREFIX}/${TARGET}/mingw;
ln -sf . ${PREFIX}/${TARGET}/mingw;
@@ -128,6 +129,10 @@ else
_configure_args="${_configure_args} \
--disable-sjlj-exceptions";
fi;
+ if [ "${3}" = mingw_w64 ]\
+ && [ -r ${MIDIPIX_BUILD_PWD}/patches/${PKG_NAME}.${2}.${3}.local.patch ]; then
+ patch -b -d ${PKG_SUBDIR} -p1 < ${MIDIPIX_BUILD_PWD}/patches/${PKG_NAME}.${2}.${3}.local.patch;
+ fi;
secure_rm ${PKG_BUILD_DIR};
insecure_mkdir ${PKG_BUILD_DIR};
secure_cd ${PKG_BUILD_DIR};
diff --git a/patches/gcc.stage1.mingw_w64.local.patch b/patches/gcc.stage1.mingw_w64.local.patch
new file mode 100644
index 00000000..ac886cf2
--- /dev/null
+++ b/patches/gcc.stage1.mingw_w64.local.patch
@@ -0,0 +1,11 @@
+--- cbb-gcc-4.6.4/libiberty/configure.ac.orig 2016-12-19 18:27:51.909364800 +0100
++++ cbb-gcc-4.6.4/libiberty/configure.ac 2017-01-30 03:55:45.271150700 +0100
+@@ -683,7 +683,7 @@
+
+ # Figure out which version of pexecute to use.
+ case "${host}" in
+- *-*-mingw* | *-*-winnt*) pexecute=pex-win32 ;;
++ *-*-winnt*) pexecute=pex-win32 ;;
+ *-*-msdosdjgpp*) pexecute=pex-djgpp ;;
+ *-*-msdos*) pexecute=pex-msdos ;;
+ *) pexecute=pex-unix ;;
diff --git a/subr/build.subr b/subr/build.subr
index 7851afe0..1f67257c 100644
--- a/subr/build.subr
+++ b/subr/build.subr
@@ -76,6 +76,10 @@ create_dirs() {
secure_rm "${__}"; ln -sf -- . "${__}";
fi;
done;
+ if [ ! -L ${PREFIX}/man ]; then
+ secure_rm ${PREFIX}/man;
+ ln -sf share/man ${PREFIX}/man;
+ fi;
if [ ! -L ${PREFIX_NATIVE}/man ]; then
secure_rm ${PREFIX_NATIVE}/man;
ln -sf share/man ${PREFIX_NATIVE}/man;
diff --git a/subr/rtl.subr b/subr/rtl.subr
index d9ea0823..6f15a432 100644
--- a/subr/rtl.subr
+++ b/subr/rtl.subr
@@ -8,7 +8,7 @@ get_var_unsafe() { eval echo \${${1}}; };
set_var_unsafe() { eval ${1}=\"${2}\"; };
push_IFS() { _pI_IFS="${IFS}"; IFS="${1}"; };
pop_IFS() { IFS="${_pI_IFS}"; unset _pI_IFS; };
-set_build_dir() { PKG_BUILD_DIR=${1}-${2}-${TARGET}; };
+set_build_dir() { PKG_BUILD_DIR=${1}-${2}-${PKG_TARGET}; };
split() { push_IFS "${1}"; set -- ${2}; pop_IFS; echo "${*}"; };
test_cmd() { command -v "${1}" >/dev/null; };
unsplit() { push_IFS "${1}"; shift; set -- "${@}"; echo "${*}"; pop_IFS; };
diff --git a/vars/build.vars b/vars/build.vars
index d99fc7bc..13606a86 100644
--- a/vars/build.vars
+++ b/vars/build.vars
@@ -57,7 +57,7 @@ fi;
: ${LOG_MSG_INFO_COLOUR:=93};
: ${LOG_MSG_SUCC_COLOUR:=92};
: ${LOG_MSG_WARN_COLOUR:=96};
-: ${PKG_BUILD_VARS:="BUILD_CMDLINE BUILD_DIR BUILD_TYPE CFLAGS_BUILD_EXTRA CFLAGS_CONFIGURE CFLAGS_CONFIGURE_EXTRA CFLAGS_INSTALL_EXTRA CONFIG_CACHE_EXTRA CONFIGURE CONFIGURE_ARGS CONFIGURE_ARGS_EXTRA DISABLED ENV_VARS_EXTRA FNAME GIT_BRANCH INSTALL_FILES INSTALL_TARGET INSTALL_TARGET_EXTRA LDFLAGS_BUILD_EXTRA LDFLAGS_CONFIGURE LDFLAGS_CONFIGURE_EXTRA LDFLAGS_INSTALL_EXTRA MAKEFLAGS_BUILD MAKEFLAGS_BUILD_EXTRA MAKEFLAGS_INSTALL MAKEFLAGS_INSTALL_EXTRA NO_CLEAN NO_MAKE_BUILD NO_MAKE_INSTALL PREFIX_EXTRA SHA256SUM SLIBTOOL SUBDIR SUBDIR_CREATE URL URL_FNAME URL_TYPE VERSION"};
+: ${PKG_BUILD_VARS:="BUILD_CMDLINE BUILD_DIR BUILD_TYPE CFLAGS_BUILD_EXTRA CFLAGS_CONFIGURE CFLAGS_CONFIGURE_EXTRA CFLAGS_INSTALL_EXTRA CONFIG_CACHE_EXTRA CONFIGURE CONFIGURE_ARGS CONFIGURE_ARGS_EXTRA DISABLED ENV_VARS_EXTRA FNAME GIT_BRANCH INSTALL_FILES INSTALL_TARGET INSTALL_TARGET_EXTRA LDFLAGS_BUILD_EXTRA LDFLAGS_CONFIGURE LDFLAGS_CONFIGURE_EXTRA LDFLAGS_INSTALL_EXTRA MAKEFLAGS_BUILD MAKEFLAGS_BUILD_EXTRA MAKEFLAGS_INSTALL MAKEFLAGS_INSTALL_EXTRA NO_CLEAN NO_MAKE_BUILD NO_MAKE_INSTALL PREFIX_EXTRA SHA256SUM SLIBTOOL SUBDIR SUBDIR_CREATE TARGET URL URL_FNAME URL_TYPE VERSION"};
: ${TARBALL_FNAME_PREFIX:=midipix-${ARCH}-${BUILD}.};
: ${TARBALL_SIGN_GPG_KEY:=};
: ${TARBALL_CROSS_FNAME_PREFIX:=midipix-${ARCH}-${BUILD}_cross.};
@@ -109,6 +109,7 @@ HOST_TOOLCHAIN_PREFIX="${PREFIX_CROSS}";
: ${PKG_BINUTILS_HOST_MINGW_W64_URL:=ftp://sourceware.org/pub/binutils/snapshots/binutils-${PKG_BINUTILS_HOST_MINGW_W64_VERSION}.tar.bz2};
: ${PKG_BINUTILS_HOST_MINGW_W64_CONFIGURE_ARGS:=--disable-werror --prefix=${PREFIX} --target=x86_64-w64-mingw32 --with-sysroot=${PREFIX_CROSS}};
: ${PKG_BINUTILS_HOST_MINGW_W64_SLIBTOOL:=slibtool-static};
+: ${PKG_BINUTILS_HOST_MINGW_W64_TARGET:=x86_64-w64-mingw32};
: ${PKG_MDSO_HOST_URL:=${GITROOT}/mdso};
: ${PKG_MDSO_HOST_URL_TYPE:=git};
: ${PKG_MDSO_HOST_CONFIGURE_ARGS:="--prefix=/usr"};
@@ -133,7 +134,7 @@ HOST_TOOLCHAIN_PREFIX="${PREFIX_CROSS}";
NATIVE_TOOLCHAIN_CFLAGS_CONFIGURE="${NATIVE_TOOLCHAIN_CFLAGS_CONFIGURE_DEFAULT}";
NATIVE_TOOLCHAIN_CONFIGURE_ARGS="--disable-nls --host=${TARGET} --prefix=/ --target=${TARGET}";
NATIVE_TOOLCHAIN_MAKEFLAGS_INSTALL="DESTDIR=${PREFIX_NATIVE}";
-NATIVE_TOOLCHAIN_PACKAGES="slibtool perk pkgconf gmp mpfr mpc libelf binutils binutils_native_mingw_w64 musl.native gcc.native mdso";
+NATIVE_TOOLCHAIN_PACKAGES="slibtool perk pkgconf gmp mpfr mpc libelf binutils binutils_native_mingw_w64 musl.native gcc.native mdso gcc.stage1.mingw_w64";
NATIVE_TOOLCHAIN_PREFIX="${PREFIX_NATIVE}";
: ${PKG_SLIBTOOL_URL:=git://midipix.org/slibtool};
: ${PKG_SLIBTOOL_URL_TYPE:=git};