[108760] trunk/dports/science/ncarg

takeshi at macports.org takeshi at macports.org
Wed Jul 31 23:44:45 PDT 2013


Revision: 108760
          https://trac.macports.org/changeset/108760
Author:   takeshi at macports.org
Date:     2013-07-31 23:44:45 -0700 (Wed, 31 Jul 2013)
Log Message:
-----------
ncarg: use clang when +g95 is set. intended to fix #38687 and #39913

Modified Paths:
--------------
    trunk/dports/science/ncarg/Portfile

Added Paths:
-----------
    trunk/dports/science/ncarg/files/patch-libncarg_gks-cdrivers-cro.c.diff
    trunk/dports/science/ncarg/files/patch-ncarview-idt-glob.c.diff
    trunk/dports/science/ncarg/files/patch-ncarview-idt-w_idt.c.diff
    trunk/dports/science/ncarg/files/patch-ni-nyacc-error.c.diff
    trunk/dports/science/ncarg/files/patch-ni-nyacc-main.c.diff
    trunk/dports/science/ncarg/files/patch-ni-nyacc-output.c.diff
    trunk/dports/science/ncarg/files/patch-ni-nyacc-reader.c.diff
    trunk/dports/science/ncarg/files/patch-ni-nyacc-verbose.c.diff

Modified: trunk/dports/science/ncarg/Portfile
===================================================================
--- trunk/dports/science/ncarg/Portfile	2013-08-01 06:32:47 UTC (rev 108759)
+++ trunk/dports/science/ncarg/Portfile	2013-08-01 06:44:45 UTC (rev 108760)
@@ -6,7 +6,7 @@
 
 name                        ncarg
 version                     6.1.2
-revision                    3
+revision                    4
 categories                  science
 maintainers                 takeshi
 license                     {UCAR-Unidata public-domain BSD LGPL-3 GPL-3}
@@ -71,6 +71,15 @@
 
 set usedap y
 
+# clang raises error on (assumed) non-void functions without return value.
+patchfiles  patch-ni-nyacc-error.c.diff \
+            patch-ni-nyacc-main.c.diff \
+            patch-ni-nyacc-output.c.diff \
+            patch-ni-nyacc-reader.c.diff \
+            patch-ni-nyacc-verbose.c.diff \
+            patch-libncarg_gks-cdrivers-cro.c.diff \
+            patch-ncarview-idt-glob.c.diff \
+            patch-ncarview-idt-w_idt.c.diff
 if {$build_arch eq "x86_64"} {
     patchfiles-append           patch-config-ymake.diff
 }
@@ -155,11 +164,6 @@
     }
 }
 
-# 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}
@@ -267,16 +271,20 @@
     default_variants +gcc47
 }
 
