From 45919eababb642c0df12b8b5634c91e1058bd28c Mon Sep 17 00:00:00 2001 From: Sergio Valor Date: Sun, 10 Aug 2025 22:35:34 +0200 Subject: [PATCH] actualitzat makefile per a macos director fix: nom de variable en MACOS_BUNDLE actualitzat info.plist --- Makefile | 4 +- release/Info.plist | 2 +- .../share/cmake/SDL3/SDL3Config.cmake | 166 ------------------ .../share/cmake/SDL3/SDL3ConfigVersion.cmake | 76 -------- source/director.cpp | 2 +- 5 files changed, 4 insertions(+), 246 deletions(-) delete mode 100644 release/frameworks/share/cmake/SDL3/SDL3Config.cmake delete mode 100644 release/frameworks/share/cmake/SDL3/SDL3ConfigVersion.cmake diff --git a/Makefile b/Makefile index 9668805..2159274 100644 --- a/Makefile +++ b/Makefile @@ -179,8 +179,8 @@ macos_release: # Copia carpetas y ficheros cp -R data "$(RELEASE_FOLDER)/$(APP_NAME).app/Contents/Resources" - cp -R release/SDL3.framework "$(RELEASE_FOLDER)/$(APP_NAME).app/Contents/Frameworks" - cp -R release/SDL3.framework Frameworks + cp -R release/frameworks/SDL3.xcframework "$(RELEASE_FOLDER)/$(APP_NAME).app/Contents/Frameworks" + cp -R release/frameworks/SDL3.xcframework Frameworks cp release/*.icns "$(RELEASE_FOLDER)/$(APP_NAME).app/Contents/Resources" cp release/Info.plist "$(RELEASE_FOLDER)/$(APP_NAME).app/Contents" cp LICENSE "$(RELEASE_FOLDER)" diff --git a/release/Info.plist b/release/Info.plist index 0c34ed9..d9e9f46 100644 --- a/release/Info.plist +++ b/release/Info.plist @@ -33,7 +33,7 @@ NSHighResolutionCapable NSHumanReadableCopyright - Copyright 2023 JailDesigner + Copyright 2025 JailDesigner NSPrincipalClass NSApplication SUPublicDSAKeyFile diff --git a/release/frameworks/share/cmake/SDL3/SDL3Config.cmake b/release/frameworks/share/cmake/SDL3/SDL3Config.cmake deleted file mode 100644 index b60ef0a..0000000 --- a/release/frameworks/share/cmake/SDL3/SDL3Config.cmake +++ /dev/null @@ -1,166 +0,0 @@ -# SDL3 CMake configuration file: -# This file is meant to be placed in share/cmake/SDL3, next to SDL3.xcframework - -# INTERFACE_LINK_OPTIONS needs CMake 3.12 -cmake_minimum_required(VERSION 3.12) - -include(FeatureSummary) -set_package_properties(SDL3 PROPERTIES - URL "https://www.libsdl.org/" - DESCRIPTION "low level access to audio, keyboard, mouse, joystick, and graphics hardware" -) - -# Copied from `configure_package_config_file` -macro(set_and_check _var _file) - set(${_var} "${_file}") - if(NOT EXISTS "${_file}") - message(FATAL_ERROR "File or directory ${_file} referenced by variable ${_var} does not exist !") - endif() -endmacro() - -# Copied from `configure_package_config_file` -macro(check_required_components _NAME) - foreach(comp ${${_NAME}_FIND_COMPONENTS}) - if(NOT ${_NAME}_${comp}_FOUND) - if(${_NAME}_FIND_REQUIRED_${comp}) - set(${_NAME}_FOUND FALSE) - endif() - endif() - endforeach() -endmacro() - -set(SDL3_FOUND TRUE) - -macro(_check_target_is_simulator) - set(src [===[ - #include - #if defined(TARGET_OS_SIMULATOR) && TARGET_OS_SIMULATOR - int target_is_simulator; - #endif - int main(int argc, char *argv[]) { return target_is_simulator; } - ]===]) - if(CMAKE_C_COMPILER) - include(CheckCSourceCompiles) - check_c_source_compiles("${src}" SDL_TARGET_IS_SIMULATOR) - elseif(CMAKE_CXX_COMPILER) - include(CheckCXXSourceCompiles) - check_cxx_source_compiles("${src}" SDL_TARGET_IS_SIMULATOR) - else() - enable_language(C) - include(CheckCSourceCompiles) - check_c_source_compiles("${src}" SDL_TARGET_IS_SIMULATOR) - endif() -endmacro() - -if(CMAKE_SYSTEM_NAME STREQUAL "iOS") - _check_target_is_simulator() - if(SDL_TARGET_IS_SIMULATOR) - set(_xcfw_target_subdir "ios-arm64_x86_64-simulator") - else() - set(_xcfw_target_subdir "ios-arm64") - endif() -elseif(CMAKE_SYSTEM_NAME STREQUAL "tvOS") - _check_target_is_simulator() - if(SDL_TARGET_IS_SIMULATOR) - set(_xcfw_target_subdir "tvos-arm64_x86_64-simulator") - else() - set(_xcfw_target_subdir "tvos-arm64") - endif() -elseif(CMAKE_SYSTEM_NAME STREQUAL "Darwin") - set(_xcfw_target_subdir "macos-arm64_x86_64") -else() - message(WARNING "Unsupported Apple platform (${CMAKE_SYSTEM_NAME}) and broken SDL3ConfigVersion.cmake") - set(SDL3_FOUND FALSE) - return() -endif() - -# Compute the installation prefix relative to this file. -get_filename_component(_sdl3_xcframework_parent_path "${CMAKE_CURRENT_LIST_DIR}" REALPATH) # /share/cmake/SDL3/ -get_filename_component(_sdl3_xcframework_parent_path "${_sdl3_xcframework_parent_path}" REALPATH) # /share/cmake/SDL3/ -get_filename_component(_sdl3_xcframework_parent_path "${_sdl3_xcframework_parent_path}" PATH) # /share/cmake -get_filename_component(_sdl3_xcframework_parent_path "${_sdl3_xcframework_parent_path}" PATH) # /share -get_filename_component(_sdl3_xcframework_parent_path "${_sdl3_xcframework_parent_path}" PATH) # / -set_and_check(_sdl3_xcframework_path "${_sdl3_xcframework_parent_path}/SDL3.xcframework") # /SDL3.xcframework -set_and_check(_sdl3_framework_parent_path "${_sdl3_xcframework_path}/${_xcfw_target_subdir}") # /SDL3.xcframework/macos-arm64_x86_64 -set_and_check(_sdl3_framework_path "${_sdl3_framework_parent_path}/SDL3.framework") # /SDL3.xcframework/macos-arm64_x86_64/SDL3.framework - - -# All targets are created, even when some might not be requested though COMPONENTS. -# This is done for compatibility with CMake generated SDL3-target.cmake files. - -if(NOT TARGET SDL3::Headers) - add_library(SDL3::Headers INTERFACE IMPORTED) - set_target_properties(SDL3::Headers - PROPERTIES - INTERFACE_COMPILE_OPTIONS "-F${_sdl3_framework_parent_path}" - ) -endif() -set(SDL3_Headers_FOUND TRUE) - -if(NOT TARGET SDL3::SDL3-shared) - add_library(SDL3::SDL3-shared SHARED IMPORTED) - # CMake does not automatically add RPATHS when using xcframeworks - # https://gitlab.kitware.com/cmake/cmake/-/issues/25998 - if(0) # if(CMAKE_VERSION GREATER_EQUAL "3.28") - set_target_properties(SDL3::SDL3-shared - PROPERTIES - FRAMEWORK "TRUE" - IMPORTED_LOCATION "${_sdl3_xcframework_path}" - INTERFACE_LINK_LIBRARIES "SDL3::Headers" - ) - else() - set_target_properties(SDL3::SDL3-shared - PROPERTIES - FRAMEWORK "TRUE" - IMPORTED_LOCATION "${_sdl3_framework_path}/SDL3" - INTERFACE_LINK_LIBRARIES "SDL3::Headers" - ) - endif() - set_target_properties(SDL3::SDL3-shared - PROPERTIES - COMPATIBLE_INTERFACE_BOOL "SDL3_SHARED" - INTERFACE_SDL3_SHARED "ON" - COMPATIBLE_INTERFACE_STRING "SDL_VERSION" - INTERFACE_SDL_VERSION "SDL3" - ) -endif() -set(SDL3_SDL3-shared_FOUND TRUE) - -set(SDL3_SDL3-static FALSE) - -set(SDL3_SDL3_test FALSE) - -unset(_sdl3_xcframework_parent_path) -unset(_sdl3_xcframework_path) -unset(_sdl3_framework_parent_path) -unset(_sdl3_framework_path) -unset(_sdl3_include_dirs) - -if(SDL3_SDL3-shared_FOUND) - set(SDL3_SDL3_FOUND TRUE) -endif() - -function(_sdl_create_target_alias_compat NEW_TARGET TARGET) - if(CMAKE_VERSION VERSION_LESS "3.18") - # Aliasing local targets is not supported on CMake < 3.18, so make it global. - add_library(${NEW_TARGET} INTERFACE IMPORTED) - set_target_properties(${NEW_TARGET} PROPERTIES INTERFACE_LINK_LIBRARIES "${TARGET}") - else() - add_library(${NEW_TARGET} ALIAS ${TARGET}) - endif() -endfunction() - -# Make sure SDL3::SDL3 always exists -if(NOT TARGET SDL3::SDL3) - if(TARGET SDL3::SDL3-shared) - _sdl_create_target_alias_compat(SDL3::SDL3 SDL3::SDL3-shared) - endif() -endif() - -check_required_components(SDL3) - -set(SDL3_LIBRARIES SDL3::SDL3) -set(SDL3_STATIC_LIBRARIES SDL3::SDL3-static) -set(SDL3_STATIC_PRIVATE_LIBS) - -set(SDL3TEST_LIBRARY SDL3::SDL3_test) diff --git a/release/frameworks/share/cmake/SDL3/SDL3ConfigVersion.cmake b/release/frameworks/share/cmake/SDL3/SDL3ConfigVersion.cmake deleted file mode 100644 index 6c833a7..0000000 --- a/release/frameworks/share/cmake/SDL3/SDL3ConfigVersion.cmake +++ /dev/null @@ -1,76 +0,0 @@ -# based on the files generated by CMake's write_basic_package_version_file - -# SDL CMake version configuration file: -# This file is meant to be placed in share/cmake/SDL3, next to SDL3.xcframework - -cmake_minimum_required(VERSION 3.12) - -get_filename_component(_sdl3_xcframework_parent_path "${CMAKE_CURRENT_LIST_DIR}" REALPATH) # /share/cmake/SDL3/ -get_filename_component(_sdl3_xcframework_parent_path "${_sdl3_xcframework_parent_path}" REALPATH) # /share/cmake/SDL3/ -get_filename_component(_sdl3_xcframework_parent_path "${_sdl3_xcframework_parent_path}" PATH) # /share/cmake -get_filename_component(_sdl3_xcframework_parent_path "${_sdl3_xcframework_parent_path}" PATH) # /share -get_filename_component(_sdl3_xcframework_parent_path "${_sdl3_xcframework_parent_path}" PATH) # / -set(_sdl3_xcframework "${_sdl3_xcframework_parent_path}/SDL3.xcframework") # /SDL3.xcframework -set(_sdl3_framework "${_sdl3_xcframework}/macos-arm64_x86_64/SDL3.framework") # /SDL3.xcframework/macos-arm64_x86_64/SDL3.framework -set(_sdl3_version_h "${_sdl3_framework}/Headers/SDL_version.h") # /SDL3.xcframework/macos-arm64_x86_64/SDL3.framework/Headers/SDL_version.h - -if(NOT EXISTS "${_sdl3_version_h}") - message(AUTHOR_WARNING "Cannot not find ${_sdl3_framework}. This script is meant to be placed in share/cmake/SDL3, next to SDL3.xcframework") - return() -endif() - -file(READ "${_sdl3_version_h}" _sdl_version_h) - -unset(_sdl3_xcframework_parent_path) -unset(_sdl3_framework) -unset(_sdl3_xcframework) -unset(_sdl3_version_h) - -string(REGEX MATCH "#define[ \t]+SDL_MAJOR_VERSION[ \t]+([0-9]+)" _sdl_major_re "${_sdl_version_h}") -set(_sdl_major "${CMAKE_MATCH_1}") -string(REGEX MATCH "#define[ \t]+SDL_MINOR_VERSION[ \t]+([0-9]+)" _sdl_minor_re "${_sdl_version_h}") -set(_sdl_minor "${CMAKE_MATCH_1}") -string(REGEX MATCH "#define[ \t]+SDL_MICRO_VERSION[ \t]+([0-9]+)" _sdl_micro_re "${_sdl_version_h}") -set(_sdl_micro "${CMAKE_MATCH_1}") -if(_sdl_major_re AND _sdl_minor_re AND _sdl_micro_re) - set(PACKAGE_VERSION "${_sdl_major}.${_sdl_minor}.${_sdl_micro}") -else() - message(AUTHOR_WARNING "Could not extract version from SDL_version.h.") - return() -endif() - -unset(_sdl_major_re) -unset(_sdl_major) -unset(_sdl_minor_re) -unset(_sdl_minor) -unset(_sdl_micro_re) -unset(_sdl_micro) - -if(PACKAGE_FIND_VERSION_RANGE) - # Package version must be in the requested version range - if ((PACKAGE_FIND_VERSION_RANGE_MIN STREQUAL "INCLUDE" AND PACKAGE_VERSION VERSION_LESS PACKAGE_FIND_VERSION_MIN) - OR ((PACKAGE_FIND_VERSION_RANGE_MAX STREQUAL "INCLUDE" AND PACKAGE_VERSION VERSION_GREATER PACKAGE_FIND_VERSION_MAX) - OR (PACKAGE_FIND_VERSION_RANGE_MAX STREQUAL "EXCLUDE" AND PACKAGE_VERSION VERSION_GREATER_EQUAL PACKAGE_FIND_VERSION_MAX))) - set(PACKAGE_VERSION_COMPATIBLE FALSE) - else() - set(PACKAGE_VERSION_COMPATIBLE TRUE) - endif() -else() - if(PACKAGE_VERSION VERSION_LESS PACKAGE_FIND_VERSION) - set(PACKAGE_VERSION_COMPATIBLE FALSE) - else() - set(PACKAGE_VERSION_COMPATIBLE TRUE) - if(PACKAGE_FIND_VERSION STREQUAL PACKAGE_VERSION) - set(PACKAGE_VERSION_EXACT TRUE) - endif() - endif() -endif() - -# The SDL3.xcframework only contains 64-bit archives -if(NOT "${CMAKE_SIZEOF_VOID_P}" EQUAL "8") - set(PACKAGE_VERSION_UNSUITABLE TRUE) -endif() - -if(NOT CMAKE_SYSTEM_NAME MATCHES "^(Darwin|iOS|tvOS)$") - set(PACKAGE_VERSION_UNSUITABLE TRUE) -endif() diff --git a/source/director.cpp b/source/director.cpp index 27b117f..5133086 100644 --- a/source/director.cpp +++ b/source/director.cpp @@ -157,7 +157,7 @@ void Director::loadScoreFile() { // Carga el indice de ficheros desde un fichero void Director::loadAssets() { #ifdef MACOS_BUNDLE - const std::string prefix = "/../Resources"; + const std::string PREFIX = "/../Resources"; #else const std::string PREFIX; #endif