Sync with portage [Mon Apr 9 09:35:29 MSK 2018].

mhiretskiy 1115
root 6 years ago
parent 6db0f6854f
commit 905560bdd7

Binary file not shown.

Binary file not shown.

@ -1,55 +0,0 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=5
inherit eutils toolchain-funcs
DESCRIPTION="Backup/restore for subversion backends"
HOMEPAGE="http://fsvs.tigris.org/"
SRC_URI="http://download.fsvs-software.org/${P}.tar.bz2"
LICENSE="GPL-3"
SLOT="0"
KEYWORDS="~amd64 ~x86"
RDEPEND="dev-vcs/subversion
dev-libs/libpcre
sys-libs/gdbm
dev-libs/apr-util
dev-util/ctags"
DEPEND="${RDEPEND}"
src_prepare() {
epatch "${FILESDIR}/${P}-as-needed.patch"
epatch_user
}
src_compile() {
# respect compiler
emake CC="$(tc-getCC)"
}
src_install() {
dobin src/fsvs
dodir /etc/fsvs
keepdir /var/spool/fsvs
doman doc/*5 doc/*1
dodoc doc/{FAQ,IGNORING,PERFORMANCE,USAGE}
}
pkg_postinst() {
elog "Remember, this system works best when you're connecting to a remote"
elog "svn server."
elog
elog "Go to the base path for versioning:"
elog " cd /"
elog "Tell fsvs which URL it should use:"
elog " fsvs url svn+ssh://username@machine/path/to/repos"
elog "Define ignore patterns - all virtual filesystems (/proc, /sys, etc.),"
elog "and (assuming that you're in / currently) the temporary files in /tmp:"
elog " fsvs ignore DEVICE:0 ./tmp/*"
elog "And you're ready to play!"
elog "Check your data in:"
elog " fsvs commit -m \"First import\""
}

@ -1,5 +1,5 @@
--- localepurge.orig 2012-12-04 23:15:29.422756767 +0100
+++ localepurge 2012-12-04 23:16:13.313756491 +0100
--- a/localepurge
+++ b/localepurge
@@ -198,7 +198,7 @@
if [ "$SHOWFREEDSPACE" = "enabled" ]; then

@ -1,5 +1,5 @@
--- localepurge.original 2012-12-02 18:32:35.000000000 +0400
+++ localepurge 2013-01-14 19:31:35.327821252 +0400
--- a/localepurge
+++ b/localepurge
@@ -254,7 +254,7 @@
# Calculating and reporting total disk space freed:

@ -1,5 +1,5 @@
--- localepurge.orig 2012-12-04 23:08:17.754765708 +0100
+++ localepurge 2012-12-04 23:09:02.397765264 +0100
--- a/localepurge
+++ b/localepurge
@@ -165,7 +165,14 @@
${ACTION} `find ${REMOVEPATH} -type f -o -type l`

@ -1,5 +1,5 @@
--- localepurge.orig 2012-12-02 19:56:18.000000000 +0100
+++ localepurge 2012-12-02 20:00:38.000000000 +0100
--- a/localepurge
+++ b/localepurge
@@ -1,14 +1,14 @@
-#!/bin/bash
+#!@GENTOO_PORTAGE_EPREFIX@/bin/bash

@ -1,9 +1,9 @@
# Copyright 1999-2017 Gentoo Foundation
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=4
EAPI=6
inherit eutils prefix
inherit prefix
DESCRIPTION="Script to recover diskspace on unneeded locale files & localized man pages"
HOMEPAGE="https://gentoo.org
@ -20,14 +20,15 @@ RDEPEND="app-shells/bash"
S=${WORKDIR}/${PN}
PATCHES=(
"${FILESDIR}"/${PN}-0.5.4-prefix.patch
"${FILESDIR}"/${PN}-0.5.4-directorysum.patch # 164544
"${FILESDIR}"/${PN}-0.5.4-parentdir.patch #445910
"${FILESDIR}"/${PN}-0.5.4-evaltotal.patch #452208
)
src_prepare() {
epatch "${FILESDIR}"/${P}-prefix.patch
# 164544
epatch "${FILESDIR}"/${P}-directorysum.patch
# 445910
epatch "${FILESDIR}"/${P}-parentdir.patch
# 452208
epatch "${FILESDIR}"/${P}-evaltotal.patch
default
eprefixify ${PN}
}

@ -11,7 +11,7 @@ SRC_URI="https://github.com/${PN}/${PN}/releases/download/${PV}/${P}.tar.gz -> $
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
IUSE="acl +cron selinux"
CDEPEND="

@ -14,7 +14,7 @@ SRC_URI="https://github.com/balabit/syslog-ng/releases/download/${P}/${P}.tar.gz
LICENSE="GPL-2+ LGPL-2.1+"
SLOT="0"
KEYWORDS="amd64 ia64 sparc x86"
KEYWORDS="amd64 hppa ia64 sparc x86"
IUSE="amqp caps dbi geoip http ipv6 json libressl mongodb pacct python redis smtp spoof-source systemd tcpd"
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
RESTRICT="test"
@ -59,7 +59,7 @@ src_prepare() {
use python && python_fix_shebang .
# remove bundled libs
rm -rv lib/ivykis modules/afmongodb/mongo-c-driver modules/afamqp/rabbitmq-c || die
rm -r lib/ivykis modules/afmongodb/mongo-c-driver modules/afamqp/rabbitmq-c || die
# drop scl modules requiring json
if use !json; then

@ -14,7 +14,7 @@ SRC_URI="https://github.com/balabit/syslog-ng/releases/download/${P}/${P}.tar.gz
LICENSE="GPL-2+ LGPL-2.1+"
SLOT="0"
KEYWORDS="~amd64 ~ia64 ~ppc ~ppc64 ~sparc ~x86"
KEYWORDS="~amd64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
IUSE="amqp caps dbi geoip http ipv6 json libressl mongodb pacct python redis smtp spoof-source systemd tcpd"
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
RESTRICT="test"
@ -64,7 +64,7 @@ src_prepare() {
use python && python_fix_shebang .
# remove bundled libs
rm -rv lib/ivykis modules/afmongodb/mongo-c-driver modules/afamqp/rabbitmq-c || die
rm -r lib/ivykis modules/afmongodb/mongo-c-driver modules/afamqp/rabbitmq-c || die
# drop scl modules requiring json
if use !json; then

Binary file not shown.

@ -11,7 +11,7 @@ SRC_URI="https://www.clamav.net/downloads/production/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="alpha amd64 ~arm ~hppa ia64 ~ppc ~ppc64 ~sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~sparc-solaris ~x86-solaris"
KEYWORDS="alpha amd64 ~arm ~hppa ia64 ~ppc ppc64 ~sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~sparc-solaris ~x86-solaris"
IUSE="bzip2 clamdtop iconv ipv6 libressl milter metadata-analysis-api selinux static-libs test uclibc"
CDEPEND="bzip2? ( app-arch/bzip2 )

Binary file not shown.

@ -9,7 +9,7 @@ SRC_URI="http://www.lzop.org/download/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="amd64 ~arm ~arm64 ~hppa ia64 ~mips ppc ppc64 sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~sparc-solaris ~x86-solaris"
KEYWORDS="amd64 ~arm ~arm64 hppa ia64 ~mips ppc ppc64 sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~sparc-solaris ~x86-solaris"
IUSE=""
RDEPEND=">=dev-libs/lzo-2"

@ -13,7 +13,7 @@ SRC_URI="mirror://debian/pool/non-free/u/unace-nonfree/unace-nonfree_${PV}.orig.
LICENSE="freedist"
SLOT="1"
KEYWORDS="alpha amd64 arm ~hppa ppc ppc64 ~s390 x86 ~amd64-linux ~x86-linux ~sparc-solaris"
KEYWORDS="alpha amd64 arm hppa ppc ppc64 ~s390 x86 ~amd64-linux ~x86-linux ~sparc-solaris"
IUSE=""
PATCHES=( "${WORKDIR}"/debian/patches/ )

@ -11,7 +11,7 @@ SRC_URI="https://github.com/ib/xarchiver/archive/${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux"
KEYWORDS="~alpha amd64 ~arm ~hppa ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux"
IUSE="doc"
RDEPEND=">=dev-libs/glib-2:=

Binary file not shown.

@ -1,33 +0,0 @@
# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=5
inherit eutils
DESCRIPTION="Measure the read time per sector on CD or DVD to check the quality"
HOMEPAGE="http://swaj.net/unix/index.html#cdck"
SRC_URI="http://swaj.net/unix/cdck/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE=""
src_prepare() {
sed -e '1d' -i man/cdck_man.in || die "sed failed"
}
src_configure() {
econf --disable-dependency-tracking \
--disable-shared || die "econf failed."
}
src_compile() {
emake -j1 || die "emake failed."
}
src_install() {
dobin src/cdck || die "dobin failed."
doman man/cdck.1
dodoc AUTHORS ChangeLog NEWS README THANKS TODO
}

Binary file not shown.

@ -1,23 +0,0 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=5
inherit autotools eutils
DESCRIPTION="ncurses based password database client compatible with KeePass 1.x databases"
HOMEPAGE="http://ckpass.sourceforge.net/"
SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
LICENSE="GPL-3"
SLOT="0"
KEYWORDS="~amd64"
DEPEND=">=dev-libs/libkpass-6"
RDEPEND="${DEPEND}"
src_prepare() {
epatch "${FILESDIR}"/${P}-tinfo.patch
eautoreconf
}
DOCS=( AUTHORS )

@ -14,7 +14,7 @@ SRC_URI="https://web.mit.edu/kerberos/dist/krb5/${P_DIR}/${MY_P}.tar.gz"
LICENSE="openafs-krb5-a BSD MIT OPENLDAP BSD-2 HPND BSD-4 ISC RSA CC-BY-SA-3.0 || ( BSD-2 GPL-2+ )"
SLOT="0"
KEYWORDS="alpha amd64 ~arm ~arm64 ~hppa ia64 ~mips ppc ppc64 ~s390 ~sh ~sparc x86"
KEYWORDS="alpha amd64 arm ~arm64 ~hppa ia64 ~mips ppc ppc64 ~s390 ~sh ~sparc x86"
IUSE="doc +keyutils libressl nls openldap +pkinit selinux +threads test xinetd"
# Test suite require network access

Binary file not shown.

@ -1,4 +1,4 @@
# Copyright 1999-2017 Gentoo Foundation
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
@ -10,7 +10,7 @@ SRC_URI="https://dev.gentoo.org/~ulm/emacs/${P}.tar.xz"
LICENSE="FDL-1.3+"
SLOT="25"
KEYWORDS="~amd64 ~ppc ~x86 ~x86-fbsd"
KEYWORDS="amd64 ppc x86 ~x86-fbsd"
DEPEND="sys-apps/texinfo"

@ -1,7 +1,7 @@
# Copyright 1999-2017 Gentoo Foundation
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI="6"
EAPI=6
PYTHON_COMPAT=( python2_7 )
inherit python-any-r1
@ -16,6 +16,7 @@ KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd"
IUSE=""
DEPEND="${PYTHON_DEPS}
$(python_gen_any_dep 'dev-libs/libxml2[python,${PYTHON_USEDEP}]')
dev-libs/libxslt
sys-devel/gettext
"

@ -1,23 +0,0 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
DESCRIPTION="A compendium of hacker slang illuminating many aspects of hackish tradition"
HOMEPAGE="http://www.catb.org/~esr/jargon"
SRC_URI="http://www.catb.org/~esr/jargon/${P}.tar.gz"
LICENSE="public-domain"
SLOT="0"
KEYWORDS="alpha amd64 hppa ia64 ~mips ppc ppc64 sparc x86"
IUSE=""
src_unpack() {
unpack ${A}
find "${S}" -name .xvpics | xargs rm -rf
cd "${S}/html"
sed -i -e 's#\.\./\.\.#..#' */* \
|| die "sed failed"
}
src_install() {
dohtml -r html/* || die "dohtml failed"
}

@ -9,7 +9,7 @@ SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
LICENSE="BSD"
SLOT="0"
KEYWORDS="~alpha amd64 ~hppa ia64 ~ppc sparc x86"
KEYWORDS="~alpha amd64 ~hppa ia64 ppc sparc x86"
IUSE=""
RDEPEND=""

Binary file not shown.

@ -1,7 +1,4 @@
DIST vim-8.0.0106-gentoo-patches.tar.bz2 2281 BLAKE2B 8e10c0c56ad97cbae0677ec91b0b35359f6e08b5eb542b00028fd0e243a075551adab4e140a90930cbce4549c3c4bc79a40c0e1a6c13aae18f67d6fc55a80e0e SHA512 39edd9f518c230d2b0486b18aa155572a9eada4a5e21108573d6e66e2eef1276f23b77d766648f018c9cf973a7d03712d8861be6ea13255d7b389912d554a47a
DIST vim-8.0.0386.tar.gz 13000882 BLAKE2B c38c1b75334cae916f76562ec5a06d59c4f2df6123d4b27a0a854dd8ecd9ae6f5d008a94137abe6217fc28d233077d636d30f2c26a5a139ff35f50cb52204f79 SHA512 3169ea4dbc836c724f63d99cd345227f870a3a922beba84a6b42011685c0dd209f6bba8c69af0650c9a57bb47fc541e1150ca8cefb21fcada022259bf4c94a66
DIST vim-8.0.0938-gentoo-patches.tar.bz2 2316 BLAKE2B 05a87f32fc5cc65e7f5e4e5a87c654b2040ad39f1555ddde7e0e6f473dc8b520916a795406bb6bbeaf5e7ae8748aacebe7a9679461e48802e69417e945eea827 SHA512 a6062be5e6a5c5b437081312df5742353242b5171bf26da04aa6ca216d2b142b2411a88bc1edd460d28e00a59a210c8e1729e801fac6f1efd86bb2e437a56a2b
DIST vim-8.0.1188.tar.gz 13363260 BLAKE2B 545b2d6e8322b27967c974bb960f4e5ea2c6811d2649ac4c008eb8e6af78fe555a035657704af40026f96f12f83e3cebe435e90d21d7da87980446710424f79f SHA512 9c3733aa894c276de593d6144ee0aaf251092a11f4d0ac603d3d49a282ac6176aa4e88eccfd2527ff53b386bdd0177a85c0942367d68a652b5ca4040390ba49b
DIST vim-8.0.1298.tar.gz 13395459 BLAKE2B 4b6e3c4443cd675dc3727e8609b89c422f66c7d32908b5136ee312d48427568a8236214c85135242269b6575e0e1336b0973395a6372664435f8bae4d7bee843 SHA512 7704c493359c1a922f876e4d6f3b4ad265d8ce974a59d51a39e5a4424251105250ffc803bcf6c6750daeb5e6376cbbfd24557b075eacf2b0274d7c432db2f681
DIST vim-8.0.1428.tar.gz 13415243 BLAKE2B 88f86c371d0a644212b9e4dc1a15d61244847037f36262a225c361bfc2799b741c128de21ac92bb3fb4a4955894e46d34dc01baa7cbf58f1371d772b36887103 SHA512 f635c53c7e2ca808dc1cb424e6e4b16d8c41c66a86c3c7584444dab3d2482904795fea7c071d65862ae6ac6b2b66b7ad5ac832e1e30f4624d46f220c6f41e2e9
DIST vim-8.0.1645.tar.gz 13535252 BLAKE2B a5c7463e85eed12825bdf46d15eb7e7513d62831eba76cbb90af875010b33662b7a6ef2c4c5cecddface415d75e97caf0a670e69835ecd3b4a89704f3b18b905 SHA512 367b9e205e776f84fcfbb92725afd5e7aa66898110d46dbea1a33f7b74c239559e829b5104c45360539c8f2b23c375ed59ccea7ee35a5dd10770400d9a7be085

@ -1,407 +0,0 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
VIM_VERSION="8.0"
PYTHON_COMPAT=( python{2_7,3_4,3_5,3_6} )
PYTHON_REQ_USE=threads
inherit eutils vim-doc flag-o-matic fdo-mime gnome2-utils versionator bash-completion-r1 prefix python-r1
if [[ ${PV} == 9999* ]] ; then
inherit git-r3
EGIT_REPO_URI="https://github.com/vim/vim.git"
EGIT_CHECKOUT_DIR=${WORKDIR}/vim-${PV}
else
SRC_URI="https://github.com/vim/vim/archive/v${PV}.tar.gz -> vim-${PV}.tar.gz
https://dev.gentoo.org/~radhermit/vim/vim-8.0.0106-gentoo-patches.tar.bz2"
KEYWORDS="alpha amd64 arm hppa ia64 ppc ppc64 sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~x86-solaris"
fi
DESCRIPTION="GUI version of the Vim text editor"
HOMEPAGE="http://www.vim.org/ https://github.com/vim/vim"
SLOT="0"
LICENSE="vim"
IUSE="acl aqua cscope debug gnome gtk gtk3 lua luajit motif neXt netbeans nls perl python racket ruby selinux session tcl"
REQUIRED_USE="
luajit? ( lua )
python? (
|| ( $(python_gen_useflags '*') )
?? ( $(python_gen_useflags 'python2*') )
?? ( $(python_gen_useflags 'python3*') )
)
"
RDEPEND="
~app-editors/vim-core-${PV}
>=app-eselect/eselect-vi-1.1
>=sys-libs/ncurses-5.2-r2:0=
x11-libs/libICE
x11-libs/libSM
x11-libs/libXext
x11-libs/libXt
acl? ( kernel_linux? ( sys-apps/acl ) )
!aqua? (
gtk3? (
x11-libs/gtk+:3
x11-libs/libXft
)
!gtk3? (
gtk? (
>=x11-libs/gtk+-2.6:2
x11-libs/libXft
gnome? ( >=gnome-base/libgnomeui-2.6 )
)
!gtk? (
motif? ( >=x11-libs/motif-2.3:0 )
!motif? (
neXt? ( x11-libs/neXtaw )
!neXt? ( x11-libs/libXaw )
)
)
)
)
cscope? ( dev-util/cscope )
lua? (
luajit? ( dev-lang/luajit:2= )
!luajit? ( dev-lang/lua:0[deprecated] )
)
nls? ( virtual/libintl )
perl? ( dev-lang/perl:= )
python? ( ${PYTHON_DEPS} )
racket? ( dev-scheme/racket )
ruby? ( || ( dev-lang/ruby:2.4 dev-lang/ruby:2.3 dev-lang/ruby:2.2 dev-lang/ruby:2.1 ) )
selinux? ( sys-libs/libselinux )
session? ( x11-libs/libSM )
tcl? ( dev-lang/tcl:0= )
"
DEPEND="${RDEPEND}
dev-util/ctags
sys-devel/autoconf
virtual/pkgconfig
nls? ( sys-devel/gettext )
"
S=${WORKDIR}/vim-${PV}
pkg_setup() {
# people with broken alphabets run into trouble. bug 82186.
unset LANG LC_ALL
export LC_COLLATE="C"
# Gnome sandbox silliness. bug #114475.
mkdir -p "${T}"/home
export HOME="${T}"/home
}
src_prepare() {
if [[ ${PV} != 9999* ]] ; then
# Gentoo patches to fix runtime issues, cross-compile errors, etc
eapply "${WORKDIR}"/patches/
fi
# Fixup a script to use awk instead of nawk
sed -i '1s|.*|#!'"${EPREFIX}"'/usr/bin/awk -f|' "${S}"/runtime/tools/mve.awk \
|| die "mve.awk sed failed"
# Read vimrc and gvimrc from /etc/vim
echo '#define SYS_VIMRC_FILE "'${EPREFIX}'/etc/vim/vimrc"' >> "${S}"/src/feature.h
echo '#define SYS_GVIMRC_FILE "'${EPREFIX}'/etc/vim/gvimrc"' >> "${S}"/src/feature.h
# Use exuberant ctags which installs as /usr/bin/exuberant-ctags.
# Hopefully this pattern won't break for a while at least.
# This fixes bug 29398 (27 Sep 2003 agriffis)
sed -i 's/\<ctags\("\| [-*.]\)/exuberant-&/g' \
"${S}"/runtime/doc/syntax.txt \
"${S}"/runtime/doc/tagsrch.txt \
"${S}"/runtime/doc/usr_29.txt \
"${S}"/runtime/menu.vim \
"${S}"/src/configure.ac || die 'sed failed'
# Don't be fooled by /usr/include/libc.h. When found, vim thinks
# this is NeXT, but it's actually just a file in dev-libs/9libs
# This fixes bug 43885 (20 Mar 2004 agriffis)
sed -i 's/ libc\.h / /' "${S}"/src/configure.ac || die 'sed failed'
# gcc on sparc32 has this, uhm, interesting problem with detecting EOF
# correctly. To avoid some really entertaining error messages about stuff
# which isn't even in the source file being invalid, we'll do some trickery
# to make the error never occur. bug 66162 (02 October 2004 ciaranm)
find "${S}" -name '*.c' | while read c ; do echo >> "$c" ; done
# Try to avoid sandbox problems. Bug #114475.
if [[ -d "${S}"/src/po ]] ; then
sed -i '/-S check.vim/s,..VIM.,ln -s $(VIM) testvim \; ./testvim -X,' \
"${S}"/src/po/Makefile
fi
if version_is_at_least 7.3.122 ; then
cp "${S}"/src/config.mk.dist "${S}"/src/auto/config.mk
fi
# Bug #378107 - Build properly with >=perl-core/ExtUtils-ParseXS-3.20.0
if version_is_at_least 7.3 ; then
sed -i "s:\\\$(PERLLIB)/ExtUtils/xsubpp:${EPREFIX}/usr/bin/xsubpp:" \
"${S}"/src/Makefile || die 'sed for ExtUtils-ParseXS failed'
fi
eapply_user
}
src_configure() {
local myconf=()
# Fix bug 37354: Disallow -funroll-all-loops on amd64
# Bug 57859 suggests that we want to do this for all archs
filter-flags -funroll-all-loops
# Fix bug 76331: -O3 causes problems, use -O2 instead. We'll do this for
# everyone since previous flag filtering bugs have turned out to affect
# multiple archs...
replace-flags -O3 -O2
# Fix bug 18245: Prevent "make" from the following chain:
# (1) Notice configure.ac is newer than auto/configure
# (2) Rebuild auto/configure
# (3) Notice auto/configure is newer than auto/config.mk
# (4) Run ./configure (with wrong args) to remake auto/config.mk
sed -i 's# auto/config\.mk:#:#' src/Makefile || die "Makefile sed failed"
rm -f src/auto/configure
emake -j1 -C src autoconf
# This should fix a sandbox violation (see bug 24447). The hvc
# things are for ppc64, see bug 86433.
for file in /dev/pty/s* /dev/console /dev/hvc/* /dev/hvc* ; do
[[ -e ${file} ]] && addwrite $file
done
use debug && append-flags "-DDEBUG"
myconf=(
--with-features=huge
--disable-gpm
--enable-multibyte
$(use_enable acl)
$(use_enable cscope)
$(use_enable lua luainterp)
$(use_with luajit)
$(use_enable netbeans)
$(use_enable nls)
$(use_enable perl perlinterp)
$(use_enable racket mzschemeinterp)
$(use_enable ruby rubyinterp)
$(use_enable selinux)
$(use_enable session xsmp)
$(use_enable tcl tclinterp)
)
if use python ; then
py_add_interp() {
local v
[[ ${EPYTHON} == python3* ]] && v=3
myconf+=(
--enable-python${v}interp
vi_cv_path_python${v}="${PYTHON}"
)
}
python_foreach_impl py_add_interp
else
myconf+=(
--disable-pythoninterp
--disable-python3interp
)
fi
# --with-features=huge forces on cscope even if we --disable it. We need
# to sed this out to avoid screwiness. (1 Sep 2004 ciaranm)
if ! use cscope ; then
sed -i '/# define FEAT_CSCOPE/d' src/feature.h || \
die "couldn't disable cscope"
fi
# gvim's GUI preference order is as follows:
# aqua CARBON (not tested)
# -aqua gtk3 GTK3
# -aqua -gtk3 gnome GNOME2
# -aqua -gtk3 -gnome gtk GTK2
# -aqua -gtk -gtk3 motif MOTIF
# -aqua -gtk -gtk3 -motif neXt NEXTAW
# -aqua -gtk -gtk3 -motif -neXt ATHENA
echo ; echo
if use aqua ; then
einfo "Building gvim with the Carbon GUI"
myconf+=(
--enable-darwin
--enable-gui=carbon
)
elif use gtk3 ; then
myconf+=( --enable-gtk3-check )
einfo "Building gvim with the gtk+-3 GUI"
myconf+=( --enable-gui=gtk3 )
elif use gtk ; then
myconf+=( --enable-gtk2-check )
if use gnome ; then
einfo "Building gvim with the Gnome 2 GUI"
myconf+=( --enable-gui=gnome2 )
else
einfo "Building gvim with the gtk+-2 GUI"
myconf+=( --enable-gui=gtk2 )
fi
elif use motif ; then
einfo "Building gvim with the MOTIF GUI"
myconf+=( --enable-gui=motif )
elif use neXt ; then
einfo "Building gvim with the neXtaw GUI"
myconf+=( --enable-gui=nextaw )
else
einfo "Building gvim with the Athena GUI"
myconf+=( --enable-gui=athena )
fi
echo ; echo
# let package manager strip binaries
export ac_cv_prog_STRIP="$(type -P true ) faking strip"
# keep prefix env contained within the EPREFIX
use prefix && myconf+=( --without-local-dir )
if [[ ${CHOST} == *-interix* ]]; then
# avoid finding of this function, to avoid having to patch either
# configure or the source, which would be much more hackish.
# after all vim does it right, only interix is badly broken (again)
export ac_cv_func_sigaction=no
fi
econf \
--with-modified-by=Gentoo-${PVR} \
--with-vim-name=gvim \
--with-x \
"${myconf[@]}"
}
src_compile() {
# The following allows emake to be used
emake -j1 -C src auto/osdef.h objects
emake
}
src_test() {
echo
einfo "Starting vim tests. Several error messages will be shown"
einfo "while the tests run. This is normal behaviour and does not"
einfo "indicate a fault."
echo
ewarn "If the tests fail, your terminal may be left in a strange"
ewarn "state. Usually, running 'reset' will fix this."
echo
# Don't let vim talk to X
unset DISPLAY
# Make gvim not try to connect to X. See :help gui-x11-start in vim for how
# this evil trickery works.
ln -s "${S}"/src/gvim "${S}"/src/testvim || die
# Make sure our VIMPROG is used.
sed -i 's:\.\./vim:../testvim:' src/testdir/test49.vim || die
# Don't do additional GUI tests.
emake -j1 VIMPROG=../testvim -C src/testdir nongui
}
# Make convenience symlinks, hopefully without stepping on toes. Some
# of these links are "owned" by the vim ebuild when it is installed,
# but they might be good for gvim as well (see bug 45828)
update_vim_symlinks() {
local f syms
syms="vimdiff rvim rview"
einfo "Calling eselect vi update..."
# Call this with --if-unset to respect user's choice (bug 187449)
eselect vi update --if-unset
# Make or remove convenience symlink, vim -> gvim
if [[ -f "${EROOT}"/usr/bin/gvim ]]; then
ln -s gvim "${EROOT}"/usr/bin/vim 2>/dev/null
elif [[ -L "${EROOT}"/usr/bin/vim && ! -f "${EROOT}"/usr/bin/vim ]]; then
rm "${EROOT}"/usr/bin/vim
fi
# Make or remove convenience symlinks to vim
if [[ -f "${EROOT}"/usr/bin/vim ]]; then
for f in ${syms}; do
ln -s vim "${EROOT}"/usr/bin/${f} 2>/dev/null
done
else
for f in ${syms}; do
if [[ -L "${EROOT}"/usr/bin/${f} && ! -f "${EROOT}"/usr/bin/${f} ]]; then
rm -f "${EROOT}"/usr/bin/${f}
fi
done
fi
# This will still break if you merge then remove the vi package,
# but there's only so much you can do, eh? Unfortunately we don't
# have triggers like are done in rpm-land.
}
src_install() {
local vimfiles=/usr/share/vim/vim${VIM_VERSION/.}
dobin src/gvim
dosym gvim /usr/bin/gvimdiff
dosym gvim /usr/bin/evim
dosym gvim /usr/bin/eview
dosym gvim /usr/bin/gview
dosym gvim /usr/bin/rgvim
dosym gvim /usr/bin/rgview
emake -C src DESTDIR="${D}" DATADIR="${EPREFIX}"/usr/share install-icons
dodir /usr/share/man/man1
echo ".so vim.1" > "${ED}"/usr/share/man/man1/gvim.1
echo ".so vim.1" > "${ED}"/usr/share/man/man1/gview.1
echo ".so vimdiff.1" > "${ED}"/usr/share/man/man1/gvimdiff.1
insinto /etc/vim
newins "${FILESDIR}"/gvimrc-r1 gvimrc
eprefixify "${ED}"/etc/vim/gvimrc
doicon -s scalable "${FILESDIR}"/gvim.svg
# bash completion script, bug #79018.
newbashcomp "${FILESDIR}"/${PN}-completion ${PN}
# don't install vim desktop file
rm "${ED}"/usr/share/applications/vim.desktop || die "failed to remove vim.desktop"
}
pkg_postinst() {
# Update documentation tags (from vim-doc.eclass)
update_vim_helptags
# Update fdo mime stuff, bug #78394
fdo-mime_desktop_database_update
# Update icon cache
gnome2_icon_cache_update
# Make convenience symlinks
update_vim_symlinks
}
pkg_postrm() {
# Update documentation tags (from vim-doc.eclass)
update_vim_helptags
# Update fdo mime stuff, bug #78394
fdo-mime_desktop_database_update
# Update icon cache
gnome2_icon_cache_update
# Make convenience symlinks
update_vim_symlinks
}

@ -1,371 +0,0 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
VIM_VERSION="8.0"
PYTHON_COMPAT=( python{2_7,3_4,3_5,3_6} )
PYTHON_REQ_USE=threads
inherit vim-doc flag-o-matic xdg-utils gnome2-utils versionator bash-completion-r1 prefix python-single-r1
if [[ ${PV} == 9999* ]]; then
inherit git-r3
EGIT_REPO_URI="https://github.com/vim/vim.git"
EGIT_CHECKOUT_DIR=${WORKDIR}/vim-${PV}
else
SRC_URI="https://github.com/vim/vim/archive/v${PV}.tar.gz -> vim-${PV}.tar.gz
https://dev.gentoo.org/~radhermit/vim/vim-8.0.0938-gentoo-patches.tar.bz2"
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~x86-solaris"
fi
DESCRIPTION="GUI version of the Vim text editor"
HOMEPAGE="https://vim.sourceforge.io/ https://github.com/vim/vim"
SLOT="0"
LICENSE="vim"
IUSE="acl aqua cscope debug gnome gtk gtk3 lua luajit motif neXt netbeans nls perl python racket ruby selinux session tcl"
REQUIRED_USE="
luajit? ( lua )
python? ( ${PYTHON_REQUIRED_USE} )
"
RDEPEND="
~app-editors/vim-core-${PV}
>=app-eselect/eselect-vi-1.1
>=sys-libs/ncurses-5.2-r2:0=
x11-libs/libICE
x11-libs/libSM
x11-libs/libXext
x11-libs/libXt
acl? ( kernel_linux? ( sys-apps/acl ) )
!aqua? (
gtk3? (
x11-libs/gtk+:3
x11-libs/libXft
)
!gtk3? (
gtk? (
>=x11-libs/gtk+-2.6:2
x11-libs/libXft
gnome? ( >=gnome-base/libgnomeui-2.6 )
)
!gtk? (
motif? ( >=x11-libs/motif-2.3:0 )
!motif? (
neXt? ( x11-libs/neXtaw )
!neXt? ( x11-libs/libXaw )
)
)
)
)
cscope? ( dev-util/cscope )
lua? (
luajit? ( dev-lang/luajit:2= )
!luajit? ( dev-lang/lua:0[deprecated] )
)
nls? ( virtual/libintl )
perl? ( dev-lang/perl:= )
python? ( ${PYTHON_DEPS} )
racket? ( dev-scheme/racket )
ruby? ( || ( dev-lang/ruby:2.4 dev-lang/ruby:2.3 dev-lang/ruby:2.2 ) )
selinux? ( sys-libs/libselinux )
session? ( x11-libs/libSM )
tcl? ( dev-lang/tcl:0= )
"
DEPEND="${RDEPEND}
dev-util/ctags
sys-devel/autoconf
virtual/pkgconfig
nls? ( sys-devel/gettext )
"
S=${WORKDIR}/vim-${PV}
pkg_setup() {
# people with broken alphabets run into trouble. bug 82186.
unset LANG LC_ALL
export LC_COLLATE="C"
# Gnome sandbox silliness. bug #114475.
mkdir -p "${T}"/home || die
export HOME="${T}"/home
use python && python-single-r1_pkg_setup
}
src_prepare() {
if [[ ${PV} != 9999* ]]; then
# Gentoo patches to fix runtime issues, cross-compile errors, etc
eapply "${WORKDIR}"/patches/
fi
# Fixup a script to use awk instead of nawk
sed -i -e \
'1s|.*|#!'"${EPREFIX}"'/usr/bin/awk -f|' \
"${S}"/runtime/tools/mve.awk || die "mve.awk sed failed"
# Read vimrc and gvimrc from /etc/vim
echo '#define SYS_VIMRC_FILE "'${EPREFIX}'/etc/vim/vimrc"' \
>> "${S}"/src/feature.h || die "echo failed"
echo '#define SYS_GVIMRC_FILE "'${EPREFIX}'/etc/vim/gvimrc"' \
>> "${S}"/src/feature.h || die "echo failed"
# Use exuberant ctags which installs as /usr/bin/exuberant-ctags.
# Hopefully this pattern won't break for a while at least.
# This fixes bug 29398 (27 Sep 2003 agriffis)
sed -i -e \
's/\<ctags\("\| [-*.]\)/exuberant-&/g' \
"${S}"/runtime/doc/syntax.txt \
"${S}"/runtime/doc/tagsrch.txt \
"${S}"/runtime/doc/usr_29.txt \
"${S}"/runtime/menu.vim \
"${S}"/src/configure.ac || die 'sed failed'
# Don't be fooled by /usr/include/libc.h. When found, vim thinks
# this is NeXT, but it's actually just a file in dev-libs/9libs
# This fixes bug 43885 (20 Mar 2004 agriffis)
sed -i -e \
's/ libc\.h / /' "${S}"/src/configure.ac || die 'sed failed'
# gcc on sparc32 has this, uhm, interesting problem with detecting EOF
# correctly. To avoid some really entertaining error messages about stuff
# which isn't even in the source file being invalid, we'll do some trickery
# to make the error never occur. bug 66162 (02 October 2004 ciaranm)
find "${S}" -name '*.c' | while read c; do
echo >> "$c" || die "echo failed"
done
# Try to avoid sandbox problems. Bug #114475.
if [[ -d "${S}"/src/po ]]; then
sed -i -e \
'/-S check.vim/s,..VIM.,ln -s $(VIM) testvim \; ./testvim -X,' \
"${S}"/src/po/Makefile || die
fi
cp -v "${S}"/src/config.mk.dist "${S}"/src/auto/config.mk || die "cp failed"
# Bug #378107 - Build properly with >=perl-core/ExtUtils-ParseXS-3.20.0
sed -i -e \
"s:\\\$(PERLLIB)/ExtUtils/xsubpp:${EPREFIX}/usr/bin/xsubpp:" \
"${S}"/src/Makefile || die 'sed for ExtUtils-ParseXS failed'
eapply_user
}
src_configure() {
local myconf=()
# Fix bug 37354: Disallow -funroll-all-loops on amd64
# Bug 57859 suggests that we want to do this for all archs
filter-flags -funroll-all-loops
# Fix bug 76331: -O3 causes problems, use -O2 instead. We'll do this for
# everyone since previous flag filtering bugs have turned out to affect
# multiple archs...
replace-flags -O3 -O2
# Fix bug 18245: Prevent "make" from the following chain:
# (1) Notice configure.ac is newer than auto/configure
# (2) Rebuild auto/configure
# (3) Notice auto/configure is newer than auto/config.mk
# (4) Run ./configure (with wrong args) to remake auto/config.mk
sed -i -e \
's# auto/config\.mk:#:#' src/Makefile || die "Makefile sed failed"
rm -v src/auto/configure || die "rm failed"
emake -j1 -C src autoconf
# This should fix a sandbox violation (see bug 24447). The hvc
# things are for ppc64, see bug 86433.
local file
for file in /dev/pty/s* /dev/console /dev/hvc/* /dev/hvc*; do
if [[ -e ${file} ]]; then
addwrite $file
fi
done
use debug && append-flags "-DDEBUG"
myconf=(
--with-features=huge
--disable-gpm
--enable-multibyte
$(use_enable acl)
$(use_enable cscope)
$(use_enable lua luainterp)
$(use_with luajit)
$(use_enable netbeans)
$(use_enable nls)
$(use_enable perl perlinterp)
$(use_enable python pythoninterp)
$(use_enable python python3interp)
$(use_enable racket mzschemeinterp)
$(use_enable ruby rubyinterp)
$(use_enable selinux)
$(use_enable session xsmp)
$(use_enable tcl tclinterp)
)
# --with-features=huge forces on cscope even if we --disable it. We need
# to sed this out to avoid screwiness. (1 Sep 2004 ciaranm)
if ! use cscope; then
sed -i -e \
'/# define FEAT_CSCOPE/d' src/feature.h || die "couldn't disable cscope"
fi
# gvim's GUI preference order is as follows:
# aqua CARBON (not tested)
# -aqua gtk3 GTK3
# -aqua -gtk3 gnome GNOME2
# -aqua -gtk3 -gnome gtk GTK2
# -aqua -gtk -gtk3 motif MOTIF
# -aqua -gtk -gtk3 -motif neXt NEXTAW
# -aqua -gtk -gtk3 -motif -neXt ATHENA
echo ; echo
if use aqua; then
einfo "Building gvim with the Carbon GUI"
myconf+=(
--enable-darwin
--enable-gui=carbon
)
elif use gtk3; then
myconf+=( --enable-gtk3-check )
einfo "Building gvim with the gtk+-3 GUI"
myconf+=( --enable-gui=gtk3 )
elif use gtk; then
myconf+=( --enable-gtk2-check )
if use gnome; then
einfo "Building gvim with the Gnome 2 GUI"
myconf+=( --enable-gui=gnome2 )
else
einfo "Building gvim with the gtk+-2 GUI"
myconf+=( --enable-gui=gtk2 )
fi
elif use motif; then
einfo "Building gvim with the MOTIF GUI"
myconf+=( --enable-gui=motif )
elif use neXt; then
einfo "Building gvim with the neXtaw GUI"
myconf+=( --enable-gui=nextaw )
else
einfo "Building gvim with the Athena GUI"
myconf+=( --enable-gui=athena )
fi
echo ; echo
# let package manager strip binaries
export ac_cv_prog_STRIP="$(type -P true ) faking strip"
# keep prefix env contained within the EPREFIX
use prefix && myconf+=( --without-local-dir )
if [[ ${CHOST} == *-interix* ]]; then
# avoid finding of this function, to avoid having to patch either
# configure or the source, which would be much more hackish.
# after all vim does it right, only interix is badly broken (again)
export ac_cv_func_sigaction=no
fi
econf \
--with-modified-by=Gentoo-${PVR} \
--with-vim-name=gvim \
--with-x \
"${myconf[@]}"
}
src_compile() {
# The following allows emake to be used
emake -j1 -C src auto/osdef.h objects
emake
}
src_test() {
echo
einfo "Starting vim tests. Several error messages will be shown"
einfo "while the tests run. This is normal behaviour and does not"
einfo "indicate a fault."
echo
ewarn "If the tests fail, your terminal may be left in a strange"
ewarn "state. Usually, running 'reset' will fix this."
echo
# Don't let vim talk to X
unset DISPLAY
# Make gvim not try to connect to X. See :help gui-x11-start in vim for how
# this evil trickery works.
ln -s "${S}"/src/gvim "${S}"/src/testvim || die
# Make sure our VIMPROG is used.
sed -i -e 's:\.\./vim:../testvim:' src/testdir/test49.vim || die
# Don't do additional GUI tests.
emake -j1 VIMPROG=../testvim -C src/testdir nongui
}
# Call eselect vi update with --if-unset
# to respect user's choice (bug 187449)
eselect_vi_update() {
einfo "Calling eselect vi update..."
eselect vi update --if-unset
eend $?
}
src_install() {
local vimfiles=/usr/share/vim/vim${VIM_VERSION/.}
dobin src/gvim
dosym gvim /usr/bin/gvimdiff
dosym gvim /usr/bin/evim
dosym gvim /usr/bin/eview
dosym gvim /usr/bin/gview
dosym gvim /usr/bin/rgvim
dosym gvim /usr/bin/rgview
emake -C src DESTDIR="${D}" DATADIR="${EPREFIX}"/usr/share install-icons
dodir /usr/share/man/man1
echo ".so vim.1" > "${ED}"/usr/share/man/man1/gvim.1 || die "echo failed"
echo ".so vim.1" > "${ED}"/usr/share/man/man1/gview.1 || die "echo failed"
echo ".so vimdiff.1" > "${ED}"/usr/share/man/man1/gvimdiff.1 || \
die "echo failed"
insinto /etc/vim
newins "${FILESDIR}"/gvimrc-r1 gvimrc
eprefixify "${ED}"/etc/vim/gvimrc
doicon -s scalable "${FILESDIR}"/gvim.svg
# bash completion script, bug #79018.
newbashcomp "${FILESDIR}"/${PN}-completion ${PN}
# don't install vim desktop file
rm -v "${ED}"/usr/share/applications/vim.desktop || die "failed to remove vim.desktop"
}
pkg_postinst() {
# Update documentation tags (from vim-doc.eclass)
update_vim_helptags
# Update fdo mime stuff, bug #78394
xdg_desktop_database_update
# Update icon cache
gnome2_icon_cache_update
# Call eselect vi update
eselect_vi_update
}
pkg_postrm() {
# Update documentation tags (from vim-doc.eclass)
update_vim_helptags
# Update fdo mime stuff, bug #78394
xdg_desktop_database_update
# Update icon cache
gnome2_icon_cache_update
# Call eselect vi update
eselect_vi_update
}

@ -1,53 +0,0 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=5
inherit eutils flag-o-matic toolchain-funcs
DESCRIPTION="the nice editor, easy to use for the beginner and powerful for the wizard"
HOMEPAGE="http://ne.di.unimi.it/"
SRC_URI="${HOMEPAGE}/${P}.tar.gz"
LICENSE="GPL-3"
SLOT="0"
KEYWORDS="~amd64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~sparc-solaris ~x86-solaris"
IUSE=tinfo
DEPEND="
>=sys-libs/ncurses-5.2[tinfo?]
"
RDEPEND="
${DEPEND}
dev-lang/perl
"
src_prepare() {
sed -i -e 's/-O3//' src/makefile || die
}
src_configure() {
if use tinfo; then
sed -i -e 's|-lcurses|-ltinfo|g' src/makefile || die
else
sed -i -e 's|-lcurses|-lncurses|g' src/makefile || die
fi
}
src_compile() {
append-cflags -std=c11
emake -C src CC="$(tc-getCC)" \
NE_GLOBAL_DIR="/usr/share/ne" \
OPTS="${CFLAGS}" \
ne || die
}
src_install() {
dobin src/ne
insinto /usr/share/ne/syntax
doins syntax/*.jsf
doman doc/ne.1
dohtml -r doc/html/.
dodoc CHANGES README.md NEWS doc/*.{txt,pdf,texinfo} doc/default.*
}

@ -1,3 +1,2 @@
DIST qemacs-0.4.0_pre20090420.tar.bz2 1393436 BLAKE2B 73cc34e711957db31d765e07712b5fb0ec94523c8d3a175beec95ca244929335088c69156a0f9f8c4875868c1add52a1c5f76e74a07f70d89f2c1c5d80917669 SHA512 4595e34d3a83cbd7f25514dd96b7578976b30de80eb19b1391448ecdb9c06d24088880978961e5abb94b3f715057e7563ae0976d704bc5afaaf83e62a67e8dd4
DIST qemacs-0.4.1_pre20150916.tar.xz 1136592 BLAKE2B aff8875b81bd51f77bebcb4dfe60ed0d4396a05af1f42e6b8765e15f9e04e00162924c3514a9ea1e8cb8c0b9ecd2a4112b9d7a46b7d156c032d37d381f2ae0f0 SHA512 e9775ff3dfef6d6b6b263029a620e6575f9f4718b94c0acfcddc8e5da8cd835e57dfbd5fbd948778135b609ae0588924fc9a727b2e763a25148aa27886a9f467
DIST qemacs-0.4.1_pre20170225.tar.xz 1147408 BLAKE2B 369f3c5ff1b1f7b22bbd1f70f0c150e425a5b68828e62db427e4b41c58c8ee9ae0449a83693e9354d88fc482691d7a5f3661360ef602aeaba963776c4725b894 SHA512 a17c8901c917f91401e16b4f857735957ab0d3533d9dcc7a0decf768f453b68023f45e1241225a84d35ba793beb69754e0f2caa857165f8223882d5041d56c99

@ -1,43 +0,0 @@
utf8 input in tty.c
http://lists.gnu.org/archive/html/qemacs-devel/2004-03/msg00000.html
http://bugs.gentoo.org/62829
--- qemacs-orig/tty.c 2007-02-08 00:27:33.000000000 +0100
+++ qemacs/tty.c 2007-02-26 15:07:41.000000000 +0100
@@ -78,7 +78,6 @@
/* input handling */
enum InputState input_state;
int input_param;
- int utf8_state;
int utf8_index;
unsigned char buf[10];
char *term_name;
@@ -374,15 +373,19 @@
/* charset handling */
if (s->charset == &charset_utf8) {
- if (ts->utf8_state == 0) {
- const char *p;
- p = (const char *)ts->buf;
- ch = utf8_decode(&p);
- } else {
- ts->utf8_state = utf8_length[ts->buf[0]] - 1;
- ts->utf8_index = 0;
- return;
- }
+ /* Make sure utf8 input works correctly 20040314 <damm@opensource.se> */
+ ts->utf8_index++;
+
+ if (utf8_length[ts->buf[0]] == ts->utf8_index) {;
+ const char *p;
+ p = (const char *)ts->buf;
+ ch = utf8_decode(&p);
+ ts->utf8_index = 0;
+ }
+ else {
+ return;
+ }
+
} else {
ch = ts->buf[0];
}

@ -1,35 +0,0 @@
--- Makefile.orig 2009-03-07 21:27:48.000000000 +0100
+++ Makefile 2009-03-07 21:28:43.000000000 +0100
@@ -19,32 +19,6 @@
include config.mak
-ifeq ($(CC),gcc)
- CFLAGS := -Wall -g -O2 -funsigned-char
- # do not warn about zero-length formats.
- CFLAGS += -Wno-format-zero-length
- LDFLAGS := -g
-endif
-
-#include local compiler configuration file
--include cflags.mk
-
-ifdef TARGET_GPROF
- CFLAGS += -p
- LDFLAGS += -p
-endif
-
-TLDFLAGS := $(LDFLAGS)
-
-ifdef TARGET_ARCH_X86
- #CFLAGS+=-fomit-frame-pointer
- ifeq ($(GCC_MAJOR),2)
- CFLAGS+=-m386 -malign-functions=0
- else
- CFLAGS+=-march=i386 -falign-functions=0
- endif
-endif
-
DEFINES=-DHAVE_QE_CONFIG_H
########################################################

@ -1,68 +0,0 @@
Add make-backup-files command for backup toggling, from upstream mailing list:
http://lists.gnu.org/archive/html/qemacs-devel/2004-11/msg00007.html
http://bugs.gentoo.org/75052
--- buffer.c.orig 2009-03-07 21:14:02.000000000 +0100
+++ buffer.c 2009-03-07 21:15:40.000000000 +0100
@@ -1657,12 +1657,14 @@
if (stat(filename, &st) == 0)
mode = st.st_mode & 0777;
- /* backup old file if present */
- if (strlen(filename) < MAX_FILENAME_SIZE - 1) {
+ /* backup old file if present and make-backup-files is on */
+ if(mbf == 1) {
+ if (strlen(filename) < MAX_FILENAME_SIZE - 1) {
if (snprintf(buf1, sizeof(buf1), "%s~", filename) < ssizeof(buf1)) {
// should check error code
rename(filename, buf1);
}
+ }
}
/* CG: should pass mode to buffer_save */
--- qe.c.orig 2009-03-07 21:14:09.000000000 +0100
+++ qe.c 2009-03-07 21:17:01.000000000 +0100
@@ -71,6 +71,7 @@
static int screen_height = 0;
static int no_init_file;
static const char *user_option;
+mbf = 1;
/* mode handling */
@@ -5316,6 +5317,14 @@
do_refresh(qs->first_window);
}
+static void make_backup_files(EditState *s) {
+ if(mbf == 1) {
+ mbf = 0;
+ } else {
+ mbf = 1;
+ }
+}
+
/* compute default path for find/save buffer */
static void get_default_path(EditState *s, char *buf, int buf_size)
{
--- qeconfig.h.orig 2009-03-07 21:14:19.000000000 +0100
+++ qeconfig.h 2009-03-07 21:17:37.000000000 +0100
@@ -192,6 +192,7 @@
"downcase-region", do_changecase_region, ESi, -1, "*v")
CMD3( KEY_CTRLX(KEY_CTRL('u')), KEY_NONE,
"upcase-region", do_changecase_region, ESi, 1, "*v")
+ CMD0( KEY_NONE, KEY_NONE, "make-backup-files", make_backup_files)
/*---------------- Command handling ----------------*/
--- qe.h.orig 2009-03-07 21:14:26.000000000 +0100
+++ qe.h 2009-03-07 21:17:53.000000000 +0100
@@ -1765,6 +1765,7 @@
/* image.c */
void fill_border(EditState *s, int x, int y, int w, int h, int color);
int qe_bitmap_format_to_pix_fmt(int format);
+int mbf;
/* shell.c */
EditBuffer *new_shell_buffer(EditBuffer *b0, const char *name,

@ -1,36 +0,0 @@
--- qemacs-orig/Makefile
+++ qemacs/Makefile
@@ -151,7 +151,6 @@
qe$(EXE): qe_g$(EXE) Makefile
rm -f $@
cp $< $@
- -$(STRIP) $@
@ls -l $@
echo `size $@` `wc -c $@` qe $(OPTIONS) \
| cut -d ' ' -f 7-10,13,15-40 >> STATS
@@ -165,7 +164,6 @@
tqe$(EXE): tqe_g$(EXE) Makefile
rm -f $@
cp $< $@
- -$(STRIP) $@
@ls -l $@
echo `size $@` `wc -c $@` tqe $(OPTIONS) \
| cut -d ' ' -f 7-10,13,15-40 >> STATS
@@ -329,7 +327,7 @@
$(INSTALL) -m 755 -d $(DESTDIR)$(prefix)/bin
$(INSTALL) -m 755 -d $(DESTDIR)$(prefix)/man/man1
$(INSTALL) -m 755 -d $(DESTDIR)$(prefix)/share/qe
- $(INSTALL) -m 755 -s qe$(EXE) $(DESTDIR)$(prefix)/bin/qemacs$(EXE)
+ $(INSTALL) -m 755 qe$(EXE) $(DESTDIR)$(prefix)/bin/qemacs$(EXE)
ln -sf qemacs $(DESTDIR)$(prefix)/bin/qe$(EXE)
ifdef CONFIG_FFMPEG
ln -sf qemacs$(EXE) $(DESTDIR)$(prefix)/bin/ffplay$(EXE)
@@ -337,7 +335,7 @@
$(INSTALL) -m 644 kmaps ligatures $(DESTDIR)$(prefix)/share/qe
$(INSTALL) -m 644 qe.1 $(DESTDIR)$(prefix)/man/man1
ifdef CONFIG_HTML
- $(INSTALL) -m 755 -s html2png$(EXE) $(DESTDIR)$(prefix)/bin
+ $(INSTALL) -m 755 html2png$(EXE) $(DESTDIR)$(prefix)/bin
endif
uninstall:

@ -1,76 +0,0 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=5
inherit eutils flag-o-matic toolchain-funcs
DESCRIPTION="QEmacs is a very small but powerful UNIX editor"
HOMEPAGE="https://savannah.nongnu.org/projects/qemacs"
SRC_URI="mirror://gentoo/${P}.tar.bz2"
LICENSE="LGPL-2.1+ GPL-2+"
SLOT="0"
KEYWORDS="amd64 arm ~ppc x86"
IUSE="X png unicode xv"
RESTRICT="test"
RDEPEND="
X? ( x11-libs/libX11
x11-libs/libXext
xv? ( x11-libs/libXv ) )
png? ( >=media-libs/libpng-1.2:0= )"
DEPEND="${RDEPEND}
>=app-text/texi2html-5"
S="${WORKDIR}/${PN}"
src_prepare() {
# Removes forced march setting and align-functions on x86, as they
# would override user's CFLAGS..
epatch "${FILESDIR}/${PN}-0.4.0_pre20080605-Makefile.patch"
# Make backup files optional
epatch "${FILESDIR}/${PN}-0.4.0_pre20080605-make_backup.patch"
# Suppress stripping
epatch "${FILESDIR}/${P}-nostrip.patch"
use unicode && epatch "${FILESDIR}/${PN}-0.3.2_pre20070226-tty_utf8.patch"
# Change the manpage to reference a /real/ file instead of just an
# approximation. Purely cosmetic!
sed -i -e "s,^/usr/share/doc/qemacs,&-${PVR}," qe.1 || die
# Fix compability with >=app-text/texi2html-5
sed -i -e "/texi2html/s,-number,&-sections," Makefile || die
}
src_configure() {
# when using any other CFLAGS than -O0, qemacs will segfault on startup,
# see bug 92011
replace-flags "-O?" -O0
econf --cc="$(tc-getCC)" \
$(use_enable X x11) \
$(use_enable png) \
$(use_enable xv)
}
src_compile() {
# Does not support parallel building.
emake -j1
}
src_install() {
emake install DESTDIR="${D}"
dodoc Changelog README TODO config.eg
dohtml *.html
# Fix man page location
mv "${D}"/usr/{,share/}man || die
# Install headers so users can build their own plugins.
insinto /usr/include/qe
doins *.h
insinto /usr/include/qe/libqhtml
doins libqhtml/*.h
}

@ -1,7 +1,4 @@
DIST vim-8.0.0106-gentoo-patches.tar.bz2 2281 BLAKE2B 8e10c0c56ad97cbae0677ec91b0b35359f6e08b5eb542b00028fd0e243a075551adab4e140a90930cbce4549c3c4bc79a40c0e1a6c13aae18f67d6fc55a80e0e SHA512 39edd9f518c230d2b0486b18aa155572a9eada4a5e21108573d6e66e2eef1276f23b77d766648f018c9cf973a7d03712d8861be6ea13255d7b389912d554a47a
DIST vim-8.0.0386.tar.gz 13000882 BLAKE2B c38c1b75334cae916f76562ec5a06d59c4f2df6123d4b27a0a854dd8ecd9ae6f5d008a94137abe6217fc28d233077d636d30f2c26a5a139ff35f50cb52204f79 SHA512 3169ea4dbc836c724f63d99cd345227f870a3a922beba84a6b42011685c0dd209f6bba8c69af0650c9a57bb47fc541e1150ca8cefb21fcada022259bf4c94a66
DIST vim-8.0.0938-gentoo-patches.tar.bz2 2316 BLAKE2B 05a87f32fc5cc65e7f5e4e5a87c654b2040ad39f1555ddde7e0e6f473dc8b520916a795406bb6bbeaf5e7ae8748aacebe7a9679461e48802e69417e945eea827 SHA512 a6062be5e6a5c5b437081312df5742353242b5171bf26da04aa6ca216d2b142b2411a88bc1edd460d28e00a59a210c8e1729e801fac6f1efd86bb2e437a56a2b
DIST vim-8.0.1188.tar.gz 13363260 BLAKE2B 545b2d6e8322b27967c974bb960f4e5ea2c6811d2649ac4c008eb8e6af78fe555a035657704af40026f96f12f83e3cebe435e90d21d7da87980446710424f79f SHA512 9c3733aa894c276de593d6144ee0aaf251092a11f4d0ac603d3d49a282ac6176aa4e88eccfd2527ff53b386bdd0177a85c0942367d68a652b5ca4040390ba49b
DIST vim-8.0.1298.tar.gz 13395459 BLAKE2B 4b6e3c4443cd675dc3727e8609b89c422f66c7d32908b5136ee312d48427568a8236214c85135242269b6575e0e1336b0973395a6372664435f8bae4d7bee843 SHA512 7704c493359c1a922f876e4d6f3b4ad265d8ce974a59d51a39e5a4424251105250ffc803bcf6c6750daeb5e6376cbbfd24557b075eacf2b0274d7c432db2f681
DIST vim-8.0.1428.tar.gz 13415243 BLAKE2B 88f86c371d0a644212b9e4dc1a15d61244847037f36262a225c361bfc2799b741c128de21ac92bb3fb4a4955894e46d34dc01baa7cbf58f1371d772b36887103 SHA512 f635c53c7e2ca808dc1cb424e6e4b16d8c41c66a86c3c7584444dab3d2482904795fea7c071d65862ae6ac6b2b66b7ad5ac832e1e30f4624d46f220c6f41e2e9
DIST vim-8.0.1645.tar.gz 13535252 BLAKE2B a5c7463e85eed12825bdf46d15eb7e7513d62831eba76cbb90af875010b33662b7a6ef2c4c5cecddface415d75e97caf0a670e69835ecd3b4a89704f3b18b905 SHA512 367b9e205e776f84fcfbb92725afd5e7aa66898110d46dbea1a33f7b74c239559e829b5104c45360539c8f2b23c375ed59ccea7ee35a5dd10770400d9a7be085

@ -1,348 +0,0 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
VIM_VERSION="8.0"
PYTHON_COMPAT=( python{2_7,3_4,3_5,3_6} )
PYTHON_REQ_USE=threads
inherit eutils vim-doc flag-o-matic fdo-mime versionator bash-completion-r1 python-r1
if [[ ${PV} == 9999* ]] ; then
inherit git-r3
EGIT_REPO_URI="https://github.com/vim/vim.git"
else
SRC_URI="https://github.com/vim/vim/archive/v${PV}.tar.gz -> ${P}.tar.gz
https://dev.gentoo.org/~radhermit/vim/vim-8.0.0106-gentoo-patches.tar.bz2"
KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
fi
DESCRIPTION="Vim, an improved vi-style text editor"
HOMEPAGE="http://www.vim.org/ https://github.com/vim/vim"
SLOT="0"
LICENSE="vim"
IUSE="X acl cscope debug gpm lua luajit minimal nls perl python racket ruby selinux tcl vim-pager"
REQUIRED_USE="
luajit? ( lua )
python? (
|| ( $(python_gen_useflags '*') )
?? ( $(python_gen_useflags 'python2*') )
?? ( $(python_gen_useflags 'python3*') )
)
"
RDEPEND="
>=app-eselect/eselect-vi-1.1
>=sys-libs/ncurses-5.2-r2:0=
nls? ( virtual/libintl )
acl? ( kernel_linux? ( sys-apps/acl ) )
cscope? ( dev-util/cscope )
gpm? ( >=sys-libs/gpm-1.19.3 )
lua? (
luajit? ( dev-lang/luajit:2= )
!luajit? ( dev-lang/lua:0[deprecated] )
)
!minimal? (
~app-editors/vim-core-${PV}
dev-util/ctags
)
perl? ( dev-lang/perl:= )
python? ( ${PYTHON_DEPS} )
racket? ( dev-scheme/racket )
ruby? ( || ( dev-lang/ruby:2.4 dev-lang/ruby:2.3 dev-lang/ruby:2.2 dev-lang/ruby:2.1 ) )
selinux? ( sys-libs/libselinux )
tcl? ( dev-lang/tcl:0= )
X? ( x11-libs/libXt )
"
DEPEND="${RDEPEND}
sys-devel/autoconf
nls? ( sys-devel/gettext )
"
pkg_setup() {
# people with broken alphabets run into trouble. bug 82186.
unset LANG LC_ALL
export LC_COLLATE="C"
# Gnome sandbox silliness. bug #114475.
mkdir -p "${T}"/home
export HOME="${T}"/home
}
src_prepare() {
if [[ ${PV} != 9999* ]] ; then
# Gentoo patches to fix runtime issues, cross-compile errors, etc
eapply "${WORKDIR}"/patches/
fi
# Fixup a script to use awk instead of nawk
sed -i '1s|.*|#!'"${EPREFIX}"'/usr/bin/awk -f|' "${S}"/runtime/tools/mve.awk \
|| die "mve.awk sed failed"
# Read vimrc and gvimrc from /etc/vim
echo '#define SYS_VIMRC_FILE "'${EPREFIX}'/etc/vim/vimrc"' >> "${S}"/src/feature.h
echo '#define SYS_GVIMRC_FILE "'${EPREFIX}'/etc/vim/gvimrc"' >> "${S}"/src/feature.h
# Use exuberant ctags which installs as /usr/bin/exuberant-ctags.
# Hopefully this pattern won't break for a while at least.
# This fixes bug 29398 (27 Sep 2003 agriffis)
sed -i 's/\<ctags\("\| [-*.]\)/exuberant-&/g' \
"${S}"/runtime/doc/syntax.txt \
"${S}"/runtime/doc/tagsrch.txt \
"${S}"/runtime/doc/usr_29.txt \
"${S}"/runtime/menu.vim \
"${S}"/src/configure.ac || die 'sed failed'
# Don't be fooled by /usr/include/libc.h. When found, vim thinks
# this is NeXT, but it's actually just a file in dev-libs/9libs
# This fixes bug 43885 (20 Mar 2004 agriffis)
sed -i 's/ libc\.h / /' "${S}"/src/configure.ac || die 'sed failed'
# gcc on sparc32 has this, uhm, interesting problem with detecting EOF
# correctly. To avoid some really entertaining error messages about stuff
# which isn't even in the source file being invalid, we'll do some trickery
# to make the error never occur. bug 66162 (02 October 2004 ciaranm)
find "${S}" -name '*.c' | while read c ; do echo >> "$c" ; done
# conditionally make the manpager.sh script
if use vim-pager ; then
cat <<-END > "${S}"/runtime/macros/manpager.sh
#!/bin/sh
sed -e 's/\x1B\[[[:digit:]]\+m//g' | col -b | \\
vim \\
-c 'let no_plugin_maps = 1' \\
-c 'set nolist nomod ft=man ts=8' \\
-c 'let g:showmarks_enable=0' \\
-c 'runtime! macros/less.vim' -
END
fi
# Try to avoid sandbox problems. Bug #114475.
if [[ -d "${S}"/src/po ]] ; then
sed -i '/-S check.vim/s,..VIM.,ln -s $(VIM) testvim \; ./testvim -X,' \
"${S}"/src/po/Makefile
fi
if version_is_at_least 7.3.122 ; then
cp "${S}"/src/config.mk.dist "${S}"/src/auto/config.mk
fi
# Bug #378107 - Build properly with >=perl-core/ExtUtils-ParseXS-3.20.0
if version_is_at_least 7.3 ; then
sed -i "s:\\\$(PERLLIB)/ExtUtils/xsubpp:${EPREFIX}/usr/bin/xsubpp:" \
"${S}"/src/Makefile || die 'sed for ExtUtils-ParseXS failed'
fi
eapply_user
}
src_configure() {
local myconf=()
# Fix bug 37354: Disallow -funroll-all-loops on amd64
# Bug 57859 suggests that we want to do this for all archs
filter-flags -funroll-all-loops
# Fix bug 76331: -O3 causes problems, use -O2 instead. We'll do this for
# everyone since previous flag filtering bugs have turned out to affect
# multiple archs...
replace-flags -O3 -O2
# Fix bug 18245: Prevent "make" from the following chain:
# (1) Notice configure.ac is newer than auto/configure
# (2) Rebuild auto/configure
# (3) Notice auto/configure is newer than auto/config.mk
# (4) Run ./configure (with wrong args) to remake auto/config.mk
sed -i 's# auto/config\.mk:#:#' src/Makefile || die "Makefile sed failed"
rm -f src/auto/configure
emake -j1 -C src autoconf
# This should fix a sandbox violation (see bug 24447). The hvc
# things are for ppc64, see bug 86433.
for file in /dev/pty/s* /dev/console /dev/hvc/* /dev/hvc* ; do
[[ -e ${file} ]] && addwrite $file
done
if use minimal ; then
myconf=(
--with-features=tiny
--disable-nls
--disable-multibyte
--disable-acl
--enable-gui=no
--without-x
--disable-darwin
--disable-luainterp
--disable-perlinterp
--disable-pythoninterp
--disable-mzschemeinterp
--disable-rubyinterp
--disable-selinux
--disable-tclinterp
--disable-gpm
)
else
use debug && append-flags "-DDEBUG"
myconf=(
--with-features=huge
--enable-multibyte
$(use_enable acl)
$(use_enable cscope)
$(use_enable gpm)
$(use_enable lua luainterp)
$(usex lua "--with-lua-prefix=${EPREFIX}/usr" "")
$(use_with luajit)
$(use_enable nls)
$(use_enable perl perlinterp)
$(use_enable racket mzschemeinterp)
$(use_enable ruby rubyinterp)
$(use_enable selinux)
$(use_enable tcl tclinterp)
)
if use python ; then
py_add_interp() {
local v
[[ ${EPYTHON} == python3* ]] && v=3
myconf+=(
--enable-python${v}interp
vi_cv_path_python${v}="${PYTHON}"
)
}
python_foreach_impl py_add_interp
else
myconf+=(
--disable-pythoninterp
--disable-python3interp
)
fi
# --with-features=huge forces on cscope even if we --disable it. We need
# to sed this out to avoid screwiness. (1 Sep 2004 ciaranm)
if ! use cscope ; then
sed -i '/# define FEAT_CSCOPE/d' src/feature.h || \
die "couldn't disable cscope"
fi
# don't test USE=X here ... see bug #19115
# but need to provide a way to link against X ... see bug #20093
myconf+=(
--enable-gui=no
--disable-darwin
$(use_with X x)
)
fi
# let package manager strip binaries
export ac_cv_prog_STRIP="$(type -P true ) faking strip"
# keep prefix env contained within the EPREFIX
use prefix && myconf+=( --without-local-dir )
econf \
--with-modified-by=Gentoo-${PVR} \
"${myconf[@]}"
}
src_compile() {
# The following allows emake to be used
emake -j1 -C src auto/osdef.h objects
emake
}
src_test() {
echo
einfo "Starting vim tests. Several error messages will be shown"
einfo "while the tests run. This is normal behaviour and does not"
einfo "indicate a fault."
echo
ewarn "If the tests fail, your terminal may be left in a strange"
ewarn "state. Usually, running 'reset' will fix this."
echo
# Don't let vim talk to X
unset DISPLAY
emake -j1 -C src/testdir nongui
}
# Make convenience symlinks, hopefully without stepping on toes. Some
# of these links are "owned" by the vim ebuild when it is installed,
# but they might be good for gvim as well (see bug 45828)
update_vim_symlinks() {
local f syms
syms="vimdiff rvim rview"
einfo "Calling eselect vi update..."
# Call this with --if-unset to respect user's choice (bug 187449)
eselect vi update --if-unset
# Make or remove convenience symlink, vim -> gvim
if [[ -f "${EROOT}"/usr/bin/gvim ]]; then
ln -s gvim "${EROOT}"/usr/bin/vim 2>/dev/null
elif [[ -L "${EROOT}"/usr/bin/vim && ! -f "${EROOT}"/usr/bin/vim ]]; then
rm "${EROOT}"/usr/bin/vim
fi
# Make or remove convenience symlinks to vim
if [[ -f "${EROOT}"/usr/bin/vim ]]; then
for f in ${syms}; do
ln -s vim "${EROOT}"/usr/bin/${f} 2>/dev/null
done
else
for f in ${syms}; do
if [[ -L "${EROOT}"/usr/bin/${f} && ! -f "${EROOT}"/usr/bin/${f} ]]; then
rm -f "${EROOT}"/usr/bin/${f}
fi
done
fi
# This will still break if you merge then remove the vi package,
# but there's only so much you can do, eh? Unfortunately we don't
# have triggers like are done in rpm-land.
}
src_install() {
local vimfiles=/usr/share/vim/vim${VIM_VERSION/.}
# Note: Do not install symlinks for 'vi', 'ex', or 'view', as these are
# managed by eselect-vi
dobin src/vim
dosym vim /usr/bin/vimdiff
dosym vim /usr/bin/rvim
dosym vim /usr/bin/rview
if use vim-pager ; then
dosym ${vimfiles}/macros/less.sh /usr/bin/vimpager
dosym ${vimfiles}/macros/manpager.sh /usr/bin/vimmanpager
insinto ${vimfiles}/macros
doins runtime/macros/manpager.sh
fperms a+x ${vimfiles}/macros/manpager.sh
fi
newbashcomp "${FILESDIR}"/${PN}-completion ${PN}
# keep in sync with 'complete ... -F' list
bashcomp_alias vim ex vi view rvim rview vimdiff
# We shouldn't be installing the ex or view man page symlinks, as they
# are managed by eselect-vi
rm -f "${ED}"/usr/share/man/man1/{ex,view}.1
}
pkg_postinst() {
# Update documentation tags (from vim-doc.eclass)
update_vim_helptags
# Make convenience symlinks
update_vim_symlinks
}
pkg_postrm() {
# Update documentation tags (from vim-doc.eclass)
update_vim_helptags
# Make convenience symlinks
update_vim_symlinks
}

@ -1,309 +0,0 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
VIM_VERSION="8.0"
PYTHON_COMPAT=( python{2_7,3_4,3_5,3_6} )
PYTHON_REQ_USE=threads
inherit vim-doc flag-o-matic versionator bash-completion-r1 python-single-r1
if [[ ${PV} == 9999* ]] ; then
inherit git-r3
EGIT_REPO_URI="https://github.com/vim/vim.git"
else
SRC_URI="https://github.com/vim/vim/archive/v${PV}.tar.gz -> ${P}.tar.gz
https://dev.gentoo.org/~radhermit/vim/vim-8.0.0938-gentoo-patches.tar.bz2"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
fi
DESCRIPTION="Vim, an improved vi-style text editor"
HOMEPAGE="https://vim.sourceforge.io/ https://github.com/vim/vim"
SLOT="0"
LICENSE="vim"
IUSE="X acl cscope debug gpm lua luajit minimal nls perl python racket ruby selinux tcl terminal vim-pager"
REQUIRED_USE="
luajit? ( lua )
python? ( ${PYTHON_REQUIRED_USE} )
"
RDEPEND="
>=app-eselect/eselect-vi-1.1
>=sys-libs/ncurses-5.2-r2:0=
nls? ( virtual/libintl )
acl? ( kernel_linux? ( sys-apps/acl ) )
cscope? ( dev-util/cscope )
gpm? ( >=sys-libs/gpm-1.19.3 )
lua? (
luajit? ( dev-lang/luajit:2= )
!luajit? ( dev-lang/lua:0[deprecated] )
)
!minimal? (
~app-editors/vim-core-${PV}
dev-util/ctags
)
perl? ( dev-lang/perl:= )
python? ( ${PYTHON_DEPS} )
racket? ( dev-scheme/racket )
ruby? ( || ( dev-lang/ruby:2.4 dev-lang/ruby:2.3 dev-lang/ruby:2.2 ) )
selinux? ( sys-libs/libselinux )
tcl? ( dev-lang/tcl:0= )
X? ( x11-libs/libXt )
"
DEPEND="
${RDEPEND}
sys-devel/autoconf
nls? ( sys-devel/gettext )
"
pkg_setup() {
# people with broken alphabets run into trouble. bug 82186.
unset LANG LC_ALL
export LC_COLLATE="C"
# Gnome sandbox silliness. bug #114475.
mkdir -p "${T}"/home || die "mkdir failed"
export HOME="${T}"/home
use python && python-single-r1_pkg_setup
}
src_prepare() {
if [[ ${PV} != 9999* ]] ; then
# Gentoo patches to fix runtime issues, cross-compile errors, etc
eapply "${WORKDIR}"/patches/
fi
# Fixup a script to use awk instead of nawk
sed -i -e \
'1s|.*|#!'"${EPREFIX}"'/usr/bin/awk -f|' \
"${S}"/runtime/tools/mve.awk || die "mve.awk sed failed"
# Read vimrc and gvimrc from /etc/vim
echo '#define SYS_VIMRC_FILE "'${EPREFIX}'/etc/vim/vimrc"' \
>> "${S}"/src/feature.h || die "echo failed"
echo '#define SYS_GVIMRC_FILE "'${EPREFIX}'/etc/vim/gvimrc"' \
>> "${S}"/src/feature.h || die "echo failed"
# Use exuberant ctags which installs as /usr/bin/exuberant-ctags.
# Hopefully this pattern won't break for a while at least.
# This fixes bug 29398 (27 Sep 2003 agriffis)
sed -i -e \
's/\<ctags\("\| [-*.]\)/exuberant-&/g' \
"${S}"/runtime/doc/syntax.txt \
"${S}"/runtime/doc/tagsrch.txt \
"${S}"/runtime/doc/usr_29.txt \
"${S}"/runtime/menu.vim \
"${S}"/src/configure.ac || die 'sed failed'
# Don't be fooled by /usr/include/libc.h. When found, vim thinks
# this is NeXT, but it's actually just a file in dev-libs/9libs
# This fixes bug 43885 (20 Mar 2004 agriffis)
sed -i -e \
's/ libc\.h / /' \
"${S}"/src/configure.ac || die 'sed failed'
# gcc on sparc32 has this, uhm, interesting problem with detecting EOF
# correctly. To avoid some really entertaining error messages about stuff
# which isn't even in the source file being invalid, we'll do some trickery
# to make the error never occur. bug 66162 (02 October 2004 ciaranm)
find "${S}" -name '*.c' | while read c; do
echo >> "$c" || die "echo failed"
done
# conditionally make the manpager.sh script
if use vim-pager; then
cat > "${S}"/runtime/macros/manpager.sh <<-_EOF_ || die "cat EOF failed"
#!/bin/sh
sed -e 's/\x1B\[[[:digit:]]\+m//g' | col -b | \\
vim \\
-c 'let no_plugin_maps = 1' \\
-c 'set nolist nomod ft=man ts=8' \\
-c 'let g:showmarks_enable=0' \\
-c 'runtime! macros/less.vim' -
_EOF_
fi
# Try to avoid sandbox problems. Bug #114475.
if [[ -d "${S}"/src/po ]]; then
sed -i -e \
'/-S check.vim/s,..VIM.,ln -s $(VIM) testvim \; ./testvim -X,' \
"${S}"/src/po/Makefile || die "sed failed"
fi
cp -v "${S}"/src/config.mk.dist "${S}"/src/auto/config.mk || die "cp failed"
sed -i -e \
"s:\\\$(PERLLIB)/ExtUtils/xsubpp:${EPREFIX}/usr/bin/xsubpp:" \
"${S}"/src/Makefile || die 'sed for ExtUtils-ParseXS failed'
eapply_user
}
src_configure() {
local myconf=()
# Fix bug 37354: Disallow -funroll-all-loops on amd64
# Bug 57859 suggests that we want to do this for all archs
filter-flags -funroll-all-loops
# Fix bug 76331: -O3 causes problems, use -O2 instead. We'll do this for
# everyone since previous flag filtering bugs have turned out to affect
# multiple archs...
replace-flags -O3 -O2
# Fix bug 18245: Prevent "make" from the following chain:
# (1) Notice configure.ac is newer than auto/configure
# (2) Rebuild auto/configure
# (3) Notice auto/configure is newer than auto/config.mk
# (4) Run ./configure (with wrong args) to remake auto/config.mk
sed -i 's# auto/config\.mk:#:#' src/Makefile || die "Makefile sed failed"
rm src/auto/configure || die "rm failed"
emake -j1 -C src autoconf
# This should fix a sandbox violation (see bug 24447). The hvc
# things are for ppc64, see bug 86433.
for file in /dev/pty/s* /dev/console /dev/hvc/* /dev/hvc*; do
if [[ -e "${file}" ]]; then
addwrite $file
fi
done
if use minimal; then
myconf=(
--with-features=tiny
--disable-nls
--disable-multibyte
--disable-acl
--enable-gui=no
--without-x
--disable-darwin
--disable-luainterp
--disable-perlinterp
--disable-pythoninterp
--disable-mzschemeinterp
--disable-rubyinterp
--disable-selinux
--disable-tclinterp
--disable-gpm
)
else
use debug && append-flags "-DDEBUG"
myconf=(
--with-features=huge
--enable-multibyte
$(use_enable acl)
$(use_enable cscope)
$(use_enable gpm)
$(use_enable lua luainterp)
$(usex lua "--with-lua-prefix=${EPREFIX}/usr" "")
$(use_with luajit)
$(use_enable nls)
$(use_enable perl perlinterp)
$(use_enable python pythoninterp)
$(use_enable python python3interp)
$(use_enable racket mzschemeinterp)
$(use_enable ruby rubyinterp)
$(use_enable selinux)
$(use_enable tcl tclinterp)
$(use_enable terminal)
)
# --with-features=huge forces on cscope even if we --disable it. We need
# to sed this out to avoid screwiness. (1 Sep 2004 ciaranm)
if ! use cscope; then
sed -i -e \
'/# define FEAT_CSCOPE/d' src/feature.h || die "sed failed"
fi
# don't test USE=X here ... see bug #19115
# but need to provide a way to link against X ... see bug #20093
myconf+=(
--enable-gui=no
--disable-darwin
$(use_with X x)
)
fi
# let package manager strip binaries
export ac_cv_prog_STRIP="$(type -P true ) faking strip"
# keep prefix env contained within the EPREFIX
use prefix && myconf+=( --without-local-dir )
econf \
--with-modified-by=Gentoo-${PVR} \
"${myconf[@]}"
}
src_compile() {
# The following allows emake to be used
emake -j1 -C src auto/osdef.h objects
emake
}
src_test() {
einfo
einfo "Starting vim tests. Several error messages will be shown"
einfo "while the tests run. This is normal behaviour and does not"
einfo "indicate a fault."
einfo
ewarn "If the tests fail, your terminal may be left in a strange"
ewarn "state. Usually, running 'reset' will fix this."
einfo
# Don't let vim talk to X
unset DISPLAY
emake -j1 -C src/testdir nongui
}
# Call eselect vi update with --if-unset
# to respect user's choice (bug 187449)
eselect_vi_update() {
einfo "Calling eselect vi update..."
eselect vi update --if-unset
eend $?
}
src_install() {
local vimfiles=/usr/share/vim/vim${VIM_VERSION/.}
# Note: Do not install symlinks for 'vi', 'ex', or 'view', as these are
# managed by eselect-vi
dobin src/vim
dosym vim /usr/bin/vimdiff
dosym vim /usr/bin/rvim
dosym vim /usr/bin/rview
if use vim-pager ; then
dosym ${vimfiles}/macros/less.sh /usr/bin/vimpager
dosym ${vimfiles}/macros/manpager.sh /usr/bin/vimmanpager
insinto ${vimfiles}/macros
doins runtime/macros/manpager.sh
fperms a+x ${vimfiles}/macros/manpager.sh
fi
newbashcomp "${FILESDIR}"/${PN}-completion ${PN}
# keep in sync with 'complete ... -F' list
bashcomp_alias vim ex vi view rvim rview vimdiff
}
pkg_postinst() {
# Update documentation tags (from vim-doc.eclass)
update_vim_helptags
# Call eselect vi update
eselect_vi_update
}
pkg_postrm() {
# Update documentation tags (from vim-doc.eclass)
update_vim_helptags
# Call eselect vi update
eselect_vi_update
}

Binary file not shown.

@ -1,11 +0,0 @@
--- ghc-mod.cabal.orig 2015-04-18 13:14:37.566613645 +0200
+++ ghc-mod.cabal 2015-04-18 13:14:53.420241209 +0200
@@ -26,8 +26,6 @@
Category: GHC, Development
Cabal-Version: >= 1.14
Build-Type: Custom
-Data-Files: elisp/Makefile
- elisp/*.el
Data-Files: LICENSE COPYING.BSD3 COPYING.AGPL3
Extra-Source-Files: ChangeLog
SetupCompat.hs

@ -1,11 +0,0 @@
--- ghc-mod.cabal.orig 2015-04-18 13:14:37.566613645 +0200
+++ ghc-mod.cabal 2015-04-18 13:14:53.420241209 +0200
@@ -26,8 +26,6 @@
Category: GHC, Development
Cabal-Version: >= 1.14
Build-Type: Custom
-Data-Files: elisp/Makefile
- elisp/*.el
Data-Files: LICENSE COPYING.BSD3 COPYING.AGPL3
Extra-Source-Files: ChangeLog
SetupCompat.hs

@ -1,5 +1,5 @@
--- a/ghc-mod.cabal.org 2016-07-29 09:18:31.000000000 -0400
+++ b/ghc-mod.cabal 2016-08-08 23:16:00.171679823 -0400
--- a/ghc-mod.cabal
+++ b/ghc-mod.cabal
@@ -29,2 +29,0 @@
-Data-Files: elisp/Makefile
- elisp/*.el

@ -1,4 +1,4 @@
# Copyright 1999-2015 Gentoo Foundation
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=5
@ -53,7 +53,7 @@ DEPEND="${RDEPEND}
SITEFILE=50${PN}-gentoo.el
src_prepare() {
epatch "${FILESDIR}"/${PN}-5.4.0.0-gentoo.patch
epatch "${FILESDIR}"/${PN}-5.6.0.0-gentoo.patch
}
src_compile() {

@ -1,4 +1,4 @@
# Copyright 1999-2016 Gentoo Foundation
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=5
@ -53,7 +53,7 @@ DEPEND="${RDEPEND}
SITEFILE=50${PN}-gentoo.el
src_prepare() {
epatch "${FILESDIR}"/${PN}-5.5.0.0-gentoo.patch
epatch "${FILESDIR}"/${PN}-5.6.0.0-gentoo.patch
}
src_compile() {

@ -11,7 +11,7 @@ SRC_URI="mirror://ruby/ruby-${PV}.tar.xz"
LICENSE="GPL-3+"
SLOT="0"
KEYWORDS="~alpha amd64 arm hppa ia64 ppc ppc64 ~s390 ~sh sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
KEYWORDS="alpha amd64 arm hppa ia64 ppc ppc64 ~s390 ~sh sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
S="${WORKDIR}/ruby-${PV}/misc"
DOCS="README"

@ -0,0 +1,94 @@
diff -Nuar a/doc/slime.texi b/doc/slime.texi
--- a/doc/slime.texi 2017-08-28 13:51:57.000000000 +0200
+++ b/doc/slime.texi 2018-04-08 17:21:16.004697168 +0200
@@ -1219,7 +1219,8 @@
Describe the slot at point.
@kbditem{e, slime-inspector-eval}
-Evaluate an expression in the context of the inspected object.
+Evaluate an expression in the context of the inspected object. The
+variable @code{*} will be bound to the inspected object.
@kbditem{v, slime-inspector-toggle-verbose}
Toggle between verbose and terse mode. Default is determined by
@@ -1250,8 +1251,7 @@
Store the value under point in the variable `*'. This can
then be used to access the object in the REPL.
-@kbditempair{TAB, S-TAB, slime-inspector-next-inspectable-object,
-slime-inspector-previous-inspectable-object}
+@kbditempair{TAB, S-TAB, slime-inspector-next-inspectable-object, slime-inspector-previous-inspectable-object}
Jump to the next and previous inspectable object respectively.
@@ -2016,7 +2016,7 @@
On the emacs side you will use something like
@example
(setq slime-net-coding-system 'utf-8-unix)
-(slime-connect "127.0.0.1" 4005))
+(slime-connect "localhost" 4005))
@end example
to connect to this lisp image from the same machine.
@@ -2028,7 +2028,7 @@
remote machine.
@example
-ssh -L4005:127.0.0.1:4005 username@@remote.example.com
+ssh -L4005:localhost:4005 username@@remote.example.com
@end example
That ssh invocation creates an ssh tunnel between the port 4005 on our
@@ -2044,9 +2044,9 @@
@end example
The @kbd{RET RET} sequence just means that we want to use the default
-host (@code{127.0.0.1}) and the default port (@code{4005}). Even
+host (@code{localhost}) and the default port (@code{4005}). Even
though we're connecting to a remote machine the ssh tunnel fools Emacs
-into thinking it's actually @code{127.0.0.1}.
+into thinking it's actually @code{localhost}.
@c -----------------------
@node Setting up pathname translations
@@ -2323,8 +2323,7 @@
@table @kbd
-@kbditempair{C-<up>, C-<down>,
- slime-repl-forward-input, slime-repl-backward-input}
+@kbditempair{C-<up>, C-<down>, slime-repl-forward-input, slime-repl-backward-input}
Go to the next/previous history item.
@kbditempair{M-n, M-p, slime-repl-next-input, slime-repl-previous-input}
@@ -2333,16 +2332,14 @@
a row, the second invocation uses the same search pattern (even if the
current input has changed).
-@kbditempair{M-s, M-r,
-slime-repl-next-matching-input, slime-repl-previous-matching-input}
+@kbditempair{M-s, M-r, slime-repl-next-matching-input, slime-repl-previous-matching-input}
Search forward/reverse through command history with regex
@c @code{slime-repl-@{next,previous@}-input}@*
@c @code{slime-repl-@{next,previous@}-matching-input}@*
@c @code{comint}-style input history commands.
-@kbditempair{C-c C-n, C-c C-p,
-slime-repl-next-prompt, slime-repl-previous-prompt}
+@kbditempair{C-c C-n, C-c C-p, slime-repl-next-prompt, slime-repl-previous-prompt}
Move between the current and previous prompts in the @REPL{} buffer.
Pressing RET on a line with old input copies that line to the newest
prompt.
@@ -2655,6 +2652,11 @@
If @code{slime-autodoc-use-multiline-p} is set to non-nil,
allow long autodoc messages to resize echo area display.
+@vindex slime-autodoc-mode-string
+@code{slime-autodoc-mode-string} is a string that will be displayed in
+the mode line when autodoc-mode is enabled, or nil, if you prefer no
+indication. You can customize this variable.
+
@node ASDF
@section ASDF

@ -3,7 +3,7 @@
EAPI=6
inherit elisp eutils
inherit elisp
DESCRIPTION="SLIME, the Superior Lisp Interaction Mode (Extended)"
HOMEPAGE="http://common-lisp.net/project/slime/"
@ -11,7 +11,7 @@ SRC_URI="https://github.com/slime/slime/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="GPL-2 xref? ( xref.lisp )"
SLOT="0"
KEYWORDS="~amd64 ~ppc ~sparc ~x86"
KEYWORDS="amd64 ~ppc ~sparc ~x86"
IUSE="doc xref"
RESTRICT=test # tests fail to contact sbcl
@ -25,22 +25,26 @@ CLPACKAGE=swank
CLSYSTEMS=swank
SITEFILE=70${PN}-gentoo.el
PATCHES=(
# Should be fixed in >=app-emacs/slime-2.20
"${FILESDIR}/${PN}-2.20-fix-doc-build.patch"
)
src_prepare() {
default
# Remove xref.lisp (which is non-free) unless USE flag is set
use xref || rm -f xref.lisp
eapply_user
}
src_compile() {
elisp-compile *.el || die
BYTECOMPFLAGS="${BYTECOMPFLAGS} -L contrib -l slime" \
elisp-compile contrib/*.el lib/*.el || die
emake -j1 -C doc slime.info || die "Cannot build info docs"
#if use doc; then
# VARTEXFONTS="${T}"/fonts \
# emake -j1 -C doc slime.pdf || die "emake doc failed"
#fi
if use doc ; then
VARTEXFONTS="${T}"/fonts \
emake -C doc all
fi
}
src_install() {

Binary file not shown.

@ -1,6 +1,6 @@
diff -Nuar a/gtk/build-intel-lib.sh b/gtk/build-intel-lib.sh
--- a/gtk/build-intel-lib.sh 2018-01-08 02:52:33.000000000 +0100
+++ b/gtk/build-intel-lib.sh 2018-01-13 19:43:23.709997784 +0100
--- a/gtk/build-intel-lib.sh
+++ b/gtk/build-intel-lib.sh
@@ -4,7 +4,7 @@
cd IntelRDFPMathLib20U1
patch -p0 <../intel-lib-linux.patch

@ -1,6 +1,6 @@
diff -Nuar a/gtk/Makefile b/gtk/Makefile
--- a/gtk/Makefile 2018-01-08 02:52:33.000000000 +0100
+++ b/gtk/Makefile 2018-01-13 19:40:49.059998446 +0100
--- a/gtk/Makefile
+++ b/gtk/Makefile
@@ -15,11 +15,11 @@
# along with this program; if not, see http://www.gnu.org/licenses/.
###############################################################################

@ -1,12 +0,0 @@
diff -Nuar a/gtk/build-intel-lib.sh b/gtk/build-intel-lib.sh
--- a/gtk/build-intel-lib.sh 2018-01-08 02:52:33.000000000 +0100
+++ b/gtk/build-intel-lib.sh 2018-01-13 19:43:23.709997784 +0100
@@ -4,7 +4,7 @@
cd IntelRDFPMathLib20U1
patch -p0 <../intel-lib-linux.patch
cd LIBRARY
-make CC=gcc CALL_BY_REF=1 GLOBAL_RND=1 GLOBAL_FLAGS=1 UNCHANGED_BINARY_FLAGS=0
+make A=a CC=gcc CALL_BY_REF=1 GLOBAL_RND=1 GLOBAL_FLAGS=1 UNCHANGED_BINARY_FLAGS=0
mv libbid.a ../../gcc111libbid.a
cd ../..
( echo '#ifdef FREE42_FPTEST'; echo 'const char *readtest_lines[] = {'; tr -d '\r' < IntelRDFPMathLib20U1/TESTS/readtest.in | sed 's/^\(.*\)$/"\1",/'; echo '0 };'; echo '#endif' ) > readtest_lines.cc

@ -1,58 +0,0 @@
diff -Nuar a/gtk/Makefile b/gtk/Makefile
--- a/gtk/Makefile 2018-01-08 02:52:33.000000000 +0100
+++ b/gtk/Makefile 2018-01-13 19:40:49.059998446 +0100
@@ -15,11 +15,11 @@
# along with this program; if not, see http://www.gnu.org/licenses/.
###############################################################################
-CFLAGS = -MMD \
+CFLAGS := -MMD \
-Wall \
-Wno-parentheses \
-Wno-write-strings \
- -g \
+ -Wno-error=narrowing \
-I/usr/X11R6/include \
$(shell pkg-config --cflags gtk+-2.0) \
-DVERSION="\"$(shell cat ../VERSION)\"" \
@@ -27,21 +27,25 @@
-DDECIMAL_GLOBAL_ROUNDING=1 \
-DDECIMAL_GLOBAL_ROUNDING_ACCESS_FUNCTIONS=1 \
-DDECIMAL_GLOBAL_EXCEPTION_FLAGS=1 \
- -DDECIMAL_GLOBAL_EXCEPTION_FLAGS_ACCESS_FUNCTIONS=1
+ -DDECIMAL_GLOBAL_EXCEPTION_FLAGS_ACCESS_FUNCTIONS=1 \
+ ${CFLAGS}
-CXXFLAGS = $(CFLAGS) \
+CXXFLAGS := $(CFLAGS) \
-fno-exceptions \
-fno-rtti \
- -D_WCHAR_T_DEFINED
+ -D_WCHAR_T_DEFINED \
+ ${CXXFLAGS}
-LDFLAGS = -L/usr/X11R6/lib
-LIBS = gcc111libbid.a -lXmu $(shell pkg-config --libs gtk+-2.0)
+MYLDFLAGS = -L/usr/X11R6/lib
+LIBS = gcc111libbid.a -lX11 -ldl -lXmu $(shell pkg-config --libs gtk+-2.0)
ifeq "$(shell uname -s)" "Linux"
-LDFLAGS += -Wl,--hash-style=both
+MYLDFLAGS += -Wl,--hash-style=both
LIBS += -lpthread
endif
+MYLDFLAGS += ${LDFLAGS}
+
SRCS = shell_main.cc shell_skin.cc skins.cc keymap.cc shell_loadimage.cc \
shell_spool.cc core_main.cc core_commands1.cc core_commands2.cc \
core_commands3.cc core_commands4.cc core_commands5.cc \
@@ -83,7 +87,7 @@
endif
$(EXE): $(OBJS)
- $(CXX) -o $(EXE) $(LDFLAGS) $(OBJS) $(LIBS)
+ $(CXX) -o $(EXE) $(MYLDFLAGS) $(OBJS) $(LIBS)
$(SRCS) skin2cc.cc keymap2cc.cc skin2cc.conf: symlinks

@ -32,8 +32,8 @@ S="${WORKDIR}/${MY_PV}"
src_prepare() {
sed -i -e 's/print_gif_name\[FILENAMELEN\]/print_gif_name\[1000\]/' \
"${S}/gtk/shell_main.cc" || die
epatch "${FILESDIR}"/${P}-fix-makefile.patch
epatch "${FILESDIR}"/${P}-fix-build-intel-lib.patch
epatch "${FILESDIR}/${PN}-2.0.10-fix-makefile.patch"
epatch "${FILESDIR}/${PN}-2.0.10-fix-build-intel-lib.patch"
eapply_user
}

@ -32,8 +32,8 @@ S="${WORKDIR}/${MY_PV}"
src_prepare() {
sed -i -e 's/print_gif_name\[FILENAMELEN\]/print_gif_name\[1000\]/' \
"${S}/gtk/shell_main.cc" || die
epatch "${FILESDIR}"/${P}-fix-makefile.patch
epatch "${FILESDIR}"/${P}-fix-build-intel-lib.patch
epatch "${FILESDIR}/${PN}-2.0.10-fix-makefile.patch"
epatch "${FILESDIR}/${PN}-2.0.10-fix-build-intel-lib.patch"
eapply_user
}

@ -0,0 +1,24 @@
# Group which owns the shared socket
LXD_OPTIONS+=" --group lxd"
# Enable cpu profiling into the specified file
#LXD_OPTIONS+=" --cpuprofile /tmp/lxc_cpu_profile"
# Enable memory profiling into the specified file
#LXD_OPTIONS+=" --memprofile /tmp/lxc_mem_profile"
# Enables debug mode
#LXD_OPTIONS+=" --debug"
# For debugging, print a complete stack trace every n seconds
#LXD_OPTIONS+=" --print-goroutines 5"
# Enables verbose mode
#LXD_OPTIONS+=" --verbose"
# Logfile to log to
#LXD_OPTIONS+=" --logfile /var/log/lxd/lxd.log"

@ -0,0 +1,251 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
DESCRIPTION="Fast, dense and secure container management"
HOMEPAGE="https://linuxcontainers.org/lxd/introduction/"
EGO_PN_PARENT="github.com/lxc"
EGO_PN="${EGO_PN_PARENT}/lxd"
# Maintained with https://github.com/hsoft/gentoo-ego-vendor-update
# The "# branch" comments are there for the script, they're important.
EGO_VENDOR=(
"github.com/lxc/lxd e641ae45dc13cc27510c9d2127eece46ed9ac16b"
"github.com/CanonicalLtd/go-sqlite3 730012cee3364e7717c28f7e9b05ee6dd8684bae"
"github.com/CanonicalLtd/dqlite 9334841532709c77fc79e13a08408694e4bb3616"
"github.com/CanonicalLtd/go-grpc-sql 534b56d0c689ed437e6cff44868964d45d3ec85c"
"github.com/CanonicalLtd/raft-http e4290d0af830073ec140538e8974aa4393495ea1"
"github.com/CanonicalLtd/raft-membership 26ef52960f54c472f52fb3701f19f25319e1032e"
"github.com/CanonicalLtd/raft-test 22441a088d5630ddd2e971eae68074d2b645f1b7"
"github.com/dustinkirkland/golang-petname d3c2ba80e75eeef10c5cf2fc76d2c809637376b3"
"github.com/flosch/pongo2 97eac295f74b5fbb7fd3113e35f4ccf3c816e389"
"github.com/juju/errors c7d06af17c68cd34c835053720b21f6549d9b0ee"
"github.com/juju/idmclient 15392b0e99abe5983297959c737b8d000e43b34c"
"github.com/juju/httprequest 77d36ac4b71a6095506c0617d5881846478558cb"
"github.com/juju/utils d18e608d01400189bcda3e2669505cbd30e9dda9"
"github.com/juju/loggo 7f1609ff1f3fcf3519ed62ccaaa9e609ea287838"
"github.com/juju/webbrowser 54b8c57083b4afb7dc75da7f13e2967b2606a507"
"github.com/juju/gomaasapi 663f786f595ba1707f56f62f7f4f2284c47c0f1d"
"github.com/juju/schema e4f08199aa80d3194008c0bd2e14ef5edc0e6be6"
"github.com/juju/version b64dbd566305c836274f0268fa59183a52906b36"
"github.com/juju/persistent-cookiejar d5e5a8405ef9633c84af42fbcc734ec8dd73c198"
"github.com/juju/go4 40d72ab9641a2a8c36a9c46a51e28367115c8e59"
"github.com/juju/testing 43f926548f91d55be6bae26ecb7d2386c64e887c"
"github.com/juju/retry 1998d01ba1c3eeb4a4728c4a50660025b2fe7c8f"
"github.com/golang/protobuf e09c5db296004fbe3f74490e84dcd62c3c5ddb1b"
"github.com/golang/glog 23def4e6c14b4da8ac2ed8007337bc5eb5007998"
"github.com/gorilla/mux 4dbd923b0c9e99ff63ad54b0e9705ff92d3cdb06"
"github.com/gorilla/websocket eb925808374e5ca90c83401a40d711dc08c0c0f6"
"github.com/julienschmidt/httprouter d1898390779332322e6b5ca5011da4bf249bb056"
"github.com/rogpeppe/fastuuid 6724a57986aff9bff1a1770e9347036def7c89f6"
"github.com/pkg/errors 816c9085562cd7ee03e7f8188a1cfd942858cded"
"github.com/ryanfaerman/fsm 3dc1bc0980272fd56d81167a48a641dab8356e29"
"github.com/hashicorp/raft a3fb4581fb07b16ecf1c3361580d4bdb17de9d98"
"github.com/hashicorp/go-immutable-radix 7f3cd4390caab3250a57f30efdb2a65dd7649ecf"
"github.com/hashicorp/golang-lru 0fb14efe8c47ae851c0034ed7a448854d3d34cf3"
"github.com/hashicorp/go-msgpack fa3f63826f7c23912c15263591e65d54d080b458"
"github.com/hashicorp/raft-boltdb 6e5ba93211eaf8d9a2ad7e41ffad8c6f160f9fe3"
"github.com/armon/go-metrics 783273d703149aaeb9897cf58613d5af48861c25"
"github.com/stretchr/testify c679ae2cc0cb27ec3293fea7e254e47386f05d69"
"github.com/boltdb/bolt fd01fc79c553a8e99d512a07e8e0c63d4a3ccfc5"
"github.com/mattn/go-colorable efa589957cd060542a26d2dd7832fd6a6c6c3ade"
"github.com/mattn/go-isatty 6ca4dbf54d38eea1a992b3c722a76a5d1c4cb25c"
"github.com/mattn/go-runewidth a9d6d1e4dc51df2130326793d49971f238839169"
"github.com/syndtr/gocapability 33e07d32887e1e06b7c025f27ce52f62c7990bc0"
"github.com/pborman/uuid c65b2f87fee37d1c7854c9164a450713c28d50cd"
"github.com/spf13/cobra 4dab30cb33e6633c33c787106bafbfbfdde7842d"
"github.com/spf13/pflag 1cd4a0c365d95803411bec89fb7b76bade17053b"
"github.com/cpuguy83/go-md2man 48d8747a2ca13185e7cc8efe6e9fc196a83f71a5"
"github.com/gosexy/gettext 74466a0a0c4a62fea38f44aa161d4bbfbe79dd6b"
"github.com/frankban/quicktest 536e76da5efc46dc247088384c2d2cea7da968aa"
"github.com/google/go-cmp 5411ab924f9ffa6566244a9e504bc347edacffd3"
"github.com/kr/pretty cfb55aafdaf3ec08f0db22699ab822c50091b1c4"
"github.com/kr/text 7cafcd837844e784b526369c9bce262804aebc60"
"github.com/olekukonko/tablewriter b8a9be070da40449e501c3c4730a889e42d87a9e"
"google.golang.org/genproto ab0870e398d5dd054b868c0db1481ab029b9a9f2 github.com/google/go-genproto"
"google.golang.org/grpc 2dfcc11f7a6d4791ba627222d783eedf268b4b95 github.com/grpc/grpc-go"
"golang.org/x/crypto 12892e8c234f4fe6f6803f052061de9057903bb2 github.com/golang/crypto"
"golang.org/x/net b68f30494add4df6bd8ef5e82803f308e7f7c59c github.com/golang/net"
"golang.org/x/sys 378d26f46672a356c46195c28f61bdb4c0a781dd github.com/golang/sys"
"golang.org/x/text ece95c760240037f89ebcbdd7155ac8cb52e38fa github.com/golang/text"
"gopkg.in/errgo.v1 442357a80af5c6bf9b6d51ae791a39c3421004f3 github.com/go-errgo/errgo" # branch v1
"gopkg.in/juju/names.v2 54f00845ae470a362430a966fe17f35f8784ac92 github.com/juju/names" # branch v2
"gopkg.in/juju/environschema.v1 7359fc7857abe2b11b5b3e23811a9c64cb6b01e0 github.com/juju/environschema" # branch v1
"gopkg.in/yaml.v2 5420a8b6744d3b0345ab293f6fcba19c978f1183 github.com/go-yaml/yaml" # branch v2.2.1
"gopkg.in/macaroon-bakery.v2 94012773d2874a067572bd16d7d11ae02968b47b github.com/go-macaroon-bakery/macaroon-bakery" # branch v2.0.1
"gopkg.in/macaroon.v2 bed2a428da6e56d950bed5b41fcbae3141e5b0d0 github.com/go-macaroon/macaroon" # branch v2.0.0
"gopkg.in/httprequest.v1 1a21782420ea13c3c6fb1d03578f446b3248edb1 github.com/go-httprequest/httprequest" # branch v1.1.1
"gopkg.in/lxc/go-lxc.v2 2660c429a942a4a21455765c7046dde612c1baa7 github.com/lxc/go-lxc" # branch v2
"gopkg.in/tomb.v2 d5d1b5820637886def9eef33e03a27a9f166942c github.com/go-tomb/tomb" # branch v2
"gopkg.in/mgo.v2 3f83fa5005286a7fe593b055f0d7771a7dce4655 github.com/go-mgo/mgo" # branch v2
"gopkg.in/retry.v1 2d7c7c65cc71d024968d9ff4385d5e7ad3a83fcc github.com/go-retry/retry" # branch v1.0.0
"gopkg.in/check.v1 20d25e2804050c1cd24a7eea1e7a6447dd0e74ec github.com/go-check/check" # branch v1
)
ARCHIVE_URI="https://${EGO_PN}/archive/${P}.tar.gz -> ${P}.tar.gz"
LICENSE="Apache-2.0 BSD BSD-2 LGPL-3 MIT MPL-2.0"
SLOT="0"
KEYWORDS="~amd64"
IUSE="+daemon +ipv6 +dnsmasq nls test"
inherit bash-completion-r1 linux-info systemd user golang-vcs-snapshot
SRC_URI="${ARCHIVE_URI}
${EGO_VENDOR_URI}"
DEPEND="
>=dev-lang/go-1.7.1
dev-libs/protobuf
nls? ( sys-devel/gettext )
test? (
app-misc/jq
dev-db/sqlite
net-misc/curl
sys-devel/gettext
)
"
RDEPEND="
daemon? (
app-arch/xz-utils
>=app-emulation/lxc-2.0.7[seccomp]
dnsmasq? (
net-dns/dnsmasq[dhcp,ipv6?]
)
net-misc/rsync[xattr]
sys-apps/iproute2[ipv6?]
sys-fs/squashfs-tools
virtual/acl
)
"
CONFIG_CHECK="
~BRIDGE
~DUMMY
~IP6_NF_NAT
~IP6_NF_TARGET_MASQUERADE
~IPV6
~IP_NF_NAT
~IP_NF_TARGET_MASQUERADE
~MACVLAN
~NETFILTER_XT_MATCH_COMMENT
~NET_IPGRE
~NET_IPGRE_DEMUX
~NET_IPIP
~NF_NAT_MASQUERADE_IPV4
~NF_NAT_MASQUERADE_IPV6
~VXLAN
"
ERROR_BRIDGE="BRIDGE: needed for network commands"
ERROR_DUMMY="DUMMY: needed for network commands"
ERROR_IP6_NF_NAT="IP6_NF_NAT: needed for network commands"
ERROR_IP6_NF_TARGET_MASQUERADE="IP6_NF_TARGET_MASQUERADE: needed for network commands"
ERROR_IPV6="IPV6: needed for network commands"
ERROR_IP_NF_NAT="IP_NF_NAT: needed for network commands"
ERROR_IP_NF_TARGET_MASQUERADE="IP_NF_TARGET_MASQUERADE: needed for network commands"
ERROR_MACVLAN="MACVLAN: needed for network commands"
ERROR_NETFILTER_XT_MATCH_COMMENT="NETFILTER_XT_MATCH_COMMENT: needed for network commands"
ERROR_NET_IPGRE="NET_IPGRE: needed for network commands"
ERROR_NET_IPGRE_DEMUX="NET_IPGRE_DEMUX: needed for network commands"
ERROR_NET_IPIP="NET_IPIP: needed for network commands"
ERROR_NF_NAT_MASQUERADE_IPV4="NF_NAT_MASQUERADE_IPV4: needed for network commands"
ERROR_NF_NAT_MASQUERADE_IPV6="NF_NAT_MASQUERADE_IPV6: needed for network commands"
ERROR_VXLAN="VXLAN: needed for network commands"
PATCHES=(
"${FILESDIR}/${PN}-dont-go-get.patch"
)
src_prepare() {
default_src_prepare
# Examples in go-lxc make our build fail.
rm -rf "${S}/src/${EGO_PN}/vendor/gopkg.in/lxc/go-lxc.v2/examples" || die
}
src_compile() {
export GOPATH="${S}"
cd "${S}/src/${EGO_PN}" || die "Failed to change to deep src dir"
tmpgoroot="${T}/goroot"
if use daemon; then
# Build binaries
emake
else
# build client tool
emake client
fi
use nls && emake build-mo
}
src_test() {
if use daemon; then
export GOPATH="${S}"
cd "${S}/src/${EGO_PN}" || die "Failed to change to deep src dir"
emake check
else
einfo "No tests to run for client-only builds"
fi
}
src_install() {
dobin bin/lxc
if use daemon; then
dosbin bin/lxd
dobin bin/fuidshift
fi
cd "src/${EGO_PN}" || die "can't cd into ${S}/src/${EGO_PN}"
if use nls; then
domo po/*.mo
fi
if use daemon; then
newinitd "${FILESDIR}"/${PN}.initd lxd
newconfd "${FILESDIR}"/${PN}.confd.1 lxd
systemd_newunit "${FILESDIR}"/${PN}.service ${PN}.service
fi
newbashcomp scripts/bash/lxd-client lxc
dodoc AUTHORS README.md doc/*
}
pkg_postinst() {
einfo
einfo "Consult https://wiki.gentoo.org/wiki/LXD for more information,"
einfo "including a Quick Start."
# The messaging below only applies to daemon installs
use daemon || return 0
# The control socket will be owned by (and writeable by) this group.
enewgroup lxd
# Ubuntu also defines an lxd user but it appears unused (the daemon
# must run as root)
einfo
einfo "Though not strictly required, some features are enabled at run-time"
einfo "when the relevant helper programs are detected:"
einfo "- sys-apps/apparmor"
einfo "- sys-fs/btrfs-progs"
einfo "- sys-fs/lvm2"
einfo "- sys-fs/lxcfs"
einfo "- sys-fs/zfs"
einfo "- sys-process/criu"
einfo
einfo "Since these features can't be disabled at build-time they are"
einfo "not USE-conditional."
einfo
einfo "Networks with bridge.mode=fan are unsupported due to requiring"
einfo "a patched kernel and iproute2."
}

@ -10,8 +10,8 @@
<name>Virgil Dupras</name>
</maintainer>
<maintainer type="project">
<email>proxy-maint@gentoo.org</email>
<name>Proxy Maintainers</name>
<email>virtualization@gentoo.org</email>
<name>Gentoo Virtualization Project</name>
</maintainer>
<longdescription>
By combining the speed and density of containers with

@ -3,7 +3,5 @@ DIST lwip-1.3.0.tar.gz 398933 BLAKE2B 3567a593eec3d247213daaaab57d9456c9cae50329
DIST newlib-1.16.0.tar.gz 12024353 BLAKE2B 26d3308148fb99baf8ad02eee4cc699cfac690100ea63aaa4be03b86d12dade238478342514bd083cbc3d27964ac42eb8dae3873fdac5ff2c593fc4fb39b2309 SHA512 40eb96bbc6736a16b6399e0cdb73e853d0d90b685c967e77899183446664d64570277a633fdafdefc351b46ce210a99115769a1d9f47ac749d7e82837d4d1ac3
DIST pciutils-2.2.9.tar.bz2 212265 BLAKE2B 014b664e90c64e7255c9e21fc25a2cc60d57f47ce282fc0331a0481a460b237783bd3774dd0689e1596d4a0be0d2889faad904da01a6f02147464bce1d1b1bc0 SHA512 2b3d98d027e46d8c08037366dde6f0781ca03c610ef2b380984639e4ef39899ed8d8b8e4cd9c9dc54df101279b95879bd66bfd4d04ad07fef41e847ea7ae32b5
DIST polarssl-1.1.4-gpl.tgz 611340 BLAKE2B 613da06dda9e4b86db5a4d616a0a0afee98c907c3c6b352eed3d9e500fc5739e62eb4f6fc32ff02579c6a6de9bd49fcd2c8bd8b2d158a5050cbaa82118d61ef0 SHA512 88da614e4d3f4409c4fd3bb3e44c7587ba051e3fed4e33d526069a67e8180212e1ea22da984656f50e290049f60ddca65383e5983c0f8884f648d71f698303ad
DIST xen-4.8.2.tar.gz 22522336 BLAKE2B 2c9da971622b4e52fe78fa029107bb1c5f945a63605406493df607c410c6f2a8c2cdb38b1eb30c1bc1c8bc6e5620efad977c3ba55e04c579c01d51f0104afcce SHA512 7805531f73d23ecfff3439770e62d387f4254a444875670d53a0a739323e5d4d8f8fcc478f8936ee1ae8aff3e0229549e47c01c606365a8ce060dd5c503e87da
DIST xen-4.9.0.tar.gz 23361741 BLAKE2B 1cfebb791ca5e51eda9b86a5d98e0883fab1554f5ac805fc065916fbbd3695e6b0f11ca75935a8f973735cc8dd83e38fe4a670d8489010be865be49d8fc1a341 SHA512 97f8075c49ef9ec0adbe95106c0cff4f9379578fd568777697565476c3fd948335d72ddcacf8be65fd9db219c0a35dcdc007f355f7e5874dd950fd4c0a0f966f
DIST xen-4.9.1.tar.gz 23368303 BLAKE2B 4cfddb351c9a4aa08227138dc1afa921f3d1880048f897428226da38eff9470cd81ae9896f174583048dad0ba8d5c1426df58b029115ba1623366d1980630c0d SHA512 9d22f0aa5dcd01a1c105d17c14bce570cc597e884ddb9b4a46b80a72f647625b76ae5213cede423d0458c14e1906983595a9269bb6e6ff2e9e7e4dea840f4274
DIST zlib-1.2.3.tar.gz 496597 BLAKE2B 603020b70cd52b83e48bde420b86e2acfd29d69bf7476eecbeeb07d1b8bcab703d2cbd3eab77772990bddb8c268f13594592ce985798d49e2d6ba25104d49f22 SHA512 021b958fcd0d346c4ba761bcf0cc40f3522de6186cf5a0a6ea34a70504ce9622b1c2626fce40675bc8282cf5f5ade18473656abc38050f72f5d6480507a2106e

@ -1,161 +0,0 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
PYTHON_COMPAT=( python2_7 )
PYTHON_REQ_USE='xml,threads'
inherit eutils flag-o-matic multilib python-single-r1 toolchain-funcs
XEN_EXTFILES_URL="http://xenbits.xensource.com/xen-extfiles"
LIBPCI_URL=ftp://atrey.karlin.mff.cuni.cz/pub/linux/pci
GRUB_URL=mirror://gnu-alpha/grub
UPSTREAM_VER=
[[ -n ${UPSTREAM_VER} ]] && \
UPSTREAM_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${P/-tools/}-upstream-patches-${UPSTREAM_VER}.tar.xz"
SRC_URI="
https://downloads.xenproject.org/release/xen/${PV}/xen-${PV}.tar.gz
$GRUB_URL/grub-0.97.tar.gz
$XEN_EXTFILES_URL/zlib-1.2.3.tar.gz
$LIBPCI_URL/pciutils-2.2.9.tar.bz2
$XEN_EXTFILES_URL/lwip-1.3.0.tar.gz
$XEN_EXTFILES_URL/newlib/newlib-1.16.0.tar.gz
$XEN_EXTFILES_URL/polarssl-1.1.4-gpl.tgz
${UPSTREAM_PATCHSET_URI}"
S="${WORKDIR}/xen-${PV}"
DESCRIPTION="allows to boot Xen domU kernels from a menu.lst laying inside guest filesystem"
HOMEPAGE="https://www.xenproject.org"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="amd64 x86"
IUSE="custom-cflags"
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
DEPEND="sys-devel/gettext
sys-devel/bin86
sys-apps/texinfo
x11-libs/pixman"
RDEPEND="${PYTHON_DEPS}
>=app-emulation/xen-tools-${PV}"
pkg_setup() {
python-single-r1_pkg_setup
}
retar-externals() {
# Purely to unclutter src_prepare
local set="grub-0.97.tar.gz lwip-1.3.0.tar.gz newlib-1.16.0.tar.gz polarssl-1.1.4-gpl.tgz zlib-1.2.3.tar.gz"
# epatch can't patch in $WORKDIR, requires a sed; Bug #455194. Patchable, but sed informative
sed -e s':AR=${AR-"ar rc"}:AR=${AR-"ar"}:' \
-i "${WORKDIR}"/zlib-1.2.3/configure
sed -e 's:^AR=ar rc:AR=ar:' \
-e s':$(AR) $@:$(AR) rc $@:' \
-i "${WORKDIR}"/zlib-1.2.3/{Makefile,Makefile.in}
einfo "zlib Makefile edited"
cd "${WORKDIR}"
tar czp zlib-1.2.3 -f zlib-1.2.3.tar.gz
tar czp grub-0.97 -f grub-0.97.tar.gz
tar czp lwip -f lwip-1.3.0.tar.gz
tar czp newlib-1.16.0 -f newlib-1.16.0.tar.gz
tar czp polarssl-1.1.4 -f polarssl-1.1.4-gpl.tgz
mv $set "${S}"/stubdom/
einfo "tarballs moved to source"
}
src_prepare() {
# Upstream's patchset
if [[ -n ${UPSTREAM_VER} ]]; then
einfo "Try to apply Xen Upstream patch set"
EPATCH_SUFFIX="patch" \
EPATCH_FORCE="yes" \
EPATCH_OPTS="-p1" \
epatch "${WORKDIR}"/patches-upstream
fi
# if the user *really* wants to use their own custom-cflags, let them
if use custom-cflags; then
einfo "User wants their own CFLAGS - removing defaults"
# try and remove all the default custom-cflags
find "${S}" -name Makefile -o -name Rules.mk -o -name Config.mk -exec sed \
-e 's/CFLAGS\(.*\)=\(.*\)-O3\(.*\)/CFLAGS\1=\2\3/' \
-e 's/CFLAGS\(.*\)=\(.*\)-march=i686\(.*\)/CFLAGS\1=\2\3/' \
-e 's/CFLAGS\(.*\)=\(.*\)-fomit-frame-pointer\(.*\)/CFLAGS\1=\2\3/' \
-e 's/CFLAGS\(.*\)=\(.*\)-g3*\s\(.*\)/CFLAGS\1=\2 \3/' \
-e 's/CFLAGS\(.*\)=\(.*\)-O2\(.*\)/CFLAGS\1=\2\3/' \
-i {} \;
fi
# Patch the unmergeable newlib, fix most of the leftover gcc QA issues
cp "${FILESDIR}"/newlib-implicits.patch stubdom || die
# Patch stubdom/Makefile to patch insource newlib & prevent internal downloading
epatch "${FILESDIR}"/${PN/-pvgrub/}-4.3-externals.patch
# fix jobserver in Makefile
epatch "${FILESDIR}"/${PN}-4.8-jserver.patch
#Substitute for internal downloading. pciutils copied only due to the only .bz2
cp "${DISTDIR}"/pciutils-2.2.9.tar.bz2 ./stubdom/ || die "pciutils not copied to stubdom"
retar-externals || die "re-tar procedure failed"
default
}
src_configure() {
local myconf="--prefix=${PREFIX}/usr \
--libdir=${PREFIX}/usr/$(get_libdir) \
--libexecdir=${PREFIX}/usr/libexec \
--disable-werror \
--disable-xen"
econf ${myconf}
}
src_compile() {
use custom-cflags || unset CFLAGS
if test-flag-CC -fno-strict-overflow; then
append-flags -fno-strict-overflow
fi
emake CC="$(tc-getCC)" LD="$(tc-getLD)" AR="$(tc-getAR)" -C tools/include
if use x86; then
emake CC="$(tc-getCC)" LD="$(tc-getLD)" AR="$(tc-getAR)" \
XEN_TARGET_ARCH="x86_32" -C stubdom pv-grub
elif use amd64; then
emake CC="$(tc-getCC)" LD="$(tc-getLD)" AR="$(tc-getAR)" \
XEN_TARGET_ARCH="x86_64" -C stubdom pv-grub
if has_multilib_profile; then
multilib_toolchain_setup x86
emake CC="$(tc-getCC)" AR="$(tc-getAR)" \
XEN_TARGET_ARCH="x86_32" -C stubdom pv-grub
fi
fi
}
src_install() {
if use x86; then
emake XEN_TARGET_ARCH="x86_32" DESTDIR="${D}" -C stubdom install-grub
fi
if use amd64; then
emake XEN_TARGET_ARCH="x86_64" DESTDIR="${D}" -C stubdom install-grub
if has_multilib_profile; then
emake XEN_TARGET_ARCH="x86_32" DESTDIR="${D}" -C stubdom install-grub
fi
fi
}
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"
}

@ -1,161 +0,0 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
PYTHON_COMPAT=( python2_7 )
PYTHON_REQ_USE='xml,threads'
inherit eutils flag-o-matic multilib python-single-r1 toolchain-funcs
XEN_EXTFILES_URL="http://xenbits.xensource.com/xen-extfiles"
LIBPCI_URL=ftp://atrey.karlin.mff.cuni.cz/pub/linux/pci
GRUB_URL=mirror://gnu-alpha/grub
UPSTREAM_VER=
[[ -n ${UPSTREAM_VER} ]] && \
UPSTREAM_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${P/-tools/}-upstream-patches-${UPSTREAM_VER}.tar.xz"
SRC_URI="
https://downloads.xenproject.org/release/xen/${PV}/xen-${PV}.tar.gz
$GRUB_URL/grub-0.97.tar.gz
$XEN_EXTFILES_URL/zlib-1.2.3.tar.gz
$LIBPCI_URL/pciutils-2.2.9.tar.bz2
$XEN_EXTFILES_URL/lwip-1.3.0.tar.gz
$XEN_EXTFILES_URL/newlib/newlib-1.16.0.tar.gz
$XEN_EXTFILES_URL/polarssl-1.1.4-gpl.tgz
${UPSTREAM_PATCHSET_URI}"
S="${WORKDIR}/xen-${PV}"
DESCRIPTION="allows to boot Xen domU kernels from a menu.lst laying inside guest filesystem"
HOMEPAGE="https://www.xenproject.org"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="custom-cflags"
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
DEPEND="sys-devel/gettext
sys-devel/bin86
sys-apps/texinfo
x11-libs/pixman"
RDEPEND="${PYTHON_DEPS}
>=app-emulation/xen-tools-${PV}"
pkg_setup() {
python-single-r1_pkg_setup
}
retar-externals() {
# Purely to unclutter src_prepare
local set="grub-0.97.tar.gz lwip-1.3.0.tar.gz newlib-1.16.0.tar.gz polarssl-1.1.4-gpl.tgz zlib-1.2.3.tar.gz"
# epatch can't patch in $WORKDIR, requires a sed; Bug #455194. Patchable, but sed informative
sed -e s':AR=${AR-"ar rc"}:AR=${AR-"ar"}:' \
-i "${WORKDIR}"/zlib-1.2.3/configure
sed -e 's:^AR=ar rc:AR=ar:' \
-e s':$(AR) $@:$(AR) rc $@:' \
-i "${WORKDIR}"/zlib-1.2.3/{Makefile,Makefile.in}
einfo "zlib Makefile edited"
cd "${WORKDIR}"
tar czp zlib-1.2.3 -f zlib-1.2.3.tar.gz
tar czp grub-0.97 -f grub-0.97.tar.gz
tar czp lwip -f lwip-1.3.0.tar.gz
tar czp newlib-1.16.0 -f newlib-1.16.0.tar.gz
tar czp polarssl-1.1.4 -f polarssl-1.1.4-gpl.tgz
mv $set "${S}"/stubdom/
einfo "tarballs moved to source"
}
src_prepare() {
# Upstream's patchset
if [[ -n ${UPSTREAM_VER} ]]; then
einfo "Try to apply Xen Upstream patch set"
EPATCH_SUFFIX="patch" \
EPATCH_FORCE="yes" \
EPATCH_OPTS="-p1" \
epatch "${WORKDIR}"/patches-upstream
fi
# if the user *really* wants to use their own custom-cflags, let them
if use custom-cflags; then
einfo "User wants their own CFLAGS - removing defaults"
# try and remove all the default custom-cflags
find "${S}" -name Makefile -o -name Rules.mk -o -name Config.mk -exec sed \
-e 's/CFLAGS\(.*\)=\(.*\)-O3\(.*\)/CFLAGS\1=\2\3/' \
-e 's/CFLAGS\(.*\)=\(.*\)-march=i686\(.*\)/CFLAGS\1=\2\3/' \
-e 's/CFLAGS\(.*\)=\(.*\)-fomit-frame-pointer\(.*\)/CFLAGS\1=\2\3/' \
-e 's/CFLAGS\(.*\)=\(.*\)-g3*\s\(.*\)/CFLAGS\1=\2 \3/' \
-e 's/CFLAGS\(.*\)=\(.*\)-O2\(.*\)/CFLAGS\1=\2\3/' \
-i {} \;
fi
# Patch the unmergeable newlib, fix most of the leftover gcc QA issues
cp "${FILESDIR}"/newlib-implicits.patch stubdom || die
# Patch stubdom/Makefile to patch insource newlib & prevent internal downloading
epatch "${FILESDIR}"/${PN/-pvgrub/}-4.3-externals.patch
# fix jobserver in Makefile
epatch "${FILESDIR}"/${PN}-4.8-jserver.patch
#Substitute for internal downloading. pciutils copied only due to the only .bz2
cp "${DISTDIR}"/pciutils-2.2.9.tar.bz2 ./stubdom/ || die "pciutils not copied to stubdom"
retar-externals || die "re-tar procedure failed"
default
}
src_configure() {
local myconf="--prefix=${PREFIX}/usr \
--libdir=${PREFIX}/usr/$(get_libdir) \
--libexecdir=${PREFIX}/usr/libexec \
--disable-werror \
--disable-xen"
econf ${myconf}
}
src_compile() {
use custom-cflags || unset CFLAGS
if test-flag-CC -fno-strict-overflow; then
append-flags -fno-strict-overflow
fi
emake CC="$(tc-getCC)" LD="$(tc-getLD)" AR="$(tc-getAR)" -C tools/include
if use x86; then
emake CC="$(tc-getCC)" LD="$(tc-getLD)" AR="$(tc-getAR)" \
XEN_TARGET_ARCH="x86_32" -C stubdom pv-grub
elif use amd64; then
emake CC="$(tc-getCC)" LD="$(tc-getLD)" AR="$(tc-getAR)" \
XEN_TARGET_ARCH="x86_64" -C stubdom pv-grub
if has_multilib_profile; then
multilib_toolchain_setup x86
emake CC="$(tc-getCC)" AR="$(tc-getAR)" \
XEN_TARGET_ARCH="x86_32" -C stubdom pv-grub
fi
fi
}
src_install() {
if use x86; then
emake XEN_TARGET_ARCH="x86_32" DESTDIR="${D}" -C stubdom install-grub
fi
if use amd64; then
emake XEN_TARGET_ARCH="x86_64" DESTDIR="${D}" -C stubdom install-grub
if has_multilib_profile; then
emake XEN_TARGET_ARCH="x86_32" DESTDIR="${D}" -C stubdom install-grub
fi
fi
}
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"
}

@ -1,4 +1,4 @@
# Copyright 1999-2017 Gentoo Foundation
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
@ -32,7 +32,7 @@ DESCRIPTION="allows to boot Xen domU kernels from a menu.lst laying inside guest
HOMEPAGE="https://www.xenproject.org"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~x86"
KEYWORDS="amd64 ~x86"
IUSE="custom-cflags"
REQUIRED_USE="${PYTHON_REQUIRED_USE}"

@ -1,16 +1,10 @@
DIST ovmf-20151110.tar.bz2 27518370 BLAKE2B c4ba51e59ca3f597d75639a792b1f307a70dc6127917306e6ce182a76646435bec8006f7db9ac5c580e0ad79465a2b2902cffa90139d367c89d16e28280a978b SHA512 dda185af2fc0b9a8d5fc7e1e96db6aa31807782fe77d38491896164d125c30d2277db3d71a7dce7bbd569723b344b97dfebbc78ddddca0a095721f6b1ae3a1d3
DIST ovmf-20170321.tar.xz 22141096 BLAKE2B 79e991c8f9deb297865c319e88b6e6d46b1d08067d3fd639c83f2a379670779ecc60c74c2671ea4eb4a6659fe08ac2d7d4ff337b010b42a908a50829a2d18eeb SHA512 f65dabde3df967224e2072817211786ee4fc3994ee31f8f9d6f67fd74e3479e1da459c720169dd81020cdc1777e4600e531bb124b4625c2ded42c6005bdc802a
DIST seabios-1.10.0.tar.gz 588213 BLAKE2B 254eb4572a1dac06020a545820efb53a130a027aaab035cd916009b424475f89bd151f82f1bc5103c01c4657d09da3219d2fbcc7728add473011dcfc7bff7410 SHA512 f1b83ce37b59070b488e19f98c95ca9f413cf4969663331b631c3ccb884c90b2db793d32a779ef05cead538c2fd123be4b73391ad2fa20c900a1f14237178d8c
DIST xen-4.10.0-upstream-patches-0.tar.xz 70884 BLAKE2B 9a27e7989486ba3ba59548de356384527cc5b78e63b6ed042506e6534e488272369f021cd2daa516820313c3fe18625a5864794ae0806e7018b8ad28b0a294b1 SHA512 e64bf1d30d24e922c60c3b518a4de7874b43cc695134b4cdd65f6d95ae9ae579c521fab13ca82409fde55e43815d072c3194997e2bda106204cbf329e93a0a00
DIST xen-4.10.0.tar.gz 24618123 BLAKE2B 009faa980f9734525c137d525e626bfa3443c285aeb6b4af91bb2c32a2e98376ded0b1114b541d11e2d4353f4f588d58e8add5b1e0d7de2fe3399d4687c5bfae SHA512 5a37935c382f9cfe3641a35c3be0ba11689bca10c7d3c2401963513e3a834ee8d0c8a0ddcf3716dbf0a795aea1bab78caf19acf1272e5e054bf012cfa06a4690
DIST xen-4.8.2-upstream-patches-2.tar.xz 38852 BLAKE2B cbc7bad4703fabd05b703c66268df0670e2ae97b77007895dceaf6465b12a2f9fbe3773c7735b307427ad18c61711b20beb7f3ae6b1f1b8b5efda2a847fec0ec SHA512 536823eabf03e92585a8c5cde90ce502672dd1ec080b28b39411d6a778b899436a57bfb633f11c94d48d2f963848b7771e469f5ea53e84b580976f631f69cc5d
DIST xen-4.8.2.tar.gz 22522336 BLAKE2B 2c9da971622b4e52fe78fa029107bb1c5f945a63605406493df607c410c6f2a8c2cdb38b1eb30c1bc1c8bc6e5620efad977c3ba55e04c579c01d51f0104afcce SHA512 7805531f73d23ecfff3439770e62d387f4254a444875670d53a0a739323e5d4d8f8fcc478f8936ee1ae8aff3e0229549e47c01c606365a8ce060dd5c503e87da
DIST xen-4.9.0-upstream-patches-0.tar.xz 58780 BLAKE2B 6d12a5a5bb7d2be7ca6bb8636648ee219c9526dd34086c929d8cd32d096d2454d6cb499d459b436f228fa49f42ef3a1f5fbe9b5c84557e4054565a9edc0daad6 SHA512 98c601d791661a306e3dce5befb37b80de8a71cdd1759f3da00b199d48e3b9468efd1332e26ae044ad616b41a02771ad07a1c96972103b7e0aa39b93fb556999
DIST xen-4.9.0.tar.gz 23361741 BLAKE2B 1cfebb791ca5e51eda9b86a5d98e0883fab1554f5ac805fc065916fbbd3695e6b0f11ca75935a8f973735cc8dd83e38fe4a670d8489010be865be49d8fc1a341 SHA512 97f8075c49ef9ec0adbe95106c0cff4f9379578fd568777697565476c3fd948335d72ddcacf8be65fd9db219c0a35dcdc007f355f7e5874dd950fd4c0a0f966f
DIST xen-4.9.1-upstream-patches-1.tar.xz 24592 BLAKE2B 774c5219d6c14d729358e790d880a1a31fb4cda741e54e71879bff164e79bafbd8492eb8bccb7becdf7a2f9605e71266bb4fc15848deff8f9028ed7f8844f915 SHA512 edbc7cad2f6f8a5c7e8aac8efd5454428aa25e0e13018438f78c7f401cfb9173345267e16c7a5dfa78066a952980b172976409a0c63162094b7f507058e712ed
DIST xen-4.9.1-upstream-patches-2.tar.xz 84228 BLAKE2B 3b98cdb1202d4c9817dd1919b9dc5d4c06510d3be2c077b2e41334928bca07c65a9d8a421fc2a1ae3b806e69f7b61334f7c54d48952c98192ece4b5826539df8 SHA512 673520bff88fa401e1d1c7accc8d3650d4d74a9e52bc7195cfcb5335226c69ef0230e7db719fd97ce6df2f5198646ae0fbccc6f812d7e9ccd38a6eef359d287c
DIST xen-4.9.1.tar.gz 23368303 BLAKE2B 4cfddb351c9a4aa08227138dc1afa921f3d1880048f897428226da38eff9470cd81ae9896f174583048dad0ba8d5c1426df58b029115ba1623366d1980630c0d SHA512 9d22f0aa5dcd01a1c105d17c14bce570cc597e884ddb9b4a46b80a72f647625b76ae5213cede423d0458c14e1906983595a9269bb6e6ff2e9e7e4dea840f4274
DIST xen-gentoo-patches-10.tar.xz 27876 BLAKE2B 8efece8548a046b47c04e5b9354ca8bdff55affd6c6bc67315ac7536778fbaa183d346e0ff83e365030df2433bddf845188a1c3fb8feaea2e93d5ba0dd1c779a SHA512 2033f4cb671971c73841cfaa7eb46623c37778c5746b47302eee252c4af287ccbeb8d1884ffdf32cd97a38cd7785257d56f13ef20d4c03dc0fb1cb196dc04ece
DIST xen-gentoo-patches-12.tar.xz 28188 BLAKE2B 75f565d52e75d4f68d7a1be88a79e7cefe82350ca1f4852ecdb79137549d73ef1ffb665bac998956a6f180cde6faeb9a11ec1f5442c8ae53c7cbd869318ef315 SHA512 4e1ebbd244670d3a4171fd93eda7eb14deae3e3ad45b3a85c015696ff0a86b69156f24ee428d6c92b7be426938997cec2fab031ecb5b03ad26a38451523882de
DIST xen-ovmf-patches-2.tar.xz 4344 BLAKE2B 1514c89dcba05c84281e9d46ec5c3e9e946ea777dcbe64d1d7689298e187aac2c9a5febf407d79bdb3ebe47563972ea66e0f5204590c5abc98df9cf24549b92d SHA512 0bdc83029a01b613f5c1ca029bd45aebe211c332f09db91a0cc7d6b6f85a81dbbfdc20c62f0d20e973ee41b155a6551a4fad518cb792e1d508bf070e23d6a1d3
DIST xen-ovmf-patches-3.tar.xz 4208 BLAKE2B 0df8f85667a33c91cbfd86c59aec2ae65eca892b45d66eed76f793a52e2748989bc2785861f8bfdf94235ef7a6c0be6572c6e6cce9695469e40f0facd0ce3947 SHA512 abe001053ca702138bbcdd6bea14e2daae5c785f862d6a15001ca894c8ed8617f0c5dc439c6f54a41433b988acf57c71911af1db074aa76732c39d98622a3b5b

@ -1,459 +0,0 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
PYTHON_COMPAT=( python2_7 )
PYTHON_REQ_USE='ncurses,xml,threads'
inherit bash-completion-r1 eutils flag-o-matic multilib python-single-r1 toolchain-funcs versionator
MY_PV=${PV/_/-}
MAJOR_V="$(get_version_component_range 1-2)"
if [[ $PV == *9999 ]]; then
inherit git-r3
KEYWORDS=""
REPO="xen.git"
EGIT_REPO_URI="git://xenbits.xen.org/${REPO}"
S="${WORKDIR}/${REPO}"
else
KEYWORDS="amd64 ~arm ~arm64 x86"
UPSTREAM_VER=2
SECURITY_VER=
# xen-tools's gentoo patches tarball
GENTOO_VER=10
# xen-tools's gentoo patches version which apply to this specific ebuild
GENTOO_GPV=0
# xen-tools ovmf's patches
OVMF_VER=2
SEABIOS_VER=1.10.0
# OVMF upstream 52a99493cce88a9d4ec8a02d7f1bd1a1001ce60d
OVMF_PV=20151110
[[ -n ${UPSTREAM_VER} ]] && \
UPSTREAM_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${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"
[[ -n ${GENTOO_VER} ]] && \
GENTOO_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${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
http://code.coreboot.org/p/seabios/downloads/get/seabios-${SEABIOS_VER}.tar.gz
https://dev.gentoo.org/~dlan/distfiles/seabios-${SEABIOS_VER}.tar.gz
ovmf? ( https://dev.gentoo.org/~dlan/distfiles/ovmf-${OVMF_PV}.tar.bz2
${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 docs/README.xen-bugtool )
LICENSE="GPL-2"
SLOT="0/${MAJOR_V}"
# 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 custom-cflags debug doc flask hvm ocaml ovmf +pam pygrub python +qemu +qemu-traditional screen sdl static-libs system-qemu system-seabios"
REQUIRED_USE="
${PYTHON_REQUIRED_USE}
pygrub? ( python )
ovmf? ( hvm )
^^ ( 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}
dev-python/lxml[${PYTHON_USEDEP}]
x86? ( sys-devel/dev86
sys-power/iasl )
pam? ( dev-python/pypam[${PYTHON_USEDEP}] )
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-devel/bin86
system-seabios? ( sys-firmware/seabios )
sys-firmware/ipxe
sys-devel/dev86
sys-power/iasl )
dev-lang/perl
app-misc/pax-utils
doc? (
app-text/ghostscript-gpl
app-text/pandoc
dev-python/markdown[${PYTHON_USEDEP}]
dev-texlive/texlive-latexextra
media-gfx/transfig
)
hvm? ( x11-proto/xproto
!net-libs/libiscsi )
qemu? (
app-arch/snappy:=
x11-libs/pixman
sdl? ( media-libs/libsdl[X] )
)
system-qemu? ( app-emulation/qemu[xen] )
ocaml? ( dev-ml/findlib
>=dev-lang/ocaml-4 )"
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/s390-ccw.img
usr/share/qemu-xen/qemu/u-boot.e500
"
QA_PREBUILT="
usr/libexec/xen/bin/ivshmem-client
usr/libexec/xen/bin/ivshmem-server
usr/libexec/xen/bin/qemu-img
usr/libexec/xen/bin/qemu-io
usr/libexec/xen/bin/qemu-nbd
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/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-${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}"/ovmf-*/ > /dev/null
eapply "${WORKDIR}"/patches-ovmf
popd > /dev/null
fi
mv ../ovmf-${OVMF_PV} tools/firmware/ovmf-dir-remote || die
fi
mv tools/qemu-xen/qemu-bridge-helper.c tools/qemu-xen/xen-bridge-helper.c || die
# Fix building with gcc 7, Bug #634338
# https://xenbits.xen.org/gitweb/?p=xen.git;a=commit;h=f49fa658b53580cf2ad354d2bf1796766cc11222
sed -e 's/name\[60\]/name\[100\]/g' \
-i tools/misc/xenlockprof.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"
# if the user *really* wants to use their own custom-cflags, let them
if use custom-cflags; then
einfo "User wants their own CFLAGS - removing defaults"
# try and remove all the default cflags
find "${S}" \( -name Makefile -o -name Rules.mk -o -name Config.mk \) \
-exec sed \
-e 's/CFLAGS\(.*\)=\(.*\)-O3\(.*\)/CFLAGS\1=\2\3/' \
-e 's/CFLAGS\(.*\)=\(.*\)-march=i686\(.*\)/CFLAGS\1=\2\3/' \
-e 's/CFLAGS\(.*\)=\(.*\)-fomit-frame-pointer\(.*\)/CFLAGS\1=\2\3/' \
-e 's/CFLAGS\(.*\)=\(.*\)-g3*\s\(.*\)/CFLAGS\1=\2 \3/' \
-e 's/CFLAGS\(.*\)=\(.*\)-O2\(.*\)/CFLAGS\1=\2\3/' \
-i {} + || die "failed to re-set custom-cflags"
else
unset CFLAGS
unset LDFLAGS
unset ASFLAGS
unset CPPFLAGS
fi
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 -e "s:install-tools\: tools/qemu-xen-traditional-dir:install-tools\: :g" -i 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
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 pam) \
$(use_enable api xenapi) \
$(use_enable ovmf) \
$(use_enable ocaml ocamltools) \
--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)"
econf ${myconf}
}
src_compile() {
export VARTEXFONTS="${T}/fonts"
local myopt
use debug && myopt="${myopt} debug=y"
if test-flag-CC -fno-strict-overflow; then
append-flags -fno-strict-overflow
fi
emake V=1 CC="$(tc-getCC)" LD="$(tc-getLD)" AR="$(tc-getAR)" RANLIB="$(tc-getRANLIB)" -C 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
emake DESTDIR="${D}" DOCDIR="/usr/share/doc/${PF}" install-docs
use doc && dodoc -r docs/{pdf,txt}
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
}
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 sytem 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
}

