parent
93f2900918
commit
97797702e2
@ -1,23 +1,23 @@
|
||||
-----BEGIN PGP SIGNED MESSAGE-----
|
||||
Hash: SHA512
|
||||
|
||||
MANIFEST Manifest.files.gz 29240 BLAKE2B 7a7aa0cc29a568315ccb1da5384346605f73d9d8a25467f29e4be36528bdd6a5d907a3d9659fe3f89857bb2a67fa680a7076b860a1393ae9f481b03d65ce97bb SHA512 4449412de4391d589e0ea2656da7eb92d83e7a7176cafd4e7e4b084d9ff1974ac57ecb4ed430d6cdee555aefafcbdb64d86a902efb1a7ab296db97d8b52b6cb4
|
||||
TIMESTAMP 2021-02-28T20:08:32Z
|
||||
MANIFEST Manifest.files.gz 29277 BLAKE2B d39219582fc580e778f36c81d9e90548c9dc0ce13ec72143fed3c96bf6e6d65733e2329cd8f3f4bcf2b95e2be869a76faef2cb263e0b9f8a5dd9e02c454abb71 SHA512 cb0f3d2c871622407ebb324d0337e594e00b72ef3ccf0f98872a55045c0fbe020cf29c5c153cb4fc7697b7388cfedebb415e5e2603c97daf600bf9dc0d79514c
|
||||
TIMESTAMP 2021-03-01T06:38:34Z
|
||||
-----BEGIN PGP SIGNATURE-----
|
||||
|
||||
iQKTBAEBCgB9FiEE4dartjv8+0ugL98c7FkO6skYklAFAmA7+EBfFIAAAAAALgAo
|
||||
iQKTBAEBCgB9FiEE4dartjv8+0ugL98c7FkO6skYklAFAmA8i+pfFIAAAAAALgAo
|
||||
aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldEUx
|
||||
RDZBQkI2M0JGQ0ZCNEJBMDJGREYxQ0VDNTkwRUVBQzkxODkyNTAACgkQ7FkO6skY
|
||||
klC5Gg//fgwR5k1YGTCH9ork8jatkJ7fSJVadTaxFa93akiS6gVDCDuh1OyYLx6w
|
||||
d9Tp638JowHBUrdezopkU9pTArkTae8bHlq0yVBYnCcqyjesVtxNBFU8FidRBGCV
|
||||
mcL078OHNlwUm4/8i/yPnhD+Lri1XrwCvVAkTR5Ff9Runu9jgX8+ljU5+DdW0o7g
|
||||
3aYwsM44ERCpT6GnkgYsJd3uFQihULAwkWlPyHFE6OY4Nrqr0/AK5IudCCPaITd6
|
||||
MTSYdExc6f95+u4oXS5DQFb00oGLV56qJz/eq3vsED1J72Kiudt7SX7Xf5RghBHH
|
||||
AGdOW55DHwsVTUeB7pCjyZCsVrQL/Opia8jaMVfJ1Y7UTI9bO0CFir4pF7HOrviW
|
||||
f+xQgot57glyGQSd96laRvIJjqDl3cyFRs64OgeNrr3u+zUWXnAHvvILRJYN83gL
|
||||
Pv0b1DXiFB+Tt19hGRZtsiIL2fGUyzlroORu3+aOGyhNH2GBGBm0wZT9MGBeHCjc
|
||||
jT1PpGrTKa+AqmpwMD5kegN/I+U7qhTvvtDsLNd0BylXwY04js7xzSxGxC8VZOyE
|
||||
GxqcOvQfmaoI947hUnWGzXGP03eJboWbENoNWMkRhEK4Zya9aiANnnXvNo0tfp6W
|
||||
igyP5d9RyYB7oalT5MBmqRbobYICRhEnwXAAbpcNKZ4dMDw/hbc=
|
||||
=0qEq
|
||||
klA0kw//RZb3OgU9oR4c1LV0I7DMCfnd9xgEfKzmG5JGYvJYxPMLrt8UYxCMmbJi
|
||||
ufRx3SF1TL/e+dJOigoOnonpbXaqL333dZgjiblAlFlvErL1IY19B9oYHv1sDHq2
|
||||
O/3z/3Epxoew0N8rpOJL6VGOaqyScU5uNh62iEP4fMVzOQzphE1NJDpTPSwrO0kE
|
||||
YZBC8kjOupQPw0lzJbLnwBG5pu3qt1RkHx37Na3gykSVuuDJkbrGdAARAXbqrqhg
|
||||
UXZof2eGQbOBHj9WHRPbT5Z/LBn7si9B025nBk2JUuiAVRzflngulWLaah4vzZSS
|
||||
QYoTdeB1hT1lwd69A0+YRyljlPbcuQIPxRJoxgb8mO7iETnBFwOy2v654BiSda8Y
|
||||
HXkPqPhuboymaHjwaze3Ak/Gm0FjAeV/6qAyUiZaPMRMJRDPt9lBpGpjhC8vtmMb
|
||||
/Q1ojoWN8mZCRZjO6ywZlGwL7iiyyexItPJwWVF3ompjuMMZDuHxhaYYZK5IuIDe
|
||||
LHNo9xwtI7LTV79wYNqUhREdLI8U54t25c8llbY0Ue+vIQYeiwYfP0BdxfWTluqc
|
||||
BLcsf0W9PZBxeLEoicGDSO/B/0yUymEK/yBCdIzVIGYHuEnMO0fsqjfVD2daL7dm
|
||||
wsF44eEGpqZwnekNr9bogRhTlDbxSfdQ0mefa/cjQ/1FL5SsIvA=
|
||||
=doLI
|
||||
-----END PGP SIGNATURE-----
|
||||
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -1,240 +0,0 @@
|
||||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
inherit versionator multilib eutils readme.gentoo-r1 rpm systemd pax-utils
|
||||
|
||||
DESCRIPTION="IBM Spectrum Protect (former Tivoli Storage Manager) Backup/Archive Client, API"
|
||||
HOMEPAGE="https://www.ibm.com/us-en/marketplace/data-protection-and-recovery"
|
||||
|
||||
MY_PV_MAJOR=$(get_major_version)
|
||||
MY_PV_MINOR=$(get_version_component_range 2)
|
||||
MY_PV_TINY=$(get_version_component_range 3)
|
||||
MY_PV_PATCH=$(get_version_component_range 4)
|
||||
|
||||
MY_PV_NODOTS="${MY_PV_MAJOR}${MY_PV_MINOR}${MY_PV_TINY}"
|
||||
MY_PVR_ALLDOTS=${PV}
|
||||
|
||||
if [[ ${MY_PV_PATCH} == 0 ]]; then
|
||||
MY_RELEASE_PATH=maintenance
|
||||
else
|
||||
MY_RELEASE_PATH=patches
|
||||
fi
|
||||
BASE_URI="ftp://ftp.software.ibm.com/storage/tivoli-storage-management/"
|
||||
BASE_URI+="${MY_RELEASE_PATH}/client/v${MY_PV_MAJOR}r${MY_PV_MINOR}/"
|
||||
BASE_URI+="Linux/LinuxX86/BA/v${MY_PV_NODOTS}/"
|
||||
SRC_TAR="${MY_PVR_ALLDOTS}-TIV-TSMBAC-LinuxX86.tar"
|
||||
SRC_URI="${BASE_URI}${SRC_TAR}"
|
||||
|
||||
RESTRICT="strip" # Breaks libPiIMG.so and libPiSNAP.so
|
||||
LICENSE="Apache-1.1 Apache-2.0 JDOM BSD-2 CC-PD Boost-1.0 MIT CPL-1.0 HPND Exolab
|
||||
dom4j EPL-1.0 FTL icu unicode IBM Info-ZIP LGPL-2 LGPL-2.1 openafs-krb5-a
|
||||
ZLIB MPL-1.0 MPL-1.1 NPL-1.1 openssl OPENLDAP RSA public-domain W3C
|
||||
|| ( BSD GPL-2+ ) gSOAP libpng tsm"
|
||||
|
||||
SLOT="0"
|
||||
KEYWORDS="-* amd64"
|
||||
IUSE="acl java +tsm-cit +tsm-hw"
|
||||
QA_PREBUILT="*"
|
||||
|
||||
# not available (yet?)
|
||||
#MY_LANGS="cs:CS_CZ de:DE_DE es:ES_ES fr:FR_FR hu:HU_HU it:IT_IT ja:JA_JP
|
||||
# ko:KO_KR pl:PL_PL pt-BR:PT_BR ru:RU_RU zh-CN:ZH_CN zh-TW:ZH_TW"
|
||||
MY_LANG_PV="${MY_PVR_ALLDOTS}-"
|
||||
for lang in ${MY_LANGS}; do
|
||||
IUSE="${IUSE} l10n_${lang%:*}"
|
||||
SRC_URI="${SRC_URI} l10n_${lang%:*}? ( \
|
||||
${BASE_URI}TIVsm-msg.${lang#*:}.x86_64.rpm -> \
|
||||
${MY_LANG_PV}TIVsm-msg.${lang#*:}.x86_64.rpm )"
|
||||
done
|
||||
unset lang
|
||||
|
||||
DEPEND="
|
||||
acct-group/tsm
|
||||
"
|
||||
RDEPEND="
|
||||
acct-group/tsm
|
||||
dev-libs/expat
|
||||
dev-libs/libxml2
|
||||
sys-fs/fuse:0
|
||||
acl? ( sys-apps/acl )
|
||||
java? ( >=virtual/jre-1.7 )
|
||||
"
|
||||
|
||||
S="${WORKDIR}/bacli"
|
||||
|
||||
pkg_setup() {
|
||||
DOC_CONTENTS="
|
||||
Note that you have to be root to be able to use the Tivoli Storage Manager
|
||||
client. The dsmtca trusted agent binary does not exist anymore.
|
||||
|
||||
For information on how to give other users access, please see the following
|
||||
URLs:
|
||||
https://www.ibm.com/support/knowledgecenter/SSGSG7_7.1.8/client/c_cfg_nonadmin.html#c_macuninst_nonadmin
|
||||
https://www.ibm.com/support/knowledgecenter/SSGSG7_7.1.8/client/c_secure_pwd.html#c_secure_pwd__sec_no_tca
|
||||
"
|
||||
}
|
||||
|
||||
src_unpack() {
|
||||
local rpm rpms lang
|
||||
mkdir bacli || die
|
||||
cd bacli || die
|
||||
unpack ${SRC_TAR}
|
||||
|
||||
cd "${S}"
|
||||
for rpm in *.rpm; do
|
||||
case ${rpm} in
|
||||
TIVsm-APIcit.*|TIVsm-BAcit.*)
|
||||
use tsm-cit && rpms="${rpms} ./${rpm}"
|
||||
;;
|
||||
TIVsm-BAhdw.*)
|
||||
use tsm-hw && rpms="${rpms} ./${rpm}"
|
||||
;;
|
||||
TIVsm-JBB.*|*-filepath-*)
|
||||
# "journal based backup" for all filesystems
|
||||
# requires a kernel module.
|
||||
# "Linux Filepath source code" available
|
||||
# by request from vendor
|
||||
;;
|
||||
*)
|
||||
rpms="${rpms} ./${rpm}"
|
||||
;;
|
||||
esac
|
||||
done
|
||||
for rpm in ${A}; do
|
||||
case ${rpm} in
|
||||
*.rpm)
|
||||
rpms="${rpms} ${rpm}"
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
rpm_unpack ${rpms}
|
||||
|
||||
# Avoid strange error messages caused by read-only files
|
||||
chmod -R u+w "${S}" || die
|
||||
}
|
||||
|
||||
src_install() {
|
||||
cp -a opt "${D}" || die
|
||||
cp -a usr "${D}" || die
|
||||
|
||||
# The RPM files contain postinstall scripts which can be extracted
|
||||
# e.g. using https://bugs.gentoo.org/attachment.cgi?id=234663 .
|
||||
# Below we try to mimic the behaviour of these scripts.
|
||||
# We don't deal with SELinux compliance (yet), though.
|
||||
local RPM_INSTALL_PREFIX CLIENTDIR i
|
||||
RPM_INSTALL_PREFIX=/opt
|
||||
CLIENTDIR=$RPM_INSTALL_PREFIX/tivoli/tsm/client
|
||||
|
||||
# Create links for messages; this is spread over several postin scripts.
|
||||
#for i in $(cd "${D}"${CLIENTDIR}/lang; ls -1d ??_??); do
|
||||
# dosym ../../lang/${i} $CLIENTDIR/ba/bin/${i}
|
||||
# dosym ../../lang/${i} $CLIENTDIR/api/bin64/${i}
|
||||
#done
|
||||
|
||||
# Mimic TIVsm-API64 postinstall script
|
||||
for i in libgpfs.so libdmapi.so; do
|
||||
dosym ../..$CLIENTDIR/api/bin64/${i} /usr/lib64/${i}
|
||||
done
|
||||
|
||||
# The TIVsm-BA postinstall script only does messages and ancient upgrades
|
||||
|
||||
# The gscrypt64 postinstall script only deals with s390[x] SELinux
|
||||
# and the symlink for the iccs library which we handle in the loop below.
|
||||
|
||||
# Move stuff from /usr/local to /opt, #452332
|
||||
mv "${D}"/usr/local/ibm "${D}"/opt/ || die
|
||||
rmdir "${D}"/usr/local || die
|
||||
|
||||
# Mimic gskssl64 postinstall script
|
||||
for i in sys p11 km ssl drld kicc ldap cms acmeidup valn dbfl iccs; do
|
||||
dosym ../../opt/ibm/gsk8_64/lib64/libgsk8${i}_64.so \
|
||||
/usr/lib64/libgsk8${i}_64.so
|
||||
done
|
||||
for i in capicmd ver; do
|
||||
dosym ../../opt/ibm/gsk8_64/bin/gsk8${i}_64 /usr/bin/gsk${i}_64
|
||||
done
|
||||
|
||||
# Done with the postinstall scripts as the RPMs contain them.
|
||||
# Now on to some more Gentoo-specific installation.
|
||||
|
||||
[[ -d "${D}usr/lib" ]] && die "Using 32bit lib dir in 64bit only system"
|
||||
|
||||
# Avoid "QA Notice: Found an absolute symlink in a library directory"
|
||||
local target
|
||||
find "${D}"usr/lib* -lname '/*' | while read i; do
|
||||
target=$(readlink "${i}")
|
||||
rm -v "${i}" || die
|
||||
dosym "../..${target}" "${i#${D}}"
|
||||
done
|
||||
|
||||
keepdir /var/log/tsm
|
||||
insinto /etc/logrotate.d
|
||||
newins "${FILESDIR}/tsm.logrotate" tsm
|
||||
|
||||
keepdir /etc/tivoli
|
||||
|
||||
cp -a "${S}/opt/tivoli/tsm/client/ba/bin/dsm.sys.smp" "${D}/etc/tivoli/dsm.sys" || die
|
||||
echo ' PasswordDir "/etc/tivoli/"' >> ${D}/etc/tivoli/dsm.sys
|
||||
echo ' PasswordAccess generate' >> ${D}/etc/tivoli/dsm.sys
|
||||
|
||||
# Added the hostname to be more friendly, the admin will need to edit this file anyway
|
||||
echo ' NodeName' `hostname` >> ${D}/etc/tivoli/dsm.sys
|
||||
echo ' ErrorLogName "/var/log/tsm/dsmerror.log"' >> ${D}/etc/tivoli/dsm.sys
|
||||
echo ' SchedLogName "/var/log/tsm/dsmsched.log"' >> ${D}/etc/tivoli/dsm.sys
|
||||
dosym ../../../../../../etc/tivoli/dsm.sys /opt/tivoli/tsm/client/ba/bin/dsm.sys
|
||||
|
||||
cp -a "${S}/opt/tivoli/tsm/client/ba/bin/dsm.opt.smp" "${D}/etc/tivoli/dsm.opt"
|
||||
dosym ../../../../../../etc/tivoli/dsm.opt /opt/tivoli/tsm/client/ba/bin/dsm.opt
|
||||
|
||||
# Setup the env
|
||||
dodir /etc/env.d
|
||||
ENV_FILE="${D}/etc/env.d/80tivoli"
|
||||
echo 'DSM_CONFIG="/etc/tivoli/dsm.opt"' >> ${ENV_FILE}
|
||||
echo 'DSM_DIR="/opt/tivoli/tsm/client/ba/bin"' >> ${ENV_FILE}
|
||||
echo 'DSM_LOG="/var/log/tsm"' >> ${ENV_FILE}
|
||||
echo 'ROOTPATH="/opt/tivoli/tsm/client/ba/bin"' >> ${ENV_FILE}
|
||||
|
||||
echo 'SEARCH_DIRS_MASK="/opt/tivoli/tsm/client/ba/bin"' > "${T}/80${PN}" || die
|
||||
insinto "/etc/revdep-rebuild"
|
||||
doins "${T}/80${PN}"
|
||||
|
||||
newconfd "${FILESDIR}/dsmc.conf.d" dsmc
|
||||
newinitd "${FILESDIR}/dsmc.init.d" dsmc
|
||||
newinitd "${FILESDIR}/dsmcad.init.d-r1" dsmcad
|
||||
|
||||
# Need this for hardened, otherwise a cryptic "connection to server lost" message appears
|
||||
pax-mark -m "${D}/opt/tivoli/tsm/client/ba/bin/dsmc"
|
||||
|
||||
systemd_dounit "${FILESDIR}/dsmc.service"
|
||||
systemd_dounit "${FILESDIR}/dsmcad.service"
|
||||
|
||||
readme.gentoo_create_doc
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
local i dirs
|
||||
for i in /var/log/tsm/dsm{error,sched,j,webcl}.log; do
|
||||
if [[ ! -e $i ]]; then
|
||||
touch $i || die
|
||||
chown :tsm $i || die
|
||||
chmod 0660 $i || die
|
||||
fi
|
||||
done
|
||||
|
||||
# Bug #375041: the log directory itself should not be world writable.
|
||||
# Have to do this in postinst due to bug #141619
|
||||
chown root:tsm /var/log/tsm || die
|
||||
chmod 0750 /var/log/tsm || die
|
||||
|
||||
# Bug 508052: directories used to be too restrictive, have to widen perms.
|
||||
dirs=( /opt/tivoli $(find /opt/tivoli/tsm -type d) )
|
||||
chown root:root "${dirs[@]}" || die
|
||||
chmod 0755 "${dirs[@]}" || die
|
||||
|
||||
FORCE_PRINT_ELOG=1
|
||||
DISABLE_AUTOFORMATTING=1
|
||||
readme.gentoo_print_elog
|
||||
}
|
Binary file not shown.
@ -0,0 +1,3 @@
|
||||
KERNEL=="kvm", GROUP="kvm", MODE="0660"
|
||||
KERNEL=="vhost-net", GROUP="kvm", MODE="0660", OPTIONS+="static_node=vhost-net"
|
||||
KERNEL=="vhost-vsock", GROUP="kvm", MODE="0660", OPTIONS+="static_node=vhost-vsock"
|
@ -0,0 +1,860 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="7"
|
||||
|
||||
PYTHON_COMPAT=( python3_{7,8,9} )
|
||||
PYTHON_REQ_USE="ncurses,readline"
|
||||
|
||||
FIRMWARE_ABI_VERSION="4.0.0-r50"
|
||||
|
||||
inherit eutils linux-info toolchain-funcs multilib python-r1 \
|
||||
udev fcaps readme.gentoo-r1 pax-utils l10n xdg-utils
|
||||
|
||||
if [[ ${PV} = *9999* ]]; then
|
||||
EGIT_REPO_URI="https://git.qemu.org/git/qemu.git"
|
||||
EGIT_SUBMODULES=(
|
||||
meson
|
||||
tests/fp/berkeley-softfloat-3
|
||||
tests/fp/berkeley-testfloat-3
|
||||
ui/keycodemapdb
|
||||
)
|
||||
inherit git-r3
|
||||
SRC_URI=""
|
||||
else
|
||||
SRC_URI="https://download.qemu.org/${P}.tar.xz"
|
||||
KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~x86"
|
||||
fi
|
||||
|
||||
DESCRIPTION="QEMU + Kernel-based Virtual Machine userland tools"
|
||||
HOMEPAGE="http://www.qemu.org http://www.linux-kvm.org"
|
||||
|
||||
LICENSE="GPL-2 LGPL-2 BSD-2"
|
||||
SLOT="0"
|
||||
|
||||
IUSE="accessibility +aio alsa bzip2 capstone +caps +curl debug doc
|
||||
+fdt glusterfs gnutls gtk infiniband iscsi io-uring
|
||||
jack jemalloc +jpeg kernel_linux
|
||||
kernel_FreeBSD lzo multipath
|
||||
ncurses nfs nls numa opengl +oss +pin-upstream-blobs
|
||||
plugins +png pulseaudio python rbd sasl +seccomp sdl sdl-image selinux
|
||||
+slirp
|
||||
smartcard snappy spice ssh static static-user systemtap test udev usb
|
||||
usbredir vde +vhost-net vhost-user-fs virgl virtfs +vnc vte xattr xen
|
||||
xfs zstd"
|
||||
|
||||
COMMON_TARGETS="aarch64 alpha arm cris hppa i386 m68k microblaze microblazeel
|
||||
mips mips64 mips64el mipsel nios2 or1k ppc ppc64 riscv32 riscv64 s390x
|
||||
sh4 sh4eb sparc sparc64 x86_64 xtensa xtensaeb"
|
||||
IUSE_SOFTMMU_TARGETS="${COMMON_TARGETS}
|
||||
avr lm32 moxie rx tricore unicore32"
|
||||
IUSE_USER_TARGETS="${COMMON_TARGETS}
|
||||
aarch64_be armeb mipsn32 mipsn32el ppc64abi32 ppc64le sparc32plus
|
||||
tilegx"
|
||||
|
||||
use_softmmu_targets=$(printf ' qemu_softmmu_targets_%s' ${IUSE_SOFTMMU_TARGETS})
|
||||
use_user_targets=$(printf ' qemu_user_targets_%s' ${IUSE_USER_TARGETS})
|
||||
IUSE+=" ${use_softmmu_targets} ${use_user_targets}"
|
||||
|
||||
RESTRICT="!test? ( test )"
|
||||
# Allow no targets to be built so that people can get a tools-only build.
|
||||
# Block USE flag configurations known to not work.
|
||||
REQUIRED_USE="${PYTHON_REQUIRED_USE}
|
||||
qemu_softmmu_targets_arm? ( fdt )
|
||||
qemu_softmmu_targets_microblaze? ( fdt )
|
||||
qemu_softmmu_targets_mips64el? ( fdt )
|
||||
qemu_softmmu_targets_ppc64? ( fdt )
|
||||
qemu_softmmu_targets_ppc? ( fdt )
|
||||
qemu_softmmu_targets_riscv32? ( fdt )
|
||||
qemu_softmmu_targets_riscv64? ( fdt )
|
||||
static? ( static-user !alsa !gtk !jack !opengl !pulseaudio !plugins !rbd !snappy )
|
||||
static-user? ( !plugins )
|
||||
vhost-user-fs? ( caps seccomp )
|
||||
virtfs? ( caps xattr )
|
||||
vte? ( gtk )
|
||||
multipath? ( udev )
|
||||
plugins? ( !static !static-user )
|
||||
"
|
||||
|
||||
# Dependencies required for qemu tools (qemu-nbd, qemu-img, qemu-io, ...)
|
||||
# and user/softmmu targets (qemu-*, qemu-system-*).
|
||||
#
|
||||
# Yep, you need both libcap and libcap-ng since virtfs only uses libcap.
|
||||
#
|
||||
# The attr lib isn't always linked in (although the USE flag is always
|
||||
# respected). This is because qemu supports using the C library's API
|
||||
# when available rather than always using the external library.
|
||||
ALL_DEPEND="
|
||||
>=dev-libs/glib-2.0[static-libs(+)]
|
||||
sys-libs/zlib[static-libs(+)]
|
||||
python? ( ${PYTHON_DEPS} )
|
||||
systemtap? ( dev-util/systemtap )
|
||||
xattr? ( sys-apps/attr[static-libs(+)] )"
|
||||
|
||||
# Dependencies required for qemu tools (qemu-nbd, qemu-img, qemu-io, ...)
|
||||
# softmmu targets (qemu-system-*).
|
||||
SOFTMMU_TOOLS_DEPEND="
|
||||
dev-libs/libxml2[static-libs(+)]
|
||||
>=x11-libs/pixman-0.28.0[static-libs(+)]
|
||||
accessibility? (
|
||||
app-accessibility/brltty[api]
|
||||
app-accessibility/brltty[static-libs(+)]
|
||||
)
|
||||
aio? ( dev-libs/libaio[static-libs(+)] )
|
||||
alsa? ( >=media-libs/alsa-lib-1.0.13 )
|
||||
bzip2? ( app-arch/bzip2[static-libs(+)] )
|
||||
capstone? ( dev-libs/capstone:= )
|
||||
caps? ( sys-libs/libcap-ng[static-libs(+)] )
|
||||
curl? ( >=net-misc/curl-7.15.4[static-libs(+)] )
|
||||
fdt? ( >=sys-apps/dtc-1.5.0[static-libs(+)] )
|
||||
glusterfs? ( >=sys-cluster/glusterfs-3.4.0[static-libs(+)] )
|
||||
gnutls? (
|
||||
dev-libs/nettle:=[static-libs(+)]
|
||||
>=net-libs/gnutls-3.0:=[static-libs(+)]
|
||||
)
|
||||
gtk? (
|
||||
x11-libs/gtk+:3
|
||||
vte? ( x11-libs/vte:2.91 )
|
||||
)
|
||||
infiniband? (
|
||||
sys-fabric/libibumad:=[static-libs(+)]
|
||||
sys-fabric/libibverbs:=[static-libs(+)]
|
||||
sys-fabric/librdmacm:=[static-libs(+)]
|
||||
)
|
||||
iscsi? ( net-libs/libiscsi )
|
||||
io-uring? ( sys-libs/liburing:=[static-libs(+)] )
|
||||
jack? ( virtual/jack )
|
||||
jemalloc? ( dev-libs/jemalloc )
|
||||
jpeg? ( virtual/jpeg:0=[static-libs(+)] )
|
||||
lzo? ( dev-libs/lzo:2[static-libs(+)] )
|
||||
multipath? ( sys-fs/multipath-tools )
|
||||
ncurses? (
|
||||
sys-libs/ncurses:0=[unicode]
|
||||
sys-libs/ncurses:0=[static-libs(+)]
|
||||
)
|
||||
nfs? ( >=net-fs/libnfs-1.9.3:=[static-libs(+)] )
|
||||
numa? ( sys-process/numactl[static-libs(+)] )
|
||||
opengl? (
|
||||
virtual/opengl
|
||||
media-libs/libepoxy[static-libs(+)]
|
||||
media-libs/mesa[static-libs(+)]
|
||||
media-libs/mesa[egl,gbm]
|
||||
)
|
||||
png? ( media-libs/libpng:0=[static-libs(+)] )
|
||||
pulseaudio? ( media-sound/pulseaudio )
|
||||
rbd? ( sys-cluster/ceph )
|
||||
sasl? ( dev-libs/cyrus-sasl[static-libs(+)] )
|
||||
sdl? (
|
||||
media-libs/libsdl2[video]
|
||||
media-libs/libsdl2[static-libs(+)]
|
||||
)
|
||||
sdl-image? ( media-libs/sdl2-image[static-libs(+)] )
|
||||
seccomp? ( >=sys-libs/libseccomp-2.1.0[static-libs(+)] )
|
||||
slirp? ( net-libs/libslirp[static-libs(+)] )
|
||||
smartcard? ( >=app-emulation/libcacard-2.5.0[static-libs(+)] )
|
||||
snappy? ( app-arch/snappy:= )
|
||||
spice? (
|
||||
>=app-emulation/spice-protocol-0.12.3
|
||||
>=app-emulation/spice-0.12.0[static-libs(+)]
|
||||
)
|
||||
ssh? ( >=net-libs/libssh-0.8.6[static-libs(+)] )
|
||||
udev? ( virtual/libudev[static-libs(+)] )
|
||||
usb? ( >=virtual/libusb-1-r2[static-libs(+)] )
|
||||
usbredir? ( >=sys-apps/usbredir-0.6[static-libs(+)] )
|
||||
vde? ( net-misc/vde[static-libs(+)] )
|
||||
virgl? ( media-libs/virglrenderer[static-libs(+)] )
|
||||
virtfs? ( sys-libs/libcap )
|
||||
xen? ( app-emulation/xen-tools:= )
|
||||
xfs? ( sys-fs/xfsprogs[static-libs(+)] )
|
||||
zstd? ( >=app-arch/zstd-1.4.0[static-libs(+)] )
|
||||
"
|
||||
|
||||
X86_FIRMWARE_DEPEND="
|
||||
pin-upstream-blobs? (
|
||||
~sys-firmware/edk2-ovmf-201905[binary]
|
||||
~sys-firmware/ipxe-1.0.0_p20190728[binary,qemu]
|
||||
~sys-firmware/seabios-1.12.0[binary,seavgabios]
|
||||
~sys-firmware/sgabios-0.1_pre8[binary]
|
||||
)
|
||||
!pin-upstream-blobs? (
|
||||
sys-firmware/edk2-ovmf
|
||||
sys-firmware/ipxe[qemu]
|
||||
>=sys-firmware/seabios-1.10.2[seavgabios]
|
||||
sys-firmware/sgabios
|
||||
)"
|
||||
PPC_FIRMWARE_DEPEND="
|
||||
pin-upstream-blobs? (
|
||||
~sys-firmware/seabios-1.12.0[binary,seavgabios]
|
||||
)
|
||||
!pin-upstream-blobs? (
|
||||
>=sys-firmware/seabios-1.10.2[seavgabios]
|
||||
)
|
||||
"
|
||||
|
||||
BDEPEND="
|
||||
$(python_gen_impl_dep)
|
||||
dev-lang/perl
|
||||
sys-apps/texinfo
|
||||
virtual/pkgconfig
|
||||
doc? ( dev-python/sphinx )
|
||||
gtk? ( nls? ( sys-devel/gettext ) )
|
||||
test? (
|
||||
dev-libs/glib[utils]
|
||||
sys-devel/bc
|
||||
)
|
||||
"
|
||||
CDEPEND="
|
||||
!static? (
|
||||
${ALL_DEPEND//\[static-libs(+)]}
|
||||
${SOFTMMU_TOOLS_DEPEND//\[static-libs(+)]}
|
||||
)
|
||||
qemu_softmmu_targets_i386? ( ${X86_FIRMWARE_DEPEND} )
|
||||
qemu_softmmu_targets_x86_64? ( ${X86_FIRMWARE_DEPEND} )
|
||||
qemu_softmmu_targets_ppc? ( ${PPC_FIRMWARE_DEPEND} )
|
||||
qemu_softmmu_targets_ppc64? ( ${PPC_FIRMWARE_DEPEND} )
|
||||
"
|
||||
DEPEND="${CDEPEND}
|
||||
kernel_linux? ( >=sys-kernel/linux-headers-2.6.35 )
|
||||
static? (
|
||||
${ALL_DEPEND}
|
||||
${SOFTMMU_TOOLS_DEPEND}
|
||||
)
|
||||
static-user? ( ${ALL_DEPEND} )"
|
||||
RDEPEND="${CDEPEND}
|
||||
acct-group/kvm
|
||||
selinux? ( sec-policy/selinux-qemu )"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-2.11.1-capstone_include_path.patch
|
||||
"${FILESDIR}"/${PN}-5.2.0-cleaner-werror.patch
|
||||
"${FILESDIR}"/${PN}-5.2.0-disable-keymap.patch
|
||||
"${FILESDIR}"/${PN}-5.2.0-strings.patch
|
||||
"${FILESDIR}"/${PN}-5.2.0-fix-firmware-path.patch
|
||||
"${FILESDIR}"/${PN}-5.2.0-no-pie-ld.patch
|
||||
)
|
||||
|
||||
QA_PREBUILT="
|
||||
usr/share/qemu/hppa-firmware.img
|
||||
usr/share/qemu/openbios-ppc
|
||||
usr/share/qemu/openbios-sparc64
|
||||
usr/share/qemu/openbios-sparc32
|
||||
usr/share/qemu/opensbi-riscv64-generic-fw_dynamic.elf
|
||||
usr/share/qemu/opensbi-riscv32-generic-fw_dynamic.elf
|
||||
usr/share/qemu/palcode-clipper
|
||||
usr/share/qemu/s390-ccw.img
|
||||
usr/share/qemu/s390-netboot.img
|
||||
usr/share/qemu/u-boot.e500
|
||||
"
|
||||
|
||||
QA_WX_LOAD="usr/bin/qemu-i386
|
||||
usr/bin/qemu-x86_64
|
||||
usr/bin/qemu-alpha
|
||||
usr/bin/qemu-arm
|
||||
usr/bin/qemu-cris
|
||||
usr/bin/qemu-m68k
|
||||
usr/bin/qemu-microblaze
|
||||
usr/bin/qemu-microblazeel
|
||||
usr/bin/qemu-mips
|
||||
usr/bin/qemu-mipsel
|
||||
usr/bin/qemu-or1k
|
||||
usr/bin/qemu-ppc
|
||||
usr/bin/qemu-ppc64
|
||||
usr/bin/qemu-ppc64abi32
|
||||
usr/bin/qemu-sh4
|
||||
usr/bin/qemu-sh4eb
|
||||
usr/bin/qemu-sparc
|
||||
usr/bin/qemu-sparc64
|
||||
usr/bin/qemu-armeb
|
||||
usr/bin/qemu-sparc32plus
|
||||
usr/bin/qemu-s390x
|
||||
usr/bin/qemu-unicore32
|
||||
"
|
||||
|
||||
DOC_CONTENTS="If you don't have kvm compiled into the kernel, make sure you have the
|
||||
kernel module loaded before running kvm. The easiest way to ensure that the
|
||||
kernel module is loaded is to load it on boot.
|
||||
For AMD CPUs the module is called 'kvm-amd'.
|
||||
For Intel CPUs the module is called 'kvm-intel'.
|
||||
Please review /etc/conf.d/modules for how to load these.
|
||||
|
||||
Make sure your user is in the 'kvm' group. Just run
|
||||
$ gpasswd -a <USER> kvm
|
||||
then have <USER> re-login.
|
||||
|
||||
For brand new installs, the default permissions on /dev/kvm might not let
|
||||
you access it. You can tell udev to reset ownership/perms:
|
||||
$ udevadm trigger -c add /dev/kvm
|
||||
|
||||
If you want to register binfmt handlers for qemu user targets:
|
||||
For openrc:
|
||||
# rc-update add qemu-binfmt
|
||||
For systemd:
|
||||
# ln -s /usr/share/qemu/binfmt.d/qemu.conf /etc/binfmt.d/qemu.conf"
|
||||
|
||||
pkg_pretend() {
|
||||
if use kernel_linux && kernel_is lt 2 6 25; then
|
||||
eerror "This version of KVM requires a host kernel of 2.6.25 or higher."
|
||||
elif use kernel_linux; then
|
||||
if ! linux_config_exists; then
|
||||
eerror "Unable to check your kernel for KVM support"
|
||||
else
|
||||
CONFIG_CHECK="~KVM ~TUN ~BRIDGE"
|
||||
ERROR_KVM="You must enable KVM in your kernel to continue"
|
||||
ERROR_KVM_AMD="If you have an AMD CPU, you must enable KVM_AMD in"
|
||||
ERROR_KVM_AMD+=" your kernel configuration."
|
||||
ERROR_KVM_INTEL="If you have an Intel CPU, you must enable"
|
||||
ERROR_KVM_INTEL+=" KVM_INTEL in your kernel configuration."
|
||||
ERROR_TUN="You will need the Universal TUN/TAP driver compiled"
|
||||
ERROR_TUN+=" into your kernel or loaded as a module to use the"
|
||||
ERROR_TUN+=" virtual network device if using -net tap."
|
||||
ERROR_BRIDGE="You will also need support for 802.1d"
|
||||
ERROR_BRIDGE+=" Ethernet Bridging for some network configurations."
|
||||
use vhost-net && CONFIG_CHECK+=" ~VHOST_NET"
|
||||
ERROR_VHOST_NET="You must enable VHOST_NET to have vhost-net"
|
||||
ERROR_VHOST_NET+=" support"
|
||||
|
||||
if use amd64 || use x86 || use amd64-linux || use x86-linux; then
|
||||
if grep -q AuthenticAMD /proc/cpuinfo; then
|
||||
CONFIG_CHECK+=" ~KVM_AMD"
|
||||
elif grep -q GenuineIntel /proc/cpuinfo; then
|
||||
CONFIG_CHECK+=" ~KVM_INTEL"
|
||||
fi
|
||||
fi
|
||||
|
||||
use python && CONFIG_CHECK+=" ~DEBUG_FS"
|
||||
ERROR_DEBUG_FS="debugFS support required for kvm_stat"
|
||||
|
||||
# Now do the actual checks setup above
|
||||
check_extra_config
|
||||
fi
|
||||
fi
|
||||
|
||||
if grep -qs '/usr/bin/qemu-kvm' "${EROOT}"/etc/libvirt/qemu/*.xml; then
|
||||
eerror "The kvm/qemu-kvm wrappers no longer exist, but your libvirt"
|
||||
eerror "instances are still pointing to it. Please update your"
|
||||
eerror "configs in /etc/libvirt/qemu/ to use the -enable-kvm flag"
|
||||
eerror "and the right system binary (e.g. qemu-system-x86_64)."
|
||||
die "update your virt configs to not use qemu-kvm"
|
||||
fi
|
||||
}
|
||||
|
||||
# Sanity check to make sure target lists are kept up-to-date.
|
||||
check_targets() {
|
||||
local var=$1 mak=$2
|
||||
local detected sorted
|
||||
|
||||
pushd "${S}"/default-configs/targets/ >/dev/null || die
|
||||
|
||||
# Force C locale until glibc is updated. #564936
|
||||
detected=$(echo $(printf '%s\n' *-${mak}.mak | sed "s:-${mak}.mak::" | LC_COLLATE=C sort -u))
|
||||
sorted=$(echo $(printf '%s\n' ${!var} | LC_COLLATE=C sort -u))
|
||||
if [[ ${sorted} != "${detected}" ]] ; then
|
||||
eerror "The ebuild needs to be kept in sync."
|
||||
eerror "${var}: ${sorted}"
|
||||
eerror "$(printf '%-*s' ${#var} configure): ${detected}"
|
||||
die "sync ${var} to the list of targets"
|
||||
fi
|
||||
|
||||
popd >/dev/null
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
check_targets IUSE_SOFTMMU_TARGETS softmmu
|
||||
check_targets IUSE_USER_TARGETS linux-user
|
||||
|
||||
default
|
||||
|
||||
# Use correct toolchain to fix cross-compiling
|
||||
tc-export AR AS LD NM OBJCOPY PKG_CONFIG RANLIB STRINGS
|
||||
export WINDRES=${CHOST}-windres
|
||||
|
||||
# Verbose builds
|
||||
MAKEOPTS+=" V=1"
|
||||
|
||||
# Remove bundled copy of libfdt
|
||||
rm -r dtc || die
|
||||
}
|
||||
|
||||
##
|
||||
# configures qemu based on the build directory and the build type
|
||||
# we are using.
|
||||
#
|
||||
qemu_src_configure() {
|
||||
debug-print-function ${FUNCNAME} "$@"
|
||||
|
||||
local buildtype=$1
|
||||
local builddir="${S}/${buildtype}-build"
|
||||
|
||||
mkdir "${builddir}"
|
||||
|
||||
local conf_opts=(
|
||||
--prefix=/usr
|
||||
--sysconfdir=/etc
|
||||
--bindir=/usr/bin
|
||||
--libdir=/usr/$(get_libdir)
|
||||
--datadir=/usr/share
|
||||
--docdir=/usr/share/doc/${PF}/html
|
||||
--mandir=/usr/share/man
|
||||
--localstatedir=/var
|
||||
--disable-bsd-user
|
||||
--disable-containers # bug #732972
|
||||
--disable-guest-agent
|
||||
--disable-strip
|
||||
|
||||
# bug #746752: TCG interpreter has a few limitations:
|
||||
# - it does not support FPU
|
||||
# - it's generally slower on non-self-modifying code
|
||||
# It's advantage is support for host architectures
|
||||
# where native codegeneration is not implemented.
|
||||
# Gentoo has qemu keyworded only on targets with
|
||||
# native code generation available. Avoid the interpreter.
|
||||
--disable-tcg-interpreter
|
||||
|
||||
--disable-werror
|
||||
# We support gnutls/nettle for crypto operations. It is possible
|
||||
# to use gcrypt when gnutls/nettle are disabled (but not when they
|
||||
# are enabled), but it's not really worth the hassle. Disable it
|
||||
# all the time to avoid automatically detecting it. #568856
|
||||
--disable-gcrypt
|
||||
--python="${PYTHON}"
|
||||
--cc="$(tc-getCC)"
|
||||
--cxx="$(tc-getCXX)"
|
||||
--host-cc="$(tc-getBUILD_CC)"
|
||||
$(use_enable debug debug-info)
|
||||
$(use_enable debug debug-tcg)
|
||||
$(use_enable doc docs)
|
||||
$(use_enable nls gettext)
|
||||
$(use_enable plugins)
|
||||
$(use_enable xattr attr)
|
||||
)
|
||||
|
||||
# Disable options not used by user targets. This simplifies building
|
||||
# static user targets (USE=static-user) considerably.
|
||||
conf_notuser() {
|
||||
if [[ ${buildtype} == "user" ]] ; then
|
||||
echo "--disable-${2:-$1}"
|
||||
else
|
||||
use_enable "$@"
|
||||
fi
|
||||
}
|
||||
# Enable option only for softmmu build, but not 'user' or 'tools'
|
||||
conf_softmmu() {
|
||||
if [[ ${buildtype} == "softmmu" ]] ; then
|
||||
use_enable "$@"
|
||||
else
|
||||
echo "--disable-${2:-$1}"
|
||||
fi
|
||||
}
|
||||
# Enable option only for tools build, but not 'user' or 'softmmu'
|
||||
conf_tools() {
|
||||
if [[ ${buildtype} == "tools" ]] ; then
|
||||
use_enable "$@"
|
||||
else
|
||||
echo "--disable-${2:-$1}"
|
||||
fi
|
||||
}
|
||||
conf_opts+=(
|
||||
$(conf_notuser accessibility brlapi)
|
||||
$(conf_notuser aio linux-aio)
|
||||
$(conf_notuser bzip2)
|
||||
$(conf_notuser capstone)
|
||||
$(conf_notuser caps cap-ng)
|
||||
$(conf_notuser curl)
|
||||
$(conf_notuser fdt)
|
||||
$(conf_notuser glusterfs)
|
||||
$(conf_notuser gnutls)
|
||||
$(conf_notuser gnutls nettle)
|
||||
$(conf_notuser gtk)
|
||||
$(conf_notuser infiniband rdma)
|
||||
$(conf_notuser iscsi libiscsi)
|
||||
$(conf_notuser io-uring linux-io-uring)
|
||||
$(conf_notuser jemalloc jemalloc)
|
||||
$(conf_notuser jpeg vnc-jpeg)
|
||||
$(conf_notuser kernel_linux kvm)
|
||||
$(conf_notuser lzo)
|
||||
$(conf_notuser multipath mpath)
|
||||
$(conf_notuser ncurses curses)
|
||||
$(conf_notuser nfs libnfs)
|
||||
$(conf_notuser numa)
|
||||
$(conf_notuser opengl)
|
||||
$(conf_notuser png vnc-png)
|
||||
$(conf_notuser rbd)
|
||||
$(conf_notuser sasl vnc-sasl)
|
||||
$(conf_notuser sdl)
|
||||
$(conf_softmmu sdl-image)
|
||||
$(conf_notuser seccomp)
|
||||
$(conf_notuser slirp slirp system)
|
||||
$(conf_notuser smartcard)
|
||||
$(conf_notuser snappy)
|
||||
$(conf_notuser spice)
|
||||
$(conf_notuser ssh libssh)
|
||||
$(conf_notuser udev libudev)
|
||||
$(conf_notuser usb libusb)
|
||||
$(conf_notuser usbredir usb-redir)
|
||||
$(conf_notuser vde)
|
||||
$(conf_notuser vhost-net)
|
||||
$(conf_notuser vhost-user-fs)
|
||||
$(conf_tools vhost-user-fs virtiofsd)
|
||||
$(conf_notuser virgl virglrenderer)
|
||||
$(conf_notuser virtfs)
|
||||
$(conf_notuser vnc)
|
||||
$(conf_notuser vte)
|
||||
$(conf_notuser xen)
|
||||
$(conf_notuser xen xen-pci-passthrough)
|
||||
$(conf_notuser xfs xfsctl)
|
||||
# use prebuilt keymaps, bug #759604
|
||||
--disable-xkbcommon
|
||||
$(conf_notuser zstd)
|
||||
)
|
||||
|
||||
if [[ ${buildtype} == "user" ]] ; then
|
||||
conf_opts+=( --disable-libxml2 )
|
||||
else
|
||||
conf_opts+=( --enable-libxml2 )
|
||||
fi
|
||||
|
||||
if [[ ! ${buildtype} == "user" ]] ; then
|
||||
# audio options
|
||||
local audio_opts=(
|
||||
# Note: backend order matters here: #716202
|
||||
# We iterate from higher-level to lower level.
|
||||
$(usex pulseaudio pa "")
|
||||
$(usev jack)
|
||||
$(usev sdl)
|
||||
$(usev alsa)
|
||||
$(usev oss)
|
||||
)
|
||||
conf_opts+=(
|
||||
--audio-drv-list=$(printf "%s," "${audio_opts[@]}")
|
||||
)
|
||||
fi
|
||||
|
||||
case ${buildtype} in
|
||||
user)
|
||||
conf_opts+=(
|
||||
--enable-linux-user
|
||||
--disable-system
|
||||
--disable-blobs
|
||||
--disable-tools
|
||||
)
|
||||
local static_flag="static-user"
|
||||
;;
|
||||
softmmu)
|
||||
conf_opts+=(
|
||||
--disable-linux-user
|
||||
--enable-system
|
||||
--disable-tools
|
||||
)
|
||||
local static_flag="static"
|
||||
;;
|
||||
tools)
|
||||
conf_opts+=(
|
||||
--disable-linux-user
|
||||
--disable-system
|
||||
--disable-blobs
|
||||
--enable-tools
|
||||
)
|
||||
local static_flag="static"
|
||||
;;
|
||||
esac
|
||||
|
||||
local targets="${buildtype}_targets"
|
||||
[[ -n ${targets} ]] && conf_opts+=( --target-list="${!targets}" )
|
||||
|
||||
# Add support for SystemTAP
|
||||
use systemtap && conf_opts+=( --enable-trace-backend=dtrace )
|
||||
|
||||
# We always want to attempt to build with PIE support as it results
|
||||
# in a more secure binary. But it doesn't work with static or if
|
||||
# the current GCC doesn't have PIE support.
|
||||
if use ${static_flag}; then
|
||||
conf_opts+=( --static --disable-pie )
|
||||
else
|
||||
tc-enables-pie && conf_opts+=( --enable-pie )
|
||||
fi
|
||||
|
||||
# Plumb through equivalent of EXTRA_ECONF to allow experiments
|
||||
# like bug #747928.
|
||||
conf_opts+=( ${EXTRA_CONF_QEMU} )
|
||||
|
||||
echo "../configure ${conf_opts[*]}"
|
||||
cd "${builddir}"
|
||||
../configure "${conf_opts[@]}" || die "configure failed"
|
||||
|
||||
# FreeBSD's kernel does not support QEMU assigning/grabbing
|
||||
# host USB devices yet
|
||||
use kernel_FreeBSD && \
|
||||
sed -i -E -e "s|^(HOST_USB=)bsd|\1stub|" "${S}"/config-host.mak
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local target
|
||||
|
||||
python_setup
|
||||
|
||||
softmmu_targets= softmmu_bins=()
|
||||
user_targets= user_bins=()
|
||||
|
||||
for target in ${IUSE_SOFTMMU_TARGETS} ; do
|
||||
if use "qemu_softmmu_targets_${target}"; then
|
||||
softmmu_targets+=",${target}-softmmu"
|
||||
softmmu_bins+=( "qemu-system-${target}" )
|
||||
fi
|
||||
done
|
||||
|
||||
for target in ${IUSE_USER_TARGETS} ; do
|
||||
if use "qemu_user_targets_${target}"; then
|
||||
user_targets+=",${target}-linux-user"
|
||||
user_bins+=( "qemu-${target}" )
|
||||
fi
|
||||
done
|
||||
|
||||
softmmu_targets=${softmmu_targets#,}
|
||||
user_targets=${user_targets#,}
|
||||
|
||||
[[ -n ${softmmu_targets} ]] && qemu_src_configure "softmmu"
|
||||
[[ -n ${user_targets} ]] && qemu_src_configure "user"
|
||||
qemu_src_configure "tools"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
if [[ -n ${user_targets} ]]; then
|
||||
cd "${S}/user-build"
|
||||
default
|
||||
fi
|
||||
|
||||
if [[ -n ${softmmu_targets} ]]; then
|
||||
cd "${S}/softmmu-build"
|
||||
default
|
||||
fi
|
||||
|
||||
cd "${S}/tools-build"
|
||||
default
|
||||
}
|
||||
|
||||
src_test() {
|
||||
if [[ -n ${softmmu_targets} ]]; then
|
||||
cd "${S}/softmmu-build"
|
||||
pax-mark m */qemu-system-* #515550
|
||||
emake check
|
||||
fi
|
||||
}
|
||||
|
||||
qemu_python_install() {
|
||||
python_domodule "${S}/python/qemu"
|
||||
|
||||
python_doscript "${S}/scripts/kvm/vmxcap"
|
||||
python_doscript "${S}/scripts/qmp/qmp-shell"
|
||||
python_doscript "${S}/scripts/qmp/qemu-ga-client"
|
||||
}
|
||||
|
||||
# Generate binfmt support files.
|
||||
# - /etc/init.d/qemu-binfmt script which registers the user handlers (openrc)
|
||||
# - /usr/share/qemu/binfmt.d/qemu.conf (for use with systemd-binfmt)
|
||||
generate_initd() {
|
||||
local out="${T}/qemu-binfmt"
|
||||
local out_systemd="${T}/qemu.conf"
|
||||
local d="${T}/binfmt.d"
|
||||
|
||||
einfo "Generating qemu binfmt scripts and configuration files"
|
||||
|
||||
# Generate the debian fragments first.
|
||||
mkdir -p "${d}"
|
||||
"${S}"/scripts/qemu-binfmt-conf.sh \
|
||||
--debian \
|
||||
--exportdir "${d}" \
|
||||
--qemu-path "${EPREFIX}/usr/bin" \
|
||||
|| die
|
||||
# Then turn the fragments into a shell script we can source.
|
||||
sed -E -i \
|
||||
-e 's:^([^ ]+) (.*)$:\1="\2":' \
|
||||
"${d}"/* || die
|
||||
|
||||
# Generate the init.d script by assembling the fragments from above.
|
||||
local f qcpu package interpreter magic mask
|
||||
cat "${FILESDIR}"/qemu-binfmt.initd.head >"${out}" || die
|
||||
for f in "${d}"/qemu-* ; do
|
||||
source "${f}"
|
||||
|
||||
# Normalize the cpu logic like we do in the init.d for the native cpu.
|
||||
qcpu=${package#qemu-}
|
||||
case ${qcpu} in
|
||||
arm*) qcpu="arm";;
|
||||
mips*) qcpu="mips";;
|
||||
ppc*) qcpu="ppc";;
|
||||
s390*) qcpu="s390";;
|
||||
sh*) qcpu="sh";;
|
||||
sparc*) qcpu="sparc";;
|
||||
esac
|
||||
|
||||
# we use 'printf' here to be portable across 'sh'
|
||||
# implementations: #679168
|
||||
cat <<EOF >>"${out}"
|
||||
if [ "\${cpu}" != "${qcpu}" -a -x "${interpreter}" ] ; then
|
||||
printf '%s\n' ':${package}:M::${magic}:${mask}:${interpreter}:'"\${QEMU_BINFMT_FLAGS}" >/proc/sys/fs/binfmt_misc/register
|
||||
fi
|
||||
EOF
|
||||
|
||||
echo ":${package}:M::${magic}:${mask}:${interpreter}:OC" >>"${out_systemd}"
|
||||
|
||||
done
|
||||
cat "${FILESDIR}"/qemu-binfmt.initd.tail >>"${out}" || die
|
||||
}
|
||||
|
||||
src_install() {
|
||||
if [[ -n ${user_targets} ]]; then
|
||||
cd "${S}/user-build"
|
||||
emake DESTDIR="${ED}" install
|
||||
|
||||
# Install binfmt handler init script for user targets.
|
||||
generate_initd
|
||||
doinitd "${T}/qemu-binfmt"
|
||||
|
||||
# Install binfmt/qemu.conf.
|
||||
insinto "/usr/share/qemu/binfmt.d"
|
||||
doins "${T}/qemu.conf"
|
||||
fi
|
||||
|
||||
if [[ -n ${softmmu_targets} ]]; then
|
||||
cd "${S}/softmmu-build"
|
||||
emake DESTDIR="${ED}" install
|
||||
|
||||
# This might not exist if the test failed. #512010
|
||||
[[ -e check-report.html ]] && dodoc check-report.html
|
||||
|
||||
if use kernel_linux; then
|
||||
udev_newrules "${FILESDIR}"/65-kvm.rules-r2 65-kvm.rules
|
||||
fi
|
||||
|
||||
if use python; then
|
||||
python_foreach_impl qemu_python_install
|
||||
fi
|
||||
fi
|
||||
|
||||
cd "${S}/tools-build"
|
||||
emake DESTDIR="${ED}" install
|
||||
|
||||
# Disable mprotect on the qemu binaries as they use JITs to be fast #459348
|
||||
pushd "${ED}"/usr/bin >/dev/null
|
||||
pax-mark mr "${softmmu_bins[@]}" "${user_bins[@]}" # bug 575594
|
||||
popd >/dev/null
|
||||
|
||||
# Install config file example for qemu-bridge-helper
|
||||
insinto "/etc/qemu"
|
||||
doins "${FILESDIR}/bridge.conf"
|
||||
|
||||
cd "${S}"
|
||||
dodoc MAINTAINERS docs/specs/pci-ids.txt
|
||||
newdoc pc-bios/README README.pc-bios
|
||||
|
||||
# Disallow stripping of prebuilt firmware files.
|
||||
dostrip -x ${QA_PREBUILT}
|
||||
|
||||
if [[ -n ${softmmu_targets} ]]; then
|
||||
# Remove SeaBIOS since we're using the SeaBIOS packaged one
|
||||
rm "${ED}/usr/share/qemu/bios.bin"
|
||||
rm "${ED}/usr/share/qemu/bios-256k.bin"
|
||||
if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then
|
||||
dosym ../seabios/bios.bin /usr/share/qemu/bios.bin
|
||||
dosym ../seabios/bios-256k.bin /usr/share/qemu/bios-256k.bin
|
||||
fi
|
||||
|
||||
# Remove vgabios since we're using the seavgabios packaged one
|
||||
rm "${ED}/usr/share/qemu/vgabios.bin"
|
||||
rm "${ED}/usr/share/qemu/vgabios-cirrus.bin"
|
||||
rm "${ED}/usr/share/qemu/vgabios-qxl.bin"
|
||||
rm "${ED}/usr/share/qemu/vgabios-stdvga.bin"
|
||||
rm "${ED}/usr/share/qemu/vgabios-virtio.bin"
|
||||
rm "${ED}/usr/share/qemu/vgabios-vmware.bin"
|
||||
# PPC/PPC64 loads vgabios-stdvga
|
||||
if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386 || use qemu_softmmu_targets_ppc || use qemu_softmmu_targets_ppc64; then
|
||||
dosym ../seavgabios/vgabios-isavga.bin /usr/share/qemu/vgabios.bin
|
||||
dosym ../seavgabios/vgabios-cirrus.bin /usr/share/qemu/vgabios-cirrus.bin
|
||||
dosym ../seavgabios/vgabios-qxl.bin /usr/share/qemu/vgabios-qxl.bin
|
||||
dosym ../seavgabios/vgabios-stdvga.bin /usr/share/qemu/vgabios-stdvga.bin
|
||||
dosym ../seavgabios/vgabios-virtio.bin /usr/share/qemu/vgabios-virtio.bin
|
||||
dosym ../seavgabios/vgabios-vmware.bin /usr/share/qemu/vgabios-vmware.bin
|
||||
fi
|
||||
|
||||
# Remove sgabios since we're using the sgabios packaged one
|
||||
rm "${ED}/usr/share/qemu/sgabios.bin"
|
||||
if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then
|
||||
dosym ../sgabios/sgabios.bin /usr/share/qemu/sgabios.bin
|
||||
fi
|
||||
|
||||
# Remove iPXE since we're using the iPXE packaged one
|
||||
rm "${ED}"/usr/share/qemu/pxe-*.rom
|
||||
if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then
|
||||
dosym ../ipxe/8086100e.rom /usr/share/qemu/pxe-e1000.rom
|
||||
dosym ../ipxe/80861209.rom /usr/share/qemu/pxe-eepro100.rom
|
||||
dosym ../ipxe/10500940.rom /usr/share/qemu/pxe-ne2k_pci.rom
|
||||
dosym ../ipxe/10222000.rom /usr/share/qemu/pxe-pcnet.rom
|
||||
dosym ../ipxe/10ec8139.rom /usr/share/qemu/pxe-rtl8139.rom
|
||||
dosym ../ipxe/1af41000.rom /usr/share/qemu/pxe-virtio.rom
|
||||
fi
|
||||
fi
|
||||
|
||||
DISABLE_AUTOFORMATTING=true
|
||||
readme.gentoo_create_doc
|
||||
}
|
||||
|
||||
firmware_abi_change() {
|
||||
local pv
|
||||
for pv in ${REPLACING_VERSIONS}; do
|
||||
if ver_test $pv -lt ${FIRMWARE_ABI_VERSION}; then
|
||||
return 0
|
||||
fi
|
||||
done
|
||||
return 1
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
if [[ -n ${softmmu_targets} ]] && use kernel_linux; then
|
||||
udev_reload
|
||||
fi
|
||||
|
||||
xdg_icon_cache_update
|
||||
|
||||
[[ -z ${EPREFIX} ]] && [[ -f ${EROOT}/usr/libexec/qemu-bridge-helper ]] && \
|
||||
fcaps cap_net_admin ${EROOT}/usr/libexec/qemu-bridge-helper
|
||||
|
||||
DISABLE_AUTOFORMATTING=true
|
||||
readme.gentoo_print_elog
|
||||
|
||||
if use pin-upstream-blobs && firmware_abi_change; then
|
||||
ewarn "This version of qemu pins new versions of firmware blobs:"
|
||||
ewarn " $(best_version sys-firmware/edk2-ovmf)"
|
||||
ewarn " $(best_version sys-firmware/ipxe)"
|
||||
ewarn " $(best_version sys-firmware/seabios)"
|
||||
ewarn " $(best_version sys-firmware/sgabios)"
|
||||
ewarn "This might break resume of hibernated guests (started with a different"
|
||||
ewarn "firmware version) and live migration to/from qemu versions with different"
|
||||
ewarn "firmware. Please (cold) restart all running guests. For functional"
|
||||
ewarn "guest migration ensure that all"
|
||||
ewarn "hosts run at least"
|
||||
ewarn " app-emulation/qemu-${FIRMWARE_ABI_VERSION}."
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_info() {
|
||||
echo "Using:"
|
||||
echo " $(best_version app-emulation/spice-protocol)"
|
||||
echo " $(best_version sys-firmware/edk2-ovmf)"
|
||||
if has_version 'sys-firmware/edk2-ovmf[binary]'; then
|
||||
echo " USE=binary"
|
||||
else
|
||||
echo " USE=''"
|
||||
fi
|
||||
echo " $(best_version sys-firmware/ipxe)"
|
||||
echo " $(best_version sys-firmware/seabios)"
|
||||
if has_version 'sys-firmware/seabios[binary]'; then
|
||||
echo " USE=binary"
|
||||
else
|
||||
echo " USE=''"
|
||||
fi
|
||||
echo " $(best_version sys-firmware/sgabios)"
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
xdg_icon_cache_update
|
||||
}
|
Binary file not shown.
@ -1,3 +1,5 @@
|
||||
DIST eselect-repository-8.tar.gz 6774 BLAKE2B d22c2befc744e21b7619a490e9c41f1052c4077135ba5247ea9558f15f7dc5c06642dd934c41ad8cb3bedb40398876ea9d508276bde6f214fe06d5f80b19911b SHA512 b1fd13e3bfa323dea7fec53a33865352545a070df472c9db0b2901945a795833eb8a2b7b264005d94fe6e92dce57414a7e995157d28c8d26048bedcbf42adf96
|
||||
DIST eselect-repository-9.tar.gz 6791 BLAKE2B 66ca783b66ead0bef0e85839723844147919ca7caf4e66f962a869118bd0f7484ec183c5c7ab0327d960cb8ec9c5aae0d46b5565c121f9df9d3fe90a19426354 SHA512 9bd1f1ce15da01f76248d93d368c133e22ed77aa6dfd778d10295db649783583c203bc6c0388dec712eea5cc38b76b7527528a1e27a6a526f024eaf73e06b6ab
|
||||
EBUILD eselect-repository-8.ebuild 1004 BLAKE2B 7806e6138ad9bb7ca7b9945ae8ca233634c87331efebb11235357772dad7e48a7310afaecb096d5e5285674a8368c7feffe6aa4a7c6ed030595920b56bf2eca4 SHA512 4f97456e9e6aa61d06d0fc817cd5376654446b27c2b933deb606691fc3cc213685bceb56e8fcee16f21acb1027b979d4bba9edd13448e8f4a7746f5008b1fd81
|
||||
EBUILD eselect-repository-9.ebuild 997 BLAKE2B ea0c3ee7cf8ac88ec559949c9ea8c0429417a946fca9d417a5b4a28ff0191ffdb957bb6ea6d3cda0d0a77671a35c8654f77e86f55476218ade167ac7f4a8cebc SHA512 923ae791d2f8e8cf38be40b6b2618a2affdd3113ebf9677f26d8a4d5d1e1f0607868aa4b935ddd370dd72d5ffd9f4f97095ba4ffd06ceffc7ceb1ea7c5f2d399
|
||||
MISC metadata.xml 361 BLAKE2B 65f6d76855e7205041fd10b416774d373f2cbf3ef3c13ccbad5069edb5f2d980c67cd1f188471df59ce784ff5b8a100c984644dadacaa4ace8d42c22993fc594 SHA512 40082f5d7899074e331edbe92d13784a3ccff5e04f60db71297ded20b2f1cca88e70b1f4fd6cc94e76048b7f3a718b586ced406452d816333e969e64ac5a3c8e
|
||||
|
@ -0,0 +1,41 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
PYTHON_COMPAT=( python3_{7..9} )
|
||||
inherit python-single-r1
|
||||
|
||||
DESCRIPTION="Manage repos.conf via eselect"
|
||||
HOMEPAGE="https://github.com/mgorny/eselect-repository"
|
||||
SRC_URI="https://github.com/mgorny/eselect-repository/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
|
||||
LICENSE="BSD-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~x64-macos"
|
||||
REQUIRED_USE=${PYTHON_REQUIRED_USE}
|
||||
|
||||
RDEPEND="${PYTHON_DEPS}
|
||||
app-admin/eselect
|
||||
$(python_gen_cond_dep '
|
||||
dev-python/lxml[${PYTHON_MULTI_USEDEP}]
|
||||
')
|
||||
net-misc/wget"
|
||||
|
||||
src_compile() {
|
||||
MAKEARGS=(
|
||||
PREFIX="${EPREFIX}/usr"
|
||||
SYSCONFDIR="${EPREFIX}/etc"
|
||||
SHAREDSTATEDIR="${EPREFIX}/var"
|
||||
ESELECTDIR="${EPREFIX}/usr/share/eselect/modules"
|
||||
)
|
||||
|
||||
emake "${MAKEARGS[@]}"
|
||||
python_fix_shebang eselect-repo-helper
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake "${MAKEARGS[@]}" DESTDIR="${D}" install
|
||||
keepdir /var/db/repos
|
||||
einstalldocs
|
||||
}
|
Binary file not shown.
@ -1,3 +1,3 @@
|
||||
DIST demerge-0.047.tar.gz 11142 BLAKE2B aba6e40d9a47032782bafe0bfc77f0bdda7e9782daac56712025c6a544db5624a824cfb1db8b32d2dc61a3e3c561432159eb8208bc5da6f94745ec603a457420 SHA512 6c2d172694516c030c358c9668ff4a1fe54d910583de6829bec0de6e67d428b1853b23f6ccd18fc9286932cb9a2bc5a37bab4b5ce43ddf2dd031c64c2ee6b1ce
|
||||
EBUILD demerge-0.047-r3.ebuild 1313 BLAKE2B 00518ffb80e18c6e1e8ed3870c93f1a38219ca899d4d228fbd45c881e8bf2f0481513c5e485cbf689bb3e0334c848b432a272f208838149835b1afe36638a3fa SHA512 db2746ee1cdff08f192a2466a3c5c9cf0d37b89d63ce792a4740bafeb4907f81a30dad2d61ef9a291448df8ef72c6bddae3416f9fcb227a90c9a5b07527537d6
|
||||
MISC metadata.xml 357 BLAKE2B 5504d99190aae9f6b2d480a7a98476ef29503da873efd34bc51dffc1f3c4cf9049128dbaa31b63a13a8078463eecaefd7a1daf71fb3527d2148d2450eebda2f0 SHA512 7ef62a53bd595c8f69a3fcbb0b7d0db7eacfec1a7a725a51fd1db3a1d7dfac34cbfeafcfd3e9ec0a30494a06b65b203ca1b1684d1173f3faca521c713f2bae94
|
||||
MISC metadata.xml 251 BLAKE2B 1de7d1f7a54ea11d1363a8a5673fe7e0e7c561103c03558042528680a9d5faab7222805b136c64d39abc56718c999581ccba9945fe5201ca12c962cc101fb267 SHA512 bc87b53817cd976bf8641fa1f7eeb62379b3bbb7d99d3a00078d1d55a0af6f296d54fda4bc2c2cda93434976b32b45a334fb3264fa3fbc1ed2f22728bf605695
|
||||
|
@ -1,5 +1,7 @@
|
||||
DIST mgorny-dev-scripts-6.tar.gz 7270 BLAKE2B 30945ccc04111c91dcf22d180b0f653606910a0f13d3d2c2acdb037a51bc6490917d8dab91580c27caf492487dca7ec575c5d59181ce622dd67dada49e653462 SHA512 b46d6919cea7233131e90c423392bfdc8a560800adc05e164ef88351d84d51a73dfd982fcaf12bd9519219bc08b84b6a1aa3dc078bb30d35d57847ad1b22efa9
|
||||
DIST mgorny-dev-scripts-7.tar.gz 7262 BLAKE2B adae301b7a3707aed052e11227f792e247b8e55f56dbe5b07ecfd7c37b1bc401f7f7110c2e38703d8c0f77926374193fd21dd803a60c3300990b85974e084ac8 SHA512 24b7b03bfa5ebac91a19470a49c5df6b4ff808876d8fa3e95adc243542f9b215f4c5b4cf3a3df48bae4386be570948d2976b6d50e1144469690a73bd5c119a6c
|
||||
DIST mgorny-dev-scripts-8.tar.gz 7264 BLAKE2B 70825cbfc00c2d15bcb5533bdfa6c3ac4eb6555b6e0ce6408cd74b2f8e81c04c72360fa02b6c11c31d18fb27f9f30c54103ecd3613b9e53a6d77a902fa8c27a6 SHA512 e2905485348d4ed85e620e8242bd0cf0a14a0604299a8a47ab9b27d888b87429bf55cceb68f55dea5ebd5ffd8fbfaceca72eac181fd28afa473bc50d07a52a32
|
||||
EBUILD mgorny-dev-scripts-6.ebuild 603 BLAKE2B eaa3b41806bc9e16eb74173e3a69c4426220ddae73f62e089deb0eef98d55e2df080064a4f64e53dc01c3baec06af6ff5a7926cb3cb4fb6bda62bdce2c157948 SHA512 3f75ac80f219d8f366a60043c0aceb3553a506baa5c9fdfbf50ccfa2611dd16789edbc2605c501b3037253d8ffc9e4bc427e24aaafbc95813086c16363f08d50
|
||||
EBUILD mgorny-dev-scripts-7.ebuild 603 BLAKE2B 129885a428e34844ecf0c42270aa4d1b712da7f99b706d91f25e09cce68ebd918e80c4e2da455478c55fc21879f1c57c3c477def155fad21f02a97f9a9343267 SHA512 f52a8b9b0fa466ff28bb8379ae81208c2cc3e29a21d4c7bbfba59f1b03528a0f89d6cae51ee8333f4bdd82c97004c7af96b80b2031939c1ed203fcfdd48929c2
|
||||
EBUILD mgorny-dev-scripts-8.ebuild 603 BLAKE2B 129885a428e34844ecf0c42270aa4d1b712da7f99b706d91f25e09cce68ebd918e80c4e2da455478c55fc21879f1c57c3c477def155fad21f02a97f9a9343267 SHA512 f52a8b9b0fa466ff28bb8379ae81208c2cc3e29a21d4c7bbfba59f1b03528a0f89d6cae51ee8333f4bdd82c97004c7af96b80b2031939c1ed203fcfdd48929c2
|
||||
MISC metadata.xml 247 BLAKE2B 1750cec57189e711ca5eba89a78e1d317f0839fa53564fbd39b4e955c28d98f4ae04caf9069afc20a18536cdc92b30fe7b15eb086767c742bad07d9980cfd24b SHA512 d6e2ea8a9d74791bcbf3d6311a66bafc20b8f4db3a576d9a8d54b86d7afb231122b8d87f71f3f46360980adf8d815c633b6d5041f9a30fc8656e8fb66057a282
|
||||
|
@ -0,0 +1,28 @@
|
||||
# Copyright 2019-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
DESCRIPTION="Handy scripts for ebuild development and more"
|
||||
HOMEPAGE="https://github.com/mgorny/mgorny-dev-scripts"
|
||||
SRC_URI="https://github.com/mgorny/mgorny-dev-scripts/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
|
||||
LICENSE="BSD-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
|
||||
RDEPEND="
|
||||
app-portage/gentoolkit
|
||||
dev-perl/URI
|
||||
dev-util/pkgcheck
|
||||
dev-vcs/git
|
||||
net-misc/wget
|
||||
sys-apps/portage
|
||||
x11-misc/xdg-utils
|
||||
!dev-util/pkgdiff"
|
||||
|
||||
src_install() {
|
||||
dodoc README.rst
|
||||
rm -f COPYING README.rst || die
|
||||
dobin *
|
||||
}
|
Binary file not shown.
@ -1,3 +1,3 @@
|
||||
DIST XML-Schema-learner-1.0.1.tar.gz 51057 BLAKE2B db9e5c6176484278fcc050c201f4ee3c560536fd1439cadf1f7c2be29e967ef9d84a488ec01045cc3887f527a0cbaf53649bdb4a505f11df17c5697b344a6fd3 SHA512 f357c1a99ac6a7f807538910dfe5e19b14f789046816d333cb031addfbffc0858fd5641f52dcd7304417d0cf0b6c45d1eb3f2092652c4891c09fc45dd26feb9d
|
||||
EBUILD XML-Schema-learner-1.0.1.ebuild 1058 BLAKE2B e235d747462f8e96c5bbe907b7ee7f9f3d83a142e8f3b5aa7759f4b15286e1c421513a38ceb064a01c20bf0eac63fadd684cb813f390fe0ac48b25517a47fcc2 SHA512 839a22ec4d82f1df20baa1b67a1119ef17138b204a140c212de979b9e92fd7625c7d006e5e3cb6478027f90d82c8e860fa761c3adc953c7b3c3412d53ffa174a
|
||||
EBUILD XML-Schema-learner-1.0.1.ebuild 1189 BLAKE2B d82af02d227051b772e7943701dc9db367f5adc152bbcfe309ceafe51dcf6238fd594e08e42b64ebec56d795531265aad8d80b0a537dc68af258f25ebbb1783d SHA512 2c6f15528e15026bb63979d842c5c533d584387e5aa13373788b723e1929cba02d93ffb28b2ad691d2589459963fd91fa48a886b70ed1daf12ffd3319b250afe
|
||||
MISC metadata.xml 942 BLAKE2B 99cfdc01afc572294b15a21d4a14a3e272c4e465e276d83990e01c6e03273730348265d3615da5fd3c5c1dc73e4c688d20ba161c9f4021f719357f1109f6c1c1 SHA512 48e0d860bbede84a76773ad1a77620cdee393eb0894f63461371ae7cb12a43fa0b640bb2dee17eb3eeb22fbe24899c90da704a74f70075e722e83f5d0be86bb2
|
||||
|
@ -1,6 +1,4 @@
|
||||
DIST krop-0.5.1.tar.gz 42719 BLAKE2B e0baa3c14d9ce63815615eae004a08af720868d584262901eccbc569852177e07d5df659ea560d7e9cbdc4325daef8c35acd9c200440a8dfd73c19b274d8de37 SHA512 2bfd2a5d762454ab45538707c6f333d2b0947b6b203d6e7bd2d9d0d574d79de8ee6b30d87b17d6afea604456b915f323b855c9c9af5c169c192b0a01634075ca
|
||||
DIST krop-0.6.0.tar.gz 48331 BLAKE2B ca6a00a410ed4e18a401fab3a21bc49c86f73165f68b192ab83c8fad74111ba9a9941f464a2646faa5a3317bbb45cdc89bed19c901999c0b11db353ac2997a65 SHA512 51a988e4fcb65d11cc26cf5b0c808e79097a66ef8ec4751a6c051289cd77b3328ebc8ecd9829adc466f87330beb8bc715d290cc20be415a7b8f179378b7bcb4f
|
||||
EBUILD krop-0.5.1-r1.ebuild 888 BLAKE2B 4d507100bbe54b10c9446d5a2a4de30d0aee049bb2ad1a422318008d1a57e31c160990fb6c9ed72e79f72d89ba7682e3a04776ec090024df8a3635ce34c4fa05 SHA512 2acf6acff5e9123491bbc8b62cb8b720f2db6aa355992b50dcafe052d3982dbf6ee99c7c60bd68ac48e622a606a25313424034766dc5861baf4665bf5b1cae87
|
||||
EBUILD krop-0.6.0.ebuild 945 BLAKE2B 86a5fb97c930fbadff98917e884e74e4974a42a3babbe8e37f3af2649c142c3904eef7b39aec1f5dbd3d1386eb085c27973f3106a9d23b2ec418ba3f26ae4722 SHA512 24a0ae2c9083b3df7aa733e25a7dbf051dc9488bbd165f03f1ea0051081cadef4def3099b2ee8fb3d7c06bc49c52c495018dc556eeddfd93484aa1a71ae33e03
|
||||
EBUILD krop-0.6.0.ebuild 944 BLAKE2B fc2440fb8b3fafe8c9363dfbfa3aa14dfc93f85c1f108a94bb09fb0608967f7e9d614a1c5f514072f40e4e04147fbd47e8885cd3afca98b2c5922d1d5739ce48 SHA512 8d66fe580963dc03d0ce6e8651a3c694d503981b394c6c9bcd30a2a73be9b5f47b0d57daeb3a4422c83efe6f894f2f4a9938c3c1f471a912934583317c57db42
|
||||
EBUILD krop-9999.ebuild 945 BLAKE2B 86a5fb97c930fbadff98917e884e74e4974a42a3babbe8e37f3af2649c142c3904eef7b39aec1f5dbd3d1386eb085c27973f3106a9d23b2ec418ba3f26ae4722 SHA512 24a0ae2c9083b3df7aa733e25a7dbf051dc9488bbd165f03f1ea0051081cadef4def3099b2ee8fb3d7c06bc49c52c495018dc556eeddfd93484aa1a71ae33e03
|
||||
MISC metadata.xml 333 BLAKE2B b62d23170b13a4d2375de72955c2708368a34435f022231b829b19b60c9f38a1546ec62887dae545691eb1df45998ab7810aa58df3b94729632991e49c4c098f SHA512 30ec13878bbe3b50c90f1849bbc5bf0f8dc05bf1b6a8f79695590f48c76618eef4666965b8130d1909db3c960a43d3149dba525017f342ce9635afc530b873f0
|
||||
|
@ -1,41 +0,0 @@
|
||||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
PYTHON_COMPAT=( python3_{7,8} )
|
||||
|
||||
inherit desktop distutils-r1 xdg-utils
|
||||
|
||||
if [[ ${PV} == 9999 ]] ; then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="https://github.com/arminstraub/krop.git"
|
||||
else
|
||||
SRC_URI="http://arminstraub.com/downloads/${PN}/${P}.tar.gz"
|
||||
KEYWORDS="amd64 ~x86"
|
||||
fi
|
||||
|
||||
DESCRIPTION="A tool to crop PDF files"
|
||||
HOMEPAGE="http://arminstraub.com/software/krop"
|
||||
|
||||
LICENSE="GPL-3"
|
||||
SLOT="0"
|
||||
IUSE=""
|
||||
|
||||
RDEPEND="dev-python/python-poppler-qt5[${PYTHON_USEDEP}]
|
||||
dev-python/PyPDF2[${PYTHON_USEDEP}]
|
||||
dev-python/PyQt5[${PYTHON_USEDEP},gui,widgets]"
|
||||
|
||||
src_install() {
|
||||
distutils-r1_src_install
|
||||
domenu "${WORKDIR}/${P}/${PN}.desktop"
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
xdg_mimeinfo_database_update
|
||||
xdg_desktop_database_update
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
xdg_mimeinfo_database_update
|
||||
xdg_desktop_database_update
|
||||
}
|
@ -1,7 +1,5 @@
|
||||
AUX xournalpp-1.0.18-nostrip.patch 498 BLAKE2B 451eff71c86eff703d7b9dbee910c8938e10fe963d416c10fc0a5da04071672a26313d7c6fd887e960df3dc9b717a74d7b3974020ea6dfafefe2f06ec539cd6e SHA512 b883ba8094f46462c8415df10154fcbe2e773df981bc31fae5695a7d34de97bb984aa7b912cab3c9dcb121f10d52796c766f295d1d6a6ff424fa4d99a9f04e2e
|
||||
DIST xournalpp-1.0.18.tgz 14892343 BLAKE2B d2aaede0e85d724cf8032f38a6fa2c3c4862f26d410dbab8264dd50ab8ee0d26889eeab433ef615fe9ce271710192eca380ff80149431d5368125926cf8d2b25 SHA512 90568a2674a18ff711ecef5f1a66ea1c5746d7f1fde271b36342d9bf48e096e63075cf7fd8b69e39e144273a4d1b922c415eee929eba94b2fa515a0bb481815a
|
||||
DIST xournalpp-1.0.20.tgz 14895705 BLAKE2B f1a4721f4f0b2f0e666c7466d7ddbd1f299172576d5f86b4ab8150d3bf05231cc7bb40e750394d892fe8ce32b6106e29456e3e9fa976b1bf07a808bf1bfff953 SHA512 c73783d5e40262b2c6f7f6be372839c73a19ab25fc258a7524660654526a3a35a6ba16ba282f793e7982ff97d006703c103fdd579fc16a3e636bf6daf94fe346
|
||||
EBUILD xournalpp-1.0.18-r1.ebuild 911 BLAKE2B a00d8ba904bfa33a5323d8dc8a80c457886263e08240e364423f99b26b4278e4d6f54532207e7a33a122b8b7bd9b7dac2083697e4f756277bf616824b88cb2ab SHA512 019fabd488c5418652583c15aa0e06f13a3d68eec69b4dce656ca27c5d464201307c31c45c501e96ef86021de8b6ca8e93e386dc5abc56d61fee2e5c6e84110f
|
||||
EBUILD xournalpp-1.0.20.ebuild 908 BLAKE2B f37fa2a3ef97ecd6aec6423cdef367b08512076e004a3199b4bda0fbe383be825a4568fa8163a28b408d47a6ff5cecbbbc7518c78ab10a47a7537485bb0b3c6b SHA512 f976e319e282a470af98f460f8727bac5686fcd892576b3c1b4a912f02142b459cd7ba10ca076d4609f5918ebcf1c833dd2aab6b36829df319ce3035f63e48fe
|
||||
EBUILD xournalpp-9999.ebuild 840 BLAKE2B e05e8c13c6c3af5a29b49bc98e6e25194dd8a4ec86e5a850b1112ed67fad99a9beed3789a42261d3c54c040e0f08ea1e7fd0dcc6fad8e60b0542ad621ed02c2b SHA512 bec39a5bb6b87ec47fdf8afc1602ea5239d2a5d0c416538419fa4434eeaa4ffc1210132a0b1a75d963216675c6f83b8433cee825ff186e216e53c85cc4e35572
|
||||
EBUILD xournalpp-1.0.20.ebuild 912 BLAKE2B 0b563fe3d1501467c8deebafde7d79baae3e46dada7e574e2c78d08c3ac09ab22cf4512a24a75a4a2bb8ab2126be36cef2d8bcad403412cc40e87281bd61a9aa SHA512 1fce747a69e646b04c7937b3d7051dbfb20571a0f1c8f351edf59098deba2feeb7a286f8c656b8e5588d50ca7e3cdf91ea72eb3e988af0a7710c48668aa6c5a5
|
||||
EBUILD xournalpp-9999.ebuild 845 BLAKE2B 054a68301b4d46cf6dd3a7a768d113b1782775612a768181fb4c384e2ba16b6e1f21abbacf05bb3b7a6396d026164cd462273a7f05b3d24d4a5cab310229e54f SHA512 a2a7f9a71aeea60780b89cc0cf3a0ef0a62c3de72c6fa0f9a3863a4245069975ae230a14aac59940bcad919edb031d686bf0c7a3f2da444fc836eb911e510d26
|
||||
MISC metadata.xml 220 BLAKE2B a2c3e050477292c8000b5bb0ffa26d84a57fb435ba5c96dac5c5f4d6f3e823c07116520102eacefd24227a4490dd340c7836cf8d1ba28d23fc76eeaadf04c7b9 SHA512 594861f664581733d740d9f501b84c56f9c9c67f932e97f5905a37d4f19b5a19ef4045c50571a412fbc64d318f3ad1d403ed37c61449b37e74df3d5753aedda8
|
||||
|
@ -1,49 +0,0 @@
|
||||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit cmake-utils xdg
|
||||
|
||||
if [[ ${PV} == *9999 ]]; then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="https://github.com/xournalpp/xournalpp.git"
|
||||
unset SRC_URI
|
||||
else
|
||||
KEYWORDS="amd64"
|
||||
SRC_URI="https://github.com/xournalpp/xournalpp/archive/${PV}.tar.gz -> ${P}.tgz"
|
||||
fi
|
||||
|
||||
DESCRIPTION="Handwriting notetaking software with PDF annotation support"
|
||||
HOMEPAGE="https://github.com/xournalpp/xournalpp"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
IUSE=""
|
||||
|
||||
COMMONDEPEND="
|
||||
app-text/poppler[cairo]
|
||||
dev-libs/glib
|
||||
dev-libs/libxml2
|
||||
dev-libs/libzip:=
|
||||
media-libs/portaudio
|
||||
media-libs/libsndfile
|
||||
sys-libs/zlib:=
|
||||
x11-libs/gtk+:3
|
||||
"
|
||||
RDEPEND="${COMMONDEPEND}
|
||||
"
|
||||
DEPEND="${COMMONDEPEND}
|
||||
"
|
||||
BDEPEND="
|
||||
virtual/pkgconfig
|
||||
sys-apps/lsb-release
|
||||
"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${P}-nostrip.patch" # bug 745255
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
cmake-utils_src_prepare
|
||||
}
|
Binary file not shown.
@ -1,8 +1,5 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer type="person">
|
||||
<email>gyakovlev@gentoo.org</email>
|
||||
<name>Georgy Yakovlev</name>
|
||||
</maintainer>
|
||||
<!-- maintainer-needed -->
|
||||
</pkgmetadata>
|
||||
|
Binary file not shown.
@ -1,118 +0,0 @@
|
||||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
inherit go-module
|
||||
EGIT_COMMIT=77863e5a13110f1fca87b6fce84a7169c3aa58f5
|
||||
|
||||
DESCRIPTION="Replicated SQLite using the Raft consensus protocol"
|
||||
HOMEPAGE="https://github.com/rqlite/rqlite https://www.philipotoole.com/tag/rqlite/"
|
||||
|
||||
EGO_SUM=(
|
||||
"github.com/Bowery/prompt v0.0.0-20190916142128-fa8279994f75"
|
||||
"github.com/Bowery/prompt v0.0.0-20190916142128-fa8279994f75/go.mod"
|
||||
"github.com/DataDog/datadog-go v2.2.0+incompatible/go.mod"
|
||||
"github.com/armon/go-metrics v0.0.0-20190430140413-ec5e00d3c878"
|
||||
"github.com/armon/go-metrics v0.0.0-20190430140413-ec5e00d3c878/go.mod"
|
||||
"github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod"
|
||||
"github.com/boltdb/bolt v1.3.1"
|
||||
"github.com/boltdb/bolt v1.3.1/go.mod"
|
||||
"github.com/circonus-labs/circonus-gometrics v2.3.1+incompatible/go.mod"
|
||||
"github.com/circonus-labs/circonusllhist v0.1.3/go.mod"
|
||||
"github.com/davecgh/go-spew v1.1.0/go.mod"
|
||||
"github.com/davecgh/go-spew v1.1.1/go.mod"
|
||||
"github.com/golang/protobuf v1.2.0/go.mod"
|
||||
"github.com/hashicorp/go-cleanhttp v0.5.0/go.mod"
|
||||
"github.com/hashicorp/go-hclog v0.9.1"
|
||||
"github.com/hashicorp/go-hclog v0.9.1/go.mod"
|
||||
"github.com/hashicorp/go-immutable-radix v1.0.0"
|
||||
"github.com/hashicorp/go-immutable-radix v1.0.0/go.mod"
|
||||
"github.com/hashicorp/go-msgpack v0.5.5"
|
||||
"github.com/hashicorp/go-msgpack v0.5.5/go.mod"
|
||||
"github.com/hashicorp/go-retryablehttp v0.5.3/go.mod"
|
||||
"github.com/hashicorp/go-uuid v1.0.0/go.mod"
|
||||
"github.com/hashicorp/golang-lru v0.5.0"
|
||||
"github.com/hashicorp/golang-lru v0.5.0/go.mod"
|
||||
"github.com/hashicorp/raft v1.1.0/go.mod"
|
||||
"github.com/hashicorp/raft v1.1.1"
|
||||
"github.com/hashicorp/raft v1.1.1/go.mod"
|
||||
"github.com/hashicorp/raft-boltdb v0.0.0-20171010151810-6e5ba93211ea/go.mod"
|
||||
"github.com/hashicorp/raft-boltdb v0.0.0-20191021154308-4207f1bf0617"
|
||||
"github.com/hashicorp/raft-boltdb v0.0.0-20191021154308-4207f1bf0617/go.mod"
|
||||
"github.com/labstack/gommon v0.3.0"
|
||||
"github.com/labstack/gommon v0.3.0/go.mod"
|
||||
"github.com/mattn/go-colorable v0.1.2/go.mod"
|
||||
"github.com/mattn/go-colorable v0.1.4"
|
||||
"github.com/mattn/go-colorable v0.1.4/go.mod"
|
||||
"github.com/mattn/go-isatty v0.0.8/go.mod"
|
||||
"github.com/mattn/go-isatty v0.0.9/go.mod"
|
||||
"github.com/mattn/go-isatty v0.0.11"
|
||||
"github.com/mattn/go-isatty v0.0.11/go.mod"
|
||||
"github.com/mattn/go-sqlite3 v2.0.2+incompatible"
|
||||
"github.com/mattn/go-sqlite3 v2.0.2+incompatible/go.mod"
|
||||
"github.com/matttproud/golang_protobuf_extensions v1.0.1/go.mod"
|
||||
"github.com/mkideal/cli v0.0.3"
|
||||
"github.com/mkideal/cli v0.0.3/go.mod"
|
||||
"github.com/mkideal/pkg v0.0.0-20170503154153-3e188c9e7ecc"
|
||||
"github.com/mkideal/pkg v0.0.0-20170503154153-3e188c9e7ecc/go.mod"
|
||||
"github.com/pascaldekloe/goe v0.1.0/go.mod"
|
||||
"github.com/pkg/errors v0.8.1/go.mod"
|
||||
"github.com/pmezard/go-difflib v1.0.0/go.mod"
|
||||
"github.com/prometheus/client_golang v0.9.2/go.mod"
|
||||
"github.com/prometheus/client_model v0.0.0-20180712105110-5c3871d89910/go.mod"
|
||||
"github.com/prometheus/common v0.0.0-20181126121408-4724e9255275/go.mod"
|
||||
"github.com/prometheus/procfs v0.0.0-20181204211112-1dc9a6cbc91a/go.mod"
|
||||
"github.com/stretchr/objx v0.1.0/go.mod"
|
||||
"github.com/stretchr/testify v1.2.2/go.mod"
|
||||
"github.com/stretchr/testify v1.3.0/go.mod"
|
||||
"github.com/stretchr/testify v1.4.0/go.mod"
|
||||
"github.com/tv42/httpunix v0.0.0-20150427012821-b75d8614f926/go.mod"
|
||||
"github.com/valyala/bytebufferpool v1.0.0/go.mod"
|
||||
"github.com/valyala/fasttemplate v1.0.1/go.mod"
|
||||
"golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod"
|
||||
"golang.org/x/crypto v0.0.0-20191219195013-becbf705a915"
|
||||
"golang.org/x/crypto v0.0.0-20191219195013-becbf705a915/go.mod"
|
||||
"golang.org/x/net v0.0.0-20181201002055-351d144fa1fc/go.mod"
|
||||
"golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod"
|
||||
"golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod"
|
||||
"golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod"
|
||||
"golang.org/x/sys v0.0.0-20190222072716-a9d3bda3a223/go.mod"
|
||||
"golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod"
|
||||
"golang.org/x/sys v0.0.0-20190523142557-0e01d883c5c5/go.mod"
|
||||
"golang.org/x/sys v0.0.0-20190602015325-4c4f7f33c9ed"
|
||||
"golang.org/x/sys v0.0.0-20190602015325-4c4f7f33c9ed/go.mod"
|
||||
"golang.org/x/sys v0.0.0-20190813064441-fde4db37ae7a/go.mod"
|
||||
"golang.org/x/sys v0.0.0-20191026070338-33540a1f6037"
|
||||
"golang.org/x/sys v0.0.0-20191026070338-33540a1f6037/go.mod"
|
||||
"golang.org/x/text v0.3.0/go.mod"
|
||||
"gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod"
|
||||
"gopkg.in/yaml.v2 v2.2.2/go.mod"
|
||||
)
|
||||
go-module_set_globals
|
||||
SRC_URI="https://github.com/rqlite/rqlite/archive/v${PV}.tar.gz -> ${P}.tar.gz
|
||||
${EGO_SUM_SRC_URI}"
|
||||
|
||||
LICENSE="MIT BSD MPL-2.0"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64"
|
||||
IUSE=""
|
||||
|
||||
src_compile() {
|
||||
GOBIN="${S}/bin" \
|
||||
go install \
|
||||
-ldflags="-X main.version=v${PV}
|
||||
-X main.branch=master
|
||||
-X main.commit=${EGIT_COMMIT}
|
||||
-X main.buildtime=$(date +%Y-%m-%dT%T%z)" \
|
||||
./cmd/... || die
|
||||
}
|
||||
|
||||
src_test() {
|
||||
GOBIN="${S}/bin" \
|
||||
go test ./... || die
|
||||
}
|
||||
|
||||
src_install() {
|
||||
dobin bin/*
|
||||
dodoc -r *.md DOC
|
||||
}
|
Binary file not shown.
Binary file not shown.
@ -0,0 +1,798 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
# to make make a crosscompiler use crossdev and symlink ghc tree into
|
||||
# cross overlay. result would look like 'cross-sparc-unknown-linux-gnu/ghc'
|
||||
export CBUILD=${CBUILD:-${CHOST}}
|
||||
export CTARGET=${CTARGET:-${CHOST}}
|
||||
if [[ ${CTARGET} = ${CHOST} ]] ; then
|
||||
if [[ ${CATEGORY/cross-} != ${CATEGORY} ]] ; then
|
||||
export CTARGET=${CATEGORY/cross-}
|
||||
fi
|
||||
fi
|
||||
|
||||
inherit autotools bash-completion-r1 eutils flag-o-matic ghc-package
|
||||
inherit multilib multiprocessing pax-utils toolchain-funcs prefix
|
||||
inherit check-reqs
|
||||
DESCRIPTION="The Glasgow Haskell Compiler"
|
||||
HOMEPAGE="https://www.haskell.org/ghc/"
|
||||
|
||||
# we don't have any binaries yet
|
||||
arch_binaries=""
|
||||
|
||||
BIN_PV=${PV}
|
||||
# sorted!
|
||||
#arch_binaries="$arch_binaries alpha? ( https://slyfox.uni.cx/~slyfox/distfiles/ghc-bin-${PV}-alpha.tbz2 )"
|
||||
#arch_binaries="$arch_binaries arm? ( https://slyfox.uni.cx/~slyfox/distfiles/ghc-bin-${PV}-armv7a-hardfloat-linux-gnueabi.tbz2 )"
|
||||
#arch_binaries="$arch_binaries arm64? ( https://slyfox.uni.cx/~slyfox/distfiles/ghc-bin-${PV}-aarch64-unknown-linux-gnu.tbz2 )"
|
||||
arch_binaries="$arch_binaries amd64? ( https://slyfox.uni.cx/~slyfox/distfiles/ghc-bin-${PV}-x86_64-pc-linux-gnu.tbz2 )"
|
||||
#arch_binaries="$arch_binaries ia64? ( https://slyfox.uni.cx/~slyfox/distfiles/ghc-bin-${PV}-ia64-fixed-fiw.tbz2 )"
|
||||
#arch_binaries="$arch_binaries ppc? ( https://slyfox.uni.cx/~slyfox/distfiles/ghc-bin-${PV}-ppc.tbz2 )"
|
||||
#arch_binaries="$arch_binaries ppc64? ( https://slyfox.uni.cx/~slyfox/distfiles/ghc-bin-${PV}-ppc64.tbz2 )"
|
||||
#arch_binaries="$arch_binaries ppc64? ( !big-endian? ( https://slyfox.uni.cx/~slyfox/distfiles/ghc-bin-${PV}-powerpc64le-unknown-linux-gnu.tbz2 ) )"
|
||||
#arch_binaries="$arch_binaries sparc? ( https://slyfox.uni.cx/~slyfox/distfiles/ghc-bin-${PV}-sparc.tbz2 )"
|
||||
arch_binaries="$arch_binaries x86? ( https://slyfox.uni.cx/~slyfox/distfiles/ghc-bin-${PV}-i686-pc-linux-gnu.tbz2 )"
|
||||
|
||||
# various ports:
|
||||
#arch_binaries="$arch_binaries x86-fbsd? ( https://slyfox.uni.cx/~slyfox/distfiles/ghc-bin-${PV}-x86-fbsd.tbz2 )"
|
||||
|
||||
# 0 - yet
|
||||
yet_binary() {
|
||||
case "${ARCH}" in
|
||||
#alpha) return 0 ;;
|
||||
#arm64) return 0 ;;
|
||||
#arm) return 0 ;;
|
||||
amd64) return 0 ;;
|
||||
#ia64) return 0 ;;
|
||||
#ppc) return 0 ;;
|
||||
#ppc64)
|
||||
# use big-endian && return 0
|
||||
# return 0
|
||||
# ;;
|
||||
#sparc) return 0 ;;
|
||||
x86) return 0 ;;
|
||||
*) return 1 ;;
|
||||
esac
|
||||
}
|
||||
|
||||
GHC_PV=${PV}
|
||||
#GHC_PV=8.10.0.20200123 # uncomment only for -alpha, -beta, -rc ebuilds
|
||||
GHC_P=${PN}-${GHC_PV} # using ${P} is almost never correct
|
||||
|
||||
SRC_URI="!binary? (
|
||||
https://downloads.haskell.org/ghc/${PV/_/-}/${GHC_P}-src.tar.xz
|
||||
test? ( https://downloads.haskell.org/ghc/${PV/_/-}/${GHC_P}-testsuite.tar.xz )
|
||||
)"
|
||||
S="${WORKDIR}"/${GHC_P}
|
||||
|
||||
[[ -n $arch_binaries ]] && SRC_URI+=" !ghcbootstrap? ( $arch_binaries )"
|
||||
|
||||
BUMP_LIBRARIES=(
|
||||
# "hackage-name hackage-version"
|
||||
)
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0/${PV}"
|
||||
KEYWORDS=""
|
||||
IUSE="big-endian doc elfutils ghcbootstrap ghcmakebinary +gmp numa profile test"
|
||||
IUSE+=" binary"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
RDEPEND="
|
||||
>=dev-lang/perl-5.6.1
|
||||
dev-libs/gmp:0=
|
||||
sys-libs/ncurses:0=[unicode]
|
||||
elfutils? ( dev-libs/elfutils )
|
||||
!ghcmakebinary? ( dev-libs/libffi:= )
|
||||
numa? ( sys-process/numactl )
|
||||
"
|
||||
|
||||
# This set of dependencies is needed to run
|
||||
# prebuilt ghc. We specifically avoid ncurses
|
||||
# dependency with:
|
||||
# utils/ghc-pkg_HC_OPTS += -DBOOTSTRAPPING
|
||||
PREBUILT_BINARY_DEPENDS="
|
||||
!prefix? ( elibc_glibc? ( >=sys-libs/glibc-2.17 ) )
|
||||
"
|
||||
# This set of dependencies is needed to install
|
||||
# ghc[binary] in system. terminfo package is linked
|
||||
# against ncurses.
|
||||
PREBUILT_BINARY_RDEPENDS="${PREBUILT_BINARY_DEPENDS}
|
||||
sys-libs/ncurses:0/6
|
||||
"
|
||||
|
||||
RDEPEND+="binary? ( ${PREBUILT_BINARY_RDEPENDS} )"
|
||||
|
||||
DEPEND="${RDEPEND}
|
||||
doc? ( app-text/docbook-xml-dtd:4.2
|
||||
app-text/docbook-xml-dtd:4.5
|
||||
app-text/docbook-xsl-stylesheets
|
||||
dev-python/sphinx
|
||||
>=dev-libs/libxslt-1.1.2 )
|
||||
!ghcbootstrap? ( ${PREBUILT_BINARY_DEPENDS} )"
|
||||
|
||||
# we build binaries without profiling support
|
||||
REQUIRED_USE="
|
||||
?? ( ghcbootstrap binary )
|
||||
?? ( profile binary )
|
||||
"
|
||||
|
||||
# haskell libraries built with cabal in configure mode, #515354
|
||||
QA_CONFIGURE_OPTIONS+=" --with-compiler --with-gcc"
|
||||
|
||||
is_crosscompile() {
|
||||
[[ ${CHOST} != ${CTARGET} ]]
|
||||
}
|
||||
|
||||
is_native() {
|
||||
[[ ${CHOST} == ${CBUILD} ]] && [[ ${CHOST} == ${CTARGET} ]]
|
||||
}
|
||||
|
||||
if ! is_crosscompile; then
|
||||
PDEPEND="!ghcbootstrap? ( >=app-admin/haskell-updater-1.2 )"
|
||||
fi
|
||||
|
||||
# returns tool prefix for crosscompiler.
|
||||
# Example:
|
||||
# CTARGET=armv7a-unknown-linux-gnueabi
|
||||
# CHOST=x86_64-pc-linux-gnu
|
||||
# "armv7a-unknown-linux-gnueabi-"
|
||||
# CTARGET=${CHOST}
|
||||
# ""
|
||||
# Used in tools and library prefix:
|
||||
# "${ED}"/usr/bin/$(cross)haddock
|
||||
# "${ED}/usr/$(get_libdir)/$(cross)${GHC_P}/package.conf.d"
|
||||
|
||||
cross() {
|
||||
if is_crosscompile; then
|
||||
echo "${CTARGET}-"
|
||||
else
|
||||
echo ""
|
||||
fi
|
||||
}
|
||||
|
||||
append-ghc-cflags() {
|
||||
local persistent compile assemble link
|
||||
local flag ghcflag
|
||||
|
||||
for flag in $*; do
|
||||
case ${flag} in
|
||||
persistent) persistent="yes";;
|
||||
compile) compile="yes";;
|
||||
assemble) assemble="yes";;
|
||||
link) link="yes";;
|
||||
*)
|
||||
[[ ${compile} ]] && ghcflag="-optc${flag}" CFLAGS+=" ${flag}" && GHC_FLAGS+=" ${ghcflag}" &&
|
||||
[[ ${persistent} ]] && GHC_PERSISTENT_FLAGS+=" ${ghcflag}"
|
||||
[[ ${assemble} ]] && ghcflag="-opta${flag}" CFLAGS+=" ${flag}" && GHC_FLAGS+=" ${ghcflag}" &&
|
||||
[[ ${persistent} ]] && GHC_PERSISTENT_FLAGS+=" ${ghcflag}"
|
||||
[[ ${link} ]] && ghcflag="-optl${flag}" LDFLAGS+=" ${flag}" && GHC_FLAGS+=" ${ghcflag}" &&
|
||||
[[ ${persistent} ]] && GHC_PERSISTENT_FLAGS+=" ${ghcflag}"
|
||||
;;
|
||||
esac
|
||||
done
|
||||
}
|
||||
|
||||
# $1 - lib name (under libraries/)
|
||||
# $2 - lib version
|
||||
# example: bump_lib "transformers" "0.4.2.0"
|
||||
bump_lib() {
|
||||
local pn=$1 pv=$2
|
||||
local p=${pn}-${pv}
|
||||
local f
|
||||
|
||||
einfo "Bumping ${pn} up to ${pv}"
|
||||
|
||||
for f in ghc.mk GNUmakefile; do
|
||||
mv libraries/"${pn}"/$f "${WORKDIR}"/"${p}"/$f || die
|
||||
done
|
||||
mv libraries/"${pn}" "${WORKDIR}"/"${pn}".old || die
|
||||
mv "${WORKDIR}"/"${p}" libraries/"${pn}" || die
|
||||
}
|
||||
|
||||
update_SRC_URI() {
|
||||
local p pn pv
|
||||
for p in "${BUMP_LIBRARIES[@]}"; do
|
||||
set -- $p
|
||||
pn=$1 pv=$2
|
||||
|
||||
SRC_URI+=" https://hackage.haskell.org/package/${pn}-${pv}/${pn}-${pv}.tar.gz"
|
||||
done
|
||||
}
|
||||
|
||||
update_SRC_URI
|
||||
|
||||
bump_libs() {
|
||||
local p pn pv
|
||||
for p in "${BUMP_LIBRARIES[@]}"; do
|
||||
set -- $p
|
||||
pn=$1 pv=$2
|
||||
|
||||
bump_lib "${pn}" "${pv}"
|
||||
done
|
||||
}
|
||||
|
||||
ghc_setup_cflags() {
|
||||
# TODO: plumb CFLAGS and BUILD_CFLAGS to respective CONF_CC_OPTS_STAGE<N>
|
||||
if ! is_native; then
|
||||
export CFLAGS=${GHC_CFLAGS-"-O2 -pipe"}
|
||||
export LDFLAGS=${GHC_LDFLAGS-"-Wl,-O1"}
|
||||
einfo "Crosscompiling mode:"
|
||||
einfo " CHOST: ${CHOST}"
|
||||
einfo " CTARGET: ${CTARGET}"
|
||||
einfo " CFLAGS: ${CFLAGS}"
|
||||
einfo " LDFLAGS: ${LDFLAGS}"
|
||||
einfo " prefix: $(cross)"
|
||||
return
|
||||
fi
|
||||
# We need to be very careful with the CFLAGS we ask ghc to pass through to
|
||||
# gcc. There are plenty of flags which will make gcc produce output that
|
||||
# breaks ghc in various ways. The main ones we want to pass through are
|
||||
# -mcpu / -march flags. These are important for arches like alpha & sparc.
|
||||
# We also use these CFLAGS for building the C parts of ghc, ie the rts.
|
||||
strip-flags
|
||||
strip-unsupported-flags
|
||||
|
||||
# Cmm can't parse line numbers #482086
|
||||
replace-flags -ggdb[3-9] -ggdb2
|
||||
|
||||
GHC_FLAGS=""
|
||||
GHC_PERSISTENT_FLAGS=""
|
||||
for flag in ${CFLAGS}; do
|
||||
case ${flag} in
|
||||
|
||||
# Ignore extra optimisation (ghc passes -O to gcc anyway)
|
||||
# -O2 and above break on too many systems
|
||||
-O*) ;;
|
||||
|
||||
# Arch and ABI flags are what we're really after
|
||||
-m*) append-ghc-cflags compile assemble ${flag};;
|
||||
|
||||
# Sometimes it's handy to see backtrace of RTS
|
||||
# to get an idea what happens there
|
||||
-g*) append-ghc-cflags compile ${flag};;
|
||||
|
||||
# Ignore all other flags, including all -f* flags
|
||||
esac
|
||||
done
|
||||
|
||||
for flag in ${LDFLAGS}; do
|
||||
append-ghc-cflags link ${flag}
|
||||
done
|
||||
|
||||
# GHC uses ${CBUILD}-gcc, ${CHOST}-gcc and ${CTARGET}-gcc at a single build.
|
||||
# Skip any gentoo-specific tweaks for cross-case to avoid passing unsupported
|
||||
# options to gcc.
|
||||
if is_native; then
|
||||
# prevent from failing to build unregisterised ghc:
|
||||
# https://www.mail-archive.com/debian-bugs-dist@lists.debian.org/msg171602.html
|
||||
use ppc64 && append-ghc-cflags persistent compile -mminimal-toc
|
||||
fi
|
||||
}
|
||||
|
||||
# substitutes string $1 to $2 in files $3 $4 ...
|
||||
relocate_path() {
|
||||
local from=$1
|
||||
local to=$2
|
||||
shift 2
|
||||
local file=
|
||||
for file in "$@"
|
||||
do
|
||||
sed -i -e "s|$from|$to|g" \
|
||||
"$file" || die "path relocation failed for '$file'"
|
||||
done
|
||||
}
|
||||
|
||||
# changes hardcoded ghc paths and updates package index
|
||||
# $1 - new absolute root path
|
||||
relocate_ghc() {
|
||||
local to=$1 ghc_v=${BIN_PV}
|
||||
|
||||
# libdir for prebuilt binary and for current system may mismatch
|
||||
# It does for prefix installation for example: bug #476998
|
||||
local bin_ghc_prefix=${WORKDIR}/usr
|
||||
local bin_libpath=$(echo "${bin_ghc_prefix}"/lib*)
|
||||
local bin_libdir=${bin_libpath#${bin_ghc_prefix}/}
|
||||
|
||||
# backup original script to use it later after relocation
|
||||
local gp_back="${T}/ghc-pkg-${ghc_v}-orig"
|
||||
cp "${WORKDIR}/usr/bin/ghc-pkg-${ghc_v}" "$gp_back" || die "unable to backup ghc-pkg wrapper"
|
||||
|
||||
if [[ ${bin_libdir} != $(get_libdir) ]]; then
|
||||
einfo "Relocating '${bin_libdir}' to '$(get_libdir)' (bug #476998)"
|
||||
# moving the dir itself is not strictly needed
|
||||
# but then USE=binary would result in installing
|
||||
# in '${bin_libdir}'
|
||||
mv "${bin_ghc_prefix}/${bin_libdir}" "${bin_ghc_prefix}/$(get_libdir)" || die
|
||||
|
||||
relocate_path "/usr/${bin_libdir}" "/usr/$(get_libdir)" \
|
||||
"${WORKDIR}/usr/bin/ghc-${ghc_v}" \
|
||||
"${WORKDIR}/usr/bin/ghci-${ghc_v}" \
|
||||
"${WORKDIR}/usr/bin/ghc-pkg-${ghc_v}" \
|
||||
"${WORKDIR}/usr/bin/hsc2hs" \
|
||||
"${WORKDIR}/usr/bin/runghc-${ghc_v}" \
|
||||
"$gp_back" \
|
||||
"${WORKDIR}/usr/$(get_libdir)/${PN}-${ghc_v}/package.conf.d/"*
|
||||
fi
|
||||
|
||||
# Relocate from /usr to ${EPREFIX}/usr
|
||||
relocate_path "/usr" "${to}/usr" \
|
||||
"${WORKDIR}/usr/bin/ghc-${ghc_v}" \
|
||||
"${WORKDIR}/usr/bin/ghci-${ghc_v}" \
|
||||
"${WORKDIR}/usr/bin/ghc-pkg-${ghc_v}" \
|
||||
"${WORKDIR}/usr/bin/haddock-ghc-${ghc_v}" \
|
||||
"${WORKDIR}/usr/bin/hp2ps" \
|
||||
"${WORKDIR}/usr/bin/hpc" \
|
||||
"${WORKDIR}/usr/bin/hsc2hs" \
|
||||
"${WORKDIR}/usr/bin/runghc-${ghc_v}" \
|
||||
"${WORKDIR}/usr/$(get_libdir)/${PN}-${ghc_v}/package.conf.d/"*
|
||||
|
||||
# this one we will use to regenerate cache
|
||||
# so it should point to current tree location
|
||||
relocate_path "/usr" "${WORKDIR}/usr" "$gp_back"
|
||||
|
||||
if use prefix; then
|
||||
hprefixify "${bin_libpath}"/${PN}*/settings
|
||||
fi
|
||||
|
||||
# regenerate the binary package cache
|
||||
"$gp_back" recache || die "failed to update cache after relocation"
|
||||
rm "$gp_back"
|
||||
}
|
||||
|
||||
ghc-check-reqs() {
|
||||
# These are pessimistic values (slightly bigger than worst-case)
|
||||
# Worst case is UNREG USE=profile ia64. See bug #611866 for some
|
||||
# numbers on various arches.
|
||||
CHECKREQS_DISK_BUILD=8G
|
||||
CHECKREQS_DISK_USR=2G
|
||||
# USE=binary roughly takes
|
||||
use binary && CHECKREQS_DISK_BUILD=4G
|
||||
|
||||
"$@"
|
||||
}
|
||||
|
||||
pkg_pretend() {
|
||||
ghc-check-reqs check-reqs_pkg_pretend
|
||||
}
|
||||
|
||||
pkg_setup() {
|
||||
ghc-check-reqs check-reqs_pkg_setup
|
||||
|
||||
# quiet portage about prebuilt binaries
|
||||
use binary && QA_PREBUILT="*"
|
||||
|
||||
[[ ${MERGE_TYPE} == binary ]] && return
|
||||
|
||||
if use ghcbootstrap; then
|
||||
ewarn "You requested ghc bootstrapping, this is usually only used"
|
||||
ewarn "by Gentoo developers to make binary .tbz2 packages."
|
||||
|
||||
[[ -z $(type -P ghc) ]] && \
|
||||
die "Could not find a ghc to bootstrap with."
|
||||
else
|
||||
if ! yet_binary; then
|
||||
eerror "Please try emerging with USE=ghcbootstrap and report build"
|
||||
eerror "sucess or failure to the haskell team (haskell@gentoo.org)"
|
||||
die "No binary available for '${ARCH}' arch yet, USE=ghcbootstrap"
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
src_unpack() {
|
||||
# Create the ${S} dir if we're using the binary version
|
||||
use binary && mkdir "${S}"
|
||||
|
||||
# the Solaris and Darwin binaries from ghc (maeder) need to be
|
||||
# unpacked separately, so prevent them from being unpacked
|
||||
local ONLYA=${A}
|
||||
case ${CHOST} in
|
||||
*-darwin* | *-solaris*) ONLYA=${GHC_P}-src.tar.xz ;;
|
||||
esac
|
||||
unpack ${ONLYA}
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
ghc_setup_cflags
|
||||
|
||||
if ! use ghcbootstrap && [[ ${CHOST} != *-darwin* && ${CHOST} != *-solaris* ]]; then
|
||||
# Modify the wrapper script from the binary tarball to use GHC_PERSISTENT_FLAGS.
|
||||
# See bug #313635.
|
||||
sed -i -e "s|\"\$topdir\"|\"\$topdir\" ${GHC_PERSISTENT_FLAGS}|" \
|
||||
"${WORKDIR}/usr/bin/ghc-${BIN_PV}"
|
||||
|
||||
# allow hardened users use vanilla binary to bootstrap ghc
|
||||
# ghci uses mmap with rwx protection at it implements dynamic
|
||||
# linking on it's own (bug #299709)
|
||||
pax-mark -m "${WORKDIR}/usr/$(get_libdir)/${PN}-${BIN_PV}/bin/ghc"
|
||||
fi
|
||||
|
||||
if use binary; then
|
||||
if use prefix; then
|
||||
relocate_ghc "${EPREFIX}"
|
||||
fi
|
||||
|
||||
# Move unpacked files to the expected place
|
||||
mv "${WORKDIR}/usr" "${S}"
|
||||
eapply_user
|
||||
else
|
||||
if ! use ghcbootstrap; then
|
||||
case ${CHOST} in
|
||||
*-darwin* | *-solaris*)
|
||||
# UPDATE ME for ghc-7
|
||||
mkdir "${WORKDIR}"/ghc-bin-installer || die
|
||||
pushd "${WORKDIR}"/ghc-bin-installer > /dev/null || die
|
||||
use sparc-solaris && unpack ghc-6.10.4-sparc-sun-solaris2.tar.bz2
|
||||
use x86-solaris && unpack ghc-7.0.3-i386-unknown-solaris2.tar.bz2
|
||||
use x86-macos && unpack ghc-7.4.1-i386-apple-darwin.tar.bz2
|
||||
use x64-macos && unpack ghc-7.4.1-x86_64-apple-darwin.tar.bz2
|
||||
popd > /dev/null
|
||||
|
||||
pushd "${WORKDIR}"/ghc-bin-installer/ghc-[67].?*.? > /dev/null || die
|
||||
# fix the binaries so they run, on Solaris we need an
|
||||
# LD_LIBRARY_PATH which has our prefix libdirs, on
|
||||
# Darwin we need to replace the frameworks with our libs
|
||||
# from the prefix fix before installation, because some
|
||||
# of the tools are actually used during configure/make
|
||||
if [[ ${CHOST} == *-solaris* ]] ; then
|
||||
export LD_LIBRARY_PATH="${EPREFIX}/$(get_libdir):${EPREFIX}/usr/$(get_libdir):${LD_LIBRARY_PATH}"
|
||||
elif [[ ${CHOST} == *-darwin* ]] ; then
|
||||
local readline_framework=GNUreadline.framework/GNUreadline
|
||||
local gmp_framework=/opt/local/lib/libgmp.10.dylib
|
||||
local ncurses_file=/opt/local/lib/libncurses.5.dylib
|
||||
for binary in $(scanmacho -BRE MH_EXECUTE -F '%F' .) ; do
|
||||
install_name_tool -change \
|
||||
${readline_framework} \
|
||||
"${EPREFIX}"/lib/libreadline.dylib \
|
||||
${binary} || die
|
||||
install_name_tool -change \
|
||||
${gmp_framework} \
|
||||
"${EPREFIX}"/usr/lib/libgmp.dylib \
|
||||
${binary} || die
|
||||
install_name_tool -change \
|
||||
${ncurses_file} \
|
||||
"${EPREFIX}"/usr/lib/libncurses.dylib \
|
||||
${binary} || die
|
||||
done
|
||||
# we don't do frameworks!
|
||||
sed -i \
|
||||
-e 's/\(frameworks = \)\["GMP"\]/\1[]/g' \
|
||||
-e 's/\(extraLibraries = \)\["m"\]/\1["m","gmp"]/g' \
|
||||
rts/package.conf.in || die
|
||||
fi
|
||||
|
||||
# it is autoconf, but we really don't want to give it too
|
||||
# many arguments, in fact we do the make in-place anyway
|
||||
./configure --prefix="${WORKDIR}"/usr || die
|
||||
make install || die
|
||||
popd > /dev/null
|
||||
;;
|
||||
*)
|
||||
relocate_ghc "${WORKDIR}"
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
|
||||
sed -i -e "s|\"\$topdir\"|\"\$topdir\" ${GHC_PERSISTENT_FLAGS}|" \
|
||||
"${S}/ghc/ghc.wrapper"
|
||||
|
||||
cd "${S}" # otherwise eapply will break
|
||||
|
||||
eapply "${FILESDIR}"/${PN}-7.0.4-CHOST-prefix.patch
|
||||
eapply "${FILESDIR}"/${PN}-8.2.1-darwin.patch
|
||||
#needs a port?
|
||||
#eapply "${FILESDIR}"/${PN}-8.8.1-revert-CPP.patch
|
||||
eapply "${FILESDIR}"/${PN}-8.10.1-allow-cross-bootstrap.patch
|
||||
eapply "${FILESDIR}"/${PN}-8.10.3-C99-typo-ac270.patch
|
||||
|
||||
# a bunch of crosscompiler patches
|
||||
# needs newer version:
|
||||
#eapply "${FILESDIR}"/${PN}-8.2.1_rc1-hp2ps-cross.patch
|
||||
|
||||
# mingw32 target
|
||||
pushd "${S}/libraries/Win32"
|
||||
eapply "${FILESDIR}"/${PN}-8.2.1_rc1-win32-cross-2-hack.patch # bad workaround
|
||||
popd
|
||||
|
||||
bump_libs
|
||||
|
||||
eapply_user
|
||||
# as we have changed the build system
|
||||
eautoreconf
|
||||
fi
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
if ! use binary; then
|
||||
# initialize build.mk
|
||||
echo '# Gentoo changes' > mk/build.mk
|
||||
|
||||
# Put docs into the right place, ie /usr/share/doc/ghc-${GHC_PV}
|
||||
echo "docdir = ${EPREFIX}/usr/share/doc/$(cross)${P}" >> mk/build.mk
|
||||
echo "htmldir = ${EPREFIX}/usr/share/doc/$(cross)${P}" >> mk/build.mk
|
||||
|
||||
# We also need to use the GHC_FLAGS flags when building ghc itself
|
||||
echo "SRC_HC_OPTS+=${HCFLAGS} ${GHC_FLAGS}" >> mk/build.mk
|
||||
echo "SRC_CC_OPTS+=${CFLAGS}" >> mk/build.mk
|
||||
echo "SRC_LD_OPTS+=${LDFLAGS}" >> mk/build.mk
|
||||
# Speed up initial Cabal bootstrap
|
||||
echo "utils/ghc-cabal_dist_EXTRA_HC_OPTS+=$(ghc-make-args)" >> mk/build.mk
|
||||
|
||||
# We can't depend on haddock except when bootstrapping when we
|
||||
# must build docs and include them into the binary .tbz2 package
|
||||
# app-text/dblatex is not in portage, can not build PDF or PS
|
||||
echo "BUILD_SPHINX_PDF = NO" >> mk/build.mk
|
||||
echo "BUILD_SPHINX_HTML = $(usex doc YES NO)" >> mk/build.mk
|
||||
echo "BUILD_MAN = $(usex doc YES NO)" >> mk/build.mk
|
||||
|
||||
# this controls presence on 'xhtml' and 'haddock' in final install
|
||||
echo "HADDOCK_DOCS = YES" >> mk/build.mk
|
||||
|
||||
# not used outside of ghc's test
|
||||
if [[ -n ${GHC_BUILD_DPH} ]]; then
|
||||
echo "BUILD_DPH = YES" >> mk/build.mk
|
||||
else
|
||||
echo "BUILD_DPH = NO" >> mk/build.mk
|
||||
fi
|
||||
|
||||
# Any non-native build has to skip as it needs
|
||||
# target haddock binary to be runnabine.
|
||||
if ! is_native; then
|
||||
# disable docs generation as it requires running stage2
|
||||
echo "HADDOCK_DOCS=NO" >> mk/build.mk
|
||||
echo "BUILD_SPHINX_HTML=NO" >> mk/build.mk
|
||||
echo "BUILD_SPHINX_PDF=NO" >> mk/build.mk
|
||||
fi
|
||||
|
||||
if is_crosscompile; then
|
||||
# Install ghc-stage1 crosscompiler instead of
|
||||
# ghc-stage2 cross-built compiler.
|
||||
echo "Stage1Only=YES" >> mk/build.mk
|
||||
fi
|
||||
|
||||
# allows overriding build flavours for libraries:
|
||||
# v - vanilla (static libs)
|
||||
# p - profiled
|
||||
# dyn - shared libraries
|
||||
# example: GHC_LIBRARY_WAYS="v dyn"
|
||||
if [[ -n ${GHC_LIBRARY_WAYS} ]]; then
|
||||
echo "GhcLibWays=${GHC_LIBRARY_WAYS}" >> mk/build.mk
|
||||
fi
|
||||
echo "BUILD_PROF_LIBS = $(usex profile YES NO)" >> mk/build.mk
|
||||
|
||||
# Get ghc from the unpacked binary .tbz2
|
||||
# except when bootstrapping we just pick ghc up off the path
|
||||
if ! use ghcbootstrap; then
|
||||
export PATH="${WORKDIR}/usr/bin:${PATH}"
|
||||
fi
|
||||
|
||||
echo "INTEGER_LIBRARY = $(usex gmp integer-gmp integer-simple)" >> mk/build.mk
|
||||
|
||||
# don't strip anything. Very useful when stage2 SIGSEGVs on you
|
||||
echo "STRIP_CMD = :" >> mk/build.mk
|
||||
|
||||
local econf_args=()
|
||||
|
||||
# GHC embeds toolchain it was built by and uses it later.
|
||||
# Don't allow things like ccache or versioned binary slip.
|
||||
# We use stable thing across gcc upgrades.
|
||||
# User can use EXTRA_ECONF=CC=... to override this default.
|
||||
econf_args+=(
|
||||
AR=${CTARGET}-ar
|
||||
CC=${CTARGET}-gcc
|
||||
# these should be inferred by GHC but ghc defaults
|
||||
# to using bundled tools on windows.
|
||||
Windres=${CTARGET}-windres
|
||||
DllWrap=${CTARGET}-dllwrap
|
||||
# we set the linker explicitly below
|
||||
--disable-ld-override
|
||||
)
|
||||
case ${CTARGET} in
|
||||
arm*)
|
||||
# ld.bfd-2.28 does not work for ghc. Force ld.gold
|
||||
# instead. This should be removed once gentoo gets
|
||||
# a fix for R_ARM_COPY bug: https://sourceware.org/PR16177
|
||||
econf_args+=(LD=${CTARGET}-ld.gold)
|
||||
;;
|
||||
sparc*)
|
||||
# ld.gold-2.28 does not work for ghc. Force ld.bfd
|
||||
# instead. This should be removed once gentoo gets
|
||||
# a fix for missing --no-relax support bug:
|
||||
# https://sourceware.org/ml/binutils/2017-07/msg00183.html
|
||||
econf_args+=(LD=${CTARGET}-ld.bfd)
|
||||
;;
|
||||
*)
|
||||
econf_args+=(LD=${CTARGET}-ld)
|
||||
esac
|
||||
|
||||
if [[ ${CBUILD} != ${CHOST} ]]; then
|
||||
# GHC bug: ghc claims not to support cross-building.
|
||||
# It does, but does not distinct --host= value
|
||||
# for stage1 and stage2 compiler.
|
||||
econf_args+=(--host=${CBUILD})
|
||||
fi
|
||||
|
||||
if use ghcmakebinary; then
|
||||
# When building booting libary we are trying to
|
||||
# bundle or restrict most of external depends
|
||||
# with unstable ABI:
|
||||
# - embed libffi (default GHC behaviour)
|
||||
# - disable ncurses support for ghci (via haskeline)
|
||||
# https://bugs.gentoo.org/557478
|
||||
# - disable ncurses support for ghc-pkg
|
||||
echo "libraries/haskeline_CONFIGURE_OPTS += --flag=-terminfo" >> mk/build.mk
|
||||
echo "utils/ghc-pkg_HC_OPTS += -DBOOTSTRAPPING" >> mk/build.mk
|
||||
elif is_native; then
|
||||
# using ${GTARGET}'s libffi is not supported yet:
|
||||
# GHC embeds full path for ffi includes without /usr/${CTARGET} account.
|
||||
econf_args+=(--with-system-libffi)
|
||||
econf_args+=(--with-ffi-includes=$($(tc-getPKG_CONFIG) libffi --cflags-only-I | sed -e 's@^-I@@'))
|
||||
fi
|
||||
|
||||
einfo "Final mk/build.mk:"
|
||||
cat mk/build.mk || die
|
||||
|
||||
econf ${econf_args[@]} \
|
||||
--enable-bootstrap-with-devel-snapshot \
|
||||
$(use_enable elfutils dwarf-unwind) \
|
||||
$(use_enable numa)
|
||||
|
||||
if [[ ${PV} == *9999* ]]; then
|
||||
GHC_PV="$(grep 'S\[\"PACKAGE_VERSION\"\]' config.status | sed -e 's@^.*=\"\(.*\)\"@\1@')"
|
||||
GHC_P=${PN}-${GHC_PV}
|
||||
fi
|
||||
fi # ! use binary
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
if ! use binary; then
|
||||
# Stage1Only crosscompiler does not build stage2
|
||||
if ! is_crosscompile; then
|
||||
# 1. build/pax-mark compiler binary first
|
||||
emake ghc/stage2/build/tmp/ghc-stage2
|
||||
# 2. pax-mark (bug #516430)
|
||||
pax-mark -m ghc/stage2/build/tmp/ghc-stage2
|
||||
# 2. build/pax-mark haddock using ghc-stage2
|
||||
if is_native; then
|
||||
# non-native build does not build haddock
|
||||
# due to HADDOCK_DOCS=NO, but it could.
|
||||
emake utils/haddock/dist/build/tmp/haddock
|
||||
pax-mark -m utils/haddock/dist/build/tmp/haddock
|
||||
fi
|
||||
fi
|
||||
# 3. and then all the rest
|
||||
emake all
|
||||
fi # ! use binary
|
||||
}
|
||||
|
||||
src_test() {
|
||||
# TODO: deal with:
|
||||
# - sandbox (pollutes environment)
|
||||
# - extra packages (to extend testsuite coverage)
|
||||
# bits are taken from 'validate'
|
||||
local make_test_target='test' # can be fulltest
|
||||
# not 'emake' as testsuite uses '$MAKE' without jobserver available
|
||||
make $make_test_target stage=2 THREADS=$(makeopts_jobs)
|
||||
}
|
||||
|
||||
src_install() {
|
||||
if use binary; then
|
||||
use prefix && mkdir -p "${ED}"
|
||||
mv "${S}/usr" "${ED}"
|
||||
else
|
||||
[[ -f VERSION ]] || emake VERSION
|
||||
|
||||
# -j1 due to a rare race in install script:
|
||||
# make --no-print-directory -f ghc.mk phase=final install
|
||||
# /usr/lib/portage/python3.4/ebuild-helpers/xattr/install -c -m 755 \
|
||||
# -d "/tmp/portage-tmpdir/portage/cross-armv7a-unknown-linux-gnueabi/ghc-9999/image/usr/lib64/armv7a-unknown-linux-gnueabi-ghc-8.3.20170404/include"
|
||||
# /usr/lib/portage/python3.4/ebuild-helpers/xattr/install -c -m 644 utils/hsc2hs/template-hsc.h \
|
||||
# "/tmp/portage-tmpdir/portage/cross-armv7a-unknown-linux-gnueabi/ghc-9999/image/usr/lib64/armv7a-unknown-linux-gnueabi-ghc-8.3.20170404"
|
||||
# /usr/bin/install: cannot create regular file \
|
||||
# '/tmp/portage-tmpdir/portage/cross-armv7a-unknown-linux-gnueabi/ghc-9999/image/usr/lib64/armv7a-unknown-linux-gnueabi-ghc-8.3.20170404': No such file or directory
|
||||
emake -j1 install DESTDIR="${D}"
|
||||
|
||||
# Skip for cross-targets as they all share target location:
|
||||
# /usr/share/doc/ghc-9999/
|
||||
if ! is_crosscompile; then
|
||||
dodoc "distrib/README" "LICENSE" "VERSION"
|
||||
fi
|
||||
|
||||
# rename ghc-shipped files to avoid collision
|
||||
# of external packages. Motivating example:
|
||||
# user had installed:
|
||||
# dev-lang/ghc-7.8.4-r0 (with transformers-0.3.0.0)
|
||||
# dev-haskell/transformers-0.4.2.0
|
||||
# then user tried to update to
|
||||
# dev-lang/ghc-7.8.4-r1 (with transformers-0.4.2.0)
|
||||
# this will lead to single .conf file collision.
|
||||
local shipped_conf renamed_conf
|
||||
local package_confdir="${ED}/usr/$(get_libdir)/$(cross)${GHC_P}/package.conf.d"
|
||||
for shipped_conf in "${package_confdir}"/*.conf; do
|
||||
# rename 'pkg-ver-id.conf' to 'pkg-ver-id-gentoo-${PF}.conf'
|
||||
renamed_conf=${shipped_conf%.conf}-gentoo-${PF}.conf
|
||||
mv "${shipped_conf}" "${renamed_conf}" || die
|
||||
done
|
||||
|
||||
# remove link, but leave 'haddock-${GHC_P}'
|
||||
rm -f "${ED}"/usr/bin/$(cross)haddock
|
||||
|
||||
if ! is_crosscompile; then
|
||||
newbashcomp "${FILESDIR}"/ghc-bash-completion ghc-pkg
|
||||
newbashcomp utils/completion/ghc.bash ghc
|
||||
fi
|
||||
fi
|
||||
|
||||
# path to the package.cache
|
||||
local package_confdir="${ED}/usr/$(get_libdir)/$(cross)${GHC_P}/package.conf.d"
|
||||
PKGCACHE="${package_confdir}"/package.cache
|
||||
# copy the package.conf.d, including timestamp, save it so we can help
|
||||
# users that have a broken package.conf.d
|
||||
cp -pR "${package_confdir}"{,.initial} || die "failed to backup intial package.conf.d"
|
||||
|
||||
# copy the package.conf, including timestamp, save it so we later can put it
|
||||
# back before uninstalling, or when upgrading.
|
||||
cp -p "${PKGCACHE}"{,.shipped} \
|
||||
|| die "failed to copy package.conf.d/package.cache"
|
||||
|
||||
if is_crosscompile; then
|
||||
# When we build a cross-compiler the layout is the following:
|
||||
# usr/lib/${CTARGET}-ghc-${VER}/ contains target libraries
|
||||
# but
|
||||
# usr/lib/${CTARGET}-ghc-${VER}/bin/ directory
|
||||
# containst host binaries (modulo bugs).
|
||||
|
||||
# Portage's stripping mechanism does not skip stripping
|
||||
# foreign binaries. This frequently causes binaries to be
|
||||
# broken.
|
||||
#
|
||||
# Thus below we disable stripping of target libraries and allow
|
||||
# stripping hosts executables.
|
||||
dostrip -x "/usr/$(get_libdir)/$(cross)${GHC_P}"
|
||||
dostrip "/usr/$(get_libdir)/$(cross)${GHC_P}/bin"
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
# have we got an earlier version of ghc installed?
|
||||
if has_version "<${CATEGORY}/${PF}"; then
|
||||
haskell_updater_warn="1"
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
ghc-reregister
|
||||
|
||||
# path to the package.cache
|
||||
PKGCACHE="${EROOT}/usr/$(get_libdir)/$(cross)${GHC_P}/package.conf.d/package.cache"
|
||||
|
||||
# give the cache a new timestamp, it must be as recent as
|
||||
# the package.conf.d directory.
|
||||
touch "${PKGCACHE}"
|
||||
|
||||
if [[ "${haskell_updater_warn}" == "1" ]]; then
|
||||
ewarn
|
||||
ewarn "\e[1;31m************************************************************************\e[0m"
|
||||
ewarn
|
||||
ewarn "You have just upgraded from an older version of GHC."
|
||||
ewarn "You may have to run"
|
||||
ewarn " 'haskell-updater'"
|
||||
ewarn "to rebuild all ghc-based Haskell libraries."
|
||||
ewarn
|
||||
ewarn "\e[1;31m************************************************************************\e[0m"
|
||||
ewarn
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_prerm() {
|
||||
PKGCACHE="${EROOT}/usr/$(get_libdir)/$(cross)${GHC_P}/package.conf.d/package.cache"
|
||||
rm -rf "${PKGCACHE}"
|
||||
|
||||
cp -p "${PKGCACHE}"{.shipped,}
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
ghc-package_pkg_postrm
|
||||
}
|
Binary file not shown.
Binary file not shown.
@ -0,0 +1,87 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
inherit eutils multilib
|
||||
|
||||
# test phase only works if ecls already installed #516876
|
||||
RESTRICT="test"
|
||||
|
||||
MY_P=ecl-${PV}
|
||||
|
||||
DESCRIPTION="ECL is an embeddable Common Lisp implementation"
|
||||
HOMEPAGE="https://common-lisp.net/project/ecl/"
|
||||
SRC_URI="https://common-lisp.net/project/ecl/static/files/release/${MY_P}.tgz"
|
||||
|
||||
LICENSE="BSD-2 LGPL-2.1+"
|
||||
SLOT="0/${PV}"
|
||||
KEYWORDS="~amd64 ~ppc ~sparc ~x86 ~amd64-linux"
|
||||
IUSE="cxx debug emacs gengc precisegc cpu_flags_x86_sse +threads +unicode X"
|
||||
|
||||
CDEPEND="dev-libs/gmp:0
|
||||
dev-libs/libffi
|
||||
dev-libs/libatomic_ops
|
||||
>=dev-libs/boehm-gc-7.1[threads?]
|
||||
>=dev-lisp/asdf-2.33-r3:="
|
||||
DEPEND="${CDEPEND}
|
||||
app-text/texi2html
|
||||
emacs? ( >=app-editors/emacs-23.1:* >=app-eselect/eselect-emacs-1.12 )"
|
||||
RDEPEND="${CDEPEND}"
|
||||
|
||||
S="${WORKDIR}"/${MY_P}
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${PN}-16.1.3-headers-gentoo.patch"
|
||||
"${FILESDIR}/${PN}-16.1.3-build.patch"
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
cp "${EPREFIX}"/usr/share/common-lisp/source/asdf/build/asdf.lisp contrib/asdf/ || die
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
econf \
|
||||
--with-system-gmp \
|
||||
--enable-boehm=system \
|
||||
--enable-longdouble=yes \
|
||||
--with-dffi \
|
||||
--enable-libatomic=system \
|
||||
$(use_with cxx) \
|
||||
$(use_enable gengc) \
|
||||
$(use_enable precisegc) \
|
||||
$(use_with debug debug-cflags) \
|
||||
$(use_with cpu_flags_x86_sse sse) \
|
||||
$(use_enable threads) \
|
||||
$(use_with threads __thread) \
|
||||
$(use_enable unicode) \
|
||||
$(use_with unicode unicode-names) \
|
||||
$(use_with X x)
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
if use emacs; then
|
||||
local ETAGS=$(eselect --brief etags list | sed -ne '/emacs/{p;q}')
|
||||
[[ -n ${ETAGS} ]] || die "No etags implementation found"
|
||||
pushd build > /dev/null || die
|
||||
emake ETAGS=${ETAGS} TAGS
|
||||
popd > /dev/null
|
||||
else
|
||||
touch build/TAGS
|
||||
fi
|
||||
|
||||
#parallel make fails
|
||||
emake -j1
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake DESTDIR="${D}" install
|
||||
|
||||
dodoc README.md CHANGELOG
|
||||
dodoc "${FILESDIR}"/README.Gentoo
|
||||
pushd build/doc
|
||||
newman ecl.man ecl.1
|
||||
newman ecl-config.man ecl-config.1
|
||||
popd
|
||||
}
|
@ -1,5 +1,5 @@
|
||||
DIST Algorithm-C3-0.10.tar.gz 12523 BLAKE2B 07045109cbf1b8da28109f220bc2c3ffe757de93c1f503c458794131c74fde649882c26472bc5e0d4ec585194752c9a15aa2b7ac3f907c47dba40ee5c7493ccc SHA512 2ace81679e8ff2f3f3fbe8028741aef0833b1415a7cde0d1b20c90557889347685d1135029cd849324b6d40c435a80b228549bf669bbf43f9a1b2ed7075b605e
|
||||
DIST Algorithm-C3-0.11.tar.gz 19226 BLAKE2B 673021c23a2bc98c645aba8c3b644226df70188333c894df2053b46403cf4d938c047a447f5e11a1001af2db799b99ed278eb6d16212d3a783302a53f75eb0c0 SHA512 ec2ae17090a826e013b7526e7f236e3cc9bc59488421aecb03ea876b6ed2e4b2ea4eb8e07aad57b5b645ca4a077f7064b98e790e9906496d26c1bcb36128acbe
|
||||
EBUILD Algorithm-C3-0.100.0.ebuild 515 BLAKE2B e129d138988c1e11cb4315651d748b783a7553c31c38325df3c0a68cc8ffa538c0bd8d17fb5d71222fbf8eb4ad2e2b5199e158a2ed6b9a8e1e6db9d3645d720a SHA512 b6bab6fea1a6fdd24117ed339328419db22047ea88fa7042fed2e1374ebba0358e15f39f63dbbcc56ba6b027c02ea372165f45bd74b2134bcdf3c1d34a9b27de
|
||||
EBUILD Algorithm-C3-0.110.0.ebuild 521 BLAKE2B 882ace57d5561de4913f8e6b9eed0ea369811ef9eb9be0de800576fbc510da65661430bd051e8c3d6048931773d47734b9a21f784025ea9d7ff55a0aefa71d29 SHA512 548128a0572cf907e143a8d2d1e9205cd7e8e59845e05a5347bfc0cd6f161b1eb1ea77bb27833a649e4323a75a062a2d1741c67bb00ff08e1d11839c3312b484
|
||||
EBUILD Algorithm-C3-0.110.0.ebuild 517 BLAKE2B b9718b5598655fae2bf588077fe4ed97bc002fdc50850122e8eaef893eb7d02e547678633e0640351ff09bd78ccdb99d47c87cb197923a5a93bea47481fc59d4 SHA512 5aa6a57466f49f67f806c6ab867766b6fb24332edd19d1dc0e46772bdae8bb2b910a37b6605f2ffd581909daf7761ff45844d7f74f546ce7f468510fd71e81be
|
||||
MISC metadata.xml 396 BLAKE2B 14e1cc3047acf9a2ac6091252baddb1a72c6e479fde7302f47f053cdff2a329661d72fad4a7b34140763621ca6f8bda14ae58047046a279d01029b8e8aa96643 SHA512 70c50c8dcbee9aa3cf36bc4fbbc9623084ad15a49b1ff5578651b084e1c2f9c3f889cabede13a80e35435e29283cfacbf8d4d3e0c7f0890ffca4d53aa1c8efc3
|
||||
|
@ -0,0 +1,16 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
DIST_AUTHOR=RJBS
|
||||
DIST_VERSION=1.201
|
||||
DIST_EXAMPLES="bin/*"
|
||||
inherit perl-module
|
||||
|
||||
DESCRIPTION="Compute intelligent differences between two files / lists"
|
||||
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||
|
||||
BDEPEND="virtual/perl-ExtUtils-MakeMaker"
|
@ -1,3 +1,5 @@
|
||||
DIST Algorithm-Diff-1.1903.tar.gz 34174 BLAKE2B 85d64400c722d9547efb0c63d717f9c70cdd9f3b8282ca67d1b513507adeba0af68b2e45fe46c53ebaea85c3cd3f4e6d894c68d68587d88b01ba3eb362bf1458 SHA512 61632be4c19a03ccacaa218ab7cb8bdbc53a4a6030b8173a59c7611056375536788392c1da00ab88f3df9884fc8a67825efc83b70e2e564664d5187021d6b106
|
||||
DIST Algorithm-Diff-1.201.tar.gz 30047 BLAKE2B 7502eec51e0fd40883b176947853e2f68fdc524545413eec2147ac5de9c1e062cba44b2939c2221b81e63ebb1ed98fc1912447941f710d4676f7e33ab6d1064c SHA512 b22b55f4e45748da0e8aca556dc2155ef2dbcfe42ac5cbe4aa59e4cc13c95a141e6324a9ab0acd7fbc3d97e761e0778176df0f7e726af837a7b7d075106ad8d0
|
||||
EBUILD Algorithm-Diff-1.190.300-r1.ebuild 841 BLAKE2B f177e3327fa1015e9b8a51e3f7083615adad2b2fe9bab2e711350891d8ad65b15382efa70627438e1e0b0f609613babbe91177df36f24b57d62b5920bb114870 SHA512 5268b0fc0b709218cefdeb54af0a4c41f274916162250eef2566e929aa7a16b566daf144278a035c4d63efbb288299cff4ca2a57b301bc434894563d5af7a0d6
|
||||
EBUILD Algorithm-Diff-1.201.0.ebuild 519 BLAKE2B 53b2d229821c2e66f22d0262e4e512d1fe7739761618338c61998826e65951762a1da1e34af31f934d0922e334a905f1e861464727c7242621d7914e45b51201 SHA512 f2df156def2aaa286e275299b31a017f3c22d138ca3b61bf906530454f74a3301c69dc8af3ed53da36cb4d55945171d0e341767b428d793d9737547937924e4a
|
||||
MISC metadata.xml 589 BLAKE2B 151bc973e2175c575b9f4b3114020bda4272db296f8ef300d2af028927986fa6c383d853e37aa21adf80968ee72cfde6465ffacad81f8c68625147a8f2227cc6 SHA512 4c44635e9c899355e9e47f8d7c3a491b0fa403bc49e415e0d27fd5cca96fed72586cfe77fbf9ec516316d93bde1142b08d55ed1894d623dc9f0ff3ea677abd48
|
||||
|
@ -1,4 +1,4 @@
|
||||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
@ -1,6 +1,6 @@
|
||||
DIST Lab-Measurement-3.721.tar.gz 615005 BLAKE2B 90982b7d5cbb1b62c3bd2444645649e39704d44e519e6484dabb3702fbdfccf82ea5af1c6ba31b5f75eca4a779eaac4d83cb6fe92232ae4bdde4618d7e5477a4 SHA512 4d5e493339c7d50f96dae999d1f2c2fe59e9e970862f4ac8747a4e9e89aad72e1c72801bffddcf9f1e7a434f9eb6b23a21f563cd1612fdb2b986af9ea118e731
|
||||
DIST Lab-Measurement-3.740.tar.gz 630593 BLAKE2B d3b7bb07e9a99f993a900fc8bcf391c69999f052535dc505259dd212374a3a2fc681d187a0c3119be915dfaf698901defc9686b38f1b0c11772182bf5f64bd2e SHA512 b036821a3af73d2278dbfd0e08efb5f5eb1f07a71203ba0a85208bdbab7142e0182f9bae6045233bbbb3d992d6598cc5c3401ef7c2e694ddbd3f3a6884271b70
|
||||
EBUILD Lab-Measurement-3.721.ebuild 3685 BLAKE2B 1661c31f557556ce20e6baf0f65565387578b7aec884b0aa26ab022885ee1b3941b2d10d2917d279da775b1c8d18c712b8b803d9fc8b5575e7f16b37659e97e4 SHA512 9c0dcbe2e93c2b6928ec650785e0ac06d4ca467b68fafb7e0be3285efe7d2373d15b9a0e9cbe5f0553f7432c36c86d1e4c1ad4c38a455350e4d2deaf4bbddf70
|
||||
DIST Lab-Measurement-3.741.tar.gz 621051 BLAKE2B bcde314015e410aec93e4bace1990621f58bc81dc3f010f27a37295b70432f3f65b0d46382e18bb57b18b00c3001a1757647a9f35cfe8a214036dd57bc27a64f SHA512 f1b43177c720a10567c99edfba78c0c35659f1b82b2eb03f66e383767a9ef5b415c9014b50013ba5caddf67bb4bd87dadea4295923a161f53a85d23ae8d8c6a0
|
||||
EBUILD Lab-Measurement-3.740.ebuild 3685 BLAKE2B 417593af0c162353e3c992809aef259995b523e54d086984442f2950cc43b66d6df503fb0281e6ec9436cc43ac585239f41d4418bd266d3cdeb1a459dcaf692a SHA512 edd6fca1f295a975c14e825a9bf011895bf6a66faca6b50804d235417cdef1ff3a7fd7d6d79130a1e2555209f03b6c74208bd53b8c56abcea36a6ec591c6258e
|
||||
EBUILD Lab-Measurement-3.741.ebuild 3685 BLAKE2B 417593af0c162353e3c992809aef259995b523e54d086984442f2950cc43b66d6df503fb0281e6ec9436cc43ac585239f41d4418bd266d3cdeb1a459dcaf692a SHA512 edd6fca1f295a975c14e825a9bf011895bf6a66faca6b50804d235417cdef1ff3a7fd7d6d79130a1e2555209f03b6c74208bd53b8c56abcea36a6ec591c6258e
|
||||
EBUILD Lab-Measurement-9999.ebuild 3685 BLAKE2B 1661c31f557556ce20e6baf0f65565387578b7aec884b0aa26ab022885ee1b3941b2d10d2917d279da775b1c8d18c712b8b803d9fc8b5575e7f16b37659e97e4 SHA512 9c0dcbe2e93c2b6928ec650785e0ac06d4ca467b68fafb7e0be3285efe7d2373d15b9a0e9cbe5f0553f7432c36c86d1e4c1ad4c38a455350e4d2deaf4bbddf70
|
||||
MISC metadata.xml 3205 BLAKE2B d8be34e0b381d155cc4706306a50222a523e80a742616351e984cbeb8fbe9ea15fd626ef23163da0ab2f681998756e97e7bba412432c908008b1f34f1b201242 SHA512 cefb77a0d38bc965c8e4a5c9346eb0218a7b9cccc66535b460219fd52359df0db750e96eb88337d425caf5114b7cfcba9f8d3666c7d9e3c052bc2ae1a9e2ceae
|
||||
|
Binary file not shown.
@ -1,3 +1,3 @@
|
||||
DIST Test-File-ShareDir-1.001002.tar.gz 65466 BLAKE2B d2bd8634b5cd4eb156814e2e456c0ed5749b6ab55feb3fcf674124e71450f05e548657f0bb189d0445912a6171c14bb3ad44a7b338f72dc6609e5030d27596e0 SHA512 858fd7483a63fe4742e48663d64088b811658c9d24dfc730ae1fb5786818949133de98f1cc3a705f67ad97fed1144420a96c22e2cfa663c79953c33f1633f00e
|
||||
EBUILD Test-File-ShareDir-1.1.2.ebuild 887 BLAKE2B bfa70d4ae172aece8dadc8b1caab3e1f50de281af9315904b9d90571b94575f265dd2a303f2be6e0981ecbcc8ec01fe1e9e1f55163e098089bebed3eca2cb784 SHA512 de0ec6086d1d2a0faf1fb4f805abe6edc6216dc3ef57dec9ba2a44ebd529967646678da978dbc668dbea6d53c8780da442cf77cea08fd16006631274af686751
|
||||
MISC metadata.xml 1124 BLAKE2B f1e8e53b564644d94761591bc70fc0466ae69aa71bef249151d0ad29c5ea981e9137b7fc12f9ff5bfe03174fbb4fd3ee4aeff183abbf3af7007b02375314b54d SHA512 05e6ebfbffab43419b645a94566e63ee68792462e5031312f8cfebd7b3d319b5f2d21c96d1a97708641081516cecfbb962cc6b532230265b24cf2c69e32d9f31
|
||||
MISC metadata.xml 1042 BLAKE2B 3c686a09b96500da4732470866b67a0fb54d2153712de4e0f43414d53f6597467ba5a3e90be6b1f880c1cc0a85010b865041f8fba6e581d44d5f49b572c25d18 SHA512 5dd8c825fb0516d0b4d98d0f365fad8fb758ceca563eead1445e4405d38bcfa26474c9f1187f82c73787ffd31686241b70a9a71ddf1bfa196e70c27e7f78103a
|
||||
|
Binary file not shown.
@ -1,11 +1,3 @@
|
||||
DIST aiohttp-3.6.2.tar.gz 1076923 BLAKE2B 14327a0bc5b5fffdf436a4c3525e4c25d80100aa464ed652316f7724c2bea6de4ace6c27e8a2a8cf9d895673ed63ed52e8c958ad611636e1e524a4e40efa4735 SHA512 49bd3089158c05ff6312420190ccd7fed95efb4a18b8aff7497d5507c71c692080d6949801edabdcd95379ca8e6614398408118d72ff1e782399e059e2cfc1a8
|
||||
DIST aiohttp-3.7.1.tar.gz 1111777 BLAKE2B 03d16e8c9d64ec407cf7b6dbbf5547a88f528ab23e9e256559c11fc2cb6f568101f79dad89b0e5698fd02a3918051e4bc3c349e3ea4358ecb5de1543fea91708 SHA512 accdd588fdd7ba1792cf5e8fb67c6d5dd3e1c5382d9c9ece14e449d6f4f1c116975809d2dad786e0d472b3bb54e3b8c59722be871401a82cef5eff9c12f3c3f8
|
||||
DIST aiohttp-3.7.2.tar.gz 1111049 BLAKE2B faffc582f2c72ff892862b5b782da75b381e59b21b284b1120e4edb16f22b760f8cabe56261061e0049a5dfd041456076e294e942a02309e9b3d6b414facb0cb SHA512 2dd4f0264f1fb0801be366c269b73dd80b542e8e5bfe18a01fbdfadd0210022ccd6e3975be1be416551ccce82f42881e18735d5c6fc68a42b7452ab18e157dc5
|
||||
DIST aiohttp-3.7.3.tar.gz 1113127 BLAKE2B 47d95565db1184c6b55a1e7d7a6df8cda872e4fe621f653e3143608f51dde2c7d30d00835da357dd7ae33f4858ad5778074dfde5261331a3539a5d6776ea1a25 SHA512 d1dbbe3cbdeb1a460f5030a08a251a7bb7ae7ec038ca93ba5187b2da1fe21b80ed6513db647ef382d2d92a3d527a34dffbd37f51aa1e8b65bb36d517304b1812
|
||||
DIST aiohttp-3.7.4.tar.gz 1114533 BLAKE2B dcae3e66e13df8264d731a3ca65b4718feca8d0e6e1baeb6608dcb9bfb4bd4baaed6bd34297ed5ece78d01189bf9a0b9860845cae4e2b93cc2ba463cc35cfb77 SHA512 66fcc837b388020dc998cbaa2db31e48ecec75bcfaa8af9108e2ea265588dafa5684ca96a8fe3ad6759b22e09a4ae6d4efd8653fb76126eccdc826c15cbbe2e6
|
||||
EBUILD aiohttp-3.6.2-r1.ebuild 6982 BLAKE2B 23c854d1ad36ff5c1ca0f35f9a80fea90dc1c16a55e6c36f9951860844deb4b2989648e83c237dd5b6d29772dfcbc6b76271f147af0c125c0ade485e895a2efc SHA512 fa2bb8e901884ea3fe7d3e6e4d55d128249da47684dbf7ec9bc7ce25da7f1e930da11208177ffd8f95880eee7c1e8581cf21cb7dd8f261bcbbb024e55eebd7a9
|
||||
EBUILD aiohttp-3.7.1-r1.ebuild 2602 BLAKE2B f89623a32fef92a5a2650a1cb853c244ec4cab7ec731c37cd1b8ba78af51145aaf8a9fae12ab3e8b705cc29cfb73a1ca955630f7d49e880142ef0c2c70a99a2d SHA512 6b16e780de0f64c09f7223500002f14ecc36385b7e9727badc5794fabff5f6ce1230ab6e19166ded3f04dee24e9ea033395bb112bc8757907662bb48a248b248
|
||||
EBUILD aiohttp-3.7.2-r1.ebuild 2625 BLAKE2B ef1c4eacf7a6f6cbcd117b4d0c446cfaf7689965e23e8cf631f83db04f4826ec338199afaded653d2c8862949a4b981e87aa60a7a391b75d4d3e82c3e8a6930f SHA512 f494e358d930535d80680998ac92c82a8927878376dc1902bc2da6376079ca2e8023fede7def06c1a885100ae7db2da1c41d175e5e0efcf7b3d0830672286130
|
||||
EBUILD aiohttp-3.7.3.ebuild 2644 BLAKE2B c84d4c5639b808be92d6270e8aca80693506a43a6694f4018549f5661562fb4dd602c695a0c8a20de667ffbfdeecbcb90de44033689ecdc34b7e2987ddaec7ba SHA512 8db4a4d6425e0984bfaaec2e164858d9b2042369dcf551cfa3ed71a94ba8a29be358d8d9957fade12e01feaf70c697c38d0e96b9786c92e4faffb793e500e36f
|
||||
EBUILD aiohttp-3.7.4.ebuild 2645 BLAKE2B 0d39d5ca73c20b6c41b2135e902321001384a461a0ad7c6eb9d6437006f69eb506dc771543ab8edd3fb42b0ab46ab736521e3021eb8f408621251c53406c37bd SHA512 69db4276c7c89da9592a716b71c8a37251972f7a93dbd6981c70212a740aa899b3fb95c262364807578e5dbc0cead036daadffb2160f0e6ef59a9df4aef9e7ee
|
||||
EBUILD aiohttp-3.7.4.ebuild 2643 BLAKE2B 412f7cfb6de73eddc715ade9a69cdf892c7c2e9b33bf7eff1d2f6564d9cdb9aea55ca614d5e46b64fcb98ca81f0682eabc6a5fb2a53277a987212a84b77feaf3 SHA512 8aa58268f293fc2750743f777675edece1cd93dc547b23e73338aa1ba347f833612a1b5b6ee8f37ab902af185abb6f47e7fb99e6ecf91bee420c178169709b29
|
||||
MISC metadata.xml 489 BLAKE2B beb80da34848dfe7b81ed65d75923480644ecf42e2c5ce04a7f66f3e729651fdc6035054482aff966ec9f03cfbb812d3be0afd783af69e37f1002182e4885473 SHA512 d8c9e2edb8a57a3b6b02bb5314aef77dc266af6e80fd0300eb0652c59790232017d0062f5b7361b059c382d1c904f0f46cd0e672d1963e9595f3d4dc7514f182
|
||||
|
@ -1,156 +0,0 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
PYTHON_COMPAT=( python3_{7..9} )
|
||||
|
||||
inherit distutils-r1
|
||||
|
||||
DESCRIPTION="http client/server for asyncio"
|
||||
HOMEPAGE="https://pypi.org/project/aiohttp/"
|
||||
SRC_URI="mirror://pypi/${P:0:1}/${PN}/${P}.tar.gz"
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ppc ppc64 ~riscv sparc x86"
|
||||
IUSE="doc test"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
COMMON_DEPEND="
|
||||
>=dev-python/async_timeout-3.0.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/attrs-17.3.0[${PYTHON_USEDEP}]
|
||||
dev-python/chardet[${PYTHON_USEDEP}]
|
||||
>=dev-python/multidict-4.5.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/yarl-1.0[${PYTHON_USEDEP}]
|
||||
$(python_gen_cond_dep '
|
||||
dev-python/idna-ssl[${PYTHON_USEDEP}]
|
||||
' python3_6)
|
||||
dev-python/typing-extensions[${PYTHON_USEDEP}]
|
||||
"
|
||||
DEPEND="
|
||||
dev-python/cython[${PYTHON_USEDEP}]
|
||||
test? (
|
||||
${COMMON_DEPEND}
|
||||
!!dev-python/pytest-aiohttp
|
||||
dev-python/async_generator[${PYTHON_USEDEP}]
|
||||
dev-python/brotlipy[${PYTHON_USEDEP}]
|
||||
dev-python/freezegun[${PYTHON_USEDEP}]
|
||||
www-servers/gunicorn[${PYTHON_USEDEP}]
|
||||
>=dev-python/pytest-3.4.0[${PYTHON_USEDEP}]
|
||||
dev-python/pytest-mock[${PYTHON_USEDEP}]
|
||||
dev-python/pytest-timeout[${PYTHON_USEDEP}]
|
||||
dev-python/trustme[${PYTHON_USEDEP}]
|
||||
)
|
||||
"
|
||||
RDEPEND="${COMMON_DEPEND}"
|
||||
|
||||
DOCS=( CHANGES.rst CONTRIBUTORS.txt README.rst )
|
||||
|
||||
distutils_enable_sphinx docs \
|
||||
'>=dev-python/alabaster-0.6.2' \
|
||||
'dev-python/sphinxcontrib-asyncio' \
|
||||
'dev-python/sphinxcontrib-blockdiag' \
|
||||
'dev-python/sphinxcontrib-newsfeed' \
|
||||
'dev-python/sphinxcontrib-spelling' \
|
||||
'dev-python/sphinx' \
|
||||
'dev-python/sphinx-aiohttp-theme'
|
||||
|
||||
distutils_enable_tests pytest || die "Tests fail with ${EPYTHON}"
|
||||
|
||||
python_prepare_all() {
|
||||
sed -e 's|^async def test_aiohttp_request_coroutine(|@pytest.mark.xfail\n\0|' \
|
||||
-e 's|^async def test_handle_keepalive_on_closed_connection(|@pytest.mark.xfail\n\0|' \
|
||||
-e 's|^async def test_server_close_keepalive_connection(|@pytest.mark.xfail\n\0|' \
|
||||
-i tests/test_client_functional.py || die
|
||||
|
||||
sed -e 's|^async def test_request_tracing_exception(|@pytest.mark.xfail\n\0|' \
|
||||
-i tests/test_client_session.py || die
|
||||
|
||||
sed -e 's|^async def test_cleanup2(|@pytest.mark.xfail\n\0|' \
|
||||
-e 's|^async def test_cleanup3(|@pytest.mark.xfail\n\0|' \
|
||||
-e 's|^async def test_close(|@pytest.mark.xfail\n\0|' \
|
||||
-e 's|^async def test_close_abort_closed_transports(|@pytest.mark.xfail\n\0|' \
|
||||
-e 's|^async def test_close_cancels_cleanup_closed_handle(|@pytest.mark.xfail\n\0|' \
|
||||
-e 's|^async def test_close_cancels_cleanup_handle(|@pytest.mark.xfail\n\0|' \
|
||||
-e 's|^async def test_close_during_connect(|@pytest.mark.xfail\n\0|' \
|
||||
-e 's|^async def test_close_twice(|@pytest.mark.xfail\n\0|' \
|
||||
-e 's|^async def test_close_with_acquired_connection(|@pytest.mark.xfail\n\0|' \
|
||||
-e 's|^async def test_connect_queued_operation_tracing(|@pytest.mark.xfail\n\0|' \
|
||||
-e 's|^async def test_connect_reuseconn_tracing(|@pytest.mark.xfail\n\0|' \
|
||||
-e 's|^async def test_connect_with_limit(|@pytest.mark.xfail\n\0|' \
|
||||
-e 's|^async def test_connect_with_limit_and_limit_per_host(|@pytest.mark.xfail\n\0|' \
|
||||
-e 's|^async def test_connect_with_limit_concurrent(|@pytest.mark.xfail\n\0|' \
|
||||
-e 's|^async def test_connect_with_no_limit_and_limit_per_host(|@pytest.mark.xfail\n\0|' \
|
||||
-e 's|^async def test_connect_with_no_limits(|@pytest.mark.xfail\n\0|' \
|
||||
-e 's|^async def test_get(|@pytest.mark.xfail\n\0|' \
|
||||
-e 's|^async def test_get_expired(|@pytest.mark.xfail\n\0|' \
|
||||
-e 's|^async def test_get_expired_ssl(|@pytest.mark.xfail\n\0|' \
|
||||
-e 's|^async def test_limit_per_host_property(|@pytest.mark.xfail\n\0|' \
|
||||
-e 's|^async def test_limit_per_host_property_default(|@pytest.mark.xfail\n\0|' \
|
||||
-e 's|^async def test_limit_property(|@pytest.mark.xfail\n\0|' \
|
||||
-e 's|^async def test_limit_property_default(|@pytest.mark.xfail\n\0|' \
|
||||
-e 's|^async def test_release(|@pytest.mark.xfail\n\0|' \
|
||||
-e 's|^async def test_release_acquired(|@pytest.mark.xfail\n\0|' \
|
||||
-e 's|^async def test_release_acquired_closed(|@pytest.mark.xfail\n\0|' \
|
||||
-e 's|^async def test_release_already_closed(|@pytest.mark.xfail\n\0|' \
|
||||
-e 's|^async def test_release_close_do_not_delete_existing_connections(|@pytest.mark.xfail\n\0|' \
|
||||
-e 's|^async def test_release_not_started(|@pytest.mark.xfail\n\0|' \
|
||||
-e 's|^async def test_release_ssl_transport(|@pytest.mark.xfail\n\0|' \
|
||||
-e 's|^async def test_release_waiter_first_available(|@pytest.mark.xfail\n\0|' \
|
||||
-e 's|^async def test_release_waiter_no_available(|@pytest.mark.xfail\n\0|' \
|
||||
-e 's|^async def test_release_waiter_no_limit(|@pytest.mark.xfail\n\0|' \
|
||||
-e 's|^async def test_release_waiter_per_host(|@pytest.mark.xfail\n\0|' \
|
||||
-e 's|^async def test_release_waiter_release_first(|@pytest.mark.xfail\n\0|' \
|
||||
-e 's|^async def test_release_waiter_skip_done_waiter(|@pytest.mark.xfail\n\0|' \
|
||||
-e 's|^async def test_tcp_connector_dns_throttle_requests_cancelled_when_close(|@pytest.mark.xfail\n\0|' \
|
||||
-e 's|^async def test_tcp_connector_do_not_raise_connector_ssl_error(|@pytest.mark.xfail\n\0|' \
|
||||
-e 's|^async def test_tcp_connector_uses_provided_local_addr(|@pytest.mark.xfail\n\0|' \
|
||||
-i tests/test_connector.py || die
|
||||
|
||||
sed -e 's|^ async def test_read_boundary_with_incomplete_chunk(| @pytest.mark.xfail\n\0|' \
|
||||
-e 's|^ async def test_read_incomplete_chunk(| @pytest.mark.xfail\n\0|' \
|
||||
-i tests/test_multipart.py || die
|
||||
|
||||
sed -e 's|^def test_aiohttp_plugin_async_fixture(|@pytest.mark.xfail\n\0|' \
|
||||
-i tests/test_pytest_plugin.py || die
|
||||
|
||||
sed -e 's|^def test_static(|@pytest.mark.xfail\n\0|' \
|
||||
-i tests/test_route_def.py || die
|
||||
|
||||
sed -e 's|^async def test_mixed_middleware(|@pytest.mark.xfail\n\0|' \
|
||||
-e 's|^async def test_new_style_middleware_class(|@pytest.mark.xfail\n\0|' \
|
||||
-e 's|^async def test_new_style_middleware_method(|@pytest.mark.xfail\n\0|' \
|
||||
-e 's|^async def test_old_style_middleware(|@pytest.mark.xfail\n\0|' \
|
||||
-e 's|^async def test_old_style_middleware_class(|@pytest.mark.xfail\n\0|' \
|
||||
-i tests/test_web_middleware.py || die
|
||||
|
||||
sed -e 's|^async def test_client_disconnect(|@pytest.mark.xfail\n\0|' \
|
||||
-i tests/test_web_protocol.py || die
|
||||
|
||||
sed -e 's|^async def test_static_file_range(|@pytest.mark.xfail\n\0|' \
|
||||
-i tests/test_web_sendfile_functional.py || die
|
||||
|
||||
sed -e 's|^async def test_partially_applied_handler(|@pytest.mark.xfail\n\0|' \
|
||||
-i tests/test_web_urldispatcher.py || die
|
||||
|
||||
# minor breakages on py3.9
|
||||
sed -e 's:test_iface:_&:' \
|
||||
-i tests/test_frozenlist.py || die
|
||||
sed -e 's:test_proxy_https_bad_response:_&:' \
|
||||
-i tests/test_proxy_functional.py || die
|
||||
|
||||
# newer chardet works too
|
||||
sed -e 's|chardet>=2.0,<4.0|chardet>=2.0|' \
|
||||
-i setup.py aiohttp.egg-info/requires.txt || die
|
||||
|
||||
distutils-r1_python_prepare_all
|
||||
}
|
||||
|
||||
python_test() {
|
||||
pushd "${BUILD_DIR}/lib" >/dev/null || die
|
||||
ln -snf "${S}/tests" tests || die
|
||||
pytest -vv || die "Tests fail with ${EPYTHON}"
|
||||
rm -rf .pytest_cache tests || die
|
||||
popd >/dev/null || die
|
||||
}
|
@ -1,90 +0,0 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
PYTHON_COMPAT=( python3_{7..9} )
|
||||
|
||||
inherit distutils-r1 multiprocessing
|
||||
|
||||
DESCRIPTION="http client/server for asyncio"
|
||||
HOMEPAGE="https://pypi.org/project/aiohttp/"
|
||||
SRC_URI="mirror://pypi/${P:0:1}/${PN}/${P}.tar.gz"
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ppc ppc64 ~riscv sparc x86"
|
||||
|
||||
RDEPEND="
|
||||
>=dev-python/async_timeout-3.0.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/attrs-17.3.0[${PYTHON_USEDEP}]
|
||||
dev-python/chardet[${PYTHON_USEDEP}]
|
||||
>=dev-python/multidict-4.5.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/yarl-1.0[${PYTHON_USEDEP}]
|
||||
$(python_gen_cond_dep '
|
||||
dev-python/idna-ssl[${PYTHON_USEDEP}]
|
||||
' python3_6)
|
||||
dev-python/typing-extensions[${PYTHON_USEDEP}]
|
||||
"
|
||||
BDEPEND="
|
||||
dev-python/cython[${PYTHON_USEDEP}]
|
||||
test? (
|
||||
!!dev-python/pytest-aiohttp
|
||||
dev-python/async_generator[${PYTHON_USEDEP}]
|
||||
dev-python/brotlipy[${PYTHON_USEDEP}]
|
||||
dev-python/freezegun[${PYTHON_USEDEP}]
|
||||
www-servers/gunicorn[${PYTHON_USEDEP}]
|
||||
dev-python/pytest-forked[${PYTHON_USEDEP}]
|
||||
dev-python/pytest-mock[${PYTHON_USEDEP}]
|
||||
dev-python/pytest-timeout[${PYTHON_USEDEP}]
|
||||
dev-python/pytest-xdist[${PYTHON_USEDEP}]
|
||||
dev-python/trustme[${PYTHON_USEDEP}]
|
||||
)
|
||||
"
|
||||
|
||||
DOCS=( CHANGES.rst CONTRIBUTORS.txt README.rst )
|
||||
|
||||
distutils_enable_tests pytest
|
||||
distutils_enable_sphinx docs \
|
||||
'>=dev-python/alabaster-0.6.2' \
|
||||
'dev-python/sphinxcontrib-asyncio' \
|
||||
'dev-python/sphinxcontrib-blockdiag' \
|
||||
'dev-python/sphinxcontrib-newsfeed' \
|
||||
'dev-python/sphinxcontrib-spelling' \
|
||||
'dev-python/sphinx' \
|
||||
'dev-python/sphinx-aiohttp-theme'
|
||||
|
||||
python_prepare_all() {
|
||||
# Fails due to a warning
|
||||
sed -e 's:test_read_boundary_with_incomplete_chunk:_&:' \
|
||||
-i tests/test_multipart.py || die
|
||||
# with py3.7+
|
||||
sed -e 's:test_aiohttp_request_coroutine:_&:' \
|
||||
-i tests/test_client_functional.py || die
|
||||
|
||||
# Fails due to path mismatch
|
||||
sed -e 's:test_static:_&:' \
|
||||
-i tests/test_route_def.py || die
|
||||
|
||||
# Internet
|
||||
sed -e 's:test_mark_formdata_as_processed:_&:' \
|
||||
-i tests/test_formdata.py || die
|
||||
|
||||
# newer chardet works too
|
||||
sed -e 's|chardet>=2.0,<4.0|chardet>=2.0|' \
|
||||
-i setup.py aiohttp.egg-info/requires.txt || die
|
||||
|
||||
# takes a very long time, then fails
|
||||
rm tests/test_pytest_plugin.py || die
|
||||
|
||||
distutils-r1_python_prepare_all
|
||||
}
|
||||
|
||||
python_test() {
|
||||
pushd "${BUILD_DIR}/lib" >/dev/null || die
|
||||
ln -snf "${S}"/{LICENSE.txt,tests} . || die
|
||||
pytest -n "$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")" --forked \
|
||||
-vv tests || die "Tests fail with ${EPYTHON}"
|
||||
rm -rf .pytest_cache tests || die
|
||||
popd >/dev/null || die
|
||||
}
|
@ -1,91 +0,0 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
PYTHON_COMPAT=( python3_{7..9} )
|
||||
|
||||
inherit distutils-r1 multiprocessing
|
||||
|
||||
DESCRIPTION="http client/server for asyncio"
|
||||
HOMEPAGE="https://pypi.org/project/aiohttp/"
|
||||
SRC_URI="mirror://pypi/${P:0:1}/${PN}/${P}.tar.gz"
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 arm arm64 ~ia64 ppc ppc64 sparc ~x86"
|
||||
|
||||
RDEPEND="
|
||||
>=dev-python/async_timeout-3.0.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/attrs-17.3.0[${PYTHON_USEDEP}]
|
||||
dev-python/chardet[${PYTHON_USEDEP}]
|
||||
>=dev-python/multidict-4.5.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/yarl-1.0[${PYTHON_USEDEP}]
|
||||
$(python_gen_cond_dep '
|
||||
dev-python/idna-ssl[${PYTHON_USEDEP}]
|
||||
' python3_6)
|
||||
dev-python/typing-extensions[${PYTHON_USEDEP}]
|
||||
"
|
||||
BDEPEND="
|
||||
dev-python/cython[${PYTHON_USEDEP}]
|
||||
test? (
|
||||
!!dev-python/pytest-aiohttp
|
||||
dev-python/async_generator[${PYTHON_USEDEP}]
|
||||
dev-python/brotlipy[${PYTHON_USEDEP}]
|
||||
dev-python/freezegun[${PYTHON_USEDEP}]
|
||||
www-servers/gunicorn[${PYTHON_USEDEP}]
|
||||
dev-python/pytest-forked[${PYTHON_USEDEP}]
|
||||
dev-python/pytest-mock[${PYTHON_USEDEP}]
|
||||
dev-python/pytest-timeout[${PYTHON_USEDEP}]
|
||||
dev-python/pytest-xdist[${PYTHON_USEDEP}]
|
||||
dev-python/re-assert[${PYTHON_USEDEP}]
|
||||
dev-python/trustme[${PYTHON_USEDEP}]
|
||||
)
|
||||
"
|
||||
|
||||
DOCS=( CHANGES.rst CONTRIBUTORS.txt README.rst )
|
||||
|
||||
distutils_enable_tests pytest
|
||||
distutils_enable_sphinx docs \
|
||||
'>=dev-python/alabaster-0.6.2' \
|
||||
'dev-python/sphinxcontrib-asyncio' \
|
||||
'dev-python/sphinxcontrib-blockdiag' \
|
||||
'dev-python/sphinxcontrib-newsfeed' \
|
||||
'dev-python/sphinxcontrib-spelling' \
|
||||
'dev-python/sphinx' \
|
||||
'dev-python/sphinx-aiohttp-theme'
|
||||
|
||||
python_prepare_all() {
|
||||
# Fails due to a warning
|
||||
sed -e 's:test_read_boundary_with_incomplete_chunk:_&:' \
|
||||
-i tests/test_multipart.py || die
|
||||
# with py3.7+
|
||||
sed -e 's:test_aiohttp_request_coroutine:_&:' \
|
||||
-i tests/test_client_functional.py || die
|
||||
|
||||
# Fails due to path mismatch
|
||||
sed -e 's:test_static:_&:' \
|
||||
-i tests/test_route_def.py || die
|
||||
|
||||
# Internet
|
||||
sed -e 's:test_mark_formdata_as_processed:_&:' \
|
||||
-i tests/test_formdata.py || die
|
||||
|
||||
# newer chardet works too
|
||||
sed -e 's|chardet>=2.0,<4.0|chardet>=2.0|' \
|
||||
-i setup.py aiohttp.egg-info/requires.txt || die
|
||||
|
||||
# takes a very long time, then fails
|
||||
rm tests/test_pytest_plugin.py || die
|
||||
|
||||
distutils-r1_python_prepare_all
|
||||
}
|
||||
|
||||
python_test() {
|
||||
pushd "${BUILD_DIR}/lib" >/dev/null || die
|
||||
ln -snf "${S}"/{LICENSE.txt,tests} . || die
|
||||
pytest -n "$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")" --forked \
|
||||
-vv tests || die "Tests fail with ${EPYTHON}"
|
||||
rm -rf .pytest_cache tests || die
|
||||
popd >/dev/null || die
|
||||
}
|
@ -1,91 +0,0 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
PYTHON_COMPAT=( python3_{7..9} )
|
||||
|
||||
inherit distutils-r1 multiprocessing
|
||||
|
||||
DESCRIPTION="http client/server for asyncio"
|
||||
HOMEPAGE="https://pypi.org/project/aiohttp/"
|
||||
SRC_URI="mirror://pypi/${P:0:1}/${PN}/${P}.tar.gz"
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha amd64 ~arm arm64 hppa ~ia64 ppc ppc64 ~riscv sparc x86"
|
||||
|
||||
RDEPEND="
|
||||
>=dev-python/async_timeout-3.0.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/attrs-17.3.0[${PYTHON_USEDEP}]
|
||||
dev-python/chardet[${PYTHON_USEDEP}]
|
||||
>=dev-python/multidict-4.5.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/yarl-1.0[${PYTHON_USEDEP}]
|
||||
$(python_gen_cond_dep '
|
||||
dev-python/idna-ssl[${PYTHON_USEDEP}]
|
||||
' python3_6)
|
||||
dev-python/typing-extensions[${PYTHON_USEDEP}]
|
||||
"
|
||||
BDEPEND="
|
||||
dev-python/cython[${PYTHON_USEDEP}]
|
||||
test? (
|
||||
!!dev-python/pytest-aiohttp
|
||||
dev-python/async_generator[${PYTHON_USEDEP}]
|
||||
dev-python/brotlipy[${PYTHON_USEDEP}]
|
||||
dev-python/freezegun[${PYTHON_USEDEP}]
|
||||
www-servers/gunicorn[${PYTHON_USEDEP}]
|
||||
dev-python/pytest-forked[${PYTHON_USEDEP}]
|
||||
dev-python/pytest-mock[${PYTHON_USEDEP}]
|
||||
dev-python/pytest-timeout[${PYTHON_USEDEP}]
|
||||
dev-python/pytest-xdist[${PYTHON_USEDEP}]
|
||||
dev-python/re-assert[${PYTHON_USEDEP}]
|
||||
dev-python/trustme[${PYTHON_USEDEP}]
|
||||
)
|
||||
"
|
||||
|
||||
DOCS=( CHANGES.rst CONTRIBUTORS.txt README.rst )
|
||||
|
||||
distutils_enable_tests pytest
|
||||
distutils_enable_sphinx docs \
|
||||
'>=dev-python/alabaster-0.6.2' \
|
||||
'dev-python/sphinxcontrib-asyncio' \
|
||||
'dev-python/sphinxcontrib-blockdiag' \
|
||||
'dev-python/sphinxcontrib-newsfeed' \
|
||||
'dev-python/sphinxcontrib-spelling' \
|
||||
'dev-python/sphinx' \
|
||||
'dev-python/sphinx-aiohttp-theme'
|
||||
|
||||
python_prepare_all() {
|
||||
# Fails due to a warning
|
||||
sed -e 's:test_read_boundary_with_incomplete_chunk:_&:' \
|
||||
-i tests/test_multipart.py || die
|
||||
# with py3.7+
|
||||
sed -e 's:test_aiohttp_request_coroutine:_&:' \
|
||||
-i tests/test_client_functional.py || die
|
||||
|
||||
# Fails due to path mismatch
|
||||
sed -e 's:test_static:_&:' \
|
||||
-i tests/test_route_def.py || die
|
||||
|
||||
# Internet
|
||||
sed -e 's:test_mark_formdata_as_processed:_&:' \
|
||||
-i tests/test_formdata.py || die
|
||||
|
||||
# newer chardet works too
|
||||
sed -e 's|chardet>=2.0,<4.0|chardet>=2.0|' \
|
||||
-i setup.py aiohttp.egg-info/requires.txt || die
|
||||
|
||||
# takes a very long time, then fails
|
||||
rm tests/test_pytest_plugin.py || die
|
||||
|
||||
distutils-r1_python_prepare_all
|
||||
}
|
||||
|
||||
python_test() {
|
||||
pushd "${BUILD_DIR}/lib" >/dev/null || die
|
||||
ln -snf "${S}"/{LICENSE.txt,tests} . || die
|
||||
pytest -n "$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")" --forked \
|
||||
-vv tests || die "Tests fail with ${EPYTHON}"
|
||||
rm -rf .pytest_cache tests || die
|
||||
popd >/dev/null || die
|
||||
}
|
@ -0,0 +1,3 @@
|
||||
DIST cython-test-exception-raiser-1.0.0.gh.tar.gz 4273 BLAKE2B 028c3ded07b137a186055b4fa8f9d7306585942ad7ee022a37b3df065dae5d2110d6ddcd874f3dc2c687f10da1122329194b817b1a78a76ff8de557997ca2a19 SHA512 4e1c5dd65a7c493cf43213badfcaaeb0df9c4774cc6f90cfd437612126893e7831d218c707599adb97dbee7ebaaa2372c796c634d75738bd06328735eb8f1189
|
||||
EBUILD cython-test-exception-raiser-1.0.0.ebuild 571 BLAKE2B 430dc1a722b0b5a498f6029da79f861fe425cdf6ae70f69e3789554d030c966cda92594e9f3e7e6e449198d6797be1a30cb54d9d4cd20bba65a51a306f22614f SHA512 6fc6f714dcbbaccba606c4f0df7774497d5abfda102a5236a6d4f8d13d3506bd63b34798c5964f7fd92ad17ac8ecabc14fb3b9f679ce2ef72a16193d1581fdd8
|
||||
MISC metadata.xml 385 BLAKE2B a99aacc4e3a21f41dd413b185fec8ac393e1c1c2f3897fd7173d717a72b056acb8362a0b5c9b6028021365678f828549fc0b711e9697620f50f9d66ff83952d9 SHA512 1b978c0d50c3b60bdcba9bf93d6da041d83cc9614d4fc6b9837ce9797b0c251d2ed08777f7bc0877d98a9c76b8f8ec744f7f171cbb663aa36e55e2e6a7429fd2
|
@ -0,0 +1,21 @@
|
||||
# Copyright 2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
PYTHON_COMPAT=( python3_{7..9} )
|
||||
inherit distutils-r1
|
||||
|
||||
DESCRIPTION="A trivial extension that just raises an exception (for testing)"
|
||||
HOMEPAGE="
|
||||
https://pypi.org/project/cython-test-exception-raiser/
|
||||
https://github.com/twisted/cython-test-exception-raiser/"
|
||||
SRC_URI="
|
||||
https://github.com/twisted/cython-test-exception-raiser/archive/v${PV}.tar.gz
|
||||
-> ${P}.gh.tar.gz"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
|
||||
BDEPEND="dev-python/cython[${PYTHON_USEDEP}]"
|
@ -0,0 +1,11 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer type="project">
|
||||
<email>python@gentoo.org</email>
|
||||
</maintainer>
|
||||
<upstream>
|
||||
<remote-id type="pypi">cython-test-exception-raiser</remote-id>
|
||||
<remote-id type="github">twisted/cython-test-exception-raiser</remote-id>
|
||||
</upstream>
|
||||
</pkgmetadata>
|
@ -1,5 +1,3 @@
|
||||
DIST pyrqlite-2.0.tar.gz 7224 BLAKE2B f3de4d4d6f0598c6dc21e323db4c717f7f8dc85f6e592ea9dfb209ba778d1f16049d40e39b8d98c94dec61c02949ba1fabeae29e25ec8afbe4810df52b6210df SHA512 9d284161e492683955000dd3e3f0593b79e69ba5eb087bee4d3ffc1e4be9de1c362212936b10e1781538eacd838e6ed22adfc82e8cc0dd00e1d3318a4dc14720
|
||||
DIST pyrqlite-2.1.tar.gz 19069 BLAKE2B f5ce9c1201632e81ba6f7f41e3ef54bd5fff354c869e73879e8b324ad12aea6476eb197119a22ba15d58c9ab3503435b0110ce9bfe2c21d16fe10b44afbe486a SHA512 6a63860378021b29ec0e8d81cf2c3534c97cec2c65d60e8ac2ec9b0a7900efb9a9a63546da44d8be89570eae2fd47eca4004167d11438b2dd9eb6bc68e646bad
|
||||
EBUILD pyrqlite-2.0.ebuild 637 BLAKE2B 5f1e36a003c9b94f864b4e698ba18956b4ed84a16d112cb0e414d4f2811124a09b82c1c144a93651a383cfdce7ecfe077b146672c17742bb0cc69177bb52ddb2 SHA512 8727f07ed53fb3b6ebb042896a48ba9cd411c5535b44dd24324dc6c933681e2576dd9951207c009904f46a65c6ebf1bc4d492b9b1b801f15df902f0d8bb51a60
|
||||
EBUILD pyrqlite-2.1.ebuild 544 BLAKE2B d458fca332b768613ea1bc73c4ad6911494d38e9d222ffc28ebe035a4b3da4570bffe83c18c9b43538eddfebd4eea7140fea17c1da1c38151bed0c0932e0e69c SHA512 4d0e0a4a1324dba58ee24bf75489e4cd3b31d740b4a62ab378e56891ab058d39e6b0e47e66b7cc6f0e6fea4d5233bbbfe809002c45bf29135b6fd15bd1b41351
|
||||
EBUILD pyrqlite-2.1.ebuild 617 BLAKE2B ba86110b3847c6897d49b1fdaa48d14d4d22ccb544d0a9e58f28de009bac0eff4f44a9068182bf42e6b1652e318894577bc0aab93f9cdbd9816611501ef11d83 SHA512 38c5a41d77d6c6842240540bd3000b77601e275999fe810ed51d8992438173a7d9d8b56dd7dc86c2fc15ee5271d5a784becbd6fdfbec023d24569976b456444c
|
||||
MISC metadata.xml 306 BLAKE2B 6848a797588465344547135639af1cdae67a9db23851e940a5f5aed347ad4c6e8114c2fc88159370356bb4360c926d4b44e1f4474c98a7577e3dd64403100d72 SHA512 f26c1056eb200c8b60e2d0f7ff54447465115afecd34949ba8358f812d95dea6d877928010ac81c8d36261479ff6a61982350a403546dd09e7f4bf9a082a9d7f
|
||||
|
@ -1,27 +0,0 @@
|
||||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
PYTHON_COMPAT=( python3_{7..9} )
|
||||
|
||||
inherit distutils-r1
|
||||
|
||||
if [[ ${PV} == *9999* ]]; then
|
||||
inherit git-r3
|
||||
fi
|
||||
|
||||
DESCRIPTION="Python client for rqlite"
|
||||
EGIT_REPO_URI="https://github.com/rqlite/pyrqlite.git"
|
||||
HOMEPAGE="https://github.com/rqlite/pyrqlite"
|
||||
SRC_URI="${EGIT_REPO_URI%.git}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
|
||||
distutils_enable_tests pytest
|
||||
|
||||
src_prepare() {
|
||||
sed -e "s:^__version__ = .*:__version__ = '${PV}':" -i src/${PN}/constants.py || die
|
||||
distutils-r1_src_prepare
|
||||
}
|
@ -1,3 +1,3 @@
|
||||
DIST pyudev-0.22.0.tar.gz 85077 BLAKE2B 66c78aa4d3bea5ceae3660a93e5bd1733629bb5228d67d8e647abb8c237a2786c1061b07e034be5467f5bcab58d95ba30f91d74bdc54cd8253dff69be3ad4a80 SHA512 a09ed479a54a1772a6af68cb975fef792068c2de3655e20223905bc3f574fd32bd3dbe6b97062eee3ab5f08a8b041ad3ea86dfb68c839ea44e29d65ec1686670
|
||||
EBUILD pyudev-0.22.0.ebuild 1261 BLAKE2B 03f9298f9245206fbebf8c2276e330ac531213e9bf16869a68c3c2fa3011ce973c1ae5cef5ee976b2d22398664646a7b46e59a92f8ae876f7de8fbb7b7cb38d6 SHA512 4ede34f1496546e9760c13eb5ab02dd5c80373302be8c7bd7802cbb0d09d8aca4b813174c5212ccef2a0e52e9268cc261ecedf1770138705eb8f3eee2e9e7901
|
||||
EBUILD pyudev-0.22.0.ebuild 1273 BLAKE2B a1085fed6c59aabce49239b1100187d7ea290305bceab6cfbae16bc0c2e549bc2214aa51b63691d464d978f9523f2ac07729d66abb549940cc256be665e2d94a SHA512 1a4d9454b41087dddedd3a2288270e5152df30839802ceef834eaf6ff09f4a497519d29a65cd2ba07b77cedff554ca999580065209e9c9e7a34d78a4f53dff84
|
||||
MISC metadata.xml 593 BLAKE2B bb5efdb90e8b189f55f12df33d7bc69233a448d010c62b512cdbea78c58a625d0e876b48cdac3342e3588e3bb1f3998d9400e927fecf7bb86ad01da113c97758 SHA512 dd6e479a44e54d4e3b2a4b7a3ceedf04fd45152d9667227b4f7bf0c585052e1adedda44084c6251749714ba91bfb8ae2969c158bb3412edf1230f5b8d1d1c768
|
||||
|
@ -1,6 +1,3 @@
|
||||
DIST sqlalchemy-rqlite-1.0.tar.gz 3910 BLAKE2B c2a07ba91812ea2223bdea4e715b364a96b66057f2ed1c7bc0d373860880f3e0d7188ea8d513b127d8c7138695b9703b4a2ed5f6a4a001a8b2ae68020189a058 SHA512 794d0a1d80803f624af4b530efe277947d3a8fa7001df2177de6bdb34ffc9fc76e22c8b73caad7cda02429ddc251fdcbdd8e95ea286a6540054efb28ee53d2bb
|
||||
DIST sqlalchemy-rqlite-1.1.tar.gz 4281 BLAKE2B 09cee627790d15715c0124a1065f5cc2c72820a652a99e4c2088de21c980071f27c451e438e84d4c92222d19b651b0e239fac8280c2bbb33c55e76c9b77868b7 SHA512 da11cadd2b6dd0f3501bdf717ad7dd7552edfcf7f32a57ce09b6dadc7eb7fb31fd92e7143151a3e3b2d5f75793f6e5096d13dbe446cb71cfa901d6ff8d4c6e12
|
||||
EBUILD sqlalchemy-rqlite-1.0.ebuild 800 BLAKE2B 4fa6501062a11de73b6321620402147a61cf03f74470dc433b749fc9cb97ba94d3c2846d2ffa66e48d8d3ced2764c8b87e7677736f2645a26b917e2664f1d840 SHA512 6934f787b686391e53d173c33ffac35024cc152affeefc47232bd4c0bd2ec73c32844e9b8fa4612174a65eecd5438c3ff2806c0292fc998732be86fd67592b0b
|
||||
EBUILD sqlalchemy-rqlite-1.1.ebuild 772 BLAKE2B b5cc55a78de3a54dab08584b82342948496218ca90903bcc0fdb57d5b48f1c5a63ae3b633dc54ff77d4df5cb7f2042bb12e2e7821d15246546eaece4c4b2c280 SHA512 05ada04c7c54c0d9e1e678f8174b59a2d8eafd2eb27838835cedca1c2aec8499ac5c2781e0d3173e5412fdfbff31b0a7a55b1b57ae28a0a1d8c2b67a38dfec4e
|
||||
EBUILD sqlalchemy-rqlite-9999.ebuild 720 BLAKE2B 3d0cb61b7ad721ffa1d4e578c530aca8255cbe22ce6ead82194a65b79fa9b12abafff8087f4b138a35fccee93b9cd4aabd7ee48c671c044ade6fece2d490acca SHA512 f9eb6c48791e816bf9e4c0ad5700aacb666689ee4f020428ee116794449bb27dab95499c1fdcefebcba504624788e5877fd76dec29bc869e3971c5146297de5e
|
||||
MISC metadata.xml 307 BLAKE2B 29ea763c455895cfa0961f68cb2933a3354eb233efa9bf18398146aee9a4caf8a50d53dd4542d76e3cd5cd2c0b412ad435cb377f27559209df3e92438c5c712d SHA512 ed97acffcf63e1d7d8ec644d8e050848645f93d77b2114e11e49fc841cdc35f7e2a5be4a1fedc235b1ceb4bbf14a03db47d6aa805b48537acd164357638582d9
|
||||
|
@ -1,33 +0,0 @@
|
||||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
PYTHON_COMPAT=( python3_{7..9} )
|
||||
DISTUTILS_USE_SETUPTOOLS=bdepend
|
||||
|
||||
inherit distutils-r1
|
||||
|
||||
if [[ ${PV} == *9999* ]]; then
|
||||
inherit git-r3
|
||||
fi
|
||||
|
||||
DESCRIPTION="A SQLAlchemy dialect for rqlite"
|
||||
EGIT_REPO_URI="https://github.com/rqlite/sqlalchemy-rqlite.git"
|
||||
HOMEPAGE="https://github.com/rqlite/sqlalchemy-rqlite"
|
||||
SRC_URI="${EGIT_REPO_URI%.git}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
|
||||
RDEPEND="
|
||||
dev-python/pyrqlite[${PYTHON_USEDEP}]
|
||||
dev-python/sqlalchemy[${PYTHON_USEDEP}]"
|
||||
|
||||
distutils_enable_tests pytest
|
||||
|
||||
src_prepare() {
|
||||
sed -e "s:^__version__ = .*:__version__ = '${PV}':" -i src/sqlalchemy_rqlite/constants.py || die
|
||||
distutils-r1_src_prepare
|
||||
}
|
@ -1,32 +0,0 @@
|
||||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
PYTHON_COMPAT=( python3_{7..9} )
|
||||
DISTUTILS_USE_SETUPTOOLS=bdepend
|
||||
|
||||
inherit distutils-r1
|
||||
|
||||
if [[ ${PV} == *9999* ]]; then
|
||||
inherit git-r3
|
||||
fi
|
||||
|
||||
DESCRIPTION="A SQLAlchemy dialect for rqlite"
|
||||
EGIT_REPO_URI="https://github.com/rqlite/sqlalchemy-rqlite.git"
|
||||
HOMEPAGE="https://github.com/rqlite/sqlalchemy-rqlite"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS=""
|
||||
|
||||
RDEPEND="
|
||||
dev-python/pyrqlite[${PYTHON_USEDEP}]
|
||||
dev-python/sqlalchemy[${PYTHON_USEDEP}]"
|
||||
|
||||
distutils_enable_tests pytest
|
||||
|
||||
src_prepare() {
|
||||
sed -e "s:^__version__ = .*:__version__ = '${PV}':" -i src/sqlalchemy_rqlite/constants.py || die
|
||||
distutils-r1_src_prepare
|
||||
}
|
@ -0,0 +1,167 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
DISTUTILS_USE_SETUPTOOLS=rdepend
|
||||
PYTHON_COMPAT=( python3_{7..9} )
|
||||
PYTHON_REQ_USE="threads(+)"
|
||||
|
||||
inherit distutils-r1 virtualx
|
||||
|
||||
DESCRIPTION="An asynchronous networking framework written in Python"
|
||||
HOMEPAGE="https://www.twistedmatrix.com/trac/"
|
||||
SRC_URI="
|
||||
https://github.com/twisted/twisted/archive/${P}.tar.gz
|
||||
https://dev.gentoo.org/~mgorny/dist/twisted-regen-cache.gz"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE="conch crypt http2 serial test"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
RDEPEND="
|
||||
>=dev-python/attrs-19.2.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/automat-0.3.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/constantly-15.1.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/hyperlink-17.1.1[${PYTHON_USEDEP}]
|
||||
>=dev-python/incremental-16.10.1[${PYTHON_USEDEP}]
|
||||
>=dev-python/pyhamcrest-1.9.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/zope-interface-4.4.2[${PYTHON_USEDEP}]
|
||||
conch? (
|
||||
>=dev-python/appdirs-1.4.0[${PYTHON_USEDEP}]
|
||||
dev-python/bcrypt[${PYTHON_USEDEP}]
|
||||
>=dev-python/cryptography-1.5.0[${PYTHON_USEDEP}]
|
||||
dev-python/pyasn1[${PYTHON_USEDEP}]
|
||||
)
|
||||
crypt? (
|
||||
>=dev-python/pyopenssl-16.0.0[${PYTHON_USEDEP}]
|
||||
dev-python/service_identity[${PYTHON_USEDEP}]
|
||||
>=dev-python/idna-0.6[${PYTHON_USEDEP}]
|
||||
)
|
||||
serial? ( >=dev-python/pyserial-3.0[${PYTHON_USEDEP}] )
|
||||
http2? (
|
||||
>=dev-python/hyper-h2-3.0.0[${PYTHON_USEDEP}]
|
||||
<dev-python/hyper-h2-4.0.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/priority-1.1.0[${PYTHON_USEDEP}]
|
||||
<dev-python/priority-2.0[${PYTHON_USEDEP}]
|
||||
)
|
||||
!dev-python/twisted-core
|
||||
!dev-python/twisted-conch
|
||||
!dev-python/twisted-lore
|
||||
!dev-python/twisted-mail
|
||||
!dev-python/twisted-names
|
||||
!dev-python/twisted-news
|
||||
!dev-python/twisted-pair
|
||||
!dev-python/twisted-runner
|
||||
!dev-python/twisted-words
|
||||
!dev-python/twisted-web
|
||||
"
|
||||
BDEPEND="
|
||||
>=dev-python/incremental-16.10.1[${PYTHON_USEDEP}]
|
||||
test? (
|
||||
>=dev-python/appdirs-1.4.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/constantly-15.1.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/cryptography-0.9.1[${PYTHON_USEDEP}]
|
||||
dev-python/cython-test-exception-raiser[${PYTHON_USEDEP}]
|
||||
dev-python/gmpy[${PYTHON_USEDEP}]
|
||||
dev-python/idna[${PYTHON_USEDEP}]
|
||||
dev-python/pyasn1[${PYTHON_USEDEP}]
|
||||
>=dev-python/pyopenssl-0.13[${PYTHON_USEDEP}]
|
||||
dev-python/pyserial[${PYTHON_USEDEP}]
|
||||
dev-python/service_identity[${PYTHON_USEDEP}]
|
||||
net-misc/openssh
|
||||
)
|
||||
"
|
||||
|
||||
S=${WORKDIR}/${PN}-${P}
|
||||
|
||||
python_prepare_all() {
|
||||
# upstream test for making releases; not very useful and requires
|
||||
# sphinx (including on py2)
|
||||
rm src/twisted/python/test/test_release.py || die
|
||||
|
||||
# puts system in EMFILE state, then the exception handler may fail
|
||||
# trying to open more files due to some gi magic
|
||||
sed -e '/SKIP_EMFILE/s:False:True:' \
|
||||
-i src/twisted/internet/test/test_tcp.py || die
|
||||
|
||||
# multicast tests fail within network-sandbox
|
||||
sed -e 's:test_joinLeave:_&:' \
|
||||
-e 's:test_loopback:_&:' \
|
||||
-e 's:test_multiListen:_&:' \
|
||||
-e 's:test_multicast:_&:' \
|
||||
-i src/twisted/test/test_udp.py || die
|
||||
|
||||
# accesses /dev/net/tun
|
||||
sed -e '/class RealDeviceTestsMixin/a\
|
||||
skip = "Requires extra permissions"' \
|
||||
-i src/twisted/pair/test/test_tuntap.py || die
|
||||
|
||||
# relies on the pre-CVE parse_qs() behavior in Python
|
||||
sed -e '/d=c;+=f/d' \
|
||||
-i src/twisted/web/test/test_http.py || die
|
||||
|
||||
distutils-r1_python_prepare_all
|
||||
}
|
||||
|
||||
src_test() {
|
||||
virtx distutils-r1_src_test
|
||||
}
|
||||
|
||||
python_test() {
|
||||
# TODO: upstream seems to override our build paths
|
||||
distutils_install_for_testing
|
||||
|
||||
"${EPYTHON}" -m twisted.trial twisted ||
|
||||
die "Tests failed with ${EPYTHON}"
|
||||
}
|
||||
|
||||
python_install() {
|
||||
distutils-r1_python_install
|
||||
|
||||
cd "${D}$(python_get_sitedir)" || die
|
||||
|
||||
# own the dropin.cache so we don't leave orphans
|
||||
touch twisted/plugins/dropin.cache || die
|
||||
|
||||
python_doscript "${WORKDIR}"/twisted-regen-cache
|
||||
}
|
||||
|
||||
python_install_all() {
|
||||
distutils-r1_python_install_all
|
||||
|
||||
newconfd "${FILESDIR}/twistd.conf" twistd
|
||||
newinitd "${FILESDIR}/twistd.init" twistd
|
||||
}
|
||||
|
||||
python_postinst() {
|
||||
twisted-regen-cache || die
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
python_foreach_impl python_postinst
|
||||
|
||||
einfo "Install complete"
|
||||
if use test ; then
|
||||
einfo ""
|
||||
einfo "Some tests have been disabled during testing due to"
|
||||
einfo "known incompatibilities with the emerge sandboxes and/or"
|
||||
einfo "not runnable as the root user."
|
||||
einfo "For a complete test suite run on the code."
|
||||
einfo "Run the tests as a normal user for each python it is installed to."
|
||||
einfo " ie: $ python3.6 /usr/bin/trial twisted"
|
||||
fi
|
||||
}
|
||||
|
||||
python_postrm() {
|
||||
rm -f "${ROOT}$(python_get_sitedir)/twisted/plugins/dropin.cache" || die
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
# if we're removing the last version, remove the cache file
|
||||
if [[ ! ${REPLACING_VERSIONS} ]]; then
|
||||
python_foreach_impl python_postrm
|
||||
fi
|
||||
}
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -1,5 +1,6 @@
|
||||
DIST stockfish-10-src.zip 174377 BLAKE2B 58142b16f59f15773c8811d6e10588dbc680c94cd504d26f4ca285dbe632d845ede06571e501a4e2b77adbb9b00d91978236ff179a46a73dc9a03cfa1ae3490c SHA512 959c4f3c497ba3108884dabc38de824f11781ae57b4ab5fdf25daf9a7fc0326e663adb1c081b8c8d57a7bf5f2e941369502a50a0c93135a001c6bd1af360d0f8
|
||||
DIST stockfish-11.tar.gz 145868 BLAKE2B a4b7b523492cb37206f475cc6d7c512be2a626836e15e0cb0e98d43bf1737e569a6be5f2e87c7633c0802b44863130e7bfe47e49e99ec05015f150ff1baa9755 SHA512 3e6035d422d04a47c9fba61f3815f2be645c6c5cc8c57cc6b17f8f1f2a30651da9c51bafc19b17d4a843be1900b00c5b90e3d6fdd2c6ced45be7510feeb3559a
|
||||
DIST stockfish-13-nn-62ef826d1a6d.nnue 21022697 BLAKE2B 013396fec72e14dfb90ca308bdcbaf98f27b29feb03cb2c855f521dc33d0787de51812cb2a52e4aa94622120fc89a5f2302fd6296a4fb1db33e0de57156a41c3 SHA512 25a0a1b5c440fcfaa8ee122391fbb075e4b4e6bdacae816a2897bb346c0d5c459ae464fc7680414e87eadf2a5a00565d4f3ac2c559fea4bdddd1e4a38874fba7
|
||||
DIST stockfish-13.tar.gz 181226 BLAKE2B ab6f2afccce2b4767c69d07c18aa611cb71388aae9b27e8a6c95b61db4a27c18b0e7a21aa30e10b4b56d018c1a4146dcea4896c4d68d7a9f297fa0758739ce9c SHA512 5ee6581b8324ed32f02ed0f1ea5df311635203e5f1806d00f9819ad076ef4082481f8ecebbb531154cbb120bb2b396c738c3ef2e2e6ee0fd6a5bd6ff88192706
|
||||
EBUILD stockfish-10.ebuild 1790 BLAKE2B 8806e967bd8b4d781ff920b046920d5961274b16ffd7999b9b63366b947101e35a9c45a27efc1534b2d2a3089dd9bb14223ffd7070bec9577a64acd71a970d9f SHA512 18d16399e26d58f112eba0f6527875b20f7dfee26074feb5fbeb211c5b51f621bcc8272ae9a4bef6ac960304c976b740e7dfff6d81375fe4c4552bb1b28b1082
|
||||
EBUILD stockfish-11.ebuild 1850 BLAKE2B 8663d18c75a1addf37b50be6c4953f72af5aec594fd153b28fdea98fa554c136519b395606a154c2f1f6e44b2216a78921d9ad1a52ad8a12331af4b37c9d031f SHA512 4ddf33870f7dbd85a9443c9c40bc38b5444d99d0fb3ecf58a5b60fd345965d5a1e6eba36fe35c8124b7c665dcc9c2ad9d2d5dbc0e092e3181794d4c53ddfb225
|
||||
EBUILD stockfish-13.ebuild 2046 BLAKE2B aea3e5f00ee03950ffe3b8befd615c247194e6dbebc0dc216e81983e4ead327b7413ddfc4e0d7317bab0dd7aab59670fc376b983065f496db3aabc98679d8dbb SHA512 cdbc07b46b43cc18fd2b16c6b261af33472cda70b82e7ad996705309675a4df0c15ae515f490a8ccbcc2465e688e21443ca5af34202224a107b1e69152eefde5
|
||||
MISC metadata.xml 479 BLAKE2B dcf9350e25140219971b3419c7bff3aad6a437d338eca3c053fe984d3d4a94789838ffdac4a3eb9934b1ee085a0451c927bd4a50c7802becfab29c805bf52afa SHA512 5275ae82721084b73c142e8da9334b7e397563dcde764b001a15392707ed572dae65e8ce18f7de8dbddc85b785786780900d1b2ac309927ae14d532ed07fcd64
|
||||
|
@ -1,147 +0,0 @@
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
WX_GTK_VER="3.0"
|
||||
|
||||
PYTHON_COMPAT=( python2_7 )
|
||||
PYTHON_REQ_USE="threads,ssl"
|
||||
|
||||
inherit eutils wxwidgets toolchain-funcs gnome2-utils python-any-r1
|
||||
|
||||
MY_P=0ad-${PV/_/-}
|
||||
DESCRIPTION="A free, real-time strategy game"
|
||||
HOMEPAGE="https://play0ad.com/"
|
||||
SRC_URI="http://releases.wildfiregames.com/${MY_P}-unix-build.tar.xz"
|
||||
|
||||
LICENSE="GPL-2 LGPL-2.1 MIT CC-BY-SA-3.0 ZLIB"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE="editor +lobby nvtt pch test"
|
||||
RESTRICT="test"
|
||||
|
||||
RDEPEND="
|
||||
dev-libs/boost:=
|
||||
dev-libs/icu:=
|
||||
dev-libs/libsodium
|
||||
dev-libs/libxml2
|
||||
dev-libs/nspr
|
||||
~games-strategy/0ad-data-${PV}
|
||||
media-libs/libpng:0
|
||||
media-libs/libsdl2[X,opengl,video]
|
||||
media-libs/libvorbis
|
||||
media-libs/openal
|
||||
net-libs/enet:1.3
|
||||
net-libs/miniupnpc:=
|
||||
net-misc/curl
|
||||
sys-libs/zlib
|
||||
virtual/jpeg:0
|
||||
virtual/opengl
|
||||
x11-libs/libX11
|
||||
x11-libs/libXcursor
|
||||
editor? ( x11-libs/wxGTK:${WX_GTK_VER}[X,opengl] )
|
||||
lobby? ( >=net-libs/gloox-1.0.20 )
|
||||
nvtt? ( media-gfx/nvidia-texture-tools )"
|
||||
DEPEND="${RDEPEND}
|
||||
${PYTHON_DEPS}
|
||||
virtual/pkgconfig
|
||||
test? ( dev-lang/perl )"
|
||||
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
|
||||
pkg_setup() {
|
||||
python-any-r1_pkg_setup
|
||||
use editor && setup-wxwidgets
|
||||
}
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-0.0.21_alpha-gentoo.patch
|
||||
)
|
||||
|
||||
src_configure() {
|
||||
local myconf=(
|
||||
--with-system-nvtt
|
||||
--with-system-miniupnpc
|
||||
--minimal-flags
|
||||
$(usex nvtt "" "--without-nvtt")
|
||||
$(usex pch "" "--without-pch")
|
||||
$(usex test "" "--without-tests")
|
||||
$(usex editor "--atlas" "")
|
||||
$(usex lobby "" "--without-lobby")
|
||||
--collada
|
||||
--bindir="/usr/bin"
|
||||
--libdir="/usr/$(get_libdir)"/${PN}
|
||||
--datadir="/usr/share/${PN}"
|
||||
)
|
||||
|
||||
# stock premake4 does not work, use the shipped one
|
||||
emake -C "${S}"/build/premake/premake4/build/gmake.unix
|
||||
|
||||
# regenerate scripts.c so our patch applies
|
||||
cd "${S}"/build/premake/premake4 || die
|
||||
"${S}"/build/premake/premake4/bin/release/premake4 embed || die
|
||||
|
||||
# rebuild premake again... this is the most stupid build system
|
||||
emake -C "${S}"/build/premake/premake4/build/gmake.unix clean
|
||||
emake -C "${S}"/build/premake/premake4/build/gmake.unix
|
||||
|
||||
# run premake to create build scripts
|
||||
cd "${S}"/build/premake || die
|
||||
"${S}"/build/premake/premake4/bin/release/premake4 \
|
||||
--file="premake4.lua" \
|
||||
--outpath="../workspaces/gcc/" \
|
||||
--platform=$(usex amd64 "x64" "x32") \
|
||||
--os=linux \
|
||||
"${myconf[@]}" \
|
||||
gmake || die "Premake failed"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
tc-export AR
|
||||
|
||||
# build bundled and patched spidermonkey
|
||||
cd libraries/source/spidermonkey || die
|
||||
JOBS="${MAKEOPTS}" ./build.sh || die
|
||||
cd "${S}" || die
|
||||
|
||||
# build 3rd party fcollada
|
||||
emake -C libraries/source/fcollada/src
|
||||
|
||||
# build 0ad
|
||||
emake -C build/workspaces/gcc verbose=1
|
||||
}
|
||||
|
||||
src_test() {
|
||||
cd binaries/system || die
|
||||
./test -libdir "${S}/binaries/system" || die "test phase failed"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
newbin binaries/system/pyrogenesis 0ad
|
||||
use editor && newbin binaries/system/ActorEditor 0ad-ActorEditor
|
||||
|
||||
insinto /usr/share/${PN}
|
||||
doins -r binaries/data/l10n
|
||||
|
||||
exeinto /usr/$(get_libdir)/${PN}
|
||||
doexe binaries/system/libCollada.so
|
||||
doexe libraries/source/spidermonkey/lib/*.so
|
||||
use editor && doexe binaries/system/libAtlasUI.so
|
||||
|
||||
dodoc binaries/system/readme.txt
|
||||
doicon -s 128 build/resources/${PN}.png
|
||||
make_desktop_entry ${PN}
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
gnome2_icon_savelist
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
gnome2_icon_cache_update
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
gnome2_icon_cache_update
|
||||
}
|
@ -1,148 +0,0 @@
|
||||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
WX_GTK_VER="3.0"
|
||||
|
||||
PYTHON_COMPAT=( python2_7 )
|
||||
PYTHON_REQ_USE="threads,ssl"
|
||||
|
||||
inherit eutils wxwidgets toolchain-funcs gnome2-utils python-any-r1
|
||||
|
||||
MY_P=0ad-${PV/_/-}
|
||||
DESCRIPTION="A free, real-time strategy game"
|
||||
HOMEPAGE="https://play0ad.com/"
|
||||
SRC_URI="http://releases.wildfiregames.com/${MY_P}-unix-build.tar.xz"
|
||||
|
||||
LICENSE="GPL-2 LGPL-2.1 MIT CC-BY-SA-3.0 ZLIB"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~arm64 ~x86"
|
||||
IUSE="editor +lobby nvtt pch test"
|
||||
RESTRICT="test"
|
||||
|
||||
RDEPEND="
|
||||
dev-libs/boost:=
|
||||
dev-libs/icu:=
|
||||
dev-libs/libsodium
|
||||
dev-libs/libxml2
|
||||
dev-libs/nspr
|
||||
~games-strategy/0ad-data-${PV}
|
||||
media-libs/libpng:0
|
||||
media-libs/libsdl2[X,opengl,video]
|
||||
media-libs/libvorbis
|
||||
media-libs/openal
|
||||
net-libs/enet:1.3
|
||||
net-libs/miniupnpc:=
|
||||
net-misc/curl
|
||||
sys-libs/zlib
|
||||
virtual/jpeg:0
|
||||
virtual/opengl
|
||||
x11-libs/libX11
|
||||
x11-libs/libXcursor
|
||||
editor? ( x11-libs/wxGTK:${WX_GTK_VER}[X,opengl] )
|
||||
lobby? ( >=net-libs/gloox-1.0.20 )
|
||||
nvtt? ( media-gfx/nvidia-texture-tools )"
|
||||
DEPEND="${RDEPEND}
|
||||
${PYTHON_DEPS}
|
||||
virtual/pkgconfig
|
||||
test? ( dev-lang/perl )"
|
||||
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
|
||||
pkg_setup() {
|
||||
python-any-r1_pkg_setup
|
||||
use editor && setup-wxwidgets
|
||||
}
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-0.0.21_alpha-gentoo.patch
|
||||
"${FILESDIR}"/${PN}-0.0.23b-header_includes_fix.patch
|
||||
)
|
||||
|
||||
src_configure() {
|
||||
local myconf=(
|
||||
--with-system-nvtt
|
||||
--with-system-miniupnpc
|
||||
--minimal-flags
|
||||
$(usex nvtt "" "--without-nvtt")
|
||||
$(usex pch "" "--without-pch")
|
||||
$(usex test "" "--without-tests")
|
||||
$(usex editor "--atlas" "")
|
||||
$(usex lobby "" "--without-lobby")
|
||||
--collada
|
||||
--bindir="/usr/bin"
|
||||
--libdir="/usr/$(get_libdir)"/${PN}
|
||||
--datadir="/usr/share/${PN}"
|
||||
)
|
||||
|
||||
# stock premake4 does not work, use the shipped one
|
||||
emake -C "${S}"/build/premake/premake4/build/gmake.unix
|
||||
|
||||
# regenerate scripts.c so our patch applies
|
||||
cd "${S}"/build/premake/premake4 || die
|
||||
"${S}"/build/premake/premake4/bin/release/premake4 embed || die
|
||||
|
||||
# rebuild premake again... this is the most stupid build system
|
||||
emake -C "${S}"/build/premake/premake4/build/gmake.unix clean
|
||||
emake -C "${S}"/build/premake/premake4/build/gmake.unix
|
||||
|
||||
# run premake to create build scripts
|
||||
cd "${S}"/build/premake || die
|
||||
"${S}"/build/premake/premake4/bin/release/premake4 \
|
||||
--file="premake4.lua" \
|
||||
--outpath="../workspaces/gcc/" \
|
||||
--platform=$(usex amd64 "x64" "x32") \
|
||||
--os=linux \
|
||||
"${myconf[@]}" \
|
||||
gmake || die "Premake failed"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
tc-export AR
|
||||
|
||||
# build bundled and patched spidermonkey
|
||||
cd libraries/source/spidermonkey || die
|
||||
JOBS="${MAKEOPTS}" ./build.sh || die
|
||||
cd "${S}" || die
|
||||
|
||||
# build 3rd party fcollada
|
||||
emake -C libraries/source/fcollada/src
|
||||
|
||||
# build 0ad
|
||||
emake -C build/workspaces/gcc verbose=1
|
||||
}
|
||||
|
||||
src_test() {
|
||||
cd binaries/system || die
|
||||
./test -libdir "${S}/binaries/system" || die "test phase failed"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
newbin binaries/system/pyrogenesis 0ad
|
||||
use editor && newbin binaries/system/ActorEditor 0ad-ActorEditor
|
||||
|
||||
insinto /usr/share/${PN}
|
||||
doins -r binaries/data/l10n
|
||||
|
||||
exeinto /usr/$(get_libdir)/${PN}
|
||||
doexe binaries/system/libCollada.so
|
||||
doexe libraries/source/spidermonkey/lib/*.so
|
||||
use editor && doexe binaries/system/libAtlasUI.so
|
||||
|
||||
dodoc binaries/system/readme.txt
|
||||
doicon -s 128 build/resources/${PN}.png
|
||||
make_desktop_entry ${PN}
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
gnome2_icon_savelist
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
gnome2_icon_cache_update
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
gnome2_icon_cache_update
|
||||
}
|
@ -0,0 +1,218 @@
|
||||
# Copyright 2014-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
WX_GTK_VER="3.0-gtk3"
|
||||
|
||||
inherit desktop toolchain-funcs multiprocessing wxwidgets xdg
|
||||
|
||||
if [[ ${PV} == 9999 ]]; then
|
||||
inherit git-r3
|
||||
|
||||
EGIT_REPO_URI="https://github.com/0ad/0ad"
|
||||
elif [[ ${PV} == *_pre* ]]; then
|
||||
ZEROAD_GIT_REVISION="c7d07d3979f969b969211a5e5748fa775f6768a7"
|
||||
else
|
||||
MY_P="0ad-${PV/_/-}"
|
||||
fi
|
||||
|
||||
DESCRIPTION="A free, real-time strategy game"
|
||||
HOMEPAGE="https://play0ad.com/"
|
||||
|
||||
if [[ ${PV} == 9999 ]]; then
|
||||
S="${WORKDIR}/${P}"
|
||||
elif [[ ${PV} == *_pre* ]]; then
|
||||
SRC_URI="https://github.com/0ad/0ad/archive/${ZEROAD_GIT_REVISION}.tar.gz -> ${P}.tar.gz"
|
||||
S="${WORKDIR}/${PN}-${ZEROAD_GIT_REVISION}"
|
||||
else
|
||||
SRC_URI="http://releases.wildfiregames.com/${MY_P}-unix-build.tar.xz"
|
||||
SRC_URI+=" https://releases.wildfiregames.com/${MY_P}-unix-data.tar.xz"
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
fi
|
||||
|
||||
LICENSE="CC-BY-SA-3.0 GPL-2 LGPL-2.1 MIT ZLIB BitstreamVera LPPL-1.3c"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE="editor +lobby nvtt pch test"
|
||||
RESTRICT="test"
|
||||
|
||||
# TODO: Unbundle premake5
|
||||
# See bug #773472 which may help (bump for it)
|
||||
BDEPEND="
|
||||
virtual/pkgconfig
|
||||
test? ( dev-lang/perl )
|
||||
"
|
||||
# Removed dependency on nvtt as we use the bundled one
|
||||
# bug #768930
|
||||
DEPEND="
|
||||
dev-libs/boost:=
|
||||
dev-libs/icu:=
|
||||
dev-libs/libfmt:0=
|
||||
dev-libs/libsodium
|
||||
dev-libs/libxml2
|
||||
media-libs/libpng:0
|
||||
media-libs/libsdl2[X,opengl,video]
|
||||
media-libs/libvorbis
|
||||
media-libs/openal
|
||||
net-libs/enet:1.3
|
||||
net-libs/miniupnpc:=
|
||||
net-misc/curl
|
||||
sys-libs/zlib
|
||||
virtual/opengl
|
||||
x11-libs/libX11
|
||||
editor? ( x11-libs/wxGTK:${WX_GTK_VER}[X,opengl] )
|
||||
lobby? ( >=net-libs/gloox-1.0.20 )
|
||||
"
|
||||
RDEPEND="
|
||||
${DEPEND}
|
||||
!games-strategy/0ad-data
|
||||
"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${PN}-0.0.24_alpha_pre20210116040036-build.patch"
|
||||
)
|
||||
|
||||
pkg_setup() {
|
||||
use editor && setup-wxwidgets
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
# SpiderMonkey's configure no longer recognises --build for
|
||||
# the build tuple
|
||||
sed -i -e "/--build/d" libraries/source/spidermonkey/build.sh || die
|
||||
|
||||
# Originally from 0ad-data
|
||||
rm binaries/data/tools/fontbuilder/fonts/*.txt || die
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local myconf=(
|
||||
--minimal-flags
|
||||
$(usex nvtt "" "--without-nvtt")
|
||||
$(usex pch "" "--without-pch")
|
||||
$(usex test "" "--without-tests")
|
||||
$(usex editor "--atlas" "")
|
||||
$(usex lobby "" "--without-lobby")
|
||||
--bindir="/usr/bin"
|
||||
--libdir="/usr/$(get_libdir)"/${PN}
|
||||
--datadir="/usr/share/${PN}"
|
||||
)
|
||||
|
||||
tc-export CC CXX
|
||||
|
||||
# Stock premake5 does not work, use the shipped one
|
||||
# TODO: revisit this, see above BDEPEND note re premake5
|
||||
emake -C "${S}"/build/premake/premake5/build/gmake2.unix
|
||||
|
||||
# Regenerate scripts.c so our patch applies
|
||||
cd "${S}"/build/premake/premake5 || die
|
||||
"${S}"/build/premake/premake5/bin/release/premake5 embed || die
|
||||
|
||||
# Rebuild premake again
|
||||
emake -C "${S}"/build/premake/premake5/build/gmake2.unix clean
|
||||
emake -C "${S}"/build/premake/premake5/build/gmake2.unix
|
||||
|
||||
# Run premake to create build scripts
|
||||
cd "${S}"/build/premake || die
|
||||
"${S}"/build/premake/premake5/bin/release/premake5 \
|
||||
--file="premake5.lua" \
|
||||
--outpath="../workspaces/gcc/" \
|
||||
--os=linux \
|
||||
"${myconf[@]}" \
|
||||
gmake2 \
|
||||
|| die "Premake failed"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
tc-export AR
|
||||
|
||||
# Build 3rd party fcollada
|
||||
einfo "Building bundled fcollada"
|
||||
emake -C libraries/source/fcollada/src
|
||||
|
||||
# Build bundled NVTT
|
||||
# nvtt is abandoned upstream and 0ad have forked it and added fixes.
|
||||
# Use their copy. bug #768930
|
||||
if use nvtt ; then
|
||||
cd libraries/source/nvtt || die
|
||||
elog "Building bundled NVTT (bug #768930)"
|
||||
./build.sh JOBS="-j$(makeopts_jobs)" || die "Failed to build bundled NVTT"
|
||||
cd "${S}" || die
|
||||
fi
|
||||
|
||||
# Build bundled SpiderMonkey
|
||||
# We really can't use the system SpiderMonkey right now.
|
||||
# Breakages occur even on minor bumps in upstream SM,
|
||||
# e.g. bug #768840.
|
||||
cd libraries/source/spidermonkey || die
|
||||
elog "Building bundled SpiderMonkey (bug #768840)"
|
||||
XARGS="${EPREFIX}/usr/bin/xargs" ./build.sh JOBS="-j(makeopts_jobs)" || die "Failed to build bundled SpiderMonkey"
|
||||
cd "${S}" || die
|
||||
|
||||
# Build 0ad itself!
|
||||
elog "Building 0ad"
|
||||
emake -C build/workspaces/gcc verbose=1 JOBS="-j$(makeopts_jobs)"
|
||||
|
||||
# Build assets
|
||||
# (We only do this if we're using a snapshot/non-release)
|
||||
# See bug #771147 (comment 3) and the old 0ad-data ebuild
|
||||
# Warning: fragile!
|
||||
if [[ ${PV} == 9999 || ${PV} == *_pre* ]]; then
|
||||
# source/lib/sysdep/os/linux/ldbg.cpp:debug_SetThreadName() tries to open /proc/self/task/${TID}/comm for writing.
|
||||
addpredict /proc/self/task
|
||||
|
||||
# Based on source/tools/dist/build-archives.sh used by source/tools/dist/build.sh.
|
||||
local archivebuild_input archivebuild_output mod_name
|
||||
for archivebuild_input in binaries/data/mods/[A-Za-z0-9]*; do
|
||||
mod_name="${archivebuild_input##*/}"
|
||||
archivebuild_output="archives/${mod_name}"
|
||||
|
||||
mkdir -p "${archivebuild_output}" || die
|
||||
|
||||
einfo pyrogenesis -archivebuild="${archivebuild_input}" -archivebuild-output="${archivebuild_output}/${mod_name}.zip"
|
||||
LD_LIBRARY_PATH="binaries/system" binaries/system/pyrogenesis \
|
||||
-archivebuild="${archivebuild_input}" \
|
||||
-archivebuild-output="${archivebuild_output}/${mod_name}.zip" \
|
||||
|| die "Failed to build assets"
|
||||
|
||||
if [[ -f "${archivebuild_input}/mod.json" ]]; then
|
||||
cp "${archivebuild_input}/mod.json" "${archivebuild_output}" || die
|
||||
fi
|
||||
|
||||
rm -r "${archivebuild_input}" || die
|
||||
mv "${archivebuild_output}" "${archivebuild_input}" || die
|
||||
done
|
||||
|
||||
# Based on source/tools/dist/build-unix-win32.sh used by source/tools/dist/build.sh.
|
||||
rm binaries/data/config/dev.cfg || die
|
||||
rm -r binaries/data/mods/_test.* || die
|
||||
fi
|
||||
}
|
||||
|
||||
src_test() {
|
||||
cd binaries/system || die
|
||||
./test -libdir "${S}/binaries/system" || die "Failed tests"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
newbin binaries/system/pyrogenesis 0ad
|
||||
use editor && newbin binaries/system/ActorEditor 0ad-ActorEditor
|
||||
|
||||
# Merged from 0ad-data
|
||||
# bug #771147 (comment 3)
|
||||
insinto /usr/share/${PN}
|
||||
doins -r binaries/data/{l10n,config,mods,tools}
|
||||
|
||||
# Install bundled SpiderMonkey and nvtt
|
||||
# bug #771147 (comment 1)
|
||||
exeinto /usr/$(get_libdir)/${PN}
|
||||
doexe binaries/system/{libCollada,libmozjs78-ps-release,libnvtt,libnvcore,libnvimage,libnvmath}.so
|
||||
use editor && doexe binaries/system/libAtlasUI.so
|
||||
|
||||
dodoc binaries/system/readme.txt
|
||||
doicon -s 128 build/resources/${PN}.png
|
||||
make_desktop_entry ${PN}
|
||||
}
|
@ -1,10 +1,9 @@
|
||||
AUX 0ad-0.0.21_alpha-gentoo.patch 3905 BLAKE2B 265020af1e1df234d0932c6294e0cda9c0f48bc1b311d6770c8347431c17e5e99c68f4c52cf6e1277ffb2e57431a6c237d2dc4f452e563eb343b06f62ab1eede SHA512 592e9fdff6ef6d88efc9c4a5c856e41240845187cc4a4b3d9d6b5c616eb1f664fdf702b7b0a30cdfeedd6d87ac0fab913df477567b84d42e13d2cf2761cfdec8
|
||||
AUX 0ad-0.0.23b-header_includes_fix.patch 463 BLAKE2B 9148cd302596bd1d37df7d93e72794530cf38eadeb26af1a05dda96c9dfde5022e2346eb92d165b434d82450deee06d539c89855bcad6a41285e087fd3417904 SHA512 df4cbe5f8c00c2ec4539794dfa4904a129e4730ae109e7678d9e201370ea00a00b1352ebf1f9fba46fcf48f0a7f46de1ec51613aa58f56ecd4a0f5f051c0524f
|
||||
AUX 0ad-0.0.24_alpha_pre20210116040036-build.patch 5971 BLAKE2B 968ab7cbfa2b84312937c1f317e15ad9165fd951995dba90eef9b262448a066dc0403f0acf5fb4d40e372455b47d6b0f79c7a078601a8172d185e35463b383ed SHA512 391dc3c02184c9e67c21460833d19e386c0cb53c0bed663df531cc0efecfbe4b9a85c75b8ca682b2cd40891dd0719603108d96a21f8e5ba989fb0951713a1571
|
||||
DIST 0ad-0.0.23-alpha-unix-build.tar.xz 31907988 BLAKE2B 567b9e1b5cd653206194e042f4f0859cd4f9afe75d52d3f480a328b76fdcdd746254502fbf284f790b4932c912ff31453bbc8c986c879ad76baa3d2a5db802c9 SHA512 4a1c86b19e0d8ec7d9b8bf75428df0255f95e7f991f419734f9b6ddc288a537405a34c5d7081f1a97475155c49013af85dee5c0265c35c7dbc003b46637a03d7
|
||||
DIST 0ad-0.0.23b-alpha-unix-build.tar.xz 31922812 BLAKE2B db7d6bf1a2bb084870b914cf974bfdb19812ff6f9391e5bc5213ae215fc670b77bd4508a5432aa3e47bf327bd37d4bb14961ab3332b165b53327c3f01a935ac1 SHA512 82934313c46c4fd89e3841d5bbf901904abbd2108e9749529d7282bd24ac53b9e6878681c06e6019f4d8ec0e425c28300b0aafc9610a66a331777ffb58ed6135
|
||||
DIST 0ad-0.0.24_alpha_pre20210116040036.tar.gz 2562395684 BLAKE2B 03d6655f7aa1f2f91a87536a7f2afa465585856c4209ddc05e666e1e5596416883596331118ac4257ff314b04d8a5c08821eaa6ae76e5d3095146ab04f8c79ed SHA512 e1239a56b184a87708c87fc03ca41190a16d813e495c5d81ee073df98761f1524a23902e5d03a21a1b1f657b496fce6eeee4a5ef22eee30f70fbe3b0dbd44510
|
||||
EBUILD 0ad-0.0.23_alpha.ebuild 3408 BLAKE2B bb6fbd77a2e9a0b27f086b33bb347ac5c5a8c76277b967359dfd8b4c7b6ea4b3f296aa150bacc3b3dd9a1460e5ebda436ad1429c5c1eaefe826a64403417ac1c SHA512 99db5ad39c1e0fe4ec9762df7c27e5ae12a1234007cd5d6e229110471affa705373015bb6e42e23b1f8ace93c5a3bae4afc204d966c5940f810415cd255186bc
|
||||
EBUILD 0ad-0.0.23b_alpha.ebuild 3467 BLAKE2B 567338478f564ebc53a299e132d47188c4db5d9bdea314d55539442ce1ca256dd4df5e50b24997a54aaf0dd9c3542a06a826830bf98833c7a49a9d3e37207ce7 SHA512 5b8198f364b87faa96adf108e252ea5d55d1e06f459b6c0e45901c737bb1cd1ca8c6ec1f08cea5dade892dd27d6572caad29249aed2ca15a3e421afed046ab79
|
||||
EBUILD 0ad-0.0.24_alpha_pre20210116040036-r1.ebuild 4263 BLAKE2B e4b252da916bd111bea329ebc9be7ac6f223f2f29a7caa6f74c63c56e68d602e54956b97e1496d5a41618ec6fe9d290d8ea917d4b81c013145f81ab44e634819 SHA512 52212dbe220e95b4634a4c0bcf4cc02a17254d836a4af43e0d76829e6eac3ce1fbaee30f64b41d8e4152e4a47bf5cf5a220ae6a6b8f0187044aec5765ec70b87
|
||||
MISC metadata.xml 668 BLAKE2B 9bfa86da2d6e1631217082f88905d8d8be7a2c91248839b9a0f5da9d0c214552b11f4af861eb04072e4645b47505d83d0b93c1313f7a3857b1006f94a699b3b2 SHA512 7aab21c31587f1cce5b4635ace0fbbb5bcdc2a6d811df68494ac1fb251fbfc75911cfa3a9e1a60c28f684f64a919164c6e3504fd3fbba3b0ec05afe8278ae343
|
||||
DIST 0ad-0.0.24b-alpha-unix-build.tar.xz 75546740 BLAKE2B a724abba6bed4b580670588e9dcfe0f75f6cef0fbde6ad666356e96213c685932edd0a1daafb5dd04206870c2c8222340c9c51e83076ec2911cbb5377ca00666 SHA512 8173d393eb1bc57c38bef0076ba973ef46c877c06644365189c0887cd3152adba51d26b553e42221fd14343e9830a3a275bfcd9b28f66281e282ea3f247730ea
|
||||
DIST 0ad-0.0.24b-alpha-unix-data.tar.xz 828553992 BLAKE2B 2081225d88d475ed0899648994a900677bc3280bb2ba6cf92354ece82b90ddcefddb48458fa23e2de97100e58f4db8db408d4b50d0306a8c3efe47d263064bf0 SHA512 d7804d25ddf376028f230a31c6fc1201dfa366b3d5434569a1a7852bb4c400fb14e5c8934c5d6c6295320cf2e62c64be83b1e3c4c27fd116115bfe7d01106726
|
||||
EBUILD 0ad-0.0.24_alpha_pre20210116040036-r2.ebuild 6140 BLAKE2B 50e5c807012bd422ad7629e849696592a3a7a7c9bc2130658342cae4ad4ccd9c16f0be8e360037513777ccf3b7e7b253a546311f179ed33d3eb9363c41d0d9b2 SHA512 7c1df2ce366003d11a4816e4b4d4615eeb41799ceac185140e95bf4c18c0c71f0a513c485058a029c135c4519da48a08ad729abddebadcfdde7361c44b0204fd
|
||||
EBUILD 0ad-0.0.24b_alpha.ebuild 6257 BLAKE2B 335420f963d4e1f0ee58e0ee0083bcaa42d92e1171b72302aa67c83b5579a2dd2474cd098974ce6655b7badaca197c0c0988e6f4186b905be26d2fe8025b9490 SHA512 769b758dd32e7880b1004d3b35d272d918d70c70d2fcad405a1ac64e7bc8445b988b62d09fc89fb28f297c2d758093f33cd3d6d6510c49a697a48892c0e94ab7
|
||||
MISC metadata.xml 715 BLAKE2B b611d7f5a8ad31e43b744dec6607293165c3e60a901b3598d62859a6d65852c9369429c090e557a970320947557ab5d3e418ecd0a39b0b1ae7a77384e6202b28 SHA512 43cd54bb88313ef72649034afbbde262917d6aa390eb7dd5b1369d851d9dcbed7d0c03169edf0d156ad0351ae7a8e485a20217e6c686b9c6b266303c8ce2b481
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in new issue