-# ncarg fails to build some binaries with xnu-headers installed 
-# See #38687
-if {[variant_isset g95]} {
-    conflicts_build-append xnu-headers
-}
+## ncarg fails to build some binaries with xnu-headers installed 
+## See #38687
+# seems it works with xnu-headers installed
+#if {[variant_isset g95]} {
+#    conflicts_build-append xnu-headers
+#}
 
 variant accelerate description {use Accelerate.framework} {
-    if {![variant_isset g95]} {
-        configure.fflags-append -ff2c
-    }
+# use of -ff2c implies -fsecond-underscore and 
+# breaks the linkage between nfp (C) and nfpfort (Fortran).
+# Moreover dotwrp should not require -ff2c
+#    if {![variant_isset g95]} {
+#        configure.fflags-append -ff2c
+#    }
     if {[variant_isset g95] || ([string match *64* $build_arch] && ${os.major} >= 10)} {
         depends_lib-append      port:dotwrp
     }

Added: trunk/dports/science/ncarg/files/patch-libncarg_gks-cdrivers-cro.c.diff
===================================================================
--- trunk/dports/science/ncarg/files/patch-libncarg_gks-cdrivers-cro.c.diff	                        (rev 0)
+++ trunk/dports/science/ncarg/files/patch-libncarg_gks-cdrivers-cro.c.diff	2013-08-01 06:44:45 UTC (rev 108760)
@@ -0,0 +1,11 @@
+--- ncarg2d/src/libncarg_gks/cdrivers/cro.c.orig	2013-07-31 13:30:04.000000000 +0900
++++ ncarg2d/src/libncarg_gks/cdrivers/cro.c	2013-07-31 13:42:41.000000000 +0900
+@@ -1361,7 +1361,7 @@
+     }
+ 
+     if ((index & ARGB_MASK) > 0)
+-    	return;   /* value is a 32-bit color, not an index */
++    	return 255;   /* value is a 32-bit color, not an index */
+ 
+     if (psa->max_color < index + 1) {
+         psa->ctable = (unsigned int*) realloc(psa->ctable, (index + 1)

Added: trunk/dports/science/ncarg/files/patch-ncarview-idt-glob.c.diff
===================================================================
--- trunk/dports/science/ncarg/files/patch-ncarview-idt-glob.c.diff	                        (rev 0)
+++ trunk/dports/science/ncarg/files/patch-ncarview-idt-glob.c.diff	2013-08-01 06:44:45 UTC (rev 108760)
@@ -0,0 +1,11 @@
+--- ncarview/src/bin/idt/glob.c.orig	2013-08-01 10:28:37.000000000 +0900
++++ ncarview/src/bin/idt/glob.c	2013-08-01 10:29:00.000000000 +0900
+@@ -49,7 +49,7 @@
+  *	to_child[1]	: fd for writing to spawned process
+  *	to_parent[0]	: fd for reading from spawned process
+  */
+-static	talkto(argv) 
++static void	talkto(argv) 
+ 	char	**argv;
+ {
+ 	int	pid;

Added: trunk/dports/science/ncarg/files/patch-ncarview-idt-w_idt.c.diff
===================================================================
--- trunk/dports/science/ncarg/files/patch-ncarview-idt-w_idt.c.diff	                        (rev 0)
+++ trunk/dports/science/ncarg/files/patch-ncarview-idt-w_idt.c.diff	2013-08-01 06:44:45 UTC (rev 108760)
@@ -0,0 +1,18 @@
+--- ncarview/src/bin/idt/w_idt.c.orig	2013-08-01 08:27:17.000000000 +0900
++++ ncarview/src/bin/idt/w_idt.c	2013-08-01 08:28:00.000000000 +0900
+@@ -570,7 +570,7 @@
+ 
+ 
+ 
+-void 
++int 
+ main(argc, argv)
+ 	int argc;
+ 	char **argv;
+@@ -653,5 +653,6 @@
+ 	}
+ 
+ 	XtAppMainLoop(app_con);
++  return 0;
+ }
+ 

Added: trunk/dports/science/ncarg/files/patch-ni-nyacc-error.c.diff
===================================================================
--- trunk/dports/science/ncarg/files/patch-ni-nyacc-error.c.diff	                        (rev 0)
+++ trunk/dports/science/ncarg/files/patch-ni-nyacc-error.c.diff	2013-08-01 06:44:45 UTC (rev 108760)
@@ -0,0 +1,11 @@
+--- ni/src/nyacc/error.c.orig	2013-08-01 09:49:00.000000000 +0900
++++ ni/src/nyacc/error.c	2013-08-01 09:49:14.000000000 +0900
+@@ -33,7 +33,7 @@
+     done(1);
+ }
+ 
+-
++void
+ print_pos(st_line, st_cptr)
+ char *st_line;
+ char *st_cptr;

