Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 12 Feb 2015 15:00:32 +0000 (UTC)
From:      "Lev A. Serebryakov" <lev@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r378878 - in head/devel: gcc-arm-embedded gcc-arm-embedded/files libopencm3
Message-ID:  <201502121500.t1CF0Wxe029748@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: lev
Date: Thu Feb 12 15:00:31 2015
New Revision: 378878
URL: https://svnweb.freebsd.org/changeset/ports/378878
QAT: https://qat.redports.org/buildarchive/r378878/

Log:
   Update official bare metal ARM toolchain to latest release from 4.9 branch.

Modified:
  head/devel/gcc-arm-embedded/Makefile
  head/devel/gcc-arm-embedded/distinfo
  head/devel/gcc-arm-embedded/files/Makefile
  head/devel/gcc-arm-embedded/files/extra-patch-gcc-isl-0.13-compatibility
  head/devel/gcc-arm-embedded/pkg-plist
  head/devel/libopencm3/Makefile

Modified: head/devel/gcc-arm-embedded/Makefile
==============================================================================
--- head/devel/gcc-arm-embedded/Makefile	Thu Feb 12 14:33:09 2015	(r378877)
+++ head/devel/gcc-arm-embedded/Makefile	Thu Feb 12 15:00:31 2015	(r378878)
@@ -1,10 +1,10 @@
 # $FreeBSD$
 
 PORTNAME=	gcc-arm-embedded
-PORTVERSION=	4.8.20140805
-PORTREVISION=	1
+PORTVERSION=	4.9.20141203
+PORTREVISION=	0
 CATEGORIES=	devel
-MASTER_SITES=	http://launchpad.net/gcc-arm-embedded/4.8/4.8-2014-q3-update/+download/
+MASTER_SITES=	http://launchpad.net/gcc-arm-embedded/4.9/4.9-2014-q4-major/+download/
 DISTNAME=	${ORIGINAL_PACKAGE_NAME}-src
 
 MAINTAINER=	lev@FreeBSD.org
@@ -13,12 +13,13 @@ COMMENT=	Complete gcc-based toolcahin fo
 LICENSE=	GPLv2 LGPL20 LGPL21 GPLv3 LGPL3
 LICENSE_COMB=	multi
 
-OPTIONS_DEFINE=	PURE EXAMPLES HTML PDF DOCS SILENT
-OPTIONS_DEFAULT=EXAMPLES
+OPTIONS_DEFINE=	PURE PYGDB EXAMPLES HTML PDF DOCS
+OPTIONS_DEFAULT=EXAMPLES PYGDB
 PURE_DESC=	Use all libraries from bundle, do not depend on anything
 HTML_DESC=	Install HTML documentation
 PDF_DESC=	Install PDF documentation (requires TeX, it is huge)
-SILENT_DESC=	Don't spam screen with build logs
+PYGDB_DESC=	Build and install pyhon-enabled gdb in addition to standard one
+
 
 PURE_EXTRA_PATCHES_OFF=	${PATCHDIR}/extra-patch-gcc-isl-0.13-compatibility
 PURE_LIB_DEPENDS_OFF=	\
@@ -33,27 +34,31 @@ PURE_LIB_DEPENDS_OFF=	\
 PDF_USE=		TEX=base:build,tex:build
 PDF_BUILD_DEPENDS=	texi2dvi:${PORTSDIR}/print/texinfo
 OPTIONS_SUB=		yes
+PYGDB_USES=		python:2
+
+USES=			bison compiler gmake iconv makeinfo tar:bzip2
 
-USES=		bison compiler gmake iconv makeinfo tar:bzip2
 GNU_CONFIGURE=	yes
 
 PATCH_WRKSRC=		${WRKDIR}/${ORIGINAL_PACKAGE_NAME}
 
 BUILD_WRKSRC=	${WRKDIR}
 
-FULL_VERSION=		4_8-2014q3-20140805
+GCC_VERSION=		4.9.3
+FULL_VERSION=		4_9-2014q4-20141203
 TARGET=			arm-none-eabi
 ORIGINAL_PACKAGE_NAME=	gcc-${TARGET}-${FULL_VERSION}
 
 INFO_PATH=	${PORTNAME}-${FULL_VERSION}/share/doc/gcc-${TARGET}/info
 INFO=		annotate as bfd binutils configure cpp cppinternals gcc \
-		gccinstall gccint gdb gdbint gprof ld stabs standards
+		gccinstall gccint gdb gprof ld stabs standards
 
 MANPREFIX=	${PREFIX}/${PORTNAME}-${FULL_VERSION}/${DOCS_SUFFIX}
 DOCSDIR=	${PREFIX}/${PORTNAME}-${FULL_VERSION}/${DOCS_SUFFIX}
 EXAMPLESDIR=	${PREFIX}/${PORTNAME}-${FULL_VERSION}/share/gcc-${TARGET}/samples
 
-PLIST_SUB+=	TARGET=${TARGET} FULL_VERSION=${FULL_VERSION}
+PLIST_SUB+=	TARGET=${TARGET} FULL_VERSION=${FULL_VERSION} \
+		GCC_VERSION=${GCC_VERSION}
 
 DOCS_SUFFIX=	share/doc/gcc-${TARGET}
 SRC_DIR=	${WRKDIR}/${ORIGINAL_PACKAGE_NAME}/src
@@ -61,10 +66,10 @@ BUILD_DIR=	${WRKDIR}/build
 INTERIM_WORLD=	${WRKDIR}/install
 INTERIM_PREFIX=	${INTERIM_WORLD}/${PORTNAME}-${FULL_VERSION}
 
-BUNDLED_LIBS=			EXPAT:gz ZLIB:bz2 LIBELF:gz \
+BUNDLED_LIBS=			EXPAT:gz ZLIB:gz LIBELF:gz \
 				GMP:bz2 MPFR:bz2 MPC:gz ISL:bz2 CLOOG:gz
 BUNDLED_VERSION_EXPAT=		2.0.1
-BUNDLED_VERSION_ZLIB=		1.2.5
+BUNDLED_VERSION_ZLIB=		1.2.8
 BUNDLED_VERSION_LIBELF=		0.8.13
 BUNDLED_VERSION_GMP=		4.3.2
 BUNDLED_VERSION_MPFR=		2.4.2
@@ -76,11 +81,11 @@ BUNDLED_VERSION_CLOOG=		0.18.0
 VAR_TO_SUBMAKE=	BUILD_DIR CC CFLAGS CHOSEN_COMPILER_TYPE CONFIG_SITE \
 		CONFIGURE_MAX_CMD_LEN CONFIGURE_SHELL CP CPP CPPFLAGS CXX \
 		CXXFLAGS DOCS_SUFFIX ECHO_MSG EXAMPLESDIR FILE FIND GMAKE \
-		GREP MAKE_CMD MAKE_SHELL PATCH \
+		GCC_VERSION GREP MAKE_CMD MAKE_SHELL PATCH \
 		INSTALL_MACROS INTERIM_PREFIX INTERIM_WORLD LD LDFLAGS LIBDIR \
 		LN LOCALBASE MAKE_JOBS_NUMBER MKDIR ORIGINAL_PACKAGE_NAME \
-		PORT_OPTIONS PREFIX RM SED SH SRC_DIR STRIP_CMD TAR TARGET \
-		WRKDIR
+		PORT_OPTIONS PREFIX PYTHON_CMD RM SED SH SRC_DIR STRIP_CMD TAR \
+		TARGET WRKDIR
 
 VAR_TO_SUBMAKE_NOEXPAND=	CONFIGURE_ENV MAKE_ENV
 
@@ -97,14 +102,10 @@ post-extract:
 	@${TAR} -xf ${SRC_DIR}/binutils.tar.bz2 -C ${SRC_DIR}
 	@${ECHO_MSG} "====>  Extracting bundled gcc"
 	@${TAR} -xf ${SRC_DIR}/gcc.tar.bz2 -C ${SRC_DIR}
-	@${ECHO_MSG} "====>  Extracting bundled gcc plugins"
-	@${TAR} -xf ${SRC_DIR}/gcc-plugins.tar.bz2 -C ${SRC_DIR}
 	@${ECHO_MSG} "====>  Extracting bundled gdb"
 	@${TAR} -xf ${SRC_DIR}/gdb.tar.bz2 -C ${SRC_DIR}
 	@${ECHO_MSG} "====>  Extracting bundled newlib"
 	@${TAR} -xf ${SRC_DIR}/newlib.tar.bz2 -C ${SRC_DIR}
-	@${ECHO_MSG} "====>  Extracting bundled newlib-nano"
-	@${TAR} -xf ${SRC_DIR}/newlib-nano-2.1.tar.bz2 -C ${SRC_DIR}
 
 do-configure:
 	@${RM} -rf ${BUILD_DIR}

Modified: head/devel/gcc-arm-embedded/distinfo
==============================================================================
--- head/devel/gcc-arm-embedded/distinfo	Thu Feb 12 14:33:09 2015	(r378877)
+++ head/devel/gcc-arm-embedded/distinfo	Thu Feb 12 15:00:31 2015	(r378878)
@@ -1,2 +1,2 @@
-SHA256 (gcc-arm-none-eabi-4_8-2014q3-20140805-src.tar.bz2) = 09519946642d5366ab739a89d3388b2ea333cd7dc50192bab3736a9593af83e6
-SIZE (gcc-arm-none-eabi-4_8-2014q3-20140805-src.tar.bz2) = 151695515
+SHA256 (gcc-arm-none-eabi-4_9-2014q4-20141203-src.tar.bz2) = a439b387556bd4a128d78e92e57455c1cc7c63510c28e4236ab074849a0ca663
+SIZE (gcc-arm-none-eabi-4_9-2014q4-20141203-src.tar.bz2) = 161884321

Modified: head/devel/gcc-arm-embedded/files/Makefile
==============================================================================
--- head/devel/gcc-arm-embedded/files/Makefile	Thu Feb 12 14:33:09 2015	(r378877)
+++ head/devel/gcc-arm-embedded/files/Makefile	Thu Feb 12 15:00:31 2015	(r378878)
@@ -14,21 +14,10 @@ WORLD_LIB=${INTERIM_WORLD}
 WORLD_LIB=${LOCALBASE}
 .endif
 
-.if ${PORT_OPTIONS:MSILENT}
-LOG_PRE1=>
-LOG_PREn=>>
-LOG_POST=2>&1
-.else
-LOG_PRE1=2>&1 | tee
-LOG_PREn=2>&1 | tee -a
-LOG_POST=
-.endif
-
 LDFLAGS+=	-L${WORLD_LIB}/lib
 
 .if ${CHOSEN_COMPILER_TYPE} == clang
