# # spec file for package apache-rpm-macros # # Copyright (c) 2020 SUSE LLC # # 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 https://bugs.opensuse.org/ # %define ap_major 2 %if 0%{?suse_version} %define ap_branch %(rpm -q --qf "%%{version}" apache%{ap_major} | tr '.' ' ' | { read maj min patch; printf "%d%02d" $maj $min; }) %define ap_version %(rpm -q --qf "%%{version}" apache%{ap_major} | tr '.' ' ' | { read maj min patch; printf "%d%02d%02d" $maj $min $patch; }) %else %define ap_branch %(rpm -q --qf "%%{version}" httpd | tr '.' ' ' | { read maj min patch; printf "%d%02d" $maj $min; }) %define ap_version %(rpm -q --qf "%%{version}" httpd | tr '.' ' ' | { read maj min patch; printf "%d%02d%02d" $maj $min $patch; }) %endif %define ap_pname apache%{ap_major} %define ap_apxs %(ls -1 /usr/{,s}bin/apxs{,2} 2>/dev/null | head -n 1) %define ap_cflags %(%{ap_apxs} -q CFLAGS) %define ap_includedir %(%{ap_apxs} -q INCLUDEDIR) %define ap_libexecdir %(%{ap_apxs} -q LIBEXECDIR) %define ap_localstatedir %(%{ap_apxs} -q LOCALSTATEDIR) %if 0%{?suse_version} %define ap_mmn %(%{_libexecdir}/apache2_MMN 2>/dev/null || %{_libdir}/apache2_MMN 2>/dev/null) %define ap_maint_mmn %(MMN=$(rpm -q --provides apache2 | grep suse_maintenance_mmn); test -z "$MMN" && MMN=apache2; echo $MMN) %endif %define ap_serverroot %(%{ap_apxs} -q PREFIX) %define ap_sysconfdir %(%{ap_apxs} -q SYSCONFDIR) %define ap_datadir %(%{ap_apxs} -q DATADIR) %if 0%{?suse_version} %define ap_user wwwrun %define ap_group www %else %define ap_user apache %define ap_group apache %endif %if 0%{?suse_version} %define ap_access_syntax_version %(if [ $(grep -c '^[[:space:]]*Require all denied' /etc/apache2/httpd.conf) -gt 0 ]; then echo 24; else echo 22; fi) %endif # %if 0%{?suse_version} > 1230 %define macros_dir %{_rpmconfigdir}/macros.d %else %define macros_dir %{_sysconfdir}/rpm %endif %define macros_file macros.apache Name: apache-rpm-macros Version: 20201124 Release: 0 Summary: Apache RPM Macros License: Apache-2.0 Group: Productivity/Networking/Web/Servers URL: http://httpd.apache.org/ %if 0%{?suse_version} BuildRequires: apache%{ap_major}-devel %else BuildRequires: httpd-devel %endif Requires: apache-rpm-macros-control BuildRoot: %{_tmppath}/%{name}-%{version}-build %description RPM Macros intended for Apache modules spec files. %prep %build cat << eom > %{macros_file} %%apache_major %{ap_major} %%apache_branch %{ap_branch} %%apache_version %{ap_version} %%apache_pname %{ap_pname} %%apache_apxs %{ap_apxs} %%apache_cflags %{ap_cflags} %%apache_includedir %{ap_includedir} %%apache_libexecdir %{ap_libexecdir} %%apache_localstatedir %{ap_localstatedir} %%apache_mmn %{ap_mmn} %%apache_suse_maintenance_mmn %{ap_maint_mmn} %%apache_serverroot %{ap_serverroot} %%apache_sysconfdir %{ap_sysconfdir} %%apache_datadir %{ap_datadir} %%apache_user %{ap_user} %%apache_group %{ap_group} %%apache_access_syntax_version %{ap_access_syntax_version} eom echo >> %{macros_file} %install mkdir -p %{buildroot}%{macros_dir} install -m 644 %{macros_file} %{buildroot}%{macros_dir} %files %defattr(-,root,root) %dir %{macros_dir} %{macros_dir}/macros.apache* %changelog