build: Add stage0 hex2 test.
[mes.git] / INSTALL
1                                                               -*- org -*-
2 Building and Installing Mes
3
4 * Get it
5
6    git clone https://gitlab.com/janneke/mes
7
8 * Prerequisites
9 ** Guix
10
11     guix environment -l guix.scm     #64 bit + 32bit
12     guix environment --system=i686-linux -l guix.scm #32 bit only
13
14 ** Other GNU/Linux
15 *** [[https://github.com/oriansj/MESCC_Tools][MESCC_Tools]], 0.0 is known to work.
16
17 *** [[https://savannah.gnu.org/projects/nyacc][Nyacc]], 0.78.0 is known to work.
18 Matt Wette's C99 LALR parser.
19
20 *** GNU Gcc, 4.9.3 is known to work.
21 The idea is to drop this requirement, of course.
22
23 *** GNU Guile, version 2.0.12 or is know to work.
24 Guile is not strictly necessary but it is used by the configure script
25 and in development.
26
27 *** GNU Make, version 4.0 is know to work.
28 Not strictly necessary.
29
30 *** /bin/sh, GNU Bash 4.3 is known to work.
31 Let's just say for now that it gets awkward without a shell.
32
33 *** Development (but see [[./guix.scm]])
34
35 *** GNU coreutils
36 *** sed, GNU sed 4.2 is known to work.
37 *** git, 2.10 is known to work.
38 *** Perl, 5.22 is known to work.
39
40 * Build it
41
42    ./configure
43    make
44
45 ** For a quick build, skip running mescc on Mes
46    make MES_SKIP_MES=1
47
48 * Check it
49
50    make check
51
52 ** For a quick check, skip running mescc on Mes
53    make MES_SKIP_MES=1
54
55 * Install it
56
57    make install
58 * Guix it...
59
60    guix package -f guix.scm