-CFLAGS+=	-Wno-error
-CXXFLAGS+=	-Wno-error
+MAKE_ARGS+=     CFLAGS="-Wno-error -fbracket-depth=512" CXXFLAGS="-Wno-error -fbracket-depth=512"
 .endif
 
 MISC_DOCS=	license.txt readme.txt release.txt
@@ -48,14 +37,41 @@ PREREQUISITES=
 ISL_CHECK_VERSION=	--disable-isl-version-check
 .endif
 
+.if ${PORT_OPTIONS:MPYGDB}
+_pygdb=		build-pygdb
+.else
+_pygdb=
+.endif
+
+COMMON_GDB_CONFIGURE_ARGS= \
+	 --target=${TARGET} \
+	 --prefix=${INTERIM_PREFIX} \
+	 --infodir=${DOC_PREFIX}/info \
+	 --mandir=${DOC_PREFIX}/man \
+	 --htmldir=${DOC_PREFIX}/html \
+	 --pdfdir=${DOC_PREFIX}/pdf \
+	 --disable-nls \
+	 --disable-sim \
+	 --disable-gas \
+	 --disable-binutils \
+	 --disable-ld \
+	 --disable-gprof \
+	 --with-libexpat \
+	 --with-libexpat-prefix=${WORLD_LIB} \
+	 --with-lzma=no \
+	 --with-system-gdbinit=${INTERIM_PREFIX}/xxxx/${TARGET}/lib/gdbinit \
+	 --with-lzma=no \
+	 --with-gdb-datadir='$${prefix}/${TARGET}/share/gdb' \
+	 --with-pkgversion="${PKGVERSION}"
+
 ALL_BUILD=	build-binutils \
 		build-gcc-first \
 		build-newlib \
 		build-newlib-nano \
 		build-gcc-final \
-		build-gcc-plugins \
 		build-libstdcxx \
 		build-gdb  \
+		${_pygdb} \
 		install-samples \
 		install-misc \
 		strip-binaries \
@@ -67,89 +83,86 @@ all: ${PREREQUISITES} ${ALL_BUILD}
 
 expat:
 	@${ECHO_MSG} "====>  Build expat (log file: ${WRKDIR}/expat.log)"
-	@${RM} -rf ${BUILD_PREFIX}/expat ${LOG_PRE1} ${WRKDIR}/expat.log ${LOG_POST}
-	@${MKDIR} ${BUILD_PREFIX}/expat ${LOG_PREn} ${WRKDIR}/expat.log ${LOG_POST}
+	@${RM} -rf ${BUILD_PREFIX}/expat > ${WRKDIR}/expat.log 2>&1
+	@${MKDIR} ${BUILD_PREFIX}/expat >> ${WRKDIR}/expat.log 2>&1
 	@${ECHO_MSG} "=====>  Configure"
 	@cd ${BUILD_PREFIX}/expat && \
 	 ${MAKE_ENV} ${CONFIGURE_ENV} ${SRC_DIR}/expat-${BUNDLED_VERSION_EXPAT}/configure \
 	 --prefix=${INTERIM_WORLD} \
 	 --disable-shared \
-	 --disable-nls ${LOG_PREn} ${WRKDIR}/expat.log ${LOG_POST}
+	 --disable-nls >> ${WRKDIR}/expat.log 2>&1
 	@${ECHO_MSG} "=====>  Build"
-	@${MAKE_ENV} ${MAKE_CMD} -j${MAKE_JOBS_NUMBER} -C ${BUILD_PREFIX}/expat all ${LOG_PREn} ${WRKDIR}/expat.log ${LOG_POST}
+	@${MAKE_ENV} ${MAKE_CMD} -j${MAKE_JOBS_NUMBER} -C ${BUILD_PREFIX}/expat all ${MAKE_ARGS} >> ${WRKDIR}/expat.log 2>&1
 	@${ECHO_MSG} "=====>  Install into intermediate directory"
-	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/expat install ${LOG_PREn} ${WRKDIR}/expat.log ${LOG_POST}
+	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/expat install ${MAKE_ARGS} >> ${WRKDIR}/expat.log 2>&1
 
 zlib:
 	@${ECHO_MSG} "====>  Build zlib (log file: ${WRKDIR}/zlib.log)"
-	@${RM} -rf ${BUILD_PREFIX}/zlib ${LOG_PRE1} ${WRKDIR}/zlib.log ${LOG_POST}
-	@${MKDIR} ${BUILD_PREFIX}/zlib ${LOG_PREn} ${WRKDIR}/zlib.log ${LOG_POST}
+	@${RM} -rf ${BUILD_PREFIX}/zlib > ${WRKDIR}/zlib.log 2>&1
+	@${MKDIR} ${BUILD_PREFIX}/zlib >> ${WRKDIR}/zlib.log 2>&1
 	@${ECHO_MSG} "=====>  Copy to build dir"
-	@${TAR} -cf - -C ${SRC_DIR}/zlib-${BUNDLED_VERSION_ZLIB} . | ${TAR} -xf - -C ${BUILD_PREFIX}/zlib ${LOG_PREn} ${WRKDIR}/zlib.log ${LOG_POST}
-	@${ECHO_MSG} "=====>  Patch"
-	@cd ${BUILD_PREFIX}/zlib && \
-	 ${PATCH} -p1 < ${SRC_DIR}/zlib-${BUNDLED_VERSION_ZLIB}.patch ${LOG_PREn} ${WRKDIR}/zlib.log ${LOG_POST}
+	@${TAR} -cf - -C ${SRC_DIR}/zlib-${BUNDLED_VERSION_ZLIB} . | ${TAR} -xf - -C ${BUILD_PREFIX}/zlib >> ${WRKDIR}/zlib.log 2>&1
 	@${ECHO_MSG} "=====>  Configure"
 	@cd ${BUILD_PREFIX}/zlib && \
 	 ${MAKE_ENV} ${CONFIGURE_ENV} ./configure \
 	 --static \
-	 --prefix=${INTERIM_WORLD} ${LOG_PREn} ${WRKDIR}/zlib.log ${LOG_POST}
+	 --prefix=${INTERIM_WORLD} >> ${WRKDIR}/zlib.log 2>&1
 	@${ECHO_MSG} "=====>  Build"
-	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/zlib ${LOG_PREn} ${WRKDIR}/zlib.log ${LOG_POST}
+	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/zlib ${MAKE_ARGS} >> ${WRKDIR}/zlib.log 2>&1
 	@${ECHO_MSG} "=====>  Install into intermediate directory"
-	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/zlib install ${LOG_PREn} ${WRKDIR}/zlib.log ${LOG_POST}
+	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/zlib install ${MAKE_ARGS} >> ${WRKDIR}/zlib.log 2>&1
 
 libelf:
 	@${ECHO_MSG} "====>  Build libelf (log file: ${WRKDIR}/libelf.log)"
-	@${RM} -rf ${BUILD_PREFIX}/libelf ${LOG_PRE1} ${WRKDIR}/libelf.log ${LOG_POST}
-	@${MKDIR} ${BUILD_PREFIX}/libelf ${LOG_PREn} ${WRKDIR}/libelf.log ${LOG_POST}
+	@${RM} -rf ${BUILD_PREFIX}/libelf > ${WRKDIR}/libelf.log 2>&1
+	@${MKDIR} ${BUILD_PREFIX}/libelf >> ${WRKDIR}/libelf.log 2>&1
 	@${ECHO_MSG} "=====>  Configure"
 	@cd ${BUILD_PREFIX}/libelf && \
 	 ${MAKE_ENV} ${CONFIGURE_ENV} ${SRC_DIR}/libelf-${BUNDLED_VERSION_LIBELF}/configure \
 	 --prefix=${INTERIM_WORLD} \
 	 --disable-shared \
-	 --disable-nls ${LOG_PREn} ${WRKDIR}/libelf.log ${LOG_POST}
+	 --disable-nls >> ${WRKDIR}/libelf.log 2>&1
 	@${ECHO_MSG} "=====>  Build"
-	@${MAKE_ENV} ${MAKE_CMD} -j${MAKE_JOBS_NUMBER} -C ${BUILD_PREFIX}/libelf all ${LOG_PREn} ${WRKDIR}/libelf.log ${LOG_POST}
+	@${MAKE_ENV} ${MAKE_CMD} -j${MAKE_JOBS_NUMBER} -C ${BUILD_PREFIX}/libelf all ${MAKE_ARGS} >> ${WRKDIR}/libelf.log 2>&1
 	@${ECHO_MSG} "=====>  Install into intermediate directory"
-	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/libelf install ${LOG_PREn} ${WRKDIR}/libelf.log ${LOG_POST}
+	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/libelf install ${MAKE_ARGS} >> ${WRKDIR}/libelf.log 2>&1
 
 gmp:
 	@${ECHO_MSG} "====>  Build gmp (log file: ${WRKDIR}/gmp.log)"
-	@${RM} -rf ${BUILD_PREFIX}/gmp ${LOG_PRE1} ${WRKDIR}/gmp.log ${LOG_POST}
-	@${MKDIR} ${BUILD_PREFIX}/gmp ${LOG_PREn} ${WRKDIR}/gmp.log ${LOG_POST}
+	@${RM} -rf ${BUILD_PREFIX}/gmp > ${WRKDIR}/gmp.log 2>&1
+	@${MKDIR} ${BUILD_PREFIX}/gmp >> ${WRKDIR}/gmp.log 2>&1
 	@${ECHO_MSG} "=====>  Configure"
 	@cd ${BUILD_PREFIX}/gmp && \
 	 ${MAKE_ENV} ${CONFIGURE_ENV} ${SRC_DIR}/gmp-${BUNDLED_VERSION_GMP}/configure \
 	 --prefix=${INTERIM_WORLD} \
 	 --enable-cxx \
 	 --disable-shared \
-	 --disable-nls ${LOG_PREn} ${WRKDIR}/gmp.log ${LOG_POST}
+	 --disable-nls >> ${WRKDIR}/gmp.log 2>&1
 	@${ECHO_MSG} "=====>  Build"
