blob: f82504bd6c54a72014c382512cc61f3c51f38ba2 [file] [log] [blame]
Eugene Kliuchnikov378485b2016-06-16 10:52:57 +02001-- A solution contains projects, and defines the available configurations
2solution "brotli"
3configurations { "Release", "Debug" }
Eugene Kliuchnikov378485b2016-06-16 10:52:57 +02004targetdir "bin"
Eugene Kliuchnikovb32cefe2016-06-17 16:24:51 +02005location "buildfiles"
Eugene Kliuchnikov378485b2016-06-16 10:52:57 +02006flags "RelativeLinks"
7
8filter "configurations:Release"
9 optimize "Speed"
10 flags { "StaticRuntime" }
11
12filter "configurations:Debug"
13 flags { "Symbols" }
14
Eugene Kliuchnikov378485b2016-06-16 10:52:57 +020015configuration { "gmake" }
16 buildoptions { "-Wall -fno-omit-frame-pointer" }
Eugene Kliuchnikovb32cefe2016-06-17 16:24:51 +020017 location "buildfiles/gmake"
18
Eugene Kliuchnikov6a078b12016-06-20 17:20:17 +020019configuration { "xcode4" }
20 location "buildfiles/xcode4"
21
Eugene Kliuchnikovb32cefe2016-06-17 16:24:51 +020022configuration "linux"
23 links "m"
Eugene Kliuchnikov378485b2016-06-16 10:52:57 +020024
25configuration { "macosx" }
Evgenii Kliuchnikov52ff8172016-06-24 15:32:51 +020026 defines { "OS_MACOSX" }
Eugene Kliuchnikov378485b2016-06-16 10:52:57 +020027
28project "brotli_common"
Eugene Kliuchnikov6a078b12016-06-20 17:20:17 +020029 kind "SharedLib"
Eugene Kliuchnikov378485b2016-06-16 10:52:57 +020030 language "C"
31 files { "common/**.h", "common/**.c" }
32
Evgenii Kliuchnikov52ff8172016-06-24 15:32:51 +020033project "brotli_common_static"
34 kind "StaticLib"
35 targetname "brotli_common"
36 language "C"
37 files { "common/**.h", "common/**.c" }
38
Eugene Kliuchnikov378485b2016-06-16 10:52:57 +020039project "brotli_dec"
Eugene Kliuchnikov6a078b12016-06-20 17:20:17 +020040 kind "SharedLib"
Eugene Kliuchnikov378485b2016-06-16 10:52:57 +020041 language "C"
42 files { "dec/**.h", "dec/**.c" }
43 links "brotli_common"
44
Evgenii Kliuchnikov52ff8172016-06-24 15:32:51 +020045project "brotli_dec_static"
46 kind "StaticLib"
47 targetname "brotli_dec"
48 language "C"
49 files { "dec/**.h", "dec/**.c" }
50 links "brotli_common_static"
51
Eugene Kliuchnikov378485b2016-06-16 10:52:57 +020052project "brotli_enc"
Eugene Kliuchnikov6a078b12016-06-20 17:20:17 +020053 kind "SharedLib"
Eugene Kliuchnikov378485b2016-06-16 10:52:57 +020054 language "C"
55 files { "enc/**.h", "enc/**.c" }
56 links "brotli_common"
57
Evgenii Kliuchnikov52ff8172016-06-24 15:32:51 +020058project "brotli_enc_static"
Eugene Kliuchnikov6a078b12016-06-20 17:20:17 +020059 kind "StaticLib"
Evgenii Kliuchnikov52ff8172016-06-24 15:32:51 +020060 targetname "brotli_enc"
Eugene Kliuchnikov6a078b12016-06-20 17:20:17 +020061 language "C"
Evgenii Kliuchnikov52ff8172016-06-24 15:32:51 +020062 files { "enc/**.h", "enc/**.c" }
63 links "brotli_common_static"
Eugene Kliuchnikov6a078b12016-06-20 17:20:17 +020064
Eugene Kliuchnikov378485b2016-06-16 10:52:57 +020065project "bro"
66 kind "ConsoleApp"
Eugene Kliuchnikovb32cefe2016-06-17 16:24:51 +020067 language "C"
Evgenii Kliuchnikov52ff8172016-06-24 15:32:51 +020068 linkoptions "-static"
Eugene Kliuchnikovb32cefe2016-06-17 16:24:51 +020069 files { "tools/bro.c" }
Evgenii Kliuchnikov52ff8172016-06-24 15:32:51 +020070 links { "brotli_common_static", "brotli_dec_static", "brotli_enc_static" }