[113474] trunk/dports/science/wgrib2
takeshi at macports.org
takeshi at macports.org
Sat Nov 16 20:16:54 PST 2013
Revision: 113474
https://trac.macports.org/changeset/113474
Author: takeshi at macports.org
Date: 2013-11-16 20:16:54 -0800 (Sat, 16 Nov 2013)
Log Message:
-----------
wgrib2: updated to 1.9.9. Fortran variants a la PortfileRecipies
Modified Paths:
--------------
trunk/dports/science/wgrib2/Portfile
trunk/dports/science/wgrib2/files/patch-makefile.diff
Modified: trunk/dports/science/wgrib2/Portfile
===================================================================
--- trunk/dports/science/wgrib2/Portfile 2013-11-17 01:14:48 UTC (rev 113473)
+++ trunk/dports/science/wgrib2/Portfile 2013-11-17 04:16:54 UTC (rev 113474)
@@ -4,8 +4,7 @@
PortSystem 1.0
name wgrib2
-version 1.9.8
-revision 3
+version 1.9.9
platforms darwin
maintainers takeshi
license public-domain
@@ -17,9 +16,9 @@
extract.suffix
set version_iplib 2012
set version_g2clib 1.4.0
-checksums md5 6341cee894656ef41c8d964a53af2070 \
- sha1 ff845f3b6996e7e6449e422153d47c1495274eb7 \
- rmd160 af24bf99e2dc703419d48cc7bbb681a9655b0a58
+checksums md5 0b2a6acfcf4e2abf55b72bbdcc06c575 \
+ sha1 4dafc4aa7369d69c9d4039a0c6bdb6d56f381b90 \
+ rmd160 da3351788c3b9ca6b77a3039396435c77079213c
homepage http://www.cpc.ncep.noaa.gov/products/wesley/wgrib2/
long_description \
wgrib2 is a swiss army knife for grib2 files. \
@@ -38,13 +37,6 @@
configure {}
use_parallel_build no
-if {[variant_isset universal]} {
- set cflags "${configure.cflags} ${configure.universal_cflags}"
- set ldflags "${configure.ldflags} ${configure.universal_ldflags}"
-} else {
- set cflags "${configure.cflags} ${configure.cc_archflags}"
- set ldflags "${configure.ldflags} ${configure.cc_archflags}"
-}
set ip ${worksrcpath}/iplib.${version_iplib}
set lipolate ${ip}/libipolate.a
set g2c ${worksrcpath}/g2clib-${version_g2clib}
@@ -52,38 +44,73 @@
set gctpc ${worksrcpath}/gctpc
set lgeo ${gctpc}/source/libgeo.a
set fsymbol ""
-if {[variant_isset gcc44] || [variant_isset gcc45] || [variant_isset gcc46] || [variant_isset gcc47] || [variant_isset gcc48]} {
- set fsymbol -DGFORTRAN
-} elseif {[variant_isset g95]} {
+
+set gcc_versions {4.3 4.4 4.5 4.6 4.7 4.8 4.9}
+set g95_conflicts {}
+
+foreach ver ${gcc_versions} {
+ set ver_no_dot [join [split ${ver} "."] ""]
+
+ set variant_line {variant gcc${ver_no_dot} description "build iplib with gfortran from gcc${ver_no_dot}" conflicts g95}
+
+ foreach over ${gcc_versions} {
+ if {${ver} == ${over}} {
+ continue
+ }
+
+ set over_no_dot [join [split ${over} "."] ""]
+ append variant_line " conflicts gcc${over_no_dot}"
+ }
+ append variant_line { {}}
+
+ eval $variant_line
+
+ append g95_conflicts " conflicts gcc${ver_no_dot}"
+}
+
+eval [concat {variant g95 description {build iplib with g95}} $g95_conflicts {{}}]
+
+foreach ver ${gcc_versions} {
+ set ver_no_dot [join [split ${ver} "."] ""]
+
+ if {[variant_isset gcc${ver_no_dot}]} {
+ depends_lib-append path:lib/libgcc/libgcc_s.1.dylib:libgcc
+ depends_build-append port:gcc${ver_no_dot}
+
+ configure.fc ${prefix}/bin/gfortran-mp-${ver}
+ set fsymbol -DGFORTRAN
+ set my_ver_no_dot ${ver_no_dot}
+ }
+}
+
+if {[variant_isset g95]} {
+ depends_lib-append path:lib/libgcc/libgcc_s.1.dylib:libgcc
+ depends_build-append port:g95
+
+ configure.fc ${prefix}/bin/g95
set fsymbol -DG95
}
-if {[variant_isset g95] || [variant_isset gcc44] || [variant_isset gcc45] || [variant_isset gcc46] || [variant_isset gcc47] || [variant_isset gcc48]} {
+
+if {[variant_isset universal]} {
+ set cflags "${configure.cflags} ${configure.universal_cflags}"
+ set ldflags "${configure.ldflags} ${configure.universal_ldflags}"
+} else {
+ set cflags "${configure.cflags} ${configure.cc_archflags}"
+ set ldflags "${configure.ldflags} ${configure.cc_archflags}"
+}
+
+if {${fsymbol} != ""} {
set iip "-I${ip}"
set libs "${lg2c} ${lgeo} ${lipolate}"
} else {
set iip ""
set libs "${lg2c} ${lgeo}"
}
-if {[variant_isset g95]} {
+if {${fsymbol} == "-DGFORTRAN"} {
+ set libs "${libs} -L${prefix}/lib/gcc${my_ver_no_dot} -lgfortran"
+} elseif {${fsymbol} == "-DG95"} {
set libs "${libs} -lf95"
- configure.fc ${prefix}/bin/g95
-} elseif {[variant_isset gcc44]} {
- set libs "${libs} -L${prefix}/lib/gcc44 -lgfortran"
- configure.fc ${prefix}/bin/gfortran-mp-4.4
-} elseif {[variant_isset gcc45]} {
- set libs "${libs} -L${prefix}/lib/gcc45 -lgfortran"
- configure.fc ${prefix}/bin/gfortran-mp-4.5
-} elseif {[variant_isset gcc46]} {
- set libs "${libs} -L${prefix}/lib/gcc46 -lgfortran"
- configure.fc ${prefix}/bin/gfortran-mp-4.6
-} elseif {[variant_isset gcc47]} {
- set libs "${libs} -L${prefix}/lib/gcc47 -lgfortran"
- configure.fc ${prefix}/bin/gfortran-mp-4.7
-} elseif {[variant_isset gcc48]} {
- set libs "${libs} -L${prefix}/lib/gcc48 -lgfortran"
- configure.fc ${prefix}/bin/gfortran-mp-4.8
}
-
build.env LDFLAGS=\"${libs} ${configure.ldflags} -lpng -ljasper -lnetcdf\" \
CC=\"${configure.cc}\" \
CPPFLAGS=\"${fsymbol} ${configure.cppflags}\" \
@@ -91,13 +118,13 @@
build.args "-f makefile \
zlib=\"\" plib=\"\" jlib=\"\" h5lib=\"\" n4lib=\"\" \
iip=\"${iip}\" "
-if {[variant_isset g95] || [variant_isset gcc44] || [variant_isset gcc45] || [variant_isset gcc46] || [variant_isset gcc47] || [variant_isset gcc48]} {
+if {${fsymbol} != ""} {
build.args-append USE_IPOLATES=1
build.env-append FC=\"${configure.fc}\" \
F90=\"${configure.fc}\" \
FFLAGS=\"${configure.fflags}\"
}
-if {[variant_isset gcc45] || [variant_isset gcc46] || [variant_isset gcc47] || [variant_isset gcc48]} {
+if {${fsymbol} != "-DGFORTRAN"} {
build.args-append USE_OPENMP=1
}
@@ -115,32 +142,3 @@
xinstall -m 644 ${worksrcpath}/README.ipolates ${destroot}${prefix}/share/doc/${name}
}
}
-
-variant g95 conflicts gcc44 gcc45 gcc46 gcc47 gcc48 description {build iplib with g95 (alpha)} {
- depends_build-append port:g95
-}
-
-variant gcc44 conflicts g95 gcc45 gcc46 gcc47 gcc48 description {build iplib with gcc44 (alpha)} {
- depends_lib-append path:lib/libgcc/libgcc_s.1.dylib:libgcc
- depends_build-append port:gcc44
-}
-
-variant gcc45 conflicts g95 gcc44 gcc46 gcc47 gcc48 description {build iplib with gcc45 (alpha)} {
- depends_lib-append path:lib/libgcc/libgcc_s.1.dylib:libgcc
- depends_build-append port:gcc45
-}
-
-variant gcc46 conflicts g95 gcc44 gcc45 gcc47 gcc48 description {build iplib with gcc46 (alpha)} {
- depends_lib-append path:lib/libgcc/libgcc_s.1.dylib:libgcc
- depends_build-append port:gcc46
-}
-
-variant gcc47 conflicts g95 gcc44 gcc45 gcc46 gcc48 description {build iplib with gcc47 (alpha)} {
- depends_lib-append path:lib/libgcc/libgcc_s.1.dylib:libgcc
- depends_build-append port:gcc47
-}
-
-variant gcc48 conflicts g95 gcc44 gcc45 gcc46 gcc47 description {build iplib with gcc48 (alpha)} {
- depends_lib-append path:lib/libgcc/libgcc_s.1.dylib:libgcc
- depends_build-append port:gcc48
-}
Modified: trunk/dports/science/wgrib2/files/patch-makefile.diff
===================================================================
--- trunk/dports/science/wgrib2/files/patch-makefile.diff 2013-11-17 01:14:48 UTC (rev 113473)
+++ trunk/dports/science/wgrib2/files/patch-makefile.diff 2013-11-17 04:16:54 UTC (rev 113474)
@@ -1,6 +1,6 @@
---- makefile.orig 2013-08-07 18:27:02.000000000 +0900
-+++ makefile 2013-08-07 18:28:30.000000000 +0900
-@@ -83,8 +83,8 @@
+--- makefile.orig 2013-09-19 00:09:17.000000000 +0900
++++ makefile 2013-11-17 12:32:27.000000000 +0900
+@@ -91,8 +91,8 @@
#
# Warning do not set both USE_NETCDF3 and USE_NETCDF4 to one
@@ -11,7 +11,7 @@
USE_REGEX=1
USE_TIGGE=1
USE_MYSQL=0
-@@ -101,11 +101,11 @@
+@@ -127,11 +127,11 @@
endif
endif
@@ -28,11 +28,14 @@
ifeq ($(USE_IPOLATES),1)
ifeq ($(FC),)
-@@ -382,9 +382,8 @@
+@@ -430,11 +430,11 @@
+ w=wgrib2
+ prog=$w/wgrib2
- all: ${prog} aux_progs/gmerge aux_progs/smallest_grib2 aux_progs/smallest_4 aux_progs/grib_split
+-all: ${netcdf4src} ${hdf5src} ${prog} aux_progs/gmerge aux_progs/smallest_grib2 aux_progs/smallest_4
++all: ${prog} aux_progs/gmerge aux_progs/smallest_grib2 aux_progs/smallest_4
--
+
-${prog}: $w/*.c $w/*.h ${jlib} ${nlib} ${zlib} ${plib} ${h5lib} ${glib} ${n4lib} ${iplib} ${gctpclib} ${proj4lib}
- cd "$w" && export LDFLAGS="${wLDFLAGS}" && export CPPFLAGS="${wCPPFLAGS}" && ${MAKE}
+${prog}: $w/*.c $w/*.h ${glib} ${iplib} ${gctpclib}
@@ -40,19 +43,19 @@
fast: $w/*.c $w/*.h ${jlib} ${nlib} ${zlib} ${plib} ${h5lib} ${glib} ${n4lib} ${iplib} ${gctpclib} ${proj4lib}
cd "$w" && export LDFLAGS="${wLDFLAGS}" && export CPPFLAGS="${wCPPFLAGS}" && ${MAKE} fast
-@@ -415,18 +414,21 @@
- cd "$z" && export CFLAGS="${wCPPFLAGS}" && ./configure && ${MAKE}
+@@ -465,19 +465,21 @@
+ cd "$z" && export CFLAGS="${wCPPFLAGS}" && ./configure --prefix=${cwd} && ${MAKE} check install
-${glib}: ${jlib} ${plib} ${zlib}
+${glib}:
touch ${glib}
rm ${glib}
- cd "$g" && export CPPFLAGS="${wCPPFLAGS}" && ${MAKE}
+ cd "$g" && export CPPFLAGS="${wCPPFLAGS}" && ${MAKE} && cp libgrib2c.a ${lib}
+ ranlib ${glib}
${gctpclib}:
- cp gctpc20.tar.Z tmpgctpc.tar.Z
+ cp ${gctpcsrc} tmpgctpc.tar.Z
gunzip -n -f tmpgctpc.tar.Z
tar -xvf tmpgctpc.tar
rm tmpgctpc.tar
@@ -60,17 +63,17 @@
- cd "${gctpc}/source" && export CPPFLAGS="${wCPPFLAGS}" && ${MAKE} -f makefile.gctpc
+ cp makefile.gctpc proj.h ${gctpc}/source/
+ cd "${gctpc}/source" && ${MAKE} -f makefile.gctpc CPPFLAGS="-I${gctpc}/source ${CPPFLAGS}"
+ cp ${gctpc}/source/libgeo.a ${lib}
+ ranlib ${gctpclib}
-+
+ cp ${gctpc}/source/proj.h ${cwd}/include
${proj4lib}:
- rm -rf ${proj4} ${proj4src}
-@@ -469,7 +471,7 @@
- cd "${h5}" && export CPPFLAGS="${CPPFLAGS}" && ./configure --disable-shared --disable-fortran --with-zlib=$z && ${MAKE} && ${MAKE}
+@@ -516,7 +518,7 @@
+ $(error ERROR, get hdf5 source by "wget http://www.hdfgroup.org/ftp/HDF5/releases/hdf5-1.8.11/src/hdf5-1.8.11.tar.gz" )
${iplib}:
-- cd "${ip}" && export FFLAGS="${wFFLAGS}" && ${MAKE}
-+ cd "${ip}" && ${MAKE}
+- cd "${ip}" && export FFLAGS="${wFFLAGS}" && ${MAKE} && cp libipolate.a ${lib}
++ cd "${ip}" && ${MAKE} && cp libipolate.a ${lib}
aux_progs/gmerge: aux_progs/gmerge.c
cd aux_progs && ${MAKE} -f gmerge.make
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macports-changes/attachments/20131116/5c631b26/attachment-0001.html>
More information about the macports-changes
mailing list