-- A solution contains projects, and defines the available configurations solution "brotli" configurations { "Release", "Debug" } platforms { "x64", "x86" } targetdir "bin" location "buildfiles" flags "RelativeLinks" includedirs { "c/include" } filter "configurations:Release" optimize "Speed" flags { "StaticRuntime" } filter "configurations:Debug" flags { "Symbols" } filter { "platforms:x64" } architecture "x86_64" filter { "platforms:x86" } architecture "x86" configuration { "gmake" } buildoptions { "-Wall -fno-omit-frame-pointer" } location "buildfiles/gmake" configuration { "xcode4" } location "buildfiles/xcode4" configuration "linux" links "m" configuration { "macosx" } defines { "OS_MACOSX" } project "brotlicommon" kind "SharedLib" language "C" files { "c/common/**.h", "c/common/**.c" } project "brotlicommon_static" kind "StaticLib" targetname "brotlicommon" language "C" files { "c/common/**.h", "c/common/**.c" } project "brotlidec" kind "SharedLib" language "C" files { "c/dec/**.h", "c/dec/**.c" } links "brotlicommon" project "brotlidec_static" kind "StaticLib" targetname "brotlidec" language "C" files { "c/dec/**.h", "c/dec/**.c" } links "brotlicommon_static" project "brotlienc" kind "SharedLib" language "C" files { "c/enc/**.h", "c/enc/**.c" } links "brotlicommon" project "brotlienc_static" kind "StaticLib" targetname "brotlienc" language "C" files { "c/enc/**.h", "c/enc/**.c" } links "brotlicommon_static" project "brotli" kind "ConsoleApp" language "C" linkoptions "-static" files { "c/tools/brotli.c" } links { "brotlicommon_static", "brotlidec_static", "brotlienc_static" }