diff options
author | Akinori Hattori <hattya@gentoo.org> | 2022-09-11 10:46:47 +0900 |
---|---|---|
committer | Akinori Hattori <hattya@gentoo.org> | 2022-09-11 10:46:47 +0900 |
commit | fb87abe19150270ba0448d6192e0d6d0d5e782cc (patch) | |
tree | 2dd6bbb28643131687fb1ec89c81f2cd4a025d72 /app-text/hyperestraier/hyperestraier-1.4.13-r2.ebuild | |
parent | dev-lang/php: Version bump for 8.0.23 (diff) | |
download | gentoo-fb87abe19150270ba0448d6192e0d6d0d5e782cc.tar.gz gentoo-fb87abe19150270ba0448d6192e0d6d0d5e782cc.tar.bz2 gentoo-fb87abe19150270ba0448d6192e0d6d0d5e782cc.zip |
app-text/hyperestraier: fix build with Java 11+
Closes: https://bugs.gentoo.org/867862
Package-Manager: Portage-3.0.30, Repoman-3.0.3
Signed-off-by: Akinori Hattori <hattya@gentoo.org>
Diffstat (limited to 'app-text/hyperestraier/hyperestraier-1.4.13-r2.ebuild')
-rw-r--r-- | app-text/hyperestraier/hyperestraier-1.4.13-r2.ebuild | 201 |
1 files changed, 201 insertions, 0 deletions
diff --git a/app-text/hyperestraier/hyperestraier-1.4.13-r2.ebuild b/app-text/hyperestraier/hyperestraier-1.4.13-r2.ebuild new file mode 100644 index 000000000000..94667fffd8b0 --- /dev/null +++ b/app-text/hyperestraier/hyperestraier-1.4.13-r2.ebuild @@ -0,0 +1,201 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="7" +USE_RUBY="ruby25 ruby26 ruby27 ruby30" +RUBY_OPTIONAL="yes" + +inherit autotools java-pkg-opt-2 perl-functions ruby-ng + +DESCRIPTION="a full-text search system for communities" +HOMEPAGE="https://fallabs.com/hyperestraier/" +SRC_URI="https://fallabs.com/${PN}/${P}.tar.gz" + +LICENSE="LGPL-2.1" +KEYWORDS="~alpha amd64 ~arm ~hppa ~ia64 ppc ppc64 sparc x86" +SLOT="0" +IUSE="bzip2 debug java lzo mecab perl ruby static-libs +zlib" + +RDEPEND="dev-db/qdbm + bzip2? ( app-arch/bzip2 ) + java? ( >=virtual/jre-1.8:* ) + lzo? ( dev-libs/lzo ) + mecab? ( app-text/mecab ) + perl? ( dev-lang/perl ) + ruby? ( $(ruby_implementations_depend) ) + zlib? ( sys-libs/zlib )" +DEPEND="${RDEPEND} + java? ( >=virtual/jdk-1.8:* )" +BDEPEND="virtual/pkgconfig" +S="${WORKDIR}/all/${P}" + +PATCHES=( + "${FILESDIR}"/${PN}-configure.patch + "${FILESDIR}"/${PN}-java-11.patch + "${FILESDIR}"/${PN}-perl.patch + "${FILESDIR}"/${PN}-ruby19.patch +) +HTML_DOCS=( doc/. ) + +AT_NOELIBTOOLIZE="yes" + +pkg_setup() { + java-pkg-opt-2_pkg_setup + use ruby && ruby-ng_pkg_setup +} + +he_foreach_api() { + local u d + for u in java perl ruby; do + if ! use "${u}"; then + continue + fi + if [[ "${u}" != "ruby" ]]; then + for d in ${u}native ${u}pure; do + if [[ ! -d "${d}" ]]; then + continue + fi + einfo "${EBUILD_PHASE} ${d}" + cd "${d}" + case "${EBUILD_PHASE}" in + prepare) + mv configure.{in,ac} + eautoreconf + ;; + configure) + econf + ;; + compile) + emake + ;; + test) + if [[ "${d}" == "${u}native" ]]; then + emake check + fi + ;; + install) + if [[ "${u}" != "java" ]]; then + emake DESTDIR="${D}" install + else + java-pkg_dojar *.jar + if [[ "${d}" == "${u}native" ]]; then + dolib.so lib*.so* + fi + fi + ;; + esac + cd - >/dev/null + done + else + PATCHES= ruby-ng_src_${EBUILD_PHASE} + fi + done +} + +he_foreach_ruby_api() { + local d + for d in rubynative rubypure; do + cd "${d}" + case "${EBUILD_PHASE}" in + prepare) + sed -i \ + -e "/RUBY=/cRUBY=\"${RUBY}\"" \ + -e "/=\`.*ruby/s|ruby|${RUBY}|" \ + configure.in + + mv configure.{in,ac} + eautoreconf + ;; + configure) + econf + ;; + compile) + emake + ;; + test) + if [[ "${d}" == "${u}native" ]]; then + emake check + fi + ;; + install) + emake DESTDIR="${D}" install + ;; + esac + cd - >/dev/null + done +} + +src_prepare() { + default + java-pkg-opt-2_src_prepare + + sed -i \ + -e "/^CFLAGS/s|$| ${CFLAGS}|" \ + -e "/^JAVACFLAGS/s|$| ${JAVACFLAGS}|" \ + -e '/^LDENV/d' \ + -e 's/make\( \|$\)/$(MAKE)\1/g' \ + Makefile.in {java,perl,ruby}*/Makefile.in + + mv configure.{in,ac} + eautoreconf + he_foreach_api # prepare +} + +all_ruby_prepare() { + sed -i "/^RUNENV /s|\.\.|${WORKDIR}/all/${P}|" ruby*/Makefile.in + sed -i "s|\.\./\.\.|${WORKDIR}/all/${P}|" rubynative/src/extconf.rb +} + +each_ruby_prepare() { + he_foreach_ruby_api +} + +src_configure() { + econf \ + $(use_enable bzip2 bzip) \ + $(use_enable debug) \ + $(use_enable lzo) \ + $(use_enable mecab) \ + $(use_enable zlib) + he_foreach_api +} + +each_ruby_configure() { + he_foreach_ruby_api +} + +src_compile() { + default + he_foreach_api +} + +each_ruby_compile() { + he_foreach_ruby_api +} + +src_test() { + default + he_foreach_api +} + +each_ruby_test() { + he_foreach_ruby_api +} + +src_install() { + emake DESTDIR="${D}" MYDOCS= install + einstalldocs + he_foreach_api + use static-libs || find "${ED}" -name '*.a' -delete || die + + if use perl; then + perl_delete_module_manpages + perl_fix_packlist + fi + + rm -f "${D}"/usr/bin/*test +} + +each_ruby_install() { + he_foreach_ruby_api +} |