ec7d9f5d57
* GNUmakefile: Use GNU style lower case directory configure variable naming. * HACKING: Likewise. * INSTALL: Likewise. * build-aux/build-cc.sh: Likewise. * build-aux/build-cc32.sh: Likewise. * build-aux/cc-mes.sh: Likewise. * build-aux/cc.sh: Likewise. * build-aux/cc32-mes.sh: Likewise. * build-aux/export.make: Likewise. * build-aux/setup-mes.sh: Likewise. * build.sh: Likewise. * check.sh: Likewise. * configure: Likewise. * doc/mes.texi: Likewise. * install.sh: Likewise. * scripts/mescc: Likewise.
65 lines
1.7 KiB
Plaintext
65 lines
1.7 KiB
Plaintext
-*- org -*-
|
|
Building and Installing Mes
|
|
|
|
Mes can be built in two modes: as a regulare package build or as
|
|
a bootstrap package.
|
|
|
|
After bootstrapping Mes, it can be used to bootstrap TinyCC (tcc) in a
|
|
similar way.
|
|
|
|
* Get it
|
|
git clone https://gitlab.com/janneke/mes
|
|
|
|
* Regular build
|
|
** Prerequisites
|
|
*** Guix
|
|
guix environment -l guix.scm #64 bit + 32bit
|
|
guix environment --system=i686-linux -l guix.scm #32 bit only
|
|
|
|
*** Other GNU/Linux
|
|
- [[https://github.com/oriansj/mescc-tools][mescc-tools]], 0.4 is known to work.
|
|
- [[https://savannah.gnu.org/projects/nyacc][Nyacc]], [[https://gitlab.com/janneke/nyacc][patched Nyacc]] 0.80.42 is known to work.
|
|
- GNU Gcc, 4.9.3 is known to work.
|
|
- GNU Guile, version 2.0.12 or is know to work.
|
|
- SH, /bin/sh, GNU Bash 4.3 is known to work.
|
|
- GNU coreutils
|
|
- sed, GNU sed 4.2 is known to work.
|
|
- git, 2.10 is known to work.
|
|
- Perl, 5.22 is known to work.
|
|
|
|
** Build it
|
|
./configure
|
|
make
|
|
|
|
** Check it
|
|
make check
|
|
|
|
** Install it
|
|
make install
|
|
|
|
* Guix it
|
|
guix package -f guix.scm
|
|
|
|
* Bootstrap build
|
|
|
|
The bootstrap build is being prototyped in GuixSD, see
|
|
https://gitlab.com/janneke/guix/blob/wip-bootstrap/gnu/packages/mes.scm
|
|
|
|
** Prerequisites
|
|
- [[https://github.com/oriansj/mescc-tools][mescc-tools]], 0.4 is known to work.
|
|
- [[https://savannah.gnu.org/projects/nyacc][Nyacc]], [[https://gitlab.com/janneke/nyacc][patched Nyacc]] 0.80.42 is known to work.
|
|
- [[https://github.com/oriansj/mescc-tools][mes-seed]], 0.15 is known to work.
|
|
|
|
** Build it
|
|
<setup environment, e.g. prefix, MES_SEED>
|
|
|
|
./build.sh
|
|
|
|
** Check it
|
|
|
|
./check.sh
|
|
|
|
** Install it
|
|
|
|
./install.sh
|