summaryrefslogtreecommitdiffhomepage
path: root/vars/gcc.vars
diff options
context:
space:
mode:
authorLucio Andrés Illanes Albornoz (arab, vxp) <l.illanes@gmx.de>2017-02-01 00:35:43 +0000
committerLucio Andrés Illanes Albornoz (arab, vxp) <l.illanes@gmx.de>2017-02-01 01:27:04 +0000
commit03a6372afeb96419da89a8100c95366f9ebe68cc (patch)
treebb994263b3afd55f4c7dd7c9a1b8381317baad81 /vars/gcc.vars
parentf937121616866517e54f27e4e8d806c70f288ab8 (diff)
downloadmidipix_build-03a6372afeb96419da89a8100c95366f9ebe68cc.tar.bz2
midipix_build-03a6372afeb96419da89a8100c95366f9ebe68cc.tar.xz
subr/{pkg,pkg_fetch}.subr: merges fetch{,_git}() into pkg_fetch.subr and introduces ${PKG_URLS_GIT}.
subr/pkg_extract.subr: only extract if ${PKG_URL} is set. var/build.vars: updated to use ${PKG_URLS_GIT}. vars/{cparser,gcc,libfirm,musl,perl}.vars: updated to call pkg_fetch() instead of fetch{,_git}(). vars/gcc.vars: cleanup pkgp_gcc_setup_env() and pkg_gcc_stage1_all().
Diffstat (limited to 'vars/gcc.vars')
-rw-r--r--vars/gcc.vars67
1 files changed, 40 insertions, 27 deletions
diff --git a/vars/gcc.vars b/vars/gcc.vars
index 0301e310..36383991 100644
--- a/vars/gcc.vars
+++ b/vars/gcc.vars
@@ -9,18 +9,22 @@ pkgp_gcc_setup_env() {
export cbb_ldflags_for_target=--sysroot=${PKG_PREFIX} \
cbb_sysroot_for_libgcc=${PKG_PREFIX} \
cbb_target=${PKG_TARGET};
- case ${1} in
- stage1) export cbb_neutral_libiberty=no;
- if [ "${PKG_TARGET}" = "x86_64-w64-mingw32" ]; then
- export cbb_xgcc_for_specs=${PKG_TARGET}-gcc;
- else
- export cbb_xgcc_for_specs=${WORKDIR}/${PKG_BUILD_DIR}/gcc/xgcc;
- fi; ;;
- native) export cbb_xgcc_for_specs=${PKG_TARGET}-gcc \
- sysroot_headers_suffix=${PKG_PREFIX};
+ case ${PKG_NAME} in
+ gcc_stage1)
+ export cbb_neutral_libiberty=no \
+ cbb_xgcc_for_specs=${WORKDIR}/${PKG_BUILD_DIR}/gcc/xgcc; ;;
+ gcc_stage1_cross_x86_64_w64_mingw32)
+ export cbb_neutral_libiberty=no \
+ cbb_xgcc_for_specs=${WORKDIR}/${PKG_BUILD_DIR}/gcc/xgcc; ;;
+ gcc_stage1_native_x86_64_w64_mingw32)
+ export cbb_neutral_libiberty=no \
+ cbb_xgcc_for_specs=${PKG_TARGET}-gcc; ;;
+ gcc_native)
+ export cbb_xgcc_for_specs=${PKG_TARGET}-gcc \
+ sysroot_headers_suffix=${PKG_PREFIX}; ;;
esac;
GCCTARGET_FLAGS="-DIN_TARGET_LIBRARY_BUILD --sysroot=${PKG_PREFIX}";
- GCCFLAGS="${CFLAGS:+${CFLAGS} }--include $(readlink -f ${WORKDIR}/cbb-gcc-${2}/libc/cbb-musl-pe.h)";
+ GCCFLAGS="${CFLAGS:+${CFLAGS} }--include $(readlink -f ${WORKDIR}/cbb-gcc-${1}/libc/cbb-musl-pe.h)";
for __ in CFLAGS CFLAGS_FOR_BUILD CPPFLAGS_FOR_BUILD CXXFLAGS CXXFLAGS_FOR_BUILD; do
export "${__}=${GCCFLAGS}";
done;
@@ -87,16 +91,27 @@ pkg_gcc_stage1_all() {
esac;
# GCC, stage1.
if ! is_build_script_done fetch; then
- fetch_git cbb-gcc-${PKG_GCC_VERSION} \
- ${GITROOT}/cbb/cbb-gcc-${PKG_GCC_VERSION};
+ pkg_fetch -git "cbb-gcc-${PKG_GCC_VERSION}=${GITROOT}/cbb/cbb-gcc-${PKG_GCC_VERSION}";
set_build_script_done fetch -configure;
fi;
- pkgp_gcc_setup_env stage1 "${PKG_GCC_VERSION}";
+ pkgp_gcc_setup_env ${PKG_GCC_VERSION};
if ! is_build_script_done configure; then
insecure_mkdir ${PKG_PREFIX}/include;
[ \! -d ${PKG_PREFIX}/usr ] && \
ln -s -- . ${PKG_PREFIX}/usr;
- if [ "${PKG_TARGET}" = "x86_64-w64-mingw32" ]; then
+ case ${PKG_NAME} in
+ gcc_stage1)
+ pkgp_gcc_configure \
+ --disable-sjlj-exceptions \
+ --prefix=${PREFIX} \
+ --with-sysroot=${PREFIX}/${PKG_TARGET}; ;;
+ gcc_stage1_cross_x86_64_w64_mingw32)
+ pkgp_gcc_configure \
+ --enable-sjlj-exceptions \
+ --prefix=${PREFIX} \
+ --with-sysroot=${PREFIX}/${PKG_TARGET} \
+ --without-headers; ;;
+ gcc_stage1_native_x86_64_w64_mingw32)
patch -b -d cbb-gcc-4.6.4 -p1 < ${MIDIPIX_BUILD_PWD}/patches/${PKG_NAME}.local.patch;
pkgp_gcc_configure \
--build=x86_64-unknown-linux-gnu \
@@ -108,13 +123,8 @@ pkg_gcc_stage1_all() {
--with-mpc=${PKG_PREFIX} \
--with-mpfr=${PKG_PREFIX} \
--with-sysroot= \
- --without-headers;
- else
- pkgp_gcc_configure \
- --disable-sjlj-exceptions \
- --prefix=${PREFIX} \
- --with-sysroot=${PREFIX}/${PKG_TARGET};
- fi;
+ --without-headers; ;;
+ esac;
else
cd ${PKG_BUILD_DIR};
fi;
@@ -127,11 +137,14 @@ pkg_gcc_stage1_all() {
set_build_script_done build -install;
fi;
if ! is_build_script_done install; then
- if [ "${PKG_TARGET}" = "x86_64-w64-mingw32" ]; then
- make ${MAKEFLAGS} DESTDIR=${PKG_PREFIX} install-gcc;
- else
- make ${MAKEFLAGS} install-gcc;
- fi;
+ case ${PKG_NAME} in
+ gcc_stage1)
+ make ${MAKEFLAGS} install-gcc; ;;
+ gcc_stage1_cross_x86_64_w64_mingw32)
+ make ${MAKEFLAGS} install-gcc; ;;
+ gcc_stage1_native_x86_64_w64_mingw32)
+ make ${MAKEFLAGS} DESTDIR=${PKG_PREFIX} install-gcc; ;;
+ esac;
__="$(uname -s)";
if [ "${__#*CYGWIN*}" != "${__}" ]; then
ln -s -- ${PREFIX}/libexec/gcc/${PKG_TARGET}/${PKG_GCC_VERSION}/liblto_plugin.dll.a \
@@ -191,7 +204,7 @@ pkg_gcc_native_all() {
export MAKE="make LIBTOOL=slibtool";
# GCC, native.
set_build_dir cbb-gcc-${PKG_GCC_VERSION} native;
- pkgp_gcc_setup_env native "${PKG_GCC_VERSION}";
+ pkgp_gcc_setup_env ${PKG_GCC_VERSION};
if ! is_build_script_done configure; then
insecure_mkdir ${PKG_PREFIX}/${PKG_TARGET};
if [ \! -d ${PKG_PREFIX}/${PKG_TARGET}/usr ]; then