fmt = { settings = nil } function fmt.setup(settings) if not settings.source then error("Missing source.") end fmt.settings = settings end function fmt.import() if not fmt.settings then error("Run fmt.setup first") end links { "fmt" } fmt.includes() end function fmt.includes() if not fmt.settings then error("Run fmt.setup first") end includedirs { fmt.settings.source } end function fmt.project() if not fmt.settings then error("Run fmt.setup first") end project "fmt" language "C++" fmt.includes() files { path.join(fmt.settings.source, "fmt/*.cc"), path.join(fmt.settings.source, "fmt/*.h"), } -- not our code, ignore POSIX usage warnings for now warnings "Off" defines { "_LIB" } removedefines { "_USRDLL", "_DLL" } kind "StaticLib" end