cmake_minimum_required(VERSION 3.21) project(Tahgibu VERSION 2.0.0 DESCRIPTION "Editor de animación 2D" LANGUAGES C) set(CMAKE_C_STANDARD 11) set(CMAKE_C_STANDARD_REQUIRED ON) set(CMAKE_C_EXTENSIONS OFF) if(NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CONFIGURATION_TYPES) set(CMAKE_BUILD_TYPE Release CACHE STRING "Tipo de compilación" FORCE) endif() option(TAHGIBU_BUILD_APP "Construir la aplicación gráfica (necesita raylib)" ON) option(TAHGIBU_BUILD_TESTS "Construir las pruebas" ON) option(TAHGIBU_BUILD_EXAMPLES "Construir la extensión nativa de ejemplo" ON) option(TAHGIBU_WITH_LUA "Incluir soporte de extensiones Lua (necesita Lua 5.4)" OFF) option(TAHGIBU_FETCH_DEPS "Descargar raylib si no está instalada (necesita Internet)" OFF) option(TAHGIBU_SANITIZE "Compilar con AddressSanitizer y UBSan (solo gcc/clang)" OFF) option(TAHGIBU_WARNINGS_AS_ERRORS "Tratar los avisos como errores" OFF) option(TAHGIBU_UI_SMOKE "Prueba de la interfaz con un raylib falso (desarrollo)" OFF) list(APPEND CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake) include(CompilerOptions) include(PlatformConfig) include(Dependencies) include(BuildTargets) message(STATUS "Tahgibu ${PROJECT_VERSION}: app=${TAHGIBU_BUILD_APP} tests=${TAHGIBU_BUILD_TESTS} lua=${TAHGIBU_WITH_LUA}") # Paquetes (cpack): tar.gz y zip del ejecutable instalado. Sin probar todavía: ver docs/STATUS.md. set(CPACK_PACKAGE_NAME "Tahgibu") set(CPACK_PACKAGE_VERSION ${PROJECT_VERSION}) set(CPACK_PACKAGE_VENDOR "Autores de Tahgibu") set(CPACK_RESOURCE_FILE_LICENSE ${CMAKE_SOURCE_DIR}/LICENSE) set(CPACK_GENERATOR "TGZ;ZIP") include(CPack)