commit:     b439ca6913121c7ff218c266eedd25e8da0f9bb5
Author:     Sébastien Fabbro <bicatali <AT> gentoo <DOT> org>
AuthorDate: Tue Jun  7 21:42:08 2016 +0000
Commit:     Sebastien Fabbro <bicatali <AT> gentoo <DOT> org>
CommitDate: Tue Jun  7 22:02:12 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b439ca69

sci-astronomy/montage: Initial import

Package-Manager: portage-2.3.0_rc1

 sci-astronomy/montage/Manifest                     |  1 +
 .../files/montage-4.1-fix_format_errors.patch      | 23 ++++++++
 .../files/montage-4.1-fix_freetype_incude.patch    | 13 +++++
 .../montage/files/montage-4.1-initdistdata.patch   | 19 +++++++
 .../files/montage-4.1-use_system_libs.patch        | 49 ++++++++++++++++
 sci-astronomy/montage/metadata.xml                 | 22 ++++++++
 sci-astronomy/montage/montage-4.1.ebuild           | 66 ++++++++++++++++++++++
 7 files changed, 193 insertions(+)

diff --git a/sci-astronomy/montage/Manifest b/sci-astronomy/montage/Manifest
new file mode 100644
index 0000000..06c81c3
--- /dev/null
+++ b/sci-astronomy/montage/Manifest
@@ -0,0 +1 @@
+DIST montage-4.1.tar.gz 38542751 SHA256 
12e463c30de190d6e8e215ef19ee787010194190e3df5ea579b6f3647804a5b4 SHA512 
a4e6572c0ce04ca950cb425e2589d85609d037e57c575d4efa67b277cecf5e54a2e6d307914ee99997baaba7c5bdd43c72b1e1893111eacc065785689bfc17fb
 WHIRLPOOL 
bfd136b52a9c7b0bdceaaa0110b0476e8cb991c64ab4b646b60250e57f282fbe40c9795cef804b15caf29e0628dcb16157af11a1aa4f7e4f7c66c91f969f6484

diff --git a/sci-astronomy/montage/files/montage-4.1-fix_format_errors.patch 
b/sci-astronomy/montage/files/montage-4.1-fix_format_errors.patch
new file mode 100644
index 0000000..d29429c
--- /dev/null
+++ b/sci-astronomy/montage/files/montage-4.1-fix_format_errors.patch
@@ -0,0 +1,23 @@
+Author: Ole Streicher <[email protected]>
+Description: Fix format security error for (s|f)printf
+--- a/grid/Pegasus/hashtable.c
++++ b/grid/Pegasus/hashtable.c
+@@ -4,8 +4,6 @@
+ 
+ #include <hashtable.h>
+ 
+-char *strdup(const char *s1);
+-
+ int HT_debug = 0;
+ 
+ /********************************************************/
+--- a/lib/src/coord/ccalc.c
++++ b/lib/src/coord/ccalc.c
+@@ -25,7 +25,6 @@
+ static int ConvertfromDD(char *fmt, char *clongprec, char *clatprec, 
+                        char *clon, char *clat, double *lon, double *lat);
+ static char *downcase(char *s);
+-char *strdup(const char *s1);
+ int ParseUnits(char *cunit, int *chflag, CoordUnit *unit);
+ int ParsePrec(CoordUnit units, char *cprec, int longflag);
+ 

