mirror of
https://github.com/OpenRCT2/OpenRCT2
synced 2025-12-23 15:52:55 +01:00
minor changes and point at alpha dependencies
This commit is contained in:
@@ -20,12 +20,27 @@ if (CCache_FOUND)
|
||||
endif (CCache_FOUND)
|
||||
|
||||
if (APPLE)
|
||||
set(CMAKE_OSX_ARCHITECTURES "x86_64")
|
||||
set(CMAKE_OSX_DEPLOYMENT_TARGET "10.14")
|
||||
endif ()
|
||||
execute_process(COMMAND /usr/bin/uname -m OUTPUT_VARIABLE SYSTEM_MACOS_ARCH OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||
if (NOT DEFINED ARCH)
|
||||
set(ARCH "${SYSTEM_MACOS_ARCH}")
|
||||
endif ()
|
||||
|
||||
set(CMAKE_OSX_ARCHITECTURES "${ARCH}" CACHE STRING "")
|
||||
|
||||
if("${ARCH}" MATCHES "^x86_64")
|
||||
set(CMAKE_OSX_DEPLOYMENT_TARGET "10.14" CACHE STRING "")
|
||||
elseif("${ARCH}" MATCHES "^arm64")
|
||||
set(CMAKE_OSX_DEPLOYMENT_TARGET "11.0" CACHE STRING "")
|
||||
else()
|
||||
message("Unknown macOS architecture: ${ARCH}. Behavior may be unexpected.")
|
||||
endif()
|
||||
endif ()
|
||||
project(openrct2 CXX)
|
||||
|
||||
if (APPLE)
|
||||
set(CMAKE_SYSTEM_PROCESSOR "${CMAKE_OSX_ARCHITECTURES}" CACHE STRING "")
|
||||
endif ()
|
||||
|
||||
include(cmake/platform.cmake)
|
||||
include(CMakeDependentOption)
|
||||
|
||||
@@ -110,11 +125,16 @@ if (MACOS_USE_DEPENDENCIES)
|
||||
# if we're building on macOS, then we need the dependencies
|
||||
include(cmake/download.cmake)
|
||||
|
||||
set(MACOS_DYLIBS_VERSION "28")
|
||||
set(MACOS_DYLIBS_ZIPFILE "openrct2-libs-v${MACOS_DYLIBS_VERSION}-x64-macos-dylibs.zip")
|
||||
set(MACOS_DYLIBS_SHA1 "29e5480376cf4ac5943f114387e32685204c8b78")
|
||||
# TODO - change back before merging
|
||||
# set(MACOS_DYLIBS_VERSION "28")
|
||||
# set(MACOS_DYLIBS_ZIPFILE "openrct2-libs-v${MACOS_DYLIBS_VERSION}-x64-macos-dylibs.zip")
|
||||
# set(MACOS_DYLIBS_SHA1 "29e5480376cf4ac5943f114387e32685204c8b78")
|
||||
set(MACOS_DYLIBS_VERSION "29-alpha2")
|
||||
set(MACOS_DYLIBS_ZIPFILE "openrct2-libs-v${MACOS_DYLIBS_VERSION}-universal-macos-dylibs.zip")
|
||||
set(MACOS_DYLIBS_SHA1 "bb8899c4120f1add232af7f9ac774ea622e01ad3")
|
||||
set(MACOS_DYLIBS_DIR "${ROOT_DIR}/lib/macos")
|
||||
set(MACOS_DYLIBS_URL "https://github.com/OpenRCT2/Dependencies/releases/download/v${MACOS_DYLIBS_VERSION}/${MACOS_DYLIBS_ZIPFILE}")
|
||||
# set(MACOS_DYLIBS_URL "https://github.com/OpenRCT2/Dependencies/releases/download/v${MACOS_DYLIBS_VERSION}/${MACOS_DYLIBS_ZIPFILE}")
|
||||
set(MACOS_DYLIBS_URL "https://github.com/adam-bloom/Dependencies/releases/download/v${MACOS_DYLIBS_VERSION}/${MACOS_DYLIBS_ZIPFILE}")
|
||||
|
||||
download_openrct2_zip(
|
||||
ZIP_VERSION ${MACOS_DYLIBS_VERSION}
|
||||
@@ -209,6 +229,10 @@ if (NOT DISABLE_DISCORD_RPC)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
# ensure X86 and X86_64 are always initialized
|
||||
# may be overwritten below
|
||||
set(X86 0)
|
||||
set(X86_64 0)
|
||||
# Copied from https://github.com/opencv/opencv/blob/dcdd6af5a856826fe62c95322145731e702e54c5/cmake/OpenCVDetectCXXCompiler.cmake#L63-L70
|
||||
if(MSVC64 OR MINGW64)
|
||||
set(X86_64 1)
|
||||
@@ -368,14 +392,16 @@ endif ()
|
||||
|
||||
|
||||
# g2
|
||||
add_custom_command(
|
||||
OUTPUT g2.dat
|
||||
COMMAND ./openrct2-cli sprite build \"${CMAKE_BINARY_DIR}/g2.dat\" \"${ROOT_DIR}/resources/g2/sprites.json\"
|
||||
WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
|
||||
)
|
||||
add_custom_target(g2 DEPENDS ${PROJECT_NAME} g2.dat)
|
||||
|
||||
project(openrct2 CXX)
|
||||
if (NOT (MACOS_BUNDLE AND (NOT CMAKE_OSX_ARCHITECTURES MATCHES "${SYSTEM_MACOS_ARCH}")))
|
||||
add_custom_command(
|
||||
OUTPUT g2.dat
|
||||
COMMAND ./openrct2-cli sprite build \"${CMAKE_BINARY_DIR}/g2.dat\" \"${ROOT_DIR}/resources/g2/sprites.json\"
|
||||
WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
|
||||
)
|
||||
add_custom_target(g2 DEPENDS ${PROJECT_NAME} g2.dat)
|
||||
else ()
|
||||
message("Skipping g2.dat generation in macOS cross-compile")
|
||||
endif ()
|
||||
|
||||
# Include tests
|
||||
if (WITH_TESTS)
|
||||
|
||||
@@ -35,6 +35,11 @@ file(GLOB_RECURSE OPENRCT2_UI_HEADERS
|
||||
if (APPLE)
|
||||
file(GLOB_RECURSE OPENRCT2_UI_MM_SOURCES "${CMAKE_CURRENT_LIST_DIR}/*.mm")
|
||||
set_source_files_properties(${OPENRCT2_UI_MM_SOURCES} PROPERTIES COMPILE_FLAGS "-x objective-c++ -fmodules")
|
||||
if ("${CMAKE_OSX_ARCHITECTURES}" MATCHES "arm64")
|
||||
# cross-compilation workaround for SDL2
|
||||
set(SDL_DISABLE_IMMINTRIN_H "-DSDL_DISABLE_IMMINTRIN_H")
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${SDL_DISABLE_IMMINTRIN_H}")
|
||||
endif ()
|
||||
endif ()
|
||||
|
||||
# Outputs
|
||||
@@ -141,7 +146,6 @@ if(MACOS_BUNDLE)
|
||||
target_sources(${PROJECT_NAME}
|
||||
PUBLIC ${ROOT_DIR}/distribution/readme.txt
|
||||
PUBLIC ${ROOT_DIR}/distribution/changelog.txt
|
||||
PUBLIC ${CMAKE_BINARY_DIR}/g2.dat
|
||||
PUBLIC ${ROOT_DIR}/resources/mac/openrct2.icns
|
||||
)
|
||||
|
||||
@@ -149,10 +153,16 @@ if(MACOS_BUNDLE)
|
||||
set(BUNDLE_RESOURCES
|
||||
${ROOT_DIR}/distribution/readme.txt
|
||||
${ROOT_DIR}/distribution/changelog.txt
|
||||
${CMAKE_BINARY_DIR}/g2.dat
|
||||
${ROOT_DIR}/resources/mac/openrct2.icns
|
||||
)
|
||||
|
||||
if (CMAKE_OSX_ARCHITECTURES MATCHES "${SYSTEM_MACOS_ARCH}")
|
||||
target_sources(${PROJECT_NAME}
|
||||
PUBLIC ${CMAKE_BINARY_DIR}/g2.dat
|
||||
)
|
||||
list(APPEND BUNDLE_RESOURCES ${CMAKE_BINARY_DIR}/g2.dat)
|
||||
endif()
|
||||
|
||||
|
||||
if(${OPENRCT2_BRANCH} EQUAL master)
|
||||
set(MACOSX_BUNDLE_SHORT_VERSION_STRING "${OPENRCT2_VERSION_TAG}")
|
||||
|
||||
Reference in New Issue
Block a user