Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 5 Jun 2020 15:48:38 +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: r538029 - in head/devel/gcc-arm-embedded: . files
Message-ID:  <202006051548.055FmcVa090601@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: lev
Date: Fri Jun  5 15:48:37 2020
New Revision: 538029
URL: https://svnweb.freebsd.org/changeset/ports/538029

Log:
   (1) Return option PURE, as libraries are bundled again.
   (2) Make PURE default, as isl in ports have newer version.
   (3) Fix HTML pkg-plist entries.
  
   Yes, date in version is wrong (typo!), but I don't want to add epoch.
   Next update of gcc will fix it.

Modified:
  head/devel/gcc-arm-embedded/Makefile
  head/devel/gcc-arm-embedded/files/Makefile
  head/devel/gcc-arm-embedded/pkg-plist

Modified: head/devel/gcc-arm-embedded/Makefile
==============================================================================
--- head/devel/gcc-arm-embedded/Makefile	Fri Jun  5 15:08:45 2020	(r538028)
+++ head/devel/gcc-arm-embedded/Makefile	Fri Jun  5 15:48:37 2020	(r538029)
@@ -1,8 +1,9 @@
 # $FreeBSD$
 
 PORTNAME=	gcc-arm-embedded
+# This is typo (2030 instead of 2020), buit I don't want to bump EPOCH
 PORTVERSION=	9.3.20300529
-#PORTREVISION=	0
+PORTREVISION=	1
 CATEGORIES=	devel
 MASTER_SITES=	https://developer.arm.com/-/media/Files/downloads/gnu-rm/9-2020q2/
 DISTNAME=	${ORIGINAL_PACKAGE_NAME}-src
@@ -19,19 +20,22 @@ NOT_FOR_ARCHS=		arm armeb armv6 armv7 \
 NOT_FOR_ARCHS_REASON=	Very slow to build on emulator
 
 BUILD_DEPENDS=		objdump:devel/binutils
-LIB_DEPENDS=		libexpat.so:textproc/expat2 \
-			libgmp.so:math/gmp \
-			libmpfr.so:math/mpfr \
-			libmpc.so:math/mpc \
-			libisl.so:devel/isl
 
-OPTIONS_DEFINE=	PYGDB EXAMPLES HTML PDF DOCS SYMLINK
-OPTIONS_DEFAULT=PYGDB SYMLINK
+OPTIONS_DEFINE=	PURE PYGDB EXAMPLES HTML PDF DOCS SYMLINK
+OPTIONS_DEFAULT=PURE PYGDB SYMLINK
+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)
 PYGDB_DESC=	Build and install python-enabled gdb in addition to standard one
 SYMLINK_DESC=	Make version-independent symlink ${LOCALBASE}/${PORTNAME}
 
+PURE_LIB_DEPENDS_OFF=	libexpat.so:textproc/expat2 \
+			libgmp.so:math/gmp \
+			libmpfr.so:math/mpfr \
+			libmpc.so:math/mpc \
+			libisl.so:devel/isl
+PURE_USES_OFF=		iconv
+
 PDF_USE=		TEX=base:build,tex:build,dvipsk:build
 PDF_BUILD_DEPENDS=	texi2dvi:print/texinfo
 PYGDB_USES=		python
@@ -39,7 +43,7 @@ PYGDB_USES=		python
 OPTIONS_SUB=		yes
 
 USES=			bison compiler:c++11-lang cpe gmake gettext-runtime \
-			iconv makeinfo tar:bzip2
+			makeinfo tar:bzip2
 
 GNU_CONFIGURE=	yes
 
@@ -72,6 +76,18 @@ BUILD_DIR=	${WRKDIR}/build
 INTERIM_WORLD=	${WRKDIR}/install
 INTERIM_PREFIX=	${INTERIM_WORLD}/${PORTNAME}-${FULL_VERSION}
 
+BUNDLED_LIBS=			EXPAT:bz2 ZLIB:gz LIBELF:gz \
+				GMP:bz2 MPFR:bz2 MPC:gz ISL:xz \
+				LIBICONV:gz
+BUNDLED_VERSION_EXPAT=		2.1.1
+BUNDLED_VERSION_ZLIB=		1.2.8
+BUNDLED_VERSION_LIBELF=		0.8.13
+BUNDLED_VERSION_GMP=		6.1.0
+BUNDLED_VERSION_MPFR=		3.1.4
+BUNDLED_VERSION_MPC=		1.0.3
+BUNDLED_VERSION_ISL=		0.18
+BUNDLED_VERSION_LIBICONV=	1.15
+
 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 \