@ -1,462 +0,0 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
PYTHON_COMPAT=( python2_7 )
PYTHON_REQ_USE='ncurses,xml,threads'
inherit bash-completion-r1 eutils flag-o-matic multilib python-single-r1 toolchain-funcs versionator
MY_PV=${PV/_/-}
MAJOR_V="$(get_version_component_range 1-2)"
if [[ $PV == *9999 ]]; then
inherit git-r3
KEYWORDS=""
REPO="xen.git"
EGIT_REPO_URI="git://xenbits.xen.org/${REPO}"
S="${WORKDIR}/${REPO}"
else
KEYWORDS="~amd64 ~arm ~arm64 ~x86"
UPSTREAM_VER=0
SECURITY_VER=
# xen-tools's gentoo patches tarball
GENTOO_VER=10
# xen-tools's gentoo patches version which apply to this specific ebuild
GENTOO_GPV=0
# xen-tools ovmf's patches
OVMF_VER=2
SEABIOS_VER=1.10.0
# OVMF upstream 52a99493cce88a9d4ec8a02d7f1bd1a1001ce60d
OVMF_PV=20151110
[[ -n ${UPSTREAM_VER} ]] && \
UPSTREAM_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${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"
[[ -n ${GENTOO_VER} ]] && \
GENTOO_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${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
http://code.coreboot.org/p/seabios/downloads/get/seabios-${SEABIOS_VER}.tar.gz
https://dev.gentoo.org/~dlan/distfiles/seabios-${SEABIOS_VER}.tar.gz
ovmf? ( https://dev.gentoo.org/~dlan/distfiles/ovmf-${OVMF_PV}.tar.bz2
${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 docs/README.xen-bugtool )
LICENSE="GPL-2"
SLOT="0/${MAJOR_V}"
# 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 custom-cflags debug doc flask hvm ocaml ovmf +pam pygrub python +qemu +qemu-traditional screen sdl static-libs system-qemu system-seabios"
REQUIRED_USE="
${PYTHON_REQUIRED_USE}
pygrub? ( python )
ovmf? ( hvm )
^^ ( 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
dev-python/lxml[${PYTHON_USEDEP}]
x86? ( sys-devel/dev86
sys-power/iasl )
pam? ( dev-python/pypam[${PYTHON_USEDEP}] )
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-devel/bin86
system-seabios? ( sys-firmware/seabios )
sys-firmware/ipxe
sys-devel/dev86
sys-power/iasl )
dev-lang/perl
app-misc/pax-utils
doc? (
app-text/ghostscript-gpl
app-text/pandoc
dev-python/markdown[${PYTHON_USEDEP}]
dev-texlive/texlive-latexextra
media-gfx/transfig
)
hvm? ( x11-proto/xproto
!net-libs/libiscsi )
qemu? (
app-arch/snappy:=
x11-libs/pixman
sdl? ( media-libs/libsdl[X] )
)
system-qemu? ( app-emulation/qemu[xen] )
ocaml? ( dev-ml/findlib
>=dev-lang/ocaml-4 )"
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/s390-ccw.img
usr/share/qemu-xen/qemu/u-boot.e500
"
QA_PREBUILT="
usr/libexec/xen/bin/ivshmem-client
usr/libexec/xen/bin/ivshmem-server
usr/libexec/xen/bin/qemu-img
usr/libexec/xen/bin/qemu-io
usr/libexec/xen/bin/qemu-nbd
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/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"
EPATCH_SUFFIX="patch" \
EPATCH_FORCE="yes" \
EPATCH_OPTS="-p1" \
epatch "${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
epatch "${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
epatch "${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
epatch "${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-${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
EPATCH_SUFFIX="patch" \
EPATCH_FORCE="yes" \
epatch "${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}"/ovmf-*/ > /dev/null
EPATCH_SUFFIX="patch" \
EPATCH_FORCE="yes" \
EPATCH_OPTS="-p1" \
epatch "${WORKDIR}"/patches-ovmf
popd > /dev/null
fi
mv ../ovmf-${OVMF_PV} tools/firmware/ovmf-dir-remote || 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"
# if the user *really* wants to use their own custom-cflags, let them
if use custom-cflags; then
einfo "User wants their own CFLAGS - removing defaults"
# try and remove all the default cflags
find "${S}" \( -name Makefile -o -name Rules.mk -o -name Config.mk \) \
-exec sed \
-e 's/CFLAGS\(.*\)=\(.*\)-O3\(.*\)/CFLAGS\1=\2\3/' \
-e 's/CFLAGS\(.*\)=\(.*\)-march=i686\(.*\)/CFLAGS\1=\2\3/' \
-e 's/CFLAGS\(.*\)=\(.*\)-fomit-frame-pointer\(.*\)/CFLAGS\1=\2\3/' \
-e 's/CFLAGS\(.*\)=\(.*\)-g3*\s\(.*\)/CFLAGS\1=\2 \3/' \
-e 's/CFLAGS\(.*\)=\(.*\)-O2\(.*\)/CFLAGS\1=\2\3/' \
-i {} + || die "failed to re-set custom-cflags"
else
unset CFLAGS
unset LDFLAGS
unset ASFLAGS
unset CPPFLAGS
fi
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 -e "s:install-tools\: tools/qemu-xen-traditional-dir:install-tools\: :g" -i 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
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 pam) \
$(use_enable api xenapi) \
$(use_enable ovmf) \
$(use_enable ocaml ocamltools) \
--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)"
econf ${myconf}
}
src_compile() {
local myopt
use debug && myopt="${myopt} debug=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
emake DESTDIR="${D}" DOCDIR="/usr/share/doc/${PF}" install-docs
use doc && dodoc -r docs/{pdf,txt}
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
}
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 sytem 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
}

