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
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
|
mkpkg
noao/mkpkg
local/.login
bin.linux64 +
bin.linux64/IB.LNUX.X86_64 +
noao/bin.linux64 +
noao/bin.linux64/NB.LNUX.X86_64 +
unix/as.linux64 +
unix/bin.linux64 +
unix/hlib/cl.csh
unix/hlib/fc.csh
unix/hlib/install
unix/hlib/irafuser.csh
unix/hlib/mkpkg.inc
unix/hlib/mkpkg.sf.LNUX64 +
unix/hlib/strip.iraf
unix/hlib/sysinfo
unix/os/irafpath.c
Set up 'linux64' architecture dirs/paths for port, added a '-DLINUX64'
to HSI_CF. (4/20/09, MJF))
bin.redhat -> bin.linux
noao/bin.redhat -> bin.linux
unix/as.redhat -> as.linux
unix/bin.redhat -> bin.linux
unix/hlib/irafuser.csh
Removed the 'redhat' directories and consolidated into a single 'linux'
architecture. In order to maintain compatability with external packages
we retain the 'redhat' architecture in paths, the idea being that an
extpkg can still use redhat, but in the core system the links resolve to
the linux directory to saisfy the path. (4/20/09, MJF)
sys/libc/scanf.c
sys/libc/printf.c
sys/libc/eprintf.c
sys/libc/sprintf.c
pkg/cl/errs.c
pkg/cl/clprintf.c
pkg/ecl/errs.c
pkg/ecl/clprintf.c
unix/hlib/libc/stdarg.h
Removed the ifdef'd USE_STDARG code. The <varargs.h> is no longer
routinely used and support it problematic. (7/13/09, MJF)
unix/hlib/libc/libc.h
Declared XERPSH/XERPOP for use in all procedures. (7/13/09, MJF)
unix/hlib/libc/ctype.h
Cast the subscripts to (int) to avoid -Wall warnings. (7/13/09, MJF)
sys/libc
Major changes to make ANSI C and clean compile. (7/13/09, MJF)
unix/hlib/libc.h
Added prototype declarations for libc procedure. (7/13/09, MJF)
pkg/cl/clprintf.c
pkg/ecl/clprintf.c
Declared eprintf() void to match libc prototype. (7/13/09, MJF)
pkg/libc/stgio.c
Added a maxch arg to c_stggetline(). This is only used in cl$modes.c
(and ecl$modes.c) and a 3rd arg is supplied. (7/13/09, MJF)
unix/hlib/libc/kernel.h
Added <stdlib.h>, <unistd.h>, <sys/types.h> and <string.h> definition to
get system prototypes (e.g. for the glibc strcmp()) (8/14/09, MJF)
unix/hlib/libc/iraf.h
unix/hlib/libc/varargs.h -
unix/hlib/libc/varargs-bsd.h -
unix/hlib/libc/varargs-linuxppc.h -
Removed use of <varargs.h> from the system. (8/14/09, MJF)
unix/bin.redhat/f2c.h
unix/hlib/libc/kproto.h
unix/hlib/libc/vosproto.h
System prototypes ....... (8/24/09, MJF)
unix/hlib/f77.sh
Added a '-P' flag to allow F2C to produce function prototypes in
files with '.P' extensions. We'll use this in building the system
library prototype files which have changed since the last time they
were generated and are in need of automation (8/24/09, MJF)
unix/os/zgtime.c
Modified to use more modern CLOCKS_PER_SEC vs CLK_TCK (9/23/09, MJF)
sys/nmemio +
New version of MEMIO interface supporting pointer bounds checking.
lib/syserr.h
lib/syserrmsg
Added new codes for pointer under and overflow. ()
unix/boot/xyacc/debug/ytab.x
noao/obsutil/src/sptime/tabinterp.x
noao/obsutil/src/sptime/grating.x
noao/imred/vtel/destreak.x
noao/artdata/t_mk2dspec.x
noao/artdata/mktemplates.x
noao/onedspec/t_sapertures.x
noao/onedspec/t_tweak.x
noao/onedspec/dispcor/dcio.x
pkg/lists/lintran.x
pkg/images/imutil/src/imexpr.x
pkg/images/tv/display/imdwcs.x
pkg/images/tv/wcslab/wlutil.x
pkg/images/tv/wcslab/wllabel.x
pkg/images/tv/wcslab/wlwcslab.x
pkg/images/immatch/src/listmatch/t_imctroid.x
pkg/xtools/rmmed.x
pkg/xtools/rmturlach.x
pkg/xtools/rngranges.x
pkg/bench/xctest/lintran.x
sys/nmemio/zzfoo.x
sys/qpoe/zzdebug.x
sys/qpoe/gen/qpexcoder.x
sys/qpoe/gen/qpexparser.x
sys/qpoe/qpmacro.x
math/curfit/cverrorsr.x
math/nlfit/nlerrorsr.x
math/iminterp/asifit.x
math/gsurfit/gserrorsr.x
Modified to add P2R/P2P macros on Memr as neded.
tables/lib/stxtools/xtwcs.x
tables/lib/stxtools/sp_util/sprote.x
tables/lib/stxtools/wcslab/wllabel.x
tables/lib/stxtools/wcslab/wlwcslab.x
tables/pkg/tbplot/igi/igi.h
tables/pkg/fitsio/stwfits/wfits.h
tables/pkg/fitsio/strfits/rfits.h
tables/pkg/tobsolete/r49fits/rfits.h
tables/lib/stxtools/wcslab/wcs_desc.h
tables/lib/gilib/gi.h
Modified to add P2R/P2P macros on Memr as neded.
./noao/mtlocal/cyber/rrcopy/rrcopy.h
./noao/mtlocal/cyber/cyber.h
./noao/obsutil/src/starfocus/starfocus.h
./noao/obsutil/src/sptime/sptime.h
./noao/obsutil/src/specfocus/specfocus.h
./noao/imred/ccdred/src/ccdred.h
./noao/imred/ccdred/src/generic/ccdred.h
./noao/imred/quadred/src/ccdproc/ccdred.h
./noao/imred/quadred/src/ccdproc/generic/ccdred.h
./noao/imred/vtel/numeric.h
./noao/imred/dtoi/hdicfit/hdicfit.h
./noao/artdata/lists/starlist.h
./noao/digiphot/photcal/lib/obsfile.h
./noao/digiphot/photcal/lib/prstruct.h
./noao/digiphot/photcal/lib/lexer.h
./noao/digiphot/photcal/lib/apfile.h
./noao/digiphot/daophot/lib/psfdef.h
./noao/digiphot/daophot/lib/daophotdef.h
./noao/digiphot/apphot/lib/radprofdef.h
./noao/digiphot/apphot/lib/fitpsfdef.h
./noao/digiphot/apphot/lib/finddef.h
./noao/digiphot/apphot/lib/polyphotdef.h
./noao/digiphot/apphot/lib/noisedef.h
./noao/digiphot/apphot/lib/centerdef.h
./noao/digiphot/apphot/lib/photdef.h
./noao/digiphot/apphot/lib/fitskydef.h
./noao/digiphot/apphot/lib/apphotdef.h
./noao/rv/rvplots.h
./noao/rv/rvidlines/identify.h
./noao/rv/rvsample.h
./noao/rv/rvpackage.h
./noao/rv/rvcont.h
./noao/astcat/lib/aimparsdef.h
./noao/astutil/pdm/pdm.h
./noao/nproto/ace/acesky.h
./noao/nproto/ace/cat.h
./noao/nproto/ace/gwindow.h
./noao/nproto/ace/ace.h
./noao/nproto/ace/skyfit.h
./noao/nproto/ace/grow.h
./noao/nproto/ace/split.h
./noao/nproto/ace/detect.h
./noao/nproto/ace/objs.h
./noao/nproto/ace/skyblock.h
./noao/nproto/ir/iralign.h
./noao/onedspec/specplot.h
./noao/onedspec/irsiids/idsmtn.h
./noao/onedspec/ecidentify/ecidentify.h
./noao/onedspec/identify/autoid/autoid.h
./noao/onedspec/identify/identify.h
./noao/onedspec/sensfunc/sensfunc.h
./noao/onedspec/dispcor/dispcor.h
./noao/lib/smw.h
./noao/lib/units.h
./noao/lib/funits.h
./noao/twodspec/multispec/ms.h
./noao/twodspec/apextract/apertures.h
./pkg/obsolete/oimstat.h
./pkg/obsolete/fits/wfits.h
./pkg/images/imutil/src/imtile.h
./pkg/images/imutil/src/imstat.h
./pkg/images/imfit/src/imsurfit.h
./pkg/images/imcoords/src/starfind.h
./pkg/images/tv/tvmark/tvmark.h
./pkg/images/tv/imexamine/imexam.h
./pkg/images/tv/imexamine/starfocus.h
./pkg/images/tv/iis/src/gwindow.h
./pkg/images/tv/iis/lib/ids.h
./pkg/images/tv/imedit/epix.h
./pkg/images/tv/display/gwindow.h
./pkg/images/tv/wcslab/wcs_desc.h
./pkg/images/imfilter/src/median.h
./pkg/images/imfilter/src/fmedian.h
./pkg/images/imfilter/src/frmode.h
./pkg/images/imfilter/src/fmode.h
./pkg/images/imfilter/src/frmedian.h
./pkg/images/imfilter/src/mode.h
./pkg/images/imfilter/src/rmode.h
./pkg/images/imfilter/src/rmedian.h
./pkg/images/immatch/src/xregister/xregister.h
./pkg/images/immatch/src/psfmatch/psfmatch.h
./pkg/images/immatch/src/geometry/geotran.h
./pkg/images/immatch/src/linmatch/linmatch.h
./pkg/xtools/icfit/icfit.h
./pkg/xtools/inlfit/inlfitdef.h
./pkg/xtools/gtools/gtools.h
./pkg/plot/crtpict/wdes.h
./pkg/plot/crtpict/crtpict.h
./pkg/proto/maskexpr/peregfuncs.h
./pkg/proto/masks/mimstat.h
./pkg/proto/masks/rskysub.h
./pkg/dataio/fits/wfits.h
./pkg/dataio/export/export.h
./sys/psio/psio.h
./sys/mwcs/imwcs.h
./sys/imio/iki/oif/imhv1.h
./sys/imio/iki/oif/imhv2.h
./sys/imio/iki/fxf/fxf.h
./sys/imio/iki/qpf/qpf.h
./sys/plio/plcircle.h
./sys/imfort/imhv1.h
./sys/imfort/imhv2.h
./sys/gio/sgikern/sgi.h
./sys/gio/imdkern/imd.h
./sys/gio/calcomp/ccp.h
./sys/gio/stdgraph/stdgraph.h
./sys/gio/glabax/glabax.h
./sys/gio/nsppkern/gkt.h
./sys/qpoe/qpoe.h
./sys/qpoe/qpex.h
./sys/qpoe/qpio.h
./math/surfit/surfitdef.h
./math/curfit/curfitdef.h
./math/nlfit/nlfitdefr.h
./math/iminterp/im1interpdef.h
./math/iminterp/im2interpdef.h
./math/gsurfit/gsurfitdef.h
./lib/imio.h
./lib/evexpr.h
./lib/imhdr.h
./lib/gio.h
./lib/evvexpr.h
./lib/pkg/rmsorted.h
Modified to add P2R/P2P macros on Memr as neded.
unix/boot/xyacc/debug/ytab.x
noao/obsutil/src/sptime/tabinterp.x
noao/obsutil/src/sptime/grating.x
noao/artdata/t_mk2dspec.x
noao/artdata/mktemplates.x
noao/onedspec/t_sapertures.x
noao/onedspec/t_tweak.x
noao/onedspec/dispcor/dcio.x
pkg/lists/lintran.x
pkg/images/imutil/src/imexpr.x
pkg/images/tv/display/imdwcs.x
pkg/images/tv/wcslab/wlwcslab.x
pkg/images/immatch/src/listmatch/t_imctroid.x
pkg/bench/xctest/lintran.x
sys/qpoe/qpmacro.x
math/curfit/cverrorsr.gx
math/nlfit/nlerrorsr.gx
math/iminterp/asifit.x
math/gsurfit/gserrorsr.gx
Added P2R macros where needed (11/23/09)
lib/gio.h
lib/imio.h
lib/imhdr.h
Added P2R macros where needed (11/23/09)
unix/gdev/sgidev/mkpkg.sh
unix/gdev/sgidev/sgi2svg.c
Added SVG translator.
sys/plio/plload.x
sys/plio/plsave.x
sys/imfort/imioff.x
sys/imfort/imopnx.x
sys/imfort/imrdhdr.x
sys/imfort/imwrhdr.x
sys/imio/iki/oif/oifopen.x
sys/imio/iki/oif/oifopix.x
sys/imio/iki/oif/oifrdhdr.x
sys/imio/iki/oif/oifwrhdr.x
sys/imio/iki/stf/stfrdhdr.x
sys/imio/iki/stf/stfreblk.x
sys/imio/iki/fxf/fxf.h
sys/imio/iki/fxf/fxfopen.x
sys/imio/iki/fxf/fxfrfits.x
Uses of SZ_STRUCT in computing sizes were converted to SZ_MII_INT
sys/libc/fgets.c
Modified to ignore '\r' used in DOS-style text files. Also now handles a
missing '\n' at the EOF as can sometimes happen with emacs-edited files.
noao/onedspec/odcombine/src/xtimmap.gx
noao/onedspec/odcombine/srcwt/xtimmap.gx
noao/twodspec/longslit/lscombine/src/xtimmap.gx
pkg/images/immatch/src/imcombine/src/xtimmap.gx
A pointer (Memi[ims+index-1]) wasn't being reset to NULL when
freed, leading to a segfault when run a second time from the cache.
osb/bitfields.c
Added masks to accomodate 64-bit int sizes. Fixed a FDV problem
seen in NCAR tasks (e.g. contour)
pkg/plot/t_implot.x
The impcom common block was being confused in the linker with the
impcom.o object (imio$dbc) in libex.a. Fixed implot bus error.
lib/gio.h
Modified GP_WCSPTR to be properly aligned.
lib/szpixtype.inc +
Added an equivalent to szdtype.inc for use with pixel-based applications.
The idea is that pixels will continue to be 32-bit ints regardless of
the platform.
imcssz.x
imflsh.x
imggsc.x
imgnln.x
imgobf.x
imnote.x
impnln.x
imrbpx.x
imrdpx.x
imwbpx.x
imwrpx.x
Changed use of ty_size[] to pix_size[]
imioff.x
imsetbuf.x
iki/fxf/fxfopix.x
iki/fxf/fxfpak.x
iki/fxf/fxfupk.x
iki/fxf/zfiofxf.x
iki/qpf/zfioqp.x
iki/stf/stfnewim.x
iki/stf/stfopix.x
iki/stf/stfrdhdr.x
Changed use of sizeof(IM_PIXTYPE(im)) to pix_size[IM_PIXTYPE(im)]
lib/nmi.h
sys/etc/nmiread.gx
sys/etc/nmireadb.x
sys/etc/nmireadc.x
sys/etc/nmiwrite.gx
sys/etc/nmiwriteb.x
sys/etc/nmiwritec.x
Added a new Native Machine Integer (NMI) interface. This is similar to
the MII interface but is meant for use with external binary files that
don't require a (possible) byte-swap. The main point of this is to
provide a means to write native 32-bit ints distinguished from 64-bit
long.
sys/osb/nmilen.x
sys/osb/nminelem.x
sys/osb/nmipak.x
sys/osb/nmipak16.x
sys/osb/nmipak32.x
sys/osb/nmipak8.x
sys/osb/nmipakd.x
sys/osb/nmipakr.x
sys/osb/nmipksize.x
sys/osb/nmiupk.x
sys/osb/nmiupk16.x
sys/osb/nmiupk32.x
sys/osb/nmiupk8.x
sys/osb/nmiupkd.x
sys/osb/nmiupkr.x
Support routines for the NMI interface.
sys/fmtio/evexpr.gy
sys/fmtio/evvexpr.gy
sys/fmtio/xevgettok.x
sys/fmtio/xvvgettok.x
Broke out the xev_gettok() procedure into a new file. Newer GCC
compilers were complainint about the data type.
sys/imio/dbc/imdcom.x -
sys/imio/dbc/imdrmcom.x +
Renamed the file containing the imdrmcom() procedure. This was causing
confusion with the 'imdcom' common block in the linker.
unix/os/mkproto
Added utility script to generate IRAF kernel prototypes.
unix/gdev/sgidev/sgi2svg.x +
Added new SGI driver for SVG graphics.
unix/boot/spp/rpp/test.r +
Added new test file for RPP driver.
unix/boot/spp/xpp/xpp.l
unix/boot/spp/xpp/xppcode.c
Attempt to try to manage new use of Memr[] macros, but one known to
break backward compatibility. A use such as "Memr[$1+N]" is obviously
part of a structure definition, so we automatically add a P2R() macro
so it reads "Memr[P2R($1+N)]" when being passed to RPP. This properly
aligns the struct on 64-bit platforms and is a no-op on 32-bit.
The complication is a simple case of "Memr[$1]" which may be either
the first element of a structure or a utility macro for a TY_REAL array.
In this case, we output an error indicating that a P2P or P2R macro is
required to resolve any ambiguity.
There are similar examples for 2-D arrays that aren't as easily parsed,
but since we can't trap them generally we can't do much to automatically
'fix' the macro.
The overall utility of this change is questionable and may be pulled
from a later release.
sys/osb/abs.c
Added an abs() function to avoid type conflicts between int/long.
sys/osb/i32to64.c
sys/osb/i64to32.c
Imported int 32/64 pack/unpack from IRAF64 code. Note these are
MACHDEP on Intel byte order!
sys/osb/urand.c
sys/osb/imul32.c
The urand() algorithm relies on 32-bit overflow to work properly. Needed
to add an 'imul32' function to do the multiplication with overflow.
sys/osb/ipak32.c
sys/osb/iupk32.c
Added pak/unpak for 32-bit integers.
pkg/images/imutil/src/t_chpix.x
Added an imflush() to the output image.
pkg/plot/t_implot.x
Renamed the 'impcom' to 'implcom' to avoid a symbol name clash in the
linker.
lib/gio.h
sys/gio/cursor/gtr.h
Increased the size of the WCS buffer. The size was previously calculated
as being 17 structure elements by assuming the SZ_INT was 2. Increased
to accomodate 64-bit sizes and will live with the wasted space.
local/iraf_test.tar.gz
Added the "images test scripts" to the main distribution. These require
stty playback and so require the old CL to run. To use these, unpack
in a clean directory and begin with "stty playback=test.images",
successive tests will be run automatically.
pkg/system/bench.cl
Added benchmark script to core distribution.
pkg/cl/proto.h
pkg/ecl/proto.h
Function prototypes for the CL code.
unix/hlib/libc/kproto32.h
unix/hlib/libc/kproto64.h
unix/hlib/libc/vosproto.h
Kernel prototype files. These are somewhat massaged by hand to remove
duplicate symbol names that cause errors but provide 98% coverage until
this can be addressed.
unix/hlib/iraf.h ->
unix/hlib/mach.h ->
unix/hlib/iraf32.h
unix/hlib/mach32.h
unix/hlib/iraf64.h
unix/hlib/mach64.h
Added 32 and 64-bit definitions of the files defining primary data types.
Compilation is actually done using symlinks to the appropriate version in
hbin$ directory. The hlib$ versions are likewise a symlink that points to
the correct version when the architecture is set.
/util +
/Makefile +
Top-level makefle and utility scripts for building the system. Makefile
targets are
all alias for 'update'
sysgen do a complete sysgen
update update system since last sysgen
updatex update with debugging flags enabled
src clean system of current binaries
clean clean system of current binaries
pristine clean system of all binaries
tables compile the TABLES package
noao compile the NOAO package
summary print core/noao/tables spool file summaries
showarch show currently configure arch
<arch> reconfigure for named architecture
unix/hlib/mkpkg.sf.LNUX64
Special files list for new arch.
unix/hlib/irafarch.csh
Utility script to determine proper platform architecture name.
sys/osb/bitfieds.c
Added extra masks to accomodate 64-bit integers.
pkg/xtools/ranges/rgfree.x
Added a check for a null pointer around the mfree. There were cases in
the ICFIT code that this was being called with a NULL pointer and would
trigger an error on newer libc, it seemed safest to allow the previous
behavior but just protect against it.
sys/pmio/zzinterp.x
pm_create() was being called with too many arguments.
unix/hlib/libc/libc.h
Added libc prototype definitions for automatic checking. This is also
where we look at the vosproto.h
------------------------------------------------------
V2.15-ALPHA release (3/2/10)
------------------------------------------------------
math/nlfit.gh
A leftover definition of P2R was causing problems.
sys/nmemio/minit.x
Calls to fmkbfs() to create initialize the I/O buffers were not taking
into account that subsequent calls to the task in the prcache would
already have an i/o buffer. This was causing leading nulls to appear
in the stdout stream (e.g. redirection or scan-from-pipe) as well as
just output to appear in the CL stdout. Commented out the code until
it is better understood. The intent was to ensure that when reporting
memory usage we wouldn't see some arbitrary base value but could ensure
that memory allocated by an app was accounted for completely.
noao/imred/ccdred/src/cosmic/crsurface.x
noao/imred/crutil/src/crsurface.x
pkg/images/tv/imedit/epsurface.x
pkg/images/tv/imexamine/iesimexam.x
pkg/plot/t_surface.x
There is apparenty a bug in the NCAR ezsrfc() routine that reaches beyond
the defined 'work' area (said to be twice the size of the data raster).
This was originally increased to be 4*data in the SURFACE task, but the
routine is called elsewhere and was failing in e.g. IMEXAM. Increased
the size for all instances but will need to track this down.
Pragmatically this can be ignored on modern systems as a minor waste of
space, it is much harder to debug the login of the NCAR code.
|