ports/130740: science/netcdf: fix broken fortran support

Shin'ya Murakami murashin at gfd-dennou.org
Mon Jan 19 14:53:43 UTC 2009


That patch which I posted few hours ago was still wrong 
because it leads to failure of 'make regression-test'.
I found the solution at the netcdf website. 
The flag -DpgiFortran in CPPFLAGS instead of -Df2cFortran 
needs to link Fortran objects with gfortran 4.3.
I confirmed that `make regression-test` with a below patch succeeded.

reference: 
   http://www.unidata.ucar.edu/software/netcdf/docs/known_problems.html#gfortran_43

----
Shin'ya Murakami

diff -urN /usr/ports/science/netcdf/Makefile netcdf/Makefile
--- /usr/ports/science/netcdf/Makefile	2009-01-19 20:58:13.000000000 +0900
+++ netcdf/Makefile	2009-01-19 22:50:36.000000000 +0900
@@ -7,7 +7,7 @@
 
 PORTNAME=	netcdf
 PORTVERSION=	3.6.3
-PORTREVISION=	3
+PORTREVISION=	4
 CATEGORIES=	science
 MASTER_SITES=	ftp://ftp.unidata.ucar.edu/pub/netcdf/	\
 		http://sunpoet.net/distfiles/
@@ -18,7 +18,7 @@
 CONFLICTS=	hdf-4.* netcdf-4.*
 
 CONFIGURE_ARGS=	--enable-shared
-CONFIGURE_ENV=	CPPFLAGS="${CPPFLAGS} -I${LOCALBASE}/include -fPIC -DPIC -Df2cFortran"
+CONFIGURE_ENV=	CPPFLAGS="${CPPFLAGS} -I${LOCALBASE}/include -fPIC -DPIC -DpgiFortran"
 
 GNU_CONFIGURE=	yes
 USE_LDCONFIG=	yes
@@ -32,6 +32,8 @@
 
 OPTIONS=	FORTRAN "Build library for Fortran" off
 
+.include <bsd.port.pre.mk>
+
 .if !defined(NOPORTDOCS)
 CONFIGURE_ARGS+=--enable-docs-install
 .else
@@ -69,4 +71,4 @@
 regression-test: build
 	@cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} ${MAKE} check
 
-.include <bsd.port.mk>
+.include <bsd.port.post.mk>

From: edwin at FreeBSD.org
Date: Mon, 19 Jan 2009 12:40:22 GMT

> Synopsis: science/netcdf: fix broken fortran support
> 
> State-Changed-From-To: open->feedback
> State-Changed-By: edwin
> State-Changed-When: Mon Jan 19 12:40:22 UTC 2009
> State-Changed-Why: 
> Awaiting maintainers feedback (via the GNATS Auto Assign Tool)
> 
> http://www.freebsd.org/cgi/query-pr.cgi?pr=130740



More information about the freebsd-ports-bugs mailing list