@ -1,454 +0,0 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
PYTHON_COMPAT=( python2_7 )
PYTHON_REQ_USE='ncurses,xml,threads'
inherit bash-completion-r1 eutils flag-o-matic multilib python-single-r1 toolchain-funcs versionator
MY_PV=${PV/_/-}
MAJOR_V="$(get_version_component_range 1-2)"
if [[ $PV == *9999 ]]; then
inherit git-r3
KEYWORDS=""
REPO="xen.git"
EGIT_REPO_URI="git://xenbits.xen.org/${REPO}"
S="${WORKDIR}/${REPO}"
else
KEYWORDS="~amd64 ~arm ~arm64 ~x86"
UPSTREAM_VER=
SECURITY_VER=
# xen-tools's gentoo patches tarball
GENTOO_VER=10
# xen-tools's gentoo patches version which apply to this specific ebuild
GENTOO_GPV=0
# xen-tools ovmf's patches
OVMF_VER=2
SEABIOS_VER=1.10.0
# OVMF upstream 52a99493cce88a9d4ec8a02d7f1bd1a1001ce60d
OVMF_PV=20151110
[[ -n ${UPSTREAM_VER} ]] && \
UPSTREAM_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${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"
[[ -n ${GENTOO_VER} ]] && \
GENTOO_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${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
http://code.coreboot.org/p/seabios/downloads/get/seabios-${SEABIOS_VER}.tar.gz
https://dev.gentoo.org/~dlan/distfiles/seabios-${SEABIOS_VER}.tar.gz
ovmf? ( https://dev.gentoo.org/~dlan/distfiles/ovmf-${OVMF_PV}.tar.bz2
${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 docs/README.xen-bugtool )
LICENSE="GPL-2"
SLOT="0/${MAJOR_V}"
# 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 custom-cflags debug doc flask hvm ocaml ovmf +pam pygrub python +qemu +qemu-traditional screen sdl static-libs system-qemu system-seabios"
REQUIRED_USE="
${PYTHON_REQUIRED_USE}
pygrub? ( python )
ovmf? ( hvm )
^^ ( 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
dev-python/lxml[${PYTHON_USEDEP}]
x86? ( sys-devel/dev86
sys-power/iasl )
pam? ( dev-python/pypam[${PYTHON_USEDEP}] )
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-devel/bin86
system-seabios? ( sys-firmware/seabios )
sys-firmware/ipxe
sys-devel/dev86
sys-power/iasl )
dev-lang/perl
app-misc/pax-utils
doc? (
app-text/ghostscript-gpl
app-text/pandoc
dev-python/markdown[${PYTHON_USEDEP}]
dev-texlive/texlive-latexextra
media-gfx/transfig
)
hvm? ( x11-proto/xproto
!net-libs/libiscsi )
qemu? (
app-arch/snappy:=
x11-libs/pixman
sdl? ( media-libs/libsdl[X] )
)
system-qemu? ( app-emulation/qemu[xen] )
ocaml? ( dev-ml/findlib
>=dev-lang/ocaml-4 )"
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/s390-ccw.img
usr/share/qemu-xen/qemu/u-boot.e500
"
QA_PREBUILT="
usr/libexec/xen/bin/ivshmem-client
usr/libexec/xen/bin/ivshmem-server
usr/libexec/xen/bin/qemu-img
usr/libexec/xen/bin/qemu-io
usr/libexec/xen/bin/qemu-nbd
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/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-${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}"/ovmf-*/ > /dev/null
eapply "${WORKDIR}"/patches-ovmf
popd > /dev/null
fi
mv ../ovmf-${OVMF_PV} tools/firmware/ovmf-dir-remote || 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"
# if the user *really* wants to use their own custom-cflags, let them
if use custom-cflags; then
einfo "User wants their own CFLAGS - removing defaults"
# try and remove all the default cflags
find "${S}" \( -name Makefile -o -name Rules.mk -o -name Config.mk \) \
-exec sed \
-e 's/CFLAGS\(.*\)=\(.*\)-O3\(.*\)/CFLAGS\1=\2\3/' \
-e 's/CFLAGS\(.*\)=\(.*\)-march=i686\(.*\)/CFLAGS\1=\2\3/' \
-e 's/CFLAGS\(.*\)=\(.*\)-fomit-frame-pointer\(.*\)/CFLAGS\1=\2\3/' \
-e 's/CFLAGS\(.*\)=\(.*\)-g3*\s\(.*\)/CFLAGS\1=\2 \3/' \
-e 's/CFLAGS\(.*\)=\(.*\)-O2\(.*\)/CFLAGS\1=\2\3/' \
-i {} + || die "failed to re-set custom-cflags"
else
unset CFLAGS
unset LDFLAGS
unset ASFLAGS
unset CPPFLAGS
fi
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 -e "s:install-tools\: tools/qemu-xen-traditional-dir:install-tools\: :g" -i 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
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 pam) \
$(use_enable api xenapi) \
$(use_enable ovmf) \
$(use_enable ocaml ocamltools) \
--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)"
econf ${myconf}
}
src_compile() {
local myopt
use debug && myopt="${myopt} debug=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
emake DESTDIR="${D}" DOCDIR="/usr/share/doc/${PF}" install-docs
use doc && dodoc -r docs/{pdf,txt}
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
}
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 sytem 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
}

