1-- A solution contains projects, and defines the available configurations 2solution "brotli" 3configurations { "Release", "Debug" } 4platforms { "x64", "x86" } 5targetdir "bin" 6location "buildfiles" 7flags "RelativeLinks" 8includedirs { "c/include" } 9 10filter "configurations:Release" 11 optimize "Speed" 12 flags { "StaticRuntime" } 13 14filter "configurations:Debug" 15 flags { "Symbols" } 16 17filter { "platforms:x64" } 18 architecture "x86_64" 19 20filter { "platforms:x86" } 21 architecture "x86" 22 23configuration { "gmake" } 24 buildoptions { "-Wall -fno-omit-frame-pointer" } 25 location "buildfiles/gmake" 26 27configuration { "xcode4" } 28 location "buildfiles/xcode4" 29 30configuration "linux" 31 links "m" 32 33configuration { "macosx" } 34 defines { "OS_MACOSX" } 35 36project "brotlicommon" 37 kind "SharedLib" 38 language "C" 39 files { "c/common/**.h", "c/common/**.c" } 40 41project "brotlicommon_static" 42 kind "StaticLib" 43 targetname "brotlicommon" 44 language "C" 45 files { "c/common/**.h", "c/common/**.c" } 46 47project "brotlidec" 48 kind "SharedLib" 49 language "C" 50 files { "c/dec/**.h", "c/dec/**.c" } 51 links "brotlicommon" 52 53project "brotlidec_static" 54 kind "StaticLib" 55 targetname "brotlidec" 56 language "C" 57 files { "c/dec/**.h", "c/dec/**.c" } 58 links "brotlicommon_static" 59 60project "brotlienc" 61 kind "SharedLib" 62 language "C" 63 files { "c/enc/**.h", "c/enc/**.c" } 64 links "brotlicommon" 65 66project "brotlienc_static" 67 kind "StaticLib" 68 targetname "brotlienc" 69 language "C" 70 files { "c/enc/**.h", "c/enc/**.c" } 71 links "brotlicommon_static" 72 73project "brotli" 74 kind "ConsoleApp" 75 language "C" 76 linkoptions "-static" 77 files { "c/tools/brotli.c" } 78 links { "brotlicommon_static", "brotlidec_static", "brotlienc_static" } 79