blob: 085236fdbab91d458de81c1fc0af791b51750724 [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"
Eugene Kliuchnikov81480012016-08-23 14:40:33 +02007includedirs { "include" }
Eugene Kliuchnikov378485b2016-06-16 10:52:57 +02008
9filter "configurations:Release"
10 optimize "Speed"
11 flags { "StaticRuntime" }
12
13filter "configurations:Debug"
14 flags { "Symbols" }
15
Eugene Kliuchnikov378485b2016-06-16 10:52:57 +020016configuration { "gmake" }
17 buildoptions { "-Wall -fno-omit-frame-pointer" }
Eugene Kliuchnikovb32cefe2016-06-17 16:24:51 +020018 location "buildfiles/gmake"
19
Eugene Kliuchnikov6a078b12016-06-20 17:20:17 +020020configuration { "xcode4" }
21 location "buildfiles/xcode4"
22
Eugene Kliuchnikovb32cefe2016-06-17 16:24:51 +020023configuration "linux"
24 links "m"
Eugene Kliuchnikov378485b2016-06-16 10:52:57 +020025
26configuration { "macosx" }
Evgenii Kliuchnikov52ff8172016-06-24 15:32:51 +020027 defines { "OS_MACOSX" }
Eugene Kliuchnikov378485b2016-06-16 10:52:57 +020028
29project "brotli_common"
Eugene Kliuchnikov6a078b12016-06-20 17:20:17 +020030 kind "SharedLib"
Eugene Kliuchnikov378485b2016-06-16 10:52:57 +020031 language "C"
Eugene Kliuchnikov81480012016-08-23 14:40:33 +020032 files { "common/**.h", "common/**.c" }
Eugene Kliuchnikov378485b2016-06-16 10:52:57 +020033
Evgenii Kliuchnikov52ff8172016-06-24 15:32:51 +020034project "brotli_common_static"
35 kind "StaticLib"
36 targetname "brotli_common"
37 language "C"
Eugene Kliuchnikov81480012016-08-23 14:40:33 +020038 files { "common/**.h", "common/**.c" }
Evgenii Kliuchnikov52ff8172016-06-24 15:32:51 +020039
Eugene Kliuchnikov378485b2016-06-16 10:52:57 +020040project "brotli_dec"
Eugene Kliuchnikov6a078b12016-06-20 17:20:17 +020041 kind "SharedLib"
Eugene Kliuchnikov378485b2016-06-16 10:52:57 +020042 language "C"
Eugene Kliuchnikov81480012016-08-23 14:40:33 +020043 files { "dec/**.h", "dec/**.c" }
Eugene Kliuchnikov378485b2016-06-16 10:52:57 +020044 links "brotli_common"
45
Evgenii Kliuchnikov52ff8172016-06-24 15:32:51 +020046project "brotli_dec_static"
47 kind "StaticLib"
48 targetname "brotli_dec"
49 language "C"
Eugene Kliuchnikov81480012016-08-23 14:40:33 +020050 files { "dec/**.h", "dec/**.c" }
Evgenii Kliuchnikov52ff8172016-06-24 15:32:51 +020051 links "brotli_common_static"
52
Eugene Kliuchnikov378485b2016-06-16 10:52:57 +020053project "brotli_enc"
Eugene Kliuchnikov6a078b12016-06-20 17:20:17 +020054 kind "SharedLib"
Eugene Kliuchnikov378485b2016-06-16 10:52:57 +020055 language "C"
Eugene Kliuchnikov81480012016-08-23 14:40:33 +020056 files { "enc/**.h", "enc/**.c" }
Eugene Kliuchnikov378485b2016-06-16 10:52:57 +020057 links "brotli_common"
58
Evgenii Kliuchnikov52ff8172016-06-24 15:32:51 +020059project "brotli_enc_static"
Eugene Kliuchnikov6a078b12016-06-20 17:20:17 +020060 kind "StaticLib"
Evgenii Kliuchnikov52ff8172016-06-24 15:32:51 +020061 targetname "brotli_enc"
Eugene Kliuchnikov6a078b12016-06-20 17:20:17 +020062 language "C"
Eugene Kliuchnikov81480012016-08-23 14:40:33 +020063 files { "enc/**.h", "enc/**.c" }
Evgenii Kliuchnikov52ff8172016-06-24 15:32:51 +020064 links "brotli_common_static"
Eugene Kliuchnikov6a078b12016-06-20 17:20:17 +020065
Eugene Kliuchnikov378485b2016-06-16 10:52:57 +020066project "bro"
67 kind "ConsoleApp"
Eugene Kliuchnikovb32cefe2016-06-17 16:24:51 +020068 language "C"
Evgenii Kliuchnikov52ff8172016-06-24 15:32:51 +020069 linkoptions "-static"
Eugene Kliuchnikovb32cefe2016-06-17 16:24:51 +020070 files { "tools/bro.c" }
Evgenii Kliuchnikov52ff8172016-06-24 15:32:51 +020071 links { "brotli_common_static", "brotli_dec_static", "brotli_enc_static" }