@ -1,11 +1,5 @@
DIST xen-4.10.0-upstream-patches-0.tar.xz 70884 BLAKE2B 9a27e7989486ba3ba59548de356384527cc5b78e63b6ed042506e6534e488272369f021cd2daa516820313c3fe18625a5864794ae0806e7018b8ad28b0a294b1 SHA512 e64bf1d30d24e922c60c3b518a4de7874b43cc695134b4cdd65f6d95ae9ae579c521fab13ca82409fde55e43815d072c3194997e2bda106204cbf329e93a0a00
DIST xen-4.10.0.tar.gz 24618123 BLAKE2B 009faa980f9734525c137d525e626bfa3443c285aeb6b4af91bb2c32a2e98376ded0b1114b541d11e2d4353f4f588d58e8add5b1e0d7de2fe3399d4687c5bfae SHA512 5a37935c382f9cfe3641a35c3be0ba11689bca10c7d3c2401963513e3a834ee8d0c8a0ddcf3716dbf0a795aea1bab78caf19acf1272e5e054bf012cfa06a4690
DIST xen-4.8.2-upstream-patches-2.tar.xz 38852 BLAKE2B cbc7bad4703fabd05b703c66268df0670e2ae97b77007895dceaf6465b12a2f9fbe3773c7735b307427ad18c61711b20beb7f3ae6b1f1b8b5efda2a847fec0ec SHA512 536823eabf03e92585a8c5cde90ce502672dd1ec080b28b39411d6a778b899436a57bfb633f11c94d48d2f963848b7771e469f5ea53e84b580976f631f69cc5d
DIST xen-4.8.2-upstream-patches-3.tar.xz 49836 BLAKE2B c0f79727afdeb172a45c9bc0553bfbac865998e6b36364d38899201aa649dc338b77a899758516823112970163f9c9596b5e3940aee132561c62f2a245f4ba3f SHA512 d87702ba64c85fed2617912582979a96c708c610c38adfa57a6e5085bead06907c3917f3e344afa91c7b72a6c044a1711f5ba2ba2360737c774d5f9bec92d786
DIST xen-4.8.2.tar.gz 22522336 BLAKE2B 2c9da971622b4e52fe78fa029107bb1c5f945a63605406493df607c410c6f2a8c2cdb38b1eb30c1bc1c8bc6e5620efad977c3ba55e04c579c01d51f0104afcce SHA512 7805531f73d23ecfff3439770e62d387f4254a444875670d53a0a739323e5d4d8f8fcc478f8936ee1ae8aff3e0229549e47c01c606365a8ce060dd5c503e87da
DIST xen-4.9.0-upstream-patches-0.tar.xz 58780 BLAKE2B 6d12a5a5bb7d2be7ca6bb8636648ee219c9526dd34086c929d8cd32d096d2454d6cb499d459b436f228fa49f42ef3a1f5fbe9b5c84557e4054565a9edc0daad6 SHA512 98c601d791661a306e3dce5befb37b80de8a71cdd1759f3da00b199d48e3b9468efd1332e26ae044ad616b41a02771ad07a1c96972103b7e0aa39b93fb556999
DIST xen-4.9.0.tar.gz 23361741 BLAKE2B 1cfebb791ca5e51eda9b86a5d98e0883fab1554f5ac805fc065916fbbd3695e6b0f11ca75935a8f973735cc8dd83e38fe4a670d8489010be865be49d8fc1a341 SHA512 97f8075c49ef9ec0adbe95106c0cff4f9379578fd568777697565476c3fd948335d72ddcacf8be65fd9db219c0a35dcdc007f355f7e5874dd950fd4c0a0f966f
DIST xen-4.9.1-upstream-patches-0.tar.xz 6856 BLAKE2B 52a7e3b456d330444166c36ce68b008150831b7bb5b64b4a3dbebfbbe8cd024311f3d7aadd1313b194bd5ce7a20cd2ca5a424754e59589b986490eda97bf5d06 SHA512 9af8861443a708c60df52c21512099a55a6018238350ece962a715b07ade9141cab2d46540b5d5e8e20347980f786f7d28ec130f7e8e03c46ff4808d3b36a913
DIST xen-4.9.1-upstream-patches-1.tar.xz 24592 BLAKE2B 774c5219d6c14d729358e790d880a1a31fb4cda741e54e71879bff164e79bafbd8492eb8bccb7becdf7a2f9605e71266bb4fc15848deff8f9028ed7f8844f915 SHA512 edbc7cad2f6f8a5c7e8aac8efd5454428aa25e0e13018438f78c7f401cfb9173345267e16c7a5dfa78066a952980b172976409a0c63162094b7f507058e712ed
DIST xen-4.9.1-upstream-patches-2.tar.xz 84228 BLAKE2B 3b98cdb1202d4c9817dd1919b9dc5d4c06510d3be2c077b2e41334928bca07c65a9d8a421fc2a1ae3b806e69f7b61334f7c54d48952c98192ece4b5826539df8 SHA512 673520bff88fa401e1d1c7accc8d3650d4d74a9e52bc7195cfcb5335226c69ef0230e7db719fd97ce6df2f5198646ae0fbccc6f812d7e9ccd38a6eef359d287c
DIST xen-4.9.1.tar.gz 23368303 BLAKE2B 4cfddb351c9a4aa08227138dc1afa921f3d1880048f897428226da38eff9470cd81ae9896f174583048dad0ba8d5c1426df58b029115ba1623366d1980630c0d SHA512 9d22f0aa5dcd01a1c105d17c14bce570cc597e884ddb9b4a46b80a72f647625b76ae5213cede423d0458c14e1906983595a9269bb6e6ff2e9e7e4dea840f4274

