From 0f7d7e47b93edd068aeadccd0c95173e323a588d Mon Sep 17 00:00:00 2001 From: tijl Date: Fri, 13 Dec 2013 13:22:32 +0000 Subject: New USES=fortran to replace USE_FORTRAN. USE_FORTRAN=yes can be replaced with USES=fortran or USES=fortran:gcc. USE_FORTRAN=ifort can be replaced with USES=fortran:ifort. USE_FORTRAN=f77 is deprecated and the version of gcc it depends on (lang/gcc34) is scheduled to be removed. Note that USE_FORTRAN=yes also makes GCC the C/C++ compiler while USES=fortran only sets the Fortran compiler and can be used together with Clang as C/C++ compiler. --- Mk/Uses/fortran.mk | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 Mk/Uses/fortran.mk (limited to 'Mk') diff --git a/Mk/Uses/fortran.mk b/Mk/Uses/fortran.mk new file mode 100644 index 000000000000..f86b37d6ec06 --- /dev/null +++ b/Mk/Uses/fortran.mk @@ -0,0 +1,39 @@ +# $FreeBSD$ +# +# Fortran support +# +# MAINTAINER: fortran@FreeBSD.org +# +# Feature: fortran +# Usage: USES=fortran +# Valid ARGS: gcc (default), ifort + +.if !defined(_INCLUDE_USES_FORTRAN_MK) +_INCLUDE_USES_FORTRAN_MK= yes + +.if !defined(fortran_ARGS) +fortran_ARGS= gcc +.endif + +.if ${fortran_ARGS} == gcc +_GCC_VER= 46 +BUILD_DEPENDS+= gfortran${_GCC_VER}:${PORTSDIR}/lang/gcc +RUN_DEPENDS+= gfortran${_GCC_VER}:${PORTSDIR}/lang/gcc +USE_BINUTILS= yes +F77= gfortran${_GCC_VER} +FC= gfortran${_GCC_VER} +FFLAGS+= -Wl,-rpath=${LOCALBASE}/lib/gcc${_GCC_VER} +LDFLAGS+= -Wl,-rpath=${LOCALBASE}/lib/gcc${_GCC_VER} +.elif ${fortran_ARGS} == ifort +BUILD_DEPENDS+= ${LOCALBASE}/intel_fc_80/bin/ifort:${PORTSDIR}/lang/ifc +RUN_DEPENDS+= ${LOCALBASE}/intel_fc_80/bin/ifort:${PORTSDIR}/lang/ifc +F77= ${LOCALBASE}/intel_fc_80/bin/ifort +FC= ${LOCALBASE}/intel_fc_80/bin/ifort +.else +IGNORE= USES=fortran: invalid arguments: ${fortran_ARGS} +.endif + +CONFIGURE_ENV+= F77="${F77}" FC="${FC}" FFLAGS="${FFLAGS}" +MAKE_ENV+= F77="${F77}" FC="${FC}" FFLAGS="${FFLAGS}" + +.endif -- cgit