Subject: CVS commit: pkgsrc/lang/icon
To: None <pkgsrc-changes@netbsd.org>
From: Jason Beegan <jtb@netbsd.org>
List: pkgsrc-changes
Date: 06/25/2001 21:00:22
Module Name:	pkgsrc
Committed By:	jtb
Date:		Mon Jun 25 18:00:21 UTC 2001

Modified Files:
	pkgsrc/lang/icon: Makefile distinfo
	pkgsrc/lang/icon/patches: patch-ab patch-ag patch-ah patch-ai patch-aj
	    patch-ak patch-al patch-am patch-an patch-ao patch-ap patch-aq
	    patch-ar patch-as patch-at patch-au patch-av patch-aw patch-ax
	    patch-ay patch-ba
	pkgsrc/lang/icon/pkg: PLIST
Added Files:
	pkgsrc/lang/icon/patches: patch-aa patch-ae patch-af patch-az
Removed Files:
	pkgsrc/lang/icon/patches: patch-bb patch-bc patch-bd patch-be patch-bf
	    patch-bg patch-bh patch-bi patch-bj patch-bk patch-bl patch-bm
	    patch-bn patch-bo patch-bp patch-bq patch-br patch-bs patch-bt
	    patch-bu patch-bv patch-bw patch-ca patch-cb patch-cc patch-cd
	    patch-ce patch-cf patch-cg patch-ch patch-ci patch-cj patch-ck
	    patch-cl patch-cm patch-cn patch-co patch-cp patch-cq
	pkgsrc/lang/icon/scripts: configure

Log Message:
Update of icon to 9.4.0.

   Version  9.4 of Icon is a modified and repackaged implementation based
   on  version  9.3.2  of  Icon.  The changes make it easier to maintain,
   install,  and  use under Unix while retaining potential portability to
   other  systems.  Most  significant  are  changes  to  path  searching,
   described  below,  and  the inclusion of the Icon program library as a
   standard part of all Unix source and binary distributions.

   The  Icon  language  is  unchanged,  and  this 9.4 Unix implementation
   remains compatible at the source level with Icon 9.3 for Windows.

Recent feature additions

   New  features  added  since  the  publication  of  the  Icon books are
   described below.

  Reading foreign text files

   (new with Version 9.3.1 of Icon)

   The  function  read()  recognizes three kinds of line terminators when
   reading  a  file opened in translated mode: Windows (CR+LF), Macintosh
   (CR),  or  Unix (LF). Consequently, text files created on one platform
   can be read by an Icon program running on a different platform.

  Reading directory contents

   (new with Version 9.3.2 of Icon)

   The  files  in a directory can be listed by opening the directory as a
   file.  Subsequent reads return the names of the files contained in the
   directory.  The  names  are  returned  in no particular order, and for
   Unix, the directories "." and ".." are included.

  Path searching

   (new with Version 9.4 of Icon)

   Under  Unix,  colons (:) may now separate directories in the LPATH and
   IPATH  environment  variables  as  an  alternative to spaces. The Icon
   translator and linker search these paths when looking for $include and
   link files respectively.

   The  Icon program library is now searched automatically, but LPATH and
   IPATH  can  still be set to control the search order. For version 9.4,
   the effective path in each case is:
    1. the current directory
    2. any directories named by the environment variable
    3. the Icon library directory

   Other  changes  affect  the configuration of Icon at installation time
   and  the  way  executable  Icon programs locate the interpreter. These
   changes,  which  are  transparent to most users, are discussed in more
   detail on the [2]File Organization page.

Other Icon Changes

   Several  areas  of  the  Icon  implementation have been cleaned up, in
   particular   the  run-time  initialization  code,  and  some  obsolete
   configurations have been removed.

   With one clearly marked exception, programs in the standard test suite
   now generate reproducible output.

   The following problems have been corrected:
     * The sign bit was lost when converting a real to a large integer.
     * A duplicate close(f) could crash the interpreter.
     * Very large coordinate values were silently mishandled.
     * Window attributes over 127 characters long caused a segfault.
     * A segfault during traceback could produce an infinite loop.
     * A file inclusion bug in gcc 2.96 prevented Icon from building.

Library Changes

   The  program  library  has been incorporated into the main Icon source
   tree and is routinely built along with icont and iconx. Tests for most
   of  the  core  library  functions  and  loadable C functions have been
   incorporated  the standard test suite, and some additional consistency
   tests were developed.

   Numerous  changes  were  made  throughout  the  library to fix linking
   problems,  to  fix  typos  and formatting, and to support building via
   Makefiles.

   Some  files  that were miscategorized as graphics or non-graphics have
   been   moved.   Duplicate  files  in  the  cfuncs  and  packs/loadfunc
   directories  have been eliminated. Some other obsolete files were also
   removed.

   Other significant changes were:
procs/datetime          fixed dayoweek() to get all twelve months right
procs/factors           fixed divisors() to consistently return all factors
                        fixed genfactors() for some failing cases
                        added some minor optimizations
procs/genrfncs          added several new sequence generators
procs/io                modified to allow ":" as a path separator under Unix
procs/lists             fixed fatal bugs in lminlen() and lmaxlen()
                        added several new list manipulation procedures
procs/lstfncs           added: procedures to produce lists from sequences
procs/numbers           fixed decimal() for values where remainder repeats
procs/pdco              added several new control operations
procs/periodic          added: procedures related to periodic sequences
procs/permutat          added: procedures for permutations
procs/polynom           added: manipulate multi-variate polynomials
procs/pqueue            added new priority queue procedures
procs/rational          added real2rat(v, p)    #: convert real to rational
                        added medrat(r1, r2)    #: rational mediant