@ -1,184 +0,0 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
PYTHON_COMPAT=( python2_7 )
inherit eutils 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
KEYWORDS=""
EGIT_REPO_URI="git://xenbits.xen.org/xen.git"
SRC_URI=""
else
KEYWORDS="amd64 ~arm -x86"
UPSTREAM_VER=2
SECURITY_VER=
GENTOO_VER=
[[ -n ${UPSTREAM_VER} ]] && \
UPSTREAM_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${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="http://xen.org/"
HOMEPAGE="https://www.xenproject.org"
LICENSE="GPL-2"
SLOT="0"
IUSE="custom-cflags 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
if [[ -n ${UPSTREAM_VER} ]]; then
EPATCH_SUFFIX="patch" \
EPATCH_FORCE="yes" \
EPATCH_OPTS="-p1" \
epatch "${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
local i
for i in ${XEN_SECURITY_MAIN}; do
epatch "${WORKDIR}"/patches-security/xen/$i
done
fi
# Gentoo's patchset
if [[ -n ${GENTOO_VER} ]]; then
EPATCH_SUFFIX="patch" \
EPATCH_FORCE="yes" \
epatch "${WORKDIR}"/patches-gentoo
fi
epatch "${FILESDIR}"/${PN}-4.6-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
# if the user *really* wants to use their own custom-cflags, let them
if use custom-cflags; then
einfo "User wants their own CFLAGS - removing defaults"
# try and remove all the default custom-cflags
find "${S}" -name Makefile -o -name Rules.mk -o -name Config.mk -exec sed \
-e 's/CFLAGS\(.*\)=\(.*\)-O3\(.*\)/CFLAGS\1=\2\3/' \
-e 's/CFLAGS\(.*\)=\(.*\)-march=i686\(.*\)/CFLAGS\1=\2\3/' \
-e 's/CFLAGS\(.*\)=\(.*\)-fomit-frame-pointer\(.*\)/CFLAGS\1=\2\3/' \
-e 's/CFLAGS\(.*\)=\(.*\)-g3*\s\(.*\)/CFLAGS\1=\2 \3/' \
-e 's/CFLAGS\(.*\)=\(.*\)-O2\(.*\)/CFLAGS\1=\2\3/' \
-i {} \; || die "failed to re-set custom-cflags"
fi
default
}
src_configure() {
use arm && myopt="${myopt} CONFIG_EARLY_PRINTK=sun7i"
use debug && myopt="${myopt} debug=y"
if use custom-cflags; then
filter-flags -fPIE -fstack-protector
replace-flags -O3 -O2
else
unset CFLAGS
unset LDFLAGS
unset ASFLAGS
fi
}
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"
}

