mirror of
https://github.com/Unidata/netcdf-c.git
synced 2025-03-25 17:40:27 +08:00
keep up-to-date with master
This commit is contained in:
commit
80390b94e5
@ -19,6 +19,7 @@ This file contains a high-level description of this package's evolution. Release
|
||||
Note that dap4 is disabled by default until the testserver situation is resolved.
|
||||
* [Enhancement] The remote testing server can now be specified with the '--with-testserver" option to ./configure.
|
||||
* [Refactor] the oc2 library is no longer independent of the main netcdf-c library. For example, it now uses ncuri, nclist, and ncbytes instead of its homegrown equivalents.
|
||||
* [Enhancement] Modified netCDF4 to use ASCII for NC_CHAR. See [Github Pull request #316](https://github.com/Unidata/netcdf-c/pull/316) for more information.
|
||||
* [Upgrade][Bug] Corrected an issue regarding how "orphaned" DAS attributes were handled. See [GitHub #376](https://github.com/Unidata/netcdf-c/pull/376) for more information.
|
||||
* [Upgrade] Update utf8proc.[ch] to use the version now maintained by the Julia Language project (https://github.com/JuliaLang/utf8proc/blob/master/LICENSE.md).
|
||||
* [Bug] Addressed conversion problem with Windows sscanf. This primarily affected some OPeNDAP URLs on Windows. See [GitHub #365](https://github.com/Unidata/netcdf-c/issues/365) and [GitHub #366](https://github.com/Unidata/netcdf-c/issues/366) for more information.
|
||||
|
@ -625,7 +625,7 @@ data are written). In that case the specified endian type will be used
|
||||
in HDF5 (for example, a H5T_STD_I16LE will be used for NC_SHORT, if
|
||||
little-endian has been specified for that variable.)
|
||||
- NC_BYTE = H5T_NATIVE_SCHAR
|
||||
- NC_UBYTE = H5T_NATIVE_SCHAR
|
||||
- NC_UBYTE = H5T_NATIVE_UCHAR
|
||||
- NC_CHAR = H5T_C_S1
|
||||
- NC_STRING = variable length array of H5T_C_S1
|
||||
- NC_SHORT = H5T_NATIVE_SHORT
|
||||
|
@ -325,7 +325,7 @@ nc4_get_hdf_typeid(NC_HDF5_FILE_INFO_T *h5, nc_type xtype,
|
||||
return NC_EHDFERR;
|
||||
if (H5Tset_strpad(typeid, H5T_STR_NULLTERM) < 0)
|
||||
BAIL(NC_EVARMETA);
|
||||
if(H5Tset_cset(typeid, H5T_CSET_UTF8) < 0)
|
||||
if(H5Tset_cset(typeid, H5T_CSET_ASCII) < 0)
|
||||
BAIL(NC_EVARMETA);
|
||||
|
||||
/* Take ownership of the newly created HDF5 datatype */
|
||||
|
@ -27,8 +27,9 @@ main(int argc, char **argv)
|
||||
int ncid, i;
|
||||
char *data_in[ATT_LEN];
|
||||
char *data[ATT_LEN] = {"An appeaser is one who feeds a crocodile — "
|
||||
"hoping it will eat him last."};
|
||||
|
||||
"hoping it will eat him last. "
|
||||
"Here are some non-ASCII characters: "
|
||||
"\x00\xAA\xBB\xFF"};
|
||||
|
||||
if (nc_create(FILE_NAME, NC_NETCDF4, &ncid)) ERR;
|
||||
if (nc_put_att(ncid, NC_GLOBAL, ATT_NAME, NC_STRING, ATT_LEN, data)) ERR;
|
||||
|
@ -80,5 +80,5 @@ ADD_CUSTOM_TARGET(makeparser DEPENDS ncgentab.h)
|
||||
|
||||
## Specify files to be distributed by 'make dist'
|
||||
FILE(GLOB CUR_EXTRA_DIST RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/*.c ${CMAKE_CURRENT_SOURCE_DIR}/*.h ${CMAKE_CURRENT_SOURCE_DIR}/*.sh)
|
||||
SET(CUR_EXTRA_DIST ${CUR_EXTRA_DIST} ncgen.y ncgenl.c ncgen.l internals.html c0.cdl c0_4.cdl ref_camrun.cdl ncf199.cdl CMakeLists.txt Makefile.am ncgen.1)
|
||||
SET(CUR_EXTRA_DIST ${CUR_EXTRA_DIST} ncgen.y ncgenl.c ncgen.l internals.html c0.cdl c0_4.cdl ref_camrun.cdl ncf199.cdl tst_gattenum.cdl CMakeLists.txt Makefile.am ncgen.1)
|
||||
ADD_EXTRA_DIST("${CUR_EXTRA_DIST}")
|
||||
|
@ -24,7 +24,7 @@ man_MANS = ncgen.1
|
||||
EXTRA_DIST = ncgen.y ncgen.l ncgenl.c $(man_MANS) internals.html \
|
||||
run_tests.sh run_nc4_tests.sh c0.cdl c0_4.cdl ref_camrun.cdl \
|
||||
ncf199.cdl CMakeLists.txt XGetopt.c c5.cdl \
|
||||
compound_datasize_test.cdl compound_datasize_test2.cdl
|
||||
compound_datasize_test.cdl compound_datasize_test2.cdl tst_gattenum.cdl
|
||||
|
||||
# This shell script causes ncgen to build a classic and a 64-bit
|
||||
# offset file from a cdl file shipped with the distribution.
|
||||
@ -38,6 +38,7 @@ endif # USE_NETCDF4
|
||||
CLEANFILES = c0.nc c0_64.nc c0_4.nc c0_4c.nc ref_camrun.c \
|
||||
ncf199.nc c5.nc compound_datasize_test.nc compound_datasize_test2.nc \
|
||||
tst_compound_datasize_test.cdl tst_compound_datasize_test2.cdl tst_ncf199.cdl \
|
||||
tst_tst_gattenum.cdl tst_gattenum.nc \
|
||||
tst_c0.cdl tst_c0_4.cdl tst_c0_4c.cdl tst_c0_64.cdl
|
||||
|
||||
# These rules are used if someone wants to rebuild ncgenl.c or ncgeny.c
|
||||
|
@ -54,5 +54,8 @@ validateNC "compound_datasize_test" "compound_datasize_test" -k nc4
|
||||
echo "*** github issue 323 test 2"
|
||||
validateNC "compound_datasize_test2" "compound_datasize_test2" -k nc4
|
||||
|
||||
echo "*** Global Attribute with Enum type"
|
||||
validateNC "tst_gattenum" "tst_gattenum" -k nc4
|
||||
|
||||
echo "*** Test successful!"
|
||||
exit 0
|
||||
|
@ -422,6 +422,11 @@ processeconstrefs(void)
|
||||
{
|
||||
unsigned long i;
|
||||
/* locate all the datalist and walk them recursively */
|
||||
for(i=0;i<listlength(gattdefs);i++) {
|
||||
Symbol* att = (Symbol*)listget(gattdefs,i);
|
||||
if(att->data != NULL && listlength(att->data) > 0)
|
||||
processeconstrefsR(att->data);
|
||||
}
|
||||
for(i=0;i<listlength(attdefs);i++) {
|
||||
Symbol* att = (Symbol*)listget(attdefs,i);
|
||||
if(att->data != NULL && listlength(att->data) > 0)
|
||||
|
8
ncgen/tst_gattenum.cdl
Normal file
8
ncgen/tst_gattenum.cdl
Normal file
@ -0,0 +1,8 @@
|
||||
netcdf tst_gattenum {
|
||||
types:
|
||||
ubyte enum Bradys {Mike = 0, Carol = 1, Greg = 2, Marsha = 3, Peter = 4,
|
||||
Jan = 5, Bobby = 6, Whats-her-face = 7, Alice = 8} ;
|
||||
|
||||
// global attributes:
|
||||
Bradys :brady_attribute = Mike, Marsha, Alice;
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user