# Building jAsm
jAsm currently compiles with CMake for Linux.
# Command line build with CMake in Linux
To build with CMake you need CMake 3.5, Clang, Mercurial and python3 installed. On Debian, Ubuntu or Mint systems you can use apt-get to fetch the dependencies like this.
sudo apt-get install cmake clang mercurial python3
Clone the repository into a directory called 'jasm' and build it like this.
hg clone https://hg.sr.ht/~bjonte/jasm
cmake -DCMAKE_BUILD_TYPE=Release ..
sudo make install
More details about cross compiling for Windows is in the documentation.
# Running Unit Tests
Run the unit tests using the python script `unit_test_run.py`. It runs under Python 3.
Add a unit test by placing a file called `test_something.asm` that produce the correct output in the unit_tests directory and run unit_test_generate.py. This will add the generated output in unit_tests/results and be considered the correct output for then on.
# Version Information
When building a release you must run the python script `increase_revision.py` to inject the current revision and hash into the source code. This change should never be submitted! Building with CMake run this automatically.
There are also small scripts to update the major and minor revisions. These changes should be submitted.