@ -1,175 +0,0 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
PYTHON_COMPAT=( python2_7 )
inherit eutils 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
KEYWORDS=""
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"
[[ -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="http://xen.org/"
HOMEPAGE="https://www.xenproject.org"
LICENSE="GPL-2"
SLOT="0"
IUSE="custom-cflags 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
EPATCH_SUFFIX="patch"
EPATCH_FORCE="yes"
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.6-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
# if the user *really* wants to use their own custom-cflags, let them
if use custom-cflags; then
einfo "User wants their own CFLAGS - removing defaults"
# try and remove all the default custom-cflags
find "${S}" -name Makefile -o -name Rules.mk -o -name Config.mk -exec sed \
-e 's/CFLAGS\(.*\)=\(.*\)-O3\(.*\)/CFLAGS\1=\2\3/' \
-e 's/CFLAGS\(.*\)=\(.*\)-march=i686\(.*\)/CFLAGS\1=\2\3/' \
-e 's/CFLAGS\(.*\)=\(.*\)-fomit-frame-pointer\(.*\)/CFLAGS\1=\2\3/' \
-e 's/CFLAGS\(.*\)=\(.*\)-g3*\s\(.*\)/CFLAGS\1=\2 \3/' \
-e 's/CFLAGS\(.*\)=\(.*\)-O2\(.*\)/CFLAGS\1=\2\3/' \
-i {} \; || die "failed to re-set custom-cflags"
fi
default
}
src_configure() {
use arm && myopt="${myopt} CONFIG_EARLY_PRINTK=sun7i"
use debug && myopt="${myopt} debug=y"
if use custom-cflags; then
filter-flags -fPIE -fstack-protector
replace-flags -O3 -O2
else
unset CFLAGS
unset LDFLAGS
unset ASFLAGS
fi
}
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"
}

