Sync with portage [Wed Nov 25 13:45:56 MSK 2020].

akrasnyh 1811
Calculate Linux 3 years ago
parent 0fd37cbccc
commit 1b63612ab9

Binary file not shown.

Binary file not shown.

@ -1 +1,2 @@
DIST Bitwarden-1.22.2-amd64.deb 47983282 BLAKE2B f84bdfb44803fc13292b4fdd8653a9217efcfea08ed58407929d3061bce436727f1ec86ff99e6b968de17510ddb0aaeb2781beaae198661d30496050db90cf3f SHA512 131e49ef2dc74b601e31eb6a07da92ae43747c4fdf4729b84fb35f95c4bc38731e6b6f9185b919ede5c7c2cd4813dbddaea172d1287cd60f747b3032e12c09e9
DIST Bitwarden-1.23.0-amd64.deb 47990216 BLAKE2B 7383c4b2b4b0c60bc78abdbb333846ed12d00025d90a6b2c49c177ffe53046652c4e8e4738a6d25495e087c38835ae03131a2f332cf9afaa0c00a613ea5e1349 SHA512 f23f8ba987308a2753fa8fc9450f01abcc49f2917d9a9f5feb64540ba0640630cd757a88d8aa3caad2a5f5383f8fdaac7845f59b33966dcc8ac6fec3cc3618c7

