Eugene Kliuchnikov | 378485b | 2016-06-16 10:52:57 +0200 | [diff] [blame] | 1 | -- A solution contains projects, and defines the available configurations |
| 2 | solution "brotli" |
| 3 | configurations { "Release", "Debug" } |
Eugene Kliuchnikov | 378485b | 2016-06-16 10:52:57 +0200 | [diff] [blame] | 4 | targetdir "bin" |
Eugene Kliuchnikov | b32cefe | 2016-06-17 16:24:51 +0200 | [diff] [blame] | 5 | location "buildfiles" |
Eugene Kliuchnikov | 378485b | 2016-06-16 10:52:57 +0200 | [diff] [blame] | 6 | flags "RelativeLinks" |
| 7 | |
| 8 | filter "configurations:Release" |
| 9 | optimize "Speed" |
| 10 | flags { "StaticRuntime" } |
| 11 | |
| 12 | filter "configurations:Debug" |
| 13 | flags { "Symbols" } |
| 14 | |
Eugene Kliuchnikov | 378485b | 2016-06-16 10:52:57 +0200 | [diff] [blame] | 15 | configuration { "gmake" } |
| 16 | buildoptions { "-Wall -fno-omit-frame-pointer" } |
Eugene Kliuchnikov | b32cefe | 2016-06-17 16:24:51 +0200 | [diff] [blame] | 17 | location "buildfiles/gmake" |
| 18 | |
Eugene Kliuchnikov | 6a078b1 | 2016-06-20 17:20:17 +0200 | [diff] [blame] | 19 | configuration { "xcode4" } |
| 20 | location "buildfiles/xcode4" |
| 21 | |
Eugene Kliuchnikov | b32cefe | 2016-06-17 16:24:51 +0200 | [diff] [blame] | 22 | configuration "linux" |
| 23 | links "m" |
Eugene Kliuchnikov | 378485b | 2016-06-16 10:52:57 +0200 | [diff] [blame] | 24 | |
| 25 | configuration { "macosx" } |
Evgenii Kliuchnikov | 52ff817 | 2016-06-24 15:32:51 +0200 | [diff] [blame^] | 26 | defines { "OS_MACOSX" } |
Eugene Kliuchnikov | 378485b | 2016-06-16 10:52:57 +0200 | [diff] [blame] | 27 | |
| 28 | project "brotli_common" |
Eugene Kliuchnikov | 6a078b1 | 2016-06-20 17:20:17 +0200 | [diff] [blame] | 29 | kind "SharedLib" |
Eugene Kliuchnikov | 378485b | 2016-06-16 10:52:57 +0200 | [diff] [blame] | 30 | language "C" |
| 31 | files { "common/**.h", "common/**.c" } |
| 32 | |
Evgenii Kliuchnikov | 52ff817 | 2016-06-24 15:32:51 +0200 | [diff] [blame^] | 33 | project "brotli_common_static" |
| 34 | kind "StaticLib" |
| 35 | targetname "brotli_common" |
| 36 | language "C" |
| 37 | files { "common/**.h", "common/**.c" } |
| 38 | |
Eugene Kliuchnikov | 378485b | 2016-06-16 10:52:57 +0200 | [diff] [blame] | 39 | project "brotli_dec" |
Eugene Kliuchnikov | 6a078b1 | 2016-06-20 17:20:17 +0200 | [diff] [blame] | 40 | kind "SharedLib" |
Eugene Kliuchnikov | 378485b | 2016-06-16 10:52:57 +0200 | [diff] [blame] | 41 | language "C" |
| 42 | files { "dec/**.h", "dec/**.c" } |
| 43 | links "brotli_common" |
| 44 | |
Evgenii Kliuchnikov | 52ff817 | 2016-06-24 15:32:51 +0200 | [diff] [blame^] | 45 | project "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 Kliuchnikov | 378485b | 2016-06-16 10:52:57 +0200 | [diff] [blame] | 52 | project "brotli_enc" |
Eugene Kliuchnikov | 6a078b1 | 2016-06-20 17:20:17 +0200 | [diff] [blame] | 53 | kind "SharedLib" |
Eugene Kliuchnikov | 378485b | 2016-06-16 10:52:57 +0200 | [diff] [blame] | 54 | language "C" |
| 55 | files { "enc/**.h", "enc/**.c" } |
| 56 | links "brotli_common" |
| 57 | |
Evgenii Kliuchnikov | 52ff817 | 2016-06-24 15:32:51 +0200 | [diff] [blame^] | 58 | project "brotli_enc_static" |
Eugene Kliuchnikov | 6a078b1 | 2016-06-20 17:20:17 +0200 | [diff] [blame] | 59 | kind "StaticLib" |
Evgenii Kliuchnikov | 52ff817 | 2016-06-24 15:32:51 +0200 | [diff] [blame^] | 60 | targetname "brotli_enc" |
Eugene Kliuchnikov | 6a078b1 | 2016-06-20 17:20:17 +0200 | [diff] [blame] | 61 | language "C" |
Evgenii Kliuchnikov | 52ff817 | 2016-06-24 15:32:51 +0200 | [diff] [blame^] | 62 | files { "enc/**.h", "enc/**.c" } |
| 63 | links "brotli_common_static" |
Eugene Kliuchnikov | 6a078b1 | 2016-06-20 17:20:17 +0200 | [diff] [blame] | 64 | |
Eugene Kliuchnikov | 378485b | 2016-06-16 10:52:57 +0200 | [diff] [blame] | 65 | project "bro" |
| 66 | kind "ConsoleApp" |
Eugene Kliuchnikov | b32cefe | 2016-06-17 16:24:51 +0200 | [diff] [blame] | 67 | language "C" |
Evgenii Kliuchnikov | 52ff817 | 2016-06-24 15:32:51 +0200 | [diff] [blame^] | 68 | linkoptions "-static" |
Eugene Kliuchnikov | b32cefe | 2016-06-17 16:24:51 +0200 | [diff] [blame] | 69 | files { "tools/bro.c" } |
Evgenii Kliuchnikov | 52ff817 | 2016-06-24 15:32:51 +0200 | [diff] [blame^] | 70 | links { "brotli_common_static", "brotli_dec_static", "brotli_enc_static" } |