winamp/Src/external_dependencies/openmpt-trunk/build/genie/genie.lua

73 lines
1.9 KiB
Lua

-- genie gets a tiny bit confused if the same project appears in multiple
-- solutions in a single run. genie adds a bogus $projectname path to the
-- intermediate objects directory in that case. work-around using multiple
-- invocations of genie and a custom option to distinguish them.
newoption {
trigger = "group",
value = "PROJECTS",
description = "OpenMPT project group",
allowed = {
{ "libopenmpt", "libopenmpt" },
}
}
newoption {
trigger = "target",
value = "PROJECTS",
description = "windows target platform",
allowed = {
{ "windesktop81", "windesktop81" },
{ "winphone8" , "winphone8" },
{ "winphone81" , "winphone81" },
{ "winstore81" , "winstore81" },
{ "winstore82" , "winstore82" },
{ "winstore10" , "winstore10" },
}
}
if _ACTION == "vs2019" then
if _OPTIONS["target"] == "windesktop81" then
mpt_projectpathname = "vs2019win81"
mpt_bindirsuffix = "win81"
end
if _OPTIONS["target"] == "winstore10" then
mpt_projectpathname = "vs2019uwp"
mpt_bindirsuffix = "uwp"
end
end
if _ACTION == "vs2017" then
if _OPTIONS["target"] == "windesktop81" then
mpt_projectpathname = "vs2017win81"
mpt_bindirsuffix = "win81"
end
if _OPTIONS["target"] == "winstore82" then
mpt_projectpathname = "vs2017uwp"
mpt_bindirsuffix = "uwp"
end
end
--mpt_projectpathname = _OPTIONS["target"]
--mpt_bindirsuffix = _OPTIONS["target"]
solution "libopenmpt"
location ( "../../build/" .. mpt_projectpathname )
configurations { "Debug", "Release", "DebugShared", "ReleaseShared" }
if _OPTIONS["target"] == "winstore10" then
platforms { "x32", "x64", "ARM", "ARM64" }
else
platforms { "x32", "x64", "ARM" }
end
dofile "../../build/genie/mpt-libopenmpt.lua"
dofile "../../build/genie/ext-mpg123.lua"
dofile "../../build/genie/ext-ogg.lua"
dofile "../../build/genie/ext-vorbis.lua"
dofile "../../build/genie/ext-zlib.lua"