sci-libs/idlcoyote: initial import
authorSébastien Fabbro <bicatali@gentoo.org>
Mon, 21 Mar 2016 18:31:03 +0000 (18:31 +0000)
committerSébastien Fabbro <bicatali@gentoo.org>
Tue, 22 Mar 2016 00:02:49 +0000 (00:02 +0000)
Package-Manager: portage-2.2.28

sci-libs/idlcoyote/Manifest [new file with mode: 0644]
sci-libs/idlcoyote/files/idlcoyote-cgloadct.patch [new file with mode: 0644]
sci-libs/idlcoyote/files/idlcoyote-gdl-fixes.patch [new file with mode: 0644]
sci-libs/idlcoyote/idlcoyote-20160321.ebuild [new file with mode: 0644]
sci-libs/idlcoyote/metadata.xml [new file with mode: 0644]

diff --git a/sci-libs/idlcoyote/Manifest b/sci-libs/idlcoyote/Manifest
new file mode 100644 (file)
index 0000000..b065d17
--- /dev/null
@@ -0,0 +1 @@
+DIST idlcoyote-20160321.zip 1360470 SHA256 35a7735df44dbad466051aa18890405e0d5a8abba4bf82dd8baafc104ca5fb56 SHA512 e4cd163b684d44bfacdd56895441ddddc7ab06360c31a94fb5334ba64ab3fb42bdf52ee359585d8766ae9d04d3f9e140e0ee6f507290f3dd01f5728384229ddd WHIRLPOOL 309e69fae6d18640cb3bcd886091875427527939692e68417465d815827c18a8e58a1983211c9c149f84f6cfea9f9fc8273b5cb101ad6fbb30a3984cf90f1c09
diff --git a/sci-libs/idlcoyote/files/idlcoyote-cgloadct.patch b/sci-libs/idlcoyote/files/idlcoyote-cgloadct.patch
new file mode 100644 (file)
index 0000000..ec2afd0
--- /dev/null
@@ -0,0 +1,77 @@
+Author: Ole Streicher <olebole@debian.org>
+Description: Use loadct in cgloadct if no file is specified.
+ GDL does not shipt with a color table "colors1.tbl", so in the case
+ that no file name is specified, fall back to loadct instead of trying to
+ load this file.
+--- a/cgloadct.pro
++++ b/cgloadct.pro
+@@ -86,8 +86,8 @@
+ ;       If this keyword is set to a named variable, the color table is returned as an \r
+ ;       [NCOLORS,3] array and no colors are loaded in the display.\r
+ ;    filename: in, optional, type='string'\r
+-;       The name of a color table file to open. By default colors1.tbl in the IDL \r
+-;       resource directory.\r
++;       The name of a color table file to open. By default the gdl standard
++;color table\r
+ ;    get_names: out, optional, type='string'\r
+ ;       If set to a named variable, the names of the color tables are returned\r
+ ;       and no colors are loaded in the display. Note that RGB_TABLE cannot be\r
+@@ -192,9 +192,8 @@
+       Catch, /CANCEL\r
+       Help, LAST_MESSAGE=1, OUTPUT=traceback\r
+       Help, Calls=callStack\r
+-      callingRoutine = (StrSplit(StrCompress(callStack[1])," ", /Extract))[0]\r
+-      Print,''\r
+-      Print, 'Traceback Report from ' + StrUpCase(callingRoutine) + ':'\r
++      Print,''+callStack\r
++      Print, 'Traceback Report from:'\r
+       Print, ''\r
+       FOR j=0,N_Elements(traceback)-1 DO Print, "     " + traceback[j]\r
+       void = Dialog_Message(traceback[0], /Error, TITLE='Trapped Error')\r
+@@ -236,11 +235,9 @@
+    IF N_Elements(clip) EQ 0 THEN clip = [0,255]\r
+    IF N_Elements(clip) EQ 1 THEN clip = [clip, 255]\r
+    clip = 0 > clip < 255\r
+-   IF N_Elements(file) EQ 0 THEN file = Filepath('colors1.tbl', SUBDIRECTORY=['resource', 'colors'])\r
+-   \r
+    ; Try to locate the brewer file. \r
+    IF Keyword_Set(brewer) THEN BEGIN\r
+-       brewerfilepath = Filepath( ROOT_DIR=cgSourceDir(), 'fsc_brewer.tbl')\r
++       brewerfilepath = Filepath( ROOT_DIR='/usr/share/gnudatalanguage/coyote', 'fsc_brewer.tbl')\r
+        brewerFile = File_Search(brewerfilepath, Count=count)\r
+        IF count EQ 0 THEN BEGIN\r
+             Message, 'Cannot find the Brewer color table file "fsc_brewer.tbl."' + $\r
+@@ -257,6 +254,14 @@
+    IF N_Elements(ncolors) EQ 0 THEN ncolors = !D.TABLE_SIZE - bottom\r
+    reverse = KEYWORD_SET(reverse)\r
\r
++   IF N_Elements(file) EQ 0 THEN BEGIN
++      loadct, table, get_names=get_names, ncolors=ncolors, bottom=bottom, $
++              silent=silent, rgb_table=ltable
++      len = N_Elements(ltable)/3
++      r = ltable[0:len-1]
++      g = ltable[len:2*len-1]
++      b = ltable[2*len:3*len-1]
++   ENDIF ELSE BEGIN
+    ; Open and read the color table files.\r
+    OPENR, lun, file, /GET_LUN\r
+    ntables = 0B\r
+@@ -284,6 +289,7 @@
\r
+    ; Close the file.\r
+    FREE_LUN, lun\r
++   ENDELSE
\r
+    ; Clip the colors.\r
+    r = r[clip[0]:clip[1]]\r
+--- a/xcolors.pro
++++ b/xcolors.pro
+@@ -838,7 +838,7 @@
+            END\r
\r
+         'BREWER': BEGIN\r
+-           info.file = cgFindPathTo('fsc_brewer.tbl')\r
++           info.file = '/usr/share/gnudatalanguage/fsc_brewer.tbl'\r
+            info.brewer = 1\r
+            END\r
+    ENDCASE\r
diff --git a/sci-libs/idlcoyote/files/idlcoyote-gdl-fixes.patch b/sci-libs/idlcoyote/files/idlcoyote-gdl-fixes.patch
new file mode 100644 (file)
index 0000000..ba0ff2c
--- /dev/null
@@ -0,0 +1,13 @@
+Author: Ole Streicher <olebole@debian.org>
+Description: Various small patches to fix things under GDL
+--- a/convert_to_type.pro
++++ b/convert_to_type.pro
+@@ -122,7 +122,7 @@
+          (type EQ 8): Message, 'Unable to convert input to STRUCTURE data type.'\r
+          (type EQ 10): Message, 'Unable to convert input to POINTER data type.'\r
+          (type EQ 11): Message, 'Unable to convert input to OBJECT data type.'\r
+-         (type GT 15): Message, 'Unable to convert undefined data type: ', StrTrim(theType) + '.'\r
++         (type GT 15): Message, 'Unable to convert undefined data type: ' + StrTrim(theType) + '.'\r
+          ELSE:\r
+       ENDCASE\r
+    ENDELSE\r
diff --git a/sci-libs/idlcoyote/idlcoyote-20160321.ebuild b/sci-libs/idlcoyote/idlcoyote-20160321.ebuild
new file mode 100644 (file)
index 0000000..2bcbf08
--- /dev/null
@@ -0,0 +1,32 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6
+
+DESCRIPTION="GDL library from D. Fannings IDL courses"
+HOMEPAGE="http://www.idlcoyote.com/"
+SRC_URI="http://www.idlcoyote.com/programs/zip_files/coyoteprograms.zip -> ${P}.zip"
+
+LICENSE="BSD GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
+IUSE=""
+
+DEPEND="app-arch/unzip"
+RDEPEND="dev-lang/gdl"
+
+S="${WORKDIR}/coyote"
+
+PATCHES=(
+       "${FILESDIR}/${PN}-cgloadct.patch"
+       "${FILESDIR}/${PN}-gdl-fixes.patch"
+)
+
+src_install() {
+       dodoc README.txt
+       newdoc public/README.txt README-public.txt
+       rm README.txt public/README.txt || die
+       insinto /usr/share/gnudatalanguage/coyote
+       doins -r *
+}
diff --git a/sci-libs/idlcoyote/metadata.xml b/sci-libs/idlcoyote/metadata.xml
new file mode 100644 (file)
index 0000000..2359277
--- /dev/null
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="project">
+  <email>sci@gentoo.org</email>
+  <name>Gentoo Science Project</name>
+</maintainer>
+<longdescription lang="en">
+ The Coyote Library evolved from work David Fanning was doing teaching
+ IDL courses and answering IDL questions on the IDL newsgroup. It is
+ meant to be a well-documented library that demonstrates how to write
+ solid IDL/GDL programs that are easy to maintain and extend.
+</longdescription>
+</pkgmetadata>