@ -1,183 +0,0 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
PYTHON_COMPAT=( python2_7 )
inherit eutils 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
KEYWORDS=""
EGIT_REPO_URI="git://xenbits.xen.org/xen.git"
SRC_URI=""
else
KEYWORDS="~amd64 ~arm -x86"
UPSTREAM_VER=0
SECURITY_VER=
GENTOO_VER=
[[ -n ${UPSTREAM_VER} ]] && \
UPSTREAM_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${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="custom-cflags 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
if [[ -n ${UPSTREAM_VER} ]]; then
EPATCH_SUFFIX="patch" \
EPATCH_FORCE="yes" \
EPATCH_OPTS="-p1" \
epatch "${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
local i
for i in ${XEN_SECURITY_MAIN}; do
epatch "${WORKDIR}"/patches-security/xen/$i
done
fi
# Gentoo's patchset
if [[ -n ${GENTOO_VER} ]]; then
EPATCH_SUFFIX="patch" \
EPATCH_FORCE="yes" \
epatch "${WORKDIR}"/patches-gentoo
fi
epatch "${FILESDIR}"/${PN}-4.6-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
# if the user *really* wants to use their own custom-cflags, let them
if use custom-cflags; then
einfo "User wants their own CFLAGS - removing defaults"
# try and remove all the default custom-cflags
find "${S}" -name Makefile -o -name Rules.mk -o -name Config.mk -exec sed \
-e 's/CFLAGS\(.*\)=\(.*\)-O3\(.*\)/CFLAGS\1=\2\3/' \
-e 's/CFLAGS\(.*\)=\(.*\)-march=i686\(.*\)/CFLAGS\1=\2\3/' \
-e 's/CFLAGS\(.*\)=\(.*\)-fomit-frame-pointer\(.*\)/CFLAGS\1=\2\3/' \
-e 's/CFLAGS\(.*\)=\(.*\)-g3*\s\(.*\)/CFLAGS\1=\2 \3/' \
-e 's/CFLAGS\(.*\)=\(.*\)-O2\(.*\)/CFLAGS\1=\2\3/' \
-i {} \; || die "failed to re-set custom-cflags"
fi
default
}
src_configure() {
use arm && myopt="${myopt} CONFIG_EARLY_PRINTK=sun7i"
use debug && myopt="${myopt} debug=y"
if use custom-cflags; then
filter-flags -fPIE -fstack-protector
replace-flags -O3 -O2
else
unset CFLAGS
unset LDFLAGS
unset ASFLAGS
fi
}
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"
}

