|
|
|
# Copyright 1999-2021 Gentoo Authors
|
|
|
|
# Distributed under the terms of the GNU General Public License v2
|
|
|
|
|
|
|
|
EAPI=7
|
|
|
|
|
|
|
|
README_GENTOO_SUFFIX="-r2"
|
|
|
|
CRATES="dunce-0.1.1"
|
|
|
|
|
|
|
|
inherit autotools bash-completion-r1 cargo readme.gentoo-r1 xdg-utils
|
|
|
|
|
|
|
|
DESCRIPTION="FOSS Java browser plugin and Web Start implementation"
|
|
|
|
HOMEPAGE="https://github.com/AdoptOpenJDK/IcedTea-Web"
|
|
|
|
SRC_URI="https://github.com/AdoptOpenJDK/${PN}/archive/${P}.tar.gz
|
|
|
|
$(cargo_crate_uris ${CRATES})"
|
|
|
|
LICENSE="GPL-2 GPL-2-with-linking-exception LGPL-2"
|
|
|
|
SLOT="0"
|
|
|
|
KEYWORDS="amd64 arm64 ppc64 x86"
|
|
|
|
IUSE="doc"
|
|
|
|
|
|
|
|
# tests require ton of java deps we don't have packaged/working
|
|
|
|
# but rust tests pass.
|
|
|
|
RESTRICT="test"
|
|
|
|
|
|
|
|
BDEPEND="
|
|
|
|
app-arch/zip
|
|
|
|
sys-devel/bc
|
|
|
|
virtual/jdk:1.8
|
|
|
|
virtual/pkgconfig
|
|
|
|
virtual/rust
|
|
|
|
doc? ( sys-devel/bc )
|
|
|
|
"
|
|
|
|
|
|
|
|
RDEPEND="
|
|
|
|
>=app-eselect/eselect-java-0.2.0
|
|
|
|
>=virtual/jre-1.8
|
|
|
|
"
|
|
|
|
|
|
|
|
S="${WORKDIR}/IcedTea-Web-${P}"
|
|
|
|
|
|
|
|
QA_FLAGS_IGNORED="usr/bin/.*"
|
|
|
|
|
|
|
|
src_prepare() {
|
|
|
|
eapply_user
|
|
|
|
sed -i 's/JAVADOC_OPTS=/\0-Xdoclint:none /g' Makefile.am || die
|
|
|
|
eautoreconf
|
|
|
|
cargo_gen_config
|
|
|
|
}
|
|
|
|
|
|
|
|
src_configure() {
|
|
|
|
xdg_environment_reset
|
|
|
|
# some functionality (tagsoup rhino) is disabled, because dev-java is
|
|
|
|
# unmaintained and a lot of things simply does not build anymore.
|
|
|
|
# native plugins also disabled, modern browsers no longer support it.
|
|
|
|
local myconf=(
|
|
|
|
--disable-native-plugin
|
|
|
|
--program-transform-name='s/^javaws$/itweb-javaws/'
|
|
|
|
--with-java="${EPREFIX}/usr/bin/java"
|
|
|
|
--with-jdk-home="${EPREFIX}/etc/java-config-2/current-system-vm"
|
|
|
|
--with-itw-libs=DISTRIBUTION
|
|
|
|
--without-rhino
|
|
|
|
--without-tagsoup
|
|
|
|
$(use_enable doc docs)
|
|
|
|
)
|
|
|
|
unset _JAVA_OPTIONS
|
|
|
|
export bashcompdir="$(get_bashcompdir)" # defaults to /etc if not found in pkg-config
|
|
|
|
export CARGO_HOME="${ECARGO_HOME}"
|
|
|
|
CONFIG_SHELL="${EPREFIX}/bin/bash" econf "${myconf[@]}"
|
|
|
|
}
|
|
|
|
|
|
|
|
src_compile() {
|
|
|
|
# races in makefile
|
|
|
|
emake -j1 #nowarn
|
|
|
|
}
|
|
|
|
|
|
|
|
src_install() {
|
|
|
|
default
|
|
|
|
rm -v "${ED}/usr/bin/itw-modularjdk.args" || die
|
|
|
|
rename -v '.bash' '' "${ED}/usr/share/bash-completion/completions/"*.bash || die
|
|
|
|
rename -v 'javaws' 'itweb-javaws' "${ED}/usr/share/man/man1/"javaws.1* || die
|
|
|
|
mv -v "${ED}/usr/share/bash-completion/completions/"{javaws,itweb-javaws} || die
|
|
|
|
sed -i 's/javaws/itweb-javaws/g' \
|
|
|
|
"${ED}/usr/share/bash-completion/completions/itweb-javaws" || die
|
|
|
|
|
|
|
|
readme.gentoo_create_doc
|
|
|
|
}
|
|
|
|
|
|
|
|
src_test() {
|
|
|
|
# we want to override cargo.eclass' src_test
|
|
|
|
:
|
|
|
|
}
|
|
|
|
|
|
|
|
pkg_postinst() {
|
|
|
|
readme.gentoo_print_elog
|
|
|
|
}
|