mirror of
https://github.com/libretro/ppsspp.git
synced 2025-02-05 16:46:38 +00:00
Merge pull request #11831 from vit9696/macbuild
Bundle libSDL inside app on macOS, fixes #11830
This commit is contained in:
commit
4c83d30b59
@ -1991,6 +1991,9 @@ if(TargetBin)
|
||||
add_executable(${TargetBin} MACOSX_BUNDLE ${ICON_PATH_ABS} ${NativeAssets} ${SHADER_FILES} ${FLASH0_FILES} ${LANG_FILES} ${NativeAppSource} "ios/Launch Screen.storyboard")
|
||||
else()
|
||||
add_executable(${TargetBin} MACOSX_BUNDLE ${ICON_PATH_ABS} ${NativeAssets} ${SHADER_FILES} ${FLASH0_FILES} ${LANG_FILES} ${NativeAppSource})
|
||||
if(TARGET SDL2::SDL2)
|
||||
add_custom_command(TARGET ${TargetBin} POST_BUILD COMMAND /bin/bash "${CMAKE_SOURCE_DIR}/SDL/macbundle.sh" "${CMAKE_BINARY_DIR}/PPSSPPSDL.app")
|
||||
endif()
|
||||
endif()
|
||||
elseif(WIN32)
|
||||
add_executable(${TargetBin} WIN32 ${NativeAppSource})
|
||||
|
27
SDL/macbundle.sh
Executable file
27
SDL/macbundle.sh
Executable file
@ -0,0 +1,27 @@
|
||||
#!/bin/bash
|
||||
|
||||
PPSSPP="${1}"
|
||||
PPSSPPSDL="${PPSSPP}/Contents/MacOS/PPSSPPSDL"
|
||||
|
||||
if [ ! -f "${PPSSPPSDL}" ]; then
|
||||
echo "No such file: ${PPSSPPSDL}!"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
SDL=$(otool -L "${PPSSPPSDL}" | grep -v @executable_path | grep -Eo /.+libSDL.+dylib)
|
||||
if [ "${SDL}" = "" ]; then
|
||||
echo "SDL is already bundled/unused."
|
||||
exit 0
|
||||
fi
|
||||
|
||||
if [ ! -f "${SDL}" ]; then
|
||||
echo "Cannot locate SDL: ${SDL}!"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "Installing SDL from ${SDL}..."
|
||||
|
||||
SDLNAME=$(basename "${SDL}")
|
||||
mkdir -p "${PPSSPP}/Contents/Frameworks" || exit 1
|
||||
cp -r "$SDL" "${PPSSPP}/Contents/Frameworks" || exit 1
|
||||
install_name_tool -change "${SDL}" "@executable_path/../Frameworks/${SDLNAME}" "${PPSSPPSDL}" || exit 1
|
Loading…
x
Reference in New Issue
Block a user