🛠️🐜 Antkeeper superbuild with dependencies included https://antkeeper.com
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

77 lines
5.0 KiB

4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
7 months ago
  1. # Antkeeper Superbuild
  2. This repository contains the build system and all dependencies required to build [Antkeeper](https://antkeeper.com/), a 3D ant colony simulation game.
  3. ## Download
  4. Download the Antkeeper superbuild repository and its Git submodules (excluding `antkeeper-data`):
  5. git -c submodule."modules/antkeeper-data".update=none clone --recursive https://github.com/antkeeper/antkeeper-superbuild.git .
  6. > [!NOTE]
  7. > 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/>.
  8. ## Configuration & Building
  9. ### Windows
  10. Building for Windows requires CMake and Visual Studio Build Tools.
  11. Run the following commands in the `x64 Native Tools Command Prompt` to configure and build a 64-bit Windows release:
  12. cmake -B build\win64 -G "NMake Makefiles" -DCMAKE_BUILD_TYPE=Release
  13. cmake --build build\win64 --config Release
  14. ### Linux
  15. Building for Linux requires CMake, GCC, G++, and GNU Make.
  16. Run the following commands to configure and build a 64-bit Linux release:
  17. cmake -B build/linux64 -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Release
  18. cmake --build build/linux64 --config Release
  19. ## Running
  20. 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.
  21. ## Distribution
  22. The built application can be packaged into a distributable format with the following commands:
  23. cmake --build build\win64 --target dist
  24. or
  25. cmake --build build/linux64 --target dist
  26. The resulting package will be located in the `dist` directory.
  27. ## Contributing
  28. 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:
  29. git -c submodule."modules/antkeeper-data".update=none submodule update --recursive --remote
  30. ## License
  31. Antkeeper superbuild is licensed under the GNU General Public License, version 3. For more information, see [LICENSE.md](./LICENSE.md).
  32. ### 3rd-Party Software
  33. | Name | Author(s) | License | File(s) |
  34. | :------------------------------ | :----------------------------------------------- | :-------------------------- | :----------------------------------------------------------- |
  35. | cxxopts | Jarryd Beck | MIT | [cxxopts.hpp](modules/cxxopts/include/cxxopts.hpp) |
  36. | dr_wav | David Reid | Public Domain (Unlicense) | [dr_wav.h](modules/dr_wav/dr_wav.h) |
  37. | Easing Functions (Equations) | Robert Penner | MIT | [ease.hpp](modules/antkeeper-source/src/engine/animation/ease.hpp) |
  38. | EnTT | Michele Caini | MIT | [entt/*](modules/entt/) |
  39. | FreeType | David Turner, Robert Wilhelm, and Werner Lemberg | GPL-2.0 / FTL | [freetype/*](modules/freetype/) |
  40. | khrplatform.h | The Khronos Group Inc. | MIT | [khrplatform.h](modules/glad/include/KHR/khrplatform.h) |
  41. | OpenGL loader generated by glad | David Herberth | Public Domain / WTFPL / CC0 | [gl.h](modules/glad/include/glad/gl.h), [gl.c](modules/glad/src/gl.c) |
  42. | PhysicsFS | Ryan C. Gordon | Zlib | [physfs/*](modules/physfs/) |
  43. | JSON for Modern C++ | Niels Lohmann | MIT | [json.hpp](modules/nlohmann/json.hpp) |
  44. | OpenAL Soft | | LGPL-2.0 | [openal-soft/*](modules/openal-soft/) |
  45. | Simple DirectMedia Layer | Sam Lantinga | Zlib | [SDL2/*](modules/SDL2/) |
  46. | stb_image | Sean Barrett | MIT / Public Domain | [stb_image.h](modules/stb/stb_image.h) |
  47. | stb_image_write | Sean Barrett | MIT / Public Domain | [stb_image_write.h](modules/stb/stb_image_write.h) |
  48. | TinyEXR | Syoyo Fujita | BSD-3-Clause | [tinyexr.h](modules/tinyexr/tinyexr.h) |