summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/coda-1-use-stdint.patch22
-rw-r--r--src/coda-test.c22
-rw-r--r--src/coda.mk38
3 files changed, 82 insertions, 0 deletions
diff --git a/src/coda-1-use-stdint.patch b/src/coda-1-use-stdint.patch
new file mode 100644
index 0000000..77e306a
--- /dev/null
+++ b/src/coda-1-use-stdint.patch
@@ -0,0 +1,22 @@
+This file is part of MXE.
+See index.html for further information.
+
+This patch has been taken from https://github.com/stcorp/coda/pull/9
+
+diff --git a/libcoda/coda.h.in b/libcoda/coda.h.in
+index 1587c61..b7dce21 100644
+--- a/libcoda/coda.h.in
++++ b/libcoda/coda.h.in
+@@ -33,9 +33,9 @@ extern "C"
+ #ifdef WIN32
+ #include <windows.h>
+
+-#if (_MSC_VER < 1600)
+-/* For Visual Studio we can use stdint.h as of Visual Studio 2010
+- * For earlier versions we need to provide our own defines
++#if (_MSC_VER < 1600) && !defined(__MINGW32__)
++/* For Visual Studio > 2010 and MinGW we can use stdint.h
++ * For earlier versions of Visual Studio we need to provide our own defines
+ */
+ #ifndef int8_t
+ #define int8_t signed char
diff --git a/src/coda-test.c b/src/coda-test.c
new file mode 100644
index 0000000..f5da782
--- /dev/null
+++ b/src/coda-test.c
@@ -0,0 +1,22 @@
+/*
+ * This file is part of MXE.
+ * See index.html for further information.
+ */
+
+#include <stdio.h>
+#include <coda.h>
+
+int main() {
+
+ printf("Testing CODA version %s\n", libcoda_version);
+
+ int rc = coda_init();
+
+ if (rc) {
+ printf("coda_init returned error '%d' -- '%s'", coda_errno, coda_errno_to_string(coda_errno) );
+ }
+
+ coda_done();
+
+ return 0;
+}
diff --git a/src/coda.mk b/src/coda.mk
new file mode 100644
index 0000000..ecba702
--- /dev/null
+++ b/src/coda.mk
@@ -0,0 +1,38 @@
+# This file is part of MXE.
+# See index.html for further information.
+
+PKG := coda
+$(PKG)_IGNORE :=
+$(PKG)_VERSION := 2.15.1
+$(PKG)_CHECKSUM := 51076ff958ec15633d741ea021761fc6d8c6492f931175c489288481e37ac810
+$(PKG)_SUBDIR := coda-$($(PKG)_VERSION)
+$(PKG)_FILE := coda-$($(PKG)_VERSION).tar.gz
+$(PKG)_URL := https://github.com/stcorp/coda/releases/download/$($(PKG)_VERSION)/$($(PKG)_FILE)
+$(PKG)_DEPS := gcc
+
+define $(PKG)_UPDATE
+ echo 'TODO: write update script for $(PKG).' >&2;
+ echo $($(PKG)_VERSION)
+endef
+
+define $(PKG)_BUILD
+ cd '$(1)' && ./configure \
+ $(MXE_CONFIGURE_OPTS) \
+ --disable-idl \
+ --disable-matlab \
+ --disable-python \
+ --without-hdf5 \
+ --without-hdf4
+
+ # Fortran includes are generated by the tool 'generate-finc',
+ # which needs to run natively:
+ cd '$(1)' && $(CC) -I . -o generate-finc fortran/generate-finc.c
+
+ $(MAKE) -C '$(1)' -j '$(JOBS)'
+ $(MAKE) -C '$(1)' -j 1 install-libLTLIBRARIES install-nodist_includeHEADERS install-fortranDATA
+
+ '$(TARGET)-gcc' \
+ -std=c99 -W -Wall -Werror -pedantic \
+ '$(2).c' -o '$(PREFIX)/$(TARGET)/bin/test-coda.exe' \
+ -lcoda
+endef