From 513e30cbbb75a4c81bc4a7cc2dde47e0ad064644 Mon Sep 17 00:00:00 2001 From: Vas Crabb Date: Tue, 28 Jun 2022 16:33:06 +1000 Subject: Added make opions for filter file, adjusted source path display. Added SOURCEFILTER option to specify a driver filter file in your make options, e.g. like make SUBTARGET=custom SOURCEFILTER=mydrivers.flt (or put it in your useroptions.mak if you'll be using it a lot). It functions more-or-less like SOURCES on steroids. Changed the way system/device source file paths are displayed to suit the new source layout better. INI file loading hasn't changed, that still just uses the base file name. Added overlooked trigger to src/bus.lua to include NES controller bus if the NES zapper sensor is needed. --- scripts/src/main.lua | 130 ++++++++++++++++++++++++++++----------------------- 1 file changed, 71 insertions(+), 59 deletions(-) (limited to 'scripts/src/main.lua') diff --git a/scripts/src/main.lua b/scripts/src/main.lua index ce31dd7f5c4..ae95b11e501 100644 --- a/scripts/src/main.lua +++ b/scripts/src/main.lua @@ -11,7 +11,7 @@ function mainProject(_target, _subtarget) local projname -if (_OPTIONS["SOURCES"] == nil) then +if (_OPTIONS["SOURCES"] == nil) and (_OPTIONS["SOURCEFILTER"] == nil) then if (_target == _subtarget) then projname = _target else @@ -282,68 +282,80 @@ if (STANDALONE~=true) then GEN_DIR .. _target .. "/" .. _subtarget .. "/drivlist.cpp", } - if (_OPTIONS["SOURCES"] == nil) then - - if os.isfile(MAME_DIR .. "src/" .. _target .."/" .. _subtarget ..".flt") then - dependency { - { GEN_DIR .. _target .. "/" .. _subtarget .."/drivlist.cpp", MAME_DIR .. "src/".._target .."/" .. _target ..".lst", true }, - } - custombuildtask { + local driverlist = MAME_DIR .. "src/" .. _target .. "/" .. _target .. ".lst" + local driverssrc = GEN_DIR .. _target .. "/" .. _subtarget .. "/drivlist.cpp" + if _OPTIONS["SOURCES"] ~= nil then + dependency { + { driverssrc, driverlist, true }, + } + custombuildtask { + { + GEN_DIR .. _target .."/" .. _subtarget .. ".flt" , + driverssrc, + { MAME_DIR .. "scripts/build/makedep.py", driverlist }, { - MAME_DIR .. "src/" .. _target .. "/" .. _subtarget .. ".flt", - GEN_DIR .. _target .. "/" .. _subtarget .. "/drivlist.cpp", - { MAME_DIR .. "scripts/build/makedep.py", MAME_DIR .. "src/" .. _target .."/" .. _target .. ".lst" }, - { - "@echo Building driver list...", - PYTHON .. " $(1) driverlist $(2) -f $(<) > $(@)" - } - }, - } - elseif os.isfile(MAME_DIR .. "src/" .._target .. "/" .. _subtarget ..".lst") then - custombuildtask { + "@echo Building driver list...", + PYTHON .. " $(1) driverlist $(2) -f $(<) > $(@)" + } + }, + } + elseif _OPTIONS["SOURCEFILTER"] ~= nil then + dependency { + { driverssrc, driverlist, true }, + } + custombuildtask { + { + MAME_DIR .. _OPTIONS["SOURCEFILTER"], + driverssrc, + { MAME_DIR .. "scripts/build/makedep.py", driverlist }, { - MAME_DIR .. "src/" .. _target .. "/" .. _subtarget .. ".lst", - GEN_DIR .. _target .. "/" .. _subtarget .."/drivlist.cpp", - { MAME_DIR .. "scripts/build/makedep.py" }, - { - "@echo Building driver list...", - PYTHON .. " $(1) driverlist $(<) > $(@)" - } - }, - } - else - dependency { - { GEN_DIR .. _target .. "/" .. _target .."/drivlist.cpp", MAME_DIR .. "src/".._target .."/" .. _target ..".lst", true }, - } - custombuildtask { + "@echo Building driver list...", + PYTHON .. " $(1) driverlist $(2) -f $(<) > $(@)" + } + }, + } + elseif os.isfile(MAME_DIR .. "src/" .. _target .."/" .. _subtarget ..".flt") then + dependency { + { driverssrc, driverlist, true }, + } + custombuildtask { + { + MAME_DIR .. "src/" .. _target .. "/" .. _subtarget .. ".flt", + driverssrc, + { MAME_DIR .. "scripts/build/makedep.py", driverlist }, { - MAME_DIR .. "src/" .. _target .. "/" .. _target .. ".lst", - GEN_DIR .. _target .. "/" .. _target .. "/drivlist.cpp", - { MAME_DIR .. "scripts/build/makedep.py" }, - { - "@echo Building driver list...", - PYTHON .. " $(1) driverlist $(<) > $(@)" - } - }, - } - end - end - - if (_OPTIONS["SOURCES"] ~= nil) then - dependency { - { GEN_DIR .. _target .. "/" .. _subtarget .."/drivlist.cpp", MAME_DIR .. "src/".._target .."/" .. _target ..".lst", true }, - } - custombuildtask { + "@echo Building driver list...", + PYTHON .. " $(1) driverlist $(2) -f $(<) > $(@)" + } + }, + } + elseif os.isfile(MAME_DIR .. "src/" .._target .. "/" .. _subtarget ..".lst") then + custombuildtask { + { + MAME_DIR .. "src/" .. _target .. "/" .. _subtarget .. ".lst", + driverssrc, + { MAME_DIR .. "scripts/build/makedep.py" }, { - GEN_DIR .. _target .."/" .. _subtarget ..".flt" , - GEN_DIR .. _target .. "/" .. _subtarget .."/drivlist.cpp", - { MAME_DIR .. "scripts/build/makedep.py", MAME_DIR .. "src/".._target .."/" .. _target ..".lst" }, - { - "@echo Building driver list...", - PYTHON .. " $(1) driverlist $(2) -f $(<) > $(@)" - } - }, - } + "@echo Building driver list...", + PYTHON .. " $(1) driverlist $(<) > $(@)" + } + }, + } + else + dependency { + { driverssrc, driverlist, true }, + } + custombuildtask { + { + driverlist, + driverssrc, + { MAME_DIR .. "scripts/build/makedep.py" }, + { + "@echo Building driver list...", + PYTHON .. " $(1) driverlist $(<) > $(@)" + } + }, + } end configuration { "mingw*" } -- cgit v1.2.3-70-g09d2