diff --git a/sci-astronomy/montage/files/montage-4.1-fix_freetype_incude.patch 
b/sci-astronomy/montage/files/montage-4.1-fix_freetype_incude.patch
new file mode 100644
index 0000000..0b27c83
--- /dev/null
+++ b/sci-astronomy/montage/files/montage-4.1-fix_freetype_incude.patch
@@ -0,0 +1,13 @@
+Author: Ole Streicher <[email protected]>
+Description: Fix freetype include path
+--- a/util/Viewer/graphics.c
++++ b/util/Viewer/graphics.c
+@@ -1,7 +1,7 @@
+ #include <stdio.h>
+ #include <math.h>
+ #include <freetype2/ft2build.h>
+-#include <freetype.h>
++#include FT_FREETYPE_H
+ 
+ void labeled_curve (char *face_path, int fontsize, int showLine,
+                     double *xcurve, double *ycurve, int npt,  

diff --git a/sci-astronomy/montage/files/montage-4.1-initdistdata.patch 
b/sci-astronomy/montage/files/montage-4.1-initdistdata.patch
new file mode 100644
index 0000000..7344bbe
--- /dev/null
+++ b/sci-astronomy/montage/files/montage-4.1-initdistdata.patch
@@ -0,0 +1,19 @@
+Author: Christoph Deil <[email protected]>
+Description: non-void function 'closefitsfile' should return a value
+ This is copied from macports.
+Bug: https://trac.macports.org/ticket/41076
+Url: 
https://trac.macports.org/attachment/ticket/41076/patch-lib-src-two_plane_v1.1-initdistdata.c.diff
+--- a/lib/src/two_plane_v1.1/initdistdata.c
++++ b/lib/src/two_plane_v1.1/initdistdata.c
+@@ -33,9 +33,9 @@
+   if (I_fits_return_status != 0)
+   {
+      fprintf(stderr, "Error closing file\n");
+-     return;
++     return -1;
+   }
+-  return;    
++  return 0;
+ }
+ 
+ int initdata_byheader(char *fitsheader, DistCoeff *coeff) 

