Sync with portage [Tue Nov 24 07:48:19 MSK 2020].

akrasnyh 1810
Calculate Linux 3 years ago
parent f157c22912
commit 0fd37cbccc

Binary file not shown.

Binary file not shown.

@ -1 +1,2 @@
DIST hardinfo-0.5.2_pre20130823.tar.xz 280472 BLAKE2B d72883e7e57234b3328d03daf4d81cc478b383b51f4de08981792c42b3278ede81731ca831fbc285a594aa7f00f861c870aa6d784b7c282960f5541f04f9ce45 SHA512 e36bd4eec0090461de5fdb6c17dccf76937ee8fa9cb3411068fc568847f519023037999278bbb8b9a24608ed5b1d7fd2bebfe7115c631ccca1c35fa259cb20b1
DIST hardinfo-0.6_alpha_pre20201116.tar.gz 1294614 BLAKE2B d585be00603a5da2873d0e15829039f3f5212e2ab294b71d7f53299d7eecdfbb2d46ee8d56913039bf03807cebe3f100f41ce6560a1a33fcd712eab59c2a92a9 SHA512 34ce849f2d1a9ea129502abfb186b43a0d8ddecc853d2edc3128389944a34efa3580c6d8a35b8fc40b55d64cc8f3c0d33b97f198a449ed0cacdbff2520853c1c

@ -0,0 +1,36 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit xdg cmake
GIT_COMMIT="54b2e307af763ce87bc8c88e80785d8114bf38dd"
DESCRIPTION="System information and benchmark tool for Linux systems"
HOMEPAGE="https://github.com/lpereira/hardinfo"
SRC_URI="https://github.com/lpereira/hardinfo/archive/${GIT_COMMIT}.tar.gz -> ${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="debug"
RDEPEND="dev-libs/glib:2
dev-libs/json-glib
net-libs/libsoup
sys-libs/zlib
x11-libs/cairo
>=x11-libs/gtk+-3.0:3"
DEPEND="${RDEPEND}"
BDEPEND="virtual/pkgconfig"
S="${WORKDIR}/${PN}-${GIT_COMMIT}"
src_configure() {
local mycmakeargs=(
-DHARDINFO_GTK3=1
-DHARDINFO_DEBUG=$(usex debug 1 0)
)
cmake_src_configure
}

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<!-- maintainer-needed -->
</pkgmetadata>

@ -1,2 +1 @@
DIST passwordsafe-1.08_beta.tar.gz 14409047 BLAKE2B 029568b435d4cc19f3a95364355546afb99c13bbee0e83c248d57f47e472da714b95be00658ec2bba161b8eab6f0d94bf2856a2198d29673987e5c0cddf69aaf SHA512 7c37a91c71c1a79ea2cac87ec310d08df7491affd02c073d674bbedbabf25c1a1fb807376dae378dc4395b2146f6eaae059a0b14e0d1ba369cfa91a2d29060a4
DIST passwordsafe-1.11.0.tar.gz 14538095 BLAKE2B c37e965968b7e2e694dfa9a9a9193dc9bb10f5b67446ce5db070be864c211f4af06e9c412fa1489f15151741fd1a1ec01d07d3dca4633effa284541e5d081268 SHA512 b6ac36911e24a89f51c8f2efaa381af516e826137a5b131a0258c00d9ff3be07b818ca23b3d49e8dee9913aa8fc73faedf2a70494c72c3b22cc518a9c215e5c5
DIST passwordsafe-1.12.0.tar.gz 14937705 BLAKE2B 523e4496ffb99f8a53e62252117d43b771af867b3505f3a5b8c8f1119e8365f0661090e410a832abca89e2ce35816d2046d4bff0ba1e0f06c52c01eaac9051b2 SHA512 c20cb754a2174e3b3ab61edf99f2a31c333144550103fac50cc26cea89669fa3574db3bdd59996fcd87b83c7bf6dd1e9d2b087c17615183cd7111f151be5a94a

@ -10,11 +10,9 @@
<name>Proxy Maintainers</name>
</maintainer>
<use>
<flag name="minimal">Avoid collision with <pkg>app-misc/pwsafe</pkg></flag>
<flag name="qr">Enable QR code password display</flag>
<flag name="yubikey">Enable support for Yubikey</flag>
<flag name="xml">Enable XML import support</flag>
<flag name="xvkbd">Install <pkg>x11-misc/xvkbd</pkg> on-screen keyboard</flag>
</use>
<upstream>
<remote-id type="github">pwsafe/pwsafe</remote-id>

@ -1,100 +0,0 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
WX_GTK_VER="3.0-gtk3"
inherit desktop flag-o-matic wxwidgets cmake-utils
MY_PV="${PV/_beta/BETA}"
DESCRIPTION="Password manager with wxGTK based frontend"
HOMEPAGE="https://pwsafe.org/ https://github.com/pwsafe/pwsafe/"
SRC_URI="https://github.com/pwsafe/pwsafe/archive/${MY_PV}.tar.gz -> ${P}.tar.gz"
LICENSE="Artistic-2"
SLOT="0"
KEYWORDS="~amd64"
IUSE="libressl minimal test qr yubikey +xml xvkbd"
RESTRICT="!test? ( test )"
COMMON_DEPEND="xml? ( dev-libs/xerces-c )
qr? ( media-gfx/qrencode )
net-misc/curl
!libressl? ( dev-libs/openssl:0= )
libressl? ( dev-libs/libressl:0= )
sys-apps/util-linux
x11-libs/libXt
x11-libs/libXtst
x11-libs/wxGTK:${WX_GTK_VER}[X]
!minimal? ( !!app-misc/pwsafe )
yubikey? ( sys-auth/ykpers )"
RDEPEND="${COMMON_DEPEND}
xvkbd? ( x11-misc/xvkbd )"
DEPEND="${COMMON_DEPEND}
app-arch/zip
sys-devel/gettext
test? ( dev-cpp/gtest )"
S=${WORKDIR}/pwsafe-${MY_PV}
PATCHES=(
"${FILESDIR}/${PN}-1.06_beta-system-gtest.patch"
)
pkg_pretend() {
einfo "Checking for -std=c++11 support in compiler"
test-flags-CXX -std=c++11 > /dev/null || die
}
src_prepare() {
cmake-utils_src_prepare
# binary name pwsafe is in use by app-misc/pwsafe, we use passwordsafe
# instead. Perform required changes in linking files
sed -i install/desktop/pwsafe.desktop -e "s/pwsafe/${PN}/g" || die
sed -i docs/pwsafe.1 \
-e 's/PWSAFE/PASSWORDSAFE/' \
-e "s/^.B pwsafe/.B ${PN}/" || die
}
src_configure() {
need-wxwidgets unicode
local mycmakeargs=(
-DNO_QR=$(usex !qr)
-DNO_GTEST=$(usex !test)
-DSYSTEM_GTEST=ON
-DXML_XERCESC=$(usex xml)
-DNO_YUBI=$(usex !yubikey)
)
cmake-utils_src_configure
}
src_install() {
pushd "${BUILD_DIR}" || die
if use minimal; then
newbin pwsafe ${PN}
else
dobin pwsafe
dosym pwsafe /usr/bin/${PN}
fi
insinto /usr/share/locale
doins -r src/ui/wxWidgets/I18N/mos/*
insinto /usr/share/${PN}/help
doins help/*.zip
popd || die
newman docs/pwsafe.1 ${PN}.1
dodoc README.md README.LINUX.* docs/{ReleaseNotes.txt,ChangeLog.txt}
insinto /usr/share/${PN}
doins -r xml
newicon install/graphics/pwsafe.png ${PN}.png
newmenu install/desktop/pwsafe.desktop ${PN}.desktop
}

@ -2,3 +2,4 @@ DIST sysstat-12.2.1.tar.gz 1227707 BLAKE2B 566382d83a0230517d22e2630a9cb1aa631d7
DIST sysstat-12.2.2.tar.gz 1227793 BLAKE2B 7dcfe904aa60e9c61af516e718668a3f8fb9e4274c51a2c9d44b5e56dc6cf27ffb18d44641970f75abe1c1f8a2c5df8b7a7874da8745757f937ccc2ffbfa03d4 SHA512 82f4fb1e78a26275bdc6f6939dd2c75d7822e930992e74c1eaeda65c0e873d88e777a7f315c7b073aaacb6956281b2119448af2ca22ae6e7f1d20c370b01e3e4
DIST sysstat-12.2.3.tar.gz 1227666 BLAKE2B e78cba586eb8e5f5a971f608ee0df39a20e3af9f02db1778c52bbb09eb4565e29ffb79d68ed00af0142ccbf1120b97825c638b323b53e0b210c96bf808db4aa1 SHA512 d837193b59840b1b1a87f927a4416ba4c688f3b470be00e9ab013b62b2f11e7b963ef4cf521bc42a0a041ea8923e176922ee5b6df56c0612b6646054b048f067
DIST sysstat-12.4.0.tar.gz 1375207 BLAKE2B 66a9c15bb4e3b349158c9f7ab37d00c77844f0fd654df1b613141d906d3c89477e581d7143c77ba6952dd2cc7296f0611bc99aeec8e55e8090a488d5a286ee8b SHA512 156cb38bc4cedb68278d9054ce5b477cbdc84d2480ca302988c0fb5427b9f1f823f0939f2bc1c91fa7657b00b29d02d1f58aeafd342eef83b07d79c3f4141be4
DIST sysstat-12.4.1.tar.gz 1377429 BLAKE2B 878d20575f5397adf10f64ad935b1c08709f6149f875975377c0a9f9b741f9bf352d0dd92ae31c0e7544c2e59e2058fab9ec5be95bfe9d070048661a7ba3bbfa SHA512 203e77095bddeb3797a65ed9e51cab90beaae7f579624c3f55d6903d45b9395d2134ea8e773a572710fd837fd26fb5437dccad63a913536b916f659207256d98

@ -10,7 +10,7 @@ SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS=""
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
IUSE="dcron debug nls lm-sensors selinux static systemd"
CDEPEND="
@ -53,7 +53,6 @@ src_configure() {
tc-export AR
use static && append-ldflags -static
# --enable-compress-manpg <= Yes, that is inverted.
sa_lib_dir=/usr/lib/sa \
conf_dir=/etc \
econf \
@ -61,7 +60,7 @@ src_configure() {
$(use_enable lm-sensors sensors) \
$(use_enable nls) \
$(usex debug --enable-debuginfo '') \
--enable-compress-manpg \
--disable-compress-manpg \
--enable-copy-only \
--enable-documentation \
--enable-install-cron \

@ -1,81 +0,0 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit eutils flag-o-matic git-r3 systemd toolchain-funcs
DESCRIPTION="System performance tools for Linux"
HOMEPAGE="http://pagesperso-orange.fr/sebastien.godard/"
EGIT_REPO_URI="https://github.com/sysstat/sysstat"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS=""
IUSE="debug nls lm-sensors selinux static"
CDEPEND="
nls? ( virtual/libintl )
lm-sensors? ( sys-apps/lm-sensors:= )
"
DEPEND="
${CDEPEND}
nls? ( sys-devel/gettext )
"
RDEPEND="
${CDEPEND}
selinux? ( sec-policy/selinux-sysstat )
"
PATCHES=(
"${FILESDIR}"/${PN}-11.0.4-cron.patch
"${FILESDIR}"/${PN}-11.7.3-flags.patch
)
src_prepare() {
if use nls; then
strip-linguas -i nls/
local lingua pofile
for pofile in nls/*.po; do
lingua=${pofile/nls\/}
lingua=${lingua/.po}
if ! has ${lingua} ${LINGUAS}; then
rm "nls/${lingua}.po" || die
fi
done
fi
default
}
src_configure() {
tc-export AR
use static && append-ldflags -static
sa_lib_dir=/usr/lib/sa \
conf_dir=/etc \
econf \
$(use_enable lm-sensors sensors) \
$(use_enable nls) \
$(usex debug --enable-debuginfo '') \
--enable-copy-only \
--enable-documentation \
--enable-install-cron \
--with-systemdsystemunitdir=$(systemd_get_systemunitdir)
}
src_install() {
keepdir /var/log/sa
emake \
CHOWN=true \
DESTDIR="${D}" \
DOC_DIR=/usr/share/doc/${PF} \
MANGRPARG='' \
install
dodoc -r contrib/
newinitd "${FILESDIR}"/${PN}.init.d ${PN}
systemd_dounit ${PN}.service
rm "${D}"/usr/share/doc/${PF}/COPYING || die
}

Binary file not shown.

@ -1 +1,2 @@
DIST lxqt-archiver-0.2.0.tar.xz 155912 BLAKE2B e5c92d5939d3e6d42a79804596e9acc67b007126b630cd9317df7d0d07bb8f3e27cf9ecf6e16eef3289d31ef3627b4fa870cdb5eb52a36489df1080b03509acd SHA512 478a04d0e6e4601dc342ae260c5db4178b01191cae263154dbe400b394e5cd4cb9cd8a6bab7e7c59af57d6bf20c47a5ad2663a85d0eab5f71fbaf584f7588fd7
DIST lxqt-archiver-0.3.0.tar.xz 157492 BLAKE2B 05d9862c75cacf3b73670333a5b2dafb6abfcfd7433a1ebc3d27948122db875f892eb58a05221c880d1ac23530362ae4d9e7c6ebe0f06552b10bb903d51a6868 SHA512 840fae890611b081a1355ceb58ca65276784e6825822859ff2d6506190212268f1c67733dc94c65c9c5758f8d6a25c286c2b339356a50f29474b0c7ce2569d2c

@ -0,0 +1,49 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit cmake xdg-utils
DESCRIPTION="Qt GUI File Archiver"
HOMEPAGE="https://lxqt.github.io/"
if [[ ${PV} == *9999* ]]; then
inherit git-r3
EGIT_REPO_URI="https://github.com/lxqt/${PN}.git"
else
SRC_URI="https://github.com/lxqt/${PN}/releases/download/${PV}/${P}.tar.xz"
KEYWORDS="~amd64 ~x86"
fi
LICENSE="GPL-2 GPL-2+"
SLOT="0"
BDEPEND="
dev-qt/linguist-tools:5
>=dev-util/lxqt-build-tools-0.8.0
"
DEPEND="
dev-libs/json-glib
dev-qt/qtcore:5
dev-qt/qtgui:5
dev-qt/qtwidgets:5
dev-qt/qtx11extras:5
>=x11-libs/libfm-qt-0.16.0
"
RDEPEND="${DEPEND}"
pkg_postinst() {
xdg_desktop_database_update
elog "Please note that this is only a graphical front-end, and additional"
elog "packages are needed to have support for specific file formats."
elog "For example, to be able to work with the 7-Zip format, the"
elog "'app-arch/p7zip' package may be used."
elog "For the full list of supported formats, see the 'README.md' file:"
elog "https://github.com/lxqt/lxqt-archiver/blob/master/README.md"
}
pkg_postrm() {
xdg_desktop_database_update
}

Binary file not shown.

@ -1,4 +1,4 @@
DIST gnupg-2.2.16-scdaemon_shared-access.patch 2586 BLAKE2B 42fd5482c4e86751ce62836125997c2295c44bc5db0671a06460fd306b2ed93f290fb898fc1b1e463a863eddf9ab5f99ea3c90a55499ef45ca1ed6edf2854663 SHA512 38abaa4200114ae6b6f220fabc0a84a056761949c97bd0564557f4411a299b9a1939893555c27e26da2d8e8da4bc97a298fa7e68f1e80fe99c3f88cc329eaa84
DIST gnupg-2.2.20.tar.bz2 6786913 BLAKE2B 43cf9402a26e67d6c7c2444eb2faaee3f06ea0bf6c07708a50834c5d7424db2f9c38e1f0046dd3a35082abc08d401b2951655e7e068f0873db297560b87d2667 SHA512 3e69f102366ec3415f439ab81aae2458182fa1a18dfb86565b1d9dc638f3fc4c179a5947f0042b7c5a813345676285a662793664a1803ea9ad8328f0548e0edc
DIST gnupg-2.2.23.tar.bz2 7099806 BLAKE2B 0b9c1f5c8931399cfd9d95f107f91869733c4a986476ea43631b4265b1a5c26cfb8c9bb24ef6a295af7aa803749caaedde26365f6f50a7c946c1f86c867d855d SHA512 736b39628f7e4adc650b3f9937c81f27e9ad41e77f5345dc54262c91c1cf7004243fa7f932313bcde955e0e9b3f1afc639bac18023ae878b1d26e3c5a3cabb90
DIST gnupg-2.2.24.tar.bz2 7196489 BLAKE2B 0e6fd3df2a12910d43e290f86839f2ea56dddc2598e3687c356522727b082e3b266c00b7e5184aecac3103c9638e776463adc7b807b6b294180f227877861b1d SHA512 b72fb12da95c1c62f013e1ffdbf2983b4185f0de59edba6061209904e5f63525e23a406529fafcd1b0b50ccbad45980c1db293601e8db84d5cbf65a7228834fb
DIST gnupg-2.2.25.tar.bz2 7195857 BLAKE2B c930edf9259a0e1c508af8d76a86f979860adfe2c525020b37d3741679200f96483f0ad8bc1f72e2dbf7fe77696cd04d4272a2ee23e4c4abe1ed6ba88b95f365 SHA512 ab1d7cc9d8be3e7189bc4bea431b9d5db313cbd1739823950f32fbb611b2f4374889f444efbf43ce1fbf498b9865d7e6e953cd4c86d58fd688f63923c434ea2c

@ -116,11 +116,11 @@ src_configure() {
--enable-gpgsm \
--enable-large-secmem \
CC_FOR_BUILD="$(tc-getBUILD_CC)" \
GPG_ERROR_CONFIG="${EROOT}/usr/bin/${CHOST}-gpg-error-config" \
KSBA_CONFIG="${EROOT}/usr/bin/ksba-config" \
LIBASSUAN_CONFIG="${EROOT}/usr/bin/libassuan-config" \
LIBGCRYPT_CONFIG="${EROOT}/usr/bin/${CHOST}-libgcrypt-config" \
NPTH_CONFIG="${EROOT}/usr/bin/npth-config" \
GPG_ERROR_CONFIG="${ESYSROOT}/usr/bin/${CHOST}-gpg-error-config" \
KSBA_CONFIG="${ESYSROOT}/usr/bin/ksba-config" \
LIBASSUAN_CONFIG="${ESYSROOT}/usr/bin/libassuan-config" \
LIBGCRYPT_CONFIG="${ESYSROOT}/usr/bin/${CHOST}-libgcrypt-config" \
NPTH_CONFIG="${ESYSROOT}/usr/bin/npth-config" \
$("${S}/configure" --help | grep -- '--without-.*-prefix' | sed -e 's/^ *\([^ ]*\) .*/\1/g')
}

@ -91,11 +91,11 @@ src_configure() {
--enable-gpgsm
--enable-large-secmem
CC_FOR_BUILD="$(tc-getBUILD_CC)"
GPG_ERROR_CONFIG="${EROOT}/usr/bin/${CHOST}-gpg-error-config"
KSBA_CONFIG="${EROOT}/usr/bin/ksba-config"
LIBASSUAN_CONFIG="${EROOT}/usr/bin/libassuan-config"
LIBGCRYPT_CONFIG="${EROOT}/usr/bin/${CHOST}-libgcrypt-config"
NPTH_CONFIG="${EROOT}/usr/bin/npth-config"
GPG_ERROR_CONFIG="${ESYSROOT}/usr/bin/${CHOST}-gpg-error-config"
KSBA_CONFIG="${ESYSROOT}/usr/bin/ksba-config"
LIBASSUAN_CONFIG="${ESYSROOT}/usr/bin/libassuan-config"
LIBGCRYPT_CONFIG="${ESYSROOT}/usr/bin/${CHOST}-libgcrypt-config"
NPTH_CONFIG="${ESYSROOT}/usr/bin/npth-config"
$("${S}/configure" --help | grep -o -- '--without-.*-prefix')
)

