This repository contains the build system and all dependencies required to build Antkeeper, a 3D ant colony simulation game.
Download the Antkeeper superbuild repository and its Git submodules (excluding antkeeper-data
):
git -c submodule."modules/antkeeper-data".update=none clone --recursive https://github.com/antkeeper/antkeeper-superbuild.git .
[!NOTE] The
antkeeper-data
submodule contains proprietary game data and is not publicly available. The game executable can be built without this submodule, but its data package is required to play Antkeeper. You can get a copy of the data package by purchasing Antkeeper at https://antkeeper.com/.
Building for Windows requires CMake and Visual Studio Build Tools.
Run the following commands in the x64 Native Tools Command Prompt
to configure and build a 64-bit Windows release:
cmake -B build\win64 -G "NMake Makefiles" -DCMAKE_BUILD_TYPE=Release
cmake --build build\win64 --config Release
Building for Linux requires CMake, GCC, G++, and GNU Make.
Run the following commands to configure and build a 64-bit Linux release:
cmake -B build/linux64 -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Release
cmake --build build/linux64 --config Release
After building, a standalone version of the application will be located somewhere in the bin
directory according to the build type, build platform, and version string.
The built application can be packaged into a distributable format with the following commands:
cmake --build build\win64 --target dist
or
cmake --build build/linux64 --target dist
The resulting package will be located in the dist
directory.
If any changes have been made to the submodules, commit those first. Each submodule can then be updated to their latest commits with the following command:
git -c submodule."modules/antkeeper-data".update=none submodule update --recursive --remote
Antkeeper superbuild is licensed under the GNU General Public License, version 3. For more information, see LICENSE.md.
Name | Author(s) | License | File(s) |
---|---|---|---|
cxxopts | Jarryd Beck | MIT | cxxopts.hpp |
dr_wav | David Reid | Public Domain (Unlicense) | dr_wav.h |
Easing Functions (Equations) | Robert Penner | MIT | ease.hpp |
EnTT | Michele Caini | MIT | entt/* |
FreeType | David Turner, Robert Wilhelm, and Werner Lemberg | GPL-2.0 / FTL | freetype/* |
khrplatform.h | The Khronos Group Inc. | MIT | khrplatform.h |
OpenGL loader generated by glad | David Herberth | Public Domain / WTFPL / CC0 | gl.h, gl.c |
PhysicsFS | Ryan C. Gordon | Zlib | physfs/* |
JSON for Modern C++ | Niels Lohmann | MIT | json.hpp |
OpenAL Soft | LGPL-2.0 | openal-soft/* | |
Simple DirectMedia Layer | Sam Lantinga | Zlib | SDL2/* |
stb_image | Sean Barrett | MIT / Public Domain | stb_image.h |
stb_image_write | Sean Barrett | MIT / Public Domain | stb_image_write.h |
TinyEXR | Syoyo Fujita | BSD-3-Clause | tinyexr.h |