95 lines
1.8 KiB
Lua
95 lines
1.8 KiB
Lua
TOOL.Name = "ShaderNodes"
|
|
|
|
TOOL.ClientOnly = true
|
|
TOOL.EnableConsole = true
|
|
TOOL.Kind = "Application"
|
|
TOOL.TargetDirectory = "../bin"
|
|
|
|
TOOL.Defines = {
|
|
"NODE_EDITOR_SHARED"
|
|
}
|
|
|
|
TOOL.Includes = {
|
|
"../include",
|
|
"../src"
|
|
}
|
|
|
|
TOOL.ExtIncludes = {
|
|
"../extlibs/include"
|
|
}
|
|
|
|
TOOL.Files = {
|
|
"../src/ShaderNode/**.hpp",
|
|
"../src/ShaderNode/**.inl",
|
|
"../src/ShaderNode/**.cpp"
|
|
}
|
|
|
|
TOOL.Libraries = {
|
|
"NazaraCore%s(-s)%d(-d)",
|
|
"NazaraShader%s(-s)%d(-d)",
|
|
"NazaraUtility%s(-s)%d(-d)",
|
|
"Qt5Core%d(d)",
|
|
"Qt5Gui%d(d)",
|
|
"Qt5Widgets%d(d)",
|
|
"nodes%d(d)"
|
|
}
|
|
|
|
local function AppendValues(tab, value)
|
|
if (type(value) == "table") then
|
|
for _, v in pairs(value) do
|
|
AppendValues(tab, v)
|
|
end
|
|
else
|
|
table.insert(tab, value)
|
|
end
|
|
end
|
|
|
|
function TOOL:ValidateLib(libName)
|
|
local config = NazaraBuild:GetConfig()
|
|
local includes = config[libName .. "IncludeDir"]
|
|
local binDir32 = config[libName .. "BinDir_x86"]
|
|
local binDir64 = config[libName .. "BinDir_x64"]
|
|
local libDir32 = config[libName .. "LibDir_x86"]
|
|
local libDir64 = config[libName .. "LibDir_x64"]
|
|
if (not includes) then
|
|
return false, "missing " .. libName .. " includes directories in config.lua"
|
|
end
|
|
|
|
if (not libDir32 and not libDir64) then
|
|
return false, "missing " .. libName .. " library search directories in config.lua"
|
|
end
|
|
|
|
AppendValues(self.Includes, includes)
|
|
|
|
if (binDir32) then
|
|
AppendValues(self.BinaryPaths.x86, binDir32)
|
|
end
|
|
|
|
if (binDir64) then
|
|
AppendValues(self.BinaryPaths.x64, binDir64)
|
|
end
|
|
|
|
if (libDir32) then
|
|
AppendValues(self.LibraryPaths.x86, libDir32)
|
|
end
|
|
|
|
if (libDir64) then
|
|
AppendValues(self.LibraryPaths.x64, libDir64)
|
|
end
|
|
|
|
return true
|
|
end
|
|
|
|
function TOOL:Validate()
|
|
local success, err = self:ValidateLib("Qt5")
|
|
if (not success) then
|
|
return false, err
|
|
end
|
|
|
|
local success, err = self:ValidateLib("QtNodes")
|
|
if (not success) then
|
|
return false, err
|
|
end
|
|
|
|
return true
|
|
end |