Sync with portage [Wed Sep 30 08:55:39 MSK 2020].

akrasnyh
root 4 years ago
parent d6a48f28e6
commit f6b9212d8c

Binary file not shown.

Binary file not shown.

@ -11,7 +11,7 @@ SRC_URI="https://github.com/smuellerDD/jitterentropy-library/archive/v${PV}.tar.
LICENSE="BSD"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~mips ppc ppc64 ~riscv x86"
KEYWORDS="~alpha ~amd64 ~arm arm64 ~ia64 ~mips ppc ppc64 ~riscv x86"
IUSE="static-libs"
S="${WORKDIR}/${PN}-library-${PV}"

Binary file not shown.

@ -1 +1,2 @@
DIST neovim-0.4.3.tar.gz 9556199 BLAKE2B 831f4d4950f4fa2cd9c7393824bbb5eb571ae5759d13af9f320e0fa351fa155413a5be580f010f2c7ab43ca7bc10c569ccf6e3ba29efc7f5a035576b030b216d SHA512 e13853fa296eda8618f389c71b6cbbd6f01d561615e80cc92959131dd10e395b1c6732a7d9ef6dbb9fe3ea9da4c11485b464547e2d46b22e59b8a20214e861f5
DIST neovim-0.4.4.tar.gz 9558246 BLAKE2B b1d44898bb1e1ab40a7e1d7fb4448076c991ebe1a0956674548de82fe7a931d9eaffbf35ba03cf9c88466dcd628a55f1d7bf9e7a13f3dad74424d6d653ded60c SHA512 ca5c2fe1784ac7b0d2117948ba2e9ae5d94e36d22ff9e0967047e1e03e605537672d85543897af335103215ad462c86962f25267d352a77d61bc3d1cafb3c183

