diff options
author | Lucio Andrés Illanes Albornoz (arab, vxp) <l.illanes@gmx.de> | 2017-02-01 00:35:43 +0000 |
---|---|---|
committer | Lucio Andrés Illanes Albornoz (arab, vxp) <l.illanes@gmx.de> | 2017-02-01 01:27:04 +0000 |
commit | 03a6372afeb96419da89a8100c95366f9ebe68cc (patch) | |
tree | bb994263b3afd55f4c7dd7c9a1b8381317baad81 /vars/gcc.vars | |
parent | f937121616866517e54f27e4e8d806c70f288ab8 (diff) | |
download | midipix_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.vars | 67 |
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 |