summaryrefslogtreecommitdiffstatshomepage
path: root/scripts/src/osd/sdl.lua
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/src/osd/sdl.lua')
-rw-r--r--scripts/src/osd/sdl.lua123
1 files changed, 81 insertions, 42 deletions
diff --git a/scripts/src/osd/sdl.lua b/scripts/src/osd/sdl.lua
index b89a25814ad..6acb5a2d262 100644
--- a/scripts/src/osd/sdl.lua
+++ b/scripts/src/osd/sdl.lua
@@ -39,23 +39,29 @@ function maintargetosdoptions(_target,_subtarget)
end
if BASE_TARGETOS=="unix" and _OPTIONS["targetos"]~="macosx" then
- links {
- "SDL2_ttf",
- }
+ if _OPTIONS["SDL_LIBVER"]=="sdl2" then
+ links {
+ "SDL2_ttf",
+ }
+ else
+ links {
+ "SDL_ttf",
+ }
+ end
local str = backtick("pkg-config --libs fontconfig")
addlibfromstring(str)
addoptionsfromstring(str)
end
if _OPTIONS["targetos"]=="windows" then
- if _OPTIONS["USE_LIBSDL"]~="1" then
+ if _OPTIONS["SDL_LIBVER"]=="sdl2" then
links {
"SDL2.dll",
}
else
- local str = backtick(sdlconfigcmd() .. " --libs | sed 's/ -lSDLmain//'")
- addlibfromstring(str)
- addoptionsfromstring(str)
+ links {
+ "SDL.dll",
+ }
end
links {
"psapi",
@@ -87,21 +93,16 @@ function maintargetosdoptions(_target,_subtarget)
configuration { "mingw*" or "vs*" }
targetprefix "sdl"
- links {
- "psapi"
- }
configuration { }
end
function sdlconfigcmd()
- if _OPTIONS["targetos"]=="asmjs" then
- return "sdl2-config"
- elseif not _OPTIONS["SDL_INSTALL_ROOT"] then
- return _OPTIONS['TOOLCHAIN'] .. "pkg-config sdl2"
+ if not _OPTIONS["SDL_INSTALL_ROOT"] then
+ return _OPTIONS["SDL_LIBVER"] .. "-config"
else
- return path.join(_OPTIONS["SDL_INSTALL_ROOT"],"bin","sdl2") .. "-config"
+ return path.join(_OPTIONS["SDL_INSTALL_ROOT"],"bin",_OPTIONS["SDL_LIBVER"]) .. "-config"
end
end
@@ -147,6 +148,23 @@ if not _OPTIONS["NO_USE_XINPUT"] then
end
newoption {
+ trigger = "SDL_LIBVER",
+ description = "Choose SDL version",
+ allowed = {
+ { "sdl", "SDL" },
+ { "sdl2", "SDL 2" },
+ },
+}
+
+if not _OPTIONS["SDL_LIBVER"] then
+ if _OPTIONS["targetos"]=="os2" then
+ _OPTIONS["SDL_LIBVER"] = "sdl"
+ else
+ _OPTIONS["SDL_LIBVER"] = "sdl2"
+ end
+end
+
+newoption {
trigger = "SDL2_MULTIAPI",
description = "Use couriersud's multi-keyboard patch for SDL 2.1? (this API was removed prior to the 2.0 release)",
allowed = {
@@ -174,16 +192,16 @@ if not _OPTIONS["SDL_FRAMEWORK_PATH"] then
end
newoption {
- trigger = "USE_LIBSDL",
- description = "Use SDL library on OS (rather than framework/dll)",
+ trigger = "MACOSX_USE_LIBSDL",
+ description = "Use SDL library on OS (rather than framework)",
allowed = {
- { "0", "Use framework/dll" },
+ { "0", "Use framework" },
{ "1", "Use library" },
},
}
-if not _OPTIONS["USE_LIBSDL"] then
- _OPTIONS["USE_LIBSDL"] = "0"
+if not _OPTIONS["MACOSX_USE_LIBSDL"] then
+ _OPTIONS["MACOSX_USE_LIBSDL"] = "0"
end
@@ -217,6 +235,10 @@ elseif _OPTIONS["targetos"]=="os2" then
SYNC_IMPLEMENTATION = "os2"
end
+if _OPTIONS["SDL_LIBVER"]=="sdl" then
+ USE_BGFX = 0
+end
+
if BASE_TARGETOS=="unix" then
if _OPTIONS["targetos"]=="macosx" then
local os_version = str_to_version(backtick("sw_vers -productVersion"))
@@ -233,27 +255,39 @@ if BASE_TARGETOS=="unix" then
"-weak_framework Metal",
}
end
- if _OPTIONS["USE_LIBSDL"]~="1" then
+ if _OPTIONS["MACOSX_USE_LIBSDL"]~="1" then
linkoptions {
"-F" .. _OPTIONS["SDL_FRAMEWORK_PATH"],
}
- links {
- "SDL2.framework",
- }
+ if _OPTIONS["SDL_LIBVER"]=="sdl2" then
+ links {
+ "SDL2.framework",
+ }
+ else
+ links {
+ "SDL.framework",
+ }
+ end
else
- local str = backtick(sdlconfigcmd() .. " --libs --static | sed 's/-lSDLmain//'")
+ local str = backtick(sdlconfigcmd() .. " --libs | sed 's/-lSDLmain//'")
addlibfromstring(str)
addoptionsfromstring(str)
end
else
if _OPTIONS["NO_X11"]=="1" then
_OPTIONS["USE_QTDEBUG"] = "0"
+ USE_BGFX = 0
else
libdirs {
"/usr/X11/lib",
"/usr/X11R6/lib",
"/usr/openwin/lib",
}
+ if _OPTIONS["SDL_LIBVER"]=="sdl" then
+ links {
+ "X11",
+ }
+ end
end
local str = backtick(sdlconfigcmd() .. " --libs")
addlibfromstring(str)
@@ -370,6 +404,13 @@ project ("osd_" .. _OPTIONS["osd"])
MAME_DIR .. "src/osd/modules/debugger/osx/watchpointsview.h",
MAME_DIR .. "src/osd/modules/debugger/osx/debugosx.h",
}
+ if _OPTIONS["SDL_LIBVER"]=="sdl" then
+ -- SDLMain_tmpl isn't necessary for SDL2
+ files {
+ MAME_DIR .. "src/osd/sdl/SDLMain_tmpl.mm",
+ MAME_DIR .. "src/osd/sdl/SDLMain_tmpl.h",
+ }
+ end
end
files {
@@ -390,10 +431,12 @@ project ("osd_" .. _OPTIONS["osd"])
MAME_DIR .. "src/osd/sdl/watchdog.h",
MAME_DIR .. "src/osd/modules/render/drawsdl.cpp",
}
- files {
- MAME_DIR .. "src/osd/modules/render/draw13.cpp",
- MAME_DIR .. "src/osd/modules/render/blit13.h",
- }
+ if _OPTIONS["SDL_LIBVER"]=="sdl2" then
+ files {
+ MAME_DIR .. "src/osd/modules/render/draw13.cpp",
+ MAME_DIR .. "src/osd/modules/render/blit13.h",
+ }
+ end
project ("ocore_" .. _OPTIONS["osd"])
@@ -486,14 +529,14 @@ if _OPTIONS["with-tools"] then
}
if _OPTIONS["targetos"] == "windows" then
- if _OPTIONS["USE_LIBSDL"]~="1" then
+ if _OPTIONS["SDL_LIBVER"] == "sdl2" then
links {
"SDL2.dll",
}
else
- local str = backtick(sdlconfigcmd() .. " --libs | sed 's/ -lSDLmain//'")
- addlibfromstring(str)
- addoptionsfromstring(str)
+ links {
+ "SDL.dll",
+ }
end
links {
"psapi",
@@ -504,14 +547,12 @@ if _OPTIONS["with-tools"] then
files {
MAME_DIR .. "src/osd/sdl/main.cpp",
}
+ elseif _OPTIONS["targetos"] == "macosx" and _OPTIONS["SDL_LIBVER"] == "sdl" then
+ -- SDLMain_tmpl isn't necessary for SDL2
+ files {
+ MAME_DIR .. "src/osd/sdl/SDLMain_tmpl.mm",
+ }
end
-
- configuration { "mingw*" or "vs*" }
- targetextension ".exe"
-
- configuration { }
-
- strip()
end
@@ -553,6 +594,4 @@ if _OPTIONS["targetos"] == "macosx" and _OPTIONS["with-tools"] then
files {
MAME_DIR .. "src/osd/sdl/aueffectutil.mm",
}
-
- strip()
end