summaryrefslogtreecommitdiff
path: root/README
blob: f7e8f64e954c1f7d489b8aed95a1bc44eee9ec1e (plain)
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
                     Colm.Net Suite of Programs
                     ==========================

This package contains the Colm Programming Language, Ragel State Machine
Compiler 7.0+, and supporting libraries.

DEPENDENCIES
============

This package has no external dependencies, other than usual autotools and C/C++
compiler programs.

For the program:

    make libtool gcc g++ autoconf automake

For the docucumentation:

 * asciidoc
 * fig2dev


BUILDING
========

Colm is built in the usual autotool way:

$ ./autogen
$ ./configure
$ make
$ make install

RUN-TIME DEPENDENCIES
=====================

The colm program depends on GCC at runtime. It produces a C program as output,
then compiles and links it with a runtime library. The compiled program depends
on the colm library.

Notes on RUNNING
================

To find the includes and the runtime library to pass to GCC, colm looks at
argv[0] to decide if it is running out of the source tree. If it is, then the
compile and link flags are derived from argv[0]. Otherwise, it uses the install
location (prefix) to construct the flags.

SYNTAX HIGHLIGHTING
===================

There are vim syntax definition files colm.vim and ragel.vim