-	@${MAKE_ENV} ${MAKE_CMD} -j${MAKE_JOBS_NUMBER} -C ${BUILD_PREFIX}/gmp all ${LOG_PREn} ${WRKDIR}/gmp.log ${LOG_POST}
+	@${MAKE_ENV} ${MAKE_CMD} -j${MAKE_JOBS_NUMBER} -C ${BUILD_PREFIX}/gmp all ${MAKE_ARGS} >> ${WRKDIR}/gmp.log 2>&1
 	@${ECHO_MSG} "=====>  Install into intermediate directory"
-	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/gmp install ${LOG_PREn} ${WRKDIR}/gmp.log ${LOG_POST}
+	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/gmp install ${MAKE_ARGS} >> ${WRKDIR}/gmp.log 2>&1
 
 mpfr:
 	@${ECHO_MSG} "====>  Build mpfr (log file: ${WRKDIR}/mpfr.log)"
-	@${RM} -rf ${BUILD_PREFIX}/mpfr ${LOG_PRE1} ${WRKDIR}/mpfr.log ${LOG_POST}
-	@${MKDIR} ${BUILD_PREFIX}/mpfr ${LOG_PREn} ${WRKDIR}/mpfr.log ${LOG_POST}
+	@${RM} -rf ${BUILD_PREFIX}/mpfr > ${WRKDIR}/mpfr.log 2>&1
+	@${MKDIR} ${BUILD_PREFIX}/mpfr >> ${WRKDIR}/mpfr.log 2>&1
 	@${ECHO_MSG} "=====>  Configure"
 	@cd ${BUILD_PREFIX}/mpfr && \
 	 ${MAKE_ENV} ${CONFIGURE_ENV} ${SRC_DIR}/mpfr-${BUNDLED_VERSION_MPFR}/configure \
 	 --prefix=${INTERIM_WORLD} \
 	 --with-gmp=${INTERIM_WORLD} \
 	 --disable-shared \
-	 --disable-nls ${LOG_PREn} ${WRKDIR}/mpfr.log ${LOG_POST}
+	 --disable-nls >> ${WRKDIR}/mpfr.log 2>&1
 	@${ECHO_MSG} "=====>  Build"
-	@${MAKE_ENV} ${MAKE_CMD} -j${MAKE_JOBS_NUMBER} -C ${BUILD_PREFIX}/mpfr all ${LOG_PREn} ${WRKDIR}/mpfr.log ${LOG_POST}
+	@${MAKE_ENV} ${MAKE_CMD} -j${MAKE_JOBS_NUMBER} -C ${BUILD_PREFIX}/mpfr all ${MAKE_ARGS} >> ${WRKDIR}/mpfr.log 2>&1
 	@${ECHO_MSG} "=====>  Install into intermediate directory"
-	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/mpfr install ${LOG_PREn} ${WRKDIR}/mpfr.log ${LOG_POST}
+	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/mpfr install ${MAKE_ARGS} >> ${WRKDIR}/mpfr.log 2>&1
 
 mpc:
 	@${ECHO_MSG} "====>  Build mpc (log file: ${WRKDIR}/mpc.log)"
-	@${RM} -rf ${BUILD_PREFIX}/mpc ${LOG_PRE1} ${WRKDIR}/mpc.log ${LOG_POST}
-	@${MKDIR} ${BUILD_PREFIX}/mpc ${LOG_PREn} ${WRKDIR}/mpc.log ${LOG_POST}
+	@${RM} -rf ${BUILD_PREFIX}/mpc > ${WRKDIR}/mpc.log 2>&1
+	@${MKDIR} ${BUILD_PREFIX}/mpc >> ${WRKDIR}/mpc.log 2>&1
 	@${ECHO_MSG} "=====>  Configure"
 	@cd ${BUILD_PREFIX}/mpc && \
 	 ${MAKE_ENV} ${CONFIGURE_ENV} ${SRC_DIR}/mpc-${BUNDLED_VERSION_MPC}/configure \
@@ -157,32 +170,32 @@ mpc:
 	 --with-gmp=${INTERIM_WORLD} \
 	 --with-mpfr=${INTERIM_WORLD} \
 	 --disable-shared \
-	 --disable-nls ${LOG_PREn} ${WRKDIR}/mpc.log ${LOG_POST}
+	 --disable-nls >> ${WRKDIR}/mpc.log 2>&1
 	@${ECHO_MSG} "=====>  Build"
-	@${MAKE_ENV} ${MAKE_CMD} -j${MAKE_JOBS_NUMBER} -C ${BUILD_PREFIX}/mpc all ${LOG_PREn} ${WRKDIR}/mpc.log ${LOG_POST}
+	@${MAKE_ENV} ${MAKE_CMD} -j${MAKE_JOBS_NUMBER} -C ${BUILD_PREFIX}/mpc all ${MAKE_ARGS} >> ${WRKDIR}/mpc.log 2>&1
 	@${ECHO_MSG} "=====>  Install into intermediate directory"
-	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/mpc install ${LOG_PREn} ${WRKDIR}/mpc.log ${LOG_POST}
+	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/mpc install ${MAKE_ARGS} >> ${WRKDIR}/mpc.log 2>&1
 
 isl:
 	@${ECHO_MSG} "====>  Build isl (log file: ${WRKDIR}/isl.log)"
-	@${RM} -rf ${BUILD_PREFIX}/isl ${LOG_PRE1} ${WRKDIR}/isl.log ${LOG_POST}
-	@${MKDIR} ${BUILD_PREFIX}/isl ${LOG_PREn} ${WRKDIR}/isl.log ${LOG_POST}
+	@${RM} -rf ${BUILD_PREFIX}/isl > ${WRKDIR}/isl.log 2>&1
+	@${MKDIR} ${BUILD_PREFIX}/isl >> ${WRKDIR}/isl.log 2>&1
 	@${ECHO_MSG} "=====>  Configure"
 	@cd ${BUILD_PREFIX}/isl && \
 	 ${MAKE_ENV} ${CONFIGURE_ENV} ${SRC_DIR}/isl-${BUNDLED_VERSION_ISL}/configure \
 	 --prefix=${INTERIM_WORLD} \
 	 --with-gmp-prefix=${INTERIM_WORLD} \
 	 --disable-shared \
-	 --disable-nls ${LOG_PREn} ${WRKDIR}/isl.log ${LOG_POST}
+	 --disable-nls >> ${WRKDIR}/isl.log 2>&1
 	@${ECHO_MSG} "=====>  Build"
-	@${MAKE_ENV} ${MAKE_CMD} -j${MAKE_JOBS_NUMBER} -C ${BUILD_PREFIX}/isl all ${LOG_PREn} ${WRKDIR}/isl.log ${LOG_POST}
+	@${MAKE_ENV} ${MAKE_CMD} -j${MAKE_JOBS_NUMBER} -C ${BUILD_PREFIX}/isl all ${MAKE_ARGS} >> ${WRKDIR}/isl.log 2>&1
 	@${ECHO_MSG} "=====>  Install into intermediate directory"
-	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/isl install ${LOG_PREn} ${WRKDIR}/isl.log ${LOG_POST}
+	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/isl install ${MAKE_ARGS} >> ${WRKDIR}/isl.log 2>&1
 
 cloog:
 	@${ECHO_MSG} "====>  Build cloog (log file: ${WRKDIR}/cloog.log)"
-	@${RM} -rf ${BUILD_PREFIX}/cloog ${LOG_PRE1} ${WRKDIR}/cloog.log ${LOG_POST}
-	@${MKDIR} ${BUILD_PREFIX}/cloog ${LOG_PREn} ${WRKDIR}/cloog.log ${LOG_POST}
+	@${RM} -rf ${BUILD_PREFIX}/cloog > ${WRKDIR}/cloog.log 2>&1
+	@${MKDIR} ${BUILD_PREFIX}/cloog >> ${WRKDIR}/cloog.log 2>&1
 	@${ECHO_MSG} "=====>  Configure"
 	@cd ${BUILD_PREFIX}/cloog && \
 	 ${MAKE_ENV} ${CONFIGURE_ENV} ${SRC_DIR}/cloog-${BUNDLED_VERSION_CLOOG}/configure \
@@ -191,16 +204,16 @@ cloog:
 	 --with-gmp-prefix=${INTERIM_WORLD} \
 	 --with-isl-prefix=${INTERIM_WORLD} \
 	 --disable-shared \
-	 --disable-nls ${LOG_PREn} ${WRKDIR}/cloog.log ${LOG_POST}
+	 --disable-nls >> ${WRKDIR}/cloog.log 2>&1
 	@${ECHO_MSG} "=====>  Build"
-	@${MAKE_ENV} ${MAKE_CMD} -j${MAKE_JOBS_NUMBER} -C ${BUILD_PREFIX}/cloog all ${LOG_PREn} ${WRKDIR}/cloog.log ${LOG_POST}
+	@${MAKE_ENV} ${MAKE_CMD} -j${MAKE_JOBS_NUMBER} -C ${BUILD_PREFIX}/cloog all ${MAKE_ARGS} >> ${WRKDIR}/cloog.log 2>&1
 	@${ECHO_MSG} "=====>  Install into intermediate directory"
-	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/cloog install ${LOG_PREn} ${WRKDIR}/cloog.log ${LOG_POST}
+	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/cloog install ${MAKE_ARGS} >> ${WRKDIR}/cloog.log 2>&1
 
 build-binutils:
 	@${ECHO_MSG} "====>  Build binutils (log file: ${WRKDIR}/binutils.log)"
-	@${RM} -rf ${BUILD_PREFIX}/binutils ${LOG_PRE1} ${WRKDIR}/binutils.log ${LOG_POST}
-	@${MKDIR} ${BUILD_PREFIX}/binutils ${LOG_PREn} ${WRKDIR}/binutils.log ${LOG_POST}
+	@${RM} -rf ${BUILD_PREFIX}/binutils > ${WRKDIR}/binutils.log 2>&1
+	@${MKDIR} ${BUILD_PREFIX}/binutils >> ${WRKDIR}/binutils.log 2>&1
 	@${ECHO_MSG} "=====>  Configure"
 	@cd ${BUILD_PREFIX}/binutils && \
 	 ${MAKE_ENV} ${CONFIGURE_ENV} ${SRC_DIR}/binutils/configure \
@@ -211,35 +224,36 @@ build-binutils:
 	 --htmldir=${DOC_PREFIX}/html \
 	 --pdfdir=${DOC_PREFIX}/pdf \
 	 --disable-nls \
+	 --enable-interwork \
 	 --enable-plugins \
 	 --with-sysroot=${INTERIM_PREFIX}/${TARGET} \
