Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 3 Oct 2021 20:03:01 +0200
From:      Piotr Kubaj <pkubaj@anongoth.pl>
To:        Fernando =?utf-8?Q?Apestegu=C3=ADa?= <fernape@freebsd.org>
Cc:        ports-committers@freebsd.org, dev-commits-ports-all@freebsd.org, dev-commits-ports-main@freebsd.org
Subject:   Re: git: 07fb2d5e9d00 - main - */*: Remove compiler:openmp from Mk/Uses/compiler.mk
Message-ID:  <YVnwVTtGSchnl4qN@KGPE-D16>
In-Reply-To: <202110031752.193HqoYO020693@gitrepo.freebsd.org>

index | next in thread | previous in thread | raw e-mail

[-- Attachment #1 --]
This is not correct. clang still doesn't have openmp support on some architectures.
Instead of removing this option, it should use clang where openmp is available and gcc where it's not availaible.

From src.conf(5) on 13.0-RELEASE:
     WITHOUT_OPENMP
             Set to not build LLVM's OpenMP runtime.

             This is a default setting on arm/armv6, arm/armv7, mips/mips,
             mips/mips64, powerpc/powerpc, riscv/riscv64 and riscv/riscv64sf.

I switched riscv64* to WITH_OPENMP after 13.0-RELEASE, but other architectures are still affected.

Until ALL the supported architectures on all the supported stable branches are switched, this option needs to stay.
And last I tried, I found out that at least on powerpc, there's still no openmp support (don't confuse it with powerpc64 and powerpc64le on which openmp works with clang).

On 21-10-03 17:52:50, Fernando Apesteguía wrote:
> The branch main has been updated by fernape:
> 
> URL: https://cgit.FreeBSD.org/ports/commit/?id=07fb2d5e9d001934f1670d01aec1f536f14ebde2
> 
> commit 07fb2d5e9d001934f1670d01aec1f536f14ebde2
> Author:     Fernando Apesteguía <fernape@FreeBSD.org>
> AuthorDate: 2021-09-12 15:18:06 +0000
> Commit:     Fernando Apesteguía <fernape@FreeBSD.org>
> CommitDate: 2021-10-03 17:47:27 +0000
> 
>     */*: Remove compiler:openmp from Mk/Uses/compiler.mk
>     
>     The option implied a dependency on gcc but clang got openmp support long ago.
>     
>     Remove compiler:openmp from Mk/Uses/compiler.mk
>     
>     For ports using USE=compiler:openmp, just remove it and make them build with
>     clang.
>     Fix conditionals when necessary
>     Bump PORTREVISION where appropriate
>     
>     If problem arises, they can be addressed by using USE_GCC=yes
>     
>     An update to the Porter's Handbook will follow.
>     
>     Approved by: portmgr (bapt)
>     Differential Revision: https://reviews.freebsd.org/D31971
> ---
>  Mk/Uses/compiler.mk            | 14 ++------------
>  archivers/pxz/Makefile         |  4 ++--
>  archivers/rpm4/Makefile        |  3 ++-
>  biology/pooler/Makefile        |  5 ++---
>  biology/seqan-apps/Makefile    |  4 ++--
>  cad/calculix-ccx/Makefile      |  4 ++--
>  graphics/ImageMagick6/Makefile |  7 +++----
>  graphics/ImageMagick7/Makefile |  8 +++-----
>  graphics/aaphoto/Makefile      |  6 +++---
>  math/hmat-oss/Makefile         | 11 +++--------
>  math/librsb/Makefile           |  3 ++-
>  math/py-theano/Makefile        |  3 ++-
>  math/tmv/Makefile              |  4 ++--
>  math/viennacl/Makefile         |  4 ++--
>  14 files changed, 32 insertions(+), 48 deletions(-)
> 
> diff --git a/Mk/Uses/compiler.mk b/Mk/Uses/compiler.mk
> index 18c8dec90cf5..6e03765f2a50 100644
> --- a/Mk/Uses/compiler.mk
> +++ b/Mk/Uses/compiler.mk
> @@ -2,7 +2,7 @@
>  #
>  # Feature:	compiler
>  # Usage:	USES=compiler or USES=compiler:ARGS
> -# Valid ARGS:	env (default, implicit) c++0x c++11-lib c++11-lang c11 openmp nestedfct features
> +# Valid ARGS:	env (default, implicit) c++0x c++11-lib c++11-lang c11 nestedfct features
>  #
>  # c++0x:	The port needs a compiler understanding C++0X
>  # c++11-lang:	The port needs a compiler understanding C++11
> @@ -11,7 +11,6 @@
>  # gcc-c++11-lib:The port needs g++ compiler with a C++11 library
>  # c++11-lib:	The port needs a compiler understanding C++11 and with a C++11 ready standard library
>  # c11:		The port needs a compiler understanding C11
> -# openmp:	The port needs a compiler understanding openmp
>  # nestedfct:	The port needs a compiler understanding nested functions
>  # features:	The port will determine the features supported by the default compiler
>  #
> @@ -34,7 +33,7 @@ _INCLUDE_USES_COMPILER_MK=	yes
>  compiler_ARGS=	env
>  .endif
>  
> -VALID_ARGS=	c++11-lib c++11-lang c++14-lang c++17-lang c11 features openmp env nestedfct c++0x gcc-c++11-lib
> +VALID_ARGS=	c++11-lib c++11-lang c++14-lang c++17-lang c11 features env nestedfct c++0x gcc-c++11-lib
>  
>  _CC_hash:=	${CC:hash}
>  _CXX_hash:=	${CXX:hash}
> @@ -57,8 +56,6 @@ _COMPILER_ARGS+=	features c11
>  _COMPILER_ARGS+=	features
>  .elif ${compiler_ARGS} == env
>  _COMPILER_ARGS+=	env
> -.elif ${compiler_ARGS} == openmp
> -_COMPILER_ARGS+=	env openmp
>  .elif ${compiler_ARGS} == nestedfct
>  _COMPILER_ARGS+=	env nestedfct
>  .else
> @@ -110,13 +107,6 @@ ALT_COMPILER_TYPE=	gcc
>  
>  CHOSEN_COMPILER_TYPE=	${COMPILER_TYPE}
>  
> -.if ${_COMPILER_ARGS:Mopenmp}
> -.if ${COMPILER_TYPE} == clang
> -USE_GCC=	yes
> -CHOSEN_COMPILER_TYPE=	gcc
> -.endif
> -.endif
> -
>  .if ${_COMPILER_ARGS:Mnestedfct}
>  .if ${COMPILER_TYPE} == clang
>  USE_GCC=	any
> diff --git a/archivers/pxz/Makefile b/archivers/pxz/Makefile
> index 9f31be6ddfb6..0e6a5793ca2a 100644
> --- a/archivers/pxz/Makefile
> +++ b/archivers/pxz/Makefile
> @@ -2,7 +2,7 @@
>  
>  PORTNAME=	pxz
>  PORTVERSION=	0.20141018
> -PORTREVISION=	8
> +PORTREVISION=	9
>  CATEGORIES=	archivers
>  MASTER_SITES=	LOCAL/delphij
>  DISTNAME=	pxz-git-${PORTVERSION:S/0.//}
> @@ -15,7 +15,7 @@ LICENSE_FILE=	${WRKSRC}/COPYING
>  
>  WRKSRC=		${WRKDIR}/${PORTNAME}
>  
> -USES=		cpe compiler:openmp tar:xz
> +USES=		cpe tar:xz
>  PLIST_FILES=	bin/pxz share/man/man1/pxz.1.gz
>  
>  CPE_VENDOR=	pxz_project
> diff --git a/archivers/rpm4/Makefile b/archivers/rpm4/Makefile
> index b34e6aadd90c..605deb742b68 100644
> --- a/archivers/rpm4/Makefile
> +++ b/archivers/rpm4/Makefile
> @@ -2,6 +2,7 @@
>  
>  PORTNAME=	rpm
>  PORTVERSION=	4.16.1.3
> +PORTREVISION=	1
>  CATEGORIES=	archivers
>  MASTER_SITES=	http://ftp.rpm.org/releases/rpm-4.16.x/
>  PKGNAMESUFFIX=	4
> @@ -20,7 +21,7 @@ LIB_DEPENDS=	libpopt.so:devel/popt \
>  RUN_DEPENDS=	bash:shells/bash \
>  		gxargs:misc/findutils
>  
> -USES=		alias bdb sqlite compiler:openmp cpe gmake iconv libarchive libtool \
> +USES=		alias bdb sqlite cpe gmake iconv libarchive libtool \
>  		lua:52+ pathfix pkgconfig shebangfix tar:bzip2
>  USE_LDCONFIG=	yes
>  
> diff --git a/biology/pooler/Makefile b/biology/pooler/Makefile
> index f674ed8d0e6f..8236638d0c4a 100644
> --- a/biology/pooler/Makefile
> +++ b/biology/pooler/Makefile
> @@ -1,6 +1,7 @@
>  PORTNAME=		pooler
>  DISTVERSIONPREFIX=	v
>  DISTVERSION=		1.78
> +PORTREVISION=		1
>  CATEGORIES=		biology
>  
>  MAINTAINER=	ssb22@cam.ac.uk
> @@ -9,9 +10,6 @@ COMMENT=	Optimise DNA sequencing primer-set combinations
>  LICENSE=	APACHE20
>  LICENSE_FILE=	${WRKDIR}/${GH_PROJECT}-${PORTVERSION}/LICENSE
>  
> -# Not needed on x86, aarch64, or ppc64-13.x
> -# Might need gcc on 32-bit ARM/PPC
> -USES=		compiler:openmp
>  USE_GITHUB=	yes
>  
>  GH_ACCOUNT=	ssb22
> @@ -24,3 +22,4 @@ INSTALL_TARGET=	install-strip
>  PLIST_FILES=	bin/pooler man/man1/pooler.1.gz share/applications/pooler.desktop
>  
>  .include <bsd.port.mk>
> +
> diff --git a/biology/seqan-apps/Makefile b/biology/seqan-apps/Makefile
> index 01879b514c32..57a78e8657df 100644
> --- a/biology/seqan-apps/Makefile
> +++ b/biology/seqan-apps/Makefile
> @@ -3,7 +3,7 @@
>  PORTNAME=	seqan-apps
>  DISTVERSIONPREFIX=	seqan-v
>  DISTVERSION=	2.4.0
> -PORTREVISION=	9
> +PORTREVISION=	10
>  CATEGORIES=	biology
>  
>  MAINTAINER=	h2+fbsdports@fsfe.org
> @@ -14,7 +14,7 @@ LICENSE_COMB=	multi
>  
>  BUILD_DEPENDS=	boost-libs>0:devel/boost-libs
>  
> -USES=		cmake compiler:openmp # once #199603 is resolved, add c++14-lang
> +USES=		cmake
>  USE_GITHUB=	yes
>  GH_ACCOUNT=	seqan
>  GH_PROJECT=	seqan
> diff --git a/cad/calculix-ccx/Makefile b/cad/calculix-ccx/Makefile
> index c5733de025f5..3807d9a7ea8d 100644
> --- a/cad/calculix-ccx/Makefile
> +++ b/cad/calculix-ccx/Makefile
> @@ -2,7 +2,7 @@
>  
>  PORTNAME=	ccx
>  PORTVERSION=	2.17
> -PORTREVISION=	1
> +PORTREVISION=	2
>  CATEGORIES=	cad
>  MASTER_SITES=	http://www.dhondt.de/
>  PKGNAMEPREFIX=	CalculiX-
> @@ -18,7 +18,7 @@ LICENSE=	GPLv2
>  LIB_DEPENDS=	libarpack.so:math/arpack-ng	\
>  		libspooles.so:math/spooles
>  
> -USES=		blaslapack compiler:openmp fortran gmake perl5 tar:bzip2
> +USES=		blaslapack fortran gmake perl5 tar:bzip2
>  USE_PERL5=	build
>  
>  DIST_SOURCES=	ccx_${PORTVERSION}.src${EXTRACT_SUFX}
> diff --git a/graphics/ImageMagick6/Makefile b/graphics/ImageMagick6/Makefile
> index f013c0906b14..fca01f41e974 100644
> --- a/graphics/ImageMagick6/Makefile
> +++ b/graphics/ImageMagick6/Makefile
> @@ -1,6 +1,6 @@
>  PORTNAME=	ImageMagick
>  DISTVERSION=	6.9.12-12
> -PORTREVISION=	2
> +PORTREVISION=	3
>  PORTEPOCH=	1
>  CATEGORIES=	graphics perl5
>  MASTER_SITES=	https://www.imagemagick.org/download/ \
> @@ -232,11 +232,10 @@ _IMAGEMAGICK_THREADS=no
>  . if ${_IMAGEMAGICK_THREADS} == "no"
>  IGNORE=OpenMP requires threads${_IMAGEMAGICK_THREADS_IGNORE_MSG}
>  . else
> -CONFIGURE_ARGS+=	--enable-openmp
> -USES+=		compiler:openmp
> +CONFIGURE_ARGS+=       --enable-openmp
>  . endif
>  .else
> -CONFIGURE_ARGS+=	--disable-openmp
> +CONFIGURE_ARGS+=       --disable-openmp
>  .endif
>  
>  .if defined(WITH_WINDOWS_FONT_DIR)
> diff --git a/graphics/ImageMagick7/Makefile b/graphics/ImageMagick7/Makefile
> index 630fa460b5d6..8df8dca03fd3 100644
> --- a/graphics/ImageMagick7/Makefile
> +++ b/graphics/ImageMagick7/Makefile
> @@ -1,6 +1,6 @@
>  PORTNAME=	ImageMagick
>  DISTVERSION=	7.0.11-12
> -PORTREVISION=	2
> +PORTREVISION=	3
>  CATEGORIES=	graphics perl5
>  MASTER_SITES=	https://www.imagemagick.org/download/ \
>  		https://www.imagemagick.org/download/releases/ \
> @@ -230,13 +230,11 @@ _IMAGEMAGICK_THREADS=no
>  . if ${_IMAGEMAGICK_THREADS} == "no"
>  IGNORE=OpenMP requires threads${_IMAGEMAGICK_THREADS_IGNORE_MSG}
>  . else
> -CONFIGURE_ARGS+=	--enable-openmp
> -USES+=		compiler:openmp
> +CONFIGURE_ARGS+=       --enable-openmp
>  . endif
>  .else
> -CONFIGURE_ARGS+=	--disable-openmp
> +CONFIGURE_ARGS+=       --disable-openmp
>  .endif
> -
>  .if defined(WITH_WINDOWS_FONT_DIR)
>  CONFIGURE_ARGS+=	--with-windows-font-dir=${WITH_WINDOWS_FONT_DIR}
>  .endif
> diff --git a/graphics/aaphoto/Makefile b/graphics/aaphoto/Makefile
> index 18f8dfcb8d3d..f6d67a94764c 100644
> --- a/graphics/aaphoto/Makefile
> +++ b/graphics/aaphoto/Makefile
> @@ -3,7 +3,7 @@
>  PORTNAME=	aaphoto
>  PORTVERSION=	0.43.1
>  DISTVERSIONPREFIX=	v
> -PORTREVISION=	11
> +PORTREVISION=	12
>  CATEGORIES=	graphics
>  
>  MAINTAINER=	mail@log69.com
> @@ -18,7 +18,7 @@ USE_GITHUB=	yes
>  GH_ACCOUNT=	log69
>  
>  GNU_CONFIGURE=	yes
> -USES=		compiler:openmp jpeg
> +USES=		jpeg
>  
>  CPPFLAGS+=	-I${LOCALBASE}/include
>  LDFLAGS+=	-L${LOCALBASE}/lib
> @@ -27,7 +27,7 @@ PLIST_FILES=	bin/aaphoto
>  
>  .include <bsd.port.pre.mk>
>  
> -.if (${ARCH} == amd64 || ${ARCH} == i386) && ${CHOSEN_COMPILER_TYPE} == gcc
> +.if (${ARCH} == amd64 || ${ARCH} == i386)
>  CFLAGS+=	-fopenmp -D__OPENMP__
>  .endif
>  
> diff --git a/math/hmat-oss/Makefile b/math/hmat-oss/Makefile
> index e54cb7d5ed35..cd215947f434 100644
> --- a/math/hmat-oss/Makefile
> +++ b/math/hmat-oss/Makefile
> @@ -1,5 +1,6 @@
>  PORTNAME=	hmat-oss
>  DISTVERSION=	1.7.1
> +PORTREVISION=	1
>  CATEGORIES=	math
>  
>  MAINTAINER=	yuri@FreeBSD.org
> @@ -10,7 +11,7 @@ LICENSE_FILE=	${WRKSRC}/LICENSE.md
>  
>  LIB_DEPENDS=	libopenblas.so:math/openblas
>  
> -USES=		cmake compiler:openmp
> +USES=		cmake
>  USE_LDCONFIG=	yes
>  
>  USE_GITHUB=	yes
> @@ -22,12 +23,6 @@ CMAKE_OFF=	HMAT_GIT_VERSION
>  
>  LDFLAGS+=	-lexecinfo
>  
> -.include <bsd.port.pre.mk>
> -
> -.if ${CHOSEN_COMPILER_TYPE} == gcc
> -USE_GCC=	yes
> -.endif
> -
>  do-test:
>  	@cd ${BUILD_WRKSRC} && \
>  		${SETENV} ${CONFIGURE_ENV} ${CMAKE_BIN} ${CMAKE_ARGS} -DBUILD_EXAMPLES:BOOL=ON ${CMAKE_SOURCE_PATH} && \
> @@ -35,4 +30,4 @@ do-test:
>  		${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_ARGS} ${ALL_TARGET} && \
>  		${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_ARGS} test
>  
> -.include <bsd.port.post.mk>
> +.include <bsd.port.mk>
> diff --git a/math/librsb/Makefile b/math/librsb/Makefile
> index 187ead3b681a..a98c55792372 100644
> --- a/math/librsb/Makefile
> +++ b/math/librsb/Makefile
> @@ -2,6 +2,7 @@
>  
>  PORTNAME=	librsb
>  PORTVERSION=	1.2.0.10
> +PORTREVISION=	1
>  CATEGORIES=	math
>  MASTER_SITES=	SF/librsb
>  DISTNAME=	${PORTNAME}-${PORTVERSION:S/r/-rc/}
> @@ -15,7 +16,7 @@ LICENSE_FILE=	${WRKSRC}/COPYING
>  BUILD_DEPENDS=	gsed:textproc/gsed \
>  		bash:shells/bash
>  
> -USES=		fortran compiler:openmp gmake shebangfix libtool
> +USES=		fortran gmake shebangfix libtool
>  INSTALL_TARGET=	install-strip
>  TEST_TARGET=	qtests
>  GNU_CONFIGURE=	yes
> diff --git a/math/py-theano/Makefile b/math/py-theano/Makefile
> index 99c7e6c4c77f..85a928551040 100644
> --- a/math/py-theano/Makefile
> +++ b/math/py-theano/Makefile
> @@ -2,6 +2,7 @@
>  
>  PORTNAME=	theano
>  DISTVERSION=	1.0.5
> +PORTREVISION=	1
>  CATEGORIES=	math python
>  MASTER_SITES=	CHEESESHOP
>  PKGNAMEPREFIX=	${PYTHON_PKGNAMEPREFIX}
> @@ -17,7 +18,7 @@ RUN_DEPENDS=	${PYNUMPY} \
>  		${PYTHON_PKGNAMEPREFIX}scipy>=0.8.0:science/py-scipy@${PY_FLAVOR} \
>  		${PYTHON_PKGNAMEPREFIX}six>=1.9.0:devel/py-six@${PY_FLAVOR}
>  
> -USES=		compiler:openmp python:3.6+
> +USES=		python:3.6+
>  USE_PYTHON=	concurrent distutils autoplist
>  
>  NO_ARCH=	yes
> diff --git a/math/tmv/Makefile b/math/tmv/Makefile
> index 1783cfc1dd68..9ec06912099c 100644
> --- a/math/tmv/Makefile
> +++ b/math/tmv/Makefile
> @@ -1,7 +1,7 @@
>  PORTNAME=	tmv
>  DISTVERSIONPREFIX=	v
>  DISTVERSION=	0.75
> -PORTREVISION=	7
> +PORTREVISION=	8
>  CATEGORIES=	math
>  
>  MAINTAINER=	yuri@FreeBSD.org
> @@ -10,7 +10,7 @@ COMMENT=	Fast, intuitive linear algebra library for C++
>  LICENSE=	BSD2CLAUSE
>  LICENSE_FILE=	${WRKSRC}/TMV_LICENSE
>  
> -USES=		compiler:openmp gmake blaslapack:netlib localbase
> +USES=		gmake blaslapack:netlib localbase
>  USE_GITHUB=	yes
>  GH_ACCOUNT=	rmjarvis
>  USE_LDCONFIG=	yes
> diff --git a/math/viennacl/Makefile b/math/viennacl/Makefile
> index 4eaabd71266d..d10341decf3d 100644
> --- a/math/viennacl/Makefile
> +++ b/math/viennacl/Makefile
> @@ -2,7 +2,7 @@
>  
>  PORTNAME=	viennacl
>  PORTVERSION=	1.7.1
> -PORTREVISION=	5
> +PORTREVISION=	6
>  CATEGORIES=	math
>  MASTER_SITES=	SF/${PORTNAME}/1.7.x/
>  DISTNAME=	ViennaCL-${PORTVERSION}
> @@ -17,6 +17,6 @@ BUILD_DEPENDS=	${LOCALBASE}/include/CL/opencl.h:devel/opencl
>  LIB_DEPENDS=	libOpenCL.so:devel/ocl-icd
>  RUN_DEPENDS=	${LOCALBASE}/include/CL/opencl.h:devel/opencl
>  
> -USES=		cmake compiler:openmp localbase
> +USES=		cmake localbase
>  
>  .include <bsd.port.mk>

[-- Attachment #2 --]
-----BEGIN PGP SIGNATURE-----

iQIzBAABCgAdFiEEycyIeNkkgohzsoorelmbhSCDnJ0FAmFZ8FUACgkQelmbhSCD
nJ3mnhAAxn6vleisRb5qWrKSd19J2gtF/ykw9Csec2HLcD45fN5HOgwzZPLonzl+
19LEyI8oI8ZXjNs+AWsAvwzJkMyV84Hn9ki0S0a8nwBrJdnCWoyRoq6ubFRF4ioM
nnbGg5gDFgyScdqOaSh0DbpJwofccaw6z6tV1jh+gPicS9UBZHVdzUU9Q7yVR2wE
mTWpA8PLDIsrok27STxUwpkIvw8RVQXfySI8039wxrIg6gzU3jnohlD4JnLXBVKH
SHVfIq7/BBc9650fKVBGtUOVWg2Q9Xl8CGWXgpMwnu9h1ftArJOGSvfoRaN97II5
wD1nOWkCuLjnZKL25DHSwLaWX6jx7YWo6g7AEwsFhLjyk9yVlCCyOTs3PxlXletU
ZpThUSJJYxrFQ7TtGsjTncOFbdvSSCRx6ZbXA7aXy+SBp91xRCKFUpqh8WZnNAE1
cLk9pffXTvO/iYy0MmsVoZeooK59oujbOGrvugRXwfmRV7/Vo4G1yrjp26rmHrWi
d5OObxa++uab6MEhJ1FTRugO+uyKaMMm96nrxg/PYyLXVvEIS2aLocjFcBJ3cL0g
hHeN2Hstf1hPu1YzsDKAsSV9u+AdcN0e+H/OPjAdHj1egy+BvarKsoFUZkyK1Kt1
qoFicLADEdElf0OqZByQURKzmU/CtxR+j8PxwDmWLcGIXPA04wo=
=AsIx
-----END PGP SIGNATURE-----
home | help

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