# Disable strict symbol checks in the link editor. # See: https://src.fedoraproject.org/rpms/redhat-rpm-config/c/078af19 %undefine _strict_symbol_defs_build # gperftools exist only on selected arches # gperftools *detection* is failing on ppc64*, possibly only configure # bug, but disable anyway. %ifnarch s390 s390x ppc64 ppc64le %global with_gperftools 1 %endif %if 0%{?fedora} > 22 %global with_mailcap_mimetypes 1 %endif # Create a source package %define with_source_pkg 1 # Nginx modules %bcond_with geoip # Nginx extra features patches %global with_extra_features 1 # Hardening and optimizations %global _hardened_build 1 %global with_optimizations 1 # Nginx extra features and hacks %if 0%{with_extra_features} # Nginx features %define with_http_v2_hpack_enc 1 %define with_dynamic_tls 1 %define with_io_uring 1 %define with_strict_sni 1 # Build with libatomic_ops %define with_libatomic 1 # Enable jemalloc optimizations %define with_jemalloc 1 # Build with local SSL %define with_local_ssl 1 # OpenSSL features/patches %define with_tls13_ciphers 1 %define with_chacha_draft 1 # Cloudflare optimized zlib %define with_libzcloudflare 1 %endif %global maintainer cpuhouse %global nginx_pkg_name nginx %global nginx_epoch 1 %global nginx_version 1.18.0 %global nginx_release 3 %global nginx_source_name nginx-%{nginx_version} %global nginx_user nginx %global nginx_group nginx %global nginx_build %{expand:%{nginx_version}.%{nginx_release}~%{maintainer} %(lsb_release -irs) %{?_isa}} %global nginx_confdir %{_sysconfdir}/nginx %global nginx_datadir %{_datadir}/nginx %global nginx_logdir %{_localstatedir}/log/nginx %global nginx_moddir %{_libdir}/nginx/modules %global nginx_sourcedir %{_usrsrc}/nginx %global nginx_tempdir %{_localstatedir}/lib/nginx/tmp %global nginx_tempdir_client %{nginx_tempdir}/client_body %global nginx_tempdir_fastcgi %{nginx_tempdir}/fastcgi %global nginx_tempdir_proxy %{nginx_tempdir}/proxy %global nginx_tempdir_scgi %{nginx_tempdir}/scgi %global nginx_tempdir_uwsgi %{nginx_tempdir}/uwsgi %global nginx_webroot %{nginx_datadir}/html %define __pkgconf %{expand:%(readlink -es `which pkg-config`)} %if 0%{?with_local_ssl} %define ssl_name openssl %define ssl_version 1.1.1g %define ssl_srcname %{ssl_name}-%{ssl_version} %define ssl_source https://github.com/openssl/%{ssl_name}/archive/%{ssl_version}.tar.gz#/%{ssl_srcname}.tar.gz %define ssl_opts enable-ec_nistp_64_gcc_128 no-weak-ssl-ciphers no-nextprotoneg no-ssl3 no-ssl2 %endif Name: %{nginx_pkg_name} Epoch: %{nginx_epoch} Version: %{nginx_version} Release: %{nginx_release}%{?dist}~%{maintainer} Summary: A high performance web server and reverse proxy # BSD License (two clause) # http://www.freebsd.org/copyright/freebsd-license.html License: BSD URL: https://nginx.org Vendor: %{maintainer} Source0: https://nginx.org/download/nginx-%{nginx_version}.tar.gz Source1: https://nginx.org/download/nginx-%{nginx_version}.tar.gz.asc # Keys are found here: https://nginx.org/en/pgp_keys.html Source2: https://nginx.org/keys/aalexeev.key Source3: https://nginx.org/keys/is.key Source4: https://nginx.org/keys/maxim.key Source5: https://nginx.org/keys/mdounin.key Source6: https://nginx.org/keys/sb.key Source10: nginx.service Source11: nginx.logrotate Source12: nginx.conf Source13: nginx-upgrade Source14: nginx-upgrade.8 # Build required sources Source300: %{ssl_source} # Configuration files Source500: nginx-http.conf Source501: nginx-http-caches.conf Source502: nginx-http-certbot.conf Source503: nginx-http-client.conf Source504: nginx-http-gzip.conf Source505: nginx-http-log_format.conf Source506: nginx-http-proxy.conf Source507: nginx-http-proxy_headers.conf Source508: nginx-http-security_headers.conf Source509: nginx-http-ssl-default.conf Source510: nginx-http-ssl.conf Source550: 00-default.conf Source551: 01-webapps.conf # removes -Werror in upstream build scripts. -Werror conflicts with # -D_FORTIFY_SOURCE=2 causing warnings to turn into errors. Patch0: nginx-auto-cc-gcc.patch # downstream patch - changing logs permissions to 664 instead # previous 644 Patch2: nginx-1.12.1-logs-perm.patch # Nginx extra features patches Patch101: https://raw.githubusercontent.com/ryoh/nginx.spec/master/nginx_hpack_push_1.17.3.patch Patch102: https://raw.githubusercontent.com/centminmod/centminmod/123.09beta01/patches/cloudflare/nginx__dynamic_tls_records_1015008.patch Patch103: https://raw.githubusercontent.com/hakasenyang/openssl-patch/master/nginx_io_uring.patch Patch104: https://raw.githubusercontent.com/hakasenyang/openssl-patch/master/nginx_strict-sni_1.15.10.patch # OpenSSL patches Patch200: https://raw.githubusercontent.com/hakasenyang/openssl-patch/master/openssl-equal-1.1.1e-dev_ciphers.patch Patch201: https://raw.githubusercontent.com/hakasenyang/openssl-patch/master/openssl-1.1.1f-chacha_draft.patch # Zlib patches Patch202: zlib-1.2.5-minizip-fixuncrypt.patch BuildRequires: ccache BuildRequires: gcc BuildRequires: gnupg2 BuildRequires: openssl-devel BuildRequires: pcre-devel BuildRequires: pkgconfig BuildRequires: redhat-lsb-core BuildRequires: systemd %if 0%{?with_libzcloudflare} BuildRequires: libzcloudflare-devel %endif %if 0%{with_libatomic} BuildRequires: libatomic_ops-devel %endif %if 0%{?with_gperftools} BuildRequires: gperftools-devel %endif %if 0%{?with_jemalloc} BuildRequires: jemalloc-devel %endif %if 0%{?with_io_uring} BuildRequires: liburing-devel %endif Requires(pre): nginx-filesystem = %{epoch}:%{version}-%{release} Requires(post): systemd Requires(preun): systemd Requires(postun): systemd Requires: pcre Requires: openssl %if 0%{?with_mailcap_mimetypes} Requires: nginx-mimetypes %endif Provides: webserver %if 0%{?rhel} > 7 Recommends: logrotate %endif %description Nginx is a web server and a reverse proxy server for HTTP, SMTP, POP3 and IMAP protocols, with a strong focus on high concurrency, performance and low memory usage. # package all-modules renamed to base-modules %package base-modules Summary: A meta package that installs all base Nginx modules BuildArch: noarch %if %{with geoip} Requires: nginx-mod-http-geoip = %{epoch}:%{version}-%{release} %endif Requires: nginx-mod-http-image-filter = %{epoch}:%{version}-%{release} Requires: nginx-mod-http-perl = %{epoch}:%{version}-%{release} Requires: nginx-mod-http-xslt-filter = %{epoch}:%{version}-%{release} Requires: nginx-mod-mail = %{epoch}:%{version}-%{release} Requires: nginx-mod-stream = %{epoch}:%{version}-%{release} Obsoletes: nginx-all-modules < %{epoch}:%{version}-%{release} Provides: nginx-all-modules = %{epoch}:%{version}-%{release} %description base-modules Meta package that installs all base nginx modules. %package filesystem Summary: The basic directory layout for the Nginx server BuildArch: noarch Requires(pre): shadow-utils %description filesystem The nginx-filesystem package contains the basic directory layout for the Nginx server including the correct permissions for the directories. %if %{with geoip} %package mod-http-geoip Summary: Nginx HTTP geoip module BuildRequires: GeoIP-devel Requires: nginx Requires: GeoIP %description mod-http-geoip %{summary}. %endif %package mod-http-image-filter Summary: Nginx HTTP image filter module BuildRequires: gd-devel Requires: nginx Requires: gd %description mod-http-image-filter %{summary}. %package mod-http-perl Summary: Nginx HTTP perl module BuildRequires: perl-devel %if 0%{?fedora} >= 24 || 0%{?rhel} >= 7 BuildRequires: perl-generators %endif BuildRequires: perl(ExtUtils::Embed) Requires: nginx Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version)) Requires: perl(constant) %description mod-http-perl %{summary}. %package mod-http-xslt-filter Summary: Nginx XSLT module BuildRequires: libxslt-devel Requires: nginx %description mod-http-xslt-filter %{summary}. %package mod-mail Summary: Nginx mail modules Requires: nginx %description mod-mail %{summary}. %package mod-stream Summary: Nginx stream modules Requires: nginx %description mod-stream %{summary}. %if 0%{?with_source_pkg} %package source Summary: Nginx source files Requires: %{name} = %{version}-%{nginx_release} %description source %{summary}. %endif %prep # Combine all keys from upstream into one file cat %{S:2} %{S:3} %{S:4} %{S:5} %{S:6} > %{_builddir}/%{name}.gpg %{gpgverify} --keyring='%{_builddir}/%{name}.gpg' --signature='%{SOURCE1}' --data='%{SOURCE0}' %setup -q -n %{nginx_source_name} %patch0 -p0 %patch2 -p1 %if 0%{?with_http_v2_hpack_enc} %patch101 -p1 -b .hpack_push %endif %if 0%{?with_dynamic_tls} %patch102 -p1 -b .dynamic_tls %endif %if 0%{?with_io_uring} %patch103 -p1 -b .io_uring %endif %if 0%{?with_strict_sni} %patch104 -p1 -b .strict_sni %endif %if 0%{?with_local_ssl} # SSL %__mkdir %{ssl_srcname} %__tar xf %{SOURCE300} -C %{ssl_srcname} --strip-components 1 pushd %{ssl_srcname} %{?with_tls13_ciphers:%patch200 -p1 -b .dev_ciphers} %{?with_chacha_draft:%patch201 -p1 -b .chacha_draft} popd %endif %build # nginx does not utilize a standard configure script. It has its own # and the standard configure options cause the nginx configure script # to error out. This is is also the reason for the DESTDIR environment # variable. export DESTDIR=%{buildroot} %if 0%{with_optimizations} export MODULE_LINK="" #extra_ccopts="-march=native --param=ssp-buffer-size=4 extra_ccopts="--param=ssp-buffer-size=4 \ -flto -ffat-lto-objects -fuse-ld=gold -fuse-linker-plugin \ -Wformat -Wno-strict-aliasing -Wno-stringop-truncation" nginx_ccopts="%{expand:%(echo %{optflags} \$extra_ccopts -fPIC -pie | sed 's/-O2/-O3/')}" nginx_ldopts="%{expand:%(echo %{build_ldflags} -lrt %{?with_jemalloc:-ljemalloc})}" %if 0%{?with_libzcloudflare} nginx_ccopts+=" $(%{__pkgconf} --cflags zcloudflare)" nginx_ldopts+=" $(%{__pkgconf} --libs zcloudflare | sed -e 's/-L/-Wl,-L,/')" %endif %else nginx_ccopts="%{expand:%(echo %{optflags})}" nginx_ldopts="%{expand:%(echo %{build_ldflags})}" %endif %if 0%{with_extra_features} nginx_ccopts+=" -DTCP_FASTOPEN=23 -DNGX_HTTP_HEADERS" %endif export CC="gcc" if ! ./configure \ --user=%{nginx_user} \ --group=%{nginx_group} \ --prefix=%{nginx_datadir} \ --build="%{nginx_build}" \ --conf-path=%{nginx_confdir}/nginx.conf \ --error-log-path=%{nginx_logdir}/error.log \ --http-log-path=%{nginx_logdir}/access.log \ --http-client-body-temp-path=%{nginx_tempdir_client} \ --http-proxy-temp-path=%{nginx_tempdir_proxy} \ --http-fastcgi-temp-path=%{nginx_tempdir_fastcgi} \ --http-uwsgi-temp-path=%{nginx_tempdir_uwsgi} \ --http-scgi-temp-path=%{nginx_tempdir_scgi} \ --lock-path=%{_rundir}/lock/subsys/nginx \ --modules-path=%{nginx_moddir} \ --pid-path=%{_rundir}/nginx.pid \ --sbin-path=%{_sbindir}/nginx \ %if 0%{?with_gperftools} --with-google_perftools_module \ %endif --with-http_addition_module \ --with-http_auth_request_module \ --with-http_dav_module \ --with-http_degradation_module \ --with-http_flv_module \ --with-http_gunzip_module \ --with-http_gzip_static_module \ --with-http_mp4_module \ --with-http_random_index_module \ --with-http_realip_module \ --with-http_secure_link_module \ --with-http_slice_module \ --with-http_ssl_module \ --with-http_stub_status_module \ --with-http_sub_module \ --with-http_v2_module \ --with-mail_ssl_module \ --with-stream_realip_module \ --with-stream_ssl_module \ --with-stream_ssl_preread_module \ --with-http_image_filter_module=dynamic \ --with-http_perl_module=dynamic \ --with-http_xslt_module=dynamic \ --with-mail=dynamic \ --with-stream=dynamic \ %if %{with geoip} --with-http_geoip_module=dynamic \ --with-stream_geoip_module=dynamic \ %endif --with-pcre \ --with-pcre-jit \ --with-file-aio \ %if 0%{?with_http_v2_hpack_enc} --with-http_v2_hpack_enc \ %endif %if 0%{?with_libatomic} --with-libatomic \ %endif %if 0%{?with_local_ssl} --with-openssl=./%{ssl_srcname} \ --with-openssl-opt="%{ssl_opts}" \ %endif %if 0%{with_optimizations} --with-threads \ %endif --with-compat \ --with-debug \ --with-cc="gcc" \ --with-cc-opt="$nginx_ccopts" \ --with-ld-opt="$nginx_ldopts"; then : configure failed cat objs/autoconf.err exit 1 fi make %{_smp_mflags} %install make install DESTDIR=%{buildroot} INSTALLDIRS=vendor # Deleting unused files %if 0%{?with_mailcap_mimetypes} %{__rm} -f %{buildroot}%{nginx_confdir}/mime.types %endif %{__rm} -f %{buildroot}%{nginx_confdir}/koi-utf %{__rm} -f %{buildroot}%{nginx_confdir}/koi-win %{__rm} -f %{buildroot}%{nginx_confdir}/win-utf %{__rm} -f %{buildroot}%{nginx_confdir}/fastcgi.conf %{__rm} -f %{buildroot}%{nginx_confdir}/*.default find %{buildroot} -type f -name .packlist -exec rm -f '{}' \; find %{buildroot} -type f -name perllocal.pod -exec rm -f '{}' \; find %{buildroot} -type f -empty -exec rm -f '{}' \; find %{buildroot} -type f -iname '*.so' -exec chmod 0755 '{}' \; # Add systemd service unit file %{__install} -p -D -m 0644 %{SOURCE10} %{buildroot}%{_unitdir}/nginx.service # logrotate file %{__install} -p -D -m 0644 %{SOURCE11} %{buildroot}%{_sysconfdir}/logrotate.d/nginx # nginx config files %{__install} -p -D -m 0640 %{SOURCE12} %{buildroot}%{nginx_confdir}/nginx.conf %{__install} -p -D -m 0755 %{SOURCE13} %{buildroot}%{_bindir}/nginx-upgrade %{__install} -p -D -m 0644 %{SOURCE14} %{buildroot}%{_mandir}/man8/nginx-upgrade.8 %{__install} -p -d -m 0755 %{buildroot}%{nginx_confdir}/webapps.d %{__install} -p -D -m 0640 %{SOURCE500} %{buildroot}%{nginx_confdir}/conf.d/http.conf %{__install} -p -D -m 0640 %{SOURCE501} %{buildroot}%{nginx_confdir}/conf.d/http/caches.conf %{__install} -p -D -m 0640 %{SOURCE502} %{buildroot}%{nginx_confdir}/conf.d/http/certbot.conf %{__install} -p -D -m 0640 %{SOURCE503} %{buildroot}%{nginx_confdir}/conf.d/http/client.conf %{__install} -p -D -m 0640 %{SOURCE504} %{buildroot}%{nginx_confdir}/conf.d/http/gzip.conf %{__install} -p -D -m 0640 %{SOURCE505} %{buildroot}%{nginx_confdir}/conf.d/http/log_format.conf %{__install} -p -D -m 0640 %{SOURCE506} %{buildroot}%{nginx_confdir}/conf.d/http/proxy.conf %{__install} -p -D -m 0640 %{SOURCE507} %{buildroot}%{nginx_confdir}/conf.d/http/proxy_headers.conf %{__install} -p -D -m 0640 %{SOURCE508} %{buildroot}%{nginx_confdir}/conf.d/http/security_headers.conf %{__install} -p -D -m 0640 %{SOURCE509} %{buildroot}%{nginx_confdir}/conf.d/http/ssl-default.conf %{__install} -p -D -m 0640 %{SOURCE510} %{buildroot}%{nginx_confdir}/conf.d/http/ssl.conf %{__install} -p -D -m 0640 %{SOURCE550} %{buildroot}%{nginx_confdir}/vhost.d/http/00-default.conf %{__install} -p -D -m 0640 %{SOURCE551} %{buildroot}%{nginx_confdir}/vhost.d/http/01-webapps.conf # nginx reset paths %{__sed} -i \ -e 's|${rundir}|%{_rundir}|g' \ -e 's|${sbindir}|%{_sbindir}|g' \ -e 's|${sysconfdir}|%{_sysconfdir}|g' \ -e 's|${logdir}|%{nginx_logdir}|g' \ -e 's|${pkg_name}|%{nginx_pkg_name}|g' \ %{buildroot}%{_unitdir}/nginx.service \ %{buildroot}%{_sysconfdir}/logrotate.d/nginx \ %{buildroot}%{nginx_confdir}/nginx.conf %{__sed} -i \ -e 's|${tempdir_client}|%{nginx_tempdir_client}|g' \ %{buildroot}%{nginx_confdir}/conf.d/http/client.conf # Add add_module configs %{__install} -p -d -m 0755 %{buildroot}%{nginx_confdir}/conf.modules.d for mod_fullpath in $(find %{buildroot}%{nginx_moddir} -type f -name '*.so'); do mod_path=$( echo ${mod_fullpath} | sed -re 's|%{buildroot}||' ) mod_name=$(basename ${mod_path} .so) cat > %{buildroot}%{nginx_confdir}/conf.modules.d/${mod_name}.conf <<-___EOL___ # ${mod_name} loading file load_module ${mod_path}; ___EOL___ done %{__mv} %{buildroot}%{nginx_confdir}/conf.modules.d/{,00-}ngx_stream_module.conf # Add nginx sources and cleanup it %if %{?with_source_pkg} %{__install} -p -d -m 0755 %{buildroot}%{nginx_sourcedir} %{__cp} -Rp %{_builddir}/%{nginx_source_name} %{buildroot}%{nginx_sourcedir}/ pushd %{buildroot}%{nginx_sourcedir} pushd ./%{nginx_source_name}/%{ssl_srcname} %{__make} clean ||: popd pushd ./%{nginx_source_name} %{__make} clean || : unlink CHANGES unlink CHANGES.ru unlink LICENSE unlink README find . -type d -name '.deps' -print0 | xargs -r -0 %{__rm} -rf find . -type d -name '.openssl' -print0 | xargs -r -0 %{__rm} -rf popd %{__tar} cJf %{nginx_source_name}.tar.xz %{nginx_source_name} %{__rm} -rf %{nginx_source_name} popd %endif %pre filesystem if [ $1 -eq 1 ]; then getent group %{nginx_group} >/dev/null 2>&1 \ || groupadd -r %{nginx_group} getent passwd %{nginx_user} >/dev/null 2>&1 \ || useradd -r -g %{nginx_group} -s /sbin/nologin \ -c "Nginx web server" %{nginx_user} fi exit 0 %post %systemd_post nginx.service %if %{with geoip} %post mod-http-geoip if [ $1 -eq 1 ]; then /usr/bin/systemctl reload nginx.service >/dev/null 2>&1 || : fi exit 0 %endif %post mod-http-image-filter if [ $1 -eq 1 ]; then /usr/bin/systemctl reload nginx.service >/dev/null 2>&1 || : fi exit 0 %post mod-http-perl if [ $1 -eq 1 ]; then /usr/bin/systemctl reload nginx.service >/dev/null 2>&1 || : fi exit 0 %post mod-http-xslt-filter if [ $1 -eq 1 ]; then /usr/bin/systemctl reload nginx.service >/dev/null 2>&1 || : fi exit 0 %post mod-mail if [ $1 -eq 1 ]; then /usr/bin/systemctl reload nginx.service >/dev/null 2>&1 || : fi exit 0 %post mod-stream if [ $1 -eq 1 ]; then /usr/bin/systemctl reload nginx.service >/dev/null 2>&1 || : fi exit 0 %preun %systemd_pre nginx.service exit 0 %postun %systemd_postun nginx.service case $1 in 0) : uninstall getent passwd %{nginx_user} >/dev/null 2>&1 \ && userdel %{nginx_user} >/dev/null 2>&1 ||: getent group %{nginx_group} >/dev/null 2>&1 \ && groupdel %{nginx_group} >/dev/null 2>&1 ||: ;; 1) : update /usr/bin/nginx-upgrade >/dev/null 2>&1 || : ;; esac %files %{_sbindir}/nginx %{_bindir}/nginx-upgrade %{_mandir}/man3/nginx.3pm.gz %{_mandir}/man8/nginx-upgrade.8.gz %{_unitdir}/nginx.service %config(noreplace) %{nginx_confdir}/conf.d/http.conf %config(noreplace) %{nginx_confdir}/conf.d/http/caches.conf %config(noreplace) %{nginx_confdir}/conf.d/http/certbot.conf %config(noreplace) %{nginx_confdir}/conf.d/http/client.conf %config(noreplace) %{nginx_confdir}/conf.d/http/gzip.conf %config(noreplace) %{nginx_confdir}/conf.d/http/log_format.conf %config(noreplace) %{nginx_confdir}/conf.d/http/proxy.conf %config(noreplace) %{nginx_confdir}/conf.d/http/proxy_headers.conf %config(noreplace) %{nginx_confdir}/conf.d/http/security_headers.conf %config(noreplace) %{nginx_confdir}/conf.d/http/ssl-default.conf %config(noreplace) %{nginx_confdir}/conf.d/http/ssl.conf %config(noreplace) %{nginx_confdir}/fastcgi_params %if ! 0%{?with_mailcap_mimetypes} %config(noreplace) %{nginx_confdir}/mime.types %endif %config(noreplace) %{nginx_confdir}/nginx.conf %config(noreplace) %{nginx_confdir}/scgi_params %config(noreplace) %{nginx_confdir}/uwsgi_params %config(noreplace) %{nginx_confdir}/vhost.d/http/00-default.conf %config(noreplace) %{nginx_confdir}/vhost.d/http/01-webapps.conf %config(noreplace) %{_sysconfdir}/logrotate.d/nginx %{nginx_webroot}/50x.html %{nginx_webroot}/index.html %files base-modules #(no files) %files filesystem %dir %{nginx_confdir} %dir %{nginx_confdir}/conf.d %dir %{nginx_confdir}/vhost.d %dir %{nginx_confdir}/webapps.d %dir %{nginx_datadir} %dir %{nginx_webroot} %if %{with geoip} %files mod-http-geoip %{nginx_moddir}/ngx_http_geoip_module.so %{nginx_confdir}/conf.modules.d/ngx_http_geoip_module.conf %files mod-stream-geoip %{nginx_moddir}/ngx_stream_geoip_module.so %{nginx_confdir}/conf.modules.d/ngx_stream_geoip_module.conf %endif %files mod-http-image-filter %{nginx_moddir}/ngx_http_image_filter_module.so %{nginx_confdir}/conf.modules.d/ngx_http_image_filter_module.conf %files mod-http-perl %{nginx_moddir}/ngx_http_perl_module.so %dir %{perl_vendorarch}/auto/nginx %{perl_vendorarch}/nginx.pm %{perl_vendorarch}/auto/nginx/nginx.so %{nginx_confdir}/conf.modules.d/ngx_http_perl_module.conf %files mod-http-xslt-filter %{nginx_moddir}/ngx_http_xslt_filter_module.so %{nginx_confdir}/conf.modules.d/ngx_http_xslt_filter_module.conf %files mod-mail %{nginx_moddir}/ngx_mail_module.so %{nginx_confdir}/conf.modules.d/ngx_mail_module.conf %files mod-stream %{nginx_moddir}/ngx_stream_module.so %{nginx_confdir}/conf.modules.d/00-ngx_stream_module.conf %if %{?with_source_pkg} %files source %dir %{nginx_sourcedir} %{nginx_sourcedir}/* %endif %changelog * Thu Jul 02 2020 Cpuhouse DevTeam - 1.18.0-3 - link dynamically to cloudflare zlib * Sun Jun 28 2020 Cpuhouse DevTeam - 1.18.0-2 - compile against cloudflare zlib - bump openssl version to 1.1.1g * Fri Jun 05 2020 Cpuhouse DevTeam - 1.18.0-1 - nginx version 1.18.0 # vim:sw=4:sts=4:ts=4:et:autoindent:syntax=spec