@ -9,16 +9,17 @@ MY_P="${P/_/-}"
DESCRIPTION="The GNU Privacy Guard, a GPL OpenPGP implementation"
HOMEPAGE="https://gnupg.org/"
SRC_URI="mirror://gnupg/gnupg/${MY_P}.tar.bz2"
SRC_URI="mirror://gnupg/gnupg/${MY_P}.tar.bz2
scd-shared-access? ( https://raw.githubusercontent.com/GPGTools/MacGPG2/5ca182f54b7b6cd635d1c0a4713953834489fdd9/patches/gnupg/scdaemon_shared-access.patch -> ${PN}-2.2.16-scdaemon_shared-access.patch )"
LICENSE="GPL-3"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="bzip2 doc ldap nls readline selinux +smartcard ssl tofu tools usb user-socket wks-server"
IUSE="bzip2 doc ldap nls readline scd-shared-access selinux +smartcard ssl tofu tools usb user-socket wks-server"
# Existence of executables is checked during configuration.
DEPEND=">=dev-libs/libassuan-2.5.0
>=dev-libs/libgcrypt-1.7.3
>=dev-libs/libgcrypt-1.8.0
>=dev-libs/libgpg-error-1.29
>=dev-libs/libksba-1.3.4
>=dev-libs/npth-1.2
@ -55,6 +56,13 @@ PATCHES=(
src_prepare() {
default
# Made optional because it's a non-official patch
if use scd-shared-access ; then
# Patch taken from
# https://github.com/GPGTools/MacGPG2/tree/dev/patches/gnupg
eapply "${DISTDIR}/${PN}-2.2.16-scdaemon_shared-access.patch"
fi
# Inject SSH_AUTH_SOCK into user's sessions after enabling gpg-agent-ssh.socket in systemctl --user mode,
# idea borrowed from libdbus, see
# https://gitlab.freedesktop.org/dbus/dbus/-/blob/master/bus/systemd-user/dbus.socket.in#L6
@ -83,11 +91,11 @@ src_configure() {
--enable-gpgsm
--enable-large-secmem
CC_FOR_BUILD="$(tc-getBUILD_CC)"
GPG_ERROR_CONFIG="${EROOT}/usr/bin/${CHOST}-gpg-error-config"
KSBA_CONFIG="${EROOT}/usr/bin/ksba-config"
LIBASSUAN_CONFIG="${EROOT}/usr/bin/libassuan-config"
LIBGCRYPT_CONFIG="${EROOT}/usr/bin/${CHOST}-libgcrypt-config"
NPTH_CONFIG="${EROOT}/usr/bin/npth-config"
GPG_ERROR_CONFIG="${ESYSROOT}/usr/bin/${CHOST}-gpg-error-config"
KSBA_CONFIG="${ESYSROOT}/usr/bin/ksba-config"
LIBASSUAN_CONFIG="${ESYSROOT}/usr/bin/libassuan-config"
LIBGCRYPT_CONFIG="${ESYSROOT}/usr/bin/${CHOST}-libgcrypt-config"
NPTH_CONFIG="${ESYSROOT}/usr/bin/npth-config"
$("${S}/configure" --help | grep -o -- '--without-.*-prefix')
)

@ -1 +1 @@
DIST tpm2-tss-engine-1.1.0_rc1.tar.gz 38749 BLAKE2B 74063555404f2c61a21ba05f0eb1217fa78db4296d48712dccf1a113f5b7edef3d10f3347b955562a97f974342eeecdedebf0f2073551c4d0e4277b8320f72b7 SHA512 e5620886c3b27fea3a51ff136bddaa6eb5d57277ca29a79964cd600703b03447341a535bb46079c15caf96cfe6f45943322b2f2dd0c48f453d6b9c57e76989bc
DIST tpm2-tss-engine-1.1.0.tar.gz 394448 BLAKE2B 0502907dc9ce872f31be3b980f975a02af2e3e4b369d188afa5327bd4475d93dbf43769dc7ddc11e8cbda8d1fde09f28a9aef9145e859a90225cd397f62c7a2c SHA512 5d2e08178be54350e8672245023d601a0d9d520f8c49e977af49d7c59b91d033c14b4a347b71e042fe7c5ff12af9fcc43b69fd1dc83a9f0db12d47d43e1107f4

@ -5,11 +5,9 @@ EAPI=7
inherit autotools bash-completion-r1
MY_PV="${PV/_/-}"
DESCRIPTION="OpenSSL Engine for TPM2 devices"
HOMEPAGE="https://github.com/tpm2-software/tpm2-tools"
SRC_URI="https://github.com/tpm2-software/${PN}/archive/v${MY_PV}.tar.gz -> ${P}.tar.gz"
SRC_URI="https://github.com/tpm2-software/${PN}/releases/download/v${PV}/${P}.tar.gz"
LICENSE="BSD"
SLOT="0"
@ -23,7 +21,6 @@ DEPEND="${RDEPEND}
test? ( dev-util/cmocka )"
BDEPEND="sys-devel/autoconf-archive
virtual/pkgconfig"
S="${WORKDIR}/${PN}-${MY_PV}"
src_prepare() {
default
@ -36,7 +33,6 @@ src_configure() {
--disable-defaultflags \
--disable-static \
--with-completionsdir="$(get_bashcompdir)"
}
src_install () {

@ -1,3 +1,3 @@
DIST tpm2-tss-2.4.1.tar.gz 1445103 BLAKE2B c7be91b93d19b5afeddb6ec455db9ba06795f8dc76ee2a0c6cbabbd8f623930d7c9fdf6319497c70790445531d1e36fe3f904f4c1f4bc9254d833b6d19280f1f SHA512 51551d63fa404e23664aaad1b247bd4b1f93812ced1aed144c37f28cdb3adb4e696aa9e93a502c8fa0eb7e9b4376ac9377f0537eb4c717b68c0b014fee7a0643
DIST tpm2-tss-2.4.3.tar.gz 1439120 BLAKE2B 21acce29f96e8039124874c024b43eb8d2c4ffda27db58bb4f34446747c0fa6953c6ca390f8e87d22c1349123bada81051b119eaf7a28c7d1ad8a9195287c312 SHA512 4adaeb2724b720017e9d488f66de879ebdc0dbc2a4f7536493214913a49d2c631e302be26f710f0f45b0d514212cb036ca7ba9715ee13c29dda1d4a61595aa27
DIST tpm2-tss-3.0.1.tar.gz 1488285 BLAKE2B 2ccf123a2e0ff6355d8022402fb2e12932565f345b4b2c9ac68249b5de3ea5851256c38057323b19cb84dfd2ea5b63292b8b8f1bd4d9576d27bd57a35f0250f1 SHA512 206830fecea22c4974a16b5e76599b3c22e077a448f15e2707b260eba6832b2089f9d7c12d3e42daf314cdfbd83309b2b623a7abeb1409234f1930a835365529
DIST tpm2-tss-2.4.4.tar.gz 1440127 BLAKE2B f5db64281af92bc74d92ecffedbaa051aef21277d8c1c56fb0eb2c47fdebc12772eb18a7c2a2cb671730a1089227f756314ee02acfaa5307fedbfddb86565a81 SHA512 df35bace1744a93e5072a26490e7724604fcc8b04f2b1be71be0069750b8cff7ca4c5c6134e54fbe76f0797d5e83dcfbc8ce248a800d064fbf3be9e3e4745f73
DIST tpm2-tss-3.0.2.tar.gz 1489725 BLAKE2B e68a6ce24070c9f4966367ecd55cef324b0bef2786dbcdedb894a19dcd71fbb2eda473f612885db4c816c6c2c15711ee192d441be6eb6fd665dd13180e70b556 SHA512 0b295bb1a135c904344e8a11ae9a293f71d60ea045bacd59a9b778ba19e88e1b91022f24a4775615c215db450584574901838146bc4d4d286ee8b686b72b0bab

@ -11,7 +11,7 @@ SRC_URI="https://github.com/tpm2-software/${PN}/releases/download/${PV}/${P}.tar
LICENSE="BSD-2"
SLOT="0"
KEYWORDS="amd64 ~arm ~arm64 x86"
KEYWORDS="~amd64 ~arm ~arm64 ~x86"
IUSE="doc +fapi gcrypt +openssl static-libs test"
RESTRICT="!test? ( test )"
@ -33,8 +33,8 @@ BDEPEND="virtual/pkgconfig
doc? ( app-doc/doxygen )"
PATCHES=(
"${FILESDIR}/${P}-Dont-run-systemd-sysusers-in-Makefile.patch"
"${FILESDIR}/${P}-configure.ac-wrap-PKG_CHECK_MODULES-in-braces.patch"
"${FILESDIR}/${PN}-2.4.1-configure.ac-wrap-PKG_CHECK_MODULES-in-braces.patch"
"${FILESDIR}/${PN}-2.4.2-Dont-run-systemd-sysusers-in-Makefile.patch"
)
pkg_setup() {

@ -32,7 +32,7 @@ BDEPEND="virtual/pkgconfig
PATCHES=(
"${FILESDIR}/${PN}-3.0.0-Dont-run-systemd-sysusers-in-Makefile.patch"
"${FILESDIR}/${P}-Fix-underquoting-in-configure-ac.patch"
"${FILESDIR}/${PN}-3.0.1-Fix-underquoting-in-configure-ac.patch"
)
pkg_setup() {

Binary file not shown.

@ -25,6 +25,7 @@ This variant of the Wine packaging includes the Wine-Staging patchset.
<flag name="gecko">Add support for the Gecko engine when using iexplore</flag>
<flag name="gssapi">Use GSSAPI (Kerberos SSP support)</flag>
<flag name="gstreamer">Use <pkg>media-libs/gstreamer</pkg> to provide DirectShow functionality;</flag>
<flag name="mingw">Build PE files using a MinGW cross compiler</flag>
<flag name="mono">Add support for .NET using Wine's Mono add-on</flag>
<flag name="netapi">Use libnetapi from <pkg>net-fs/samba</pkg> to support Windows networks in netapi32.dll</flag>
<flag name="opencl">Enable OpenCL support</flag>

@ -0,0 +1,650 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
PLOCALES="ar ast bg ca cs da de el en en_US eo es fa fi fr he hi hr hu it ja ko lt ml nb_NO nl or pa pl pt_BR pt_PT rm ro ru si sk sl sr_RS@cyrillic sr_RS@latin sv ta te th tr uk wa zh_CN zh_TW"
PLOCALE_BACKUP="en"
inherit autotools eapi7-ver estack eutils flag-o-matic gnome2-utils l10n multilib multilib-minimal pax-utils toolchain-funcs virtualx xdg-utils
MY_PN="${PN%%-*}"
MY_P="${MY_PN}-${PV}"
if [[ ${PV} == "9999" ]] ; then
EGIT_REPO_URI="https://source.winehq.org/git/wine.git"
EGIT_BRANCH="master"
inherit git-r3
SRC_URI=""
#KEYWORDS=""
else
MAJOR_V=$(ver_cut 1)
SRC_URI="https://dl.winehq.org/wine/source/${MAJOR_V}.x/${MY_P}.tar.xz"
KEYWORDS="-* ~amd64 ~x86"
fi
S="${WORKDIR}/${MY_P}"
STAGING_P="wine-staging-${PV}"
STAGING_DIR="${WORKDIR}/${STAGING_P}"
GWP_V="20200523"
PATCHDIR="${WORKDIR}/gentoo-wine-patches"
DESCRIPTION="Free implementation of Windows(tm) on Unix, with Wine-Staging patchset"
HOMEPAGE="https://www.winehq.org/"
SRC_URI="${SRC_URI}
https://dev.gentoo.org/~sarnex/distfiles/wine/gentoo-wine-patches-${GWP_V}.tar.xz
"
if [[ ${PV} == "9999" ]] ; then
STAGING_EGIT_REPO_URI="https://github.com/wine-staging/wine-staging.git"
else
SRC_URI="${SRC_URI}
staging? ( https://github.com/wine-staging/wine-staging/archive/v${PV}.tar.gz -> ${STAGING_P}.tar.gz )"
fi
LICENSE="LGPL-2.1"
SLOT="${PV}"
IUSE="+abi_x86_32 +abi_x86_64 +alsa capi cups custom-cflags dos elibc_glibc +faudio +fontconfig +gcrypt +gecko gphoto2 gsm gssapi gstreamer +jpeg kerberos kernel_FreeBSD +lcms ldap mingw +mono mp3 ncurses netapi nls odbc openal opencl +opengl osmesa oss +perl pcap pipelight +png prelink pulseaudio +realtime +run-exes samba scanner sdl selinux +ssl staging test themes +threads +truetype udev +udisks +unwind v4l vaapi vkd3d vulkan +X +xcomposite xinerama +xml"
REQUIRED_USE="|| ( abi_x86_32 abi_x86_64 )
X? ( truetype )
elibc_glibc? ( threads )
osmesa? ( opengl )
pipelight? ( staging )
test? ( abi_x86_32 )
themes? ( staging )
vaapi? ( staging )
vkd3d? ( vulkan )" # osmesa-opengl #286560 # X-truetype #551124
# FIXME: the test suite is unsuitable for us; many tests require net access
# or fail due to Xvfb's opengl limitations.
RESTRICT="test"
COMMON_DEPEND="
X? (
x11-libs/libXcursor[${MULTILIB_USEDEP}]
x11-libs/libXext[${MULTILIB_USEDEP}]
x11-libs/libXfixes[${MULTILIB_USEDEP}]
x11-libs/libXrandr[${MULTILIB_USEDEP}]
x11-libs/libXi[${MULTILIB_USEDEP}]
x11-libs/libXxf86vm[${MULTILIB_USEDEP}]
)
alsa? ( media-libs/alsa-lib[${MULTILIB_USEDEP}] )
capi? ( net-libs/libcapi[${MULTILIB_USEDEP}] )
cups? ( net-print/cups:=[${MULTILIB_USEDEP}] )
faudio? ( app-emulation/faudio:=[${MULTILIB_USEDEP}] )
fontconfig? ( media-libs/fontconfig:=[${MULTILIB_USEDEP}] )
gcrypt? ( dev-libs/libgcrypt:=[${MULTILIB_USEDEP}] )
gphoto2? ( media-libs/libgphoto2:=[${MULTILIB_USEDEP}] )
gsm? ( media-sound/gsm:=[${MULTILIB_USEDEP}] )
gssapi? ( virtual/krb5[${MULTILIB_USEDEP}] )
gstreamer? (
media-libs/gstreamer:1.0[${MULTILIB_USEDEP}]
media-plugins/gst-plugins-meta:1.0[${MULTILIB_USEDEP}]
)
jpeg? ( virtual/jpeg:0=[${MULTILIB_USEDEP}] )
kerberos? ( virtual/krb5:0=[${MULTILIB_USEDEP}] )
lcms? ( media-libs/lcms:2=[${MULTILIB_USEDEP}] )
ldap? ( net-nds/openldap:=[${MULTILIB_USEDEP}] )
mp3? ( >=media-sound/mpg123-1.5.0[${MULTILIB_USEDEP}] )
ncurses? ( >=sys-libs/ncurses-5.2:0=[${MULTILIB_USEDEP}] )
netapi? ( net-fs/samba[netapi(+),${MULTILIB_USEDEP}] )
nls? ( sys-devel/gettext[${MULTILIB_USEDEP}] )
odbc? ( dev-db/unixODBC:=[${MULTILIB_USEDEP}] )
openal? ( media-libs/openal:=[${MULTILIB_USEDEP}] )
opencl? ( virtual/opencl[${MULTILIB_USEDEP}] )
opengl? (
virtual/glu[${MULTILIB_USEDEP}]
virtual/opengl[${MULTILIB_USEDEP}]
)
osmesa? ( >=media-libs/mesa-13[osmesa,${MULTILIB_USEDEP}] )
pcap? ( net-libs/libpcap[${MULTILIB_USEDEP}] )
png? ( media-libs/libpng:0=[${MULTILIB_USEDEP}] )
pulseaudio? ( media-sound/pulseaudio[${MULTILIB_USEDEP}] )
scanner? ( media-gfx/sane-backends:=[${MULTILIB_USEDEP}] )
sdl? ( media-libs/libsdl2:=[haptic,joystick,${MULTILIB_USEDEP}] )
ssl? ( net-libs/gnutls:=[${MULTILIB_USEDEP}] )
staging? ( sys-apps/attr[${MULTILIB_USEDEP}] )
themes? (
dev-libs/glib:2[${MULTILIB_USEDEP}]
x11-libs/cairo[${MULTILIB_USEDEP}]
x11-libs/gtk+:3[${MULTILIB_USEDEP}]
)
truetype? ( >=media-libs/freetype-2.0.0[${MULTILIB_USEDEP}] )
udev? ( virtual/libudev:=[${MULTILIB_USEDEP}] )
udisks? ( sys-apps/dbus[${MULTILIB_USEDEP}] )
unwind? ( sys-libs/libunwind[${MULTILIB_USEDEP}] )
v4l? ( media-libs/libv4l[${MULTILIB_USEDEP}] )
vaapi? ( x11-libs/libva[X,${MULTILIB_USEDEP}] )
vkd3d? ( >=app-emulation/vkd3d-1.2[${MULTILIB_USEDEP}] )
vulkan? ( media-libs/vulkan-loader[${MULTILIB_USEDEP}] )
xcomposite? ( x11-libs/libXcomposite[${MULTILIB_USEDEP}] )
xinerama? ( x11-libs/libXinerama[${MULTILIB_USEDEP}] )
xml? (
dev-libs/libxml2[${MULTILIB_USEDEP}]
dev-libs/libxslt[${MULTILIB_USEDEP}]
)"
RDEPEND="${COMMON_DEPEND}
app-emulation/wine-desktop-common
>app-eselect/eselect-wine-0.3
!app-emulation/wine:0
dos? ( >=games-emulation/dosbox-0.74_p20160629 )
gecko? ( app-emulation/wine-gecko:2.47.1[abi_x86_32?,abi_x86_64?] )
mono? ( app-emulation/wine-mono:5.1.1 )
perl? (
dev-lang/perl
dev-perl/XML-Simple
)
pulseaudio? (
realtime? ( sys-auth/rtkit )
)
samba? ( >=net-fs/samba-3.0.25[winbind] )
selinux? ( sec-policy/selinux-wine )
udisks? ( sys-fs/udisks:2 )"
# tools/make_requests requires perl
DEPEND="${COMMON_DEPEND}
sys-devel/flex
>=sys-kernel/linux-headers-2.6
virtual/pkgconfig
virtual/yacc
X? ( x11-base/xorg-proto )
prelink? ( sys-devel/prelink )
staging? (
dev-lang/perl
dev-perl/XML-Simple
)
xinerama? ( x11-base/xorg-proto )"
# These use a non-standard "Wine" category, which is provided by
# /etc/xdg/applications-merged/wine.menu
QA_DESKTOP_FILE="usr/share/applications/wine-browsedrive.desktop
usr/share/applications/wine-notepad.desktop
usr/share/applications/wine-uninstaller.desktop
usr/share/applications/wine-winecfg.desktop"
PATCHES=(
"${PATCHDIR}/patches/${MY_PN}-5.0-winegcc.patch" #260726
"${PATCHDIR}/patches/${MY_PN}-4.7-multilib-portage.patch" #395615
"${PATCHDIR}/patches/${MY_PN}-2.0-multislot-apploader.patch" #310611
"${PATCHDIR}/patches/${MY_PN}-5.9-Revert-makedep-Install-also-generated-typelib-for-in.patch"
)
PATCHES_BIN=()
# https://bugs.gentoo.org/show_bug.cgi?id=635222
if [[ ${#PATCHES_BIN[@]} -ge 1 ]] || [[ ${PV} == 9999 ]]; then
DEPEND+=" dev-util/patchbin"
fi
wine_compiler_check() {
[[ ${MERGE_TYPE} = "binary" ]] && return 0
# GCC-specific bugs
if tc-is-gcc; then
# bug #549768
if use abi_x86_64 && [[ $(gcc-major-version) = 5 && $(gcc-minor-version) -le 2 ]]; then
ebegin "Checking for gcc-5 ms_abi compiler bug"
$(tc-getCC) -O2 "${PATCHDIR}/files/pr66838.c" -o "${T}"/pr66838 || die
# Run in subshell to prevent "Aborted" message
( "${T}"/pr66838 || false ) >/dev/null 2>&1
if ! eend $?; then
eerror "64-bit wine cannot be built with gcc-5.1 or initial patchset of 5.2.0"
eerror "due to compiler bugs; please re-emerge the latest gcc-5.2.x ebuild,"
eerror "or use gcc-config to select a different compiler version."
eerror "See https://bugs.gentoo.org/549768"
eerror
return 1
fi
fi
# bug #574044
if use abi_x86_64 && [[ $(gcc-major-version) = 5 && $(gcc-minor-version) = 3 ]]; then
ebegin "Checking for gcc-5-3 stack realignment compiler bug"
# Compile in subshell to prevent "Aborted" message
( $(tc-getCC) -O2 -mincoming-stack-boundary=3 "${PATCHDIR}/files/pr69140.c" -o "${T}"/pr69140 ) >/dev/null 2>&1
if ! eend $?; then
eerror "Wine cannot be built with this version of gcc-5.3"
eerror "due to compiler bugs; please re-emerge the latest gcc-5.3.x ebuild,"
eerror "or use gcc-config to select a different compiler version."
eerror "See https://bugs.gentoo.org/574044"
eerror
return 1
fi
fi
fi
# Ensure compiler support
if use abi_x86_64; then
ebegin "Checking for 64-bit compiler with builtin_ms_va_list support"
# Compile in subshell to prevent "Aborted" message
( $(tc-getCC) -O2 "${PATCHDIR}/files/builtin_ms_va_list.c" -o "${T}"/builtin_ms_va_list >/dev/null 2>&1)
if ! eend $?; then
eerror "This version of $(tc-getCC) does not support builtin_ms_va_list, can't enable 64-bit wine"
eerror
eerror "You need gcc-4.4+ or clang 3.8+ to build 64-bit wine"
eerror
return 1
fi
fi
}
wine_build_environment_check() {
[[ ${MERGE_TYPE} = "binary" ]] && return 0
if use abi_x86_64; then
if tc-is-gcc && [[ $(gcc-major-version) -lt 4 || ( $(gcc-major-version) -eq 4 && $(gcc-minor-version) -lt 4 ) ]]; then
eerror "You need gcc-4.4+ to compile 64-bit wine"
die
elif tc-is-clang && [[ $(clang-major-version) -lt 3 || ( $(clang-major-version) -eq 3 && $(clang-minor-version) -lt 8 ) ]]; then
eerror "You need clang-3.8+ to compile 64-bit wine"
die
fi
fi
if tc-is-gcc && [[ $(gcc-major-version) -eq 5 && $(gcc-minor-version) -le 3 ]]; then
ewarn "GCC-5.0-5.3 suffered from compiler bugs and are no longer supported by"
ewarn "Gentoo's Toolchain Team. If your ebuild fails the compiler checks in"
ewarn "the configure phase, either update your compiler or switch to <5.0 || >=5.4"
fi
if tc-is-gcc && [[ $(gcc-major-version) -eq 5 && $(gcc-minor-version) -eq 4 ]]; then
if has "-march=i686" ${CFLAGS} && ! has "-mtune=generic" ${CFLAGS}; then
ewarn "Compilation can hang with CFLAGS=\"-march=i686\". You can temporarily work"
ewarn "around this by adding \"-mtune=generic\" to your CFLAGS for wine."
ewarn "See package.env in man 5 portage for more information on how to do this."
ewarn "See https://bugs.gentoo.org/show_bug.cgi?id=613128 for more details"
fi
fi
if use abi_x86_32 && use opencl && [[ "$(eselect opencl show 2> /dev/null)" == "intel" ]]; then
eerror "You cannot build wine with USE=opencl because intel-ocl-sdk is 64-bit only."
eerror "See https://bugs.gentoo.org/487864 for more details."
eerror
return 1
fi
}
wine_env_vcs_vars() {
local pn_live_var="${PN//[-+]/_}_LIVE_COMMIT"
local pn_live_val="${pn_live_var}"
eval pn_live_val='$'${pn_live_val}
if [[ ! -z ${pn_live_val} ]]; then
if use staging; then
eerror "Because of the multi-repo nature of ${MY_PN}, ${pn_live_var}"
eerror "cannot be used to set the commit. Instead, you may use the"
eerror "environment variables:"
eerror " EGIT_OVERRIDE_COMMIT_WINE"
eerror " EGIT_OVERRIDE_COMMIT_WINE_STAGING_WINE_STAGING"
eerror
return 1
fi
fi
if [[ ! -z ${EGIT_COMMIT} ]]; then
eerror "Commits must now be specified using the environment variables:"
eerror " EGIT_OVERRIDE_COMMIT_WINE"
eerror " EGIT_OVERRIDE_COMMIT_WINE_STAGING_WINE_STAGING"
eerror
return 1
fi
}
pkg_pretend() {
wine_build_environment_check || die
# Verify OSS support
if use oss && ! use kernel_FreeBSD; then
if ! has_version ">=media-sound/oss-4"; then
eerror "You cannot build wine with USE=oss without having support from a"
eerror "FreeBSD kernel or >=media-sound/oss-4 (only available through external repos)"
eerror
die
fi
fi
if use mingw && use abi_x86_32 && ! has_version "cross-i686-w64-mingw32/gcc"; then
eerror
eerror "USE=\"mingw\" is currently experimental, and requires the"
eerror "'cross-i686-w64-mingw32' compiler and its runtime for 32-bit builds."
eerror
eerror "These can be installed by using 'sys-devel/crossdev':"
eerror
eerror "crossdev --target i686-w64-mingw32"
eerror
eerror "For more information on setting up MinGW, see: https://wiki.gentoo.org/wiki/Mingw"
eerror
die "MinGW build was enabled, but no compiler to support it was found."
fi
if use mingw && use abi_x86_64 && ! has_version "cross-x86_64-w64-mingw32/gcc"; then
eerror
eerror "USE=\"mingw\" is currently experimental, and requires the"
eerror "'cross-x86_64-w64-mingw32' compiler and its runtime for 64-bit builds."
eerror
eerror "These can be installed by using 'sys-devel/crossdev':"
eerror
eerror "crossdev --target x86_64-w64-mingw32"
eerror
eerror "For more information on setting up MinGW, see: https://wiki.gentoo.org/wiki/Mingw"
eerror
die "MinGW build was enabled, but no compiler to support it was found."
fi
}
pkg_setup() {
wine_build_environment_check || die
wine_env_vcs_vars || die
WINE_VARIANT="${PN#wine}-${PV}"
WINE_VARIANT="${WINE_VARIANT#-}"
MY_PREFIX="${EPREFIX}/usr/lib/wine-${WINE_VARIANT}"
MY_DATAROOTDIR="${EPREFIX}/usr/share/wine-${WINE_VARIANT}"
MY_DATADIR="${MY_DATAROOTDIR}"
MY_DOCDIR="${EPREFIX}/usr/share/doc/${PF}"
MY_INCLUDEDIR="${EPREFIX}/usr/include/wine-${WINE_VARIANT}"
MY_LIBEXECDIR="${EPREFIX}/usr/libexec/wine-${WINE_VARIANT}"
MY_LOCALSTATEDIR="${EPREFIX}/var/wine-${WINE_VARIANT}"
MY_MANDIR="${MY_DATADIR}/man"
}
src_unpack() {
if [[ ${PV} == "9999" ]] ; then
EGIT_CHECKOUT_DIR="${S}" git-r3_src_unpack
if use staging; then
local CURRENT_WINE_COMMIT=${EGIT_VERSION}
EGIT_CHECKOUT_DIR="${STAGING_DIR}" EGIT_REPO_URI="${STAGING_EGIT_REPO_URI}" git-r3_src_unpack
local COMPAT_WINE_COMMIT=$("${STAGING_DIR}/patches/patchinstall.sh" --upstream-commit) || die
if [[ "${CURRENT_WINE_COMMIT}" != "${COMPAT_WINE_COMMIT}" ]]; then
einfo "The current Staging patchset is not guaranteed to apply on this WINE commit."
einfo "If src_prepare fails, try emerging with the env var WINE_COMMIT."
einfo "Example: EGIT_OVERRIDE_COMMIT_WINE=${COMPAT_WINE_COMMIT} emerge -1 wine"
fi
fi
fi
default
l10n_find_plocales_changes "${S}/po" "" ".po"
}
src_prepare() {
eapply_bin(){
local patch
for patch in ${PATCHES_BIN[@]}; do
patchbin --nogit < "${patch}" || die
done
}
local md5="$(md5sum server/protocol.def)"
if use staging; then
ewarn "Applying the Wine-Staging patchset. Any bug reports to the"
ewarn "Wine bugzilla should explicitly state that staging was used."
local STAGING_EXCLUDE="-W winemenubuilder-Desktop_Icon_Path" #652176
use pipelight || STAGING_EXCLUDE="${STAGING_EXCLUDE} -W Pipelight"
# Launch wine-staging patcher in a subshell, using eapply as a backend, and gitapply.sh as a backend for binary patches
ebegin "Running Wine-Staging patch installer"
(
set -- DESTDIR="${S}" --backend=eapply --no-autoconf --all ${STAGING_EXCLUDE}
cd "${STAGING_DIR}/patches"
source "${STAGING_DIR}/patches/patchinstall.sh"
)
eend $? || die "Failed to apply Wine-Staging patches"
fi
default
eapply_bin
eautoreconf
# Modification of the server protocol requires regenerating the server requests
if [[ "$(md5sum server/protocol.def)" != "${md5}" ]]; then
einfo "server/protocol.def was patched; running tools/make_requests"
tools/make_requests || die #432348
fi
sed -i '/^UPDATE_DESKTOP_DATABASE/s:=.*:=true:' tools/Makefile.in || die
if ! use run-exes; then
sed -i '/^MimeType/d' loader/wine.desktop || die #117785
fi
# Edit wine.desktop to work for specific variant
sed -e "/^Exec=/s/wine /wine-${WINE_VARIANT} /" -i loader/wine.desktop || die
# hi-res default icon, #472990, https://bugs.winehq.org/show_bug.cgi?id=24652
cp "${PATCHDIR}/files/oic_winlogo.ico" dlls/user32/resources/ || die
l10n_get_locales > po/LINGUAS || die # otherwise wine doesn't respect LINGUAS
# Fix manpage generation for locales #469418 and abi_x86_64 #617864
# Duplicate manpages input files for wine64
local f
for f in loader/*.man.in; do
cp ${f} ${f/wine/wine64} || die
done
# Add wine64 manpages to Makefile
if use abi_x86_64; then
sed -i "/wine.man.in/i \
\\\twine64.man.in \\\\" loader/Makefile.in || die
sed -i -E 's/(.*wine)(.*\.UTF-8\.man\.in.*)/&\
\164\2/' loader/Makefile.in || die
fi
rm_man_file(){
local file="${1}"
loc=${2}
sed -i "/${loc}\.UTF-8\.man\.in/d" "${file}" || die
}
while read f; do
l10n_for_each_disabled_locale_do rm_man_file "${f}"
done < <(find -name "Makefile.in" -exec grep -q "UTF-8.man.in" "{}" \; -print)
}
src_configure() {
wine_compiler_check || die
export LDCONFIG=/bin/true
use custom-cflags || strip-flags
multilib-minimal_src_configure
}
multilib_src_configure() {
local myconf=(
--prefix="${MY_PREFIX}"
--datarootdir="${MY_DATAROOTDIR}"
--datadir="${MY_DATADIR}"
--docdir="${MY_DOCDIR}"
--includedir="${MY_INCLUDEDIR}"
--libdir="${EPREFIX}/usr/$(get_libdir)/wine-${WINE_VARIANT}"
--libexecdir="${MY_LIBEXECDIR}"
--localstatedir="${MY_LOCALSTATEDIR}"
--mandir="${MY_MANDIR}"
--sysconfdir="${EPREFIX}/etc/wine"
$(use_with alsa)
$(use_with capi)
$(use_with lcms cms)
$(use_with cups)
$(use_with ncurses curses)
$(use_with udisks dbus)
$(use_with faudio)
$(use_with fontconfig)
$(use_with ssl gnutls)
$(use_enable gecko mshtml)
$(use_with gcrypt)
$(use_with gphoto2 gphoto)
$(use_with gsm)
$(use_with gssapi)
$(use_with gstreamer)
--without-hal
$(use_with jpeg)
$(use_with kerberos krb5)
$(use_with ldap)
# TODO: Will bug 685172 still need special handling?
$(use_with mingw)
$(use_enable mono mscoree)
$(use_with mp3 mpg123)
$(use_with netapi)
$(use_with nls gettext)
$(use_with openal)
$(use_with opencl)
$(use_with opengl)
$(use_with osmesa)
$(use_with oss)
$(use_with pcap)
$(use_with png)
$(use_with pulseaudio pulse)
$(use_with threads pthread)
$(use_with scanner sane)
$(use_with sdl)
$(use_enable test tests)
$(use_with truetype freetype)
$(use_with udev)
$(use_with unwind)
$(use_with v4l v4l2)
$(use_with vkd3d)
$(use_with vulkan)
$(use_with X x)
$(use_with X xfixes)
$(use_with xcomposite)
$(use_with xinerama)
$(use_with xml)
$(use_with xml xslt)
)
use staging && myconf+=(
--with-xattr
$(use_with themes gtk3)
$(use_with vaapi va)
)
local PKG_CONFIG AR RANLIB
# Avoid crossdev's i686-pc-linux-gnu-pkg-config if building wine32 on amd64; #472038
# set AR and RANLIB to make QA scripts happy; #483342
tc-export PKG_CONFIG AR RANLIB
if use amd64; then
if [[ ${ABI} == amd64 ]]; then
myconf+=( --enable-win64 )
else
myconf+=( --disable-win64 )
fi
# Note: using --with-wine64 results in problems with multilib.eclass
# CC/LD hackery. We're using separate tools instead.
fi
ECONF_SOURCE=${S} \
econf "${myconf[@]}"
emake depend
}
multilib_src_test() {
# FIXME: win32-only; wine64 tests fail with "could not find the Wine loader"
if [[ ${ABI} == x86 ]]; then
if [[ $(id -u) == 0 ]]; then
ewarn "Skipping tests since they cannot be run under the root user."
ewarn "To run the test ${MY_PN} suite, add userpriv to FEATURES in make.conf"
return
fi
WINEPREFIX="${T}/.wine-${ABI}" \
Xemake test
fi
}
multilib_src_install_all() {
local DOCS=( ANNOUNCE AUTHORS README )
add_locale_docs() {
local locale_doc="documentation/README.$1"
[[ ! -e ${locale_doc} ]] || DOCS+=( ${locale_doc} )
}
l10n_for_each_locale_do add_locale_docs
einstalldocs
prune_libtool_files --all
if ! use perl ; then # winedump calls function_grep.pl, and winemaker is a perl script
rm "${D%/}${MY_PREFIX}"/bin/{wine{dump,maker},function_grep.pl} \
"${D%/}${MY_MANDIR}"/man1/wine{dump,maker}.1 || die
fi
# Remove wineconsole if neither backend is installed #551124
if ! use X && ! use ncurses; then
rm "${D%/}${MY_PREFIX}"/bin/wineconsole* || die
rm "${D%/}${MY_MANDIR}"/man1/wineconsole* || die
rm_wineconsole() {
rm "${D%/}${MY_PREFIX}/$(get_libdir)"/wine/{,fakedlls/}wineconsole.exe* || die
}
multilib_foreach_abi rm_wineconsole
fi
use abi_x86_32 && pax-mark psmr "${D%/}${MY_PREFIX}"/bin/wine{,-preloader} #255055
use abi_x86_64 && pax-mark psmr "${D%/}${MY_PREFIX}"/bin/wine64{,-preloader}
# Avoid double prefix from dosym and make_wrapper
MY_PREFIX=${MY_PREFIX#${EPREFIX}}
if use abi_x86_64 && ! use abi_x86_32; then
dosym wine64 "${MY_PREFIX}"/bin/wine # 404331
dosym wine64-preloader "${MY_PREFIX}"/bin/wine-preloader
fi
# Failglob for binloops, shouldn't be necessary, but including to stay safe
eshopts_push -s failglob #615218
# Make wrappers for binaries for handling multiple variants
# Note: wrappers instead of symlinks because some are shell which use basename
local b
for b in "${ED%/}${MY_PREFIX}"/bin/*; do
make_wrapper "${b##*/}-${WINE_VARIANT}" "${MY_PREFIX}/bin/${b##*/}"
done
eshopts_pop
}
pkg_postinst() {
eselect wine register ${P}
if [[ ${PN} == "wine-vanilla" ]]; then
eselect wine register --vanilla ${P} || die
else
if use staging; then
eselect wine register --staging ${P} || die
fi
fi
eselect wine update --all --if-unset || die
xdg_desktop_database_update
if ! use gecko; then
ewarn "Without Wine Gecko, wine prefixes will not have a default"
ewarn "implementation of iexplore. Many older windows applications"
ewarn "rely upon the existence of an iexplore implementation, so"
ewarn "you will likely need to install an external one, like via winetricks"
fi
if ! use mono; then
ewarn "Without Wine Mono, wine prefixes will not have a default"
ewarn "implementation of .NET. Many windows applications rely upon"
ewarn "the existence of a .NET implementation, so you will likely need"
ewarn "to install an external one, like via winetricks"
fi
}
pkg_prerm() {
eselect wine deregister ${P}
if [[ ${PN} == "wine-vanilla" ]]; then
eselect wine deregister --vanilla ${P} || die
else
if use staging; then
eselect wine deregister --staging ${P} || die
fi
fi
eselect wine update --all --if-unset || die
}
pkg_postrm() {
xdg_desktop_database_update
}

@ -44,7 +44,7 @@ fi
LICENSE="LGPL-2.1"
SLOT="${PV}"
IUSE="+abi_x86_32 +abi_x86_64 +alsa capi cups custom-cflags dos elibc_glibc +faudio +fontconfig +gcrypt +gecko gphoto2 gsm gssapi gstreamer +jpeg kerberos kernel_FreeBSD +lcms ldap +mono mp3 ncurses netapi nls odbc openal opencl +opengl osmesa oss +perl pcap pipelight +png prelink pulseaudio +realtime +run-exes samba scanner sdl selinux +ssl staging test themes +threads +truetype udev +udisks +unwind v4l vaapi vkd3d vulkan +X +xcomposite xinerama +xml"
IUSE="+abi_x86_32 +abi_x86_64 +alsa capi cups custom-cflags dos elibc_glibc +faudio +fontconfig +gcrypt +gecko gphoto2 gsm gssapi gstreamer +jpeg kerberos kernel_FreeBSD +lcms ldap mingw +mono mp3 ncurses netapi nls odbc openal opencl +opengl osmesa oss +perl pcap pipelight +png prelink pulseaudio +realtime +run-exes samba scanner sdl selinux +ssl staging test themes +threads +truetype udev +udisks +unwind v4l vaapi vkd3d vulkan +X +xcomposite xinerama +xml"
REQUIRED_USE="|| ( abi_x86_32 abi_x86_64 )
X? ( truetype )
elibc_glibc? ( threads )
@ -297,6 +297,34 @@ pkg_pretend() {
die
fi
fi
if use mingw && use abi_x86_32 && ! has_version "cross-i686-w64-mingw32/gcc"; then
eerror
eerror "USE=\"mingw\" is currently experimental, and requires the"
eerror "'cross-i686-w64-mingw32' compiler and its runtime for 32-bit builds."
eerror
eerror "These can be installed by using 'sys-devel/crossdev':"
eerror
eerror "crossdev --target i686-w64-mingw32"
eerror
eerror "For more information on setting up MinGW, see: https://wiki.gentoo.org/wiki/Mingw"
eerror
die "MinGW build was enabled, but no compiler to support it was found."
fi
if use mingw && use abi_x86_64 && ! has_version "cross-x86_64-w64-mingw32/gcc"; then
eerror
eerror "USE=\"mingw\" is currently experimental, and requires the"
eerror "'cross-x86_64-w64-mingw32' compiler and its runtime for 64-bit builds."
eerror
eerror "These can be installed by using 'sys-devel/crossdev':"
eerror
eerror "crossdev --target x86_64-w64-mingw32"
eerror
eerror "For more information on setting up MinGW, see: https://wiki.gentoo.org/wiki/Mingw"
eerror
die "MinGW build was enabled, but no compiler to support it was found."
fi
}
pkg_setup() {
@ -455,7 +483,8 @@ multilib_src_configure() {
$(use_with jpeg)
$(use_with kerberos krb5)
$(use_with ldap)
--without-mingw # linux LDFLAGS leak in mingw32: bug #685172
# TODO: Will bug 685172 still need special handling?
$(use_with mingw)
$(use_enable mono mscoree)
$(use_with mp3 mpg123)
$(use_with netapi)

@ -4,6 +4,10 @@
<maintainer type="project">
<email>wine@gentoo.org</email>
<name>Wine</name>
<description>
This package must be kept in sync with repo/proj/wine repository.
Any changes need to be run past the maintainer to ensure the two repositories are kept in sync.
</description>
</maintainer>
<longdescription>
Wine is an Open Source implementation of the Windows API on top of X and Unix.
@ -20,6 +24,7 @@ This variant of the Wine packaging does not include external patchsets
<flag name="gecko">Add support for the Gecko engine when using iexplore</flag>
<flag name="gssapi">Use GSSAPI (Kerberos SSP support)</flag>
<flag name="gstreamer">Use <pkg>media-libs/gstreamer</pkg> to provide DirectShow functionality;</flag>
<flag name="mingw">Build PE files using a MinGW cross compiler</flag>
<flag name="mono">Add support for .NET using Wine's Mono add-on</flag>
<flag name="netapi">Use libnetapi from <pkg>net-fs/samba</pkg> to support Windows networks in netapi32.dll</flag>
<flag name="opencl">Enable OpenCL support</flag>

@ -0,0 +1,568 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
PLOCALES="ar ast bg ca cs da de el en en_US eo es fa fi fr he hi hr hu it ja ko lt ml nb_NO nl or pa pl pt_BR pt_PT rm ro ru si sk sl sr_RS@cyrillic sr_RS@latin sv ta te th tr uk wa zh_CN zh_TW"
PLOCALE_BACKUP="en"
inherit autotools eapi7-ver estack eutils flag-o-matic gnome2-utils l10n multilib multilib-minimal pax-utils toolchain-funcs virtualx xdg-utils
MY_PN="${PN%%-*}"
MY_P="${MY_PN}-${PV}"
if [[ ${PV} == "9999" ]] ; then
EGIT_REPO_URI="https://source.winehq.org/git/wine.git"
EGIT_BRANCH="master"
inherit git-r3
SRC_URI=""
#KEYWORDS=""
else
MAJOR_V=$(ver_cut 1)
SRC_URI="https://dl.winehq.org/wine/source/${MAJOR_V}.x/${MY_P}.tar.xz"
KEYWORDS="-* ~amd64 ~x86"
fi
S="${WORKDIR}/${MY_P}"
GWP_V="20200523"
PATCHDIR="${WORKDIR}/gentoo-wine-patches"
DESCRIPTION="Free implementation of Windows(tm) on Unix, without external patchsets"
HOMEPAGE="https://www.winehq.org/"
SRC_URI="${SRC_URI}
https://dev.gentoo.org/~sarnex/distfiles/wine/gentoo-wine-patches-${GWP_V}.tar.xz
"
LICENSE="LGPL-2.1"
SLOT="${PV}"
IUSE="+abi_x86_32 +abi_x86_64 +alsa capi cups custom-cflags dos elibc_glibc +faudio +fontconfig +gecko gphoto2 gsm gssapi gstreamer +jpeg kerberos kernel_FreeBSD +lcms ldap mingw +mono mp3 ncurses netapi nls odbc openal opencl +opengl osmesa oss +perl pcap +png prelink pulseaudio +realtime +run-exes samba scanner sdl selinux +ssl test +threads +truetype udev +udisks +unwind v4l vkd3d vulkan +X +xcomposite xinerama +xml"
REQUIRED_USE="|| ( abi_x86_32 abi_x86_64 )
X? ( truetype )
elibc_glibc? ( threads )
osmesa? ( opengl )
test? ( abi_x86_32 )
vkd3d? ( vulkan )" # osmesa-opengl #286560 # X-truetype #551124
# FIXME: the test suite is unsuitable for us; many tests require net access
# or fail due to Xvfb's opengl limitations.
RESTRICT="test"
COMMON_DEPEND="
X? (
x11-libs/libXcursor[${MULTILIB_USEDEP}]
x11-libs/libXext[${MULTILIB_USEDEP}]
x11-libs/libXfixes[${MULTILIB_USEDEP}]
x11-libs/libXrandr[${MULTILIB_USEDEP}]
x11-libs/libXi[${MULTILIB_USEDEP}]
x11-libs/libXxf86vm[${MULTILIB_USEDEP}]
)
alsa? ( media-libs/alsa-lib[${MULTILIB_USEDEP}] )
capi? ( net-libs/libcapi[${MULTILIB_USEDEP}] )
cups? ( net-print/cups:=[${MULTILIB_USEDEP}] )
faudio? ( app-emulation/faudio:=[${MULTILIB_USEDEP}] )
fontconfig? ( media-libs/fontconfig:=[${MULTILIB_USEDEP}] )
gphoto2? ( media-libs/libgphoto2:=[${MULTILIB_USEDEP}] )
gsm? ( media-sound/gsm:=[${MULTILIB_USEDEP}] )
gssapi? ( virtual/krb5[${MULTILIB_USEDEP}] )
gstreamer? (
media-libs/gstreamer:1.0[${MULTILIB_USEDEP}]
media-plugins/gst-plugins-meta:1.0[${MULTILIB_USEDEP}]
)
jpeg? ( virtual/jpeg:0=[${MULTILIB_USEDEP}] )
kerberos? ( virtual/krb5[${MULTILIB_USEDEP}] )
lcms? ( media-libs/lcms:2=[${MULTILIB_USEDEP}] )
ldap? ( net-nds/openldap:=[${MULTILIB_USEDEP}] )
mp3? ( >=media-sound/mpg123-1.5.0[${MULTILIB_USEDEP}] )
ncurses? ( >=sys-libs/ncurses-5.2:0=[${MULTILIB_USEDEP}] )
netapi? ( net-fs/samba[netapi(+),${MULTILIB_USEDEP}] )
nls? ( sys-devel/gettext[${MULTILIB_USEDEP}] )
odbc? ( dev-db/unixODBC:=[${MULTILIB_USEDEP}] )
openal? ( media-libs/openal:=[${MULTILIB_USEDEP}] )
opencl? ( virtual/opencl[${MULTILIB_USEDEP}] )
opengl? (
virtual/glu[${MULTILIB_USEDEP}]
virtual/opengl[${MULTILIB_USEDEP}]
)
osmesa? ( >=media-libs/mesa-13[osmesa,${MULTILIB_USEDEP}] )
pcap? ( net-libs/libpcap[${MULTILIB_USEDEP}] )
png? ( media-libs/libpng:0=[${MULTILIB_USEDEP}] )
pulseaudio? ( media-sound/pulseaudio[${MULTILIB_USEDEP}] )
scanner? ( media-gfx/sane-backends:=[${MULTILIB_USEDEP}] )
sdl? ( media-libs/libsdl2:=[haptic,joystick,${MULTILIB_USEDEP}] )
ssl? ( net-libs/gnutls:=[${MULTILIB_USEDEP}] )
truetype? ( >=media-libs/freetype-2.0.0[${MULTILIB_USEDEP}] )
udev? ( virtual/libudev:=[${MULTILIB_USEDEP}] )
udisks? ( sys-apps/dbus[${MULTILIB_USEDEP}] )
unwind? ( sys-libs/libunwind[${MULTILIB_USEDEP}] )
v4l? ( media-libs/libv4l[${MULTILIB_USEDEP}] )
vkd3d? ( >=app-emulation/vkd3d-1.2[${MULTILIB_USEDEP}] )
vulkan? ( media-libs/vulkan-loader[${MULTILIB_USEDEP}] )
xcomposite? ( x11-libs/libXcomposite[${MULTILIB_USEDEP}] )
xinerama? ( x11-libs/libXinerama[${MULTILIB_USEDEP}] )
xml? (
dev-libs/libxml2[${MULTILIB_USEDEP}]
dev-libs/libxslt[${MULTILIB_USEDEP}]
)"
RDEPEND="${COMMON_DEPEND}
app-emulation/wine-desktop-common
>app-eselect/eselect-wine-0.3
!app-emulation/wine:0
dos? ( >=games-emulation/dosbox-0.74_p20160629 )
gecko? ( app-emulation/wine-gecko:2.47.1[abi_x86_32?,abi_x86_64?] )
mono? ( app-emulation/wine-mono:5.1.1 )
perl? (
dev-lang/perl
dev-perl/XML-Simple
)
pulseaudio? (
realtime? ( sys-auth/rtkit )
)
samba? ( >=net-fs/samba-3.0.25[winbind] )
selinux? ( sec-policy/selinux-wine )
udisks? ( sys-fs/udisks:2 )"
# tools/make_requests requires perl
DEPEND="${COMMON_DEPEND}
sys-devel/flex
>=sys-kernel/linux-headers-2.6
virtual/pkgconfig
virtual/yacc
X? ( x11-base/xorg-proto )
prelink? ( sys-devel/prelink )
xinerama? ( x11-base/xorg-proto )"
# These use a non-standard "Wine" category, which is provided by
# /etc/xdg/applications-merged/wine.menu
QA_DESKTOP_FILE="usr/share/applications/wine-browsedrive.desktop
usr/share/applications/wine-notepad.desktop
usr/share/applications/wine-uninstaller.desktop
usr/share/applications/wine-winecfg.desktop"
PATCHES=(
"${PATCHDIR}/patches/${MY_PN}-5.0-winegcc.patch" #260726
"${PATCHDIR}/patches/${MY_PN}-4.7-multilib-portage.patch" #395615
"${PATCHDIR}/patches/${MY_PN}-2.0-multislot-apploader.patch" #310611
"${PATCHDIR}/patches/${MY_PN}-5.9-Revert-makedep-Install-also-generated-typelib-for-in.patch"
)
PATCHES_BIN=()
# https://bugs.gentoo.org/show_bug.cgi?id=635222
if [[ ${#PATCHES_BIN[@]} -ge 1 ]] || [[ ${PV} == 9999 ]]; then
DEPEND+=" dev-util/patchbin"
fi
wine_compiler_check() {
[[ ${MERGE_TYPE} = "binary" ]] && return 0
# GCC-specific bugs
if tc-is-gcc; then
# bug #549768
if use abi_x86_64 && [[ $(gcc-major-version) = 5 && $(gcc-minor-version) -le 2 ]]; then
ebegin "Checking for gcc-5 ms_abi compiler bug"
$(tc-getCC) -O2 "${PATCHDIR}/files/pr66838.c" -o "${T}"/pr66838 || die
# Run in subshell to prevent "Aborted" message
( "${T}"/pr66838 || false ) >/dev/null 2>&1
if ! eend $?; then
eerror "64-bit wine cannot be built with gcc-5.1 or initial patchset of 5.2.0"
eerror "due to compiler bugs; please re-emerge the latest gcc-5.2.x ebuild,"
eerror "or use gcc-config to select a different compiler version."
eerror "See https://bugs.gentoo.org/549768"
eerror
return 1
fi
fi
# bug #574044
if use abi_x86_64 && [[ $(gcc-major-version) = 5 && $(gcc-minor-version) = 3 ]]; then
ebegin "Checking for gcc-5-3 stack realignment compiler bug"
# Compile in subshell to prevent "Aborted" message
( $(tc-getCC) -O2 -mincoming-stack-boundary=3 "${PATCHDIR}/files/pr69140.c" -o "${T}"/pr69140 ) >/dev/null 2>&1
if ! eend $?; then
eerror "Wine cannot be built with this version of gcc-5.3"
eerror "due to compiler bugs; please re-emerge the latest gcc-5.3.x ebuild,"
eerror "or use gcc-config to select a different compiler version."
eerror "See https://bugs.gentoo.org/574044"
eerror
return 1
fi
fi
fi
# Ensure compiler support
if use abi_x86_64; then
ebegin "Checking for 64-bit compiler with builtin_ms_va_list support"
# Compile in subshell to prevent "Aborted" message
( $(tc-getCC) -O2 "${PATCHDIR}/files/builtin_ms_va_list.c" -o "${T}"/builtin_ms_va_list >/dev/null 2>&1)
if ! eend $?; then
eerror "This version of $(tc-getCC) does not support builtin_ms_va_list, can't enable 64-bit wine"
eerror
eerror "You need gcc-4.4+ or clang 3.8+ to build 64-bit wine"
eerror
return 1
fi
fi
}
wine_build_environment_check() {
[[ ${MERGE_TYPE} = "binary" ]] && return 0
if use abi_x86_64; then
if tc-is-gcc && [[ $(gcc-major-version) -lt 4 || ( $(gcc-major-version) -eq 4 && $(gcc-minor-version) -lt 4 ) ]]; then
eerror "You need gcc-4.4+ to compile 64-bit wine"
die
elif tc-is-clang && [[ $(clang-major-version) -lt 3 || ( $(clang-major-version) -eq 3 && $(clang-minor-version) -lt 8 ) ]]; then
eerror "You need clang-3.8+ to compile 64-bit wine"
die
fi
fi
if tc-is-gcc && [[ $(gcc-major-version) -eq 5 && $(gcc-minor-version) -le 3 ]]; then
ewarn "GCC-5.0-5.3 suffered from compiler bugs and are no longer supported by"
ewarn "Gentoo's Toolchain Team. If your ebuild fails the compiler checks in"
ewarn "the configure phase, either update your compiler or switch to <5.0 || >=5.4"
fi
if tc-is-gcc && [[ $(gcc-major-version) -eq 5 && $(gcc-minor-version) -eq 4 ]]; then
if has "-march=i686" ${CFLAGS} && ! has "-mtune=generic" ${CFLAGS}; then
ewarn "Compilation can hang with CFLAGS=\"-march=i686\". You can temporarily work"
ewarn "around this by adding \"-mtune=generic\" to your CFLAGS for wine."
ewarn "See package.env in man 5 portage for more information on how to do this."
ewarn "See https://bugs.gentoo.org/show_bug.cgi?id=613128 for more details"
fi
fi
if use abi_x86_32 && use opencl && [[ "$(eselect opencl show 2> /dev/null)" == "intel" ]]; then
eerror "You cannot build wine with USE=opencl because intel-ocl-sdk is 64-bit only."
eerror "See https://bugs.gentoo.org/487864 for more details."
eerror
return 1
fi
}
wine_env_vcs_vars() {
local pn_live_var="${PN//[-+]/_}_LIVE_COMMIT"
local pn_live_val="${pn_live_var}"
eval pn_live_val='$'${pn_live_val}
if [[ ! -z ${EGIT_COMMIT} ]]; then
eerror "Commits must now be specified using the environmental variables"
eerror "EGIT_OVERRIDE_COMMIT_WINE"
eerror
return 1
fi
}
pkg_pretend() {
wine_build_environment_check || die
# Verify OSS support
if use oss && ! use kernel_FreeBSD; then
if ! has_version ">=media-sound/oss-4"; then
eerror "You cannot build wine with USE=oss without having support from a"
eerror "FreeBSD kernel or >=media-sound/oss-4 (only available through external repos)"
eerror
die
fi
fi
if use mingw && use abi_x86_32 && ! has_version "cross-i686-w64-mingw32/gcc"; then
eerror
eerror "USE=\"mingw\" is currently experimental, and requires the"
eerror "'cross-i686-w64-mingw32' compiler and its runtime for 32-bit builds."
eerror
eerror "These can be installed by using 'sys-devel/crossdev':"
eerror
eerror "crossdev --target i686-w64-mingw32"
eerror
eerror "For more information on setting up MinGW, see: https://wiki.gentoo.org/wiki/Mingw"
eerror
die "MinGW build was enabled, but no compiler to support it was found."
fi
if use mingw && use abi_x86_64 && ! has_version "cross-x86_64-w64-mingw32/gcc"; then
eerror
eerror "USE=\"mingw\" is currently experimental, and requires the"
eerror "'cross-x86_64-w64-mingw32' compiler and its runtime for 64-bit builds."
eerror
eerror "These can be installed by using 'sys-devel/crossdev':"
eerror
eerror "crossdev --target x86_64-w64-mingw32"
eerror
eerror "For more information on setting up MinGW, see: https://wiki.gentoo.org/wiki/Mingw"
eerror
die "MinGW build was enabled, but no compiler to support it was found."
fi
}
pkg_setup() {
wine_build_environment_check || die
wine_env_vcs_vars || die
WINE_VARIANT="${PN#wine}-${PV}"
WINE_VARIANT="${WINE_VARIANT#-}"
MY_PREFIX="${EPREFIX}/usr/lib/wine-${WINE_VARIANT}"
MY_DATAROOTDIR="${EPREFIX}/usr/share/wine-${WINE_VARIANT}"
MY_DATADIR="${MY_DATAROOTDIR}"
MY_DOCDIR="${EPREFIX}/usr/share/doc/${PF}"
MY_INCLUDEDIR="${EPREFIX}/usr/include/wine-${WINE_VARIANT}"
MY_LIBEXECDIR="${EPREFIX}/usr/libexec/wine-${WINE_VARIANT}"
MY_LOCALSTATEDIR="${EPREFIX}/var/wine-${WINE_VARIANT}"
MY_MANDIR="${MY_DATADIR}/man"
}
src_unpack() {
if [[ ${PV} == "9999" ]] ; then
EGIT_CHECKOUT_DIR="${S}" git-r3_src_unpack
fi
default
l10n_find_plocales_changes "${S}/po" "" ".po"
}
src_prepare() {
eapply_bin(){
local patch
for patch in ${PATCHES_BIN[@]}; do
patchbin --nogit < "${patch}" || die
done
}
local md5="$(md5sum server/protocol.def)"
default
eapply_bin
eautoreconf
# Modification of the server protocol requires regenerating the server requests
if [[ "$(md5sum server/protocol.def)" != "${md5}" ]]; then
einfo "server/protocol.def was patched; running tools/make_requests"
tools/make_requests || die #432348
fi
sed -i '/^UPDATE_DESKTOP_DATABASE/s:=.*:=true:' tools/Makefile.in || die
if ! use run-exes; then
sed -i '/^MimeType/d' loader/wine.desktop || die #117785
fi
# Edit wine.desktop to work for specific variant
sed -e "/^Exec=/s/wine /wine-${WINE_VARIANT} /" -i loader/wine.desktop || die
# hi-res default icon, #472990, https://bugs.winehq.org/show_bug.cgi?id=24652
cp "${PATCHDIR}/files/oic_winlogo.ico" dlls/user32/resources/ || die
l10n_get_locales > po/LINGUAS || die # otherwise wine doesn't respect LINGUAS
# Fix manpage generation for locales #469418 and abi_x86_64 #617864
# Duplicate manpages input files for wine64
local f
for f in loader/*.man.in; do
cp ${f} ${f/wine/wine64} || die
done
# Add wine64 manpages to Makefile
if use abi_x86_64; then
sed -i "/wine.man.in/i \
\\\twine64.man.in \\\\" loader/Makefile.in || die
sed -i -E 's/(.*wine)(.*\.UTF-8\.man\.in.*)/&\
\164\2/' loader/Makefile.in || die
fi
rm_man_file(){
local file="${1}"
loc=${2}
sed -i "/${loc}\.UTF-8\.man\.in/d" "${file}" || die
}
while read f; do
l10n_for_each_disabled_locale_do rm_man_file "${f}"
done < <(find -name "Makefile.in" -exec grep -q "UTF-8.man.in" "{}" \; -print)
}
src_configure() {
wine_compiler_check || die
export LDCONFIG=/bin/true
use custom-cflags || strip-flags
multilib-minimal_src_configure
}
multilib_src_configure() {
local myconf=(
--prefix="${MY_PREFIX}"
--datarootdir="${MY_DATAROOTDIR}"
--datadir="${MY_DATADIR}"
--docdir="${MY_DOCDIR}"
--includedir="${MY_INCLUDEDIR}"
--libdir="${EPREFIX}/usr/$(get_libdir)/wine-${WINE_VARIANT}"
--libexecdir="${MY_LIBEXECDIR}"
--localstatedir="${MY_LOCALSTATEDIR}"
--mandir="${MY_MANDIR}"
--sysconfdir="${EPREFIX}/etc/wine"
$(use_with alsa)
$(use_with capi)
$(use_with lcms cms)
$(use_with cups)
$(use_with ncurses curses)
$(use_with udisks dbus)
$(use_with faudio)
$(use_with fontconfig)
$(use_with ssl gnutls)
$(use_enable gecko mshtml)
$(use_with gphoto2 gphoto)
$(use_with gsm)
$(use_with gssapi)
$(use_with gstreamer)
--without-hal
$(use_with jpeg)
$(use_with kerberos krb5)
$(use_with ldap)
# TODO: Will bug 685172 still need special handling?
$(use_with mingw)
$(use_enable mono mscoree)
$(use_with mp3 mpg123)
$(use_with netapi)
$(use_with nls gettext)
$(use_with openal)
$(use_with opencl)
$(use_with opengl)
$(use_with osmesa)
$(use_with oss)
$(use_with pcap)
$(use_with png)
$(use_with pulseaudio pulse)
$(use_with threads pthread)
$(use_with scanner sane)
$(use_with sdl)
$(use_enable test tests)
$(use_with truetype freetype)
$(use_with udev)
$(use_with unwind)
$(use_with v4l v4l2)
$(use_with vkd3d)
$(use_with vulkan)
$(use_with X x)
$(use_with X xfixes)
$(use_with xcomposite)
$(use_with xinerama)
$(use_with xml)
$(use_with xml xslt)
)
local PKG_CONFIG
# Avoid crossdev's i686-pc-linux-gnu-pkg-config if building wine32 on amd64; #472038
tc-export PKG_CONFIG
if use amd64; then
if [[ ${ABI} == amd64 ]]; then
myconf+=( --enable-win64 )
else
myconf+=( --disable-win64 )
fi
# Note: using --with-wine64 results in problems with multilib.eclass
# CC/LD hackery. We're using separate tools instead.
fi
ECONF_SOURCE=${S} \
econf "${myconf[@]}"
emake depend
}
multilib_src_test() {
# FIXME: win32-only; wine64 tests fail with "could not find the Wine loader"
if [[ ${ABI} == x86 ]]; then
if [[ $(id -u) == 0 ]]; then
ewarn "Skipping tests since they cannot be run under the root user."
ewarn "To run the test ${MY_PN} suite, add userpriv to FEATURES in make.conf"
return
fi
WINEPREFIX="${T}/.wine-${ABI}" \
Xemake test
fi
}
multilib_src_install_all() {
local DOCS=( ANNOUNCE AUTHORS README )
add_locale_docs() {
local locale_doc="documentation/README.$1"
[[ ! -e ${locale_doc} ]] || DOCS+=( ${locale_doc} )
}
l10n_for_each_locale_do add_locale_docs
einstalldocs
prune_libtool_files --all
if ! use perl ; then # winedump calls function_grep.pl, and winemaker is a perl script
rm "${D%/}${MY_PREFIX}"/bin/{wine{dump,maker},function_grep.pl} \
"${D%/}${MY_MANDIR}"/man1/wine{dump,maker}.1 || die
fi
# Remove wineconsole if neither backend is installed #551124
if ! use X && ! use ncurses; then
rm "${D%/}${MY_PREFIX}"/bin/wineconsole* || die
rm "${D%/}${MY_MANDIR}"/man1/wineconsole* || die
rm_wineconsole() {
rm "${D%/}${MY_PREFIX}/$(get_libdir)"/wine/{,fakedlls/}wineconsole.exe* || die
}
multilib_foreach_abi rm_wineconsole
fi
use abi_x86_32 && pax-mark psmr "${D%/}${MY_PREFIX}"/bin/wine{,-preloader} #255055
use abi_x86_64 && pax-mark psmr "${D%/}${MY_PREFIX}"/bin/wine64{,-preloader}
# Avoid double prefix from dosym and make_wrapper
MY_PREFIX=${MY_PREFIX#${EPREFIX}}
if use abi_x86_64 && ! use abi_x86_32; then
dosym wine64 "${MY_PREFIX}"/bin/wine # 404331
dosym wine64-preloader "${MY_PREFIX}"/bin/wine-preloader
fi
# Failglob for binloops, shouldn't be necessary, but including to stay safe
eshopts_push -s failglob #615218
# Make wrappers for binaries for handling multiple variants
# Note: wrappers instead of symlinks because some are shell which use basename
local b
for b in "${ED%/}${MY_PREFIX}"/bin/*; do
make_wrapper "${b##*/}-${WINE_VARIANT}" "${MY_PREFIX}/bin/${b##*/}"
done
eshopts_pop
}
pkg_postinst() {
eselect wine register ${P}
if [[ ${PN} == "wine-vanilla" ]]; then
eselect wine register --vanilla ${P} || die
fi
eselect wine update --all --if-unset || die
xdg_desktop_database_update
if ! use gecko; then
ewarn "Without Wine Gecko, wine prefixes will not have a default"
ewarn "implementation of iexplore. Many older windows applications"
ewarn "rely upon the existence of an iexplore implementation, so"
ewarn "you will likely need to install an external one, like via winetricks"
fi
if ! use mono; then
ewarn "Without Wine Mono, wine prefixes will not have a default"
ewarn "implementation of .NET. Many windows applications rely upon"
ewarn "the existence of a .NET implementation, so you will likely need"
ewarn "to install an external one, like via winetricks"
fi
}
pkg_prerm() {
eselect wine deregister ${P}
if [[ ${PN} == "wine-vanilla" ]]; then
eselect wine deregister --vanilla ${P} || die
fi
eselect wine update --all --if-unset || die
}
pkg_postrm() {
xdg_desktop_database_update
}

@ -35,7 +35,7 @@ SRC_URI="${SRC_URI}
LICENSE="LGPL-2.1"
SLOT="${PV}"
IUSE="+abi_x86_32 +abi_x86_64 +alsa capi cups custom-cflags dos elibc_glibc +faudio +fontconfig +gecko gphoto2 gsm gssapi gstreamer +jpeg kerberos kernel_FreeBSD +lcms ldap +mono mp3 ncurses netapi nls odbc openal opencl +opengl osmesa oss +perl pcap +png prelink pulseaudio +realtime +run-exes samba scanner sdl selinux +ssl test +threads +truetype udev +udisks +unwind v4l vkd3d vulkan +X +xcomposite xinerama +xml"
IUSE="+abi_x86_32 +abi_x86_64 +alsa capi cups custom-cflags dos elibc_glibc +faudio +fontconfig +gecko gphoto2 gsm gssapi gstreamer +jpeg kerberos kernel_FreeBSD +lcms ldap mingw +mono mp3 ncurses netapi nls odbc openal opencl +opengl osmesa oss +perl pcap +png prelink pulseaudio +realtime +run-exes samba scanner sdl selinux +ssl test +threads +truetype udev +udisks +unwind v4l vkd3d vulkan +X +xcomposite xinerama +xml"
REQUIRED_USE="|| ( abi_x86_32 abi_x86_64 )
X? ( truetype )
elibc_glibc? ( threads )
@ -261,6 +261,34 @@ pkg_pretend() {
die
fi
fi
if use mingw && use abi_x86_32 && ! has_version "cross-i686-w64-mingw32/gcc"; then
eerror
eerror "USE=\"mingw\" is currently experimental, and requires the"
eerror "'cross-i686-w64-mingw32' compiler and its runtime for 32-bit builds."
eerror
eerror "These can be installed by using 'sys-devel/crossdev':"
eerror
eerror "crossdev --target i686-w64-mingw32"
eerror
eerror "For more information on setting up MinGW, see: https://wiki.gentoo.org/wiki/Mingw"
eerror
die "MinGW build was enabled, but no compiler to support it was found."
fi
if use mingw && use abi_x86_64 && ! has_version "cross-x86_64-w64-mingw32/gcc"; then
eerror
eerror "USE=\"mingw\" is currently experimental, and requires the"
eerror "'cross-x86_64-w64-mingw32' compiler and its runtime for 64-bit builds."
eerror
eerror "These can be installed by using 'sys-devel/crossdev':"
eerror
eerror "crossdev --target x86_64-w64-mingw32"
eerror
eerror "For more information on setting up MinGW, see: https://wiki.gentoo.org/wiki/Mingw"
eerror
die "MinGW build was enabled, but no compiler to support it was found."
fi
}
pkg_setup() {
@ -388,7 +416,8 @@ multilib_src_configure() {
$(use_with jpeg)
$(use_with kerberos krb5)
$(use_with ldap)
--without-mingw # linux LDFLAGS leak in mingw32: bug #685172
# TODO: Will bug 685172 still need special handling?
$(use_with mingw)
$(use_enable mono mscoree)
$(use_with mp3 mpg123)
$(use_with netapi)

Binary file not shown.

@ -11,5 +11,7 @@
</maintainer>
<upstream>
<bugs-to>https://gitlab.freedesktop.org/uchardet/uchardet/-/issues</bugs-to>
<doc>https://www.freedesktop.org/wiki/Software/uchardet/#usage</doc>
<remote-id type="gitlab">uchardet/uchardet</remote-id>
</upstream>
</pkgmetadata>

Binary file not shown.

@ -1,15 +1,23 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>coppens.matthias.abc@gmail.com</email>
<name>Matthias Coppens</name>
</maintainer>
<maintainer type="project">
<email>proxy-maint@gentoo.org</email>
<name>Proxy Maintainers</name>
</maintainer>
<upstream>
<remote-id type="bitbucket">hroptatyr/dateutils</remote-id>
</upstream>
<maintainer type="person">
<email>coppens.matthias.abc@gmail.com</email>
<name>Matthias Coppens</name>
</maintainer>
<maintainer type="project">
<email>proxy-maint@gentoo.org</email>
<name>Proxy Maintainers</name>
</maintainer>
<upstream>
<maintainer>
<name>Sebastian Freundt</name>
<email>devel@fresse.org</email>
</maintainer>
<changelog>https://www.fresse.org/dateutils/changelog.html</changelog>
<doc>https://www.fresse.org/dateutils/#examples</doc>
<remote-id type="github">hroptatyr/dateutils</remote-id>
<remote-id type="bitbucket">hroptatyr/dateutils</remote-id>
</upstream>
</pkgmetadata>

Binary file not shown.

@ -1 +1,2 @@
DIST elogv-0.7.8.tar.gz 19554 BLAKE2B 653a1dd8d5cb142c78c27ad4c7110a7dac666eed649213ef62c1548d5248c4add561242290a59178470736cffc9ac15fb7ee796a2954239ba382001f1e6c9c4f SHA512 be90f01b4d2e114608b13aeba78ab368af6ed66ca329de6952d7f422c90356fd1c6988827f0c60ee66636ae92e089689c7cbd725f6eb20545747fb24d0d1daf2
DIST elogv-0.7.9.tar.gz 19556 BLAKE2B 5d5f1a4adab09cf8b56ca3433b2a1cd0d3572345ff92f34b6b3ad175178161c36531bf9211563f4ad18191c6ff99c2cdcf9c3d188eca293a1698157e0a9f04a2 SHA512 703d1e8f55f5ee17a393f3a331ee38ef1d4e4c918c316055d5e2297b96dbe7de0ca6df864f462520f2087ed1a7bb7f43db56bfd3864a865d349516694522a686

@ -1,49 +0,0 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python3_{6,7} )
PYTHON_REQ_USE="ncurses"
inherit distutils-r1
DESCRIPTION="Curses based utility to parse the contents of elogs created by Portage"
HOMEPAGE="https://github.com/gentoo/elogv"
SRC_URI="https://github.com/gentoo/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~alpha amd64 ~arm ppc ~ppc64 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
DOCS=( README )
src_install() {
distutils-r1_src_install
# unset LINGUAS => install all languages
# empty LINGUAS => install none
local i
if [[ -n "${LINGUAS+x}" ]] ; then
for i in $(ls "${ED}"/usr/share/locale/) ; do
if ! has ${i} ${LINGUAS} ; then
rm -rf "${ED}"/usr/share/{locale,man}/${i}
fi
done
fi
}
pkg_postinst() {
elog "In order to use this software, you need to activate"
elog "Portage's elog features. Required is"
elog " PORTAGE_ELOG_SYSTEM=\"save\" "
elog "and at least one out of "
elog " PORTAGE_ELOG_CLASSES=\"warn error info log qa\""
elog "More information on the elog system can be found"
elog "in ${EPREFIX}/usr/share/portage/config/make.conf.example"
elog
elog "To operate properly this software needs the directory"
elog "${PORT_LOGDIR:-${EPREFIX}/var/log/portage}/elog created, belonging to group portage."
elog "To start the software as a user, add yourself to the portage"
elog "group."
elog
}

@ -10,7 +10,7 @@ DISTUTILS_USE_SETUPTOOLS=no
inherit distutils-r1
DESCRIPTION="Curses based utility to parse the contents of elogs created by Portage"
HOMEPAGE="https://github.com/gentoo/elogv"
HOMEPAGE="https://gitweb.gentoo.org/proj/elogv.git/"
SRC_URI="https://github.com/gentoo/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="GPL-2"

@ -3,17 +3,19 @@
EAPI=7
PYTHON_COMPAT=( python3_{6,7,8} )
PYTHON_COMPAT=( python3_{6,7,8,9} pypy3 )
PYTHON_REQ_USE="ncurses"
DISTUTILS_USE_SETUPTOOLS=no
inherit distutils-r1
DESCRIPTION="Curses based utility to parse the contents of elogs created by Portage"
HOMEPAGE="https://github.com/gentoo/elogv"
HOMEPAGE="https://gitweb.gentoo.org/proj/elogv.git/"
SRC_URI="https://github.com/gentoo/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
RDEPEND="sys-apps/portage[${PYTHON_USEDEP}]"
DEPEND="${RDEPEND}"

@ -9,7 +9,7 @@ SRC_URI="https://www.xs4all.nl/~rooversj/gentoo/${P}.tar.bz2"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 sparc x86"
KEYWORDS="~alpha ~amd64 arm ~arm64 hppa ppc ppc64 sparc x86"
S=${WORKDIR}

@ -15,7 +15,7 @@ if [[ ${PV} == *9999 ]]; then
EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/portage-utils.git"
else
SRC_URI="https://dev.gentoo.org/~grobian/distfiles/${P}.tar.xz"
KEYWORDS="~alpha ~amd64 arm ~arm64 hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
KEYWORDS="~alpha ~amd64 arm ~arm64 hppa ~ia64 ~m68k ~mips ppc ~ppc64 ~riscv ~s390 ~sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
fi
RDEPEND="

Binary file not shown.

@ -15,7 +15,7 @@ SRC_URI="
LICENSE="BSD"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
KEYWORDS="~alpha ~amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="nls doc"
RESTRICT="test"

Binary file not shown.

@ -12,7 +12,7 @@ SRC_URI="mirror://sourceforge/${PN}/${MY_P}.tar.bz2"
LICENSE="MPL-2.0"
SLOT="0"
KEYWORDS="amd64 ~arm ~arm64 ~ppc64 x86"
KEYWORDS="amd64 ~arm arm64 ~ppc64 x86"
IUSE="doc test tools"
RESTRICT="!test? ( test )"

@ -8,7 +8,7 @@ if [[ ${PV} = 9999 ]]; then
inherit autotools git-r3
else
SRC_URI="mirror://sourceforge/${PN}/${P}.tar.xz"
KEYWORDS="amd64 ~arm ~arm64 ~ppc64 x86"
KEYWORDS="amd64 ~arm arm64 ~ppc64 x86"
fi
DESCRIPTION="Library parsing many pre-OSX MAC text formats"

@ -8,7 +8,7 @@ HOMEPAGE="https://poppler.freedesktop.org/"
SRC_URI="https://poppler.freedesktop.org/${P}.tar.gz"
LICENSE="BSD GPL-2 MIT"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~x64-solaris ~x86-solaris"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~x64-solaris ~x86-solaris"
SLOT="0"
IUSE=""

@ -11,7 +11,7 @@ if [[ ${PV} == *9999* ]] ; then
SLOT="0/9999"
else
SRC_URI="https://poppler.freedesktop.org/${P}.tar.xz"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
SLOT="0/104" # CHECK THIS WHEN BUMPING!!! SUBSLOT IS libpoppler.so SOVERSION
fi

Binary file not shown.

@ -1 +1,2 @@
DIST pg_activity-1.6.1.tar.gz 127376 BLAKE2B 4e9c055c2b7d7eb78ee735124284d4d34c70a067011c2bdd3d960a7e2ff59cb799fb4a3ec1a51d7ebd0e921f5d46e85a28625d3a1a7efc281fc751702f2b58b6 SHA512 4a67443521afe88283315be1c2b3d3f19df3cb2cb3e4e059149775f5dd45925dbab8bd34525878ac883f8d007da08fbdfe3d23db9a6e1f17a4af4aa9b9c96338
DIST pg_activity-1.6.2.tar.gz 127561 BLAKE2B 5ddebd3068ddc33196903892c01b947ffc50ecff7ec790e196626e87ee8933ff79242e3ba61c207ea1020535c5d85dbbc4ac9e4825a19ab98004bb27ea0b6a6c SHA512 fd743f369201c6ec3762373c39969b2b7632d79a8fb9c8ebd12a88b66b91915c30e445e93162844b4a176cf7e13009c9c8136e973180b00e7cc708ecd66b4853

@ -0,0 +1,24 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
PYTHON_COMPAT=( python3_6 python3_7 python3_8 )
inherit distutils-r1
DESCRIPTION="Realtime PostgreSQL database server monitoring tool"
HOMEPAGE="https://github.com/dalibo/pg_activity"
SRC_URI="https://github.com/dalibo/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
KEYWORDS="~amd64"
SLOT="0"
LICENSE="POSTGRESQL"
DEPEND=""
RDEPEND="dev-python/psutil[${PYTHON_USEDEP}]
dev-python/setuptools[${PYTHON_USEDEP}]
dev-python/psycopg:2[${PYTHON_USEDEP}]"
src_install() {
distutils-r1_src_install
doman docs/man/${PN}.1
}

@ -1,2 +1,2 @@
DIST pgbadger-10.3.tar.gz 1645573 BLAKE2B 583ad35f416b6d989996ae48500dcee5734bc4867095abe1eb49be971c6190cf68dd4e127a47163c8ee49400cdf2fcee14645c98f4853b6f66c2bef0db0b83e4 SHA512 f8aac47d92ddb92292c572c47d6d32f1aa673b972b2488eede7fbe0b55feddc6ce0cb1b58994e83b93a5f84fcb5b871c7c080863d17554810cc1c1b8c1e1609a
DIST pgbadger-11.0.tar.gz 1661028 BLAKE2B d83be01017d69b83cf288b23fe5066d5c691b630ce748fe42b33514346183f7b8f18efceeefe0533e534c669e986c30388a6df5b620ea654ae89b3dc3c08d342 SHA512 167534d61cb28df6cb7eae7efe788d3f6bbad1c614468e905a9b678a76b3a2dfc0eb192b595ac4dc332cd694e820f1603b79d83bc934b7dfe3d226019f6a9c15
DIST pgbadger-11.3.tar.gz 2297407 BLAKE2B 7e0814c570a3e5fbf79132c99e3134ee944c8239b956d4638a144c551a45b1903a27ee730f93e0dd040c3b8b8c3ec7d1b22228bf2390fa1585f8e4907cb9ae90 SHA512 0af40e68391d6cc783c5895eea01d266bdb22672bd9142e6029ec428f68ee13e0d0deaced4cb80ccd5b608bf04a72a9964c95d2cc9ad933c7412dbf888fc788a

@ -1,7 +1,7 @@
# Copyright 1999-2019 Gentoo Authors
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
EAPI=7
inherit perl-module
@ -11,7 +11,7 @@ SRC_URI="https://github.com/darold/pgbadger/archive/v${PV}.tar.gz -> ${P}.tar.gz
LICENSE="BSD"
SLOT="0"
KEYWORDS="amd64"
KEYWORDS="~amd64"
DEPEND="
dev-perl/JSON-XS

@ -1 +1 @@
DIST sqlcl-20.2.0.174.1557.zip 32408164 BLAKE2B c91547af6581b01b5b33821e33fd8058457746c854ebc801fd27a5554eb7f91c4f47fa938a86121abed4e5ec8aa13fbebf0b0c3364101a374f7086a55268e73a SHA512 4a6d62f57ddb8e520bf51eae4956065fb2b44aac6dc18d7999e50f8b42d553218eaaf99c75095c12d06e1673aae224522564d19a06719b2444ef8d535fedd089
DIST sqlcl-20.3.0.274.1916.zip 36309483 BLAKE2B 10051c6880da74a2803c3dedef4ff397eecfc92fb57ca3a7432d32041a2a255ce30cd4b69d242bcea182a30c200b89105fff40c0419cac371c99dfaee192b18c SHA512 b170bfb5ed31ccbf69b75f1ec7c2b292cb8d0bc70c8489ee6c42c288b54153ef8b8b2e4e0511dac1522d9b6cd161f66adc50d85574e8e8f3b7802d3a9f91a70b

@ -6,8 +6,10 @@ EAPI=7
MY_PN="${PN/-bin}"
MY_P="${MY_PN}-${PV}"
inherit java-pkg-2
DESCRIPTION="Oracle SQLcl is the new SQL*Plus"
HOMEPAGE="https://www.oracle.com/technetwork/developer-tools/sql-developer/downloads/index.html"
HOMEPAGE="https://www.oracle.com/database/technologies/appdev/sqlcl.html"
SRC_URI="${MY_P}.zip"
RESTRICT="bindist fetch mirror"
@ -18,7 +20,7 @@ KEYWORDS="~amd64 ~x86"
BDEPEND="app-arch/unzip"
RDEPEND="dev-db/oracle-instantclient
dev-java/java-config:2
virtual/jre:1.8"
>=virtual/jre-1.8"
S="${WORKDIR}"
@ -35,17 +37,10 @@ pkg_nofetch() {
einfo "which must be placed in DISTDIR directory."
}
src_prepare() {
default
find ./ \( -iname "*.bat" -or -iname "*.exe" \) -delete || die "remove files failed"
}
src_install() {
exeinto "/opt/${MY_PN}/bin/"
newexe "${MY_PN}"/bin/sql sqlcl
insinto "/opt/${MY_PN}/lib/"
doins -r "${MY_PN}"/lib/.
java-pkg_dojar sqlcl/lib/*.jar sqlcl/lib/ext/*.jar
dosym "../${MY_PN}/bin/sqlcl" /opt/bin/sqlcl
java-pkg_dolauncher "${MY_PN}" \
--main oracle.dbtools.raptor.scriptrunner.cmdline.SqlCli \
--java_args '-client -Xss30M'
}

Binary file not shown.

@ -0,0 +1,171 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
LUA_COMPAT=( lua5-{1..2} )
WX_GTK_VER="3.0-gtk3"
inherit cmake flag-o-matic lua-single wxwidgets
DESCRIPTION="OpenMW-specific fork of OpenSceneGraph"
HOMEPAGE="https://github.com/OpenMW/osg"
MY_COMMIT="8b07809fa674ecffe77338aaea2e223b3aadff0e"
SRC_URI="https://github.com/OpenMW/osg/archive/${MY_COMMIT}.tar.gz -> ${P}.tar.gz"
LICENSE="wxWinLL-3 LGPL-2.1"
SLOT="0/132" # NOTE: CHECK WHEN BUMPING! Subslot is SOVERSION
KEYWORDS="~amd64 ~x86"
IUSE="curl debug doc examples egl ffmpeg fltk fox gdal gif glut gstreamer jpeg
lua openexr openinventor osgapps pdf png qt5 sdl sdl2 svg tiff
truetype vnc wxwidgets xine xrandr zlib"
REQUIRED_USE="
lua? ( ${LUA_REQUIRED_USE} )
sdl2? ( sdl )
openexr? ( zlib )
"
# TODO: COLLADA, FBX, GTA, OpenVRML, Performer, DCMTK
RDEPEND="
!dev-games/openscenegraph
media-libs/mesa[egl?]
virtual/glu
virtual/opengl
x11-libs/libSM
x11-libs/libXext
curl? ( net-misc/curl )
examples? (
fltk? ( x11-libs/fltk:1[opengl] )
fox? ( x11-libs/fox:1.6[opengl] )
glut? ( media-libs/freeglut )
sdl2? ( media-libs/libsdl2 )
wxwidgets? ( x11-libs/wxGTK:${WX_GTK_VER}[opengl,X] )
)
ffmpeg? ( media-video/ffmpeg:0= )
gdal? ( sci-libs/gdal:= )
gif? ( media-libs/giflib:= )
gstreamer? (
media-libs/gstreamer:1.0
media-libs/gst-plugins-base:1.0
)
jpeg? ( virtual/jpeg:0 )
lua? ( ${LUA_DEPS} )
openexr? (
media-libs/ilmbase:=
media-libs/openexr:=
)
openinventor? ( media-libs/coin )
pdf? ( app-text/poppler[cairo] )
png? ( media-libs/libpng:0= )
qt5? (
dev-qt/qtopengl:5
dev-qt/qtwidgets:5
)
sdl? ( media-libs/libsdl )
svg? (
gnome-base/librsvg
x11-libs/cairo
)
tiff? ( media-libs/tiff:0 )
truetype? ( media-libs/freetype:2 )
vnc? ( net-libs/libvncserver )
xrandr? ( x11-libs/libXrandr )
zlib? ( sys-libs/zlib )
"
DEPEND="${RDEPEND}
x11-base/xorg-proto
"
BDEPEND="
app-arch/unzip
virtual/pkgconfig
doc? ( app-doc/doxygen )
"
S="${WORKDIR}/osg-${MY_COMMIT}"
PATCHES=(
"${FILESDIR}"/openscenegraph-3.4-cmake.patch
"${FILESDIR}"/openscenegraph-3.5.1-jpeg-9.patch
"${FILESDIR}"/openscenegraph-3.6.3-docdir.patch
)
pkg_setup() {
if use lua; then
lua-single_pkg_setup
fi
}
src_prepare() {
sed -i "s/ FIND_PACKAGE/ MACRO_OPTIONAL_FIND_PACKAGE/g" CMakeLists.txt || die "can't replace FIND_PACKAGE"
cmake_src_prepare
}
src_configure() {
if use examples && use wxwidgets; then
setup-wxwidgets
fi
# Needed by FFmpeg
append-cppflags -D__STDC_CONSTANT_MACROS
local libdir=$(get_libdir)
local mycmakeargs=(
-DDYNAMIC_OPENSCENEGRAPH=ON
-DLIB_POSTFIX=${libdir/lib}
-DOPENGL_PROFILE=GL2 #GL1 GL2 GL3 GLES1 GLES3 GLES3
-DOSG_PROVIDE_READFILE=ON
-DOSG_USE_LOCAL_LUA_SOURCE=OFF
-DWITH_Lua51=OFF # We use CMake-version FindLua52.cmake instead which can find any lua
-DWITH_Lua52=$(usex lua)
-DWITH_Asio=OFF # Fails to build, similar to https://github.com/chriskohlhoff/asio/issues/316
-DWITH_CURL=$(usex curl)
-DBUILD_DOCUMENTATION=$(usex doc)
-DBUILD_OSG_APPLICATIONS=$(usex osgapps)
-DBUILD_OSG_EXAMPLES=$(usex examples)
-DWITH_FFmpeg=$(usex ffmpeg)
-DWITH_GDAL=$(usex gdal)
-DWITH_GIFLIB=$(usex gif)
-DWITH_GStreamer=$(usex gstreamer)
-DWITH_GLIB=$(usex gstreamer)
-DWITH_GtkGl=OFF
-DWITH_JPEG=$(usex jpeg)
-DWITH_Jasper=OFF
-DWITH_LIBLAS=OFF # dep failed to build https://bugs.gentoo.org/725938
-DWITH_OpenEXR=$(usex openexr)
-DWITH_Inventor=$(usex openinventor)
-DWITH_Poppler-glib=$(usex pdf)
-DWITH_PNG=$(usex png)
-DWITH_SDL=$(usex sdl)
-DWITH_SDL2=$(usex sdl2)
-DWITH_RSVG=$(usex svg rsvg)
-DWITH_TIFF=$(usex tiff)
-DWITH_Freetype=$(usex truetype)
-DWITH_LibVNCServer=$(usex vnc)
-DWITH_Xine=$(usex xine)
-DOSGVIEWER_USE_XRANDR=$(usex xrandr)
-DWITH_ZLIB=$(usex zlib)
-DOSG_USE_QT=$(usex qt5)
-DDESIRED_QT_VERSION=5
)
if use examples; then
mycmakeargs+=(
-DWITH_FLTK=$(usex fltk)
-DWITH_FOX=$(usex fox)
-DWITH_GLUT=$(usex glut)
-DWITH_wxWidgets=$(usex wxwidgets)
)
fi
if use lua; then
mycmakeargs+=(
-DLUA_INCLUDE_DIR="$(lua_get_include_dir)"
-DLUA_LIBRARY="$(lua_get_shared_lib)"
)
fi
cmake_src_configure
}
src_compile() {
cmake_src_compile
use doc && cmake_src_compile doc_openscenegraph doc_openthreads
}

Binary file not shown.

@ -1 +0,0 @@
DIST j701_b_source.tar.gz 808367 BLAKE2B 0ecaf7a7dd56a79f60d73930d8910beea075551a18b44904c8e90f1b37a8e7f02178198855058b1f1552b600de29ede096d481a58c9bbf9a990852c5bff25fa6 SHA512 f7ac035883098918ba4baa374a856a281a94adb83e7fb4828ef95d1a24aedc648b23593cc6ef6932e6ac546b0ba8215a8018265a3cb39c5008053c5ab7f74d57

@ -1,44 +0,0 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=4
DESCRIPTION="Modern, high-level, general-purpose, high-performance programming language"
HOMEPAGE="http://jsoftware.com"
SRC_URI="http://www.jsoftware.com/download/${PN}${PV}_b_source.tar.gz"
inherit eutils
LICENSE="GPL-3"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE=""
DEPEND=""
RDEPEND="${DEPEND}"
S="${WORKDIR}/jgplsrc"
src_prepare() {
sed -i -e 's:make libj >& make.txt:make libj:' bin/build_libj || die
sed -i -e 's:W1,soname:Wl,-soname:' bin/jconfig || die
if use amd64; then
sed -i -e 's/bits=32/bits=64/' bin/jconfig || die
fi
}
src_compile() {
bin/jconfig || die
bin/build_defs || die
bin/build_libj || die
bin/build_jconsole || die
}
src_install() {
# since this appears to use hardcoded relative paths
# there's no sane way to put it in the normal filesystem hierarchy
mkdir -p "${D}/opt/j"
cp -r j/* "${D}/opt/j" || die
mkdir -p "${D}/usr/bin"
echo -e "#!/bin/sh\n/opt/j/bin/jconsole" > "${D}/usr/bin/jc" || die
chmod +x "${D}/usr/bin/jc"
}

@ -1,8 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>patrick@gentoo.org</email>
<name>Patrick Lauer</name>
</maintainer>
</pkgmetadata>

@ -19,7 +19,7 @@ S="${WORKDIR}/${MY_P}"
LICENSE="PSF-2"
SLOT="${PYVER}"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 sparc x86"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 sparc x86"
IUSE="bluetooth build examples gdbm hardened ipv6 libressl +ncurses +readline sqlite +ssl test tk wininst +xml"
RESTRICT="!test? ( test )"

@ -19,7 +19,7 @@ S="${WORKDIR}/${MY_P}"
LICENSE="PSF-2"
SLOT="${PYVER}"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
IUSE="bluetooth build examples gdbm hardened ipv6 libressl +ncurses +readline sqlite +ssl test tk wininst +xml"
RESTRICT="!test? ( test )"

@ -40,3 +40,17 @@ DIST rust-1.47.0-powerpc64le-unknown-linux-gnu.tar.xz 141965604 BLAKE2B b4b7ce86
DIST rust-1.47.0-s390x-unknown-linux-gnu.tar.xz 146987276 BLAKE2B 1810e7bfbd235613563677449376167700c33960eb57b100e65058f6a00692316db518f2f4b79b39e414f3892c62bb1ec09b0866ff2221641c4a3056659a1668 SHA512 dd5877b6ff5c310ca6aa23c1cc621e6b0675d4c46f5a06b2a0b107641b604a1a2101109ba8e286267bab1158768c601d5d9a922a8da72486c91755ef465720c0
DIST rust-1.47.0-x86_64-unknown-linux-gnu.tar.xz 150891572 BLAKE2B 45ff02465ba82ae96de25dd616fa08abb2396be21236d2f66f831effb349f39b047a380b38cb83254f27e56cecdbea8478f4de8ccc0aa23b11de2f11a28f501b SHA512 f695986ab8e67636b0e92ca7ea223984121e3c22788434a6f1062690e7932f6b30c0c302160fef96831f821acedaf8a909bd3d00a9aa873c7200d2b8fa39013f
DIST rust-1.47.0-x86_64-unknown-linux-musl.tar.xz 166456672 BLAKE2B d6ccfc574a81ae3e9e6a96805e6863009970b5c480f35ee0d582a204b782fe513b9c6c7094d1adea509de1a3097a8a0524ac00c2186b968f70f390615904eb5a SHA512 f71b162635955ecd8a6ec322818be69c788c18d4e923d84d901916648f2eb58573b1f97b460209294ee64198e76566b78e472f9cbca8665c59444adfc5ae603c
DIST rust-1.48.0-aarch64-unknown-linux-gnu.tar.xz 133782948 BLAKE2B 95e80db4734a91a1aed6433cb6dcc65358ef713f365216f6c344c4940c2b5e43b7dc5805f53635c4e7585e70c9d5773b6c93034fa2ffd0a28efb2f20a18f1be8 SHA512 6ebbd936b1bc2ccf30b62dbbbc6f3986fb57738d89e33a23d58bab09be57a445c17df7912866add91cc108ef7547d229a08c6206db2d2fb00d72887ff6a0894d
DIST rust-1.48.0-arm-unknown-linux-gnueabi.tar.xz 133293068 BLAKE2B f98129d16e0de958a164233a1cc6317dc64eeeee76aa88b6982af2cb0a4b9f798a989b6bc153dcd55a7a6dfd3a8a6b36330faae82fedc133ae927b75638629aa SHA512 8958b8548711bb393e188d7516a842dcde5e7f9751804a90621d28a787a28b330057f343f14f930bafdcbdd8fa2cf391d6a4c1953f6d33a34bcbc65fd0e24e9b
DIST rust-1.48.0-arm-unknown-linux-gnueabihf.tar.xz 132424008 BLAKE2B ed0aad5dba3eff6ca18eac5e7fc1864d2b72e262b5c8d6b510196653edc505bcb2327d529b326b10279ad19d6e2258e40103ed39067094f6ac2bd9dfed170b35 SHA512 d932676a579eed1849e58c133aa3759750b01436aa6f837098953cc558b9025427bdd54f1f2688aa0022934c48177da34874e27cc319c7bf1c96e219615d2bb2
DIST rust-1.48.0-armv7-unknown-linux-gnueabihf.tar.xz 134716224 BLAKE2B 1918eadca80dbaacb4700dc5af8c791cc0966a29b4d01bba10e8ec31d5506a2748f4a0c9ed6695e9aa9cd88511e0dc347354a1410b419013757d9ae443e9e9af SHA512 9763b0c5bc5dc7b265b86636ed32947aab98bd9b5732c4b298ade93e9a09bab82ad37fc7ca2d7c97dfd87634756b3c55015d47696c0a6ed2cb44be03659bcf55
DIST rust-1.48.0-i686-unknown-linux-gnu.tar.xz 161602224 BLAKE2B e4f1d1b51d520f85f7af8ddd12ad716d8c501a25d1bcdf40efd23902da9c35168108ba705c08a7aa3617ac1afb41584180d1d2399732918900f9126158111c25 SHA512 b8b3c5407304a333fc6c10ad70363589a88673640dda7b5fde8971097e679f56a8c733da31b2183044ae2ce30700db923cc3c3cb8c590d785df680b60b199451
DIST rust-1.48.0-mips-unknown-linux-gnu.tar.xz 96393696 BLAKE2B 6cd06b3b1b8aeb4b251bc14e47dd8b8cd099f9292705402d718657de4efd480f8999bf23694d9be455236e3ebd4d330b2645a0333eeab7f9a189239df5e02698 SHA512 973130e8c0924e4a22e3b803102b96e80d6247328879a92c3bf0d9e80ec185264b980bd481ee79b6f8afe8e47f7fd61b9657a85adb7ae99008357d39e2428a39
DIST rust-1.48.0-mips64-unknown-linux-gnuabi64.tar.xz 107548156 BLAKE2B 98b481032689f094490689b3af5a0a9162c8bf0ac8a60203b0be2de0f0ac555296e0401d1d534934d2faee852c61b20324aadf0a1696dd57607b71389f03071a SHA512 b3adf893d3e1a36da859bbd3cb39acebb2358522591694e636574ac5a1f81484a60ee53a9de7f348717fbfdaac9f2dd6ec27ea78959cdf94346d251d4a6be877
DIST rust-1.48.0-mipsel-unknown-linux-gnu.tar.xz 97538116 BLAKE2B c4777428637bf2a08964b0abf048c2ea3b895901130f6b2c4307bfd448c7e09e2d8e862d0a10bab23c73a580aa2e9d868c7716d6a7fd103fa40f0d4207090c71 SHA512 09529c30c2b31317a495b058ee48d8ad7b0c89a59a70e62c9085d59bbd2f22a37223956a13959175cd05b195b7541feac9b8acc49438f575fce3fad26d2bd927
DIST rust-1.48.0-powerpc-unknown-linux-gnu.tar.xz 106401772 BLAKE2B 2b10bb21198b9104dee49038ca4a7bee9dc93331465166ce9ca451d84c7e759e7bd5635c017223f6a1b96f71430a8240bd65022e9067fb20e5be85d06e79baba SHA512 b77afbca6fe9f1122c863bee14a764adb1dc5f233058292c5aaa72e50f473c1f9cccd1fc08c427485a7edab460fcea595544fd902d5f96d290e208aa03d910a3
DIST rust-1.48.0-powerpc64-unknown-linux-gnu.tar.xz 120497676 BLAKE2B 6aa1dedcf5953f1292997fa7aac19067a6daa5e676a7e5fb7b7a29707831328b5514a88904edcc00dcf76d32e911646c8a349e40431a531585c373ce755bfb3c SHA512 f79e1f984cc3c4dce08599418be2885666e0b6f73e639b10e97ffff4b900606d880c0596b6c2ab7c5f999cfc364d22b2ca6ab88db6ba38b8b227670b222fe23b
DIST rust-1.48.0-powerpc64le-unknown-linux-gnu.tar.xz 124335896 BLAKE2B fe95cb27e69258d4b0fe471e856bc98d4ddae3d90c7d5bbd723575cb86da28061c8b0ca8f5fd945f0ce4789997f5e7658edf5f40b57aa215d76ffeb3c3207602 SHA512 7ddd2b0599872012f8613ccab456622cb05a0a43587b7d389e8b7fdf9381f0387763726d892da931233c89e8e3ce45c2b303ed00b1cce1f91c88d8f88d6b148d
DIST rust-1.48.0-s390x-unknown-linux-gnu.tar.xz 127221600 BLAKE2B 08511be6aadc0feb36caa19df5914a207565eed3b4b3914cad7fc8f7170011a7431c14d50b1334f5d5e00b4c94e7e84ee59afad179286e889480cc9b21e1f402 SHA512 b2b1565f3b1cc0c3bf4aa06aba1da7df775c6e29c892ca7727d0e549f175b632080433be2586e799c5636231de6c678f0228dedee8358fbf167016a1f7d25389
DIST rust-1.48.0-x86_64-unknown-linux-gnu.tar.xz 155254844 BLAKE2B 37bce978eb297bb1732f9d513bb6fdcee4aefc42a578496a84b5f8abbb9f90f1c524c73f28c85f33c25a365bf5ba566253b1739009bb112c2e1d46a2ed978e10 SHA512 0784e156e70c47386abfa88ecfeb62b1109364459b1fee225de0749c30379c4eb443ff3ff7faa7dc1a6ff373bc6eb43997007f937889cb35daf940a74641753b
DIST rust-1.48.0-x86_64-unknown-linux-musl.tar.xz 168361012 BLAKE2B efeb9a9812f2fa2cbf1cfd963b5b714cf18d73ca9b7a3de4efa701acf7e2e8fc3b610cd90f7391b10bddd1c9d44b8b0aa910f58ce739750d4e910b063825dc28 SHA512 7188fb0b1bf6fd6ab320089cd17f334867baefec1a9c57a81e6cb729276456e56850938dbd0eafbc52375266a87392ad3045a4dbd2c41689bba6b0da152e4034

@ -159,7 +159,7 @@ multilib_src_install() {
}
pkg_postinst() {
eselect rust update --if-unset
eselect rust update
elog "Rust installs a helper script for calling GDB now,"
elog "for your convenience it is installed under /usr/bin/rust-gdb-bin-${PV},"

@ -159,7 +159,7 @@ multilib_src_install() {
}
pkg_postinst() {
eselect rust update --if-unset
eselect rust update
elog "Rust installs a helper script for calling GDB now,"
elog "for your convenience it is installed under /usr/bin/rust-gdb-bin-${PV},"

@ -137,7 +137,7 @@ multilib_src_install() {
}
pkg_postinst() {
eselect rust update --if-unset
eselect rust update
elog "Rust installs a helper script for calling GDB now,"
elog "for your convenience it is installed under /usr/bin/rust-gdb-bin-${PV},"

@ -0,0 +1,155 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit bash-completion-r1 rust-toolchain toolchain-funcs multilib-minimal
MY_P="rust-${PV}"
DESCRIPTION="Systems programming language from Mozilla"
HOMEPAGE="https://www.rust-lang.org/"
SRC_URI="$(rust_all_arch_uris ${MY_P})"
LICENSE="|| ( MIT Apache-2.0 ) BSD-1 BSD-2 BSD-4 UoI-NCSA"
SLOT="stable"
KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
IUSE="clippy cpu_flags_x86_sse2 doc rls rustfmt"
DEPEND=""
RDEPEND=">=app-eselect/eselect-rust-20190311"
REQUIRED_USE="x86? ( cpu_flags_x86_sse2 )"
QA_PREBUILT="
opt/${P}/bin/.*
opt/${P}/lib/.*.so
opt/${P}/lib/rustlib/.*/bin/.*
opt/${P}/lib/rustlib/.*/lib/.*
"
pkg_pretend() {
if [[ "$(tc-is-softfloat)" != "no" ]] && [[ ${CHOST} == armv7* ]]; then
die "${CHOST} is not supported by upstream Rust. You must use a hard float version."
fi
}
src_unpack() {
default
mv "${WORKDIR}/${MY_P}-$(rust_abi)" "${S}" || die
}
multilib_src_install() {
if multilib_is_native_abi; then
# start native abi install
pushd "${S}" >/dev/null || die
local analysis std
analysis="$(grep 'analysis' ./components)"
std="$(grep 'std' ./components)"
local components="rustc,cargo,${std}"
use doc && components="${components},rust-docs"
use clippy && components="${components},clippy-preview"
use rls && components="${components},rls-preview,${analysis}"
use rustfmt && components="${components},rustfmt-preview"
./install.sh \
--components="${components}" \
--disable-verify \
--prefix="${ED}/opt/${P}" \
--mandir="${ED}/opt/${P}/man" \
--disable-ldconfig \
|| die
local symlinks=(
cargo
rustc
rustdoc
rust-gdb
rust-gdbgui
rust-lldb
)
use clippy && symlinks+=( clippy-driver cargo-clippy )
use rls && symlinks+=( rls )
use rustfmt && symlinks+=( rustfmt cargo-fmt )
einfo "installing eselect-rust symlinks and paths"
local i
for i in "${symlinks[@]}"; do
# we need realpath on /usr/bin/* symlink return version-appended binary path.
# so /usr/bin/rustc should point to /opt/rust-bin-<ver>/bin/rustc-<ver>
local ver_i="${i}-bin-${PV}"
ln -v "${ED}/opt/${P}/bin/${i}" "${ED}/opt/${P}/bin/${ver_i}"
dosym "../../opt/${P}/bin/${ver_i}" "/usr/bin/${ver_i}"
done
# symlinks to switch components to active rust in eselect
dosym "../../../opt/${P}/lib" "/usr/lib/rust/lib-bin-${PV}"
dosym "../../../opt/${P}/man" "/usr/lib/rust/man-bin-${PV}"
dosym "../../opt/${P}/lib/rustlib" "/usr/lib/rustlib-bin-${PV}"
dosym "../../../opt/${P}/share/doc/rust" "/usr/share/doc/${P}"
cat <<-_EOF_ > "${T}/50${P}"
LDPATH="${EPREFIX}/usr/lib/rust/lib"
MANPATH="${EPREFIX}/usr/lib/rust/man"
$(usex elibc_musl 'CARGO_TARGET_X86_64_UNKNOWN_LINUX_MUSL_RUSTFLAGS="-C target-feature=-crt-static"' '')
_EOF_
doenvd "${T}/50${P}"
# note: eselect-rust adds EROOT to all paths below
cat <<-_EOF_ > "${T}/provider-${P}"
/usr/bin/cargo
/usr/bin/rustdoc
/usr/bin/rust-gdb
/usr/bin/rust-gdbgui
/usr/bin/rust-lldb
/usr/lib/rustlib
/usr/lib/rust/lib
/usr/lib/rust/man
/usr/share/doc/rust
_EOF_
if use clippy; then
echo /usr/bin/clippy-driver >> "${T}/provider-${P}"
echo /usr/bin/cargo-clippy >> "${T}/provider-${P}"
fi
if use rls; then
echo /usr/bin/rls >> "${T}/provider-${P}"
fi
if use rustfmt; then
echo /usr/bin/rustfmt >> "${T}/provider-${P}"
echo /usr/bin/cargo-fmt >> "${T}/provider-${P}"
fi
insinto /etc/env.d/rust
doins "${T}/provider-${P}"
popd >/dev/null || die
#end native abi install
else
local rust_target
rust_target="$(rust_abi $(get_abi_CHOST ${v##*.}))"
dodir "/opt/${P}/lib/rustlib"
cp -vr "${WORKDIR}/rust-${PV}-${rust_target}/rust-std-${rust_target}/lib/rustlib/${rust_target}"\
"${ED}/opt/${P}/lib/rustlib" || die
fi
}
pkg_postinst() {
eselect rust update
elog "Rust installs a helper script for calling GDB now,"
elog "for your convenience it is installed under /usr/bin/rust-gdb-bin-${PV},"
if has_version app-editors/emacs; then
elog "install app-emacs/rust-mode to get emacs support for rust."
fi
if has_version app-editors/gvim || has_version app-editors/vim; then
elog "install app-vim/rust-vim to get vim support for rust."
fi
}
pkg_postrm() {
eselect rust cleanup
}

@ -40,6 +40,21 @@ DIST rust-1.46.0-powerpc64le-unknown-linux-gnu.tar.xz 130200900 BLAKE2B d38a7f13
DIST rust-1.46.0-s390x-unknown-linux-gnu.tar.xz 134521076 BLAKE2B d3efd71dd7db812736680929185ad5f58a2dbf7d1b8a6f851834dd7b41713fc171dbcdf2472bedc13751bfeed58070d919d2a1138765ab75c0f4bdf817cb6418 SHA512 b6146695225ff6d0516e7bb6bc4620599356bb89b14f429a09d9d7f8715a94e8e218402346d5c9a10eeb54c0bdc40fb179289216b0cb4edd5bdf886f6b69aab4
DIST rust-1.46.0-x86_64-unknown-linux-gnu.tar.xz 127200200 BLAKE2B 7d755e0622cda99d111490197b21ff4aaeb7b13292804566bc677b7b1d833eaa644b7a801863a1a01e3aa34be28a80344cae69edc57f8c8788884c78e037b750 SHA512 95f5adc2d2137010c7e5ac8a0fc70485250b4f9a909cb8b164b35fffff76ab88e9b09d305bfac37324ed080c5fc7643001d2abec5454ca911dc3513f1af52c88
DIST rust-1.46.0-x86_64-unknown-linux-musl.tar.xz 142372372 BLAKE2B 7d3672234b61b772e2311127db569b37296bf3a9bf86841fb78c6d20da6a6abfc6c866ba4aa7cc44c12eebb0744fbeb401b491314db9eb481b926792cadcca22 SHA512 e2599c4c10fe9725e63524d89c0be869d43347620b0f6ff1a93cee5e7219f5560c6171d8eda99e5624eba60b9d488bfe0942c23eacdbac2ba42e4cd63f14b7c9
DIST rust-1.47.0-aarch64-unknown-linux-gnu.tar.xz 136486128 BLAKE2B 872226c232141e25466413d9a998bb021a6f4955dd8ccb5d68f8cca70ea8f7056a6f7b4125134b48a3106331dd3db2e77b32a0083fca3c66a348b77699c49e7a SHA512 7df7045df341f03508f1ad795a9117b39c1f4c4cc778c7fd9d78c42e7da662ce244d018084ac9e80d9409cf8b3b5d1ccc25ef4cb71a2b8727398d30a4e962e19
DIST rust-1.47.0-arm-unknown-linux-gnueabi.tar.xz 133989400 BLAKE2B 301c17d6f9c048f43d460898ca352e189f7770539431721d178239d5cd64e9e62c05a63482049c18d6fe3fbaa463616d64cf6d82f2bd846576dedc6fc19bd3bd SHA512 db9caa96f142145c3f515730a1aee2fb24c9990f7b9b56e277997975409786904c6490609dfb29712acd9bba077acf36103e4d612bc6c2a74581b40fb50d12ad
DIST rust-1.47.0-arm-unknown-linux-gnueabihf.tar.xz 133431024 BLAKE2B ab94ee2961ac3060154834d21a47384dd09a55213f1a7082911e0976ab9e572b5b234e175ad068cee0fa9355ef2d85acd7ebfff109565be013f14c32e61a71ff SHA512 fa0643c4b2eb36c2bcf4c786517d27fee4428114b79565e0da3b5626700275e9368ce6a68e93b4eae9881265ecca474cced25d63f352ffe3c8617a725185cd28
DIST rust-1.47.0-armv7-unknown-linux-gnueabihf.tar.xz 137060904 BLAKE2B 8e6cbd665cdffcdd059dc4278dfb1647d046a96619f784dfe45299a0c29f1af51de4511b87cb8c0d0d166ba76b484f4249819e22275e2c1775c53b2ee5b1ffb5 SHA512 b207ab7c478dce6db4018527888f539938c8e77b5ceccb460b9d52ffee13a2329d225d03a605b60729cae6254129245bdd69730aebb6ec91dd0c83005cf25253
DIST rust-1.47.0-i686-unknown-linux-gnu.tar.xz 154793612 BLAKE2B a8063a9241fb9fa8b7f9c430d65fd2353d3a1014e51148c9cd1b5686338ccf5170fbde78cb6f95a9d4db5441392ad4e7bf14e5a39418208937cda4019cf4e2e2 SHA512 551204b4edfc1500aa83108c88b845997bb6befba0dd3401e9ae5294ab27960421f1b3130159946b996171c1d46f7532afa0c3ae767a9318985db0bb7c88dba0
DIST rust-1.47.0-mips-unknown-linux-gnu.tar.xz 122428884 BLAKE2B 10778716e282f9b74ef1a3daeec70ed1bb4f4dcc4a31baeed90c26f398bbe313df58b62469595ced95c73df9aad4739210add4eb3c6f0f94b5fa3dc937967394 SHA512 0e39ef2cd814474c33adc38658cbc2e84879f0208fbb37c1a4bf3719d3cace071606e7b03fd8464ba80f6328cc0a0bd38ec8e7772cc460b5a2d2d8b704042c49
DIST rust-1.47.0-mips64-unknown-linux-gnuabi64.tar.xz 125553888 BLAKE2B 27c9f5d860025ceff4acb1e40ecfa0ec4c053ac694e4bec3bab41e2a193492afb8b4ac22ca471d3170ebe5c3e0fce628d0bf8060b5831af10bd99d614caaceb6 SHA512 186324da11997a65586930e5f2422c687a6ad817e3e0a5766caadbd51153cd29dd1e0d472586117c654d5db20e0ea2bd4073e05a94f3197bed2403dc325b31d5
DIST rust-1.47.0-mipsel-unknown-linux-gnu.tar.xz 122801616 BLAKE2B 667712f3441ce63bcfc245801dd580ba8a9a06e0695b9f9a713baa55d8f9b8ca208a02f043918814490166a4c3dd2cb6ffa0d669b9533845f9c241063ee9b9c1 SHA512 8cd441739a25af20298ed25d877f8da4b81969e6f591d45527b94187808b7ce04ef6106785fc050d1318f71fccd00c295f60cdbf8fb79288aac80d92be9e57c4
DIST rust-1.47.0-powerpc-unknown-linux-gnu.tar.xz 125781632 BLAKE2B 00e966a5ba83702ee36fc2dadd9d058f655d4ea8b3b0072b61d221508ccddb82efae0f5028768a4744b6c439e0f7080db5f727e9f2f7facd7d57964bc332b5a3 SHA512 8a20462ed79f22b868a3e64ba147b32c32eb0b0a149a7a571cc91ffe1ae9fe2d71a244c910817f3c151464f6c417550923a4f02e9dc433670b38502684bf349f
DIST rust-1.47.0-powerpc64-unknown-linux-gnu.tar.xz 134272040 BLAKE2B c7b4256df6c7a031a53e022ba00999706674e273c041534b75743fee1d366567dcd86fb805ec9997737cff3902641e21269f2a95fef651227cac5da34c947091 SHA512 46fa1c042aebb06db4185fed6ef3bc7772f2a13f2290a20f5499757aae2a05dc984026315be7b5813aac172f52f50565e56aa074d32f6271858590a9ceb9e1c7
DIST rust-1.47.0-powerpc64le-unknown-linux-gnu.tar.xz 141965604 BLAKE2B b4b7ce862b2201526e6a96249e509faa7bce2d841e571b6dd241c9a82bd9011c92e0918df649ffcce7f3c6c93aa47aa8f66b99e6529b1b3cecbe16622b08e0b2 SHA512 d5c6580861786545f0540cc9591884fb9f2036061bdd451d17cf8bfb427008d365cacd14e5054028c72b83d1d5eb347ab74478a882cbbd7fcc75a7421657561c
DIST rust-1.47.0-s390x-unknown-linux-gnu.tar.xz 146987276 BLAKE2B 1810e7bfbd235613563677449376167700c33960eb57b100e65058f6a00692316db518f2f4b79b39e414f3892c62bb1ec09b0866ff2221641c4a3056659a1668 SHA512 dd5877b6ff5c310ca6aa23c1cc621e6b0675d4c46f5a06b2a0b107641b604a1a2101109ba8e286267bab1158768c601d5d9a922a8da72486c91755ef465720c0
DIST rust-1.47.0-x86_64-unknown-linux-gnu.tar.xz 150891572 BLAKE2B 45ff02465ba82ae96de25dd616fa08abb2396be21236d2f66f831effb349f39b047a380b38cb83254f27e56cecdbea8478f4de8ccc0aa23b11de2f11a28f501b SHA512 f695986ab8e67636b0e92ca7ea223984121e3c22788434a6f1062690e7932f6b30c0c302160fef96831f821acedaf8a909bd3d00a9aa873c7200d2b8fa39013f
DIST rust-1.47.0-x86_64-unknown-linux-musl.tar.xz 166456672 BLAKE2B d6ccfc574a81ae3e9e6a96805e6863009970b5c480f35ee0d582a204b782fe513b9c6c7094d1adea509de1a3097a8a0524ac00c2186b968f70f390615904eb5a SHA512 f71b162635955ecd8a6ec322818be69c788c18d4e923d84d901916648f2eb58573b1f97b460209294ee64198e76566b78e472f9cbca8665c59444adfc5ae603c
DIST rustc-1.45.2-src.tar.xz 98683036 BLAKE2B a4102a5d4744b7ccc9b076aba00c39d69532f777e7d39e0e4ce2033b663b43e27b55034fdb3a1e13379fae9a16bff9e7748865a84507f7388ef0ebf9d421eac7 SHA512 cc6250c0bc844e77ca6dd7ae013e434ed3009b001914114866ed31f28edf3960221454d131e298b15050e3b8153fb8298d509559c2f7307c64611aa8e36b4d25
DIST rustc-1.46.0-src.tar.xz 101868452 BLAKE2B da9798596b124a10d79c236a871228f05e5f571d22c2259328e7026c91e088c85f5de9c0536a16531e0cb10477bfcd16d3ac11467979f5561cb6199442b877ef SHA512 099857f1d295043587a4e2a65ef3e6a90e12c8b6958e98535a1656c113c553f9a9b621aba8a19cf21bd8d2c79d27cbfa4b8e6fabbcb3cbfee23b545be7b450b4
DIST rustc-1.47.0-src.tar.xz 104143736 BLAKE2B 0454094dde35275488046826da87655e51bf0795481d6d08fd70d644bfc12481bca8641166106ef32f20494906025244715b16ff21a1c023f4bd2818aab42521 SHA512 6ba83c0158f8130ddeae7e070417a2121d8a548c8fe97e28bce116d84048636c75aaee78e0c92cd43a50f5679a1223fc226cc8c5ba9bbd1465e84c5c6034d5c9
DIST rustc-1.48.0-src.tar.xz 105951736 BLAKE2B 42468fc5ac5e80c4793cfe0913cbb8e43a8def28cc8cf5ed25ab989561e2bf33e155c83e180183362535cbc9008f341eb1273087a2364672b1a4032ac2d6ca45 SHA512 4e12baa6893238a8d336ec9ebe891477d18676f271b32763474fa7a6a8b58fb3187dd4e2aa95bce482989b692cc2e1360221669d6811eec71b326f22a1756c23

@ -0,0 +1,164 @@
From 671ef2d1c228aed031b4232b8bea96f17b825263 Mon Sep 17 00:00:00 2001
From: Georgy Yakovlev <gyakovlev@gentoo.org>
Date: Mon, 23 Nov 2020 14:52:04 -0800
Subject: [PATCH] add gentoo musl target specs
---
.../src/spec/aarch64_gentoo_linux_musl.rs | 11 +++++++++++
.../src/spec/armv7_gentoo_linux_musleabihf.rs | 11 +++++++++++
.../rustc_target/src/spec/i686_gentoo_linux_musl.rs | 11 +++++++++++
compiler/rustc_target/src/spec/mod.rs | 8 ++++++++
.../src/spec/powerpc64_gentoo_linux_musl.rs | 11 +++++++++++
.../src/spec/powerpc64le_gentoo_linux_musl.rs | 11 +++++++++++
.../src/spec/powerpc_gentoo_linux_musl.rs | 11 +++++++++++
.../rustc_target/src/spec/x86_64_gentoo_linux_musl.rs | 11 +++++++++++
8 files changed, 85 insertions(+)
create mode 100644 compiler/rustc_target/src/spec/aarch64_gentoo_linux_musl.rs
create mode 100644 compiler/rustc_target/src/spec/armv7_gentoo_linux_musleabihf.rs
create mode 100644 compiler/rustc_target/src/spec/i686_gentoo_linux_musl.rs
create mode 100644 compiler/rustc_target/src/spec/powerpc64_gentoo_linux_musl.rs
create mode 100644 compiler/rustc_target/src/spec/powerpc64le_gentoo_linux_musl.rs
create mode 100644 compiler/rustc_target/src/spec/powerpc_gentoo_linux_musl.rs
create mode 100644 compiler/rustc_target/src/spec/x86_64_gentoo_linux_musl.rs
diff --git a/compiler/rustc_target/src/spec/aarch64_gentoo_linux_musl.rs b/compiler/rustc_target/src/spec/aarch64_gentoo_linux_musl.rs
new file mode 100644
index 0000000..420fe7c
--- /dev/null
+++ b/compiler/rustc_target/src/spec/aarch64_gentoo_linux_musl.rs
@@ -0,0 +1,11 @@
+use crate::spec::TargetResult;
+
+pub fn target() -> TargetResult {
+ let mut base = super::aarch64_unknown_linux_musl::target()?;
+
+ base.llvm_target = "aarch64-gentoo-linux-musl".to_string();
+ base.target_vendor = "gentoo".to_string();
+ base.options.crt_static_default = false;
+
+ Ok(base)
+}
diff --git a/compiler/rustc_target/src/spec/armv7_gentoo_linux_musleabihf.rs b/compiler/rustc_target/src/spec/armv7_gentoo_linux_musleabihf.rs
new file mode 100644
index 0000000..067e2d6
--- /dev/null
+++ b/compiler/rustc_target/src/spec/armv7_gentoo_linux_musleabihf.rs
@@ -0,0 +1,11 @@
+use crate::spec::TargetResult;
+
+pub fn target() -> TargetResult {
+ let mut base = super::armv7_unknown_linux_musleabihf::target()?;
+
+ base.llvm_target = "armv7-gentoo-linux-musleabihf".to_string();
+ base.target_vendor = "gentoo".to_string();
+ base.options.crt_static_default = false;
+
+ Ok(base)
+}
diff --git a/compiler/rustc_target/src/spec/i686_gentoo_linux_musl.rs b/compiler/rustc_target/src/spec/i686_gentoo_linux_musl.rs
new file mode 100644
index 0000000..1cd39cd
--- /dev/null
+++ b/compiler/rustc_target/src/spec/i686_gentoo_linux_musl.rs
@@ -0,0 +1,11 @@
+use crate::spec::TargetResult;
+
+pub fn target() -> TargetResult {
+ let mut base = super::i686_unknown_linux_musl::target()?;
+
+ base.llvm_target = "i686-gentoo-linux-musl".to_string();
+ base.target_vendor = "gentoo".to_string();
+ base.options.crt_static_default = false;
+
+ Ok(base)
+}
diff --git a/compiler/rustc_target/src/spec/mod.rs b/compiler/rustc_target/src/spec/mod.rs
index f1e8330..d8c0ba0 100644
--- a/compiler/rustc_target/src/spec/mod.rs
+++ b/compiler/rustc_target/src/spec/mod.rs
@@ -490,6 +490,14 @@ macro_rules! supported_targets {
}
supported_targets! {
+ ("aarch64-gentoo-linux-musl", aarch64_gentoo_linux_musl),
+ ("armv7-gentoo-linux-musleabihf", armv7_gentoo_linux_musleabihf),
+ ("i686-gentoo-linux-musl", i686_gentoo_linux_musl),
+ ("powerpc-gentoo-linux-musl", powerpc_gentoo_linux_musl),
+ ("powerpc64-gentoo-linux-musl", powerpc64_gentoo_linux_musl),
+ ("powerpc64le-gentoo-linux-musl", powerpc64le_gentoo_linux_musl),
+ ("x86_64-gentoo-linux-musl", x86_64_gentoo_linux_musl),
+
("x86_64-unknown-linux-gnu", x86_64_unknown_linux_gnu),
("x86_64-unknown-linux-gnux32", x86_64_unknown_linux_gnux32),
("i686-unknown-linux-gnu", i686_unknown_linux_gnu),
diff --git a/compiler/rustc_target/src/spec/powerpc64_gentoo_linux_musl.rs b/compiler/rustc_target/src/spec/powerpc64_gentoo_linux_musl.rs
new file mode 100644
index 0000000..e840bb2
--- /dev/null
+++ b/compiler/rustc_target/src/spec/powerpc64_gentoo_linux_musl.rs
@@ -0,0 +1,11 @@
+use crate::spec::TargetResult;
+
+pub fn target() -> TargetResult {
+ let mut base = super::powerpc64_unknown_linux_musl::target()?;
+
+ base.llvm_target = "powerpc64-gentoo-linux-musl".to_string();
+ base.target_vendor = "gentoo".to_string();
+ base.options.crt_static_default = false;
+
+ Ok(base)
+}
diff --git a/compiler/rustc_target/src/spec/powerpc64le_gentoo_linux_musl.rs b/compiler/rustc_target/src/spec/powerpc64le_gentoo_linux_musl.rs
new file mode 100644
index 0000000..1037d82
--- /dev/null
+++ b/compiler/rustc_target/src/spec/powerpc64le_gentoo_linux_musl.rs
@@ -0,0 +1,11 @@
+use crate::spec::TargetResult;
+
+pub fn target() -> TargetResult {
+ let mut base = super::powerpc64le_unknown_linux_musl::target()?;
+
+ base.llvm_target = "powerpc64le-gentoo-linux-musl".to_string();
+ base.target_vendor = "gentoo".to_string();
+ base.options.crt_static_default = false;
+
+ Ok(base)
+}
diff --git a/compiler/rustc_target/src/spec/powerpc_gentoo_linux_musl.rs b/compiler/rustc_target/src/spec/powerpc_gentoo_linux_musl.rs
new file mode 100644
index 0000000..a623ffe
--- /dev/null
+++ b/compiler/rustc_target/src/spec/powerpc_gentoo_linux_musl.rs
@@ -0,0 +1,11 @@
+use crate::spec::TargetResult;
+
+pub fn target() -> TargetResult {
+ let mut base = super::powerpc_unknown_linux_musl::target()?;
+
+ base.llvm_target = "powerpc-gentoo-linux-musl".to_string();
+ base.target_vendor = "gentoo".to_string();
+ base.options.crt_static_default = false;
+
+ Ok(base)
+}
diff --git a/compiler/rustc_target/src/spec/x86_64_gentoo_linux_musl.rs b/compiler/rustc_target/src/spec/x86_64_gentoo_linux_musl.rs
new file mode 100644
index 0000000..f330473
--- /dev/null
+++ b/compiler/rustc_target/src/spec/x86_64_gentoo_linux_musl.rs
@@ -0,0 +1,11 @@
+use crate::spec::TargetResult;
+
+pub fn target() -> TargetResult {
+ let mut base = super::x86_64_unknown_linux_musl::target()?;
+
+ base.llvm_target = "x86_64-gentoo-linux-musl".to_string();
+ base.target_vendor = "gentoo".to_string();
+ base.options.crt_static_default = false;
+
+ Ok(base)
+}
--
2.29.2

@ -523,7 +523,7 @@ src_install() {
}
pkg_postinst() {
eselect rust update --if-unset
eselect rust update
elog "Rust installs a helper script for calling GDB and LLDB,"
elog "for your convenience it is installed under /usr/bin/rust-{gdb,lldb}-${PV}."

@ -558,7 +558,7 @@ src_install() {
}
pkg_postinst() {
eselect rust update --if-unset
eselect rust update
elog "Rust installs a helper script for calling GDB and LLDB,"
elog "for your convenience it is installed under /usr/bin/rust-{gdb,lldb}-${PV}."

@ -576,7 +576,7 @@ src_install() {
}
pkg_postinst() {
eselect rust update --if-unset
eselect rust update
elog "Rust installs a helper script for calling GDB and LLDB,"
elog "for your convenience it is installed under /usr/bin/rust-{gdb,lldb}-${PV}."

@ -0,0 +1,596 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python3_{6..9} )
inherit bash-completion-r1 check-reqs estack flag-o-matic llvm multiprocessing multilib-build python-any-r1 rust-toolchain toolchain-funcs
if [[ ${PV} = *beta* ]]; then
betaver=${PV//*beta}
BETA_SNAPSHOT="${betaver:0:4}-${betaver:4:2}-${betaver:6:2}"
MY_P="rustc-beta"
SLOT="beta/${PV}"
SRC="${BETA_SNAPSHOT}/rustc-beta-src.tar.xz -> rustc-${PV}-src.tar.xz"
else
ABI_VER="$(ver_cut 1-2)"
SLOT="stable/${ABI_VER}"
MY_P="rustc-${PV}"
SRC="${MY_P}-src.tar.xz"
KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
fi
RUST_STAGE0_VERSION="1.$(($(ver_cut 2) - 1)).0"
DESCRIPTION="Systems programming language from Mozilla"
HOMEPAGE="https://www.rust-lang.org/"
SRC_URI="
https://static.rust-lang.org/dist/${SRC}
!system-bootstrap? ( $(rust_all_arch_uris rust-${RUST_STAGE0_VERSION}) )
"
# keep in sync with llvm ebuild of the same version as bundled one.
ALL_LLVM_TARGETS=( AArch64 AMDGPU ARM AVR BPF Hexagon Lanai Mips MSP430
NVPTX PowerPC RISCV Sparc SystemZ WebAssembly X86 XCore )
ALL_LLVM_TARGETS=( "${ALL_LLVM_TARGETS[@]/#/llvm_targets_}" )
LLVM_TARGET_USEDEPS=${ALL_LLVM_TARGETS[@]/%/?}
LICENSE="|| ( MIT Apache-2.0 ) BSD-1 BSD-2 BSD-4 UoI-NCSA"
IUSE="clippy cpu_flags_x86_sse2 debug doc libressl miri nightly parallel-compiler rls rustfmt +system-bootstrap system-llvm test wasm ${ALL_LLVM_TARGETS[*]}"
# Please keep the LLVM dependency block separate. Since LLVM is slotted,
# we need to *really* make sure we're not pulling more than one slot
# simultaneously.
# How to use it:
# 1. List all the working slots (with min versions) in ||, newest first.
# 2. Update the := to specify *max* version, e.g. < 12.
# 3. Specify LLVM_MAX_SLOT, e.g. 11.
LLVM_DEPEND="
|| (
sys-devel/llvm:11[${LLVM_TARGET_USEDEPS// /,}]
)
<sys-devel/llvm-12:=
wasm? ( sys-devel/lld )
"
LLVM_MAX_SLOT=11
BOOTSTRAP_DEPEND="|| ( >=dev-lang/rust-1.$(($(ver_cut 2) - 1)) >=dev-lang/rust-bin-1.$(($(ver_cut 2) - 1)) )"
BDEPEND="${PYTHON_DEPS}
app-eselect/eselect-rust
|| (
>=sys-devel/gcc-4.7
>=sys-devel/clang-3.5
)
system-bootstrap? ( ${BOOTSTRAP_DEPEND} )
!system-llvm? (
dev-util/cmake
dev-util/ninja
)
"
DEPEND="
>=dev-libs/libgit2-1.1.0:=
net-misc/curl:=[http2,ssl]
sys-libs/zlib:=
!libressl? ( dev-libs/openssl:0= )
libressl? ( dev-libs/libressl:0= )
elibc_musl? ( sys-libs/libunwind:= )
system-llvm? (
${LLVM_DEPEND}
)
"
# we need to block versions older than 1.47.0 due to layout changes.
RDEPEND="${DEPEND}
app-eselect/eselect-rust
!<dev-lang/rust-1.47.0-r1
!<dev-lang/rust-bin-1.47.0-r1
"
REQUIRED_USE="|| ( ${ALL_LLVM_TARGETS[*]} )
miri? ( nightly )
parallel-compiler? ( nightly )
test? ( ${ALL_LLVM_TARGETS[*]} )
wasm? ( llvm_targets_WebAssembly )
x86? ( cpu_flags_x86_sse2 )
"
# we don't use cmake.eclass, but can get a warnings
CMAKE_WARN_UNUSED_CLI=no
QA_FLAGS_IGNORED="
usr/lib/${PN}/${PV}/bin/.*
usr/lib/${PN}/${PV}/lib/lib.*.so
usr/lib/${PN}/${PV}/lib/rustlib/.*/bin/.*
usr/lib/${PN}/${PV}/lib/rustlib/.*/lib/lib.*.so
"
QA_SONAME="
usr/lib/${PN}/${PV}/lib/lib.*.so.*
usr/lib/${PN}/${PV}/lib/rustlib/.*/lib/lib.*.so
"
# causes double bootstrap
RESTRICT="test"
PATCHES=(
"${FILESDIR}"/1.47.0-libressl.patch
"${FILESDIR}"/1.46.0-don-t-create-prefix-at-time-of-check.patch
"${FILESDIR}"/1.47.0-ignore-broken-and-non-applicable-tests.patch
"${FILESDIR}"/1.47.0-llvm-tensorflow-fix.patch
"${FILESDIR}"/1.48.0-gentoo-musl-target-specs.patch
)
S="${WORKDIR}/${MY_P}-src"
toml_usex() {
usex "$1" true false
}
boostrap_rust_version_check() {
# never call from pkg_pretend. eselect-rust may be not installed yet.
[[ ${MERGE_TYPE} == binary ]] && return
local rustc_wanted="$(ver_cut 1).$(($(ver_cut 2) - 1))"
local rustc_version=( $(eselect --brief rust show 2>/dev/null) )
rustc_version=${rustc_version[0]#rust-bin-}
rustc_version=${rustc_version#rust-}
[[ -z "${rustc_version}" ]] && die "Failed to determine rustc version!"
if ver_test "${rustc_version}" -lt "${rustc_wanted}" ; then
eerror "Rust >=${rustc_wanted} is required"
eerror "please run \'eselect rust\' and set correct rust version"
die
else
einfo "Using rust ${rustc_version} to build"
fi
}
pre_build_checks() {
local M=6144
M=$(( $(usex clippy 128 0) + ${M} ))
M=$(( $(usex miri 128 0) + ${M} ))
M=$(( $(usex rls 512 0) + ${M} ))
M=$(( $(usex rustfmt 256 0) + ${M} ))
M=$(( $(usex system-llvm 0 2048) + ${M} ))
M=$(( $(usex wasm 256 0) + ${M} ))
M=$(( $(usex debug 15 10) * ${M} / 10 ))
eshopts_push -s extglob
if is-flagq '-g?(gdb)?([1-9])'; then
M=$(( 15 * ${M} / 10 ))
fi
eshopts_pop
M=$(( $(usex system-bootstrap 0 1024) + ${M} ))
M=$(( $(usex doc 256 0) + ${M} ))
CHECKREQS_DISK_BUILD=${M}M check-reqs_pkg_${EBUILD_PHASE}
}
pkg_pretend() {
pre_build_checks
}
pkg_setup() {
pre_build_checks
python-any-r1_pkg_setup
use system-bootstrap && boostrap_rust_version_check
if use system-llvm; then
llvm_pkg_setup
local llvm_config="$(get_llvm_prefix "$LLVM_MAX_SLOT")/bin/llvm-config"
export LLVM_LINK_SHARED=1
export RUSTFLAGS="${RUSTFLAGS} -Lnative=$("${llvm_config}" --libdir)"
fi
}
src_prepare() {
if ! use system-bootstrap; then
local rust_stage0_root="${WORKDIR}"/rust-stage0
local rust_stage0="rust-${RUST_STAGE0_VERSION}-$(rust_abi)"
"${WORKDIR}/${rust_stage0}"/install.sh --disable-ldconfig \
--destdir="${rust_stage0_root}" --prefix=/ || die
fi
default
}
src_configure() {
local rust_target="" rust_targets="" arch_cflags
# Collect rust target names to compile standard libs for all ABIs.
for v in $(multilib_get_enabled_abi_pairs); do
rust_targets="${rust_targets},\"$(rust_abi $(get_abi_CHOST ${v##*.}))\""
done
if use wasm; then
rust_targets="${rust_targets},\"wasm32-unknown-unknown\""
if use system-llvm; then
# un-hardcode rust-lld linker for this target
# https://bugs.gentoo.org/715348
sed -i '/linker:/ s/rust-lld/wasm-ld/' src/librustc_target/spec/wasm32_base.rs || die
fi
fi
rust_targets="${rust_targets#,}"
local tools="\"cargo\","
if use clippy; then
tools="\"clippy\",$tools"
fi
if use miri; then
tools="\"miri\",$tools"
fi
if use rls; then
tools="\"rls\",\"analysis\",\"src\",$tools"
fi
if use rustfmt; then
tools="\"rustfmt\",$tools"
fi
local rust_stage0_root
if use system-bootstrap; then
rust_stage0_root="$(rustc --print sysroot)"
else
rust_stage0_root="${WORKDIR}"/rust-stage0
fi
rust_target="$(rust_abi)"
cat <<- _EOF_ > "${S}"/config.toml
[llvm]
optimize = $(toml_usex !debug)
release-debuginfo = $(toml_usex debug)
assertions = $(toml_usex debug)
ninja = true
targets = "${LLVM_TARGETS// /;}"
experimental-targets = ""
link-shared = $(toml_usex system-llvm)
[build]
build = "${rust_target}"
host = ["${rust_target}"]
target = [${rust_targets}]
cargo = "${rust_stage0_root}/bin/cargo"
rustc = "${rust_stage0_root}/bin/rustc"
docs = $(toml_usex doc)
compiler-docs = $(toml_usex doc)
submodules = false
python = "${EPYTHON}"
locked-deps = true
vendor = true
extended = true
tools = [${tools}]
verbose = 2
sanitizers = false
profiler = false
cargo-native-static = false
[install]
prefix = "${EPREFIX}/usr/lib/${PN}/${PV}"
sysconfdir = "etc"
docdir = "share/doc/rust"
bindir = "bin"
libdir = "lib"
mandir = "share/man"
[rust]
# https://github.com/rust-lang/rust/issues/54872
codegen-units-std = 1
optimize = true
debug = $(toml_usex debug)
debug-assertions = $(toml_usex debug)
debuginfo-level-rustc = 0
backtrace = true
incremental = false
default-linker = "$(tc-getCC)"
parallel-compiler = $(toml_usex parallel-compiler)
channel = "$(usex nightly nightly stable)"
rpath = false
verbose-tests = true
optimize-tests = $(toml_usex !debug)
codegen-tests = true
dist-src = false
remap-debuginfo = true
lld = $(usex system-llvm false $(toml_usex wasm))
backtrace-on-ice = true
jemalloc = false
[dist]
src-tarball = false
_EOF_
for v in $(multilib_get_enabled_abi_pairs); do
rust_target=$(rust_abi $(get_abi_CHOST ${v##*.}))
arch_cflags="$(get_abi_CFLAGS ${v##*.})"
cat <<- _EOF_ >> "${S}"/config.env
CFLAGS_${rust_target}=${arch_cflags}
_EOF_
cat <<- _EOF_ >> "${S}"/config.toml
[target.${rust_target}]
cc = "$(tc-getBUILD_CC)"
cxx = "$(tc-getBUILD_CXX)"
linker = "$(tc-getCC)"
ar = "$(tc-getAR)"
_EOF_
# librustc_target/spec/linux_musl_base.rs sets base.crt_static_default = true;
if use elibc_musl; then
cat <<- _EOF_ >> "${S}"/config.toml
crt-static = false
_EOF_
fi
if use system-llvm; then
cat <<- _EOF_ >> "${S}"/config.toml
llvm-config = "$(get_llvm_prefix "${LLVM_MAX_SLOT}")/bin/llvm-config"
_EOF_
fi
done
if use wasm; then
cat <<- _EOF_ >> "${S}"/config.toml
[target.wasm32-unknown-unknown]
linker = "$(usex system-llvm lld rust-lld)"
_EOF_
fi
if [[ -n ${I_KNOW_WHAT_I_AM_DOING_CROSS} ]]; then # whitespace intentionally shifted below
# experimental cross support
# discussion: https://bugs.gentoo.org/679878
# TODO: c*flags, clang, system-llvm, cargo.eclass target support
# it would be much better if we could split out stdlib
# complilation to separate ebuild and abuse CATEGORY to
# just install to /usr/lib/rustlib/<target>
# extra targets defined as a bash array
# spec format: <LLVM target>:<rust-target>:<CTARGET>
# best place would be /etc/portage/env/dev-lang/rust
# Example:
# RUST_CROSS_TARGETS=(
# "AArch64:aarch64-unknown-linux-gnu:aarch64-unknown-linux-gnu"
# )
# no extra hand holding is done, no target transformations, all
# values are passed as-is with just basic checks, so it's up to user to supply correct values
# valid rust targets can be obtained with
# rustc --print target-list
# matching cross toolchain has to be installed
# matching LLVM_TARGET has to be enabled for both rust and llvm (if using system one)
# only gcc toolchains installed with crossdev are checked for now.
# BUG: we can't pass host flags to cross compiler, so just filter for now
# BUG: this should be more fine-grained.
filter-flags '-mcpu=*' '-march=*' '-mtune=*'
local cross_target_spec
for cross_target_spec in "${RUST_CROSS_TARGETS[@]}";do
# extracts first element form <LLVM target>:<rust-target>:<CTARGET>
local cross_llvm_target="${cross_target_spec%%:*}"
# extracts toolchain triples, <rust-target>:<CTARGET>
local cross_triples="${cross_target_spec#*:}"
# extracts first element after before : separator
local cross_rust_target="${cross_triples%%:*}"
# extracts last element after : separator
local cross_toolchain="${cross_triples##*:}"
use llvm_targets_${cross_llvm_target} || die "need llvm_targets_${cross_llvm_target} target enabled"
command -v ${cross_toolchain}-gcc > /dev/null 2>&1 || die "need ${cross_toolchain} cross toolchain"
cat <<- _EOF_ >> "${S}"/config.toml
[target.${cross_rust_target}]
cc = "${cross_toolchain}-gcc"
cxx = "${cross_toolchain}-g++"
linker = "${cross_toolchain}-gcc"
ar = "${cross_toolchain}-ar"
_EOF_
if use system-llvm; then
cat <<- _EOF_ >> "${S}"/config.toml
llvm-config = "$(get_llvm_prefix "${LLVM_MAX_SLOT}")/bin/llvm-config"
_EOF_
fi
# append cross target to "normal" target list
# example 'target = ["powerpc64le-unknown-linux-gnu"]'
# becomes 'target = ["powerpc64le-unknown-linux-gnu","aarch64-unknown-linux-gnu"]'
rust_targets="${rust_targets},\"${cross_rust_target}\""
sed -i "/^target = \[/ s#\[.*\]#\[${rust_targets}\]#" config.toml || die
ewarn
ewarn "Enabled ${cross_rust_target} rust target"
ewarn "Using ${cross_toolchain} cross toolchain"
ewarn
if ! has_version -b 'sys-devel/binutils[multitarget]' ; then
ewarn "'sys-devel/binutils[multitarget]' is not installed"
ewarn "'strip' will be unable to strip cross libraries"
ewarn "cross targets will be installed with full debug information"
ewarn "enable 'multitarget' USE flag for binutils to be able to strip object files"
ewarn
ewarn "Alternatively llvm-strip can be used, it supports stripping any target"
ewarn "define STRIP=\"llvm-strip\" to use it (experimental)"
ewarn
fi
done
fi # I_KNOW_WHAT_I_AM_DOING_CROSS
einfo "Rust configured with the following settings:"
cat "${S}"/config.toml || die
}
src_compile() {
# we need \n IFS to have config.env with spaces loaded properly. #734018
(
IFS=$'\n'
env $(cat "${S}"/config.env) RUST_BACKTRACE=1\
"${EPYTHON}" ./x.py dist -vv --config="${S}"/config.toml -j$(makeopts_jobs) || die
)
}
src_test() {
# https://rustc-dev-guide.rust-lang.org/tests/intro.html
# those are basic and codegen tests.
local tests=(
codegen
codegen-units
compile-fail
incremental
mir-opt
pretty
run-make
)
# fails if llvm is not built with ALL targets.
# and known to fail with system llvm sometimes.
use system-llvm || tests+=( assembly )
# fragile/expensive/less important tests
# or tests that require extra builds
# TODO: instead of skipping, just make some nonfatal.
if [[ ${ERUST_RUN_EXTRA_TESTS:-no} != no ]]; then
tests+=(
rustdoc
rustdoc-js
rustdoc-js-std
rustdoc-ui
run-make-fulldeps
ui
ui-fulldeps
)
fi
local i failed=()
einfo "rust_src_test: enabled tests ${tests[@]/#/src/test/}"
for i in "${tests[@]}"; do
local t="src/test/${i}"
einfo "rust_src_test: running ${t}"
if ! (
IFS=$'\n'
env $(cat "${S}"/config.env) RUST_BACKTRACE=1 \
"${EPYTHON}" ./x.py test -vv --config="${S}"/config.toml \
-j$(makeopts_jobs) --no-doc --no-fail-fast "${t}"
)
then
failed+=( "${t}" )
eerror "rust_src_test: ${t} failed"
fi
done
if [[ ${#failed[@]} -ne 0 ]]; then
eerror "rust_src_test: failure summary: ${failed[@]}"
die "aborting due to test failures"
fi
}
src_install() {
# https://github.com/rust-lang/rust/issues/77721
# also 1.46.0-don-t-create-prefix-at-time-of-check.patch
dodir "/usr/lib/${PN}/${PV}"
(
IFS=$'\n'
env $(cat "${S}"/config.env) DESTDIR="${D}" \
"${EPYTHON}" ./x.py install -vv --config="${S}"/config.toml || die
)
# bug #689562, #689160
rm -v "${D}/usr/lib/${PN}/${PV}/etc/bash_completion.d/cargo" || die
rmdir -v "${D}/usr/lib/${PN}/${PV}"/etc{/bash_completion.d,} || die
dobashcomp build/tmp/dist/cargo-image/etc/bash_completion.d/cargo
local symlinks=(
cargo
rustc
rustdoc
rust-gdb
rust-gdbgui
rust-lldb
)
use clippy && symlinks+=( clippy-driver cargo-clippy )
use miri && symlinks+=( miri cargo-miri )
use rls && symlinks+=( rls )
use rustfmt && symlinks+=( rustfmt cargo-fmt )
einfo "installing eselect-rust symlinks and paths: ${symlinks[@]}"
local i
for i in "${symlinks[@]}"; do
# we need realpath on /usr/bin/* symlink return version-appended binary path.
# so /usr/bin/rustc should point to /usr/lib/rust/<ver>/bin/rustc-<ver>
# need to fix eselect-rust to remove this hack.
local ver_i="${i}-${PV}"
if [[ -f "${ED}/usr/lib/${PN}/${PV}/bin/${i}" ]]; then
einfo "Installing ${i} symlink"
ln -v "${ED}/usr/lib/${PN}/${PV}/bin/${i}" "${ED}/usr/lib/${PN}/${PV}/bin/${ver_i}" || die
else
ewarn "${i} symlink requested, but source file not found"
ewarn "please report this"
fi
dosym "../lib/${PN}/${PV}/bin/${ver_i}" "/usr/bin/${ver_i}"
done
# symlinks to switch components to active rust in eselect
dosym "${PV}/lib" "/usr/lib/${PN}/lib-${PV}"
dosym "${PV}/share/man" "/usr/lib/${PN}/man-${PV}"
dosym "rust/${PV}/lib/rustlib" "/usr/lib/rustlib-${PV}"
dosym "../../lib/${PN}/${PV}/share/doc" "/usr/share/doc/${P}"
newenvd - "50${P}" <<-_EOF_
LDPATH="${EPREFIX}/usr/lib/rust/lib"
MANPATH="${EPREFIX}/usr/lib/rust/man"
$(usex elibc_musl 'CARGO_TARGET_X86_64_UNKNOWN_LINUX_MUSL_RUSTFLAGS="-C target-feature=-crt-static"' '')
_EOF_
rm -rf "${ED}/usr/lib/${PN}/${PV}"/*.old || die
rm -rf "${ED}/usr/lib/${PN}/${PV}/doc"/*.old || die
# note: eselect-rust adds EROOT to all paths below
cat <<-_EOF_ > "${T}/provider-${P}"
/usr/bin/cargo
/usr/bin/rustdoc
/usr/bin/rust-gdb
/usr/bin/rust-gdbgui
/usr/bin/rust-lldb
/usr/lib/rustlib
/usr/lib/rust/lib
/usr/lib/rust/man
/usr/share/doc/rust
_EOF_
if use clippy; then
echo /usr/bin/clippy-driver >> "${T}/provider-${P}"
echo /usr/bin/cargo-clippy >> "${T}/provider-${P}"
fi
if use miri; then
echo /usr/bin/miri >> "${T}/provider-${P}"
echo /usr/bin/cargo-miri >> "${T}/provider-${P}"
fi
if use rls; then
echo /usr/bin/rls >> "${T}/provider-${P}"
fi
if use rustfmt; then
echo /usr/bin/rustfmt >> "${T}/provider-${P}"
echo /usr/bin/cargo-fmt >> "${T}/provider-${P}"
fi
insinto /etc/env.d/rust
doins "${T}/provider-${P}"
}
pkg_postinst() {
eselect rust update
if has_version sys-devel/gdb || has_version dev-util/lldb; then
elog "Rust installs a helper script for calling GDB and LLDB,"
elog "for your convenience it is installed under /usr/bin/rust-{gdb,lldb}-${PV}."
fi
if has_version app-editors/emacs; then
elog "install app-emacs/rust-mode to get emacs support for rust."
fi
if has_version app-editors/gvim || has_version app-editors/vim; then
elog "install app-vim/rust-vim to get vim support for rust."
fi
}
pkg_postrm() {
eselect rust cleanup
}

Binary file not shown.

@ -16,7 +16,7 @@ SRC_URI="https://dl.bintray.com/boostorg/release/${PV}/source/boost_${MY_PV}.tar
LICENSE="Boost-1.0"
SLOT="0/${PV}" # ${PV} instead ${MAJOR_V} due to bug 486122
KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x86-solaris ~x86-winnt"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x86-solaris ~x86-winnt"
IUSE="bzip2 context debug doc icu lzma +nls mpi numpy python static-libs +threads tools zlib zstd"
REQUIRED_USE="
mpi? ( threads )

@ -0,0 +1,120 @@
From 5d3053ea78b349b81b7a562974ad78f93d169791 Mon Sep 17 00:00:00 2001
From: Jaroslaw Staniek <staniek@kde.org>
Date: Tue, 16 Jun 2020 21:59:12 +0200
Subject: [PATCH] Fix build with GCC 10 (make KReportGroupTracker use C++ file)
BUG:422886
CCMAIL:adam@piggz.co.uk
FIXED-IN:3.2.1
---
src/CMakeLists.txt | 5 +---
.../scripting/KReportGroupTracker.cpp | 26 +++++++++++++++++++
src/renderer/scripting/KReportGroupTracker.h | 25 +++++++++++++++---
3 files changed, 48 insertions(+), 8 deletions(-)
create mode 100644 src/renderer/scripting/KReportGroupTracker.cpp
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 1cf0b389..65bcf6e5 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -106,6 +106,7 @@ set(kreport_TARGET_INCLUDE_DIRS
if(KREPORT_SCRIPTING)
list(APPEND kreport_LIB_SRCS
+ renderer/scripting/KReportGroupTracker.cpp
renderer/scripting/KReportScriptHandler.cpp
renderer/scripting/KReportScriptConstants.cpp
renderer/scripting/KReportScriptDebug.cpp
@@ -133,10 +134,6 @@ if(KREPORT_SCRIPTING)
items/text/KReportScriptText.cpp
)
- qt_wrap_cpp(KReport kreport_LIB_SRCS
- renderer/scripting/KReportGroupTracker.h
- )
-
list(APPEND kreport_INCLUDE_DIRS
${CMAKE_CURRENT_SOURCE_DIR}/renderer/scripting
)
diff --git a/src/renderer/scripting/KReportGroupTracker.cpp b/src/renderer/scripting/KReportGroupTracker.cpp
new file mode 100644
index 00000000..9274d4a5
--- /dev/null
+++ b/src/renderer/scripting/KReportGroupTracker.cpp
@@ -0,0 +1,26 @@
+/* This file is part of the KDE project
+ * Copyright (C) 2015 by Adam Pigg (adam@piggz.co.uk)
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#include "KReportGroupTracker.h"
+
+KReportGroupTracker::KReportGroupTracker()
+{
+}
+
+KReportGroupTracker::~KReportGroupTracker()
+{
+}
diff --git a/src/renderer/scripting/KReportGroupTracker.h b/src/renderer/scripting/KReportGroupTracker.h
index e434e05a..4c0852ea 100644
--- a/src/renderer/scripting/KReportGroupTracker.h
+++ b/src/renderer/scripting/KReportGroupTracker.h
@@ -1,3 +1,20 @@
+/* This file is part of the KDE project
+ * Copyright (C) 2015 by Adam Pigg (adam@piggz.co.uk)
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
+ */
+
#ifndef KREPORTGROUPTRACKER_H
#define KREPORTGROUPTRACKER_H
@@ -7,16 +24,16 @@
/*!
* @brief Keeps track of groups as the data for the group changes
*/
-class KREPORT_EXPORT KReportGroupTracker : public QObject {
+class KREPORT_EXPORT KReportGroupTracker : public QObject
+{
Q_OBJECT
protected:
- KReportGroupTracker() {}
- ~KReportGroupTracker() override{}
+ KReportGroupTracker();
+ ~KReportGroupTracker() override;
public:
Q_SLOT virtual void setGroupData(const QMap<QString, QVariant> &groupData) = 0;
};
#endif // KREPORTGROUPTRACKER_H
-
--
GitLab

@ -0,0 +1,58 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
ECM_QTHELP="true"
ECM_TEST="true"
PYTHON_COMPAT=( python3_{7,8,9} )
KFMIN=5.74.0
QTMIN=5.15.1
VIRTUALX_REQUIRED="test"
inherit ecm kde.org python-any-r1
DESCRIPTION="Framework for creation and generation of reports in multiple formats"
HOMEPAGE="https://community.kde.org/KReport"
if [[ ${KDE_BUILD_TYPE} = release ]]; then
SRC_URI="mirror://kde/stable/${PN}/src/${P}.tar.xz"
KEYWORDS="~amd64 ~x86"
fi
LICENSE="LGPL-2+"
SLOT="5/4"
IUSE="marble +scripting webkit"
RDEPEND="
>=dev-libs/kproperty-${PV}:5=
>=dev-qt/qtgui-${QTMIN}:5
>=dev-qt/qtprintsupport-${QTMIN}:5
>=dev-qt/qtwidgets-${QTMIN}:5
>=dev-qt/qtxml-${QTMIN}:5
>=kde-frameworks/kconfig-${KFMIN}:5
>=kde-frameworks/kcoreaddons-${KFMIN}:5
>=kde-frameworks/kguiaddons-${KFMIN}:5
>=kde-frameworks/kwidgetsaddons-${KFMIN}:5
marble? ( kde-apps/marble:5= )
scripting? ( >=dev-qt/qtdeclarative-${QTMIN}:5 )
webkit? ( >=dev-qt/qtwebkit-5.212.0_pre20180120:5 )
"
DEPEND="${RDEPEND}
${PYTHON_DEPS}
"
PATCHES=( "${FILESDIR}/${P}-gcc10.patch" )
pkg_setup() {
python-any-r1_pkg_setup
ecm_pkg_setup
}
src_configure() {
local mycmakeargs=(
$(cmake_use_find_package marble Marble)
$(cmake_use_find_package webkit Qt5WebKitWidgets)
-DKREPORT_SCRIPTING=$(usex scripting)
)
ecm_src_configure
}

@ -1 +1,2 @@
DIST libpqxx-7.1.2.tar.gz 693152 BLAKE2B da28d0041fc345eb7774eadf0a886e2a89692ac47d870120991aa97328a6be7d10e8cb2d6deb9e056dc7e05b04fd317d9d0fe4dcf8eab901114b27cd64bf4ff6 SHA512 a4a76c62f6115f5898e4c4bb1c6f095284bdb7ae6a1efa45add9efd422d2a8280d1698caa2469acbb087168208ae0fd8efa36c8735a8ce30e58853e27acd4161
DIST libpqxx-7.2.1.tar.gz 691486 BLAKE2B ef1b12e436e33a26faa8f5acceef8d5ab1063b0618798fdf881fe38ab101da6d78989cc30c1e24f60fd81dd4f4034267e8b220b7b1d1932793028abf7e17c614 SHA512 baaa53f12aa87f512bbbe7494c915242cda8508b43414b79e6cd047dbd61902cbe54cb34af13d75bdccd70bdbafcaca155b4ccb426d8b831bd4df46e9a57e3a2

@ -0,0 +1,78 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python3_{6..9} )
inherit python-any-r1
KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
DESCRIPTION="Standard front-end for writing C++ programs that use PostgreSQL"
SRC_URI="https://github.com/jtv/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
HOMEPAGE="http://pqxx.org/development/libpqxx/"
LICENSE="BSD"
SLOT="0"
IUSE="doc static-libs"
RDEPEND="dev-db/postgresql:="
DEPEND="${RDEPEND}
${PYTHON_DEPS}
doc? (
app-doc/doxygen
app-text/xmlto
)
"
DOCS=( AUTHORS NEWS README{.md,-UPGRADE} )
src_configure() {
econf \
--enable-shared \
$(use_enable doc documentation) \
$(use_enable static-libs static)
}
src_test() {
einfo "The tests need a running PostgreSQL server and an existing database."
einfo "Test requires PGDATABASE and PGUSER to be set at a minimum. Optionally,"
einfo "set PGPORT and PGHOST. Define them at the command line or in:"
einfo " ${EROOT}/etc/libpqxx_test_env"
if [[ -z $PGDATABASE || -z $PGUSER ]] ; then
if [[ -f ${EROOT}/etc/libpqxx_test_env ]] ; then
source "${EROOT}/etc/libpqxx_test_env"
[[ -n $PGDATABASE ]] && export PGDATABASE
[[ -n $PGHOST ]] && export PGHOST
[[ -n $PGPORT ]] && export PGPORT
[[ -n $PGUSER ]] && export PGUSER
fi
fi
if [[ -n $PGDATABASE && -n $PGUSER ]] ; then
local server_version
server_version=$(psql -Aqtc 'SELECT version();' 2> /dev/null)
if [[ $? = 0 ]] ; then
cd "${S}/test" || die
emake check
else
eerror "Is the server running?"
eerror "Verify role and database exist, and are permitted in pg_hba.conf for:"
eerror " Role: ${PGUSER}"
eerror " Database: ${PGDATABASE}"
die "Couldn't connect to server."
fi
else
eerror "PGDATABASE and PGUSER must be set to perform tests."
eerror "Skipping tests."
fi
}
src_install () {
use doc && HTML_DOCS=( doc/html/. )
default
if ! use static-libs; then
find "${D}" -name '*.la' -delete || die
fi
}

@ -1 +1,2 @@
DIST libqtxdg-3.5.0.tar.xz 73248 BLAKE2B 0e587e640abda9cdf55cbeac270382386be2bc26b291bb9f655d845acb381b7f65048d213039a6e7ae9cc5d03fa29911bc2277140524d73f0e005745759a39b6 SHA512 014407a3dc869dd324c3840d54c0aa4565a2f69f147b172548458dee69d33474d9c2ebf50112d1ef7e36ed0aea0fb055f8e03901314230a6c55a84808bd52653
DIST libqtxdg-3.6.0.tar.xz 76028 BLAKE2B 138f0f8bf9889c7f6aa0d4016c52d4c7745a9f3b34b53babba5d0be457485157d66884395488d4e978ba953332696b977bb60c1d04b6b0a53086ab7f3b0b4492 SHA512 8574bb6834c0a44c983e906c3d84fb5cfd6e2f40ec2ac70f4998ec5fe213aeb0d4439ff294f56c1988cb9d1b311c4e074906ba66b21d24190a911d0e643d1a16

@ -0,0 +1,52 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit cmake virtualx
DESCRIPTION="Qt Implementation of XDG Standards"
HOMEPAGE="https://lxqt.github.io/"
if [[ ${PV} == *9999 ]]; then
inherit git-r3
EGIT_REPO_URI="https://github.com/lxqt/${PN}.git"
else
SRC_URI="https://github.com/lxqt/${PN}/releases/download/${PV}/${P}.tar.xz"
KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
fi
LICENSE="LGPL-2.1+ Nokia-Qt-LGPL-Exception-1.1"
SLOT="0"
IUSE="test"
RESTRICT="!test? ( test )"
BDEPEND="
>=dev-util/lxqt-build-tools-0.8.0
virtual/pkgconfig
"
RDEPEND="
dev-qt/qtcore:5
dev-qt/qtdbus:5
dev-qt/qtgui:5=
dev-qt/qtsvg:5
dev-qt/qtwidgets:5
dev-qt/qtxml:5
x11-misc/xdg-utils
"
DEPEND="${RDEPEND}
test? ( dev-qt/qttest:5 )
"
src_configure() {
local mycmakeargs=(
-DBUILD_TESTS=$(usex test)
)
cmake_src_configure
}
src_test() {
# Tests don't work with C
LC_ALL=en_US.utf8 virtx cmake_src_test
}

@ -1 +1,2 @@
DIST poco-1.10.1.tar.gz 10224204 BLAKE2B 644bb2134c571e10b63937ca15b3f5d7255767bcc99dd6b6107a13d64ed7ac83d499d74f04084c666bbf5ef6f033d57d2fb1de0b8b8487844e3aaf8cefe6fba8 SHA512 40aa8049c68651f461280937c1c733e13d1cedbec12bc44a7f3a6c131d31229c5445067052441427071f6102fd1965d238b2222c0689279dd156b4e261ac9e73
DIST poco-1.9.0.tar.gz 10012966 BLAKE2B 98848e87008c71dc5131dbd1c2b17afc414074a3e26237918baf231b4e56ce3d69347cf7a3017715895f4ee56a428672fcb804fb3c732da0000ccc9790b0081d SHA512 de2346d62b2e89ba04abe62a83f6ede7a496e80bcbe53a880a1aa8e87a8ebd9a430dd70fdc6aada836bb1021c6df21375fd0cbcf62dbb6e29a2f65d6d90cf2b9

@ -0,0 +1,13 @@
diff --git a/cmake/FindODBC.cmake b/cmake/FindODBC.cmake
index 55318b520..fb7efbffe 100644
--- a/cmake/FindODBC.cmake
+++ b/cmake/FindODBC.cmake
@@ -34,7 +34,7 @@ find_path(ODBC_INCLUDE_DIR
${ODBC_ROOT_INCLUDE_DIRS}
PATHS
${PC_ODBC_INCLUDE_DIRS}
- /usr/include
+ /usr/include/iodbc
/usr/local/include
/usr/local/odbc/include
/usr/local/iodbc/include

@ -1,7 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<maintainer type="person">
<email>davidroman96@gmail.com</email>
<name>David Roman</name>
</maintainer>
<maintainer type="project">
<email>proxy-maint@gentoo.org</email>
<name>Proxy Maintainers</name>
</maintainer>
<longdescription>
POCO, the C++ Portable Components, is a collection of open source
C++ class libraries that simplify and accelerate the development of

@ -0,0 +1,136 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit cmake
DESCRIPTION="C++ libraries for building network-based applications"
HOMEPAGE="https://pocoproject.org/"
SRC_URI="https://github.com/pocoproject/${PN}/archive/${P}-release.tar.gz -> ${P}.tar.gz"
S="${WORKDIR}/${PN}-${P}-release"
LICENSE="Boost-1.0"
SLOT="0"
KEYWORDS="~amd64 ~arm ~x86"
IUSE="7z cppparser +crypto +data examples +file2pagecompiler iodbc +json libressl mariadb +mongodb mysql +net odbc +pagecompiler pdf pocodoc sqlite +ssl test +util +xml +zip"
RESTRICT="!test? ( test )"
REQUIRED_USE="
7z? ( xml )
file2pagecompiler? ( pagecompiler )
iodbc? ( odbc )
mongodb? ( data )
mysql? ( data )
odbc? ( data )
pagecompiler? ( json net util xml )
pocodoc? ( cppparser util xml )
sqlite? ( data )
ssl? ( util )
test? ( data? ( sqlite ) json util xml )
"
BDEPEND="virtual/pkgconfig"
RDEPEND="
>=dev-libs/libpcre-8.42
mysql? ( !mariadb? ( dev-db/mysql-connector-c:0= )
mariadb? ( dev-db/mariadb-connector-c:0= ) )
odbc? ( iodbc? ( dev-db/libiodbc )
!iodbc? ( dev-db/unixODBC ) )
sqlite? ( dev-db/sqlite:3 )
ssl? (
!libressl? ( dev-libs/openssl:0= )
libressl? ( dev-libs/libressl:0= )
)
xml? ( dev-libs/expat )
zip? ( sys-libs/zlib )
"
DEPEND="${RDEPEND}"
PATCHES=( "${FILESDIR}/${PN}-1.10.1-iodbc-incdir.patch" )
src_prepare() {
cmake_src_prepare
if use test ; then
# ignore missing tests on experimental library
# and tests requiring running DB-servers, internet connections, etc.
sed -i -e '/testsuite/d' \
{Data/{MySQL,ODBC},MongoDB,Net,NetSSL_OpenSSL,PDF,Redis}/CMakeLists.txt || die
# Poco expands ~ using passwd, which does not match $HOME in the build environment
sed -i -e '/CppUnit_addTest.*testExpand/d' \
Foundation/testsuite/src/PathTest.cpp || die
# ignore failing Crypto test since upstream does not seem to care,
# see https://github.com/pocoproject/poco/issues/1209
sed -i -e '/RSATest, testRSACipherLarge/d' \
Crypto/testsuite/src/RSATest.cpp || die
fi
if use mariadb ; then
# Fix MariaDB detection
sed -i -e 's~/usr/include/mysql~~' \
-e 's/STATUS "Couldn/FATAL_ERROR "Couldn/' \
cmake/FindMySQL.cmake || die
else
# Fix MySQL detection
sed -i -e 's/mysqlclient_r/mysqlclient/' \
-e 's/STATUS "Couldn/FATAL_ERROR "Couldn/' \
cmake/FindMySQL.cmake || die
fi
# Add missing directory that breaks the build
mkdir -p Encodings/testsuite/data || die
if ! use iodbc ; then
sed -i -e 's|iodbc||' cmake/FindODBC.cmake || die
fi
}
src_configure() {
# apache support is dead and buggy, https://github.com/pocoproject/poco/issues/1764
local mycmakeargs=(
-DPOCO_UNBUNDLED=ON
-DENABLE_APACHECONNECTOR=OFF
-DENABLE_CPPPARSER="$(usex cppparser)"
-DENABLE_CRYPTO="$(usex ssl)"
-DENABLE_DATA="$(usex data)"
-DENABLE_DATA_MYSQL="$(usex mysql)"
-DENABLE_DATA_ODBC="$(usex odbc)"
-DENABLE_DATA_SQLITE="$(usex sqlite)"
-DENABLE_JSON="$(usex util)"
-DENABLE_MONGODB="$(usex mongodb)"
-DENABLE_NET="$(usex net)"
-DENABLE_NETSSL="$(usex ssl)"
-DENABLE_NETSSL_WIN=OFF
-DENABLE_PAGECOMPILER="$(usex pagecompiler)"
-DENABLE_PAGECOMPILER_FILE2PAGE="$(usex file2pagecompiler)"
-DENABLE_PDF="$(usex pdf)"
-DENABLE_POCODOC="$(usex pocodoc)"
-DENABLE_SEVENZIP="$(usex 7z)"
-DENABLE_TESTS="$(usex test)"
-DENABLE_UTIL="$(usex util)"
-DENABLE_XML="$(usex xml)"
-DENABLE_ZIP="$(usex zip)"
)
cmake_src_configure
}
src_test() {
POCO_BASE="${S}" cmake_src_test
}
src_install() {
cmake_src_install
if use examples ; then
for sd in */samples ; do
docinto examples/${sd%/samples}
dodoc -r ${sd}
done
find "${D}/usr/share/doc/${PF}/examples" \
-iname "*.sln" -or -iname "*.vcproj" -or \
-iname "*.vmsbuild" -or -iname "*.properties" \
| xargs rm -v || die
fi
}

Binary file not shown.

@ -11,7 +11,7 @@ SRC_URI="https://github.com/Olivine-Labs/${PN}/archive/v${PV}.tar.gz -> ${P}.tar
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
KEYWORDS="~amd64 arm ~arm64 ~ppc ~ppc64 ~x86"
IUSE="test"
RESTRICT="!test? ( test )"

@ -18,7 +18,7 @@ S="${WORKDIR}/${LUA_COMPAT_PN}-${LUA_COMPAT_PV}"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~x86 ~amd64-linux ~x86-linux"
KEYWORDS="~amd64 arm arm64 ~x86 ~amd64-linux ~x86-linux"
IUSE="test"
RESTRICT="!test? ( test )"

@ -16,7 +16,7 @@ SRC_URI="https://github.com/hoelzro/lua-term/archive/${MY_PV}.tar.gz -> ${P}.tar
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
KEYWORDS="~amd64 arm ~arm64 ~ppc ~ppc64 ~x86"
IUSE=""
BDEPEND="virtual/pkgconfig"

@ -16,7 +16,7 @@ SRC_URI="https://github.com/amireh/${PN}/archive/v${MY_PV}.tar.gz -> ${P}.tar.gz
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
KEYWORDS="~amd64 arm ~arm64 ~ppc ~ppc64 ~x86"
IUSE="doc"
BDEPEND="virtual/pkgconfig"

@ -11,7 +11,7 @@ SRC_URI="http://matthewwild.co.uk/projects/${PN}/${P}.tar.gz"
LICENSE="MIT"
SLOT="0"
KEYWORDS="amd64 arm ~arm64 hppa ~mips ppc ppc64 sparc x86"
KEYWORDS="amd64 arm ~arm64 ~hppa ~mips ppc ppc64 sparc x86"
IUSE=""
RDEPEND=">=dev-lang/lua-5.1.5-r2:0[deprecated,${MULTILIB_USEDEP}]

@ -0,0 +1,78 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
LUA_COMPAT=( lua5-{1..3} )
LUA_REQ_USE="${MULTILIB_USEDEP}"
inherit lua multilib-minimal toolchain-funcs
DESCRIPTION="LuaExpat is a SAX XML parser based on the Expat library"
HOMEPAGE="https://matthewwild.co.uk/projects/luaexpat/"
SRC_URI="https://matthewwild.co.uk/projects/${PN}/${P}.tar.gz"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~sparc ~x86"
REQUIRED_USE="${LUA_REQUIRED_USE}"
RDEPEND="
dev-libs/expat[${MULTILIB_USEDEP}]
${LUA_DEPS}
"
DEPEND="${RDEPEND}"
BDEPEND="virtual/pkgconfig"
HTML_DOCS=( "doc/us/." )
src_prepare() {
default
# Respect users CFLAGS
# Add '-DLUA_32BITS' for fixing compilation with lua5.3
sed -e 's/-O2/-DLUA_32BITS/g' -i Makefile || die
multilib_copy_sources
}
lua_multilib_src_compile() {
# Clean project, to compile it for every lua slot
emake clean
local myemakeargs=(
"CC=$(tc-getCC)"
"LUA_INC=$(lua_get_CFLAGS)"
)
emake "${myemakeargs[@]}"
# Copy module to match the choosen LUA implementation
cp "src/lxp.so" "src/lxp-${ELUA}.so" || die
}
multilib_src_compile() {
lua_foreach_impl lua_multilib_src_compile
}
lua_multilib_src_install() {
# Use correct module for the choosen LUA implementation
cp "src/lxp-${ELUA}.so" "src/lxp.so" || die
local myemakeargs=(
"DESTDIR=${ED}"
"LUA_CDIR=$(lua_get_cmod_dir)"
"LUA_INC=$(lua_get_include_dir)"
"LUA_LDIR=$(lua_get_lmod_dir)"
)
emake "${myemakeargs[@]}" install
}
multilib_src_install() {
lua_foreach_impl lua_multilib_src_install
}
multilib_src_install_all() {
einstalldocs
}

@ -11,7 +11,7 @@ SRC_URI="http://matthewwild.co.uk/projects/${PN}/${P}.tar.gz"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~sparc ~x86"
KEYWORDS="~amd64 arm arm64 ~hppa ~mips ~ppc ~ppc64 ~sparc ~x86"
RDEPEND=">=dev-lang/lua-5.1.5-r2:0[${MULTILIB_USEDEP}]
>=dev-libs/expat-2.1.0-r3[${MULTILIB_USEDEP}]"

@ -1,48 +0,0 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit multilib-minimal toolchain-funcs
DESCRIPTION="LuaExpat is a SAX XML parser based on the Expat library"
HOMEPAGE="https://matthewwild.co.uk/projects/luaexpat/ https://github.com/tomasguisasola/luaexpat"
SRC_URI="https://github.com/tomasguisasola/luaexpat/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~sparc ~x86"
RDEPEND=">=dev-lang/lua-5.1.5-r2:0[${MULTILIB_USEDEP}]
>=dev-libs/expat-2.1.0-r3[${MULTILIB_USEDEP}]"
DEPEND="${RDEPEND}"
BDEPEND="virtual/pkgconfig"
PATCHES=(
"${FILESDIR}/${P}_makefile.patch"
"${FILESDIR}/${P}_getcurrentbytecount.patch"
)
src_prepare() {
default
multilib_copy_sources
}
multilib_src_compile() {
emake \
CFLAGS="${CFLAGS}" \
LDFLAGS="${LDFLAGS}" \
CC="$(tc-getCC)" \
LUA_INC="$($(tc-getPKG_CONFIG) --variable INSTALL_INC lua)"
}
multilib_src_install() {
emake \
LUA_DIR="${D}/$($(tc-getPKG_CONFIG) --variable INSTALL_LMOD lua)" \
LUA_LIBDIR="${D}/$($(tc-getPKG_CONFIG) --variable INSTALL_CMOD lua)" \
install
}
multilib_src_install_all() {
dodoc -r README.md doc/*
}

@ -0,0 +1,82 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
LUA_COMPAT=( lua5-{1..3} )
LUA_REQ_USE="${MULTILIB_USEDEP}"
inherit lua multilib-minimal toolchain-funcs
DESCRIPTION="LuaExpat is a SAX XML parser based on the Expat library"
HOMEPAGE="https://github.com/tomasguisasola/luaexpat"
SRC_URI="https://github.com/tomasguisasola/luaexpat/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~sparc ~x86"
REQUIRED_USE="${LUA_REQUIRED_USE}"
RDEPEND="
dev-libs/expat[${MULTILIB_USEDEP}]
${LUA_DEPS}
"
DEPEND="${RDEPEND}"
BDEPEND="virtual/pkgconfig"
HTML_DOCS=( "doc/us/." )
PATCHES=(
"${FILESDIR}/${P}_makefile.patch"
"${FILESDIR}/${P}_getcurrentbytecount.patch"
"${FILESDIR}/${P}_restore_functionality.patch"
)
src_prepare() {
default
# Respect users CFLAGS
sed -e 's/-O2//g' -i makefile || die
multilib_copy_sources
}
lua_multilib_src_compile() {
# Clean project, to compile it for every lua slot
emake clean
local myemakeargs=(
"CC=$(tc-getCC)"
"LUA_INC=$(lua_get_include_dir)"
)
emake "${myemakeargs[@]}"
# Copy module to match the choosen LUA implementation
cp "src/lxp.so.${PV}" "src/lxp-${ELUA}.so.${PV}" || die
}
multilib_src_compile() {
lua_foreach_impl lua_multilib_src_compile
}
lua_multilib_src_install() {
# Use correct module for the choosen LUA implementation
cp "src/lxp-${ELUA}.so.${PV}" "src/lxp.so.${PV}" || die
local myemakeargs=(
"LUA_DIR=${ED}/$(lua_get_lmod_dir)"
"LUA_INC=${ED}/$(lua_get_include_dir)"
"LUA_LIBDIR=${ED}/$(lua_get_cmod_dir)"
)
emake "${myemakeargs[@]}" install
}
multilib_src_install() {
lua_foreach_impl lua_multilib_src_install
}
multilib_src_install_all() {
einstalldocs
}

@ -1,15 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>azamat.hackimov@gmail.com</email>
<name>Azamat H. Hackimov</name>
</maintainer>
<maintainer type="project">
<email>proxy-maint@gentoo.org</email>
<name>Proxy Maintainers</name>
</maintainer>
<upstream>
<remote-id type="github">tomasguisasola/luaexpat</remote-id>
</upstream>
<maintainer type="person">
<email>azamat.hackimov@gmail.com</email>
<name>Azamat H. Hackimov</name>
</maintainer>
<maintainer type="project">
<email>proxy-maint@gentoo.org</email>
<name>Proxy Maintainers</name>
</maintainer>
<maintainer type="person">
<email>conikost@gentoo.org</email>
<name>Conrad Kostecki</name>
</maintainer>
<upstream>
<remote-id type="github">tomasguisasola/luaexpat</remote-id>
</upstream>
</pkgmetadata>

@ -0,0 +1,47 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit toolchain-funcs
MY_PV=${PV//./_}
DESCRIPTION="File System Library for the Lua programming language"
HOMEPAGE="https://keplerproject.github.io/luafilesystem/"
SRC_URI="https://github.com/keplerproject/${PN}/archive/v${MY_PV}.tar.gz -> ${P}.tar.gz"
S="${WORKDIR}/${PN}-${MY_PV}"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64 arm arm64 ~hppa ~mips ~ppc ~ppc64 ~sparc ~x86"
IUSE="luajit test"
RESTRICT="!test? ( test )"
RDEPEND="
>=dev-lang/lua-5.1:0
luajit? ( dev-lang/luajit:2 )
"
DEPEND="${RDEPEND}"
BDEPEND="
virtual/pkgconfig
test? ( ${RDEPEND} )
"
HTML_DOCS=( "doc/us/." )
src_prepare() {
default
cat > "config" <<-EOF
CC=$(tc-getCC)
CFLAGS=${CFLAGS} -I$($(tc-getPKG_CONFIG) --variable includedir $(usex luajit 'luajit' 'lua')) -fPIC
DESTDIR=${ED}
LIB_OPTION=${LDFLAGS} -shared
LUA_LIBDIR=$($(tc-getPKG_CONFIG) --variable INSTALL_CMOD $(usex luajit 'luajit' 'lua'))
EOF
}
src_test() {
LUA_CPATH="src/lfs.so" lua tests/test.lua || die
}

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

Loading…
Cancel
Save