parent
3a1299f6df
commit
a23f7c45b7
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 +1,2 @@
|
||||
DIST eselect-repository-8.tar.gz 6774 BLAKE2B d22c2befc744e21b7619a490e9c41f1052c4077135ba5247ea9558f15f7dc5c06642dd934c41ad8cb3bedb40398876ea9d508276bde6f214fe06d5f80b19911b SHA512 b1fd13e3bfa323dea7fec53a33865352545a070df472c9db0b2901945a795833eb8a2b7b264005d94fe6e92dce57414a7e995157d28c8d26048bedcbf42adf96
|
||||
DIST eselect-repository-9.tar.gz 6791 BLAKE2B 66ca783b66ead0bef0e85839723844147919ca7caf4e66f962a869118bd0f7484ec183c5c7ab0327d960cb8ec9c5aae0d46b5565c121f9df9d3fe90a19426354 SHA512 9bd1f1ce15da01f76248d93d368c133e22ed77aa6dfd778d10295db649783583c203bc6c0388dec712eea5cc38b76b7527528a1e27a6a526f024eaf73e06b6ab
|
||||
|
@ -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,2 +1,3 @@
|
||||
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
|
||||
|
@ -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,2 +1 @@
|
||||
DIST krop-0.5.1.tar.gz 42719 BLAKE2B e0baa3c14d9ce63815615eae004a08af720868d584262901eccbc569852177e07d5df659ea560d7e9cbdc4325daef8c35acd9c200440a8dfd73c19b274d8de37 SHA512 2bfd2a5d762454ab45538707c6f333d2b0947b6b203d6e7bd2d9d0d574d79de8ee6b30d87b17d6afea604456b915f323b855c9c9af5c169c192b0a01634075ca
|
||||
DIST krop-0.6.0.tar.gz 48331 BLAKE2B ca6a00a410ed4e18a401fab3a21bc49c86f73165f68b192ab83c8fad74111ba9a9941f464a2646faa5a3317bbb45cdc89bed19c901999c0b11db353ac2997a65 SHA512 51a988e4fcb65d11cc26cf5b0c808e79097a66ef8ec4751a6c051289cd77b3328ebc8ecd9829adc466f87330beb8bc715d290cc20be415a7b8f179378b7bcb4f
|
||||
|
@ -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,2 +1 @@
|
||||
DIST xournalpp-1.0.18.tgz 14892343 BLAKE2B d2aaede0e85d724cf8032f38a6fa2c3c4862f26d410dbab8264dd50ab8ee0d26889eeab433ef615fe9ce271710192eca380ff80149431d5368125926cf8d2b25 SHA512 90568a2674a18ff711ecef5f1a66ea1c5746d7f1fde271b36342d9bf48e096e63075cf7fd8b69e39e144273a4d1b922c415eee929eba94b2fa515a0bb481815a
|
||||
DIST xournalpp-1.0.20.tgz 14895705 BLAKE2B f1a4721f4f0b2f0e666c7466d7ddbd1f299172576d5f86b4ab8150d3bf05231cc7bb40e750394d892fe8ce32b6106e29456e3e9fa976b1bf07a808bf1bfff953 SHA512 c73783d5e40262b2c6f7f6be372839c73a19ab25fc258a7524660654526a3a35a6ba16ba282f793e7982ff97d006703c103fdd579fc16a3e636bf6daf94fe346
|
||||
|
@ -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
|
||||
}
|
@ -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 +1,2 @@
|
||||
DIST Algorithm-Diff-1.1903.tar.gz 34174 BLAKE2B 85d64400c722d9547efb0c63d717f9c70cdd9f3b8282ca67d1b513507adeba0af68b2e45fe46c53ebaea85c3cd3f4e6d894c68d68587d88b01ba3eb362bf1458 SHA512 61632be4c19a03ccacaa218ab7cb8bdbc53a4a6030b8173a59c7611056375536788392c1da00ab88f3df9884fc8a67825efc83b70e2e564664d5187021d6b106
|
||||
DIST Algorithm-Diff-1.201.tar.gz 30047 BLAKE2B 7502eec51e0fd40883b176947853e2f68fdc524545413eec2147ac5de9c1e062cba44b2939c2221b81e63ebb1ed98fc1912447941f710d4676f7e33ab6d1064c SHA512 b22b55f4e45748da0e8aca556dc2155ef2dbcfe42ac5cbe4aa59e4cc13c95a141e6324a9ab0acd7fbc3d97e761e0778176df0f7e726af837a7b7d075106ad8d0
|
||||
|
@ -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,2 +1,2 @@
|
||||
DIST Lab-Measurement-3.721.tar.gz 615005 BLAKE2B 90982b7d5cbb1b62c3bd2444645649e39704d44e519e6484dabb3702fbdfccf82ea5af1c6ba31b5f75eca4a779eaac4d83cb6fe92232ae4bdde4618d7e5477a4 SHA512 4d5e493339c7d50f96dae999d1f2c2fe59e9e970862f4ac8747a4e9e89aad72e1c72801bffddcf9f1e7a434f9eb6b23a21f563cd1612fdb2b986af9ea118e731
|
||||
DIST Lab-Measurement-3.740.tar.gz 630593 BLAKE2B d3b7bb07e9a99f993a900fc8bcf391c69999f052535dc505259dd212374a3a2fc681d187a0c3119be915dfaf698901defc9686b38f1b0c11772182bf5f64bd2e SHA512 b036821a3af73d2278dbfd0e08efb5f5eb1f07a71203ba0a85208bdbab7142e0182f9bae6045233bbbb3d992d6598cc5c3401ef7c2e694ddbd3f3a6884271b70
|
||||
DIST Lab-Measurement-3.741.tar.gz 621051 BLAKE2B bcde314015e410aec93e4bace1990621f58bc81dc3f010f27a37295b70432f3f65b0d46382e18bb57b18b00c3001a1757647a9f35cfe8a214036dd57bc27a64f SHA512 f1b43177c720a10567c99edfba78c0c35659f1b82b2eb03f66e383767a9ef5b415c9014b50013ba5caddf67bb4bd87dadea4295923a161f53a85d23ae8d8c6a0
|
||||
|
Binary file not shown.
Binary file not shown.
@ -1,5 +1 @@
|
||||
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
|
||||
|
@ -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 @@
|
||||
DIST cython-test-exception-raiser-1.0.0.gh.tar.gz 4273 BLAKE2B 028c3ded07b137a186055b4fa8f9d7306585942ad7ee022a37b3df065dae5d2110d6ddcd874f3dc2c687f10da1122329194b817b1a78a76ff8de557997ca2a19 SHA512 4e1c5dd65a7c493cf43213badfcaaeb0df9c4774cc6f90cfd437612126893e7831d218c707599adb97dbee7ebaaa2372c796c634d75738bd06328735eb8f1189
|
@ -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,2 +1 @@
|
||||
DIST pyrqlite-2.0.tar.gz 7224 BLAKE2B f3de4d4d6f0598c6dc21e323db4c717f7f8dc85f6e592ea9dfb209ba778d1f16049d40e39b8d98c94dec61c02949ba1fabeae29e25ec8afbe4810df52b6210df SHA512 9d284161e492683955000dd3e3f0593b79e69ba5eb087bee4d3ffc1e4be9de1c362212936b10e1781538eacd838e6ed22adfc82e8cc0dd00e1d3318a4dc14720
|
||||
DIST pyrqlite-2.1.tar.gz 19069 BLAKE2B f5ce9c1201632e81ba6f7f41e3ef54bd5fff354c869e73879e8b324ad12aea6476eb197119a22ba15d58c9ab3503435b0110ce9bfe2c21d16fe10b44afbe486a SHA512 6a63860378021b29ec0e8d81cf2c3534c97cec2c65d60e8ac2ec9b0a7900efb9a9a63546da44d8be89570eae2fd47eca4004167d11438b2dd9eb6bc68e646bad
|
||||
|
@ -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,2 +1 @@
|
||||
DIST sqlalchemy-rqlite-1.0.tar.gz 3910 BLAKE2B c2a07ba91812ea2223bdea4e715b364a96b66057f2ed1c7bc0d373860880f3e0d7188ea8d513b127d8c7138695b9703b4a2ed5f6a4a001a8b2ae68020189a058 SHA512 794d0a1d80803f624af4b530efe277947d3a8fa7001df2177de6bdb34ffc9fc76e22c8b73caad7cda02429ddc251fdcbdd8e95ea286a6540054efb28ee53d2bb
|
||||
DIST sqlalchemy-rqlite-1.1.tar.gz 4281 BLAKE2B 09cee627790d15715c0124a1065f5cc2c72820a652a99e4c2088de21c980071f27c451e438e84d4c92222d19b651b0e239fac8280c2bbb33c55e76c9b77868b7 SHA512 da11cadd2b6dd0f3501bdf717ad7dd7552edfcf7f32a57ce09b6dadc7eb7fb31fd92e7143151a3e3b2d5f75793f6e5096d13dbe446cb71cfa901d6ff8d4c6e12
|
||||
|
@ -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
|
||||
}
|
@ -1,3 +1,4 @@
|
||||
DIST Twisted-19.10.0.tar.bz2 3118485 BLAKE2B a0d532b67177aa017e463bf823d7842d4f6ff694f78cd7600865718ffe861023a53ea6a922f7de232133edba26f5255074d7ef277ce8f3bdf02d556ccf4abf41 SHA512 de8d7fd0b2081cebeff68b060c8469377011648bc563a94a993d3530fb007ed42c3a54925c9a10c465ee7a3065cc9108ace12d10d358223fab13494becb9ac4b
|
||||
DIST Twisted-20.3.0.tar.bz2 3127793 BLAKE2B 2e85fc3ec26d89e563c9e79a5d2adea81ff1745d18f0f92b8d45ae3729fbddf09998664257880372c7a4caeb5977c5cad7c863596b8c27ad7890275cead9f763 SHA512 1b850e5fc21a3630ead4c2cc3622c16e78bb3be38ab11d021779b7ce3d3c30acc4e19d79c7791a5fce6c5c6e09c2baa349901dffe952de67dd98eec419846365
|
||||
DIST twisted-21.2.0.tar.gz 3882978 BLAKE2B ba37572b0f9eadf2962a2730e4c2c0ed65f582b11b3350034660a2c53c5cd0892b19867d19e0201d4808c09fca621dbe540d153dc6c7d5827d45d2423d19d28b SHA512 fa743dcf22f3c17dfd17f39b7df0cc31fb8ce3e989478ada9a026424ec2de35e6a403ef35acdef5905eed008d42e3c2fee6b7ccdda433e6c250f1feaa83ea8a4
|
||||
DIST twisted-regen-cache.gz 911 BLAKE2B ffd3fcda6c67ffe6fd3ef581c8d507548396b66ed0708e9a5c790095e579c0d5f0f71596acf05712989da2ddef2b8d437eca973bc4d80ef8a9fa852915f38305 SHA512 95a9b931c73017d16d1b5e6b41345dddffe62b6af1a8e93b5e40d06d3d15be17b0dd0181c767ffeeb791534d463764ef9e066fa6c2ee2ac4b53c86d1da8fce03
|
||||
|
@ -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,2 +1,3 @@
|
||||
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
|
||||
|
@ -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,3 +1,3 @@
|
||||
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
|
||||
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
|
||||
|
Binary file not shown.
Binary file not shown.
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 +1 @@
|
||||
Sun, 28 Feb 2021 20:08:27 +0000
|
||||
Mon, 01 Mar 2021 06:38:29 +0000
|
||||
|
@ -1 +1 @@
|
||||
Sun, 28 Feb 2021 20:08:27 +0000
|
||||
Mon, 01 Mar 2021 06:38:30 +0000
|
||||
|
Binary file not shown.
Binary file not shown.
@ -1,14 +0,0 @@
|
||||
DEFINED_PHASES=install postinst setup unpack
|
||||
DEPEND=acct-group/tsm >=app-arch/rpm2targz-9.0.0.3g virtual/pkgconfig
|
||||
DESCRIPTION=IBM Spectrum Protect (former Tivoli Storage Manager) Backup/Archive Client, API
|
||||
EAPI=6
|
||||
HOMEPAGE=https://www.ibm.com/us-en/marketplace/data-protection-and-recovery
|
||||
IUSE=acl java +tsm-cit +tsm-hw
|
||||
KEYWORDS=-* amd64
|
||||
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
|
||||
RDEPEND=acct-group/tsm dev-libs/expat dev-libs/libxml2 sys-fs/fuse:0 acl? ( sys-apps/acl ) java? ( >=virtual/jre-1.7 )
|
||||
RESTRICT=strip
|
||||
SLOT=0
|
||||
SRC_URI=ftp://ftp.software.ibm.com/storage/tivoli-storage-management/maintenance/client/v8r1/Linux/LinuxX86/BA/v816/8.1.6.0-TIV-TSMBAC-LinuxX86.tar
|
||||
_eclasses_=desktop c0d27bf73aa08ca05b663dbd31fbef28 edos2unix 33e347e171066657f91f8b0c72ec8773 epatch e8f1ec13660dc2f44b32775765d85e42 estack 055c42df72f76a4f45ec92b35e83cd56 eutils 2d5b3f4b315094768576b6799e4f926e l10n 8cdd85e169b835d518bc2fd59f780d8e ltprune 4f3f2db5ce3ccbeeacdf3f94954043aa multilib d410501a125f99ffb560b0c523cd3d1e pax-utils a41d1fd1c111289ffa04490de6ee79d7 preserve-libs ef207dc62baddfddfd39a164d9797648 readme.gentoo-r1 22ae82e140bdd95d17a34fd5fd733190 rpm 760ff223c2c4299b68ea901e24c4cabd systemd 74b223e42834adf09a2d21fe5fe13741 toolchain-funcs 24921b57d6561d87cbef4916a296ada4 vcs-clean 2a0f74a496fa2b1552c4f3398258b7bf versionator d3fb3ba33acc3bbbdc4d7970227c100d wrapper 4251d4c84c25f59094fd557e0063a974
|
||||
_md5_=010614669d0bd4924b637ff59a99ea4b
|
Binary file not shown.
File diff suppressed because one or more lines are too long
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in new issue