thoni56 / ToolMaker

A legacy, but powerful toolset for building compilers and tools
3 stars 1 forks source link
compiler-construction macro-processor parser-generator scanner-generator

ToolMaker

What it is

ToolMaker is a set of tools to make compilers, analyzers and similar tools. It creates a lexcial scanner (like lex et.al) and a parser (like yacc et.al). But in addition it can also generate a lister (modules handling input text and error messages). It is also build on top of a powerful macro tool, imp, similar in function to m4 and others.

License

This is a project which contains original work by Kenth Ericsson, Jerker Willander and others at SoftLab AB Sweden, including myself. SoftLab was sold to Rational Software in 1997 which then resold that to Ericsson some years later.

Although this would strictly be copyrighted material, but considering

I'm making this repo of resurrected sources available, mostly for my own use. Please consult me before creating forks.

Current state

All licensing is removed, but the source for the licensing mechanism is still here, but not cleaned or compiled recently. The same goes for the toolmake utility, which creates an initial set of files for your new ToolMaker-based project.

Otherwise the source compiles on multipe platfoms (Linux, Cygwin, ...) and all tests run (using Jregr).

Acknowledgement

We, who where at SoftLab at that time, where all involved in this in some way. Special thanks to

Building

To build you need gcc with binutils for 32-bit. ToolMaker cannot currently be built for 64-bit architectures. If you want to run tests you need Jregr.

For building the documentation, see docs-src/README.md.