# $State$
# $Revision$
- THE AMSTERDAM COMPILER KIT V6.0pre1
+ THE AMSTERDAM COMPILER KIT V6.0pre2
===================================
© 1987-2005 Vrije Universiteit, Amsterdam
- 2007-02-25
+ 2007-04-24
INTRODUCTION
Languages:
-ANSI C, K&R C, Pascal, Modula 2, Occam 1, and a Basic variant.
+ANSI C, Pascal, Modula 2. K&R is supported via the ANSI C compiler.
Platforms:
pc86 produces bootable floppy disk images for 8086 PCs
+linux386 produces ELF executables for PC Linux systems
INSTALLATION
installed, but is rather out of date).
There are some (known working) example programs in the 'examples' directory.
+A sample command line is:
+
+ack -mlinux386 -O examples/paranoia.c
GOTCHAS
There are some things you should be aware of.
-- The only platform supported so far is pc86, which generates 8086 tiny mode
- executables that will work as floppy disk boot images. So, to run, simply dd
- the output file (pc86.img by default) onto a floppy disk and boot from it.
- Be aware that very little functionality is supported and that the entire
- program, heap and stack and code and all, must fit within 64kB. See
- plat/pc86/README for more information.
+- Look at plat/linux386/README and plat/pc86/README for information about the
+ two supported platforms.
-- By default, the ack tool will compile K&R C. Practically all C source these
- days is ANSI C --- use the -ansi switch to enable ANSI mode. No, the ACK is
- not C99 compatible.
+- The library support is fairly limited; for C, it's at roughly the ANSI C
+ level, and for the other languages it's similar.
- When compiling languages other than C, the ACK will usually look at the
first character of the file. If it's a #, then the file will be run through
David Given (dtrg on Sourceforge)
dg@cowlark.com
-2007-02-25
+2007-04-24
local headers = group {
install = {
- pm.install(d.."headers/sys/time.h", "%BINDIR%include/ansi/sys/time.h"),
+ pm.install(d.."headers/sys/time.h", "%BINDIR%include/ansi/sys/time.h"),
pm.install(d.."headers/sys/ioctl.h", "%BINDIR%include/ansi/sys/ioctl.h"),
- pm.install(d.."headers/assert.h", "%BINDIR%include/ansi/assert.h"),
- pm.install(d.."headers/ctype.h", "%BINDIR%include/ansi/ctype.h"),
--- pm.install(d.."headers/dirent.h", "%BINDIR%include/ansi/dirent.h"),
- pm.install(d.."headers/errno.h", "%BINDIR%include/ansi/errno.h"),
- pm.install(d.."headers/float.h", "%BINDIR%include/ansi/float.h"),
--- pm.install(d.."headers/grp.h", "%BINDIR%include/ansi/grp.h"),
- pm.install(d.."headers/limits.h", "%BINDIR%include/ansi/limits.h"),
--- pm.install(d.."headers/locale.h", "%BINDIR%include/ansi/locale.h"),
- pm.install(d.."headers/math.h", "%BINDIR%include/ansi/math.h"),
--- pm.install(d.."headers/mathconst.h", "%BINDIR%include/ansi/mathconst.h"),
- pm.install(d.."headers/setjmp.h", "%BINDIR%include/ansi/setjmp.h"),
- pm.install(d.."headers/signal.h", "%BINDIR%include/ansi/signal.h"),
- pm.install(d.."headers/stdarg.h", "%BINDIR%include/ansi/stdarg.h"),
- pm.install(d.."headers/stddef.h", "%BINDIR%include/ansi/stddef.h"),
- pm.install(d.."headers/stdio.h", "%BINDIR%include/ansi/stdio.h"),
- pm.install(d.."headers/stdlib.h", "%BINDIR%include/ansi/stdlib.h"),
- pm.install(d.."headers/string.h", "%BINDIR%include/ansi/string.h"),
- pm.install(d.."headers/time.h", "%BINDIR%include/ansi/time.h"),
+ pm.install(d.."headers/assert.h", "%BINDIR%include/ansi/assert.h"),
+ pm.install(d.."headers/ctype.h", "%BINDIR%include/ansi/ctype.h"),
+ pm.install(d.."headers/errno.h", "%BINDIR%include/ansi/errno.h"),
+ pm.install(d.."headers/float.h", "%BINDIR%include/ansi/float.h"),
+ pm.install(d.."headers/limits.h", "%BINDIR%include/ansi/limits.h"),
+ pm.install(d.."headers/math.h", "%BINDIR%include/ansi/math.h"),
+ pm.install(d.."headers/setjmp.h", "%BINDIR%include/ansi/setjmp.h"),
+ pm.install(d.."headers/signal.h", "%BINDIR%include/ansi/signal.h"),
+ pm.install(d.."headers/stdarg.h", "%BINDIR%include/ansi/stdarg.h"),
+ pm.install(d.."headers/stddef.h", "%BINDIR%include/ansi/stddef.h"),
+ pm.install(d.."headers/stdio.h", "%BINDIR%include/ansi/stdio.h"),
+ pm.install(d.."headers/stdlib.h", "%BINDIR%include/ansi/stdlib.h"),
+ pm.install(d.."headers/string.h", "%BINDIR%include/ansi/string.h"),
+ pm.install(d.."headers/time.h", "%BINDIR%include/ansi/time.h"),
+ pm.install(d.."headers/iso646.h", "%BINDIR%include/ansi/iso646.h"),
+ pm.install(d.."headers/stdbool.h", "%BINDIR%include/ansi/stdbool.h"),
+ pm.install(d.."headers/locale.h", "%BINDIR%include/ansi/locale.h"),
+ pm.install(d.."headers/tgmath.h", "%BINDIR%include/ansi/tgmath.h"),
}
}