@ -0,0 +1,225 @@
From ebcde1de42588e697e0f4eaed9f6f0ea6a77a2cd Mon Sep 17 00:00:00 2001
From: Andreas Schneider <asn@cryptomilk.org>
Date: Mon, 17 Feb 2020 16:33:55 +0100
Subject: [PATCH 1/6] nvim:eval: Fix enum declaration for ListLenSpecials
Instead of declaring an enum, this creates a global variable. As gcc10
uses -fno-common by default, global variables declared with the same
name more than once is not allowed anymore revealing this issue.
Each time this header is included, we define the enum name as a global
variable.
See also https://bugzilla.redhat.com/show_bug.cgi?id=1799680
---
src/nvim/eval/typval.h | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/nvim/eval/typval.h b/src/nvim/eval/typval.h
index 008453b87f2f..5afdedff751b 100644
--- a/src/nvim/eval/typval.h
+++ b/src/nvim/eval/typval.h
@@ -33,7 +33,7 @@ typedef double float_T;
enum { DO_NOT_FREE_CNT = (INT_MAX / 2) };
/// Additional values for tv_list_alloc() len argument
-enum {
+enum ListLenSpecials {
/// List length is not known in advance
///
/// To be used when there is neither a way to know how many elements will be
@@ -49,7 +49,7 @@ enum {
///
/// To be used when it looks impractical to determine list length.
kListLenMayKnow = -3,
-} ListLenSpecials;
+};
/// Maximal possible value of varnumber_T variable
#define VARNUMBER_MAX INT64_MAX
From b87b4a61476bb65e9200bd2ee93b8a98ca4db84e Mon Sep 17 00:00:00 2001
From: Andreas Schneider <asn@cryptomilk.org>
Date: Mon, 17 Feb 2020 17:17:37 +0100
Subject: [PATCH 2/6] nvim:viml: Fix enum declaration of ExprParserFlags
Instead of declaring an enum, this creates a global variable. As gcc10
uses -fno-common by default, global variables declared with the same
name more than once is not allowed anymore revealing this issue.
Each time this header is included, we define the enum name as a global
variable.
See also https://bugzilla.redhat.com/show_bug.cgi?id=1799680
---
src/nvim/viml/parser/expressions.h | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/nvim/viml/parser/expressions.h b/src/nvim/viml/parser/expressions.h
index 23e172da75b2..838a74227182 100644
--- a/src/nvim/viml/parser/expressions.h
+++ b/src/nvim/viml/parser/expressions.h
@@ -326,7 +326,7 @@ struct expr_ast_node {
} data;
};
-enum {
+enum ExprParserFlags {
/// Allow multiple expressions in a row: e.g. for :echo
///
/// Parser will still parse only one of them though.
@@ -345,7 +345,7 @@ enum {
// viml_expressions_parser.c, nvim_parse_expression() flags parsing
// alongside with its documentation and flag sets in check_parsing()
// function in expressions parser functional and unit tests.
-} ExprParserFlags;
+};
/// AST error definition
typedef struct {
From 986db1adb491b5cb5936d2369816236847af26da Mon Sep 17 00:00:00 2001
From: Andreas Schneider <asn@cryptomilk.org>
Date: Mon, 17 Feb 2020 16:36:21 +0100
Subject: [PATCH 3/6] nvim: Fix enum declaration of RemapValues
Instead of declaring an enum, this creates a global variable. As gcc10
uses -fno-common by default, global variables declared with the same
name more than once is not allowed anymore revealing this issue.
Each time this header is included, we define the enum name as a global
variable.
See also https://bugzilla.redhat.com/show_bug.cgi?id=1799680
---
src/nvim/getchar.h | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/nvim/getchar.h b/src/nvim/getchar.h
index 01f60ccf4945..f0b52079aad1 100644
--- a/src/nvim/getchar.h
+++ b/src/nvim/getchar.h
@@ -10,12 +10,12 @@
/// Values for "noremap" argument of ins_typebuf()
///
/// Also used for map->m_noremap and menu->noremap[].
-enum {
+enum RemapValues {
REMAP_YES = 0, ///< Allow remapping.
REMAP_NONE = -1, ///< No remapping.
REMAP_SCRIPT = -2, ///< Remap script-local mappings only.
REMAP_SKIP = -3, ///< No remapping for first char.
-} RemapValues;
+};
// Argument for flush_buffers().
typedef enum {
From 517bf15603aba37014b62553eb008e26f2a1db48 Mon Sep 17 00:00:00 2001
From: Andreas Schneider <asn@cryptomilk.org>
Date: Mon, 17 Feb 2020 16:40:37 +0100
Subject: [PATCH 4/6] nvim:msgpack: Correctly set up global
ch_before_blocking_events
gcc10 builds with -fno-common by default. This mean you can't define
a global variable with the same name twice.
See also https://bugzilla.redhat.com/show_bug.cgi?id=1799680
---
src/nvim/msgpack_rpc/channel.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/nvim/msgpack_rpc/channel.h b/src/nvim/msgpack_rpc/channel.h
index 9ff5abdc5f55..90e1c7d48b4c 100644
--- a/src/nvim/msgpack_rpc/channel.h
+++ b/src/nvim/msgpack_rpc/channel.h
@@ -15,7 +15,7 @@
/// HACK: os/input.c drains this queue immediately before blocking for input.
/// Events on this queue are async-safe, but they need the resolved state
/// of os_inchar(), so they are processed "just-in-time".
-MultiQueue *ch_before_blocking_events;
+EXTERN MultiQueue *ch_before_blocking_events INIT(= NULL);
#ifdef INCLUDE_GENERATED_DECLARATIONS
From 823b2104c3e579e8c3db8baab263dca0aa9d48bc Mon Sep 17 00:00:00 2001
From: Andreas Schneider <asn@cryptomilk.org>
Date: Mon, 17 Feb 2020 17:29:12 +0100
Subject: [PATCH 5/6] nvim: Correctly setup global channels
As gcc10 uses -fno-common by default, global variables declared with the
same name more than once is not allowed anymore revealing this issue.
We need to define it as extern to access it.
See also https://bugzilla.redhat.com/show_bug.cgi?id=1799680
---
src/nvim/channel.c | 1 -
src/nvim/channel.h | 2 +-
src/nvim/main.c | 1 +
3 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/nvim/channel.c b/src/nvim/channel.c
index c66a0682e351..5eb29a7290c2 100644
--- a/src/nvim/channel.c
+++ b/src/nvim/channel.c
@@ -19,7 +19,6 @@
#include "nvim/ascii.h"
static bool did_stdio = false;
-PMap(uint64_t) *channels = NULL;
/// next free id for a job or rpc channel
/// 1 is reserved for stdio channel
diff --git a/src/nvim/channel.h b/src/nvim/channel.h
index c733e276bef2..9d26852ce532 100644
--- a/src/nvim/channel.h
+++ b/src/nvim/channel.h
@@ -85,7 +85,7 @@ struct Channel {
bool callback_scheduled;
};
-EXTERN PMap(uint64_t) *channels;
+EXTERN PMap(uint64_t) *channels INIT(= NULL);
#ifdef INCLUDE_GENERATED_DECLARATIONS
# include "channel.h.generated.h"
diff --git a/src/nvim/main.c b/src/nvim/main.c
index 56d9030a7f42..4a9f2371a298 100644
--- a/src/nvim/main.c
+++ b/src/nvim/main.c
@@ -10,6 +10,7 @@
#include <msgpack.h>
#include "nvim/ascii.h"
+#include "nvim/channel.h"
#include "nvim/vim.h"
#include "nvim/main.h"
#include "nvim/aucmd.h"
From 0504f2f88dac9a4cf1fe1052a1e00ab203e9cf8e Mon Sep 17 00:00:00 2001
From: Andreas Schneider <asn@cryptomilk.org>
Date: Mon, 17 Feb 2020 18:04:01 +0100
Subject: [PATCH 6/6] cmake: Check for -fno-common and use it if available
---
CMakeLists.txt | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index de530bb4f7da..74e161d98907 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -308,6 +308,11 @@ if(UNIX)
endif()
endif()
+check_c_compiler_flag(-fno-common HAVE_FNO_COMMON)
+if (HAVE_FNO_COMMON)
+ add_compile_options(-fno-common)
+endif()
+
check_c_compiler_flag(-fdiagnostics-color=auto HAS_DIAG_COLOR_FLAG)
if(HAS_DIAG_COLOR_FLAG)
if(CMAKE_GENERATOR MATCHES "Ninja")

@ -6,6 +6,7 @@
<name>Gentoo Vim Project</name>
</maintainer>
<use>
<flag name="lto">Build with Link Time Optimization (LTO)</flag>
<flag name="nvimpager">Install nvimpager symlink to less.sh macro</flag>
<flag name="tui">Build the neovim unix tui</flag>
</use>

@ -26,7 +26,6 @@ BDEPEND="
virtual/libintl
virtual/pkgconfig
"
DEPEND="
dev-libs/libuv:0=
>=dev-libs/libvterm-0.1.2
@ -45,7 +44,6 @@ DEPEND="
>=dev-libs/unibilium-2.0.0:0=
)
"
RDEPEND="
${DEPEND}
app-eselect/eselect-vi
@ -53,6 +51,8 @@ RDEPEND="
CMAKE_BUILD_TYPE=Release
PATCHES=( "${FILESDIR}"/${P}-gcc-10-fix.patch )
src_prepare() {
# use our system vim dir
sed -e "/^# define SYS_VIMRC_FILE/s|\$VIM|${EPREFIX}/etc/vim|" \

@ -0,0 +1,99 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit cmake optfeature xdg
DESCRIPTION="Vim-fork focused on extensibility and agility."
HOMEPAGE="https://neovim.io"
if [[ ${PV} == 9999 ]]; then
inherit git-r3
EGIT_REPO_URI="https://github.com/neovim/neovim.git"
else
SRC_URI="https://github.com/neovim/neovim/archive/v${PV}.tar.gz -> ${P}.tar.gz"
KEYWORDS="~amd64 ~arm ~arm64 ~x86"
fi
LICENSE="Apache-2.0 vim"
SLOT="0"
IUSE="+lto +luajit +nvimpager +tui"
# Upstream say the test library needs LuaJIT
# https://github.com/neovim/neovim/blob/91109ffda23d0ce61cec245b1f4ffb99e7591b62/CMakeLists.txt#L377
#REQUIRED_USE="test? ( luajit )"
#RESTRICT="!test? ( test )"
BDEPEND="
dev-util/gperf
virtual/libiconv
virtual/libintl
virtual/pkgconfig
"
# Once dev-lua/busted has luajit support, we can add tests.
# bug #584694
DEPEND="
dev-libs/libuv:0=
>=dev-libs/libvterm-0.1.2
dev-libs/msgpack:0=
dev-lua/lpeg[luajit=]
dev-lua/luv[luajit=]
dev-lua/mpack[luajit=]
net-libs/libnsl
luajit? ( dev-lang/luajit:2 )
!luajit? (
dev-lang/lua:=
dev-lua/LuaBitOp
)
tui? (
dev-libs/libtermkey
>=dev-libs/unibilium-2.0.0:0=
)
"
RDEPEND="
${DEPEND}
app-eselect/eselect-vi
"
src_prepare() {
# use our system vim dir
sed -e "/^# define SYS_VIMRC_FILE/s|\$VIM|${EPREFIX}/etc/vim|" \
-i src/nvim/globals.h || die
cmake_src_prepare
}
src_configure() {
# Upstream default to LTO on non-debug builds
# Let's expose it as a USE flag because upstream
# have preferences for how we should use LTO
# if we want it on (not just -flto)
# ... but allow turning it off.
local mycmakeargs=(
-DENABLE_LTO=$(usex lto)
-DFEAT_TUI=$(usex tui)
-DPREFER_LUA=$(usex luajit no yes)
)
cmake_src_configure
}
src_install() {
cmake_src_install
# install a default configuration file
insinto /etc/vim
doins "${FILESDIR}"/sysinit.vim
# conditionally install a symlink for nvimpager
if use nvimpager; then
dosym ../share/nvim/runtime/macros/less.sh /usr/bin/nvimpager
fi
}
pkg_postinst() {
xdg_pkg_postinst
optfeature "clipboard support" x11-misc/xsel x11-misc/xclip gui-apps/wl-clipboard
optfeature "Python plugin support" dev-python/pynvim
optfeature "Ruby plugin support" dev-ruby/neovim-ruby-client
optfeature "remote/nvr support" dev-python/neovim-remote
}

@ -13,12 +13,16 @@ if [[ ${PV} == 9999 ]]; then
EGIT_REPO_URI="https://github.com/neovim/neovim.git"
else
SRC_URI="https://github.com/neovim/neovim/archive/v${PV}.tar.gz -> ${P}.tar.gz"
KEYWORDS="~amd64 ~arm ~x86"
KEYWORDS="~amd64 ~arm ~arm64 ~x86"
fi
LICENSE="Apache-2.0 vim"
SLOT="0"
IUSE="+luajit +nvimpager +tui"
IUSE="+lto +luajit +nvimpager +tui"
# Upstream say the test library needs LuaJIT
# https://github.com/neovim/neovim/blob/91109ffda23d0ce61cec245b1f4ffb99e7591b62/CMakeLists.txt#L377
#REQUIRED_USE="test? ( luajit )"
#RESTRICT="!test? ( test )"
BDEPEND="
dev-util/gperf
@ -26,11 +30,12 @@ BDEPEND="
virtual/libintl
virtual/pkgconfig
"
# Once dev-lua/busted has luajit support, we can add tests.
# bug #584694
DEPEND="
dev-libs/libutf8proc:=
dev-libs/libuv:0=
>=dev-libs/libvterm-0.1
>=dev-libs/libvterm-0.1.2
dev-libs/msgpack:0=
dev-lua/lpeg[luajit=]
dev-lua/luv[luajit=]
@ -46,14 +51,11 @@ DEPEND="
>=dev-libs/unibilium-2.0.0:0=
)
"
RDEPEND="
${DEPEND}
app-eselect/eselect-vi
"
CMAKE_BUILD_TYPE=Release
src_prepare() {
# use our system vim dir
sed -e "/^# define SYS_VIMRC_FILE/s|\$VIM|${EPREFIX}/etc/vim|" \
@ -63,7 +65,13 @@ src_prepare() {
}
src_configure() {
# Upstream default to LTO on non-debug builds
# Let's expose it as a USE flag because upstream
# have preferences for how we should use LTO
# if we want it on (not just -flto)
# ... but allow turning it off.
local mycmakeargs=(
-DENABLE_LTO=$(usex lto)
-DFEAT_TUI=$(usex tui)
-DPREFER_LUA=$(usex luajit no yes)
)

Binary file not shown.

@ -33,6 +33,7 @@ SLOT="0"
multilib_src_configure() {
local myconf=(
$(use_with spirv-tools)
--disable-doxygen-pdf
)
ECONF_SOURCE=${S} econf "${myconf[@]}"

@ -1,4 +1,4 @@
# Copyright 1999-2019 Gentoo Authors
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
@ -40,6 +40,7 @@ src_prepare() {
multilib_src_configure() {
local myconf=(
$(use_with spirv-tools)
--disable-doxygen-pdf
)
ECONF_SOURCE=${S} econf "${myconf[@]}"

@ -5,8 +5,9 @@ DIST ipxe-git-1dd56dbd11082fb622c2ed21cfaced4f47d798a6.tar.gz 3810726 BLAKE2B b9
DIST seabios-1.12.1.tar.gz 613450 BLAKE2B cb926b650c41a9962db407945cb5b6558079b061bd61f32ea56aedf0d37a00d10ad4434acbe717ffbc0dd1d1c0767304af8e640a53b0fc3784969dfa1590f681 SHA512 58755ce842adcb99c0f2f3ebbf9ec6d4a5072753966ab46805a96db1570847b109a90e6e03d61f9088ef877ca8ba96a8006777dc38ec434fce6b487f6c1f91d0
DIST seabios-1.13.0.tar.gz 620952 BLAKE2B 460a7dd2b2775b981bbd890ed0a50fe905794c68b0b895799667dd1378bb84125712330c2f6945112709d42cfb7b01196c7fff99051e44b6211d47d19531cfae SHA512 7f158badf7deecc2998eab2a08f3615dfe5a7c0a51323f7b4568a4d1280935bc32bb466c8226d87d2ca7e13f9f117ff0092befcc0699bc31c5018e84754e8393
DIST xen-4.13.1-upstream-patches-2.tar.xz 53744 BLAKE2B 769b5b8022f7db66f677d8107c6473606376718bffeac7eba09c4270f4005811f472fb9ed2a2804260e0486228edbadfcf8f81bf1dae6d68df37da213d281390 SHA512 b07c865b96c6f48b9d0b4e4c2f3ec19f4dc44884f4024e440a3e537f594f9f5edd6edf805bdefc82e5f1f2520f35f940b64c158972cbf5bfdc8fb2ca7a1b0ac1
DIST xen-4.13.1-upstream-patches-3.tar.xz 87056 BLAKE2B 01d7133b8f7e3c9a42b9771dcb7739777f79f229941114cce70ba2897dd52bf53f08de35602a0b40a120fc155c274dbf91e107856f4afdae2c4f7b4bc0a67cdd SHA512 d67e9ddfbf27dc5a23a77679b1b2524a49c2aec3ff9eb3472f9e075893d87401f8e99707b0652744eb4af7a3ed9a815c3925de49995bcd7c82d97c13a69b5309
DIST xen-4.13.1.tar.gz 39024612 BLAKE2B efff138699fac2c14fad2e0dfd4535ebd744577df3dddccc2a589b81a76f24fc81c75e295f4cd33ca2e820929417b22d714504b576cb0737a563037bd56b6a95 SHA512 b56d20704155d98d803496cba83eb928e0f986a750831cd5600fc88d0ae772fe1456571654375054043d2da8daca255cc98385ebf08b1b1a75ecf7f4b7a0ee90
DIST xen-4.14.0-upstream-patches-0.tar.xz 6872 BLAKE2B 958ad668362c9c02af39f2a02cde2baa9b9fc8853116c390f43a77bb17c649bfc6a4b51db5cbe564a8c3c440ce736603e44b97f45c50a7836c9a43bfb0d2255a SHA512 a30d9708e64e1405f837b14c1e5a0e28fcb9e7a177c822570e25d0ed118a9c58c380f4ed64a40bf970a9389baf9848e52f7d161efe922b883ee990c8029e7e1f
DIST xen-4.14.0-upstream-patches-1.tar.xz 45360 BLAKE2B 0f72a2cc3d18557b86a2a83f97e4141be46a20e3ba59ccc881a34a4408988eba9827e3b927bc07aba9678123d783303e7d47d789e57323a7f6691d718c019dc8 SHA512 3d5093e4367d27e7f6e8d4cc31841a5c80cc3fb870d6cb32131d064e16cbb559e9a783c70eec1ce13c960b3e2a8d5e23e18d26b936bc418b434df3bb801d3e4f
DIST xen-4.14.0.tar.gz 39950576 BLAKE2B db4c3e79cfdfb10260d0d14d9d28e8c8bd9bf23f42aee743acf8f560bf4cdb96a425c0df887c70f9755f62680be24bfbe0149e52a4cb843ae83090cd9d6afc71 SHA512 ebce47a2f754955d8517123d69f62006634d97620fbbe3784869a0667466e586a249f57ffaf7846d5bcb45d69377cde43354c82c233fbb5407e55653b9a33ac0
DIST xen-gentoo-patches-21.tar.xz 18280 BLAKE2B 95446da72fc16cb82e4e51df8796c64db05a30894a351a98dbd6700ce354c34956ca09a1af98125a4e56c337936e8fae296d806519b8afa23a82b078aa0db8f1 SHA512 3cffac162606a09b10b47dca604f167897e6ac8d153411d3464ef29a7a4d46ac5b92340884cb21279cb2d053b131f1ea5cb2111e3e9a21b3298b5ab3320ee34d
DIST xen-gentoo-patches-22.tar.xz 18764 BLAKE2B e0da49b39fbc6b689db47e40a4fbb4f6568644fe192b114cce01b0406cba4bf23339ad1bf39b972f895df004916827b6e774f97fc079aeb8ac436763efda5fc3 SHA512 5b7959af4ed30edd2526698ab60a86353e35d9dc48dc941b6df7659a7c4904260461e0decbd8d788542bd69384736f2175861d4943c3738618d20788b19ea9b1

@ -0,0 +1,506 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python3_{6,7,8} )
PYTHON_REQ_USE='ncurses,xml,threads(+)'
inherit bash-completion-r1 flag-o-matic multilib python-single-r1 toolchain-funcs
MY_PV=${PV/_/-}
if [[ $PV == *9999 ]]; then
inherit git-r3
REPO="xen.git"
EGIT_REPO_URI="git://xenbits.xen.org/${REPO}"
S="${WORKDIR}/${REPO}"
else
KEYWORDS="~amd64 ~arm ~arm64 ~x86"
UPSTREAM_VER=3
SECURITY_VER=28
# xen-tools's gentoo patches tarball
GENTOO_VER=21
# xen-tools's gentoo patches version which apply to this specific ebuild
GENTOO_GPV=0
# xen-tools ovmf's patches
OVMF_VER=
SEABIOS_VER="1.12.1"
EDK2_COMMIT="20d2e5a125e34fc8501026613a71549b2a1a3e54"
EDK2_OPENSSL_VERSION="1_1_1b"
EDK2_SOFTFLOAT_COMMIT="b64af41c3276f97f0e181920400ee056b9c88037"
IPXE_COMMIT="1dd56dbd11082fb622c2ed21cfaced4f47d798a6"
[[ -n ${UPSTREAM_VER} ]] && \
UPSTREAM_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${P/-tools/}-upstream-patches-${UPSTREAM_VER}.tar.xz
https://github.com/hydrapolic/gentoo-dist/raw/master/xen/${P/-tools/}-upstream-patches-${UPSTREAM_VER}.tar.xz"
[[ -n ${SECURITY_VER} ]] && \
SECURITY_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN/-tools}-security-patches-${SECURITY_VER}.tar.xz
https://github.com/hydrapolic/gentoo-dist/raw/master/xen/${PN/-tools/}-security-patches-${SECURITY_VER}.tar.xz"
[[ -n ${GENTOO_VER} ]] && \
GENTOO_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN/-tools}-gentoo-patches-${GENTOO_VER}.tar.xz
https://github.com/hydrapolic/gentoo-dist/raw/master/xen/${PN/-tools/}-gentoo-patches-${GENTOO_VER}.tar.xz"
[[ -n ${OVMF_VER} ]] && \
OVMF_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN/-tools}-ovmf-patches-${OVMF_VER}.tar.xz"
SRC_URI="https://downloads.xenproject.org/release/xen/${MY_PV}/xen-${MY_PV}.tar.gz
https://github.com/qemu/seabios/archive/rel-${SEABIOS_VER}.tar.gz -> seabios-${SEABIOS_VER}.tar.gz
ipxe? ( http://xenbits.xen.org/xen-extfiles/ipxe-git-${IPXE_COMMIT}.tar.gz )
ovmf? ( https://github.com/tianocore/edk2/archive/${EDK2_COMMIT}.tar.gz -> edk2-${EDK2_COMMIT}.tar.gz
https://github.com/openssl/openssl/archive/OpenSSL_${EDK2_OPENSSL_VERSION}.tar.gz
https://github.com/ucb-bar/berkeley-softfloat-3/archive/${EDK2_SOFTFLOAT_COMMIT}.tar.gz -> berkeley-softfloat-${EDK2_SOFTFLOAT_COMMIT}.tar.gz
${OVMF_PATCHSET_URI} )
${UPSTREAM_PATCHSET_URI}
${SECURITY_PATCHSET_URI}
${GENTOO_PATCHSET_URI}"
S="${WORKDIR}/xen-${MY_PV}"
fi
DESCRIPTION="Xen tools including QEMU and xl"
HOMEPAGE="https://www.xenproject.org"
DOCS=( README )
LICENSE="GPL-2"
SLOT="0/$(ver_cut 1-2)"
# Inclusion of IUSE ocaml on stabalizing requires maintainer of ocaml to (get off his hands and) make
# >=dev-lang/ocaml-4 stable
# Masked in profiles/eapi-5-files instead
IUSE="api debug doc flask +hvm +ipxe ocaml ovmf +pam pygrub python +qemu +qemu-traditional +rombios screen sdl static-libs system-ipxe system-qemu system-seabios"
REQUIRED_USE="
${PYTHON_REQUIRED_USE}
ipxe? ( rombios )
ovmf? ( hvm )
pygrub? ( python )
rombios? ( hvm )
system-ipxe? ( rombios )
?? ( ipxe system-ipxe )
?? ( qemu system-qemu )"
COMMON_DEPEND="
sys-apps/pciutils
dev-libs/lzo:2
dev-libs/glib:2
dev-libs/yajl
dev-libs/libaio
dev-libs/libgcrypt:0
sys-libs/zlib
${PYTHON_DEPS}
"
DEPEND="${COMMON_DEPEND}
>=sys-kernel/linux-headers-4.11
$(python_gen_cond_dep '
dev-python/lxml[${PYTHON_MULTI_USEDEP}]
pam? ( dev-python/pypam[${PYTHON_MULTI_USEDEP}] )
')
x86? ( sys-devel/dev86
system-ipxe? ( sys-firmware/ipxe[qemu] )
sys-power/iasl )
api? ( dev-libs/libxml2
net-misc/curl )
ovmf? (
!arm? ( !arm64? ( dev-lang/nasm ) )
$(python_gen_impl_dep sqlite)
)
!amd64? ( >=sys-apps/dtc-1.4.0 )
amd64? ( sys-power/iasl
system-seabios? ( sys-firmware/seabios )
system-ipxe? ( sys-firmware/ipxe[qemu] )
rombios? ( sys-devel/bin86 sys-devel/dev86 ) )
dev-lang/perl
app-misc/pax-utils
doc? (
app-text/ghostscript-gpl
app-text/pandoc
$(python_gen_cond_dep '
dev-python/markdown[${PYTHON_MULTI_USEDEP}]
')
dev-texlive/texlive-latexextra
media-gfx/transfig
)
hvm? ( x11-base/xorg-proto )
qemu? (
app-arch/snappy:=
x11-libs/pixman
sdl? (
media-libs/libsdl[X]
media-libs/libsdl2[X]
)
)
system-qemu? ( app-emulation/qemu[xen] )
ocaml? ( dev-ml/findlib
>=dev-lang/ocaml-4 )
python? ( >=dev-lang/swig-4.0.0 )"
RDEPEND="${COMMON_DEPEND}
sys-apps/iproute2[-minimal]
net-misc/bridge-utils
screen? (
app-misc/screen
app-admin/logrotate
)"
# hvmloader is used to bootstrap a fully virtualized kernel
# Approved by QA team in bug #144032
QA_WX_LOAD="
usr/libexec/xen/boot/hvmloader
usr/share/qemu-xen/qemu/hppa-firmware.img
usr/share/qemu-xen/qemu/s390-ccw.img
usr/share/qemu-xen/qemu/u-boot.e500
"
QA_PREBUILT="
usr/libexec/xen/bin/elf2dmp
usr/libexec/xen/bin/ivshmem-client
usr/libexec/xen/bin/ivshmem-server
usr/libexec/xen/bin/qemu-edid
usr/libexec/xen/bin/qemu-img
usr/libexec/xen/bin/qemu-io
usr/libexec/xen/bin/qemu-keymap
usr/libexec/xen/bin/qemu-nbd
usr/libexec/xen/bin/qemu-pr-helper
usr/libexec/xen/bin/qemu-system-i386
usr/libexec/xen/bin/virtfs-proxy-helper
usr/libexec/xen/libexec/xen-bridge-helper
usr/share/qemu-xen/qemu/s390-ccw.img
usr/share/qemu-xen/qemu/s390-netboot.img
usr/share/qemu-xen/qemu/u-boot.e500
"
RESTRICT="test"
pkg_setup() {
python_setup
export "CONFIG_LOMOUNT=y"
#bug 522642, disable compile tools/tests
export "CONFIG_TESTS=n"
if [[ -z ${XEN_TARGET_ARCH} ]] ; then
if use x86 && use amd64; then
die "Confusion! Both x86 and amd64 are set in your use flags!"
elif use x86; then
export XEN_TARGET_ARCH="x86_32"
elif use amd64 ; then
export XEN_TARGET_ARCH="x86_64"
elif use arm; then
export XEN_TARGET_ARCH="arm32"
elif use arm64; then
export XEN_TARGET_ARCH="arm64"
else
die "Unsupported architecture!"
fi
fi
}
src_prepare() {
local i
# Upstream's patchset
if [[ -n ${UPSTREAM_VER} ]]; then
einfo "Try to apply Xen Upstream patch set"
eapply "${WORKDIR}"/patches-upstream
fi
# Security patchset
if [[ -n ${SECURITY_VER} ]]; then
einfo "Try to apply Xen Security patch set"
# apply main xen patches
# Two parallel systems, both work side by side
# Over time they may concdense into one. This will suffice for now
EPATCH_SUFFIX="patch"
EPATCH_FORCE="yes"
source "${WORKDIR}"/patches-security/${PV}.conf || die
for i in ${XEN_SECURITY_MAIN}; do
eapply "${WORKDIR}"/patches-security/xen/$i
done
# apply qemu-xen/upstream patches
pushd "${S}"/tools/qemu-xen/ > /dev/null
for i in ${XEN_SECURITY_QEMUU}; do
eapply "${WORKDIR}"/patches-security/qemuu/$i
done
popd > /dev/null
# apply qemu-traditional patches
pushd "${S}"/tools/qemu-xen-traditional/ > /dev/null
for i in ${XEN_SECURITY_QEMUT}; do
eapply "${WORKDIR}"/patches-security/qemut/$i
done
popd > /dev/null
fi
# move before Gentoo patch, one patch should apply to seabios, to fix gcc-4.5.x build err
mv ../seabios-rel-${SEABIOS_VER} tools/firmware/seabios-dir-remote || die
pushd tools/firmware/ > /dev/null
ln -s seabios-dir-remote seabios-dir || die
popd > /dev/null
# Gentoo's patchset
if [[ -n ${GENTOO_VER} && -n ${GENTOO_GPV} ]]; then
einfo "Try to apply Gentoo specific patch set"
source "${FILESDIR}"/gentoo-patches.conf || die
_gpv=_gpv_${PN/-/_}_${PV//./}_${GENTOO_GPV}
for i in ${!_gpv}; do
eapply "${WORKDIR}"/patches-gentoo/$i
done
fi
# Ovmf's patchset
if use ovmf; then
if [[ -n ${OVMF_VER} ]];then
einfo "Try to apply Ovmf patch set"
pushd "${WORKDIR}"/edk2-*/ > /dev/null
eapply "${WORKDIR}"/patches-ovmf
popd > /dev/null
fi
mv ../edk2-${EDK2_COMMIT} tools/firmware/ovmf-dir-remote || die
rm -r tools/firmware/ovmf-dir-remote/CryptoPkg/Library/OpensslLib/openssl || die
rm -r tools/firmware/ovmf-dir-remote/ArmPkg/Library/ArmSoftFloatLib/berkeley-softfloat-3 || die
mv ../openssl-OpenSSL_${EDK2_OPENSSL_VERSION} tools/firmware/ovmf-dir-remote/CryptoPkg/Library/OpensslLib/openssl || die
mv ../berkeley-softfloat-3-${EDK2_SOFTFLOAT_COMMIT} tools/firmware/ovmf-dir-remote/ArmPkg/Library/ArmSoftFloatLib/berkeley-softfloat-3 || die
cp tools/firmware/ovmf-makefile tools/firmware/ovmf-dir-remote/Makefile || die
fi
# ipxe
if use ipxe; then
cp "${DISTDIR}/ipxe-git-${IPXE_COMMIT}.tar.gz" tools/firmware/etherboot/_ipxe.tar.gz || die
# gcc 10
cp "${WORKDIR}/patches-gentoo/xen-tools-4.13.0-ipxe-gcc10.patch" tools/firmware/etherboot/patches/ipxe-gcc10.patch || die
echo ipxe-gcc10.patch >> tools/firmware/etherboot/patches/series || die
fi
mv tools/qemu-xen/qemu-bridge-helper.c tools/qemu-xen/xen-bridge-helper.c || die
# Fix texi2html build error with new texi2html, qemu.doc.html
sed -i -e "/texi2html -monolithic/s/-number//" tools/qemu-xen-traditional/Makefile || die
use api || sed -e "/SUBDIRS-\$(LIBXENAPI_BINDINGS) += libxen/d" -i tools/Makefile || die
sed -e 's:$(MAKE) PYTHON=$(PYTHON) subdirs-$@:LC_ALL=C "$(MAKE)" PYTHON=$(PYTHON) subdirs-$@:' \
-i tools/firmware/Makefile || die
# Drop .config, fixes to gcc-4.6
sed -e '/-include $(XEN_ROOT)\/.config/d' -i Config.mk || die "Couldn't drop"
# drop flags
unset CFLAGS
unset LDFLAGS
unset ASFLAGS
unset CPPFLAGS
if ! use pygrub; then
sed -e '/^SUBDIRS-y += pygrub/d' -i tools/Makefile || die
fi
if ! use python; then
sed -e '/^SUBDIRS-y += python$/d' -i tools/Makefile || die
fi
if ! use hvm; then
sed -e '/SUBDIRS-$(CONFIG_X86) += firmware/d' -i tools/Makefile || die
# Bug 351648
elif ! use x86 && ! has x86 $(get_all_abis); then
mkdir -p "${WORKDIR}"/extra-headers/gnu || die
touch "${WORKDIR}"/extra-headers/gnu/stubs-32.h || die
export CPATH="${WORKDIR}"/extra-headers
fi
if use qemu; then
if use sdl; then
sed -i -e "s:\$\$source/configure:\0 --enable-sdl:" \
tools/Makefile || die
else
sed -i -e "s:\${QEMU_ROOT\:\-\.}/configure:\0 --disable-sdl:" \
tools/qemu-xen-traditional/xen-setup || die
sed -i -e "s:\$\$source/configure:\0 --disable-sdl:" \
tools/Makefile || die
fi
else
# Don't bother with qemu, only needed for fully virtualised guests
sed -i '/SUBDIRS-$(CONFIG_QEMU_XEN)/s/^/#/g' tools/Makefile || die
fi
# Reset bash completion dir; Bug 472438
sed -e "s:^BASH_COMPLETION_DIR ?= \$(CONFIG_DIR)/bash_completion.d:BASH_COMPLETION_DIR ?= $(get_bashcompdir):" \
-i Config.mk || die
sed -i -e "/bash-completion/s/xl\.sh/xl/g" tools/libxl/Makefile || die
# xencommons, Bug #492332, sed lighter weight than patching
sed -e 's:\$QEMU_XEN -xen-domid:test -e "\$QEMU_XEN" \&\& &:' \
-i tools/hotplug/Linux/init.d/xencommons.in || die
# fix bashishm
sed -e '/Usage/s/\$//g' \
-i tools/hotplug/Linux/init.d/xendriverdomain.in || die
# respect multilib, usr/lib/libcacard.so.0.0.0
sed -e "/^libdir=/s/\/lib/\/$(get_libdir)/" \
-i tools/qemu-xen/configure || die
#bug 518136, don't build 32bit exactuable for nomultilib profile
if [[ "${ARCH}" == 'amd64' ]] && ! has_multilib_profile; then
sed -i -e "/x86_emulator/d" tools/tests/Makefile || die
fi
# uncomment lines in xl.conf
sed -e 's:^#autoballoon=:autoballoon=:' \
-e 's:^#lockfile=:lockfile=:' \
-e 's:^#vif.default.script=:vif.default.script=:' \
-i tools/examples/xl.conf || die
# disable capstone (Bug #673474)
sed -e "s:\$\$source/configure:\0 --disable-capstone:" \
-i tools/Makefile || die
# disable glusterfs
sed -e "s:\$\$source/configure:\0 --disable-glusterfs:" \
-i tools/Makefile || die
default
}
src_configure() {
local myconf="--prefix=${PREFIX}/usr \
--libdir=${PREFIX}/usr/$(get_libdir) \
--libexecdir=${PREFIX}/usr/libexec \
--localstatedir=${EPREFIX}/var \
--disable-werror \
--disable-xen \
--enable-tools \
--enable-docs \
$(use_enable api xenapi) \
$(use_enable ipxe) \
$(usex system-ipxe '--with-system-ipxe=/usr/share/ipxe' '') \
$(use_enable ocaml ocamltools) \
$(use_enable ovmf) \
$(use_enable pam) \
$(use_enable rombios) \
--with-xenstored=$(usex ocaml 'oxenstored' 'xenstored') \
"
use system-seabios && myconf+=" --with-system-seabios=/usr/share/seabios/bios.bin"
use system-qemu && myconf+=" --with-system-qemu=/usr/bin/qemu-system-x86_64"
use amd64 && myconf+=" $(use_enable qemu-traditional)"
tc-ld-disable-gold # Bug 669570
econf ${myconf}
}
src_compile() {
local myopt
use debug && myopt="${myopt} debug=y"
use python && myopt="${myopt} XENSTAT_PYTHON_BINDINGS=y"
if test-flag-CC -fno-strict-overflow; then
append-flags -fno-strict-overflow
fi
emake CC="$(tc-getCC)" LD="$(tc-getLD)" AR="$(tc-getAR)" RANLIB="$(tc-getRANLIB)" build-tools ${myopt}
if use doc; then
emake -C docs build
else
emake -C docs man-pages
fi
}
src_install() {
# Override auto-detection in the build system, bug #382573
export INITD_DIR=/tmp/init.d
export CONFIG_LEAF_DIR=../tmp/default
# Let the build system compile installed Python modules.
local PYTHONDONTWRITEBYTECODE
export PYTHONDONTWRITEBYTECODE
emake DESTDIR="${ED}" DOCDIR="/usr/share/doc/${PF}" \
XEN_PYTHON_NATIVE_INSTALL=y install-tools
# Created at runtime
rm -rv "${ED}/var/run" || die
# Fix the remaining Python shebangs.
python_fix_shebang "${D}"
# Remove RedHat-specific stuff
rm -rf "${D}"/tmp || die
if use doc; then
emake DESTDIR="${D}" DOCDIR="/usr/share/doc/${PF}" install-docs
dodoc -r docs/{pdf,txt}
else
emake -C docs DESTDIR="${D}" DOCDIR="/usr/share/doc/${PF}" install-man-pages # Bug 668032
fi
dodoc ${DOCS[@]}
newconfd "${FILESDIR}"/xendomains.confd xendomains
newconfd "${FILESDIR}"/xenstored.confd xenstored
newconfd "${FILESDIR}"/xenconsoled.confd xenconsoled
newinitd "${FILESDIR}"/xendomains.initd-r2 xendomains
newinitd "${FILESDIR}"/xenstored.initd-r1 xenstored
newinitd "${FILESDIR}"/xenconsoled.initd xenconsoled
newinitd "${FILESDIR}"/xencommons.initd xencommons
newconfd "${FILESDIR}"/xencommons.confd xencommons
newinitd "${FILESDIR}"/xenqemudev.initd xenqemudev
newconfd "${FILESDIR}"/xenqemudev.confd xenqemudev
newinitd "${FILESDIR}"/xen-watchdog.initd xen-watchdog
if use screen; then
cat "${FILESDIR}"/xendomains-screen.confd >> "${D}"/etc/conf.d/xendomains || die
cp "${FILESDIR}"/xen-consoles.logrotate "${D}"/etc/xen/ || die
keepdir /var/log/xen-consoles
fi
# For -static-libs wrt Bug 384355
if ! use static-libs; then
rm -f "${D}"/usr/$(get_libdir)/*.a "${D}"/usr/$(get_libdir)/ocaml/*/*.a
fi
# for xendomains
keepdir /etc/xen/auto
# Remove files failing QA AFTER emake installs them, avoiding seeking absent files
find "${D}" \( -name openbios-sparc32 -o -name openbios-sparc64 \
-o -name openbios-ppc -o -name palcode-clipper \) -delete || die
keepdir /var/lib/xen/dump
keepdir /var/lib/xen/xenpaging
keepdir /var/lib/xenstored
keepdir /var/log/xen
if use python; then
python_domodule "${S}/tools/xenstat/libxenstat/bindings/swig/python/xenstat.py"
python_domodule "${S}/tools/xenstat/libxenstat/bindings/swig/python/_xenstat.so"
fi
python_optimize
}
pkg_postinst() {
elog "Official Xen Guide and the offical wiki page:"
elog "https://wiki.gentoo.org/wiki/Xen"
elog "https://wiki.xen.org/wiki/Main_Page"
elog ""
elog "Recommended to utilise the xencommons script to config system at boot"
elog "Add by use of rc-update on completion of the install"
if ! use hvm; then
echo
elog "HVM (VT-x and AMD-V) support has been disabled. If you need hvm"
elog "support enable the hvm use flag."
elog "An x86 or amd64 system is required to build HVM support."
fi
if use qemu; then
elog "The qemu-bridge-helper is renamed to the xen-bridge-helper in the in source"
elog "build of qemu. This allows for app-emulation/qemu to be emerged concurrently"
elog "with the qemu capable xen. It is up to the user to distinguish between and utilise"
elog "the qemu-bridge-helper and the xen-bridge-helper. File bugs of any issues that arise"
fi
}

@ -17,7 +17,7 @@ if [[ $PV == *9999 ]]; then
S="${WORKDIR}/${REPO}"
else
KEYWORDS="~amd64 ~arm ~arm64 ~x86"
UPSTREAM_VER=0
UPSTREAM_VER=1
SECURITY_VER=28
# xen-tools's gentoo patches tarball
GENTOO_VER=22

@ -1,4 +1,5 @@
DIST xen-4.13.1-upstream-patches-2.tar.xz 53744 BLAKE2B 769b5b8022f7db66f677d8107c6473606376718bffeac7eba09c4270f4005811f472fb9ed2a2804260e0486228edbadfcf8f81bf1dae6d68df37da213d281390 SHA512 b07c865b96c6f48b9d0b4e4c2f3ec19f4dc44884f4024e440a3e537f594f9f5edd6edf805bdefc82e5f1f2520f35f940b64c158972cbf5bfdc8fb2ca7a1b0ac1
DIST xen-4.13.1-upstream-patches-3.tar.xz 87056 BLAKE2B 01d7133b8f7e3c9a42b9771dcb7739777f79f229941114cce70ba2897dd52bf53f08de35602a0b40a120fc155c274dbf91e107856f4afdae2c4f7b4bc0a67cdd SHA512 d67e9ddfbf27dc5a23a77679b1b2524a49c2aec3ff9eb3472f9e075893d87401f8e99707b0652744eb4af7a3ed9a815c3925de49995bcd7c82d97c13a69b5309
DIST xen-4.13.1.tar.gz 39024612 BLAKE2B efff138699fac2c14fad2e0dfd4535ebd744577df3dddccc2a589b81a76f24fc81c75e295f4cd33ca2e820929417b22d714504b576cb0737a563037bd56b6a95 SHA512 b56d20704155d98d803496cba83eb928e0f986a750831cd5600fc88d0ae772fe1456571654375054043d2da8daca255cc98385ebf08b1b1a75ecf7f4b7a0ee90
DIST xen-4.14.0-upstream-patches-0.tar.xz 6872 BLAKE2B 958ad668362c9c02af39f2a02cde2baa9b9fc8853116c390f43a77bb17c649bfc6a4b51db5cbe564a8c3c440ce736603e44b97f45c50a7836c9a43bfb0d2255a SHA512 a30d9708e64e1405f837b14c1e5a0e28fcb9e7a177c822570e25d0ed118a9c58c380f4ed64a40bf970a9389baf9848e52f7d161efe922b883ee990c8029e7e1f
DIST xen-4.14.0-upstream-patches-1.tar.xz 45360 BLAKE2B 0f72a2cc3d18557b86a2a83f97e4141be46a20e3ba59ccc881a34a4408988eba9827e3b927bc07aba9678123d783303e7d47d789e57323a7f6691d718c019dc8 SHA512 3d5093e4367d27e7f6e8d4cc31841a5c80cc3fb870d6cb32131d064e16cbb559e9a783c70eec1ce13c960b3e2a8d5e23e18d26b936bc418b434df3bb801d3e4f
DIST xen-4.14.0.tar.gz 39950576 BLAKE2B db4c3e79cfdfb10260d0d14d9d28e8c8bd9bf23f42aee743acf8f560bf4cdb96a425c0df887c70f9755f62680be24bfbe0149e52a4cb843ae83090cd9d6afc71 SHA512 ebce47a2f754955d8517123d69f62006634d97620fbbe3784869a0667466e586a249f57ffaf7846d5bcb45d69377cde43354c82c233fbb5407e55653b9a33ac0

@ -0,0 +1,165 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python3_{6,7,8} )
inherit flag-o-matic mount-boot multilib python-any-r1 toolchain-funcs
MY_PV=${PV/_/-}
MY_P=${PN}-${MY_PV}
if [[ $PV == *9999 ]]; then
inherit git-r3
EGIT_REPO_URI="git://xenbits.xen.org/xen.git"
SRC_URI=""
else
KEYWORDS="~amd64 ~arm -x86"
UPSTREAM_VER=3
SECURITY_VER=
GENTOO_VER=
[[ -n ${UPSTREAM_VER} ]] && \
UPSTREAM_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${P}-upstream-patches-${UPSTREAM_VER}.tar.xz
https://github.com/hydrapolic/gentoo-dist/raw/master/xen/${P}-upstream-patches-${UPSTREAM_VER}.tar.xz"
[[ -n ${SECURITY_VER} ]] && \
SECURITY_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN}-security-patches-${SECURITY_VER}.tar.xz"
[[ -n ${GENTOO_VER} ]] && \
GENTOO_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${PN}-gentoo-patches-${GENTOO_VER}.tar.xz"
SRC_URI="https://downloads.xenproject.org/release/xen/${MY_PV}/${MY_P}.tar.gz
${UPSTREAM_PATCHSET_URI}
${SECURITY_PATCHSET_URI}
${GENTOO_PATCHSET_URI}"
fi
DESCRIPTION="The Xen virtual machine monitor"
HOMEPAGE="https://www.xenproject.org"
LICENSE="GPL-2"
SLOT="0"
IUSE="debug efi flask"
DEPEND="${PYTHON_DEPS}
efi? ( >=sys-devel/binutils-2.22[multitarget] )
!efi? ( >=sys-devel/binutils-2.22 )"
RDEPEND=""
PDEPEND="~app-emulation/xen-tools-${PV}"
# no tests are available for the hypervisor
# prevent the silliness of /usr/lib/debug/usr/lib/debug files
# prevent stripping of the debug info from the /usr/lib/debug/xen-syms
RESTRICT="test splitdebug strip"
# Approved by QA team in bug #144032
QA_WX_LOAD="boot/xen-syms-${PV}"
REQUIRED_USE="arm? ( debug )"
S="${WORKDIR}/${MY_P}"
pkg_setup() {
python-any-r1_pkg_setup
if [[ -z ${XEN_TARGET_ARCH} ]]; then
if use amd64; then
export XEN_TARGET_ARCH="x86_64"
elif use arm; then
export XEN_TARGET_ARCH="arm32"
elif use arm64; then
export XEN_TARGET_ARCH="arm64"
else
die "Unsupported architecture!"
fi
fi
if use flask ; then
export "XSM_ENABLE=y"
export "FLASK_ENABLE=y"
fi
}
src_prepare() {
# Upstream's patchset
[[ -n ${UPSTREAM_VER} ]] && eapply "${WORKDIR}"/patches-upstream
# Security patchset
if [[ -n ${SECURITY_VER} ]]; then
einfo "Try to apply Xen Security patch set"
# apply main xen patches
# Two parallel systems, both work side by side
# Over time they may concdense into one. This will suffice for now
source "${WORKDIR}"/patches-security/${PV}.conf
local i
for i in ${XEN_SECURITY_MAIN}; do
eapply "${WORKDIR}"/patches-security/xen/$i
done
fi
# Gentoo's patchset
[[ -n ${GENTOO_VER} ]] && eapply "${WORKDIR}"/patches-gentoo
eapply "${FILESDIR}"/${PN}-4.11-efi.patch
# Drop .config
sed -e '/-include $(XEN_ROOT)\/.config/d' -i Config.mk || die "Couldn't drop"
if use efi; then
export EFI_VENDOR="gentoo"
export EFI_MOUNTPOINT="/boot"
fi
default
}
src_configure() {
use arm && myopt="${myopt} CONFIG_EARLY_PRINTK=sun7i"
use debug && myopt="${myopt} debug=y"
# remove flags
unset CFLAGS
unset LDFLAGS
unset ASFLAGS
tc-ld-disable-gold # Bug 700374
}
src_compile() {
# Send raw LDFLAGS so that --as-needed works
emake V=1 CC="$(tc-getCC)" LDFLAGS="$(raw-ldflags)" LD="$(tc-getLD)" -C xen ${myopt}
}
src_install() {
local myopt
use debug && myopt="${myopt} debug=y"
# The 'make install' doesn't 'mkdir -p' the subdirs
if use efi; then
mkdir -p "${D}"${EFI_MOUNTPOINT}/efi/${EFI_VENDOR} || die
fi
emake LDFLAGS="$(raw-ldflags)" DESTDIR="${D}" -C xen ${myopt} install
# make install likes to throw in some extra EFI bits if it built
use efi || rm -rf "${D}/usr/$(get_libdir)/efi"
}
pkg_postinst() {
elog "Official Xen Guide:"
elog " https://wiki.gentoo.org/wiki/Xen"
use efi && einfo "The efi executable is installed in /boot/efi/gentoo"
elog "You can optionally block the installation of /boot/xen-syms by an entry"
elog "in folder /etc/portage/env using the portage's feature INSTALL_MASK"
elog "e.g. echo ${msg} > /etc/portage/env/xen.conf"
ewarn
ewarn "Xen 4.12+ changed the default scheduler to credit2 which can cause"
ewarn "domU lockups on multi-cpu systems. The legacy credit scheduler seems"
ewarn "to work fine."
ewarn
ewarn "Add sched=credit to xen command line options to use the legacy scheduler."
ewarn
ewarn "https://wiki.gentoo.org/wiki/Xen#Xen_domU_hanging_with_Xen_4.12.2B"
}

@ -16,7 +16,7 @@ if [[ $PV == *9999 ]]; then
SRC_URI=""
else
KEYWORDS="~amd64 ~arm -x86"
UPSTREAM_VER=0
UPSTREAM_VER=1
SECURITY_VER=
GENTOO_VER=

Binary file not shown.

@ -12,7 +12,7 @@ SRC_URI="https://github.com/mgorny/eselect-repository/archive/v${PV}.tar.gz -> $
LICENSE="BSD-2"
SLOT="0"
KEYWORDS="~alpha amd64 arm ~arm64 ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc x86"
KEYWORDS="~alpha amd64 arm arm64 ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc x86"
IUSE=""
REQUIRED_USE=${PYTHON_REQUIRED_USE}

Binary file not shown.

@ -14,6 +14,6 @@
<name>Proxy Maintainers</name>
</maintainer>
<upstream>
<remote-id type="github">ginatrapani/todo.txt-cli</remote-id>
<remote-id type="github">todotxt/todo.txt-cli</remote-id>
</upstream>
</pkgmetadata>

Binary file not shown.

@ -3,6 +3,7 @@
EAPI=7
VIRTUALX_REQUIRED="test"
inherit ecm
DESCRIPTION="Software to manage quotes and invoices in small enterprises"
@ -14,6 +15,8 @@ SLOT="5"
KEYWORDS="~amd64 ~x86"
IUSE="pim"
RESTRICT+=" test" # requires package installed, bug 745408
DEPEND="
dev-cpp/ctemplate
dev-libs/grantlee:5

Binary file not shown.

@ -3,7 +3,7 @@
EAPI=7
PYTHON_COMPAT=( python3_{6,7} )
PYTHON_COMPAT=( python3_{6,7,8,9} )
inherit cmake python-any-r1

@ -1,3 +1,4 @@
DIST coolreader-3.2.2.1.tar.gz 12463566 BLAKE2B 208026a87b36a06cd0a2e83b60bb506174b2edec4e3f4d1663c9d630cf316afd54aa0dbd0fdf0d3e44e03277d39692bbada8b03376a22970321928e594632997 SHA512 c2e3ea139ff3969c16985a56a9605a59ae31c59f9dc962abcc4aae5d87b8c48c8d7ed716a7077dd9da93cefc0d9ba0fe8a43c50e33e3d58acbcdfc35b73b3538
DIST coolreader-3.2.39.tar.gz 17679570 BLAKE2B e84fb7d8032ae62fec24a74a9cebab086664a2ed3827f0664e667a4ab3b8d76b722790958f71f5fcd79729238e897c6592059f9b45eb4069c9ad483883bc0600 SHA512 1b92b35750174a8ef4df4b7c4f33bb9fcc94b36008c08a7f9d1f8e85c6b642c5b037e0673a783cde1aa98296887bb286c4a2da186911b26f298f689605e1eb4b
DIST coolreader-3.2.45.tar.gz 20290340 BLAKE2B a4e6218965618a1b0938606ca323534112a5d7b64a1d56e06f56ba8b2e5591d380d7fb2aeb9c37d007fb834963a42e684e2af939720272c3a7494e5afc65501e SHA512 d7dc9921b74d1da236aeb02edcb39d44dfcfb9da5d6d3b1bf428157f67415c19af218c2454a602828d12d0c6d8c80d1335e92101acda1af8abd6bd312900c33c
DIST coolreader-3.2.49.tar.gz 21398327 BLAKE2B 9a63f34d661f7c12d55e08788edb0c348d33c67708890e89a857975ce3a6fc82d8788dc0a15ad18e025d68254293b1b34977b2ffe24ea19ab4865727d5afbdcb SHA512 06c8416c33ccf939c0292b573352c097c4b2a0b1390181428e5f1bf08e145f1fa1f8ebdcf658bb0f9e8846c1fd5a57a67fb075b8e7285e1e7602e26aba6790b0

@ -0,0 +1,96 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
WX_GTK_VER="3.0"
PLOCALES="bg cs de es hu pl ru uk"
inherit cmake-utils wxwidgets l10n xdg-utils gnome2-utils eapi7-ver
CR_PV=$(ver_rs 3 '-')
if [ "${PV}" != 9999 ]
then
SRC_URI="https://github.com/buggins/${PN}/archive/cr${CR_PV}.tar.gz -> ${P}.tar.gz"
S="${WORKDIR}/${PN}-cr${CR_PV}"
else
inherit git-r3
# github mirror has some new commits to fix page margins settings
# sourceforge mirror saved as backup
#EGIT_REPO_URI="git://git.code.sf.net/p/crengine/crengine"
EGIT_REPO_URI="https://github.com/buggins/${PN}.git"
SRC_URI=""
fi
DESCRIPTION="CoolReader - reader of eBook files (fb2,epub,htm,rtf,txt)"
HOMEPAGE="https://github.com/buggins/coolreader/"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="wxwidgets"
CDEPEND="sys-libs/zlib
media-libs/libpng:0
virtual/jpeg:0
media-libs/freetype
wxwidgets? ( x11-libs/wxGTK:${WX_GTK_VER} )
!wxwidgets? ( dev-qt/qtcore:5 dev-qt/qtgui:5 dev-qt/qtwidgets:5 )"
DEPEND="${CDEPEND}
!wxwidgets? ( dev-qt/linguist-tools:5 )"
RDEPEND="${CDEPEND}
wxwidgets? ( || ( media-fonts/liberation-fonts media-fonts/corefonts ) )"
for lang in ${PLOCALES}; do
IUSE="${IUSE} l10n_${lang}"
done
src_prepare() {
cmake-utils_src_prepare
# locales
l10n_find_plocales_changes "${S}"/cr3qt/src/i18n 'cr3_' '.ts'
local lang langs
langs=""
for lang in ${PLOCALES}; do
if use l10n_${lang}; then
langs="${langs} ${lang}"
fi
done
sed -e "s|SET(LANGUAGES .*)|SET(LANGUAGES ${langs})|" \
-i "${S}"/cr3qt/CMakeLists.txt \
|| die "sed CMakeLists.txt failed"
}
src_configure() {
CMAKE_USE_DIR="${S}"
CMAKE_BUILD_TYPE="Release"
if use wxwidgets; then
setup-wxwidgets
local mycmakeargs=(-D GUI=WX)
else
local mycmakeargs=(-D GUI=QT5)
fi
cmake-utils_src_configure
}
src_install() {
cmake-utils_src_install
if ! use wxwidgets; then
mv "${D}"usr/share/doc/cr3/changelog.gz "${D}"usr/share/doc/${PF}/ || die "mv changelog.gz failed"
rmdir "${D}"usr/share/doc/cr3 || die "rmdir doc/cr3 failed"
gunzip "${D}"usr/share/doc/${PF}/changelog.gz || die "gunzip changelog.gz failed"
gunzip "${D}"usr/share/man/man1/cr3.1.gz || die "gunzip cr3.1.gz failed"
fi
}
pkg_postinst() {
xdg_desktop_database_update
xdg_mimeinfo_database_update
gnome2_icon_cache_update
}
pkg_postrm() {
xdg_desktop_database_update
xdg_mimeinfo_database_update
gnome2_icon_cache_update
}

@ -1,13 +1,13 @@
# Copyright 1999-2018 Gentoo Foundation
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
EAPI=7
inherit eutils multilib flag-o-matic qmake-utils
inherit flag-o-matic qmake-utils
DESCRIPTION="E-Book Reader. Supports many e-book formats"
HOMEPAGE="http://www.fbreader.org/"
SRC_URI="http://www.fbreader.org/files/desktop/${PN}-sources-${PV}.tgz"
HOMEPAGE="https://www.fbreader.org/"
SRC_URI="https://www.fbreader.org/files/desktop/${PN}-sources-${PV}.tgz"
LICENSE="GPL-2"
SLOT="0"
@ -16,18 +16,19 @@ IUSE="debug"
RDEPEND="
app-arch/bzip2
dev-db/sqlite
dev-libs/expat
dev-libs/libunibreak
dev-libs/fribidi
dev-db/sqlite
net-misc/curl
sys-libs/zlib
dev-libs/libunibreak
dev-qt/qtcore:5
dev-qt/qtgui:5
dev-qt/qtwidgets:5
dev-qt/qtnetwork:5[ssl]
dev-qt/qtwidgets:5
net-misc/curl
sys-libs/zlib
"
DEPEND="${RDEPEND}
DEPEND="${RDEPEND}"
BDEPEND="
virtual/pkgconfig
"
@ -61,15 +62,15 @@ src_prepare() {
sed -e "s:MOC = moc-qt4:MOC = $(qt5_get_bindir)/moc:" \
-i makefiles/arch/desktop.mk || die "updating desktop.mk failed"
echo "TARGET_ARCH = desktop" > makefiles/target.mk
echo "LIBDIR = /usr/$(get_libdir)" >> makefiles/target.mk
echo "TARGET_ARCH = desktop" > makefiles/target.mk || die
echo "LIBDIR = /usr/$(get_libdir)" >> makefiles/target.mk || die
echo "UI_TYPE = qt4" >> makefiles/target.mk
echo "UI_TYPE = qt4" >> makefiles/target.mk || die
if use debug; then
echo "TARGET_STATUS = debug" >> makefiles/target.mk
echo "TARGET_STATUS = debug" >> makefiles/target.mk || die
else
echo "TARGET_STATUS = release" >> makefiles/target.mk
echo "TARGET_STATUS = release" >> makefiles/target.mk || die
fi
}

@ -9,7 +9,7 @@ SRC_URI="https://github.com/Numbertext/${PN}/releases/download/${PV}/${P}.tar.xz
LICENSE="LGPL-3+"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
KEYWORDS="~amd64 ~arm arm64 ~ppc64 ~x86"
IUSE=""
src_configure() {

@ -9,7 +9,7 @@ SRC_URI="mirror://sourceforge/${PN}/${P}.tar.xz"
LICENSE="|| ( LGPL-2.1 MPL-2.0 )"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ppc64 ~x86"
KEYWORDS="~alpha ~amd64 ~arm arm64 ~ppc64 ~x86"
IUSE="debug doc tools"
BDEPEND="

Binary file not shown.

@ -22,7 +22,7 @@ fi
LICENSE="public-domain"
SLOT="3"
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"
IUSE="debug doc icu +readline secure-delete static-libs tcl test tools"
if [[ "${PV}" == "9999" ]]; then
PROPERTIES="live"

Binary file not shown.

@ -12,7 +12,7 @@ SRC_URI="https://fc-solve.shlomifish.org/downloads/fc-solve/${P}.tar.xz"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64 ~x86"
KEYWORDS="~amd64 ~arm64 ~x86"
IUSE="tcmalloc"
REQUIRED_USE="${PYTHON_REQUIRED_USE}"

Binary file not shown.

@ -2,5 +2,5 @@ DIST apache-maven-3.0.5-bin.tar.gz 5144659 BLAKE2B a109f1ab8656d031c4c904b9972b5
DIST apache-maven-3.1.1-bin.tar.gz 5494427 BLAKE2B 39b8b29a4747562d96231f575ff5cac2f57a5faee6e74df3054df3fd71b8ada691586def77df7d8f0ab88f4ba464a0d3ba382f3259aa19e2a80e1b1d60322221 SHA512 507d340930cc32268128e8969742dbba34a0144f3e7a561b45f71e254ebff2e6f926fd5c7925081fc94995c3f5b4807caf2204ab70297374857bc66c582610a1
DIST apache-maven-3.2.5-bin.tar.gz 7956528 BLAKE2B 41313c35859946c8387b0e58f4a25b38d97d48065deb1db9ddbb576417beef1c3391e0a06526c51878f0a7e451b949f8f8ebc001611429b68332dcef24b594ee SHA512 0cdbf4c1e045ac7f96c176058f19ebb838bd46caadc4fb479e11eda67efbb66218fe67c370ddec6d2e4d91091ac9e81ff9eea8d64174cbe1e6d5f7e15962cfc5
DIST apache-maven-3.3.9-bin.tar.gz 8491533 BLAKE2B c6947c379dd2d64fe28eeab52da443d771c276553d40f70cced2637df17b18c95108932cbb88d4b747f6a8c0a47150849360ffa9095f6ce50724abeaa2369152 SHA512 9b4b22aba67af48648c634e30edbb03de2a7742b7d4e58b3d637fcd20358a51ccb288dcbd473169a58b9322f7c8fbedcf5336b87d06460d0b20ce37d4c3948b0
DIST apache-maven-3.6.1-bin.tar.gz 9136463 BLAKE2B d630ceeb1c35f742eae324a025c3385fac0b7aa58e0bd3fe239a2027138127604a076958e5f6db6bba4f1e99bc524f0c62643bc4ab4d570378e93e8f72c234c0 SHA512 b4880fb7a3d81edd190a029440cdf17f308621af68475a4fe976296e71ff4a4b546dd6d8a58aaafba334d309cc11e638c52808a4b0e818fc0fd544226d952544
DIST apache-maven-3.6.2-bin.tar.gz 9142315 BLAKE2B f8b4ad4148a508b076cdb9f5ca322860157d6c3517c1ac7bd7d369066cc1567681761e1b638ea74f20461f8c111ff488e1478399a2ebfd406e91a10ace582d86 SHA512 d941423d115cd021514bfd06c453658b1b3e39e6240969caf4315ab7119a77299713f14b620fb2571a264f8dff2473d8af3cb47b05acf0036fc2553199a5c1ee
DIST apache-maven-3.6.3-bin.tar.gz 9506321 BLAKE2B 45892ef05cc1e4578c05a794376fdda730a800070389a1be213cf58c8f8df87be5e22cb2e8fdcf718eed344eff3e133dc72a252b0bbb7dcaf4e0e184539f7b0d SHA512 c35a1803a6e70a126e80b2b3ae33eed961f83ed74d18fcd16909b2d44d7dada3203f1ffe726c17ef8dcca2dcaa9fca676987befeadc9b9f759967a8cb77181c0

@ -1,4 +1,4 @@
# Copyright 1999-2019 Gentoo Authors
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@ -30,6 +30,11 @@ S="${WORKDIR}/${MY_P}"
MAVEN="${PN}-${SLOT}"
MAVEN_SHARE="/usr/share/${MAVEN}"
QA_FLAGS_IGNORED=(
"${MAVEN_SHARE}/lib/jansi-native/linux32/libjansi.so"
"${MAVEN_SHARE}/lib/jansi-native/linux64/libjansi.so"
)
# TODO:
# We should use jars from packages, instead of what is bundled.
src_install() {
@ -48,6 +53,9 @@ src_install() {
# See bug #342901.
echo "CONFIG_PROTECT=\"${MAVEN_SHARE}/conf\"" > "${T}/25${MAVEN}" || die
doenvd "${T}/25${MAVEN}"
# remove broken useless files (bug #734906 and #704618)
rm -r "${ED}"/${MAVEN_SHARE}/lib/jansi-native/freebsd* || die "Failed to remove FreeBSD files"
}
pkg_postinst() {

@ -1,7 +1,7 @@
# Copyright 1999-2019 Gentoo Authors
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
EAPI=7
inherit java-pkg-2
@ -16,7 +16,7 @@ HOMEPAGE="https://maven.apache.org/"
LICENSE="Apache-2.0"
SLOT="3.6"
KEYWORDS="amd64 x86"
KEYWORDS="~amd64 ~x86"
DEPEND="
>=virtual/jdk-1.8
@ -30,6 +30,11 @@ S="${WORKDIR}/${MY_P}"
MAVEN="${PN}-${SLOT}"
MAVEN_SHARE="/usr/share/${MAVEN}"
QA_FLAGS_IGNORED=(
"${MAVEN_SHARE}/lib/jansi-native/linux32/libjansi.so"
"${MAVEN_SHARE}/lib/jansi-native/linux64/libjansi.so"
)
# TODO:
# We should use jars from packages, instead of what is bundled.
src_install() {
@ -48,6 +53,9 @@ src_install() {
# See bug #342901.
echo "CONFIG_PROTECT=\"${MAVEN_SHARE}/conf\"" > "${T}/25${MAVEN}" || die
doenvd "${T}/25${MAVEN}"
# remove broken useless files (bug #734906 and #704618)
rm -r "${ED}"/${MAVEN_SHARE}/lib/jansi-native/freebsd* || die "Failed to remove FreeBSD files"
}
pkg_postinst() {

Binary file not shown.

@ -1,7 +1,9 @@
DIST firefox-68.0-patches-15.tar.xz 16060 BLAKE2B f9e6cd58ea51bed1af90a9d30fd551dc7e939afcd1b4d00de1271bd4bda94021c6f1799fd9945962c14ffa1fd0b6a6429369c4e45efc2000f179b9b2e46971e7 SHA512 9cb2479637dd8b84e0ab68dc0fe144acd2dc74feca282fd3c4b485ca6f0de8190244587622713a5421b243ccda153f738e9a8f463e87e15e93e9b725d943e128
DIST firefox-68.12.0esr.source.tar.xz 313856956 BLAKE2B eeaa4acc9fabf15ec1b313170a30cee8e1fc10a8b08512b915b83b7d6a81c09b365733ed94638bd434864fd7b0cb8cbf1bc2e43441be69e31117e8e6a099234c SHA512 839b02422e4c87bdb12e0995cd35ca8c1996f3fba00bbb46b419e46b67df5ec48a264cb14632db777ce29166ee4fdcb06e2ee3ce847e64328c58c9a2f9129f4c
DIST firefox-78.2.0esr.source.tar.xz 331996944 BLAKE2B bd16877d078de66a418ae114c534b26313f112b9e40ad5cf112fb07a4d7335dc47071ee6e959e3e4c179b95afbdc5ab9cda7cdefa96355dbbaf6b75c7805d171 SHA512 38f91a24634ce5d0c10340c9ac762071f8488f4bd7649bff9ed9cb1cbecda23e207b593118d38488810540e63be39d9c1c45c3b9a6acb477b6b2edf636e56d5b
DIST firefox-78.3.0esr.source.tar.xz 331073228 BLAKE2B 01f3d3c0b8b963dedfa89631c518225104c739637a8bf22c121e3a942fa0b1d1f8cf1c4c2edad2e823e0e3922f865cc8d3430c6fc9246deea855295eaff84a0e SHA512 89e12797429d99760b294e302d803432f533b7c2c10f1fcd3781b89b27ec9698173d4fbf1bfe7506186602daf6666c09152407ce5668fb5b7391e38b5566f2f2
DIST firefox-esr-78-patches-01.tar.xz 30808 BLAKE2B c3005a04233462c800ff0da7ba5e4f1e4d350c21e2642a93aa48637fcc19b8c0e97222669629a152ad6403652f83d4fdf3191b3c2741dca5327b101ef491d962 SHA512 7b2aba8dd4ff2f8ac3236ae95eec73aff3560e8f11f170f09b28ae2c7681dc0220ac63724a331dcc792c86e73145acee173a19bce5fcf995ba40ed5d067e1eff
DIST firefox-esr-78-patches-02.tar.xz 36288 BLAKE2B f177027ea550b4f41616c104865a4d1a99fa0a84ca431176b5191107f23b2fcdd8361ad97493d3182d01dfeb7f2805caf16725b8a81bf1f7847cf400f87018d6 SHA512 7eff0a4f5d2b4abcb0293877b3fe562b5fa2581f46b4905ff8ad839559049e4d903dcca4aad6a7196720cc7b3cd93ae88ca0093da51f70e56609faaadf646c78
DIST js185-1.0.0.tar.gz 6164605 BLAKE2B 76a37f0ceae05d3475853875bd0ce4be6e525e4114816f8f281ea6fc6b60a71060975a0fa1cb843f57ad1e2f842dfb26b24244fa0fd6c20f6ae2ebbe430f70be SHA512 2af7122a7c7007fd7b6668776fe1222515a810b3e43bbf0f76b8f94e1ef406ffd3fb5ccec393021b00274c05b38a77235bc8d6886994c56762fcaf0aa7cf6718
DIST mozjs-52.9.1pre1.tar.bz2 30178574 BLAKE2B 0920432b5140e78297a9bcbccb54268d75a223d5e75e4ff90b3b01aab4f7736b4a4e05c47b3a925ff0a74607a0abad3b6583c75d070ef5142009b20ebaf6e4bf SHA512 187b231b246a5ae09e55c0fef77866b316d75f38f4c2e066d5d4325d8da63433027020c929439cab46af3253ac63ab2f780223a8fd2c6ff535b3409bb6c4aa0f
DIST mozjs-60.5.2.tar.bz2 32816585 BLAKE2B 45ac4c9646e1275faf60eeedbf486f802cd106583eb7f640fe2243adc7cbb811dced5cefa94426cceca63468b0112be84078ffcef24cb2b8c1a7b6c8173c0d45 SHA512 5fb73330e7803bdd524fbe7cfdf4e6b72e85d4b22b0c827400317b5d052d1088d36e558ceac376393089e9d03e658b24e69262851fc04a66bbcda47135423dc0

@ -0,0 +1,267 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
PYTHON_COMPAT=( python3_{6..9} )
WANT_AUTOCONF="2.1"
inherit autotools check-reqs multiprocessing python-any-r1 toolchain-funcs
MY_PN="mozjs"
MY_PV="${PV/_pre*}" # Handle Gentoo pre-releases
MY_MAJOR=$(ver_cut 1)
MOZ_ESR="1"
# Convert the ebuild version to the upstream mozilla version
MOZ_PV="${MY_PV/_alpha/a}" # Handle alpha for SRC_URI
MOZ_PV="${MOZ_PV/_beta/b}" # Handle beta for SRC_URI
MOZ_PV="${MOZ_PV%%_rc*}" # Handle rc for SRC_URI
if [[ ${MOZ_ESR} == 1 ]] ; then
# ESR releases have slightly different version numbers
MOZ_PV="${MOZ_PV}esr"
fi
# Patch version
FIREFOX_PATCHSET="firefox-esr-78-patches-02.tar.xz"
SPIDERMONKEY_PATCHSET="spidermonkey-78-patches-01.tar.xz"
MOZ_HTTP_URI="https://archive.mozilla.org/pub/firefox/releases"
MOZ_SRC_URI="${MOZ_HTTP_URI}/${MOZ_PV}/source/firefox-${MOZ_PV}.source.tar.xz"
if [[ "${PV}" == *_rc* ]]; then
MOZ_HTTP_URI="https://archive.mozilla.org/pub/firefox/candidates/${MOZ_PV}-candidates/build${PV##*_rc}"
MOZ_SRC_URI="${MOZ_HTTP_URI}/source/firefox-${MOZ_PV}.source.tar.xz"
fi
PATCH_URIS=(
https://dev.gentoo.org/~{whissi,polynomial-c,axs}/mozilla/patchsets/${FIREFOX_PATCHSET}
https://dev.gentoo.org/~{whissi,polynomial-c,axs}/mozilla/patchsets/${SPIDERMONKEY_PATCHSET}
)
SRC_URI="${MOZ_SRC_URI}
${PATCH_URIS[@]}"
DESCRIPTION="SpiderMonkey is Mozilla's JavaScript engine written in C and C++"
HOMEPAGE="https://developer.mozilla.org/en-US/docs/Mozilla/Projects/SpiderMonkey"
KEYWORDS="~amd64 ~arm ~arm64 ~mips ~ppc64 ~s390 ~x86"
SLOT="78"
LICENSE="MPL-2.0"
IUSE="cpu_flags_arm_neon debug +jit test"
RESTRICT="!test? ( test )"
BDEPEND="${PYTHON_DEPS}
sys-devel/llvm
>=virtual/rust-1.41.0
virtual/pkgconfig"
CDEPEND=">=dev-libs/icu-67.1:=
>=dev-libs/nspr-4.25
sys-libs/readline:0=
>=sys-libs/zlib-1.2.3"
DEPEND="${CDEPEND}
test? (
$(python_gen_any_dep 'dev-python/six[${PYTHON_USEDEP}]')
)"
RDEPEND="${CDEPEND}"
S="${WORKDIR}/firefox-${MY_PV}/js/src"
python_check_deps() {
if use test ; then
has_version "dev-python/six[${PYTHON_USEDEP}]"
fi
}
pkg_pretend() {
if use test ; then
CHECKREQS_DISK_BUILD="6400M"
else
CHECKREQS_DISK_BUILD="5600M"
fi
check-reqs_pkg_pretend
}
pkg_setup() {
if use test ; then
CHECKREQS_DISK_BUILD="6400M"
else
CHECKREQS_DISK_BUILD="5600M"
fi
check-reqs_pkg_setup
python-any-r1_pkg_setup
}
src_prepare() {
pushd ../.. &>/dev/null || die
eapply "${WORKDIR}"/firefox-patches
eapply "${WORKDIR}"/spidermonkey-patches
default
# Make LTO respect MAKEOPTS
sed -i \
-e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
build/moz.configure/lto-pgo.configure \
|| die "sed failed to set num_cores"
# sed-in toolchain prefix
sed -i \
-e "s/objdump/${CHOST}-objdump/" \
python/mozbuild/mozbuild/configure/check_debug_ranges.py \
|| die "sed failed to set toolchain prefix"
einfo "Removing pre-built binaries ..."
find third_party -type f \( -name '*.so' -o -name '*.o' \) -print -delete || die
MOZJS_BUILDDIR="${WORKDIR}/build"
mkdir "${MOZJS_BUILDDIR}" || die
popd &>/dev/null || die
eautoconf
}
src_configure() {
tc-export CC CXX LD AR RANLIB
cd "${MOZJS_BUILDDIR}" || die
# ../python/mach/mach/mixin/process.py fails to detect SHELL
export SHELL="${EPREFIX}/bin/bash"
local -a myeconfargs=(
--host="${CBUILD:-${CHOST}}"
--target="${CHOST}"
--disable-jemalloc
--disable-optimize
--disable-strip
--enable-readline
--enable-shared-js
--with-intl-api
--with-system-icu
--with-system-nspr
--with-system-zlib
--with-toolchain-prefix="${CHOST}-"
$(use_enable debug)
$(use_enable jit)
$(use_enable test tests)
)
# Modifications to better support ARM, bug 717344
if use cpu_flags_arm_neon ; then
myeconfargs+=( --with-fpu=neon )
if ! tc-is-clang ; then
# thumb options aren't supported when using clang, bug 666966
myeconfargs+=( --with-thumb=yes )
myeconfargs+=( --with-thumb-interwork=no )
fi
fi
# Forcing system-icu allows us to skip patching bundled ICU for PPC
# and other minor arches
ECONF_SOURCE="${S}" \
econf \
${myeconfargs[@]} \
XARGS="${EPREFIX}/usr/bin/xargs"
}
src_compile() {
cd "${MOZJS_BUILDDIR}" || die
default
}
src_test() {
if "${MOZJS_BUILDDIR}/js/src/js" -e 'print("Hello world!")'; then
einfo "Smoke-test successful, continuing with full test suite"
else
die "Smoke-test failed: did interpreter initialization fail?"
fi
local -a KNOWN_TESTFAILURES
KNOWN_TESTFAILURES+=( non262/Date/reset-time-zone-cache-same-offset.js )
KNOWN_TESTFAILURES+=( non262/Date/time-zone-path.js )
KNOWN_TESTFAILURES+=( non262/Date/time-zones-historic.js )
KNOWN_TESTFAILURES+=( non262/Date/time-zones-imported.js )
KNOWN_TESTFAILURES+=( non262/Date/toString-localized.js )
KNOWN_TESTFAILURES+=( non262/Date/toString-localized-posix.js )
KNOWN_TESTFAILURES+=( non262/Intl/DateTimeFormat/timeZone_backward_links.js )
KNOWN_TESTFAILURES+=( non262/Intl/DateTimeFormat/tz-environment-variable.js )
KNOWN_TESTFAILURES+=( non262/Intl/Locale/likely-subtags.js )
KNOWN_TESTFAILURES+=( test262/intl402/Locale/prototype/minimize/removing-likely-subtags-first-adds-likely-subtags.js )
if use x86 ; then
KNOWN_TESTFAILURES+=( non262/Date/timeclip.js )
KNOWN_TESTFAILURES+=( test262/built-ins/Number/prototype/toPrecision/return-values.js )
KNOWN_TESTFAILURES+=( test262/language/types/number/S8.5_A2.1.js )
KNOWN_TESTFAILURES+=( test262/language/types/number/S8.5_A2.2.js )
fi
echo "" > "${T}"/known_failures.list || die
local KNOWN_TESTFAILURE
for KNOWN_TESTFAILURE in ${KNOWN_TESTFAILURES[@]} ; do
echo "${KNOWN_TESTFAILURE}" >> "${T}"/known_failures.list
done
PYTHONPATH="${S}/tests/lib" \
${PYTHON} \
"${S}"/tests/jstests.py -d -s -t 1800 --wpt=disabled --no-progress \
--exclude-file="${T}"/known_failures.list \
"${MOZJS_BUILDDIR}"/js/src/js \
|| die
if use jit ; then
KNOWN_TESTFAILURES=()
echo "" > "${T}"/known_failures.list || die
for KNOWN_TESTFAILURE in ${KNOWN_TESTFAILURES[@]} ; do
echo "${KNOWN_TESTFAILURE}" >> "${T}"/known_failures.list
done
PYTHONPATH="${S}/tests/lib" \
${PYTHON} \
"${S}"/tests/jstests.py -d -s -t 1800 --wpt=disabled --no-progress \
--exclude-file="${T}"/known_failures.list \
"${MOZJS_BUILDDIR}"/js/src/js basic \
|| die
fi
}
src_install() {
cd "${MOZJS_BUILDDIR}" || die
default
# fix soname links
pushd "${ED}"/usr/$(get_libdir) &>/dev/null || die
mv lib${MY_PN}-${MY_MAJOR}.so lib${MY_PN}-${MY_MAJOR}.so.0.0.0 || die
ln -s lib${MY_PN}-${MY_MAJOR}.so.0.0.0 lib${MY_PN}-${MY_MAJOR}.so.0 || die
ln -s lib${MY_PN}-${MY_MAJOR}.so.0 lib${MY_PN}-${MY_MAJOR}.so || die
popd &>/dev/null || die
# remove unneeded files
rm \
"${ED}"/usr/bin/js${MY_MAJOR}-config \
"${ED}"/usr/$(get_libdir)/libjs_static.ajs \
|| die
# fix permissions
chmod -x \
"${ED}"/usr/$(get_libdir)/pkgconfig/*.pc \
"${ED}"/usr/include/mozjs-${MY_MAJOR}/js-config.h \
|| die
}

Binary file not shown.

@ -1 +1,2 @@
DIST igraph-0.7.1.tar.gz 2967134 BLAKE2B 27f0a2f51e561a3ea2e2e6d31853fe10ffd66f9f67603d77f2c0449a4c2bcd4d45c98516b526fb0f23a871ebe3db1fcf0c691551714d044124778faa147bd30f SHA512 ac7d7e3fbc6d27ae69079224881ca03db2c7e0b50d016706f3e167c614e2c9332c675d2fcd3cde12874e13a8fc402d42222308c6195afadee15152cec93f94dd
DIST igraph-0.8.2.tar.gz 3625308 BLAKE2B b3be5a28b6507c98c88a96c4a14e6b9c45645985f5b16aaae0739412a5f26a1ccdbda3180fac5d12525b4da2f5fc3d6caad3928cd1306b151b89104bbbb5f6e8 SHA512 e1035ed22541c7d253c201da5d2f8c5ceb154a6bf4be1b41981a02d6bbe72038647bf011432e2446307e615c27aa8079d4ef2c4447c2eba3764788e26e8f790b

@ -0,0 +1,150 @@
diff --git a/configure.ac b/configure.ac
index b422caf..dae8647 100644
--- a/configure.ac
+++ b/configure.ac
@@ -333,6 +333,8 @@ else
internal_glpk=no
fi
+PKG_CHECK_MODULES([CS],[cxsparse])
+
# Link time optimization feature in newer gcc/g++
# based on http://svn.r-project.org/R/trunk/configure.ac
AC_ARG_ENABLE([lto],
diff --git a/examples/simple/igraph_sparsemat2.c b/examples/simple/igraph_sparsemat2.c
index 24877c2..0f4b45c 100644
--- a/examples/simple/igraph_sparsemat2.c
+++ b/examples/simple/igraph_sparsemat2.c
@@ -21,7 +21,7 @@
*/
-#include <cs/cs.h>
+#include <cs.h>
#include <igraph.h>
#include "igraph_blas_internal.h"
#include "igraph_arpack_internal.h"
diff --git a/examples/simple/igraph_sparsemat3.c b/examples/simple/igraph_sparsemat3.c
index 09329f0..31d4f1f 100644
--- a/examples/simple/igraph_sparsemat3.c
+++ b/examples/simple/igraph_sparsemat3.c
@@ -21,7 +21,7 @@
*/
-#include <cs/cs.h>
+#include <cs.h>
#include <igraph.h>
int permute(const igraph_matrix_t *M,
diff --git a/examples/simple/igraph_sparsemat4.c b/examples/simple/igraph_sparsemat4.c
index 3a33979..c0ea489 100644
--- a/examples/simple/igraph_sparsemat4.c
+++ b/examples/simple/igraph_sparsemat4.c
@@ -21,7 +21,7 @@
*/
-#include <cs/cs.h>
+#include <cs.h>
#include <igraph.h>
igraph_bool_t check_solution(const igraph_sparsemat_t *A,
diff --git a/src/Makefile.am b/src/Makefile.am
index f9d02d2..8ab3385 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -9,9 +9,6 @@ AM_YFLAGS = -d
lib_LTLIBRARIES = libigraph.la
-include lapack/blas.inc
-include lapack/lapack.inc
-include lapack/arpack.inc
include plfit/plfit.inc
F2C = f2c/abort_.c f2c/dolio.c f2c/r_sin.c\
@@ -99,8 +96,6 @@ if INTERNAL_ARPACK
ARPACK_LIB = libarpack.la
endif
-include ../optional/glpk/glpk.inc
-
if INTERNAL_GLPK
libglpk_la_SOURCES = $(GLPK)
libglpk_la_CFLAGS = -I$(top_srcdir)/optional/glpk
@@ -365,7 +360,7 @@ SOURCES = basic_query.c games.c cocitation.c iterators.c \
drl_layout_3d.cpp drl_graph_3d.cpp \
DensityGrid_3d.cpp \
foreign-dl-parser.y foreign-dl-lexer.l \
- $(CS) sparsemat.c mixing.c bigint.c bignum.c \
+ sparsemat.c mixing.c bigint.c bignum.c \
version.c optimal_modularity.c \
igraph_fixed_vectorlist.c separators.c \
igraph_marked_queue.c igraph_estack.c st-cuts.c \
@@ -408,7 +403,7 @@ libigraph_la_CXXFLAGS = -I$(top_srcdir)/include -I$(top_builddir)/include $(W
libigraph_la_LDFLAGS = -no-undefined
libigraph_la_LIBADD = -lm $(XML2_LIBS) $(F2C_LIB) $(BLAS_LIB) \
$(LAPACK_LIB) $(ARPACK_LIB) $(GLPK_LIB) $(PRPACK_LIB) \
- $(PLFIT_LIB)
+ $(PLFIT_LIB) $(CS_LIBS)
if INTERNAL_GLPK
libigraph_la_CFLAGS += -I$(top_srcdir)/optional/glpk
diff --git a/src/Makefile.in b/src/Makefile.in
index 56703d4..cc30d48 100644
--- a/src/Makefile.in
+++ b/src/Makefile.in
@@ -2411,7 +2411,7 @@ SOURCES = basic_query.c games.c cocitation.c iterators.c \
gengraph_powerlaw.cpp gengraph_random.cpp decomposition.c \
bipartite.c drl_layout_3d.cpp drl_graph_3d.cpp \
DensityGrid_3d.cpp foreign-dl-parser.y foreign-dl-lexer.l \
- $(CS) sparsemat.c mixing.c bigint.c bignum.c version.c \
+ sparsemat.c mixing.c bigint.c bignum.c version.c \
optimal_modularity.c igraph_fixed_vectorlist.c separators.c \
igraph_marked_queue.c igraph_estack.c st-cuts.c \
cohesive_blocks.c statusbar.c lapack.c complex.c eigen.c \
diff --git a/src/sparsemat.c b/src/sparsemat.c
index 0ed4678..4fb724d 100644
--- a/src/sparsemat.c
+++ b/src/sparsemat.c
@@ -23,7 +23,7 @@
#include "config.h"
-#include "cs/cs.h"
+#include <cs.h>
#include "igraph_sparsemat.h"
#include "igraph_error.h"
diff --git a/tests/Makefile.am b/tests/Makefile.am
index d350f11..31a1f5a 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -13,7 +13,7 @@ $(srcdir)/package.m4: $(top_srcdir)/configure.ac
echo 'm4_define([AT_PACKAGE_BUGREPORT], [@PACKAGE_BUGREPORT@])'; \
} >$(srcdir)/package.m4
-EXTRA_DIST += package.m4
+#EXTRA_DIST += package.m4
TESTSUITE_AT = \
testsuite.at \
diff --git a/tests/mt.at b/tests/mt.at
index 050974a..b154ce1 100644
--- a/tests/mt.at
+++ b/tests/mt.at
@@ -23,11 +23,11 @@ AT_BANNER([[Thread-safety tests]])
AT_SETUP([Simple error handling test :])
AT_KEYWORDS([thread-safe])
-AT_COMPILE_CHECK([simple/tls1.c], [], [], [], [-lpthread])
+AT_COMPILE_CHECK([simple/tls1.c], [], [], [], [-lpthread $(${PKG_CONFIG} --libs arpack)])
AT_CLEANUP
AT_SETUP([Thread-safe ARPACK:])
AT_KEYWORDS([thread-safe ARPACK])
AT_COMPILE_CHECK([simple/tls2.c], [simple/tls2.out], [], [internal],
- [-lpthread])
+ [-lpthread $(${PKG_CONFIG} --libs arpack)])
AT_CLEANUP

@ -0,0 +1,59 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit autotools toolchain-funcs
DESCRIPTION="Creating and manipulating undirected and directed graphs"
HOMEPAGE="http://www.igraph.org/"
SRC_URI="https://github.com/igraph/igraph/releases/download/${PV}/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0/0"
KEYWORDS="~amd64 ~x86"
IUSE="debug"
RDEPEND="
dev-libs/gmp:0
dev-libs/libxml2
sci-libs/arpack
sci-libs/cxsparse
sci-mathematics/glpk
virtual/blas
virtual/lapack"
DEPEND="${RDEPEND}"
BDEPEND="virtual/pkgconfig"
PATCHES=( "${FILESDIR}"/${P}-unbundle.patch )
src_prepare() {
default
rm -r src/lapack optional/glpk src/cs || die
eautoreconf
}
src_configure() {
# even with --with-external-f2c
# we don't need f2c as none of
# arpack lapack blas
# are internal
tc-export PKG_CONFIG
econf \
$(use_enable debug) \
--enable-gmp \
--disable-static \
--disable-tls \
--with-external-arpack \
--with-external-blas \
--with-external-lapack \
--with-external-f2c \
--with-external-glpk
}
src_install() {
default
# no static archives
find "${ED}" -name '*.la' -delete || die
}

@ -1,13 +1,20 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<longdescription lang="en">
igraph is a free software package for creating and manipulating undirected and
directed graphs. It includes implementations for classic graph theory problems
like minimum spanning trees and network flow, and also implements algorithms for
some recent network analysis methods, like community structure search.
</longdescription>
igraph is a free software package for creating and manipulating undirected and
directed graphs. It includes implementations for classic graph theory problems
like minimum spanning trees and network flow, and also implements algorithms for
some recent network analysis methods, like community structure search.
</longdescription>
<maintainer type="person">
<email>gentoo@aisha.cc</email>
<name>Aisha Tammy</name>
</maintainer>
<maintainer type="project">
<email>sci-biology@gentoo.org</email>
<name>Gentoo Biology Project</name>
</maintainer>
<upstream>
<remote-id type="sourceforge">igraph</remote-id>
</upstream>

@ -11,7 +11,7 @@ SRC_URI="https://www.digip.org/jansson/releases/${P}.tar.gz"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
KEYWORDS="~alpha ~amd64 ~arm arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 sparc ~x86"
IUSE="doc static-libs"
# dev-libs/jansson-2.13.1[doc]: fails to build with >=sphinx-3.0, #731668

@ -12,7 +12,7 @@ SRC_URI="https://github.com/PJK/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="MIT"
SLOT="0/$(ver_cut 1-2)"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~s390 ~sparc ~x86"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sparc ~x86"
IUSE="+custom-alloc doc test"
BDEPEND="

@ -11,7 +11,7 @@ SRC_URI="https://github.com/Yubico/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="BSD-2"
SLOT="0/1"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~s390 ~sparc ~x86"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sparc ~x86"
IUSE="libressl +static-libs"
DEPEND="

@ -1,4 +1,2 @@
DIST msgpack-1.1.0.tar.gz 493551 BLAKE2B 3ee162fcba5ae61c7c69945a567ac4d39526e7941f42cc2ed55bc5885b823af84eea212c4e75e8e8583e8ea8a5e12f75e969409193c5e7273430e2e02d33a02c SHA512 6823fab090c2146f871a45736c29b8f81434f0d72c597ebea2e947e4a9a17554e163bc88fbbc3dd0805b2ef0df029b10ca30c09dfbd1111252b9861a1e373901
DIST msgpack-3.1.1.tar.gz 495858 BLAKE2B a99b7edb2a6de80e018d5c4084ea199518e34045a6293c622c8690147ae353abdb63856eb031962a02ce20903d4443ec2b01a3c033e756c339f8674ff801d4c3 SHA512 cc634ef38b3844bf994159024441fe72d99055c42b0a4d81245b0629fd1f3147587eb36537cfb85e4cae2edc1dc23d7fa400022efa5a10dca295f9a6acd38346
DIST msgpack-3.2.0.tar.gz 499188 BLAKE2B 6e5fd59a96ca726d3429b173b3db4c74163eaf6d314b289845237b6ace6208478dbbbb60397c630d515f6f6eed344b74f76225d1a4ca143b91ebb9b3a1369c14 SHA512 f3d011adfaa71b3c5d5f3eb43f0addbd461ae82b8ac22f367ddba7ef762d3bea500477501cf394d1770f0c47809bc363fc1088819ecfdfa668e93529885f4b88
DIST msgpack-3.2.1.tar.gz 1234733 BLAKE2B 97fb6cab5125463f10e7ad2c55ee478b2bf3dab5628a40ce1b0bcdd96cc002f5c99e495592c91f1342e6623d32b5594536de226b0bf80e1cb5290dae9b0566dc SHA512 68d06b05a1f00a3d9d7d39313a9e11f42828606c39d9d4c07673a48c9b88028a6316f2a964881cc8e4d185616a037711f02a7d3cd6029eadbacf52145603538b
DIST msgpack-3.3.0.tar.gz 508001 BLAKE2B 3017c44689f8afbf078b9c498449e21b4e3b87591c50a37bf9ae73869dab550819f24d6e5179a3600df297aa2c024e5a7fe1defcbab7c0f1aff826870de2ab32 SHA512 ad3e32edc8c6afd70282b3d4b493c2ffe74a697c41bd1f39030c5b4752cccefaa965bc049d4c2e63103a210bf714dc3bddd474691bc067d1475ae017593f55e6

@ -1,25 +0,0 @@
--- msgpack-1.0.0/CMakeLists.txt
+++ msgpack-1.0.0/CMakeLists.txt
@@ -213,10 +213,6 @@
ADD_SUBDIRECTORY (test)
ENDIF ()
-IF ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang" OR "${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")
- SET_PROPERTY (TARGET msgpack APPEND_STRING PROPERTY COMPILE_FLAGS "-Wall -g -O3 -DPIC")
- SET_PROPERTY (TARGET msgpack-static APPEND_STRING PROPERTY COMPILE_FLAGS "-Wall -g -O3" )
-ENDIF ()
IF ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "MSVC")
IF (CMAKE_CXX_FLAGS MATCHES "/W[0-4]")
STRING(REGEX REPLACE "/W[0-4]" "/W3" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
--- msgpack-1.0.0/test/CMakeLists.txt
+++ msgpack-1.0.0/test/CMakeLists.txt
@@ -52,9 +52,6 @@
${CMAKE_THREAD_LIBS_INIT}
)
ADD_TEST (${source_file_we} ${source_file_we})
- IF ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang" OR "${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")
- SET_PROPERTY (TARGET ${source_file_we} APPEND_STRING PROPERTY COMPILE_FLAGS "-Wall -g -O3")
- ENDIF ()
IF ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "MSVC")
IF (CMAKE_CXX_FLAGS MATCHES "/W[0-4]")
STRING(REGEX REPLACE "/W[0-4]" "/W3" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")

@ -1,40 +0,0 @@
--- msgpack-1.0.0/CMakeLists.txt
+++ msgpack-1.0.0/CMakeLists.txt
@@ -17,6 +17,7 @@
OPTION (MSGPACK_CXX11 "Using c++11 compiler" OFF)
OPTION (MSGPACK_32BIT "32bit compile" OFF)
+OPTION (MSGPACK_STATIC "Build static library" ON)
IF (MSGPACK_CXX11)
IF ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")
@@ -196,12 +197,15 @@
${msgpack_HEADERS}
)
-ADD_LIBRARY (msgpack-static STATIC
- ${msgpack_SOURCES}
- ${msgpack_HEADERS}
-)
+IF (MSGPACK_STATIC)
+ ADD_LIBRARY (msgpack-static STATIC
+ ${msgpack_SOURCES}
+ ${msgpack_HEADERS}
+ )
+ SET_TARGET_PROPERTIES (msgpack-static PROPERTIES OUTPUT_NAME "msgpack")
+ INSTALL (TARGETS msgpack-static DESTINATION ${CMAKE_INSTALL_LIBDIR})
+ENDIF ()
-SET_TARGET_PROPERTIES (msgpack-static PROPERTIES OUTPUT_NAME "msgpack")
SET_TARGET_PROPERTIES (msgpack PROPERTIES IMPORT_SUFFIX "_import.lib")
SET_TARGET_PROPERTIES (msgpack PROPERTIES SOVERSION 3 VERSION 4.0.0)
@@ -233,7 +237,7 @@
SET(CMAKE_INSTALL_LIBDIR lib)
ENDIF ()
-INSTALL (TARGETS msgpack msgpack-static DESTINATION ${CMAKE_INSTALL_LIBDIR})
+INSTALL (TARGETS msgpack DESTINATION ${CMAKE_INSTALL_LIBDIR})
INSTALL (DIRECTORY include DESTINATION ${CMAKE_INSTALL_PREFIX})
INSTALL (FILES ${CMAKE_CURRENT_BINARY_DIR}/msgpack.pc DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig)

@ -1,22 +0,0 @@
Bug: https://bugs.gentoo.org/623492
Backported from: https://github.com/msgpack/msgpack-c/commit/66a5fcf8f1a9e57b02904a6ac55a86a9c74ea1de
--- a/include/msgpack/adaptor/detail/cpp11_msgpack_tuple.hpp
+++ b/include/msgpack/adaptor/detail/cpp11_msgpack_tuple.hpp
@@ -46,13 +46,14 @@
public:
using base = std::tuple<Types...>;
- using base::base;
- tuple() = default;
tuple(tuple const&) = default;
tuple(tuple&&) = default;
template<typename... OtherTypes>
+ tuple(OtherTypes&&... other):base(std::forward<OtherTypes>(other)...) {}
+
+ template<typename... OtherTypes>
tuple(tuple<OtherTypes...> const& other):base(static_cast<std::tuple<OtherTypes...> const&>(other)) {}
template<typename... OtherTypes>
tuple(tuple<OtherTypes...> && other):base(static_cast<std::tuple<OtherTypes...> &&>(other)) {}

@ -1,47 +0,0 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
inherit cmake-multilib
if [[ ${PV} == 9999 ]]; then
inherit git-r3
EGIT_REPO_URI="https://github.com/${PN}/${PN}-c.git"
else
SRC_URI="https://github.com/${PN}/${PN}-c/releases/download/cpp-${PV}/${P}.tar.gz"
KEYWORDS="~amd64 ~arm ~x86 ~amd64-linux ~x86-linux"
fi
DESCRIPTION="MessagePack is a binary-based efficient data interchange format"
HOMEPAGE="https://msgpack.org/ https://github.com/msgpack/msgpack-c/"
LICENSE="Apache-2.0"
SLOT="0"
IUSE="+cxx static-libs test"
RESTRICT="!test? ( test )"
DEPEND="
test? (
>=dev-cpp/gtest-1.6.0-r2[${MULTILIB_USEDEP}]
sys-libs/zlib[${MULTILIB_USEDEP}]
)
"
DOCS=( README.md )
PATCHES=(
"${FILESDIR}"/${PN}-1.0.0-cflags.patch
"${FILESDIR}"/${PN}-1.0.0-static.patch
"${FILESDIR}"/${P}-gcc6.patch
)
src_configure() {
local mycmakeargs=(
-DMSGPACK_ENABLE_CXX=$(usex cxx)
-DMSGPACK_STATIC=$(usex static-libs)
-DMSGPACK_BUILD_TESTS=$(usex test)
)
cmake-multilib_src_configure
}

@ -1,75 +0,0 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit cmake-multilib
if [[ ${PV} == 9999 ]]; then
inherit git-r3
EGIT_REPO_URI="https://github.com/${PN}/${PN}-c.git"
else
SRC_URI="https://github.com/${PN}/${PN}-c/releases/download/cpp-${PV}/${P}.tar.gz"
KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
fi
DESCRIPTION="MessagePack is a binary-based efficient data interchange format"
HOMEPAGE="https://msgpack.org/ https://github.com/msgpack/msgpack-c/"
LICENSE="Boost-1.0"
SLOT="0/2"
IUSE="boost +cxx doc examples static-libs test"
RESTRICT="!test? ( test )"
RDEPEND="boost? ( dev-libs/boost[context,${MULTILIB_USEDEP}] )"
DEPEND="${RDEPEND}
test? (
>=dev-cpp/gtest-1.6.0-r2[${MULTILIB_USEDEP}]
sys-libs/zlib[${MULTILIB_USEDEP}]
)
doc? ( app-doc/doxygen[dot] )
"
src_configure() {
local mycmakeargs=(
-DMSGPACK_BOOST="$(usex boost)"
-DMSGPACK_ENABLE_CXX="$(usex cxx)"
-DMSGPACK_ENABLE_STATIC="$(usex static-libs)"
-DMSGPACK_BUILD_TESTS="$(usex test)"
# don't build the examples
-DMSGPACK_BUILD_EXAMPLES=OFF
# enable C++11 by default
-DMSGPACK_CXX11=ON
)
cmake-multilib_src_configure
}
multilib_src_compile() {
cmake-utils_src_compile
if multilib_is_native_abi && use doc; then
cmake-utils_src_make doxygen
fi
}
multilib_src_install() {
if multilib_is_native_abi; then
if use doc; then
local HTML_DOCS=( "${BUILD_DIR}"/docs/. )
mkdir docs || die
mv doc_c/html docs/c || die
use cxx && mv doc_cpp/html docs/cpp || die
fi
if use examples; then
docinto examples
dodoc -r "${WORKDIR}/${P}/example/."
docompress -x /usr/share/doc/${PF}/examples
fi
fi
cmake-utils_src_install
}

@ -2,6 +2,8 @@
# Distributed under the terms of the GNU General Public License v2
EAPI=7
CMAKE_ECLASS=cmake
inherit cmake-multilib
if [[ ${PV} == 9999 ]]; then
@ -9,7 +11,7 @@ if [[ ${PV} == 9999 ]]; then
EGIT_REPO_URI="https://github.com/${PN}/${PN}-c.git"
else
SRC_URI="https://github.com/${PN}/${PN}-c/releases/download/cpp-${PV}/${P}.tar.gz"
KEYWORDS="~amd64 ~arm64 ~x86 ~amd64-linux ~x86-linux"
KEYWORDS="~amd64 ~arm ~arm64 ~x86 ~amd64-linux ~x86-linux"
fi
DESCRIPTION="MessagePack is a binary-based efficient data interchange format"
@ -20,16 +22,16 @@ SLOT="0/2"
IUSE="boost +cxx doc examples static-libs test"
RESTRICT="!test? ( test )"
BDEPEND="doc? ( app-doc/doxygen[dot] )"
RDEPEND="boost? ( dev-libs/boost[context,${MULTILIB_USEDEP}] )"
DEPEND="${RDEPEND}
test? (
>=dev-cpp/gtest-1.6.0-r2[${MULTILIB_USEDEP}]
sys-libs/zlib[${MULTILIB_USEDEP}]
)
doc? ( app-doc/doxygen[dot] )
"
src_configure() {
multilib_src_configure() {
local mycmakeargs=(
-DMSGPACK_BOOST="$(usex boost)"
-DMSGPACK_ENABLE_CXX="$(usex cxx)"
@ -40,14 +42,15 @@ src_configure() {
# enable C++11 by default
-DMSGPACK_CXX11=ON
)
cmake-multilib_src_configure
cmake_src_configure
}
multilib_src_compile() {
cmake-utils_src_compile
cmake_src_compile
if multilib_is_native_abi && use doc; then
cmake-utils_src_make doxygen
emake doxygen
fi
}
@ -64,12 +67,10 @@ multilib_src_install() {
if use examples; then
docinto examples
dodoc -r "${WORKDIR}/${P}/example/."
docompress -x /usr/share/doc/${PF}/examples
fi
fi
cmake-utils_src_install
cmake_src_install
}

@ -22,7 +22,7 @@ fi
LICENSE="BSD"
SLOT="0/23"
KEYWORDS="~alpha ~amd64 arm arm64 ~hppa ~ia64 ~mips ~ppc ppc64 ~s390 sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x86-macos"
KEYWORDS="~alpha ~amd64 arm arm64 hppa ~ia64 ~mips ~ppc ppc64 ~s390 sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x86-macos"
IUSE="emacs examples static-libs test zlib"
RESTRICT="!test? ( test )"

@ -13,7 +13,7 @@ SRC_URI="http://download.drobilla.net/${P}.tar.bz2"
LICENSE="ISC"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
KEYWORDS="~alpha ~amd64 ~arm arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
IUSE="doc static-libs test"
RESTRICT="!test? ( test )"

@ -1 +1,2 @@
DIST unibilium-2.0.0.tar.gz 112570 BLAKE2B 95c24c53e11590faabf3d4b8484c344be0b2a0988f05bde785d03dac338d9f18fc65324f5ccc402723c9fabe2990083ce260d8fa57129591a1b2a1f8405eff9d SHA512 e93f319b7a85a4441c7f4e30d12d906805f066b14bff03331e48b6257da893f6447e257c8ba731077ad4b54d82d3ebf1ccf1fcf2d864273e0d4321a26ef7c172
DIST unibilium-2.1.0.tar.gz 121971 BLAKE2B e035eab4343ee779218c302b3cae3ff5d443fc9bd723cade53a3d38dde3d66ee3d7374f7c69b85508a59d44d936601b24f33b01d923e55677d2bac71bd520fea SHA512 c0074ff8431f82c92072b8c0c9d3cf38d759b4de996b168c6ab00e475b0a6204d9c29b0a6e48e62dd4fa4898f82246150ef7cd5e246893d2c225c50ec4d4ac68

@ -0,0 +1,22 @@
--- a/Makefile
+++ b/Makefile
@@ -56,7 +56,7 @@ OBJECTS=unibilium.lo uninames.lo uniutil.lo
LIBRARY=libunibilium.la
PODS=$(wildcard doc/*.pod)
-MANPAGES=$(addprefix man/,$(notdir $(PODS:.pod=.3.gz)))
+MANPAGES=$(addprefix man/,$(notdir $(PODS:.pod=.3)))
TOOLS=$(wildcard tools/*.c)
@@ -121,8 +121,8 @@ install-man: build-man
.PHONY: build-man
build-man: $(MANPAGES)
-man/%.3.gz: doc/%.pod
- $(POD2MAN) $(POD2MAN_OPTS) $< | gzip > $@
+man/%.3: doc/%.pod
+ $(POD2MAN) $(POD2MAN_OPTS) $< > $@
# Regenerate static test files, based on existing terminfo entries.

@ -0,0 +1,35 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit flag-o-matic toolchain-funcs
DESCRIPTION="A very basic terminfo library"
HOMEPAGE="https://github.com/neovim/unibilium/"
SRC_URI="https://github.com/neovim/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="LGPL-3+ MIT"
SLOT="0/4"
KEYWORDS="~amd64 ~arm ~arm64 ~x86"
IUSE="static-libs"
BDEPEND="
dev-lang/perl
sys-devel/libtool"
PATCHES=(
"${FILESDIR}/${PN}-2.1.0-no-compress-man.patch"
)
src_compile() {
append-flags -fPIC
tc-export CC
emake PREFIX="${EPREFIX}/usr" LIBDIR="${EPREFIX}/usr/$(get_libdir)" all
}
src_install() {
emake PREFIX="${EPREFIX}/usr" LIBDIR="${EPREFIX}/usr/$(get_libdir)" DESTDIR="${D}" install
use static-libs || rm "${ED}"/usr/$(get_libdir)/lib${PN}.a || die
rm "${ED}"/usr/$(get_libdir)/lib${PN}.la || die
}

Binary file not shown.

@ -17,12 +17,20 @@ RDEPEND="dev-lang/lua:0=
DEPEND="${RDEPEND}"
BDEPEND="virtual/pkgconfig"
src_prepare() {
default
# Temporary fix for respect LDFLAGS (#739050)
# Fixed in luke 0.2.1
sed -i -e "s:c_module,libdirs:c_module,'\$LDFLAGS',libdirs:g" \
build-aux/luke || die
}
src_compile() {
./build-aux/luke package="${PN}" version="${PV}" \
PREFIX="${ED}/usr" \
INST_LIBDIR="${ED}/$($(tc-getPKG_CONFIG) --variable INSTALL_CMOD lua)" \
INST_LUADIR="${ED}/$($(tc-getPKG_CONFIG) --variable INSTALL_LMOD lua)" \
CFLAGS="${CFLAGS}" CC="$(tc-getCC)" || die
CFLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS}" CC="$(tc-getCC)" || die
}
src_install() {

@ -10,7 +10,7 @@ inherit perl-module
DESCRIPTION="provides Moose-like method modifiers"
SLOT="0"
KEYWORDS="amd64 ~arm hppa ppc ~riscv x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x86-solaris"
KEYWORDS="amd64 ~arm ~arm64 hppa ppc ~riscv x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x86-solaris"
IUSE="test"
RESTRICT="!test? ( test )"

Binary file not shown.

@ -10,7 +10,7 @@ inherit perl-module
DESCRIPTION="Minimalist Object Orientation (with Moose compatiblity)"
SLOT="0"
KEYWORDS="amd64 ~arm hppa ppc ~riscv x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x86-solaris"
KEYWORDS="amd64 ~arm ~arm64 hppa ppc ~riscv x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x86-solaris"
IUSE="test"
RESTRICT="!test? ( test )"

Binary file not shown.

@ -14,7 +14,7 @@ SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
LICENSE="BSD"
SLOT="0"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~ia64 ppc ~ppc64 ~s390 ~sparc x86 ~amd64-linux ~x86-linux"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ppc ~ppc64 ~s390 ~sparc x86 ~amd64-linux ~x86-linux"
RDEPEND="
app-doc/doxygen

@ -2,7 +2,7 @@
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python3_{6,7} )
PYTHON_COMPAT=( python3_{6,7,8,9} )
inherit distutils-r1

@ -1 +1,2 @@
DIST jupyterlab_pygments-0.1.1.tar.gz 561976 BLAKE2B ca317ed6709fd2c9a8afd137051140396bccdc3140c8c1ca97f64f8d4f74d2272c687661e1e28822a5008b2285306024408b18ba6ac92cb9d73acc29b8741fe4 SHA512 743e380f253f817ec9c9aedbe5d3c1cb5bc2c3de2136deba40b0fd3880bb04a4774099eb90437519638811ea9bea0324db3c3d8b1a9ab63857e7513deeaba669
DIST jupyterlab_pygments-0.1.2.tar.gz 561989 BLAKE2B 85d6b59b2c959f838746c7c6fed99ad5adda89a514a77327cc8e9ba7d6a91b1c0206d999c09149e6c5b9c67911ca16914f0b17a67b3505db73c23a7194fe4566 SHA512 0b4f4c13017f8afbd83e9fb575b3c4ee44272bc01421761ae7b140ecab743d825aa195432caa5f6153bda0ef84fe3ab92dad61ffd9b048927736a916dd267b5a

@ -0,0 +1,18 @@
# Copyright 2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python3_{6..9} )
inherit distutils-r1
DESCRIPTION="Pygments theme making use of JupyterLab CSS variables"
HOMEPAGE="https://github.com/jupyterlab/jupyterlab_pygments"
SRC_URI="https://github.com/jupyterlab/jupyterlab_pygments/archive/${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="BSD"
SLOT="0"
KEYWORDS="~amd64 ~arm64 ~x86"
RDEPEND="dev-python/pygments[${PYTHON_USEDEP}]"

@ -1 +1,2 @@
DIST jwcrypto-0.7.0.tar.gz 80869 BLAKE2B 7b8a6928dff40d4d3e0bd61cfc81362ed5d0abd1001e1273aa12111166ed13e510d9cff935724578c2b7392bc74ffc94b0a733ea23f4a982e6bd8d35b1155ef4 SHA512 1d2b6268a54f3a3d466f7a7f7f0776164f0f35420b026c8ebfba099df530d965697eea85a49a73c44713e38fdb9ec4018cd4813b8e154a18117fc4006aa5578e
DIST jwcrypto-0.8.0.tar.gz 81782 BLAKE2B a3cfb04f099a747c365f870c53d75574cdfaf8b98373f37cc107ebca956b414b7d7cb78f8fcd6d3964528d3bc8a217e5c645bf6e82531e951dfdd9ca03472111 SHA512 784134d27ff7abd31e1069763969513ed45f81fd2c242b7ff7036413c35ef374d535eae0123f5561a8e4eb2630cee40056d1c66454288e1310c4cbedecaac210

@ -0,0 +1,28 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( pypy3 python3_{6..9} )
inherit distutils-r1
DESCRIPTION="Implements JWK,JWS,JWE specifications using python-cryptography"
HOMEPAGE="https://github.com/latchset/jwcrypto"
SRC_URI="https://github.com/latchset/jwcrypto/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="LGPL-3+"
SLOT="0"
KEYWORDS="~amd64 ~arm64 ~x86"
RDEPEND=">=dev-python/cryptography-2.3[${PYTHON_USEDEP}]"
distutils_enable_sphinx docs/source
distutils_enable_tests pytest
python_prepare_all() {
# Do not install doc in non-standard paths
sed -i "\|data_files = \[('share/doc/jwcrypto|d" setup.py || die
distutils-r1_python_prepare_all
}

@ -1 +1,2 @@
DIST neovim-remote-2.2.1.tar.gz 438078 BLAKE2B abbb056a10acb1c4e21c0c418ee2d6003869340eb34df0c0374b947fbbfa2d2e0f64f61ad571a6cad7ffad7374f1df17a519795e61b37b8d6741d566760759e9 SHA512 04a16a1ed5f4947b4fd763432a14fc565300abe9b480037a462f0c4700535d4854012ff08ac64234dbb1fccc1d3f5ba2174f94effc5564879fbcd1c83fee26ae
DIST neovim-remote-2.4.0.tar.gz 438687 BLAKE2B 0dfbe3d660d9b2f6b7a4f1016d4d230d63612306ea99079364ed5c6dbae51df7a19c4d1bca51a7bfad142ffe5811e286b843edf6b0715c7aac921c584701030e SHA512 073bf95a0238c76c19258d886fe71e23ec85f9cba200b8a490014a2842d1a84b3c95092afcfdcc8ca80122639b9e07652594faa24ed6a6aff537192ec3a3d14c

@ -0,0 +1,32 @@
# 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
if [[ ${PV} == 9999 ]]; then
inherit git-r3
EGIT_REPO_URI="https://github.com/mhinz/${PN}.git"
else
KEYWORDS="~amd64 ~arm"
SRC_URI="https://github.com/mhinz/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
fi
DESCRIPTION="A tool that helps control neovim processes"
HOMEPAGE="https://github.com/mhinz/neovim-remote"
LICENSE="MIT"
SLOT="0"
RDEPEND="
dev-python/pynvim[${PYTHON_USEDEP}]
dev-python/psutil[${PYTHON_USEDEP}]
"
distutils_enable_tests pytest
BDEPEND+="
test? ( app-editors/neovim )
"

@ -1,2 +1,3 @@
DIST phonenumbers-8.12.10.tar.gz 2254112 BLAKE2B 1fa0faf7347371a548b5e890e3cf8ba9daa32275670f40f7efe507ecfa817a3c372d5b47f2b91a1366bb519657447a614d3579bf69ba3249255c579e37ae883b SHA512 14fcdaa76a61624db2c4d4290a3df27252d985f889b8fb29c80971b88b502a5fe74efa0a110ee3ec92459b8d6a1ccc03dd5eb211b6addad741c9bb7527d5e600
DIST phonenumbers-8.12.8.tar.gz 2249617 BLAKE2B e02f851774bee9806f01b0359ea4e159c8c890a815edf45f19162dc35972aaa3c84f9e2e19a51ef3efb053d4e307a4d3a31b664a7fffc7c4ffe9a7c6c281ae86 SHA512 0897a5298b5aaee7c0775e12cbe35a6e25b85a1836d8302abc5eee7e327fc559bc06f3130c63ac5aa14207900d1615f3a7cd4137d6561855e4ad38b6e4af220f
DIST phonenumbers-8.12.9.tar.gz 2250397 BLAKE2B 06b3f8beefe3c1e5cfa4d0f9bb550f40e568692f711513784001e9bad9d3805adc42ba0bdacfa292935239c6bcb47e4723a72da160efde21269308329299fce0 SHA512 0f1de43bd56ca05920721cc9639249bffaa6516f4713fc54b53491e4ffecceb357a26cd9d6126ea9e91eec1bb1fb4bf2003f95f1d62f61ae2f1275e0dca58e29

@ -0,0 +1,20 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python3_{6..9} )
inherit distutils-r1
DESCRIPTION="Python port of Google's libphonenumber"
HOMEPAGE="https://github.com/daviddrysdale/python-phonenumbers"
SRC_URI="mirror://pypi/p/${PN}/${P}.tar.gz"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~amd64 ~x86"
DOCS=(README.md)
distutils_enable_tests setup.py

@ -13,7 +13,7 @@ SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
SLOT="0"
LICENSE="BSD"
KEYWORDS="~alpha ~amd64 arm ~arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~amd64-linux ~x86-linux"
KEYWORDS="~alpha ~amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~amd64-linux ~x86-linux"
# There are no tests at all, under TODO
# see https://pypi.org/project/process-tests/2.0.2/

@ -14,7 +14,7 @@ S="${WORKDIR}/${MY_P}-src"
LICENSE="MIT"
SLOT="${PV}"
KEYWORDS="~amd64 ~ppc64 ~x86 ~amd64-linux ~x86-linux"
KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux"
IUSE="bzip2 +jit low-memory ncurses cpu_flags_x86_sse2"
RDEPEND=">=sys-libs/zlib-1.1.3:0=

@ -18,7 +18,7 @@ S="${WORKDIR}/${MY_P}-src"
LICENSE="MIT"
# pypy -c 'import sysconfig; print sysconfig.get_config_var("SOABI")'
SLOT="0/73"
KEYWORDS="~amd64 ~ppc64 ~x86 ~amd64-linux ~x86-linux"
KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux"
IUSE="bzip2 gdbm +jit libressl ncurses sqlite tk"
RDEPEND="

@ -15,7 +15,7 @@ S="${WORKDIR}/${MY_P}-src"
LICENSE="MIT"
SLOT="${PV}"
KEYWORDS="~amd64 ~ppc64 ~x86 ~amd64-linux ~x86-linux"
KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux"
IUSE="bzip2 +jit low-memory ncurses cpu_flags_x86_sse2"
RDEPEND=">=sys-libs/zlib-1.1.3:0=

@ -16,7 +16,7 @@ S="${WORKDIR}/${MY_P}-src"
LICENSE="MIT"
SLOT="${PV}"
KEYWORDS="~amd64 ~ppc64 ~x86 ~amd64-linux ~x86-linux"
KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux"
IUSE="bzip2 +jit low-memory ncurses cpu_flags_x86_sse2"
RDEPEND=">=sys-libs/zlib-1.1.3:0=

@ -16,7 +16,7 @@ S="${WORKDIR}/${MY_P}-src"
LICENSE="MIT"
# pypy3 -c 'import sysconfig; print(sysconfig.get_config_var("SOABI"))'
SLOT="0/pypy36-pp73"
KEYWORDS="~amd64 ~ppc64 ~x86 ~amd64-linux ~x86-linux"
KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux"
IUSE="bzip2 gdbm +jit libressl ncurses sqlite test tk"
RESTRICT="!test? ( test )"

@ -17,7 +17,7 @@ S="${WORKDIR}/${MY_P}-src"
LICENSE="MIT"
# pypy3 -c 'import sysconfig; print(sysconfig.get_config_var("SOABI"))'
SLOT="0/pypy37-pp73"
KEYWORDS="~amd64 ~ppc64 ~x86 ~amd64-linux ~x86-linux"
KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux"
IUSE="bzip2 gdbm +jit libressl ncurses sqlite test tk"
# pypy3.7 is in alpha state and a lot of tests are failing
RESTRICT="test"

@ -1 +1,2 @@
DIST python-memcached-1.59-gh.tar.gz 32334 BLAKE2B de8d18ba887b03e4737b554cc4b0074a4f16745e26a8b3631a747c45019e1da83612677dc3e98f97d76e851320c61baafbd0a29231a826c14b7d3bf3e477f29e SHA512 d7ff45a329f2a9bf97fdc7c0268c2c67046c3501270fcf03578b955c2da35904d7bdecd4239924d390797ddff8f4cc69fc5743f4d4f663cdb9f2f8c7e8159512
DIST python-memcached-1.59.tar.gz 22210 BLAKE2B 50387821d50cf974ada738346e016eb736043078721bf905782f41df1f27574244d03b6b94ac9e5ccab7aeecfa8ca4c5a78cec2c41d15fda8756c7cb3bce9aa1 SHA512 a25cbb9efb3babe85e1523bdabfe4644b93b3a6a7268787a3928f724f833ce0eea7d2ef676d1b7f894cdfe293129975b35cb46ec553c92810dbc18013bfabece

@ -10,10 +10,12 @@
<name>Python</name>
</maintainer>
<longdescription lang="en">
This is a Python based API (implemented in 100% python) for communicating with
the memcached distributed memory object cache daemon.
</longdescription>
This is a Python based API (implemented in 100% python) for communicating with
the memcached distributed memory object cache daemon.
</longdescription>
<upstream>
<remote-id type="pypi">python-memcached</remote-id>
<remote-id type="github">linsomniac/python-memcached</remote-id>
<bugs-to>https://github.com/linsomniac/python-memcached/issues</bugs-to>
</upstream>
</pkgmetadata>

@ -0,0 +1,44 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( pypy3 python3_{6..9} )
inherit distutils-r1
DESCRIPTION="Pure python memcached client"
HOMEPAGE="
https://www.tummy.com/Community/software/python-memcached/
https://pypi.org/project/python-memcached/
"
# PyPI tarballs don't contain tests
SRC_URI="https://github.com/linsomniac/python-memcached/archive/${PV}.tar.gz -> ${P}-gh.tar.gz"
LICENSE="OSL-2.0"
SLOT="0"
KEYWORDS="~amd64 ~arm64 ~ppc ~x86 ~amd64-linux ~x86-linux ~x86-macos"
RDEPEND="dev-python/six[${PYTHON_USEDEP}]"
BDEPEND="test? ( net-misc/memcached )"
distutils_enable_tests nose
python_test() {
local pidfile="${TMPDIR}/memcached.pid"
memcached -d -P "$pidfile" || die "failed to start memcached"
nosetests -v || die "Tests fail with ${EPYTHON}"
kill "$(<"$pidfile")" || die "failed to kill memcached"
local elapsed=0
while [[ -f "$pidfile" ]]; do
if [[ $elapsed -ge 30 ]]; then
kill -KILL "$(<"$pidfile")" || die "failed to kill -KILL memcached"
die "memcached failed to stop after 30 seconds"
fi
sleep 1
let elapsed++
done
}

@ -2,7 +2,8 @@
# Distributed under the terms of the GNU General Public License v2
EAPI=7
DISTUTILS_USE_SETUPTOOLS=no
# Set to 'manual' to avoid triggering install QA check
DISTUTILS_USE_SETUPTOOLS=manual
PYTHON_COMPAT=( python2_7 python3_{6,7,8,9} pypy3 )
PYTHON_REQ_USE="xml(+)"

@ -2,7 +2,8 @@
# Distributed under the terms of the GNU General Public License v2
EAPI=7
DISTUTILS_USE_SETUPTOOLS=no
# Set to 'manual' to avoid triggering install QA check
DISTUTILS_USE_SETUPTOOLS=manual
PYTHON_COMPAT=( python3_{6,7,8,9} pypy3 )
PYTHON_REQ_USE="xml(+)"

@ -0,0 +1,392 @@
From 992e09eac484f25871b7fcfc6d11b8e5beac9edb Mon Sep 17 00:00:00 2001
From: Pierre Ossman <ossman@cendio.se>
Date: Fri, 21 Aug 2020 10:50:11 +0200
Subject: [PATCH] Convert tests from mox to mock
mox is deprecated upstream in favour of mock
---
test-requirements.txt | 2 +-
tests/test_websocketproxy.py | 34 ++++------
tests/test_websockifyserver.py | 111 +++++++++++++--------------------
3 files changed, 58 insertions(+), 89 deletions(-)
diff --git a/test-requirements.txt b/test-requirements.txt
index a63a15e..8e01437 100644
--- a/test-requirements.txt
+++ b/test-requirements.txt
@@ -1,4 +1,4 @@
-mox3
+mock
nose
jwcrypto;python_version>="2.7"
redis;python_version>="2.7"
diff --git a/tests/test_websocketproxy.py b/tests/test_websocketproxy.py
index c0a8d93..d8a4916 100644
--- a/tests/test_websocketproxy.py
+++ b/tests/test_websocketproxy.py
@@ -20,10 +20,11 @@
import unittest
import unittest
import socket
+try:
+ from mock import patch
+except ImportError:
+ from unittest.mock import patch
-from mox3 import stubout
-
-from websockify import websockifyserver
from websockify import websocketproxy
from websockify import token_plugins
from websockify import auth_plugins
@@ -74,16 +75,14 @@ def __init__(self):
class ProxyRequestHandlerTestCase(unittest.TestCase):
def setUp(self):
super(ProxyRequestHandlerTestCase, self).setUp()
- self.stubs = stubout.StubOutForTesting()
self.handler = websocketproxy.ProxyRequestHandler(
FakeSocket(''), "127.0.0.1", FakeServer())
self.handler.path = "https://localhost:6080/websockify?token=blah"
self.handler.headers = None
- self.stubs.Set(websockifyserver.WebSockifyServer, 'socket',
- staticmethod(lambda *args, **kwargs: None))
+ patch('websockify.websockifyserver.WebSockifyServer.socket').start()
def tearDown(self):
- self.stubs.UnsetAll()
+ patch.stopall()
super(ProxyRequestHandlerTestCase, self).tearDown()
def test_get_target(self):
@@ -120,8 +119,7 @@ class TestPlugin(token_plugins.BasePlugin):
def lookup(self, token):
return (self.source + token).split(',')
- self.stubs.Set(websocketproxy.ProxyRequestHandler, 'send_auth_error',
- staticmethod(lambda *args, **kwargs: None))
+ patcher = patch('websockify.websocketproxy.ProxyRequestHandler.send_auth_error').start()
self.handler.server.token_plugin = TestPlugin("somehost,")
self.handler.validate_connection()
@@ -138,8 +136,7 @@ def test_asymmetric_jws_token_plugin(self):
jwt_token.make_signed_token(key)
self.handler.path = "https://localhost:6080/websockify?token={jwt_token}".format(jwt_token=jwt_token.serialize())
- self.stubs.Set(websocketproxy.ProxyRequestHandler, 'send_auth_error',
- staticmethod(lambda *args, **kwargs: None))
+ patcher = patch('websockify.websocketproxy.ProxyRequestHandler.send_auth_error').start()
self.handler.server.token_plugin = token_plugins.JWTTokenApi("./tests/fixtures/public.pem")
self.handler.validate_connection()
@@ -155,8 +152,7 @@ def test_asymmetric_jws_token_plugin_with_illigal_key_exception(self):
jwt_token.make_signed_token(key)
self.handler.path = "https://localhost:6080/websockify?token={jwt_token}".format(jwt_token=jwt_token.serialize())
- self.stubs.Set(websocketproxy.ProxyRequestHandler, 'send_auth_error',
- staticmethod(lambda *args, **kwargs: None))
+ patcher = patch('websockify.websocketproxy.ProxyRequestHandler.send_auth_error').start()
self.handler.server.token_plugin = token_plugins.JWTTokenApi("wrong.pub")
self.assertRaises(self.handler.server.EClose,
@@ -171,8 +167,7 @@ def test_symmetric_jws_token_plugin(self):
jwt_token.make_signed_token(key)
self.handler.path = "https://localhost:6080/websockify?token={jwt_token}".format(jwt_token=jwt_token.serialize())
- self.stubs.Set(websocketproxy.ProxyRequestHandler, 'send_auth_error',
- staticmethod(lambda *args, **kwargs: None))
+ patcher = patch('websockify.websocketproxy.ProxyRequestHandler.send_auth_error').start()
self.handler.server.token_plugin = token_plugins.JWTTokenApi("./tests/fixtures/symmetric.key")
self.handler.validate_connection()
@@ -188,8 +183,7 @@ def test_symmetric_jws_token_plugin_with_illigal_key_exception(self):
jwt_token.make_signed_token(key)
self.handler.path = "https://localhost:6080/websockify?token={jwt_token}".format(jwt_token=jwt_token.serialize())
- self.stubs.Set(websocketproxy.ProxyRequestHandler, 'send_auth_error',
- staticmethod(lambda *args, **kwargs: None))
+ patcher = patch('websockify.websocketproxy.ProxyRequestHandler.send_auth_error').start()
self.handler.server.token_plugin = token_plugins.JWTTokenApi("wrong_sauce")
self.assertRaises(self.handler.server.EClose,
@@ -210,8 +204,7 @@ def test_asymmetric_jwe_token_plugin(self):
self.handler.path = "https://localhost:6080/websockify?token={jwt_token}".format(jwt_token=jwe_token.serialize())
- self.stubs.Set(websocketproxy.ProxyRequestHandler, 'send_auth_error',
- staticmethod(lambda *args, **kwargs: None))
+ patcher = patch('websockify.websocketproxy.ProxyRequestHandler.send_auth_error').start()
self.handler.server.token_plugin = token_plugins.JWTTokenApi("./tests/fixtures/private.pem")
self.handler.validate_connection()
@@ -225,8 +218,7 @@ def authenticate(self, headers, target_host, target_port):
if target_host == self.source:
raise auth_plugins.AuthenticationError(response_msg="some_error")
- self.stubs.Set(websocketproxy.ProxyRequestHandler, 'send_auth_error',
- staticmethod(lambda *args, **kwargs: None))
+ patcher = patch('websockify.websocketproxy.ProxyRequestHandler.send_auth_error').start()
self.handler.server.auth_plugin = TestPlugin("somehost")
self.handler.server.target_host = "somehost"
diff --git a/tests/test_websockifyserver.py b/tests/test_websockifyserver.py
index b9312dc..a089f55 100644
--- a/tests/test_websockifyserver.py
+++ b/tests/test_websockifyserver.py
@@ -22,7 +22,10 @@
import shutil
import socket
import ssl
-from mox3 import stubout
+try:
+ from mock import patch, MagicMock, ANY
+except ImportError:
+ from unittest.mock import patch, MagicMock, ANY
import sys
import tempfile
import unittest
@@ -73,22 +76,13 @@ def makefile(self, mode='r', buffsize=None):
class WebSockifyRequestHandlerTestCase(unittest.TestCase):
def setUp(self):
super(WebSockifyRequestHandlerTestCase, self).setUp()
- self.stubs = stubout.StubOutForTesting()
self.tmpdir = tempfile.mkdtemp('-websockify-tests')
# Mock this out cause it screws tests up
- self.stubs.Set(os, 'chdir', lambda *args, **kwargs: None)
- self.stubs.Set(BaseHTTPRequestHandler, 'send_response',
- lambda *args, **kwargs: None)
-
- def fake_send_error(self, code, message=None, explain=None):
- self.last_code = code
-
- self.stubs.Set(BaseHTTPRequestHandler, 'send_error',
- fake_send_error)
+ patch('os.chdir').start()
def tearDown(self):
"""Called automatically after each test."""
- self.stubs.UnsetAll()
+ patch.stopall()
os.rmdir(self.tmpdir)
super(WebSockifyRequestHandlerTestCase, self).tearDown()
@@ -101,47 +95,36 @@ def _get_server(self, handler_class=websockifyserver.WebSockifyRequestHandler,
record=self.tmpdir, daemon=False, ssl_only=0, idle_timeout=1,
**kwargs)
- def test_normal_get_with_only_upgrade_returns_error(self):
+ @patch('websockify.websockifyserver.WebSockifyRequestHandler.send_error')
+ def test_normal_get_with_only_upgrade_returns_error(self, send_error):
server = self._get_server(web=None)
handler = websockifyserver.WebSockifyRequestHandler(
FakeSocket('GET /tmp.txt HTTP/1.1'), '127.0.0.1', server)
- def fake_send_response(self, code, message=None):
- self.last_code = code
-
- self.stubs.Set(BaseHTTPRequestHandler, 'send_response',
- fake_send_response)
-
handler.do_GET()
- self.assertEqual(handler.last_code, 405)
+ send_error.assert_called_with(405, ANY)
- def test_list_dir_with_file_only_returns_error(self):
+ @patch('websockify.websockifyserver.WebSockifyRequestHandler.send_error')
+ def test_list_dir_with_file_only_returns_error(self, send_error):
server = self._get_server(file_only=True)
handler = websockifyserver.WebSockifyRequestHandler(
FakeSocket('GET / HTTP/1.1'), '127.0.0.1', server)
- def fake_send_response(self, code, message=None):
- self.last_code = code
-
- self.stubs.Set(BaseHTTPRequestHandler, 'send_response',
- fake_send_response)
-
handler.path = '/'
handler.do_GET()
- self.assertEqual(handler.last_code, 404)
+ send_error.assert_called_with(404, ANY)
class WebSockifyServerTestCase(unittest.TestCase):
def setUp(self):
super(WebSockifyServerTestCase, self).setUp()
- self.stubs = stubout.StubOutForTesting()
self.tmpdir = tempfile.mkdtemp('-websockify-tests')
# Mock this out cause it screws tests up
- self.stubs.Set(os, 'chdir', lambda *args, **kwargs: None)
+ patch('os.chdir').start()
def tearDown(self):
"""Called automatically after each test."""
- self.stubs.UnsetAll()
+ patch.stopall()
os.rmdir(self.tmpdir)
super(WebSockifyServerTestCase, self).tearDown()
@@ -154,10 +137,10 @@ def _get_server(self, handler_class=websockifyserver.WebSockifyRequestHandler,
def test_daemonize_raises_error_while_closing_fds(self):
server = self._get_server(daemon=True, ssl_only=1, idle_timeout=1)
- self.stubs.Set(os, 'fork', lambda *args: 0)
- self.stubs.Set(signal, 'signal', lambda *args: None)
- self.stubs.Set(os, 'setsid', lambda *args: None)
- self.stubs.Set(os, 'close', raise_oserror)
+ patch('os.fork').start().return_value = 0
+ patch('signal.signal').start()
+ patch('os.setsid').start()
+ patch('os.close').start().side_effect = raise_oserror
self.assertRaises(OSError, server.daemonize, keepfd=None, chdir='./')
def test_daemonize_ignores_ebadf_error_while_closing_fds(self):
@@ -165,11 +148,11 @@ def raise_oserror_ebadf(fd):
raise OSError(errno.EBADF, 'fake error')
server = self._get_server(daemon=True, ssl_only=1, idle_timeout=1)
- self.stubs.Set(os, 'fork', lambda *args: 0)
- self.stubs.Set(os, 'setsid', lambda *args: None)
- self.stubs.Set(signal, 'signal', lambda *args: None)
- self.stubs.Set(os, 'close', raise_oserror_ebadf)
- self.stubs.Set(os, 'open', raise_oserror)
+ patch('os.fork').start().return_value = 0
+ patch('signal.signal').start()
+ patch('os.setsid').start()
+ patch('os.close').start().side_effect = raise_oserror_ebadf
+ patch('os.open').start().side_effect = raise_oserror
self.assertRaises(OSError, server.daemonize, keepfd=None, chdir='./')
def test_handshake_fails_on_not_ready(self):
@@ -178,7 +161,7 @@ def test_handshake_fails_on_not_ready(self):
def fake_select(rlist, wlist, xlist, timeout=None):
return ([], [], [])
- self.stubs.Set(select, 'select', fake_select)
+ patch('select.select').start().side_effect = fake_select
self.assertRaises(
websockifyserver.WebSockifyServer.EClose, server.do_handshake,
FakeSocket(), '127.0.0.1')
@@ -191,7 +174,7 @@ def test_empty_handshake_fails(self):
def fake_select(rlist, wlist, xlist, timeout=None):
return ([sock], [], [])
- self.stubs.Set(select, 'select', fake_select)
+ patch('select.select').start().side_effect = fake_select
self.assertRaises(
websockifyserver.WebSockifyServer.EClose, server.do_handshake,
sock, '127.0.0.1')
@@ -208,7 +191,7 @@ def test_handshake_ssl_only_without_ssl_raises_error(self):
def fake_select(rlist, wlist, xlist, timeout=None):
return ([sock], [], [])
- self.stubs.Set(select, 'select', fake_select)
+ patch('select.select').start().side_effect = fake_select
self.assertRaises(
websockifyserver.WebSockifyServer.EClose, server.do_handshake,
sock, '127.0.0.1')
@@ -230,7 +213,7 @@ def __init__(self, *args, **kwargs):
def fake_select(rlist, wlist, xlist, timeout=None):
return ([sock], [], [])
- self.stubs.Set(select, 'select', fake_select)
+ patch('select.select').start().side_effect = fake_select
self.assertEqual(server.do_handshake(sock, '127.0.0.1'), sock)
self.assertTrue(FakeHandler.CALLED, True)
@@ -251,7 +234,7 @@ def test_do_handshake_ssl_without_cert_raises_error(self):
def fake_select(rlist, wlist, xlist, timeout=None):
return ([sock], [], [])
- self.stubs.Set(select, 'select', fake_select)
+ patch('select.select').start().side_effect = fake_select
self.assertRaises(
websockifyserver.WebSockifyServer.EClose, server.do_handshake,
sock, '127.0.0.1')
@@ -280,13 +263,13 @@ def load_verify_locations(self, cafile):
def wrap_socket(self, *args, **kwargs):
raise ssl.SSLError(ssl.SSL_ERROR_EOF)
- self.stubs.Set(select, 'select', fake_select)
+ patch('select.select').start().side_effect = fake_select
if (hasattr(ssl, 'create_default_context')):
# for recent versions of python
- self.stubs.Set(ssl, 'create_default_context', fake_create_default_context)
+ patch('ssl.create_default_context').start().side_effect = fake_create_default_context
else:
# for fallback for old versions of python
- self.stubs.Set(ssl, 'wrap_socket', fake_wrap_socket)
+ patch('ssl.warp_socket').start().side_effect = fake_wrap_socket
self.assertRaises(
websockifyserver.WebSockifyServer.EClose, server.do_handshake,
sock, '127.0.0.1')
@@ -321,10 +304,10 @@ def wrap_socket(self, *args, **kwargs):
def set_ciphers(self, ciphers_to_set):
fake_create_default_context.CIPHERS = ciphers_to_set
- self.stubs.Set(select, 'select', fake_select)
+ patch('select.select').start().side_effect = fake_select
if (hasattr(ssl, 'create_default_context')):
# for recent versions of python
- self.stubs.Set(ssl, 'create_default_context', fake_create_default_context)
+ patch('ssl.create_default_context').start().side_effect = fake_create_default_context
server.do_handshake(sock, '127.0.0.1')
self.assertEqual(fake_create_default_context.CIPHERS, test_ciphers)
else:
@@ -365,10 +348,10 @@ def set_options(self, val):
fake_create_default_context.OPTIONS = val
options = property(get_options, set_options)
- self.stubs.Set(select, 'select', fake_select)
+ patch('select.select').start().side_effect = fake_select
if (hasattr(ssl, 'create_default_context')):
# for recent versions of python
- self.stubs.Set(ssl, 'create_default_context', fake_create_default_context)
+ patch('ssl.create_default_context').start().side_effect = fake_create_default_context
server.do_handshake(sock, '127.0.0.1')
self.assertEqual(fake_create_default_context.OPTIONS, test_options)
else:
@@ -387,11 +370,9 @@ def test_start_server_error(self):
def fake_select(rlist, wlist, xlist, timeout=None):
raise Exception("fake error")
- self.stubs.Set(websockifyserver.WebSockifyServer, 'socket',
- lambda *args, **kwargs: sock)
- self.stubs.Set(websockifyserver.WebSockifyServer, 'daemonize',
- lambda *args, **kwargs: None)
- self.stubs.Set(select, 'select', fake_select)
+ patch('websockify.websockifyserver.WebSockifyServer.socket').start()
+ patch('websockify.websockifyserver.WebSockifyServer.daemonize').start()
+ patch('select.select').start().side_effect = fake_select
server.start_server()
def test_start_server_keyboardinterrupt(self):
@@ -401,11 +382,9 @@ def test_start_server_keyboardinterrupt(self):
def fake_select(rlist, wlist, xlist, timeout=None):
raise KeyboardInterrupt
- self.stubs.Set(websockifyserver.WebSockifyServer, 'socket',
- lambda *args, **kwargs: sock)
- self.stubs.Set(websockifyserver.WebSockifyServer, 'daemonize',
- lambda *args, **kwargs: None)
- self.stubs.Set(select, 'select', fake_select)
+ patch('websockify.websockifyserver.WebSockifyServer.socket').start()
+ patch('websockify.websockifyserver.WebSockifyServer.daemonize').start()
+ patch('select.select').start().side_effect = fake_select
server.start_server()
def test_start_server_systemexit(self):
@@ -415,11 +394,9 @@ def test_start_server_systemexit(self):
def fake_select(rlist, wlist, xlist, timeout=None):
sys.exit()
- self.stubs.Set(websockifyserver.WebSockifyServer, 'socket',
- lambda *args, **kwargs: sock)
- self.stubs.Set(websockifyserver.WebSockifyServer, 'daemonize',
- lambda *args, **kwargs: None)
- self.stubs.Set(select, 'select', fake_select)
+ patch('websockify.websockifyserver.WebSockifyServer.socket').start()
+ patch('websockify.websockifyserver.WebSockifyServer.daemonize').start()
+ patch('select.select').start().side_effect = fake_select
server.start_server()
def test_socket_set_keepalive_options(self):

@ -0,0 +1,31 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python3_{6..9} )
# entry_points is used
DISTUTILS_USE_SETUPTOOLS=rdepend
inherit distutils-r1
SRC_URI="https://github.com/kanaka/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
DESCRIPTION="WebSockets support for any application/server"
HOMEPAGE="https://github.com/kanaka/websockify"
LICENSE="LGPL-3"
SLOT="0"
KEYWORDS="~amd64 ~arm64 ~x86"
RDEPEND="dev-python/numpy[${PYTHON_USEDEP}]"
BDEPEND="test? ( dev-python/jwcrypto[${PYTHON_USEDEP}] )"
# Backport a patch removing the need for mox3
PATCHES=( "${FILESDIR}/${P}-mock-tests.patch" )
distutils_enable_tests nose
python_install_all() {
doman docs/${PN}.1
distutils-r1_python_install_all
}

Binary file not shown.

@ -1,3 +1,2 @@
DIST qttools-everywhere-src-5.14.2.tar.xz 8815020 BLAKE2B 2535541b53cec5cc2dce1ac06ad70b145fce38642d8142f43a800a630aa2f69ad255e8f0a38c44022d14cc5b4373603026cc7c149c2435621f91a66ea0bf223d SHA512 e5b56d38acaa59511f24c817999f901510397d6e8baccc06a8fb8375f09b71dcffda4c57def4eb88d6c2782926d612b382957175a087a0c2224245051c54fe7e
DIST qttools-everywhere-src-5.15.0.tar.xz 8850752 BLAKE2B fed030b2e0bdb3bf397b28e33c1afc84c0b22bf3ede5bdf9a0822f44f8cbf6f7564d0d2c04215f79aec722deeac373d2d46cdd3d7e3d9135f9211486feaf12b0 SHA512 ebcebbc828e6a34766f2f5eeb4775d29af7b60b6124549df5256902ed2bd683721084b45a869ba76d29b1b170fe3834291af0833ab17ee8d05407c509f03d3eb
DIST qttools-everywhere-src-5.15.1.tar.xz 8901096 BLAKE2B f8927993dfc6888a1143b6a8ce09f075636600f77891edb64dd5c39bee75e2c752d3da4443c7956297c65c5b7f1103b1c6bb53b607cd054473a96adc1350e2b9 SHA512 8c7851431de8686a01fc5f85de5dcfa61b6878bd65b53ed78a8a23e57de70f2dcc1a72b4eed9a7219cfd443215a32a59a25fb929d343afcfd498517d6bcfb951

@ -1,55 +0,0 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
QT5_MODULE="qttools"
inherit desktop qt5-build xdg-utils
DESCRIPTION="Tool for viewing on-line documentation in Qt help file format"
if [[ ${QT5_BUILD_TYPE} == release ]]; then
KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc64 ~sparc ~x86"
fi
IUSE="webkit"
DEPEND="
~dev-qt/qtcore-${PV}:5=
~dev-qt/qtgui-${PV}
~dev-qt/qthelp-${PV}
~dev-qt/qtnetwork-${PV}
~dev-qt/qtprintsupport-${PV}
~dev-qt/qtsql-${PV}[sqlite]
~dev-qt/qtwidgets-${PV}
webkit? ( >=dev-qt/qtwebkit-5.9.1:5 )
"
RDEPEND="${DEPEND}"
QT5_TARGET_SUBDIRS=(
src/assistant/assistant
)
src_prepare() {
qt_use_disable_mod webkit webkitwidgets \
src/assistant/assistant/assistant.pro
qt5-build_src_prepare
}
src_install() {
qt5-build_src_install
doicon -s 32 src/assistant/assistant/images/assistant.png
newicon -s 128 src/assistant/assistant/images/assistant-128.png assistant.png
make_desktop_entry "${QT5_BINDIR}"/assistant 'Qt 5 Assistant' assistant 'Qt;Development;Documentation'
}
pkg_postinst() {
qt5-build_pkg_postinst
xdg_icon_cache_update
}
pkg_postrm() {
qt5-build_pkg_postrm
xdg_icon_cache_update
}

@ -1,3 +1,2 @@
DIST qttools-everywhere-src-5.14.2.tar.xz 8815020 BLAKE2B 2535541b53cec5cc2dce1ac06ad70b145fce38642d8142f43a800a630aa2f69ad255e8f0a38c44022d14cc5b4373603026cc7c149c2435621f91a66ea0bf223d SHA512 e5b56d38acaa59511f24c817999f901510397d6e8baccc06a8fb8375f09b71dcffda4c57def4eb88d6c2782926d612b382957175a087a0c2224245051c54fe7e
DIST qttools-everywhere-src-5.15.0.tar.xz 8850752 BLAKE2B fed030b2e0bdb3bf397b28e33c1afc84c0b22bf3ede5bdf9a0822f44f8cbf6f7564d0d2c04215f79aec722deeac373d2d46cdd3d7e3d9135f9211486feaf12b0 SHA512 ebcebbc828e6a34766f2f5eeb4775d29af7b60b6124549df5256902ed2bd683721084b45a869ba76d29b1b170fe3834291af0833ab17ee8d05407c509f03d3eb
DIST qttools-everywhere-src-5.15.1.tar.xz 8901096 BLAKE2B f8927993dfc6888a1143b6a8ce09f075636600f77891edb64dd5c39bee75e2c752d3da4443c7956297c65c5b7f1103b1c6bb53b607cd054473a96adc1350e2b9 SHA512 8c7851431de8686a01fc5f85de5dcfa61b6878bd65b53ed78a8a23e57de70f2dcc1a72b4eed9a7219cfd443215a32a59a25fb929d343afcfd498517d6bcfb951

@ -1,53 +0,0 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
QT5_MODULE="qttools"
inherit desktop qt5-build xdg-utils
DESCRIPTION="WYSIWYG tool for designing and building graphical user interfaces with QtWidgets"
if [[ ${QT5_BUILD_TYPE} == release ]]; then
KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86"
fi
IUSE="declarative webkit"
DEPEND="
~dev-qt/qtcore-${PV}:5=
~dev-qt/qtgui-${PV}:5=
~dev-qt/qtnetwork-${PV}
~dev-qt/qtprintsupport-${PV}
~dev-qt/qtwidgets-${PV}
~dev-qt/qtxml-${PV}
declarative? ( ~dev-qt/qtdeclarative-${PV}[widgets] )
webkit? ( >=dev-qt/qtwebkit-5.9.1:5 )
"
RDEPEND="${DEPEND}"
src_prepare() {
qt_use_disable_mod declarative quickwidgets \
src/designer/src/plugins/plugins.pro
qt_use_disable_mod webkit webkitwidgets \
src/designer/src/plugins/plugins.pro
qt5-build_src_prepare
}
src_install() {
qt5-build_src_install
doicon -s 128 src/designer/src/designer/images/designer.png
make_desktop_entry "${QT5_BINDIR}"/designer 'Qt 5 Designer' designer 'Qt;Development;GUIDesigner'
}
pkg_postinst() {
qt5-build_pkg_postinst
xdg_icon_cache_update
}
pkg_postrm() {
qt5-build_pkg_postrm
xdg_icon_cache_update
}

@ -1,3 +1,2 @@
DIST qttools-everywhere-src-5.14.2.tar.xz 8815020 BLAKE2B 2535541b53cec5cc2dce1ac06ad70b145fce38642d8142f43a800a630aa2f69ad255e8f0a38c44022d14cc5b4373603026cc7c149c2435621f91a66ea0bf223d SHA512 e5b56d38acaa59511f24c817999f901510397d6e8baccc06a8fb8375f09b71dcffda4c57def4eb88d6c2782926d612b382957175a087a0c2224245051c54fe7e
DIST qttools-everywhere-src-5.15.0.tar.xz 8850752 BLAKE2B fed030b2e0bdb3bf397b28e33c1afc84c0b22bf3ede5bdf9a0822f44f8cbf6f7564d0d2c04215f79aec722deeac373d2d46cdd3d7e3d9135f9211486feaf12b0 SHA512 ebcebbc828e6a34766f2f5eeb4775d29af7b60b6124549df5256902ed2bd683721084b45a869ba76d29b1b170fe3834291af0833ab17ee8d05407c509f03d3eb
DIST qttools-everywhere-src-5.15.1.tar.xz 8901096 BLAKE2B f8927993dfc6888a1143b6a8ce09f075636600f77891edb64dd5c39bee75e2c752d3da4443c7956297c65c5b7f1103b1c6bb53b607cd054473a96adc1350e2b9 SHA512 8c7851431de8686a01fc5f85de5dcfa61b6878bd65b53ed78a8a23e57de70f2dcc1a72b4eed9a7219cfd443215a32a59a25fb929d343afcfd498517d6bcfb951

@ -1,45 +0,0 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
QT5_MODULE="qttools"
inherit qt5-build
DESCRIPTION="Tools for working with Qt translation data files"
if [[ ${QT5_BUILD_TYPE} == release ]]; then
KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc ~x86"
fi
IUSE="qml"
DEPEND="
~dev-qt/qtcore-${PV}:5=
~dev-qt/qtxml-${PV}
qml? ( ~dev-qt/qtdeclarative-${PV} )
"
RDEPEND="${DEPEND}"
QT5_TARGET_SUBDIRS=(
src/linguist
)
src_prepare() {
sed -i -e '/SUBDIRS += linguist/d' \
src/linguist/linguist.pro || die
qt_use_disable_mod qml qmldevtools-private \
src/linguist/lupdate/lupdate.pro
qt5-build_src_prepare
}
src_configure() {
# Most of qttools require files that are only generated when qmake is
# run in the root directory.
# Related bugs: 633776, 676948, and 716514.
mkdir -p "${QT5_BUILD_DIR}" || die
qt5_qmake "${QT_BUILD_DIR}"
cp "${S}"/qttools-config.pri "${QT5_BUILD_DIR}" || die
qt5-build_src_configure
}

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

Loading…
Cancel
Save