Sync with portage [Thu Jan 26 20:50:17 MSK 2023].

master 2387
root 1 year ago
parent 0fa0d98efc
commit e90fe506d2

Binary file not shown.

Binary file not shown.

@ -1,8 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ros@gentoo.org</email>
<name>Gentoo ROS Project</name>
</maintainer>
</pkgmetadata>

@ -1,10 +0,0 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit acct-group
DESCRIPTION="A group for dev-ros/roslaunch"
ACCT_GROUP_ID="130"

Binary file not shown.

@ -1,8 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ros@gentoo.org</email>
<name>Gentoo ROS Project</name>
</maintainer>
</pkgmetadata>

@ -1,14 +0,0 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit acct-user
DESCRIPTION="A user for dev-ros/roslaunch"
ACCT_USER_GROUPS=( "ros" )
ACCT_USER_HOME="/home/ros"
ACCT_USER_ID="130"
acct-user_add_deps

Binary file not shown.

@ -0,0 +1,223 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{9..11} )
FINDLIB_USE="ocaml"
JAVA_PKG_WANT_SOURCE="1.8"
JAVA_PKG_WANT_TARGET="1.8"
inherit findlib toolchain-funcs java-pkg-opt-2 autotools python-r1 tmpfiles
DESCRIPTION="Daemon that provides access to the Linux/Unix console for a blind person"
HOMEPAGE="https://brltty.app/"
SRC_URI="https://brltty.app/archive/${P}.tar.xz"
LICENSE="GPL-2 LGPL-2.1"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~loong ~ppc ~ppc64 ~riscv ~x86"
IUSE="+api +beeper bluetooth doc +fm gpm iconv icu
java louis +midi ncurses nls ocaml +pcm policykit python
usb systemd +speech tcl xml X"
REQUIRED_USE="doc? ( api )
java? ( api )
ocaml? ( api )
python? ( api ${PYTHON_REQUIRED_USE} )
tcl? ( api )"
DEPEND="
acct-group/brltty
acct-user/brltty
dev-libs/libpcre2[pcre32]
bluetooth? (
sys-apps/dbus
net-wireless/bluez
)
gpm? ( >=sys-libs/gpm-1.20 )
iconv? ( virtual/libiconv )
icu? ( dev-libs/icu:= )
louis? ( dev-libs/liblouis:= )
midi? ( media-libs/alsa-lib )
ncurses? ( sys-libs/ncurses:0= )
pcm? ( media-libs/alsa-lib )
policykit? ( sys-auth/polkit )
python? ( ${PYTHON_DEPS} )
speech? (
app-accessibility/espeak-ng
app-accessibility/flite
app-accessibility/speech-dispatcher
)
systemd? ( sys-apps/systemd )
tcl? ( >=dev-lang/tcl-8.6.13-r1:= )
usb? ( virtual/libusb:1 )
xml? ( dev-libs/expat )
X? (
app-accessibility/at-spi2-core:2
sys-apps/dbus
x11-libs/libX11
x11-libs/libXaw
x11-libs/libXfixes
x11-libs/libXt
x11-libs/libXtst
)"
RDEPEND="${DEPEND}
java? ( >=virtual/jre-1.8:* )
"
BDEPEND="
virtual/pkgconfig
java? ( >=virtual/jdk-1.8:* )
nls? ( virtual/libintl )
python? ( >=dev-python/cython-0.16[${PYTHON_USEDEP}] )
"
HTML_DOCS=( "${S}"/Documents/Manual-BrlAPI/. )
PATCHES=(
"${FILESDIR}"/${PN}-6.4-respect-AR.patch
)
src_prepare() {
default
java-pkg-opt-2_src_prepare
# We run eautoconf instead of using eautoreconf because brltty uses
# a custom build system that uses autoconf without the rest of the
# autotools.
eautoconf
use python && python_copy_sources
}
src_configure() {
tc-export AR LD PKG_CONFIG
export JAVAC=""
export JAVA_JNI_FLAGS=""
if use java; then
export JAVA_HOME="$(java-config -g JAVA_HOME)"
export JAVAC_HOME="${JAVA_HOME}/bin"
export JAVA_JNI_FLAGS="$(java-pkg_get-jni-cflags)"
export JAVAC="$(java-pkg_get-javac) -encoding UTF-8 $(java-pkg_javac-args)"
fi
# Override bindir for backward compatibility.
# Also override localstatedir so that the lib/brltty directory is installed
# correctly.
# Disable stripping since we do that ourselves.
local myconf=(
--bindir="${EPREFIX}"/bin
--htmldir="${EPREFIX}"/usr/share/doc/"${P}"/html
--localstatedir="${EPREFIX}"/var
--runstatedir="${EPREFIX}"/run
# the next two lines should be removed once support is added.
--disable-emacs-bindings
--disable-lua-bindings
--disable-stripping
--with-updatable-directory="${EPREFIX}"/var/lib/brltty
--with-writable-directory="${EPREFIX}"/run/brltty
--with-privilege-parameters=lx:user=brltty
$(use_enable api)
$(use_with beeper beep-package)
# $(use_enable emacs emacs-bindings)
$(use_with fm fm-package)
$(use_enable gpm)
$(use_enable iconv)
$(use_enable icu)
$(use_enable java java-bindings)
$(use_enable louis liblouis)
# $(use_enable lua lua-bindings)
$(use_with midi midi-package)
$(use_enable nls i18n)
$(use_enable ocaml ocaml-bindings)
$(use_with pcm pcm-package)
$(use_enable policykit polkit)
$(use_enable python python-bindings)
$(use_enable speech speech-support)
$(use_with systemd service-package)
$(use_enable tcl tcl-bindings)
$(use_enable xml expat)
$(use_enable X x)
$(use_with bluetooth bluetooth-package)
$(use_with ncurses curses)
$(use_with usb usb-package)
)
# disable espeak since we use espeak-ng
use speech && myconf+=( --with-speech-driver=-es )
econf "${myconf[@]}"
if use python; then
python_configure() {
econf "${myconf[@]}"
}
python_foreach_impl run_in_build_dir python_configure
fi
}
src_compile() {
emake -j1 JAVA_JNI_FLAGS="${JAVA_JNI_FLAGS}" JAVAC="${JAVAC}"
if use python; then
python_build() {
cd "Bindings/Python" || die
emake -j1
}
python_foreach_impl run_in_build_dir python_build
fi
}
src_install() {
if use ocaml; then
findlib_src_preinst
fi
emake -j1 INSTALL_ROOT="${D}" OCAML_LDCONF= install
if use python; then
python_install() {
cd "Bindings/Python" || die
emake -j1 INSTALL_ROOT="${D}" install
}
python_foreach_impl run_in_build_dir python_install
fi
if use java; then
java-pkg_doso Bindings/Java/libbrlapi_java.so
java-pkg_dojar Bindings/Java/brlapi.jar
fi
insinto /etc
doins Documents/brltty.conf
newinitd "${FILESDIR}"/brltty.initd brltty
pushd Autostart/Systemd 1> /dev/null || die
emake -j1 INSTALL_ROOT="${ED}" install
popd || die
pushd Autostart/Udev 1> /dev/null || die
emake -j1 INSTALL_ROOT="${ED}" install
popd || die
dodoc Documents/{CONTRIBUTORS,ChangeLog,HISTORY,README*,TODO}
if use doc; then
HTML_DOCS="doc/Manual-BRLTTY" einstalldocs
fi
keepdir /var/lib/BrlAPI
rm -fr "${ED}/run" || die
find "${ED}" -name '*.a' -delete || die
}
pkg_postinst() {
tmpfiles_process ${PN}.conf
elog "please be sure ${EROOT}/etc/brltty.conf is correct for your system."
elog
elog "To make brltty start on boot on an OpenRC system, type this command:"
elog "# rc-update add brltty boot"
elog
elog "If you are using systemd, type this command:"
elog "# systemctl daemon-reload"
elog
elog "Please reload udev by typing:"
elog "# udevadm control --reload"
}

@ -53,7 +53,7 @@ DEPEND="
usb? ( virtual/libusb:1 )
xml? ( dev-libs/expat )
X? (
app-accessibility/at-spi2-core:2
app-accessibility/at-spi2-core:2
sys-apps/dbus
x11-libs/libX11
x11-libs/libXaw
@ -192,10 +192,10 @@ src_install() {
newinitd "${FILESDIR}"/brltty.initd brltty
pushd Autostart/Systemd 1> /dev/null || die
emake -j1 INSTALL_ROOT="${ED}" install
popd
popd || die
pushd Autostart/Udev 1> /dev/null || die
emake -j1 INSTALL_ROOT="${ED}" install
popd
popd || die
dodoc Documents/{CONTRIBUTORS,ChangeLog,HISTORY,README*,TODO}
if use doc; then

Binary file not shown.

@ -1 +1,2 @@
DIST httpd-2.4.54.tar.bz2 7434530 BLAKE2B be2ba2d33368f9dd619e36e63dd3635fbcf55773a539ac2840251bda04311f3eb535c08a37ab58d8b184c71e75b90b92e2bdc4e59c722cfb146de516f6e1ed04 SHA512 228493b2ff32c4142c6e484d304f2ea12e467498605fe12adce2b61388d8efe7b2e96ae2fd0abd1dc88a5f12d625e007d8da0ae5628cff2a5272806754f41e18
DIST httpd-2.4.55.tar.bz2 7456187 BLAKE2B 98e9ec41aa3ccbbe533672ba6de8421e1f0cb5a4b4a06d0cf26c676945bcd5ebe66a1fd21d941ad8ff2c9183565ce542a5643730bbee5972934008652924945b SHA512 94982f7a1fedac8961fc17b5a22cf763ac28cb27ee6facab2e6a15b249b927773667493fd3f7354fb13fcb34a6f1afc1bdd5cf4b7be030cba1dfb523e40d43fb

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

@ -11,7 +11,7 @@ SRC_URI="mirror://apache/httpd/httpd-${PV}.tar.bz2"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc64-solaris ~x64-solaris"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc64-solaris ~x64-solaris"
IUSE="ssl"
RESTRICT="test"

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

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

@ -4,3 +4,5 @@ DIST aws-cli-1.27.52.gh.tar.gz 2347819 BLAKE2B 1d6c26a9ede3c9cff28a66f7582a84a57
DIST aws-cli-1.27.53.gh.tar.gz 2349368 BLAKE2B ddae75809b9eb2e8ff5f80cdb4d5730254866dc025c178ebcf76971e53fd5d5fecbf30e20717f4a126cb19624acd961e8c005a0ced118989b062666c8ab2d346 SHA512 8eddc6f801e7e7f8600f6cdde3db28e670fdc83e6266840b507f88e0b176d790450d18f84c921af15fa12408f2f2eb16fc2498668601c3164ef1f503275303a8
DIST aws-cli-1.27.54.gh.tar.gz 2349811 BLAKE2B 08cb317ea4621273644c39c1152e1a3f8bd9f52ed8c30d7c37dfea9e986ca1597fda1dfbdea8c4043fa783f061609d6f24895997e9f9a3f27d5677c0f9e6c3de SHA512 af4783eef3c1c666b8b3c6d20f1c0177db6d4ce01645b092770cba535dad95609b4bece366355ce6d6a505ac7ab5a2e390d64fb84d6c00e402f9f8ab88db91d9
DIST aws-cli-1.27.55.gh.tar.gz 2349668 BLAKE2B d9d0318d572e2b165a8177a1c2b76ebad042a142015bda3747038cb893b58eea6babc9e9a04547e9987dea45f505af5fe1f402a0753b780fbc779876e4a91ff8 SHA512 a6b030820c09f67f0a4df84ae0df5f622a25b0df78d203e53fb4c6f09a726a322b02f9faf9afaf9206bf38ee2c311ca2f23e07c03169d11f687ea85d45c5e225
DIST aws-cli-1.27.56.gh.tar.gz 2358966 BLAKE2B be151bf7c55b932a7a5540ba1b94aeed94fa92eda8f0a680effec6189da9c9247ad52bc9898d7e4ab2aa2f841949be14f55d3e51a879e9a3fc563e403e827ce6 SHA512 e3d6e392ffb2e034172ae4c7cff929f8a462ab5e149aa0b3ec9dd446cfc564bcbed10e32057ccf00d74dcc284da2ad46e860e06fff49b49c63f3db0d45d2f728
DIST aws-cli-1.27.57.gh.tar.gz 2359650 BLAKE2B 637674f1726828b43a8135b9f7ff9d1f4a05716680aa909829148e4acf7104290c49f90b453294e16cc74d0d200bdfa4049b470a5194df5e3098308d0c088d3b SHA512 be1ac08e57012751f59e63996395b39bf5a9f42381e9a08baffacc2ac9d104c3560c250b2b210608bf6b460fdc31cc1f794a90949a52ebdbb3c22f03e5fb00c2

@ -0,0 +1,80 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DISTUTILS_USE_PEP517=setuptools
PYTHON_COMPAT=( python3_{10..11} )
inherit bash-completion-r1 distutils-r1 multiprocessing
MY_P=aws-cli-${PV}
DESCRIPTION="Universal Command Line Environment for AWS"
HOMEPAGE="
https://github.com/aws/aws-cli/
https://pypi.org/project/awscli/
"
SRC_URI="
https://github.com/aws/aws-cli/archive/${PV}.tar.gz
-> ${MY_P}.gh.tar.gz
"
S=${WORKDIR}/${MY_P}
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86"
# botocore is x.(y+2).z
BOTOCORE_PV="$(ver_cut 1).$(( $(ver_cut 2) + 2)).$(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.6.0[${PYTHON_USEDEP}]
dev-python/pyyaml[${PYTHON_USEDEP}]
!app-admin/awscli-bin
"
BDEPEND="
test? (
dev-python/pytest-forked[${PYTHON_USEDEP}]
dev-python/pytest-xdist[${PYTHON_USEDEP}]
)
"
distutils_enable_tests 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() {
local EPYTEST_DESELECT=(
# TODO
tests/functional/eks/test_kubeconfig.py::TestKubeconfigLoader::test_load_simple
tests/unit/customizations/eks/test_update_kubeconfig.py::TestKubeconfigSelector::test_choose_env_only
tests/unit/customizations/eks/test_update_kubeconfig.py::TestKubeconfigSelector::test_choose_existing
tests/unit/customizations/eks/test_kubeconfig.py::TestKubeconfigValidator::test_valid
)
# integration tests require AWS credentials and Internet access
epytest tests/{functional,unit} -n "$(makeopts_jobs)" --forked
}
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
}

@ -0,0 +1,80 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DISTUTILS_USE_PEP517=setuptools
PYTHON_COMPAT=( python3_{10..11} )
inherit bash-completion-r1 distutils-r1 multiprocessing
MY_P=aws-cli-${PV}
DESCRIPTION="Universal Command Line Environment for AWS"
HOMEPAGE="
https://github.com/aws/aws-cli/
https://pypi.org/project/awscli/
"
SRC_URI="
https://github.com/aws/aws-cli/archive/${PV}.tar.gz
-> ${MY_P}.gh.tar.gz
"
S=${WORKDIR}/${MY_P}
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86"
# botocore is x.(y+2).z
BOTOCORE_PV="$(ver_cut 1).$(( $(ver_cut 2) + 2)).$(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.6.0[${PYTHON_USEDEP}]
dev-python/pyyaml[${PYTHON_USEDEP}]
!app-admin/awscli-bin
"
BDEPEND="
test? (
dev-python/pytest-forked[${PYTHON_USEDEP}]
dev-python/pytest-xdist[${PYTHON_USEDEP}]
)
"
distutils_enable_tests 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() {
local EPYTEST_DESELECT=(
# TODO
tests/functional/eks/test_kubeconfig.py::TestKubeconfigLoader::test_load_simple
tests/unit/customizations/eks/test_update_kubeconfig.py::TestKubeconfigSelector::test_choose_env_only
tests/unit/customizations/eks/test_update_kubeconfig.py::TestKubeconfigSelector::test_choose_existing
tests/unit/customizations/eks/test_kubeconfig.py::TestKubeconfigValidator::test_valid
)
# integration tests require AWS credentials and Internet access
epytest tests/{functional,unit} -n "$(makeopts_jobs)" --forked
}
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,2 +1 @@
DIST hcloud-1.30.3.tar.xz 1690980 BLAKE2B 115a6769d5bd5e6a10d812502506f9921a7659a262eea7088c88205e9fc748a570c1c9830e5061923f1be18a64d96104e6e930c9edc3316645e5d86450fbf69c SHA512 64bc692b8d098149815ba63aec8346a7f4f2ff7461fac3369343595a733a5c727b41ec8341e4eee1a98804b14bfc5a94ff9fc0621abb798d381d9bc802818b77
DIST hcloud-1.31.1.tar.xz 1735560 BLAKE2B 66b2deaefbf61a72bf6a9e004c29d1198e5cfd40956e9936d5db27903aff5f8151c230da61b33ce4231885613d53ba5c96f99fb10df03fdcc241ec32fa465de5 SHA512 b61683ea54455be1db0ae196615642d0247e56ca51f3848847fba09124a45606aea2495f4408694acc5e819d9dc79ffdb2b9ce4e85aade7dea0335be94461066

@ -1,34 +0,0 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
DESCRIPTION="A command-line interface for Hetzner Cloud"
HOMEPAGE="https://github.com/hetznercloud/cli"
SRC_URI="https://dev.gentoo.org/~ago/distfiles/${P}.tar.xz"
LICENSE="MIT"
SLOT="0"
KEYWORDS="amd64"
IUSE=""
DEPEND="dev-lang/go:="
RESTRICT="strip"
QA_FLAGS_IGNORED=".*"
src_compile() {
go build -mod vendor -o ${PN} -ldflags "-w -X github.com/hetznercloud/cli/internal/version.Version=${PV}-gentoo" ./cmd/${PN} || die "build failed"
}
src_test() {
# For upstream a simple test is run 'hcloud version'
./hcloud version
if [[ $? -ne 0 ]]
then
die "Test failed"
fi
}
src_install() {
dobin ${PN}
}

@ -1,4 +1,4 @@
# Copyright 1999-2022 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@ -9,7 +9,7 @@ SRC_URI="https://dev.gentoo.org/~ago/distfiles/${P}.tar.xz"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64"
KEYWORDS="amd64"
IUSE=""
DEPEND="dev-lang/go:="

@ -1,5 +1 @@
DIST syslog-ng-3.34.1.tar.gz 5903489 BLAKE2B ae94dacb324f2db68fdaad6d41d1974e4506527ace432af314566b20a8d82ae91e96e3aa039d035f3baf096bb02e16143a35446ff2e3cbba1880c61c1f708688 SHA512 f4df871f780b2e55e847d3ac108d0647659cac2493180d29436f04a4b75d38b90aba8adcd38f6337dce8f69d6aba9ff33fd3d8dc0f86021a29f60a21747e9a10
DIST syslog-ng-3.35.1.tar.gz 5901321 BLAKE2B 9ee93c22358703bc95c951f6fc9207da0291b3d5a6dedf0222302ca16576f49734d31891265c8c1d218a0308a76074301babbaa39b37e1564107e2ab6adf8a92 SHA512 7a0aa149d3e01b256e0f3168ceabebcbeadb0d8bbee6838d646cb425571b26330cccbcdd3a221f7b57a4605e875f48e48cd367825623299dc43d5ba77f94c50d
DIST syslog-ng-3.36.1.tar.gz 5968598 BLAKE2B b74536e20ae2a2eac056fe278f2e7973b3c97657cd80962ee551812633045dbdeb65fe34b66448d565a6f1b9edb2f1066fc1934d3f7ffbd43b9527a73a181e58 SHA512 b74c10e708616f7f5f5d529de5c1a3ce8ac888c05aa4b0fcf390d70082e9bc3432f3752998a5a258663fd47b8e4d0c2735240a3e4eda28178579b18308ebb376
DIST syslog-ng-3.37.1.tar.gz 6033219 BLAKE2B fe3787daec137d5eb61c6bf55d6066b642e7944738ec0655fcc7ddf8d0c841a734ec423b0710f424576fa78bbecfb1121475921e6f8bf896c10470c89dbf98c8 SHA512 beebd89c54a415469dc58630ac1900d632ef351f6a13fad4a95ce7bb1760b16d6cfdcede02225a35e97ebce7dae151c6aa228f3d378463e8b873c4f71ed86ab7
DIST syslog-ng-3.38.1.tar.gz 5405048 BLAKE2B 7819cbe0caab7f580ca9f71181c84d64da838a238a6f8b8b79c8816e37e5691e72e1284de57d5066d3c681d8751950e5a32d65a1b1af4e064dd82f2c59899fe3 SHA512 3a3ef5c72d8c211ed2914791380061dcd48ea1ea95f636a1a8649dc5dee731a11e9ae000a37cbeeba624f4053b623b697e6c7f945a81153106c2365f4f09a847

@ -1,173 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python3_{9..10} )
inherit autotools python-single-r1 systemd
MY_PV_MM=$(ver_cut 1-2)
DESCRIPTION="syslog replacement with advanced filtering features"
HOMEPAGE="https://www.syslog-ng.com/products/open-source-log-management/"
SRC_URI="https://github.com/balabit/syslog-ng/releases/download/${P}/${P}.tar.gz"
LICENSE="GPL-2+ LGPL-2.1+"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~riscv ~s390 sparc x86"
IUSE="amqp caps dbi geoip2 http ipv6 json kafka mongodb pacct python redis smtp snmp test spoof-source systemd tcpd"
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )
test? ( python )"
RESTRICT="!test? ( test )"
RDEPEND="
>=dev-libs/glib-2.10.1:2
>=dev-libs/ivykis-0.42.4
>=dev-libs/libpcre-6.1:=
!dev-libs/eventlog
amqp? ( >=net-libs/rabbitmq-c-0.8.0:=[ssl] )
caps? ( sys-libs/libcap )
dbi? ( >=dev-db/libdbi-0.9.0 )
geoip2? ( dev-libs/libmaxminddb:= )
http? ( net-misc/curl )
json? ( >=dev-libs/json-c-0.9:= )
kafka? ( >=dev-libs/librdkafka-1.0.0:= )
mongodb? ( >=dev-libs/mongo-c-driver-1.2.0 )
python? ( ${PYTHON_DEPS} )
redis? ( >=dev-libs/hiredis-0.11.0:= )
smtp? ( net-libs/libesmtp:= )
snmp? ( net-analyzer/net-snmp:0= )
spoof-source? ( net-libs/libnet:1.1= )
systemd? ( sys-apps/systemd:= )
tcpd? ( >=sys-apps/tcp-wrappers-7.6 )
dev-libs/openssl:0="
DEPEND="${RDEPEND}
test? ( dev-libs/criterion )"
BDEPEND="
sys-devel/bison
sys-devel/flex
virtual/pkgconfig"
DOCS=( AUTHORS NEWS.md CONTRIBUTING.md contrib/syslog-ng.conf.{HP-UX,RedHat,SunOS,doc}
contrib/syslog2ng "${T}/syslog-ng.conf.gentoo.hardened"
"${T}/syslog-ng.logrotate.hardened" "${FILESDIR}/README.hardened" )
PATCHES=(
"${FILESDIR}"/${PN}-3.28.1-net-snmp.patch
)
pkg_setup() {
use python && python-single-r1_pkg_setup
}
src_prepare() {
local f
use python && python_fix_shebang .
# remove bundled libs
rm -r lib/ivykis || die
# drop scl modules requiring json
if use !json; then
sed -i -r '/cim|elasticsearch|ewmm|graylog2|loggly|logmatic|netskope|nodejs|osquery|slack/d' scl/Makefile.am || die
fi
# drop scl modules requiring http
if use !http; then
sed -i -r '/slack|telegram/d' scl/Makefile.am || die
fi
# use gentoo default path
if use systemd; then
sed -e 's@/etc/syslog-ng.conf@/etc/syslog-ng/syslog-ng.conf@g;s@/var/run@/run@g' \
-i contrib/systemd/syslog-ng@default || die
fi
for f in syslog-ng.logrotate.hardened.in syslog-ng.logrotate.in; do
sed \
-e "s#@GENTOO_RESTART@#$(usex systemd "systemctl kill -s HUP syslog-ng@default" \
"/etc/init.d/syslog-ng reload")#g" \
"${FILESDIR}/${f}" > "${T}/${f/.in/}" || die
done
for f in syslog-ng.conf.gentoo.hardened.in \
syslog-ng.conf.gentoo.in; do
sed -e "s/@SYSLOGNG_VERSION@/${MY_PV_MM}/g" "${FILESDIR}/${f}" > "${T}/${f/.in/}" || die
done
default
eautoreconf
}
src_configure() {
local myconf=(
--disable-docs
--disable-java
--disable-java-modules
--disable-riemann
--enable-manpages
--localstatedir=/var/lib/syslog-ng
--sysconfdir=/etc/syslog-ng
--with-embedded-crypto
--with-ivykis=system
--with-module-dir=/usr/$(get_libdir)/syslog-ng
--with-pidfile-dir=/var/run
--with-systemdsystemunitdir="$(systemd_get_systemunitdir)"
$(use_enable amqp)
$(usex amqp --with-librabbitmq-client=system --without-librabbitmq-client)
$(use_enable caps linux-caps)
$(use_enable dbi sql)
$(use_enable geoip2)
$(use_enable http)
$(use_enable ipv6)
$(use_enable json)
$(use_enable kafka)
$(use_enable mongodb)
$(usex mongodb --with-mongoc=system "--without-mongoc --disable-legacy-mongodb-options")
$(use_enable pacct)
$(use_enable python)
$(use_enable redis)
$(use_enable smtp)
$(use_enable snmp afsnmp)
$(use_enable spoof-source)
$(use_enable systemd)
$(use_enable tcpd tcp-wrapper)
)
econf "${myconf[@]}"
}
src_install() {
default
# Install default configuration
insinto /etc/default
doins contrib/systemd/syslog-ng@default
insinto /etc/syslog-ng
newins "${T}/syslog-ng.conf.gentoo" syslog-ng.conf
insinto /etc/logrotate.d
newins "${T}/syslog-ng.logrotate" syslog-ng
newinitd "${FILESDIR}/syslog-ng.rc" syslog-ng
newconfd "${FILESDIR}/syslog-ng.confd" syslog-ng
keepdir /etc/syslog-ng/patterndb.d /var/lib/syslog-ng
find "${D}" -name '*.la' -delete || die
use python && python_optimize
}
pkg_postinst() {
# bug #355257
if ! has_version app-admin/logrotate ; then
elog "It is highly recommended that app-admin/logrotate be emerged to"
elog "manage the log files. ${PN} installs a file in /etc/logrotate.d"
elog "for logrotate to use."
fi
if use systemd; then
ewarn "The service file for systemd has changed to support multiple instances."
ewarn "To start the default instance issue:"
ewarn "# systemctl start syslog-ng@default"
fi
}

@ -1,173 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{9..10} )
inherit autotools python-single-r1 systemd
MY_PV_MM=$(ver_cut 1-2)
DESCRIPTION="syslog replacement with advanced filtering features"
HOMEPAGE="https://www.syslog-ng.com/products/open-source-log-management/"
SRC_URI="https://github.com/balabit/syslog-ng/releases/download/${P}/${P}.tar.gz"
LICENSE="GPL-2+ LGPL-2.1+"
SLOT="0"
KEYWORDS="~alpha amd64 ~arm arm64 hppa ~ia64 ~mips ppc ppc64 ~riscv ~s390 sparc x86"
IUSE="amqp caps dbi geoip2 http ipv6 json kafka mongodb pacct python redis smtp snmp test spoof-source systemd tcpd"
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )
test? ( python )"
RESTRICT="!test? ( test )"
RDEPEND="
>=dev-libs/glib-2.10.1:2
>=dev-libs/ivykis-0.42.4
>=dev-libs/libpcre-6.1:=
!dev-libs/eventlog
amqp? ( >=net-libs/rabbitmq-c-0.8.0:=[ssl] )
caps? ( sys-libs/libcap )
dbi? ( >=dev-db/libdbi-0.9.0 )
geoip2? ( dev-libs/libmaxminddb:= )
http? ( net-misc/curl )
json? ( >=dev-libs/json-c-0.9:= )
kafka? ( >=dev-libs/librdkafka-1.0.0:= )
mongodb? ( >=dev-libs/mongo-c-driver-1.2.0 )
python? ( ${PYTHON_DEPS} )
redis? ( >=dev-libs/hiredis-0.11.0:= )
smtp? ( net-libs/libesmtp:= )
snmp? ( net-analyzer/net-snmp:0= )
spoof-source? ( net-libs/libnet:1.1= )
systemd? ( sys-apps/systemd:= )
tcpd? ( >=sys-apps/tcp-wrappers-7.6 )
dev-libs/openssl:0="
DEPEND="${RDEPEND}
test? ( dev-libs/criterion )"
BDEPEND="
sys-devel/bison
sys-devel/flex
virtual/pkgconfig"
DOCS=( AUTHORS NEWS.md CONTRIBUTING.md contrib/syslog-ng.conf.{HP-UX,RedHat,SunOS,doc}
contrib/syslog2ng "${T}/syslog-ng.conf.gentoo.hardened"
"${T}/syslog-ng.logrotate.hardened" "${FILESDIR}/README.hardened" )
PATCHES=(
"${FILESDIR}"/${PN}-3.28.1-net-snmp.patch
)
pkg_setup() {
use python && python-single-r1_pkg_setup
}
src_prepare() {
local f
use python && python_fix_shebang .
# remove bundled libs
rm -r lib/ivykis || die
# drop scl modules requiring json
if use !json; then
sed -i -r '/cim|elasticsearch|ewmm|graylog2|loggly|logmatic|netskope|nodejs|osquery|slack/d' scl/Makefile.am || die
fi
# drop scl modules requiring http
if use !http; then
sed -i -r '/slack|telegram/d' scl/Makefile.am || die
fi
# use gentoo default path
if use systemd; then
sed -e 's@/etc/syslog-ng.conf@/etc/syslog-ng/syslog-ng.conf@g;s@/var/run@/run@g' \
-i contrib/systemd/syslog-ng@default || die
fi
for f in syslog-ng.logrotate.hardened.in syslog-ng.logrotate.in; do
sed \
-e "s#@GENTOO_RESTART@#$(usex systemd "systemctl kill -s HUP syslog-ng@default" \
"/etc/init.d/syslog-ng reload")#g" \
"${FILESDIR}/${f}" > "${T}/${f/.in/}" || die
done
for f in syslog-ng.conf.gentoo.hardened.in \
syslog-ng.conf.gentoo.in; do
sed -e "s/@SYSLOGNG_VERSION@/${MY_PV_MM}/g" "${FILESDIR}/${f}" > "${T}/${f/.in/}" || die
done
default
eautoreconf
}
src_configure() {
local myconf=(
--disable-docs
--disable-java
--disable-java-modules
--disable-riemann
--enable-manpages
--localstatedir=/var/lib/syslog-ng
--sysconfdir=/etc/syslog-ng
--with-embedded-crypto
--with-ivykis=system
--with-module-dir=/usr/$(get_libdir)/syslog-ng
--with-pidfile-dir=/var/run
--with-systemdsystemunitdir="$(systemd_get_systemunitdir)"
$(use_enable amqp)
$(usex amqp --with-librabbitmq-client=system --without-librabbitmq-client)
$(use_enable caps linux-caps)
$(use_enable dbi sql)
$(use_enable geoip2)
$(use_enable http)
$(use_enable ipv6)
$(use_enable json)
$(use_enable kafka)
$(use_enable mongodb)
$(usex mongodb --with-mongoc=system "--without-mongoc --disable-legacy-mongodb-options")
$(use_enable pacct)
$(use_enable python)
$(use_enable redis)
$(use_enable smtp)
$(use_enable snmp afsnmp)
$(use_enable spoof-source)
$(use_enable systemd)
$(use_enable tcpd tcp-wrapper)
)
econf "${myconf[@]}"
}
src_install() {
default
# Install default configuration
insinto /etc/default
doins contrib/systemd/syslog-ng@default
insinto /etc/syslog-ng
newins "${T}/syslog-ng.conf.gentoo" syslog-ng.conf
insinto /etc/logrotate.d
newins "${T}/syslog-ng.logrotate" syslog-ng
newinitd "${FILESDIR}/syslog-ng.rc" syslog-ng
newconfd "${FILESDIR}/syslog-ng.confd" syslog-ng
keepdir /etc/syslog-ng/patterndb.d /var/lib/syslog-ng
find "${D}" -name '*.la' -delete || die
use python && python_optimize
}
pkg_postinst() {
# bug #355257
if ! has_version app-admin/logrotate ; then
elog "It is highly recommended that app-admin/logrotate be emerged to"
elog "manage the log files. ${PN} installs a file in /etc/logrotate.d"
elog "for logrotate to use."
fi
if use systemd; then
ewarn "The service file for systemd has changed to support multiple instances."
ewarn "To start the default instance issue:"
ewarn "# systemctl start syslog-ng@default"
fi
}

@ -1,173 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{9..10} )
inherit autotools python-single-r1 systemd
MY_PV_MM=$(ver_cut 1-2)
DESCRIPTION="syslog replacement with advanced filtering features"
HOMEPAGE="https://www.syslog-ng.com/products/open-source-log-management/"
SRC_URI="https://github.com/balabit/syslog-ng/releases/download/${P}/${P}.tar.gz"
LICENSE="GPL-2+ LGPL-2.1+"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~riscv ~s390 sparc x86"
IUSE="amqp caps dbi geoip2 http ipv6 json kafka mongodb pacct python redis smtp snmp test spoof-source systemd tcpd"
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )
test? ( python )"
RESTRICT="!test? ( test )"
RDEPEND="
>=dev-libs/glib-2.10.1:2
>=dev-libs/ivykis-0.42.4
>=dev-libs/libpcre-6.1:=
!dev-libs/eventlog
amqp? ( >=net-libs/rabbitmq-c-0.8.0:=[ssl] )
caps? ( sys-libs/libcap )
dbi? ( >=dev-db/libdbi-0.9.0 )
geoip2? ( dev-libs/libmaxminddb:= )
http? ( net-misc/curl )
json? ( >=dev-libs/json-c-0.9:= )
kafka? ( >=dev-libs/librdkafka-1.0.0:= )
mongodb? ( >=dev-libs/mongo-c-driver-1.2.0 )
python? ( ${PYTHON_DEPS} )
redis? ( >=dev-libs/hiredis-0.11.0:= )
smtp? ( net-libs/libesmtp:= )
snmp? ( net-analyzer/net-snmp:0= )
spoof-source? ( net-libs/libnet:1.1= )
systemd? ( sys-apps/systemd:= )
tcpd? ( >=sys-apps/tcp-wrappers-7.6 )
dev-libs/openssl:0="
DEPEND="${RDEPEND}
test? ( dev-libs/criterion )"
BDEPEND="
>=sys-devel/bison-3.7.6
sys-devel/flex
virtual/pkgconfig"
DOCS=( AUTHORS NEWS.md CONTRIBUTING.md contrib/syslog-ng.conf.{HP-UX,RedHat,SunOS,doc}
contrib/syslog2ng "${T}/syslog-ng.conf.gentoo.hardened"
"${T}/syslog-ng.logrotate.hardened" "${FILESDIR}/README.hardened" )
PATCHES=(
"${FILESDIR}"/${PN}-3.28.1-net-snmp.patch
)
pkg_setup() {
use python && python-single-r1_pkg_setup
}
src_prepare() {
local f
use python && python_fix_shebang .
# remove bundled libs
rm -r lib/ivykis || die
# drop scl modules requiring json
if use !json; then
sed -i -r '/cim|elasticsearch|ewmm|graylog2|loggly|logmatic|netskope|nodejs|osquery|slack/d' scl/Makefile.am || die
fi
# drop scl modules requiring http
if use !http; then
sed -i -r '/slack|telegram/d' scl/Makefile.am || die
fi
# use gentoo default path
if use systemd; then
sed -e 's@/etc/syslog-ng.conf@/etc/syslog-ng/syslog-ng.conf@g;s@/var/run@/run@g' \
-i contrib/systemd/syslog-ng@default || die
fi
for f in syslog-ng.logrotate.hardened.in syslog-ng.logrotate.in; do
sed \
-e "s#@GENTOO_RESTART@#$(usex systemd "systemctl kill -s HUP syslog-ng@default" \
"/etc/init.d/syslog-ng reload")#g" \
"${FILESDIR}/${f}" > "${T}/${f/.in/}" || die
done
for f in syslog-ng.conf.gentoo.hardened.in \
syslog-ng.conf.gentoo.in; do
sed -e "s/@SYSLOGNG_VERSION@/${MY_PV_MM}/g" "${FILESDIR}/${f}" > "${T}/${f/.in/}" || die
done
default
eautoreconf
}
src_configure() {
local myconf=(
--disable-docs
--disable-java
--disable-java-modules
--disable-riemann
--enable-manpages
--localstatedir=/var/lib/syslog-ng
--sysconfdir=/etc/syslog-ng
--with-embedded-crypto
--with-ivykis=system
--with-module-dir=/usr/$(get_libdir)/syslog-ng
--with-pidfile-dir=/var/run
--with-systemdsystemunitdir="$(systemd_get_systemunitdir)"
$(use_enable amqp)
$(usex amqp --with-librabbitmq-client=system --without-librabbitmq-client)
$(use_enable caps linux-caps)
$(use_enable dbi sql)
$(use_enable geoip2)
$(use_enable http)
$(use_enable ipv6)
$(use_enable json)
$(use_enable kafka)
$(use_enable mongodb)
$(usex mongodb --with-mongoc=system "--without-mongoc --disable-legacy-mongodb-options")
$(use_enable pacct)
$(use_enable python)
$(use_enable redis)
$(use_enable smtp)
$(use_enable snmp afsnmp)
$(use_enable spoof-source)
$(use_enable systemd)
$(use_enable tcpd tcp-wrapper)
)
econf "${myconf[@]}"
}
src_install() {
default
# Install default configuration
insinto /etc/default
doins contrib/systemd/syslog-ng@default
insinto /etc/syslog-ng
newins "${T}/syslog-ng.conf.gentoo" syslog-ng.conf
insinto /etc/logrotate.d
newins "${T}/syslog-ng.logrotate" syslog-ng
newinitd "${FILESDIR}/syslog-ng.rc" syslog-ng
newconfd "${FILESDIR}/syslog-ng.confd" syslog-ng
keepdir /etc/syslog-ng/patterndb.d /var/lib/syslog-ng
find "${D}" -name '*.la' -delete || die
use python && python_optimize
}
pkg_postinst() {
# bug #355257
if ! has_version app-admin/logrotate ; then
elog "It is highly recommended that app-admin/logrotate be emerged to"
elog "manage the log files. ${PN} installs a file in /etc/logrotate.d"
elog "for logrotate to use."
fi
if use systemd; then
ewarn "The service file for systemd has changed to support multiple instances."
ewarn "To start the default instance issue:"
ewarn "# systemctl start syslog-ng@default"
fi
}

@ -1,173 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{9..11} )
inherit autotools python-single-r1 systemd
MY_PV_MM=$(ver_cut 1-2)
DESCRIPTION="syslog replacement with advanced filtering features"
HOMEPAGE="https://www.syslog-ng.com/products/open-source-log-management/"
SRC_URI="https://github.com/balabit/syslog-ng/releases/download/${P}/${P}.tar.gz"
LICENSE="GPL-2+ LGPL-2.1+"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
IUSE="amqp caps dbi geoip2 http ipv6 json kafka mongodb pacct python redis smtp snmp test spoof-source systemd tcpd"
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )
test? ( python )"
RESTRICT="!test? ( test )"
RDEPEND="
>=dev-libs/glib-2.10.1:2
>=dev-libs/ivykis-0.42.4
>=dev-libs/libpcre-6.1:=
!dev-libs/eventlog
amqp? ( >=net-libs/rabbitmq-c-0.8.0:=[ssl] )
caps? ( sys-libs/libcap )
dbi? ( >=dev-db/libdbi-0.9.0 )
geoip2? ( dev-libs/libmaxminddb:= )
http? ( net-misc/curl )
json? ( >=dev-libs/json-c-0.9:= )
kafka? ( >=dev-libs/librdkafka-1.0.0:= )
mongodb? ( >=dev-libs/mongo-c-driver-1.2.0 )
python? ( ${PYTHON_DEPS} )
redis? ( >=dev-libs/hiredis-0.11.0:= )
smtp? ( net-libs/libesmtp:= )
snmp? ( net-analyzer/net-snmp:0= )
spoof-source? ( net-libs/libnet:1.1= )
systemd? ( sys-apps/systemd:= )
tcpd? ( >=sys-apps/tcp-wrappers-7.6 )
dev-libs/openssl:0="
DEPEND="${RDEPEND}
test? ( dev-libs/criterion )"
BDEPEND="
>=sys-devel/bison-3.7.6
sys-devel/flex
virtual/pkgconfig"
DOCS=( AUTHORS NEWS.md CONTRIBUTING.md contrib/syslog-ng.conf.{HP-UX,RedHat,SunOS,doc}
contrib/syslog2ng "${T}/syslog-ng.conf.gentoo.hardened"
"${T}/syslog-ng.logrotate.hardened" "${FILESDIR}/README.hardened" )
PATCHES=(
"${FILESDIR}"/${PN}-3.28.1-net-snmp.patch
)
pkg_setup() {
use python && python-single-r1_pkg_setup
}
src_prepare() {
local f
use python && python_fix_shebang .
# remove bundled libs
rm -r lib/ivykis || die
# drop scl modules requiring json
if use !json; then
sed -i -r '/cim|elasticsearch|ewmm|graylog2|loggly|logmatic|netskope|nodejs|osquery|slack/d' scl/Makefile.am || die
fi
# drop scl modules requiring http
if use !http; then
sed -i -r '/slack|telegram/d' scl/Makefile.am || die
fi
# use gentoo default path
if use systemd; then
sed -e 's@/etc/syslog-ng.conf@/etc/syslog-ng/syslog-ng.conf@g;s@/var/run@/run@g' \
-i contrib/systemd/syslog-ng@default || die
fi
for f in syslog-ng.logrotate.hardened.in syslog-ng.logrotate.in; do
sed \
-e "s#@GENTOO_RESTART@#$(usex systemd "systemctl kill -s HUP syslog-ng@default" \
"/etc/init.d/syslog-ng reload")#g" \
"${FILESDIR}/${f}" > "${T}/${f/.in/}" || die
done
for f in syslog-ng.conf.gentoo.hardened.in \
syslog-ng.conf.gentoo.in; do
sed -e "s/@SYSLOGNG_VERSION@/${MY_PV_MM}/g" "${FILESDIR}/${f}" > "${T}/${f/.in/}" || die
done
default
eautoreconf
}
src_configure() {
local myconf=(
--disable-docs
--disable-java
--disable-java-modules
--disable-riemann
--enable-manpages
--localstatedir=/var/lib/syslog-ng
--sysconfdir=/etc/syslog-ng
--with-embedded-crypto
--with-ivykis=system
--with-module-dir=/usr/$(get_libdir)/syslog-ng
--with-pidfile-dir=/var/run
--with-systemdsystemunitdir="$(systemd_get_systemunitdir)"
$(use_enable amqp)
$(usex amqp --with-librabbitmq-client=system --without-librabbitmq-client)
$(use_enable caps linux-caps)
$(use_enable dbi sql)
$(use_enable geoip2)
$(use_enable http)
$(use_enable ipv6)
$(use_enable json)
$(use_enable kafka)
$(use_enable mongodb)
$(usex mongodb --with-mongoc=system "--without-mongoc --disable-legacy-mongodb-options")
$(use_enable pacct)
$(use_enable python)
$(use_enable redis)
$(use_enable smtp)
$(use_enable snmp afsnmp)
$(use_enable spoof-source)
$(use_enable systemd)
$(use_enable tcpd tcp-wrapper)
)
econf "${myconf[@]}"
}
src_install() {
default
# Install default configuration
insinto /etc/default
doins contrib/systemd/syslog-ng@default
insinto /etc/syslog-ng
newins "${T}/syslog-ng.conf.gentoo" syslog-ng.conf
insinto /etc/logrotate.d
newins "${T}/syslog-ng.logrotate" syslog-ng
newinitd "${FILESDIR}/syslog-ng.rc" syslog-ng
newconfd "${FILESDIR}/syslog-ng.confd" syslog-ng
keepdir /etc/syslog-ng/patterndb.d /var/lib/syslog-ng
find "${D}" -name '*.la' -delete || die
use python && python_optimize
}
pkg_postinst() {
# bug #355257
if ! has_version app-admin/logrotate ; then
elog "It is highly recommended that app-admin/logrotate be emerged to"
elog "manage the log files. ${PN} installs a file in /etc/logrotate.d"
elog "for logrotate to use."
fi
if use systemd; then
ewarn "The service file for systemd has changed to support multiple instances."
ewarn "To start the default instance issue:"
ewarn "# systemctl start syslog-ng@default"
fi
}

Binary file not shown.

@ -1,4 +1,4 @@
# Copyright 1999-2022 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@ -13,7 +13,7 @@ if [[ ${PV} == *9999* ]] ; then
else
SRC_URI="https://github.com/89luca89/${PN}/archive/${PV}.tar.gz
-> ${P}.tar.gz"
KEYWORDS="~amd64 ~x86"
KEYWORDS="amd64 ~x86"
fi
LICENSE="GPL-3" # GPL-3.0-only !

Binary file not shown.

@ -1,6 +1,3 @@
DIST vim-9.0.0099.tar.gz 16712565 BLAKE2B b3277ebda0bb40601d995935422006d1a266bb862be612e69abd057a7342d13457ded5cb4743cf43a09b7d2001438f5a426ba12c30947bb7c193188c5fc13cf7 SHA512 ca0dea7b7fd78cf9c7cd4656611d066540f9d81ab17bcb75c79f0e989bdcfb769940ea29f75445c554b159e9eb3b2c4f9d77448254c3e4e4457b1bf721936498
DIST vim-9.0.0828.tar.gz 16782339 BLAKE2B 6b997c1c828338d64a8b204a1e232676ec075834b1b7e74c2fc671e315f9bf6026b0c419ebb3c31e7ce58dbca23828ca11d866b2bfcb73f8a86fb31fa0d51b00 SHA512 03f93515039a2f275a8fe6b84bbac5875ffff17768ab3201e111eba4897a2485fe4ccfe238151f393334c7a6ea77eddd8898f0b816e26dbdb884f4e6bcbd2943
DIST vim-9.0.1000.tar.gz 16842747 BLAKE2B 85edab7d13daa3e84ef0aeb50e3e9bfd31f0634d8e480c105727b0c34318e0adf7f1276dcdac53df8fc416fd8dfb70377cd74ed570752a3e77f07a083fa6c113 SHA512 9d2b914a112948d77b92c8dcafc2f711a83c3fdaf35a28f7f606e77007b9320e2260a0f6b24fc875a817c33c012f077f89730b34e9f12d6f00795c5c806704c8
DIST vim-9.0.1157.tar.gz 16924574 BLAKE2B 0cdc6cf61f5abdaff0762b98550bfa5bae8f0485ddd0e9947a5fe52390f9da54fc8f5fdae767fb8f5d3ac2b441253917a80ae7f6092f67b69bdc9b6a630df8e2 SHA512 19240a9bcf5900766db42e2894b1bf7b849274711f17dc267671aacd867b334c3d30f39947dde7dd0245f289e9ad801eeb272f34a2ab15d01fac40bf71a54271
DIST vim-patches-vim-9.0.0049-patches.tar.gz 2743 BLAKE2B dff3e215b235e1cbc2c62b1af2d1414d10b794dbee9f5e7797fb3d34e00c2e065c339d4c82bf28aed53e0b5f2f8f1ee5c7ce69851cd63360788609bf144ac922 SHA512 7d5c64d674fa77048fdca7287072c0e488723133e254c10711dbadf750416c368725327ca9b76f332017bc70aa544a9baef671765eabf0d172d39921ffd7d942
DIST vim-patches-vim-9.0.1000-patches.tar.bz2 3245 BLAKE2B 3bf3d0e314cc3f96d5d9675de196a62c4c8a72645d56ef94b80768571c99cba5cc556442e3bd2dfa8818460fd851fe7bd1ae15999af7225fb271b81c43105843 SHA512 2883441a2001bf7ce89a7f0862f780b71cc0164c8fcb8dbdf7040e1bcbcf408d138d3d77f308aa54c762e9975fa5ec89cfceeabbf721344dfc938870a363667a

@ -1,28 +0,0 @@
https://github.com/vim/vim/pull/11496
From 360b569f86b851c37e32b7cfaec079823188ff27 Mon Sep 17 00:00:00 2001
From: Sam James <sam@gentoo.org>
Date: Fri, 4 Nov 2022 03:18:23 +0000
Subject: [PATCH] configure.ac: Fix -Wimplicit-int
Clang 16 makes -Wimplicit-int an error by default. Fixes errors like:
```
error: type specifier missing, defaults to 'int'; ISO C99 and later do not support implicit int [-Werror,-Wimplicit-int]
```
We already use proper declarations with every other test anyway, so
let's be consistent.
Signed-off-by: Sam James <sam@gentoo.org>
--- a/src/configure.ac
+++ b/src/configure.ac
@@ -3654,7 +3654,7 @@ dnl check if struct sigcontext is defined (used for SGI only)
AC_MSG_CHECKING(for struct sigcontext)
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([
#include <signal.h>
-test_sig()
+int test_sig()
{
struct sigcontext *scont;
scont = (struct sigcontext *)0;

@ -1,364 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
# Please bump with app-editors/vim-core and app-editors/vim
VIM_VERSION="9.0"
LUA_COMPAT=( lua5-{1..4} luajit )
PYTHON_COMPAT=( python3_{9..11} )
PYTHON_REQ_USE="threads(+)"
USE_RUBY="ruby27 ruby30 ruby31"
inherit vim-doc flag-o-matic xdg-utils bash-completion-r1 prefix lua-single python-single-r1 toolchain-funcs 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://gitweb.gentoo.org/proj/vim-patches.git/snapshot/vim-patches-vim-9.0.0049-patches.tar.gz"
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 lua motif netbeans nls perl python racket ruby selinux session sound tcl"
REQUIRED_USE="
lua? ( ${LUA_REQUIRED_USE} )
python? ( ${PYTHON_REQUIRED_USE} )
aqua? ( !motif )
"
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? (
motif? ( >=x11-libs/motif-2.3:0 )
!motif? (
x11-libs/gtk+:3
x11-libs/libXft
)
)
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"
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}/vim-patches-vim-9.0.0049-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'
# 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"
# --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
eapply_user
}
src_configure() {
# 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
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"
local 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)
)
if use lua; then
# -DLUA_COMPAT_OPENLIB=1 is required to enable the
# deprecated (in 5.1) luaL_openlib API (#874690)
use lua_single_target_lua5-1 && append-cppflags -DLUA_COMPAT_OPENLIB=1
myconf+=(
--enable-luainterp
$(use_with lua_single_target_luajit luajit)
--with-lua-prefix="${EPREFIX}/usr"
)
fi
# Default is gtk unless aqua or motif are enabled
echo ; echo
if use aqua; then
einfo "Building gvim with the Carbon GUI"
myconf+=(
--enable-darwin
--enable-gui=carbon
)
elif use motif; then
einfo "Building gvim with the MOTIF GUI"
myconf+=( --enable-gui=motif )
else
myconf+=( --enable-gtk3-check )
einfo "Building gvim with the gtk+-3 GUI"
myconf+=( --enable-gui=gtk3 )
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
if tc-is-cross-compiler ; then
export vim_cv_getcwd_broken=no \
vim_cv_memmove_handles_overlap=yes \
vim_cv_stat_ignores_slash=yes \
vim_cv_terminfo=yes \
vim_cv_toupper_broken=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() {
ebegin "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,369 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
# Please bump with app-editors/vim-core and app-editors/vim
VIM_VERSION="9.0"
LUA_COMPAT=( lua5-{1..4} luajit )
PYTHON_COMPAT=( python3_{9..11} )
PYTHON_REQ_USE="threads(+)"
USE_RUBY="ruby27 ruby30 ruby31"
inherit bash-completion-r1 flag-o-matic lua-single prefix python-single-r1 ruby-single toolchain-funcs vim-doc 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://gitweb.gentoo.org/proj/vim-patches.git/snapshot/vim-patches-vim-9.0.0049-patches.tar.gz"
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 lua minimal motif netbeans nls perl python racket ruby selinux session sound tcl"
REQUIRED_USE="
lua? ( ${LUA_REQUIRED_USE} )
python? ( ${PYTHON_REQUIRED_USE} )
aqua? ( !motif )
"
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? (
motif? ( >=x11-libs/motif-2.3:0 )
!motif? (
x11-libs/gtk+:3
x11-libs/libXft
)
)
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 )
"
PDEPEND="!minimal? ( app-vim/gentoo-syntax )"
# various failures (bugs #630042 and #682320)
RESTRICT="test"
PATCHES=(
"${FILESDIR}"/vim-0.0.0828-configure-clang16.patch
)
pkg_setup() {
# people with broken alphabets run into trouble. bug 82186.
unset LANG LC_ALL
export LC_COLLATE="C"
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}/vim-patches-vim-9.0.0049-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'
# 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"
# --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
eapply_user
}
src_configure() {
# 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
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"
local 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)
)
if use lua; then
# -DLUA_COMPAT_OPENLIB=1 is required to enable the
# deprecated (in 5.1) luaL_openlib API (#874690)
use lua_single_target_lua5-1 && append-cppflags -DLUA_COMPAT_OPENLIB=1
myconf+=(
--enable-luainterp
$(use_with lua_single_target_luajit luajit)
--with-lua-prefix="${EPREFIX}/usr"
)
fi
# Default is gtk unless aqua or motif are enabled
echo ; echo
if use aqua; then
einfo "Building gvim with the Carbon GUI"
myconf+=(
--enable-darwin
--enable-gui=carbon
)
elif use motif; then
einfo "Building gvim with the MOTIF GUI"
myconf+=( --enable-gui=motif )
else
myconf+=( --enable-gtk3-check )
einfo "Building gvim with the gtk+-3 GUI"
myconf+=( --enable-gui=gtk3 )
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
if tc-is-cross-compiler ; then
export vim_cv_getcwd_broken=no \
vim_cv_memmove_handles_overlap=yes \
vim_cv_stat_ignores_slash=yes \
vim_cv_terminfo=yes \
vim_cv_toupper_broken=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() {
ebegin "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,4 +1,4 @@
# Copyright 1999-2022 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@ -16,7 +16,7 @@ if [[ ${PV} == 9999 ]]; then
EGIT_REPO_URI="https://github.com/neovim/neovim.git"
else
SRC_URI="https://github.com/neovim/neovim/archive/v${PV}.tar.gz -> ${P}.tar.gz"
KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86 ~x64-macos"
KEYWORDS="amd64 ~arm ~arm64 ~riscv ~x86 ~x64-macos"
fi
LICENSE="Apache-2.0 vim"

@ -1,6 +1,3 @@
DIST vim-9.0.0099.tar.gz 16712565 BLAKE2B b3277ebda0bb40601d995935422006d1a266bb862be612e69abd057a7342d13457ded5cb4743cf43a09b7d2001438f5a426ba12c30947bb7c193188c5fc13cf7 SHA512 ca0dea7b7fd78cf9c7cd4656611d066540f9d81ab17bcb75c79f0e989bdcfb769940ea29f75445c554b159e9eb3b2c4f9d77448254c3e4e4457b1bf721936498
DIST vim-9.0.0828.tar.gz 16782339 BLAKE2B 6b997c1c828338d64a8b204a1e232676ec075834b1b7e74c2fc671e315f9bf6026b0c419ebb3c31e7ce58dbca23828ca11d866b2bfcb73f8a86fb31fa0d51b00 SHA512 03f93515039a2f275a8fe6b84bbac5875ffff17768ab3201e111eba4897a2485fe4ccfe238151f393334c7a6ea77eddd8898f0b816e26dbdb884f4e6bcbd2943
DIST vim-9.0.1000.tar.gz 16842747 BLAKE2B 85edab7d13daa3e84ef0aeb50e3e9bfd31f0634d8e480c105727b0c34318e0adf7f1276dcdac53df8fc416fd8dfb70377cd74ed570752a3e77f07a083fa6c113 SHA512 9d2b914a112948d77b92c8dcafc2f711a83c3fdaf35a28f7f606e77007b9320e2260a0f6b24fc875a817c33c012f077f89730b34e9f12d6f00795c5c806704c8
DIST vim-9.0.1157.tar.gz 16924574 BLAKE2B 0cdc6cf61f5abdaff0762b98550bfa5bae8f0485ddd0e9947a5fe52390f9da54fc8f5fdae767fb8f5d3ac2b441253917a80ae7f6092f67b69bdc9b6a630df8e2 SHA512 19240a9bcf5900766db42e2894b1bf7b849274711f17dc267671aacd867b334c3d30f39947dde7dd0245f289e9ad801eeb272f34a2ab15d01fac40bf71a54271
DIST vim-patches-vim-9.0.0049-patches.tar.gz 2743 BLAKE2B dff3e215b235e1cbc2c62b1af2d1414d10b794dbee9f5e7797fb3d34e00c2e065c339d4c82bf28aed53e0b5f2f8f1ee5c7ce69851cd63360788609bf144ac922 SHA512 7d5c64d674fa77048fdca7287072c0e488723133e254c10711dbadf750416c368725327ca9b76f332017bc70aa544a9baef671765eabf0d172d39921ffd7d942
DIST vim-patches-vim-9.0.1000-patches.tar.bz2 3245 BLAKE2B 3bf3d0e314cc3f96d5d9675de196a62c4c8a72645d56ef94b80768571c99cba5cc556442e3bd2dfa8818460fd851fe7bd1ae15999af7225fb271b81c43105843 SHA512 2883441a2001bf7ce89a7f0862f780b71cc0164c8fcb8dbdf7040e1bcbcf408d138d3d77f308aa54c762e9975fa5ec89cfceeabbf721344dfc938870a363667a

@ -1,28 +0,0 @@
https://github.com/vim/vim/pull/11496
From 360b569f86b851c37e32b7cfaec079823188ff27 Mon Sep 17 00:00:00 2001
From: Sam James <sam@gentoo.org>
Date: Fri, 4 Nov 2022 03:18:23 +0000
Subject: [PATCH] configure.ac: Fix -Wimplicit-int
Clang 16 makes -Wimplicit-int an error by default. Fixes errors like:
```
error: type specifier missing, defaults to 'int'; ISO C99 and later do not support implicit int [-Werror,-Wimplicit-int]
```
We already use proper declarations with every other test anyway, so
let's be consistent.
Signed-off-by: Sam James <sam@gentoo.org>
--- a/src/configure.ac
+++ b/src/configure.ac
@@ -3654,7 +3654,7 @@ dnl check if struct sigcontext is defined (used for SGI only)
AC_MSG_CHECKING(for struct sigcontext)
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([
#include <signal.h>
-test_sig()
+int test_sig()
{
struct sigcontext *scont;
scont = (struct sigcontext *)0;

@ -1,234 +0,0 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
# Please bump with app-editors/vim and app-editors/gvim
VIM_VERSION="9.0"
inherit 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://gitweb.gentoo.org/proj/vim-patches.git/snapshot/vim-patches-vim-9.0.0049-patches.tar.gz"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~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"
# ncurses is only needed by ./configure, so no subslot operator required
DEPEND=">=sys-libs/ncurses-5.2-r2:0"
BDEPEND="sys-devel/autoconf"
# Avoid icon file collision, bug #673880
RDEPEND="!<app-editors/vim-8.2.4328-r1"
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"
}
src_prepare() {
if [[ ${PV} != 9999* ]] ; then
# Gentoo patches to fix runtime issues, cross-compile errors, etc
eapply "${WORKDIR}"/vim-patches-vim-9.0.0049-patches
eapply "${FILESDIR}"/vim-9.0-fix-create-timer-for-cros-compiling.patch
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 || die
echo '#define SYS_GVIMRC_FILE "'${EPREFIX}'/etc/vim/gvimrc"' >> "${S}"/src/feature.h || die
# 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'
# 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"
eapply_user
}
src_configure() {
# 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
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"
local myconf=(
--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)
)
# Keep Gentoo Prefix env contained within the EPREFIX
use prefix && myconf+=( --without-local-dir )
if tc-is-cross-compiler ; then
export vim_cv_getcwd_broken=no \
vim_cv_memmove_handles_overlap=yes \
vim_cv_stat_ignores_slash=yes \
vim_cv_terminfo=yes \
vim_cv_toupper_broken=no
fi
econf "${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-r6 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.
rm -rv "${ED}${vimfiles}"/{compiler,doc,ftplugin,indent} || die
rm -rv "${ED}${vimfiles}"/{macros,print,tools,tutor} || die
rm -v "${ED}"/usr/bin/vimtutor || die
for f in "${ED}${vimfiles}"/colors/*.vim; do
if [[ ${f} != */@(default).vim ]] ; then
printf '%s\0' "${f}"
fi
done | xargs -0 rm -f || die
for f in "${ED}${vimfiles}"/syntax/*.vim; do
if [[ ${f} != */@(conf|crontab|fstab|inittab|resolv|sshdconfig|syntax|nosyntax|synload).vim ]] ; then
printf '%s\0' "${f}"
fi
done | xargs -0 rm -f || die
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
}

@ -1,234 +0,0 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
# Please bump with app-editors/vim and app-editors/gvim
VIM_VERSION="9.0"
inherit bash-completion-r1 desktop flag-o-matic prefix toolchain-funcs vim-doc 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://gitweb.gentoo.org/proj/vim-patches.git/snapshot/vim-patches-vim-9.0.0049-patches.tar.gz"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~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"
# ncurses is only needed by ./configure, so no subslot operator required
DEPEND=">=sys-libs/ncurses-5.2-r2:0"
BDEPEND="sys-devel/autoconf"
PATCHES=(
"${FILESDIR}"/vim-0.0.0828-configure-clang16.patch
)
pkg_setup() {
# people with broken alphabets run into trouble. bug #82186.
unset LANG LC_ALL
export LC_COLLATE="C"
}
src_prepare() {
if [[ ${PV} != 9999* ]] ; then
# Gentoo patches to fix runtime issues, cross-compile errors, etc
eapply "${WORKDIR}"/vim-patches-vim-9.0.0049-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 || die
echo '#define SYS_GVIMRC_FILE "'${EPREFIX}'/etc/vim/gvimrc"' >> "${S}"/src/feature.h || die
# 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'
# 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"
eapply_user
}
src_configure() {
# 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
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"
local myconf=(
--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)
)
# Keep Gentoo Prefix env contained within the EPREFIX
use prefix && myconf+=( --without-local-dir )
if tc-is-cross-compiler ; then
export vim_cv_getcwd_broken=no \
vim_cv_memmove_handles_overlap=yes \
vim_cv_stat_ignores_slash=yes \
vim_cv_terminfo=yes \
vim_cv_toupper_broken=no
fi
econf "${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-r6 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.
rm -rv "${ED}${vimfiles}"/{compiler,doc,ftplugin,indent} || die
rm -rv "${ED}${vimfiles}"/{macros,print,tools,tutor} || die
rm -v "${ED}"/usr/bin/vimtutor || die
for f in "${ED}${vimfiles}"/colors/*.vim; do
if [[ ${f} != */@(default).vim ]] ; then
printf '%s\0' "${f}"
fi
done | xargs -0 rm -f || die
for f in "${ED}${vimfiles}"/syntax/*.vim; do
if [[ ${f} != */@(conf|crontab|fstab|inittab|resolv|sshdconfig|syntax|nosyntax|synload).vim ]] ; then
printf '%s\0' "${f}"
fi
done | xargs -0 rm -f || die
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
}

@ -1,6 +1,3 @@
DIST vim-9.0.0099.tar.gz 16712565 BLAKE2B b3277ebda0bb40601d995935422006d1a266bb862be612e69abd057a7342d13457ded5cb4743cf43a09b7d2001438f5a426ba12c30947bb7c193188c5fc13cf7 SHA512 ca0dea7b7fd78cf9c7cd4656611d066540f9d81ab17bcb75c79f0e989bdcfb769940ea29f75445c554b159e9eb3b2c4f9d77448254c3e4e4457b1bf721936498
DIST vim-9.0.0828.tar.gz 16782339 BLAKE2B 6b997c1c828338d64a8b204a1e232676ec075834b1b7e74c2fc671e315f9bf6026b0c419ebb3c31e7ce58dbca23828ca11d866b2bfcb73f8a86fb31fa0d51b00 SHA512 03f93515039a2f275a8fe6b84bbac5875ffff17768ab3201e111eba4897a2485fe4ccfe238151f393334c7a6ea77eddd8898f0b816e26dbdb884f4e6bcbd2943
DIST vim-9.0.1000.tar.gz 16842747 BLAKE2B 85edab7d13daa3e84ef0aeb50e3e9bfd31f0634d8e480c105727b0c34318e0adf7f1276dcdac53df8fc416fd8dfb70377cd74ed570752a3e77f07a083fa6c113 SHA512 9d2b914a112948d77b92c8dcafc2f711a83c3fdaf35a28f7f606e77007b9320e2260a0f6b24fc875a817c33c012f077f89730b34e9f12d6f00795c5c806704c8
DIST vim-9.0.1157.tar.gz 16924574 BLAKE2B 0cdc6cf61f5abdaff0762b98550bfa5bae8f0485ddd0e9947a5fe52390f9da54fc8f5fdae767fb8f5d3ac2b441253917a80ae7f6092f67b69bdc9b6a630df8e2 SHA512 19240a9bcf5900766db42e2894b1bf7b849274711f17dc267671aacd867b334c3d30f39947dde7dd0245f289e9ad801eeb272f34a2ab15d01fac40bf71a54271
DIST vim-patches-vim-9.0.0049-patches.tar.gz 2743 BLAKE2B dff3e215b235e1cbc2c62b1af2d1414d10b794dbee9f5e7797fb3d34e00c2e065c339d4c82bf28aed53e0b5f2f8f1ee5c7ce69851cd63360788609bf144ac922 SHA512 7d5c64d674fa77048fdca7287072c0e488723133e254c10711dbadf750416c368725327ca9b76f332017bc70aa544a9baef671765eabf0d172d39921ffd7d942
DIST vim-patches-vim-9.0.1000-patches.tar.bz2 3245 BLAKE2B 3bf3d0e314cc3f96d5d9675de196a62c4c8a72645d56ef94b80768571c99cba5cc556442e3bd2dfa8818460fd851fe7bd1ae15999af7225fb271b81c43105843 SHA512 2883441a2001bf7ce89a7f0862f780b71cc0164c8fcb8dbdf7040e1bcbcf408d138d3d77f308aa54c762e9975fa5ec89cfceeabbf721344dfc938870a363667a

@ -1,28 +0,0 @@
https://github.com/vim/vim/pull/11496
From 360b569f86b851c37e32b7cfaec079823188ff27 Mon Sep 17 00:00:00 2001
From: Sam James <sam@gentoo.org>
Date: Fri, 4 Nov 2022 03:18:23 +0000
Subject: [PATCH] configure.ac: Fix -Wimplicit-int
Clang 16 makes -Wimplicit-int an error by default. Fixes errors like:
```
error: type specifier missing, defaults to 'int'; ISO C99 and later do not support implicit int [-Werror,-Wimplicit-int]
```
We already use proper declarations with every other test anyway, so
let's be consistent.
Signed-off-by: Sam James <sam@gentoo.org>
--- a/src/configure.ac
+++ b/src/configure.ac
@@ -3654,7 +3654,7 @@ dnl check if struct sigcontext is defined (used for SGI only)
AC_MSG_CHECKING(for struct sigcontext)
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([
#include <signal.h>
-test_sig()
+int test_sig()
{
struct sigcontext *scont;
scont = (struct sigcontext *)0;

@ -1,28 +0,0 @@
From bba26c9ed9d4ddc82afd0343f145dc9e14b91498 Mon Sep 17 00:00:00 2001
From: Varsha Teratipally <teratipally@google.com>
Date: Tue, 2 Aug 2022 22:18:29 +0000
Subject: [PATCH] Configure check for timer_create may give wrong error.
Give a warning instead of an error
Partial solution from github.com/vim/vim/commit/5f6cae8b8a49c435556e32f84d067cd0b4d28e4c
---
src/configure.ac | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/configure.ac b/src/configure.ac
index e8522ec05..41f41dee3 100644
--- a/src/configure.ac
+++ b/src/configure.ac
@@ -3850,7 +3850,7 @@ static void set_flag(union sigval sv) {}
])],
vim_cv_timer_create=yes,
vim_cv_timer_create=no),
- AC_MSG_ERROR(cross-compiling: please set 'vim_cv_timer_create')
+ AC_MSG_WARN(cross-compiling: please set 'vim_cv_timer_create')
)]
)
--

@ -1,371 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
# Please bump with app-editors/vim-core and app-editors/gvim
VIM_VERSION="9.0"
LUA_COMPAT=( lua5-{1..4} luajit )
PYTHON_COMPAT=( python3_{9..11} )
PYTHON_REQ_USE="threads(+)"
USE_RUBY="ruby27 ruby30 ruby31"
inherit vim-doc flag-o-matic bash-completion-r1 lua-single python-single-r1 ruby-single toolchain-funcs 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://gitweb.gentoo.org/proj/vim-patches.git/snapshot/vim-patches-vim-9.0.0049-patches.tar.gz"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~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)
)
~app-editors/vim-core-${PV}
!<app-editors/vim-core-8.2.4328-r1
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"
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}"/vim-patches-vim-9.0.0049-patches
eapply "${FILESDIR}"/vim-9.0-fix-create-timer-for-cros-compiling.patch
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'
# 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"
eapply_user
}
src_configure() {
# 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
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
local myconf=()
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
# -DLUA_COMPAT_OPENLIB=1 is required to enable the
# deprecated (in 5.1) luaL_openlib API (#874690)
use lua_single_target_lua5-1 && append-cppflags -DLUA_COMPAT_OPENLIB=1
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 )
if tc-is-cross-compiler ; then
export vim_cv_getcwd_broken=no \
vim_cv_memmove_handles_overlap=yes \
vim_cv_stat_ignores_slash=yes \
vim_cv_terminfo=yes \
vim_cv_toupper_broken=no
fi
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
# Arch and opensuse seem to do this and at this point, I'm willing
# to try anything to avoid random test hangs!
export TERM=xterm
# 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.
# - Test_fuzzy_completion_env
# Too sensitive to leaked environment variables.
# - Test_term_mouse_multiple_clicks_to_select_mode
# Hangs.
# - Test_spelldump
# Hangs.
export TEST_SKIP_PAT='\(Test_expand_star_star\|Test_exrc\|Test_job_tty_in_out\|Test_spelldump_bang\|Test_fuzzy_completion_env\|Test_term_mouse_multiple_clicks_to_select_mode\|Test_spelldump\)'
emake -j1 -C src/testdir nongui
}
# Call eselect vi update with --if-unset
# to respect user's choice (bug #187449)
eselect_vi_update() {
ebegin "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
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
}

@ -1,374 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
# Please bump with app-editors/vim-core and app-editors/gvim
VIM_VERSION="9.0"
LUA_COMPAT=( lua5-{1..4} luajit )
PYTHON_COMPAT=( python3_{9..11} )
PYTHON_REQ_USE="threads(+)"
USE_RUBY="ruby27 ruby30 ruby31"
inherit vim-doc flag-o-matic bash-completion-r1 lua-single python-single-r1 ruby-single toolchain-funcs 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://gitweb.gentoo.org/proj/vim-patches.git/snapshot/vim-patches-vim-9.0.0049-patches.tar.gz"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~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)
)
~app-editors/vim-core-${PV}
!<app-editors/vim-core-8.2.4328-r1
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 )
"
PDEPEND="!minimal? ( app-vim/gentoo-syntax )"
PATCHES=(
"${FILESDIR}"/vim-0.0.0828-configure-clang16.patch
)
pkg_setup() {
# people with broken alphabets run into trouble. bug #82186.
unset LANG LC_ALL
export LC_COLLATE="C"
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}"/vim-patches-vim-9.0.0049-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'
# 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"
eapply_user
}
src_configure() {
# 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
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
local myconf=()
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
# -DLUA_COMPAT_OPENLIB=1 is required to enable the
# deprecated (in 5.1) luaL_openlib API (#874690)
use lua_single_target_lua5-1 && append-cppflags -DLUA_COMPAT_OPENLIB=1
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 )
if tc-is-cross-compiler ; then
export vim_cv_getcwd_broken=no \
vim_cv_memmove_handles_overlap=yes \
vim_cv_stat_ignores_slash=yes \
vim_cv_terminfo=yes \
vim_cv_toupper_broken=no
fi
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
# Arch and opensuse seem to do this and at this point, I'm willing
# to try anything to avoid random test hangs!
export TERM=xterm
# 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.
# - Test_fuzzy_completion_env
# Too sensitive to leaked environment variables.
# - Test_term_mouse_multiple_clicks_to_select_mode
# Hangs.
# - Test_spelldump
# Hangs.
export TEST_SKIP_PAT='\(Test_expand_star_star\|Test_exrc\|Test_job_tty_in_out\|Test_spelldump_bang\|Test_fuzzy_completion_env\|Test_term_mouse_multiple_clicks_to_select_mode\|Test_spelldump\)'
emake -j1 -C src/testdir nongui
}
# Call eselect vi update with --if-unset
# to respect user's choice (bug #187449)
eselect_vi_update() {
ebegin "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
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,4 +1,4 @@
# Copyright 1999-2022 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@ -14,7 +14,7 @@ SRC_URI="https://github.com/flatwhatson/${PN}/archive/${PV}.tar.gz
LICENSE="GPL-3+"
SLOT="0"
KEYWORDS="~amd64"
KEYWORDS="amd64"
BDEPEND="
app-emacs/flycheck

@ -1,4 +1,4 @@
# Copyright 1999-2022 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@ -15,7 +15,7 @@ S="${WORKDIR}"/chez-${PV}
LICENSE="BSD"
SLOT="0"
KEYWORDS="~amd64 ~x86"
KEYWORDS="amd64 ~x86"
BDEPEND="app-emacs/geiser"
RDEPEND="

@ -1,4 +1,4 @@
# Copyright 1999-2022 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@ -15,7 +15,7 @@ S="${WORKDIR}"/chicken-${PV}
LICENSE="BSD"
SLOT="0"
KEYWORDS="~amd64 ~x86"
KEYWORDS="amd64 ~x86"
BDEPEND="app-emacs/geiser"
RDEPEND="

@ -1,4 +1,4 @@
# Copyright 1999-2022 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@ -15,7 +15,7 @@ S="${WORKDIR}"/gambit-${PV}
LICENSE="BSD"
SLOT="0"
KEYWORDS="~amd64 ~x86"
KEYWORDS="amd64 ~x86"
BDEPEND="app-emacs/geiser"
RDEPEND="

@ -1,4 +1,4 @@
# Copyright 1999-2022 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@ -15,7 +15,7 @@ S="${WORKDIR}"/guile-${PV}
LICENSE="BSD"
SLOT="0"
KEYWORDS="~amd64 ~x86"
KEYWORDS="amd64 ~x86"
BDEPEND="app-emacs/geiser"
RDEPEND="

@ -1,4 +1,4 @@
# Copyright 1999-2022 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@ -15,7 +15,7 @@ S="${WORKDIR}"/mit-${PV}
LICENSE="BSD"
SLOT="0"
KEYWORDS="~amd64"
KEYWORDS="amd64"
RDEPEND="
app-emacs/geiser

@ -1,4 +1,4 @@
# Copyright 1999-2022 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@ -13,7 +13,7 @@ SRC_URI="https://gitlab.com/emacs-geiser/${PN}/-/archive/${PV}/${P}.tar.bz2"
LICENSE="BSD"
SLOT="0"
KEYWORDS="~amd64 ~x86"
KEYWORDS="amd64 ~x86"
RDEPEND="app-emacs/transient"
BDEPEND="

Binary file not shown.

@ -1,5 +1,7 @@
DIST dxvk-1.10.3.tar.gz 1204407 BLAKE2B 3507ffe4abf9c45f2a138b05e7cf706322a6bf3d2e9ae86a9d6216b206c09f79eac696ee7dfe33d0bef55e727f51301c36eb89bfa3b3f429d7d5fafc1eebdcb4 SHA512 8995b231b3f3650beda04c01f30186d10a373075a4774b4ecbfb3bbeb4de99c57555f1db0611e5c61c6a411a7215e0faf228f9861f6b7adae6fc365e8056f7e3
DIST dxvk-2.0.tar.gz 943397 BLAKE2B 7d59050e8ac3f9be311d11323cc0057d84c3b730360fe9e064ff4a5e2db5bffea5bae3214da366c60295ec5f1577ab08e2776274c9aaff7a7de1b9f2cefa836a SHA512 98537bdec2b5e4f2ead5b93ab49db717e0706fe771a82a6ef1e5b5792c1bdd3f417cd6b6b2deadb1397b8a0740445fa88b9fb6c1f73510cc5c0e7ae35d65bcac
DIST dxvk-2.1.tar.gz 960078 BLAKE2B ad8ea7eb000237914d9116a8fbfde13fde3dc00d428ebfe41aacb9373c6509112545ef1942b4cbc96a18338c3d07c2c494d0454236721e220ee5f5731a5c27b9 SHA512 10d919ba2612f665a20f7c72605967adeea94d8414bee45878f9df42ad263fa5ebfc7a76319173dce054ffe9b9cdc919ff7a136042f3f4e64142844c943bdef7
DIST dxvk-libdisplay-info-d39344f466.tar.bz2 81232 BLAKE2B af76ccd3c40bc953008bc30d222c72f90bdc77f47f767b6e7423efaa0ec89d746396a755160b5470e219a15a0aa392be6066aab12921b45a1adb35d88132cd97 SHA512 79b4bf325cefc39bc587233bd82ff64c927ca5f829b8172d213c3d47af725c8dc7fe33576a8e96a869075ee2a8f00d165f3aa9e6c472e862a47e5c800b2b3315
DIST dxvk-spirv-headers-0bcc624926.tar.gz 437771 BLAKE2B 08815e36ad99b84777e38ad0c5616b6608a552f993e7f67433f2b8e20de81e9bce41420ac5998f5b67bca70a92ce70aed91b238990bd431c7b97070dfb0c5a60 SHA512 5995cf75d5605d41e9643bca81c195ef5aaa17d596e0282807f6fa8f8c494f7b63a41d611c535ae43dc3d609436aabef1e0d89626f37e6f20bad17b5e122e32c
DIST dxvk-vulkan-headers-98f440ce68.tar.gz 1691979 BLAKE2B bf6fd288f16df7adcb5cebeb6e13713db1c26a0b833dead2fb522227861abc60b2d0cda8e3f46f8e89cccb629e01081ba27763989ad6fd336c60a475b198c1c8 SHA512 69238d37d0af0162e0fd68094cd2fa9baa320497d34a9de491dea086c23291d0815b51e89218b1f0ee2b3314cbc8ac1809d6edb15ca51fcb282fe1e2b39a1a77
DIST setup_dxvk.sh 4631 BLAKE2B 25270e1f6dfd446b1d124eac3bd19da8bc770527d02d987949fc3ae0bead07866dafa25f77a90b9a408413a724354a29a4a156ff5c9dc75e26b66e079824ec86 SHA512 257fd84e29a7037f04a1a2a506502c71d527af58f8c84d8c3dfb64597ebdc41c3dca362eaf20ab4bc1982b76428c1f843815d56a6e1369d072e0009e270cb121

@ -0,0 +1,171 @@
# Copyright 2022-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{9..11} )
MULTILIB_COMPAT=( abi_x86_{32,64} )
inherit flag-o-matic meson-multilib python-any-r1
if [[ ${PV} == 9999 ]]; then
inherit git-r3
EGIT_REPO_URI="https://github.com/doitsujin/dxvk.git"
EGIT_SUBMODULES=(
# picky about headers and is cross-compiled making -I/usr/include troublesome
include/{spirv,vulkan}
subprojects/libdisplay-info
)
else
HASH_SPIRV=0bcc624926a25a2a273d07877fd25a6ff5ba1cfb
HASH_VULKAN=98f440ce6868c94f5ec6e198cc1adda4760e8849
HASH_DISPLAYINFO=d39344f466caae0495ebac4d49b03a886d83ba3a
SRC_URI="
https://github.com/doitsujin/dxvk/archive/refs/tags/v${PV}.tar.gz
-> ${P}.tar.gz
https://github.com/KhronosGroup/SPIRV-Headers/archive/${HASH_SPIRV}.tar.gz
-> ${PN}-spirv-headers-${HASH_SPIRV::10}.tar.gz
https://github.com/KhronosGroup/Vulkan-Headers/archive/${HASH_VULKAN}.tar.gz
-> ${PN}-vulkan-headers-${HASH_VULKAN::10}.tar.gz
https://gitlab.freedesktop.org/JoshuaAshton/libdisplay-info/-/archive/${HASH_DISPLAYINFO}/${PN}-libdisplay-info-${HASH_DISPLAYINFO::10}.tar.bz2"
KEYWORDS="-* ~amd64 ~x86"
fi
# setup_dxvk.sh is no longer provided, fetch old until a better solution
SRC_URI+=" https://raw.githubusercontent.com/doitsujin/dxvk/cd21cd7fa3b0df3e0819e21ca700b7627a838d69/setup_dxvk.sh"
DESCRIPTION="Vulkan-based implementation of D3D9, D3D10 and D3D11 for Linux / Wine"
HOMEPAGE="https://github.com/doitsujin/dxvk/"
LICENSE="ZLIB Apache-2.0 MIT"
SLOT="0"
IUSE="+abi_x86_32 crossdev-mingw +d3d9 +d3d10 +d3d11 debug +dxgi"
REQUIRED_USE="
|| ( d3d9 d3d10 d3d11 dxgi )
d3d10? ( d3d11 )
d3d11? ( dxgi )"
BDEPEND="
${PYTHON_DEPS}
dev-util/glslang
!crossdev-mingw? ( dev-util/mingw64-toolchain[${MULTILIB_USEDEP}] )"
pkg_pretend() {
[[ ${MERGE_TYPE} == binary ]] && return
if use crossdev-mingw && [[ ! -v MINGW_BYPASS ]]; then
local tool=-w64-mingw32-g++
for tool in $(usev abi_x86_64 x86_64${tool}) $(usev abi_x86_32 i686${tool}); do
if ! type -P ${tool} >/dev/null; then
eerror "With USE=crossdev-mingw, it is necessary to setup the mingw toolchain."
eerror "For instructions, please see: https://wiki.gentoo.org/wiki/Mingw"
use abi_x86_32 && use abi_x86_64 &&
eerror "Also, with USE=abi_x86_32, will need both i686 and x86_64 toolchains."
die "USE=crossdev-mingw is set but ${tool} was not found"
elif [[ ! $(LC_ALL=C ${tool} -v 2>&1) =~ "Thread model: posix" ]]; then
eerror "${PN} requires GCC to be built with --enable-threads=posix"
eerror "Please see: https://wiki.gentoo.org/wiki/Mingw#POSIX_threads_for_Windows"
die "USE=crossdev-mingw is set but ${tool} does not use POSIX threads"
fi
done
fi
}
src_prepare() {
if [[ ${PV} != 9999 ]]; then
rmdir include/{spirv,vulkan} subprojects/libdisplay-info || die
mv ../SPIRV-Headers-${HASH_SPIRV} include/spirv || die
mv ../Vulkan-Headers-${HASH_VULKAN} include/vulkan || die
mv ../libdisplay-info-${HASH_DISPLAYINFO} subprojects/libdisplay-info || die
fi
default
sed "/^basedir=/s|=.*|=${EPREFIX}/usr/lib/${PN}|" \
"${DISTDIR}"/setup_dxvk.sh > setup_dxvk.sh || die
}
src_configure() {
use crossdev-mingw || PATH=${BROOT}/usr/lib/mingw64-toolchain/bin:${PATH}
# AVX has a history of causing issues with this package, disable for safety
# https://bugs.winehq.org/show_bug.cgi?id=43516
# https://bugs.winehq.org/show_bug.cgi?id=45289
append-flags -mno-avx
if [[ ${CHOST} != *-mingw* ]]; then
if [[ ! -v MINGW_BYPASS ]]; then
unset AR CC CXX RC STRIP
filter-flags '-fstack-clash-protection' #758914
filter-flags '-fstack-protector*' #870136
filter-flags '-fuse-ld=*'
filter-flags '-mfunction-return=thunk*' #878849
fi
CHOST_amd64=x86_64-w64-mingw32
CHOST_x86=i686-w64-mingw32
CHOST=$(usex x86 ${CHOST_x86} ${CHOST_amd64})
strip-unsupported-flags
fi
multilib-minimal_src_configure
}
multilib_src_configure() {
# multilib's ${CHOST_amd64}-gcc -m32 is unusable with crossdev,
# unset again so meson eclass will set ${CHOST}-gcc + others
use crossdev-mingw && [[ ! -v MINGW_BYPASS ]] && unset AR CC CXX RC STRIP
local emesonargs=(
--prefix="${EPREFIX}"/usr/lib/${PN}
--{bin,lib}dir=x${MULTILIB_ABI_FLAG: -2}
$(meson_use {,enable_}d3d9)
$(meson_use {,enable_}d3d10)
$(meson_use {,enable_}d3d11)
$(meson_use {,enable_}dxgi)
$(usev !debug --strip) # portage won't strip .dll, so allow it here
)
meson_src_configure
}
multilib_src_install_all() {
dobin setup_dxvk.sh
dodoc README.md dxvk.conf
find "${ED}" -type f -name '*.a' -delete || die
}
pkg_preinst() {
[[ -e ${EROOT}/usr/$(get_libdir)/dxvk/d3d11.dll ]] && DXVK_HAD_OVERLAY=
}
pkg_postinst() {
if [[ ! ${REPLACING_VERSIONS} ]]; then
elog "To enable ${PN} on a wine prefix, you can run the following command:"
elog
elog " WINEPREFIX=/path/to/prefix setup_dxvk.sh install --symlink"
elog
elog "See ${EROOT}/usr/share/doc/${PF}/README.md* for details."
elog "Note: setup_dxvk.sh is unofficially temporarily provided as it was"
elog "removed upstream, handling may change in the future."
elif [[ -v DXVK_HAD_OVERLAY ]]; then
# temporary warning until this version is more widely used
elog "Gentoo's main repo ebuild for ${PN} uses different paths than most overlays."
elog "If you were using symbolic links in wine prefixes it may be necessary to"
elog "refresh them by re-running the command:"
elog
elog " WINEPREFIX=/path/to/prefix setup_dxvk.sh install --symlink"
elog
elog "Also, if you were using /etc/${PN}.conf, ${PN} is no longer patched to load"
elog "it. See ${EROOT}/usr/share/doc/${PF}/README.md* for handling configs."
fi
if [[ ! ${REPLACING_VERSIONS##* } ]] ||
ver_test ${REPLACING_VERSIONS##* } -lt 2.0
then
elog
elog ">=${PN}-2.0 requires drivers and Wine to support vulkan-1.3, meaning:"
elog ">=wine-*-7.1 (or >=wine-proton-7.0), and >=mesa-22.0 (or >=nvidia-drivers-510)"
elog "For details, see: https://github.com/doitsujin/dxvk/wiki/Driver-support"
fi
}

@ -1,10 +1,11 @@
# Copyright 2022 Gentoo Authors
# Copyright 2022-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{9..11} )
MULTILIB_COMPAT=( abi_x86_{32,64} )
inherit flag-o-matic meson-multilib
inherit flag-o-matic meson-multilib python-any-r1
if [[ ${PV} == 9999 ]]; then
inherit git-r3
@ -17,13 +18,15 @@ if [[ ${PV} == 9999 ]]; then
else
HASH_SPIRV=0bcc624926a25a2a273d07877fd25a6ff5ba1cfb
HASH_VULKAN=98f440ce6868c94f5ec6e198cc1adda4760e8849
HASH_DISPLAYINFO=d39344f466caae0495ebac4d49b03a886d83ba3a
SRC_URI="
https://github.com/doitsujin/dxvk/archive/refs/tags/v${PV}.tar.gz
-> ${P}.tar.gz
https://github.com/KhronosGroup/SPIRV-Headers/archive/${HASH_SPIRV}.tar.gz
-> ${PN}-spirv-headers-${HASH_SPIRV::10}.tar.gz
https://github.com/KhronosGroup/Vulkan-Headers/archive/${HASH_VULKAN}.tar.gz
-> ${PN}-vulkan-headers-${HASH_VULKAN::10}.tar.gz"
-> ${PN}-vulkan-headers-${HASH_VULKAN::10}.tar.gz
https://gitlab.freedesktop.org/JoshuaAshton/libdisplay-info/-/archive/${HASH_DISPLAYINFO}/${PN}-libdisplay-info-${HASH_DISPLAYINFO::10}.tar.bz2"
KEYWORDS="-* ~amd64 ~x86"
fi
# setup_dxvk.sh is no longer provided, fetch old until a better solution
@ -41,6 +44,7 @@ REQUIRED_USE="
d3d11? ( dxgi )"
BDEPEND="
${PYTHON_DEPS}
dev-util/glslang
!crossdev-mingw? ( dev-util/mingw64-toolchain[${MULTILIB_USEDEP}] )"
@ -67,9 +71,10 @@ pkg_pretend() {
src_prepare() {
if [[ ${PV} != 9999 ]]; then
rmdir include/{spirv,vulkan} || die
rmdir include/{spirv,vulkan} subprojects/libdisplay-info || die
mv ../SPIRV-Headers-${HASH_SPIRV} include/spirv || die
mv ../Vulkan-Headers-${HASH_VULKAN} include/vulkan || die
mv ../libdisplay-info-${HASH_DISPLAYINFO} subprojects/libdisplay-info || die
fi
default
@ -82,7 +87,8 @@ src_configure() {
use crossdev-mingw || PATH=${BROOT}/usr/lib/mingw64-toolchain/bin:${PATH}
# AVX has a history of causing issues with this package, disable for safety
# https://github.com/Tk-Glitch/PKGBUILDS/issues/515
# https://bugs.winehq.org/show_bug.cgi?id=43516
# https://bugs.winehq.org/show_bug.cgi?id=45289
append-flags -mno-avx
if [[ ${CHOST} != *-mingw* ]]; then

@ -1,4 +1,5 @@
DIST Inflector-0.11.4.crate 17438 BLAKE2B eaf0c7f983b3186e9bc89353021a10592f2877e46585bd50b96db9b087343d1199c7b6cf3fa53cd274fb6d33de025a904b8aa31a7ac9599ae3689ecdbcec34cd SHA512 f1f6463e033b6d3c16c51dc1e1a3f5569954308b95b59058294b7f9310919bbda797e99e6a07529071bb83f0688867a243997d33795a7136b0af73977004296e
DIST addr2line-0.19.0.crate 33210 BLAKE2B a6b393dcddfa0f858297efb6b261d3a23f118be45a3211ee15f6c58808f241dbcf5282f4a86be579360513f23ac4035819e923f2587b7499110af42e9ac3ab88 SHA512 18da72e412bb89028e2ccb838192330535e45300f6fd8edc7d1d64397792a3db12418aa24a3312730c5414e2a1b1d65e6b9d5691ba234c9142b5d885523a5e94
DIST adler-1.0.2.crate 12778 BLAKE2B a1dc17786adae945ac09d3525e609ed944e6465690787bbb831a1b9d53793cba1989793d0a5606d5d23ee20d36457923d451b1b3530c9ec7072a487aa3e55bbd SHA512 7ab190d31890fc05b0b55d8e2c6527a505e06793d5496be0b3831e0513412f9ba97f8148f6f68ed0770fa9cd980a5092d885e058becf1d5506b7c74b82674aa1
DIST adler32-1.2.0.crate 6411 BLAKE2B 51d44ccfd774158687b8244e83377e40ff896364e3d41e9015665131cc2a176d4ca0ab5a84df027dec0869ee735ee36f5687a06c1d2341de666070cdbab89483 SHA512 8ed72612fb78e213fc92963fdae0508ef26988656c939e6c9cddccbe2658d4a956a8ae934d9658262a8b2687dc446b3f1ee7614128b440487c81e606526dfda3
DIST ahash-0.7.6.crate 38030 BLAKE2B aca3661477fcd7822d6d10970151e05c28e1615f8cd7ddaac064b15102027e404b19b0f3f16dd76145048594ea1c22ae27dd08cc05c411efbae9ec7a1ef55ce9 SHA512 61354688b6fb096359faefb6f34be958cd2215d56b88c22c737d24183eaad433f811bc9e64f927e4852c87d2799c22fda82b55cfbef2ed6357ff74f0c4ffec68
@ -14,13 +15,16 @@ DIST arrayref-0.3.6.crate 10035 BLAKE2B 88292fa4b3ad4fccd03772c2f0eca04cc13373fe
DIST arrayvec-0.5.2.crate 27838 BLAKE2B 51e2eacae0ef148f3f52d21ae00794e540e7ce4c013fb496dd1347ad91ffbbca199381fffbb064225f829216f6c5e915edfa64833f91fabdd13c3f011d86491f SHA512 1896b5f64b4dbdcff8ad234bda4ea8129bcacf87839347304717e94ee9f369cf5f4371755e453ff7d72817edb8f7fdbc726d77cc4f28ed05148dc89c7714b004
DIST arrayvec-0.7.2.crate 29341 BLAKE2B eae9d3f494033ea2d837a6024cb24bd4574683ed1e76ac6be7f7c6b0d8ee65c0eaf03dbae7fea04cf0921299f69234ad91e1cf41342de86f554f74e287dd3ba1 SHA512 80cc6e55b6032f4882362813de970d3d99e600ada774b28ac6a24c9c8e018fda3b35c5750ac3a09fca6fb9496e2e3fe608b58d21b1b84685ebd170f567a0ecbc
DIST ash-0.37.1+1.3.235.crate 430093 BLAKE2B 1a29295ee53fb34bea0e0006b4fd5f5faa38b6ec0bade4b259108443f30022c3501a422d4c6ef3912ae63d68dafdb8ca028f81dc6545bc74bbdcc3cd92bc61d4 SHA512 1c79c1ac7cb94be58ee7202c98331cd45066c9503c2866a6a44235df2b3d46a9258dba9e8650b58f05b98373c375d3e59d21c7e2b09a6179e48fdadffa0d128f
DIST ash-0.37.2+1.3.238.crate 433404 BLAKE2B 727253b455d34164ca9d90e8bc4c3c77339cfd72b8ed6330edec3a10e259c1b258b29a8894f2f70f477623ac89dfb42e786e37ebf1380ce717f0f2e3d63dff5e SHA512 d135d03da45e5bf61a3453f6a6ed0020fbf9ffe29abb328735cbbeafa966338d501b097dfb7ea7aa04b15e511a36d310e67f12cb82bac32dd0c4a637bff81bb0
DIST async-channel-1.8.0.crate 13534 BLAKE2B a59ed929ca4a6b4f2d50506164e3d58c04449ed1ba9848af69531b163c7f385d846fb1ecad4fe2ad71d55ce58bb27d7c629a706f01438f23cd96b9910f6265f6 SHA512 8352b2f28565825cd7b51421fb3ff904c0c5d5e1fcebc71c91f0b60c662f9b949721b3da91fe0a205345c6f650d35afbc3340d61b637d72325af869aae24794a
DIST atk-sys-0.15.1.crate 22726 BLAKE2B 8ba96f5eb203085b09201f47589b84a874bf9b9bbec4b2947b67f9614c55e3048f91da9fe5fbbc9a2016d6bb24f885ef92aee9182c63ca74bad3faec259a43bc SHA512 b1be38a2d9eda4a43fb493fbbad5505d9af4cdf5033b7d921c04c03cd7b014dad5ddc7664ff872ed381579fa15536c6a11ceeb6c2c0145a08703775109f74923
DIST atty-0.2.14.crate 5470 BLAKE2B 2db856a9e898a430258f059aeaf7c844a153293e8856d90ac81f7d91a888c89198768ad5cb09303c23241fe85c560a55148fa56a303651a82b0edb895616bfab SHA512 d7b6c4b9a0f898d91ddbc41a5ee45bbf45d1d269508c8cc87ee3e3990500e41e0ec387afb1f3bc7db55bedac396dd86c6509f4bf9e5148d809c3802edcc5e1d9
DIST autocfg-1.1.0.crate 13272 BLAKE2B 7724055c337d562103f191f4e36cab469e578f0c51cc24d33624dea155d108a07578703766341fd6a4cc1ef52acda406e7dba1650d59115f18261281e5b40203 SHA512 df972c09abbdc0b6cb6bb55b1e29c7fed706ece38a62613d9e275bac46a19574a7f96f0152cccb0239efea04ee90083a146b58b15307696c4c81878cd12de28f
DIST backtrace-0.3.67.crate 78564 BLAKE2B 8c77d3d182c7e1ec3840fd6c7f4214322e473ba79a71b2d11d98696f8ae4440350f3c84a891b2ec79fffde107fb2ebb99fffca202d6ed235d3abd68215a1089b SHA512 8603a3b63f4f08be315176908134243680bf1a4b0e6cb26ed81f5fc1060279126ca0ef28f209a10289e1a85214b35db6b496affd71ad21524094f3ee3acd31b6
DIST base-x-0.2.11.crate 10755 BLAKE2B 0029779ba8f8802bda969949bd94168131b34ee5d26a4b97bd277b4723f284fd392b2d93b12ab618262ea2288821b3e8be01a97ba2939957ed5d6e74ddb4eda9 SHA512 4e623b05b9450d8c3613da857a144cba2ee724584b0baa6df2209750da1c6e66756b88b787e8d8764c72a3e9dcb411316ff6a70afdd6f80d59b4224209c277f1
DIST base64-0.13.1.crate 61002 BLAKE2B 3b3a5b26e2ef18e9b4f1ede72b1bd160a1494751878e8441d463f8a514e6cb9ac859231536989e19fb1261fd864617fe31440df1b5855a0ec625521fc6fcef91 SHA512 1eb76aff9a84057f2ccb7082e9c57b015c2d71a28173089b02e7aacd09a7d311bedf0a943529611ada29f8d7b536d7ae4de256d98eee8450003a3a9a652bda4b
DIST base64-0.20.0.crate 68293 BLAKE2B 1d887aeb00d6a7cd8172a0677fdccfc601b6588cbcdb9f5e5c86c4fc4b68c60fea375eab22705f65ef8fde46aed0a0ba10a5aad0b4d08067f10539d2466abe98 SHA512 4c66d4ed56ee7f3bffacfb665ec209253e35c10fed448d9d1dc2c85cfcdb15db230e92e2a7daaa130ba4cfb75331b0a9a8b4a54f63b5e341d91da7325b097eca
DIST base64-0.21.0.crate 72180 BLAKE2B c7aeaf671bdeac67703f9c4ee1be003eb8d6f46fbaa0adf61a4da304458742938db04291d5f626115e3fcc901eb3abb3f9baf8247f6344b4d49f60a200fc6fd2 SHA512 60bcc157c6449a2160e083611e6d53e07bbff7db8cd550d9056cb804e99e990d4a20092ba4347306a3c6b6c42474a06d92cb3895125c50cef9b74cd3cbd83a2f
DIST bindgen-0.61.0.crate 199472 BLAKE2B 0f471a326f0d9294e7fb7faa83e3eec8a912955d3c75565c94aec13c439d15d59c8b62f9bf87e57410605bb73e04eb48c49338f9571010c666e316c8bfc0f621 SHA512 4e71f03ed614390dc6f54a7b5ddf2600b43e3ca599f68516ed260286b054deddc6edd1c56504ea059e1c6a5abd4e934418fccb56109aba122d5a65be888f6d91
DIST bit-set-0.5.3.crate 14470 BLAKE2B f6525500a494236103df2b27e964bae0b2caf718156879f972b9972fa509794bcc663c2130e3d872ecadb7ead0982b415dfa4468ef12523ee248fb1bbec2559e SHA512 c5ce7ef71559706d996505e138ce95d9f008ac3375928012a36339bfec48986ad935b384e2d21fa0d505d4cf98bd3e93be15955ecd9607d253b8a276351334c6
DIST bit-vec-0.6.3.crate 19927 BLAKE2B f5bd3bb9c87fdf3b206739b74df20cab50a1a45af3a58b2642a5a061c26207884be58ef8369a3cd06dfd3615bff0ce15915fdd4b6b6f03facc4a0f86c0b7e910 SHA512 b4b4a82c80d0ff13527ae4fff449ac9c1c7bc519c013af6ea3428348e0e5b9306b725c0a13a42d7d9dcf0f895a9eee0c63695a2503eb7fd2200083c9ea3a9aa8
@ -60,9 +64,11 @@ DIST cocoa-foundation-0.1.0.crate 10645 BLAKE2B 8ea7db02939a5cf1785b2770743d609e
DIST codespan-reporting-0.11.1.crate 48963 BLAKE2B 39deb717a853ffbe3585e20a67fd7a75b62e2d796a66b5004876501fd7476acde9f126804f2ef6220ebab66821a3ccf058d544d689a2705eae44285f34b510cb SHA512 0869789f5c50d3523d3ee16a8fe64756498a13704efbe82bb0845eaa87c7b6b1d075b3b6b80567cd9fce6cb09c5179e9c07e485fd17ce56c8139ade0f8bc6844
DIST color_quant-1.1.0.crate 6649 BLAKE2B 9a2488dd00b7a33e15e05531ea49ef1961131f0be0922ba41e2d74d2b1a047daed483ac3a9dd87c847a81cce70a347395c557cad8228ab9a8dc5be7cc0f1bcaa SHA512 690c928bda4b7b57425f38ea68ac89cde2473b7a91b7e62c04a8f2c5a0fa3505e26b065d48b7ad0a8bb491f92f600f896fefdad3ce0e86e43cbf4f9a89e94201
DIST colored-2.0.0.crate 21619 BLAKE2B 5abcc05a95cd74a106c4e4f3c9b1722a7a9493c7d16c2d73f2a116d1d0d20f93d00c414a19871930e6286aa60cdcb0f4f4411ae059e7e76b7632cfca3a55ebe9 SHA512 c9ee830c1e8a32372ab8c7ce569701deaa6533fa369fc1b4c04bed57b1e686ed775fc76c3d9815ad21ee69cfc7c30d645abcbacad39081c7e37ff83ebb6d9e8a
DIST com-rs-0.2.1.crate 10647 BLAKE2B fe4306095363fc20ed18b3880527d7a574e96d1b1b9613fea73b9c311ed391db7c2f3ae5e649b16b4975161220bb2907eec14238df4e9bb329898224bed5ca12 SHA512 e4bddb8d740553351e58a46c5dca95182db6eac90bc3f7a5f9fcb1d41b6dd7988eb12596ee8eec4f1c114a283f15f1fb15b0506fff9c1beadf811638c2a636b0
DIST combine-4.6.6.crate 132428 BLAKE2B fb52e724a52f1a551255591fedc134178080ea5efc0c488efbc369e6272f7f2b87dd7d0ce63361754d8ff0cf1b0a59bbc7b0396c50c53210f3e2c28ac965e0e6 SHA512 ff9ef9329de2cfc103271a25ad1fcb7e478f3328843bd8a65653e80b74112728ad4a33326a58ed7ef8cf39eec7c3b797fc287295ba149ee0dccb1de9721b5819
DIST concurrent-queue-2.0.0.crate 19465 BLAKE2B 314a70f63588f1a083d864a3e49529d770e81922544b4419472e89265dadcab7ab16bb0d41da20b0147f069486097c80442f6b126999cd91d351c768dd9e25d0 SHA512 e518fb6c25424f49eceff427a5a4840ef277eceb8bde40c73604e798397eb4733b513de26f147093012a0addaced14540b88b411d176b95065f3cc60788c3e08
DIST console-0.15.2.crate 31576 BLAKE2B 279bb6cfbcc172bb672688422bc669768cf8085acf3c80b283270a12f8e53393ae5133d8b8025e16176fa030a8c4e42afd73cf952385a96392f6519f3cc99894 SHA512 0eb0ffe95cdc2e6f43d116f346241755dbfc8d451c9e69dc950a5c6c94b10b1be4218fa14bd0da32f5cd9779e38e79dcd9b584a6448c7f0b30316948e7ee9ebe
DIST console-0.15.4.crate 34237 BLAKE2B edd1992b38a24a4c5a6cab42a1a1ae2483a2ec42231a9460b9a4d2701945d1bb1fdde181044976f76781348497303b035b9f9dcf5733c9a317fb32ff3252edfe SHA512 fc719a26f93fa28793379e77eb90a9144892b07ee7fa5c495d842c892f5a161607da83376d447950dc1b2be6b023b38f2f1d416b112c09ab2c84847e53055650
DIST console_error_panic_hook-0.1.7.crate 507196 BLAKE2B 90f2855b54c78258f9e4983849a0c0b41f842990d622bef0ea16ae5e3a93914919022d21b1437bb2ce644333d4e0c6e7b55d960452c4fa437e23bcd0da83a4dd SHA512 49f4fb2175c0068981678f291422ace3737dab7033b1a49d78fd821512c92fdd023c3fe28c7daed88c8f338c30a9c7f82f18bb4583c3fe7839ad8dcd0addd6b9
DIST console_log-0.2.0.crate 29003 BLAKE2B 69a29e215cd97b9c754d7ce6961aee44eda66ee8fbd30e21f8d0f71b1ca2a4efdf9a77b770d5a98627a74f4cf83d1ee2dd68ebb67798e346755b3b4d1a3ff8e5 SHA512 55cd628b5be60ca33d3ab3ad5d436b93ad3bfda456feee93bcc24935265ed05236f5811a73dc469492adc1d7429c7348bfe3ebc9e34ae9d1353662c369712f17
DIST convert_case-0.6.0.crate 18675 BLAKE2B 5e5ab159a61e68b801f1c95dc5336f3af7ffe6fee212c8ffb9905af1121f0b272b234b4e70a30f29f5ed24f4825ccfb59722057b69549fec0fc3472857ee1ce9 SHA512 3b17449195a9a36e3965db89eeb967979c192ad7743217ea08e8c8b91ecae1ac1674362d05dc6f32f1f361fface3f783398285bb78060403f65a777a9d29adf2
@ -77,6 +83,8 @@ DIST coreaudio-sys-0.2.11.crate 5432 BLAKE2B 7fe534db247b6f822ad2b29bfedc5534bee
DIST cpal-0.14.2.crate 96558 BLAKE2B 45a3196b2bbf564ab6d8920e104e7abe0f4c64f599f0eb45c75d12b01cbcb66e841583a8cfa65cbb073d294871aed5881fb952f2f8e1edc37ef7c8f2a04671c6 SHA512 6e535ad6f23ccd9227989426db11897387a9fc2f85fb87e3ea6e6b97e46cff830f832dc54b875b28c15e3ac905c7f04ca0f3db47142ff24a954a2101dd5993ea
DIST cpufeatures-0.2.5.crate 11251 BLAKE2B 2724be40d3bc0e2fda957f645e1cd6472450dee68db3592ab607bdac444283f571f3c904e47981a3fdaa06cab4032734a54470e3dd6e1b67fd856daf010e1277 SHA512 d02327a27ca9fc3c587dcbd10da6b1370671cd7b1df8dfc9078b47180744d0572ef41a7ec205ae9f1c571e5b7f4bc81278ab4c6b076c6ccac0167100e346e74e
DIST crc-1.8.1.crate 9114 BLAKE2B cd96400652888e700c326a2842005c8bee699ccf3c61b87320c01196b455a55da511749241af75e903a76847beb8172598dc8f770779aefe945db7934976afbb SHA512 db0b3d0ca197cb2a2049720b753061f1532d1ba2c86c7befce36a18cb4e8008b061e39e26960b4d9dcf1e7ea55348f55c441da5d17cd0a424402a8489d52ed1a
DIST crc-3.0.0.crate 9956 BLAKE2B dd69f9cb18008a5ad67eb0577c2f6bcf0a39708af144f043b66d3e1c066d6942098c32fca171047a063292daa59303c0e299fcd9587c6e0a1f243192f858f9b9 SHA512 c40a5133ac27ee5fd4930873c64a52cfe8afe2598822a646089d380e250d16420d7baedd56aa1b630afa1e4433b35dc26b7811b919e752ba02b22d9de964e3d1
DIST crc-catalog-2.1.0.crate 9863 BLAKE2B f11c3b606314cd8f06aaefec2cfe2dfa5c5851beea8ef3f27712f08d3615cdc1df13bd3e25dd38d1002d8a1d9e542da6364e88ef50d8fc64b03914b141aa28db SHA512 3a234d67342afafe3c405d1c88c8eeb5a875f9b4d552d1b11b0bfafed42c2d7dc776c7e6ad1a4d7aca00c8c9a0c6c1ce750898665194e67c7502545ec888a8ed
DIST crc32fast-1.3.2.crate 38661 BLAKE2B ce3762b03d24d5367d89738991c060f4b3af7840e0a7ac7fc17d01ed438caf964bbaefad0fc4d0c438dafa5a578429ddd353c71197f8b54b1ec441395f2f7ee0 SHA512 a683943e252afdb1b9d626a07533ed11cf7a63af603c19640056c5d2b9c884ad9aff33ac54c0853ffca2f6cf94b0730eae6c05abf3e53e55e709d180c8152357
DIST crossbeam-channel-0.5.6.crate 90292 BLAKE2B 7da87ab15c384754d2493dd1a30e83550cd4b2b749b7f0c24de131f054e3a2e521e1bb4ba10094378c8f4c7bdf19218e35b10562c50b4ad1d2871bf6f821e488 SHA512 de6a42ffede95750a13e3b9af6ab26cbc498125860cd8e4d227c7361bd831e558254a48bdef5cf901585a915003071b0efa321f2011f282218c364780f62f44a
DIST crossbeam-deque-0.8.2.crate 21237 BLAKE2B f00948fe90806fcbf1585c0404250dc84bca2cf27733bf7f2a0aa957e618f916162f41124333329a5b1e84909cbae3d93fb3b4461ab23e9dd97672c7d520d5b7 SHA512 a50a878d843d6eb1b5b92321ce6bfb87a23d3c16e820b1ff55472f0bd3d29b41d09ea95e1b9ccb2790f6687c043dd9ada1cd5124705e24292ccbd8fae1f243b3
@ -103,6 +111,7 @@ DIST darling_core-0.14.2.crate 53924 BLAKE2B a10be266569d478eb73fe62d56ed94b9956
DIST darling_macro-0.13.4.crate 1910 BLAKE2B 432adc44108cce6a13adc9ec45ff9b7555eb4c0ac7f1000fdc8f8e9d1bc0ecfeb65b78f81438b097946aed8e37835f82028c1b16c1d466a124998139ae854df1 SHA512 908ea6459110da16e4ec6ac843659664ed4fa3fb2ea9b92274a738ff5994cf81fbb48403db609b9a70f39c3e288da4358ce369c66821122e3a6a0940473da94c
DIST darling_macro-0.14.2.crate 1896 BLAKE2B b095af14bd90877101444983889fa3683ed7fd6fd8f6ed229c17840c840f26b9a74c5336358a6ecdaad364cc5f3ac123587dae79ff61ceea4270fa536a441fc1 SHA512 0dcf34807d2a6999d69d8176f70b2a7c2b31b03ad350bee7455a0711dd57c775ece9559376a36b07d986556e5d9512ba04aa3ce66298f82ecb3115bd6e38d258
DIST dasp-f05a703d247bb504d7e812b51e95f3765d9c5e94.tar.gz 621307 BLAKE2B 9f82ca484fb6c6f79e4c9ba3e9e3fef44410e95b138202d65cf0dbedfbdb21b93080c0d816626d624b4cb7f4f0431fdb350fc843cd3a6706672989f660225759 SHA512 da0bbfa6e9561182ca5e896d7d6266c2205ce7757215f0dd0a5044fad7f8d4589d68ffb7b4e8f37800a966bcab21750d9db27baeb5607dfd467375803f7f7b43
DIST data-encoding-2.3.3.crate 19117 BLAKE2B d77962932be4aefd5855db78379b56a9fdeb784a9916a3e4d0bf3b085a8b3286396122066ad875395bf3be3fe026422fdf5554ca67e0f1b53d9fba36c11c14cb SHA512 5922cdfaaa9b4c3b2faa68e86018653dac7bccef3f2a1e16f6c599dc8c3e98a644f29c3a9082234d3a58f9feb0eb54842e57ab62ceadcf287c43f7eed1906d93
DIST derive-try-from-primitive-1.0.0.crate 3267 BLAKE2B 89982f76ca79b1697f9538a4bc84b71b8e2fecfbdfcc9af2c1dc7566cb676dafe9dbd9c59ffd414ded35adf0ac23e1303634ce340a6353b3c04df238253de8ed SHA512 d7a8bf4d1e3e4117e831b70610e1906c78a07c6f3cd029b5a1e38b43c53aa0bb6ce31bc827ef154a9c0efa4f61aab15e627986212437d31b06b2ed7e35e0832d
DIST diff-0.1.13.crate 46216 BLAKE2B 27ceeafb7afd45eabbbe22d1f05667f513a6062762e6b77122e267282a8f2a0bf96384989508bf10c9e13af4856bc9f58f09b10055d6fc2c32681e288ffa9f9e SHA512 45e259c9fe7c23bd9e9454891b42d4aef6d681d35ee039d21fdb05ae9ed5856161a40f29889e7880ac2a2daf85f1b7d752d213b4a99a1a74ed2682c18a3ae7fb
DIST digest-0.10.6.crate 19527 BLAKE2B 402009105a6ac055be062769dd4f162aabb977b9afe29f451eeb3e6b5dd1a579c371c5ec996b9c1bdba3b4ded83830ed2e1934a0505480bffba1e0d16775a8f7 SHA512 21d3c1dc64e640300c51e8a009af464d6e3cd2b10aa67c87a038165c11409d6e5faad1967236724a9a4cab8fdd88826cac1db4798245fd53ac2ff1a9b2b68b76
@ -158,11 +167,13 @@ DIST gc-arena-24d8aea5f0fd968756d6e3c1dac4c6c2ccb7280a.tar.gz 29366 BLAKE2B 4e08
DIST gdk-pixbuf-sys-0.15.10.crate 9891 BLAKE2B 383e3cbed76a961218bec9d328460d6204fe87cf0bb7b8aa15b270b30d513289e57325a3b469c137af61b5aeb9ba58e9082e95425eff879a8ee3b241e51eb9b9 SHA512 bc2c948758240a0dc195d5b39d159ea55b4a717026b3a4d729e92b736418e0a953b841e62e14059a6c67d257adaa5cd0bfff28de9e2ded03cbd82fe45488d8cd
DIST gdk-sys-0.15.1.crate 73599 BLAKE2B becfd7c8e2525ae90402be8db2d59b9d4a7d5271d27a4f46740de8e6e1a932347094f8c7dc4df447a410bf24bee17c75090c3b3ca707093a8d8292bcc8d0a1e6 SHA512 eb543f348a4971a636f77bbac97d1d671de5591e6314ad41544cb33e4c2d480ff7d0e81ddb187649036f7b7b0e20c3bdd8e0a33fec1f9c30d156e719f0b25cc6
DIST generational-arena-0.2.8.crate 20899 BLAKE2B 73cccc9e3b836ddd37e7f64b6389c7bec6763ac9c390a5a9b4adc9b35200e7d26d21ba0748fc808aafac52087f552a4c56e8e10ebf8d016507e1781c579f1e73 SHA512 a5e073a8d26aa32b617fb4130d2b9401c3a3d9ff51a2910f2de4de019ddfd2e5077f2489acb40330e640c573139c1c911ce59a36011bd439c011a3af922bdc1d
DIST generator-0.7.2.crate 29804 BLAKE2B 02b112886f1833a9e5a14ce330da34e14541526d05e1c9d6a25c74e19eb0040819a4c75ff1fd0f418a5c56dd779dd2c594c6d9fa502401576f77bfb761d2ad82 SHA512 a0592ebcf73fc1b189820819e3f5f5dbf97e245061d01c10989d13170e6a05f9cac231df77d1c197f7e5ba3c1efbdc68d71b9498fc6fd590254c9c861fde773c
DIST generic-array-0.14.6.crate 15889 BLAKE2B 7beac5446f5da4d077598af43c238eb7e71a12b0b91e6be5dbfc1ca33dc21d128fc93c9c8b18caac4b88830c8c8a643f2033acaca1d9a9f3d95329d042276156 SHA512 254e6fb6658f083f26e022916795c9ebfac241b9df2d811aac8316b17e1375e1c5aa54d72f1bf6c2627a88484a7df4b14eca231c90578e9aa3d9997047fa0f20
DIST gethostname-0.2.3.crate 8174 BLAKE2B a7579a33f8180729787d2489f0936191a911b2ab085d151e6bf6ff8dae1bda0d6707a69c1d6ba829b2b087042bdb6eb676b77fd722a61423eeb37fcb30554f81 SHA512 c3ce5187057ea09def22331d2f67a97cb53759e8c45179687a8bf9c67d16fac5f58d6c1e553b4f74b702bae0baa7c70eb5ed71f99ded3d508338a4b1e9f115fa
DIST getrandom-0.2.8.crate 30553 BLAKE2B 30211bc6a8ceb5ba765cbf068405cfc08842b2521c5850647971f4cb4bc9a5b0a9195ccfbc1461de019eeb7744ee69f934922ff21677259d7b815800516df4dc SHA512 cd7aea29f79a33a0de2a52a0a82f2b57ea8f27908ccfe00a5f42248766df88b225023603ec56d6fc634ef9c1eb67ad0135c90d4c695f6f659db0767e7fda44c5
DIST gif-0.11.4.crate 634244 BLAKE2B 537a21ed947889acde0c9b8a42a7d0308f2d9017e59145924e735aa046cc494b60b97cdf3b24d62d24159a47bd4b6bd2aa009f2871c0b4f6fecec020f8041398 SHA512 3de0534b35bd783b54715e7f8a92f2d8a22934949627716cc3ade3c8036489d2b9604292eeeeced820b149865bc44a5de9d05700ebace073b48737759b5296b9
DIST gif-0.12.0.crate 634734 BLAKE2B 067baacc4a10ad1d992aadecb578034bc820ff2470eb2fe1b63212584ae1f73fb6febe3652a309a3931fc6fc6823533af2c3d567414925118c5086970a09bdf3 SHA512 9cee5c4f68b02252f6214fccabda29087c89cadd8408df4fb6b9479da7958a9759dfc4b13ad2bc7e1447be9050cea6d3757d891b774a7e6fe8c6fd25bca3b74a
DIST gimli-0.27.0.crate 720457 BLAKE2B 0a4fdb66844f3370203dc696a2f826135630b29d3aa78f378a162f5c74763565792c900174d859f4e15b32c951333fc35e46ae7c2fa293a70e3bcfde4cbb6183 SHA512 71563f0b086ec7e22475db77b4f18f05c706dd39dee37fd5df47e636e010c6ab1dae0f6759c6b90a0b2d7937a85878d9b8d62bbf7b5b7e2390335895c6ef2905
DIST gio-sys-0.15.10.crate 79552 BLAKE2B a2a0e6a809ffe57bb2d1f6deb072f0b4086ecf833b2e9b1d6e2c010445135918840522f57177d30487c1d19a27161aa37f2eee611b8bd9af4e41e021c425f2a1 SHA512 9a5f37afc4ee4fea2a9fb87005c2c51b1f22ba98c9ad88bcedf89b90bd1e3d6393ecea8b726b596dc298c5a4e7db1eb0503f0872db54c19c29069f5a2b1b30ff
DIST glib-sys-0.15.10.crate 59966 BLAKE2B 6896cab768c10992b751d454f9221125d7170dfc0d453244e90d67702b7111048fa5b7c87e94cac119a54e0af13f641db84c50ce0947aa751e716ec556d0001f SHA512 b83d67d775f70d6a08b9a6a9e24b575f110a93e5dcc8c53c03015842bac2617d13ded014f46820f8b05b08e7a34aa4841923847869af26689251497daf0b69ec
DIST glob-0.3.0.crate 18724 BLAKE2B 1f1dd380e7d668a0c2cff9134279ebda958b4bccdd4a65ff01f9665b45ec4cce8ffbd47eb46e52cf516c5fd5803561e6bcb60cdee21ddfbb8601a95d45500620 SHA512 87098ffdbc518442995c422120cef71f83069c8f88a1970ecec5105b0f284ddd92bcee929f5c230d5b90ae1ead7e1214c3eea26f4a8b26715a00c1ab8b09bc46
@ -170,12 +181,14 @@ DIST glow-0.11.2.crate 142135 BLAKE2B 3c4ca1960aca248f7814f0dacb53317bd217cc11a7
DIST gobject-sys-0.15.10.crate 18534 BLAKE2B 351d9e949ba3dcdfd27622c7b1e0b6ac5ed4b7dbad77cc6f7f7a10779c25bf39c95e1a36d8a9ecd02a40b830a85170cedf63434fe7bea91fecb2fe20f709d5c0 SHA512 351b4dc985f5e0b1b3c7f2da9a615188b11a0b62052ffcd6e4fd654b086b0d66bee325f6e8807c2b3508132816540f2c8431f74ffdb4d31d436594ad2fdc0d92
DIST gpu-alloc-0.5.3.crate 17475 BLAKE2B 71e89195e6100316bbb779ab3f11389b367657b1f7e734e0e521b2fa22727f1c30fb332cfcb51e53dc33695f4831b26bca3060a5f7f21f2a9a304c0c175cc451 SHA512 9a127fb19d7902355f2471fa40f2830818ed40e4260be149314ee86c66cca2557476b82313214c9f97425fd854b8fc95010eecc2daeb53a154e8c5ed42275edd
DIST gpu-alloc-types-0.2.0.crate 3073 BLAKE2B 4010628ba21cab23dd8e23ebe38dafbf3ef072d686a67bdfc04ef3818d2341ea15bbec9be428ed638e57974c17db36614f9c9126faaeafeb4973fef0b8f95adb SHA512 37659361281d4e2a0785fbdf065c42d6e7922def36d225e1af78b392986647b904737f0f862c57ae0be28df24429ca999ac7a72b42d125a6f22564a92e80459e
DIST gpu-allocator-0.21.0.crate 73322 BLAKE2B 5f8cd58ce6873a4804a6cf52cb60abdfbe168b56d08e2b997aeeec0df82634d36ba4c4c4805e5ade6ba65046ac3063bc7f61b72c45b30c723217ca737636a112 SHA512 beba91808fe836d4e1a044eafcde6d042dd408dcdb12f34022d6cb6ef87bf9e3a8a783b4908442d50e37c25d0a55b1254e7a14454dd30db13a52623141c54d39
DIST gpu-descriptor-0.2.3.crate 5855 BLAKE2B 6d1931e9092b88e41bc1c969afb03c8c49fc7bffdc5ac2fa1723eae54bf39d8e80a95a25429f80af380be7d75655fd2fd293a9f1a74f7a251d96f1d3042a6a07 SHA512 cf4e3873114f7c3f96debe00411fc9970598aa89583f8f00769d688804e6b059c247d479218e55db97972b58bade7d9630434a9393b710672a923ef65b100446
DIST gpu-descriptor-types-0.1.1.crate 1956 BLAKE2B 70789874373f3e98b5659b59a71dbbf71260f331c2811b759fab8db91f15aa4b484b9d0554aa54c80e4dbd4bc308ae7b636b4e1a59dd35d0a1428e1a8bf88711 SHA512 e313ccd74ac4a7c97bf0ec85ba65d84635d7aeaeedb8764496dd5ba332e4797f7305505babb5663b5413646a0c964bf1780c93942850a8930edc1d3b400ebcd2
DIST gtk-sys-0.15.3.crate 138220 BLAKE2B 91a057f5a16b105872e78c684a739d17e866be406b799e433321d0b53bfac9a65589936a24703a30a4b2ee2ca30ef93859ccbb8c68e528ffcf12f9b19aab0e89 SHA512 c3984bf94e3881e28874fa9611f273b8af1f463c7d1efe2315364ca71e85975554685903dba47513e21e312cd85dd281c17cf6b4c794368958894933b3c03bcd
DIST h263-rs-023e14c73e565c4c778d41f66cfbac5ece6419b2.tar.gz 83430 BLAKE2B 8128496cf5a64edfa7d9264b9f8bf791dd0877faf60b97dc33a94c49f610bcbabfe2d6b50426460edfc4836f0602955ff70c415268c375fcd88cd030f356a4ba SHA512 2226b8ab4327d6f4f2763b3ece3958bfb604542d3db8c3df4a348edaf8cd9f2ecb6f21a965117b23ec3d331787a998a791eceb5a2f28611208d6550279224136
DIST half-2.1.0.crate 44327 BLAKE2B f6b4a6053e83d721c07591740f65e1609d068381c2072ed45e10f80bdb858485ed6d78dd11dc85f63efedff4d6a7f1f4c398af518833531bcc2044144a475274 SHA512 5c46cbfb9823b771da6f1f3adfb1b86c4d38d4075dc3af64af1f7498918028f1402ee994f21146db48daef5f9682550cab39a19636a2903f64a3e82a26223fe0
DIST hashbrown-0.12.3.crate 102968 BLAKE2B 492072f27eaec45abd2c5d7405c614c0c6a8221425e901bb6174bfa1688ee524408a618650126d6c683b7285b9bf0a21dcdbff7347e4d8f97bf7111defa1b7e5 SHA512 b3700fcd659a21a6b9b3777c18b37a83bf25542b4e8f2b963779a122f5d22e1742c064cfc03e649583e7dd5c6e90ca8407f8c51a0e8755f6a108682853022f76
DIST hassle-rs-0.9.0.crate 24114 BLAKE2B 6a8c18358ca95f15f55ac5416670b647565869ba0f697699b125f3cb500900c8cca2c50722a1ebd6fe9f36b8f8660f62f1cb9be752e6507de9304d36f41aeb3f SHA512 8b54ddbf3c6aa713f07df41b479662bc3a307bd6bd30117383fd758d348b2e13c2427836f9b41e2d434fa7811ba6361d865a067cf5c30a88d998f99b03ecb2b7
DIST heck-0.4.0.crate 11161 BLAKE2B 13b8bc39cf3ab90e71433e3c7b3e5f1c19404bec58dc4298dca05d94d5c14c2fc97350de737cb78aa45196b1241aa8f1ccf3a11ca309da5fe0f6a657673412b3 SHA512 33bdbf4ff9ecc4f4d74cf06590e056f4d96bf0d990d5381b9da5b65682b2495ed74e27b45419c2afa986c1f6200909d5175b137ae73ced5cc8ac869e4e1bce8f
DIST hermit-abi-0.1.19.crate 9979 BLAKE2B 801e8052b85341cca388ada9db4b06bb1bd7b64474185b2ad06c0256b9e597639bd3dd4ba0053ea010f922e53969a4ab47b90d451fd9b94c8f2324055d151ea1 SHA512 1c877fcd562b15d2de9c151fd6c5f3ea4bf48abcb799e6139a180ffad5d64b632f0000d5707bbd92ff23a0e5f349157b9e0f5be8b50f03680b0fa47315dbb78a
DIST hermit-abi-0.2.6.crate 13027 BLAKE2B 4df5306639511a5f69594e903f8ce62482cbbfbfe272a91a12f407483dbac4e87c2d7e5668cc06ca5c0fc149ca93a3152fe6ad4bb3b96cacf56a22cb635e5b7f SHA512 bad8442bb822a9c99f6536db16523c80f5139af6a139bcc359c03725c59ff935816e2ecc5c491dc362ac75ab2dff41ab1e9dd29431f5e9a109b60eb9b7a8dc28
@ -190,6 +203,7 @@ DIST image-0.24.5.crate 270381 BLAKE2B 239022ae8f5cb6ae187fa886f531b3eda2134f3ca
DIST indexmap-1.9.2.crate 54627 BLAKE2B dbfa551d33305db06b59d07c1b4bf8d4596a67ff1caa03062d07f6d78b4604ac0533d1c1fe3c371702dd7e65a012bfb960d79c76db37e264d0b44be576969285 SHA512 946c54881a347892dfcb55648a2b881d3a4d113424b8c76d8957980a834895318d11336dc438a04601916cca787420708ad7e271f965c38bfeae511ec1dedf85
DIST indicatif-0.17.2.crate 54306 BLAKE2B 3658b633e00f889bb303c8dc09158de98b4e4984ca22d82c286725fed26b0513bf46f1c140b3797753064f18993511bda6f4a49f617b552fa497266ccbea2d42 SHA512 f4bdd668bc7e67641d67fcd7d7d3e826982856c8f4a035056dd36d516decefafc365fe1edc2f35a155b9d4a70d45944ab2da53774f09cece9aef6272ed765a89
DIST insta-1.23.0.crate 536875 BLAKE2B 8263dc7d4323285bcb7a46ff6aa1437c1135793cf57b23e8093fab7add3d431d7ccdf95c3fd321ae0699b2ad1193bfbbf7bccc78ab912446dec9e468a0f1d1f4 SHA512 1360983fa0dd3a45a6e2058f27c14414b078947298cba70eb6e6f85e8cc278c40718c82544deec9c570926d6f4f0ecb5325b6811a2c667f5cbc5c252d83a0b98
DIST insta-1.26.0.crate 540203 BLAKE2B 8e700fc39b44ff5ef8467efc5b609481fe5ae5e3cf5f1705d4a0305c4a8c0299b05fed0f7c95d70d3000d5c0a826c0111f563d3fd1ff2efafbb386a794e95842 SHA512 7c992885bda2ca72919abe16415c8906b1d823ae8981ba1e40ab0ae5ca7f09829c9a3d79d22997aa744ff79acf5300eaa15eaa8416c09472092725e3b6d9f5c5
DIST instant-0.1.12.crate 6128 BLAKE2B 728923f757c1ee4e4a7afb90e460eed81392068961240a538e5c6468e15a0b6491f590fb5f6cc46e6d78901ca232351f65abb9f2f230d8f4983c5e58c4011902 SHA512 fae494c00111c51c840f9dd6a10febe403e27ebb933dd16633a213e9c20f2bc11adeb431c71f8a6713bf88f270a010941e15d83df294e658791934f83a5d2407
DIST io-lifetimes-1.0.3.crate 35650 BLAKE2B 51182293d373618fdf5dbab016167a01b3e12f79bffcbcc00e1679c2f63a167f7fc291fcd8f886944a855ad5d9828aadc9aceff1a3e5c09106fb274b39e837be SHA512 afb868979d54bc99d5c8a1c31062c91ea9e920470bb1f0bce95c2ebe0ef22fe8970ba86b2ad570d789f648485ea4d75fd83bba34e5a590a443698c713a321388
DIST is-terminal-0.4.1.crate 6892 BLAKE2B b9277429523c12964710aa21465c0b48c3742bd7b04e4de2ba66bb58349b6d7a171f1df509bc65f97ddde483c3c8d08c2a7d3dda7f3fb90afa12aaf47e658726 SHA512 40ad52218fbbdc0091a67ea9f0de6b2bd988195262ac1b06fa4284aca02b2741951414aee884fcafbda8ec111518a243430c760721c0f18d251efb30f50e1b35
@ -219,14 +233,17 @@ DIST linked-hash-map-0.5.6.crate 15049 BLAKE2B 0f30e388633c60433dcbee353507f1c68
DIST linux-raw-sys-0.1.4.crate 878981 BLAKE2B b8708b06e48ef4e32d820b5a0e25ce12d3d985d729a2d7fef46d0b3b4518b4ad40d037d4689fb2270f9c2583dc031d0f4daa26500197e6c32bffd1400357934c SHA512 ee6d5a7a08b183681ae00890784c9e6b72e4c987b2ce2d7de6e7308b7a10d4a2b532db3d5121523bf5d4a262407f3033af4f4c1fd9f09be091523366fa30d768
DIST lock_api-0.4.9.crate 25685 BLAKE2B 8adf5c3cccebdf6aff6ec977f230cd2a208b0b188ef57deacbbc6019431f0ede1a760b2384ba3cb49c96b8a589dc56c0f46a6359b3e62277e7ae1a1c3f586fa3 SHA512 9215381d9bb6b80d217c73a900db43df043b3e939b5bd7a292a02e9ab911cf0eacd8f883d35bdf72b3a0e78df8f1bc3e843ca4c775294c7a7a03091dc1a74990
DIST log-0.4.17.crate 38028 BLAKE2B b46be3719fc0a53e50b1f342762e188587e9f1ceb692c72473ce2663edfb8253742d30024e68c1444780ab7fc0e2d5b0601b8ea7228dc3405a9342a57548e605 SHA512 2477d88db42b1d92c30708d88823212e236f613b3465e85eb425f83f8d16fadfaf0352f06c2999a1852102edd2f6ffb10ecb539d8a3b6c48f552a25622ccffa2
DIST loom-0.5.6.crate 72186 BLAKE2B 0d31e1533b954c59c7c46a3158587dff2b9ad53c73d369a9134cf731c9d4d239f0755221cec50ab15e3cd42a35f0b7eaebeccf07285b0a89675df8c0d5cffe56 SHA512 e4dfb7d4b07acd33b6db8e6fa54f66d33782060c553a71723329bc9e5c1e3afc10de882f3ce3b882c0b6b84b9eb19f4d6699e534961192e0933f88093247a4a7
DIST lyon-1.0.1.crate 3837 BLAKE2B b7a5a2be4e96ddd974974495a61e50e782f7d3c08d8b5e14b86a2e02c55a6a3848e332405ab61d2f7523eee2291e42869814f208d41efa28050f2ed79e2c8e95 SHA512 f9dbad320ccbcd33d692af4c8d7998745ab8d86d307058ce132432eacc9215c8cfe3c42a6d5edffa7942ef892199625be5a55bbfd13ce383c3e9f1465ae81ae5
DIST lyon_algorithms-1.0.2.crate 31962 BLAKE2B 8a385e69051f74c9071b634aab8029e50a5fb5af353a84f4d233e922d8c9c8b2572d7c5bf49c8749b8d022d7c3c23799a8e54ecda3576de33839ca2805ba516a SHA512 1be59a72c53fcf43f6b086e9c044962dfdc5bdf347cf99bdf0f46a4a62453bfdccfbdd9482de5ffeb1c7547eb52534f24e8f08de9c3b56ebc569a50f64d54c48
DIST lyon_geom-1.0.4.crate 52457 BLAKE2B 91772a150d9d363c31b5fde300aefe84a3fa51a78638b9f319f3cf177eb6aa51ffa76c2f2e49fd9ccaed3dfc2f100d0bc38f3ef8da8e83526102b32aaf3f6cb4 SHA512 9658a36b610f820a964a21363c91735a6341c77fab288f40726ea56abbb1e474598b581cb49cec038966b4ad1d4c2cb2decf81fee4929ed99dacee014f5bbe44
DIST lyon_path-1.0.3.crate 35300 BLAKE2B c330b3489bfacbbf0d5d6e03b4adab5bf3253696b2f6240f278e9ab6aca225b5b649399dc48261358e750068c0f34b2802b03896c4a90110ded1632410f54ed7 SHA512 68d675d458c0dfda9d6121ef7dbe8d400decad886bbe4d12776029ddbe58e6171492a5c99e2718b76e20b40879848a88f590f899fea42936a1ab3a21a3ff9fdb
DIST lyon_tessellation-1.0.7.crate 182372 BLAKE2B 205917b4c16a8209fa1be37a25f982eba078528e3e03e1469011884278294958947983b258419635f3f3654749c20634086a73db2b245ccfedd2251923653463 SHA512 7d79b121bf1a2f5f2c5f586ed1208b83eb926286ed6cd31e63bc1e8d412cca8dc92cf0337b369a53e6dc7a47e393c434cc78c075b9907b25d65e7840fb0f391a
DIST lzma-rs-0.2.0.crate 26439 BLAKE2B 448c25d1348054efbb879d278a8c15e9a3d6848b02752895908a0165114af39e09468ae190a935f9f59247f09bd12db9e74eaa6ec86821f53f377623bab90742 SHA512 74a00d76da2322d7e72a3a9cf9900a5fe861292f9afa4a363b2a9c6820801d504f1ab0a0e618a95e0b5b9d4933c8b060c125e061307601c6f62cada561edf8f5
DIST lzma-rs-0.3.0.crate 29080 BLAKE2B 521d9f12a155fb1c9224b155400ada0cabe8be62a6b46f3b9d73704928446bfce653df97c73ae0951b6b1cf793a2b95c37180d5794c07a399ac581d75ef87337 SHA512 1c554b5fe33e6cd6ab069efaafc2826d3cb0bbb13dc55c2438345e1dd17de99cd43da4aa3419841ce50d9fdfa5956baff477b37a09470f48908fc1b7382086ad
DIST mach-0.3.2.crate 19611 BLAKE2B 683aba7d140a3697933835efe4e2e5a6a107f0a6122ce4533bd9079c0de4346dd1a817abeca4372a44a85406a424af9deff87496e79359df4c8d9ff89daab7e9 SHA512 73622b37915f3445a57cbac5eb378bfee61f5a2383c0dd8bd7c29b5e46447405ebaeb706f3a3274e5afe37b0506afaf1511836cb8897d9d480a3abd41f18fa26
DIST malloc_buf-0.0.6.crate 1239 BLAKE2B baa59345fd372db162773adbb441caff1f6bad965c3681f244161deaee76282fa09b9af0d0642cd39ef35689f85f5bd7c2efb7ba8119a58e86c7cd12d81b2c6b SHA512 463b3d7666cdd7de618abf0cc4e488060c84d6d93c56d4e922169511a0b03de380ea988cd998f5a162b244088902198763351ac16dea3762f0fa0840fc29d6ed
DIST matchers-0.1.0.crate 6948 BLAKE2B ec3a5d01d2fedbb4dbf5bb185afbb9401410463a61f51674e0df6a571db352b2bbabfb99cdbdcfb4e511ae783165bf0258f5163f240a229b9087f9edbd0df41a SHA512 84214c1a84952d85631aa1ab5115df7cda223ac64e2acf055b6129ba1aa26ddc87615a8b51ca890ce3fee0419053fa7fe1599ae128f1d211b58c07b0c4af3b19
DIST memchr-2.5.0.crate 65812 BLAKE2B 57966413a1f933dcb2d2d4ccb29c247070f65a83299b2a9f5aa83f5a48a5c5f1c4c7c632fa63bd19f9508e9291e7258db2f16e2813a56fd84e0856f70f1e67ab SHA512 444a163b484c233e78c0e2e4d51f01ce2da93d7d29f516a95e4b0866b20bdfd3f34137653abed53eb70387991ee3e2b5937d8d4360a85bbcb50a93005a75defa
DIST memmap2-0.5.8.crate 26592 BLAKE2B ca38d5b65ce834560a26e5a3e0068db9d600ddea1ff45a015cce9568bab979d4c0483c52fd44ba914bb005b5ccebcf026fb7d9d0f43efb629736a880576f3cbc SHA512 b77600f2ef65a7df24591b8d553decd66866200240303948f25690aaea755c401aca523482d310f7606999af454e3e43711148ef3709d570fcf4af117bab094d
DIST memoffset-0.6.5.crate 7686 BLAKE2B 9a797388702389076c426052c3d54dc62802d5db8bc5c9c83990429f2ffaec4fab4c7dd3f09cd0704d1ea555e87976563bb43408ba54b5e66ce7e406d4604009 SHA512 11bdd9185b99dfee8e659e051b09ee301c7142a372a8117864745a5085c015436d2efbb1478192886f09cbc562529e209d2e3325d94938a64bc75b1d91d2bf3f
@ -252,6 +269,7 @@ DIST nix-0.24.3.crate 266843 BLAKE2B 1eb1667a60d07c4541a0cb0cf0bed2c7c5256411028
DIST nix-0.25.1.crate 272312 BLAKE2B 5981fec66eb96dfeb4b380130c4f2927a1f904b10744690e361b480355be31ac625f52614f95a89ea19fa07cc383b0975b3985f743c64f6780800e64a2f11f14 SHA512 e80b3a4e38b26687ba39b52ebebc6415e9618ca41e037d571fcaa33638ef28d022be02e2265db0149088a927fb81935329e651e2cda5c29c92038eb07fe55538
DIST nom-6.1.2.crate 147539 BLAKE2B fbee4797e91662a8c255ff80598fd50f62fbdacb3b734ef6a54ea115e6411ca73002c2766deb88ac8ccb698c481763594472204871e7096613137582afc9740e SHA512 f9a12a6c523c1c3202f3c45a514d02c40c600c835b83a1f94fd8e51ab462fdb89de3b32ad11630813d8e3cf4c8bc76acc620781568dbf2eb12469dcd9d3d0b19
DIST nom-7.1.1.crate 115818 BLAKE2B 1ec3df3d9a7527f26618a9b6b976ca8ad5176d711dc7e6163dafb1ec214a55345e952439b4c98b2ac371c9a67c7ffdc3213d1081b62b699b36af68207fa8b320 SHA512 1456efdbda4f5b3da6c8580721acf101ed7d779619ee0190c1df103244e405a8ffa0c3889901a2d8beeab0ab84074ed4c7cec5330c7cc2a5a3c30e36a2530be8
DIST nu-ansi-term-0.46.0.crate 24311 BLAKE2B d2e678e0eab5ad48534e686b1a4af344996d1b07a0fa40839072df3061bd7e5bc9341363403ea3ef8d19c7725ba3b7a8ed540c63e2209123b1b93f69418288b6 SHA512 b4f37786dc85e0596e2b7b261a5a9fe0265bf1651c39efb358dd649b926b12c3093f307b98bf0c4df3899f0a7cb1854f2596bd5c3e22fbbef42f912ab2eb5043
DIST num-bigint-0.4.3.crate 97799 BLAKE2B afe9a08bf20dc974dcea12b5f9dd465e8b399a0cb0a6d0028d08f7f753aa4dfc929710e4dae883e67633d9dda073f995287e5315b1487e8f99f8f23f1f70e581 SHA512 4b38eaa8b51119dbc7cd8a1e177f37ec935ee348b693a93378742e9bfa68fe5f7e5062b7f34638283c23f04d2127451d796d310cd8adb64dc8e865b28708374f
DIST num-complex-0.4.2.crate 29341 BLAKE2B 8fbf8f22b0a59c794b7657693dbdad7384a56c2b74e9d54992f15bdb19231ebca08f16a282f0a97280cd94d3ff728bd3358a50f8c22bbe0a3f51c7c2b499c851 SHA512 b073ac863d4a389468ed4e0a3d71c453c25dcb535a9e98e38d236b60ab0950ab5be512b1f427f5f74a20b6bc24398f864d9a1e0ab717a84a01b7b89ac3517048
DIST num-derive-0.3.3.crate 14545 BLAKE2B 3af73d35ced61f8e4fa2f2bef695f72a3cf1f1a67c77982d3518d9383331f34c1222dd7d72802cec22baa108ae08a87805a11942132c565ab8439c4983e99871 SHA512 e0f4d06fff26c2d2b140ff5ec1ba655a46c8d8fda484f03a8ad4910e8cf1392f0130d5c0bfbbe3bfb95da1f93e964f73364de6551fddd81e6fc27bfa35c15053
@ -266,15 +284,19 @@ DIST objc-0.2.7.crate 22036 BLAKE2B 14a41a5ed6beb100d68601af12914dfef67a9f580f80
DIST objc-foundation-0.1.1.crate 9063 BLAKE2B 876dd217b612278a522f2d08434537d468f8b0fd1efb0e58d0b58216e20f7f9fc80a5ff034ea25d9216d4d53b2d65552684ae5d5212f18d758c7937c91742a84 SHA512 976dcab4e62ad1c387a81723d70b969fb7d332e1f7dbeb2ea9a26c62fa999d91ff6d8f737ac5725a7611334862df16fa8b15765c036d7acfc3e42a745d051f34
DIST objc_exception-0.1.2.crate 2251 BLAKE2B 6e46ab02269b6c3ef7d67f70bdc3b54ed675919b9de979cb60ebec4aaf79fb2f34614ceadbeaae75e6462ba6f09d859e38208d62b1dcb7744db184d5ed34ab50 SHA512 62abb21aef920a6bebe773d4680537f135975e5057af46cf11cec787e5224790a54b1c338d62b0fc8c91b904f018a3fde06e624096af6f5c39fb5aeb4cf40807
DIST objc_id-0.1.1.crate 3258 BLAKE2B 9a74fc17235ffdd7987c2735a7a9d136376fd13355f0561b4ecf234784aed077d1ab5aa11c1a82fcee7d47d4d36e471ca4ba3e5bb725a2ed0049a5565967326f SHA512 ec36fae6f5cefda00f3e44618b3c9fe6ec8f528f70d1a95def6421704bfa128a6e5b4a32e9dd686bf6ff60c4f87fe8094aa5e1c8070bcde58b17fdc06f49f9f5
DIST object-0.30.1.crate 258223 BLAKE2B b5754225d2aa81bfc40fd98017ddb13a124df0151fa45aaf6ca030a295d9a351df495a1e0b08d94bb5b4dc05229c8de32201c8d6d31640994dce97b2784d657c SHA512 dc9a3a90352a662c9adf0f146ec1bd69bf5b891b6db9f455e6fee4317c74414cf93b2358ae338e14163dd55a8e6892d1a12b73636185122e6c1c5981a5453fd7
DIST oboe-0.4.6.crate 24067 BLAKE2B a3e1c3ba6534fdc2159ead7a301c6b54718b19ce2e3357ce3bcb58b31c1ee3b86b427f4470564b2e8a3e8b0120b33c25ac069bca922dfdd0a1478ece5b398f40 SHA512 bfd792bb8cf2254030e2750b09a87da70defc4fc65882d94ca70469b175e04175787bd89707cd4dee876dba127b8f3b8ad9c5eee32ef5ff0cad49b046b29a793
DIST oboe-sys-0.4.5.crate 140656 BLAKE2B 26fdb4ea66dbf2f74ccf38beb280262715642ef22b87076d16f0b8e7f7b8d284714d8c7207567e51cbc421d22224b664f0b1051a0eed3c78c16d825ccc8a1d1e SHA512 b8e31b5cfcba10d43b9e373793427341175b7e84f8805fd18a8be387bae407801a0f196d0910103175c23e41b193c4eded2a4597b958128c29e401a27d9b4474
DIST once_cell-1.16.0.crate 32120 BLAKE2B 59bfc8a44f1fec72442e3d34bf4be3a5af073f854f07b3618b2857c759dca4a0fa6ba358514ae28c25d745b01bb7b390ffe9ed6e296d163fd3dd67e49092b87a SHA512 bc199570ee43bde9245a2c4637ae738e370ce9988635c8342349ceb6fb158f376247b69f9ec4ea0e6d76b934decdc77a524299ebde96c0a2c2d29d9501b9a568
DIST once_cell-1.17.0.crate 32736 BLAKE2B 767fc8f362ce5ed7a9eafceb2f0764a2a1c7f4070e22d1e6e2498b3c841c5f761e77fb66a34b899a75d48f1563f6b9b73b90aa9431055d4e0269c47a1b043c1f SHA512 291d87380c0ea17fb3ffc9fdff8620d2ff55601c06ef65b2f0c54254fecd5b488645c6e94c6026b82071893f4d420491ff712399a782e14efa1e323e5c299c46
DIST openssl-probe-0.1.5.crate 7227 BLAKE2B d1fd6a9498b3ab7f25b228f19043067604bf20790530fd0ab6fe3d4d3bc27f13e6e94d1e7ef49314c3663477d8916b8790b90427f74976143b54b95350895165 SHA512 7e560314150709a34520472698060c4f29689d4e608dc4dde146140aa690350d3603279c693367deeb0f21ab34ef61956143a3447827a2b7a3d578b9ccd6552c
DIST openssl-sys-0.9.79.crate 61400 BLAKE2B d52dddaae79712f741b9ea69ff8cd59e3b663f9d2579272221f2629b68291fc54be56ba8cec96b33703044d398c938bc366c4f3c27dcc730998a5efe8f8a881d SHA512 71293f4fd450660508bb5b24e6f4609604c0e7971a41c67e3dc5b5459c4a8a3131c29278c1e4f0850a67af99ae41dfc221c1966d589ac16541d8a232cda98a4f
DIST os_info-3.5.1.crate 22593 BLAKE2B 33fe303542a1b560c95f987ed690337dccb1f942f12cf00484d3444087f86388dc5b7f1e998d2d71ec23b3009cceea2fa1348a587b6157d0a75ec4540c62b41c SHA512 933dcba711254aeb732666256770f4475d256f84adea1ab37aa3c179a015973d6baeb2d990f0cb75ed6fdd1ae9aa0819d0294a2a11d5925cafa69feafc43187b
DIST os_str_bytes-6.4.1.crate 23101 BLAKE2B 252fc826f646bbb999fa80b47f58ac9a77e409b10a99284c7b669304c0cd701a3d20e690350018f5d7de8c6c7d38521f3413ac81d08067dc26f76b7c0e5b056b SHA512 2199502ad24449e08370686a596f905325f5b145e105e8c7bf90ed7729bbc405e065fce62c98eada40f77f0665ca041db41f16cc8e62473501eca32c24e56f43
DIST ouroboros-0.15.5.crate 11252 BLAKE2B 0a692641892669294642faca8b8aeef91a156627712f375ef31648c505fcf82b9a17da916761f186db12440547eeb5bc568c75236d042856d0d99c0f3c2142a8 SHA512 ba0680b720d0e889afaa5ad0cd30e48e4bf88ab8cb31070fcf22457c8a87c57406bcf4a63b18e2b735de35967c34b1390c35e68e97216f63a5c26071c1d8a9f4
DIST ouroboros_macro-0.15.5.crate 20731 BLAKE2B 4de7233f7ea20b71974b1a163071b3c9da070af78e1cf39dade2cdd35bdb117b060b08c590a8350f51dda93bc9e536d67c27aec233e20dc2128acddb154eb328 SHA512 117b6cb2b33ddee68d17834926d80d3da360f41a13d552f6d41bb0691e738675afb580b8e26e03861105777c990e2ed92abd1ea9275b367ff11a73af6b7c0fac
DIST output_vt100-0.1.3.crate 4473 BLAKE2B 8c75dbcd413e1273ddf077f3b57996953d70376be6e438ee1a4de83a8c3c535d4cc866849aed91df74aa9b22d41d428b1142cefe035dab7404ec89af9efaa832 SHA512 ccca3b4c582e860b0643dea78302fbcb96f8f86b356041ae9c685e7c48f1721fd3366dd1bea39afc1bcef03b298d0f6c87918a1ba92a56e6b06bc8b4123c0d89
DIST overload-0.1.1.crate 24439 BLAKE2B acb2dfa6c6c22ea95cf58079f6ec56a2bb5e297a055ce717d40633b789b0d005be2bfd6616448cac61bd032e74aa6eed212f1677461907cea2f7f7cf536c157f SHA512 f79bc3321f45df5e3d0e5fa9c4e60524e4e28dd3729a09956766738adcf99ca42c187a01d48701ebe23d39aee00a19d4a07da798edc781b942e866b339613532
DIST pango-sys-0.15.10.crate 24729 BLAKE2B fde83347113361c5bd5e0b6be729036cbdc396a87bdecc40f7b29f8c7a9c4b14a32edc09bc6f051ffbd0eaa5acc3b3bd4cc374442808ac8107c5fcb8e35171c8 SHA512 9fe2cd809e19640e034416c489d674622447701df4c7d6127ffc04556760c6425d78a9d5dc9e09d477aead1c97fe1cdd81de282a3820536a3defff572a64b047
DIST parking-2.0.0.crate 9714 BLAKE2B e3ecd48e90289fe173b1419ad3f68350dd05359461c5842e52304e20fef9b5e089803e0c0a8e85b249a546f61cf8624367e6ec164ef7638850b451d325851075 SHA512 21c5723dc0281ade1c2cd6a1c2215ba70eb47a721a4a594ef1e54061bc79579ffe9c31f06e534fd847f936ed265cd65a59dfa9e38880f8bd42c6e8ac70a13f93
DIST parking_lot-0.12.1.crate 40967 BLAKE2B 940a112a066e3cbd15e2f6df89bfff37e4ece2194118618a96fa14871813c91798f93181ab0f768d3e1f3d60805508f216724013afb7e3da95678d0d951a42d4 SHA512 07327d3b737a913508dffb66023766348ce7f9d555c224a099cabb05baefd16a28e15fec638e3a148a5169dbd980c4541b0f8820ae9d06dfe0704482838fbd5c
@ -290,6 +312,7 @@ DIST pkg-config-0.3.26.crate 18662 BLAKE2B 2ad92dfdc8ac0414b12a61dd30ea4ac5f142b
DIST png-0.17.7.crate 80979 BLAKE2B 37628fa2282c7195f983a95939eda1c73745f89d772904173775d7e1906b71615e45de8f59489d6842450ed6f7c7b809b28881c84d5a3399da38013fc3062c79 SHA512 f8009925a6948d8b9c82007f31eefd18d2173274816c0329673e48ef725aec52ca3aab2b91e8fc4f776c8f7f17475a3e065835e578a632445e1bd70794b18270
DIST polling-2.5.2.crate 22248 BLAKE2B 612ede5fd65912ed57ed8c458103ec9d52413d2fa8311b5a20ff9964650ca39fc5064d5177d313b27f681b7f30670d76537c75ed95488032e5f52ab797739127 SHA512 43731459c75e94678b6075e2a46f2189debcae570d810bc7b8b9497d79128ded3bf41677a75a9be2a36ad7848e56d22b1fabe11df99a9df777f1d5d83c83efe8
DIST portable-atomic-0.3.17.crate 83540 BLAKE2B d141e1b2b7c5600c22cd815fbb40ad4c82c58d3749de34af2d412ba9b03021726c2d575ddaa1a30532ba6efcf8f0713ffaf5c68ba42cf9542086c5f8ba1f1c39 SHA512 474acb328cf09f526e23cb50906031621f63ad18ae46dc90b2f4cdcd61117d661db77e8e0c986a2c3a347c084d4b964295e89779819c8ac66ed7bbf8bac60991
DIST pp-rs-0.2.1.crate 25905 BLAKE2B 6ad747b3a5641c33d0f8815f5e755ab6a0d1750f2eaeab5da69e6b671fbda5ec9acfd3e854655c09914aafbb9f1656c601af080ccad5bba88ea8500090474a3c SHA512 bd4b50ce881812ad6afd3e03d83212ce4987828e379e254591a0ed47f23f16d1b51b555be9ebd347096ca85f6d75ee7a8190564a20383ddff57fca8993483056
DIST ppv-lite86-0.2.17.crate 22242 BLAKE2B 48c4a31a3b555fa37072c4de083580bb769747c7668748541af472778b5b58c3e7ab2b5e178760f542f973774f09910bdd4058ae5fb9d6b10c103eb76cfd0d3d SHA512 539d916e7e5869d832045c1aa88aec519bd000227f9b01d4dd0bfc9ffb640d5f5eb21b05eba718174773c97192a655ad3cb31b53ceb914dd19179a6699b3583a
DIST pretty_assertions-1.3.0.crate 79441 BLAKE2B e9d29267ee77532de9432f075daab704e8d80a3d5fd5515a7d3c1c9a58dd98ef0190a592e7fe4d8c22a149beec15fc346a68620a3835c1269f72e563d2a5fb89 SHA512 40a56ae7287552cb66e1066cfb89b26af621f894036b9a0cd49889ec5b25831d52cc07f9e117d905766701fa71786a45955186849d36e00cbdb5f884763efcd3
DIST primal-check-0.3.3.crate 8720 BLAKE2B 9c7b5273a5df414c57b4104b9bf795b853b433da3a5d91a1b878ef9b7cdb6a810572dfb8fae11543a106760e449b886f6e10a12347f043171f5d7947b30f2b20 SHA512 d56fcee65802b1ca272515589574786dfd066099c55a536cb1076193242859074918651c4fa3c1a7dab4fd13ba91c8f6a2a5b0789a6cd24faffc092edf27d75e
@ -298,6 +321,7 @@ DIST proc-macro-error-1.0.4.crate 25293 BLAKE2B ef918c5efaf2545ab38787c8d0c07315
DIST proc-macro-error-attr-1.0.4.crate 7971 BLAKE2B 98e2925881c2be186e22c2c439697e91d43f807eb61a5d13e3b0b4321ed50a74f3d699942c04b89b6fea0f156bb5d19ebcf22f9cd4b98a7e6917c437600ed823 SHA512 2606afa9ec78d7dad4500c98d3a5ecbd02c6b53ab829c742bed7f57b322a95238ab4e01cf268746815f1424fd9b02eddfa30e72f98c66106f57765f3d3116495
DIST proc-macro2-1.0.49.crate 41977 BLAKE2B e31c81d3b836404bd2c28363eb0cf2637cb7fb1ff5fb39333158be2b40b15f6f8f582edaec51cabd32d7b215df39c08a9632208fe4da36fc435dc32a48483a6b SHA512 b490d5cbaa790163aaa49c1595e694dfaded61c59fc23f9b6d359f4b774ee6eb20ae8efc5f5ebd59c8ca75da85baad61c065451c1cde03b3b6148e2aaa2c9e1b
DIST profiling-1.0.7.crate 29551 BLAKE2B f29e0640ddee82245290c4029e6f2b4d2470159f7cab6651bb2f1daf46b19a14aa9958efdf278b807ea4ef908ec62a6d443c162ae39d55da699af49430561ead SHA512 29741582c1a9aeacf180cb7695f15f5e11edac9ed1e6618fbdd226099f319143a05b15c94e291d6c9e8b3d2002e1d91b31f4ad04519fc75545b552622278be19
DIST profiling-procmacros-1.0.7.crate 4957 BLAKE2B dd69ef57ca71d014b4681828f588a49dbd87ec0b84bed37fa48209b0e6315cdb7085c4cd2e73866db9c808a99aff1382fe781ab3acd2b0e4ef33b4d373a43f21 SHA512 22310206f919a594404b528087fcf3728fe2aa258bab260f58dd91a0e6e337f4add59e8c029b8176ccec1e02bbac7c9f40bc136db9c45621b169e6e0db90bd71
DIST quick-xml-8496365ec1412eb5ba5de350937b6bce352fa0ba.tar.gz 133091 BLAKE2B a6e703f72432fc29bce310307c933698e566ba93ae10048fcdac95abb93ef217002bed452dfcaa64a7ec86396f9eacb4e8650252618abfed0fcb0f11313d5ba7 SHA512 74b4f12120abfc29322faa185ac83f0a7a0cad7b9488978e1f9fcebc3930b0e2dec97dab8b87f9ccef1066908677f20b4a32978edc4bb9c39b3dcd7a92892436
DIST quote-1.0.23.crate 28058 BLAKE2B 81c483fa26b36b5c4dbe85b386a74f5bfeaa854a99c0d678374507613da916a60e3f5b14d4a4d295e1c9ef0413fa1f16447df8f19a9db8cb0485b7a5c327fdc1 SHA512 3bce6846dda94d285de15771549099e60df39c8395c498b372c90a240f77df31d6d9048127913ec1c7ed8f3a189470ade1db2bede406bb00fa715ea641ec87c2
DIST radium-0.5.3.crate 7588 BLAKE2B ce39c4472bfa731745a0b78179e00b83116d729326d7a25dc629278949095ecc24a1eb13d4d39981e95536cad3f3fe2ac77ef9da27b8d462ed720bfc7624fbc5 SHA512 f4af86cddec991b11d86b1d976e212bb19da8d7e5ae1d40ee812391c21d3fc855bdb2770395baf7efcfdb5b2029a99c9038702a28f8c9e925e1b23f03c0e717a
@ -312,6 +336,7 @@ DIST rayon-core-1.10.1.crate 70008 BLAKE2B aa6dc470af3464ddd20f75faa5793bbc684d1
DIST redox_syscall-0.2.16.crate 24012 BLAKE2B 9497a52044458b1435ea16e86ee072e379b6b11ee31602ea72d6b6072a4a99426f409c2e58108a4e9c36dc193fa49c83951e71f4fd4e158eafff18c594dc01ad SHA512 63b5d876baaf99f5cf737679bc6ac7a9e3d8a41aa93f5c59416ce7e3841e2513bff678773553cfe62fb452707f82acc384ea63aec932a31bf94679cd1caddd27
DIST redox_users-0.4.3.crate 15353 BLAKE2B 5e3b4e902566620cee8856c092cac193366ddcd2f5aef787b1d485353a0da11486ae1359dc60f3c87a198cb68f93ef99ac7551cc2315412b93b10ffb10540633 SHA512 0d3366e23cf93e1b0e025a29025eaebfcd1145bd158e2663b94fd952dc2d8a25566819e3a03c4136ca16a6408d37396e2ead0814c3f0c2bb10334dfd0b838fda
DIST regex-1.7.0.crate 239421 BLAKE2B 6e9434bb9835bd8e15c81e817aa64e8443c4188219caf46579078c6b7cbd98ee588af0f526e0fd5a01814762dfaa113ca3d15f7cfa14e969d5acda3a631e9560 SHA512 974c15a593d86c33e0bb34f7a67957fe96dec07b3752f2b6b968d657845f5d2342a5ee9ec1359109c43e4f46c9b2b2b678d59f7b752455a0ab1435c1fa56ca3c
DIST regex-1.7.1.crate 239648 BLAKE2B d68591ab0627f0bbcead8e81de2b9f6c7eb7be2d29b2c1700e06ffb541c073ecc054dfc76aba8f55ac0630b191d4136805bd04c7d1b9f6cbb1ca2437668ab244 SHA512 ee19bc6d24b981a151324ad4115488383227ec33dfba0225b35b6252f0d363b8d906db59a45170139c7a687fe681a983c2392d2921c7365db38c7c0e9745066f
DIST regex-automata-0.1.10.crate 114533 BLAKE2B 0e357229f6825f14339b1d7c40730b83e62bba12115d01ed20313320766e769a653a2fcd2c9d19af51a82c38e9e42c1a31d005e1f44f5b6fbb3ead7c9c74027f SHA512 56d64da361afce82c6cb49e70b99ce1fca3e1969c54bba5f9971db135f8544c65f49feb8827789947b3d1dcefc9c49a7a434a7ffe0d09c5900345a1733723c5f
DIST regex-syntax-0.6.28.crate 299288 BLAKE2B 8554370e269e888e603c403089aa6eb4a087ae65fec016a428e424289990a07826e37a2e51cd353c7d530d5b3421e2db6a8f9d50e62379867bb5b6cbc57f2436 SHA512 ba5fb1622a330b67a4eb820551c7f20dbfdc6b38eb697b9bfddea4cf0060b473472045e93aaf6cb9727ae609e06ed285e1e42f06f34ac730ac39fb90425bbe85
DIST regress-0.4.1.crate 99620 BLAKE2B 9141cad8f53e2a8e3ea3d746737ab5b8c75ed345f09350b6c337310255969c033a28591909f5914661414ab69caefb0d4e26c00442b40a97d8f2c2937dea5765 SHA512 05edd8e4d3a6bd8f75f4f75e79275591a3be5d481921a921c09a32053bacef8aec6104219c809d76d79784466f71f7de193305f48ce1dacc1708d50452c62a17
@ -319,8 +344,23 @@ DIST renderdoc-sys-0.7.1.crate 4592 BLAKE2B d5c543119a498bf295bf506b164945a3de6c
DIST rfd-0.10.0.crate 38170 BLAKE2B 90930add671b87f1af618ba93b809dbb37e4273d1fdf8e3d50c23b9b90e6defbded98fa0e5c3de9356e7dc6e98fef587971d4a100b25848fb544b88f39bd3541 SHA512 1ae6a3b81f590f260211735cbb73930b2c4c7bae0afbed02ce301c68f61615ba0fe8b8b70a394c4ec6cbdf33b7bc8a2618923a46ddbd633aee647933cba9f004
DIST rle-decode-fast-1.0.3.crate 62086 BLAKE2B 402d56595936734f36597c18e816a798ade6a8636b27e79acdedd4069da38e22e6ded5f2358ef0f0d509ea752e828fa294a4a9ac6d99cf26472fe21a505302c9 SHA512 f647cfd9ae0bbaca4a189cd1f8d1f8531f6dc0ffa1fd296c75cfe405fc9060e25be74581558a9195364ea90e32c7ccd60e066d21704cae836d41606b5799301a
DIST ron-0.8.0.crate 57013 BLAKE2B c9a74f29ea33a8ee5ecfdee7dc8f56af17c293d4d15ec9be320ab45f75ab6d6b87a7b1f8f44a40e9548c957a2790b157799649c383f1621cbe0957455e000778 SHA512 689aba27920e5d4fd2c9c38e3bf3eb490ea810170bdd6c04ea270a1e57dda0955768a61344a21decb30ab73c460436e90879b4b66de3e62ac7ec27bf4ca8718f
DIST ruffle-d3d12-rs-a990c93ec6.tar.gz 16845 BLAKE2B a466d19d24c261d14a60127bbdf36fa6cf5da2956d6c6c0703ab8b2ce4e2c7bbf797c02e87ffb861f05c92839b5b4a7d6643e3390ddb10fdab50cf6a4dee3c53 SHA512 96ce9dfe16bd4af28ce71c96a9765c96c367f11887c8cb72b73604e6d11cfd0fefc7c393455e896ce8d96ab9b6703a383617398de6f7e5529b633e912c138989
DIST ruffle-dasp-f05a703d24.tar.gz 621307 BLAKE2B 9f82ca484fb6c6f79e4c9ba3e9e3fef44410e95b138202d65cf0dbedfbdb21b93080c0d816626d624b4cb7f4f0431fdb350fc843cd3a6706672989f660225759 SHA512 da0bbfa6e9561182ca5e896d7d6266c2205ce7757215f0dd0a5044fad7f8d4589d68ffb7b4e8f37800a966bcab21750d9db27baeb5607dfd467375803f7f7b43
DIST ruffle-gc-arena-318b2ea594.tar.gz 38971 BLAKE2B 143c24f072a9686d74293dd4862ed016db5ec0360a1bbb4bfadb4dd883999b0a814918da7d9cc20f3705857c1554de0bd8d1831b4e56ca7f121dd1fdabc87475 SHA512 ff45aa0760cc2b3aa313d26e977ad6fea5c3e9ef6d364ec6f2ff197b067d5429f219e36cd729e0f0de8aa40907f80cf12a93167375168009a2fdc9bed0ffd430
DIST ruffle-glow-c8a011fcd5.tar.gz 151906 BLAKE2B e63f7c1351d57d4f5aab470a3c1ac9e3756b9f1aa9924a7b7ab69146a09d05dcae9e6bb19146ed1e39291de1073322bbf849421b615196ff6654fa4af5b02bd9 SHA512 2546416f8d6d0c6495925a690e0f39da57fa8755bd21f9f171976af80494912684890aeca4ee7947f7ba83ef9763d92be8dfacd5c08be2bc793285ddb5635cf3
DIST ruffle-h263-rs-023e14c73e.tar.gz 83430 BLAKE2B 8128496cf5a64edfa7d9264b9f8bf791dd0877faf60b97dc33a94c49f610bcbabfe2d6b50426460edfc4836f0602955ff70c415268c375fcd88cd030f356a4ba SHA512 2226b8ab4327d6f4f2763b3ece3958bfb604542d3db8c3df4a348edaf8cd9f2ecb6f21a965117b23ec3d331787a998a791eceb5a2f28611208d6550279224136
DIST ruffle-naga-1be8024bda.tar.gz 653667 BLAKE2B e3a9aa9351f521d3acf229014bfeb79d32a685fff4723a04e3a130b14275c3eda55e419f916f15adafb3773253cf9f08886469b22ba429eb7170ca934c8f0172 SHA512 66ef7a06c3add6605567e48be0576935df3444be057864b0be671f985a7f901bcba65be495032741452ba82737c11ab8dee151bb7da226d4e1cb01aa704440c3
DIST ruffle-naga_oil-f4474b5328.tar.gz 78009 BLAKE2B c63c222cc3db6f9cbeb26b901de8b761a0920915ab6f01096eb533769f5941c4f31bf99e2855451bde0d6aa40d713c5c85e37b9875cd8c43984c56c307691a1f SHA512 3965648c7cf4b7d7012cb64128788b020341f9146c733fba980f01c9bdaa8daf1d0360f7b0175c117324af8b12eb495071b585cf0cf06d22efada7fdcc8ceb25
DIST ruffle-nellymoser-4a33521c29.tar.gz 5970 BLAKE2B 70d67cfaea7fb849741fce315494644f094be7dfb653171126122aa00e80cad4ee0107dbb3b0953a046b20177242dc3f73c1253224f2fe60aa39252d9542b303 SHA512 c9c0e2ced1d725dce18ff6202262997e3290c8141dc67a6422e2fc8a0238992c48acb187bb9f12c5eb694fa074d5d89c7ebf3d953c02153115bec57016c7bd7b
DIST ruffle-nightly-2022-12-29.tar.gz 12919825 BLAKE2B 618e47073c99522c974512fc0e4cde214f769c11d9318ab6b6e3e51baf2d7f22770435d2ad0842bebaf80790408be4adcd88932700007dbbc4d9f0636f705e94 SHA512 78f1ce31965b3b57c054f0b17ec80307bac1f46697cc7ec6771bd09141829f51d3b71811f3707e2f707173e1514041cac82f7bb50824d373c68bad9bd506f163
DIST ruffle-nightly-2023-01-25.tar.gz 14856031 BLAKE2B 642833e229a43ebedb61ec070aeb65024bf315b6cad75e1174e1e39bafad5f2e519af120a104655cba513fcc5eb09a9da880c03f5b7a67e511d83b529d92b87c SHA512 372219e49de5d360a0cdb6113c78db599419241303a1e917fbebc7910bffb3b035ba97b3269110a90037ec94d8d1004d153d85e6772802155e0899770517a5f7
DIST ruffle-nihav-vp6-9416fcc9fc.tar.gz 37411 BLAKE2B 96ab391a6e9f7031506089d8e3d18bbb699c21a7d1b8e3f5ee2fa38463c8b922add2ca5e576b75a582251ecd35cc95db4a8b73654ca947bbff19e64bfd754e97 SHA512 45d8066743dad45b90d7e320d71f1328753c8a7bc1b8dc3a93a11be885a8ee6dc0702f32dc438877f3fc50011f8532da3bf70625475a691298571f33d1afaaa5
DIST ruffle-quick-xml-8496365ec1.tar.gz 133091 BLAKE2B a6e703f72432fc29bce310307c933698e566ba93ae10048fcdac95abb93ef217002bed452dfcaa64a7ec86396f9eacb4e8650252618abfed0fcb0f11313d5ba7 SHA512 74b4f12120abfc29322faa185ac83f0a7a0cad7b9488978e1f9fcebc3930b0e2dec97dab8b87f9ccef1066908677f20b4a32978edc4bb9c39b3dcd7a92892436
DIST ruffle-rspirv-b969f175d5.tar.gz 182056 BLAKE2B 932a4a7f41f383db1c33ad32ca79006dfe0a387fafece865089b4fcce4ddc2cc07b352d051722b762288e3e05ef7aaa4ac784d03f522bd63d6e2aae2137afceb SHA512 396e2f6191521ced5c988da9ca10f36f3ad75413deb55ad5d123acd776bdd7922619b4b1d8d82abee17f3e88f6c4597cea97e332d9319a919c972cd7f5cc0ea9
DIST ruffle-rust-flash-lso-19fecd07b9.tar.gz 676612 BLAKE2B 3c2ff3edef1aad8e6276758fd3bac85106fa9a445180c9c7d954d5b4e469751b9a14e1cc8c3bc4736a410f5e1478eb821395b8f0a1acb0e5dca1082155b0690f SHA512 6f668066999d3454d255d227167ef92e8fcf5755017617439fc227d53c5b8169a7c585857bed4879991e8cab0a6efb4ee04eca3e1b7e01bfaaa4cab70af30d3a
DIST ruffle-wgpu-c5851275c5.tar.gz 4745099 BLAKE2B 48df7c2037d7faf6d1423aff30bb252408274ae0403815bd5c03238571ca18a1f113e4779c59f99c8db0f90684222d7cd9a4bc8d320b5d42b1af2d6044335f0d SHA512 141e0f9aab66ec84a0ac8e1a7a8f6c8962a72f1f664e7817d66f25e20cded3c71a99f9b2264e55a169997bfbe85cdb26e51517d9f01f8730355ea86a318c1a0e
DIST rust-flash-lso-19fecd07b9888c4bdaa66771c468095783b52bed.tar.gz 676612 BLAKE2B 3c2ff3edef1aad8e6276758fd3bac85106fa9a445180c9c7d954d5b4e469751b9a14e1cc8c3bc4736a410f5e1478eb821395b8f0a1acb0e5dca1082155b0690f SHA512 6f668066999d3454d255d227167ef92e8fcf5755017617439fc227d53c5b8169a7c585857bed4879991e8cab0a6efb4ee04eca3e1b7e01bfaaa4cab70af30d3a
DIST rustc-demangle-0.1.21.crate 27920 BLAKE2B 73ada923b9b293c5a9893f86fda0586139afbb7d56894cabbd70612d1fb0330a9e491d5143fe3498a0c8d3e1a3f8e63c14b20865926e4c831915592486ae32d0 SHA512 4031b26863a726cc6d3398b48682e0f0f9e5665abf20a5d35343a904ebd7c0d3752dcdd3a049b2bfa3e2a303214dc39a2980700bcc64464f7029be3c7f34727c
DIST rustc-hash-1.1.0.crate 9331 BLAKE2B 16ac56622897f47a06b661fb59a196b08d48e782ab87549c8bd5c6fe92f374c9bfd44dcb36588512bd9b6125c2fd79a12d648aaa308fd9694bcca3a7c1b49ac9 SHA512 84e673ea9b046f7b989d47f2c4505557fbd5de991e6fc9f56a03605d40e0b4ba5427cd566954890153cc033ccbec6c984306634571935bfe0d4cdfbe56f39544
DIST rustc_version-0.2.3.crate 10210 BLAKE2B 1f707d1c66d907c9b1d2ef6d0bc6bc9c89990a7b922a6dfc2041865940ff3854c4d0e1daf558279fd5871af5818d4000457a32c949104f46538312fbf730443b SHA512 01fa7a758dcaa4f15c18628a0d5ee5adde5ade96a8b7dde0908e39e27b290d1e9adb20d44e2adcd379341d2d4a0c34a80dc12553a3bb4efa4758988f28989779
DIST rustc_version-0.4.0.crate 12175 BLAKE2B 6fda2ce03eab45d7193fa0d70175cc7ffb56b7be85fb1314092bdcfd3948ea145420569ace3a47218a4a2a6e44a818862cea6dd8cfb945475496f63b591c29da SHA512 f66da7c6efe431db06cd01180d84ba67fcd38f8cd6ef693762957c00ccc2211f23c08079d7f184776e08f28d2d6ca3bdb5f5016f7de245c6193d4722891ba1db
@ -351,6 +391,7 @@ DIST servo-fontconfig-sys-5.1.0.crate 1790708 BLAKE2B 558927804da2698ea6538ace27
DIST sha1-0.6.1.crate 2931 BLAKE2B 84e0a0472edb73fa732240d75bb6c80ccf1467ec2e70ea89e9eb7c30ae89e778c59ee3aaa1a19a07d4e40d6a87e41d943d32661834cfb988b1cb329063445226 SHA512 8eeb9a5d2c202a181390e25c743da6f8e4f451c1d7d51a3fad0dfd5ba285dd0c7eb851b26eb197a550eabb3aa357f0ebb6f84f588ea2d36cc3c70e62e871812b
DIST sha1_smol-1.0.0.crate 9782 BLAKE2B 214b58f6a8681399b9c925815f4ff48974466b399e96e372c9592cb139ba9306ba162b3b426dc12b585ea15b616fb58a60d253b4d928dde46217de6ddf7d0437 SHA512 75d6809a2aafd47cd5f5888f42283985895a9c82b53ead7529a23cd6f2484f32654094dda7a9e5d93e82afc9d0049938def1bdc28803502d140d06a3496adea7
DIST sha2-0.10.6.crate 20558 BLAKE2B ceae6f1e28606371f93f5e4fd617b2cb057ed9aa4aa2d81bf4c6af4ca47d639a51f50d0fe4fa77667022c770056d6d711beb4835b2341ae0a8d667f11a4a51a3 SHA512 38dea4c300ea8dee22587ab0af6d66dbde824e1cb071e02e7790bf978efff6bdb6d4076d61c5acb38e86e69261a65811a7bd0182299d53ef053202ee54d2b05c
DIST sharded-slab-0.1.4.crate 52479 BLAKE2B 766d81761909006ac740cce13e8361734c3c7072cd07c8c8f611f09772e16f11aa93cabdc5273b9446f5da391b26b7e7d619be523488d8b3558c64c18f20d591 SHA512 123a9ddb126d1adf41a30a632604264d66a06bacc497db6373e9dd36164197f8321f2fc826a16247674f0f69d9f6e30aca37810f787693c4a5c2cee8c5887c55
DIST shlex-1.1.0.crate 5199 BLAKE2B 325536bab9c9707566a099a161e7bc8448c7369cd9d7b2f144ed71543d551038ef1fd764376491e8076ccdcc928b5c4e177764a68584267a91386b8d542264c3 SHA512 e51892298dd79dc7cf04d7e6f0a03e4850a57b15cd75e6e3b56e2a0b15d4cb85ee8afcc14e3727d193c8b91baec8c2864a9c800834ee4d18a1be584f17591752
DIST similar-2.2.1.crate 51147 BLAKE2B c86005ff69a14980db2cb90b13ed908448a711f09d1ee20a109d1dab2cc5bd839274f3803082721f1d81003c9011efdadcd190f4cb46eb09b26e338107546f45 SHA512 9a353bfbe495bab83e401314bb97c6605fa6283af06e03bad50bc429388c7abf44bb9cc68db781ef2b786840eb444907f35b70b17343b2cb993800536b4e36a2
DIST simple_asn1-0.6.2.crate 15992 BLAKE2B 3abf422412f51d0f8d3440c245792b817eb3333d58f27146109f11278b8eac4b49898264e266de3d00816319aaa822eeb0d1115e46f96f2c9a971b41a3edce0c SHA512 b2ad0042a4492f8cfdbf475b52c87431dccb91444ba3ed026adc488c844d1182a6ec88fc833b5dc0c2ebfdd6194c5b49289af71c151822228b8ecf89251ee9ae
@ -382,6 +423,7 @@ DIST termcolor-1.1.3.crate 17242 BLAKE2B 5aef69c0004081bd3cc4d531d13d63627cc0231
DIST terminal_size-0.1.17.crate 9141 BLAKE2B 048d8e8e9dad08aecde12323681d428b9182afb737136cd6699e13d231f7882091c9167cb10a08e5151df912421a6f89132645627e42ccc73d07553cadb1c8cd SHA512 96ec1bc8abd597f01ae59da567036d5d40b422764a4da662e2030c3ef4ce80a983c8b6a4ef1f34d88e649e0b1ea27b206d56a31924bcd2d31ff7e5a2e96d4201
DIST thiserror-1.0.38.crate 18947 BLAKE2B fb81df34dba2958395ae360cbb14e2708e5a3cfa5cd0bd03c58f29c146d8afd8595a7ca1b30f1ed2a75ba140a55ba450fd4fd040aa1a1dccb0baf393b0e98d60 SHA512 95b8ca682b579834a04058f03ed0c994ccef426d75e0fcc28ee47151d343da25e8fe31f8157744d942aa54652115f477fc6037f91c581dbc127b829cc96476ce
DIST thiserror-impl-1.0.38.crate 15429 BLAKE2B 96202c256e970fe23f07b461d71430889e36d9f0e83608d001c6feb4e86f4a34047ce93617b27f89c6e2a5d6ad8702b9f64ac7e59bfee221677261fdfcb06e69 SHA512 628aa28404a181b384ac6a11a433829a5481d97face5bc1704349414f36e93440738122fca716fdf878719870d10e0cf8d495df6b1d40913e985c2824cbc3aba
DIST thread_local-1.1.4.crate 13106 BLAKE2B 64c19368f8cec46f23b3052759c4c4ef0de50748432790e6ea11b12477239b177d54e60b9046fdcb2f495b8e0b37ad82809d03602edab9fc85cf814e3bd94fe2 SHA512 db7ff3eb88a73d9313dd58d72397614c5aae6be1d64ead7f16535cae2857be3b27d189e7955308591ec64a0d67777fd2a62a2b124ca73facb9a2d8e0458bdbb5
DIST threadpool-1.8.1.crate 14408 BLAKE2B 8bd64ede19184e18460f6b2ad5bc888d6facd5fcaa5b43c35269e35909c9c68a884203f5c4b92619c097ad48c19ec29f73085755ee348cc637233ff3b5b50ccc SHA512 adaa5aecdeec25848af15b160e5b39833978454d834974211bd586d81837f2ce89e5590f08b7e0d4868346cf57056913a5d41bc8bf92b89109ed769cce4a8be0
DIST tiff-0.8.1.crate 1417977 BLAKE2B 4beeb5c46cb598311cfbe486d54a99d99ee2bef5aeb040796c30663dc724e9ba2df82530004e933d82564bc8b1ae89af60799725d8df2647003b9618f5537943 SHA512 8a71882990b07d77ba81a4aef6c8614659ba3a37de845123fe4f4c3c5840a1d2929b4d79133b32e641cd23a856251bec46cdf6eb5e0be72a568761fc4f8ea77d
DIST time-0.3.17.crate 99048 BLAKE2B a10a4b8d0edf8ca5f073f0840060a487a60a162341be3454e069eae48fd43b9b7bcfdb9bfd7d31380d8beb1c5364bfc9b774f3f438327d49f04eb452d2932e9a SHA512 c69ec373a79038315d0257203be16539f5efcfc0ceb9ce2cc0413f3d6ab6ff39881720c310f12cada17536ccecc4501f081890290d15282514b26fafc02abe69
@ -396,8 +438,15 @@ DIST tracing-0.1.37.crate 73888 BLAKE2B 60c74379bf84d7b152f0b4d5b4d4669a1227dce0
DIST tracing-attributes-0.1.23.crate 30450 BLAKE2B fa21c4074eefbc1110268cfc79291c909503428b26560cf68cf04640a6387d04c29e22b8f86fd48cc1b8c0fd4bb67fca428c9f8009b3c99879352b9d9f68c5ea SHA512 55e92b4e0410805f8cf9eb8ee50cabcf08d1f6c6b4b38c5a51c70f59d06c82096af1f3b9b7dd4267945cf631fa8d99f78ae9b3d0760f9c7ed4d6da6e5e6ff3cb
DIST tracing-core-0.1.30.crate 60351 BLAKE2B eadd1ad68830f4fa9972d207fac3b5be6b0f6d3d2ee4299f2fcd6d03313db6850ae0bb278ae618615e0bc2cd83ffbde0928857fe8e01dd9591a9e80114e0ff88 SHA512 9a14edf6338eff6636473f4ea844dfe337e434c14f40e7b9af6d7e6cf25f745f37bbe372bc63c01043667bea2f5b248b8afa8d6aae4cac3dc5193e3383ef1c65
DIST tracing-futures-0.2.5.crate 11637 BLAKE2B 2b23233705674cadf5dc8092d3990f375e780de2b9bdfcbfdd5f4bc9bd0f15a14c6bc8e36963bcd332e729b33b90ecd10b2250495e0657eaeb302e666313534e SHA512 8a437a029e18dcac3a3be7a3355a63e75432ff892316c9f2929c7557e3895b1bb5efb59a7588372bd9efc386b5cab54c2b382be99ef8fa643e66ae5656e506bb
DIST tracing-log-0.1.3.crate 20549 BLAKE2B 1e2b5f1d96983b0dcf3e61f71132536e21dc19af0d532dcff7cc91db45e60cbdc1f8b5b7a7b2c13214dda4e3becd4f3d62262def1b608a99fa330ccf1d716323 SHA512 440cb8ddd5823cd0d86b68bbbf29f6886d5800f95d0aaa9477f98f188013fd009c2b9bc982b17efd08abd071bc70ca511f988b9db8c21d8e3d323fb67614d289
DIST tracing-subscriber-0.3.16.crate 193572 BLAKE2B 55e582a5989b68ba9fd44defda52a8ec6e85322cb6d629b35c20e75b0852252f97bd21ea5d7587a1712b02e795e534948549e867277caef28592d0e6a50e9aed SHA512 e7e2c00c027cf36e3e97a6779a2ce97bc8b094eed608e940fa0b994188103632c75e565c76944d5f6ddfa2fc6e3b44049c10d35d9e3f3a639eb5249d675e4c45
DIST tracing-tracy-0.10.0.crate 9606 BLAKE2B 9f389c75a7e5a872b6787f309fe4eda125ebabff48cd19782f2e18e8617d3c429ab905ecab46ce0945b660d23ea662c83c4870349c41cfce1d1557f3d6c4744c SHA512 c4cfbdbe1e409f04cb19afeafab90ec2e140bb9616bd4d118cde665ea07ec0e5f9604e84eee9555d86e7f847e907e5d29d026315f17cc4b7ec43ef04716f42d2
DIST tracing-wasm-0.2.1.crate 9372 BLAKE2B 5cdca349f6a4552e2d22812260c7ad94a2f2a4d0e94c9fe7edaea22a840d439e90425ed65ed7f572f46451626689cb1609e85722fac80ea9592746df29d2e5f5 SHA512 9ac4db2c9bd3f19351e5ad40a03da2ec9cf4b7d78c1d6ffd5fe55a4f94524adf90a0acdc9d97ef6e4399b90c70b90c413f2726e5cab9e9c79877105b5d00f342
DIST tracy-client-0.14.2.crate 14961 BLAKE2B 71cb728dc23b0bf2d2bcf6e638076b212045403063dbbd1528c64a5c58bf881698b1a19294826f39ba10cf540acc6e6464ef22ae0122a0778cd75f914fcfb840 SHA512 f1d6db9c7250311d4d8c4add8aa0b1d6389c1b22a09adbccdbbf597b446929a056efae9a90348acd8dcf95f2d89c33cd6cdb763c1668f6d6b29c70c8f7c63172
DIST tracy-client-sys-0.19.0.crate 290764 BLAKE2B 42a08f3bce1f4a1f2caab7c088d73c1238a03dda76f3a6a0106fef689265a0716b60c5441fd9b2768fdaff373abf52abf2bad766522dc9939f12cf2be064c620 SHA512 ea118a3a19b7d428953347cc6befe11beb6e8181f95dbddf5d1b682700fc8b51493ca898e784b5510b594a25d05b867562a3ccbe052efa875eba556a6404711d
DIST transpose-0.2.2.crate 10816 BLAKE2B 87c6e1152858048fa188406a3683781b5af1f036c8236db2b4548a452327ba221a0c6ce71a6a191b2fe854a3292119cfe548a9b57266f4857fa0e517c331a6d4 SHA512 a08347773fba17586fd42f8e6ccd17c30f6d6c22faf391c6ff57ece99147754366b4273b41186a206f54b2be0bd3b29b2ef49182d23f0cfd11137cb49368338f
DIST typed-arena-2.0.1.crate 11439 BLAKE2B b5bd230a22894c5545966279b40a8493940719fdf79bed144ad41c363e7f73bfd40e1492efa8d96fb9b5b32e3a31405ef9dbddd55d10bb900ac082d41a034b03 SHA512 182fdac0ef9b494fc2966005ece2107a3c53b6eafe4eebe9be3d552aebe143e05f3db2b51693c253831744fc265ec2a557d31ee42cf0ba5991b38d075278415d
DIST typed-arena-2.0.2.crate 11848 BLAKE2B 1d2821519c959b8e5f32942fb106f836a9aa753a43058cad6898588f8e0d9abcbe7a94a91ec8d30c62e59833563df48229c6aeec8bf7a396de20895e39571d11 SHA512 33f43488ff63ab763e4330d124e3290ece41e50ab78b6f12dae3a2be4d7f5bdf6ec876ab3b1f8cd81874e335fc41f3a2254994f250d3d6aba682fce557a6a399
DIST typenum-1.16.0.crate 42477 BLAKE2B acc6dcd4521493c438a8a3d997ab0456fdbff3db66aee9b81ba219714d47522c3ca8fe26f8ce84edfda416ff9a22747caf3ecc9cc4bcd1e7647ac351d5aef407 SHA512 93da3ed62573acbc9d5d31257fb72ae9cfc7d59e4040c1f32d93e8fec94795e1aa20a3bf76ddc64c4b383184306bb2a66e51fd61b64dd4ce46a1bca8238b57b2
DIST unicode-bidi-0.3.8.crate 36575 BLAKE2B c0442dd47a8ee81f575b28e34c9781ccf507b53ea96d1d4df2e8117231e8e67579031e4244a2dacfd6f4c24ec01fbbd4da7c9ab72ad50af51ef56d7d813b6444 SHA512 810b5be48159ecbca542c715496f279518285c3b09f7c39451986f94e6c259fab1057512a2148bf99ba9abf76e861a24456b547cc2273f0b45ed5d3ce9dfe3d5
DIST unicode-ident-1.0.5.crate 35455 BLAKE2B 7e14ce97ac53a88ccec015dea690918a673dc5b49e44de7fdcb5421871da35c4f514c6db9a363d6f4bfcf2e9a61a50a593d345d0b6f388ea882b17a00cd0335d SHA512 d355370daac356d900cd4c0a792d6c0eff114524c4bffce4d7e74469fe2117883ee00bf0e27d950b72e88739473f2045d5f83440a0aedfede97b4d9163b64a6c
@ -406,6 +455,7 @@ DIST unicode-segmentation-1.10.0.crate 93893 BLAKE2B f0604ca03586726b878f7884a63
DIST unicode-width-0.1.10.crate 18968 BLAKE2B 6174e307fd3ee290d0a5d1d31233baaa5315cdb73f19b8580718e9f9eb04cfd3aeaeb474af1e50c4b9fecc6fc777937dedc527c9dc9ed14ccf42af099e591f31 SHA512 9836a8d489d18ea1ecfe1957ed6d5da7dce825e138cd1848aef093fa8d2eb83fcf01eabb1a2446df4f5ede4e67316e9e81b5d58b59d4e8c5d67870e8fa5dca3b
DIST unicode-xid-0.2.4.crate 15352 BLAKE2B 80c327b39f3b8f2cdb5747cde968cfa1efe7b65b6bee9136adc881fa19f66aa5b1010d9d08de55a61b322d665b5b0cb0395e9ac471f6333c40d8dca5d97e123c SHA512 e67bd1258e1961807d9d5fe583a89ab5b82b2a529ecd32cadfc79aa5331380eb4a2db9fd96b74c8eace47f2f29021587d69bcdbf79f7e2650e92a25f7839d03c
DIST url-2.3.1.crate 72777 BLAKE2B 6ca0e537baf373b92269b2531945c1cdf360f1566cae4734dfb96f05a605e5c6c82e3192a1b9dde0ff22b92b87aba2d56e32a1bf17882b4de15efd7cdf52bc76 SHA512 8224010bef067574481e5d84100d944782d52b49db7c396ae2b4dfc145ed58769c15440d97a0fed4d2f9857592a8601417cc5b1bdea959c47a3e7a1f7182ed0d
DIST valuable-0.1.0.crate 27718 BLAKE2B ef5ded994c9a6dd302bed27f0d757447b0c86dfefa499c1ef0d25c3a6745ce61cfa2c926826534c9f605f9b89b4a19f91f06f94ae7c03f1ddc4c58fab3ae58bb SHA512 a97f65db1f1c5049a276dbb0e45e25c6fc6ce9d27ac1fcd77c945324cd8216ef60344065c79799ca04e338455e4f7422c44078eea32d5fc359dd0211ee7eb387
DIST vcpkg-0.2.15.crate 228735 BLAKE2B 6b6bacd9a7fa38919241f45a97f58cae957e58d3aac99df208a26aa718e4f1644f4ccefa31b09151e5c1952288e0e5837c363918b98c7f55079a948a952c1c50 SHA512 7322a21e8811b2fe4e79e09dc321458068ecdf1953f05d36233f3278ecc0b1dfc64194db7010dd46fcf692285f42475beb090c6c6cac0c8f9fe0eb5c770e3172
DIST vec_map-0.8.2.crate 14466 BLAKE2B 8f109fbff19604b82ea2aa61c952e2ce9b5597ccc8e1ef4e847648e2de08dece8c4debe92889edeccb8d393645fd0b62436b49d236ded7ad181c4a51239a9539 SHA512 4f1ef59bc2c437e79f1f84fe021bce5aa8ccd581f500f3d5776913d5f17d45b03ccee64f5bd03d47656318cfc9344a1f4311079d471fa409a8e4e94c143973f9
DIST version-compare-0.1.1.crate 13224 BLAKE2B 4bb1e7db6a4a5b30f4ef950234fa939bd562e8d5693aad42a5dadddde7caee01b4dc42b28d8ef61a769cf573440e57c0dc321f8a8b4b3dfc0cc035507bfed886 SHA512 efc9441440f702518867e2056c0ab066cd2fa6949112479e463802610f25a4d50c4411eb5fd0ba6ca9b187e358fce8d99579188e0ed9ba0297191172ab7af408
@ -430,6 +480,7 @@ DIST wayland-sys-0.29.5.crate 7926 BLAKE2B bf09b522dc69b2a49493e769696196e18bfed
DIST weak-table-0.3.2.crate 23989 BLAKE2B f5b12d62704a86f77fabaac918d084a4f7471b52994307da20376d48264b811eaeffe2cae2f28ebeeefa4338c758516bcdba5d138cd7ac12ebfccc697009e167 SHA512 78936f2afca36575d3faa823ef4e621d7dea9e3eb4c8c3e1d66af296951fc25476dc8cbadae184322f6e1e8166410df617fe74794b2d3696d599bb2406499562
DIST web-sys-0.3.60.crate 700485 BLAKE2B 13942a583dd8462b0591a19759a41f41fb17d2356b3bcd78402e420fdf5726782e5b4ed211c3716a81c1cdf64ce9b8adecaa3fa22756a3ec84eb7c3e12e3018c SHA512 d883363f99300e2d50bc5bf198f0fb8d6c53e5a778217e340573560ac07db26a71c98419fa2ced32820472126d6f97ad5773ad082521be0a1c9a374af9d61df9
DIST webbrowser-0.8.2.crate 26787 BLAKE2B 5b6da7182b0029d26000617a8667b65a1c2728fe1ef52199975be3a1b7264839ea0425da0c1aa471e1723119a8b017889b6adae358876a42e1614396fb91250a SHA512 8a13bcaf518410f7684251882d5622cd6d8ac6cba09045638bcd2dc62407c12da6828421a9ebbda73158353349c76336170c37d2048f5d98d6548d48313e6148
DIST webbrowser-0.8.4.crate 37225 BLAKE2B a0f77e9bc712072cc65d966de9d3df05cd3785f1803348e2e80c4efcadc672c8399a201ede15d986513521348f2175aabafda050a41f86eebcade1235010b7a0 SHA512 c147ecc8e04be89f1015afb5022a263d965323017feb1f6143d515425e5e062627e77c4f33156afff5f7c6485201f76e687e24bd125f085daa971d7b870cc824
DIST weezl-0.1.7.crate 42166 BLAKE2B a3a2a48dbb444b2bd910e1470507209f3d0acc75d88e22bcb42b5ca7ab8edbc41fc9e49cb6a2e18cf5e470d7bd26f4e4d9e30ea01c3eb543f171289a86927fdf SHA512 3fd8cb01dde494371df57001c97be90418b642ba88b0945cd98f973a4498743b83d383bcdfc8884db1da75271aeef4ce3b418e425f23690f12a5cc645c418e90
DIST wepoll-ffi-0.1.2.crate 31309 BLAKE2B cd1b01c9fdb6482baff3ab12a9926c1a5a9b6e430e4609890a94b13480f8223de166558724b4d6926d6e9dd7f466926c783df54f9beabc75d646edf4f3429a73 SHA512 f0f5c379d08642aee9c6ef36175b9d858ee1cb7d444b832d6e7ad194167a4db2de5aaee3b2356ca42ef9f48a9872928c61b456305c05dd40cc53e5204686b8a7
DIST wgpu-0.14.2.crate 141949 BLAKE2B b6db5c116bf6b510abdec541adea474afdc9209808c46ff8a72c480a2746a90000cd9f0b12df7f56e4e301ac3609db2168eef0991161e2d4991914249e44063a SHA512 70d0d1b4960b5b7d229e94dda93956a311ae20bf002073a3b8cad1175340b94d172e078432ccbafb5c3acb52ff2872c3a392b3a067f09592786cedcb7ae8b7df
@ -437,6 +488,7 @@ DIST wgpu-core-0.14.2.crate 203314 BLAKE2B 21e09ab9332711df03c1d00a334a4288a65b1
DIST wgpu-hal-0.14.1.crate 220634 BLAKE2B 3fd79e4dfe1d8332283c8217733ca1a8d01deed1f7a0caeb23f2db85d014843be6445bc0789545150950bc07d117c07e0d919d0b83648d1c83567545c40b6a75 SHA512 4ef7d50dcf8b9e48ea7c8bf4292e86649920505c0925da0f8a356185581bfff51c4ea32f78d832af36be2bac235a1ef41ef7f95c9ae2714046908878eeb809c1
DIST wgpu-types-0.14.1.crate 39502 BLAKE2B d65d932df63cf0fc647f600e9a0979e8659d45d0f45f4d1010233d7f9a3cf861c154369713457d7c03a6fc358861b153c82e29f1bd297a8d55f996e6cdd93676 SHA512 4c670c0dd5b94b123083aaf8037f5f72c160e9a3370a2c6017a724b76e0c0b94cc1bcdabe587c13051a2d968ac39bd4fc39be43bb0dde379fbe154561bc67aae
DIST wide-0.7.5.crate 70547 BLAKE2B 2733b50ff16b87bd2b232bacb4722a188dcfc703615da23dd0c884b7b70e9876fa705493bfdf04d868d761d9f10e211bc9378d14cc67b3cd3994614e90d0db8d SHA512 8f83aef8ad2c6539e4ed1478ef818ef9b4d83fc2417037fe633749f75e23a5b4b373fa6527ddd9cc1eb1fc864f5eeda960dc6e9b5310204d08c2140530a48d4a
DIST widestring-0.5.1.crate 41338 BLAKE2B 4d202d15df38056a004ebdc721bbe5d0fd6ab28f957dff269f0b90ab3dd08d7521dd94d00b1b21c5cba438592462989e9d360f4b566faf075fbb091982dd344c SHA512 ef39fc053cd98c070e502d0c53acf27965a06583805fb6d8b1228f76063ed343382500917ae33231470c5af3d2223070d36f394758bd6faf4e298cb981cbe3bb
DIST widestring-1.0.2.crate 79706 BLAKE2B 64423d0c485d1596015e9fcee691222a2a69b85a1b13a91651c50c1e3c5ec61c5105232904c6239bb442a2b3f2e808379d802856b93bb62ec8779cbf3db77655 SHA512 cbebac37d87808e791d7839ad69e0b86af49b0e8a354a22e11797915c719937ed5b0cb638e5afc9d710cd1e073eaa9f7db76cd3ca1ec35a71b565f0b8f55407b
DIST winapi-0.3.9.crate 1200382 BLAKE2B cb5799749ccd935ea2d7068d953cecf19f543d9db7dc16ad4584bb7005373ada34937a3ced7225544d8bc765da599911c7a3190efefb3a25b7c1bb7123b4f673 SHA512 ff8b7b78065f3d8999ec03c725a0460ebc059771bf071c7a3df3f0ecd733edf3b0a2450024d4e24e1aedddaecd9038ce1376c0d8bbf45132068cf45cf4a53a97
DIST winapi-i686-pc-windows-gnu-0.4.0.crate 2918815 BLAKE2B 4d357e4d30f9552972170d65b9a5358b69c46a3e772fe05efc22f3d4ffc1caeeaad7aacdc7abd503a7ad0545f8bd7d22bf351dcb6df76f812fa4d45c34d65df0 SHA512 a672ccefd0730a8166fef1d4e39f9034d9ae426a3f5e28d1f4169fa5c5790767693f281d890e7804773b34acdb0ae1febac33cde8c50c0044a5a6152c7209ec2
@ -444,24 +496,31 @@ DIST winapi-util-0.1.5.crate 10164 BLAKE2B fc800aceae5249a858c806c3e969ef2545766
DIST winapi-wsapoll-0.1.1.crate 2881 BLAKE2B 752a56fd63334b38528eca1bfaa4ba4e07de8b7b4f35aa71165038c70f7f6d482c994a9d8367fa5c8d17df48de746bdf773e32a1109b847d8998ab78c6fc33b9 SHA512 110bcb68119ce5848b9de19a9af0a752bb7f3bbb9c07f2e0d303b428166197d3525c8b4ca6afd56f132f14b4948054cf1dbcc7669c02775b66343e089488fba6
DIST winapi-x86_64-pc-windows-gnu-0.4.0.crate 2947998 BLAKE2B 2ad1ea8b5fa07d544e910ccba043ae925269b76b26c9da356305b34b86741dd8b9aff0b9ffe3d562db4fcd7d7c46a11ce9e3168b782b1d89ae6881742b7ede82 SHA512 4a654af6a5d649dc87e00497245096b35a2894ae66f155cb62389902c3b93ddcc5cf7d0d8b9dd97b291d2d80bc686af2298e80abef6ac69883f4a54e79712513
DIST windows-0.37.0.crate 14060820 BLAKE2B 4993494caf29e403e275964a80ce64469e6ec3a688ba31c7a3d0e261c160f6baf3cd84754bd8661ed38e593f2f8dca80afd0b426104a9249cbdf5cd96391d59e SHA512 d10347d7cbede894f7acdc988e197d76b8b35f09272a1f525f0307b2c5005ea36b106b99efb2f06fa4109fed8c95257c420cc54dcb79f302d1e98438c823e223
DIST windows-0.39.0.crate 12776691 BLAKE2B f9d774a0f131f6ab45a8edfa2e093cd6b43d754a933c11693048964e4e2b01e650be6a583a9d927cdcbb895cf206482d2209a395eaa6315eee8ce49a1b44431b SHA512 e2f69a1010c518056b253075b6e10b63e034374a416fb9e0fbf926bd992daefcf4c5a02208641f5bd961b8a0d946fcce226a01c6fca48606a3a25f570d8932dd
DIST windows-0.43.0.crate 11492640 BLAKE2B 793aa1a7f5ba07b864ee318d529f0003a979c3c5b588860cc317dd6abb499db73ae7ba98e2c18765f7539ffa3eb2af80fdd10d12238b5e0cfa1fbcf535a0ea9e SHA512 810a1a08ea65dad929ebacef8a2c2f13837f09680d97d1e9db7349b00b54a06ebc5fa1c7e9bb5ecf4a2d0cda54d4acd6b89e3eaeb9e7e1ac888ce105cfbcc139
DIST windows-sys-0.36.1.crate 3347053 BLAKE2B 818f7812bd9a55a4e95b3d461fa5fcc14569a159882f950d20fd5a6b7d2a2841f082c0bccaab657f5830549e6286a37d9f8fdf825a42403f543b51e35b2d20d4 SHA512 80973e461bef3be0d0d0c13d02b2129aeb0d0700768d637544315654126f101b39f980738035fe325bd96f549493a2245bd7b82511f833efa7bbcb2f62266001
DIST windows-sys-0.42.0.crate 3006791 BLAKE2B 7a0962364ecc416cf0ae7e49cce1298a12d819003e488f6e77aff1a52710f00378638b6a05db5557a031e1b75659587657971ddc63eaab35495133762f99a7b2 SHA512 b07b119688f3e3ad234d36979947f34e8e19988fb62101afbe18ec8afc9c8a4261128939df8bbb849d5c5982422cb4c50dbcba70f2bf401fbb7c605df1b2b354
DIST windows_aarch64_gnullvm-0.42.0.crate 357917 BLAKE2B 58da715a46692ed786fa554338d446eaaa50c63ec1d4090cf0690a9211c0221034479e9066cad1c98234410519833826ae3163bf6724c3b06097d5b84d7b9fcf SHA512 8bd60142e8982ddb14dde4e93b9753f9ac34830c05c2a1dd4568377f9a928651bf9f026a0080e5bc7dfa62a45942376736954e3ac800855d00eef0c72929f338
DIST windows_aarch64_msvc-0.36.1.crate 661960 BLAKE2B d503150a05c4aa6ec376d1094ad24a7a4b3579d8f60cae65f4a98adfe830dd776c8996d5c3acfbfca1a69598475b918b5de2a162e3253b0b28cd6aa17de2dc13 SHA512 d0c352c78caec9c71bbaa1a688baab8f39a33c903c0492b19398c76e08194183e254ecd3a8b24af3e7e5e1d9d97373dcbab54499236829898a4fd153cfde2ccf
DIST windows_aarch64_msvc-0.37.0.crate 661960 BLAKE2B ae184d78d8663ac491090210eaddcabc29da3ed2bc9b551bf705196f3323063c1e07f011d77760d0682347843428789a23802fd4889c01c99ad0e7308799abf7 SHA512 3d249b39a2aa329d56965ed56b171fe0996f8078c0fe49537d746b62fddce37e90d68f2a31e51022d9a6b693db7e2e35ada399fc8a125903f4f9d7af7b651d8e
DIST windows_aarch64_msvc-0.39.0.crate 661960 BLAKE2B 2a8ac8e92c1c22c9a7f5126b895776d4d4660049cf7beaa230758b6f944eeffdbaed7b99438f2cb3862b298d2ff4fad7c5cc91d69cd9ffc33120909d951e2299 SHA512 fc2cd225f8c45e62456d93d7acd14914e573a3c23446f52830af754cdc9951dc1eef978f2ffa1b4dd7eff847a2385869a687324ba17131c3a39d63db0cf6c783
DIST windows_aarch64_msvc-0.42.0.crate 659424 BLAKE2B a8c9a288767756f2086bd0706774cdcce5c8639431ad76ed122d4b6d13c936ca8fb1a463d34835b3a2728f4444e2f4b91ee772f00c54f348094da69c05ce6b93 SHA512 20c0840adec84dde03b143e5b82bb0003fee675310487f0071a81ed7f40ee647c4018ccb9ebdbc4aeada717ec8600a30dfb15510c6b336f07becdb7167668fd0
DIST windows_i686_gnu-0.36.1.crate 818115 BLAKE2B fdb78cf88e1049d1ed6c474f870dfd1ff37b48bc24726d754cfec5b3e77075162f291f93aa709c07c9fa38ccb21a6c31cb5149dabc2cc8ad8a85c03408384a0b SHA512 e2c60e6639beb879472a06ed4462667eb4a78385df6bcde1ca579af759cf2b4ac70e84f7dd7b736e7fbd1b129061555671fed4b83bcd81a6083cc013963194a5
DIST windows_i686_gnu-0.37.0.crate 818111 BLAKE2B bba5bfc3e85dc38fef52ae7d00919262a971ecb381e6236056c29586335efc69f4a6e020c91d59f85760191ad7626a3cb2283872b009788046dea6cf7aa38fd9 SHA512 7f3aaf30530d13d9a9c6f20df4abee8ca6ddda25de289551b7223a7092277d5ec4764c048bcf566ce49b085b78d567f3a6e7c62d6d5fbe79b671dbb2d9526aef
DIST windows_i686_gnu-0.39.0.crate 818115 BLAKE2B 6ecbdb41b48a56ceafd55cbf124023fdc0351aa8ddb24a70b7d685faca6a19049a2206df102297949c005741aaaf440e43669de044e67c9f900cc985a225fbff SHA512 8df620a25ffefeebd93c5d672e55175f480aaf5144ceff89e07c34f079e3206021022ee7c2f75e7d9b9c1aaad6d4e5a3d3425111e661c222f0dc7030a6211fec
DIST windows_i686_gnu-0.42.0.crate 728570 BLAKE2B b72079610b5c4fc798a79fa757b19f8c8baceaf7f4ce824193a65fadaac988ebdff1719a74d676b7dd017e11ceb029402bbac4e55c35206172e15a9bef422f78 SHA512 a24dd1ba5eb7d5231853bebadfde0575ae9071a565868d2f3d1bc6ec0a87380c569a621f0cba2552af7a1e46ac62f09f87cfbce3f674be06be1a7c1d3f421474
DIST windows_i686_msvc-0.36.1.crate 724575 BLAKE2B cf964bec007d8432e2009644cf7f89ea7d910ccf9512c067b7bf5c6c825208ce4a36e9864c0cbca137f523983eb46e58e4bd01054cecd7ac7126d2ba9f67ac0c SHA512 02bb1507981229422498ce29f6c777d5e412358040128f84b09d948ccddf0461b078a0a20cc7f6ab7da8595121bb369453ae9ea1f0506aab715662e8c631e737
DIST windows_i686_msvc-0.37.0.crate 724577 BLAKE2B c83f437526293ae1326f4ed7598c66b0b0ce71ffc85b24807203b732fa9745a12ef1b339c28b0fb51614408503562991bdd611ab3721c1b37d83841121569c4b SHA512 b95650193a0a6f71cc8b66ca380d4e931d1c4a7a1e38a0b8222efc164c0e8c8c3cd21f26cb0e503c64e08d28e2922be5fce05302f2552086585bbb56073f077c
DIST windows_i686_msvc-0.39.0.crate 724575 BLAKE2B 30f5c2303fadcb4c47f39ba7081c12a03c4e63d08b30a2cb09926488055246329df91a2b96c948725c76c70b49e23d3211197fe49ce667dd2cfd899fabbd41e4 SHA512 625352d966bbbfaa3cad22fd1b4aa0f379a698b1ab8dc2e3f7ee7b836066adb3604c2d99e38ab641684413e755ace906cab6b2ccd894808abd9d98bf296a4343
DIST windows_i686_msvc-0.42.0.crate 717477 BLAKE2B a37e068f45590f0c31349acbdb56848106d6de0e1f8030e6bd5e1e174bd9a46737db54fbd61de99054e5e8c5263eaef0508c440f43c39dca82baa77792ff2743 SHA512 740400e2b11c1d177f7f37f844cd2a0f84b97a5adb03a7656661deb026b593a799ace8da1f9013ba9f74446fc43260d01dff7d4be607129ec7d602f341b2b4d1
DIST windows_x86_64_gnu-0.36.1.crate 790934 BLAKE2B 9dec5d966bdc89efbc81989acca242d519f51676ec37487df2bfacd6bfbc5a8de2871be72c5b96a073a899c666e3a39aa60d493e7df39fa90efe869fb744a332 SHA512 598b69e4f2cd3d68f910d526a66dadb465ff30a8c261c9a4455aa1c5b952d23c04f8edaa063cd16fb43564c116a13f06d607f3a0a9c7495054b8bfe1c04d1865
DIST windows_x86_64_gnu-0.37.0.crate 790933 BLAKE2B ddf80027c50c150ffb542b864f4c2ce62511195db59956bfd7ced85afaefa3a53a4eb67f5c6a72a1571e8b28848846d2a199e4c9ab2b8714190952d2a8993944 SHA512 c528d0e7fa1a3e600d9adf055fc42bd19e6871feb99cb1fc1631a9a078824a9328439db17e3222c76dc8730951251478939033215a32b240058423a145877fe1
DIST windows_x86_64_gnu-0.39.0.crate 790933 BLAKE2B 60e1c2a704399408215dd76a699f7fda34e4b1dbad613cc7c51ccfc5494ac4087965f07a9ed05d3814d16b1e8b0c8799234199d0b01c9816db52152aaa6db94d SHA512 ececdb1c82892911e73b3abe946d9c75016b4180b85bd4ed6d5069399bb30bb2b75b67238ce8e333f264b58d47b4e628c9413e7ad4c0febae3873aa1fcd51e7a
DIST windows_x86_64_gnu-0.42.0.crate 692493 BLAKE2B e00eae443cfed3004809244654268ee1bec17975166ca876dd393dcfe8a2ef0ca65d81b04c8f513f95a0fae9405ba796c085951bc2c597d252a3122f7dbf6425 SHA512 7df7ee0c345f0a2c37d7f9ec3a2824116b4d7a943bf245787509e67809a4f31ebb1862e212efb2d943d82ccef77a716437cdc61004396ca86e95e688368c6dae
DIST windows_x86_64_gnullvm-0.42.0.crate 357906 BLAKE2B 02e08e696f18105f0c131fcf5db046ec945cb21ede76d2da477589e15d062ca6f04906dac80fdd2ef9fcda9244490aad86b401d0156eb6b65ba3599098e8cfe7 SHA512 242e11b4a0d50a0ffe8d0e26e971de30ef4d29260ae6749403d39cb4278297a240c1ec4112bb38151cbb11a6f3c8a743e84cd75b6a76adfeaee8e623649c9ecf
DIST windows_x86_64_msvc-0.36.1.crate 661999 BLAKE2B 4cf967f10d4ce148bac967598168752d1996b4ddf5278a8fca53360566c37c1a014bfb4dfdc0ae2d96e01196c42eb4906ea80d8e9dd23b9e9f3163631c9e253e SHA512 89c22ed51a74f531662d80ae0fa5e0215728db1e6caf3c13eaeba95a93548b43c00b8474f52553ac866ac83c203b6c22dc44fbc870e882a4c9c97ba54b87c631
DIST windows_x86_64_msvc-0.37.0.crate 661993 BLAKE2B ec6509a2e07ae8f94c5cb0cd6eb507b504782702698c93ec86af66c9bf3587d2dcc7b7f5a5da95ce92df42091633378374f101d64685cbdc8ef55d49523c41bc SHA512 ccfb98753311f32a591b94391dc4a8d9ffb5bdbb09e83f082b8dde6077e5ec710dc380a2a6cad90a00da5570eacd74dae810108943801a0615abf53c35ff7da6
DIST windows_x86_64_msvc-0.39.0.crate 662005 BLAKE2B 6a4a0bdd75a3946fa86ecc296999b2a265a29e242550cbf9111ffe2510c237452630c818c026476135156a4963cf8b4acc763fa17d051531c4ef1664accad873 SHA512 5009450b2fe34ea2bed3305af85efc018489976ab275c0e3b7e621c95eb1a05ebd1c56d805f0f2f353649a7df89dc344d22aa9037bfb461062051972135d016a
DIST windows_x86_64_msvc-0.42.0.crate 659377 BLAKE2B f01dbfcb86dcb7301790a1a704661864378021cbb92b147fdfcee978b7011bb770441c481b439985c298816c524c6a11f21a7bd81115e65882fa000a28566bcd SHA512 94d6554ae293785d2fc9dc9d53480c98bc08ab2b78bd8684a0606e7e0ec156a454c1a653d214c21de382bc7ab5d898e45000ed73e6110f679da513ffabbf3cb9
DIST winit-0.27.5.crate 370578 BLAKE2B 7e8c52606d18fb04fa301a08d8cdb4d32b62bba66be13545e7eb4a94f47726cf0e48688625702f5b9c50f05aa57ce813c3af027da404dea48304c85d76dfe8ca SHA512 1fba987f18e1437285e19b9fce4d060fbf0b92339bbe3f8c0107222103b35654bc1a3be8654d0aa6cedd6ec339e62a430b1655e6c6933e057b122785432f1e63
DIST winreg-0.10.1.crate 25725 BLAKE2B db536f2a098e4ff6ae4ff80a19bd2029030d68007c3d6100f5135da1a7c223463fc17640f533bc1d4e8c53e9becb186d98351719b3b6276802c68cc755b9ba4e SHA512 09f2d18f62c3c427ebed40d667b672bb778629502ad3c39541f324b2d5ac41f0822c98b7e5320314144130580da46f1e8e51928941850e7d4af28455a564360c

@ -0,0 +1,9 @@
Stop cargo from attempting to update it, we're already unpacking same revision.
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -72,4 +72,2 @@
inherits = "release"
-[patch.crates-io]
-naga = { git = "https://github.com/gfx-rs/naga", rev = "1be8024" }
\ No newline at end of file

@ -0,0 +1,614 @@
# Copyright 2021-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
CRATES="
Inflector-0.11.4
addr2line-0.19.0
adler-1.0.2
adler32-1.2.0
ahash-0.7.6
aho-corasick-0.7.20
aliasable-0.1.3
alsa-0.6.0
alsa-sys-0.3.1
android_system_properties-0.1.5
anyhow-1.0.68
approx-0.5.1
arboard-3.2.0
arrayref-0.3.6
arrayvec-0.5.2
arrayvec-0.7.2
ash-0.37.2+1.3.238
async-channel-1.8.0
atk-sys-0.15.1
atty-0.2.14
autocfg-1.1.0
backtrace-0.3.67
base-x-0.2.11
base64-0.13.1
base64-0.21.0
bindgen-0.61.0
bit-set-0.5.3
bit-vec-0.6.3
bit_field-0.10.1
bitflags-1.3.2
bitstream-io-1.6.0
bitvec-0.19.6
block-0.1.6
block-buffer-0.10.3
bstr-0.2.17
bumpalo-3.11.1
bytemuck-1.12.3
bytemuck_derive-1.3.0
byteorder-1.4.3
bytes-1.3.0
cairo-sys-rs-0.15.1
calloop-0.10.4
castaway-0.1.2
cc-1.0.77
cesu8-1.1.0
cexpr-0.6.0
cfg-expr-0.11.0
cfg-if-0.1.10
cfg-if-1.0.0
chrono-0.4.23
clang-sys-1.4.0
clap-4.0.32
clap_derive-4.0.21
clap_lex-0.3.0
clipboard-win-4.4.2
cmake-0.1.49
cocoa-0.24.1
cocoa-foundation-0.1.0
codespan-reporting-0.11.1
color_quant-1.1.0
colored-2.0.0
com-rs-0.2.1
combine-4.6.6
concurrent-queue-2.0.0
console-0.15.4
console_error_panic_hook-0.1.7
convert_case-0.6.0
cookie-factory-0.3.2
core-foundation-0.9.3
core-foundation-sys-0.8.3
core-graphics-0.22.3
core-graphics-types-0.1.1
core-text-19.2.0
coreaudio-rs-0.10.0
coreaudio-sys-0.2.11
cpal-0.14.2
cpufeatures-0.2.5
crc-3.0.0
crc-catalog-2.1.0
crc32fast-1.3.2
crossbeam-channel-0.5.6
crossbeam-deque-0.8.2
crossbeam-epoch-0.9.13
crossbeam-utils-0.8.14
crossfont-0.5.1
crunchy-0.2.2
crypto-common-0.1.6
csv-1.1.6
csv-core-0.1.10
ctor-0.1.26
cty-0.2.2
curl-0.4.44
curl-sys-0.4.59+curl-7.86.0
cxx-1.0.83
cxx-build-1.0.83
cxxbridge-flags-1.0.83
cxxbridge-macro-1.0.83
darling-0.13.4
darling-0.14.2
darling_core-0.13.4
darling_core-0.14.2
darling_macro-0.13.4
darling_macro-0.14.2
data-encoding-2.3.3
derive-try-from-primitive-1.0.0
diff-0.1.13
digest-0.10.6
dirs-4.0.0
dirs-sys-0.3.7
discard-1.0.4
dispatch-0.2.0
dlib-0.5.0
downcast-rs-1.2.0
dwrote-0.11.0
either-1.8.0
embed-resource-1.8.0
encode_unicode-0.3.6
encoding_rs-0.8.31
enum-map-2.4.2
enum-map-derive-0.11.0
enumset-1.0.12
enumset_derive-0.6.1
env_logger-0.10.0
errno-0.2.8
errno-dragonfly-0.1.2
error-code-2.3.1
euclid-0.22.7
event-listener-2.5.3
expat-sys-2.1.6
exr-1.5.2
fastrand-1.8.0
flate2-1.0.25
float_next_after-0.1.5
flume-0.10.14
fnv-1.0.7
foreign-types-0.3.2
foreign-types-0.5.0
foreign-types-macros-0.2.2
foreign-types-shared-0.1.1
foreign-types-shared-0.3.1
form_urlencoded-1.1.0
freetype-rs-0.26.0
freetype-sys-0.13.1
funty-1.1.0
futures-0.3.25
futures-channel-0.3.25
futures-core-0.3.25
futures-executor-0.3.25
futures-io-0.3.25
futures-lite-1.12.0
futures-macro-0.3.25
futures-sink-0.3.25
futures-task-0.3.25
futures-util-0.3.25
fxhash-0.2.1
gdk-pixbuf-sys-0.15.10
gdk-sys-0.15.1
generational-arena-0.2.8
generator-0.7.2
generic-array-0.14.6
gethostname-0.2.3
getrandom-0.2.8
gif-0.11.4
gif-0.12.0
gimli-0.27.0
gio-sys-0.15.10
glib-sys-0.15.10
glob-0.3.0
gobject-sys-0.15.10
gpu-alloc-0.5.3
gpu-alloc-types-0.2.0
gpu-allocator-0.21.0
gpu-descriptor-0.2.3
gpu-descriptor-types-0.1.1
gtk-sys-0.15.3
half-2.1.0
hashbrown-0.12.3
hassle-rs-0.9.0
heck-0.4.0
hermit-abi-0.1.19
hermit-abi-0.2.6
hexf-parse-0.2.1
http-0.2.8
humantime-2.1.0
iana-time-zone-0.1.53
iana-time-zone-haiku-0.1.1
ident_case-1.0.1
idna-0.3.0
image-0.24.5
indexmap-1.9.2
indicatif-0.17.2
insta-1.26.0
instant-0.1.12
io-lifetimes-1.0.3
is-terminal-0.4.1
isahc-1.7.2
itoa-0.4.8
itoa-1.0.4
jni-0.19.0
jni-0.20.0
jni-sys-0.3.0
jobserver-0.1.25
jpeg-decoder-0.3.0
js-sys-0.3.60
khronos-egl-4.1.0
lazy_static-1.4.0
lazycell-1.3.0
lebe-0.5.2
lexical-core-0.7.6
libc-0.2.138
libflate-1.2.0
libflate_lz77-1.1.0
libloading-0.7.4
libm-0.2.6
libnghttp2-sys-0.1.7+1.45.0
libz-sys-1.1.8
link-cplusplus-1.0.7
linked-hash-map-0.5.6
linux-raw-sys-0.1.4
lock_api-0.4.9
log-0.4.17
loom-0.5.6
lyon-1.0.1
lyon_algorithms-1.0.2
lyon_geom-1.0.4
lyon_path-1.0.3
lyon_tessellation-1.0.7
lzma-rs-0.3.0
mach-0.3.2
malloc_buf-0.0.6
matchers-0.1.0
memchr-2.5.0
memmap2-0.5.8
memoffset-0.6.5
memoffset-0.7.1
metal-0.24.0
mime-0.3.16
minimal-lexical-0.2.1
miniz_oxide-0.6.2
mio-0.8.5
nanorand-0.7.0
ndk-0.6.0
ndk-0.7.0
ndk-context-0.1.1
ndk-glue-0.7.0
ndk-macro-0.3.0
ndk-sys-0.3.0
ndk-sys-0.4.1+23.1.7779620
nix-0.23.2
nix-0.24.3
nix-0.25.1
nom-6.1.2
nom-7.1.1
nu-ansi-term-0.46.0
num-bigint-0.4.3
num-complex-0.4.2
num-derive-0.3.3
num-integer-0.1.45
num-rational-0.4.1
num-traits-0.2.15
num_cpus-1.14.0
num_enum-0.5.7
num_enum_derive-0.5.7
number_prefix-0.4.0
objc-0.2.7
objc-foundation-0.1.1
objc_exception-0.1.2
objc_id-0.1.1
object-0.30.1
oboe-0.4.6
oboe-sys-0.4.5
once_cell-1.17.0
openssl-probe-0.1.5
openssl-sys-0.9.79
os_info-3.5.1
os_str_bytes-6.4.1
ouroboros-0.15.5
ouroboros_macro-0.15.5
output_vt100-0.1.3
overload-0.1.1
pango-sys-0.15.10
parking-2.0.0
parking_lot-0.12.1
parking_lot_core-0.9.5
path-slash-0.2.1
peeking_take_while-0.1.2
percent-encoding-2.2.0
pin-project-1.0.12
pin-project-internal-1.0.12
pin-project-lite-0.2.9
pin-utils-0.1.0
pkg-config-0.3.26
png-0.17.7
polling-2.5.2
portable-atomic-0.3.17
pp-rs-0.2.1
ppv-lite86-0.2.17
pretty_assertions-1.3.0
primal-check-0.3.3
proc-macro-crate-1.2.1
proc-macro-error-1.0.4
proc-macro-error-attr-1.0.4
proc-macro2-1.0.49
profiling-1.0.7
profiling-procmacros-1.0.7
quote-1.0.23
radium-0.5.3
rand-0.8.5
rand_chacha-0.3.1
rand_core-0.6.4
range-alloc-0.1.2
raw-window-handle-0.4.3
raw-window-handle-0.5.0
rayon-1.6.1
rayon-core-1.10.1
redox_syscall-0.2.16
redox_users-0.4.3
regex-1.7.1
regex-automata-0.1.10
regex-syntax-0.6.28
regress-0.4.1
renderdoc-sys-0.7.1
rfd-0.10.0
rle-decode-fast-1.0.3
ron-0.8.0
rustc-demangle-0.1.21
rustc-hash-1.1.0
rustc_version-0.2.3
rustc_version-0.4.0
rustdct-0.7.1
rustfft-6.1.0
rustix-0.36.5
rustversion-1.0.11
ryu-1.0.11
safe_arch-0.5.2
safe_arch-0.6.0
same-file-1.0.6
schannel-0.1.20
scoped-tls-1.0.1
scoped_threadpool-0.1.9
scopeguard-1.1.0
scratch-1.0.2
sctk-adwaita-0.4.3
semver-0.9.0
semver-1.0.14
semver-parser-0.7.0
serde-1.0.152
serde-wasm-bindgen-0.4.5
serde-xml-rs-0.6.0
serde_derive-1.0.152
serde_json-1.0.91
servo-fontconfig-0.5.1
servo-fontconfig-sys-5.1.0
sha1-0.6.1
sha1_smol-1.0.0
sha2-0.10.6
sharded-slab-0.1.4
shlex-1.1.0
similar-2.2.1
simple_asn1-0.6.2
slab-0.4.7
slotmap-1.0.6
sluice-0.5.5
smallvec-1.10.0
smithay-client-toolkit-0.16.0
socket2-0.4.7
spin-0.9.4
spirv-0.2.0+1.5.4
static_assertions-1.1.0
stdweb-0.4.20
stdweb-derive-0.5.3
stdweb-internal-macros-0.2.9
stdweb-internal-runtime-0.1.5
str-buf-1.0.6
strength_reduce-0.2.4
strsim-0.10.0
symphonia-0.5.1
symphonia-bundle-mp3-0.5.1
symphonia-core-0.5.1
symphonia-metadata-0.5.1
syn-1.0.107
synstructure-0.12.6
system-deps-6.0.3
tap-1.0.1
termcolor-1.1.3
thiserror-1.0.38
thiserror-impl-1.0.38
thread_local-1.1.4
threadpool-1.8.1
tiff-0.8.1
time-0.3.17
time-core-0.1.0
time-macros-0.2.6
tiny-skia-0.7.0
tiny-skia-path-0.7.0
tinyvec-1.6.0
tinyvec_macros-0.1.0
toml-0.5.10
tracing-0.1.37
tracing-attributes-0.1.23
tracing-core-0.1.30
tracing-futures-0.2.5
tracing-log-0.1.3
tracing-subscriber-0.3.16
tracing-tracy-0.10.0
tracing-wasm-0.2.1
tracy-client-0.14.2
tracy-client-sys-0.19.0
transpose-0.2.2
typed-arena-2.0.2
typenum-1.16.0
unicode-bidi-0.3.8
unicode-ident-1.0.5
unicode-normalization-0.1.22
unicode-segmentation-1.10.0
unicode-width-0.1.10
unicode-xid-0.2.4
url-2.3.1
valuable-0.1.0
vcpkg-0.2.15
vec_map-0.8.2
version-compare-0.1.1
version_check-0.9.4
vswhom-0.1.0
vswhom-sys-0.1.2
waker-fn-1.1.0
walkdir-2.3.2
wasi-0.11.0+wasi-snapshot-preview1
wasm-bindgen-0.2.83
wasm-bindgen-backend-0.2.83
wasm-bindgen-futures-0.4.33
wasm-bindgen-macro-0.2.83
wasm-bindgen-macro-support-0.2.83
wasm-bindgen-shared-0.2.83
wayland-client-0.29.5
wayland-commons-0.29.5
wayland-cursor-0.29.5
wayland-protocols-0.29.5
wayland-scanner-0.29.5
wayland-sys-0.29.5
weak-table-0.3.2
web-sys-0.3.60
webbrowser-0.8.4
weezl-0.1.7
wepoll-ffi-0.1.2
wide-0.7.5
widestring-0.5.1
winapi-0.3.9
winapi-i686-pc-windows-gnu-0.4.0
winapi-util-0.1.5
winapi-wsapoll-0.1.1
winapi-x86_64-pc-windows-gnu-0.4.0
windows-0.37.0
windows-0.39.0
windows-0.43.0
windows-sys-0.36.1
windows-sys-0.42.0
windows_aarch64_gnullvm-0.42.0
windows_aarch64_msvc-0.36.1
windows_aarch64_msvc-0.37.0
windows_aarch64_msvc-0.39.0
windows_aarch64_msvc-0.42.0
windows_i686_gnu-0.36.1
windows_i686_gnu-0.37.0
windows_i686_gnu-0.39.0
windows_i686_gnu-0.42.0
windows_i686_msvc-0.36.1
windows_i686_msvc-0.37.0
windows_i686_msvc-0.39.0
windows_i686_msvc-0.42.0
windows_x86_64_gnu-0.36.1
windows_x86_64_gnu-0.37.0
windows_x86_64_gnu-0.39.0
windows_x86_64_gnu-0.42.0
windows_x86_64_gnullvm-0.42.0
windows_x86_64_msvc-0.36.1
windows_x86_64_msvc-0.37.0
windows_x86_64_msvc-0.39.0
windows_x86_64_msvc-0.42.0
winit-0.27.5
winreg-0.10.1
wio-0.2.2
wyz-0.2.0
x11-dl-2.20.1
x11rb-0.10.1
x11rb-protocol-0.10.0
xcursor-0.3.4
xml-rs-0.8.4
yaml-rust-0.4.5
yansi-0.5.1"
inherit cargo desktop flag-o-matic xdg
# 0(github) 1(repo) 2(commit hash) 3(crate_name:workspace,...)
# note: if this gets too hard to maintain, should switch to a vendor tarball
RUFFLE_GIT=(
"Aaron1011 naga_oil f4474b53285a85fe67cc35372c9d7ff4517cb556 naga_oil:."
"RustAudio dasp f05a703d247bb504d7e812b51e95f3765d9c5e94 dasp"
"gfx-rs d3d12-rs a990c93ec64eeab78f2292763d0715da9dba1d59 d3d12:."
"gfx-rs naga 1be8024bda3594987b417bead5024b98be9ab521 naga:."
"gfx-rs rspirv b969f175d5663258b4891e44b76c1544da9661ab rspirv:rspirv"
"gfx-rs wgpu c5851275c59b1d5d949b142d6aa973d0bb638181 wgpu:wgpu"
"grovesNL glow c8a011fcd57a5c68cc917ed394baa484bdefc909 glow:."
"kyren gc-arena 318b2ea594dcdadd01f7789025e3b3940be96b2c gc-arena:src/gc-arena"
"ruffle-rs h263-rs 023e14c73e565c4c778d41f66cfbac5ece6419b2 h263-rs:h263,h263-rs-yuv:yuv"
"ruffle-rs nellymoser 4a33521c29a918950df8ae9fe07e527ac65553f5 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 -> ${PN}-${g[1]}-${g[2]::10}.tar.gz"
done
}
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 Boost-1.0 CC0-1.0 ISC MIT MPL-2.0 Unicode-DFS-2016 ZLIB curl"
SLOT="0"
KEYWORDS="~amd64"
# dlopen: libX* (see winit+x11-dl crates)
RDEPEND="
dev-libs/glib:2
dev-libs/openssl:=
media-libs/alsa-lib
media-libs/fontconfig
media-libs/freetype
sys-libs/zlib:=
x11-libs/gtk+:3
x11-libs/libX11
x11-libs/libXcursor
x11-libs/libXrandr
x11-libs/libXrender"
DEPEND="
${RDEPEND}
x11-base/xorg-proto"
BDEPEND="
virtual/jre:*
virtual/pkgconfig
>=virtual/rust-1.64"
QA_FLAGS_IGNORED="usr/bin/${PN}.*"
PATCHES=(
"${FILESDIR}"/${P}-no-patch-naga.patch
)
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
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-lto # does not play well with C code in crates
cargo_src_compile --bins # note: configure --bins would skip tests
}
src_install() {
dodoc README.md
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;"
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 months if no known major regressions (feel free to"
elog "report if you feel a newer nightly is needed ahead of time)."
elog
elog "There is currently no plans to support wasm builds / browser"
elog "extensions, this provides the desktop viewer and other tools."
fi
}

@ -1,4 +1,4 @@
# Copyright 1999-2022 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@ -11,7 +11,7 @@ SRC_URI="mirror://sourceforge/vice-emu/releases/${P}.tar.gz"
LICENSE="GPL-2+"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~x86"
KEYWORDS="amd64 ~arm ~arm64 x86"
IUSE="
alsa debug doc ethernet ffmpeg flac gif +gtk headless lame mpg123
ogg openmp oss parport pci png portaudio pulseaudio sdl zlib"

@ -1 +1,2 @@
DIST virt-what-1.21.tar.gz 478767 BLAKE2B 7c48b84d9f1fe5f734921f68848b84beee2e5687a6ebfbc422a1349063e6a83c932a89cb2936239da6be033b72e6010694314cf106486cd6c54cd02652bc61a6 SHA512 14ace184c4aee5a09b855c1f5acaa619057aed1b9bf03c91ed1003e6a39ea69162c9fe452ea8162c7fe29825e0e2202cfc7d76e82f0cecea3e32405e5eb9f717
DIST virt-what-1.25.tar.gz 516445 BLAKE2B 3f3403a3954e359005754e1ad2aba545a824ff9eb77e787615235c1042735f99a58d89f755c265324c16a9d0467e8332a67dff88b3ac15ae21a4f4f7a6dd3136 SHA512 0147b4b44ae0ee685977aa34dfa9bf30ae8e0eb31b7a6d5c0097d16f830fa6fb6afd7156964fc79f3fd5e82b2f68d921fd5306245cc63a2140f6dddc7fdd0e98

@ -0,0 +1,24 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DESCRIPTION="Detects if the current machine is running in a virtual machine"
HOMEPAGE="https://people.redhat.com/~rjones/virt-what/"
SRC_URI="https://people.redhat.com/~rjones/virt-what/files/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
IUSE="dmi"
DEPEND="dev-lang/perl"
RDEPEND="app-shells/bash
dmi? ( sys-apps/dmidecode )"
src_prepare() {
default
# Pretends to be POSIX sh while it is not
sed -e 's:/bin/sh:/bin/bash:' -i virt-what.in || die
}

@ -1,4 +1,6 @@
DIST wine-7.19.tar.xz 28502612 BLAKE2B b7b270656955c7a1e1d84e8bbc7e3e8abff5aedadb5e8a458f0b1109d746875a359f3d2f53b1c9c6caae65d17fd1d205466cd3a884034a8bad6afe9456f13b5d SHA512 f76dbda97cccad4c0f249b5dd4e8d48afa832134f1704ae228650bb73ee82823e628b23bd53a3f8729e06a8933597ff2fffa5551f156fc9c9181b67c066747d5
DIST wine-7.22.tar.xz 28974052 BLAKE2B c86466964817b916ee8f7b687f193eda8bdd3fb17152ab1565971e36f43b12b540033ac1c5fa5d15576041febd32cf1ea2955732c5386debcbda46fb3acca0f1 SHA512 bf58a5b98bef5b291aff1eca3f94c28da95990e4c8da9af5e9e28b9480d57163d088b501b0c1bca5b568bf586dd9933cdc1ea1f371b78d95c94e2d25d0a65efc
DIST wine-8.0.tar.xz 29054044 BLAKE2B baf8f96b665119c9f38a148a2472dbe8f6ca8d4641d9d09d48cb72cb4de2585c274b8b7981c2fa622ead6da2f087c57652e9b48edc8a17c0cfd6be9a36732f02 SHA512 53ba813b260a65a271ec575822725b97631f60038fb026dcc0fe66862711eedcc29a8feb29ff54ae4f64458f85c290d8f3838eff5e4c77a5420a7d2b951fef77
DIST wine-staging-7.19.tar.gz 9523048 BLAKE2B e53fd47af493cbdc4542f908a39557324d70ad67ff2e06c80296c006a63518e43988750cab2f4d3d9197fc9c8a1e61ed4d96bcc310b82b6cfc8ec12b941f1c5c SHA512 c51cb18c4ae00eccf414f5edda18ebf363674ba7cfa95da135b3a43b7c012c086d454d6ac32b22d98e611bb87e55c3e1ee95571a4a0c9713028b5ac38e8aed3f
DIST wine-staging-7.22.tar.gz 9528424 BLAKE2B e41f24f924117259715505f4f9998ef23a657bca5b0e285feb7f9fd732e6b566a495f48ec59af09b1d4d51db522b051028f6cbba748256e939929fbf978f0e44 SHA512 5fdac19ec290c67767fac71abe07d9350ec431919c67a0f2d2df18ced20f1d3dddb921b3d5586d03add187c6281e1a691cc220e8d2d5ad4eeb94015721479d65
DIST wine-staging-8.0.tar.gz 9529620 BLAKE2B c9540195ea885d9f1e980232b0af471e92c61eb079cae35fdb3af5c13d4660b3466f751772440e38f15874082db296d16d1f1d68827a505b2dd949617eda0203 SHA512 76a729d7ced1ff634ddb455ddfaa66ca103b652f43cd152b57ada7431bb5fbb74f5e92bf2f4f329b6df6f5908130afad84e609cbce6df645d6cf8131e9b949f9

@ -0,0 +1,355 @@
# Copyright 2022-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
MULTILIB_COMPAT=( abi_x86_{32,64} )
inherit autotools flag-o-matic multilib multilib-build toolchain-funcs wrapper
WINE_GECKO=2.47.3
WINE_MONO=7.4.0
if [[ ${PV} == *9999 ]]; then
inherit git-r3
EGIT_REPO_URI="https://github.com/wine-staging/wine-staging.git"
WINE_EGIT_REPO_URI="https://gitlab.winehq.org/wine/wine.git"
else
(( $(ver_cut 2) )) && WINE_SDIR=$(ver_cut 1).x || WINE_SDIR=$(ver_cut 1).0
SRC_URI="
https://dl.winehq.org/wine/source/${WINE_SDIR}/wine-${PV}.tar.xz
https://github.com/wine-staging/wine-staging/archive/v${PV}.tar.gz -> ${P}.tar.gz"
KEYWORDS="-* ~amd64 ~x86"
fi
S="${WORKDIR}/wine-${PV}"
DESCRIPTION="Free implementation of Windows(tm) on Unix, with Wine-Staging patchset"
HOMEPAGE="https://wiki.winehq.org/Wine-Staging"
LICENSE="LGPL-2.1+ BSD-2 IJG MIT OPENLDAP ZLIB gsm libpng2 libtiff"
SLOT="${PV}"
IUSE="
+X +abi_x86_32 +abi_x86_64 +alsa capi crossdev-mingw cups dos
llvm-libunwind debug custom-cflags +fontconfig +gecko gphoto2
+gstreamer kerberos +mingw +mono netapi nls odbc opencl +opengl
osmesa pcap perl pulseaudio samba scanner +sdl selinux +ssl
+truetype udev udisks +unwind usb v4l +vulkan +xcomposite xinerama"
REQUIRED_USE="
X? ( truetype )
crossdev-mingw? ( mingw )" # bug #551124 for truetype
# tests are non-trivial to run, can hang easily, don't play well with
# sandbox, and several need real opengl/vulkan or network access
RESTRICT="test"
# `grep WINE_CHECK_SONAME configure.ac` + if not directly linked
WINE_DLOPEN_DEPEND="
X? (
x11-libs/libXcursor[${MULTILIB_USEDEP}]
x11-libs/libXfixes[${MULTILIB_USEDEP}]
x11-libs/libXi[${MULTILIB_USEDEP}]
x11-libs/libXrandr[${MULTILIB_USEDEP}]
x11-libs/libXrender[${MULTILIB_USEDEP}]
x11-libs/libXxf86vm[${MULTILIB_USEDEP}]
opengl? (
media-libs/libglvnd[X,${MULTILIB_USEDEP}]
osmesa? ( media-libs/mesa[osmesa,${MULTILIB_USEDEP}] )
)
xcomposite? ( x11-libs/libXcomposite[${MULTILIB_USEDEP}] )
xinerama? ( x11-libs/libXinerama[${MULTILIB_USEDEP}] )
)
cups? ( net-print/cups[${MULTILIB_USEDEP}] )
fontconfig? ( media-libs/fontconfig[${MULTILIB_USEDEP}] )
kerberos? ( virtual/krb5[${MULTILIB_USEDEP}] )
netapi? ( net-fs/samba[${MULTILIB_USEDEP}] )
odbc? ( dev-db/unixODBC[${MULTILIB_USEDEP}] )
sdl? ( media-libs/libsdl2[haptic,joystick,${MULTILIB_USEDEP}] )
ssl? ( net-libs/gnutls:=[${MULTILIB_USEDEP}] )
truetype? ( media-libs/freetype[${MULTILIB_USEDEP}] )
udisks? ( sys-apps/dbus[${MULTILIB_USEDEP}] )
v4l? ( media-libs/libv4l[${MULTILIB_USEDEP}] )
vulkan? ( media-libs/vulkan-loader[${MULTILIB_USEDEP}] )"
WINE_COMMON_DEPEND="
${WINE_DLOPEN_DEPEND}
X? (
x11-libs/libX11[${MULTILIB_USEDEP}]
x11-libs/libXext[${MULTILIB_USEDEP}]
)
alsa? ( media-libs/alsa-lib[${MULTILIB_USEDEP}] )
capi? ( net-libs/libcapi:=[${MULTILIB_USEDEP}] )
gphoto2? ( media-libs/libgphoto2:=[${MULTILIB_USEDEP}] )
gstreamer? (
dev-libs/glib:2[${MULTILIB_USEDEP}]
media-libs/gst-plugins-base:1.0[${MULTILIB_USEDEP}]
media-libs/gstreamer:1.0[${MULTILIB_USEDEP}]
)
opencl? ( virtual/opencl[${MULTILIB_USEDEP}] )
pcap? ( net-libs/libpcap[${MULTILIB_USEDEP}] )
pulseaudio? ( media-libs/libpulse[${MULTILIB_USEDEP}] )
scanner? ( media-gfx/sane-backends[${MULTILIB_USEDEP}] )
udev? ( virtual/libudev:=[${MULTILIB_USEDEP}] )
unwind? (
llvm-libunwind? ( sys-libs/llvm-libunwind[${MULTILIB_USEDEP}] )
!llvm-libunwind? ( sys-libs/libunwind:=[${MULTILIB_USEDEP}] )
)
usb? ( dev-libs/libusb:1[${MULTILIB_USEDEP}] )"
RDEPEND="
${WINE_COMMON_DEPEND}
app-emulation/wine-desktop-common
dos? ( games-emulation/dosbox )
gecko? ( app-emulation/wine-gecko:${WINE_GECKO}[${MULTILIB_USEDEP}] )
gstreamer? ( media-plugins/gst-plugins-meta:1.0[${MULTILIB_USEDEP}] )
mono? ( app-emulation/wine-mono:${WINE_MONO} )
perl? (
dev-lang/perl
dev-perl/XML-LibXML
)
samba? ( net-fs/samba[winbind] )
selinux? ( sec-policy/selinux-wine )
udisks? ( sys-fs/udisks:2 )"
DEPEND="
${WINE_COMMON_DEPEND}
sys-kernel/linux-headers
X? ( x11-base/xorg-proto )"
BDEPEND="
dev-lang/perl
sys-devel/binutils
sys-devel/bison
sys-devel/flex
virtual/pkgconfig
mingw? ( !crossdev-mingw? (
>=dev-util/mingw64-toolchain-10.0.0_p1-r2[${MULTILIB_USEDEP}]
) )
nls? ( sys-devel/gettext )"
IDEPEND=">=app-eselect/eselect-wine-2"
QA_TEXTRELS="usr/lib/*/wine/i386-unix/*.so" # uses -fno-PIC -Wl,-z,notext
PATCHES=(
"${FILESDIR}"/${PN}-7.17-noexecstack.patch
"${FILESDIR}"/${PN}-7.20-unwind.patch
)
pkg_pretend() {
[[ ${MERGE_TYPE} == binary ]] && return
if use crossdev-mingw && [[ ! -v MINGW_BYPASS ]]; then
local mingw=-w64-mingw32
for mingw in $(usev abi_x86_64 x86_64${mingw}) $(usev abi_x86_32 i686${mingw}); do
if ! type -P ${mingw}-gcc >/dev/null; then
eerror "With USE=crossdev-mingw, you must prepare the MinGW toolchain"
eerror "yourself by installing sys-devel/crossdev then running:"
eerror
eerror " crossdev --target ${mingw}"
eerror
eerror "For more information, please see: https://wiki.gentoo.org/wiki/Mingw"
die "USE=crossdev-mingw is enabled, but ${mingw}-gcc was not found"
fi
done
fi
}
src_unpack() {
if [[ ${PV} == *9999 ]]; then
EGIT_CHECKOUT_DIR=${WORKDIR}/${P}
git-r3_src_unpack
EGIT_COMMIT=$("${BASH}" "${EGIT_CHECKOUT_DIR}"/patches/patchinstall.sh --upstream-commit) || die
EGIT_REPO_URI=${WINE_EGIT_REPO_URI}
EGIT_CHECKOUT_DIR=${S}
einfo "Fetching Wine commit matching the current patchset by default (${EGIT_COMMIT})"
git-r3_src_unpack
else
default
fi
}
src_prepare() {
local staging=(
./patchinstall.sh DESTDIR="${S}"
--all
--backend=eapply
--no-autoconf
-W winemenubuilder-Desktop_Icon_Path #652176
${MY_WINE_STAGING_CONF}
)
# source patcher in a subshell so can use eapply as a backend
ebegin "Running ${staging[*]}"
( cd ../${P}/patches && . "${staging[@]}" )
eend ${?} || die "Failed to apply the patchset"
# sanity check, bumping these has a history of oversights
local geckomono=$(sed -En '/^#define (GECKO|MONO)_VER/{s/[^0-9.]//gp}' \
dlls/appwiz.cpl/addons.c || die)
if [[ ${WINE_GECKO}$'\n'${WINE_MONO} != "${geckomono}" ]]; then
local gmfatal=
[[ ${PV} == *9999 ]] && gmfatal=nonfatal
${gmfatal} die -n "gecko/mono mismatch in ebuild, has: " ${geckomono} " (please file a bug)"
fi
default
# ensure .desktop calls this variant + slot
sed -i "/^Exec=/s/wine /${P} /" loader/wine.desktop || die
# always update for patches (including user's wrt #432348)
eautoreconf
tools/make_requests || die # perl
}
src_configure() {
WINE_PREFIX=/usr/lib/${P}
WINE_DATADIR=/usr/share/${P}
local conf=(
--prefix="${EPREFIX}"${WINE_PREFIX}
--datadir="${EPREFIX}"${WINE_DATADIR}
--includedir="${EPREFIX}"/usr/include/${P}
--libdir="${EPREFIX}"${WINE_PREFIX}
--mandir="${EPREFIX}"${WINE_DATADIR}/man
$(use_enable gecko mshtml)
$(use_enable mono mscoree)
--disable-tests
$(use_with X x)
$(use_with alsa)
$(use_with capi)
$(use_with cups)
$(use_with fontconfig)
$(use_with gphoto2 gphoto)
$(use_with gstreamer)
$(use_with kerberos gssapi)
$(use_with kerberos krb5)
$(use_with mingw)
$(use_with netapi)
$(use_with nls gettext)
$(use_with opencl)
$(use_with opengl)
$(use_with osmesa)
--without-oss # media-sound/oss is not packaged (OSSv4)
$(use_with pcap)
$(use_with pulseaudio pulse)
$(use_with scanner sane)
$(use_with sdl)
$(use_with ssl gnutls)
$(use_with truetype freetype)
$(use_with udev)
$(use_with udisks dbus) # dbus is only used for udisks
$(use_with unwind)
$(use_with usb)
$(use_with v4l v4l2)
$(use_with vulkan)
$(use_with xcomposite)
$(use_with xinerama)
$(usev !odbc ac_cv_lib_soname_odbc=)
)
tc-ld-force-bfd # builds with non-bfd but broken at runtime (bug #867097)
filter-lto # build failure
use mingw || filter-flags -fno-plt # build failure
use custom-cflags || strip-flags # can break in obscure ways at runtime
use crossdev-mingw || PATH=${BROOT}/usr/lib/mingw64-toolchain/bin:${PATH}
# temporary workaround for tc-ld-force-bfd not yet enforcing with mold
# https://github.com/gentoo/gentoo/pull/28355
[[ $($(tc-getCC) ${LDFLAGS} -Wl,--version 2>/dev/null) == mold* ]] &&
append-ldflags -fuse-ld=bfd
# build using upstream's way (--with-wine64)
# order matters: configure+compile 64->32, install 32->64
local -i bits
for bits in $(usev abi_x86_64 64) $(usev abi_x86_32 32); do
(
einfo "Configuring ${PN} for ${bits}bits in ${WORKDIR}/build${bits} ..."
mkdir ../build${bits} || die
cd ../build${bits} || die
pe_arch=i386
if (( bits == 64 )); then
pe_arch=x86_64
: "${CROSSCC:=${CROSSCC_amd64:-x86_64-w64-mingw32-gcc}}"
conf+=( --enable-win64 )
elif use amd64; then
conf+=(
$(usev abi_x86_64 --with-wine64=../build64)
TARGETFLAGS=-m32 # for widl
)
# _setup is optional, but use over Wine's auto-detect (+#472038)
multilib_toolchain_setup x86
fi
: "${CROSSCC:=${CROSSCC_x86:-i686-w64-mingw32-gcc}}"
if use mingw; then
# CROSSCC is no longer recognized by Wine, but still use for now
# (future handling for CROSS* variables is subject to changes)
conf+=( ac_cv_prog_${pe_arch}_CC="${CROSSCC}" )
# use *FLAGS for mingw, but strip unsupported
: "${CROSSCFLAGS:=$(
# >=wine-7.21 configure.ac no longer adds -fno-strict by mistake
append-cflags '-fno-strict-aliasing'
filter-flags '-fstack-clash-protection' #758914
filter-flags '-fstack-protector*' #870136
filter-flags '-mfunction-return=thunk*' #878849
CC=${CROSSCC} test-flags-CC ${CFLAGS:--O2})}"
: "${CROSSLDFLAGS:=$(
filter-flags '-fuse-ld=*'
CC=${CROSSCC} test-flags-CCLD ${LDFLAGS})}"
export CROSS{C,LD}FLAGS
fi
ECONF_SOURCE=${S} econf "${conf[@]}"
)
done
}
src_compile() {
use abi_x86_64 && emake -C ../build64 # do first
use abi_x86_32 && emake -C ../build32
}
src_install() {
use abi_x86_32 && emake DESTDIR="${D}" -C ../build32 install
use abi_x86_64 && emake DESTDIR="${D}" -C ../build64 install # do last
# symlink for plain 'wine' and install its man pages if 64bit-only #404331
if use abi_x86_64 && use !abi_x86_32; then
dosym wine64 ${WINE_PREFIX}/bin/wine
dosym wine64-preloader ${WINE_PREFIX}/bin/wine-preloader
local man
for man in ../build64/loader/wine.*man; do
: "${man##*/wine}"
: "${_%.*}"
insinto ${WINE_DATADIR}/man/${_:+${_#.}/}man1
newins ${man} wine.1
done
fi
use perl || rm "${ED}"${WINE_DATADIR}/man/man1/wine{dump,maker}.1 \
"${ED}"${WINE_PREFIX}/bin/{function_grep.pl,wine{dump,maker}} || die
# create variant wrappers for eselect-wine
local bin
for bin in "${ED}"${WINE_PREFIX}/bin/*; do
make_wrapper "${bin##*/}-${P#wine-}" "${bin#"${ED}"}"
done
# don't let portage try to strip PE files with the wrong
# strip executable and instead handle it here (saves ~120MB)
if use mingw; then
dostrip -x ${WINE_PREFIX}/wine/{i386,x86_64}-windows
use debug ||
find "${ED}"${WINE_PREFIX}/wine/*-windows -regex '.*\.\(a\|dll\|exe\)' \
-exec $(usex abi_x86_64 x86_64 i686)-w64-mingw32-strip --strip-unneeded {} + || die
fi
dodoc ANNOUNCE AUTHORS README* documentation/README*
}
pkg_postinst() {
eselect wine update --if-unset || die
}
pkg_postrm() {
eselect wine update --if-unset || die
}

@ -1,3 +1,4 @@
DIST wine-7.0.1.tar.xz 27167768 BLAKE2B 9bf74e7077fe4b77611f8195feeb53fc6475bdaeac97dab5221942115d6108d8786f93d4a96745bad72afb074b15129fec9b0b2f10261d91c9a9b57bd2240ded SHA512 5a5258132fe30bfb5313454598b85e7d97a74d1e0c7ca7af16aa8c486e316ad34ab74a25fd9a403c98ad1f3280385232f7d159bb824f713e920a4a0dae62c944
DIST wine-7.19.tar.xz 28502612 BLAKE2B b7b270656955c7a1e1d84e8bbc7e3e8abff5aedadb5e8a458f0b1109d746875a359f3d2f53b1c9c6caae65d17fd1d205466cd3a884034a8bad6afe9456f13b5d SHA512 f76dbda97cccad4c0f249b5dd4e8d48afa832134f1704ae228650bb73ee82823e628b23bd53a3f8729e06a8933597ff2fffa5551f156fc9c9181b67c066747d5
DIST wine-7.22.tar.xz 28974052 BLAKE2B c86466964817b916ee8f7b687f193eda8bdd3fb17152ab1565971e36f43b12b540033ac1c5fa5d15576041febd32cf1ea2955732c5386debcbda46fb3acca0f1 SHA512 bf58a5b98bef5b291aff1eca3f94c28da95990e4c8da9af5e9e28b9480d57163d088b501b0c1bca5b568bf586dd9933cdc1ea1f371b78d95c94e2d25d0a65efc
DIST wine-8.0.tar.xz 29054044 BLAKE2B baf8f96b665119c9f38a148a2472dbe8f6ca8d4641d9d09d48cb72cb4de2585c274b8b7981c2fa622ead6da2f087c57652e9b48edc8a17c0cfd6be9a36732f02 SHA512 53ba813b260a65a271ec575822725b97631f60038fb026dcc0fe66862711eedcc29a8feb29ff54ae4f64458f85c290d8f3838eff5e4c77a5420a7d2b951fef77

@ -0,0 +1,325 @@
# Copyright 2022-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
MULTILIB_COMPAT=( abi_x86_{32,64} )
inherit autotools flag-o-matic multilib multilib-build toolchain-funcs wrapper
WINE_GECKO=2.47.3
WINE_MONO=7.4.0
if [[ ${PV} == *9999 ]]; then
inherit git-r3
EGIT_REPO_URI="https://gitlab.winehq.org/wine/wine.git"
else
(( $(ver_cut 2) )) && WINE_SDIR=$(ver_cut 1).x || WINE_SDIR=$(ver_cut 1).0
SRC_URI="https://dl.winehq.org/wine/source/${WINE_SDIR}/wine-${PV}.tar.xz"
S="${WORKDIR}/wine-${PV}"
KEYWORDS="-* ~amd64 ~x86"
fi
DESCRIPTION="Free implementation of Windows(tm) on Unix, without external patchsets"
HOMEPAGE="
https://www.winehq.org/
https://gitlab.winehq.org/wine/wine/"
LICENSE="LGPL-2.1+ BSD-2 IJG MIT OPENLDAP ZLIB gsm libpng2 libtiff"
SLOT="${PV}"
IUSE="
+X +abi_x86_32 +abi_x86_64 +alsa capi crossdev-mingw cups dos
llvm-libunwind debug custom-cflags +fontconfig +gecko gphoto2
+gstreamer kerberos +mingw +mono netapi nls odbc opencl +opengl
osmesa pcap perl pulseaudio samba scanner +sdl selinux +ssl
+truetype udev udisks +unwind usb v4l +vulkan +xcomposite xinerama"
REQUIRED_USE="
X? ( truetype )
crossdev-mingw? ( mingw )" # bug #551124 for truetype
# tests are non-trivial to run, can hang easily, don't play well with
# sandbox, and several need real opengl/vulkan or network access
RESTRICT="test"
# `grep WINE_CHECK_SONAME configure.ac` + if not directly linked
WINE_DLOPEN_DEPEND="
X? (
x11-libs/libXcursor[${MULTILIB_USEDEP}]
x11-libs/libXfixes[${MULTILIB_USEDEP}]
x11-libs/libXi[${MULTILIB_USEDEP}]
x11-libs/libXrandr[${MULTILIB_USEDEP}]
x11-libs/libXrender[${MULTILIB_USEDEP}]
x11-libs/libXxf86vm[${MULTILIB_USEDEP}]
opengl? (
media-libs/libglvnd[X,${MULTILIB_USEDEP}]
osmesa? ( media-libs/mesa[osmesa,${MULTILIB_USEDEP}] )
)
xcomposite? ( x11-libs/libXcomposite[${MULTILIB_USEDEP}] )
xinerama? ( x11-libs/libXinerama[${MULTILIB_USEDEP}] )
)
cups? ( net-print/cups[${MULTILIB_USEDEP}] )
fontconfig? ( media-libs/fontconfig[${MULTILIB_USEDEP}] )
kerberos? ( virtual/krb5[${MULTILIB_USEDEP}] )
netapi? ( net-fs/samba[${MULTILIB_USEDEP}] )
odbc? ( dev-db/unixODBC[${MULTILIB_USEDEP}] )
sdl? ( media-libs/libsdl2[haptic,joystick,${MULTILIB_USEDEP}] )
ssl? ( net-libs/gnutls:=[${MULTILIB_USEDEP}] )
truetype? ( media-libs/freetype[${MULTILIB_USEDEP}] )
udisks? ( sys-apps/dbus[${MULTILIB_USEDEP}] )
v4l? ( media-libs/libv4l[${MULTILIB_USEDEP}] )
vulkan? ( media-libs/vulkan-loader[${MULTILIB_USEDEP}] )"
WINE_COMMON_DEPEND="
${WINE_DLOPEN_DEPEND}
X? (
x11-libs/libX11[${MULTILIB_USEDEP}]
x11-libs/libXext[${MULTILIB_USEDEP}]
)
alsa? ( media-libs/alsa-lib[${MULTILIB_USEDEP}] )
capi? ( net-libs/libcapi:=[${MULTILIB_USEDEP}] )
gphoto2? ( media-libs/libgphoto2:=[${MULTILIB_USEDEP}] )
gstreamer? (
dev-libs/glib:2[${MULTILIB_USEDEP}]
media-libs/gst-plugins-base:1.0[${MULTILIB_USEDEP}]
media-libs/gstreamer:1.0[${MULTILIB_USEDEP}]
)
opencl? ( virtual/opencl[${MULTILIB_USEDEP}] )
pcap? ( net-libs/libpcap[${MULTILIB_USEDEP}] )
pulseaudio? ( media-libs/libpulse[${MULTILIB_USEDEP}] )
scanner? ( media-gfx/sane-backends[${MULTILIB_USEDEP}] )
udev? ( virtual/libudev:=[${MULTILIB_USEDEP}] )
unwind? (
llvm-libunwind? ( sys-libs/llvm-libunwind[${MULTILIB_USEDEP}] )
!llvm-libunwind? ( sys-libs/libunwind:=[${MULTILIB_USEDEP}] )
)
usb? ( dev-libs/libusb:1[${MULTILIB_USEDEP}] )"
RDEPEND="
${WINE_COMMON_DEPEND}
app-emulation/wine-desktop-common
dos? ( games-emulation/dosbox )
gecko? ( app-emulation/wine-gecko:${WINE_GECKO}[${MULTILIB_USEDEP}] )
gstreamer? ( media-plugins/gst-plugins-meta:1.0[${MULTILIB_USEDEP}] )
mono? ( app-emulation/wine-mono:${WINE_MONO} )
perl? (
dev-lang/perl
dev-perl/XML-LibXML
)
samba? ( net-fs/samba[winbind] )
selinux? ( sec-policy/selinux-wine )
udisks? ( sys-fs/udisks:2 )"
DEPEND="
${WINE_COMMON_DEPEND}
sys-kernel/linux-headers
X? ( x11-base/xorg-proto )"
BDEPEND="
dev-lang/perl
sys-devel/binutils
sys-devel/bison
sys-devel/flex
virtual/pkgconfig
mingw? ( !crossdev-mingw? (
>=dev-util/mingw64-toolchain-10.0.0_p1-r2[${MULTILIB_USEDEP}]
) )
nls? ( sys-devel/gettext )"
IDEPEND=">=app-eselect/eselect-wine-2"
QA_TEXTRELS="usr/lib/*/wine/i386-unix/*.so" # uses -fno-PIC -Wl,-z,notext
PATCHES=(
"${FILESDIR}"/${PN}-7.0-noexecstack.patch
"${FILESDIR}"/${PN}-7.20-unwind.patch
)
pkg_pretend() {
[[ ${MERGE_TYPE} == binary ]] && return
if use crossdev-mingw && [[ ! -v MINGW_BYPASS ]]; then
local mingw=-w64-mingw32
for mingw in $(usev abi_x86_64 x86_64${mingw}) $(usev abi_x86_32 i686${mingw}); do
if ! type -P ${mingw}-gcc >/dev/null; then
eerror "With USE=crossdev-mingw, you must prepare the MinGW toolchain"
eerror "yourself by installing sys-devel/crossdev then running:"
eerror
eerror " crossdev --target ${mingw}"
eerror
eerror "For more information, please see: https://wiki.gentoo.org/wiki/Mingw"
die "USE=crossdev-mingw is enabled, but ${mingw}-gcc was not found"
fi
done
fi
}
src_prepare() {
# sanity check, bumping these has a history of oversights
local geckomono=$(sed -En '/^#define (GECKO|MONO)_VER/{s/[^0-9.]//gp}' \
dlls/appwiz.cpl/addons.c || die)
if [[ ${WINE_GECKO}$'\n'${WINE_MONO} != "${geckomono}" ]]; then
local gmfatal=
[[ ${PV} == *9999 ]] && gmfatal=nonfatal
${gmfatal} die -n "gecko/mono mismatch in ebuild, has: " ${geckomono} " (please file a bug)"
fi
default
# ensure .desktop calls this variant + slot
sed -i "/^Exec=/s/wine /${P} /" loader/wine.desktop || die
# always update for patches (including user's wrt #432348)
eautoreconf
tools/make_requests || die # perl
}
src_configure() {
WINE_PREFIX=/usr/lib/${P}
WINE_DATADIR=/usr/share/${P}
local conf=(
--prefix="${EPREFIX}"${WINE_PREFIX}
--datadir="${EPREFIX}"${WINE_DATADIR}
--includedir="${EPREFIX}"/usr/include/${P}
--libdir="${EPREFIX}"${WINE_PREFIX}
--mandir="${EPREFIX}"${WINE_DATADIR}/man
$(use_enable gecko mshtml)
$(use_enable mono mscoree)
--disable-tests
$(use_with X x)
$(use_with alsa)
$(use_with capi)
$(use_with cups)
$(use_with fontconfig)
$(use_with gphoto2 gphoto)
$(use_with gstreamer)
$(use_with kerberos gssapi)
$(use_with kerberos krb5)
$(use_with mingw)
$(use_with netapi)
$(use_with nls gettext)
$(use_with opencl)
$(use_with opengl)
$(use_with osmesa)
--without-oss # media-sound/oss is not packaged (OSSv4)
$(use_with pcap)
$(use_with pulseaudio pulse)
$(use_with scanner sane)
$(use_with sdl)
$(use_with ssl gnutls)
$(use_with truetype freetype)
$(use_with udev)
$(use_with udisks dbus) # dbus is only used for udisks
$(use_with unwind)
$(use_with usb)
$(use_with v4l v4l2)
$(use_with vulkan)
$(use_with xcomposite)
$(use_with xinerama)
$(usev !odbc ac_cv_lib_soname_odbc=)
)
tc-ld-force-bfd # builds with non-bfd but broken at runtime (bug #867097)
filter-lto # build failure
use mingw || filter-flags -fno-plt # build failure
use custom-cflags || strip-flags # can break in obscure ways at runtime
use crossdev-mingw || PATH=${BROOT}/usr/lib/mingw64-toolchain/bin:${PATH}
# temporary workaround for tc-ld-force-bfd not yet enforcing with mold
# https://github.com/gentoo/gentoo/pull/28355
[[ $($(tc-getCC) ${LDFLAGS} -Wl,--version 2>/dev/null) == mold* ]] &&
append-ldflags -fuse-ld=bfd
# build using upstream's way (--with-wine64)
# order matters: configure+compile 64->32, install 32->64
local -i bits
for bits in $(usev abi_x86_64 64) $(usev abi_x86_32 32); do
(
einfo "Configuring ${PN} for ${bits}bits in ${WORKDIR}/build${bits} ..."
mkdir ../build${bits} || die
cd ../build${bits} || die
pe_arch=i386
if (( bits == 64 )); then
pe_arch=x86_64
: "${CROSSCC:=${CROSSCC_amd64:-x86_64-w64-mingw32-gcc}}"
conf+=( --enable-win64 )
elif use amd64; then
conf+=(
$(usev abi_x86_64 --with-wine64=../build64)
TARGETFLAGS=-m32 # for widl
)
# _setup is optional, but use over Wine's auto-detect (+#472038)
multilib_toolchain_setup x86
fi
: "${CROSSCC:=${CROSSCC_x86:-i686-w64-mingw32-gcc}}"
if use mingw; then
# CROSSCC is no longer recognized by Wine, but still use for now
# (future handling for CROSS* variables is subject to changes)
conf+=( ac_cv_prog_${pe_arch}_CC="${CROSSCC}" )
# use *FLAGS for mingw, but strip unsupported
: "${CROSSCFLAGS:=$(
# >=wine-7.21 configure.ac no longer adds -fno-strict by mistake
append-cflags '-fno-strict-aliasing'
filter-flags '-fstack-clash-protection' #758914
filter-flags '-fstack-protector*' #870136
filter-flags '-mfunction-return=thunk*' #878849
CC=${CROSSCC} test-flags-CC ${CFLAGS:--O2})}"
: "${CROSSLDFLAGS:=$(
filter-flags '-fuse-ld=*'
CC=${CROSSCC} test-flags-CCLD ${LDFLAGS})}"
export CROSS{C,LD}FLAGS
fi
ECONF_SOURCE=${S} econf "${conf[@]}"
)
done
}
src_compile() {
use abi_x86_64 && emake -C ../build64 # do first
use abi_x86_32 && emake -C ../build32
}
src_install() {
use abi_x86_32 && emake DESTDIR="${D}" -C ../build32 install
use abi_x86_64 && emake DESTDIR="${D}" -C ../build64 install # do last
# symlink for plain 'wine' and install its man pages if 64bit-only #404331
if use abi_x86_64 && use !abi_x86_32; then
dosym wine64 ${WINE_PREFIX}/bin/wine
dosym wine64-preloader ${WINE_PREFIX}/bin/wine-preloader
local man
for man in ../build64/loader/wine.*man; do
: "${man##*/wine}"
: "${_%.*}"
insinto ${WINE_DATADIR}/man/${_:+${_#.}/}man1
newins ${man} wine.1
done
fi
use perl || rm "${ED}"${WINE_DATADIR}/man/man1/wine{dump,maker}.1 \
"${ED}"${WINE_PREFIX}/bin/{function_grep.pl,wine{dump,maker}} || die
# create variant wrappers for eselect-wine
local bin
for bin in "${ED}"${WINE_PREFIX}/bin/*; do
make_wrapper "${bin##*/}-${P#wine-}" "${bin#"${ED}"}"
done
# don't let portage try to strip PE files with the wrong
# strip executable and instead handle it here (saves ~120MB)
if use mingw; then
dostrip -x ${WINE_PREFIX}/wine/{i386,x86_64}-windows
use debug ||
find "${ED}"${WINE_PREFIX}/wine/*-windows -regex '.*\.\(a\|dll\|exe\)' \
-exec $(usex abi_x86_64 x86_64 i686)-w64-mingw32-strip --strip-unneeded {} + || die
fi
dodoc ANNOUNCE AUTHORS README* documentation/README*
}
pkg_postinst() {
eselect wine update --if-unset || die
}
pkg_postrm() {
eselect wine update --if-unset || die
}

@ -4,10 +4,7 @@ DIST brotli-666c3280cc11dc433c303d79a83d4ffbdd12cc8d.tar.gz 23855739 BLAKE2B 740
DIST edk2-7b4a99be8a39c12d3a7fc4b8db9f0eab4ac688d5.tar.gz 13998677 BLAKE2B 3614ceb69e295a6afb37c7905d0aec3534d8daf3d9f22137c1b722da6dc764a3669d99af03f96155d45feb5058a6f725acf37d1048186fecff4232d64f96e97c SHA512 a1933d815b947fd4f13c96970a6dc36c3048e3ddf27c897684104b0129cf58331e46d3147062ae1fb8973f08cd373c319788dd850ac5e45da385eed8368571a4
DIST ipxe-git-3c040ad387099483102708bb1839110bc788cefb.tar.gz 3962725 BLAKE2B a8084abaf93a4ab06ba170427a66dab08e68ba1288f42ea744e2cbc66d6bd2294bee82f6d0994260d2cd60daf6a6068e40eb74fdeba2bccaa432d090d81fd9db SHA512 4ac1d07ce879a3a8c6c260380258c37f5e4ecddc880b27fb59afc38fbf3718e81b04a4dda2b58fe7a438a23175e00b6179fc067acbc4a75e33d93c4b85ff5d68
DIST seabios-1.14.0.tar.gz 628985 BLAKE2B cc1126925dab1551a655680d20d06ebf28c12c386500d1ee4df9e1a99403b4c5bc6a66c2cc5ef58b4c3d6d7226f35007506a6a1855c2cf2742469dcb7aba05bb SHA512 215c42f59425f8abd062be7b11fc0e39c977cee5001a2381551b0f851ac337d0dd53c065267e6dee0e710ffd700fa635f9007b89da8dfce0f47122c984ee8146
DIST xen-4.15.3.tar.gz 40793144 BLAKE2B 33932d855a0502cfe2768a7c8ae19d7da285d70b4970d96fd703daf0ee24a77ad47a3d1b4bcf5f465aa81aa7eb7f9295bce96302b2149ca208fa662cd966d6af SHA512 c25903cc263891885ec76500488405226c8e025bb461d2bf0d590b9bd2d7ca5c2693de7ecc38b3655bfd6793cc96314826559f14a09cc139de8cfdbeb914cbd3
DIST xen-4.15.4.tar.gz 40820669 BLAKE2B 22edaf817851856c777d02b5211be932c1731bf50fb582545f948c7e8f871937f7c94636496a480642fa7ed8222e12dda091a06638c75b9ee935f3ff9bc2aea0 SHA512 fa6a4991c0699025af163ed117f8d0523c0a482102464615025eb3575d755ffacec5df394e3fe01871cde6028678f654d99f8e3c2533b138765971a2a7994cb8
DIST xen-4.16.2.tar.gz 44995249 BLAKE2B a221d1e4578ab6eb3250754b3b0f36fb30133c1c83246532ebb9648c3d025b3f5132227371b5d3dd82099594f4ee738227480528ee944b8de6231d9c89892d15 SHA512 b6cd036c1073798dffa167ca14c954fbdfb4c0ef99662f7c435e7e5de687d1bde8856ff6bd030d0d2e661bd17ab631551f01b2cc728cad7e70b59aaa6e692783
DIST xen-4.16.3.tar.gz 45003057 BLAKE2B 6092cff33bffed1b6133daf8d3ce53c57204297e66df6ac58266b2da8d5585df62ae718cc8afaad36ebe6dabdce65b9979b0d13b88e60f2b23c01be21ae4db8e SHA512 b8cbd6f95681de5f824ada2d3cbe0653a38514a18df0dafcf811fb255219c7abec96f46217bdb0c83e1119f685da9a6af7194eeaa94f1cc3c892702782133b4f
DIST xen-gentoo-patches-4.15.3-gentoo-patchset-2.tar.bz2 4681 BLAKE2B 59fe5c2d5f3b975f281778ee96f8771debde7ae738636fc8294e7e2578dffc40938d8c48e4e94f0341762b2ba8e1b6769f71b7783322fb3b2a0a187bbf2b5104 SHA512 8540aa3631277fb652f90c53f6f5b4e9d119a7ed267dec96d7aecca4eac2c465ec3be32b0b82057e79f858cc8115bfdfbf2af5c4879a0be3f98ed68cbe64fdae
DIST xen-gentoo-patches-4.16.1-gentoo-patchset-2.tar.bz2 5403 BLAKE2B 7fa3b4aa123b2deed260d02b8d34a35dd205207038edb92569278b25c6fe32e0f0e3857c07755553e047f0eb0d9fe7f8b0816e0f3d7f68aee7929afaf6611dfd SHA512 9e7d25640b24235acf756b031b8b7cee582dded65fe7b94a706c990232e9704d574036c3a9605f285e8e9534578d100a3f38719b27b22775f17ef8f68287997e
DIST xen-upstream-patches-4.15.4-pre-patchset-1.tar.bz2 68066 BLAKE2B ee6aac9aa8988423fd1594fa09c54678ee8d089abfff27913fdbe4f60c1f2a038e06cca5d03924595036bd9ca9be8a7f61ed5d7662e6534b05a45da24c88babd SHA512 65c7c900ca91f7444cdc03fa0902e8d58d68cd755cfa2d16cf1df76b657328e374fec0da3ceb734aefa10cfa874a46de5f731c3827ab4f815b4eabc305ed497f
DIST xen-upstream-patches-4.16.3-pre-patchset-0.tar.bz2 36580 BLAKE2B 7a16b452fda7cf00321c70c239f30fbff72204d5b021aba23e1e08b2d8dee0f1180a18301b5935f4d35dc54533e2e253f047681b837de187a2a174191a168c3c SHA512 5e7328c8cd7ce98cdff47033a76705395419c1322d5212206aa1255d19aeb2fd3d097e71d39137ab97aeab0b9f991e1660b92a6ddb08f02c9407ceaa24aa9ec0

@ -1,537 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python3_{9..10} )
PYTHON_REQ_USE='ncurses,xml(+),threads(+)'
inherit bash-completion-r1 flag-o-matic multilib python-single-r1 toolchain-funcs
if [[ ${PV} == *9999 ]]; then
inherit git-r3
REPO="xen.git"
EGIT_REPO_URI="git://xenbits.xen.org/${REPO}"
S="${WORKDIR}/${REPO}"
else
KEYWORDS="amd64 ~arm ~arm64 x86"
SEABIOS_VER="1.14.0"
EDK2_COMMIT="7b4a99be8a39c12d3a7fc4b8db9f0eab4ac688d5"
EDK2_OPENSSL_VERSION="1_1_1j"
EDK2_SOFTFLOAT_COMMIT="b64af41c3276f97f0e181920400ee056b9c88037"
EDK2_BROTLI_COMMIT="666c3280cc11dc433c303d79a83d4ffbdd12cc8d"
IPXE_COMMIT="3c040ad387099483102708bb1839110bc788cefb"
XEN_PRE_PATCHSET_NUM=1
XEN_GENTOO_PATCHSET_NUM=2
XEN_PRE_VERSION_BASE=4.15.3
XEN_BASE_PV="${PV}"
if [[ -n "${XEN_PRE_VERSION_BASE}" ]]; then
XEN_BASE_PV="${XEN_PRE_VERSION_BASE}"
fi
SRC_URI="
https://downloads.xenproject.org/release/xen/${XEN_BASE_PV}/xen-${XEN_BASE_PV}.tar.gz
https://www.seabios.org/downloads/seabios-${SEABIOS_VER}.tar.gz
ipxe? ( https://xenbits.xen.org/xen-extfiles/ipxe-git-${IPXE_COMMIT}.tar.gz )
ovmf? ( https://github.com/tianocore/edk2/archive/${EDK2_COMMIT}.tar.gz -> edk2-${EDK2_COMMIT}.tar.gz
https://github.com/openssl/openssl/archive/OpenSSL_${EDK2_OPENSSL_VERSION}.tar.gz
https://github.com/ucb-bar/berkeley-softfloat-3/archive/${EDK2_SOFTFLOAT_COMMIT}.tar.gz -> berkeley-softfloat-${EDK2_SOFTFLOAT_COMMIT}.tar.gz
https://github.com/google/brotli/archive/${EDK2_BROTLI_COMMIT}.tar.gz -> brotli-${EDK2_BROTLI_COMMIT}.tar.gz
)
"
if [[ -n "${XEN_PRE_PATCHSET_NUM}" ]]; then
XEN_UPSTREAM_PATCHES_TAG="$(ver_cut 1-3)-pre-patchset-${XEN_PRE_PATCHSET_NUM}"
XEN_UPSTREAM_PATCHES_NAME="xen-upstream-patches-${XEN_UPSTREAM_PATCHES_TAG}"
SRC_URI+=" https://gitweb.gentoo.org/proj/xen-upstream-patches.git/snapshot/${XEN_UPSTREAM_PATCHES_NAME}.tar.bz2"
XEN_UPSTREAM_PATCHES_DIR="${WORKDIR}/${XEN_UPSTREAM_PATCHES_NAME}"
fi
if [[ -n "${XEN_GENTOO_PATCHSET_NUM}" ]]; then
XEN_GENTOO_PATCHES_TAG="$(ver_cut 1-3 ${XEN_BASE_PV})-gentoo-patchset-${XEN_GENTOO_PATCHSET_NUM}"
XEN_GENTOO_PATCHES_NAME="xen-gentoo-patches-${XEN_GENTOO_PATCHES_TAG}"
SRC_URI+=" https://gitweb.gentoo.org/proj/xen-gentoo-patches.git/snapshot/${XEN_GENTOO_PATCHES_NAME}.tar.bz2"
XEN_GENTOO_PATCHES_DIR="${WORKDIR}/${XEN_GENTOO_PATCHES_NAME}"
fi
fi
DESCRIPTION="Xen tools including QEMU and xl"
HOMEPAGE="https://xenproject.org"
DOCS=( README )
S="${WORKDIR}/xen-$(ver_cut 1-3 ${XEN_BASE_PV})"
LICENSE="GPL-2"
SLOT="0/$(ver_cut 1-2)"
# Inclusion of IUSE ocaml on stabalizing requires maintainer of ocaml to (get off his hands and) make
# >=dev-lang/ocaml-4 stable
# Masked in profiles/eapi-5-files instead
IUSE="api debug doc +hvm +ipxe lzma ocaml ovmf pygrub python +qemu +qemu-traditional +rombios screen selinux sdl static-libs system-ipxe system-qemu system-seabios"
REQUIRED_USE="
${PYTHON_REQUIRED_USE}
ipxe? ( rombios )
ovmf? ( hvm )
pygrub? ( python )
rombios? ( hvm )
system-ipxe? ( rombios )
?? ( ipxe system-ipxe )
?? ( qemu system-qemu )"
COMMON_DEPEND="
lzma? ( app-arch/xz-utils )
qemu? (
dev-libs/glib:2
sys-libs/pam
)
app-arch/bzip2
dev-libs/libnl:3
dev-libs/lzo:2
dev-libs/yajl
sys-apps/util-linux
sys-fs/e2fsprogs
sys-libs/ncurses
sys-libs/zlib
${PYTHON_DEPS}
"
RDEPEND="${COMMON_DEPEND}
sys-apps/iproute2[-minimal]
net-misc/bridge-utils
screen? (
app-misc/screen
app-admin/logrotate
)
selinux? ( sec-policy/selinux-xen )"
DEPEND="${COMMON_DEPEND}
app-misc/pax-utils
>=sys-kernel/linux-headers-4.11
x11-libs/pixman
$(python_gen_cond_dep '
dev-python/lxml[${PYTHON_USEDEP}]
')
x86? ( sys-devel/dev86
system-ipxe? ( sys-firmware/ipxe[qemu] )
sys-power/iasl )
api? ( dev-libs/libxml2
net-misc/curl )
ovmf? (
!arm? ( !arm64? ( dev-lang/nasm ) )
$(python_gen_impl_dep sqlite)
)
!amd64? ( >=sys-apps/dtc-1.4.0 )
amd64? ( sys-power/iasl
system-seabios? (
|| (
sys-firmware/seabios
sys-firmware/seabios-bin
)
)
system-ipxe? ( sys-firmware/ipxe[qemu] )
rombios? ( sys-devel/bin86 sys-devel/dev86 ) )
arm64? ( sys-power/iasl
rombios? ( sys-devel/bin86 sys-devel/dev86 ) )
doc? (
app-text/ghostscript-gpl
app-text/pandoc
$(python_gen_cond_dep '
dev-python/markdown[${PYTHON_USEDEP}]
')
dev-texlive/texlive-latexextra
media-gfx/transfig
)
hvm? ( x11-base/xorg-proto )
qemu? (
app-arch/snappy:=
dev-util/meson
sdl? (
media-libs/libsdl[X]
media-libs/libsdl2[X]
)
)
system-qemu? ( app-emulation/qemu[xen] )
ocaml? ( dev-ml/findlib
dev-lang/ocaml[ocamlopt] )
python? ( >=dev-lang/swig-4.0.0 )"
BDEPEND="dev-lang/perl
sys-devel/bison
sys-devel/gettext"
# hvmloader is used to bootstrap a fully virtualized kernel
# Approved by QA team in bug #144032
QA_WX_LOAD="
usr/libexec/xen/boot/hvmloader
usr/libexec/xen/boot/ovmf.bin
usr/libexec/xen/boot/xen-shim
usr/share/qemu-xen/qemu/hppa-firmware.img
usr/share/qemu-xen/qemu/opensbi-riscv32-generic-fw_dynamic.elf
usr/share/qemu-xen/qemu/opensbi-riscv64-generic-fw_dynamic.elf
usr/share/qemu-xen/qemu/s390-ccw.img
usr/share/qemu-xen/qemu/u-boot.e500
"
QA_EXECSTACK="
usr/share/qemu-xen/qemu/hppa-firmware.img
"
QA_PREBUILT="
usr/libexec/xen/bin/elf2dmp
usr/libexec/xen/bin/ivshmem-client
usr/libexec/xen/bin/ivshmem-server
usr/libexec/xen/bin/qemu-edid
usr/libexec/xen/bin/qemu-img
usr/libexec/xen/bin/qemu-io
usr/libexec/xen/bin/qemu-keymap
usr/libexec/xen/bin/qemu-nbd
usr/libexec/xen/bin/qemu-pr-helper
usr/libexec/xen/bin/qemu-storage-daemon
usr/libexec/xen/bin/qemu-system-i386
usr/libexec/xen/bin/virtfs-proxy-helper
usr/libexec/xen/boot/ovmf.bin
usr/libexec/xen/boot/xen-shim
usr/libexec/xen/libexec/qemu-pr-helper
usr/libexec/xen/libexec/virtfs-proxy-helper
usr/libexec/xen/libexec/virtiofsd
usr/libexec/xen/libexec/xen-bridge-helper
usr/share/qemu-xen/qemu/s390-ccw.img
usr/share/qemu-xen/qemu/s390-netboot.img
usr/share/qemu-xen/qemu/u-boot.e500
"
RESTRICT="test"
pkg_setup() {
python_setup
export "CONFIG_LOMOUNT=y"
#bug 522642, disable compile tools/tests
export "CONFIG_TESTS=n"
if [[ -z ${XEN_TARGET_ARCH} ]] ; then
if use x86 && use amd64; then
die "Confusion! Both x86 and amd64 are set in your use flags!"
elif use x86; then
export XEN_TARGET_ARCH="x86_32"
elif use amd64 ; then
export XEN_TARGET_ARCH="x86_64"
elif use arm; then
export XEN_TARGET_ARCH="arm32"
elif use arm64; then
export XEN_TARGET_ARCH="arm64"
else
die "Unsupported architecture!"
fi
fi
}
src_prepare() {
# move before Gentoo patch, one patch should apply to seabios, to fix gcc-4.5.x build err
mv ../seabios-${SEABIOS_VER} tools/firmware/seabios-dir-remote || die
pushd tools/firmware/ > /dev/null
ln -s seabios-dir-remote seabios-dir || die
popd > /dev/null
if [[ -v XEN_UPSTREAM_PATCHES_DIR ]]; then
eapply "${XEN_UPSTREAM_PATCHES_DIR}"
fi
if [[ -v XEN_GENTOO_PATCHES_DIR ]]; then
eapply "${XEN_GENTOO_PATCHES_DIR}"
fi
# Rename qemu-bridge-helper to xen-bridge-helper to avoid file
# collisions with app-emulation/qemu.
sed -i 's/qemu-bridge-helper/xen-bridge-helper/g' \
tools/qemu-xen/include/net/net.h \
tools/qemu-xen/Makefile \
tools/qemu-xen/qemu-bridge-helper.c \
tools/qemu-xen/qemu-options.hx \
|| die
if use ovmf; then
mv ../edk2-${EDK2_COMMIT} tools/firmware/ovmf-dir-remote || die
rm -r tools/firmware/ovmf-dir-remote/CryptoPkg/Library/OpensslLib/openssl || die
rm -r tools/firmware/ovmf-dir-remote/ArmPkg/Library/ArmSoftFloatLib/berkeley-softfloat-3 || die
rm -r tools/firmware/ovmf-dir-remote/BaseTools/Source/C/BrotliCompress/brotli || die
rm -r tools/firmware/ovmf-dir-remote/MdeModulePkg/Library/BrotliCustomDecompressLib/brotli || die
mv ../openssl-OpenSSL_${EDK2_OPENSSL_VERSION} tools/firmware/ovmf-dir-remote/CryptoPkg/Library/OpensslLib/openssl || die
mv ../berkeley-softfloat-3-${EDK2_SOFTFLOAT_COMMIT} tools/firmware/ovmf-dir-remote/ArmPkg/Library/ArmSoftFloatLib/berkeley-softfloat-3 || die
cp -r ../brotli-${EDK2_BROTLI_COMMIT} tools/firmware/ovmf-dir-remote/BaseTools/Source/C/BrotliCompress/brotli || die
cp -r ../brotli-${EDK2_BROTLI_COMMIT} tools/firmware/ovmf-dir-remote/MdeModulePkg/Library/BrotliCustomDecompressLib/brotli || die
cp tools/firmware/ovmf-makefile tools/firmware/ovmf-dir-remote/Makefile || die
# Bug #816987
pushd tools/firmware/ovmf-dir-remote/BaseTools/Source/C/BrotliCompress/brotli > /dev/null
eapply "${FILESDIR}/${PN}-4.15.1-brotli-gcc11.patch"
popd > /dev/null
pushd tools/firmware/ovmf-dir-remote/MdeModulePkg/Library/BrotliCustomDecompressLib/brotli > /dev/null
eapply "${FILESDIR}/${PN}-4.15.1-brotli-gcc11.patch"
popd > /dev/null
fi
# ipxe
if use ipxe; then
cp "${DISTDIR}/ipxe-git-${IPXE_COMMIT}.tar.gz" tools/firmware/etherboot/ipxe.tar.gz || die
# gcc 11
cp "${XEN_GENTOO_PATCHES_DIR}/ipxe/${PN}-4.15.0-ipxe-gcc11.patch" tools/firmware/etherboot/patches/ipxe-gcc11.patch || die
echo ipxe-gcc11.patch >> tools/firmware/etherboot/patches/series || die
fi
mv tools/qemu-xen/qemu-bridge-helper.c tools/qemu-xen/xen-bridge-helper.c || die
# Fix texi2html build error with new texi2html, qemu.doc.html
sed -i -e "/texi2html -monolithic/s/-number//" tools/qemu-xen-traditional/Makefile || die
# Drop .config, fixes to gcc-4.6
sed -e '/-include $(XEN_ROOT)\/.config/d' -i Config.mk || die "Couldn't drop"
# drop flags
unset CFLAGS
unset LDFLAGS
unset ASFLAGS
unset CPPFLAGS
if ! use pygrub; then
sed -e '/^SUBDIRS-y += pygrub/d' -i tools/Makefile || die
fi
if ! use python; then
sed -e '/^SUBDIRS-y += python$/d' -i tools/Makefile || die
fi
if ! use hvm; then
sed -e '/SUBDIRS-$(CONFIG_X86) += firmware/d' -i tools/Makefile || die
# Bug 351648
elif ! use x86 && ! has x86 $(get_all_abis); then
mkdir -p "${WORKDIR}"/extra-headers/gnu || die
touch "${WORKDIR}"/extra-headers/gnu/stubs-32.h || die
export CPATH="${WORKDIR}"/extra-headers
fi
if use qemu; then
if use sdl; then
sed -i -e "s:\$\$source/configure:\0 --enable-sdl:" \
tools/Makefile || die
else
sed -i -e "s:\${QEMU_ROOT\:\-\.}/configure:\0 --disable-sdl:" \
tools/qemu-xen-traditional/xen-setup || die
sed -i -e "s:\$\$source/configure:\0 --disable-sdl:" \
tools/Makefile || die
fi
else
# Don't bother with qemu, only needed for fully virtualised guests
sed -i '/SUBDIRS-$(CONFIG_QEMU_XEN)/s/^/#/g' tools/Makefile || die
fi
# Reset bash completion dir; Bug 472438
sed -e "s;^BASH_COMPLETION_DIR :=.*;BASH_COMPLETION_DIR := $(get_bashcompdir);" \
-i config/Paths.mk.in || die
# xencommons, Bug #492332, sed lighter weight than patching
sed -e 's:\$QEMU_XEN -xen-domid:test -e "\$QEMU_XEN" \&\& &:' \
-i tools/hotplug/Linux/init.d/xencommons.in || die
# fix bashishm
sed -e '/Usage/s/\$//g' \
-i tools/hotplug/Linux/init.d/xendriverdomain.in || die
# respect multilib, usr/lib/libcacard.so.0.0.0
sed -e "/^libdir=/s/\/lib/\/$(get_libdir)/" \
-i tools/qemu-xen/configure || die
#bug 518136, don't build 32bit exactuable for nomultilib profile
if [[ "${ARCH}" == 'amd64' ]] && ! has_multilib_profile; then
sed -i -e "/x86_emulator/d" tools/tests/Makefile || die
fi
# uncomment lines in xl.conf
sed -e 's:^#autoballoon=:autoballoon=:' \
-e 's:^#lockfile=:lockfile=:' \
-e 's:^#vif.default.script=:vif.default.script=:' \
-i tools/examples/xl.conf || die
# disable capstone (Bug #673474)
sed -e "s:\$\$source/configure:\0 --disable-capstone:" \
-i tools/Makefile || die
# disable glusterfs
sed -e "s:\$\$source/configure:\0 --disable-glusterfs:" \
-i tools/Makefile || die
# disable jpeg automagic
sed -e "s:\$\$source/configure:\0 --disable-vnc-jpeg:" \
-i tools/Makefile || die
# disable png automagic
sed -e "s:\$\$source/configure:\0 --disable-vnc-png:" \
-i tools/Makefile || die
# disable docker (Bug #732970)
sed -e "s:\$\$source/configure:\0 --disable-containers:" \
-i tools/Makefile || die
# disable abi-dumper (Bug #791172)
sed -e 's/$(ABI_DUMPER) /echo /g' \
-i tools/libs/libs.mk || die
# Remove -Werror
find . -type f \( -name Makefile -o -name "*.mk" \) \
-exec sed -i \
-e 's/-Werror //g' \
-e '/^CFLAGS *+= -Werror$/d' \
-e 's/, "-Werror"//' \
{} + || die
default
}
src_configure() {
local myconf=(
--libdir="${EPREFIX}/usr/$(get_libdir)"
--libexecdir="${EPREFIX}/usr/libexec"
--localstatedir="${EPREFIX}/var"
--disable-golang
--disable-werror
--disable-xen
--enable-tools
--enable-docs
$(use_enable api xenapi)
$(use_enable ipxe)
$(usex system-ipxe '--with-system-ipxe=/usr/share/ipxe' '')
$(use_enable ocaml ocamltools)
$(use_enable ovmf)
$(use_enable rombios)
--with-xenstored=$(usex ocaml 'oxenstored' 'xenstored')
)
use system-seabios && myconf+=( --with-system-seabios=/usr/share/seabios/bios.bin )
use system-qemu && myconf+=( --with-system-qemu=/usr/bin/qemu-system-x86_64 )
use amd64 && myconf+=( $(use_enable qemu-traditional) )
tc-ld-disable-gold # Bug 669570
econf ${myconf[@]}
}
src_compile() {
local myopt
use debug && myopt="${myopt} debug=y"
use python && myopt="${myopt} XENSTAT_PYTHON_BINDINGS=y"
if test-flag-CC -fno-strict-overflow; then
append-flags -fno-strict-overflow
fi
# bug #845099
if use ipxe; then
local -x NO_WERROR=1
fi
emake CC="$(tc-getCC)" LD="$(tc-getLD)" AR="$(tc-getAR)" RANLIB="$(tc-getRANLIB)" build-tools ${myopt}
if use doc; then
emake -C docs build
else
emake -C docs man-pages
fi
}
src_install() {
# Override auto-detection in the build system, bug #382573
export INITD_DIR=/tmp/init.d
export CONFIG_LEAF_DIR=../tmp/default
# Let the build system compile installed Python modules.
local PYTHONDONTWRITEBYTECODE
export PYTHONDONTWRITEBYTECODE
emake DESTDIR="${ED}" DOCDIR="/usr/share/doc/${PF}" \
XEN_PYTHON_NATIVE_INSTALL=y install-tools
# Created at runtime
rm -rv "${ED}/var/run" || die
# Fix the remaining Python shebangs.
python_fix_shebang "${D}"
# Remove RedHat-specific stuff
rm -rf "${D}"/tmp || die
if use doc; then
emake DESTDIR="${D}" DOCDIR="/usr/share/doc/${PF}" install-docs
dodoc -r docs/{pdf,txt}
else
emake -C docs DESTDIR="${D}" DOCDIR="/usr/share/doc/${PF}" install-man-pages # Bug 668032
fi
dodoc ${DOCS[@]}
newconfd "${FILESDIR}"/xendomains.confd xendomains
newconfd "${FILESDIR}"/xenstored.confd xenstored
newconfd "${FILESDIR}"/xenconsoled.confd xenconsoled
newinitd "${FILESDIR}"/xendomains.initd-r2 xendomains
newinitd "${FILESDIR}"/xenstored.initd-r1 xenstored
newinitd "${FILESDIR}"/xenconsoled.initd xenconsoled
newinitd "${FILESDIR}"/xencommons.initd xencommons
newconfd "${FILESDIR}"/xencommons.confd xencommons
newinitd "${FILESDIR}"/xenqemudev.initd xenqemudev
newconfd "${FILESDIR}"/xenqemudev.confd xenqemudev
newinitd "${FILESDIR}"/xen-watchdog.initd xen-watchdog
if use screen; then
cat "${FILESDIR}"/xendomains-screen.confd >> "${D}"/etc/conf.d/xendomains || die
cp "${FILESDIR}"/xen-consoles.logrotate "${D}"/etc/xen/ || die
keepdir /var/log/xen-consoles
fi
# For -static-libs wrt Bug 384355
if ! use static-libs; then
rm -f "${D}"/usr/$(get_libdir)/*.a "${D}"/usr/$(get_libdir)/ocaml/*/*.a
fi
# for xendomains
keepdir /etc/xen/auto
# Remove files failing QA AFTER emake installs them, avoiding seeking absent files
find "${D}" \( -name openbios-sparc32 -o -name openbios-sparc64 \
-o -name openbios-ppc -o -name palcode-clipper \) -delete || die
keepdir /var/lib/xen/dump
keepdir /var/lib/xen/xenpaging
keepdir /var/lib/xenstored
keepdir /var/log/xen
if use python; then
python_domodule "${S}/tools/libs/stat/bindings/swig/python/xenstat.py"
python_domodule "${S}/tools/libs/stat/bindings/swig/python/_xenstat.so"
fi
python_optimize
}
pkg_postinst() {
elog "Official Xen Guide and the offical wiki page:"
elog "https://wiki.gentoo.org/wiki/Xen"
elog "https://wiki.xen.org/wiki/Main_Page"
elog ""
elog "Recommended to utilise the xencommons script to config system at boot"
elog "Add by use of rc-update on completion of the install"
if ! use hvm; then
echo
elog "HVM (VT-x and AMD-V) support has been disabled. If you need hvm"
elog "support enable the hvm use flag."
elog "An x86 or amd64 system is required to build HVM support."
fi
if use qemu; then
elog "The qemu-bridge-helper is renamed to the xen-bridge-helper in the in source"
elog "build of qemu. This allows for app-emulation/qemu to be emerged concurrently"
elog "with the qemu capable xen. It is up to the user to distinguish between and utilise"
elog "the qemu-bridge-helper and the xen-bridge-helper. File bugs of any issues that arise"
fi
}

@ -1,537 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python3_{9..10} )
PYTHON_REQ_USE='ncurses,xml(+),threads(+)'
inherit bash-completion-r1 flag-o-matic multilib python-single-r1 toolchain-funcs
if [[ ${PV} == *9999 ]]; then
inherit git-r3
REPO="xen.git"
EGIT_REPO_URI="git://xenbits.xen.org/${REPO}"
S="${WORKDIR}/${REPO}"
else
KEYWORDS="~amd64 ~arm ~arm64 ~x86"
SEABIOS_VER="1.14.0"
EDK2_COMMIT="7b4a99be8a39c12d3a7fc4b8db9f0eab4ac688d5"
EDK2_OPENSSL_VERSION="1_1_1j"
EDK2_SOFTFLOAT_COMMIT="b64af41c3276f97f0e181920400ee056b9c88037"
EDK2_BROTLI_COMMIT="666c3280cc11dc433c303d79a83d4ffbdd12cc8d"
IPXE_COMMIT="3c040ad387099483102708bb1839110bc788cefb"
XEN_PRE_PATCHSET_NUM=1
XEN_GENTOO_PATCHSET_NUM=2
XEN_PRE_VERSION_BASE=4.15.3
XEN_BASE_PV="${PV}"
if [[ -n "${XEN_PRE_VERSION_BASE}" ]]; then
XEN_BASE_PV="${XEN_PRE_VERSION_BASE}"
fi
SRC_URI="
https://downloads.xenproject.org/release/xen/${XEN_BASE_PV}/xen-${XEN_BASE_PV}.tar.gz
https://www.seabios.org/downloads/seabios-${SEABIOS_VER}.tar.gz
ipxe? ( https://xenbits.xen.org/xen-extfiles/ipxe-git-${IPXE_COMMIT}.tar.gz )
ovmf? ( https://github.com/tianocore/edk2/archive/${EDK2_COMMIT}.tar.gz -> edk2-${EDK2_COMMIT}.tar.gz
https://github.com/openssl/openssl/archive/OpenSSL_${EDK2_OPENSSL_VERSION}.tar.gz
https://github.com/ucb-bar/berkeley-softfloat-3/archive/${EDK2_SOFTFLOAT_COMMIT}.tar.gz -> berkeley-softfloat-${EDK2_SOFTFLOAT_COMMIT}.tar.gz
https://github.com/google/brotli/archive/${EDK2_BROTLI_COMMIT}.tar.gz -> brotli-${EDK2_BROTLI_COMMIT}.tar.gz
)
"
if [[ -n "${XEN_PRE_PATCHSET_NUM}" ]]; then
XEN_UPSTREAM_PATCHES_TAG="$(ver_cut 1-3)-pre-patchset-${XEN_PRE_PATCHSET_NUM}"
XEN_UPSTREAM_PATCHES_NAME="xen-upstream-patches-${XEN_UPSTREAM_PATCHES_TAG}"
SRC_URI+=" https://gitweb.gentoo.org/proj/xen-upstream-patches.git/snapshot/${XEN_UPSTREAM_PATCHES_NAME}.tar.bz2"
XEN_UPSTREAM_PATCHES_DIR="${WORKDIR}/${XEN_UPSTREAM_PATCHES_NAME}"
fi
if [[ -n "${XEN_GENTOO_PATCHSET_NUM}" ]]; then
XEN_GENTOO_PATCHES_TAG="$(ver_cut 1-3 ${XEN_BASE_PV})-gentoo-patchset-${XEN_GENTOO_PATCHSET_NUM}"
XEN_GENTOO_PATCHES_NAME="xen-gentoo-patches-${XEN_GENTOO_PATCHES_TAG}"
SRC_URI+=" https://gitweb.gentoo.org/proj/xen-gentoo-patches.git/snapshot/${XEN_GENTOO_PATCHES_NAME}.tar.bz2"
XEN_GENTOO_PATCHES_DIR="${WORKDIR}/${XEN_GENTOO_PATCHES_NAME}"
fi
fi
DESCRIPTION="Xen tools including QEMU and xl"
HOMEPAGE="https://xenproject.org"
DOCS=( README )
S="${WORKDIR}/xen-$(ver_cut 1-3 ${XEN_BASE_PV})"
LICENSE="GPL-2"
SLOT="0/$(ver_cut 1-2)"
# Inclusion of IUSE ocaml on stabalizing requires maintainer of ocaml to (get off his hands and) make
# >=dev-lang/ocaml-4 stable
# Masked in profiles/eapi-5-files instead
IUSE="api debug doc +hvm +ipxe lzma ocaml ovmf pygrub python +qemu +qemu-traditional +rombios screen selinux sdl static-libs system-ipxe system-qemu system-seabios"
REQUIRED_USE="
${PYTHON_REQUIRED_USE}
ipxe? ( rombios )
ovmf? ( hvm )
pygrub? ( python )
rombios? ( hvm )
system-ipxe? ( rombios )
?? ( ipxe system-ipxe )
?? ( qemu system-qemu )"
COMMON_DEPEND="
lzma? ( app-arch/xz-utils )
qemu? (
dev-libs/glib:2
sys-libs/pam
)
app-arch/bzip2
dev-libs/libnl:3
dev-libs/lzo:2
dev-libs/yajl
sys-apps/util-linux
sys-fs/e2fsprogs
sys-libs/ncurses
sys-libs/zlib
${PYTHON_DEPS}
"
RDEPEND="${COMMON_DEPEND}
sys-apps/iproute2[-minimal]
net-misc/bridge-utils
screen? (
app-misc/screen
app-admin/logrotate
)
selinux? ( sec-policy/selinux-xen )"
DEPEND="${COMMON_DEPEND}
app-misc/pax-utils
>=sys-kernel/linux-headers-4.11
x11-libs/pixman
$(python_gen_cond_dep '
dev-python/lxml[${PYTHON_USEDEP}]
')
x86? ( sys-devel/dev86
system-ipxe? ( sys-firmware/ipxe[qemu] )
sys-power/iasl )
api? ( dev-libs/libxml2
net-misc/curl )
ovmf? (
!arm? ( !arm64? ( dev-lang/nasm ) )
$(python_gen_impl_dep sqlite)
)
!amd64? ( >=sys-apps/dtc-1.4.0 )
amd64? ( sys-power/iasl
system-seabios? (
|| (
sys-firmware/seabios
sys-firmware/seabios-bin
)
)
system-ipxe? ( sys-firmware/ipxe[qemu] )
rombios? ( sys-devel/bin86 sys-devel/dev86 ) )
arm64? ( sys-power/iasl
rombios? ( sys-devel/bin86 sys-devel/dev86 ) )
doc? (
app-text/ghostscript-gpl
app-text/pandoc
$(python_gen_cond_dep '
dev-python/markdown[${PYTHON_USEDEP}]
')
dev-texlive/texlive-latexextra
media-gfx/transfig
)
hvm? ( x11-base/xorg-proto )
qemu? (
app-arch/snappy:=
dev-util/meson
sdl? (
media-libs/libsdl[X]
media-libs/libsdl2[X]
)
)
system-qemu? ( app-emulation/qemu[xen] )
ocaml? ( dev-ml/findlib
dev-lang/ocaml[ocamlopt] )
python? ( >=dev-lang/swig-4.0.0 )"
BDEPEND="dev-lang/perl
sys-devel/bison
sys-devel/gettext"
# hvmloader is used to bootstrap a fully virtualized kernel
# Approved by QA team in bug #144032
QA_WX_LOAD="
usr/libexec/xen/boot/hvmloader
usr/libexec/xen/boot/ovmf.bin
usr/libexec/xen/boot/xen-shim
usr/share/qemu-xen/qemu/hppa-firmware.img
usr/share/qemu-xen/qemu/opensbi-riscv32-generic-fw_dynamic.elf
usr/share/qemu-xen/qemu/opensbi-riscv64-generic-fw_dynamic.elf
usr/share/qemu-xen/qemu/s390-ccw.img
usr/share/qemu-xen/qemu/u-boot.e500
"
QA_EXECSTACK="
usr/share/qemu-xen/qemu/hppa-firmware.img
"
QA_PREBUILT="
usr/libexec/xen/bin/elf2dmp
usr/libexec/xen/bin/ivshmem-client
usr/libexec/xen/bin/ivshmem-server
usr/libexec/xen/bin/qemu-edid
usr/libexec/xen/bin/qemu-img
usr/libexec/xen/bin/qemu-io
usr/libexec/xen/bin/qemu-keymap
usr/libexec/xen/bin/qemu-nbd
usr/libexec/xen/bin/qemu-pr-helper
usr/libexec/xen/bin/qemu-storage-daemon
usr/libexec/xen/bin/qemu-system-i386
usr/libexec/xen/bin/virtfs-proxy-helper
usr/libexec/xen/boot/ovmf.bin
usr/libexec/xen/boot/xen-shim
usr/libexec/xen/libexec/qemu-pr-helper
usr/libexec/xen/libexec/virtfs-proxy-helper
usr/libexec/xen/libexec/virtiofsd
usr/libexec/xen/libexec/xen-bridge-helper
usr/share/qemu-xen/qemu/s390-ccw.img
usr/share/qemu-xen/qemu/s390-netboot.img
usr/share/qemu-xen/qemu/u-boot.e500
"
RESTRICT="test"
pkg_setup() {
python_setup
export "CONFIG_LOMOUNT=y"
#bug 522642, disable compile tools/tests
export "CONFIG_TESTS=n"
if [[ -z ${XEN_TARGET_ARCH} ]] ; then
if use x86 && use amd64; then
die "Confusion! Both x86 and amd64 are set in your use flags!"
elif use x86; then
export XEN_TARGET_ARCH="x86_32"
elif use amd64 ; then
export XEN_TARGET_ARCH="x86_64"
elif use arm; then
export XEN_TARGET_ARCH="arm32"
elif use arm64; then
export XEN_TARGET_ARCH="arm64"
else
die "Unsupported architecture!"
fi
fi
}
src_prepare() {
# move before Gentoo patch, one patch should apply to seabios, to fix gcc-4.5.x build err
mv ../seabios-${SEABIOS_VER} tools/firmware/seabios-dir-remote || die
pushd tools/firmware/ > /dev/null
ln -s seabios-dir-remote seabios-dir || die
popd > /dev/null
if [[ -v XEN_UPSTREAM_PATCHES_DIR ]]; then
eapply "${XEN_UPSTREAM_PATCHES_DIR}"
fi
if [[ -v XEN_GENTOO_PATCHES_DIR ]]; then
eapply "${XEN_GENTOO_PATCHES_DIR}"
fi
# Rename qemu-bridge-helper to xen-bridge-helper to avoid file
# collisions with app-emulation/qemu.
sed -i 's/qemu-bridge-helper/xen-bridge-helper/g' \
tools/qemu-xen/include/net/net.h \
tools/qemu-xen/Makefile \
tools/qemu-xen/qemu-bridge-helper.c \
tools/qemu-xen/qemu-options.hx \
|| die
if use ovmf; then
mv ../edk2-${EDK2_COMMIT} tools/firmware/ovmf-dir-remote || die
rm -r tools/firmware/ovmf-dir-remote/CryptoPkg/Library/OpensslLib/openssl || die
rm -r tools/firmware/ovmf-dir-remote/ArmPkg/Library/ArmSoftFloatLib/berkeley-softfloat-3 || die
rm -r tools/firmware/ovmf-dir-remote/BaseTools/Source/C/BrotliCompress/brotli || die
rm -r tools/firmware/ovmf-dir-remote/MdeModulePkg/Library/BrotliCustomDecompressLib/brotli || die
mv ../openssl-OpenSSL_${EDK2_OPENSSL_VERSION} tools/firmware/ovmf-dir-remote/CryptoPkg/Library/OpensslLib/openssl || die
mv ../berkeley-softfloat-3-${EDK2_SOFTFLOAT_COMMIT} tools/firmware/ovmf-dir-remote/ArmPkg/Library/ArmSoftFloatLib/berkeley-softfloat-3 || die
cp -r ../brotli-${EDK2_BROTLI_COMMIT} tools/firmware/ovmf-dir-remote/BaseTools/Source/C/BrotliCompress/brotli || die
cp -r ../brotli-${EDK2_BROTLI_COMMIT} tools/firmware/ovmf-dir-remote/MdeModulePkg/Library/BrotliCustomDecompressLib/brotli || die
cp tools/firmware/ovmf-makefile tools/firmware/ovmf-dir-remote/Makefile || die
# Bug #816987
pushd tools/firmware/ovmf-dir-remote/BaseTools/Source/C/BrotliCompress/brotli > /dev/null
eapply "${FILESDIR}/${PN}-4.15.1-brotli-gcc11.patch"
popd > /dev/null
pushd tools/firmware/ovmf-dir-remote/MdeModulePkg/Library/BrotliCustomDecompressLib/brotli > /dev/null
eapply "${FILESDIR}/${PN}-4.15.1-brotli-gcc11.patch"
popd > /dev/null
fi
# ipxe
if use ipxe; then
cp "${DISTDIR}/ipxe-git-${IPXE_COMMIT}.tar.gz" tools/firmware/etherboot/ipxe.tar.gz || die
# gcc 11
cp "${XEN_GENTOO_PATCHES_DIR}/ipxe/${PN}-4.15.0-ipxe-gcc11.patch" tools/firmware/etherboot/patches/ipxe-gcc11.patch || die
echo ipxe-gcc11.patch >> tools/firmware/etherboot/patches/series || die
fi
mv tools/qemu-xen/qemu-bridge-helper.c tools/qemu-xen/xen-bridge-helper.c || die
# Fix texi2html build error with new texi2html, qemu.doc.html
sed -i -e "/texi2html -monolithic/s/-number//" tools/qemu-xen-traditional/Makefile || die
# Drop .config, fixes to gcc-4.6
sed -e '/-include $(XEN_ROOT)\/.config/d' -i Config.mk || die "Couldn't drop"
# drop flags
unset CFLAGS
unset LDFLAGS
unset ASFLAGS
unset CPPFLAGS
if ! use pygrub; then
sed -e '/^SUBDIRS-y += pygrub/d' -i tools/Makefile || die
fi
if ! use python; then
sed -e '/^SUBDIRS-y += python$/d' -i tools/Makefile || die
fi
if ! use hvm; then
sed -e '/SUBDIRS-$(CONFIG_X86) += firmware/d' -i tools/Makefile || die
# Bug 351648
elif ! use x86 && ! has x86 $(get_all_abis); then
mkdir -p "${WORKDIR}"/extra-headers/gnu || die
touch "${WORKDIR}"/extra-headers/gnu/stubs-32.h || die
export CPATH="${WORKDIR}"/extra-headers
fi
if use qemu; then
if use sdl; then
sed -i -e "s:\$\$source/configure:\0 --enable-sdl:" \
tools/Makefile || die
else
sed -i -e "s:\${QEMU_ROOT\:\-\.}/configure:\0 --disable-sdl:" \
tools/qemu-xen-traditional/xen-setup || die
sed -i -e "s:\$\$source/configure:\0 --disable-sdl:" \
tools/Makefile || die
fi
else
# Don't bother with qemu, only needed for fully virtualised guests
sed -i '/SUBDIRS-$(CONFIG_QEMU_XEN)/s/^/#/g' tools/Makefile || die
fi
# Reset bash completion dir; Bug 472438
sed -e "s;^BASH_COMPLETION_DIR :=.*;BASH_COMPLETION_DIR := $(get_bashcompdir);" \
-i config/Paths.mk.in || die
# xencommons, Bug #492332, sed lighter weight than patching
sed -e 's:\$QEMU_XEN -xen-domid:test -e "\$QEMU_XEN" \&\& &:' \
-i tools/hotplug/Linux/init.d/xencommons.in || die
# fix bashishm
sed -e '/Usage/s/\$//g' \
-i tools/hotplug/Linux/init.d/xendriverdomain.in || die
# respect multilib, usr/lib/libcacard.so.0.0.0
sed -e "/^libdir=/s/\/lib/\/$(get_libdir)/" \
-i tools/qemu-xen/configure || die
#bug 518136, don't build 32bit exactuable for nomultilib profile
if [[ "${ARCH}" == 'amd64' ]] && ! has_multilib_profile; then
sed -i -e "/x86_emulator/d" tools/tests/Makefile || die
fi
# uncomment lines in xl.conf
sed -e 's:^#autoballoon=:autoballoon=:' \
-e 's:^#lockfile=:lockfile=:' \
-e 's:^#vif.default.script=:vif.default.script=:' \
-i tools/examples/xl.conf || die
# disable capstone (Bug #673474)
sed -e "s:\$\$source/configure:\0 --disable-capstone:" \
-i tools/Makefile || die
# disable glusterfs
sed -e "s:\$\$source/configure:\0 --disable-glusterfs:" \
-i tools/Makefile || die
# disable jpeg automagic
sed -e "s:\$\$source/configure:\0 --disable-vnc-jpeg:" \
-i tools/Makefile || die
# disable png automagic
sed -e "s:\$\$source/configure:\0 --disable-vnc-png:" \
-i tools/Makefile || die
# disable docker (Bug #732970)
sed -e "s:\$\$source/configure:\0 --disable-containers:" \
-i tools/Makefile || die
# disable abi-dumper (Bug #791172)
sed -e 's/$(ABI_DUMPER) /echo /g' \
-i tools/libs/libs.mk || die
# Remove -Werror
find . -type f \( -name Makefile -o -name "*.mk" \) \
-exec sed -i \
-e 's/-Werror //g' \
-e '/^CFLAGS *+= -Werror$/d' \
-e 's/, "-Werror"//' \
{} + || die
default
}
src_configure() {
local myconf=(
--libdir="${EPREFIX}/usr/$(get_libdir)"
--libexecdir="${EPREFIX}/usr/libexec"
--localstatedir="${EPREFIX}/var"
--disable-golang
--disable-werror
--disable-xen
--enable-tools
--enable-docs
$(use_enable api xenapi)
$(use_enable ipxe)
$(usex system-ipxe '--with-system-ipxe=/usr/share/ipxe' '')
$(use_enable ocaml ocamltools)
$(use_enable ovmf)
$(use_enable rombios)
--with-xenstored=$(usex ocaml 'oxenstored' 'xenstored')
)
use system-seabios && myconf+=( --with-system-seabios=/usr/share/seabios/bios.bin )
use system-qemu && myconf+=( --with-system-qemu=/usr/bin/qemu-system-x86_64 )
use amd64 && myconf+=( $(use_enable qemu-traditional) )
tc-ld-disable-gold # Bug 669570
econf ${myconf[@]}
}
src_compile() {
local myopt
use debug && myopt="${myopt} debug=y"
use python && myopt="${myopt} XENSTAT_PYTHON_BINDINGS=y"
if test-flag-CC -fno-strict-overflow; then
append-flags -fno-strict-overflow
fi
# bug #845099
if use ipxe; then
local -x NO_WERROR=1
fi
emake CC="$(tc-getCC)" LD="$(tc-getLD)" AR="$(tc-getAR)" RANLIB="$(tc-getRANLIB)" build-tools ${myopt}
if use doc; then
emake -C docs build
else
emake -C docs man-pages
fi
}
src_install() {
# Override auto-detection in the build system, bug #382573
export INITD_DIR=/tmp/init.d
export CONFIG_LEAF_DIR=../tmp/default
# Let the build system compile installed Python modules.
local PYTHONDONTWRITEBYTECODE
export PYTHONDONTWRITEBYTECODE
emake DESTDIR="${ED}" DOCDIR="/usr/share/doc/${PF}" \
XEN_PYTHON_NATIVE_INSTALL=y install-tools
# Created at runtime
rm -rv "${ED}/var/run" || die
# Fix the remaining Python shebangs.
python_fix_shebang "${D}"
# Remove RedHat-specific stuff
rm -rf "${D}"/tmp || die
if use doc; then
emake DESTDIR="${D}" DOCDIR="/usr/share/doc/${PF}" install-docs
dodoc -r docs/{pdf,txt}
else
emake -C docs DESTDIR="${D}" DOCDIR="/usr/share/doc/${PF}" install-man-pages # Bug 668032
fi
dodoc ${DOCS[@]}
newconfd "${FILESDIR}"/xendomains.confd xendomains
newconfd "${FILESDIR}"/xenstored.confd xenstored
newconfd "${FILESDIR}"/xenconsoled.confd xenconsoled
newinitd "${FILESDIR}"/xendomains.initd-r2 xendomains
newinitd "${FILESDIR}"/xenstored.initd-r1 xenstored
newinitd "${FILESDIR}"/xenconsoled.initd xenconsoled
newinitd "${FILESDIR}"/xencommons.initd xencommons
newconfd "${FILESDIR}"/xencommons.confd xencommons
newinitd "${FILESDIR}"/xenqemudev.initd xenqemudev
newconfd "${FILESDIR}"/xenqemudev.confd xenqemudev
newinitd "${FILESDIR}"/xen-watchdog.initd xen-watchdog
if use screen; then
cat "${FILESDIR}"/xendomains-screen.confd >> "${D}"/etc/conf.d/xendomains || die
cp "${FILESDIR}"/xen-consoles.logrotate "${D}"/etc/xen/ || die
keepdir /var/log/xen-consoles
fi
# For -static-libs wrt Bug 384355
if ! use static-libs; then
rm -f "${D}"/usr/$(get_libdir)/*.a "${D}"/usr/$(get_libdir)/ocaml/*/*.a
fi
# for xendomains
keepdir /etc/xen/auto
# Remove files failing QA AFTER emake installs them, avoiding seeking absent files
find "${D}" \( -name openbios-sparc32 -o -name openbios-sparc64 \
-o -name openbios-ppc -o -name palcode-clipper \) -delete || die
keepdir /var/lib/xen/dump
keepdir /var/lib/xen/xenpaging
keepdir /var/lib/xenstored
keepdir /var/log/xen
if use python; then
python_domodule "${S}/tools/libs/stat/bindings/swig/python/xenstat.py"
python_domodule "${S}/tools/libs/stat/bindings/swig/python/_xenstat.so"
fi
python_optimize
}
pkg_postinst() {
elog "Official Xen Guide and the offical wiki page:"
elog "https://wiki.gentoo.org/wiki/Xen"
elog "https://wiki.xen.org/wiki/Main_Page"
elog ""
elog "Recommended to utilise the xencommons script to config system at boot"
elog "Add by use of rc-update on completion of the install"
if ! use hvm; then
echo
elog "HVM (VT-x and AMD-V) support has been disabled. If you need hvm"
elog "support enable the hvm use flag."
elog "An x86 or amd64 system is required to build HVM support."
fi
if use qemu; then
elog "The qemu-bridge-helper is renamed to the xen-bridge-helper in the in source"
elog "build of qemu. This allows for app-emulation/qemu to be emerged concurrently"
elog "with the qemu capable xen. It is up to the user to distinguish between and utilise"
elog "the qemu-bridge-helper and the xen-bridge-helper. File bugs of any issues that arise"
fi
}

@ -0,0 +1,532 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python3_{9..11} )
PYTHON_REQ_USE='ncurses,xml(+),threads(+)'
inherit bash-completion-r1 flag-o-matic multilib python-single-r1 readme.gentoo-r1 toolchain-funcs
if [[ ${PV} == *9999 ]]; then
inherit git-r3
REPO="xen.git"
EGIT_REPO_URI="git://xenbits.xen.org/${REPO}"
S="${WORKDIR}/${REPO}"
else
KEYWORDS="~amd64 ~arm ~arm64 ~x86"
SEABIOS_VER="1.14.0"
EDK2_COMMIT="7b4a99be8a39c12d3a7fc4b8db9f0eab4ac688d5"
EDK2_OPENSSL_VERSION="1_1_1j"
EDK2_SOFTFLOAT_COMMIT="b64af41c3276f97f0e181920400ee056b9c88037"
EDK2_BROTLI_COMMIT="666c3280cc11dc433c303d79a83d4ffbdd12cc8d"
IPXE_COMMIT="3c040ad387099483102708bb1839110bc788cefb"
XEN_GENTOO_PATCHSET_NUM=2
XEN_GENTOO_PATCHSET_BASE=4.16.1
XEN_PRE_PATCHSET_NUM=
XEN_PRE_VERSION_BASE=
XEN_BASE_PV="${PV}"
if [[ -n "${XEN_PRE_VERSION_BASE}" ]]; then
XEN_BASE_PV="${XEN_PRE_VERSION_BASE}"
fi
SRC_URI="
https://downloads.xenproject.org/release/xen/${XEN_BASE_PV}/xen-${XEN_BASE_PV}.tar.gz
https://www.seabios.org/downloads/seabios-${SEABIOS_VER}.tar.gz
ipxe? ( https://xenbits.xen.org/xen-extfiles/ipxe-git-${IPXE_COMMIT}.tar.gz )
ovmf? ( https://github.com/tianocore/edk2/archive/${EDK2_COMMIT}.tar.gz -> edk2-${EDK2_COMMIT}.tar.gz
https://github.com/openssl/openssl/archive/OpenSSL_${EDK2_OPENSSL_VERSION}.tar.gz
https://github.com/ucb-bar/berkeley-softfloat-3/archive/${EDK2_SOFTFLOAT_COMMIT}.tar.gz -> berkeley-softfloat-${EDK2_SOFTFLOAT_COMMIT}.tar.gz
https://github.com/google/brotli/archive/${EDK2_BROTLI_COMMIT}.tar.gz -> brotli-${EDK2_BROTLI_COMMIT}.tar.gz
)
"
if [[ -n "${XEN_PRE_PATCHSET_NUM}" ]]; then
XEN_UPSTREAM_PATCHES_TAG="$(ver_cut 1-3)-pre-patchset-${XEN_PRE_PATCHSET_NUM}"
XEN_UPSTREAM_PATCHES_NAME="xen-upstream-patches-${XEN_UPSTREAM_PATCHES_TAG}"
SRC_URI+=" https://gitweb.gentoo.org/proj/xen-upstream-patches.git/snapshot/${XEN_UPSTREAM_PATCHES_NAME}.tar.bz2"
XEN_UPSTREAM_PATCHES_DIR="${WORKDIR}/${XEN_UPSTREAM_PATCHES_NAME}"
fi
if [[ -n "${XEN_GENTOO_PATCHSET_NUM}" ]]; then
XEN_GENTOO_PATCHES_TAG="$(ver_cut 1-3 ${XEN_GENTOO_PATCHSET_BASE})-gentoo-patchset-${XEN_GENTOO_PATCHSET_NUM}"
XEN_GENTOO_PATCHES_NAME="xen-gentoo-patches-${XEN_GENTOO_PATCHES_TAG}"
SRC_URI+=" https://gitweb.gentoo.org/proj/xen-gentoo-patches.git/snapshot/${XEN_GENTOO_PATCHES_NAME}.tar.bz2"
XEN_GENTOO_PATCHES_DIR="${WORKDIR}/${XEN_GENTOO_PATCHES_NAME}"
fi
fi
DESCRIPTION="Xen tools including QEMU and xl"
HOMEPAGE="https://xenproject.org"
DOCS=( README )
S="${WORKDIR}/xen-$(ver_cut 1-3 ${XEN_BASE_PV})"
LICENSE="GPL-2"
SLOT="0/$(ver_cut 1-2)"
# Inclusion of IUSE ocaml on stabalizing requires maintainer of ocaml to (get off his hands and) make
# >=dev-lang/ocaml-4 stable
# Masked in profiles/eapi-5-files instead
IUSE="api debug doc +hvm +ipxe lzma ocaml ovmf pygrub python +qemu +qemu-traditional +rombios screen selinux sdl static-libs system-ipxe system-qemu system-seabios systemd zstd"
REQUIRED_USE="
${PYTHON_REQUIRED_USE}
ipxe? ( rombios )
ovmf? ( hvm )
pygrub? ( python )
rombios? ( hvm )
system-ipxe? ( rombios )
?? ( ipxe system-ipxe )
?? ( qemu system-qemu )"
COMMON_DEPEND="
lzma? ( app-arch/xz-utils )
qemu? (
dev-libs/glib:2
sys-libs/pam
)
zstd? ( app-arch/zstd )
app-arch/bzip2
app-arch/zstd
dev-libs/libnl:3
dev-libs/lzo:2
dev-libs/yajl
sys-apps/util-linux
sys-fs/e2fsprogs
sys-libs/ncurses
sys-libs/zlib
${PYTHON_DEPS}
"
RDEPEND="${COMMON_DEPEND}
sys-apps/iproute2[-minimal]
net-misc/bridge-utils
screen? (
app-misc/screen
app-admin/logrotate
)
selinux? ( sec-policy/selinux-xen )"
DEPEND="${COMMON_DEPEND}
app-misc/pax-utils
>=sys-kernel/linux-headers-4.11
x11-libs/pixman
$(python_gen_cond_dep '
dev-python/lxml[${PYTHON_USEDEP}]
')
x86? ( sys-devel/dev86
system-ipxe? ( sys-firmware/ipxe[qemu] )
sys-power/iasl )
api? ( dev-libs/libxml2
net-misc/curl )
ovmf? (
!arm? ( !arm64? ( dev-lang/nasm ) )
$(python_gen_impl_dep sqlite)
)
!amd64? ( >=sys-apps/dtc-1.4.0 )
amd64? ( sys-power/iasl
system-seabios? (
|| (
sys-firmware/seabios
sys-firmware/seabios-bin
)
)
system-ipxe? ( sys-firmware/ipxe[qemu] )
rombios? ( sys-devel/bin86 sys-devel/dev86 ) )
arm64? ( sys-power/iasl
rombios? ( sys-devel/bin86 sys-devel/dev86 ) )
doc? (
app-text/ghostscript-gpl
app-text/pandoc
$(python_gen_cond_dep '
dev-python/markdown[${PYTHON_USEDEP}]
')
dev-texlive/texlive-latexextra
media-gfx/transfig
)
hvm? ( x11-base/xorg-proto )
qemu? (
app-arch/snappy:=
dev-util/meson
sdl? (
media-libs/libsdl[X]
media-libs/libsdl2[X]
)
)
system-qemu? ( app-emulation/qemu[xen] )
ocaml? ( dev-ml/findlib
dev-lang/ocaml[ocamlopt] )
python? ( >=dev-lang/swig-4.0.0 )"
BDEPEND="dev-lang/perl
sys-devel/bison
sys-devel/gettext"
# hvmloader is used to bootstrap a fully virtualized kernel
# Approved by QA team in bug #144032
QA_WX_LOAD="
usr/libexec/xen/boot/hvmloader
usr/libexec/xen/boot/ovmf.bin
usr/libexec/xen/boot/xen-shim
usr/share/qemu-xen/qemu/hppa-firmware.img
usr/share/qemu-xen/qemu/opensbi-riscv32-generic-fw_dynamic.elf
usr/share/qemu-xen/qemu/opensbi-riscv64-generic-fw_dynamic.elf
usr/share/qemu-xen/qemu/s390-ccw.img
usr/share/qemu-xen/qemu/u-boot.e500
"
QA_EXECSTACK="
usr/share/qemu-xen/qemu/hppa-firmware.img
"
QA_PREBUILT="
usr/libexec/xen/bin/elf2dmp
usr/libexec/xen/bin/ivshmem-client
usr/libexec/xen/bin/ivshmem-server
usr/libexec/xen/bin/qemu-edid
usr/libexec/xen/bin/qemu-img
usr/libexec/xen/bin/qemu-io
usr/libexec/xen/bin/qemu-keymap
usr/libexec/xen/bin/qemu-nbd
usr/libexec/xen/bin/qemu-pr-helper
usr/libexec/xen/bin/qemu-storage-daemon
usr/libexec/xen/bin/qemu-system-i386
usr/libexec/xen/bin/virtfs-proxy-helper
usr/libexec/xen/boot/ovmf.bin
usr/libexec/xen/boot/xen-shim
usr/libexec/xen/libexec/qemu-pr-helper
usr/libexec/xen/libexec/virtfs-proxy-helper
usr/libexec/xen/libexec/virtiofsd
usr/libexec/xen/libexec/xen-bridge-helper
usr/share/qemu-xen/qemu/s390-ccw.img
usr/share/qemu-xen/qemu/s390-netboot.img
usr/share/qemu-xen/qemu/u-boot.e500
"
RESTRICT="test"
pkg_setup() {
python_setup
export "CONFIG_LOMOUNT=y"
#bug 522642, disable compile tools/tests
export "CONFIG_TESTS=n"
if [[ -z ${XEN_TARGET_ARCH} ]] ; then
if use x86 && use amd64; then
die "Confusion! Both x86 and amd64 are set in your use flags!"
elif use x86; then
export XEN_TARGET_ARCH="x86_32"
elif use amd64 ; then
export XEN_TARGET_ARCH="x86_64"
elif use arm; then
export XEN_TARGET_ARCH="arm32"
elif use arm64; then
export XEN_TARGET_ARCH="arm64"
else
die "Unsupported architecture!"
fi
fi
}
src_prepare() {
# move before Gentoo patch, one patch should apply to seabios, to fix gcc-4.5.x build err
mv ../seabios-${SEABIOS_VER} tools/firmware/seabios-dir-remote || die
pushd tools/firmware/ > /dev/null
ln -s seabios-dir-remote seabios-dir || die
popd > /dev/null
if [[ -v XEN_UPSTREAM_PATCHES_DIR ]]; then
eapply "${XEN_UPSTREAM_PATCHES_DIR}"
fi
if [[ -v XEN_GENTOO_PATCHES_DIR ]]; then
eapply "${XEN_GENTOO_PATCHES_DIR}"
fi
# Rename qemu-bridge-helper to xen-bridge-helper to avoid file
# collisions with app-emulation/qemu.
sed -i 's/qemu-bridge-helper/xen-bridge-helper/g' \
tools/qemu-xen/include/net/net.h \
tools/qemu-xen/meson.build \
tools/qemu-xen/qemu-bridge-helper.c \
tools/qemu-xen/qemu-options.hx \
|| die
mv tools/qemu-xen/qemu-bridge-helper.c tools/qemu-xen/xen-bridge-helper.c || die
if use ovmf; then
mv ../edk2-${EDK2_COMMIT} tools/firmware/ovmf-dir-remote || die
rm -r tools/firmware/ovmf-dir-remote/CryptoPkg/Library/OpensslLib/openssl || die
rm -r tools/firmware/ovmf-dir-remote/ArmPkg/Library/ArmSoftFloatLib/berkeley-softfloat-3 || die
rm -r tools/firmware/ovmf-dir-remote/BaseTools/Source/C/BrotliCompress/brotli || die
rm -r tools/firmware/ovmf-dir-remote/MdeModulePkg/Library/BrotliCustomDecompressLib/brotli || die
mv ../openssl-OpenSSL_${EDK2_OPENSSL_VERSION} tools/firmware/ovmf-dir-remote/CryptoPkg/Library/OpensslLib/openssl || die
mv ../berkeley-softfloat-3-${EDK2_SOFTFLOAT_COMMIT} tools/firmware/ovmf-dir-remote/ArmPkg/Library/ArmSoftFloatLib/berkeley-softfloat-3 || die
cp -r ../brotli-${EDK2_BROTLI_COMMIT} tools/firmware/ovmf-dir-remote/BaseTools/Source/C/BrotliCompress/brotli || die
cp -r ../brotli-${EDK2_BROTLI_COMMIT} tools/firmware/ovmf-dir-remote/MdeModulePkg/Library/BrotliCustomDecompressLib/brotli || die
cp tools/firmware/ovmf-makefile tools/firmware/ovmf-dir-remote/Makefile || die
# Bug #816987
pushd tools/firmware/ovmf-dir-remote/BaseTools/Source/C/BrotliCompress/brotli > /dev/null
eapply "${XEN_GENTOO_PATCHES_DIR}/ovmf/${PN}-4.15.1-brotli-gcc11.patch"
popd > /dev/null
pushd tools/firmware/ovmf-dir-remote/MdeModulePkg/Library/BrotliCustomDecompressLib/brotli > /dev/null
eapply "${XEN_GENTOO_PATCHES_DIR}/ovmf/${PN}-4.15.1-brotli-gcc11.patch"
popd > /dev/null
fi
# ipxe
if use ipxe; then
cp "${DISTDIR}/ipxe-git-${IPXE_COMMIT}.tar.gz" tools/firmware/etherboot/ipxe.tar.gz || die
# gcc 11
cp "${XEN_GENTOO_PATCHES_DIR}/ipxe/${PN}-4.15.0-ipxe-gcc11.patch" tools/firmware/etherboot/patches/ipxe-gcc11.patch || die
echo ipxe-gcc11.patch >> tools/firmware/etherboot/patches/series || die
fi
# Fix texi2html build error with new texi2html, qemu.doc.html
sed -i -e "/texi2html -monolithic/s/-number//" tools/qemu-xen-traditional/Makefile || die
# Drop .config, fixes to gcc-4.6
sed -e '/-include $(XEN_ROOT)\/.config/d' -i Config.mk || die "Couldn't drop"
# drop flags
unset CFLAGS
unset LDFLAGS
unset ASFLAGS
unset CPPFLAGS
if ! use pygrub; then
sed -e '/^SUBDIRS-y += pygrub/d' -i tools/Makefile || die
fi
if ! use python; then
sed -e '/^SUBDIRS-y += python$/d' -i tools/Makefile || die
fi
if ! use hvm; then
sed -e '/SUBDIRS-$(CONFIG_X86) += firmware/d' -i tools/Makefile || die
# Bug 351648
elif ! use x86 && ! has x86 $(get_all_abis); then
mkdir -p "${WORKDIR}"/extra-headers/gnu || die
touch "${WORKDIR}"/extra-headers/gnu/stubs-32.h || die
export CPATH="${WORKDIR}"/extra-headers
fi
if use qemu; then
if use sdl; then
sed -i -e "s:\$\$source/configure:\0 --enable-sdl:" \
tools/Makefile || die
else
sed -i -e "s:\${QEMU_ROOT\:\-\.}/configure:\0 --disable-sdl:" \
tools/qemu-xen-traditional/xen-setup || die
sed -i -e "s:\$\$source/configure:\0 --disable-sdl:" \
tools/Makefile || die
fi
else
# Don't bother with qemu, only needed for fully virtualised guests
sed -i '/SUBDIRS-$(CONFIG_QEMU_XEN)/s/^/#/g' tools/Makefile || die
fi
# Reset bash completion dir; Bug 472438
sed -e "s;^BASH_COMPLETION_DIR :=.*;BASH_COMPLETION_DIR := $(get_bashcompdir);" \
-i config/Paths.mk.in || die
# xencommons, Bug #492332, sed lighter weight than patching
sed -e 's:\$QEMU_XEN -xen-domid:test -e "\$QEMU_XEN" \&\& &:' \
-i tools/hotplug/Linux/init.d/xencommons.in || die
# fix bashishm
sed -e '/Usage/s/\$//g' \
-i tools/hotplug/Linux/init.d/xendriverdomain.in || die
# respect multilib, usr/lib/libcacard.so.0.0.0
sed -e "/^libdir=/s/\/lib/\/$(get_libdir)/" \
-i tools/qemu-xen/configure || die
#bug 518136, don't build 32bit exactuable for nomultilib profile
if [[ "${ARCH}" == 'amd64' ]] && ! has_multilib_profile; then
sed -i -e "/x86_emulator/d" tools/tests/Makefile || die
fi
# uncomment lines in xl.conf
sed -e 's:^#autoballoon=:autoballoon=:' \
-e 's:^#lockfile=:lockfile=:' \
-e 's:^#vif.default.script=:vif.default.script=:' \
-i tools/examples/xl.conf || die
# disable capstone (Bug #673474)
sed -e "s:\$\$source/configure:\0 --disable-capstone:" \
-i tools/Makefile || die
# disable glusterfs
sed -e "s:\$\$source/configure:\0 --disable-glusterfs:" \
-i tools/Makefile || die
# disable jpeg automagic
sed -e "s:\$\$source/configure:\0 --disable-vnc-jpeg:" \
-i tools/Makefile || die
# disable png automagic
sed -e "s:\$\$source/configure:\0 --disable-vnc-png:" \
-i tools/Makefile || die
# disable docker (Bug #732970)
sed -e "s:\$\$source/configure:\0 --disable-containers:" \
-i tools/Makefile || die
# disable abi-dumper (Bug #791172)
sed -e 's/$(ABI_DUMPER) /echo /g' \
-i tools/libs/libs.mk || die
# Remove -Werror
find . -type f \( -name Makefile -o -name "*.mk" \) \
-exec sed -i \
-e 's/-Werror //g' \
-e '/^CFLAGS *+= -Werror$/d' \
-e 's/, "-Werror"//' \
{} + || die
default
}
src_configure() {
local myconf=(
--libdir="${EPREFIX}/usr/$(get_libdir)"
--libexecdir="${EPREFIX}/usr/libexec"
--localstatedir="${EPREFIX}/var"
--disable-golang
--disable-werror
--disable-xen
--enable-tools
--enable-docs
$(use_enable api xenapi)
$(use_enable ipxe)
$(usex system-ipxe '--with-system-ipxe=/usr/share/ipxe' '')
$(use_enable ocaml ocamltools)
$(use_enable ovmf)
$(use_enable rombios)
$(use_enable systemd)
--with-xenstored=$(usex ocaml 'oxenstored' 'xenstored')
)
use system-seabios && myconf+=( --with-system-seabios=/usr/share/seabios/bios.bin )
use system-qemu && myconf+=( --with-system-qemu=/usr/bin/qemu-system-x86_64 )
use amd64 && myconf+=( $(use_enable qemu-traditional) )
tc-ld-disable-gold # Bug 669570
econf ${myconf[@]}
}
src_compile() {
local myopt
use debug && myopt="${myopt} debug=y"
use python && myopt="${myopt} XENSTAT_PYTHON_BINDINGS=y"
if test-flag-CC -fno-strict-overflow; then
append-flags -fno-strict-overflow
fi
# bug #845099
if use ipxe; then
local -x NO_WERROR=1
fi
emake \
HOSTCC="$(tc-getBUILD_CC)" \
HOSTCXX="$(tc-getBUILD_CXX)" \
CC="$(tc-getCC)" \
CXX="$(tc-getCXX)" \
LD="$(tc-getLD)" \
AR="$(tc-getAR)" \
OBJDUMP="$(tc-getOBJDUMP)" \
RANLIB="$(tc-getRANLIB)" \
build-tools ${myopt}
if use doc; then
emake -C docs build
else
emake -C docs man-pages
fi
}
src_install() {
# Override auto-detection in the build system, bug #382573
export INITD_DIR=/tmp/init.d
export CONFIG_LEAF_DIR=../tmp/default
# Let the build system compile installed Python modules.
local PYTHONDONTWRITEBYTECODE
export PYTHONDONTWRITEBYTECODE
emake DESTDIR="${ED}" DOCDIR="/usr/share/doc/${PF}" \
XEN_PYTHON_NATIVE_INSTALL=y install-tools
# Created at runtime
rm -rv "${ED}/var/run" || die
# Fix the remaining Python shebangs.
python_fix_shebang "${D}"
# Remove RedHat-specific stuff
rm -rf "${D}"/tmp || die
if use doc; then
emake DESTDIR="${D}" DOCDIR="/usr/share/doc/${PF}" install-docs
dodoc -r docs/{pdf,txt}
else
emake -C docs DESTDIR="${D}" DOCDIR="/usr/share/doc/${PF}" install-man-pages # Bug 668032
fi
dodoc ${DOCS[@]}
newconfd "${FILESDIR}"/xendomains.confd xendomains
newconfd "${FILESDIR}"/xenstored.confd xenstored
newconfd "${FILESDIR}"/xenconsoled.confd xenconsoled
newinitd "${FILESDIR}"/xendomains.initd-r2 xendomains
newinitd "${FILESDIR}"/xenstored.initd-r1 xenstored
newinitd "${FILESDIR}"/xenconsoled.initd xenconsoled
newinitd "${FILESDIR}"/xencommons.initd xencommons
newconfd "${FILESDIR}"/xencommons.confd xencommons
newinitd "${FILESDIR}"/xenqemudev.initd xenqemudev
newconfd "${FILESDIR}"/xenqemudev.confd xenqemudev
newinitd "${FILESDIR}"/xen-watchdog.initd xen-watchdog
if use screen; then
cat "${FILESDIR}"/xendomains-screen.confd >> "${D}"/etc/conf.d/xendomains || die
cp "${FILESDIR}"/xen-consoles.logrotate "${D}"/etc/xen/ || die
keepdir /var/log/xen-consoles
fi
# For -static-libs wrt Bug 384355
if ! use static-libs; then
rm -f "${D}"/usr/$(get_libdir)/*.a "${D}"/usr/$(get_libdir)/ocaml/*/*.a
fi
# for xendomains
keepdir /etc/xen/auto
# Remove files failing QA AFTER emake installs them, avoiding seeking absent files
find "${D}" \( -name openbios-sparc32 -o -name openbios-sparc64 \
-o -name openbios-ppc -o -name palcode-clipper \) -delete || die
keepdir /var/lib/xen/dump
keepdir /var/lib/xen/xenpaging
keepdir /var/lib/xenstored
keepdir /var/log/xen
if use python; then
python_domodule "${S}/tools/libs/stat/bindings/swig/python/xenstat.py"
python_domodule "${S}/tools/libs/stat/bindings/swig/python/_xenstat.so"
fi
python_optimize
readme.gentoo_create_doc
}
pkg_postinst() {
readme.gentoo_print_elog
}

@ -1,532 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python3_{9..11} )
PYTHON_REQ_USE='ncurses,xml(+),threads(+)'
inherit bash-completion-r1 flag-o-matic multilib python-single-r1 readme.gentoo-r1 toolchain-funcs
if [[ ${PV} == *9999 ]]; then
inherit git-r3
REPO="xen.git"
EGIT_REPO_URI="git://xenbits.xen.org/${REPO}"
S="${WORKDIR}/${REPO}"
else
KEYWORDS="~amd64 ~arm ~arm64 ~x86"
SEABIOS_VER="1.14.0"
EDK2_COMMIT="7b4a99be8a39c12d3a7fc4b8db9f0eab4ac688d5"
EDK2_OPENSSL_VERSION="1_1_1j"
EDK2_SOFTFLOAT_COMMIT="b64af41c3276f97f0e181920400ee056b9c88037"
EDK2_BROTLI_COMMIT="666c3280cc11dc433c303d79a83d4ffbdd12cc8d"
IPXE_COMMIT="3c040ad387099483102708bb1839110bc788cefb"
XEN_GENTOO_PATCHSET_NUM=2
XEN_GENTOO_PATCHSET_BASE=4.16.1
XEN_PRE_PATCHSET_NUM=0
XEN_PRE_VERSION_BASE=4.16.2
XEN_BASE_PV="${PV}"
if [[ -n "${XEN_PRE_VERSION_BASE}" ]]; then
XEN_BASE_PV="${XEN_PRE_VERSION_BASE}"
fi
SRC_URI="
https://downloads.xenproject.org/release/xen/${XEN_BASE_PV}/xen-${XEN_BASE_PV}.tar.gz
https://www.seabios.org/downloads/seabios-${SEABIOS_VER}.tar.gz
ipxe? ( https://xenbits.xen.org/xen-extfiles/ipxe-git-${IPXE_COMMIT}.tar.gz )
ovmf? ( https://github.com/tianocore/edk2/archive/${EDK2_COMMIT}.tar.gz -> edk2-${EDK2_COMMIT}.tar.gz
https://github.com/openssl/openssl/archive/OpenSSL_${EDK2_OPENSSL_VERSION}.tar.gz
https://github.com/ucb-bar/berkeley-softfloat-3/archive/${EDK2_SOFTFLOAT_COMMIT}.tar.gz -> berkeley-softfloat-${EDK2_SOFTFLOAT_COMMIT}.tar.gz
https://github.com/google/brotli/archive/${EDK2_BROTLI_COMMIT}.tar.gz -> brotli-${EDK2_BROTLI_COMMIT}.tar.gz
)
"
if [[ -n "${XEN_PRE_PATCHSET_NUM}" ]]; then
XEN_UPSTREAM_PATCHES_TAG="$(ver_cut 1-3)-pre-patchset-${XEN_PRE_PATCHSET_NUM}"
XEN_UPSTREAM_PATCHES_NAME="xen-upstream-patches-${XEN_UPSTREAM_PATCHES_TAG}"
SRC_URI+=" https://gitweb.gentoo.org/proj/xen-upstream-patches.git/snapshot/${XEN_UPSTREAM_PATCHES_NAME}.tar.bz2"
XEN_UPSTREAM_PATCHES_DIR="${WORKDIR}/${XEN_UPSTREAM_PATCHES_NAME}"
fi
if [[ -n "${XEN_GENTOO_PATCHSET_NUM}" ]]; then
XEN_GENTOO_PATCHES_TAG="$(ver_cut 1-3 ${XEN_GENTOO_PATCHSET_BASE})-gentoo-patchset-${XEN_GENTOO_PATCHSET_NUM}"
XEN_GENTOO_PATCHES_NAME="xen-gentoo-patches-${XEN_GENTOO_PATCHES_TAG}"
SRC_URI+=" https://gitweb.gentoo.org/proj/xen-gentoo-patches.git/snapshot/${XEN_GENTOO_PATCHES_NAME}.tar.bz2"
XEN_GENTOO_PATCHES_DIR="${WORKDIR}/${XEN_GENTOO_PATCHES_NAME}"
fi
fi
DESCRIPTION="Xen tools including QEMU and xl"
HOMEPAGE="https://xenproject.org"
DOCS=( README )
S="${WORKDIR}/xen-$(ver_cut 1-3 ${XEN_BASE_PV})"
LICENSE="GPL-2"
SLOT="0/$(ver_cut 1-2)"
# Inclusion of IUSE ocaml on stabalizing requires maintainer of ocaml to (get off his hands and) make
# >=dev-lang/ocaml-4 stable
# Masked in profiles/eapi-5-files instead
IUSE="api debug doc +hvm +ipxe lzma ocaml ovmf pygrub python +qemu +qemu-traditional +rombios screen selinux sdl static-libs system-ipxe system-qemu system-seabios systemd zstd"
REQUIRED_USE="
${PYTHON_REQUIRED_USE}
ipxe? ( rombios )
ovmf? ( hvm )
pygrub? ( python )
rombios? ( hvm )
system-ipxe? ( rombios )
?? ( ipxe system-ipxe )
?? ( qemu system-qemu )"
COMMON_DEPEND="
lzma? ( app-arch/xz-utils )
qemu? (
dev-libs/glib:2
sys-libs/pam
)
zstd? ( app-arch/zstd )
app-arch/bzip2
app-arch/zstd
dev-libs/libnl:3
dev-libs/lzo:2
dev-libs/yajl
sys-apps/util-linux
sys-fs/e2fsprogs
sys-libs/ncurses
sys-libs/zlib
${PYTHON_DEPS}
"
RDEPEND="${COMMON_DEPEND}
sys-apps/iproute2[-minimal]
net-misc/bridge-utils
screen? (
app-misc/screen
app-admin/logrotate
)
selinux? ( sec-policy/selinux-xen )"
DEPEND="${COMMON_DEPEND}
app-misc/pax-utils
>=sys-kernel/linux-headers-4.11
x11-libs/pixman
$(python_gen_cond_dep '
dev-python/lxml[${PYTHON_USEDEP}]
')
x86? ( sys-devel/dev86
system-ipxe? ( sys-firmware/ipxe[qemu] )
sys-power/iasl )
api? ( dev-libs/libxml2
net-misc/curl )
ovmf? (
!arm? ( !arm64? ( dev-lang/nasm ) )
$(python_gen_impl_dep sqlite)
)
!amd64? ( >=sys-apps/dtc-1.4.0 )
amd64? ( sys-power/iasl
system-seabios? (
|| (
sys-firmware/seabios
sys-firmware/seabios-bin
)
)
system-ipxe? ( sys-firmware/ipxe[qemu] )
rombios? ( sys-devel/bin86 sys-devel/dev86 ) )
arm64? ( sys-power/iasl
rombios? ( sys-devel/bin86 sys-devel/dev86 ) )
doc? (
app-text/ghostscript-gpl
app-text/pandoc
$(python_gen_cond_dep '
dev-python/markdown[${PYTHON_USEDEP}]
')
dev-texlive/texlive-latexextra
media-gfx/transfig
)
hvm? ( x11-base/xorg-proto )
qemu? (
app-arch/snappy:=
dev-util/meson
sdl? (
media-libs/libsdl[X]
media-libs/libsdl2[X]
)
)
system-qemu? ( app-emulation/qemu[xen] )
ocaml? ( dev-ml/findlib
dev-lang/ocaml[ocamlopt] )
python? ( >=dev-lang/swig-4.0.0 )"
BDEPEND="dev-lang/perl
sys-devel/bison
sys-devel/gettext"
# hvmloader is used to bootstrap a fully virtualized kernel
# Approved by QA team in bug #144032
QA_WX_LOAD="
usr/libexec/xen/boot/hvmloader
usr/libexec/xen/boot/ovmf.bin
usr/libexec/xen/boot/xen-shim
usr/share/qemu-xen/qemu/hppa-firmware.img
usr/share/qemu-xen/qemu/opensbi-riscv32-generic-fw_dynamic.elf
usr/share/qemu-xen/qemu/opensbi-riscv64-generic-fw_dynamic.elf
usr/share/qemu-xen/qemu/s390-ccw.img
usr/share/qemu-xen/qemu/u-boot.e500
"
QA_EXECSTACK="
usr/share/qemu-xen/qemu/hppa-firmware.img
"
QA_PREBUILT="
usr/libexec/xen/bin/elf2dmp
usr/libexec/xen/bin/ivshmem-client
usr/libexec/xen/bin/ivshmem-server
usr/libexec/xen/bin/qemu-edid
usr/libexec/xen/bin/qemu-img
usr/libexec/xen/bin/qemu-io
usr/libexec/xen/bin/qemu-keymap
usr/libexec/xen/bin/qemu-nbd
usr/libexec/xen/bin/qemu-pr-helper
usr/libexec/xen/bin/qemu-storage-daemon
usr/libexec/xen/bin/qemu-system-i386
usr/libexec/xen/bin/virtfs-proxy-helper
usr/libexec/xen/boot/ovmf.bin
usr/libexec/xen/boot/xen-shim
usr/libexec/xen/libexec/qemu-pr-helper
usr/libexec/xen/libexec/virtfs-proxy-helper
usr/libexec/xen/libexec/virtiofsd
usr/libexec/xen/libexec/xen-bridge-helper
usr/share/qemu-xen/qemu/s390-ccw.img
usr/share/qemu-xen/qemu/s390-netboot.img
usr/share/qemu-xen/qemu/u-boot.e500
"
RESTRICT="test"
pkg_setup() {
python_setup
export "CONFIG_LOMOUNT=y"
#bug 522642, disable compile tools/tests
export "CONFIG_TESTS=n"
if [[ -z ${XEN_TARGET_ARCH} ]] ; then
if use x86 && use amd64; then
die "Confusion! Both x86 and amd64 are set in your use flags!"
elif use x86; then
export XEN_TARGET_ARCH="x86_32"
elif use amd64 ; then
export XEN_TARGET_ARCH="x86_64"
elif use arm; then
export XEN_TARGET_ARCH="arm32"
elif use arm64; then
export XEN_TARGET_ARCH="arm64"
else
die "Unsupported architecture!"
fi
fi
}
src_prepare() {
# move before Gentoo patch, one patch should apply to seabios, to fix gcc-4.5.x build err
mv ../seabios-${SEABIOS_VER} tools/firmware/seabios-dir-remote || die
pushd tools/firmware/ > /dev/null
ln -s seabios-dir-remote seabios-dir || die
popd > /dev/null
if [[ -v XEN_UPSTREAM_PATCHES_DIR ]]; then
eapply "${XEN_UPSTREAM_PATCHES_DIR}"
fi
if [[ -v XEN_GENTOO_PATCHES_DIR ]]; then
eapply "${XEN_GENTOO_PATCHES_DIR}"
fi
# Rename qemu-bridge-helper to xen-bridge-helper to avoid file
# collisions with app-emulation/qemu.
sed -i 's/qemu-bridge-helper/xen-bridge-helper/g' \
tools/qemu-xen/include/net/net.h \
tools/qemu-xen/meson.build \
tools/qemu-xen/qemu-bridge-helper.c \
tools/qemu-xen/qemu-options.hx \
|| die
mv tools/qemu-xen/qemu-bridge-helper.c tools/qemu-xen/xen-bridge-helper.c || die
if use ovmf; then
mv ../edk2-${EDK2_COMMIT} tools/firmware/ovmf-dir-remote || die
rm -r tools/firmware/ovmf-dir-remote/CryptoPkg/Library/OpensslLib/openssl || die
rm -r tools/firmware/ovmf-dir-remote/ArmPkg/Library/ArmSoftFloatLib/berkeley-softfloat-3 || die
rm -r tools/firmware/ovmf-dir-remote/BaseTools/Source/C/BrotliCompress/brotli || die
rm -r tools/firmware/ovmf-dir-remote/MdeModulePkg/Library/BrotliCustomDecompressLib/brotli || die
mv ../openssl-OpenSSL_${EDK2_OPENSSL_VERSION} tools/firmware/ovmf-dir-remote/CryptoPkg/Library/OpensslLib/openssl || die
mv ../berkeley-softfloat-3-${EDK2_SOFTFLOAT_COMMIT} tools/firmware/ovmf-dir-remote/ArmPkg/Library/ArmSoftFloatLib/berkeley-softfloat-3 || die
cp -r ../brotli-${EDK2_BROTLI_COMMIT} tools/firmware/ovmf-dir-remote/BaseTools/Source/C/BrotliCompress/brotli || die
cp -r ../brotli-${EDK2_BROTLI_COMMIT} tools/firmware/ovmf-dir-remote/MdeModulePkg/Library/BrotliCustomDecompressLib/brotli || die
cp tools/firmware/ovmf-makefile tools/firmware/ovmf-dir-remote/Makefile || die
# Bug #816987
pushd tools/firmware/ovmf-dir-remote/BaseTools/Source/C/BrotliCompress/brotli > /dev/null
eapply "${XEN_GENTOO_PATCHES_DIR}/ovmf/${PN}-4.15.1-brotli-gcc11.patch"
popd > /dev/null
pushd tools/firmware/ovmf-dir-remote/MdeModulePkg/Library/BrotliCustomDecompressLib/brotli > /dev/null
eapply "${XEN_GENTOO_PATCHES_DIR}/ovmf/${PN}-4.15.1-brotli-gcc11.patch"
popd > /dev/null
fi
# ipxe
if use ipxe; then
cp "${DISTDIR}/ipxe-git-${IPXE_COMMIT}.tar.gz" tools/firmware/etherboot/ipxe.tar.gz || die
# gcc 11
cp "${XEN_GENTOO_PATCHES_DIR}/ipxe/${PN}-4.15.0-ipxe-gcc11.patch" tools/firmware/etherboot/patches/ipxe-gcc11.patch || die
echo ipxe-gcc11.patch >> tools/firmware/etherboot/patches/series || die
fi
# Fix texi2html build error with new texi2html, qemu.doc.html
sed -i -e "/texi2html -monolithic/s/-number//" tools/qemu-xen-traditional/Makefile || die
# Drop .config, fixes to gcc-4.6
sed -e '/-include $(XEN_ROOT)\/.config/d' -i Config.mk || die "Couldn't drop"
# drop flags
unset CFLAGS
unset LDFLAGS
unset ASFLAGS
unset CPPFLAGS
if ! use pygrub; then
sed -e '/^SUBDIRS-y += pygrub/d' -i tools/Makefile || die
fi
if ! use python; then
sed -e '/^SUBDIRS-y += python$/d' -i tools/Makefile || die
fi
if ! use hvm; then
sed -e '/SUBDIRS-$(CONFIG_X86) += firmware/d' -i tools/Makefile || die
# Bug 351648
elif ! use x86 && ! has x86 $(get_all_abis); then
mkdir -p "${WORKDIR}"/extra-headers/gnu || die
touch "${WORKDIR}"/extra-headers/gnu/stubs-32.h || die
export CPATH="${WORKDIR}"/extra-headers
fi
if use qemu; then
if use sdl; then
sed -i -e "s:\$\$source/configure:\0 --enable-sdl:" \
tools/Makefile || die
else
sed -i -e "s:\${QEMU_ROOT\:\-\.}/configure:\0 --disable-sdl:" \
tools/qemu-xen-traditional/xen-setup || die
sed -i -e "s:\$\$source/configure:\0 --disable-sdl:" \
tools/Makefile || die
fi
else
# Don't bother with qemu, only needed for fully virtualised guests
sed -i '/SUBDIRS-$(CONFIG_QEMU_XEN)/s/^/#/g' tools/Makefile || die
fi
# Reset bash completion dir; Bug 472438
sed -e "s;^BASH_COMPLETION_DIR :=.*;BASH_COMPLETION_DIR := $(get_bashcompdir);" \
-i config/Paths.mk.in || die
# xencommons, Bug #492332, sed lighter weight than patching
sed -e 's:\$QEMU_XEN -xen-domid:test -e "\$QEMU_XEN" \&\& &:' \
-i tools/hotplug/Linux/init.d/xencommons.in || die
# fix bashishm
sed -e '/Usage/s/\$//g' \
-i tools/hotplug/Linux/init.d/xendriverdomain.in || die
# respect multilib, usr/lib/libcacard.so.0.0.0
sed -e "/^libdir=/s/\/lib/\/$(get_libdir)/" \
-i tools/qemu-xen/configure || die
#bug 518136, don't build 32bit exactuable for nomultilib profile
if [[ "${ARCH}" == 'amd64' ]] && ! has_multilib_profile; then
sed -i -e "/x86_emulator/d" tools/tests/Makefile || die
fi
# uncomment lines in xl.conf
sed -e 's:^#autoballoon=:autoballoon=:' \
-e 's:^#lockfile=:lockfile=:' \
-e 's:^#vif.default.script=:vif.default.script=:' \
-i tools/examples/xl.conf || die
# disable capstone (Bug #673474)
sed -e "s:\$\$source/configure:\0 --disable-capstone:" \
-i tools/Makefile || die
# disable glusterfs
sed -e "s:\$\$source/configure:\0 --disable-glusterfs:" \
-i tools/Makefile || die
# disable jpeg automagic
sed -e "s:\$\$source/configure:\0 --disable-vnc-jpeg:" \
-i tools/Makefile || die
# disable png automagic
sed -e "s:\$\$source/configure:\0 --disable-vnc-png:" \
-i tools/Makefile || die
# disable docker (Bug #732970)
sed -e "s:\$\$source/configure:\0 --disable-containers:" \
-i tools/Makefile || die
# disable abi-dumper (Bug #791172)
sed -e 's/$(ABI_DUMPER) /echo /g' \
-i tools/libs/libs.mk || die
# Remove -Werror
find . -type f \( -name Makefile -o -name "*.mk" \) \
-exec sed -i \
-e 's/-Werror //g' \
-e '/^CFLAGS *+= -Werror$/d' \
-e 's/, "-Werror"//' \
{} + || die
default
}
src_configure() {
local myconf=(
--libdir="${EPREFIX}/usr/$(get_libdir)"
--libexecdir="${EPREFIX}/usr/libexec"
--localstatedir="${EPREFIX}/var"
--disable-golang
--disable-werror
--disable-xen
--enable-tools
--enable-docs
$(use_enable api xenapi)
$(use_enable ipxe)
$(usex system-ipxe '--with-system-ipxe=/usr/share/ipxe' '')
$(use_enable ocaml ocamltools)
$(use_enable ovmf)
$(use_enable rombios)
$(use_enable systemd)
--with-xenstored=$(usex ocaml 'oxenstored' 'xenstored')
)
use system-seabios && myconf+=( --with-system-seabios=/usr/share/seabios/bios.bin )
use system-qemu && myconf+=( --with-system-qemu=/usr/bin/qemu-system-x86_64 )
use amd64 && myconf+=( $(use_enable qemu-traditional) )
tc-ld-disable-gold # Bug 669570
econf ${myconf[@]}
}
src_compile() {
local myopt
use debug && myopt="${myopt} debug=y"
use python && myopt="${myopt} XENSTAT_PYTHON_BINDINGS=y"
if test-flag-CC -fno-strict-overflow; then
append-flags -fno-strict-overflow
fi
# bug #845099
if use ipxe; then
local -x NO_WERROR=1
fi
emake \
HOSTCC="$(tc-getBUILD_CC)" \
HOSTCXX="$(tc-getBUILD_CXX)" \
CC="$(tc-getCC)" \
CXX="$(tc-getCXX)" \
LD="$(tc-getLD)" \
AR="$(tc-getAR)" \
OBJDUMP="$(tc-getOBJDUMP)" \
RANLIB="$(tc-getRANLIB)" \
build-tools ${myopt}
if use doc; then
emake -C docs build
else
emake -C docs man-pages
fi
}
src_install() {
# Override auto-detection in the build system, bug #382573
export INITD_DIR=/tmp/init.d
export CONFIG_LEAF_DIR=../tmp/default
# Let the build system compile installed Python modules.
local PYTHONDONTWRITEBYTECODE
export PYTHONDONTWRITEBYTECODE
emake DESTDIR="${ED}" DOCDIR="/usr/share/doc/${PF}" \
XEN_PYTHON_NATIVE_INSTALL=y install-tools
# Created at runtime
rm -rv "${ED}/var/run" || die
# Fix the remaining Python shebangs.
python_fix_shebang "${D}"
# Remove RedHat-specific stuff
rm -rf "${D}"/tmp || die
if use doc; then
emake DESTDIR="${D}" DOCDIR="/usr/share/doc/${PF}" install-docs
dodoc -r docs/{pdf,txt}
else
emake -C docs DESTDIR="${D}" DOCDIR="/usr/share/doc/${PF}" install-man-pages # Bug 668032
fi
dodoc ${DOCS[@]}
newconfd "${FILESDIR}"/xendomains.confd xendomains
newconfd "${FILESDIR}"/xenstored.confd xenstored
newconfd "${FILESDIR}"/xenconsoled.confd xenconsoled
newinitd "${FILESDIR}"/xendomains.initd-r2 xendomains
newinitd "${FILESDIR}"/xenstored.initd-r1 xenstored
newinitd "${FILESDIR}"/xenconsoled.initd xenconsoled
newinitd "${FILESDIR}"/xencommons.initd xencommons
newconfd "${FILESDIR}"/xencommons.confd xencommons
newinitd "${FILESDIR}"/xenqemudev.initd xenqemudev
newconfd "${FILESDIR}"/xenqemudev.confd xenqemudev
newinitd "${FILESDIR}"/xen-watchdog.initd xen-watchdog
if use screen; then
cat "${FILESDIR}"/xendomains-screen.confd >> "${D}"/etc/conf.d/xendomains || die
cp "${FILESDIR}"/xen-consoles.logrotate "${D}"/etc/xen/ || die
keepdir /var/log/xen-consoles
fi
# For -static-libs wrt Bug 384355
if ! use static-libs; then
rm -f "${D}"/usr/$(get_libdir)/*.a "${D}"/usr/$(get_libdir)/ocaml/*/*.a
fi
# for xendomains
keepdir /etc/xen/auto
# Remove files failing QA AFTER emake installs them, avoiding seeking absent files
find "${D}" \( -name openbios-sparc32 -o -name openbios-sparc64 \
-o -name openbios-ppc -o -name palcode-clipper \) -delete || die
keepdir /var/lib/xen/dump
keepdir /var/lib/xen/xenpaging
keepdir /var/lib/xenstored
keepdir /var/log/xen
if use python; then
python_domodule "${S}/tools/libs/stat/bindings/swig/python/xenstat.py"
python_domodule "${S}/tools/libs/stat/bindings/swig/python/_xenstat.so"
fi
python_optimize
readme.gentoo_create_doc
}
pkg_postinst() {
readme.gentoo_print_elog
}

@ -1,532 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python3_{9..11} )
PYTHON_REQ_USE='ncurses,xml(+),threads(+)'
inherit bash-completion-r1 flag-o-matic multilib python-single-r1 readme.gentoo-r1 toolchain-funcs
if [[ ${PV} == *9999 ]]; then
inherit git-r3
REPO="xen.git"
EGIT_REPO_URI="git://xenbits.xen.org/${REPO}"
S="${WORKDIR}/${REPO}"
else
KEYWORDS="~amd64 ~arm ~arm64 ~x86"
SEABIOS_VER="1.14.0"
EDK2_COMMIT="7b4a99be8a39c12d3a7fc4b8db9f0eab4ac688d5"
EDK2_OPENSSL_VERSION="1_1_1j"
EDK2_SOFTFLOAT_COMMIT="b64af41c3276f97f0e181920400ee056b9c88037"
EDK2_BROTLI_COMMIT="666c3280cc11dc433c303d79a83d4ffbdd12cc8d"
IPXE_COMMIT="3c040ad387099483102708bb1839110bc788cefb"
XEN_GENTOO_PATCHSET_NUM=2
XEN_GENTOO_PATCHSET_BASE=4.16.1
XEN_PRE_PATCHSET_NUM=0
XEN_PRE_VERSION_BASE=4.16.2
XEN_BASE_PV="${PV}"
if [[ -n "${XEN_PRE_VERSION_BASE}" ]]; then
XEN_BASE_PV="${XEN_PRE_VERSION_BASE}"
fi
SRC_URI="
https://downloads.xenproject.org/release/xen/${XEN_BASE_PV}/xen-${XEN_BASE_PV}.tar.gz
https://www.seabios.org/downloads/seabios-${SEABIOS_VER}.tar.gz
ipxe? ( https://xenbits.xen.org/xen-extfiles/ipxe-git-${IPXE_COMMIT}.tar.gz )
ovmf? ( https://github.com/tianocore/edk2/archive/${EDK2_COMMIT}.tar.gz -> edk2-${EDK2_COMMIT}.tar.gz
https://github.com/openssl/openssl/archive/OpenSSL_${EDK2_OPENSSL_VERSION}.tar.gz
https://github.com/ucb-bar/berkeley-softfloat-3/archive/${EDK2_SOFTFLOAT_COMMIT}.tar.gz -> berkeley-softfloat-${EDK2_SOFTFLOAT_COMMIT}.tar.gz
https://github.com/google/brotli/archive/${EDK2_BROTLI_COMMIT}.tar.gz -> brotli-${EDK2_BROTLI_COMMIT}.tar.gz
)
"
if [[ -n "${XEN_PRE_PATCHSET_NUM}" ]]; then
XEN_UPSTREAM_PATCHES_TAG="$(ver_cut 1-3)-pre-patchset-${XEN_PRE_PATCHSET_NUM}"
XEN_UPSTREAM_PATCHES_NAME="xen-upstream-patches-${XEN_UPSTREAM_PATCHES_TAG}"
SRC_URI+=" https://gitweb.gentoo.org/proj/xen-upstream-patches.git/snapshot/${XEN_UPSTREAM_PATCHES_NAME}.tar.bz2"
XEN_UPSTREAM_PATCHES_DIR="${WORKDIR}/${XEN_UPSTREAM_PATCHES_NAME}"
fi
if [[ -n "${XEN_GENTOO_PATCHSET_NUM}" ]]; then
XEN_GENTOO_PATCHES_TAG="$(ver_cut 1-3 ${XEN_GENTOO_PATCHSET_BASE})-gentoo-patchset-${XEN_GENTOO_PATCHSET_NUM}"
XEN_GENTOO_PATCHES_NAME="xen-gentoo-patches-${XEN_GENTOO_PATCHES_TAG}"
SRC_URI+=" https://gitweb.gentoo.org/proj/xen-gentoo-patches.git/snapshot/${XEN_GENTOO_PATCHES_NAME}.tar.bz2"
XEN_GENTOO_PATCHES_DIR="${WORKDIR}/${XEN_GENTOO_PATCHES_NAME}"
fi
fi
DESCRIPTION="Xen tools including QEMU and xl"
HOMEPAGE="https://xenproject.org"
DOCS=( README )
S="${WORKDIR}/xen-$(ver_cut 1-3 ${XEN_BASE_PV})"
LICENSE="GPL-2"
SLOT="0/$(ver_cut 1-2)"
# Inclusion of IUSE ocaml on stabalizing requires maintainer of ocaml to (get off his hands and) make
# >=dev-lang/ocaml-4 stable
# Masked in profiles/eapi-5-files instead
IUSE="api debug doc +hvm +ipxe lzma ocaml ovmf pygrub python +qemu +qemu-traditional +rombios screen selinux sdl static-libs system-ipxe system-qemu system-seabios systemd zstd"
REQUIRED_USE="
${PYTHON_REQUIRED_USE}
ipxe? ( rombios )
ovmf? ( hvm )
pygrub? ( python )
rombios? ( hvm )
system-ipxe? ( rombios )
?? ( ipxe system-ipxe )
?? ( qemu system-qemu )"
COMMON_DEPEND="
lzma? ( app-arch/xz-utils )
qemu? (
dev-libs/glib:2
sys-libs/pam
)
zstd? ( app-arch/zstd )
app-arch/bzip2
app-arch/zstd
dev-libs/libnl:3
dev-libs/lzo:2
dev-libs/yajl
sys-apps/util-linux
sys-fs/e2fsprogs
sys-libs/ncurses
sys-libs/zlib
${PYTHON_DEPS}
"
RDEPEND="${COMMON_DEPEND}
sys-apps/iproute2[-minimal]
net-misc/bridge-utils
screen? (
app-misc/screen
app-admin/logrotate
)
selinux? ( sec-policy/selinux-xen )"
DEPEND="${COMMON_DEPEND}
app-misc/pax-utils
>=sys-kernel/linux-headers-4.11
x11-libs/pixman
$(python_gen_cond_dep '
dev-python/lxml[${PYTHON_USEDEP}]
')
x86? ( sys-devel/dev86
system-ipxe? ( sys-firmware/ipxe[qemu] )
sys-power/iasl )
api? ( dev-libs/libxml2
net-misc/curl )
ovmf? (
!arm? ( !arm64? ( dev-lang/nasm ) )
$(python_gen_impl_dep sqlite)
)
!amd64? ( >=sys-apps/dtc-1.4.0 )
amd64? ( sys-power/iasl
system-seabios? (
|| (
sys-firmware/seabios
sys-firmware/seabios-bin
)
)
system-ipxe? ( sys-firmware/ipxe[qemu] )
rombios? ( sys-devel/bin86 sys-devel/dev86 ) )
arm64? ( sys-power/iasl
rombios? ( sys-devel/bin86 sys-devel/dev86 ) )
doc? (
app-text/ghostscript-gpl
app-text/pandoc
$(python_gen_cond_dep '
dev-python/markdown[${PYTHON_USEDEP}]
')
dev-texlive/texlive-latexextra
media-gfx/transfig
)
hvm? ( x11-base/xorg-proto )
qemu? (
app-arch/snappy:=
dev-util/meson
sdl? (
media-libs/libsdl[X]
media-libs/libsdl2[X]
)
)
system-qemu? ( app-emulation/qemu[xen] )
ocaml? ( dev-ml/findlib
dev-lang/ocaml[ocamlopt] )
python? ( >=dev-lang/swig-4.0.0 )"
BDEPEND="dev-lang/perl
sys-devel/bison
sys-devel/gettext"
# hvmloader is used to bootstrap a fully virtualized kernel
# Approved by QA team in bug #144032
QA_WX_LOAD="
usr/libexec/xen/boot/hvmloader
usr/libexec/xen/boot/ovmf.bin
usr/libexec/xen/boot/xen-shim
usr/share/qemu-xen/qemu/hppa-firmware.img
usr/share/qemu-xen/qemu/opensbi-riscv32-generic-fw_dynamic.elf
usr/share/qemu-xen/qemu/opensbi-riscv64-generic-fw_dynamic.elf
usr/share/qemu-xen/qemu/s390-ccw.img
usr/share/qemu-xen/qemu/u-boot.e500
"
QA_EXECSTACK="
usr/share/qemu-xen/qemu/hppa-firmware.img
"
QA_PREBUILT="
usr/libexec/xen/bin/elf2dmp
usr/libexec/xen/bin/ivshmem-client
usr/libexec/xen/bin/ivshmem-server
usr/libexec/xen/bin/qemu-edid
usr/libexec/xen/bin/qemu-img
usr/libexec/xen/bin/qemu-io
usr/libexec/xen/bin/qemu-keymap
usr/libexec/xen/bin/qemu-nbd
usr/libexec/xen/bin/qemu-pr-helper
usr/libexec/xen/bin/qemu-storage-daemon
usr/libexec/xen/bin/qemu-system-i386
usr/libexec/xen/bin/virtfs-proxy-helper
usr/libexec/xen/boot/ovmf.bin
usr/libexec/xen/boot/xen-shim
usr/libexec/xen/libexec/qemu-pr-helper
usr/libexec/xen/libexec/virtfs-proxy-helper
usr/libexec/xen/libexec/virtiofsd
usr/libexec/xen/libexec/xen-bridge-helper
usr/share/qemu-xen/qemu/s390-ccw.img
usr/share/qemu-xen/qemu/s390-netboot.img
usr/share/qemu-xen/qemu/u-boot.e500
"
RESTRICT="test"
pkg_setup() {
python_setup
export "CONFIG_LOMOUNT=y"
#bug 522642, disable compile tools/tests
export "CONFIG_TESTS=n"
if [[ -z ${XEN_TARGET_ARCH} ]] ; then
if use x86 && use amd64; then
die "Confusion! Both x86 and amd64 are set in your use flags!"
elif use x86; then
export XEN_TARGET_ARCH="x86_32"
elif use amd64 ; then
export XEN_TARGET_ARCH="x86_64"
elif use arm; then
export XEN_TARGET_ARCH="arm32"
elif use arm64; then
export XEN_TARGET_ARCH="arm64"
else
die "Unsupported architecture!"
fi
fi
}
src_prepare() {
# move before Gentoo patch, one patch should apply to seabios, to fix gcc-4.5.x build err
mv ../seabios-${SEABIOS_VER} tools/firmware/seabios-dir-remote || die
pushd tools/firmware/ > /dev/null
ln -s seabios-dir-remote seabios-dir || die
popd > /dev/null
if [[ -v XEN_UPSTREAM_PATCHES_DIR ]]; then
eapply "${XEN_UPSTREAM_PATCHES_DIR}"
fi
if [[ -v XEN_GENTOO_PATCHES_DIR ]]; then
eapply "${XEN_GENTOO_PATCHES_DIR}"
fi
# Rename qemu-bridge-helper to xen-bridge-helper to avoid file
# collisions with app-emulation/qemu.
sed -i 's/qemu-bridge-helper/xen-bridge-helper/g' \
tools/qemu-xen/include/net/net.h \
tools/qemu-xen/meson.build \
tools/qemu-xen/qemu-bridge-helper.c \
tools/qemu-xen/qemu-options.hx \
|| die
mv tools/qemu-xen/qemu-bridge-helper.c tools/qemu-xen/xen-bridge-helper.c || die
if use ovmf; then
mv ../edk2-${EDK2_COMMIT} tools/firmware/ovmf-dir-remote || die
rm -r tools/firmware/ovmf-dir-remote/CryptoPkg/Library/OpensslLib/openssl || die
rm -r tools/firmware/ovmf-dir-remote/ArmPkg/Library/ArmSoftFloatLib/berkeley-softfloat-3 || die
rm -r tools/firmware/ovmf-dir-remote/BaseTools/Source/C/BrotliCompress/brotli || die
rm -r tools/firmware/ovmf-dir-remote/MdeModulePkg/Library/BrotliCustomDecompressLib/brotli || die
mv ../openssl-OpenSSL_${EDK2_OPENSSL_VERSION} tools/firmware/ovmf-dir-remote/CryptoPkg/Library/OpensslLib/openssl || die
mv ../berkeley-softfloat-3-${EDK2_SOFTFLOAT_COMMIT} tools/firmware/ovmf-dir-remote/ArmPkg/Library/ArmSoftFloatLib/berkeley-softfloat-3 || die
cp -r ../brotli-${EDK2_BROTLI_COMMIT} tools/firmware/ovmf-dir-remote/BaseTools/Source/C/BrotliCompress/brotli || die
cp -r ../brotli-${EDK2_BROTLI_COMMIT} tools/firmware/ovmf-dir-remote/MdeModulePkg/Library/BrotliCustomDecompressLib/brotli || die
cp tools/firmware/ovmf-makefile tools/firmware/ovmf-dir-remote/Makefile || die
# Bug #816987
pushd tools/firmware/ovmf-dir-remote/BaseTools/Source/C/BrotliCompress/brotli > /dev/null
eapply "${XEN_GENTOO_PATCHES_DIR}/ovmf/${PN}-4.15.1-brotli-gcc11.patch"
popd > /dev/null
pushd tools/firmware/ovmf-dir-remote/MdeModulePkg/Library/BrotliCustomDecompressLib/brotli > /dev/null
eapply "${XEN_GENTOO_PATCHES_DIR}/ovmf/${PN}-4.15.1-brotli-gcc11.patch"
popd > /dev/null
fi
# ipxe
if use ipxe; then
cp "${DISTDIR}/ipxe-git-${IPXE_COMMIT}.tar.gz" tools/firmware/etherboot/ipxe.tar.gz || die
# gcc 11
cp "${XEN_GENTOO_PATCHES_DIR}/ipxe/${PN}-4.15.0-ipxe-gcc11.patch" tools/firmware/etherboot/patches/ipxe-gcc11.patch || die
echo ipxe-gcc11.patch >> tools/firmware/etherboot/patches/series || die
fi
# Fix texi2html build error with new texi2html, qemu.doc.html
sed -i -e "/texi2html -monolithic/s/-number//" tools/qemu-xen-traditional/Makefile || die
# Drop .config, fixes to gcc-4.6
sed -e '/-include $(XEN_ROOT)\/.config/d' -i Config.mk || die "Couldn't drop"
# drop flags
unset CFLAGS
unset LDFLAGS
unset ASFLAGS
unset CPPFLAGS
if ! use pygrub; then
sed -e '/^SUBDIRS-y += pygrub/d' -i tools/Makefile || die
fi
if ! use python; then
sed -e '/^SUBDIRS-y += python$/d' -i tools/Makefile || die
fi
if ! use hvm; then
sed -e '/SUBDIRS-$(CONFIG_X86) += firmware/d' -i tools/Makefile || die
# Bug 351648
elif ! use x86 && ! has x86 $(get_all_abis); then
mkdir -p "${WORKDIR}"/extra-headers/gnu || die
touch "${WORKDIR}"/extra-headers/gnu/stubs-32.h || die
export CPATH="${WORKDIR}"/extra-headers
fi
if use qemu; then
if use sdl; then
sed -i -e "s:\$\$source/configure:\0 --enable-sdl:" \
tools/Makefile || die
else
sed -i -e "s:\${QEMU_ROOT\:\-\.}/configure:\0 --disable-sdl:" \
tools/qemu-xen-traditional/xen-setup || die
sed -i -e "s:\$\$source/configure:\0 --disable-sdl:" \
tools/Makefile || die
fi
else
# Don't bother with qemu, only needed for fully virtualised guests
sed -i '/SUBDIRS-$(CONFIG_QEMU_XEN)/s/^/#/g' tools/Makefile || die
fi
# Reset bash completion dir; Bug 472438
sed -e "s;^BASH_COMPLETION_DIR :=.*;BASH_COMPLETION_DIR := $(get_bashcompdir);" \
-i config/Paths.mk.in || die
# xencommons, Bug #492332, sed lighter weight than patching
sed -e 's:\$QEMU_XEN -xen-domid:test -e "\$QEMU_XEN" \&\& &:' \
-i tools/hotplug/Linux/init.d/xencommons.in || die
# fix bashishm
sed -e '/Usage/s/\$//g' \
-i tools/hotplug/Linux/init.d/xendriverdomain.in || die
# respect multilib, usr/lib/libcacard.so.0.0.0
sed -e "/^libdir=/s/\/lib/\/$(get_libdir)/" \
-i tools/qemu-xen/configure || die
#bug 518136, don't build 32bit exactuable for nomultilib profile
if [[ "${ARCH}" == 'amd64' ]] && ! has_multilib_profile; then
sed -i -e "/x86_emulator/d" tools/tests/Makefile || die
fi
# uncomment lines in xl.conf
sed -e 's:^#autoballoon=:autoballoon=:' \
-e 's:^#lockfile=:lockfile=:' \
-e 's:^#vif.default.script=:vif.default.script=:' \
-i tools/examples/xl.conf || die
# disable capstone (Bug #673474)
sed -e "s:\$\$source/configure:\0 --disable-capstone:" \
-i tools/Makefile || die
# disable glusterfs
sed -e "s:\$\$source/configure:\0 --disable-glusterfs:" \
-i tools/Makefile || die
# disable jpeg automagic
sed -e "s:\$\$source/configure:\0 --disable-vnc-jpeg:" \
-i tools/Makefile || die
# disable png automagic
sed -e "s:\$\$source/configure:\0 --disable-vnc-png:" \
-i tools/Makefile || die
# disable docker (Bug #732970)
sed -e "s:\$\$source/configure:\0 --disable-containers:" \
-i tools/Makefile || die
# disable abi-dumper (Bug #791172)
sed -e 's/$(ABI_DUMPER) /echo /g' \
-i tools/libs/libs.mk || die
# Remove -Werror
find . -type f \( -name Makefile -o -name "*.mk" \) \
-exec sed -i \
-e 's/-Werror //g' \
-e '/^CFLAGS *+= -Werror$/d' \
-e 's/, "-Werror"//' \
{} + || die
default
}
src_configure() {
local myconf=(
--libdir="${EPREFIX}/usr/$(get_libdir)"
--libexecdir="${EPREFIX}/usr/libexec"
--localstatedir="${EPREFIX}/var"
--disable-golang
--disable-werror
--disable-xen
--enable-tools
--enable-docs
$(use_enable api xenapi)
$(use_enable ipxe)
$(usex system-ipxe '--with-system-ipxe=/usr/share/ipxe' '')
$(use_enable ocaml ocamltools)
$(use_enable ovmf)
$(use_enable rombios)
$(use_enable systemd)
--with-xenstored=$(usex ocaml 'oxenstored' 'xenstored')
)
use system-seabios && myconf+=( --with-system-seabios=/usr/share/seabios/bios.bin )
use system-qemu && myconf+=( --with-system-qemu=/usr/bin/qemu-system-x86_64 )
use amd64 && myconf+=( $(use_enable qemu-traditional) )
tc-ld-disable-gold # Bug 669570
econf ${myconf[@]}
}
src_compile() {
local myopt
use debug && myopt="${myopt} debug=y"
use python && myopt="${myopt} XENSTAT_PYTHON_BINDINGS=y"
if test-flag-CC -fno-strict-overflow; then
append-flags -fno-strict-overflow
fi
# bug #845099
if use ipxe; then
local -x NO_WERROR=1
fi
emake \
HOSTCC="$(tc-getBUILD_CC)" \
HOSTCXX="$(tc-getBUILD_CXX)" \
CC="$(tc-getCC)" \
CXX="$(tc-getCXX)" \
LD="$(tc-getLD)" \
AR="$(tc-getAR)" \
OBJDUMP="$(tc-getOBJDUMP)" \
RANLIB="$(tc-getRANLIB)" \
build-tools ${myopt}
if use doc; then
emake -C docs build
else
emake -C docs man-pages
fi
}
src_install() {
# Override auto-detection in the build system, bug #382573
export INITD_DIR=/tmp/init.d
export CONFIG_LEAF_DIR=../tmp/default
# Let the build system compile installed Python modules.
local PYTHONDONTWRITEBYTECODE
export PYTHONDONTWRITEBYTECODE
emake DESTDIR="${ED}" DOCDIR="/usr/share/doc/${PF}" \
XEN_PYTHON_NATIVE_INSTALL=y install-tools
# Created at runtime
rm -rv "${ED}/var/run" || die
# Fix the remaining Python shebangs.
python_fix_shebang "${D}"
# Remove RedHat-specific stuff
rm -rf "${D}"/tmp || die
if use doc; then
emake DESTDIR="${D}" DOCDIR="/usr/share/doc/${PF}" install-docs
dodoc -r docs/{pdf,txt}
else
emake -C docs DESTDIR="${D}" DOCDIR="/usr/share/doc/${PF}" install-man-pages # Bug 668032
fi
dodoc ${DOCS[@]}
newconfd "${FILESDIR}"/xendomains.confd xendomains
newconfd "${FILESDIR}"/xenstored.confd xenstored
newconfd "${FILESDIR}"/xenconsoled.confd xenconsoled
newinitd "${FILESDIR}"/xendomains.initd-r2 xendomains
newinitd "${FILESDIR}"/xenstored.initd-r1 xenstored
newinitd "${FILESDIR}"/xenconsoled.initd xenconsoled
newinitd "${FILESDIR}"/xencommons.initd xencommons
newconfd "${FILESDIR}"/xencommons.confd xencommons
newinitd "${FILESDIR}"/xenqemudev.initd xenqemudev
newconfd "${FILESDIR}"/xenqemudev.confd xenqemudev
newinitd "${FILESDIR}"/xen-watchdog.initd xen-watchdog
if use screen; then
cat "${FILESDIR}"/xendomains-screen.confd >> "${D}"/etc/conf.d/xendomains || die
cp "${FILESDIR}"/xen-consoles.logrotate "${D}"/etc/xen/ || die
keepdir /var/log/xen-consoles
fi
# For -static-libs wrt Bug 384355
if ! use static-libs; then
rm -f "${D}"/usr/$(get_libdir)/*.a "${D}"/usr/$(get_libdir)/ocaml/*/*.a
fi
# for xendomains
keepdir /etc/xen/auto
# Remove files failing QA AFTER emake installs them, avoiding seeking absent files
find "${D}" \( -name openbios-sparc32 -o -name openbios-sparc64 \
-o -name openbios-ppc -o -name palcode-clipper \) -delete || die
keepdir /var/lib/xen/dump
keepdir /var/lib/xen/xenpaging
keepdir /var/lib/xenstored
keepdir /var/log/xen
if use python; then
python_domodule "${S}/tools/libs/stat/bindings/swig/python/xenstat.py"
python_domodule "${S}/tools/libs/stat/bindings/swig/python/_xenstat.so"
fi
python_optimize
readme.gentoo_create_doc
}
pkg_postinst() {
readme.gentoo_print_elog
}

@ -1,6 +1,3 @@
DIST xen-4.15.3.tar.gz 40793144 BLAKE2B 33932d855a0502cfe2768a7c8ae19d7da285d70b4970d96fd703daf0ee24a77ad47a3d1b4bcf5f465aa81aa7eb7f9295bce96302b2149ca208fa662cd966d6af SHA512 c25903cc263891885ec76500488405226c8e025bb461d2bf0d590b9bd2d7ca5c2693de7ecc38b3655bfd6793cc96314826559f14a09cc139de8cfdbeb914cbd3
DIST xen-4.15.4.tar.gz 40820669 BLAKE2B 22edaf817851856c777d02b5211be932c1731bf50fb582545f948c7e8f871937f7c94636496a480642fa7ed8222e12dda091a06638c75b9ee935f3ff9bc2aea0 SHA512 fa6a4991c0699025af163ed117f8d0523c0a482102464615025eb3575d755ffacec5df394e3fe01871cde6028678f654d99f8e3c2533b138765971a2a7994cb8
DIST xen-4.16.2.tar.gz 44995249 BLAKE2B a221d1e4578ab6eb3250754b3b0f36fb30133c1c83246532ebb9648c3d025b3f5132227371b5d3dd82099594f4ee738227480528ee944b8de6231d9c89892d15 SHA512 b6cd036c1073798dffa167ca14c954fbdfb4c0ef99662f7c435e7e5de687d1bde8856ff6bd030d0d2e661bd17ab631551f01b2cc728cad7e70b59aaa6e692783
DIST xen-4.16.3.tar.gz 45003057 BLAKE2B 6092cff33bffed1b6133daf8d3ce53c57204297e66df6ac58266b2da8d5585df62ae718cc8afaad36ebe6dabdce65b9979b0d13b88e60f2b23c01be21ae4db8e SHA512 b8cbd6f95681de5f824ada2d3cbe0653a38514a18df0dafcf811fb255219c7abec96f46217bdb0c83e1119f685da9a6af7194eeaa94f1cc3c892702782133b4f
DIST xen-gentoo-patches-4.16.1-gentoo-patchset-2.tar.bz2 5403 BLAKE2B 7fa3b4aa123b2deed260d02b8d34a35dd205207038edb92569278b25c6fe32e0f0e3857c07755553e047f0eb0d9fe7f8b0816e0f3d7f68aee7929afaf6611dfd SHA512 9e7d25640b24235acf756b031b8b7cee582dded65fe7b94a706c990232e9704d574036c3a9605f285e8e9534578d100a3f38719b27b22775f17ef8f68287997e
DIST xen-upstream-patches-4.15.4-pre-patchset-1.tar.bz2 68066 BLAKE2B ee6aac9aa8988423fd1594fa09c54678ee8d089abfff27913fdbe4f60c1f2a038e06cca5d03924595036bd9ca9be8a7f61ed5d7662e6534b05a45da24c88babd SHA512 65c7c900ca91f7444cdc03fa0902e8d58d68cd755cfa2d16cf1df76b657328e374fec0da3ceb734aefa10cfa874a46de5f731c3827ab4f815b4eabc305ed497f
DIST xen-upstream-patches-4.16.3-pre-patchset-0.tar.bz2 36580 BLAKE2B 7a16b452fda7cf00321c70c239f30fbff72204d5b021aba23e1e08b2d8dee0f1180a18301b5935f4d35dc54533e2e253f047681b837de187a2a174191a168c3c SHA512 5e7328c8cd7ce98cdff47033a76705395419c1322d5212206aa1255d19aeb2fd3d097e71d39137ab97aeab0b9f991e1660b92a6ddb08f02c9407ceaa24aa9ec0

@ -1,183 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{9..10} )
inherit flag-o-matic mount-boot python-any-r1 toolchain-funcs
if [[ ${PV} == *9999 ]]; then
inherit git-r3
EGIT_REPO_URI="git://xenbits.xen.org/xen.git"
SRC_URI=""
else
KEYWORDS="amd64 ~arm -x86"
XEN_PRE_PATCHSET_NUM=1
XEN_GENTOO_PATCHSET_NUM=
XEN_PRE_VERSION_BASE=4.15.3
XEN_BASE_PV="${PV}"
if [[ -n "${XEN_PRE_VERSION_BASE}" ]]; then
XEN_BASE_PV="${XEN_PRE_VERSION_BASE}"
fi
SRC_URI="https://downloads.xenproject.org/release/xen/${XEN_BASE_PV}/xen-${XEN_BASE_PV}.tar.gz"
if [[ -n "${XEN_PRE_PATCHSET_NUM}" ]]; then
XEN_UPSTREAM_PATCHES_TAG="$(ver_cut 1-3)-pre-patchset-${XEN_PRE_PATCHSET_NUM}"
XEN_UPSTREAM_PATCHES_NAME="xen-upstream-patches-${XEN_UPSTREAM_PATCHES_TAG}"
SRC_URI+=" https://gitweb.gentoo.org/proj/xen-upstream-patches.git/snapshot/${XEN_UPSTREAM_PATCHES_NAME}.tar.bz2"
XEN_UPSTREAM_PATCHES_DIR="${WORKDIR}/${XEN_UPSTREAM_PATCHES_NAME}"
fi
if [[ -n "${XEN_GENTOO_PATCHSET_NUM}" ]]; then
XEN_GENTOO_PATCHES_TAG="$(ver_cut 1-3 ${XEN_BASE_PV})-gentoo-patchset-${XEN_GENTOO_PATCHSET_NUM}"
XEN_GENTOO_PATCHES_NAME="xen-gentoo-patches-${XEN_GENTOO_PATCHES_TAG}"
SRC_URI+=" https://gitweb.gentoo.org/proj/xen-gentoo-patches.git/snapshot/${XEN_GENTOO_PATCHES_NAME}.tar.bz2"
XEN_GENTOO_PATCHES_DIR="${WORKDIR}/${XEN_GENTOO_PATCHES_NAME}"
fi
fi
DESCRIPTION="The Xen virtual machine monitor"
HOMEPAGE="https://xenproject.org"
S="${WORKDIR}/xen-$(ver_cut 1-3 ${XEN_BASE_PV})"
LICENSE="GPL-2"
SLOT="0"
IUSE="debug efi flask"
REQUIRED_USE="arm? ( debug )"
DEPEND="${PYTHON_DEPS}
efi? ( >=sys-devel/binutils-2.22[multitarget] )
!efi? ( >=sys-devel/binutils-2.22 )
flask? ( sys-apps/checkpolicy )"
RDEPEND=""
PDEPEND="~app-emulation/xen-tools-${PV}"
# no tests are available for the hypervisor
# prevent the silliness of /usr/lib/debug/usr/lib/debug files
# prevent stripping of the debug info from the /usr/lib/debug/xen-syms
RESTRICT="test splitdebug strip"
# Approved by QA team in bug #144032
QA_WX_LOAD="boot/xen-syms-${PV}"
pkg_setup() {
python-any-r1_pkg_setup
if [[ -z ${XEN_TARGET_ARCH} ]]; then
if use amd64; then
export XEN_TARGET_ARCH="x86_64"
elif use arm; then
export XEN_TARGET_ARCH="arm32"
elif use arm64; then
export XEN_TARGET_ARCH="arm64"
else
die "Unsupported architecture!"
fi
fi
}
src_prepare() {
if [[ -v XEN_UPSTREAM_PATCHES_DIR ]]; then
eapply "${XEN_UPSTREAM_PATCHES_DIR}"
fi
if [[ -v XEN_GENTOO_PATCHES_DIR ]]; then
eapply "${XEN_GENTOO_PATCHES_DIR}"
fi
eapply "${FILESDIR}"/${PN}-4.15-efi.patch
# Enable XSM-FLASK
use flask && eapply "${FILESDIR}"/${PN}-4.15-flask.patch
# Workaround new gcc-11 options
sed -e '/^CFLAGS/s/-Werror//g' -i xen/Makefile || die
# Drop .config
sed -e '/-include $(XEN_ROOT)\/.config/d' -i Config.mk || die "Couldn't drop"
if use efi; then
export EFI_VENDOR="gentoo"
export EFI_MOUNTPOINT="/boot"
fi
default
}
xen_make() {
# Setting clang to either 'y' or 'n' tells Xen's build system
# whether or not clang is used.
local clang=n
if tc-is-clang; then
clang=y
fi
# Send raw LDFLAGS so that --as-needed works
emake \
V=1 \
LDFLAGS="$(raw-ldflags)" \
HOSTCC="$(tc-getBUILD_CC)" \
HOSTCXX="$(tc-getBUILD_CXX)" \
clang="${clang}" \
"$@"
}
src_configure() {
cd xen || die
touch gentoo-config || die
if use arm; then
echo "CONFIG_EARLY_PRINTK=sun7i" >> gentoo-config || die
fi
if use debug; then
cat <<-EOF >> gentoo-config || die
CONFIG_DEBUG=y
CONFIG_CRASH_DEBUG=y
EOF
fi
if use flask; then
echo "CONFIG_XSM=y" >> gentoo-config || die
fi
# remove flags
unset CFLAGS
tc-ld-disable-gold # Bug 700374
xen_make KCONFIG_ALLCONFIG=gentoo-config alldefconfig
}
src_compile() {
xen_make -C xen
}
src_install() {
# The 'make install' doesn't 'mkdir -p' the subdirs
if use efi; then
mkdir -p "${D}"${EFI_MOUNTPOINT}/efi/${EFI_VENDOR} || die
fi
xen_make DESTDIR="${D}" -C xen install
# make install likes to throw in some extra EFI bits if it built
use efi || rm -rf "${D}/usr/$(get_libdir)/efi"
}
pkg_postinst() {
elog "Official Xen Guide:"
elog " https://wiki.gentoo.org/wiki/Xen"
use efi && einfo "The efi executable is installed in /boot/efi/gentoo"
ewarn
ewarn "Xen 4.12+ changed the default scheduler to credit2 which can cause"
ewarn "domU lockups on multi-cpu systems. The legacy credit scheduler seems"
ewarn "to work fine."
ewarn
ewarn "Add sched=credit to xen command line options to use the legacy scheduler."
ewarn
ewarn "https://wiki.gentoo.org/wiki/Xen#Xen_domU_hanging_with_Xen_4.12.2B"
}

@ -1,183 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{9..10} )
inherit flag-o-matic mount-boot python-any-r1 toolchain-funcs
if [[ ${PV} == *9999 ]]; then
inherit git-r3
EGIT_REPO_URI="git://xenbits.xen.org/xen.git"
SRC_URI=""
else
KEYWORDS="~amd64 ~arm -x86"
XEN_PRE_PATCHSET_NUM=1
XEN_GENTOO_PATCHSET_NUM=
XEN_PRE_VERSION_BASE=4.15.3
XEN_BASE_PV="${PV}"
if [[ -n "${XEN_PRE_VERSION_BASE}" ]]; then
XEN_BASE_PV="${XEN_PRE_VERSION_BASE}"
fi
SRC_URI="https://downloads.xenproject.org/release/xen/${XEN_BASE_PV}/xen-${XEN_BASE_PV}.tar.gz"
if [[ -n "${XEN_PRE_PATCHSET_NUM}" ]]; then
XEN_UPSTREAM_PATCHES_TAG="$(ver_cut 1-3)-pre-patchset-${XEN_PRE_PATCHSET_NUM}"
XEN_UPSTREAM_PATCHES_NAME="xen-upstream-patches-${XEN_UPSTREAM_PATCHES_TAG}"
SRC_URI+=" https://gitweb.gentoo.org/proj/xen-upstream-patches.git/snapshot/${XEN_UPSTREAM_PATCHES_NAME}.tar.bz2"
XEN_UPSTREAM_PATCHES_DIR="${WORKDIR}/${XEN_UPSTREAM_PATCHES_NAME}"
fi
if [[ -n "${XEN_GENTOO_PATCHSET_NUM}" ]]; then
XEN_GENTOO_PATCHES_TAG="$(ver_cut 1-3 ${XEN_BASE_PV})-gentoo-patchset-${XEN_GENTOO_PATCHSET_NUM}"
XEN_GENTOO_PATCHES_NAME="xen-gentoo-patches-${XEN_GENTOO_PATCHES_TAG}"
SRC_URI+=" https://gitweb.gentoo.org/proj/xen-gentoo-patches.git/snapshot/${XEN_GENTOO_PATCHES_NAME}.tar.bz2"
XEN_GENTOO_PATCHES_DIR="${WORKDIR}/${XEN_GENTOO_PATCHES_NAME}"
fi
fi
DESCRIPTION="The Xen virtual machine monitor"
HOMEPAGE="https://xenproject.org"
S="${WORKDIR}/xen-$(ver_cut 1-3 ${XEN_BASE_PV})"
LICENSE="GPL-2"
SLOT="0"
IUSE="debug efi flask"
REQUIRED_USE="arm? ( debug )"
DEPEND="${PYTHON_DEPS}
efi? ( >=sys-devel/binutils-2.22[multitarget] )
!efi? ( >=sys-devel/binutils-2.22 )
flask? ( sys-apps/checkpolicy )"
RDEPEND=""
PDEPEND="~app-emulation/xen-tools-${PV}"
# no tests are available for the hypervisor
# prevent the silliness of /usr/lib/debug/usr/lib/debug files
# prevent stripping of the debug info from the /usr/lib/debug/xen-syms
RESTRICT="test splitdebug strip"
# Approved by QA team in bug #144032
QA_WX_LOAD="boot/xen-syms-${PV}"
pkg_setup() {
python-any-r1_pkg_setup
if [[ -z ${XEN_TARGET_ARCH} ]]; then
if use amd64; then
export XEN_TARGET_ARCH="x86_64"
elif use arm; then
export XEN_TARGET_ARCH="arm32"
elif use arm64; then
export XEN_TARGET_ARCH="arm64"
else
die "Unsupported architecture!"
fi
fi
}
src_prepare() {
if [[ -v XEN_UPSTREAM_PATCHES_DIR ]]; then
eapply "${XEN_UPSTREAM_PATCHES_DIR}"
fi
if [[ -v XEN_GENTOO_PATCHES_DIR ]]; then
eapply "${XEN_GENTOO_PATCHES_DIR}"
fi
eapply "${FILESDIR}"/${PN}-4.15-efi.patch
# Enable XSM-FLASK
use flask && eapply "${FILESDIR}"/${PN}-4.15-flask.patch
# Workaround new gcc-11 options
sed -e '/^CFLAGS/s/-Werror//g' -i xen/Makefile || die
# Drop .config
sed -e '/-include $(XEN_ROOT)\/.config/d' -i Config.mk || die "Couldn't drop"
if use efi; then
export EFI_VENDOR="gentoo"
export EFI_MOUNTPOINT="/boot"
fi
default
}
xen_make() {
# Setting clang to either 'y' or 'n' tells Xen's build system
# whether or not clang is used.
local clang=n
if tc-is-clang; then
clang=y
fi
# Send raw LDFLAGS so that --as-needed works
emake \
V=1 \
LDFLAGS="$(raw-ldflags)" \
HOSTCC="$(tc-getBUILD_CC)" \
HOSTCXX="$(tc-getBUILD_CXX)" \
clang="${clang}" \
"$@"
}
src_configure() {
cd xen || die
touch gentoo-config || die
if use arm; then
echo "CONFIG_EARLY_PRINTK=sun7i" >> gentoo-config || die
fi
if use debug; then
cat <<-EOF >> gentoo-config || die
CONFIG_DEBUG=y
CONFIG_CRASH_DEBUG=y
EOF
fi
if use flask; then
echo "CONFIG_XSM=y" >> gentoo-config || die
fi
# remove flags
unset CFLAGS
tc-ld-disable-gold # Bug 700374
xen_make KCONFIG_ALLCONFIG=gentoo-config alldefconfig
}
src_compile() {
xen_make -C xen
}
src_install() {
# The 'make install' doesn't 'mkdir -p' the subdirs
if use efi; then
mkdir -p "${D}"${EFI_MOUNTPOINT}/efi/${EFI_VENDOR} || die
fi
xen_make DESTDIR="${D}" -C xen install
# make install likes to throw in some extra EFI bits if it built
use efi || rm -rf "${D}/usr/$(get_libdir)/efi"
}
pkg_postinst() {
elog "Official Xen Guide:"
elog " https://wiki.gentoo.org/wiki/Xen"
use efi && einfo "The efi executable is installed in /boot/efi/gentoo"
ewarn
ewarn "Xen 4.12+ changed the default scheduler to credit2 which can cause"
ewarn "domU lockups on multi-cpu systems. The legacy credit scheduler seems"
ewarn "to work fine."
ewarn
ewarn "Add sched=credit to xen command line options to use the legacy scheduler."
ewarn
ewarn "https://wiki.gentoo.org/wiki/Xen#Xen_domU_hanging_with_Xen_4.12.2B"
}

@ -0,0 +1,174 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{9..11} )
inherit flag-o-matic mount-boot python-any-r1 toolchain-funcs
if [[ ${PV} == *9999 ]]; then
inherit git-r3
EGIT_REPO_URI="git://xenbits.xen.org/xen.git"
SRC_URI=""
else
KEYWORDS="~amd64 ~arm -x86"
XEN_GENTOO_PATCHSET_NUM=2
XEN_GENTOO_PATCHSET_BASE=4.16.1
XEN_PRE_PATCHSET_NUM=
XEN_PRE_VERSION_BASE=
XEN_BASE_PV="${PV}"
if [[ -n "${XEN_PRE_VERSION_BASE}" ]]; then
XEN_BASE_PV="${XEN_PRE_VERSION_BASE}"
fi
SRC_URI="https://downloads.xenproject.org/release/xen/${XEN_BASE_PV}/xen-${XEN_BASE_PV}.tar.gz"
if [[ -n "${XEN_PRE_PATCHSET_NUM}" ]]; then
XEN_UPSTREAM_PATCHES_TAG="$(ver_cut 1-3)-pre-patchset-${XEN_PRE_PATCHSET_NUM}"
XEN_UPSTREAM_PATCHES_NAME="xen-upstream-patches-${XEN_UPSTREAM_PATCHES_TAG}"
SRC_URI+=" https://gitweb.gentoo.org/proj/xen-upstream-patches.git/snapshot/${XEN_UPSTREAM_PATCHES_NAME}.tar.bz2"
XEN_UPSTREAM_PATCHES_DIR="${WORKDIR}/${XEN_UPSTREAM_PATCHES_NAME}"
fi
if [[ -n "${XEN_GENTOO_PATCHSET_NUM}" ]]; then
XEN_GENTOO_PATCHES_TAG="$(ver_cut 1-3 ${XEN_GENTOO_PATCHSET_BASE})-gentoo-patchset-${XEN_GENTOO_PATCHSET_NUM}"
XEN_GENTOO_PATCHES_NAME="xen-gentoo-patches-${XEN_GENTOO_PATCHES_TAG}"
SRC_URI+=" https://gitweb.gentoo.org/proj/xen-gentoo-patches.git/snapshot/${XEN_GENTOO_PATCHES_NAME}.tar.bz2"
XEN_GENTOO_PATCHES_DIR="${WORKDIR}/${XEN_GENTOO_PATCHES_NAME}"
fi
fi
DESCRIPTION="The Xen virtual machine monitor"
HOMEPAGE="https://xenproject.org"
S="${WORKDIR}/xen-$(ver_cut 1-3 ${XEN_BASE_PV})"
LICENSE="GPL-2"
SLOT="0"
IUSE="+boot-symlinks debug efi flask"
REQUIRED_USE="arm? ( debug )"
DEPEND="${PYTHON_DEPS}
efi? ( >=sys-devel/binutils-2.22[multitarget] )
!efi? ( >=sys-devel/binutils-2.22 )
flask? ( sys-apps/checkpolicy )"
RDEPEND=""
PDEPEND="~app-emulation/xen-tools-${PV}"
# no tests are available for the hypervisor
# prevent the silliness of /usr/lib/debug/usr/lib/debug files
# prevent stripping of the debug info from the /usr/lib/debug/xen-syms
RESTRICT="test splitdebug strip"
# Approved by QA team in bug #144032
QA_WX_LOAD="boot/xen-syms-${PV}"
pkg_setup() {
python-any-r1_pkg_setup
if [[ -z ${XEN_TARGET_ARCH} ]]; then
if use amd64; then
export XEN_TARGET_ARCH="x86_64"
elif use arm; then
export XEN_TARGET_ARCH="arm32"
elif use arm64; then
export XEN_TARGET_ARCH="arm64"
else
die "Unsupported architecture!"
fi
fi
}
src_prepare() {
if [[ -v XEN_UPSTREAM_PATCHES_DIR ]]; then
eapply "${XEN_UPSTREAM_PATCHES_DIR}"
fi
if [[ -v XEN_GENTOO_PATCHES_DIR ]]; then
eapply "${XEN_GENTOO_PATCHES_DIR}"
fi
# Symlinks do not work on fat32 volumes # 829765
if ! use boot-symlinks || use efi; then
eapply "${XEN_GENTOO_PATCHES_DIR}"/no-boot-symlinks/${PN}-4.16-no-symlinks.patch
fi
# Workaround new gcc-11 options
sed -e '/^CFLAGS/s/-Werror//g' -i xen/Makefile || die
# Drop .config
sed -e '/-include $(XEN_ROOT)\/.config/d' -i Config.mk || die "Couldn't drop"
if use efi; then
export EFI_VENDOR="gentoo"
export EFI_MOUNTPOINT="/boot"
fi
default
}
xen_make() {
# Setting clang to either 'y' or 'n' tells Xen's build system
# whether or not clang is used.
local clang=n
if tc-is-clang; then
clang=y
fi
# Send raw LDFLAGS so that --as-needed works
emake \
V=1 \
LDFLAGS="$(raw-ldflags)" \
HOSTCC="$(tc-getBUILD_CC)" \
HOSTCXX="$(tc-getBUILD_CXX)" \
CC="$(tc-getCC)" \
CXX="$(tc-getCXX)" \
LD="$(tc-getLD)" \
AR="$(tc-getAR)" \
OBJDUMP="$(tc-getOBJDUMP)" \
RANLIB="$(tc-getRANLIB)" \
clang="${clang}" \
"$@"
}
src_configure() {
cd xen || die
touch gentoo-config || die
if use arm; then
echo "CONFIG_EARLY_PRINTK=sun7i" >> gentoo-config || die
fi
if use debug; then
cat <<-EOF >> gentoo-config || die
CONFIG_DEBUG=y
CONFIG_CRASH_DEBUG=y
EOF
fi
if use flask; then
echo "CONFIG_XSM=y" >> gentoo-config || die
fi
# remove flags
unset CFLAGS
tc-ld-disable-gold # Bug 700374
xen_make KCONFIG_ALLCONFIG=gentoo-config alldefconfig
}
src_compile() {
xen_make -C xen
}
src_install() {
# The 'make install' doesn't 'mkdir -p' the subdirs
if use efi; then
mkdir -p "${D}"${EFI_MOUNTPOINT}/efi/${EFI_VENDOR} || die
fi
xen_make DESTDIR="${D}" -C xen install
# make install likes to throw in some extra EFI bits if it built
use efi || rm -rf "${D}/usr/$(get_libdir)/efi"
}

@ -1,174 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{9..11} )
inherit flag-o-matic mount-boot python-any-r1 toolchain-funcs
if [[ ${PV} == *9999 ]]; then
inherit git-r3
EGIT_REPO_URI="git://xenbits.xen.org/xen.git"
SRC_URI=""
else
KEYWORDS="~amd64 ~arm -x86"
XEN_GENTOO_PATCHSET_NUM=2
XEN_GENTOO_PATCHSET_BASE=4.16.1
XEN_PRE_PATCHSET_NUM=0
XEN_PRE_VERSION_BASE=4.16.2
XEN_BASE_PV="${PV}"
if [[ -n "${XEN_PRE_VERSION_BASE}" ]]; then
XEN_BASE_PV="${XEN_PRE_VERSION_BASE}"
fi
SRC_URI="https://downloads.xenproject.org/release/xen/${XEN_BASE_PV}/xen-${XEN_BASE_PV}.tar.gz"
if [[ -n "${XEN_PRE_PATCHSET_NUM}" ]]; then
XEN_UPSTREAM_PATCHES_TAG="$(ver_cut 1-3)-pre-patchset-${XEN_PRE_PATCHSET_NUM}"
XEN_UPSTREAM_PATCHES_NAME="xen-upstream-patches-${XEN_UPSTREAM_PATCHES_TAG}"
SRC_URI+=" https://gitweb.gentoo.org/proj/xen-upstream-patches.git/snapshot/${XEN_UPSTREAM_PATCHES_NAME}.tar.bz2"
XEN_UPSTREAM_PATCHES_DIR="${WORKDIR}/${XEN_UPSTREAM_PATCHES_NAME}"
fi
if [[ -n "${XEN_GENTOO_PATCHSET_NUM}" ]]; then
XEN_GENTOO_PATCHES_TAG="$(ver_cut 1-3 ${XEN_GENTOO_PATCHSET_BASE})-gentoo-patchset-${XEN_GENTOO_PATCHSET_NUM}"
XEN_GENTOO_PATCHES_NAME="xen-gentoo-patches-${XEN_GENTOO_PATCHES_TAG}"
SRC_URI+=" https://gitweb.gentoo.org/proj/xen-gentoo-patches.git/snapshot/${XEN_GENTOO_PATCHES_NAME}.tar.bz2"
XEN_GENTOO_PATCHES_DIR="${WORKDIR}/${XEN_GENTOO_PATCHES_NAME}"
fi
fi
DESCRIPTION="The Xen virtual machine monitor"
HOMEPAGE="https://xenproject.org"
S="${WORKDIR}/xen-$(ver_cut 1-3 ${XEN_BASE_PV})"
LICENSE="GPL-2"
SLOT="0"
IUSE="+boot-symlinks debug efi flask"
REQUIRED_USE="arm? ( debug )"
DEPEND="${PYTHON_DEPS}
efi? ( >=sys-devel/binutils-2.22[multitarget] )
!efi? ( >=sys-devel/binutils-2.22 )
flask? ( sys-apps/checkpolicy )"
RDEPEND=""
PDEPEND="~app-emulation/xen-tools-${PV}"
# no tests are available for the hypervisor
# prevent the silliness of /usr/lib/debug/usr/lib/debug files
# prevent stripping of the debug info from the /usr/lib/debug/xen-syms
RESTRICT="test splitdebug strip"
# Approved by QA team in bug #144032
QA_WX_LOAD="boot/xen-syms-${PV}"
pkg_setup() {
python-any-r1_pkg_setup
if [[ -z ${XEN_TARGET_ARCH} ]]; then
if use amd64; then
export XEN_TARGET_ARCH="x86_64"
elif use arm; then
export XEN_TARGET_ARCH="arm32"
elif use arm64; then
export XEN_TARGET_ARCH="arm64"
else
die "Unsupported architecture!"
fi
fi
}
src_prepare() {
if [[ -v XEN_UPSTREAM_PATCHES_DIR ]]; then
eapply "${XEN_UPSTREAM_PATCHES_DIR}"
fi
if [[ -v XEN_GENTOO_PATCHES_DIR ]]; then
eapply "${XEN_GENTOO_PATCHES_DIR}"
fi
# Symlinks do not work on fat32 volumes # 829765
if ! use boot-symlinks || use efi; then
eapply "${XEN_GENTOO_PATCHES_DIR}"/no-boot-symlinks/${PN}-4.16-no-symlinks.patch
fi
# Workaround new gcc-11 options
sed -e '/^CFLAGS/s/-Werror//g' -i xen/Makefile || die
# Drop .config
sed -e '/-include $(XEN_ROOT)\/.config/d' -i Config.mk || die "Couldn't drop"
if use efi; then
export EFI_VENDOR="gentoo"
export EFI_MOUNTPOINT="/boot"
fi
default
}
xen_make() {
# Setting clang to either 'y' or 'n' tells Xen's build system
# whether or not clang is used.
local clang=n
if tc-is-clang; then
clang=y
fi
# Send raw LDFLAGS so that --as-needed works
emake \
V=1 \
LDFLAGS="$(raw-ldflags)" \
HOSTCC="$(tc-getBUILD_CC)" \
HOSTCXX="$(tc-getBUILD_CXX)" \
CC="$(tc-getCC)" \
CXX="$(tc-getCXX)" \
LD="$(tc-getLD)" \
AR="$(tc-getAR)" \
OBJDUMP="$(tc-getOBJDUMP)" \
RANLIB="$(tc-getRANLIB)" \
clang="${clang}" \
"$@"
}
src_configure() {
cd xen || die
touch gentoo-config || die
if use arm; then
echo "CONFIG_EARLY_PRINTK=sun7i" >> gentoo-config || die
fi
if use debug; then
cat <<-EOF >> gentoo-config || die
CONFIG_DEBUG=y
CONFIG_CRASH_DEBUG=y
EOF
fi
if use flask; then
echo "CONFIG_XSM=y" >> gentoo-config || die
fi
# remove flags
unset CFLAGS
tc-ld-disable-gold # Bug 700374
xen_make KCONFIG_ALLCONFIG=gentoo-config alldefconfig
}
src_compile() {
xen_make -C xen
}
src_install() {
# The 'make install' doesn't 'mkdir -p' the subdirs
if use efi; then
mkdir -p "${D}"${EFI_MOUNTPOINT}/efi/${EFI_VENDOR} || die
fi
xen_make DESTDIR="${D}" -C xen install
# make install likes to throw in some extra EFI bits if it built
use efi || rm -rf "${D}/usr/$(get_libdir)/efi"
}

@ -1,174 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{9..11} )
inherit flag-o-matic mount-boot python-any-r1 toolchain-funcs
if [[ ${PV} == *9999 ]]; then
inherit git-r3
EGIT_REPO_URI="git://xenbits.xen.org/xen.git"
SRC_URI=""
else
KEYWORDS="~amd64 ~arm -x86"
XEN_GENTOO_PATCHSET_NUM=2
XEN_GENTOO_PATCHSET_BASE=4.16.1
XEN_PRE_PATCHSET_NUM=0
XEN_PRE_VERSION_BASE=4.16.2
XEN_BASE_PV="${PV}"
if [[ -n "${XEN_PRE_VERSION_BASE}" ]]; then
XEN_BASE_PV="${XEN_PRE_VERSION_BASE}"
fi
SRC_URI="https://downloads.xenproject.org/release/xen/${XEN_BASE_PV}/xen-${XEN_BASE_PV}.tar.gz"
if [[ -n "${XEN_PRE_PATCHSET_NUM}" ]]; then
XEN_UPSTREAM_PATCHES_TAG="$(ver_cut 1-3)-pre-patchset-${XEN_PRE_PATCHSET_NUM}"
XEN_UPSTREAM_PATCHES_NAME="xen-upstream-patches-${XEN_UPSTREAM_PATCHES_TAG}"
SRC_URI+=" https://gitweb.gentoo.org/proj/xen-upstream-patches.git/snapshot/${XEN_UPSTREAM_PATCHES_NAME}.tar.bz2"
XEN_UPSTREAM_PATCHES_DIR="${WORKDIR}/${XEN_UPSTREAM_PATCHES_NAME}"
fi
if [[ -n "${XEN_GENTOO_PATCHSET_NUM}" ]]; then
XEN_GENTOO_PATCHES_TAG="$(ver_cut 1-3 ${XEN_GENTOO_PATCHSET_BASE})-gentoo-patchset-${XEN_GENTOO_PATCHSET_NUM}"
XEN_GENTOO_PATCHES_NAME="xen-gentoo-patches-${XEN_GENTOO_PATCHES_TAG}"
SRC_URI+=" https://gitweb.gentoo.org/proj/xen-gentoo-patches.git/snapshot/${XEN_GENTOO_PATCHES_NAME}.tar.bz2"
XEN_GENTOO_PATCHES_DIR="${WORKDIR}/${XEN_GENTOO_PATCHES_NAME}"
fi
fi
DESCRIPTION="The Xen virtual machine monitor"
HOMEPAGE="https://xenproject.org"
S="${WORKDIR}/xen-$(ver_cut 1-3 ${XEN_BASE_PV})"
LICENSE="GPL-2"
SLOT="0"
IUSE="+boot-symlinks debug efi flask"
REQUIRED_USE="arm? ( debug )"
DEPEND="${PYTHON_DEPS}
efi? ( >=sys-devel/binutils-2.22[multitarget] )
!efi? ( >=sys-devel/binutils-2.22 )
flask? ( sys-apps/checkpolicy )"
RDEPEND=""
PDEPEND="~app-emulation/xen-tools-${PV}"
# no tests are available for the hypervisor
# prevent the silliness of /usr/lib/debug/usr/lib/debug files
# prevent stripping of the debug info from the /usr/lib/debug/xen-syms
RESTRICT="test splitdebug strip"
# Approved by QA team in bug #144032
QA_WX_LOAD="boot/xen-syms-${PV}"
pkg_setup() {
python-any-r1_pkg_setup
if [[ -z ${XEN_TARGET_ARCH} ]]; then
if use amd64; then
export XEN_TARGET_ARCH="x86_64"
elif use arm; then
export XEN_TARGET_ARCH="arm32"
elif use arm64; then
export XEN_TARGET_ARCH="arm64"
else
die "Unsupported architecture!"
fi
fi
}
src_prepare() {
if [[ -v XEN_UPSTREAM_PATCHES_DIR ]]; then
eapply "${XEN_UPSTREAM_PATCHES_DIR}"
fi
if [[ -v XEN_GENTOO_PATCHES_DIR ]]; then
eapply "${XEN_GENTOO_PATCHES_DIR}"
fi
# Symlinks do not work on fat32 volumes # 829765
if ! use boot-symlinks || use efi; then
eapply "${XEN_GENTOO_PATCHES_DIR}"/no-boot-symlinks/${PN}-4.16-no-symlinks.patch
fi
# Workaround new gcc-11 options
sed -e '/^CFLAGS/s/-Werror//g' -i xen/Makefile || die
# Drop .config
sed -e '/-include $(XEN_ROOT)\/.config/d' -i Config.mk || die "Couldn't drop"
if use efi; then
export EFI_VENDOR="gentoo"
export EFI_MOUNTPOINT="/boot"
fi
default
}
xen_make() {
# Setting clang to either 'y' or 'n' tells Xen's build system
# whether or not clang is used.
local clang=n
if tc-is-clang; then
clang=y
fi
# Send raw LDFLAGS so that --as-needed works
emake \
V=1 \
LDFLAGS="$(raw-ldflags)" \
HOSTCC="$(tc-getBUILD_CC)" \
HOSTCXX="$(tc-getBUILD_CXX)" \
CC="$(tc-getCC)" \
CXX="$(tc-getCXX)" \
LD="$(tc-getLD)" \
AR="$(tc-getAR)" \
OBJDUMP="$(tc-getOBJDUMP)" \
RANLIB="$(tc-getRANLIB)" \
clang="${clang}" \
"$@"
}
src_configure() {
cd xen || die
touch gentoo-config || die
if use arm; then
echo "CONFIG_EARLY_PRINTK=sun7i" >> gentoo-config || die
fi
if use debug; then
cat <<-EOF >> gentoo-config || die
CONFIG_DEBUG=y
CONFIG_CRASH_DEBUG=y
EOF
fi
if use flask; then
echo "CONFIG_XSM=y" >> gentoo-config || die
fi
# remove flags
unset CFLAGS
tc-ld-disable-gold # Bug 700374
xen_make KCONFIG_ALLCONFIG=gentoo-config alldefconfig
}
src_compile() {
xen_make -C xen
}
src_install() {
# The 'make install' doesn't 'mkdir -p' the subdirs
if use efi; then
mkdir -p "${D}"${EFI_MOUNTPOINT}/efi/${EFI_VENDOR} || die
fi
xen_make DESTDIR="${D}" -C xen install
# make install likes to throw in some extra EFI bits if it built
use efi || rm -rf "${D}/usr/$(get_libdir)/efi"
}

Binary file not shown.

@ -1,23 +0,0 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
DESCRIPTION="Manage /usr/bin/pinentry symlink"
HOMEPAGE="https://www.gentoo.org/proj/en/eselect/"
SRC_URI=""
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~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=""
RDEPEND=">=app-eselect/eselect-lib-bin-symlink-0.1.1"
S="${FILESDIR}"
src_install() {
default
insinto /usr/share/eselect/modules
newins pinentry.eselect-${PV} pinentry.eselect
}

@ -0,0 +1,21 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DESCRIPTION="Manage /usr/bin/pinentry symlink"
HOMEPAGE="https://www.gentoo.org/proj/en/eselect/"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~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"
RDEPEND=">=app-eselect/eselect-lib-bin-symlink-0.1.1"
S="${FILESDIR}"
src_install() {
default
insinto /usr/share/eselect/modules
newins pinentry.eselect-${PV} pinentry.eselect
}

@ -1,12 +0,0 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
DESCRIPTION="Manage /usr/bin/pinentry implementation"
MAINTAINER="zlogene@gentoo.org"
VERSION="0.7.1"
SYMLINK_PATH=/usr/bin/pinentry
SYMLINK_TARGETS=( pinentry-gnome3 pinentry-qt5 pinentry-curses pinentry-tty )
SYMLINK_DESCRIPTION='pinentry binary'
inherit bin-symlink

@ -1,8 +1,8 @@
# Copyright 1999-2021 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
DESCRIPTION="Manage /usr/bin/pinentry implementation"
MAINTAINER="zlogene@gentoo.org"
MAINTAINER="maintainer-needed@gentoo.org"
VERSION="0.7.2"
SYMLINK_PATH=/usr/bin/pinentry

Binary file not shown.

@ -1 +1,2 @@
DIST tuxedo-control-center_1.1.4.rpm 86231740 BLAKE2B be8b7d7c6de05601acd90a89b3e6bb89c5e251a94a18c7f1021e88797fbc1fc9c580545ca3d86e1ebf11f689d2454d4b6eac1736be0a31eabf28668d0ca0b32c SHA512 80e0c0f8ba81b8fe7bee2ec86b13a5f50c2a174b4260b7922a58df821a0b2ae89cd40c87e41c48de0a9e24a56ec1ad5123a664fc94123b95c05e61801db67072
DIST tuxedo-control-center_1.2.4.rpm 87792476 BLAKE2B 1d825b457be311da9022147eea8d86e17cc61c2c7decb5c334ad0f1cf44e7c0affe8026a650bcf6325fb21381fb4a17c3825a37c3815b489b059ea34b97f1794 SHA512 ac887b6681e6c56cd45f2c6f59dfb250c95f2a2ccdf1521c51126243461d680a7e7399a835672f1adf0512879fe7d69c8c7a3ca0e4ab217c3b617bfe41a7951d

@ -0,0 +1,80 @@
# Copyright 2021-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit rpm systemd xdg-utils
MY_PN="${PN/-bin/}"
DESCRIPTION="Tool to control performance, energy, fan and comfort settings on TUXEDO laptops"
HOMEPAGE="https://github.com/tuxedocomputers/tuxedo-control-center"
SRC_URI="https://rpm.tuxedocomputers.com/opensuse/15.4/x86_64/${MY_PN}_${PV}.rpm"
LICENSE="GPL-3"
SLOT="0"
KEYWORDS="-* ~amd64"
RESTRICT="strip splitdebug"
DEPEND=">=app-laptop/tuxedo-keyboard-3.1.3"
RDEPEND="${DEPEND}"
# See bug #827729
BDEPEND="app-arch/xz-utils[extra-filters]"
S="${WORKDIR}"
src_prepare() {
default
rm -rf usr/lib || die "could not remove usr/lib"
mkdir files || die "could not create files dir"
}
src_install() {
insinto /
doins -r usr opt
find . -type f -perm -a=x | while read f; do
fperms 0755 "${f/./}"
done
dosym ../../opt/tuxedo-control-center/tuxedo-control-center /usr/bin/tuxedo-control-center
insinto /usr/share/dbus-1/system.d/
doins opt/tuxedo-control-center/resources/dist/tuxedo-control-center/data/dist-data/com.tuxedocomputers.tccd.conf
insinto /usr/share/polkit-1/actions
doins opt/tuxedo-control-center/resources/dist/tuxedo-control-center/data/dist-data/com.tuxedocomputers.tccd.policy
systemd_dounit opt/tuxedo-control-center/resources/dist/tuxedo-control-center/data/dist-data/tccd.service
systemd_dounit opt/tuxedo-control-center/resources/dist/tuxedo-control-center/data/dist-data/tccd-sleep.service
newinitd "${FILESDIR}/tccd.initd" tccd
}
pkg_config() {
ebegin "Reloading systemd"
systemctl daemon-reload
eend $?
ebegin "Enabling and starting tccd.service"
systemctl enable --now tccd
eend $?
ebegin "Enabling and starting tccd-sleep.service"
systemctl enable --now tccd-sleep
eend $?
}
pkg_postinst() {
xdg_desktop_database_update
xdg_icon_cache_update
elog
elog "You need to enable tccd and tccd-sleep service before running tuxedo-control-center"
elog
elog "For your convenience, if you use systemd, you may just call:"
elog " emerge --config =app-laptop/${PF}"
elog
}
pkg_postrm() {
xdg_desktop_database_update
xdg_icon_cache_update
}

Binary file not shown.

@ -1 +1,2 @@
DIST mc-4.8.28.tar.xz 2333072 BLAKE2B f4218e6c166df85b7b3736f0fd1414c9507c72074f06001f12b114ce6c6fbbf3688ab850aa70f5063eb3920736f878e113eb39a5d261ccfc3ffa9dab473a8436 SHA512 ca3b3a57281e9387cb52bf1fcfc3f39a4d5f438aafc256dc492c192678824f67c983a852c759664efc5bc6d0de471c9b3929834f8301f6302ca1ebeee513fdfd
DIST mc-4.8.29.tar.xz 2368164 BLAKE2B 0ecddf33b4b7b32918484bc7efe15ef1c9dda094814c85ceabf1b4bd9343507a33932b8cd050fdae2e683f9815ab6dd802ff8eb8e2215c6264be073bc5ac7e4d SHA512 c7e219eda34197d0294748cf5fd1a5dcfedfc17c20cfcf94c4dad5170f87095845f4fc0065e2868342125039c13cc3ba617804df74186816828e93ed71c1e9a3

@ -0,0 +1,11 @@
--- a/misc/ext.d/video.sh
+++ b/misc/ext.d/video.sh
@@ -19,7 +19,7 @@
elif which mpv_identify.sh >/dev/null 2>&1; then
mpv_identify.sh "${MC_EXT_FILENAME}"
else
- echo "Please install either mplayer or mpv to get information for this file"
+ echo "Please install either mplayer or mpv[tools] to get information for this file"
fi
;;
esac

@ -0,0 +1,126 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit autotools flag-o-matic
MY_P="${P/_/-}"
SRC_URI="http://ftp.midnight-commander.org/${MY_P}.tar.xz"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x86-solaris"
DESCRIPTION="GNU Midnight Commander is a text based file manager"
HOMEPAGE="https://midnight-commander.org"
LICENSE="GPL-3"
SLOT="0"
IUSE="+edit gpm nls sftp slang spell test unicode X"
REQUIRED_USE="spell? ( edit )"
DEPEND="
>=dev-libs/glib-2.30.0:2
gpm? ( sys-libs/gpm )
kernel_linux? ( sys-fs/e2fsprogs[tools(+)] )
sftp? ( net-libs/libssh2 )
slang? ( >=sys-libs/slang-2 )
!slang? ( sys-libs/ncurses:=[unicode(+)?] )
spell? ( app-text/aspell )
X? (
x11-libs/libX11
x11-libs/libICE
x11-libs/libXau
x11-libs/libXdmcp
x11-libs/libSM
)
"
RDEPEND="${DEPEND}
spell? ( app-dicts/aspell-en )"
BDEPEND="
app-arch/xz-utils
virtual/pkgconfig
nls? ( sys-devel/gettext )
test? ( dev-libs/check )
"
RESTRICT="!test? ( test )"
S="${WORKDIR}/${MY_P}"
PATCHES=(
"${FILESDIR}"/${PN}-4.8.26-ncurses-mouse.patch
"${FILESDIR}"/${PN}-4.8.29-gentoo-tools.patch
)
pkg_pretend() {
if use slang && use unicode ; then
ewarn "\"unicode\" USE flag only takes effect when the \"slang\" USE flag is disabled."
fi
}
src_prepare() {
default
# patch touches configure.ac
eautoreconf
}
src_configure() {
[[ ${CHOST} == *-solaris* ]] && append-ldflags "-lnsl -lsocket"
local myeconfargs=(
--enable-charset
--enable-vfs
--with-screen=$(usex slang 'slang' "ncurses$(usex unicode 'w' '')")
$(use_enable kernel_linux vfs-undelfs)
# Today mclib does not expose any headers and is linked to
# single 'mc' binary. Thus there is no advantage of having
# a library. Let's avoid shared library altogether
# as it also conflicts with sci-libs/mc: bug #685938
--disable-mclib
$(use_enable nls)
$(use_enable sftp vfs-sftp)
$(use_enable spell aspell)
$(use_enable test tests)
$(use_with gpm gpm-mouse)
$(use_with X x)
$(use_with edit internal-edit)
)
econf "${myeconfargs[@]}"
}
src_test() {
# Bug #759466
if [[ ${EUID} == 0 ]] ; then
ewarn "You are emerging ${PN} as root with 'userpriv' disabled."
ewarn "Expect some test failures, or emerge with 'FEATURES=userpriv'!"
fi
# CK_FORK=no to avoid using fork() in check library
# as mc mocks fork() itself: bug #644462.
#
# VERBOSE=1 to make test failures contain detailed
# information.
CK_FORK=no emake check VERBOSE=1
}
src_install() {
emake DESTDIR="${D}" install
dodoc AUTHORS NEWS README
# fix bug #334383
if use kernel_linux && [[ ${EUID} == 0 ]] ; then
fowners root:tty /usr/libexec/mc/cons.saver
fperms g+s /usr/libexec/mc/cons.saver
fi
}
pkg_postinst() {
if use spell && ! has_version app-dicts/aspell-en ; then
elog "'spell' USE flag is enabled however app-dicts/aspell-en is not installed."
elog "You should manually set 'spell_language' in the Misc section of ~/.config/mc/ini"
elog "It has to be set to one of your installed aspell dictionaries or 'NONE'"
elog
fi
elog "To enable exiting to latest working directory,"
elog "put this into your ~/.bashrc:"
elog ". ${EPREFIX}/usr/libexec/mc/mc.sh"
}

@ -1,4 +1,4 @@
# Copyright 2020-2022 Gentoo Authors
# Copyright 2020-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@ -11,7 +11,7 @@ if [[ ${PV} == *9999* ]]; then
else
SRC_URI="https://gitlab.com/CalcProgrammer1/OpenRGB/-/archive/release_${PV}/OpenRGB-release_${PV}.tar.bz2"
S="${WORKDIR}/OpenRGB-release_${PV}"
KEYWORDS="~amd64 ~x86"
KEYWORDS="amd64 ~x86"
PATCHES=(
"${FILESDIR}"/OpenRGB-0.5-build-system.patch
)

@ -0,0 +1,94 @@
From 425ebfb12908c0d5f72f5a4eec06a235e8bbd54b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
Date: Sun, 23 Oct 2022 11:38:58 +0200
Subject: [PATCH] Use tomllib/tomli/tomli-w instead of unmaintained toml
package
Replace the use of the unmaintained `toml` package with the modern
trinity: built-in `tomllib` module for reading TOML in Python 3.11+,
`tomli` for reading TOML in older Python versions and `tomli-w` for
writing TOML in all Python versions. This ensures correct TOML 1.0
support that the old `toml` package lacks.
---
README.rst | 4 +++-
setup.py | 3 ++-
yq/__init__.py | 18 ++++++++++++------
3 files changed, 17 insertions(+), 8 deletions(-)
diff --git a/README.rst b/README.rst
index 69d77e1..237b89e 100644
--- a/README.rst
+++ b/README.rst
@@ -109,7 +109,9 @@ the ``xq --xml-output``/``xq -x`` option. Multiple XML documents can be passed i
TOML support
------------
``yq`` supports `TOML <https://toml.io/>`_ as well. The ``yq`` package installs an executable, ``tomlq``, which uses the
-`toml library <https://github.com/uiri/toml>`_ to transcode TOML to JSON, then pipes it to ``jq``. Roundtrip transcoding
+`tomllib module <https://docs.python.org/3.11/library/tomllib.html>` or `tomli library
+<https://github.com/hukkin/tomli>`_ to transcode TOML to JSON, then pipes it to ``jq``. Transcoding to TOML uses the
+`tomli-w <https://github.com/hukkin/toml-w`_ package. Roundtrip transcoding
is available with the ``tomlq --toml-output``/``tomlq -t`` option.
.. admonition:: Compatibility note
diff --git a/setup.py b/setup.py
index 9a7f643..71774ed 100755
--- a/setup.py
+++ b/setup.py
@@ -19,7 +19,8 @@
install_requires=[
"PyYAML >= 5.3.1",
"xmltodict >= 0.11.0",
- "toml >= 0.10.0",
+ "tomli >= 1.2.3; python_version < '3.11'",
+ "tomli-w",
"argcomplete >= 1.8.1"
],
extras_require={
diff --git a/yq/__init__.py b/yq/__init__.py
index 1043ff7..dd89408 100755
--- a/yq/__init__.py
+++ b/yq/__init__.py
@@ -201,8 +201,11 @@ def yq(input_streams=None, output_stream=None, input_format="yaml", output_forma
json.dump(doc, json_buffer, cls=JSONDateTimeEncoder)
json_buffer.write("\n")
elif input_format == "toml":
- import toml
- doc = toml.load(input_stream)
+ if sys.version_info >= (3, 11):
+ import tomllib
+ else:
+ import tomli as tomllib
+ doc = tomllib.loads(input_stream.read())
json.dump(doc, json_buffer, cls=JSONDateTimeEncoder)
json_buffer.write("\n")
else:
@@ -235,12 +238,12 @@ def yq(input_streams=None, output_stream=None, input_format="yaml", output_forma
raise
output_stream.write(b"\n" if sys.version_info < (3, 0) else "\n")
elif output_format == "toml":
- import toml
+ import tomli_w
for doc in decode_docs(jq_out, json_decoder):
if not isinstance(doc, dict):
msg = "{}: Error converting JSON to TOML: cannot represent non-object types at top level."
exit_func(msg.format(program_name))
- toml.dump(doc, output_stream)
+ output_stream.write(tomli_w.dumps(doc))
else:
if input_format == "yaml":
loader_class = get_loader(use_annotations=False, expand_aliases=expand_aliases,
@@ -255,9 +258,12 @@ def yq(input_streams=None, output_stream=None, input_format="yaml", output_forma
force_list=xml_force_list), jq.stdin)
jq.stdin.write("\n")
elif input_format == "toml":
- import toml
+ if sys.version_info >= (3, 11):
+ import tomllib
+ else:
+ import tomli as tomllib
for input_stream in input_streams:
- json.dump(toml.load(input_stream), jq.stdin)
+ json.dump(tomllib.loads(input_stream.read()), jq.stdin)
jq.stdin.write("\n")
else:
raise Exception("Unknown input format")

@ -0,0 +1,59 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{9..11} pypy3 )
inherit distutils-r1
DESCRIPTION="Command-line YAML processor - jq wrapper for YAML documents"
HOMEPAGE="
https://yq.readthedocs.io/
https://github.com/kislyuk/yq/
https://pypi.org/project/yq/
"
SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="test"
RESTRICT="!test? ( test )"
RDEPEND="
app-misc/jq
dev-python/argcomplete[${PYTHON_USEDEP}]
>=dev-python/pyyaml-5.3.1[${PYTHON_USEDEP}]
dev-python/xmltodict[${PYTHON_USEDEP}]
$(python_gen_cond_dep '
dev-python/tomli[${PYTHON_USEDEP}]
' 3.{8..10})
"
DEPEND="
${RDEPEND}
test? (
dev-python/wheel[${PYTHON_USEDEP}]
)
"
PATCHES=(
"${FILESDIR}/yq-2.13.0-tests.patch"
"${FILESDIR}/${P}-tomli.patch"
)
python_prepare_all() {
sed -e 's:unittest.main():unittest.main(verbosity=2):' \
-i test/test.py || die
sed -r -e 's:[[:space:]]*"coverage",:: ; s:[[:space:]]*"flake8",::' \
-i setup.py || die
sed -e '/license_file/ d' -i setup.cfg || die
distutils-r1_python_prepare_all
}
python_test() {
"${EPYTHON}" test/test.py </dev/null || die "tests failed under ${EPYTHON}"
}

@ -1,50 +0,0 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{9..11} pypy3 )
inherit distutils-r1
DESCRIPTION="Command-line YAML processor - jq wrapper for YAML documents"
HOMEPAGE="https://yq.readthedocs.io/ https://github.com/kislyuk/yq/ https://pypi.org/project/yq/"
SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="test"
RESTRICT="!test? ( test )"
RDEPEND="
app-misc/jq
dev-python/argcomplete[${PYTHON_USEDEP}]
>=dev-python/pyyaml-5.3.1[${PYTHON_USEDEP}]
dev-python/toml[${PYTHON_USEDEP}]
dev-python/xmltodict[${PYTHON_USEDEP}]
"
DEPEND="
${RDEPEND}
test? (
dev-python/wheel[${PYTHON_USEDEP}]
)
"
PATCHES=(
"${FILESDIR}/yq-2.13.0-tests.patch"
)
python_prepare_all() {
sed -e 's:unittest.main():unittest.main(verbosity=2):' \
-i test/test.py || die
sed -r -e 's:[[:space:]]*"coverage",:: ; s:[[:space:]]*"flake8",::' \
-i setup.py || die
sed -e '/license_file/ d' -i setup.cfg || die
distutils-r1_python_prepare_all
}
python_test() {
"${EPYTHON}" test/test.py </dev/null || die "tests failed under ${EPYTHON}"
}

Binary file not shown.

@ -4,3 +4,5 @@ DIST fzf-0.35.1-deps.tar.xz 16796112 BLAKE2B 61c22a914bb1eb8cb6da1daf4b25a19d98e
DIST fzf-0.35.1.tar.gz 218773 BLAKE2B 79b95e23a85865ea9218a222eba522a0a9d7f042f9119b308bc711cccc5327098dae271ba10fff9619f3ba7bc88037c70459f1caf511d5069264b931c875c49f SHA512 4e32836aa331835b6a7370ea342d2ddfa47a2059f5f7c5eec0b2c0dc9fdede14940bf64977c91df201775b3f4a06763a92593df7a50693d04d13b1befb194753
DIST fzf-0.36.0-deps.tar.xz 16806808 BLAKE2B f121b3000bc5a0d72ee5cb66f59f4f44c41af30f28ca935a607b424399d12dc762f25811aea999e5de126e2727f8bda614e026da6983ed535d048a7229a07065 SHA512 121c6b1be0cd3af752b11461a72c22e3bc55eec12c12367b354a4ff4d4dc75fb0215cf19cec52008473045c6330a4af71b2e3a14a9a0a124e18aacc1aaad97a9
DIST fzf-0.36.0.tar.gz 229126 BLAKE2B faa04870b7654b1ffb2f1c453636e33eab94e682c7db4702719419a5eca5ea136c657179248dd646573a625f575c823f9dcfd0023a96390bbf689e7455224411 SHA512 8e87dbd3b5ae9e0dc6a76855f7c75c9b4edc8ce797b2cd4eda053c4e1d618bb9afb2b24602e01776a49e47a00f2cd803ed433043f0acec8d385f741b13583e9e
DIST fzf-0.37.0-deps.tar.xz 16806808 BLAKE2B f121b3000bc5a0d72ee5cb66f59f4f44c41af30f28ca935a607b424399d12dc762f25811aea999e5de126e2727f8bda614e026da6983ed535d048a7229a07065 SHA512 121c6b1be0cd3af752b11461a72c22e3bc55eec12c12367b354a4ff4d4dc75fb0215cf19cec52008473045c6330a4af71b2e3a14a9a0a124e18aacc1aaad97a9
DIST fzf-0.37.0.tar.gz 230469 BLAKE2B 3281ae0e9b13f8be9d2bc5eb5bfab534a7b56279346ed500932840fb90e3bf0137c5610fdc5928faa99fadbb2cb10b98c46eea7a41f3a76cff3805ed52d255a7 SHA512 bb8cb4b6c83e978c45de757784f29be883070ef7abab2fe2dd89bc668be7628a3f476f97abf82f98220942c37317df0404e3fd2205c2e93ec506a6ca8beaf74c

@ -19,7 +19,7 @@ SRC_URI+=" https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}-deps.tar
LICENSE="MIT BSD-with-disclosure"
SLOT="0"
KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86"
KEYWORDS="amd64 ~arm64 ~ppc64 ~riscv x86"
src_prepare() {
default

@ -0,0 +1,72 @@
# Copyright 2019-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit bash-completion-r1 go-module
DESCRIPTION="General-purpose command-line fuzzy finder, written in Golang"
HOMEPAGE="https://github.com/junegunn/fzf"
# For fancy versioning only. Bump on the next release!
# MY_GIT_REV is the first 7 characters of release commit, we truncate it
# after to make it easier to copy/paste.
MY_GIT_REV=2023012408ff892d43441fce0385943bafdbb52b
MY_GIT_REV=${MY_GIT_REV:0:7}
SRC_URI="https://github.com/junegunn/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
SRC_URI+=" https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}-deps.tar.xz"
LICENSE="MIT BSD-with-disclosure"
SLOT="0"
KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86"
src_prepare() {
default
sed -i 's/-s -w //' Makefile || die # bug 795225
}
src_compile() {
emake PREFIX="${EPREFIX}"/usr VERSION=${PV} REVISION=${MY_GIT_REV} bin/${PN}
}
src_install() {
dobin bin/${PN}
doman man/man1/${PN}.1
dobin bin/${PN}-tmux
doman man/man1/${PN}-tmux.1
insinto /usr/share/vim/vimfiles/plugin
doins plugin/${PN}.vim
insinto /usr/share/nvim/runtime/plugin
doins plugin/${PN}.vim
newbashcomp shell/completion.bash ${PN}
insinto /usr/share/zsh/site-functions
newins shell/completion.zsh _${PN}
insinto /usr/share/fzf
doins shell/key-bindings.bash
doins shell/key-bindings.fish
doins shell/key-bindings.zsh
}
pkg_postinst() {
if [[ -z ${REPLACING_VERSIONS} ]]; then
elog "To add fzf support to your shell, make sure to use the right file"
elog "from ${EROOT}/usr/share/fzf."
elog
elog "For bash, add the following line to ~/.bashrc:"
elog
elog " # source ${EROOT}/usr/share/bash-completion/completions/fzf"
elog " # source ${EROOT}/usr/share/fzf/key-bindings.bash"
elog
elog "Plugins for Vim and Neovim are installed to respective directories"
elog "and will work out of the box."
elog
elog "For fzf support in tmux see fzf-tmux(1)."
fi
}

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save