Compare commits
127 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
68fe77b12e | ||
|
d504bdb448 | ||
|
1277d0f9ec | ||
|
aaefcf4cbe | ||
|
3a258961b8 | ||
|
ae534097dd | ||
|
b666cb3475 | ||
|
d186805f7c | ||
|
8d64c4db7a | ||
|
31c4b7cc39 | ||
|
7f44b30141 | ||
|
be72d79ead | ||
|
e317286170 | ||
|
9c64e92ba0 | ||
|
3b694e267f | ||
|
13220cd74d | ||
|
87ff6a3415 | ||
|
a8caef4f46 | ||
|
5aa8cfa638 | ||
|
5a4851a658 | ||
|
57398e6eed | ||
|
5aa606effe | ||
|
a37c838d19 | ||
|
e29d7e7aad | ||
|
7be77dcc75 | ||
|
b18ae29143 | ||
|
0909d5e1af | ||
|
50eaf64b4d | ||
|
bafec73dd6 | ||
|
dc4e54fc79 | ||
|
56911484c2 | ||
|
9af8c97972 | ||
|
dc5d7ac316 | ||
|
b74934a727 | ||
|
b154b5db72 | ||
|
e0da44cc3a | ||
|
27da26afce | ||
|
cfab33be5d | ||
|
0fdb651254 | ||
|
d5f12e3cd6 | ||
|
5f5c2ff192 | ||
|
42c72dc725 | ||
|
0b99a3b6ea | ||
|
597495de3d | ||
|
4a6e46edce | ||
|
fdd985ad22 | ||
|
059f1f611e | ||
|
4b244ac0e0 | ||
|
f619cae32e | ||
|
68b3285458 | ||
|
661b6c08ee | ||
|
995778a155 | ||
|
632c50fd7a | ||
|
42326e5152 | ||
|
8454756b1b | ||
|
28d1aaf2c7 | ||
|
40b80f66a0 | ||
|
ccfbfc5055 | ||
|
680b7957a5 | ||
|
9bae9dce08 | ||
|
b15420b41a | ||
|
3693b01be9 | ||
|
86e6c03814 | ||
|
3ce63b8877 | ||
|
2fd7325afa | ||
|
0030e22055 | ||
|
494fe9d2a7 | ||
|
f2becdd79c | ||
|
102b609800 | ||
|
168c54c9ce | ||
|
a14093229a | ||
|
1fe8d17489 | ||
|
8346b29711 | ||
|
b8c2f95f78 | ||
|
63dd85c99a | ||
|
2022ee47c0 | ||
|
15ad37466a | ||
|
a3c15e43d9 | ||
|
b7c578e68c | ||
|
b01c6112f9 | ||
|
88d03f5d1a | ||
|
498253f12d | ||
|
cd049ab5c9 | ||
|
dff0534ad1 | ||
|
a9c4117027 | ||
|
d17626f243 | ||
|
d1c2b79658 | ||
|
f5068e6baa | ||
|
2ed38aff02 | ||
|
8438a69a60 | ||
|
b088cbdd90 | ||
|
b9d7608ce6 | ||
|
a5c9892dd6 | ||
|
cf142b3df9 | ||
|
a9c810b19c | ||
|
b993a49b99 | ||
|
aa38cdaf9d | ||
|
df6dc9b077 | ||
|
114b6e0de3 | ||
|
b4ab52a18d | ||
|
eb8a1979fe | ||
|
7381f5f430 | ||
|
38fd9ada8a | ||
|
4589ce86fe | ||
|
5ace19ab71 | ||
|
3b56eb5bad | ||
|
c055834de8 | ||
|
cdf7f78362 | ||
|
7948fab22f | ||
|
e047dc1436 | ||
|
f1064d065b | ||
|
a1f8e12b86 | ||
|
b7e04885f8 | ||
|
1169240208 | ||
|
fda5c162a3 | ||
|
dc922e4aa0 | ||
|
588a175975 | ||
|
b87c46a485 | ||
|
ddacba8864 | ||
|
3e4ebcdaed | ||
|
56f5075843 | ||
|
7572ca7689 | ||
|
f66476747d | ||
|
2483934fcb | ||
|
f785407446 | ||
|
2c92e10b5e | ||
|
71e50c3a4f |
19
.gitignore
vendored
19
.gitignore
vendored
@ -1 +1,20 @@
|
||||
netcdf-4.1.1.tar.gz
|
||||
/netcdf-4.1.2.tar.gz
|
||||
/netcdf-4.1.3.tar.gz
|
||||
/netcdf-4.2-rc1.tar.gz
|
||||
/netcdf-4.2-rc2.tar.gz
|
||||
/netcdf-4.2.tar.gz
|
||||
/netcdf-4.2.1-rc1.tar.gz
|
||||
/netcdf-4.2.1.tar.gz
|
||||
/netcdf-4.2.1.1.tar.gz
|
||||
/netcdf-4.3.0.tar.gz
|
||||
/v4.3.1.1.tar.gz
|
||||
/netcdf-4.3.2.tar.gz
|
||||
/netcdf-4.3.3.tar.gz
|
||||
/netcdf-4.3.3.1.tar.gz
|
||||
/netcdf-4.4.0.tar.gz
|
||||
/netcdf-4.4.1.tar.gz
|
||||
/netcdf-4.4.1.1.tar.gz
|
||||
/netcdf-4.6.2.1.tar.gz
|
||||
/netcdf-4.6.3.tar.gz
|
||||
/netcdf-4.7.0.tar.gz
|
||||
|
@ -1,34 +0,0 @@
|
||||
diff -up netcdf-4.1-snapshot2010020100/nc-config.in.pkgconfig netcdf-4.1-snapshot2010020100/nc-config.in
|
||||
--- netcdf-4.1-snapshot2010020100/nc-config.in.pkgconfig 2010-01-11 12:27:12.000000000 -0700
|
||||
+++ netcdf-4.1-snapshot2010020100/nc-config.in 2010-02-01 16:04:22.429448744 -0700
|
||||
@@ -8,7 +8,6 @@
|
||||
|
||||
prefix=@prefix@
|
||||
exec_prefix=${prefix}
|
||||
-libdir=${exec_prefix}/lib
|
||||
includedir=${prefix}/include
|
||||
|
||||
cc="@CC@"
|
||||
@@ -16,8 +15,6 @@ cxx="@CXX@"
|
||||
fc="@FC@"
|
||||
cflags=" -I${includedir}"
|
||||
fflags="@FFLAGS@ @MOD_FLAG@${includedir}"
|
||||
-libs="-L${libdir} @NC_LIBS@"
|
||||
-flibs="-L${libdir} @NC_FLIBS@"
|
||||
has_dap="@HAS_DAP@"
|
||||
has_nc2="@HAS_NC2@"
|
||||
has_nc4="@HAS_NC4@"
|
||||
@@ -138,11 +135,11 @@ while test $# -gt 0; do
|
||||
;;
|
||||
|
||||
--libs)
|
||||
- echo $libs
|
||||
+ pkg-config netcdf --libs
|
||||
;;
|
||||
|
||||
--flibs)
|
||||
- echo $flibs
|
||||
+ pkg-config netcdf --variable=flibs
|
||||
;;
|
||||
|
||||
--has-dap)
|
@ -1,421 +0,0 @@
|
||||
diff -up netcdf-4.1.1/libncdap3/oc/daplex.c.dap netcdf-4.1.1/libncdap3/oc/daplex.c
|
||||
--- netcdf-4.1.1/libncdap3/oc/daplex.c.dap 2013-03-22 11:43:28.933640833 -0600
|
||||
+++ netcdf-4.1.1/libncdap3/oc/daplex.c 2013-03-22 11:43:38.946596288 -0600
|
||||
@@ -2,6 +2,7 @@
|
||||
See the COPYRIGHT file for more information. */
|
||||
|
||||
#include "dapparselex.h"
|
||||
+#include "daptab.h"
|
||||
|
||||
#define URLCVT
|
||||
|
||||
diff -up netcdf-4.1.1/libncdap3/oc/dapparse.c.dap netcdf-4.1.1/libncdap3/oc/dapparse.c
|
||||
--- netcdf-4.1.1/libncdap3/oc/dapparse.c.dap 2010-04-01 17:33:24.000000000 -0600
|
||||
+++ netcdf-4.1.1/libncdap3/oc/dapparse.c 2013-03-22 11:43:14.710704133 -0600
|
||||
@@ -2,6 +2,7 @@
|
||||
See the COPYRIGHT file for more information. */
|
||||
|
||||
#include "dapparselex.h"
|
||||
+#include "daptab.h"
|
||||
|
||||
extern int dapparse(DAPparsestate*);
|
||||
|
||||
@@ -19,7 +20,7 @@ static int check_int32(char* val, long*
|
||||
|
||||
|
||||
Object
|
||||
-datasetbody(DAPparsestate* state, Object name, Object decls)
|
||||
+dap_datasetbody(DAPparsestate* state, Object name, Object decls)
|
||||
{
|
||||
OCnode* node = newocnode((char*)name,OC_Dataset,state);
|
||||
node->subnodes = (OClist*)decls;
|
||||
@@ -32,7 +33,7 @@ datasetbody(DAPparsestate* state, Object
|
||||
}
|
||||
|
||||
Object
|
||||
-attributebody(DAPparsestate* state, Object attrlist)
|
||||
+dap_attributebody(DAPparsestate* state, Object attrlist)
|
||||
{
|
||||
OCnode* node = newocnode(NULL,OC_Attributeset,state);
|
||||
OCASSERT((state->root == NULL));
|
||||
@@ -45,7 +46,7 @@ attributebody(DAPparsestate* state, Obje
|
||||
}
|
||||
|
||||
Object
|
||||
-errorbody(DAPparsestate* state, Object code, Object msg)
|
||||
+dap_errorbody(DAPparsestate* state, Object code, Object msg)
|
||||
{
|
||||
state->svcerror = 1;
|
||||
state->code = strdup((char*)code);
|
||||
@@ -54,13 +55,13 @@ errorbody(DAPparsestate* state, Object c
|
||||
}
|
||||
|
||||
Object
|
||||
-unrecognizedresponse(DAPparsestate* state)
|
||||
+dap_unrecognizedresponse(DAPparsestate* state)
|
||||
{
|
||||
- return errorbody(state,"0",state->lexstate->input);
|
||||
+ return dap_errorbody(state,"0",state->lexstate->input);
|
||||
}
|
||||
|
||||
Object
|
||||
-declarations(DAPparsestate* state, Object decls, Object decl)
|
||||
+dap_declarations(DAPparsestate* state, Object decls, Object decl)
|
||||
{
|
||||
OClist* alist = (OClist*)decls;
|
||||
if(alist == NULL)
|
||||
@@ -71,7 +72,7 @@ declarations(DAPparsestate* state, Objec
|
||||
}
|
||||
|
||||
Object
|
||||
-arraydecls(DAPparsestate* state, Object arraydecls, Object arraydecl)
|
||||
+dap_arraydecls(DAPparsestate* state, Object arraydecls, Object arraydecl)
|
||||
{
|
||||
OClist* alist = (OClist*)arraydecls;
|
||||
if(alist == NULL)
|
||||
@@ -82,7 +83,7 @@ arraydecls(DAPparsestate* state, Object
|
||||
}
|
||||
|
||||
Object
|
||||
-arraydecl(DAPparsestate* state, Object name, Object size)
|
||||
+dap_arraydecl(DAPparsestate* state, Object name, Object size)
|
||||
{
|
||||
long value;
|
||||
OCnode* dim;
|
||||
@@ -97,7 +98,7 @@ arraydecl(DAPparsestate* state, Object n
|
||||
}
|
||||
|
||||
Object
|
||||
-attrlist(DAPparsestate* state, Object attrlist, Object attrtuple)
|
||||
+dap_attrlist(DAPparsestate* state, Object attrlist, Object attrtuple)
|
||||
{
|
||||
OClist* alist = (OClist*)attrlist;
|
||||
if(alist == NULL)
|
||||
@@ -117,7 +118,7 @@ attrlist(DAPparsestate* state, Object at
|
||||
}
|
||||
|
||||
Object
|
||||
-attrvalue(DAPparsestate* state, Object valuelist, Object value, Object etype)
|
||||
+dap_attrvalue(DAPparsestate* state, Object valuelist, Object value, Object etype)
|
||||
{
|
||||
OClist* alist = (OClist*)valuelist;
|
||||
if(alist == NULL) alist = oclistnew();
|
||||
@@ -128,7 +129,7 @@ attrvalue(DAPparsestate* state, Object v
|
||||
}
|
||||
|
||||
Object
|
||||
-attribute(DAPparsestate* state, Object name, Object values, Object etype)
|
||||
+dap_attribute(DAPparsestate* state, Object name, Object values, Object etype)
|
||||
{
|
||||
OCnode* att;
|
||||
att = newocnode((char*)name,OC_Attribute,state);
|
||||
@@ -138,7 +139,7 @@ attribute(DAPparsestate* state, Object n
|
||||
}
|
||||
|
||||
Object
|
||||
-attrset(DAPparsestate* state, Object name, Object attributes)
|
||||
+dap_attrset(DAPparsestate* state, Object name, Object attributes)
|
||||
{
|
||||
OCnode* attset;
|
||||
attset = newocnode((char*)name,OC_Attributeset,state);
|
||||
@@ -199,7 +200,7 @@ dimnameanon(char* basename, unsigned int
|
||||
}
|
||||
|
||||
Object
|
||||
-makebase(DAPparsestate* state, Object name, Object etype, Object dimensions)
|
||||
+dap_makebase(DAPparsestate* state, Object name, Object etype, Object dimensions)
|
||||
{
|
||||
OCnode* node;
|
||||
node = newocnode((char*)name,OC_Primitive,state);
|
||||
@@ -209,7 +210,7 @@ makebase(DAPparsestate* state, Object na
|
||||
}
|
||||
|
||||
Object
|
||||
-makestructure(DAPparsestate* state, Object name, Object dimensions, Object fields)
|
||||
+dap_makestructure(DAPparsestate* state, Object name, Object dimensions, Object fields)
|
||||
{
|
||||
OCnode* node;
|
||||
char* dupname;
|
||||
@@ -225,7 +226,7 @@ makestructure(DAPparsestate* state, Obje
|
||||
}
|
||||
|
||||
Object
|
||||
-makesequence(DAPparsestate* state, Object name, Object members)
|
||||
+dap_makesequence(DAPparsestate* state, Object name, Object members)
|
||||
{
|
||||
OCnode* node;
|
||||
char* dupname;
|
||||
@@ -240,7 +241,7 @@ makesequence(DAPparsestate* state, Objec
|
||||
}
|
||||
|
||||
Object
|
||||
-makegrid(DAPparsestate* state, Object name, Object arraydecl, Object mapdecls)
|
||||
+dap_makegrid(DAPparsestate* state, Object name, Object arraydecl, Object mapdecls)
|
||||
{
|
||||
OCnode* node;
|
||||
/* Check for duplicate map names */
|
||||
diff -up netcdf-4.1.1/libncdap3/oc/dapparselex.h.dap netcdf-4.1.1/libncdap3/oc/dapparselex.h
|
||||
--- netcdf-4.1.1/libncdap3/oc/dapparselex.h.dap 2010-04-01 17:33:24.000000000 -0600
|
||||
+++ netcdf-4.1.1/libncdap3/oc/dapparselex.h 2013-03-22 11:40:43.271384078 -0600
|
||||
@@ -6,12 +6,6 @@
|
||||
|
||||
#include "ocinternal.h"
|
||||
#include "ocdebug.h"
|
||||
-#ifdef USE_DAP
|
||||
-/* To avoid "make distclean" wiping out dap.tab.h */
|
||||
-#include "daptab.h"
|
||||
-#else
|
||||
-#include "dap.tab.h"
|
||||
-#endif
|
||||
|
||||
#ifdef WIN32
|
||||
#define strcasecmp stricmp
|
||||
@@ -73,26 +67,32 @@ typedef struct DAPparsestate {
|
||||
extern int yylex (YYSTYPE*, DAPparsestate*);
|
||||
extern int yyerror(DAPparsestate*,char*);
|
||||
|
||||
+extern void dassetup(DAPparsestate* state);
|
||||
extern void dap_parse_error(DAPparsestate*,const char *fmt, ...);
|
||||
-
|
||||
-extern Object datasetbody(DAPparsestate*,Object decls, Object name);
|
||||
-extern Object declarations(DAPparsestate*,Object decls, Object decl);
|
||||
-extern Object arraydecls(DAPparsestate*,Object arraydecls, Object arraydecl);
|
||||
-extern Object arraydecl(DAPparsestate*,Object name, Object size);
|
||||
-
|
||||
-extern void attributesetup(DAPparsestate*);
|
||||
-extern Object attributebody(DAPparsestate*,Object attrlist);
|
||||
-extern Object attrlist(DAPparsestate*,Object attrlist, Object attrtuple);
|
||||
-extern Object attribute(DAPparsestate*,Object name, Object value, Object etype);
|
||||
-extern Object attrset(DAPparsestate*,Object name, Object attributes);
|
||||
-extern Object attrvalue(DAPparsestate*,Object valuelist, Object value, Object etype);
|
||||
-
|
||||
-extern Object makebase(DAPparsestate*,Object name, Object etype, Object dimensions);
|
||||
-extern Object makestructure(DAPparsestate*,Object name, Object dimensions, Object fields);
|
||||
-extern Object makesequence(DAPparsestate*,Object name, Object members);
|
||||
-extern Object makegrid(DAPparsestate*,Object name, Object arraydecl, Object mapdecls);
|
||||
-
|
||||
-extern Object errorbody(DAPparsestate*, Object code, Object msg);
|
||||
-extern Object unrecognizedresponse(DAPparsestate*);
|
||||
+extern Object dap_datasetbody(DAPparsestate*,Object decls, Object name);
|
||||
+extern Object dap_declarations(DAPparsestate*,Object decls, Object decl);
|
||||
+extern Object dap_arraydecls(DAPparsestate*,Object arraydecls, Object arraydecl);
|
||||
+extern Object dap_arraydecl(DAPparsestate*,Object name, Object size);
|
||||
+
|
||||
+extern void dap_attributesetup(DAPparsestate*);
|
||||
+extern Object dap_attributebody(DAPparsestate*,Object attrlist);
|
||||
+extern Object dap_attrlist(DAPparsestate*,Object attrlist, Object attrtuple);
|
||||
+extern Object dap_attribute(DAPparsestate*,Object name, Object value, Object etype);
|
||||
+extern Object dap_attrset(DAPparsestate*,Object name, Object attributes);
|
||||
+extern Object dap_attrvalue(DAPparsestate*,Object valuelist, Object value, Object etype);
|
||||
+
|
||||
+extern Object dap_makebase(DAPparsestate*,Object name, Object etype, Object dimensions);
|
||||
+extern Object dap_makestructure(DAPparsestate*,Object name, Object dimensions, Object fields);
|
||||
+extern Object dap_makesequence(DAPparsestate*,Object name, Object members);
|
||||
+extern Object dap_makegrid(DAPparsestate*,Object name, Object arraydecl, Object mapdecls);
|
||||
+
|
||||
+extern Object dap_errorbody(DAPparsestate*, Object code, Object msg);
|
||||
+extern Object dap_unrecognizedresponse(DAPparsestate*);
|
||||
+
|
||||
+/* Lexer entry points */
|
||||
+extern int daplex(YYSTYPE*, DAPparsestate*);
|
||||
+extern void daplexinit(char* input, Lexstate** lexstatep);
|
||||
+extern void daplexcleanup(Lexstate** lexstatep);
|
||||
+extern void dapsetwordchars(Lexstate* lexstate, int kind);
|
||||
|
||||
#endif /*DAPPARSELEX_H*/
|
||||
diff -up netcdf-4.1.1/libncdap3/oc/dap.y.dap netcdf-4.1.1/libncdap3/oc/dap.y
|
||||
--- netcdf-4.1.1/libncdap3/oc/dap.y.dap 2010-04-01 17:33:23.000000000 -0600
|
||||
+++ netcdf-4.1.1/libncdap3/oc/dap.y 2013-03-22 11:34:25.689059778 -0600
|
||||
@@ -1,12 +1,10 @@
|
||||
/* Copyright 2009, UCAR/Unidata and OPeNDAP, Inc.
|
||||
See the COPYRIGHT file for more information. */
|
||||
|
||||
-%{
|
||||
-#include "dapparselex.h"
|
||||
-%}
|
||||
%pure-parser
|
||||
%lex-param {DAPparsestate* parsestate}
|
||||
%parse-param {DAPparsestate* parsestate}
|
||||
+%{#include "dapparselex.h"%}
|
||||
|
||||
%token SCAN_ALIAS
|
||||
%token SCAN_ARRAY
|
||||
@@ -51,30 +49,30 @@ start:
|
||||
| SCAN_ATTR dassetup attributebody
|
||||
| SCAN_ERROR errorbody
|
||||
| error
|
||||
- {$$=unrecognizedresponse(parsestate);}
|
||||
+ {$$=dap_unrecognizedresponse(parsestate);}
|
||||
;
|
||||
|
||||
datasetbody:
|
||||
'{' declarations '}' datasetname ';'
|
||||
- {$$=datasetbody(parsestate,$4,$2);}
|
||||
+ {$$=dap_datasetbody(parsestate,$4,$2);}
|
||||
;
|
||||
|
||||
declarations:
|
||||
- /* empty */ {$$=declarations(parsestate,null,null);}
|
||||
- | declarations declaration {$$=declarations(parsestate,$1,$2);}
|
||||
+ /* empty */ {$$=dap_declarations(parsestate,null,null);}
|
||||
+ | declarations declaration {$$=dap_declarations(parsestate,$1,$2);}
|
||||
;
|
||||
|
||||
/* 01/21/08: James says: no dimensions for grids or sequences */
|
||||
/* 05/08/09: James says: no duplicate map names */
|
||||
declaration:
|
||||
base_type var_name array_decls ';'
|
||||
- {$$=makebase(parsestate,$2,$1,$3);}
|
||||
+ {$$=dap_makebase(parsestate,$2,$1,$3);}
|
||||
| SCAN_STRUCTURE '{' declarations '}' var_name array_decls ';'
|
||||
- {if(($$ = makestructure(parsestate,$5,$6,$3))==null) {YYABORT;}}
|
||||
+ {if(($$ = dap_makestructure(parsestate,$5,$6,$3))==null) {YYABORT;}}
|
||||
| SCAN_SEQUENCE '{' declarations '}' var_name ';'
|
||||
- {if(($$ = makesequence(parsestate,$5,$3))==null) {YYABORT;}}
|
||||
+ {if(($$ = dap_makesequence(parsestate,$5,$3))==null) {YYABORT;}}
|
||||
| SCAN_GRID '{' SCAN_ARRAY ':' declaration SCAN_MAPS ':' declarations '}' var_name ';'
|
||||
- {if(($$ = makegrid(parsestate,$10,$5,$8))==null) {YYABORT;}}
|
||||
+ {if(($$ = dap_makegrid(parsestate,$10,$5,$8))==null) {YYABORT;}}
|
||||
| error
|
||||
{yyerror(parsestate,"Unrecognized type"); YYABORT;}
|
||||
;
|
||||
@@ -93,13 +91,13 @@ base_type:
|
||||
;
|
||||
|
||||
array_decls:
|
||||
- /* empty */ {$$=arraydecls(parsestate,null,null);}
|
||||
- | array_decls array_decl {$$=arraydecls(parsestate,$1,$2);}
|
||||
+ /* empty */ {$$=dap_arraydecls(parsestate,null,null);}
|
||||
+ | array_decls array_decl {$$=dap_arraydecls(parsestate,$1,$2);}
|
||||
;
|
||||
|
||||
array_decl:
|
||||
- '[' SCAN_WORD ']' {$$=arraydecl(parsestate,null,$2);}
|
||||
- | '[' name '=' SCAN_WORD ']' {$$=arraydecl(parsestate,$2,$4);}
|
||||
+ '[' SCAN_WORD ']' {$$=dap_arraydecl(parsestate,null,$2);}
|
||||
+ | '[' name '=' SCAN_WORD ']' {$$=dap_arraydecl(parsestate,$2,$4);}
|
||||
| error
|
||||
{yyerror(parsestate,"Illegal dimension declaration"); YYABORT;}
|
||||
;
|
||||
@@ -115,81 +113,81 @@ var_name: name {$$=$1;};
|
||||
dassetup: {dassetup(parsestate);}
|
||||
|
||||
attributebody:
|
||||
- '{' attr_list '}' {$$=attributebody(parsestate,$2);}
|
||||
+ '{' attr_list '}' {$$=dap_attributebody(parsestate,$2);}
|
||||
| error
|
||||
{yyerror(parsestate,"Illegal DAS body"); YYABORT;}
|
||||
;
|
||||
|
||||
attr_list:
|
||||
- /* empty */ {$$=attrlist(parsestate,null,null);}
|
||||
- | attr_list attribute {$$=attrlist(parsestate,$1,$2);}
|
||||
+ /* empty */ {$$=dap_attrlist(parsestate,null,null);}
|
||||
+ | attr_list attribute {$$=dap_attrlist(parsestate,$1,$2);}
|
||||
;
|
||||
|
||||
attribute:
|
||||
alias ';' {$$=null;} /* ignored */
|
||||
| SCAN_BYTE name bytes ';'
|
||||
- {$$=attribute(parsestate,$2,$3,(Object)SCAN_BYTE);}
|
||||
+ {$$=dap_attribute(parsestate,$2,$3,(Object)SCAN_BYTE);}
|
||||
| SCAN_INT16 name int16 ';'
|
||||
- {$$=attribute(parsestate,$2,$3,(Object)SCAN_INT16);}
|
||||
+ {$$=dap_attribute(parsestate,$2,$3,(Object)SCAN_INT16);}
|
||||
| SCAN_UINT16 name uint16 ';'
|
||||
- {$$=attribute(parsestate,$2,$3,(Object)SCAN_UINT16);}
|
||||
+ {$$=dap_attribute(parsestate,$2,$3,(Object)SCAN_UINT16);}
|
||||
| SCAN_INT32 name int32 ';'
|
||||
- {$$=attribute(parsestate,$2,$3,(Object)SCAN_INT32);}
|
||||
+ {$$=dap_attribute(parsestate,$2,$3,(Object)SCAN_INT32);}
|
||||
| SCAN_UINT32 name uint32 ';'
|
||||
- {$$=attribute(parsestate,$2,$3,(Object)SCAN_UINT32);}
|
||||
+ {$$=dap_attribute(parsestate,$2,$3,(Object)SCAN_UINT32);}
|
||||
| SCAN_FLOAT32 name float32 ';'
|
||||
- {$$=attribute(parsestate,$2,$3,(Object)SCAN_FLOAT32);}
|
||||
+ {$$=dap_attribute(parsestate,$2,$3,(Object)SCAN_FLOAT32);}
|
||||
| SCAN_FLOAT64 name float64 ';'
|
||||
- {$$=attribute(parsestate,$2,$3,(Object)SCAN_FLOAT64);}
|
||||
+ {$$=dap_attribute(parsestate,$2,$3,(Object)SCAN_FLOAT64);}
|
||||
| SCAN_STRING name strs ';'
|
||||
- {$$=attribute(parsestate,$2,$3,(Object)SCAN_STRING);}
|
||||
+ {$$=dap_attribute(parsestate,$2,$3,(Object)SCAN_STRING);}
|
||||
| SCAN_URL name urls ';'
|
||||
- {$$=attribute(parsestate,$2,$3,(Object)SCAN_URL);}
|
||||
- | name '{' attr_list '}' {$$=attrset(parsestate,$1,$3);}
|
||||
+ {$$=dap_attribute(parsestate,$2,$3,(Object)SCAN_URL);}
|
||||
+ | name '{' attr_list '}' {$$=dap_attrset(parsestate,$1,$3);}
|
||||
| error
|
||||
{yyerror(parsestate,"Illegal attribute"); YYABORT;}
|
||||
;
|
||||
|
||||
bytes:
|
||||
- SCAN_WORD {$$=attrvalue(parsestate,null,$1,(Object)SCAN_BYTE);}
|
||||
+ SCAN_WORD {$$=dap_attrvalue(parsestate,null,$1,(Object)SCAN_BYTE);}
|
||||
| bytes ',' SCAN_WORD
|
||||
- {$$=attrvalue(parsestate,$1,$3,(Object)SCAN_BYTE);}
|
||||
+ {$$=dap_attrvalue(parsestate,$1,$3,(Object)SCAN_BYTE);}
|
||||
;
|
||||
int16:
|
||||
- SCAN_WORD {$$=attrvalue(parsestate,null,$1,(Object)SCAN_INT16);}
|
||||
+ SCAN_WORD {$$=dap_attrvalue(parsestate,null,$1,(Object)SCAN_INT16);}
|
||||
| int16 ',' SCAN_WORD
|
||||
- {$$=attrvalue(parsestate,$1,$3,(Object)SCAN_INT16);}
|
||||
+ {$$=dap_attrvalue(parsestate,$1,$3,(Object)SCAN_INT16);}
|
||||
;
|
||||
uint16:
|
||||
- SCAN_WORD {$$=attrvalue(parsestate,null,$1,(Object)SCAN_UINT16);}
|
||||
+ SCAN_WORD {$$=dap_attrvalue(parsestate,null,$1,(Object)SCAN_UINT16);}
|
||||
| uint16 ',' SCAN_WORD
|
||||
- {$$=attrvalue(parsestate,$1,$3,(Object)SCAN_UINT16);}
|
||||
+ {$$=dap_attrvalue(parsestate,$1,$3,(Object)SCAN_UINT16);}
|
||||
;
|
||||
int32:
|
||||
- SCAN_WORD {$$=attrvalue(parsestate,null,$1,(Object)SCAN_INT32);}
|
||||
+ SCAN_WORD {$$=dap_attrvalue(parsestate,null,$1,(Object)SCAN_INT32);}
|
||||
| int32 ',' SCAN_WORD
|
||||
- {$$=attrvalue(parsestate,$1,$3,(Object)SCAN_INT32);}
|
||||
+ {$$=dap_attrvalue(parsestate,$1,$3,(Object)SCAN_INT32);}
|
||||
;
|
||||
uint32:
|
||||
- SCAN_WORD {$$=attrvalue(parsestate,null,$1,(Object)SCAN_UINT32);}
|
||||
- | uint32 ',' SCAN_WORD {$$=attrvalue(parsestate,$1,$3,(Object)SCAN_UINT32);}
|
||||
+ SCAN_WORD {$$=dap_attrvalue(parsestate,null,$1,(Object)SCAN_UINT32);}
|
||||
+ | uint32 ',' SCAN_WORD {$$=dap_attrvalue(parsestate,$1,$3,(Object)SCAN_UINT32);}
|
||||
;
|
||||
float32:
|
||||
- SCAN_WORD {$$=attrvalue(parsestate,null,$1,(Object)SCAN_FLOAT32);}
|
||||
- | float32 ',' SCAN_WORD {$$=attrvalue(parsestate,$1,$3,(Object)SCAN_FLOAT32);}
|
||||
+ SCAN_WORD {$$=dap_attrvalue(parsestate,null,$1,(Object)SCAN_FLOAT32);}
|
||||
+ | float32 ',' SCAN_WORD {$$=dap_attrvalue(parsestate,$1,$3,(Object)SCAN_FLOAT32);}
|
||||
;
|
||||
float64:
|
||||
- SCAN_WORD {$$=attrvalue(parsestate,null,$1,(Object)SCAN_FLOAT64);}
|
||||
- | float64 ',' SCAN_WORD {$$=attrvalue(parsestate,$1,$3,(Object)SCAN_FLOAT64);}
|
||||
+ SCAN_WORD {$$=dap_attrvalue(parsestate,null,$1,(Object)SCAN_FLOAT64);}
|
||||
+ | float64 ',' SCAN_WORD {$$=dap_attrvalue(parsestate,$1,$3,(Object)SCAN_FLOAT64);}
|
||||
;
|
||||
strs:
|
||||
- str_or_id {$$=attrvalue(parsestate,null,$1,(Object)SCAN_STRING);}
|
||||
- | strs ',' str_or_id {$$=attrvalue(parsestate,$1,$3,(Object)SCAN_STRING);}
|
||||
+ str_or_id {$$=dap_attrvalue(parsestate,null,$1,(Object)SCAN_STRING);}
|
||||
+ | strs ',' str_or_id {$$=dap_attrvalue(parsestate,$1,$3,(Object)SCAN_STRING);}
|
||||
;
|
||||
|
||||
urls:
|
||||
- url {$$=attrvalue(parsestate,null,$1,(Object)SCAN_URL);}
|
||||
- | urls ',' url {$$=attrvalue(parsestate,$1,$3,(Object)SCAN_URL);}
|
||||
+ url {$$=dap_attrvalue(parsestate,null,$1,(Object)SCAN_URL);}
|
||||
+ | urls ',' url {$$=dap_attrvalue(parsestate,$1,$3,(Object)SCAN_URL);}
|
||||
;
|
||||
|
||||
url:
|
||||
@@ -239,7 +237,7 @@ name:
|
||||
|
||||
errorbody:
|
||||
'{' SCAN_CODE '=' SCAN_WORD ';' SCAN_MESSAGE '=' SCAN_WORD ';' '}' ';'
|
||||
- {$$=errorbody(parsestate,$4,$8);}
|
||||
+ {$$=dap_errorbody(parsestate,$4,$8);}
|
||||
;
|
||||
|
||||
|
@ -1,13 +0,0 @@
|
||||
--- netcdf-4.1.1/nc-config.in.fflags 2010-04-08 14:05:40.063132547 -0600
|
||||
+++ netcdf-4.1.1/nc-config.in 2010-04-09 13:53:26.923928260 -0600
|
||||
@@ -13,8 +13,8 @@
|
||||
cc="@CC@"
|
||||
cxx="@CXX@"
|
||||
fc="@FC@"
|
||||
-cflags=" -I${includedir}"
|
||||
-fflags="@FFLAGS@ @MOD_FLAG@${includedir}"
|
||||
+cflags="-I${includedir}"
|
||||
+fflags="@MOD_FLAG@${includedir}"
|
||||
has_dap="@HAS_DAP@"
|
||||
has_nc2="@HAS_NC2@"
|
||||
has_nc4="@HAS_NC4@"
|
@ -1,12 +0,0 @@
|
||||
diff -up netcdf-4.1.1/libsrc4/Makefile.in.hdf5 netcdf-4.1.1/libsrc4/Makefile.in
|
||||
--- netcdf-4.1.1/libsrc4/Makefile.in.hdf5 2010-04-19 09:44:45.333650779 -0600
|
||||
+++ netcdf-4.1.1/libsrc4/Makefile.in 2010-04-19 09:44:45.338649501 -0600
|
||||
@@ -886,7 +886,7 @@ clean-libLTLIBRARIES:
|
||||
rm -f "$${dir}/so_locations"; \
|
||||
done
|
||||
libnetcdf.la: $(libnetcdf_la_OBJECTS) $(libnetcdf_la_DEPENDENCIES)
|
||||
- $(libnetcdf_la_LINK) -rpath $(libdir) $(libnetcdf_la_OBJECTS) $(libnetcdf_la_LIBADD) $(LIBS)
|
||||
+ $(libnetcdf_la_LINK) -rpath $(libdir) $(libnetcdf_la_OBJECTS) $(libnetcdf_la_LIBADD) -lhdf5_hl -lhdf5 $(LIBS)
|
||||
|
||||
clean-checkPROGRAMS:
|
||||
@list='$(check_PROGRAMS)'; test -n "$$list" || exit 0; \
|
585
netcdf.spec
585
netcdf.spec
@ -1,52 +1,46 @@
|
||||
Name: netcdf
|
||||
Version: 4.1.1
|
||||
Release: 3%{?dist}.5
|
||||
Version: 4.7.0
|
||||
Release: 2%{?dist}
|
||||
Summary: Libraries for the Unidata network Common Data Form
|
||||
|
||||
Group: Applications/Engineering
|
||||
License: NetCDF
|
||||
URL: http://www.unidata.ucar.edu/software/netcdf/
|
||||
Source0: http://www.unidata.ucar.edu/downloads/netcdf/ftp/netcdf-%{version}.tar.gz
|
||||
#Use pkgconfig in nc-config to avoid multi-lib issues
|
||||
Patch0: netcdf-4.1-beta2-pkgconfig.patch
|
||||
Patch1: netcdf-4.1.1-fflags.patch
|
||||
#Explicitly link libnetcdf.so agains -lhdf5_hl -lhdf5, reported upstream
|
||||
Patch2: netcdf-4.1.1-hdf5.patch
|
||||
# Fix namespace conflict with ncurses (bug #924467)
|
||||
Patch3: netcdf-4.1.1-dap.patch
|
||||
# Patch to fix nofill mode bug
|
||||
# http://www.unidata.ucar.edu/jira/browse/NCF-22
|
||||
Patch4: http://www.unidata.ucar.edu/netcdf/patches/nofill-bug.patch
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
||||
Source0: https://github.com/Unidata/netcdf-c/archive/v%{version}.tar.gz#/%{name}-%{version}.tar.gz
|
||||
|
||||
# bison is required because we patch dap.y in the dap patch
|
||||
BuildRequires: bison
|
||||
BuildRequires: gcc-gfortran, gawk
|
||||
BuildRequires: hdf5-devel >= 1.8.4
|
||||
BuildRequires: libtool
|
||||
BuildRequires: chrpath
|
||||
BuildRequires: doxygen
|
||||
BuildRequires: hdf-static
|
||||
BuildRequires: hdf5-devel
|
||||
BuildRequires: gawk
|
||||
BuildRequires: libcurl-devel
|
||||
BuildRequires: m4
|
||||
BuildRequires: zlib-devel
|
||||
%ifarch %{valgrind_arches}
|
||||
BuildRequires: valgrind
|
||||
|
||||
%package devel
|
||||
Summary: Development files for netcdf
|
||||
Group: Development/Libraries
|
||||
Requires: %{name} = %{version}-%{release}
|
||||
%if 0%{?fedora}
|
||||
Requires: gcc-gfortran%{_isa}
|
||||
%else
|
||||
Requires: gcc-gfortran
|
||||
%endif
|
||||
Requires: pkgconfig
|
||||
Requires: hdf5-devel
|
||||
Requires: libcurl-devel
|
||||
#mpiexec segfaults if ssh is not present
|
||||
#https://trac.mcs.anl.gov/projects/mpich2/ticket/1576
|
||||
BuildRequires: openssh-clients
|
||||
Requires: hdf5%{?_isa} = %{_hdf5_version}
|
||||
|
||||
%package static
|
||||
Summary: Static libs for netcdf
|
||||
Group: Development/Libraries
|
||||
Requires: %{name} = %{version}-%{release}
|
||||
%global with_mpich 1
|
||||
%global with_openmpi 1
|
||||
%if 0%{?rhel} && 0%{?rhel} <= 6
|
||||
%ifarch ppc64
|
||||
# No mpich on ppc64 in EL6
|
||||
%global with_mpich 0
|
||||
%endif
|
||||
%endif
|
||||
|
||||
%if %{with_mpich}
|
||||
%global mpi_list mpich
|
||||
%endif
|
||||
%if %{with_openmpi}
|
||||
%global mpi_list %{?mpi_list} openmpi
|
||||
%endif
|
||||
|
||||
%description
|
||||
|
||||
NetCDF (network Common Data Form) is an interface for array-oriented
|
||||
data access and a freely-distributed collection of software libraries
|
||||
for C, Fortran, C++, and perl that provides an implementation of the
|
||||
@ -77,120 +71,497 @@ NetCDF data is:
|
||||
o Sharable: One writer and multiple readers may simultaneously
|
||||
access the same NetCDF file.
|
||||
|
||||
|
||||
%package devel
|
||||
Summary: Development files for netcdf
|
||||
Requires: %{name}%{?_isa} = %{version}-%{release}
|
||||
Requires: pkgconfig%{?_isa}
|
||||
Requires: hdf5-devel%{?_isa}
|
||||
Requires: libcurl-devel%{?_isa}
|
||||
|
||||
%description devel
|
||||
This package contains the netCDF header files, shared devel libs, and
|
||||
This package contains the netCDF C header files, shared devel libs, and
|
||||
man pages.
|
||||
|
||||
|
||||
%package static
|
||||
Summary: Static libs for netcdf
|
||||
Requires: %{name}%{?_isa} = %{version}-%{release}
|
||||
|
||||
%description static
|
||||
This package contains the netCDF static libs.
|
||||
This package contains the netCDF C static libs.
|
||||
|
||||
|
||||
%if %{with_mpich}
|
||||
%package mpich
|
||||
Summary: NetCDF mpich libraries
|
||||
Requires: hdf5-mpich%{?_isa} = %{_hdf5_version}
|
||||
BuildRequires: mpich-devel
|
||||
BuildRequires: hdf5-mpich-devel >= 1.8.4
|
||||
Provides: %{name}-mpich2 = %{version}-%{release}
|
||||
Obsoletes: %{name}-mpich2 < 4.3.0-4
|
||||
|
||||
%description mpich
|
||||
NetCDF parallel mpich libraries
|
||||
|
||||
|
||||
%package mpich-devel
|
||||
Summary: NetCDF mpich development files
|
||||
Requires: %{name}-mpich%{?_isa} = %{version}-%{release}
|
||||
Requires: pkgconfig%{?_isa}
|
||||
Requires: hdf5-mpich-devel%{?_isa}
|
||||
Requires: libcurl-devel%{?_isa}
|
||||
Provides: %{name}-mpich2-devel = %{version}-%{release}
|
||||
Obsoletes: %{name}-mpich2-devel < 4.3.0-4
|
||||
|
||||
%description mpich-devel
|
||||
NetCDF parallel mpich development files
|
||||
|
||||
|
||||
%package mpich-static
|
||||
Summary: NetCDF mpich static libraries
|
||||
Requires: %{name}-mpich-devel%{?_isa} = %{version}-%{release}
|
||||
Provides: %{name}-mpich2-static = %{version}-%{release}
|
||||
Obsoletes: %{name}-mpich2-static < 4.3.0-4
|
||||
|
||||
%description mpich-static
|
||||
NetCDF parallel mpich static libraries
|
||||
%endif
|
||||
|
||||
|
||||
%if %{with_openmpi}
|
||||
%package openmpi
|
||||
Summary: NetCDF openmpi libraries
|
||||
Requires: hdf5-openmpi%{?_isa} = %{_hdf5_version}
|
||||
BuildRequires: openmpi-devel
|
||||
BuildRequires: hdf5-openmpi-devel >= 1.8.4
|
||||
|
||||
%description openmpi
|
||||
NetCDF parallel openmpi libraries
|
||||
|
||||
|
||||
%package openmpi-devel
|
||||
Summary: NetCDF openmpi development files
|
||||
Requires: %{name}-openmpi%{_isa} = %{version}-%{release}
|
||||
Requires: openmpi-devel%{?_isa}
|
||||
Requires: pkgconfig%{?_isa}
|
||||
Requires: hdf5-openmpi-devel%{?_isa}
|
||||
Requires: libcurl-devel%{?_isa}
|
||||
|
||||
%description openmpi-devel
|
||||
NetCDF parallel openmpi development files
|
||||
|
||||
|
||||
%package openmpi-static
|
||||
Summary: NetCDF openmpi static libraries
|
||||
Requires: %{name}-openmpi-devel%{?_isa} = %{version}-%{release}
|
||||
|
||||
%description openmpi-static
|
||||
NetCDF parallel openmpi static libraries
|
||||
%endif
|
||||
|
||||
|
||||
%prep
|
||||
%setup -q
|
||||
%patch0 -p1 -b .pkgconfig
|
||||
%patch1 -p1 -b .fflags
|
||||
%patch2 -p1 -b .hdf5
|
||||
%patch3 -p1 -b .dap
|
||||
%patch4 -p0 -b .nofill
|
||||
%autosetup -p1 -n %{name}-c-%{version}
|
||||
|
||||
|
||||
%build
|
||||
export F77="gfortran"
|
||||
export FC="gfortran"
|
||||
export FFLAGS="${RPM_OPT_FLAGS}"
|
||||
export FCFLAGS="$FFLAGS"
|
||||
%configure \
|
||||
--enable-shared \
|
||||
--enable-netcdf-4 \
|
||||
--enable-dap \
|
||||
--enable-ncgen4 \
|
||||
--enable-extra-example-tests \
|
||||
%ifnarch ppc64
|
||||
--enable-valgrind-tests \
|
||||
%endif
|
||||
--disable-dap-remote-tests
|
||||
#Need to be able to properly list all hdf4 library deps and location
|
||||
# --enable-hdf4 \
|
||||
#Do out of tree builds
|
||||
%global _configure ../configure
|
||||
#Common configure options
|
||||
export LDFLAGS="%{__global_ldflags} -L%{_libdir}/hdf"
|
||||
%global configure_opts \\\
|
||||
--enable-shared \\\
|
||||
--enable-netcdf-4 \\\
|
||||
--enable-dap \\\
|
||||
--enable-extra-example-tests \\\
|
||||
CPPFLAGS=-I%{_includedir}/hdf \\\
|
||||
LIBS="-ltirpc" \\\
|
||||
--enable-hdf4 \\\
|
||||
--disable-dap-remote-tests \\\
|
||||
%{nil}
|
||||
|
||||
make #%{?_smp_mflags}
|
||||
# Serial build
|
||||
mkdir build
|
||||
pushd build
|
||||
ln -s ../configure .
|
||||
%configure %{configure_opts}
|
||||
%make_build
|
||||
popd
|
||||
|
||||
# MPI builds
|
||||
export CC=mpicc
|
||||
for mpi in %{mpi_list}
|
||||
do
|
||||
mkdir $mpi
|
||||
pushd $mpi
|
||||
module load mpi/$mpi-%{_arch}
|
||||
ln -s ../configure .
|
||||
# parallel tests hang on s390(x)
|
||||
%configure %{configure_opts} \
|
||||
--libdir=%{_libdir}/$mpi/lib \
|
||||
--bindir=%{_libdir}/$mpi/bin \
|
||||
--sbindir=%{_libdir}/$mpi/sbin \
|
||||
--includedir=%{_includedir}/$mpi-%{_arch} \
|
||||
--datarootdir=%{_libdir}/$mpi/share \
|
||||
--mandir=%{_libdir}/$mpi/share/man \
|
||||
--enable-parallel-tests
|
||||
%make_build
|
||||
module purge
|
||||
popd
|
||||
done
|
||||
|
||||
|
||||
%install
|
||||
make install DESTDIR=${RPM_BUILD_ROOT}
|
||||
mkdir -p ${RPM_BUILD_ROOT}%{_fmoddir}
|
||||
/bin/mv ${RPM_BUILD_ROOT}%{_includedir}/*.mod \
|
||||
${RPM_BUILD_ROOT}%{_fmoddir}
|
||||
make -C build install DESTDIR=${RPM_BUILD_ROOT}
|
||||
/bin/rm -f ${RPM_BUILD_ROOT}%{_libdir}/*.la
|
||||
chrpath --delete ${RPM_BUILD_ROOT}/%{_bindir}/nc{copy,dump,gen,gen3}
|
||||
/bin/rm -f ${RPM_BUILD_ROOT}%{_infodir}/dir
|
||||
for mpi in %{mpi_list}
|
||||
do
|
||||
module load mpi/$mpi-%{_arch}
|
||||
make -C $mpi install DESTDIR=${RPM_BUILD_ROOT}
|
||||
rm $RPM_BUILD_ROOT/%{_libdir}/$mpi/lib/*.la
|
||||
chrpath --delete ${RPM_BUILD_ROOT}/%{_libdir}/$mpi/bin/nc{copy,dump,gen,gen3}
|
||||
module purge
|
||||
done
|
||||
|
||||
|
||||
%check
|
||||
make check
|
||||
# Set to 1 to fail if tests fail
|
||||
fail=1
|
||||
make -C build check || ( cat build/*/test-suite.log && exit $fail )
|
||||
# Allow openmpi to run with more processes than cores
|
||||
export OMPI_MCA_rmaps_base_oversubscribe=1
|
||||
for mpi in %{mpi_list}
|
||||
do
|
||||
module load mpi/$mpi-%{_arch}
|
||||
make -C $mpi check || ( cat $mpi/*/test-suite.log && exit $fail )
|
||||
module purge
|
||||
done
|
||||
|
||||
|
||||
%clean
|
||||
rm -rf ${RPM_BUILD_ROOT}
|
||||
|
||||
|
||||
%post
|
||||
/sbin/ldconfig
|
||||
/sbin/install-info %{_infodir}/netcdf.info \
|
||||
%{_infodir}/dir 2>/dev/null || :
|
||||
|
||||
%postun
|
||||
/sbin/ldconfig
|
||||
if [ "$1" = 0 ]; then
|
||||
/sbin/install-info --delete %{_infodir}/netcdf.info \
|
||||
%{_infodir}/dir 2>/dev/null || :
|
||||
fi
|
||||
%ldconfig_scriptlets
|
||||
|
||||
|
||||
%files
|
||||
%defattr(-,root,root,-)
|
||||
%doc COPYRIGHT README
|
||||
%license COPYRIGHT
|
||||
%doc README.md RELEASE_NOTES.md
|
||||
%{_bindir}/nccopy
|
||||
%{_bindir}/ncdump
|
||||
%{_bindir}/ncgen
|
||||
%{_bindir}/ncgen3
|
||||
%{_libdir}/*.so.*
|
||||
%{_libdir}/*.so.15*
|
||||
%{_mandir}/man1/*
|
||||
%{_datadir}/doc/netcdf
|
||||
%{_infodir}/*
|
||||
|
||||
%files devel
|
||||
%defattr(-,root,root,-)
|
||||
%doc examples
|
||||
%{_bindir}/nc-config
|
||||
%{_includedir}/ncvalues.h
|
||||
%{_includedir}/netcdf.h
|
||||
%{_includedir}/netcdf.hh
|
||||
%{_includedir}/netcdf.inc
|
||||
%{_includedir}/netcdfcpp.h
|
||||
%{_fmoddir}/*.mod
|
||||
%{_includedir}/netcdf_aux.h
|
||||
%{_includedir}/netcdf_filter.h
|
||||
%{_includedir}/netcdf_meta.h
|
||||
%{_includedir}/netcdf_mem.h
|
||||
%{_libdir}/libnetcdf.settings
|
||||
%{_libdir}/*.so
|
||||
%{_libdir}/pkgconfig/netcdf.pc
|
||||
%{_mandir}/man3/*
|
||||
|
||||
%files static
|
||||
%defattr(-,root,root,-)
|
||||
%{_libdir}/*.a
|
||||
|
||||
%if %{with_mpich}
|
||||
%files mpich
|
||||
%license COPYRIGHT
|
||||
%doc README.md RELEASE_NOTES.md
|
||||
%{_libdir}/mpich/bin/nccopy
|
||||
%{_libdir}/mpich/bin/ncdump
|
||||
%{_libdir}/mpich/bin/ncgen
|
||||
%{_libdir}/mpich/bin/ncgen3
|
||||
%{_libdir}/mpich/lib/*.so.15*
|
||||
%doc %{_libdir}/mpich/share/man/man1/*.1*
|
||||
|
||||
%files mpich-devel
|
||||
%{_libdir}/mpich/bin/nc-config
|
||||
%{_includedir}/mpich-%{_arch}/netcdf.h
|
||||
%{_includedir}/mpich-%{_arch}/netcdf_aux.h
|
||||
%{_includedir}/mpich-%{_arch}/netcdf_filter.h
|
||||
%{_includedir}/mpich-%{_arch}/netcdf_meta.h
|
||||
%{_includedir}/mpich-%{_arch}/netcdf_mem.h
|
||||
%{_includedir}/mpich-%{_arch}/netcdf_par.h
|
||||
%{_libdir}/mpich/lib/libnetcdf.settings
|
||||
%{_libdir}/mpich/lib/*.so
|
||||
%{_libdir}/mpich/lib/pkgconfig/%{name}.pc
|
||||
%doc %{_libdir}/mpich/share/man/man3/*.3*
|
||||
|
||||
%files mpich-static
|
||||
%{_libdir}/mpich/lib/*.a
|
||||
%endif
|
||||
|
||||
%if %{with_openmpi}
|
||||
%files openmpi
|
||||
%license COPYRIGHT
|
||||
%doc README.md RELEASE_NOTES.md
|
||||
%{_libdir}/openmpi/bin/nccopy
|
||||
%{_libdir}/openmpi/bin/ncdump
|
||||
%{_libdir}/openmpi/bin/ncgen
|
||||
%{_libdir}/openmpi/bin/ncgen3
|
||||
%{_libdir}/openmpi/lib/*.so.15*
|
||||
%doc %{_libdir}/openmpi/share/man/man1/*.1*
|
||||
|
||||
%files openmpi-devel
|
||||
%{_libdir}/openmpi/bin/nc-config
|
||||
%{_includedir}/openmpi-%{_arch}/netcdf.h
|
||||
%{_includedir}/openmpi-%{_arch}/netcdf_aux.h
|
||||
%{_includedir}/openmpi-%{_arch}/netcdf_filter.h
|
||||
%{_includedir}/openmpi-%{_arch}/netcdf_meta.h
|
||||
%{_includedir}/openmpi-%{_arch}/netcdf_mem.h
|
||||
%{_includedir}/openmpi-%{_arch}/netcdf_par.h
|
||||
%{_libdir}/openmpi/lib/libnetcdf.settings
|
||||
%{_libdir}/openmpi/lib/*.so
|
||||
%{_libdir}/openmpi/lib/pkgconfig/%{name}.pc
|
||||
%doc %{_libdir}/openmpi/share/man/man3/*.3*
|
||||
|
||||
%files openmpi-static
|
||||
%{_libdir}/openmpi/lib/*.a
|
||||
%endif
|
||||
|
||||
|
||||
%changelog
|
||||
* Wed Jan 29 2014 Orion Poplawski <orion@cora.nwra.com> - 4.1.1-3.5
|
||||
- Fix nc-config --fflags (bug #1032110)
|
||||
* Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 4.7.0-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
|
||||
|
||||
* Mon Oct 21 2013 Orion Poplawski <orion@cora.nwra.com> - 4.1.1-3.4
|
||||
- Add upstream patch to fix nofill mode data corruption bug
|
||||
* Mon Jun 17 2019 Orion Poplawski <orion@nwra.com> - 4.7.0-1
|
||||
- Update to 4.7.0
|
||||
|
||||
* Fri Mar 22 2013 Orion Poplawski <orion@cora.nwra.com> - 4.1.1-3.3
|
||||
- Add patch to fix namespace conflict with ncurses (bug #924467)
|
||||
- Add BR on bison due to patching dap.y
|
||||
* Sat Mar 16 2019 Orion Poplawski <orion@nwra.com> - 4.6.3-1
|
||||
- Update to 4.6.3
|
||||
|
||||
* Mon Dec 27 2010 Orion Poplawski <orion@cora.nwra.com> - 4.1.1-3.2
|
||||
- Don't use %%{_isa} in Requires for gcc-gfortran - not multilib in RHEL
|
||||
* Thu Feb 14 2019 Orion Poplawski <orion@nwra.com> - 4.4.1.1-12
|
||||
- Rebuild for openmpi 3.1.3
|
||||
|
||||
* Mon May 17 2010 Orion Poplawski <orion@cora.nwra.com> - 4.1.1-3.1
|
||||
- valgrind crashes on ppc64 (bug #593027), don't use it
|
||||
* Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 4.4.1.1-11
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
|
||||
|
||||
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 4.4.1.1-10
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
|
||||
|
||||
* Mon Apr 09 2018 Orion Poplawski <orion@nwra.com> - 4.4.1.1-9
|
||||
- Run libtoolize to not strip link flags (bug #1548732)
|
||||
|
||||
* Thu Feb 08 2018 Fedora Release Engineering <releng@fedoraproject.org> - 4.4.1.1-8
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
|
||||
|
||||
* Fri Feb 02 2018 Orion Poplawski <orion@cora.nwra.com> - 4.4.1.1-7
|
||||
- Rebuild for gcc 8.0
|
||||
|
||||
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 4.4.1.1-6
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
|
||||
|
||||
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 4.4.1.1-5
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
|
||||
|
||||
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 4.4.1.1-4
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
|
||||
|
||||
* Thu Dec 08 2016 Dan Horák <dan[at]danny.cz> - 4.4.1.1-3
|
||||
- Enable openmpi for s390(x) on F>=26
|
||||
|
||||
* Tue Dec 06 2016 Orion Poplawski <orion@cora.nwra.com> - 4.4.1.1-2
|
||||
- Rebuild for hdf5 1.8.18
|
||||
|
||||
* Tue Nov 29 2016 Orion Poplawski <orion@cora.nwra.com> - 4.4.1.1-1
|
||||
- Update to 4.4.1.1
|
||||
- Add patch to fix mpi tests compilation
|
||||
|
||||
* Fri Oct 21 2016 Orion Poplawski <orion@cora.nwra.com> - 4.4.1-4
|
||||
- Rebuild for openmpi 2.0
|
||||
|
||||
* Fri Aug 12 2016 Michal Toman <mtoman@fedoraproject.org> - 4.4.1-3
|
||||
- No valgrind on MIPS
|
||||
- Enable valgrind on arm
|
||||
|
||||
* Thu Jul 7 2016 Orion Poplawski <orion@cora.nwra.com> - 4.4.1-2
|
||||
- Add upstream patch to fix hashmap issue
|
||||
|
||||
* Wed Jun 29 2016 Orion Poplawski <orion@cora.nwra.com> - 4.4.1-1
|
||||
- Update to 4.4.1
|
||||
|
||||
* Tue Jun 28 2016 Orion Poplawski <orion@cora.nwra.com> - 4.4.0-4
|
||||
- Drop mpiexec hack
|
||||
|
||||
* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 4.4.0-3
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
|
||||
|
||||
* Fri Jan 22 2016 Orion Poplawski <orion@cora.nwra.com> - 4.4.0-2
|
||||
- Rebuild ncx.c to fix arm build
|
||||
|
||||
* Thu Jan 21 2016 Orion Poplawski <orion@cora.nwra.com> - 4.4.0-1
|
||||
- Update to 4.4.0
|
||||
- Add patch to fix incorrect char definitions
|
||||
|
||||
* Sat Nov 07 2015 Rex Dieter <rdieter@fedoraproject.org> 4.3.3.1-7
|
||||
- rebuild (hdf)
|
||||
|
||||
* Wed Sep 16 2015 Orion Poplawski <orion@cora.nwra.com> - 4.3.3.1-6
|
||||
- Rebuild for openmpi 1.10.0
|
||||
|
||||
* Mon Aug 10 2015 Sandro Mani <manisandro@gmail.com> - 4.3.3.1-5
|
||||
- Rebuild for RPM MPI Requires Provides Change
|
||||
|
||||
* Wed Jul 29 2015 Karsten Hopp <karsten@redhat.com> 4.3.3.1-4
|
||||
- mpich is available on ppc64 now
|
||||
|
||||
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.3.3.1-3
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
|
||||
|
||||
* Sun May 17 2015 Orion Poplawski <orion@cora.nwra.com> - 4.3.3.1-2
|
||||
- Rebuild for hdf5 1.8.15
|
||||
|
||||
* Wed Mar 11 2015 Orion Poplawski <orion@cora.nwra.com> - 4.3.3.1-1
|
||||
- Update to 4.3.3.1
|
||||
|
||||
* Fri Feb 13 2015 Orion Poplawski <orion@cora.nwra.com> - 4.3.3-1
|
||||
- Update to 4.3.3
|
||||
|
||||
* Tue Jan 27 2015 Orion Poplawski <orion@cora.nwra.com> - 4.3.2-7
|
||||
- Fix up provides/requires for mpi packages, use %%{?_isa}.
|
||||
|
||||
* Wed Jan 07 2015 Orion Poplawski <orion@cora.nwra.com> - 4.3.2-6
|
||||
- Rebuild for hdf5 1.8.14
|
||||
|
||||
* Sun Aug 17 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.3.2-5
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
|
||||
|
||||
* Thu Jul 24 2014 Jakub Čajka <jcajka@redhat.com> - 4.3.2-4
|
||||
- Enabled tests on s390
|
||||
- Disabled parallel tests on s390(x) as they hang
|
||||
|
||||
* Mon Jun 9 2014 Orion Poplawski <orion@cora.nwra.com> - 4.3.2-3
|
||||
- Rebuild for hdf5 1.8.13, add patch for support
|
||||
|
||||
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.3.2-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
|
||||
|
||||
* Wed Apr 23 2014 Orion Poplawski <orion@cora.nwra.com> - 4.3.2-1
|
||||
- Update to 4.3.2
|
||||
- Drop utf8 patch fixed upstream
|
||||
- Re-enable MPI tests
|
||||
|
||||
* Fri Mar 7 2014 Orion Poplawski <orion@cora.nwra.com> - 4.3.1.1-3
|
||||
- Strip UTF-8 character from netcdf.h for now, causes problems with
|
||||
netcdf4-python build
|
||||
|
||||
* Sat Feb 22 2014 Deji Akingunola <dakingun@gmail.com> - 4.3.1.1-2
|
||||
- Rebuild for mpich-3.1
|
||||
|
||||
* Thu Feb 6 2014 Orion Poplawski <orion@cora.nwra.com> - 4.3.1.1-1
|
||||
- Update to 4.3.1.1
|
||||
- Add BR m4
|
||||
|
||||
* Fri Dec 27 2013 Orion Poplawski <orion@cora.nwra.com> - 4.3.0-8
|
||||
- Rebuild for hdf5 1.8.12
|
||||
|
||||
* Thu Dec 5 2013 Orion Poplawski <orion@cora.nwra.com> - 4.3.0-7
|
||||
- Use BR hdf-static (bug #1038280)
|
||||
|
||||
* Mon Nov 4 2013 Orion Poplawski <orion@cora.nwra.com> - 4.3.0-6
|
||||
- Enable hdf4 support
|
||||
|
||||
* Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.3.0-5
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
|
||||
|
||||
* Sat Jul 20 2013 Deji Akingunola <dakingun@gmail.com> - 4.3.0-4
|
||||
- Rename mpich2 sub-packages to mpich and rebuild for mpich-3.0
|
||||
|
||||
* Thu Jul 11 2013 Orion Poplawski <orion@cora.nwra.com> - 4.3.0-3
|
||||
- Rebuild for openmpi 1.7.2
|
||||
|
||||
* Thu May 16 2013 Orion Poplawski <orion@cora.nwra.com> - 4.3.0-2
|
||||
- Rebuild for hdf5 1.8.11
|
||||
|
||||
* Mon May 13 2013 Orion Poplawski <orion@cora.nwra.com> - 4.3.0-1
|
||||
- Update to 4.3.0
|
||||
|
||||
* Thu Feb 14 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.2.1.1-4
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
|
||||
|
||||
* Mon Dec 03 2012 Orion Poplawski <orion@cora.nwra.com> - 4.2.1.1-3
|
||||
- Rebuild for hdf5 1.8.10
|
||||
- Disable make check of the mpi code, it is hanging for some reason
|
||||
|
||||
* Thu Nov 1 2012 Orion Poplawski <orion@cora.nwra.com> - 4.2.1.1-2
|
||||
- Rebuild for openmpi and mpich2 soname bumps
|
||||
- Use new mpi module location
|
||||
|
||||
* Fri Aug 3 2012 Orion Poplawski <orion@cora.nwra.com> - 4.2.1.1-1
|
||||
- Update to 4.2.1.1
|
||||
|
||||
* Sun Jul 22 2012 Orion Poplawski <orion@cora.nwra.com> - 4.2.1-1
|
||||
- Update to 4.2.1 final
|
||||
|
||||
* Fri Jul 20 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.2.1-0.2.rc1
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
|
||||
|
||||
* Wed Jul 11 2012 Orion Poplawski <orion@cora.nwra.com> - 4.2.1-0.1.rc1
|
||||
- Update to 4.2.1 rc1
|
||||
- Rebase pkgconfig patch
|
||||
- Drop fflags patch, upstream now calls nf-config
|
||||
|
||||
* Wed Jun 13 2012 Dan Horák <dan[at]danny.cz> - 4.2-5
|
||||
- temporarily disable checks on s390 (memory corruption and stuck build)
|
||||
|
||||
* Tue May 15 2012 Orion Poplawski <orion@cora.nwra.com> - 4.2-4
|
||||
- Rebuild with hdf5 1.8.9
|
||||
|
||||
* Wed Mar 21 2012 Orion Poplawski <orion@cora.nwra.com> - 4.2-3
|
||||
- Update to real 4.2 final
|
||||
|
||||
* Tue Mar 20 2012 Dan Horák <dan[at]danny.cz> - 4.2-2
|
||||
- use %%{mpi_list} also in %%check
|
||||
|
||||
* Fri Mar 16 2012 Orion Poplawski <orion@cora.nwra.com> - 4.2-1
|
||||
- Update to 4.2 final
|
||||
|
||||
* Wed Mar 7 2012 Orion Poplawski <orion@cora.nwra.com> - 4.2-0.4.rc2
|
||||
- Ship examples with -devel
|
||||
|
||||
* Wed Mar 7 2012 Orion Poplawski <orion@cora.nwra.com> - 4.2-0.3.rc2
|
||||
- Enable MPI builds
|
||||
|
||||
* Tue Mar 6 2012 Orion Poplawski <orion@cora.nwra.com> - 4.2-0.2.rc2
|
||||
- Update to 4.2-rc2
|
||||
- Fortran and C++ APIs are now in separate packages
|
||||
|
||||
* Tue Feb 28 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.1.3-5
|
||||
- Rebuilt for c++ ABI breakage
|
||||
|
||||
* Fri Jan 13 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.1.3-4
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
|
||||
|
||||
* Fri Nov 18 2011 Orion Poplawski <orion@cora.nwra.com> - 4.1.3-3
|
||||
- Rebuild for hdf5 1.8.8, add explicit requires
|
||||
|
||||
* Thu Aug 11 2011 Peter Robinson <pbrobinson@fedoraproject.org> - 4.1.3-2
|
||||
- Add ARM to valgrind excludes
|
||||
|
||||
* Tue Jun 21 2011 Orion Poplawski <orion@cora.nwra.com> - 4.1.3-1
|
||||
- Update to 4.1.3
|
||||
- Update pkgconfig and fflags patches
|
||||
- Drop libm patch fixed upstream
|
||||
|
||||
* Tue May 17 2011 Orion Poplawski <orion@cora.nwra.com> - 4.1.2-2
|
||||
- Rebuild for hdf5 1.8.7
|
||||
|
||||
* Thu Mar 31 2011 Orion Poplawski <orion@cora.nwra.com> - 4.1.2-1
|
||||
- Update to 4.1.2 (soname bump)
|
||||
- Add patch to add -lm to libnetcdf4
|
||||
|
||||
* Tue Feb 08 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.1.1-5
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
|
||||
|
||||
* Mon Jul 19 2010 Dan Horák <dan[at]danny.cz> - 4.1.1-4
|
||||
- no valgrind on s390(x)
|
||||
|
||||
* Mon Apr 19 2010 Orion Poplawski <orion@cora.nwra.com> - 4.1.1-3
|
||||
- Explicitly link libnetcdf.so against -lhdf5_hl -lhdf5
|
||||
@ -314,10 +685,10 @@ fi
|
||||
- building the library twice (once each for g77 and gfortran)
|
||||
fixes an annoying problem for people who need both compilers
|
||||
|
||||
* Fri Sep 29 2005 Ed Hill <ed@eh3.com> - 3.6.0-7.p1
|
||||
* Fri Sep 30 2005 Ed Hill <ed@eh3.com> - 3.6.0-7.p1
|
||||
- add FFLAGS="-fPIC"
|
||||
|
||||
* Fri Jun 13 2005 Ed Hill <ed@eh3.com> - 3.6.0-6.p1
|
||||
* Fri Jun 10 2005 Ed Hill <ed@eh3.com> - 3.6.0-6.p1
|
||||
- rebuild
|
||||
|
||||
* Fri Jun 3 2005 Ed Hill <ed@eh3.com> - 3.6.0-5.p1
|
||||
@ -326,7 +697,7 @@ fi
|
||||
* Mon May 9 2005 Ed Hill <ed@eh3.com> - 3.6.0-4.p1
|
||||
- remove hard-coded dist/fedora macros
|
||||
|
||||
* Wed May 5 2005 Ed Hill <ed@eh3.com> - 3.6.0-3.p1
|
||||
* Wed May 4 2005 Ed Hill <ed@eh3.com> - 3.6.0-3.p1
|
||||
- make netcdf-devel require netcdf (bug #156748)
|
||||
- cleanup environment and paths
|
||||
|
||||
|
@ -1,26 +0,0 @@
|
||||
Index: libsrc/posixio.c
|
||||
===================================================================
|
||||
--- libsrc/posixio.c (revision 1125)
|
||||
+++ libsrc/posixio.c (working copy)
|
||||
@@ -505,6 +505,22 @@
|
||||
/* copy upper half into lower half */
|
||||
(void) memcpy(pxp->bf_base, middle, pxp->bf_cnt);
|
||||
}
|
||||
+ else /* added to fix nofill bug */
|
||||
+ {
|
||||
+ assert(pxp->bf_extent == 2 * pxp->blksz);
|
||||
+ /* still have to page out lower half, if modified */
|
||||
+ if(fIsSet(pxp->bf_rflags, RGN_MODIFIED))
|
||||
+ {
|
||||
+ assert(pxp->bf_refcount <= 0);
|
||||
+ status = px_pgout(nciop,
|
||||
+ pxp->bf_offset,
|
||||
+ pxp->blksz,
|
||||
+ pxp->bf_base,
|
||||
+ &pxp->pos);
|
||||
+ if(status != ENOERR)
|
||||
+ return status;
|
||||
+ }
|
||||
+ }
|
||||
pxp->bf_offset = blkoffset;
|
||||
/* pxp->bf_extent = pxp->blksz; */
|
Loading…
Reference in New Issue
Block a user