parent
a07ae2473c
commit
e3d0c32c53
Binary file not shown.
Binary file not shown.
@ -1,4 +1,3 @@
|
||||
DIST ansible-core-2.11.6.tar.gz 6999232 BLAKE2B 5105928881297226e982e42c8027a370ad31869d92ca87d338cdb6e72504a22cf3fe7843921905599c7126c840197fb7799a72c261a007437a437b85c4a65c68 SHA512 d14686afb7b2802be3bca3baf6f3840d33f7994b7c48fcb4d42f871e13e4eb54ffef413e124dbe614a55041c23b509f5e887b687dbb6c4868425957cac45910a
|
||||
DIST ansible-core-2.11.7.tar.gz 7108269 BLAKE2B c5080161bfffc34382db86f3940dbbf1c8194a4413b20ef28b3c15503aec905acfffc864041496b4f6b4b77966fee3221b80e90d4b952e38513ba9ce506ee1ae SHA512 f37c925c5302eff30d17f52a04d4a5311e38ee5c1d6db4fbdb32970afa362e0522d6ec3d07bddf40137b2f5ec5fa03a2b72e7e1ed313c28c207f65490e49af92
|
||||
DIST ansible-core-2.12.0.tar.gz 7405927 BLAKE2B 9256d88910bf13dfac87ba509f0b1478305f9a07d8f935479b1a23ea1b9b3e8daf33030aee8ea3f9251cc858ab04bcf189f9226323157a1a2ae1fbcf5c4fb0a1 SHA512 c3c8c0e2f14c30cecb6e693fc57d2bd686221efaf42f09773bd4606031e4fed68a216be17c040d51601f2059d0f4a44568cea309c3bd2a1c02957c6a4cd6d25a
|
||||
DIST ansible-core-2.12.1.tar.gz 7401160 BLAKE2B 2bc412bade7f7e5dee0e51c78a74b4dea286aca1b82e2217012f168cd529a06887f11d672ff883af6a71c3af6ea1596f6720bcde9ed3696f87b8b5def1a1172b SHA512 89468d172dca502da42b94d0a781906578322ac531b3dfc3cece383b0e93fbec0f199d7b76abfd80d24654d5d939ee66a15b74565f50cca0c72d427aab9f4e08
|
||||
|
@ -1,64 +0,0 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
PYTHON_COMPAT=( python3_{8..10} )
|
||||
DISTUTILS_USE_SETUPTOOLS=bdepend
|
||||
|
||||
inherit distutils-r1
|
||||
|
||||
DESCRIPTION="Model-driven deployment, config management, and command execution framework"
|
||||
HOMEPAGE="https://www.ansible.com/"
|
||||
|
||||
if [[ ${PV} == 9999 ]]; then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="https://github.com/ansible/ansible.git"
|
||||
EGIT_BRANCH="devel"
|
||||
else
|
||||
MY_PN="${PN/-base/-core}"
|
||||
MY_P="${MY_PN}-${PV}"
|
||||
SRC_URI="mirror://pypi/${MY_PN:0:1}/${MY_PN}/${MY_P}.tar.gz"
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86 ~x64-macos"
|
||||
S="${WORKDIR}"/${MY_P}
|
||||
fi
|
||||
|
||||
LICENSE="GPL-3"
|
||||
SLOT="0"
|
||||
IUSE="test"
|
||||
RESTRICT="test"
|
||||
|
||||
RDEPEND="
|
||||
dev-python/paramiko[${PYTHON_USEDEP}]
|
||||
dev-python/jinja[${PYTHON_USEDEP}]
|
||||
dev-python/pyyaml[${PYTHON_USEDEP}]
|
||||
dev-python/cryptography[${PYTHON_USEDEP}]
|
||||
dev-python/httplib2[${PYTHON_USEDEP}]
|
||||
dev-python/six[${PYTHON_USEDEP}]
|
||||
dev-python/netaddr[${PYTHON_USEDEP}]
|
||||
dev-python/pexpect[${PYTHON_USEDEP}]
|
||||
>=dev-python/resolvelib-0.5.3[${PYTHON_USEDEP}]
|
||||
<dev-python/resolvelib-0.6.0[${PYTHON_USEDEP}]
|
||||
net-misc/sshpass
|
||||
virtual/ssh
|
||||
"
|
||||
DEPEND="
|
||||
>=dev-python/packaging-16.6[${PYTHON_USEDEP}]
|
||||
test? (
|
||||
${RDEPEND}
|
||||
dev-python/bcrypt[${PYTHON_USEDEP}]
|
||||
dev-python/nose[${PYTHON_USEDEP}]
|
||||
>=dev-python/mock-1.0.1[${PYTHON_USEDEP}]
|
||||
dev-python/passlib[${PYTHON_USEDEP}]
|
||||
dev-python/coverage[${PYTHON_USEDEP}]
|
||||
dev-vcs/git
|
||||
)"
|
||||
|
||||
python_compile() {
|
||||
export ANSIBLE_SKIP_CONFLICT_CHECK=1
|
||||
distutils-r1_python_compile
|
||||
}
|
||||
|
||||
python_test() {
|
||||
nosetests -d -w test/units -v --with-coverage --cover-package=ansible --cover-branches || die
|
||||
}
|
@ -0,0 +1,58 @@
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{8..10} )
|
||||
inherit bash-completion-r1 distutils-r1
|
||||
|
||||
DESCRIPTION="Universal Command Line Environment for AWS"
|
||||
HOMEPAGE="https://pypi.org/project/awscli/"
|
||||
#SRC_URI="mirror://pypi/${P:0:1}/${PN}/${P}.tar.gz"
|
||||
SRC_URI="https://github.com/aws/aws-cli/archive/${PV}.tar.gz -> ${P}.tar.gz"
|
||||
S="${WORKDIR}/aws-cli-${PV}"
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~arm64 ~x86"
|
||||
|
||||
# botocore is x.(y+1).z
|
||||
BOTOCORE_PV="$(ver_cut 1).$(( $(ver_cut 2) + 1)).$(ver_cut 3-)"
|
||||
RDEPEND="
|
||||
>=dev-python/botocore-${BOTOCORE_PV}[${PYTHON_USEDEP}]
|
||||
dev-python/colorama[${PYTHON_USEDEP}]
|
||||
dev-python/docutils[${PYTHON_USEDEP}]
|
||||
dev-python/rsa[${PYTHON_USEDEP}]
|
||||
>=dev-python/s3transfer-0.4.0[${PYTHON_USEDEP}]
|
||||
dev-python/pyyaml[${PYTHON_USEDEP}]
|
||||
"
|
||||
|
||||
distutils_enable_tests --install pytest
|
||||
|
||||
src_prepare() {
|
||||
# do not rely on bundled deps in botocore (sic!)
|
||||
find -name '*.py' -exec sed -i \
|
||||
-e 's:from botocore[.]vendored import:import:' \
|
||||
-e 's:from botocore[.]vendored[.]:from :' \
|
||||
{} + || die
|
||||
# strip overzealous upper bounds on requirements
|
||||
sed -i -e 's:,<[0-9.]*::' -e 's:==:>=:' setup.py || die
|
||||
distutils-r1_src_prepare
|
||||
}
|
||||
|
||||
python_test() {
|
||||
distutils_install_for_testing
|
||||
# integration tests require AWS credentials and Internet access
|
||||
epytest tests/{functional,unit}
|
||||
}
|
||||
|
||||
python_install_all() {
|
||||
newbashcomp bin/aws_bash_completer aws
|
||||
|
||||
insinto /usr/share/zsh/site-functions
|
||||
newins bin/aws_zsh_completer.sh _aws
|
||||
|
||||
distutils-r1_python_install_all
|
||||
|
||||
rm "${ED}"/usr/bin/{aws.cmd,aws_bash_completer,aws_zsh_completer.sh} || die
|
||||
}
|
@ -1,3 +1,4 @@
|
||||
DIST eselect-1.4.16.tar.xz 178660 BLAKE2B dae97ee324cb67983c5395b5dc54c4b84d2da43f6a0c5c8ab81ff402ab211e9d1f1d3fe5c174b130ac1e11d3dd19e3812056274145415ee029e649cda880cd95 SHA512 264fb6122f5f7c9e73bb2250a94c3c0377e5263e2e5ae653ed58e08ebf6ed1b4aa165ae5c1d70b0156081c4db5672d1ec9d379782919d5b40a2f3e862378ce62
|
||||
DIST eselect-1.4.17.tar.xz 178980 BLAKE2B d905ac88bc009080912af75e64c7920d745788866fa3cb35466d68a652efbbd6984d6e1efeed76d9a344aed94705b74c85aa43e9c037d4d548d2e24afa69bd7a SHA512 35dc4c52f44c4f64db9c0dc2aec57b3055a6d36760b1bbbd094ad11b3f9e71a731444802632817b89c3b511f1dc9bb92046b59322d177e13fdc501ed767b591e
|
||||
DIST eselect-1.4.18.tar.xz 179968 BLAKE2B ce54e54dd406c0d5a7a012ff7cf111709e7a51c510aaaa1d0145dade7bc9678e5f67081dfaef0743c86324adddb5468b093f9612e9932198d1bc9428a2dc93f6 SHA512 8e7afae4d383ddcc38c51f947fdaff267cc7ed87e26d236ff84585e4037764fd553f61c205fdc412ebc5170d80fa60a83cd93aa6fe39230ebff10a903af12ae2
|
||||
DIST eselect-1.4.19.tar.xz 180240 BLAKE2B eaf1cee4cdca7963f4bdf0ceaab7431e1fd2fd07a05747db7b3437841602b302224701988b6cbd24ffa2ee30a58e6f4b34810b46f272e4d2bb032aec0a1512cc SHA512 18e0e769ad95ce67904e3ae95351463f00f1b255f390da7d54383d04f27e76cd32616b79c0fcd60d3f3aaab40c7cffd34a9348c55a1484224713f72a55e072d7
|
||||
|
@ -0,0 +1,58 @@
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit bash-completion-r1
|
||||
|
||||
DESCRIPTION="Gentoo's multi-purpose configuration and management tool"
|
||||
HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Eselect"
|
||||
SRC_URI="https://dev.gentoo.org/~ulm/eselect/${P}.tar.xz"
|
||||
|
||||
LICENSE="GPL-2+ || ( GPL-2+ CC-BY-SA-4.0 )"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||
IUSE="doc emacs vim-syntax"
|
||||
|
||||
DEPEND="sys-apps/sed
|
||||
|| (
|
||||
sys-apps/coreutils
|
||||
app-misc/realpath
|
||||
)"
|
||||
RDEPEND="${DEPEND}
|
||||
sys-apps/file
|
||||
sys-libs/ncurses:0"
|
||||
BDEPEND="doc? ( dev-python/docutils )"
|
||||
PDEPEND="emacs? ( app-emacs/eselect-mode )
|
||||
vim-syntax? ( app-vim/eselect-syntax )"
|
||||
|
||||
src_compile() {
|
||||
emake
|
||||
use doc && emake html
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake DESTDIR="${D}" install
|
||||
newbashcomp misc/${PN}.bashcomp ${PN}
|
||||
dodoc AUTHORS ChangeLog NEWS README TODO doc/*.txt
|
||||
if use doc; then
|
||||
docinto html
|
||||
dodoc *.html doc/*.html doc/*.css
|
||||
fi
|
||||
|
||||
# needed by news module
|
||||
keepdir /var/lib/gentoo/news
|
||||
if ! use prefix; then
|
||||
fowners root:portage /var/lib/gentoo/news
|
||||
fperms g+w /var/lib/gentoo/news
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
# fowners in src_install doesn't work for the portage group:
|
||||
# merging changes the group back to root
|
||||
if ! use prefix; then
|
||||
chgrp portage "${EROOT}/var/lib/gentoo/news" \
|
||||
&& chmod g+w "${EROOT}/var/lib/gentoo/news"
|
||||
fi
|
||||
}
|
@ -1,3 +1 @@
|
||||
DIST graylog-3.3.16.tgz 129430640 BLAKE2B aa50a101c9aec9d0e32fe7dfbc0a1c29a7473658ca881f4977e6cc18c4764dde44991af35c19451e5452c0fd832b098743c01eb460d733ba2b1da7d2c5c42865 SHA512 bd6fcc71ad437293500359563662253ef7a38f5961a4dd8f5bfac67ef38ae7025593a69dd160bd8fe5efb48648125c0d441b2c7533e7432927069d6d68e0a239
|
||||
DIST graylog-4.0.15.tgz 190661423 BLAKE2B 2c651ba3aa539090cad2c9110b45f1f0faaec30571afa7e225d1c3b3dd3a5379d2cb5176ae708b9d2fb8e1704577966622f0e6fadc5463a152fb93873be31f29 SHA512 a25c1648b7b6237a9cb15801d4ca18a0a2e17c3140684550ffa11bb15e5ab34792a3dbea7241023fcef9aa436670ca9a582f05d1c145ab320006f8686ed6fc1c
|
||||
DIST graylog-4.1.10.tgz 197206255 BLAKE2B d92891a9d746b39f607ac736e60e8369a5dca59144b096ee12421f5d05d350e8e05cc3d73d90bf4dc045b2b76273d8ad67c85cb8f5436b1e1c4ae1af3907525d SHA512 2a7e0c7ffaa2f2508f087c807d9b248346ecb399b824410090ea7c59a6341e02a7bfedf6b4956e1def721535857de18e379673202f722384451653dd12e7bf3e
|
||||
DIST graylog-4.1.11.tgz 197190151 BLAKE2B 10e8006c967861aec826768ada2c965729e992eba3701e1475ad68aec5c31ce35c0bbb41ffa8f4a0735cdeb85c8502d462f9925918d568ccbc669e935bc31de4 SHA512 4f903ec470d60836be720f59c24b8454d0689b961af84623eaeb061d4e719cfc4fc0bcfde7074de8e6a3c6d1e3f608cdc6713b50f2d9031d298660c08cf4e219
|
||||
|
@ -1,83 +0,0 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
DESCRIPTION="Free and open source log management"
|
||||
HOMEPAGE="https://www.graylog.org"
|
||||
SRC_URI="https://downloads.graylog.org/releases/graylog/${P}.tgz"
|
||||
|
||||
LICENSE="GPL-3"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~ppc64 ~x86"
|
||||
RESTRICT="strip"
|
||||
|
||||
RDEPEND="!app-admin/graylog2
|
||||
acct-group/graylog
|
||||
acct-user/graylog
|
||||
>=virtual/jdk-1.8:*"
|
||||
|
||||
DOCS=(
|
||||
COPYING README.markdown UPGRADING.rst
|
||||
)
|
||||
|
||||
GRAYLOG_DATA_DIR="/var/lib/graylog"
|
||||
GRAYLOG_INSTALL_DIR="/usr/share/graylog"
|
||||
QA_PREBUILT="${GRAYLOG_INSTALL_DIR}/lib/sigar/libsigar*"
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
# Stick to architecture of build host
|
||||
if ! use amd64; then
|
||||
rm -r lib/sigar/libsigar-amd64-*.so || die "Failed in removing AMD64 support libraries"
|
||||
fi
|
||||
if ! use ppc64; then
|
||||
rm -r lib/sigar/libsigar-ppc64-*.so || die "Failed in removing PPC64 support libraries"
|
||||
fi
|
||||
if ! use x86; then
|
||||
rm -r lib/sigar/libsigar-x86-*.so || die "Failed in removing X86 support libraries"
|
||||
fi
|
||||
# Currently unsupported platforms
|
||||
# QA warning galore but testing/patches welcome
|
||||
rm lib/sigar/libsigar-*freebsd*so \
|
||||
lib/sigar/libsigar-*solaris*so \
|
||||
lib/sigar/libsigar-*hpux*.sl \
|
||||
lib/sigar/libsigar-*macosx*.dylib \
|
||||
lib/sigar/libsigar-ia64-*.so \
|
||||
lib/sigar/libsigar-ppc-*.so \
|
||||
lib/sigar/libsigar-s390x*.so \
|
||||
lib/sigar/*winnt* || die "Failed in removing unsupported platform libraries"
|
||||
|
||||
# gentoo specific paths
|
||||
sed -i "s@\(node_id_file = \).*@\1${GRAYLOG_DATA_DIR}/node-id@g; \
|
||||
s@\(message_journal_dir = \).*@\1${GRAYLOG_DATA_DIR}/data/journal@g;" \
|
||||
graylog.conf.example || die
|
||||
}
|
||||
|
||||
src_install() {
|
||||
default
|
||||
|
||||
insinto /etc/graylog
|
||||
doins graylog.conf.example
|
||||
|
||||
insinto "${GRAYLOG_INSTALL_DIR}"
|
||||
doins graylog.jar
|
||||
doins -r lib plugin
|
||||
|
||||
keepdir "${GRAYLOG_DATA_DIR}"
|
||||
|
||||
newconfd "${FILESDIR}/graylog.confd" graylog
|
||||
newinitd "${FILESDIR}/graylog.initd" graylog
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
ewarn "Graylog does not depend on need.net any more (#439092)."
|
||||
ewarn
|
||||
ewarn "Please configure rc_need according to your binding address in:"
|
||||
ewarn "/etc/conf.d/graylog"
|
||||
ewarn
|
||||
ewarn "Graylog requires Java >= 8"
|
||||
ewarn "Elasticsearch 5.x or 6.x (does NOT work with 7.x)"
|
||||
ewarn "and MongoDB 3.6, 4.0 or 4.2"
|
||||
}
|
@ -1,79 +0,0 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
DESCRIPTION="Free and open source log management"
|
||||
HOMEPAGE="https://www.graylog.org"
|
||||
SRC_URI="https://downloads.graylog.org/releases/graylog/${P}.tgz"
|
||||
|
||||
LICENSE="GPL-3"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~ppc64 ~x86"
|
||||
RESTRICT="strip"
|
||||
|
||||
RDEPEND="!app-admin/graylog2
|
||||
acct-group/graylog
|
||||
acct-user/graylog
|
||||
>=virtual/jdk-1.8:*"
|
||||
|
||||
DOCS=(
|
||||
README.markdown UPGRADING.rst
|
||||
)
|
||||
|
||||
GRAYLOG_DATA_DIR="/var/lib/graylog"
|
||||
GRAYLOG_INSTALL_DIR="/usr/share/graylog"
|
||||
QA_PREBUILT="${GRAYLOG_INSTALL_DIR}/lib/sigar/libsigar*"
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
# Stick to architecture of build host
|
||||
if ! use amd64; then
|
||||
rm -r lib/sigar/libsigar-amd64-*.so || die "Failed in removing AMD64 support libraries"
|
||||
fi
|
||||
if ! use ppc64; then
|
||||
rm -r lib/sigar/libsigar-ppc64-*.so || die "Failed in removing PPC64 support libraries"
|
||||
fi
|
||||
if ! use x86; then
|
||||
rm -r lib/sigar/libsigar-x86-*.so || die "Failed in removing X86 support libraries"
|
||||
fi
|
||||
# Currently unsupported platforms
|
||||
# QA warning galore but testing/patches welcome
|
||||
rm lib/sigar/libsigar-*freebsd*so \
|
||||
lib/sigar/libsigar-*solaris*so \
|
||||
lib/sigar/libsigar-*hpux*.sl \
|
||||
lib/sigar/libsigar-*macosx*.dylib \
|
||||
lib/sigar/libsigar-ia64-*.so \
|
||||
lib/sigar/libsigar-ppc-*.so \
|
||||
lib/sigar/libsigar-s390x*.so \
|
||||
lib/sigar/*winnt* || die "Failed in removing unsupported platform libraries"
|
||||
|
||||
# gentoo specific paths
|
||||
sed -i "s@\(node_id_file = \).*@\1${GRAYLOG_DATA_DIR}/node-id@g; \
|
||||
s@\(message_journal_dir = \).*@\1${GRAYLOG_DATA_DIR}/data/journal@g;" \
|
||||
graylog.conf.example || die
|
||||
}
|
||||
|
||||
src_install() {
|
||||
default
|
||||
|
||||
insinto /etc/graylog
|
||||
doins graylog.conf.example
|
||||
|
||||
insinto "${GRAYLOG_INSTALL_DIR}"
|
||||
doins graylog.jar
|
||||
doins -r lib plugin
|
||||
|
||||
keepdir "${GRAYLOG_DATA_DIR}"
|
||||
|
||||
newconfd "${FILESDIR}/graylog.confd" graylog
|
||||
newinitd "${FILESDIR}/graylog.initd" graylog
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
ewarn "Graylog does not depend on need.net any more (#439092)."
|
||||
ewarn
|
||||
ewarn "Please configure rc_need according to your binding address in:"
|
||||
ewarn "/etc/conf.d/graylog"
|
||||
}
|
@ -1,7 +1,7 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
EAPI=8
|
||||
|
||||
DESCRIPTION="Free and open source log management"
|
||||
HOMEPAGE="https://www.graylog.org"
|
@ -1 +1,2 @@
|
||||
DIST logrotate-3.18.1.tar.gz 225226 BLAKE2B 6f40dfe89f9c6202263f16204a9cff07b921abc9a298b58649bb4968c9f498626741be334c47d4092da564ed75642b687ff6ef8781f69f5e25364f8635646d9d SHA512 c40f920686aee014c652f087c64f2a85e9e866a8717d1bd3f32a9dd7959a02962e6174de28ae685428b442e12079d0c8d91485611ca34a873ffae872a54ec9fe
|
||||
DIST logrotate-3.19.0.tar.gz 228089 BLAKE2B aa5e932fe2056d150cc632134d80e160883b62e9f92a010bd5f5cded40a0362e28b966d006305b07030a8b07eb35a8e0c5b65b8d4bc87c278286b326cced1c46 SHA512 68bca961608565687a9ccb18e72f0627b405aff95286e508fdc78926d2cc172c56e1523a24ca81a161f683c2d568312984e2757edd291d144e0e4b982433e119
|
||||
|
@ -0,0 +1,96 @@
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit systemd tmpfiles
|
||||
|
||||
DESCRIPTION="Rotates, compresses, and mails system logs"
|
||||
HOMEPAGE="https://github.com/logrotate/logrotate"
|
||||
SRC_URI="https://github.com/${PN}/${PN}/releases/download/${PV}/${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
|
||||
IUSE="acl +cron selinux"
|
||||
|
||||
DEPEND=">=dev-libs/popt-1.5
|
||||
selinux? ( sys-libs/libselinux )
|
||||
acl? ( virtual/acl )"
|
||||
RDEPEND="${DEPEND}
|
||||
selinux? ( sec-policy/selinux-logrotate )
|
||||
cron? ( virtual/cron )"
|
||||
|
||||
STATEFILE="${EPREFIX}/var/lib/misc/logrotate.status"
|
||||
OLDSTATEFILE="${EPREFIX}/var/lib/logrotate.status"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${PN}-3.15.0-ignore-hidden.patch"
|
||||
)
|
||||
|
||||
move_old_state_file() {
|
||||
elog "logrotate state file is now located at ${STATEFILE}"
|
||||
elog "See bug #357275"
|
||||
if [[ -e "${OLDSTATEFILE}" ]] ; then
|
||||
elog "Moving your current state file to new location: ${STATEFILE}"
|
||||
mv -n "${OLDSTATEFILE}" "${STATEFILE}" || die
|
||||
fi
|
||||
}
|
||||
|
||||
install_cron_file() {
|
||||
exeinto /etc/cron.daily
|
||||
newexe "${S}"/examples/logrotate.cron "${PN}"
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
sed -i -e 's#/usr/sbin/logrotate#/usr/bin/logrotate#' examples/logrotate.{cron,service} || die
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
econf \
|
||||
$(use_with acl) \
|
||||
$(use_with selinux) \
|
||||
--with-state-file-path="${STATEFILE}"
|
||||
}
|
||||
|
||||
src_test() {
|
||||
emake test
|
||||
}
|
||||
|
||||
src_install() {
|
||||
dobin logrotate
|
||||
doman logrotate.8
|
||||
dodoc ChangeLog.md
|
||||
|
||||
insinto /etc
|
||||
doins "${FILESDIR}"/logrotate.conf
|
||||
|
||||
use cron && install_cron_file
|
||||
|
||||
systemd_dounit examples/logrotate.{service,timer}
|
||||
newtmpfiles "${FILESDIR}"/${PN}.tmpfiles ${PN}.conf
|
||||
|
||||
keepdir /etc/logrotate.d
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
elog
|
||||
elog "The ${PN} binary is now installed under /usr/bin. Please"
|
||||
elog "update your links"
|
||||
elog
|
||||
|
||||
move_old_state_file
|
||||
|
||||
tmpfiles_process ${PN}.conf
|
||||
|
||||
if [[ -z ${REPLACING_VERSIONS} ]] ; then
|
||||
elog "If you wish to have logrotate e-mail you updates, please"
|
||||
elog "emerge virtual/mailx and configure logrotate in"
|
||||
elog "/etc/logrotate.conf appropriately"
|
||||
elog
|
||||
elog "Additionally, /etc/logrotate.conf may need to be modified"
|
||||
elog "for your particular needs. See man logrotate for details."
|
||||
fi
|
||||
}
|
Binary file not shown.
@ -1,2 +1 @@
|
||||
DIST engrampa-1.24.1.tar.xz 1680000 BLAKE2B 3059f98e5db99aabe270a89d7edf334ddca8b9cfd963a34f8b7b99356a1b7a9b14c9f641ea6582f893a5f6e4fe46dde00e5375d7b1c71b80299a7f5121839549 SHA512 9d51f24987cecfdd2c560b1ac8f8699bb5ed010bcd5b4a449a1103f725bc63046d0813d28424a3ae7dfcee0568dbf2a282f27ac5512b1c342dafeaec5bcd3b4b
|
||||
DIST engrampa-1.24.2.tar.xz 1687432 BLAKE2B b2ef407aef77f9ecd3f8b06d2e991615a39fa2d4487678292d035a7cab882551bc8c757c6a15037b828cb51aaba14c2ec25e85e891770f6f8c9b453753d87b42 SHA512 1e0acecfe42e3945fe43729283522dfd56dc4cee92a4d5998c995a496f42f41b284ec10f01eb142139c1cec65e3b5a037299b168b73a2e6e828ae3ab4b9c777d
|
||||
|
@ -1,69 +0,0 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
MATE_LA_PUNT="yes"
|
||||
|
||||
inherit mate optfeature readme.gentoo-r1
|
||||
|
||||
if [[ ${PV} != 9999 ]]; then
|
||||
KEYWORDS="amd64 ~arm ~arm64 x86"
|
||||
fi
|
||||
|
||||
DESCRIPTION="Engrampa archive manager for MATE"
|
||||
LICENSE="FDL-1.1+ GPL-2+ LGPL-2+"
|
||||
SLOT="0"
|
||||
|
||||
IUSE="caja magic packagekit"
|
||||
|
||||
COMMON_DEPEND="
|
||||
>=dev-libs/glib-2.50:2
|
||||
>=dev-libs/json-glib-0.14
|
||||
virtual/libintl
|
||||
x11-libs/gdk-pixbuf:2
|
||||
>=x11-libs/gtk+-3.22:3[X]
|
||||
x11-libs/libSM
|
||||
x11-libs/pango
|
||||
caja? ( >=mate-base/caja-1.17.1 )
|
||||
magic? ( sys-apps/file )
|
||||
packagekit? ( app-admin/packagekit-base )
|
||||
"
|
||||
|
||||
RDEPEND="${COMMON_DEPEND}
|
||||
virtual/libintl
|
||||
!!app-arch/mate-file-archiver
|
||||
"
|
||||
|
||||
DEPEND="${COMMON_DEPEND}
|
||||
app-text/yelp-tools
|
||||
dev-util/glib-utils
|
||||
>=sys-devel/gettext-0.19.8
|
||||
virtual/pkgconfig
|
||||
"
|
||||
|
||||
src_configure() {
|
||||
mate_src_configure \
|
||||
--disable-run-in-place \
|
||||
$(use_enable caja caja-actions) \
|
||||
$(use_enable magic) \
|
||||
$(use_enable packagekit)
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
mate_pkg_postinst
|
||||
optfeature "Support for 7-zip" app-arch/p7zip
|
||||
optfeature "Support for ace" app-arch/unace
|
||||
optfeature "Support for arj" app-arch/arj
|
||||
optfeature "Support for cpio" app-arch/cpio
|
||||
optfeature "Support for deb" app-arch/dpkg
|
||||
optfeature "Support for iso" app-cdr/cdrtools
|
||||
optfeature "Support for jar,zip" app-arch/zip app-arch/unzip
|
||||
optfeature "Support for lha" app-arch/lha
|
||||
optfeature "Support for lzma" app-arch/xz-utils
|
||||
optfeature "Support for lzop" app-arch/lzop
|
||||
optfeature "Support for rar" app-arch/unrar
|
||||
optfeature "Support for rpm" app-arch/rpm
|
||||
optfeature "Support for unstuff" app-arch/stuffit
|
||||
optfeature "Support for zoo" app-arch/zoo
|
||||
}
|
Binary file not shown.
@ -1,2 +1,3 @@
|
||||
DIST flannel-0.14.0.tar.gz 8324790 BLAKE2B 47fd65d531f9fa10e602ccf1858549ede97d8f8c9afa32ffeb010d733060703262cafd02b5daddc65142dfa96b1c6b429eaff30b7fdaca27e2a5397c0d756e7c SHA512 a5d9f45d55f18c744e635b4d697200cf9d5a8c4387cd6d9c57220e652e3688337f2ee50fef193135dd0073b14edb8800fac8d5ca9f9d0d3e9ef70d09a52f259c
|
||||
DIST flannel-0.16.0.tar.gz 8697548 BLAKE2B a307990554a6cf215bef6ac75a544d00d8c6cd702f02e98efaf80b89d0ecf4592c1c338d1f80cf22ee086355ee7edb77492e6af587cbf037f38b6e3dbc4ac252 SHA512 7b80fe1e282c312b8b242d2201ecd164d87b551f4bc02d8375ca856c0dcfad2d31bd1b4041663016130b0bd7ebaf0062afe59c0946e97f10478142ca8ffd94f0
|
||||
DIST flannel-0.16.1.tar.gz 8697974 BLAKE2B bff4d5a6fe179129fa9ae494291301b25bc3ff9d6f4049b990f50b01920dfd20d149eb85339e2930b66dd060aca57f269a3b21fa508a3c95f5d152bbfb91631f SHA512 699ba7e7b80dd60a03bb5c6ee384a582201d8167ef21e60816ca9942a9d70ba0fd7633a3d2a44802f9f0a0851a79709afe78bd46f15ca81641ff64d46859f928
|
||||
|
@ -0,0 +1,54 @@
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
inherit go-module systemd tmpfiles
|
||||
|
||||
KEYWORDS="~amd64 ~arm64"
|
||||
DESCRIPTION="An etcd backed network fabric for containers"
|
||||
HOMEPAGE="https://github.com/coreos/flannel"
|
||||
SRC_URI="https://github.com/coreos/flannel/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
|
||||
LICENSE="Apache-2.0 BSD ISC LGPL-3 MIT"
|
||||
SLOT="0"
|
||||
IUSE="hardened"
|
||||
|
||||
RESTRICT+=" test"
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
sed -e "s:^var Version =.*:var Version = \"${PV}\":" \
|
||||
-i "${S}/version/version.go" || die
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
CGO_LDFLAGS="$(usex hardened '-fno-PIC ' '')"\
|
||||
go build -o dist/flanneld -ldflags "
|
||||
-X github.com/flannel-io/flannel/version.Version=v${PV}
|
||||
-extldflags \"-static\"" . || die
|
||||
}
|
||||
|
||||
src_test() {
|
||||
GOPATH="${WORKDIR}/${P}" \
|
||||
go test -v -work -x "${EGO_PN}" || die
|
||||
}
|
||||
|
||||
src_install() {
|
||||
dobin dist/${PN}d
|
||||
exeinto /usr/libexec/flannel
|
||||
doexe dist/mk-docker-opts.sh
|
||||
insinto /etc/systemd/system/docker.service.d
|
||||
newins "${FILESDIR}/flannel-docker.conf" flannel.conf
|
||||
newinitd "${FILESDIR}"/flanneld.initd flanneld
|
||||
newconfd "${FILESDIR}"/flanneld.confd flanneld
|
||||
keepdir /var/log/${PN}
|
||||
insinto /etc/logrotate.d
|
||||
newins "${FILESDIR}"/flanneld.logrotated flanneld
|
||||
newtmpfiles "${FILESDIR}/flannel.tmpfilesd" flannel.conf
|
||||
systemd_dounit "${FILESDIR}/flanneld.service"
|
||||
dodoc README.md
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
tmpfiles_process flannel.conf
|
||||
}
|
@ -1,2 +1,3 @@
|
||||
DIST snapd-2.53.4.tar.xz 4722696 BLAKE2B c4347db8d5a14b30f1e8811e9425dd7419dd2dcad02fc1cb6a51968cd7fa6a58da2b172c041de02202cbdba1072cb0a7a92d7f92def5c5dc1e253cbcbad86aae SHA512 0b4164d3c3c3ccc99b3fa1e25d9e7e3184a5f94deca5fd83bd6d4c7761b41d6ebd5fefd1e87432a5e18c716b3330b3991134f179e1b03326edd9511ebea4ef9a
|
||||
DIST snapd-2.54.1.tar.xz 4818344 BLAKE2B 654d4d6a8f08dabeb6c10ea3639e1fc31b68720953bd1456695eb6c1275f260e2793e49c39c80571727fb74c954583b1a2188c461b415803210be59c57775292 SHA512 65e14c85ab62d601fa46a271ba4322531a72e7d8880833cd74daac682188808ebd8c730c1fa62dea07d8f20ba76d314f84f89b3e565eaf3ae509a569f3ee7305
|
||||
DIST snapd-2.54.2.tar.xz 4824508 BLAKE2B b893a08a61e7db059f0a7ccdf7de01a8b8e4de65fb93fd44c23cec7fd557db692421da09a8ba705e9a8e734606267419291abe5d4e7a12883a68270f66d5b833 SHA512 9aec3c126d82f5e4e17c69af922dfe4e4f17950bf308217fece5fd3816f083b26e42d672052a6e6573d7c7064ea75f168fe7771840c68a3eb85184d6a17df3bd
|
||||
|
@ -0,0 +1,180 @@
|
||||
# Copyright 2020-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
EGO_PN="github.com/snapcore/${PN}"
|
||||
inherit autotools bash-completion-r1 golang-vcs-snapshot linux-info readme.gentoo-r1 systemd xdg-utils
|
||||
|
||||
DESCRIPTION="Service and tools for management of snap packages"
|
||||
HOMEPAGE="http://snapcraft.io/"
|
||||
|
||||
MY_S="${S}/src/github.com/snapcore/${PN}"
|
||||
|
||||
SRC_URI="https://github.com/snapcore/${PN}/releases/download/${PV}/${PN}_${PV}.vendor.tar.xz -> ${P}.tar.xz"
|
||||
MY_PV=${PV}
|
||||
KEYWORDS="~amd64"
|
||||
|
||||
LICENSE="GPL-3 Apache-2.0 BSD BSD-2 LGPL-3-with-linking-exception MIT"
|
||||
SLOT="0"
|
||||
IUSE="apparmor +cgroup-hybrid +forced-devmode gtk kde systemd"
|
||||
REQUIRED_USE="!forced-devmode? ( apparmor cgroup-hybrid ) systemd"
|
||||
|
||||
CONFIG_CHECK="~CGROUPS
|
||||
~CGROUP_DEVICE
|
||||
~CGROUP_FREEZER
|
||||
~NAMESPACES
|
||||
~SQUASHFS
|
||||
~SQUASHFS_ZLIB
|
||||
~SQUASHFS_LZO
|
||||
~SQUASHFS_XZ
|
||||
~BLK_DEV_LOOP
|
||||
~SECCOMP
|
||||
~SECCOMP_FILTER"
|
||||
|
||||
RDEPEND="
|
||||
sys-libs/libseccomp:=
|
||||
apparmor? (
|
||||
sec-policy/apparmor-profiles
|
||||
sys-apps/apparmor:=
|
||||
)
|
||||
dev-libs/glib
|
||||
virtual/libudev
|
||||
systemd? ( sys-apps/systemd[cgroup-hybrid(+)?] )
|
||||
sys-libs/libcap:=
|
||||
sys-fs/squashfs-tools[lzma]"
|
||||
|
||||
DEPEND="${RDEPEND}"
|
||||
|
||||
BDEPEND="
|
||||
>=dev-lang/go-1.9
|
||||
dev-python/docutils
|
||||
sys-devel/gettext
|
||||
sys-fs/xfsprogs"
|
||||
|
||||
PDEPEND="sys-auth/polkit[gtk?,kde?]"
|
||||
|
||||
README_GENTOO_SUFFIX=""
|
||||
|
||||
pkg_setup() {
|
||||
if use apparmor; then
|
||||
CONFIG_CHECK+=" ~SECURITY_APPARMOR"
|
||||
fi
|
||||
linux-info_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
# Update apparmor profile to allow libtinfow.so*
|
||||
sed -i 's/libtinfo/libtinfo{,w}/' \
|
||||
"${MY_S}/cmd/snap-confine/snap-confine.apparmor.in" || die
|
||||
|
||||
if ! use forced-devmode; then
|
||||
sed -e 's#return !apparmorFull#if !apparmorFull {\n\t\tpanic("USE=forced-devmode is disabled")\n\t}\n\treturn false#' \
|
||||
-i "${MY_S}/sandbox/forcedevmode.go" || die
|
||||
grep -q 'panic("USE=forced-devmode is disabled")' "${MY_S}/sandbox/forcedevmode.go" || die "failed to disable forced-devmode"
|
||||
fi
|
||||
|
||||
sed -i 's:command -v git >/dev/null:false:' -i "${MY_S}/mkversion.sh" || die
|
||||
|
||||
pushd "${MY_S}" >/dev/null || die
|
||||
./mkversion.sh "${PV}"
|
||||
popd >/dev/null || die
|
||||
pushd "${MY_S}/cmd" >/dev/null || die
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
SNAPD_MAKEARGS=(
|
||||
"BINDIR=${EPREFIX}/usr/bin"
|
||||
"DBUSSERVICESDIR=${EPREFIX}/usr/share/dbus-1/services"
|
||||
"LIBEXECDIR=${EPREFIX}/usr/lib"
|
||||
"SNAP_MOUNT_DIR=${EPREFIX}/var/lib/snapd/snap"
|
||||
"SYSTEMDSYSTEMUNITDIR=$(systemd_get_systemunitdir)"
|
||||
)
|
||||
export CGO_ENABLED="1"
|
||||
export CGO_CFLAGS="${CFLAGS}"
|
||||
export CGO_CPPFLAGS="${CPPFLAGS}"
|
||||
export CGO_CXXFLAGS="${CXXFLAGS}"
|
||||
|
||||
pushd "${MY_S}/cmd" >/dev/null || die
|
||||
econf --libdir="${EPREFIX}/usr/lib" \
|
||||
--libexecdir="${EPREFIX}/usr/lib/snapd" \
|
||||
$(use_enable apparmor) \
|
||||
--enable-nvidia-biarch \
|
||||
--with-snap-mount-dir="${EPREFIX}/var/lib/snapd/snap"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
export -n GOCACHE XDG_CACHE_HOME
|
||||
export GO111MODULE=off GOBIN="${S}/bin" GOPATH="${S}"
|
||||
|
||||
local file
|
||||
for file in "${MY_S}/po/"*.po; do
|
||||
msgfmt "${file}" -o "${file%.po}.mo" || die
|
||||
done
|
||||
|
||||
emake -C "${MY_S}/data" "${SNAPD_MAKEARGS[@]}"
|
||||
|
||||
local -a flags=(-buildmode=pie -ldflags "-s -linkmode external -extldflags '${LDFLAGS}'" -trimpath)
|
||||
local -a staticflags=(-buildmode=pie -ldflags "-s -linkmode external -extldflags '${LDFLAGS} -static'" -trimpath)
|
||||
|
||||
local cmd
|
||||
for cmd in snap snapd snap-bootstrap snap-failure snap-preseed snap-recovery-chooser snap-repair snap-seccomp; do
|
||||
go build -o "${GOBIN}/${cmd}" "${flags[@]}" \
|
||||
-v -x "github.com/snapcore/${PN}/cmd/${cmd}"
|
||||
[[ -e "${GOBIN}/${cmd}" ]] || die "failed to build ${cmd}"
|
||||
done
|
||||
for cmd in snapctl snap-exec snap-update-ns; do
|
||||
go build -o "${GOBIN}/${cmd}" "${staticflags[@]}" \
|
||||
-v -x "github.com/snapcore/${PN}/cmd/${cmd}"
|
||||
[[ -e "${GOBIN}/${cmd}" ]] || die "failed to build ${cmd}"
|
||||
done
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake -C "${MY_S}/data" install "${SNAPD_MAKEARGS[@]}" DESTDIR="${D}"
|
||||
emake -C "${MY_S}/cmd" install "${SNAPD_MAKEARGS[@]}" DESTDIR="${D}"
|
||||
|
||||
if use apparmor; then
|
||||
mv "${ED}/etc/apparmor.d/usr.lib.snapd.snap-confine"{,.real} || die
|
||||
keepdir /var/lib/snapd/apparmor/profiles
|
||||
fi
|
||||
keepdir /var/lib/snapd/{apparmor/snap-confine,cache,cookie,snap,void}
|
||||
fperms 700 /var/lib/snapd/{cache,cookie}
|
||||
|
||||
dobin "${GOBIN}/"{snap,snapctl}
|
||||
ln "${ED}/usr/bin/snapctl" "${ED}/usr/lib/snapd/snapctl" || die
|
||||
|
||||
exeinto /usr/lib/snapd
|
||||
doexe "${GOBIN}/"{snapd,snap-bootstrap,snap-failure,snap-exec,snap-preseed,snap-recovery-chooser,snap-repair,snap-seccomp,snap-update-ns} \
|
||||
"${MY_S}/"{cmd/snap-discard-ns/snap-discard-ns,cmd/snap-gdb-shim/snap-gdb-shim,cmd/snap-mgmt/snap-mgmt} \
|
||||
"${MY_S}/data/completion/bash/"{complete.sh,etelpmoc.sh,}
|
||||
|
||||
dobashcomp "${MY_S}/data/completion/bash/snap"
|
||||
|
||||
insinto /usr/share/zsh/site-functions
|
||||
doins "${MY_S}/data/completion/zsh/_snap"
|
||||
|
||||
insinto "/usr/share/polkit-1/actions"
|
||||
doins "${MY_S}/data/polkit/io.snapcraft.snapd.policy"
|
||||
|
||||
dodoc "${MY_S}/packaging/ubuntu-16.04/changelog"
|
||||
domo "${MY_S}/po/"*.mo
|
||||
|
||||
readme.gentoo_create_doc
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
readme.gentoo_print_elog
|
||||
xdg_desktop_database_update
|
||||
|
||||
if use apparmor && [[ -z ${ROOT} && -e /sys/kernel/security/apparmor/profiles &&
|
||||
$(wc -l < /sys/kernel/security/apparmor/profiles) -gt 0 ]]; then
|
||||
apparmor_parser -r "${EPREFIX}/etc/apparmor.d/usr.lib.snapd.snap-confine.real"
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
xdg_desktop_database_update
|
||||
}
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -0,0 +1,383 @@
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
# Please bump with app-editors/vim-core and app-editors/gvim
|
||||
|
||||
VIM_VERSION="8.2"
|
||||
LUA_COMPAT=( lua5-1 luajit )
|
||||
PYTHON_COMPAT=( python3_{7..10} )
|
||||
PYTHON_REQ_USE="threads(+)"
|
||||
USE_RUBY="ruby24 ruby25 ruby26 ruby27"
|
||||
|
||||
inherit vim-doc flag-o-matic xdg-utils bash-completion-r1 prefix lua-single python-single-r1 ruby-single
|
||||
|
||||
if [[ ${PV} == 9999* ]]; then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="https://github.com/vim/vim.git"
|
||||
EGIT_CHECKOUT_DIR=${WORKDIR}/vim-${PV}
|
||||
else
|
||||
SRC_URI="https://github.com/vim/vim/archive/v${PV}.tar.gz -> vim-${PV}.tar.gz
|
||||
https://dev.gentoo.org/~zlogene/distfiles/app-editors/vim/vim-8.2.0360-gentoo-patches.tar.xz"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-solaris"
|
||||
fi
|
||||
S="${WORKDIR}"/vim-${PV}
|
||||
|
||||
DESCRIPTION="GUI version of the Vim text editor"
|
||||
HOMEPAGE="https://vim.sourceforge.io/ https://github.com/vim/vim"
|
||||
|
||||
LICENSE="vim"
|
||||
SLOT="0"
|
||||
IUSE="acl aqua crypt cscope debug gtk gtk2 lua motif neXt netbeans nls perl python racket ruby selinux session sound tcl"
|
||||
REQUIRED_USE="
|
||||
lua? ( ${LUA_REQUIRED_USE} )
|
||||
python? ( ${PYTHON_REQUIRED_USE} )
|
||||
"
|
||||
|
||||
RDEPEND="
|
||||
~app-editors/vim-core-${PV}
|
||||
>=app-eselect/eselect-vi-1.1
|
||||
>=sys-libs/ncurses-5.2-r2:0=
|
||||
x11-libs/libICE
|
||||
x11-libs/libSM
|
||||
x11-libs/libXext
|
||||
x11-libs/libXt
|
||||
acl? ( kernel_linux? ( sys-apps/acl ) )
|
||||
!aqua? (
|
||||
gtk? (
|
||||
x11-libs/gtk+:3
|
||||
x11-libs/libXft
|
||||
)
|
||||
!gtk? (
|
||||
gtk2? (
|
||||
>=x11-libs/gtk+-2.6:2
|
||||
x11-libs/libXft
|
||||
)
|
||||
!gtk2? (
|
||||
motif? ( >=x11-libs/motif-2.3:0 )
|
||||
!motif? (
|
||||
neXt? ( x11-libs/neXtaw )
|
||||
!neXt? ( x11-libs/libXaw )
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
crypt? ( dev-libs/libsodium:= )
|
||||
cscope? ( dev-util/cscope )
|
||||
lua? (
|
||||
${LUA_DEPS}
|
||||
$(lua_gen_impl_dep 'deprecated' lua5-1)
|
||||
)
|
||||
nls? ( virtual/libintl )
|
||||
perl? ( dev-lang/perl:= )
|
||||
python? ( ${PYTHON_DEPS} )
|
||||
racket? ( dev-scheme/racket )
|
||||
ruby? ( ${RUBY_DEPS} )
|
||||
selinux? ( sys-libs/libselinux )
|
||||
session? ( x11-libs/libSM )
|
||||
sound? ( media-libs/libcanberra )
|
||||
tcl? ( dev-lang/tcl:0= )
|
||||
"
|
||||
DEPEND="${RDEPEND}"
|
||||
# configure runs the Lua interpreter
|
||||
BDEPEND="
|
||||
sys-devel/autoconf
|
||||
virtual/pkgconfig
|
||||
lua? ( ${LUA_DEPS} )
|
||||
nls? ( sys-devel/gettext )
|
||||
"
|
||||
|
||||
# various failures (bugs #630042 and #682320)
|
||||
RESTRICT="test"
|
||||
|
||||
pkg_setup() {
|
||||
# people with broken alphabets run into trouble. bug 82186.
|
||||
unset LANG LC_ALL
|
||||
export LC_COLLATE="C"
|
||||
|
||||
# Gnome sandbox silliness. bug #114475.
|
||||
mkdir -p "${T}"/home || die
|
||||
export HOME="${T}"/home
|
||||
|
||||
use lua && lua-single_pkg_setup
|
||||
use python && python-single-r1_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
if [[ ${PV} != 9999* ]]; then
|
||||
# Gentoo patches to fix runtime issues, cross-compile errors, etc
|
||||
eapply "${WORKDIR}"/patches/
|
||||
fi
|
||||
|
||||
# Fixup a script to use awk instead of nawk
|
||||
sed -i -e \
|
||||
'1s|.*|#!'"${EPREFIX}"'/usr/bin/awk -f|' \
|
||||
"${S}"/runtime/tools/mve.awk || die "mve.awk sed failed"
|
||||
|
||||
# Read vimrc and gvimrc from /etc/vim
|
||||
echo '#define SYS_VIMRC_FILE "'${EPREFIX}'/etc/vim/vimrc"' \
|
||||
>> "${S}"/src/feature.h || die "echo failed"
|
||||
echo '#define SYS_GVIMRC_FILE "'${EPREFIX}'/etc/vim/gvimrc"' \
|
||||
>> "${S}"/src/feature.h || die "echo failed"
|
||||
|
||||
# Use exuberant ctags which installs as /usr/bin/exuberant-ctags.
|
||||
# Hopefully this pattern won't break for a while at least.
|
||||
# This fixes bug 29398 (27 Sep 2003 agriffis)
|
||||
sed -i -e \
|
||||
's/\<ctags\("\| [-*.]\)/exuberant-&/g' \
|
||||
"${S}"/runtime/doc/syntax.txt \
|
||||
"${S}"/runtime/doc/tagsrch.txt \
|
||||
"${S}"/runtime/doc/usr_29.txt \
|
||||
"${S}"/runtime/menu.vim \
|
||||
"${S}"/src/configure.ac || die 'sed failed'
|
||||
|
||||
# Don't be fooled by /usr/include/libc.h. When found, vim thinks
|
||||
# this is NeXT, but it's actually just a file in dev-libs/9libs
|
||||
# This fixes bug 43885 (20 Mar 2004 agriffis)
|
||||
sed -i -e \
|
||||
's/ libc\.h / /' "${S}"/src/configure.ac || die 'sed failed'
|
||||
|
||||
# gcc on sparc32 has this, uhm, interesting problem with detecting EOF
|
||||
# correctly. To avoid some really entertaining error messages about stuff
|
||||
# which isn't even in the source file being invalid, we'll do some trickery
|
||||
# to make the error never occur. bug 66162 (02 October 2004 ciaranm)
|
||||
find "${S}" -name '*.c' | while read c; do
|
||||
echo >> "$c" || die "echo failed"
|
||||
done
|
||||
|
||||
# Try to avoid sandbox problems. Bug #114475.
|
||||
if [[ -d "${S}"/src/po ]]; then
|
||||
sed -i -e \
|
||||
'/-S check.vim/s,..VIM.,ln -s $(VIM) testvim \; ./testvim -X,' \
|
||||
"${S}"/src/po/Makefile || die
|
||||
fi
|
||||
|
||||
cp -v "${S}"/src/config.mk.dist "${S}"/src/auto/config.mk || die "cp failed"
|
||||
|
||||
# Bug #378107 - Build properly with >=perl-core/ExtUtils-ParseXS-3.20.0
|
||||
sed -i -e \
|
||||
"s:\\\$(PERLLIB)/ExtUtils/xsubpp:${EPREFIX}/usr/bin/xsubpp:" \
|
||||
"${S}"/src/Makefile || die 'sed for ExtUtils-ParseXS failed'
|
||||
|
||||
eapply_user
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local myconf=()
|
||||
|
||||
# Fix bug 37354: Disallow -funroll-all-loops on amd64
|
||||
# Bug 57859 suggests that we want to do this for all archs
|
||||
filter-flags -funroll-all-loops
|
||||
|
||||
# Fix bug 76331: -O3 causes problems, use -O2 instead. We'll do this for
|
||||
# everyone since previous flag filtering bugs have turned out to affect
|
||||
# multiple archs...
|
||||
replace-flags -O3 -O2
|
||||
|
||||
# Fix bug 18245: Prevent "make" from the following chain:
|
||||
# (1) Notice configure.ac is newer than auto/configure
|
||||
# (2) Rebuild auto/configure
|
||||
# (3) Notice auto/configure is newer than auto/config.mk
|
||||
# (4) Run ./configure (with wrong args) to remake auto/config.mk
|
||||
sed -i -e \
|
||||
's# auto/config\.mk:#:#' src/Makefile || die "Makefile sed failed"
|
||||
rm -v src/auto/configure || die "rm failed"
|
||||
emake -j1 -C src autoconf
|
||||
|
||||
# This should fix a sandbox violation (see bug 24447). The hvc
|
||||
# things are for ppc64, see bug 86433.
|
||||
local file
|
||||
for file in /dev/pty/s* /dev/console /dev/hvc/* /dev/hvc*; do
|
||||
if [[ -e ${file} ]]; then
|
||||
addwrite $file
|
||||
fi
|
||||
done
|
||||
|
||||
use debug && append-flags "-DDEBUG"
|
||||
|
||||
myconf=(
|
||||
--with-features=huge
|
||||
--disable-gpm
|
||||
--with-gnome=no
|
||||
$(use_enable sound canberra)
|
||||
$(use_enable acl)
|
||||
$(use_enable crypt libsodium)
|
||||
$(use_enable cscope)
|
||||
$(use_enable netbeans)
|
||||
$(use_enable nls)
|
||||
$(use_enable perl perlinterp)
|
||||
$(use_enable python python3interp)
|
||||
$(use_with python python3-command "${PYTHON}")
|
||||
$(use_enable racket mzschemeinterp)
|
||||
$(use_enable ruby rubyinterp)
|
||||
$(use_enable selinux)
|
||||
$(use_enable session xsmp)
|
||||
$(use_enable tcl tclinterp)
|
||||
)
|
||||
|
||||
# --with-features=huge forces on cscope even if we --disable it. We need
|
||||
# to sed this out to avoid screwiness. (1 Sep 2004 ciaranm)
|
||||
if ! use cscope; then
|
||||
sed -i -e \
|
||||
'/# define FEAT_CSCOPE/d' src/feature.h || die "couldn't disable cscope"
|
||||
fi
|
||||
|
||||
if use lua; then
|
||||
myconf+=(
|
||||
--enable-luainterp
|
||||
$(use_with lua_single_target_luajit luajit)
|
||||
--with-lua-prefix="${EPREFIX}/usr"
|
||||
)
|
||||
fi
|
||||
|
||||
# gvim's GUI preference order is as follows:
|
||||
# aqua CARBON (not tested)
|
||||
# -aqua gtk GTK3
|
||||
# -aqua -gtk gtk2 GTK2
|
||||
# -aqua -gtk -gtk motif MOTIF
|
||||
# -aqua -gtk -gtk -motif neXt NEXTAW
|
||||
# -aqua -gtk -gtk -motif -neXt ATHENA
|
||||
echo ; echo
|
||||
if use aqua; then
|
||||
einfo "Building gvim with the Carbon GUI"
|
||||
myconf+=(
|
||||
--enable-darwin
|
||||
--enable-gui=carbon
|
||||
)
|
||||
elif use gtk; then
|
||||
myconf+=( --enable-gtk3-check )
|
||||
einfo "Building gvim with the gtk+-3 GUI"
|
||||
myconf+=( --enable-gui=gtk3 )
|
||||
elif use gtk2; then
|
||||
myconf+=( --enable-gtk2-check )
|
||||
einfo "Building gvim with the gtk+-2 GUI"
|
||||
myconf+=( --enable-gui=gtk2 )
|
||||
elif use motif; then
|
||||
einfo "Building gvim with the MOTIF GUI"
|
||||
myconf+=( --enable-gui=motif )
|
||||
elif use neXt; then
|
||||
einfo "Building gvim with the neXtaw GUI"
|
||||
myconf+=( --enable-gui=nextaw )
|
||||
else
|
||||
einfo "Building gvim with the Athena GUI"
|
||||
myconf+=( --enable-gui=athena )
|
||||
fi
|
||||
echo ; echo
|
||||
|
||||
# let package manager strip binaries
|
||||
export ac_cv_prog_STRIP="$(type -P true ) faking strip"
|
||||
|
||||
# keep prefix env contained within the EPREFIX
|
||||
use prefix && myconf+=( --without-local-dir )
|
||||
|
||||
if [[ ${CHOST} == *-interix* ]]; then
|
||||
# avoid finding of this function, to avoid having to patch either
|
||||
# configure or the source, which would be much more hackish.
|
||||
# after all vim does it right, only interix is badly broken (again)
|
||||
export ac_cv_func_sigaction=no
|
||||
fi
|
||||
|
||||
econf \
|
||||
--with-modified-by=Gentoo-${PVR} \
|
||||
--with-vim-name=gvim \
|
||||
--with-x \
|
||||
"${myconf[@]}"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# The following allows emake to be used
|
||||
emake -j1 -C src auto/osdef.h objects
|
||||
|
||||
emake
|
||||
}
|
||||
|
||||
src_test() {
|
||||
einfo
|
||||
einfo "Starting vim tests. Several error messages will be shown"
|
||||
einfo "while the tests run. This is normal behaviour and does not"
|
||||
einfo "indicate a fault."
|
||||
einfo
|
||||
ewarn "If the tests fail, your terminal may be left in a strange"
|
||||
ewarn "state. Usually, running 'reset' will fix this."
|
||||
einfo
|
||||
|
||||
# Don't let vim talk to X
|
||||
unset DISPLAY
|
||||
|
||||
# Make gvim not try to connect to X. See :help gui-x11-start in vim for how
|
||||
# this evil trickery works.
|
||||
ln -s "${S}"/src/gvim "${S}"/src/testvim || die
|
||||
|
||||
# Make sure our VIMPROG is used.
|
||||
sed -i -e 's:\.\./vim:../testvim:' src/testdir/test49.vim || die
|
||||
|
||||
# Don't do additional GUI tests.
|
||||
emake -j1 VIMPROG=../testvim -C src/testdir nongui
|
||||
}
|
||||
|
||||
# Call eselect vi update with --if-unset
|
||||
# to respect user's choice (bug 187449)
|
||||
eselect_vi_update() {
|
||||
einfo "Calling eselect vi update..."
|
||||
eselect vi update --if-unset
|
||||
eend $?
|
||||
}
|
||||
|
||||
src_install() {
|
||||
local vimfiles=/usr/share/vim/vim${VIM_VERSION/.}
|
||||
|
||||
dobin src/gvim
|
||||
dosym gvim /usr/bin/gvimdiff
|
||||
dosym gvim /usr/bin/evim
|
||||
dosym gvim /usr/bin/eview
|
||||
dosym gvim /usr/bin/gview
|
||||
dosym gvim /usr/bin/rgvim
|
||||
dosym gvim /usr/bin/rgview
|
||||
|
||||
emake -C src DESTDIR="${D}" DATADIR="${EPREFIX}"/usr/share install-icons
|
||||
|
||||
dodir /usr/share/man/man1
|
||||
echo ".so vim.1" > "${ED}"/usr/share/man/man1/gvim.1 || die "echo failed"
|
||||
echo ".so vim.1" > "${ED}"/usr/share/man/man1/gview.1 || die "echo failed"
|
||||
echo ".so vimdiff.1" > "${ED}"/usr/share/man/man1/gvimdiff.1 || \
|
||||
die "echo failed"
|
||||
|
||||
insinto /etc/vim
|
||||
newins "${FILESDIR}"/gvimrc-r1 gvimrc
|
||||
eprefixify "${ED}"/etc/vim/gvimrc
|
||||
|
||||
# bash completion script, bug #79018.
|
||||
newbashcomp "${FILESDIR}"/${PN}-completion ${PN}
|
||||
|
||||
# don't install vim desktop file
|
||||
rm -v "${ED}"/usr/share/applications/vim.desktop || die "failed to remove vim.desktop"
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
# update documentation tags (from vim-doc.eclass)
|
||||
update_vim_helptags
|
||||
|
||||
# update fdo mime stuff, bug #78394
|
||||
xdg_desktop_database_update
|
||||
|
||||
# update icon cache
|
||||
xdg_icon_cache_update
|
||||
|
||||
# call eselect vi update
|
||||
eselect_vi_update
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
# update documentation tags (from vim-doc.eclass)
|
||||
update_vim_helptags
|
||||
|
||||
# update fdo mime stuff, bug #78394
|
||||
xdg_desktop_database_update
|
||||
|
||||
# update icon cache
|
||||
xdg_icon_cache_update
|
||||
|
||||
# call eselect vi update
|
||||
eselect_vi_update
|
||||
}
|
@ -1 +1,2 @@
|
||||
DIST hexedit-1.2.13.src.tgz 68778 BLAKE2B 377c4f0008f6e3b54e4cf2e0249fa344b684b11a6acea9daf7d8e6585524f9d11a4eb199d5289a57a72be5efbdf3060cc47269aad1d218784e7679a469ca4f50 SHA512 df9afb0b9b965e20ea8c427c1986b0200216601b157862199c35bae9e201ccc478ab0bfecd39d0dfaa85bf582f1cf372b0134fadcfeacf4734805a6e6dcaa2bb
|
||||
DIST hexedit-1.5.tar.gz 30544 BLAKE2B d7292a70819826fddd63f99ee9d05073b8a59f51477390af91151146ee1f5a75333560829f0351fa9e158ef932c07a3582a3e822f42e645917a7fa321055d14e SHA512 9d8e5c8c0cda0af17ffeaf528e3dacd7fc2878dfc0755cb055dae5c56f05c961353c1d1723b05897314b49a44a6eb96de5d3a599c6b29967425507eea7cc7ca5
|
||||
|
@ -0,0 +1,34 @@
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit autotools
|
||||
|
||||
DESCRIPTION="View and edit files in hex or ASCII"
|
||||
HOMEPAGE="http://rigaux.org/hexedit.html"
|
||||
|
||||
if [[ ${PV} == *9999 ]]; then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="https://github.com/pixel/hexedit.git"
|
||||
else
|
||||
SRC_URI="https://github.com/pixel/hexedit/archive/${PV}.tar.gz -> ${P}.tar.gz"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~sparc-solaris ~x86-solaris"
|
||||
fi
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
|
||||
DEPEND="sys-libs/ncurses:="
|
||||
RDEPEND="${DEPEND}"
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
src_install() {
|
||||
dobin hexedit
|
||||
doman hexedit.1
|
||||
dodoc Changes
|
||||
}
|
@ -1,2 +1 @@
|
||||
DIST pluma-1.24.1.tar.xz 3679636 BLAKE2B e792433b93862c8b0c47145255311c3a3386c1b99ec1ac87ed91608d839ece4430205f83fcc3c0f5145f986105d4c5d8803393035fcaaea08155197bbcf15d03 SHA512 0cfd6a035fc95993dce3e556c49641e799888f20159b29f2c0712c54ee772aa6df1ce755f329414c94efdb2cb3819ce633b92e6559b0c8cb064dab3c74729ab3
|
||||
DIST pluma-1.24.2.tar.xz 3745160 BLAKE2B ed855b19f1ab80cb6ef9bc175eea3c2af386b1e45123bc0e3ad93d1964efb4822fe1b3d7490308357fcff96557bb6189f081a467f41a6907e76a1961de8f23d3 SHA512 588640744f8a0bec08d0c51c0309380a57cb6319c98124885e30d05e7dd8488ba7bd5acec1bf21fb0d6832626ae8925b24cd241202265af1a631a91313cdad2b
|
||||
|
@ -1,81 +0,0 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
MATE_LA_PUNT="yes"
|
||||
|
||||
PYTHON_COMPAT=( python{3_7,3_8,3_9,3_10} )
|
||||
|
||||
inherit mate python-single-r1 virtualx
|
||||
|
||||
if [[ ${PV} != 9999 ]]; then
|
||||
KEYWORDS="amd64 ~arm ~arm64 x86"
|
||||
fi
|
||||
|
||||
DESCRIPTION="Pluma text editor for the MATE desktop"
|
||||
LICENSE="FDL-1.1+ GPL-2+ LGPL-2+"
|
||||
SLOT="0"
|
||||
|
||||
IUSE="+introspection spell test"
|
||||
|
||||
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
|
||||
|
||||
# Tests require gvfs sftp fs mounted and schema's installed. Disable tests.
|
||||
# https://github.com/mate-desktop/mate-text-editor/issues/33
|
||||
RESTRICT="test"
|
||||
|
||||
COMMON_DEPEND="dev-libs/atk
|
||||
>=dev-libs/glib-2.50:2
|
||||
>=dev-libs/libpeas-1.2.0[gtk]
|
||||
>=dev-libs/libxml2-2.5:2
|
||||
x11-libs/cairo
|
||||
x11-libs/gdk-pixbuf:2
|
||||
>=x11-libs/gtk+-3.22:3[introspection?]
|
||||
>=x11-libs/gtksourceview-3.0.0:3.0
|
||||
x11-libs/libICE
|
||||
x11-libs/libX11
|
||||
>=x11-libs/libSM-1.0
|
||||
x11-libs/pango
|
||||
introspection? ( >=dev-libs/gobject-introspection-0.9.3:= )
|
||||
spell? (
|
||||
>=app-text/enchant-1.6:=
|
||||
>=app-text/iso-codes-0.35
|
||||
)
|
||||
!!app-editors/mate-text-editor
|
||||
"
|
||||
|
||||
RDEPEND="${PYTHON_DEPS}
|
||||
${COMMON_DEPEND}
|
||||
>=mate-base/mate-desktop-1.9[introspection?]
|
||||
virtual/libintl
|
||||
"
|
||||
|
||||
DEPEND="${COMMON_DEPEND}
|
||||
~app-text/docbook-xml-dtd-4.1.2
|
||||
app-text/rarian
|
||||
>=app-text/scrollkeeper-dtd-1:1.0
|
||||
app-text/yelp-tools
|
||||
dev-util/glib-utils
|
||||
dev-util/gtk-doc
|
||||
dev-util/gtk-doc-am
|
||||
>=sys-devel/libtool-2.2.6:2
|
||||
>=sys-devel/gettext-0.19.8
|
||||
virtual/pkgconfig
|
||||
"
|
||||
|
||||
src_configure() {
|
||||
mate_src_configure \
|
||||
$(use_enable introspection) \
|
||||
$(use_enable spell) \
|
||||
$(use_enable test tests)
|
||||
}
|
||||
|
||||
src_test() {
|
||||
# FIXME: This should be handled at eclass level.
|
||||
"${EPREFIX%/}/${GLIB_COMPILE_SCHEMAS}" --allow-any-name "${S}/data" || die
|
||||
|
||||
unset DBUS_SESSION_BUS_ADDRESS
|
||||
|
||||
GSETTINGS_SCHEMA_DIR="${S}/data" virtx emake check
|
||||
}
|
@ -0,0 +1,233 @@
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
# Please bump with app-editors/vim and app-editors/gvim
|
||||
|
||||
VIM_VERSION="8.2"
|
||||
inherit estack vim-doc flag-o-matic bash-completion-r1 prefix desktop xdg-utils
|
||||
|
||||
if [[ ${PV} == 9999* ]] ; then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="https://github.com/vim/vim.git"
|
||||
EGIT_CHECKOUT_DIR=${WORKDIR}/vim-${PV}
|
||||
else
|
||||
SRC_URI="https://github.com/vim/vim/archive/v${PV}.tar.gz -> vim-${PV}.tar.gz
|
||||
https://dev.gentoo.org/~zlogene/distfiles/app-editors/vim/vim-8.2.0360-gentoo-patches.tar.xz"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||
fi
|
||||
S="${WORKDIR}"/vim-${PV}
|
||||
|
||||
DESCRIPTION="vim and gvim shared files"
|
||||
HOMEPAGE="https://vim.sourceforge.io/ https://github.com/vim/vim"
|
||||
|
||||
LICENSE="vim"
|
||||
SLOT="0"
|
||||
IUSE="nls acl minimal"
|
||||
|
||||
BDEPEND="sys-devel/autoconf"
|
||||
# Avoid icon file collision, bug #673880
|
||||
RDEPEND="!!<app-editors/gvim-8.1.0648"
|
||||
PDEPEND="!minimal? ( app-vim/gentoo-syntax )"
|
||||
|
||||
pkg_setup() {
|
||||
# people with broken alphabets run into trouble. bug #82186.
|
||||
unset LANG LC_ALL
|
||||
export LC_COLLATE="C"
|
||||
|
||||
# Gnome sandbox silliness. bug #114475.
|
||||
mkdir -p "${T}"/home || die "mkdir -p failed"
|
||||
export HOME="${T}"/home
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
if [[ ${PV} != 9999* ]] ; then
|
||||
# Gentoo patches to fix runtime issues, cross-compile errors, etc
|
||||
eapply "${WORKDIR}"/patches
|
||||
fi
|
||||
|
||||
# Fixup a script to use awk instead of nawk
|
||||
sed -i \
|
||||
-e '1s|.*|#!'"${EPREFIX}"'/usr/bin/awk -f|' \
|
||||
"${S}"/runtime/tools/mve.awk || die "sed failed"
|
||||
|
||||
# See bug #77841. We remove this file after the tarball extraction.
|
||||
rm -v "${S}"/runtime/tools/vimspell.sh || die "rm failed"
|
||||
|
||||
# Read vimrc and gvimrc from /etc/vim
|
||||
echo '#define SYS_VIMRC_FILE "'${EPREFIX}'/etc/vim/vimrc"' >> "${S}"/src/feature.h
|
||||
echo '#define SYS_GVIMRC_FILE "'${EPREFIX}'/etc/vim/gvimrc"' >> "${S}"/src/feature.h
|
||||
|
||||
# Use exuberant ctags which installs as /usr/bin/exuberant-ctags.
|
||||
# Hopefully this pattern won't break for a while at least.
|
||||
# This fixes bug #29398 (27 Sep 2003 agriffis)
|
||||
sed -i 's/\<ctags\("\| [-*.]\)/exuberant-&/g' \
|
||||
"${S}"/runtime/doc/syntax.txt \
|
||||
"${S}"/runtime/doc/tagsrch.txt \
|
||||
"${S}"/runtime/doc/usr_29.txt \
|
||||
"${S}"/runtime/menu.vim \
|
||||
"${S}"/src/configure.ac || die 'sed failed'
|
||||
|
||||
# Don't be fooled by /usr/include/libc.h. When found, vim thinks
|
||||
# this is NeXT, but it's actually just a file in dev-libs/9libs
|
||||
# This fixes bug #43885 (20 Mar 2004 agriffis)
|
||||
sed -i 's/ libc\.h / /' "${S}"/src/configure.ac || die 'sed failed'
|
||||
|
||||
# gcc on sparc32 has this, uhm, interesting problem with detecting EOF
|
||||
# correctly. To avoid some really entertaining error messages about stuff
|
||||
# which isn't even in the source file being invalid, we'll do some trickery
|
||||
# to make the error never occur. bug 66162 (02 October 2004 ciaranm)
|
||||
find "${S}" -name '*.c' | while read c; do
|
||||
echo >> "$c" || die "echo failed"
|
||||
done
|
||||
|
||||
# Try to avoid sandbox problems. Bug #114475.
|
||||
if [[ -d "${S}"/src/po ]]; then
|
||||
sed -i -e \
|
||||
'/-S check.vim/s,..VIM.,ln -s $(VIM) testvim \; ./testvim -X,' \
|
||||
"${S}"/src/po/Makefile || die "sed failed"
|
||||
fi
|
||||
|
||||
cp -v "${S}"/src/config.mk.dist "${S}"/src/auto/config.mk || die "cp failed"
|
||||
|
||||
# Bug #378107 - Build properly with >=perl-core/ExtUtils-ParseXS-3.20.0
|
||||
sed -i -e \
|
||||
"s:\\\$(PERLLIB)/ExtUtils/xsubpp:${EPREFIX}/usr/bin/xsubpp:" \
|
||||
"${S}"/src/Makefile || die 'sed for ExtUtils-ParseXS failed'
|
||||
|
||||
eapply_user
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local myconf
|
||||
|
||||
# Fix bug #37354: Disallow -funroll-all-loops on amd64
|
||||
# Bug 57859 suggests that we want to do this for all archs
|
||||
filter-flags -funroll-all-loops
|
||||
|
||||
# Fix bug #76331: -O3 causes problems, use -O2 instead. We'll do this for
|
||||
# everyone since previous flag filtering bugs have turned out to affect
|
||||
# multiple archs...
|
||||
replace-flags -O3 -O2
|
||||
|
||||
# Fix bug #18245: Prevent "make" from the following chain:
|
||||
# (1) Notice configure.ac is newer than auto/configure
|
||||
# (2) Rebuild auto/configure
|
||||
# (3) Notice auto/configure is newer than auto/config.mk
|
||||
# (4) Run ./configure (with wrong args) to remake auto/config.mk
|
||||
sed -i 's# auto/config\.mk:#:#' src/Makefile || die "Makefile sed failed"
|
||||
|
||||
# Remove src/auto/configure file.
|
||||
rm -v src/auto/configure || die "rm configure failed"
|
||||
|
||||
emake -j1 -C src autoconf
|
||||
|
||||
# This should fix a sandbox violation (see bug 24447). The hvc
|
||||
# things are for ppc64, see bug 86433.
|
||||
for file in /dev/pty/s* /dev/console /dev/hvc/* /dev/hvc*; do
|
||||
if [[ -e "${file}" ]]; then
|
||||
addwrite ${file}
|
||||
fi
|
||||
done
|
||||
|
||||
# Let Portage do the stripping. Some people like that.
|
||||
export ac_cv_prog_STRIP="$(type -P true ) faking strip"
|
||||
|
||||
# Keep Gentoo Prefix env contained within the EPREFIX
|
||||
use prefix && myconf+=" --without-local-dir"
|
||||
|
||||
econf \
|
||||
--with-modified-by=Gentoo-${PVR} \
|
||||
--enable-gui=no \
|
||||
--without-x \
|
||||
--disable-darwin \
|
||||
--disable-perlinterp \
|
||||
--disable-pythoninterp \
|
||||
--disable-rubyinterp \
|
||||
--disable-gpm \
|
||||
--disable-selinux \
|
||||
$(use_enable nls) \
|
||||
$(use_enable acl) \
|
||||
${myconf}
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
emake -j1 -C src auto/osdef.h objects
|
||||
emake tools
|
||||
}
|
||||
|
||||
src_test() { :; }
|
||||
|
||||
src_install() {
|
||||
local vimfiles=/usr/share/vim/vim${VIM_VERSION/.}
|
||||
|
||||
dodir /usr/{bin,share/{man/man1,vim}}
|
||||
emake -C src \
|
||||
installruntime \
|
||||
installmanlinks \
|
||||
installmacros \
|
||||
installtutor \
|
||||
installtutorbin \
|
||||
installtools \
|
||||
install-languages \
|
||||
DESTDIR="${D}" \
|
||||
BINDIR="${EPREFIX}"/usr/bin \
|
||||
MANDIR="${EPREFIX}"/usr/share/man \
|
||||
DATADIR="${EPREFIX}"/usr/share
|
||||
|
||||
keepdir ${vimfiles}/keymap
|
||||
|
||||
# default vimrc is installed by vim-core since it applies to
|
||||
# both vim and gvim
|
||||
insinto /etc/vim/
|
||||
newins "${FILESDIR}"/vimrc-r5 vimrc
|
||||
eprefixify "${ED}"/etc/vim/vimrc
|
||||
|
||||
if use minimal; then
|
||||
# To save space, install only a subset of the files.
|
||||
# Helps minimalize the livecd, bug 65144.
|
||||
eshopts_push -s extglob
|
||||
|
||||
rm -rv "${ED}${vimfiles}"/{compiler,doc,ftplugin,indent} || die "rm failed"
|
||||
rm -rv "${ED}${vimfiles}"/{macros,print,tools,tutor} || die "rm failed"
|
||||
rm -v "${ED}"/usr/bin/vimtutor || die "rm failed"
|
||||
|
||||
# Delete defaults.vim to avoid conflicts with one from vim[minimal]
|
||||
rm -v "${ED}${vimfiles}"/defaults.vim || die "rm failed"
|
||||
|
||||
local keep_colors="default"
|
||||
ignore=$(rm -fr "${ED}${vimfiles}"/colors/!(${keep_colors}).vim )
|
||||
|
||||
local keep_syntax="conf|crontab|fstab|inittab|resolv|sshdconfig"
|
||||
# tinkering with the next line might make bad things happen ...
|
||||
keep_syntax="${keep_syntax}|syntax|nosyntax|synload"
|
||||
ignore=$(rm -fr "${ED}${vimfiles}"/syntax/!(${keep_syntax}).vim )
|
||||
|
||||
# Delete skip_defaults_vim config not supported by vim[minimal]
|
||||
sed -i '/skip_defaults_vim/d' "${ED}"/etc/vim/vimrc || die "sed failed"
|
||||
|
||||
eshopts_pop
|
||||
fi
|
||||
|
||||
newbashcomp "${FILESDIR}"/xxd-completion xxd
|
||||
|
||||
# install gvim icon since both vim/gvim desktop files reference it
|
||||
doicon -s scalable "${FILESDIR}"/gvim.svg
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
# update documentation tags (from vim-doc.eclass)
|
||||
update_vim_helptags
|
||||
|
||||
# update icon cache
|
||||
xdg_icon_cache_update
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
# Update documentation tags (from vim-doc.eclass)
|
||||
update_vim_helptags
|
||||
|
||||
# update icon cache
|
||||
xdg_icon_cache_update
|
||||
}
|
@ -0,0 +1,355 @@
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
# Please bump with app-editors/vim-core and app-editors/gvim
|
||||
|
||||
VIM_VERSION="8.2"
|
||||
LUA_COMPAT=( lua5-1 luajit )
|
||||
PYTHON_COMPAT=( python3_{7..10} )
|
||||
PYTHON_REQ_USE="threads(+)"
|
||||
USE_RUBY="ruby24 ruby25 ruby26 ruby27"
|
||||
|
||||
inherit vim-doc flag-o-matic bash-completion-r1 lua-single python-single-r1 ruby-single desktop xdg-utils
|
||||
|
||||
if [[ ${PV} == 9999* ]] ; then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="https://github.com/vim/vim.git"
|
||||
else
|
||||
SRC_URI="https://github.com/vim/vim/archive/v${PV}.tar.gz -> ${P}.tar.gz
|
||||
https://dev.gentoo.org/~zlogene/distfiles/app-editors/vim/vim-8.2.0360-gentoo-patches.tar.xz"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||
fi
|
||||
|
||||
DESCRIPTION="Vim, an improved vi-style text editor"
|
||||
HOMEPAGE="https://vim.sourceforge.io/ https://github.com/vim/vim"
|
||||
|
||||
LICENSE="vim"
|
||||
SLOT="0"
|
||||
IUSE="X acl crypt cscope debug gpm lua minimal nls perl python racket ruby selinux sound tcl terminal vim-pager"
|
||||
REQUIRED_USE="
|
||||
lua? ( ${LUA_REQUIRED_USE} )
|
||||
python? ( ${PYTHON_REQUIRED_USE} )
|
||||
vim-pager? ( !minimal )
|
||||
"
|
||||
|
||||
RDEPEND="
|
||||
>=app-eselect/eselect-vi-1.1
|
||||
>=sys-libs/ncurses-5.2-r2:0=
|
||||
nls? ( virtual/libintl )
|
||||
acl? ( kernel_linux? ( sys-apps/acl ) )
|
||||
crypt? ( dev-libs/libsodium:= )
|
||||
cscope? ( dev-util/cscope )
|
||||
gpm? ( >=sys-libs/gpm-1.19.3 )
|
||||
lua? ( ${LUA_DEPS}
|
||||
$(lua_gen_impl_dep 'deprecated' lua5-1)
|
||||
)
|
||||
!minimal? ( ~app-editors/vim-core-${PV} )
|
||||
vim-pager? ( app-editors/vim-core[-minimal] )
|
||||
perl? ( dev-lang/perl:= )
|
||||
python? ( ${PYTHON_DEPS} )
|
||||
racket? ( dev-scheme/racket )
|
||||
ruby? ( ${RUBY_DEPS} )
|
||||
selinux? ( sys-libs/libselinux )
|
||||
sound? ( media-libs/libcanberra )
|
||||
tcl? ( dev-lang/tcl:0= )
|
||||
X? ( x11-libs/libXt )
|
||||
"
|
||||
DEPEND="${RDEPEND}"
|
||||
# configure runs the Lua interpreter
|
||||
BDEPEND="
|
||||
sys-devel/autoconf
|
||||
lua? ( ${LUA_DEPS} )
|
||||
nls? ( sys-devel/gettext )
|
||||
"
|
||||
|
||||
pkg_setup() {
|
||||
# people with broken alphabets run into trouble. bug #82186.
|
||||
unset LANG LC_ALL
|
||||
export LC_COLLATE="C"
|
||||
|
||||
# Gnome sandbox silliness. bug #114475.
|
||||
mkdir -p "${T}"/home || die "mkdir failed"
|
||||
export HOME="${T}"/home
|
||||
|
||||
use lua && lua-single_pkg_setup
|
||||
use python && python-single-r1_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
if [[ ${PV} != 9999* ]] ; then
|
||||
# Gentoo patches to fix runtime issues, cross-compile errors, etc
|
||||
eapply "${WORKDIR}"/patches/
|
||||
fi
|
||||
|
||||
# Fixup a script to use awk instead of nawk
|
||||
sed -i -e \
|
||||
'1s|.*|#!'"${EPREFIX}"'/usr/bin/awk -f|' \
|
||||
"${S}"/runtime/tools/mve.awk || die "mve.awk sed failed"
|
||||
|
||||
# Read vimrc and gvimrc from /etc/vim
|
||||
echo '#define SYS_VIMRC_FILE "'${EPREFIX}'/etc/vim/vimrc"' \
|
||||
>> "${S}"/src/feature.h || die "echo failed"
|
||||
echo '#define SYS_GVIMRC_FILE "'${EPREFIX}'/etc/vim/gvimrc"' \
|
||||
>> "${S}"/src/feature.h || die "echo failed"
|
||||
|
||||
# Use exuberant ctags which installs as /usr/bin/exuberant-ctags.
|
||||
# Hopefully this pattern won't break for a while at least.
|
||||
# This fixes bug #29398 (27 Sep 2003 agriffis)
|
||||
sed -i -e \
|
||||
's/\<ctags\("\| [-*.]\)/exuberant-&/g' \
|
||||
"${S}"/runtime/doc/syntax.txt \
|
||||
"${S}"/runtime/doc/tagsrch.txt \
|
||||
"${S}"/runtime/doc/usr_29.txt \
|
||||
"${S}"/runtime/menu.vim \
|
||||
"${S}"/src/configure.ac || die 'sed failed'
|
||||
|
||||
# Don't be fooled by /usr/include/libc.h. When found, vim thinks
|
||||
# this is NeXT, but it's actually just a file in dev-libs/9libs
|
||||
# This fixes bug #43885 (20 Mar 2004 agriffis)
|
||||
sed -i -e \
|
||||
's/ libc\.h / /' \
|
||||
"${S}"/src/configure.ac || die 'sed failed'
|
||||
|
||||
# gcc on sparc32 has this, uhm, interesting problem with detecting EOF
|
||||
# correctly. To avoid some really entertaining error messages about stuff
|
||||
# which isn't even in the source file being invalid, we'll do some trickery
|
||||
# to make the error never occur. bug 66162 (02 October 2004 ciaranm)
|
||||
find "${S}" -name '*.c' | while read c; do
|
||||
echo >> "$c" || die "echo failed"
|
||||
done
|
||||
|
||||
# conditionally make the manpager.sh script
|
||||
if use vim-pager; then
|
||||
cat > "${S}"/runtime/macros/manpager.sh <<-_EOF_ || die "cat EOF failed"
|
||||
#!/bin/sh
|
||||
sed -e 's/\x1B\[[[:digit:]]\+m//g' | col -b | \\
|
||||
vim \\
|
||||
-c 'let no_plugin_maps = 1' \\
|
||||
-c 'set nolist nomod ft=man ts=8' \\
|
||||
-c 'let g:showmarks_enable=0' \\
|
||||
-c 'runtime! macros/less.vim' -
|
||||
_EOF_
|
||||
fi
|
||||
|
||||
# Try to avoid sandbox problems. Bug #114475.
|
||||
if [[ -d "${S}"/src/po ]]; then
|
||||
sed -i -e \
|
||||
'/-S check.vim/s,..VIM.,ln -s $(VIM) testvim \; ./testvim -X,' \
|
||||
"${S}"/src/po/Makefile || die "sed failed"
|
||||
fi
|
||||
|
||||
cp -v "${S}"/src/config.mk.dist "${S}"/src/auto/config.mk || die "cp failed"
|
||||
|
||||
sed -i -e \
|
||||
"s:\\\$(PERLLIB)/ExtUtils/xsubpp:${EPREFIX}/usr/bin/xsubpp:" \
|
||||
"${S}"/src/Makefile || die 'sed for ExtUtils-ParseXS failed'
|
||||
|
||||
eapply_user
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local myconf=()
|
||||
|
||||
# Fix bug #37354: Disallow -funroll-all-loops on amd64
|
||||
# Bug #57859 suggests that we want to do this for all archs
|
||||
filter-flags -funroll-all-loops
|
||||
|
||||
# Fix bug 76331: -O3 causes problems, use -O2 instead. We'll do this for
|
||||
# everyone since previous flag filtering bugs have turned out to affect
|
||||
# multiple archs...
|
||||
replace-flags -O3 -O2
|
||||
|
||||
# Fix bug 18245: Prevent "make" from the following chain:
|
||||
# (1) Notice configure.ac is newer than auto/configure
|
||||
# (2) Rebuild auto/configure
|
||||
# (3) Notice auto/configure is newer than auto/config.mk
|
||||
# (4) Run ./configure (with wrong args) to remake auto/config.mk
|
||||
sed -i 's# auto/config\.mk:#:#' src/Makefile || die "Makefile sed failed"
|
||||
rm src/auto/configure || die "rm failed"
|
||||
emake -j1 -C src autoconf
|
||||
|
||||
# This should fix a sandbox violation (see bug #24447). The hvc
|
||||
# things are for ppc64, see bug #86433.
|
||||
for file in /dev/pty/s* /dev/console /dev/hvc/* /dev/hvc*; do
|
||||
if [[ -e "${file}" ]]; then
|
||||
addwrite ${file}
|
||||
fi
|
||||
done
|
||||
|
||||
if use minimal; then
|
||||
myconf=(
|
||||
--with-features=tiny
|
||||
--disable-nls
|
||||
--disable-canberra
|
||||
--disable-acl
|
||||
--enable-gui=no
|
||||
--without-x
|
||||
--disable-darwin
|
||||
--disable-luainterp
|
||||
--disable-perlinterp
|
||||
--disable-pythoninterp
|
||||
--disable-mzschemeinterp
|
||||
--disable-rubyinterp
|
||||
--disable-selinux
|
||||
--disable-tclinterp
|
||||
--disable-gpm
|
||||
)
|
||||
else
|
||||
use debug && append-flags "-DDEBUG"
|
||||
|
||||
myconf=(
|
||||
--with-features=huge
|
||||
$(use_enable sound canberra)
|
||||
$(use_enable acl)
|
||||
$(use_enable crypt libsodium)
|
||||
$(use_enable cscope)
|
||||
$(use_enable gpm)
|
||||
$(use_enable nls)
|
||||
$(use_enable perl perlinterp)
|
||||
$(use_enable python python3interp)
|
||||
$(use_with python python3-command "${PYTHON}")
|
||||
$(use_enable racket mzschemeinterp)
|
||||
$(use_enable ruby rubyinterp)
|
||||
$(use_enable selinux)
|
||||
$(use_enable tcl tclinterp)
|
||||
$(use_enable terminal)
|
||||
)
|
||||
|
||||
# --with-features=huge forces on cscope even if we --disable it. We need
|
||||
# to sed this out to avoid screwiness. (1 Sep 2004 ciaranm)
|
||||
if ! use cscope; then
|
||||
sed -i -e \
|
||||
'/# define FEAT_CSCOPE/d' src/feature.h || die "sed failed"
|
||||
fi
|
||||
|
||||
if use lua; then
|
||||
myconf+=(
|
||||
--enable-luainterp
|
||||
$(use_with lua_single_target_luajit luajit)
|
||||
--with-lua-prefix="${EPREFIX}/usr"
|
||||
)
|
||||
fi
|
||||
|
||||
# don't test USE=X here ... see bug #19115
|
||||
# but need to provide a way to link against X ... see bug #20093
|
||||
myconf+=(
|
||||
--enable-gui=no
|
||||
--disable-darwin
|
||||
$(use_with X x)
|
||||
)
|
||||
fi
|
||||
|
||||
# let package manager strip binaries
|
||||
export ac_cv_prog_STRIP="$(type -P true ) faking strip"
|
||||
|
||||
# keep prefix env contained within the EPREFIX
|
||||
use prefix && myconf+=( --without-local-dir )
|
||||
|
||||
econf \
|
||||
--with-modified-by=Gentoo-${PVR} \
|
||||
"${myconf[@]}"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# The following allows emake to be used
|
||||
emake -j1 -C src auto/osdef.h objects
|
||||
|
||||
emake
|
||||
}
|
||||
|
||||
src_test() {
|
||||
einfo
|
||||
einfo "Starting vim tests. Several error messages will be shown"
|
||||
einfo "while the tests run. This is normal behaviour and does not"
|
||||
einfo "indicate a fault."
|
||||
einfo
|
||||
ewarn "If the tests fail, your terminal may be left in a strange"
|
||||
ewarn "state. Usually, running 'reset' will fix this."
|
||||
einfo
|
||||
|
||||
# Don't let vim talk to X
|
||||
unset DISPLAY
|
||||
|
||||
# See https://github.com/vim/vim/blob/f08b0eb8691ff09f98bc4beef986ece1c521655f/src/testdir/runtest.vim#L5
|
||||
# for more information on test variables we can use.
|
||||
# Note that certain variables need vim-compatible regex (not PCRE), see e.g.
|
||||
# http://www.softpanorama.org/Editors/Vimorama/vim_regular_expressions.shtml.
|
||||
#
|
||||
# Skipped tests:
|
||||
# - Test_expand_star_star
|
||||
# Hangs because of a recursive symlink in /usr/include/nodejs (bug #616680)
|
||||
# - Test_exrc
|
||||
# Looks in wrong location? (bug #742710)
|
||||
# - Test_job_tty_in_out
|
||||
# Fragile and depends on TERM(?)
|
||||
# - Test_spelldump_bang
|
||||
# Hangs.
|
||||
export TEST_SKIP_PAT='\(Test_expand_star_star\|Test_exrc\|Test_job_tty_in_out\|Test_spelldump_bang\)'
|
||||
|
||||
emake -j1 -C src/testdir nongui
|
||||
}
|
||||
|
||||
# Call eselect vi update with --if-unset
|
||||
# to respect user's choice (bug #187449)
|
||||
eselect_vi_update() {
|
||||
einfo "Calling eselect vi update..."
|
||||
eselect vi update --if-unset
|
||||
eend $?
|
||||
}
|
||||
|
||||
src_install() {
|
||||
local vimfiles=/usr/share/vim/vim${VIM_VERSION/.}
|
||||
|
||||
# Note: Do not install symlinks for 'vi', 'ex', or 'view', as these are
|
||||
# managed by eselect-vi
|
||||
dobin src/vim
|
||||
if ! use minimal ; then
|
||||
dosym vim /usr/bin/vimdiff
|
||||
fi
|
||||
dosym vim /usr/bin/rvim
|
||||
dosym vim /usr/bin/rview
|
||||
if use vim-pager ; then
|
||||
dosym ${vimfiles}/macros/less.sh /usr/bin/vimpager
|
||||
dosym ${vimfiles}/macros/manpager.sh /usr/bin/vimmanpager
|
||||
insinto ${vimfiles}/macros
|
||||
doins runtime/macros/manpager.sh
|
||||
fperms a+x ${vimfiles}/macros/manpager.sh
|
||||
fi
|
||||
|
||||
# Fix an issue of missing defaults.vim when USE=minimal.
|
||||
if use minimal ; then
|
||||
insinto ${vimfiles}
|
||||
doins runtime/defaults.vim
|
||||
fi
|
||||
|
||||
domenu runtime/vim.desktop
|
||||
|
||||
newbashcomp "${FILESDIR}"/${PN}-completion ${PN}
|
||||
|
||||
# keep in sync with 'complete ... -F' list
|
||||
bashcomp_alias vim ex vi view rvim rview vimdiff
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
# Update documentation tags (from vim-doc.eclass)
|
||||
update_vim_helptags
|
||||
|
||||
# Call eselect vi update
|
||||
eselect_vi_update
|
||||
|
||||
# update desktop file mime cache
|
||||
xdg_desktop_database_update
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
# Update documentation tags (from vim-doc.eclass)
|
||||
update_vim_helptags
|
||||
|
||||
# Call eselect vi update
|
||||
eselect_vi_update
|
||||
|
||||
# update desktop file mime cache
|
||||
xdg_desktop_database_update
|
||||
}
|
Binary file not shown.
@ -1,2 +1 @@
|
||||
DIST qemu-6.1.0.tar.xz 111258808 BLAKE2B 412eecf6d39debd6089b26d3b22e5d25c6c8c30d2eaf31b17c25cc2b3a1b10794a30218dfb151c78801aa295255aa974b297f1fe05b93f14334f203c2af5ccee SHA512 3378ae21c75b77ee6a759827f1fcf7b2a50a0fef07e3b0e89117108022a8d8655fa977e4d65596f4f24f7c735c6594d44b0c6f69732ea4465e88a7406b1d5d3c
|
||||
DIST qemu-6.2.0.tar.xz 115667324 BLAKE2B 3f2f02e5c36113df6231a9474c6d5db774e541312173813c28f578d669a51f391695d364dc806f5906d9e3c2796bb20b2606fcd46a247eb751ea517de9d7ce15 SHA512 e9f8231c9e1cfcc41cb47f10a55d63f6b8aee307af00cf6acf64acb7aa4f49fa7e9d6330703a2abea15d8b7bbaba7d3cb08c83edd98d82642367b527df730817
|
||||
|
@ -1,909 +0,0 @@
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="7"
|
||||
|
||||
PYTHON_COMPAT=( python3_{7,8,9,10} )
|
||||
PYTHON_REQ_USE="ncurses,readline"
|
||||
|
||||
FIRMWARE_ABI_VERSION="6.1.0"
|
||||
|
||||
inherit linux-info toolchain-funcs python-r1 udev fcaps readme.gentoo-r1 \
|
||||
pax-utils xdg-utils
|
||||
|
||||
if [[ ${PV} = *9999* ]]; then
|
||||
EGIT_REPO_URI="https://git.qemu.org/git/qemu.git"
|
||||
EGIT_SUBMODULES=(
|
||||
meson
|
||||
tests/fp/berkeley-softfloat-3
|
||||
tests/fp/berkeley-testfloat-3
|
||||
ui/keycodemapdb
|
||||
)
|
||||
inherit git-r3
|
||||
SRC_URI=""
|
||||
else
|
||||
SRC_URI="https://download.qemu.org/${P}.tar.xz"
|
||||
KEYWORDS="amd64 arm64 ~ppc ppc64 x86"
|
||||
fi
|
||||
|
||||
DESCRIPTION="QEMU + Kernel-based Virtual Machine userland tools"
|
||||
HOMEPAGE="https://www.qemu.org https://www.linux-kvm.org"
|
||||
|
||||
LICENSE="GPL-2 LGPL-2 BSD-2"
|
||||
SLOT="0"
|
||||
|
||||
IUSE="accessibility +aio alsa bpf bzip2 capstone +caps +curl debug +doc
|
||||
+fdt fuse glusterfs gnutls gtk infiniband iscsi io-uring
|
||||
jack jemalloc +jpeg
|
||||
lzo multipath
|
||||
ncurses nfs nls numa opengl +oss +pin-upstream-blobs
|
||||
plugins +png pulseaudio python rbd sasl +seccomp sdl sdl-image selinux
|
||||
+slirp
|
||||
smartcard snappy spice ssh static static-user systemtap test udev usb
|
||||
usbredir vde +vhost-net vhost-user-fs virgl virtfs +vnc vte xattr xen
|
||||
xfs zstd"
|
||||
|
||||
COMMON_TARGETS="
|
||||
aarch64
|
||||
alpha
|
||||
arm
|
||||
cris
|
||||
hppa
|
||||
i386
|
||||
m68k
|
||||
microblaze
|
||||
microblazeel
|
||||
mips
|
||||
mips64
|
||||
mips64el
|
||||
mipsel
|
||||
nios2
|
||||
or1k
|
||||
ppc
|
||||
ppc64
|
||||
riscv32
|
||||
riscv64
|
||||
s390x
|
||||
sh4
|
||||
sh4eb
|
||||
sparc
|
||||
sparc64
|
||||
x86_64
|
||||
xtensa
|
||||
xtensaeb
|
||||
"
|
||||
IUSE_SOFTMMU_TARGETS="
|
||||
${COMMON_TARGETS}
|
||||
avr
|
||||
rx
|
||||
tricore
|
||||
"
|
||||
IUSE_USER_TARGETS="
|
||||
${COMMON_TARGETS}
|
||||
aarch64_be
|
||||
armeb
|
||||
hexagon
|
||||
mipsn32
|
||||
mipsn32el
|
||||
ppc64abi32
|
||||
ppc64le
|
||||
sparc32plus
|
||||
"
|
||||
|
||||
use_softmmu_targets=$(printf ' qemu_softmmu_targets_%s' ${IUSE_SOFTMMU_TARGETS})
|
||||
use_user_targets=$(printf ' qemu_user_targets_%s' ${IUSE_USER_TARGETS})
|
||||
IUSE+=" ${use_softmmu_targets} ${use_user_targets}"
|
||||
|
||||
RESTRICT="!test? ( test )"
|
||||
# Allow no targets to be built so that people can get a tools-only build.
|
||||
# Block USE flag configurations known to not work.
|
||||
REQUIRED_USE="${PYTHON_REQUIRED_USE}
|
||||
qemu_softmmu_targets_arm? ( fdt )
|
||||
qemu_softmmu_targets_microblaze? ( fdt )
|
||||
qemu_softmmu_targets_mips64el? ( fdt )
|
||||
qemu_softmmu_targets_ppc64? ( fdt )
|
||||
qemu_softmmu_targets_ppc? ( fdt )
|
||||
qemu_softmmu_targets_riscv32? ( fdt )
|
||||
qemu_softmmu_targets_riscv64? ( fdt )
|
||||
sdl-image? ( sdl )
|
||||
static? ( static-user !alsa !gtk !jack !opengl !pulseaudio !plugins !rbd !snappy !udev )
|
||||
static-user? ( !plugins )
|
||||
vhost-user-fs? ( caps seccomp )
|
||||
virgl? ( opengl )
|
||||
virtfs? ( caps xattr )
|
||||
vte? ( gtk )
|
||||
multipath? ( udev )
|
||||
plugins? ( !static !static-user )
|
||||
"
|
||||
|
||||
# Dependencies required for qemu tools (qemu-nbd, qemu-img, qemu-io, ...)
|
||||
# and user/softmmu targets (qemu-*, qemu-system-*).
|
||||
#
|
||||
# Yep, you need both libcap and libcap-ng since virtfs only uses libcap.
|
||||
#
|
||||
# The attr lib isn't always linked in (although the USE flag is always
|
||||
# respected). This is because qemu supports using the C library's API
|
||||
# when available rather than always using the external library.
|
||||
ALL_DEPEND="
|
||||
>=dev-libs/glib-2.0[static-libs(+)]
|
||||
sys-libs/zlib[static-libs(+)]
|
||||
python? ( ${PYTHON_DEPS} )
|
||||
systemtap? ( dev-util/systemtap )
|
||||
xattr? ( sys-apps/attr[static-libs(+)] )"
|
||||
|
||||
# Dependencies required for qemu tools (qemu-nbd, qemu-img, qemu-io, ...)
|
||||
# softmmu targets (qemu-system-*).
|
||||
SOFTMMU_TOOLS_DEPEND="
|
||||
dev-libs/libxml2[static-libs(+)]
|
||||
>=x11-libs/pixman-0.28.0[static-libs(+)]
|
||||
accessibility? (
|
||||
app-accessibility/brltty[api]
|
||||
app-accessibility/brltty[static-libs(+)]
|
||||
)
|
||||
aio? ( dev-libs/libaio[static-libs(+)] )
|
||||
alsa? ( >=media-libs/alsa-lib-1.0.13 )
|
||||
bpf? ( dev-libs/libbpf:= )
|
||||
bzip2? ( app-arch/bzip2[static-libs(+)] )
|
||||
capstone? ( dev-libs/capstone:= )
|
||||
caps? ( sys-libs/libcap-ng[static-libs(+)] )
|
||||
curl? ( >=net-misc/curl-7.15.4[static-libs(+)] )
|
||||
fdt? ( >=sys-apps/dtc-1.5.0[static-libs(+)] )
|
||||
fuse? ( >=sys-fs/fuse-3.1:3[static-libs(+)] )
|
||||
glusterfs? ( >=sys-cluster/glusterfs-3.4.0[static-libs(+)] )
|
||||
gnutls? (
|
||||
dev-libs/nettle:=[static-libs(+)]
|
||||
>=net-libs/gnutls-3.0:=[static-libs(+)]
|
||||
)
|
||||
gtk? (
|
||||
x11-libs/gtk+:3
|
||||
vte? ( x11-libs/vte:2.91 )
|
||||
)
|
||||
infiniband? (
|
||||
sys-fabric/libibumad:=[static-libs(+)]
|
||||
sys-fabric/libibverbs:=[static-libs(+)]
|
||||
sys-fabric/librdmacm:=[static-libs(+)]
|
||||
)
|
||||
iscsi? ( net-libs/libiscsi )
|
||||
io-uring? ( sys-libs/liburing:=[static-libs(+)] )
|
||||
jack? ( virtual/jack )
|
||||
jemalloc? ( dev-libs/jemalloc )
|
||||
jpeg? ( virtual/jpeg:0=[static-libs(+)] )
|
||||
lzo? ( dev-libs/lzo:2[static-libs(+)] )
|
||||
multipath? ( sys-fs/multipath-tools )
|
||||
ncurses? (
|
||||
sys-libs/ncurses:=[unicode(+)]
|
||||
sys-libs/ncurses:=[static-libs(+)]
|
||||
)
|
||||
nfs? ( >=net-fs/libnfs-1.9.3:=[static-libs(+)] )
|
||||
numa? ( sys-process/numactl[static-libs(+)] )
|
||||
opengl? (
|
||||
virtual/opengl
|
||||
media-libs/libepoxy[static-libs(+)]
|
||||
media-libs/mesa[static-libs(+)]
|
||||
media-libs/mesa[egl(+),gbm(+)]
|
||||
)
|
||||
png? ( media-libs/libpng:0=[static-libs(+)] )
|
||||
pulseaudio? ( media-sound/pulseaudio )
|
||||
rbd? ( sys-cluster/ceph )
|
||||
sasl? ( dev-libs/cyrus-sasl[static-libs(+)] )
|
||||
sdl? (
|
||||
media-libs/libsdl2[video]
|
||||
media-libs/libsdl2[static-libs(+)]
|
||||
)
|
||||
sdl-image? ( media-libs/sdl2-image[static-libs(+)] )
|
||||
seccomp? ( >=sys-libs/libseccomp-2.1.0[static-libs(+)] )
|
||||
slirp? ( net-libs/libslirp[static-libs(+)] )
|
||||
smartcard? ( >=app-emulation/libcacard-2.5.0[static-libs(+)] )
|
||||
snappy? ( app-arch/snappy:= )
|
||||
spice? (
|
||||
>=app-emulation/spice-protocol-0.12.3
|
||||
>=app-emulation/spice-0.12.0[static-libs(+)]
|
||||
)
|
||||
ssh? ( >=net-libs/libssh-0.8.6[static-libs(+)] )
|
||||
udev? ( virtual/libudev:= )
|
||||
usb? ( >=virtual/libusb-1-r2[static-libs(+)] )
|
||||
usbredir? ( >=sys-apps/usbredir-0.6[static-libs(+)] )
|
||||
vde? ( net-misc/vde[static-libs(+)] )
|
||||
virgl? ( media-libs/virglrenderer[static-libs(+)] )
|
||||
virtfs? ( sys-libs/libcap )
|
||||
xen? ( app-emulation/xen-tools:= )
|
||||
xfs? ( sys-fs/xfsprogs[static-libs(+)] )
|
||||
zstd? ( >=app-arch/zstd-1.4.0[static-libs(+)] )
|
||||
"
|
||||
|
||||
EDK2_OVMF_VERSION="202105"
|
||||
SEABIOS_VERSION="1.14.0"
|
||||
|
||||
X86_FIRMWARE_DEPEND="
|
||||
pin-upstream-blobs? (
|
||||
~sys-firmware/edk2-ovmf-${EDK2_OVMF_VERSION}[binary]
|
||||
~sys-firmware/ipxe-1.21.1[binary,qemu]
|
||||
~sys-firmware/seabios-${SEABIOS_VERSION}[binary,seavgabios]
|
||||
~sys-firmware/sgabios-0.1_pre10[binary]
|
||||
)
|
||||
!pin-upstream-blobs? (
|
||||
>=sys-firmware/edk2-ovmf-${EDK2_OVMF_VERSION}
|
||||
sys-firmware/ipxe[qemu]
|
||||
>=sys-firmware/seabios-${SEABIOS_VERSION}[seavgabios]
|
||||
sys-firmware/sgabios
|
||||
)"
|
||||
PPC_FIRMWARE_DEPEND="
|
||||
pin-upstream-blobs? (
|
||||
~sys-firmware/seabios-${SEABIOS_VERSION}[binary,seavgabios]
|
||||
)
|
||||
!pin-upstream-blobs? (
|
||||
>=sys-firmware/seabios-${SEABIOS_VERSION}[seavgabios]
|
||||
)
|
||||
"
|
||||
|
||||
BDEPEND="
|
||||
$(python_gen_impl_dep)
|
||||
dev-lang/perl
|
||||
sys-apps/texinfo
|
||||
virtual/pkgconfig
|
||||
doc? (
|
||||
dev-python/sphinx[${PYTHON_USEDEP}]
|
||||
dev-python/sphinx_rtd_theme[${PYTHON_USEDEP}]
|
||||
)
|
||||
gtk? ( nls? ( sys-devel/gettext ) )
|
||||
test? (
|
||||
dev-libs/glib[utils]
|
||||
sys-devel/bc
|
||||
)
|
||||
"
|
||||
CDEPEND="
|
||||
!static? (
|
||||
${ALL_DEPEND//\[static-libs(+)]}
|
||||
${SOFTMMU_TOOLS_DEPEND//\[static-libs(+)]}
|
||||
)
|
||||
qemu_softmmu_targets_i386? ( ${X86_FIRMWARE_DEPEND} )
|
||||
qemu_softmmu_targets_x86_64? ( ${X86_FIRMWARE_DEPEND} )
|
||||
qemu_softmmu_targets_ppc? ( ${PPC_FIRMWARE_DEPEND} )
|
||||
qemu_softmmu_targets_ppc64? ( ${PPC_FIRMWARE_DEPEND} )
|
||||
"
|
||||
DEPEND="${CDEPEND}
|
||||
kernel_linux? ( >=sys-kernel/linux-headers-2.6.35 )
|
||||
static? (
|
||||
${ALL_DEPEND}
|
||||
${SOFTMMU_TOOLS_DEPEND}
|
||||
)
|
||||
static-user? ( ${ALL_DEPEND} )"
|
||||
RDEPEND="${CDEPEND}
|
||||
acct-group/kvm
|
||||
selinux? ( sec-policy/selinux-qemu )"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-2.11.1-capstone_include_path.patch
|
||||
"${FILESDIR}"/${PN}-5.2.0-disable-keymap.patch
|
||||
"${FILESDIR}"/${PN}-6.0.0-make.patch
|
||||
"${FILESDIR}"/${PN}-6.1.0-strings.patch
|
||||
"${FILESDIR}"/${P}-fix-unix-socket-copy.patch
|
||||
"${FILESDIR}"/${P}-automagic-libbpf.patch
|
||||
"${FILESDIR}"/${P}-data-corruption.patch
|
||||
)
|
||||
|
||||
QA_PREBUILT="
|
||||
usr/share/qemu/hppa-firmware.img
|
||||
usr/share/qemu/openbios-ppc
|
||||
usr/share/qemu/openbios-sparc64
|
||||
usr/share/qemu/openbios-sparc32
|
||||
usr/share/qemu/opensbi-riscv64-generic-fw_dynamic.elf
|
||||
usr/share/qemu/opensbi-riscv32-generic-fw_dynamic.elf
|
||||
usr/share/qemu/palcode-clipper
|
||||
usr/share/qemu/s390-ccw.img
|
||||
usr/share/qemu/s390-netboot.img
|
||||
usr/share/qemu/u-boot.e500
|
||||
"
|
||||
|
||||
QA_WX_LOAD="usr/bin/qemu-i386
|
||||
usr/bin/qemu-x86_64
|
||||
usr/bin/qemu-alpha
|
||||
usr/bin/qemu-arm
|
||||
usr/bin/qemu-cris
|
||||
usr/bin/qemu-m68k
|
||||
usr/bin/qemu-microblaze
|
||||
usr/bin/qemu-microblazeel
|
||||
usr/bin/qemu-mips
|
||||
usr/bin/qemu-mipsel
|
||||
usr/bin/qemu-or1k
|
||||
usr/bin/qemu-ppc
|
||||
usr/bin/qemu-ppc64
|
||||
usr/bin/qemu-ppc64abi32
|
||||
usr/bin/qemu-sh4
|
||||
usr/bin/qemu-sh4eb
|
||||
usr/bin/qemu-sparc
|
||||
usr/bin/qemu-sparc64
|
||||
usr/bin/qemu-armeb
|
||||
usr/bin/qemu-sparc32plus
|
||||
usr/bin/qemu-s390x
|
||||
usr/bin/qemu-unicore32
|
||||
"
|
||||
|
||||
DOC_CONTENTS="If you don't have kvm compiled into the kernel, make sure you have the
|
||||
kernel module loaded before running kvm. The easiest way to ensure that the
|
||||
kernel module is loaded is to load it on boot.
|
||||
For AMD CPUs the module is called 'kvm-amd'.
|
||||
For Intel CPUs the module is called 'kvm-intel'.
|
||||
Please review /etc/conf.d/modules for how to load these.
|
||||
|
||||
Make sure your user is in the 'kvm' group. Just run
|
||||
$ gpasswd -a <USER> kvm
|
||||
then have <USER> re-login.
|
||||
|
||||
For brand new installs, the default permissions on /dev/kvm might not let
|
||||
you access it. You can tell udev to reset ownership/perms:
|
||||
$ udevadm trigger -c add /dev/kvm
|
||||
|
||||
If you want to register binfmt handlers for qemu user targets:
|
||||
For openrc:
|
||||
# rc-update add qemu-binfmt
|
||||
For systemd:
|
||||
# ln -s /usr/share/qemu/binfmt.d/qemu.conf /etc/binfmt.d/qemu.conf"
|
||||
|
||||
pkg_pretend() {
|
||||
if use kernel_linux && kernel_is lt 2 6 25; then
|
||||
eerror "This version of KVM requires a host kernel of 2.6.25 or higher."
|
||||
elif use kernel_linux; then
|
||||
if ! linux_config_exists; then
|
||||
eerror "Unable to check your kernel for KVM support"
|
||||
else
|
||||
CONFIG_CHECK="~KVM ~TUN ~BRIDGE"
|
||||
ERROR_KVM="You must enable KVM in your kernel to continue"
|
||||
ERROR_KVM_AMD="If you have an AMD CPU, you must enable KVM_AMD in"
|
||||
ERROR_KVM_AMD+=" your kernel configuration."
|
||||
ERROR_KVM_INTEL="If you have an Intel CPU, you must enable"
|
||||
ERROR_KVM_INTEL+=" KVM_INTEL in your kernel configuration."
|
||||
ERROR_TUN="You will need the Universal TUN/TAP driver compiled"
|
||||
ERROR_TUN+=" into your kernel or loaded as a module to use the"
|
||||
ERROR_TUN+=" virtual network device if using -net tap."
|
||||
ERROR_BRIDGE="You will also need support for 802.1d"
|
||||
ERROR_BRIDGE+=" Ethernet Bridging for some network configurations."
|
||||
use vhost-net && CONFIG_CHECK+=" ~VHOST_NET"
|
||||
ERROR_VHOST_NET="You must enable VHOST_NET to have vhost-net"
|
||||
ERROR_VHOST_NET+=" support"
|
||||
|
||||
if use amd64 || use x86 || use amd64-linux || use x86-linux; then
|
||||
if grep -q AuthenticAMD /proc/cpuinfo; then
|
||||
CONFIG_CHECK+=" ~KVM_AMD"
|
||||
elif grep -q GenuineIntel /proc/cpuinfo; then
|
||||
CONFIG_CHECK+=" ~KVM_INTEL"
|
||||
fi
|
||||
fi
|
||||
|
||||
use python && CONFIG_CHECK+=" ~DEBUG_FS"
|
||||
ERROR_DEBUG_FS="debugFS support required for kvm_stat"
|
||||
|
||||
# Now do the actual checks setup above
|
||||
check_extra_config
|
||||
fi
|
||||
fi
|
||||
|
||||
if grep -qs '/usr/bin/qemu-kvm' "${EROOT}"/etc/libvirt/qemu/*.xml; then
|
||||
eerror "The kvm/qemu-kvm wrappers no longer exist, but your libvirt"
|
||||
eerror "instances are still pointing to it. Please update your"
|
||||
eerror "configs in /etc/libvirt/qemu/ to use the -enable-kvm flag"
|
||||
eerror "and the right system binary (e.g. qemu-system-x86_64)."
|
||||
die "update your virt configs to not use qemu-kvm"
|
||||
fi
|
||||
}
|
||||
|
||||
# Sanity check to make sure target lists are kept up-to-date.
|
||||
check_targets() {
|
||||
local var=$1 mak=$2
|
||||
local detected sorted
|
||||
|
||||
pushd "${S}"/configs/targets/ >/dev/null || die
|
||||
|
||||
# Force C locale until glibc is updated. #564936
|
||||
detected=$(echo $(printf '%s\n' *-${mak}.mak | sed "s:-${mak}.mak::" | LC_COLLATE=C sort -u))
|
||||
sorted=$(echo $(printf '%s\n' ${!var} | LC_COLLATE=C sort -u))
|
||||
if [[ ${sorted} != "${detected}" ]] ; then
|
||||
eerror "The ebuild needs to be kept in sync."
|
||||
eerror "${var}: ${sorted}"
|
||||
eerror "$(printf '%-*s' ${#var} configure): ${detected}"
|
||||
die "sync ${var} to the list of targets"
|
||||
fi
|
||||
|
||||
popd >/dev/null
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
check_targets IUSE_SOFTMMU_TARGETS softmmu
|
||||
check_targets IUSE_USER_TARGETS linux-user
|
||||
|
||||
default
|
||||
|
||||
# Use correct toolchain to fix cross-compiling
|
||||
tc-export AR AS LD NM OBJCOPY PKG_CONFIG RANLIB STRINGS
|
||||
export WINDRES=${CHOST}-windres
|
||||
|
||||
# Verbose builds
|
||||
MAKEOPTS+=" V=1"
|
||||
|
||||
# Remove bundled copy of libfdt
|
||||
rm -r dtc || die
|
||||
}
|
||||
|
||||
##
|
||||
# configures qemu based on the build directory and the build type
|
||||
# we are using.
|
||||
#
|
||||
qemu_src_configure() {
|
||||
debug-print-function ${FUNCNAME} "$@"
|
||||
|
||||
local buildtype=$1
|
||||
local builddir="${S}/${buildtype}-build"
|
||||
|
||||
mkdir "${builddir}"
|
||||
|
||||
local conf_opts=(
|
||||
--prefix=/usr
|
||||
--sysconfdir=/etc
|
||||
--bindir=/usr/bin
|
||||
--libdir=/usr/$(get_libdir)
|
||||
--datadir=/usr/share
|
||||
--docdir=/usr/share/doc/${PF}/html
|
||||
--mandir=/usr/share/man
|
||||
--localstatedir=/var
|
||||
--disable-bsd-user
|
||||
--disable-containers # bug #732972
|
||||
--disable-guest-agent
|
||||
--disable-strip
|
||||
|
||||
# bug #746752: TCG interpreter has a few limitations:
|
||||
# - it does not support FPU
|
||||
# - it's generally slower on non-self-modifying code
|
||||
# It's advantage is support for host architectures
|
||||
# where native codegeneration is not implemented.
|
||||
# Gentoo has qemu keyworded only on targets with
|
||||
# native code generation available. Avoid the interpreter.
|
||||
--disable-tcg-interpreter
|
||||
|
||||
--disable-werror
|
||||
# We support gnutls/nettle for crypto operations. It is possible
|
||||
# to use gcrypt when gnutls/nettle are disabled (but not when they
|
||||
# are enabled), but it's not really worth the hassle. Disable it
|
||||
# all the time to avoid automatically detecting it. #568856
|
||||
--disable-gcrypt
|
||||
--python="${PYTHON}"
|
||||
--cc="$(tc-getCC)"
|
||||
--cxx="$(tc-getCXX)"
|
||||
--host-cc="$(tc-getBUILD_CC)"
|
||||
$(use_enable debug debug-info)
|
||||
$(use_enable debug debug-tcg)
|
||||
$(use_enable doc docs)
|
||||
$(use_enable nls gettext)
|
||||
$(use_enable plugins)
|
||||
$(use_enable xattr attr)
|
||||
)
|
||||
|
||||
# Disable options not used by user targets. This simplifies building
|
||||
# static user targets (USE=static-user) considerably.
|
||||
conf_notuser() {
|
||||
if [[ ${buildtype} == "user" ]] ; then
|
||||
echo "--disable-${2:-$1}"
|
||||
else
|
||||
use_enable "$@"
|
||||
fi
|
||||
}
|
||||
# Enable option only for softmmu build, but not 'user' or 'tools'
|
||||
conf_softmmu() {
|
||||
if [[ ${buildtype} == "softmmu" ]] ; then
|
||||
use_enable "$@"
|
||||
else
|
||||
echo "--disable-${2:-$1}"
|
||||
fi
|
||||
}
|
||||
# Enable option only for tools build, but not 'user' or 'softmmu'
|
||||
conf_tools() {
|
||||
if [[ ${buildtype} == "tools" ]] ; then
|
||||
use_enable "$@"
|
||||
else
|
||||
echo "--disable-${2:-$1}"
|
||||
fi
|
||||
}
|
||||
conf_opts+=(
|
||||
$(conf_notuser accessibility brlapi)
|
||||
$(conf_notuser aio linux-aio)
|
||||
$(conf_softmmu bpf)
|
||||
$(conf_notuser bzip2)
|
||||
$(conf_notuser capstone)
|
||||
$(conf_notuser caps cap-ng)
|
||||
$(conf_notuser curl)
|
||||
$(conf_notuser fdt)
|
||||
$(conf_notuser fuse)
|
||||
$(conf_notuser glusterfs)
|
||||
$(conf_notuser gnutls)
|
||||
$(conf_notuser gnutls nettle)
|
||||
$(conf_notuser gtk)
|
||||
$(conf_notuser infiniband rdma)
|
||||
$(conf_notuser iscsi libiscsi)
|
||||
$(conf_notuser io-uring linux-io-uring)
|
||||
$(conf_notuser jemalloc jemalloc)
|
||||
$(conf_notuser jpeg vnc-jpeg)
|
||||
$(conf_notuser kernel_linux kvm)
|
||||
$(conf_notuser lzo)
|
||||
$(conf_notuser multipath mpath)
|
||||
$(conf_notuser ncurses curses)
|
||||
$(conf_notuser nfs libnfs)
|
||||
$(conf_notuser numa)
|
||||
$(conf_notuser opengl)
|
||||
$(conf_notuser png vnc-png)
|
||||
$(conf_notuser rbd)
|
||||
$(conf_notuser sasl vnc-sasl)
|
||||
$(conf_notuser sdl)
|
||||
$(conf_softmmu sdl-image)
|
||||
$(conf_notuser seccomp)
|
||||
$(conf_notuser slirp slirp system)
|
||||
$(conf_notuser smartcard)
|
||||
$(conf_notuser snappy)
|
||||
$(conf_notuser spice)
|
||||
$(conf_notuser ssh libssh)
|
||||
$(conf_notuser udev libudev)
|
||||
$(conf_notuser usb libusb)
|
||||
$(conf_notuser usbredir usb-redir)
|
||||
$(conf_notuser vde)
|
||||
$(conf_notuser vhost-net)
|
||||
$(conf_notuser vhost-user-fs)
|
||||
$(conf_tools vhost-user-fs virtiofsd)
|
||||
$(conf_notuser virgl virglrenderer)
|
||||
$(conf_softmmu virtfs)
|
||||
$(conf_notuser vnc)
|
||||
$(conf_notuser vte)
|
||||
$(conf_notuser xen)
|
||||
$(conf_notuser xen xen-pci-passthrough)
|
||||
$(conf_notuser xfs xfsctl)
|
||||
# use prebuilt keymaps, bug #759604
|
||||
--disable-xkbcommon
|
||||
$(conf_notuser zstd)
|
||||
)
|
||||
|
||||
if [[ ${buildtype} == "user" ]] ; then
|
||||
conf_opts+=( --disable-libxml2 )
|
||||
else
|
||||
conf_opts+=( --enable-libxml2 )
|
||||
fi
|
||||
|
||||
if [[ ! ${buildtype} == "user" ]] ; then
|
||||
# audio options
|
||||
local audio_opts=(
|
||||
# Note: backend order matters here: #716202
|
||||
# We iterate from higher-level to lower level.
|
||||
$(usex pulseaudio pa "")
|
||||
$(usev jack)
|
||||
$(usev sdl)
|
||||
$(usev alsa)
|
||||
$(usev oss)
|
||||
)
|
||||
conf_opts+=(
|
||||
--audio-drv-list=$(printf "%s," "${audio_opts[@]}")
|
||||
)
|
||||
fi
|
||||
|
||||
case ${buildtype} in
|
||||
user)
|
||||
conf_opts+=(
|
||||
--enable-linux-user
|
||||
--disable-system
|
||||
--disable-blobs
|
||||
--disable-tools
|
||||
)
|
||||
local static_flag="static-user"
|
||||
;;
|
||||
softmmu)
|
||||
conf_opts+=(
|
||||
--disable-linux-user
|
||||
--enable-system
|
||||
--disable-tools
|
||||
)
|
||||
local static_flag="static"
|
||||
;;
|
||||
tools)
|
||||
conf_opts+=(
|
||||
--disable-linux-user
|
||||
--disable-system
|
||||
--disable-blobs
|
||||
--enable-tools
|
||||
)
|
||||
local static_flag="static"
|
||||
;;
|
||||
esac
|
||||
|
||||
local targets="${buildtype}_targets"
|
||||
[[ -n ${targets} ]] && conf_opts+=( --target-list="${!targets}" )
|
||||
|
||||
# Add support for SystemTAP
|
||||
use systemtap && conf_opts+=( --enable-trace-backend=dtrace )
|
||||
|
||||
# We always want to attempt to build with PIE support as it results
|
||||
# in a more secure binary. But it doesn't work with static or if
|
||||
# the current GCC doesn't have PIE support.
|
||||
if use ${static_flag}; then
|
||||
conf_opts+=( --static --disable-pie )
|
||||
else
|
||||
tc-enables-pie && conf_opts+=( --enable-pie )
|
||||
fi
|
||||
|
||||
# Meson will not use a cross-file unless cross_prefix is set.
|
||||
tc-is-cross-compiler && conf_opts+=( --cross-prefix="${CHOST}-" )
|
||||
|
||||
# Plumb through equivalent of EXTRA_ECONF to allow experiments
|
||||
# like bug #747928.
|
||||
conf_opts+=( ${EXTRA_CONF_QEMU} )
|
||||
|
||||
echo "../configure ${conf_opts[*]}"
|
||||
cd "${builddir}"
|
||||
../configure "${conf_opts[@]}" || die "configure failed"
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local target
|
||||
|
||||
python_setup
|
||||
|
||||
softmmu_targets= softmmu_bins=()
|
||||
user_targets= user_bins=()
|
||||
|
||||
for target in ${IUSE_SOFTMMU_TARGETS} ; do
|
||||
if use "qemu_softmmu_targets_${target}"; then
|
||||
softmmu_targets+=",${target}-softmmu"
|
||||
softmmu_bins+=( "qemu-system-${target}" )
|
||||
fi
|
||||
done
|
||||
|
||||
for target in ${IUSE_USER_TARGETS} ; do
|
||||
if use "qemu_user_targets_${target}"; then
|
||||
user_targets+=",${target}-linux-user"
|
||||
user_bins+=( "qemu-${target}" )
|
||||
fi
|
||||
done
|
||||
|
||||
softmmu_targets=${softmmu_targets#,}
|
||||
user_targets=${user_targets#,}
|
||||
|
||||
[[ -n ${softmmu_targets} ]] && qemu_src_configure "softmmu"
|
||||
[[ -n ${user_targets} ]] && qemu_src_configure "user"
|
||||
qemu_src_configure "tools"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
if [[ -n ${user_targets} ]]; then
|
||||
cd "${S}/user-build"
|
||||
default
|
||||
fi
|
||||
|
||||
if [[ -n ${softmmu_targets} ]]; then
|
||||
cd "${S}/softmmu-build"
|
||||
default
|
||||
fi
|
||||
|
||||
cd "${S}/tools-build"
|
||||
default
|
||||
}
|
||||
|
||||
src_test() {
|
||||
if [[ -n ${softmmu_targets} ]]; then
|
||||
cd "${S}/softmmu-build"
|
||||
pax-mark m */qemu-system-* #515550
|
||||
emake check
|
||||
fi
|
||||
}
|
||||
|
||||
qemu_python_install() {
|
||||
python_domodule "${S}/python/qemu"
|
||||
|
||||
python_doscript "${S}/scripts/kvm/vmxcap"
|
||||
python_doscript "${S}/scripts/qmp/qmp-shell"
|
||||
python_doscript "${S}/scripts/qmp/qemu-ga-client"
|
||||
}
|
||||
|
||||
# Generate binfmt support files.
|
||||
# - /etc/init.d/qemu-binfmt script which registers the user handlers (openrc)
|
||||
# - /usr/share/qemu/binfmt.d/qemu.conf (for use with systemd-binfmt)
|
||||
generate_initd() {
|
||||
local out="${T}/qemu-binfmt"
|
||||
local out_systemd="${T}/qemu.conf"
|
||||
local d="${T}/binfmt.d"
|
||||
|
||||
einfo "Generating qemu binfmt scripts and configuration files"
|
||||
|
||||
# Generate the debian fragments first.
|
||||
mkdir -p "${d}"
|
||||
"${S}"/scripts/qemu-binfmt-conf.sh \
|
||||
--debian \
|
||||
--exportdir "${d}" \
|
||||
--qemu-path "${EPREFIX}/usr/bin" \
|
||||
|| die
|
||||
# Then turn the fragments into a shell script we can source.
|
||||
sed -E -i \
|
||||
-e 's:^([^ ]+) (.*)$:\1="\2":' \
|
||||
"${d}"/* || die
|
||||
|
||||
# Generate the init.d script by assembling the fragments from above.
|
||||
local f qcpu package interpreter magic mask
|
||||
cat "${FILESDIR}"/qemu-binfmt.initd.head >"${out}" || die
|
||||
for f in "${d}"/qemu-* ; do
|
||||
source "${f}"
|
||||
|
||||
# Normalize the cpu logic like we do in the init.d for the native cpu.
|
||||
qcpu=${package#qemu-}
|
||||
case ${qcpu} in
|
||||
arm*) qcpu="arm";;
|
||||
mips*) qcpu="mips";;
|
||||
ppc*) qcpu="ppc";;
|
||||
s390*) qcpu="s390";;
|
||||
sh*) qcpu="sh";;
|
||||
sparc*) qcpu="sparc";;
|
||||
esac
|
||||
|
||||
# we use 'printf' here to be portable across 'sh'
|
||||
# implementations: #679168
|
||||
cat <<EOF >>"${out}"
|
||||
if [ "\${cpu}" != "${qcpu}" -a -x "${interpreter}" ] ; then
|
||||
printf '%s\n' ':${package}:M::${magic}:${mask}:${interpreter}:'"\${QEMU_BINFMT_FLAGS}" >/proc/sys/fs/binfmt_misc/register
|
||||
fi
|
||||
EOF
|
||||
|
||||
echo ":${package}:M::${magic}:${mask}:${interpreter}:OC" >>"${out_systemd}"
|
||||
|
||||
done
|
||||
cat "${FILESDIR}"/qemu-binfmt.initd.tail >>"${out}" || die
|
||||
}
|
||||
|
||||
src_install() {
|
||||
if [[ -n ${user_targets} ]]; then
|
||||
cd "${S}/user-build"
|
||||
emake DESTDIR="${ED}" install
|
||||
|
||||
# Install binfmt handler init script for user targets.
|
||||
generate_initd
|
||||
doinitd "${T}/qemu-binfmt"
|
||||
|
||||
# Install binfmt/qemu.conf.
|
||||
insinto "/usr/share/qemu/binfmt.d"
|
||||
doins "${T}/qemu.conf"
|
||||
fi
|
||||
|
||||
if [[ -n ${softmmu_targets} ]]; then
|
||||
cd "${S}/softmmu-build"
|
||||
emake DESTDIR="${ED}" install
|
||||
|
||||
# This might not exist if the test failed. #512010
|
||||
[[ -e check-report.html ]] && dodoc check-report.html
|
||||
|
||||
if use kernel_linux; then
|
||||
udev_newrules "${FILESDIR}"/65-kvm.rules-r2 65-kvm.rules
|
||||
fi
|
||||
|
||||
if use python; then
|
||||
python_foreach_impl qemu_python_install
|
||||
fi
|
||||
fi
|
||||
|
||||
cd "${S}/tools-build"
|
||||
emake DESTDIR="${ED}" install
|
||||
|
||||
# Disable mprotect on the qemu binaries as they use JITs to be fast #459348
|
||||
pushd "${ED}"/usr/bin >/dev/null
|
||||
pax-mark mr "${softmmu_bins[@]}" "${user_bins[@]}" # bug 575594
|
||||
popd >/dev/null
|
||||
|
||||
# Install config file example for qemu-bridge-helper
|
||||
insinto "/etc/qemu"
|
||||
doins "${FILESDIR}/bridge.conf"
|
||||
|
||||
cd "${S}"
|
||||
dodoc MAINTAINERS docs/specs/pci-ids.txt
|
||||
newdoc pc-bios/README README.pc-bios
|
||||
|
||||
# Disallow stripping of prebuilt firmware files.
|
||||
dostrip -x ${QA_PREBUILT}
|
||||
|
||||
if [[ -n ${softmmu_targets} ]]; then
|
||||
# Remove SeaBIOS since we're using the SeaBIOS packaged one
|
||||
rm "${ED}/usr/share/qemu/bios.bin"
|
||||
rm "${ED}/usr/share/qemu/bios-256k.bin"
|
||||
if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then
|
||||
dosym ../seabios/bios.bin /usr/share/qemu/bios.bin
|
||||
dosym ../seabios/bios-256k.bin /usr/share/qemu/bios-256k.bin
|
||||
fi
|
||||
|
||||
# Remove vgabios since we're using the seavgabios packaged one
|
||||
rm "${ED}/usr/share/qemu/vgabios.bin"
|
||||
rm "${ED}/usr/share/qemu/vgabios-cirrus.bin"
|
||||
rm "${ED}/usr/share/qemu/vgabios-qxl.bin"
|
||||
rm "${ED}/usr/share/qemu/vgabios-stdvga.bin"
|
||||
rm "${ED}/usr/share/qemu/vgabios-virtio.bin"
|
||||
rm "${ED}/usr/share/qemu/vgabios-vmware.bin"
|
||||
# PPC/PPC64 loads vgabios-stdvga
|
||||
if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386 || use qemu_softmmu_targets_ppc || use qemu_softmmu_targets_ppc64; then
|
||||
dosym ../seavgabios/vgabios-isavga.bin /usr/share/qemu/vgabios.bin
|
||||
dosym ../seavgabios/vgabios-cirrus.bin /usr/share/qemu/vgabios-cirrus.bin
|
||||
dosym ../seavgabios/vgabios-qxl.bin /usr/share/qemu/vgabios-qxl.bin
|
||||
dosym ../seavgabios/vgabios-stdvga.bin /usr/share/qemu/vgabios-stdvga.bin
|
||||
dosym ../seavgabios/vgabios-virtio.bin /usr/share/qemu/vgabios-virtio.bin
|
||||
dosym ../seavgabios/vgabios-vmware.bin /usr/share/qemu/vgabios-vmware.bin
|
||||
fi
|
||||
|
||||
# Remove sgabios since we're using the sgabios packaged one
|
||||
rm "${ED}/usr/share/qemu/sgabios.bin"
|
||||
if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then
|
||||
dosym ../sgabios/sgabios.bin /usr/share/qemu/sgabios.bin
|
||||
fi
|
||||
|
||||
# Remove iPXE since we're using the iPXE packaged one
|
||||
rm "${ED}"/usr/share/qemu/pxe-*.rom
|
||||
if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then
|
||||
dosym ../ipxe/8086100e.rom /usr/share/qemu/pxe-e1000.rom
|
||||
dosym ../ipxe/80861209.rom /usr/share/qemu/pxe-eepro100.rom
|
||||
dosym ../ipxe/10500940.rom /usr/share/qemu/pxe-ne2k_pci.rom
|
||||
dosym ../ipxe/10222000.rom /usr/share/qemu/pxe-pcnet.rom
|
||||
dosym ../ipxe/10ec8139.rom /usr/share/qemu/pxe-rtl8139.rom
|
||||
dosym ../ipxe/1af41000.rom /usr/share/qemu/pxe-virtio.rom
|
||||
fi
|
||||
fi
|
||||
|
||||
DISABLE_AUTOFORMATTING=true
|
||||
readme.gentoo_create_doc
|
||||
}
|
||||
|
||||
firmware_abi_change() {
|
||||
local pv
|
||||
for pv in ${REPLACING_VERSIONS}; do
|
||||
if ver_test ${pv} -lt ${FIRMWARE_ABI_VERSION}; then
|
||||
return 0
|
||||
fi
|
||||
done
|
||||
return 1
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
if [[ -n ${softmmu_targets} ]] && use kernel_linux; then
|
||||
udev_reload
|
||||
fi
|
||||
|
||||
xdg_icon_cache_update
|
||||
|
||||
[[ -z ${EPREFIX} ]] && [[ -f ${EROOT}/usr/libexec/qemu-bridge-helper ]] && \
|
||||
fcaps cap_net_admin ${EROOT}/usr/libexec/qemu-bridge-helper
|
||||
|
||||
DISABLE_AUTOFORMATTING=true
|
||||
readme.gentoo_print_elog
|
||||
|
||||
if use pin-upstream-blobs && firmware_abi_change; then
|
||||
ewarn "This version of qemu pins new versions of firmware blobs:"
|
||||
ewarn " $(best_version sys-firmware/edk2-ovmf)"
|
||||
ewarn " $(best_version sys-firmware/ipxe)"
|
||||
ewarn " $(best_version sys-firmware/seabios)"
|
||||
ewarn " $(best_version sys-firmware/sgabios)"
|
||||
ewarn "This might break resume of hibernated guests (started with a different"
|
||||
ewarn "firmware version) and live migration to/from qemu versions with different"
|
||||
ewarn "firmware. Please (cold) restart all running guests. For functional"
|
||||
ewarn "guest migration ensure that all"
|
||||
ewarn "hosts run at least"
|
||||
ewarn " app-emulation/qemu-${FIRMWARE_ABI_VERSION}."
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_info() {
|
||||
echo "Using:"
|
||||
echo " $(best_version app-emulation/spice-protocol)"
|
||||
echo " $(best_version sys-firmware/edk2-ovmf)"
|
||||
if has_version 'sys-firmware/edk2-ovmf[binary]'; then
|
||||
echo " USE=binary"
|
||||
else
|
||||
echo " USE=''"
|
||||
fi
|
||||
echo " $(best_version sys-firmware/ipxe)"
|
||||
echo " $(best_version sys-firmware/seabios)"
|
||||
if has_version 'sys-firmware/seabios[binary]'; then
|
||||
echo " USE=binary"
|
||||
else
|
||||
echo " USE=''"
|
||||
fi
|
||||
echo " $(best_version sys-firmware/sgabios)"
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
xdg_icon_cache_update
|
||||
}
|
@ -0,0 +1,505 @@
|
||||
# Copyright 2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
CRATES="
|
||||
adler-1.0.2
|
||||
adler32-1.2.0
|
||||
ahash-0.7.6
|
||||
aho-corasick-0.7.18
|
||||
alsa-0.5.0
|
||||
alsa-sys-0.3.1
|
||||
ansi_term-0.12.1
|
||||
approx-0.5.0
|
||||
arrayvec-0.5.2
|
||||
arrayvec-0.7.2
|
||||
ash-0.33.3+1.2.191
|
||||
async-channel-1.6.1
|
||||
atty-0.2.14
|
||||
autocfg-1.0.1
|
||||
base64-0.13.0
|
||||
bindgen-0.56.0
|
||||
bit-set-0.5.2
|
||||
bit-vec-0.6.3
|
||||
bitflags-1.3.2
|
||||
bitflags_serde_shim-0.2.2
|
||||
bitstream-io-1.2.0
|
||||
bitvec-0.19.6
|
||||
block-0.1.6
|
||||
block-buffer-0.10.0
|
||||
bstr-0.2.17
|
||||
build_const-0.2.2
|
||||
bumpalo-3.8.0
|
||||
bytemuck-1.7.3
|
||||
bytemuck_derive-1.0.1
|
||||
byteorder-1.4.3
|
||||
bytes-1.1.0
|
||||
cache-padded-1.1.1
|
||||
calloop-0.9.1
|
||||
castaway-0.1.1
|
||||
cc-1.0.72
|
||||
cesu8-1.1.0
|
||||
cexpr-0.4.0
|
||||
cfg-if-0.1.10
|
||||
cfg-if-1.0.0
|
||||
cfg_aliases-0.1.1
|
||||
chrono-0.4.19
|
||||
clang-sys-1.3.0
|
||||
clap-3.0.1
|
||||
clap_derive-3.0.0
|
||||
clipboard-0.5.0
|
||||
clipboard-win-2.2.0
|
||||
cocoa-0.24.0
|
||||
cocoa-foundation-0.1.0
|
||||
codespan-reporting-0.11.1
|
||||
color_quant-1.1.0
|
||||
combine-4.6.2
|
||||
concurrent-queue-1.2.2
|
||||
console-0.15.0
|
||||
console_error_panic_hook-0.1.7
|
||||
console_log-0.2.0
|
||||
cookie-factory-0.3.2
|
||||
copyless-0.1.5
|
||||
core-foundation-0.7.0
|
||||
core-foundation-0.9.2
|
||||
core-foundation-sys-0.7.0
|
||||
core-foundation-sys-0.8.3
|
||||
core-graphics-0.19.2
|
||||
core-graphics-0.22.3
|
||||
core-graphics-types-0.1.1
|
||||
core-video-sys-0.1.4
|
||||
coreaudio-rs-0.10.0
|
||||
coreaudio-sys-0.2.8
|
||||
cpal-0.13.4
|
||||
cpufeatures-0.2.1
|
||||
crc-1.8.1
|
||||
crc32fast-1.3.0
|
||||
crossbeam-channel-0.5.1
|
||||
crossbeam-deque-0.8.1
|
||||
crossbeam-epoch-0.9.5
|
||||
crossbeam-utils-0.8.5
|
||||
crypto-common-0.1.0
|
||||
csv-1.1.6
|
||||
csv-core-0.1.10
|
||||
ctor-0.1.21
|
||||
cty-0.2.2
|
||||
curl-0.4.41
|
||||
curl-sys-0.4.51+curl-7.80.0
|
||||
d3d12-0.4.1
|
||||
darling-0.10.2
|
||||
darling-0.13.0
|
||||
darling_core-0.10.2
|
||||
darling_core-0.13.0
|
||||
darling_macro-0.10.2
|
||||
darling_macro-0.13.0
|
||||
deflate-0.8.6
|
||||
deflate-0.9.1
|
||||
derivative-2.2.0
|
||||
derive-try-from-primitive-1.0.0
|
||||
diff-0.1.12
|
||||
digest-0.10.0
|
||||
dirs-4.0.0
|
||||
dirs-sys-0.3.6
|
||||
dispatch-0.2.0
|
||||
dlib-0.5.0
|
||||
downcast-rs-1.2.0
|
||||
either-1.6.1
|
||||
embed-resource-1.6.5
|
||||
encode_unicode-0.3.6
|
||||
encoding-0.2.33
|
||||
encoding-index-japanese-1.20141219.5
|
||||
encoding-index-korean-1.20141219.5
|
||||
encoding-index-simpchinese-1.20141219.5
|
||||
encoding-index-singlebyte-1.20141219.5
|
||||
encoding-index-tradchinese-1.20141219.5
|
||||
encoding_index_tests-0.1.4
|
||||
encoding_rs-0.8.30
|
||||
enum-map-1.1.1
|
||||
enum-map-derive-0.6.0
|
||||
enumset-1.0.8
|
||||
enumset_derive-0.5.5
|
||||
env_logger-0.9.0
|
||||
euclid-0.22.6
|
||||
event-listener-2.5.1
|
||||
fastrand-1.5.0
|
||||
flate2-1.0.22
|
||||
float_next_after-0.1.5
|
||||
fnv-1.0.7
|
||||
foreign-types-0.3.2
|
||||
foreign-types-shared-0.1.1
|
||||
form_urlencoded-1.0.1
|
||||
funty-1.1.0
|
||||
futures-0.3.19
|
||||
futures-channel-0.3.19
|
||||
futures-core-0.3.19
|
||||
futures-executor-0.3.19
|
||||
futures-io-0.3.19
|
||||
futures-lite-1.12.0
|
||||
futures-macro-0.3.19
|
||||
futures-sink-0.3.19
|
||||
futures-task-0.3.19
|
||||
futures-util-0.3.19
|
||||
fxhash-0.2.1
|
||||
generational-arena-0.2.8
|
||||
generic-array-0.14.4
|
||||
getrandom-0.2.3
|
||||
gif-0.11.3
|
||||
glob-0.3.0
|
||||
glow-0.11.0
|
||||
gpu-alloc-0.5.2
|
||||
gpu-alloc-types-0.2.0
|
||||
gpu-descriptor-0.2.2
|
||||
gpu-descriptor-types-0.1.1
|
||||
hashbrown-0.11.2
|
||||
heck-0.3.3
|
||||
hermit-abi-0.1.19
|
||||
hexf-parse-0.2.1
|
||||
http-0.2.5
|
||||
humantime-2.1.0
|
||||
ident_case-1.0.1
|
||||
idna-0.2.3
|
||||
image-0.23.14
|
||||
indexmap-1.7.0
|
||||
indicatif-0.16.2
|
||||
inplace_it-0.3.3
|
||||
instant-0.1.12
|
||||
isahc-1.6.0
|
||||
itoa-0.4.8
|
||||
jni-0.19.0
|
||||
jni-sys-0.3.0
|
||||
jobserver-0.1.24
|
||||
jpeg-decoder-0.1.22
|
||||
jpeg-decoder-0.2.1
|
||||
js-sys-0.3.55
|
||||
json-0.12.4
|
||||
khronos-egl-4.1.0
|
||||
lazy_static-1.4.0
|
||||
lazycell-1.3.0
|
||||
lexical-core-0.7.6
|
||||
libc-0.2.109
|
||||
libflate-1.1.1
|
||||
libflate_lz77-1.1.0
|
||||
libloading-0.7.2
|
||||
libnghttp2-sys-0.1.7+1.45.0
|
||||
libz-sys-1.1.3
|
||||
lock_api-0.4.5
|
||||
log-0.4.14
|
||||
lyon-0.17.10
|
||||
lyon_algorithms-0.17.7
|
||||
lyon_geom-0.17.6
|
||||
lyon_path-0.17.7
|
||||
lyon_tessellation-0.17.10
|
||||
lzma-rs-0.2.0
|
||||
mach-0.3.2
|
||||
malloc_buf-0.0.6
|
||||
matches-0.1.9
|
||||
memchr-2.4.1
|
||||
memmap2-0.3.1
|
||||
memoffset-0.6.5
|
||||
metal-0.23.1
|
||||
mime-0.3.16
|
||||
minimal-lexical-0.2.1
|
||||
minimp3-0.5.1
|
||||
minimp3-sys-0.3.2
|
||||
miniz_oxide-0.3.7
|
||||
miniz_oxide-0.4.4
|
||||
mio-0.8.0
|
||||
miow-0.3.7
|
||||
naga-0.7.2
|
||||
ndk-0.3.0
|
||||
ndk-0.4.0
|
||||
ndk-0.5.0
|
||||
ndk-glue-0.3.0
|
||||
ndk-glue-0.4.0
|
||||
ndk-glue-0.5.0
|
||||
ndk-macro-0.2.0
|
||||
ndk-macro-0.3.0
|
||||
ndk-sys-0.2.2
|
||||
nix-0.20.0
|
||||
nix-0.22.0
|
||||
nom-5.1.2
|
||||
nom-6.1.2
|
||||
nom-7.1.0
|
||||
ntapi-0.3.6
|
||||
num-complex-0.3.1
|
||||
num-derive-0.3.3
|
||||
num-integer-0.1.44
|
||||
num-iter-0.1.42
|
||||
num-rational-0.3.2
|
||||
num-traits-0.2.14
|
||||
num_cpus-1.13.0
|
||||
num_enum-0.5.4
|
||||
num_enum_derive-0.5.4
|
||||
number_prefix-0.4.0
|
||||
objc-0.2.7
|
||||
objc-foundation-0.1.1
|
||||
objc_exception-0.1.2
|
||||
objc_id-0.1.1
|
||||
oboe-0.4.4
|
||||
oboe-sys-0.4.4
|
||||
once_cell-1.8.0
|
||||
openssl-probe-0.1.4
|
||||
openssl-sys-0.9.71
|
||||
os_str_bytes-6.0.0
|
||||
output_vt100-0.1.2
|
||||
parking-2.0.0
|
||||
parking_lot-0.11.2
|
||||
parking_lot_core-0.8.5
|
||||
path-slash-0.1.4
|
||||
peeking_take_while-0.1.2
|
||||
percent-encoding-2.1.0
|
||||
pin-project-1.0.8
|
||||
pin-project-internal-1.0.8
|
||||
pin-project-lite-0.2.7
|
||||
pin-utils-0.1.0
|
||||
pkg-config-0.3.22
|
||||
png-0.16.8
|
||||
png-0.17.2
|
||||
polling-2.2.0
|
||||
ppv-lite86-0.2.15
|
||||
pretty_assertions-1.0.0
|
||||
primal-check-0.3.1
|
||||
proc-macro-crate-0.1.5
|
||||
proc-macro-crate-1.1.0
|
||||
proc-macro-error-1.0.4
|
||||
proc-macro-error-attr-1.0.4
|
||||
proc-macro2-1.0.36
|
||||
profiling-1.0.4
|
||||
quote-1.0.14
|
||||
radium-0.5.3
|
||||
rand-0.8.4
|
||||
rand_chacha-0.3.1
|
||||
rand_core-0.6.3
|
||||
range-alloc-0.1.2
|
||||
raw-window-handle-0.3.4
|
||||
raw-window-handle-0.4.2
|
||||
rayon-1.5.1
|
||||
rayon-core-1.9.1
|
||||
redox_syscall-0.2.10
|
||||
redox_users-0.4.0
|
||||
regex-1.5.4
|
||||
regex-automata-0.1.10
|
||||
regex-syntax-0.6.25
|
||||
regress-0.4.1
|
||||
renderdoc-sys-0.7.1
|
||||
rle-decode-fast-1.0.1
|
||||
ron-0.6.6
|
||||
rustc-hash-1.1.0
|
||||
rustdct-0.6.0
|
||||
rustfft-5.1.1
|
||||
ryu-1.0.6
|
||||
safe_arch-0.6.0
|
||||
same-file-1.0.6
|
||||
schannel-0.1.19
|
||||
scoped-tls-1.0.0
|
||||
scoped_threadpool-0.1.9
|
||||
scopeguard-1.1.0
|
||||
serde-1.0.133
|
||||
serde_derive-1.0.133
|
||||
serde_json-1.0.72
|
||||
sha2-0.10.0
|
||||
shlex-0.1.1
|
||||
sid-0.6.1
|
||||
slab-0.4.5
|
||||
slice-deque-0.3.0
|
||||
slotmap-1.0.6
|
||||
sluice-0.5.5
|
||||
smallvec-1.7.0
|
||||
smithay-client-toolkit-0.15.2
|
||||
socket2-0.4.2
|
||||
spirv-0.2.0+1.5.4
|
||||
static_assertions-1.1.0
|
||||
stdweb-0.1.3
|
||||
strength_reduce-0.2.3
|
||||
strsim-0.10.0
|
||||
strsim-0.9.3
|
||||
svg-0.10.0
|
||||
symphonia-0.4.0
|
||||
symphonia-bundle-mp3-0.4.0
|
||||
symphonia-core-0.4.0
|
||||
symphonia-metadata-0.4.0
|
||||
syn-1.0.84
|
||||
synstructure-0.12.6
|
||||
tap-1.0.1
|
||||
termcolor-1.1.2
|
||||
terminal_size-0.1.17
|
||||
textwrap-0.14.2
|
||||
thiserror-1.0.30
|
||||
thiserror-impl-1.0.30
|
||||
tiff-0.6.1
|
||||
time-0.1.43
|
||||
tinyfiledialogs-3.8.3
|
||||
tinyvec-1.5.1
|
||||
tinyvec_macros-0.1.0
|
||||
toml-0.5.8
|
||||
tracing-0.1.29
|
||||
tracing-attributes-0.1.18
|
||||
tracing-core-0.1.21
|
||||
tracing-futures-0.2.5
|
||||
transpose-0.2.1
|
||||
typenum-1.14.0
|
||||
unicode-bidi-0.3.7
|
||||
unicode-normalization-0.1.19
|
||||
unicode-segmentation-1.8.0
|
||||
unicode-width-0.1.9
|
||||
unicode-xid-0.2.2
|
||||
url-2.2.2
|
||||
vcpkg-0.2.15
|
||||
version_check-0.9.3
|
||||
vswhom-0.1.0
|
||||
vswhom-sys-0.1.0
|
||||
waker-fn-1.1.0
|
||||
walkdir-2.3.2
|
||||
wasi-0.10.2+wasi-snapshot-preview1
|
||||
wasm-bindgen-0.2.78
|
||||
wasm-bindgen-backend-0.2.78
|
||||
wasm-bindgen-futures-0.4.28
|
||||
wasm-bindgen-macro-0.2.78
|
||||
wasm-bindgen-macro-support-0.2.78
|
||||
wasm-bindgen-shared-0.2.78
|
||||
wayland-client-0.29.1
|
||||
wayland-commons-0.29.1
|
||||
wayland-cursor-0.29.1
|
||||
wayland-protocols-0.29.1
|
||||
wayland-scanner-0.29.1
|
||||
wayland-sys-0.29.1
|
||||
weak-table-0.3.2
|
||||
web-sys-0.3.55
|
||||
webbrowser-0.5.5
|
||||
weezl-0.1.5
|
||||
wepoll-ffi-0.1.2
|
||||
wgpu-0.11.1
|
||||
wgpu-core-0.11.3
|
||||
wgpu-hal-0.11.5
|
||||
wgpu-types-0.11.0
|
||||
wide-0.7.3
|
||||
widestring-0.4.3
|
||||
winapi-0.3.9
|
||||
winapi-i686-pc-windows-gnu-0.4.0
|
||||
winapi-util-0.1.5
|
||||
winapi-x86_64-pc-windows-gnu-0.4.0
|
||||
winit-0.26.0
|
||||
winreg-0.10.1
|
||||
wyz-0.2.0
|
||||
x11-clipboard-0.3.3
|
||||
x11-dl-2.19.1
|
||||
xcb-0.8.2
|
||||
xcursor-0.3.4
|
||||
xml-rs-0.8.4"
|
||||
# python is needed by xcb-0.8.2 until update to >=0.10
|
||||
PYTHON_COMPAT=( python3_{8..10} )
|
||||
PYTHON_REQ_USE="xml(+)"
|
||||
inherit cargo desktop flag-o-matic python-any-r1 xdg
|
||||
|
||||
# 0(github) 1(repo) 2(commit hash) 3(crate:workspace,...) [see core/Cargo.toml]
|
||||
RUFFLE_GIT=(
|
||||
"RustAudio dasp f05a703d247bb504d7e812b51e95f3765d9c5e94 dasp"
|
||||
"ruffle-rs gc-arena 4931b3bc25b2b74174ff5eb9c34ae0dda732778b gc-arena:src/gc-arena"
|
||||
"ruffle-rs h263-rs b810e8c3fdb8ea5df0b7808891076e774bee40a9 h263-rs:h263,h263-rs-yuv:yuv"
|
||||
"ruffle-rs nellymoser 77000f763b58021295429ca5740e3dc3b5228cbd nellymoser-rs:."
|
||||
"ruffle-rs nihav-vp6 9416fcc9fc8aab8f4681aa9093b42922214abbd3 nihav_codec_support:nihav-codec-support,nihav_core:nihav-core,nihav_duck:nihav-duck"
|
||||
"ruffle-rs quick-xml 8496365ec1412eb5ba5de350937b6bce352fa0ba quick-xml:."
|
||||
"ruffle-rs rust-flash-lso 19fecd07b9888c4bdaa66771c468095783b52bed flash-lso"
|
||||
)
|
||||
ruffle_uris() {
|
||||
cargo_crate_uris
|
||||
|
||||
local g
|
||||
for g in "${RUFFLE_GIT[@]}"; do
|
||||
g=(${g})
|
||||
echo "https://github.com/${g[0]}/${g[1]}/archive/${g[2]}.tar.gz -> ${g[1]}-${g[2]}.tar.gz"
|
||||
done
|
||||
}
|
||||
|
||||
# using _pYYYYMMDD over YYYY.MM.DD given ruffle has an underlaying version
|
||||
# (0.1.0) which could get a non-nightly release eventually (YYYY. > 0.1.0)
|
||||
MY_PV="nightly-${PV:3:4}-${PV:7:2}-${PV:9:2}"
|
||||
MY_P="${PN}-${MY_PV}"
|
||||
|
||||
DESCRIPTION="Flash Player emulator written in Rust"
|
||||
HOMEPAGE="https://ruffle.rs/"
|
||||
SRC_URI="
|
||||
https://github.com/ruffle-rs/ruffle/archive/refs/tags/${MY_PV}.tar.gz -> ${MY_P}.tar.gz
|
||||
$(ruffle_uris)"
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
|
||||
LICENSE="Apache-2.0 BSD BSD-2 CC0-1.0 ISC MIT MPL-2.0 ZLIB curl zlib-acknowledgement"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64"
|
||||
IUSE="gui"
|
||||
|
||||
DEPEND="
|
||||
dev-libs/openssl:=
|
||||
media-libs/alsa-lib
|
||||
sys-libs/zlib:=
|
||||
x11-libs/libxcb:="
|
||||
RDEPEND="
|
||||
${DEPEND}
|
||||
gui? (
|
||||
|| (
|
||||
gnome-extra/zenity
|
||||
kde-apps/kdialog
|
||||
)
|
||||
)"
|
||||
BDEPEND="
|
||||
${PYTHON_DEPS}
|
||||
virtual/pkgconfig
|
||||
>=virtual/rust-1.56"
|
||||
|
||||
QA_FLAGS_IGNORED="
|
||||
usr/bin/${PN}
|
||||
usr/bin/${PN}_exporter
|
||||
usr/bin/${PN}_scanner"
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
# use [patch] directive to register git snapshots of needed crates
|
||||
local crate g
|
||||
for g in "${RUFFLE_GIT[@]}"; do
|
||||
g=(${g})
|
||||
echo "[patch.\"https://github.com/${g[0]}/${g[1]}\"]"
|
||||
for crate in ${g[3]//,/ }; do
|
||||
echo "${crate%:*} = { path = \"../${g[1]}-${g[2]}/${crate#*:}\" }"
|
||||
done
|
||||
done >> Cargo.toml || die
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
filter-flags '-flto*' # undefined references with tinyfiledialogs and more
|
||||
|
||||
cargo_src_compile --bins # note: configure --bins would skip tests
|
||||
}
|
||||
|
||||
src_install() {
|
||||
dodoc README.md
|
||||
|
||||
# does not have a real GUI yet, flag is used to ensure there is a
|
||||
# way for messages and file picker to be displayed with .desktop
|
||||
# (many options, but zenity and kdialog currently seem to work better)
|
||||
if use gui; then
|
||||
newicon web/packages/extension/assets/images/icon180.png ${PN}.png
|
||||
make_desktop_entry ${PN} ${PN^} ${PN} "AudioVideo;Player;Emulator;" \
|
||||
"MimeType=application/x-shockwave-flash;application/vnd.adobe.flash.movie;"
|
||||
fi
|
||||
|
||||
cd target/$(usex debug{,} release) || die
|
||||
|
||||
newbin ${PN}_desktop ${PN}
|
||||
newbin exporter ${PN}_exporter
|
||||
dobin ${PN}_scanner
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
xdg_pkg_postinst
|
||||
|
||||
if [[ ! ${REPLACING_VERSIONS} ]]; then
|
||||
elog "${PN} is experimental software that is still under heavy development"
|
||||
elog "and only receiving nightly releases. Plans in Gentoo is to update"
|
||||
elog "roughly every two weeks if no known major regressions."
|
||||
elog
|
||||
elog "There is currently no plans to support wasm builds / browser"
|
||||
elog "extensions, this provides the desktop viewer and other tools."
|
||||
fi
|
||||
}
|
Binary file not shown.
@ -0,0 +1,136 @@
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
PYTHON_COMPAT=( python3_{8..10} )
|
||||
|
||||
inherit linux-info optfeature python-single-r1 qmake-utils systemd
|
||||
|
||||
DESCRIPTION="Personal full text search package"
|
||||
HOMEPAGE="https://www.lesbonscomptes.com/recoll/"
|
||||
SRC_URI="https://www.lesbonscomptes.com/recoll/${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-2+"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
|
||||
IUSE="camelcase chm +inotify qt5 session +spell systemd webengine"
|
||||
REQUIRED_USE="
|
||||
session? ( inotify )
|
||||
webengine? ( qt5 )
|
||||
${PYTHON_REQUIRED_USE}
|
||||
"
|
||||
|
||||
DEPEND="
|
||||
dev-libs/xapian:=
|
||||
sys-libs/zlib:=
|
||||
virtual/libiconv
|
||||
chm? (
|
||||
dev-libs/chmlib
|
||||
dev-python/pychm
|
||||
)
|
||||
qt5? (
|
||||
dev-qt/qtcore:5
|
||||
dev-qt/qtgui:5
|
||||
dev-qt/qtprintsupport:5
|
||||
dev-qt/qtwidgets:5
|
||||
webengine? ( dev-qt/qtwebengine:5[widgets] )
|
||||
)
|
||||
session? (
|
||||
inotify? (
|
||||
x11-libs/libSM
|
||||
x11-libs/libICE
|
||||
x11-libs/libX11
|
||||
)
|
||||
)
|
||||
spell? ( app-text/aspell )
|
||||
systemd? ( sys-apps/systemd )
|
||||
${PYTHON_DEPS}
|
||||
"
|
||||
|
||||
BDEPEND="
|
||||
qt5? ( dev-qt/linguist-tools:5 )
|
||||
"
|
||||
|
||||
RDEPEND="
|
||||
${DEPEND}
|
||||
app-arch/unzip
|
||||
"
|
||||
|
||||
pkg_pretend() {
|
||||
if has_version "<app-misc/recoll-1.20"; then
|
||||
elog "Installing ${PV} over an 1.19 index is possible,"
|
||||
elog "but there have been small changes in the way"
|
||||
elog "compound words are indexed. So it is best to reset"
|
||||
elog "the index. The best method to reset the index is to"
|
||||
elog "quit all recoll programs and delete the index directory"
|
||||
elog "rm -rf ~/.recoll/xapiandb, then start recoll or recollindex."
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_setup() {
|
||||
if use inotify; then
|
||||
local CONFIG_CHECK="~INOTIFY_USER"
|
||||
check_extra_config
|
||||
fi
|
||||
python-single-r1_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
python_fix_shebang filters
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
use qt5 && export QMAKE="$(qt5_get_bindir)/qmake"
|
||||
|
||||
local myeconfargs=(
|
||||
$(use_enable camelcase)
|
||||
$(use_enable chm python-chm)
|
||||
$(use_enable session x11mon)
|
||||
$(use_enable qt5 qtgui)
|
||||
$(use_enable webengine)
|
||||
$(use_with inotify)
|
||||
$(use_with spell aspell)
|
||||
$(use_with systemd)
|
||||
--with-system-unit-dir="$(systemd_get_systemunitdir)"
|
||||
--with-user-unit-dir="$(systemd_get_userunitdir)"
|
||||
--disable-webkit
|
||||
--without-fam
|
||||
--enable-recollq
|
||||
)
|
||||
|
||||
econf "${myeconfargs[@]}"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake STRIP="$(type -P true || die)" DESTDIR="${D}" install
|
||||
python_optimize
|
||||
|
||||
# html docs should be placed in /usr/share/doc/${PN}/html
|
||||
dodoc -r "${ED}"/usr/share/recoll/doc/.
|
||||
rm -r "${ED}/usr/share/recoll/doc" || die
|
||||
find "${D}" -name '*.la' -delete || die
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
optfeature "XML based documents support" "dev-libs/libxslt[python] dev-libs/libxml2[python]"
|
||||
optfeature "PDF files support" app-text/poppler
|
||||
optfeature "PDF files with OCR support" app-text/tesseract
|
||||
optfeature "MS Word files support" app-text/antiword
|
||||
optfeature "Wordperfect files support" "app-text/libwpd[tools]"
|
||||
optfeature "Lyx files support" app-office/lyx
|
||||
optfeature "GNU Info files support" sys-apps/texinfo
|
||||
optfeature "RAR archives support" dev-python/rarfile
|
||||
optfeature "7zip archives support" dev-python/pylzma
|
||||
optfeature "iCalendar files support" dev-python/icalendar
|
||||
optfeature "Postscript files support" app-text/pstotext
|
||||
optfeature "RTF files support" app-text/unrtf
|
||||
optfeature "TeX files support" dev-text/detex
|
||||
optfeature "DVI files support" virtual/tex-base
|
||||
optfeature "DJVU files support" app-text/djvu
|
||||
optfeature "tags in audio files support" media-libs/mutagen
|
||||
optfeature "tags in image files support" media-libs/exiftool
|
||||
optfeature "Midi karaoke files support" dev-python/chardet
|
||||
}
|
Binary file not shown.
@ -1,3 +1,4 @@
|
||||
DIST texstudio-4.0.2.tar.gz 88557508 BLAKE2B 51c7b80f01e6e657b901d197bae01e4314446690d8169da823d2bc0be13a1918c248976f81ec64c1ce57dc523fd1b3a1aa01709cce3d56de207a69d42c9cb512 SHA512 a2579788cac0ddf1edc7be2040ea13bc7aece5596a91cd8361a4de8c7fafaa86c95ef34e40f4a0bdf3b5cfc52c951af737138ccd26dbf8ac730ec64f8a38cfd7
|
||||
DIST texstudio-4.1.1.tar.gz 88564492 BLAKE2B d3a198b4d355ea0f07391b8ff816baacd03f6d9b3f21e69c4b2303ee9e754e9cf49e3bd7a22b5e1cdd74f463d81f95ffee8212ed89825d9a05b7aa5f13355610 SHA512 eb78bdd565c7cc1c84214975f2e7b6b01e2b00f136eb0890bca363fafe61a540caa9a360c10848b836315d3107775a7a289ea6f02480dbb8c5d17e2d09c0f481
|
||||
DIST texstudio-4.1.2.tar.gz 88666134 BLAKE2B 7c4310fd0d8fd446b8844f11c687f55818f7314a2e0614ac26b8023f8fa7e5eca1b60a3b3c0ce61ccb15d383b61c24280a67dd530a907b4b8e00a965b10230bf SHA512 0b88f82514462c363e6dcee899f3681883ce9db1bb21cbf9e5e657208338bba4a6cdb79feeaefb242350bc01b83851c5d2704a7d0e2888034070ef2588b77964
|
||||
DIST texstudio-4.2.0.tar.gz 88795988 BLAKE2B da849849d9ab57cb04de63f24e207b03b47393b876cd2762277e00f17d39b8c19a7508df567642faec8a5ac10400d2a6327343b40ab076f24f0bc8bb1b2ec683 SHA512 aff5ae645a3b3c362e0456270576770c5b39212902a37633b7279476cf6278ee292ef93c4a0c917b1d4d513aaf597d634f4cf7a469fd4e918f35ddbbe5cb1700
|
||||
|
@ -0,0 +1,78 @@
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit desktop qmake-utils xdg
|
||||
|
||||
MY_PV="${PV/_/}"
|
||||
DESCRIPTION="Free cross-platform LaTeX editor (fork from texmakerX)"
|
||||
HOMEPAGE="https://www.texstudio.org https://github.com/texstudio-org/texstudio"
|
||||
SRC_URI="https://github.com/texstudio-org/texstudio/archive/${MY_PV}.tar.gz -> ${P}.tar.gz"
|
||||
S="${WORKDIR}/${PN}-${MY_PV}"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
|
||||
IUSE="video"
|
||||
|
||||
DEPEND="
|
||||
app-text/hunspell:=
|
||||
app-text/poppler:=[qt5]
|
||||
>=dev-libs/quazip-0.7.3-r1:0=
|
||||
dev-qt/designer:5
|
||||
dev-qt/qtcore:5
|
||||
dev-qt/qtconcurrent:5
|
||||
dev-qt/qtdeclarative:5
|
||||
dev-qt/qtgui:5
|
||||
dev-qt/qtnetwork:5
|
||||
dev-qt/qtprintsupport:5
|
||||
dev-qt/qtsingleapplication[qt5(+),X]
|
||||
dev-qt/qtsvg:5
|
||||
dev-qt/qttest:5
|
||||
dev-qt/qtwidgets:5
|
||||
dev-qt/qtxml:5
|
||||
sys-libs/zlib
|
||||
x11-libs/libX11
|
||||
x11-libs/libXext
|
||||
video? ( >=media-libs/phonon-4.11.0 )
|
||||
"
|
||||
RDEPEND="
|
||||
${DEPEND}
|
||||
app-text/ghostscript-gpl
|
||||
app-text/psutils
|
||||
media-libs/netpbm
|
||||
virtual/latex-base
|
||||
"
|
||||
BDEPEND="virtual/pkgconfig"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${PN}-3.0.5-quazip1.patch" # TODO: upstream
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
xdg_src_prepare
|
||||
|
||||
# TODO: find hunspell quazip utilities/poppler-data qtsingleapplication -delete || die
|
||||
rm -r src/quazip || die
|
||||
|
||||
if use video; then
|
||||
sed "/^PHONON/s:$:true:g" -i ${PN}.pro || die
|
||||
fi
|
||||
|
||||
sed -e "/qtsingleapplication.pri/s/.*/CONFIG += qtsingleapplication/" \
|
||||
-i ${PN}.pro || die
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
eqmake5 USE_SYSTEM_HUNSPELL=1 USE_SYSTEM_QUAZIP=1 NO_TESTS=false
|
||||
}
|
||||
|
||||
src_install() {
|
||||
local i
|
||||
for i in 16x16 22x22 32x32 48x48 64x64 128x128; do
|
||||
newicon -s ${i} utilities/${PN}${i}.png ${PN}.png
|
||||
done
|
||||
|
||||
emake DESTDIR="${D}" INSTALL_ROOT="${ED}" install
|
||||
}
|
@ -0,0 +1,36 @@
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{8,9,10} )
|
||||
inherit python-single-r1
|
||||
|
||||
DESCRIPTION="Convert between document formats supported by LibreOffice"
|
||||
HOMEPAGE="http://dag.wiee.rs/home-made/unoconv/"
|
||||
SRC_URI="https://github.com/dagwieers/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
|
||||
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
|
||||
|
||||
RDEPEND="${PYTHON_DEPS}
|
||||
!app-text/odt2txt
|
||||
virtual/ooo
|
||||
"
|
||||
|
||||
PATCHES=( "${FILESDIR}/timeout.patch" )
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
python_fix_shebang .
|
||||
}
|
||||
|
||||
src_compile() { :; }
|
||||
|
||||
src_install() {
|
||||
emake -j1 doc-install install install-links DESTDIR="${D}"
|
||||
dodoc AUTHORS ChangeLog CHANGELOG.md README.adoc
|
||||
}
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -1,40 +0,0 @@
|
||||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit cmake-utils
|
||||
|
||||
if [[ ${PV} == *9999 ]]; then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="https://github.com/catchorg/Catch2.git"
|
||||
EGIT_BRANCH="Catch1.x"
|
||||
else
|
||||
MY_P=${PN^}-${PV}
|
||||
SRC_URI="https://github.com/catchorg/Catch2/archive/v${PV}.tar.gz -> ${MY_P}.tar.gz"
|
||||
KEYWORDS="amd64 ~arm ~arm64 ~ppc64 x86"
|
||||
|
||||
S="${WORKDIR}/${PN^}2-${PV}"
|
||||
fi
|
||||
|
||||
DESCRIPTION="Modern C++ header-only framework for unit-tests"
|
||||
HOMEPAGE="https://github.com/catchorg/Catch2"
|
||||
|
||||
LICENSE="Boost-1.0"
|
||||
SLOT="1"
|
||||
IUSE="test"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
RDEPEND="!<dev-cpp/catch-1.12.2:0"
|
||||
|
||||
src_configure() {
|
||||
local mycmakeargs=(
|
||||
-DNO_SELFTEST=$(usex !test)
|
||||
)
|
||||
cmake-utils_src_configure
|
||||
}
|
||||
|
||||
src_install() {
|
||||
cmake-utils_src_install
|
||||
dodoc -r docs/.
|
||||
}
|
@ -1,5 +1,6 @@
|
||||
DIST nlohmann_json-3.10.0.tar.gz 7006504 BLAKE2B 2ccb2e50a46a8579b6a848f6fee35ad1ff11a1491157bdf5d343133f24d4468ddfabc4fe4e9909b47011d52b3604566d5d7e275f0731c8d91efd1e1b9c545ef2 SHA512 1531780110260ea4cd8fbe79d860f1ea46fa8377d520669f938ddb5f8a4b11fe550fc7d2d978a281d5ddcc511447d160a2f68c06583672496c57c6672a4036a1
|
||||
DIST nlohmann_json-3.10.2.tar.gz 7054440 BLAKE2B e7da213fb75d528b1f5425822f5b598e882f232a67670aaae2d8f89c76e72ee23fa3344d1acfef2b0338a6a423d17b231b7e047ff064c984c2ec7783b721a22c SHA512 9a399dfc8aab19c9fc12470e8087895b1c05d48a9bcc731b483d8670c361cffb2adc3ccced822b7f17255e88387a441d619c4e1f1afeb702d1d035ad24fe22ed
|
||||
DIST nlohmann_json-3.10.4.tar.gz 7062443 BLAKE2B 7f526d12c4ce8148c874c76d280090ef69ae3adf817b63758bbcc23ff9476e119ede90bebc397b9bb84b54012f057e3e010d643c595b4699a8ecd437a5a3f913 SHA512 f78592db6218165cbc74c10bcba40366f1bfea84405b7ee25fe97a056d5b7a15aeeb956d93296673928dcbd6e26ffcfb152f885b4a44d5d55751396ccf090835
|
||||
DIST nlohmann_json-3.10.5.tar.gz 7021996 BLAKE2B d4219d2f3168341eb8bd8f84af364e53f6caae67aa080b1ca0479216a98ee0256d5436243273b3c12ccdca904b4b17dbb90cf445fc273424d7dab6d2b95632bc SHA512 4a9d6416f383e76bf95425fc02a4e12c605fcbcae910b704e354396a493454cf8a1ffbecba11f231e020ffd2842908df7e67dbc09f62d1202d40b6815c24cfd2
|
||||
DIST nlohmann_json-3.9.1.tar.gz 6882818 BLAKE2B 97276dc2345ac2070ac2d30d0a2e1953bb2f6ecde437eaed87dad46c108daa4b21c662a047e7d4e7c180179df9e7dfb71f545f3e42b2528201630d9093539090 SHA512 e0eb4727bea993af984f832e069d03a21219befae0f24ee49e67a1144cf1e8428dcf2e37f683aedb8d14118545d5087f2b7d822a576944cef3e590a12be51642
|
||||
DIST nlohmann_json-testdata-3.0.0.tar.gz 112348454 BLAKE2B f0a47b41805bf1426f612e9a82efea2a3e5b1c15740c1c531d859e60dc5daeb85209b4fe363fd8fb84e3bbf01a2578c74538ba3e769726494047979f5a4d468d SHA512 d9af8419b837c592ec7519cd5772651c761078a9c43cf2a309cee55c323aee0df0c233fb58a07d5ee2e77492ac8b16398de234b387eae037a60e3c9ba5b08891
|
||||
|
@ -0,0 +1,61 @@
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit cmake
|
||||
|
||||
# Check https://github.com/nlohmann/json/blob/develop/cmake/download_test_data.cmake to find test archive version
|
||||
TEST_VERSION="3.0.0"
|
||||
DESCRIPTION="JSON for Modern C++"
|
||||
HOMEPAGE="https://github.com/nlohmann/json https://nlohmann.github.io/json/"
|
||||
SRC_URI="
|
||||
https://github.com/nlohmann/json/archive/v${PV}.tar.gz -> ${P}.tar.gz
|
||||
test? ( https://github.com/nlohmann/json_test_data/archive/v${TEST_VERSION}.tar.gz -> ${PN}-testdata-${TEST_VERSION}.tar.gz )"
|
||||
S="${WORKDIR}/json-${PV}"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
|
||||
IUSE="doc test"
|
||||
# Need to report failing tests upstream
|
||||
# Tests only just added, large test suite, majority pass
|
||||
RESTRICT="test"
|
||||
|
||||
BDEPEND="doc? ( app-doc/doxygen )"
|
||||
|
||||
DOCS=( ChangeLog.md README.md )
|
||||
|
||||
src_configure() {
|
||||
# Tests are built by default so we can't group the test logic below
|
||||
local mycmakeargs=(
|
||||
-DJSON_MultipleHeaders=ON
|
||||
-DJSON_BuildTests=$(usex test)
|
||||
)
|
||||
|
||||
# Define test data directory here to avoid unused var QA warning, bug #747826
|
||||
use test && mycmakeargs+=( -DJSON_TestDataDirectory="${S}"/json_test_data )
|
||||
|
||||
cmake_src_configure
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
cmake_src_compile
|
||||
|
||||
if use doc; then
|
||||
emake -C doc
|
||||
HTML_DOCS=( doc/html/. )
|
||||
fi
|
||||
}
|
||||
|
||||
src_test() {
|
||||
cd "${BUILD_DIR}/test" || die
|
||||
|
||||
# Skip certain tests needing git per upstream
|
||||
# https://github.com/nlohmann/json/issues/2189
|
||||
local myctestargs=(
|
||||
"-LE git_required"
|
||||
)
|
||||
|
||||
cmake_src_test
|
||||
}
|
Binary file not shown.
@ -1,2 +1,2 @@
|
||||
DIST platformio-5.1.1.tar.gz 215305 BLAKE2B a7854138dec1b5b58c4f715dde98a273ed08c0da7fb305f89490944c210737c7c500731b21a5a9cb2bf3be3925f1666ef1084992b99df46d3ee83b449baaaa35 SHA512 f74ae3cb46065379b90c7ec3574d6ff0076085cd891bf41be2f38b6c6b59f87f4d013c1da6e4825f7d831ed17136e433385ab07c3f16b31342d5415192f87eff
|
||||
DIST platformio-5.2.3.tar.gz 252483 BLAKE2B f60b83f6647333d42b5d864ea468c8104dcd5a83085a6d52f456a21792d9c94641a60f698c2a606ddd7d7b3a588723831f35ac0d3027cb0ff8b8226dabe3b62c SHA512 c11f58a984b15a3363cd29bf9a0234c1ffc772cc153310d420037416bb8834cb2b74899ccb465d69db862cc088cfcb17dcbc7d919f690b6e836dec982d5b136b
|
||||
DIST platformio-5.2.4.tar.gz 254337 BLAKE2B e29b69a514b5f3bc6faefb15dd4e3195152d74b763961c35c33cd9e44bcd430920dc2f4d553244c2ac1bb83d745c006c67d2d52973fa07562c8b98d8e74a2ac3 SHA512 f90c1f5d9dcada99c610003b26ccaa4e08c214757d0c26daeea3cae006a02179aea1eb0bc656751913d0b2c4161195b1afe9ab0eaab5ad594ff986f6b56728f8
|
||||
|
@ -1,36 +0,0 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
PYTHON_COMPAT=( python3_{8,9} )
|
||||
DISTUTILS_SINGLE_IMPL=1
|
||||
|
||||
inherit distutils-r1
|
||||
|
||||
DESCRIPTION="An open source ecosystem for IoT development"
|
||||
HOMEPAGE="https://platformio.org/"
|
||||
SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
|
||||
RDEPEND="
|
||||
$(python_gen_cond_dep '
|
||||
<dev-python/bottle-0.13[${PYTHON_USEDEP}]
|
||||
>=dev-python/click-5[${PYTHON_USEDEP}]
|
||||
<dev-python/click-8[${PYTHON_USEDEP}]
|
||||
dev-python/colorama[${PYTHON_USEDEP}]
|
||||
>=dev-python/pyserial-3[${PYTHON_USEDEP}]
|
||||
<dev-python/pyserial-4[${PYTHON_USEDEP}]
|
||||
>=dev-python/requests-2.4[${PYTHON_USEDEP}]
|
||||
<dev-python/requests-3[${PYTHON_USEDEP}]
|
||||
>=dev-python/semantic_version-2.8.1[${PYTHON_USEDEP}]
|
||||
<dev-python/semantic_version-3[${PYTHON_USEDEP}]
|
||||
>=dev-python/tabulate-0.8.3[${PYTHON_USEDEP}]
|
||||
<dev-python/tabulate-1[${PYTHON_USEDEP}]
|
||||
>=dev-python/pyelftools-0.25[${PYTHON_USEDEP}]
|
||||
<dev-python/pyelftools-1[${PYTHON_USEDEP}]
|
||||
>=dev-python/marshmallow-2.20.5[${PYTHON_USEDEP}]
|
||||
')"
|
Binary file not shown.
@ -1,68 +0,0 @@
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
JAVA_PKG_IUSE="doc test"
|
||||
|
||||
inherit java-pkg-2 java-ant-2
|
||||
|
||||
MY_PN="${PN/-*/}"
|
||||
|
||||
DESCRIPTION="Fully conforming implementation of the JRC API (specified in JSR 170 and 283)"
|
||||
HOMEPAGE="http://jackrabbit.apache.org/"
|
||||
SRC_URI="mirror://apache/${MY_PN}/${PV}/${MY_PN}-${PV}-src.zip"
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
|
||||
|
||||
S="${WORKDIR}/${MY_PN}-${PV}/${PN}"
|
||||
|
||||
CDEPEND="dev-java/bndlib:0
|
||||
dev-java/slf4j-api:0
|
||||
dev-java/slf4j-nop:0
|
||||
dev-java/commons-httpclient:3
|
||||
java-virtuals/servlet-api:2.3"
|
||||
|
||||
DEPEND=">=virtual/jdk-1.8:*
|
||||
${CDEPEND}
|
||||
test? ( dev-java/ant-junit:0 )"
|
||||
|
||||
RDEPEND=">=virtual/jre-1.8:*
|
||||
${CDEPEND}"
|
||||
|
||||
BDEPEND="app-arch/unzip"
|
||||
|
||||
JAVA_ANT_REWRITE_CLASSPATH="true"
|
||||
EANT_GENTOO_CLASSPATH="
|
||||
bndlib
|
||||
commons-httpclient-3
|
||||
servlet-api-2.3
|
||||
slf4j-api
|
||||
"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${P}-OutputContextImplTest.java.patch
|
||||
"${FILESDIR}"/${P}-CSRFUtilTest.java.patch
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
cp "${FILESDIR}"/${P}-build.xml build.xml || die
|
||||
}
|
||||
|
||||
EANT_TEST_GENTOO_CLASSPATH="
|
||||
${EANT_GENTOO_CLASSPATH}
|
||||
slf4j-nop
|
||||
"
|
||||
src_test() {
|
||||
java-pkg-2_src_test
|
||||
}
|
||||
|
||||
src_install() {
|
||||
java-pkg_newjar target/${P}.jar
|
||||
|
||||
use doc && java-pkg_dojavadoc target/site/apidocs
|
||||
}
|
@ -0,0 +1,51 @@
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
JAVA_PKG_IUSE="doc source test"
|
||||
JAVA_TESTING_FRAMEWORKS="junit-4"
|
||||
|
||||
inherit java-pkg-2 java-pkg-simple
|
||||
|
||||
MY_PN="${PN/-*/}"
|
||||
|
||||
DESCRIPTION="Fully conforming implementation of the JRC API (specified in JSR 170 and 283)"
|
||||
HOMEPAGE="https://jackrabbit.apache.org/"
|
||||
SRC_URI="mirror://apache/${MY_PN}/${PV}/${MY_PN}-${PV}-src.zip"
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
|
||||
|
||||
S="${WORKDIR}/${MY_PN}-${PV}/${PN}"
|
||||
|
||||
CP_DEPEND="dev-java/bndlib:0
|
||||
dev-java/slf4j-api:0
|
||||
dev-java/slf4j-nop:0
|
||||
dev-java/commons-httpclient:3
|
||||
java-virtuals/servlet-api:2.3"
|
||||
|
||||
DEPEND=">=virtual/jdk-1.8:*
|
||||
${CP_DEPEND}"
|
||||
|
||||
RDEPEND=">=virtual/jre-1.8:*
|
||||
${CP_DEPEND}"
|
||||
|
||||
BDEPEND="app-arch/unzip"
|
||||
|
||||
JAVA_SRC_DIR="src/main/java"
|
||||
JAVA_RESOURCE_DIRS=( "src/main/resources" )
|
||||
|
||||
JAVA_TEST_GENTOO_CLASSPATH="junit-4"
|
||||
JAVA_TEST_SRC_DIR="src/test/java"
|
||||
JAVA_TEST_RESOURCE_DIRS=( "src/test/resources" )
|
||||
|
||||
src_test() {
|
||||
# Run only tests that would be executed by Maven as in ${S}/pom.xml:79
|
||||
JAVA_TEST_RUN_ONLY=$(find "${JAVA_TEST_SRC_DIR}" -name "*TestAll.java" \
|
||||
-exec realpath --relative-to="${JAVA_TEST_SRC_DIR}" {} \;)
|
||||
JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//.java}"
|
||||
JAVA_TEST_RUN_ONLY="${JAVA_TEST_RUN_ONLY//\//.}"
|
||||
java-pkg-simple_src_test
|
||||
}
|
@ -1 +1,2 @@
|
||||
DIST jna-4.2.2.tar.gz 58638853 BLAKE2B 3941202ad7839f748c65f1abf53a335f6de7959def06de27a30520457147af3f70f6de54d640718b8314f6e61ab61ee9b26c39812d5cb1f918b8ff714d6b902e SHA512 11ab524f87f6dc7fe3ac8eb0620f9ba392445147770304be7b7fa5cd49de8efed983ad30c16077bfa6419eaf1ff50311a3ded811a78fdcd09bc686ef93ad7f9f
|
||||
DIST jna-5.10.0.tar.gz 106258319 BLAKE2B f5605fd91bacc1e900e835494c27b0fdb4ba91b0c04bad1757133bed5938603264ce9fba89c5ce7e4644456b752b934f6e205d0131659e77bf0c58c2b44c61cd SHA512 93e1ab659a60d711557eb93620bcbd05f3dbe9c739b256cfb647d8ac2a4038d0bc638c614b58339b2875017ac18b219a4ddeb0d92e5ca25fef2e326bc14ae256
|
||||
|
@ -0,0 +1,55 @@
|
||||
diff --git a/build.xml b/build.xml
|
||||
index ed104c2..cd8895c 100644
|
||||
--- a/build.xml
|
||||
+++ b/build.xml
|
||||
@@ -182,9 +182,9 @@
|
||||
|
||||
<target name="-prepare-anttools">
|
||||
<subant antfile="build-ant-tools.xml" buildpath="${basedir}"></subant>
|
||||
- <taskdef name="BuildArmSoftFloatDetector" classname="com.sun.jna.BuildArmSoftFloatDetector" classpath="${build}/ant-tools:$lib/asm-8.0.1.jar" />
|
||||
- <taskdef name="CalcAndroidVersion" classname="com.sun.jna.ant.CalcAndroidVersion" classpath="${build}/ant-tools:lib/asm-8.0.1.jar" />
|
||||
- <taskdef name="ModuleGenerator" classname="com.sun.jna.ant.ModuleGenerator" classpath="${build}/ant-tools:lib/asm-8.0.1.jar" />
|
||||
+ <taskdef name="BuildArmSoftFloatDetector" classname="com.sun.jna.BuildArmSoftFloatDetector" classpath="${build}/ant-tools:${gentoo.classpath}" />
|
||||
+ <taskdef name="CalcAndroidVersion" classname="com.sun.jna.ant.CalcAndroidVersion" classpath="${build}/ant-tools:${gentoo.classpath}" />
|
||||
+ <taskdef name="ModuleGenerator" classname="com.sun.jna.ant.ModuleGenerator" classpath="${build}/ant-tools:${gentoo.classpath}" />
|
||||
</target>
|
||||
|
||||
<target name="-dynamic-properties" depends="-prepare-anttools">
|
||||
@@ -385,7 +385,9 @@
|
||||
<pathelement path="${build}/${jar}"/>
|
||||
<pathelement path="${test.classes}"/>
|
||||
<pathelement path="${build}/${testjar}"/>
|
||||
+ <!--
|
||||
<pathelement path="lib/clover.jar"/>
|
||||
+ -->
|
||||
<path refid="test.libs"/>
|
||||
</path>
|
||||
</target>
|
||||
@@ -1265,8 +1267,10 @@ cd ..
|
||||
<mkdir dir="${build}/jws"/>
|
||||
<copy todir="${build}/jws" file="${build}/${jar}"/>
|
||||
<copy todir="${build}/jws" file="${build}/${testjar}"/>
|
||||
+ <!--
|
||||
<copy todir="${build}/jws" file="lib/junit.jar"/>
|
||||
<copy todir="${build}/jws" file="lib/clover.jar"/>
|
||||
+ -->
|
||||
<jar jarfile="${build}/jws/jnidispatch.jar" createUnicodeExtraFields="never" encoding="UTF-8">
|
||||
<fileset dir="${build.native}" includes="*jnidispatch.*"/>
|
||||
</jar>
|
||||
diff --git a/contrib/platform/build.xml b/contrib/platform/build.xml
|
||||
index 47fa8ed..a623ce6 100644
|
||||
--- a/contrib/platform/build.xml
|
||||
+++ b/contrib/platform/build.xml
|
||||
@@ -115,9 +115,9 @@
|
||||
|
||||
<target name="-prepare-anttools">
|
||||
<subant antfile="build-ant-tools.xml" buildpath="${basedir}/../../"></subant>
|
||||
- <taskdef name="BuildArmSoftFloatDetector" classname="com.sun.jna.BuildArmSoftFloatDetector" classpath="${basedir}/../../build/ant-tools:${basedir}/../../lib/asm-8.0.1.jar" />
|
||||
- <taskdef name="CalcAndroidVersion" classname="com.sun.jna.ant.CalcAndroidVersion" classpath="${basedir}/../../build/ant-tools:${basedir}/../../lib/asm-8.0.1.jar" />
|
||||
- <taskdef name="ModuleGenerator" classname="com.sun.jna.ant.ModuleGenerator" classpath="${basedir}/../../build/ant-tools:${basedir}/../../lib/asm-8.0.1.jar" />
|
||||
+ <taskdef name="BuildArmSoftFloatDetector" classname="com.sun.jna.BuildArmSoftFloatDetector" classpath="${basedir}/../../build/ant-tools:${gentoo.classpath}" />
|
||||
+ <taskdef name="CalcAndroidVersion" classname="com.sun.jna.ant.CalcAndroidVersion" classpath="${basedir}/../../build/ant-tools:${gentoo.classpath}" />
|
||||
+ <taskdef name="ModuleGenerator" classname="com.sun.jna.ant.ModuleGenerator" classpath="${basedir}/../../build/ant-tools:${gentoo.classpath}" />
|
||||
</target>
|
||||
|
||||
<macrodef name="build-manifest">
|
@ -0,0 +1,27 @@
|
||||
From 2b50e2296c9c9961fd168abe285f773aecd6437a Mon Sep 17 00:00:00 2001
|
||||
From: Yuan Liao <liaoyuan@gmail.com>
|
||||
Date: Thu, 6 Jan 2022 12:21:22 -0800
|
||||
Subject: [PATCH] Skip execution of test classes without any tests
|
||||
|
||||
Signed-off-by: Yuan Liao <liaoyuan@gmail.com>
|
||||
---
|
||||
build.xml | 3 +++
|
||||
1 file changed, 3 insertions(+)
|
||||
|
||||
diff --git a/build.xml b/build.xml
|
||||
index ed104c2..9fb15ae 100644
|
||||
--- a/build.xml
|
||||
+++ b/build.xml
|
||||
@@ -1388,6 +1388,9 @@ cd ..
|
||||
<fileset dir="${test.src}" excludes="${tests.exclude-patterns}">
|
||||
<patternset includes="${tests.include}"/>
|
||||
<include name="${tests.platform}"/>
|
||||
+ <exclude name="com/sun/jna/DefaultMethodInvocationTest.java"/>
|
||||
+ <exclude name="com/sun/jna/ELFAnalyserTest.java"/>
|
||||
+ <exclude name="com/sun/jna/PrematureGCTest.java"/>
|
||||
<exclude name="${tests.exclude}"/>
|
||||
</fileset>
|
||||
</batchtest>
|
||||
--
|
||||
2.34.1
|
||||
|
@ -0,0 +1,100 @@
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
JAVA_PKG_IUSE="doc source test"
|
||||
MAVEN_ID="net.java.dev.jna:jna:5.10.0"
|
||||
|
||||
inherit java-pkg-2 java-ant-2 toolchain-funcs
|
||||
|
||||
DESCRIPTION="Java Native Access"
|
||||
HOMEPAGE="https://github.com/java-native-access/jna"
|
||||
SRC_URI="https://github.com/java-native-access/jna/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
|
||||
|
||||
LICENSE="|| ( Apache-2.0 LGPL-2.1+ )"
|
||||
SLOT="4"
|
||||
KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
|
||||
|
||||
BDEPEND="
|
||||
virtual/pkgconfig
|
||||
"
|
||||
|
||||
CDEPEND="
|
||||
>=dev-libs/libffi-3.4:=
|
||||
"
|
||||
|
||||
DEPEND="
|
||||
>=virtual/jdk-1.8:*
|
||||
dev-java/animal-sniffer-annotations:0
|
||||
dev-java/ant-core:0
|
||||
dev-java/asm:9
|
||||
test? (
|
||||
dev-java/ant-junit:0
|
||||
dev-java/junit:4
|
||||
dev-java/reflections:0
|
||||
)
|
||||
${CDEPEND}
|
||||
x11-libs/libXt
|
||||
"
|
||||
|
||||
RDEPEND="
|
||||
>=virtual/jre-1.8:*
|
||||
${CDEPEND}
|
||||
"
|
||||
|
||||
DOCS=( README.md CHANGES.md OTHERS TODO )
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${PV}-build.xml.patch"
|
||||
"${FILESDIR}/${PV}-tests-exclude.patch"
|
||||
"${FILESDIR}/4.2.2-makefile-flags.patch"
|
||||
)
|
||||
|
||||
JAVA_ANT_REWRITE_CLASSPATH="true"
|
||||
JAVA_PKG_BSFIX_NAME="build.xml build-ant-tools.xml"
|
||||
EANT_BUILD_TARGET="jar contrib-jars"
|
||||
EANT_EXTRA_ARGS="-Dbuild-native=true -Dcompatibility=1.8 -Ddynlink.native=true"
|
||||
EANT_TEST_EXTRA_ARGS="-Djava.io.tmpdir=${T}"
|
||||
EANT_TEST_GENTOO_CLASSPATH="animal-sniffer-annotations,reflections"
|
||||
|
||||
pkg_setup() {
|
||||
java-pkg-2_pkg_setup
|
||||
|
||||
EANT_GENTOO_CLASSPATH_EXTRA="$(java-pkg_getjars --build-only \
|
||||
animal-sniffer-annotations,ant-core,asm-9)"
|
||||
|
||||
# Any spaces in paths returned by toolchain-funcs and options like MAKEOPTS
|
||||
# could cause trouble in EANT_EXTRA_ARGS when Java eclasses process the
|
||||
# variable's value, so define them in ANT_OPTS instead
|
||||
ANT_OPTS="-DCC='$(tc-getCC)'"
|
||||
# Parallel build does not respect dependency relationships between objects
|
||||
ANT_OPTS+=" -DEXTRA_MAKE_OPTS='${MAKEOPTS} -j1'"
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
# Eliminate build.xml's dependency on bundled native JARs
|
||||
sed -i -e '/zipfileset src="${lib.native}/,+2d' build.xml ||
|
||||
die "Failed to delete lines referencing bundled JARs in build.xml"
|
||||
|
||||
# Clean up bundled JARs and libffi
|
||||
java-pkg_clean
|
||||
rm -r native/libffi || die "Failed to remove bundled libffi"
|
||||
|
||||
java-pkg-2_src_prepare
|
||||
}
|
||||
|
||||
src_test() {
|
||||
java-pkg-2_src_test
|
||||
}
|
||||
|
||||
src_install() {
|
||||
java-pkg_newjar "build/${PN}-min.jar"
|
||||
java-pkg_dojar "contrib/platform/dist/${PN}-platform.jar"
|
||||
java-pkg_doso build/native-*/libjnidispatch.so
|
||||
einstalldocs
|
||||
|
||||
use source && java-pkg_dosrc src/*
|
||||
use doc && java-pkg_dojavadoc doc/javadoc
|
||||
}
|
@ -0,0 +1,85 @@
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
# Skeleton command:
|
||||
# java-ebuilder --generate-ebuild --workdir . --pom pom.xml --download-uri https://github.com/netty/netty/archive/refs/tags/netty-4.0.36.Final.tar.gz --slot 0 --keywords "~amd64 ~arm64 ~ppc64 ~x86" --ebuild netty-buffer-4.0.36.ebuild
|
||||
|
||||
EAPI=8
|
||||
|
||||
JAVA_PKG_IUSE="doc source test"
|
||||
MAVEN_ID="io.netty:netty-buffer:4.0.36.Final"
|
||||
JAVA_TESTING_FRAMEWORKS="junit-4"
|
||||
|
||||
inherit check-reqs java-pkg-2 java-pkg-simple
|
||||
|
||||
DESCRIPTION="Async event-driven framework for high performance network applications"
|
||||
HOMEPAGE="https://netty.io/"
|
||||
SRC_URI="https://github.com/netty/netty/archive/refs/tags/netty-${PV}.Final.tar.gz"
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
|
||||
|
||||
# Common dependencies
|
||||
# POM: pom.xml
|
||||
# io.netty:netty-common:4.0.36.Final -> !!!groupId-not-found!!!
|
||||
|
||||
CP_DEPEND="dev-java/netty-common:0"
|
||||
|
||||
# Compile dependencies
|
||||
# POM: pom.xml
|
||||
# test? ch.qos.logback:logback-classic:1.0.13 -> !!!groupId-not-found!!!
|
||||
# test? io.netty:netty-build:22 -> !!!groupId-not-found!!!
|
||||
# test? junit:junit:4.12 -> >=dev-java/junit-4.13.2:4
|
||||
# test? org.easymock:easymock:3.2 -> >=dev-java/easymock-3.3.1:3.2
|
||||
# test? org.easymock:easymockclassextension:3.2 -> !!!artifactId-not-found!!!
|
||||
# test? org.hamcrest:hamcrest-library:1.3 -> >=dev-java/hamcrest-library-1.3:1.3
|
||||
# test? org.javassist:javassist:3.19.0-GA -> !!!groupId-not-found!!!
|
||||
# test? org.jmock:jmock-junit4:2.6.0 -> !!!groupId-not-found!!!
|
||||
# test? org.mockito:mockito-core:1.10.8 -> !!!suitable-mavenVersion-not-found!!!
|
||||
|
||||
DEPEND="${CP_DEPEND}
|
||||
>=virtual/jdk-1.8:*
|
||||
test? (
|
||||
dev-java/easymock:3.2
|
||||
dev-java/hamcrest-library:1.3
|
||||
)"
|
||||
|
||||
RDEPEND="${CP_DEPEND}
|
||||
>=virtual/jre-1.8:*"
|
||||
|
||||
DOCS=( ../{CONTRIBUTING,README}.md ../{LICENSE,NOTICE}.txt )
|
||||
|
||||
S="${WORKDIR}/netty-netty-${PV}.Final/buffer/"
|
||||
|
||||
JAVA_SRC_DIR="src/main/java"
|
||||
|
||||
JAVA_TEST_GENTOO_CLASSPATH="junit-4,easymock-3.2,hamcrest-library-1.3"
|
||||
JAVA_TEST_SRC_DIR="src/test/java"
|
||||
|
||||
check_env() {
|
||||
if use test; then
|
||||
# this is needed only for tests
|
||||
# https://bugs.gentoo.org/829822
|
||||
CHECKREQS_MEMORY="2048M"
|
||||
check-reqs_pkg_pretend
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_pretend() {
|
||||
check_env
|
||||
}
|
||||
|
||||
pkg_setup() {
|
||||
check_env
|
||||
}
|
||||
|
||||
src_test() {
|
||||
JAVA_TEST_EXTRA_ARGS+=" -Xmx${CHECKREQS_MEMORY}"
|
||||
java-pkg-simple_src_test
|
||||
}
|
||||
|
||||
src_install() {
|
||||
default # https://bugs.gentoo.org/789582
|
||||
java-pkg-simple_src_install
|
||||
}
|
@ -1,9 +1,7 @@
|
||||
DIST apache-tomcat-10.0.13-src.tar.gz 6070494 BLAKE2B f588dc6fac49b07dcdd70958ed477cc9e5e4f5c76f56d41e4baf654b8b7e4be80432b3a4510fdb030855940d3e93045c0f54adde277bec2fe1152b43a96c6f85 SHA512 91993c9236af381cc7ae6f96126d0fba30c2d082ad88b816b151fb847373d93d527de5784dd1e2295adb6cfbb5fd591e8a9cab0c1b1ef96ba54b8b3ec0f91e9e
|
||||
DIST apache-tomcat-10.0.14-src.tar.gz 6074341 BLAKE2B e6607773aebb5b5279720cbcf667e9f82d752833a323dd611d411bcb48d6b0f42a98b9120d2bf29bb53e563f7f421194e92a41c89dadff76db2f6aaa171af64b SHA512 13614a410ecb7d5d1e4e6cc0e5dab9fe21809a8a70b3f42d5b0f75a2006d098857395858cdfacbe84349f73c1ce7eecca59c1bdeac809f434df8ae3f4cff46c1
|
||||
DIST apache-tomcat-4.1.40-src.tar.gz 3709719 BLAKE2B f7ca82052c1148a5c384fcbc3871beeddccdb4cfed05ba176581ebb50f52ba867bed8dbc500e97b7348a3a87b9693fb73eb81209df4f31e8c1ced7e30a6af30b SHA512 c455fa3da9da8fcbf1d54ae5dce808f8a4520ccafd627a6b2d1b003c37e8395d8b2a55d5471bf6c196549d082715862b3b8958aef88613293a07fc0160aa5c6e
|
||||
DIST apache-tomcat-5.5.36-src.tar.gz 3743113 BLAKE2B dbfcfd123a23b0ceb9f1fdd936e42324ea8b10cf327a1d0abf1703006535859c7122690a08b5ec27b86b526cc7709a7199b4f35f123538ff11f23f3b489358f3 SHA512 845636b5b992fbbb7d657d192afbab1e6a924bfd0c71b025cf22776eb4527d92d63f9b3f33475d4349a0df4cebd984ba3776eedd7482b820abdea909e90a97b7
|
||||
DIST apache-tomcat-6.0.53-src.tar.gz 3522914 BLAKE2B 054b097c16861abaa8bdbeba713b49bc1dfcff573bb3f4bd0ff5807c33a2a0fb991af618f6e11e5b3ce3fa55c589fc6569342cab5d5a00349c79bc7061d81e40 SHA512 915a0a18f5c2883625c9441eed6465973eff4f6bf41e08e925c7edaea89ef8f6ee9476d3e06fa38228d4bcb4decaf53e3a7bdb7ec7e899e6250db3e12a9f5f2c
|
||||
DIST apache-tomcat-7.0.109-src.tar.gz 5314401 BLAKE2B 56583caea6879bf8ca5cc02a886de3d7af413032f88d367653e709dc1c8f590e78620c788317bbff4b6e65dd3e242cc26863164ac8e7c87334a22636f3ed0703 SHA512 ecf9c0bee0e3e1aa24f299fe633705c5a2f6aa264d9e4968cfc96aa5d0a425c2b0ff07765a8b6c67221766733bdfaed6e6c6377a8d0870d889e7063ce90a46ce
|
||||
DIST apache-tomcat-8.5.73-src.tar.gz 5973026 BLAKE2B d3d275b7462a3bd2ce9ce03869e09e42ec0da064eb764cf8168b8d003431d075952f15c083b5486e006629ec1f9dade154b0fceb20f2584168b36599c3c5485b SHA512 6190d78e2dd5d478131443807e464821a337c5c6c24ee91953fece377ad1c758339ce1588a7a5e90443ababac239b45e4aaa0422d68cba988d7c3da5fe95d1c6
|
||||
DIST apache-tomcat-9.0.55-src.tar.gz 6136319 BLAKE2B ac49abc3198bcc2fed1310839d0c9a30b5aefb7c0a679c3bb69f7aadd82b32b7d523cc24bdd55ba9edc363e181fc93c323944ebd5801ed2b9d38e8d1b3486d4f SHA512 abfb1824387045fc6b5a5077179149e6c348c0deae933e8766c60cbf92466f5e8883ebe4cc260c23ece6d3975ab2e25f7cdde58f9dd83dfdd22cab33c967b28c
|
||||
DIST apache-tomcat-9.0.56-src.tar.gz 6138381 BLAKE2B 5e49287531fcb9bcb80ba124ed83fc3acbf3406b53424c3be5c2b3fb04da86785ba9e3ef89283c3ebb88bc8aadf8211328608edf068f0d7733c2f0ec0401d7ce SHA512 43332241fda149f9da107496cc6b812e38544c9043c567e3fe11ee01b5abfbd02b6a377c3f6090902048bd9dc67746cdc65d59f03bd0de68c05e0955bfe018c5
|
||||
|
@ -1,98 +0,0 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
JAVA_PKG_IUSE="source"
|
||||
|
||||
inherit java-pkg-2 java-pkg-simple
|
||||
|
||||
MY_A="apache-${PN}-${PV}-src"
|
||||
MY_P="${MY_A/-servlet-api/}"
|
||||
DESCRIPTION="Tomcat's Servlet API 5.0/JSP API 3.0/EL API 4.0 implementation"
|
||||
HOMEPAGE="https://tomcat.apache.org/"
|
||||
SRC_URI="mirror://apache/tomcat/tomcat-10/v${PV}/src/${MY_P}.tar.gz"
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="5.0"
|
||||
KEYWORDS="amd64 ~arm arm64 x86 ~amd64-linux ~x86-linux ~x64-solaris ~x86-solaris"
|
||||
IUSE=""
|
||||
|
||||
DEPEND=">=virtual/jdk-1.8:*"
|
||||
RDEPEND=">=virtual/jre-1.8:*"
|
||||
|
||||
S="${WORKDIR}/${MY_P}/"
|
||||
|
||||
JAVA_TEST_SRC_DIR="src/test"
|
||||
|
||||
SERVLET_API_JAR="servlet-api.jar"
|
||||
SERVLET_API_SRC="src/main/servlet-api"
|
||||
SERVLET_API_RESOURCES="src/resources/servlet-api"
|
||||
EL_API_JAR="el-api.jar"
|
||||
EL_API_SRC="src/main/el-api"
|
||||
EL_API_RESOURCES="src/resources/el-api"
|
||||
JSP_API_JAR="jsp-api.jar"
|
||||
JSP_API_SRC="src/main/jsp-api"
|
||||
JSP_API_RESOURCES="src/resources/jsp-api"
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
# The sources and also resources are mixed together so we first give it a structure to make it easier to compile and package
|
||||
mkdir -p ${SERVLET_API_SRC} ${SERVLET_API_RESOURCES} \
|
||||
${EL_API_SRC} ${EL_API_RESOURCES} \
|
||||
${JSP_API_SRC}/jakarta/servlet ${JSP_API_RESOURCES} \
|
||||
${JAVA_TEST_SRC_DIR} || die "Failed to create source directory"
|
||||
|
||||
pushd java || die "Failed to cd to java dir"
|
||||
|
||||
cp --parents -R jakarta/servlet "${S}/${SERVLET_API_SRC}/" || die "Failed to copy servlet-api sources"
|
||||
mv "${S}/${SERVLET_API_SRC}/jakarta/servlet/jsp" "${S}/${JSP_API_SRC}/jakarta/servlet" || die "Failed to copy jsp-api sources"
|
||||
cp --parents -R jakarta/el "${S}/${EL_API_SRC}/" || die "Failed to copy el-api sources"
|
||||
|
||||
popd
|
||||
|
||||
for file in $(find src -type f | grep -vE "\.java$"); do
|
||||
target_dir=$(dirname $file | sed "s%src/main/%src/resources/%g")
|
||||
mkdir -p ${target_dir} || die "Failed to create resource directory"
|
||||
mv $file ${target_dir} || die "Failed to move resource file"
|
||||
done
|
||||
|
||||
mv test/jakarta ${JAVA_TEST_SRC_DIR} || die "Failed to copy test sources"
|
||||
|
||||
java-pkg-2_src_prepare
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
JAVA_SRC_DIR="${SERVLET_API_SRC}"
|
||||
JAVA_RESOURCE_DIRS="${SERVLET_API_RESOURCES}"
|
||||
JAVA_JAR_FILENAME="${SERVLET_API_JAR}"
|
||||
java-pkg-simple_src_compile
|
||||
rm -fr target || die "Failed to remove compiled files"
|
||||
|
||||
JAVA_SRC_DIR="${EL_API_SRC}"
|
||||
JAVA_RESOURCE_DIRS="${EL_API_RESOURCES}"
|
||||
JAVA_JAR_FILENAME="${EL_API_JAR}"
|
||||
java-pkg-simple_src_compile
|
||||
rm -fr target || die "Failed to remove compiled files"
|
||||
|
||||
JAVA_SRC_DIR="${JSP_API_SRC}"
|
||||
JAVA_RESOURCE_DIRS="${JSP_API_RESOURCES}"
|
||||
JAVA_JAR_FILENAME="${JSP_API_JAR}"
|
||||
JAVA_GENTOO_CLASSPATH_EXTRA="servlet-api.jar:el-api.jar"
|
||||
java-pkg-simple_src_compile
|
||||
}
|
||||
|
||||
src_install() {
|
||||
JAVA_SRC_DIR="${SERVLET_API_SRC}"
|
||||
JAVA_JAR_FILENAME="${SERVLET_API_JAR}"
|
||||
java-pkg-simple_src_install
|
||||
|
||||
JAVA_SRC_DIR="${EL_API_SRC}"
|
||||
JAVA_JAR_FILENAME="${EL_API_JAR}"
|
||||
java-pkg-simple_src_install
|
||||
|
||||
JAVA_SRC_DIR="${JSP_API_SRC}"
|
||||
JAVA_JAR_FILENAME="${JSP_API_JAR}"
|
||||
java-pkg-simple_src_install
|
||||
}
|
@ -1,99 +0,0 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
JAVA_PKG_IUSE="source"
|
||||
|
||||
inherit java-pkg-2 java-pkg-simple
|
||||
|
||||
MY_A="apache-${PN}-${PV}-src"
|
||||
MY_P="${MY_A/-servlet-api/}"
|
||||
DESCRIPTION="Tomcat's Servlet API 4.0/JSP API 2.3/EL API 3.0 implementation"
|
||||
HOMEPAGE="https://tomcat.apache.org/"
|
||||
SRC_URI="mirror://apache/tomcat/tomcat-9/v${PV}/src/${MY_P}.tar.gz"
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="4.0"
|
||||
KEYWORDS="amd64 ~arm arm64 ppc64 x86 ~amd64-linux ~x86-linux ~x64-solaris ~x86-solaris"
|
||||
IUSE=""
|
||||
|
||||
DEPEND=">=virtual/jdk-1.8:*"
|
||||
RDEPEND=">=virtual/jre-1.8:*"
|
||||
|
||||
S="${WORKDIR}/${MY_P}/"
|
||||
|
||||
JAVA_TEST_SRC_DIR="src/test"
|
||||
|
||||
SERVLET_API_JAR="servlet-api.jar"
|
||||
SERVLET_API_SRC="src/main/servlet-api"
|
||||
SERVLET_API_RESOURCES="src/resources/servlet-api"
|
||||
EL_API_JAR="el-api.jar"
|
||||
EL_API_SRC="src/main/el-api"
|
||||
EL_API_RESOURCES="src/resources/el-api"
|
||||
JSP_API_JAR="jsp-api.jar"
|
||||
JSP_API_SRC="src/main/jsp-api"
|
||||
JSP_API_RESOURCES="src/resources/jsp-api"
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
# The sources and also resources are mixed together so we first give it a structure to make it easier to compila and package
|
||||
|
||||
mkdir -p ${SERVLET_API_SRC} ${SERVLET_API_RESOURCES} \
|
||||
${EL_API_SRC} ${EL_API_RESOURCES} \
|
||||
${JSP_API_SRC}/javax/servlet ${JSP_API_RESOURCES} \
|
||||
${JAVA_TEST_SRC_DIR} || die "Failed to create source directory"
|
||||
|
||||
pushd java || die "Failed to cd to java dir"
|
||||
|
||||
cp --parents -R javax/servlet "${S}/${SERVLET_API_SRC}/" || die "Failed to copy servlet-api sources"
|
||||
mv "${S}/${SERVLET_API_SRC}/javax/servlet/jsp" "${S}/${JSP_API_SRC}/javax/servlet" || die "Failed to copy jsp-api sources"
|
||||
cp --parents -R javax/el "${S}/${EL_API_SRC}/" || die "Failed to copy el-api sources"
|
||||
|
||||
popd
|
||||
|
||||
for file in $(find src -type f | grep -vE "\.java$"); do
|
||||
target_dir=$(dirname $file | sed "s%src/main/%src/resources/%g")
|
||||
mkdir -p ${target_dir} || die "Failed to create resource directory"
|
||||
mv $file ${target_dir} || die "Failed to move resource file"
|
||||
done
|
||||
|
||||
mv test/javax ${JAVA_TEST_SRC_DIR} || die "Failed to copy test sources"
|
||||
|
||||
java-pkg-2_src_prepare
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
JAVA_SRC_DIR="${SERVLET_API_SRC}"
|
||||
JAVA_RESOURCE_DIRS="${SERVLET_API_RESOURCES}"
|
||||
JAVA_JAR_FILENAME="${SERVLET_API_JAR}"
|
||||
java-pkg-simple_src_compile
|
||||
rm -fr target || die "Failed to remove compiled files"
|
||||
|
||||
JAVA_SRC_DIR="${EL_API_SRC}"
|
||||
JAVA_RESOURCE_DIRS="${EL_API_RESOURCES}"
|
||||
JAVA_JAR_FILENAME="${EL_API_JAR}"
|
||||
java-pkg-simple_src_compile
|
||||
rm -fr target || die "Failed to remove compiled files"
|
||||
|
||||
JAVA_SRC_DIR="${JSP_API_SRC}"
|
||||
JAVA_RESOURCE_DIRS="${JSP_API_RESOURCES}"
|
||||
JAVA_JAR_FILENAME="${JSP_API_JAR}"
|
||||
JAVA_GENTOO_CLASSPATH_EXTRA="servlet-api.jar:el-api.jar"
|
||||
java-pkg-simple_src_compile
|
||||
}
|
||||
|
||||
src_install() {
|
||||
JAVA_SRC_DIR="${SERVLET_API_SRC}"
|
||||
JAVA_JAR_FILENAME="${SERVLET_API_JAR}"
|
||||
java-pkg-simple_src_install
|
||||
|
||||
JAVA_SRC_DIR="${EL_API_SRC}"
|
||||
JAVA_JAR_FILENAME="${EL_API_JAR}"
|
||||
java-pkg-simple_src_install
|
||||
|
||||
JAVA_SRC_DIR="${JSP_API_SRC}"
|
||||
JAVA_JAR_FILENAME="${JSP_API_JAR}"
|
||||
java-pkg-simple_src_install
|
||||
}
|
Binary file not shown.
@ -1 +1,2 @@
|
||||
DIST go1.17.5.src.tar.gz 22186577 BLAKE2B fe6cbfce1a8e7556e7f690f34eb1cdf761f0f74b2ff3781bdc3c6ce2efa4fd00229268ee704d6c4a84f4b37b3deae7c65bd12628bf60ec32c2d8c32b13d99de1 SHA512 6c833455fe79476c29a0565ae3b5ede452abb75689d52cbaa524743549f6f12681b6b5035dc4048387bd738c15b7cd8bdc4c875d54232ca2343c7404a4326884
|
||||
DIST go1.17.6.src.tar.gz 22191372 BLAKE2B d6b52e23cea61709a682f06aa21db345980a7eb223b08d539721429227bb22d365bde5901e18f289eede0872e7bf9a5db4c2736d847202ded0f5f7351dcf035a SHA512 59e5471d33e72208a3ca1ddf6c13aeb2b95a3291c0491571597197a260fb8cb74241c7bb09b44129c1e39f857ce4279f416c139b3ab2d7aded10002beb222ee2
|
||||
|
@ -0,0 +1,197 @@
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
export CBUILD=${CBUILD:-${CHOST}}
|
||||
export CTARGET=${CTARGET:-${CHOST}}
|
||||
|
||||
MY_PV=${PV/_/}
|
||||
|
||||
inherit toolchain-funcs
|
||||
|
||||
case ${PV} in
|
||||
*9999*)
|
||||
EGIT_REPO_URI="https://github.com/golang/go.git"
|
||||
inherit git-r3
|
||||
;;
|
||||
*)
|
||||
SRC_URI="https://storage.googleapis.com/golang/go${MY_PV}.src.tar.gz "
|
||||
S="${WORKDIR}"/go
|
||||
case ${PV} in
|
||||
*_beta*|*_rc*) ;;
|
||||
*)
|
||||
KEYWORDS="-* ~amd64 ~arm ~arm64 ~ppc64 ~riscv ~s390 ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris"
|
||||
;;
|
||||
esac
|
||||
esac
|
||||
|
||||
DESCRIPTION="A concurrent garbage collected and typesafe programming language"
|
||||
HOMEPAGE="https://go.dev"
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0/${PV}"
|
||||
IUSE="cpu_flags_x86_sse2"
|
||||
|
||||
BDEPEND="|| (
|
||||
dev-lang/go
|
||||
dev-lang/go-bootstrap )"
|
||||
RDEPEND="!<dev-go/go-tools-0_pre20150902"
|
||||
|
||||
# the *.syso files have writable/executable stacks
|
||||
QA_EXECSTACK='*.syso'
|
||||
|
||||
# Do not complain about CFLAGS, etc, since Go doesn't use them.
|
||||
QA_FLAGS_IGNORED='.*'
|
||||
|
||||
# The tools in /usr/lib/go should not cause the multilib-strict check to fail.
|
||||
QA_MULTILIB_PATHS="usr/lib/go/pkg/tool/.*/.*"
|
||||
|
||||
# This package triggers "unrecognized elf file(s)" notices on riscv.
|
||||
# https://bugs.gentoo.org/794046
|
||||
QA_PREBUILT='.*'
|
||||
|
||||
# Do not strip this package. Stripping is unsupported upstream and may
|
||||
# fail.
|
||||
RESTRICT+=" strip"
|
||||
|
||||
DOCS=(
|
||||
AUTHORS
|
||||
CONTRIBUTING.md
|
||||
CONTRIBUTORS
|
||||
PATENTS
|
||||
README.md
|
||||
)
|
||||
|
||||
go_arch() {
|
||||
# By chance most portage arch names match Go
|
||||
local portage_arch=$(tc-arch $@)
|
||||
case "${portage_arch}" in
|
||||
x86) echo 386;;
|
||||
x64-*) echo amd64;;
|
||||
ppc64) [[ $(tc-endian $@) = big ]] && echo ppc64 || echo ppc64le ;;
|
||||
riscv) echo riscv64 ;;
|
||||
s390) echo s390x ;;
|
||||
*) echo "${portage_arch}";;
|
||||
esac
|
||||
}
|
||||
|
||||
go_arm() {
|
||||
case "${1:-${CHOST}}" in
|
||||
armv5*) echo 5;;
|
||||
armv6*) echo 6;;
|
||||
armv7*) echo 7;;
|
||||
*)
|
||||
die "unknown GOARM for ${1:-${CHOST}}"
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
go_os() {
|
||||
case "${1:-${CHOST}}" in
|
||||
*-linux*) echo linux;;
|
||||
*-darwin*) echo darwin;;
|
||||
*-freebsd*) echo freebsd;;
|
||||
*-netbsd*) echo netbsd;;
|
||||
*-openbsd*) echo openbsd;;
|
||||
*-solaris*) echo solaris;;
|
||||
*-cygwin*|*-interix*|*-winnt*)
|
||||
echo windows
|
||||
;;
|
||||
*)
|
||||
die "unknown GOOS for ${1:-${CHOST}}"
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
go_tuple() {
|
||||
echo "$(go_os $@)_$(go_arch $@)"
|
||||
}
|
||||
|
||||
go_cross_compile() {
|
||||
[[ $(go_tuple ${CBUILD}) != $(go_tuple) ]]
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
if has_version -b dev-lang/go; then
|
||||
export GOROOT_BOOTSTRAP="${BROOT}/usr/lib/go"
|
||||
elif has_version -b dev-lang/go-bootstrap; then
|
||||
export GOROOT_BOOTSTRAP="${BROOT}/usr/lib/go-bootstrap"
|
||||
else
|
||||
eerror "Go cannot be built without go or go-bootstrap installed"
|
||||
die "Should not be here, please report a bug"
|
||||
fi
|
||||
|
||||
export GOROOT_FINAL="${EPREFIX}"/usr/lib/go
|
||||
export GOROOT="${PWD}"
|
||||
export GOBIN="${GOROOT}/bin"
|
||||
|
||||
# Go's build script does not use BUILD/HOST/TARGET consistently. :(
|
||||
export GOHOSTARCH=$(go_arch ${CBUILD})
|
||||
export GOHOSTOS=$(go_os ${CBUILD})
|
||||
export CC=$(tc-getBUILD_CC)
|
||||
|
||||
export GOARCH=$(go_arch)
|
||||
export GOOS=$(go_os)
|
||||
export CC_FOR_TARGET=$(tc-getCC)
|
||||
export CXX_FOR_TARGET=$(tc-getCXX)
|
||||
use arm && export GOARM=$(go_arm)
|
||||
use x86 && export GO386=$(usex cpu_flags_x86_sse2 '' 'softfloat')
|
||||
|
||||
cd src
|
||||
bash -x ./make.bash || die "build failed"
|
||||
}
|
||||
|
||||
src_test() {
|
||||
go_cross_compile && return 0
|
||||
|
||||
cd src
|
||||
PATH="${GOBIN}:${PATH}" \
|
||||
./run.bash -no-rebuild || die "tests failed"
|
||||
cd ..
|
||||
rm -fr pkg/*_race || die
|
||||
rm -fr pkg/obj/go-build || die
|
||||
}
|
||||
|
||||
src_install() {
|
||||
# There is a known issue which requires the source tree to be installed [1].
|
||||
# Once this is fixed, we can consider using the doc use flag to control
|
||||
# installing the doc and src directories.
|
||||
# The use of cp is deliberate in order to retain permissions
|
||||
# [1] https://golang.org/issue/2775
|
||||
dodir /usr/lib/go
|
||||
cp -R api bin doc lib pkg misc src test "${ED}"/usr/lib/go
|
||||
einstalldocs
|
||||
|
||||
# testdata directories are not needed on the installed system
|
||||
rm -fr $(find "${ED}"/usr/lib/go -iname testdata -type d -print)
|
||||
|
||||
local bin_path
|
||||
if go_cross_compile; then
|
||||
bin_path="bin/$(go_tuple)"
|
||||
else
|
||||
bin_path=bin
|
||||
fi
|
||||
local f x
|
||||
for x in ${bin_path}/*; do
|
||||
f=${x##*/}
|
||||
dosym ../lib/go/${bin_path}/${f} /usr/bin/${f}
|
||||
done
|
||||
|
||||
# install the @golang-rebuild set for Portage
|
||||
insinto /usr/share/portage/config/sets
|
||||
newins "${FILESDIR}"/go-sets.conf go.conf
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
[[ -z ${REPLACING_VERSIONS} ]] && return
|
||||
elog "After ${CATEGORY}/${PN} is updated it is recommended to rebuild"
|
||||
elog "all packages compiled with previous versions of ${CATEGORY}/${PN}"
|
||||
elog "due to the static linking nature of go."
|
||||
elog "If this is not done, the packages compiled with the older"
|
||||
elog "version of the compiler will not be updated until they are"
|
||||
elog "updated individually, which could mean they will have"
|
||||
elog "vulnerabilities."
|
||||
elog "Run 'emerge @golang-rebuild' to rebuild all 'go' packages"
|
||||
elog "See https://bugs.gentoo.org/752153 for more info"
|
||||
}
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in new issue