@@ -85,11 +101,17 @@ VAR_TO_SUBMAKE_NOEXPAND=	CONFIGURE_ENV MAKE_ENV
 
 .include <bsd.port.pre.mk>
 
-.if ${PORT_OPTIONS:MPURE}
-IGNORE=	PURE option is not valid anymore, no libraries are bundled
-.endif
+#.if ${PORT_OPTIONS:MPURE}
+#IGNORE=	PURE option is not valid anymore, no libraries are bundled
+#.endif
 
 post-extract:
+.if ${PORT_OPTIONS:MPURE}
+.for L in ${BUNDLED_LIBS}
+	@${ECHO_MSG} "====>  Extracting bundled ${L:C/[:].+//:tl}"
+	@${TAR} -xf ${SRC_DIR}/${L:C/[:].+//:tl}-${BUNDLED_VERSION_${L:C/[:].+//}}.tar.${L:C/.+[:]//} -C ${SRC_DIR}
+.endfor
+.endif
 	@${ECHO_MSG} "====>  Extracting bundled binutils"
 	@${TAR} -xf ${SRC_DIR}/binutils.tar.bz2 -C ${SRC_DIR}
 	@${ECHO_MSG} "====>  Extracting bundled gcc"

Modified: head/devel/gcc-arm-embedded/files/Makefile
==============================================================================
--- head/devel/gcc-arm-embedded/files/Makefile	Fri Jun  5 15:08:45 2020	(r538028)
+++ head/devel/gcc-arm-embedded/files/Makefile	Fri Jun  5 15:48:37 2020	(r538029)
@@ -8,7 +8,11 @@ PKGVERSION=	GNU Arm Embedded Toolchain
 BUILD_PREFIX=	${WRKDIR}/build
 DOC_PREFIX=	${INTERIM_PREFIX}/${DOCS_SUFFIX}
 
+.if ${PORT_OPTIONS:MPURE}
+WORLD_LIB=${INTERIM_WORLD}
+.else
 WORLD_LIB=${LOCALBASE}
+.endif
 
 LDFLAGS+=	-L${WORLD_LIB}/lib
 
@@ -18,7 +22,18 @@ MAKE_ARGS+=     CFLAGS="-Wno-error -fbracket-depth=512
 
 MISC_DOCS=	license.txt readme.txt release.txt
 
+.if ${PORT_OPTIONS:MPURE}
+PREREQUISITES=	libiconv \
+		expat \
+		zlib \
+		libelf \
+		gmp \
+		mpfr \
+		mpc \
+		isl
+.else
 PREREQUISITES=
+.endif
 
 .if ${PORT_OPTIONS:MPYGDB}
 _pygdb=		build-pygdb
@@ -43,7 +58,7 @@ COMMON_GDB_CONFIGURE_ARGS= \
 	 --with-libexpat-prefix=${WORLD_LIB} \
 	 --with-libiconv-prefix=${WORLD_LIB} \
 	 --with-lzma=no \
-	 --with-system-gdbinit=${INTERIM_PREFIX}/xxxx/${TARGET}/lib/gdbinit \
+	 --with-system-gdbinit=${INTERIM_PREFIX}/${TARGET}/lib/gdbinit \
 	 --with-gdb-datadir='$${prefix}/${TARGET}/share/gdb' \
 	 --with-pkgversion="${PKGVERSION}"
 
@@ -60,10 +75,136 @@ ALL_BUILD=	build-binutils \
 		strip-binaries \
 		strip-target-libraries
 
-.PHONY: ${ALL_BUILD}
+.PHONY: ${PREREQUISITES} ${ALL_BUILD}
 
-all: ${ALL_BUILD}
+all: ${PREREQUISITES} ${ALL_BUILD}
 
+libiconv:
+	@${ECHO_MSG} "====>  Build libiconv"
+	@${RM} -rf ${BUILD_PREFIX}/libiconv
+	@${MKDIR} ${BUILD_PREFIX}/libiconv
+	@${ECHO_MSG} "=====>  Configure"
+	@cd ${BUILD_PREFIX}/libiconv && \
+	 ${MAKE_ENV} ${CONFIGURE_ENV} ${SRC_DIR}/libiconv-${BUNDLED_VERSION_LIBICONV}/configure \
+	 --prefix=${INTERIM_WORLD} \
+	 --disable-shared \
+	 --disable-nls
+	@${ECHO_MSG} "=====>  Build"
+	@${MAKE_ENV} ${MAKE_CMD} -j${MAKE_JOBS_NUMBER} -C ${BUILD_PREFIX}/libiconv all ${MAKE_ARGS}
+	@${ECHO_MSG} "=====>  Install into intermediate directory"
+	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/libiconv install ${MAKE_ARGS}
+
+expat:
+	@${ECHO_MSG} "====>  Build expat"
+	@${RM} -rf ${BUILD_PREFIX}/expat
+	@${MKDIR} ${BUILD_PREFIX}/expat
+	@${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
+	@${ECHO_MSG} "=====>  Build"
+	@${MAKE_ENV} ${MAKE_CMD} -j${MAKE_JOBS_NUMBER} -C ${BUILD_PREFIX}/expat all ${MAKE_ARGS}
+	@${ECHO_MSG} "=====>  Install into intermediate directory"
+	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/expat install ${MAKE_ARGS}
+
+zlib:
+	@${ECHO_MSG} "====>  Build zlib"
+	@${RM} -rf ${BUILD_PREFIX}/zlib
+	@${MKDIR} ${BUILD_PREFIX}/zlib
+	@${ECHO_MSG} "=====>  Copy to build dir"
+	@${TAR} -cf - -C ${SRC_DIR}/zlib-${BUNDLED_VERSION_ZLIB} . | ${TAR} -xf - -C ${BUILD_PREFIX}/zlib
+	@${ECHO_MSG} "=====>  Configure"
+	@cd ${BUILD_PREFIX}/zlib && \
+	 ${MAKE_ENV} ${CONFIGURE_ENV} ./configure \
+	 --static \
+	 --prefix=${INTERIM_WORLD}
+	@${ECHO_MSG} "=====>  Build"
+	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/zlib ${MAKE_ARGS}
+	@${ECHO_MSG} "=====>  Install into intermediate directory"
+	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/zlib install ${MAKE_ARGS}
+
+libelf:
+	@${ECHO_MSG} "====>  Build libelf"
+	@${RM} -rf ${BUILD_PREFIX}/libelf
+	@${MKDIR} ${BUILD_PREFIX}/libelf
+	@${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
+	@${ECHO_MSG} "=====>  Build"
+	@${MAKE_ENV} ${MAKE_CMD} -j${MAKE_JOBS_NUMBER} -C ${BUILD_PREFIX}/libelf all ${MAKE_ARGS}
+	@${ECHO_MSG} "=====>  Install into intermediate directory"
+	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/libelf install ${MAKE_ARGS}
+
+gmp:
+	@${ECHO_MSG} "====>  Build gmp"
+	@${RM} -rf ${BUILD_PREFIX}/gmp
+	@${MKDIR} ${BUILD_PREFIX}/gmp
+	@${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
+	@${ECHO_MSG} "=====>  Build"
+	@${MAKE_ENV} ${MAKE_CMD} -j${MAKE_JOBS_NUMBER} -C ${BUILD_PREFIX}/gmp all ${MAKE_ARGS}
+	@${ECHO_MSG} "=====>  Install into intermediate directory"
+	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/gmp install ${MAKE_ARGS}
+
+mpfr:
+	@${ECHO_MSG} "====>  Build mpfr"
+	@${RM} -rf ${BUILD_PREFIX}/mpfr
+	@${MKDIR} ${BUILD_PREFIX}/mpfr
+	@${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
+	@${ECHO_MSG} "=====>  Build"
+	@${MAKE_ENV} ${MAKE_CMD} -j${MAKE_JOBS_NUMBER} -C ${BUILD_PREFIX}/mpfr all ${MAKE_ARGS}
+	@${ECHO_MSG} "=====>  Install into intermediate directory"
+	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/mpfr install ${MAKE_ARGS}
+
+mpc:
+	@${ECHO_MSG} "====>  Build mpc"
+	@${RM} -rf ${BUILD_PREFIX}/mpc
+	@${MKDIR} ${BUILD_PREFIX}/mpc
+	@${ECHO_MSG} "=====>  Configure"
+	@cd ${BUILD_PREFIX}/mpc && \
+	 ${MAKE_ENV} ${CONFIGURE_ENV} ${SRC_DIR}/mpc-${BUNDLED_VERSION_MPC}/configure \
+	 --prefix=${INTERIM_WORLD} \
+	 --with-gmp=${INTERIM_WORLD} \
+	 --with-mpfr=${INTERIM_WORLD} \
+	 --disable-shared \
+	 --disable-nls
+	@${ECHO_MSG} "=====>  Build"
+	@${MAKE_ENV} ${MAKE_CMD} -j${MAKE_JOBS_NUMBER} -C ${BUILD_PREFIX}/mpc all ${MAKE_ARGS}
+	@${ECHO_MSG} "=====>  Install into intermediate directory"
+	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/mpc install ${MAKE_ARGS}
+
+isl:
+	@${ECHO_MSG} "====>  Build isl"
+	@${RM} -rf ${BUILD_PREFIX}/isl
+	@${MKDIR} ${BUILD_PREFIX}/isl
+	@${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
+	@${ECHO_MSG} "=====>  Build"
+	@${MAKE_ENV} ${MAKE_CMD} -j${MAKE_JOBS_NUMBER} -C ${BUILD_PREFIX}/isl all ${MAKE_ARGS}
+	@${ECHO_MSG} "=====>  Install into intermediate directory"
+	@${MAKE_ENV} ${MAKE_CMD} -C ${BUILD_PREFIX}/isl install ${MAKE_ARGS}
+
 build-binutils:
 	@${ECHO_MSG} "====>  Build binutils"
 	@${RM} -rf ${BUILD_PREFIX}/binutils
@@ -249,6 +390,7 @@ build-gcc-final:
 	 --with-mpc=${WORLD_LIB} \
 	 --with-isl=${WORLD_LIB} \
 	 --with-libelf=${WORLD_LIB} \
+	 --with-libiconv-prefix=${WORLD_LIB} \
 	 --enable-languages=c,c++ \
 	 --enable-plugins \
 	 --disable-decimal-float \

Modified: head/devel/gcc-arm-embedded/pkg-plist
==============================================================================
--- head/devel/gcc-arm-embedded/pkg-plist	Fri Jun  5 15:08:45 2020	(r538028)
+++ head/devel/gcc-arm-embedded/pkg-plist	Fri Jun  5 15:48:37 2020	(r538029)
@@ -3668,6 +3668,7 @@ gcc-arm-embedded-%%FULL_VERSION%%/share/gcc-%%TARGET%%
 %%PORTDOCS%%%%HTML%%%%DOCSDIR%%/html/as.html/Z80_002dCase.html
 %%PORTDOCS%%%%HTML%%%%DOCSDIR%%/html/as.html/Z80_002dChars.html
 %%PORTDOCS%%%%HTML%%%%DOCSDIR%%/html/as.html/Z80_002dDependent.html
+%%PORTDOCS%%%%HTML%%%%DOCSDIR%%/html/as.html/Z80_002dLabels.html
 %%PORTDOCS%%%%HTML%%%%DOCSDIR%%/html/as.html/Z80_002dRegs.html
 %%PORTDOCS%%%%HTML%%%%DOCSDIR%%/html/as.html/Z80-Directives.html
 %%PORTDOCS%%%%HTML%%%%DOCSDIR%%/html/as.html/Z80-Floating-Point.html
@@ -3758,6 +3759,7 @@ gcc-arm-embedded-%%FULL_VERSION%%/share/gcc-%%TARGET%%
 %%PORTDOCS%%%%HTML%%%%DOCSDIR%%/html/binutils.html/Bug-Reporting.html
 %%PORTDOCS%%%%HTML%%%%DOCSDIR%%/html/binutils.html/c_002b_002bfilt.html
 %%PORTDOCS%%%%HTML%%%%DOCSDIR%%/html/binutils.html/Common-Options.html
+%%PORTDOCS%%%%HTML%%%%DOCSDIR%%/html/binutils.html/debuginfod.html
 %%PORTDOCS%%%%HTML%%%%DOCSDIR%%/html/binutils.html/def-file-format.html
 %%PORTDOCS%%%%HTML%%%%DOCSDIR%%/html/binutils.html/dlltool.html
 %%PORTDOCS%%%%HTML%%%%DOCSDIR%%/html/binutils.html/elfedit.html
@@ -5845,6 +5847,7 @@ gcc-arm-embedded-%%FULL_VERSION%%/share/gcc-%%TARGET%%
 %%PORTDOCS%%%%HTML%%%%DOCSDIR%%/html/libc/wmempcpy.html
 %%PORTDOCS%%%%HTML%%%%DOCSDIR%%/html/libc/wmemset.html
 %%PORTDOCS%%%%HTML%%%%DOCSDIR%%/html/libiberty.html
+%%PORTDOCS%%%%HTML%%%%DOCSDIR%%/html/libm/Fenv.html
 %%PORTDOCS%%%%HTML%%%%DOCSDIR%%/html/libm/acos.html
 %%PORTDOCS%%%%HTML%%%%DOCSDIR%%/html/libm/acosh.html
 %%PORTDOCS%%%%HTML%%%%DOCSDIR%%/html/libm/asin.html
@@ -5887,6 +5890,17 @@ gcc-arm-embedded-%%FULL_VERSION%%/share/gcc-%%TARGET%%
 %%PORTDOCS%%%%HTML%%%%DOCSDIR%%/html/libm/expm1.html
 %%PORTDOCS%%%%HTML%%%%DOCSDIR%%/html/libm/fabs.html
 %%PORTDOCS%%%%HTML%%%%DOCSDIR%%/html/libm/fdim.html
+%%PORTDOCS%%%%HTML%%%%DOCSDIR%%/html/libm/feclearexcept.html
+%%PORTDOCS%%%%HTML%%%%DOCSDIR%%/html/libm/fegetenv.html
+%%PORTDOCS%%%%HTML%%%%DOCSDIR%%/html/libm/fegetexceptflag.html
+%%PORTDOCS%%%%HTML%%%%DOCSDIR%%/html/libm/fegetround.html
+%%PORTDOCS%%%%HTML%%%%DOCSDIR%%/html/libm/feholdexcept.html
+%%PORTDOCS%%%%HTML%%%%DOCSDIR%%/html/libm/feraiseexcept.html
+%%PORTDOCS%%%%HTML%%%%DOCSDIR%%/html/libm/fesetenv.html
+%%PORTDOCS%%%%HTML%%%%DOCSDIR%%/html/libm/fesetexceptflag.html
+%%PORTDOCS%%%%HTML%%%%DOCSDIR%%/html/libm/fesetround.html
+%%PORTDOCS%%%%HTML%%%%DOCSDIR%%/html/libm/fetestexcept.html
+%%PORTDOCS%%%%HTML%%%%DOCSDIR%%/html/libm/feupdateenv.html
 %%PORTDOCS%%%%HTML%%%%DOCSDIR%%/html/libm/floor.html
 %%PORTDOCS%%%%HTML%%%%DOCSDIR%%/html/libm/fma.html
 %%PORTDOCS%%%%HTML%%%%DOCSDIR%%/html/libm/fmax.html
@@ -5911,7 +5925,6 @@ gcc-arm-embedded-%%FULL_VERSION%%/share/gcc-%%TARGET%%
 %%PORTDOCS%%%%HTML%%%%DOCSDIR%%/html/libm/lrint.html
 %%PORTDOCS%%%%HTML%%%%DOCSDIR%%/html/libm/lround.html
 %%PORTDOCS%%%%HTML%%%%DOCSDIR%%/html/libm/Math.html
-%%PORTDOCS%%%%HTML%%%%DOCSDIR%%/html/libm/matherr.html
 %%PORTDOCS%%%%HTML%%%%DOCSDIR%%/html/libm/modf.html
 %%PORTDOCS%%%%HTML%%%%DOCSDIR%%/html/libm/nan.html
 %%PORTDOCS%%%%HTML%%%%DOCSDIR%%/html/libm/nearbyint.html



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