macOS support; thanks to @MrYadro

This should support ARM64 and x86-64.
-target flag based on information from
https://developer.apple.com/documentation/xcode/building_a_universal_macos_binary#3618377.
This commit is contained in:
Andrew Udvare
2020-09-29 20:39:18 -04:00
parent 8235fe08d1
commit 01ea7801fd
4 changed files with 141 additions and 35 deletions

View File

@ -85,6 +85,12 @@ workspace "re3"
"bsd-amd64-librw_gl3_glfw-oal"
}
filter { "system:macosx" }
platforms {
"macosx-amd64-librw_gl3_glfw-oal",
"macosx-arm64-librw_gl3_glfw-oal",
}
filter "configurations:Debug"
defines { "DEBUG" }
@ -100,6 +106,9 @@ workspace "re3"
filter { "platforms:bsd*" }
system "bsd"
filter { "platforms:macosx*" }
system "macosx"
filter { "platforms:*x86*" }
architecture "x86"
@ -110,6 +119,12 @@ workspace "re3"
filter { "platforms:*arm*" }
architecture "ARM"
filter { "platforms:macosx-arm64-*" }
buildoptions { "-target", "arm64-apple-macos11", "-std=gnu++14" }
filter { "platforms:macosx-amd64-*" }
buildoptions { "-target", "x86_64-apple-macos10.12", "-std=gnu++14" }
filter { "platforms:*librw_d3d9*" }
defines { "RW_D3D9" }
if(not _OPTIONS["with-librw"]) then
@ -162,6 +177,13 @@ project "librw"
filter "platforms:bsd*"
includedirs { "/usr/local/include" }
libdirs { "/usr/local/lib" }
filter "platforms:macosx*"
-- Support MacPorts and Homebrew
includedirs { "/opt/local/include" }
includedirs {"/usr/local/include" }
libdirs { "/opt/local/lib" }
libdirs { "/usr/local/lib" }
filter "platforms:*RW33*"
flags { "ExcludeFromBuild" }
@ -276,6 +298,11 @@ project "re3"
filter "platforms:bsd*oal"
links { "openal", "mpg123", "sndfile", "pthread" }
filter "platforms:macosx*oal"
links { "openal", "mpg123", "sndfile", "pthread" }
includedirs { "/usr/local/opt/openal-soft/include" }
libdirs { "/usr/local/opt/openal-soft/lib" }
if _OPTIONS["with-opus"] then
filter {}
@ -329,3 +356,11 @@ project "re3"
links { "GL", "GLEW", "glfw", "sysinfo" }
includedirs { "/usr/local/include" }
libdirs { "/usr/local/lib" }
filter "platforms:macosx*gl3_glfw*"
links { "GLEW", "glfw" }
linkoptions { "-framework OpenGL" }
includedirs { "/opt/local/include" }
includedirs { "/usr/local/include" }
libdirs { "/opt/local/lib" }
libdirs { "/usr/local/lib" }