@ -0,0 +1,78 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit unpacker xdg-utils
MY_PN="Bitwarden"
DESCRIPTION="Bitwarden password manager desktop client"
HOMEPAGE="https://bitwarden.com/"
SRC_URI="https://github.com/bitwarden/desktop/releases/download/v${PV}/Bitwarden-${PV}-amd64.deb"
LICENSE="GPL-3"
SLOT="0"
KEYWORDS="~amd64"
IUSE=""
RDEPEND="
app-accessibility/at-spi2-atk:2
app-accessibility/at-spi2-core:2
app-crypt/libsecret
dev-libs/atk
dev-libs/expat
dev-libs/glib
dev-libs/nspr
dev-libs/nss
media-libs/alsa-lib
net-print/cups
sys-apps/dbus
sys-apps/util-linux
x11-libs/cairo
x11-libs/gdk-pixbuf:2
x11-libs/gtk+:3
x11-libs/libX11
x11-libs/libxcb
x11-libs/libXcomposite
x11-libs/libXcursor
x11-libs/libXdamage
x11-libs/libXext
x11-libs/libXfixes
x11-libs/libXi
x11-libs/libXrandr
x11-libs/libXrender
x11-libs/libXScrnSaver
x11-libs/libXtst
x11-libs/pango
"
S="${WORKDIR}"
QA_PREBUILT="
opt/Bitwarden/*.so
opt/Bitwarden/bitwarden
opt/Bitwarden/chrome-sandbox
"
src_install() {
insinto /opt
doins -r opt/${MY_PN}
fperms 755 /opt/Bitwarden/bitwarden
fperms 4755 /opt/Bitwarden/chrome-sandbox
insinto /usr/share/applications
doins usr/share/applications/bitwarden.desktop
insinto /usr/share/icons
doins -r usr/share/icons/hicolor
}
pkg_postinst() {
xdg_desktop_database_update
xdg_icon_cache_update
}
pkg_postrm() {
xdg_desktop_database_update
xdg_icon_cache_update
}

@ -1,2 +1,2 @@
DIST sudo-1.9.2.tar.gz 3890859 BLAKE2B 879917b8045c999a17ef36006732509aa546ee6bb04de77191fb637aa0420d54f9e51ec69b697c22119d638393e9c84efcc1ca5e6e8ee5f0c08bb1ca07f3acea SHA512 20afdf2604b1c93395157382b24f225cd1ff88d3a892362e2d69fecd240c4e7171f05032c08be1778cd1dea6e460025e4241f57272fac0ea3550e220b6d73d21
DIST sudo-1.9.3p1.tar.gz 3958071 BLAKE2B b681c120faa5dc7f25e27c1be423d68cea70f63dcdfea2183fd386a34dec0376555453399d3f8886c66c6507343648d40b59a058710432154061b210df2a704c SHA512 3ad13fd03e5b371fd6bf7909731ffc11431d2182a744b654f7e5d4b810e47955d49bc78f551afe13ec56acbce694139c33a15bc022cea41b17af5496b8b7f89f
DIST sudo-1.9.4rc1.tar.gz 3990112 BLAKE2B f08f5651c6688bcf9ebaf95fcadeb5a78e7f78201d1d67fb9808b950df1f882b80b162acb79ee37c2b786045286202746fcb82c4659d57cafdfe74d4da79e86e SHA512 cf745dd1f798097fff38b6c74e9446005e589990b3580ba42e1af6bd68fbf084d6da836795a83f5222274ffff305a0899aae103723e68fd1c0ccaee7f16a477a

@ -1,308 +0,0 @@
# HG changeset patch
# User Todd C. Miller <Todd.Miller@sudo.ws>
# Date 1598395693 21600
# Node ID e30482f26924b07775d87ae591e54ad72e794d5e
# Parent 1ede927d99b3cb06ba514c9fd2fd7fa9a014a1b2
Use sigabbrev_np(3) to access signal abbreviations if supported.
glibc-2.32 has removed sys_sigabbrev[], we can use sigabbrev_np(3) instead.
diff -r 1ede927d99b3 -r e30482f26924 config.h.in
--- a/config.h.in Mon Aug 17 19:37:09 2020 -0600
+++ b/config.h.in Tue Aug 25 16:48:13 2020 -0600
@@ -740,6 +740,9 @@
/* Define to 1 if you have the `sig2str' function. */
#undef HAVE_SIG2STR
+/* Define to 1 if you have the `sigabbrev_np' function. */
+#undef HAVE_SIGABBREV_NP
+
/* Define to 1 if you use S/Key. */
#undef HAVE_SKEY
diff -r 1ede927d99b3 -r e30482f26924 configure
--- a/configure Mon Aug 17 19:37:09 2020 -0600
+++ b/configure Tue Aug 25 16:48:13 2020 -0600
@@ -23687,9 +23687,21 @@
if test x"${ac_cv_func_sig2str}${ac_cv_func_str2sig}" != x"yesyes"; then
- COMPAT_TEST_PROGS="${COMPAT_TEST_PROGS}${COMPAT_TEST_PROGS+ }strsig_test"
- HAVE_SIGNAME="false"
- ac_fn_c_check_decl "$LINENO" "sys_signame" "ac_cv_have_decl_sys_signame" "
+ for ac_func in sigabbrev_np
+do :
+ ac_fn_c_check_func "$LINENO" "sigabbrev_np" "ac_cv_func_sigabbrev_np"
+if test "x$ac_cv_func_sigabbrev_np" = xyes; then :
+ cat >>confdefs.h <<_ACEOF
+#define HAVE_SIGABBREV_NP 1
+_ACEOF
+
+fi
+done
+
+ if test x"${ac_cv_func_sigabbrev_np}" != x"yes"; then
+ COMPAT_TEST_PROGS="${COMPAT_TEST_PROGS}${COMPAT_TEST_PROGS+ }strsig_test"
+ HAVE_SIGNAME="false"
+ ac_fn_c_check_decl "$LINENO" "sys_signame" "ac_cv_have_decl_sys_signame" "
$ac_includes_default
#include <signal.h>
@@ -23705,7 +23717,7 @@
_ACEOF
if test $ac_have_decl = 1; then :
- HAVE_SIGNAME="true"
+ HAVE_SIGNAME="true"
fi
ac_fn_c_check_decl "$LINENO" "_sys_signame" "ac_cv_have_decl__sys_signame" "
@@ -23724,7 +23736,7 @@
_ACEOF
if test $ac_have_decl = 1; then :
- HAVE_SIGNAME="true"
+ HAVE_SIGNAME="true"
fi
ac_fn_c_check_decl "$LINENO" "sys_sigabbrev" "ac_cv_have_decl_sys_sigabbrev" "
@@ -23743,12 +23755,12 @@
_ACEOF
if test $ac_have_decl = 1; then :
- HAVE_SIGNAME="true"
-
-fi
-
- if test "$HAVE_SIGNAME" != "true"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for undeclared sys_sigabbrev" >&5
+ HAVE_SIGNAME="true"
+
+fi
+
+ if test "$HAVE_SIGNAME" != "true"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for undeclared sys_sigabbrev" >&5
$as_echo_n "checking for undeclared sys_sigabbrev... " >&6; }
if ${sudo_cv_var_sys_sigabbrev+:} false; then :
$as_echo_n "(cached) " >&6
@@ -23777,17 +23789,18 @@
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $sudo_cv_var_sys_sigabbrev" >&5
$as_echo "$sudo_cv_var_sys_sigabbrev" >&6; }
- if test "$sudo_cv_var_sys_sigabbrev" = yes; then
- $as_echo "#define HAVE_SYS_SIGABBREV 1" >>confdefs.h
-
- else
- case " $LIBOBJS " in
+ if test "$sudo_cv_var_sys_sigabbrev" = yes; then
+ $as_echo "#define HAVE_SYS_SIGABBREV 1" >>confdefs.h
+
+ else
+ case " $LIBOBJS " in
*" signame.$ac_objext "* ) ;;
*) LIBOBJS="$LIBOBJS signame.$ac_objext"
;;
esac
- SIGNAME=signame.lo
+ SIGNAME=signame.lo
+ fi
fi
fi
fi
diff -r 1ede927d99b3 -r e30482f26924 configure.ac
--- a/configure.ac Mon Aug 17 19:37:09 2020 -0600
+++ b/configure.ac Tue Aug 25 16:48:13 2020 -0600
@@ -3498,29 +3498,32 @@
dnl Also enable unit tests for sig2str() and str2sig().
dnl
if test x"${ac_cv_func_sig2str}${ac_cv_func_str2sig}" != x"yesyes"; then
- COMPAT_TEST_PROGS="${COMPAT_TEST_PROGS}${COMPAT_TEST_PROGS+ }strsig_test"
- HAVE_SIGNAME="false"
- AC_CHECK_DECLS([sys_signame, _sys_signame, sys_sigabbrev], [
- HAVE_SIGNAME="true"
- ], [ ], [
+ AC_CHECK_FUNCS([sigabbrev_np])
+ if test x"${ac_cv_func_sigabbrev_np}" != x"yes"; then
+ COMPAT_TEST_PROGS="${COMPAT_TEST_PROGS}${COMPAT_TEST_PROGS+ }strsig_test"
+ HAVE_SIGNAME="false"
+ AC_CHECK_DECLS([sys_signame, _sys_signame, sys_sigabbrev], [
+ HAVE_SIGNAME="true"
+ ], [ ], [
AC_INCLUDES_DEFAULT
#include <signal.h>
- ])
- if test "$HAVE_SIGNAME" != "true"; then
- AC_CACHE_CHECK([for undeclared sys_sigabbrev],
- [sudo_cv_var_sys_sigabbrev],
- [AC_LINK_IFELSE(
- [AC_LANG_PROGRAM([[extern char **sys_sigabbrev;]], [[return sys_sigabbrev[1];]])],
- [sudo_cv_var_sys_sigabbrev=yes],
- [sudo_cv_var_sys_sigabbrev=no]
- )
- ]
- )
- if test "$sudo_cv_var_sys_sigabbrev" = yes; then
- AC_DEFINE(HAVE_SYS_SIGABBREV)
- else
- AC_LIBOBJ(signame)
- SIGNAME=signame.lo
+ ])
+ if test "$HAVE_SIGNAME" != "true"; then
+ AC_CACHE_CHECK([for undeclared sys_sigabbrev],
+ [sudo_cv_var_sys_sigabbrev],
+ [AC_LINK_IFELSE(
+ [AC_LANG_PROGRAM([[extern char **sys_sigabbrev;]], [[return sys_sigabbrev[1];]])],
+ [sudo_cv_var_sys_sigabbrev=yes],
+ [sudo_cv_var_sys_sigabbrev=no]
+ )
+ ]
+ )
+ if test "$sudo_cv_var_sys_sigabbrev" = yes; then
+ AC_DEFINE(HAVE_SYS_SIGABBREV)
+ else
+ AC_LIBOBJ(signame)
+ SIGNAME=signame.lo
+ fi
fi
fi
fi
diff -r 1ede927d99b3 -r e30482f26924 lib/util/sig2str.c
--- a/lib/util/sig2str.c Mon Aug 17 19:37:09 2020 -0600
+++ b/lib/util/sig2str.c Tue Aug 25 16:48:13 2020 -0600
@@ -1,7 +1,7 @@
/*
* SPDX-License-Identifier: ISC
*
- * Copyright (c) 2012-2015, 2017-2019 Todd C. Miller <Todd.Miller@sudo.ws>
+ * Copyright (c) 2012-2015, 2017-2020 Todd C. Miller <Todd.Miller@sudo.ws>
*
* Permission to use, copy, modify, and distribute this software for any
* purpose with or without fee is hereby granted, provided that the above
@@ -32,20 +32,24 @@
#include <unistd.h>
#include "sudo_compat.h"
+#include "sudo_util.h"
-#if defined(HAVE_DECL_SYS_SIGNAME) && HAVE_DECL_SYS_SIGNAME == 1
-# define sudo_sys_signame sys_signame
-#elif defined(HAVE_DECL__SYS_SIGNAME) && HAVE_DECL__SYS_SIGNAME == 1
-# define sudo_sys_signame _sys_signame
-#elif defined(HAVE_DECL_SYS_SIGABBREV) && HAVE_DECL_SYS_SIGABBREV == 1
-# define sudo_sys_signame sys_sigabbrev
-#else
-# ifdef HAVE_SYS_SIGABBREV
- /* sys_sigabbrev is not declared by glibc */
-# define sudo_sys_signame sys_sigabbrev
+#if !defined(HAVE_SIGABBREV_NP)
+# if defined(HAVE_DECL_SYS_SIGNAME) && HAVE_DECL_SYS_SIGNAME == 1
+# define sigabbrev_np(_x) sys_signame[(_x)]
+# elif defined(HAVE_DECL__SYS_SIGNAME) && HAVE_DECL__SYS_SIGNAME == 1
+# define sigabbrev_np(_x) _sys_signame[(_x)]
+# elif defined(HAVE_SYS_SIGABBREV)
+# define sigabbrev_np(_x) sys_sigabbrev[(_x)]
+# if defined(HAVE_DECL_SYS_SIGABBREV) && HAVE_DECL_SYS_SIGABBREV == 0
+ /* sys_sigabbrev is not declared by glibc */
+ extern const char *const sys_sigabbrev[NSIG];
+# endif
+# else
+# define sigabbrev_np(_x) sudo_sys_signame[(_x)]
+ extern const char *const sudo_sys_signame[NSIG];
# endif
-extern const char *const sudo_sys_signame[NSIG];
-#endif
+#endif /* !HAVE_SIGABBREV_NP */
/*
* Translate signal number to name.
@@ -77,15 +81,18 @@
return 0;
}
#endif
- if (signo > 0 && signo < NSIG && sudo_sys_signame[signo] != NULL) {
- strlcpy(signame, sudo_sys_signame[signo], SIG2STR_MAX);
- /* Make sure we always return an upper case signame. */
- if (islower((unsigned char)signame[0])) {
- int i;
- for (i = 0; signame[i] != '\0'; i++)
- signame[i] = toupper((unsigned char)signame[i]);
+ if (signo > 0 && signo < NSIG) {
+ const char *cp = sigabbrev_np(signo);
+ if (cp != NULL) {
+ strlcpy(signame, cp, SIG2STR_MAX);
+ /* Make sure we always return an upper case signame. */
+ if (islower((unsigned char)signame[0])) {
+ int i;
+ for (i = 0; signame[i] != '\0'; i++)
+ signame[i] = toupper((unsigned char)signame[i]);
+ }
+ return 0;
}
- return 0;
}
errno = EINVAL;
return -1;
diff -r 1ede927d99b3 -r e30482f26924 lib/util/str2sig.c
--- a/lib/util/str2sig.c Mon Aug 17 19:37:09 2020 -0600
+++ b/lib/util/str2sig.c Tue Aug 25 16:48:13 2020 -0600
@@ -1,7 +1,7 @@
/*
* SPDX-License-Identifier: ISC
*
- * Copyright (c) 2019 Todd C. Miller <Todd.Miller@sudo.ws>
+ * Copyright (c) 2019-2020 Todd C. Miller <Todd.Miller@sudo.ws>
*
* Permission to use, copy, modify, and distribute this software for any
* purpose with or without fee is hereby granted, provided that the above
@@ -37,19 +37,22 @@
#include "sudo_compat.h"
#include "sudo_util.h"
-#if defined(HAVE_DECL_SYS_SIGNAME) && HAVE_DECL_SYS_SIGNAME == 1
-# define sudo_sys_signame sys_signame
-#elif defined(HAVE_DECL__SYS_SIGNAME) && HAVE_DECL__SYS_SIGNAME == 1
-# define sudo_sys_signame _sys_signame
-#elif defined(HAVE_DECL_SYS_SIGABBREV) && HAVE_DECL_SYS_SIGABBREV == 1
-# define sudo_sys_signame sys_sigabbrev
-#else
-# ifdef HAVE_SYS_SIGABBREV
- /* sys_sigabbrev is not declared by glibc */
-# define sudo_sys_signame sys_sigabbrev
+#if !defined(HAVE_SIGABBREV_NP)
+# if defined(HAVE_DECL_SYS_SIGNAME) && HAVE_DECL_SYS_SIGNAME == 1
+# define sigabbrev_np(_x) sys_signame[(_x)]
+# elif defined(HAVE_DECL__SYS_SIGNAME) && HAVE_DECL__SYS_SIGNAME == 1
+# define sigabbrev_np(_x) _sys_signame[(_x)]
+# elif defined(HAVE_SYS_SIGABBREV)
+# define sigabbrev_np(_x) sys_sigabbrev[(_x)]
+# if defined(HAVE_DECL_SYS_SIGABBREV) && HAVE_DECL_SYS_SIGABBREV == 0
+ /* sys_sigabbrev is not declared by glibc */
+ extern const char *const sys_sigabbrev[NSIG];
+# endif
+# else
+# define sigabbrev_np(_x) sudo_sys_signame[(_x)]
+ extern const char *const sudo_sys_signame[NSIG];
# endif
-extern const char *const sudo_sys_signame[NSIG];
-#endif
+#endif /* !HAVE_SIGABBREV_NP */
/*
* Many systems use aliases for source backward compatibility.
@@ -154,11 +157,11 @@
}
}
- /* Check sys_signame[]. */
for (signo = 1; signo < NSIG; signo++) {
- if (sudo_sys_signame[signo] != NULL) {
+ const char *cp = sigabbrev_np(signo);
+ if (cp != NULL) {
/* On macOS sys_signame[] may contain lower-case names. */
- if (strcasecmp(signame, sudo_sys_signame[signo]) == 0) {
+ if (strcasecmp(signame, cp) == 0) {
*result = signo;
return 0;
}

@ -1,263 +0,0 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit pam multilib libtool systemd tmpfiles
MY_P="${P/_/}"
MY_P="${MY_P/beta/b}"
DESCRIPTION="Allows users or groups to run commands as other users"
HOMEPAGE="https://www.sudo.ws/"
if [[ ${PV} == "9999" ]] ; then
inherit mercurial
EHG_REPO_URI="https://www.sudo.ws/repos/sudo"
else
uri_prefix=
case ${P} in
*_beta*|*_rc*) uri_prefix=beta/ ;;
esac
SRC_URI="https://www.sudo.ws/sudo/dist/${uri_prefix}${MY_P}.tar.gz
ftp://ftp.sudo.ws/pub/sudo/${uri_prefix}${MY_P}.tar.gz"
if [[ ${PV} != *_beta* ]] && [[ ${PV} != *_rc* ]] ; then
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 s390 sparc x86 ~sparc-solaris"
fi
fi
# Basic license is ISC-style as-is, some files are released under
# 3-clause BSD license
LICENSE="ISC BSD"
SLOT="0"
IUSE="gcrypt ldap libressl nls offensive pam sasl +secure-path selinux +sendmail skey ssl sssd"
DEPEND="
sys-libs/zlib:=
gcrypt? ( dev-libs/libgcrypt:= )
ldap? (
>=net-nds/openldap-2.1.30-r1
sasl? (
dev-libs/cyrus-sasl
net-nds/openldap[sasl]
)
)
pam? ( sys-libs/pam )
sasl? ( dev-libs/cyrus-sasl )
skey? ( >=sys-auth/skey-1.1.5-r1 )
ssl? (
!libressl? ( dev-libs/openssl:0= )
libressl? ( dev-libs/libressl:0= )
)
sssd? ( sys-auth/sssd[sudo] )
"
RDEPEND="
${DEPEND}
>=app-misc/editor-wrapper-3
virtual/editor
ldap? ( dev-lang/perl )
pam? ( sys-auth/pambase )
selinux? ( sec-policy/selinux-sudo )
sendmail? ( virtual/mta )
"
BDEPEND="
sys-devel/bison
virtual/pkgconfig
"
S="${WORKDIR}/${MY_P}"
REQUIRED_USE="
pam? ( !skey )
skey? ( !pam )
"
REQUIRED_USE="?? ( gcrypt ssl )"
MAKEOPTS+=" SAMPLES="
src_prepare() {
default
elibtoolize
}
set_secure_path() {
# FIXME: secure_path is a compile time setting. using PATH or
# ROOTPATH is not perfect, env-update may invalidate this, but until it
# is available as a sudoers setting this will have to do.
einfo "Setting secure_path ..."
# first extract the default ROOTPATH from build env
SECURE_PATH=$(unset ROOTPATH; . "${EPREFIX}"/etc/profile.env;
echo "${ROOTPATH}")
case "${SECURE_PATH}" in
*/usr/sbin*) ;;
*) SECURE_PATH=$(unset PATH;
. "${EPREFIX}"/etc/profile.env; echo "${PATH}")
;;
esac
if [[ -z ${SECURE_PATH} ]] ; then
ewarn " Failed to detect SECURE_PATH, please report this"
fi
# then remove duplicate path entries
cleanpath() {
local newpath thisp IFS=:
for thisp in $1 ; do
if [[ :${newpath}: != *:${thisp}:* ]] ; then
newpath+=:${thisp}
else
einfo " Duplicate entry ${thisp} removed..."
fi
done
SECURE_PATH=${newpath#:}
}
cleanpath /bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:/opt/bin${SECURE_PATH:+:${SECURE_PATH}}
# finally, strip gcc paths #136027
rmpath() {
local e newpath thisp IFS=:
for thisp in ${SECURE_PATH} ; do
for e ; do [[ ${thisp} == ${e} ]] && continue 2 ; done
newpath+=:${thisp}
done
SECURE_PATH=${newpath#:}
}
rmpath '*/gcc-bin/*' '*/gnat-gcc-bin/*' '*/gnat-gcc/*'
einfo "... done"
}
src_configure() {
local SECURE_PATH
set_secure_path
# audit: somebody got to explain me how I can test this before I
# enable it.. - Diego
# plugindir: autoconf code is crappy and does not delay evaluation
# until `make` time, so we have to use a full path here rather than
# basing off other values.
myeconfargs=(
# requires some python eclass
--disable-python
--enable-tmpfiles.d="${EPREFIX}"/usr/lib/tmpfiles.d
--enable-zlib=system
--with-editor="${EPREFIX}"/usr/libexec/editor
--with-env-editor
--with-plugindir="${EPREFIX}"/usr/$(get_libdir)/sudo
--with-rundir="${EPREFIX}"/run/sudo
--with-vardir="${EPREFIX}"/var/db/sudo
--without-linux-audit
--without-opie
$(use_enable gcrypt)
$(use_enable nls)
$(use_enable sasl)
$(use_enable ssl openssl)
$(use_with ldap)
$(use_with ldap ldap_conf_file /etc/ldap.conf.sudo)
$(use_with offensive insults)
$(use_with offensive all-insults)
$(use_with pam)
$(use_with pam pam-login)
$(use_with secure-path secure-path "${SECURE_PATH}")
$(use_with selinux)
$(use_with sendmail)
$(use_with skey)
$(use_with sssd)
)
econf "${myeconfargs[@]}"
}
src_install() {
default
if use ldap ; then
dodoc README.LDAP
cat <<-EOF > "${T}"/ldap.conf.sudo
# See ldap.conf(5) and README.LDAP for details
# This file should only be readable by root
# supported directives: host, port, ssl, ldap_version
# uri, binddn, bindpw, sudoers_base, sudoers_debug
# tls_{checkpeer,cacertfile,cacertdir,randfile,ciphers,cert,key}
EOF
if use sasl ; then
cat <<-EOF >> "${T}"/ldap.conf.sudo
# SASL directives: use_sasl, sasl_mech, sasl_auth_id
# sasl_secprops, rootuse_sasl, rootsasl_auth_id, krb5_ccname
EOF
fi
insinto /etc
doins "${T}"/ldap.conf.sudo
fperms 0440 /etc/ldap.conf.sudo
insinto /etc/openldap/schema
newins doc/schema.OpenLDAP sudo.schema
fi
pamd_mimic system-auth sudo auth account session
pamd_mimic system-auth sudo-i auth account session
keepdir /var/db/sudo/lectured
fperms 0700 /var/db/sudo/lectured
fperms 0711 /var/db/sudo #652958
# Don't install into /run as that is a tmpfs most of the time
# (bug #504854)
rm -rf "${ED}"/run || die
find "${ED}" -type f -name "*.la" -delete || die #697812
}
pkg_postinst() {
tmpfiles_process sudo.conf
#652958
local sudo_db="${EROOT}/var/db/sudo"
if [[ "$(stat -c %a "${sudo_db}")" -ne 711 ]] ; then
chmod 711 "${sudo_db}" || die
fi
if use ldap ; then
ewarn
ewarn "sudo uses the /etc/ldap.conf.sudo file for ldap configuration."
ewarn
if grep -qs '^[[:space:]]*sudoers:' "${ROOT}"/etc/nsswitch.conf ; then
ewarn "In 1.7 series, LDAP is no more consulted, unless explicitly"
ewarn "configured in /etc/nsswitch.conf."
ewarn
ewarn "To make use of LDAP, add this line to your /etc/nsswitch.conf:"
ewarn " sudoers: ldap files"
ewarn
fi
fi
if use prefix ; then
ewarn
ewarn "To use sudo, you need to change file ownership and permissions"
ewarn "with root privileges, as follows:"
ewarn
ewarn " # chown root:root ${EPREFIX}/usr/bin/sudo"
ewarn " # chown root:root ${EPREFIX}/usr/lib/sudo/sudoers.so"
ewarn " # chown root:root ${EPREFIX}/etc/sudoers"
ewarn " # chown root:root ${EPREFIX}/etc/sudoers.d"
ewarn " # chown root:root ${EPREFIX}/var/db/sudo"
ewarn " # chmod 4111 ${EPREFIX}/usr/bin/sudo"
ewarn
fi
elog "To use the -A (askpass) option, you need to install a compatible"
elog "password program from the following list. Starred packages will"
elog "automatically register for the use with sudo (but will not force"
elog "the -A option):"
elog ""
elog " [*] net-misc/ssh-askpass-fullscreen"
elog " net-misc/x11-ssh-askpass"
elog ""
elog "You can override the choice by setting the SUDO_ASKPASS environmnent"
elog "variable to the program you want to use."
}

@ -68,16 +68,12 @@ BDEPEND="
S="${WORKDIR}/${MY_P}"
REQUIRED_USE="
pam? ( !skey )
skey? ( !pam )
?? ( pam skey )
?? ( gcrypt ssl )
"
REQUIRED_USE="?? ( gcrypt ssl )"
MAKEOPTS+=" SAMPLES="
PATCHES=( "${FILESDIR}/${P}-glibc-2.32.patch" ) # drop for releases after 1.9.2
src_prepare() {
default
elibtoolize

Binary file not shown.

@ -1,2 +1,3 @@
DIST duplicity-0.8.15.tar.gz 1482647 BLAKE2B e1ddd4232611ad5fcf8faa5135c925aef68a21eb9dec50de7194562a0d4871e9c58132faf9340f71367025dcc84cbc6f1aae69bd37cae294d4200a8ca8b796b3 SHA512 2d048377c839ae56fc2828997c9aa7ba8c339e815e1e2ae738652037508ec276a2c72583687da34408fadd4839011e242b51bc73cca954227fc51db5683c258c
DIST duplicity-0.8.16.tar.gz 1470714 BLAKE2B c9b2df3a7f008d44595b76d5f1d86ef53996d3ad788415e3a0fa122a7246bb5ae92e73be5079b3cef9a9a93a0b106f3be6405882028d79dc49194276a7c8f4a7 SHA512 67e8fe7d5db7da82d82f24892d721e32cd63fcdb8bbc5e60508af06e4c9b637f593ce0b1902c31433c92ed97035880e44368e9a461ad197511171f67de937f73
DIST duplicity-0.8.17.tar.gz 1351433 BLAKE2B 39c87c421bb8a4bf27e60c16b6dde559ed4468a1062f02623d8e37deb62e63101b6fb5524e5a991139d39422cab2803b89007bf1ca5819817ab3b53d5318b88c SHA512 6f9f6b45953d2bc7ed403d68bdc419f384e07f831c783af720f15f88b100f5becb3f83f65cfc715b02686c24d18c5ec8f80c27789d1ec01cdc8efefa7590c211

@ -0,0 +1,51 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python3_6 python3_7 python3_8 )
inherit distutils-r1
DESCRIPTION="Secure backup system using gnupg to encrypt data"
HOMEPAGE="https://www.nongnu.org/duplicity/"
SRC_URI="https://code.launchpad.net/${PN}/$(ver_cut 1-2)-series/$(ver_cut 1-3)/+download/${P}.tar.gz"
LICENSE="GPL-3"
SLOT="0"
KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x86-macos"
IUSE="s3 test"
CDEPEND="
net-libs/librsync
app-crypt/gnupg
dev-python/fasteners[${PYTHON_USEDEP}]
"
DEPEND="${CDEPEND}
dev-python/setuptools[${PYTHON_USEDEP}]
dev-python/setuptools_scm[${PYTHON_USEDEP}]
test? (
app-arch/par2cmdline
dev-python/mock[${PYTHON_USEDEP}]
dev-python/pexpect[${PYTHON_USEDEP}]
)
"
RDEPEND="${CDEPEND}
dev-python/paramiko[${PYTHON_USEDEP}]
dev-python/future[${PYTHON_USEDEP}]
s3? ( dev-python/boto[${PYTHON_USEDEP}] )
"
RESTRICT="test"
PATCHES=(
"${FILESDIR}/${P}-fix-docs-cmd.patch"
)
python_test() {
esetup.py test
}
pkg_postinst() {
elog "Duplicity has many optional dependencies to support various backends."
elog "Currently it's up to you to install them as necessary."
}

@ -0,0 +1,28 @@
--- duplicity-0.8.17/setup.py 2020-11-24 19:32:40.089024404 -0500
+++ duplicity-0.8.17/setup.py 2020-11-24 19:33:32.326309755 -0500
@@ -93,17 +93,6 @@
u'bin/rdiffdir.1'
]
),
- (u'share/doc/duplicity-%s' % Version,
- [
- u'AUTHORS',
- u'CHANGELOG.md',
- u'COPYING',
- u'README.md',
- u'README-LOG.md',
- u'README-REPO.md',
- u'README-TESTING.md',
- ],
- ),
]
if not os.environ.get(u'READTHEDOCS') == u'True':
@@ -339,7 +328,6 @@
],
test_suite=u"testing",
cmdclass={
- u"build_scripts": BuildScriptsCommand,
u"install": InstallCommand,
u"install_data": InstallDataCommand,
u"sdist": SdistCommand,

Binary file not shown.

@ -1,9 +1,9 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=5
EAPI=7
inherit eutils multilib linux-info toolchain-funcs udev systemd
inherit multilib linux-info toolchain-funcs udev systemd
DESCRIPTION="Entropy Key userspace daemon"
HOMEPAGE="http://www.entropykey.co.uk/"
@ -15,7 +15,7 @@ KEYWORDS="~amd64 ~x86"
IUSE="kernel_linux munin minimal usb"
REQUIRED_USE="minimal? ( !munin )"
EKEYD_RDEPEND="dev-lang/lua"
EKEYD_RDEPEND="dev-lang/lua:0"
EKEYD_DEPEND="${EKEYD_RDEPEND}"
EKEYD_RDEPEND="${EKEYD_RDEPEND}
dev-lua/luasocket
@ -23,7 +23,6 @@ EKEYD_RDEPEND="${EKEYD_RDEPEND}
munin? ( net-analyzer/munin )"
RDEPEND="!minimal? ( ${EKEYD_RDEPEND} )
!app-crypt/ekey-egd-linux
virtual/service-manager"
DEPEND="!minimal? ( ${EKEYD_DEPEND} )"
@ -35,14 +34,14 @@ pkg_setup() {
fi
}
src_prepare() {
epatch "${FILESDIR}/${P}-const_char_usage.patch";
epatch "${FILESDIR}/${P}-enoent.patch";
epatch "${FILESDIR}/${P}-path-fixes.patch";
epatch "${FILESDIR}/${P}-udev-rule.patch";
epatch "${FILESDIR}/${P}-remove-werror.patch";
epatch "${FILESDIR}/${P}-misc.patch";
}
PATCHES=(
"${FILESDIR}"/${P}-const_char_usage.patch
"${FILESDIR}"/${P}-enoent.patch
"${FILESDIR}"/${P}-path-fixes.patch
"${FILESDIR}"/${P}-udev-rule.patch
"${FILESDIR}"/${P}-remove-werror.patch
"${FILESDIR}"/${P}-misc.patch
)
src_compile() {
local osname

@ -0,0 +1,170 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
LUA_COMPAT=( lua5-1 )
inherit multilib linux-info lua-single toolchain-funcs udev systemd
DESCRIPTION="Entropy Key userspace daemon"
HOMEPAGE="http://www.entropykey.co.uk/"
SRC_URI="mirror://ubuntu/pool/universe/e/ekeyd/ekeyd_${PV}.orig.tar.gz"
LICENSE="MIT GPL-2" # GPL-2 (only) for init script
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="kernel_linux munin minimal usb"
REQUIRED_USE="${LUA_REQUIRED_USE}
minimal? ( !munin )"
EKEYD_RDEPEND="${LUA_DEPS}"
EKEYD_DEPEND="${EKEYD_RDEPEND}"
EKEYD_RDEPEND="${EKEYD_RDEPEND}
$(lua_gen_cond_dep '
dev-lua/luasocket[${LUA_USEDEP}]
')
kernel_linux? ( virtual/udev )
munin? ( net-analyzer/munin )"
RDEPEND="!minimal? ( ${EKEYD_RDEPEND} )
virtual/service-manager"
DEPEND="!minimal? ( ${EKEYD_DEPEND} )"
CONFIG_CHECK="~USB_ACM"
pkg_setup() {
if ! use minimal && use kernel_linux && ! use usb && linux_config_exists; then
check_extra_config
fi
lua-single_pkg_setup
}
PATCHES=(
"${FILESDIR}"/${P}-const_char_usage.patch
"${FILESDIR}"/${P}-enoent.patch
"${FILESDIR}"/${P}-path-fixes.patch
"${FILESDIR}"/${P}-udev-rule.patch
"${FILESDIR}"/${P}-remove-werror.patch
"${FILESDIR}"/${P}-misc.patch
"${FILESDIR}"/${P}-makefile-lua-libs.patch
)
src_compile() {
local osname
# Override automatic detection: upstream provides this with uname,
# we don't like using uname.
case ${CHOST} in
*-linux-*)
osname=linux;;
*-freebsd*)
osname=freebsd;;
*-kfrebsd-gnu)
osname=gnukfreebsd;;
*-openbsd*)
osname=openbsd;;
*)
die "Unsupported operating system!"
;;
esac
emake -C host \
CC="$(tc-getCC)" \
LUA_V=${ELUA#lua} \
LUA_INC="-I$(lua_get_include_dir)" \
OSNAME=${osname} \
OPT="${CFLAGS}" \
BUILD_ULUSBD=no \
$(use minimal && echo egd-linux)
}
src_install() {
exeinto /usr/libexec
newexe host/egd-linux ekey-egd-linux
newman host/egd-linux.8 ekey-egd-linux.8
newconfd "${FILESDIR}"/ekey-egd-linux.conf.2 ekey-egd-linux
newinitd "${FILESDIR}"/ekey-egd-linux.init.2 ekey-egd-linux
dodoc doc/* AUTHORS ChangeLog THANKS
use minimal && return
# from here on, install everything that is not part of the minimal
# support.
emake -C host \
DESTDIR="${D}" \
MANZCMD=cat MANZEXT= \
install-ekeyd
# We move the daemons around to avoid polluting the available
# commands.
dodir /usr/libexec
mv "${D}"/usr/sbin/ekey*d "${D}"/usr/libexec
systemd_dounit "${FILESDIR}/ekeyd.service"
newinitd "${FILESDIR}"/${PN}.init.2 ${PN}
if use kernel_linux; then
local rules="${FILESDIR}/90-ekeyd.rules"
udev_newrules ${rules} 90-${PN}.rules
fi
if use munin; then
exeinto /usr/libexec/munin/plugins
doexe munin/ekeyd_stat_
insinto /etc/munin/plugin-conf.d
newins munin/plugin-conf.d_ekeyd ekeyd
fi
}
pkg_postinst() {
elog "${CATEGORY}/${PN} now install also the EGD client service ekey-egd-linux."
elog "To use this service, you need enable EGDTCPSocket for the ekeyd service"
elog "managing the key(s)."
elog ""
elog "The daemon will send more entropy to the kernel once the available pool"
elog "falls below the value set in the kernel.random.write_wakeup_threshold"
elog "sysctl entry."
elog ""
ewarn "Since version 1.1.4-r1, ekey-egd-linux will *not* set the watermark for"
ewarn "you, instead you'll have to configure the sysctl in /etc/sysctl.conf"
use minimal && return
# from here on, document everything that is not part of the minimal
# support.
elog ""
elog "To make use of your EntropyKey, make sure to execute ekey-rekey"
elog "the first time, and then start the ekeyd service."
elog ""
elog "By default ekeyd will feed the entropy directly to the kernel's pool;"
elog "if your system has jumps in load average, you might prefer using the"
elog "EGD compatibility mode, by enabling EGDTCPSocket for ekeyd and then"
elog "starting the ekey-egd-linux service."
elog ""
elog "The same applies if you intend to provide entropy for multiple hosts"
elog "over the network. If you want to have the ekey-egd-linux service on"
elog "other hosts, you can enable the 'minimal' USE flag."
elog ""
elog "The service supports multiplexing if you wish to use multiple"
elog "keys, just symlink /etc/init.d/ekeyd -> /etc/init.d/ekeyd.identifier"
elog "and it'll be looking for /etc/entropykey/identifier.conf"
elog ""
if use kernel_linux; then
elog "Some versions of Linux have a faulty CDC ACM driver that stops"
elog "EntropyKey from working properly; please check the compatibility"
elog "table at http://www.entropykey.co.uk/download/"
else
elog "Make sure your operating system supports the CDC ACM driver"
elog "or otherwise you won't be able to use the EntropyKey."
fi
elog ""
elog "If you're unsure about the working state of the CDC ACM driver"
elog "enable the usb USE flag and use the userland USB daemon"
}

@ -0,0 +1,15 @@
If LUA_V is passed directly to LIBS it ends up being expanded to an empty
string at link time.
--- a/host/Makefile
+++ b/host/Makefile
@@ -111,7 +111,8 @@
CFLAGS += '-DEKEYD_VERSION_S=""$(EKEYD_VERSION_S)""'
CFLAGS += $(EXTRA_CFLAGS)
-LIBS += -llua -lm $(LIBDL)
+LUA_LIBS += -llua$(LUA_V) -lm
+LIBS += $(LUA_LIBS) $(LIBDL)
LDFLAGS += $(LIBDIRS)

@ -41,7 +41,6 @@ DEPEND="${COMMON_DEPEND}
test? (
net-misc/socat
dev-tcltk/expect
${PYTHON_DEPS}
)
"
@ -58,6 +57,7 @@ PATCHES=(
src_prepare() {
use test || eapply "${FILESDIR}/${PN}-0.5.0-disable-test-dependencies.patch"
python_setup
default
eautoreconf
}

@ -0,0 +1,31 @@
From 88e90ee4c36f0decdf7c15e271bccb8b0809a21a Mon Sep 17 00:00:00 2001
From: Stefan Strogin <stefan@steils.org>
Date: Tue, 24 Nov 2020 11:08:13 +0200
Subject: [PATCH] trousers: do not re-declare RSA_set0_key with LibreSSL
The method RSA_set0_key is provided by LibreSSL since 2.7.0, that means
in all currently supported versions.
Upstream-Status: Submitted
[https://sourceforge.net/p/trousers/trousers/merge-requests/2/]
Signed-off-by: Stefan Strogin <stefan@steils.org>
---
src/trspi/crypto/openssl/rsa.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/trspi/crypto/openssl/rsa.c b/src/trspi/crypto/openssl/rsa.c
index 24f13e7..cf46c08 100644
--- a/src/trspi/crypto/openssl/rsa.c
+++ b/src/trspi/crypto/openssl/rsa.c
@@ -38,7 +38,7 @@
#define DEBUG_print_openssl_errors()
#endif
-#if (OPENSSL_VERSION_NUMBER < 0x10100001L) || defined(LIBRESSL_VERSION_NUMBER)
+#if (OPENSSL_VERSION_NUMBER < 0x10100001L)
static int
RSA_set0_key(RSA *r, BIGNUM *n, BIGNUM *e, BIGNUM *d)
{
--
2.29.2

@ -29,6 +29,7 @@ BDEPEND="virtual/pkgconfig"
PATCHES=(
"${FILESDIR}/${PN}-0.3.13-nouseradd.patch"
"${FILESDIR}/${PN}-0.3.14-Makefile.am-Mark-tddl.a-nodist.patch"
"${FILESDIR}/${P}-libressl.patch"
)
DOCS="AUTHORS ChangeLog NICETOHAVES README TODO"

@ -15,7 +15,7 @@ SRC_URI="https://github.com/${PN}/VeraCrypt/archive/VeraCrypt_${MY_PV}.tar.gz ->
# For this reason, we don't have to worry about their licenses
LICENSE="Apache-2.0 BSD truecrypt-3.0"
SLOT="0"
KEYWORDS="~amd64"
KEYWORDS="amd64"
IUSE="+asm cpu_flags_x86_sse2 cpu_flags_x86_sse4_1 cpu_flags_x86_ssse3 doc X"
RESTRICT="bindist mirror"

Binary file not shown.

@ -3,7 +3,7 @@
EAPI=7
inherit toolchain-funcs flag-o-matic multilib
inherit toolchain-funcs flag-o-matic multilib eapi8-dosym
DESCRIPTION="The extensible self-documenting text editor"
HOMEPAGE="https://www.gnu.org/software/emacs/"
@ -123,7 +123,7 @@ src_install() {
yow env server
do
mv "${D}"${basedir}/etc/${i} "${D}"/usr/libexec/emacs/${PV}/${i} || die
dosym ../../../../libexec/emacs/${PV}/${i} ${basedir}/etc/${i}
dosym8 -r /usr/libexec/emacs/${PV}/${i} ${basedir}/etc/${i}
done
for i in test-distrib make-docfile; do
rm "${D}"${basedir}/etc/${i} || die
@ -135,7 +135,7 @@ src_install() {
# move Info files
dodir /usr/share/info
mv "${D}"${basedir}/info "${D}"/usr/share/info/emacs-${SLOT} || die
dosym ../../info/emacs-${SLOT} "${basedir}"/info
dosym8 -r /usr/share/info/emacs-${SLOT} ${basedir}/info
docompress -x /usr/share/info
# move Info dir to avoid collisions with the dir file generated by portage

@ -16,7 +16,8 @@ SLOT="23"
KEYWORDS="~alpha amd64 arm ~hppa ~ia64 ~mips ppc ppc64 ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
IUSE="alsa aqua athena dbus games gconf gif gpm gtk gui gzip-el jpeg kerberos livecd m17n-lib motif png sound source svg tiff toolkit-scroll-bars Xaw3d xft +xpm"
RDEPEND="app-emacs/emacs-common-gentoo[games?,gui(-)?]
RDEPEND="acct-group/mail
app-emacs/emacs-common-gentoo[games?,gui(-)?]
net-libs/liblockfile
sys-libs/ncurses:0=
kerberos? ( virtual/krb5 )
@ -249,6 +250,10 @@ src_install() {
touch "${ED}"/usr/share/info/${EMACS_SUFFIX}/.keepinfodir
docompress -x /usr/share/info/${EMACS_SUFFIX}/dir.orig
# movemail must be setgid mail
fowners root:mail /usr/libexec/emacs/${FULL_VERSION}/${CHOST}/movemail
fperms 2751 /usr/libexec/emacs/${FULL_VERSION}/${CHOST}/movemail
# avoid collision between slots, see bug #169033 e.g.
rm "${ED}"/usr/share/emacs/site-lisp/subdirs.el
rm -rf "${ED}"/usr/share/{applications,icons}

@ -15,7 +15,8 @@ SLOT="24"
KEYWORDS="~alpha amd64 arm ~hppa ~ia64 ~mips ppc ~ppc64 ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
IUSE="acl alsa aqua athena dbus games gconf gfile gif gpm gsettings gtk gtk2 gui gzip-el imagemagick +inotify jpeg kerberos libxml2 livecd m17n-lib motif png selinux sound source ssl svg tiff toolkit-scroll-bars wide-int Xaw3d xft +xpm zlib"
RDEPEND="app-emacs/emacs-common-gentoo[games?,gui(-)?]
RDEPEND="acct-group/mail
app-emacs/emacs-common-gentoo[games?,gui(-)?]
net-libs/liblockfile
sys-libs/ncurses:0=
acl? ( virtual/acl )
@ -229,7 +230,7 @@ src_compile() {
}
src_install() {
emake DESTDIR="${D}" NO_BIN_LINK=t install
emake DESTDIR="${D}" NO_BIN_LINK=t BLESSMAIL_TARGET= install
mv "${ED}"/usr/bin/{emacs-${FULL_VERSION}-,}${EMACS_SUFFIX} \
|| die "moving emacs executable failed"
@ -242,6 +243,10 @@ src_install() {
touch "${ED}"/usr/share/info/${EMACS_SUFFIX}/.keepinfodir
docompress -x /usr/share/info/${EMACS_SUFFIX}/dir.orig
# movemail must be setgid mail
fowners root:mail /usr/libexec/emacs/${FULL_VERSION}/${CHOST}/movemail
fperms 2751 /usr/libexec/emacs/${FULL_VERSION}/${CHOST}/movemail
# avoid collision between slots, see bug #169033 e.g.
rm "${ED}"/usr/share/emacs/site-lisp/subdirs.el
rm -rf "${ED}"/usr/share/{applications,icons}

@ -15,7 +15,8 @@ SLOT="25"
KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
IUSE="acl alsa aqua athena cairo dbus dynamic-loading games gconf gfile gif gpm gsettings gtk gtk2 gui gzip-el imagemagick +inotify jpeg kerberos libxml2 livecd m17n-lib motif png selinux sound source ssl svg tiff toolkit-scroll-bars wide-int Xaw3d xft +xpm zlib"
RDEPEND="app-emacs/emacs-common-gentoo[games?,gui(-)?]
RDEPEND="acct-group/mail
app-emacs/emacs-common-gentoo[games?,gui(-)?]
net-libs/liblockfile
sys-libs/ncurses:0=
acl? ( virtual/acl )
@ -238,7 +239,7 @@ src_compile() {
}
src_install() {
emake DESTDIR="${D}" NO_BIN_LINK=t install
emake DESTDIR="${D}" NO_BIN_LINK=t BLESSMAIL_TARGET= install
mv "${ED}"/usr/bin/{emacs-${FULL_VERSION}-,}${EMACS_SUFFIX} \
|| die "moving emacs executable failed"
@ -251,6 +252,10 @@ src_install() {
touch "${ED}"/usr/share/info/${EMACS_SUFFIX}/.keepinfodir
docompress -x /usr/share/info/${EMACS_SUFFIX}/dir.orig
# movemail must be setgid mail
fowners root:mail /usr/libexec/emacs/${FULL_VERSION}/${CHOST}/movemail
fperms 2751 /usr/libexec/emacs/${FULL_VERSION}/${CHOST}/movemail
# avoid collision between slots, see bug #169033 e.g.
rm "${ED}"/usr/share/emacs/site-lisp/subdirs.el
rm -rf "${ED}"/usr/share/{appdata,applications,icons}

@ -26,7 +26,7 @@ RDEPEND="app-emacs/emacs-common-gentoo[games?,gui(-)?]
lcms? ( media-libs/lcms:2 )
libxml2? ( >=dev-libs/libxml2-2.2.0 )
mailutils? ( net-mail/mailutils[clients] )
!mailutils? ( net-libs/liblockfile )
!mailutils? ( acct-group/mail net-libs/liblockfile )
selinux? ( sys-libs/libselinux )
ssl? ( net-libs/gnutls:0= )
systemd? ( sys-apps/systemd )
@ -256,7 +256,7 @@ src_compile() {
}
src_install() {
emake DESTDIR="${D}" NO_BIN_LINK=t install
emake DESTDIR="${D}" NO_BIN_LINK=t BLESSMAIL_TARGET= install
mv "${ED}"/usr/bin/{emacs-${FULL_VERSION}-,}${EMACS_SUFFIX} || die
mv "${ED}"/usr/share/man/man1/{emacs-,}${EMACS_SUFFIX}.1 || die
@ -267,6 +267,12 @@ src_install() {
touch "${ED}"/usr/share/info/${EMACS_SUFFIX}/.keepinfodir
docompress -x /usr/share/info/${EMACS_SUFFIX}/dir.orig
# movemail must be setgid mail
if ! use mailutils; then
fowners root:mail /usr/libexec/emacs/${FULL_VERSION}/${CHOST}/movemail
fperms 2751 /usr/libexec/emacs/${FULL_VERSION}/${CHOST}/movemail
fi
# avoid collision between slots, see bug #169033 e.g.
rm "${ED}"/usr/share/emacs/site-lisp/subdirs.el
rm -rf "${ED}"/usr/share/{appdata,applications,icons}

@ -57,7 +57,7 @@ RDEPEND="app-emacs/emacs-common-gentoo[games?,gui(-)?]
lcms? ( media-libs/lcms:2 )
libxml2? ( >=dev-libs/libxml2-2.2.0 )
mailutils? ( net-mail/mailutils[clients] )
!mailutils? ( net-libs/liblockfile )
!mailutils? ( acct-group/mail net-libs/liblockfile )
selinux? ( sys-libs/libselinux )
ssl? ( net-libs/gnutls:0= )
systemd? ( sys-apps/systemd )
@ -299,7 +299,7 @@ src_configure() {
#}
src_install() {
emake DESTDIR="${D}" NO_BIN_LINK=t install
emake DESTDIR="${D}" NO_BIN_LINK=t BLESSMAIL_TARGET= install
mv "${ED}"/usr/bin/{emacs-${FULL_VERSION}-,}${EMACS_SUFFIX} || die
mv "${ED}"/usr/share/man/man1/{emacs-,}${EMACS_SUFFIX}.1 || die
@ -310,6 +310,12 @@ src_install() {
touch "${ED}"/usr/share/info/${EMACS_SUFFIX}/.keepinfodir
docompress -x /usr/share/info/${EMACS_SUFFIX}/dir.orig
# movemail must be setgid mail
if ! use mailutils; then
fowners root:mail /usr/libexec/emacs/${FULL_VERSION}/${CHOST}/movemail
fperms 2751 /usr/libexec/emacs/${FULL_VERSION}/${CHOST}/movemail
fi
# avoid collision between slots, see bug #169033 e.g.
rm "${ED}"/usr/share/emacs/site-lisp/subdirs.el
rm -rf "${ED}"/usr/share/{appdata,applications,icons}

@ -57,7 +57,7 @@ RDEPEND="app-emacs/emacs-common-gentoo[games?,gui(-)?]
lcms? ( media-libs/lcms:2 )
libxml2? ( >=dev-libs/libxml2-2.2.0 )
mailutils? ( net-mail/mailutils[clients] )
!mailutils? ( net-libs/liblockfile )
!mailutils? ( acct-group/mail net-libs/liblockfile )
selinux? ( sys-libs/libselinux )
ssl? ( net-libs/gnutls:0= )
systemd? ( sys-apps/systemd )
@ -298,7 +298,7 @@ src_configure() {
#}
src_install() {
emake DESTDIR="${D}" NO_BIN_LINK=t install
emake DESTDIR="${D}" NO_BIN_LINK=t BLESSMAIL_TARGET= install
mv "${ED}"/usr/bin/{emacs-${FULL_VERSION}-,}${EMACS_SUFFIX} || die
mv "${ED}"/usr/share/man/man1/{emacs-,}${EMACS_SUFFIX}.1 || die
@ -309,6 +309,12 @@ src_install() {
touch "${ED}"/usr/share/info/${EMACS_SUFFIX}/.keepinfodir
docompress -x /usr/share/info/${EMACS_SUFFIX}/dir.orig
# movemail must be setgid mail
if ! use mailutils; then
fowners root:mail /usr/libexec/emacs/${FULL_VERSION}/${CHOST}/movemail
fperms 2751 /usr/libexec/emacs/${FULL_VERSION}/${CHOST}/movemail
fi
# avoid collision between slots, see bug #169033 e.g.
rm "${ED}"/usr/share/emacs/site-lisp/subdirs.el
rm -rf "${ED}"/usr/share/{appdata,applications,icons}

@ -57,7 +57,7 @@ RDEPEND="app-emacs/emacs-common-gentoo[games?,gui(-)?]
lcms? ( media-libs/lcms:2 )
libxml2? ( >=dev-libs/libxml2-2.2.0 )
mailutils? ( net-mail/mailutils[clients] )
!mailutils? ( net-libs/liblockfile )
!mailutils? ( acct-group/mail net-libs/liblockfile )
selinux? ( sys-libs/libselinux )
ssl? ( net-libs/gnutls:0= )
systemd? ( sys-apps/systemd )
@ -297,7 +297,7 @@ src_configure() {
#}
src_install() {
emake DESTDIR="${D}" NO_BIN_LINK=t install
emake DESTDIR="${D}" NO_BIN_LINK=t BLESSMAIL_TARGET= install
mv "${ED}"/usr/bin/{emacs-${FULL_VERSION}-,}${EMACS_SUFFIX} || die
mv "${ED}"/usr/share/man/man1/{emacs-,}${EMACS_SUFFIX}.1 || die
@ -308,6 +308,12 @@ src_install() {
touch "${ED}"/usr/share/info/${EMACS_SUFFIX}/.keepinfodir
docompress -x /usr/share/info/${EMACS_SUFFIX}/dir.orig
# movemail must be setgid mail
if ! use mailutils; then
fowners root:mail /usr/libexec/emacs/${FULL_VERSION}/${CHOST}/movemail
fperms 2751 /usr/libexec/emacs/${FULL_VERSION}/${CHOST}/movemail
fi
# avoid collision between slots, see bug #169033 e.g.
rm "${ED}"/usr/share/emacs/site-lisp/subdirs.el
rm -rf "${ED}"/usr/share/{appdata,applications,icons}

Binary file not shown.

@ -1 +1,2 @@
DIST diskimage-builder-3.3.1.tar.gz 450130 BLAKE2B 09f3b3549527d726f8479e1f8dc89ae50fdeacf6969e43f5b35591fa0a9d38ae0dd03b7292633604a938b0ef14e31b4e655645643bae22df4f3519c75d9dde83 SHA512 095c0968f5ceeb220c3871ccd14c7bf7c1b3d883bcb02f9cfe7406d5a336c36a813c8290bf133441a2a59972f485596aa5620b755016aba348afe3b7fc723c9f
DIST diskimage-builder-3.4.0.tar.gz 477142 BLAKE2B 998c4769f8b1e973628a6ab790c78afa32d3de23df6dda62e94917916aa92419d16a58ba3029bad6641508de2f404bfb16101197720ed050a1db6a92434e3144 SHA512 a05fc9b836cf8273d0c73ab1e95ecbd2172c56e457ba8ae00cb3a5f13b499dc1e8d81f262d155e8e2005bdc14af25370af9dfb3b2bf29342d5110edc7e630a87

@ -0,0 +1,39 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python3_{6,7,8} )
DISTUTILS_USE_SETUPTOOLS=rdepend
inherit distutils-r1
DESCRIPTION="Golden Disk Image builder."
HOMEPAGE="http://docs.openstack.org/developer/diskimage-builder/"
if [[ ${PV} == 9999* ]]; then
inherit git-r3
EGIT_REPO_URI="https://opendev.org/openstack/diskimage-builder.git"
else
SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
KEYWORDS="~amd64 ~arm64 ~x86 ~amd64-linux ~x86-linux"
fi
LICENSE="Apache-2.0"
SLOT="0"
IUSE=""
CDEPEND=">=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
!~dev-python/pbr-2.1.0[${PYTHON_USEDEP}]"
DEPEND="${CDEPEND}"
RDEPEND="${CDEPEND}
>=dev-python/Babel-2.3.4[${PYTHON_USEDEP}]
!~dev-python/Babel-2.4.0[${PYTHON_USEDEP}]
>=dev-python/networkx-1.10[${PYTHON_USEDEP}]
>=dev-python/pyyaml-3.12[${PYTHON_USEDEP}]
>=dev-python/six-1.10.0[${PYTHON_USEDEP}]
>=dev-python/stevedore-1.20.0[${PYTHON_USEDEP}]
app-emulation/qemu
sys-block/parted
sys-fs/multipath-tools
sys-fs/dosfstools
sys-apps/gptfdisk
!dev-python/dib-utils[${PYTHON_USEDEP}]"

@ -1,12 +1,8 @@
DIST firecracker-v0.22.0-aarch64 1615168 BLAKE2B 56965a1999038e9b59e37230177812b936ad1b3cba91b6f805a1a6ecc81903f093c13b75ff78c8720d67596bdd71378cc757bda0b6061e3fb4d62607e299b065 SHA512 fb42bc5ecd0af487490f2c4bd3804d2430263740bbdec66c063d9b6c865d6b9c42b31cafb78d4a0cc40c11cc5242608b9d30676e55ac2b8dcb05d5f3db535bdf
DIST firecracker-v0.22.0-x86_64 1657736 BLAKE2B 84dbe8db596017e312fad1cd3c72d1b5d7306ad400a320431c8cae5b901b534f2735ac75cb5b9133c6c6f2603b877e4842d54165972a46df4193fbbc513c3b2d SHA512 ac9544e8b770ff7a0c9234feb3154522bd6163f3903993cd019cc4abaa90ad24447f18e65e1022aafb7274ca97281286f898a50ac9f27c7f661d48df52d7fd08
DIST firecracker-v0.22.1-aarch64 1624032 BLAKE2B e5705e423e032c480bbdd499bb4e0b5674079b096bd0983f21f3e9c664d442a76f3a195075a641445505b777823a4c1670a1544828b84370e21d5bde4c091ed3 SHA512 4d9222e19d616a017780711c426d0aa5b41571e744648cc3a922601857387ebcb9dc0a238019e7a33e45445221d93d739c0ec8c465ab922583bac2970a1af003
DIST firecracker-v0.22.1-x86_64 1658032 BLAKE2B 1513ed2b0ad550a0e21fb77bc5fb84091ff73b4e79c716238b14366234d303bb391d3e6a58878529f8131c72bd53d81a18caf06230d290bbefc08f280d856e5c SHA512 5327a22a1c0dc4e9a1ceba8455933131ddb9ef91e0a9b875a7b5c5f45f309fe40b841a26b5d0bdd24e18bb7472c264598d59fb0db20bdf5ec39f47b23ede44fa
DIST firecracker-v0.23.0-aarch64 1596888 BLAKE2B 94453641206b32c42f86542d7c38a1e24e991abc1d425183e624f8a72cc74a51cf36e3463bd1c20b309a4bc4e97ebfb8cd95c47061e51cecdb8a8b28120879ad SHA512 08a51979e5979cbc5e8477e9400bcc03757a416e606903296764982f78a432749d168c4566d31df20a9bf68894b3e7cb1cbf39aee559513daa25280a9c891d2f
DIST firecracker-v0.23.0-x86_64 2041024 BLAKE2B cb6a0d356a734ffb28ef6b88517983d1b9efac4127f8979fad085dab503446471d851ec00ff4da39b216f6fc9ba6a5d9d744455c0f1c1cbd7ef881d624536873 SHA512 5a24a95805240c1125f7fd17e69d5fea92781c3767f0a884aa8e433200e8f469b33502342d47843e5612d83d3157df59bf94a960a202978ca70dcf8f31865882
DIST jailer-v0.22.0-aarch64 1322088 BLAKE2B 72db7eba02371af2a53b6ebd8c9fb909bd027cdd2b4207e0b2a02febe587780f9aa3be665b37580907ab8a58d8745cbcda90a85bda56a42b2eb8be9a931af13f SHA512 86ca629b3060cefa9e31292844486c6d9b6fa0538b6d515e4cbb07fa4a675ce93d5f87fcd769f62aea0df029cdbd7a5055a282b8344ed35d895606aca7f22a14
DIST jailer-v0.22.0-x86_64 1427600 BLAKE2B 7ab09cce8963c89dae7c89c3a2d1dc582fdf8c11c3e051deb08c70fd2995a2154c493432e39851bebc62c1f6a9f98cfc9a9fa4107c5d9cf8ba940d4bb3349d86 SHA512 f2dcaee775cd1cdea4c1c1f6e89b82ba6636ab065291b704faaa836f864f14802a56af76ce397d7f98e9420d55720dc4459ae4443babfc7bb16d64dde11cb854
DIST jailer-v0.22.1-aarch64 1322088 BLAKE2B 7e5e1d106789af37a9a113b005184c2e65943beaec08e99b149bdcd72237c089d9a8126e2b498b433dd94181ab8042205cad31beba1352707081fdc08e7a4293 SHA512 6e147d581870a46e6cad7efb949265a47d1471ae5744216f8a591ffa00001590e2939b8153107b3188e224069207c82624efc98ae5d5becb6c324860ce509548
DIST jailer-v0.22.1-x86_64 1427600 BLAKE2B f592c951594a2739cb56accbfc2c971f44aa7d4fde36d8a170b8c72749ba25020caf6505865ca9ab4932386b9a9a4e0b2bf984fc2712b6d4c5bf7c3df23aa085 SHA512 f28b08c5baf003eae93bbb7199136c76b9c104928ccb74ad7ca3af0269c4eebd80528a995caa5aff5bc70997932cd1485e416046a8e4a6c199be430c4a72213a
DIST firecracker-v0.23.1-aarch64 3328424 BLAKE2B 2191e73700c9107fc30e84a044c0377c4486ecfee99deba99b0f6400036befca0d2f3f101154d851f0d7423208f8afc28e87678ed6005235ea9757a1913df3f6 SHA512 a1f5245cbe637f42f1145eb9daf3578610102535a046ea4be93dcd122194fd90305fde32840d59c50b798aa8326ea0d7ed715ab96f980a7d0e66608c33aa7ce0
DIST firecracker-v0.23.1-x86_64 3290472 BLAKE2B 62315d4962b4debbdac383098e656e6c469b491f7303a7aaab06c885ec653b202f6a49a43ae0b76188d2f73b229c68435e19d316992eed64645decef3f611d5e SHA512 4bfb756a2ee2942a158857dfe82de838b52bc161d0ba97255eace1af4b57c3a630dfbb51413433a4fbfb3d95ba02719a608c1ea3f28a5485d005daa2c71abbef
DIST jailer-v0.23.0-aarch64 1350040 BLAKE2B def85c85daa27c648c638ed14128fef941a416269c536c55413116a686d5a0e614976fd718576a6e275ff12a1873885e1d569e2e054cb054f1278ecbe1279d74 SHA512 48de8688cf40e696f0a56689a2e6256f2be159fb1b593b223a9547c4760c1e94e245e1de77bfeeefbeffb8046b33768da1915482a62d6b36321b8c225bdef791
DIST jailer-v0.23.0-x86_64 1457312 BLAKE2B 9a92c415e27a8442da18ab3134023acdc7b49f1246d332a864fb700180914c6b9a7f8747b1eef1657290df5287a946e0d5b0b689bd0b7a60486b472ba7b55290 SHA512 203d24794c3125afdd8cb1b07e69da4fcc40bdc9a3ec7c8e8a2deb8dc1a691156294eb4168c2422f631136a4fed7413136631b3957999fe00fb645aaed16f87d
DIST jailer-v0.23.1-aarch64 2812344 BLAKE2B ef0b98a5438880d8473117dc051421faf4c9f4640fe017ba9cedeb88a02ff2a34fe6e0333bb7cb31cd436a95536efe5237d6a49ead6c7d1d3777928cc54f0baf SHA512 38876afcf6c5883b30156246b4b74905157b668a3e6fbe852b38a09a7f5ab5814fb9eaec87ef94390d2a40806c7b387b4266c8a0c4b4fba5e720f61d571bbcd7
DIST jailer-v0.23.1-x86_64 2589888 BLAKE2B b22a908d551b3da8f882b9c18031f0904808d8f77783c046f9a8855e713074ea61327b7c8c5f875361728bd33e33e4cd84431ead5f1fae68bdca8161e88bdd1c SHA512 a6829ffbacd35349214087f4ba1b88304c6bfd23b50d9f97319a93fae5c94c6d0590649fbd0917f9d82b6a2a6faab1f7e37a447864a4960e0b77407ae535212a

@ -1,82 +0,0 @@
# Copyright 2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit linux-info
DESCRIPTION="Secure and fast microVMs for serverless computing (static build)"
HOMEPAGE="https://firecracker-microvm.github.io https://github.com/firecracker-microvm/firecracker"
SRC_URI="
amd64? (
https://github.com/firecracker-microvm/firecracker/releases/download/v${PV}/firecracker-v${PV}-x86_64
https://github.com/firecracker-microvm/firecracker/releases/download/v${PV}/jailer-v${PV}-x86_64
)
arm64? (
https://github.com/firecracker-microvm/firecracker/releases/download/v${PV}/firecracker-v${PV}-aarch64
https://github.com/firecracker-microvm/firecracker/releases/download/v${PV}/jailer-v${PV}-aarch64
)"
LICENSE="|| ( Apache-2.0 MIT Apache-2.0-with-LLVM-exceptions ) MPL-2.0"
SLOT="0"
KEYWORDS="-* ~amd64"
RESTRICT="test strip"
RDEPEND="!app-emulation/firecracker
acct-group/kvm"
QA_PREBUILT="/usr/bin/firecracker
/usr/bin/jailer"
S="${WORKDIR}"
pkg_pretend() {
if use kernel_linux && kernel_is lt 4 14; then
eerror "Firecracker requires a host kernel of 4.14 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 ~VHOST_VSOCK"
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"
ERROR_TUN+=" virtual network devices."
ERROR_BRIDGE="You will also need support for 802.1d"
ERROR_BRIDGE+=" Ethernet Bridging for some network configurations."
ERROR_VHOST_VSOCK="To use AF_VSOCK sockets for communication"
ERROR_VHOST_VSOCK+=" between host and guest, you will need to enable"
ERROR_VHOST_VSOCK+=" the vhost virtio-vsock driver in your kernel."
if use amd64 || use amd64-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
# Now do the actual checks setup above
check_extra_config
fi
fi
}
src_unpack() { :; }
src_compile() { :; }
src_install() {
if use amd64; then
my_arch=x86_64
elif use arm64; then
my_arch=aarch64
fi
newbin "${DISTDIR}/firecracker-v${PV}-${my_arch}" firecracker
newbin "${DISTDIR}/jailer-v${PV}-${my_arch}" jailer
}

@ -19,7 +19,7 @@ SRC_URI="
LICENSE="|| ( Apache-2.0 MIT Apache-2.0-with-LLVM-exceptions ) MPL-2.0"
SLOT="0"
KEYWORDS="-* ~amd64"
KEYWORDS="~amd64"
RESTRICT="test strip"

@ -0,0 +1,82 @@
From 202d69a715a4b1824dcd7ec1683d027ed2bae6d3 Mon Sep 17 00:00:00 2001
Message-Id: <202d69a715a4b1824dcd7ec1683d027ed2bae6d3.1606202550.git.mprivozn@redhat.com>
From: Gerd Hoffmann <kraxel@redhat.com>
Date: Mon, 24 Aug 2020 13:00:57 +0200
Subject: [PATCH] usb-host: workaround libusb bug
libusb_get_device_speed() does not work for
libusb_wrap_sys_device() devices in v1.0.23.
Buglink: https://bugzilla.redhat.com/show_bug.cgi?id=1871090
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Message-id: 20200824110057.32089-1-kraxel@redhat.com
Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
---
hw/usb/host-libusb.c | 37 ++++++++++++++++++++++++++++++++++++-
1 file changed, 36 insertions(+), 1 deletion(-)
diff --git a/hw/usb/host-libusb.c b/hw/usb/host-libusb.c
index c474551d84..08604f787f 100644
--- a/hw/usb/host-libusb.c
+++ b/hw/usb/host-libusb.c
@@ -39,6 +39,11 @@
#endif
#include <libusb.h>
+#ifdef CONFIG_LINUX
+#include <sys/ioctl.h>
+#include <linux/usbdevice_fs.h>
+#endif
+
#include "qapi/error.h"
#include "migration/vmstate.h"
#include "monitor/monitor.h"
@@ -885,6 +890,7 @@ static void usb_host_ep_update(USBHostDevice *s)
static int usb_host_open(USBHostDevice *s, libusb_device *dev, int hostfd)
{
USBDevice *udev = USB_DEVICE(s);
+ int libusb_speed;
int bus_num = 0;
int addr = 0;
int rc;
@@ -935,7 +941,36 @@ static int usb_host_open(USBHostDevice *s, libusb_device *dev, int hostfd)
usb_ep_init(udev);
usb_host_ep_update(s);
- udev->speed = speed_map[libusb_get_device_speed(dev)];
+ libusb_speed = libusb_get_device_speed(dev);
+#ifdef CONFIG_LINUX
+ if (hostfd && libusb_speed == 0) {
+ /*
+ * Workaround libusb bug: libusb_get_device_speed() does not
+ * work for libusb_wrap_sys_device() devices in v1.0.23.
+ *
+ * Speeds are defined in linux/usb/ch9.h, file not included
+ * due to name conflicts.
+ */
+ int rc = ioctl(hostfd, USBDEVFS_GET_SPEED, NULL);
+ switch (rc) {
+ case 1: /* low */
+ libusb_speed = LIBUSB_SPEED_LOW;
+ break;
+ case 2: /* full */
+ libusb_speed = LIBUSB_SPEED_FULL;
+ break;
+ case 3: /* high */
+ case 4: /* wireless */
+ libusb_speed = LIBUSB_SPEED_HIGH;
+ break;
+ case 5: /* super */
+ case 6: /* super plus */
+ libusb_speed = LIBUSB_SPEED_SUPER;
+ break;
+ }
+ }
+#endif
+ udev->speed = speed_map[libusb_speed];
usb_host_speed_compat(s);
if (s->ddesc.iProduct) {
--
2.26.2

@ -0,0 +1,860 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
PYTHON_COMPAT=( python3_{6,7,8,9} )
PYTHON_REQ_USE="ncurses,readline"
PLOCALES="bg de_DE fr_FR hu it sv tr zh_CN"
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=(
tests/fp/berkeley-{test,soft}float-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 usb
usbredir vde +vhost-net vhost-user-fs virgl virtfs +vnc vte xattr xen
xfs +xkb 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 )
virtfs? ( caps xattr )
vte? ( gtk )
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(+)]
xkb? ( x11-libs/libxkbcommon[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(+)] )
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]
~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
>=sys-firmware/seabios-1.10.2[seavgabios]
sys-firmware/sgabios
)"
PPC64_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_ppc64? ( ${PPC64_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}-4.0.0-mkdir_systemtap.patch #684902
"${FILESDIR}"/${PN}-4.2.0-cflags.patch
"${FILESDIR}"/${PN}-5.1.0-pixman-for-vhost-user-gpu.patch
"${FILESDIR}"/${PN}-5.1.0-usb-oob-CVE-2020-14364.patch #743649
"${FILESDIR}"/${PN}-5.1.0-usb-host-workaround-libusb-bug.patch #753305
)
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/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 >/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
}
handle_locales() {
# Make sure locale list is kept up-to-date.
local detected sorted
detected=$(echo $(cd po && printf '%s\n' *.po | grep -v messages.po | sed 's:.po$::' | sort -u))
sorted=$(echo $(printf '%s\n' ${PLOCALES} | sort -u))
if [[ ${sorted} != "${detected}" ]] ; then
eerror "The ebuild needs to be kept in sync."
eerror "PLOCALES: ${sorted}"
eerror " po/*.po: ${detected}"
die "sync PLOCALES"
fi
# Deal with selective install of locales.
if use nls ; then
# Delete locales the user does not want. #577814
rm_loc() { rm po/$1.po || die; }
l10n_for_each_disabled_locale_do rm_loc
else
# Cheap hack to disable gettext .mo generation.
rm -f po/*.po
fi
}
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
export WINDRES=${CHOST}-windres
# Verbose builds
MAKEOPTS+=" V=1"
# Run after we've applied all patches.
handle_locales
# 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
--with-confsuffix=/qemu
--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 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
}
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_notuser 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 usb libusb)
$(conf_notuser usbredir usb-redir)
$(conf_notuser vde)
$(conf_notuser vhost-net)
$(conf_notuser vhost-user-fs)
$(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)
$(conf_notuser xkb 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-r1 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 Changelog 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"
# PPC64 loads vgabios-stdvga
if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386 || 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,6 +1,7 @@
DIST SparseBitSet-1.1.jar 23706 BLAKE2B 8623a723f11f97386a108c775fefddd324997b68bea7f7ade0581ec5800bfa8d32f699ab903ad66c631b7b5c69ba1ef377243653f5044f39234dac07543eb129 SHA512 cf75431c5f705961800ce5cbca2acb9b2459eaf98ec37b5ee21c5a90d204ffb466fa25457b0560fbb024489777efbea0276201024c7b1b2853124930ac490983
DIST commons-validator-1.6.jar 186077 BLAKE2B 39080bebfde71d87847b65f212d47a51bab9567cb0aaf7122359a67a8eb817877a6cc80495a15aefb12936d0e36532ed771dc0a2dff8401fc301f658ed38ef88 SHA512 aded530d3b79ead6ba5c44668c6d6964d7721f9617249f6aaa1c8f558ad4b3d3c1b6d78b639a4cb8dd27a671879b662fdbba0502fd04e131f3286169507df30c
DIST gson-2.8.5.jar 241622 BLAKE2B b13887177b5d5f2a11b2dde1fdbaa3a95b55bb7b5500624c7eb0745e861c897ed1e27868bad19d30a1670c90f3068a8fd40e1b81e5e25e96819fa5c371a5e1af SHA512 5dd7214c542a7b93aab3eab0ba13e4ac3d6ddb05c795fb6d3992e21925a98dce87cb186ac67b4d3ad146f96e14d38b3892837eca57a27b4e845aca6d4e4f708a
DIST sleuthkit-4.10.1.tar.gz 3524246 BLAKE2B ddea16693730a993032868ea60423d4bfcf3cba470010854c7bd36ab0a033325d906a0e4760501d59fdda4f37e12052f8672d33e4e374d1a6cdb03e22d0de367 SHA512 3ee335ba98bbb16985207ad50bc15a607ea2bcf550bba392be1cace8982c893a29e9de64e6598d02f41f9f745dc720f829317ed31f068e6cb1f6c230699e47bf
DIST sleuthkit-4.9.0.tar.gz 3473764 BLAKE2B 3950e586595f53a81c845b3b1fbaf4939a84ee3d81e8141cabf41c9fbee1b1f5cf1b8bd6cab95b157d60364541736f750c8ada61c76da89e663721b9a67330ef SHA512 1db8b9f825aa551fe5bdf01285832b903fb4f2d6a8fd9a57a5cd5c9005dfdbec22d3dd49d394616d838e2a2111110018e787f2ed467a1c27a500fc75bed0dd0b
DIST sleuthkit-libewf_64bit-20130416.tar.gz 23818247 BLAKE2B 23be933ed8a74e4834ee6571a28d81ba16e98e4e4e27b5b1b3b655d1d92a6eadcba35aadf96aa404e6e0a225b27f3f5daff2836879b87fe58440a3ad5645de44 SHA512 611cbb57de17600caee0330bbe9917c4481d7711a35dba8c072fd49cd3e1714e0a3ce30fd8fcac9981db848e80870bf5d215326c56808bb6f5b4c8dcc1e5a3c9
DIST sqlite-jdbc-3.25.2.jar 7064881 BLAKE2B 3917da6127137bab710a9e61f326f59320ce94654ebb8ae5e694b05aed6b9b1bd367ade2f08ce5bb52c3ac296992240ad949969f5eff712615d07a18588c6a17 SHA512 efd1ea26d7f4f9bc66bf0d5f80234a0c535829bd498e4c5a0cab42873b58ac69133497d8c45689a1d3a39e657a2d0474d6b930c7bc415dd623801ee4a7354ffb

@ -0,0 +1,304 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
JAVA_PKG_BSFIX_NAME="build.xml build-unix.xml"
inherit autotools java-pkg-opt-2 java-ant-2
DESCRIPTION="A collection of file system and media management forensic analysis tools"
HOMEPAGE="https://www.sleuthkit.org/sleuthkit/"
# TODO: sqlite-jdbc does not exist in the tree, we bundle it for now
# See: https://bugs.gentoo.org/690010
# TODO: SparseBitSet does not exist in the tree, we bundle it for now
# See: https://bugs.gentoo.org/690012
# TODO: Upstream uses a very specific version of libewf which is not in
# the tree anymore. So we statically compile and link to sleuthkit.
# Hopefully upstream will figure something out in the future.
# See: https://bugs.gentoo.org/689752
# TODO: gson-2.8.5 does not exist in the tree. Building it seems to
# require Java 9. We have Java 11 in the tree but I don't see a
# way to use it as a gentoo-vm in order to build gson. Sleuthkit
# upstream still uses Java 8.
# See: https://bugs.gentoo.org/706274
# TODO: commons-validator-1.6 does not exist in the tree. The latest version
# as of writing this ebuild is 1.4.1, for which the build fails. As
# per #711930, this is a security sensitive bump. We're gonna fetch
# the jar file here and file a bug request for a bump as well:
# https://bugs.gentoo.org/721020
SRC_URI="https://github.com/${PN}/${PN}/releases/download/${P}/${P}.tar.gz
java? (
https://repo1.maven.org/maven2/com/google/code/gson/gson/2.8.5/gson-2.8.5.jar
http://repo1.maven.org/maven2/org/xerial/sqlite-jdbc/3.25.2/sqlite-jdbc-3.25.2.jar
http://repo1.maven.org/maven2/com/zaxxer/SparseBitSet/1.1/SparseBitSet-1.1.jar
https://repo1.maven.org/maven2/commons-validator/commons-validator/1.6/commons-validator-1.6.jar
)
ewf? ( https://github.com/sleuthkit/libewf_64bit/archive/VisualStudio_2010.tar.gz -> sleuthkit-libewf_64bit-20130416.tar.gz )"
LICENSE="BSD CPL-1.0 GPL-2+ IBM java? ( Apache-2.0 )"
SLOT="0/19" # subslot = major soname version
KEYWORDS="~amd64 ~hppa ~ppc ~x86"
IUSE="aff doc ewf java static-libs test +threads zlib"
RESTRICT="!test? ( test )"
DEPEND="
dev-db/sqlite:3
dev-lang/perl:*
aff? ( app-forensics/afflib )
ewf? ( sys-libs/zlib )
java? (
>=dev-java/c3p0-0.9.5:0
dev-java/commons-lang:3.1
dev-java/guava:20
>=dev-java/jdbc-postgresql-9.4:0
>=dev-java/joda-time-2.4:0
)
zlib? ( sys-libs/zlib )
"
# TODO: add support for not-in-tree libraries libvhdi and libvmdk
# libvhdi: https://github.com/libyal/libvhdi
# libvmdk: https://github.com/libyal/libvmdk
# DEPEND="${DEPEND}
# vhdi? ( dev-libs/libvhdi )
# vmdk? ( dev-libs/libvmdk )
# "
RDEPEND="${DEPEND}
java? (
|| (
virtual/jre:1.8
virtual/jdk:1.8
)
)
"
DEPEND="${DEPEND}
java? ( virtual/jdk:1.8 )
doc? ( app-doc/doxygen )
test? ( >=dev-util/cppunit-1.2.1 )
"
PATCHES=(
"${FILESDIR}"/${PN}-4.1.0-tools-shared-libs.patch
"${FILESDIR}"/${PN}-4.6.4-default-jar-location-fix.patch
)
src_unpack() {
local f
unpack ${P}.tar.gz
if use ewf; then
pushd "${T}" &>/dev/null || die
unpack sleuthkit-libewf_64bit-20130416.tar.gz
export TSK_LIBEWF_SRCDIR="${T}"/libewf_64bit-VisualStudio_2010
popd &>/dev/null || die
fi
# Copy the jar files that don't exist in the tree yet
if use java; then
TSK_JAR_DIR="${T}/lib"
mkdir "${TSK_JAR_DIR}" || die
for f in ${A}; do
if [[ ${f} =~ .jar$ ]]; then
cp "${DISTDIR}"/"${f}" "${TSK_JAR_DIR}" || die
fi
done
export TSK_JAR_DIR
fi
}
tsk_prepare_libewf() {
# Inlining breaks the compilation, disable it
sed -e 's/LIBUNA_INLINE inline/LIBUNA_INLINE/' \
-i "${TSK_LIBEWF_SRCDIR}"/libuna/libuna_inline.h || die
}
src_prepare() {
use ewf && tsk_prepare_libewf
# Do not pass '-Werror'. This is overkill for user builds.
sed -e '/AM_CXXFLAGS/ s/-Werror//g' \
-i tsk/util/Makefile.am \
-i tsk/pool/Makefile.am || die
# Remove -static from LDFLAGS because it doesn't actually create
# a static binary. It confuses libtool, who then inserts rpath
sed -e '/LDFLAGS/ s/-static//' \
-i tools/pooltools/Makefile.am || die
if use java; then
pushd "${S}"/bindings/java &>/dev/null || die
# Prevent "make install" from installing
# jar files under /usr/share/java
# We'll use the java eclasses for this
# See: https://github.com/sleuthkit/sleuthkit/pull/1379
sed -e '/^jar_DATA/ d;' -i Makefile.am || die
java-pkg-opt-2_src_prepare
popd &>/dev/null || die
fi
# Override the doxygen output directories
if use doc; then
sed -e "/^OUTPUT_DIRECTORY/ s|=.*$|= ${T}/doc|" \
-i tsk/docs/Doxyfile \
-i bindings/java/doxygen/Doxyfile || die
fi
# It's safe to call this even after java-pkg-opt-2_src_prepare
# because future calls to eapply_user do nothing and return 0
default
eautoreconf
}
tsk_compile_libewf() {
local myeconfargs=(
--prefix=/
--libdir=/lib
--enable-static
--disable-shared
--disable-winapi
--without-libbfio
--with-zlib
--without-bzip2
--without-libhmac
--without-openssl
--without-libuuid
--without-libfuse
--with-libcstring=no
--with-libcerror=no
--with-libcdata=no
--with-libclocale=no
--with-libcnotify=no
--with-libcsplit=no
--with-libuna=no
--with-libcfile=no
--with-libcpath=no
--with-libbfio=no
--with-libfcache=no
--with-libfvalue=no
)
# We want to contain our build flags
local CFLAGS="${CFLAGS}"
local LDFLAGS="${LDFLAGS}"
pushd "${TSK_LIBEWF_SRCDIR}" &>/dev/null || die
# Produce relocatable code
CFLAGS+=" -fPIC"
LDFLAGS+=" -fPIC"
econf "${myeconfargs[@]}"
# Do not waste CPU cycles on building ewftools
sed -e '/ewftools/ d' -i Makefile || die
emake
# Only install the headers and the library
emake -C libewf DESTDIR="${T}"/image install
emake -C include DESTDIR="${T}"/image install
find "${T}"/image -name '*.la' -delete || die
popd &>/dev/null || die
}
src_configure() {
local myeconfargs=(
--enable-offline="${TSK_JAR_DIR}"
$(use_enable java)
$(use_enable static-libs static)
$(use_enable threads multithreading)
$(use_with aff afflib)
$(use_with zlib)
)
# TODO: add support for non-existing libraries libvhdi and libvmdk
# myeconfargs+=(
# $(use_with vhdi libvhdi)
# $(use_with vmdk libvmdk)
# )
myeconfargs+=(
--without-libvhdi
--without-libvmdk
)
use ewf && tsk_compile_libewf
myeconfargs+=( $(use_with ewf libewf "${T}"/image) )
if use java; then
pushd "${S}"/bindings/java &>/dev/null || die
java-ant-2_src_configure
popd &>/dev/null || die
fi
econf "${myeconfargs[@]}"
}
src_compile() {
# Give it an existing bogus ivy home #672220
local -x IVY_HOME="${T}"
# Create symlinks of jars for the required dependencies
if use java; then
java-pkg_jar-from --into "${TSK_JAR_DIR}" c3p0
java-pkg_jar-from --into "${TSK_JAR_DIR}" commons-lang:3.1
java-pkg_jar-from --into "${TSK_JAR_DIR}" guava:20
java-pkg_jar-from --into "${TSK_JAR_DIR}" jdbc-postgresql
java-pkg_jar-from --into "${TSK_JAR_DIR}" joda-time
# case-uco needs gson and expects it under case-uco/java/lib
# symlink it to the jar dir we create for java bindings
ln -s "${TSK_JAR_DIR}" "${S}"/case-uco/java/lib || die
fi
# Create the doc output dirs if requested
if use doc; then
mkdir -p "${T}"/doc/{api-docs,jni-docs} || die
fi
emake all $(usex doc api-docs "")
}
src_install() {
local f
if use java; then
pushd "${S}"/bindings/java &>/dev/null || die
# Install case-uco
pushd "${S}"/case-uco/java &>/dev/null || die
java-pkg_newjar "dist/${PN}-caseuco-${PV}".jar "${PN}-caseuco.jar"
popd || die
# Install the bundled jar files as well as the
# sleuthkit jar installed here by case-uco
pushd "${TSK_JAR_DIR}" &>/dev/null || die
for f in *; do
# Skip the symlinks java-pkg_jar-from created
[[ -f ${f} ]] || continue
# Strip the version numbers as per eclass recommendation
[[ ${f} =~ -([0-9]+\.)+jar$ ]] || continue
java-pkg_newjar "${f}" "${f/${BASH_REMATCH[0]}/.jar}"
done
popd &>/dev/null || die
popd &>/dev/null || die
fi
default
# Default install target for case-uco installs the jar in the wrong place
rm -r "${ED}"/usr/share/java
# It unconditionally builds both api and jni docs
# We install conditionally based on the provided use flags
if use doc; then
dodoc -r "${T}"/doc/api-docs
use java && dodoc -r "${T}"/doc/jni-docs
fi
find "${D}" -name '*.la' -delete || die
}

Binary file not shown.

@ -1,2 +1,2 @@
DIST transifex-client-0.13.12.tar.gz 211369 BLAKE2B e536e2d1c33c9a64326cac9bab2a5d162fc554185127b2e8d3fc77e81cb4f19b8c2b66b5bd4502cf3129bbf1f0aa2c6649552392831b3d2b6ed322170de31952 SHA512 e4a5c78f3cdf589ad186a09b8ada09e06a725499234c03a037f8a8fb33447fb25edaf921a395ce8cb31c11c08a21dbb1b7b35cf54276995d255ddb2382e549c9
DIST transifex-client-0.13.9.tar.gz 197283 BLAKE2B 9fd6f63a54d09f190f7dd6701e4994e4fd67e23cf630dcb49641a3c7356e55f1146be7c2a590fb09a52cccfa99e709c48fffd7df416d1d4c10231c4f42919380 SHA512 3dc4a1e713a797ce1ea626c9e85dd353fec3034ba21ab04bc89e5b927e0298b4f6560a793eec50d1a99c7ab340462c33d18c1e159697c476001be868cb7f87fa
DIST transifex-client-0.14.2.tar.gz 211398 BLAKE2B 4210a06da9fd09e689d28ae77a90c65f96cbba7b44a2cc506c2e385dc2f34659bfbda25eb81cef850442f4b3da22a859e19761798ec123888564b0327f0c6503 SHA512 5d7f8241d61621197df95cb42b2a8fb8088e77543f076c2401db14f7e44d67e49478d0b04cb525fc6281b37e5026edc8121f90cb7332e669d63be6112264044d

Binary file not shown.

@ -1,4 +1,4 @@
# Copyright 1999-2017 Gentoo Foundation
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
@ -16,10 +16,12 @@ KEYWORDS="amd64 ppc ppc64 sparc x86"
src_prepare() {
# Don't strip, install in correct share dir and respect CFLAGS
sed \
-e "s:install -s:install:g" -e "s:#SHARE:SHARE:g" -e "s:-O2:${CFLAGS}:g" \
-e "s@install -s@install@g" \
-e "s@#SHARE@SHARE@g" \
-e "s@-O2@${CFLAGS}@g" \
-i Makefile || die
sed \
-e 's:grep -v:grep --binary-files=text -v:g' \
-e 's@grep -v@grep --binary-files=text -v@g' \
-i runtest.sh || die
default

@ -1,2 +1 @@
DIST ondir-0.2.2.tar.gz 20138 BLAKE2B 3724b8d356cec16e1f60ec49574e2f688d4f7456f48f1d909402e8436f588d9617c827eda9a74c1b930d2538fe8c9d1372a1d222124d8f7b863bf8e895cfaa25 SHA512 5c2c53532934b25d2a170c619d067c369b6acf2ef3e0a87607619613dcc0bbfc570937fb91cdc5df3f22ae0453b5a5d00edd57cd1b852f7a076c15b96c45d4dd
DIST ondir-0.2.4.tar.gz 52860 BLAKE2B e9111f9a64d8d7393d9a8e48d5dc66d5814995ae1dbd2f577538a03021c1b1b92af43acbd0ab9cb24ab29ba16c50d5752a9442689effc62bd8c13b6fe11a4785 SHA512 f59a823807f86ce2992aaf5fb174ddea222b02ed18e1289ca450179bd090892f1467072dfcec97ce219e216c055781ea7a1a05bb9402276fb9404a57f42ddb52

@ -1,45 +0,0 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
inherit toolchain-funcs
DESCRIPTION="Automatically execute scripts as you traverse directories"
HOMEPAGE="http://swapoff.org/OnDir"
SRC_URI="http://swapoff.org/files/${PN}/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="amd64 ppc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
DEPEND="sys-apps/sed"
RDEPEND="${DEPEND}"
DOCS=( AUTHORS ChangeLog README INSTALL scripts.tcsh scripts.sh )
HTML_DOCS=( changelog.html ondir.1.html )
src_prepare() {
default
sed -i \
-e "s:\(/man/.*$\):/share\1:g" \
-e "s:-g:${CFLAGS}:" Makefile || die "sed Makefile failed"
}
src_compile() {
emake \
CC="$(tc-getCC)" \
PREFIX="${EPREFIX}/usr" \
CONF="${EPREFIX}/etc/ondirrc" \
LDFLAGS="${LDFLAGS}"
}
src_install() {
default
emake \
DESTDIR="${D}" \
PREFIX="${EPREFIX}/usr" \
CONF="${EPREFIX}/etc/ondirrc" \
install
newdoc ondirrc.eg ondirrc.example
}

@ -11,7 +11,7 @@ SRC_URI="http://swapoff.org/files/${PN}/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~ppc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
KEYWORDS="amd64 ppc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
DEPEND="sys-apps/sed"
RDEPEND="${DEPEND}"

@ -1,2 +1,2 @@
DIST when-1.1.36.tar.gz 50926 BLAKE2B 339e50db6b3c7e4867569e2a400563e9d53966904cf904044b3e7f7deee8e60872582011d90e1a685d69c4a1a5b9ffe2a727470bb09c8d6e1ca7780c9d0abce7 SHA512 04b2efbcebae79325d8410a5aa5cdf59662fe42c06229ebc91f3b7163091d305a6ba91914a2a9117d86807d5ca0c875d48679dbc3545162a7263679bf605a52e
DIST when-1.1.37.tar.gz 51020 BLAKE2B 242d7833c91279bc7a73effc108a0f7d5edad9838006d8ff632c46215b7cd2a2187660075e2525a352a458a494abc648a9518945cdf18e2e7d58261e428efd8f SHA512 b1f0cb9cb797a5a32263ef2851498dfbf6a769d3e708b79ca1c5b37c7c877124194dd9b5ae78bfafebc0e73e82f306b3ae734a5ef7140fe3bf0e6b2cfcc4bb18
DIST when-1.1.40.tar.gz 55306 BLAKE2B 3d4bdc962ccff64b09f5dda7a2c7be1daa0fd5fed2039f784ea6279e9aac495823159098f6a05c281de40d7964cc244a76c6b3bda1c4227748c04c98effac54d SHA512 0d70f2c9c4d44bbd922dc0d6b1a4e1eb90561a81add3ad4f1e1fc467a6331ca856d66725361d4e5ea3f1ce9ea1ed59d91ad18178e022b029c04c0c15747ecbcd

@ -1,4 +1,4 @@
# Copyright 1999-2017 Gentoo Foundation
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
@ -9,7 +9,7 @@ SRC_URI="http://www.lightandmatter.com/when/when.tar.gz -> ${P}.tar.gz"
LICENSE="Artistic"
SLOT="0"
KEYWORDS="~amd64 ~ppc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
KEYWORDS="amd64 ppc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
DEPEND="dev-lang/perl"
RDEPEND="${DEPEND}"

@ -1,7 +1,7 @@
# Copyright 1999-2017 Gentoo Foundation
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
EAPI=7
DESCRIPTION="Minimalistic personal calendar program"
HOMEPAGE="http://www.lightandmatter.com/when/when.html"
@ -9,7 +9,7 @@ SRC_URI="http://www.lightandmatter.com/when/when.tar.gz -> ${P}.tar.gz"
LICENSE="Artistic"
SLOT="0"
KEYWORDS="amd64 ppc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
KEYWORDS="~amd64 ~ppc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
DEPEND="dev-lang/perl"
RDEPEND="${DEPEND}"
@ -18,6 +18,8 @@ S="${WORKDIR}/when_dist"
DOCS=( README )
RESTRICT="test"
src_prepare() {
default

Binary file not shown.

@ -125,7 +125,7 @@ COMMON_DEPEND="${PYTHON_DEPS}
app-text/liblangtag
>=app-text/libmspub-0.1.0
>=app-text/libmwaw-0.3.1
app-text/libnumbertext
>=app-text/libnumbertext-1.0.6
>=app-text/libodfgen-0.1.0
app-text/libqxp
app-text/libstaroffice

@ -125,7 +125,7 @@ COMMON_DEPEND="${PYTHON_DEPS}
app-text/liblangtag
>=app-text/libmspub-0.1.0
>=app-text/libmwaw-0.3.1
app-text/libnumbertext
>=app-text/libnumbertext-1.0.6
>=app-text/libodfgen-0.1.0
app-text/libqxp
app-text/libstaroffice

@ -125,7 +125,7 @@ COMMON_DEPEND="${PYTHON_DEPS}
app-text/liblangtag
>=app-text/libmspub-0.1.0
>=app-text/libmwaw-0.3.1
app-text/libnumbertext
>=app-text/libnumbertext-1.0.6
>=app-text/libodfgen-0.1.0
app-text/libqxp
app-text/libstaroffice

@ -7,6 +7,5 @@
</maintainer>
<use>
<flag name="activities">Enable kactivities support</flag>
<flag name="designer">Build plugins for <pkg>dev-qt/designer</pkg></flag>
</use>
</pkgmetadata>

@ -5,8 +5,8 @@ EAPI=7
ECM_HANDBOOK="optional"
ECM_TEST="forceoptional"
KFMIN=5.60.0
QTMIN=5.12.3
KFMIN=5.74.0
QTMIN=5.15.1
VIRTUALX_REQUIRED="test"
inherit ecm kde.org
@ -20,16 +20,14 @@ fi
LICENSE="GPL-2"
SLOT="5"
IUSE="activities designer kde ofx"
REQUIRED_USE="test? ( designer )"
IUSE="activities kde ofx"
BDEPEND="
dev-libs/libxslt
virtual/pkgconfig
"
COMMON_DEPEND="
app-crypt/qca:2[qt5(+)]
>=app-crypt/qca-2.3.0:2
dev-db/sqlcipher
dev-libs/grantlee:5
>=dev-qt/qtconcurrent-${QTMIN}:5
@ -71,23 +69,19 @@ DEPEND="${COMMON_DEPEND}
>=kde-frameworks/kguiaddons-${KFMIN}:5
>=kde-frameworks/kjobwidgets-${KFMIN}:5
>=kde-frameworks/kwindowsystem-${KFMIN}:5
designer? (
>=dev-qt/designer-${QTMIN}:5
>=kde-frameworks/kdesignerplugin-${KFMIN}:5
)
"
RDEPEND="${COMMON_DEPEND}
>=dev-qt/qtquickcontrols-${QTMIN}:5
"
# hangs + installs files
# hangs + installs files (also requires KF5DesignerPlugin)
RESTRICT+=" test"
src_configure() {
local mycmakeargs=(
-DSKG_WEBENGINE=ON
-DSKG_DESIGNER=OFF
$(cmake_use_find_package activities KF5Activities)
-DSKG_DESIGNER=$(usex designer)
$(cmake_use_find_package kde KF5Runner)
$(cmake_use_find_package ofx LibOfx)
-DSKG_BUILD_TEST=$(usex test)

Binary file not shown.

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

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

Binary file not shown.

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

Binary file not shown.

@ -1,2 +1 @@
DIST ansifilter-2.16.tar.bz2 441932 BLAKE2B 7a6af4e4b78cd4c26551791b4661a6f41c397a65abe19667f049bd393af0c5e1453a3f7f5f56c7d321c41c2cf36acc05575bb866f5dbf04184de1069d6c64a20 SHA512 ef621087e6d522e08423802d223f826f2fd6fe3b2efd8ed26e09f64e666202cdcdf68d19ebe5ac4b858a4339a8aa4d5f2ba309efa310837808381e09e39d4f90
DIST ansifilter-2.17.tar.bz2 436116 BLAKE2B 94a1788cffa66343643f48a18748d5359b090803cde723a02bc38f908c262631f1cd2eb150b6a743d66caa04983ea444ba150cf34ce07bdb456979e19631582f SHA512 ab9d590189482f2a27affd62b456c96b947b04d8c8b1214f1ea967971c8ed7df8a7c15d1079f957164d01916d144dcd5dc4b0ac05b452f9f4b8095273d3d3162

@ -1,57 +0,0 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit toolchain-funcs qmake-utils
DESCRIPTION="Handles text files containing ANSI terminal escape codes"
HOMEPAGE="http://www.andre-simon.de/"
SRC_URI="http://www.andre-simon.de/zip/${P}.tar.bz2"
LICENSE="GPL-3+"
SLOT="0"
KEYWORDS="amd64 ~arm ~arm64 ~ppc64 x86"
IUSE="qt5"
RDEPEND="
qt5? (
dev-qt/qtcore:5
dev-qt/qtgui:5
dev-qt/qtwidgets:5
)"
DEPEND="${RDEPEND}"
src_prepare() {
default
# bug 431452
rm src/qt-gui/moc_mydialog.cpp || die
}
src_configure() {
if use qt5 ; then
pushd src/qt-gui > /dev/null || die
eqmake5
popd > /dev/null || die
fi
}
src_compile() {
emake -f makefile CC="$(tc-getCXX)" CXXFLAGS="${CXXFLAGS} -DNDEBUG -std=c++11"
if use qt5 ; then
pushd src/qt-gui > /dev/null || die
emake
popd > /dev/null || die
fi
}
src_install() {
dobin src/${PN}
use qt5 && dobin src/qt-gui/${PN}-gui
gunzip man/${PN}.1.gz
doman man/${PN}.1
einstalldocs
}

@ -11,7 +11,7 @@ SRC_URI="http://www.andre-simon.de/zip/${P}.tar.bz2"
LICENSE="GPL-3+"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
KEYWORDS="amd64 ~arm ~arm64 ppc64 x86"
IUSE="qt5"
RDEPEND="

@ -10,7 +10,7 @@ HOMEPAGE="https://git.gnome.org/browse/libgepub"
LICENSE="LGPL-2+"
SLOT="0"
KEYWORDS="amd64 ~arm ~arm64 x86"
KEYWORDS="amd64 ~arm ~arm64 ~ppc64 x86"
IUSE="+introspection"
RDEPEND="

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

@ -1,2 +1 @@
DIST poppler-0.90.1.tar.xz 1633804 BLAKE2B 5c7256bca74af6cc2732fb6c413bec10ea579f28fe623ccb5d4863c62d39329a4264c240ee0e395a78de577a960a5156ba20f957990c0cde91efcee72dbc2fef SHA512 c0a38c3c40196f8b847f0737152d0cbb40656870a8ceb766134ee22ec7c21bc979a13f56b7596a13ae2f08f1a9a2c396ba7f5ff176d02c262af7e863c2afde34
DIST poppler-20.11.0.tar.xz 1648432 BLAKE2B 373464ba60ed84863b40eca2e4f99ebc1625ea06f68a1621165675cf46e70713b649f90630049d15c5c2bc59bd0befb437a4039b47e17509d4fcc4fed8586d53 SHA512 c8237e931ef20d939656e2600453fffb12a2beeafb273782b2069aec6e5915d8cc85136982b7eaf5956af30ce00da2faf84d86ffab47f725447dfbb9d6ffe335

@ -1,49 +0,0 @@
--- poppler-0.82.0/cmake/modules/PopplerMacros.cmake
+++ poppler-0.82.0/cmake/modules/PopplerMacros.cmake
@@ -145,46 +145,6 @@
endif(GCC_HAS_AS_NEEDED)
endif (CMAKE_COMPILER_IS_GNUCXX)
-if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")
-# set the default compile warnings
- set(_warn "-Wall -Wextra -Wpedantic")
- set(_warn "${_warn} -Wno-unused-parameter")
- set(_warn "${_warn} -Wcast-align")
- set(_warn "${_warn} -Wformat-security")
- set(_warn "${_warn} -Wframe-larger-than=65536")
- set(_warn "${_warn} -Wmissing-format-attribute")
- set(_warn "${_warn} -Wnon-virtual-dtor")
- set(_warn "${_warn} -Woverloaded-virtual")
- set(_warn "${_warn} -Wmissing-declarations")
- set(_warn "${_warn} -Wundef")
- set(_warn "${_warn} -Wzero-as-null-pointer-constant")
- set(_warn "${_warn} -Wshadow")
-
- # set extra warnings
- set(_warnx "${_warnx} -Wconversion")
-
- set(DEFAULT_COMPILE_WARNINGS "${_warn}")
- set(DEFAULT_COMPILE_WARNINGS_EXTRA "${_warn} ${_warnx}")
-
- set(_save_cxxflags "${CMAKE_CXX_FLAGS}")
- set(CMAKE_CXX_FLAGS "-fno-exceptions -fno-check-new -fno-common -D_DEFAULT_SOURCE")
- set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g ${_save_cxxflags}")
- set(CMAKE_CXX_FLAGS_RELEASE "-O2 -DNDEBUG ${_save_cxxflags}")
- # clang does not support -fno-reorder-blocks -fno-schedule-insns, so do not use -O2
- set(CMAKE_CXX_FLAGS_DEBUG "-g ${_save_cxxflags}")
- set(CMAKE_CXX_FLAGS_DEBUGFULL "-g3 -fno-inline ${_save_cxxflags}")
- set(CMAKE_CXX_FLAGS_PROFILE "-g3 -fno-inline -ftest-coverage -fprofile-arcs ${_save_cxxflags}")
- set(_save_cflags "${CMAKE_C_FLAGS}")
- set(CMAKE_C_FLAGS "-std=c99 -D_DEFAULT_SOURCE")
- set(CMAKE_C_FLAGS_RELWITHDEBINFO "-O2 -g ${_save_cflags}")
- set(CMAKE_C_FLAGS_RELEASE "-O2 -DNDEBUG ${_save_cflags}")
- # clang does not support -fno-reorder-blocks -fno-schedule-insns, so do not use -O2
- set(CMAKE_C_FLAGS_DEBUG "-g ${_save_cflags}")
- set(CMAKE_C_FLAGS_DEBUGFULL "-g3 -fno-inline ${_save_cflags}")
- set(CMAKE_C_FLAGS_PROFILE "-g3 -fno-inline -ftest-coverage -fprofile-arcs ${_save_cflags}")
-
-endif()
-
if(CMAKE_C_COMPILER MATCHES "icc")
set(_save_cxxflags "${CMAKE_CXX_FLAGS}")
set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g ${_save_cxxflags}")

@ -1,124 +0,0 @@
# Copyright 2005-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit cmake toolchain-funcs xdg-utils
if [[ ${PV} == *9999* ]] ; then
inherit git-r3
EGIT_REPO_URI="https://anongit.freedesktop.org/git/poppler/poppler.git"
SLOT="0/9999"
else
SRC_URI="https://poppler.freedesktop.org/${P}.tar.xz"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
SLOT="0/101" # CHECK THIS WHEN BUMPING!!! SUBSLOT IS libpoppler.so SOVERSION
fi
DESCRIPTION="PDF rendering library based on the xpdf-3.0 code base"
HOMEPAGE="https://poppler.freedesktop.org/"
LICENSE="GPL-2"
IUSE="cairo cjk curl +cxx debug doc +introspection +jpeg +jpeg2k +lcms nss png qt5 tiff +utils"
# No test data provided
RESTRICT="test"
BDEPEND="
dev-util/glib-utils
virtual/pkgconfig
"
DEPEND="
media-libs/fontconfig
media-libs/freetype
sys-libs/zlib
cairo? (
dev-libs/glib:2
x11-libs/cairo
introspection? ( dev-libs/gobject-introspection:= )
)
curl? ( net-misc/curl )
jpeg? ( virtual/jpeg:0 )
jpeg2k? ( >=media-libs/openjpeg-2.3.0-r1:2= )
lcms? ( media-libs/lcms:2 )
nss? ( >=dev-libs/nss-3.19:0 )
png? ( media-libs/libpng:0= )
qt5? (
dev-qt/qtcore:5
dev-qt/qtgui:5
dev-qt/qtxml:5
)
tiff? ( media-libs/tiff:0 )
"
RDEPEND="${DEPEND}
cjk? ( app-text/poppler-data )
"
DOCS=( AUTHORS NEWS README.md README-XPDF )
PATCHES=(
"${FILESDIR}/${PN}-0.60.1-qt5-dependencies.patch"
"${FILESDIR}/${PN}-0.28.1-fix-multilib-configuration.patch"
"${FILESDIR}/${PN}-0.82.0-respect-cflags.patch"
"${FILESDIR}/${PN}-0.61.0-respect-cflags.patch"
"${FILESDIR}/${PN}-0.57.0-disable-internal-jpx.patch"
)
src_prepare() {
cmake_src_prepare
# Clang doesn't grok this flag, the configure nicely tests that, but
# cmake just uses it, so remove it if we use clang
if [[ ${CC} == clang ]] ; then
sed -e 's/-fno-check-new//' -i cmake/modules/PopplerMacros.cmake || die
fi
if ! grep -Fq 'cmake_policy(SET CMP0002 OLD)' CMakeLists.txt ; then
sed -e '/^cmake_minimum_required/acmake_policy(SET CMP0002 OLD)' \
-i CMakeLists.txt || die
else
einfo "policy(SET CMP0002 OLD) - workaround can be removed"
fi
}
src_configure() {
xdg_environment_reset
local mycmakeargs=(
-DBUILD_GTK_TESTS=OFF
-DBUILD_QT5_TESTS=OFF
-DBUILD_CPP_TESTS=OFF
-DRUN_GPERF_IF_PRESENT=OFF
-DENABLE_SPLASH=ON
-DENABLE_ZLIB=ON
-DENABLE_ZLIB_UNCOMPRESS=OFF
-DENABLE_UNSTABLE_API_ABI_HEADERS=ON
-DUSE_FLOAT=OFF
-DWITH_Cairo=$(usex cairo)
-DENABLE_LIBCURL=$(usex curl)
-DENABLE_CPP=$(usex cxx)
-DWITH_JPEG=$(usex jpeg)
-DENABLE_DCTDECODER=$(usex jpeg libjpeg none)
-DENABLE_LIBOPENJPEG=$(usex jpeg2k openjpeg2 none)
-DENABLE_CMS=$(usex lcms lcms2 none)
-DWITH_NSS3=$(usex nss)
-DWITH_PNG=$(usex png)
$(cmake_use_find_package qt5 Qt5Core)
-DWITH_TIFF=$(usex tiff)
-DENABLE_UTILS=$(usex utils)
-DENABLE_QT6=OFF
)
use cairo && mycmakeargs+=( -DWITH_GObjectIntrospection=$(usex introspection) )
cmake_src_configure
}
src_install() {
cmake_src_install
# live version doesn't provide html documentation
if use cairo && use doc && [[ ${PV} != *9999* ]]; then
# For now install gtk-doc there
insinto /usr/share/gtk-doc/html/poppler
doins -r "${S}"/glib/reference/html/*
fi
}

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

@ -1,3 +1,4 @@
DIST qpdf-10.0.1.tar.gz 18399985 BLAKE2B 5e113790e7c2b48987c18aa7f562ff18f0efb544c48be8c36ba201ba1420168a7f32ebfe2e5754e8af679557df29093e0fd550c991b5201e4246be827952b3d3 SHA512 b73c0839b08905052d90ed78645cc9fb4fda4a0fa803db7b46f3d77a2c2f7e8cec52173834b1e1f008f3a3475a7d913362d22e1ebece11187a90c9035b81de94
DIST qpdf-10.0.4.tar.gz 18465085 BLAKE2B 3b9edc38069d58d43d26b131da755b7921b7add905ed652e3abb48d9b2e140d0c3b38f0250dbd3dca1c4b3dadf76c636606c6fa802b1ebe2dda77444badd828e SHA512 0a8c243928a3273d78b4a898e17a619f1565ec5e9b6f637800a2937749fb8006d0438fee2e623d2f8dc715bfb478ee818e86e9da7c7e0fcf14af496464b79a07
DIST qpdf-9.0.2.tar.gz 18168977 BLAKE2B 46b397f0e6a97804c5e8dcbfc9fd2278960d5afd459430c1790bb8f9080062cf661cf186ab386721ed7560dbd4abbea43e4d31914c0636502c5c11096c250fe2 SHA512 275ca81603d53601e4389cb34eaebea1c5d52b310ef28f3375fbeee255a28edf9375f03f31649f580dbc3df73b851a2c8498feb3dd7b30067955571b05c9e69c
DIST qpdf-9.1.1.tar.gz 18312457 BLAKE2B 0bbfaa782e46a911b20440bcf122d2745dde62de16423307cb02f7f3cd9a4976c79c7f6371322f793abfd8eaf9d5cc4f49b6854e58039595b5a488a2fec98d88 SHA512 008a11fef663a57ca173631f2053988023babea6c333cfe01db0ef955c8cd36d387ed9f2039f55bd5f9ca94c7a8e400461a09a15c5f89e03bc0817fdd0d3d585

@ -30,7 +30,7 @@ DEPEND="${RDEPEND}
test? (
sys-apps/diffutils
media-libs/tiff
app-text/ghostscript-gpl[tiff]
app-text/ghostscript-gpl[tiff(+)]
)
"

@ -0,0 +1,57 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
DESCRIPTION="Command-line tool for structural, content-preserving transformation of PDF files"
HOMEPAGE="http://qpdf.sourceforge.net/"
SRC_URI="mirror://sourceforge/qpdf/${P}.tar.gz"
LICENSE="|| ( Apache-2.0 Artistic-2 )"
# subslot = libqpdf soname version
SLOT="0/28"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~m68k-mint ~sparc-solaris"
IUSE="doc examples libressl ssl test"
RESTRICT="!test? ( test )"
RDEPEND="
net-libs/gnutls:0=
sys-libs/zlib
virtual/jpeg:0=
ssl? (
!libressl? ( dev-libs/openssl:0= )
libressl? ( dev-libs/libressl:0= )
)
"
DEPEND="${RDEPEND}
test? (
app-text/ghostscript-gpl[tiff(+)]
media-libs/tiff
sys-apps/diffutils
)
"
DOCS=( ChangeLog README.md TODO )
src_configure() {
local myeconfargs=(
--disable-implicit-crypto
--enable-crypto-gnutls
--enable-crypto-native
--with-default-crypto=gnutls
--disable-static
$(use_enable ssl crypto-openssl)
$(use_enable test test-compare-images)
)
CONFIG_SHELL="${BROOT}/bin/bash" econf "${myeconfargs[@]}"
}
src_install() {
default
if use examples ; then
dobin examples/build/.libs/*
fi
find "${ED}" -type f -name '*.la' -delete || die
}

@ -25,7 +25,7 @@ DEPEND="${CDEPEND}
test? (
sys-apps/diffutils
media-libs/tiff
app-text/ghostscript-gpl[tiff]
app-text/ghostscript-gpl[tiff(+)]
)
"
# Only need perl for the installed tools.

@ -26,7 +26,7 @@ DEPEND="${RDEPEND}
test? (
sys-apps/diffutils
media-libs/tiff
app-text/ghostscript-gpl[tiff]
app-text/ghostscript-gpl[tiff(+)]
)
"

Binary file not shown.

@ -1,2 +1,3 @@
DIST prometheus-cpp-0.10.0.tar.gz 49694 BLAKE2B f14232e1dad0376ea8e90c89079c4a6d8f2e9f5661a399d38d6f5001506db6c628cb42a934b40139cbb0d904a63c4b4483e6ed92452f5393365ed4209a236247 SHA512 18938b30143ed29985ee56943fd69e0a221f9d25f04fc611554050ee2786e96d968f7db251cccefcbd0017b61bcd8a7ea05af8f217c8aacd9f0694a4702ddcff
DIST prometheus-cpp-0.11.0.tar.gz 51126 BLAKE2B 8c2126bcba405748fa398d9b8aed472ca5ade45049817995836fbdb1a09fc29e4176a17ecafa6b9a26f8fb7b62cb00037815ba300123fa3c7f39faac54e160e8 SHA512 4ab286c49403d09f182038cda9cb3bd1b9dbf7061493ff5355afef6ec4ac6ef109c875306e76ed3776b07d640ad7034538cfbc00474106108500994242b4cde2
DIST prometheus-cpp-0.9.0.tar.gz 43924 BLAKE2B e2b26b257e44c63ae5bc2a703d0ee9247fd8f093ef58a3b00dec022af9cb56b18d20b74ccdb91899e2385b036c332b62d9959b9258082ca420fecf48926139d5 SHA512 d9d5fbbd8c8aad5dd6a5e872275324d689a0c57199e4158d74e13ea62b286fa71dee01bb4197b906b79792bf1ca4e67a46b5c04621d7070241ac32876f6de891

@ -0,0 +1,38 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit cmake
DESCRIPTION="Prometheus Client Library for Modern C++"
HOMEPAGE="https://github.com/jupp0r/prometheus-cpp"
SRC_URI="https://github.com/jupp0r/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="test zlib"
RESTRICT="!test? ( test )"
RDEPEND="
net-misc/curl
sys-libs/zlib
www-servers/civetweb[cxx]"
DEPEND="${RDEPEND}
test? (
dev-cpp/benchmark
dev-cpp/gtest
)"
src_configure() {
local mycmakeargs=(
-DENABLE_PULL=yes
-DENABLE_PUSH=yes
-DENABLE_COMPRESSION=$(usex zlib)
-DENABLE_TESTING=$(usex test)
-DUSE_THIRDPARTY_LIBRARIES=OFF
)
cmake_src_configure
}

@ -1 +1,2 @@
DIST range-v3-0.10.0.tar.gz 525765 BLAKE2B 7dd3aed9b35920e058fe43bccd364831a52ad8d50179d1057ab7a37cdef82df021bb09a9913018ae78982fe136c855ba4101e31d35cfc21747af994d0103b95e SHA512 4db089dcbf638eb30fa20dcf6785dd460c5a074a8912984a484592753cfee9f5b9a0e2c56b5bc5921d1b6120877aa2c83ac0a6fe428088ef2854033a635e9723
DIST range-v3-0.11.0.tar.gz 533136 BLAKE2B d325b14a9d812cb7a600a947126bcecf9384bec987edbad42eec38560415d075815ab92e3f92dad291029fc3e1b1afa1ceaf54443b4a536078047fd32d344394 SHA512 9d6cdcbc1e50104206ba731c3bdc9aab3acfcf69cd83f0e0b4de18b88df2a9e73d64e55638421768d4433c542b6619f6e5af6b17cccd3090cf8b4d4efe9863e4

@ -0,0 +1,133 @@
From a91f0e1be27a31c446452a753001d4518ef83a6b Mon Sep 17 00:00:00 2001
From: Eric Niebler <eniebler@boost.org>
Date: Mon, 17 Aug 2020 17:48:09 -0700
Subject: [PATCH] work around premature instantiation problem on gcc; fixes
#1545
---
include/range/v3/view/chunk.hpp | 6 +++---
include/range/v3/view/split.hpp | 26 +++++++++++++-------------
2 files changed, 16 insertions(+), 16 deletions(-)
diff --git a/include/range/v3/view/chunk.hpp b/include/range/v3/view/chunk.hpp
index 0c03cf1eb..b8df13303 100644
--- a/include/range/v3/view/chunk.hpp
+++ b/include/range/v3/view/chunk.hpp
@@ -313,8 +313,8 @@ namespace ranges
public:
inner_view() = default;
- constexpr explicit inner_view(chunk_view_ & view) noexcept
- : rng_{&view}
+ constexpr explicit inner_view(chunk_view_ * view) noexcept
+ : rng_{view}
{}
CPP_auto_member
constexpr auto CPP_fun(size)()(
@@ -338,7 +338,7 @@ namespace ranges
constexpr inner_view read() const
{
RANGES_EXPECT(!done());
- return inner_view{*rng_};
+ return inner_view{rng_};
}
constexpr bool done() const
{
diff --git a/include/range/v3/view/split.hpp b/include/range/v3/view/split.hpp
index facf1b37f..496220e4a 100644
--- a/include/range/v3/view/split.hpp
+++ b/include/range/v3/view/split.hpp
@@ -389,19 +389,19 @@ namespace ranges
split_outer_iterator() = default;
CPP_member
- constexpr explicit CPP_ctor(split_outer_iterator)(Parent & parent)(
+ constexpr explicit CPP_ctor(split_outer_iterator)(Parent * parent)(
/// \pre
requires (!forward_range<Base>))
- : parent_(&parent)
+ : parent_(parent)
{}
CPP_member
- constexpr CPP_ctor(split_outer_iterator)(Parent & parent,
+ constexpr CPP_ctor(split_outer_iterator)(Parent * parent,
iterator_t<Base> current)(
/// \pre
requires forward_range<Base>)
: Current{std::move(current)}
- , parent_(&parent)
+ , parent_(parent)
{}
template(bool Other)(
@@ -519,7 +519,7 @@ namespace ranges
ranges::equal_to> &&
(forward_range<V> || detail::tiny_range<Pattern>)
#endif
- struct RANGES_EMPTY_BASES split_view
+ struct RANGES_EMPTY_BASES split_view
: view_interface<split_view<V, Pattern>, is_finite<V>::value ? finite : unknown>
, private detail::split_view_base<iterator_t<V>>
{
@@ -537,17 +537,17 @@ namespace ranges
#if RANGES_CXX_IF_CONSTEXPR < RANGES_CXX_IF_CONSTEXPR_17
outer_iterator<simple_view<V>()> begin_(std::true_type)
{
- return outer_iterator<simple_view<V>()>{*this, ranges::begin(base_)};
+ return outer_iterator<simple_view<V>()>{this, ranges::begin(base_)};
}
outer_iterator<false> begin_(std::false_type)
{
this->curr_ = ranges::begin(base_);
- return outer_iterator<false>{*this};
+ return outer_iterator<false>{this};
}
outer_iterator<simple_view<V>()> end_(std::true_type) const
{
- return outer_iterator<true>{*this, ranges::end(base_)};
+ return outer_iterator<true>{this, ranges::end(base_)};
}
default_sentinel_t end_(std::false_type) const
{
@@ -580,11 +580,11 @@ namespace ranges
{
#if RANGES_CXX_IF_CONSTEXPR >= RANGES_CXX_IF_CONSTEXPR_17
if constexpr(forward_range<V>)
- return outer_iterator<simple_view<V>()>{*this, ranges::begin(base_)};
+ return outer_iterator<simple_view<V>()>{this, ranges::begin(base_)};
else
{
this->curr_ = ranges::begin(base_);
- return outer_iterator<false>{*this};
+ return outer_iterator<false>{this};
}
#else
return begin_(meta::bool_<forward_range<V>>{});
@@ -596,7 +596,7 @@ namespace ranges
/// \pre
requires forward_range<V> && forward_range<const V>)
{
- return {*this, ranges::begin(base_)};
+ return {this, ranges::begin(base_)};
}
CPP_member
constexpr auto end() //
@@ -604,14 +604,14 @@ namespace ranges
/// \pre
requires forward_range<V> && common_range<V>)
{
- return outer_iterator<simple_view<V>()>{*this, ranges::end(base_)};
+ return outer_iterator<simple_view<V>()>{this, ranges::end(base_)};
}
constexpr auto end() const
{
#if RANGES_CXX_IF_CONSTEXPR >= RANGES_CXX_IF_CONSTEXPR_17
if constexpr(forward_range<V> && forward_range<const V> &&
common_range<const V>)
- return outer_iterator<true>{*this, ranges::end(base_)};
+ return outer_iterator<true>{this, ranges::end(base_)};
else
return default_sentinel;
#else

@ -0,0 +1,39 @@
From 66e847d4e14be3a369b7e26a03a172b20e62c003 Mon Sep 17 00:00:00 2001
From: eksi <eksi@eksi.eksi>
Date: Wed, 4 Nov 2020 20:37:01 +0300
Subject: [PATCH] Add an option to disable -Werror. Fixes #1528
---
cmake/ranges_flags.cmake | 4 +++-
cmake/ranges_options.cmake | 3 +++
2 files changed, 6 insertions(+), 1 deletion(-)
diff --git a/cmake/ranges_flags.cmake b/cmake/ranges_flags.cmake
index 76d893043..9b09ddcb8 100644
--- a/cmake/ranges_flags.cmake
+++ b/cmake/ranges_flags.cmake
@@ -88,7 +88,9 @@ else()
# Enable "normal" warnings and make them errors:
ranges_append_flag(RANGES_HAS_WALL -Wall)
ranges_append_flag(RANGES_HAS_WEXTRA -Wextra)
- ranges_append_flag(RANGES_HAS_WERROR -Werror)
+ if (RANGES_ENABLE_WERROR)
+ ranges_append_flag(RANGES_HAS_WERROR -Werror)
+ endif()
endif()
if (RANGES_ENV_LINUX AND RANGES_CXX_COMPILER_CLANG)
diff --git a/cmake/ranges_options.cmake b/cmake/ranges_options.cmake
index 4ec39c7f0..8455af306 100644
--- a/cmake/ranges_options.cmake
+++ b/cmake/ranges_options.cmake
@@ -16,6 +16,9 @@ option(RANGES_MODULES "Enables use of Clang modules (experimental)." OFF)
option(RANGES_NATIVE "Enables -march/-mtune=native." ON)
option(RANGES_VERBOSE_BUILD "Enables debug output from CMake." OFF)
option(RANGES_LLVM_POLLY "Enables LLVM Polly." OFF)
+option(RANGES_ENABLE_WERROR
+ "Enables -Werror. Only effective if compiler is not clang-cl or MSVC. ON by default"
+ ON)
option(RANGES_PREFER_REAL_CONCEPTS
"Use real concepts instead of emulation if the compiler supports it"
ON)

@ -0,0 +1,46 @@
# Copyright 2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit cmake
DESCRIPTION="Range library for C++14/17/20, basis for C++20's std::ranges"
HOMEPAGE="https://github.com/ericniebler/range-v3"
SRC_URI="https://github.com/ericniebler/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="Boost-1.0"
SLOT="0"
KEYWORDS="~amd64 ~ppc64"
IUSE="test"
RESTRICT="!test? ( test )"
PATCHES=(
"${FILESDIR}/0.11.0-no-werror.patch"
"${FILESDIR}/0.11.0-gcc10.patch"
)
src_prepare() {
# header-only libraries go to arch-independent dirs
sed -i -e 's@lib/cmake@share/cmake@g' CMakeLists.txt || die
rm include/module.modulemap || die # https://bugs.gentoo.org/755740
cmake_src_prepare
}
src_configure() {
mycmakeargs=(
-DRANGES_BUILD_CALENDAR_EXAMPLE=OFF
-DRANGES_NATIVE=OFF
-DRANGES_DEBUG_INFO=OFF
-DRANGES_NATIVE=OFF
-DRANGES_ENABLE_WERROR=OFF
-DRANGES_VERBOSE_BUILD=ON
-DRANGE_V3_EXAMPLES=OFF
-DRANGE_V3_PERF=OFF
-DRANGE_V3_DOCS=OFF
-DRANGE_V3_HEADER_CHECKS="$(usex test ON OFF)"
-DRANGE_V3_TESTS=$(usex test ON OFF)
#TODO: clang support + -DRANGES_MODULES=yes
)
cmake_src_configure
}

Binary file not shown.

@ -5,7 +5,7 @@ EAPI=7
ECM_QTHELP="true"
ECM_TEST="true"
PYTHON_COMPAT=( python3_{6,7,8} )
PYTHON_COMPAT=( python3_{6,7,8,9} )
KFMIN=5.60.0
QTMIN=5.12.3
inherit ecm kde.org python-any-r1

Binary file not shown.

@ -1 +1,2 @@
DIST tiled-1.4.2.tar.gz 17806729 BLAKE2B 9f9e6b97c6d95b1f8a1ad6da3540aaf9310a705b412005752afe72c3ce8e35025559ed0e7aaf36a1d65284c29d8406bdc58121f6c13bb658ff84ff43fde7f403 SHA512 1fddd8c8d67e4eaf116c82e276b0941e6dae7c529f2132e49da77d7e215fc7106d5fd3ef55d118f799153b57340effcf2481a131a436be7f00f61c4fc4bd45d2
DIST tiled-1.4.3.tar.gz 17806808 BLAKE2B 81b5a32cc1e6f5f3b4af5520752d34572f0e78aad90df435d075b53ac18b39961aa22d23cff614cd83f0883fd2fd2bca69026160cb8b1b727fddaeff5764babe SHA512 1e75e323733e05563bf542364778d95f2f22484ec0d85b4a9e7fac782c117934b37b049724979be5c83de86a3900c7ca2e9f3c5a660c530d2ecd0f023eb22c2e

@ -0,0 +1,71 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python3_{6,7} )
inherit python-single-r1 qmake-utils xdg-utils
DESCRIPTION="A general purpose tile map editor"
HOMEPAGE="https://www.mapeditor.org/"
SRC_URI="https://github.com/bjorn/tiled/archive/v${PV}/${P}.tar.gz"
LICENSE="BSD BSD-2 GPL-2+"
SLOT="0"
KEYWORDS="~amd64"
IUSE="examples python"
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
RDEPEND="
app-arch/zstd:=
>=dev-qt/qtcore-5.14:5
>=dev-qt/qtdeclarative-5.14:5
>=dev-qt/qtgui-5.14:5
>=dev-qt/qtnetwork-5.14:5
>=dev-qt/qtwidgets-5.14:5
sys-libs/zlib
python? ( ${PYTHON_DEPS} )
"
DEPEND="${RDEPEND}"
BDEPEND="
dev-qt/linguist-tools:5
virtual/pkgconfig
"
DOCS=( AUTHORS COPYING NEWS.md README.md )
pkg_setup() {
use python && python-single-r1_pkg_setup
}
src_configure() {
eqmake5 \
LIBDIR="/usr/$(get_libdir)" \
PREFIX="/usr" \
SYSTEM_ZSTD="yes" \
DISABLE_PYTHON_PLUGIN="$(usex !python)"
}
src_install() {
emake INSTALL_ROOT="${D}" install
einstalldocs
if use examples ; then
docompress -x /usr/share/doc/${PF}/examples
dodoc -r examples
fi
}
pkg_postinst() {
xdg_icon_cache_update
xdg_desktop_database_update
xdg_mimeinfo_database_update
}
pkg_postrm() {
xdg_icon_cache_update
xdg_desktop_database_update
xdg_mimeinfo_database_update
}

Binary file not shown.

@ -1,4 +1,5 @@
DIST ecjsrc-4.10.jar 2036945 BLAKE2B cf9e50e53dac970a0b6b1231024a4efdc9adc92e02585aa4767c6511b367b32eefaf6fb3461c3c5c8160cf7205c0f708af0c433f4636b5a49caf637ba60fa092 SHA512 e85cacf6d2e21d464ff0226eac12bab8388df7a1413cb16d2982e255eb7369341792562f5080354279be0643c08fd80564a8eb2d8f59b72c8443c02577e4e1ee
DIST ecjsrc-4.13.jar 2074963 BLAKE2B d74caf3b81543ac12497148a477dcd99fb6d14bd1d601b9e2baa0fb82d12f1211533f5ee909465b190c780ac18f1fbc1f8e12c22cddfce10501923effd7a4cc1 SHA512 f7e49b29e8aa80d627230059c9aba3f1e1fe3824bfd43eac962331d545471df5af0ac49b489aa3795e79e161101a3c6406b29f71a06143914f241916ae6953a9
DIST ecjsrc-4.15.jar 2166228 BLAKE2B 794e0ba1a19b325e2dd8ad0b288ccbe04866627670b50d39dd327c13fe1fac56200eb3a6c1c3d1af043cad795508b9b714a5243049671414b5a62a97725d3297 SHA512 ada55b2522cf26570f0cd43f415eb5cf20e6840f83dadc72e1ae474ebf10eadca73f9fa3d1db51e13fd2762c38cd3e3567db3c7840d43ae3d8665ebe35e1889d
DIST ecjsrc-4.4.2.jar 1764959 BLAKE2B 402bcbb040c28fa10dad07c4223daed9976f3246d6984ac74d95087a6cdcd5a742072126a999435eb2d49d49bb2884474461ae8439a9839617b2891297cd7c07 SHA512 53e850fc64994b104d45f58c22f1302ceb1f23bcf69300940be5689dfa6278bea14b4506746fec7b14db6f48c24ccbee16755943fffcdd7f6ad4fe5d9ddc1f20
DIST ecjsrc-4.5.1.jar 1809543 BLAKE2B 6d9dfed1756ac3e7edf8dd5b30f945afac8bb09bfb5b10f9abed46fff917f600afaebd28451665005b38831f20846090bd3cd19b979130043adbc6a7970d6b36 SHA512 ee615e6fb7fb4a16ef4aeefdff93bafdbf36c9d0ce15713b81f1d4dce0ae87379fa4a6de34c32a134f78db6ed1a68d6c7b4e2a431b7de57bf8262a718fdd6553

@ -0,0 +1,50 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
JAVA_PKG_IUSE="doc source"
inherit java-pkg-2 java-pkg-simple prefix
DMF="R-${PV}-202003050155"
DESCRIPTION="Ant Compiler Adapter for Eclipse Java Compiler"
HOMEPAGE="http://www.eclipse.org/"
SRC_URI="http://download.eclipse.org/eclipse/downloads/drops4/${DMF}/ecjsrc-${PV}.jar"
LICENSE="EPL-1.0"
KEYWORDS="~amd64 ~ppc64 ~x86 ~amd64-linux ~x86-linux ~x86-solaris"
SLOT="4.15"
IUSE=""
CDEPEND="~dev-java/eclipse-ecj-${PV}:${SLOT}
dev-java/ant-core:0"
RDEPEND="${CDEPEND}
>=virtual/jre-11"
DEPEND="${CDEPEND}
app-arch/unzip
>=virtual/jdk-11"
JAVA_GENTOO_CLASSPATH="ant-core,eclipse-ecj-${SLOT}"
src_prepare() {
default
# Remove everything but the Ant component.
find org -type f ! -path "org/eclipse/jdt/internal/antadapter/*" ! -name "JDTCompilerAdapter.java" -delete || die
rm build.xml || die
}
src_compile() {
java-pkg-simple_src_compile
find org -type f ! -name "*.java" | xargs jar uvf "${PN}.jar" || die "jar update failed"
}
src_install() {
java-pkg-simple_src_install
insinto /usr/share/java-config-2/compiler
doins "${FILESDIR}/ecj-${SLOT}"
eprefixify "${D}"/usr/share/java-config-2/compiler/ecj-${SLOT}
}

@ -3,5 +3,5 @@ PACKAGE="=dev-java/ant-eclipse-ecj-4.13*"
SUPPORTED_TARGET="1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 9 10 11 12"
SUPPORTED_SOURCE="1.3 1.4 1.5 1.6 1.7 1.8 9 10 11 12"
ANT_BUILD_COMPILER="org.eclipse.jdt.core.JDTCompilerAdapter"
ANT_BUILD_COMPILER_DEPS="eclipse-ecj-4.10,ant-eclipse-ecj-4.13"
ANT_BUILD_COMPILER_DEPS="eclipse-ecj-4.13,ant-eclipse-ecj-4.13"
GENERATION="2"

@ -0,0 +1,7 @@
JAVAC="@GENTOO_PORTAGE_EPREFIX@/usr/bin/ecj-4.15"
PACKAGE="=dev-java/ant-eclipse-ecj-4.15*"
SUPPORTED_TARGET="1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 9 10 11 12 13"
SUPPORTED_SOURCE="1.3 1.4 1.5 1.6 1.7 1.8 9 10 11 12 13"
ANT_BUILD_COMPILER="org.eclipse.jdt.core.JDTCompilerAdapter"
ANT_BUILD_COMPILER_DEPS="eclipse-ecj-4.15,ant-eclipse-ecj-4.15"
GENERATION="2"

@ -1,4 +1,5 @@
DIST ecjsrc-4.10.jar 2036945 BLAKE2B cf9e50e53dac970a0b6b1231024a4efdc9adc92e02585aa4767c6511b367b32eefaf6fb3461c3c5c8160cf7205c0f708af0c433f4636b5a49caf637ba60fa092 SHA512 e85cacf6d2e21d464ff0226eac12bab8388df7a1413cb16d2982e255eb7369341792562f5080354279be0643c08fd80564a8eb2d8f59b72c8443c02577e4e1ee
DIST ecjsrc-4.13.jar 2074963 BLAKE2B d74caf3b81543ac12497148a477dcd99fb6d14bd1d601b9e2baa0fb82d12f1211533f5ee909465b190c780ac18f1fbc1f8e12c22cddfce10501923effd7a4cc1 SHA512 f7e49b29e8aa80d627230059c9aba3f1e1fe3824bfd43eac962331d545471df5af0ac49b489aa3795e79e161101a3c6406b29f71a06143914f241916ae6953a9
DIST ecjsrc-4.15.jar 2166228 BLAKE2B 794e0ba1a19b325e2dd8ad0b288ccbe04866627670b50d39dd327c13fe1fac56200eb3a6c1c3d1af043cad795508b9b714a5243049671414b5a62a97725d3297 SHA512 ada55b2522cf26570f0cd43f415eb5cf20e6840f83dadc72e1ae474ebf10eadca73f9fa3d1db51e13fd2762c38cd3e3567db3c7840d43ae3d8665ebe35e1889d
DIST ecjsrc-4.4.2.jar 1764959 BLAKE2B 402bcbb040c28fa10dad07c4223daed9976f3246d6984ac74d95087a6cdcd5a742072126a999435eb2d49d49bb2884474461ae8439a9839617b2891297cd7c07 SHA512 53e850fc64994b104d45f58c22f1302ceb1f23bcf69300940be5689dfa6278bea14b4506746fec7b14db6f48c24ccbee16755943fffcdd7f6ad4fe5d9ddc1f20
DIST ecjsrc-4.5.1.jar 1809543 BLAKE2B 6d9dfed1756ac3e7edf8dd5b30f945afac8bb09bfb5b10f9abed46fff917f600afaebd28451665005b38831f20846090bd3cd19b979130043adbc6a7970d6b36 SHA512 ee615e6fb7fb4a16ef4aeefdff93bafdbf36c9d0ce15713b81f1d4dce0ae87379fa4a6de34c32a134f78db6ed1a68d6c7b4e2a431b7de57bf8262a718fdd6553

@ -0,0 +1,74 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
JAVA_PKG_IUSE="doc source"
inherit java-pkg-2 java-pkg-simple
MY_PN="ecj"
DMF="R-${PV}-202003050155"
DESCRIPTION="Eclipse Compiler for Java"
HOMEPAGE="http://www.eclipse.org/"
SRC_URI="http://download.eclipse.org/eclipse/downloads/drops4/${DMF}/${MY_PN}src-${PV}.jar"
LICENSE="EPL-1.0"
KEYWORDS="~amd64 ~ppc64 ~x86 ~amd64-linux ~x86-linux ~x86-solaris"
SLOT="4.15"
IUSE="+ant"
COMMON_DEP="
app-eselect/eselect-java
dev-java/ant-core:0"
RDEPEND="${COMMON_DEP}
virtual/jre"
DEPEND="${COMMON_DEP}
>=virtual/jdk-11
app-arch/unzip"
PDEPEND="
ant? ( ~dev-java/ant-eclipse-ecj-${PV} )"
JAVA_PKG_WANT_SOURCE="1.8"
JAVA_PKG_WANT_TARGET="1.8"
JAVA_JAR_FILENAME="${MY_PN}.jar"
JAVA_GENTOO_CLASSPATH="ant-core"
S="${WORKDIR}"
# See https://bugs.eclipse.org/bugs/show_bug.cgi?id=479134 for details
src_prepare() {
default
# These have their own package.
rm org/eclipse/jdt/core/JDTCompilerAdapter.java || die
rm -r org/eclipse/jdt/internal/antadapter || die
# JavaCore is not distributed in the jar
sed -i -e '/import org.eclipse.jdt.core.JavaCore;/d' \
-e 's|JavaCore.getOptions()||g' \
org/eclipse/jdt/internal/compiler/batch/ClasspathDirectory.java
}
src_compile() {
java-pkg-simple_src_compile
find org META-INF -type f ! -name "*.java" | xargs jar uvf "${JAVA_JAR_FILENAME}" || die "jar update failed"
}
src_install() {
java-pkg-simple_src_install
java-pkg_dolauncher ${MY_PN}-${SLOT} --main \
org.eclipse.jdt.internal.compiler.batch.Main
}
pkg_postinst() {
einfo "To select between slots of ECJ..."
einfo " # eselect ecj"
eselect ecj update ecj-${SLOT}
}
pkg_postrm() {
eselect ecj update
}

@ -23,7 +23,7 @@ fi
LICENSE="BSD"
SLOT="0/24"
KEYWORDS="amd64 ~arm ~arm64 ~ppc64 x86 ~amd64-linux ~x86-linux ~x64-macos ~x86-macos"
KEYWORDS="amd64 ~arm ~arm64 ppc64 x86 ~amd64-linux ~x86-linux ~x64-macos ~x86-macos"
IUSE=""
BDEPEND="~dev-libs/protobuf-${PV}

@ -2,5 +2,8 @@ DIST apache-tomcat-4.1.40-src.tar.gz 3709719 BLAKE2B f7ca82052c1148a5c384fcbc387
DIST apache-tomcat-5.5.36-src.tar.gz 3743113 BLAKE2B dbfcfd123a23b0ceb9f1fdd936e42324ea8b10cf327a1d0abf1703006535859c7122690a08b5ec27b86b526cc7709a7199b4f35f123538ff11f23f3b489358f3 SHA512 845636b5b992fbbb7d657d192afbab1e6a924bfd0c71b025cf22776eb4527d92d63f9b3f33475d4349a0df4cebd984ba3776eedd7482b820abdea909e90a97b7
DIST apache-tomcat-6.0.53-src.tar.gz 3522914 BLAKE2B 054b097c16861abaa8bdbeba713b49bc1dfcff573bb3f4bd0ff5807c33a2a0fb991af618f6e11e5b3ce3fa55c589fc6569342cab5d5a00349c79bc7061d81e40 SHA512 915a0a18f5c2883625c9441eed6465973eff4f6bf41e08e925c7edaea89ef8f6ee9476d3e06fa38228d4bcb4decaf53e3a7bdb7ec7e899e6250db3e12a9f5f2c
DIST apache-tomcat-7.0.106-src.tar.gz 5302091 BLAKE2B f60975ef5570501b03e71645969170c44450f2b56f37688001ad1b4dce3a394f6800e9b28a8fabf59241116345fb7e2a287441f3eace020bc5c0203d57630c91 SHA512 5ce5a5af93c58e69c4758c2c0dedeadeceb6be920421b9d3b3d071d32fc8eb59ba8312c98d037b8434fe43d57a9f720ad8790de29a26ed2959f6c761fe1fd573
DIST apache-tomcat-7.0.107-src.tar.gz 5312698 BLAKE2B 1f2712ddce6aa604692aaf6a6c706469d3dbcb2266a99e62346c15b8347fff573608440473be8e20b8632a431f8838dd29f24f6bf630a13d262c444be68e0d2c SHA512 820923697c487367786c595d3aeaa58981d25b56529c6739b9388ad771f3264e6995f7659805cc5b2ef9456dbd42bad92ad2cfa3c7f741920a5b7bff2cc1bb1b
DIST apache-tomcat-8.5.59-src.tar.gz 5787634 BLAKE2B 8ca1aa8b4d12d0e73c0d7937e906530037168ac349b196e172935332e632b1e9ab15379f532cb8fb1b2f853d01567332af9c031393882c833dcea65f9e626b09 SHA512 bed80e86c4dc972fd6ad414a804ed2bffc797e22b0a5e0e6e93c8540fb87cffb2fd2f1f8d97873a3ee24397f7961a8fdeb6756c542a532e4b73468bccec6e626
DIST apache-tomcat-8.5.60-src.tar.gz 5837412 BLAKE2B 0c2200412900f7f6d318051333b15b8c6236e00f6194c21fc45bb95b565c4146e2682b879f3a293de3ab65524013f786a7f69dd7e91f1c4cc903179075253cc4 SHA512 43222e5d04b3de400429d6f1792d418172b6ff15dcc17e392cd66a5444d740a323b9c426a9f39678b3460452545fda4d784f56961d5ea56b9c0e1ca466d49040
DIST apache-tomcat-9.0.38-src.tar.gz 5948083 BLAKE2B ac076684f10a51bf0e0b5b0dbf18ee476ec900bead0089010de7b4a7d380a1e18035eaa0d0f661c863aa53491e51f719c2a5985e4791bcc9dada4c421db39fe7 SHA512 13c79abed71ead564b108ec8a046e78374611acd906f4b6e775ac0427446117192be6b25f29894e625e2dc13f79abbc97bc52b32120ce5701cbe0f5ae05bc57b
DIST apache-tomcat-9.0.40-src.tar.gz 6017562 BLAKE2B 1c90511911363bb3b154124382f6401851c3a0e7925e06cc8f2b4f02a7b4c1c59bc75007a8b387f06742cbeca7f840b6860d84dc7c6fdb1e7774b22dbca6082f SHA512 61b8e191315cee2bc0437013dbe7d1fb3451182e0b316fb377581c7d47a59cefb7f2ff30d96a2d6326a99c86f4151b26d1ef76bda5029b30d81c8297a0b362fb

@ -0,0 +1,20 @@
diff --git a/java/javax/el/ExpressionFactory.java b/java/javax/el/ExpressionFactory.java
index 2f42de7..5d52580 100644
--- a/java/javax/el/ExpressionFactory.java
+++ b/java/javax/el/ExpressionFactory.java
@@ -36,13 +36,13 @@ import java.util.concurrent.locks.Lock;
import java.util.concurrent.locks.ReadWriteLock;
import java.util.concurrent.locks.ReentrantReadWriteLock;
-import aQute.bnd.annotation.spi.ServiceConsumer;
+//import aQute.bnd.annotation.spi.ServiceConsumer;
/**
*
* @since 2.1
*/
-@ServiceConsumer(value=ExpressionFactory.class)
+//@ServiceConsumer(value=ExpressionFactory.class)
public abstract class ExpressionFactory {
private static final boolean IS_SECURITY_ENABLED =

@ -0,0 +1,98 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
JAVA_PKG_IUSE="source"
inherit eutils java-pkg-2 java-pkg-simple
MY_A="apache-${P}-src"
MY_P="${MY_A/-servlet-api/}"
DESCRIPTION="Tomcat's Servlet API 3.0/JSP API 2.2 implementation"
HOMEPAGE="https://tomcat.apache.org/"
SRC_URI="mirror://apache/tomcat/tomcat-7/v${PV}/src/${MY_P}.tar.gz"
LICENSE="Apache-2.0"
SLOT="3.0"
KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux ~x64-solaris ~x86-solaris"
IUSE=""
DEPEND=">=virtual/jdk-1.8"
RDEPEND=">=virtual/jre-1.8"
S="${WORKDIR}/${MY_P}/"
JAVA_TEST_SRC_DIR="src/test"
SERVLET_API_JAR="servlet-api.jar"
SERVLET_API_SRC="src/main/servlet-api"
SERVLET_API_RESOURCES="src/resources/servlet-api"
EL_API_JAR="el-api.jar"
EL_API_SRC="src/main/el-api"
EL_API_RESOURCES="src/resources/el-api"
JSP_API_JAR="jsp-api.jar"
JSP_API_SRC="src/main/jsp-api"
JSP_API_RESOURCES="src/resources/jsp-api"
src_prepare() {
default
# The sources and also resources are mixed together so we first give it a structure to make it easier to compila and package
mkdir -p ${SERVLET_API_SRC} ${SERVLET_API_RESOURCES} \
${EL_API_SRC} ${EL_API_RESOURCES} \
${JSP_API_SRC}/javax/servlet ${JSP_API_RESOURCES} \
${JAVA_TEST_SRC_DIR} || die "Failed to create source directory"
pushd java || die "Failed to cd to java dir"
cp --parents -R javax/servlet "${S}/${SERVLET_API_SRC}/" || die "Failed to copy servlet-api sources"
mv "${S}/${SERVLET_API_SRC}/javax/servlet/jsp" "${S}/${JSP_API_SRC}/javax/servlet" || die "Failed to copy jsp-api sources"
cp --parents -R javax/el "${S}/${EL_API_SRC}/" || die "Failed to copy el-api sources"
popd
for file in $(find src -type f | grep -vE "\.java$"); do
target_dir=$(dirname $file | sed "s%src/main/%src/resources/%g")
mkdir -p ${target_dir} || die "Failed to create resource directory"
mv $file ${target_dir} || die "Failed to move resource file"
done
mv test/javax ${JAVA_TEST_SRC_DIR} || die "Failed to copy test sources"
java-pkg-2_src_prepare
}
src_compile() {
JAVA_SRC_DIR="${SERVLET_API_SRC}"
JAVA_RESOURCE_DIRS="${SERVLET_API_RESOURCES}"
JAVA_JAR_FILENAME="${SERVLET_API_JAR}"
java-pkg-simple_src_compile
rm -fr target || die "Failed to remove compiled files"
JAVA_SRC_DIR="${EL_API_SRC}"
JAVA_RESOURCE_DIRS="${EL_API_RESOURCES}"
JAVA_JAR_FILENAME="${EL_API_JAR}"
java-pkg-simple_src_compile
rm -fr target || die "Failed to remove compiled files"
JAVA_SRC_DIR="${JSP_API_SRC}"
JAVA_RESOURCE_DIRS="${JSP_API_RESOURCES}"
JAVA_JAR_FILENAME="${JSP_API_JAR}"
JAVA_GENTOO_CLASSPATH_EXTRA="servlet-api.jar:el-api.jar"
java-pkg-simple_src_compile
}
src_install() {
JAVA_SRC_DIR="${SERVLET_API_SRC}"
JAVA_JAR_FILENAME="${SERVLET_API_JAR}"
java-pkg-simple_src_install
JAVA_SRC_DIR="${EL_API_SRC}"
JAVA_JAR_FILENAME="${EL_API_JAR}"
java-pkg-simple_src_install
JAVA_SRC_DIR="${JSP_API_SRC}"
JAVA_JAR_FILENAME="${JSP_API_JAR}"
java-pkg-simple_src_install
}

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

Loading…
Cancel
Save