Blame SPECS/mod_jk.spec

ae7edd
# Licensed to the Apache Software Foundation (ASF) under one or more
ae7edd
# contributor license agreements.  See the NOTICE file distributed with
ae7edd
# this work for additional information regarding copyright ownership.
ae7edd
# The ASF licenses this file to You under the Apache License, Version 2.0
ae7edd
# (the "License"); you may not use this file except in compliance with
ae7edd
# the License.  You may obtain a copy of the License at
ae7edd
#
ae7edd
#     http://www.apache.org/licenses/LICENSE-2.0
ae7edd
#
ae7edd
# Unless required by applicable law or agreed to in writing, software
ae7edd
# distributed under the License is distributed on an "AS IS" BASIS,
ae7edd
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
ae7edd
# See the License for the specific language governing permissions and
ae7edd
# limitations under the License.
ae7edd
ae7edd
%global pkg_name %{name}
ae7edd
ae7edd
%define with()          %{expand:%%{?with_%{1}:1}%%{!?with_%{1}:0}}
ae7edd
%define without()       %{expand:%%{?with_%{1}:0}%%{!?with_%{1}:1}}
ae7edd
%define bcond_with()    %{expand:%%{?_with_%{1}:%%global with_%{1} 1}}
ae7edd
%define bcond_without() %{expand:%%{!?_without_%{1}:%%global with_%{1} 1}}
ae7edd
ae7edd
%bcond_with tools
ae7edd
ae7edd
%{!?aprconf: %{expand: %%define aprconf %{_bindir}/apr-config}}
ae7edd
%{!?apxs: %{expand: %%define apxs %{_bindir}/apxs}}
ae7edd
%{!?libtool: %{expand: %%define libtool %{_libdir}/apr-1/build/libtool}}
ae7edd
ae7edd
%define aprincludes %(%{aprconf} --includes 2>/dev/null)
ae7edd
ae7edd
# Update commitid and serial when new sources and release version are available
ae7edd
%global commitid 1c14fc065bc133887fdde55cab954691b3dc3aac
ae7edd
%global serial 22
ae7edd
ae7edd
Name:      mod_jk
ae7edd
Epoch:     0
ae7edd
Version:   1.2.48
ae7edd
Release:   %{serial}%{?dist}
ae7edd
Summary:   Tomcat mod_jk connector for Apache
ae7edd
ae7edd
Group:     Internet/WWW/Servers
ae7edd
License:   ASL 2.0
ae7edd
URL:       http://tomcat.apache.org
ae7edd
Source0:   tomcat-connectors-%{commitid}.tar.gz
ae7edd
Source1:   %{pkg_name}.conf.sample
ae7edd
Source2:   uriworkermap.properties.sample
ae7edd
Source3:   workers.properties.sample
ae7edd
ae7edd
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
ae7edd
ae7edd
Requires: httpd
ae7edd
ae7edd
BuildRequires: httpd-devel
ae7edd
BuildRequires: apr-devel
ae7edd
BuildRequires: apr-util-devel
ae7edd
# 64 bit only natives on RHEL 9
ae7edd
ExcludeArch:   i386 i686
ae7edd
BuildRequires: perl
ae7edd
BuildRequires: java-devel >= 1.6.0
ae7edd
BuildRequires: jpackage-utils >= 0:1.5.38
ae7edd
BuildRequires: libtool
ae7edd
BuildRequires: xalan-j2 >= 2.7.0
ae7edd
Obsoletes: mod_jk-ap24 < 0:1.2.48-21
ae7edd
ae7edd
%description
ae7edd
Tomcat-connectors (mod_jk) is a project that provides web server
ae7edd
connectors for the Apache Tomcat servlet engine.
ae7edd
ae7edd
%package manual
ae7edd
Summary: Tomcat %{pkg_name} connector manual
ae7edd
Group: Internet/WWW/Servers
ae7edd
ae7edd
%description manual
ae7edd
Tomcat %{pkg_name} connector manual.
ae7edd
ae7edd
%if %with tools
ae7edd
%package tools
ae7edd
Group: Internet/Log Analysis
ae7edd
Summary: Analysis and report tools for %{pkg_name}
ae7edd
ae7edd
%description tools
ae7edd
Miscellaneous %{pkg_name} analysis and report tools.
ae7edd
%endif
ae7edd
ae7edd
%prep
ae7edd
%setup -q -n tomcat-connectors-%{commitid}
ae7edd
ae7edd
%{__sed} -i -e 's|^(APXSCPPFLAGS=.*)$|$1 %{aprincludes}|' \
ae7edd
    native/common/Makefile.in
ae7edd
ae7edd
%build
ae7edd
# Adding the "-z,now" option in LDFLAGS in order to gain
ae7edd
# full RELRO support
ae7edd
LDFLAGS="$LDFLAGS -Wl,-z,now"
ae7edd
export LDFLAGS
ae7edd
ae7edd
set -e
ae7edd
pushd native
ae7edd
    ./buildconf.sh
ae7edd
    %configure --with-apxs="%{_bindir}/apxs"
ae7edd
    export LIBTOOL="`%{_bindir}/apxs -q LIBTOOL 2>/dev/null`"
ae7edd
    # Handle old apxs (without -q LIBTOOL), eg Red Hat 8.0 and 9.
ae7edd
    if test -z "$LIBTOOL"; then
ae7edd
        LIBTOOL="%{libtool}"
ae7edd
    fi
ae7edd
    make %{?_smp_mflags} \
