40 lines
1.0 KiB
CMake
40 lines
1.0 KiB
CMake
|
|
cmake_minimum_required(VERSION 4.0)
|
|
project(factorygame C)
|
|
|
|
set(CMAKE_C_STANDARD 23)
|
|
|
|
find_package(PkgConfig REQUIRED)
|
|
pkg_check_modules(SDL2 REQUIRED sdl2)
|
|
|
|
|
|
add_executable(factorygame
|
|
util/font.c
|
|
util/font.h
|
|
util/audio.c
|
|
util/audio.h
|
|
util/util.c
|
|
util/util.h
|
|
items/item.c
|
|
items/item.h
|
|
tiles/tile.c
|
|
tiles/tile.h
|
|
tiles/belt.c
|
|
tiles/belt.h
|
|
main.c
|
|
player/player.c
|
|
player/player.h) # Ensure the target is defined before linking
|
|
|
|
# Define the path to the assets folder
|
|
set(ASSETS_SOURCE_DIR "${CMAKE_SOURCE_DIR}/assets")
|
|
set(ASSETS_BINARY_DIR "${CMAKE_BINARY_DIR}/assets")
|
|
|
|
# Copy assets directory after build
|
|
add_custom_command(TARGET factorygame POST_BUILD
|
|
COMMAND ${CMAKE_COMMAND} -E copy_directory
|
|
"${ASSETS_SOURCE_DIR}" "${ASSETS_BINARY_DIR}"
|
|
COMMENT "Copying assets directory to build output..."
|
|
)
|
|
|
|
|
|
target_link_libraries(factorygame SDL2 SDL2_ttf SDL2_image SDL2_gfx SDL2_mixer SDL2_net m) |