Bazel: add support for building ngx_brotli with Bazel. Change-Id: I1eb63fcd07d6ceffa329ba3cc6b82f3bb5c8a736 Signed-off-by: Piotr Sikora <piotrsikora@google.com> Reviewed-on: https://nginx-review.googlesource.com/1022 Reviewed-by: Martin Maly <mmaly@google.com>
diff --git a/BUILD b/BUILD new file mode 100644 index 0000000..2cf1f69 --- /dev/null +++ b/BUILD
@@ -0,0 +1,82 @@ +# Copyright (C) 2015 Google Inc. +# All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# 1. Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# 2. Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# +# THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +# ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +# SUCH DAMAGE. + +licenses(["notice"]) # BSD license + +exports_files(["LICENSE"]) + +genrule( + name = "ngx_modules_c", + srcs = [ + "//nginx:modules", + ], + outs = [ + "ngx_modules.c", + ], + cmd = "cp -p $(<) $(@)", +) + +cc_library( + name = "http_brotli_filter", + srcs = [ + "src/ngx_http_brotli_filter_module.cc", + ], + defines = [ + "NGX_HTTP_BROTLI_FILTER", + ], + visibility = [ + "//visibility:public", + ], + deps = [ + "//external:brotli_enc", + "//nginx:http", + ], +) + +cc_library( + name = "http_brotli_static", + srcs = [ + "src/ngx_http_brotli_static_module.c", + ], + defines = [ + "NGX_HTTP_BROTLI_STATIC", + ], + visibility = [ + "//visibility:public", + ], + deps = [ + "//nginx:http", + ], +) + +cc_binary( + name = "nginx", + srcs = [ + "ngx_modules.c", + ], + deps = [ + ":http_brotli_filter", + ":http_brotli_static", + ], +)
diff --git a/config b/config index b72dc17..90c04e1 100644 --- a/config +++ b/config
@@ -35,7 +35,7 @@ $ngx_addon_dir/src/ngx_http_brotli_static_module.c" have=NGX_HTTP_GZIP . auto/have -have=NGX_HTTP_BROTLI_STATIC_MODULE . auto/have +have=NGX_HTTP_BROTLI_STATIC . auto/have if [ -n "$NGX_BROTLI_STATIC_MODULE_ONLY" ]; then return @@ -119,4 +119,4 @@ NGX_ADDON_SRCS="$NGX_ADDON_SRCS \ $ngx_addon_dir/src/ngx_http_brotli_filter_module.cc" -have=NGX_HTTP_BROTLI_FILTER_MODULE . auto/have +have=NGX_HTTP_BROTLI_FILTER . auto/have