mirror of
https://github.com/Unidata/netcdf-c.git
synced 2024-11-21 03:13:42 +08:00
47daf33074
Update utf8proc.[ch] to use the version now maintained by the Julia Language project (https://github.com/JuliaLang/utf8proc/blob/master/LICENSE.md). The license for the previous version was unacceptable for the Debian and Ubuntu release systems. The new version both updates the code and addresses the license issue. It turns out that the utf8proc software we are using was turned over to the Julia Language developers and the license terms changed to allow modification. (https://github.com/JuliaLang/utf8proc/blob/master/LICENSE.md). So the fix here is as follows: 1. Wrap the library with a fixed interface: libdispatch/dutf8.c and include/ncutf8.h. 2. Replace the existing utf8proc code with the new version from https://github.com/JuliaLang/utf8proc. 3. Add a couple more test cases: nc_test/tst_utf8_validate.c and nc_test_utf8_phrases.c. If/when I can find a usable normalization test, I will incorporate that later.
67 lines
2.3 KiB
Makefile
Executable File
67 lines
2.3 KiB
Makefile
Executable File
## This is a automake file, part of Unidata's netCDF package.
|
|
# Copyright 2005, see the COPYRIGHT file for more information.
|
|
|
|
# This Makefile controls the building of the dispatch layer of the
|
|
# netCDF library. The dispatch layer decides whether to call the
|
|
# netcdf-classic code, netcdf-4 code, nc3 dap code, or nc4 dap
|
|
# code. It also contains code that sit above the dispatch layer, like
|
|
# the v2 API.
|
|
|
|
# Put together AM_CPPFLAGS and AM_LDFLAGS.
|
|
include $(top_srcdir)/lib_flags.am
|
|
|
|
# This is our output, the dispatch convenience library.
|
|
noinst_LTLIBRARIES = libdispatch.la
|
|
libdispatch_la_CPPFLAGS = ${AM_CPPFLAGS}
|
|
|
|
# The source files.
|
|
libdispatch_la_SOURCES = dparallel.c dcopy.c dfile.c ddim.c datt.c \
|
|
dattinq.c dattput.c dattget.c derror.c dvar.c dvarget.c dvarput.c \
|
|
dvarinq.c dinternal.c ddispatch.c dutf8.c \
|
|
nclog.c dstring.c \
|
|
ncuri.c nclist.c ncbytes.c nchashmap.c nctime.c \
|
|
nc.c nclistmgr.c
|
|
|
|
# Add the utf8 codebase
|
|
libdispatch_la_SOURCES += utf8proc.c utf8proc.h
|
|
|
|
# Add functions only found in netCDF-4.
|
|
if USE_NETCDF4
|
|
libdispatch_la_SOURCES += dgroup.c dvlen.c dcompound.c dtype.c denum.c \
|
|
dopaque.c ncaux.c
|
|
endif # USE_NETCDF4
|
|
|
|
# Turn on pre-processor flag when building a DLL for windows.
|
|
if BUILD_DLL
|
|
libdispatch_la_CPPFLAGS += -DDLL_EXPORT
|
|
endif # BUILD_DLL
|
|
|
|
# Add V2 API convenience library if needed.
|
|
if BUILD_V2
|
|
noinst_LTLIBRARIES += libnetcdf2.la
|
|
libnetcdf2_la_SOURCES = dv2i.c
|
|
libnetcdf2_la_CPPFLAGS = ${AM_CPPFLAGS} -DDLL_EXPORT
|
|
endif # BUILD_V2
|
|
|
|
EXTRA_DIST=CMakeLists.txt ncsettings.hdr utf8proc_data.c
|
|
|
|
# Build ncsettings.c as follows:
|
|
# 1. copy ncsettings.hdr to ncsettings.c
|
|
# 2. append libnetcdf.settings to ncsettings.c after
|
|
# processing it as follows:
|
|
# 1. convert tabs and cr to blanks
|
|
# 2. convert embedded double quote (") to escaped form (\").
|
|
# 3. append newline (\n) to each line
|
|
# 4. surround each line with double quotes.
|
|
# 3. finally, add a semicolon to the end of ncsettings.c
|
|
# to complete the string constant.
|
|
|
|
ncsettings.c: $(top_srcdir)/libnetcdf.settings ncsettings.hdr
|
|
rm -f ncsettings.c
|
|
cat ncsettings.hdr > ncsettings.c
|
|
tr '\t\r' ' ' <${top_srcdir}/libnetcdf.settings | \
|
|
sed -e 's/"/\\"/g' | \
|
|
sed -e 's/\(.*\)/\"\1\\n\"/' | \
|
|
cat >> ncsettings.c
|
|
echo ';' >> ncsettings.c
|