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