ae7edd
    LIBTOOL="$LIBTOOL" \
ae7edd
    EXTRA_CFLAGS="$RPM_OPT_FLAGS" \
ae7edd
    EXTRA_CPPFLAGS="%{aprincludes}" \
ae7edd
    RHBUILD_CFLAGS="-DJK_RH_BUILD=-%{serial}"
ae7edd
popd
ae7edd
ae7edd
%install
ae7edd
%{!?aprconf: %{expand: %%define aprconf %{_bindir}/apr-config}}
ae7edd
%{!?apxs: %{expand: %%define apxs %{_bindir}/apxs}}
ae7edd
%{!?libtool: %{expand: %%define libtool %{_libdir}/apr-1/build/libtool}}
ae7edd
ae7edd
%define aplibdir %(%{apxs} -q LIBEXECDIR 2>/dev/null)
ae7edd
%define apconfdir %(%{apxs} -q SYSCONFDIR 2>/dev/null)
ae7edd
%define aprincludes %(%{aprconf} --includes 2>/dev/null)
ae7edd
ae7edd
%{__rm} -rf $RPM_BUILD_ROOT
ae7edd
install -d -m 755 $RPM_BUILD_ROOT%{_sysconfdir}/httpd/conf.d/
ae7edd
install -p -m 0644 %{SOURCE1} %{SOURCE2} %{SOURCE3} $RPM_BUILD_ROOT%{_sysconfdir}/httpd/conf.d/
ae7edd
%{__sed} -i -e 's|/usr/local/bin\b|%{_bindir}|' tools/reports/*.pl
ae7edd
command="s|/usr/local/bin\b|%{_bindir}|"
ae7edd
%{__sed} -i -e $command tools/reports/*.pl
ae7edd
%{__install} -d -m 0755 ${RPM_BUILD_ROOT}/%{aplibdir}
ae7edd
%{__install} -p -m 0755 native/apache-2.0/%{pkg_name}.so \
ae7edd
        ${RPM_BUILD_ROOT}/%{aplibdir}/%{pkg_name}.so
ae7edd
%{__install} -d -m 0755 ${RPM_BUILD_ROOT}/%{_bindir}
ae7edd
%{__install} -d -m 0755 ${RPM_BUILD_ROOT}/%{_var}/run/%{name}
ae7edd
%{__install} -d -m 0700 ${RPM_BUILD_ROOT}/%{_var}/cache/httpd/%{name}
ae7edd
ae7edd
# for tools
ae7edd
%if %with tools
ae7edd
%{__install} -p -m 0755 tools/reports/*.pl ${RPM_BUILD_ROOT}/%{_bindir}
ae7edd
%endif
ae7edd
ae7edd
%clean
ae7edd
%{__rm} -rf $RPM_BUILD_ROOT
ae7edd
ae7edd
%files
ae7edd
%{!?apxs: %{expand: %%define apxs %{_bindir}/apxs}}
ae7edd
%define aplibdir %(%{apxs} -q LIBEXECDIR 2>/dev/null)
ae7edd
%defattr(-,root,root,-)
ae7edd
%doc native/LICENSE native/NOTICE native/README.txt
ae7edd
%{aplibdir}/*
ae7edd
%config(noreplace) %{_sysconfdir}/httpd/conf.d/*
ae7edd
%dir %{_var}/run/%{name}
ae7edd
%attr(0700,apache,apache) %dir %{_var}/cache/httpd/%{name}
ae7edd
ae7edd
%if %with tools
ae7edd
%files tools
ae7edd
%defattr(-,root,root,-)
ae7edd
%doc tools/reports/README.txt
ae7edd
%{_bindir}/*
ae7edd
%endif
ae7edd
ae7edd
%changelog
ae7edd
* Tue Aug 24 2021 George Zaronikas <gzaronik@redhat.com> - 1.2.48-22
ae7edd
- Specifying exact NVR in Obsoletes to avoid conflict with -ap24 subpackage
ae7edd
- Resolves: #1963135
ae7edd
ae7edd
* Wed Aug 18 2021 George Zaronikas <gzaronik@redhat.com> - 1.2.48-21
ae7edd
- Moving Obsoletes out of pkg description
ae7edd
- Resolves: #1963135
ae7edd
ae7edd
* Mon Aug 16 2021 Coty Sutherland <csutherl@redhat.com> - 1.2.48-20
ae7edd
- Cleanup spec file and remove .redhat-N suffix from release
ae7edd
- Remove ap24 subpackage since we only need to build for one version of httpd
ae7edd
ae7edd
* Mon Aug 09 2021 Mohan Boddu <mboddu@redhat.com> - 0:1.2.48-19.redhat_1.1
ae7edd
- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags
ae7edd
  Related: rhbz#1991688
ae7edd
ae7edd
* Wed Aug 04 2021 Coty Sutherland <csutherl@redhat.com> - 1.2.48-19
ae7edd
- Update shm file location in conf
ae7edd
ae7edd
* Mon Aug 02 2021 Coty Sutherland <csutherl@redhat.com> - 1.2.48-18
ae7edd
- Fix broken test
ae7edd
ae7edd
* Mon Aug 02 2021 Coty Sutherland <csutherl@redhat.com> - 1.2.48-17
ae7edd
- Fix typo in tests.yml filename
ae7edd
ae7edd
* Fri Jul 30 2021 George Zaronikas <gzaronik@redhat.com> - 1.2.48-16
ae7edd
- Resolves: #1963135