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 http://bugs.opensuse.org/
#
%if 0%{?suse_version} != 1315 || 0%{?is_opensuse}
%bcond_without libatomic
%else
%bcond_with libatomic
%endif
%if 0%{?suse_version} > 1220
%bcond_without pcre_jit
%else
%bcond_with pcre_jit
%endif
%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: https://github.com/openresty/%{project_name}
Source: https://github.com/openresty/%{project_name}/archive/v%{version}.tar.gz#/%{project_name}-%{version}.tar.gz
Source1: LICENSE
BuildRequires: nginx-module-devel-kit-source
BuildRequires: nginx-source
BuildRequires: pcre-devel
%if %{with libatomic}
BuildRequires: libatomic-ops-devel
%endif
Requires: nginx = %(rpm -q nginx-source | rev | cut -d. --complement -f1 | cut -d"-" -f2 | rev)
%description
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!
%prep
mkdir %{project_name}
tar -xzf %{SOURCE0} --strip-components=1 -C %{project_name}
cp -r /usr/src/nginx .
cp %{SOURCE1} .
%build
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 \
%endif
%if %{with libatomic}
--with-libatomic \
%endif
--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"
%else
--with-cc-opt="%{optflags}"
%endif
make modules
%install
mkdir -p %{buildroot}%{nginx_moduledir}
install -D -m 0644 nginx/objs/ngx_http_set_misc_module.so %{buildroot}%{nginx_moduledir}
%files
%license LICENSE
%dir %{_libdir}/nginx
%dir %{nginx_moduledir}
%{nginx_moduledir}/ngx_http_set_misc_module.so
%changelog