diff --git a/sci-astronomy/montage/files/montage-4.1-use_system_libs.patch 
b/sci-astronomy/montage/files/montage-4.1-use_system_libs.patch
new file mode 100644
index 0000000..4f4ff8d
--- /dev/null
+++ b/sci-astronomy/montage/files/montage-4.1-use_system_libs.patch
@@ -0,0 +1,49 @@
+From: Sebastien Fabbro <[email protected]>
+Date: Tue, 7 Jun 2016 18:25:12 +0000
+Subject: Use system libraries
+
+--- a/lib/src/Makefile
++++ b/lib/src/Makefile
+@@ -1,5 +1,5 @@
+ l:
+-      (cd cfitsio-3.25; ./configure; make; cp libcfitsio.a ../..; cp *.h 
../../include)
++#     (cd cfitsio-3.25; ./configure; make; cp libcfitsio.a ../..; cp *.h 
../../include)
+       (cd cmd; make; make install)
+       (cd coord; make; make install)
+       (cd mtbl; make; make install)
+@@ -7,25 +7,25 @@ l:
+       (cd boundaries; make; make install)
+       (cd pixbounds; make; make install)
+       (cd www; make; make install)
+-      (cd wcstools-3.8.7/libwcs; make; cp libwcs.a ../../..; cp *.h 
../../../include)
++#     (cd wcstools-3.8.7/libwcs; make; cp libwcs.a ../../..; cp *.h 
../../../include)
+       (cd two_plane_v1.1; make; make install)
+       (cd lodepng_20140823; make; make install)
+-      (cd jpeg-8b; ./configure; make; cp .libs/libjpeg.a ../..; cp jpeglib.h 
jconfig.h jmorecfg.h ../../include)
+-      (cd freetype-2.5.4; ./configure --prefix=`pwd`/../../freetype 
--without-png; make; make install)
++#     (cd jpeg-8b; ./configure; make; cp .libs/libjpeg.a ../..; cp jpeglib.h 
jconfig.h jmorecfg.h ../../include)
++#     (cd freetype-2.5.4; ./configure --prefix=`pwd`/../../freetype 
--without-png; make; make install)
+       (cd ..; ranlib *.a)
+       chmod 644 ../include/*
+ 
+ clean:
+       rm -rf ../include/* ../freetype ../*.a
+-      (cd cfitsio-3.25; make clean; rm -rf config.log config.cache 
config.status lib)
++#     (cd cfitsio-3.25; make clean; rm -rf config.log config.cache 
config.status lib)
+       (cd cmd; make clean)
+       (cd coord; make clean)
+       (cd mtbl; make clean)
+       (cd svc; make clean)
+       (cd boundaries; make clean)
+       (cd pixbounds; make clean)
+-      (cd wcstools-3.8.7/libwcs; make clean)
++#     (cd wcstools-3.8.7/libwcs; make clean)
+       (cd two_plane_v1.1; make clean)
+       (cd lodepng_20140823; make clean)
+-      (cd jpeg-8b; make clean)
+-      (cd freetype-2.5.4; make clean; rm -rf objs/libfreetype.la  objs/.libs)
++#     (cd jpeg-8b; make clean)
++#     (cd freetype-2.5.4; make clean; rm -rf objs/libfreetype.la  objs/.libs)
+-- 
+2.8.3
+

diff --git a/sci-astronomy/montage/metadata.xml 
b/sci-astronomy/montage/metadata.xml
new file mode 100644
index 0000000..54df42e
--- /dev/null
+++ b/sci-astronomy/montage/metadata.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd";>
+<pkgmetadata>
+<maintainer type="project">
+  <email>[email protected]</email>
+  <name>Gentoo Astronomy Project</name>
+</maintainer>
+<longdescription lang="en">
+  Montage is a toolkit for assembling astronomical images into custom mosaics.
+  It uses algorithms that preserve the calibration and positional (astrometric)
+  fidelity of the input images to deliver mosaics that meet user-specified
+  parameters of projection, coordinates, and spatial scale. It supports all
+  projections and coordinate systems in use in astronomy.
+  It contains independent modules for analyzing the geometry of images on the
+  sky, and for creating and managing mosaics; these modules are powerful tools
+  in their own right and have applicability outside mosaic production, in areas
+  such as data validation.
+</longdescription>
+  <upstream>
+    <remote-id type="github">Caltech-IPAC/Montage</remote-id>
+  </upstream>
+</pkgmetadata>

diff --git a/sci-astronomy/montage/montage-4.1.ebuild 
b/sci-astronomy/montage/montage-4.1.ebuild
new file mode 100644
index 0000000..db6c721
--- /dev/null
+++ b/sci-astronomy/montage/montage-4.1.ebuild
@@ -0,0 +1,66 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6
+
+inherit eutils toolchain-funcs
+
+MYPN=Montage
+
+DESCRIPTION="Toolkit for assembling FITS images into mosaics"
+HOMEPAGE="http://montage.ipac.caltech.edu/";
+SRC_URI="https://github.com/Caltech-IPAC/${MYPN}/archive/${PV}.tar.gz -> 
${P}.tar.gz"
+
+LICENSE="BSD GPL-2"
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
+SLOT="0"
+
+IUSE="doc mpi"
+
+RDEPEND="
+       media-libs/freetype:2=
+       sci-astronomy/wcstools:0=
+       sci-libs/cfitsio:0=
+       virtual/jpeg:0
+       mpi? ( virtual/mpi )"
+DEPEND="${RDEPEND}"
+
+PATCHES=(
+       "${FILESDIR}/${P}-fix_format_errors.patch"
+       "${FILESDIR}/${P}-initdistdata.patch"
+       "${FILESDIR}/${P}-fix_freetype_incude.patch"
+       "${FILESDIR}/${P}-use_system_libs.patch"
+)
+
+S="${WORKDIR}/${MYPN}-${PV}"
+
+src_prepare() {
+       default
+       tc-export CC AR
+
+       find . -name Makefile\* | xargs sed -i \
+               -e "/^CC.*=/s:\(gcc\|cc\):$(tc-getCC):g" \
+               -e "/^CFLAGS.*=/s:-g:${CFLAGS} $($(tc-getPKG_CONFIG) --cflags 
wcstools):g" \
+               -e "s:-I../../lib/freetype/include:$($(tc-getPKG_CONFIG) 
--cflags freetype2):g" \
+               -e 's:$(CC) -o:$(CC) $(LDFLAGS) -o:g' \
+               -e "s:-lwcs:$($(tc-getPKG_CONFIG) --libs wcstools):g" \
+               -e "s:-lcfitsio:$($(tc-getPKG_CONFIG) --libs cfitsio):g" \
+               -e 's:-lnsl::g' \
+               -e "s:ar q:$(tc-getAR) q:g"  || die
+
+       if use mpi; then
+               sed -e 's:# MPICC:MPICC:' \
+                       -e 's:# BINS:BINS:' \
+                       -i Montage/Makefile || die
+       fi
+}
+
+src_install () {
+       dobin bin/*
+       dodoc README* ChangeHistory
+       if use doc; then
+               insinto /usr/share/doc/${PF}
+               doins -r man/*
+       fi
+}

Reply via email to