@ -1,171 +0,0 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
PYTHON_COMPAT=( python2_7 )
inherit eutils 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
KEYWORDS=""
EGIT_REPO_URI="git://xenbits.xen.org/xen.git"
SRC_URI=""
else
KEYWORDS="~amd64 ~arm -x86"
UPSTREAM_VER=0
SECURITY_VER=
GENTOO_VER=
[[ -n ${UPSTREAM_VER} ]] && \
UPSTREAM_PATCHSET_URI="https://dev.gentoo.org/~dlan/distfiles/${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="custom-cflags 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.6-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
# if the user *really* wants to use their own custom-cflags, let them
if use custom-cflags; then
einfo "User wants their own CFLAGS - removing defaults"
# try and remove all the default custom-cflags
find "${S}" -name Makefile -o -name Rules.mk -o -name Config.mk -exec sed \
-e 's/CFLAGS\(.*\)=\(.*\)-O3\(.*\)/CFLAGS\1=\2\3/' \
-e 's/CFLAGS\(.*\)=\(.*\)-march=i686\(.*\)/CFLAGS\1=\2\3/' \
-e 's/CFLAGS\(.*\)=\(.*\)-fomit-frame-pointer\(.*\)/CFLAGS\1=\2\3/' \
-e 's/CFLAGS\(.*\)=\(.*\)-g3*\s\(.*\)/CFLAGS\1=\2 \3/' \
-e 's/CFLAGS\(.*\)=\(.*\)-O2\(.*\)/CFLAGS\1=\2\3/' \
-i {} \; || die "failed to re-set custom-cflags"
fi
default
}
src_configure() {
use arm && myopt="${myopt} CONFIG_EARLY_PRINTK=sun7i"
use debug && myopt="${myopt} debug=y"
if use custom-cflags; then
filter-flags -fPIE -fstack-protector
replace-flags -O3 -O2
else
unset CFLAGS
unset LDFLAGS
unset ASFLAGS
fi
}
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"
}

Binary file not shown.

@ -9,7 +9,7 @@ SRC_URI="https://dev.gentoo.org/~graaff/ruby-team/ruby.eselect-${PVR}.xz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~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 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE=""
RDEPEND=">=app-admin/eselect-1.0.2"

Binary file not shown.

@ -1 +1,2 @@
DIST translate-shell-0.9.6.6.tar.gz 73189 BLAKE2B ad4de403f2c95a1e4de5c963cb017f5a744f08d3bb8256dcc22f28c0916f6a0e693bce171a5dc500de5353c954bab7681f1227df9e48be286ad5aa07c5d06fa4 SHA512 c5451e537f44e325ee2f59d54942f91b8e2ccc0e322c42a2c4a0e98b8a933fe0630798a45e6f587ad5aee2cbb092204710ae36779c94b8333376a8072678d868
DIST translate-shell-0.9.6.7.tar.gz 74290 BLAKE2B 640e895b7f05c214a3f6fefab98fc85345fa155c29126bc9f14282e345f574cfa077ff7a55e5f1ed51fad3dbd50710a3831b894cabe48d16ce3d903fd63b2f47 SHA512 2648ea5adccd1ba19438bc683b41b7d3c4e1b3fcd79f9273a17ade90df6184a60d0f342f1745857ffb8d5457115bd60d0239a3e77343866a25b64529904ab416

@ -0,0 +1,44 @@
diff --git a/Makefile b/Makefile
index bb932fc..622e136 100644
--- a/Makefile
+++ b/Makefile
@@ -27,10 +27,6 @@ test: build
check: test
$(BUILDDIR)/$(COMMAND) -V
- [ "`$(BUILDDIR)/$(COMMAND) -no-init -D -b 忍者`" = 'Ninja' ] &&\
- [ "`$(BUILDDIR)/$(COMMAND) -no-init -D -b -e bing 忍者`" = 'Ninja' ] &&\
- [ "`$(BUILDDIR)/$(COMMAND) -no-init -D -b -e yandex 忍者`" = 'Ninja' ] &&\
- [ "`$(BUILDDIR)/$(COMMAND) -no-init -D -b -e deepl Ninja`" = 'Ninja' ]
install: build
@mkdir -p $(DESTDIR)$(PREFIX)/bin &&\
diff --git a/test/TestUtils.awk b/test/TestUtils.awk
index 08bb2e9..3465327 100644
--- a/test/TestUtils.awk
+++ b/test/TestUtils.awk
@@ -30,24 +30,6 @@ BEGIN {
assertTrue(newerVersion("2", "1.9.9999"))
}
- T("curl()", 1)
- {
- delete tokens; delete ast
- tokenize(tokens, curl("https://httpbin.org/get"))
- parseJson(ast, tokens)
- assertEqual(unparameterize(ast[0 SUBSEP "url"]),
- "https://httpbin.org/get")
- }
-
- T("curlPost()", 1)
- {
- delete tokens; delete ast
- tokenize(tokens, curlPost("https://httpbin.org/post", "fizz=buzz"))
- parseJson(ast, tokens)
- assertEqual(unparameterize(ast[0 SUBSEP "url"]),
- "https://httpbin.org/post")
- }
-
T("dump()", 3)
{
delete group

@ -0,0 +1,37 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
DESCRIPTION="Online command-line translator"
HOMEPAGE="https://www.soimort.org/translate-shell/"
SRC_URI="https://github.com/soimort/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="public-domain"
SLOT="0"
KEYWORDS="~amd64"
IUSE="+curl +bidi test tts"
RDEPEND="
app-misc/rlwrap
>=sys-apps/gawk-4.0.2
curl? ( net-misc/curl[ssl] )
bidi? ( dev-libs/fribidi )
tts? ( || (
media-sound/mpg123
app-accessibility/espeak
media-video/mpv
media-video/mplayer
)
)"
DEPEND="${RDEPEND}
test? ( app-editors/emacs )
"
PATCHES=(
"${FILESDIR}/${P}-remove-online-tests.patch"
)
src_install() {
emake PREFIX="${D}/usr" install
}

@ -10,7 +10,7 @@ SRC_URI="http://www.unicode.org/Public/zipped/${PV}/UCD.zip -> ${P}-UCD.zip
LICENSE="unicode"
SLOT="0"
KEYWORDS="alpha amd64 ~arm ~arm64 ~hppa ia64 ~mips ~ppc ~ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd"
KEYWORDS="alpha amd64 ~arm ~arm64 ~hppa ia64 ~mips ~ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd"
IUSE=""
DEPEND="app-arch/unzip"

Binary file not shown.

@ -512,7 +512,7 @@ pkg_postinst() {
else
if has_version "sys-apps/systemd"; then
# Bug 596852
ewarn "Failed to update CapabilityBondingSet in '${systemd_unit}'"
ewarn "Failed to update CapabilityBoundingSet in '${systemd_unit}'"
ewarn "because unit was not found. Please file a bug about this."
fi
fi

Binary file not shown.

@ -11,7 +11,7 @@ SRC_URI="http://www.astrolog.org/ftp/ast54unx.shr"
LICENSE="astrolog"
SLOT="0"
KEYWORDS="amd64 ~ppc ~ppc64 x86"
KEYWORDS="amd64 ~ppc ppc64 x86"
IUSE="X"
DEPEND="X? ( x11-libs/libX11 )"

@ -1,38 +0,0 @@
# Copyright 1999-2008 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
inherit pam toolchain-funcs flag-o-matic
DESCRIPTION="Terminal locking program with few additional features"
HOMEPAGE="http://unbeatenpath.net/software/away/"
SRC_URI="http://unbeatenpath.net/software/away/${P}.tar.bz2"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="amd64 ppc ppc64 sparc x86"
IUSE=""
RDEPEND=">=sys-libs/pam-0.75"
DEPEND="${RDEPEND}"
src_unpack() {
unpack ${A}
sed -i -e '/-o \$(BINARY)/d' \
-e 's:LIBS:LDLIBS:' \
"${S}"/Makefile || die "Makefile fix failed"
}
src_compile() {
append-flags -pthread
emake CFLAGS="${CFLAGS}" CC="$(tc-getCC)" || die
}
src_install() {
dobin away || die "dobin failed"
pamd_mimic_system away auth
doman doc/*
dodoc BUGS AUTHORS NEWS README TODO data/awayrc || die "dodoc failed"
}

@ -11,7 +11,7 @@ SRC_URI="mirror://gentoo/${P}.tar.bz2"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="amd64 ~ppc ppc64 sparc x86"
KEYWORDS="amd64 ppc ppc64 sparc x86"
RDEPEND=">=sys-libs/pam-0.75"
DEPEND="${RDEPEND}"

@ -11,7 +11,7 @@ SRC_URI="http://bsdcalendar.sourceforge.net/${P}.tar.bz2"
LICENSE="BSD"
SLOT="0"
KEYWORDS="alpha amd64 ~hppa ia64 ~mips ~ppc ppc64 sparc x86"
KEYWORDS="alpha amd64 ~hppa ia64 ~mips ppc ppc64 sparc x86"
DOCS=( README )

@ -1,32 +0,0 @@
# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
DESCRIPTION="dailystrips automatically downloads your favorite online comics from the web"
HOMEPAGE="http://dailystrips.sourceforge.net/"
SRC_URI="mirror://sourceforge/dailystrips/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="alpha amd64 ppc x86"
IUSE=""
RDEPEND=">=dev-perl/libwww-perl-5.50
dev-perl/DateTime
dev-perl/TimeDate"
src_unpack() {
unpack ${A}
cd "${S}"
sed -i \
-e "s:/usr/share/dailystrips/strips.def:/etc/strips.def:" \
dailystrips \
|| die "sed dailystrips failed"
}
src_install() {
dobin dailystrips dailystrips-clean dailystrips-update \
|| die "dobin failed"
dodoc BUGS CHANGELOG CONTRIBUTORS README* TODO
insinto /etc
doins strips.def || die "doins failed"
}

@ -9,7 +9,7 @@ SRC_URI="mirror://sourceforge/dailystrips/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="alpha amd64 ~ppc x86"
KEYWORDS="alpha amd64 ppc x86"
IUSE=""
RDEPEND=">=dev-perl/libwww-perl-5.50

@ -10,7 +10,7 @@ SRC_URI="http://gentooexperimental.org/~genstef/dist/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="alpha amd64 ~arm64 ia64 ~ppc ppc64 x86"
KEYWORDS="alpha amd64 ~arm64 ia64 ppc ppc64 x86"
src_prepare() {
local ver="$(best_version sys-kernel/linux-headers)"

@ -1,4 +1,4 @@
DIST neofetch-3.0.1.tar.gz 66571 BLAKE2B e11b39d851359fa1d83778b3b96bc4016bd42d42848c6a37c70aff0ff48f48f52fcdd7b2e5076933dc64dedad8d8727975bab488b2270af2c45d835aba12939d SHA512 e9353d61226dcb4f8161556ba07156ea13737d6cde05f00b39a85e4a2f54716db833e8be076c56168b7003230ef42dfa9b9223c0ab930456a664a9a2c31cf2ad
DIST neofetch-3.1.0.tar.gz 68930 BLAKE2B 4809b972f0cb3ea641cbda00e7777617808891d4ae12ddfd52670d8ee490f4659540faf55b994d212e047d5926349dbe8478dc7e3caccf0f22c2b97b57cb9cdc SHA512 0a13acadf1841c1e714c07f9643028446a1f4df6a79e7c3189c4c11d8854813dfbb983784d62dc59a9209893ee2339ca5642fe413d1066a5cb6e9e167ae74975
DIST neofetch-3.2.0.tar.gz 71331 BLAKE2B 073eeaa74691b3d262fcd0da8da76d9264dc012fda89ce045b4ccdbfead490049bd551d3ff95042a21fb0d6073d1120170f889492ec4ee50c57c3ecd786cb9e4 SHA512 790dd282b99437a416f25a895d5a3359be31d162447e2f59863c635c144045a6b81672e4469ca9b6eeba56fc927e787a67f0a317309bbc0f52500b0f9e072764
DIST neofetch-3.3.0.tar.gz 76325 BLAKE2B c7bd860dd1f89f4b0e64a5a4dcc6551d548103abbdda0606fdbfa5edbe27d91da053198f219e223af56571a87d3af4b93f8f8d615ad4f377b1754da4bee50526 SHA512 aa220f3d177a3f58e7cb665209e6bd70334eb3d2daccf7ec9cb32353b8c23f53e000f7d412422c8d5fcf1132b39f4a9dc51141ed7359f45c1f0f7a189853baf0
DIST neofetch-3.4.0.tar.gz 82090 BLAKE2B afc00b37d84cdf3ae0fd4037312b1c67fdadcbe99d6d602e8f3b6caa844b3780861c9d2522ec605ba5b7aa08e4e85ef804129da2ce3f6f01ab8b536704cdd182 SHA512 931648e8173eb91fdf5c79b5bb9b6efef132d30cf2f10d6f75dcff42f3661d40ceec712c109e90e2226e1aa85cad7676c438b6cad49e8298a77d990d9a3d197b

@ -1,32 +0,0 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
DESCRIPTION="Simple information system script"
HOMEPAGE="https://github.com/dylanaraps/neofetch"
SRC_URI="https://github.com/dylanaraps/${PN}/archive/${PV}/${P}.tar.gz"
LICENSE="MIT-with-advertising"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="X"
RDEPEND="sys-apps/pciutils
X? (
x11-apps/xprop
x11-apps/xwininfo
x11-apps/xrandr
www-client/w3m[imlib]
media-libs/imlib2
media-gfx/imagemagick
)"
pkg_postinst() {
ewarn "A lot of things have changed in neofetch 3.0, and we cannot"
ewarn "guarantee that your config will work in neofetch 3.0. As such,"
ewarn "we recommend you to use a new config. You can delete your current"
ewarn "config from $HOME/.config/neofetch"
einfo "The system-wide config has been moved from /usr/share/neofetch/config"
einfo "to /etc/neofetch/config."
}

@ -1,4 +1,4 @@
# Copyright 1999-2017 Gentoo Foundation
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
@ -8,7 +8,7 @@ HOMEPAGE="https://github.com/dylanaraps/neofetch"
SRC_URI="https://github.com/dylanaraps/${PN}/archive/${PV}/${P}.tar.gz"
LICENSE="MIT-with-advertising"
SLOT="0"
KEYWORDS="amd64 x86"
KEYWORDS="amd64 x86 ~amd64-fbsd"
IUSE="X"
RDEPEND="sys-apps/pciutils

@ -0,0 +1,22 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
DESCRIPTION="Simple information system script"
HOMEPAGE="https://github.com/dylanaraps/neofetch"
SRC_URI="https://github.com/dylanaraps/${PN}/archive/${PV}/${P}.tar.gz"
LICENSE="MIT-with-advertising"
SLOT="0"
KEYWORDS="~amd64 ~x86 ~amd64-fbsd"
IUSE="X"
RDEPEND="sys-apps/pciutils
X? (
x11-apps/xprop
x11-apps/xwininfo
x11-apps/xrandr
www-client/w3m[imlib]
media-libs/imlib2
media-gfx/imagemagick
)"

@ -1,3 +1 @@
DIST pax-utils-1.1.7.tar.xz 648376 BLAKE2B 676551b2391b2ba27281d26fba61da7d0d277f3b562c9d8365ea5a6b5bfa4327bad66cf1f62cb626f8b6ec3ae693cab713683b81142dd71920f3b6300951f6d2 SHA512 cec176cf5863b15acc058cbd99639f5f456346136d0551ce5875cb66c28dd0f6e7f5077b0c06751a3a68984b5c4386c232d3db8b76aa4f4b326b0b692835fdeb
DIST pax-utils-1.2.2.tar.xz 655964 BLAKE2B 5e43b52648f1f0cc1f46616ebd9a554cf2e5909292337c84f9ee0e2eceb4879a5f16ca20700e5a16267b38ffea529814949817ea6054cd1b2ea38e267455de00 SHA512 6bafe93f3b84d4595b6adfa09b46a3dd249f309fe836d90115e9aa5fcc7da37b03f743e80719dfe6bcdb739ce6ec3843170a5513e196c348721f850e19d3e38c
DIST pax-utils-1.2.3.tar.xz 661828 BLAKE2B 4764c47b7a31e7470a454127b9db3b5b27c703a96a66973a6248529a2d858ea38adb246a270a1f343a499515f55b25613bb20c46978e2e0dddc03e5ddb9a2aa7 SHA512 efcbce49aa7e5cd433f9b3fbc8fa82f6d7b0eb80ec40aafde453d6fe96e3565e066e5020f04d71537d8d4e820147f4203c0df2dd330ebb1358a26def3dd5484c

@ -1,56 +0,0 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI="4"
inherit eutils toolchain-funcs unpacker
DESCRIPTION="ELF utils that can check files for security relevant properties"
HOMEPAGE="https://wiki.gentoo.org/index.php?title=Project:Hardened/PaX_Utilities"
SRC_URI="mirror://gentoo/${P}.tar.xz
https://dev.gentoo.org/~vapier/dist/${P}.tar.xz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="caps debug python seccomp"
RDEPEND="caps? ( >=sys-libs/libcap-2.24 )
python? ( dev-python/pyelftools )
seccomp? ( sys-libs/libseccomp )"
DEPEND="${RDEPEND}
caps? ( virtual/pkgconfig )
seccomp? ( virtual/pkgconfig )
app-arch/xz-utils"
_emake() {
emake \
USE_CAP=$(usex caps) \
USE_DEBUG=$(usex debug) \
USE_PYTHON=$(usex python) \
USE_SECCOMP=$(usex seccomp) \
"$@"
}
src_configure() {
# Avoid slow configure+gnulib+make if on an up-to-date Linux system
if use prefix || ! use kernel_linux || \
has_version '<sys-libs/glibc-2.10'
then
econf $(use_with caps) $(use_with debug) $(use_with python) $(use_with seccomp)
else
tc-export CC PKG_CONFIG
fi
}
src_compile() {
_emake
}
src_test() {
_emake check
}
src_install() {
_emake DESTDIR="${D}" PKGDOCDIR='$(DOCDIR)'/${PF} install
}

@ -1,62 +0,0 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
inherit eutils toolchain-funcs unpacker
DESCRIPTION="ELF utils that can check files for security relevant properties"
HOMEPAGE="https://wiki.gentoo.org/index.php?title=Project:Hardened/PaX_Utilities"
SRC_URI="mirror://gentoo/${P}.tar.xz
https://dev.gentoo.org/~vapier/dist/${P}.tar.xz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~m68k ~mips ppc ppc64 ~s390 sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="caps debug python seccomp"
RDEPEND="caps? ( >=sys-libs/libcap-2.24 )
python? ( dev-python/pyelftools )
seccomp? ( sys-libs/libseccomp )"
DEPEND="${RDEPEND}
caps? ( virtual/pkgconfig )
seccomp? ( virtual/pkgconfig )
app-arch/xz-utils"
PATCHES=(
"${FILESDIR}"/${P}-scanelf-fix-out-of-bounds-access-in-ia64.patch
"${FILESDIR}"/${P}-solaris.patch
"${FILESDIR}"/${P}-linux-2.6.32.patch
)
_emake() {
emake \
USE_CAP=$(usex caps) \
USE_DEBUG=$(usex debug) \
USE_PYTHON=$(usex python) \
USE_SECCOMP=$(usex seccomp) \
"$@"
}
src_configure() {
# Avoid slow configure+gnulib+make if on an up-to-date Linux system
if use prefix || ! use kernel_linux || \
has_version '<sys-libs/glibc-2.10'
then
econf $(use_with caps) $(use_with debug) $(use_with python) $(use_with seccomp)
else
tc-export CC PKG_CONFIG
fi
}
src_compile() {
_emake
}
src_test() {
_emake check
}
src_install() {
_emake DESTDIR="${D}" PKGDOCDIR='$(DOCDIR)'/${PF} install
}

@ -12,7 +12,7 @@ SRC_URI="mirror://gentoo/${P}.tar.xz
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="alpha amd64 ~arm arm64 hppa ia64 ~m68k ~mips ~ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="caps debug python seccomp"
RDEPEND="caps? ( >=sys-libs/libcap-2.24 )

@ -11,7 +11,7 @@ SRC_URI="mirror://sourceforge/pipeworks/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="amd64 ~ppc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
KEYWORDS="amd64 ppc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
IUSE=""
RDEPEND=""

@ -1,25 +0,0 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
inherit toolchain-funcs
DESCRIPTION="a small utility that measures throughput between stdin and stdout"
HOMEPAGE="http://pipeworks.sourceforge.net/"
SRC_URI="mirror://sourceforge/pipeworks/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="amd64 ppc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
IUSE=""
DEPEND=""
src_compile() {
emake CC="$(tc-getCC) ${CFLAGS} ${LDFLAGS}" || die "emake failed"
}
src_install() {
dobin pipeworks || die "dobin failed"
doman pipeworks.1
dodoc Changelog README
}

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

Loading…
Cancel
Save