-	 --with-pkgversion="${PKGVERSION}" ${LOG_PREn} ${WRKDIR}/binutils.log ${LOG_POST}
+	 --with-pkgversion="${PKGVERSION}" >> ${WRKDIR}/binutils.log 2>&1
 	@${ECHO_MSG} "=====>  Build"
-	@${MAKE_ENV} ${MAKE_CMD} -j${MAKE_JOBS_NUMBER} -C ${BUILD_PREFIX}/binutils all ${LOG_PREn} ${WRKDIR}/binutils.log ${LOG_POST}
+	@${MAKE_ENV} ${MAKE_CMD} -j${MAKE_JOBS_NUMBER} -C ${BUILD_PREFIX}/binutils all ${MAKE_ARGS} >> ${WRKDIR}/binutils.log 2>&1
 	@${ECHO_MSG} "=====>  Install into stage directory"
-	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/binutils install ${LOG_PREn} ${WRKDIR}/binutils.log ${LOG_POST}
+	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/binutils install ${MAKE_ARGS} >> ${WRKDIR}/binutils.log 2>&1
 	@${ECHO_MSG} "=====>  Prepare working area for library builds"
-	@${MKDIR} ${BUILD_PREFIX}/target-libs ${LOG_PREn} ${WRKDIR}/binutils.log ${LOG_POST}
-	@${TAR} -cf - -C ${INTERIM_PREFIX} . | ${TAR} -xf - -C ${BUILD_PREFIX}/target-libs ${LOG_PREn} ${WRKDIR}/binutils.log ${LOG_POST}
+	@${MKDIR} ${BUILD_PREFIX}/target-libs >> ${WRKDIR}/binutils.log 2>&1
+	@${TAR} -cf - -C ${INTERIM_PREFIX} . | ${TAR} -xf - -C ${BUILD_PREFIX}/target-libs >> ${WRKDIR}/binutils.log 2>&1
 .if ${PORT_OPTIONS:MHTML} && ${PORT_OPTIONS:MDOCS}
 	@${ECHO_MSG} "=====>  Build HTML documentation"
-	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/binutils html ${LOG_PREn} ${WRKDIR}/binutils.log ${LOG_POST}
+	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/binutils html ${MAKE_ARGS} >> ${WRKDIR}/binutils.log 2>&1
 	@${ECHO_MSG} "=====>  Install HTML documentation into stage directory"
-	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/binutils install-html ${LOG_PREn} ${WRKDIR}/binutils.log ${LOG_POST}
+	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/binutils install-html ${MAKE_ARGS} >> ${WRKDIR}/binutils.log 2>&1
 .endif
 .if ${PORT_OPTIONS:MPDF} && ${PORT_OPTIONS:MDOCS}
 	@${ECHO_MSG} "=====>  Build PDF documentation"
-	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/binutils pdf ${LOG_PREn} ${WRKDIR}/binutils.log ${LOG_POST}
+	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/binutils pdf ${MAKE_ARGS} >> ${WRKDIR}/binutils.log 2>&1
 	@${ECHO_MSG} "=====>  Install PDF documentation into stage directory"
-	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/binutils install-pdf ${LOG_PREn} ${WRKDIR}/binutils.log ${LOG_POST}
+	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/binutils install-pdf ${MAKE_ARGS} >> ${WRKDIR}/binutils.log 2>&1
 .endif
 	@${ECHO_MSG} "=====>  Cleanup installation"
-	@${RM} -rf ${INTERIM_PREFIX}/lib ${LOG_PREn} ${WRKDIR}/binutils.log ${LOG_POST}
+	@${RM} -rf ${INTERIM_PREFIX}/lib >> ${WRKDIR}/binutils.log 2>&1
 
 build-gcc-first:
 	@${ECHO_MSG} "====>  Build preliminary gcc (log file: ${WRKDIR}/gcc-first.log)"
-	@${RM} -rf ${BUILD_PREFIX}/gcc-first ${LOG_PRE1} ${WRKDIR}/gcc-first.log ${LOG_POST}
-	@${MKDIR} ${BUILD_PREFIX}/gcc-first ${LOG_PREn} ${WRKDIR}/gcc-first.log ${LOG_POST}
+	@${RM} -rf ${BUILD_PREFIX}/gcc-first > ${WRKDIR}/gcc-first.log 2>&1
+	@${MKDIR} ${BUILD_PREFIX}/gcc-first >> ${WRKDIR}/gcc-first.log 2>&1
 	@${ECHO_MSG} "=====>  Configure"
 	@cd ${BUILD_PREFIX}/gcc-first && \
 	 ${MAKE_ENV} ${CONFIGURE_ENV} ${SRC_DIR}/gcc/configure \
@@ -276,19 +290,19 @@ build-gcc-first:
 	 --with-python-dir=share/gcc-${TARGET} \
 	 --with-sysroot=${INTERIM_PREFIX}/${TARGET} \
 	 --with-multilib-list=${MULTILIB_LIST} \
-	 --with-pkgversion="${PKGVERSION}" ${LOG_PREn} ${WRKDIR}/gcc-first.log ${LOG_POST}
+	 --with-pkgversion="${PKGVERSION}" >> ${WRKDIR}/gcc-first.log 2>&1
 	@${ECHO_MSG} "=====>  Build"
-	@${MAKE_ENV} ${MAKE_CMD} -j${MAKE_JOBS_NUMBER} -C ${BUILD_PREFIX}/gcc-first all ${LOG_PREn} ${WRKDIR}/gcc-first.log ${LOG_POST}
+	@${MAKE_ENV} ${MAKE_CMD} -j${MAKE_JOBS_NUMBER} -C ${BUILD_PREFIX}/gcc-first all ${MAKE_ARGS} >> ${WRKDIR}/gcc-first.log 2>&1
 	@${ECHO_MSG} "=====>  Install into stage directory"
-	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/gcc-first install-gcc ${LOG_PREn} ${WRKDIR}/gcc-first.log ${LOG_POST}
-	@${RM} -f ${INTERIM_PREFIX}/bin/${TARGET}-gccbug ${LOG_PREn} ${WRKDIR}/gcc-first.log ${LOG_POST}
-	@${RM} -f ${INTERIM_PREFIX}/lib/libiberty.a ${LOG_PREn} ${WRKDIR}/gcc-first.log ${LOG_POST}
-	@${RM} -rf ${INTERIM_PREFIX}/include ${LOG_PREn} ${WRKDIR}/gcc-first.log ${LOG_POST}
+	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/gcc-first install-gcc ${MAKE_ARGS} >> ${WRKDIR}/gcc-first.log 2>&1
+	@${RM} -f ${INTERIM_PREFIX}/bin/${TARGET}-gccbug >> ${WRKDIR}/gcc-first.log 2>&1
+	@${RM} -f ${INTERIM_PREFIX}/lib/libiberty.a >> ${WRKDIR}/gcc-first.log 2>&1
+	@${RM} -rf ${INTERIM_PREFIX}/include >> ${WRKDIR}/gcc-first.log 2>&1
 
 build-newlib:
 	@${ECHO_MSG} "====>  Build newlib (log file: ${WRKDIR}/newlib.log)"
-	@${RM} -rf ${BUILD_PREFIX}/newlib ${LOG_PRE1} ${WRKDIR}/newlib.log ${LOG_POST}
-	@${MKDIR} ${BUILD_PREFIX}/newlib ${LOG_PREn} ${WRKDIR}/newlib.log ${LOG_POST}
+	@${RM} -rf ${BUILD_PREFIX}/newlib > ${WRKDIR}/newlib.log 2>&1
+	@${MKDIR} ${BUILD_PREFIX}/newlib >> ${WRKDIR}/newlib.log 2>&1
 	@${ECHO_MSG} "=====>  Configure"
 	@cd ${BUILD_PREFIX}/newlib && \
 	 ${MAKE_ENV} ${CONFIGURE_ENV} PATH="${INTERIM_PREFIX}/bin:${PATH}" CFLAGS_FOR_TARGET="-g -O2 -ffunction-sections -fdata-sections" \
@@ -302,37 +316,37 @@ build-newlib:
 	 --enable-newlib-io-long-long \
 	 --enable-newlib-register-fini \
 	 --disable-newlib-supplied-syscalls \
-	 --disable-nls ${LOG_PREn} ${WRKDIR}/newlib.log ${LOG_POST}
+	 --disable-nls >> ${WRKDIR}/newlib.log 2>&1
 	@${ECHO_MSG} "=====>  Build"
-	@${MAKE_ENV} PATH="${INTERIM_PREFIX}/bin:${PATH}" ${MAKE_CMD} -j${MAKE_JOBS_NUMBER} -C ${BUILD_PREFIX}/newlib all ${LOG_PREn} ${WRKDIR}/newlib.log ${LOG_POST}
+	@${MAKE_ENV} PATH="${INTERIM_PREFIX}/bin:${PATH}" ${MAKE_CMD} -j${MAKE_JOBS_NUMBER} -C ${BUILD_PREFIX}/newlib all >> ${WRKDIR}/newlib.log 2>&1
 	@${ECHO_MSG} "=====>  Install into stage directory"
-	@${MAKE_ENV} PATH="${INTERIM_PREFIX}/bin:${PATH}" ${MAKE_CMD} -C ${BUILD_PREFIX}/newlib install ${LOG_PREn} ${WRKDIR}/newlib.log ${LOG_POST}
+	@${MAKE_ENV} PATH="${INTERIM_PREFIX}/bin:${PATH}" ${MAKE_CMD} -C ${BUILD_PREFIX}/newlib install >> ${WRKDIR}/newlib.log 2>&1
 .if ${PORT_OPTIONS:MHTML} && ${PORT_OPTIONS:MDOCS}
 	@${ECHO_MSG} "=====>  Build HTML documentation"
-	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/newlib html ${LOG_PREn} ${WRKDIR}/newlib.log ${LOG_POST}
+	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/newlib html ${MAKE_ARGS} >> ${WRKDIR}/newlib.log 2>&1
 	@${ECHO_MSG} "=====>  Install HTML documentation into stage directory"
