aboutsummaryrefslogtreecommitdiff
path: root/CMakeLists.txt
Commit message (Collapse)AuthorAgeFilesLines
* Implement net componentXavier Del Campo Romero2022-09-201-0/+4
|
* Split CMakeLists.txt for srcXavier Del Campo Romero2022-09-161-47/+1
|
* CMakeLists.txt: bump minimum CMake versionXavier Del Campo Romero2022-09-161-1/+2
|
* Use find_package for SDL librariesXavier Del Campo Romero2022-07-231-0/+15
| | | | | | | | | | CMake already distributes FindSDL*.cmake files for SDL and SDL_mixer, which support custom prefixes via environment variables, removing the need for ad-hoc logic in Win9x builds. Also, according to FindSDL.cmake, #include <SDL.h> is the preferred way for portability reasons, instead of #include <SDL/SDL.h>, which is the option that has been used so far.
* Create cdroot directory on common CMakeLists.txtXavier Del Campo Romero2022-07-231-0/+1
|
* CMakeLists.txt: Define rts as a C-only projectXavier Del Campo Romero2022-07-231-1/+1
| | | | | While it is true "extern C" is used on all headers, there is no need for CMake to check the C++ compiler.
* Import SDL_gfxXavier Del Campo Romero2022-07-151-0/+1
|
* Implement main menuXavier Del Campo Romero2022-06-261-1/+2
|
* Revamp gui componentXavier Del Campo Romero2022-06-261-1/+0
| | | | | | | | | | | | | | | | | | | | `gui` was tighly coupled to game logic, and could not be extended for other purposes. Therefore, a generic GUI implementation, loosely inspired by well-known GUI frameworks such as GTK, is now provided, with the following properties: - Does not depend on dynamic or static memory allocation, only automatic (i.e., stack) memory allocation required. - Portable among existing implementations. - Simple to extend. - Tiny memory footprint. `gui` is now composed by GUI elements that can be chained to form a tree structure. This is useful e.g.: to calculate X/Y coordinates for a given GUI element given its parent(s). This commit also refactors the older implementation, moving game-specific logic into `player` and making use of the new component.
* Deprecate <TARGET>_BUILD in favor of CMAKE_TOOLCHAIN_FILEXavier Del Campo Romero2022-06-191-17/+8
|
* Split peripheral-related logic into its own componentXavier Del Campo Romero2022-06-121-0/+1
| | | | | | | | | | | This has several advantages: - `camera` no longer needs to define public functions for each peripheral type. - Peripheral-related is now no longer tighly coupled to human_player, so peripheral logic can be reused elsewhere e.g.: on menus. - Makes camera_update_touch consistent compared to equivalent functions, since now `pan` has now been moved to `camera` (as it should be).
* CMakeLists.txt: limit libraries linked to by ${PROJECT_NAME}Xavier Del Campo Romero2022-06-121-1/+2
| | | | | Old behaviour was linking to all components, but main.c currently only needs a few of them.
* Implement button componentXavier Del Campo Romero2022-06-111-0/+1
|
* CMakeLists.txt: assume native build by defaultXavier Del Campo Romero2022-06-081-5/+4
| | | | | | | | | This has been decided to make the de-facto standard CMake build process (shown below) possible. $ mkdir build $ cd build/ $ cmake ..
* CMakeLists.txt: build host tools as ExternalProjectXavier Del Campo Romero2022-06-081-0/+7
|
* CMakeLists.txt: move target-specific logic awayXavier Del Campo Romero2022-06-071-7/+2
|
* Split CMakeLists.txt into platform-specific *.cmakeXavier Del Campo Romero2022-05-241-83/+5
|
* Import fixmathXavier Del Campo Romero2022-03-301-5/+1
|
* Add support for keyboard and mouseXavier Del Campo Romero2022-03-301-0/+2
|
* Add metadata header to media filesXavier Del Campo Romero2022-03-301-0/+1
| | | | | | | | | | The following properties are supported: - Sound: "loop". Must be either 0 or 1 - Images: "transparent". Must be either 0 or 1 These headers are only used for non-PS1 builds, since .TIM and .VAG files do already implement such information.
* Copy src/system.cnf to cdroot on PS1 buildsXavier Del Campo Romero2022-03-301-5/+1
|
* Strip debug info for Win9x buildsXavier Del Campo Romero2022-03-301-0/+7
|
* Set common cdroot path to all platformsXavier Del Campo Romero2022-03-301-3/+1
|
* Add project source codeXavier Del Campo Romero2022-03-301-0/+161