Added: trunk/dports/science/ncarg/files/patch-ni-nyacc-main.c.diff
===================================================================
--- trunk/dports/science/ncarg/files/patch-ni-nyacc-main.c.diff	                        (rev 0)
+++ trunk/dports/science/ncarg/files/patch-ni-nyacc-main.c.diff	2013-08-01 06:44:45 UTC (rev 108760)
@@ -0,0 +1,11 @@
+--- ni/src/nyacc/main.c.orig	2013-07-31 11:26:09.000000000 +0900
++++ ni/src/nyacc/main.c	2013-07-31 11:26:28.000000000 +0900
+@@ -101,7 +101,7 @@
+ }
+ 
+ 
+-getargs(argc, argv)
++void getargs(argc, argv)
+ int argc;
+ char *argv[];
+ {

Added: trunk/dports/science/ncarg/files/patch-ni-nyacc-output.c.diff
===================================================================
--- trunk/dports/science/ncarg/files/patch-ni-nyacc-output.c.diff	                        (rev 0)
+++ trunk/dports/science/ncarg/files/patch-ni-nyacc-output.c.diff	2013-08-01 06:44:45 UTC (rev 108760)
@@ -0,0 +1,49 @@
+--- ni/src/nyacc/output.c.orig	2013-07-31 14:06:00.000000000 +0900
++++ ni/src/nyacc/output.c	2013-07-31 14:08:52.000000000 +0900
+@@ -16,6 +16,10 @@
+ static int lowzero;
+ static int high;
+ 
++void save_column(int symbol, int default_state);
++void output_stored_text();
++void output_trailing_text();
++void output_semantic_actions();
+ 
+ output()
+ {
+@@ -355,7 +359,7 @@
+ 
+ 
+ 
+-save_column(symbol, default_state)
++void save_column(symbol, default_state)
+ int symbol;
+ int default_state;
+ {
+@@ -825,7 +829,7 @@
+ }
+ 
+ 
+-output_stored_text()
++void output_stored_text()
+ {
+     register int c;
+     register FILE *in, *out;
+@@ -1076,7 +1080,7 @@
+ }
+ 
+ 
+-output_trailing_text()
++void output_trailing_text()
+ {
+     register int c, last;
+     register FILE *in, *out;
+@@ -1133,7 +1137,7 @@
+ }
+ 
+ 
+-output_semantic_actions()
++void output_semantic_actions()
+ {
+     register int c, last;
+     register FILE *out;

Added: trunk/dports/science/ncarg/files/patch-ni-nyacc-reader.c.diff
===================================================================
--- trunk/dports/science/ncarg/files/patch-ni-nyacc-reader.c.diff	                        (rev 0)
+++ trunk/dports/science/ncarg/files/patch-ni-nyacc-reader.c.diff	2013-08-01 06:44:45 UTC (rev 108760)
@@ -0,0 +1,110 @@
+--- ni/src/nyacc/reader.c.orig	2013-08-01 09:51:08.000000000 +0900
++++ ni/src/nyacc/reader.c	2013-08-01 09:56:12.000000000 +0900
+@@ -48,7 +48,7 @@
+     ++cinc;
+ }
+ 
+-
++void
+ get_line()
+ {
+     register FILE *f = input_file;
+@@ -112,7 +112,7 @@
+     return (p);
+ }
+ 
+-
++void
+ skip_comment()
+ {
+     register char *s;
+@@ -267,7 +267,7 @@
+     /*NOTREACHED*/
+ }
+ 
+-
++void
+ copy_ident()
+ {
+     register int c;
+@@ -296,7 +296,7 @@
+     }
+ }
+ 
+-
++void
+ copy_text()
+ {
+     register int c;
+@@ -427,7 +427,7 @@
+     }
+ }
+ 
+-
++void
+ copy_union()
+ {
+     register int c;
+@@ -823,7 +823,7 @@
+     return (s);
+ }
+ 
+-
++void
+ declare_tokens(assoc)
+ int assoc;
+ {
+@@ -885,7 +885,7 @@
+     }
+ }
+ 
+-
++void
+ declare_types()
+ {
+     register int c;
+@@ -931,7 +931,7 @@
+     goal = bp;
+ }
+ 
+-
++void
+ read_declarations()
+ {
+     register int c, k;
+@@ -1144,7 +1144,7 @@
+     rassoc[nrules-1] = TOKEN;
+ }
+ 
+-
++void
+ add_symbol()
+ {
+     register int c;
+@@ -1175,7 +1175,7 @@
+     pitem[nitems-1] = bp;
+ }
+ 
+-
++void
+ copy_action()
+ {
+     register int c;
+@@ -1475,7 +1475,7 @@
+     end_rule();
+ }
+ 
+-
++void
+ free_tags()
+ {
+     register int i;
+@@ -1716,7 +1716,7 @@
+     FREE(pitem);
+ }
+ 
+-
++void
+ print_grammar()
+ {
+     register int i, j, k;

Added: trunk/dports/science/ncarg/files/patch-ni-nyacc-verbose.c.diff
===================================================================
--- trunk/dports/science/ncarg/files/patch-ni-nyacc-verbose.c.diff	                        (rev 0)
+++ trunk/dports/science/ncarg/files/patch-ni-nyacc-verbose.c.diff	2013-08-01 06:44:45 UTC (rev 108760)
@@ -0,0 +1,11 @@
+--- ni/src/nyacc/verbose.c.orig	2013-08-01 08:19:16.000000000 +0900
++++ ni/src/nyacc/verbose.c	2013-08-01 08:20:12.000000000 +0900
+@@ -4,7 +4,7 @@
+ 
+ static short *null_rules;
+ 
+-verbose()
++void verbose()
+ {
+     register int i;
+ 
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macports-changes/attachments/20130731/055c08d6/attachment-0001.html>


More information about the macports-changes mailing list