procs/records           added fieldnum(R, s)    #: return index of field R.s
procs/seqops            replaced: procedures to manipulate T-sequences
procs/strings           modified fchars() to break ties lexically
                        renamed permute() to permutes()

cfuncs/icall.h          fixed reading of misaligned doubles by RealVal()
cfuncs/fpoll.c          support fpoll() under BSD Unix flavors

gprocs/drawlab          modified to let the caller control the window size

progs/htprep            modified to improve quoting
progs/ipatch            modified to understand v9.4 headers as well as v9.3
progs/unclog            added: program to reformat CVS logs

gprogs/breakout         added: a new breakout game
gprogs/dlgvu            modified to allow interruption while drawing labels
gprogs/gallery          modified to recognize some nonstandard JPEG files
gpacks/tiger            modified to allow interruption of drawing
gpacks/xtiles           fixed the usage message

packs/loadfunc/cspace   increased the default window size


To generate a diff of this commit:
cvs rdiff -r1.17 -r1.18 pkgsrc/lang/icon/Makefile
cvs rdiff -r1.2 -r1.3 pkgsrc/lang/icon/distinfo
cvs rdiff -r0 -r1.5 pkgsrc/lang/icon/patches/patch-aa \
    pkgsrc/lang/icon/patches/patch-af
cvs rdiff -r1.5 -r1.6 pkgsrc/lang/icon/patches/patch-ab
cvs rdiff -r0 -r1.4 pkgsrc/lang/icon/patches/patch-ae \
    pkgsrc/lang/icon/patches/patch-az
cvs rdiff -r1.2 -r1.3 pkgsrc/lang/icon/patches/patch-ag \
    pkgsrc/lang/icon/patches/patch-ah pkgsrc/lang/icon/patches/patch-ai \
    pkgsrc/lang/icon/patches/patch-aj pkgsrc/lang/icon/patches/patch-ak \
    pkgsrc/lang/icon/patches/patch-al pkgsrc/lang/icon/patches/patch-am \
    pkgsrc/lang/icon/patches/patch-an pkgsrc/lang/icon/patches/patch-ao \
    pkgsrc/lang/icon/patches/patch-ap pkgsrc/lang/icon/patches/patch-aq \
    pkgsrc/lang/icon/patches/patch-ar pkgsrc/lang/icon/patches/patch-as \
    pkgsrc/lang/icon/patches/patch-at pkgsrc/lang/icon/patches/patch-au \
    pkgsrc/lang/icon/patches/patch-av pkgsrc/lang/icon/patches/patch-aw \
    pkgsrc/lang/icon/patches/patch-ax pkgsrc/lang/icon/patches/patch-ba
cvs rdiff -r1.3 -r1.4 pkgsrc/lang/icon/patches/patch-ay
cvs rdiff -r1.2 -r0 pkgsrc/lang/icon/patches/patch-bb \
    pkgsrc/lang/icon/patches/patch-bc pkgsrc/lang/icon/patches/patch-bd \
    pkgsrc/lang/icon/patches/patch-be pkgsrc/lang/icon/patches/patch-bf \
    pkgsrc/lang/icon/patches/patch-bg pkgsrc/lang/icon/patches/patch-bh \
    pkgsrc/lang/icon/patches/patch-bi pkgsrc/lang/icon/patches/patch-bj \
    pkgsrc/lang/icon/patches/patch-bk pkgsrc/lang/icon/patches/patch-bl \
    pkgsrc/lang/icon/patches/patch-bm pkgsrc/lang/icon/patches/patch-bn \
    pkgsrc/lang/icon/patches/patch-bo pkgsrc/lang/icon/patches/patch-bp \
    pkgsrc/lang/icon/patches/patch-bq pkgsrc/lang/icon/patches/patch-br \
    pkgsrc/lang/icon/patches/patch-bs
cvs rdiff -r1.3 -r0 pkgsrc/lang/icon/patches/patch-bt \
    pkgsrc/lang/icon/patches/patch-bu pkgsrc/lang/icon/patches/patch-bv \
    pkgsrc/lang/icon/patches/patch-bw pkgsrc/lang/icon/patches/patch-ca \
    pkgsrc/lang/icon/patches/patch-cd
cvs rdiff -r1.1 -r0 pkgsrc/lang/icon/patches/patch-cb \
    pkgsrc/lang/icon/patches/patch-ce pkgsrc/lang/icon/patches/patch-cf \
    pkgsrc/lang/icon/patches/patch-cg pkgsrc/lang/icon/patches/patch-ch \
    pkgsrc/lang/icon/patches/patch-ci pkgsrc/lang/icon/patches/patch-cj \
    pkgsrc/lang/icon/patches/patch-ck pkgsrc/lang/icon/patches/patch-cl \
    pkgsrc/lang/icon/patches/patch-cm pkgsrc/lang/icon/patches/patch-cn \
    pkgsrc/lang/icon/patches/patch-co pkgsrc/lang/icon/patches/patch-cp \
    pkgsrc/lang/icon/patches/patch-cq
cvs rdiff -r1.4 -r0 pkgsrc/lang/icon/patches/patch-cc
cvs rdiff -r1.4 -r1.5 pkgsrc/lang/icon/pkg/PLIST
cvs rdiff -r1.5 -r0 pkgsrc/lang/icon/scripts/configure

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.