On athos.rutgers.edu, in pub/linux, I've just put a copy of icon, as
icon.tar.Z. It is designed to be used with a distribution of Icon,
from cs.arizona.edu, though if you don't need any of the libraries,
the binaries here may be enough for you. (This isn't quite like libc
-- the libraries are various optional modules. You can easily import
the ones you need and compile them individually.) This tar file puts
things in /usr/icon/v8/bin and /usr/icon/v8/config/unix/linux. The
first contains the execuatables icont and iconx (the translator and
runtime, respectively). The second contains the implementation
specific source files. The linux port did not require modifying any
of the main source file tree, so you should be able to install the
Linux configuration subdirectory and then following the normal
procedures for rebuilding icon. I've run all the tests, and
everything works. Note that building iconx uses -lm. If you're
using libsoft.a (as I did here), you should make sure a copy of
libsoft.a is available as /usr/lib/libm.a.
In order to get things to this point, I had to fix several things.
The floating point fixes are in math.fixes:
- fix crt0.s to initialize the 387 to truncate towards
zero. The coode produced by GCC seems to assume
this. Without it, assigning a floating point
number to an integer uses rounding instead of
truncation. This caused disasters to the icon
validation tests.
- fix sqrt to be able to take sqrt(0)
- add ecvt, which is needed by icon
By the way, libsoft.a apparently had not been ranlibbed. I
got a complaint about a missing routine that went away
after I ranlibbed it.
I also had to fix fwrite. If you tried to write a data structure that
had a -1 in just the wrong place, the write would blow up. I've put
this fix into libsrc.tar.Z and libbin.tar.Z, which I described in a
previous posting.| monstr | [PATCH 11/60] microblaze_v4: cache support |
| Andrew Morton | Re: x86: 4kstacks default |
| Greg KH | [GIT PATCH] driver core patches against 2.6.24 |
| Alan Cox | Re: Dual-Licensing Linux Kernel with GPL V2 and GPL V3 |
git: | |
| Jarek Poplawski | [PATCH] pkt_sched: Destroy gen estimators under rtnl_lock(). |
| Ben Hutchings | Re: [GIT]: Networking |
| Gerrit Renker | [PATCH 03/37] dccp: List management for new feature negotiation |
| Jiri Olsa | [PATCHv5 0/2] net: fix race in the receive/select |
