[87255] trunk/dports/science/ncarg/Portfile
takeshi at macports.org
takeshi at macports.org
Mon Nov 14 20:16:21 PST 2011
Revision: 87255
http://trac.macports.org/changeset/87255
Author: takeshi at macports.org
Date: 2011-11-14 20:16:21 -0800 (Mon, 14 Nov 2011)
Log Message:
-----------
ncarg: use llvm-gcc-4.2 on Snow Leopard and Lion to avoidseg fault on ncl function setfileoption().
Modified Paths:
--------------
trunk/dports/science/ncarg/Portfile
Modified: trunk/dports/science/ncarg/Portfile
===================================================================
--- trunk/dports/science/ncarg/Portfile 2011-11-15 02:13:43 UTC (rev 87254)
+++ trunk/dports/science/ncarg/Portfile 2011-11-15 04:16:21 UTC (rev 87255)
@@ -5,7 +5,7 @@
name ncarg
version 6.0.0
-revision 1
+revision 3
categories science
maintainers takeshi
description language for scientific data processing and visualization
@@ -70,29 +70,25 @@
if {$build_arch eq "x86_64"} {
patchfiles-append patch-config-ymake.diff
}
+
post-patch {
reinplace "s|INC=-I/usr/include|INC=${configure.cppflags} ${configure.cflags}|" ${workpath}/${g2clib_worksrcdir}/makefile
reinplace "s|CC=gcc -fPIC|CC=${configure.cc}|" ${workpath}/${g2clib_worksrcdir}/makefile
if {$build_arch eq "x86_64" || $build_arch eq "ppc64"} {
reinplace "s|-DUSE_PNG$|-DUSE_PNG -D__64BIT__|" ${workpath}/${g2clib_worksrcdir}/makefile
}
+ if {[variant_isset g95]} {
+ set fortranlib -lf95
+ } elseif {[variant_isset gcc43]} {
+ set fortranlib "-L${prefix}/lib/gcc43 -lgfortran"
+ } elseif {[variant_isset gcc45]} {
+ set fortranlib "-L${prefix}/lib/gcc45 -lgfortran"
+ } else {
+ set fortranlib "-L${prefix}/lib/gcc44 -lgfortran"
+ }
foreach f {Darwin Darwin_Intel} {
- if {[variant_isset g95]} {
- reinplace "s|-lgfortran|-lf95|" ${worksrcpath}/config/${f}
- reinplace "s| gfortran$| g95|" ${worksrcpath}/config/${f}
- } elseif {[variant_isset gcc43]} {
- reinplace "s|-lgfortran|-L${prefix}/lib/gcc43 -lgfortran|" \
- ${worksrcpath}/config/${f}
- reinplace "s| gfortran$| gfortran-mp-4.3|" ${worksrcpath}/config/${f}
- } elseif {[variant_isset gcc45]} {
- reinplace "s|-lgfortran|-L${prefix}/lib/gcc45 -lgfortran|" \
- ${worksrcpath}/config/${f}
- reinplace "s| gfortran$| gfortran-mp-4.5|" ${worksrcpath}/config/${f}
- } else {
- reinplace "s|-lgfortran|-L${prefix}/lib/gcc44 -lgfortran|" \
- ${worksrcpath}/config/${f}
- reinplace "s| gfortran$| gfortran-mp-4.4|" ${worksrcpath}/config/${f}
- }
+ reinplace "s|-lgfortran|${fortranlib}|" ${worksrcpath}/config/${f}
+ reinplace "s| gfortran$| ${configure.fc}|" ${worksrcpath}/config/${f}
reinplace "s|gcc$|${configure.cc}|" ${worksrcpath}/config/${f}
reinplace "/CcOptions/d" ${worksrcpath}/config/${f}
reinplace "s|-lXext$|-lXext\\
@@ -128,6 +124,12 @@
}
}
+# avoid segmentation fault on ncl function setfileoption()
+# clang fails to build ncl
+if {${os.major}>=10} {
+ configure.compiler llvm-gcc-4.2
+}
+
pre-configure {
system "cd ${workpath}/${g2clib_worksrcdir}; make all"
file copy ${workpath}/${g2clib_worksrcdir}/libgrib2c.a ${worksrcpath}
@@ -170,21 +172,38 @@
}
build.target Build
-build.args-append EXTRA_CCOPTIONS=\"${configure.cc_archflags}\"
+if {${os.major}<10} {
+ if {[varinant_isset g95]} {
+ build.args-append EXTRA_CCOPTIONS=\"${configure.cc_archflags}\"
+ } else {
+ if {[string match *64* $build_arch]} {
+ build.args-append EXTRA_CCOPTIONS=-m64
+ } else {
+ build.args-append EXTRA_CCOPTIONS=-m32
+ }
+ }
+}
+# Only configure.fc is set (against UsingTheRightCompiler) since
+# ncl function setfileoption() causes Segmentation Fault
+# when built with macports-gcc-4.x.
variant g95 conflicts gcc43 gcc44 gcc45 description {compile with g95} {
+ configure.fc ${prefix}/bin/g95
depends_build-append port:g95
}
variant gcc43 conflicts gcc44 gcc45 g95 description {compile with gcc 4.3} {
+ configure.fc ${prefix}/bin/gfortran-mp-4.3
depends_build-append port:gcc43
}
variant gcc44 conflicts gcc43 gcc45 g95 description {compile with gcc 4.4} {
+ configure.fc ${prefix}/bin/gfortran-mp-4.4
depends_build-append port:gcc44
}
variant gcc45 conflicts gcc43 gcc44 g95 description {compile with gcc 4.5} {
+ configure.fc ${prefix}/bin/gfortran-mp-4.5
depends_build-append port:gcc45
}
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macports-changes/attachments/20111114/9512763e/attachment-0001.html>
More information about the macports-changes
mailing list