[138004] trunk/dports/science/octopus/Portfile
dstrubbe at macports.org
dstrubbe at macports.org
Thu Jun 25 09:54:04 PDT 2015
Revision: 138004
https://trac.macports.org/changeset/138004
Author: dstrubbe at macports.org
Date: 2015-06-25 09:54:04 -0700 (Thu, 25 Jun 2015)
Log Message:
-----------
octopus:
* Enable variants +g95 and +gfortran.
* Disable some variants, with explanations about the problems.
* Improved setting of FCCPP to work with llvm and clang.
* Some changes in OpenMPI have made that --disable-mpi2 is no longer necessary. I am revbumping for this, since use of MPI2 can help performance.
* Set MPIEXEC only when using MPI in the tests, and write a caveat.
* Comment on problem with mpi.setup or at least how I am using it.
Modified Paths:
--------------
trunk/dports/science/octopus/Portfile
Modified: trunk/dports/science/octopus/Portfile
===================================================================
--- trunk/dports/science/octopus/Portfile 2015-06-25 16:49:50 UTC (rev 138003)
+++ trunk/dports/science/octopus/Portfile 2015-06-25 16:54:04 UTC (rev 138004)
@@ -6,7 +6,7 @@
name octopus
version 4.1.2
-revision 3
+revision 4
categories science
platforms darwin
license GPL-2+
@@ -25,7 +25,9 @@
checksums rmd160 0ce62e38bed99e436b83489375fe55e53e64a538 \
sha256 c43ac301ff035caee667292841c5d9f166da986634cf2623e3f5a8aa86fe7a69
-mpi.setup require_fortran -clang -dragonegg -fortran
+# dragonegg freezes when building; no acceptable way to set FCCPP for gcc5 or gcc6;
+# clang versions are unnecessary and may cause FCCPP trouble too
+mpi.setup require_fortran -dragonegg -gcc5 -gcc6 -clang
compilers.enforce_fortran libxc
depends_lib port:atlas port:libxc port:fftw-3 port:gsl
@@ -55,21 +57,25 @@
}
pre-configure {
- configure.args-append FCCPP="${configure.cpp} -E -ansi"
+ # note: from version 5.0 the configure script will handle this
+ if {[variant_isset llvm]} {
+ configure.args-append FCCPP="${configure.cc} -x c -E -ansi"
+ } elseif {[string match *cpp-mp-* ${configure.cpp}]} {
+ # gcc's cpp will not accept the -E flag
+ configure.args-append FCCPP="${configure.cpp} -ansi"
+ } else {
+ # clang
+ configure.args-append FCCPP="${configure.cc} -E -ansi"
+ }
}
if {[mpi_variant_isset]} {
configure.args-delete --disable-mpi
configure.args-append --enable-mpi --without-external_zoltan
-
- if {[variant_isset openmpi] || [variant_isset openmpi-devel]} {
- # an in-place allreduce of lxyz_inv in mesh_init.F90 leads to zeroes afterwards with OpenMPI and MPI2
- configure.args-append --disable-mpi2
- }
}
# More options that could be added:
-# variants: berkeleygw, openmp, threads (for fftw, atlas?), scalapack, arpack
+# variants: berkeleygw, openmp, threads (for fftw, atlas?), arpack
# no way to turn off PAPI.
# libxc does not have universal variant, so octopus cannot either
@@ -79,7 +85,13 @@
test.target check-full
pre-test {
- test.env-append MPIEXEC=${prefix}/bin/${mpi.exec}
+ if {[mpi_variant_isset]} {
+ test.env-append MPIEXEC=${prefix}/bin/${mpi.exec}
+ }
+ if {[variant_isset openmpi] || [variant_isset openmpi-devel]} {
+ ui_msg "Note: Test with OpenMPI may hang after periodic_systems/03-sodium_chain.02-ground_state_disp.inp."
+ ui_msg "This does not seem necessarily to indicate a problem with the build."
+ }
}
variant newuoa description {Build with internal newuoa library for optimal control} {
@@ -119,6 +131,8 @@
mpi.setup require
# FIXME: this unnecessarily enforces scalapack had same C compiler as we are using.
+ # also, if +scalapack but no MPI is used, an internal error from active_variants
+ # is produced rather than saying you need MPI or just adding it to variants as intended.
mpi.enforce_variant scalapack
}
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.macosforge.org/pipermail/macports-changes/attachments/20150625/b9d29fe9/attachment.html>
More information about the macports-changes
mailing list