changeset 3163:18c5fa5ce861

Add CFITSIO module (currently only compiles with MSVC)
author Michael Goffioul <michael.goffioul@gmail.com>
date Sun, 21 Jul 2013 22:22:29 -0400
parents a2e79ce60e44
children 1c7c6c090223
files dist-files.mk index.html src/cfitsio.mk
diffstat 3 files changed, 52 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/dist-files.mk	Sun Jul 21 21:41:42 2013 -0400
+++ b/dist-files.mk	Sun Jul 21 22:22:29 2013 -0400
@@ -35,6 +35,7 @@
   cairo.mk \
   cairomm.mk \
   cblas.mk \
+  cfitsio.mk \
   cgal-1-fixes.patch \
   cgal.mk \
   cminpack.mk \
--- a/index.html	Sun Jul 21 21:41:42 2013 -0400
+++ b/index.html	Sun Jul 21 22:22:29 2013 -0400
@@ -1059,6 +1059,11 @@
         <td id="cblas-website"><a href="http://www.netlib.org/blas/">cblas</a></td>
     </tr>
     <tr>
+        <td id="cfitsio-package">cfitsio</td>
+        <td id="cfitsio-version">3.350</td>
+        <td id="cfitsio-website"><a href="http://heasarc.gsfc.nasa.gov/fitsio/">CFITSIO</a></td>
+    </tr>
+    <tr>
         <td id="cgal-package">cgal</td>
         <td id="cgal-version">4.0.2</td>
         <td id="cgal-website"><a href="http://www.cgal.org/">cgal</a></td>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/cfitsio.mk	Sun Jul 21 22:22:29 2013 -0400
@@ -0,0 +1,46 @@
+# This file is part of MXE.
+# See index.html for further information.
+
+PKG             := cfitsio
+$(PKG)_IGNORE   :=
+$(PKG)_CHECKSUM := 4870380013d089e1e9b8994d74f15482decffc1c
+$(PKG)_SUBDIR   := $(PKG)
+$(PKG)_FILE     := $(PKG)$(subst .,,$($(PKG)_VERSION)).tar.gz
+$(PKG)_URL      := ftp://heasarc.gsfc.nasa.gov/software/$(PKG)/c/$($(PKG)_FILE)
+$(PKG)_DEPS     :=
+
+define $(PKG)_UPDATE
+    echo 'Warning: Updates are temporarily disabled for package cfitsio.' >&2;
+    echo $(cfitsio_VERSION)
+endef
+
+ifeq ($(MXE_SYSTEM),msvc)
+define $(PKG)_BUILD
+    $(SED) -i 's/cfitsio\.dll/$(LIBRARY_PREFIX)cfitsio$(LIBRARY_SUFFIX).dll/g' '$(1)/makefile.vcc'
+    cd '$(1)' && env -u MAKE -u MAKEFLAGS nmake -f makefile.vcc
+    $(SED) -e 's#@prefix@#$(HOST_PREFIX)#' \
+           -e 's#@exec_prefix@#$${prefix}#' \
+           -e 's#@libdir@#$${exec_prefix}/lib#' \
+           -e 's#@includedir@#$${prefix}/include#' \
+           -e 's#@LIBS@##' \
+           -e '/^Libs\.private:/ { s#-lm\>##; }' \
+           -e 's#@CFITSIO_MAJOR@#$(word 1,$(subst ., ,$($(PKG)_VERSION)))#' \
+           -e 's#@CFITSIO_MINOR@#$(word 2,$(subst ., ,$($(PKG)_VERSION)))#' \
+           '$(1)/cfitsio.pc.in' > '$(1)/cfitsio.pc'
+    $(INSTALL) -d '$(HOST_BINDIR)'
+    $(INSTALL) '$(1)/$(LIBRARY_PREFIX)cfitsio$(LIBRARY_SUFFIX).dll' '$(HOST_BINDIR)'
+    $(INSTALL) -d '$(HOST_LIBDIR)'
+    $(INSTALL) '$(1)/cfitsio.lib' '$(HOST_LIBDIR)'
+    $(INSTALL) -d '$(HOST_LIBDIR)/pkgconfig'
+    $(INSTALL) '$(1)/cfitsio.pc' '$(HOST_LIBDIR)/pkgconfig'
+    $(INSTALL) -d '$(HOST_INCDIR)'
+    for f in fitsio.h fitsio2.h longnam.h drvrsmem.h; do \
+        $(INSTALL) "$(1)/$$f" '$(HOST_INCDIR)'; \
+    done
+endef
+else
+define $(PKG)_BUILD
+    echo "Building of package cfitsio not implemented yet."
+    false
+endef
+endif