-	@${MKDIR} ${DOC_PREFIX}/html/libc ${LOG_PREn} ${WRKDIR}/newlib.log ${LOG_POST}
-	@${TAR} -cf - -C ${BUILD_PREFIX}/newlib/${TARGET}/newlib/libc/libc.html . | ${TAR} -xf - -C ${DOC_PREFIX}/html/libc ${LOG_PREn} ${WRKDIR}/newlib.log ${LOG_POST}
-	@${MKDIR} ${DOC_PREFIX}/html/libm ${LOG_PREn} ${WRKDIR}/newlib.log ${LOG_POST}
-	@${TAR} -cf - -C ${BUILD_PREFIX}/newlib/${TARGET}/newlib/libm/libm.html . | ${TAR} -xf - -C ${DOC_PREFIX}/html/libm ${LOG_PREn} ${WRKDIR}/newlib.log ${LOG_POST}
+	@${MKDIR} ${DOC_PREFIX}/html/libc >> ${WRKDIR}/newlib.log 2>&1
+	@${TAR} -cf - -C ${BUILD_PREFIX}/newlib/${TARGET}/newlib/libc/libc.html . | ${TAR} -xf - -C ${DOC_PREFIX}/html/libc >> ${WRKDIR}/newlib.log 2>&1
+	@${MKDIR} ${DOC_PREFIX}/html/libm >> ${WRKDIR}/newlib.log 2>&1
+	@${TAR} -cf - -C ${BUILD_PREFIX}/newlib/${TARGET}/newlib/libm/libm.html . | ${TAR} -xf - -C ${DOC_PREFIX}/html/libm >> ${WRKDIR}/newlib.log 2>&1
 .endif
 .if ${PORT_OPTIONS:MPDF} && ${PORT_OPTIONS:MDOCS}
 	@${ECHO_MSG} "=====>  Build PDF documentation (ignore errors)"
