summaryrefslogtreecommitdiff
blob: e7a97a26cd1c89abbba2a1cfdeb5e58e22019c04 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
diff -Nur saods9.orig/saotk/fitsy++/Makefile saods9/saotk/fitsy++/Makefile
--- saods9.orig/saotk/fitsy++/Makefile	2007-12-28 22:07:11.000000000 +0000
+++ saods9/saotk/fitsy++/Makefile	2008-11-03 23:06:28.000000000 +0000
@@ -3,8 +3,8 @@
 
 CXXFLAGS = $(CXXOPT) -I. -I.. -I../vector -I../util \
 	-I../../include -I$(X11INCLUDE) \
-	-I../../$(FUNTOOLSDIR)/filter -I../../$(FUNTOOLSDIR)/fitsy \
-	-I../../$(FUNTOOLSDIR)/util
+	-I/usr/include/funtools/filter -I/usr/include/funtools/fitsy \
+	-I/usr/include/funtools/util -I/usr/include/wcs
 
 SS	= \
 	alloc.C \
diff -Nur saods9.orig/saotk/frame/Makefile saods9/saotk/frame/Makefile
--- saods9.orig/saotk/frame/Makefile	2008-09-23 20:47:09.000000000 +0100
+++ saods9/saotk/frame/Makefile	2008-11-03 23:11:01.000000000 +0000
@@ -4,8 +4,7 @@
 CXXFLAGS = $(CXXOPT) -w \
 	-I. -I.. -I../widget -I../vector -I../list -I../fitsy++ -I../util \
 	-I../../include -I$(X11INCLUDE) \
-	-I../../$(FUNTOOLSDIR)/util \
-	-I../../$(ASTDIR)
+	-I/usr/include/funtools/util
 
 SS	= \
 	annulus.C \
diff -Nur saods9.orig/saotk/util/tkpostscript.h saods9/saotk/util/tkpostscript.h
--- saods9.orig/saotk/util/tkpostscript.h	2008-02-20 22:26:21.000000000 +0000
+++ saods9/saotk/util/tkpostscript.h	2008-11-04 09:58:00.000000000 +0000
@@ -4,7 +4,7 @@
 
 // this is copied from tkCanvPs.c
 
-#include "../../tk8.4.18/generic/tkCanvas.h"
+#include </usr/lib/tk8.4/include/generic/tkCanvas.h>
 
 typedef struct TkPostscriptInfo {
     int x, y, width, height;	/* Area to print, in canvas pixel
diff -Nur saods9.orig/saotk/widget/ps.h saods9/saotk/widget/ps.h
--- saods9.orig/saotk/widget/ps.h	2008-01-04 17:29:27.000000000 +0000
+++ saods9/saotk/widget/ps.h	2008-11-04 09:59:00.000000000 +0000
@@ -13,7 +13,7 @@
 #include "zlib.h"
 extern int DebugGZ;
 
-#if defined( __alpha) || defined(__mips64) || defined(__sparcv9) || defined(__M64)
+#if defined( __alpha) || defined(__mips64) || defined(__sparcv9) || defined(__M64) || defined(__LP64__)
 #define BIT32 int
 #else
 #define BIT32 long
diff -ur saods9.orig/saotk/frame/fitsimage.C saods9/saotk/frame/fitsimage.C
--- saods9.orig/saotk/frame/fitsimage.C	2007-05-22 20:36:50.000000000 +0200
+++ saods9/saotk/frame/fitsimage.C	2008-11-04 16:36:40.000000000 +0100
@@ -31,7 +31,99 @@
 // this is kluge to speed up doug minks wcssubs 'ksearch' routine
 extern "C" {
   FitsHead* wcshead = NULL;
-  char* ksearchh(char*, char*);
+  char* ksearchh(char* hstring, char* keyword)
+  {
+/* Find entry for keyword keyword in FITS header string hstring.
+   (the keyword may have a maximum of eight letters)
+   NULL is returned if the keyword is not found */
+
+/* char *hstring; character string containing fits-style header
+               information in the format <keyword>= <value> {/ <comment>}
+               the default is that each entry is 80 characters long;
+               however, lines may be of arbitrary length terminated by
+               nulls, carriage returns or linefeeds, if packed is true.  */
+/*char *keyword; character string containing the name of the variable
+               to be returned.  ksearch searches for a line beginning
+               with this string.  The string may be a character
+               literal or a character variable terminated by a null
+               or '$'.  it is truncated to 8 characters. */
+{
+    char *loc, *headnext, *headlast, *pval, *lc, *line;
+    int icol, nextchar, lkey, nleft, lhead, lmax;
+
+#ifdef USE_SAOLIB
+       int iel=1, ip=1, nel, np, ier;
+       char *get_fits_head_str();
+
+       if( !use_saolib ){
+#endif
+
+    pval = 0;
+static int lhead0 = 0;
+/* Find current length of header string */
+    if (lhead0)
+       lmax = lhead0;
+    else
+       lmax = 256000;
+    for (lhead = 0; lhead < lmax; lhead++) {
+       if (hstring[lhead] == (char) 0)
+           break;
+       }
+
+/* Search header string for variable name */
+    headlast = hstring + lhead;
+    headnext = hstring;
+    pval = NULL;
+    while (headnext < headlast) {
+       nleft = headlast - headnext;
+       loc = strncsrch (headnext, keyword, nleft);
+
+       /* Exit if keyword is not found */
+       if (loc == NULL) {
+           break;
+           }
+
+       icol = (loc - hstring) % 80;
+       lkey = strlen (keyword);
+       nextchar = (int) *(loc + lkey);
+
+       /* If this is not in the first 8 characters of a line, keep searching */
+       if (icol > 7)
+           headnext = loc + 1;
+
+       /* If parameter name in header is longer, keep searching */
+       else if (nextchar != 61 && nextchar > 32 && nextchar < 127)
+           headnext = loc + 1;
+
+       /* If preceeding characters in line are not blanks, keep searching */
+       else {
+           line = loc - icol;
+           for (lc = line; lc < loc; lc++) {
+               if (*lc != ' ')
+                   headnext = loc + 1;
+               }
+
+       /* Return pointer to start of line if match */
+           if (loc >= headnext) {
+               pval = line;
+               break;
+               }
+           }
+       }
+/* Return pointer to calling program */
+       return (pval);
+
+#ifdef USE_SAOLIB
+       }
+       else {
+           if (get_fits_head_str(keyword,iel,ip,&nel,&np,&ier,hstring) != NULL)
+               return(hstring);
+           else
+               return(NULL);
+           }
+#endif
+}
+}
 
   char* findit(char* cards, char* key)
   {