This pull request features many changes, related to the organization and code of the RTE. Changes included:
Adds Squirrel, Miniswig (Squirrel wrapper generator) and PhysFS as submodules.
Moves the test suite to its designated folder, instead of bin.
Moves the Brux source code to src, as well as re-organizes it in categories: api, brux, external and squirrel.
Adds a CMake build script, which prepares the included Squirrel and Miniswig modules for compiling, as well as sets up Miniswig to generate an automatic Squirrel wrapper for the Brux API.
Separates the binds code into various files in the new api folder by categories. Those API headers are processed by Miniswig when generating the wrapper.
Inserts copyright headers into each file of the Brux source.
Implements a Windows GitHub Actions workflow to automatically compile Brux for Windows. Uses caching for optimized run time.
Implements a GNU/Linux GitHub Actions workflow (running on Ubuntu 20.04) as well to automatically compile Brux for Linux.
Optional changes that could be made:
Removing the makefile, which does not currently support submodules and Miniswig wrapper generation. [INCLUDED]
Changing the automatic build script to clone/update submodules and utilize CMake. [INCLUDED]
This pull request features many changes, related to the organization and code of the RTE. Changes included:
bin
.src
, as well as re-organizes it in categories:api
,brux
,external
andsquirrel
.api
folder by categories. Those API headers are processed by Miniswig when generating the wrapper.Optional changes that could be made: