The documentation is being hosted on GitHub pages:
It is also available to build from the project. See the docs/README.md file for more information.
master
(0.3.0): The stable branch, which contains the "safest" version to use.development
: The development branch, which contains the latest and greatest features, but may not be stable as it is being actively worked on by developers.
The build process uses CMake. For Windows, you will need Visual Studio installed with Visual C++ support. For Linux, you will need build tools installed like gcc and make.
mkdir build
cd build
cmake -DCOMPILER_32=ON ..
cmake --build . --config Debug
cmake --build . --config Release
If you have Visual Studio, this will generate a Visual Studio solution. You can either run CMake's "--build" argument as above, or you can open the solution yourself and build it from Visual Studio directly.
If you choose to run Decision directly from Visual Studio, you should set the decision project to be the start-up project as well. Right-click on the decision project in the solution explorer, and click "Set as StartUp Project".
mkdir build
cd build
cmake -DCOMPILER_32=OFF -A x64 ..
cmake --build . --config Debug
cmake --build . --config Release
By default, CMake will not generate a x64 version. Because of this, you need to provide an extra argument to specify you want to build for the x64 architecture.
Same as above, if you choose to run Decision from Visual Studio, you should set the decision project to be the start-up project as well. Right-click on the decision project in the solution explorer, and click "Set as StartUp Project".
mkdir build && cd build
cmake ..
make
sudo make install
By default, CMake installs Decision with a prefix of /usr/local
. If you want
to change the prefix, add this argument when creating the build files:
cmake -DCMAKE_INSTALL_PREFIX=/usr ..
If you want the interpreter and compiler to store data in 32-bits, add this argument:
cmake -DCOMPILER_32=ON ..
NOTE: This option will only work properly on 32-bit architectures! Applying this option on 64-bit architectures will not work since it will not be able to store full 64-bit pointers.
By default, a static library for the compiler is generated (.lib/.a). If you want to generate a shared library instead (.dll/.so), add this argument:
cmake -DCOMPILER_SHARED=ON ..
If you want to test Decision's C API, add this argument:
cmake -DCOMPILER_C_TESTS=ON ..
Note that this option will generate a lot more executables than usual. See tests/README.md for more details.
Decision Copyright (C) 2019-2020 Benjamin Beddows
This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.