[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