CMake based build system.

Some people might find this handly
This commit is contained in:
ASDF
2017-07-22 19:45:36 -04:00
committed by Benjamin N. summerton
parent 0fc1323c80
commit e173db19f7
14 changed files with 416 additions and 2 deletions

33
games/CMakeLists.txt Normal file
View File

@ -0,0 +1,33 @@
# Setup the project and settings
project(games)
include("../utils.cmake")
# Make sure raylib has been built
# TODO `build` directory should maybe be something else...
# TODO place somewhere else?
include_directories("../build/release")
# Get the source toegher
file(GLOB sources *.c)
# Do each game
foreach(game_source ${sources})
# Create the basename for the game
get_filename_component(game_name ${game_source} NAME)
string(REPLACE ".c" "" game_name ${game_name})
# Setup the game
add_executable(${game_name} ${game_source})
# Link the libraries
link_libraries_to_executable(${game_name})
endforeach()
# Do the games with subdirectories
add_subdirectory(drturtle)
add_subdirectory(just_do)
add_subdirectory(koala_seasons)
add_subdirectory(light_my_ritual)
add_subdirectory(skully_escape)
add_subdirectory(wave_collector)

View File

@ -0,0 +1,18 @@
# Setup the project and settings
project(drturtle)
include("../../utils.cmake")
# Make sure raylib has been built
# TODO `build` directory should maybe be something else...
include_directories("../../build/release")
# Executable & linking
add_executable(drturtle 06_drturtle_final.c)
link_libraries_to_executable(drturtle)
# Resources
# Copy all of the resource files to the destination
file(COPY "resources/" DESTINATION "resources/")

View File

@ -0,0 +1,21 @@
# Setup the project and settings
project(just_do)
include("../../utils.cmake")
# Make sure raylib has been built
# TODO `build` directory should maybe be something else...
include_directories("../../build/release")
# Grab the screens
file(GLOB screen_sources "screens/*.c")
# Executable & linking
add_executable(just_do just_do.c ${screen_sources})
link_libraries_to_executable(just_do)
# Resources
# Copy all of the resource files to the destination
file(COPY "resources/" DESTINATION "resources/")

View File

@ -0,0 +1,21 @@
# Setup the project and settings
project(koala_seasons)
include("../../utils.cmake")
# Make sure raylib has been built
# TODO `build` directory should maybe be something else...
include_directories("../../build/release")
# Grab the screens
file(GLOB screen_sources "screens/*.c")
# Executable & linking
add_executable(koala_seasons koala_seasons.c ${screen_sources})
link_libraries_to_executable(koala_seasons)
# Resources
# Copy all of the resource files to the destination
file(COPY "resources/" DESTINATION "resources/")

View File

@ -0,0 +1,21 @@
# Setup the project and settings
project(light_my_ritual)
include("../../utils.cmake")
# Make sure raylib has been built
# TODO `build` directory should maybe be something else...
include_directories("../../build/release")
# Grab the screens
file(GLOB screen_sources "screens/*.c")
# Executable & linking
add_executable(light_my_ritual light_my_ritual.c ${screen_sources})
link_libraries_to_executable(light_my_ritual)
# Resources
# Copy all of the resource files to the destination
file(COPY "resources/" DESTINATION "resources/")

View File

@ -0,0 +1,21 @@
# Setup the project and settings
project(skully_escape)
include("../../utils.cmake")
# Make sure raylib has been built
# TODO `build` directory should maybe be something else...
include_directories("../../build/release")
# Grab the screens
file(GLOB screen_sources "screens/*.c")
# Executable & linking
add_executable(skully_escape skully_escape.c player.c monster.c ${screen_sources})
link_libraries_to_executable(skully_escape)
# Resources
# Copy all of the resource files to the destination
file(COPY "resources/" DESTINATION "resources/")

View File

@ -0,0 +1,21 @@
# Setup the project and settings
project(wave_collector)
include("../../utils.cmake")
# Make sure raylib has been built
# TODO `build` directory should maybe be something else...
include_directories("../../build/release")
# Grab the screens
file(GLOB screen_sources "screens/*.c")
# Executable & linking
add_executable(wave_collector wave_collector.c ${screen_sources})
link_libraries_to_executable(wave_collector)
# Resources
# Copy all of the resource files to the destination
file(COPY "resources/" DESTINATION "resources/")