|
@@ -309,8 +309,17 @@ endif (WIN32)
|
|
|
|
|
|
# Prepare OSX Plist
|
|
# Prepare OSX Plist
|
|
if (APPLE)
|
|
if (APPLE)
|
|
- set(TORQUE_SOURCE_FILES ${TORQUE_SOURCE_FILES} ${TORQUE_PLATFORM_MAC_SOURCES} "${CMAKE_SOURCE_DIR}/Tools/CMake/torque.icns")
|
|
|
|
- set_source_files_properties("${CMAKE_SOURCE_DIR}/Tools/CMake/torque.icns" PROPERTIES MACOSX_PACKAGE_LOCATION "Resources")
|
|
|
|
|
|
+ set(MACOSX_RESOURCES "${CMAKE_SOURCE_DIR}/Tools/CMake/torque.icns"
|
|
|
|
+ "${TORQUE_APP_GAME_DIRECTORY}/data"
|
|
|
|
+ "${TORQUE_APP_GAME_DIRECTORY}/core"
|
|
|
|
+ "${TORQUE_APP_GAME_DIRECTORY}/tools"
|
|
|
|
+ "${TORQUE_APP_GAME_DIRECTORY}/main.${TORQUE_SCRIPT_EXTENSION}")
|
|
|
|
+
|
|
|
|
+ set(TORQUE_SOURCE_FILES ${TORQUE_SOURCE_FILES} ${TORQUE_PLATFORM_MAC_SOURCES} ${MACOSX_RESOURCES})
|
|
|
|
+
|
|
|
|
+ source_group("Resources" FILES ${MACOSX_RESOURCES})
|
|
|
|
+
|
|
|
|
+ set_source_files_properties(${MACOSX_RESOURCES} PROPERTIES MACOSX_PACKAGE_LOCATION "Resources")
|
|
|
|
|
|
set(EXECUTABLE_NAME "${TORQUE_APP_NAME}")
|
|
set(EXECUTABLE_NAME "${TORQUE_APP_NAME}")
|
|
configure_file("${CMAKE_SOURCE_DIR}/Tools/CMake/Info.plist.in" "${TORQUE_APP_ROOT_DIRECTORY}/source/Info.plist" COPYONLY)
|
|
configure_file("${CMAKE_SOURCE_DIR}/Tools/CMake/Info.plist.in" "${TORQUE_APP_ROOT_DIRECTORY}/source/Info.plist" COPYONLY)
|
|
@@ -358,8 +367,6 @@ if (APPLE)
|
|
XCODE_ATTRIBUTE_INSTALL_PATH "/Applications"
|
|
XCODE_ATTRIBUTE_INSTALL_PATH "/Applications"
|
|
XCODE_ATTRIBUTE_SKIP_INSTALL "No")
|
|
XCODE_ATTRIBUTE_SKIP_INSTALL "No")
|
|
|
|
|
|
- # Ensure the shared libraries are actually referenced at the correct path
|
|
|
|
- set(CMAKE_XCODE_ATTRIBUTE_LD_RUNPATH_SEARCH_PATHS "@executable_path/../Frameworks")
|
|
|
|
elseif (WIN32)
|
|
elseif (WIN32)
|
|
add_executable(${TORQUE_APP_NAME} WIN32 ${TORQUE_SOURCE_FILES})
|
|
add_executable(${TORQUE_APP_NAME} WIN32 ${TORQUE_SOURCE_FILES})
|
|
|
|
|
|
@@ -406,8 +413,17 @@ if(MSVC)
|
|
set_property(DIRECTORY ${CMAKE_SOURCE_DIR} PROPERTY VS_STARTUP_PROJECT ${TORQUE_APP_NAME})
|
|
set_property(DIRECTORY ${CMAKE_SOURCE_DIR} PROPERTY VS_STARTUP_PROJECT ${TORQUE_APP_NAME})
|
|
endif()
|
|
endif()
|
|
|
|
|
|
|
|
+set_property(GLOBAL PROPERTY USE_FOLDERS ON)
|
|
|
|
+foreach (TORQUE_LIBRARY ${TORQUE_LINK_LIBRARIES})
|
|
|
|
+ set_target_properties(${TORQUE_LIBRARY} PROPERTIES
|
|
|
|
+ FOLDER "Libraries")
|
|
|
|
+endforeach()
|
|
|
|
+
|
|
target_compile_definitions(${TORQUE_APP_NAME} PUBLIC ${TORQUE_COMPILE_DEFINITIONS})
|
|
target_compile_definitions(${TORQUE_APP_NAME} PUBLIC ${TORQUE_COMPILE_DEFINITIONS})
|
|
target_link_libraries(${TORQUE_APP_NAME} ${TORQUE_LINK_LIBRARIES})
|
|
target_link_libraries(${TORQUE_APP_NAME} ${TORQUE_LINK_LIBRARIES})
|
|
|
|
+if(APPLE)
|
|
|
|
+target_link_libraries(${TORQUE_APP_NAME} ${TORQUE_LINK_FRAMEWORKS})
|
|
|
|
+endif(APPLE)
|
|
target_link_options(${TORQUE_APP_NAME} PUBLIC ${TORQUE_LINK_OPTIONS})
|
|
target_link_options(${TORQUE_APP_NAME} PUBLIC ${TORQUE_LINK_OPTIONS})
|
|
if (TORQUE_TARGET_PROPERTIES)
|
|
if (TORQUE_TARGET_PROPERTIES)
|
|
set_target_properties(${TORQUE_APP_NAME} PROPERTIES ${TORQUE_TARGET_PROPERTIES})
|
|
set_target_properties(${TORQUE_APP_NAME} PROPERTIES ${TORQUE_TARGET_PROPERTIES})
|
|
@@ -430,7 +446,7 @@ append_defs()
|
|
foreach (LIBRARY_BINARY ${TORQUE_ADDITIONAL_LIBRARY_BINARIES})
|
|
foreach (LIBRARY_BINARY ${TORQUE_ADDITIONAL_LIBRARY_BINARIES})
|
|
if (APPLE)
|
|
if (APPLE)
|
|
# For OSX, we want these binaries to be copied to the Frameworks directory
|
|
# For OSX, we want these binaries to be copied to the Frameworks directory
|
|
- #add_custom_command(TARGET ${TORQUE_APP_NAME} POST_BUILD COMMAND ${CMAKE_COMMAND} -E copy ${LIBRARY_BINARY} "${TORQUE_APP_GAME_DIRECTORY}/${TORQUE_APP_NAME}.app/Contents/Frameworks")
|
|
|
|
|
|
+ add_custom_command(TARGET ${TORQUE_APP_NAME} POST_BUILD COMMAND ${CMAKE_COMMAND} -E copy ${LIBRARY_BINARY} "${TORQUE_APP_GAME_DIRECTORY}/${TORQUE_APP_NAME}.app/Contents/Frameworks/$(CONFIGURATION)")
|
|
else()
|
|
else()
|
|
# All other platforms expect the file next to the executable
|
|
# All other platforms expect the file next to the executable
|
|
add_custom_command(TARGET ${TORQUE_APP_NAME} POST_BUILD COMMAND ${CMAKE_COMMAND} -E copy ${LIBRARY_BINARY} "${TORQUE_APP_GAME_DIRECTORY}")
|
|
add_custom_command(TARGET ${TORQUE_APP_NAME} POST_BUILD COMMAND ${CMAKE_COMMAND} -E copy ${LIBRARY_BINARY} "${TORQUE_APP_GAME_DIRECTORY}")
|
|
@@ -447,7 +463,6 @@ if (UNIX)
|
|
# For eg. OSX some links are not valid targets - for example frameworks provided by OS
|
|
# For eg. OSX some links are not valid targets - for example frameworks provided by OS
|
|
if (TARGET ${GAME_LINK_LIBRARY})
|
|
if (TARGET ${GAME_LINK_LIBRARY})
|
|
get_target_property(LINK_LIBRARY_TYPE ${GAME_LINK_LIBRARY} TYPE)
|
|
get_target_property(LINK_LIBRARY_TYPE ${GAME_LINK_LIBRARY} TYPE)
|
|
-
|
|
|
|
# Only pay attention to shared libraries and make them output to the app resources
|
|
# Only pay attention to shared libraries and make them output to the app resources
|
|
if ("${LINK_LIBRARY_TYPE}" STREQUAL "SHARED_LIBRARY")
|
|
if ("${LINK_LIBRARY_TYPE}" STREQUAL "SHARED_LIBRARY")
|
|
if (APPLE)
|
|
if (APPLE)
|