[buildout]
extends =
  ../coreutils/buildout.cfg
  ../libexpat/buildout.cfg
  ../openssl/buildout.cfg
  ../pcre/buildout.cfg
  ../zlib/buildout.cfg

parts = nginx-output

[nginx-common]
recipe = slapos.recipe.cmmi
shared = true
url = https://nginx.org/download/nginx-1.27.2.tar.gz
md5sum = a0411bcbd1ff88bb2ea542af2ef57314

[nginx]
<= nginx-common
configure-options=
  --with-http_ssl_module
  --with-http_v2_module
  --with-http_gzip_static_module
  --with-http_realip_module
  --with-http_sub_module
  --with-mail
  --with-mail_ssl_module
  --with-ld-opt="-L ${openssl:location}/lib -L ${pcre:location}/lib -L ${zlib:location}/lib -Wl,-rpath=${openssl:location}/lib -Wl,-rpath=${pcre:location}/lib -Wl,-rpath=${zlib:location}/lib"
  --with-cc-opt="-I ${openssl:location}/include -I ${pcre:location}/include -I ${zlib:location}/include"

[nginx-dav-ext-module]
recipe = slapos.recipe.build:download-unpacked
shared = true
url = https://github.com/arut/nginx-dav-ext-module/archive/v0.0.3.tar.gz
strip-top-level-dir = true
md5sum = 2cb502dbda335be4ebd5fed0b3182bae

[nginx-webdav]
<= nginx-common
configure-options =
  --with-ipv6
  --with-http_ssl_module
  --with-http_v2_module
  --with-http_gzip_static_module
  --with-mail
  --with-mail_ssl_module
  --error-log-path=var/log/nginx.error.log
  --with-ld-opt=" -L ${libexpat:location}/lib -L ${openssl:location}/lib -L ${pcre:location}/lib -L ${zlib:location}/lib -Wl,-rpath=${libexpat:location}/lib -Wl,-rpath=${openssl:location}/lib -Wl,-rpath=${pcre:location}/lib -Wl,-rpath=${zlib:location}/lib"
  --with-cc-opt="-I ${libexpat:location}/include -I ${openssl:location}/include -I ${pcre:location}/include -I ${zlib:location}/include"
  --with-http_dav_module 
  --add-module='${nginx-dav-ext-module:location}'

[nginx-output]
# Shared binary location to ease migration
recipe = plone.recipe.command
stop-on-error = true
update-command = ${:command}
command = ${coreutils-output:test} -x ${:nginx} -a -f ${:mime}
nginx = ${nginx:location}/sbin/nginx
mime = ${nginx:location}/conf/mime.types

[nginx-push-stream-module]
recipe = slapos.recipe.build:download-unpacked
shared = true
url = https://github.com/wandenberg/nginx-push-stream-module/archive/8c02220d484d7848bc8e3a6d9b1c616987e86f66.tar.gz
md5sum = c8f18a4a7f7c871291c823aace50e1f9

[nginx-push-stream]
<= nginx-common
configure-options=
  --with-ipv6
  --with-http_ssl_module
  --with-http_v2_module
  --with-http_gzip_static_module
  --with-ld-opt="-L ${zlib:location}/lib -L ${openssl:location}/lib -L ${pcre:location}/lib  -Wl,-rpath=${pcre:location}/lib -Wl,-rpath=${zlib:location}/lib -Wl,-rpath=${openssl:location}/lib"
  --with-cc-opt="-I ${pcre:location}/include -I ${openssl:location}/include -I ${zlib:location}/include -Wno-error"
  --add-module=${nginx-push-stream-module:location}

[nginx-push-stream-output]
<= nginx-output
nginx = ${nginx-push-stream:location}/sbin/nginx
mime = ${nginx-push-stream:location}/conf/mime.types
