File nginx-module-set-misc.spec of Package nginx-module-set-misc

# spec file for package nginx-module-set-misc
# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.

# Please submit bugfixes or comments via

%if 0%{?suse_version} != 1315 || 0%{?is_opensuse}
%bcond_without libatomic
%bcond_with    libatomic

%if 0%{?suse_version} > 1220
%bcond_without pcre_jit
%bcond_with    pcre_jit

%define project_name set-misc-nginx-module
%define nginx_moduledir %{_libdir}/nginx/modules

Name:           nginx-module-set-misc
Version:        0.32
Release:        0
Summary:        Various set_xxx directives added to nginx's rewrite module
License:        BSD-2-Clause
Group:          Productivity/Networking/Web/Proxy
Url:  {project_name}
Source1:        LICENSE
BuildRequires:  nginx-module-devel-kit-source
BuildRequires:  nginx-source
BuildRequires:  pcre-devel
%if %{with libatomic}
BuildRequires:  libatomic-ops-devel
Requires:       nginx = %(rpm -q nginx-source | rev | cut -d. --complement -f1 | cut -d"-" -f2 | rev)


This module extends the standard HttpRewriteModule's directive set to provide
more functionalities like URI escaping and unescaping, JSON quoting,
Hexadecimal/MD5/SHA1/Base32/Base64 digest encoding and decoding, random number
generator, and more!

mkdir %{project_name}
tar -xzf %{SOURCE0} --strip-components=1 -C %{project_name}
cp -r /usr/src/nginx .
cp %{SOURCE1} .

cd nginx
# configure macro cannot be used, because this configure script doesn't
# accept some options provided by the macro (like i.e. --host).
./configure                                            \
  --user=nginx --group=nginx                           \
  --without-select_module                              \
  --without-poll_module                                \
  --without-http_gzip_module                           \
  --with-threads                                       \
  --with-file-aio                                      \
  --with-ipv6                                          \
  --with-pcre                                          \
  %if %{with pcre_jit}
  --with-pcre-jit                                      \
  %if %{with libatomic}
  --with-libatomic                                     \
  --with-compat                                        \
  --add-dynamic-module=/usr/src/nginx-module-devel-kit \
  --add-dynamic-module=../%{project_name}              \
%if 0%{?suse_version} > 1220
  --with-cc-opt="%{optflags} -fPIC -D_GNU_SOURCE -std=gnu99 -fstack-protector" \
  --with-ld-opt="-Wl,-z,relro,-z,now -pie"
make modules

mkdir -p %{buildroot}%{nginx_moduledir}
install -D -m 0644 nginx/objs/ %{buildroot}%{nginx_moduledir}

%license LICENSE
%dir %{_libdir}/nginx
%dir %{nginx_moduledir}

openSUSE Build Service is sponsored by