-	@-${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/newlib/${TARGET}/newlib/libc pdf ${LOG_PREn} ${WRKDIR}/newlib.log ${LOG_POST}
-	@-${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/newlib/${TARGET}/newlib/libm pdf ${LOG_PREn} ${WRKDIR}/newlib.log ${LOG_POST}
+	@-${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/newlib/${TARGET}/newlib/libc pdf ${MAKE_ARGS} >> ${WRKDIR}/newlib.log 2>&1
+	@-${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/newlib/${TARGET}/newlib/libm pdf ${MAKE_ARGS} >> ${WRKDIR}/newlib.log 2>&1
 	@${ECHO_MSG} "=====>  Install PDF documentation into stage directory"
-	@${CP} -f ${BUILD_PREFIX}/newlib/${TARGET}/newlib/libc/libc.pdf ${DOC_PREFIX}/pdf/libc.pdf ${LOG_PREn} ${WRKDIR}/newlib.log ${LOG_POST}
-	@${CP} -f ${BUILD_PREFIX}/newlib/${TARGET}/newlib/libm/libm.pdf ${DOC_PREFIX}/pdf/libm.pdf ${LOG_PREn} ${WRKDIR}/newlib.log ${LOG_POST}
+	@${CP} -f ${BUILD_PREFIX}/newlib/${TARGET}/newlib/libc/libc.pdf ${DOC_PREFIX}/pdf/libc.pdf >> ${WRKDIR}/newlib.log 2>&1
+	@${CP} -f ${BUILD_PREFIX}/newlib/${TARGET}/newlib/libm/libm.pdf ${DOC_PREFIX}/pdf/libm.pdf >> ${WRKDIR}/newlib.log 2>&1
 .endif
 
 build-newlib-nano:
 	@${ECHO_MSG} "====>  Build newlib-nano (log file: ${WRKDIR}/newlib-nano.log)"
-	@${RM} -rf ${BUILD_PREFIX}/newlib-nano ${LOG_PRE1} ${WRKDIR}/newlib-nano.log ${LOG_POST}
-	@${MKDIR} ${BUILD_PREFIX}/newlib-nano ${LOG_PREn} ${WRKDIR}/newlib-nano.log ${LOG_POST}
+	@${RM} -rf ${BUILD_PREFIX}/newlib-nano > ${WRKDIR}/newlib-nano.log 2>&1
+	@${MKDIR} ${BUILD_PREFIX}/newlib-nano >> ${WRKDIR}/newlib-nano.log 2>&1
 	@${ECHO_MSG} "=====>  Configure"
 	@cd ${BUILD_PREFIX}/newlib-nano && \
 	 ${MAKE_ENV} ${CONFIGURE_ENV} PATH="${INTERIM_PREFIX}/bin:${PATH}" CFLAGS_FOR_TARGET="-g -Os -ffunction-sections -fdata-sections" \
-	  ${SRC_DIR}/newlib-nano-2.1/configure \
+	  ${SRC_DIR}/newlib/configure \
 	 --target=${TARGET} \
 	 --prefix=${BUILD_PREFIX}/target-libs \
 	 --infodir=${DOC_PREFIX}/info \
@@ -348,18 +362,19 @@ build-newlib-nano:
 	 --disable-newlib-unbuf-stream-opt     \
 	 --enable-lite-exit                    \
 	 --enable-newlib-global-atexit         \
-	 --disable-nls ${LOG_PREn} ${WRKDIR}/newlib-nano.log ${LOG_POST}
+	 --enable-newlib-nano-formatted-io     \
+	 --disable-nls >> ${WRKDIR}/newlib-nano.log 2>&1
 	@${ECHO_MSG} "=====>  Build"
-	@${MAKE_ENV} PATH="${INTERIM_PREFIX}/bin:${PATH}" ${MAKE_CMD} -j${MAKE_JOBS_NUMBER} -C ${BUILD_PREFIX}/newlib-nano all ${LOG_PREn} ${WRKDIR}/newlib-nano.log ${LOG_POST}
+	@${MAKE_ENV} PATH="${INTERIM_PREFIX}/bin:${PATH}" ${MAKE_CMD} -j${MAKE_JOBS_NUMBER} -C ${BUILD_PREFIX}/newlib-nano all >> ${WRKDIR}/newlib-nano.log 2>&1
 	@${ECHO_MSG} "=====>  Install into intermediate directory"
-	@${MAKE_ENV} PATH="${INTERIM_PREFIX}/bin:${PATH}" ${MAKE_CMD} -C ${BUILD_PREFIX}/newlib-nano install  ${LOG_PREn} ${WRKDIR}/newlib-nano.log ${LOG_POST}
+	@${MAKE_ENV} PATH="${INTERIM_PREFIX}/bin:${PATH}" ${MAKE_CMD} -C ${BUILD_PREFIX}/newlib-nano install >> ${WRKDIR}/newlib-nano.log 2>&1
 
 build-gcc-final:
 	@${ECHO_MSG} "====>  Build final gcc and g++ (log file: ${WRKDIR}/gcc-final.log)"
-	@${RM} -f ${INTERIM_PREFIX}/${TARGET}/usr ${LOG_PRE1} ${WRKDIR}/gcc-final.log ${LOG_POST}
-	@${LN} -s . ${INTERIM_PREFIX}/${TARGET}/usr ${LOG_PREn} ${WRKDIR}/gcc-final.log ${LOG_POST}
-	@${RM} -rf ${BUILD_PREFIX}/gcc-final ${LOG_PREn} ${WRKDIR}/gcc-final.log ${LOG_POST}
-	@${MKDIR} ${BUILD_PREFIX}/gcc-final ${LOG_PREn} ${WRKDIR}/gcc-final.log ${LOG_POST}
+	@${RM} -f ${INTERIM_PREFIX}/${TARGET}/usr > ${WRKDIR}/gcc-final.log 2>&1
+	@${LN} -s . ${INTERIM_PREFIX}/${TARGET}/usr >> ${WRKDIR}/gcc-final.log 2>&1
+	@${RM} -rf ${BUILD_PREFIX}/gcc-final >> ${WRKDIR}/gcc-final.log 2>&1
+	@${MKDIR} ${BUILD_PREFIX}/gcc-final >> ${WRKDIR}/gcc-final.log 2>&1
 	@${ECHO_MSG} "=====>  Configure"
 	@cd ${BUILD_PREFIX}/gcc-final && \
 	 ${MAKE_ENV} ${CONFIGURE_ENV} ${SRC_DIR}/gcc/configure \
@@ -397,50 +412,36 @@ build-gcc-final:
 	 --with-python-dir=share/gcc-${TARGET} \
 	 --with-sysroot=${INTERIM_PREFIX}/${TARGET} \
 	 --with-multilib-list=${MULTILIB_LIST} \
-	 --with-pkgversion="${PKGVERSION}" ${LOG_PREn} ${WRKDIR}/gcc-final.log ${LOG_POST}
+	 --with-pkgversion="${PKGVERSION}" >> ${WRKDIR}/gcc-final.log 2>&1
 	@${ECHO_MSG} "=====>  Build"
-	@${MAKE_ENV} ${MAKE_CMD} -j${MAKE_JOBS_NUMBER} -C ${BUILD_PREFIX}/gcc-final INHIBIT_LIBC_CFLAGS="-DUSE_TM_CLONE_REGISTRY=0" all ${LOG_PREn} ${WRKDIR}/gcc-final.log ${LOG_POST}
+	@${MAKE_ENV} ${MAKE_CMD} -j${MAKE_JOBS_NUMBER} -C ${BUILD_PREFIX}/gcc-final INHIBIT_LIBC_CFLAGS="-DUSE_TM_CLONE_REGISTRY=0" all ${MAKE_ARGS} >> ${WRKDIR}/gcc-final.log 2>&1
 	@${ECHO_MSG} "=====>  Install into stage directory"
-	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/gcc-final install ${LOG_PREn} ${WRKDIR}/gcc-final.log ${LOG_POST}
+	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/gcc-final install ${MAKE_ARGS} >> ${WRKDIR}/gcc-final.log 2>&1
 .if ${PORT_OPTIONS:MHTML} && ${PORT_OPTIONS:MDOCS}
 	@${ECHO_MSG} "=====>  Build HTML documentation"
-	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/gcc-final html ${LOG_PREn} ${WRKDIR}/gcc-final.log ${LOG_POST}
+	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/gcc-final html ${MAKE_ARGS} >> ${WRKDIR}/gcc-final.log 2>&1
 	@${ECHO_MSG} "=====>  Install HTML documentation into stage directory"
-	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/gcc-final install-html ${LOG_PREn} ${WRKDIR}/gcc-final.log ${LOG_POST}
+	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/gcc-final install-html ${MAKE_ARGS} >> ${WRKDIR}/gcc-final.log 2>&1
 .endif
 .if ${PORT_OPTIONS:MPDF} && ${PORT_OPTIONS:MDOCS}
 	@${ECHO_MSG} "=====>  Build PDF documentation"
-	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/gcc-final pdf ${LOG_PREn} ${WRKDIR}/gcc-final.log ${LOG_POST}
+	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/gcc-final pdf ${MAKE_ARGS} >> ${WRKDIR}/gcc-final.log 2>&1
 	@${ECHO_MSG} "=====>  Install PDF documentation into stage directory"
-	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/gcc-final install-pdf ${LOG_PREn} ${WRKDIR}/gcc-final.log ${LOG_POST}
+	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/gcc-final install-pdf ${MAKE_ARGS} >> ${WRKDIR}/gcc-final.log 2>&1
 .endif
 	@${ECHO_MSG} "=====>  Cleanup installation"
-	@${RM} -f ${INTERIM_PREFIX}/bin/${TARGET}-gccbug ${LOG_PREn} ${WRKDIR}/gcc-final.log ${LOG_POST}
-	@${FIND} ${INTERIM_PREFIX}/${TARGET}/lib -name libiberty.a -delete ${LOG_PREn} ${WRKDIR}/gcc-final.log ${LOG_POST}
-	@${RM} -f ${INTERIM_PREFIX}/lib/libiberty.a ${LOG_PREn} ${WRKDIR}/gcc-final.log ${LOG_POST}
-	@${RM} -rf ${INTERIM_PREFIX}/include ${LOG_PREn} ${WRKDIR}/gcc-final.log ${LOG_POST}
-	@${RM} -f ${INTERIM_PREFIX}/${TARGET}/usr ${LOG_PREn} ${WRKDIR}/gcc-final.log ${LOG_POST}
-
-build-gcc-plugins:
-	@${ECHO_MSG} "====>  Build gcc plugins (log file: ${WRKDIR}/gcc-plugins.log)"
-	@${RM} -f ${WRKDIR}/gcc-plugins.log
-	@plugin_target_dir=$$(${INTERIM_PREFIX}/bin/${TARGET}-gcc -print-file-name=plugin) && \
-	 plugins=$$(${FIND} ${SRC_DIR}/gcc-plugins -mindepth 1 -maxdepth 1 -type d -name '[^\.]*') && \
-	 for plugin_dir in $${plugins} ; do \
-	   plugin_name=$$(basename "$${plugin_dir}") && \
-	   src_files=$$(${FIND} $${plugin_dir} -name \*.c -or -name \*.cc) && \
-	   ${ECHO_MSG} "=====>  Build plugin $${plugin_name} from $${src_files}" && \
-	   ${ECHO_MSG} "Build plugin $${plugin_name} from $${src_files}" >> ${WRKDIR}/gcc-plugins.log && \
-	   ${CXX} ${CXXFLAGS} ${CPPFLAGS} -fPIC -fno-rtti -O2 -shared -I$${plugin_target_dir}/include -I${WORLD_LIB}/include $${src_files} \
-	    -o $${plugin_target_dir}/$${plugin_name}.so ${LOG_PREn} ${WRKDIR}/gcc-plugins.log ${LOG_POST} ; \
-	 done
+	@${RM} -f ${INTERIM_PREFIX}/bin/${TARGET}-gccbug >> ${WRKDIR}/gcc-final.log 2>&1
+	@${FIND} ${INTERIM_PREFIX}/${TARGET}/lib -name libiberty.a -delete >> ${WRKDIR}/gcc-final.log 2>&1
+	@${RM} -f ${INTERIM_PREFIX}/lib/libiberty.a >> ${WRKDIR}/gcc-final.log 2>&1
+	@${RM} -rf ${INTERIM_PREFIX}/include >> ${WRKDIR}/gcc-final.log 2>&1
+	@${RM} -f ${INTERIM_PREFIX}/${TARGET}/usr >> ${WRKDIR}/gcc-final.log 2>&1
 
 build-libstdcxx:
 	@${ECHO_MSG} "====>  Build size-optimized C++ runtime (log file: ${WRKDIR}/gcc-size-libstdcxx.log)"
-	@${RM} -f ${BUILD_PREFIX}/target-libs/${TARGET}/usr ${LOG_PRE1} ${WRKDIR}/gcc-size-libstdcxx.log ${LOG_POST}
-	@${LN} -s . ${BUILD_PREFIX}/target-libs/${TARGET}/usr ${LOG_PREn} ${WRKDIR}/gcc-size-libstdcxx.log ${LOG_POST}
-	@${RM} -rf ${BUILD_PREFIX}/gcc-size-libstdcxx ${LOG_PREn} ${WRKDIR}/gcc-size-libstdcxx.log ${LOG_POST}
-	@${MKDIR} ${BUILD_PREFIX}/gcc-size-libstdcxx ${LOG_PREn} ${WRKDIR}/gcc-size-libstdcxx.log ${LOG_POST}
+	@${RM} -f ${BUILD_PREFIX}/target-libs/${TARGET}/usr > ${WRKDIR}/gcc-size-libstdcxx.log 2>&1
+	@${LN} -s . ${BUILD_PREFIX}/target-libs/${TARGET}/usr >> ${WRKDIR}/gcc-size-libstdcxx.log 2>&1
+	@${RM} -rf ${BUILD_PREFIX}/gcc-size-libstdcxx >> ${WRKDIR}/gcc-size-libstdcxx.log 2>&1
+	@${MKDIR} ${BUILD_PREFIX}/gcc-size-libstdcxx >> ${WRKDIR}/gcc-size-libstdcxx.log 2>&1
 	@${ECHO_MSG} "=====>  Configure"
 	@cd ${BUILD_PREFIX}/gcc-size-libstdcxx && \
 	 ${MAKE_ENV} ${CONFIGURE_ENV} ${SRC_DIR}/gcc/configure \
@@ -457,7 +458,7 @@ build-libstdcxx:
 	 ${ISL_CHECK_VERSION} \
 	 --with-cloog=${WORLD_LIB} \
 	 --with-libelf=${WORLD_LIB} \
-	 --enable-languages=c,c++ \
+	 --enable-languages=c++ \
 	 --disable-decimal-float \
 	 --disable-libffi \
 	 --disable-libgomp \
@@ -476,60 +477,75 @@ build-libstdcxx:
 	 --with-python-dir=share/gcc-${TARGET} \
 	 --with-sysroot=${BUILD_PREFIX}/target-libs/${TARGET} \
 	 --with-multilib-list=${MULTILIB_LIST} \
-	 --with-pkgversion="${PKGVERSION}" ${LOG_PREn} ${WRKDIR}/gcc-size-libstdcxx.log ${LOG_POST}
+	 --with-pkgversion="${PKGVERSION}" >> ${WRKDIR}/gcc-size-libstdcxx.log 2>&1
 	@${ECHO_MSG} "=====>  Build"
 	@${MAKE_ENV} ${MAKE_CMD} -j${MAKE_JOBS_NUMBER} -C ${BUILD_PREFIX}/gcc-size-libstdcxx \
-	 CXXFLAGS_FOR_TARGET="-g -Os -ffunction-sections -fdata-sections -fno-exceptions" all ${LOG_PREn} ${WRKDIR}/gcc-size-libstdcxx.log ${LOG_POST}
+	 CXXFLAGS_FOR_TARGET="-g -Os -ffunction-sections -fdata-sections -fno-exceptions" all-target-libstdc++-v3 ${MAKE_ARGS} >> ${WRKDIR}/gcc-size-libstdcxx.log 2>&1
 	@${ECHO_MSG} "=====>  Install into intermediate directory"
-	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/gcc-size-libstdcxx install ${LOG_PREn} ${WRKDIR}/gcc-size-libstdcxx.log ${LOG_POST}
+	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/gcc-size-libstdcxx install-target-libstdc++-v3 ${MAKE_ARGS} >> ${WRKDIR}/gcc-size-libstdcxx.log 2>&1
 	@${ECHO_MSG} "=====>  Copy all target libraries into stage directory"
 	@for multilib in $$(${BUILD_PREFIX}/target-libs/bin/${TARGET}-gcc -print-multi-lib) ; do \
 	  multilib_dir=$${multilib%%;*} ; \
 	  for srclib in libstdc++.a libsupc++.a libc.a libg.a librdimon.a nano.specs rdimon.specs nosys.specs ; do \
-	    dstlib=$$(echo "$${srclib}" | ${SED} 's/\.a$$/_s.a/') ; \
+	    dstlib=$$(echo "$${srclib}" | ${SED} 's/\.a$$/_nano.a/') ; \
 	    ${CP} -f ${BUILD_PREFIX}/target-libs/${TARGET}/lib/$${multilib_dir}/$${srclib} ${INTERIM_PREFIX}/${TARGET}/lib/$${multilib_dir}/$${dstlib} ; \
 	  done ; \
 	  ${CP} -f ${BUILD_PREFIX}/target-libs/${TARGET}/lib/$${multilib_dir}/*crt0.o  ${INTERIM_PREFIX}/${TARGET}/lib/$${multilib_dir}/ ; \
-	 done ${LOG_PREn} ${WRKDIR}/gcc-size-libstdcxx.log ${LOG_POST}
+	 done >> ${WRKDIR}/gcc-size-libstdcxx.log 2>&1
 
 build-gdb:
 	@${ECHO_MSG} "====>  Build gdb (log file: ${WRKDIR}/gdb.log)"
-	@${RM} -rf ${BUILD_PREFIX}/gdb ${LOG_PRE1} ${WRKDIR}/gdb.log ${LOG_POST}
-	@${MKDIR} ${BUILD_PREFIX}/gdb ${LOG_PREn} ${WRKDIR}/gdb.log ${LOG_POST}
+	@${RM} -rf ${BUILD_PREFIX}/gdb > ${WRKDIR}/gdb.log 2>&1
+	@${MKDIR} ${BUILD_PREFIX}/gdb >> ${WRKDIR}/gdb.log 2>&1
 	@${ECHO_MSG} "=====>  Configure"
 	@cd ${BUILD_PREFIX}/gdb && \
 	 ${MAKE_ENV} ${CONFIGURE_ENV} ${SRC_DIR}/gdb/configure \
-	 --target=${TARGET} \
-	 --prefix=${INTERIM_PREFIX} \
-	 --infodir=${DOC_PREFIX}/info \
-	 --mandir=${DOC_PREFIX}/man \
-	 --htmldir=${DOC_PREFIX}/html \
-	 --pdfdir=${DOC_PREFIX}/pdf \
-	 --disable-nls \
-	 --disable-sim \
-	 --with-libexpat \
-	 --with-libexpat-prefix=${WORLD_LIB} \
-	 --with-python=no \
-	 --with-system-gdbinit=${INTERIM_PREFIX}/xxxx/${TARGET}/lib/gdbinit \
-	 --with-lzma=no \
-	 --with-gdb-datadir='$${prefix}/${TARGET}/share/gdb' \
-	 --with-pkgversion="${PKGVERSION}" ${LOG_PREn} ${WRKDIR}/gdb.log ${LOG_POST}
+	 ${COMMON_GDB_CONFIGURE_ARGS} \
+	 --with-python=no >> ${WRKDIR}/gdb.log 2>&1
+	@${ECHO_MSG} "=====>  Build"
+	@${MAKE_ENV} ${MAKE_CMD} -j${MAKE_JOBS_NUMBER} -C ${BUILD_PREFIX}/gdb all ${MAKE_ARGS} >> ${WRKDIR}/gdb.log 2>&1
+	@${ECHO_MSG} "=====>  Install into stage directory"
+	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/gdb install ${MAKE_ARGS} >> ${WRKDIR}/gdb.log 2>&1
+	@${RM} -rf ${INTERIM_PREFIX}/include
+.if ${PORT_OPTIONS:MHTML} && ${PORT_OPTIONS:MDOCS}
+	@${ECHO_MSG} "=====>  Build HTML documentation"
+	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/gdb html ${MAKE_ARGS} >> ${WRKDIR}/gdb.log 2>&1
+	@${ECHO_MSG} "=====>  Install HTML documentation into stage directory"
+	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/gdb install-html ${MAKE_ARGS} >> ${WRKDIR}/gdb.log 2>&1
+.endif
+.if ${PORT_OPTIONS:MPDF} && ${PORT_OPTIONS:MDOCS}
+	@${ECHO_MSG} "=====>  Build PDF documentation"
+	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/gdb pdf ${MAKE_ARGS} >> ${WRKDIR}/gdb.log 2>&1
+	@${ECHO_MSG} "=====>  Install PDF documentation into stage directory"
+	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/gdb install-pdf ${MAKE_ARGS} >> ${WRKDIR}/gdb.log 2>&1
+.endif
+
+build-pygdb:
+	@${ECHO_MSG} "====>  Build py-gdb (log file: ${WRKDIR}/py-gdb.log)"
+	@${RM} -rf ${BUILD_PREFIX}/py-gdb > ${WRKDIR}/py-gdb.log 2>&1
+	@${MKDIR} ${BUILD_PREFIX}/py-gdb >> ${WRKDIR}/py-gdb.log 2>&1
+	@${ECHO_MSG} "=====>  Configure"
+	@cd ${BUILD_PREFIX}/py-gdb && \
+	 ${MAKE_ENV} ${CONFIGURE_ENV} ${SRC_DIR}/gdb/configure \
+	 ${COMMON_GDB_CONFIGURE_ARGS} \
+	 --with-python=${PYTHON_CMD} \
+	 --program-prefix=${TARGET}- --program-suffix=-py >> ${WRKDIR}/py-gdb.log 2>&1
 	@${ECHO_MSG} "=====>  Build"
-	@${MAKE_ENV} ${MAKE_CMD} -j${MAKE_JOBS_NUMBER} -C ${BUILD_PREFIX}/gdb all ${LOG_PREn} ${WRKDIR}/gdb.log ${LOG_POST}
+	@${MAKE_ENV} ${MAKE_CMD} -j${MAKE_JOBS_NUMBER} -C ${BUILD_PREFIX}/py-gdb all ${MAKE_ARGS} >> ${WRKDIR}/py-gdb.log 2>&1
 	@${ECHO_MSG} "=====>  Install into stage directory"
-	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/gdb install ${LOG_PREn} ${WRKDIR}/gdb.log ${LOG_POST}
+	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/py-gdb install ${MAKE_ARGS} >> ${WRKDIR}/py-gdb.log 2>&1
 	@${RM} -rf ${INTERIM_PREFIX}/include
 .if ${PORT_OPTIONS:MHTML} && ${PORT_OPTIONS:MDOCS}
 	@${ECHO_MSG} "=====>  Build HTML documentation"
-	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/gdb html ${LOG_PREn} ${WRKDIR}/gdb.log ${LOG_POST}
+	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/gdb html ${MAKE_ARGS} >> ${WRKDIR}/gdb.log 2>&1
 	@${ECHO_MSG} "=====>  Install HTML documentation into stage directory"
-	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/gdb install-html ${LOG_PREn} ${WRKDIR}/gdb.log ${LOG_POST}
+	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/gdb install-html ${MAKE_ARGS} >> ${WRKDIR}/gdb.log 2>&1
 .endif
 .if ${PORT_OPTIONS:MPDF} && ${PORT_OPTIONS:MDOCS}
 	@${ECHO_MSG} "=====>  Build PDF documentation"
-	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/gdb pdf ${LOG_PREn} ${WRKDIR}/gdb.log ${LOG_POST}
+	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/gdb pdf ${MAKE_ARGS} >> ${WRKDIR}/gdb.log 2>&1
 	@${ECHO_MSG} "=====>  Install PDF documentation into stage directory"
-	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/gdb install-pdf ${LOG_PREn} ${WRKDIR}/gdb.log ${LOG_POST}
+	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/gdb install-pdf ${MAKE_ARGS} >> ${WRKDIR}/gdb.log 2>&1
 .endif
 
 install-samples:
@@ -560,14 +576,14 @@ strip-binaries:
 	   if ! ${FILE} $$bin | ${GREP} -qs ': ELF' ; then continue ; fi ; \
 	   ${STRIP_CMD} $${bin} ; \
 	 done
-	@for bin in $$(${FIND} ${INTERIM_PREFIX}/lib/gcc/${TARGET}/4.8.4 -perm +111 -and ! -type d) ; do \
+	@for bin in $$(${FIND} ${INTERIM_PREFIX}/lib/gcc/${TARGET}/${GCC_VERSION} -perm +111 -and ! -type d) ; do \
 	   if ! ${FILE} $$bin | ${GREP} -qs ': ELF' ; then continue ; fi ; \
 	   ${STRIP_CMD} $${bin} ; \
 	 done
 
 strip-target-libraries:
 	@${ECHO_MSG} "====>  Strip target libraries"
-	@for target in $$(${FIND} ${INTERIM_PREFIX}/${TARGET}/lib ${INTERIM_PREFIX}/lib/gcc/${TARGET}/4.8.4 -type f -name \*.a -o -name \*.o) ; do \
+	@for target in $$(${FIND} ${INTERIM_PREFIX}/${TARGET}/lib ${INTERIM_PREFIX}/lib/gcc/${TARGET}/${GCC_VERSION} -type f -name \*.a -o -name \*.o) ; do \
 	   ${INTERIM_PREFIX}/bin/${TARGET}-objcopy -R .comment -R .note -R .debug_info -R .debug_aranges -R .debug_pubnames -R .debug_pubtypes -R .debug_abbrev -R .debug_line -R .debug_str -R .debug_ranges -R .debug_loc $${target} ; \
 	done
 	@${ECHO_MSG} "====>  Remove *.la files and other leftovers"

Modified: head/devel/gcc-arm-embedded/files/extra-patch-gcc-isl-0.13-compatibility
==============================================================================
--- head/devel/gcc-arm-embedded/files/extra-patch-gcc-isl-0.13-compatibility	Thu Feb 12 14:33:09 2015	(r378877)
+++ head/devel/gcc-arm-embedded/files/extra-patch-gcc-isl-0.13-compatibility	Thu Feb 12 15:00:31 2015	(r378878)
@@ -1,457 +1,71 @@
-diff -ruN src/gcc.orig/gcc/graphite-clast-to-gimple.c src/gcc/gcc/graphite-clast-to-gimple.c
---- src/gcc.orig/gcc/graphite-clast-to-gimple.c	2014-07-08 14:47:19.000000000 +0400
-+++ src/gcc/gcc/graphite-clast-to-gimple.c	2014-07-08 14:49:57.000000000 +0400
+diff -Naur src/gcc.orig/gcc/graphite-clast-to-gimple.c src/gcc/gcc/graphite-clast-to-gimple.c
+--- src/gcc.orig/gcc/graphite-clast-to-gimple.c	2014-03-03 21:39:22.000000000 +1000
++++ src/gcc/gcc/graphite-clast-to-gimple.c	2014-06-25 15:07:57.958697105 +1000
 @@ -28,6 +28,8 @@
  #include <isl/constraint.h>
  #include <isl/ilp.h>
  #include <isl/aff.h>
-+#include <isl/val.h>
-+#include <isl/val_gmp.h>
++#include <isl/deprecated/int.h>
++#include <isl/deprecated/ilp_int.h>
  #include <cloog/cloog.h>
  #include <cloog/isl/domain.h>
  #endif
-@@ -851,18 +853,18 @@
- static void
- compute_bounds_for_param (scop_p scop, int param, mpz_t low, mpz_t up)
- {
--  isl_int v;
-+  isl_val *v;
-   isl_aff *aff = isl_aff_zero_on_domain
-     (isl_local_space_from_space (isl_set_get_space (scop->context)));
- 
-   aff = isl_aff_add_coefficient_si (aff, isl_dim_param, param, 1);
- 
--  isl_int_init (v);
--  isl_set_min (scop->context, aff, &v);
--  isl_int_get_gmp (v, low);
--  isl_set_max (scop->context, aff, &v);
--  isl_int_get_gmp (v, up);
--  isl_int_clear (v);
-+  v = isl_set_min_val (scop->context, aff);
-+  isl_val_get_num_gmp (v, low);
-+  isl_val_free (v);
-+  v = isl_set_max_val (scop->context, aff);
-+  isl_val_get_num_gmp (v, up);
-+  isl_val_free (v);
-   isl_aff_free (aff);
- }
- 
-@@ -881,8 +883,7 @@
-   isl_set *domain;
-   isl_aff *dimension;
-   isl_local_space *local_space;
--  isl_int isl_value;
--  enum isl_lp_result lp_result;
-+  isl_val *isl_value;
- 
-   domain = isl_set_copy (isl_set_from_cloog_domain (loop->domain));
-   local_space = isl_local_space_from_space (isl_set_get_space (domain));
-@@ -891,17 +892,12 @@
- 					  isl_set_dim (domain, isl_dim_set) - 1,
- 					  1);
- 
--  isl_int_init (isl_value);
--
--  lp_result = isl_set_min (domain, dimension, &isl_value);
--  assert (lp_result == isl_lp_ok);
--  isl_int_get_gmp (isl_value, low);
--
--  lp_result = isl_set_max (domain, dimension, &isl_value);
--  assert (lp_result == isl_lp_ok);
--  isl_int_get_gmp (isl_value, up);
--
--  isl_int_clear (isl_value);
-+  isl_value = isl_set_min_val (domain, dimension);
-+  isl_val_get_num_gmp (isl_value, low);
-+  isl_val_free (isl_value);
-+  isl_value = isl_set_max_val (domain, dimension);
-+  isl_val_get_num_gmp (isl_value, up);
-+  isl_val_free (isl_value);
-   isl_set_free (domain);
-   isl_aff_free (dimension);
- }
-diff -ruN src/gcc.orig/gcc/graphite-interchange.c src/gcc/gcc/graphite-interchange.c
---- src/gcc.orig/gcc/graphite-interchange.c	2014-07-08 14:47:20.000000000 +0400
-+++ src/gcc/gcc/graphite-interchange.c	2014-07-08 14:49:57.000000000 +0400
-@@ -29,6 +29,8 @@
+diff -Naur src/gcc.orig/gcc/graphite-interchange.c src/gcc/gcc/graphite-interchange.c
+--- src/gcc.orig/gcc/graphite-interchange.c	2014-01-03 08:23:26.000000000 +1000
++++ src/gcc/gcc/graphite-interchange.c	2014-06-25 15:10:06.882899243 +1000
+@@ -29,6 +29,9 @@
  #include <isl/map.h>
  #include <isl/union_map.h>
  #include <isl/ilp.h>
-+#include <isl/val.h>
-+#include <isl/val_gmp.h>
++#include <isl/deprecated/int.h>
++#include <isl/deprecated/ilp_int.h>
++#include <isl/deprecated/constraint_int.h>
  #include <cloog/cloog.h>
  #include <cloog/isl/domain.h>
  #endif
-@@ -71,13 +73,13 @@
-   isl_local_space *ls = isl_local_space_from_space (isl_map_get_space (map));
-   unsigned offset, nsubs;
-   int i;
--  isl_int size, subsize;
-+  isl_ctx *ct;
-+
-+  isl_val *size, *subsize, *size1;
- 
-   res = isl_equality_alloc (ls);
--  isl_int_init (size);
--  isl_int_set_ui (size, 1);
--  isl_int_init (subsize);
--  isl_int_set_ui (subsize, 1);
-+  ct = isl_local_space_get_ctx (ls);
-+  size = isl_val_int_from_ui (ct, 1);
- 
-   nsubs = isl_set_dim (pdr->extent, isl_dim_set);
-   /* -1 for the already included L dimension.  */
-@@ -90,18 +92,17 @@
-       isl_space *dc;
-       isl_aff *aff;
- 
--      res = isl_constraint_set_coefficient (res, isl_dim_out, offset + i, size);
--
-+      size1 = isl_val_copy (size);
-+      res = isl_constraint_set_coefficient_val (res, isl_dim_out, offset + i, size);
-       dc = isl_set_get_space (pdr->extent);
-       aff = isl_aff_zero_on_domain (isl_local_space_from_space (dc));
-       aff = isl_aff_set_coefficient_si (aff, isl_dim_in, i, 1);
--      isl_set_max (pdr->extent, aff, &subsize);
-+      subsize = isl_set_max_val (pdr->extent, aff);
-       isl_aff_free (aff);
--      isl_int_mul (size, size, subsize);
-+      size = isl_val_mul (size1, subsize);
-     }
- 
--  isl_int_clear (subsize);
--  isl_int_clear (size);
-+  isl_val_free (size);
- 
-   return res;
- }
-@@ -118,7 +119,7 @@
-   isl_aff *aff;
-   isl_space *dc;
-   isl_constraint *lma, *c;
--  isl_int islstride;
-+  isl_val *islstride;
-   graphite_dim_t time_depth;
-   unsigned offset, nt;
-   unsigned i;
-@@ -231,10 +232,9 @@
-   aff = isl_aff_zero_on_domain (isl_local_space_from_space (dc));
-   aff = isl_aff_set_coefficient_si (aff, isl_dim_in, offset - 1, -1);
-   aff = isl_aff_set_coefficient_si (aff, isl_dim_in, offset + offset - 1, 1);
--  isl_int_init (islstride);
--  isl_set_max (set, aff, &islstride);
--  isl_int_get_gmp (islstride, stride);
--  isl_int_clear (islstride);
-+  islstride = isl_set_max_val (set, aff);
-+  isl_val_get_num_gmp (islstride, stride);
-+  isl_val_free (islstride);
-   isl_aff_free (aff);
-   isl_set_free (set);
- 
-diff -ruN src/gcc.orig/gcc/graphite-optimize-isl.c src/gcc/gcc/graphite-optimize-isl.c
---- src/gcc.orig/gcc/graphite-optimize-isl.c	2014-07-08 14:47:20.000000000 +0400
-+++ src/gcc/gcc/graphite-optimize-isl.c	2014-07-08 14:49:57.000000000 +0400
-@@ -252,6 +252,7 @@
-    DimToVectorize can be devided by VectorWidth. The default VectorWidth is
-    currently constant and not yet target specific. This function does not reason
-    about parallelism.  */
-+
- static isl_map *
- getPrevectorMap(isl_ctx *ctx, int DimToVectorize,
- 		int ScheduleDimensions,
-@@ -265,8 +266,9 @@
-   isl_aff *Aff;
-   int PointDimension; /* ip */
-   int TileDimension;  /* it */
--  isl_int VectorWidthMP;
-+  isl_val *VectorWidthMP;
-   int i;
-+  isl_ctx *ct;
- 
-   /* assert (0 <= DimToVectorize && DimToVectorize < ScheduleDimensions);*/
- 
-@@ -296,10 +298,10 @@
-   Aff = isl_aff_zero_on_domain(LocalSpaceRange);
-   Aff = isl_aff_set_constant_si(Aff, VectorWidth);
-   Aff = isl_aff_set_coefficient_si(Aff, isl_dim_in, TileDimension, 1);
--  isl_int_init(VectorWidthMP);
--  isl_int_set_si(VectorWidthMP, VectorWidth);
--  Aff = isl_aff_mod(Aff, VectorWidthMP);
--  isl_int_clear(VectorWidthMP);
-+
-+  ct = isl_aff_get_ctx(Aff);
-+  VectorWidthMP = isl_val_int_from_si(ct, VectorWidth);
-+  Aff = isl_aff_mod_val(Aff, VectorWidthMP);
-   Modulo = isl_pw_aff_zero_set(isl_pw_aff_from_aff(Aff));
-   TilingMap = isl_map_intersect_range(TilingMap, Modulo);
+diff -Naur src/gcc.orig/gcc/graphite-optimize-isl.c src/gcc/gcc/graphite-optimize-isl.c
+--- src/gcc.orig/gcc/graphite-optimize-isl.c	2014-01-03 08:23:26.000000000 +1000
++++ src/gcc/gcc/graphite-optimize-isl.c	2014-06-25 15:16:57.038386166 +1000
+@@ -28,6 +28,8 @@
+ #include <isl/band.h>
+ #include <isl/aff.h>
+ #include <isl/options.h>
++#include <isl/deprecated/int.h>
++#include <isl/deprecated/aff_int.h>
+ #endif
  
-@@ -365,7 +367,7 @@
+ #include "system.h"
+@@ -373,7 +375,7 @@
  	{
  	  for (i = ScheduleDimensions - 1 ;  i >= 0 ; i--)
  	    {
--	      if (isl_band_member_is_zero_distance(Band, i))
-+	      if (isl_band_member_is_coincident(Band, i))
+-	      if (isl_band_member_is_zero_distance (Band, i))
++	      if (isl_band_member_is_coincident (Band, i))
  		{
  		  isl_map *TileMap;
  		  isl_union_map *TileUMap;
-@@ -436,6 +438,7 @@
- {
- 
-   isl_schedule *schedule;
-+  isl_schedule_constraints *schedule_constraints;
-   isl_union_set *domain;
-   isl_union_map *validity, *proximity, *dependences;
-   isl_union_map *schedule_map;
-@@ -454,7 +457,14 @@
-   isl_options_set_schedule_maximize_band_depth(scop->ctx, 1);
-   isl_options_set_schedule_fuse(scop->ctx, ISL_SCHEDULE_FUSE_MIN);
-   isl_options_set_on_error(scop->ctx, ISL_ON_ERROR_CONTINUE);
--  schedule = isl_union_set_compute_schedule (domain, validity, proximity);
-+  schedule_constraints = isl_schedule_constraints_on_domain(domain);
-+  schedule_constraints =
-+      isl_schedule_constraints_set_proximity(schedule_constraints, proximity);
-+  schedule_constraints = isl_schedule_constraints_set_validity(
-+      schedule_constraints, isl_union_map_copy(validity));
-+  schedule_constraints =
-+      isl_schedule_constraints_set_coincidence(schedule_constraints, validity);
-+  schedule = isl_schedule_constraints_compute_schedule(schedule_constraints);
-   isl_options_set_on_error(scop->ctx, ISL_ON_ERROR_ABORT);
- 
-   if (!schedule)
-diff -ruN src/gcc.orig/gcc/graphite-poly.c src/gcc/gcc/graphite-poly.c
---- src/gcc.orig/gcc/graphite-poly.c	2014-07-08 14:47:21.000000000 +0400
-+++ src/gcc/gcc/graphite-poly.c	2014-07-08 14:49:57.000000000 +0400
+diff -Naur src/gcc.orig/gcc/graphite-poly.c src/gcc/gcc/graphite-poly.c
+--- src/gcc.orig/gcc/graphite-poly.c	2014-01-03 08:23:26.000000000 +1000
++++ src/gcc/gcc/graphite-poly.c	2014-06-25 15:18:01.207157796 +1000
 @@ -28,6 +28,8 @@
  #include <isl/constraint.h>
  #include <isl/ilp.h>
  #include <isl/aff.h>
-+#include <isl/val.h>
-+#include <isl/val_gmp.h>
++#include <isl/deprecated/int.h>
++#include <isl/deprecated/ilp_int.h>
  #include <cloog/cloog.h>
  #include <cloog/isl/domain.h>
  #endif
-@@ -1021,10 +1023,7 @@
-   isl_set *transdomain;
-   isl_space *dc;
-   isl_aff *aff;
--  isl_int isllb, islub;
--
--  isl_int_init (isllb);
--  isl_int_init (islub);
-+  isl_val *isllb, *islub;
- 

*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201502121500.t1CF0Wxe029748>