mirror of
https://github.com/cemu-project/Cemu.git
synced 2026-04-26 04:45:18 -06:00
Move update.sh to Cemu.app/Contents/Resources, move update.sh chmod to CMake, use proper CMake commands for rpaths
This commit is contained in:
parent
b9a270a3f9
commit
d37d25b086
1
.github/workflows/build.yml
vendored
1
.github/workflows/build.yml
vendored
@ -282,7 +282,6 @@ jobs:
|
||||
mv bin/Cemu_release.app bin/Cemu_app/Cemu.app
|
||||
mv bin/Cemu_app/Cemu.app/Contents/MacOS/Cemu_release bin/Cemu_app/Cemu.app/Contents/MacOS/Cemu
|
||||
sed -i '' 's/Cemu_release/Cemu/g' bin/Cemu_app/Cemu.app/Contents/Info.plist
|
||||
chmod a+x bin/Cemu_app/Cemu.app/Contents/MacOS/{Cemu,update.sh}
|
||||
codesign --entitlements ${{github.workspace}}/src/resource/cemu.macos.entitlements --force --deep --preserve-metadata=entitlements,requirements,flags,runtime --sign - --timestamp --options runtime bin/Cemu_app/Cemu.app/Contents/MacOS/Cemu
|
||||
ln -s /Applications bin/Cemu_app/Applications
|
||||
hdiutil create ./bin/tmp.dmg -ov -volname "Cemu" -fs HFS+ -srcfolder "./bin/Cemu_app"
|
||||
|
||||
@ -79,6 +79,12 @@ if(WIN32)
|
||||
)
|
||||
endif()
|
||||
|
||||
if(APPLE AND CMAKE_GENERATOR STREQUAL "Xcode")
|
||||
set_target_properties(CemuBin PROPERTIES
|
||||
XCODE_ATTRIBUTE_ENABLE_DEBUG_DYLIB[variant=Debug] "YES"
|
||||
)
|
||||
endif()
|
||||
|
||||
string(TIMESTAMP CURRENT_YEAR "%Y" UTC)
|
||||
|
||||
set_property(TARGET CemuBin PROPERTY MSVC_RUNTIME_LIBRARY "MultiThreaded$<$<CONFIG:Debug>:Debug>")
|
||||
@ -127,12 +133,31 @@ if (MACOS_BUNDLE)
|
||||
message(FATAL_ERROR "failed to find libMoltenVK.dylib")
|
||||
endif ()
|
||||
|
||||
add_custom_command (TARGET CemuBin POST_BUILD
|
||||
COMMAND ${CMAKE_COMMAND} ARGS -E copy "${MOLTENVK_PATH}" "${CMAKE_SOURCE_DIR}/bin/${OUTPUT_NAME}.app/Contents/Frameworks/libMoltenVK.dylib"
|
||||
COMMAND ${CMAKE_COMMAND} ARGS -E copy "${LIBUSB_PATH}" "${CMAKE_SOURCE_DIR}/bin/${OUTPUT_NAME}.app/Contents/Frameworks/libusb-1.0.0.dylib"
|
||||
COMMAND ${CMAKE_COMMAND} ARGS -E copy "${CMAKE_SOURCE_DIR}/src/resource/update.sh" "${CMAKE_SOURCE_DIR}/bin/${OUTPUT_NAME}.app/Contents/MacOS/update.sh"
|
||||
COMMAND bash -c "install_name_tool -add_rpath @executable_path/../Frameworks ${CMAKE_SOURCE_DIR}/bin/${OUTPUT_NAME}.app/Contents/MacOS/${OUTPUT_NAME}"
|
||||
COMMAND install_name_tool -change @rpath/libusb-1.0.0.dylib @executable_path/../Frameworks/libusb-1.0.0.dylib ${CMAKE_SOURCE_DIR}/bin/${OUTPUT_NAME}.app/Contents/MacOS/${OUTPUT_NAME})
|
||||
set(APP_BUNDLE_DIR "${CMAKE_SOURCE_DIR}/bin/${OUTPUT_NAME}.app")
|
||||
set(FRAMEWORKS_DIR "${APP_BUNDLE_DIR}/Contents/Frameworks")
|
||||
set(RESOURCES_DIR "${APP_BUNDLE_DIR}/Contents/Resources")
|
||||
|
||||
add_custom_command(TARGET CemuBin POST_BUILD
|
||||
COMMAND ${CMAKE_COMMAND} -E copy_if_different
|
||||
"${MOLTENVK_PATH}"
|
||||
"${FRAMEWORKS_DIR}/libMoltenVK.dylib"
|
||||
COMMAND ${CMAKE_COMMAND} -E copy_if_different
|
||||
"${LIBUSB_PATH}"
|
||||
"${FRAMEWORKS_DIR}/libusb-1.0.0.dylib"
|
||||
COMMAND ${CMAKE_COMMAND} -E copy_if_different
|
||||
"${CMAKE_SOURCE_DIR}/src/resource/update.sh"
|
||||
"${RESOURCES_DIR}/update.sh"
|
||||
COMMAND ${CMAKE_COMMAND} -E chmod +x "${RESOURCES_DIR}/update.sh"
|
||||
COMMAND install_name_tool
|
||||
-change @rpath/libusb-1.0.0.dylib
|
||||
@executable_path/../Frameworks/libusb-1.0.0.dylib
|
||||
"$<TARGET_FILE:CemuBin>"
|
||||
)
|
||||
|
||||
set_target_properties(CemuBin PROPERTIES
|
||||
BUILD_WITH_INSTALL_RPATH TRUE
|
||||
INSTALL_RPATH "@executable_path/../Frameworks"
|
||||
)
|
||||
else()
|
||||
if(APPLE)
|
||||
find_library(MOLTENVK_LIBRARY
|
||||
|
||||
Loading…
Reference in New Issue
Block a user