Merge pull request #53 from vaartis/macos-fixes
This commit is contained in:
@@ -4,8 +4,8 @@ import os
|
|||||||
env = SConscript("src/lib/godot-cpp/SConstruct")
|
env = SConscript("src/lib/godot-cpp/SConstruct")
|
||||||
|
|
||||||
if env["platform"] == "macos":
|
if env["platform"] == "macos":
|
||||||
discord_library = "discord_game_sdk.dylib"
|
discord_library = "libdiscord_game_sdk.dylib"
|
||||||
discord_library_second = "discord_game_sdk_aarch64.dylib"
|
discord_library_second = ""
|
||||||
libexportfolder = "/macos/"
|
libexportfolder = "/macos/"
|
||||||
|
|
||||||
elif env["platform"] in ("linuxbsd", "linux"):
|
elif env["platform"] in ("linuxbsd", "linux"):
|
||||||
|
@@ -5,10 +5,10 @@ compatibility_minimum = 4.2
|
|||||||
|
|
||||||
[libraries]
|
[libraries]
|
||||||
|
|
||||||
macos.debug.x86_64 = "macos/discord_game_sdk_binding_debug.dylib"
|
macos.debug.x86_64 = "macos/libdiscord_game_sdk_binding_debug.dylib"
|
||||||
macos.release.x86_64 = "macos/discord_game_sdk_binding.dylib"
|
macos.release.x86_64 = "macos/libdiscord_game_sdk_binding.dylib"
|
||||||
macos.debug.arm64 = "macos/discord_game_sdk_binding_arm64_debug.dylib"
|
macos.debug.arm64 = "macos/libdiscord_game_sdk_binding_arm64_debug.dylib"
|
||||||
macos.release.arm64 = "macos/discord_game_sdk_binding_arm64.dylib"
|
macos.release.arm64 = "macos/libdiscord_game_sdk_binding_arm64.dylib"
|
||||||
windows.debug.x86_64 = "windows/discord_game_sdk_binding_debug.dll"
|
windows.debug.x86_64 = "windows/discord_game_sdk_binding_debug.dll"
|
||||||
windows.release.x86_64 = "windows/discord_game_sdk_binding.dll"
|
windows.release.x86_64 = "windows/discord_game_sdk_binding.dll"
|
||||||
linux.debug.x86_64 = "linux/libdiscord_game_sdk_binding_debug.so"
|
linux.debug.x86_64 = "linux/libdiscord_game_sdk_binding_debug.so"
|
||||||
@@ -20,10 +20,7 @@ linux.release.rv64 = "linux/libdiscord_game_sdk_binding.so"
|
|||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
|
|
||||||
macos.debug.x86_64 = { "macos/discord_game_sdk.dylib": "" }
|
macos = { "macos/libdiscord_game_sdk.dylib": "" }
|
||||||
macos.release.x86_64 = { "macos/discord_game_sdk.dylib": "" }
|
|
||||||
macos.debug.arm64 = { "macos/discord_game_sdk_aarch64": "" }
|
|
||||||
macos.release.arm64 = { "macos/discord_game_sdk_aarch64": "" }
|
|
||||||
windows.debug.x86_64 = { "windows/discord_game_sdk.dll": "" }
|
windows.debug.x86_64 = { "windows/discord_game_sdk.dll": "" }
|
||||||
windows.release.x86_64 = { "windows/discord_game_sdk.dll": "" }
|
windows.release.x86_64 = { "windows/discord_game_sdk.dll": "" }
|
||||||
linux.debug.x86_64 = { "linux/libdiscord_game_sdk.so": "" }
|
linux.debug.x86_64 = { "linux/libdiscord_game_sdk.so": "" }
|
||||||
|
11
setup.py
11
setup.py
@@ -2,6 +2,7 @@ import zipfile
|
|||||||
from distutils.dir_util import copy_tree
|
from distutils.dir_util import copy_tree
|
||||||
import shutil
|
import shutil
|
||||||
import os
|
import os
|
||||||
|
import sys
|
||||||
|
|
||||||
with zipfile.ZipFile("src/lib/discord_game_sdk.zip", "r") as zip_ref:
|
with zipfile.ZipFile("src/lib/discord_game_sdk.zip", "r") as zip_ref:
|
||||||
zip_ref.extractall("src/lib/discord_game_sdk/")
|
zip_ref.extractall("src/lib/discord_game_sdk/")
|
||||||
@@ -43,4 +44,14 @@ shutil.rmtree("src/lib/discord_game_sdk/bin/x86/", ignore_errors=True)
|
|||||||
shutil.rmtree("src/lib/discord_game_sdk/bin/x86_64/", ignore_errors=True)
|
shutil.rmtree("src/lib/discord_game_sdk/bin/x86_64/", ignore_errors=True)
|
||||||
os.remove("src/lib/discord_game_sdk/README.md")
|
os.remove("src/lib/discord_game_sdk/README.md")
|
||||||
|
|
||||||
|
if sys.platform == "darwin":
|
||||||
|
# Combine the two libraries into one
|
||||||
|
os.system("lipo src/lib/discord_game_sdk/bin/{discord_game_sdk.dylib,discord_game_sdk_aarch64.dylib} -output src/lib/discord_game_sdk/bin/libdiscord_game_sdk.dylib -create")
|
||||||
|
# Change the install name to (library's location)/(its new name)
|
||||||
|
os.system("install_name_tool -id '@loader_path/libdiscord_game_sdk.dylib'\
|
||||||
|
src/lib/discord_game_sdk/bin/libdiscord_game_sdk.dylib")
|
||||||
|
# Remove the ones it's made of
|
||||||
|
os.remove("src/lib/discord_game_sdk/bin/discord_game_sdk.dylib")
|
||||||
|
os.remove("src/lib/discord_game_sdk/bin/discord_game_sdk_aarch64.dylib")
|
||||||
|
|
||||||
os.system("git submodule update --init --remote")
|
os.system("git submodule update --init --remote")
|
||||||
|
Reference in New Issue
Block a user