diff options
Diffstat (limited to 'scripts/src/3rdparty.lua')
-rw-r--r-- | scripts/src/3rdparty.lua | 275 |
1 files changed, 250 insertions, 25 deletions
diff --git a/scripts/src/3rdparty.lua b/scripts/src/3rdparty.lua index 2bee6477f01..04038127dfb 100644 --- a/scripts/src/3rdparty.lua +++ b/scripts/src/3rdparty.lua @@ -280,6 +280,11 @@ end buildoptions { "-Wno-enum-conversion", } + if _OPTIONS["targetos"]=="macosx" then + buildoptions_c { + "-Wno-unknown-attributes", + } + end end configuration { } @@ -398,6 +403,8 @@ end configuration { } defines { "LUA_COMPAT_ALL", + "LUA_COMPAT_5_1", + "LUA_COMPAT_5_2", } if not (_OPTIONS["targetos"]=="windows") and not (_OPTIONS["targetos"]=="asmjs") then defines { @@ -458,20 +465,19 @@ links { end -------------------------------------------------- --- sqlite3 lua library objects +-- small lua library objects -------------------------------------------------- -project "lsqlite3" +project "lualibs" uuid "1d84edab-94cf-48fb-83ee-b75bc697660e" kind "StaticLib" - -- options { - -- "ForceCPP", - -- } - configuration { "vs*" } buildoptions { "/wd4244", -- warning C4244: 'argument' : conversion from 'xxx' to 'xxx', possible loss of data + "/wd4055", -- warning C4055: 'type cast': from data pointer 'void *' to function pointer 'xxx' + "/wd4152", -- warning C4152: nonstandard extension, function/data pointer conversion in expression + "/wd4130", -- warning C4130: '==': logical operation on address of string constant } configuration { } @@ -487,9 +493,69 @@ project "lsqlite3" MAME_DIR .. "3rdparty/lua/src", } end + if _OPTIONS["with-bundled-zlib"] then + includedirs { + MAME_DIR .. "3rdparty/zlib", + } + end files { MAME_DIR .. "3rdparty/lsqlite3/lsqlite3.c", + MAME_DIR .. "3rdparty/lua-zlib/lua_zlib.c", + MAME_DIR .. "3rdparty/luafilesystem/src/lfs.c", + } + +-------------------------------------------------- +-- luv lua library objects +-------------------------------------------------- + +project "luv" + uuid "d98ec5ca-da2a-4a50-88a2-52061ca53871" + kind "StaticLib" + + if _OPTIONS["targetos"]=="windows" then + defines { + "_WIN32_WINNT=0x0600", + } + end + configuration { "vs*" } + buildoptions { + "/wd4244", -- warning C4244: 'argument' : conversion from 'xxx' to 'xxx', possible loss of data + } + + configuration { "gmake" } + buildoptions_c { + "-Wno-unused-function", + "-Wno-strict-prototypes", + "-Wno-unused-variable", + "-Wno-maybe-uninitialized", + "-Wno-undef", + } + + configuration { "vs2015" } + buildoptions { + "/wd4701", -- warning C4701: potentially uninitialized local variable 'xxx' used + "/wd4703", -- warning C4703: potentially uninitialized local pointer variable 'xxx' used + } + + configuration { } + defines { + "LUA_COMPAT_ALL", + } + + includedirs { + MAME_DIR .. "3rdparty/lua/src", + MAME_DIR .. "3rdparty/libuv/include", + } + if _OPTIONS["with-bundled-lua"] then + includedirs { + MAME_DIR .. "3rdparty/luv/deps/lua/src", + } + end + + files { + MAME_DIR .. "3rdparty/luv/src/luv.c", + MAME_DIR .. "3rdparty/luv/src/luv.h", } -------------------------------------------------- @@ -639,7 +705,6 @@ end -- BGFX library objects -------------------------------------------------- -if (USE_BGFX == 1) then project "bgfx" uuid "d3e7e119-35cf-4f4f-aba0-d3bdcd1b879a" kind "StaticLib" @@ -664,10 +729,14 @@ end MAME_DIR .. "3rdparty/bgfx/include", MAME_DIR .. "3rdparty/bgfx/3rdparty", MAME_DIR .. "3rdparty/bx/include", - MAME_DIR .. "3rdparty/bgfx/3rdparty/khronos", MAME_DIR .. "3rdparty/bgfx/3rdparty/dxsdk/include", } + configuration { "not steamlink"} + includedirs { + MAME_DIR .. "3rdparty/bgfx/3rdparty/khronos", + } + configuration { "vs*" } includedirs { MAME_DIR .. "3rdparty/bx/include/compat/msvc", @@ -763,7 +832,6 @@ end MAME_DIR .. "3rdparty/bgfx/src/renderer_mtl.mm", } end -end -------------------------------------------------- -- PortAudio library objects @@ -919,37 +987,194 @@ links { end -------------------------------------------------- --- GoogleTest library objects +-- libuv library objects -------------------------------------------------- - -project "gtest" - uuid "fa306a8d-fb10-4d4a-9d2e-fdb9076407b4" +project "uv" + uuid "cd2afe7f-139d-49c3-9000-fc9119f3cea0" kind "StaticLib" + includedirs { + MAME_DIR .. "3rdparty/libuv/include", + MAME_DIR .. "3rdparty/libuv/src", + MAME_DIR .. "3rdparty/libuv/src/win", + } + configuration { "gmake" } - buildoptions { + buildoptions_c { + "-Wno-strict-prototypes", + "-Wno-bad-function-cast", + "-Wno-write-strings", + "-Wno-missing-braces", "-Wno-undef", "-Wno-unused-variable", } - configuration { "mingw-clang" } - buildoptions { - "-O0", -- crash of compiler when doing optimization - } + + local version = str_to_version(_OPTIONS["gcc_version"]) + if (_OPTIONS["gcc"]~=nil) then + if string.find(_OPTIONS["gcc"], "clang") then + buildoptions_c { + "-Wno-unknown-warning-option", + "-Wno-unknown-attributes", + "-Wno-null-dereference", + "-Wno-unused-but-set-variable", + "-Wno-maybe-uninitialized", + } + else + buildoptions_c { + "-Wno-unused-but-set-variable", + "-Wno-maybe-uninitialized", + } + end + end configuration { "vs*" } -if _OPTIONS["vs"]=="intel-15" then buildoptions { - "/Qwd1195", -- error #1195: conversion from integer to smaller pointer + "/wd4054", -- warning C4054: 'type cast' : from function pointer 'xxx' to data pointer 'void *' + "/wd4204", -- warning C4204: nonstandard extension used : non-constant aggregate initializer + "/wd4210", -- warning C4210: nonstandard extension used : function given file scope + "/wd4701", -- warning C4701: potentially uninitialized local variable 'xxx' used + "/wd4703", -- warning C4703: potentially uninitialized local pointer variable 'xxx' used + "/wd4477", -- warning C4477: '<function>' : format string '<format-string>' requires an argument of type '<type>', but variadic argument <position> has type '<type>' } -end configuration { } - includedirs { - MAME_DIR .. "3rdparty/googletest/googletest/include", - MAME_DIR .. "3rdparty/googletest/googletest", + files { + MAME_DIR .. "3rdparty/libuv/src/fs-poll.c", + MAME_DIR .. "3rdparty/libuv/src/inet.c", + MAME_DIR .. "3rdparty/libuv/src/threadpool.c", + MAME_DIR .. "3rdparty/libuv/src/uv-common.c", + MAME_DIR .. "3rdparty/libuv/src/version.c", } + + if _OPTIONS["targetos"]=="windows" then + defines { + "WIN32_LEAN_AND_MEAN", + "_WIN32_WINNT=0x0502", + } + if _ACTION == "vs2013" then + files { + MAME_DIR .. "3rdparty/libuv/src/win/snprintf.c", + } + end + configuration { } + files { + MAME_DIR .. "3rdparty/libuv/src/win/async.c", + MAME_DIR .. "3rdparty/libuv/src/win/core.c", + MAME_DIR .. "3rdparty/libuv/src/win/dl.c", + MAME_DIR .. "3rdparty/libuv/src/win/error.c", + MAME_DIR .. "3rdparty/libuv/src/win/fs-event.c", + MAME_DIR .. "3rdparty/libuv/src/win/fs.c", + MAME_DIR .. "3rdparty/libuv/src/win/getaddrinfo.c", + MAME_DIR .. "3rdparty/libuv/src/win/getnameinfo.c", + MAME_DIR .. "3rdparty/libuv/src/win/handle.c", + MAME_DIR .. "3rdparty/libuv/src/win/loop-watcher.c", + MAME_DIR .. "3rdparty/libuv/src/win/pipe.c", + MAME_DIR .. "3rdparty/libuv/src/win/poll.c", + MAME_DIR .. "3rdparty/libuv/src/win/process-stdio.c", + MAME_DIR .. "3rdparty/libuv/src/win/process.c", + MAME_DIR .. "3rdparty/libuv/src/win/req.c", + MAME_DIR .. "3rdparty/libuv/src/win/signal.c", + MAME_DIR .. "3rdparty/libuv/src/win/stream.c", + MAME_DIR .. "3rdparty/libuv/src/win/tcp.c", + MAME_DIR .. "3rdparty/libuv/src/win/thread.c", + MAME_DIR .. "3rdparty/libuv/src/win/timer.c", + MAME_DIR .. "3rdparty/libuv/src/win/tty.c", + MAME_DIR .. "3rdparty/libuv/src/win/udp.c", + MAME_DIR .. "3rdparty/libuv/src/win/util.c", + MAME_DIR .. "3rdparty/libuv/src/win/winapi.c", + MAME_DIR .. "3rdparty/libuv/src/win/winsock.c", + } + end + + if _OPTIONS["targetos"]~="windows" then + files { + MAME_DIR .. "3rdparty/libuv/src/unix/async.c", + MAME_DIR .. "3rdparty/libuv/src/unix/atomic-ops.h", + MAME_DIR .. "3rdparty/libuv/src/unix/core.c", + MAME_DIR .. "3rdparty/libuv/src/unix/dl.c", + MAME_DIR .. "3rdparty/libuv/src/unix/fs.c", + MAME_DIR .. "3rdparty/libuv/src/unix/getaddrinfo.c", + MAME_DIR .. "3rdparty/libuv/src/unix/getnameinfo.c", + MAME_DIR .. "3rdparty/libuv/src/unix/internal.h", + MAME_DIR .. "3rdparty/libuv/src/unix/loop-watcher.c", + MAME_DIR .. "3rdparty/libuv/src/unix/loop.c", + MAME_DIR .. "3rdparty/libuv/src/unix/pipe.c", + MAME_DIR .. "3rdparty/libuv/src/unix/poll.c", + MAME_DIR .. "3rdparty/libuv/src/unix/process.c", + MAME_DIR .. "3rdparty/libuv/src/unix/signal.c", + MAME_DIR .. "3rdparty/libuv/src/unix/spinlock.h", + MAME_DIR .. "3rdparty/libuv/src/unix/stream.c", + MAME_DIR .. "3rdparty/libuv/src/unix/tcp.c", + MAME_DIR .. "3rdparty/libuv/src/unix/thread.c", + MAME_DIR .. "3rdparty/libuv/src/unix/timer.c", + MAME_DIR .. "3rdparty/libuv/src/unix/tty.c", + MAME_DIR .. "3rdparty/libuv/src/unix/udp.c", + } + end + if _OPTIONS["targetos"]=="linux" then + defines { + "_GNU_SOURCE", + } + files { + MAME_DIR .. "3rdparty/libuv/src/unix/linux-core.c", + MAME_DIR .. "3rdparty/libuv/src/unix/linux-inotify.c", + MAME_DIR .. "3rdparty/libuv/src/unix/linux-syscalls.c", + MAME_DIR .. "3rdparty/libuv/src/unix/linux-syscalls.h", + MAME_DIR .. "3rdparty/libuv/src/unix/proctitle.c", + } + end + if _OPTIONS["targetos"]=="macosx" then + defines { + "_DARWIN_USE_64_BIT_INODE=1", + "_DARWIN_UNLIMITED_SELECT=1", + } + files { + MAME_DIR .. "3rdparty/libuv/src/unix/darwin.c", + MAME_DIR .. "3rdparty/libuv/src/unix/darwin-proctitle.c", + MAME_DIR .. "3rdparty/libuv/src/unix/fsevents.c", + MAME_DIR .. "3rdparty/libuv/src/unix/kqueue.c", + MAME_DIR .. "3rdparty/libuv/src/unix/proctitle.c", + } + end + if _OPTIONS["targetos"]=="solaris" then + defines { + "__EXTENSIONS__", + "_XOPEN_SOURCE=500", + } + files { + MAME_DIR .. "3rdparty/libuv/src/unix/sunos.c", + } + end + if _OPTIONS["targetos"]=="freebsd" then + files { + MAME_DIR .. "3rdparty/libuv/src/unix/freebsd.c", + MAME_DIR .. "3rdparty/libuv/src/unix/kqueue.c", + } + end + + if (_OPTIONS["SHADOW_CHECK"]=="1") then + removebuildoptions { + "-Wshadow" + } + end + +-------------------------------------------------- +-- HTTP parser library objects +-------------------------------------------------- + +project "http-parser" + uuid "90c6ba59-bdb2-4fee-8b44-57601d690e14" + kind "StaticLib" + + configuration { } + files { - MAME_DIR .. "3rdparty/googletest/googletest/src/gtest-all.cc", + MAME_DIR .. "3rdparty/http-parser/http_parser.c", } + if (_OPTIONS["SHADOW_CHECK"]=="1") then + removebuildoptions { + "-Wshadow" + } + end |