blob: 36d1f24da9150adff64280e350a9782af43d64a0 [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 Kliuchnikov6ece1d82017-04-23 14:07:08 +02007includedirs { "c/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
Frédéric Wanged2748a2016-10-12 18:23:34 +020029project "brotlicommon"
Eugene Kliuchnikov6a078b12016-06-20 17:20:17 +020030 kind "SharedLib"
Eugene Kliuchnikov378485b2016-06-16 10:52:57 +020031 language "C"
Eugene Kliuchnikov6ece1d82017-04-23 14:07:08 +020032 files { "c/common/**.h", "c/common/**.c" }
Eugene Kliuchnikov378485b2016-06-16 10:52:57 +020033
Frédéric Wanged2748a2016-10-12 18:23:34 +020034project "brotlicommon_static"
Evgenii Kliuchnikov52ff8172016-06-24 15:32:51 +020035 kind "StaticLib"
Frédéric Wanged2748a2016-10-12 18:23:34 +020036 targetname "brotlicommon"
Evgenii Kliuchnikov52ff8172016-06-24 15:32:51 +020037 language "C"
Eugene Kliuchnikov6ece1d82017-04-23 14:07:08 +020038 files { "c/common/**.h", "c/common/**.c" }
Evgenii Kliuchnikov52ff8172016-06-24 15:32:51 +020039
Frédéric Wanged2748a2016-10-12 18:23:34 +020040project "brotlidec"
Eugene Kliuchnikov6a078b12016-06-20 17:20:17 +020041 kind "SharedLib"
Eugene Kliuchnikov378485b2016-06-16 10:52:57 +020042 language "C"
Eugene Kliuchnikov6ece1d82017-04-23 14:07:08 +020043 files { "c/dec/**.h", "c/dec/**.c" }
Frédéric Wanged2748a2016-10-12 18:23:34 +020044 links "brotlicommon"
Eugene Kliuchnikov378485b2016-06-16 10:52:57 +020045
Frédéric Wanged2748a2016-10-12 18:23:34 +020046project "brotlidec_static"
Evgenii Kliuchnikov52ff8172016-06-24 15:32:51 +020047 kind "StaticLib"
Frédéric Wanged2748a2016-10-12 18:23:34 +020048 targetname "brotlidec"
Evgenii Kliuchnikov52ff8172016-06-24 15:32:51 +020049 language "C"
Eugene Kliuchnikov6ece1d82017-04-23 14:07:08 +020050 files { "c/dec/**.h", "c/dec/**.c" }
Frédéric Wanged2748a2016-10-12 18:23:34 +020051 links "brotlicommon_static"
Evgenii Kliuchnikov52ff8172016-06-24 15:32:51 +020052
Frédéric Wanged2748a2016-10-12 18:23:34 +020053project "brotlienc"
Eugene Kliuchnikov6a078b12016-06-20 17:20:17 +020054 kind "SharedLib"
Eugene Kliuchnikov378485b2016-06-16 10:52:57 +020055 language "C"
Eugene Kliuchnikov6ece1d82017-04-23 14:07:08 +020056 files { "c/enc/**.h", "c/enc/**.c" }
Frédéric Wanged2748a2016-10-12 18:23:34 +020057 links "brotlicommon"
Eugene Kliuchnikov378485b2016-06-16 10:52:57 +020058
Frédéric Wanged2748a2016-10-12 18:23:34 +020059project "brotlienc_static"
Eugene Kliuchnikov6a078b12016-06-20 17:20:17 +020060 kind "StaticLib"
Frédéric Wanged2748a2016-10-12 18:23:34 +020061 targetname "brotlienc"
Eugene Kliuchnikov6a078b12016-06-20 17:20:17 +020062 language "C"
Eugene Kliuchnikov6ece1d82017-04-23 14:07:08 +020063 files { "c/enc/**.h", "c/enc/**.c" }
Frédéric Wanged2748a2016-10-12 18:23:34 +020064 links "brotlicommon_static"
Eugene Kliuchnikov6a078b12016-06-20 17:20:17 +020065
Eugene Kliuchnikov03739d22017-05-29 17:55:14 +020066project "brotli"
Eugene Kliuchnikov378485b2016-06-16 10:52:57 +020067 kind "ConsoleApp"
Eugene Kliuchnikovb32cefe2016-06-17 16:24:51 +020068 language "C"
Evgenii Kliuchnikov52ff8172016-06-24 15:32:51 +020069 linkoptions "-static"
Eugene Kliuchnikov03739d22017-05-29 17:55:14 +020070 files { "c/tools/brotli.c" }
Frédéric Wanged2748a2016-10-12 18:23:34 +020071 links { "brotlicommon_static", "brotlidec_static", "brotlienc_static" }