| /* Copyright 2016 Google Inc. All Rights Reserved. | |
| Distributed under MIT license. | |
| See file LICENSE for detail or copy at https://opensource.org/licenses/MIT | |
| */ | |
| /* Version definition. */ | |
| #ifndef BROTLI_COMMON_VERSION_H_ | |
| #define BROTLI_COMMON_VERSION_H_ | |
| /* Compose 3 components into a single number. In a hexadecimal representation | |
| B and C components occupy exactly 3 digits. */ | |
| #define BROTLI_MAKE_HEX_VERSION(A, B, C) ((A << 24) | (B << 12) | C) | |
| /* Those macros should only be used when library is compiled together with | |
| the client. If library is dynamically linked, use BrotliDecoderVersion and | |
| BrotliEncoderVersion methods. */ | |
| #define BROTLI_VERSION_MAJOR 1 | |
| #define BROTLI_VERSION_MINOR 1 | |
| #define BROTLI_VERSION_PATCH 0 | |
| #define BROTLI_VERSION BROTLI_MAKE_HEX_VERSION( \ | |
| BROTLI_VERSION_MAJOR, BROTLI_VERSION_MINOR, BROTLI_VERSION_PATCH) | |
| /* This macro is used by build system to produce Libtool-friendly soname. See | |
| https://www.gnu.org/software/libtool/manual/html_node/Libtool-versioning.html | |
| Version evolution rules: | |
| - interfaces added (or change is compatible) -> current+1:0:age+1 | |
| - interfaces removed (or changed is incompatible) -> current+1:0:0 | |
| - interfaces not changed -> current:revision+1:age | |
| */ | |
| #define BROTLI_ABI_CURRENT 2 | |
| #define BROTLI_ABI_REVISION 0 | |
| #define BROTLI_ABI_AGE 1 | |
| #if BROTLI_VERSION_MAJOR != (BROTLI_ABI_CURRENT - BROTLI_ABI_AGE) | |
| #error ABI/API version inconsistency | |
| #endif | |
| #if BROTLI_VERSION_MINOR != BROTLI_ABI_AGE | |
| #error ABI/API version inconsistency | |
| #endif | |
| #if BROTLI_VERSION_PATCH != BROTLI_ABI_REVISION | |
| #error ABI/API version inconsistency | |
| #endif | |
| #endif /* BROTLI_COMMON_VERSION_H_ */ |