commit:     b8b25e7793653137f231e511807765283ca225b3
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Wed Dec 14 11:39:21 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Dec 14 11:39:21 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b8b25e77

app-admin/apache-tools: switch to pcre2

Closes: https://bugs.gentoo.org/835151
Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../apache-tools/apache-tools-2.4.54-r3.ebuild     | 113 +++++++++++++++++++++
 1 file changed, 113 insertions(+)

diff --git a/app-admin/apache-tools/apache-tools-2.4.54-r3.ebuild 
b/app-admin/apache-tools/apache-tools-2.4.54-r3.ebuild
new file mode 100644
index 000000000000..6f81b8aa7f99
--- /dev/null
+++ b/app-admin/apache-tools/apache-tools-2.4.54-r3.ebuild
@@ -0,0 +1,113 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools toolchain-funcs
+
+DESCRIPTION="Useful Apache tools - htdigest, htpasswd, ab, htdbm"
+HOMEPAGE="https://httpd.apache.org/";
+SRC_URI="mirror://apache/httpd/httpd-${PV}.tar.bz2"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 
~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos 
~sparc64-solaris ~x64-solaris"
+IUSE="ssl"
+RESTRICT="test"
+
+RDEPEND=">=dev-libs/apr-1.5.0:1=
+       dev-libs/apr-util:1=
+       dev-libs/expat
+       dev-libs/libpcre2
+       virtual/libcrypt:=
+       kernel_linux? ( sys-apps/util-linux )
+       ssl? ( dev-libs/openssl:0= )"
+DEPEND="${RDEPEND}
+       sys-devel/libtool"
+BDEPEND="
+       virtual/pkgconfig
+"
+
+S="${WORKDIR}/httpd-${PV}"
+
+PATCHES=(
+       "${FILESDIR}/${PN}-2.4.54-Makefile.patch" #459446
+       "${FILESDIR}/${PN}-2.4.54-no-which.patch" #844868
+       "${FILESDIR}/${PN}-2.4.54-libtool.patch" #858833
+)
+
+src_prepare() {
+       default
+
+       # This package really should upgrade to using pcre's .pc file.
+       cat <<-\EOF > "${T}"/pcre2-config
+       #!/usr/bin/env bash
+       flags=()
+       for flag; do
+               if [[ ${flag} == "--version" ]]; then
+                       flags+=( --modversion )
+               else
+                       flags+=( "${flag}" )
+               fi
+       done
+       exec ${PKG_CONFIG} libpcre2-8 "${flags[@]}"
+       EOF
+       chmod a+x "${T}"/pcre2-config || die
+
+       # Only here for libtool and which patches
+       eautoreconf
+}
+
+src_configure() {
+       # Silly check.
+       tc-is-cross-compiler && export ap_cv_void_ptr_lt_long="no"
+
+       tc-export PKG_CONFIG
+       export ac_cv_path_PKGCONFIG="${PKG_CONFIG}"
+       export ac_cv_prog_ac_ct_PCRE_CONFIG="${T}"/pcre2-config
+
+       local myeconfargs=(
+               --libexecdir="${EPREFIX}"/usr/$(get_libdir)/apache2/modules
+               --sbindir="${EPREFIX}"/usr/sbin
+               --with-z="${EPREFIX}"/usr
+               --with-apr="${ESYSROOT}"/usr
+               --with-apr-util="${ESYSROOT}"/usr
+               --without-pcre
+               --with-pcre2="${T}"/pcre2-config
+               $(use_enable ssl)
+               $(usex ssl '--with-ssl="${EPREFIX}"/usr' '')
+       )
+
+       # econf overwrites the stuff from config.layout.
+       econf "${myeconfargs[@]}"
+
+       sed -i \
+               -e '/^LTFLAGS/s:--silent::' \
+               build/rules.mk build/config_vars.mk || die
+}
+
+src_compile() {
+       emake -C support
+}
+
+src_install() {
+       emake -C support DESTDIR="${D}" install
+       dodoc CHANGES
+       doman docs/man/{dbmmanage,htdigest,htpasswd,htdbm,ab,logresolve}.1 \
+               docs/man/{htcacheclean,rotatelogs}.8
+
+       # Providing compatiblity symlinks for #177697 (which we'll stop to 
install
+       # at some point).
+       pushd "${ED}"/usr/sbin >/dev/null || die
+       local i
+       for i in *; do
+               dosym ${i} /usr/sbin/${i}2
+       done
+       popd >/dev/null || die
+
+       # Provide a symlink for ab-ssl
+       if use ssl ; then
+               dosym ab /usr/bin/ab-ssl
+               dosym ab /usr/bin/ab2-ssl
+       fi
+}

Reply via email to